Using outset bottom from theme as bottom inset on circular screens.

Change-Id: I46374b345e60a74b6afbbb6a278a0b8e81650681
This commit is contained in:
Filip Gruszczynski
2014-07-14 17:10:42 -07:00
parent 0cb38d2e5a
commit dcb70c2e08

View File

@@ -88,6 +88,7 @@ import android.view.ViewParent;
import android.view.ViewRootImpl;
import android.view.ViewStub;
import android.view.Window;
import android.view.WindowInsets;
import android.view.WindowManager;
import android.view.accessibility.AccessibilityEvent;
import android.view.accessibility.AccessibilityManager;
@@ -2093,6 +2094,22 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback {
return super.dispatchGenericMotionEvent(event);
}
@Override
public WindowInsets dispatchApplyWindowInsets(WindowInsets insets) {
if (mOutsetBottom != null) {
final DisplayMetrics metrics = getContext().getResources().getDisplayMetrics();
int bottom = (int) mOutsetBottom.getDimension(metrics);
WindowInsets newInsets = insets.replaceSystemWindowInsets(
insets.getSystemWindowInsetLeft(), insets.getSystemWindowInsetTop(),
insets.getSystemWindowInsetRight(),
insets.getSystemWindowInsetBottom() + bottom);
return super.dispatchApplyWindowInsets(newInsets);
} else {
return super.dispatchApplyWindowInsets(insets);
}
}
@Override
public boolean onTouchEvent(MotionEvent event) {
return onInterceptTouchEvent(event);