Shawn Schantz
d40ca934c6
create separate functions for managing UserData contents of CGEvent
2024-10-17 16:31:00 +07:00
Shawn Schantz
622a0aa698
chore(mac) upgrade sentry to support xcode 16 build
2024-10-17 11:45:12 +07:00
sgschantz
bfeaebfcb8
fix(mac): pass modifier keys with keydown event generated by OSK
...
Fixes : #6578
2024-10-16 15:02:49 +07:00
sgschantz
6abd59bad5
feat(mac): renaming and moved adjustModifiers to KMModifierMapping
...
Fixes : #875
2024-09-27 16:17:31 +07:00
Shawn Schantz
8821a81f19
Merge branch 'master' into feat/mac/933-alt-option-rules
2024-09-26 14:36:45 +07:00
sgschantz
70ed0b5dd4
feat(mac): transform left option modifier to right option
2024-09-26 14:30:09 +07:00
sgschantz
71079a20c5
feat(mac): encapsulate option to alt logic in KMModifierMapping
2024-09-25 16:47:17 +07:00
sgschantz
813da7d618
feat(mac): created CoreKeyboardInfo to analyze key mappings
2024-09-23 14:50:36 +07:00
sgschantz
becea93fa9
change(mac): remove verbose logging option
...
also remove related debug mode code, debug logging
is controlled solely by universal logging settings
Fixes : #11525
2024-09-17 15:36:41 +07:00
Shawn Schantz
492baead2c
Merge pull request #12355 from keymanapp/change/mac/12342-remove-always-show-osk
...
change(mac): remove 'Always show OSK' option
2024-09-17 08:50:18 +07:00
sgschantz
24830f4bc6
change(mac): improved comments and increased delay to 0.25
2024-09-16 10:55:21 +07:00
sgschantz
4ec6144c64
change(mac): added delays before inputmethod state transition
2024-09-13 14:53:16 +07:00
sgschantz
d664797359
change(mac): attempt to fix sequoia failure to deactivate
2024-09-13 13:53:08 +07:00
Shawn Schantz
a50a089f63
Merge branch 'master' into change/mac/12342-remove-always-show-osk
2024-09-12 20:21:44 +07:00
Shawn Schantz
a99ca4f120
change(mac): overhauled logic for determining input method state
...
uses Carbon APIs to determine current input source
This, combined with text input client is used to determine
whether Keyman is truly active or not.
Removed all code executing on delays and immediately
checks state and shows/hides OSK and
enables/disables eventTap.
2024-09-12 19:57:10 +07:00
Darcy Wong
84dbc1042c
chore(common): Update crowdin strings for Italian
2024-09-12 15:56:22 +07:00
sgschantz
b3651f0dfa
change(mac): renamed property and cleaned up comments
...
Fixes : #12342
2024-09-11 11:03:47 +07:00
sgschantz
b8cbf04ff7
change(mac): added KMInputMethodLifecycle
...
clearly manages the state of the input method and notifies
any observers of changes
Fixes : #12342
2024-09-10 16:06:33 +07:00
sgschantz
78fd4ee19b
change(mac): renaming, use client map instead of servers array
2024-09-06 16:41:07 +07:00
sgschantz
a032f80230
change(mac): read and write new osk window state
...
persists state whenever user opens or closes OSK
also records location and size
Fixes : #12342
2024-09-04 16:04:59 +07:00
Shawn Schantz
18e7a1e363
change(mac): remove Always show OSK option
...
add simple flag to indicate whether OSK is shown
2024-09-03 20:24:08 +07:00
sgschantz
f5677782b0
fix(mac): check for macOS 11 for PostEvent access
...
CGPreflightPostEventAccess API should be available
with macOS 10.5 (Catalina) but that does not appear
to be true in experience. Changing to check for 11.0
(Big Sur) before using that API instead.
Fixes : #12295
2024-09-03 13:07:25 +07:00
sgschantz
cc2c917bc2
fix(mac): nil window references after dismissing dialogs
...
also delete commented code
2024-09-02 15:56:50 +07:00
sgschantz
b38700cb19
fix(mac): comment cleanup
2024-09-02 09:34:31 +07:00
sgschantz
19cb236fe5
fix(mac): open download info sheet from config window
...
Rather than opening from the keyboard download window
which is supposed to be closed by the download info
sheet. This prevents the download info sheet from
closing its own parent on which it depends.
2024-08-30 15:05:58 +07:00
Shawn Schantz
d6d9feb64c
Merge branch 'master' into fix/mac/9308-no-package-info
2024-08-30 12:55:23 +07:00
Shawn Schantz
0aa4be5584
Merge pull request #12144 from keymanapp/change/mac/2542-use-partial-keyboard-paths
...
change(mac): store partial path in UserDefaults
2024-08-30 12:36:17 +07:00
Shawn Schantz
a283fd1391
Merge pull request #12106 from keymanapp/change/mac/2542-store-keyboards-elsewhere
...
change(mac): store data in Library directory instead of Documents
2024-08-30 12:35:36 +07:00
sgschantz
9ddb7ba329
change(mac): encapsulate active keyboards access in KMSettingsRepository
2024-08-30 09:38:58 +07:00
sgschantz
569a8a8a49
fix(mac): eliminate all use of deprecated API beginSheetModalForWindow
...
beginSheetModalForWindow:modalDelegate:didEndSelector:contextInfo:
was deprecated in macOS 10.10 and replaced by
beginSheetModalForWindow:completionHandler:
The newer API automatically closes the sheet.
Explicitly closing the sheet also seemed to be causing
the parent windows to close.
Fixes : #9308
2024-08-29 15:38:00 +07:00
Darcy Wong
1d55100cb3
chore(common): Update crowdin strings for Czech
2024-08-29 14:54:48 +07:00
sgschantz
24daed27f7
change(mac): minor comment cleanup
...
Fixes : #2542
2024-08-28 12:54:42 +07:00
Shawn Schantz
31a545bcf2
Merge branch 'change/mac/2542-store-keyboards-elsewhere' into change/mac/2542-use-partial-keyboard-paths
2024-08-28 12:46:27 +07:00
Shawn Schantz
8dd258d485
Merge branch 'master' into change/mac/2542-store-keyboards-elsewhere
2024-08-27 13:09:25 +07:00
sgschantz
ea6e29581b
change(mac): some minor changes after review comments
2024-08-27 13:06:37 +07:00
Shawn Schantz
930221376c
fix(mac): show package info after keyboard install
...
Move to updated APIs that no longer require window dismissal.
Fixes : #9308
2024-08-27 04:19:51 +07:00
Shawn Schantz
2b752bf7ef
Merge branch 'master' into fix/mac/12197-invalid-version-string
2024-08-26 14:02:44 +07:00
sgschantz
24f4a61ada
change(mac): responded to review comments
2024-08-21 17:05:07 +07:00
Shawn Schantz
f074edaccf
Merge branch 'master' into fix/mac/11674-crash-during-compliance-check
2024-08-21 11:19:35 +07:00
sgschantz
a26389bfea
test(mac): removed commented code
2024-08-21 11:12:43 +07:00
sgschantz
5c96f8f769
fix(mac): remove text from short bundle version string
...
in info.plist for both input method and engine, remove
the framing text so that it just contains the version
number triplet
Fixes : #12197
2024-08-20 16:14:40 +07:00
sgschantz
49bfd08fb3
change(mac): persist options fix when dictionary exists
...
testing showed that when an option already existed,
it would be deleted when attempting to update it to
a new value
2024-08-19 12:49:46 +07:00
sgschantz
5364a741da
change(mac): some refactoring
...
Mostly taking advantage of KMSettingsRepository so
that more of the UserDefaults changes happen through it
Still some refactoring remains for active keyboards list
2024-08-16 16:34:19 +07:00
sgschantz
b1685f5865
change(mac): use partial paths in settings
...
converts partial paths to full paths as needed
and vice-versa when moving between file
system access and referencing keyboards
in UserDefaults
2024-08-15 15:41:38 +07:00
sgschantz
1e805949ae
change(mac): store partial path in UserDefaults
2024-08-09 14:49:37 +07:00
Shawn Schantz
05918b5f04
Merge branch 'master' into change/mac/2542-store-keyboards-elsewhere
2024-08-09 14:38:33 +07:00
sgschantz
5c250cdd6e
chore(mac): updated mac project settings to include Greek localization
2024-08-08 12:25:43 +07:00
Darcy Wong
95e0090b74
fix(mac): Specify el.lproj folders
2024-08-07 10:01:42 +07:00
Darcy Wong
83f46c8e5e
chore(common): Update localization for Greek Polytonic
2024-08-07 05:59:35 +07:00
Shawn Schantz
8b408730b7
change(mac): uses Library directory instead of Documents
...
Write new key KMDataModelVersion in UserDefaults with
integer value that determines how data is expected to be stored.
Migrates existing Keyman data to new location if it was written
with an older (or no) version.
Fixes : #2542
2024-08-06 17:14:34 +07:00