From e530801f4468c7866df0ee3bcb2d1f0bcfc08a68 Mon Sep 17 00:00:00 2001 From: Brandon Dayauon Date: Tue, 24 Jan 2023 11:09:38 -0800 Subject: [PATCH 1/3] Fix preference screen title to make folded devices the same as phone Now it says "Search your Phone" on folded devices instead of "Search your tablet" when unfolded bug: 265610885 test: Manually - on foldables and tablets Change-Id: I39ee08539b70b2e7258bca86b1450c62c75f748f --- src/com/android/launcher3/settings/SettingsActivity.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/com/android/launcher3/settings/SettingsActivity.java b/src/com/android/launcher3/settings/SettingsActivity.java index d2f82c2965..8d6a5cbccf 100644 --- a/src/com/android/launcher3/settings/SettingsActivity.java +++ b/src/com/android/launcher3/settings/SettingsActivity.java @@ -226,9 +226,10 @@ public class SettingsActivity extends FragmentActivity getResources().getString(R.string.search_pref_screen_title))){ DeviceProfile mDeviceProfile = InvariantDeviceProfile.INSTANCE.get( getContext()).getDeviceProfile(getContext()); - getPreferenceScreen().setTitle(mDeviceProfile.isTablet ? - R.string.search_pref_screen_title_tablet - : R.string.search_pref_screen_title); + getPreferenceScreen().setTitle(mDeviceProfile.isMultiDisplay + || mDeviceProfile.isPhone ? + R.string.search_pref_screen_title : + R.string.search_pref_screen_title_tablet); } getActivity().setTitle(getPreferenceScreen().getTitle()); } From 7cbfdd4f0617418e6d7c131bcb01e85cc22c5b82 Mon Sep 17 00:00:00 2001 From: Anushree Ganjam Date: Thu, 19 Jan 2023 21:03:47 +0000 Subject: [PATCH 2/3] Add logging attribute for VIDEO and SYSTEM_POINTER result type. Bug: 266631411 Test: Manual Change-Id: Ic2819c6c2a74a2e4bf46fb78448f3723ddfe933e --- protos/launcher_atom.proto | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/protos/launcher_atom.proto b/protos/launcher_atom.proto index 677c9921a0..c8a7d85415 100644 --- a/protos/launcher_atom.proto +++ b/protos/launcher_atom.proto @@ -130,7 +130,7 @@ message TaskBarContainer { optional int32 cardinality = 2; } -// Next value 41 +// Next value 43 enum Attribute { UNKNOWN = 0; DEFAULT_LAYOUT = 1; // icon automatically placed in workspace, folder, hotseat @@ -174,6 +174,8 @@ enum Attribute { ALL_APPS_SEARCH_RESULT_PEOPLE_TILE = 27; ALL_APPS_SEARCH_RESULT_LEGACY_SHORTCUT = 30; ALL_APPS_SEARCH_RESULT_ASSISTANT_MEMORY = 31; + ALL_APPS_SEARCH_RESULT_VIDEO = 41; + ALL_APPS_SEARCH_RESULT_SYSTEM_POINTER = 42; // Web suggestions provided by AGA ALL_APPS_SEARCH_RESULT_WEB_SUGGEST = 39; From bf0e65a6e966843651bab9b3fab3136d5040fbe0 Mon Sep 17 00:00:00 2001 From: Azhara Assanova Date: Tue, 17 Jan 2023 19:37:39 +0000 Subject: [PATCH 3/3] Add a no-op flag to mutable implicit PendingIntents Starting from target SDK U, we will block creation of mutable PendingIntents with implicit Intents because attackers can mutate the Intent object within and launch altered behavior on behalf of victim apps. For more details on the vulnerability, see go/pendingintent-rca. From a quick analysis, we concluded that the intents passed into getPendingIntent() can be both explicit and implicit, so we added a no-op FLAG_ALLOW_UNSAFE_IMPLICIT_INTENT to bypass the above block of mutable implicit PendingIntents. The flag is introduced in ag/21018466. Bug: 236704164 Bug: 229362273 Test: TH passes Change-Id: Ia26c8f92d1b4b50e04bc6b487619f54efc7d5a1d --- .../android/quickstep/util/SplitSelectStateController.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java b/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java index 681f068e52..7bc65448b4 100644 --- a/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java +++ b/quickstep/src/com/android/quickstep/util/SplitSelectStateController.java @@ -17,6 +17,7 @@ package com.android.quickstep.util; import static android.app.ActivityTaskManager.INVALID_TASK_ID; +import static android.app.PendingIntent.FLAG_ALLOW_UNSAFE_IMPLICIT_INTENT; import static android.app.PendingIntent.FLAG_MUTABLE; import static com.android.launcher3.Utilities.postAsyncCallback; @@ -310,8 +311,9 @@ public class SplitSelectStateController { private PendingIntent getPendingIntent(Intent intent) { return intent == null ? null : (mUser != null ? PendingIntent.getActivityAsUser(mContext, 0, intent, - FLAG_MUTABLE, null /* options */, mUser) - : PendingIntent.getActivity(mContext, 0, intent, FLAG_MUTABLE)); + FLAG_MUTABLE | FLAG_ALLOW_UNSAFE_IMPLICIT_INTENT, null /* options */, mUser) + : PendingIntent.getActivity(mContext, 0, intent, + FLAG_MUTABLE | FLAG_ALLOW_UNSAFE_IMPLICIT_INTENT)); } public @StagePosition int getActiveSplitStagePosition() {