[vlc-commits] macosx: make sure that all sidebar items are visible on the very first launch

Felix Paul Kühne git at videolan.org
Mon Apr 9 20:34:18 CEST 2012


vlc | branch: master | Felix Paul Kühne <fkuehne at videolan.org> | Mon Apr  9 20:34:07 2012 +0200| [337aaf7c1ff706467c2c8e3abafff58263277b5b] | committer: Felix Paul Kühne

macosx: make sure that all sidebar items are visible on the very first launch

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=337aaf7c1ff706467c2c8e3abafff58263277b5b
---

 modules/gui/macosx/MainWindow.m |   14 +++++++++++++-
 1 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/modules/gui/macosx/MainWindow.m b/modules/gui/macosx/MainWindow.m
index 5954990..8abb82b 100644
--- a/modules/gui/macosx/MainWindow.m
+++ b/modules/gui/macosx/MainWindow.m
@@ -442,7 +442,6 @@ static VLCMainWindow *_o_sharedInstance = nil;
         [o_sidebaritems addObject: internetItem];
 
     [o_sidebar_view reloadData];
-    [o_sidebar_view expandItem: libraryItem expandChildren: YES];
     [o_sidebar_view selectRowIndexes:[NSIndexSet indexSetWithIndex:1] byExtendingSelection:NO];
     [o_sidebar_view setDropItem:playlistItem dropChildIndex:NSOutlineViewDropOnItemIndex];
     [o_sidebar_view registerForDraggedTypes:[NSArray arrayWithObjects: NSFilenamesPboardType, @"VLCPlaylistItemPboardType", nil]];
@@ -452,6 +451,19 @@ static VLCMainWindow *_o_sharedInstance = nil;
     [o_sidebar_view setDelegate:self];
     [o_sidebar_view setAutosaveExpandedItems:YES];
 
+    [o_sidebar_view expandItem: libraryItem expandChildren: YES];
+
+    /* make sure we display the desired default appearance when VLC launches for the first time */
+    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
+    if (![defaults objectForKey:@"VLCFirstRun"])
+    {
+        [defaults setObject:[NSDate date] forKey:@"VLCFirstRun"];
+
+        NSUInteger i_sidebaritem_count = [o_sidebaritems count];
+        for (NSUInteger x = 0; x < i_sidebaritem_count; x++)
+            [o_sidebar_view expandItem: [o_sidebaritems objectAtIndex: x] expandChildren: YES];
+    }
+
     if( b_dark_interface )
     {
         [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(windowResizedOrMoved:) name: NSWindowDidResizeNotification object: nil];



More information about the vlc-commits mailing list