[2/2] OmniGears: Network speed indicator

Thanks to htchoi1995

Initial commit done by mithun46

Signed-off-by: Jacob Whatley <jacob.whatley91@gmail.com>
Change-Id: I479b86e4316e87eb4c1c78e0a63dafd7c9e249d1
diff --git a/res/values/custom_strings.xml b/res/values/custom_strings.xml
index f5713bf..51aec6c 100644
--- a/res/values/custom_strings.xml
+++ b/res/values/custom_strings.xml
@@ -150,6 +150,10 @@
     <string name="button_volume_wake_title">Volume button wake</string>
     <string name="button_volume_wake_summary">Pressing a volume button will wake your device</string>
 
+    <!-- Network speed -->
+    <string name="show_network_speed">Network speed indicator</string>
+    <string name="show_network_speed_summary">Show network speed in statusbar</string>
+
 </resources>
 
 
diff --git a/res/xml/bars_and_menus_settings.xml b/res/xml/bars_and_menus_settings.xml
index 3e36a29..af09aa1 100644
--- a/res/xml/bars_and_menus_settings.xml
+++ b/res/xml/bars_and_menus_settings.xml
@@ -37,4 +37,10 @@
             android:summary="@string/status_bar_notif_count_summary"
             android:defaultValue="false" />
 
+    <CheckBoxPreference
+            android:key="status_bar_traffic"
+            android:title="@string/show_network_speed"
+            android:summary="@string/show_network_speed_summary"
+            android:defaultValue="false" />
+
 </PreferenceScreen>
diff --git a/src/org/omnirom/omnigears/BarsAndMenusSettings.java b/src/org/omnirom/omnigears/BarsAndMenusSettings.java
index a377d4d..8160d44 100644
--- a/src/org/omnirom/omnigears/BarsAndMenusSettings.java
+++ b/src/org/omnirom/omnigears/BarsAndMenusSettings.java
@@ -52,9 +52,11 @@
 
     private static final String STATUS_BAR_BRIGHTNESS_CONTROL = "status_bar_brightness_control";
     private static final String STATUS_BAR_NOTIF_COUNT = "status_bar_notif_count";
+    private static final String STATUS_BAR_TRAFFIC = "status_bar_traffic";
 
     private CheckBoxPreference mStatusBarBrightnessControl;
     private CheckBoxPreference mStatusBarNotifCount;
+    private CheckBoxPreference mStatusBarTraffic;
 
     @Override
     public void onCreate(Bundle savedInstanceState) {
@@ -82,6 +84,10 @@
                 Settings.System.STATUS_BAR_NOTIF_COUNT, 0) == 1);
         mStatusBarNotifCount.setOnPreferenceChangeListener(this);
 
+        mStatusBarTraffic = (CheckBoxPreference) prefSet.findPreference(STATUS_BAR_TRAFFIC);
+        mStatusBarTraffic.setChecked(Settings.System.getInt(resolver,
+            Settings.System.STATUS_BAR_TRAFFIC, 0) == 1);
+        mStatusBarTraffic.setOnPreferenceChangeListener(this);
     }
 
     @Override
@@ -97,6 +103,10 @@
         } else if (preference == mStatusBarNotifCount) {
             boolean value = (Boolean) objValue;
             Settings.System.putInt(resolver, Settings.System.STATUS_BAR_NOTIF_COUNT, value ? 1 : 0);
+        } else if (preference == mStatusBarTraffic) {
+            boolean value = (Boolean) objValue;
+            Settings.System.putInt(resolver,
+                Settings.System.STATUS_BAR_TRAFFIC, value ? 1 : 0);
         } else {
             return false;
         }