[vlc-commits] [Git][videolan/vlc][master] 7 commits: macosx: Add jump forwards and backwards ib actions to controls bar common

Steve Lhomme (@robUx4) gitlab at videolan.org
Tue Dec 3 10:53:03 UTC 2024



Steve Lhomme pushed to branch master at VideoLAN / VLC


Commits:
8d755337 by Claudio Cambra at 2024-12-03T10:22:58+00:00
macosx: Add jump forwards and backwards ib actions to controls bar common

Signed-off-by: Claudio Cambra <developer at claudiocambra.com>

- - - - -
45eb4ac1 by Claudio Cambra at 2024-12-03T10:22:58+00:00
macosx: Add jump forwards and backwards buttons in main video view XIB

Signed-off-by: Claudio Cambra <developer at claudiocambra.com>

- - - - -
fefe88cf by Claudio Cambra at 2024-12-03T10:22:58+00:00
macosx: Add outlets for jump forwards and backwards buttons in controls bar common

Signed-off-by: Claudio Cambra <developer at claudiocambra.com>

- - - - -
b711da16 by Claudio Cambra at 2024-12-03T10:22:58+00:00
macosx: Set accessibility values for jump forwards and backwards buttons

Signed-off-by: Claudio Cambra <developer at claudiocambra.com>

- - - - -
f693e4da by Claudio Cambra at 2024-12-03T10:22:58+00:00
macosx: Set different icons for jump forwards/backwards icons depending on short jump length preference

Signed-off-by: Claudio Cambra <developer at claudiocambra.com>

- - - - -
0b143f25 by Claudio Cambra at 2024-12-03T10:22:58+00:00
macosx: Add jump forwards and backwards buttons to library window controls bar

Signed-off-by: Claudio Cambra <developer at claudiocambra.com>

- - - - -
27348d02 by Claudio Cambra at 2024-12-03T10:22:58+00:00
macosx: Add jump forwards and backwards buttons to detached audio window

Signed-off-by: Claudio Cambra <developer at claudiocambra.com>

- - - - -


5 changed files:

- modules/gui/macosx/UI/VLCDetachedAudioWindow.xib
- modules/gui/macosx/UI/VLCLibraryWindow.xib
- modules/gui/macosx/UI/VLCMainVideoView.xib
- modules/gui/macosx/windows/controlsbar/VLCControlsBarCommon.h
- modules/gui/macosx/windows/controlsbar/VLCControlsBarCommon.m


Changes:

=====================================
modules/gui/macosx/UI/VLCDetachedAudioWindow.xib
=====================================
@@ -54,10 +54,23 @@
                                                 </textFieldCell>
                                             </textField>
                                             <customView translatesAutoresizingMaskIntoConstraints="NO" id="Vae-cT-EEI" userLabel="Play controls group">
-                                                <rect key="frame" x="202" y="10" width="96" height="32"/>
+                                                <rect key="frame" x="185" y="10" width="131" height="32"/>
                                                 <subviews>
+                                                    <button translatesAutoresizingMaskIntoConstraints="NO" id="gAM-N6-20z" userLabel="Jump Back Button">
+                                                        <rect key="frame" x="0.0" y="3" width="20.5" height="28"/>
+                                                        <buttonCell key="cell" type="bevel" bezelStyle="regularSquare" image="arrow.trianglehead.counterclockwise" catalog="system" imagePosition="only" alignment="center" alternateImage="backward.fill" controlSize="large" continuous="YES" imageScaling="proportionallyUpOrDown" id="ZMf-Wu-LAx">
+                                                            <behavior key="behavior" lightByContents="YES"/>
+                                                            <font key="font" metaFont="system"/>
+                                                        </buttonCell>
+                                                        <constraints>
+                                                            <constraint firstAttribute="width" secondItem="gAM-N6-20z" secondAttribute="height" multiplier="1:1" id="xMw-di-Drm"/>
+                                                        </constraints>
+                                                        <connections>
+                                                            <action selector="jumpBackward:" target="3" id="WYX-uq-hwV"/>
+                                                        </connections>
+                                                    </button>
                                                     <button translatesAutoresizingMaskIntoConstraints="NO" id="11">
-                                                        <rect key="frame" x="0.0" y="-1" width="32" height="35"/>
+                                                        <rect key="frame" x="20" y="-1.5" width="32.5" height="35"/>
                                                         <buttonCell key="cell" type="bevel" bezelStyle="regularSquare" image="backward.fill" catalog="system" imagePosition="only" alignment="center" alternateImage="backward.fill" controlSize="large" continuous="YES" enabled="NO" imageScaling="proportionallyUpOrDown" id="14">
                                                             <behavior key="behavior" lightByContents="YES"/>
                                                             <font key="font" metaFont="system"/>
@@ -70,7 +83,7 @@
                                                         </connections>
                                                     </button>
                                                     <button translatesAutoresizingMaskIntoConstraints="NO" id="10">
-                                                        <rect key="frame" x="32" y="-3" width="32" height="38"/>
+                                                        <rect key="frame" x="52" y="-3" width="32" height="38"/>
                                                         <buttonCell key="cell" type="bevel" bezelStyle="regularSquare" image="play.circle.fill" catalog="system" imagePosition="only" alignment="center" alternateImage="play.circle.fill" controlSize="large" imageScaling="proportionallyUpOrDown" id="15">
                                                             <behavior key="behavior" lightByContents="YES"/>
                                                             <font key="font" metaFont="system"/>
@@ -83,7 +96,7 @@
                                                         </connections>
                                                     </button>
                                                     <button translatesAutoresizingMaskIntoConstraints="NO" id="12">
-                                                        <rect key="frame" x="64" y="-1" width="32" height="35"/>
+                                                        <rect key="frame" x="84" y="-1.5" width="32.5" height="35"/>
                                                         <buttonCell key="cell" type="bevel" bezelStyle="regularSquare" image="forward.fill" catalog="system" imagePosition="only" alignment="center" alternateImage="forward.fill" controlSize="large" continuous="YES" enabled="NO" imageScaling="proportionallyUpOrDown" id="13">
                                                             <behavior key="behavior" lightByContents="YES"/>
                                                             <font key="font" metaFont="system"/>
@@ -95,19 +108,38 @@
                                                             <action selector="fwd:" target="3" id="51"/>
                                                         </connections>
                                                     </button>
+                                                    <button translatesAutoresizingMaskIntoConstraints="NO" id="gzL-f3-Atd" userLabel="Jump Forwards Buttoin">
+                                                        <rect key="frame" x="116" y="6" width="15" height="23"/>
+                                                        <buttonCell key="cell" type="bevel" bezelStyle="regularSquare" image="arrow.trianglehead.clockwise" catalog="system" imagePosition="only" alignment="center" alternateImage="arrow.trianglehead.clockwise" controlSize="large" continuous="YES" imageScaling="proportionallyUpOrDown" id="81E-pP-1hO">
+                                                            <behavior key="behavior" lightByContents="YES"/>
+                                                            <font key="font" metaFont="system"/>
+                                                        </buttonCell>
+                                                        <constraints>
+                                                            <constraint firstAttribute="width" secondItem="gzL-f3-Atd" secondAttribute="height" multiplier="1:1" id="sv0-Qp-GHf"/>
+                                                        </constraints>
+                                                        <connections>
+                                                            <action selector="jumpForward:" target="3" id="m6y-ed-Fwc"/>
+                                                        </connections>
+                                                    </button>
                                                 </subviews>
                                                 <constraints>
                                                     <constraint firstItem="11" firstAttribute="top" secondItem="Vae-cT-EEI" secondAttribute="top" id="11i-jS-o5W"/>
+                                                    <constraint firstItem="gzL-f3-Atd" firstAttribute="centerY" secondItem="Vae-cT-EEI" secondAttribute="centerY" id="3NJ-z2-sVu"/>
                                                     <constraint firstItem="10" firstAttribute="left" secondItem="11" secondAttribute="right" id="496-Ip-nTd"/>
                                                     <constraint firstItem="10" firstAttribute="top" secondItem="Vae-cT-EEI" secondAttribute="top" id="9Kr-xx-Ssf"/>
-                                                    <constraint firstAttribute="right" secondItem="12" secondAttribute="right" id="KOc-oW-4iH"/>
+                                                    <constraint firstItem="gzL-f3-Atd" firstAttribute="width" secondItem="gzL-f3-Atd" secondAttribute="height" multiplier="1:1" id="Hl0-jN-lyU"/>
+                                                    <constraint firstAttribute="trailing" secondItem="gzL-f3-Atd" secondAttribute="trailing" id="IQ0-ae-v5p"/>
+                                                    <constraint firstItem="gzL-f3-Atd" firstAttribute="left" secondItem="12" secondAttribute="right" id="KOc-oW-4iH"/>
+                                                    <constraint firstItem="gAM-N6-20z" firstAttribute="centerY" secondItem="Vae-cT-EEI" secondAttribute="centerY" id="QiN-nb-d8b"/>
+                                                    <constraint firstItem="gAM-N6-20z" firstAttribute="width" secondItem="gAM-N6-20z" secondAttribute="height" multiplier="1:1" id="Zi6-SL-IgL"/>
                                                     <constraint firstAttribute="height" constant="32" id="bN7-k9-7Iy"/>
                                                     <constraint firstAttribute="bottom" secondItem="11" secondAttribute="bottom" id="fFe-7J-ver"/>
                                                     <constraint firstItem="12" firstAttribute="top" secondItem="Vae-cT-EEI" secondAttribute="top" id="gwB-yN-SK0"/>
                                                     <constraint firstAttribute="bottom" secondItem="12" secondAttribute="bottom" id="l2h-EI-MAG"/>
                                                     <constraint firstItem="12" firstAttribute="left" secondItem="10" secondAttribute="right" id="mOu-KM-Uo8"/>
-                                                    <constraint firstItem="11" firstAttribute="left" secondItem="Vae-cT-EEI" secondAttribute="left" id="rI6-bN-oCM"/>
+                                                    <constraint firstItem="11" firstAttribute="left" secondItem="gAM-N6-20z" secondAttribute="right" id="rI6-bN-oCM"/>
                                                     <constraint firstAttribute="bottom" secondItem="10" secondAttribute="bottom" id="yGM-Jx-9fD"/>
+                                                    <constraint firstItem="gAM-N6-20z" firstAttribute="leading" secondItem="Vae-cT-EEI" secondAttribute="leading" id="yhq-h9-lgm"/>
                                                 </constraints>
                                             </customView>
                                             <slider hidden="YES" horizontalHuggingPriority="200" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="20" customClass="VLCPlaybackProgressSlider">
@@ -224,6 +256,8 @@
                 <outlet property="detailLabel" destination="hHQ-ue-m9C" id="YOa-QZ-nmx"/>
                 <outlet property="dropView" destination="65" id="9kL-XQ-Akn"/>
                 <outlet property="forwardButton" destination="12" id="f7L-YR-p1H"/>
+                <outlet property="jumpBackwardButton" destination="gAM-N6-20z" id="pjA-Rp-szy"/>
+                <outlet property="jumpForwardButton" destination="gzL-f3-Atd" id="g5i-TP-TrD"/>
                 <outlet property="playButton" destination="10" id="Gsq-tx-qf3"/>
                 <outlet property="playingItemDisplayField" destination="zpq-en-EAi" id="9js-uK-Dgf"/>
                 <outlet property="timeField" destination="9" id="uzI-2c-bs3"/>
@@ -232,6 +266,8 @@
         </customObject>
     </objects>
     <resources>
+        <image name="arrow.trianglehead.clockwise" catalog="system" width="15" height="17"/>
+        <image name="arrow.trianglehead.counterclockwise" catalog="system" width="15" height="17"/>
         <image name="backward.fill" catalog="system" width="20" height="12"/>
         <image name="forward.fill" catalog="system" width="20" height="12"/>
         <image name="play.circle.fill" catalog="system" width="15" height="15"/>


=====================================
modules/gui/macosx/UI/VLCLibraryWindow.xib
=====================================
@@ -36,8 +36,22 @@
                                 <rect key="frame" x="0.0" y="0.0" width="896" height="48"/>
                                 <subviews>
                                     <customView translatesAutoresizingMaskIntoConstraints="NO" id="YAj-e7-KCU" userLabel="New play controls group ">
-                                        <rect key="frame" x="16" y="4" width="108" height="40"/>
+                                        <rect key="frame" x="16" y="4" width="188" height="40"/>
                                         <subviews>
+                                            <button translatesAutoresizingMaskIntoConstraints="NO" id="72A-6S-lpR" userLabel="Jump Back Button">
+                                                <rect key="frame" x="0.0" y="5" width="24" height="32"/>
+                                                <buttonCell key="cell" type="square" bezelStyle="shadowlessSquare" image="arrow.trianglehead.counterclockwise" catalog="system" imagePosition="only" alignment="center" imageScaling="proportionallyUpOrDown" inset="2" id="SuP-ZN-d5p">
+                                                    <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                                                    <font key="font" metaFont="system"/>
+                                                </buttonCell>
+                                                <constraints>
+                                                    <constraint firstAttribute="height" constant="24" id="1Et-Uf-MYi"/>
+                                                    <constraint firstAttribute="width" constant="24" id="q77-Gr-cho"/>
+                                                </constraints>
+                                                <connections>
+                                                    <action selector="jumpBackward:" target="Uzf-Tf-H8x" id="woD-5F-KO1"/>
+                                                </connections>
+                                            </button>
                                             <button translatesAutoresizingMaskIntoConstraints="NO" id="jGc-Xw-GYI" userLabel="Prev Button">
                                                 <rect key="frame" x="0.0" y="8" width="24" height="24"/>
                                                 <buttonCell key="cell" type="square" bezelStyle="shadowlessSquare" image="VLCBackwardTemplate" imagePosition="only" alignment="center" imageScaling="proportionallyUpOrDown" inset="2" id="wXL-JO-q9Q">
@@ -80,16 +94,33 @@
                                                     <action selector="fwd:" target="Uzf-Tf-H8x" id="cnd-1b-e3l"/>
                                                 </connections>
                                             </button>
+                                            <button translatesAutoresizingMaskIntoConstraints="NO" id="pAd-ve-EeL" userLabel="Jump Forwards Button">
+                                                <rect key="frame" x="164" y="5" width="24" height="32"/>
+                                                <buttonCell key="cell" type="square" bezelStyle="shadowlessSquare" image="arrow.trianglehead.clockwise" catalog="system" imagePosition="only" alignment="center" imageScaling="proportionallyUpOrDown" inset="2" id="Y4X-jC-iMt">
+                                                    <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                                                    <font key="font" metaFont="system"/>
+                                                </buttonCell>
+                                                <constraints>
+                                                    <constraint firstAttribute="width" constant="24" id="ASs-Ko-yKD"/>
+                                                    <constraint firstAttribute="height" constant="24" id="nTr-cv-5Jb"/>
+                                                </constraints>
+                                                <connections>
+                                                    <action selector="jumpForward:" target="Uzf-Tf-H8x" id="fDv-So-2zv"/>
+                                                </connections>
+                                            </button>
                                         </subviews>
                                         <constraints>
                                             <constraint firstItem="WgO-zh-k4s" firstAttribute="leading" secondItem="jGc-Xw-GYI" secondAttribute="trailing" constant="16" id="7Jh-Rk-goR"/>
+                                            <constraint firstItem="pAd-ve-EeL" firstAttribute="centerY" secondItem="YAj-e7-KCU" secondAttribute="centerY" id="GBP-di-Jyg"/>
+                                            <constraint firstAttribute="trailing" secondItem="pAd-ve-EeL" secondAttribute="trailing" id="IQw-HC-7vD"/>
+                                            <constraint firstItem="72A-6S-lpR" firstAttribute="leading" secondItem="YAj-e7-KCU" secondAttribute="leading" id="K2F-fX-XSp"/>
                                             <constraint firstItem="dPD-MZ-5oT" firstAttribute="leading" secondItem="WgO-zh-k4s" secondAttribute="trailing" constant="16" id="L7k-XW-mNm"/>
+                                            <constraint firstItem="72A-6S-lpR" firstAttribute="centerY" secondItem="YAj-e7-KCU" secondAttribute="centerY" id="OfN-mp-fEF"/>
+                                            <constraint firstItem="pAd-ve-EeL" firstAttribute="leading" secondItem="dPD-MZ-5oT" secondAttribute="trailing" constant="16" id="S8H-lo-eeW"/>
                                             <constraint firstItem="jGc-Xw-GYI" firstAttribute="centerY" secondItem="YAj-e7-KCU" secondAttribute="centerY" id="XTJ-tG-WAb"/>
-                                            <constraint firstItem="WgO-zh-k4s" firstAttribute="centerX" secondItem="YAj-e7-KCU" secondAttribute="centerX" id="dj3-Cx-RLd"/>
                                             <constraint firstItem="WgO-zh-k4s" firstAttribute="centerY" secondItem="YAj-e7-KCU" secondAttribute="centerY" id="g2R-aO-KbT"/>
-                                            <constraint firstAttribute="trailing" secondItem="dPD-MZ-5oT" secondAttribute="trailing" id="oOi-7M-aLf"/>
                                             <constraint firstItem="dPD-MZ-5oT" firstAttribute="centerY" secondItem="YAj-e7-KCU" secondAttribute="centerY" id="rCy-3x-EJD"/>
-                                            <constraint firstItem="jGc-Xw-GYI" firstAttribute="leading" secondItem="YAj-e7-KCU" secondAttribute="leading" id="xeh-Bo-f7P"/>
+                                            <constraint firstItem="jGc-Xw-GYI" firstAttribute="leading" secondItem="72A-6S-lpR" secondAttribute="trailing" constant="16" id="wzB-TW-knV"/>
                                         </constraints>
                                     </customView>
                                     <customView translatesAutoresizingMaskIntoConstraints="NO" id="Ktr-qT-1fr" customClass="VLCTrackingView">
@@ -191,14 +222,14 @@
                                                 </constraints>
                                             </customView>
                                             <slider hidden="YES" horizontalHuggingPriority="200" verticalHuggingPriority="750" verticalCompressionResistancePriority="751" mirrorLayoutDirectionWhenInternationalizing="never" translatesAutoresizingMaskIntoConstraints="NO" id="9Hg-t2-K5z" customClass="VLCPlaybackProgressSlider">
-                                                <rect key="frame" x="86" y="-2" width="480" height="20"/>
+                                                <rect key="frame" x="86" y="-2" width="320" height="20"/>
                                                 <sliderCell key="cell" controlSize="mini" continuous="YES" state="on" alignment="left" maxValue="1" doubleValue="0.32600000000000001" tickMarkPosition="above" sliderType="linear" id="YMg-uo-8nX" customClass="VLCPlaybackProgressSliderCell"/>
                                                 <connections>
                                                     <action selector="timeSliderAction:" target="Uzf-Tf-H8x" id="eDh-39-Ej1"/>
                                                 </connections>
                                             </slider>
-                                            <textField wantsLayer="YES" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="oGd-mG-cFw" customClass="VLCTimeField">
-                                                <rect key="frame" x="566" y="3" width="52" height="11"/>
+                                            <textField wantsLayer="YES" focusRingType="none" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="oGd-mG-cFw" customClass="VLCTimeField">
+                                                <rect key="frame" x="406" y="3" width="52" height="11"/>
                                                 <constraints>
                                                     <constraint firstAttribute="width" constant="48" id="mAg-xF-yHo"/>
                                                 </constraints>
@@ -228,13 +259,13 @@
                                         </constraints>
                                     </customView>
                                     <stackView distribution="fill" orientation="horizontal" alignment="centerY" horizontalStackHuggingPriority="249.99998474121094" verticalStackHuggingPriority="249.99998474121094" detachesHiddenViews="YES" translatesAutoresizingMaskIntoConstraints="NO" id="S1K-Lp-DVO">
-                                        <rect key="frame" x="772" y="4" width="108" height="40"/>
+                                        <rect key="frame" x="692" y="4" width="188" height="40"/>
                                         <subviews>
                                             <customView translatesAutoresizingMaskIntoConstraints="NO" id="i42-vp-ih7">
-                                                <rect key="frame" x="0.0" y="0.0" width="84" height="40"/>
+                                                <rect key="frame" x="0.0" y="0.0" width="164" height="40"/>
                                                 <subviews>
                                                     <slider verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="noz-yJ-oH4" customClass="VLCVolumeSlider">
-                                                        <rect key="frame" x="16" y="12" width="52" height="17"/>
+                                                        <rect key="frame" x="56" y="12" width="52" height="17"/>
                                                         <constraints>
                                                             <constraint firstAttribute="width" constant="48" id="EM2-Hh-lqK"/>
                                                         </constraints>
@@ -244,7 +275,7 @@
                                                         </connections>
                                                     </slider>
                                                     <button translatesAutoresizingMaskIntoConstraints="NO" id="75c-FF-mgb">
-                                                        <rect key="frame" x="70" y="14" width="12" height="12"/>
+                                                        <rect key="frame" x="110" y="14" width="12" height="12"/>
                                                         <buttonCell key="cell" type="bevel" bezelStyle="regularSquare" image="VLCVolumeOnTemplate" imagePosition="only" alignment="center" imageScaling="proportionallyUpOrDown" id="a9Z-7I-lXJ">
                                                             <behavior key="behavior" lightByContents="YES"/>
                                                             <font key="font" metaFont="system" size="10"/>
@@ -258,7 +289,7 @@
                                                         </connections>
                                                     </button>
                                                     <button translatesAutoresizingMaskIntoConstraints="NO" id="IAy-58-UPp">
-                                                        <rect key="frame" x="2" y="14" width="12" height="12"/>
+                                                        <rect key="frame" x="42" y="14" width="12" height="12"/>
                                                         <buttonCell key="cell" type="bevel" bezelStyle="regularSquare" image="VLCVolumeOffTemplate" imagePosition="only" alignment="center" imageScaling="proportionallyUpOrDown" id="qTN-dX-Oj5">
                                                             <behavior key="behavior" lightByContents="YES"/>
                                                             <font key="font" metaFont="system" size="10"/>
@@ -282,7 +313,7 @@
                                                 </constraints>
                                             </customView>
                                             <button translatesAutoresizingMaskIntoConstraints="NO" id="dwM-Uz-pAw" userLabel="Full Screen Button">
-                                                <rect key="frame" x="92" y="12" width="16" height="16"/>
+                                                <rect key="frame" x="172" y="12" width="16" height="16"/>
                                                 <buttonCell key="cell" type="square" bezelStyle="shadowlessSquare" image="fullscreen-one-button" imagePosition="only" alignment="center" alternateImage="fullscreen-one-button-pressed" imageScaling="proportionallyUpOrDown" id="fMb-sg-sZ1">
                                                     <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
                                                     <font key="font" metaFont="system"/>
@@ -568,6 +599,8 @@
                 <outlet property="dropView" destination="MQH-bI-Zdh" id="Wz9-NB-wtE"/>
                 <outlet property="forwardButton" destination="dPD-MZ-5oT" id="btH-v5-s7F"/>
                 <outlet property="fullscreenButton" destination="dwM-Uz-pAw" id="gXA-WS-Gig"/>
+                <outlet property="jumpBackwardButton" destination="72A-6S-lpR" id="YRk-DB-K28"/>
+                <outlet property="jumpForwardButton" destination="pAd-ve-EeL" id="iBO-a8-WA6"/>
                 <outlet property="muteVolumeButton" destination="IAy-58-UPp" id="dDN-pE-Vmj"/>
                 <outlet property="openMainVideoViewButtonOverlay" destination="CzG-0S-Kke" id="6BY-BQ-72f"/>
                 <outlet property="playButton" destination="WgO-zh-k4s" id="0yC-Yh-H4V"/>
@@ -1568,6 +1601,8 @@
         <image name="VLCVolumeOffTemplate" width="128" height="128"/>
         <image name="VLCVolumeOnTemplate" width="128" height="128"/>
         <image name="antenna.radiowaves.left.and.right" catalog="system" width="16" height="14"/>
+        <image name="arrow.trianglehead.clockwise" catalog="system" width="15" height="17"/>
+        <image name="arrow.trianglehead.counterclockwise" catalog="system" width="15" height="17"/>
         <image name="arrow.up.arrow.down" catalog="system" width="18" height="15"/>
         <image name="fullscreen-one-button" width="29" height="23"/>
         <image name="fullscreen-one-button-pressed" width="29" height="23"/>


=====================================
modules/gui/macosx/UI/VLCMainVideoView.xib
=====================================
@@ -45,6 +45,8 @@
                 <outlet property="forwardButton" destination="sF5-Z0-bef" id="H6w-Le-NAK"/>
                 <outlet property="fullscreenButton" destination="dYZ-ri-Kra" id="Cw2-BS-QG9"/>
                 <outlet property="fullscreenButtonWidthConstraint" destination="quS-fD-Od7" id="6hT-nR-yQI"/>
+                <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="pipButtonWidthConstraint" destination="dxa-Jx-T4p" id="a5S-ec-2xD"/>
@@ -355,10 +357,28 @@
                                 </shadow>
                             </customView>
                             <stackView wantsLayer="YES" distribution="fill" orientation="horizontal" alignment="centerY" spacing="20" horizontalStackHuggingPriority="249.99998474121094" verticalStackHuggingPriority="249.99998474121094" detachesHiddenViews="YES" translatesAutoresizingMaskIntoConstraints="NO" id="CvV-yX-Nbh">
-                                <rect key="frame" x="260" y="208" width="200" height="64"/>
+                                <rect key="frame" x="208" y="208" width="304" height="64"/>
                                 <subviews>
+                                    <button translatesAutoresizingMaskIntoConstraints="NO" id="AXA-01-AU8" customClass="VLCImageButton">
+                                        <rect key="frame" x="0.0" y="13" width="32" height="40"/>
+                                        <shadow key="shadow" blurRadius="20">
+                                            <color key="color" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                        </shadow>
+                                        <buttonCell key="cell" type="square" bezelStyle="shadowlessSquare" image="arrow.trianglehead.counterclockwise" catalog="system" imagePosition="only" alignment="center" continuous="YES" imageScaling="proportionallyUpOrDown" 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"/>
+                                        <constraints>
+                                            <constraint firstAttribute="width" constant="32" id="Xh5-1i-dxH"/>
+                                            <constraint firstAttribute="width" secondItem="AXA-01-AU8" secondAttribute="height" multiplier="1:1" id="lgn-JT-8Qk"/>
+                                        </constraints>
+                                        <connections>
+                                            <action selector="jumpBackward:" target="3" id="Kkq-12-jbm"/>
+                                        </connections>
+                                    </button>
                                     <button translatesAutoresizingMaskIntoConstraints="NO" id="V9d-hX-iyg" customClass="VLCImageButton">
-                                        <rect key="frame" x="0.0" y="6.5" width="48.5" height="51"/>
+                                        <rect key="frame" x="52" y="6.5" width="48.5" height="51"/>
                                         <shadow key="shadow" blurRadius="20">
                                             <color key="color" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                         </shadow>
@@ -376,7 +396,7 @@
                                         </connections>
                                     </button>
                                     <button translatesAutoresizingMaskIntoConstraints="NO" id="PCC-8a-sVF" customClass="VLCImageButton">
-                                        <rect key="frame" x="68" y="-1.5" width="64.5" height="68"/>
+                                        <rect key="frame" x="120" y="-1.5" width="64.5" height="68"/>
                                         <shadow key="shadow" blurRadius="30">
                                             <color key="color" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                         </shadow>
@@ -397,7 +417,7 @@
                                         </connections>
                                     </button>
                                     <button translatesAutoresizingMaskIntoConstraints="NO" id="sF5-Z0-bef" customClass="VLCImageButton">
-                                        <rect key="frame" x="152" y="6.5" width="48.5" height="51"/>
+                                        <rect key="frame" x="204" y="6.5" width="48.5" height="51"/>
                                         <shadow key="shadow" blurRadius="20">
                                             <color key="color" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                         </shadow>
@@ -414,16 +434,42 @@
                                             <action selector="fwd:" target="3" id="uPX-Xa-CwO"/>
                                         </connections>
                                     </button>
+                                    <button translatesAutoresizingMaskIntoConstraints="NO" id="aAq-uE-mLW" customClass="VLCImageButton">
+                                        <rect key="frame" x="272" y="13" width="32" height="40"/>
+                                        <shadow key="shadow" blurRadius="20">
+                                            <color key="color" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
+                                        </shadow>
+                                        <buttonCell key="cell" type="square" bezelStyle="shadowlessSquare" image="arrow.trianglehead.clockwise" catalog="system" imagePosition="only" alignment="center" continuous="YES" imageScaling="proportionallyUpOrDown" 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"/>
+                                        <constraints>
+                                            <constraint firstAttribute="width" constant="32" id="OBA-WG-jaz"/>
+                                            <constraint firstAttribute="width" secondItem="aAq-uE-mLW" secondAttribute="height" multiplier="1:1" id="g5c-kh-jsZ"/>
+                                        </constraints>
+                                        <connections>
+                                            <action selector="jumpForward:" target="3" id="5yg-na-tAR"/>
+                                        </connections>
+                                    </button>
                                 </subviews>
+                                <constraints>
+                                    <constraint firstItem="aAq-uE-mLW" firstAttribute="width" secondItem="aAq-uE-mLW" secondAttribute="height" multiplier="1:1" id="eMl-LK-UdE"/>
+                                    <constraint firstItem="AXA-01-AU8" firstAttribute="width" secondItem="AXA-01-AU8" secondAttribute="height" multiplier="1:1" id="tkp-uc-bfs"/>
+                                </constraints>
                                 <visibilityPriorities>
                                     <integer value="1000"/>
                                     <integer value="1000"/>
                                     <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"/>
+                                    <real value="3.4028234663852886e+38"/>
+                                    <real value="3.4028234663852886e+38"/>
                                 </customSpacing>
                             </stackView>
                             <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="UoQ-34-Pox">
@@ -524,6 +570,8 @@
         <image name="NSLeftFacingTriangleTemplate" width="12" height="17"/>
         <image name="NSListViewTemplate" width="21" height="15"/>
         <image name="VLCPauseTemplate" width="128" height="128"/>
+        <image name="arrow.trianglehead.clockwise" catalog="system" width="15" height="17"/>
+        <image name="arrow.trianglehead.counterclockwise" catalog="system" width="15" height="17"/>
         <image name="arrow.up.left.and.arrow.down.right" catalog="system" width="16" height="15"/>
         <image name="backward.fill" catalog="system" width="20" height="12"/>
         <image name="bookmark.circle" catalog="system" width="15" height="15"/>


=====================================
modules/gui/macosx/windows/controlsbar/VLCControlsBarCommon.h
=====================================
@@ -45,6 +45,8 @@
 @property (readwrite, strong) IBOutlet NSButton *playButton;
 @property (readwrite, strong) IBOutlet NSButton *backwardButton;
 @property (readwrite, strong) IBOutlet NSButton *forwardButton;
+ at property (readwrite, strong) IBOutlet NSButton *jumpBackwardButton;
+ at property (readwrite, strong) IBOutlet NSButton *jumpForwardButton;
 
 @property (readwrite, strong) IBOutlet VLCPlaybackProgressSlider *timeSlider;
 @property (readwrite, strong) IBOutlet VLCVolumeSlider *volumeSlider;
@@ -72,6 +74,8 @@
 - (IBAction)play:(id)sender;
 - (IBAction)bwd:(id)sender;
 - (IBAction)fwd:(id)sender;
+- (IBAction)jumpBackward:(id)sender;
+- (IBAction)jumpForward:(id)sender;
 
 - (IBAction)timeSliderAction:(id)sender;
 - (IBAction)volumeAction:(id)sender;


=====================================
modules/gui/macosx/windows/controlsbar/VLCControlsBarCommon.m
=====================================
@@ -123,6 +123,14 @@
     self.forwardButton.accessibilityLabel = _NS("Seek forward");
     self.forwardButton.accessibilityTitle = self.forwardButton.toolTip;
 
+    self.jumpBackwardButton.toolTip = _NS("Jump backwards");
+    self.jumpBackwardButton.accessibilityLabel = _NS("Jump backwards in current item");
+    self.jumpBackwardButton.accessibilityTitle = self.jumpBackwardButton.toolTip;
+
+    self.jumpForwardButton.toolTip = _NS("Jump forwards");
+    self.jumpForwardButton.accessibilityLabel = _NS("Jump forwards in current item");
+    self.jumpForwardButton.accessibilityTitle = self.jumpForwardButton.toolTip;
+
     [self.timeSlider setToolTip: _NS("Position")];
     self.timeSlider.accessibilityLabel = _NS("Playback position");
     self.timeSlider.accessibilityTitle = self.timeSlider.toolTip;
@@ -149,6 +157,31 @@
                                       accessibilityDescription:_NS("Muted")];
         _unmutedVolumeImage = [NSImage imageWithSystemSymbolName:@"speaker.wave.3.fill"
                                         accessibilityDescription:_NS("Unmuted")];
+
+        const int64_t shortJumpSize = var_InheritInteger(getIntf(), "short-jump-size");
+        NSString * const shortJumpSizeString = [NSString stringWithFormat:@"%lli", shortJumpSize];
+        switch (shortJumpSize) {
+            case 90:
+            case 75:
+            case 60:
+            case 45:
+            case 30:
+            case 15:
+            case 10:
+            case 5:
+            {
+                NSString * const jumpForwardSymbolName =
+                    [NSString stringWithFormat:@"%@.arrow.trianglehead.clockwise",shortJumpSizeString];
+                NSString * const jumpBackwardSymbolName =
+                    [NSString stringWithFormat:@"%@.arrow.trianglehead.counterclockwise", shortJumpSizeString];
+                self.jumpForwardButton.image =
+                    [NSImage imageWithSystemSymbolName:jumpForwardSymbolName
+                              accessibilityDescription:_NS("Jump forward")];
+                self.jumpBackwardButton.image =
+                    [NSImage imageWithSystemSymbolName:jumpBackwardSymbolName
+                              accessibilityDescription:_NS("Jump backward")];
+            }
+        }
     } else {
         _playImage = imageFromRes(@"VLCPlayTemplate");
         _pressedPlayImage = imageFromRes(@"VLCPlayTemplate");
@@ -312,6 +345,16 @@
     }
 }
 
+- (IBAction)jumpBackward:(id)sender
+{
+    [_playerController jumpBackwardShort];
+}
+
+- (IBAction)jumpForward:(id)sender
+{
+    [_playerController jumpForwardShort];
+}
+
 - (IBAction)timeSliderAction:(id)sender
 {
     float newPosition;



View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/31bfc11b33985296348f62a31fe8324b307e88cd...27348d0203a38923ab81e9666250fd90fe2e9a19

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/31bfc11b33985296348f62a31fe8324b307e88cd...27348d0203a38923ab81e9666250fd90fe2e9a19
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