- controller navigation preparations

- disable tilt button for pencil
- widget picker UI improvement & fixes
- allow triggers to be controller mouse buttons
This commit is contained in:
True Zhuanjia
2026-07-07 16:13:46 +08:00
parent 54c106e01e
commit c968a1df2a
34 changed files with 2048 additions and 1758 deletions
+38 -26
View File
@@ -694,6 +694,36 @@ struct WidgetPickerView: View {
allowsShortcutCombo: false,
forcedComboMode: nil
),
FunctionalButtonOption(
localizationKey: "=absoluteTouchDrag",
cmd: "ABSTCHDRAG",
tip: LocalizationHelper.localizedString(forKey: "Replace mouse button action in single point touch mode with another button temporarily"),
allowsKeyboardCombination: true,
allowsGamepadCombination: true,
allowsSkillCombo: true,
allowsShortcutCombo: false,
forcedComboMode: .skill
),
FunctionalButtonOption(
localizationKey: "=magnifier",
cmd: "MAGNIFIER",
tip: LocalizationHelper.localizedString(forKey: "magnifierTip"),
allowsKeyboardCombination: false,
allowsGamepadCombination: false,
allowsSkillCombo: false,
allowsShortcutCombo: false,
forcedComboMode: .skill
),
FunctionalButtonOption(
localizationKey: "=dummyPad",
cmd: "DUMMYPAD",
tip: LocalizationHelper.localizedString(forKey: "dummyPadTip"),
allowsKeyboardCombination: false,
allowsGamepadCombination: false,
allowsSkillCombo: false,
allowsShortcutCombo: false,
forcedComboMode: .skill
),
FunctionalButtonOption(
localizationKey: "=pressureCurve",
cmd: "PRESSURECURVE",
@@ -745,34 +775,14 @@ struct WidgetPickerView: View {
forcedComboMode: nil
),
FunctionalButtonOption(
localizationKey: "=absoluteTouchDrag",
cmd: "ABSTCHDRAG",
tip: LocalizationHelper.localizedString(forKey: "Replace mouse button action in single point touch mode with another button temporarily"),
allowsKeyboardCombination: true,
allowsGamepadCombination: true,
allowsSkillCombo: true,
allowsShortcutCombo: false,
forcedComboMode: .skill
),
FunctionalButtonOption(
localizationKey: "=magnifier",
cmd: "MAGNIFIER",
tip: LocalizationHelper.localizedString(forKey: "magnifierTip"),
localizationKey: "=disableTilt",
cmd: "DISABLETILT",
tip: LocalizationHelper.localizedString(forKey: "Disable tilt for apple pencil"),
allowsKeyboardCombination: false,
allowsGamepadCombination: false,
allowsSkillCombo: false,
allowsShortcutCombo: false,
forcedComboMode: .skill
),
FunctionalButtonOption(
localizationKey: "=dummyPad",
cmd: "DUMMYPAD",
tip: LocalizationHelper.localizedString(forKey: "dummyPadTip"),
allowsKeyboardCombination: false,
allowsGamepadCombination: false,
allowsSkillCombo: false,
allowsShortcutCombo: false,
forcedComboMode: .skill
forcedComboMode: nil
),
]
@@ -3739,6 +3749,8 @@ struct FunctionalCollectionButton: View {
UIDevice.current.userInterfaceIdiom == .phone ? 8 : 12
}
private let cornerRadius: CGFloat = PublicUtils.isIPhone ? 16 : 24
var body: some View {
Button(action: action) {
Text(LocalizationHelper.localizedString(forKey: item.localizationKey))
@@ -3757,7 +3769,7 @@ struct FunctionalCollectionButton: View {
}
private var backgroundFill: some View {
RoundedRectangle(cornerRadius: 16, style: .continuous)
RoundedRectangle(cornerRadius: cornerRadius, style: .continuous)
.fill(
LinearGradient(
gradient: Gradient(colors: isSelected
@@ -3777,7 +3789,7 @@ struct FunctionalCollectionButton: View {
}
private var borderOverlay: some View {
RoundedRectangle(cornerRadius: 16, style: .continuous)
RoundedRectangle(cornerRadius: cornerRadius, style: .continuous)
.stroke(
isSelected ? Color.orange.opacity(0.75) : Color.white.opacity(0.76),
lineWidth: 1.4