Recent articles (page 1 of 35)
-
Jan 21, 2023
Privacy & Security settings in macOS reset on reboot
Since macOS Monterey 12.6.1, including the current macOS Ventura 13.1, whenever I reboot, my Mac forgets some or all of the applications I’ve given permissions to in the Privacy & Security settings. This can include permissions for Accessibility (1Password, Bartender, Logi Options, etc.), Full Disk Access (iTerm, LaunchBar, Transmit, etc.) and Screen Recording (CleanShot, Keyboard Maestro, ScreenFlow). At different times, a series of escalating fixes is necessary to work around this until the next time that it happens.
But I already said yes! On its first boot, #macOS Ventura 13.2 displayed a prompt that Bartender wanted screen recording access, but after 10 seconds or so the prompt disappeared without any input. I’m hopeful this means that apps requesting these permissions before macOS is ready to grant them will no longer corrupt the permissions database! #Apple
Sadly, #macOS Ventura 13.2 seems no better at remembering the apps I granted Accessibility, Full Disk Access, and Screen Recording permissions to when I reboot. #Apple
tccutil
utility to reset permissions. I’ve had success with doing this for all apps at once:
After running the necessary command(s) and rebooting, the applications will prompt for the access they need again, but this time you’ll be able to add them back into the list of approved applications successfully again. Every now and then, however, an even worse manifestation of this issue may see you looking at a blank list of approved applications in Privacy & Security settings, with every attempt to add an application back onto the list failing silently:tccutil reset Accessibility tccutil reset ScreenCapture tccutil reset SystemPolicyAllFiles
The scary blank list
Surprisingly, when I do this, after rebooting I find that all my previously-approved applications are back in the list! So however this file works, there does seem to be an underlying “source of truth” that doesn’t get clobbered in this process. None of these solutions are permanent. I’ve steadily gotten used to a reboot of my Mac taking 30 minutes out of my day while I sort out broken macOS permissions. I really hope Apple fixes this (assuming it’s their bug) soon! Are you seeing some version of this issue on your Mac? Please reach out and let me know. The biggest mystery about this for me is whether this is a side-effect of some peculiar aspect of my Mac’s setup, or if this is an issue that is affecting everyone using apps that require Accessibility permissions on their Mac.rm ~/Library/Preferences/com.apple.security.KCN.plist
-
Jan 21, 2023
Fix System Beep on Move Editor into Next Group in VS Code
In Visual Studio Code, I frequently want to split the window into two panes to view one file alongside another. The quickest way to do this without my hands leaving the keyboard is to use View: Move Editor into Next Group with the keyboard shortcut ^⌘→ (ctrl-cmd-right arrow).
You can find the command in the Command Palette "noop"
). Simply having these declared as valid keystrokes at the OS level eliminates the system beep that occurs even when a Chromium app accepts and handles the keystroke. In order to establish this, you need to create a ~/Library/KeyBindings/DefaultKeyBinding.dict file. Note that you’ll probably need to create the directory as well, and that the directory name is plural (Bindings), but the file name is singular (Binding). This should be in your user Library folder, not the /Library folder or the /System/Library folder. This should be a text file with these contents:{ "^@\UF701" = "noop"; "^@\UF702" = "noop"; "^@\UF703" = "noop"; }
^
means Ctrl,@
means Command, and\UF701
,\UF702
, and\UF703
are the codes for the three arrow keys. There’s a nice reference Gist for this file’s syntax here. You can download a copy of this file if that’s easier (but you’ll need to extract it from the ZIP archive): DefaultKeyBinding.dict.zip Once you have created this file, restart VS Code (or any other applications where you want to use these keystrokes), or just reboot your system. After that, you should find that the system beeps are gone. I have successfully applied this tweak since macOS Catalina (10.15.2) all the way up to the current macOS Ventura (13.1) to use the default keyboard shortcuts for the View: Move Editor into Next Group and View: Move Editor into Previous Group commands without hearing system beeps each time. -
Jan 21, 2023
Subspace Radio #19: Hero Ship Sacrifices
In Subspace Radio #19, Rob and I splash down in the clear water of San Francisco Bay for the season one finale of Star Trek: Prodigy, Supernova, Parts 1 & 2, before contemplating other heroic sacrifices of starships in Star Trek III: The Search for Spock, The Doomsday Machine (TOS), Yesterday’s Enterprise (TNG), Deadlock (VOY) and Year of Hell, Part II (VOY).
-
Jan 11, 2023
Horizontal Scrolling
My new site design makes heavy use of horizontal scrolling on the home page, with scrollbars hidden. Horizontal scrolling can be accessible, but it takes some work to make it so. This article covers accessibility for keyboard and screen reader users, and users whose pointing devices simply don't support horizontal scrolling! It also breaks down several usability features I added to create a better experience than the native scrollbars they replace.
-
Jan 6, 2023
Subspace Radio #18: The Holodeck
In Subspace Radio #18, Kev & Rob can’t wait for the Star Trek: Prodigy season finale after watching “Ghost in the Machine” and “Mindwalk”. To pass the time, they explore the simulated worlds (and people!) created by the holodeck, sometimes a little too magically, in “Elementary, Dear Data” (TNG), “Ship in a Bottle” (TNG), “His Way” (DS9), “It’s Only a Paper Moon” (DS9), “Booby Trap” (TNG), and “Nothing Human” (VOY).