From 1de58ed4868ba7ef9ac029a4b524874868782e41 Mon Sep 17 00:00:00 2001 From: Marco Allegretti Date: Mon, 18 May 2026 10:17:27 +0200 Subject: [PATCH] Add initial Shift desktop theme frame assets Provide the first real Shift Plasma desktop theme SVGs for panel and widget frames used directly by the shell. Cover dark and light modes, including solid panel backgrounds for opaque panel states. Extend the theme identity test so the desktop themes cannot regress to metadata-only packages. --- .../solid/widgets/panel-background.svg | 23 +++++++++++++ .../shift-dark/widgets/background.svg | 22 +++++++++++++ .../shift-dark/widgets/panel-background.svg | 33 +++++++++++++++++++ .../widgets/translucentbackground.svg | 18 ++++++++++ .../solid/widgets/panel-background.svg | 23 +++++++++++++ .../shift-light/widgets/background.svg | 22 +++++++++++++ .../shift-light/widgets/panel-background.svg | 27 +++++++++++++++ .../widgets/translucentbackground.svg | 18 ++++++++++ tests/check-shift-theme-identity.sh | 16 +++++++++ 9 files changed, 202 insertions(+) create mode 100644 desktoptheme/shift-dark/solid/widgets/panel-background.svg create mode 100644 desktoptheme/shift-dark/widgets/background.svg create mode 100644 desktoptheme/shift-dark/widgets/panel-background.svg create mode 100644 desktoptheme/shift-dark/widgets/translucentbackground.svg create mode 100644 desktoptheme/shift-light/solid/widgets/panel-background.svg create mode 100644 desktoptheme/shift-light/widgets/background.svg create mode 100644 desktoptheme/shift-light/widgets/panel-background.svg create mode 100644 desktoptheme/shift-light/widgets/translucentbackground.svg diff --git a/desktoptheme/shift-dark/solid/widgets/panel-background.svg b/desktoptheme/shift-dark/solid/widgets/panel-background.svg new file mode 100644 index 00000000..c850f70e --- /dev/null +++ b/desktoptheme/shift-dark/solid/widgets/panel-background.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/desktoptheme/shift-dark/widgets/background.svg b/desktoptheme/shift-dark/widgets/background.svg new file mode 100644 index 00000000..7b98e4e0 --- /dev/null +++ b/desktoptheme/shift-dark/widgets/background.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/desktoptheme/shift-dark/widgets/panel-background.svg b/desktoptheme/shift-dark/widgets/panel-background.svg new file mode 100644 index 00000000..9179c154 --- /dev/null +++ b/desktoptheme/shift-dark/widgets/panel-background.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/desktoptheme/shift-dark/widgets/translucentbackground.svg b/desktoptheme/shift-dark/widgets/translucentbackground.svg new file mode 100644 index 00000000..589e1f58 --- /dev/null +++ b/desktoptheme/shift-dark/widgets/translucentbackground.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/desktoptheme/shift-light/solid/widgets/panel-background.svg b/desktoptheme/shift-light/solid/widgets/panel-background.svg new file mode 100644 index 00000000..5e384117 --- /dev/null +++ b/desktoptheme/shift-light/solid/widgets/panel-background.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/desktoptheme/shift-light/widgets/background.svg b/desktoptheme/shift-light/widgets/background.svg new file mode 100644 index 00000000..0d0c494a --- /dev/null +++ b/desktoptheme/shift-light/widgets/background.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/desktoptheme/shift-light/widgets/panel-background.svg b/desktoptheme/shift-light/widgets/panel-background.svg new file mode 100644 index 00000000..4136444f --- /dev/null +++ b/desktoptheme/shift-light/widgets/panel-background.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/desktoptheme/shift-light/widgets/translucentbackground.svg b/desktoptheme/shift-light/widgets/translucentbackground.svg new file mode 100644 index 00000000..661627ad --- /dev/null +++ b/desktoptheme/shift-light/widgets/translucentbackground.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/tests/check-shift-theme-identity.sh b/tests/check-shift-theme-identity.sh index ed82bc76..c78763ee 100644 --- a/tests/check-shift-theme-identity.sh +++ b/tests/check-shift-theme-identity.sh @@ -65,6 +65,22 @@ require_line desktoptheme/shift-light/metadata.json '"Name": "SHIFT Light"' \ require_line cursors/shift-cursors/index.theme '^Name=SHIFT$' \ "cursor theme visible name must be SHIFT" +for desktop_asset in \ + desktoptheme/shift-dark/widgets/panel-background.svg \ + desktoptheme/shift-dark/solid/widgets/panel-background.svg \ + desktoptheme/shift-dark/widgets/background.svg \ + desktoptheme/shift-dark/widgets/translucentbackground.svg \ + desktoptheme/shift-light/widgets/panel-background.svg \ + desktoptheme/shift-light/solid/widgets/panel-background.svg \ + desktoptheme/shift-light/widgets/background.svg \ + desktoptheme/shift-light/widgets/translucentbackground.svg; do + [[ -f "$desktop_asset" ]] || fail "Shift desktop theme must provide $desktop_asset" + require_line "$desktop_asset" 'SPDX-FileCopyrightText: 2026 Marco Allegretti' \ + "$desktop_asset must attribute Shift-owned work to Marco Allegretti" + require_line "$desktop_asset" 'SPDX-License-Identifier: EUPL-1\.2' \ + "$desktop_asset must use EUPL-1.2" +done + require_line lookandfeel/contents/defaults '^ColorScheme=ShiftDark$' \ "look-and-feel defaults must select ShiftDark" require_line lookandfeel/contents/defaults '^Theme=org\.shift\.icons$' \