Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-deck.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Niedermann <info@niedermann.it>2020-07-05 15:35:41 +0300
committerStefan Niedermann <info@niedermann.it>2020-07-05 15:35:41 +0300
commitf1f1f0e621e00e1a9bdebaddcf39675f8fbf5734 (patch)
treed7ba9ad2bd05326b8557528204ce28759e065a90 /app/src/main/java/it/niedermann/nextcloud/deck/ui/movecard/MoveCardDialogFragment.java
parent74f1e7974aab8f00ce3366cd883695f329090294 (diff)
Display warning when moving cards to another board
Diffstat (limited to 'app/src/main/java/it/niedermann/nextcloud/deck/ui/movecard/MoveCardDialogFragment.java')
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/movecard/MoveCardDialogFragment.java23
1 files changed, 19 insertions, 4 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/movecard/MoveCardDialogFragment.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/movecard/MoveCardDialogFragment.java
index 6a6c12888..e3704888a 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/movecard/MoveCardDialogFragment.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/movecard/MoveCardDialogFragment.java
@@ -23,12 +23,17 @@ import it.niedermann.nextcloud.deck.ui.branding.BrandingUtil;
import it.niedermann.nextcloud.deck.ui.pickstack.PickStackFragment;
import it.niedermann.nextcloud.deck.ui.pickstack.PickStackListener;
+import static android.view.View.GONE;
+import static android.view.View.VISIBLE;
+
public class MoveCardDialogFragment extends BrandedDialogFragment implements PickStackListener {
- private static final String KEY_ORIGIN_CARD_LOCAL_ID = "card_local_id";
private static final String KEY_ORIGIN_ACCOUNT_ID = "account_id";
- private Long originCardLocalId;
+ private static final String KEY_ORIGIN_BOARD_LOCAL_ID = "board_local_id";
+ private static final String KEY_ORIGIN_CARD_LOCAL_ID = "card_local_id";
private Long originAccountId;
+ private Long originBoardLocalId;
+ private Long originCardLocalId;
private DialogMoveCardBinding binding;
private PickStackFragment fragment;
@@ -58,6 +63,10 @@ public class MoveCardDialogFragment extends BrandedDialogFragment implements Pic
if (originCardLocalId < 0) {
throw new IllegalArgumentException("Missing " + KEY_ORIGIN_CARD_LOCAL_ID);
}
+ originBoardLocalId = args.getLong(KEY_ORIGIN_BOARD_LOCAL_ID, -1L);
+ if (originBoardLocalId < 0) {
+ throw new IllegalArgumentException("Missing " + KEY_ORIGIN_BOARD_LOCAL_ID);
+ }
}
@Nullable
@@ -69,6 +78,7 @@ public class MoveCardDialogFragment extends BrandedDialogFragment implements Pic
this.moveCardListener.move(originAccountId, originCardLocalId, selectedAccount.getId(), selectedBoard.getLocalId(), selectedStack.getLocalId());
dismiss();
});
+ binding.cancel.setOnClickListener((v) -> dismiss());
return binding.getRoot();
}
@@ -89,20 +99,25 @@ public class MoveCardDialogFragment extends BrandedDialogFragment implements Pic
// DeckLog.log("MOVE - Stack changed to " + fullStack.getStack().getTitle());
if (board == null || fullStack == null) {
binding.submit.setEnabled(false);
+ binding.moveWarning.setVisibility(GONE);
} else {
binding.submit.setEnabled(true);
+ binding.moveWarning.setVisibility(board.getLocalId().equals(originBoardLocalId) ? GONE : VISIBLE);
}
}
@Override
public void applyBrand(int mainColor) {
- binding.submit.setTextColor(ColorStateList.valueOf(BrandingUtil.getSecondaryForegroundColorDependingOnTheme(requireContext(), mainColor)));
+ final ColorStateList mainColorStateList = ColorStateList.valueOf(BrandingUtil.getSecondaryForegroundColorDependingOnTheme(requireContext(), mainColor));
+ binding.cancel.setTextColor(mainColorStateList);
+ binding.submit.setTextColor(mainColorStateList);
}
- public static DialogFragment newInstance(long originAccountId, Long originCardLocalId) {
+ public static DialogFragment newInstance(long originAccountId, long originBoardLocalId, Long originCardLocalId) {
final DialogFragment dialogFragment = new MoveCardDialogFragment();
final Bundle args = new Bundle();
args.putLong(KEY_ORIGIN_ACCOUNT_ID, originAccountId);
+ args.putLong(KEY_ORIGIN_BOARD_LOCAL_ID, originBoardLocalId);
args.putLong(KEY_ORIGIN_CARD_LOCAL_ID, originCardLocalId);
dialogFragment.setArguments(args);
return dialogFragment;