From 218228b696367e688537a04afeb62055037afdc3 Mon Sep 17 00:00:00 2001 From: Jason Papakostas Date: Tue, 5 Apr 2016 09:54:06 -0500 Subject: [PATCH 1/2] feat: install icons with make install on unix qmake doesn't have a straightforward way to change filenames when installing files so I moved them into subfolders. issue #2903 --- img/icons/{qtox-128x128.png => 128x128/qtox.png} | Bin img/icons/{qtox-14x14.png => 14x14/qtox.png} | Bin img/icons/{qtox-16x16.png => 16x16/qtox.png} | Bin img/icons/{qtox-192x192.png => 192x192/qtox.png} | Bin img/icons/{qtox-22x22.png => 22x22/qtox.png} | Bin img/icons/{qtox-24x24.png => 24x24/qtox.png} | Bin img/icons/{qtox-256x256.png => 256x256/qtox.png} | Bin img/icons/{qtox-32x32.png => 32x32/qtox.png} | Bin img/icons/{qtox-36x36.png => 36x36/qtox.png} | Bin img/icons/{qtox-48x48.png => 48x48/qtox.png} | Bin img/icons/{qtox-512x512.png => 512x512/qtox.png} | Bin img/icons/{qtox-64x64.png => 64x64/qtox.png} | Bin img/icons/{qtox-72x72.png => 72x72/qtox.png} | Bin img/icons/{qtox-96x96.png => 96x96/qtox.png} | Bin qtox.pro | 11 +++++++++++ 15 files changed, 11 insertions(+) rename img/icons/{qtox-128x128.png => 128x128/qtox.png} (100%) rename img/icons/{qtox-14x14.png => 14x14/qtox.png} (100%) rename img/icons/{qtox-16x16.png => 16x16/qtox.png} (100%) rename img/icons/{qtox-192x192.png => 192x192/qtox.png} (100%) rename img/icons/{qtox-22x22.png => 22x22/qtox.png} (100%) rename img/icons/{qtox-24x24.png => 24x24/qtox.png} (100%) rename img/icons/{qtox-256x256.png => 256x256/qtox.png} (100%) rename img/icons/{qtox-32x32.png => 32x32/qtox.png} (100%) rename img/icons/{qtox-36x36.png => 36x36/qtox.png} (100%) rename img/icons/{qtox-48x48.png => 48x48/qtox.png} (100%) rename img/icons/{qtox-512x512.png => 512x512/qtox.png} (100%) rename img/icons/{qtox-64x64.png => 64x64/qtox.png} (100%) rename img/icons/{qtox-72x72.png => 72x72/qtox.png} (100%) rename img/icons/{qtox-96x96.png => 96x96/qtox.png} (100%) diff --git a/img/icons/qtox-128x128.png b/img/icons/128x128/qtox.png similarity index 100% rename from img/icons/qtox-128x128.png rename to img/icons/128x128/qtox.png diff --git a/img/icons/qtox-14x14.png b/img/icons/14x14/qtox.png similarity index 100% rename from img/icons/qtox-14x14.png rename to img/icons/14x14/qtox.png diff --git a/img/icons/qtox-16x16.png b/img/icons/16x16/qtox.png similarity index 100% rename from img/icons/qtox-16x16.png rename to img/icons/16x16/qtox.png diff --git a/img/icons/qtox-192x192.png b/img/icons/192x192/qtox.png similarity index 100% rename from img/icons/qtox-192x192.png rename to img/icons/192x192/qtox.png diff --git a/img/icons/qtox-22x22.png b/img/icons/22x22/qtox.png similarity index 100% rename from img/icons/qtox-22x22.png rename to img/icons/22x22/qtox.png diff --git a/img/icons/qtox-24x24.png b/img/icons/24x24/qtox.png similarity index 100% rename from img/icons/qtox-24x24.png rename to img/icons/24x24/qtox.png diff --git a/img/icons/qtox-256x256.png b/img/icons/256x256/qtox.png similarity index 100% rename from img/icons/qtox-256x256.png rename to img/icons/256x256/qtox.png diff --git a/img/icons/qtox-32x32.png b/img/icons/32x32/qtox.png similarity index 100% rename from img/icons/qtox-32x32.png rename to img/icons/32x32/qtox.png diff --git a/img/icons/qtox-36x36.png b/img/icons/36x36/qtox.png similarity index 100% rename from img/icons/qtox-36x36.png rename to img/icons/36x36/qtox.png diff --git a/img/icons/qtox-48x48.png b/img/icons/48x48/qtox.png similarity index 100% rename from img/icons/qtox-48x48.png rename to img/icons/48x48/qtox.png diff --git a/img/icons/qtox-512x512.png b/img/icons/512x512/qtox.png similarity index 100% rename from img/icons/qtox-512x512.png rename to img/icons/512x512/qtox.png diff --git a/img/icons/qtox-64x64.png b/img/icons/64x64/qtox.png similarity index 100% rename from img/icons/qtox-64x64.png rename to img/icons/64x64/qtox.png diff --git a/img/icons/qtox-72x72.png b/img/icons/72x72/qtox.png similarity index 100% rename from img/icons/qtox-72x72.png rename to img/icons/72x72/qtox.png diff --git a/img/icons/qtox-96x96.png b/img/icons/96x96/qtox.png similarity index 100% rename from img/icons/qtox-96x96.png rename to img/icons/96x96/qtox.png diff --git a/qtox.pro b/qtox.pro index 265c7b2fe..dbe17ce62 100644 --- a/qtox.pro +++ b/qtox.pro @@ -187,6 +187,17 @@ win32 { desktop.files += qTox.desktop INSTALLS += target desktop + # Install application icons according to the XDG spec + ICON_SIZES = 14 16 22 24 32 36 48 64 72 96 128 192 256 512 + for(icon_size, ICON_SIZES) { + icon_$${icon_size}.files = img/icons/$${icon_size}x$${icon_size}/qtox.png + icon_$${icon_size}.path = $$DATADIR/icons/hicolor/$${icon_size}x$${icon_size}/apps + INSTALLS += icon_$${icon_size} + } + icon_scalable.files = img/icons/qtox.svg + icon_scalable.path = $$DATADIR/icons/hicolor/scalable/apps + INSTALLS += icon_scalable + # If we're building a package, static link libtox[core,av] and libsodium, since they are not provided by any package contains(STATICPKG, YES) { LIBS += -L$$PWD/libs/lib/ -lopus -lvpx -lopenal -Wl,-Bstatic -ltoxcore -ltoxav -ltoxencryptsave -ltoxdns -lsodium -lavformat -lavdevice -lavcodec -lavutil -lswscale -lz -Wl,-Bdynamic From 90874a478fb3cc6d953a0e37aeb110b95066eb19 Mon Sep 17 00:00:00 2001 From: Jason Papakostas Date: Mon, 4 Apr 2016 10:39:56 -0500 Subject: [PATCH 2/2] fix(Widget::updateIcons): fix the way systray icons are loaded the system tray should no longer use a static icon when the xdg application icons are named qtox.{png,svg} this means the workaround https://bugs.archlinux.org/task/47910 done downstream at arch linux shouldn't be necessary anymore. related discussion in #2903 --- src/widget/widget.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/widget/widget.cpp b/src/widget/widget.cpp index 104c545b8..39d5ac6a4 100644 --- a/src/widget/widget.cpp +++ b/src/widget/widget.cpp @@ -445,8 +445,12 @@ void Widget::updateIcons() status = QStringLiteral("offline"); } - QIcon ico = QIcon::fromTheme("qtox-" + status); - if (ico.isNull()) + QIcon ico; + if (QIcon::hasThemeIcon("qtox-" + status)) + { + ico = QIcon::fromTheme("qtox-" + status); + } + else { QString color = Settings::getInstance().getLightTrayIcon() ? "light" : "dark"; QString path = ":/img/taskbar/" + color + "/taskbar_" + status + ".svg";