summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/app/Activity.java32
-rw-r--r--core/java/android/app/ActivityThread.java4
2 files changed, 23 insertions, 13 deletions
diff --git a/core/java/android/app/Activity.java b/core/java/android/app/Activity.java
index 9b4c8bd070d8..07d3b8acd85e 100644
--- a/core/java/android/app/Activity.java
+++ b/core/java/android/app/Activity.java
@@ -1879,14 +1879,9 @@ public class Activity extends ContextThemeWrapper
*
* @param isInMultiWindowMode True if the activity is in multi-window mode.
*/
- @CallSuper
public void onMultiWindowModeChanged(boolean isInMultiWindowMode) {
- if (DEBUG_LIFECYCLE) Slog.v(TAG,
- "onMultiWindowModeChanged " + this + ": " + isInMultiWindowMode);
- mFragments.dispatchMultiWindowModeChanged(isInMultiWindowMode);
- if (mWindow != null) {
- mWindow.onMultiWindowModeChanged();
- }
+ // Left deliberately empty. There should be no side effects if a direct
+ // subclass of Activity does not call super.
}
/**
@@ -1909,11 +1904,9 @@ public class Activity extends ContextThemeWrapper
*
* @param isInPictureInPictureMode True if the activity is in picture-in-picture mode.
*/
- @CallSuper
public void onPictureInPictureModeChanged(boolean isInPictureInPictureMode) {
- if (DEBUG_LIFECYCLE) Slog.v(TAG,
- "onPictureInPictureModeChanged " + this + ": " + isInPictureInPictureMode);
- mFragments.dispatchPictureInPictureModeChanged(isInPictureInPictureMode);
+ // Left deliberately empty. There should be no side effects if a direct
+ // subclass of Activity does not call super.
}
/**
@@ -6875,6 +6868,23 @@ public class Activity extends ContextThemeWrapper
}
}
+ final void dispatchMultiWindowModeChanged(boolean isInMultiWindowMode) {
+ if (DEBUG_LIFECYCLE) Slog.v(TAG,
+ "dispatchMultiWindowModeChanged " + this + ": " + isInMultiWindowMode);
+ mFragments.dispatchMultiWindowModeChanged(isInMultiWindowMode);
+ if (mWindow != null) {
+ mWindow.onMultiWindowModeChanged();
+ }
+ onMultiWindowModeChanged(isInMultiWindowMode);
+ }
+
+ final void dispatchPictureInPictureModeChanged(boolean isInPictureInPictureMode) {
+ if (DEBUG_LIFECYCLE) Slog.v(TAG,
+ "dispatchPictureInPictureModeChanged " + this + ": " + isInPictureInPictureMode);
+ mFragments.dispatchPictureInPictureModeChanged(isInPictureInPictureMode);
+ onPictureInPictureModeChanged(isInPictureInPictureMode);
+ }
+
/**
* @hide
*/
diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java
index cf2ef4521291..f78f121c9922 100644
--- a/core/java/android/app/ActivityThread.java
+++ b/core/java/android/app/ActivityThread.java
@@ -2905,14 +2905,14 @@ public final class ActivityThread {
private void handleMultiWindowModeChanged(IBinder token, boolean isInMultiWindowMode) {
final ActivityClientRecord r = mActivities.get(token);
if (r != null) {
- r.activity.onMultiWindowModeChanged(isInMultiWindowMode);
+ r.activity.dispatchMultiWindowModeChanged(isInMultiWindowMode);
}
}
private void handlePictureInPictureModeChanged(IBinder token, boolean isInPipMode) {
final ActivityClientRecord r = mActivities.get(token);
if (r != null) {
- r.activity.onPictureInPictureModeChanged(isInPipMode);
+ r.activity.dispatchPictureInPictureModeChanged(isInPipMode);
}
}