Only apply back gesture device config if there are existing insets

Bug: 161995292
Test: Change navigation modes and verify the insets are correct
Change-Id: I4d940099b7fdc00c129f60dc6b3d0cb470b7f42e
This commit is contained in:
Winson Chung
2020-07-29 09:26:47 -07:00
parent 379eb5c25f
commit a8a07f1f40

View File

@@ -103,8 +103,11 @@ public class GestureNavigationSettingsObserver extends ContentObserver {
final DisplayMetrics dm = userRes.getDisplayMetrics();
final float defaultInset = userRes.getDimension(
com.android.internal.R.dimen.config_backGestureInset) / dm.density;
final float backGestureInset = DeviceConfig.getFloat(DeviceConfig.NAMESPACE_SYSTEMUI,
BACK_GESTURE_EDGE_WIDTH, defaultInset);
// Only apply the back gesture config if there is an existing inset
final float backGestureInset = defaultInset > 0
? DeviceConfig.getFloat(DeviceConfig.NAMESPACE_SYSTEMUI,
BACK_GESTURE_EDGE_WIDTH, defaultInset)
: defaultInset;
final float inset = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, backGestureInset,
dm);
final float scale = Settings.Secure.getFloatForUser(