Backport 'add config to disable snapshots'. am: 44dfd78b29 am: beaf2171c2

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1870936

Change-Id: If56bbf2b4267b991bd2d580506e3f77b80f148c4
This commit is contained in:
Brett Chabot
2021-11-03 18:27:35 +00:00
committed by Automerger Merge Worker
3 changed files with 16 additions and 2 deletions

View File

@@ -5061,4 +5061,7 @@
<!-- the number of the max cached processes in the system. -->
<integer name="config_customizedMaxCachedProcesses">32</integer>
<!-- Whether this device should support taking app snapshots on closure -->
<bool name="config_disableTaskSnapshots">false</bool>
</resources>

View File

@@ -4405,7 +4405,7 @@
<java-symbol type="string" name="view_and_control_notification_title" />
<java-symbol type="string" name="view_and_control_notification_content" />
<java-symbol type="array" name="config_accessibility_allowed_install_source" />
<!-- Translation -->
<java-symbol type="string" name="ui_translation_accessibility_translated_text" />
<java-symbol type="string" name="ui_translation_accessibility_translation_finished" />
@@ -4432,4 +4432,7 @@
<java-symbol type="array" name="config_sharedLibrariesLoadedAfterApp" />
<java-symbol type="integer" name="config_customizedMaxCachedProcesses" />
<java-symbol type="bool" name="config_disableTaskSnapshots" />
</resources>

View File

@@ -118,6 +118,11 @@ class TaskSnapshotController {
*/
private final boolean mIsRunningOnWear;
/**
* Flag indicating if device configuration has disabled app snapshots.
*/
private final boolean mConfigDisableTaskSnapshots;
TaskSnapshotController(WindowManagerService service) {
mService = service;
mPersister = new TaskSnapshotPersister(mService, Environment::getDataSystemCeDirectory);
@@ -131,6 +136,8 @@ class TaskSnapshotController {
PackageManager.FEATURE_WATCH);
mHighResTaskSnapshotScale = mService.mContext.getResources().getFloat(
com.android.internal.R.dimen.config_highResTaskSnapshotScale);
mConfigDisableTaskSnapshots = mService.mContext.getResources().getBoolean(
com.android.internal.R.bool.config_disableTaskSnapshots);
}
void systemReady() {
@@ -488,7 +495,8 @@ class TaskSnapshotController {
}
boolean shouldDisableSnapshots() {
return mIsRunningOnWear || mIsRunningOnTv || mIsRunningOnIoT;
return mIsRunningOnWear || mIsRunningOnTv || mIsRunningOnIoT
|| mConfigDisableTaskSnapshots;
}
/**