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

Commit d9c6188c authored by Walter Jang's avatar Walter Jang Committed by Android (Google) Code Review
Browse files

Merge "Fix logging successful search events" into ub-contactsdialer-i-dev

parents 917cb4aa 4b0c1c15
Loading
Loading
Loading
Loading
+30 −2
Original line number Diff line number Diff line
@@ -94,6 +94,7 @@ public class DefaultContactBrowseListFragment extends ContactBrowseListFragment
    private static final String TAG = "DefaultListFragment";
    private static final String ENABLE_DEBUG_OPTIONS_HIDDEN_CODE = "debug debug!";
    private static final String KEY_DELETION_IN_PROGRESS = "deletionInProgress";
    private static final String KEY_SEARCH_RESULT_CLICKED = "search_result_clicked";

    private static final int ACTIVITY_REQUEST_CODE_SHARE = 0;

@@ -149,6 +150,8 @@ public class DefaultContactBrowseListFragment extends ContactBrowseListFragment
     */
    private boolean mDisableOptionItemSelected;

    private boolean mSearchResultClicked;

    private ActionBarAdapter mActionBarAdapter;
    private PeopleActivity mActivity;
    private ContactsRequest mContactsRequest;
@@ -250,6 +253,22 @@ public class DefaultContactBrowseListFragment extends ContactBrowseListFragment
        setHasOptionsMenu(true);
    }

    /**
     * Whether a search result was clicked by the user. Tracked so that we can distinguish
     * between exiting the search mode after a result was clicked from exiting w/o clicking
     * any search result.
     */
    public boolean wasSearchResultClicked() {
        return mSearchResultClicked;
    }

    /**
     * Resets whether a search result was clicked by the user to false.
     */
    public void resetSearchResultClicked() {
        mSearchResultClicked = false;
    }

    @Override
    public CursorLoader createCursorLoader(Context context) {
        return new FavoritesAndContactsLoader(context);
@@ -371,6 +390,11 @@ public class DefaultContactBrowseListFragment extends ContactBrowseListFragment
        if (getAdapter().isDisplayingCheckBoxes()) {
            super.onItemClick(position, id);
            return;
        } else {
            if (isSearchMode()) {
                mSearchResultClicked = true;
                Logger.logSearchEvent(createSearchStateForSearchResultClick(position));
            }
        }
        viewContact(position, uri, getAdapter().isEnterpriseContact(position));
    }
@@ -648,9 +672,12 @@ public class DefaultContactBrowseListFragment extends ContactBrowseListFragment

        setCheckBoxListListener(new CheckBoxListListener());
        setOnContactListActionListener(new ContactBrowserActionListener());
        if (savedInstanceState != null && savedInstanceState.getBoolean(KEY_DELETION_IN_PROGRESS)) {
        if (savedInstanceState != null) {
            if (savedInstanceState.getBoolean(KEY_DELETION_IN_PROGRESS)) {
                deleteSelectedContacts();
            }
            mSearchResultClicked = savedInstanceState.getBoolean(KEY_SEARCH_RESULT_CLICKED);
        }

        setDirectorySearchMode();
        mCanSetActionBar = true;
@@ -1183,6 +1210,7 @@ public class DefaultContactBrowseListFragment extends ContactBrowseListFragment
        }
        mDisableOptionItemSelected = true;
        outState.putBoolean(KEY_DELETION_IN_PROGRESS, mIsDeletionInProgress);
        outState.putBoolean(KEY_SEARCH_RESULT_CLICKED, mSearchResultClicked);
    }

    @Override
+0 −26
Original line number Diff line number Diff line
@@ -68,31 +68,12 @@ public abstract class MultiSelectContactsListFragment<T extends MultiSelectEntry

    private static final String EXTRA_KEY_SELECTED_CONTACTS = "selected_contacts";

    private static final String KEY_SEARCH_RESULT_CLICKED = "search_result_clicked";

    private OnCheckBoxListActionListener mCheckBoxListListener;
    private boolean mSearchResultClicked;

    public void setCheckBoxListListener(OnCheckBoxListActionListener checkBoxListListener) {
        mCheckBoxListListener = checkBoxListListener;
    }

    /**
     * Whether a search result was clicked by the user. Tracked so that we can distinguish
     * between exiting the search mode after a result was clicked from exiting w/o clicking
     * any search result.
     */
    public boolean wasSearchResultClicked() {
        return mSearchResultClicked;
    }

    /**
     * Resets whether a search result was clicked by the user to false.
     */
    public void resetSearchResultClicked() {
        mSearchResultClicked = false;
    }

    public void setAnimateOnLoad(boolean shouldAnimate) {
        mAnimateOnLoad = shouldAnimate;
    }
@@ -119,7 +100,6 @@ public abstract class MultiSelectContactsListFragment<T extends MultiSelectEntry
            final TreeSet<Long> selectedContactIds = (TreeSet<Long>)
                    savedInstanceState.getSerializable(EXTRA_KEY_SELECTED_CONTACTS);
            getAdapter().setSelectedContactIds(selectedContactIds);
            mSearchResultClicked = savedInstanceState.getBoolean(KEY_SEARCH_RESULT_CLICKED);
        }
    }

@@ -149,7 +129,6 @@ public abstract class MultiSelectContactsListFragment<T extends MultiSelectEntry
    public void onSaveInstanceState(Bundle outState) {
        super.onSaveInstanceState(outState);
        outState.putSerializable(EXTRA_KEY_SELECTED_CONTACTS, getSelectedContactIds());
        outState.putBoolean(KEY_SEARCH_RESULT_CLICKED, mSearchResultClicked);
    }

    public void displayCheckBoxes(boolean displayCheckBoxes) {
@@ -204,11 +183,6 @@ public abstract class MultiSelectContactsListFragment<T extends MultiSelectEntry
        }
        if (getAdapter().isDisplayingCheckBoxes()) {
            getAdapter().toggleSelectionOfContactId(contactId);
        } else {
            if (isSearchMode()) {
                mSearchResultClicked = true;
                Logger.logSearchEvent(createSearchStateForSearchResultClick(position));
            }
        }
        if (mCheckBoxListListener != null && getAdapter().getSelectedContactIds().size() == 0) {
            mCheckBoxListListener.onStopDisplayingCheckBoxes();