Do not show key preview of settings and shortcut key

Bug: 5560766
Change-Id: I580efaf4e33f7dfbaa591e2afae9c49547bf26fb
diff --git a/java/res/drawable-hdpi/sym_keyboard_feedback_mic.png b/java/res/drawable-hdpi/sym_keyboard_feedback_mic.png
deleted file mode 100644
index a88a19d..0000000
--- a/java/res/drawable-hdpi/sym_keyboard_feedback_mic.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-hdpi/sym_keyboard_feedback_settings.png b/java/res/drawable-hdpi/sym_keyboard_feedback_settings.png
deleted file mode 100644
index 6304b00..0000000
--- a/java/res/drawable-hdpi/sym_keyboard_feedback_settings.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-hdpi/sym_keyboard_feedback_settings_holo.png b/java/res/drawable-hdpi/sym_keyboard_feedback_settings_holo.png
deleted file mode 100644
index 960dd78..0000000
--- a/java/res/drawable-hdpi/sym_keyboard_feedback_settings_holo.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-mdpi/sym_keyboard_feedback_mic.png b/java/res/drawable-mdpi/sym_keyboard_feedback_mic.png
deleted file mode 100644
index 3ed0782..0000000
--- a/java/res/drawable-mdpi/sym_keyboard_feedback_mic.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-mdpi/sym_keyboard_feedback_settings.png b/java/res/drawable-mdpi/sym_keyboard_feedback_settings.png
deleted file mode 100644
index 03bad18..0000000
--- a/java/res/drawable-mdpi/sym_keyboard_feedback_settings.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-mdpi/sym_keyboard_feedback_settings_holo.png b/java/res/drawable-mdpi/sym_keyboard_feedback_settings_holo.png
deleted file mode 100644
index 453991e..0000000
--- a/java/res/drawable-mdpi/sym_keyboard_feedback_settings_holo.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-xhdpi/sym_keyboard_feedback_mic.png b/java/res/drawable-xhdpi/sym_keyboard_feedback_mic.png
deleted file mode 100644
index 5ac27eb..0000000
--- a/java/res/drawable-xhdpi/sym_keyboard_feedback_mic.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-xhdpi/sym_keyboard_feedback_settings.png b/java/res/drawable-xhdpi/sym_keyboard_feedback_settings.png
deleted file mode 100644
index 021cafa..0000000
--- a/java/res/drawable-xhdpi/sym_keyboard_feedback_settings.png
+++ /dev/null
Binary files differ
diff --git a/java/res/drawable-xhdpi/sym_keyboard_feedback_settings_holo.png b/java/res/drawable-xhdpi/sym_keyboard_feedback_settings_holo.png
deleted file mode 100644
index bc9a629..0000000
--- a/java/res/drawable-xhdpi/sym_keyboard_feedback_settings_holo.png
+++ /dev/null
Binary files differ
diff --git a/java/res/values/attrs.xml b/java/res/values/attrs.xml
index e569e83..0c9ca4f 100644
--- a/java/res/values/attrs.xml
+++ b/java/res/values/attrs.xml
@@ -180,8 +180,6 @@
         <attr name="iconShortcutForLabel" format="reference" />
         <attr name="iconShiftedShiftKey" format="reference" />
         <attr name="iconPreviewTabKey" format="reference" />
-        <attr name="iconPreviewSettingsKey" format="reference" />
-        <attr name="iconPreviewShortcutKey" format="reference" />
     </declare-styleable>
 
     <declare-styleable name="Keyboard_Key">
@@ -246,8 +244,6 @@
         <attr name="keyIconPreview" format="enum">
             <!-- This should be aligned with KeyboardIcons.ICON_PREVIEW_* -->
             <enum name="iconPreviewTabKey" value="11" />
-            <enum name="iconPreviewSettingsKey" value="12" />
-            <enum name="iconPreviewShortcutKey" value="13" />
         </attr>
         <!-- The key style to specify a set of key attributes defined by <key_style/> -->
         <attr name="keyStyle" format="string" />
diff --git a/java/res/values/keyboard-icons-black.xml b/java/res/values/keyboard-icons-black.xml
index 23d163c..f767cb3 100644
--- a/java/res/values/keyboard-icons-black.xml
+++ b/java/res/values/keyboard-icons-black.xml
@@ -32,8 +32,6 @@
         <item name="iconShortcutForLabel">@drawable/sym_bkeyboard_label_mic</item>
         <item name="iconShiftedShiftKey">@drawable/sym_bkeyboard_shift_locked</item>
         <item name="iconPreviewTabKey">@drawable/sym_keyboard_feedback_tab</item>
-        <item name="iconPreviewSettingsKey">@drawable/sym_keyboard_feedback_settings</item>
-        <item name="iconPreviewShortcutKey">@drawable/sym_keyboard_feedback_mic</item>
         <!-- LatinKeyboard icons -->
         <item name="autoCorrectionSpacebarLedIcon">@drawable/sym_keyboard_space_led</item>
         <item name="disabledShortcutIcon">@drawable/sym_bkeyboard_voice_off</item>
diff --git a/java/res/values/keyboard-icons-ics.xml b/java/res/values/keyboard-icons-ics.xml
index 28859b6..f102143 100644
--- a/java/res/values/keyboard-icons-ics.xml
+++ b/java/res/values/keyboard-icons-ics.xml
@@ -31,8 +31,6 @@
         <item name="iconShortcutForLabel">@drawable/sym_keyboard_label_mic_holo</item>
         <item name="iconShiftedShiftKey">@drawable/sym_keyboard_shift_locked_holo</item>
         <item name="iconPreviewTabKey">@drawable/sym_keyboard_feedback_tab</item>
-        <item name="iconPreviewSettingsKey">@drawable/sym_keyboard_feedback_settings_holo</item>
-        <item name="iconPreviewShortcutKey">@drawable/sym_keyboard_feedback_mic</item>
         <!-- LatinKeyboard icons -->
         <item name="autoCorrectionSpacebarLedIcon">@drawable/sym_keyboard_space_led_holo</item>
         <item name="disabledShortcutIcon">@drawable/sym_keyboard_voice_off_holo</item>
diff --git a/java/res/values/keyboard-icons-white.xml b/java/res/values/keyboard-icons-white.xml
index a1765a4..07ece66 100644
--- a/java/res/values/keyboard-icons-white.xml
+++ b/java/res/values/keyboard-icons-white.xml
@@ -28,8 +28,6 @@
         <item name="iconShortcutForLabel">@drawable/sym_keyboard_label_mic</item>
         <item name="iconShiftedShiftKey">@drawable/sym_keyboard_shift_locked</item>
         <item name="iconPreviewTabKey">@drawable/sym_keyboard_feedback_tab</item>
-        <item name="iconPreviewSettingsKey">@drawable/sym_keyboard_feedback_settings</item>
-        <item name="iconPreviewShortcutKey">@drawable/sym_keyboard_feedback_mic</item>
         <!-- LatinKeyboard icons -->
         <item name="autoCorrectionSpacebarLedIcon">@drawable/sym_keyboard_space_led</item>
         <item name="disabledShortcutIcon">@drawable/sym_keyboard_voice_off_holo</item>
diff --git a/java/res/xml-sw600dp/kbd_key_styles.xml b/java/res/xml-sw600dp/kbd_key_styles.xml
index 0b6d871..25fa8b2 100644
--- a/java/res/xml-sw600dp/kbd_key_styles.xml
+++ b/java/res/xml-sw600dp/kbd_key_styles.xml
@@ -73,13 +73,11 @@
         latin:styleName="shortcutKeyStyle"
         latin:code="@integer/key_shortcut"
         latin:keyIcon="iconShortcutKey"
-        latin:keyIconPreview="iconPreviewShortcutKey"
         latin:parentStyle="f2PopupStyle" />
     <key-style
         latin:styleName="settingsKeyStyle"
         latin:code="@integer/key_settings"
         latin:keyIcon="iconSettingsKey"
-        latin:keyIconPreview="iconPreviewSettingsKey"
         latin:backgroundType="functional" />
     <key-style
         latin:styleName="tabKeyStyle"
diff --git a/java/res/xml-sw768dp/kbd_key_styles.xml b/java/res/xml-sw768dp/kbd_key_styles.xml
index 686e7b6..f16f5b6 100644
--- a/java/res/xml-sw768dp/kbd_key_styles.xml
+++ b/java/res/xml-sw768dp/kbd_key_styles.xml
@@ -55,13 +55,11 @@
         latin:styleName="settingsKeyStyle"
         latin:code="@integer/key_settings"
         latin:keyIcon="iconSettingsKey"
-        latin:keyIconPreview="iconPreviewSettingsKey"
         latin:backgroundType="functional" />
     <key-style
         latin:styleName="shortcutKeyStyle"
         latin:code="@integer/key_shortcut"
         latin:keyIcon="iconShortcutKey"
-        latin:keyIconPreview="iconPreviewShortcutKey"
         latin:backgroundType="functional" />
     <key-style
         latin:styleName="tabKeyStyle"
diff --git a/java/res/xml/kbd_key_styles.xml b/java/res/xml/kbd_key_styles.xml
index 11b1abb..453b05d 100644
--- a/java/res/xml/kbd_key_styles.xml
+++ b/java/res/xml/kbd_key_styles.xml
@@ -154,13 +154,11 @@
         latin:styleName="shortcutKeyStyle"
         latin:code="@integer/key_shortcut"
         latin:keyIcon="iconShortcutKey"
-        latin:keyIconPreview="iconPreviewShortcutKey"
         latin:parentStyle="f1PopupStyle" />
     <key-style
         latin:styleName="settingsKeyStyle"
         latin:code="@integer/key_settings"
         latin:keyIcon="iconSettingsKey"
-        latin:keyIconPreview="iconPreviewSettingsKey"
         latin:backgroundType="functional" />
     <key-style
         latin:styleName="tabKeyStyle"
diff --git a/java/src/com/android/inputmethod/keyboard/PointerTracker.java b/java/src/com/android/inputmethod/keyboard/PointerTracker.java
index 38c419d..198e06a 100644
--- a/java/src/com/android/inputmethod/keyboard/PointerTracker.java
+++ b/java/src/com/android/inputmethod/keyboard/PointerTracker.java
@@ -353,9 +353,12 @@
     // The modifier key, such as shift key, should not show its key preview.
     private static boolean isKeyPreviewRequired(Key key) {
         final int code = key.mCode;
-        if (isModifierCode(code) || code == Keyboard.CODE_DELETE
-                || code == Keyboard.CODE_ENTER || code == Keyboard.CODE_SPACE)
+        // TODO: Stop hard-coding these key codes here, and add a new key attribute of a key.
+        if (code == Keyboard.CODE_SPACE || code == Keyboard.CODE_ENTER
+                || code == Keyboard.CODE_DELETE || isModifierCode(code)
+                || code == Keyboard.CODE_SETTINGS || code == Keyboard.CODE_SHORTCUT) {
             return false;
+        }
         return true;
     }
 
diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java
index 2d8b7bf..faa5f86 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardIconsSet.java
@@ -42,10 +42,8 @@
     private static final int ICON_SHIFTED_SHIFT_KEY = 10;
     // This should be aligned with Keyboard.keyIconPreview enum.
     private static final int ICON_PREVIEW_TAB_KEY = 11;
-    private static final int ICON_PREVIEW_SETTINGS_KEY = 12;
-    private static final int ICON_PREVIEW_SHORTCUT_KEY = 13;
 
-    private static final int ICON_LAST = 13;
+    private static final int ICON_LAST = 11;
 
     private final Drawable mIcons[] = new Drawable[ICON_LAST + 1];
 
@@ -73,10 +71,6 @@
             return ICON_SHIFTED_SHIFT_KEY;
         case R.styleable.Keyboard_iconPreviewTabKey:
             return ICON_PREVIEW_TAB_KEY;
-        case R.styleable.Keyboard_iconPreviewSettingsKey:
-            return ICON_PREVIEW_SETTINGS_KEY;
-        case R.styleable.Keyboard_iconPreviewShortcutKey:
-            return ICON_PREVIEW_SHORTCUT_KEY;
         default:
             return ICON_UNDEFINED;
         }