Merge "Restore non-scrolling UI on long screenshots crash" into sc-dev

This commit is contained in:
Miranda Kephart
2021-07-01 20:07:19 +00:00
committed by Android (Google) Code Review
2 changed files with 24 additions and 0 deletions

View File

@@ -676,12 +676,19 @@ public class ScreenshotController {
mScrollCaptureController.run(response);
future.addListener(() -> {
ScrollCaptureController.LongScreenshot longScreenshot;
try {
longScreenshot = future.get();
} catch (CancellationException
| InterruptedException
| ExecutionException e) {
Log.e(TAG, "Exception", e);
mScreenshotView.restoreNonScrollingUi();
return;
}
if (longScreenshot.getHeight() == 0) {
mScreenshotView.restoreNonScrollingUi();
return;
}

View File

@@ -881,6 +881,23 @@ public class ScreenshotView extends FrameLayout implements
anim.start();
}
void restoreNonScrollingUi() {
mScrollChip.setVisibility(View.GONE);
mScrollablePreview.setVisibility(View.GONE);
mScrollingScrim.setVisibility(View.GONE);
if (mAccessibilityManager.isEnabled()) {
mDismissButton.setVisibility(View.VISIBLE);
}
mActionsContainer.setVisibility(View.VISIBLE);
mBackgroundProtection.setVisibility(View.VISIBLE);
mActionsContainerBackground.setVisibility(View.VISIBLE);
mScreenshotPreviewBorder.setVisibility(View.VISIBLE);
mScreenshotPreview.setVisibility(View.VISIBLE);
// reset the timeout
mCallbacks.onUserInteraction();
}
boolean isDismissing() {
return (mDismissAnimation != null && mDismissAnimation.isRunning());
}