From 76bfbfba016b4f669e61f6e4d793a0690e7f1b17 Mon Sep 17 00:00:00 2001 From: autinerd <27780930+autinerd@users.noreply.github.com> Date: Sun, 8 Dec 2024 09:38:07 +0100 Subject: [PATCH] Add dark mode; use svg images from https://github.com/freifunk/device-pictures --- .gitmodules | 3 +++ app.css | 34 +++++++++++++++++++++++++--------- app.js | 4 ++-- config.js | 2 +- device-pictures | 1 + ffs-logo_weiss.png | Bin 0 -> 17557 bytes index.html | 5 ++++- 7 files changed, 36 insertions(+), 13 deletions(-) create mode 100644 .gitmodules create mode 160000 device-pictures create mode 100644 ffs-logo_weiss.png diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..9139acc --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "device-pictures"] + path = device-pictures + url = https://github.com/freifunk/device-pictures.git diff --git a/app.css b/app.css index 6135385..2c28310 100644 --- a/app.css +++ b/app.css @@ -1,15 +1,31 @@ * { box-sizing: border-box; + + --background-color: white; + --text-color: #333; + --table-alternate-color: #f9f9f9; + --background-color-attribution: rgba(255, 255, 255, 0.8); +} + +@media (prefers-color-scheme: dark) { + * { + --background-color: #333333; + --text-color: #cccccc; + --table-alternate-color: #444; + --background-color-attribution: rgba(51, 51, 51, 0.8); + } } + + body { margin: 0; font-family: "Helvetica Neue",Helvetica,Arial,sans-serif; font-size: 14px; line-height: 1.42; - color: #333; - background-color: #fff; + color: var(--text-color); + background-color: var(--background-color); overflow-y: scroll; } @@ -68,11 +84,11 @@ h1, h2, h3, h4, h5, h6 { position: sticky; top: 0; z-index: 1; - background: #fff; + background: var(--background-color); } .table-striped > tbody > tr:nth-of-type(2n+1) { - background-color: #f9f9f9; + background-color: var(--table-alternate-color); } .table td, th { @@ -95,7 +111,7 @@ h1, h2, h3, h4, h5, h6 { bottom: 0; margin: 0; padding: 0.5em; - background: rgba(255, 255, 255, 0.8); + background: var(--background-color-attribution); } #branchName { @@ -230,7 +246,7 @@ h1, h2, h3, h4, h5, h6 { font: inherit; color: inherit; margin-bottom: .5em; - background: #fff; + background: var(--background-color); border: none; border: 1px solid #ddd; box-shadow: 1px 2px 2px 0 #ccc; @@ -262,7 +278,7 @@ h1, h2, h3, h4, h5, h6 { display: inline-block; list-style-type: none; font: inherit; - color: black; + color: var(--text-color); margin: .5em; padding: .5em 1em; border: none; @@ -272,7 +288,7 @@ h1, h2, h3, h4, h5, h6 { } #wizard .btn:hover { - color: black; + color: var(--text-color); } #wizard .imagePreview { @@ -309,7 +325,7 @@ h1, h2, h3, h4, h5, h6 { min-height: 11em; margin: 0.5em; padding: 0.5em; - border: 1px solid white; + border: 1px solid var(--background-color); text-align: center; } diff --git a/app.js b/app.js index 6482468..92e9c08 100644 --- a/app.js +++ b/app.js @@ -503,7 +503,7 @@ var firmwarewizard = function() { 'version': version, 'location': location, 'size': size, - 'preview': preview+".jpg", + 'preview': preview+".svg", 'category': device.category }); } @@ -699,7 +699,7 @@ var firmwarewizard = function() { } function setDefaultImg(e) { - fallbackImg = PREVIEW_PICTURES_DIR+'no_picture_available.jpg'; + fallbackImg = PREVIEW_PICTURES_DIR+'no_picture_available.svg'; if (e.target.src.indexOf(fallbackImg) == -1) { e.target.src = fallbackImg; } diff --git a/config.js b/config.js index 515b68b..09fd4ce 100644 --- a/config.js +++ b/config.js @@ -59,7 +59,7 @@ var config = { // experimental branches (show a warning for these branches) experimental_branches: ['experimental', 'nightly'], // path to preview pictures directory - preview_pictures: 'pictures/', + preview_pictures: 'device-pictures/pictures-svg/', // link to changelog changelog: 'https://wiki.freifunk-stuttgart.net/technik:software:gluon:firmwareversionen_milestones' }; diff --git a/device-pictures b/device-pictures new file mode 160000 index 0000000..36efe11 --- /dev/null +++ b/device-pictures @@ -0,0 +1 @@ +Subproject commit 36efe11f39b714a6377ada377da74e2c3a751008 diff --git a/ffs-logo_weiss.png b/ffs-logo_weiss.png new file mode 100644 index 0000000000000000000000000000000000000000..0952eaf1a0c086a942468f123b126b832b4f5e47 GIT binary patch literal 17557 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 T^Nbi67#KWV{an^LB{Ts5JB;N$ literal 0 HcmV?d00001 diff --git a/index.html b/index.html index cf923ca..3fec7b5 100644 --- a/index.html +++ b/index.html @@ -17,7 +17,10 @@ </div> <div id="wizard"> <div class="center"> - <a href="./index.html"><img src="./ffs-logo.png" class="center"></a> + <a href="./index.html"><picture> + <source srcset="ffs-logo_weiss.png" media="(prefers-color-scheme: dark)"> + <img id="logo" src="./ffs-logo.png" class="center"> + </picture></a> </div> <div class="pane-wrapper"> <div id="model-pane" class="pane"> -- GitLab