From 3442b865d2da71ab8dd5e337609c3a359735c737 Mon Sep 17 00:00:00 2001 From: Robert Goldmann <deadlocker@gmx.de> Date: Sat, 26 Feb 2022 12:16:12 +0100 Subject: [PATCH] Fixed default icon color for templates --- .../deadlocker8/budgetmaster/accounts/Account.java | 6 ++++++ .../budgetmaster/categories/Category.java | 14 ++++++++++++++ .../deadlocker8/budgetmaster/icon/Iconizable.java | 2 ++ .../budgetmaster/templates/Template.java | 8 ++++---- src/main/resources/static/js/fontColorPicker.js | 2 +- .../templates/helpers/fontColorPicker.ftl | 1 + 6 files changed, 28 insertions(+), 5 deletions(-) diff --git a/src/main/java/de/deadlocker8/budgetmaster/accounts/Account.java b/src/main/java/de/deadlocker8/budgetmaster/accounts/Account.java index 768786ea4..bbe07a598 100644 --- a/src/main/java/de/deadlocker8/budgetmaster/accounts/Account.java +++ b/src/main/java/de/deadlocker8/budgetmaster/accounts/Account.java @@ -163,6 +163,12 @@ public class Account implements ProvidesID, Iconizable return fontColor; } + @Override + public String getDefaultFontColor(boolean isDarkTheme) + { + return ACCOUNT_FONT_COLOR; + } + @Override public String toString() { diff --git a/src/main/java/de/deadlocker8/budgetmaster/categories/Category.java b/src/main/java/de/deadlocker8/budgetmaster/categories/Category.java index 97818717d..7f2b26dc4 100644 --- a/src/main/java/de/deadlocker8/budgetmaster/categories/Category.java +++ b/src/main/java/de/deadlocker8/budgetmaster/categories/Category.java @@ -17,6 +17,9 @@ import java.util.Objects; @Entity public class Category implements ProvidesID, Iconizable { + private static final String FONT_COLOR_LIGHT_THEME = "#212121"; + private static final String FONT_COLOR_DARK_THEME = "#FFFFFF"; + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Expose @@ -127,6 +130,17 @@ public class Category implements ProvidesID, Iconizable return fontColor; } + @Override + public String getDefaultFontColor(boolean isDarkTheme) + { + if(isDarkTheme) + { + return FONT_COLOR_DARK_THEME; + } + + return FONT_COLOR_LIGHT_THEME; + } + public String getAppropriateTextColor() { return ColorUtilsNonJavaFX.getAppropriateTextColor(new Color(color)).toRGBHexWithoutOpacity(); diff --git a/src/main/java/de/deadlocker8/budgetmaster/icon/Iconizable.java b/src/main/java/de/deadlocker8/budgetmaster/icon/Iconizable.java index e0daf1b24..68d3aaf0d 100644 --- a/src/main/java/de/deadlocker8/budgetmaster/icon/Iconizable.java +++ b/src/main/java/de/deadlocker8/budgetmaster/icon/Iconizable.java @@ -32,4 +32,6 @@ public interface Iconizable extends ProvidesID } String getFontColor(boolean isDarkTheme); + + String getDefaultFontColor(boolean isDarkTheme); } diff --git a/src/main/java/de/deadlocker8/budgetmaster/templates/Template.java b/src/main/java/de/deadlocker8/budgetmaster/templates/Template.java index 07e532d79..b862f621c 100644 --- a/src/main/java/de/deadlocker8/budgetmaster/templates/Template.java +++ b/src/main/java/de/deadlocker8/budgetmaster/templates/Template.java @@ -221,19 +221,20 @@ public class Template implements TransactionBase, Iconizable final Icon icon = getIconReference(); if(icon == null) { - return getAppropriateTextColor(isDarkTheme); + return getDefaultFontColor(isDarkTheme); } final String fontColor = icon.getFontColor(); if(fontColor == null) { - return getAppropriateTextColor(isDarkTheme); + return getDefaultFontColor(isDarkTheme); } return fontColor; } - private String getAppropriateTextColor(boolean isDarkTheme) + @Override + public String getDefaultFontColor(boolean isDarkTheme) { if(isDarkTheme) { @@ -243,7 +244,6 @@ public class Template implements TransactionBase, Iconizable return FONT_COLOR_LIGHT_THEME; } - public List<Tag> getTags() { return tags; diff --git a/src/main/resources/static/js/fontColorPicker.js b/src/main/resources/static/js/fontColorPicker.js index a1db101f2..534545e8e 100644 --- a/src/main/resources/static/js/fontColorPicker.js +++ b/src/main/resources/static/js/fontColorPicker.js @@ -38,7 +38,7 @@ $(document).ready(function() } catch(e) { - appropriateColor = '#2E79B9'; + appropriateColor = fontColorPickerDefaultColor; } document.getElementById("item-icon-preview").style.color = appropriateColor; diff --git a/src/main/resources/templates/helpers/fontColorPicker.ftl b/src/main/resources/templates/helpers/fontColorPicker.ftl index 73af8584b..f0c466c1b 100644 --- a/src/main/resources/templates/helpers/fontColorPicker.ftl +++ b/src/main/resources/templates/helpers/fontColorPicker.ftl @@ -2,6 +2,7 @@ <#macro fontColorPicker item> <input type="hidden" name="fontColor" id="fontColor" value="${item.getFontColor(settings.isUseDarkTheme())}"> + <script>fontColorPickerDefaultColor = "${item.getDefaultFontColor(settings.isUseDarkTheme())}"</script> <div class="row"> <div class="input-field col s12 m12 l8 offset-l2"> -- GitLab