From a857904b63d3fe86aae47b6ac2bc39f88d6f2b6a Mon Sep 17 00:00:00 2001 From: Dominik George <dominik.george@teckids.org> Date: Thu, 27 Jan 2022 10:39:45 +0100 Subject: [PATCH] Support marking PWA icons as maskable --- CHANGELOG.rst | 5 +++++ aleksis/core/preferences.py | 11 +++++++++++ aleksis/core/views.py | 1 + 3 files changed, 17 insertions(+) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 3b4a70be3..a89ede4e3 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -9,6 +9,11 @@ and this project adheres to `Semantic Versioning`_. Unreleased ---------- +Changed +~~~~~~~ + +* PWA icons can now be marked maskable + Fixed ~~~~~ diff --git a/aleksis/core/preferences.py b/aleksis/core/preferences.py index fe29f220f..f1fb0227e 100644 --- a/aleksis/core/preferences.py +++ b/aleksis/core/preferences.py @@ -112,6 +112,17 @@ class PWAIcon(PublicFilePreferenceMixin, FilePreference): required = False +@site_preferences_registry.register +class PWAIconMaskable(BooleanPreference): + """PWA icon is maskable.""" + + section = theme + name = "pwa_icon_maskable" + verbose_name = _("PWA-Icon is maskable") + default = True + required = False + + @site_preferences_registry.register class MailOutName(StringPreference): """Mail out name of your AlekSIS instance.""" diff --git a/aleksis/core/views.py b/aleksis/core/views.py index ec38875ad..539807bf1 100644 --- a/aleksis/core/views.py +++ b/aleksis/core/views.py @@ -175,6 +175,7 @@ class ManifestView(View): { "src": favicon_img.faviconImage.url, "sizes": f"{favicon_img.size}x{favicon_img.size}", + "purpose": "maskable" if prefs["theme__pwa_icon_maskable"] else "any", } for favicon_img in pwa_imgs ] -- GitLab