Repository navigation
Conversation
4e6e557 to
4cc2980
Compare
The iPhone keyboard bar puts Tab, Ctrl and Esc beside a symbol panel and directional arrows. A tapped panel stays open between symbols; an upward slide picks one symbol on release. On iOS 26 and later the bar uses tinted glass and the stock Paste control. Services can register an optional Remote access key.
4cc2980 to
82873cf
Compare
|
Thanks a lot for this PR. Both the extended keyboard and the multi-arrow button are things users have requested for a long time. I'd have to test it on tiny phone screens (and it's probably a solution to issue #1142, since the iPhone Duo in closed mode does weird things with the toolbar, at least in the simulator). I'd rather keep the current symbols for tab, control and escape, for backward compatibility, documentation, and because existing users do not like when the user interface changes (the switch from four separate arrow buttons to the current combined buttons has already made many people angry, even though it was requested by many other users... and kinda forced by Apple and LiquidGlass). Since the toolbar is defined by a text file, and since we can expect that there will be users that will not like the change, I was thinking we should give users a way to go back to a toolbar with separate arrows. It can be done either with "pkg install separateArrows" or with "config -t separateArrows" (I was already thinking about that change, since there are several AppStore reviews that request having separate up-down-left-right arrows). Of course, since screen width is limited, if there are four buttons for the arrows, there would be no room for the new buttons, but it's the users choice. That's probably best in a separate PR, though, I guess. |
…-toolbar # Conflicts: # a-Shell/SceneDelegate.swift
|
Restored the tab, control and escape symbols in the default iPhone toolbar in commit 56c2408. The symbol buttons and the The text labels |
The iPhone keyboard bar puts Tab, Ctrl and Esc beside a symbol panel and directional arrows. Tap "#+=" to keep the panel open between symbols, slide upward to choose one symbol on release, or swipe down for a period. Tap "#+=" again, tap outside, press Return or hide the keyboard to close it. The panel uses the terminal's chosen font and has separate rounded key faces.
Arrow flicks move once. After choosing a direction, keep holding to repeat; repeats speed up after one and two seconds. A label above the bar shows the direction and the number of moves. Every bar key except the arrows, and every symbol in the panel, gives a light haptic tap on touch down; the arrows and slide selection keep their existing feedback. The bar does not follow the Keyboard Feedback setting. VoiceOver provides named symbol and arrow actions. The bar hides with a hardware keyboard, and Option-Command-T toggles it. Earlier iOS versions use a blur background; earlier iOS and VoiceOver use the symbol menu. Combined-arrow items configured on other devices also use flick gestures and direction-sensitive repeat.
On iOS 26 and later the bar uses regular glass tinted systemGray5. Paste uses UIPasteControl at its intrinsic size, at least five points from the top and bottom of the bar, on iOS 16 and later. Its configuration is immutable, so the control is rebuilt with colors resolved from the bar's appearance each time the bar appears and when the appearance changes. On iOS 26 the bar also floats eight points above the keyboard, and the terminal ends at the top of the bar, or at the top of the panel while it is kept open. Services can register an optional Remote access key.
Checked the bar on an iPhone running iOS 27 in light and dark: Ctrl latched, the pinned panel and a held cell, Paste with known clipboard text, service idle/activity states, and live switches between appearances. Bar keys and panel symbols gave a light haptic tap, and arrows and slide selection felt unchanged. Two successive symbol taps inserted "||" while the panel stayed open and cleared each pressed highlight. Tapping outside or pressing Return closed it in both appearances; hiding the keyboard and one-shot upward selection also passed. The custom toolbar view source typechecked at an iOS 14 deployment target. The README Debug iphoneos build passed from a clean environment with an iOS 15 deployment target and signing disabled.
The antenna key in the screenshots appears when #1110 or #1127 registers a service.
This branch builds on #1141, which keeps the terminal text unscaled while the keyboard animates; until #1141 is merged, this diff includes its commit.