diff --git a/src/qt/bitcoingui.cpp b/src/qt/bitcoingui.cpp index 944f97fd07..10dbf392e6 100644 --- a/src/qt/bitcoingui.cpp +++ b/src/qt/bitcoingui.cpp @@ -493,6 +493,7 @@ void BitcoinGUI::createMenuBar() window_menu->addSeparator(); for (RPCConsole::TabTypes tab_type : rpcConsole->tabs()) { QAction* tab_action = window_menu->addAction(rpcConsole->tabTitle(tab_type)); + tab_action->setShortcut(rpcConsole->tabShortcut(tab_type)); connect(tab_action, &QAction::triggered, [this, tab_type] { rpcConsole->setTabFocus(tab_type); showDebugWindow(); diff --git a/src/qt/rpcconsole.cpp b/src/qt/rpcconsole.cpp index eccc34e12f..4f6629bfe1 100644 --- a/src/qt/rpcconsole.cpp +++ b/src/qt/rpcconsole.cpp @@ -1276,6 +1276,16 @@ QString RPCConsole::tabTitle(TabTypes tab_type) const return ui->tabWidget->tabText(tab_type); } +QKeySequence RPCConsole::tabShortcut(TabTypes tab_type) const +{ + switch (tab_type) { + case TAB_INFO: return QKeySequence(Qt::CTRL + Qt::Key_I); + case TAB_CONSOLE: return QKeySequence(Qt::CTRL + Qt::Key_T); + case TAB_GRAPH: return QKeySequence(Qt::CTRL + Qt::Key_N); + case TAB_PEERS: return QKeySequence(Qt::CTRL + Qt::Key_P); + } +} + void RPCConsole::updateAlerts(const QString& warnings) { this->ui->label_alerts->setVisible(!warnings.isEmpty()); diff --git a/src/qt/rpcconsole.h b/src/qt/rpcconsole.h index 3f7a74ba03..6b0f07baf1 100644 --- a/src/qt/rpcconsole.h +++ b/src/qt/rpcconsole.h @@ -68,6 +68,7 @@ class RPCConsole: public QWidget std::vector tabs() const { return {TAB_INFO, TAB_CONSOLE, TAB_GRAPH, TAB_PEERS}; } QString tabTitle(TabTypes tab_type) const; + QKeySequence tabShortcut(TabTypes tab_type) const; protected: virtual bool eventFilter(QObject* obj, QEvent *event);