]> git.sesse.net Git - vlc/commitdiff
macosx: adapt recursiveExpandNode to new playlist model
authorDavid Fuhrmann <dfuhrmann@videolan.org>
Sun, 7 Dec 2014 13:25:39 +0000 (14:25 +0100)
committerDavid Fuhrmann <dfuhrmann@videolan.org>
Tue, 30 Dec 2014 15:10:48 +0000 (16:10 +0100)
modules/gui/macosx/playlist.m

index a1fd1c8370cd5a64b4a1834dcd628e22f16a17a6..795a1b2ce06aef54b53446e1fa257c729c0abe48 100644 (file)
     playlist_item_t *p_item;
     for (NSUInteger i = 0; i < count; i++) {
         o_item = [o_outline_view itemAtRow: indexes[i]];
-        p_item = (playlist_item_t *)[o_item pointerValue];
-
-        if (![[o_outline_view dataSource] outlineView: o_outline_view isItemExpandable: o_item])
-            o_item = [o_outline_dict objectForKey: [NSString stringWithFormat: @"%p", p_item->p_parent]];
 
         /* We need to collapse the node first, since OSX refuses to recursively
          expand an already expanded node, even if children nodes are collapsed. */
-        [o_outline_view collapseItem: o_item collapseChildren: YES];
-        [o_outline_view expandItem: o_item expandChildren: YES];
+        if ([o_outline_view isExpandable:o_item]) {
+            [o_outline_view collapseItem: o_item collapseChildren: YES];
+            [o_outline_view expandItem: o_item expandChildren: YES];
+        }
 
         selectedRows = [o_outline_view selectedRowIndexes];
         [selectedRows getIndexes:indexes maxCount:count inIndexRange:nil];