- newUI ios12 compatibility
- settings wighet them color - minor tweaks
This commit is contained in:
1 parent
a64a29ce07
commit
dfaa4005bb
15 files changed
+169
-107
No files matched your search
@@ -2,7 +2,6 @@
|
|||||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="23727" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" useAutolayout="YES" colorMatched="YES" initialViewController="EVd-wq-ego">
|
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="23727" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none" useAutolayout="YES" colorMatched="YES" initialViewController="EVd-wq-ego">
|
||||||
<device id="ipad11_0rounded" orientation="portrait" layout="fullscreen" appearance="light"/>
|
<device id="ipad11_0rounded" orientation="portrait" layout="fullscreen" appearance="light"/>
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<deployment identifier="iOS"/>
|
|
||||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23721"/>
|
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23721"/>
|
||||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
@@ -73,7 +72,7 @@
|
|||||||
<nil key="highlightedColor"/>
|
<nil key="highlightedColor"/>
|
||||||
<size key="shadowOffset" width="0.0" height="0.0"/>
|
<size key="shadowOffset" width="0.0" height="0.0"/>
|
||||||
</label>
|
</label>
|
||||||
<segmentedControl opaque="NO" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="top" apportionsSegmentWidthsByContent="YES" segmentControlStyle="plain" selectedSegmentIndex="5" translatesAutoresizingMaskIntoConstraints="NO" id="ckc-Dm-8ex">
|
<segmentedControl opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="top" apportionsSegmentWidthsByContent="YES" segmentControlStyle="plain" selectedSegmentIndex="5" translatesAutoresizingMaskIntoConstraints="NO" id="ckc-Dm-8ex">
|
||||||
<rect key="frame" x="0.0" y="25.5" width="380" height="32"/>
|
<rect key="frame" x="0.0" y="25.5" width="380" height="32"/>
|
||||||
<segments>
|
<segments>
|
||||||
<segment title="360p"/>
|
<segment title="360p"/>
|
||||||
@@ -84,6 +83,8 @@
|
|||||||
<segment title="FullScr/Window"/>
|
<segment title="FullScr/Window"/>
|
||||||
<segment title="Custom"/>
|
<segment title="Custom"/>
|
||||||
</segments>
|
</segments>
|
||||||
|
<color key="tintColor" systemColor="linkColor"/>
|
||||||
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="9cG-JD-glb" userLabel="Resolution Display View">
|
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="9cG-JD-glb" userLabel="Resolution Display View">
|
||||||
<rect key="frame" x="0.0" y="61.5" width="380" height="50"/>
|
<rect key="frame" x="0.0" y="61.5" width="380" height="50"/>
|
||||||
@@ -112,8 +113,8 @@
|
|||||||
<segment title="60 FPS"/>
|
<segment title="60 FPS"/>
|
||||||
<segment title="120 FPS"/>
|
<segment title="120 FPS"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" systemColor="linkColor"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -132,7 +133,7 @@
|
|||||||
</label>
|
</label>
|
||||||
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="20" minValue="1" maxValue="100" translatesAutoresizingMaskIntoConstraints="NO" id="JAY-nj-UNz">
|
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="20" minValue="1" maxValue="100" translatesAutoresizingMaskIntoConstraints="NO" id="JAY-nj-UNz">
|
||||||
<rect key="frame" x="-2" y="25.5" width="384" height="31"/>
|
<rect key="frame" x="-2" y="25.5" width="384" height="31"/>
|
||||||
<color key="tintColor" red="0.6716768741607666" green="0.61711704730987549" blue="0.99902987480163574" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" systemColor="linkColor"/>
|
||||||
</slider>
|
</slider>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -157,7 +158,7 @@
|
|||||||
<segment title="Absolute Touch"/>
|
<segment title="Absolute Touch"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" systemColor="systemBrownColor"/>
|
<color key="tintColor" systemColor="systemBrownColor"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -180,8 +181,7 @@
|
|||||||
<segment title="No"/>
|
<segment title="No"/>
|
||||||
<segment title="Yes"/>
|
<segment title="Yes"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -202,7 +202,7 @@
|
|||||||
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="100" minValue="0.0" maxValue="100" id="AcZ-2i-GI4" userLabel="pointerVelocityModeDivider">
|
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="100" minValue="0.0" maxValue="100" id="AcZ-2i-GI4" userLabel="pointerVelocityModeDivider">
|
||||||
<rect key="frame" x="-2" y="23.5" width="384" height="34"/>
|
<rect key="frame" x="-2" y="23.5" width="384" height="34"/>
|
||||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" systemColor="linkColor"/>
|
||||||
</slider>
|
</slider>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -223,7 +223,7 @@
|
|||||||
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="100" minValue="0.0" maxValue="300" id="TVV-EU-Rw1" userLabel="touchPointerVelocityFactor">
|
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="100" minValue="0.0" maxValue="300" id="TVV-EU-Rw1" userLabel="touchPointerVelocityFactor">
|
||||||
<rect key="frame" x="-2" y="23.5" width="384" height="34"/>
|
<rect key="frame" x="-2" y="23.5" width="384" height="34"/>
|
||||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" systemColor="linkColor"/>
|
||||||
</slider>
|
</slider>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -244,7 +244,7 @@
|
|||||||
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="150" minValue="0.0" maxValue="3600" id="4gD-tc-95I" userLabel="touchMoveEventIntervalSlider">
|
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="150" minValue="0.0" maxValue="3600" id="4gD-tc-95I" userLabel="touchMoveEventIntervalSlider">
|
||||||
<rect key="frame" x="-2" y="23.5" width="384" height="34"/>
|
<rect key="frame" x="-2" y="23.5" width="384" height="34"/>
|
||||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" systemColor="linkColor"/>
|
||||||
</slider>
|
</slider>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -265,7 +265,7 @@
|
|||||||
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="100" minValue="0.0" maxValue="300" id="Ei2-FJ-9oC" userLabel="mousePointerVelocityFactor">
|
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="100" minValue="0.0" maxValue="300" id="Ei2-FJ-9oC" userLabel="mousePointerVelocityFactor">
|
||||||
<rect key="frame" x="-2" y="23.5" width="384" height="34"/>
|
<rect key="frame" x="-2" y="23.5" width="384" height="34"/>
|
||||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" systemColor="linkColor"/>
|
||||||
</slider>
|
</slider>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -291,7 +291,7 @@
|
|||||||
<segment title="Custom"/>
|
<segment title="Custom"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768741607666" green="0.61711704730987549" blue="0.99902987480163574" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768741607666" green="0.61711704730987549" blue="0.99902987480163574" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768741607666" green="0.61711704730987549" blue="0.99902987480163574" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -316,7 +316,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="3" minValue="3" maxValue="13" id="4wJ-Gd-Dmp">
|
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="3" minValue="3" maxValue="13" id="4wJ-Gd-Dmp">
|
||||||
<rect key="frame" x="-2" y="23.5" width="384" height="34"/>
|
<rect key="frame" x="-2" y="23.5" width="384" height="34"/>
|
||||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" systemColor="linkColor"/>
|
||||||
</slider>
|
</slider>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -339,8 +339,8 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="No"/>
|
<segment title="No"/>
|
||||||
<segment title="Yes"/>
|
<segment title="Yes"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" systemColor="linkColor"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -364,7 +364,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Yes"/>
|
<segment title="Yes"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -388,7 +388,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Right Screen Edge"/>
|
<segment title="Right Screen Edge"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -413,7 +413,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Right Screen Edge"/>
|
<segment title="Right Screen Edge"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -434,7 +434,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<slider opaque="NO" contentMode="scaleToFill" ambiguous="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="0.5" minValue="0.0" maxValue="1" id="8p6-FP-UWP">
|
<slider opaque="NO" contentMode="scaleToFill" ambiguous="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" value="0.5" minValue="0.0" maxValue="1" id="8p6-FP-UWP">
|
||||||
<rect key="frame" x="-2" y="23.5" width="4" height="34"/>
|
<rect key="frame" x="-2" y="23.5" width="4" height="34"/>
|
||||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" systemColor="linkColor"/>
|
||||||
</slider>
|
</slider>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -457,7 +457,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Yes"/>
|
<segment title="Yes"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -480,7 +480,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Auto"/>
|
<segment title="Auto"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768741607666" green="0.61711704730987549" blue="0.99902987480163574" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768741607666" green="0.61711704730987549" blue="0.99902987480163574" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768741607666" green="0.61711704730987549" blue="0.99902987480163574" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -503,7 +503,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Yes"/>
|
<segment title="Yes"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -526,7 +526,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Yes"/>
|
<segment title="Yes"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -551,7 +551,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Auto"/>
|
<segment title="Auto"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768741607666" green="0.61711704730987549" blue="0.99902987480163574" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768741607666" green="0.61711704730987549" blue="0.99902987480163574" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768741607666" green="0.61711704730987549" blue="0.99902987480163574" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -574,7 +574,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Yes"/>
|
<segment title="Yes"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -597,7 +597,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Yes"/>
|
<segment title="Yes"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -620,7 +620,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Smoothest Video"/>
|
<segment title="Smoothest Video"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -643,7 +643,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Yes"/>
|
<segment title="Yes"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -666,7 +666,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Yes"/>
|
<segment title="Yes"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -690,7 +690,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Detailed"/>
|
<segment title="Detailed"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -713,7 +713,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Yes"/>
|
<segment title="Yes"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -736,7 +736,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="AirPlay"/>
|
<segment title="AirPlay"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="linkColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -760,7 +760,7 @@ ICAgICAgICAgICAgICA
|
|||||||
<segment title="Visible"/>
|
<segment title="Visible"/>
|
||||||
</segments>
|
</segments>
|
||||||
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="tintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<color key="selectedSegmentTintColor" red="0.6716768742" green="0.61711704730000005" blue="0.99902987480000005" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="selectedSegmentTintColor" systemColor="systemTealColor"/>
|
||||||
</segmentedControl>
|
</segmentedControl>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
<constraints>
|
||||||
@@ -1267,14 +1267,20 @@ ICAgICAgICAgICAgICA
|
|||||||
<image name="SquareAndArrowDown" width="40" height="40"/>
|
<image name="SquareAndArrowDown" width="40" height="40"/>
|
||||||
<image name="SquaresArrowUp" width="40" height="40"/>
|
<image name="SquaresArrowUp" width="40" height="40"/>
|
||||||
<image name="Trash" width="40" height="40"/>
|
<image name="Trash" width="40" height="40"/>
|
||||||
|
<systemColor name="linkColor">
|
||||||
|
<color red="0.0" green="0.47843137250000001" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
|
</systemColor>
|
||||||
<systemColor name="secondaryLabelColor">
|
<systemColor name="secondaryLabelColor">
|
||||||
<color red="0.23529411764705882" green="0.23529411764705882" blue="0.2627450980392157" alpha="0.59999999999999998" colorSpace="custom" customColorSpace="sRGB"/>
|
<color red="0.23529411759999999" green="0.23529411759999999" blue="0.26274509800000001" alpha="0.59999999999999998" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
</systemColor>
|
</systemColor>
|
||||||
<systemColor name="systemBackgroundColor">
|
<systemColor name="systemBackgroundColor">
|
||||||
<color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
<color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
||||||
</systemColor>
|
</systemColor>
|
||||||
<systemColor name="systemBrownColor">
|
<systemColor name="systemBrownColor">
|
||||||
<color red="0.63529411764705879" green="0.51764705882352946" blue="0.36862745098039218" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color red="0.63529411759999999" green="0.51764705879999995" blue="0.36862745099999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
|
</systemColor>
|
||||||
|
<systemColor name="systemTealColor">
|
||||||
|
<color red="0.18823529410000001" green="0.69019607839999997" blue="0.78039215689999997" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
</systemColor>
|
</systemColor>
|
||||||
</resources>
|
</resources>
|
||||||
</document>
|
</document>
|
||||||
+24
-20
@@ -187,7 +187,7 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
self.hostIconView = [[UIImageView alloc] init];
|
self.hostIconView = [[UIImageView alloc] init];
|
||||||
self.hostIconView.translatesAutoresizingMaskIntoConstraints = NO;
|
self.hostIconView.translatesAutoresizingMaskIntoConstraints = NO;
|
||||||
self.hostIconView.contentMode = UIViewContentModeScaleAspectFit;
|
self.hostIconView.contentMode = UIViewContentModeScaleAspectFit;
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
self.hostIconView.image = [UIImage systemImageNamed:@"display"];
|
self.hostIconView.image = [UIImage systemImageNamed:@"display"];
|
||||||
} else {
|
} else {
|
||||||
self.hostIconView.image = [UIImage imageNamed:@"Computer"];
|
self.hostIconView.image = [UIImage imageNamed:@"Computer"];
|
||||||
@@ -208,6 +208,10 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
// [self.iconImageView layoutIfNeeded];
|
// [self.iconImageView layoutIfNeeded];
|
||||||
|
|
||||||
//spinner
|
//spinner
|
||||||
|
bool oldiOS = false;
|
||||||
|
if (@available(iOS 13.0, *)){}
|
||||||
|
else oldiOS = true;
|
||||||
|
|
||||||
_hostSpinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite];
|
_hostSpinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite];
|
||||||
_hostSpinner.userInteractionEnabled = NO;
|
_hostSpinner.userInteractionEnabled = NO;
|
||||||
_hostSpinner.translatesAutoresizingMaskIntoConstraints = NO;
|
_hostSpinner.translatesAutoresizingMaskIntoConstraints = NO;
|
||||||
@@ -215,7 +219,7 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
[self.iconBackgroundView addSubview:_hostSpinner];
|
[self.iconBackgroundView addSubview:_hostSpinner];
|
||||||
[NSLayoutConstraint activateConstraints:@[
|
[NSLayoutConstraint activateConstraints:@[
|
||||||
[_hostSpinner.centerXAnchor constraintEqualToAnchor:self.iconBackgroundView.centerXAnchor constant:0],
|
[_hostSpinner.centerXAnchor constraintEqualToAnchor:self.iconBackgroundView.centerXAnchor constant:0],
|
||||||
[_hostSpinner.centerYAnchor constraintEqualToAnchor:self.iconBackgroundView.centerYAnchor constant:computerIconMonitorCenterYOffset],
|
[_hostSpinner.centerYAnchor constraintEqualToAnchor:self.iconBackgroundView.centerYAnchor constant:oldiOS ? -5.5*_sizeFactor : computerIconMonitorCenterYOffset],
|
||||||
]];
|
]];
|
||||||
_hostSpinner.transform = CGAffineTransformMakeScale(_sizeFactor, _sizeFactor);
|
_hostSpinner.transform = CGAffineTransformMakeScale(_sizeFactor, _sizeFactor);
|
||||||
[_hostSpinner stopAnimating];
|
[_hostSpinner stopAnimating];
|
||||||
@@ -225,10 +229,11 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
// lockIcon
|
// lockIcon
|
||||||
lockIconView =[[UIImageView alloc] init];
|
lockIconView =[[UIImageView alloc] init];
|
||||||
lockIconView.translatesAutoresizingMaskIntoConstraints = NO;
|
lockIconView.translatesAutoresizingMaskIntoConstraints = NO;
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
lockIconView.image = [UIImage systemImageNamed:@"lock.fill"];
|
lockIconView.image = [UIImage systemImageNamed:@"lock.fill"];
|
||||||
} else {
|
} else {
|
||||||
// lockIconView.image = [UIImage imageNamed:@"Computer"];
|
lockIconView.image = [UIImage imageNamed:@"LockedOverlayIcon"];
|
||||||
|
computerIconMonitorCenterYOffset = -5 * _sizeFactor;
|
||||||
}
|
}
|
||||||
lockIconView.tintColor = [UIColor whiteColor];
|
lockIconView.tintColor = [UIColor whiteColor];
|
||||||
[self.iconBackgroundView insertSubview:lockIconView aboveSubview:_iconBackgroundView];
|
[self.iconBackgroundView insertSubview:lockIconView aboveSubview:_iconBackgroundView];
|
||||||
@@ -308,7 +313,7 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
self.launchButton.tintColor = [UIColor whiteColor];
|
self.launchButton.tintColor = [UIColor whiteColor];
|
||||||
[self.launchButton addTarget:self action:@selector(launchButtonTapped) forControlEvents:UIControlEventPrimaryActionTriggered];
|
[self.launchButton addTarget:self action:@selector(launchButtonTapped) forControlEvents:UIControlEventPrimaryActionTriggered];
|
||||||
[self addSubview:self.launchButton];
|
[self addSubview:self.launchButton];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:self.launchButton.frame.size.height*_sizeFactor];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:self.launchButton.frame.size.height*_sizeFactor];
|
||||||
[self.launchButton setImage:[UIImage systemImageNamed:@"play.fill" withConfiguration:config] forState:UIControlStateNormal];
|
[self.launchButton setImage:[UIImage systemImageNamed:@"play.fill" withConfiguration:config] forState:UIControlStateNormal];
|
||||||
|
|
||||||
@@ -329,12 +334,12 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
self.pairButton = [UIButton buttonWithType:UIButtonTypeSystem];
|
self.pairButton = [UIButton buttonWithType:UIButtonTypeSystem];
|
||||||
self.pairButton.translatesAutoresizingMaskIntoConstraints = NO;
|
self.pairButton.translatesAutoresizingMaskIntoConstraints = NO;
|
||||||
self.pairButton.frame = CGRectMake(0, 0, 150, 50);
|
self.pairButton.frame = CGRectMake(0, 0, 150, 50);
|
||||||
self.pairButton.backgroundColor = [ThemeManager appPrimaryColorWithAlpha];
|
self.pairButton.backgroundColor = [ThemeManager textTintColorWithAlpha];
|
||||||
self.pairButton.layer.cornerRadius = 10;
|
self.pairButton.layer.cornerRadius = 10;
|
||||||
[self.pairButton setTitle:[LocalizationHelper localizedStringForKey:@" Pair with PIN"] forState:UIControlStateNormal];
|
[self.pairButton setTitle:[LocalizationHelper localizedStringForKey:@" Pair with PIN"] forState:UIControlStateNormal];
|
||||||
[self.pairButton setTitleColor:defaultBlue forState:UIControlStateNormal]; // theme
|
[self.pairButton setTitleColor:defaultBlue forState:UIControlStateNormal]; // theme
|
||||||
self.pairButton.titleLabel.font = [UIFont boldSystemFontOfSize:16*_sizeFactor];
|
self.pairButton.titleLabel.font = [UIFont boldSystemFontOfSize:16*_sizeFactor];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:self.pairButton.frame.size.height/3.5*_sizeFactor weight:UIImageSymbolWeightBold];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:self.pairButton.frame.size.height/3.5*_sizeFactor weight:UIImageSymbolWeightBold];
|
||||||
UIImage *templateImage = [UIImage systemImageNamed:@"lock.open.fill" withConfiguration:config];
|
UIImage *templateImage = [UIImage systemImageNamed:@"lock.open.fill" withConfiguration:config];
|
||||||
UIImage *coloredImage = [templateImage imageWithTintColor:defaultBlue renderingMode:UIImageRenderingModeAlwaysOriginal];
|
UIImage *coloredImage = [templateImage imageWithTintColor:defaultBlue renderingMode:UIImageRenderingModeAlwaysOriginal];
|
||||||
@@ -342,7 +347,7 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
} else {
|
} else {
|
||||||
// Fallback on earlier versions
|
// Fallback on earlier versions
|
||||||
}
|
}
|
||||||
self.pairButton.backgroundColor = [ThemeManager appPrimaryColorWithAlpha];
|
self.pairButton.backgroundColor = [ThemeManager textTintColorWithAlpha];
|
||||||
[self.pairButton setTitleColor:defaultBlue forState:UIControlStateNormal]; // theme
|
[self.pairButton setTitleColor:defaultBlue forState:UIControlStateNormal]; // theme
|
||||||
|
|
||||||
[self.pairButton addTarget:self action:@selector(pairButtonTapped) forControlEvents:UIControlEventPrimaryActionTriggered];
|
[self.pairButton addTarget:self action:@selector(pairButtonTapped) forControlEvents:UIControlEventPrimaryActionTriggered];
|
||||||
@@ -363,7 +368,7 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
self.wakeupButton = [UIButton buttonWithType:UIButtonTypeSystem];
|
self.wakeupButton = [UIButton buttonWithType:UIButtonTypeSystem];
|
||||||
self.wakeupButton.translatesAutoresizingMaskIntoConstraints = NO;
|
self.wakeupButton.translatesAutoresizingMaskIntoConstraints = NO;
|
||||||
self.wakeupButton.frame = CGRectMake(0, 0, 150, 50);
|
self.wakeupButton.frame = CGRectMake(0, 0, 150, 50);
|
||||||
self.wakeupButton.backgroundColor = [ThemeManager appPrimaryColorWithAlpha];
|
self.wakeupButton.backgroundColor = [ThemeManager textTintColorWithAlpha];
|
||||||
self.wakeupButton.layer.cornerRadius = 10;
|
self.wakeupButton.layer.cornerRadius = 10;
|
||||||
[self.wakeupButton setTitle:[LocalizationHelper localizedStringForKey:@" Wake-on-LAN"] forState:UIControlStateNormal];
|
[self.wakeupButton setTitle:[LocalizationHelper localizedStringForKey:@" Wake-on-LAN"] forState:UIControlStateNormal];
|
||||||
[self.wakeupButton setTitleColor:defaultBlue forState:UIControlStateNormal]; // theme
|
[self.wakeupButton setTitleColor:defaultBlue forState:UIControlStateNormal]; // theme
|
||||||
@@ -475,7 +480,7 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
- (void)traitCollectionDidChange:(UITraitCollection *)previousTraitCollection {
|
- (void)traitCollectionDidChange:(UITraitCollection *)previousTraitCollection {
|
||||||
[super traitCollectionDidChange:previousTraitCollection];
|
[super traitCollectionDidChange:previousTraitCollection];
|
||||||
|
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
if ([self.traitCollection hasDifferentColorAppearanceComparedToTraitCollection:previousTraitCollection]) {
|
if ([self.traitCollection hasDifferentColorAppearanceComparedToTraitCollection:previousTraitCollection]) {
|
||||||
[self updateTheme:self.traitCollection.userInterfaceStyle];
|
[self updateTheme:self.traitCollection.userInterfaceStyle];
|
||||||
}
|
}
|
||||||
@@ -507,6 +512,7 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
_statusLabel.textColor = defaultGreen;
|
_statusLabel.textColor = defaultGreen;
|
||||||
_statusLabel.text = @"Online";
|
_statusLabel.text = @"Online";
|
||||||
self.statusIcon.image = [[UIImage imageNamed:@"wifi_green"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
|
self.statusIcon.image = [[UIImage imageNamed:@"wifi_green"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
|
||||||
|
self.statusIcon.hidden = NO;
|
||||||
_hostIconView.tintColor = [UIColor whiteColor];
|
_hostIconView.tintColor = [UIColor whiteColor];
|
||||||
_appButton.titleLabel.font = [UIFont systemFontOfSize:16*_sizeFactor];
|
_appButton.titleLabel.font = [UIFont systemFontOfSize:16*_sizeFactor];
|
||||||
if(host.pairState == PairStatePaired){
|
if(host.pairState == PairStatePaired){
|
||||||
@@ -522,11 +528,10 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
_wakeupButton.hidden = YES;
|
_wakeupButton.hidden = YES;
|
||||||
|
|
||||||
[_appButton setTitleColor:defaultBlue forState:UIControlStateNormal]; // theme
|
[_appButton setTitleColor:defaultBlue forState:UIControlStateNormal]; // theme
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:self.launchButton.frame.size.height/4*_sizeFactor];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:self.launchButton.frame.size.height/4*_sizeFactor];
|
||||||
[self.launchButton setImage:[UIImage systemImageNamed:@"play.fill" withConfiguration:config] forState:UIControlStateNormal];
|
[self.launchButton setImage:[UIImage systemImageNamed:@"play.fill" withConfiguration:config] forState:UIControlStateNormal];
|
||||||
} else {
|
} else {
|
||||||
// Fallback on earlier versions
|
|
||||||
}
|
}
|
||||||
_launchButton.backgroundColor = defaultBlue;
|
_launchButton.backgroundColor = defaultBlue;
|
||||||
[_launchButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; // theme
|
[_launchButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; // theme
|
||||||
@@ -547,10 +552,10 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
_statusLabel.textColor = [ThemeManager textColorGray];
|
_statusLabel.textColor = [ThemeManager textColorGray];
|
||||||
_statusLabel.text = @"Offline";
|
_statusLabel.text = @"Offline";
|
||||||
_statusIcon.tintColor = [ThemeManager textColorGray];
|
_statusIcon.tintColor = [ThemeManager textColorGray];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
_statusIcon.image = [UIImage systemImageNamed:@"exclamationmark.triangle.fill"];
|
_statusIcon.image = [UIImage systemImageNamed:@"exclamationmark.triangle.fill"];
|
||||||
} else {
|
} else {
|
||||||
// Fallback on earlier versions
|
self.statusIcon.hidden = YES;
|
||||||
}
|
}
|
||||||
_hostIconView.tintColor = [ThemeManager lowProfileGray];
|
_hostIconView.tintColor = [ThemeManager lowProfileGray];
|
||||||
lockIconView.hidden = YES;
|
lockIconView.hidden = YES;
|
||||||
@@ -559,7 +564,7 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
_pairButton.hidden = YES;
|
_pairButton.hidden = YES;
|
||||||
_wakeupButton.hidden = NO;
|
_wakeupButton.hidden = NO;
|
||||||
|
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:self.wakeupButton.frame.size.height/3.2*_sizeFactor weight:UIImageSymbolWeightBold];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:self.wakeupButton.frame.size.height/3.2*_sizeFactor weight:UIImageSymbolWeightBold];
|
||||||
UIImage *templateImage = [UIImage systemImageNamed:@"power" withConfiguration:config];
|
UIImage *templateImage = [UIImage systemImageNamed:@"power" withConfiguration:config];
|
||||||
UIImage *coloredImage = [templateImage imageWithTintColor:defaultBlue renderingMode:UIImageRenderingModeAlwaysOriginal];
|
UIImage *coloredImage = [templateImage imageWithTintColor:defaultBlue renderingMode:UIImageRenderingModeAlwaysOriginal];
|
||||||
@@ -567,9 +572,8 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
} else {
|
} else {
|
||||||
// Fallback on earlier versions
|
// Fallback on earlier versions
|
||||||
}
|
}
|
||||||
self.wakeupButton.backgroundColor = [ThemeManager appPrimaryColorWithAlpha];
|
self.wakeupButton.backgroundColor = [ThemeManager textTintColorWithAlpha];
|
||||||
[self.wakeupButton setTitleColor:defaultBlue forState:UIControlStateNormal];
|
[self.wakeupButton setTitleColor:defaultBlue forState:UIControlStateNormal];
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case StateUnknown:
|
case StateUnknown:
|
||||||
_hostSpinner.color = [UIColor whiteColor];
|
_hostSpinner.color = [UIColor whiteColor];
|
||||||
@@ -579,10 +583,10 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
_statusLabel.textColor = [ThemeManager textColorGray];
|
_statusLabel.textColor = [ThemeManager textColorGray];
|
||||||
_statusLabel.text = @"Detecting...";
|
_statusLabel.text = @"Detecting...";
|
||||||
_statusIcon.tintColor = [ThemeManager textColorGray];
|
_statusIcon.tintColor = [ThemeManager textColorGray];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
_statusIcon.image = [UIImage systemImageNamed:@"antenna.radiowaves.left.and.right"];
|
_statusIcon.image = [UIImage systemImageNamed:@"antenna.radiowaves.left.and.right"];
|
||||||
} else {
|
} else {
|
||||||
// Fallback on earlier versions
|
self.statusIcon.hidden = YES;
|
||||||
}
|
}
|
||||||
// _hostIconView.tintColor = [UIColor lowProfileGray];
|
// _hostIconView.tintColor = [UIColor lowProfileGray];
|
||||||
_hostIconView.tintColor = defaultBlue;
|
_hostIconView.tintColor = defaultBlue;
|
||||||
@@ -593,7 +597,7 @@ static const float REFRESH_CYCLE = 2.0f;
|
|||||||
_wakeupButton.hidden = NO;
|
_wakeupButton.hidden = NO;
|
||||||
|
|
||||||
[_wakeupButton setTitleColor:[ThemeManager textColorGray] forState:UIControlStateNormal]; // theme
|
[_wakeupButton setTitleColor:[ThemeManager textColorGray] forState:UIControlStateNormal]; // theme
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:self.wakeupButton.frame.size.height/3.2*_sizeFactor weight:UIImageSymbolWeightBold];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:self.wakeupButton.frame.size.height/3.2*_sizeFactor weight:UIImageSymbolWeightBold];
|
||||||
UIImage *templateImage = [UIImage systemImageNamed:@"power" withConfiguration:config];
|
UIImage *templateImage = [UIImage systemImageNamed:@"power" withConfiguration:config];
|
||||||
UIImage *coloredImage = [templateImage imageWithTintColor:[ThemeManager textColorGray] renderingMode:UIImageRenderingModeAlwaysOriginal];
|
UIImage *coloredImage = [templateImage imageWithTintColor:[ThemeManager textColorGray] renderingMode:UIImageRenderingModeAlwaysOriginal];
|
||||||
|
|||||||
@@ -161,7 +161,7 @@ static CGRect streamViewBounds;
|
|||||||
if (fileData && !error) {
|
if (fileData && !error) {
|
||||||
// 3. 成功读取
|
// 3. 成功读取
|
||||||
NSSet *classes = [NSSet setWithObjects: [NSMutableData class], [NSMutableArray class], nil];
|
NSSet *classes = [NSSet setWithObjects: [NSMutableData class], [NSMutableArray class], nil];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
// 在 iOS 13 及以上使用 unarchivedObjectOfClasses
|
// 在 iOS 13 及以上使用 unarchivedObjectOfClasses
|
||||||
profilesEncoded = [NSKeyedUnarchiver unarchivedObjectOfClasses:classes fromData:fileData error:&error];
|
profilesEncoded = [NSKeyedUnarchiver unarchivedObjectOfClasses:classes fromData:fileData error:&error];
|
||||||
} else {
|
} else {
|
||||||
@@ -402,7 +402,7 @@ static CGRect streamViewBounds;
|
|||||||
|
|
||||||
- (OnScreenButtonState *)unarchiveButtonStateEncoded:(NSData *)data {
|
- (OnScreenButtonState *)unarchiveButtonStateEncoded:(NSData *)data {
|
||||||
OnScreenButtonState* buttonState;
|
OnScreenButtonState* buttonState;
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
// 在 iOS 13 及以上使用 unarchivedObjectOfClasses
|
// 在 iOS 13 及以上使用 unarchivedObjectOfClasses
|
||||||
buttonState = [NSKeyedUnarchiver unarchivedObjectOfClasses:[NSSet setWithObjects:[NSString class], [OnScreenButtonState class], nil]
|
buttonState = [NSKeyedUnarchiver unarchivedObjectOfClasses:[NSSet setWithObjects:[NSString class], [OnScreenButtonState class], nil]
|
||||||
fromData:data
|
fromData:data
|
||||||
|
|||||||
@@ -1032,7 +1032,7 @@ static const double X1_MOUSE_SPEED_DIVISOR = 2.5;
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {
|
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
// Disable the 3 finger tap gestures that trigger the copy/paste/undo toolbar on iOS 13+
|
// Disable the 3 finger tap gestures that trigger the copy/paste/undo toolbar on iOS 13+
|
||||||
return gestureRecognizer.name == nil || ![gestureRecognizer.name hasPrefix:@"kbProductivity."];
|
return gestureRecognizer.name == nil || ![gestureRecognizer.name hasPrefix:@"kbProductivity."];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -83,11 +83,11 @@
|
|||||||
// 切换按钮
|
// 切换按钮
|
||||||
_toggleButton = [UIButton buttonWithType:UIButtonTypeSystem];
|
_toggleButton = [UIButton buttonWithType:UIButtonTypeSystem];
|
||||||
_toggleArea = [UIButton buttonWithType:UIButtonTypeSystem];
|
_toggleArea = [UIButton buttonWithType:UIButtonTypeSystem];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:_headerViewHeight*0.31 weight:UIImageSymbolWeightMedium];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:_headerViewHeight*0.31 weight:UIImageSymbolWeightBold];
|
||||||
[_toggleButton setImage:[UIImage systemImageNamed:@"chevron.left" withConfiguration:config] forState:UIControlStateNormal];
|
[_toggleButton setImage:[UIImage systemImageNamed:@"chevron.left" withConfiguration:config] forState:UIControlStateNormal];
|
||||||
} else {
|
} else {
|
||||||
[_toggleButton setTitle:@"<" forState:UIControlStateNormal];
|
// [_toggleButton setTitle:@"<" forState:UIControlStateNormal];
|
||||||
}
|
}
|
||||||
[_toggleButton addTarget:self action:@selector(toggleFold) forControlEvents:UIControlEventTouchUpInside];
|
[_toggleButton addTarget:self action:@selector(toggleFold) forControlEvents:UIControlEventTouchUpInside];
|
||||||
[_toggleArea addTarget:self action:@selector(toggleFold) forControlEvents:UIControlEventTouchUpInside];
|
[_toggleArea addTarget:self action:@selector(toggleFold) forControlEvents:UIControlEventTouchUpInside];
|
||||||
@@ -140,11 +140,18 @@
|
|||||||
]];
|
]];
|
||||||
|
|
||||||
// 标题约束
|
// 标题约束
|
||||||
[NSLayoutConstraint activateConstraints:@[
|
if(@available(iOS 13.0, *)){
|
||||||
[_titleLabel.leadingAnchor constraintEqualToAnchor:_iconImageView.trailingAnchor constant:8],
|
[NSLayoutConstraint activateConstraints:@[
|
||||||
[_titleLabel.centerYAnchor constraintEqualToAnchor:_headerView.centerYAnchor],
|
[_titleLabel.leadingAnchor constraintEqualToAnchor:_iconImageView.trailingAnchor constant:8],
|
||||||
[_titleLabel.trailingAnchor constraintEqualToAnchor:_toggleButton.leadingAnchor constant:-8]
|
[_titleLabel.centerYAnchor constraintEqualToAnchor:_headerView.centerYAnchor],
|
||||||
]];
|
[_titleLabel.trailingAnchor constraintEqualToAnchor:_toggleButton.leadingAnchor constant:-8]
|
||||||
|
]];
|
||||||
|
}
|
||||||
|
else [NSLayoutConstraint activateConstraints:@[
|
||||||
|
[_titleLabel.leadingAnchor constraintEqualToAnchor:_headerView.leadingAnchor constant:0],
|
||||||
|
[_titleLabel.centerYAnchor constraintEqualToAnchor:_headerView.centerYAnchor],
|
||||||
|
[_titleLabel.trailingAnchor constraintEqualToAnchor:_toggleButton.leadingAnchor constant:-8]
|
||||||
|
]];
|
||||||
|
|
||||||
// 切换按钮约束
|
// 切换按钮约束
|
||||||
[NSLayoutConstraint activateConstraints:@[
|
[NSLayoutConstraint activateConstraints:@[
|
||||||
@@ -192,7 +199,7 @@
|
|||||||
#pragma mark - Public Methods
|
#pragma mark - Public Methods
|
||||||
|
|
||||||
- (void)setSectionIcon:(UIImage *)icon {
|
- (void)setSectionIcon:(UIImage *)icon {
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithWeight:UIImageSymbolWeightSemibold];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithWeight:UIImageSymbolWeightSemibold];
|
||||||
_iconImageView.image = [icon imageWithConfiguration:config];
|
_iconImageView.image = [icon imageWithConfiguration:config];
|
||||||
|
|
||||||
|
|||||||
@@ -20,6 +20,7 @@
|
|||||||
+ (UIColor *)textColor;
|
+ (UIColor *)textColor;
|
||||||
+ (UIColor *)textColorGray;
|
+ (UIColor *)textColorGray;
|
||||||
+ (UIColor *)lowProfileGray;
|
+ (UIColor *)lowProfileGray;
|
||||||
|
+ (UIColor *)textTintColorWithAlpha;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@@ -14,7 +14,7 @@ static UIUserInterfaceStyle _privateUserInterfaceStyle = UIUserInterfaceStyleUns
|
|||||||
static UIUserInterfaceStyle _userInterfaceStyle;
|
static UIUserInterfaceStyle _userInterfaceStyle;
|
||||||
|
|
||||||
+ (UIColor *)getUIStyle{
|
+ (UIColor *)getUIStyle{
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UITraitCollection *traitCollection = [UIScreen mainScreen].traitCollection;
|
UITraitCollection *traitCollection = [UIScreen mainScreen].traitCollection;
|
||||||
if(_privateUserInterfaceStyle == UIUserInterfaceStyleUnspecified) {
|
if(_privateUserInterfaceStyle == UIUserInterfaceStyleUnspecified) {
|
||||||
_userInterfaceStyle = traitCollection.userInterfaceStyle;
|
_userInterfaceStyle = traitCollection.userInterfaceStyle;
|
||||||
@@ -97,11 +97,43 @@ static UIUserInterfaceStyle _userInterfaceStyle;
|
|||||||
}
|
}
|
||||||
|
|
||||||
+ (UIColor *)appSecondaryColor {
|
+ (UIColor *)appSecondaryColor {
|
||||||
return [UIColor colorWithRed:0.0 green:0.319 blue:0.64 alpha:1.0]; // 可换其他常用色
|
// return [UIColor colorWithRed:0.0 green:0.319 blue:0.64 alpha:1.0]; // 可换其他常用色
|
||||||
|
UIColor* originalColor = [ThemeManager appPrimaryColor];
|
||||||
|
|
||||||
|
UIColor *grayColor = [UIColor grayColor];
|
||||||
|
CGFloat mixRatio = 0.3; // 混合比例,0.0 到 1.0
|
||||||
|
|
||||||
|
CGFloat r1, g1, b1, a1;
|
||||||
|
CGFloat r2, g2, b2, a2;
|
||||||
|
|
||||||
|
[originalColor getRed:&r1 green:&g1 blue:&b1 alpha:&a1];
|
||||||
|
[grayColor getRed:&r2 green:&g2 blue:&b2 alpha:&a2];
|
||||||
|
|
||||||
|
CGFloat r = r1 * (1 - mixRatio) + r2 * mixRatio;
|
||||||
|
CGFloat g = g1 * (1 - mixRatio) + g2 * mixRatio;
|
||||||
|
CGFloat b = b1 * (1 - mixRatio) + b2 * mixRatio;
|
||||||
|
CGFloat a = a1 * (1 - mixRatio) + a2 * mixRatio;
|
||||||
|
|
||||||
|
UIColor *tonedColor = [UIColor colorWithRed:r green:g blue:b alpha:a];
|
||||||
|
|
||||||
|
return tonedColor; // 可换其他常用色
|
||||||
}
|
}
|
||||||
|
|
||||||
+ (UIColor *)appPrimaryColorWithAlpha {
|
+ (UIColor *)appPrimaryColorWithAlpha {
|
||||||
return [[ThemeManager appPrimaryColor] colorWithAlphaComponent:0.24]; // #0A84FF
|
[ThemeManager getUIStyle];
|
||||||
|
switch (self.userInterfaceStyle) {
|
||||||
|
case UIUserInterfaceStyleLight:
|
||||||
|
return [[ThemeManager appPrimaryColor] colorWithAlphaComponent:0.24]; // #0A84FF
|
||||||
|
break;
|
||||||
|
case UIUserInterfaceStyleDark:
|
||||||
|
default:
|
||||||
|
return [[ThemeManager appPrimaryColor] colorWithAlphaComponent:0.5];
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
+ (UIColor *)textTintColorWithAlpha{
|
||||||
|
return [[ThemeManager appPrimaryColor] colorWithAlphaComponent:0.24];
|
||||||
}
|
}
|
||||||
|
|
||||||
+ (UIColor *)textColorGray{
|
+ (UIColor *)textColorGray{
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ static UIImage* noImage;
|
|||||||
// Use UIContextMenuInteraction on iOS 13.0+ and a standard UILongPressGestureRecognizer
|
// Use UIContextMenuInteraction on iOS 13.0+ and a standard UILongPressGestureRecognizer
|
||||||
// for tvOS devices and iOS prior to 13.0.
|
// for tvOS devices and iOS prior to 13.0.
|
||||||
#if !TARGET_OS_TV
|
#if !TARGET_OS_TV
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIContextMenuInteraction* rightClickInteraction = [[UIContextMenuInteraction alloc] initWithDelegate:self];
|
UIContextMenuInteraction* rightClickInteraction = [[UIContextMenuInteraction alloc] initWithDelegate:self];
|
||||||
[self addInteraction:rightClickInteraction];
|
[self addInteraction:rightClickInteraction];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -127,7 +127,7 @@ static const int LABEL_DY = 20;
|
|||||||
// Use UIContextMenuInteraction on iOS 13.0+ and a standard UILongPressGestureRecognizer
|
// Use UIContextMenuInteraction on iOS 13.0+ and a standard UILongPressGestureRecognizer
|
||||||
// for tvOS devices and iOS prior to 13.0.
|
// for tvOS devices and iOS prior to 13.0.
|
||||||
#if !TARGET_OS_TV
|
#if !TARGET_OS_TV
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIContextMenuInteraction* rightClickInteraction = [[UIContextMenuInteraction alloc] initWithDelegate:self];
|
UIContextMenuInteraction* rightClickInteraction = [[UIContextMenuInteraction alloc] initWithDelegate:self];
|
||||||
[self addInteraction:rightClickInteraction];
|
[self addInteraction:rightClickInteraction];
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -738,7 +738,7 @@
|
|||||||
// Set the label's frame with the calculated x-position
|
// Set the label's frame with the calculated x-position
|
||||||
self.currentProfileLabel.frame = CGRectMake(profileLabelXPosition, self.currentProfileLabel.frame.origin.y, self.currentProfileLabel.frame.size.width, self.currentProfileLabel.frame.size.height);
|
self.currentProfileLabel.frame = CGRectMake(profileLabelXPosition, self.currentProfileLabel.frame.origin.y, self.currentProfileLabel.frame.size.width, self.currentProfileLabel.frame.size.height);
|
||||||
self.currentProfileLabel.hidden = NO; // Show Current Profile display
|
self.currentProfileLabel.hidden = NO; // Show Current Profile display
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
self.currentProfileLabel.textAlignment = NSTextAlignmentNatural;
|
self.currentProfileLabel.textAlignment = NSTextAlignmentNatural;
|
||||||
self.currentProfileLabel.numberOfLines = 2;
|
self.currentProfileLabel.numberOfLines = 2;
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -268,7 +268,7 @@ didPickDocumentsAtURLs:(NSArray<NSURL *> *)urls {
|
|||||||
NSMutableArray *profilesEncoded;
|
NSMutableArray *profilesEncoded;
|
||||||
// 解码原始的NSArray对象,得到包含编码对象的数组
|
// 解码原始的NSArray对象,得到包含编码对象的数组
|
||||||
error = nil;
|
error = nil;
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
// 在 iOS 13 及以上使用 unarchivedObjectOfClasses
|
// 在 iOS 13 及以上使用 unarchivedObjectOfClasses
|
||||||
profilesEncoded = [NSKeyedUnarchiver unarchivedObjectOfClasses:classes fromData:fileData error:&error];
|
profilesEncoded = [NSKeyedUnarchiver unarchivedObjectOfClasses:classes fromData:fileData error:&error];
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -136,7 +136,7 @@ static NSMutableSet* hostList;
|
|||||||
|
|
||||||
- (void)updateTitle {
|
- (void)updateTitle {
|
||||||
|
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
navBarAppearanceScroll.titleTextAttributes = navBarAppearanceStandard.titleTextAttributes = @{
|
navBarAppearanceScroll.titleTextAttributes = navBarAppearanceStandard.titleTextAttributes = @{
|
||||||
NSFontAttributeName: [UIFont systemFontOfSize:20 weight:UIFontWeightMedium],
|
NSFontAttributeName: [UIFont systemFontOfSize:20 weight:UIFontWeightMedium],
|
||||||
NSForegroundColorAttributeName: [ThemeManager textColor] // 可选,设置标题颜色
|
NSForegroundColorAttributeName: [ThemeManager textColor] // 可选,设置标题颜色
|
||||||
@@ -151,7 +151,7 @@ static NSMutableSet* hostList;
|
|||||||
self.title = [LocalizationHelper localizedStringForKey: @"Searching for PCs on your network..."] ;
|
self.title = [LocalizationHelper localizedStringForKey: @"Searching for PCs on your network..."] ;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
navBarAppearanceScroll.titleTextAttributes = navBarAppearanceStandard.titleTextAttributes = @{
|
navBarAppearanceScroll.titleTextAttributes = navBarAppearanceStandard.titleTextAttributes = @{
|
||||||
NSFontAttributeName: [UIFont systemFontOfSize:24 weight:UIFontWeightSemibold],
|
NSFontAttributeName: [UIFont systemFontOfSize:24 weight:UIFontWeightSemibold],
|
||||||
NSForegroundColorAttributeName: [ThemeManager textColor] // 可选,设置标题颜色
|
NSForegroundColorAttributeName: [ThemeManager textColor] // 可选,设置标题颜色
|
||||||
@@ -165,10 +165,10 @@ static NSMutableSet* hostList;
|
|||||||
self.title = [LocalizationHelper localizedStringForKey: @"Hosts" ];
|
self.title = [LocalizationHelper localizedStringForKey: @"Hosts" ];
|
||||||
//self.title = nil;
|
//self.title = nil;
|
||||||
}
|
}
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
[self applyNavBarAppearance];
|
[self applyNavBarAppearance];
|
||||||
} else {
|
} else {
|
||||||
// Fallback on earlier versions
|
self.navigationController.navigationBar.backgroundColor = [ThemeManager appBackgroundColor];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -365,6 +365,8 @@ static NSMutableSet* hostList;
|
|||||||
self.hostCollectionVC.view.hidden = YES;
|
self.hostCollectionVC.view.hidden = YES;
|
||||||
self.collectionView.hidden = NO;
|
self.collectionView.hidden = NO;
|
||||||
self.collectionView.backgroundColor = [ThemeManager appBackgroundColor];
|
self.collectionView.backgroundColor = [ThemeManager appBackgroundColor];
|
||||||
|
//self.view.backgroundColor = [ThemeManager appBackgroundColor];
|
||||||
|
|
||||||
[self attachWaterMark];
|
[self attachWaterMark];
|
||||||
self.navigationItem.rightBarButtonItems = @[_upButton];
|
self.navigationItem.rightBarButtonItems = @[_upButton];
|
||||||
self.revealViewController.mainFrameIsInHostView = false;
|
self.revealViewController.mainFrameIsInHostView = false;
|
||||||
@@ -1280,7 +1282,7 @@ static NSMutableSet* hostList;
|
|||||||
|
|
||||||
// 设置图标(SF Symbol)
|
// 设置图标(SF Symbol)
|
||||||
|
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:17 weight:UIImageSymbolWeightMedium];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:17 weight:UIImageSymbolWeightMedium];
|
||||||
UIImage *image = [UIImage systemImageNamed:@"plus.circle" withConfiguration:config];
|
UIImage *image = [UIImage systemImageNamed:@"plus.circle" withConfiguration:config];
|
||||||
[button setImage:image forState:UIControlStateNormal];
|
[button setImage:image forState:UIControlStateNormal];
|
||||||
@@ -1320,7 +1322,7 @@ static NSMutableSet* hostList;
|
|||||||
button.clipsToBounds = YES;
|
button.clipsToBounds = YES;
|
||||||
|
|
||||||
// 设置图标(SF Symbol)
|
// 设置图标(SF Symbol)
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:buttonHeight*0.85 weight:UIImageSymbolWeightRegular];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:buttonHeight*0.85 weight:UIImageSymbolWeightRegular];
|
||||||
UIImage *image = [UIImage systemImageNamed:@"questionmark.circle" withConfiguration:config];
|
UIImage *image = [UIImage systemImageNamed:@"questionmark.circle" withConfiguration:config];
|
||||||
[button setImage:image forState:UIControlStateNormal];
|
[button setImage:image forState:UIControlStateNormal];
|
||||||
@@ -1380,7 +1382,7 @@ static NSMutableSet* hostList;
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)setupNavBar{
|
- (void)setupNavBar{
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
navBarAppearanceStandard = [[UINavigationBarAppearance alloc] init];
|
navBarAppearanceStandard = [[UINavigationBarAppearance alloc] init];
|
||||||
[navBarAppearanceStandard configureWithOpaqueBackground]; // 不透明
|
[navBarAppearanceStandard configureWithOpaqueBackground]; // 不透明
|
||||||
navBarAppearanceStandard.backgroundColor =[ThemeManager appBackgroundColor];; // 设置你需要的背景色
|
navBarAppearanceStandard.backgroundColor =[ThemeManager appBackgroundColor];; // 设置你需要的背景色
|
||||||
@@ -1406,6 +1408,9 @@ static NSMutableSet* hostList;
|
|||||||
//appearance.
|
//appearance.
|
||||||
[self applyNavBarAppearance];
|
[self applyNavBarAppearance];
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
self.navigationController.navigationBar.backgroundColor = [ThemeManager appBackgroundColor];
|
||||||
|
}
|
||||||
|
|
||||||
self->_addHostButton = [self createAddHostButton];
|
self->_addHostButton = [self createAddHostButton];
|
||||||
self->_helpButton = [self createHelpButton];
|
self->_helpButton = [self createHelpButton];
|
||||||
@@ -1419,7 +1424,7 @@ static NSMutableSet* hostList;
|
|||||||
|
|
||||||
[_settingsButton setTarget:self.revealViewController];
|
[_settingsButton setTarget:self.revealViewController];
|
||||||
[_settingsButton setAction:@selector(revealToggle:)];
|
[_settingsButton setAction:@selector(revealToggle:)];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
[_settingsButton setTitle:nil];
|
[_settingsButton setTitle:nil];
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:23 weight:UIImageSymbolWeightMedium ];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:23 weight:UIImageSymbolWeightMedium ];
|
||||||
UIImage *image = [[UIImage systemImageNamed:@"sidebar.left" withConfiguration:config] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
|
UIImage *image = [[UIImage systemImageNamed:@"sidebar.left" withConfiguration:config] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
|
||||||
@@ -1767,6 +1772,8 @@ static NSMutableSet* hostList;
|
|||||||
// view, so we won't get a return to active notification
|
// view, so we won't get a return to active notification
|
||||||
// for that which would normally fire beginForegroundRefresh.
|
// for that which would normally fire beginForegroundRefresh.
|
||||||
self.view.backgroundColor = [ThemeManager appBackgroundColor];
|
self.view.backgroundColor = [ThemeManager appBackgroundColor];
|
||||||
|
self.hostCollectionVC.view.backgroundColor = [ThemeManager appBackgroundColor];
|
||||||
|
self.collectionView.backgroundColor = [ThemeManager appBackgroundColor];
|
||||||
|
|
||||||
[self.view addSubview:self.collectionView];
|
[self.view addSubview:self.collectionView];
|
||||||
[self initHostCollection];
|
[self initHostCollection];
|
||||||
|
|||||||
@@ -911,7 +911,7 @@ const int FrontViewPositionNone = 0xff;
|
|||||||
_dockedNavBar.translatesAutoresizingMaskIntoConstraints = NO;
|
_dockedNavBar.translatesAutoresizingMaskIntoConstraints = NO;
|
||||||
_dockedNavBar.userInteractionEnabled = YES;
|
_dockedNavBar.userInteractionEnabled = YES;
|
||||||
|
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UINavigationBarAppearance *navBarAppearanceStandard = [[UINavigationBarAppearance alloc] init];
|
UINavigationBarAppearance *navBarAppearanceStandard = [[UINavigationBarAppearance alloc] init];
|
||||||
[navBarAppearanceStandard configureWithOpaqueBackground]; // 不透明
|
[navBarAppearanceStandard configureWithOpaqueBackground]; // 不透明
|
||||||
navBarAppearanceStandard.backgroundColor =[ThemeManager appBackgroundColor];; // 设置你需要的背景色
|
navBarAppearanceStandard.backgroundColor =[ThemeManager appBackgroundColor];; // 设置你需要的背景色
|
||||||
@@ -924,7 +924,8 @@ const int FrontViewPositionNone = 0xff;
|
|||||||
_dockedNavBar.standardAppearance = navBarAppearanceStandard;
|
_dockedNavBar.standardAppearance = navBarAppearanceStandard;
|
||||||
_dockedNavBar.scrollEdgeAppearance = navBarAppearanceStandard;
|
_dockedNavBar.scrollEdgeAppearance = navBarAppearanceStandard;
|
||||||
} else {
|
} else {
|
||||||
_dockedNavBar.backgroundColor = [ThemeManager appBackgroundColor];
|
_dockedNavBar.backgroundColor = [UIColor clearColor];
|
||||||
|
_dockedNavBar.barTintColor = [[ThemeManager appBackgroundColor] colorWithAlphaComponent:0.1];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -939,7 +940,6 @@ const int FrontViewPositionNone = 0xff;
|
|||||||
// navItem.rightBarButtonItem = _disconnectButton;
|
// navItem.rightBarButtonItem = _disconnectButton;
|
||||||
|
|
||||||
[_dockedNavBar setItems:@[_navItem]];
|
[_dockedNavBar setItems:@[_navItem]];
|
||||||
_dockedNavBar.barTintColor = [UIColor darkGrayColor];
|
|
||||||
_dockedNavBar.titleTextAttributes = @{NSForegroundColorAttributeName: [UIColor whiteColor]};
|
_dockedNavBar.titleTextAttributes = @{NSForegroundColorAttributeName: [UIColor whiteColor]};
|
||||||
|
|
||||||
[_contentView.rearNavView addSubview:_dockedNavBar];
|
[_contentView.rearNavView addSubview:_dockedNavBar];
|
||||||
@@ -961,14 +961,14 @@ const int FrontViewPositionNone = 0xff;
|
|||||||
UIBarButtonItem *backButton = [[UIBarButtonItem alloc] init];
|
UIBarButtonItem *backButton = [[UIBarButtonItem alloc] init];
|
||||||
[backButton setTarget:self];
|
[backButton setTarget:self];
|
||||||
[backButton setAction:@selector(foldRearView)];
|
[backButton setAction:@selector(foldRearView)];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
[backButton setTitle:nil];
|
[backButton setTitle:nil];
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:23 weight:UIImageSymbolWeightMedium ];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:23 weight:UIImageSymbolWeightMedium ];
|
||||||
UIImage *image = [[UIImage systemImageNamed:@"sidebar.left" withConfiguration:config] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
|
UIImage *image = [[UIImage systemImageNamed:@"sidebar.left" withConfiguration:config] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
|
||||||
[backButton setImage:image];
|
[backButton setImage:image];
|
||||||
backButton.imageInsets = UIEdgeInsetsMake(20, 10, 0, 0);
|
backButton.imageInsets = UIEdgeInsetsMake(20, 10, 0, 0);
|
||||||
} else {
|
} else {
|
||||||
[backButton setTitle:[LocalizationHelper localizedStringForKey:@"Back"]];
|
[backButton setTitle:[LocalizationHelper localizedStringForKey:@"Collapse"]];
|
||||||
}
|
}
|
||||||
_navItem.leftBarButtonItem = backButton;
|
_navItem.leftBarButtonItem = backButton;
|
||||||
}
|
}
|
||||||
@@ -979,7 +979,7 @@ const int FrontViewPositionNone = 0xff;
|
|||||||
_disconnectButton = [[UIBarButtonItem alloc] init];
|
_disconnectButton = [[UIBarButtonItem alloc] init];
|
||||||
[_disconnectButton setTarget:self];
|
[_disconnectButton setTarget:self];
|
||||||
[_disconnectButton setAction:@selector(disconnectRemoteSession)];
|
[_disconnectButton setAction:@selector(disconnectRemoteSession)];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
[_disconnectButton setTitle:nil];
|
[_disconnectButton setTitle:nil];
|
||||||
UIImage *image = [[UIImage imageNamed:@"disconnect.svg" ] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
|
UIImage *image = [[UIImage imageNamed:@"disconnect.svg" ] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
|
||||||
|
|
||||||
@@ -1002,7 +1002,7 @@ const int FrontViewPositionNone = 0xff;
|
|||||||
if(!_moreButton) _moreButton = [[UIBarButtonItem alloc] init];
|
if(!_moreButton) _moreButton = [[UIBarButtonItem alloc] init];
|
||||||
|
|
||||||
//[moreButton setAction:@selector(moreButtonTapped:)];
|
//[moreButton setAction:@selector(moreButtonTapped:)];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
[_moreButton setTitle:nil];
|
[_moreButton setTitle:nil];
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:23 weight:UIImageSymbolWeightMedium ];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:23 weight:UIImageSymbolWeightMedium ];
|
||||||
UIImage *image = [[UIImage systemImageNamed:@"ellipsis.circle" withConfiguration:config] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
|
UIImage *image = [[UIImage systemImageNamed:@"ellipsis.circle" withConfiguration:config] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
|
||||||
@@ -1039,7 +1039,7 @@ const int FrontViewPositionNone = 0xff;
|
|||||||
|
|
||||||
|
|
||||||
- (void)removeSettingItemSelected{
|
- (void)removeSettingItemSelected{
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
// UIAction* action1 = [self getAllSettingMenuAction];
|
// UIAction* action1 = [self getAllSettingMenuAction];
|
||||||
UIAction* action1 = [self getDoneRemoveSettingAction];
|
UIAction* action1 = [self getDoneRemoveSettingAction];
|
||||||
if (@available(iOS 14.0, *)) _moreButton.menu = [UIMenu menuWithTitle:@"" children:@[action1]];
|
if (@available(iOS 14.0, *)) _moreButton.menu = [UIMenu menuWithTitle:@"" children:@[action1]];
|
||||||
@@ -1051,7 +1051,7 @@ const int FrontViewPositionNone = 0xff;
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)doneRemoveSettingItemSelected{
|
- (void)doneRemoveSettingItemSelected{
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIAction* action1 = [self getAllSettingMenuAction];
|
UIAction* action1 = [self getAllSettingMenuAction];
|
||||||
UIAction* action2 = [self getRemoveSettingItemAction];
|
UIAction* action2 = [self getRemoveSettingItemAction];
|
||||||
if (@available(iOS 14.0, *)) _moreButton.menu = [UIMenu menuWithTitle:@"" children:@[action1, action2]];
|
if (@available(iOS 14.0, *)) _moreButton.menu = [UIMenu menuWithTitle:@"" children:@[action1, action2]];
|
||||||
@@ -1146,7 +1146,7 @@ const int FrontViewPositionNone = 0xff;
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)favoriteSettingSelected {
|
- (void)favoriteSettingSelected {
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIAction* action1 = [self getAllSettingMenuAction];
|
UIAction* action1 = [self getAllSettingMenuAction];
|
||||||
UIAction* action2 = [self getRemoveSettingItemAction];
|
UIAction* action2 = [self getRemoveSettingItemAction];
|
||||||
if (@available(iOS 14.0, *)) _moreButton.menu = [UIMenu menuWithTitle:@"" children:@[action1, action2]];
|
if (@available(iOS 14.0, *)) _moreButton.menu = [UIMenu menuWithTitle:@"" children:@[action1, action2]];
|
||||||
@@ -1157,7 +1157,7 @@ const int FrontViewPositionNone = 0xff;
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)allSettingSelected {
|
- (void)allSettingSelected {
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIAction* action1 = [self getFavoriteMenuAction];
|
UIAction* action1 = [self getFavoriteMenuAction];
|
||||||
if (@available(iOS 14.0, *)) _moreButton.menu = [UIMenu menuWithTitle:@"" children:@[action1]];
|
if (@available(iOS 14.0, *)) _moreButton.menu = [UIMenu menuWithTitle:@"" children:@[action1]];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -387,7 +387,7 @@ BOOL isCustomResolution(CGSize res) {
|
|||||||
parentStack.translatesAutoresizingMaskIntoConstraints = NO;
|
parentStack.translatesAutoresizingMaskIntoConstraints = NO;
|
||||||
[self.scrollView addSubview:parentStack];
|
[self.scrollView addSubview:parentStack];
|
||||||
[NSLayoutConstraint activateConstraints:@[
|
[NSLayoutConstraint activateConstraints:@[
|
||||||
[parentStack.topAnchor constraintEqualToAnchor:self.scrollView.contentLayoutGuide.topAnchor constant: [self getStandardNavBarHeight] + 13],
|
[parentStack.topAnchor constraintEqualToAnchor:self.scrollView.contentLayoutGuide.topAnchor constant: [self getStandardNavBarHeight]],
|
||||||
[parentStack.bottomAnchor constraintEqualToAnchor:self.scrollView.contentLayoutGuide.bottomAnchor constant:-20],
|
[parentStack.bottomAnchor constraintEqualToAnchor:self.scrollView.contentLayoutGuide.bottomAnchor constant:-20],
|
||||||
[parentStack.centerXAnchor constraintEqualToAnchor:self.view.centerXAnchor constant: 0], //mark: settingMenuLayout
|
[parentStack.centerXAnchor constraintEqualToAnchor:self.view.centerXAnchor constant: 0], //mark: settingMenuLayout
|
||||||
[parentStack.widthAnchor constraintEqualToAnchor:self.view.widthAnchor constant:-20] // section width adjusted here //mark: settingMenuLayout
|
[parentStack.widthAnchor constraintEqualToAnchor:self.view.widthAnchor constant:-20] // section width adjusted here //mark: settingMenuLayout
|
||||||
@@ -404,7 +404,7 @@ BOOL isCustomResolution(CGSize res) {
|
|||||||
- (void)layoutSections{
|
- (void)layoutSections{
|
||||||
MenuSectionView *videoSection = [[MenuSectionView alloc] init];
|
MenuSectionView *videoSection = [[MenuSectionView alloc] init];
|
||||||
videoSection.sectionTitle = [LocalizationHelper localizedStringForKey:@"Video"];
|
videoSection.sectionTitle = [LocalizationHelper localizedStringForKey:@"Video"];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
[videoSection setSectionIcon:[UIImage systemImageNamed:@"airplayvideo"]];
|
[videoSection setSectionIcon:[UIImage systemImageNamed:@"airplayvideo"]];
|
||||||
} else [videoSection setSectionIcon:nil];
|
} else [videoSection setSectionIcon:nil];
|
||||||
|
|
||||||
@@ -417,7 +417,7 @@ BOOL isCustomResolution(CGSize res) {
|
|||||||
|
|
||||||
MenuSectionView *gesturesSection = [[MenuSectionView alloc] init];
|
MenuSectionView *gesturesSection = [[MenuSectionView alloc] init];
|
||||||
gesturesSection.sectionTitle = [LocalizationHelper localizedStringForKey:@"Gestures"];
|
gesturesSection.sectionTitle = [LocalizationHelper localizedStringForKey:@"Gestures"];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
[gesturesSection setSectionIcon:[UIImage systemImageNamed:@"hand.draw"]];
|
[gesturesSection setSectionIcon:[UIImage systemImageNamed:@"hand.draw"]];
|
||||||
} else [gesturesSection setSectionIcon:nil];
|
} else [gesturesSection setSectionIcon:nil];
|
||||||
|
|
||||||
@@ -775,7 +775,7 @@ BOOL isCustomResolution(CGSize res) {
|
|||||||
|
|
||||||
- (void)attachRemoveButtonForStack:(UIStackView* )stack{
|
- (void)attachRemoveButtonForStack:(UIStackView* )stack{
|
||||||
UIButton* button = [UIButton buttonWithType:UIButtonTypeSystem];
|
UIButton* button = [UIButton buttonWithType:UIButtonTypeSystem];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:16 weight:UIImageSymbolWeightMedium];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:16 weight:UIImageSymbolWeightMedium];
|
||||||
[button setImage:[UIImage systemImageNamed:@"minus.circle" withConfiguration:config] forState:UIControlStateNormal];
|
[button setImage:[UIImage systemImageNamed:@"minus.circle" withConfiguration:config] forState:UIControlStateNormal];
|
||||||
} else {
|
} else {
|
||||||
@@ -795,12 +795,15 @@ BOOL isCustomResolution(CGSize res) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)attachInfoTagForStack:(UIStackView* )stack{
|
- (void)attachInfoTagForStack:(UIStackView* )stack{
|
||||||
|
bool usingTextButton = false;
|
||||||
UIButton* button = [UIButton buttonWithType:UIButtonTypeSystem];
|
UIButton* button = [UIButton buttonWithType:UIButtonTypeSystem];
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:13.5 weight:UIImageSymbolWeightBold];
|
UIImageSymbolConfiguration *config = [UIImageSymbolConfiguration configurationWithPointSize:13.5 weight:UIImageSymbolWeightBold];
|
||||||
[button setImage:[UIImage systemImageNamed:@"info.circle" withConfiguration:config] forState:UIControlStateNormal];
|
[button setImage:[UIImage systemImageNamed:@"info.circle" withConfiguration:config] forState:UIControlStateNormal];
|
||||||
} else {
|
} else {
|
||||||
[button setTitle:@"i" forState:UIControlStateNormal];
|
usingTextButton = true;
|
||||||
|
[button setTitle:@"info" forState:UIControlStateNormal];
|
||||||
|
button.titleLabel.font = [UIFont systemFontOfSize:13 weight:UIFontWeightBold];
|
||||||
}
|
}
|
||||||
button.accessibilityIdentifier = @"infoButton";
|
button.accessibilityIdentifier = @"infoButton";
|
||||||
button.translatesAutoresizingMaskIntoConstraints = NO;
|
button.translatesAutoresizingMaskIntoConstraints = NO;
|
||||||
@@ -811,7 +814,7 @@ BOOL isCustomResolution(CGSize res) {
|
|||||||
[stack addSubview:button];
|
[stack addSubview:button];
|
||||||
[NSLayoutConstraint activateConstraints:@[
|
[NSLayoutConstraint activateConstraints:@[
|
||||||
[button.trailingAnchor constraintEqualToAnchor:stack.trailingAnchor constant:-4],
|
[button.trailingAnchor constraintEqualToAnchor:stack.trailingAnchor constant:-4],
|
||||||
[button.topAnchor constraintEqualToAnchor:stack.topAnchor],
|
[button.topAnchor constraintEqualToAnchor:stack.topAnchor constant: usingTextButton ? -2 : 0],
|
||||||
]];
|
]];
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1729,7 +1732,7 @@ BOOL isCustomResolution(CGSize res) {
|
|||||||
for (UIView *subview in view.subviews) {
|
for (UIView *subview in view.subviews) {
|
||||||
if ([subview isKindOfClass:[UILabel class]]) {
|
if ([subview isKindOfClass:[UILabel class]]) {
|
||||||
UILabel *label = (UILabel *)subview;
|
UILabel *label = (UILabel *)subview;
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
label.layer.filters = nil;
|
label.layer.filters = nil;
|
||||||
label.textColor = [ThemeManager textColor];
|
label.textColor = [ThemeManager textColor];
|
||||||
} else {
|
} else {
|
||||||
@@ -1744,7 +1747,7 @@ BOOL isCustomResolution(CGSize res) {
|
|||||||
for (UIView *subview in view.subviews) {
|
for (UIView *subview in view.subviews) {
|
||||||
if ([subview isKindOfClass:[UISegmentedControl class]]) {
|
if ([subview isKindOfClass:[UISegmentedControl class]]) {
|
||||||
UISegmentedControl *selector = (UISegmentedControl *)subview;
|
UISegmentedControl *selector = (UISegmentedControl *)subview;
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
selector.selectedSegmentTintColor = [ThemeManager appSecondaryColor];
|
selector.selectedSegmentTintColor = [ThemeManager appSecondaryColor];
|
||||||
} else {
|
} else {
|
||||||
// Fallback on earlier versions
|
// Fallback on earlier versions
|
||||||
@@ -1768,9 +1771,11 @@ BOOL isCustomResolution(CGSize res) {
|
|||||||
|
|
||||||
- (void)updateTheme{
|
- (void)updateTheme{
|
||||||
self.view.backgroundColor = [ThemeManager appBackgroundColor];
|
self.view.backgroundColor = [ThemeManager appBackgroundColor];
|
||||||
[self updateThemeForLabels:self.view];
|
if (@available(iOS 13.0, *)) {
|
||||||
[self updateThemeForSelectors:self.view];
|
[self updateThemeForLabels:self.view];
|
||||||
[self updateThemeForSliders:self.view];
|
[self updateThemeForSelectors:self.view];
|
||||||
|
[self updateThemeForSliders:self.view];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -555,7 +555,7 @@
|
|||||||
#if TARGET_OS_TV
|
#if TARGET_OS_TV
|
||||||
[_overlayView setFont:[UIFont systemFontOfSize:24]];
|
[_overlayView setFont:[UIFont systemFontOfSize:24]];
|
||||||
#else
|
#else
|
||||||
if (@available(iOS 13.0, *) && false) {
|
if (@available(iOS 13.0, *)) {
|
||||||
[_overlayView setFont:[UIFont monospacedSystemFontOfSize:12 weight:UIFontWeightRegular]];
|
[_overlayView setFont:[UIFont monospacedSystemFontOfSize:12 weight:UIFontWeightRegular]];
|
||||||
} else {
|
} else {
|
||||||
[_overlayView setFont:[UIFont systemFontOfSize:12]];// Fallback on earlier versions
|
[_overlayView setFont:[UIFont systemFontOfSize:12]];// Fallback on earlier versions
|
||||||
|
|||||||
Reference in new issue
Block a user