Edwin Leuven wrote:
> For some reason QBrowseBox doesn't get mouse focus.

Fix attached.

(Have a look at
http://doc.trolltech.com/3.0/qscrollview.html#details
for details)

Regards,
Jürgen.
Index: src/frontends/qt2/QBrowseBox.C
===================================================================
RCS file: /cvs/lyx/lyx-devel/src/frontends/qt2/QBrowseBox.C,v
retrieving revision 1.7
diff -u -r1.7 QBrowseBox.C
--- src/frontends/qt2/QBrowseBox.C	2002/11/08 00:09:00	1.7
+++ src/frontends/qt2/QBrowseBox.C	2002/11/11 15:30:51
@@ -44,9 +44,9 @@
 	else
 		setFrameStyle(QFrame::Panel | QFrame::Raised);
 
-	setFocusPolicy(QWidget::StrongFocus);
+	viewport()->setFocusPolicy(QWidget::StrongFocus);
 	// setMouseTracking must be called after setFocusPolicy
-	setMouseTracking(true);
+	viewport()->setMouseTracking(true);
 	inloop=false;
 	
 }
@@ -209,7 +209,7 @@
 	}
 }
 
-void QBrowseBox::mouseReleaseEvent(QMouseEvent *)
+void QBrowseBox::contentsMouseReleaseEvent(QMouseEvent *)
 {
 
 	if (firstrelease_)
@@ -267,12 +267,12 @@
 }
 
 
-void QBrowseBox::mouseMoveEvent(QMouseEvent * e)
+void QBrowseBox::contentsMouseMoveEvent(QMouseEvent * e)
 {
 	qWarning("mouseMoveEvent");
 	int x = e->pos().x();
 	int y = e->pos().y();
-
+	
 	int cellx;
 	int celly;
 
Index: src/frontends/qt2/QBrowseBox.h
===================================================================
RCS file: /cvs/lyx/lyx-devel/src/frontends/qt2/QBrowseBox.h,v
retrieving revision 1.5
diff -u -r1.5 QBrowseBox.h
--- src/frontends/qt2/QBrowseBox.h	2002/11/08 00:09:00	1.5
+++ src/frontends/qt2/QBrowseBox.h	2002/11/11 15:30:52
@@ -48,16 +48,16 @@
 	
 protected:
 	virtual void keyPressEvent(QKeyEvent * e);
-	virtual void resizeEvent(QResizeEvent * e);
-	virtual void mouseReleaseEvent(QMouseEvent * e);
+	virtual void resizeEvent(QResizeEvent *e);
+	virtual void contentsMouseReleaseEvent(QMouseEvent *);
 	virtual void closeEvent(QCloseEvent * e);
-	virtual void mouseMoveEvent(QMouseEvent * e);
+	virtual void contentsMouseMoveEvent(QMouseEvent * e);
 	virtual void paintCell(QPainter *, int row, int col);
 	
 private:
 	// make sure the automatically generated one is not used
 	QBrowseBox & operator=(QBrowseBox const &);
-	
+
 	void moveLeft();
 	void moveRight();
 	void moveUp();

Reply via email to