feat(design): 主色改靛蓝 #4F46E5,Web 与安卓及 Logo 同步
CI / backend (push) Canceled after 0s

- primary 换成 Indigo 阶(600 即 #4F46E5),中性色转 Slate 轴、纸面更冷更白
- 实心主色面(主按钮、工作区选中)用 600,链接/浅底文字仍用 700 保对比度
- 信息色 sky 调深到 #16697C,与靛蓝同屏能分清
- Logo / favicon / PWA 图标 / 安卓自适应图标统一为靛蓝底 + 白线 + 淡紫点,tools/make-icons.py 重新生成
- 文档与 e2e 断言同步(主题色 #4f46e5)
This commit is contained in:
2026-11-02 15:33:26 +08:00
parent 288e27e465
commit d7c9670880
22 changed files with 78 additions and 78 deletions
@@ -329,7 +329,7 @@ private fun KnowledgeBody(text: String) {
setTextIsSelectable(true)
textSize = 14f
setLineSpacing(0f, 1.5f)
setTextColor(android.graphics.Color.parseColor("#262D39"))
setTextColor(android.graphics.Color.parseColor("#1E293B"))
markwon.setMarkdown(this, text)
}
},
@@ -350,7 +350,7 @@ private fun PreviewBody(
textSize = 15f
setPadding(0, 0, 0, 0)
setLineSpacing(0f, 1.5f)
setTextColor(android.graphics.Color.parseColor("#4E5867"))
setTextColor(android.graphics.Color.parseColor("#475569"))
markwon.setMarkdown(this, text)
}
},
@@ -13,22 +13,22 @@ import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
/**
* 与 Web 端 tailwind.config.js 同一套色板:暖白纸面 + 景泰蓝主色 + 陶土橙强调。
* 与 Web 端 tailwind.config.js 同一套色板:冷白纸面 + 靛蓝主色(#4F46E5)+ 陶土橙强调。
* 两端看同一张截图时,颜色应该能对上,所以这里的值不要单独调。
*/
val Paper = Color(0xFFF9FAFC)
val PaperSunken = Color(0xFFF3F5F9)
val Line = Color(0xFFE2E6EC)
val LineStrong = Color(0xFFD3D9E1)
val Paper = Color(0xFFFAFAFC)
val PaperSunken = Color(0xFFF4F5F9)
val Line = Color(0xFFE3E7EF)
val LineStrong = Color(0xFFD5DAE4)
val Ink = Color(0xFF262D39)
val InkSoft = Color(0xFF4E5867)
val InkMuted = Color(0xFF5F6B7C)
val Ink = Color(0xFF1E293B)
val InkSoft = Color(0xFF475569)
val InkMuted = Color(0xFF64748B)
val Primary = Color(0xFF274B73)
val PrimaryDeep = Color(0xFF1F3B5B)
val PrimarySoft = Color(0xFFDCE9F7)
val PrimaryTint = Color(0xFFB9D3EC)
val Primary = Color(0xFF4F46E5)
val PrimaryDeep = Color(0xFF4338CA)
val PrimarySoft = Color(0xFFE0E7FF)
val PrimaryTint = Color(0xFFC7D2FE)
val Clay = Color(0xFFC2703D)
val ClaySoft = Color(0xFFFBEADF)
@@ -39,7 +39,7 @@ val Wheat = Color(0xFFA97C25)
val WheatSoft = Color(0xFFF8EED7)
val Rust = Color(0xFFB04A32)
val RustSoft = Color(0xFFFBE5DF)
val Sky = Color(0xFF1E7F94)
val Sky = Color(0xFF16697C)
val SkySoft = Color(0xFFE6F4F6)
private val colors = lightColorScheme(
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- 自适应图标前景:与 Web Logo 同一套比例(108 画布,安全区 66 居中) -->
<!-- 自适应图标前景:与 Web Logo 同一套比例(108 画布,安全区 66 居中;靛蓝底上的白线与淡紫点) -->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="108dp"
android:height="108dp"
@@ -7,20 +7,20 @@
android:viewportHeight="108">
<path
android:pathData="M36.3,42.6 L71.7,42.6"
android:strokeColor="#EAF3FB"
android:strokeColor="#FFFFFF"
android:strokeWidth="5.06"
android:strokeLineCap="round" />
<path
android:pathData="M36.3,54 L59.6,54"
android:strokeColor="#EAF3FB"
android:strokeColor="#FFFFFF"
android:strokeWidth="5.06"
android:strokeLineCap="round" />
<path
android:pathData="M36.3,65.4 L50.8,65.4"
android:strokeColor="#EAF3FB"
android:strokeColor="#FFFFFF"
android:strokeWidth="5.06"
android:strokeLineCap="round" />
<path
android:fillColor="#5CA8E8"
android:fillColor="#C7D2FE"
android:pathData="M71.7,65.4 m-7.6,0 a7.6,7.6 0 1,0 15.2,0 a7.6,7.6 0 1,0 -15.2,0" />
</vector>
+2 -2
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- 与 Web 端 Logo(web/src/components/icons.tsx 的 <Logo/>)同一个景泰蓝 -->
<color name="ic_launcher_background">#274B73</color>
<!-- 与 Web 端 Logo(web/src/components/icons.tsx 的 <Logo/>)同一个靛蓝 -->
<color name="ic_launcher_background">#4F46E5</color>
</resources>
+2 -2
View File
@@ -2,7 +2,7 @@
<resources>
<!-- Compose 自己管配色,这里只提供无 ActionBar 的容器主题 -->
<style name="Theme.DadaoTask" parent="android:Theme.Material.Light.NoActionBar">
<item name="android:statusBarColor">#274B73</item>
<item name="android:windowBackground">#F9FAFC</item>
<item name="android:statusBarColor">#4F46E5</item>
<item name="android:windowBackground">#FAFAFC</item>
</style>
</resources>