diff --git a/tray/gui/trayicon.cpp b/tray/gui/trayicon.cpp index 757c2b0..3550d09 100644 --- a/tray/gui/trayicon.cpp +++ b/tray/gui/trayicon.cpp @@ -29,7 +29,8 @@ TrayIcon::TrayIcon(QObject *parent) : m_statusIconNotify(QIcon(renderSvgImage(QStringLiteral(":/icons/hicolor/scalable/status/syncthing-notify.svg")))), m_statusIconPause(QIcon(renderSvgImage(QStringLiteral(":/icons/hicolor/scalable/status/syncthing-pause.svg")))), m_statusIconSync(QIcon(renderSvgImage(QStringLiteral(":/icons/hicolor/scalable/status/syncthing-sync.svg")))), - m_statusIconOutOfSync(QIcon(renderSvgImage(QStringLiteral(":/icons/hicolor/scalable/status/syncthing-error.svg")))), + m_statusIconError(QIcon(renderSvgImage(QStringLiteral(":/icons/hicolor/scalable/status/syncthing-error.svg")))), + m_statusIconErrorSync(QIcon(renderSvgImage(QStringLiteral(":/icons/hicolor/scalable/status/syncthing-error-sync.svg")))), m_trayMenu(this), m_status(SyncthingStatus::Disconnected) { @@ -113,8 +114,13 @@ void TrayIcon::updateStatusIconAndText(SyncthingStatus status) break; default: if(connection.hasOutOfSyncDirs()) { - setIcon(m_statusIconOutOfSync); - setToolTip(tr("At least one directory is out of sync")); + if(status == SyncthingStatus::Synchronizing) { + setIcon(m_statusIconErrorSync); + setToolTip(tr("Synchronization is ongoing but at least one directory is out of sync")); + } else { + setIcon(m_statusIconError); + setToolTip(tr("At least one directory is out of sync")); + } } else if(connection.hasUnreadNotifications()) { setIcon(m_statusIconNotify); setToolTip(tr("Notifications available")); diff --git a/tray/gui/trayicon.h b/tray/gui/trayicon.h index 0d6bb06..d88cc9d 100644 --- a/tray/gui/trayicon.h +++ b/tray/gui/trayicon.h @@ -41,7 +41,8 @@ private: const QIcon m_statusIconNotify; const QIcon m_statusIconPause; const QIcon m_statusIconSync; - const QIcon m_statusIconOutOfSync; + const QIcon m_statusIconError; + const QIcon m_statusIconErrorSync; TrayMenu m_trayMenu; QMenu m_contextMenu; Data::SyncthingStatus m_status; diff --git a/tray/resources/icons.qrc b/tray/resources/icons.qrc index aefab24..f1b31ca 100644 --- a/tray/resources/icons.qrc +++ b/tray/resources/icons.qrc @@ -27,5 +27,6 @@ icons/hicolor/scalable/places/network-workgroup.svg icons/hicolor/scalable/apps/system-run.svg icons/hicolor/scalable/actions/network-connect.svg + icons/hicolor/scalable/status/syncthing-error-sync.svg diff --git a/tray/resources/icons/hicolor/scalable/status/syncthing-error-sync.svg b/tray/resources/icons/hicolor/scalable/status/syncthing-error-sync.svg new file mode 100644 index 0000000..f57b305 --- /dev/null +++ b/tray/resources/icons/hicolor/scalable/status/syncthing-error-sync.svg @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + +