From 5eef1b9aa383afdd0d59a49703f162fc1564d7ba Mon Sep 17 00:00:00 2001 From: xinkev <11447571+xinkev@users.noreply.github.com> Date: Wed, 25 Feb 2026 17:26:46 +0900 Subject: [PATCH 1/6] fix: Handle missing colorError attribute on Nougat This prevents crash on Nougat. AppDetailAdapter.kt referenced android.R.attr.colorError, introduced in API 26. --- .../com/looker/droidify/ui/appDetail/AppDetailAdapter.kt | 3 ++- app/src/main/res/values-v26/themes.xml | 6 ++++++ app/src/main/res/values/attrs.xml | 4 ++++ app/src/main/res/values/base_theme.xml | 1 + app/src/main/res/values/colors.xml | 1 + 5 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 app/src/main/res/values-v26/themes.xml create mode 100644 app/src/main/res/values/attrs.xml diff --git a/app/src/main/kotlin/com/looker/droidify/ui/appDetail/AppDetailAdapter.kt b/app/src/main/kotlin/com/looker/droidify/ui/appDetail/AppDetailAdapter.kt index c20c6084c..daad5916e 100644 --- a/app/src/main/kotlin/com/looker/droidify/ui/appDetail/AppDetailAdapter.kt +++ b/app/src/main/kotlin/com/looker/droidify/ui/appDetail/AppDetailAdapter.kt @@ -31,6 +31,7 @@ import androidx.core.graphics.createBitmap import androidx.core.net.toUri import androidx.core.text.bold import androidx.core.text.buildSpannedString +import androidx.core.util.TypedValueCompat import androidx.core.view.isGone import androidx.core.view.isVisible import androidx.recyclerview.widget.LinearLayoutManager @@ -448,7 +449,7 @@ class AppDetailAdapter(private val callbacks: Callbacks) : val actionTintNormal = button.context.getColorFromAttr(android.R.attr.colorPrimary) val actionTintOnNormal = button.context.getColorFromAttr(MaterialR.attr.colorOnPrimary) - val actionTintCancel = button.context.getColorFromAttr(android.R.attr.colorError) + val actionTintCancel = button.context.getColorFromAttr(R.attr.colorError) val actionTintOnCancel = button.context.getColorFromAttr(MaterialR.attr.colorOnError) val actionTintDisabled = button.context.getColorFromAttr(MaterialR.attr.colorOutline) val actionTintOnDisabled = button.context.getColorFromAttr(android.R.attr.colorBackground) diff --git a/app/src/main/res/values-v26/themes.xml b/app/src/main/res/values-v26/themes.xml new file mode 100644 index 000000000..63dc7d63f --- /dev/null +++ b/app/src/main/res/values-v26/themes.xml @@ -0,0 +1,6 @@ + + + + diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml new file mode 100644 index 000000000..27f4f4a43 --- /dev/null +++ b/app/src/main/res/values/attrs.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/values/base_theme.xml b/app/src/main/res/values/base_theme.xml index 9fd155e25..e0aec1188 100644 --- a/app/src/main/res/values/base_theme.xml +++ b/app/src/main/res/values/base_theme.xml @@ -4,5 +4,6 @@ @color/md_theme_l_background ?android:attr/colorBackground ?android:attr/colorBackground + #FC3E1B diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index cc798e2a4..38f2b4486 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -1,6 +1,7 @@ #000000 + #416835 #FFFFFF From 902a9ae2a66be531f2a1ed18139d3404624fd2cf Mon Sep 17 00:00:00 2001 From: xinkev <11447571+xinkev@users.noreply.github.com> Date: Sun, 1 Mar 2026 17:46:15 +0900 Subject: [PATCH 2/6] chore: Rename values-v26/themes.xml to values-v26/base_theme.xml --- app/src/main/res/values-v26/{themes.xml => base_theme.xml} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename app/src/main/res/values-v26/{themes.xml => base_theme.xml} (82%) diff --git a/app/src/main/res/values-v26/themes.xml b/app/src/main/res/values-v26/base_theme.xml similarity index 82% rename from app/src/main/res/values-v26/themes.xml rename to app/src/main/res/values-v26/base_theme.xml index 63dc7d63f..8e66ecaf2 100644 --- a/app/src/main/res/values-v26/themes.xml +++ b/app/src/main/res/values-v26/base_theme.xml @@ -1,6 +1,6 @@ - From cdcda20ab3c8b7ee5954b41ee3b3b2ed314eb3ba Mon Sep 17 00:00:00 2001 From: xinkev <11447571+xinkev@users.noreply.github.com> Date: Sun, 1 Mar 2026 18:02:41 +0900 Subject: [PATCH 3/6] chore: Remove redundant color entry colorError --- app/src/main/res/values/colors.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 38f2b4486..cc798e2a4 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -1,7 +1,6 @@ #000000 - #416835 #FFFFFF From 9b2f51eea84eeff0df22dcd76c2cf39b8398e30f Mon Sep 17 00:00:00 2001 From: xinkev <11447571+xinkev@users.noreply.github.com> Date: Sun, 1 Mar 2026 18:06:18 +0900 Subject: [PATCH 4/6] style: use base theme inheritance for API 26+ colorError override --- app/src/main/res/values-v26/base_theme.xml | 2 +- app/src/main/res/values/base_theme.xml | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/app/src/main/res/values-v26/base_theme.xml b/app/src/main/res/values-v26/base_theme.xml index 8e66ecaf2..b8933de56 100644 --- a/app/src/main/res/values-v26/base_theme.xml +++ b/app/src/main/res/values-v26/base_theme.xml @@ -1,6 +1,6 @@ - diff --git a/app/src/main/res/values/base_theme.xml b/app/src/main/res/values/base_theme.xml index e0aec1188..82d3d85a8 100644 --- a/app/src/main/res/values/base_theme.xml +++ b/app/src/main/res/values/base_theme.xml @@ -1,9 +1,11 @@ - + From c6aaa1b744849fd4264815295effba5aee1d0975 Mon Sep 17 00:00:00 2001 From: xinkev <11447571+xinkev@users.noreply.github.com> Date: Sun, 1 Mar 2026 18:42:07 +0900 Subject: [PATCH 5/6] refactor(theme): add colorError style to night theme - Rename Base.MainTheme to Base.MainTheme.Light - Add Base.MainTheme.Night to dark night theme - Add colorError style to night themes --- app/src/main/res/values-night-v26/base_theme.xml | 6 ++++++ app/src/main/res/values-night/base_theme.xml | 5 ++++- app/src/main/res/values-v26/base_theme.xml | 2 +- app/src/main/res/values/base_theme.xml | 6 +++--- 4 files changed, 14 insertions(+), 5 deletions(-) create mode 100644 app/src/main/res/values-night-v26/base_theme.xml diff --git a/app/src/main/res/values-night-v26/base_theme.xml b/app/src/main/res/values-night-v26/base_theme.xml new file mode 100644 index 000000000..fa9e95dfe --- /dev/null +++ b/app/src/main/res/values-night-v26/base_theme.xml @@ -0,0 +1,6 @@ + + + + diff --git a/app/src/main/res/values-night/base_theme.xml b/app/src/main/res/values-night/base_theme.xml index 636cbc9ff..74bde7722 100644 --- a/app/src/main/res/values-night/base_theme.xml +++ b/app/src/main/res/values-night/base_theme.xml @@ -1,8 +1,11 @@ - + diff --git a/app/src/main/res/values-v26/base_theme.xml b/app/src/main/res/values-v26/base_theme.xml index b8933de56..209ba9f95 100644 --- a/app/src/main/res/values-v26/base_theme.xml +++ b/app/src/main/res/values-v26/base_theme.xml @@ -1,6 +1,6 @@ - diff --git a/app/src/main/res/values/base_theme.xml b/app/src/main/res/values/base_theme.xml index 82d3d85a8..b2024a5f8 100644 --- a/app/src/main/res/values/base_theme.xml +++ b/app/src/main/res/values/base_theme.xml @@ -1,11 +1,11 @@ - - From c9171f167ebd4057a42bb88537ea497635849404 Mon Sep 17 00:00:00 2001 From: xinkev <11447571+xinkev@users.noreply.github.com> Date: Sun, 1 Mar 2026 18:44:29 +0900 Subject: [PATCH 6/6] style: use md_theme_l_error for light theme colorError --- app/src/main/res/values/base_theme.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/values/base_theme.xml b/app/src/main/res/values/base_theme.xml index b2024a5f8..89c74fffb 100644 --- a/app/src/main/res/values/base_theme.xml +++ b/app/src/main/res/values/base_theme.xml @@ -6,6 +6,6 @@ @color/md_theme_l_background