Tuesday, May 2, 2023

fn Key Reserved for System Applications

Timothy Perfitt:

I saw on Monty that fn-q brings up a new note. So what other shortcuts use the fn key?

  • fn-a: activates item in dock so you can arrow around and space to launch app
  • fn-n: open sidebar
  • fn-c: open control center
  • fn-h: show desktop
  • fn-q: new note

Bearzooka:

  • fn-e: emoji board
  • fn-d: dictation

Peter Maurer:

Today in Apple continuing to lock things down:

macOS uses fn for menu item key equivalents now (e.g., fn-F for full screen), but fn is private. You can’t assign it as a user via System Preferences, and developers can’t assign it to menu items in their apps either. All you get is a T-shirt that says: “NSEventModifierFlagFunction […] is only supported for system-provided menu items; will not be used”

I get Apple’s desire for consistency, but it’s a pain when you’re trying to mimic a system-provided menu item. Cue the silly workaround[…]

Marcin Krzyzanowski notes that the EventModifiers.function symbol is deprecated:

This key modifier is reserved for system applications.

Previously:

Update (2023-05-03): Brian Webster:

I love how fn-c brings up Control Center after which you can do absolutely nothing because Control Center has no keyboard navigation support itself. 🤦‍♂️

Even the associated standalone menus lost keyboard support when they were rewritten using SwiftUI in Big Sur.

8 Comments RSS · Twitter · Mastodon

This doesn't work on Big Sur, or Ventura with a Logitech keyboard. Or could it be keyboard layout / language setting dependent? I use Dutch.

Frankly, this is much better than Apple randomly stealing shortcuts from apps.

For example they added a totally pointless global (!) shortcut for looking up man pages of the selected text. Then every app developer using ⇧⌘A had to change their shortcut.

Better to have a truly separate namespace.

@Ed As discussed in the “Previously” posts, third-party keyboards don’t seem to generate the same event for fn. :-(

@Peter Yes, that makes some sense. Too bad they didn’t figure that out up front.

I wish Apple had just moved to treating the Fn key as an additional modifier, think of all the extra space for mnemonic hot keys and menu command keys that would provide.

Apropos this, I recently (only last night) discovered that Stage Manager on iPad OS _does have keyboard shortcuts_ to move between application groups, mapped to the Globe plus cursor keys.

Somehow Apple failed to implement these in Stage Manager macOS until today (where they would arguably be most useful and available to many more people), and it annoys me a bit that these are limited to Apple-blessed keyboards (I have a Logitech keyboard cover on my iPad)

I don't mind them taking control of the fn key, but I at least wish they'd do so in a consistent manner:

fn-a: starts or stops dock selection.
fn-n: opens or closes desktop sidebar.
fn-c: opens or closes control center.
fn-h: shows or hides desktop (like F11).
fn-q: re-opens the last note you modified. The note must be closed manually.
fn-e: opens the emoji board. The board can only be closed with escape.
fn-d: starts dictation mode if you're in a text field. Dings uselessly otherwise. The mode can only only be stopped with escape.

Keyboard shortcuts for these are also a mess:

fn-q appears as Mission Control -> Quick Note so you change it to a different combination (though only to one not involving fn). You can also disable it entirely.

fn-n appears to be the same as Mission Control -> Show Notification Center, but that shortcut doesn't have a key combination assigned. It's also disabled on my system, while fn-n still works.

fn-h is the same as Mission Control -> Show Desktop which on my machine is currently set to F11. Disabling it doesn't affect fn-h. Maybe the default on new systems is fn-h? I'd test it, but I'm afraid that hitting 'Restore Defaults' will restore the defaults for all keyboard shortcuts and not just the handful that are being displayed.

fn-e doesn't appear to have a shortcut equivalent, though I may just have missed it. (The joy of finding things in System Settings is a different rant.)

Keyboard support just keeps getting worse and worse on the Mac. I can't figure out how to play a video with the keyboard in Photos. https://support.apple.com/guide/photos/play-video-clips-pht6d975c7d/mac

The Option-Space bar to start or stop playback is totally undiscoverable and contradicts every impulse every other app ever has established. Selecting the image should be return instead of space then they could use the obvious option for play/pause.

Leave a Comment