Improve tray icon behavior and KDE integration (patch p5)#127
Conversation
7615f0b to
a8d9ff7
Compare
43 # Conflicts: 42 # CMakeLists.txt 41 # 40 # It looks like you may be committing a cherry-pick. 39 # If this is not correct, please run 38 # git update-ref -d CHERRY_PICK_HEAD 37 # and try again. 36 35 34 # Please enter the commit message for your changes. Lines starting 33 # with '#' will be ignored, and an empty message aborts the commit. 32 # 31 # Date: Thu Aug 14 11:06:36 2025 -0700 30 # 29 # On branch trayicon-rescue 28 # Your branch is up to date with 'upstream/main'. 27 # 26 # You are currently cherry-picking commit 064530e. 25 # 24 # Changes to be committed: 23 # modified: CMakeLists.txt 22 # modified: gui/mainwindow.cpp 21 # modified: gui/trayitem.cpp 20 # modified: gui/trayitem.h 19 # modified: support/QtAwesome.cpp 18 # 17 # Untracked files: 16 # 3rdparty/ebur128-not-used/ 15 # 3rdparty/kcategorizedview-debundle/ 14 # 3rdparty/qtiocompressor-removed/ 13 # 3rdparty/qtsingleapplication-not-used-linux/ 12 # 3rdparty/qxt-not-used-linux/ 11 # 3rdparty/solid-lite-not-used/ 10 # CMakeLists.txt.IO 9 # CMakeLists.txt.old 8 # CMakeLists.txt.orig 7 # CMakeLists.txt.save 6 # data/ 5 # online/onlinedbservice.cpp.orig 4 # online/podcastsearchdialog.cpp.orig 3 # support/CMakeCache.txt 2 # support/CMakeFiles/ 1 # support/QtAwesome.cpp.txt 46 # #
|
Rebased onto current main / v3.5.0. The Nix workflow conflict is resolved and all required checks are passing now. This should be ready to review/merge. |
|
as this PR shows the KDE frameworks are simply awesome :D it seems that KStatusNotifierItem has an automatic fallback to QSystemTrayIcon, so if I'm being honest, it makes sense to just replace all instances of QSystemTrayIcon with it... but I'm hesitant to have to vendor another library for non-Linux platforms (#152). however, there is a lot of legacy cruft sitting in trayicon.cpp. I think I can merge this with some changes, but down the line I think I would like to review trayicon.cpp and see if a lot of the platform ifdefs can be cleaned up in favor of using KStatusNotifierItem. |
|
Thanks, that makes sense to me. My main goal with this PR was to improve the KDE/Plasma behavior without disturbing the other platforms, so I intentionally kept the change limited rather than trying to rewrite all of trayicon.cpp. I agree that a broader cleanup could make sense later, especially if KStatusNotifierItem can replace some of the existing platform-specific handling cleanly. For now I am fine with you merging this with changes if you want to adjust the approach. |
Improve tray icon behavior and KDE integration
No overlay icons are added at this time.