macos: allow windows to enter fullscreen
This fixes GTK's NSWindow for toplevels so that they are allowed to enter fullscreen. We were already handlign the state transitions from the setStyleMask: halper, but we didn't previously tell the window we are allowed to transition into that. There is a bit of a mismatch here in that GTK doesn't have any such flag that determines if a window is "allowed" by policy to enter fullscreen since window managers on Linux are free to do that at will.
This commit is contained in:
@@ -804,12 +804,28 @@ typedef NSString *CALayerContentsGravity;
|
||||
lastUnfullscreenFrame = [self frame];
|
||||
}
|
||||
|
||||
-(void)windowDidEnterFullScreen:(NSNotification *)aNotification
|
||||
{
|
||||
initialPositionKnown = NO;
|
||||
[self checkSendEnterNotify];
|
||||
}
|
||||
|
||||
-(void)windowWillExitFullScreen:(NSNotification *)aNotification
|
||||
{
|
||||
[self setFrame:lastUnfullscreenFrame display:YES];
|
||||
}
|
||||
|
||||
-(void)windowDidExitFullScreen:(NSNotification *)aNotification
|
||||
{
|
||||
initialPositionKnown = NO;
|
||||
[self checkSendEnterNotify];
|
||||
}
|
||||
|
||||
-(void)windowDidFailToEnterFullScreen:(NSNotification *)aNotification
|
||||
{
|
||||
}
|
||||
|
||||
-(void)windowDidFailToExitFullScreen:(NSNotification *)aNotification
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
@@ -646,6 +646,9 @@ _gdk_macos_toplevel_surface_new (GdkMacosDisplay *display,
|
||||
defer:NO
|
||||
screen:screen];
|
||||
|
||||
/* Allow NSWindow to go fullscreen */
|
||||
[window setCollectionBehavior:NSWindowCollectionBehaviorFullScreenPrimary];
|
||||
|
||||
self = g_object_new (GDK_TYPE_MACOS_TOPLEVEL_SURFACE,
|
||||
"display", display,
|
||||
"frame-clock", frame_clock,
|
||||
|
||||
Reference in New Issue
Block a user