Steve Lhomme pushed to branch master at VideoLAN / VLC


Commits:
6d62c3cc by Claudio Cambra at 2023-05-03T12:09:34+00:00
macosx: Add stack view parent to main video view controls bar title text field

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

- - - - -
4b18b935 by Claudio Cambra at 2023-05-03T12:09:34+00:00
macosx: Add details field to main video view controls bar

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

- - - - -
893fd450 by Claudio Cambra at 2023-05-03T12:09:34+00:00
macosx: Set new detail label string value upon current playing item change in 
main video view controls bar

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

- - - - -


3 changed files:

- modules/gui/macosx/UI/VLCMainVideoView.xib
- modules/gui/macosx/windows/mainwindow/VLCMainVideoViewControlsBar.h
- modules/gui/macosx/windows/mainwindow/VLCMainVideoViewControlsBar.m


Changes:

=====================================
modules/gui/macosx/UI/VLCMainVideoView.xib
=====================================
@@ -33,6 +33,7 @@
                 <outlet property="audioButton" destination="cja-ZG-8LF" 
id="96C-CC-iV7"/>
                 <outlet property="backwardButton" destination="V9d-hX-iyg" 
id="ZFn-jn-7OB"/>
                 <outlet property="bookmarksButton" destination="4tZ-52-1q9" 
id="dAN-YB-YZ5"/>
+                <outlet property="detailLabel" destination="5ii-yU-6Zp" 
id="ves-8e-T8E"/>
                 <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"/>
@@ -67,7 +68,7 @@
                                 <rect key="frame" x="0.0" y="0.0" width="720" 
height="480"/>
                             </customView>
                             <customView 
translatesAutoresizingMaskIntoConstraints="NO" id="1GA-GG-Sdx">
-                                <rect key="frame" x="0.0" y="0.0" width="720" 
height="107"/>
+                                <rect key="frame" x="0.0" y="0.0" width="720" 
height="132"/>
                                 <subviews>
                                     <textField wantsLayer="YES" 
horizontalHuggingPriority="251" verticalHuggingPriority="750" 
translatesAutoresizingMaskIntoConstraints="NO" id="f4v-2z-dQ1" 
customClass="VLCTimeField">
                                         <rect key="frame" x="623" y="20" 
width="79" height="14"/>
@@ -80,14 +81,39 @@
                                             <color key="backgroundColor" 
name="controlColor" catalog="System" colorSpace="catalog"/>
                                         </textFieldCell>
                                     </textField>
-                                    <textField wantsLayer="YES" 
verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" 
translatesAutoresizingMaskIntoConstraints="NO" id="lEW-MN-FFU" 
customClass="VLCWrappableTextField">
-                                        <rect key="frame" x="18" y="59" 
width="394" height="28"/>
-                                        <textFieldCell key="cell" 
controlSize="small" lineBreakMode="truncatingTail" allowsUndo="NO" 
sendsActionOnEndEditing="YES" alignment="left" placeholderString="Nothing 
Playing" usesSingleLineMode="YES" id="8l0-zS-fOa">
-                                            <font key="font" 
metaFont="systemBold" size="24"/>
-                                            <color key="textColor" 
name="headerTextColor" catalog="System" colorSpace="catalog"/>
-                                            <color key="backgroundColor" 
name="controlColor" catalog="System" colorSpace="catalog"/>
-                                        </textFieldCell>
-                                    </textField>
+                                    <stackView distribution="fill" 
orientation="vertical" alignment="leading" spacing="4" 
horizontalStackHuggingPriority="249.99998474121094" 
verticalStackHuggingPriority="249.99998474121094" detachesHiddenViews="YES" 
translatesAutoresizingMaskIntoConstraints="NO" id="San-L7-ZvB">
+                                        <rect key="frame" x="20" y="59" 
width="390" height="53"/>
+                                        <subviews>
+                                            <textField wantsLayer="YES" 
verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" 
translatesAutoresizingMaskIntoConstraints="NO" id="lEW-MN-FFU" 
customClass="VLCWrappableTextField">
+                                                <rect key="frame" x="-2" 
y="25" width="394" height="28"/>
+                                                <textFieldCell key="cell" 
controlSize="small" lineBreakMode="truncatingTail" allowsUndo="NO" 
sendsActionOnEndEditing="YES" alignment="left" placeholderString="Nothing 
Playing" usesSingleLineMode="YES" id="8l0-zS-fOa">
+                                                    <font key="font" 
metaFont="systemBold" size="24"/>
+                                                    <color key="textColor" 
name="headerTextColor" catalog="System" colorSpace="catalog"/>
+                                                    <color 
key="backgroundColor" name="controlColor" catalog="System" 
colorSpace="catalog"/>
+                                                </textFieldCell>
+                                            </textField>
+                                            <textField 
horizontalHuggingPriority="251" verticalHuggingPriority="750" 
translatesAutoresizingMaskIntoConstraints="NO" id="5ii-yU-6Zp" 
customClass="VLCWrappableTextField">
+                                                <rect key="frame" x="-2" 
y="0.0" width="145" height="21"/>
+                                                <textFieldCell key="cell" 
controlSize="small" lineBreakMode="truncatingTail" allowsUndo="NO" 
sendsActionOnEndEditing="YES" placeholderString="No details to show" 
usesSingleLineMode="YES" id="k9I-DK-CEe">
+                                                    <font key="font" 
textStyle="title2" name=".SFNS-Regular"/>
+                                                    <color key="textColor" 
name="headerTextColor" catalog="System" colorSpace="catalog"/>
+                                                    <color 
key="backgroundColor" name="controlColor" catalog="System" 
colorSpace="catalog"/>
+                                                </textFieldCell>
+                                            </textField>
+                                        </subviews>
+                                        <constraints>
+                                            <constraint 
firstAttribute="trailing" secondItem="lEW-MN-FFU" secondAttribute="trailing" 
id="HLa-BM-oRO"/>
+                                            <constraint firstItem="lEW-MN-FFU" 
firstAttribute="leading" secondItem="San-L7-ZvB" secondAttribute="leading" 
id="sH7-zW-49g"/>
+                                        </constraints>
+                                        <visibilityPriorities>
+                                            <integer value="1000"/>
+                                            <integer value="1000"/>
+                                        </visibilityPriorities>
+                                        <customSpacing>
+                                            <real 
value="3.4028234663852886e+38"/>
+                                            <real 
value="3.4028234663852886e+38"/>
+                                        </customSpacing>
+                                    </stackView>
                                     <slider verticalHuggingPriority="750" 
translatesAutoresizingMaskIntoConstraints="NO" id="qNZ-Fh-W8i" 
customClass="VLCSlider">
                                         <rect key="frame" x="18" y="37" 
width="684" height="19"/>
                                         <constraints>
@@ -240,17 +266,17 @@
                                 <constraints>
                                     <constraint firstItem="f4v-2z-dQ1" 
firstAttribute="trailing" secondItem="qNZ-Fh-W8i" secondAttribute="trailing" 
id="0DA-7x-5iR"/>
                                     <constraint firstAttribute="bottom" 
secondItem="3ri-8b-8mw" secondAttribute="bottom" constant="20" id="2r5-04-JeD"/>
+                                    <constraint firstItem="San-L7-ZvB" 
firstAttribute="leading" secondItem="qNZ-Fh-W8i" secondAttribute="leading" 
id="3nZ-hw-Q10"/>
                                     <constraint firstItem="sJu-ZK-5QH" 
firstAttribute="trailing" secondItem="qNZ-Fh-W8i" secondAttribute="trailing" 
id="A0O-Nw-jLo"/>
                                     <constraint firstItem="f4v-2z-dQ1" 
firstAttribute="top" secondItem="qNZ-Fh-W8i" secondAttribute="bottom" 
constant="5" id="CT6-59-4xB"/>
-                                    <constraint firstItem="lEW-MN-FFU" 
firstAttribute="trailing" secondItem="sJu-ZK-5QH" secondAttribute="leading" 
constant="-20" id="DXE-mO-c4m"/>
-                                    <constraint firstItem="lEW-MN-FFU" 
firstAttribute="leading" secondItem="qNZ-Fh-W8i" secondAttribute="leading" 
id="Qc0-Ft-6Na"/>
+                                    <constraint firstItem="San-L7-ZvB" 
firstAttribute="top" secondItem="1GA-GG-Sdx" secondAttribute="top" 
constant="20" id="V0e-id-yQj"/>
                                     <constraint firstItem="sJu-ZK-5QH" 
firstAttribute="top" relation="greaterThanOrEqual" secondItem="1GA-GG-Sdx" 
secondAttribute="top" constant="10" id="Vjf-YQ-NXR"/>
                                     <constraint firstItem="3ri-8b-8mw" 
firstAttribute="leading" secondItem="qNZ-Fh-W8i" secondAttribute="leading" 
id="WfQ-8B-O7I"/>
                                     <constraint firstAttribute="trailing" 
secondItem="qNZ-Fh-W8i" secondAttribute="trailing" constant="20" 
id="YDi-aH-oOI"/>
-                                    <constraint firstItem="lEW-MN-FFU" 
firstAttribute="top" secondItem="1GA-GG-Sdx" secondAttribute="top" 
constant="20" id="aCc-Gf-kqc"/>
-                                    <constraint firstItem="lEW-MN-FFU" 
firstAttribute="bottom" secondItem="qNZ-Fh-W8i" secondAttribute="top" 
constant="-5" id="dxq-b6-tct"/>
                                     <constraint firstItem="qNZ-Fh-W8i" 
firstAttribute="leading" secondItem="1GA-GG-Sdx" secondAttribute="leading" 
constant="20" id="gYg-Ig-cLg"/>
+                                    <constraint firstItem="San-L7-ZvB" 
firstAttribute="trailing" secondItem="sJu-ZK-5QH" secondAttribute="leading" 
constant="-20" id="jHc-ck-2xZ"/>
                                     <constraint firstItem="3ri-8b-8mw" 
firstAttribute="top" secondItem="qNZ-Fh-W8i" secondAttribute="bottom" 
constant="5" id="jze-EU-1TL"/>
+                                    <constraint firstItem="San-L7-ZvB" 
firstAttribute="bottom" secondItem="qNZ-Fh-W8i" secondAttribute="top" 
constant="-5" id="pQq-HL-JgY"/>
                                     <constraint firstItem="sJu-ZK-5QH" 
firstAttribute="bottom" secondItem="qNZ-Fh-W8i" secondAttribute="top" 
constant="-5" id="xsM-6a-gdn"/>
                                 </constraints>
                                 <shadow key="shadow" blurRadius="2">


=====================================
modules/gui/macosx/windows/mainwindow/VLCMainVideoViewControlsBar.h
=====================================
@@ -26,6 +26,7 @@ NS_ASSUME_NONNULL_BEGIN
 
 @interface VLCMainVideoViewControlsBar : VLCControlsBarCommon
 
+@property (readwrite, strong) IBOutlet VLCWrappableTextField *detailLabel;
 @property (readwrite, strong) IBOutlet NSButton *bookmarksButton;
 @property (readwrite, strong) IBOutlet NSButton *subtitlesButton;
 @property (readwrite, strong) IBOutlet NSButton *audioButton;


=====================================
modules/gui/macosx/windows/mainwindow/VLCMainVideoViewControlsBar.m
=====================================
@@ -24,6 +24,8 @@
 
 #import "extensions/NSString+Helpers.h"
 
+#import "library/VLCLibraryDataTypes.h"
+
 #import "main/VLCMain.h"
 
 #import "menus/VLCMainMenu.h"
@@ -33,6 +35,15 @@
 #import "playlist/VLCPlaylistController.h"
 #import "playlist/VLCPlayerController.h"
 
+#import "views/VLCWrappableTextField.h"
+
+@interface VLCMainVideoViewControlsBar ()
+{
+    VLCPlaylistController *_playlistController;
+    VLCPlayerController *_playerController;
+}
+@end
+
 @implementation VLCMainVideoViewControlsBar
 
 - (void)awakeFromNib
@@ -47,6 +58,28 @@
 
     _audioButton.toolTip = _NS("Audio settings");
     _audioButton.accessibilityLabel = _audioButton.toolTip;
+
+    _playlistController = VLCMain.sharedInstance.playlistController;
+    _playerController = _playlistController.playerController;
+
+    NSNotificationCenter * const notificationCenter = [NSNotificationCenter 
defaultCenter];
+    [notificationCenter addObserver:self
+                           selector:@selector(updateDetailLabel:)
+                               name:VLCPlayerCurrentMediaItemChanged
+                             object:nil];
+}
+
+- (void)updateDetailLabel:(NSNotification *)notification
+{
+    
+    VLCMediaLibraryMediaItem * const mediaItem = [VLCMediaLibraryMediaItem 
mediaItemForURL:_playerController.URLOfCurrentMediaItem];
+    if (!mediaItem) {
+        return;
+    }
+
+    _detailLabel.hidden = [mediaItem.detailString isEqualToString:@""] ||
+                          [mediaItem.detailString 
isEqualToString:mediaItem.durationString];
+    _detailLabel.stringValue = mediaItem.detailString;
 }
 
 - (IBAction)openBookmarks:(id)sender



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/dbab5e78b8b8d5b021c0a47ea2661468e56562ec...893fd450d52ac76ce832a22cb521068fb8f6e314

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/dbab5e78b8b8d5b021c0a47ea2661468e56562ec...893fd450d52ac76ce832a22cb521068fb8f6e314
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