diff --git a/java/Android.bp b/java/Android.bp
index 613b451488881b0cb0fbfd36f366e9d4a2e091f1..12ea76e946dd3f63c864330a44ef18a1733ee8ce 100644
--- a/java/Android.bp
+++ b/java/Android.bp
@@ -45,6 +45,7 @@ android_app {
"jsr305",
"latinime-common",
"androidx.legacy_legacy-support-v4",
+ "elib",
],
// Do not compress dictionary files to mmap dict data runtime
diff --git a/java/AndroidManifest.xml b/java/AndroidManifest.xml
index 8c3bc005f4ae799d4dd37c22901b1346c84a485f..8b02fa595cf457922adde41190260b40b7b232bc 100644
--- a/java/AndroidManifest.xml
+++ b/java/AndroidManifest.xml
@@ -19,7 +19,7 @@
package="com.android.inputmethod.latin"
android:versionCode="30">
-
diff --git a/java/res/drawable-night/ic_emoji_activity_you.xml b/java/res/drawable-night/ic_emoji_activity_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b916d4f9e1440c3796251b85d5b465487958f3e9
--- /dev/null
+++ b/java/res/drawable-night/ic_emoji_activity_you.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable-night/ic_emoji_emoticons_you.xml b/java/res/drawable-night/ic_emoji_emoticons_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a8f167ac3850ae49f1c56e721d93ce375bc41b7a
--- /dev/null
+++ b/java/res/drawable-night/ic_emoji_emoticons_you.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable-night/ic_emoji_flag_you.xml b/java/res/drawable-night/ic_emoji_flag_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..8bd0fd7451bd7d18c0256e475cd23fbf95286278
--- /dev/null
+++ b/java/res/drawable-night/ic_emoji_flag_you.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable-night/ic_emoji_food_you.xml b/java/res/drawable-night/ic_emoji_food_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..19d7d57007c4bfeb53ec7c85f21bf61c7b057dfb
--- /dev/null
+++ b/java/res/drawable-night/ic_emoji_food_you.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable-night/ic_emoji_nature_you.xml b/java/res/drawable-night/ic_emoji_nature_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..6f03e50b47fc2a1303af4c690284406e679092f7
--- /dev/null
+++ b/java/res/drawable-night/ic_emoji_nature_you.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable-night/ic_emoji_objects_you.xml b/java/res/drawable-night/ic_emoji_objects_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..cf150f4120403653f26416b6c7da346ac85dbb47
--- /dev/null
+++ b/java/res/drawable-night/ic_emoji_objects_you.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable-night/ic_emoji_people_you.xml b/java/res/drawable-night/ic_emoji_people_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..f91b5c4f3ca0f53ce63d346df401d941d1522914
--- /dev/null
+++ b/java/res/drawable-night/ic_emoji_people_you.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable-night/ic_emoji_places_you.xml b/java/res/drawable-night/ic_emoji_places_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..ace036465e75190743715db360da24b3daee48e6
--- /dev/null
+++ b/java/res/drawable-night/ic_emoji_places_you.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable-night/ic_emoji_recents_you.xml b/java/res/drawable-night/ic_emoji_recents_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..50f0e086b07639343615c690effe18eef7ba94f9
--- /dev/null
+++ b/java/res/drawable-night/ic_emoji_recents_you.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable-night/ic_emoji_symbols_you.xml b/java/res/drawable-night/ic_emoji_symbols_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..d2dbc220d43de0b13d31f0bc21f7b09848ffd922
--- /dev/null
+++ b/java/res/drawable-night/ic_emoji_symbols_you.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable/btn_keyboard_key_enter_normal_you.xml b/java/res/drawable/btn_keyboard_key_enter_normal_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..eea5571d2ad29a1d76576ad67e881d5e0b33ac5a
--- /dev/null
+++ b/java/res/drawable/btn_keyboard_key_enter_normal_you.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable/btn_keyboard_key_enter_pressed_you.xml b/java/res/drawable/btn_keyboard_key_enter_pressed_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..413b9cbb548b66b1d41a17e1fca75e26c872c582
--- /dev/null
+++ b/java/res/drawable/btn_keyboard_key_enter_pressed_you.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable/btn_keyboard_key_enter_you.xml b/java/res/drawable/btn_keyboard_key_enter_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e5491baa7cc106f3c37743e6c6401baab2102b45
--- /dev/null
+++ b/java/res/drawable/btn_keyboard_key_enter_you.xml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
diff --git a/java/res/drawable/ic_emoji_activity_you.xml b/java/res/drawable/ic_emoji_activity_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..801f8950a819253c04c19deb6808d51861cc56a6
--- /dev/null
+++ b/java/res/drawable/ic_emoji_activity_you.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable/ic_emoji_emoticons_you.xml b/java/res/drawable/ic_emoji_emoticons_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e1820906b1b382a7372096889de07132bda3fa39
--- /dev/null
+++ b/java/res/drawable/ic_emoji_emoticons_you.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable/ic_emoji_flag_you.xml b/java/res/drawable/ic_emoji_flag_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..3632cfe581a1ba6c02d7dae326befd2fd7d19df1
--- /dev/null
+++ b/java/res/drawable/ic_emoji_flag_you.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable/ic_emoji_food_you.xml b/java/res/drawable/ic_emoji_food_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..9da2c48fdb615ca3faaa7588b34deece3754a72a
--- /dev/null
+++ b/java/res/drawable/ic_emoji_food_you.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable/ic_emoji_nature_you.xml b/java/res/drawable/ic_emoji_nature_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..47525ad94c5720e2e16ac1cbb660288461366965
--- /dev/null
+++ b/java/res/drawable/ic_emoji_nature_you.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable/ic_emoji_objects_you.xml b/java/res/drawable/ic_emoji_objects_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..be7f32f785b8efd76732a68e7276103be84f630f
--- /dev/null
+++ b/java/res/drawable/ic_emoji_objects_you.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable/ic_emoji_people_you.xml b/java/res/drawable/ic_emoji_people_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..88394bf77a2a1b51344f28677eca2fb0a97dea91
--- /dev/null
+++ b/java/res/drawable/ic_emoji_people_you.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable/ic_emoji_places_you.xml b/java/res/drawable/ic_emoji_places_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..93d74f773bb49ba8300c2fef9d0d0558a45fbb78
--- /dev/null
+++ b/java/res/drawable/ic_emoji_places_you.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable/ic_emoji_recents_you.xml b/java/res/drawable/ic_emoji_recents_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..f06480c512ee6672af3c508160e9060f30c18287
--- /dev/null
+++ b/java/res/drawable/ic_emoji_recents_you.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable/ic_emoji_symbols_you.xml b/java/res/drawable/ic_emoji_symbols_you.xml
new file mode 100644
index 0000000000000000000000000000000000000000..fb59399f5cce6f3438edd74a18bf04511a631274
--- /dev/null
+++ b/java/res/drawable/ic_emoji_symbols_you.xml
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
diff --git a/java/res/drawable/sym_keyboard_delete_you.xml b/java/res/drawable/sym_keyboard_delete_you.xml
index 0cd188692d82f81f19654e97ad6cf137c16362d4..4ebc1a8801324fe102641ee4f63f11a1fd937136 100644
--- a/java/res/drawable/sym_keyboard_delete_you.xml
+++ b/java/res/drawable/sym_keyboard_delete_you.xml
@@ -1,10 +1,10 @@
-
-
+ android:viewportHeight="24"
+ android:autoMirrored="true">
+
diff --git a/java/res/drawable/sym_keyboard_language_switch_you.xml b/java/res/drawable/sym_keyboard_language_switch_you.xml
index a110e2ab0c7fa734e989bf916dd3b6dc7374b67c..9bfbc9274c6e2f4e203a825d7f0ffbfcaf8276f0 100644
--- a/java/res/drawable/sym_keyboard_language_switch_you.xml
+++ b/java/res/drawable/sym_keyboard_language_switch_you.xml
@@ -5,6 +5,6 @@
android:viewportHeight="24">
diff --git a/java/res/drawable/sym_keyboard_send_you.xml b/java/res/drawable/sym_keyboard_send_you.xml
index 674c9c1e318e2fecd0c815e7932f637fbba11d72..6f8bbdb4302d9448e95e1b9d2e79b7278b8034e7 100644
--- a/java/res/drawable/sym_keyboard_send_you.xml
+++ b/java/res/drawable/sym_keyboard_send_you.xml
@@ -1,10 +1,10 @@
-
-
+ android:viewportHeight="24"
+ android:autoMirrored="true">
+
diff --git a/java/res/drawable/sym_keyboard_settings_you.xml b/java/res/drawable/sym_keyboard_settings_you.xml
index 1f47957a2e8db6eacd6cbec85ba69f1564a2b8a2..954f098efa610f115cdb1d3b5366abbe13b17daf 100644
--- a/java/res/drawable/sym_keyboard_settings_you.xml
+++ b/java/res/drawable/sym_keyboard_settings_you.xml
@@ -1,11 +1,9 @@
-
-
-
+
diff --git a/java/res/drawable/sym_keyboard_shift_you.xml b/java/res/drawable/sym_keyboard_shift_you.xml
index dbe359e4d9340e55935690afdcf5d9bf7145d801..af3d6418dc58395debb20625fbb1786b9a6422d5 100644
--- a/java/res/drawable/sym_keyboard_shift_you.xml
+++ b/java/res/drawable/sym_keyboard_shift_you.xml
@@ -1,15 +1,9 @@
-
-
-
-
+ android:width="20dp"
+ android:height="16dp"
+ android:viewportWidth="20"
+ android:viewportHeight="16">
+
diff --git a/java/res/drawable/sym_keyboard_smiley_you.xml b/java/res/drawable/sym_keyboard_smiley_you.xml
index c86ede3cca4eb471069b7ad30868c7681e8ff806..22953cda94a77937b2b979f522caaa5ac5371357 100644
--- a/java/res/drawable/sym_keyboard_smiley_you.xml
+++ b/java/res/drawable/sym_keyboard_smiley_you.xml
@@ -1,10 +1,9 @@
-
-
+
diff --git a/java/res/values-night/themes-you-colors.xml b/java/res/values-night/themes-you-colors.xml
index 9b109d7ea464c144664c6e7d7042fc8f4eb68335..5052a5ca0be28f2aa2ff656aa933f595b6eaa7ab 100644
--- a/java/res/values-night/themes-you-colors.xml
+++ b/java/res/values-night/themes-you-colors.xml
@@ -1,16 +1,5 @@
- @android:color/system_neutral1_1000
- @android:color/system_neutral1_800
- @android:color/system_neutral1_900
- @android:color/system_accent1_10
- @color/keyboard_key_text_color_you
- @android:color/system_accent3_200
- @android:color/system_accent3_100
- @android:color/system_neutral2_800
- @android:color/system_neutral2_900
- @android:color/system_neutral1_400
- @android:color/system_accent1_10
@color/key_hint_letter_color_lxx_dark
@color/typed_word_color_lxx_dark
@color/auto_correct_color_lxx_dark
diff --git a/java/res/values/attrs.xml b/java/res/values/attrs.xml
index 69a5d59afc87b81cc823f6dafcc203bf6a8fa861..1b9bb52262f41e3bc9bd707dcdeaa84fceb56e59 100644
--- a/java/res/values/attrs.xml
+++ b/java/res/values/attrs.xml
@@ -52,6 +52,10 @@
{@link android.graphics.drawable.StateListDrawable}, with the following possible
states: normal, pressed. -->
+
+
@@ -314,6 +318,7 @@
+
diff --git a/java/res/values/themes-you-colors.xml b/java/res/values/themes-you-colors.xml
index 456a10d5c9c57c57d84a8096cb5d18da804d9de1..8892601bf9a78a6e86f0fa493d0c94865d6bb329 100644
--- a/java/res/values/themes-you-colors.xml
+++ b/java/res/values/themes-you-colors.xml
@@ -1,19 +1,22 @@
- @android:color/system_accent3_10
- @android:color/system_neutral1_100
- @android:color/system_neutral1_200
- @android:color/system_accent1_900
+ @color/e_keyboard_background
+ @color/e_keyboard_key_background
+ @color/e_keyboard_key_pressed_background
+ @color/e_keyboard_key_text
@color/keyboard_key_text_color_you
- @android:color/system_accent3_200
- @android:color/system_accent3_800
- @android:color/system_neutral2_100
- @android:color/system_neutral2_200
- @android:color/system_neutral1_800
- @android:color/system_accent1_1000
+ @color/e_accent
+ @color/keyboard_background_you
+ @color/e_keyboard_functional_background
+ @color/e_keyboard_functional_pressed_background
+ @color/e_keyboard_key_enter_background
+ @color/e_keyboard_key_enter_pressed_background
+ @color/functional_text_color_you
+ @color/functional_text_color_you
@color/key_hint_letter_color_lxx_light
@color/typed_word_color_lxx_light
@color/auto_correct_color_lxx_light
@color/suggested_word_color_lxx_light
@color/highlight_color_lxx_light
+ @color/keyboard_background_you
diff --git a/java/res/values/themes-you.xml b/java/res/values/themes-you.xml
index 178513464cad09935e280ab49e0b0ae14c65f2bb..cb7bb7f52f1dd9851f0c7f85c7468faeaa3c22f8 100644
--- a/java/res/values/themes-you.xml
+++ b/java/res/values/themes-you.xml
@@ -74,6 +74,7 @@
- @drawable/btn_keyboard_key_you
- @drawable/btn_keyboard_key_functional_you
- @drawable/btn_keyboard_key_you
+ - @drawable/btn_keyboard_key_enter_you
- @color/keyboard_key_text_color_you
- @color/functional_text_color_you
- @color/functional_text_color_you
@@ -112,23 +113,23 @@
- false
- @color/category_page_indicator_color
- @null
- - @drawable/ic_emoji_recents_lxx_dark
- - @drawable/ic_emoji_people_lxx_dark
- - @drawable/ic_emoji_objects_lxx_dark
- - @drawable/ic_emoji_nature_lxx_dark
- - @drawable/ic_emoji_places_lxx_dark
- - @drawable/ic_emoji_symbols_lxx_dark
- - @drawable/ic_emoji_emoticons_lxx_dark
- - @drawable/ic_emoji_flag_lxx_dark
- - @drawable/ic_emoji_people_lxx_dark
- - @drawable/ic_emoji_nature_lxx_dark
- - @drawable/ic_emoji_food_lxx_dark
- - @drawable/ic_emoji_places_lxx_dark
- - @drawable/ic_emoji_activity_lxx_dark
- - @drawable/ic_emoji_objects_lxx_dark
- - @drawable/ic_emoji_symbols_lxx_dark
- - @drawable/ic_emoji_flag_lxx_dark
- - @drawable/ic_emoji_people_lxx_dark
+ - @drawable/ic_emoji_recents_you
+ - @drawable/ic_emoji_people_you
+ - @drawable/ic_emoji_objects_you
+ - @drawable/ic_emoji_nature_you
+ - @drawable/ic_emoji_places_you
+ - @drawable/ic_emoji_symbols_you
+ - @drawable/ic_emoji_emoticons_you
+ - @drawable/ic_emoji_flag_you
+ - @drawable/ic_emoji_people_you
+ - @drawable/ic_emoji_nature_you
+ - @drawable/ic_emoji_food_you
+ - @drawable/ic_emoji_places_you
+ - @drawable/ic_emoji_activity_you
+ - @drawable/ic_emoji_objects_you
+ - @drawable/ic_emoji_symbols_you
+ - @drawable/ic_emoji_flag_you
+ - @drawable/ic_emoji_people_you
diff --git a/java/src/com/android/inputmethod/keyboard/Key.java b/java/src/com/android/inputmethod/keyboard/Key.java
index 299d1b7c5e347ba9c309000bb81f52b34e90c494..3f85fd16e5594e1cfc52eb717189bf95a22be632 100644
--- a/java/src/com/android/inputmethod/keyboard/Key.java
+++ b/java/src/com/android/inputmethod/keyboard/Key.java
@@ -156,6 +156,7 @@ public class Key implements Comparable {
public static final int BACKGROUND_TYPE_STICKY_ON = 4;
public static final int BACKGROUND_TYPE_ACTION = 5;
public static final int BACKGROUND_TYPE_SPACEBAR = 6;
+ public static final int BACKGROUND_TYPE_ENTER = 7;
private final int mActionFlags;
private static final int ACTION_FLAGS_IS_REPEATABLE = 0x01;
@@ -555,6 +556,7 @@ public class Key implements Comparable {
case BACKGROUND_TYPE_STICKY_ON: return "stickyOn";
case BACKGROUND_TYPE_ACTION: return "action";
case BACKGROUND_TYPE_SPACEBAR: return "spacebar";
+ case BACKGROUND_TYPE_ENTER: return "enter";
default: return null;
}
}
@@ -978,6 +980,8 @@ public class Key implements Comparable {
new KeyBackgroundState(android.R.attr.state_active),
// 6: BACKGROUND_TYPE_SPACEBAR
new KeyBackgroundState(),
+ // 7: BACKGROUND_TYPE_ENTER
+ new KeyBackgroundState(),
};
}
@@ -989,12 +993,15 @@ public class Key implements Comparable {
@Nonnull
public final Drawable selectBackgroundDrawable(@Nonnull final Drawable keyBackground,
@Nonnull final Drawable functionalKeyBackground,
+ @Nonnull final Drawable enterBackground,
@Nonnull final Drawable spacebarBackground) {
final Drawable background;
- if (mBackgroundType == BACKGROUND_TYPE_FUNCTIONAL) {
+ if (mBackgroundType == BACKGROUND_TYPE_FUNCTIONAL || mBackgroundType == BACKGROUND_TYPE_STICKY_OFF || mBackgroundType == BACKGROUND_TYPE_STICKY_ON) {
background = functionalKeyBackground;
} else if (mBackgroundType == BACKGROUND_TYPE_SPACEBAR) {
background = spacebarBackground;
+ } else if (mBackgroundType == BACKGROUND_TYPE_ENTER) {
+ background = enterBackground;
} else {
background = keyBackground;
}
diff --git a/java/src/com/android/inputmethod/keyboard/KeyboardView.java b/java/src/com/android/inputmethod/keyboard/KeyboardView.java
index cd5073dacec22de2d004fd551fc184500b308b8d..899ffb93334020f8e8b0e24d30b037afcafaaa26 100644
--- a/java/src/com/android/inputmethod/keyboard/KeyboardView.java
+++ b/java/src/com/android/inputmethod/keyboard/KeyboardView.java
@@ -93,6 +93,7 @@ public class KeyboardView extends View {
private final float mVerticalCorrection;
private final Drawable mKeyBackground;
private final Drawable mFunctionalKeyBackground;
+ private final Drawable mEnterKeyBackground;
private final Drawable mSpacebarBackground;
private final float mSpacebarIconWidthRatio;
private final Rect mKeyBackgroundPadding = new Rect();
@@ -139,6 +140,9 @@ public class KeyboardView extends View {
R.styleable.KeyboardView_functionalKeyBackground);
mFunctionalKeyBackground = (functionalKeyBackground != null) ? functionalKeyBackground
: mKeyBackground;
+ final Drawable enterKeyBackground = keyboardViewAttr.getDrawable(
+ R.styleable.KeyboardView_enterKeyBackground);
+ mEnterKeyBackground = (enterKeyBackground!= null) ? enterKeyBackground : mFunctionalKeyBackground;
final Drawable spacebarBackground = keyboardViewAttr.getDrawable(
R.styleable.KeyboardView_spacebarBackground);
mSpacebarBackground = (spacebarBackground != null) ? spacebarBackground : mKeyBackground;
@@ -340,7 +344,7 @@ public class KeyboardView extends View {
if (!key.isSpacer()) {
final Drawable background = key.selectBackgroundDrawable(
- mKeyBackground, mFunctionalKeyBackground, mSpacebarBackground);
+ mKeyBackground, mFunctionalKeyBackground, mEnterKeyBackground, mSpacebarBackground);
if (background != null) {
onDrawKeyBackground(key, canvas, background);
}
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 8ed3a59bf583bda57e6a2d88b986296da0da5717..85369e14cdf93fee0f3284c0f1e2d1a3a2427629 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -16,6 +16,7 @@
package com.android.inputmethod.latin;
+import static android.view.WindowInsetsController.APPEARANCE_LIGHT_NAVIGATION_BARS;
import static com.android.inputmethod.latin.common.Constants.ImeOption.FORCE_ASCII;
import static com.android.inputmethod.latin.common.Constants.ImeOption.NO_MICROPHONE;
import static com.android.inputmethod.latin.common.Constants.ImeOption.NO_MICROPHONE_COMPAT;
@@ -72,6 +73,7 @@ import com.android.inputmethod.event.InputTransaction;
import com.android.inputmethod.keyboard.Keyboard;
import com.android.inputmethod.keyboard.KeyboardActionListener;
import com.android.inputmethod.keyboard.KeyboardId;
+import com.android.inputmethod.keyboard.KeyboardLayoutSet;
import com.android.inputmethod.keyboard.KeyboardSwitcher;
import com.android.inputmethod.keyboard.MainKeyboardView;
import com.android.inputmethod.latin.Suggest.OnGetSuggestedWordsCallback;
@@ -788,6 +790,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
cleanupInternalStateForFinishInput();
}
}
+ KeyboardLayoutSet.onKeyboardThemeChanged();
super.onConfigurationChanged(conf);
}
@@ -2008,11 +2011,24 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
}
private void setNavigationBarVisibility(final boolean visible) {
- if (BuildCompatUtils.EFFECTIVE_SDK_INT > Build.VERSION_CODES.M) {
+ if (BuildCompatUtils.EFFECTIVE_SDK_INT > Build.VERSION_CODES.R) {
// For N and later, IMEs can specify Color.TRANSPARENT to make the navigation bar
// transparent. For other colors the system uses the default color.
getWindow().getWindow().setNavigationBarColor(
- visible ? Color.BLACK : Color.TRANSPARENT);
+ visible ? getColor(R.color.keyboard_navigation_bar) : Color.TRANSPARENT);
+
+ if (visible) {
+ final Configuration configuration = getResources().getConfiguration();
+ final boolean isNightMode = (configuration.uiMode & Configuration.UI_MODE_NIGHT_MASK)
+ == Configuration.UI_MODE_NIGHT_YES;
+ if (!isNightMode) {
+ getWindow().getWindow().getInsetsController().setSystemBarsAppearance(
+ APPEARANCE_LIGHT_NAVIGATION_BARS, APPEARANCE_LIGHT_NAVIGATION_BARS);
+ } else {
+ getWindow().getWindow().getInsetsController().setSystemBarsAppearance(
+ 0, APPEARANCE_LIGHT_NAVIGATION_BARS);
+ }
+ }
}
}
}