summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Bryce Lee <brycelee@google.com> 2017-08-18 02:04:17 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2017-08-18 02:04:17 +0000
commite530e4db0c29d7d639e4a2bcdce3810c57ad294f (patch)
treef82c5186c961e0883a537021f52f5f4138d765db
parent2a9da68e39ad82f1c69349ca4a84df061927944c (diff)
parent8104e7a258a9d3f230980eae7da05694320f746f (diff)
Merge "Only update reported configuration when triggered from AM side." into oc-mr1-dev
-rw-r--r--services/core/java/com/android/server/am/ActivityRecord.java20
-rw-r--r--services/core/java/com/android/server/am/TaskRecord.java1
2 files changed, 6 insertions, 15 deletions
diff --git a/services/core/java/com/android/server/am/ActivityRecord.java b/services/core/java/com/android/server/am/ActivityRecord.java
index 6b1f7585dde6..74bdf6f3dae4 100644
--- a/services/core/java/com/android/server/am/ActivityRecord.java
+++ b/services/core/java/com/android/server/am/ActivityRecord.java
@@ -947,8 +947,6 @@ final class ActivityRecord extends ConfigurationContainer implements AppWindowCo
// the user leaves that mode.
mLastReportedMultiWindowMode = !task.mFullscreen;
mLastReportedPictureInPictureMode = (task.getStackId() == PINNED_STACK_ID);
-
- onOverrideConfigurationSent();
}
void removeWindowContainer() {
@@ -2212,15 +2210,12 @@ final class ActivityRecord extends ConfigurationContainer implements AppWindowCo
* a new merged configuration is sent to the client for this activity.
*/
void setLastReportedConfiguration(@NonNull MergedConfiguration config) {
- mLastReportedConfiguration.setTo(config);
+ setLastReportedConfiguration(config.getGlobalConfiguration(),
+ config.getOverrideConfiguration());
}
- /** Call when override config was sent to the Window Manager to update internal records. */
- // TODO(b/36505427): Why do we set last reported based on sending the config to WM? Seems like
- // we should only set this when we actually report to the activity which is what the method
- // setLastReportedMergedOverrideConfiguration() does. Investigate if this is really needed.
- void onOverrideConfigurationSent() {
- mLastReportedConfiguration.setOverrideConfiguration(getMergedOverrideConfiguration());
+ void setLastReportedConfiguration(Configuration global, Configuration override) {
+ mLastReportedConfiguration.setConfiguration(global, override);
}
@Override
@@ -2234,9 +2229,6 @@ final class ActivityRecord extends ConfigurationContainer implements AppWindowCo
return;
}
mWindowContainerController.onOverrideConfigurationChanged(newConfig, mBounds);
- // TODO(b/36505427): Can we consolidate the call points of onOverrideConfigurationSent()
- // to just use this method instead?
- onOverrideConfigurationSent();
}
// TODO(b/36505427): Consider moving this method and similar ones to ConfigurationContainer.
@@ -2423,8 +2415,8 @@ final class ActivityRecord extends ConfigurationContainer implements AppWindowCo
// Update last reported values.
final Configuration newMergedOverrideConfig = getMergedOverrideConfiguration();
- mLastReportedConfiguration.setConfiguration(service.getGlobalConfiguration(),
- newMergedOverrideConfig);
+
+ setLastReportedConfiguration(service.getGlobalConfiguration(), newMergedOverrideConfig);
if (changes == 0 && !forceNewConfig) {
if (DEBUG_SWITCH || DEBUG_CONFIGURATION) Slog.v(TAG_CONFIGURATION,
diff --git a/services/core/java/com/android/server/am/TaskRecord.java b/services/core/java/com/android/server/am/TaskRecord.java
index 617ba9603463..261797e3113c 100644
--- a/services/core/java/com/android/server/am/TaskRecord.java
+++ b/services/core/java/com/android/server/am/TaskRecord.java
@@ -1294,7 +1294,6 @@ final class TaskRecord extends ConfigurationContainer implements TaskWindowConta
// created controller for the activity we are starting yet.
mWindowContainerController.positionChildAt(appController, index);
}
- r.onOverrideConfigurationSent();
// Make sure the list of display UID whitelists is updated
// now that this record is in a new task.