Merge "Making ViewRootImpl drop input events when the Activity is in ambient mode." into cw-e-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
cbef517d02
@@ -174,6 +174,10 @@ public final class ViewRootImpl implements ViewParent,
|
||||
// so the window should no longer be active.
|
||||
boolean mStopped = false;
|
||||
|
||||
// Set to true if the owner of this window is in ambient mode,
|
||||
// which means it won't receive input events.
|
||||
boolean mIsAmbientMode = false;
|
||||
|
||||
// Set to true to stop input during an Activity Transition.
|
||||
boolean mPausedForTransition = false;
|
||||
|
||||
@@ -990,6 +994,10 @@ public final class ViewRootImpl implements ViewParent,
|
||||
}
|
||||
}
|
||||
|
||||
public void setIsAmbientMode(boolean ambient) {
|
||||
mIsAmbientMode = ambient;
|
||||
}
|
||||
|
||||
void setWindowStopped(boolean stopped) {
|
||||
if (mStopped != stopped) {
|
||||
mStopped = stopped;
|
||||
@@ -3704,7 +3712,7 @@ public final class ViewRootImpl implements ViewParent,
|
||||
return true;
|
||||
} else if ((!mAttachInfo.mHasWindowFocus
|
||||
&& !q.mEvent.isFromSource(InputDevice.SOURCE_CLASS_POINTER)) || mStopped
|
||||
|| (mPausedForTransition && !isBack(q.mEvent))) {
|
||||
|| mIsAmbientMode || (mPausedForTransition && !isBack(q.mEvent))) {
|
||||
// This is a focus event and the window doesn't currently have input focus or
|
||||
// has stopped. This could be an event that came back from the previous stage
|
||||
// but the window has lost focus or stopped in the meantime.
|
||||
@@ -5514,6 +5522,8 @@ public final class ViewRootImpl implements ViewParent,
|
||||
writer.println(mProcessInputEventsScheduled);
|
||||
writer.print(innerPrefix); writer.print("mTraversalScheduled=");
|
||||
writer.print(mTraversalScheduled);
|
||||
writer.print(innerPrefix); writer.print("mIsAmbientMode=");
|
||||
writer.print(mIsAmbientMode);
|
||||
if (mTraversalScheduled) {
|
||||
writer.print(" (barrier="); writer.print(mTraversalBarrier); writer.println(")");
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user