1
mirror of https://code.videolan.org/videolan/vlc synced 2024-07-21 07:24:15 +02:00

macosx/sprefs: save 2 of 3 array allocations

This commit is contained in:
Felix Paul Kühne 2019-06-02 11:55:55 +02:00
parent baabf167ee
commit d951d70fba

View File

@ -299,24 +299,37 @@ create_toolbar_item(NSString *itemIdent, NSString *name, NSString *desc, NSStrin
return toolbarItem; return toolbarItem;
} }
- (NSArray<NSString *> *)toolbarIdentifiers {
static dispatch_once_t onceToken;
static NSArray<NSString *> *toolbarIdentifiers = nil;
dispatch_once(&onceToken, ^{
toolbarIdentifiers = @[VLCIntfSettingToolbarIdentifier,
VLCAudioSettingToolbarIdentifier,
VLCVideoSettingToolbarIdentifier,
VLCOSDSettingToolbarIdentifier,
VLCInputSettingToolbarIdentifier,
VLCMediaLibrarySettingToolbarIdentifier,
VLCHotkeysSettingToolbarIdentifier,
NSToolbarFlexibleSpaceItemIdentifier];
});
return toolbarIdentifiers;
}
- (NSArray *)toolbarDefaultItemIdentifiers: (NSToolbar *)toolbar - (NSArray *)toolbarDefaultItemIdentifiers: (NSToolbar *)toolbar
{ {
return [NSArray arrayWithObjects:VLCIntfSettingToolbarIdentifier, VLCAudioSettingToolbarIdentifier, VLCVideoSettingToolbarIdentifier, return [self toolbarIdentifiers];
VLCOSDSettingToolbarIdentifier, VLCInputSettingToolbarIdentifier, VLCMediaLibrarySettingToolbarIdentifier, VLCHotkeysSettingToolbarIdentifier,
NSToolbarFlexibleSpaceItemIdentifier, nil];
} }
- (NSArray *)toolbarAllowedItemIdentifiers: (NSToolbar *)toolbar - (NSArray *)toolbarAllowedItemIdentifiers: (NSToolbar *)toolbar
{ {
return [NSArray arrayWithObjects:VLCIntfSettingToolbarIdentifier, VLCAudioSettingToolbarIdentifier, VLCVideoSettingToolbarIdentifier, return [self toolbarIdentifiers];
VLCOSDSettingToolbarIdentifier, VLCInputSettingToolbarIdentifier, VLCMediaLibrarySettingToolbarIdentifier, VLCHotkeysSettingToolbarIdentifier,
NSToolbarFlexibleSpaceItemIdentifier, nil];
} }
- (NSArray *)toolbarSelectableItemIdentifiers:(NSToolbar *)toolbar - (NSArray *)toolbarSelectableItemIdentifiers:(NSToolbar *)toolbar
{ {
return [NSArray arrayWithObjects:VLCIntfSettingToolbarIdentifier, VLCAudioSettingToolbarIdentifier, VLCVideoSettingToolbarIdentifier, return [self toolbarIdentifiers];
VLCOSDSettingToolbarIdentifier, VLCInputSettingToolbarIdentifier, VLCMediaLibrarySettingToolbarIdentifier, VLCHotkeysSettingToolbarIdentifier, nil];
} }
- (void)initStrings - (void)initStrings