diff --git a/VoidLink/Base.lproj/iPad.storyboard b/VoidLink/Base.lproj/iPad.storyboard
index 9bdb5960..978e2e6f 100644
--- a/VoidLink/Base.lproj/iPad.storyboard
+++ b/VoidLink/Base.lproj/iPad.storyboard
@@ -399,29 +399,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -1013,6 +990,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1096,8 +1091,8 @@
-
-
+
+
diff --git a/VoidLink/Base.lproj/iPhone.storyboard b/VoidLink/Base.lproj/iPhone.storyboard
index fc2f1085..ed2ca41c 100644
--- a/VoidLink/Base.lproj/iPhone.storyboard
+++ b/VoidLink/Base.lproj/iPhone.storyboard
@@ -1070,29 +1070,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -1497,7 +1474,7 @@
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -1657,8 +1652,8 @@
-
-
+
+
diff --git a/VoidLink/ViewControllers/SettingsViewController.h b/VoidLink/ViewControllers/SettingsViewController.h
index d4f953a6..248f182f 100644
--- a/VoidLink/ViewControllers/SettingsViewController.h
+++ b/VoidLink/ViewControllers/SettingsViewController.h
@@ -72,7 +72,7 @@
@property (strong, nonatomic) IBOutlet UILabel *onscreenControllerLabel;
@property (strong, nonatomic) IBOutlet UISegmentedControl *onScreenWidgetSelector;
//@property (strong, nonatomic) IBOutlet UISegmentedControl *asyncNativeTouchPrioritySelector;
-@property (strong, nonatomic) IBOutlet UISegmentedControl *swapABXYButtonsSelector;
+@property (strong, nonatomic) IBOutlet UISwitch *swapAbxySwitch;
@property (strong, nonatomic) IBOutlet UISegmentedControl *codecSelector;
@property (strong, nonatomic) IBOutlet UISwitch *hdrSwitch;
@property (strong, nonatomic) IBOutlet UISwitch *yuv444Switch;
@@ -91,7 +91,6 @@
@property (strong, nonatomic) IBOutlet UILabel *slideToSettingsDistanceUILabel;
@property (strong, nonatomic) IBOutlet UISlider *slideToMenuDistanceSlider;
@property (strong, nonatomic) IBOutlet UISlider *pointerVelocityModeDividerSlider;
-@property (strong, nonatomic) IBOutlet UILabel *pointerVelocityModeDividerUILabel;
@property (strong, nonatomic) IBOutlet UISlider *touchPointerVelocityFactorSlider;
@property (strong, nonatomic) IBOutlet UILabel *touchPointerVelocityFactorUILabel;
@property (strong, nonatomic) IBOutlet UISlider *mousePointerVelocityFactorSlider;
diff --git a/VoidLink/ViewControllers/SettingsViewController.m b/VoidLink/ViewControllers/SettingsViewController.m
index 63ce7e1d..28ec4ac3 100644
--- a/VoidLink/ViewControllers/SettingsViewController.m
+++ b/VoidLink/ViewControllers/SettingsViewController.m
@@ -1306,7 +1306,7 @@ BOOL isCustomResolution(CGSize res) {
[self.optimizeGamesSwitch setOn: currentSettings.optimizeGames];
[self.framePacingSelector setSelectedSegmentIndex:currentSettings.useFramePacing ? 1 : 0];
[self.multiControllerSwitch setOn:currentSettings.multiController];
- [self.swapABXYButtonsSelector setSelectedSegmentIndex:currentSettings.swapABXYButtons ? 1 : 0];
+ [self.swapAbxySwitch setOn:currentSettings.swapABXYButtons];
[self.gyroModeSelector setSelectedSegmentIndex:currentSettings.gyroMode.intValue];
[self.gyroSensitivitySlider setValue: (uint16_t)(currentSettings.gyroSensitivity.floatValue * 100) animated:YES]; // Load old setting.
@@ -2067,7 +2067,7 @@ BOOL isCustomResolution(CGSize res) {
BOOL showKeyboardToolbar = self.softKeyboardToolbarSwitch.isOn;
BOOL optimizeGames = self.optimizeGamesSwitch.isOn;
BOOL multiController = self.multiControllerSwitch.isOn;
- BOOL swapABXYButtons = [self.swapABXYButtonsSelector selectedSegmentIndex] == 1;
+ BOOL swapABXYButtons = self.swapAbxySwitch.isOn;
NSInteger gyroMode = self.gyroModeSelector.selectedSegmentIndex;
NSInteger emulatedControllerType = [self segmentIndexToControllerType:self.emulatedControllerTypeSelector.selectedSegmentIndex]; //self.emulatedControllerTypeSelector.selectedSegmentIndex;
BOOL audioOnPC = self.audioOnPcSwitch.isOn;
diff --git a/VoidLink/mul.lproj/iPad.xcstrings b/VoidLink/mul.lproj/iPad.xcstrings
index c438cc0e..ec471e46 100644
--- a/VoidLink/mul.lproj/iPad.xcstrings
+++ b/VoidLink/mul.lproj/iPad.xcstrings
@@ -1201,39 +1201,9 @@
}
}
},
- "Dll-7x-18l.text" : {
- "comment" : "Class = \"UILabel\"; text = \"Swap A/B and X/Y Buttons\"; ObjectID = \"Dll-7x-18l\";",
- "extractionState" : "extracted_with_value",
- "localizations" : {
- "en" : {
- "stringUnit" : {
- "state" : "new",
- "value" : "Swap A/B and X/Y Buttons"
- }
- },
- "zh-Hans" : {
- "stringUnit" : {
- "state" : "needs_review",
- "value" : "交换A/B键、X/Y键位置"
- }
- },
- "zh-Hant" : {
- "stringUnit" : {
- "state" : "needs_review",
- "value" : "交換A/B鍵、X/Y鍵位置"
- }
- },
- "zh-HK" : {
- "stringUnit" : {
- "state" : "needs_review",
- "value" : "交換A/B鍵、X/Y鍵位置"
- }
- }
- }
- },
"dpd-Bw-aHE.segmentTitles[0]" : {
"comment" : "Class = \"UISegmentedControl\"; dpd-Bw-aHE.segmentTitles[0] = \"No\"; ObjectID = \"dpd-Bw-aHE\";",
- "extractionState" : "extracted_with_value",
+ "extractionState" : "stale",
"localizations" : {
"en" : {
"stringUnit" : {
@@ -1263,7 +1233,7 @@
},
"dpd-Bw-aHE.segmentTitles[1]" : {
"comment" : "Class = \"UISegmentedControl\"; dpd-Bw-aHE.segmentTitles[1] = \"Yes\"; ObjectID = \"dpd-Bw-aHE\";",
- "extractionState" : "extracted_with_value",
+ "extractionState" : "stale",
"localizations" : {
"en" : {
"stringUnit" : {
@@ -2623,6 +2593,36 @@
}
}
},
+ "OXy-y4-yO4.text" : {
+ "comment" : "Class = \"UILabel\"; text = \"Swap A/B X/Y Buttons\"; ObjectID = \"OXy-y4-yO4\";",
+ "extractionState" : "extracted_with_value",
+ "localizations" : {
+ "en" : {
+ "stringUnit" : {
+ "state" : "new",
+ "value" : "Swap A/B X/Y Buttons"
+ }
+ },
+ "zh-Hans" : {
+ "stringUnit" : {
+ "state" : "translated",
+ "value" : "交换A/B键、X/Y键"
+ }
+ },
+ "zh-Hant" : {
+ "stringUnit" : {
+ "state" : "translated",
+ "value" : "交換A/B鍵、X/Y鍵"
+ }
+ },
+ "zh-HK" : {
+ "stringUnit" : {
+ "state" : "translated",
+ "value" : "交換A/B鍵、X/Y鍵"
+ }
+ }
+ }
+ },
"P34-hO-6cX.title" : {
"comment" : "Class = \"UIBarButtonItem\"; title = \"Duplicate\"; ObjectID = \"P34-hO-6cX\";",
"extractionState" : "extracted_with_value",
diff --git a/VoidLink/mul.lproj/iPhone.xcstrings b/VoidLink/mul.lproj/iPhone.xcstrings
index 7e5bdfff..a26d0f7f 100644
--- a/VoidLink/mul.lproj/iPhone.xcstrings
+++ b/VoidLink/mul.lproj/iPhone.xcstrings
@@ -19,13 +19,13 @@
},
"zh-Hant" : {
"stringUnit" : {
- "state" : "needs_review",
+ "state" : "translated",
"value" : "禁用"
}
},
"zh-HK" : {
"stringUnit" : {
- "state" : "needs_review",
+ "state" : "translated",
"value" : "禁用"
}
}
@@ -49,13 +49,13 @@
},
"zh-Hant" : {
"stringUnit" : {
- "state" : "needs_review",
+ "state" : "translated",
"value" : "允許"
}
},
"zh-HK" : {
"stringUnit" : {
- "state" : "needs_review",
+ "state" : "translated",
"value" : "允許"
}
}
@@ -91,66 +91,6 @@
}
}
},
- "3GB-Km-AL8.segmentTitles[0]" : {
- "comment" : "Class = \"UISegmentedControl\"; 3GB-Km-AL8.segmentTitles[0] = \"No\"; ObjectID = \"3GB-Km-AL8\";",
- "extractionState" : "extracted_with_value",
- "localizations" : {
- "en" : {
- "stringUnit" : {
- "state" : "new",
- "value" : "No"
- }
- },
- "zh-Hans" : {
- "stringUnit" : {
- "state" : "translated",
- "value" : "禁用"
- }
- },
- "zh-Hant" : {
- "stringUnit" : {
- "state" : "needs_review",
- "value" : "關閉"
- }
- },
- "zh-HK" : {
- "stringUnit" : {
- "state" : "needs_review",
- "value" : "關閉"
- }
- }
- }
- },
- "3GB-Km-AL8.segmentTitles[1]" : {
- "comment" : "Class = \"UISegmentedControl\"; 3GB-Km-AL8.segmentTitles[1] = \"Yes\"; ObjectID = \"3GB-Km-AL8\";",
- "extractionState" : "extracted_with_value",
- "localizations" : {
- "en" : {
- "stringUnit" : {
- "state" : "new",
- "value" : "Yes"
- }
- },
- "zh-Hans" : {
- "stringUnit" : {
- "state" : "translated",
- "value" : "启用"
- }
- },
- "zh-Hant" : {
- "stringUnit" : {
- "state" : "needs_review",
- "value" : "啟用"
- }
- },
- "zh-HK" : {
- "stringUnit" : {
- "state" : "needs_review",
- "value" : "啟用"
- }
- }
- }
- },
"3Hh-2q-gas.text" : {
"comment" : "Class = \"UILabel\"; text = \"Preferred Codec\"; ObjectID = \"3Hh-2q-gas\";",
"extractionState" : "extracted_with_value",
@@ -181,36 +121,6 @@
}
}
},
- "4pE-po-Zn1.normalTitle" : {
- "comment" : "Class = \"UIButton\"; normalTitle = \"Edit\"; ObjectID = \"4pE-po-Zn1\";",
- "extractionState" : "stale",
- "localizations" : {
- "en" : {
- "stringUnit" : {
- "state" : "new",
- "value" : "Edit"
- }
- },
- "zh-Hans" : {
- "stringUnit" : {
- "state" : "translated",
- "value" : "编辑"
- }
- },
- "zh-Hant" : {
- "stringUnit" : {
- "state" : "translated",
- "value" : "编辑"
- }
- },
- "zh-HK" : {
- "stringUnit" : {
- "state" : "translated",
- "value" : "编辑"
- }
- }
- }
- },
"4Ul-P6-eUk.text" : {
"comment" : "Class = \"UILabel\"; text = \"Enable PiP\"; ObjectID = \"4Ul-P6-eUk\";",
"extractionState" : "extracted_with_value",
@@ -769,7 +679,7 @@
},
"zh-Hans" : {
"stringUnit" : {
- "state" : "needs_review",
+ "state" : "translated",
"value" : "轻按任意控件加载配置 (各控件独立)"
}
},
@@ -787,36 +697,6 @@
}
}
},
- "885-w2-VAD.text" : {
- "comment" : "Class = \"UILabel\"; text = \"Swap A/B and X/Y Buttons\"; ObjectID = \"885-w2-VAD\";",
- "extractionState" : "extracted_with_value",
- "localizations" : {
- "en" : {
- "stringUnit" : {
- "state" : "new",
- "value" : "Swap A/B and X/Y Buttons"
- }
- },
- "zh-Hans" : {
- "stringUnit" : {
- "state" : "translated",
- "value" : "交换 A/B、 X/Y 键位置"
- }
- },
- "zh-Hant" : {
- "stringUnit" : {
- "state" : "needs_review",
- "value" : "交換A/B鍵、X/Y鍵位置"
- }
- },
- "zh-HK" : {
- "stringUnit" : {
- "state" : "needs_review",
- "value" : "交換A/B鍵、X/Y鍵位置"
- }
- }
- }
- },
"A9r-dE-rT4.segmentTitles[0]" : {
"comment" : "Class = \"UISegmentedControl\"; A9r-dE-rT4.segmentTitles[0] = \"Touchpad\"; ObjectID = \"A9r-dE-rT4\";",
"extractionState" : "extracted_with_value",
@@ -1147,6 +1027,36 @@
}
}
},
+ "cl0-Qm-3kW.text" : {
+ "comment" : "Class = \"UILabel\"; text = \"Swap A/B X/Y Buttons\"; ObjectID = \"cl0-Qm-3kW\";",
+ "extractionState" : "extracted_with_value",
+ "localizations" : {
+ "en" : {
+ "stringUnit" : {
+ "state" : "new",
+ "value" : "Swap A/B X/Y Buttons"
+ }
+ },
+ "zh-Hans" : {
+ "stringUnit" : {
+ "state" : "translated",
+ "value" : "交换 A/B、X/Y 键"
+ }
+ },
+ "zh-Hant" : {
+ "stringUnit" : {
+ "state" : "translated",
+ "value" : "交換A/B鍵、X/Y鍵"
+ }
+ },
+ "zh-HK" : {
+ "stringUnit" : {
+ "state" : "translated",
+ "value" : "交換A/B鍵、X/Y鍵"
+ }
+ }
+ }
+ },
"cti-T5-cSE.text" : {
"comment" : "Class = \"UILabel\"; text = \"Gesture Slide Distance\"; ObjectID = \"cti-T5-cSE\";",
"extractionState" : "extracted_with_value",
@@ -1189,7 +1099,7 @@
},
"zh-Hans" : {
"stringUnit" : {
- "state" : "needs_review",
+ "state" : "translated",
"value" : "导出所有"
}
},
@@ -1603,7 +1513,7 @@
},
"zh-Hans" : {
"stringUnit" : {
- "state" : "needs_review",
+ "state" : "translated",
"value" : "5.1声道"
}
},
@@ -1633,7 +1543,7 @@
},
"zh-Hans" : {
"stringUnit" : {
- "state" : "needs_review",
+ "state" : "translated",
"value" : "7.1声道"
}
},
@@ -2893,7 +2803,7 @@
},
"zh-Hans" : {
"stringUnit" : {
- "state" : "needs_review",
+ "state" : "translated",
"value" : "90°转屏"
}
},
@@ -3199,7 +3109,7 @@
},
"zh-Hant" : {
"stringUnit" : {
- "state" : "needs_review",
+ "state" : "translated",
"value" : "觸控模式"
}
},
@@ -3223,7 +3133,7 @@
},
"zh-Hant" : {
"stringUnit" : {
- "state" : "needs_review",
+ "state" : "translated",
"value" : "喚醒本地軟鍵盤時,抬升串流畫面"
}
},
@@ -3325,36 +3235,6 @@
}
}
},
- "yJC-bq-EOU.text" : {
- "comment" : "Class = \"UILabel\"; text = \"Profile:\"; ObjectID = \"yJC-bq-EOU\";",
- "extractionState" : "stale",
- "localizations" : {
- "en" : {
- "stringUnit" : {
- "state" : "new",
- "value" : "Profile:"
- }
- },
- "zh-Hans" : {
- "stringUnit" : {
- "state" : "needs_review",
- "value" : "当前布局:"
- }
- },
- "zh-Hant" : {
- "stringUnit" : {
- "state" : "needs_review",
- "value" : "当前布局:"
- }
- },
- "zh-HK" : {
- "stringUnit" : {
- "state" : "needs_review",
- "value" : "当前布局:"
- }
- }
- }
- },
"Z9M-yq-an2.title" : {
"comment" : "Class = \"UIBarButtonItem\"; title = \"Import\"; ObjectID = \"Z9M-yq-an2\";",
"extractionState" : "extracted_with_value",