From a38aab93b9f4eb0ba267c4c019efae2b6d43470b Mon Sep 17 00:00:00 2001 From: Hyunyoung Song Date: Tue, 14 Mar 2023 07:56:59 +0000 Subject: [PATCH] Revert "Revert "Hide the splash icon when launching with no view..." Revert submission 21916962-revert-21447384-no-splash-UILAXIUPKJ Reason for revert: Retry errorprone target Reverted changes: /q/submissionid:21916962-revert-21447384-no-splash-UILAXIUPKJ Flag: production issue. Not hidden behind flag Bug: 269343536 Test: manual Change-Id: Ia365f886d39d63472d72afc2033fc67e19109f57 --- .../launcher3/uioverrides/QuickstepLauncher.java | 6 ++++-- src/com/android/launcher3/LauncherSettings.java | 4 ++++ src/com/android/launcher3/views/ActivityContext.java | 10 +++++++++- 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java b/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java index 13de470976..1b888c9b6e 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java +++ b/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java @@ -20,10 +20,11 @@ import static android.os.Trace.TRACE_TAG_APP; import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_OPTIMIZE_MEASURE; import static android.view.accessibility.AccessibilityEvent.TYPE_VIEW_FOCUSED; +import static com.android.launcher3.LauncherSettings.Animation.DEFAULT_NO_ICON; +import static com.android.launcher3.LauncherSettings.Animation.VIEW_BACKGROUND; import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT; import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_APPLICATION; import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT; -import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_SEARCH_ACTION; import static com.android.launcher3.LauncherSettings.Favorites.ITEM_TYPE_SHORTCUT; import static com.android.launcher3.LauncherState.ALL_APPS; import static com.android.launcher3.LauncherState.NORMAL; @@ -1068,7 +1069,8 @@ public class QuickstepLauncher extends Launcher { activityOptions.options.setSourceInfo(ActivityOptions.SourceInfo.TYPE_LAUNCHER, mLastTouchUpTime); } - if (item != null && item.itemType == ITEM_TYPE_SEARCH_ACTION) { + if (item != null && (item.animationType == DEFAULT_NO_ICON + || item.animationType == VIEW_BACKGROUND)) { activityOptions.options.setSplashScreenStyle( SplashScreen.SPLASH_SCREEN_STYLE_SOLID_COLOR); } else { diff --git a/src/com/android/launcher3/LauncherSettings.java b/src/com/android/launcher3/LauncherSettings.java index cef00d9e7d..6e3e96ca93 100644 --- a/src/com/android/launcher3/LauncherSettings.java +++ b/src/com/android/launcher3/LauncherSettings.java @@ -41,6 +41,10 @@ public class LauncherSettings { * An animation using the view's background. */ public static final int VIEW_BACKGROUND = 1; + /** + * The default animation for a given view/item info type, but without the splash icon. + */ + public static final int DEFAULT_NO_ICON = 2; } /** diff --git a/src/com/android/launcher3/views/ActivityContext.java b/src/com/android/launcher3/views/ActivityContext.java index b6f622359e..10f40b7124 100644 --- a/src/com/android/launcher3/views/ActivityContext.java +++ b/src/com/android/launcher3/views/ActivityContext.java @@ -45,6 +45,7 @@ import android.view.WindowInsets; import android.view.WindowInsetsController; import android.view.inputmethod.InputMethodManager; import android.widget.Toast; +import android.window.SplashScreen; import androidx.annotation.NonNull; import androidx.annotation.Nullable; @@ -320,7 +321,14 @@ public interface ActivityContext { return false; } - Bundle optsBundle = (v != null) ? getActivityLaunchOptions(v, item).toBundle() : null; + Bundle optsBundle = null; + if (v != null) { + optsBundle = getActivityLaunchOptions(v, item).toBundle(); + } else if (item != null && item.animationType == LauncherSettings.Animation.DEFAULT_NO_ICON + && Utilities.ATLEAST_T) { + optsBundle = ActivityOptions.makeBasic() + .setSplashScreenStyle(SplashScreen.SPLASH_SCREEN_STYLE_SOLID_COLOR).toBundle(); + } UserHandle user = item == null ? null : item.user; // Prepare intent