fix(GODT-2615): remove keyboard shortcut for tray icon context menu on Windows and Linux.

This commit is contained in:
Xavier Michelon
2023-05-08 09:19:32 +02:00
parent 50709acc5f
commit b9c54e9276

View File

@ -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);
}