Traditional T9 v50.0
This is the latest release of Traditional T9.
These are the biggest changes and upgrades that have been added in the past half a year:
v50.0
- Undo/Redo Functions: Introduced standard undo and redo operations for text input.
- Customizable On-Screen Keys: Allows users to reorder and hide virtual function keys and even entire columns for a personalized layout.
- Language Selection & Status: Added a dedicated language selection popup and on-screen icons to indicate current typing mode and language.
- Improved Special Character Access: Enhanced reordering and grouping options for special characters on the ‘0’ and ‘1’ keys.
v47.0
- Full Hardware Key Support: Comprehensive support for nearly all keys on physical keyboards, keypads, and remote controls, allowing extensive hotkey customization.
- App Compatibility Option: Introduced a setting to enable typing in apps with known compatibility issues (e.g., Deezer, Smouldering Durtles).
v45.0
- Complete Visual Redesign: Overhauled the virtual keypad with improved contrast, well-readable keys, a long spacebar, and a V-shaped layout.
- Android 4.4 Dropped: Discontinued support for Android 4.4 to enable further development progress (now requires Android 5.0+).
Release notes for v50.0
v50.0 is a big upgrade bringing a ton of new features and bugfixes. Here are the highlights:
- Undo/redo functions
- Ability to reorder and hide the on-screen function keys
- Improved possibilities for reordering and grouping the special characters on 0- and 1-key.
- A language selection popup
- Status icons to indicate the current typing mode and language.
- The on-screen Left F4 key now also indicates the language.
- Fixed the compatibility issue with MS Teams on Android 11 or higher
- New words for English, French, and Bulgarian and fixes for Japanese
… and many more
NOTE: If you have downloaded v50.0 before 5 June, please download and install it again. The initial APKs from 2 June had too many problems and were replaced with new ones.
NOTE 2: Upgrading to v50.0 will reset your punctuation order preferences to defaults.
Thanks so much to @maverick74 and @Crash9999 for the ideas, for testing and everything! This release would not have been possible without you.
What’s Changed
- Languages.
- A couple of new words for English, French, Bulgarian and other languages.
- Extended support for typing with all keys, including 0 and 1, which will make it possible to include methods like Bopomofo in the future.
- Fixed Hiragana and Katakana being incorrectly enabled in numeric fields
- Fixed some Katakana words not being displayed correctly when filtering is on
- Fixed 1+X combinations typing random Katakana when in Kanji mode
- Features
- Undo/Redo operations
- It is now possible to reorder or hide the on-screen Fn keys, even the entire columns on the left or right.
- Added status icons for indicating the current input mode and language.
- The on-screen Left F4 key now indicates the language too.
- Added a language selection popup. It is useful for directly selecting the desired language when multiple languages are enabled.
- Improved ability for reordering and grouping the special characters on the 1-key and the 0-key. This also improves the access to the currency symbols.
- Shift is Shift, it no longer serves for hacks to type special characters
- Virtual Shift is now disabled for languages without uppercase
- Enabled word re-composing in Japanese and Chinese (not always possible, but better than nothing)
- Added an option to adjust the suggestion text size
- Improved automatic space rules
- Consistent handling and typing of the language-specific Space character (for example, Asian full-width space is used when typing in Chinese)
- Smooth language change is now possible to/from East Asian languages too
- New icons for virtual Shift, Filter and Voice keys
- If a hardware Space key is available it will be assigned to the Space hotkey on the initial startup
- Initial dictionary load is now immediately retried on failure instead of waiting 20 minutes
- now asking for notification permission on the very first start
- Bugs
- Fixed the compatibility issue with MS Teams on Android 11 or higher, which prevented starting up (actually, hacked it)
- Fixed crashing when scrolling the suggestions in ABC mode (caused by modifying the RecyclerView from different threads)
- Fixed auto-space being incorrectly added after a newline and not added before a newline
- Fixed the quick delete feature not to erase whole paragraphs of text in languages without spaces
- Fixed the word pair predictions not working when one of the words contains an apostrophe. The fix will result in significantly more accurate suggestions in Ukrainian and Hebrew, and slightly better in French, Italian, and other languages that use apostrophes extensively.
- Fixed special characters missing in email fields when an East Asian language is selected
- Fixed fast-delete deleting too much text in languages without spaces, when there is composing text
- Fixed confusing Backspace behavior when deleting selected or composed text
- Fixed Clear Filter hotkey not accepting the current suggestion in ABC mode
- Consistent language codes for ABC mode
- Fixed Toast messages not appearing when being displayed from an async context
- Fixed ClassNotFoundException: Didn’t find class “android.speech.RecognitionSupportCallback” on Sonim XP3800 and possibly other old devices
- Fixed typing emojis not possible right after typing a space in Japanese
- Fixed the dictionary loading progress notification not disappearing or showing -0.0 seconds, when loading is cancelled
- Fixed pressing Backspace when the Text Editing Palette is shown, causing the current clipboard preview to disappear
- Technical
- Added the Privacy Policy document to the app
- Non-YML files in the definitions folder are now ignored during build time
- Major code cleanup
- Upgraded com.android.application 8.9.1 → 8.10.0
- Enforced Unix-style newlines in .editorconfig
- Removed the specific color scheme for Android 15 or higher, as it seems to be unnecessary
- Prevented an unnecessary call to getTextBeforeCursor() when Backspace is pressed
- During build time the dictionary freshness is determined using ‘sha256sum’ shell command instead of Groovy’s digest(‘SHA-256’) to hopefully prevent build crashing on F-droid
- Fixed memory leaks due to several async operation listeners assigned to static objects, not being cleared after the end of the operation
- 9th attempt to fix the privileged options problem: removed onDestroy debugging code and explicitly destroying LanguageCollection and DataStore on shutdown
Full Changelog: https://github.com/sspanak/tt9/compare/v49.0...v50.0
Contributors
Thanks so much to @maverick74 and @Crash9999 for the ideas, for testing and everything! This release would not have been possible without you.
Release notes for v47.0
Full Hardware Key Support + Language Updates
This release adds support for (almost) all hardware keys on keyboards, keypads, and remote controls, allowing complete freedom when configuring the hotkeys. It improves Vietnamese and also adds Slovenian, Irish, and Farsi. Finally, it fixes several bugs, most notably the unnecessary blank space on Samsung S25.
What’s Changed
- Languages
- Vietnamese: removed the accented letters and added the accents as separate suggestions which should result in faster typing and a more Nokia-like experience (#746, #585). Thanks to @NTT-2k5 and @rice-lover for the suggestions.
- Added Slovenian language (#653). Thanks to @mfin for providing a word list.
- Added Irish (#751)
- Adde Persian (#747). Thanks to @AmirShaeiri
- Arabic letters on virtual keys are now always displayed isolated for better readability
- Fixed ZWJ, ZWNJ being displayed incorrectly when trying to combine them with a letter
- Combining characters are now displayed with an empty-circle base for better readability
- Fixed combining diacritics not available as suggestions when filtering is on
- New Features
- Added full support for all keys on all input devices, such as keyboards, numeric keypads, remote controls, etc.
- Added a compatibility option that makes it possible to type in apps like Deezer and Smouldering Durtles (#391, #714)
- the Hotkeys screen is now fully translated to all languages (hopefully, I got everything correctly)
- Added a more clear error message when the language for voice input is missing
- Bugs
- fixed a rare SecurityException when trying to display dictionary loading progress on the lock screen of some devices
- When shutting down, the MainView is now destroyed last to prevent crashes
- Fixed the last typed word coming back after sending an SMS
- Fixed unnecessary blank space below the keyboard on Samsung S25 AKA more edge-to-edge problems (#755)
- Technical
- Slightly faster device hacks by detecting the device make and model only once
- upgraded com.android.application 8.8.1 → 8.8.2
Full Changelog: Comparing v46.0...v47.0 · sspanak/tt9 · GitHub
Release notes for v45.0
45.0
Transfiguration
This release marks the complete visual makeover of TT9. The virtual keypad now features improved contrast, well-readable keys, the long-awaited long spacebar, a V-shaped layout for more natural thumb movement, and many more options for customizing the shape, dimensions, and font size. On Android 12 or higher, it also follows the system-defined colors to blend perfectly with your device theme. The app also has a new launcher icon, to celebrate the visual transformation.
On the language side, in Spanish, some short words, such as prepositions and articles were capitalized incorrectly. This is now fixed.
Note: Android 4.4 is no longer supported. It was preventing progress, so there was no other choice. Future versions will support Android 5.0 and higher.
What’s Changed
- Languages
- Fixed some Spanish prepositions, articles, and other short words being capitalized incorrectly (#712). Big thanks to @beatatiana77 for reporting the problem and for testing.
- Features
- Added support for Dynamic Colors on Android 12 and higher
- All keyboard layouts now use new stylish Material 2 components (up to Android 11) and Material 3 (Android 12 or higher)
- Added a Long Spacebar option (#700). Thanks to @GOTBLZ for the ideas and for helping adjust the all dimensions optimally.
- Added a V-shaped layout option (#700)
- Added more options for controlling the key dimensions, and font size, and for hiding the arrow keys around the suggestion list.
- New adaptive launcher icon (#700)
- Minor color and dimension adjustments of the suggestion bar
- Bugs
- Fixed some alignment and size issues, especially on Android 15, and got rid of the ConstraintLayout
- Fixed some text scaling issues. The keyboard should now look ‘the same’ on all screen sizes.
- Fixed the search field in the default Contacts app being detected as an email field on some devices (#698)
- The Clear Filter button now accepts the currently selected word when no filter is on, instead of resetting the selection (#698)
- Fixed a rare crash when using the Android Contacts app
- Prevented crashing when trying to use an incompatible voice input service/assistant
- Attempt to prevent the SuggestionOps.setTextField NullPointerException when shutting down
- Technical
- Dropped support for Android 4.4. It was preventing progress, so there was no other choice.
- Documentation update
- Removed some unneeded raster icons
- Removed the InputConnectionCompat as it does not seem to have any effect
- Upgraded com.android.application 8.7.3 → 8.8.0
- Upgraded gradle 8.9 → 8.10.2
Full Changelog: Comparing v44.0...v45.0 · sspanak/tt9 · GitHub
- Credits: sspanak
- IAB: None
- Compatibility: Works on pretty much on any phone with a hardware keyboard with Android 5 or higher, officially supports:
- CAT S22 Flip (Android 11)
- Unihertz Atom L (Android 11)
- Qin F21 Pro+ (Android 11)
- Energizer H620SEU (Android 10)
- Sonim XP3800 (Android 8.1)
Vodaphone VFD 500 (Android 6.0)
Downloads:
There are two versions available, one with language packs preinstalled, and one where you have to download language packs.
Tt9 v50.0 full (168 MB) (GitHub)
Tt9 v50.0 (2.64 MB) (GitHub)
Tt9 v50.0 (2.64 MB) (OneDrive)