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>2024-01-16 09:58:11 +0300
committerStefan Niedermann <info@niedermann.it>2024-01-16 09:58:11 +0300
commitb8d1a2a2a90df0c7f08de51076d9f6c3a1015f67 (patch)
tree7d7bba5ded0eda23d60348fbc959341cf030b261 /app/src/main/java
parent8405834a5db1701120e65d17997b14e91853626b (diff)
chore(done): Support compact mode
Refs: #1556 Signed-off-by: Stefan Niedermann <info@niedermann.it>
Diffstat (limited to 'app/src/main/java')
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/view/DueDateChip.java36
1 files changed, 23 insertions, 13 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/view/DueDateChip.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/view/DueDateChip.java
index 568dfb053..88b86daf3 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/view/DueDateChip.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/view/DueDateChip.java
@@ -27,24 +27,30 @@ import it.niedermann.nextcloud.deck.util.DateUtil;
public class DueDateChip extends Chip {
- protected @ColorInt int colorOnSurface;
+ @ColorInt
+ protected final int colorOnSurface;
+ protected final boolean compactMode;
public DueDateChip(Context context) {
- super(context);
- initialize();
+ this(context, null);
}
public DueDateChip(Context context, AttributeSet attrs) {
- super(context, attrs);
- initialize();
+ this(context, attrs, R.attr.chipStyle);
}
public DueDateChip(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
- initialize();
- }
- private void initialize() {
+ final var typedValue = new TypedValue();
+ final var theme = getContext().getTheme();
+ theme.resolveAttribute(R.attr.colorOnSurface, typedValue, true);
+ this.colorOnSurface = typedValue.data;
+
+ final var styles = context.obtainStyledAttributes(attrs, R.styleable.DueDateChip, defStyleAttr, 0);
+ this.compactMode = styles.getBoolean(R.styleable.DueDateChip_compactMode, false);
+ styles.recycle();
+
setEnsureMinTouchTargetSize(false);
setMinHeight(0);
setChipMinHeight(0);
@@ -52,14 +58,18 @@ public class DueDateChip extends Chip {
setPadding(padding, padding, padding, padding);
setClickable(false);
- final var typedValue = new TypedValue();
- final var theme = getContext().getTheme();
- theme.resolveAttribute(R.attr.colorOnSurface, typedValue, true);
- this.colorOnSurface = typedValue.data;
+ if (compactMode) {
+ setChipEndPadding(0);
+ setTextEndPadding(0);
+ }
}
public void setDueDate(@NonNull Instant date, boolean isDone) {
- setText(DateUtil.getRelativeDateTimeString(getContext(), date.toEpochMilli()));
+ if (compactMode) {
+ setText(null);
+ } else {
+ setText(DateUtil.getRelativeDateTimeString(getContext(), date.toEpochMilli()));
+ }
@DrawableRes final int chipIconRes;
@Nullable @ColorRes final Integer textColorRes;