ShikiSuen
0a711697bb
InputHandler // Reorder when `%quick` inputs are handled.
2023-06-27 15:40:01 +08:00
ShikiSuen
7df892c541
InputHandler // Use .ofSymbolTable() to handle `%symboldef`.
2023-06-27 15:40:01 +08:00
ShikiSuen
a6ccb51172
InputHandler // Constantiate a never-mutate var.
2023-06-27 15:40:01 +08:00
ShikiSuen
276555ed95
Repo // Force Shift+Candidate in `%quick` mode in some cases.
2023-06-18 11:09:30 +08:00
ShikiSuen
2a5f02601c
PrefWindow & PrefUI // Maintenance fix.
2023-06-18 11:09:25 +08:00
ShikiSuen
f38db788a5
PrefMgr // Upgrade sanity check for candidate keys.
2023-06-18 11:09:25 +08:00
ShikiSuen
20368fcd91
SessionCtl // Extract resetCandidateWindowOrigin().
2023-06-18 11:09:25 +08:00
ShikiSuen
adc4d918c6
InputHandler // Lower the priority of handling `%quick`.
2023-06-18 11:09:25 +08:00
ShikiSuen
86e86eedaf
Prefs // State that `%quick` is not ready for IMKCandidates.
2023-06-18 11:09:25 +08:00
ShikiSuen
ba98ebf0a7
InputHandler // Handle inputs for `%quick`.
2023-06-18 11:09:25 +08:00
ShikiSuen
b0c2bfc54e
SessionCtl // Cope with `%quick` candidates.
2023-06-17 16:25:54 +08:00
ShikiSuen
5f2fb57f91
IMEState // Extend isCandidateContainer().
2023-06-17 16:25:54 +08:00
ShikiSuen
a22e396c6f
InputHandler // Accept Shift-combined chars as strokes.
2023-06-17 16:25:54 +08:00
ShikiSuen
7f99b2f76a
SessionCtl // Share isASCIIMode across all sessions for a client.
2023-06-17 16:25:54 +08:00
ShikiSuen
7c64b4aaf4
InputHandler // Fix isConsideredEmptyForNow().
2023-06-17 16:25:54 +08:00
ShikiSuen
f140471995
InputHandler // Also allow Cmd+Shift+Ctrl+[].
2023-06-17 16:25:54 +08:00
ShikiSuen
ffd7db4bca
Repo // Allow hot-toggling IMKCandidates.
2023-06-17 16:25:54 +08:00
ShikiSuen
af715ad8d8
NSEvent // Make .text() safer.
2023-06-17 16:25:54 +08:00
ShikiSuen
d92c5d3669
InputHandler // Use Space to cancel code-point input.
2023-06-17 16:25:54 +08:00
ShikiSuen
950c9ea554
InputHandler // Refactor handleCandidate().
2023-06-17 16:25:54 +08:00
ShikiSuen
8562c35535
InputHandler // Refactor handleInput() to triageInput().
2023-06-17 16:25:54 +08:00
ShikiSuen
05213c04b1
SessionCtl // Keep IMKCandidates shown when needed.
2023-06-17 16:25:54 +08:00
ShikiSuen
e773ae759c
Pref // Again disable enableSwiftUIForTDKCandidates by default.
2023-06-17 16:25:54 +08:00
ShikiSuen
3f0f308c81
Repo // Compatibility with Xcode 15.
2023-06-17 16:25:54 +08:00
ShikiSuen
90f6fa53b8
PrefMgr // Use SwiftUI for TDKCandidates by default.
2023-06-06 00:47:02 +08:00
ShikiSuen
bea40d7e75
InputHandler // Introduce hotkeys for candidate manipulation.
2023-06-06 00:47:02 +08:00
ShikiSuen
bf8d9f30f0
InputHandler // Tweak pipeline for NSEvents with empty texts.
2023-06-06 00:47:02 +08:00
ShikiSuen
53182e2690
IMKCandidates // Implement updateDisplay().
2023-06-06 00:47:02 +08:00
ShikiSuen
730c5b6ff7
IMKCandidates // Update documentation.
2023-06-06 00:47:02 +08:00
ShikiSuen
135b9dc1e4
IMKCandidates // Stop crashing on activating new session.
2023-06-06 00:47:02 +08:00
ShikiSuen
f99c16169e
Repo // Use JSON as factory dictionary format.
2023-06-06 00:47:02 +08:00
ShikiSuen
d269c82bcd
PrefUI // Fix a compilation error happened with Xcode 14.3.
2023-06-06 00:47:02 +08:00
ShikiSuen
682aaf5053
TDKCandidates // Make CandidatePool into a class, etc.
2023-06-06 00:47:02 +08:00
ShikiSuen
fc29b52f8f
SessionCtl // Use selectionRange() and replacementRange().
2023-06-06 00:47:02 +08:00
ShikiSuen
4888a0dc54
SessionCtl // Use annotationSelected().
2023-06-06 00:47:02 +08:00
ShikiSuen
6ab57f5165
Repo // Typo fix: LatinKeyboardMappings.
2023-06-06 00:47:02 +08:00
ShikiSuen
e5a0c34778
Repo // Update CNS tag to 2023-05-19.
2023-05-26 00:37:29 +08:00
ShikiSuen
8811613b10
Repo // Integrate Alvin Liu parser support.
2023-05-26 00:37:29 +08:00
ShikiSuen
a1fd56b872
Repo // Use new tags for pinyin parsers.
2023-05-26 00:37:29 +08:00
ShikiSuen
e9c4f845d6
Repo // Stablize the static AppDelegate instance.
2023-05-26 00:37:29 +08:00
ShikiSuen
e5143b9b4f
SessionCtl // Turn off ASCII mode while switching CHS/CHT.
2023-05-26 00:37:29 +08:00
ShikiSuen
1edce13f67
InputHandler // Show tooltip on overriding previous intonation.
2023-05-26 00:37:29 +08:00
ShikiSuen
6963784e59
InputHander // Show tooltip for standalone intonation marks.
2023-05-26 00:37:29 +08:00
ShikiSuen
ce611799dc
IMEState // Track the index of unfinished readings / strokes.
2023-05-26 00:37:29 +08:00
ShikiSuen
ad950038fd
PrefUI // Bind acceptLeadingIntonations().
2023-05-26 00:37:29 +08:00
ShikiSuen
de56d83484
InputHandler // Bind acceptLeadingIntonations().
2023-05-26 00:37:29 +08:00
ShikiSuen
7fb48357c4
Prefs // Add acceptLeadingIntonations().
2023-05-26 00:37:29 +08:00
ShikiSuen
c946064385
Tekkon // (v1.4.2) Integrate phonabetKeyForQuery().
2023-05-26 00:37:29 +08:00
ShikiSuen
3f427ae94f
InputHandler // Accepting leading intonations.
2023-05-26 00:37:29 +08:00
ShikiSuen
c11cf4200c
InputHandler // Remove (BOOL)keyConsumedByStrokes.
2023-05-26 00:37:29 +08:00
ShikiSuen
dd13a1218e
InputHandler // Simplify handleComposition().
2023-05-26 00:37:29 +08:00
ShikiSuen
a81fe379c2
InputHandler // Fix a fatal error with validity check.
2023-05-26 00:37:29 +08:00
ShikiSuen
8d8c0246fe
PrefUI // Remove useless blank lines.
2023-05-26 00:37:29 +08:00
ShikiSuen
2c3bd26b73
InputHandler // Fix several issues with Pinyin handling.
...
- Stop committing unfinished pinyin.
- Detect isReadingKeyNotEmpty for Tekkon RomajiBuffer.
2023-05-01 21:03:05 +08:00
ShikiSuen
5bdddc069d
SessionCtl // Add switchInputMode() with its menu item.
2023-05-01 21:03:05 +08:00
ShikiSuen
8d9d8e1b23
i18n // Fix certain localization keys.
2023-05-01 21:03:05 +08:00
ShikiSuen
7d776baed5
IMEState // Remove useless variables, etc.
...
* Also reordering certain variables.
2023-05-01 21:03:05 +08:00
ShikiSuen
b1f256ef05
SessionCtl // Use AttributeStrings generated by new methods.
2023-05-01 21:03:05 +08:00
ShikiSuen
1e27947579
IMEState // Get marking attributes from SessionCtl.
2023-05-01 21:03:05 +08:00
ShikiSuen
3b85bd6d7d
SessionCtl // Implement selectionRange(), etc.
2023-05-01 21:03:05 +08:00
ShikiSuen
b4d6d54f57
i18n // Fix certain descriptions.
2023-05-01 21:03:05 +08:00
ShikiSuen
3aeb865bda
SessionCtl // Allow non-Qwerty layouts for certain parsers.
2023-05-01 21:03:05 +08:00
ShikiSuen
8bc621f126
NSEventImpl // Implement .layoutTranslated().
2023-05-01 21:03:05 +08:00
ShikiSuen
96e63ce5cb
CtlPrefWindow // clang-format.
2023-05-01 21:03:05 +08:00
ShikiSuen
5fb420adf1
Main // Use system NSSound by default.
2023-04-15 15:08:38 +08:00
ShikiSuen
4947f49043
SessionCtl // Again stop handling nulled NSEvents.
2023-04-15 15:08:38 +08:00
ShikiSuen
a031c0d61b
Repo // Always fix input mode on activateServer().
2023-04-05 20:26:07 +08:00
ShikiSuen
553b493006
PrefWindow // Dynamically render the parser menu.
2023-04-05 20:26:07 +08:00
ShikiSuen
49dd4b1a9a
Repo // Add Wade-Gyles pinyin support.
2023-04-05 20:26:07 +08:00
ShikiSuen
a6542df9bc
InputHandler // Also update marker when previewing candidates.
2023-04-05 20:26:07 +08:00
ShikiSuen
650dbc13c8
IMEStateData // Prevent cursors from being out of bounds.
2023-04-05 20:26:07 +08:00
ShikiSuen
421268e620
SessionCtl // Use hidePalettes() when needed.
2023-04-05 20:26:07 +08:00
ShikiSuen
0639e9e289
Revert "SessionCtl // Use GCD for certain state tasks."
...
This reverts commit 852eed07e2 .
2023-04-05 20:26:07 +08:00
ShikiSuen
d386a93784
IMEStateData // Update isFilterable(), etc.
2023-03-23 21:17:43 +08:00
ShikiSuen
78a950e355
LMAssembly & LMMgr // Add countPhrasePairs(), etc.
2023-03-23 21:17:43 +08:00
ShikiSuen
6a2a2de195
InputHandler // Remove useless conditions when nerfing single kanjis.
2023-03-23 21:17:43 +08:00
ShikiSuen
e4275a753e
LMMgr // Concurrency.
2023-03-23 21:17:43 +08:00
ShikiSuen
852eed07e2
SessionCtl // Use GCD for certain state tasks.
2023-03-23 21:17:43 +08:00
ShikiSuen
0f44861440
SessionCtl // Implement hidePalletes().
2023-03-23 21:17:43 +08:00
ShikiSuen
f76d0b6f96
InputHandler // Syncing changes from Megrez v2.6.2-v2.6.3 update.
2023-03-23 21:17:43 +08:00
ShikiSuen
12e9caf557
LMMgr // Fix tagOverrides().
2023-03-12 14:56:14 +08:00
ShikiSuen
03913cb71c
InputHandler // Bring cursor jump to the marking mode.
...
* Certain models of ThinkPad USB Keyboard don't support Alt+Shift+→, hence the choice of Command key as the alternative modifier key for this function.
2023-03-12 14:56:14 +08:00
ShikiSuen
c5b3083b48
InputHandler // Use updatePopupDisplayWithCursor() if needed.
2023-03-12 14:56:14 +08:00
ShikiSuen
e4be1ecd3d
InputHandler // Extend upperCaseLetterKeyBehavior().
2023-03-12 14:56:14 +08:00
ShikiSuen
c2ea8f254d
Prefs // Extend upperCaseLetterKeyBehavior().
2023-03-12 14:56:14 +08:00
ShikiSuen
0423ce727c
SessionCtl // Implement updatePopupDisplayWithCursor().
2023-03-12 14:56:14 +08:00
ShikiSuen
b44a8d1a59
SessionCtl // Implement candidatePairHighlightChanged().
2023-03-10 16:02:08 +08:00
ShikiSuen
79aa073b7a
InputHandler // Implement previewCompositionBufferForCandidate().
2023-03-10 16:02:08 +08:00
ShikiSuen
8535fc1711
Repo // Sync changes from Megrez v2.6.0 update.
2023-03-10 16:02:08 +08:00
ShikiSuen
22ead33ba9
SessionCtl // Refactor candidatePairSelectionConfirmed().
2023-03-10 16:02:08 +08:00
ShikiSuen
625897a744
Repo // Call candidatePairHighlightChanged() when appropriate.
2023-03-10 16:02:08 +08:00
ShikiSuen
fc49bebc5d
Repo // API changes for further purposes.
2023-03-10 16:02:08 +08:00
ShikiSuen
a2f5606579
Repo // Add parameter names for ([String], String).
2023-03-10 16:02:08 +08:00
ShikiSuen
e6696d910d
Repo // Refactoring the entire LMMgr.
2023-03-10 16:02:08 +08:00
ShikiSuen
41339a1c61
SessionCtl // Change the condition of areWeNerfing().
2023-03-10 16:02:08 +08:00
ShikiSuen
164366d8fa
SessionCtl // Implement the alternative init().
2023-03-10 16:02:08 +08:00
ShikiSuen
44dc2ee267
SessionCtl // Fix a format mistake in Caps Lock notification text.
2023-03-10 16:02:08 +08:00
ShikiSuen
04cb05ea34
PrefUI // Sync changes.
2023-03-07 18:38:59 +08:00
ShikiSuen
8541c3b9e6
PrefUI // Use AppStorage to handle UserDefaults, plus comment fix.
2023-03-07 18:38:59 +08:00
ShikiSuen
3ec0753686
AppDelegate // Fix odd preferences first.
2023-03-07 18:38:59 +08:00