summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/BaseActivity.java
diff options
context:
space:
mode:
authorWinson Chung <winsonc@google.com>2018-04-11 12:47:47 -0700
committerWinson Chung <winsonc@google.com>2018-04-11 13:26:21 -0700
commit1a77c3dce1925bdba572341c973e30ca7bb8e693 (patch)
tree96bb1d8a43e6d58f7849dc259d7d3a1de403efa1 /src/com/android/launcher3/BaseActivity.java
parenteeb084cb4b5fe19841289e8b3adf56e0a13ce614 (diff)
downloadandroid_packages_apps_Trebuchet-1a77c3dce1925bdba572341c973e30ca7bb8e693.tar.gz
android_packages_apps_Trebuchet-1a77c3dce1925bdba572341c973e30ca7bb8e693.tar.bz2
android_packages_apps_Trebuchet-1a77c3dce1925bdba572341c973e30ca7bb8e693.zip
Reload the task list when multiwindow mode changes
Bug: 73097187 Change-Id: I05d8635f78451600cbb8a9c03515e60d3c32e1ae
Diffstat (limited to 'src/com/android/launcher3/BaseActivity.java')
-rw-r--r--src/com/android/launcher3/BaseActivity.java23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/com/android/launcher3/BaseActivity.java b/src/com/android/launcher3/BaseActivity.java
index ae631a446..c15cde5f9 100644
--- a/src/com/android/launcher3/BaseActivity.java
+++ b/src/com/android/launcher3/BaseActivity.java
@@ -20,6 +20,7 @@ import android.app.Activity;
import android.content.Context;
import android.content.ContextWrapper;
import android.content.Intent;
+import android.content.res.Configuration;
import android.graphics.Point;
import android.view.Display;
import android.view.View.AccessibilityDelegate;
@@ -33,6 +34,8 @@ import java.util.ArrayList;
public abstract class BaseActivity extends Activity {
private final ArrayList<OnDeviceProfileChangeListener> mDPChangeListeners = new ArrayList<>();
+ private final ArrayList<MultiWindowModeChangedListener> mMultiWindowModeChangedListeners =
+ new ArrayList<>();
protected DeviceProfile mDeviceProfile;
protected UserEventDispatcher mUserEventDispatcher;
@@ -101,6 +104,14 @@ public abstract class BaseActivity extends Activity {
}
@Override
+ public void onMultiWindowModeChanged(boolean isInMultiWindowMode, Configuration newConfig) {
+ super.onMultiWindowModeChanged(isInMultiWindowMode, newConfig);
+ for (int i = mMultiWindowModeChangedListeners.size() - 1; i >= 0; i--) {
+ mMultiWindowModeChangedListeners.get(i).onMultiWindowModeChanged(isInMultiWindowMode);
+ }
+ }
+
+ @Override
protected void onStop() {
mStarted = false;
mForceInvisible = false;
@@ -129,6 +140,14 @@ public abstract class BaseActivity extends Activity {
}
}
+ public void addMultiWindowModeChangedListener(MultiWindowModeChangedListener listener) {
+ mMultiWindowModeChangedListeners.add(listener);
+ }
+
+ public void removeMultiWindowModeChangedListener(MultiWindowModeChangedListener listener) {
+ mMultiWindowModeChangedListeners.remove(listener);
+ }
+
/**
* Used to set the override visibility state, used only to handle the transition home with the
* recents animation.
@@ -157,4 +176,8 @@ public abstract class BaseActivity extends Activity {
mDeviceProfile = mDeviceProfile.getMultiWindowProfile(this, mwSize);
}
}
+
+ public interface MultiWindowModeChangedListener {
+ void onMultiWindowModeChanged(boolean isInMultiWindowMode);
+ }
}