[vlc-commits] [Git][videolan/vlc][master] 2 commits: macosx: Fix button stack in play queue sidebar for macOS <26
Felix Paul Kühne (@fkuehne)
gitlab at videolan.org
Sun Mar 8 15:31:57 UTC 2026
Felix Paul Kühne pushed to branch master at VideoLAN / VLC
Commits:
abde5723 by Claudio Cambra at 2026-03-08T16:02:15+01:00
macosx: Fix button stack in play queue sidebar for macOS <26
Signed-off-by: Claudio Cambra <developer at claudiocambra.com>
- - - - -
83addb8a by Claudio Cambra at 2026-03-08T16:02:15+01:00
macosx: Ensure insets give pre-tahoe play queue buttons room to breathe
Signed-off-by: Claudio Cambra <developer at claudiocambra.com>
- - - - -
1 changed file:
- modules/gui/macosx/library/VLCLibraryWindowPlayQueueSidebarViewController.m
Changes:
=====================================
modules/gui/macosx/library/VLCLibraryWindowPlayQueueSidebarViewController.m
=====================================
@@ -133,18 +133,24 @@
const CGFloat footerHeight = self.footerContainerView.frame.size.height;
[self setupScrollViewGradientMask];
- if (@available(macOS 26.0, *)) {
-#if __MAC_OS_X_VERSION_MAX_ALLOWED >= 260000
- [self.bottomButtonsSeparator removeFromSuperview];
+ if (@available(macOS 10.14, *)) {
+ NSVisualEffectView * const footerBlurView = [[NSVisualEffectView alloc] initWithFrame:self.footerContainerView.bounds];
+ footerBlurView.translatesAutoresizingMaskIntoConstraints = NO;
+ footerBlurView.material = NSVisualEffectMaterialHeaderView;
+ footerBlurView.blendingMode = NSVisualEffectBlendingModeWithinWindow;
- NSGlassEffectView * const glassFooterView = [[NSGlassEffectView alloc] init];
- glassFooterView.translatesAutoresizingMaskIntoConstraints = NO;
- glassFooterView.contentView = self.buttonStack;
- glassFooterView.cornerRadius = CGFLOAT_MAX;
+ NSMutableArray<NSLayoutConstraint *> * const constraintsToDeactivate = [NSMutableArray array];
+ for (NSLayoutConstraint * const constraint in self.footerContainerView.constraints) {
+ if (constraint.firstItem == self.buttonStack || constraint.secondItem == self.buttonStack) {
+ [constraintsToDeactivate addObject:constraint];
+ }
+ }
+ [NSLayoutConstraint deactivateConstraints:constraintsToDeactivate];
- self.footerContainerView.subviews = @[glassFooterView];
- self.footerContainerView.clipsToBounds = NO;
- [glassFooterView applyConstraintsToFillSuperview];
+ [self.footerContainerView addSubview:footerBlurView];
+ [footerBlurView applyConstraintsToFillSuperview];
+ [footerBlurView addSubview:self.buttonStack];
+ [self.buttonStack applyConstraintsToFillSuperview];
self.buttonStack.edgeInsets = NSEdgeInsetsMake(
VLCLibraryUIUnits.mediumSpacing,
@@ -153,33 +159,6 @@
VLCLibraryUIUnits.largeSpacing
);
- self.scrollViewDefaultBottomConstraint.active = NO;
- self.footerContainerViewDefaultBottomConstraint.active = NO;
- self.footerContainerViewLeadingConstraint.constant = VLCLibraryUIUnits.largeSpacing;
- self.footerContainerViewTrailingConstraint.constant = VLCLibraryUIUnits.largeSpacing;
-
- NSLayoutConstraint * const footerBottomConstraint =
- [self.buttonStack.bottomAnchor constraintEqualToAnchor:self.view.bottomAnchor
- constant:-VLCLibraryUIUnits.largeSpacing];
-
- [NSLayoutConstraint activateConstraints:@[
- [self.scrollView.bottomAnchor constraintEqualToAnchor:self.view.bottomAnchor],
- footerBottomConstraint
- ]];
-
- const CGFloat footerTopLine = footerHeight + -footerBottomConstraint.constant + VLCLibraryUIUnits.smallSpacing;
- self.scrollView.automaticallyAdjustsContentInsets = NO;
- self.scrollView.contentInsets = NSEdgeInsetsMake(0, 0, footerTopLine, 0);
-#endif
- } else if (@available(macOS 10.14, *)) {
- NSVisualEffectView * const footerBlurView = [[NSVisualEffectView alloc] initWithFrame:self.footerContainerView.bounds];
- footerBlurView.translatesAutoresizingMaskIntoConstraints = NO;
- footerBlurView.material = NSVisualEffectMaterialHeaderView;
- footerBlurView.blendingMode = NSVisualEffectBlendingModeWithinWindow;
-
- [self.footerContainerView addSubview:footerBlurView];
- [footerBlurView applyConstraintsToFillSuperview];
-
self.scrollViewDefaultBottomConstraint.active = NO;
[NSLayoutConstraint activateConstraints:@[
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/c935939c462e918873a9d7fcf1c0cf6c9f952a96...83addb8a62a5b5e6d38e91b1381165d1334d70df
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/c935939c462e918873a9d7fcf1c0cf6c9f952a96...83addb8a62a5b5e6d38e91b1381165d1334d70df
You're receiving this email because of your account on code.videolan.org.
VideoLAN code repository instance
More information about the vlc-commits
mailing list