Skip to content

Releases: LeanBitLab/LeanType

v3.9.9

Choose a tag to compare

@github-actions github-actions released this 16 Jul 17:13

💖 Support Our Work

  • We are committed to making our apps as powerful and polished as possible. As an entirely community-funded project, we rely on your support to keep going, please consider becoming a sponsor. A huge thank you to all our current supporters!

🚀 What's New

🛠️ Crashes & ANR Fixes

  • Native JNI SIGABRT Fix: Fixed a native crash in the LatinIME keyboard library (libjni_latinime.so) caused by thread-unsafe memory access during dictionary word iteration.
  • Gesture Indexer ANR Fix: Prevented keyboard freezes and Application Not Responding (ANR) errors by running the fallback Java gesture indexer asynchronously on a background thread instead of blocking the main thread.
  • Asynchronous Dictionary Cleanup: Moved dictionary closing and cleanup to a background coroutine to prevent the main thread from blocking on JNI write locks when switching languages.

📖 Dictionary Preservation on Upgrade

  • Manual Import Preservation: Stopped the app from deleting manually imported or replaced custom dictionaries during version upgrades.

📦 Downloads (Choose Your Flavor)

File Description Permissions
1-LeanType_3.9.9-standardfull-release.apk Recommended. Cloud AI + Handwrite Internet
1-LeanType_3.9.9-standard-release.apk Fdroid Build. Standard - Foss only Internet
2-LeanType_3.9.9-offline-release.apk Privacy Focused. Offline AI No Internet
3-LeanType_3.9.9-offlinelite-release.apk Minimalist. Pure FOSS. No AI Integration. No Internet

v3.9.8

Choose a tag to compare

@github-actions github-actions released this 16 Jul 08:06

💖 Support Our Work

  • We are committed to making our apps as powerful and polished as possible. As an entirely community-funded project, we rely on your support to keep going, please consider becoming a sponsor. A huge thank you to all our current supporters!

🚀 What's New

🛠️ Kotlin Gesture Engine Clean Up

  • Removed Experimental Kotlin Engine: Fully removed the experimental Kotlin gesture typing engine (SwipeGestureEngineKotlin.kt), its settings (advanced toggle), its keycode (GESTURE_DEEP_SEARCH), and associated icons/resource strings.

🎨 User Interface & Split Toolbar

  • Translation Selector Fix: Fixed the target language list collapsing or showing only the close button in split/dual toolbar mode.
  • Top Toolbar Visibility: Kept the top toolbar row fully visible when expanding the translation target language selector in split toolbar mode.

⚙️ Database & Reliability

  • Restore SQLite DB Fix: Fixed database restore lockup and write crash (SQLITE_READONLY_DBMOVED) by closing helpers and active Room connections before deleting the database.
  • Native Dictionary SIGSEGV Fix: Prevented a native SIGSEGV crash during dictionary traversal by holding the read lock for the entire traversal duration.

⚡ Welcome Wizard & Setup

  • Wizard Crash Fix: Fixed a ConcurrentModificationException crash during step 3 of the Welcome Wizard when disabling/mutating enabled subtypes.
  • Default Gesture Engine: Changed the default gesture typing engine to "fallback" (pure Java engine) consistently so that it works out of the box, rather than attempting to load "native" when not configured.

📦 Downloads (Choose Your Flavor)

File Description Permissions
1-LeanType_3.9.8-standardfull-release.apk Recommended. Cloud AI + Handwrite Internet
1-LeanType_3.9.8-standard-release.apk Fdroid Build. Standard - Foss only Internet
2-LeanType_3.9.8-offline-release.apk Privacy Focused. Offline AI No Internet
3-LeanType_3.9.8-offlinelite-release.apk Minimalist. Pure FOSS. No AI Integration. No Internet

v3.9.7

Choose a tag to compare

@github-actions github-actions released this 15 Jul 18:52

💖 Support Our Work

  • We are committed to making our apps as powerful and polished as possible. As an entirely community-funded project, we rely on your support to keep going, please consider becoming a sponsor. A huge thank you to all our current supporters!

Notes : you can expect another build today itself

🚀 What's New

🛠️ Compatibility & Reproducible Builds

  • F-Droid Reproducible Build Fix: Forced android.enableR8.fullMode to false in settings.gradle to resolve compiler output differences between build environments, ensuring consistent build hashes.

⚡ Performance & Focus Latency

  • Android 17 Startup Optimization: Resolved IME startup and focus latency on Android 17 by caching layouts and state settings, bypassing redundant settings reloads.

🎨 User Interface & Styling

  • Themed Translation Bar Layout: Styled button layouts for the horizontal language selector bar and aligned text colors with standard key themes for higher contrast. Fixed horizontal width constraint that pushed the close button off-screen.
  • Toolbar Swipe-to-Dismiss: Added support for swiping to close/dismiss the toolbar.
  • Sorted Translation Target Languages: Sorted the translation language selector dynamically to show last used target languages first.

📖 Language & Corrective Dictionaries

  • Turkish Case-Folding Blacklist Fix: Fixed Turkish word blacklist filtering by processing case-folding logic using the Turkish locale directly, correctly treating dotless ı and dotted i as independent characters.
  • Dictionary Upgrade & Protection: Added support for in-app dictionary upgrades and protected user-downloaded dictionaries from accidental deletion.
  • Multilingual Settings Visibility: Fixed the multilingual settings option to show when at least one secondary language/layout is enabled.
  • Immediate Download Status Refresh: Ensured the dictionary installation status refreshes immediately after downloading from the missing dictionary dialog.

📦 Downloads (Choose Your Flavor)

File Description Permissions
1-LeanType_3.9.7-standardfull-release.apk Recommended. Cloud AI + Handwrite Internet
1-LeanType_3.9.7-standard-release.apk Fdroid Build. Standard - Foss only Internet
2-LeanType_3.9.7-offline-release.apk Privacy Focused. Offline AI No Internet
3-LeanType_3.9.7-offlinelite-release.apk Minimalist. Pure FOSS. No AI Integration. No Internet

v3.9.6

Choose a tag to compare

@github-actions github-actions released this 12 Jul 18:51

💖 Support Our Work

  • We are committed to making our apps as powerful and polished as possible. As an entirely community-funded project, we rely on your support to keep going, please consider becoming a sponsor. A huge thank you to all our current supporters!

🚀 What's New

🎨 Customization & Appearance

  • System Emoji Font Toggle: Added a new setting under Appearance settings to use your system's custom emoji font (respects custom emoji modules like Magisk) in the app UI, settings, and search input fields instead of forcing the default compatibility emoji font.
  • App Language Preference: Added a setting under Preferences to select LeanType's display language independent of the overall Android system language.

⌨️ Layouts & Keyboard Behavior

  • Multi-Row Number Rows: Added layout support for multi-row number row configurations.
  • Language Key Switch: Fixed direct IME switch targeting when mapping actions to the language key.
  • Gesture Typing Default: Gesture typing is now disabled by default.

⚡ Performance & Spellchecking

  • Spellcheck Optimizations: Improved spellcheck performance by adding cache lookups, personal dictionary validation, and optimizing regex matching.

📦 Downloads (Choose Your Flavor)

File Description Permissions
1-LeanType_3.9.6-standardfull-release.apk Recommended. Cloud AI + Handwrite Internet
1-LeanType_3.9.6-standard-release.apk Fdroid Build. Standard - Foss only Internet
2-LeanType_3.9.6-offline-release.apk Privacy Focused. Offline AI No Internet
3-LeanType_3.9.6-offlinelite-release.apk Minimalist. Pure FOSS. No AI Integration. No Internet

v3.9.5

Choose a tag to compare

@github-actions github-actions released this 11 Jul 11:07

💖 Support Our Work

  • We are committed to making our apps as powerful and polished as possible. As an entirely community-funded project, we rely on your support to keep going, please consider becoming a sponsor. A huge thank you to all our current supporters!

🚀 What's New

⌨️ Input Method & Keyboard Switching (buggy for now)

  • Direct Switch Target IME: Added a new settings preference to configure a target input method (and subtype) to switch to directly.
  • Custom Switching Keycode: Added a new custom keycode -10076 (SWITCH_TO_USER_IME) that can be mapped to any toolbar key (either click or long-press) to trigger the direct IME switch immediately without showing the system picker.

🎨 Custom Layouts & Navigation

  • Custom Layout Persistence: Track the active custom layout index to ensure that custom layouts are correctly restored after switching between alphabet/symbols or after device orientation changes.
  • Shift Key Behavior: Improved shift key press and release tracking for custom layout states.

🛠️ Bug Fixes & Toggles

  • Toggles & Settings: Added some toggles for more customization
  • Bug Fixes: Resolved some other minor bugs

📦 Downloads (Choose Your Flavor)

File Description Permissions
1-LeanType_3.9.5-standardfull-release.apk Recommended. Cloud AI + Handwrite Internet
1-LeanType_3.9.5-standard-release.apk Fdroid Build. Standard - Foss only Internet
2-LeanType_3.9.5-offline-release.apk Privacy Focused. Offline AI No Internet
3-LeanType_3.9.5-offlinelite-release.apk Minimalist. Pure FOSS. No AI Integration. No Internet

v3.9.4

Choose a tag to compare

@github-actions github-actions released this 09 Jul 15:08

💖 Support Our Work

  • We are committed to making our apps as powerful and polished as possible. As an entirely community-funded project, we rely on your support to keep going, please consider becoming a sponsor. A huge thank you to all our current supporters!

🚀 What's New

👆 Gesture & Swipe Engine (Pure-Java)

  • OutOfMemoryError Fixes: Fixed OOM crashes during gesture index construction. Dictionary words are now streamed directly to avoid massive intermediate maps, and gesture path coordinates are packed into primitive variables to drastically reduce object allocations and GC pressure.
  • Blacklist/Blocked Words Isolation: Prevented blocked words from leaking into user history, next-word suggestions cache, and gesture recognition indexes. Settings changes/removals now trigger immediate cache and gesture index reloads.
  • Cursor Selection Fix: Fixed a bug where moving the cursor under automatic shift mode (such as auto-capitalization at the start of a sentence) would cause text to be unintentionally selected.

📝 Text Expander & Placeholders

  • Sequential Placeholders: Added support for sequential template placeholders in text expander macros.
  • Synchronous Placeholder Deletion: Rewrote placeholder navigation/deletion to execute synchronously via deleteSurroundingText and setSelection to prevent IPC selection desync.
  • Data Backup: Added text expander data backup and restore capabilities, linking preference keys directly to the database backup category.

🎨 Keyboards & Custom Layouts

  • Dynamic Layout Slots: Added support for up to five dynamic custom secondary layouts (custom1 to custom5) with a direct deletion option in layout settings.
  • Layout Compatibility: Resolved issues involving blocked words, custom fonts, and the symbols number row.

🛠️ Suggestions & Settings

  • Long-Press Suggestion Deletion: Enabled long-press on suggestions in MoreSuggestionsView to directly delete/block suggestions. This dialog is wrapped in the platform dialog theme and resolves the BadTokenException by binding to the correct window token.
  • Auto-Correction Triggers: Added a new settings preference to configure whether auto-correction is triggered by the Spacebar, Punctuation, or both.

📦 Downloads (Choose Your Flavor)

File Description Permissions
1-LeanType_3.9.4-standardfull-release.apk Recommended. Cloud AI + Handwrite Internet
1-LeanType_3.9.4-standard-release.apk Fdroid Build. Standard - Foss only Internet
2-LeanType_3.9.4-offline-release.apk Privacy Focused. Offline AI No Internet
3-LeanType_3.9.4-offlinelite-release.apk Minimalist. Pure FOSS. No AI Integration. No Internet

v3.9.3

Choose a tag to compare

@github-actions github-actions released this 07 Jul 18:42

💖 Support Our Work

  • We are committed to making our apps as powerful and polished as possible. As an entirely community-funded project, we rely on your support to keep going, please consider becoming a sponsor. A huge thank you to all our current supporters!

🚀 What's New

📖 Dictionary & Typing Predictions

  • Next-Word Predictions Fallback: Personal dictionary and user history words are now automatically queried and suggested as next-word predictions before you start typing, resolving empty suggestion slots.
  • Same-Language Variant Fallback: Added layout fallback dictionary loading (e.g., English India en_IN can now automatically fallback to use downloaded en_US or en_GB main dictionaries if installed).

👆 Gesture & Swipe Engine (Pure-Java)

  • Gesture Match Optimization: Precomputed string caches and log-frequency calculations, removing GC allocation pressure and speeding up matching loops.
  • Fly-over Segment Matching: Implemented segment-distance checks to accurately match keys crossed during fast, straight gestures.

🛠️ Toolbar & Layout Settings

  • Toolbar Download Button Toggle: Added a new settings toggle to show/hide the dictionary download shortcut button directly in the toolbar.
  • Dictionary Dialog Polish: Cleaned up the dictionary download prompt by removing redundant raw download links.

📦 Downloads (Choose Your Flavor)

File Description Permissions
1-LeanType_3.9.3-standardfull-release.apk Recommended. Cloud AI + Handwrite Internet
1-LeanType_3.9.3-standard-release.apk Fdroid Build. Standard - Foss only Internet
2-LeanType_3.9.3-offline-release.apk Privacy Focused. Offline AI No Internet
3-LeanType_3.9.3-offlinelite-release.apk Minimalist. Pure FOSS. No AI Integration. No Internet

v3.9.2

Choose a tag to compare

@github-actions github-actions released this 07 Jul 15:49

💖 Support Our Work

  • We are committed to making our apps as powerful and polished as possible. As an entirely community-funded project, we rely on your support to keep going, please consider becoming a sponsor. A huge thank you to all our current supporters!

🚀 What's New

👆 Gesture & Swipe Engine

  • Accuracy Fix (Hitbox Center): Updated mapping logic to use key hitbox center coordinates rather than visual bounds, resolving rightward touch offsets (misrecognitions like "just" registering as "jest").
  • Performance Optimization: Added dynamic threshold early-exit bounds to the L2 gesture matching loop, significantly reducing CPU usage by skipping poor candidates.

🛠️ Visual & Keyboard Settings

  • Accent-colored direct deletion: Added a direct delete button (trash bin icon) in the downloadable dictionary lists to allow quick deletion of other layout dictionaries.
  • Separate Experimental Dictionaries: Fixed a naming/path collision where installing a main dictionary caused the experimental version to show as installed.
  • Missing Dictionary Toolbar Redirect: Redirects missing dictionary button directly to settings rather than showing a placeholder.
  • Reset Prediction Context: Reset word prediction context to the beginning of the sentence on new lines.
  • Backspace Emoji Grouping: Prevented non-emoji symbols (e.g. mathematical operators, box drawings) from being grouped and deleted together under backspace.
  • Custom Translation Target: Added support for custom translation target language options.

📦 Build & Package Size

  • Exclude English Assets: Excluded all prepackaged English dictionary assets from the standard flavor APK builds to optimize package size.

📦 Downloads (Choose Your Flavor)

File Description Permissions
1-LeanType_3.9.2-standardfull-release.apk Recommended. Cloud AI + Handwrite Internet
1-LeanType_3.9.2-standard-release.apk Fdroid Build. Standard - Foss only Internet
2-LeanType_3.9.2-offline-release.apk Privacy Focused. Offline AI No Internet
3-LeanType_3.9.2-offlinelite-release.apk Minimalist. Pure FOSS. No AI Integration. No Internet

v3.9.1

Choose a tag to compare

@github-actions github-actions released this 03 Jul 12:30

💖 Support Our Work

  • We are committed to making our apps as powerful and polished as possible. As an entirely community-funded project, we rely on your support to keep going, please consider becoming a sponsor . A huge thank you to all our current supporters!

🚀 What's New

👆 Gesture & Swipe Engine

  • Pure-Java Fallback Engine (Experimental Alpha): Added an experimental, alpha-stage pure-Java fallback gesture typing engine (SwipeGestureEngine) so gesture typing works out of the box without requiring native libraries (ported from HeliBoard #2351).
  • Engine Selection Toggle: Added settings to toggle between native and fallback gesture typing, dynamically hiding unnecessary settings like native library loader.
  • Self-Learning: Enabled swipe gesture self-learning by indexing user history and personal dictionaries.
  • Ranking & Matching accuracy: Added endpoint-weighted L2 scoring, shape length mismatch penalty, sequence matching penalty, next-word bigram prediction boost, and forgiving start/end matching.
  • Index Building Optimizations: Sped up index building, pruned low-frequency entries, cached charToPos, and optimized memory allocations to avoid ANRs.

🛠️ Visual & Keyboard Settings

  • Space-Strip Punctuation Fix: Restored manual space handling! Spaces are no longer stripped before punctuation marks if they were entered manually (only auto-inserted spaces are stripped).
  • add toggle to disable long-press hint dots on toolbar keys by @mvanhorn in #224
  • Blocked Words Screen: Display total count of blocked words in the dictionary settings title.
  • Text Edit persistence: Added a toggle to persist text edit mode.
  • Setup Wizard Enhancements: Added language layout selection and gesture typing engine selection options to the welcome startup setup wizard.
    Full Changelog: v3.9.0...v3.9.1

📦 Downloads (Choose Your Flavor)

File Description Permissions
1-LeanType_3.9.1-standardfull-release.apk Recommended. Cloud AI Internet
1-LeanType_3.9.1-standard-release.apk Fdroid Build. Standard + No Handwrite Internet
2-LeanType_3.9.1-offline-release.apk Privacy Focused. No Internet. Offline AI Only. No Internet
3-LeanType_3.9.1-offlinelite-release.apk Minimalist. Pure FOSS. No AI code. No Internet

v3.9.0

Choose a tag to compare

@github-actions github-actions released this 29 Jun 18:12

💖 Support Our Work

  • We are committed to making our apps as powerful and polished as possible. As an entirely community-funded project, we rely on your support to keep going, please consider becoming a sponsor or supporting us on Ko-fi. A huge thank you to all our current supporters!

🚀 What's New

🖱️ Text Editing Layout & Navigation

  • JSON-Parsed Edit Layout: Transitioned text editing mode to a parsed JSON structure with a standard 5x4 grid.
  • Active Key Styling: Highlighted select mode, ABC, and backspace key states dynamically with custom colors, dark contrast shading, and text-aware styling.
  • Precise Controls: Added dedicated navigation, selection modifiers on word/page keys, and a dedicated undo action on the edit toolbar.
  • Custom Max Tokens & Colors: Added settings to configure custom max tokens and custom colors for editing layouts.

🎨 Visual & Theme Enhancements

  • Minimalist long-press indicators: Replaced blocky triangle indicators with clean dot icons scaling proportionally to active theme key hints.
  • Balanced toolbar alignment: Standardized uniform key padding and corrected dual-filtering rendering bugs for active toolbar icons.
  • Contrast & Legibility: Fixed contrast issues on other themes and key popups using WCAG contrast ratio legibility rules.

📋 Clipboard & Handwriting Mode

  • Robust Clipboard dismissed states: Fixed a bug where duplicate clipboard change events erroneously restored the dismissed suggestion strip view.
  • Handwriting Close gestures: Exit handwriting mode instantly via a long press on the bottom-row clear key or a tap on the top-row close button.

📚 Bug Fixes & General Refinement

  • Dictionary List & Toggles: Fixed dictionary list toggle state handling and rendering bugs.
  • Audited Cleanups: Optimized paint allocation overhead on critical rendering loops, removed obsolete SpacedTokens, and polished settings navigation.
  • Downloads & Toolbar Settings: Fixed download stability issues and kept toolbar settings visible.
  • Sponsorship & Ko-fi Support: Added a Ko-fi support link in settings and a dedicated Ko-fi button in SponsorDialog.

📦 Downloads (Choose Your Flavor)

File Description Permissions
1-LeanType_3.9.0-standardfull-release.apk Recommended. Cloud AI Internet
1-LeanType_3.9.0-standard-release.apk Fdroid Build. Standard + No Handwrite Internet
2-LeanType_3.9.0-offline-release.apk Privacy Focused. No Internet. Offline AI Only. No Internet
3-LeanType_3.9.0-offlinelite-release.apk Minimalist. Pure FOSS. No AI code. No Internet