[vlc-commits] [Git][videolan/vlc][master] 4 commits: macosx: Define internal padding height for audio group table header view in one place
Steve Lhomme (@robUx4)
gitlab at videolan.org
Sat Apr 11 06:58:32 UTC 2026
Steve Lhomme pushed to branch master at VideoLAN / VLC
Commits:
4ce9e779 by Claudio Cambra at 2026-04-11T06:44:42+00:00
macosx: Define internal padding height for audio group table header view in one place
Signed-off-by: Claudio Cambra <developer at claudiocambra.com>
- - - - -
2e31dedb by Claudio Cambra at 2026-04-11T06:44:42+00:00
macosx: Directly provided padded header height to header view users
Signed-off-by: Claudio Cambra <developer at claudiocambra.com>
- - - - -
7d58f675 by Claudio Cambra at 2026-04-11T06:44:42+00:00
macosx: Unify setup and creation of padded header view
Signed-off-by: Claudio Cambra <developer at claudiocambra.com>
- - - - -
f04a960e by Claudio Cambra at 2026-04-11T06:44:42+00:00
macosx: Reduce vertical size of the header view
Signed-off-by: Claudio Cambra <developer at claudiocambra.com>
- - - - -
6 changed files:
- modules/gui/macosx/library/audio-library/VLCLibraryAudioGroupTableHeaderView.h
- modules/gui/macosx/library/audio-library/VLCLibraryAudioGroupTableHeaderView.m
- modules/gui/macosx/library/audio-library/VLCLibraryAudioViewController.m
- modules/gui/macosx/library/favorites-library/VLCLibraryFavoritesViewController.m
- modules/gui/macosx/library/groups-library/VLCLibraryGroupsViewController.m
- modules/gui/macosx/library/playlist-library/VLCLibraryPlaylistViewController.m
Changes:
=====================================
modules/gui/macosx/library/audio-library/VLCLibraryAudioGroupTableHeaderView.h
=====================================
@@ -34,6 +34,7 @@ extern NSString * const VLCLibraryAudioGroupTableHeaderViewIdentifier;
@property (nullable, nonatomic) VLCLibraryRepresentedItem *representedItem;
@property (readwrite, nonatomic) BOOL internalPaddingAddedForContentView;
++ (instancetype)paddedHeaderView;
- (instancetype)initWithFrame:(NSRect)frameRect withInternalPaddingAddedForContentView:(BOOL)internalPaddingAddedForContentView;
- (void)updateWithRepresentedItem:(nullable VLCLibraryRepresentedItem *)representedItem
fallbackTitle:(nullable NSString *)fallbackTitle
=====================================
modules/gui/macosx/library/audio-library/VLCLibraryAudioGroupTableHeaderView.m
=====================================
@@ -30,7 +30,7 @@
#import "extensions/NSString+Helpers.h"
#import "extensions/NSView+VLCAdditions.h"
-const CGFloat VLCLibraryAudioGroupTableHeaderViewHeight = 86.f;
+const CGFloat VLCLibraryAudioGroupTableHeaderViewHeight = 66.f;
NSString * const VLCLibraryAudioGroupTableHeaderViewIdentifier = @"VLCLibraryAudioGroupTableHeaderView";
@interface VLCLibraryAudioGroupTableHeaderView ()
@@ -51,6 +51,32 @@ NSString * const VLCLibraryAudioGroupTableHeaderViewIdentifier = @"VLCLibraryAud
@implementation VLCLibraryAudioGroupTableHeaderView
++ (CGFloat)internalPaddingHeight
+{
+ const CGFloat topInset = VLCLibraryUIUnits.largeSpacing + VLCLibraryUIUnits.mediumSpacing;
+ CGFloat bottomInset = 0.f;
+#if __MAC_OS_X_VERSION_MAX_ALLOWED >= 260000
+ if (@available(macOS 26.0, *)) {
+ bottomInset = VLCLibraryUIUnits.largeSpacing + VLCLibraryUIUnits.mediumSpacing + VLCLibraryUIUnits.smallSpacing;
+ }
+#endif
+ return topInset + bottomInset;
+}
+
++ (CGFloat)paddedHeaderViewHeight
+{
+ return VLCLibraryAudioGroupTableHeaderViewHeight + self.internalPaddingHeight;
+}
+
++ (instancetype)paddedHeaderView
+{
+ const NSRect headerFrame = NSMakeRect(0.f, 0.f, 0.f, self.paddedHeaderViewHeight);
+ VLCLibraryAudioGroupTableHeaderView * const headerView =
+ [[self alloc] initWithFrame:headerFrame withInternalPaddingAddedForContentView:YES];
+ headerView.autoresizingMask = NSViewWidthSizable;
+ return headerView;
+}
+
- (instancetype)initWithFrame:(NSRect)frameRect
{
self = [super initWithFrame:frameRect];
=====================================
modules/gui/macosx/library/audio-library/VLCLibraryAudioViewController.m
=====================================
@@ -187,18 +187,7 @@ NSString *VLCLibraryPlaceholderAudioViewIdentifier = @"VLCLibraryPlaceholderAudi
_audioCollectionSelectionTableView.dataSource = _audioDataSource;
_audioCollectionSelectionTableView.delegate = _audioLibraryTableViewDelegate;
- CGFloat headerHeight = VLCLibraryAudioGroupTableHeaderViewHeight;
- if (@available(macOS 26.0, *)) {
- headerHeight += VLCLibraryUIUnits.largeSpacing * 2;
- }
-
- const NSRect headerFrame = NSMakeRect(0.f,
- 0.f,
- _audioGroupSelectionTableView.bounds.size.width,
- headerHeight);
- _audioCollectionHeaderView = [[VLCLibraryAudioGroupTableHeaderView alloc] initWithFrame:headerFrame withInternalPaddingAddedForContentView:YES];
- _audioCollectionHeaderView.autoresizingMask = NSViewWidthSizable;
-
+ _audioCollectionHeaderView = [VLCLibraryAudioGroupTableHeaderView paddedHeaderView];
_audioGroupSelectionTableView.headerView = self.audioCollectionHeaderView;
_audioGroupSelectionTableView.tableColumns.firstObject.headerCell = [VLCLibraryAudioGroupTableHeaderCell new];
=====================================
modules/gui/macosx/library/favorites-library/VLCLibraryFavoritesViewController.m
=====================================
@@ -106,17 +106,7 @@
{
self.favoritesLibrarySplitView.delegate = _splitViewDelegate;
- CGFloat headerHeight = VLCLibraryAudioGroupTableHeaderViewHeight;
- if (@available(macOS 26.0, *)) {
- headerHeight += VLCLibraryUIUnits.largeSpacing * 2.f;
- }
-
- const NSRect headerFrame = NSMakeRect(0.f,
- 0.f,
- self.favoritesLibraryGroupSelectionTableView.bounds.size.width,
- headerHeight);
- _favoritesHeaderView = [[VLCLibraryAudioGroupTableHeaderView alloc] initWithFrame:headerFrame withInternalPaddingAddedForContentView:YES];
- _favoritesHeaderView.autoresizingMask = NSViewWidthSizable;
+ _favoritesHeaderView = [VLCLibraryAudioGroupTableHeaderView paddedHeaderView];
_favoritesLibraryTableViewDelegate.detailTableHeaderView = self.favoritesHeaderView;
self.favoritesLibraryGroupSelectionTableView.headerView = self.favoritesHeaderView;
=====================================
modules/gui/macosx/library/groups-library/VLCLibraryGroupsViewController.m
=====================================
@@ -190,17 +190,7 @@
[self.selectedGroupTableView registerNib:tableCellViewNib
forIdentifier:@"VLCLibraryTableViewCellIdentifier"];
- CGFloat headerHeight = VLCLibraryAudioGroupTableHeaderViewHeight;
- if (@available(macOS 26.0, *)) {
- headerHeight += VLCLibraryUIUnits.largeSpacing * 2;
- }
-
- const NSRect headerFrame = NSMakeRect(0.f,
- 0.f,
- self.groupsTableView.bounds.size.width,
- headerHeight);
- _selectedGroupTableHeaderView = [[VLCLibraryAudioGroupTableHeaderView alloc] initWithFrame:headerFrame withInternalPaddingAddedForContentView:YES];
- self.selectedGroupTableHeaderView.autoresizingMask = NSViewWidthSizable;
+ _selectedGroupTableHeaderView = [VLCLibraryAudioGroupTableHeaderView paddedHeaderView];
self.tableViewDelegate.detailTableHeaderView = self.selectedGroupTableHeaderView;
=====================================
modules/gui/macosx/library/playlist-library/VLCLibraryPlaylistViewController.m
=====================================
@@ -187,17 +187,7 @@
[self.detailTableView registerNib:tableCellViewNib
forIdentifier:@"VLCLibraryTableViewCellIdentifier"];
- CGFloat headerHeight = VLCLibraryAudioGroupTableHeaderViewHeight;
- if (@available(macOS 26.0, *)) {
- headerHeight += VLCLibraryUIUnits.largeSpacing * 2;
- }
-
- const NSRect headerFrame = NSMakeRect(0.f,
- 0.f,
- self.masterTableView.bounds.size.width,
- headerHeight);
- _detailTableHeaderView = [[VLCLibraryAudioGroupTableHeaderView alloc] initWithFrame:headerFrame withInternalPaddingAddedForContentView:YES];
- self.detailTableHeaderView.autoresizingMask = NSViewWidthSizable;
+ _detailTableHeaderView = [VLCLibraryAudioGroupTableHeaderView paddedHeaderView];
self.tableViewDelegate.detailTableHeaderView = self.detailTableHeaderView;
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/989833b12041588fd41d671c463da2a2718324d3...f04a960e84f46021d9eb1f8597eb17db08d7e829
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/989833b12041588fd41d671c463da2a2718324d3...f04a960e84f46021d9eb1f8597eb17db08d7e829
You're receiving this email because of your account on code.videolan.org.
More information about the vlc-commits
mailing list