[2/2] OmniGears TabletUI

Change-Id: I8f9e2eb6706890f8cd4b5f98410774fc1d5c964c
diff --git a/res/values/custom_strings.xml b/res/values/custom_strings.xml
index 7b69681..7861d08 100644
--- a/res/values/custom_strings.xml
+++ b/res/values/custom_strings.xml
@@ -253,4 +253,11 @@
     <string name="header_weather_title">Header view weather</string>
     <string name="header_weather_summary">Enable notification panel header weather display</string>
     <string name="weather_icon_pack_title">Condition icon pack</string>
+
+    <!-- Navigationbar settings -->
+    <string name="navigationbar_title">Navigation bar</string>
+
+    <!-- Enable Tablet Style navigation bar -->
+    <string name="enable_tablet_navigation_title">Use tablet layout</string>
+    <string name="enable_tablet_navigation_summary">Tablet layout shows back and home on the left side and overview on the right side of the navigation bar</string>
 </resources>
diff --git a/res/xml/bars_settings.xml b/res/xml/bars_settings.xml
index aad76f2..5d61fa2 100644
--- a/res/xml/bars_settings.xml
+++ b/res/xml/bars_settings.xml
@@ -47,14 +47,25 @@
                         android:targetClass="com.android.systemui.tuner.StatusBarActivity" />
             </PreferenceScreen>
         </PreferenceCategory>
-
-        <!-- Network traffic meter -->
+ 
+       <!-- Network traffic meter -->
         <PreferenceScreen
             android:key="category_network_traffic"
             android:title="@string/network_traffic_title"
             android:fragment="org.omnirom.omnigears.interfacesettings.NetworkTraffic" />
 
         <PreferenceCategory
+            android:key="category_navigationbar"
+            android:title="@string/navigationbar_title">
+
+            <com.android.settings.preference.SystemCheckBoxPreference
+                android:key="enable_tablet_navigation"
+                android:title="@string/enable_tablet_navigation_title"
+                android:summary="@string/enable_tablet_navigation_summary"
+                android:defaultValue="false" />
+        </PreferenceCategory>
+
+        <PreferenceCategory
             android:key="notification_category"
             android:title="@string/notification_title" >
 
diff --git a/src/org/omnirom/omnigears/interfacesettings/BarsSettings.java b/src/org/omnirom/omnigears/interfacesettings/BarsSettings.java
index c94238e..51525de 100644
--- a/src/org/omnirom/omnigears/interfacesettings/BarsSettings.java
+++ b/src/org/omnirom/omnigears/interfacesettings/BarsSettings.java
@@ -60,6 +60,7 @@
     private static final String CUSTOM_HEADER_IMAGE = "status_bar_custom_header";
     private static final String DAYLIGHT_HEADER_PACK = "daylight_header_pack";
     private static final String DEFAULT_HEADER_PACKAGE = "com.android.systemui";
+    private static final String NAVIGATIONBAR_ROOT = "category_navigationbar";
 
     private ListPreference mDaylightHeaderPack;
     private CheckBoxPreference mCustomHeaderImage;
@@ -76,6 +77,12 @@
 
         PreferenceScreen prefScreen = getPreferenceScreen();
 
+        // Navigationbar catagory will not be displayed when the device is not a tablet
+        // or the device has physical keys
+        if ((!DeviceUtils.deviceSupportNavigationBar(getActivity())) || !DeviceUtils.isTablet(getActivity())) {
+            prefScreen.removePreference(findPreference(NAVIGATIONBAR_ROOT));
+        }
+
         // TrafficStats will return UNSUPPORTED if the device does not support it.
         if (TrafficStats.getTotalTxBytes() == TrafficStats.UNSUPPORTED ||
                 TrafficStats.getTotalRxBytes() == TrafficStats.UNSUPPORTED) {