don't show "link account" button if feature is disabled

This commit is contained in:
Vincent Breitmoser
2017-09-30 21:19:20 +02:00
parent 95e6562386
commit 4536645170
3 changed files with 19 additions and 6 deletions

View File

@@ -60,6 +60,7 @@ public class IdentitiesPresenter implements LoaderCallbacks<List<IdentityInfo>>
private final long masterKeyId;
private final boolean isSecret;
private final boolean showLinkedIds;
public IdentitiesPresenter(Context context, IdentitiesMvpView view, ViewKeyMvpView viewKeyMvpView,
int loaderId, long masterKeyId, boolean isSecret) {
@@ -71,6 +72,8 @@ public class IdentitiesPresenter implements LoaderCallbacks<List<IdentityInfo>>
this.masterKeyId = masterKeyId;
this.isSecret = isSecret;
showLinkedIds = Preferences.getPreferences(context).getExperimentalEnableLinkedIdentities();
identitiesAdapter = new IdentityAdapter(context, isSecret, new IdentityClickListener() {
@Override
public void onClickIdentity(int position) {
@@ -86,6 +89,7 @@ public class IdentitiesPresenter implements LoaderCallbacks<List<IdentityInfo>>
view.setIdentitiesAdapter(identitiesAdapter);
view.setEditIdentitiesButtonVisible(isSecret);
view.setAddLinkedIdButtonVisible(showLinkedIds);
view.setIdentitiesCardListener(new IdentitiesCardListener() {
@Override
@@ -106,7 +110,6 @@ public class IdentitiesPresenter implements LoaderCallbacks<List<IdentityInfo>>
@Override
public Loader<List<IdentityInfo>> onCreateLoader(int id, Bundle args) {
boolean showLinkedIds = Preferences.getPreferences(context).getExperimentalEnableLinkedIdentities();
return new IdentityLoader(context, context.getContentResolver(), masterKeyId, showLinkedIds);
}
@@ -189,6 +192,7 @@ public class IdentitiesPresenter implements LoaderCallbacks<List<IdentityInfo>>
void setIdentitiesAdapter(IdentityAdapter userIdsAdapter);
void setIdentitiesCardListener(IdentitiesCardListener identitiesCardListener);
void setEditIdentitiesButtonVisible(boolean show);
void setAddLinkedIdButtonVisible(boolean showLinkedIds);
}
public interface IdentitiesCardListener {

View File

@@ -38,6 +38,8 @@ public class IdentitiesCardView extends CardView implements IdentitiesMvpView {
private final RecyclerView vIdentities;
private IdentitiesCardListener identitiesCardListener;
private final Button linkedIdsAddButton;
private final Button userIdsEditButton;
public IdentitiesCardView(Context context, AttributeSet attrs) {
super(context, attrs);
@@ -48,7 +50,7 @@ public class IdentitiesCardView extends CardView implements IdentitiesMvpView {
vIdentities.setLayoutManager(new LinearLayoutManager(context));
vIdentities.addItemDecoration(new DividerItemDecoration(context, DividerItemDecoration.VERTICAL_LIST, false));
Button userIdsEditButton = (Button) view.findViewById(R.id.view_key_card_user_ids_edit);
userIdsEditButton = (Button) view.findViewById(R.id.view_key_card_user_ids_edit);
userIdsEditButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
@@ -58,8 +60,7 @@ public class IdentitiesCardView extends CardView implements IdentitiesMvpView {
}
});
Button linkedIdsAddButton = (Button) view.findViewById(R.id.view_key_card_linked_ids_add);
linkedIdsAddButton = (Button) view.findViewById(R.id.view_key_card_linked_ids_add);
linkedIdsAddButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
@@ -82,6 +83,11 @@ public class IdentitiesCardView extends CardView implements IdentitiesMvpView {
@Override
public void setEditIdentitiesButtonVisible(boolean show) {
findViewById(R.id.view_key_card_user_ids_buttons).setVisibility(show ? View.VISIBLE : View.GONE);
userIdsEditButton.setVisibility(show ? View.VISIBLE : View.GONE);
}
@Override
public void setAddLinkedIdButtonVisible(boolean show) {
linkedIdsAddButton.setVisibility(show ? View.VISIBLE : View.GONE);
}
}

View File

@@ -37,7 +37,10 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/menu_linked_add_identity"
android:textColor="@color/card_view_button" />
android:textColor="@color/card_view_button"
android:visibility="gone"
tools:visibility="visible"
/>
<Button
android:id="@+id/view_key_card_user_ids_edit"