forked from qt-creator/qt-creator
Core: fix direction of Ctrl+N/P/Up/Down
Additionally accept the shortcut override events in order to block other potential shortcuts from interfering with the selection of the open document. amendse6299f510d
amends03e35aac14
Task-number: QTCREATORBUG-31072 Change-Id: Idfd65b92a84f5be39f9a01da68e8046ae5304733 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -165,34 +165,35 @@ bool OpenEditorsWindow::eventFilter(QObject *obj, QEvent *e)
|
||||
auto ke = static_cast<QKeyEvent*>(e);
|
||||
switch (ke->key()) {
|
||||
case Qt::Key_Up:
|
||||
selectPreviousEditor();
|
||||
case Qt::Key_P:
|
||||
e->accept();
|
||||
return true;
|
||||
case Qt::Key_Down:
|
||||
selectNextEditor();
|
||||
return true;
|
||||
case Qt::Key_P:
|
||||
case Qt::Key_N:
|
||||
if (ke->modifiers() == Qt::KeyboardModifiers(HostOsInfo::controlModifier())) {
|
||||
if (ke->key() == Qt::Key_P)
|
||||
selectPreviousEditor();
|
||||
else
|
||||
selectNextEditor();
|
||||
e->accept();
|
||||
return true;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (e->type() == QEvent::KeyPress) {
|
||||
auto ke = static_cast<QKeyEvent*>(e);
|
||||
if (ke->key() == Qt::Key_Escape) {
|
||||
switch (ke->key()) {
|
||||
case Qt::Key_Up:
|
||||
case Qt::Key_P:
|
||||
selectNextEditor();
|
||||
return true;
|
||||
case Qt::Key_Down:
|
||||
case Qt::Key_N:
|
||||
selectPreviousEditor();
|
||||
return true;
|
||||
case Qt::Key_Escape:
|
||||
setVisible(false);
|
||||
return true;
|
||||
}
|
||||
if (ke->key() == Qt::Key_Return
|
||||
|| ke->key() == Qt::Key_Enter) {
|
||||
case Qt::Key_Return:
|
||||
case Qt::Key_Enter:
|
||||
selectEditor(m_editorView->currentItem());
|
||||
return true;
|
||||
}
|
||||
|
||||
} else if (e->type() == QEvent::KeyRelease) {
|
||||
auto ke = static_cast<QKeyEvent*>(e);
|
||||
if (ke->modifiers() == 0
|
||||
|
Reference in New Issue
Block a user