diff --git a/uhabits-android/build.gradle b/uhabits-android/build.gradle index 83caae219..7ce317fbc 100644 --- a/uhabits-android/build.gradle +++ b/uhabits-android/build.gradle @@ -11,7 +11,7 @@ android { minSdkVersion 19 targetSdkVersion 25 - buildConfigField "Integer", "databaseVersion", "20" + buildConfigField "Integer", "databaseVersion", "21" buildConfigField "String", "databaseFilename", "\"uhabits.db\"" buildConfigField "int", "roboSdk", (System.getenv("ROBO_SDK") ?: "25") diff --git a/uhabits-android/src/androidTest/java/org/isoron/uhabits/models/HabitListTest.java b/uhabits-android/src/androidTest/java/org/isoron/uhabits/models/HabitListTest.java index e9d424c79..c04b54a33 100644 --- a/uhabits-android/src/androidTest/java/org/isoron/uhabits/models/HabitListTest.java +++ b/uhabits-android/src/androidTest/java/org/isoron/uhabits/models/HabitListTest.java @@ -180,8 +180,8 @@ public class HabitListTest extends BaseAndroidTest String expectedCSV = "Position,Name,Description,NumRepetitions,Interval,Color\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"; + "001,Meditate,Did you meditate this morning?,1,1,#F9A825\n" + + "002,Wake up early,Did you wake up before 6am?,2,3,#388E3C\n"; StringWriter writer = new StringWriter(); habitList.writeCSV(writer); diff --git a/uhabits-android/src/main/assets/migrations/21.sql b/uhabits-android/src/main/assets/migrations/21.sql new file mode 100644 index 000000000..20cd9fe89 --- /dev/null +++ b/uhabits-android/src/main/assets/migrations/21.sql @@ -0,0 +1,12 @@ +update habits set color=19 where color=12; +update habits set color=17 where color=11; +update habits set color=15 where color=10; +update habits set color=14 where color=9; +update habits set color=13 where color=8; +update habits set color=10 where color=7; +update habits set color=9 where color=6; +update habits set color=8 where color=5; +update habits set color=7 where color=4; +update habits set color=5 where color=3; +update habits set color=4 where color=2; +update habits set color=0 where color<0 or color>19; \ No newline at end of file diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/utils/ColorUtils.java b/uhabits-android/src/main/java/org/isoron/uhabits/utils/ColorUtils.java index 16845892f..d75e3f1a8 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/utils/ColorUtils.java +++ b/uhabits-android/src/main/java/org/isoron/uhabits/utils/ColorUtils.java @@ -26,7 +26,7 @@ import android.util.*; public abstract class ColorUtils { public static int colorToPaletteIndex(Context context, int color) - { + { StyledResources res = new StyledResources(context); int[] palette = res.getPalette(); @@ -40,18 +40,25 @@ public abstract class ColorUtils { int palette[] = { Color.parseColor("#D32F2F"), // 0 red - Color.parseColor("#E64A19"), // 1 orange - Color.parseColor("#F9A825"), // 2 yellow - Color.parseColor("#AFB42B"), // 3 light green - Color.parseColor("#388E3C"), // 4 dark green - Color.parseColor("#00897B"), // 5 teal - Color.parseColor("#00ACC1"), // 6 cyan - Color.parseColor("#039BE5"), // 7 blue - Color.parseColor("#5E35B1"), // 8 deep purple - Color.parseColor("#8E24AA"), // 9 purple - Color.parseColor("#D81B60"), // 10 pink - Color.parseColor("#303030"), // 11 dark grey - Color.parseColor("#aaaaaa") // 12 light grey + Color.parseColor("#E64A19"), // 1 deep orange + Color.parseColor("#F57C00"), // 2 orange + Color.parseColor("#FF8F00"), // 3 amber + Color.parseColor("#F9A825"), // 4 yellow + Color.parseColor("#AFB42B"), // 5 lime + Color.parseColor("#7CB342"), // 6 light green + Color.parseColor("#388E3C"), // 7 green + Color.parseColor("#00897B"), // 8 teal + Color.parseColor("#00ACC1"), // 9 cyan + Color.parseColor("#039BE5"), // 10 light blue + Color.parseColor("#1976D2"), // 11 blue + Color.parseColor("#303F9F"), // 12 indigo + Color.parseColor("#5E35B1"), // 13 deep purple + Color.parseColor("#8E24AA"), // 14 purple + Color.parseColor("#D81B60"), // 15 pink + Color.parseColor("#5D4037"), // 16 brown + Color.parseColor("#303030"), // 17 dark grey + Color.parseColor("#757575"), // 18 grey + Color.parseColor("#aaaaaa") // 19 light grey }; return palette[index]; diff --git a/uhabits-android/src/main/res/values/colors.xml b/uhabits-android/src/main/res/values/colors.xml index 29616a09e..0905b9e3d 100644 --- a/uhabits-android/src/main/res/values/colors.xml +++ b/uhabits-android/src/main/res/values/colors.xml @@ -19,47 +19,68 @@ @color/red_700 @color/deep_orange_700 + @color/orange_700 + @color/amber_800 @color/yellow_800 @color/lime_700 + @color/light_green_600 @color/green_700 @color/teal_600 @color/cyan_600 @color/light_blue_600 + @color/blue_700 + @color/indigo_700 @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/amber_100 @color/yellow_200 @color/lime_200 + @color/light_green_200 @color/green_A200 @color/teal_200 @color/cyan_200 @color/light_blue_200 + @color/blue_300 + @color/indigo_200 @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/amber_800 @color/yellow_800 @color/lime_800 + @color/light_green_600 @color/green_700 @color/teal_700 @color/cyan_700 @color/light_blue_700 + @color/blue_800 + @color/indigo_800 @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/uhabits-core/src/main/java/org/isoron/uhabits/core/utils/ColorConstants.java b/uhabits-core/src/main/java/org/isoron/uhabits/core/utils/ColorConstants.java index 0f4d97244..a49726ab9 100644 --- a/uhabits-core/src/main/java/org/isoron/uhabits/core/utils/ColorConstants.java +++ b/uhabits-core/src/main/java/org/isoron/uhabits/core/utils/ColorConstants.java @@ -2,19 +2,26 @@ package org.isoron.uhabits.core.utils; public class ColorConstants { - public static String[] CSV_PALETTE = { + 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 + "#E64A19", // 1 deep orange + "#F57C00", // 2 orange + "#FF8F00", // 3 amber + "#F9A825", // 4 yellow + "#AFB42B", // 5 lime + "#7CB342", // 6 light green + "#388E3C", // 7 green + "#00897B", // 8 teal + "#00ACC1", // 9 cyan + "#039BE5", // 10 light blue + "#1976D2", // 11 blue + "#303F9F", // 12 indigo + "#5E35B1", // 13 deep purple + "#8E24AA", // 14 purple + "#D81B60", // 15 pink + "#5D4037", // 16 brown + "#303030", // 17 dark grey + "#757575", // 18 grey + "#aaaaaa" // 19 light grey }; } diff --git a/uhabits-core/src/test/java/org/isoron/uhabits/core/models/HabitListTest.java b/uhabits-core/src/test/java/org/isoron/uhabits/core/models/HabitListTest.java index ee1c70e92..06a560763 100644 --- a/uhabits-core/src/test/java/org/isoron/uhabits/core/models/HabitListTest.java +++ b/uhabits-core/src/test/java/org/isoron/uhabits/core/models/HabitListTest.java @@ -218,8 +218,8 @@ public class HabitListTest extends BaseUnitTest String expectedCSV = "Position,Name,Description,NumRepetitions,Interval,Color\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"; + "001,Meditate,Did you meditate this morning?,1,1,#FF8F00\n" + + "002,Wake up early,Did you wake up before 6am?,2,3,#AFB42B\n"; StringWriter writer = new StringWriter(); list.writeCSV(writer);