diff --git a/src/com/android/settings/search/SearchFeatureProvider.java b/src/com/android/settings/search/SearchFeatureProvider.java index b14a4d7fbf5..cd096ec6e16 100644 --- a/src/com/android/settings/search/SearchFeatureProvider.java +++ b/src/com/android/settings/search/SearchFeatureProvider.java @@ -126,16 +126,24 @@ public interface SearchFeatureProvider { true /* finishSecondaryWithPrimary */, false /* clearTop */); - toolbar.setOnClickListener(tb -> { - FeatureFactory.getFactory(context).getSlicesFeatureProvider() - .indexSliceDataAsync(context); + toolbar.setOnClickListener(tb -> startSearchActivity(context, activity, pageId, intent)); - FeatureFactory.getFactory(context).getMetricsFeatureProvider() - .logSettingsTileClick(KEY_HOMEPAGE_SEARCH_BAR, pageId); + toolbar.setHandwritingDelegatorCallback( + () -> startSearchActivity(context, activity, pageId, intent)); + toolbar.setAllowedHandwritingDelegatePackage(intent.getPackage()); + } - final Bundle bundle = ActivityOptions.makeSceneTransitionAnimation(activity).toBundle(); - activity.startActivity(intent, bundle); - }); + /** Start the search activity. */ + private static void startSearchActivity( + Context context, FragmentActivity activity, int pageId, Intent intent) { + FeatureFactory.getFactory(context).getSlicesFeatureProvider() + .indexSliceDataAsync(context); + + FeatureFactory.getFactory(context).getMetricsFeatureProvider() + .logSettingsTileClick(KEY_HOMEPAGE_SEARCH_BAR, pageId); + + final Bundle bundle = ActivityOptions.makeSceneTransitionAnimation(activity).toBundle(); + activity.startActivity(intent, bundle); } Intent buildSearchIntent(Context context, int pageId);