From e46ee312dd567d126023815292e4e61999c48133 Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Wed, 10 Jul 2024 15:25:22 +0200 Subject: [PATCH] Add some key event logging for OpenEditorsWindow On some platforms/configurations the popup for switching documents does not close when releasing the modifier key. Add some debug output to try to find out what happens. Task-number: QTCREATORBUG-27378 Task-number: QTCREATORBUG-31228 Change-Id: Ia882ce6be1bd235601f9c869b79fb8c15ab72a3a Reviewed-by: David Schulz --- .../coreplugin/editormanager/openeditorswindow.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/plugins/coreplugin/editormanager/openeditorswindow.cpp b/src/plugins/coreplugin/editormanager/openeditorswindow.cpp index 172b54570e1..cf98617261d 100644 --- a/src/plugins/coreplugin/editormanager/openeditorswindow.cpp +++ b/src/plugins/coreplugin/editormanager/openeditorswindow.cpp @@ -20,11 +20,14 @@ #include #include -#include +#include #include +#include using namespace Utils; +Q_LOGGING_CATEGORY(openEditorsLog, "qtc.core.openeditorswindow", QtWarningMsg); + namespace Core::Internal { class OpenEditorsItem : public TreeItem @@ -196,9 +199,10 @@ bool OpenEditorsWindow::eventFilter(QObject *obj, QEvent *e) } else if (e->type() == QEvent::KeyRelease) { auto ke = static_cast(e); + qCDebug(openEditorsLog()) << ke; if (ke->modifiers() == 0 - /*HACK this is to overcome some event inconsistencies between platforms*/ - || (ke->modifiers() == Qt::AltModifier + /*HACK this is to overcome some event inconsistencies between platforms*/ + || (ke->modifiers() == Qt::AltModifier && (ke->key() == Qt::Key_Alt || ke->key() == -1))) { selectAndHide(); }