diff options
author | 2025-01-28 14:49:47 -0800 | |
---|---|---|
committer | 2025-01-28 14:49:47 -0800 | |
commit | f2b2d4a4cccc446df6ac87257258e777b607b0b9 (patch) | |
tree | 89bc36fc2ae3edcf9327a0500038c7e147c5eec8 /java | |
parent | 55c17628fc71f8911a9b5a5bdc6b9edda077c6ab (diff) | |
parent | e0d3931f5d4721315954b83073ad2388fbb4ba26 (diff) |
Merge "Clear cached direct targets." into main
Diffstat (limited to 'java')
3 files changed, 14 insertions, 6 deletions
diff --git a/java/src/com/android/intentresolver/ChooserActivity.java b/java/src/com/android/intentresolver/ChooserActivity.java index d81adfba..d4cf82ff 100644 --- a/java/src/com/android/intentresolver/ChooserActivity.java +++ b/java/src/com/android/intentresolver/ChooserActivity.java @@ -23,7 +23,7 @@ import static android.view.WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTE import static androidx.lifecycle.LifecycleKt.getCoroutineScope; import static com.android.intentresolver.ChooserActionFactory.EDIT_SOURCE; -import static com.android.intentresolver.Flags.fixShortcutsFlashing; +import static com.android.intentresolver.Flags.fixShortcutsFlashingFixed; import static com.android.intentresolver.Flags.interactiveSession; import static com.android.intentresolver.Flags.keyboardNavigationFix; import static com.android.intentresolver.Flags.rebuildAdaptersOnTargetPinning; @@ -871,7 +871,7 @@ public class ChooserActivity extends Hilt_ChooserActivity implements postRebuildList( mChooserMultiProfilePagerAdapter.rebuildTabs( mProfiles.getWorkProfilePresent() || mProfiles.getPrivateProfilePresent())); - if (fixShortcutsFlashing() && oldPagerAdapter != null) { + if (fixShortcutsFlashingFixed() && oldPagerAdapter != null) { for (int i = 0, count = mChooserMultiProfilePagerAdapter.getCount(); i < count; i++) { ChooserListAdapter listAdapter = mChooserMultiProfilePagerAdapter.getPageAdapterForIndex(i) @@ -2497,7 +2497,7 @@ public class ChooserActivity extends Hilt_ChooserActivity implements if (duration >= 0) { Log.d(TAG, "app target loading time " + duration + " ms"); } - if (!fixShortcutsFlashing()) { + if (!fixShortcutsFlashingFixed()) { addCallerChooserTargets(chooserListAdapter); } getEventLog().logSharesheetAppLoadComplete(); @@ -2529,8 +2529,9 @@ public class ChooserActivity extends Hilt_ChooserActivity implements ChooserListAdapter adapter = mChooserMultiProfilePagerAdapter.getListAdapterForUserHandle(userHandle); if (adapter != null) { - if (fixShortcutsFlashing()) { + if (fixShortcutsFlashingFixed()) { adapter.setDirectTargetsEnabled(true); + adapter.resetDirectTargets(); addCallerChooserTargets(adapter); } for (ShortcutLoader.ShortcutResultInfo resultInfo : result.getShortcutsByApp()) { diff --git a/java/src/com/android/intentresolver/ChooserListAdapter.java b/java/src/com/android/intentresolver/ChooserListAdapter.java index 563d7d1a..d743f859 100644 --- a/java/src/com/android/intentresolver/ChooserListAdapter.java +++ b/java/src/com/android/intentresolver/ChooserListAdapter.java @@ -811,6 +811,13 @@ public class ChooserListAdapter extends ResolverListAdapter { mServiceTargets.addAll(adapter.mServiceTargets); } + /** + * Reset direct targets + */ + public void resetDirectTargets() { + createPlaceHolders(); + } + private boolean isDirectTargetRowEmptyState() { return (mServiceTargets.size() == 1) && mServiceTargets.get(0).isEmptyTargetInfo(); } diff --git a/java/src/com/android/intentresolver/shortcuts/ShortcutLoader.kt b/java/src/com/android/intentresolver/shortcuts/ShortcutLoader.kt index 41f838ee..aa1f385f 100644 --- a/java/src/com/android/intentresolver/shortcuts/ShortcutLoader.kt +++ b/java/src/com/android/intentresolver/shortcuts/ShortcutLoader.kt @@ -35,7 +35,7 @@ import androidx.annotation.MainThread import androidx.annotation.OpenForTesting import androidx.annotation.VisibleForTesting import androidx.annotation.WorkerThread -import com.android.intentresolver.Flags.fixShortcutsFlashing +import com.android.intentresolver.Flags.fixShortcutsFlashingFixed import com.android.intentresolver.chooser.DisplayResolveInfo import com.android.intentresolver.measurements.Tracer import com.android.intentresolver.measurements.runTracing @@ -189,7 +189,7 @@ constructor( Log.d(TAG, "[$id] query AppPredictor for user $userHandle") val watchdogJob = - if (fixShortcutsFlashing()) { + if (fixShortcutsFlashingFixed()) { scope .launch(start = CoroutineStart.LAZY) { delay(APP_PREDICTOR_RESPONSE_TIMEOUT_MS) |