connect(_tray.data(), &Systray::openHelp,
this, &ownCloudGui::slotHelp);
+ connect(_tray.data(), &Systray::openMainDialog,
+ this, &ownCloudGui::slotOpenMainDialog);
+
connect(_tray.data(), &Systray::openSettings,
this, &ownCloudGui::slotShowSettings);
void ownCloudGui::slotTrayClicked(QSystemTrayIcon::ActivationReason reason)
{
- if (reason == QSystemTrayIcon::Trigger || reason == QSystemTrayIcon::Context) {
+ if (reason == QSystemTrayIcon::Trigger) {
if (OwncloudSetupWizard::bringWizardToFrontIfVisible()) {
// brought wizard to front
} else if (_shareDialogs.size() > 0) {
#include <QQmlContext>
#include <QQuickWindow>
#include <QScreen>
+#include <QMenu>
#ifdef USE_FDO_NOTIFICATIONS
#include <QDBusConnection>
}
);
+#ifndef Q_OS_MAC
+ auto contextMenu = new QMenu();
+ contextMenu->addAction(tr("Open main dialog"), this, &Systray::openMainDialog);
+ contextMenu->addAction(tr("Settings"), this, &Systray::openSettings);
+ contextMenu->addAction(tr("Exit %1").arg(Theme::instance()->appNameGUI()), this, &Systray::shutdown);
+ setContextMenu(contextMenu);
+#endif
+
connect(UserModel::instance(), &UserModel::newUserSelected,
this, &Systray::slotNewUserSelected);
signals:
void currentUserChanged();
+ void openMainDialog();
void openSettings();
void openHelp();
void shutdown();
}\r
\r
MenuItem {\r
- text: qsTr("Open settings")\r
+ text: qsTr("Settings")\r
font.pixelSize: Style.topLinePixelSize\r
onClicked: Systray.openSettings()\r
}\r
\r
MenuItem {\r
- text: qsTr("Help")\r
- font.pixelSize: Style.topLinePixelSize\r
- onClicked: Systray.openHelp()\r
- }\r
-\r
- MenuItem {\r
- text: qsTr("Quit Nextcloud")\r
+ text: qsTr("Exit");\r
font.pixelSize: Style.topLinePixelSize\r
onClicked: Systray.shutdown()\r
}\r