Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/HeadsUpManagerPhone.java +7 −3 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,7 @@ import android.content.Context; import android.content.res.Configuration; import android.content.res.Configuration; import android.content.res.Resources; import android.content.res.Resources; import android.graphics.Rect; import android.graphics.Rect; import android.graphics.Region; import android.util.Log; import android.util.Log; import android.util.Pools; import android.util.Pools; import android.view.DisplayCutout; import android.view.DisplayCutout; Loading Loading @@ -88,7 +89,7 @@ public class HeadsUpManagerPhone extends HeadsUpManager implements Dumpable, private int[] mTmpTwoArray = new int[2]; private int[] mTmpTwoArray = new int[2]; private boolean mHeadsUpGoingAway; private boolean mHeadsUpGoingAway; private int mStatusBarState; private int mStatusBarState; private Rect mTouchableRegion = new Rect(); private Region mTouchableRegion = new Region(); private AnimationStateHandler mAnimationStateHandler; private AnimationStateHandler mAnimationStateHandler; Loading Loading @@ -365,10 +366,11 @@ public class HeadsUpManagerPhone extends HeadsUpManager implements Dumpable, info.touchableRegion.set(calculateTouchableRegion()); info.touchableRegion.set(calculateTouchableRegion()); } } public Rect calculateTouchableRegion() { public Region calculateTouchableRegion() { if (!hasPinnedHeadsUp()) { if (!hasPinnedHeadsUp()) { mTouchableRegion.set(0, 0, mStatusBarWindowView.getWidth(), mStatusBarHeight); mTouchableRegion.set(0, 0, mStatusBarWindowView.getWidth(), mStatusBarHeight); updateRegionForNotch(mTouchableRegion); updateRegionForNotch(mTouchableRegion); } else { } else { NotificationEntry topEntry = getTopEntry(); NotificationEntry topEntry = getTopEntry(); if (topEntry.isChildInGroup()) { if (topEntry.isChildInGroup()) { Loading @@ -388,7 +390,7 @@ public class HeadsUpManagerPhone extends HeadsUpManager implements Dumpable, return mTouchableRegion; return mTouchableRegion; } } private void updateRegionForNotch(Rect region) { private void updateRegionForNotch(Region region) { DisplayCutout cutout = mStatusBarWindowView.getRootWindowInsets().getDisplayCutout(); DisplayCutout cutout = mStatusBarWindowView.getRootWindowInsets().getDisplayCutout(); if (cutout == null) { if (cutout == null) { return; return; Loading Loading @@ -460,6 +462,8 @@ public class HeadsUpManagerPhone extends HeadsUpManager implements Dumpable, super.dumpInternal(fd, pw, args); super.dumpInternal(fd, pw, args); pw.print(" mBarState="); pw.print(" mBarState="); pw.println(mStatusBarState); pw.println(mStatusBarState); pw.print(" mTouchableRegion="); pw.println(mTouchableRegion); } } /////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////// Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java +4 −2 Original line number Original line Diff line number Diff line Loading @@ -38,6 +38,7 @@ import android.graphics.PointF; import android.graphics.PorterDuff; import android.graphics.PorterDuff; import android.graphics.PorterDuffXfermode; import android.graphics.PorterDuffXfermode; import android.graphics.Rect; import android.graphics.Rect; import android.graphics.Region; import android.os.PowerManager; import android.os.PowerManager; import android.util.AttributeSet; import android.util.AttributeSet; import android.util.Log; import android.util.Log; Loading Loading @@ -676,9 +677,10 @@ public class NotificationPanelView extends PanelView implements private Rect calculateGestureExclusionRect() { private Rect calculateGestureExclusionRect() { Rect exclusionRect = null; Rect exclusionRect = null; if (isFullyCollapsed()) { Region touchableRegion = mHeadsUpManager.calculateTouchableRegion(); if (isFullyCollapsed() && touchableRegion != null) { // Note: The heads up manager also calculates the non-pinned touchable region // Note: The heads up manager also calculates the non-pinned touchable region exclusionRect = mHeadsUpManager.calculateTouchableRegion(); exclusionRect = touchableRegion.getBounds(); } } return exclusionRect != null return exclusionRect != null ? exclusionRect ? exclusionRect Loading Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/HeadsUpManagerPhone.java +7 −3 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,7 @@ import android.content.Context; import android.content.res.Configuration; import android.content.res.Configuration; import android.content.res.Resources; import android.content.res.Resources; import android.graphics.Rect; import android.graphics.Rect; import android.graphics.Region; import android.util.Log; import android.util.Log; import android.util.Pools; import android.util.Pools; import android.view.DisplayCutout; import android.view.DisplayCutout; Loading Loading @@ -88,7 +89,7 @@ public class HeadsUpManagerPhone extends HeadsUpManager implements Dumpable, private int[] mTmpTwoArray = new int[2]; private int[] mTmpTwoArray = new int[2]; private boolean mHeadsUpGoingAway; private boolean mHeadsUpGoingAway; private int mStatusBarState; private int mStatusBarState; private Rect mTouchableRegion = new Rect(); private Region mTouchableRegion = new Region(); private AnimationStateHandler mAnimationStateHandler; private AnimationStateHandler mAnimationStateHandler; Loading Loading @@ -365,10 +366,11 @@ public class HeadsUpManagerPhone extends HeadsUpManager implements Dumpable, info.touchableRegion.set(calculateTouchableRegion()); info.touchableRegion.set(calculateTouchableRegion()); } } public Rect calculateTouchableRegion() { public Region calculateTouchableRegion() { if (!hasPinnedHeadsUp()) { if (!hasPinnedHeadsUp()) { mTouchableRegion.set(0, 0, mStatusBarWindowView.getWidth(), mStatusBarHeight); mTouchableRegion.set(0, 0, mStatusBarWindowView.getWidth(), mStatusBarHeight); updateRegionForNotch(mTouchableRegion); updateRegionForNotch(mTouchableRegion); } else { } else { NotificationEntry topEntry = getTopEntry(); NotificationEntry topEntry = getTopEntry(); if (topEntry.isChildInGroup()) { if (topEntry.isChildInGroup()) { Loading @@ -388,7 +390,7 @@ public class HeadsUpManagerPhone extends HeadsUpManager implements Dumpable, return mTouchableRegion; return mTouchableRegion; } } private void updateRegionForNotch(Rect region) { private void updateRegionForNotch(Region region) { DisplayCutout cutout = mStatusBarWindowView.getRootWindowInsets().getDisplayCutout(); DisplayCutout cutout = mStatusBarWindowView.getRootWindowInsets().getDisplayCutout(); if (cutout == null) { if (cutout == null) { return; return; Loading Loading @@ -460,6 +462,8 @@ public class HeadsUpManagerPhone extends HeadsUpManager implements Dumpable, super.dumpInternal(fd, pw, args); super.dumpInternal(fd, pw, args); pw.print(" mBarState="); pw.print(" mBarState="); pw.println(mStatusBarState); pw.println(mStatusBarState); pw.print(" mTouchableRegion="); pw.println(mTouchableRegion); } } /////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////// Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java +4 −2 Original line number Original line Diff line number Diff line Loading @@ -38,6 +38,7 @@ import android.graphics.PointF; import android.graphics.PorterDuff; import android.graphics.PorterDuff; import android.graphics.PorterDuffXfermode; import android.graphics.PorterDuffXfermode; import android.graphics.Rect; import android.graphics.Rect; import android.graphics.Region; import android.os.PowerManager; import android.os.PowerManager; import android.util.AttributeSet; import android.util.AttributeSet; import android.util.Log; import android.util.Log; Loading Loading @@ -676,9 +677,10 @@ public class NotificationPanelView extends PanelView implements private Rect calculateGestureExclusionRect() { private Rect calculateGestureExclusionRect() { Rect exclusionRect = null; Rect exclusionRect = null; if (isFullyCollapsed()) { Region touchableRegion = mHeadsUpManager.calculateTouchableRegion(); if (isFullyCollapsed() && touchableRegion != null) { // Note: The heads up manager also calculates the non-pinned touchable region // Note: The heads up manager also calculates the non-pinned touchable region exclusionRect = mHeadsUpManager.calculateTouchableRegion(); exclusionRect = touchableRegion.getBounds(); } } return exclusionRect != null return exclusionRect != null ? exclusionRect ? exclusionRect Loading