gui: ship the real icon set, wire toolbar/tray/window icon, rebase onto main
Adwaita-derived (GNOME Project, LGPL-3-or-CC-BY-SA), recoloured per light/dark skin and laid out in IDM's toolbar positions per docs/03-gui-spec.md §1. Licence and per-file provenance recorded in gui/resources/icons/LICENSE. New IconTheme mirrors ThemeManager's colorSchemeChanged hook so a live light/dark switch swaps every action's glyph, not just the QSS. Toolbar/menu actions, the tray icon and the window icon all now use it instead of the SP_ArrowDown placeholder. Install-path notes for PKG filed as R5 in gui/docs/pkg-qa-requests-m1.md. Also rebases lane/gui onto main (13 commits, no gui/ conflicts). Verified: full build clean, all 13 gui ctest targets pass (including gui_no_download_logic), unhappy-path DoD gate PASS against mockd (--drop-connection). Co-Authored-By: Claude Sonnet 5 <[email protected]>
This commit is contained in:
@@ -27,6 +27,7 @@ class DownloadTableModel;
|
||||
class CategoryPanel;
|
||||
class TrayIcon;
|
||||
class DropTargetWidget;
|
||||
class IconTheme;
|
||||
#ifdef VELOX_GUI_HAVE_DBUS
|
||||
class GlobalShortcut;
|
||||
#endif
|
||||
@@ -69,6 +70,7 @@ class MainWindow : public QMainWindow {
|
||||
void showAndRaise();
|
||||
void onSettingsChanged(const QJsonObject ¶ms);
|
||||
void onUrlDropped(const QString &url);
|
||||
void applyIcons();
|
||||
|
||||
private:
|
||||
void buildActions();
|
||||
@@ -107,6 +109,7 @@ class MainWindow : public QMainWindow {
|
||||
|
||||
QJsonArray categoriesCache_;
|
||||
QJsonArray queuesCache_;
|
||||
IconTheme *iconTheme_ = nullptr;
|
||||
TrayIcon *trayIcon_ = nullptr;
|
||||
DropTargetWidget *dropTarget_ = nullptr;
|
||||
bool minimizeToTrayEnabled_ = false;
|
||||
|
||||
Reference in New Issue
Block a user