This adds dictionary-based spell checking to the keyboard. The keyboard looks at the word being typed and matches it against a dictionary to either complete the rest of the word or find alternative spellings. The core of this feature is implemented in cdict, which is included as a submodule in vendor/cidct. Cdict is developped at https://github.com/Julow/cdict The dictionaries are hosted at https://github.com/Julow/Unexpected-Keyboard-dictionaries/ The wordlists used to build the dictionaries are the same ones used by HeliBoard from https://codeberg.org/Helium314/aosp-dictionaries - Add an activity accessible from the launcher app that lists available dictionaries with a download button. The DictionaryListView view shows the list of available dictionaries and handles downloading and installing them. - The Dictionaries class manages installed dictionaries. Dictionaries are installed as individual files into the app's private directory. - Available dictionaries are listed in dictionaries.xml, which is generated when building Unexpected-Keyboard-dictionaries. method.xml mentions the dictionary name for each locales.
131 lines
5.6 KiB
XML
131 lines
5.6 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<resources>
|
|
<!-- Candidates view -->
|
|
<style name="candidates_item">
|
|
<item name="android:gravity">center</item>
|
|
<item name="android:textColor">?attr/colorLabel</item>
|
|
</style>
|
|
<style name="candidates_status">
|
|
<item name="android:layout_width">match_parent</item>
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:gravity">center</item>
|
|
<item name="android:textColor">?attr/colorLabel</item>
|
|
</style>
|
|
<!-- Emoji pane -->
|
|
<style name="emojiTypeButton">
|
|
<item name="android:padding">1px</item>
|
|
<item name="android:gravity">center</item>
|
|
<item name="android:minHeight">18dp</item>
|
|
<item name="android:background">?attr/emoji_button_bg</item>
|
|
<item name="android:textColor">?attr/emoji_key_text</item>
|
|
<item name="android:textSize">18dp</item>
|
|
</style>
|
|
<style name="emojiGridButton">
|
|
<item name="android:layout_width">fill_parent</item>
|
|
<item name="android:layout_height">fill_parent</item>
|
|
<item name="android:gravity">center</item>
|
|
<item name="android:textSize">@dimen/emoji_text_size</item>
|
|
<item name="android:textColor">?attr/emoji_color</item>
|
|
</style>
|
|
<!-- Clipboard pane -->
|
|
<style name="clipboardEntry">
|
|
<item name="android:layout_weight">1</item>
|
|
<item name="android:layout_width">fill_parent</item>
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:layout_marginHorizontal">14dp</item>
|
|
<item name="android:layout_marginVertical">14dp</item>
|
|
<item name="android:textSize">16dp</item>
|
|
<item name="android:textColor">?attr/colorLabel</item>
|
|
</style>
|
|
<style name="clipboardHeading">
|
|
<item name="android:layout_marginHorizontal">6dp</item>
|
|
<item name="android:layout_marginTop">14dp</item>
|
|
<item name="android:layout_marginBottom">0dp</item>
|
|
<item name="android:textSize">14dp</item>
|
|
<item name="android:fontWeight">700</item>
|
|
<item name="android:textColor">?attr/colorSubLabel</item>
|
|
</style>
|
|
<style name="clipboardEntryButtons">
|
|
<item name="android:orientation">horizontal</item>
|
|
<item name="android:layout_width">wrap_content</item>
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:layout_gravity">center_vertical</item>
|
|
<item name="android:layout_marginRight">12dp</item>
|
|
</style>
|
|
<style name="clipboardEntryButton">
|
|
<item name="android:layout_width">24dp</item>
|
|
<item name="android:layout_height">24dp</item>
|
|
<item name="android:layout_marginHorizontal">2dp</item>
|
|
<item name="android:backgroundTint">?attr/colorLabel</item>
|
|
<item name="android:backgroundTintMode">src_in</item>
|
|
</style>
|
|
<!-- Launcher activity -->
|
|
<style name="paragraph">
|
|
<item name="android:layout_width">fill_parent</item>
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:layout_marginVertical">8dp</item>
|
|
<item name="android:layout_marginHorizontal">24dp</item>
|
|
<item name="android:layout_gravity">center</item>
|
|
</style>
|
|
<style name="anim">
|
|
<item name="android:adjustViewBounds">true</item>
|
|
<item name="android:layout_height">120dp</item>
|
|
<item name="android:layout_weight">1</item>
|
|
<item name="android:layout_width">wrap_content</item>
|
|
</style>
|
|
<style name="anim_text">
|
|
<item name="android:layout_gravity">center</item>
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:layout_marginHorizontal">20dp</item>
|
|
<item name="android:layout_weight">1</item>
|
|
<item name="android:layout_width">wrap_content</item>
|
|
<item name="android:textAlignment">center</item>
|
|
<item name="android:textSize">18dp</item>
|
|
<item name="android:textStyle">bold</item>
|
|
</style>
|
|
<style name="anim_box">
|
|
<item name="android:layout_gravity">center</item>
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:layout_marginVertical">16dp</item>
|
|
<item name="android:layout_width">wrap_content</item>
|
|
<item name="android:orientation">horizontal</item>
|
|
</style>
|
|
<!-- Dictionaries activity -->
|
|
<style name="dictionary_list_view">
|
|
<item name="android:layout_width">fill_parent</item>
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:layout_marginVertical">24dp</item>
|
|
</style>
|
|
<style name="dictionary_download_item">
|
|
<item name="android:orientation">horizontal</item>
|
|
<item name="android:layout_width">fill_parent</item>
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:layout_marginVertical">8dp</item>
|
|
<item name="android:gravity">center</item>
|
|
<item name="android:paddingHorizontal">48dp</item>
|
|
</style>
|
|
<style name="dictionary_download_locale">
|
|
<item name="android:layout_weight">1</item>
|
|
<item name="android:layout_width">fill_parent</item>
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:textSize">16sp</item>
|
|
</style>
|
|
<style name="dictionary_download_size">
|
|
<item name="android:layout_weight">0</item>
|
|
<item name="android:layout_width">wrap_content</item>
|
|
<item name="android:layout_height">wrap_content</item>
|
|
<item name="android:layout_marginRight">8dp</item>
|
|
<item name="android:textSize">12sp</item>
|
|
</style>
|
|
<style name="dictionary_download_button">
|
|
<item name="android:layout_width">24dp</item>
|
|
<item name="android:layout_height">24dp</item>
|
|
</style>
|
|
<style name="appTheme" parent="@android:style/Theme.Material.Light"/>
|
|
<style name="settingsTheme" parent="appTheme">
|
|
<!-- Setting this in the activity theme so it propagate to nested
|
|
preference screens. -->
|
|
<item name="android:fitsSystemWindows">true</item>
|
|
</style>
|
|
</resources>
|