OSX Don't close the application when closing Inkscape window

Bug #171935 reported by Stgard3 on 2007-05-13
20
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Inkscape
Wishlist
JiHO

Bug Description

Dear all,
    I have a recently tweaked version of Inkscape 4.5 that will now save
files properly AND re-open them. Thank you!! However, the new program
takes forever to load even when the X-11 environment is up already. A
second characteristic that is VERY inconvenient is the fact Inkscape quits
completely if I close a file, NOT QUIT THE PROGRAM. Jiho was kind enough
to explain why this is so, but that doesn't make it right. I'm sure we'd
all like to be able to close a file and open another to continue working.
Right now, I have to go through a long wait for Inkscape to restart before
I can ask it to open a file for editing purposes.
     I'd appreciate any assistance in these two matters.

Thank you for all your help,

Stg3

JiHO (jiho) wrote :

Originator: NO

The point I was making earlier is that, by design, each new document is
attached to a new instance of Inkscape (Inkscape functions as a SDI: Single
Document Interface). Therefore, opening a new document starts the whole
application. On OS X there is an additional level: the application wrapper
(i.e. what you see in the doc which launches the Inkscape binary when you
click on it). This application wrapper is just a small bach script and some
OS X added goodness (icons etc.) and this does not take much time to run.
So to conclude, keeping the OS X wrapper alive when you close a document
will be more consistent with the rest of OS X interface but won't solve
your startup time issue anyway.
So what are the solutions:
1/ did you try an official Inkscape build for Panther? The first that was
with the dev builds had debug information which makes the app bigger, hence
longer to start.
2/ fill a feature request (rather that a bug report) to ask for keeping
the application wrapper alive. This probably won't happen soon but would
indeed be a nice thing to have (once again it wonmt solve the startup time
problem though).
3/ give us some benchmarks on the startup time of a debug info-free
Inkscape on your system so that we can compare to what happens on ours (+
some info on your hardware: which model, how much ram, which processor
speed etc.). A good way to have a precise timing is to use the terminal. If
Inkscape is in your Applications folder, just run:
time /Applications/Inkscape.app/Contents/Resources/bin/inkscape
and close Inkscape as soon as the window appears completely.

JiHO (jiho) wrote :

Originator: NO

I changed this to a feature request since it is more a feature request
than a bug

nightrow (jb-benoit) on 2007-12-15
Changed in inkscape:
importance: Undecided → Wishlist
status: New → Confirmed
Hedley Finger (hfinger) wrote :

I support the requested behaviour. Do not confuse the mechanics of how Inkscape works (SDI, MDI) or whatever, but view it from the user's GUI experience. Notepad++ is a Windows-only open-source app that is an SDI but it opens a new blank document when you close the last document.

Hedley Finger (hfinger) wrote :

This should have a changed importance of Wishlist, along with #170550, #171596, #171935, and #170803.

su_v (suv-lp) wrote :

Removing the duplicate link to bug #170550 because as detailed in comment #2 this addresses a platform specific detail which could be handled by the application wrapper of the osx application package.

See also more recent feature request for the native Inkscape build:
Bug #489098 “Mac OS X aqua 0.47: app quits when last open file is closed”
<https://bugs.launchpad.net/inkscape/+bug/489098>

tags: added: ui
John Smith (john-smithi) wrote :

Does the commit for bug #170550 help with this issue ?

su_v (suv-lp) wrote :
Download full text (4.2 KiB)

> Does the commit for bug #170550 help with this issue ?

I haven't tested this with a "native" build configured as osxapp (for packaging) since packaging is likely to change (for quartz-based builds anyway). The normal builds (not packaged as osxapp) behave like on linux. I expect the same for the bundled app (works like on linux).

The change in trunk maybe helps those who had been complaining in the past about Inkscape acting differently than native apps on OS X, but it does not (nor aim to) implement real OS X-native behavior (based on native toolkits/frameworks, and controlled by system or application-specific preferences settings): In the past, native applications which keep running after closing the last document window do not automatically open a new empty default document: they simply are kept alive, and can be accessed again by various ways (dock, app changer, etc). Whether or not they open a new document when regaining focus can often be set in the applications' preferences.

Current trunk might act closer to what native OS X apps used to do (<= Mac OS X 10.6), but won't adapt automagically to newer OS X releases: AFAICT Apple is changing the behavior with each newer version of OS X moving closer to the look&feel of iOS (iPad, iPhone). With the release of OS X 10.7 Lion they introduced for example 'Automatic Termination' as known from iOS to the desktop: Applications (e.g. Preview, TextEdit) initially may stay running after closing the last open document, but - if staying idle for an (undefined) period of time - quit silently, without further user interaction. Future versions of OS X may introduce more changes to the default behavior.

(Random) related links:
<http://www.zdnet.com/automatic-termination-makes-its-way-to-os-x-lion-and-mountain-lion-7000002850/>
<http://tidbits.com/article/13174>
<http://useyourloaf.com/blog/2012/08/13/xcode-automatic-termination.html>

Apple developer documentation:
«Automatic and Sudden Termination of Apps Improve the User Experience

In OS X v10.7 and later, the use of the Quit command to terminate an app is diminished in favor of more user-centric techniques. Specifically, Cocoa supports two techniques that make the termination of an app transparent and fast:

 ° _Automatic termination_ eliminates the need for users to quit an app. Instead, the system manages app termination transparently behind the scenes, terminating apps that are not in use to reclaim needed resources such as memory.

 ° _Sudden termination_ allows the system to kill an app’s process immediately without waiting for it to perform any final actions. The system uses this technique to improve the speed of operations such as logging out of, restarting, or shutting down the computer.

Automatic termination and sudden termination are independent techniques, although both are designed to improve the user experience of app termination. Although Apple recommends that apps support both, an app can support one technique and not the other. Apps that support both techniques can be terminated by the system without the app being involved at all. On the other hand, if an app supports sudden termination but not automatic termination, then it...

Read more...

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers