From b9c54e9276122ec839aa0d3e51febbabb87eda5c Mon Sep 17 00:00:00 2001 From: Xavier Michelon Date: Mon, 8 May 2023 09:19:32 +0200 Subject: [PATCH] fix(GODT-2615): remove keyboard shortcut for tray icon context menu on Windows and Linux. --- .../frontend/bridge-gui/bridge-gui/TrayIcon.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/internal/frontend/bridge-gui/bridge-gui/TrayIcon.cpp b/internal/frontend/bridge-gui/bridge-gui/TrayIcon.cpp index b389d89e..bd00a9d1 100644 --- a/internal/frontend/bridge-gui/bridge-gui/TrayIcon.cpp +++ b/internal/frontend/bridge-gui/bridge-gui/TrayIcon.cpp @@ -271,8 +271,10 @@ void TrayIcon::refreshContextMenu() { menu_->clear(); menu_->addAction(statusIcon_, stateString_, &app().backend(), &QMLBackend::showMainWindow); menu_->addSeparator(); + QKeySequence noShortcut; UserList const &users = app().backend().users(); qint32 const userCount = users.count(); + bool const onMac = onMacOS(); for (qint32 i = 0; i < userCount; i++) { User const &user = *users.get(i); UserState const state = user.state(); @@ -280,7 +282,7 @@ void TrayIcon::refreshContextMenu() { action->setIcon((UserState::Connected == state) ? greenDot_ : (UserState::Locked == state ? orangeDot_ : greyDot_)); action->setData(user.id()); connect(action, &QAction::triggered, this, &TrayIcon::onUserClicked); - if (i < 10) { + if ((i < 10) && onMac) { action->setShortcut(QKeySequence(QString("Ctrl+%1").arg((i + 1) % 10))); } menu_->addAction(action); @@ -288,9 +290,10 @@ void TrayIcon::refreshContextMenu() { if (userCount) { menu_->addSeparator(); } - menu_->addAction(tr("&Open Bridge"), QKeySequence("Ctrl+O"), &app().backend(), &QMLBackend::showMainWindow); - menu_->addAction(tr("&Help"), QKeySequence("Ctrl+F1"), &app().backend(), &QMLBackend::showHelp); - menu_->addAction(tr("&Settings"), QKeySequence("Ctrl+,"), &app().backend(), &QMLBackend::showSettings); + + menu_->addAction(tr("&Open Bridge"), onMac ? QKeySequence("Ctrl+O") : noShortcut, &app().backend(), &QMLBackend::showMainWindow); + menu_->addAction(tr("&Help"), onMac ? QKeySequence("Ctrl+F1") : noShortcut, &app().backend(), &QMLBackend::showHelp); + menu_->addAction(tr("&Settings"), onMac ? QKeySequence("Ctrl+,") : noShortcut, &app().backend(), &QMLBackend::showSettings); menu_->addSeparator(); - menu_->addAction(tr("&Quit Bridge"), QKeySequence("Ctrl+Q"), &app().backend(), &QMLBackend::quit); + menu_->addAction(tr("&Quit Bridge"), onMac ? QKeySequence("Ctrl+Q") : noShortcut, &app().backend(), &QMLBackend::quit); }