Sun, 10 Jul 2011 19:01:08 +0200
Improved the handling of mouse XButton1 and XButton2 handling in the web browser.
--- a/APIs/Python3/eric5.api Sun Jul 10 16:31:33 2011 +0200 +++ b/APIs/Python3/eric5.api Sun Jul 10 19:01:08 2011 +0200 @@ -1836,7 +1836,7 @@ eric5.Helpviewer.Bookmarks.BookmarksToolBar.BookmarksToolBar._createMenu?5() eric5.Helpviewer.Bookmarks.BookmarksToolBar.BookmarksToolBar.newUrl?7 eric5.Helpviewer.Bookmarks.BookmarksToolBar.BookmarksToolBar.openUrl?7 -eric5.Helpviewer.Bookmarks.BookmarksToolBar.BookmarksToolBar?1(model, parent=None) +eric5.Helpviewer.Bookmarks.BookmarksToolBar.BookmarksToolBar?1(mainWindow, model, parent=None) eric5.Helpviewer.Bookmarks.DefaultBookmarks.DefaultBookmarks?7 eric5.Helpviewer.Bookmarks.XbelReader.XbelReader.read?4(fileNameOrDevice) eric5.Helpviewer.Bookmarks.XbelReader.XbelReader?1() @@ -2087,7 +2087,10 @@ eric5.Helpviewer.HelpTocWidget.HelpTocWidget?1(engine, mainWindow, parent=None) eric5.Helpviewer.HelpTopicDialog.HelpTopicDialog.link?4() eric5.Helpviewer.HelpTopicDialog.HelpTopicDialog?1(parent, keyword, links) +eric5.Helpviewer.HelpWebSearchWidget.HelpWebSearchEdit.mousePressEvent?4(evt) +eric5.Helpviewer.HelpWebSearchWidget.HelpWebSearchEdit?1(mainWindow, parent=None) eric5.Helpviewer.HelpWebSearchWidget.HelpWebSearchWidget.clear?4() +eric5.Helpviewer.HelpWebSearchWidget.HelpWebSearchWidget.mousePressEvent?4(evt) eric5.Helpviewer.HelpWebSearchWidget.HelpWebSearchWidget.openSearchManager?4() eric5.Helpviewer.HelpWebSearchWidget.HelpWebSearchWidget.preferencesChanged?4() eric5.Helpviewer.HelpWebSearchWidget.HelpWebSearchWidget.saveSearches?4() @@ -2122,6 +2125,7 @@ eric5.Helpviewer.HelpWindow.HelpWindow.mainWindow?4() eric5.Helpviewer.HelpWindow.HelpWindow.masterPasswordChanged?4(oldPassword, newPassword) eric5.Helpviewer.HelpWindow.HelpWindow.maxMenuFilePathLen?7 +eric5.Helpviewer.HelpWindow.HelpWindow.mousePressEvent?4(evt) eric5.Helpviewer.HelpWindow.HelpWindow.networkAccessManager?4() eric5.Helpviewer.HelpWindow.HelpWindow.newTab?4(link=None, requestData=None) eric5.Helpviewer.HelpWindow.HelpWindow.newWindow?4(link=None) @@ -2464,6 +2468,7 @@ eric5.Helpviewer.UrlBar.UrlBar.UrlBar.focusOutEvent?4(evt) eric5.Helpviewer.UrlBar.UrlBar.UrlBar.keyPressEvent?4(evt) eric5.Helpviewer.UrlBar.UrlBar.UrlBar.mouseDoubleClickEvent?4(evt) +eric5.Helpviewer.UrlBar.UrlBar.UrlBar.mousePressEvent?4(evt) eric5.Helpviewer.UrlBar.UrlBar.UrlBar.paintEvent?4(evt) eric5.Helpviewer.UrlBar.UrlBar.UrlBar.preferencesChanged?4() eric5.Helpviewer.UrlBar.UrlBar.UrlBar.setBrowser?4(browser)
--- a/Documentation/Help/source.qhp Sun Jul 10 16:31:33 2011 +0200 +++ b/Documentation/Help/source.qhp Sun Jul 10 19:01:08 2011 +0200 @@ -2788,7 +2788,10 @@ <keyword name="JavaScriptExternalObject.AddSearchProvider" id="JavaScriptExternalObject.AddSearchProvider" ref="eric5.Helpviewer.HelpBrowserWV.html#JavaScriptExternalObject.AddSearchProvider" /> <keyword name="LinkedResource (Constructor)" id="LinkedResource (Constructor)" ref="eric5.Helpviewer.HelpBrowserWV.html#LinkedResource.__init__" /> <keyword name="HelpWebSearchWidget (Module)" id="HelpWebSearchWidget (Module)" ref="eric5.Helpviewer.HelpWebSearchWidget.html" /> + <keyword name="HelpWebSearchEdit" id="HelpWebSearchEdit" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchEdit" /> <keyword name="HelpWebSearchWidget" id="HelpWebSearchWidget" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchWidget" /> + <keyword name="HelpWebSearchEdit (Constructor)" id="HelpWebSearchEdit (Constructor)" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchEdit.__init__" /> + <keyword name="HelpWebSearchEdit.mousePressEvent" id="HelpWebSearchEdit.mousePressEvent" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchEdit.mousePressEvent" /> <keyword name="HelpWebSearchWidget (Constructor)" id="HelpWebSearchWidget (Constructor)" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchWidget.__init__" /> <keyword name="HelpWebSearchWidget.__addEngineFromUrl" id="HelpWebSearchWidget.__addEngineFromUrl" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchWidget.__addEngineFromUrl" /> <keyword name="HelpWebSearchWidget.__changeCurrentEngine" id="HelpWebSearchWidget.__changeCurrentEngine" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchWidget.__changeCurrentEngine" /> @@ -2806,6 +2809,7 @@ <keyword name="HelpWebSearchWidget.__textChanged" id="HelpWebSearchWidget.__textChanged" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchWidget.__textChanged" /> <keyword name="HelpWebSearchWidget.__textEdited" id="HelpWebSearchWidget.__textEdited" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchWidget.__textEdited" /> <keyword name="HelpWebSearchWidget.clear" id="HelpWebSearchWidget.clear" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchWidget.clear" /> + <keyword name="HelpWebSearchWidget.mousePressEvent" id="HelpWebSearchWidget.mousePressEvent" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchWidget.mousePressEvent" /> <keyword name="HelpWebSearchWidget.openSearchManager" id="HelpWebSearchWidget.openSearchManager" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchWidget.openSearchManager" /> <keyword name="HelpWebSearchWidget.preferencesChanged" id="HelpWebSearchWidget.preferencesChanged" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchWidget.preferencesChanged" /> <keyword name="HelpWebSearchWidget.saveSearches" id="HelpWebSearchWidget.saveSearches" ref="eric5.Helpviewer.HelpWebSearchWidget.html#HelpWebSearchWidget.saveSearches" /> @@ -2921,6 +2925,7 @@ <keyword name="HelpWindow.icon" id="HelpWindow.icon" ref="eric5.Helpviewer.HelpWindow.html#HelpWindow.icon" /> <keyword name="HelpWindow.mainWindow" id="HelpWindow.mainWindow" ref="eric5.Helpviewer.HelpWindow.html#HelpWindow.mainWindow" /> <keyword name="HelpWindow.masterPasswordChanged" id="HelpWindow.masterPasswordChanged" ref="eric5.Helpviewer.HelpWindow.html#HelpWindow.masterPasswordChanged" /> + <keyword name="HelpWindow.mousePressEvent" id="HelpWindow.mousePressEvent" ref="eric5.Helpviewer.HelpWindow.html#HelpWindow.mousePressEvent" /> <keyword name="HelpWindow.networkAccessManager" id="HelpWindow.networkAccessManager" ref="eric5.Helpviewer.HelpWindow.html#HelpWindow.networkAccessManager" /> <keyword name="HelpWindow.newTab" id="HelpWindow.newTab" ref="eric5.Helpviewer.HelpWindow.html#HelpWindow.newTab" /> <keyword name="HelpWindow.newWindow" id="HelpWindow.newWindow" ref="eric5.Helpviewer.HelpWindow.html#HelpWindow.newWindow" /> @@ -7716,6 +7721,7 @@ <keyword name="UrlBar.focusOutEvent" id="UrlBar.focusOutEvent" ref="eric5.Helpviewer.UrlBar.UrlBar.html#UrlBar.focusOutEvent" /> <keyword name="UrlBar.keyPressEvent" id="UrlBar.keyPressEvent" ref="eric5.Helpviewer.UrlBar.UrlBar.html#UrlBar.keyPressEvent" /> <keyword name="UrlBar.mouseDoubleClickEvent" id="UrlBar.mouseDoubleClickEvent" ref="eric5.Helpviewer.UrlBar.UrlBar.html#UrlBar.mouseDoubleClickEvent" /> + <keyword name="UrlBar.mousePressEvent" id="UrlBar.mousePressEvent" ref="eric5.Helpviewer.UrlBar.UrlBar.html#UrlBar.mousePressEvent" /> <keyword name="UrlBar.paintEvent" id="UrlBar.paintEvent" ref="eric5.Helpviewer.UrlBar.UrlBar.html#UrlBar.paintEvent" /> <keyword name="UrlBar.preferencesChanged" id="UrlBar.preferencesChanged" ref="eric5.Helpviewer.UrlBar.UrlBar.html#UrlBar.preferencesChanged" /> <keyword name="UrlBar.setBrowser" id="UrlBar.setBrowser" ref="eric5.Helpviewer.UrlBar.UrlBar.html#UrlBar.setBrowser" />
--- a/Documentation/Source/eric5.Helpviewer.Bookmarks.BookmarksToolBar.html Sun Jul 10 16:31:33 2011 +0200 +++ b/Documentation/Source/eric5.Helpviewer.Bookmarks.BookmarksToolBar.html Sun Jul 10 19:01:08 2011 +0200 @@ -96,11 +96,14 @@ </table> <a NAME="BookmarksToolBar.__init__" ID="BookmarksToolBar.__init__"></a> <h4>BookmarksToolBar (Constructor)</h4> -<b>BookmarksToolBar</b>(<i>model, parent=None</i>) +<b>BookmarksToolBar</b>(<i>mainWindow, model, parent=None</i>) <p> Constructor </p><dl> -<dt><i>model</i></dt> +<dt><i>mainWindow</i></dt> +<dd> +reference to the main window (HelpWindow) +</dd><dt><i>model</i></dt> <dd> reference to the bookmarks model (BookmarksModel) </dd><dt><i>parent</i></dt>
--- a/Documentation/Source/eric5.Helpviewer.HelpWebSearchWidget.html Sun Jul 10 16:31:33 2011 +0200 +++ b/Documentation/Source/eric5.Helpviewer.HelpWebSearchWidget.html Sun Jul 10 19:01:08 2011 +0200 @@ -31,6 +31,9 @@ <h3>Classes</h3> <table> <tr> +<td><a href="#HelpWebSearchEdit">HelpWebSearchEdit</a></td> +<td>Class implementing the web search line edit.</td> +</tr><tr> <td><a href="#HelpWebSearchWidget">HelpWebSearchWidget</a></td> <td>Class implementing a web search widget for the web browser.</td> </tr> @@ -40,6 +43,53 @@ <tr><td>None</td></tr> </table> <hr /><hr /> +<a NAME="HelpWebSearchEdit" ID="HelpWebSearchEdit"></a> +<h2>HelpWebSearchEdit</h2> +<p> + Class implementing the web search line edit. +</p> +<h3>Derived from</h3> +E5LineEdit +<h3>Class Attributes</h3> +<table> +<tr><td>None</td></tr> +</table> +<h3>Methods</h3> +<table> +<tr> +<td><a href="#HelpWebSearchEdit.__init__">HelpWebSearchEdit</a></td> +<td>Constructor</td> +</tr><tr> +<td><a href="#HelpWebSearchEdit.mousePressEvent">mousePressEvent</a></td> +<td>Protected method called by a mouse press event.</td> +</tr> +</table> +<a NAME="HelpWebSearchEdit.__init__" ID="HelpWebSearchEdit.__init__"></a> +<h4>HelpWebSearchEdit (Constructor)</h4> +<b>HelpWebSearchEdit</b>(<i>mainWindow, parent=None</i>) +<p> + Constructor +</p><dl> +<dt><i>mainWindow</i></dt> +<dd> +reference to the main window (HelpWindow) +</dd><dt><i>parent</i></dt> +<dd> +reference to the parent widget (QWidget) +</dd> +</dl><a NAME="HelpWebSearchEdit.mousePressEvent" ID="HelpWebSearchEdit.mousePressEvent"></a> +<h4>HelpWebSearchEdit.mousePressEvent</h4> +<b>mousePressEvent</b>(<i>evt</i>) +<p> + Protected method called by a mouse press event. +</p><dl> +<dt><i>evt</i></dt> +<dd> +reference to the mouse event (QMouseEvent) +</dd> +</dl> +<div align="right"><a href="#top">Up</a></div> +<hr /><hr /> <a NAME="HelpWebSearchWidget" ID="HelpWebSearchWidget"></a> <h2>HelpWebSearchWidget</h2> <p> @@ -111,6 +161,9 @@ <td><a href="#HelpWebSearchWidget.clear">clear</a></td> <td>Public method to clear all private data.</td> </tr><tr> +<td><a href="#HelpWebSearchWidget.mousePressEvent">mousePressEvent</a></td> +<td>Protected method called by a mouse press event.</td> +</tr><tr> <td><a href="#HelpWebSearchWidget.openSearchManager">openSearchManager</a></td> <td>Public method to get a reference to the opensearch manager object.</td> </tr><tr> @@ -127,10 +180,7 @@ <p> Constructor </p><dl> -<dt><i>inactiveText</i></dt> -<dd> -text to be shown on inactivity (string) -</dd><dt><i>parent</i></dt> +<dt><i>parent</i></dt> <dd> reference to the parent widget (QWidget) </dd> @@ -239,7 +289,17 @@ <b>clear</b>(<i></i>) <p> Public method to clear all private data. -</p><a NAME="HelpWebSearchWidget.openSearchManager" ID="HelpWebSearchWidget.openSearchManager"></a> +</p><a NAME="HelpWebSearchWidget.mousePressEvent" ID="HelpWebSearchWidget.mousePressEvent"></a> +<h4>HelpWebSearchWidget.mousePressEvent</h4> +<b>mousePressEvent</b>(<i>evt</i>) +<p> + Protected method called by a mouse press event. +</p><dl> +<dt><i>evt</i></dt> +<dd> +reference to the mouse event (QMouseEvent) +</dd> +</dl><a NAME="HelpWebSearchWidget.openSearchManager" ID="HelpWebSearchWidget.openSearchManager"></a> <h4>HelpWebSearchWidget.openSearchManager</h4> <b>openSearchManager</b>(<i></i>) <p>
--- a/Documentation/Source/eric5.Helpviewer.HelpWindow.html Sun Jul 10 16:31:33 2011 +0200 +++ b/Documentation/Source/eric5.Helpviewer.HelpWindow.html Sun Jul 10 19:01:08 2011 +0200 @@ -370,6 +370,9 @@ <td><a href="#HelpWindow.masterPasswordChanged">masterPasswordChanged</a></td> <td>Public slot to handle the change of the master password.</td> </tr><tr> +<td><a href="#HelpWindow.mousePressEvent">mousePressEvent</a></td> +<td>Protected method called by a mouse press event.</td> +</tr><tr> <td><a href="#HelpWindow.networkAccessManager">networkAccessManager</a></td> <td>Class method to get a reference to the network access manager.</td> </tr><tr> @@ -1165,6 +1168,16 @@ <dd> new master password (string) </dd> +</dl><a NAME="HelpWindow.mousePressEvent" ID="HelpWindow.mousePressEvent"></a> +<h4>HelpWindow.mousePressEvent</h4> +<b>mousePressEvent</b>(<i>evt</i>) +<p> + Protected method called by a mouse press event. +</p><dl> +<dt><i>evt</i></dt> +<dd> +reference to the mouse event (QMouseEvent) +</dd> </dl><a NAME="HelpWindow.networkAccessManager" ID="HelpWindow.networkAccessManager"></a> <h4>HelpWindow.networkAccessManager</h4> <b>networkAccessManager</b>(<i></i>)
--- a/Documentation/Source/eric5.Helpviewer.UrlBar.UrlBar.html Sun Jul 10 16:31:33 2011 +0200 +++ b/Documentation/Source/eric5.Helpviewer.UrlBar.UrlBar.html Sun Jul 10 19:01:08 2011 +0200 @@ -96,6 +96,9 @@ <td><a href="#UrlBar.mouseDoubleClickEvent">mouseDoubleClickEvent</a></td> <td>Protected method to handle mouse double click events.</td> </tr><tr> +<td><a href="#UrlBar.mousePressEvent">mousePressEvent</a></td> +<td>Protected method called by a mouse press event.</td> +</tr><tr> <td><a href="#UrlBar.paintEvent">paintEvent</a></td> <td>Protected method handling a paint event.</td> </tr><tr> @@ -227,6 +230,16 @@ <dd> reference to the mouse event (QMouseEvent) </dd> +</dl><a NAME="UrlBar.mousePressEvent" ID="UrlBar.mousePressEvent"></a> +<h4>UrlBar.mousePressEvent</h4> +<b>mousePressEvent</b>(<i>evt</i>) +<p> + Protected method called by a mouse press event. +</p><dl> +<dt><i>evt</i></dt> +<dd> +reference to the mouse event (QMouseEvent) +</dd> </dl><a NAME="UrlBar.paintEvent" ID="UrlBar.paintEvent"></a> <h4>UrlBar.paintEvent</h4> <b>paintEvent</b>(<i>evt</i>)
--- a/Helpviewer/Bookmarks/BookmarksToolBar.py Sun Jul 10 16:31:33 2011 +0200 +++ b/Helpviewer/Bookmarks/BookmarksToolBar.py Sun Jul 10 19:01:08 2011 +0200 @@ -9,6 +9,7 @@ from PyQt4.QtCore import pyqtSignal, Qt, QUrl from PyQt4.QtGui import QMenu, QApplication, QCursor +from PyQt4.QtWebKit import QWebPage from E5Gui.E5ModelToolBar import E5ModelToolBar @@ -29,16 +30,18 @@ openUrl = pyqtSignal(QUrl, str) newUrl = pyqtSignal(QUrl, str) - def __init__(self, model, parent=None): + def __init__(self, mainWindow, model, parent=None): """ Constructor + @param mainWindow reference to the main window (HelpWindow) @param model reference to the bookmarks model (BookmarksModel) @param parent reference to the parent widget (QWidget) """ E5ModelToolBar.__init__(self, QApplication.translate("BookmarksToolBar", "Bookmarks"), parent) + self.__mw = mainWindow self.__bookmarksModel = model self.setModel(model) @@ -94,14 +97,19 @@ """ assert idx.isValid() - if self._keyboardModifiers & Qt.ControlModifier: - self.newUrl.emit( - idx.data(BookmarksModel.UrlRole), - idx.data(Qt.DisplayRole)) - else: - self.openUrl.emit( - idx.data(BookmarksModel.UrlRole), - idx.data(Qt.DisplayRole)) + if self._mouseButton == Qt.XButton1: + self.__mw.currentBrowser().pageAction(QWebPage.Back).trigger() + elif self._mouseButton == Qt.XButton2: + self.__mw.currentBrowser().pageAction(QWebPage.Forward).trigger() + elif self._mouseButton == Qt.LeftButton: + if self._keyboardModifiers & Qt.ControlModifier: + self.newUrl.emit( + idx.data(BookmarksModel.UrlRole), + idx.data(Qt.DisplayRole)) + else: + self.openUrl.emit( + idx.data(BookmarksModel.UrlRole), + idx.data(Qt.DisplayRole)) def __openToolBarBookmark(self): """
--- a/Helpviewer/HelpWebSearchWidget.py Sun Jul 10 16:31:33 2011 +0200 +++ b/Helpviewer/HelpWebSearchWidget.py Sun Jul 10 19:01:08 2011 +0200 @@ -7,10 +7,10 @@ Module implementing a web search widget for the web browser. """ -from PyQt4.QtCore import pyqtSignal, QUrl, QModelIndex, QTimer +from PyQt4.QtCore import pyqtSignal, QUrl, QModelIndex, QTimer, Qt from PyQt4.QtGui import QWidget, QMenu, QHBoxLayout, QStandardItem, QStandardItemModel, \ QCompleter, QFont, QIcon, QPixmap -from PyQt4.QtWebKit import QWebSettings +from PyQt4.QtWebKit import QWebSettings, QWebPage import UI.PixmapCache @@ -23,6 +23,35 @@ from .OpenSearch.OpenSearchEngineAction import OpenSearchEngineAction +class HelpWebSearchEdit(E5LineEdit): + """ + Class implementing the web search line edit. + """ + def __init__(self, mainWindow, parent=None): + """ + Constructor + + @param mainWindow reference to the main window (HelpWindow) + @param parent reference to the parent widget (QWidget) + """ + super().__init__(parent) + + self.__mw = mainWindow + + def mousePressEvent(self, evt): + """ + Protected method called by a mouse press event. + + @param evt reference to the mouse event (QMouseEvent) + """ + if evt.button() == Qt.XButton1: + self.__mw.currentBrowser().pageAction(QWebPage.Back).trigger() + elif evt.button() == Qt.XButton2: + self.__mw.currentBrowser().pageAction(QWebPage.Forward).trigger() + else: + super().mousePressEvent(evt) + + class HelpWebSearchWidget(QWidget): """ Class implementing a web search widget for the web browser. @@ -35,7 +64,6 @@ """ Constructor - @param inactiveText text to be shown on inactivity (string) @param parent reference to the parent widget (QWidget) """ super().__init__(parent) @@ -53,7 +81,7 @@ self.__enginesMenu = QMenu(self) - self.__searchEdit = E5LineEdit(parent=self) + self.__searchEdit = HelpWebSearchEdit(self.mw, parent=self) self.__layout.addWidget(self.__searchEdit) self.__engineButton = E5LineEditButton(self) @@ -391,3 +419,16 @@ """ self.__engineButton.setIcon( QIcon(QPixmap.fromImage(self.__openSearchManager.currentEngine().image()))) + + def mousePressEvent(self, evt): + """ + Protected method called by a mouse press event. + + @param evt reference to the mouse event (QMouseEvent) + """ + if evt.button() == Qt.XButton1: + self.mw.currentBrowser().pageAction(QWebPage.Back).trigger() + elif evt.button() == Qt.XButton2: + self.mw.currentBrowser().pageAction(QWebPage.Forward).trigger() + else: + super().mousePressEvent(evt)
--- a/Helpviewer/HelpWindow.py Sun Jul 10 16:31:33 2011 +0200 +++ b/Helpviewer/HelpWindow.py Sun Jul 10 19:01:08 2011 +0200 @@ -15,7 +15,7 @@ QDesktopServices, QKeySequence, qApp, QComboBox, QFont, QFontMetrics, QLabel, \ QSplitter, QMenu, QToolButton, QLineEdit, QApplication, QWhatsThis, QDialog, \ QHBoxLayout, QProgressBar, QAction, QIcon -from PyQt4.QtWebKit import QWebSettings, QWebDatabase, QWebSecurityOrigin +from PyQt4.QtWebKit import QWebSettings, QWebDatabase, QWebSecurityOrigin, QWebPage from PyQt4.QtHelp import QHelpEngine, QHelpEngineCore, QHelpSearchQuery from .SearchWidget import SearchWidget @@ -1377,7 +1377,7 @@ forwardButton.setPopupMode(QToolButton.MenuButtonPopup) bookmarksModel = self.bookmarksManager().bookmarksModel() - self.bookmarksToolBar = BookmarksToolBar(bookmarksModel) + self.bookmarksToolBar = BookmarksToolBar(self, bookmarksModel) self.bookmarksToolBar.setObjectName("BookmarksToolBar") self.bookmarksToolBar.setIconSize(UI.Config.ToolBarIconSize) self.bookmarksToolBar.openUrl.connect(self.openUrl) @@ -2681,6 +2681,19 @@ """ self.__eventKeyboardModifiers = modifiers + def mousePressEvent(self, evt): + """ + Protected method called by a mouse press event. + + @param evt reference to the mouse event (QMouseEvent) + """ + if evt.button() == Qt.XButton1: + self.currentBrowser().pageAction(QWebPage.Back).trigger() + elif evt.button() == Qt.XButton2: + self.currentBrowser().pageAction(QWebPage.Forward).trigger() + else: + super().mousePressEvent(evt) + ########################################################################### ## Interface to VirusTotal below ## ###########################################################################
--- a/Helpviewer/UrlBar/UrlBar.py Sun Jul 10 16:31:33 2011 +0200 +++ b/Helpviewer/UrlBar/UrlBar.py Sun Jul 10 19:01:08 2011 +0200 @@ -13,7 +13,7 @@ from PyQt4.QtNetwork import QSslCertificate except ImportError: QSslCertificate = None # __IGNORE_WARNING__ -from PyQt4.QtWebKit import QWebSettings +from PyQt4.QtWebKit import QWebSettings, QWebPage from E5Gui.E5LineEdit import E5LineEdit from E5Gui.E5LineEditButton import E5LineEditButton @@ -273,6 +273,19 @@ self.__browserUrlChanged(self.__browser.url()) E5LineEdit.focusOutEvent(self, evt) + def mousePressEvent(self, evt): + """ + Protected method called by a mouse press event. + + @param evt reference to the mouse event (QMouseEvent) + """ + if evt.button() == Qt.XButton1: + self.__mw.currentBrowser().pageAction(QWebPage.Back).trigger() + elif evt.button() == Qt.XButton2: + self.__mw.currentBrowser().pageAction(QWebPage.Forward).trigger() + else: + super().mousePressEvent(evt) + def mouseDoubleClickEvent(self, evt): """ Protected method to handle mouse double click events.
--- a/changelog Sun Jul 10 16:31:33 2011 +0200 +++ b/changelog Sun Jul 10 19:01:08 2011 +0200 @@ -21,6 +21,7 @@ from the eric IDE - added editor actions to go to the last edit location and to the previous or next Python or Ruby class or method definition +- improved the handling of mouse XButton1 and XButton2 handling in the web browser Version 5.2-snapshot-20110501: - bug fixes