mirror of
https://github.com/yuliskov/LeanKeyboard.git
synced 2025-12-23 22:17:44 -05:00
refactor
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -2,6 +2,7 @@ notes.txt
|
||||
/other
|
||||
/files
|
||||
/misc
|
||||
/releases
|
||||
tmp/
|
||||
*_bak*
|
||||
*_tmp
|
||||
|
||||
17
build.gradle
17
build.gradle
@@ -3,6 +3,11 @@
|
||||
buildscript {
|
||||
repositories {
|
||||
jcenter()
|
||||
maven {
|
||||
url 'https://maven.google.com/'
|
||||
name 'Google'
|
||||
}
|
||||
google()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:2.3.0'
|
||||
@@ -17,13 +22,19 @@ buildscript {
|
||||
compileSdkVersion = 28
|
||||
buildToolsVersion = "28.0.3"
|
||||
minSdkVersion = 14
|
||||
targetSdkVersion = 26
|
||||
appCompatVersion = 'com.android.support:appcompat-v7:28.+'
|
||||
targetSdkVersion = 28
|
||||
espressoCoreVersion = 'com.android.support.test.espresso:espresso-core:2.2.2'
|
||||
junitVersion = 'junit:junit:4.12'
|
||||
supportVersion = 'com.android.support:support-v4:28.+'
|
||||
robolectricVersion = 'org.robolectric:robolectric:3.5.1'
|
||||
crashlyticsVersion = 'com.crashlytics.sdk.android:crashlytics:2.8.0@aar'
|
||||
// androidx migration:
|
||||
// https://developer.android.com/jetpack/androidx/migrate
|
||||
// https://developer.android.com/jetpack/androidx/migrate/artifact-mappings
|
||||
appCompatXVersion = 'androidx.appcompat:appcompat:1.0.0'
|
||||
supportXVersion = 'androidx.legacy:legacy-support-v4:1.0.0'
|
||||
leanbackCompatXVersion = 'androidx.leanback:leanback:1.0.0'
|
||||
designXVersion = 'com.google.android.material:material:1.0.0'
|
||||
constraintXVersion = 'androidx.constraintlayout:constraintlayout:1.1.3'
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,13 +1,2 @@
|
||||
# Project-wide Gradle settings.
|
||||
# IDE (e.g. Android Studio) users:
|
||||
# Gradle settings configured through the IDE *will override*
|
||||
# any settings specified in this file.
|
||||
# For more details on how to configure your build environment visit
|
||||
# http://www.gradle.org/docs/current/userguide/build_environment.html
|
||||
# Specifies the JVM arguments used for the daemon process.
|
||||
# The setting is particularly useful for tweaking memory settings.
|
||||
org.gradle.jvmargs=-Xmx512m
|
||||
# When configured, Gradle will run in incubating parallel mode.
|
||||
# This option should only be used with decoupled projects. More details, visit
|
||||
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
|
||||
# org.gradle.parallel=true
|
||||
android.useAndroidX=true
|
||||
android.enableJetifier=true
|
||||
|
||||
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
@@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.8.1-all.zip
|
||||
|
||||
@@ -1,6 +1,12 @@
|
||||
apply plugin: 'com.android.application'
|
||||
|
||||
android {
|
||||
// FIX: Default interface methods are only supported starting with Android N (--min-api 24)
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
compileSdkVersion project.properties.compileSdkVersion
|
||||
buildToolsVersion project.properties.buildToolsVersion
|
||||
|
||||
@@ -8,8 +14,8 @@ android {
|
||||
applicationId "org.liskovsoft.leankeykeyboard.pro"
|
||||
minSdkVersion project.properties.minSdkVersion
|
||||
targetSdkVersion project.properties.targetSdkVersion
|
||||
versionCode 80
|
||||
versionName "4.3.30"
|
||||
versionCode 90
|
||||
versionName "4.4.00"
|
||||
|
||||
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
|
||||
|
||||
@@ -40,6 +46,12 @@ android {
|
||||
disable 'MissingTranslation'
|
||||
disable 'NewApi'
|
||||
}
|
||||
|
||||
productFlavors {
|
||||
Vplaystore {
|
||||
applicationId "org.liskovsoft.androidtv.rukeyboard"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
@@ -47,6 +59,9 @@ dependencies {
|
||||
androidTestCompile(project.properties.espressoCoreVersion, {
|
||||
exclude group: 'com.android.support', module: 'support-annotations'
|
||||
})
|
||||
compile project.properties.appCompatVersion
|
||||
compile project.properties.appCompatXVersion
|
||||
compile project.properties.leanbackCompatXVersion
|
||||
compile project.properties.constraintXVersion
|
||||
compile project.properties.designXVersion
|
||||
testCompile project.properties.junitVersion
|
||||
}
|
||||
|
||||
@@ -1,39 +1,93 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" package="com.liskovsoft.leankeykeyboard">
|
||||
<uses-feature android:name="android.software.leanback" android:required="false"/>
|
||||
<uses-feature android:name="android.hardware.touchscreen" android:required="false"/>
|
||||
<uses-feature android:name="android.hardware.microphone" android:required="false"/>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
package="com.liskovsoft.leankeykeyboard"> <!-- NOTE: use older sdk -->
|
||||
<uses-sdk tools:overrideLibrary=" android.support.v17.leanback, androidx.leanback"/>
|
||||
|
||||
<uses-feature
|
||||
android:name="android.software.leanback"
|
||||
android:required="false"/>
|
||||
<uses-feature
|
||||
android:name="android.hardware.touchscreen"
|
||||
android:required="false"/>
|
||||
<uses-feature
|
||||
android:name="android.hardware.microphone"
|
||||
android:required="false"/>
|
||||
|
||||
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
|
||||
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>
|
||||
<application android:banner="@drawable/banner_app" android:label="@string/ime_name" android:icon="@drawable/ic_launcher" tools:targetApi="21">
|
||||
<activity android:launchMode="singleTop" android:name="com.liskovsoft.other.GenericLaunchActivity">
|
||||
<meta-data android:name="package" android:value="com.android.settings"/>
|
||||
<meta-data android:name="class" android:value="com.android.settings.Settings$LanguageAndInputSettingsActivity"/>
|
||||
<!-- "Languages & input" on old api -->
|
||||
<meta-data android:name="package_alt" android:value="com.android.settings"/>
|
||||
<meta-data android:name="class_alt" android:value="com.android.settings.Settings$InputMethodAndLanguageSettingsActivity"/>
|
||||
<!-- Last try (if above not found) -->
|
||||
<meta-data android:name="intent" android:value="android.settings.INPUT_METHOD_SETTINGS"/>
|
||||
|
||||
<application
|
||||
android:banner="@drawable/banner_app"
|
||||
android:icon="@drawable/ic_launcher"
|
||||
android:label="@string/ime_name"
|
||||
tools:targetApi="21" >
|
||||
<activity
|
||||
android:name="com.liskovsoft.leankeyboard.settings.kblayout.KbLayoutActivity"
|
||||
android:theme="@style/Theme.Leanback">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN"/>
|
||||
<action android:name="android.intent.action.VIEW"/>
|
||||
|
||||
<category android:name="android.intent.category.LAUNCHER"/>
|
||||
<category android:name="android.intent.category.LEANBACK_LAUNCHER"/>
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<service android:label="@string/ime_service_name"
|
||||
<activity
|
||||
android:name="com.liskovsoft.leankeyboard.settings.kbchooser.GenericLaunchActivity"
|
||||
android:launchMode="singleTop">
|
||||
<meta-data
|
||||
android:name="package"
|
||||
android:value="com.android.settings"/>
|
||||
<meta-data
|
||||
android:name="class"
|
||||
android:value="com.android.settings.Settings$LanguageAndInputSettingsActivity"/>
|
||||
<!-- "Languages & input" on old api -->
|
||||
<meta-data
|
||||
android:name="package_alt"
|
||||
android:value="com.android.settings"/>
|
||||
<meta-data
|
||||
android:name="class_alt"
|
||||
android:value="com.android.settings.Settings$InputMethodAndLanguageSettingsActivity"/>
|
||||
<!-- Last try (if above not found) -->
|
||||
<meta-data
|
||||
android:name="intent"
|
||||
android:value="android.settings.INPUT_METHOD_SETTINGS"/>
|
||||
|
||||
<!-- <intent-filter>-->
|
||||
<!-- <action android:name="android.intent.action.MAIN"/>-->
|
||||
<!-- <action android:name="android.intent.action.VIEW"/>-->
|
||||
|
||||
<!-- <category android:name="android.intent.category.LAUNCHER"/>-->
|
||||
<!-- <category android:name="android.intent.category.LEANBACK_LAUNCHER"/>-->
|
||||
<!-- </intent-filter>-->
|
||||
</activity>
|
||||
|
||||
<service
|
||||
android:name="com.google.leanback.ime.LeanbackImeService"
|
||||
android:label="@string/ime_service_name"
|
||||
android:permission="android.permission.BIND_INPUT_METHOD">
|
||||
<intent-filter>
|
||||
<action android:name="android.view.InputMethod"/>
|
||||
</intent-filter>
|
||||
<meta-data android:name="android.view.im" android:resource="@xml/method"/>
|
||||
|
||||
<meta-data
|
||||
android:name="android.view.im"
|
||||
android:resource="@xml/method"/>
|
||||
</service>
|
||||
<receiver android:name="com.liskovsoft.other.RestartServiceReceiver" android:exported="true" android:enabled="true">
|
||||
|
||||
<receiver
|
||||
android:name="com.liskovsoft.leankeyboard.other.RestartServiceReceiver"
|
||||
android:enabled="true"
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.PACKAGE_ADDED"/>
|
||||
<action android:name="android.intent.action.PACKAGE_REMOVED"/>
|
||||
<action android:name="android.intent.action.PACKAGE_REPLACED"/>
|
||||
|
||||
<data android:scheme="package"/>
|
||||
</intent-filter>
|
||||
</receiver>
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
@@ -36,9 +36,9 @@ import android.widget.RelativeLayout.LayoutParams;
|
||||
import com.google.android.leanback.ime.voice.RecognizerView;
|
||||
import com.google.android.leanback.ime.voice.SpeechLevelSource;
|
||||
import com.google.leanback.ime.LeanbackImeService;
|
||||
import com.liskovsoft.other.ChooseKeyboardDialog;
|
||||
import com.liskovsoft.utils.LeanKeyPreferences;
|
||||
import com.liskovsoft.keyboardaddons.KeyboardManager;
|
||||
import com.liskovsoft.leankeyboard.settings.kblayout.KbLayoutActivity;
|
||||
import com.liskovsoft.leankeyboard.utils.LeanKeyPreferences;
|
||||
import com.liskovsoft.leankeyboard.addons.KeyboardManager;
|
||||
import com.liskovsoft.leankeykeyboard.R;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -878,7 +878,8 @@ public class LeanbackKeyboardContainer {
|
||||
return true;
|
||||
} else if (keyCode == LeanbackKeyboardView.KEYCODE_LANG_TOGGLE) {
|
||||
// NOTE: normal constructor cannot be applied here
|
||||
new ChooseKeyboardDialog(mContext, mMainKeyboardView).run();
|
||||
//new ChooseKeyboardDialog(mContext, mMainKeyboardView).run();
|
||||
showKbLayoutSettings();
|
||||
return true;
|
||||
} else {
|
||||
if (mCurrKeyInfo.type == KeyFocus.TYPE_MAIN) {
|
||||
@@ -1185,7 +1186,8 @@ public class LeanbackKeyboardContainer {
|
||||
prefs.setRunOnce(true);
|
||||
|
||||
// NOTE: normal constructor cannot be applied here
|
||||
new ChooseKeyboardDialog(mContext, mMainKeyboardView).run();
|
||||
//new ChooseKeyboardDialog(mContext, mMainKeyboardView).run();
|
||||
showKbLayoutSettings();
|
||||
}
|
||||
|
||||
public interface DismissListener {
|
||||
@@ -1408,4 +1410,10 @@ public class LeanbackKeyboardContainer {
|
||||
public interface VoiceListener {
|
||||
void onVoiceResult(String result);
|
||||
}
|
||||
|
||||
private void showKbLayoutSettings() {
|
||||
Intent intent = new Intent(mContext, KbLayoutActivity.class);
|
||||
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
mContext.startActivity(intent);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,6 @@ import android.graphics.PointF;
|
||||
import android.inputmethodservice.InputMethodService;
|
||||
import android.inputmethodservice.Keyboard.Key;
|
||||
import android.os.Handler;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.text.InputType;
|
||||
import android.util.Log;
|
||||
import android.view.KeyEvent;
|
||||
@@ -16,6 +15,7 @@ import android.view.View.OnTouchListener;
|
||||
import android.view.inputmethod.EditorInfo;
|
||||
import android.widget.Button;
|
||||
import android.widget.RelativeLayout;
|
||||
import androidx.annotation.NonNull;
|
||||
import com.google.android.leanback.ime.LeanbackKeyboardContainer.KeyFocus;
|
||||
import com.google.android.pano.util.TouchNavSpaceTracker;
|
||||
import com.liskovsoft.leankeykeyboard.R;
|
||||
|
||||
@@ -19,7 +19,7 @@ import com.google.android.leanback.ime.LeanbackKeyboardController.InputListener;
|
||||
import com.google.android.leanback.ime.LeanbackKeyboardView;
|
||||
import com.google.android.leanback.ime.LeanbackSuggestionsFactory;
|
||||
import com.google.android.leanback.ime.LeanbackUtils;
|
||||
import com.liskovsoft.utils.LangUpdater;
|
||||
import com.liskovsoft.leankeyboard.utils.LangUpdater;
|
||||
|
||||
public class LeanbackImeService extends InputMethodService {
|
||||
private static final boolean DEBUG = false;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.liskovsoft.keyboardaddons;
|
||||
package com.liskovsoft.leankeyboard.addons;
|
||||
|
||||
import android.inputmethodservice.Keyboard;
|
||||
import android.support.annotation.Nullable;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
public interface KeyboardBuilder {
|
||||
@Nullable
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.liskovsoft.keyboardaddons;
|
||||
package com.liskovsoft.leankeyboard.addons;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.liskovsoft.keyboardaddons;
|
||||
package com.liskovsoft.leankeyboard.addons;
|
||||
|
||||
public interface KeyboardInfo {
|
||||
boolean isEnabled();
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.liskovsoft.keyboardaddons;
|
||||
package com.liskovsoft.leankeyboard.addons;
|
||||
|
||||
import android.content.Context;
|
||||
import android.inputmethodservice.Keyboard;
|
||||
import com.liskovsoft.keyboardaddons.reskbdfactory.ResKeyboardFactory;
|
||||
import com.liskovsoft.leankeyboard.addons.reskbdfactory.ResKeyboardFactory;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.liskovsoft.keyboardaddons;
|
||||
package com.liskovsoft.leankeyboard.addons;
|
||||
|
||||
import android.content.Context;
|
||||
import com.liskovsoft.utils.LeanKeyPreferences;
|
||||
import com.liskovsoft.leankeyboard.utils.LeanKeyPreferences;
|
||||
|
||||
public class KeyboardStateManager {
|
||||
private final Context mContext;
|
||||
@@ -14,11 +14,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.liskovsoft.keyboardaddons.apkkbdfactory.addons;
|
||||
package com.liskovsoft.leankeyboard.addons.apkkbdfactory.addons;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.annotation.Nullable;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
public interface AddOn {
|
||||
interface AddOnResourceMapping {
|
||||
@@ -14,16 +14,16 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.liskovsoft.keyboardaddons.apkkbdfactory.addons;
|
||||
package com.liskovsoft.leankeyboard.addons.apkkbdfactory.addons;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageManager.NameNotFoundException;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.support.v4.util.SparseArrayCompat;
|
||||
import android.util.SparseIntArray;
|
||||
|
||||
import com.liskovsoft.keyboardaddons.apkkbdfactory.utils.Logger;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.collection.SparseArrayCompat;
|
||||
import com.liskovsoft.leankeyboard.addons.apkkbdfactory.utils.Logger;
|
||||
|
||||
import java.lang.ref.WeakReference;
|
||||
import java.util.Arrays;
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.liskovsoft.keyboardaddons.apkkbdfactory.addons;
|
||||
package com.liskovsoft.leankeyboard.addons.apkkbdfactory.addons;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
@@ -27,7 +27,7 @@ import android.util.AttributeSet;
|
||||
import android.util.Xml;
|
||||
|
||||
//import com.liskovsoft.keyboardaddons.apklangfactory.AnySoftKeyboard;
|
||||
import com.liskovsoft.keyboardaddons.apkkbdfactory.utils.Logger;
|
||||
import com.liskovsoft.leankeyboard.addons.apkkbdfactory.utils.Logger;
|
||||
|
||||
import org.xmlpull.v1.XmlPullParser;
|
||||
import org.xmlpull.v1.XmlPullParserException;
|
||||
@@ -1,11 +1,11 @@
|
||||
package com.liskovsoft.keyboardaddons.apkkbdfactory.addons;
|
||||
package com.liskovsoft.leankeyboard.addons.apkkbdfactory.addons;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.Resources;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.util.SparseIntArray;
|
||||
|
||||
import com.liskovsoft.keyboardaddons.apkkbdfactory.utils.Logger;
|
||||
import androidx.annotation.NonNull;
|
||||
import com.liskovsoft.leankeyboard.addons.apkkbdfactory.utils.Logger;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -14,14 +14,14 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.liskovsoft.keyboardaddons.apkkbdfactory.keyboards;
|
||||
package com.liskovsoft.leankeyboard.addons.apkkbdfactory.keyboards;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.annotation.Nullable;
|
||||
|
||||
import com.liskovsoft.keyboardaddons.KeyboardBuilder;
|
||||
import com.liskovsoft.keyboardaddons.apkkbdfactory.addons.AddOn;
|
||||
import com.liskovsoft.keyboardaddons.apkkbdfactory.addons.AddOnImpl;
|
||||
import androidx.annotation.Nullable;
|
||||
import com.liskovsoft.leankeyboard.addons.KeyboardBuilder;
|
||||
import com.liskovsoft.leankeyboard.addons.apkkbdfactory.addons.AddOn;
|
||||
import com.liskovsoft.leankeyboard.addons.apkkbdfactory.addons.AddOnImpl;
|
||||
|
||||
public class ApkKeyboardAddOnAndBuilder extends AddOnImpl implements KeyboardBuilder {
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.liskovsoft.keyboardaddons.apkkbdfactory.keyboards;
|
||||
package com.liskovsoft.leankeyboard.addons.apkkbdfactory.keyboards;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
@@ -23,11 +23,11 @@ import android.preference.PreferenceManager;
|
||||
import android.text.TextUtils;
|
||||
import android.util.AttributeSet;
|
||||
|
||||
import com.liskovsoft.keyboardaddons.KeyboardBuilder;
|
||||
import com.liskovsoft.keyboardaddons.KeyboardFactory;
|
||||
import com.liskovsoft.keyboardaddons.apkkbdfactory.addons.AddOn;
|
||||
import com.liskovsoft.keyboardaddons.apkkbdfactory.addons.AddOnsFactory;
|
||||
import com.liskovsoft.keyboardaddons.apkkbdfactory.utils.Logger;
|
||||
import com.liskovsoft.leankeyboard.addons.KeyboardBuilder;
|
||||
import com.liskovsoft.leankeyboard.addons.KeyboardFactory;
|
||||
import com.liskovsoft.leankeyboard.addons.apkkbdfactory.addons.AddOn;
|
||||
import com.liskovsoft.leankeyboard.addons.apkkbdfactory.addons.AddOnsFactory;
|
||||
import com.liskovsoft.leankeyboard.addons.apkkbdfactory.utils.Logger;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.liskovsoft.keyboardaddons.apkkbdfactory.utils;
|
||||
package com.liskovsoft.leankeyboard.addons.apkkbdfactory.utils;
|
||||
|
||||
public class BuildConfig {
|
||||
public final static boolean TESTING_BUILD = true;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.liskovsoft.keyboardaddons.apkkbdfactory.utils;
|
||||
package com.liskovsoft.leankeyboard.addons.apkkbdfactory.utils;
|
||||
|
||||
import android.os.Build;
|
||||
import android.util.Log;
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.liskovsoft.keyboardaddons.apkkbdfactory.utils;
|
||||
package com.liskovsoft.leankeyboard.addons.apkkbdfactory.utils;
|
||||
|
||||
public interface LogProvider {
|
||||
|
||||
@@ -14,9 +14,10 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.liskovsoft.keyboardaddons.apkkbdfactory.utils;
|
||||
package com.liskovsoft.leankeyboard.addons.apkkbdfactory.utils;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Locale;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.liskovsoft.keyboardaddons.apkkbdfactory.utils;
|
||||
package com.liskovsoft.leankeyboard.addons.apkkbdfactory.utils;
|
||||
|
||||
/**
|
||||
* Doesn't do anything. For release.
|
||||
@@ -14,7 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.liskovsoft.keyboardaddons.apkkbdfactory.utils;
|
||||
package com.liskovsoft.leankeyboard.addons.apkkbdfactory.utils;
|
||||
|
||||
import android.util.Xml;
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package com.liskovsoft.keyboardaddons.apkkbdfactory.utils;
|
||||
package com.liskovsoft.leankeyboard.addons.apkkbdfactory.utils;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileWriter;
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.liskovsoft.keyboardaddons.reskbdfactory;
|
||||
package com.liskovsoft.leankeyboard.addons.reskbdfactory;
|
||||
|
||||
import android.inputmethodservice.Keyboard;
|
||||
import android.support.annotation.Nullable;
|
||||
import com.liskovsoft.keyboardaddons.KeyboardBuilder;
|
||||
import androidx.annotation.Nullable;
|
||||
import com.liskovsoft.leankeyboard.addons.KeyboardBuilder;
|
||||
|
||||
class ResKeyboardBuilder implements KeyboardBuilder {
|
||||
@Nullable
|
||||
@@ -1,12 +1,11 @@
|
||||
package com.liskovsoft.keyboardaddons.reskbdfactory;
|
||||
package com.liskovsoft.leankeyboard.addons.reskbdfactory;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.Resources;
|
||||
import android.inputmethodservice.Keyboard;
|
||||
import android.support.annotation.Nullable;
|
||||
import com.liskovsoft.keyboardaddons.KeyboardBuilder;
|
||||
import com.liskovsoft.keyboardaddons.KeyboardFactory;
|
||||
import com.liskovsoft.keyboardaddons.KeyboardInfo;
|
||||
import androidx.annotation.Nullable;
|
||||
import com.liskovsoft.leankeyboard.addons.KeyboardBuilder;
|
||||
import com.liskovsoft.leankeyboard.addons.KeyboardFactory;
|
||||
import com.liskovsoft.leankeyboard.addons.KeyboardInfo;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -1,9 +1,9 @@
|
||||
package com.liskovsoft.keyboardaddons.reskbdfactory;
|
||||
package com.liskovsoft.leankeyboard.addons.reskbdfactory;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
import android.preference.PreferenceManager;
|
||||
import com.liskovsoft.keyboardaddons.KeyboardInfo;
|
||||
import com.liskovsoft.leankeyboard.addons.KeyboardInfo;
|
||||
import com.liskovsoft.leankeykeyboard.R;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.liskovsoft.keyboardaddons.reskbdfactory;
|
||||
package com.liskovsoft.leankeyboard.addons.reskbdfactory;
|
||||
|
||||
import com.liskovsoft.keyboardaddons.KeyboardInfo;
|
||||
import com.liskovsoft.leankeyboard.addons.KeyboardInfo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.liskovsoft.other;
|
||||
package com.liskovsoft.leankeyboard.other;
|
||||
import android.app.*;
|
||||
import android.content.*;
|
||||
import android.content.res.*;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.liskovsoft.other;
|
||||
package com.liskovsoft.leankeyboard.settings.kbchooser;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.content.ActivityNotFoundException;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.liskovsoft.other;
|
||||
package com.liskovsoft.leankeyboard.settings.kblayout;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.annotation.TargetApi;
|
||||
@@ -15,8 +15,8 @@ import android.view.ViewGroup;
|
||||
import android.view.Window;
|
||||
import android.view.WindowManager;
|
||||
import android.widget.CheckedTextView;
|
||||
import com.liskovsoft.keyboardaddons.KeyboardInfo;
|
||||
import com.liskovsoft.keyboardaddons.reskbdfactory.ResKeyboardInfo;
|
||||
import com.liskovsoft.leankeyboard.addons.KeyboardInfo;
|
||||
import com.liskovsoft.leankeyboard.addons.reskbdfactory.ResKeyboardInfo;
|
||||
import com.liskovsoft.leankeykeyboard.R;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -0,0 +1,14 @@
|
||||
package com.liskovsoft.leankeyboard.settings.kblayout;
|
||||
|
||||
import android.os.Bundle;
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import com.liskovsoft.leankeykeyboard.R;
|
||||
|
||||
public class KbLayoutActivity extends FragmentActivity {
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_kblayout);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
package com.liskovsoft.leankeyboard.settings.kblayout;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.util.Log;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.leanback.app.GuidedStepSupportFragment;
|
||||
import androidx.leanback.widget.GuidanceStylist.Guidance;
|
||||
import androidx.leanback.widget.GuidedAction;
|
||||
import com.liskovsoft.leankeykeyboard.R;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class KbLayoutFragment extends GuidedStepSupportFragment {
|
||||
private static final long ACTION_ID_NAME = 0;
|
||||
private static final long ACTION_ID_EMAIL = 1;
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public Guidance onCreateGuidance(Bundle savedInstanceState) {
|
||||
Guidance guidance = new Guidance("User Profile", "Use Name",
|
||||
"", ContextCompat.getDrawable(getActivity(), R.drawable.ic_launcher));
|
||||
return guidance;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCreateActions(@NonNull List<GuidedAction> actions, Bundle savedInstanceState) {
|
||||
GuidedAction action = new GuidedAction.Builder(getActivity()) .id(ACTION_ID_NAME).description("String name").descriptionEditable(true)
|
||||
.title(getString(R.string.user_name)).build();
|
||||
actions.add(action);
|
||||
|
||||
action = new GuidedAction.Builder(getActivity()).id(ACTION_ID_EMAIL).description("String email").descriptionEditable(true).title(getString(R.string.email_id)).build();
|
||||
actions.add(action);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void onGuidedActionClicked(GuidedAction action) {
|
||||
if (ACTION_ID_NAME == action.getId()) {
|
||||
Log.d("editedText", action.getDescription().toString());
|
||||
} else if (ACTION_ID_EMAIL == action.getId()) {
|
||||
Log.d("editedText", action.getDescription().toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.liskovsoft.utils;
|
||||
package com.liskovsoft.leankeyboard.utils;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.liskovsoft.utils;
|
||||
package com.liskovsoft.leankeyboard.utils;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.liskovsoft.utils;
|
||||
package com.liskovsoft.leankeyboard.utils;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.liskovsoft.utils;
|
||||
package com.liskovsoft.leankeyboard.utils;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.Build;
|
||||
@@ -1,19 +1,3 @@
|
||||
/*
|
||||
* Copyright (C) 2008 Google Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
// Useful links:
|
||||
// https://android.googlesource.com/platform/frameworks/base/+/de47f1c358c8186ff3e14b887d5869f69b9a9d6c/core/java/com/android/internal/widget/DialogTitle.java
|
||||
// com.android.internal.widget.DialogTitle: https://android.googlesource.com/platform/frameworks/base/+/master/core/res/res/layout/alert_dialog.xml
|
||||
@@ -21,20 +5,21 @@
|
||||
// <declare-styleable name="TextAppearance">: https://github.com/aosp-mirror/platform_frameworks_base/blob/master/core/res/res/values/attrs.xml
|
||||
|
||||
|
||||
package com.liskovsoft.other.widgets;
|
||||
package com.liskovsoft.leankeyboard.widgets;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.TypedArray;
|
||||
import android.text.Layout;
|
||||
import android.util.AttributeSet;
|
||||
import android.util.TypedValue;
|
||||
import androidx.appcompat.widget.AppCompatTextView;
|
||||
import com.liskovsoft.leankeykeyboard.R;
|
||||
|
||||
/**
|
||||
* Used by dialogs to change the font size and number of lines to try to fit
|
||||
* the text to the available space.
|
||||
*/
|
||||
public class DialogTitle extends android.support.v7.widget.AppCompatTextView {
|
||||
public class DialogTitle extends AppCompatTextView {
|
||||
|
||||
public DialogTitle(Context context, AttributeSet attrs,
|
||||
int defStyle) {
|
||||
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
tools:context="com.liskovsoft.leankeyboard.settings.kblayout.KbLayoutActivity">
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Fix layout errors: https://developer.android.com/training/tv/start/layouts -->
|
||||
<fragment
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:name="com.liskovsoft.leankeyboard.settings.kblayout.KbLayoutFragment"
|
||||
android:id="@+id/kb_layout_fragment"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"/>
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<RelativeLayout android:layout_gravity="center" android:paddingLeft="@dimen/candidate_padding_horizontal" android:paddingRight="@dimen/candidate_padding_horizontal" android:focusable="true" android:clipChildren="false" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/candidate_margin_horizontal" android:layout_marginRight="@dimen/candidate_margin_horizontal"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<Button android:textSize="@dimen/candidate_font_size" android:textColor="@color/candidate_font_color" android:ellipsize="none" android:gravity="center" android:id="@id/text" android:background="@android:color/transparent" android:clipChildren="false" android:layout_width="wrap_content" android:layout_height="@dimen/candidate_height" android:singleLine="true" android:textAllCaps="false" android:fontFamily="sans-serif-condensed" />
|
||||
<Button android:textSize="@dimen/candidate_font_size" android:textColor="@color/candidate_font_color" android:ellipsize="none" android:gravity="center" android:id="@+id/text" android:background="@android:color/transparent" android:clipChildren="false" android:layout_width="wrap_content" android:layout_height="@dimen/candidate_height" android:singleLine="true" android:textAllCaps="false" android:fontFamily="sans-serif-condensed" />
|
||||
</RelativeLayout>
|
||||
@@ -3,7 +3,8 @@
|
||||
<string name="ime_name">LeanKey Keyboard Pro</string>
|
||||
<string name="ime_service_name">LeanKey Keyboard Pro</string>
|
||||
<string name="word_separators">" .,;:!?
|
||||
()[]*&@{}/<>_+=|"</string>
|
||||
()[]*&@{}/<>_+=|"
|
||||
</string>
|
||||
<string name="label_go_key">Go</string>
|
||||
<string name="label_next_key">Next</string>
|
||||
<string name="label_send_key">Send</string>
|
||||
@@ -26,4 +27,6 @@
|
||||
<string name="keyboard_password_character_no_headset">Dot.</string>
|
||||
<string name="language_dialog_title">Select additional layouts</string>
|
||||
<string name="language_dialog_subtitle">To open dialog next time, long press on \'world\' button</string>
|
||||
<string name="user_name">User Name</string>
|
||||
<string name="email_id">Email</string>
|
||||
</resources>
|
||||
|
||||
4
leankeykeyboard/src/main/res/values/styles.xml
Normal file
4
leankeykeyboard/src/main/res/values/styles.xml
Normal file
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<style name="AppTheme" parent="@style/Theme.Leanback"/>
|
||||
</resources>
|
||||
Reference in New Issue
Block a user