Steve Lhomme pushed to branch master at VideoLAN / VLC


Commits:
665265bd by Claudio Cambra at 2025-09-23T05:28:37+00:00
macosx: Wrap bottom bar view in classic main video view in another view

Prerequisite to glassifying the appearance

Signed-off-by: Claudio Cambra <develo...@claudiocambra.com>

- - - - -
20628964 by Claudio Cambra at 2025-09-23T05:28:37+00:00
macosx: Display glass container view instead of visual effect view for classic 
main video view on macOS 26

Signed-off-by: Claudio Cambra <develo...@claudiocambra.com>

- - - - -


3 changed files:

- modules/gui/macosx/UI/VLCClassicMainVideoView.xib
- modules/gui/macosx/windows/video/VLCMainVideoViewController.h
- modules/gui/macosx/windows/video/VLCMainVideoViewController.m


Changes:

=====================================
modules/gui/macosx/UI/VLCClassicMainVideoView.xib
=====================================
@@ -1,15 +1,16 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" 
toolsVersion="23727" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" 
useAutolayout="YES" customObjectInstantitationMethod="direct">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" 
toolsVersion="24127" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" 
useAutolayout="YES" customObjectInstantitationMethod="direct">
     <dependencies>
         <deployment version="101000" identifier="macosx"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" 
version="23727"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" 
version="24127"/>
         <capability name="Image references" minToolsVersion="12.0"/>
         <capability name="documents saved in the Xcode 8 format" 
minToolsVersion="8.0"/>
     </dependencies>
     <objects>
         <customObject id="-2" userLabel="File's Owner" 
customClass="VLCMainVideoViewController">
             <connections>
-                <outlet property="bottomBarView" destination="5hr-Af-mP0" 
id="btm-bar-view"/>
+                <outlet property="bottomBarView" destination="qsP-dd-T9O" 
id="TQq-45-V7D"/>
+                <outlet property="classicViewBottomBarContainerView" 
destination="c6I-1E-UZH" id="jCJ-Xd-CfV"/>
                 <outlet property="controlsBar" destination="3" 
id="Mfq-2w-2uR"/>
                 <outlet property="fakeTitleBar" destination="VIa-0w-fl8" 
id="EvT-Rx-xF4"/>
                 <outlet property="fakeTitleBarHeightConstraint" 
destination="amB-S5-eDf" id="NFm-6D-mkF"/>
@@ -22,7 +23,6 @@
                 <outlet property="returnButton" destination="UoQ-34-Pox" 
id="nyY-OF-9zj"/>
                 <outlet property="returnButtonLeadingConstraint" 
destination="return-btn-leading" id="Ax9-Sl-Imd"/>
                 <outlet property="returnButtonTopConstraint" 
destination="return-btn-top" id="cHZ-kY-t4E"/>
-                <outlet property="videoViewBottomConstraint" 
destination="video-to-controls" id="video-bottom-constraint"/>
                 <outlet property="view" destination="WRu-Ic-lQK" 
id="B9p-x5-Kd8"/>
                 <outlet property="voutContainingView" destination="MTR-ds-I8o" 
id="cim-tb-1lO"/>
                 <outlet property="voutView" destination="mAS-4a-RS8" 
id="GeX-XO-HYC"/>
@@ -32,19 +32,19 @@
         <customObject id="-3" userLabel="Application" customClass="NSObject"/>
         <customObject id="3" userLabel="Main Video View Controls Bar" 
customClass="VLCMainVideoViewControlsBar">
             <connections>
-                <outlet property="backwardButton" destination="V9d-hX-iyg" 
id="ZFn-jn-7OB"/>
-                <outlet property="floatOnTopButton" destination="8jZ-hd-YVq" 
id="x53-4o-LsM"/>
-                <outlet property="forwardButton" destination="sF5-Z0-bef" 
id="H6w-Le-NAK"/>
-                <outlet property="fullscreenButton" destination="dYZ-ri-Kra" 
id="Cw2-BS-QG9"/>
-                <outlet property="jumpBackwardButton" destination="AXA-01-AU8" 
id="gfa-Yt-ezI"/>
-                <outlet property="jumpForwardButton" destination="aAq-uE-mLW" 
id="M7n-mW-tNe"/>
-                <outlet property="muteVolumeButton" destination="afi-4d-rQk" 
id="y6R-6o-2OM"/>
-                <outlet property="pipButton" destination="yEi-SZ-SIS" 
id="vFi-Ln-9lT"/>
-                <outlet property="playButton" destination="PCC-8a-sVF" 
id="ddT-ZM-Jhz"/>
-                <outlet property="timeField" destination="f4v-2z-dQ1" 
id="7kP-c4-1Rv"/>
-                <outlet property="timeSlider" destination="qNZ-Fh-W8i" 
id="Fkk-fj-s5Q"/>
-                <outlet property="trailingTimeField" destination="3ri-8b-8mw" 
id="vrZ-ps-Gkf"/>
-                <outlet property="volumeSlider" destination="fKc-2d-Uu6" 
id="2pU-fH-Afo"/>
+                <outlet property="backwardButton" destination="GVj-Mw-yGh" 
id="r8R-h9-hIN"/>
+                <outlet property="floatOnTopButton" destination="UlM-pV-GAH" 
id="Psy-2Z-suK"/>
+                <outlet property="forwardButton" destination="Udx-ZV-vdD" 
id="ILc-3U-3Lg"/>
+                <outlet property="fullscreenButton" destination="Dka-oG-Ar0" 
id="nqz-qB-etE"/>
+                <outlet property="jumpBackwardButton" destination="Y6X-Qj-wAU" 
id="ZDb-ZR-IDF"/>
+                <outlet property="jumpForwardButton" destination="omu-it-6Lt" 
id="gtC-uD-Mnu"/>
+                <outlet property="muteVolumeButton" destination="x8O-Jz-KS8" 
id="lIH-Am-21m"/>
+                <outlet property="pipButton" destination="ha3-L8-lMU" 
id="nqJ-hd-8M1"/>
+                <outlet property="playButton" destination="etJ-bh-XaL" 
id="3LP-if-Pah"/>
+                <outlet property="timeField" destination="6Bn-cR-4m1" 
id="ur0-Io-80A"/>
+                <outlet property="timeSlider" destination="YQG-rd-w0w" 
id="EJE-x3-1vw"/>
+                <outlet property="trailingTimeField" destination="3SA-Ee-NRs" 
id="hGU-Ly-Jvm"/>
+                <outlet property="volumeSlider" destination="Vus-bD-L1i" 
id="Tvg-BV-xVl"/>
             </connections>
         </customObject>
         <customView appearanceType="darkAqua" 
translatesAutoresizingMaskIntoConstraints="NO" id="WRu-Ic-lQK">
@@ -80,7 +80,7 @@
                                 </constraints>
                             </visualEffectView>
                             <button verticalHuggingPriority="750" 
translatesAutoresizingMaskIntoConstraints="NO" id="UoQ-34-Pox">
-                                <rect key="frame" x="20" y="431" width="22" 
height="29"/>
+                                <rect key="frame" x="20" y="432" width="40" 
height="28"/>
                                 <shadow key="shadow" blurRadius="2">
                                     <color key="color" white="0.0" alpha="1" 
colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                 </shadow>
@@ -95,7 +95,7 @@
                                 </connections>
                             </button>
                             <button verticalHuggingPriority="750" 
translatesAutoresizingMaskIntoConstraints="NO" id="Drq-if-dw4">
-                                <rect key="frame" x="976" y="431" width="31" 
height="29"/>
+                                <rect key="frame" x="959" y="432" width="48" 
height="28"/>
                                 <shadow key="shadow" blurRadius="2">
                                     <color key="color" white="0.0" alpha="1" 
colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                 </shadow>
@@ -135,249 +135,258 @@
                                     <real value="3.4028234663852886e+38"/>
                                 </customSpacing>
                             </stackView>
-                            <customView 
translatesAutoresizingMaskIntoConstraints="NO" id="5hr-Af-mP0">
+                            <customView 
translatesAutoresizingMaskIntoConstraints="NO" id="c6I-1E-UZH">
                                 <rect key="frame" x="0.0" y="0.0" width="1027" 
height="38"/>
                                 <subviews>
-                                    <box verticalHuggingPriority="750" 
boxType="separator" translatesAutoresizingMaskIntoConstraints="NO" 
id="sep-line-top">
-                                        <rect key="frame" x="0.0" y="35" 
width="1027" height="5"/>
-                                    </box>
-                                    <button verticalHuggingPriority="1000" 
translatesAutoresizingMaskIntoConstraints="NO" id="AXA-01-AU8" 
customClass="VLCImageButton">
-                                        <rect key="frame" x="-1" y="-1" 
width="48" height="40"/>
-                                        <shadow key="shadow" blurRadius="20">
-                                            <color key="color" white="0.0" 
alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
-                                        </shadow>
-                                        <buttonCell key="cell" type="push" 
bezelStyle="rounded" image="arrow.trianglehead.counterclockwise" 
catalog="system" imagePosition="only" alignment="center" controlSize="large" 
continuous="YES" borderStyle="border" imageScaling="proportionallyDown" 
inset="2" id="BGU-Ew-pvq">
-                                            <behavior key="behavior" 
pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
-                                            <font key="font" 
metaFont="system"/>
-                                        </buttonCell>
-                                        <color key="contentTintColor" 
red="0.99999600649999998" green="1" blue="1" alpha="0.85338267140000001" 
colorSpace="custom" customColorSpace="sRGB"/>
-                                        <connections>
-                                            <action selector="jumpBackward:" 
target="3" id="Kkq-12-jbm"/>
-                                        </connections>
-                                    </button>
-                                    <button verticalHuggingPriority="1000" 
translatesAutoresizingMaskIntoConstraints="NO" id="V9d-hX-iyg" 
customClass="VLCImageButton">
-                                        <rect key="frame" x="40" y="-1" 
width="48" height="40"/>
-                                        <shadow key="shadow" blurRadius="20">
-                                            <color key="color" white="0.0" 
alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
-                                        </shadow>
-                                        <buttonCell key="cell" type="push" 
bezelStyle="rounded" image="backward.fill" catalog="system" 
imagePosition="only" alignment="center" controlSize="large" continuous="YES" 
borderStyle="border" imageScaling="proportionallyDown" inset="2" 
id="fFm-ZG-R1p">
-                                            <behavior key="behavior" 
pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
-                                            <font key="font" 
metaFont="system"/>
-                                        </buttonCell>
-                                        <color key="contentTintColor" 
red="0.99999600649999998" green="1" blue="1" alpha="0.85338267140000001" 
colorSpace="custom" customColorSpace="sRGB"/>
-                                        <connections>
-                                            <action selector="bwd:" target="3" 
id="nDS-qm-Htv"/>
-                                        </connections>
-                                    </button>
-                                    <button verticalHuggingPriority="1000" 
translatesAutoresizingMaskIntoConstraints="NO" id="PCC-8a-sVF" 
customClass="VLCImageButton">
-                                        <rect key="frame" x="81" y="-1" 
width="48" height="40"/>
-                                        <shadow key="shadow" blurRadius="30">
-                                            <color key="color" white="0.0" 
alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
-                                        </shadow>
-                                        <buttonCell key="cell" type="push" 
bezelStyle="rounded" image="play.fill" catalog="system" imagePosition="only" 
alignment="center" controlSize="large" borderStyle="border" 
imageScaling="proportionallyDown" inset="2" id="Jk0-sw-EOp">
-                                            <behavior key="behavior" 
pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
-                                            <font key="font" 
metaFont="system"/>
-                                        </buttonCell>
-                                        <color key="contentTintColor" 
red="0.99999600649999998" green="1" blue="1" alpha="0.85338267136324741" 
colorSpace="custom" customColorSpace="sRGB"/>
-                                        <userDefinedRuntimeAttributes>
-                                            <userDefinedRuntimeAttribute 
type="boolean" keyPath="toggle" value="YES"/>
-                                        </userDefinedRuntimeAttributes>
-                                        <connections>
-                                            <action selector="play:" 
target="3" id="owy-mi-Djp"/>
-                                        </connections>
-                                    </button>
-                                    <button verticalHuggingPriority="1000" 
translatesAutoresizingMaskIntoConstraints="NO" id="sF5-Z0-bef" 
customClass="VLCImageButton">
-                                        <rect key="frame" x="122" y="-1" 
width="48" height="40"/>
-                                        <shadow key="shadow" blurRadius="20">
-                                            <color key="color" white="0.0" 
alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
-                                        </shadow>
-                                        <buttonCell key="cell" type="push" 
bezelStyle="rounded" image="forward.fill" catalog="system" imagePosition="only" 
alignment="center" controlSize="large" continuous="YES" borderStyle="border" 
imageScaling="proportionallyDown" inset="2" id="I4n-VO-oYa">
-                                            <behavior key="behavior" 
pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
-                                            <font key="font" 
metaFont="system"/>
-                                        </buttonCell>
-                                        <color key="contentTintColor" 
red="0.99999600649999998" green="1" blue="1" alpha="0.85338267140000001" 
colorSpace="custom" customColorSpace="sRGB"/>
-                                        <connections>
-                                            <action selector="fwd:" target="3" 
id="uPX-Xa-CwO"/>
-                                        </connections>
-                                    </button>
-                                    <button verticalHuggingPriority="1000" 
translatesAutoresizingMaskIntoConstraints="NO" id="aAq-uE-mLW" 
customClass="VLCImageButton">
-                                        <rect key="frame" x="163" y="-1" 
width="48" height="40"/>
-                                        <shadow key="shadow" blurRadius="20">
-                                            <color key="color" white="0.0" 
alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
-                                        </shadow>
-                                        <buttonCell key="cell" type="push" 
bezelStyle="rounded" image="arrow.trianglehead.clockwise" catalog="system" 
imagePosition="only" alignment="center" controlSize="large" continuous="YES" 
borderStyle="border" imageScaling="proportionallyDown" inset="2" 
id="V5z-Pf-hj2">
-                                            <behavior key="behavior" 
pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
-                                            <font key="font" 
metaFont="system"/>
-                                        </buttonCell>
-                                        <color key="contentTintColor" 
red="0.99999600649999998" green="1" blue="1" alpha="0.85338267140000001" 
colorSpace="custom" customColorSpace="sRGB"/>
-                                        <connections>
-                                            <action selector="jumpForward:" 
target="3" id="5yg-na-tAR"/>
-                                        </connections>
-                                    </button>
-                                    <stackView distribution="fill" 
orientation="horizontal" alignment="centerY" 
horizontalStackHuggingPriority="249.99998474121094" 
verticalStackHuggingPriority="249.99998474121094" detachesHiddenViews="YES" 
translatesAutoresizingMaskIntoConstraints="NO" id="LIP-09-gHL">
-                                        <rect key="frame" x="210" y="11" 
width="561" height="16"/>
+                                    <customView 
translatesAutoresizingMaskIntoConstraints="NO" id="qsP-dd-T9O">
+                                        <rect key="frame" x="0.0" y="0.0" 
width="1027" height="38"/>
                                         <subviews>
-                                            <textField wantsLayer="YES" 
focusRingType="none" horizontalHuggingPriority="1000" 
verticalHuggingPriority="1000" horizontalCompressionResistancePriority="751" 
translatesAutoresizingMaskIntoConstraints="NO" id="f4v-2z-dQ1" 
customClass="VLCTimeField">
-                                                <rect key="frame" x="-2" y="1" 
width="79" height="14"/>
-                                                <constraints>
-                                                    <constraint 
firstAttribute="width" constant="75" id="8Zz-X6-yY1"/>
-                                                </constraints>
-                                                <textFieldCell key="cell" 
controlSize="small" scrollable="YES" lineBreakMode="clipping" allowsUndo="NO" 
sendsActionOnEndEditing="YES" alignment="right" placeholderString="0:00" 
id="FlV-4J-8Jc">
-                                                    <font key="font" 
metaFont="smallSystem"/>
-                                                    <color key="textColor" 
name="headerTextColor" catalog="System" colorSpace="catalog"/>
-                                                    <color 
key="backgroundColor" name="controlColor" catalog="System" 
colorSpace="catalog"/>
-                                                </textFieldCell>
-                                            </textField>
-                                            <slider 
verticalHuggingPriority="1000" horizontalCompressionResistancePriority="250" 
verticalCompressionResistancePriority="751" 
translatesAutoresizingMaskIntoConstraints="NO" id="qNZ-Fh-W8i" 
customClass="VLCPlaybackProgressSlider">
-                                                <rect key="frame" x="81" 
y="-2" width="399" height="20"/>
-                                                <sliderCell key="cell" 
controlSize="small" continuous="YES" state="on" alignment="left" maxValue="1" 
tickMarkPosition="above" sliderType="linear" id="dZM-dm-qvL" 
customClass="VLCPlaybackProgressSliderCell"/>
-                                                <connections>
-                                                    <action 
selector="timeSliderAction:" target="3" id="W32-wA-rN9"/>
-                                                </connections>
-                                            </slider>
-                                            <textField wantsLayer="YES" 
focusRingType="none" horizontalHuggingPriority="1000" 
verticalHuggingPriority="1000" horizontalCompressionResistancePriority="751" 
translatesAutoresizingMaskIntoConstraints="NO" id="3ri-8b-8mw" 
customClass="VLCTimeField">
-                                                <rect key="frame" x="484" 
y="1" width="79" height="14"/>
-                                                <constraints>
-                                                    <constraint 
firstAttribute="width" constant="75" id="S9v-aM-nfL"/>
-                                                </constraints>
-                                                <textFieldCell key="cell" 
controlSize="small" scrollable="YES" lineBreakMode="clipping" allowsUndo="NO" 
sendsActionOnEndEditing="YES" alignment="left" placeholderString="0:00" 
usesSingleLineMode="YES" id="0ya-Dd-ecT">
-                                                    <font key="font" 
metaFont="smallSystem"/>
-                                                    <color key="textColor" 
name="headerTextColor" catalog="System" colorSpace="catalog"/>
-                                                    <color 
key="backgroundColor" name="controlColor" catalog="System" 
colorSpace="catalog"/>
-                                                </textFieldCell>
-                                            </textField>
-                                        </subviews>
-                                        <visibilityPriorities>
-                                            <integer value="1000"/>
-                                            <integer value="1000"/>
-                                            <integer value="1000"/>
-                                        </visibilityPriorities>
-                                        <customSpacing>
-                                            <real 
value="3.4028234663852886e+38"/>
-                                            <real 
value="3.4028234663852886e+38"/>
-                                            <real 
value="3.4028234663852886e+38"/>
-                                        </customSpacing>
-                                    </stackView>
-                                    <stackView distribution="fill" 
orientation="horizontal" alignment="centerY" spacing="5" 
horizontalStackHuggingPriority="249.99998474121094" 
verticalStackHuggingPriority="249.99998474121094" detachesHiddenViews="YES" 
translatesAutoresizingMaskIntoConstraints="NO" id="zyp-45-IgR">
-                                        <rect key="frame" x="776" y="5" 
width="128" height="28"/>
-                                        <subviews>
-                                            <button wantsLayer="YES" 
verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" 
id="afi-4d-rQk" customClass="VLCImageButton">
-                                                <rect key="frame" x="-6" 
y="-6" width="50" height="40"/>
-                                                <buttonCell key="cell" 
type="push" bezelStyle="rounded" image="speaker.wave.3.fill" catalog="system" 
imagePosition="only" alignment="center" controlSize="large" 
borderStyle="border" imageScaling="proportionallyDown" inset="2" 
id="POe-ne-XtP">
+                                            <box verticalHuggingPriority="750" 
boxType="separator" translatesAutoresizingMaskIntoConstraints="NO" 
id="g7h-El-qvj">
+                                                <rect key="frame" x="0.0" 
y="35" width="1027" height="5"/>
+                                            </box>
+                                            <button 
verticalHuggingPriority="1000" translatesAutoresizingMaskIntoConstraints="NO" 
id="Y6X-Qj-wAU" customClass="VLCImageButton">
+                                                <rect key="frame" x="5" y="5" 
width="48" height="28"/>
+                                                <shadow key="shadow" 
blurRadius="20">
+                                                    <color key="color" 
white="0.0" alpha="1" colorSpace="custom" 
customColorSpace="genericGamma22GrayColorSpace"/>
+                                                </shadow>
+                                                <buttonCell key="cell" 
type="push" bezelStyle="rounded" image="arrow.trianglehead.counterclockwise" 
catalog="system" imagePosition="only" alignment="center" controlSize="large" 
continuous="YES" borderStyle="border" imageScaling="proportionallyDown" 
inset="2" id="eKa-XI-Dhc">
                                                     <behavior key="behavior" 
pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
                                                     <font key="font" 
metaFont="system"/>
                                                 </buttonCell>
+                                                <color key="contentTintColor" 
red="0.99999600649999998" green="1" blue="1" alpha="0.85338267140000001" 
colorSpace="custom" customColorSpace="sRGB"/>
                                                 <connections>
-                                                    <action 
selector="volumeAction:" target="3" id="GOu-6c-pg9"/>
+                                                    <action 
selector="jumpBackward:" target="3" id="uWi-cR-NY2"/>
                                                 </connections>
                                             </button>
-                                            <slider 
verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" 
translatesAutoresizingMaskIntoConstraints="NO" id="fKc-2d-Uu6" 
customClass="VLCVolumeSlider">
-                                                <rect key="frame" x="41" y="6" 
width="89" height="17"/>
-                                                <sliderCell key="cell" 
controlSize="mini" continuous="YES" state="on" alignment="left" maxValue="512" 
doubleValue="50" tickMarkPosition="above" sliderType="linear" id="Gp6-7o-lvj" 
customClass="VLCVolumeSliderCell"/>
+                                            <button 
verticalHuggingPriority="1000" translatesAutoresizingMaskIntoConstraints="NO" 
id="GVj-Mw-yGh" customClass="VLCImageButton">
+                                                <rect key="frame" x="58" y="5" 
width="47" height="28"/>
+                                                <shadow key="shadow" 
blurRadius="20">
+                                                    <color key="color" 
white="0.0" alpha="1" colorSpace="custom" 
customColorSpace="genericGamma22GrayColorSpace"/>
+                                                </shadow>
+                                                <buttonCell key="cell" 
type="push" bezelStyle="rounded" image="backward.fill" catalog="system" 
imagePosition="only" alignment="center" controlSize="large" continuous="YES" 
borderStyle="border" imageScaling="proportionallyDown" inset="2" 
id="R0B-u3-Ccf">
+                                                    <behavior key="behavior" 
pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                                                    <font key="font" 
metaFont="system"/>
+                                                </buttonCell>
+                                                <color key="contentTintColor" 
red="0.99999600649999998" green="1" blue="1" alpha="0.85338267140000001" 
colorSpace="custom" customColorSpace="sRGB"/>
                                                 <connections>
-                                                    <action 
selector="volumeAction:" target="3" id="soW-Fc-H3Y"/>
+                                                    <action selector="bwd:" 
target="3" id="oad-qK-qLq"/>
                                                 </connections>
-                                            </slider>
-                                        </subviews>
-                                        <constraints>
-                                            <constraint 
firstAttribute="trailing" secondItem="fKc-2d-Uu6" secondAttribute="trailing" 
id="85r-h1-eFH"/>
-                                            <constraint firstItem="fKc-2d-Uu6" 
firstAttribute="centerY" secondItem="zyp-45-IgR" secondAttribute="centerY" 
id="IYy-2l-SZD"/>
-                                            <constraint firstAttribute="width" 
constant="128" id="jNA-Wq-ASr"/>
-                                        </constraints>
-                                        <visibilityPriorities>
-                                            <integer value="1000"/>
-                                            <integer value="1000"/>
-                                        </visibilityPriorities>
-                                        <customSpacing>
-                                            <real 
value="3.4028234663852886e+38"/>
-                                            <real 
value="3.4028234663852886e+38"/>
-                                        </customSpacing>
-                                    </stackView>
-                                    <stackView distribution="fillEqually" 
orientation="horizontal" alignment="centerY" spacing="5" 
horizontalStackHuggingPriority="249.99998474121094" 
verticalStackHuggingPriority="249.99998474121094" detachesHiddenViews="YES" 
translatesAutoresizingMaskIntoConstraints="NO" id="Kb6-da-vSR">
-                                        <rect key="frame" x="909" y="5" 
width="113" height="28"/>
-                                        <subviews>
-                                            <button wantsLayer="YES" 
horizontalHuggingPriority="1000" verticalHuggingPriority="750" 
horizontalCompressionResistancePriority="1000" 
translatesAutoresizingMaskIntoConstraints="NO" id="yEi-SZ-SIS" 
customClass="VLCImageButton">
-                                                <rect key="frame" x="-6" 
y="-6" width="48" height="40"/>
-                                                <buttonCell key="cell" 
type="push" bezelStyle="rounded" image="pip.enter" catalog="system" 
imagePosition="only" alignment="center" controlSize="large" 
borderStyle="border" imageScaling="proportionallyDown" inset="2" 
id="Q7p-GS-7p0">
+                                            </button>
+                                            <button 
verticalHuggingPriority="1000" translatesAutoresizingMaskIntoConstraints="NO" 
id="etJ-bh-XaL" customClass="VLCImageButton">
+                                                <rect key="frame" x="110" 
y="5" width="48" height="28"/>
+                                                <shadow key="shadow" 
blurRadius="30">
+                                                    <color key="color" 
white="0.0" alpha="1" colorSpace="custom" 
customColorSpace="genericGamma22GrayColorSpace"/>
+                                                </shadow>
+                                                <buttonCell key="cell" 
type="push" bezelStyle="rounded" image="play.fill" catalog="system" 
imagePosition="only" alignment="center" controlSize="large" 
borderStyle="border" imageScaling="proportionallyDown" inset="2" 
id="3aH-if-4bg">
                                                     <behavior key="behavior" 
pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
                                                     <font key="font" 
metaFont="system"/>
                                                 </buttonCell>
+                                                <color key="contentTintColor" 
red="0.99999600649999998" green="1" blue="1" alpha="0.85338267140000001" 
colorSpace="custom" customColorSpace="sRGB"/>
+                                                <userDefinedRuntimeAttributes>
+                                                    
<userDefinedRuntimeAttribute type="boolean" keyPath="toggle" value="YES"/>
+                                                </userDefinedRuntimeAttributes>
                                                 <connections>
-                                                    <action 
selector="onPipButtonClick:" target="3" id="2Yi-Jo-2No"/>
+                                                    <action selector="play:" 
target="3" id="1bU-uN-An4"/>
                                                 </connections>
                                             </button>
-                                            <button wantsLayer="YES" 
horizontalHuggingPriority="1000" verticalHuggingPriority="750" 
horizontalCompressionResistancePriority="1000" 
translatesAutoresizingMaskIntoConstraints="NO" id="dYZ-ri-Kra" 
customClass="VLCImageButton">
-                                                <rect key="frame" x="35" 
y="-6" width="44" height="40"/>
-                                                <buttonCell key="cell" 
type="push" bezelStyle="rounded" image="arrow.up.left.and.arrow.down.right" 
catalog="system" imagePosition="only" alignment="center" controlSize="large" 
borderStyle="border" imageScaling="proportionallyDown" inset="2" 
id="Z8g-js-0W6">
+                                            <button 
verticalHuggingPriority="1000" translatesAutoresizingMaskIntoConstraints="NO" 
id="Udx-ZV-vdD" customClass="VLCImageButton">
+                                                <rect key="frame" x="163" 
y="5" width="47" height="28"/>
+                                                <shadow key="shadow" 
blurRadius="20">
+                                                    <color key="color" 
white="0.0" alpha="1" colorSpace="custom" 
customColorSpace="genericGamma22GrayColorSpace"/>
+                                                </shadow>
+                                                <buttonCell key="cell" 
type="push" bezelStyle="rounded" image="forward.fill" catalog="system" 
imagePosition="only" alignment="center" controlSize="large" continuous="YES" 
borderStyle="border" imageScaling="proportionallyDown" inset="2" 
id="bza-s0-XlP">
                                                     <behavior key="behavior" 
pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
                                                     <font key="font" 
metaFont="system"/>
                                                 </buttonCell>
+                                                <color key="contentTintColor" 
red="0.99999600649999998" green="1" blue="1" alpha="0.85338267140000001" 
colorSpace="custom" customColorSpace="sRGB"/>
                                                 <connections>
-                                                    <action 
selector="fullscreen:" target="3" id="0Kk-UV-WtF"/>
+                                                    <action selector="fwd:" 
target="3" id="TIf-SA-Aym"/>
                                                 </connections>
                                             </button>
-                                            <button wantsLayer="YES" 
horizontalHuggingPriority="1000" verticalHuggingPriority="750" 
horizontalCompressionResistancePriority="1000" 
translatesAutoresizingMaskIntoConstraints="NO" id="8jZ-hd-YVq" 
customClass="VLCImageButton">
-                                                <rect key="frame" x="72" 
y="-6" width="47" height="40"/>
-                                                <buttonCell key="cell" 
type="push" bezelStyle="rounded" image="play.rectangle.on.rectangle" 
catalog="system" imagePosition="only" alignment="center" controlSize="large" 
borderStyle="border" imageScaling="proportionallyDown" inset="2" 
id="fyV-F5-ogO">
+                                            <button 
verticalHuggingPriority="1000" translatesAutoresizingMaskIntoConstraints="NO" 
id="omu-it-6Lt" customClass="VLCImageButton">
+                                                <rect key="frame" x="215" 
y="5" width="48" height="28"/>
+                                                <shadow key="shadow" 
blurRadius="20">
+                                                    <color key="color" 
white="0.0" alpha="1" colorSpace="custom" 
customColorSpace="genericGamma22GrayColorSpace"/>
+                                                </shadow>
+                                                <buttonCell key="cell" 
type="push" bezelStyle="rounded" image="arrow.trianglehead.clockwise" 
catalog="system" imagePosition="only" alignment="center" controlSize="large" 
continuous="YES" borderStyle="border" imageScaling="proportionallyDown" 
inset="2" id="FOu-bg-vYf">
                                                     <behavior key="behavior" 
pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
                                                     <font key="font" 
metaFont="system"/>
                                                 </buttonCell>
+                                                <color key="contentTintColor" 
red="0.99999600649999998" green="1" blue="1" alpha="0.85338267140000001" 
colorSpace="custom" customColorSpace="sRGB"/>
                                                 <connections>
-                                                    <action 
selector="toggleFloatOnTop:" target="3" id="BvH-qi-jx1"/>
+                                                    <action 
selector="jumpForward:" target="3" id="NL7-OJ-1x8"/>
                                                 </connections>
                                             </button>
+                                            <stackView distribution="fill" 
orientation="horizontal" alignment="centerY" 
horizontalStackHuggingPriority="249.99998474121094" 
verticalStackHuggingPriority="249.99998474121094" detachesHiddenViews="YES" 
translatesAutoresizingMaskIntoConstraints="NO" id="r0b-Xe-LxM">
+                                                <rect key="frame" x="268" 
y="12" width="468" height="14"/>
+                                                <subviews>
+                                                    <textField 
wantsLayer="YES" focusRingType="none" horizontalHuggingPriority="1000" 
verticalHuggingPriority="1000" horizontalCompressionResistancePriority="751" 
translatesAutoresizingMaskIntoConstraints="NO" id="6Bn-cR-4m1" 
customClass="VLCTimeField">
+                                                        <rect key="frame" 
x="-2" y="0.0" width="79" height="14"/>
+                                                        <constraints>
+                                                            <constraint 
firstAttribute="width" constant="75" id="bmu-4m-sw8"/>
+                                                        </constraints>
+                                                        <textFieldCell 
key="cell" controlSize="small" scrollable="YES" lineBreakMode="clipping" 
allowsUndo="NO" sendsActionOnEndEditing="YES" alignment="right" 
placeholderString="0:00" id="nPG-7X-HEG">
+                                                            <font key="font" 
metaFont="smallSystem"/>
+                                                            <color 
key="textColor" name="headerTextColor" catalog="System" colorSpace="catalog"/>
+                                                            <color 
key="backgroundColor" name="controlColor" catalog="System" 
colorSpace="catalog"/>
+                                                        </textFieldCell>
+                                                    </textField>
+                                                    <slider 
verticalHuggingPriority="1000" horizontalCompressionResistancePriority="250" 
verticalCompressionResistancePriority="751" 
translatesAutoresizingMaskIntoConstraints="NO" id="YQG-rd-w0w" 
customClass="VLCPlaybackProgressSlider">
+                                                        <rect key="frame" 
x="83" y="0.0" width="302" height="14"/>
+                                                        <sliderCell key="cell" 
controlSize="small" continuous="YES" state="on" alignment="left" maxValue="1" 
tickMarkPosition="above" sliderType="linear" id="hmW-vO-cJs" 
customClass="VLCPlaybackProgressSliderCell"/>
+                                                        <connections>
+                                                            <action 
selector="timeSliderAction:" target="3" id="G20-RN-DbG"/>
+                                                        </connections>
+                                                    </slider>
+                                                    <textField 
wantsLayer="YES" focusRingType="none" horizontalHuggingPriority="1000" 
verticalHuggingPriority="1000" horizontalCompressionResistancePriority="751" 
translatesAutoresizingMaskIntoConstraints="NO" id="3SA-Ee-NRs" 
customClass="VLCTimeField">
+                                                        <rect key="frame" 
x="391" y="0.0" width="79" height="14"/>
+                                                        <constraints>
+                                                            <constraint 
firstAttribute="width" constant="75" id="gtl-d1-bUT"/>
+                                                        </constraints>
+                                                        <textFieldCell 
key="cell" controlSize="small" scrollable="YES" lineBreakMode="clipping" 
allowsUndo="NO" sendsActionOnEndEditing="YES" alignment="left" 
placeholderString="0:00" usesSingleLineMode="YES" id="8WT-Uq-1VQ">
+                                                            <font key="font" 
metaFont="smallSystem"/>
+                                                            <color 
key="textColor" name="headerTextColor" catalog="System" colorSpace="catalog"/>
+                                                            <color 
key="backgroundColor" name="controlColor" catalog="System" 
colorSpace="catalog"/>
+                                                        </textFieldCell>
+                                                    </textField>
+                                                </subviews>
+                                                <visibilityPriorities>
+                                                    <integer value="1000"/>
+                                                    <integer value="1000"/>
+                                                    <integer value="1000"/>
+                                                </visibilityPriorities>
+                                                <customSpacing>
+                                                    <real 
value="3.4028234663852886e+38"/>
+                                                    <real 
value="3.4028234663852886e+38"/>
+                                                    <real 
value="3.4028234663852886e+38"/>
+                                                </customSpacing>
+                                            </stackView>
+                                            <stackView distribution="fill" 
orientation="horizontal" alignment="centerY" spacing="5" 
horizontalStackHuggingPriority="249.99998474121094" 
verticalStackHuggingPriority="249.99998474121094" detachesHiddenViews="YES" 
translatesAutoresizingMaskIntoConstraints="NO" id="RxE-YR-tOE">
+                                                <rect key="frame" x="741" 
y="5" width="128" height="28"/>
+                                                <subviews>
+                                                    <button wantsLayer="YES" 
verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" 
id="x8O-Jz-KS8" customClass="VLCImageButton">
+                                                        <rect key="frame" 
x="0.0" y="0.0" width="50" height="28"/>
+                                                        <buttonCell key="cell" 
type="push" bezelStyle="rounded" image="speaker.wave.3.fill" catalog="system" 
imagePosition="only" alignment="center" controlSize="large" 
borderStyle="border" imageScaling="proportionallyDown" inset="2" 
id="5F7-jP-bTV">
+                                                            <behavior 
key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                                                            <font key="font" 
metaFont="system"/>
+                                                        </buttonCell>
+                                                        <connections>
+                                                            <action 
selector="volumeAction:" target="3" id="ewy-7U-TXh"/>
+                                                        </connections>
+                                                    </button>
+                                                    <slider 
verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" 
translatesAutoresizingMaskIntoConstraints="NO" id="Vus-bD-L1i" 
customClass="VLCVolumeSlider">
+                                                        <rect key="frame" 
x="55" y="8" width="73" height="12"/>
+                                                        <sliderCell key="cell" 
controlSize="mini" continuous="YES" state="on" alignment="left" maxValue="512" 
doubleValue="50" tickMarkPosition="above" sliderType="linear" id="1Pd-U6-xC2" 
customClass="VLCVolumeSliderCell"/>
+                                                        <connections>
+                                                            <action 
selector="volumeAction:" target="3" id="2kg-hg-xiW"/>
+                                                        </connections>
+                                                    </slider>
+                                                </subviews>
+                                                <constraints>
+                                                    <constraint 
firstItem="Vus-bD-L1i" firstAttribute="centerY" secondItem="RxE-YR-tOE" 
secondAttribute="centerY" id="C1W-8q-qJj"/>
+                                                    <constraint 
firstAttribute="width" constant="128" id="UXs-5Q-69y"/>
+                                                    <constraint 
firstAttribute="trailing" secondItem="Vus-bD-L1i" secondAttribute="trailing" 
id="amn-zS-9rm"/>
+                                                </constraints>
+                                                <visibilityPriorities>
+                                                    <integer value="1000"/>
+                                                    <integer value="1000"/>
+                                                </visibilityPriorities>
+                                                <customSpacing>
+                                                    <real 
value="3.4028234663852886e+38"/>
+                                                    <real 
value="3.4028234663852886e+38"/>
+                                                </customSpacing>
+                                            </stackView>
+                                            <stackView 
distribution="fillEqually" orientation="horizontal" alignment="centerY" 
spacing="5" horizontalStackHuggingPriority="249.99998474121094" 
verticalStackHuggingPriority="249.99998474121094" detachesHiddenViews="YES" 
translatesAutoresizingMaskIntoConstraints="NO" id="UCW-iN-Dk1">
+                                                <rect key="frame" x="874" 
y="5" width="148" height="28"/>
+                                                <subviews>
+                                                    <button wantsLayer="YES" 
horizontalHuggingPriority="1000" verticalHuggingPriority="750" 
horizontalCompressionResistancePriority="1000" 
translatesAutoresizingMaskIntoConstraints="NO" id="ha3-L8-lMU" 
customClass="VLCImageButton">
+                                                        <rect key="frame" 
x="0.0" y="0.0" width="48" height="28"/>
+                                                        <buttonCell key="cell" 
type="push" bezelStyle="rounded" image="pip.enter" catalog="system" 
imagePosition="only" alignment="center" controlSize="large" 
borderStyle="border" imageScaling="proportionallyDown" inset="2" 
id="a9e-eU-lIl">
+                                                            <behavior 
key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                                                            <font key="font" 
metaFont="system"/>
+                                                        </buttonCell>
+                                                        <connections>
+                                                            <action 
selector="onPipButtonClick:" target="3" id="HF7-aG-0LQ"/>
+                                                        </connections>
+                                                    </button>
+                                                    <button wantsLayer="YES" 
horizontalHuggingPriority="1000" verticalHuggingPriority="750" 
horizontalCompressionResistancePriority="1000" 
translatesAutoresizingMaskIntoConstraints="NO" id="UlM-pV-GAH" 
customClass="VLCImageButton">
+                                                        <rect key="frame" 
x="53" y="0.0" width="47" height="28"/>
+                                                        <buttonCell key="cell" 
type="push" bezelStyle="rounded" image="play.rectangle.on.rectangle" 
catalog="system" imagePosition="only" alignment="center" controlSize="large" 
borderStyle="border" imageScaling="proportionallyDown" inset="2" 
id="C7T-mZ-uHZ">
+                                                            <behavior 
key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                                                            <font key="font" 
metaFont="system"/>
+                                                        </buttonCell>
+                                                        <connections>
+                                                            <action 
selector="toggleFloatOnTop:" target="3" id="1rF-m2-Jw2"/>
+                                                        </connections>
+                                                    </button>
+                                                    <button wantsLayer="YES" 
horizontalHuggingPriority="1000" verticalHuggingPriority="750" 
horizontalCompressionResistancePriority="1000" 
translatesAutoresizingMaskIntoConstraints="NO" id="Dka-oG-Ar0" 
customClass="VLCImageButton">
+                                                        <rect key="frame" 
x="105" y="0.0" width="43" height="28"/>
+                                                        <buttonCell key="cell" 
type="push" bezelStyle="rounded" image="arrow.up.left.and.arrow.down.right" 
catalog="system" imagePosition="only" alignment="center" controlSize="large" 
borderStyle="border" imageScaling="proportionallyDown" inset="2" 
id="zdd-fM-2wm">
+                                                            <behavior 
key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                                                            <font key="font" 
metaFont="system"/>
+                                                        </buttonCell>
+                                                        <connections>
+                                                            <action 
selector="fullscreen:" target="3" id="jef-vx-D2p"/>
+                                                        </connections>
+                                                    </button>
+                                                </subviews>
+                                                <visibilityPriorities>
+                                                    <integer value="1000"/>
+                                                    <integer value="1000"/>
+                                                    <integer value="1000"/>
+                                                </visibilityPriorities>
+                                                <customSpacing>
+                                                    <real 
value="3.4028234663852886e+38"/>
+                                                    <real 
value="3.4028234663852886e+38"/>
+                                                    <real 
value="3.4028234663852886e+38"/>
+                                                </customSpacing>
+                                            </stackView>
                                         </subviews>
-                                        <visibilityPriorities>
-                                            <integer value="1000"/>
-                                            <integer value="1000"/>
-                                            <integer value="1000"/>
-                                        </visibilityPriorities>
-                                        <customSpacing>
-                                            <real 
value="3.4028234663852886e+38"/>
-                                            <real 
value="3.4028234663852886e+38"/>
-                                            <real 
value="3.4028234663852886e+38"/>
-                                        </customSpacing>
-                                    </stackView>
+                                        <constraints>
+                                            <constraint firstItem="omu-it-6Lt" 
firstAttribute="width" secondItem="Udx-ZV-vdD" secondAttribute="width" 
id="14N-xJ-2Kx"/>
+                                            <constraint 
firstAttribute="bottom" secondItem="Y6X-Qj-wAU" secondAttribute="bottom" 
constant="5" id="16E-Ua-ogn"/>
+                                            <constraint firstItem="etJ-bh-XaL" 
firstAttribute="height" secondItem="Udx-ZV-vdD" secondAttribute="height" 
id="2f2-2p-Qp2"/>
+                                            <constraint firstItem="etJ-bh-XaL" 
firstAttribute="width" secondItem="GVj-Mw-yGh" secondAttribute="width" 
id="4RA-NQ-j2w"/>
+                                            <constraint firstItem="omu-it-6Lt" 
firstAttribute="leading" secondItem="Udx-ZV-vdD" secondAttribute="trailing" 
constant="5" id="69f-lr-AxR"/>
+                                            <constraint firstItem="etJ-bh-XaL" 
firstAttribute="width" secondItem="Udx-ZV-vdD" secondAttribute="width" 
id="7Ti-7B-tzn"/>
+                                            <constraint firstItem="UCW-iN-Dk1" 
firstAttribute="leading" secondItem="RxE-YR-tOE" secondAttribute="trailing" 
constant="5" id="7Xy-Cr-G8n"/>
+                                            <constraint firstItem="GVj-Mw-yGh" 
firstAttribute="centerY" secondItem="qsP-dd-T9O" secondAttribute="centerY" 
id="Ftz-rq-HO8"/>
+                                            <constraint firstItem="omu-it-6Lt" 
firstAttribute="centerY" secondItem="qsP-dd-T9O" secondAttribute="centerY" 
id="H4i-40-eS4"/>
+                                            <constraint firstItem="Y6X-Qj-wAU" 
firstAttribute="leading" secondItem="qsP-dd-T9O" secondAttribute="leading" 
constant="5" id="LnZ-my-zBM"/>
+                                            <constraint firstItem="Y6X-Qj-wAU" 
firstAttribute="width" secondItem="GVj-Mw-yGh" secondAttribute="width" 
id="O5b-gT-vco"/>
+                                            <constraint firstItem="GVj-Mw-yGh" 
firstAttribute="height" secondItem="etJ-bh-XaL" secondAttribute="height" 
id="OZ1-nq-sPB"/>
+                                            <constraint firstItem="Udx-ZV-vdD" 
firstAttribute="leading" secondItem="etJ-bh-XaL" secondAttribute="trailing" 
constant="5" id="P9A-Tb-eJJ"/>
+                                            <constraint firstItem="Y6X-Qj-wAU" 
firstAttribute="centerY" secondItem="qsP-dd-T9O" secondAttribute="centerY" 
id="Qp6-wa-fDd"/>
+                                            <constraint 
firstAttribute="trailing" secondItem="g7h-El-qvj" secondAttribute="trailing" 
id="RiS-qW-TP8"/>
+                                            <constraint firstItem="g7h-El-qvj" 
firstAttribute="leading" secondItem="qsP-dd-T9O" secondAttribute="leading" 
id="Uws-HL-2Vn"/>
+                                            <constraint firstItem="Udx-ZV-vdD" 
firstAttribute="height" secondItem="omu-it-6Lt" secondAttribute="height" 
id="VYM-kC-2R4"/>
+                                            <constraint firstItem="Y6X-Qj-wAU" 
firstAttribute="top" secondItem="qsP-dd-T9O" secondAttribute="top" constant="5" 
id="Vqh-fK-lnX"/>
+                                            <constraint firstItem="RxE-YR-tOE" 
firstAttribute="centerY" secondItem="qsP-dd-T9O" secondAttribute="centerY" 
id="Xde-F1-tZK"/>
+                                            <constraint firstItem="GVj-Mw-yGh" 
firstAttribute="leading" secondItem="Y6X-Qj-wAU" secondAttribute="trailing" 
constant="5" id="YEM-JR-Awq"/>
+                                            <constraint firstItem="RxE-YR-tOE" 
firstAttribute="leading" secondItem="r0b-Xe-LxM" secondAttribute="trailing" 
constant="5" id="ZUQ-WK-GV5"/>
+                                            <constraint 
firstAttribute="height" constant="38" id="aKJ-bS-tbl"/>
+                                            <constraint firstItem="Y6X-Qj-wAU" 
firstAttribute="height" secondItem="GVj-Mw-yGh" secondAttribute="height" 
id="aZ7-vm-gd8"/>
+                                            <constraint firstItem="Udx-ZV-vdD" 
firstAttribute="centerY" secondItem="qsP-dd-T9O" secondAttribute="centerY" 
id="aZ7-xx-sG6"/>
+                                            <constraint firstItem="r0b-Xe-LxM" 
firstAttribute="leading" secondItem="omu-it-6Lt" secondAttribute="trailing" 
constant="5" id="dmg-RC-IOH"/>
+                                            <constraint firstItem="UCW-iN-Dk1" 
firstAttribute="centerY" secondItem="qsP-dd-T9O" secondAttribute="centerY" 
id="mat-0R-bKe"/>
+                                            <constraint firstItem="etJ-bh-XaL" 
firstAttribute="leading" secondItem="GVj-Mw-yGh" secondAttribute="trailing" 
constant="5" id="n34-uj-qgE"/>
+                                            <constraint 
firstAttribute="trailing" secondItem="UCW-iN-Dk1" secondAttribute="trailing" 
constant="5" id="phW-qn-HgY"/>
+                                            <constraint firstItem="r0b-Xe-LxM" 
firstAttribute="centerY" secondItem="qsP-dd-T9O" secondAttribute="centerY" 
id="qCs-TW-Hpp"/>
+                                            <constraint firstItem="g7h-El-qvj" 
firstAttribute="top" secondItem="qsP-dd-T9O" secondAttribute="top" 
id="vAv-Rp-nCk"/>
+                                            <constraint firstItem="etJ-bh-XaL" 
firstAttribute="centerY" secondItem="qsP-dd-T9O" secondAttribute="centerY" 
id="vcG-CW-oAn"/>
+                                        </constraints>
+                                    </customView>
                                 </subviews>
                                 <constraints>
-                                    <constraint firstItem="sep-line-top" 
firstAttribute="leading" secondItem="5hr-Af-mP0" secondAttribute="leading" 
id="2qs-Oc-0iQ"/>
-                                    <constraint firstItem="AXA-01-AU8" 
firstAttribute="width" secondItem="V9d-hX-iyg" secondAttribute="width" 
id="6Xb-Cr-4s3"/>
-                                    <constraint firstItem="V9d-hX-iyg" 
firstAttribute="centerY" secondItem="5hr-Af-mP0" secondAttribute="centerY" 
id="72N-YC-W4S"/>
-                                    <constraint firstItem="AXA-01-AU8" 
firstAttribute="leading" secondItem="5hr-Af-mP0" secondAttribute="leading" 
constant="5" id="Ajh-Cy-gox"/>
-                                    <constraint firstItem="sep-line-top" 
firstAttribute="top" secondItem="5hr-Af-mP0" secondAttribute="top" 
id="Btm-xc-Fxd"/>
-                                    <constraint firstItem="Kb6-da-vSR" 
firstAttribute="centerY" secondItem="5hr-Af-mP0" secondAttribute="centerY" 
id="EdK-qC-e0V"/>
-                                    <constraint firstItem="AXA-01-AU8" 
firstAttribute="centerY" secondItem="5hr-Af-mP0" secondAttribute="centerY" 
id="EnE-2L-wBh"/>
-                                    <constraint firstItem="sF5-Z0-bef" 
firstAttribute="leading" secondItem="PCC-8a-sVF" secondAttribute="trailing" 
constant="5" id="G3J-50-BR7"/>
-                                    <constraint firstAttribute="height" 
constant="38" id="GLX-Xa-lVf"/>
-                                    <constraint firstItem="sF5-Z0-bef" 
firstAttribute="centerY" secondItem="5hr-Af-mP0" secondAttribute="centerY" 
id="Gu3-uc-Ear"/>
-                                    <constraint firstItem="sF5-Z0-bef" 
firstAttribute="height" secondItem="aAq-uE-mLW" secondAttribute="height" 
id="HFU-a4-Do0"/>
-                                    <constraint firstItem="aAq-uE-mLW" 
firstAttribute="width" secondItem="sF5-Z0-bef" secondAttribute="width" 
id="J39-m1-Vs4"/>
-                                    <constraint firstItem="AXA-01-AU8" 
firstAttribute="height" secondItem="V9d-hX-iyg" secondAttribute="height" 
id="Lay-ui-iBJ"/>
-                                    <constraint firstAttribute="bottom" 
secondItem="AXA-01-AU8" secondAttribute="bottom" constant="5" id="QaD-Pf-ZpA"/>
-                                    <constraint firstAttribute="trailing" 
secondItem="Kb6-da-vSR" secondAttribute="trailing" constant="5" 
id="SKZ-79-jNZ"/>
-                                    <constraint firstItem="AXA-01-AU8" 
firstAttribute="top" secondItem="5hr-Af-mP0" secondAttribute="top" constant="5" 
id="WqJ-h6-EHV"/>
-                                    <constraint firstItem="LIP-09-gHL" 
firstAttribute="leading" secondItem="aAq-uE-mLW" secondAttribute="trailing" 
constant="5" id="WwI-tp-LCr"/>
-                                    <constraint firstItem="zyp-45-IgR" 
firstAttribute="leading" secondItem="LIP-09-gHL" secondAttribute="trailing" 
constant="5" id="Za4-qe-3M8"/>
-                                    <constraint firstItem="Kb6-da-vSR" 
firstAttribute="leading" secondItem="zyp-45-IgR" secondAttribute="trailing" 
constant="5" id="d6K-IH-npl"/>
-                                    <constraint firstItem="PCC-8a-sVF" 
firstAttribute="height" secondItem="sF5-Z0-bef" secondAttribute="height" 
id="dLj-aI-TU9"/>
-                                    <constraint firstItem="PCC-8a-sVF" 
firstAttribute="width" secondItem="sF5-Z0-bef" secondAttribute="width" 
id="dXF-sz-z4c"/>
-                                    <constraint firstItem="aAq-uE-mLW" 
firstAttribute="leading" secondItem="sF5-Z0-bef" secondAttribute="trailing" 
constant="5" id="eyX-7z-y6N"/>
-                                    <constraint firstItem="LIP-09-gHL" 
firstAttribute="centerY" secondItem="5hr-Af-mP0" secondAttribute="centerY" 
id="kvw-CD-5dD"/>
-                                    <constraint firstAttribute="trailing" 
secondItem="sep-line-top" secondAttribute="trailing" id="oTf-sL-MFV"/>
-                                    <constraint firstItem="aAq-uE-mLW" 
firstAttribute="centerY" secondItem="5hr-Af-mP0" secondAttribute="centerY" 
id="pmy-FH-xIH"/>
-                                    <constraint firstItem="V9d-hX-iyg" 
firstAttribute="leading" secondItem="AXA-01-AU8" secondAttribute="trailing" 
constant="5" id="qTY-xe-IHm"/>
-                                    <constraint firstItem="zyp-45-IgR" 
firstAttribute="centerY" secondItem="5hr-Af-mP0" secondAttribute="centerY" 
id="qyN-Rp-Zah"/>
-                                    <constraint firstItem="PCC-8a-sVF" 
firstAttribute="centerY" secondItem="5hr-Af-mP0" secondAttribute="centerY" 
id="u1m-dp-AeX"/>
-                                    <constraint firstItem="PCC-8a-sVF" 
firstAttribute="leading" secondItem="V9d-hX-iyg" secondAttribute="trailing" 
constant="5" id="vBD-yc-Pxq"/>
-                                    <constraint firstItem="V9d-hX-iyg" 
firstAttribute="height" secondItem="PCC-8a-sVF" secondAttribute="height" 
id="x5g-pr-HFq"/>
-                                    <constraint firstItem="PCC-8a-sVF" 
firstAttribute="width" secondItem="V9d-hX-iyg" secondAttribute="width" 
id="xld-dk-rQY"/>
+                                    <constraint firstAttribute="trailing" 
secondItem="qsP-dd-T9O" secondAttribute="trailing" id="EXh-v4-uLz"/>
+                                    <constraint firstAttribute="bottom" 
secondItem="qsP-dd-T9O" secondAttribute="bottom" id="Ufq-da-5Ce"/>
+                                    <constraint firstItem="qsP-dd-T9O" 
firstAttribute="leading" secondItem="c6I-1E-UZH" secondAttribute="leading" 
id="YgQ-22-D02"/>
+                                    <constraint firstAttribute="height" 
constant="38" id="dyA-rc-Rvb"/>
+                                    <constraint firstItem="qsP-dd-T9O" 
firstAttribute="top" secondItem="c6I-1E-UZH" secondAttribute="top" 
id="xmG-Hl-2Gy"/>
                                 </constraints>
                             </customView>
                         </subviews>
                         <constraints>
-                            <constraint firstAttribute="bottom" 
secondItem="5hr-Af-mP0" secondAttribute="bottom" id="controls-bar-bottom"/>
-                            <constraint firstItem="5hr-Af-mP0" 
firstAttribute="leading" secondItem="main-controls-content" 
secondAttribute="leading" id="controls-bar-leading"/>
-                            <constraint firstItem="5hr-Af-mP0" 
firstAttribute="trailing" secondItem="main-controls-content" 
secondAttribute="trailing" id="controls-bar-trailing"/>
                             <constraint firstItem="CjJ-z0-ITu" 
firstAttribute="centerX" secondItem="main-controls-content" 
secondAttribute="centerX" id="loading-center-x"/>
                             <constraint firstItem="CjJ-z0-ITu" 
firstAttribute="centerY" secondItem="main-controls-content" 
secondAttribute="centerY" id="loading-center-y"/>
                             <constraint firstItem="Drq-if-dw4" 
firstAttribute="top" secondItem="VIa-0w-fl8" secondAttribute="top" 
constant="20" id="queue-btn-top"/>
@@ -392,14 +401,17 @@
                 </box>
             </subviews>
             <constraints>
+                <constraint firstAttribute="trailing" secondItem="c6I-1E-UZH" 
secondAttribute="trailing" id="0Vm-pO-G6Q"/>
                 <constraint firstItem="MTR-ds-I8o" firstAttribute="top" 
secondItem="WRu-Ic-lQK" secondAttribute="top" id="2cq-kJ-XAR"/>
+                <constraint firstItem="c6I-1E-UZH" firstAttribute="top" 
secondItem="MTR-ds-I8o" secondAttribute="bottom" id="5WC-gd-cqo"/>
                 <constraint firstAttribute="trailing" secondItem="MTR-ds-I8o" 
secondAttribute="trailing" id="E2t-0S-hdB"/>
+                <constraint firstItem="c6I-1E-UZH" firstAttribute="leading" 
secondItem="WRu-Ic-lQK" secondAttribute="leading" id="IdV-kf-5SH"/>
+                <constraint firstAttribute="bottom" secondItem="c6I-1E-UZH" 
secondAttribute="bottom" id="MBE-yp-Bu8"/>
                 <constraint firstItem="MTR-ds-I8o" firstAttribute="leading" 
secondItem="WRu-Ic-lQK" secondAttribute="leading" id="TJ3-v0-eiw"/>
                 <constraint firstAttribute="bottom" 
secondItem="main-controls-container" secondAttribute="bottom" 
id="main-controls-bottom"/>
                 <constraint firstItem="main-controls-container" 
firstAttribute="leading" secondItem="WRu-Ic-lQK" secondAttribute="leading" 
id="main-controls-leading"/>
                 <constraint firstItem="main-controls-container" 
firstAttribute="top" secondItem="WRu-Ic-lQK" secondAttribute="top" 
id="main-controls-top"/>
                 <constraint firstItem="main-controls-container" 
firstAttribute="trailing" secondItem="WRu-Ic-lQK" secondAttribute="trailing" 
id="main-controls-trailing"/>
-                <constraint firstItem="5hr-Af-mP0" firstAttribute="top" 
secondItem="MTR-ds-I8o" secondAttribute="bottom" id="video-to-controls"/>
             </constraints>
             <point key="canvasLocation" x="-507.5" y="-232"/>
         </customView>


=====================================
modules/gui/macosx/windows/video/VLCMainVideoViewController.h
=====================================
@@ -54,6 +54,7 @@ extern NSString * const VLCUseClassicVideoPlayerLayoutKey;
 @property (readwrite, strong) IBOutlet NSLayoutConstraint 
*fakeTitleBarHeightConstraint;
 @property (readwrite, strong) IBOutlet NSProgressIndicator *loadingIndicator;
 @property (readwrite, strong) IBOutlet NSImageView 
*floatOnTopIndicatorImageView;
+@property (readwrite, strong) IBOutlet NSView 
*classicViewBottomBarContainerView;
 
 @property (readwrite, weak) IBOutlet NSLayoutConstraint 
*playButtonSizeConstraint;
 @property (readwrite, weak) IBOutlet NSLayoutConstraint 
*prevButtonSizeConstraint;


=====================================
modules/gui/macosx/windows/video/VLCMainVideoViewController.m
=====================================
@@ -225,12 +225,23 @@ NSString * const VLCUseClassicVideoPlayerLayoutKey = 
@"VLCUseClassicVideoPlayerL
         _videoViewBottomToViewConstraint = 
[self.voutContainingView.bottomAnchor 
constraintEqualToAnchor:self.view.bottomAnchor];
         self.videoViewBottomToViewConstraint.active = NO;
 
-        NSVisualEffectView * const controlsBackgroundView = 
[[NSVisualEffectView alloc] initWithFrame:self.bottomBarView.frame];
-        controlsBackgroundView.translatesAutoresizingMaskIntoConstraints = NO;
-        controlsBackgroundView.blendingMode = 
NSVisualEffectBlendingModeWithinWindow;
-        controlsBackgroundView.material = NSVisualEffectMaterialTitlebar;
-        [self.bottomBarView addSubview:controlsBackgroundView 
positioned:NSWindowBelow relativeTo:self.bottomBarView.subviews.firstObject];
-        [controlsBackgroundView applyConstraintsToFillSuperview];
+        if (@available(macOS 26.0, *)) {
+#if __MAC_OS_X_VERSION_MAX_ALLOWED >= 260000
+            NSGlassEffectContainerView * const glassEffectView = 
[[NSGlassEffectContainerView alloc] initWithFrame:self.bottomBarView.frame];
+            glassEffectView.translatesAutoresizingMaskIntoConstraints = NO;
+            [self.classicViewBottomBarContainerView 
addSubview:glassEffectView];
+            [glassEffectView applyConstraintsToFillSuperview];
+            [self.bottomBarView removeFromSuperview];
+            glassEffectView.contentView = self.bottomBarView;
+#endif
+        } else {
+            NSVisualEffectView * const controlsBackgroundView = 
[[NSVisualEffectView alloc] initWithFrame:self.bottomBarView.frame];
+            controlsBackgroundView.translatesAutoresizingMaskIntoConstraints = 
NO;
+            controlsBackgroundView.blendingMode = 
NSVisualEffectBlendingModeWithinWindow;
+            controlsBackgroundView.material = NSVisualEffectMaterialTitlebar;
+            [self.bottomBarView addSubview:controlsBackgroundView 
positioned:NSWindowBelow relativeTo:self.bottomBarView.subviews.firstObject];
+            [controlsBackgroundView applyConstraintsToFillSuperview];
+        }
     }
 }
 



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/5e2aa683cd50f5122bbf5761e79d02c5843c499f...2062896498c6d7f1d7b90b299a947e6add0f7467

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/5e2aa683cd50f5122bbf5761e79d02c5843c499f...2062896498c6d7f1d7b90b299a947e6add0f7467
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance
_______________________________________________
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to