[self setMovableByWindowBackground: YES];
/* we don't want this window to be restored on relaunch */
- if ([self respondsToSelector:@selector(setRestorable:)])
+ if (OSX_LION)
[self setRestorable:NO];
return self;
{
/* setup the styled interface */
b_dark_interface = config_GetInt( VLCIntf, "macosx-interfacestyle" );
+ b_nativeFullscreenMode = config_GetInt( VLCIntf, "macosx-nativefullscreenmode" );
i_lastShownVolume = -1;
[o_play_btn setToolTip: _NS("Play/Pause")];
[o_volume_down_btn setImage: [NSImage imageNamed:@"volume-low"]];
[o_volume_track_view setImage: [NSImage imageNamed:@"volume-slider-track"]];
[o_volume_up_btn setImage: [NSImage imageNamed:@"volume-high"]];
- [o_effects_btn setImage: [NSImage imageNamed:@"effects-double-buttons"]];
- [o_effects_btn setAlternateImage: [NSImage imageNamed:@"effects-double-buttons-pressed"]];
+ if (OSX_LION && b_nativeFullscreenMode)
+ {
+ [o_effects_btn setImage: [NSImage imageNamed:@"effects-one-button"]];
+ [o_effects_btn setAlternateImage: [NSImage imageNamed:@"effects-one-button-blue"]];
+ }
+ else
+ {
+ [o_effects_btn setImage: [NSImage imageNamed:@"effects-double-buttons"]];
+ [o_effects_btn setAlternateImage: [NSImage imageNamed:@"effects-double-buttons-pressed"]];
+ }
[o_fullscreen_btn setImage: [NSImage imageNamed:@"fullscreen-double-buttons"]];
[o_fullscreen_btn setAlternateImage: [NSImage imageNamed:@"fullscreen-double-buttons-pressed"]];
[o_time_sld_fancygradient_view loadImagesInDarkStyle:NO];
[o_volume_down_btn setImage: [NSImage imageNamed:@"volume-low_dark"]];
[o_volume_track_view setImage: [NSImage imageNamed:@"volume-slider-track_dark"]];
[o_volume_up_btn setImage: [NSImage imageNamed:@"volume-high_dark"]];
- [o_effects_btn setImage: [NSImage imageNamed:@"effects-double-buttons_dark"]];
- [o_effects_btn setAlternateImage: [NSImage imageNamed:@"effects-double-buttons-pressed_dark"]];
+ if (OSX_LION && b_nativeFullscreenMode)
+ {
+ [o_effects_btn setImage: [NSImage imageNamed:@"effects-one-button_dark"]];
+ [o_effects_btn setAlternateImage: [NSImage imageNamed:@"effects-one-button-blue_dark"]];
+ }
+ else
+ {
+ [o_effects_btn setImage: [NSImage imageNamed:@"effects-double-buttons_dark"]];
+ [o_effects_btn setAlternateImage: [NSImage imageNamed:@"effects-double-buttons-pressed_dark"]];
+ }
[o_fullscreen_btn setImage: [NSImage imageNamed:@"fullscreen-double-buttons_dark"]];
[o_fullscreen_btn setAlternateImage: [NSImage imageNamed:@"fullscreen-double-buttons-pressed_dark"]];
[o_time_sld_fancygradient_view loadImagesInDarkStyle:YES];
o_temp_view = [[NSView alloc] init];
[o_temp_view setAutoresizingMask:NSViewHeightSizable | NSViewWidthSizable];
[o_dropzone_view setFrame: [o_playlist_table frame]];
- if (OSX_LION)
+ [o_left_split_view setFrame: [o_sidebar_view frame]];
+ if (OSX_LION && b_nativeFullscreenMode)
+ {
[self setCollectionBehavior: NSWindowCollectionBehaviorFullScreenPrimary];
+ NSRect frame;
+ float f_width = [o_fullscreen_btn frame].size.width;
+
+ #define moveItem( item ) \
+ frame = [item frame]; \
+ frame.origin.x = f_width + frame.origin.x; \
+ [item setFrame: frame]
+
+ moveItem( o_effects_btn );
+ moveItem( o_volume_up_btn );
+ moveItem( o_volume_sld );
+ moveItem( o_volume_track_view );
+ moveItem( o_volume_down_btn );
+ moveItem( o_time_fld );
+ moveItem( o_time_sld_right_view );
+ #undef moveItem
+
+ #define enlargeItem( item ) \
+ frame = [item frame]; \
+ frame.size.width = f_width + frame.size.width; \
+ [item setFrame: frame]
+
+ enlargeItem( o_time_sld );
+ enlargeItem( o_progress_bar );
+ enlargeItem( o_time_sld_middle_view );
+ enlargeItem( o_time_sld_fancygradient_view );
+ #undef enlargeItem
+
+ [o_fullscreen_btn removeFromSuperviewWithoutNeedingDisplay];
+ }
/* create the sidebar */
o_sidebaritems = [[NSMutableArray alloc] init];
if (!b_nonembedded)
{
if ([o_video_view isHidden] && [o_playlist_btn isEnabled]) {
- [o_playlist_table setHidden: YES];
+ [o_split_view setHidden: YES];
[o_video_view setHidden: NO];
}
else
{
[o_video_view setHidden: YES];
- [o_playlist_table setHidden: NO];
+ [o_split_view setHidden: NO];
}
}
else
{
+ [o_split_view setHidden: NO];
[o_playlist_table setHidden: NO];
[o_video_view setHidden: ![[VLCMain sharedInstance] activeVideoPlayback]];
}
[self setTitle: _NS("VLC media player")];
[self setRepresentedURL: nil];
}
+
[o_pool release];
}
- (void)resizeWindow
{
- if ( !b_fullscreen && !(OSX_LION && [NSApp currentSystemPresentationOptions] == NSApplicationPresentationFullScreen) )
+ if ( !b_fullscreen && !(OSX_LION && [NSApp currentSystemPresentationOptions] == NSApplicationPresentationFullScreen && b_nativeFullscreenMode) )
{
NSPoint topleftbase;
NSPoint topleftscreen;
- (BOOL)sourceList:(PXSourceList*)aSourceList itemHasBadge:(id)item
{
+ if ([[item identifier] isEqualToString: @"playlist"])
+ return YES;
+
return [item hasBadge];
}
- (NSInteger)sourceList:(PXSourceList*)aSourceList badgeValueForItem:(id)item
{
+ if ([[item identifier] isEqualToString: @"playlist"]) {
+ playlist_t * p_playlist = pl_Get( VLCIntf );
+ NSInteger i_playlist_size;
+
+ PL_LOCK;
+ i_playlist_size = playlist_CurrentSize( p_playlist );
+ PL_UNLOCK;
+
+ return i_playlist_size;
+ }
return [item badgeValue];
}