diff --git a/java/res/layout-sw768dp/candidates.xml b/java/res/layout-sw768dp/candidates.xml
deleted file mode 100644
index 93b0304..0000000
--- a/java/res/layout-sw768dp/candidates.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-**
-** Copyright 2010, The Android Open Source Project
-**
-** 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.
-*/
--->
-
-<LinearLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/candidates_container"
-    android:orientation="horizontal"
-    android:gravity="bottom"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:minHeight="@dimen/candidate_strip_minimum_height"
->
-    <!-- On tablets, the candidate strip is centered with horizontal paddings on both sides because
-         width of the landscape mode is too long for the candidate strip. This LinearLayout is
-         required to hold the paddings. -->
-    <LinearLayout
-        android:orientation="horizontal"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:paddingRight="@dimen/candidate_strip_padding"
-        android:paddingLeft="@dimen/candidate_strip_padding"
-        style="?attr/suggestionsStripBackgroundStyle"
-    >
-        <HorizontalScrollView
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:fadingEdge="horizontal"
-            android:fadingEdgeLength="@dimen/candidate_strip_fading_edge_length"
-            android:scrollbars="none"
-        >
-            <com.android.inputmethod.latin.CandidateView
-                android:id="@+id/candidates"
-                android:layout_width="match_parent"
-                android:layout_height="@dimen/candidate_strip_height"
-                android:gravity="center_vertical" />
-        </HorizontalScrollView>
-    </LinearLayout>
-</LinearLayout>
diff --git a/java/res/layout/candidate.xml b/java/res/layout/candidate.xml
index 8437bf9..94ae2b4 100644
--- a/java/res/layout/candidate.xml
+++ b/java/res/layout/candidate.xml
@@ -21,11 +21,7 @@
 <Button
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="wrap_content"
-    android:layout_height="match_parent"
+    android:layout_height="wrap_content"
     android:minWidth="@dimen/candidate_min_width"
     android:textSize="@dimen/candidate_text_size"
-    android:textColor="@color/candidate_typed_word"
-    android:focusable="true"
-    android:clickable="true"
-    android:gravity="center_vertical|center_horizontal"
     style="?attr/suggestionBackgroundStyle" />
diff --git a/java/res/layout/candidates.xml b/java/res/layout/candidates.xml
deleted file mode 100644
index 2bcafc9..0000000
--- a/java/res/layout/candidates.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-**
-** Copyright 2010, The Android Open Source Project
-**
-** 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.
-*/
--->
-
-<LinearLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/candidates_container"
-    android:orientation="horizontal"
-    android:gravity="bottom"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:minHeight="@dimen/candidate_strip_minimum_height"
-    android:paddingRight="@dimen/candidate_strip_padding"
-    android:paddingLeft="@dimen/candidate_strip_padding"
->
-    <HorizontalScrollView
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:fadingEdge="horizontal"
-        android:fadingEdgeLength="@dimen/candidate_strip_fading_edge_length"
-        android:scrollbars="none"
-        style="?attr/suggestionsStripBackgroundStyle"
-    >
-        <com.android.inputmethod.latin.CandidateView
-            android:id="@+id/candidates"
-            android:layout_width="match_parent"
-            android:layout_height="@dimen/candidate_strip_height"
-            android:gravity="center_vertical" />
-    </HorizontalScrollView>
-</LinearLayout>
diff --git a/java/res/layout/input_view.xml b/java/res/layout/input_view.xml
index c8820b0..5da1a48 100644
--- a/java/res/layout/input_view.xml
+++ b/java/res/layout/input_view.xml
@@ -25,12 +25,42 @@
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
 >
-    <include
-        layout="@layout/candidates" />
-    <com.android.inputmethod.keyboard.LatinKeyboardView
-        android:id="@+id/latin_keyboard_view"
-        android:layout_alignParentBottom="true"
+    <!-- On tablets, the candidate strip is centered with horizontal paddings on both sides because
+         width of the landscape mode is too long for the candidate strip. This LinearLayout is
+         required to hold the paddings. -->
+    <LinearLayout
+        android:id="@+id/candidates_container"
+        android:orientation="horizontal"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:padding="0dip" />
+        style="?attr/suggestionsStripBackgroundStyle"
+    >
+        <View
+            android:layout_width="@dimen/candidate_strip_padding"
+            android:layout_height="@dimen/candidate_strip_height"
+            style="?attr/suggestionsStripBackgroundStyle" />
+        <HorizontalScrollView
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:fadingEdge="horizontal"
+            android:fadingEdgeLength="@dimen/candidate_strip_fading_edge_length"
+            android:scrollbars="none"
+        >
+            <com.android.inputmethod.latin.CandidateView
+                android:id="@+id/candidates"
+                android:layout_width="match_parent"
+                android:layout_height="@dimen/candidate_strip_height"
+                android:gravity="center_vertical" />
+        </HorizontalScrollView>
+        <View
+            android:layout_width="@dimen/candidate_strip_padding"
+            android:layout_height="@dimen/candidate_strip_height"
+            style="?attr/suggestionsStripBackgroundStyle" />
+    </LinearLayout>
+
+    <com.android.inputmethod.keyboard.LatinKeyboardView
+        android:id="@+id/keyboard_view"
+        android:layout_alignParentBottom="true"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content" />
 </LinearLayout>
diff --git a/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java b/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java
index 2512118..7c68c93 100644
--- a/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java
+++ b/java/src/com/android/inputmethod/keyboard/KeyboardSwitcher.java
@@ -745,8 +745,7 @@
             }
         }
 
-        mKeyboardView = (LatinKeyboardView) mCurrentInputView.findViewById(
-                R.id.latin_keyboard_view);
+        mKeyboardView = (LatinKeyboardView) mCurrentInputView.findViewById(R.id.keyboard_view);
         mKeyboardView.setOnKeyboardActionListener(mInputMethodService);
         mThemeIndex = themeIndex;
         return mCurrentInputView;
diff --git a/java/src/com/android/inputmethod/latin/CandidateView.java b/java/src/com/android/inputmethod/latin/CandidateView.java
index a838102..b4f6b2c 100644
--- a/java/src/com/android/inputmethod/latin/CandidateView.java
+++ b/java/src/com/android/inputmethod/latin/CandidateView.java
@@ -156,7 +156,7 @@
                 tv.setOnLongClickListener(this);
             mWords.add(tv);
             if (i > 0) {
-                View divider = inflater.inflate(R.layout.candidate_divider, null);
+                final View divider = inflater.inflate(R.layout.candidate_divider, null);
                 mDividers.add(divider);
             }
         }
@@ -198,7 +198,7 @@
         final int color;
         if (isAutoCorrect && mConfigCandidateHighlightFontColorEnabled) {
             color = mColorAutoCorrect;
-        } else if (isSuggestedCandidate) {
+        } else if (isSuggestedCandidate && mConfigCandidateHighlightFontColorEnabled) {
             color = mColorSuggestedCandidate;
         } else {
             color = mColorTypedWord;
