diff --git a/TFI/Platform/MobileTerminalSurface.swift b/TFI/Platform/MobileTerminalSurface.swift index 4bdedd83..7aa95e00 100644 --- a/TFI/Platform/MobileTerminalSurface.swift +++ b/TFI/Platform/MobileTerminalSurface.swift @@ -91,33 +91,6 @@ final class MobileTerminalView: TerminalView { weak var findController: TerminalFindController? - override func inputAccessoryAccessibilityLabel(for item: TerminalInputAccessoryItem) -> String? { - let title: LocalizedStringResource - switch item { - case .esc: title = AppStrings.Terminal.escape - case .tab: title = AppStrings.Terminal.tab - case .ctrl: title = AppStrings.Terminal.control - case .alt: title = AppStrings.Terminal.option - case .command: title = AppStrings.Terminal.commandKey - case .arrowLeft: title = AppStrings.Terminal.leftArrow - case .arrowUp: title = AppStrings.Terminal.upArrow - case .arrowDown: title = AppStrings.Terminal.downArrow - case .arrowRight: title = AppStrings.Terminal.rightArrow - case .paste: title = AppStrings.Common.paste - case .symbol(let symbol): return symbol - case .divider: return nil - } - return String(localized: title) - } - - override func inputAccessoryAccessibilityValue(for activation: TerminalPublicStickyActivation) -> String { - switch activation { - case .inactive: String(localized: AppStrings.Terminal.inactive) - case .armed: String(localized: AppStrings.Terminal.armed) - case .locked: String(localized: AppStrings.Terminal.locked) - } - } - override var keyCommands: [UIKeyCommand]? { var commands = super.keyCommands ?? [] commands.append(findCommand(title: AppStrings.Terminal.findNextInTerminal, modifiers: [])) diff --git a/TFITests/MobileTerminalKeyboardTests.swift b/TFITests/MobileTerminalKeyboardTests.swift index 05b2e0a5..a8f3a3ef 100644 --- a/TFITests/MobileTerminalKeyboardTests.swift +++ b/TFITests/MobileTerminalKeyboardTests.swift @@ -1,7 +1,6 @@ import Foundation import GhosttyTerminal import SwiftUI -import TermindPresentation import Testing import UIKit @@ -21,12 +20,9 @@ struct MobileTerminalKeyboardTests { ]) let bar = try #require(terminal.inputAccessoryView) let buttons = accessoryButtons(in: bar) - #expect(buttons.map(\.accessibilityLabel) == items.compactMap(terminal.inputAccessoryAccessibilityLabel)) + #expect(buttons.map(\.accessibilityLabel) == items.compactMap(\.title)) #expect(items.last == .paste) #expect(buttons.count == 18) - #expect( - terminal.inputAccessoryAccessibilityLabel(for: .command) - == String(localized: AppStrings.Terminal.commandKey)) } @Test func nativeAccessoryKeepsItsGeometryAndAllKeysReachable() throws { @@ -50,28 +46,6 @@ struct MobileTerminalKeyboardTests { } } - @Test func modifierButtonsExposeLocalizedArmedAndLockedStates() throws { - let terminal = MobileTerminalView(frame: .zero) - let bar = try #require(terminal.inputAccessoryView) - for (modifier, item) in [ - (TerminalPublicStickyModifier.ctrl, TerminalInputAccessoryItem.ctrl), (.alt, .alt), (.command, .command), - ] { - let button = try #require( - accessoryButtons(in: bar).first { - $0.accessibilityLabel == terminal.inputAccessoryAccessibilityLabel(for: item) - }) - button.sendActions(for: .touchUpInside) - #expect(terminal.stickyActivation(for: modifier) == .armed) - #expect(button.accessibilityValue == String(localized: AppStrings.Terminal.armed)) - #expect(button.accessibilityTraits.contains(.selected)) - button.sendActions(for: .touchUpInside) - #expect(terminal.stickyActivation(for: modifier) == .locked) - #expect(button.accessibilityValue == String(localized: AppStrings.Terminal.locked)) - button.sendActions(for: .touchUpInside) - #expect(terminal.stickyActivation(for: modifier) == .inactive) - #expect(!button.accessibilityTraits.contains(.selected)) - } - } } /// Hosts the library's actual UIView for the existing opt-in rendering matrix. @@ -269,7 +243,7 @@ private final class KeyboardFixture { let bar = try #require(terminal.inputAccessoryView) return try #require( accessoryButtons(in: bar).first { - $0.accessibilityLabel == terminal.inputAccessoryAccessibilityLabel(for: item) + $0.accessibilityLabel == item.title }) } diff --git a/Termind.xcodeproj/project.pbxproj b/Termind.xcodeproj/project.pbxproj index 353b23cd..293ef0be 100644 --- a/Termind.xcodeproj/project.pbxproj +++ b/Termind.xcodeproj/project.pbxproj @@ -2955,7 +2955,7 @@ repositoryURL = "https://github.com/AkinoKaede/libghostty-spm.git"; requirement = { kind = revision; - revision = 360f20c30a21cde197b31274cf58cd8e30208ad0; + revision = 3b4842d3dd0faaf748f82c561d6eb9589a3a98f6; }; }; TRMD00000000000000100023 /* XCRemoteSwiftPackageReference "openssl-spm" */ = { diff --git a/Termind.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Termind.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index ebe6349b..b2ae8b60 100644 --- a/Termind.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/Termind.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -168,7 +168,7 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/AkinoKaede/libghostty-spm.git", "state" : { - "revision" : "360f20c30a21cde197b31274cf58cd8e30208ad0" + "revision" : "3b4842d3dd0faaf748f82c561d6eb9589a3a98f6" } }, { diff --git a/libghostty-spm b/libghostty-spm index 360f20c3..3b4842d3 160000 --- a/libghostty-spm +++ b/libghostty-spm @@ -1 +1 @@ -Subproject commit 360f20c30a21cde197b31274cf58cd8e30208ad0 +Subproject commit 3b4842d3dd0faaf748f82c561d6eb9589a3a98f6