Dismiss screenshot UI on back gesture/button.

Bug: 157504199
Test: Verify dismissal on screenshot button & gesture. Try rotating
      phone before back, verify it still dismisses.
Change-Id: Ib2f909bd68e596bc23c7d8deab2863a81dd81049
This commit is contained in:
Matt Casey
2020-06-15 21:02:27 -04:00
parent 721a3ac836
commit 4c1f295cb4

View File

@@ -69,6 +69,7 @@ import android.util.Log;
import android.util.MathUtils;
import android.util.Slog;
import android.view.Display;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.SurfaceControl;
@@ -374,6 +375,20 @@ public class GlobalScreenshot implements ViewTreeObserver.OnComputeInternalInset
// Inflate the screenshot layout
mScreenshotLayout = LayoutInflater.from(mContext).inflate(R.layout.global_screenshot, null);
mScreenshotLayout.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
dismissScreenshot("back pressed", true);
return true;
}
return false;
}
});
// Get focus so that the key events go to the layout.
mScreenshotLayout.setFocusableInTouchMode(true);
mScreenshotLayout.requestFocus();
mScreenshotAnimatedView =
mScreenshotLayout.findViewById(R.id.global_screenshot_animated_view);
mScreenshotAnimatedView.setClipToOutline(true);