vlc | branch: master | Felix Paul Kühne <fe...@feepk.net> | Sun Nov  3 19:13:43 
2019 +0100| [62c62bac312e3c1606325f683a90b1589e7ead8b] | committer: Felix Paul 
Kühne

macosx/detached audio window: add close button and animations

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=62c62bac312e3c1606325f683a90b1589e7ead8b
---

 .../package/macosx/VLC.xcodeproj/project.pbxproj   |  32 ++++
 modules/gui/macosx/UI/VLCDetachedAudioWindow.xib   | 198 ++++++++++++---------
 .../gui/macosx/windows/VLCDetachedAudioWindow.h    |   1 +
 .../gui/macosx/windows/VLCDetachedAudioWindow.m    |  15 +-
 4 files changed, 157 insertions(+), 89 deletions(-)

diff --git a/extras/package/macosx/VLC.xcodeproj/project.pbxproj 
b/extras/package/macosx/VLC.xcodeproj/project.pbxproj
index c6a4fde941..76c85cb66d 100644
--- a/extras/package/macosx/VLC.xcodeproj/project.pbxproj
+++ b/extras/package/macosx/VLC.xcodeproj/project.pbxproj
@@ -500,6 +500,18 @@
                7D5678EF1D5BA397002698F3 /* VLCMainWindowControlsBar.m */ = 
{isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = 
sourcecode.c.objc; path = VLCMainWindowControlsBar.m; sourceTree = "<group>"; };
                7D61DCE2236C1937008133CF /* VLCCustomWindowButton.h */ = {isa = 
PBXFileReference; lastKnownFileType = sourcecode.c.h; path = 
VLCCustomWindowButton.h; sourceTree = "<group>"; };
                7D61DCE3236C1937008133CF /* VLCCustomWindowButton.m */ = {isa = 
PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = 
VLCCustomWindowButton.m; sourceTree = "<group>"; };
+               7D61DCE7236C6A3D008133CF /* window-close.png */ = {isa = 
PBXFileReference; lastKnownFileType = image.png; name = "window-close.png"; 
path = "Button-Icons/window-close.png"; sourceTree = "<group>"; };
+               7D61DCE8236C6A3D008133CF /* window-close-on-graph...@2x.png */ 
= {isa = PBXFileReference; lastKnownFileType = image.png; name = 
"window-close-on-graph...@2x.png"; path = 
"Button-Icons/window-close-on-graph...@2x.png"; sourceTree = "<group>"; };
+               7D61DCE9236C6A3D008133CF /* window-close-over-graphite.png */ = 
{isa = PBXFileReference; lastKnownFileType = image.png; name = 
"window-close-over-graphite.png"; path = 
"Button-Icons/window-close-over-graphite.png"; sourceTree = "<group>"; };
+               7D61DCEA236C6A3D008133CF /* window-close-o...@2x.png */ = {isa 
= PBXFileReference; lastKnownFileType = image.png; name = 
"window-close-o...@2x.png"; path = "Button-Icons/window-close-o...@2x.png"; 
sourceTree = "<group>"; };
+               7D61DCEB236C6A3D008133CF /* window-close-on-graphite.png */ = 
{isa = PBXFileReference; lastKnownFileType = image.png; name = 
"window-close-on-graphite.png"; path = 
"Button-Icons/window-close-on-graphite.png"; sourceTree = "<group>"; };
+               7D61DCEC236C6A3D008133CF /* window-close...@2x.png */ = {isa = 
PBXFileReference; lastKnownFileType = image.png; name = 
"window-close...@2x.png"; path = "Button-Icons/window-close...@2x.png"; 
sourceTree = "<group>"; };
+               7D61DCED236C6A3D008133CF /* window-close-graph...@2x.png */ = 
{isa = PBXFileReference; lastKnownFileType = image.png; name = 
"window-close-graph...@2x.png"; path = 
"Button-Icons/window-close-graph...@2x.png"; sourceTree = "<group>"; };
+               7D61DCEE236C6A3D008133CF /* window-close-on.png */ = {isa = 
PBXFileReference; lastKnownFileType = image.png; name = "window-close-on.png"; 
path = "Button-Icons/window-close-on.png"; sourceTree = "<group>"; };
+               7D61DCEF236C6A3D008133CF /* window-close-over-graph...@2x.png 
*/ = {isa = PBXFileReference; lastKnownFileType = image.png; name = 
"window-close-over-graph...@2x.png"; path = 
"Button-Icons/window-close-over-graph...@2x.png"; sourceTree = "<group>"; };
+               7D61DCF0236C6A3D008133CF /* window-close-over.png */ = {isa = 
PBXFileReference; lastKnownFileType = image.png; name = 
"window-close-over.png"; path = "Button-Icons/window-close-over.png"; 
sourceTree = "<group>"; };
+               7D61DCF1236C6A3D008133CF /* window-cl...@2x.png */ = {isa = 
PBXFileReference; lastKnownFileType = image.png; name = "window-cl...@2x.png"; 
path = "Button-Icons/window-cl...@2x.png"; sourceTree = "<group>"; };
+               7D61DCF2236C6A3D008133CF /* window-close-graphite.png */ = {isa 
= PBXFileReference; lastKnownFileType = image.png; name = 
"window-close-graphite.png"; path = "Button-Icons/window-close-graphite.png"; 
sourceTree = "<group>"; };
                7D66D4342200BC340040D04A /* VLCClickerManager.h */ = {isa = 
PBXFileReference; lastKnownFileType = sourcecode.c.h; path = 
VLCClickerManager.h; sourceTree = "<group>"; };
                7D66D4352200BC340040D04A /* VLCClickerManager.m */ = {isa = 
PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = 
VLCClickerManager.m; sourceTree = "<group>"; };
                7D66D4372200C5B80040D04A /* VLCVideoFilterHelper.h */ = {isa = 
PBXFileReference; lastKnownFileType = sourcecode.c.h; path = 
VLCVideoFilterHelper.h; sourceTree = "<group>"; };
@@ -1378,6 +1390,25 @@
                        name = "Library Window";
                        sourceTree = "<group>";
                };
+               7D61DCE6236C6A26008133CF /* Window Button Images */ = {
+                       isa = PBXGroup;
+                       children = (
+                               7D61DCF2236C6A3D008133CF /* 
window-close-graphite.png */,
+                               7D61DCED236C6A3D008133CF /* 
window-close-graph...@2x.png */,
+                               7D61DCEB236C6A3D008133CF /* 
window-close-on-graphite.png */,
+                               7D61DCE8236C6A3D008133CF /* 
window-close-on-graph...@2x.png */,
+                               7D61DCEE236C6A3D008133CF /* window-close-on.png 
*/,
+                               7D61DCEC236C6A3D008133CF /* 
window-close...@2x.png */,
+                               7D61DCE9236C6A3D008133CF /* 
window-close-over-graphite.png */,
+                               7D61DCEF236C6A3D008133CF /* 
window-close-over-graph...@2x.png */,
+                               7D61DCF0236C6A3D008133CF /* 
window-close-over.png */,
+                               7D61DCEA236C6A3D008133CF /* 
window-close-o...@2x.png */,
+                               7D61DCE7236C6A3D008133CF /* window-close.png */,
+                               7D61DCF1236C6A3D008133CF /* window-cl...@2x.png 
*/,
+                       );
+                       name = "Window Button Images";
+                       sourceTree = "<group>";
+               };
                7D903EB4224393C700917358 /* core dependencies */ = {
                        isa = PBXGroup;
                        children = (
@@ -1462,6 +1493,7 @@
                CC0430EE13B2461A00D7D52E /* UI Graphics */ = {
                        isa = PBXGroup;
                        children = (
+                               7D61DCE6236C6A26008133CF /* Window Button 
Images */,
                                7D28E63C2275C80E0098D30E /* Library Window */,
                                6B82255A1E4D2BE400833BE1 /* Main Window */,
                                6B8229CB1E4D2D2C00833BE1 /* Sidebar Icons */,
diff --git a/modules/gui/macosx/UI/VLCDetachedAudioWindow.xib 
b/modules/gui/macosx/UI/VLCDetachedAudioWindow.xib
index 33bc611e3d..b0e989f5b0 100644
--- a/modules/gui/macosx/UI/VLCDetachedAudioWindow.xib
+++ b/modules/gui/macosx/UI/VLCDetachedAudioWindow.xib
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" 
toolsVersion="15400" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" 
useAutolayout="YES">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" 
toolsVersion="15505" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" 
useAutolayout="YES">
     <dependencies>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" 
version="15400"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" 
version="15505"/>
         <capability name="documents saved in the Xcode 8 format" 
minToolsVersion="8.0"/>
     </dependencies>
     <objects>
@@ -12,8 +12,8 @@
         </customObject>
         <customObject id="-1" userLabel="First Responder" 
customClass="FirstResponder"/>
         <customObject id="-3" userLabel="Application" customClass="NSObject"/>
-        <window title="VLC media player" 
allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" 
restorable="NO" releasedWhenClosed="NO" visibleAtLaunch="NO" 
frameAutosaveName="detachedaudiowindow" animationBehavior="default" id="2" 
userLabel="Detached Audio Window" customClass="VLCDetachedAudioWindow">
-            <windowStyleMask key="styleMask" closable="YES" resizable="YES" 
fullSizeContentView="YES"/>
+        <window title="VLC media player" 
allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" 
restorable="NO" releasedWhenClosed="NO" visibleAtLaunch="NO" 
frameAutosaveName="detachedaudiowindow" animationBehavior="default" 
titleVisibility="hidden" id="2" userLabel="Detached Audio Window" 
customClass="VLCDetachedAudioWindow">
+            <windowStyleMask key="styleMask" resizable="YES" 
fullSizeContentView="YES"/>
             <windowPositionMask key="initialPositionMask" leftStrut="YES" 
topStrut="YES"/>
             <rect key="contentRect" x="91" y="467" width="239" height="239"/>
             <rect key="screenRect" x="0.0" y="0.0" width="1920" height="1177"/>
@@ -28,107 +28,130 @@
                             <constraint firstAttribute="width" secondItem="63" 
secondAttribute="height" multiplier="1:1" id="RxG-T1-BEQ"/>
                         </constraints>
                     </customView>
-                    <customView translatesAutoresizingMaskIntoConstraints="NO" 
id="5" customClass="VLCBottomBarView">
-                        <rect key="frame" x="0.0" y="0.0" width="239" 
height="65"/>
+                    <customView hidden="YES" 
translatesAutoresizingMaskIntoConstraints="NO" id="s7h-2z-AKB">
+                        <rect key="frame" x="0.0" y="0.0" width="239" 
height="233"/>
                         <subviews>
-                            <customView 
translatesAutoresizingMaskIntoConstraints="NO" id="65" 
customClass="VLCDragDropView">
+                            <button verticalHuggingPriority="750" 
translatesAutoresizingMaskIntoConstraints="NO" id="F6N-G1-ay4" 
customClass="VLCCustomWindowCloseButton">
+                                <rect key="frame" x="8" y="217" width="14" 
height="16"/>
+                                <constraints>
+                                    <constraint firstAttribute="height" 
constant="16" id="h5F-zc-xQI"/>
+                                    <constraint firstAttribute="width" 
constant="14" id="u5l-1z-YIF"/>
+                                </constraints>
+                                <buttonCell key="cell" type="bevel" 
bezelStyle="rounded" image="window-close" imagePosition="only" 
alignment="center" imageScaling="proportionallyDown" inset="2" id="WwK-DC-6gz" 
customClass="VLCWindowButtonCell">
+                                    <behavior key="behavior" pushIn="YES" 
lightByBackground="YES" lightByGray="YES"/>
+                                    <font key="font" metaFont="system"/>
+                                </buttonCell>
+                            </button>
+                            <customView 
translatesAutoresizingMaskIntoConstraints="NO" id="5" 
customClass="VLCBottomBarView">
                                 <rect key="frame" x="0.0" y="0.0" width="239" 
height="65"/>
                                 <subviews>
-                                    <customView 
translatesAutoresizingMaskIntoConstraints="NO" id="Vae-cT-EEI" userLabel="Play 
controls group">
-                                        <rect key="frame" x="77" y="10" 
width="85" height="23"/>
+                                    <customView 
translatesAutoresizingMaskIntoConstraints="NO" id="65" 
customClass="VLCDragDropView">
+                                        <rect key="frame" x="0.0" y="0.0" 
width="239" height="65"/>
                                         <subviews>
-                                            <button 
translatesAutoresizingMaskIntoConstraints="NO" id="11">
-                                                <rect key="frame" x="0.0" 
y="0.0" width="29" height="23"/>
-                                                <buttonCell key="cell" 
type="bevel" bezelStyle="regularSquare" image="backward-3btns" 
imagePosition="only" alignment="center" alternateImage="backward-3btns-pressed" 
continuous="YES" enabled="NO" id="14">
-                                                    <behavior key="behavior" 
lightByContents="YES"/>
-                                                    <font key="font" 
metaFont="label"/>
-                                                </buttonCell>
+                                            <customView 
translatesAutoresizingMaskIntoConstraints="NO" id="Vae-cT-EEI" userLabel="Play 
controls group">
+                                                <rect key="frame" x="77" 
y="10" width="85" height="23"/>
+                                                <subviews>
+                                                    <button 
translatesAutoresizingMaskIntoConstraints="NO" id="11">
+                                                        <rect key="frame" 
x="0.0" y="0.0" width="29" height="23"/>
+                                                        <buttonCell key="cell" 
type="bevel" bezelStyle="regularSquare" image="backward-3btns" 
imagePosition="only" alignment="center" alternateImage="backward-3btns-pressed" 
continuous="YES" enabled="NO" id="14">
+                                                            <behavior 
key="behavior" lightByContents="YES"/>
+                                                            <font key="font" 
metaFont="label"/>
+                                                        </buttonCell>
+                                                        <connections>
+                                                            <action 
selector="bwd:" target="3" id="56"/>
+                                                        </connections>
+                                                    </button>
+                                                    <button 
translatesAutoresizingMaskIntoConstraints="NO" id="10">
+                                                        <rect key="frame" 
x="29" y="0.0" width="27" height="23"/>
+                                                        <buttonCell key="cell" 
type="bevel" bezelStyle="regularSquare" image="play" imagePosition="only" 
alignment="center" alternateImage="play-pressed" id="15">
+                                                            <behavior 
key="behavior" lightByContents="YES"/>
+                                                            <font key="font" 
metaFont="titleBar" size="12"/>
+                                                        </buttonCell>
+                                                        <connections>
+                                                            <action 
selector="play:" target="3" id="39"/>
+                                                        </connections>
+                                                    </button>
+                                                    <button 
translatesAutoresizingMaskIntoConstraints="NO" id="12">
+                                                        <rect key="frame" 
x="56" y="0.0" width="29" height="23"/>
+                                                        <buttonCell key="cell" 
type="bevel" bezelStyle="regularSquare" image="forward-3btns" 
imagePosition="only" alignment="center" alternateImage="forward-3btns-pressed" 
continuous="YES" enabled="NO" id="13">
+                                                            <behavior 
key="behavior" lightByContents="YES"/>
+                                                            <font key="font" 
metaFont="label"/>
+                                                        </buttonCell>
+                                                        <connections>
+                                                            <action 
selector="fwd:" target="3" id="51"/>
+                                                        </connections>
+                                                    </button>
+                                                </subviews>
+                                                <constraints>
+                                                    <constraint firstItem="11" 
firstAttribute="top" secondItem="Vae-cT-EEI" secondAttribute="top" 
id="11i-jS-o5W"/>
+                                                    <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 
firstAttribute="height" constant="23" 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 
firstAttribute="bottom" secondItem="10" secondAttribute="bottom" 
id="yGM-Jx-9fD"/>
+                                                </constraints>
+                                            </customView>
+                                            <slider hidden="YES" 
horizontalHuggingPriority="200" verticalHuggingPriority="750" 
translatesAutoresizingMaskIntoConstraints="NO" id="20" customClass="VLCSlider">
+                                                <rect key="frame" x="10" 
y="42" width="172" height="16"/>
+                                                <constraints>
+                                                    <constraint 
firstAttribute="height" constant="14" id="MYp-CS-yPe"/>
+                                                </constraints>
+                                                <sliderCell key="cell" 
controlSize="small" continuous="YES" state="on" alignment="left" maxValue="1" 
doubleValue="0.32600000000000001" tickMarkPosition="above" sliderType="linear" 
id="23" customClass="VLCSliderCell">
+                                                    <font key="font" size="12" 
name="Helvetica"/>
+                                                </sliderCell>
                                                 <connections>
-                                                    <action selector="bwd:" 
target="3" id="56"/>
+                                                    <action 
selector="timeSliderAction:" target="3" id="46"/>
                                                 </connections>
-                                            </button>
-                                            <button 
translatesAutoresizingMaskIntoConstraints="NO" id="10">
-                                                <rect key="frame" x="29" 
y="0.0" width="27" height="23"/>
-                                                <buttonCell key="cell" 
type="bevel" bezelStyle="regularSquare" image="play" imagePosition="only" 
alignment="center" alternateImage="play-pressed" id="15">
-                                                    <behavior key="behavior" 
lightByContents="YES"/>
-                                                    <font key="font" 
metaFont="titleBar" size="12"/>
-                                                </buttonCell>
-                                                <connections>
-                                                    <action selector="play:" 
target="3" id="39"/>
-                                                </connections>
-                                            </button>
-                                            <button 
translatesAutoresizingMaskIntoConstraints="NO" id="12">
-                                                <rect key="frame" x="56" 
y="0.0" width="29" height="23"/>
-                                                <buttonCell key="cell" 
type="bevel" bezelStyle="regularSquare" image="forward-3btns" 
imagePosition="only" alignment="center" alternateImage="forward-3btns-pressed" 
continuous="YES" enabled="NO" id="13">
-                                                    <behavior key="behavior" 
lightByContents="YES"/>
+                                            </slider>
+                                            <textField 
verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" 
id="9" customClass="VLCTimeField">
+                                                <rect key="frame" x="185" 
y="44" width="46" height="13"/>
+                                                <constraints>
+                                                    <constraint 
firstAttribute="width" relation="greaterThanOrEqual" constant="42" 
id="EvZ-Sy-m25"/>
+                                                    <constraint 
firstAttribute="height" constant="13" id="LYT-Sd-Gf6"/>
+                                                </constraints>
+                                                <textFieldCell key="cell" 
scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" 
state="on" alignment="center" title="00:00" id="16">
                                                     <font key="font" 
metaFont="label"/>
-                                                </buttonCell>
-                                                <connections>
-                                                    <action selector="fwd:" 
target="3" id="51"/>
-                                                </connections>
-                                            </button>
+                                                    <color key="textColor" 
white="0.25" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
+                                                    <color 
key="backgroundColor" name="textBackgroundColor" catalog="System" 
colorSpace="catalog"/>
+                                                </textFieldCell>
+                                            </textField>
                                         </subviews>
                                         <constraints>
-                                            <constraint firstItem="11" 
firstAttribute="top" secondItem="Vae-cT-EEI" secondAttribute="top" 
id="11i-jS-o5W"/>
-                                            <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 
firstAttribute="height" constant="23" 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 
firstAttribute="bottom" secondItem="10" secondAttribute="bottom" 
id="yGM-Jx-9fD"/>
+                                            <constraint firstItem="20" 
firstAttribute="leading" secondItem="65" secondAttribute="leading" 
constant="10" id="KrJ-x3-HIr"/>
+                                            <constraint firstItem="Vae-cT-EEI" 
firstAttribute="centerX" secondItem="65" secondAttribute="centerX" 
id="Rf0-0E-Wiz"/>
+                                            <constraint firstItem="9" 
firstAttribute="centerY" secondItem="20" secondAttribute="centerY" 
id="SW9-5i-MQL"/>
+                                            <constraint 
firstAttribute="bottom" secondItem="Vae-cT-EEI" secondAttribute="bottom" 
constant="10" id="T6V-Vf-TOT"/>
+                                            <constraint firstItem="9" 
firstAttribute="leading" secondItem="20" secondAttribute="trailing" 
constant="5" id="gyE-0N-u6t"/>
+                                            <constraint 
firstAttribute="trailing" secondItem="9" secondAttribute="trailing" 
constant="10" id="p5i-nM-pBs"/>
+                                            <constraint firstItem="Vae-cT-EEI" 
firstAttribute="top" secondItem="20" secondAttribute="bottom" constant="10" 
id="pfB-W2-CWB"/>
                                         </constraints>
                                     </customView>
-                                    <slider hidden="YES" 
horizontalHuggingPriority="200" verticalHuggingPriority="750" 
translatesAutoresizingMaskIntoConstraints="NO" id="20" customClass="VLCSlider">
-                                        <rect key="frame" x="10" y="42" 
width="172" height="16"/>
-                                        <constraints>
-                                            <constraint 
firstAttribute="height" constant="14" id="MYp-CS-yPe"/>
-                                        </constraints>
-                                        <sliderCell key="cell" 
controlSize="small" continuous="YES" state="on" alignment="left" maxValue="1" 
doubleValue="0.32600000000000001" tickMarkPosition="above" sliderType="linear" 
id="23" customClass="VLCSliderCell">
-                                            <font key="font" size="12" 
name="Helvetica"/>
-                                        </sliderCell>
-                                        <connections>
-                                            <action 
selector="timeSliderAction:" target="3" id="46"/>
-                                        </connections>
-                                    </slider>
-                                    <textField verticalHuggingPriority="750" 
translatesAutoresizingMaskIntoConstraints="NO" id="9" 
customClass="VLCTimeField">
-                                        <rect key="frame" x="185" y="44" 
width="46" height="13"/>
-                                        <constraints>
-                                            <constraint firstAttribute="width" 
relation="greaterThanOrEqual" constant="42" id="EvZ-Sy-m25"/>
-                                            <constraint 
firstAttribute="height" constant="13" id="LYT-Sd-Gf6"/>
-                                        </constraints>
-                                        <textFieldCell key="cell" 
scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" 
state="on" alignment="center" title="00:00" id="16">
-                                            <font key="font" metaFont="label"/>
-                                            <color key="textColor" 
white="0.25" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
-                                            <color key="backgroundColor" 
name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
-                                        </textFieldCell>
-                                    </textField>
                                 </subviews>
                                 <constraints>
-                                    <constraint firstItem="20" 
firstAttribute="leading" secondItem="65" secondAttribute="leading" 
constant="10" id="KrJ-x3-HIr"/>
-                                    <constraint firstItem="Vae-cT-EEI" 
firstAttribute="centerX" secondItem="65" secondAttribute="centerX" 
id="Rf0-0E-Wiz"/>
-                                    <constraint firstItem="9" 
firstAttribute="centerY" secondItem="20" secondAttribute="centerY" 
id="SW9-5i-MQL"/>
-                                    <constraint firstAttribute="bottom" 
secondItem="Vae-cT-EEI" secondAttribute="bottom" constant="10" id="T6V-Vf-TOT"/>
-                                    <constraint firstItem="9" 
firstAttribute="leading" secondItem="20" secondAttribute="trailing" 
constant="5" id="gyE-0N-u6t"/>
-                                    <constraint firstAttribute="trailing" 
secondItem="9" secondAttribute="trailing" constant="10" id="p5i-nM-pBs"/>
-                                    <constraint firstItem="Vae-cT-EEI" 
firstAttribute="top" secondItem="20" secondAttribute="bottom" constant="10" 
id="pfB-W2-CWB"/>
+                                    <constraint firstAttribute="trailing" 
secondItem="65" secondAttribute="trailing" id="1uG-1s-rI0"/>
+                                    <constraint firstItem="65" 
firstAttribute="leading" secondItem="5" secondAttribute="leading" 
id="84j-is-ZZ4"/>
+                                    <constraint firstAttribute="bottom" 
secondItem="65" secondAttribute="bottom" id="WrS-PS-vpi"/>
+                                    <constraint firstItem="65" 
firstAttribute="top" secondItem="5" secondAttribute="top" id="ecn-UJ-dvK"/>
+                                    <constraint firstAttribute="height" 
constant="65" id="z2X-5w-wme"/>
                                 </constraints>
                             </customView>
                         </subviews>
                         <constraints>
-                            <constraint firstAttribute="trailing" 
secondItem="65" secondAttribute="trailing" id="1uG-1s-rI0"/>
-                            <constraint firstItem="65" 
firstAttribute="leading" secondItem="5" secondAttribute="leading" 
id="84j-is-ZZ4"/>
-                            <constraint firstAttribute="bottom" 
secondItem="65" secondAttribute="bottom" id="WrS-PS-vpi"/>
-                            <constraint firstItem="65" firstAttribute="top" 
secondItem="5" secondAttribute="top" id="ecn-UJ-dvK"/>
-                            <constraint firstAttribute="height" constant="65" 
id="z2X-5w-wme"/>
+                            <constraint firstItem="F6N-G1-ay4" 
firstAttribute="top" secondItem="s7h-2z-AKB" secondAttribute="top" 
id="3fm-nY-Pva"/>
+                            <constraint firstItem="F6N-G1-ay4" 
firstAttribute="leading" secondItem="s7h-2z-AKB" secondAttribute="leading" 
constant="8" id="DxB-T0-68G"/>
+                            <constraint firstAttribute="trailing" 
secondItem="5" secondAttribute="trailing" id="Vh6-w4-RpJ"/>
+                            <constraint firstItem="5" firstAttribute="leading" 
secondItem="s7h-2z-AKB" secondAttribute="leading" id="aOM-Yt-uR4"/>
+                            <constraint firstAttribute="bottom" secondItem="5" 
secondAttribute="bottom" id="sVp-W4-nlt"/>
                         </constraints>
                     </customView>
                 </subviews>
                 <constraints>
-                    <constraint firstItem="5" firstAttribute="leading" 
secondItem="4" secondAttribute="leading" id="9Ml-c7-Mey"/>
+                    <constraint firstItem="s7h-2z-AKB" 
firstAttribute="leading" secondItem="4" secondAttribute="leading" 
id="GSE-Q6-p8X"/>
                     <constraint firstItem="63" firstAttribute="top" 
secondItem="4" secondAttribute="top" id="SR5-da-lz7">
                         <attributedString key="userComments">
                             <fragment content="Optional constraint if no 
titlebar">
@@ -142,14 +165,16 @@
                     <constraint firstAttribute="bottom" secondItem="63" 
secondAttribute="bottom" priority="750" id="Xml-gb-MF1"/>
                     <constraint firstItem="63" firstAttribute="leading" 
secondItem="4" secondAttribute="leading" id="b8K-0j-YLT"/>
                     <constraint firstAttribute="trailing" secondItem="63" 
secondAttribute="trailing" id="b8X-Kc-BfD"/>
-                    <constraint firstAttribute="trailing" secondItem="5" 
secondAttribute="trailing" id="jZw-zr-cck"/>
-                    <constraint firstAttribute="bottom" secondItem="5" 
secondAttribute="bottom" id="mhi-VL-aFb"/>
+                    <constraint firstAttribute="bottom" 
secondItem="s7h-2z-AKB" secondAttribute="bottom" id="d58-lr-6o8"/>
+                    <constraint firstAttribute="trailing" 
secondItem="s7h-2z-AKB" secondAttribute="trailing" id="dB2-xi-SzA"/>
+                    <constraint firstItem="s7h-2z-AKB" firstAttribute="top" 
secondItem="4" secondAttribute="top" constant="6" id="plq-T3-bmm"/>
                 </constraints>
             </view>
             <connections>
                 <outlet property="bottomBarView" destination="5" 
id="xZs-ha-Bmg"/>
                 <outlet property="controlsBar" destination="3" id="69"/>
                 <outlet property="imageView" destination="63" id="xYd-xT-wUa"/>
+                <outlet property="wrapperView" destination="s7h-2z-AKB" 
id="Vze-9X-Oxo"/>
             </connections>
             <point key="canvasLocation" x="138.5" y="146.5"/>
         </window>
@@ -171,5 +196,6 @@
         <image name="forward-3btns-pressed" width="29" height="23"/>
         <image name="play" width="27" height="23"/>
         <image name="play-pressed" width="27" height="23"/>
+        <image name="window-close" width="14" height="16"/>
     </resources>
 </document>
diff --git a/modules/gui/macosx/windows/VLCDetachedAudioWindow.h 
b/modules/gui/macosx/windows/VLCDetachedAudioWindow.h
index 938b5710f9..92031641ec 100644
--- a/modules/gui/macosx/windows/VLCDetachedAudioWindow.h
+++ b/modules/gui/macosx/windows/VLCDetachedAudioWindow.h
@@ -31,6 +31,7 @@ NS_ASSUME_NONNULL_BEGIN
 
 @interface VLCDetachedAudioWindow : VLCWindow
 
+@property (nonatomic, weak) IBOutlet NSView *wrapperView;
 @property (nonatomic, weak) IBOutlet VLCImageView *imageView;
 @property (nonatomic, weak) IBOutlet VLCControlsBarCommon *controlsBar;
 @property (nonatomic, weak) IBOutlet VLCBottomBarView *bottomBarView;
diff --git a/modules/gui/macosx/windows/VLCDetachedAudioWindow.m 
b/modules/gui/macosx/windows/VLCDetachedAudioWindow.m
index 616af24e36..92df65fd24 100644
--- a/modules/gui/macosx/windows/VLCDetachedAudioWindow.m
+++ b/modules/gui/macosx/windows/VLCDetachedAudioWindow.m
@@ -43,11 +43,12 @@
 - (void)awakeFromNib
 {
     self.title = @"";
+    self.imageView.cropsImagesToRoundedCorners = NO;
 
     _playerController = [[[VLCMain sharedInstance] playlistController] 
playerController];
     VLCTrackingView *trackingView = self.contentView;
-    trackingView.viewToHide = self.bottomBarView;
-    self.bottomBarView.hidden = YES;
+    trackingView.viewToHide = self.wrapperView;
+    trackingView.animatesTransition = YES;
 
     NSNotificationCenter *notificationCenter = [NSNotificationCenter 
defaultCenter];
     [notificationCenter addObserver:self selector:@selector(inputItemChanged:) 
name:VLCPlayerCurrentMediaItemChanged object:nil];
@@ -68,7 +69,6 @@
     } else {
         [self.imageView setImage:[NSImage imageNamed:@"noart.png"]];
     }
-
 }
 
 - (BOOL)canBecomeKeyWindow
@@ -86,4 +86,13 @@
     return YES;
 }
 
+- (BOOL)performKeyEquivalent:(NSEvent *)event
+{
+    if (event.modifierFlags & NSEventModifierFlagCommand && event.keyCode == 
13) {
+        [self closeAndAnimate:YES];
+        return YES;
+    }
+    return [super performKeyEquivalent:event];
+}
+
 @end

_______________________________________________
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to