feat(mac): migrate data from Keyman 17 and 18 馃崕 - #16315
Draft
sgschantz wants to merge 20 commits into
Draft
Conversation
provides a simple way for UI to determine what to present to the user also generates events, but these could be generated before the UI has a chance to listen for them
for new installations, check if the input method is enabled and whether it has Accessibility permission before adding those items to the task list as they may be in place from a previous installation
creates custom list of installation state in case some of the installation was done previously checks whether repairs are needed for completed installations fixes bug to kill keyman for CheckAccess call
also fixed bug where InstallState not initialzied when installation evaluation is not happening
this is checked on init to complete an installation also added flag for tracking whether the complete message has been displayed to the user
this ensures that the changes to this published property will result in a SwiftUI notification also made a couple changes in response to devin.ai code review
InstallationState is now only stored in InstallationCheck -- InstallationContainer must access it from there
add setting to allow testing with version mismatch
User Test ResultsTest specification and instructions User tests are not required Test Artifacts |
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.
Migrate the settings stored in UserDefaults and previously installed keyboard packages from their locations in either Keyman 17 or 18 to the new shared locations.
Here is where the keyboard packages are stored for each version
For Keyman 17: ~/Documents/Keyman-Keyboards
For Keyman 18: ~/Library/Application Support/keyman.inputmethod.Keyman/Keyman-Keyboards
For Keyman 19: ~/Library/Group Containers/group.com.keyman/Library/Application Support/Keyman-Packages/
The settings for 17 and 18 are stored in the app defaults for the input method: keyman.inputmethod.Keyman
The settings for 19 are stored in the app defaults for the app group: group.com.keyman
Build-bot: release:mac
Test-bot: skip