Repository navigation
Conversation
A long press on the Keyboard button, on every bar (the landscape bar, a phone's row 1, the iPad's key-row cap), opens the Keys menu: Lock Screen (⌃⌘Q), Force Quit… (⌥⌘⎋), Screenshot… (⇧⌘5), Switch to the Last App (⌘⇥), and for a Mac that takes fn, macOS 15's window tiling (Left, Right, Top and Bottom Half, Fill, Center, Return to Previous Size). A device's fn bit (bit 23, the Globe key) reaches the Mac as maskSecondaryFn; the window list gains an additive fnKey. Split from Saffsanity#293, which keeps the iPhone's arrow keys (Saffsanity#287). key-strokes 522 checks, compatibility 154; swift build -c release, only the CaptureProbe warning; the iOS app for the simulator, only the known StreamClient warning.
This was referenced Nov 6, 2026
Open
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part of #272. Split from #293, which keeps the iPhone's arrow keys (#287): one change per pull request.
What it does
maskSecondaryFn. UIKit has no fn flag, so only these shortcuts set it. The window list gains an additivefnKey, sent only from macOS 15 (KeyStrokes.fnKey).Checks
key-strokes: 522 checks. Each shortcut goes through the host's ownKeyStrokes, and its key goes down with exactly its chord, with nothing held after. Its mutants (146 of 146) were run on Keys: the iPhone's arrow keys, a second page of the key row (#287) #293; the checked files are the same here, so they weren't run again.compatibility: 154 checks (36 of 36 mutants on Keys: the iPhone's arrow keys, a second page of the key row (#287) #293, the same files).swift build -c release: only the CaptureProbe warning. The iOS app for the simulator: only the knownStreamClientwarning.What I tried
Problems found, and how they were fixed
fnKeyonly from macOS 15, so the menu hides the tiling elsewhere.Not checked