mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-05-30 13:10:38 +00:00
Changes for backend miniwin control
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@13289 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
a95b3054d2
commit
4ddbd9c46f
4 changed files with 17 additions and 2 deletions
|
@ -11,6 +11,9 @@
|
|||
Add some documentation.
|
||||
* Source/NSWindow.m ([NSWindow -dealloc]): Check for context
|
||||
before undefining gstate.
|
||||
([NSWindow -miniaturize:]): Don't create miniwindow if server
|
||||
can't handle it.
|
||||
* Source/GSDisplayServer.m (-appOwnsMiniwindow): Implement.
|
||||
|
||||
2002-04-01 Gregory Casamento <greg_casamento@yahoo.com>
|
||||
|
||||
|
|
|
@ -95,6 +95,7 @@ GSDisplayServer * GSCurrentServer(void);
|
|||
- (void) windowbacking: (NSBackingStoreType)type;
|
||||
- (void) titlewindow: (NSString *) window_title : (int) win;
|
||||
- (void) miniwindow: (int) win;
|
||||
- (BOOL) appOwnsMiniwindow;
|
||||
- (void) windowdevice: (int) win;
|
||||
- (void) orderwindow: (int) op : (int) otherWin : (int) win;
|
||||
- (void) movewindow: (NSPoint)loc : (int) win;
|
||||
|
|
|
@ -461,6 +461,16 @@ GSCurrentServer(void)
|
|||
[self subclassResponsibility: _cmd];
|
||||
}
|
||||
|
||||
/** Returns YES if the application should create the miniwindow counterpart
|
||||
to the full size window and own it. Some display systems handle the
|
||||
miniwindow themselves. In this case the backend subclass should
|
||||
override this method to return NO. */
|
||||
- (BOOL) appOwnsMiniwindow
|
||||
{
|
||||
return YES;
|
||||
}
|
||||
|
||||
|
||||
/** Sets the window drawable for the current NSGraphicsContext,
|
||||
typically by calling [NSGraphicsContext -DPSsetgcdrawable::::],
|
||||
although depending on the concrete implmentation, more information
|
||||
|
|
|
@ -2101,6 +2101,7 @@ resetCursorRectsForView(NSView *theView)
|
|||
the screen and it's counterpart (mini)window is displayed. */
|
||||
- (void) miniaturize: (id)sender
|
||||
{
|
||||
GSDisplayServer *srv = GSServerForWindow(self);
|
||||
[nc postNotificationName: NSWindowWillMiniaturizeNotification
|
||||
object: self];
|
||||
|
||||
|
@ -2113,7 +2114,7 @@ resetCursorRectsForView(NSView *theView)
|
|||
/*
|
||||
* Ensure that we have a miniwindow counterpart.
|
||||
*/
|
||||
if (_counterpart == 0)
|
||||
if (_counterpart == 0 && [srv appOwnsMiniwindow])
|
||||
{
|
||||
NSWindow *mini;
|
||||
NSMiniWindowView *v;
|
||||
|
@ -2131,7 +2132,7 @@ resetCursorRectsForView(NSView *theView)
|
|||
RELEASE(v);
|
||||
}
|
||||
[self _lossOfKeyOrMainWindow];
|
||||
[GSServerForWindow(self) miniwindow: _windowNum];
|
||||
[srv miniwindow: _windowNum];
|
||||
_f.visible = NO;
|
||||
|
||||
[nc postNotificationName: NSWindowDidMiniaturizeNotification
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue