Skip to content

Commit

Permalink
Bug Fix: Rework playlist setup again
Browse files Browse the repository at this point in the history
In case playlist setup is reset or not, move the reset above the menu
setup code, so the menu is set up correctly if a reset occurs.

Signed-off-by: Christopher Snowhill <[email protected]>
  • Loading branch information
kode54 committed Feb 16, 2025
1 parent f239784 commit b8698ea
Showing 1 changed file with 20 additions and 16 deletions.
36 changes: 20 additions & 16 deletions Playlist/PlaylistView.m
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,26 @@ - (void)awakeFromNib {
}
}

int visibleTableColumns = 0;
columns = [self tableColumns];
for (NSTableColumn *col in columns) {
visibleTableColumns += ![col isHidden];
}

if(visibleTableColumns == 0) {
// Reset to defaults
NSString *message = @"Reset playlist columns to default";
DLog(@"%@", message);
[[FIRCrashlytics crashlytics] logWithFormat:@"%@", message];
for(NSTableColumn *col in columns) {
[self removeTableColumn:col];
}
columns = oldColumns;
for(NSTableColumn *col in columns) {
[self addTableColumn:col];
}
}

columns = [self tableColumns];

for(NSTableColumn *col in columns) {
Expand All @@ -127,7 +147,6 @@ - (void)awakeFromNib {
ascending:YES];
NSArray *sortDescriptors = @[sortDescriptor];

int visibleTableColumns = 0;
int menuIndex = 0;
for(NSTableColumn *col in [columns sortedArrayUsingDescriptors:sortDescriptors]) {
NSString *title;
Expand All @@ -149,24 +168,9 @@ - (void)awakeFromNib {
[contextMenuItem setRepresentedObject:col];
[contextMenuItem setState:([col isHidden] ? NSControlStateValueOff : NSControlStateValueOn)];

visibleTableColumns += ![col isHidden];
menuIndex++;
}

if(visibleTableColumns == 0) {
// Reset to defaults
NSString *message = @"Reset playlist columns to default";
DLog(@"%@", message);
[[FIRCrashlytics crashlytics] logWithFormat:@"%@", message];
for(NSTableColumn *col in columns) {
[self removeTableColumn:col];
}
columns = oldColumns;
for(NSTableColumn *col in columns) {
[self addTableColumn:col];
}
}

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tableColumnsResized) name:NSTableViewColumnDidResizeNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tableColumnsMoved) name:NSTableViewColumnDidMoveNotification object:nil];

Expand Down

0 comments on commit b8698ea

Please sign in to comment.