diff --git a/src/com/android/browser/preferences/AdvancedPreferencesFragment.java b/src/com/android/browser/preferences/AdvancedPreferencesFragment.java
index 8d1ce6b..fa73abc 100644
--- a/src/com/android/browser/preferences/AdvancedPreferencesFragment.java
+++ b/src/com/android/browser/preferences/AdvancedPreferencesFragment.java
@@ -75,6 +75,7 @@
 
         ListPreference edgeSwipePref =
                 (ListPreference) mFragment.findPreference("edge_swiping_action");
+        edgeSwipePref.setOnPreferenceChangeListener(this);
 
         if (BrowserCommandLine.hasSwitch("ui-low-power-mode")) {
             edgeSwipePref.setEnabled(false);
@@ -147,8 +148,14 @@
             Log.w("PageContentPreferencesFragment", "onPreferenceChange called from detached fragment!");
             return false;
         }
+        if(pref.getKey().equals("edge_swiping_action")){
+            ListPreference lp = (ListPreference) pref;
+            lp.setValue((String) objValue);
+            updateListPreferenceSummary(lp);
+            return true;
+        }
 
-        if (pref.getKey().equals(PreferenceKeys.PREF_RESET_DEFAULT_PREFERENCES)) {
+        else if (pref.getKey().equals(PreferenceKeys.PREF_RESET_DEFAULT_PREFERENCES)) {
             Boolean value = (Boolean) objValue;
             if (value.booleanValue() == true) {
                 PermissionsServiceFactory.resetDefaultPermissions();
