Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c2f262bc authored by Jorim Jaggi's avatar Jorim Jaggi
Browse files

Only take screenshot when hiding activities

So we don't take screenshots when just switching focus between
activities or when docking activities.

Bug: 26070919
Bug: 25845255
Change-Id: Ie924c5f72f4168806b949ad10df7ef139cd280cc
parent 31557462
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -180,6 +180,7 @@ final class ActivityRecord {
    private boolean inHistory;  // are we in the history stack?
    final ActivityStackSupervisor mStackSupervisor;
    boolean mStartingWindowShown = false;
    boolean mUpdateTaskThumbnailWhenHidden;
    ActivityContainer mInitialActivityContainer;

    TaskDescription taskDescription; // the recents information for this activity
+5 −1
Original line number Diff line number Diff line
@@ -925,7 +925,7 @@ final class ActivityStack {
        final ActivityRecord next = mStackSupervisor.topRunningActivityLocked();
        if (mService.mHasRecents
                && (next == null || next.noDisplay || next.task != prev.task || uiSleeping)) {
            prev.updateThumbnailLocked(screenshotActivitiesLocked(prev), null);
            prev.mUpdateTaskThumbnailWhenHidden = true;
        }
        stopFullyDrawnTraceIfNeeded();

@@ -1221,6 +1221,10 @@ final class ActivityStack {

    private void setVisible(ActivityRecord r, boolean visible) {
        r.visible = visible;
        if (!visible && r.mUpdateTaskThumbnailWhenHidden) {
            r.updateThumbnailLocked(r.task.stack.screenshotActivitiesLocked(r), null);
            r.mUpdateTaskThumbnailWhenHidden = false;
        }
        mWindowManager.setAppVisibility(r.appToken, visible);
        final ArrayList<ActivityContainer> containers = r.mChildContainers;
        for (int containerNdx = containers.size() - 1; containerNdx >= 0; --containerNdx) {