Skip to content

Releases: LeanBitLab/LeanType

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

v3.8.9

Choose a tag to compare

@github-actions github-actions released this 27 Jun 22:32

💖 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

🖱️ Touchpad & Text Editing Mode

  • Gboard-style Text Editing Mode: Added a dedicated cursor navigation and editing overlay. Activated from the toolbar, it offers precise DPAD navigation, custom selection mode (Shift + arrows), clipboard actions (Select All, Copy, Cut, Paste), and editing utilities (Backspace, Forward Delete).
  • Dedicated Touchpad settings section: Extracted Touchpad configuration from Advanced Gestures into its own dedicated settings category page.
  • Full-screen Touchpad: Added a preference to automatically hide the suggestion strip and toolbar when Touchpad mode is active, maximizing the touchpad surface area.
  • Touchpad Close Button: Added an overlay close button at the bottom-right corner of the touchpad, styled dynamically according to the active keyboard theme, for quick exit.

📋 Clipboard & Screenshot Suggestions

  • Persistent Suggestions Dismissal: The keyboard now remembers if you dismissed a clipboard text or screenshot suggestion, preventing it from showing up again even across keyboard restarts. The dismissed state automatically resets when a new item is copied.
  • Reduced Suggestion Timeouts: Reduced clipboard and screenshot suggestion timeouts to 1 minute to keep suggestions fresh.

🔤 Text Expander Improvements

  • Shortcut Prefix Fix: Resolved a prefix matching bug where custom prefixes (e.g. * for shortcut g) were prepended twice (matching **g instead of *g), restoring instant and spacebar text expansion.
  • Improved Dialog Layout: Stacked the Prefix and Shortcut input fields vertically inside the Add/Edit Shortcut dialog for better legibility.

📚 Dictionary & Settings Refinement

  • Polished Dictionary Settings UI: Re-designed the layout using modern Material 3 Card components, colorful badges/chips for dictionary types, and uniform utility icon sizes.
  • Smart Language Fallback: Regional variants (e.g., ml-IN) will now fall back to the general parent language dictionary (e.g., ml) if country-specific files are missing, ensuring seamless next-word predictions.
  • Unified Dictionary Toggling: Grouped all dictionary subtypes (including downloaded emoji dictionaries) under a single master toggle per language card, and removed redundant buttons.
  • Aesthetic Filtering: Hidden non-enabled regional variant cards from the settings menu to reduce clutter, while keeping them configurable inside the active language dialog.
  • Download Path Collision Fix: Extracted specific locales from download URLs to prevent file collision and duplicate settings cards.

⚙️ Engine & Compatibility

  • Build Flavor Split: Split standard build into FOSS-compliant "standard" (no ML Kit, F-Droid ready) and "standardfull" (includes ML Kit/Handwriting).
  • Secure Signing Workflow: Added secure CI/CD release build signing workflow for reproducible builds.
  • ABI & Theme Fixes: Re-added armeabi-v7a support to ABI filters, fixed popup key contrast-aware colors on AMOLED black theme, and improved split mode suggestions.

📦 Downloads (Choose Your Flavor)

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

v3.8.8 Release

Choose a tag to compare

@LeanBitLab LeanBitLab released this 23 Jun 15:11

💖 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

  • Exclude non-en-US dictionaries from standard flavor assets to reduce app size
  • Add dynamic dictionary downloader and uninstaller for standard flavor
  • Add download button on keyboard toolbar when layout dictionary is missing
  • Allow deleting downloaded handwriting models in settings
  • Tune double-tap shift timing and improve stability of handwriting gestures
  • Restore close/search icons on clipboard toolbar
  • Fix settings displaying disabled additional subtypes in dictionaries list
  • Keep number row digits when keyboard is shifted to uppercase
  • Fix WindowManager$BadTokenException crash on IME overlay dialogs
  • Fix recently used emojis getting stuck on split toolbar
  • Close emoji search automatically when dictionary download completes
  • Show emoji dictionary download button on split toolbar when missing
  • Show handwriting plugin download button on canvas when missing

📦 Downloads (Choose Your Flavor)

File Description Permissions
1-LeanType_3.8.8-standard-release.apk Recommended. AI Features enabled (Gemini/Groq). Internet
2-LeanType_3.8.8-offline-release.apk Privacy Focused. No Internet. Offline AI Only. No Internet
3-LeanType_3.8.8-offlinelite-release.apk Minimalist. Pure FOSS. No AI code. No Internet

v3.8.7 Release

Choose a tag to compare

@LeanBitLab LeanBitLab released this 22 Jun 14:02

💖 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

📦 Downloads (Choose Your Flavor) (Reuploaded)

File Description Permissions
1-LeanType_3.8.7-standard-release.apk Recommended. AI Features enabled (Gemini/Groq). Internet
2-LeanType_3.8.7-offline-release.apk Privacy Focused. No Internet. Offline AI Only. No Internet
3-LeanType_3.8.7-offlinelite-release.apk Minimalist. Pure FOSS. No AI code. No Internet

v3.8.6 Release

Choose a tag to compare

@LeanBitLab LeanBitLab released this 20 Jun 17:20

💖 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

✍️ Handwriting Input (Plugin-based, standard only)

  • Dynamic Handwriting Support: Support handwriting input using an external plugin APK.
  • Background Model Verification: Moved handwriting model readiness checks to a background thread to prevent main-thread blocking exceptions.
  • Handwriting Canvas Overlay: Added a shortcut overlay on the handwriting canvas when the plugin is missing.
  • Theming & Layout Adjustments: Added action keys to the bottom row, and updated the toolbar icon color to white.
  • Safety & Cache Cleaning: Automatically clear the code cache directory on plugin import/removal, and added MD5 and size validation logging for loaded plugins.

🤖 Offline AI & llama.cpp Migration

  • llama.cpp Backend: Switched local/offline AI backend from ONNX Runtime to llama.cpp (GGUF).
  • Custom Settings: Added settings for custom sampling (temperature, top-p, etc.) and custom system prompts.
  • Improved Prompt Formatting & Stop Sequences: Refined prompt templates, output cleaning, and stop sequence handling for local translation and proofreading models.
  • Dynamic Translation Few-Shotting: Implemented target-language-specific few-shot examples for GGUF-based translation.
  • Performance Improvements: Optimized model load times and reduced proofreading/suggesting latency.
  • Custom Key Token Fix: Fixed JNI and formatting issues causing token loss and hallucination in local models using offline custom keys.

🖱️ Touchpad & Gestures

  • Rich Touchpad Gestures: Reorganized gestures using 1-finger and 2-finger inputs:
    • Double-tap: Select word.
    • Two-finger drag: Move cursor word-by-word.
    • Two-finger tap: Insert space.
    • Two-finger double-tap: Copy or paste.
    • Two-finger triple-tap: Cut or select all.
    • Two-finger swipe up/down: Undo or redo actions.
    • Two-finger hold: Backspace word or selection.
  • Touchpad Mode Auto-Exit: Fixed touchpad mode not exiting when opening the clipboard or emoji views.

📝 Text Expander & Blacklist

  • Regex Expansion Support: Added powerful regex expansion support to the Text Expander.
  • Immediate Expansion & Revert: Added backspace-to-revert (instant undo) and optimized immediate expansion logic.
  • Blocked Words Screen: Added a Blocked Words screen under settings with case-insensitive and regex-based blacklist checks. Prevents user dictionary suggestion leaks.

⚙️ Input, Layout & General Improvements

  • Auto-OTP Suggestion: Added feature to auto-read and suggest OTP from incoming SMS messages.
  • Selective Backup & Restore: Added option to selectively backup and restore settings and dictionaries.
  • Punctuation Auto-Spacing: Automatically strip unnecessary spaces before punctuation marks.
  • Persian Keyboard Tweaks: Changed the default long-press popup key on the letter "ا" in the Persian language layout.
  • Arabic Layout Polish: Aligned Arabic diacritics spacing and optimized Harakat/popup tweaks.
  • Toolbar Arrow Auto-Repeat: Allow auto-repeat cursor movement when holding down the toolbar arrow keys.
  • Network Customization: Added settings to toggle support for insecure HTTP or self-signed certificates for remote AI endpoints.
  • Search screen fixes: Fixed the SearchScreen filtered items auto-refresh issue.

📦 Downloads (Choose Your Flavor)

File Description Permissions
1-LeanType_3.8.6-standard-release.apk Recommended. AI Features enabled (Gemini/Groq). Internet
2-LeanType_3.8.6-offline-release.apk Privacy Focused. No Internet. Offline AI Only. No Internet
3-LeanType_3.8.6-offlinelite-release.apk Minimalist. Pure FOSS. No AI code. No Internet

Built by LeanBitLab

v3.8.5 Release

Choose a tag to compare

@LeanBitLab LeanBitLab released this 06 Jun 07:13

🚀 What's New

📖 Dictionaries

  • Individual Dictionary Toggles: Added support to turn individual dictionaries on or off in the settings. This allows users to enable specialized or job-specific dictionaries (e.g., medical terminology, programming) while disabling others to optimize prediction/suggestion behavior.

🛠️ Toolbar & Customization

  • Toolbar Settings Persistence: Fixed an issue where clicking certain toolbar buttons or clearing text input would cause customized toolbar settings/key visibility toggles to reset or fail to persist.

⌨️ Layouts & Split Mode

  • Split Emoji Search Keyboard: Fixed a bug where the emoji search bottom-row alphabet keyboard did not display in split layout when split keyboard was enabled in landscape mode.

💖 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!

📦 Downloads (Choose Your Flavor)

File Description Permissions
1-LeanType_3.8.5-standard-release.apk Recommended. AI Features enabled. Internet
2-LeanType_3.8.5-offline-release.apk Privacy Focused. Offline AI Only. No Internet
3-LeanType_3.8.5-offlinelite-release.apk Minimalist. No AI code. No Internet

Built by LeanBitLab