Merge "Report resizeTask failure as boolean result" into rvc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
58657c7c10
@@ -229,7 +229,16 @@ interface IActivityTaskManager {
|
||||
void unregisterTaskStackListener(in ITaskStackListener listener);
|
||||
void setTaskResizeable(int taskId, int resizeableMode);
|
||||
void toggleFreeformWindowingMode(in IBinder token);
|
||||
void resizeTask(int taskId, in Rect bounds, int resizeMode);
|
||||
|
||||
/**
|
||||
* Resize the task with given bounds
|
||||
*
|
||||
* @param taskId The id of the task to set the bounds for.
|
||||
* @param bounds The new bounds.
|
||||
* @param resizeMode Resize mode defined as {@code ActivityTaskManager#RESIZE_MODE_*} constants.
|
||||
* @return Return true on success. Otherwise false.
|
||||
*/
|
||||
boolean resizeTask(int taskId, in Rect bounds, int resizeMode);
|
||||
void moveStackToDisplay(int stackId, int displayId);
|
||||
void removeStack(int stackId);
|
||||
|
||||
|
||||
@@ -3319,7 +3319,7 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void resizeTask(int taskId, Rect bounds, int resizeMode) {
|
||||
public boolean resizeTask(int taskId, Rect bounds, int resizeMode) {
|
||||
mAmInternal.enforceCallingPermission(MANAGE_ACTIVITY_STACKS, "resizeTask()");
|
||||
long ident = Binder.clearCallingIdentity();
|
||||
try {
|
||||
@@ -3328,10 +3328,11 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
|
||||
MATCH_TASK_IN_STACKS_ONLY);
|
||||
if (task == null) {
|
||||
Slog.w(TAG, "resizeTask: taskId=" + taskId + " not found");
|
||||
return;
|
||||
return false;
|
||||
}
|
||||
if (!task.getWindowConfiguration().canResizeTask()) {
|
||||
throw new IllegalArgumentException("resizeTask not allowed on task=" + task);
|
||||
Slog.w(TAG, "resizeTask not allowed on task=" + task);
|
||||
return false;
|
||||
}
|
||||
|
||||
// Reparent the task to the right stack if necessary
|
||||
@@ -3339,7 +3340,7 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
|
||||
|
||||
// After reparenting (which only resizes the task to the stack bounds), resize the
|
||||
// task to the actual bounds provided
|
||||
task.resize(bounds, resizeMode, preserveWindow);
|
||||
return task.resize(bounds, resizeMode, preserveWindow);
|
||||
}
|
||||
} finally {
|
||||
Binder.restoreCallingIdentity(ident);
|
||||
|
||||
Reference in New Issue
Block a user