mirror of
https://github.com/Helium314/HeliBoard.git
synced 2025-04-19 21:59:11 +00:00
some adjustments / lint / unused code
This commit is contained in:
parent
e98d8fa092
commit
2f5e3230d0
21 changed files with 91 additions and 156 deletions
1
.github/PULL_REQUEST_TEMPLATE.md
vendored
1
.github/PULL_REQUEST_TEMPLATE.md
vendored
|
@ -3,4 +3,5 @@ IMPORTANT: The package will be renamed soon. To avoid merge conflicts, please do
|
|||
* Please bescribe briefly what your pull request proposes to fix or improve.
|
||||
* If it's not completely obvious, describe what the PR does to achieve the desired result.
|
||||
* If you use someone else's code, please mention or better link to the source.
|
||||
* See the contributing section in the readme for more detailed guidelines
|
||||
-->
|
||||
|
|
26
README.md
26
README.md
|
@ -1,6 +1,18 @@
|
|||
# OpenBoard upgrade, WIP
|
||||
IMPORTANT: The package will be renamed soon. To avoid merge conflicts, please do not submit any PRs until the renaming is done.
|
||||
|
||||
## Table of contents
|
||||
|
||||
- [Features](#features)
|
||||
* [Hidden functionality](#hidden-functionality)
|
||||
- [Contributing](#contributing-)
|
||||
* [Reporting issues](#reporting-issues)
|
||||
* [Translation](#translation)
|
||||
* [Dictionary creation](#dictionary-creation)
|
||||
* [Code contribution](#code-contribution)
|
||||
- [License](#license)
|
||||
- [Credits](#credits)
|
||||
|
||||
## Plan for actual release
|
||||
The plans for major changes are completed, and most features appear to be stable enough for a proper release.
|
||||
So what comes next:
|
||||
|
@ -57,7 +69,7 @@ Features that may go unnoticed, and further potentially useful information
|
|||
|
||||
# Contributing ❤
|
||||
|
||||
## Issue reporting
|
||||
## Reporting issues
|
||||
|
||||
Whether you encountered a bug, or want to see a new feature in OpenBoard, you can contribute to the project by opening a new issue [here](https://github.com/openboard-team/openboard/issues). Your help is always welcome!
|
||||
|
||||
|
@ -78,16 +90,22 @@ IMPORTANT: The package will be renamed soon. To avoid merge conflicts, please do
|
|||
|
||||
### Getting started
|
||||
|
||||
OpenBoard project is based on Gradle and Android Gradle Plugin. To get started, you'll just need to install [Android Studio](https://developer.android.com/studio), and import project 'from Version Control / Git / Github' by providing this git repository [URL](https://github.com/Helium314/openboard) (or git SSH [URL](git@github.com:Helium314/openboard.git)).
|
||||
OpenBoard project is based on Gradle and Android Gradle Plugin. To get started, you can install [Android Studio](https://developer.android.com/studio), and import project 'from Version Control / Git / Github' by providing this git repository [URL](https://github.com/Helium314/openboard) (or git SSH [URL](git@github.com:Helium314/openboard.git)).
|
||||
Of course you can also use any other compatible IDE, or work with text editor and command line.
|
||||
|
||||
Once everything got setted up correctly, you're ready to go!
|
||||
Once everything is up correctly, you're ready to go!
|
||||
|
||||
### Guidelines
|
||||
|
||||
OpenBoard is a complex application, when contributing, you must take a step back and make sure your contribution:
|
||||
- **Is actually wanted**. Best check related open issues before you start working on a PR. Issues with "PR" and "contributor needed" labels are accepted, but still it would be good if you announced that you are working on it.
|
||||
If there is no issue related to your intended contribution, it's a good idea to open a new one to avoid disappointment of the contribution not being accepted. For small changes or fixing obvious bugs this step is not necessary.
|
||||
- **Is only about a single thing**. Mixing unrelated contributions into a single PR is hard to review and can get messy.
|
||||
- **Has a proper description**. What your coutribution does is usually less obvious to reviewers than for yourself. A good description helps a lot for understanding what is going on, and for separating wanted from unintended changes in behavior.
|
||||
- **Uses already in-place mechanism and take advantage of them**. In other terms, does not reinvent the wheel or uses shortcuts that could alter the consistency of the existing code.
|
||||
- **Has the lowest footprint possible**. OpenBoard code has been written by android experts (AOSP/Google engineers). It has been tested and runned on millions of devices. Thus, **existing code will always be safer than new code**. The less we alter existing code, the more OpenBoard will stay stable. Especially in the input logic scope.
|
||||
- **Has a low footprint**. Some parts of the code are executed very frequently, and the keyboard should stay responsive even on older devices.
|
||||
- **Does not bring any non-free code or proprietary binary blobs**. This also applies to code/binaries with unknown licenses. Make sure you do not introduce any closed-source library from Google.
|
||||
If your contribution contains code that is not your own, provide a link to the source.
|
||||
- **Complies with the user privacy principle OpenBoard follows**.
|
||||
|
||||
In addition to previous elements, OpenBoard must stick to [F-Droid inclusion guidelines](https://f-droid.org/docs/Inclusion_Policy/).
|
||||
|
|
|
@ -20,6 +20,7 @@ import java.util.ArrayList;
|
|||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
||||
public class ProximityInfo {
|
||||
private static final String TAG = ProximityInfo.class.getSimpleName();
|
||||
|
@ -192,7 +193,7 @@ public class ProximityInfo {
|
|||
touchPositionCorrection.getRadius(row) * hitBoxDiagonal;
|
||||
}
|
||||
if (DEBUG) {
|
||||
Log.d(TAG, String.format(
|
||||
Log.d(TAG, String.format(Locale.US,
|
||||
" [%2d] row=%d x/y/r=%7.2f/%7.2f/%5.2f %s code=%s", infoIndex, row,
|
||||
sweetSpotCenterXs[infoIndex], sweetSpotCenterYs[infoIndex],
|
||||
sweetSpotRadii[infoIndex], (row < rows ? "correct" : "default"),
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
package org.dslul.openboard.inputmethod.keyboard.clipboard
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.graphics.Typeface
|
||||
import android.util.TypedValue
|
||||
import android.view.LayoutInflater
|
||||
|
@ -79,11 +80,11 @@ class ClipboardAdapter(
|
|||
pinnedIconView.visibility = if (historyEntry?.isPinned == true) View.VISIBLE else View.GONE
|
||||
}
|
||||
|
||||
@SuppressLint("ClickableViewAccessibility")
|
||||
override fun onTouch(view: View, event: MotionEvent): Boolean {
|
||||
if (event.actionMasked != MotionEvent.ACTION_DOWN) {
|
||||
return false
|
||||
}
|
||||
if (event.actionMasked == MotionEvent.ACTION_DOWN) {
|
||||
keyEventListener.onKeyDown(view.tag as Long)
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
|
|
|
@ -9,7 +9,6 @@ import org.dslul.openboard.inputmethod.latin.settings.Settings
|
|||
import org.dslul.openboard.inputmethod.latin.settings.USER_DICTIONARY_SUFFIX
|
||||
import org.dslul.openboard.inputmethod.latin.utils.DeviceProtectedUtils
|
||||
import org.dslul.openboard.inputmethod.latin.utils.DictionaryInfoUtils
|
||||
import org.dslul.openboard.inputmethod.latin.utils.Log
|
||||
import org.dslul.openboard.inputmethod.latin.utils.upgradeToolbarPref
|
||||
import java.io.File
|
||||
|
||||
|
@ -34,12 +33,11 @@ class App : Application() {
|
|||
fun checkVersionUpgrade(context: Context) {
|
||||
val prefs = DeviceProtectedUtils.getSharedPreferences(context)
|
||||
val oldVersion = prefs.getInt(Settings.PREF_VERSION_CODE, 0)
|
||||
Log.i("test", "old version $oldVersion")
|
||||
if (oldVersion == BuildConfig.VERSION_CODE)
|
||||
return
|
||||
upgradeToolbarPref(prefs)
|
||||
// clear extracted dictionaries, in case updated version contains newer ones
|
||||
DictionaryInfoUtils.getCachedDirectoryList(context).forEach {
|
||||
DictionaryInfoUtils.getCachedDirectoryList(context)?.forEach {
|
||||
if (!it.isDirectory) return@forEach
|
||||
val files = it.listFiles() ?: return@forEach
|
||||
for (file in files) {
|
||||
|
|
|
@ -1,60 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2011 The Android Open Source Project
|
||||
* modified
|
||||
* SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-only
|
||||
*/
|
||||
|
||||
package org.dslul.openboard.inputmethod.latin;
|
||||
|
||||
import org.dslul.openboard.inputmethod.latin.common.FileUtils;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
/**
|
||||
* Immutable class to hold the address of an asset.
|
||||
* As opposed to a normal file, an asset is usually represented as a contiguous byte array in
|
||||
* the package file. Open it correctly thus requires the name of the package it is in, but
|
||||
* also the offset in the file and the length of this data. This class encapsulates these three.
|
||||
*/
|
||||
public final class AssetFileAddress {
|
||||
public final String mFilename;
|
||||
public final long mOffset;
|
||||
public final long mLength;
|
||||
|
||||
public AssetFileAddress(final String filename, final long offset, final long length) {
|
||||
mFilename = filename;
|
||||
mOffset = offset;
|
||||
mLength = length;
|
||||
}
|
||||
|
||||
public static AssetFileAddress makeFromFile(final File file) {
|
||||
if (!file.isFile()) return null;
|
||||
return new AssetFileAddress(file.getAbsolutePath(), 0L, file.length());
|
||||
}
|
||||
|
||||
public static AssetFileAddress makeFromFileName(final String filename) {
|
||||
if (null == filename) return null;
|
||||
return makeFromFile(new File(filename));
|
||||
}
|
||||
|
||||
public static AssetFileAddress makeFromFileNameAndOffset(final String filename,
|
||||
final long offset, final long length) {
|
||||
if (null == filename) return null;
|
||||
final File f = new File(filename);
|
||||
if (!f.isFile()) return null;
|
||||
return new AssetFileAddress(filename, offset, length);
|
||||
}
|
||||
|
||||
public boolean pointsToPhysicalFile() {
|
||||
return 0 == mOffset;
|
||||
}
|
||||
|
||||
public void deleteUnderlyingFile() {
|
||||
FileUtils.deleteRecursively(new File(mFilename));
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return String.format("%s (offset=%d, length=%d)", mFilename, mOffset, mLength);
|
||||
}
|
||||
}
|
|
@ -13,7 +13,7 @@ import android.content.SharedPreferences;
|
|||
import android.os.Bundle;
|
||||
|
||||
import androidx.appcompat.app.AlertDialog;
|
||||
import androidx.preference.SwitchPreferenceCompat;
|
||||
import androidx.preference.SwitchPreference;
|
||||
import androidx.preference.TwoStatePreference;
|
||||
|
||||
import org.dslul.openboard.inputmethod.latin.R;
|
||||
|
@ -25,7 +25,7 @@ public final class CorrectionSettingsFragment extends SubScreenFragment
|
|||
implements SharedPreferences.OnSharedPreferenceChangeListener,
|
||||
PermissionsManager.PermissionsResultCallback {
|
||||
|
||||
private SwitchPreferenceCompat mLookupContactsPreference;
|
||||
private SwitchPreference mLookupContactsPreference;
|
||||
|
||||
@Override
|
||||
public void onCreate(final Bundle icicle) {
|
||||
|
|
|
@ -11,14 +11,14 @@ import android.content.SharedPreferences;
|
|||
import android.os.Bundle;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import androidx.preference.SwitchPreference;
|
||||
|
||||
import org.dslul.openboard.inputmethod.latin.R;
|
||||
import org.dslul.openboard.inputmethod.latin.permissions.PermissionsManager;
|
||||
import org.dslul.openboard.inputmethod.latin.permissions.PermissionsUtil;
|
||||
import org.dslul.openboard.inputmethod.latin.settings.SubScreenFragment;
|
||||
import org.dslul.openboard.inputmethod.latin.utils.ActivityThemeUtils;
|
||||
|
||||
import androidx.preference.SwitchPreferenceCompat;
|
||||
|
||||
/**
|
||||
* Preference screen.
|
||||
*/
|
||||
|
@ -26,7 +26,7 @@ public final class SpellCheckerSettingsFragment extends SubScreenFragment
|
|||
implements SharedPreferences.OnSharedPreferenceChangeListener,
|
||||
PermissionsManager.PermissionsResultCallback {
|
||||
|
||||
private SwitchPreferenceCompat mLookupContactsPreference;
|
||||
private SwitchPreference mLookupContactsPreference;
|
||||
|
||||
@Override
|
||||
public void onCreate(Bundle savedInstanceState) {
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2015 The Android Open Source Project
|
||||
* modified
|
||||
* SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-only
|
||||
*/
|
||||
|
||||
package org.dslul.openboard.inputmethod.latin.utils;
|
||||
|
||||
import org.dslul.openboard.inputmethod.latin.AssetFileAddress;
|
||||
import org.dslul.openboard.inputmethod.latin.makedict.DictionaryHeader;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
public class DictionaryHeaderUtils {
|
||||
|
||||
public static int getContentVersion(AssetFileAddress fileAddress) {
|
||||
final DictionaryHeader header = DictionaryInfoUtils.getDictionaryFileHeaderOrNull(
|
||||
new File(fileAddress.mFilename), fileAddress.mOffset, fileAddress.mLength);
|
||||
return Integer.parseInt(header.mVersionString);
|
||||
}
|
||||
}
|
|
@ -110,7 +110,7 @@ public class DictionaryInfoUtils {
|
|||
/**
|
||||
* Helper method to the list of cache directories, one for each distinct locale.
|
||||
*/
|
||||
public static File[] getCachedDirectoryList(final Context context) {
|
||||
@Nullable public static File[] getCachedDirectoryList(final Context context) {
|
||||
return new File(DictionaryInfoUtils.getWordListCacheDirectory(context)).listFiles();
|
||||
}
|
||||
|
||||
|
|
|
@ -19,15 +19,12 @@ fun getDictionaryLocales(context: Context): MutableSet<Locale> {
|
|||
val locales = HashSet<Locale>()
|
||||
|
||||
// get cached dictionaries: extracted or user-added dictionaries
|
||||
val cachedDirectoryList = DictionaryInfoUtils.getCachedDirectoryList(context)
|
||||
if (cachedDirectoryList != null) {
|
||||
for (directory in cachedDirectoryList) {
|
||||
if (!directory.isDirectory) continue
|
||||
if (!hasAnythingOtherThanExtractedMainDictionary(directory)) continue
|
||||
DictionaryInfoUtils.getCachedDirectoryList(context)?.forEach { directory ->
|
||||
if (!directory.isDirectory) return@forEach
|
||||
if (!hasAnythingOtherThanExtractedMainDictionary(directory)) return@forEach
|
||||
val locale = DictionaryInfoUtils.getWordListIdFromFileName(directory.name).constructLocale()
|
||||
locales.add(locale)
|
||||
}
|
||||
}
|
||||
// get assets dictionaries
|
||||
val assetsDictionaryList = DictionaryInfoUtils.getAssetsDictionaryList(context)
|
||||
if (assetsDictionaryList != null) {
|
||||
|
@ -70,8 +67,8 @@ fun cleanUnusedMainDicts(context: Context) {
|
|||
val dirs = dictionaryDir.listFiles() ?: return
|
||||
val prefs = DeviceProtectedUtils.getSharedPreferences(context)
|
||||
val usedLocaleLanguageTags = hashSetOf<String>()
|
||||
getEnabledSubtypes(prefs).forEach {
|
||||
val locale = it.locale()
|
||||
getEnabledSubtypes(prefs).forEach { subtype ->
|
||||
val locale = subtype.locale()
|
||||
usedLocaleLanguageTags.add(locale.toLanguageTag())
|
||||
Settings.getSecondaryLocales(prefs, locale).forEach { usedLocaleLanguageTags.add(it.toLanguageTag()) }
|
||||
}
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
|
||||
# Keep classes that are used as a parameter type of methods that are also marked as keep
|
||||
# to preserve changing those methods' signature.
|
||||
-keep class org.dslul.openboard.inputmethod.latin.AssetFileAddress
|
||||
-keep class org.dslul.openboard.inputmethod.latin.Dictionary
|
||||
-keep class org.dslul.openboard.inputmethod.latin.NgramContext
|
||||
-keep class org.dslul.openboard.inputmethod.latin.makedict.ProbabilityInfo
|
||||
|
|
|
@ -18,7 +18,8 @@
|
|||
app:tint="@color/foreground"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:layout_width="40dp"
|
||||
android:layout_height="40dp" />
|
||||
android:layout_height="40dp"
|
||||
android:contentDescription="@string/label_search_key" />
|
||||
<EditText
|
||||
android:id="@+id/search_field"
|
||||
android:layout_marginHorizontal="6dp"
|
||||
|
@ -26,7 +27,8 @@
|
|||
android:maxLines="1"
|
||||
android:imeOptions="actionDone"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" />
|
||||
android:layout_height="wrap_content"
|
||||
android:autofillHints="language" />
|
||||
</LinearLayout>
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
android:title="@string/settings_screen_advanced"
|
||||
android:key="screen_advanced">
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="always_incognito_mode"
|
||||
android:title="@string/incognito"
|
||||
android:summary="@string/prefs_force_incognito_mode_summary"
|
||||
|
@ -23,33 +23,33 @@
|
|||
latin:maxValue="@integer/config_max_longpress_timeout"
|
||||
latin:stepValue="@integer/config_longpress_timeout_step" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="space_trackpad"
|
||||
android:title="@string/space_trackpad"
|
||||
android:summary="@string/space_trackpad_summary"
|
||||
android:defaultValue="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="delete_swipe"
|
||||
android:title="@string/delete_swipe"
|
||||
android:summary="@string/delete_swipe_summary"
|
||||
android:defaultValue="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="prefs_long_press_keyboard_to_change_lang"
|
||||
android:title="@string/prefs_long_press_keyboard_to_change_lang"
|
||||
android:summary="@string/prefs_long_press_keyboard_to_change_lang_summary"
|
||||
android:persistent="true"
|
||||
android:defaultValue="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="enable_emoji_alt_physical_key"
|
||||
android:title="@string/prefs_enable_emoji_alt_physical_key"
|
||||
android:summary="@string/prefs_enable_emoji_alt_physical_key_summary"
|
||||
android:defaultValue="true"
|
||||
android:persistent="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="show_setup_wizard_icon"
|
||||
android:title="@string/show_setup_wizard_icon"
|
||||
android:summary="@string/show_setup_wizard_icon_summary"
|
||||
|
@ -79,13 +79,13 @@
|
|||
<PreferenceCategory
|
||||
android:title="@string/settings_category_experimental">
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="space_language_slide"
|
||||
android:title="@string/space_language_slide"
|
||||
android:summary="@string/space_language_slide_summary"
|
||||
android:defaultValue="false" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="url_detection"
|
||||
android:title="@string/url_detection_title"
|
||||
android:summary="@string/url_detection_summary"
|
||||
|
|
|
@ -28,11 +28,11 @@
|
|||
android:title="@string/select_user_colors"
|
||||
android:summary="@string/select_user_colors_summary"/>
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="theme_key_borders"
|
||||
android:title="@string/key_borders"/>
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="theme_auto_day_night"
|
||||
android:title="@string/day_night_mode"
|
||||
android:defaultValue="@bool/day_night_default"
|
||||
|
@ -48,7 +48,7 @@
|
|||
android:title="@string/select_user_colors_night"
|
||||
android:summary="@string/select_user_colors_summary"/>
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="navbar_color"
|
||||
android:title="@string/theme_navbar"/>
|
||||
|
||||
|
@ -57,7 +57,7 @@
|
|||
<PreferenceCategory
|
||||
android:title="@string/settings_category_miscellaneous">
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="split_keyboard"
|
||||
android:title="@string/enable_split_keyboard"
|
||||
android:persistent="true"
|
||||
|
@ -69,7 +69,7 @@
|
|||
latin:minValue="50"
|
||||
latin:maxValue="200" /> <!-- percentage -->
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="narrow_key_gaps"
|
||||
android:title="@string/prefs_narrow_key_gaps"
|
||||
android:defaultValue="true"
|
||||
|
|
|
@ -17,21 +17,21 @@
|
|||
<PreferenceCategory
|
||||
android:title="@string/settings_category_correction">
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="block_potentially_offensive"
|
||||
android:title="@string/prefs_block_potentially_offensive_title"
|
||||
android:summary="@string/prefs_block_potentially_offensive_summary"
|
||||
android:defaultValue="@bool/config_block_potentially_offensive"
|
||||
android:persistent="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="auto_correction"
|
||||
android:title="@string/autocorrect"
|
||||
android:summary="@string/auto_correction_summary"
|
||||
android:defaultValue="true"
|
||||
android:persistent="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="more_auto_correction"
|
||||
android:title="@string/more_autocorrect"
|
||||
android:summary="@string/more_autocorrect_summary"
|
||||
|
@ -46,21 +46,21 @@
|
|||
android:entryValues="@array/auto_correction_threshold_mode_indexes"
|
||||
android:defaultValue="@string/auto_correction_threshold_mode_index_modest" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="auto_cap"
|
||||
android:title="@string/auto_cap"
|
||||
android:summary="@string/auto_cap_summary"
|
||||
android:defaultValue="true"
|
||||
android:persistent="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="use_double_space_period"
|
||||
android:title="@string/use_double_space_period"
|
||||
android:summary="@string/use_double_space_period_summary"
|
||||
android:defaultValue="true"
|
||||
android:persistent="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="autospace_after_punctuation"
|
||||
android:title="@string/autospace_after_punctuation"
|
||||
android:summary="@string/autospace_after_punctuation_summary"
|
||||
|
@ -71,42 +71,42 @@
|
|||
<PreferenceCategory
|
||||
android:title="@string/settings_category_suggestions">
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="show_suggestions"
|
||||
android:summary="@string/prefs_show_suggestions_summary"
|
||||
android:title="@string/prefs_show_suggestions"
|
||||
android:defaultValue="true"
|
||||
android:persistent="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="always_show_suggestions"
|
||||
android:title="@string/prefs_always_show_suggestions"
|
||||
android:summary="@string/prefs_always_show_suggestions_summary"
|
||||
android:defaultValue="false"
|
||||
android:persistent="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="use_personalized_dicts"
|
||||
android:title="@string/use_personalized_dicts"
|
||||
android:summary="@string/use_personalized_dicts_summary"
|
||||
android:defaultValue="true"
|
||||
android:persistent="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="next_word_prediction"
|
||||
android:title="@string/bigram_prediction"
|
||||
android:summary="@string/bigram_prediction_summary"
|
||||
android:defaultValue="true"
|
||||
android:persistent="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="spellcheck_use_contacts"
|
||||
android:title="@string/use_contacts_dict"
|
||||
android:summary="@string/use_contacts_dict_summary"
|
||||
android:defaultValue="true"
|
||||
android:persistent="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="add_to_personal_dictionary"
|
||||
android:title="@string/add_to_personal_dictionary"
|
||||
android:summary="@string/add_to_personal_dictionary_summary"
|
||||
|
|
|
@ -9,26 +9,26 @@
|
|||
android:title="@string/debug_settings_title"
|
||||
android:key="english_ime_debug_settings"
|
||||
>
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="show_debug_settings"
|
||||
android:title="@string/prefs_show_debug_settings"
|
||||
android:persistent="true" />
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="debug_mode"
|
||||
android:title="@string/prefs_debug_mode"
|
||||
android:defaultValue="false"
|
||||
android:persistent="true" />
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="show_suggestion_infos"
|
||||
android:title="@string/prefs_show_suggestion_infos"
|
||||
android:defaultValue="false"
|
||||
android:persistent="true" />
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="force_non_distinct_multitouch"
|
||||
android:title="@string/prefs_force_non_distinct_multitouch"
|
||||
android:defaultValue="false"
|
||||
android:persistent="true" />
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="sliding_key_input_preview"
|
||||
android:title="@string/sliding_key_input_preview"
|
||||
android:summary="@string/sliding_key_input_preview_summary"
|
||||
|
|
|
@ -8,24 +8,24 @@
|
|||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:title="@string/settings_screen_gesture"
|
||||
android:key="screen_gesture">
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="gesture_input"
|
||||
android:title="@string/gesture_input"
|
||||
android:summary="@string/gesture_input_summary"
|
||||
android:defaultValue="true"
|
||||
android:persistent="true" />
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="gesture_floating_preview_text"
|
||||
android:title="@string/gesture_floating_preview_text"
|
||||
android:summary="@string/gesture_floating_preview_text_summary"
|
||||
android:defaultValue="true"
|
||||
android:persistent="true" />
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="gesture_preview_trail"
|
||||
android:title="@string/gesture_preview_trail"
|
||||
android:defaultValue="true"
|
||||
android:persistent="true" />
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="gesture_space_aware"
|
||||
android:title="@string/gesture_space_aware"
|
||||
android:summary="@string/gesture_space_aware_summary"
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
<PreferenceCategory android:title="@string/settings_category_input">
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="show_hints"
|
||||
android:title="@string/show_hints"
|
||||
android:summary="@string/show_hints_summary"
|
||||
|
@ -25,14 +25,14 @@
|
|||
android:key="more_keys_order"
|
||||
android:title="@string/popup_order" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="show_popup_hints"
|
||||
android:title="@string/show_popup_hints"
|
||||
android:summary="@string/show_popup_hints_summary"
|
||||
android:defaultValue="false"
|
||||
android:persistent="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="vibrate_on"
|
||||
android:title="@string/vibrate_on_keypress"
|
||||
android:defaultValue="@bool/config_default_vibration_enabled"
|
||||
|
@ -43,7 +43,7 @@
|
|||
android:title="@string/prefs_keypress_vibration_duration_settings"
|
||||
latin:maxValue="@integer/config_max_vibration_duration" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="sound_on"
|
||||
android:title="@string/sound_on_keypress"
|
||||
android:defaultValue="@bool/config_default_sound_enabled"
|
||||
|
@ -56,7 +56,7 @@
|
|||
|
||||
</PreferenceCategory>
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="popup_on"
|
||||
android:title="@string/popup_on_keypress"
|
||||
android:defaultValue="@bool/config_default_key_preview_popup"
|
||||
|
@ -65,14 +65,14 @@
|
|||
<PreferenceCategory
|
||||
android:title="@string/settings_category_additional_keys">
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="show_number_row"
|
||||
android:title="@string/number_row"
|
||||
android:summary="@string/number_row_summary"
|
||||
android:defaultValue="false"
|
||||
android:persistent="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="localized_number_row"
|
||||
android:title="@string/localized_number_row"
|
||||
android:summary="@string/localized_number_row_summary"
|
||||
|
@ -88,7 +88,7 @@
|
|||
android:summary="%s"
|
||||
android:persistent="true" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="show_emoji_key"
|
||||
android:title="@string/show_emoji_key"
|
||||
android:defaultValue="false"
|
||||
|
@ -102,7 +102,7 @@
|
|||
|
||||
<PreferenceCategory android:title="@string/settings_category_clipboard_history">
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="enable_clipboard_history"
|
||||
android:title="@string/enable_clipboard_history"
|
||||
android:summary="@string/enable_clipboard_history_summary"
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:title="@string/android_spell_checker_settings"
|
||||
>
|
||||
<SwitchPreferenceCompat
|
||||
<SwitchPreference
|
||||
android:key="spellcheck_use_contacts"
|
||||
android:title="@string/use_contacts_for_spellchecking_option_title"
|
||||
android:summary="@string/use_contacts_for_spellchecking_option_summary"
|
||||
|
|
|
@ -1,3 +1,2 @@
|
|||
include ':app'
|
||||
include ':tools:make-keyboard-text'
|
||||
include ':tools:make-emoji-keys'
|
||||
|
|
Loading…
Add table
Reference in a new issue