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

Commit 1f58cce5 authored by Wenyi Wang's avatar Wenyi Wang Committed by android-build-merger
Browse files

Merge "Fix keyboard navigation in drawer" into ub-contactsdialer-i-dev

am: 3f9e1873

Change-Id: I8d42cd17febf7c71b10cad7d63739b43a3ec4867
parents 7e233e06 3f9e1873
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -19,6 +19,7 @@
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_width="match_parent"
    android:layout_height="16dp"
    android:layout_height="16dp"
    android:background="@color/navigation_drawer_background_color"
    android:importantForAccessibility="no">
    android:importantForAccessibility="no">


    <View
    <View
+1 −1
Original line number Original line Diff line number Diff line
@@ -19,5 +19,5 @@
      android:id="@+id/nav_drawer_spacer"
      android:id="@+id/nav_drawer_spacer"
      android:layout_width="match_parent"
      android:layout_width="match_parent"
      android:layout_height="@dimen/nav_drawer_spacer_height"
      android:layout_height="@dimen/nav_drawer_spacer_height"
      android:background="@drawable/drawer_item_background"
      android:background="@color/navigation_drawer_background_color"
      android:importantForAccessibility="no"/>
      android:importantForAccessibility="no"/>
 No newline at end of file
+1 −0
Original line number Original line Diff line number Diff line
@@ -276,6 +276,7 @@ public class PeopleActivity extends AppCompatContactsActivity implements
                SharedPreferenceUtil.setHamburgerMenuClickedBefore(PeopleActivity.this);
                SharedPreferenceUtil.setHamburgerMenuClickedBefore(PeopleActivity.this);
                mMenuClickedBefore = true;
                mMenuClickedBefore = true;
            }
            }
            drawerView.requestFocus();
            invalidateOptionsMenu();
            invalidateOptionsMenu();
            // Stop search and selection mode like Gmail and Keep. Otherwise, if user switches to
            // Stop search and selection mode like Gmail and Keep. Otherwise, if user switches to
            // another fragment in navigation drawer, the current search/selection mode will be
            // another fragment in navigation drawer, the current search/selection mode will be
+0 −10
Original line number Original line Diff line number Diff line
@@ -21,7 +21,6 @@ import android.graphics.PorterDuff;
import android.support.annotation.LayoutRes;
import android.support.annotation.LayoutRes;
import android.view.LayoutInflater;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.ImageView;
@@ -88,7 +87,6 @@ public class DrawerAdapter extends BaseAdapter {
    private List<BaseDrawerItem> mMiscItems = new ArrayList<>();
    private List<BaseDrawerItem> mMiscItems = new ArrayList<>();


    private List<BaseDrawerItem> mItemsList = new ArrayList<>();
    private List<BaseDrawerItem> mItemsList = new ArrayList<>();
    private OnClickListener mListener;
    private AccountDisplayInfoFactory mAccountDisplayFactory;
    private AccountDisplayInfoFactory mAccountDisplayFactory;


    public DrawerAdapter(Activity activity) {
    public DrawerAdapter(Activity activity) {
@@ -145,10 +143,6 @@ public class DrawerAdapter extends BaseAdapter {
        mItemsList.add(mNavSpacerItem);
        mItemsList.add(mNavSpacerItem);
    }
    }


    public void setItemOnClickListener(OnClickListener listener) {
        mListener = listener;
    }

    public void setGroups(List<GroupListItem> groupListItems, boolean areGroupWritable) {
    public void setGroups(List<GroupListItem> groupListItems, boolean areGroupWritable) {
        final ArrayList<GroupEntryItem> groupEntries = new ArrayList<GroupEntryItem>();
        final ArrayList<GroupEntryItem> groupEntries = new ArrayList<GroupEntryItem>();
        for (GroupListItem group : groupListItems) {
        for (GroupListItem group : groupListItems) {
@@ -228,7 +222,6 @@ public class DrawerAdapter extends BaseAdapter {
    private View getPrimaryItemView(PrimaryItem item, View result, ViewGroup parent) {
    private View getPrimaryItemView(PrimaryItem item, View result, ViewGroup parent) {
        if (result == null) {
        if (result == null) {
            result = mInflater.inflate(R.layout.drawer_primary_item, parent, false);
            result = mInflater.inflate(R.layout.drawer_primary_item, parent, false);
            result.setOnClickListener(mListener);
        }
        }
        final TextView titleView = (TextView) result.findViewById(R.id.title);
        final TextView titleView = (TextView) result.findViewById(R.id.title);
        titleView.setText(item.text);
        titleView.setText(item.text);
@@ -258,7 +251,6 @@ public class DrawerAdapter extends BaseAdapter {
        if (result == null || !(result.getTag() instanceof GroupEntryItem)) {
        if (result == null || !(result.getTag() instanceof GroupEntryItem)) {
            result = mInflater.inflate(R.layout.drawer_item, parent, false);
            result = mInflater.inflate(R.layout.drawer_item, parent, false);
            result.setId(item.id);
            result.setId(item.id);
            result.setOnClickListener(mListener);
        }
        }


        final GroupListItem groupListItem = item.group;
        final GroupListItem groupListItem = item.group;
@@ -281,7 +273,6 @@ public class DrawerAdapter extends BaseAdapter {
        if (result == null || !(result.getTag() instanceof ContactListFilter)) {
        if (result == null || !(result.getTag() instanceof ContactListFilter)) {
            result = mInflater.inflate(R.layout.drawer_item, parent, false);
            result = mInflater.inflate(R.layout.drawer_item, parent, false);
            result.setId(item.id);
            result.setId(item.id);
            result.setOnClickListener(mListener);
        }
        }
        final ContactListFilter account = item.account;
        final ContactListFilter account = item.account;
        final TextView textView = ((TextView) result.findViewById(R.id.title));
        final TextView textView = ((TextView) result.findViewById(R.id.title));
@@ -307,7 +298,6 @@ public class DrawerAdapter extends BaseAdapter {
    private View getDrawerItemView(BaseDrawerItem item, View result, ViewGroup parent) {
    private View getDrawerItemView(BaseDrawerItem item, View result, ViewGroup parent) {
        if (result == null) {
        if (result == null) {
            result = mInflater.inflate(R.layout.drawer_item, parent, false);
            result = mInflater.inflate(R.layout.drawer_item, parent, false);
            result.setOnClickListener(mListener);
        }
        }


        final TextView textView = (TextView) result.findViewById(R.id.title);
        final TextView textView = (TextView) result.findViewById(R.id.title);
+7 −5
Original line number Original line Diff line number Diff line
@@ -31,6 +31,8 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewGroup;
import android.view.WindowInsets;
import android.view.WindowInsets;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.FrameLayout;
import android.widget.FrameLayout;
import android.widget.ListView;
import android.widget.ListView;


@@ -154,9 +156,9 @@ public class DrawerFragment extends Fragment implements AccountsListener {
        mDrawerListView = (ListView) contentView.findViewById(R.id.list);
        mDrawerListView = (ListView) contentView.findViewById(R.id.list);
        mDrawerAdapter = new DrawerAdapter(getActivity());
        mDrawerAdapter = new DrawerAdapter(getActivity());
        mDrawerAdapter.setSelectedContactsView(mCurrentContactsView);
        mDrawerAdapter.setSelectedContactsView(mCurrentContactsView);
        mDrawerAdapter.setItemOnClickListener(mOnDrawerItemClickListener);
        loadGroupsAndFilters();
        loadGroupsAndFilters();
        mDrawerListView.setAdapter(mDrawerAdapter);
        mDrawerListView.setAdapter(mDrawerAdapter);
        mDrawerListView.setOnItemClickListener(mOnDrawerItemClickListener);


        if (savedInstanceState != null) {
        if (savedInstanceState != null) {
            final ContactsView contactsView =
            final ContactsView contactsView =
@@ -221,13 +223,12 @@ public class DrawerFragment extends Fragment implements AccountsListener {
        mListener = null;
        mListener = null;
    }
    }


    private final View.OnClickListener mOnDrawerItemClickListener = new View.OnClickListener() {
    private final OnItemClickListener mOnDrawerItemClickListener = new OnItemClickListener() {
        @Override
        @Override
        public void onClick(View v) {
        public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
            if (mListener == null) {
            if (mListener == null) {
                return;
                return;
            }
            }
            mListener.onDrawerItemClicked();
            final int viewId = v.getId();
            final int viewId = v.getId();
            if (viewId == R.id.nav_all_contacts) {
            if (viewId == R.id.nav_all_contacts) {
                mListener.onContactsViewSelected(ContactsView.ALL_CONTACTS);
                mListener.onContactsViewSelected(ContactsView.ALL_CONTACTS);
@@ -252,8 +253,9 @@ public class DrawerFragment extends Fragment implements AccountsListener {
            } else if (viewId == R.id.nav_help) {
            } else if (viewId == R.id.nav_help) {
                mListener.onLaunchHelpFeedback();
                mListener.onLaunchHelpFeedback();
            } else {
            } else {
                throw new IllegalStateException("Unknown view");
                return;
            }
            }
            mListener.onDrawerItemClicked();
        }
        }
    };
    };