diff --git a/res/values/custom_strings.xml b/res/values/custom_strings.xml
index 14ae512..c297171 100644
--- a/res/values/custom_strings.xml
+++ b/res/values/custom_strings.xml
@@ -383,4 +383,8 @@
     <string name="volume_key_cursor_control_on">Left/right</string>
     <string name="volume_key_cursor_control_on_reverse">Right/left</string>
 
+    <!-- Quick Swipe -->
+    <string name="quick_swipe_title">Quick swipe</string>
+    <string name="quick_swipe_summary">Quickly swipe between quick settings and notification drawer</string>
+
 </resources>
diff --git a/res/xml/notification_panel_settings.xml b/res/xml/notification_panel_settings.xml
index f831e6d..1dbf60a 100644
--- a/res/xml/notification_panel_settings.xml
+++ b/res/xml/notification_panel_settings.xml
@@ -26,4 +26,10 @@
             android:summary="@string/custom_statusbar_header_summary"
             android:persistent="false"/>
 
+    <CheckBoxPreference
+            android:key="quick_swipe"
+            android:title="@string/quick_swipe_title"
+            android:summary="@string/quick_swipe_summary"
+            android:persistent="false"/>
+
 </PreferenceScreen>
diff --git a/src/org/omnirom/omnigears/interfacesettings/BarsSettings.java b/src/org/omnirom/omnigears/interfacesettings/BarsSettings.java
index ee4b845..865af0d 100644
--- a/src/org/omnirom/omnigears/interfacesettings/BarsSettings.java
+++ b/src/org/omnirom/omnigears/interfacesettings/BarsSettings.java
@@ -88,7 +88,6 @@
         mStatusBarNetworkActivity.setChecked(Settings.System.getInt(resolver,
             Settings.System.STATUS_BAR_NETWORK_ACTIVITY, 0) == 1);
         mStatusBarNetworkActivity.setOnPreferenceChangeListener(this);
-        mStatusBarNetworkActivity.setOnPreferenceChangeListener(this);
 
         mQuickPulldown = (ListPreference) findPreference(QUICK_PULLDOWN);
         mQuickPulldown.setOnPreferenceChangeListener(this);
diff --git a/src/org/omnirom/omnigears/interfacesettings/NotificationPanelSettings.java b/src/org/omnirom/omnigears/interfacesettings/NotificationPanelSettings.java
index 7e2a79c..106d92b 100644
--- a/src/org/omnirom/omnigears/interfacesettings/NotificationPanelSettings.java
+++ b/src/org/omnirom/omnigears/interfacesettings/NotificationPanelSettings.java
@@ -37,8 +37,10 @@
     private static final String TAG = "NotificationPanelSettings";
 
     private static final String STATUS_BAR_CUSTOM_HEADER = "custom_status_bar_header";
+    private static final String QUICK_SWIPE = "quick_swipe";
 
     private CheckBoxPreference mStatusBarCustomHeader;
+    private CheckBoxPreference mQuickSwipe;
 
     @Override
     public void onCreate(Bundle savedInstanceState) {
@@ -52,6 +54,11 @@
         mStatusBarCustomHeader.setChecked(Settings.System.getInt(resolver,
             Settings.System.STATUS_BAR_CUSTOM_HEADER, 0) == 1);
         mStatusBarCustomHeader.setOnPreferenceChangeListener(this);
+
+        mQuickSwipe = (CheckBoxPreference) prefSet.findPreference(QUICK_SWIPE);
+        mQuickSwipe.setChecked(Settings.System.getInt(resolver,
+            Settings.System.QUICK_SWIPE, 1) == 1);
+        mQuickSwipe.setOnPreferenceChangeListener(this);
     }
 
     @Override
@@ -65,10 +72,13 @@
             boolean value = (Boolean) objValue;
             Settings.System.putInt(resolver,
                 Settings.System.STATUS_BAR_CUSTOM_HEADER, value ? 1 : 0);
+        } else if (preference == mQuickSwipe) {
+            boolean value = (Boolean) objValue;
+            Settings.System.putInt(resolver,
+                Settings.System.QUICK_SWIPE, value ? 1 : 0);
         } else {
             return false;
         }
-
         return true;
     }
 }
