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:
authordesperateCoder <echotodevnull@gmail.com>2020-11-21 18:55:19 +0300
committerdesperateCoder <echotodevnull@gmail.com>2020-11-21 18:55:19 +0300
commit365bf07399aa0e5fdfb8db13903b28fc5bdd56cd (patch)
tree02ea6baf2c53dfc1696fba1a33be1fb5c15f5ed4 /app/src/main/java/it
parentd235ae16f1e582fc21a8631ccb3ecd840fba13b4 (diff)
parentb182b1a12101166de1658a7a91c7036c857cd01c (diff)
Merge branch 'master' of github.com:stefan-niedermann/nextcloud-deck
Diffstat (limited to 'app/src/main/java/it')
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/card/activities/CardActivityViewHolder.java43
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/card/attachments/CardAttachmentsFragment.java6
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/widget/stack/StackWidgetConfigurationActivity.java3
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/util/ProjectUtil.java13
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/util/ViewUtil.java11
5 files changed, 58 insertions, 18 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/activities/CardActivityViewHolder.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/activities/CardActivityViewHolder.java
index f8d237ad4..6362f90dd 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/activities/CardActivityViewHolder.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/activities/CardActivityViewHolder.java
@@ -3,6 +3,7 @@ package it.niedermann.nextcloud.deck.ui.card.activities;
import android.content.Context;
import android.view.MenuInflater;
import android.view.View;
+import android.widget.ImageView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
@@ -13,6 +14,7 @@ import it.niedermann.nextcloud.deck.databinding.ItemActivityBinding;
import it.niedermann.nextcloud.deck.model.enums.ActivityType;
import it.niedermann.nextcloud.deck.model.ocs.Activity;
import it.niedermann.nextcloud.deck.util.DateUtil;
+import it.niedermann.nextcloud.deck.util.ViewUtil;
public class CardActivityViewHolder extends RecyclerView.ViewHolder {
public ItemActivityBinding binding;
@@ -32,31 +34,54 @@ public class CardActivityViewHolder extends RecyclerView.ViewHolder {
inflater.inflate(R.menu.activity_menu, menu);
menu.findItem(android.R.id.copy).setOnMenuItemClickListener(item -> ClipboardUtil.INSTANCE.copyToClipboard(context, activity.getSubject()));
});
- switch (ActivityType.findById(activity.getType())) {
+ final ActivityType type = ActivityType.findById(activity.getType());
+ setImageResource(binding.type, type);
+ setImageColor(context, binding.type, type);
+ }
+
+ private static void setImageResource(@NonNull ImageView imageView, @NonNull ActivityType type) {
+ switch (type) {
case CHANGE:
- binding.type.setImageResource(R.drawable.type_change_36dp);
+ imageView.setImageResource(R.drawable.type_change_36dp);
break;
case ADD:
- binding.type.setImageResource(R.drawable.type_add_color_36dp);
+ imageView.setImageResource(R.drawable.type_add_color_36dp);
break;
case DELETE:
- binding.type.setImageResource(R.drawable.type_delete_color_36dp);
+ imageView.setImageResource(R.drawable.type_delete_color_36dp);
break;
case ARCHIVE:
- binding.type.setImageResource(R.drawable.type_archive_grey600_36dp);
+ imageView.setImageResource(R.drawable.type_archive_grey600_36dp);
break;
case TAGGED_WITH_LABEL:
- binding.type.setImageResource(R.drawable.type_label_grey600_36dp);
+ imageView.setImageResource(R.drawable.type_label_grey600_36dp);
break;
case COMMENT:
- binding.type.setImageResource(R.drawable.type_comment_grey600_36dp);
+ imageView.setImageResource(R.drawable.type_comment_grey600_36dp);
break;
case FILES:
- binding.type.setImageResource(R.drawable.type_file_36dp);
+ imageView.setImageResource(R.drawable.type_file_36dp);
+ break;
case HISTORY:
- binding.type.setImageResource(R.drawable.type_history_36dp);
+ imageView.setImageResource(R.drawable.type_history_36dp);
+ break;
case DECK:
default:
+ imageView.setImageResource(R.drawable.ic_app_logo);
+ break;
+ }
+ }
+
+ private static void setImageColor(@NonNull Context context, @NonNull ImageView imageView, @NonNull ActivityType type) {
+ switch (type) {
+ case ADD:
+ ViewUtil.setImageColor(context, imageView, R.color.activity_create);
+ break;
+ case DELETE:
+ ViewUtil.setImageColor(context, imageView, R.color.activity_delete);
+ break;
+ default:
+ ViewUtil.setImageColor(context, imageView, R.color.grey600);
break;
}
}
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/attachments/CardAttachmentsFragment.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/attachments/CardAttachmentsFragment.java
index bb42f27ef..81a166cb6 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/attachments/CardAttachmentsFragment.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/attachments/CardAttachmentsFragment.java
@@ -233,9 +233,9 @@ public class CardAttachmentsFragment extends BrandedFragment implements Attachme
binding.emptyContentView.hideDescription();
}
@Nullable Context context = requireContext();
- if (isBrandingEnabled(context)) {
- applyBrand(readBrandMainColor(context));
- }
+ applyBrand(isBrandingEnabled(context)
+ ? readBrandMainColor(context)
+ : ContextCompat.getColor(context, R.color.defaultBrand));
return binding.getRoot();
}
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/widget/stack/StackWidgetConfigurationActivity.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/widget/stack/StackWidgetConfigurationActivity.java
index 6b86b50ba..771feabc2 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/widget/stack/StackWidgetConfigurationActivity.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/widget/stack/StackWidgetConfigurationActivity.java
@@ -7,6 +7,7 @@ import android.os.Bundle;
import androidx.appcompat.app.ActionBar;
import it.niedermann.nextcloud.deck.DeckLog;
+import it.niedermann.nextcloud.deck.R;
import it.niedermann.nextcloud.deck.model.Account;
import it.niedermann.nextcloud.deck.ui.PickStackActivity;
@@ -18,7 +19,7 @@ public class StackWidgetConfigurationActivity extends PickStackActivity {
super.onCreate(savedInstanceState);
final ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
- actionBar.setTitle("Add stack widget");
+ actionBar.setTitle(R.string.add_stack_widget);
}
setResult(RESULT_CANCELED);
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/util/ProjectUtil.java b/app/src/main/java/it/niedermann/nextcloud/deck/util/ProjectUtil.java
index 015241eef..f43f7d824 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/util/ProjectUtil.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/util/ProjectUtil.java
@@ -46,11 +46,14 @@ public class ProjectUtil {
throw new IllegalArgumentException("provided url is null");
}
url = url.trim();
+ if (url.length() == 0) {
+ throw new IllegalArgumentException("trimmed url is empty");
+ }
// extract important part
- String[] splitByPrefix = url.split(".*index\\.php/apps/deck/#/board/");
+ String[] splitByPrefix = url.split(".*index\\.php/apps/deck(/#)?/board/");
// split into board- and card part
if (splitByPrefix.length < 2) {
- throw new IllegalArgumentException("this doesn't seem to be an URL containing the board ID");
+ throw new IllegalArgumentException("This URL doesn't seem to be an URL containing the boardId: \"" + url + "\"");
}
String[] splitBySeparator = splitByPrefix[1].split("/card/");
@@ -63,13 +66,13 @@ public class ProjectUtil {
}
if (splitBySeparator.length < 1) {
- throw new IllegalArgumentException("this doesn't seem to be a valid URL containing the board ID");
+ throw new IllegalArgumentException("This URL doesn't seem to be an URL containing the boardId: \"" + url + "\"");
}
// return result
long boardId = Long.parseLong(splitBySeparator[0]);
if (boardId < 1) {
- throw new IllegalArgumentException("invalid boardId: "+boardId);
+ throw new IllegalArgumentException("Invalid boardId \"" + boardId + "\" for url \"" + url + "\".");
}
if (splitBySeparator.length == 1) {
return new long[]{boardId};
@@ -81,7 +84,7 @@ public class ProjectUtil {
return new long[]{boardId};
}
} else {
- throw new IllegalArgumentException("could not parse URL for board- and/or card-ID");
+ throw new IllegalArgumentException("could not parse URL for boardId and/or cardId: \"" + url + "\"");
}
}
}
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/util/ViewUtil.java b/app/src/main/java/it/niedermann/nextcloud/deck/util/ViewUtil.java
index b676fcedb..4ae39f787 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/util/ViewUtil.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/util/ViewUtil.java
@@ -12,6 +12,7 @@ import android.text.style.ImageSpan;
import android.widget.ImageView;
import android.widget.TextView;
+import androidx.annotation.ColorRes;
import androidx.annotation.DrawableRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@@ -33,6 +34,8 @@ import it.niedermann.nextcloud.deck.R;
import it.niedermann.nextcloud.deck.model.Account;
import it.niedermann.nextcloud.deck.model.ocs.comment.Mention;
+import static android.os.Build.VERSION.SDK_INT;
+import static android.os.Build.VERSION_CODES.LOLLIPOP;
import static it.niedermann.nextcloud.deck.DeckApplication.isDarkTheme;
import static java.time.temporal.ChronoUnit.DAYS;
@@ -140,4 +143,12 @@ public final class ViewUtil {
}
textView.setText(messageBuilder);
}
+
+ public static void setImageColor(@NonNull Context context, @NonNull ImageView imageView, @ColorRes int colorRes) {
+ if (SDK_INT >= LOLLIPOP) {
+ imageView.setImageTintList(ColorStateList.valueOf(ContextCompat.getColor(context, colorRes)));
+ } else {
+ imageView.setColorFilter(ContextCompat.getColor(context, colorRes));
+ }
+ }
}