mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-02-19 10:48:19 +00:00
Merge "Making taskbar to stay stashed if user launches app for split screen view from all apps view" into tm-qpr-dev am: 4ffc71262d
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20840305 Change-Id: Ia860db35051a564b00c6f1af54227fbda88ecad6 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -312,6 +312,7 @@ public class LauncherTaskbarUIController extends TaskbarUIController {
|
||||
|
||||
@Override
|
||||
public void onTaskbarIconLaunched(ItemInfo item) {
|
||||
super.onTaskbarIconLaunched(item);
|
||||
InstanceId instanceId = new InstanceIdSequence().newInstanceId();
|
||||
mLauncher.logAppLaunch(mControllers.taskbarActivityContext.getStatsLogManager(), item,
|
||||
instanceId);
|
||||
|
||||
@@ -836,15 +836,17 @@ public class TaskbarActivityContext extends BaseTaskbarContext {
|
||||
launchFromTaskbarPreservingSplitIfVisible(recents, info);
|
||||
}
|
||||
|
||||
mControllers.uiController.onTaskbarIconLaunched(info);
|
||||
} catch (NullPointerException
|
||||
| ActivityNotFoundException
|
||||
| SecurityException e) {
|
||||
Toast.makeText(this, R.string.activity_not_found, Toast.LENGTH_SHORT)
|
||||
.show();
|
||||
Log.e(TAG, "Unable to launch. tag=" + info + " intent=" + intent, e);
|
||||
return;
|
||||
}
|
||||
|
||||
}
|
||||
mControllers.uiController.onTaskbarIconLaunched(info);
|
||||
mControllers.taskbarStashController.updateAndAnimateTransientTaskbar(true);
|
||||
}
|
||||
} else if (tag instanceof AppInfo) {
|
||||
@@ -858,8 +860,8 @@ public class TaskbarActivityContext extends BaseTaskbarContext {
|
||||
taskbarUIController.triggerSecondAppForSplit(info, info.intent, view);
|
||||
} else {
|
||||
launchFromTaskbarPreservingSplitIfVisible(recents, info);
|
||||
mControllers.uiController.onTaskbarIconLaunched(info);
|
||||
}
|
||||
mControllers.uiController.onTaskbarIconLaunched(info);
|
||||
mControllers.taskbarStashController.updateAndAnimateTransientTaskbar(true);
|
||||
} else if (tag instanceof ItemClickProxy) {
|
||||
((ItemClickProxy) tag).onItemClicked(view);
|
||||
|
||||
@@ -17,6 +17,8 @@ package com.android.launcher3.taskbar;
|
||||
|
||||
import static android.app.ActivityTaskManager.INVALID_TASK_ID;
|
||||
|
||||
import static com.android.launcher3.taskbar.TaskbarStashController.FLAG_IN_APP;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.graphics.drawable.BitmapDrawable;
|
||||
import android.view.MotionEvent;
|
||||
@@ -74,7 +76,13 @@ public class TaskbarUIController {
|
||||
protected void onStashedInAppChanged() { }
|
||||
|
||||
/** Called when an icon is launched. */
|
||||
public void onTaskbarIconLaunched(ItemInfo item) { }
|
||||
@CallSuper
|
||||
public void onTaskbarIconLaunched(ItemInfo item) {
|
||||
// When launching from Taskbar, e.g. from Overview, set FLAG_IN_APP immediately instead of
|
||||
// waiting for onPause, to reduce potential visual noise during the app open transition.
|
||||
mControllers.taskbarStashController.updateStateForFlag(FLAG_IN_APP, true);
|
||||
mControllers.taskbarStashController.applyState();
|
||||
}
|
||||
|
||||
public View getRootView() {
|
||||
return mControllers.taskbarActivityContext.getDragLayer();
|
||||
@@ -104,7 +112,7 @@ public class TaskbarUIController {
|
||||
public void onExpandPip() {
|
||||
if (mControllers != null) {
|
||||
final TaskbarStashController stashController = mControllers.taskbarStashController;
|
||||
stashController.updateStateForFlag(TaskbarStashController.FLAG_IN_APP, true);
|
||||
stashController.updateStateForFlag(FLAG_IN_APP, true);
|
||||
stashController.applyState();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user