From e37474e67c060269dbf2240b33025c994dea558b Mon Sep 17 00:00:00 2001 From: Kosh Date: Tue, 4 Apr 2017 16:54:54 +0800 Subject: [PATCH] proper label background as mentioned #243 --- app/build.gradle | 1 + app/src/main/java/com/fastaccess/helper/ViewHelper.java | 7 ++++--- .../java/com/fastaccess/provider/scheme/SchemeParser.java | 3 ++- .../ui/adapter/viewholder/LabelColorsViewHolder.java | 2 +- .../fastaccess/ui/adapter/viewholder/LabelsViewHolder.java | 2 +- .../com/fastaccess/ui/widgets/RoundBackgroundSpan.java | 3 +-- .../res/layouts/main_layouts/layout/activity_main_view.xml | 2 -- .../row_layouts/layout/org_profile_overview_layout.xml | 3 ++- 8 files changed, 12 insertions(+), 11 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 3bfff7b8..b1c29763 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -100,6 +100,7 @@ dependencies { compile "com.android.support:recyclerview-v7:${supportVersion}" compile "com.android.support:preference-v14:${supportVersion}" compile "com.android.support:customtabs:${supportVersion}" + compile "com.android.support:palette-v7:${supportVersion}" compile "com.google.firebase:firebase-ads:${firebase}" releaseCompile "com.google.firebase:firebase-crash:${firebase}" compile "net.grandcentrix.thirtyinch:thirtyinch:${thirtyinchVersion}" diff --git a/app/src/main/java/com/fastaccess/helper/ViewHelper.java b/app/src/main/java/com/fastaccess/helper/ViewHelper.java index b76b6ba1..dca8af69 100644 --- a/app/src/main/java/com/fastaccess/helper/ViewHelper.java +++ b/app/src/main/java/com/fastaccess/helper/ViewHelper.java @@ -18,7 +18,7 @@ import android.support.annotation.ColorInt; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.design.widget.TabLayout; -import android.support.v4.graphics.ColorUtils; +import android.support.v7.graphics.Palette; import android.text.Layout; import android.util.TypedValue; import android.view.View; @@ -175,8 +175,9 @@ public class ViewHelper { inputManager.hideSoftInputFromWindow(view.getWindowToken(), 0); } - @ColorInt public static int generateTextColor(int color, int background) { - return ColorUtils.compositeColors(color, background); + @ColorInt public static int generateTextColor(int background) { + Palette.Swatch swatch = new Palette.Swatch(background, 0); + return swatch.getBodyTextColor(); } public static boolean isEllipsed(@NonNull TextView textView) { diff --git a/app/src/main/java/com/fastaccess/provider/scheme/SchemeParser.java b/app/src/main/java/com/fastaccess/provider/scheme/SchemeParser.java index 73e2cd6f..8bb9b18c 100644 --- a/app/src/main/java/com/fastaccess/provider/scheme/SchemeParser.java +++ b/app/src/main/java/com/fastaccess/provider/scheme/SchemeParser.java @@ -51,7 +51,8 @@ public class SchemeParser { Intent intent = convert(context, data, showRepoBtn); if (intent != null) { if (context instanceof Service || context instanceof Application) { - intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + Logger.e("instanceof"); + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP); } context.startActivity(intent); } else { diff --git a/app/src/main/java/com/fastaccess/ui/adapter/viewholder/LabelColorsViewHolder.java b/app/src/main/java/com/fastaccess/ui/adapter/viewholder/LabelColorsViewHolder.java index 020b8c4c..a4e986da 100644 --- a/app/src/main/java/com/fastaccess/ui/adapter/viewholder/LabelColorsViewHolder.java +++ b/app/src/main/java/com/fastaccess/ui/adapter/viewholder/LabelColorsViewHolder.java @@ -33,7 +33,7 @@ public class LabelColorsViewHolder extends BaseViewHolder { @Override public void bind(@NonNull String labelModel) { int labelColor = Color.parseColor(labelModel); itemView.setBackgroundColor(labelColor); - color.setTextColor(ViewHelper.generateTextColor(Color.WHITE, labelColor)); + color.setTextColor(ViewHelper.generateTextColor(labelColor)); color.setText(labelModel); } diff --git a/app/src/main/java/com/fastaccess/ui/adapter/viewholder/LabelsViewHolder.java b/app/src/main/java/com/fastaccess/ui/adapter/viewholder/LabelsViewHolder.java index 89e76b00..d6015022 100644 --- a/app/src/main/java/com/fastaccess/ui/adapter/viewholder/LabelsViewHolder.java +++ b/app/src/main/java/com/fastaccess/ui/adapter/viewholder/LabelsViewHolder.java @@ -45,7 +45,7 @@ public class LabelsViewHolder extends BaseViewHolder { colorImage.setBackgroundColor(color); name.setText(labelModel.getName()); if (onSelectLabel.isLabelSelected(getAdapterPosition())) { - name.setTextColor(ViewHelper.generateTextColor(Color.WHITE, color)); + name.setTextColor(ViewHelper.generateTextColor(color)); } else { name.setTextColor(ViewHelper.getPrimaryTextColor(itemView.getContext())); } diff --git a/app/src/main/java/com/fastaccess/ui/widgets/RoundBackgroundSpan.java b/app/src/main/java/com/fastaccess/ui/widgets/RoundBackgroundSpan.java index 4c7ec5fa..5b0f0c0c 100644 --- a/app/src/main/java/com/fastaccess/ui/widgets/RoundBackgroundSpan.java +++ b/app/src/main/java/com/fastaccess/ui/widgets/RoundBackgroundSpan.java @@ -1,7 +1,6 @@ package com.fastaccess.ui.widgets; import android.graphics.Canvas; -import android.graphics.Color; import android.graphics.Paint; import android.graphics.Paint.FontMetricsInt; import android.graphics.RectF; @@ -30,7 +29,7 @@ public class RoundBackgroundSpan extends ReplacementSpan { final float width = paint.measureText(charSequence.subSequence(start, end).toString()); RectF rectF = new RectF(x, top + 10, x + width + 2 * 10, bottom + 5); canvas.drawRoundRect(rectF, this.radius, this.radius, this.paint); - paint.setColor(ViewHelper.generateTextColor(Color.WHITE, this.paint.getColor())); + paint.setColor(ViewHelper.generateTextColor(this.paint.getColor())); canvas.drawText(charSequence, start, end, x + 10, y + 5, paint); } } \ No newline at end of file diff --git a/app/src/main/res/layouts/main_layouts/layout/activity_main_view.xml b/app/src/main/res/layouts/main_layouts/layout/activity_main_view.xml index c2b993ca..5c789180 100644 --- a/app/src/main/res/layouts/main_layouts/layout/activity_main_view.xml +++ b/app/src/main/res/layouts/main_layouts/layout/activity_main_view.xml @@ -24,8 +24,6 @@ - - diff --git a/app/src/main/res/layouts/row_layouts/layout/org_profile_overview_layout.xml b/app/src/main/res/layouts/row_layouts/layout/org_profile_overview_layout.xml index cee255c2..ebbb4096 100644 --- a/app/src/main/res/layouts/row_layouts/layout/org_profile_overview_layout.xml +++ b/app/src/main/res/layouts/row_layouts/layout/org_profile_overview_layout.xml @@ -18,6 +18,8 @@ @@ -30,7 +32,6 @@