diff --git a/app/src/main/java/org/isoron/uhabits/activities/common/dialogs/ColorPickerDialog.java b/app/src/main/java/org/isoron/uhabits/activities/common/dialogs/ColorPickerDialog.java index 796b8312f..c4ab3022c 100644 --- a/app/src/main/java/org/isoron/uhabits/activities/common/dialogs/ColorPickerDialog.java +++ b/app/src/main/java/org/isoron/uhabits/activities/common/dialogs/ColorPickerDialog.java @@ -30,7 +30,6 @@ public class ColorPickerDialog extends com.android.colorpicker.ColorPickerDialog { super.setOnColorSelectedListener(c -> { c = ColorUtils.colorToPaletteIndex(getContext(), c); - c = ColorUtils.StaticColor.getColorByXmlIndex(c).dbIndex; listener.onColorSelected(c); }); } diff --git a/app/src/main/java/org/isoron/uhabits/models/HabitList.java b/app/src/main/java/org/isoron/uhabits/models/HabitList.java index 50997003d..2892a2c30 100644 --- a/app/src/main/java/org/isoron/uhabits/models/HabitList.java +++ b/app/src/main/java/org/isoron/uhabits/models/HabitList.java @@ -230,7 +230,7 @@ public abstract class HabitList implements Iterable habit.getDescription(), Integer.toString(freq.getNumerator()), Integer.toString(freq.getDenominator()), - ColorUtils.StaticColor.getColorByDbIndex(habit.getColor()).name() + ColorUtils.CSV_PALETTE[habit.getColor()] }; csv.writeNext(cols, false); diff --git a/app/src/main/java/org/isoron/uhabits/models/HabitMatcherBuilder.java b/app/src/main/java/org/isoron/uhabits/models/HabitMatcherBuilder.java index e71b031c0..facc8cc4b 100644 --- a/app/src/main/java/org/isoron/uhabits/models/HabitMatcherBuilder.java +++ b/app/src/main/java/org/isoron/uhabits/models/HabitMatcherBuilder.java @@ -36,7 +36,7 @@ public class HabitMatcherBuilder private static List allColors() { List colors = new ArrayList<>(); - for(int i = 0; i < ColorUtils.StaticColor.values().length; i++) + for(int i = 0; i < ColorUtils.CSV_PALETTE.length; i++) colors.add(i); return colors; } diff --git a/app/src/main/java/org/isoron/uhabits/models/memory/MemoryHabitList.java b/app/src/main/java/org/isoron/uhabits/models/memory/MemoryHabitList.java index 55b2726c0..32f1982c4 100644 --- a/app/src/main/java/org/isoron/uhabits/models/memory/MemoryHabitList.java +++ b/app/src/main/java/org/isoron/uhabits/models/memory/MemoryHabitList.java @@ -22,7 +22,6 @@ package org.isoron.uhabits.models.memory; import android.support.annotation.*; import org.isoron.uhabits.models.*; -import org.isoron.uhabits.utils.ColorUtils; import java.util.*; @@ -156,8 +155,8 @@ public class MemoryHabitList extends HabitList (h1, h2) -> h1.getName().compareTo(h2.getName()); Comparator colorComparator = (h1, h2) -> { - Integer c1 = ColorUtils.StaticColor.getColorByDbIndex(h1.getColor()).xmlIndex; - Integer c2 = ColorUtils.StaticColor.getColorByDbIndex(h2.getColor()).xmlIndex; + Integer c1 = h1.getColor(); + Integer c2 = h2.getColor(); if (c1.equals(c2)) return nameComparator.compare(h1, h2); else return c1.compareTo(c2); }; diff --git a/app/src/main/java/org/isoron/uhabits/utils/ColorUtils.java b/app/src/main/java/org/isoron/uhabits/utils/ColorUtils.java index a259244b6..25434bacc 100644 --- a/app/src/main/java/org/isoron/uhabits/utils/ColorUtils.java +++ b/app/src/main/java/org/isoron/uhabits/utils/ColorUtils.java @@ -25,55 +25,21 @@ import android.util.*; public abstract class ColorUtils { - - public enum StaticColor - { - RED ( 0, 0), - DEEP_ORANGE ( 1, 1), - ORANGE ( 2,13), - YELLOW ( 3, 2), - LIGHT_GREEN ( 4, 3), - DARK_GREEN ( 5, 4), - TEAL ( 6, 5), - CYAN ( 7, 6), - BLUE ( 8, 7), - DEEP_PURPLE ( 9, 8), - PURPLE (10, 9), - PINK (11,10), - BROWN (12,14), - DARK_GREY (13,11), - GREY (14,15), - LIGHT_GREY (15,12); - - public final int xmlIndex; - public final int dbIndex; - - StaticColor(int xmlIndex, int dbIndex) - { - this.xmlIndex = xmlIndex; - this.dbIndex = dbIndex; - } - - public static StaticColor getColorByDbIndex(int dbIndex) - { - for(StaticColor c : StaticColor.values()) - if (c.dbIndex == dbIndex) return c; - - Log.w("ColorHelper", - String.format("Invalid color db index: %d. Returning default.", dbIndex)); - return RED; - } - - public static StaticColor getColorByXmlIndex(int xmlIndex) - { - for(StaticColor c : StaticColor.values()) - if (c.xmlIndex == xmlIndex) return c; - - Log.w("ColorHelper", - String.format("Invalid color xml index: %d. Returning default.", xmlIndex)); - return RED; - } - } + public static String CSV_PALETTE[] = { + "#D32F2F", // 0 red + "#E64A19", // 1 orange + "#F9A825", // 2 yellow + "#AFB42B", // 3 light green + "#388E3C", // 4 dark green + "#00897B", // 5 teal + "#00ACC1", // 6 cyan + "#039BE5", // 7 blue + "#5E35B1", // 8 deep purple + "#8E24AA", // 9 purple + "#D81B60", // 10 pink + "#303030", // 11 dark grey + "#aaaaaa" // 12 light grey + }; public static int colorToPaletteIndex(Context context, int color) { @@ -112,8 +78,6 @@ public abstract class ColorUtils if (context == null) throw new IllegalArgumentException("Context is null"); - paletteColor = ColorUtils.StaticColor.getColorByDbIndex(paletteColor).xmlIndex; - StyledResources res = new StyledResources(context); int palette[] = res.getPalette(); if (paletteColor < 0 || paletteColor >= palette.length) diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 4138ed7e5..29616a09e 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -19,7 +19,6 @@ @color/red_700 @color/deep_orange_700 - @color/orange_700 @color/yellow_800 @color/lime_700 @color/green_700 @@ -29,16 +28,13 @@ @color/deep_purple_600 @color/purple_600 @color/pink_600 - @color/brown_700 @color/grey_800 - @color/grey_600 @color/grey_500 @color/red_200 @color/deep_orange_200 - @color/orange_200 @color/yellow_200 @color/lime_200 @color/green_A200 @@ -48,16 +44,13 @@ @color/deep_purple_200 @color/purple_200 @color/pink_200 - @color/brown_200 @color/grey_100 - @color/grey_300 @color/grey_500 @color/red_800 @color/deep_orange_800 - @color/orange_800 @color/yellow_800 @color/lime_800 @color/green_700 @@ -67,8 +60,6 @@ @color/deep_purple_700 @color/purple_700 @color/pink_700 - @color/brown_800 - @color/black_aa @color/black_aa @color/black_aa diff --git a/app/src/test/java/org/isoron/uhabits/models/HabitListTest.java b/app/src/test/java/org/isoron/uhabits/models/HabitListTest.java index f37a207b9..961e1536c 100644 --- a/app/src/test/java/org/isoron/uhabits/models/HabitListTest.java +++ b/app/src/test/java/org/isoron/uhabits/models/HabitListTest.java @@ -172,8 +172,8 @@ public class HabitListTest extends BaseUnitTest String expectedCSV = "Position,Name,Description,NumRepetitions,Interval,Color\n" + - "001,Meditate,Did you meditate this morning?,1,1,LIGHT_GREEN\n" + - "002,Wake up early,Did you wake up before 6am?,2,3,TEAL\n"; + "001,Meditate,Did you meditate this morning?,1,1,#AFB42B\n" + + "002,Wake up early,Did you wake up before 6am?,2,3,#00897B\n"; StringWriter writer = new StringWriter(); list.writeCSV(writer);