Change log since v3.2.3:
- d35d850 chore: update outdated authors file
- 9a23203 chore: upgrade ndk to 23.1.7779620
- 6427e42 fix(core): ignore outdated onUpdateCursorAnchorInfo
- 2d00361 refactor(core): improve the calculation of cursor RectF
- 4a5bf92 fix(core): fix popup position problem when composing text disabled
- 239a62a chore(assets): add notes about margins
- d2c6486 fix(core): fix the position of candidate popup window
- 22ee13c fix(ci): set 90 retention days in commit ci
- c420e62 fix(text): fix onText parsing
- 4552e84 fix(text): fix a stack overflow in TextInputManager.onText
- 7c69105 chore: unify workflow name(ci skip)
- ebf7af0 chore: upgrade opencc to 1.1.3
- 82f6042 pref(core): remove unnecessary
finishComposingText
- 0409095 fix(jni): fix a null pointer check
- 6c89453 chore: upgrade prettytime to 5.0.2
- bcf37bc chore(ci): switch to submodule source code
- 4c231a9 chore: upgrade capnproto to 0.9.1
- 118f7f6 chore(ci): change multiple artifacts to 'trime.zip'
- af542bf chore(ci): skip to install dependency if hit cache
- 224b23e fix(util): clipboard command: do nothing if clipboard is empty
- b24bb12 fix(core, util): fix commands that return non-String CharSequence
- 085d1de fix(text): fix combined shortcuts
- bea11b2 fix(assets): fix the redo shortcut
- 368bd4d refactor(core, text): send shortcuts directly
- 1e77057 refactor(core, text): handle KEYCODE_MENU in Trime directly
- 8823692 chore(CI): enable JNI cache for release CI
- 8c673fb chore(CI): add app/build.gradle to the JNI cache hash
- 27c2198 chore(CI): move cache-hash.sh to script dir
- 2253e08 chore(CI): add JNI cache
- c62d45b fix(core): fix unexpected text clears after popup
- 7e021f4 fix(TextInputManager): fix the %3 argument of commands
- d960a75 fix(EditorInstance): fix UninitializedPropertyAccessException
- 0dee8ee chore: polish English README file
- 676f609 fix: fix broken build ci badge
- 1ea4b1e chore: upgrade code style tools
- 7cfe3ce chore: enable building multiple apks per abi
- e0950e9 chore: remove obsolete gitattributes rules
- 6736263 fix(jni): disable statx
- 93b68b3 chore(jni): allow specifying prebuilt JNI libraries
- 7a1b187 chore: add name and version to artifactory
- 35960c0 chore(jni): enable snappy
- c995915 chore(jni): don't compile library tools
- 8d9f40e chore(jni): use dependencies from librime as much as possible
- e45801a chore(build): add more build variants
- f323fd5 chore(jni): build everything into one library
- d7c04c8 fix(TextInputMangager): move the logic back to the right position
- cb10166 chore: polish gitignore by template
- dc06354 fix(KeyboardView): IllegalFormatConversionException in debug build
- e863ad1 chore: bump version to 3.2.4 for next release cycle
- b6f3253 doc: update pull request template
- 8232e98 chore: remove obsolete submodule config
- 3076e49 chore(submodule): ignore changes that CMake makes
- c096c9b refactor(jni): add the rime plugins back
- d868682 fix(jni): remove unnecessary CACHE entry
- b2bec59 refactor(jni): refactor the cmake files
- a99fb0a fix(KeyboardView): multpoint touch wrongly recognized as swipe
- 04c9591 doc: fix pull request markdown style
- 08c381d doc: update build guide of macOS
- ef786b6 doc: make clear that every commit should be in good state
- bb8ffe5 chore: add theme in bug report template
- 79aac35 refactor(settings): enhance permissions request
- 7a30499 refactor(util): introduce AndroidVersion
- 0de8f23 refactor: apply spotless to unify style
- 5200a7e refactor(settings, lifecycle): fine tune coroutines scope settings
- 843f52d refactor(core): split more code from Trime service
- bfa954a refactor(core): fine tune AlertDialog
- 94d831c refactor(core): fine tune popup window
- 6305d67 refactor(components): migrate AlertDialog to AndroidX
- da18332 refactor(util): fine tune ImeUtils (InputMethodUtils)
- f5ca6bb fix(core): unexpectedly select all action while typing
- fd687dd feat(res): add default system subtype (slogan)
- afc3f2f refactor(core, text): split most code related to text input in Trime
- a4290fa refactor(lifecycle): enhance lifecycle management
- cd018f8 refactor(text): optimize how to recompute tab geometry
- df9c966 refactor(text): reduce redundant code and normalize variable names
- ec8f24c refactor(text): introduce GraphicUtils to Candidate
- da36fa0 refactor(text): Optimize how to recompute tab geometry
- 3f8824d refactor(text): split code related to font customization
- b2580d9 refactor(text): reduce redundant code and normalize variable names
- 902d400 perf: reduce keyboard and one_hand_mode loading time