Skip to content
Snippets Groups Projects
Commit 09e2a15a authored by akwizgran's avatar akwizgran
Browse files

Merge branch '951-remove-visibility-indicators' into 'master'

Remove visibility indicators from private group join messages

Closes #951

See merge request !546
parents 83031754 ab387860
No related branches found
No related tags found
No related merge requests found
package org.briarproject.briar.android.privategroup.conversation; package org.briarproject.briar.android.privategroup.conversation;
import android.content.Context; import android.content.Context;
import android.content.Intent;
import android.support.annotation.UiThread; import android.support.annotation.UiThread;
import android.view.View; import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
import org.briarproject.briar.R; import org.briarproject.briar.R;
import org.briarproject.briar.android.privategroup.reveal.RevealContactsActivity;
import org.briarproject.briar.android.threaded.BaseThreadItemViewHolder; import org.briarproject.briar.android.threaded.BaseThreadItemViewHolder;
import org.briarproject.briar.android.threaded.ThreadItemAdapter.ThreadItemListener; import org.briarproject.briar.android.threaded.ThreadItemAdapter.ThreadItemListener;
import static org.briarproject.bramble.api.identity.Author.Status.OURSELVES; import static org.briarproject.bramble.api.identity.Author.Status.OURSELVES;
import static org.briarproject.bramble.api.identity.Author.Status.UNKNOWN;
import static org.briarproject.briar.android.activity.BriarActivity.GROUP_ID;
import static org.briarproject.briar.android.privategroup.VisibilityHelper.getVisibilityIcon;
import static org.briarproject.briar.android.privategroup.VisibilityHelper.getVisibilityString;
import static org.briarproject.briar.api.privategroup.Visibility.INVISIBLE;
@UiThread @UiThread
@NotNullByDefault @NotNullByDefault
...@@ -27,16 +17,10 @@ class JoinMessageItemViewHolder ...@@ -27,16 +17,10 @@ class JoinMessageItemViewHolder
extends BaseThreadItemViewHolder<GroupMessageItem> { extends BaseThreadItemViewHolder<GroupMessageItem> {
private final boolean isCreator; private final boolean isCreator;
private final ImageView icon;
private final TextView info;
private final Button options;
JoinMessageItemViewHolder(View v, boolean isCreator) { JoinMessageItemViewHolder(View v, boolean isCreator) {
super(v); super(v);
this.isCreator = isCreator; this.isCreator = isCreator;
icon = (ImageView) v.findViewById(R.id.icon);
info = (TextView) v.findViewById(R.id.info);
options = (Button) v.findViewById(R.id.optionsButton);
} }
@Override @Override
...@@ -56,9 +40,6 @@ class JoinMessageItemViewHolder ...@@ -56,9 +40,6 @@ class JoinMessageItemViewHolder
getContext().getString(R.string.groups_member_joined, getContext().getString(R.string.groups_member_joined,
item.getAuthor().getName())); item.getAuthor().getName()));
} }
icon.setVisibility(View.GONE);
info.setVisibility(View.GONE);
options.setVisibility(View.GONE);
} }
private void bind(final JoinMessageItem item) { private void bind(final JoinMessageItem item) {
...@@ -75,32 +56,6 @@ class JoinMessageItemViewHolder ...@@ -75,32 +56,6 @@ class JoinMessageItemViewHolder
item.getAuthor().getName())); item.getAuthor().getName()));
} }
} }
if (item.getStatus() == OURSELVES || item.getStatus() == UNKNOWN) {
icon.setVisibility(View.GONE);
info.setVisibility(View.GONE);
options.setVisibility(View.GONE);
} else {
icon.setVisibility(View.VISIBLE);
icon.setImageResource(getVisibilityIcon(item.getVisibility()));
info.setVisibility(View.VISIBLE);
info.setText(getVisibilityString(getContext(), item.getVisibility(),
item.getAuthor().getName()));
if (item.getVisibility() == INVISIBLE) {
options.setVisibility(View.VISIBLE);
options.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i =
new Intent(ctx, RevealContactsActivity.class);
i.putExtra(GROUP_ID, item.getGroupId().getBytes());
ctx.startActivity(i);
}
});
} else {
options.setVisibility(View.GONE);
}
}
} }
} }
...@@ -36,7 +36,6 @@ class MemberListAdapter extends ...@@ -36,7 +36,6 @@ class MemberListAdapter extends
@Override @Override
public boolean areContentsTheSame(MemberListItem m1, MemberListItem m2) { public boolean areContentsTheSame(MemberListItem m1, MemberListItem m2) {
if (m1.isOnline() != m2.isOnline()) return false; if (m1.isOnline() != m2.isOnline()) return false;
if (m1.getVisibility() != m2.getVisibility()) return false;
if (m1.getContactId() != m2.getContactId()) return false; if (m1.getContactId() != m2.getContactId()) return false;
if (m1.getStatus() != m2.getStatus()) return false; if (m1.getStatus() != m2.getStatus()) return false;
return true; return true;
......
...@@ -5,7 +5,6 @@ import org.briarproject.bramble.api.identity.Author; ...@@ -5,7 +5,6 @@ import org.briarproject.bramble.api.identity.Author;
import org.briarproject.bramble.api.identity.Author.Status; import org.briarproject.bramble.api.identity.Author.Status;
import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
import org.briarproject.briar.api.privategroup.GroupMember; import org.briarproject.briar.api.privategroup.GroupMember;
import org.briarproject.briar.api.privategroup.Visibility;
import javax.annotation.Nullable; import javax.annotation.Nullable;
import javax.annotation.concurrent.NotThreadSafe; import javax.annotation.concurrent.NotThreadSafe;
...@@ -39,10 +38,6 @@ class MemberListItem { ...@@ -39,10 +38,6 @@ class MemberListItem {
return groupMember.getContactId(); return groupMember.getContactId();
} }
Visibility getVisibility() {
return groupMember.getVisibility();
}
boolean isOnline() { boolean isOnline() {
return online; return online;
} }
......
...@@ -11,9 +11,6 @@ import org.briarproject.briar.R; ...@@ -11,9 +11,6 @@ import org.briarproject.briar.R;
import org.briarproject.briar.android.view.AuthorView; import org.briarproject.briar.android.view.AuthorView;
import static org.briarproject.bramble.api.identity.Author.Status.OURSELVES; import static org.briarproject.bramble.api.identity.Author.Status.OURSELVES;
import static org.briarproject.bramble.api.identity.Author.Status.UNKNOWN;
import static org.briarproject.briar.android.privategroup.VisibilityHelper.getVisibilityIcon;
import static org.briarproject.briar.android.privategroup.VisibilityHelper.getVisibilityString;
@UiThread @UiThread
@NotNullByDefault @NotNullByDefault
...@@ -22,16 +19,12 @@ class MemberListItemHolder extends RecyclerView.ViewHolder { ...@@ -22,16 +19,12 @@ class MemberListItemHolder extends RecyclerView.ViewHolder {
private final AuthorView author; private final AuthorView author;
private final ImageView bulb; private final ImageView bulb;
private final TextView creator; private final TextView creator;
private final ImageView icon;
private final TextView info;
MemberListItemHolder(View v) { MemberListItemHolder(View v) {
super(v); super(v);
author = (AuthorView) v.findViewById(R.id.authorView); author = (AuthorView) v.findViewById(R.id.authorView);
bulb = (ImageView) v.findViewById(R.id.bulbView); bulb = (ImageView) v.findViewById(R.id.bulbView);
creator = (TextView) v.findViewById(R.id.creatorView); creator = (TextView) v.findViewById(R.id.creatorView);
icon = (ImageView) v.findViewById(R.id.icon);
info = (TextView) v.findViewById(R.id.info);
} }
protected void bind(MemberListItem item) { protected void bind(MemberListItem item) {
...@@ -64,19 +57,6 @@ class MemberListItemHolder extends RecyclerView.ViewHolder { ...@@ -64,19 +57,6 @@ class MemberListItemHolder extends RecyclerView.ViewHolder {
} else { } else {
creator.setVisibility(View.GONE); creator.setVisibility(View.GONE);
} }
// visibility information
if (item.getStatus() == OURSELVES || item.getStatus() == UNKNOWN) {
icon.setVisibility(View.GONE);
info.setVisibility(View.GONE);
} else {
icon.setVisibility(View.VISIBLE);
icon.setImageResource(getVisibilityIcon(item.getVisibility()));
info.setVisibility(View.VISIBLE);
info.setText(
getVisibilityString(info.getContext(), item.getVisibility(),
item.getMember().getName()));
}
} }
} }
...@@ -19,57 +19,15 @@ ...@@ -19,57 +19,15 @@
android:textStyle="italic" android:textStyle="italic"
tools:text="@string/groups_member_joined"/> tools:text="@string/groups_member_joined"/>
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/info"
android:layout_alignLeft="@+id/text"
android:layout_alignTop="@+id/info"
android:layout_below="@+id/text"
android:layout_marginRight="@dimen/margin_medium"
android:scaleType="center"
tools:ignore="ContentDescription"
tools:src="@drawable/ic_visibility"/>
<TextView
android:id="@+id/info"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignEnd="@+id/text"
android:layout_alignRight="@+id/text"
android:layout_below="@+id/text"
android:layout_marginBottom="@dimen/margin_medium"
android:layout_toRightOf="@+id/icon"
android:gravity="center_vertical"
android:minHeight="24dp"
android:textColor="@color/briar_text_secondary"
android:textIsSelectable="true"
android:textSize="@dimen/text_size_tiny"
android:textStyle="italic"
tools:text="@string/groups_reveal_visible_revealed_by_contact"/>
<org.briarproject.briar.android.view.AuthorView <org.briarproject.briar.android.view.AuthorView
android:id="@+id/author" android:id="@+id/author"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_alignLeft="@+id/text" android:layout_alignLeft="@+id/text"
android:layout_below="@+id/info" android:layout_alignStart="@+id/text"
android:layout_toLeftOf="@+id/optionsButton" android:layout_below="@+id/text"
app:persona="commenter"/> app:persona="commenter"/>
<Button
android:id="@+id/optionsButton"
style="@style/BriarButtonFlat.Positive.Tiny"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/author"
android:layout_alignEnd="@+id/text"
android:layout_alignRight="@+id/text"
android:layout_below="@+id/info"
android:gravity="right|center_vertical"
android:text="@string/options"/>
<View <View
style="@style/Divider.ThreadItem" style="@style/Divider.ThreadItem"
android:layout_below="@+id/author" android:layout_below="@+id/author"
......
...@@ -13,11 +13,13 @@ ...@@ -13,11 +13,13 @@
android:id="@+id/authorView" android:id="@+id/authorView"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true" android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" android:layout_alignParentTop="true"
android:layout_marginBottom="@dimen/margin_small" android:layout_marginBottom="@dimen/margin_small"
android:layout_marginEnd="@dimen/listitem_horizontal_margin" android:layout_marginEnd="@dimen/listitem_horizontal_margin"
android:layout_marginRight="@dimen/listitem_horizontal_margin" android:layout_marginRight="@dimen/listitem_horizontal_margin"
android:layout_toStartOf="@+id/bulbView"
android:layout_toLeftOf="@+id/bulbView" android:layout_toLeftOf="@+id/bulbView"
app:persona="list"/> app:persona="list"/>
...@@ -29,6 +31,7 @@ ...@@ -29,6 +31,7 @@
android:layout_alignParentEnd="true" android:layout_alignParentEnd="true"
android:layout_alignParentRight="true" android:layout_alignParentRight="true"
android:layout_alignTop="@+id/authorView" android:layout_alignTop="@+id/authorView"
android:layout_marginEnd="@dimen/listitem_horizontal_margin"
android:layout_marginRight="@dimen/listitem_horizontal_margin" android:layout_marginRight="@dimen/listitem_horizontal_margin"
tools:src="@drawable/contact_connected"/> tools:src="@drawable/contact_connected"/>
...@@ -39,40 +42,16 @@ ...@@ -39,40 +42,16 @@
android:layout_below="@+id/authorView" android:layout_below="@+id/authorView"
android:layout_marginBottom="@dimen/margin_small" android:layout_marginBottom="@dimen/margin_small"
android:layout_marginLeft="@dimen/listitem_group_member_indentation" android:layout_marginLeft="@dimen/listitem_group_member_indentation"
android:layout_marginStart="@dimen/listitem_group_member_indentation"
android:text="@string/groups_member_created_you" android:text="@string/groups_member_created_you"
android:textColor="@color/briar_text_secondary" android:textColor="@color/briar_text_secondary"
tools:visibility="visible"/> tools:visibility="visible"/>
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/creatorView"
android:layout_marginLeft="@dimen/listitem_group_member_indentation"
android:layout_marginRight="@dimen/margin_small"
android:contentDescription="@string/forum_invitation_already_sharing"
android:src="@drawable/ic_visibility"/>
<TextView
android:id="@+id/info"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/creatorView"
android:layout_marginEnd="@dimen/listitem_horizontal_margin"
android:layout_marginRight="@dimen/listitem_horizontal_margin"
android:layout_toRightOf="@+id/icon"
android:gravity="center_vertical"
android:minHeight="24dp"
android:textColor="@color/briar_text_secondary"
android:textIsSelectable="true"
android:textSize="@dimen/text_size_tiny"
android:textStyle="italic"
tools:text="@string/groups_reveal_visible_revealed_by_us"/>
<View <View
android:id="@+id/divider" android:id="@+id/divider"
style="@style/Divider.ContactList" style="@style/Divider.ContactList"
android:layout_below="@+id/info" android:layout_below="@+id/creatorView"
android:layout_marginStart="@dimen/listitem_group_member_indentation"
android:layout_marginLeft="@dimen/listitem_group_member_indentation" android:layout_marginLeft="@dimen/listitem_group_member_indentation"
android:layout_marginTop="@dimen/margin_medium"/> android:layout_marginTop="@dimen/margin_medium"/>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment