Commit Graph

38 Commits

Author SHA1 Message Date
ShikiSuen 50396a42c6 Prefs // +onlyLoadFactoryLangModelsIfNeeded. 2022-12-17 14:49:04 +08:00
ShikiSuen d3668d9f0b LMCandidateNode // Use GCD on load. 2022-12-17 14:49:04 +08:00
ShikiSuen 9a58893585 LMI // Apply GCD to all functions loading user dictionaries. 2022-12-17 14:49:04 +08:00
ShikiSuen f80c13331d Repo // Pack InputMode typedefs into Shared package. 2022-12-17 14:49:04 +08:00
ShikiSuen 03d4099894 KeyHandler // Use PrefMgrProtocol delegate to handle UserDefaults. 2022-12-17 14:49:04 +08:00
ShikiSuen 9d077a9d49 Repo // Massive refactor & renovation.
- This commit is a massive refactor update towards the current vChewing codebase, modernizing the entire project structure.
- Put things into packages to boost compile speed.
- Also: IMKCandidates // macOS 10.13 High Sierra compatibility.
- ctlIME // Remove duplicated setValue().
2022-12-17 14:49:04 +08:00
ShikiSuen ce6e8453e7 Removing everything. 2022-12-17 14:23:03 +08:00
Lukhnos Liu 2091c1dc7d Format ObjC code with clang-format, WebKit style 2022-02-19 08:26:28 -08:00
Lukhnos Liu c18f497a55 Use backward-compatible Swift in certain places
Older Swift compiler does not allow declaring certain variables that
have the same names with those outside of their scope, even though the
scoping rules should allow them. This makes the code buildable with
Xcode 12.4 again.
2022-02-02 09:32:02 -08:00
zonble 0ff36cde88 Updates copyright info and CI settings. 2022-02-03 00:46:46 +08:00
zonble b5220cbfe3 Add tests. 2022-02-03 00:02:23 +08:00
zonble ec2fb7023c Renames `var split` to `func split()`. 2022-02-02 23:01:16 +08:00
zonble f39b4fa0bc Moves the Swift StringUtils class to a Swift package. 2022-02-02 22:47:15 +08:00
zonble 0fffe6f082 Fixes test cases. 2022-01-31 14:27:57 +08:00
zonble 169d03ab9b Minor changes on the associated phrases.
1. Removes the tooltip on the candidate window to make the exprience
   looks like OpenVanilla.
2. Adds a Shift key symbol on the key label.
2022-01-31 14:16:16 +08:00
zonble 2ebc789030 Implements the associated phrases function.
Since we use states manage the input flow in McBopomofo, implementing this function becomes easy. What I did is to create a new state, Associated Phrases state, and let the key handler to emit such a state just after emitting a Committing state.

When the input method controller is under Associated Phrase state, it shows the candidate window with a tooltip, and only accept candidate keys with the shift key. The key handler uses the characters without modifiers in an NSEvent object to find if there is any matching candidate label, so I added a new member "inputTextIgnoringModifiers" to KeyHandlerInput.

I use KeyValueBlobReader to read the associated phrases. I use the cin file from OpenVanilla project but removed the head and tail of the file to pass KeyValueBlobReader's validation.
2022-01-31 13:23:49 +08:00
zonble 1c339c622e Loads the user phrases just after the files are changes.
The revision uses a FSEventStream to monitor the change of the folder
that stores user phrases.
2022-01-31 04:29:53 +08:00
zonble 4466564e25 Gives a minial cell size in the horizontal candidate window.
It prevents the size of the window from being always changing when using
the punctuation list.
2022-01-30 08:06:22 +08:00
Weizhong Yang a.k.a zonble 777994edcc Merge pull request #245 from lukhnos/update-copyright-headers
Update copyright headers (fixes #213)
2022-01-19 13:29:23 +08:00
zonble 95f88ce802 Fixes an underlying issue in the tableViewSelectionDidChange method. 2022-01-19 13:20:27 +08:00
Lukhnos Liu 75f321f088 Update copyright headers (fixes #213) 2022-01-18 14:21:55 -08:00
zonble aa9c31ffcf Fixes the location of the tooltip. 2022-01-18 22:04:09 +08:00
zonble 0d80d28e0e Formats Swift code. 2022-01-18 21:16:07 +08:00
zonble 28a9483de8 Adds tests. 2022-01-18 17:45:48 +08:00
zonble 21264a8a27 Adds unit test cases. 2022-01-18 15:38:19 +08:00
Mike Tian-Jian Jiang 720b2347e8 build: makes Xcode 12.4 happy on Catalina with Swift 5.3 2022-01-16 18:42:04 +09:00
zonble 5ce581e0c6 Brings back VXHanConvert. 2022-01-14 22:15:17 +08:00
zonble 3ca0eddd23 Makes some members private. 2022-01-14 02:48:21 +08:00
zonble 536aff1070 Removes unused files. 2022-01-14 01:38:32 +08:00
zonble fcdd59dd6b Wraps OpenCCBridge into a SPM package. 2022-01-14 00:57:41 +08:00
zonble e01eb46c9f Wraps InputSourceHelper to a SPM package. 2022-01-14 00:43:21 +08:00
zonble d4772ffa99 Adds notifier UI to notify user Chinese conversion on/off. 2022-01-13 23:38:56 +08:00
zonble 366453820d Adds a tiny tooltop for shift-left/right selections. 2022-01-13 21:47:52 +08:00
Weizhong Yang a.k.a zonble fb513f51b0 Merge pull request #216 from zonble/dev/lm_management
Introduces custom excluded phrases
2022-01-12 13:25:06 +08:00
Lukhnos Liu 7c354a5b6c Fix regression in vertical candidate UI
The table view style must be set before it's added as the scroll view's
content view. See [1].

[1] https://github.com/openvanilla/McBopomofo/blob/1.1/Source/CandidateUI/VTVerticalCandidateController.m#L110
2022-01-11 20:43:31 -08:00
zonble f339948219 Fixes duplicated code and typos. 2022-01-11 13:46:29 +08:00
zonble 52bf2d67c5 Updates copyright information. 2022-01-11 01:13:28 +08:00
zonble 61e2751702 Converts candidate UI to a Swift package. 2022-01-11 01:07:17 +08:00