Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a0d299f5 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Clear focus from search bar whenever a header is clicked in search adapter." into sc-dev

parents a4cb0f02 2cff164b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -82,7 +82,7 @@ public final class WidgetsListAdapterTest {
        mTestProfile.numColumns = 5;
        mUserHandle = Process.myUserHandle();
        mAdapter = new WidgetsListAdapter(mContext, mMockLayoutInflater, mMockWidgetCache,
                mIconCache, null, null);
                mIconCache, null, null, null);
        mAdapter.registerAdapterDataObserver(mListener);

        doAnswer(invocation -> ((ComponentWithLabel) invocation.getArgument(0))
+2 −1
Original line number Diff line number Diff line
@@ -105,7 +105,8 @@ public final class WidgetsListHeaderViewHolderBinderTest {
                mWidgetPreviewLoader,
                mIconCache,
                /* iconClickListener= */ view -> {},
                /* iconLongClickListener= */ view -> false);
                /* iconLongClickListener= */ view -> false,
                /* searchBarUIHelper= */ null);
        mViewHolderBinder = new WidgetsListHeaderViewHolderBinder(
                LayoutInflater.from(mTestActivity), mOnHeaderClickListener, widgetsListAdapter);
    }
+2 −1
Original line number Diff line number Diff line
@@ -105,7 +105,8 @@ public final class WidgetsListSearchHeaderViewHolderBinderTest {
                mWidgetPreviewLoader,
                mIconCache,
                /* iconClickListener= */ view -> {},
                /* iconLongClickListener= */ view -> false);
                /* iconLongClickListener= */ view -> false,
                /* searchBarUIHelper= */ null);
        mViewHolderBinder = new WidgetsListSearchHeaderViewHolderBinder(
                LayoutInflater.from(mTestActivity), mOnHeaderClickListener, widgetsListAdapter);
    }
+2 −1
Original line number Diff line number Diff line
@@ -111,7 +111,8 @@ public final class WidgetsListTableViewHolderBinderTest {
                mWidgetPreviewLoader,
                mIconCache,
                /* iconClickListener= */ view -> {},
                /* iconLongClickListener= */ view -> false);
                /* iconLongClickListener= */ view -> false,
                /* searchBarUIHelper= */ null);
        mViewHolderBinder = new WidgetsListTableViewHolderBinder(
                mContext,
                LayoutInflater.from(mTestActivity),
+11 −2
Original line number Diff line number Diff line
@@ -58,6 +58,7 @@ import com.android.launcher3.widget.LauncherAppWidgetHost.ProviderChangedListene
import com.android.launcher3.widget.model.WidgetsListBaseEntry;
import com.android.launcher3.widget.picker.search.SearchModeListener;
import com.android.launcher3.widget.picker.search.WidgetsSearchBar;
import com.android.launcher3.widget.picker.search.WidgetsSearchBarUIHelper;
import com.android.launcher3.widget.util.WidgetsTableUtils;
import com.android.launcher3.workprofile.PersonalWorkPagedView;
import com.android.launcher3.workprofile.PersonalWorkSlidingTabStrip.OnActivePageChangedListener;
@@ -71,7 +72,8 @@ import java.util.function.Predicate;
 */
public class WidgetsFullSheet extends BaseWidgetSheet
        implements Insettable, ProviderChangedListener, OnActivePageChangedListener,
        WidgetsRecyclerView.HeaderViewDimensionsProvider, SearchModeListener {
        WidgetsRecyclerView.HeaderViewDimensionsProvider, SearchModeListener,
        WidgetsSearchBarUIHelper {
    private static final String TAG = WidgetsFullSheet.class.getSimpleName();

    private static final long DEFAULT_OPEN_DURATION = 267;
@@ -561,6 +563,11 @@ public class WidgetsFullSheet extends BaseWidgetSheet
        getWindowInsetsController().hide(WindowInsets.Type.ime());
    }

    @Override
    public void clearSearchBarFocus() {
        mSearchAndRecommendationViewHolder.mSearchBar.clearSearchBarFocus();
    }

    /** A holder class for holding adapters & their corresponding recycler view. */
    private final class AdapterHolder {
        static final int PRIMARY = 0;
@@ -583,7 +590,9 @@ public class WidgetsFullSheet extends BaseWidgetSheet
                    apps.getWidgetCache(),
                    apps.getIconCache(),
                    /* iconClickListener= */ WidgetsFullSheet.this,
                    /* iconLongClickListener= */ WidgetsFullSheet.this);
                    /* iconLongClickListener= */ WidgetsFullSheet.this,
                    /* WidgetsSearchBarUIHelper= */
                    mAdapterType == SEARCH ? WidgetsFullSheet.this : null);
            mWidgetsListAdapter.setHasStableIds(true);
            switch (mAdapterType) {
                case PRIMARY:
Loading