History log of /frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
173020c2ef0a1dc109a9a39afc3e107badcd407e 05-May-2018 Winson Chung <winsonc@google.com> Expose the system ui visibility flags and translucent state with snapshot

- Allow SystemUI/Launcher to determine whether the snapshot is of a
translucent activity (to reduce overdraw by skipping drawing task
background) and also the sysui visibility flags are (to determine how
to update the nav bar while animating before the app is started.
- Fixing issue where the recents animation was reporting task fillsparent
state instead of the app's fillsparent state (as we do in normal remote
animations)

Bug: 79228291
Bug: 77984778
Bug: 78659249
Test: atest FrameworksServicesTests:TaskSnapshotPersisterLoaderTest
Change-Id: I19bdf7f780e7d94014d6a115bf84fa614b1dffa0
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
a4fa8d5bd4fcdde51cd4d0ada6a99a5ebc302a88 21-Apr-2018 Winson Chung <winsonc@google.com> Add windowing mode to task snapshot.

Bug: 78155683
Test: atest FrameworksServicesTests:TaskSnapshotPersisterLoaderTest
Change-Id: I4e562d818416a30d6759baef37c74b6d9c514a00
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
f3e412e5021c43491ed3ced61f02c2fd436e064e 08-Mar-2018 Winson Chung <winsonc@google.com> Expose whether a snapshot is a real snapshot

- This allows launcher to distinguish between a real snapshot and an app
theme snapshot, which it will decorate differently.

Bug: 72809891
Test: atest com.android.server.wm.TaskSnapshotPersisterLoaderTest
Change-Id: Ia94591ab83ef312556f138cf11398cc5680ad798
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
a36dc621ef0b86a0bd46f1d4f5a719a466ba1800 06-Feb-2018 Andreas Gampe <agampe@google.com> Frameworks: Annotate trivial @GuardedBy in services/core

Add @GuardedBy for simple functions that require a single lock
and are named XYZLocked.

Derived by errorprone.

Bug: 73000847
Test: m
Test: m javac-check-framework RUN_ERROR_PRONE=true
Change-Id: I6993325b11c71a4ec27c21935fb54a954d95455f
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
bba03022d573db56d8de32411adb75afefffc3c3 02-Sep-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Low ram devices now use 60% reduction for task snap shots" into oc-mr1-dev
e3b26e6c497b32ef53835320b7dcddafe53c78e9 01-Sep-2017 Matthew Ng <ngmatthew@google.com> Low ram devices now use 60% reduction for task snap shots

On low ram devices, it will now use a reduce scale of 0.6f.

Test: manual - launch apps, launch recents see the bitmap on task
Change-Id: I016b896e9e43d4d0a549a47aa69e7b5541aa5dbc
Fixes: 65163822
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
bd51856eec01bae7b938f6c8818868883a9ff8cb 29-Aug-2017 Matthew Ng <ngmatthew@google.com> Prevent getting large bitmap log error for gobo

Forgotten to move a line of code to the area to ignore loading large
bitmaps causing an error log. The code related is ag/2579729.

Test: manual - boot gobo device and read log
Change-Id: Iaeedf80b6fa25331f7db09e21db84574a53939b3
Fixes: 65127030
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
cb7ac679a5c4cdbef7f3fa232ca168d876cd27c5 22-Jul-2017 Matthew Ng <ngmatthew@google.com> Always use low-res tasksnapshots for low ram devices

All snapshots are now stored using only the low resolution bitmaps
where all full size bitmaps are disabled to be written or loaded.

Bug: 62251652
Fixes: 63940837
Test: manual - open recents on low ram device to see if thumbnail is
there
Change-Id: I2128f0348cf71415721e73c730d3ed92e95d8144
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
3e13ef8a0e2953dbe825df22d9df44b7718e97f8 29-Jun-2017 Winson Chung <winsonc@google.com> Moving check for empty snapshots earlier.

- This also prevents them from being added to the cache and reporting that
the snapshot changed.

Bug: 62727429
Test: bit FrameworksServicesTests:com.android.server.wm.TaskSnapshotControllerTest,com.android.server.wm.TaskSnapshotPersisterLoaderTest,com.android.server.wm.TaskSnapshotCacheTest

Change-Id: Ie02f120e5460322da28faa8a5679191024377c4c
Signed-off-by: Winson Chung <winsonc@google.com>
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
dab16730213134a7bf4ab1afd81d2c808bc6d7f4 20-Jun-2017 Winson Chung <winsonc@google.com> Adding additional check for zero-sized snapshot.

Bug: 62727429
Test: Not reproducible, just adding check
Change-Id: I1fd5aa43ffb6f211881d5c198c10ee1451666970
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
ef3651cff41b929b2fc0c3bd6effe93257f4d831 18-May-2017 Jorim Jaggi <jjaggi@google.com> Purge StoreWriteQueue items to avoid system health issues

If queue gets too deep we may run out of memory or cause other
system health issues.

Test: TaskSnapshotPersisterLoaderTest
Bug: 38416992
Bug: 37631016
Change-Id: I725c9a458f78af2e625f2451bb0030176035f596
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
2f9c7a2f14472043135b3bbe6eb98dcbe7a5f91d 16-May-2017 Jorim Jaggi <jjaggi@google.com> Fix spinning TaskPersister

Wait on the lock if the queue is paused instead of
just spin-looping.

Test: Close app, make sure screenshot gets persisted.
Bug: 36631902
Change-Id: Id7940468391d6cdfc74bb9341c1639f72d469387
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
a41b729f8f5eae6e7aec59970b77bfb62d5528e5 11-May-2017 Jorim Jaggi <jjaggi@google.com> Reduce impact of RenderThread in system_server

- Don't try to persist snapshots during window animations. It can
wait and doing it later while decrease the load during window
animations, leading to less jank.
- Lower RT priority to 130 from system_server. It's only used for
background things.

Bug: 37631016
Bug: 36631902
Change-Id: I4fc21b53f257d0194a7f64c3064756ab2426ff17
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
2dae85591d4ffc8b27563706cfc68fcba59bc8bf 02-May-2017 Jorim Jaggi <jjaggi@google.com> Avoid reading HW bitmap pixels twice

Both createScaledBitmap and compress read it back to regular
memory. Avoid that by creating an intermediate software bitmap.

Test: TaskSnapshotPersisterLoaderTest
Bug: 37631016
Change-Id: Id03fa3f6a827d3bd39f8fe4fddfc2d32139dac9b
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
35e3f53a30588b79e0309fdbeef29a8c18eef65d 17-Mar-2017 Jorim Jaggi <jjaggi@google.com> Also store reduced resolution screenshots

In order to speed up loading time when scrolling through it
in recents. They will be used in recents in the next CL. Also, we
use JPG instead as loading JPG is much faster than PNG.

Test: TaskSnapshotPersisterLoaderTest
Test: TaskSnapshotCacheTest
Bug: 34829962
Change-Id: I4c74b26969ae459bd3b1a42707011a49f425abd9
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java
f9084ecae2e0f042730ab32b9c94204a0e21bb2a 16-Jan-2017 Jorim Jaggi <jjaggi@google.com> Persist task snapshots to disk

So they can be used again after rebooting or when the process gets
killed, but the snapshot is still used for recents.

Also implement TaskSnapshotLoader, to restore it from disk. The
infrastructure around restoring and caching snapshots for recents
will be implemented in the next CL.

Test: runtest frameworks-services -c
com.android.server.wm.TaskSnapshotPersisterLoaderTest

Bug: 31339431
Change-Id: Iaec03c4cc92e04b6dd7e623bca755ddc92613bce
/frameworks/base/services/core/java/com/android/server/wm/TaskSnapshotPersister.java