Le 17/05/2016 19:31, Scott Kostyshak a écrit :

I tried your patch. I have the same problems as with Stephan's patch
(also reported by Kornel). For example, none of alt+f, alt+f, alt+d,
alt+s work for me.


How about removing what makes no sense?

>From 334bb3ef61273cc2c3f348dbf27169623633231d Mon Sep 17 00:00:00 2001
From: Guillaume Munch <g...@lyx.org>
Date: Tue, 17 May 2016 18:45:37 +0100
Subject: [PATCH] bug #10075

---
 src/frontends/qt4/CustomizedWidgets.cpp | 23 +++--------------------
 src/frontends/qt4/CustomizedWidgets.h   |  1 -
 2 files changed, 3 insertions(+), 21 deletions(-)

diff --git a/src/frontends/qt4/CustomizedWidgets.cpp b/src/frontends/qt4/CustomizedWidgets.cpp
index b6dc73f..940468e 100644
--- a/src/frontends/qt4/CustomizedWidgets.cpp
+++ b/src/frontends/qt4/CustomizedWidgets.cpp
@@ -45,7 +45,6 @@ namespace frontend {
 ShortcutWidget::ShortcutWidget(QWidget * parent)
 	: QLabel(parent), keysequence_()
 {
-	QApplication::instance()->installEventFilter(this);
 	has_cursor_ = false;
 	setFrameShape(QFrame::Panel);
 	setFrameShadow(QFrame::Raised);
@@ -62,24 +61,6 @@ void ShortcutWidget::reset()
 }
 
 
-bool ShortcutWidget::eventFilter(QObject * obj, QEvent * e)
-{
-	if (!has_cursor_)
-		return false;
-
-	switch (e->type()) {
-		// swallow these if we have focus and they come from elsewhere
-		case QEvent::Shortcut:
-		case QEvent::ShortcutOverride:
-			if (obj != this)
-				return true;
-		default: 
-			break;
-	}
-	return false;
-}
-
-
 KeySequence const ShortcutWidget::getKeySequence() const
 {
 	return keysequence_;
@@ -124,11 +105,13 @@ bool ShortcutWidget::event(QEvent * e)
 			setFrameShadow(QFrame::Sunken);
 			break;
 		case QEvent::ShortcutOverride:
+			e->accept();
+			return true;
+		case QEvent::KeyPress:
 			keyPressEvent(static_cast<QKeyEvent *>(e));
 			return true;
 		case QEvent::KeyRelease:
 		case QEvent::Shortcut:
-		case QEvent::KeyPress:
 			return true;
 		default: 
 			break;
diff --git a/src/frontends/qt4/CustomizedWidgets.h b/src/frontends/qt4/CustomizedWidgets.h
index 6104d30..3409679 100644
--- a/src/frontends/qt4/CustomizedWidgets.h
+++ b/src/frontends/qt4/CustomizedWidgets.h
@@ -31,7 +31,6 @@ class ShortcutWidget : public QLabel {
 public:
 	ShortcutWidget(QWidget * parent);
 	void reset();
-	bool eventFilter(QObject*, QEvent* e );
 	KeySequence const getKeySequence() const;
 	void setKeySequence(lyx::KeySequence const & s);
 	void removeFromSequence();
-- 
2.7.4

Reply via email to