* Deleted Objectbox and went back to SQLite. The database structure is entirely new and optimized for fast performance
* Added slow query stats + cache for even faster performance
* automatic language sorting script
* legacy database management using SQLiteOpener
* simplified access to the constant settings
* replaced SQLite/RoomDb with Objectbox for improved dictionary performance
* SQLite words are automatically cleaned up when opening the Preferences
* added protection against deleting dictionaries while loading other dictionaries
* enabled adding words with apostrophes in Ukrainian
* updated system requirements
* moved the source languages out of assets/ into their own directory (#356)
* split build.gradle into several smaller files
* improved word frequency validation during build time
* slightly optimized dictionary loading speed using pre-calculated file size
* fixed a potential crash when loading invalid assets
* fixed dictionary loading progress starting at 100% then jumping to 0% when manually loading two dictionaries one after another
* documentation update
* removed isPunctiationPartOfWords hack and created a new contraction input method that allows typing just anything, instead of predefined list coming from the dictionary
* updated the common compound words and contractions in Bulgarian, Dutch, English and French
* removed some non-sense and rarely used English words
* fixed crashing when trying to find words with apostrophes in the database
* fixed a crash when trying to capitalize single character strings
* improved dictionary validation at build time: spaces are now disallowed
* more dictionary validations during build time (empty line and punctuation presence)
* slightly improved dictionary loading speed
* removed a blank line from Ukrainian
All categories are now on separate screens
Added a 'Clear Unselected' dictionary option
The 'auto space' setting is now on by default
Reorganized the emoji and added 4 new ones
* validateDictionaries gradle task now makes use of caching for much faster builds
* lowered the severity of missing translations linting rule
* fixed some more errors in the translations
* added linting task to the GitHub CI validation workflow
* enabled GitHub CI validation on push to master
* added a github workflow for closing stale issues
* added github PR validation workflows
* fixed the dictionary validator missing digits in words
* fixed the build failing completely when there no git tags
* updated androidx.room 2.4.3 -> 2.5.0
* the dictionary loader now supports word frequencies
* word frequency validation upon building
* added default word frequencies to all dictionaries
* updated documentation
* fixed some English words always appearing in small letters, when some should be capitalized (I, Friday, December, etc...)"
* fixed Bulgarian words that should have been capitalized, but were not
* fixed mixed case suggestions priority not updating
* optimized dictionary loading (it's more than 2x faster now)
* fixed the last words of dictionaries not being loaded
* new, simpler (and hopefully, more efficient) dictionary loader
* no more dict.properties
* dictionaries are now validated during the build process
* TraditionalT9Settings code cleanup and code style improvements
* removed English, French, Italian, Russian repeating words
* removed invalid and repeating German words
* totally refactored the Languages, the Database and the IME module. New and more clear folder/package structure
* CharMap and LangHelper are no more
* removed many unused icons, translations and other resources
* deleted the old keymap samples
* Update user-manual.md
* Preferences are stored in Preferences, not in the database.
* removed some unclear and unused settings from the Preferences screen and the code.
* fixed issues with displaying the UI
* removed all non-English words and words with foreign spelling from the English dictionary
* 0 now works as it should in all modes.
* a more clear newline character in suggestions view
* last used input mode is now preserved and restored the next time
* removed the smiley and symbol dialogs
* capsMode -> textCase
* language names are no longer translated
* updated build instructions
* better use of threads for DB operations
* current text candidate is as long as the sequence, to make it more intuitive
* single characters are added to the end of the suggestion, when there are no more in the database
* Added ѝ to Bulgarian character map
* disabled adding words in a user-friendly manner
* when adding a new word is not possible, a toast message appears, for better user experience
* an error is logged when there are duplicate language IDs
* settings -> settings_legacy
* custom Logger class for easier debugging and no logcat flood in the Release version
* removed unnecessary single letters and invalid words from the dictionaries
* more translations cleanup; also corrected some weird translations
* upgraded gradle
* moved all settings from SQLite to SharedPreferences. The database now contains only dictionaries.
* removed key remapping, dictionary backup and nuke functions along with a bunch of unused code and translations
* Bump up to android-28, gradle 7.2
* updated gradle 2.2.1 -> 7.3.3
* readjusted API Level versions to support Mocor5 devices (hopefully)
* no longer using the deprecated notification.setLatestEventInfo()
* updated permissions list for compatibility with Android 9+
Co-authored-by: Ratmir Karabut <rkarabut@gmail.com>