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

Commit ec807e1c authored by Walter Jang's avatar Walter Jang
Browse files

Only show add contact to label button in edit mode

* Also disable long press to remove members in edit mode.
* And change the group member picker title to be "Select"

Bug 28707265
Bug 18641067

Change-Id: I0e5f31b675c143ca32165d5bf13dba3e2f5214d3
parent 5eb7c3ff
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -59,6 +59,9 @@
    <!-- Activity title when the user is selecting a contact.  [CHAR LIMIT=128] -->
    <string name="contactPickerActivityTitle">Choose a contact</string>

    <!-- Activity title when the user is selecting a new label member. [CHAR LIMIT=128] -->
    <string name="groupMemberPickerActivityTitle">Select</string>

    <!-- Entry that prompts user to select a newly created contact.  [CHAR LIMIT=30] -->
    <string name="header_entry_contact_list_adapter_header_title">Create new contact</string>

+1 −1
Original line number Diff line number Diff line
@@ -242,7 +242,7 @@ public class ContactSelectionActivity extends AppCompatContactsActivity implemen
                break;
            }
            case ContactsRequest.ACTION_PICK_GROUP_MEMBERS: {
                titleResId = R.string.contactPickerActivityTitle;
                titleResId = R.string.groupMemberPickerActivityTitle;
                break;
            }
        }
+6 −2
Original line number Diff line number Diff line
@@ -381,6 +381,10 @@ public class GroupMembersActivity extends ContactsDrawerActivity implements
        finish();
    }

    public boolean isEditMode() {
        return mIsEditMode;
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        if (mGroupMetadata == null) {
@@ -398,7 +402,7 @@ public class GroupMembersActivity extends ContactsDrawerActivity implements
        final boolean isGroupEditable = mGroupMetadata != null && mGroupMetadata.editable;
        final boolean isGroupReadOnly = mGroupMetadata != null && mGroupMetadata.readOnly;

        setVisible(menu, R.id.menu_add, isGroupEditable && !isSelectionMode);
        setVisible(menu, R.id.menu_add, isGroupEditable && mIsEditMode);
        setVisible(menu, R.id.menu_rename_group, !isGroupReadOnly && !isSelectionMode);
        setVisible(menu, R.id.menu_delete_group, !isGroupReadOnly && !isSelectionMode);
        setVisible(menu, R.id.menu_edit_group, isGroupEditable && !mIsEditMode && !isSelectionMode);
@@ -666,7 +670,7 @@ public class GroupMembersActivity extends ContactsDrawerActivity implements
        }
    }

    // GroupsMembersListFragment callbacks
    // GroupMembersFragment callbacks

    @Override
    public void onGroupMetadataLoaded(GroupMetadata groupMetadata) {
+13 −0
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@
 */
package com.android.contacts.group;

import android.app.Activity;
import android.app.LoaderManager.LoaderCallbacks;
import android.content.CursorLoader;
import android.content.Loader;
@@ -31,6 +32,7 @@ import android.widget.TextView;

import com.android.contacts.GroupMetaDataLoader;
import com.android.contacts.R;
import com.android.contacts.activities.GroupMembersActivity;
import com.android.contacts.common.list.ContactsSectionIndexer;
import com.android.contacts.common.logging.ListEvent.ListType;
import com.android.contacts.common.model.AccountTypeManager;
@@ -363,4 +365,15 @@ public class GroupMembersFragment extends MultiSelectContactsListFragment<GroupM
            }
        }
    }

    @Override
    protected boolean onItemLongClick(int position, long id) {
        final Activity activity = getActivity();
        if (activity != null && activity instanceof GroupMembersActivity) {
            if (((GroupMembersActivity) activity).isEditMode()) {
                return true;
            }
        }
        return super.onItemLongClick(position, id);
    }
}