Commit graph

134 commits

Author SHA1 Message Date
sgschantz
0288b72c84 fix(mac): made osk keys visible again
set clipsToBounds to true for osk and osk key views
This property began defaulting to false with the update to
macOS 14 sonoma causing the osk keys to become so large
that they obscured the entire osk view.
Also replaced and few more deprecated properties and functions.
2024-05-10 14:49:34 +07:00
sgschantz
0dbd47d683 fix(mac): replace deprecated API calls
With the move to Xcode 15.3, there are many APIs called from
Keyman for Mac that were deprecated before our minimum supported
version of macOS (now set to 10.13)
2024-05-07 16:29:04 +07:00
sgschantz
62eec26901 replace characters during key processing by using deleted_context field from Core 2024-03-27 10:50:27 +07:00
Marc Durdin
1b88ab99be fix(core): make km_core_state_get_actions() idempotent
Fixes #10582.

Returned struct from the `km_core_state_get_actions()` API is now owned
by the state object. This is a change in API contract. The corresponding
`km_core_actions_dispose()` API has been made private, because there is
never any need for API consumers to call it. As this change is happening
in alpha, we won't bump the ABI version.

`state->app_context` is now guaranteed to be in sync with
`state->context` after `km_core_process_event()`, with the actions
struct populated at that point.

The next and final step in this refactor is to remove the actions queue
altogether from the Core and make that a kmn-only concept, but that will
wait until 18.0. The only consumers of the actions queue are the
kmn-specific interactive debugger in Keyman Developer, and kmn-specific
Input Method eXtensions in Keyman Engine for Windows.
2024-02-01 11:28:08 +07:00
Marc Durdin
cf2d6c4244 chore(mac): remove legacy Core action items references
Relates to #9999.
2024-01-17 14:44:34 +11:00
Marc Durdin
823b7722a0 refactor(mac): remove legacy Core context API calls
Relates to #9999.
2024-01-17 14:44:07 +11:00
Marc Durdin
aea95c4f9d chore(mac): use only debug context functions 2024-01-15 13:12:15 +07:00
Marc Durdin
a1fbbd1ab5 refactor(mac): remove unused context calls 2024-01-15 08:39:30 +07:00
Marc Durdin
9830f9ea24 refactor(core): use km_core_state_context_clear where possible
Relates to #10365.

Use `km_core_state_context_clear()` instead of `km_core_context_clear()`
as part of eliminating use of `km_core_state_context()`.
2024-01-12 12:05:00 +07:00
sgschantz
ccee68cf13 load persisted options and enable unit test 2023-12-18 15:50:39 +07:00
sgschantz
71d4710d89 changes for review comments 2023-12-13 15:40:16 +07:00
sgschantz
ad34af7f74 remove action array optimizer and handler obsoleted by core improvements 2023-11-22 13:43:12 +07:00
sgschantz
d20f636827 disable persist options unit test, enforce emit keystroke returned from keyman core 2023-11-22 10:35:59 +07:00
sgschantz
75a99a940f formatting changes 2023-11-21 10:22:02 +07:00
sgschantz
ada74039e0 consuming actions struct from core 2023-11-03 08:43:37 +07:00
sgschantz
aace9fc9df proper unicode conversion when getting context stringthat containing SMP text; also other clean up in response to review comments 2023-10-30 12:29:51 +07:00
sgschantz
184f56c7aa use core context instead of locally managed context 2023-10-26 15:38:19 +07:00
sgschantz
d87459c3bc update for rename of core filenames and apis 2023-10-23 10:57:32 +07:00
sgschantz
615c9c23d2 limit most log statements to debug mode 2023-10-16 15:26:13 +07:00
sgschantz
a28a7ac775 rename coreWrapper 2023-10-05 09:14:15 +07:00
Shawn Schantz
301ebc25c6
Merge branch 'feature-macos-core' into feature/core/add-core-wrapper 2023-10-05 08:01:50 +07:00
sgschantz
08c1ac9fc1 rename from compatibility to compliance 2023-10-04 17:57:22 +07:00
Marc Durdin
7adc9b5d95 feat(developer): support store(&version) '17.0'
Fixes #9541.

Also adds version 16.0 support to the kmcmplib compiler constants, and
unit tests for both versions. Does not add any support for automatic
version feature detection, because that forces an inverted dependency on
the touch layout compilation phase (done in kmc-kmw), which would be a
significant refactor. This may be something we need to support in the
future.
2023-10-02 15:30:07 +07:00
sgschantz
0a56662ed1 expose context properly in core wrapper 2023-09-27 15:59:26 +07:00
sgschantz
9865c3d6ec set context correctly for unit test 2023-09-27 15:19:16 +07:00
sgschantz
682d99c2cb context simplification, legacy app determination integrated into TextCompatibilityCheck 2023-09-26 10:48:43 +07:00
sgschantz
df3c34a711 add back EventTap function to support left and right modifier keys, do not set NoCaps flag in calls to Core when Caps Lock is off 2023-08-24 14:06:49 +07:00
sgschantz
1efce615f0 pass caps lock value to Keyman Core when processing keys 2023-08-22 10:13:59 +07:00
sgschantz
f57b934257 use helper method for string to unichar string 2023-08-16 15:53:42 +07:00
sgschantz
2cb7458829 successfully loading setting options in core -- not behaving predictably until null terminator added 2023-08-15 14:57:30 +07:00
sgschantz
4010c79bf9 handle PersistOption action; persisting but not loading at startup yet 2023-08-10 11:30:12 +07:00
sgschantz
0b8e3f62b4 remove key processing code from engine and move virtual key map to CoreHelper 2023-08-02 16:01:19 +07:00
sgschantz
b2dce47b3f update context with core when invalidated 2023-07-06 13:57:37 -04:00
sgschantz
7d7fc2e7bc fix or disable failing unit tests 2023-06-01 08:34:31 +07:00
sgschantz
144f4e0b4f added KMActionOperation to batch text inserts and deletes; improved context updates 2023-05-23 15:34:05 +07:00
sgschantz
ce0dc60a18 added KMContext, cleaned up some header comments 2023-05-16 15:22:29 +07:00
sgschantz
13f0055ac9 comment cleanup 2023-05-15 08:50:36 +07:00
sgschantz
1566e06bea broke out CoreActionHandler, new path through InputMethod for Keyman Core action processing 2023-05-05 12:52:18 +07:00
sgschantz
10bf9af6df fix isClientAppLegacy which was always returning true and add unit tests for it 2023-04-11 09:05:52 +07:00
sgschantz
2e28e93bb5 override init to funnel everything to designated initializer for CoreAction 2023-03-27 16:26:32 +07:00
sgschantz
6be8169945 set designated initializer for CoreAction class 2023-03-27 15:55:47 +07:00
sgschantz
29bd741386 added action array optimizer unit tests 2023-03-27 14:33:07 +07:00
sgschantz
7a0eb338c4 added helper and wrapper unit tests 2023-03-21 08:41:41 +07:00
sgschantz
37441c753a specify ctrl and alt only if not right or left ctrl or alt 2023-03-17 09:11:45 +07:00
sgschantz
4316a3ceea modifier conversion support for left and right alt and ctrl keys 2023-03-16 14:25:33 +07:00
sgschantz
0251923ec8 set context in core at init time 2023-03-14 14:03:25 +07:00
sgschantz
bc3c8cdc6b optimize array of actions returned by core to conform to expected actions list 2023-03-14 12:03:54 +07:00
sgschantz
eba89e54cd preliminary integration of keyman core with keyman engine for mac 2023-03-09 14:07:44 +07:00
Steven R. Loomis
ae45295dc6 Merge remote-tracking branch 'upstream/master' into chore/merge-master-a17s5-REDO-epic-ldml 2023-02-03 16:53:35 -06:00
Marc Durdin
067028cec2 chore: revise tag variable name to VERSION_GIT_TAG
Introduce new $VERSION_GIT_TAG environment variable, and update all
references to release@version in all projects to use the new variable.
2023-01-21 17:02:50 +07:00