Commit 8de84b02 authored by Carola Nitz's avatar Carola Nitz Committed by Felix Paul Kühne

MovieViewController: added own view for landscape

Signed-off-by: Felix Paul Kühne's avatarFelix Paul Kühne <fkuehne@videolan.org>
parent c774d32e
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB" version="3.0" toolsVersion="5037" systemVersion="12F45" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none"> <document type="com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB" version="3.0" toolsVersion="4514" systemVersion="13B42" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none">
<dependencies> <dependencies>
<deployment defaultVersion="1552" identifier="iOS"/> <deployment defaultVersion="1552" identifier="iOS"/>
<development version="5000" identifier="xcode"/> <development version="5000" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3733"/> <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3747"/>
</dependencies> </dependencies>
<objects> <objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="VLCMovieViewController"> <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="VLCMovieViewController">
...@@ -13,7 +13,6 @@ ...@@ -13,7 +13,6 @@
<outlet property="artworkImageView" destination="g3j-bZ-K3S" id="fPn-6f-Kez"/> <outlet property="artworkImageView" destination="g3j-bZ-K3S" id="fPn-6f-Kez"/>
<outlet property="aspectRatioButton" destination="198" id="229"/> <outlet property="aspectRatioButton" destination="198" id="229"/>
<outlet property="audioSwitcherButton" destination="277" id="292"/> <outlet property="audioSwitcherButton" destination="277" id="292"/>
<outlet property="audioSwitcherContainer" destination="k3r-6B-CmK" id="sr9-Hq-Iqu"/>
<outlet property="backButton" destination="102" id="111"/> <outlet property="backButton" destination="102" id="111"/>
<outlet property="brightnessLabel" destination="148" id="165"/> <outlet property="brightnessLabel" destination="148" id="165"/>
<outlet property="brightnessSlider" destination="147" id="163"/> <outlet property="brightnessSlider" destination="147" id="163"/>
...@@ -52,7 +51,6 @@ ...@@ -52,7 +51,6 @@
<outlet property="trackNameLabel" destination="304" id="307"/> <outlet property="trackNameLabel" destination="304" id="307"/>
<outlet property="videoFilterButton" destination="279" id="291"/> <outlet property="videoFilterButton" destination="279" id="291"/>
<outlet property="videoFilterView" destination="141" id="156"/> <outlet property="videoFilterView" destination="141" id="156"/>
<outlet property="videoeffectsContainer" destination="OCK-fG-mgo" id="eRb-1E-VEI"/>
<outlet property="view" destination="8" id="120"/> <outlet property="view" destination="8" id="120"/>
<outlet property="volumeView" destination="281" id="299"/> <outlet property="volumeView" destination="281" id="299"/>
</connections> </connections>
...@@ -529,4 +527,4 @@ ...@@ -529,4 +527,4 @@
<image name="subtitleIcon.png" width="19" height="19"/> <image name="subtitleIcon.png" width="19" height="19"/>
<image name="videoEffectsIcon.png" width="21" height="21"/> <image name="videoEffectsIcon.png" width="21" height="21"/>
</resources> </resources>
</document> </document>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="5037" systemVersion="12F45" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none"> <document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="5037.2" systemVersion="12F45" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none">
<dependencies> <dependencies>
<deployment defaultVersion="1552" identifier="iOS"/> <deployment defaultVersion="1552" identifier="iOS"/>
<development version="5000" identifier="xcode"/> <development version="5000" identifier="xcode"/>
...@@ -13,23 +13,28 @@ ...@@ -13,23 +13,28 @@
<outlet property="artworkImageView" destination="yK6-Ph-SVE" id="Cm9-7F-iYZ"/> <outlet property="artworkImageView" destination="yK6-Ph-SVE" id="Cm9-7F-iYZ"/>
<outlet property="aspectRatioButton" destination="202" id="222"/> <outlet property="aspectRatioButton" destination="202" id="222"/>
<outlet property="audioSwitcherButton" destination="78" id="98"/> <outlet property="audioSwitcherButton" destination="78" id="98"/>
<outlet property="audioSwitcherContainer" destination="mKM-iB-gtC" id="jf3-eu-m9Z"/> <outlet property="audioSwitcherButtonLandscape" destination="awR-Dt-S0B" id="SSl-4q-pof"/>
<outlet property="backButton" destination="85" id="96"/> <outlet property="backButton" destination="85" id="96"/>
<outlet property="brightnessLabel" destination="130" id="233"/> <outlet property="brightnessLabel" destination="130" id="233"/>
<outlet property="brightnessSlider" destination="128" id="232"/> <outlet property="brightnessSlider" destination="128" id="232"/>
<outlet property="bwdButton" destination="77" id="100"/> <outlet property="bwdButton" destination="77" id="100"/>
<outlet property="bwdButtonLandscape" destination="pQj-0t-OnU" id="U8k-IC-a6H"/>
<outlet property="contrastLabel" destination="132" id="141"/> <outlet property="contrastLabel" destination="132" id="141"/>
<outlet property="contrastSlider" destination="131" id="142"/> <outlet property="contrastSlider" destination="131" id="142"/>
<outlet property="controllerPanel" destination="92" id="104"/> <outlet property="controllerPanel" destination="92" id="104"/>
<outlet property="controllerPanelLandscape" destination="e7l-vK-ape" id="uR7-Ks-KKV"/>
<outlet property="currentScrubSpeedLabel" destination="244" id="248"/> <outlet property="currentScrubSpeedLabel" destination="244" id="248"/>
<outlet property="fwdButton" destination="75" id="102"/> <outlet property="fwdButton" destination="75" id="102"/>
<outlet property="fwdButtonLandscape" destination="jl2-cB-KOM" id="D5T-2S-hbf"/>
<outlet property="gammaLabel" destination="138" id="156"/> <outlet property="gammaLabel" destination="138" id="156"/>
<outlet property="gammaSlider" destination="137" id="144"/> <outlet property="gammaSlider" destination="137" id="144"/>
<outlet property="hueLabel" destination="134" id="234"/> <outlet property="hueLabel" destination="134" id="234"/>
<outlet property="hueSlider" destination="133" id="235"/> <outlet property="hueSlider" destination="133" id="235"/>
<outlet property="movieView" destination="91" id="93"/> <outlet property="movieView" destination="91" id="93"/>
<outlet property="playPauseButton" destination="76" id="101"/> <outlet property="playPauseButton" destination="76" id="101"/>
<outlet property="playbackSpeedButton" destination="183" id="209"/> <outlet property="playPauseButtonLandscape" destination="nxS-aA-O6g" id="x1z-P6-yif"/>
<outlet property="playbackSpeedButton" destination="183" id="348-qM-uYE"/>
<outlet property="playbackSpeedButtonLandscape" destination="WXm-go-jev" id="TbP-eA-CzG"/>
<outlet property="playbackSpeedIndicator" destination="185" id="197"/> <outlet property="playbackSpeedIndicator" destination="185" id="197"/>
<outlet property="playbackSpeedLabel" destination="167" id="198"/> <outlet property="playbackSpeedLabel" destination="167" id="198"/>
<outlet property="playbackSpeedSlider" destination="168" id="196"/> <outlet property="playbackSpeedSlider" destination="168" id="196"/>
...@@ -39,6 +44,7 @@ ...@@ -39,6 +44,7 @@
<outlet property="playingExternallyView" destination="108" id="112"/> <outlet property="playingExternallyView" destination="108" id="112"/>
<outlet property="positionSlider" destination="262" id="269"/> <outlet property="positionSlider" destination="262" id="269"/>
<outlet property="repeatButton" destination="3Pu-h2-L0m" id="1LA-O2-2ry"/> <outlet property="repeatButton" destination="3Pu-h2-L0m" id="1LA-O2-2ry"/>
<outlet property="repeatButtonLandscape" destination="lib-Hc-4qn" id="LIo-2m-jdb"/>
<outlet property="resetVideoFilterButton" destination="162" id="163"/> <outlet property="resetVideoFilterButton" destination="162" id="163"/>
<outlet property="saturationLabel" destination="136" id="155"/> <outlet property="saturationLabel" destination="136" id="155"/>
<outlet property="saturationSlider" destination="135" id="152"/> <outlet property="saturationSlider" destination="135" id="152"/>
...@@ -46,19 +52,22 @@ ...@@ -46,19 +52,22 @@
<outlet property="scrubIndicatorView" destination="241" id="247"/> <outlet property="scrubIndicatorView" destination="241" id="247"/>
<outlet property="statusLabel" destination="210" id="211"/> <outlet property="statusLabel" destination="210" id="211"/>
<outlet property="subtitleContainer" destination="umS-fw-84Z" id="cbT-b6-hSn"/> <outlet property="subtitleContainer" destination="umS-fw-84Z" id="cbT-b6-hSn"/>
<outlet property="subtitleContainerLandscape" destination="cvq-YB-u9T" id="Qgb-5z-1Ij"/>
<outlet property="subtitleSwitcherButton" destination="74" id="103"/> <outlet property="subtitleSwitcherButton" destination="74" id="103"/>
<outlet property="subtitleSwitcherButtonLandscape" destination="R1Z-5y-cee" id="4TF-nd-xx3"/>
<outlet property="timeDisplay" destination="276" id="277"/> <outlet property="timeDisplay" destination="276" id="277"/>
<outlet property="toolbar" destination="250" id="272"/> <outlet property="toolbar" destination="250" id="272"/>
<outlet property="trackNameLabel" destination="282" id="284"/> <outlet property="trackNameLabel" destination="282" id="284"/>
<outlet property="videoFilterButton" destination="159" id="160"/> <outlet property="videoFilterButton" destination="159" id="160"/>
<outlet property="videoFilterButtonLandscape" destination="v7P-Wn-QnX" id="fMG-Mv-Poa"/>
<outlet property="videoFilterView" destination="117" id="147"/> <outlet property="videoFilterView" destination="117" id="147"/>
<outlet property="videoeffectsContainer" destination="iBJ-hE-7St" id="UXV-rn-I8w"/>
<outlet property="view" destination="1" id="105"/> <outlet property="view" destination="1" id="105"/>
<outlet property="volumeView" destination="230" id="275"/> <outlet property="volumeView" destination="230" id="275"/>
<outlet property="volumeViewLandscape" destination="SX3-Kb-W8g" id="aoW-X9-hE3"/>
</connections> </connections>
</placeholder> </placeholder>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/> <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
<view contentMode="scaleToFill" id="260" userLabel="Time view" customClass="VLCFrostedGlasView"> <view contentMode="scaleToFill" id="260" userLabel="Time view">
<rect key="frame" x="0.0" y="0.0" width="300" height="40"/> <rect key="frame" x="0.0" y="0.0" width="300" height="40"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/> <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
<subviews> <subviews>
...@@ -431,7 +440,7 @@ ...@@ -431,7 +440,7 @@
</connections> </connections>
</button> </button>
<view contentMode="scaleToFill" id="230" customClass="MPVolumeView"> <view contentMode="scaleToFill" id="230" customClass="MPVolumeView">
<rect key="frame" x="60" y="61" width="244" height="22"/> <rect key="frame" x="78" y="63" width="226" height="22"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMaxY="YES"/> <autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
</view> </view>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="3Pu-h2-L0m"> <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="3Pu-h2-L0m">
...@@ -523,6 +532,177 @@ ...@@ -523,6 +532,177 @@
<rect key="frame" x="0.0" y="0.0" width="240" height="128"/> <rect key="frame" x="0.0" y="0.0" width="240" height="128"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
</imageView> </imageView>
<view tag="1" contentMode="scaleToFill" id="e7l-vK-ape" userLabel="Controls panel" customClass="VLCFrostedGlasView">
<rect key="frame" x="0.0" y="0.0" width="480" height="50"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES"/>
<subviews>
<view contentMode="scaleToFill" id="beR-yq-gJK">
<rect key="frame" x="343" y="5" width="40" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES"/>
<subviews>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="arrows.png" id="F9h-Mh-EMv" userLabel="arrows">
<rect key="frame" x="0.0" y="15" width="5" height="9"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
</imageView>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="WXm-go-jev">
<rect key="frame" x="7" y="0.0" width="32" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
<inset key="contentEdgeInsets" minX="0.0" minY="4" maxX="0.0" maxY="4"/>
<state key="normal" image="speedIcon.png">
<color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
</state>
<state key="highlighted">
<color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
</state>
<connections>
<action selector="videoDimensionAction:" destination="-1" eventType="touchUpInside" id="3KP-jS-fEF"/>
</connections>
</button>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</view>
<view contentMode="scaleToFill" id="hwg-8s-Ztc">
<rect key="frame" x="433" y="5" width="40" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES"/>
<subviews>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="arrows.png" id="qin-4J-8lD" userLabel="arrows">
<rect key="frame" x="0.0" y="15" width="5" height="9"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
</imageView>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="v7P-Wn-QnX">
<rect key="frame" x="7" y="0.0" width="32" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
<inset key="contentEdgeInsets" minX="0.0" minY="4" maxX="0.0" maxY="4"/>
<state key="normal" image="videoEffectsIcon.png">
<color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
</state>
<state key="highlighted">
<color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
</state>
<connections>
<action selector="videoFilterToggle:" destination="-1" eventType="touchUpInside" id="Hsi-PA-QI7"/>
</connections>
</button>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</view>
<view contentMode="scaleToFill" id="cvq-YB-u9T">
<rect key="frame" x="388" y="5" width="40" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES"/>
<subviews>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="arrows.png" id="ftV-xL-h7f" userLabel="arrows">
<rect key="frame" x="0.0" y="15" width="5" height="9"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
</imageView>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="R1Z-5y-cee">
<rect key="frame" x="7" y="0.0" width="28" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
<inset key="contentEdgeInsets" minX="0.0" minY="4" maxX="0.0" maxY="4"/>
<state key="normal" image="subtitleIcon.png">
<color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
</state>
<state key="highlighted">
<color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
</state>
<connections>
<action selector="switchSubtitleTrack:" destination="-1" eventType="touchUpInside" id="BsU-q4-2dQ"/>
</connections>
</button>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</view>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="jl2-cB-KOM">
<rect key="frame" x="269" y="5" width="32" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
<inset key="contentEdgeInsets" minX="0.0" minY="4" maxX="0.0" maxY="4"/>
<state key="normal" image="forwardIcon.png">
<color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
</state>
<state key="highlighted">
<color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
</state>
<connections>
<action selector="forward:" destination="-1" eventType="touchUpInside" id="h5v-TT-Axc"/>
</connections>
</button>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="pQj-0t-OnU">
<rect key="frame" x="179" y="5" width="32" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
<inset key="contentEdgeInsets" minX="0.0" minY="4" maxX="0.0" maxY="4"/>
<state key="normal" image="backIcon.png">
<color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
</state>
<state key="highlighted">
<color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
</state>
<connections>
<action selector="backward:" destination="-1" eventType="touchUpInside" id="ngu-7R-uHn"/>
</connections>
</button>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="nxS-aA-O6g">
<rect key="frame" x="226" y="5" width="28" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
<inset key="contentEdgeInsets" minX="0.0" minY="4" maxX="0.0" maxY="4"/>
<state key="normal" image="playIcon.png">
<color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
</state>
<state key="highlighted">
<color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
</state>
<connections>
<action selector="playPause" destination="-2" eventType="touchUpInside" id="ajc-gW-8UA"/>
</connections>
</button>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="awR-Dt-S0B">
<rect key="frame" x="142" y="5" width="32" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
<inset key="contentEdgeInsets" minX="0.0" minY="4" maxX="0.0" maxY="4"/>
<state key="normal" image="audioTrackIcon.png">
<color key="titleColor" red="0.19607843459999999" green="0.30980393290000002" blue="0.52156865600000002" alpha="1" colorSpace="calibratedRGB"/>
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
</state>
<state key="highlighted">
<color key="titleColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
</state>
<connections>
<action selector="switchAudioTrack:" destination="-1" eventType="touchUpInside" id="EYA-AC-aby"/>
</connections>
</button>
<view contentMode="scaleToFill" id="SX3-Kb-W8g" customClass="MPVolumeView">
<rect key="frame" x="20" y="16" width="117" height="22"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
</view>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="lib-Hc-4qn">
<rect key="frame" x="306" y="5" width="32" height="40"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMinY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="18"/>
<state key="normal" image="repeat.png">
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
</state>
<connections>
<action selector="toggleRepeatMode:" destination="-1" eventType="touchUpInside" id="1XB-hZ-pNx"/>
</connections>
</button>
</subviews>
</view>
</objects> </objects>
<resources> <resources>
<image name="PlayingExternally.png" width="122" height="91"/> <image name="PlayingExternally.png" width="122" height="91"/>
...@@ -531,7 +711,7 @@ ...@@ -531,7 +711,7 @@
<image name="backIcon.png" width="32" height="16"/> <image name="backIcon.png" width="32" height="16"/>
<image name="forwardIcon.png" width="32" height="16"/> <image name="forwardIcon.png" width="32" height="16"/>
<image name="playIcon.png" width="19" height="17"/> <image name="playIcon.png" width="19" height="17"/>
<image name="playbackControllerBg.png" width="352" height="90"/> <image name="playbackControllerBg.png" width="3" height="90"/>
<image name="ratioIcon.png" width="23" height="18"/> <image name="ratioIcon.png" width="23" height="18"/>
<image name="repeat.png" width="23" height="18"/> <image name="repeat.png" width="23" height="18"/>
<image name="resetIcon.png" width="24" height="30"/> <image name="resetIcon.png" width="24" height="30"/>
......
...@@ -26,18 +26,25 @@ ...@@ -26,18 +26,25 @@
@property (nonatomic, strong) IBOutlet OBSlider *positionSlider; @property (nonatomic, strong) IBOutlet OBSlider *positionSlider;
@property (nonatomic, strong) IBOutlet UIButton *timeDisplay; @property (nonatomic, strong) IBOutlet UIButton *timeDisplay;
@property (nonatomic, strong) IBOutlet UIButton *playPauseButton; @property (nonatomic, strong) IBOutlet UIButton *playPauseButton;
@property (nonatomic, strong) IBOutlet UIButton *playPauseButtonLandscape;
@property (nonatomic, strong) IBOutlet UIButton *bwdButton; @property (nonatomic, strong) IBOutlet UIButton *bwdButton;
@property (nonatomic, strong) IBOutlet UIButton *bwdButtonLandscape;
@property (nonatomic, strong) IBOutlet UIButton *fwdButton; @property (nonatomic, strong) IBOutlet UIButton *fwdButton;
@property (nonatomic, strong) IBOutlet UIButton *fwdButtonLandscape;
@property (nonatomic, strong) IBOutlet UIView *subtitleContainer; @property (nonatomic, strong) IBOutlet UIView *subtitleContainer;
@property (nonatomic, strong) IBOutlet UIView *audioSwitcherContainer; @property (nonatomic, strong) IBOutlet UIView *subtitleContainerLandscape;
@property (nonatomic, strong) IBOutlet UIView *videoeffectsContainer;
@property (nonatomic, strong) IBOutlet UIButton *subtitleSwitcherButton; @property (nonatomic, strong) IBOutlet UIButton *subtitleSwitcherButton;
@property (nonatomic, strong) IBOutlet UIButton *subtitleSwitcherButtonLandscape;
@property (nonatomic, strong) IBOutlet UIButton *audioSwitcherButton; @property (nonatomic, strong) IBOutlet UIButton *audioSwitcherButton;
@property (nonatomic, strong) IBOutlet UIButton *audioSwitcherButtonLandscape;
@property (nonatomic, strong) IBOutlet UIButton *repeatButton; @property (nonatomic, strong) IBOutlet UIButton *repeatButton;
@property (nonatomic, strong) IBOutlet UIButton *repeatButtonLandscape;
@property (nonatomic, strong) IBOutlet UINavigationBar *toolbar; @property (nonatomic, strong) IBOutlet UINavigationBar *toolbar;
@property (nonatomic, strong) IBOutlet VLCFrostedGlasView *controllerPanel; @property (nonatomic, strong) IBOutlet VLCFrostedGlasView *controllerPanel;
@property (nonatomic, strong) IBOutlet VLCFrostedGlasView *controllerPanelLandscape;
@property (nonatomic, strong) IBOutlet VLCStatusLabel *statusLabel; @property (nonatomic, strong) IBOutlet VLCStatusLabel *statusLabel;
@property (nonatomic, strong) IBOutlet MPVolumeView *volumeView; @property (nonatomic, strong) IBOutlet MPVolumeView *volumeView;
@property (nonatomic, strong) IBOutlet MPVolumeView *volumeViewLandscape;
@property (nonatomic, strong) IBOutlet UIView *playingExternallyView; @property (nonatomic, strong) IBOutlet UIView *playingExternallyView;
@property (nonatomic, strong) IBOutlet UILabel *playingExternallyTitle; @property (nonatomic, strong) IBOutlet UILabel *playingExternallyTitle;
...@@ -45,6 +52,7 @@ ...@@ -45,6 +52,7 @@
@property (nonatomic, strong) IBOutlet VLCFrostedGlasView *videoFilterView; @property (nonatomic, strong) IBOutlet VLCFrostedGlasView *videoFilterView;
@property (nonatomic, strong) IBOutlet UIButton *videoFilterButton; @property (nonatomic, strong) IBOutlet UIButton *videoFilterButton;
@property (nonatomic, strong) IBOutlet UIButton *videoFilterButtonLandscape;
@property (nonatomic, strong) IBOutlet UILabel *hueLabel; @property (nonatomic, strong) IBOutlet UILabel *hueLabel;
@property (nonatomic, strong) IBOutlet UISlider *hueSlider; @property (nonatomic, strong) IBOutlet UISlider *hueSlider;
@property (nonatomic, strong) IBOutlet UILabel *contrastLabel; @property (nonatomic, strong) IBOutlet UILabel *contrastLabel;
...@@ -59,6 +67,7 @@ ...@@ -59,6 +67,7 @@
@property (nonatomic, strong) IBOutlet VLCFrostedGlasView *playbackSpeedView; @property (nonatomic, strong) IBOutlet VLCFrostedGlasView *playbackSpeedView;
@property (nonatomic, strong) IBOutlet UIButton *playbackSpeedButton; @property (nonatomic, strong) IBOutlet UIButton *playbackSpeedButton;
@property (nonatomic, strong) IBOutlet UIButton *playbackSpeedButtonLandscape;
@property (nonatomic, strong) IBOutlet UISlider *playbackSpeedSlider; @property (nonatomic, strong) IBOutlet UISlider *playbackSpeedSlider;
@property (nonatomic, strong) IBOutlet UILabel *playbackSpeedLabel; @property (nonatomic, strong) IBOutlet UILabel *playbackSpeedLabel;
@property (nonatomic, strong) IBOutlet UILabel *playbackSpeedIndicator; @property (nonatomic, strong) IBOutlet UILabel *playbackSpeedIndicator;
......
...@@ -155,22 +155,36 @@ ...@@ -155,22 +155,36 @@
_audioSwitcherButton.accessibilityLabel = NSLocalizedString(@"CHOOSE_AUDIO_TRACK", @""); _audioSwitcherButton.accessibilityLabel = NSLocalizedString(@"CHOOSE_AUDIO_TRACK", @"");
_audioSwitcherButton.isAccessibilityElement = YES; _audioSwitcherButton.isAccessibilityElement = YES;
_audioSwitcherButtonLandscape.accessibilityLabel = NSLocalizedString(@"CHOOSE_AUDIO_TRACK", @"");
_audioSwitcherButtonLandscape.isAccessibilityElement = YES;
_subtitleSwitcherButton.accessibilityLabel = NSLocalizedString(@"CHOOSE_SUBTITLE_TRACK", @""); _subtitleSwitcherButton.accessibilityLabel = NSLocalizedString(@"CHOOSE_SUBTITLE_TRACK", @"");
_subtitleSwitcherButton.isAccessibilityElement = YES; _subtitleSwitcherButton.isAccessibilityElement = YES;
_subtitleSwitcherButtonLandscape.accessibilityLabel = NSLocalizedString(@"CHOOSE_SUBTITLE_TRACK", @"");
_subtitleSwitcherButtonLandscape.isAccessibilityElement = YES;
_playbackSpeedButton.accessibilityLabel = _playbackSpeedLabel.text; _playbackSpeedButton.accessibilityLabel = _playbackSpeedLabel.text;
_playbackSpeedButton.isAccessibilityElement = YES; _playbackSpeedButton.isAccessibilityElement = YES;
_playbackSpeedButtonLandscape.accessibilityLabel = _playbackSpeedLabel.text;
_playbackSpeedButtonLandscape.isAccessibilityElement = YES;
_videoFilterButton.accessibilityLabel = NSLocalizedString(@"VIDEO_FILTER", @""); _videoFilterButton.accessibilityLabel = NSLocalizedString(@"VIDEO_FILTER", @"");
_videoFilterButton.isAccessibilityElement = YES; _videoFilterButton.isAccessibilityElement = YES;
_videoFilterButtonLandscape.accessibilityLabel = NSLocalizedString(@"VIDEO_FILTER", @"");
_videoFilterButtonLandscape.isAccessibilityElement = YES;
_resetVideoFilterButton.accessibilityLabel = NSLocalizedString(@"VIDEO_FILTER_RESET_BUTTON", @""); _resetVideoFilterButton.accessibilityLabel = NSLocalizedString(@"VIDEO_FILTER_RESET_BUTTON", @"");
_resetVideoFilterButton.isAccessibilityElement = YES; _resetVideoFilterButton.isAccessibilityElement = YES;
_aspectRatioButton.accessibilityLabel = NSLocalizedString(@"VIDEO_ASPECT_RATIO_BUTTON", @""); _aspectRatioButton.accessibilityLabel = NSLocalizedString(@"VIDEO_ASPECT_RATIO_BUTTON", @"");
_aspectRatioButton.isAccessibilityElement = YES; _aspectRatioButton.isAccessibilityElement = YES;
_playPauseButton.accessibilityLabel = NSLocalizedString(@"PLAY_PAUSE_BUTTON", @""); _playPauseButton.accessibilityLabel = NSLocalizedString(@"PLAY_PAUSE_BUTTON", @"");
_playPauseButton.isAccessibilityElement = YES; _playPauseButton.isAccessibilityElement = YES;
_playPauseButtonLandscape.accessibilityLabel = NSLocalizedString(@"PLAY_PAUSE_BUTTON", @"");
_playPauseButtonLandscape.isAccessibilityElement = YES;
_bwdButton.accessibilityLabel = NSLocalizedString(@"BWD_BUTTON", @""); _bwdButton.accessibilityLabel = NSLocalizedString(@"BWD_BUTTON", @"");
_bwdButton.isAccessibilityElement = YES; _bwdButton.isAccessibilityElement = YES;
_bwdButtonLandscape.accessibilityLabel = NSLocalizedString(@"BWD_BUTTON", @"");
_bwdButtonLandscape.isAccessibilityElement = YES;
_fwdButton.accessibilityLabel = NSLocalizedString(@"FWD_BUTTON", @""); _fwdButton.accessibilityLabel = NSLocalizedString(@"FWD_BUTTON", @"");
_fwdButton.isAccessibilityElement = YES; _fwdButton.isAccessibilityElement = YES;
_fwdButtonLandscape.accessibilityLabel = NSLocalizedString(@"FWD_BUTTON", @"");
_fwdButtonLandscape.isAccessibilityElement = YES;
_scrubHelpLabel.text = NSLocalizedString(@"PLAYBACK_SCRUB_HELP", @""); _scrubHelpLabel.text = NSLocalizedString(@"PLAYBACK_SCRUB_HELP", @"");
...@@ -271,22 +285,27 @@ ...@@ -271,22 +285,27 @@
/* FIXME: there is a saner iOS 6+ API for this! */ /* FIXME: there is a saner iOS 6+ API for this! */
/* this looks a bit weird, but we need to support iOS 5 and should show the same appearance */ /* this looks a bit weird, but we need to support iOS 5 and should show the same appearance */
UISlider *volumeSlider = nil; void (^initVolumeSlider)(MPVolumeView *) = ^(MPVolumeView *volumeView){
for (id aView in self.volumeView.subviews){ UISlider *volumeSlider = nil;
if ([[[aView class] description] isEqualToString:@"MPVolumeSlider"]){ for (id aView in volumeView.subviews){
volumeSlider = (UISlider *)aView; if ([[[aView class] description] isEqualToString:@"MPVolumeSlider"]){
break; volumeSlider = (UISlider *)aView;
break;
}
} }
} if (!SYSTEM_RUNS_IOS7_OR_LATER) {
if (!SYSTEM_RUNS_IOS7_OR_LATER) { [volumeSlider setMinimumTrackImage:[[UIImage imageNamed:@"sliderminiValue"]resizableImageWithCapInsets:UIEdgeInsetsMake(0, 4, 0, 0)] forState:UIControlStateNormal];
[volumeSlider setMinimumTrackImage:[[UIImage imageNamed:@"sliderminiValue"]resizableImageWithCapInsets:UIEdgeInsetsMake(0, 4, 0, 0)] forState:UIControlStateNormal]; [volumeSlider setMaximumTrackImage:[[UIImage imageNamed:@"slidermaxValue"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 4)] forState:UIControlStateNormal];
[volumeSlider setMaximumTrackImage:[[UIImage imageNamed:@"slidermaxValue"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 4)] forState:UIControlStateNormal]; [volumeSlider setThumbImage:[UIImage imageNamed:@"volumeballslider"] forState:UIControlStateNormal];
[volumeSlider setThumbImage:[UIImage imageNamed:@"volumeballslider"] forState:UIControlStateNormal]; } else
} else [volumeView setVolumeThumbImage:[UIImage imageNamed:@"modernSliderKnob"] forState:UIControlStateNormal];
[self.volumeView setVolumeThumbImage:[UIImage imageNamed:@"modernSliderKnob"] forState:UIControlStateNormal]; [volumeSlider addTarget:self
[volumeSlider addTarget:self action:@selector(volumeSliderAction:)
action:@selector(volumeSliderAction:) forControlEvents:UIControlEventValueChanged];
forControlEvents:UIControlEventValueChanged]; };
initVolumeSlider(self.volumeView);
initVolumeSlider(self.volumeViewLandscape);
[[AVAudioSession sharedInstance] setDelegate:self]; [[AVAudioSession sharedInstance] setDelegate:self];
...@@ -344,17 +363,13 @@ ...@@ -344,17 +363,13 @@
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) { if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
CGSize viewSize = self.view.frame.size; CGSize viewSize = self.view.frame.size;
if (UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation)) { if (UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation)) {
CGFloat rightSpace = _videoeffectsContainer.frame.origin.x - CGRectGetMaxX(_fwdButton.frame); [_controllerPanel removeFromSuperview];
CGFloat gapSize = (rightSpace - _repeatButton.frame.size.width - _audioSwitcherContainer.frame.size.width) / 3.0; _controllerPanelLandscape.frame = (CGRect){CGPointMake(0, viewSize.height - _controllerPanelLandscape.frame.size.height), CGSizeMake(viewSize.width, _controllerPanelLandscape.frame.size.height)};
[_controllerPanel setFrame:CGRectMake(0, viewSize.height - 55, viewSize.width, 55)]; [self.view addSubview:_controllerPanelLandscape];
[_volumeView setFrame:CGRectMake(gapSize, 22, _bwdButton.frame.origin.x - 2 * gapSize, 22)];
[_audioSwitcherContainer setFrame:CGRectMake(CGRectGetMaxX(_fwdButton.frame) + gapSize, 14, 40, 40)];
[_repeatButton setFrame:CGRectMake(CGRectGetMaxX(_audioSwitcherContainer.frame) + gapSize, 16, 32, 35)];
} else { } else {
[_controllerPanel setFrame:CGRectMake(0, viewSize.height - 90, viewSize.width, 90)]; [_controllerPanelLandscape removeFromSuperview];
[_volumeView setFrame:CGRectMake(60, 61, 244, 22)]; _controllerPanel.frame = (CGRect){CGPointMake(0, viewSize.height - _controllerPanel.frame.size.height), CGSizeMake(viewSize.width, _controllerPanel.frame.size.height)};
[_repeatButton setFrame:CGRectMake(18, 54, 32, 35)]; [self.view addSubview:_controllerPanel];
[_audioSwitcherContainer setFrame:CGRectMake(20, 14, 40, 40)];
} }
} }
} }
...@@ -443,6 +458,7 @@ ...@@ -443,6 +458,7 @@
[self.timeDisplay setTitle:@"" forState:UIControlStateNormal]; [self.timeDisplay setTitle:@"" forState:UIControlStateNormal];
self.timeDisplay.accessibilityLabel = @""; self.timeDisplay.accessibilityLabel = @"";
[self.repeatButton setImage:[UIImage imageNamed:@"repeat"] forState:UIControlStateNormal]; [self.repeatButton setImage:[UIImage imageNamed:@"repeat"] forState:UIControlStateNormal];
[self.repeatButtonLandscape setImage:[UIImage imageNamed:@"repeat"] forState:UIControlStateNormal];
if (![self _isMediaSuitableForDevice]) { if (![self _isMediaSuitableForDevice]) {
UIAlertView * alert = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"DEVICE_TOOSLOW_TITLE", @"") message:[NSString stringWithFormat:NSLocalizedString(@"DEVICE_TOOSLOW", @""), [[UIDevice currentDevice] model], self.mediaItem.title] delegate:self cancelButtonTitle:NSLocalizedString(@"BUTTON_CANCEL", @"") otherButtonTitles:NSLocalizedString(@"BUTTON_OPEN", @""), nil]; UIAlertView * alert = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"DEVICE_TOOSLOW_TITLE", @"") message:[NSString stringWithFormat:NSLocalizedString(@"DEVICE_TOOSLOW", @""), [[UIDevice currentDevice] model], self.mediaItem.title] delegate:self cancelButtonTitle:NSLocalizedString(@"BUTTON_CANCEL", @"") otherButtonTitles:NSLocalizedString(@"BUTTON_OPEN", @""), nil];
...@@ -683,6 +699,8 @@ ...@@ -683,6 +699,8 @@
if (!_controlsHidden) { if (!_controlsHidden) {
_controllerPanel.alpha = 0.0f; _controllerPanel.alpha = 0.0f;
_controllerPanel.hidden = !_videoFiltersHidden; _controllerPanel.hidden = !_videoFiltersHidden;
_controllerPanelLandscape.alpha = 0.0f;
_controllerPanelLandscape.hidden = !_videoFiltersHidden;
_toolbar.alpha = 0.0f; _toolbar.alpha = 0.0f;
_toolbar.hidden = NO; _toolbar.hidden = NO;
_videoFilterView.alpha = 0.0f; _videoFilterView.alpha = 0.0f;
...@@ -693,16 +711,15 @@ ...@@ -693,16 +711,15 @@</