Loading app/src/main/java/it/niedermann/owncloud/notes/manageaccounts/ManageAccountViewHolder.java +5 −0 Original line number Original line Diff line number Diff line Loading @@ -19,6 +19,7 @@ import com.bumptech.glide.request.RequestOptions; import it.niedermann.owncloud.notes.R; import it.niedermann.owncloud.notes.R; import it.niedermann.owncloud.notes.databinding.ItemAccountChooseBinding; import it.niedermann.owncloud.notes.databinding.ItemAccountChooseBinding; import it.niedermann.owncloud.notes.persistence.entity.Account; import it.niedermann.owncloud.notes.persistence.entity.Account; import it.niedermann.owncloud.notes.shared.util.AccountSyncUtil; import it.niedermann.owncloud.notes.shared.util.DisplayUtils; import it.niedermann.owncloud.notes.shared.util.DisplayUtils; public class ManageAccountViewHolder extends RecyclerView.ViewHolder { public class ManageAccountViewHolder extends RecyclerView.ViewHolder { Loading Loading @@ -58,6 +59,10 @@ public class ManageAccountViewHolder extends RecyclerView.ViewHolder { popup.getMenu().removeItem(popup.getMenu().findItem(R.id.notes_path).getItemId()); popup.getMenu().removeItem(popup.getMenu().findItem(R.id.notes_path).getItemId()); } } if (AccountSyncUtil.isMurenaAccount(itemView.getContext(), localAccount.getAccountName())) { popup.getMenu().removeItem(popup.getMenu().findItem(R.id.delete).getItemId()); } popup.setOnMenuItemClickListener(item -> { popup.setOnMenuItemClickListener(item -> { if (item.getItemId() == R.id.notes_path) { if (item.getItemId() == R.id.notes_path) { callback.onChangeNotesPath(localAccount); callback.onChangeNotesPath(localAccount); Loading app/src/main/java/it/niedermann/owncloud/notes/shared/util/AccountSyncUtil.java +8 −0 Original line number Original line Diff line number Diff line Loading @@ -20,6 +20,8 @@ import android.accounts.AccountManager; import android.content.ContentResolver; import android.content.ContentResolver; import android.content.Context; import android.content.Context; import androidx.annotation.NonNull; import java.util.Arrays; import java.util.Arrays; import java.util.List; import java.util.List; import java.util.Objects; import java.util.Objects; Loading Loading @@ -64,4 +66,10 @@ public final class AccountSyncUtil { .filter(Objects::nonNull) .filter(Objects::nonNull) .collect(Collectors.toList()); .collect(Collectors.toList()); } } public static boolean isMurenaAccount(@NonNull Context context, @NonNull String accountName) { return getMurenaAccounts(context) .stream() .anyMatch(account -> accountName.equals(account.name)); } } } Loading
app/src/main/java/it/niedermann/owncloud/notes/manageaccounts/ManageAccountViewHolder.java +5 −0 Original line number Original line Diff line number Diff line Loading @@ -19,6 +19,7 @@ import com.bumptech.glide.request.RequestOptions; import it.niedermann.owncloud.notes.R; import it.niedermann.owncloud.notes.R; import it.niedermann.owncloud.notes.databinding.ItemAccountChooseBinding; import it.niedermann.owncloud.notes.databinding.ItemAccountChooseBinding; import it.niedermann.owncloud.notes.persistence.entity.Account; import it.niedermann.owncloud.notes.persistence.entity.Account; import it.niedermann.owncloud.notes.shared.util.AccountSyncUtil; import it.niedermann.owncloud.notes.shared.util.DisplayUtils; import it.niedermann.owncloud.notes.shared.util.DisplayUtils; public class ManageAccountViewHolder extends RecyclerView.ViewHolder { public class ManageAccountViewHolder extends RecyclerView.ViewHolder { Loading Loading @@ -58,6 +59,10 @@ public class ManageAccountViewHolder extends RecyclerView.ViewHolder { popup.getMenu().removeItem(popup.getMenu().findItem(R.id.notes_path).getItemId()); popup.getMenu().removeItem(popup.getMenu().findItem(R.id.notes_path).getItemId()); } } if (AccountSyncUtil.isMurenaAccount(itemView.getContext(), localAccount.getAccountName())) { popup.getMenu().removeItem(popup.getMenu().findItem(R.id.delete).getItemId()); } popup.setOnMenuItemClickListener(item -> { popup.setOnMenuItemClickListener(item -> { if (item.getItemId() == R.id.notes_path) { if (item.getItemId() == R.id.notes_path) { callback.onChangeNotesPath(localAccount); callback.onChangeNotesPath(localAccount); Loading
app/src/main/java/it/niedermann/owncloud/notes/shared/util/AccountSyncUtil.java +8 −0 Original line number Original line Diff line number Diff line Loading @@ -20,6 +20,8 @@ import android.accounts.AccountManager; import android.content.ContentResolver; import android.content.ContentResolver; import android.content.Context; import android.content.Context; import androidx.annotation.NonNull; import java.util.Arrays; import java.util.Arrays; import java.util.List; import java.util.List; import java.util.Objects; import java.util.Objects; Loading Loading @@ -64,4 +66,10 @@ public final class AccountSyncUtil { .filter(Objects::nonNull) .filter(Objects::nonNull) .collect(Collectors.toList()); .collect(Collectors.toList()); } } public static boolean isMurenaAccount(@NonNull Context context, @NonNull String accountName) { return getMurenaAccounts(context) .stream() .anyMatch(account -> accountName.equals(account.name)); } } }