Incall Vibration options [3/3]

Change-Id: Ie53f10a9f11faa26a756c2aadb96d970c84fc2be
diff --git a/res/drawable/ic_settings_appops.xml b/res/drawable/ic_settings_appops.xml
index ec9fb71..5c37e03 100644
--- a/res/drawable/ic_settings_appops.xml
+++ b/res/drawable/ic_settings_appops.xml
@@ -1,4 +1,3 @@
-?xml version="1.0" encoding="utf-8"?>
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/res/values/custom_strings.xml b/res/values/custom_strings.xml
index 9131be1..12b82a7 100644
--- a/res/values/custom_strings.xml
+++ b/res/values/custom_strings.xml
@@ -838,6 +838,11 @@
    <!-- Call options -->
    <string name="calls_category">Calling options</string>
 
+    <!-- Incall vibrate options -->
+    <string name="incall_vibrate_connect_title">Vibrate on connect</string>
+    <string name="incall_vibrate_call_wait_title">Vibrate on call waiting</string>
+    <string name="incall_vibrate_disconnect_title">Vibrate on disconnect</string>
+
    <!-- Blink flashlight for incoming calls -->
     <string name="flashlight_on_call_title">Blink Flashlight on call</string>
     <string name="flashlight_on_call_disabled">Disabled</string>
diff --git a/res/xml/button_settings.xml b/res/xml/button_settings.xml
index 2f8074d..bcd1717 100644
--- a/res/xml/button_settings.xml
+++ b/res/xml/button_settings.xml
@@ -31,6 +31,29 @@
     </PreferenceCategory>
 
     <PreferenceCategory
+        android:key="navigation_burnin"
+        android:title="@string/navigation_burnin_category">
+
+         <org.omnirom.omnilib.preference.SystemSettingSwitchPreference
+            android:key="burn_in_protection"
+            android:title="@string/burn_in_protection_title"
+            android:summary="@string/burn_in_protection_summary"
+            android:dependency="navigation_bar_show"
+            android:defaultValue="true" />
+
+         <org.omnirom.omnilib.preference.SeekBarPreference
+            android:key="burn_in_protection_interval"
+            android:title="@string/burn_in_protection_interval_title"
+            android:summary="@string/burn_in_protection_interval_summary"
+            android:max="90"
+            android:min="45"
+            settings:unitsRight="@string/unit_x1000ms"
+            android:dependency="burn_in_protection"
+            android:persistent="false" />
+
+        </PreferenceCategory>
+
+    <PreferenceCategory
         android:key="button_power"
         android:title="@string/global_actions_power_title" >
 
diff --git a/res/xml/more_settings.xml b/res/xml/more_settings.xml
index a99d905..ef80885 100644
--- a/res/xml/more_settings.xml
+++ b/res/xml/more_settings.xml
@@ -22,41 +22,34 @@
     android:title="@string/more_settings_title">
 
     <PreferenceCategory
-        android:key="navigation_burnin"
-        android:title="@string/navigation_burnin_category">
-
-         <org.omnirom.omnilib.preference.SystemSettingSwitchPreference
-            android:key="burn_in_protection"
-            android:title="@string/burn_in_protection_title"
-            android:summary="@string/burn_in_protection_summary"
-            android:dependency="navigation_bar_show"
-            android:defaultValue="true" />
-
-         <org.omnirom.omnilib.preference.SeekBarPreference
-            android:key="burn_in_protection_interval"
-            android:title="@string/burn_in_protection_interval_title"
-            android:summary="@string/burn_in_protection_interval_summary"
-            android:max="90"
-            android:min="45"
-            settings:unitsRight="@string/unit_x1000ms"
-            android:dependency="burn_in_protection"
-            android:persistent="false" />
-
-        </PreferenceCategory>
-
-    <PreferenceCategory
         android:key="calling_options"
         android:title="@string/calls_category">
 
+         <org.omnirom.omnilib.preference.SystemSettingSwitchPreference
+                android:key="vibrate_on_connect"
+                android:title="@string/incall_vibrate_connect_title"
+                android:defaultValue="false" />
+
+         <org.omnirom.omnilib.preference.SystemSettingSwitchPreference
+                android:key="vibrate_on_callwaiting"
+                android:title="@string/incall_vibrate_call_wait_title"
+                android:defaultValue="false" />
+
+         <org.omnirom.omnilib.preference.SystemSettingSwitchPreference
+                android:key="vibrate_on_disconnect"
+                android:title="@string/incall_vibrate_disconnect_title"
+                android:defaultValue="false" />
+
         <!-- Flashlight on incoming calls -->
         <ListPreference
             android:key="flashlight_on_call"
-            android:icon="@drawable/ic_power_flashlight"
             android:title="@string/flashlight_on_call_title"
             android:entries="@array/flashlight_on_call_entries"
             android:entryValues="@array/flashlight_on_call_values"
             android:defaultValue="0" />
 
+        </PreferenceCategory>
+
         <PreferenceCategory
             android:key="category_other"
             android:title="@string/other_category">
diff --git a/src/org/omnirom/omnigears/moresettings/MoreSettings.java b/src/org/omnirom/omnigears/moresettings/MoreSettings.java
index 71a7ec0..3be52de 100644
--- a/src/org/omnirom/omnigears/moresettings/MoreSettings.java
+++ b/src/org/omnirom/omnigears/moresettings/MoreSettings.java
@@ -18,6 +18,7 @@
 
 package org.omnirom.omnigears.moresettings;
 
+import android.content.ContentResolver;
 import android.content.Context;
 import android.content.SharedPreferences;
 import android.os.Bundle;