Merge "Organize multi-window enabling" into oc-dev
am: cad3c3251c
Change-Id: Ic7a4976186161c80ba02e1b59d8898f8765b50f3
This commit is contained in:
@@ -1472,6 +1472,20 @@ public class ActivityManagerService extends IActivityManager.Stub
|
|||||||
boolean mOrigWaitForDebugger = false;
|
boolean mOrigWaitForDebugger = false;
|
||||||
boolean mAlwaysFinishActivities = false;
|
boolean mAlwaysFinishActivities = false;
|
||||||
boolean mForceResizableActivities;
|
boolean mForceResizableActivities;
|
||||||
|
/**
|
||||||
|
* Flag that indicates if multi-window is enabled.
|
||||||
|
*
|
||||||
|
* For any particular form of multi-window to be enabled, generic multi-window must be enabled
|
||||||
|
* in {@link com.android.internal.R.bool.config_supportsMultiWindow} config or
|
||||||
|
* {@link Settings.Global#DEVELOPMENT_FORCE_RESIZABLE_ACTIVITIES} development option set.
|
||||||
|
* At least one of the forms of multi-window must be enabled in order for this flag to be
|
||||||
|
* initialized to 'true'.
|
||||||
|
*
|
||||||
|
* @see #mSupportsSplitScreenMultiWindow
|
||||||
|
* @see #mSupportsFreeformWindowManagement
|
||||||
|
* @see #mSupportsPictureInPicture
|
||||||
|
* @see #mSupportsMultiDisplay
|
||||||
|
*/
|
||||||
boolean mSupportsMultiWindow;
|
boolean mSupportsMultiWindow;
|
||||||
boolean mSupportsSplitScreenMultiWindow;
|
boolean mSupportsSplitScreenMultiWindow;
|
||||||
boolean mSupportsFreeformWindowManagement;
|
boolean mSupportsFreeformWindowManagement;
|
||||||
@@ -13932,16 +13946,23 @@ public class ActivityManagerService extends IActivityManager.Stub
|
|||||||
mAlwaysFinishActivities = alwaysFinishActivities;
|
mAlwaysFinishActivities = alwaysFinishActivities;
|
||||||
mSupportsLeanbackOnly = supportsLeanbackOnly;
|
mSupportsLeanbackOnly = supportsLeanbackOnly;
|
||||||
mForceResizableActivities = forceResizable;
|
mForceResizableActivities = forceResizable;
|
||||||
if (supportsMultiWindow || forceResizable) {
|
final boolean multiWindowFormEnabled = freeformWindowManagement
|
||||||
|
|| supportsSplitScreenMultiWindow
|
||||||
|
|| supportsPictureInPicture
|
||||||
|
|| supportsMultiDisplay;
|
||||||
|
if ((supportsMultiWindow || forceResizable) && multiWindowFormEnabled) {
|
||||||
mSupportsMultiWindow = true;
|
mSupportsMultiWindow = true;
|
||||||
mSupportsFreeformWindowManagement = freeformWindowManagement || forceResizable;
|
mSupportsFreeformWindowManagement = freeformWindowManagement;
|
||||||
|
mSupportsSplitScreenMultiWindow = supportsSplitScreenMultiWindow;
|
||||||
|
mSupportsPictureInPicture = supportsPictureInPicture;
|
||||||
|
mSupportsMultiDisplay = supportsMultiDisplay;
|
||||||
} else {
|
} else {
|
||||||
mSupportsMultiWindow = false;
|
mSupportsMultiWindow = false;
|
||||||
mSupportsFreeformWindowManagement = false;
|
mSupportsFreeformWindowManagement = false;
|
||||||
|
mSupportsSplitScreenMultiWindow = false;
|
||||||
|
mSupportsPictureInPicture = false;
|
||||||
|
mSupportsMultiDisplay = false;
|
||||||
}
|
}
|
||||||
mSupportsSplitScreenMultiWindow = supportsSplitScreenMultiWindow;
|
|
||||||
mSupportsPictureInPicture = supportsPictureInPicture;
|
|
||||||
mSupportsMultiDisplay = supportsMultiDisplay;
|
|
||||||
mWindowManager.setForceResizableTasks(mForceResizableActivities);
|
mWindowManager.setForceResizableTasks(mForceResizableActivities);
|
||||||
mWindowManager.setSupportsPictureInPicture(mSupportsPictureInPicture);
|
mWindowManager.setSupportsPictureInPicture(mSupportsPictureInPicture);
|
||||||
// This happens before any activities are started, so we can change global configuration
|
// This happens before any activities are started, so we can change global configuration
|
||||||
|
|||||||
Reference in New Issue
Block a user