Theme: move hard-coded colours into tokens, prepare a light or high-contrast variant
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 47/100
Hướng nghiên cứu
Start with Theme/Tokens.axaml and Theme/Styles.axaml, then use the file counts and colour values in the issue to locate hard-coded colours across the listed views. Compare each value with existing tokens and move the colours into tokens while preserving their rendered values. Check that views use the appropriate resources and compare before and after renders for pixel identity; the issue says the light or high-contrast variant and setting are separate steps.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Split out of #605, whose wording half shipped on its own (#678, #679).
Problem
App.axaml:5hard-locksRequestedThemeVariant="Dark".Theme/Tokens.axamlis one flatResourceDictionarywith noThemeDictionaries: 25Colors and 26 brushes.- Views hard-code hex colours instead of using the tokens.
Direct sun or glare in a vehicle calls for a light or high-contrast variant. Today that is not possible without touching every view.
Survey (main at 95a6845)
There are 114 hard-coded colour values in .axaml outside Tokens.axaml. That count excludes #123 issue references in comments.
| File | Count |
|---|---|
Theme/Styles.axaml |
39 |
Views/CoMessprotokollView.axaml |
15 |
Views/MasterDataEditorView.axaml |
12 |
Views/EtbView.axaml |
7 |
Views/RolesView.axaml |
6 |
Views/TasksView.axaml, Views/ForcesView.axaml |
4 each |
ScbaView, HomeView, FilesView |
3 each |
| 12 more views | 1–2 each |
The most common values:
| Value | Uses | Token with the same value? |
|---|---|---|
#0F141D |
25 | none (closest: AppBgColor2 #10141C) |
#0C1119 |
25 | none |
#241608 |
10 | AmberWashColor |
#F87171 |
8 | ErrorColor |
#FFFFFF |
7 | none |
#B3070A10 |
7 | none (scrim) |
#2A1013 |
3 | ErrorWashColor |
#FF0000, #92D050, #FFC000 |
3 / 3 / 1 | none (CO-Messprotokoll status colours) |
C# has hex colours only for the CO-Messprotokoll:
CoMessprotokollViewModel.csuses the status colours as string literals.Documents/Sections/CoMessprotokollSection.csduplicates the Amber, SignalHot and Signal tokens for the PDF. The PDF is not themed, so that part can stay.
Plan
- Tokens first, no visual change. Move every hard-coded colour into
Tokens.axaml, reusing the existing token where the value matches. Give#0F141D/#0C1119(panel and grid backgrounds) and the scrim their own tokens. A before/after render of every view should be pixel-identical. ThemeDictionaries. Move the tokens underDark, and switch views fromStaticResourcetoDynamicResourcewhere a variant has to swap at runtime.- A light or high-contrast variant, plus a setting to pick it. This needs a palette decision, ideally checked in a vehicle in daylight.
Each step can be its own PR.
- Ngôn ngữ chính
- C#
- Star
- 1
- Fork
- 3
- Merge trung bình
- 4 giờ 34 phút
- Pull request đã merge (30 ngày)
- 182
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của CodeForFire/lagebuch
-
bug ux
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
CodeForFire/lagebuch#714 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug ux
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
CodeForFire/lagebuch#713 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
CodeForFire/lagebuch#405 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
documentation good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
CodeForFire/lagebuch#349 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
documentation good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
CodeForFire/lagebuch#348 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của CodeForFire/lagebuch
Issue tương tự
-
/api/oauth/introspect emits clientId and tokenType instead of RFC 7662's client_id and token_typeĐang mởbug P2
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
nightscout/nocturne#2317 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[BUG]: Position intent set on a simple order is dropped when it becomes a bracket, OCO or OTO orderCó thể đã có người làm @RaphaelFakhri đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
alpacahq/alpaca-trade-api-csharp#903 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 64/100
joinrpg/joinrpg-net#5752 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
dimitar-radenkov/Pointframe#294 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
kind/feature-request
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Altinn/altinn-correspondence#2154 ·
Maintainer thường phản hồi trong vòng 1 ngày