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