[Xposed Framework Modules] w0rinal:
Crash when unticking all three edges and clicking OK

java.lang.StringIndexOutOfBoundsException: length=0; regionStart=0; regionLength=-2
at java.lang.String.startEndAndLength(String.java:588)
at java.lang.String.substring(String.java:1475)
at info.papdt.swipeback.ui.app.SettingsFragment.buildEdgeText(SettingsFragment.java:130)
at info.papdt.swipeback.ui.app.SettingsFragment.onPreferenceChange(SettingsFragment.java:74)
at android.preference.Preference.callChangeListener(Preference.java:897)
at android.preference.MultiSelectListPreference.onDialogClosed(MultiSelectListPreference.java:202)
at android.preference.DialogPreference.onDismiss(DialogPreference.java:390)
at android.app.Dialog$ListenersHandler.handleMessage(Dialog.java:1238)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5034)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:611)
at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
at dalvik.system.NativeStart.main(Native Method)

And when opening the app again and clicking global, crash again

java.lang.RuntimeException: Unable to start activity ComponentInfo{info.papdt.swipeback/info.papdt.swipeback.ui.base.GlobalActivity}: java.lang.StringIndexOutOfBoundsException: length=0; regionStart=0; regionLength=-2
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2187)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2236)
at android.app.ActivityThread.access$800(ActivityThread.java:138)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1199)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5034)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:611)
at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.StringIndexOutOfBoundsException: length=0; regionStart=0; regionLength=-2
at java.lang.String.startEndAndLength(String.java:588)
at java.lang.String.substring(String.java:1475)
at info.papdt.swipeback.ui.app.SettingsFragment.buildEdgeText(SettingsFragment.java:130)
at info.papdt.swipeback.ui.app.SettingsFragment.reload(SettingsFragment.java:170)
at info.papdt.swipeback.ui.app.SettingsFragment.onPreferenceLoaded(SettingsFragment.java:59)
at info.papdt.swipeback.ui.base.BasePreferenceFragment.onCreate(BasePreferenceFragment.java:17)
at android.app.Fragment.performCreate(Fragment.java:1678)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:859)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1062)
at android.app.BackStackRecord.run(BackStackRecord.java:684)
at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1447)
at android.app.Activity.performStart(Activity.java:5250)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2160)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2236)
at android.app.ActivityThread.access$800(ActivityThread.java:138)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1199)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5034)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:611)
at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
at dalvik.system.NativeStart.main(Native Method)

Of course selecting no edge doesn't make sense but doing so by mistake could be a pain in the a** if you need to clear app's data and reconfigure your settings :D

[size=-4]Sent from my Boeffla powered Slim (4.4.4) GT-I9300[/size]