diff --git a/debian/copyright b/debian/copyright index 828426132..671828216 100644 --- a/debian/copyright +++ b/debian/copyright @@ -5,8 +5,8 @@ Files: * Copyright: 2011-2023 FreedomBox Authors License: AGPL-3+ -Files: static/themes/default/icons/jsxc.png - static/themes/default/icons/jsxc.svg +Files: plinth/modules/jsxc/static/icons/jsxc.png + plinth/modules/jsxc/static/icons/jsxc.svg Copyright: 2011-2019 FreedomBox Authors License: AGPL-3+ @@ -38,40 +38,40 @@ Copyright: Marie Van den Broeck (https://thenounproject.com/marie49/) Comment: https://thenounproject.com/icon/162372/ License: CC-BY-SA-3.0 -Files: static/themes/default/icons/bepasty.svg +Files: plinth/modules/bepasty/static/icons/bepasty.svg Copyright: (c) 2014 by the Bepasty Team, see the AUTHORS file. Comment: https://github.com/bepasty/bepasty-server/blob/master/src/bepasty/static/app/bepasty.svg License: BSD-2-clause -Files: static/themes/default/icons/cockpit.svg +Files: plinth/modules/cockpit/static/icons/cockpit.svg Copyright: Cockpit Authors (https://github.com/cockpit-project/cockpit/blob/master/AUTHORS) Comment: https://github.com/cockpit-project/cockpit/blob/master/src/branding/default/logo.svg License: LGPL-2.1+ -Files: static/themes/default/icons/coturn.png - static/themes/default/icons/coturn.svg +Files: plinth/modules/coturn/static/icons/coturn.png + plinth/modules/coturn/static/icons/coturn.svg Copyright: Kmg Design (https://thenounproject.com/kmgdesignid/) Comment: Video Call by Kmg Design from the Noun Project https://thenounproject.com/term/video-call/3256092/ License: CC-BY-3.0-US -Files: static/themes/default/icons/deluge.png - static/themes/default/icons/deluge.svg +Files: plinth/modules/deluge/static/icons/deluge.png + plinth/modules/deluge/static/icons/deluge.svg Copyright: 2007 Andrew Wedderburn Comment: https://commons.wikimedia.org/wiki/File:Deluge-Logo.svg License: GPL-2+ -Files: static/themes/default/icons/ejabberd.png - static/themes/default/icons/ejabberd.svg - static/themes/default/icons/email.png - static/themes/default/icons/email.svg - static/themes/default/icons/matrixsynapse.svg - static/themes/default/icons/privoxy.png - static/themes/default/icons/privoxy.svg - static/themes/default/icons/radicale.svg - static/themes/default/icons/rssbridge.png - static/themes/default/icons/rssbridge.svg - static/themes/default/icons/zoph.png - static/themes/default/icons/zoph.svg +Files: plinth/modules/ejabberd/static/icons/ejabberd.png + plinth/modules/ejabberd/static/icons/ejabberd.svg + plinth/modules/email/static/icons/email.png + plinth/modules/email/static/icons/email.svg + plinth/modules/matrixsynapse/static/icons/matrixsynapse.svg + plinth/modules/privoxy/static/icons/privoxy.png + plinth/modules/privoxy/static/icons/privoxy.svg + plinth/modules/radicale/static/icons/radicale.svg + plinth/modules/rssbridge/static/icons/rssbridge.png + plinth/modules/rssbridge/static/icons/rssbridge.svg + plinth/modules/zoph/static/icons/zoph.png + plinth/modules/zoph/static/icons/zoph.svg static/themes/default/img/network-connection.svg static/themes/default/img/network-connection-vertical.svg static/themes/default/img/network-ethernet.svg @@ -101,8 +101,8 @@ Copyright: 2012 William Theaker Comment: https://gitlab.com/fdroid/artwork/blob/master/fdroid-logo-2015/fdroid-logo.svg License: CC-BY-SA-3.0 or GPL-3+ -Files: static/themes/default/icons/gitweb.png - static/themes/default/icons/gitweb.svg +Files: plinth/modules/gitweb/static/icons/gitweb.png + plinth/modules/gitweb/static/icons/gitweb.svg Copyright: 2010 Git Authors Comment: https://github.com/git/git/blob/master/gitweb/static/git-logo.png License: GPL-2 @@ -116,19 +116,19 @@ Files: static/themes/default/icons/gnu-linux.png Copyright: 2017 Cowemoji License: CC0-1.0 -Files: static/themes/default/icons/ikiwiki.png - static/themes/default/icons/ikiwiki.svg +Files: plinth/modules/ikiwiki/static/icons/ikiwiki.png + plinth/modules/ikiwiki/static/icons/ikiwiki.svg Copyright: 2006 Recai Oktaş Comment: https://commons.wikimedia.org/wiki/File:Ikiwiki.svg License: GPL-2+ -Files: static/themes/default/icons/infinoted.png - static/themes/default/icons/infinoted.svg +Files: plinth/modules/infinoted/static/icons/infinoted.png + plinth/modules/infinoted/static/icons/infinoted.svg Copyright: 2008-2014 Armin Burgmeier License: ISC -Files: static/themes/default/icons/janus.png - static/themes/default/icons/janus.svg +Files: plinth/modules/janus/static/icons/janus.png + plinth/modules/janus/static/icons/janus.svg Copyright: 2014-2022 Meetecho License: GPL-3 with OpenSSL exception @@ -138,54 +138,54 @@ Copyright: Vectors Market (https://thenounproject.com/vectorsmarket/) Comment: https://thenounproject.com/icon/1203053/ License: CC-BY-SA-3.0 -Files: static/themes/default/icons/matrixsynapse.png +Files: plinth/modules/matrixsynapse/static/icons/matrixsynapse.png Copyright: 2017 Kishan Raval Comment: https://github.com/thekishanraval/Logos License: GPL-3+ -Files: static/themes/default/icons/mediawiki.png - static/themes/default/icons/mediawiki.svg +Files: plinth/modules/mediawiki/static/icons/mediawiki.png + plinth/modules/mediawiki/static/icons/mediawiki.svg Copyright: 2020 Serhio Magpie Comment: https://commons.wikimedia.org/wiki/File:MediaWiki-2020-icon.svg License: CC-BY-SA-4.0 -Files: static/themes/default/icons/minetest.png +Files: plinth/modules/minetest/static/icons/minetest.png Copyright: 2011 erlehmann License: CC-BY-SA-3.0 -Files: static/themes/default/icons/minetest.svg +Files: plinth/modules/minetest/static/icons/minetest.svg Copyright: 2015 Calinou, Nils Dagsson Moskopp Comment: https://github.com/minetest/minetest/blob/master/misc/minetest.svg License: CC-BY-SA-3.0 -Files: static/themes/default/icons/mumble.png +Files: plinth/modules/mumble/static/icons/mumble.png Copyright: 2009 Martin Skilnand Comment: https://commons.wikimedia.org/wiki/File:Icons_mumble.svg License: BSD-3-clause -Files: static/themes/default/icons/mumble.svg +Files: plinth/modules/mumble/static/icons/mumble.svg Copyright: 2005-2019 The Mumble Developers Comment: https://github.com/mumble-voip/mumble/blob/master/icons/mumble.svg https://github.com/mumble-voip/mumble/blob/master/LICENSE License: BSD-3-clause -Files: static/themes/default/icons/openvpn.png +Files: plinth/modules/openvpn/static/icons/openvpn.png Copyright: 2017 Kishan Raval Comment: https://github.com/thekishanraval/Logos License: GPL-3+ -Files: static/themes/default/icons/openvpn.svg +Files: plinth/modules/openvpn/static/icons/openvpn.svg Copyright: OpenVPN Technologies, Inc. Comment: https://commons.wikimedia.org/wiki/File:Ovpntech_logo-s_REVISED.png License: CC-BY-SA-3.0 -Files: static/themes/default/icons/quassel.png - static/themes/default/icons/quassel.svg +Files: plinth/modules/quassel/static/icons/quassel.png + plinth/modules/quassel/static/icons/quassel.svg Copyright: 2005-2019 Quassel Project Comment: https://github.com/quassel/quassel/blob/master/pics/quassel-64.svg License: GPL-2 or GPL-3 -Files: static/themes/default/icons/radicale.png +Files: plinth/modules/radicale/static/icons/radicale.png Copyright: 2008, Nicolas Kandel 2008, Pascal Halter 2008-2017, Guillaume Ayoub @@ -193,7 +193,7 @@ Copyright: 2008, Nicolas Kandel 2017, Unrud License: GPL-3+ -Files: static/themes/default/icons/roundcube.png +Files: plinth/modules/roundcube/static/icons/roundcube.png Copyright: 2000 Edmund Grimley Evans 2013 Thomas Yu - Sian, Liu Copyright (C) 2005-2017, The Roundcube Dev Team @@ -201,21 +201,21 @@ Copyright: 2000 Edmund Grimley Evans 2005-2007, Jon Abernathy License: GPL-3+ -Files: static/themes/default/icons/roundcube.svg +Files: plinth/modules/roundcube/static/icons/roundcube.svg Copyright: Thomas B. (https://github.com/thomascube) Aleksander Machniak (https://github.com/alecpl) Comment: https://raw.githubusercontent.com/roundcube/roundcubemail/master/skins/elastic/images/logo.svg License: CC-BY-SA-3.0 -Files: static/themes/default/icons/samba.png - static/themes/default/icons/samba.svg +Files: plinth/modules/samba/static/icons/samba.png + plinth/modules/samba/static/icons/samba.svg Copyright: None Comment: 2010 Samba Team https://commons.wikimedia.org/wiki/File:Samba_logo_2010.svg License: public-domain -Files: static/themes/default/icons/searx.png - static/themes/default/icons/searx.svg +Files: plinth/modules/searx/static/icons/searx.png + plinth/modules/searx/static/icons/searx.svg Copyright: 2013-2017 Adam Tauber 2016 Alexandre Flament @@ -223,65 +223,65 @@ Copyright: 2014 Thomas Pointhuber License: AGPL-3+ -Files: static/themes/default/icons/shaarli.png - static/themes/default/icons/shaarli.svg +Files: plinth/modules/shaarli/static/icons/shaarli.png + plinth/modules/shaarli/static/icons/shaarli.svg Copyright: 2011-2015 Sébastien SAUVAGE 2011-2018 The Shaarli Community Comment: https://github.com/shaarli/Shaarli/blob/master/doc/md/images/doc-logo.svg https://github.com/shaarli/Shaarli/blob/master/assets/default/img/favicon.png License: Zlib -Files: static/themes/default/icons/shadowsocks.png +Files: plinth/modules/shadowsocks/static/icons/shadowsocks.png Copyright: 2014-2018 Symeon Huang (librehat) Comment: https://commons.wikimedia.org/wiki/File:Shadowsocks_logo.png License: LGPL-3+ -Files: static/themes/default/icons/shadowsocks.svg +Files: plinth/modules/shadowsocks/static/icons/shadowsocks.svg Copyright: Clowwindy Comment: https://commons.wikimedia.org/wiki/File:Shadowsocks-Logo.svg License: Apache-2.0 -Files: static/themes/default/icons/sharing.png - static/themes/default/icons/sharing.svg +Files: plinth/modules/sharing/static/icons/sharing.png + plinth/modules/sharing/static/icons/sharing.svg Copyright: Interface (https://www.shareicon.net/author/interface) Comment: https://www.shareicon.net/universal-interface-interface-sharing-share-697502 License: CC-BY-3.0 -Files: static/themes/default/icons/syncthing.png +Files: plinth/modules/syncthing/static/icons/syncthing.png Copyright: 2015 Jack Palevich 2014 The Syncthing Authors 2015 Audrius Butkevicius and Contributors License: MPL-2.0 -Files: static/themes/default/icons/syncthing.svg +Files: plinth/modules/syncthing/static/icons/syncthing.svg Copyright: Jakob Borg and the Syncthing project Comment: https://commons.wikimedia.org/wiki/File:SyncthingLogoHorizontal.svg License: MPL-2.0 -Files: static/themes/default/icons/tor.png - static/themes/default/icons/tor.svg +Files: plinth/modules/tor/static/icons/tor.png + plinth/modules/tor/static/icons/tor.svg Copyright: The Tor Project, Inc. Comment: https://commons.wikimedia.org/wiki/File:Tor_logo1.png https://commons.wikimedia.org/wiki/File:Tor-logo-2011-flat.svg License: CC-BY-3.0-US -Files: static/themes/default/icons/transmission.png - static/themes/default/icons/transmission.svg +Files: plinth/modules/transmission/static/icons/transmission.png + plinth/modules/transmission/static/icons/transmission.svg Copyright: Transmission Authors Comment: https://github.com/transmission/transmission/blob/master/gtk/icons/hicolor_apps_scalable_transmission.svg License: GPL-3 -Files: static/themes/default/icons/ttrss.png +Files: plinth/modules/ttrss/static/icons/ttrss.png Copyright: Mark James License: CC-BY-3.0 -Files: static/themes/default/icons/ttrss.svg +Files: plinth/modules/ttrss/static/icons/ttrss.svg Copyright: 2005 Andrew Dolgov Comment: https://git.tt-rss.org/fox/tt-rss/src/master/images/favicon-72px.png License: GPL-3+ -Files: static/themes/default/icons/wordpress.png - static/themes/default/icons/wordpress.svg +Files: plinth/modules/wordpress/static/icons/wordpress.png + plinth/modules/wordpress/static/icons/wordpress.svg Copyright: 2011-2021 WordPress Contributors Comment: https://github.com/WordPress/wordpress-develop/blob/master/src/wp-admin/images/wordpress-logo.svg License: GPL-2+ @@ -292,8 +292,8 @@ Copyright: 2007 ruli (https://thenounproject.com/2007ruli/) Comment: https://thenounproject.com/icon/1206946/ License: CC-BY-SA-3.0 -Files: static/themes/default/icons/wireguard.png - static/themes/default/icons/wireguard.svg +Files: plinth/modules/wireguard/static/icons/wireguard.png + plinth/modules/wireguard/static/icons/wireguard.svg Copyright: 2019 WireGuard LLC Comment: https://git.zx2c4.com/wireguard-windows/plain/ui/icon/wireguard.svg License: Expat diff --git a/doc/dev/tutorial/view.rst b/doc/dev/tutorial/view.rst index b532883e3..b9b94229c 100644 --- a/doc/dev/tutorial/view.rst +++ b/doc/dev/tutorial/view.rst @@ -64,8 +64,8 @@ menu item we want to present. * The third parameter is a short description for the menu item. * The fourth parameter is the name of the icon to use when showing the menu - item. An SVG file and a PNG should be created in the ``static/theme/icons/`` - directory. + item. An SVG file and a PNG should be created in the + ``plinth/modules/transmission/static/icons/`` directory. * The fifth parameter is the URL that the user should be directed to when the menu item is clicked. This is a Django URL name and we have already created a diff --git a/plinth/menu.py b/plinth/menu.py index cee9bcfc6..114ff9a64 100644 --- a/plinth/menu.py +++ b/plinth/menu.py @@ -23,11 +23,12 @@ class Menu(app.FollowerComponent): name of a glyphicon from the Fork Awesome font's icon set: https://forkawesome.github.io/Fork-Awesome/icons/. In this case, the icon name starts with the string 'fa-'. Alternatively, the icon can - also be a file under the directory static/theme/icons/, provided - without an extension. SVG icons are preferred. Currently, both PNG and - SVG icons with the same name are used. For example, if the value of - icon is 'myapp', then two icons files static/theme/icons/myapp.svg and - static/theme/icons/myapp.png are used in the interface. + also be a file under the directory plinth/modules//static/icons/, + provided without an extension. SVG icons are preferred. Currently, both + PNG and SVG icons with the same name are used. For example, if the + value of icon is 'myicon' and app_id in App class is 'myapp', then two + icons files plinth/modules/myapp/static/icons/myicon.svg and + plinth/modules/myapp/static/icons/myicon.png are used in the interface. url_name is the name of url location that will be activated when the menu item is selected. This is not optional. url_args and url_kwargs diff --git a/plinth/modules/api/views.py b/plinth/modules/api/views.py index d5a375409..8f6e873b3 100644 --- a/plinth/modules/api/views.py +++ b/plinth/modules/api/views.py @@ -50,7 +50,7 @@ def _get_shortcut_data(shortcut): 'name': shortcut.name, 'short_description': shortcut.short_description, 'description': shortcut.description, - 'icon_url': _get_icon_url(shortcut.icon), + 'icon_url': _get_icon_url(shortcut.app_id, shortcut.icon), 'clients': copy.deepcopy(shortcut.clients), } # XXX: Fix the hardcoding @@ -60,9 +60,12 @@ def _get_shortcut_data(shortcut): return shortcut_data -def _get_icon_url(icon_name): - """Return icon path given icon name.""" +def _get_icon_url(app_id, icon_name): + """Return icon path given app's ID and icon name.""" if not icon_name: return None - return static('theme/icons/{}.png'.format(icon_name)) + if app_id: + return static(f'{app_id}') + f'/icons/{icon_name}.png' + + return static(f'theme/icons/{icon_name}.png') diff --git a/static/themes/default/icons/bepasty.png b/plinth/modules/bepasty/static/icons/bepasty.png similarity index 100% rename from static/themes/default/icons/bepasty.png rename to plinth/modules/bepasty/static/icons/bepasty.png diff --git a/static/themes/default/icons/bepasty.svg b/plinth/modules/bepasty/static/icons/bepasty.svg similarity index 100% rename from static/themes/default/icons/bepasty.svg rename to plinth/modules/bepasty/static/icons/bepasty.svg diff --git a/static/themes/default/icons/calibre.png b/plinth/modules/calibre/static/icons/calibre.png similarity index 100% rename from static/themes/default/icons/calibre.png rename to plinth/modules/calibre/static/icons/calibre.png diff --git a/static/themes/default/icons/calibre.svg b/plinth/modules/calibre/static/icons/calibre.svg similarity index 100% rename from static/themes/default/icons/calibre.svg rename to plinth/modules/calibre/static/icons/calibre.svg diff --git a/static/themes/default/icons/cockpit.png b/plinth/modules/cockpit/static/icons/cockpit.png similarity index 100% rename from static/themes/default/icons/cockpit.png rename to plinth/modules/cockpit/static/icons/cockpit.png diff --git a/static/themes/default/icons/cockpit.svg b/plinth/modules/cockpit/static/icons/cockpit.svg similarity index 100% rename from static/themes/default/icons/cockpit.svg rename to plinth/modules/cockpit/static/icons/cockpit.svg diff --git a/static/themes/default/icons/coturn.png b/plinth/modules/coturn/static/icons/coturn.png similarity index 100% rename from static/themes/default/icons/coturn.png rename to plinth/modules/coturn/static/icons/coturn.png diff --git a/static/themes/default/icons/coturn.svg b/plinth/modules/coturn/static/icons/coturn.svg similarity index 100% rename from static/themes/default/icons/coturn.svg rename to plinth/modules/coturn/static/icons/coturn.svg diff --git a/static/themes/default/icons/deluge.png b/plinth/modules/deluge/static/icons/deluge.png similarity index 100% rename from static/themes/default/icons/deluge.png rename to plinth/modules/deluge/static/icons/deluge.png diff --git a/static/themes/default/icons/deluge.svg b/plinth/modules/deluge/static/icons/deluge.svg similarity index 100% rename from static/themes/default/icons/deluge.svg rename to plinth/modules/deluge/static/icons/deluge.svg diff --git a/static/themes/default/icons/ejabberd.png b/plinth/modules/ejabberd/static/icons/ejabberd.png similarity index 100% rename from static/themes/default/icons/ejabberd.png rename to plinth/modules/ejabberd/static/icons/ejabberd.png diff --git a/static/themes/default/icons/ejabberd.svg b/plinth/modules/ejabberd/static/icons/ejabberd.svg similarity index 100% rename from static/themes/default/icons/ejabberd.svg rename to plinth/modules/ejabberd/static/icons/ejabberd.svg diff --git a/static/themes/default/icons/email.png b/plinth/modules/email/static/icons/email.png similarity index 100% rename from static/themes/default/icons/email.png rename to plinth/modules/email/static/icons/email.png diff --git a/static/themes/default/icons/email.svg b/plinth/modules/email/static/icons/email.svg similarity index 100% rename from static/themes/default/icons/email.svg rename to plinth/modules/email/static/icons/email.svg diff --git a/static/themes/default/icons/gitweb.png b/plinth/modules/gitweb/static/icons/gitweb.png similarity index 100% rename from static/themes/default/icons/gitweb.png rename to plinth/modules/gitweb/static/icons/gitweb.png diff --git a/static/themes/default/icons/gitweb.svg b/plinth/modules/gitweb/static/icons/gitweb.svg similarity index 100% rename from static/themes/default/icons/gitweb.svg rename to plinth/modules/gitweb/static/icons/gitweb.svg diff --git a/static/themes/default/icons/i2p.png b/plinth/modules/i2p/static/icons/i2p.png similarity index 100% rename from static/themes/default/icons/i2p.png rename to plinth/modules/i2p/static/icons/i2p.png diff --git a/static/themes/default/icons/i2p.svg b/plinth/modules/i2p/static/icons/i2p.svg similarity index 100% rename from static/themes/default/icons/i2p.svg rename to plinth/modules/i2p/static/icons/i2p.svg diff --git a/static/themes/default/icons/ikiwiki.png b/plinth/modules/ikiwiki/static/icons/ikiwiki.png similarity index 100% rename from static/themes/default/icons/ikiwiki.png rename to plinth/modules/ikiwiki/static/icons/ikiwiki.png diff --git a/static/themes/default/icons/ikiwiki.svg b/plinth/modules/ikiwiki/static/icons/ikiwiki.svg similarity index 100% rename from static/themes/default/icons/ikiwiki.svg rename to plinth/modules/ikiwiki/static/icons/ikiwiki.svg diff --git a/static/themes/default/icons/infinoted.png b/plinth/modules/infinoted/static/icons/infinoted.png similarity index 100% rename from static/themes/default/icons/infinoted.png rename to plinth/modules/infinoted/static/icons/infinoted.png diff --git a/static/themes/default/icons/infinoted.svg b/plinth/modules/infinoted/static/icons/infinoted.svg similarity index 100% rename from static/themes/default/icons/infinoted.svg rename to plinth/modules/infinoted/static/icons/infinoted.svg diff --git a/static/themes/default/icons/janus.png b/plinth/modules/janus/static/icons/janus.png similarity index 100% rename from static/themes/default/icons/janus.png rename to plinth/modules/janus/static/icons/janus.png diff --git a/static/themes/default/icons/janus.svg b/plinth/modules/janus/static/icons/janus.svg similarity index 100% rename from static/themes/default/icons/janus.svg rename to plinth/modules/janus/static/icons/janus.svg diff --git a/static/themes/default/icons/jsxc.png b/plinth/modules/jsxc/static/icons/jsxc.png similarity index 100% rename from static/themes/default/icons/jsxc.png rename to plinth/modules/jsxc/static/icons/jsxc.png diff --git a/static/themes/default/icons/jsxc.svg b/plinth/modules/jsxc/static/icons/jsxc.svg similarity index 100% rename from static/themes/default/icons/jsxc.svg rename to plinth/modules/jsxc/static/icons/jsxc.svg diff --git a/static/themes/default/icons/matrixsynapse.png b/plinth/modules/matrixsynapse/static/icons/matrixsynapse.png similarity index 100% rename from static/themes/default/icons/matrixsynapse.png rename to plinth/modules/matrixsynapse/static/icons/matrixsynapse.png diff --git a/static/themes/default/icons/matrixsynapse.svg b/plinth/modules/matrixsynapse/static/icons/matrixsynapse.svg similarity index 100% rename from static/themes/default/icons/matrixsynapse.svg rename to plinth/modules/matrixsynapse/static/icons/matrixsynapse.svg diff --git a/static/themes/default/icons/mediawiki.png b/plinth/modules/mediawiki/static/icons/mediawiki.png similarity index 100% rename from static/themes/default/icons/mediawiki.png rename to plinth/modules/mediawiki/static/icons/mediawiki.png diff --git a/static/themes/default/icons/mediawiki.svg b/plinth/modules/mediawiki/static/icons/mediawiki.svg similarity index 100% rename from static/themes/default/icons/mediawiki.svg rename to plinth/modules/mediawiki/static/icons/mediawiki.svg diff --git a/static/themes/default/icons/minetest.png b/plinth/modules/minetest/static/icons/minetest.png similarity index 100% rename from static/themes/default/icons/minetest.png rename to plinth/modules/minetest/static/icons/minetest.png diff --git a/static/themes/default/icons/minetest.svg b/plinth/modules/minetest/static/icons/minetest.svg similarity index 100% rename from static/themes/default/icons/minetest.svg rename to plinth/modules/minetest/static/icons/minetest.svg diff --git a/static/themes/default/icons/minidlna.svg b/plinth/modules/minidlna/static/icons/minidlna.svg similarity index 100% rename from static/themes/default/icons/minidlna.svg rename to plinth/modules/minidlna/static/icons/minidlna.svg diff --git a/static/themes/default/icons/mumble.png b/plinth/modules/mumble/static/icons/mumble.png similarity index 100% rename from static/themes/default/icons/mumble.png rename to plinth/modules/mumble/static/icons/mumble.png diff --git a/static/themes/default/icons/mumble.svg b/plinth/modules/mumble/static/icons/mumble.svg similarity index 100% rename from static/themes/default/icons/mumble.svg rename to plinth/modules/mumble/static/icons/mumble.svg diff --git a/static/themes/default/icons/openvpn.png b/plinth/modules/openvpn/static/icons/openvpn.png similarity index 100% rename from static/themes/default/icons/openvpn.png rename to plinth/modules/openvpn/static/icons/openvpn.png diff --git a/static/themes/default/icons/openvpn.svg b/plinth/modules/openvpn/static/icons/openvpn.svg similarity index 100% rename from static/themes/default/icons/openvpn.svg rename to plinth/modules/openvpn/static/icons/openvpn.svg diff --git a/static/themes/default/icons/privoxy.png b/plinth/modules/privoxy/static/icons/privoxy.png similarity index 100% rename from static/themes/default/icons/privoxy.png rename to plinth/modules/privoxy/static/icons/privoxy.png diff --git a/static/themes/default/icons/privoxy.svg b/plinth/modules/privoxy/static/icons/privoxy.svg similarity index 100% rename from static/themes/default/icons/privoxy.svg rename to plinth/modules/privoxy/static/icons/privoxy.svg diff --git a/static/themes/default/icons/quassel.png b/plinth/modules/quassel/static/icons/quassel.png similarity index 100% rename from static/themes/default/icons/quassel.png rename to plinth/modules/quassel/static/icons/quassel.png diff --git a/static/themes/default/icons/quassel.svg b/plinth/modules/quassel/static/icons/quassel.svg similarity index 100% rename from static/themes/default/icons/quassel.svg rename to plinth/modules/quassel/static/icons/quassel.svg diff --git a/static/themes/default/icons/radicale.png b/plinth/modules/radicale/static/icons/radicale.png similarity index 100% rename from static/themes/default/icons/radicale.png rename to plinth/modules/radicale/static/icons/radicale.png diff --git a/static/themes/default/icons/radicale.svg b/plinth/modules/radicale/static/icons/radicale.svg similarity index 100% rename from static/themes/default/icons/radicale.svg rename to plinth/modules/radicale/static/icons/radicale.svg diff --git a/static/themes/default/icons/roundcube.png b/plinth/modules/roundcube/static/icons/roundcube.png similarity index 100% rename from static/themes/default/icons/roundcube.png rename to plinth/modules/roundcube/static/icons/roundcube.png diff --git a/static/themes/default/icons/roundcube.svg b/plinth/modules/roundcube/static/icons/roundcube.svg similarity index 100% rename from static/themes/default/icons/roundcube.svg rename to plinth/modules/roundcube/static/icons/roundcube.svg diff --git a/static/themes/default/icons/rssbridge.png b/plinth/modules/rssbridge/static/icons/rssbridge.png similarity index 100% rename from static/themes/default/icons/rssbridge.png rename to plinth/modules/rssbridge/static/icons/rssbridge.png diff --git a/static/themes/default/icons/rssbridge.svg b/plinth/modules/rssbridge/static/icons/rssbridge.svg similarity index 100% rename from static/themes/default/icons/rssbridge.svg rename to plinth/modules/rssbridge/static/icons/rssbridge.svg diff --git a/static/themes/default/icons/samba.png b/plinth/modules/samba/static/icons/samba.png similarity index 100% rename from static/themes/default/icons/samba.png rename to plinth/modules/samba/static/icons/samba.png diff --git a/static/themes/default/icons/samba.svg b/plinth/modules/samba/static/icons/samba.svg similarity index 100% rename from static/themes/default/icons/samba.svg rename to plinth/modules/samba/static/icons/samba.svg diff --git a/static/themes/default/icons/searx.png b/plinth/modules/searx/static/icons/searx.png similarity index 100% rename from static/themes/default/icons/searx.png rename to plinth/modules/searx/static/icons/searx.png diff --git a/static/themes/default/icons/searx.svg b/plinth/modules/searx/static/icons/searx.svg similarity index 100% rename from static/themes/default/icons/searx.svg rename to plinth/modules/searx/static/icons/searx.svg diff --git a/static/themes/default/icons/shaarli.png b/plinth/modules/shaarli/static/icons/shaarli.png similarity index 100% rename from static/themes/default/icons/shaarli.png rename to plinth/modules/shaarli/static/icons/shaarli.png diff --git a/static/themes/default/icons/shaarli.svg b/plinth/modules/shaarli/static/icons/shaarli.svg similarity index 100% rename from static/themes/default/icons/shaarli.svg rename to plinth/modules/shaarli/static/icons/shaarli.svg diff --git a/static/themes/default/icons/shadowsocks.png b/plinth/modules/shadowsocks/static/icons/shadowsocks.png similarity index 100% rename from static/themes/default/icons/shadowsocks.png rename to plinth/modules/shadowsocks/static/icons/shadowsocks.png diff --git a/static/themes/default/icons/shadowsocks.svg b/plinth/modules/shadowsocks/static/icons/shadowsocks.svg similarity index 100% rename from static/themes/default/icons/shadowsocks.svg rename to plinth/modules/shadowsocks/static/icons/shadowsocks.svg diff --git a/static/themes/default/icons/sharing.png b/plinth/modules/sharing/static/icons/sharing.png similarity index 100% rename from static/themes/default/icons/sharing.png rename to plinth/modules/sharing/static/icons/sharing.png diff --git a/static/themes/default/icons/sharing.svg b/plinth/modules/sharing/static/icons/sharing.svg similarity index 100% rename from static/themes/default/icons/sharing.svg rename to plinth/modules/sharing/static/icons/sharing.svg diff --git a/static/themes/default/icons/syncthing.png b/plinth/modules/syncthing/static/icons/syncthing.png similarity index 100% rename from static/themes/default/icons/syncthing.png rename to plinth/modules/syncthing/static/icons/syncthing.png diff --git a/static/themes/default/icons/syncthing.svg b/plinth/modules/syncthing/static/icons/syncthing.svg similarity index 100% rename from static/themes/default/icons/syncthing.svg rename to plinth/modules/syncthing/static/icons/syncthing.svg diff --git a/static/themes/default/icons/tor.png b/plinth/modules/tor/static/icons/tor.png similarity index 100% rename from static/themes/default/icons/tor.png rename to plinth/modules/tor/static/icons/tor.png diff --git a/static/themes/default/icons/tor.svg b/plinth/modules/tor/static/icons/tor.svg similarity index 100% rename from static/themes/default/icons/tor.svg rename to plinth/modules/tor/static/icons/tor.svg diff --git a/static/themes/default/icons/transmission.png b/plinth/modules/transmission/static/icons/transmission.png similarity index 100% rename from static/themes/default/icons/transmission.png rename to plinth/modules/transmission/static/icons/transmission.png diff --git a/static/themes/default/icons/transmission.svg b/plinth/modules/transmission/static/icons/transmission.svg similarity index 100% rename from static/themes/default/icons/transmission.svg rename to plinth/modules/transmission/static/icons/transmission.svg diff --git a/static/themes/default/icons/ttrss.png b/plinth/modules/ttrss/static/icons/ttrss.png similarity index 100% rename from static/themes/default/icons/ttrss.png rename to plinth/modules/ttrss/static/icons/ttrss.png diff --git a/static/themes/default/icons/ttrss.svg b/plinth/modules/ttrss/static/icons/ttrss.svg similarity index 100% rename from static/themes/default/icons/ttrss.svg rename to plinth/modules/ttrss/static/icons/ttrss.svg diff --git a/static/themes/default/icons/wireguard.png b/plinth/modules/wireguard/static/icons/wireguard.png similarity index 100% rename from static/themes/default/icons/wireguard.png rename to plinth/modules/wireguard/static/icons/wireguard.png diff --git a/static/themes/default/icons/wireguard.svg b/plinth/modules/wireguard/static/icons/wireguard.svg similarity index 100% rename from static/themes/default/icons/wireguard.svg rename to plinth/modules/wireguard/static/icons/wireguard.svg diff --git a/static/themes/default/icons/wordpress.png b/plinth/modules/wordpress/static/icons/wordpress.png similarity index 100% rename from static/themes/default/icons/wordpress.png rename to plinth/modules/wordpress/static/icons/wordpress.png diff --git a/static/themes/default/icons/wordpress.svg b/plinth/modules/wordpress/static/icons/wordpress.svg similarity index 100% rename from static/themes/default/icons/wordpress.svg rename to plinth/modules/wordpress/static/icons/wordpress.svg diff --git a/static/themes/default/icons/zoph.png b/plinth/modules/zoph/static/icons/zoph.png similarity index 100% rename from static/themes/default/icons/zoph.png rename to plinth/modules/zoph/static/icons/zoph.png diff --git a/static/themes/default/icons/zoph.svg b/plinth/modules/zoph/static/icons/zoph.svg similarity index 100% rename from static/themes/default/icons/zoph.svg rename to plinth/modules/zoph/static/icons/zoph.svg diff --git a/plinth/templates/app-header.html b/plinth/templates/app-header.html index d98c9a630..a8d178f56 100644 --- a/plinth/templates/app-header.html +++ b/plinth/templates/app-header.html @@ -10,7 +10,11 @@ {% if app_info.icon_filename %} - {{ app_info.name  }} + {% if app_info.app_id %} + {{ app_info.name  }} + {% else %} + {{ app_info.name  }} + {% endif %} {% endif %} diff --git a/plinth/templates/card.html b/plinth/templates/card.html index fded24c76..40b1b3f42 100644 --- a/plinth/templates/card.html +++ b/plinth/templates/card.html @@ -11,7 +11,11 @@ {% if 'fa-' in item.icon %} {% else %} - + {% if item.app_id %} + + {% else %} + + {% endif %} {% endif %}
{{ item.short_description|default:'' }}
diff --git a/plinth/templates/index.html b/plinth/templates/index.html index 7b93c0172..57bb2d6be 100644 --- a/plinth/templates/index.html +++ b/plinth/templates/index.html @@ -68,7 +68,11 @@ {% if "custom" in shortcut.icon %} {% else %} - + {% if shortcut.app_id %} + + {% else %} + + {% endif %} {% endif %}
diff --git a/plinth/templates/notifications.html b/plinth/templates/notifications.html index b27a42f6d..7a340b75a 100644 --- a/plinth/templates/notifications.html +++ b/plinth/templates/notifications.html @@ -17,9 +17,15 @@ {% if note.data.app_icon %}
{% elif note.data.app_icon_filename %} - {{ note.data.app_name }} + {% if note.app_id %} + {{ note.data.app_name }} + {% else %} + {{ note.data.app_name }} + {% endif %} {% endif %} {{ note.data.app_name }}