feat(mac): add Keyman to the Mac App Store
- Dominant language
- Pascal
- Stars
- 534
- Forks
- 143
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 113
Description
Instead of distributing Keyman for Mac only through keyman.com, also make it available through the Mac App Store.
This would require the app to be sandboxed, which would probably block some existing functionality. Keyman requires the Accessibility privilege which allows it listen for keydown events and generate keydown events when pressing OSK keys or when generating backspaces and other keys for non-compliant apps.
It appears that the App Sandbox does not allow the Accessibility privilege though this has not been confirmed with testing. It does allow the Input Monitoring privilege which enables the app to use a CGEventTap to listen for keydown events. So the main functionality of Keyman could be supported for compliant apps.
The App Sandbox also blocks an app from killing another application, so the install functionality built into the Keyman Config app planned for Keyman 19 would be unable to kill an outdated Keyman input method to delete it and install a newer version.
More info about the Sandbox and related entitlements and privileges can be found here:
https://developer.apple.com/forums/thread/707325
https://developer.apple.com/documentation/security/protecting-user-data-with-app-sandbox
https://developer.apple.com/forums/thread/811443
https://developer.apple.com/forums/thread/28605
Contributor guide
Assessment
This issue has not been assessed yet.