11import type { ComponentContext } from "dreamland/core" ;
2+ import { css } from "dreamland/core" ;
23import { TabStrip } from "./components/TabStrip/TabStrip" ;
34import { browser } from "./Browser" ;
4- import type { Tab } from "./Tab" ;
5+ import { Tab } from "./Tab" ;
56import { BookmarksStrip } from "./components/BookmarksStrip" ;
67import { Omnibar } from "./components/Omnibar/Omnibar" ;
78
@@ -32,6 +33,40 @@ export function App(props: {}, cx: ComponentContext) {
3233
3334 use ( browser . settings . theme ) . listen ( applyTheme ) ;
3435
36+ const theme = {
37+ frame : "#1c1b22" ,
38+ tab_selected : "#42414d" ,
39+ tab_background_text : "white" ,
40+ toolbar : "#2b2a33" ,
41+ toolbar_text : "white" ,
42+ toolbar_field : "#1C1B22" ,
43+ toolbar_field_text : "white" ,
44+ icons : "white" ,
45+ ntp_background : "#121117" ,
46+ ntp_text : "white" ,
47+
48+ // toolbar_text: "rgb(236, 191, 189)",
49+ // frame: "rgb(30, 30, 40)",
50+ // tab_background_text: "rgb(215, 218, 224)",
51+ // toolbar_field: "rgb(30, 30, 40)",
52+ // toolbar_field_text: "rgb(236, 191, 189)",
53+ // tab_line: "rgb(236, 191, 189)",
54+ // popup: "rgb(30, 30, 40)",
55+ // popup_text: "rgb(236, 191, 189)",
56+ // icons: "rgb(198, 170, 232)",
57+ // ntp_background: "rgb(21, 18, 28)",
58+ // ntp_text: "rgb(164, 185, 239)",
59+ // popup_border: "rgb(236, 191, 189)",
60+ // toolbar_top_separator: "rgb(30, 30, 40)",
61+ // tab_loading: "rgb(236, 191, 189)",
62+ } ;
63+
64+ cx . mount = ( ) => {
65+ for ( const [ key , value ] of Object . entries ( theme ) ) {
66+ document . body . style . setProperty ( `--${ key } ` , value ) ;
67+ }
68+ } ;
69+
3570 return (
3671 < div id = "app" >
3772 < TabStrip
@@ -48,8 +83,18 @@ export function App(props: {}, cx: ComponentContext) {
4883 { use ( browser . activetab . url , browser . settings . showBookmarksBar )
4984 . map ( ( [ u , pinned ] ) => pinned || u . href === "puter://newtab" )
5085 . andThen ( < BookmarksStrip /> ) }
51- < div style = "border-bottom: 1px solid var(--bg20) "> </ div >
86+ < div class = "separator "> </ div >
5287 { cx . children }
5388 </ div >
5489 ) ;
5590}
91+ App . style = css `
92+ : scope {
93+ background-color : var (--toolbar );
94+ --separator-color : color-mix (in srgb, currentColor 10% , transparent);
95+ }
96+ .separator {
97+ color : var (--toolbar );
98+ /*border-bottom: 1px solid var(--separator-color);*/
99+ }
100+ ` ;
0 commit comments