Add Solarized Dark theme (#7852)

* Add Solarized Dark theme

* Add attribution

* Make Solarized Dark pass the theme checks and register it in the new theme order

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Theme filter test: count the new Solarized Dark theme

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: bherbruck <brennen.herbruck@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
authored and GitHub committed 2026-11-06 17:09:34 +00:00
1 parent c571a133dc
commit 73e188df52
3 files changed
+221 -2

No files matched your search

+1
View File
@@ -213,6 +213,7 @@ Editable drawing code, native projects and shipped exports are collected under `
| assets/styles/ui/themes/one-dark.json | SolidCraft contributors | original SolidCraft theme file with colours adapted from the One Dark palette (Atom One Dark by GitHub Atom, https://github.com/atom/atom, MIT) | MIT OR Apache-2.0 |
| assets/styles/ui/themes/tokyo-night.json | SolidCraft contributors | original SolidCraft theme file adapting the colours of a published palette (Tokyo Night by enkia, https://github.com/enkia/tokyo-night-vscode-theme, MIT) | MIT OR Apache-2.0 |
| assets/styles/ui/themes/solarized-light.json | SolidCraft contributors | original SolidCraft theme file adapting the colours of a published palette (Solarized by Ethan Schoonover, https://github.com/altercation/solarized, MIT) | MIT OR Apache-2.0 |
| assets/styles/ui/themes/solarized-dark.json | SolidCraft contributors | original SolidCraft theme file adapting the colours of a published palette (Solarized by Ethan Schoonover, https://github.com/altercation/solarized, MIT) | MIT OR Apache-2.0 |
| assets/styles/ui/themes/nord.json | SolidCraft contributors | original SolidCraft theme file adapting the colours of a published palette (Nord by Sven Greb and the Nord contributors, https://github.com/nordtheme/nord, MIT) | MIT OR Apache-2.0 |
| assets/styles/ui/themes/high-contrast.json | SolidCraft contributors | original SolidCraft theme file | MIT OR Apache-2.0 |
| assets/styles/ui/themes/graphite.json | SolidCraft contributors | original SolidCraft theme file | MIT OR Apache-2.0 |
+218
View File
@@ -0,0 +1,218 @@
{
"order": 155,
"provenance": "Original SolidCraft mapping of Solarized (MIT palette)",
"base": "dark",
"borders": {},
"colors": {
"accent": "#268bd2",
"accent_soft": "#073642",
"agent_busy": "#268bd2",
"agent_ok": "#859900",
"app_bar": "#002b36",
"app_bar_hover": "#073642",
"app_bar_hover_button": "#073642",
"app_bar_hover_strong": "#586e75",
"app_bar_hover_subtle": "#073642",
"app_bar_separator": "#586e75",
"app_bar_tab_active": "#073642",
"app_bar_text": "#93a1a1",
"axis_x": "#dc322f",
"axis_y": "#859900",
"axis_z": "#346e88",
"bend_down": "#b58900",
"bend_up": "#859900",
"body": "#586e75",
"body_edge": "#346e88",
"body_selected": "#073642",
"border": "#586e75",
"box_crossing": "#859900",
"box_window": "#268bd2",
"chip": "#268bd2",
"construction_geom": "#cb4b16",
"construction_plane": "#b4870022",
"continuity": [
"#859900",
"#346e88",
"#b58900",
"#6c71c4"
],
"control_border": "#586e75",
"control_fill": "#073642",
"cube_border": "#586e75",
"cube_face": "#073642",
"cube_hover": "#586e75",
"cube_text": "#93a1a1",
"dialog_bg": "#073642",
"dialog_body": "#073642",
"dialog_border": "#586e75",
"dialog_footer": "#073642",
"dialog_label": "#93a1a1",
"dialog_rule": "#586e75",
"dimension": "#2aa198",
"dimension_driven": "#1f7f78",
"error": "#dc322f",
"field": "#002b36",
"file_background": "#073642",
"file_border": "#586e75",
"file_dim": "#93a1a1",
"file_image_tint": "#002b36",
"file_primary": "#586e75",
"file_primary_border": "#268bd2",
"file_primary_ink": "#ffffff",
"file_rail": "#1b6397",
"file_rail_hover": "#2670a6",
"file_rail_ink": "#ffffff",
"file_recovery": "#073642",
"file_recovery_border": "#b58900",
"file_recovery_ink": "#93a1a1",
"file_recovery_well": "#002b36",
"file_surface": "#073642",
"form_accent": "#6b70c3",
"form_dim": "#839496",
"form_error": "#dc322f",
"form_error_fill": "#586e75",
"form_fill": "#a2a9f8",
"form_ink": "#93a1a1",
"form_primary": "#268bd2",
"form_soft": "#073642",
"form_success": "#859900",
"form_success_fill": "#586e75",
"form_tab_ink": "#565a9d",
"glyph_bg": "#073642",
"glyph_edge": "#da2f2d",
"glyph_text": "#da2f2d",
"grid": "#073642",
"grid_major": "#586e75",
"hover": "#586e75",
"hover_edge": "#346e88",
"hover_edge_halo": "#002b36",
"hover_profile": "#268cd228",
"hover_profile_edge": "#346e88",
"icon": "#93a1a1",
"icons.agent": "#6c71c4",
"icons.highlight": "#93a1a1",
"icons.marker_halo": "#002b36cc",
"interference": "#dc322f",
"logo": [
"#268bd2",
"#346e88",
"#586e75"
],
"manipulator": "#268bd2",
"mesh_accent": "#97751d",
"mesh_fill": "#d7aa3c",
"mesh_ink": "#7b5d00",
"mesh_soft": "#073642",
"on_accent": "#ffffff",
"origin_plane": "#b3860028",
"origin_plane_edge": "#b6890088",
"origin_plane_hover": "#288bd340",
"origin_point": "#839496",
"overlay": "#073642",
"panel": "#073642",
"panel_header": "#002b36",
"preview_add": "#346e88",
"preview_cut": "#dc323066",
"preview_new": "#b58900",
"preview_sketch": "#859900",
"profile_fill": "#35718722",
"render_accent": "#cf317e",
"render_fill": "#f986b4",
"render_ink": "#ad2c6b",
"render_soft": "#073642",
"rubber_band": "#268bd2",
"section_cap": "#b58900",
"sel_edge": "#346e88",
"sel_edge_rim": "#346e88",
"sel_face": "#073642",
"sel_profile": "#073642",
"sel_profile_edge": "#346e88",
"sel_vertex": "#346e88",
"selected_bg": "#0a3e50",
"selected_ink": "#93a1a1",
"sheet_fill": "#58c6bc",
"sheet_ink": "#1d6d67",
"sheet_soft": "#073642",
"sketch": "#346e88",
"sketch_accent": "#738400",
"sketch_centerline": "#b58900",
"sketch_construction": "#b58900",
"sketch_fixed": "#93a1a1",
"sketch_halo": "#002b36",
"sketch_ink": "#5a6800",
"sketch_locked": "#859900",
"sketch_lost": "#dc322f",
"sketch_point": "#93a1a1",
"sketch_point_free": "#346e88",
"sketch_projected": "#6c71c4",
"sketch_soft": "#073642",
"surface_accent": "#cb4b16",
"surface_fill": "#fb906b",
"surface_ink": "#a83e12",
"surface_soft": "#073642",
"tab_on_fill_dark": "#002b36",
"text": "#93a1a1",
"text_dim": "#839496",
"timeline": "#073642",
"timeline_item": "#073642",
"timeline_item_error": "#eabcad",
"timeline_marker": "#839496",
"toolbar": "#073642",
"viewport_bottom": "#002b36",
"viewport_top": "#002b36",
"warning": "#b58900"
},
"format": "solidcraft-theme/1",
"icon_palette": {
"constraint": [
"#fee0dc",
"#fb8d81",
"#da2f2d"
],
"construction": [
"#fee1d7",
"#fb906b",
"#cb4b16"
],
"form": [
"#e3e6fe",
"#a2a9f8",
"#6b70c3"
],
"guide": "#839496",
"ink": "#fdf6e3",
"line": "#93a1a1",
"mesh": [
"#fde5b2",
"#d7aa3c",
"#97751d"
],
"passive-1": "#586e75",
"passive-2": "#073642",
"passive-3": "#002b36",
"sketch": [
"#def67b",
"#a8be40",
"#738400"
],
"solid": [
"#d5ebff",
"#67b9fb",
"#1480c6"
],
"surface": [
"#fee1d7",
"#fb906b",
"#cb4b16"
]
},
"name": "Solarized Dark",
"radii": {
"control_radius": 6,
"radius_lg": 8,
"radius_md": 6,
"radius_sm": 4,
"radius_xl": 10,
"sketch_mode_radius": 7
}
}
+2 -2
View File
@@ -4343,8 +4343,8 @@ mod tests {
crate::theme_files::add(&mut app.preferences.custom_themes, file).unwrap();
let entries = theme_picker::entries(&app);
let state = theme_picker::State { tone: Some(true), high: Some(false), imported: false, ..Default::default() };
assert_eq!((state.count(&entries, "tone", false), state.count(&entries, "tone", true)), (8, 14));
assert_eq!((state.count(&entries, "contrast", false), state.count(&entries, "contrast", true)), (14, 4));
assert_eq!((state.count(&entries, "tone", false), state.count(&entries, "tone", true)), (8, 15));
assert_eq!((state.count(&entries, "contrast", false), state.count(&entries, "contrast", true)), (15, 4));
assert_eq!(state.count(&entries, "imported", true), 0);
let state = theme_picker::State { high: Some(true), imported: true, ..state };
assert_eq!(state.count(&entries, "tone", true), 1);