diff --git a/app/src/main/java/org/dslul/openboard/inputmethod/latin/common/Constants.java b/app/src/main/java/org/dslul/openboard/inputmethod/latin/common/Constants.java
index bf8fcb74..6d3b1be2 100644
--- a/app/src/main/java/org/dslul/openboard/inputmethod/latin/common/Constants.java
+++ b/app/src/main/java/org/dslul/openboard/inputmethod/latin/common/Constants.java
@@ -249,8 +249,12 @@ public final class Constants {
public static final int CODE_ALPHA_FROM_NUMPAD = -21;
public static final int CODE_SYMBOL_FROM_NUMPAD = -22;
public static final int CODE_SELECT_ALL = -23;
+ public static final int CODE_LEFT = -24;
+ public static final int CODE_RIGHT = -25;
+ public static final int CODE_UP = -26;
+ public static final int CODE_DOWN = -27;
// Code value representing the code is not specified.
- public static final int CODE_UNSPECIFIED = -24;
+ public static final int CODE_UNSPECIFIED = -28;
public static boolean isLetterCode(final int code) {
return code >= CODE_SPACE;
diff --git a/app/src/main/java/org/dslul/openboard/inputmethod/latin/inputlogic/InputLogic.java b/app/src/main/java/org/dslul/openboard/inputmethod/latin/inputlogic/InputLogic.java
index fc6ae25b..9734fa85 100644
--- a/app/src/main/java/org/dslul/openboard/inputmethod/latin/inputlogic/InputLogic.java
+++ b/app/src/main/java/org/dslul/openboard/inputmethod/latin/inputlogic/InputLogic.java
@@ -766,6 +766,18 @@ public final class InputLogic {
case Constants.CODE_SELECT_ALL:
mConnection.selectAll();
break;
+ case Constants.CODE_LEFT:
+ sendDownUpKeyEvent(KeyEvent.KEYCODE_DPAD_LEFT);
+ break;
+ case Constants.CODE_RIGHT:
+ sendDownUpKeyEvent(KeyEvent.KEYCODE_DPAD_RIGHT);
+ break;
+ case Constants.CODE_UP:
+ sendDownUpKeyEvent(KeyEvent.KEYCODE_DPAD_UP);
+ break;
+ case Constants.CODE_DOWN:
+ sendDownUpKeyEvent(KeyEvent.KEYCODE_DPAD_DOWN);
+ break;
default:
throw new RuntimeException("Unknown key code : " + event.getMKeyCode());
}
diff --git a/app/src/main/java/org/dslul/openboard/inputmethod/latin/suggestions/SuggestionStripView.java b/app/src/main/java/org/dslul/openboard/inputmethod/latin/suggestions/SuggestionStripView.java
index 4777a310..0b4eb95c 100644
--- a/app/src/main/java/org/dslul/openboard/inputmethod/latin/suggestions/SuggestionStripView.java
+++ b/app/src/main/java/org/dslul/openboard/inputmethod/latin/suggestions/SuggestionStripView.java
@@ -88,6 +88,10 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick
private static final String SETTINGS_KEY_TAG = "settings_key";
private static final String SELECT_ALL_KEY_TAG = "select_all_key";
private static final String ONE_HANDED_KEY_TAG = "one_handed_key";
+ private static final String LEFT_KEY_TAG = "left_key";
+ private static final String RIGHT_KEY_TAG = "right_key";
+ private static final String UP_KEY_TAG = "up_key";
+ private static final String DOWN_KEY_TAG = "down_key";
private final ViewGroup mSuggestionsStrip;
private final ImageButton mOtherKey;
@@ -201,7 +205,7 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick
oneHandedKey.setImageDrawable(keyboardAttr.getDrawable(R.styleable.Keyboard_iconStartOneHandedMode));
keyboardAttr.recycle();
- mToolbarArrowIcon = ContextCompat.getDrawable(context, R.drawable.sym_keyboard_next_lxx_light);
+ mToolbarArrowIcon = ContextCompat.getDrawable(context, R.drawable.ic_arrow_right);
mDefaultBackground = mOtherKey.getBackground();
colors.setBackgroundColor(mDefaultBackground, BackgroundType.SUGGESTION);
mEnabledToolKeyBackground.setColors(new int[] {colors.getAccent(), Color.TRANSPARENT});
@@ -615,6 +619,18 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick
case SETTINGS_KEY_TAG:
mListener.onCodeInput(Constants.CODE_SETTINGS, Constants.SUGGESTION_STRIP_COORDINATE, Constants.SUGGESTION_STRIP_COORDINATE, false);
return;
+ case LEFT_KEY_TAG:
+ mListener.onCodeInput(Constants.CODE_LEFT, Constants.SUGGESTION_STRIP_COORDINATE, Constants.SUGGESTION_STRIP_COORDINATE, false);
+ return;
+ case RIGHT_KEY_TAG:
+ mListener.onCodeInput(Constants.CODE_RIGHT, Constants.SUGGESTION_STRIP_COORDINATE, Constants.SUGGESTION_STRIP_COORDINATE, false);
+ return;
+ case UP_KEY_TAG:
+ mListener.onCodeInput(Constants.CODE_UP, Constants.SUGGESTION_STRIP_COORDINATE, Constants.SUGGESTION_STRIP_COORDINATE, false);
+ return;
+ case DOWN_KEY_TAG:
+ mListener.onCodeInput(Constants.CODE_DOWN, Constants.SUGGESTION_STRIP_COORDINATE, Constants.SUGGESTION_STRIP_COORDINATE, false);
+ return;
}
}
if (view == mOtherKey) {
@@ -685,6 +701,14 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick
return R.layout.suggestions_strip_select_all_key;
case ONE_HANDED_KEY_TAG:
return R.layout.suggestions_strip_one_handed_key;
+ case LEFT_KEY_TAG:
+ return R.layout.suggestions_strip_left_key;
+ case RIGHT_KEY_TAG:
+ return R.layout.suggestions_strip_right_key;
+ case UP_KEY_TAG:
+ return R.layout.suggestions_strip_up_key;
+ case DOWN_KEY_TAG:
+ return R.layout.suggestions_strip_down_key;
}
return 0;
}
diff --git a/app/src/main/res/drawable-hdpi/sym_keyboard_next_lxx_dark.webp b/app/src/main/res/drawable-hdpi/sym_keyboard_next_lxx_dark.webp
deleted file mode 100644
index 5ba9ee6d..00000000
Binary files a/app/src/main/res/drawable-hdpi/sym_keyboard_next_lxx_dark.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-hdpi/sym_keyboard_next_lxx_light.webp b/app/src/main/res/drawable-hdpi/sym_keyboard_next_lxx_light.webp
deleted file mode 100644
index 5ba9ee6d..00000000
Binary files a/app/src/main/res/drawable-hdpi/sym_keyboard_next_lxx_light.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-hdpi/sym_keyboard_previous_lxx_dark.webp b/app/src/main/res/drawable-hdpi/sym_keyboard_previous_lxx_dark.webp
deleted file mode 100644
index ba2de765..00000000
Binary files a/app/src/main/res/drawable-hdpi/sym_keyboard_previous_lxx_dark.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-hdpi/sym_keyboard_previous_lxx_light.webp b/app/src/main/res/drawable-hdpi/sym_keyboard_previous_lxx_light.webp
deleted file mode 100644
index ba2de765..00000000
Binary files a/app/src/main/res/drawable-hdpi/sym_keyboard_previous_lxx_light.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-mdpi/sym_keyboard_next_lxx_dark.webp b/app/src/main/res/drawable-mdpi/sym_keyboard_next_lxx_dark.webp
deleted file mode 100644
index fa676c0d..00000000
Binary files a/app/src/main/res/drawable-mdpi/sym_keyboard_next_lxx_dark.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-mdpi/sym_keyboard_next_lxx_light.webp b/app/src/main/res/drawable-mdpi/sym_keyboard_next_lxx_light.webp
deleted file mode 100644
index fa676c0d..00000000
Binary files a/app/src/main/res/drawable-mdpi/sym_keyboard_next_lxx_light.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-mdpi/sym_keyboard_previous_lxx_dark.webp b/app/src/main/res/drawable-mdpi/sym_keyboard_previous_lxx_dark.webp
deleted file mode 100644
index fa2c0c72..00000000
Binary files a/app/src/main/res/drawable-mdpi/sym_keyboard_previous_lxx_dark.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-mdpi/sym_keyboard_previous_lxx_light.webp b/app/src/main/res/drawable-mdpi/sym_keyboard_previous_lxx_light.webp
deleted file mode 100644
index fa2c0c72..00000000
Binary files a/app/src/main/res/drawable-mdpi/sym_keyboard_previous_lxx_light.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xhdpi/sym_keyboard_next_lxx_dark.webp b/app/src/main/res/drawable-xhdpi/sym_keyboard_next_lxx_dark.webp
deleted file mode 100644
index cb8afebc..00000000
Binary files a/app/src/main/res/drawable-xhdpi/sym_keyboard_next_lxx_dark.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xhdpi/sym_keyboard_next_lxx_light.webp b/app/src/main/res/drawable-xhdpi/sym_keyboard_next_lxx_light.webp
deleted file mode 100644
index cb8afebc..00000000
Binary files a/app/src/main/res/drawable-xhdpi/sym_keyboard_next_lxx_light.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xhdpi/sym_keyboard_previous_lxx_dark.webp b/app/src/main/res/drawable-xhdpi/sym_keyboard_previous_lxx_dark.webp
deleted file mode 100644
index 652ee010..00000000
Binary files a/app/src/main/res/drawable-xhdpi/sym_keyboard_previous_lxx_dark.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xhdpi/sym_keyboard_previous_lxx_light.webp b/app/src/main/res/drawable-xhdpi/sym_keyboard_previous_lxx_light.webp
deleted file mode 100644
index 652ee010..00000000
Binary files a/app/src/main/res/drawable-xhdpi/sym_keyboard_previous_lxx_light.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xxhdpi/sym_keyboard_next_lxx_dark.webp b/app/src/main/res/drawable-xxhdpi/sym_keyboard_next_lxx_dark.webp
deleted file mode 100644
index da8a36bb..00000000
Binary files a/app/src/main/res/drawable-xxhdpi/sym_keyboard_next_lxx_dark.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xxhdpi/sym_keyboard_next_lxx_light.webp b/app/src/main/res/drawable-xxhdpi/sym_keyboard_next_lxx_light.webp
deleted file mode 100644
index da8a36bb..00000000
Binary files a/app/src/main/res/drawable-xxhdpi/sym_keyboard_next_lxx_light.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xxhdpi/sym_keyboard_previous_lxx_dark.webp b/app/src/main/res/drawable-xxhdpi/sym_keyboard_previous_lxx_dark.webp
deleted file mode 100644
index 0b4064ae..00000000
Binary files a/app/src/main/res/drawable-xxhdpi/sym_keyboard_previous_lxx_dark.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xxhdpi/sym_keyboard_previous_lxx_light.webp b/app/src/main/res/drawable-xxhdpi/sym_keyboard_previous_lxx_light.webp
deleted file mode 100644
index 0b4064ae..00000000
Binary files a/app/src/main/res/drawable-xxhdpi/sym_keyboard_previous_lxx_light.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xxxhdpi/sym_keyboard_next_lxx_dark.webp b/app/src/main/res/drawable-xxxhdpi/sym_keyboard_next_lxx_dark.webp
deleted file mode 100644
index 7542f417..00000000
Binary files a/app/src/main/res/drawable-xxxhdpi/sym_keyboard_next_lxx_dark.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xxxhdpi/sym_keyboard_next_lxx_light.webp b/app/src/main/res/drawable-xxxhdpi/sym_keyboard_next_lxx_light.webp
deleted file mode 100644
index 7542f417..00000000
Binary files a/app/src/main/res/drawable-xxxhdpi/sym_keyboard_next_lxx_light.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xxxhdpi/sym_keyboard_previous_lxx_dark.webp b/app/src/main/res/drawable-xxxhdpi/sym_keyboard_previous_lxx_dark.webp
deleted file mode 100644
index dadd0cdc..00000000
Binary files a/app/src/main/res/drawable-xxxhdpi/sym_keyboard_previous_lxx_dark.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xxxhdpi/sym_keyboard_previous_lxx_light.webp b/app/src/main/res/drawable-xxxhdpi/sym_keyboard_previous_lxx_light.webp
deleted file mode 100644
index dadd0cdc..00000000
Binary files a/app/src/main/res/drawable-xxxhdpi/sym_keyboard_previous_lxx_light.webp and /dev/null differ
diff --git a/app/src/main/res/drawable/ic_arrow_left.xml b/app/src/main/res/drawable/ic_arrow_left.xml
new file mode 100644
index 00000000..f901c305
--- /dev/null
+++ b/app/src/main/res/drawable/ic_arrow_left.xml
@@ -0,0 +1,5 @@
+
+
+
diff --git a/app/src/main/res/drawable/ic_arrow_right.xml b/app/src/main/res/drawable/ic_arrow_right.xml
new file mode 100644
index 00000000..7845506b
--- /dev/null
+++ b/app/src/main/res/drawable/ic_arrow_right.xml
@@ -0,0 +1,8 @@
+
+
+
diff --git a/app/src/main/res/drawable/ic_arrow_up.xml b/app/src/main/res/drawable/ic_arrow_up.xml
new file mode 100644
index 00000000..2aad37ef
--- /dev/null
+++ b/app/src/main/res/drawable/ic_arrow_up.xml
@@ -0,0 +1,8 @@
+
+
+
diff --git a/app/src/main/res/layout/suggestions_strip.xml b/app/src/main/res/layout/suggestions_strip.xml
index 18546aa5..d8e64c46 100644
--- a/app/src/main/res/layout/suggestions_strip.xml
+++ b/app/src/main/res/layout/suggestions_strip.xml
@@ -62,6 +62,18 @@
+
+
+
+
diff --git a/app/src/main/res/layout/suggestions_strip_down_key.xml b/app/src/main/res/layout/suggestions_strip_down_key.xml
new file mode 100644
index 00000000..507dccc6
--- /dev/null
+++ b/app/src/main/res/layout/suggestions_strip_down_key.xml
@@ -0,0 +1,10 @@
+
+
diff --git a/app/src/main/res/layout/suggestions_strip_left_key.xml b/app/src/main/res/layout/suggestions_strip_left_key.xml
new file mode 100644
index 00000000..147c8441
--- /dev/null
+++ b/app/src/main/res/layout/suggestions_strip_left_key.xml
@@ -0,0 +1,10 @@
+
+
diff --git a/app/src/main/res/layout/suggestions_strip_right_key.xml b/app/src/main/res/layout/suggestions_strip_right_key.xml
new file mode 100644
index 00000000..9f82b984
--- /dev/null
+++ b/app/src/main/res/layout/suggestions_strip_right_key.xml
@@ -0,0 +1,10 @@
+
+
diff --git a/app/src/main/res/layout/suggestions_strip_up_key.xml b/app/src/main/res/layout/suggestions_strip_up_key.xml
new file mode 100644
index 00000000..6318f7d8
--- /dev/null
+++ b/app/src/main/res/layout/suggestions_strip_up_key.xml
@@ -0,0 +1,10 @@
+
+
diff --git a/app/src/main/res/values/keyboard-icons-lxx-light-parent.xml b/app/src/main/res/values/keyboard-icons-lxx-light-parent.xml
index 41ee053a..b91a39ee 100644
--- a/app/src/main/res/values/keyboard-icons-lxx-light-parent.xml
+++ b/app/src/main/res/values/keyboard-icons-lxx-light-parent.xml
@@ -31,9 +31,9 @@
- @drawable/sym_keyboard_go_lxx_light
- @drawable/sym_keyboard_search_lxx_light
- @drawable/sym_keyboard_send_lxx_light
- - @drawable/sym_keyboard_next_lxx_light
+ - @drawable/ic_arrow_right
- @drawable/sym_keyboard_done_lxx_light
- - @drawable/sym_keyboard_previous_lxx_light
+ - @drawable/ic_arrow_left
- @drawable/sym_keyboard_voice_lxx_light
- @drawable/sym_keyboard_voice_off_lxx_light
- @drawable/sym_keyboard_incognito_lxx_light