[o_video_view setHidden: YES];
[o_split_view setHidden: NO];
+ if ([self fullscreen]) {
+ [[o_controls_bar bottomBarView] setHidden: NO];
+ [o_fspanel setNonActive:nil];
+ }
+
[self makeFirstResponder: nil];
}
[o_split_view setHidden: YES];
[o_video_view setHidden: NO];
+ if ([self fullscreen]) {
+ [[o_controls_bar bottomBarView] setHidden: YES];
+ [o_fspanel setActive:nil];
+ }
if ([[o_video_view subviews] count] > 0)
[self makeFirstResponder: [[o_video_view subviews] objectAtIndex:0]];
BOOL b_activeVideo = [[VLCMain sharedInstance] activeVideoPlayback];
BOOL b_restored = NO;
- // TODO: implement toggle playlist in this situation (triggerd via menu item).
- // but for now we block this case, to avoid displaying only the half
- if (b_nativeFullscreenMode && b_fullscreen && b_activeVideo && sender != nil)
- return;
-
BOOL b_have_alt_key = ([[NSApp currentEvent] modifierFlags] & NSAlternateKeyMask) != 0;
if (sender && [sender isKindOfClass: [NSMenuItem class]])
b_have_alt_key = NO;
[super windowWillEnterFullScreen:notification];
// update split view frame after removing title bar
- [o_split_view setFrame: [o_video_view frame]];
+ if (b_dark_interface) {
+ NSRect frame = [[self contentView] frame];
+ frame.origin.y += [o_controls_bar height];
+ frame.size.height -= [o_controls_bar height];
+ [o_split_view setFrame:frame];
+ }
}
- (void)windowWillExitFullScreen:(NSNotification *)notification
[super windowWillExitFullScreen: notification];
// update split view frame after readding title bar
- [o_split_view setFrame: [o_video_view frame]];
+ if (b_dark_interface) {
+ NSRect frame = [o_split_view frame];
+ frame.size.height -= [o_titlebar_view frame].size.height;
+ [o_split_view setFrame:frame];
+ }
}
#pragma mark -
#pragma mark Fullscreen support
id currentWindow = [NSApp keyWindow];
if ([currentWindow respondsToSelector:@selector(hasActiveVideo)] && [currentWindow hasActiveVideo]) {
- if ([currentWindow respondsToSelector:@selector(fullscreen)] && [currentWindow fullscreen]) {
+ if ([currentWindow respondsToSelector:@selector(fullscreen)] && [currentWindow fullscreen] && ![[currentWindow videoView] isHidden]) {
if ([[VLCMain sharedInstance] activeVideoPlayback])
[o_fspanel fadeIn];
}
}
- [o_video_view setFrame: [[self contentView] frame]];
+ if ([self hasActiveVideo])
+ [[VLCMainWindow sharedInstance] recreateHideMouseTimer];
- [[VLCMainWindow sharedInstance] recreateHideMouseTimer];
i_originalLevel = [self level];
[[[VLCMain sharedInstance] voutController] updateWindowLevelForHelperWindows: NSNormalWindowLevel];
[self setLevel:NSNormalWindowLevel];
[self setFrame: winrect display:NO animate:NO];
}
- // TODO fix bottom bar status when vout just not visible, but there
- if (![o_video_view isHidden])
+ [o_video_view setFrame: [[self contentView] frame]];
+ if (![o_video_view isHidden]) {
[[o_controls_bar bottomBarView] setHidden: YES];
+ }
+
[self setMovableByWindowBackground: NO];
}
if ([self hasActiveVideo]) {
[[[VLCMainWindow sharedInstance] fsPanel] setVoutWasUpdated: self];
- [[[VLCMainWindow sharedInstance] fsPanel] setActive: nil];
+ if (![o_video_view isHidden])
+ [[[VLCMainWindow sharedInstance] fsPanel] setActive: nil];
}
NSArray *subviews = [[self videoView] subviews];
if (b_dark_interface) {
NSRect winrect;
CGFloat f_titleBarHeight = [o_titlebar_view frame].size.height;
- winrect = [self frame];
+ winrect = [o_video_view frame];
+ winrect.size.height -= f_titleBarHeight;
+ [o_video_view setFrame: winrect];
+
+ winrect = [self frame];
[o_titlebar_view setFrame: NSMakeRect(0, winrect.size.height - f_titleBarHeight,
winrect.size.width, f_titleBarHeight)];
[[self contentView] addSubview: o_titlebar_view];
winrect.size.height = winrect.size.height + f_titleBarHeight;
[self setFrame: winrect display:NO animate:NO];
- winrect = [o_video_view frame];
- winrect.size.height -= f_titleBarHeight;
- [o_video_view setFrame: winrect];
}
NSRect videoViewFrame = [o_video_view frame];
- videoViewFrame.origin.y = [[o_controls_bar bottomBarView] frame].size.height;
- videoViewFrame.size.height -= [[o_controls_bar bottomBarView] frame].size.height;
+ videoViewFrame.origin.y += [o_controls_bar height];
+ videoViewFrame.size.height -= [o_controls_bar height];
[o_video_view setFrame: videoViewFrame];
- [[o_controls_bar bottomBarView] setHidden: NO];
+
+ if (![o_video_view isHidden]) {
+ [[o_controls_bar bottomBarView] setHidden: NO];
+ }
[self setMovableByWindowBackground: YES];
}