Commit graph

416 commits

Author SHA1 Message Date
ericwa
0d8485e54d * Source/NSImage.m (-setScalesWhenResized:): Disable this method
as it is currently broken on the cairo backend.
* Source/NSApplication.m (-setApplicationIconImage:): Don't
use call -setScalesWhenResized:, because if it worked as it is
supposed to, it would scale all icon reps down to 48x48,
making large icon sizes useless.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34164 72102866-910b-0410-8b05-ffd578937521
2011-11-12 00:40:18 +00:00
fredkiefer
0cba25353e * Source/NSApplication.m (-setApplicationIconImage): Ignore this
call when the image is nil.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33801 72102866-910b-0410-8b05-ffd578937521
2011-08-31 19:15:47 +00:00
wlux
a6164dc306 Create the app icon in NSApplication -_init as suggested by Fred.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33244 72102866-910b-0410-8b05-ffd578937521
2011-06-04 15:07:54 +00:00
wlux
fe515ca1e1 Revert to creating the app icon in finishLaunching, since existing
applications that do not use NSApplicationMain otherwise won't get an
app icon.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33242 72102866-910b-0410-8b05-ffd578937521
2011-06-04 08:42:33 +00:00
wlux
8e402fc361 Ensure that applications get a proper app icon under WindowMaker even
when their main nib contains visible at launch time windows.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33231 72102866-910b-0410-8b05-ffd578937521
2011-06-02 08:45:07 +00:00
wlux
479baf70bf Fix management of windows whose hide on deactivate attribute is set.
In particular, such windows remain ordered out when the application
orders them out while it is not active and then is activated again.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33213 72102866-910b-0410-8b05-ffd578937521
2011-05-31 09:59:48 +00:00
theraven
dbd4c1b77c Turn release messages sent to autorelease pools into drain messages. No
functionality change in non-GC mode, in GC mode it invokes a quick GC pass to
try to delete the short-lived objects.

Also deleted some [pool release] lines just before exit() or return-from-main
statements.  These cause objects to be swapped in and destructors to be run to
no benefit (the OS will reclaim this memory without requiring stuff to be
swapped in when the process exits).



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33146 72102866-910b-0410-8b05-ffd578937521
2011-05-27 12:42:37 +00:00
ericwa
899b4e5139 * Source/NSWindow.m: Remove unnecessary FIXMEs related to
user space scale factor
* Source/NSAppliation.m: Correct app icon sizing which was
mixing up window frame coordinates and user space coordinates
* Source/NSCachedImageRep.m: Add NSUnscaledWindowMask to the
window used internally


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32897 72102866-910b-0410-8b05-ffd578937521
2011-04-19 08:23:01 +00:00
espectador
07fce1bbb3 Miniaturize all windows if the AppIcon is suppressed
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32740 72102866-910b-0410-8b05-ffd578937521
2011-03-29 18:26:11 +00:00
fredkiefer
9fcd522c8a Removed dead assignments found by static code analyser.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32551 72102866-910b-0410-8b05-ffd578937521
2011-03-13 15:26:20 +00:00
fredkiefer
3cdc68a09b Replace #include -> #import
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32451 72102866-910b-0410-8b05-ffd578937521
2011-03-04 11:33:22 +00:00
wlux
13e3cc042d Add user default to allow placing app icons and mini windows at normal
window level. This is particularly convenient with some window
managers (*cough*, kwin) where application and pop up menus would be
obscured by dock level windows.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32165 72102866-910b-0410-8b05-ffd578937521
2011-02-14 22:25:57 +00:00
wlux
3ee25e4389 Fix application termination behavior by sending a message to the
document controller to let the user review any unsaved changes in its
managed documents before asking the application delegate whether its
okay to terminate the application. This matches Cocoa's documented and
implemented behavior.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31957 72102866-910b-0410-8b05-ffd578937521
2011-01-27 20:32:01 +00:00
wlux
046a263ed9 Look up key equivalents in the Services menu only after traversing
rest of the main menu to avoid accidentally shadowing key equivalents
in the application's own menus.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31902 72102866-910b-0410-8b05-ffd578937521
2011-01-17 09:02:30 +00:00
gcasa
81c14cbc7a * Source/NSApplication.m: Added overide for orderWindow:relativeTo:
in NSIconWindow.  Check for GSSuppressAppIcon and order the window
	ONLY if the app icon window is supposed to be displayed, otherwise
	do not do anything with it.   I observed issues with this
	functionality while testing the GNOME theme the app icon would 
	periodically show even when the default mentioned above was set to 
	YES.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31898 72102866-910b-0410-8b05-ffd578937521
2011-01-16 05:22:10 +00:00
espectador
b3d789fcec Applied changes in menuInWindow.patch
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31895 72102866-910b-0410-8b05-ffd578937521
2011-01-16 00:32:54 +00:00
wlux
da43c7104b Provide a default context menu for application icons when using
Macintosh or Windows 95 style menus. Inspired by OS X, the menu
contains items to hide or show the application, to terminate the
application, an item for each window present in the application's
window menu, and the items of the dock menu returned by the
application delegate.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31892 72102866-910b-0410-8b05-ffd578937521
2011-01-15 14:36:38 +00:00
wlux
5a4f4c0c21 Insert window menu items strictly at the bottom of the menu, keeping
only items with actions -performMiniaturize: and -performClose:
beneath them. This allows having additional items at the top of the
menu and works better for window menus that follow the Mac OS X UI
guidelines and have miniaturize and zoom commands at the top and
arrange in front below them.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31891 72102866-910b-0410-8b05-ffd578937521
2011-01-15 14:19:24 +00:00
espectador
4122ebfd3f Fixed the behaviour of menu in window when hide the app
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31859 72102866-910b-0410-8b05-ffd578937521
2011-01-09 06:10:02 +00:00
wlux
b7a7d60b91 Don't make an invisible window main window in NSApplication
-finishLaunching when the application has no main window.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31715 72102866-910b-0410-8b05-ffd578937521
2010-12-07 08:00:43 +00:00
wlux
6ae4c9b25f Open a new document when a document based application is launched if
the delegate responds YES to applicationShouldOpenUntitledFile: but
does not implement applicationOpenUntitledFile:.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31506 72102866-910b-0410-8b05-ffd578937521
2010-10-13 13:36:44 +00:00
fredkiefer
30240921b4 First batch of corrections based on David's static analysis.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31337 72102866-910b-0410-8b05-ffd578937521
2010-09-12 16:34:22 +00:00
ericwa
82ac6117e8 Replace sel_eq with sel_isEqual
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31285 72102866-910b-0410-8b05-ffd578937521
2010-09-09 23:50:38 +00:00
wlux
2b0602d6d3 Change the Arrange in Front command to order only the application's
non-miniaturized windows front and not deminiaturize any miniaturized
windows.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31103 72102866-910b-0410-8b05-ffd578937521
2010-08-09 21:03:20 +00:00
wlux
b717ba290c Do not attempt to open an untitled document upon launching a document
based application that does not define an editor type.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30535 72102866-910b-0410-8b05-ffd578937521
2010-06-01 21:36:51 +00:00
fredkiefer
e64aca8bb2 few compiler warning fixes plus a lot of #import replacement.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30448 72102866-910b-0410-8b05-ffd578937521
2010-05-24 10:48:14 +00:00
gcasa
f723d6ed8b * Source/NSApplication.m: Attempt to open files from the command
line, if possible in -finishLaunching.  This matches the behavior
	seen on OpenStep and on Mac OS X/Cocoa.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30407 72102866-910b-0410-8b05-ffd578937521
2010-05-17 08:29:55 +00:00
qmathe
7dd04afe94 Moved the main Nib file loading from -finishLaunching to NSApplicationMain() in
order to match Cocoa behavior/documentation.

This makes easier to implement a custom AppKit main that works with both Cocoa 
and GNUstep.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30398 72102866-910b-0410-8b05-ffd578937521
2010-05-16 13:56:50 +00:00
dpsimons
802665ebcc protect changedMessagesEnabled flag; update menus after modal session, key or main window change
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29891 72102866-910b-0410-8b05-ffd578937521
2010-03-09 23:11:40 +00:00
fredkiefer
a67707b682 Fix up teh includes to compile again after latest changes to base. Still
plenty of warnings and the result isn't working at least on 64 bit
machines :-(


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29685 72102866-910b-0410-8b05-ffd578937521
2010-02-20 10:40:44 +00:00
fredkiefer
b142ff7815 Start cleanup after big base change. Remove the usage of extension
methods.
New 10.5 methods on NSCell.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29656 72102866-910b-0410-8b05-ffd578937521
2010-02-17 09:58:38 +00:00
wlux
bb813d8ae7 Send -applicationShouldTerminateAfterLastWindowClosed: to the delegate
only after a short delay so that all observers can process the
NSWindowWillCloseNotification. This ensures that a modified document
associated with the closed window has been closed before -terminate:
is called and therefore the user isn't asked twice whether she wants
to save the unsaved changes.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29428 72102866-910b-0410-8b05-ffd578937521
2010-01-28 00:10:42 +00:00
qmathe
57cdb1250b Dispatch drag events with -[NSApp sendEvent:] and make each synthetized drag
event the current event in order to be consistent with Mac OS X behavior.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29418 72102866-910b-0410-8b05-ffd578937521
2010-01-27 11:21:13 +00:00
gcasa
c36c29e8ff * Source/NSApplication.m: For hide: perform miniaturizeAll:
on Windows, since hiding the app causes it to be inaccessible on 
	that platform.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29281 72102866-910b-0410-8b05-ffd578937521
2010-01-14 12:06:35 +00:00
fredkiefer
138604f74e Patch by German Arias <german@xelalug.org>.
Allows to get icon placement from separate process.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29153 72102866-910b-0410-8b05-ffd578937521
2009-12-21 17:27:56 +00:00
rmottola
288ce81a3b Only add windows that are either visible or miniaturized.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29117 72102866-910b-0410-8b05-ffd578937521
2009-12-12 10:10:40 +00:00
rfm
82d1ada3dc fix drawing bug when number of rows decreases
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29065 72102866-910b-0410-8b05-ffd578937521
2009-11-26 20:33:44 +00:00
theraven
c5578bd178 Replaced two superfluous NSInvocation construction occurrences with direct calls to the IMP in question. According to Riccardo 'it is really snappier in most user operations'.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29050 72102866-910b-0410-8b05-ffd578937521
2009-11-23 23:01:23 +00:00
rfm
9b1b4de952 revert accidental change
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29045 72102866-910b-0410-8b05-ffd578937521
2009-11-20 13:43:02 +00:00
rfm
e954a93ff3 tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29044 72102866-910b-0410-8b05-ffd578937521
2009-11-20 13:36:46 +00:00
fredkiefer
ec316b13b2 Small change for bug #27309 and a helper function for GSTaskBar.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28974 72102866-910b-0410-8b05-ffd578937521
2009-11-08 16:12:04 +00:00
fredkiefer
c353a6b67b Only set the current event when dequeuing and never return the
null_event.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28938 72102866-910b-0410-8b05-ffd578937521
2009-11-02 12:13:59 +00:00
rfm
51e03c6d17 Fixups to avoid crashes opening non-document-based apps.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28844 72102866-910b-0410-8b05-ffd578937521
2009-10-19 10:03:03 +00:00
rfm
c8916fd438 minor fixups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28843 72102866-910b-0410-8b05-ffd578937521
2009-10-19 07:44:22 +00:00
rfm
bc795fdaa1 fix for activation with suppressed icon window
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28837 72102866-910b-0410-8b05-ffd578937521
2009-10-18 08:02:40 +00:00
wlux
eb5f81a21a When using MS Windows style menus terminate an application by default
when its last window is closed.
In addition, fix a bug where the application was not terminated when
the last window is closed while the application is in the background.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28834 72102866-910b-0410-8b05-ffd578937521
2009-10-17 17:09:36 +00:00
wlux
2cdc3b0a23 Improve compatibility with Mac OS X and open a new document by default
when a document based application is started and there is no file to
open.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28833 72102866-910b-0410-8b05-ffd578937521
2009-10-17 17:01:24 +00:00
rfm
3325226e5c Partial code for using miniaturised app icon to unhide a hidden app.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28832 72102866-910b-0410-8b05-ffd578937521
2009-10-17 15:18:26 +00:00
rfm
817142915c Suppress app icon window by simply not ordering it in.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28831 72102866-910b-0410-8b05-ffd578937521
2009-10-17 05:35:56 +00:00
sheldon
027f6c59ab Centralise GSGuiBundle() routine
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28830 72102866-910b-0410-8b05-ffd578937521
2009-10-17 05:05:35 +00:00