Skip to content

Releases: sspanak/tt9

v38.0

15 Sep 08:15
Compare
Choose a tag to compare

Next-Generation Typing

This version fixes the crashing when searching for a language and in some other more complex situations. Among the new features are: re-editing words with Backspace, fast word deletion, easier composition of new words, and significantly improved suggestions in Predictive mode.

What's Changed

  • Bugs
    • Fixed crashing when searching for languages
    • Yet another attempt to fix the crash when switching to another keyboard (the Privileged Options problem)
    • Fixed incorrect enforcing of lowercase when typing compound words like 'CD-ROM'
    • Fixed the "il n'y a pas" problem. Single letters were sometimes suggested in alphabetic order instead of by popularity when typing them right after a punctuation mark.
    • (#603) Fixed mixed Dialer/Contacts app always being detected as a dialer, even when it has a text field. This used to make searching for contacts impossible on Cat S22 Flip.
    • (#579) Fixed various issues when typing in Ukrainian
    • Fixed several broken links on the Help screen.
  • Features
    • (#374) Auto space improvements
      • Space is added at the end of a line when this is not the last line.
      • Space is added after digit+currency
      • Space is no longer added after digit+colon making it easier to type time. E.g. "12:30" does not get converted to "12: 30".
    • Backspace improvements
      • (#408) Added a "Fast Delete" option to delete entire words by holding or swiping Backspace.
      • (#534) Added a recomposition option, which allows re-editing words with Backspace.
    • Easier and more clear new word composition. When composing new words, they are now displayed as: "stem... ", and the options: "... +a", "... +b", "... +c", instead of entire words, "stema", "stemb", "stemc" mixed with all other suggestions.
    • (#184) Enhanced word suggestions in Predictive mode. Besides remembering the most frequently used words, TT9 now remembers how words are used together, in pairs. This eliminates the problem of suggesting the same words for a given number combination twice in a row. For example, English: on/no, go/in, am/an, good/gone/home; French: je/le, me/ne; Bulgarian:за/да, се/те; Besides this, it improves the suggestion accuracy in general, making for the best typing experience among all available T9 keyboards at the moment.
    • Reduced the number of words+punctuation combinations only to the punctuation that makes sense
    • Reorganized the typing settings. The Predictive and ABC mode settings are on separate screens now.
    • Reorganized the Debug screen and moved the log messages to a separate screen.
    • Removed the TAB key.
  • Technical
    • Upgraded com.android.application 8.5.2 -> 8.6.0
    • Renamed all SoftKeys for consistency and removed the unused SoftTextEditKey.

Full Changelog: v37.0...v38.0

v37.0

21 Aug 11:30
Compare
Choose a tag to compare

Vox Populi

This release fixes severe bugs that cause crashing when using Voice Input or when switching to another keyboard. It also adds the recently requested dictionary importing, hotkeys for all functions, Catalan language, and small improvements to Bulgarian, English, French, Italian, Portuguese, and Ukrainian.

What's Changed

  • Languages
    • Added Catalan language (#592)
    • Bulgarian: new words, spelling fixes and frequencies update
    • English: added new words
    • Portuguese: added new words
    • French: added "Rammstein" and updated the frequencies
    • Italian
      • restored all accidentally deleted 4-letter words (#601)
      • capitalized some city and personal names
      • removed Roman numbers
    • Ukrainian
      • fixed unexpected word suggestions when typing words with apostrophes (#579)
      • fixed words combining with emojis, instead of suggesting words with apostrophes
  • Bugs
    • improved shutdown cleanup procedure to completely prevent the UI not disappearing when another keyboard is selected, and subsequent crashes (Privileged options problem again)
    • adjusted the word search field and the 'no search result' items minimum height to 48dp
    • patched an Android 9 SDK bug causing IllegalArgumentException when trying to destroy the SpeechRecognizer (#593)
    • fixed incorrect font size of some items on the Settings screen
  • New Stuff
    • all commands can be assigned to hotkeys (#581, #575, #569)
    • moved the Reverse Keypad setting under the Compatibility section
    • adding words is now possible without confirmation (#575)
    • it is now possible to import custom words from a CSV file (#472)
    • added a real help screen instead of the GitHub page link (#9)
    • added a new language selection screen containing more details about each language, and with a possibility to search for languages (#254)
    • Delete Words screen improvements
      • All added words are now displayed when there is no search term, instead of a blank list
      • It is now possible to search words in all languages at the same time
    • emojis are no longer exported in the custom words CSV
  • Technical
    • Code cleanup and small optimizations
    • upgraded com.android.application 8.5.1 -> 8.5.2
    • Documentation update

Full Changelog: v36.0...v37.0

v36.0

21 Jul 10:36
Compare
Choose a tag to compare

Copy-Pasta

This release introduces text editing functionality. You can now select, cut, copy, and paste text as if using a computer keyboard. Also, it fixes several serious bugs, like crashing when stopping the voice input, invalid special characters being suggested in email fields, causing login to be impossible in some apps, and hopefully, the crash when switching to another keyboard on Android 11.

What's Changed

  • New Stuff
    • Added text editing support. It is now possible to select, cut, copy, and paste text from within TT9 (#170)
    • Added TAB key
    • Added a 105% on-screen key height option
    • Added a new Bulgarian word
    • Updated com.android.application 8.5.0 -> 8.5.1
  • Bugs
    • Fixed the "SoftKeyXXX can only be used with a Theme.AppCompat theme" error
    • Fixed the command palette keys having incorrect text size, when the icons are not available
    • Attempted to fix the crash on Android 11, when switching to another keyboard (the "Privileged options must be set at most once" problem).
    • Fixed a crash occurring sometimes when stopping voice input
    • Fixed invalid special characters being suggested in email fields, causing login to be impossible in some apps.

Full Changelog: v35.0...v36.0

v35.0

07 Jul 16:08
Compare
Choose a tag to compare

Finalize the Virtual Keyboard

This version brings many improvements to the Virtual Keyboard, finally making it completely functional. As usual, it also includes several bug fixes and a specific optimization for Xiaomi phones.

Unfortunately, the "Send with OK in Messenger" option had to be disabled due to recent Messenger redesigns that prevented it from working. Suggestions on how to fix the problem are welcome in the corresponding GitHub issue.

What's Changed

  • Virtual On-screen Keypad improvements
    • Added haptic feedback setting (vibration on key press)
    • Nicer Input Mode key icon
    • On devices that do not support all icons, the keys are labeled with appropriate text, instead of displaying squares.
    • The virtual arrow keys can now move the text cursor.
    • Inactive keys are now properly displayed as disabled.
    • The UI can now be resized by either holding and dragging the Settings/Command Palette key or by dragging the Status Bar. When the height becomes too small, it will automatically change the layout to "Function keys" or "Suggestion list only". Respectively, when resizing up, the layout will change to "Virtual Keypad".
    • The height is automatically adjusted when the current application needs more space.
    • Added a key height setting
    • Reduced the maximum width on very large screens (TV sets, tablets in landscape orientation, etc) to prevent the keys from appearing too stretched.
    • Added a setting for centering or aligning the UI to the left/right on large screens.
  • Languages. Fixed the text case of several words in Bulgarian, English, and Portuguese.
  • Bugs
    • Fixed a crash on low-end devices occurring when quickly erasing all text.
    • Fixed the command palette commands not working in invisible mode
    • Fixed only the first word/letter suggestion being accepted in RustDesk, no matter where the scroll position was.
    • Disabled the "Send with OK in Messenger" option, because it no longer works since the June 2024 Messenger update.
    • Fixed the UI not appearing in the Contacts app on Xiaomi phones with Android 12 or higher.
  • Technical
    • Upgraded com.android.application 8.4.2 -> 8.5.0
    • Upgraded gradle 8.6 -> 8.7
    • Documentation update

Full Changelog: v34.0...v35.0

v34.0

21 Jun 08:27
e61bf9b
Compare
Choose a tag to compare

Downloadable Dictionaries

Starting from this release, TT9 is going to be available in two versions: "full" and "lite". The latter will be available only on GitHub. See the documentation for more information.

Besides the above, v34.0 brings the long-awaited Vietnamese language, optimizations for specific devices, and several bug fixes.

What's Changed

  • New Stuff
    • "lite" APK variant (less than 2 Mb of download size). It contains no language dictionaries but instead downloads them from GitHub only when you need them.
    • enabled OK when the command palette is open (#542)
    • the Command Palette key both opens and closes the Command Palette; Backspace also closes the Command Palette (#542)
    • key repeat protection is now enabled by default on Cat S22 Flip and Qin F21 Pro
  • Languages
    • Added Vietnamese (#372)
    • fixed the text case of the Bulgarian word "караш".
  • Bugs
    • fixed dictionary loading time wrongly displayed as -0.0s, when loading more than one language at a time
    • improved dialer detection on Cat S22 to fix the beeps problem, and on Android 14 to fix the UI not appearing on touchscreen phones. (#538)
  • Technical
    • upgraded android.application 8.4.1 -> 8.4.2
    • added a Play Store download badge and updated the badge layout
    • added Demo Mode for enabling all preferences when TT9 is disabled
    • removed an unnecessary separator from the Arabic definition
    • documentation update

Full Changelog: v33.0...v34.0

v33.0

11 Jun 07:21
Compare
Choose a tag to compare

Voice Input

This release introduces two long-awaited features: Voice Input and Command Palette. Additionally, it adds support for more remote control keys and fixes several bugs.

What's Changed

  • New stuff
    • Command Palette (#263)
    • Voice Input (#83)
    • Added support for TV remote keys: Mute, Red, Green, Yellow, Blue (as per the discussion in #483)
  • Bugs
    • The button separators were missing or had incorrect width when the Main View was "Functional Keys".
    • The Main View incorrectly stayed hidden in the Contacts app on touchscreen phones.
    • Fixed the disappearing first letter problem (again) (#468, #533).
    • In Viber, sending a message using its send button, and before accepting a suggestion, caused that suggestion to reappear when attempting to write a new message.
  • Technical
    • Code cleanup
    • Upgraded android.application 8.4.0 -> 8.4.1

Full Changelog: v32.0...v33.0

v32.0

24 May 08:48
Compare
Choose a tag to compare

Language Updates

This release introduces two new languages, Turkish and Hungarian, as well as improvements for English, Greek, Swedish, and Bulgarian. Besides that, it fixes a couple of minor bugs. There are no new features this time.

What's Changed

  • Languages
    • Added Turkish language and menu translations (thanks to @fazilaltinel and @alicanpamay)
    • Added Hungarian (thanks to @gyadam)
    • Fixed several incorrectly capitalized words in English
    • Added missing Greek punctuation marks
    • Bulgarian: updated the word frequencies and added some more words
    • Swedish: added new words and removed some nonsense words
    • Slightly optimized the special character positions
  • Bugs
    • Fixed the suggestions scrolling in the wrong direction in ABC mode, when the system language is right-to-left.
    • Fixed the language not switching automatically, when the current app requests it.
    • Fixed the composing text not appearing when pressing 1-key to type punctuation in 123 mode in non-numeric fields (it only appeared after scrolling)
    • Fixed virtual Backspace not working in limited text fields
    • Improved LG X100S dialer detection to finally fix the double numbers when dialing a number (#300)
    • Fixed typing decimal numbers is not possible in Revolut, because of incorrectly detected field subtype
  • Technical
    • Added a dictionary-testing tool
    • A simpler word frequency normalization algorithm to normalize only the sequence that went over the limit. It is also much faster now because it only needs to process a small number of words instead of the entire language.
    • fixed incorrect validation of words with capital letters upon build time
    • upgraded gradle 8.4 -> 8.6 and android.application 8.3.2 -> 8.4.0

Full Changelog: v31.0...v32.0

v31.0

01 May 20:03
Compare
Choose a tag to compare

More Device Hacks

Continuing from v30.0, this version improves the compatibility on Sonim and LG phones, with more bug fixes, automatic detection of problematic devices, and applying the necessary settings after initial installation.

On the language side, there are two new ones: Czech and Kiswahili, the latter being the first African language, not only in Traditional T9 but among all modern Android 12-key keyboards.

Finally, as usual, you can expect a lot of small optimizations and bug fixes.

What's Changed

  • Languages
    • Added a couple of new Bulgarian, English, and French words
    • Added Czech language (thanks to @lukascalda and @peebee-eu for providing word lists)
    • Added Kiswahili language (thanks to @marvoh for providing a word list)
    • Added some missing translations
  • Bugs
    • Renamed "Stealth" mode to "Invisible" as the former was a bit unclear.
    • Hopefully, fixed the double numbers when dialing on LG X100S (#300)
    • Fixed backspace not working in the numeric fields in some banking applications
    • Fixed a v30.0 regression: ABC mode allowing selection of only the first letter per key when Next Suggestion hotkey is unset
    • Fixed many problems with the OK key on Sonim phones (#393)
    • Fixed the Main View not appearing on Sonim XP3900. Many, many thanks to @wazroth, @asherGe, @neutralinsomniac for testing and helping with ideas on how to fix this dreaded problem. (#393, #495)
    • Fixed an overly complex text capitalization function, which caused the Languages screen to load very slowly. Now it is more than 100 times faster.
  • Features
    • Android 14 is now officially supported. Previously, the highest tested and supported version was 11.
    • It is now possible to adjust the font size on the Settings screen.
    • It is now possible to navigate the Settings using the numeric keypad. For example, clicking the 1-key selects the first option and double-clicking opens it.
    • Added toast notifications when changing the typing mode while the Main View is invisible
    • On initial startup, TT9 will try to apply the most appropriate compatibility settings and select the most convenient screen layout, depending on the device.
    • Reorganized the Settings. Now the compatibility settings are located on the screen where they logically belong to, instead of being all on the Initial Setup screen.
  • Technical
    • Added a Logcat Exporter debugging tool
    • Added documentation notes on how to fix permission issues on Xiaomi phones, which could prevent the virtual on-screen keypad from working. Many thanks to @maverick74 for testing and suggesting a fix. (#490)
    • Code optimizations and cleanup

Full Changelog: v30.0...v31.0

v30.0

15 Apr 12:56
Compare
Choose a tag to compare

Device Hacks

This release focuses on fixing long-standing bugs and issues on specific phones, such as Qin F21 Pro and Sonim XP3800/XP5800. Big thanks to all who supported the project and made it possible to buy a Sonim phone!

The new features include "Stealth" mode for hiding the interface, configurable ABC auto-accept time-out, Croatian language support, and more.

What's Changed

  • Languages
    • Added Croatian language by @danijelt in #484
    • Updated the word frequencies in Bulgarian
    • Added some new words to Bulgarian, English, and French
    • Added some missing translations
  • New Features
    • Added "Stealth" mode. It is now possible to hide the interface completely (#354)
    • Added a status icon to indicate when TT9 is active. Enabling the icon also fixes the Volume key problem on the Qin F21 Pro. (#369)
    • Added support for Channel Up and Channel Down keys on TV remote controls.
    • ABC auto-accept time-out is now adjustable (#474)
    • Added a setting for automatic capitalization after a newline (#477)
    • Replaced the 'dictionary update available' popup with a notification
  • Bugs
    • Fixed incorrect input mode state when trying to type while the dictionary is loading
    • Improved error handling here and there
    • Improved OK/Enter key handling. Special improvements for Sonim XP3800 and XP5800. (#365, #393)
    • Fixed the 'wait for the dictionary to load' message toast being displayed for too long when attempting to press many keys in a short period of time
    • Fixed combined Back/Backspace key not navigating back when the cursor is at the beginning of the field. Also, fixed general Amazon Kindle app issues with navigating back.
    • Fixed the suggestions not being displayed, when attempting to type while the MainView is still hidden (#468)
    • Fixed unexpected text reset when starting to type in a new input field, caused by multiple IME restarts in the same field, causing InputMode re-creation; also reduced the InputMode recreations in general (#468)
    • Fixed Backspace not working properly in Termux, when delayed accept is enabled in ABC mode
    • Fixed status and suggestions disappearing when changing the orientation
    • Fixed special character suggestions not appearing in bank apps (#446)
    • Fixed Backspace not being correctly mirrored for RTL languages, in the small Main View
    • Fixed crashing when the MainView setting is corrupted
  • Technical
    • Major code refactoring, including code style improvements, cleanup, and optimizations
    • Upgraded Gradle 8.2 -> 8.4
    • Upgraded android.application 8.3.0 -> 8.3.2
    • Added new debugging tools for diagnosing device-specific issues easier.
    • Dictionary validation improvements during build time.
  • Documentation
    • Added an installation guide.
    • Fixed grammar, spelling, and punctuation mistakes in all documents.

Full Changelog: v29.0...v30.0

v29.0

18 Mar 08:47
Compare
Choose a tag to compare

Long-awaited Popular Requests, Part 2

As a continuation from the previous release, this one introduces more long-awaited features: added word management (deleting and exporting to a CSV), changing the language while typing, Lithuanian language support, and more. As usual, there are some bug fixes and many small improvements.

What's Changed

  • Languages
    • Added Lithuanian language
    • Added a couple of new English words
  • New Stuff
    • It is now possible to change the language while typing a word. The digit combination will be preserved and the suggestions will be "converted" to the next language, whenever possible. Thanks to @flaviozavan for the idea and the initial work on this.
    • It is now possible to add new emoji using the Add Word function.
    • Added word management options: the words can now be deleted and exported to a CSV.
    • Documentation update (including a link to F-droid, thanks to @offa)
  • Bugs
    • fixed the navigation from dictionary loading notification to the Dictionaries screen
    • fixed the Next Suggestion and Previous Suggestion keys scrolling the wrong way for RTL languages
    • fixed OK and Next Language buttons being incorrectly swapped when the system language is RTL
    • fixed #444: adding words not working in Ukrainian, Hebrew and Yiddish
    • fixed #418: the Clear Filter key not breaking typing when no filter is active
  • Technical
    • Cleaned up the Settings code
    • The commit hash in the version string is now fixed to 8 characters to avoid discrepancies with the F-droid build.

Full Changelog: v28.0...v29.0