Commit graph

144 commits

Author SHA1 Message Date
sgschantz
1d5ef914ce fix(mac): adopt unified logging
address review comments
2024-05-27 08:58:25 +07:00
sgschantz
ab98086003 fix(mac): adopt unified logging APIs
remove all references to NSLog
adjust log level for some calls to os_log
Fixes #10997
2024-05-23 15:50:50 +07:00
sgschantz
aff9a0e157 fix(mac): use unified logging APIS
remove logDebugMessage API which calls NSLog and call os_log instead
2024-05-22 19:32:40 +07:00
sgschantz
e4f7f1d1a1 fix(mac): added unified logging to Keyman Engine for mac
first draft, need to remove some debug statements and replace
others that would be more useful
2024-05-21 12:45:17 +07:00
sgschantz
8fa8275584 fix(mac): change to unified logging
delete commented out code and unimplemented method
2024-05-20 08:42:32 +07:00
sgschantz
746149178a chore(mac): re-indenting to 2 spaces
phase two
2024-05-13 17:07:52 +07:00
Shawn Schantz
9dd227ff2d
Merge branch 'master' into chore/mac/11427-indent-2-spaces 2024-05-13 16:24:45 +07:00
sgschantz
67148475c1 chore(mac): re-indent files for tabs equal to two spaces
phase one
2024-05-13 16:16:30 +07:00
Marc Durdin
cd6361810b chore: Merge branch 'master' into chore/merge-beta-into-master-a18s2 2024-05-13 15:55:05 +07:00
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
Steven R. Loomis
6706ae0957 chore(core): km_core_cp -> km_core_cu
- km_core_cp represents a 16 bit code unit, not a code point.

Fixes: #11033
2024-05-02 17:39:15 -05: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