Add high contrast theme
This commit is contained in:
parent
d0cb6d3da4
commit
ffba11a565
3 changed files with 43 additions and 4 deletions
37
public/css/themes/high_contrast.css
Normal file
37
public/css/themes/high_contrast.css
Normal file
|
@ -0,0 +1,37 @@
|
|||
body {
|
||||
--bg_color: #000000;
|
||||
--fg_color: #FFFFFF;
|
||||
--fg_faded: #FFFFFFD4;
|
||||
--fg_dark: var(--accent);
|
||||
--fg_nav: var(--accent);
|
||||
|
||||
--bg_panel: #0C0C0C;
|
||||
--bg_elements: #000000;
|
||||
--bg_overlays: var(--bg_panel);
|
||||
--bg_hover: #131313;
|
||||
|
||||
--grey: #E2E2E2;
|
||||
--dark_grey: #4E4E4E;
|
||||
--darker_grey: #272727;
|
||||
--darkest_grey: #212121;
|
||||
--border_grey: #7D7D7D;
|
||||
|
||||
--accent: #FF6C60;
|
||||
--accent_light: #FFACA0;
|
||||
--accent_dark: #909090;
|
||||
--accent_border: #FF6C6091;
|
||||
|
||||
--play_button: var(--accent);
|
||||
--play_button_hover: var(--accent_light);
|
||||
|
||||
--more_replies_dots: #A7A7A7;
|
||||
--error_red: #420A05;
|
||||
|
||||
--verified_blue: #1DA1F2;
|
||||
--icon_text: var(--fg_color);
|
||||
|
||||
--tab: var(--fg_color);
|
||||
--tab_selected: var(--accent);
|
||||
|
||||
--profile_stat: var(--fg_color);
|
||||
}
|
|
@ -10,7 +10,8 @@ export preferences
|
|||
|
||||
proc findThemes*(dir: string): seq[string] =
|
||||
for kind, path in walkDir(dir / "css" / "themes"):
|
||||
result.add path.splitFile.name.capitalizeAscii
|
||||
let theme = path.splitFile.name
|
||||
result.add theme.capitalizeAscii.replace("_", " ")
|
||||
sort(result)
|
||||
|
||||
proc createPrefRouter*(cfg: Config) =
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import uri, strutils
|
||||
import uri, strutils, strformat
|
||||
import karax/[karaxdsl, vdom]
|
||||
|
||||
import renderutils
|
||||
|
@ -31,12 +31,13 @@ proc renderNavbar*(title, rss: string; req: Request): VNode =
|
|||
proc renderMain*(body: VNode; req: Request; cfg: Config; titleText=""; desc="";
|
||||
rss=""; `type`="article"; video=""; images: seq[string] = @[]): string =
|
||||
let prefs = getPrefs(req.cookies.getOrDefault("preferences"), cfg)
|
||||
let theme = "/css/themes/" & toLowerAscii(prefs.theme) & ".css"
|
||||
let theme = toLowerAscii(prefs.theme).replace(" ", "_")
|
||||
let node = buildHtml(html(lang="en")):
|
||||
head:
|
||||
link(rel="stylesheet", `type`="text/css", href="/css/style.css")
|
||||
link(rel="stylesheet", `type`="text/css", href="/css/fontello.css")
|
||||
link(rel="stylesheet", `type`="text/css", href=theme)
|
||||
if theme.len > 0:
|
||||
link(rel="stylesheet", `type`="text/css", href=(&"/css/themes/{theme}.css"))
|
||||
|
||||
link(rel="apple-touch-icon", sizes="180x180", href="/apple-touch-icon.png")
|
||||
link(rel="icon", type="image/png", sizes="32x32", href="/favicon-32x32.png")
|
||||
|
|
Loading…
Reference in a new issue