Merged with default branch to prepare the 18.03 release. maintenance

Fri, 02 Mar 2018 19:35:16 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Fri, 02 Mar 2018 19:35:16 +0100
branch
maintenance
changeset 6166
bace7fb85a01
parent 6114
0c976706e8c1 (current diff)
parent 6165
daee74079592 (diff)
child 6167
d6540d533b6d

Merged with default branch to prepare the 18.03 release.

APIs/Python3/eric6.api file | annotate | diff | comparison | revisions
Documentation/Help/source.qch file | annotate | diff | comparison | revisions
Documentation/Help/source.qhp file | annotate | diff | comparison | revisions
Documentation/Source/eric6.QScintilla.Editor.html file | annotate | diff | comparison | revisions
Helpviewer/HelpBrowserWV.py file | annotate | diff | comparison | revisions
Plugins/ViewManagerPlugins/Listspace/Listspace.py file | annotate | diff | comparison | revisions
Plugins/ViewManagerPlugins/Tabview/Tabview.py file | annotate | diff | comparison | revisions
Preferences/__init__.py file | annotate | diff | comparison | revisions
QScintilla/Editor.py file | annotate | diff | comparison | revisions
UI/UserInterface.py file | annotate | diff | comparison | revisions
ViewManager/ViewManager.py file | annotate | diff | comparison | revisions
WebBrowser/Download/DownloadItem.py file | annotate | diff | comparison | revisions
WebBrowser/Network/NetworkManager.py file | annotate | diff | comparison | revisions
WebBrowser/WebBrowserView.py file | annotate | diff | comparison | revisions
WebBrowser/data/html_rc.py file | annotate | diff | comparison | revisions
WebBrowser/data/javascript_rc.py file | annotate | diff | comparison | revisions
changelog file | annotate | diff | comparison | revisions
eric6.e4p file | annotate | diff | comparison | revisions
i18n/eric6_cs.ts file | annotate | diff | comparison | revisions
i18n/eric6_de.qm file | annotate | diff | comparison | revisions
i18n/eric6_de.ts file | annotate | diff | comparison | revisions
i18n/eric6_empty.ts file | annotate | diff | comparison | revisions
i18n/eric6_en.ts file | annotate | diff | comparison | revisions
i18n/eric6_es.qm file | annotate | diff | comparison | revisions
i18n/eric6_es.ts file | annotate | diff | comparison | revisions
i18n/eric6_fr.ts file | annotate | diff | comparison | revisions
i18n/eric6_it.ts file | annotate | diff | comparison | revisions
i18n/eric6_pt.ts file | annotate | diff | comparison | revisions
i18n/eric6_ru.qm file | annotate | diff | comparison | revisions
i18n/eric6_ru.ts file | annotate | diff | comparison | revisions
i18n/eric6_tr.ts file | annotate | diff | comparison | revisions
i18n/eric6_zh_CN.ts file | annotate | diff | comparison | revisions
--- a/APIs/Python3/eric6.api	Sun Feb 04 10:56:30 2018 +0100
+++ b/APIs/Python3/eric6.api	Fri Mar 02 19:35:16 2018 +0100
@@ -1082,8 +1082,10 @@
 eric6.E5Gui.E5PassivePopup.E5PassivePopup.Boxed?7
 eric6.E5Gui.E5PassivePopup.E5PassivePopup.Custom?7
 eric6.E5Gui.E5PassivePopup.E5PassivePopup.clicked?7
+eric6.E5Gui.E5PassivePopup.E5PassivePopup.getCustomData?4(key)
 eric6.E5Gui.E5PassivePopup.E5PassivePopup.hideEvent?4(evt)
 eric6.E5Gui.E5PassivePopup.E5PassivePopup.mouseReleaseEvent?4(evt)
+eric6.E5Gui.E5PassivePopup.E5PassivePopup.setCustomData?4(key, data)
 eric6.E5Gui.E5PassivePopup.E5PassivePopup.setTimeout?4(delay)
 eric6.E5Gui.E5PassivePopup.E5PassivePopup.setView?4(child)
 eric6.E5Gui.E5PassivePopup.E5PassivePopup.setVisible?4(visible)
@@ -1323,6 +1325,7 @@
 eric6.E5Gui.E5ToolButton.E5ToolButton.ToolBarLookOption?7
 eric6.E5Gui.E5ToolButton.E5ToolButton.aboutToHideMenu?7
 eric6.E5Gui.E5ToolButton.E5ToolButton.aboutToShowMenu?7
+eric6.E5Gui.E5ToolButton.E5ToolButton.badgeText?4()
 eric6.E5Gui.E5ToolButton.E5ToolButton.contextMenuEvent?4(evt)
 eric6.E5Gui.E5ToolButton.E5ToolButton.controlClicked?7
 eric6.E5Gui.E5ToolButton.E5ToolButton.doubleClicked?7
@@ -1331,6 +1334,7 @@
 eric6.E5Gui.E5ToolButton.E5ToolButton.mouseDoubleClickEvent?4(evt)
 eric6.E5Gui.E5ToolButton.E5ToolButton.mousePressEvent?4(evt)
 eric6.E5Gui.E5ToolButton.E5ToolButton.mouseReleaseEvent?4(evt)
+eric6.E5Gui.E5ToolButton.E5ToolButton.setBadgeText?4(text)
 eric6.E5Gui.E5ToolButton.E5ToolButton.setMenu?4(menu)
 eric6.E5Gui.E5ToolButton.E5ToolButton.setShowMenuInside?4(enable)
 eric6.E5Gui.E5ToolButton.E5ToolButton.setToolbarButtonLook?4(enable)
@@ -1877,7 +1881,7 @@
 eric6.Helpviewer.AdBlock.AdBlockManager.AdBlockManager.setExceptions?4(hosts)
 eric6.Helpviewer.AdBlock.AdBlockManager.AdBlockManager.showDialog?4()
 eric6.Helpviewer.AdBlock.AdBlockManager.AdBlockManager.showExceptionsDialog?4()
-eric6.Helpviewer.AdBlock.AdBlockManager.AdBlockManager.showRule?4()
+eric6.Helpviewer.AdBlock.AdBlockManager.AdBlockManager.showRule?4(act)
 eric6.Helpviewer.AdBlock.AdBlockManager.AdBlockManager.subscription?4(location)
 eric6.Helpviewer.AdBlock.AdBlockManager.AdBlockManager.subscriptions?4()
 eric6.Helpviewer.AdBlock.AdBlockManager.AdBlockManager.updateAllSubscriptions?4()
@@ -2083,7 +2087,7 @@
 eric6.Helpviewer.Bookmarks.BookmarksManager.StartToolBar?7
 eric6.Helpviewer.Bookmarks.BookmarksMenu.BookmarksMenu.createBaseMenu?4()
 eric6.Helpviewer.Bookmarks.BookmarksMenu.BookmarksMenu.newUrl?7
-eric6.Helpviewer.Bookmarks.BookmarksMenu.BookmarksMenu.openAll?4()
+eric6.Helpviewer.Bookmarks.BookmarksMenu.BookmarksMenu.openAll?4(act)
 eric6.Helpviewer.Bookmarks.BookmarksMenu.BookmarksMenu.openUrl?7
 eric6.Helpviewer.Bookmarks.BookmarksMenu.BookmarksMenu.postPopulated?4()
 eric6.Helpviewer.Bookmarks.BookmarksMenu.BookmarksMenu?1(parent=None)
@@ -2387,7 +2391,7 @@
 eric6.Helpviewer.GreaseMonkey.GreaseMonkeyManager.GreaseMonkeyManager.disableScript?4(script)
 eric6.Helpviewer.GreaseMonkey.GreaseMonkeyManager.GreaseMonkeyManager.downloadScript?4(request)
 eric6.Helpviewer.GreaseMonkey.GreaseMonkeyManager.GreaseMonkeyManager.enableScript?4(script)
-eric6.Helpviewer.GreaseMonkey.GreaseMonkeyManager.GreaseMonkeyManager.pageLoadStarted?4()
+eric6.Helpviewer.GreaseMonkey.GreaseMonkeyManager.GreaseMonkeyManager.pageLoadStarted?4(frame)
 eric6.Helpviewer.GreaseMonkey.GreaseMonkeyManager.GreaseMonkeyManager.removeScript?4(script)
 eric6.Helpviewer.GreaseMonkey.GreaseMonkeyManager.GreaseMonkeyManager.requireScripts?4(urlList)
 eric6.Helpviewer.GreaseMonkey.GreaseMonkeyManager.GreaseMonkeyManager.requireScriptsDirectory?4()
@@ -2555,7 +2559,7 @@
 eric6.Helpviewer.HelpTabWidget.HelpTabWidget.printPreviewBrowser?4(browser=None)
 eric6.Helpviewer.HelpTabWidget.HelpTabWidget.reloadAllBrowsers?4()
 eric6.Helpviewer.HelpTabWidget.HelpTabWidget.restoreAllClosedTabs?4()
-eric6.Helpviewer.HelpTabWidget.HelpTabWidget.restoreClosedTab?4()
+eric6.Helpviewer.HelpTabWidget.HelpTabWidget.restoreClosedTab?4(act)
 eric6.Helpviewer.HelpTabWidget.HelpTabWidget.shallShutDown?4()
 eric6.Helpviewer.HelpTabWidget.HelpTabWidget.showMessage?7
 eric6.Helpviewer.HelpTabWidget.HelpTabWidget.sourceChanged?7
@@ -2631,7 +2635,7 @@
 eric6.Helpviewer.HelpWindow.HelpWindow.keyPressEvent?4(evt)
 eric6.Helpviewer.HelpWindow.HelpWindow.mainWindow?4()
 eric6.Helpviewer.HelpWindow.HelpWindow.mainWindows?4()
-eric6.Helpviewer.HelpWindow.HelpWindow.masterPasswordChanged?4(oldPassword, newPassword)
+eric6.Helpviewer.HelpWindow.HelpWindow.masterPasswordChanged?4(oldPassword, newPassword, local=False)
 eric6.Helpviewer.HelpWindow.HelpWindow.mousePressEvent?4(evt)
 eric6.Helpviewer.HelpWindow.HelpWindow.networkAccessManager?4()
 eric6.Helpviewer.HelpWindow.HelpWindow.newTab?4(link=None, requestData=None, addNextTo=None)
@@ -4203,7 +4207,7 @@
 eric6.Plugins.CheckerPlugins.CodeStyleChecker.translations._messages?8
 eric6.Plugins.CheckerPlugins.CodeStyleChecker.translations._messages_sample_args?8
 eric6.Plugins.CheckerPlugins.CodeStyleChecker.translations.getTranslatedMessage?4(message)
-eric6.Plugins.CheckerPlugins.SyntaxChecker.SyntaxCheck.VcsConflictMarkerRe?7
+eric6.Plugins.CheckerPlugins.SyntaxChecker.SyntaxCheck.VcsConflictMarkerRegExpList?7
 eric6.Plugins.CheckerPlugins.SyntaxChecker.SyntaxCheck.extractLineFlags?4(line, startComment=")
 eric6.Plugins.CheckerPlugins.SyntaxChecker.SyntaxCheck.initBatchService?4()
 eric6.Plugins.CheckerPlugins.SyntaxChecker.SyntaxCheck.initService?4()
@@ -8189,6 +8193,7 @@
 eric6.QScintilla.Editor.Editor.StartEditToken?7
 eric6.QScintilla.Editor.Editor.SyncToken?7
 eric6.QScintilla.Editor.Editor.TemplateImageID?7
+eric6.QScintilla.Editor.Editor.VcsConflictMarkerLineRegExpList?7
 eric6.QScintilla.Editor.Editor.WarningCode?7
 eric6.QScintilla.Editor.Editor.WarningStyle?7
 eric6.QScintilla.Editor.Editor.addCallTipHook?4(key, func)
@@ -8265,6 +8270,7 @@
 eric6.QScintilla.Editor.Editor.getCoverageLines?4()
 eric6.QScintilla.Editor.Editor.getCurrentWord?4()
 eric6.QScintilla.Editor.Editor.getCurrentWordBoundaries?4()
+eric6.QScintilla.Editor.Editor.getEditorConfig?4(option)
 eric6.QScintilla.Editor.Editor.getEncoding?4()
 eric6.QScintilla.Editor.Editor.getFileName?4()
 eric6.QScintilla.Editor.Editor.getFileType?4()
@@ -8282,6 +8288,7 @@
 eric6.QScintilla.Editor.Editor.getSyntaxErrorLines?4()
 eric6.QScintilla.Editor.Editor.getSyntaxErrors?4()
 eric6.QScintilla.Editor.Editor.getTaskLines?4()
+eric6.QScintilla.Editor.Editor.getVcsConflictMarkerLines?4()
 eric6.QScintilla.Editor.Editor.getWarningLines?4()
 eric6.QScintilla.Editor.Editor.getWarnings?4()
 eric6.QScintilla.Editor.Editor.getWord?4(line, index, direction=0, useWordChars=True)
@@ -8925,6 +8932,7 @@
 eric6.QScintilla.MiniEditor.MiniScintilla.focusInEvent?4(event)
 eric6.QScintilla.MiniEditor.MiniScintilla.focusOutEvent?4(event)
 eric6.QScintilla.MiniEditor.MiniScintilla.getFileName?4()
+eric6.QScintilla.MiniEditor.MiniScintilla.removeTrailingWhitespace?4()
 eric6.QScintilla.MiniEditor.MiniScintilla?1(parent=None)
 eric6.QScintilla.Printer.Printer.formatPage?4(painter, drawing, area, pagenr)
 eric6.QScintilla.Printer.Printer?1(mode=QPrinter.ScreenResolution)
@@ -9047,7 +9055,7 @@
 eric6.QScintilla.SearchReplaceWidget.SearchReplaceSlidingWidget.replaceSearch?4()
 eric6.QScintilla.SearchReplaceWidget.SearchReplaceSlidingWidget.resizeEvent?4(evt)
 eric6.QScintilla.SearchReplaceWidget.SearchReplaceSlidingWidget.searchListChanged?7
-eric6.QScintilla.SearchReplaceWidget.SearchReplaceSlidingWidget.selectionChanged?4()
+eric6.QScintilla.SearchReplaceWidget.SearchReplaceSlidingWidget.selectionChanged?4(editor)
 eric6.QScintilla.SearchReplaceWidget.SearchReplaceSlidingWidget.show?4(text='')
 eric6.QScintilla.SearchReplaceWidget.SearchReplaceSlidingWidget.updateSelectionCheckBox?4(editor)
 eric6.QScintilla.SearchReplaceWidget.SearchReplaceSlidingWidget?1(replace, vm, parent=None)
@@ -9066,7 +9074,7 @@
 eric6.QScintilla.SearchReplaceWidget.SearchReplaceWidget.replaceAll?4()
 eric6.QScintilla.SearchReplaceWidget.SearchReplaceWidget.replaceSearch?4()
 eric6.QScintilla.SearchReplaceWidget.SearchReplaceWidget.searchListChanged?7
-eric6.QScintilla.SearchReplaceWidget.SearchReplaceWidget.selectionChanged?4()
+eric6.QScintilla.SearchReplaceWidget.SearchReplaceWidget.selectionChanged?4(editor)
 eric6.QScintilla.SearchReplaceWidget.SearchReplaceWidget.show?4(text='')
 eric6.QScintilla.SearchReplaceWidget.SearchReplaceWidget.updateSelectionCheckBox?4(editor)
 eric6.QScintilla.SearchReplaceWidget.SearchReplaceWidget?1(replace, vm, parent=None, sliding=False)
@@ -10188,7 +10196,7 @@
 eric6.Utilities.decodeString?4(text)
 eric6.Utilities.determinePythonVersion?4(filename, source, editor=None)
 eric6.Utilities.direntries?4(path, filesonly=False, pattern=None, followsymlinks=True, checkStop=None)
-eric6.Utilities.encode?4(text, orig_coding)
+eric6.Utilities.encode?4(text, origEncoding, forcedEncoding="")
 eric6.Utilities.escape_entities?4(m, escmap=_escape_map)
 eric6.Utilities.escape_uentities?4(m)
 eric6.Utilities.extractFlags?4(text)
@@ -10256,7 +10264,7 @@
 eric6.Utilities.win32_GetUserName?4()
 eric6.Utilities.win32_Kill?4(pid)
 eric6.Utilities.win32_getRealName?4()
-eric6.Utilities.writeEncodedFile?4(filename, text, orig_coding)
+eric6.Utilities.writeEncodedFile?4(filename, text, origEncoding, forcedEncoding="")
 eric6.VCS.CommandOptionsDialog.VcsCommandOptionsDialog.getOptions?4()
 eric6.VCS.CommandOptionsDialog.VcsCommandOptionsDialog?1(vcs, parent=None)
 eric6.VCS.ProjectBrowserHelper.VcsProjectBrowserHelper._VCSAdd?5()
@@ -10531,7 +10539,7 @@
 eric6.ViewManager.ViewManager.ViewManager.textForFind?4(getCurrentWord=True)
 eric6.ViewManager.ViewManager.ViewManager.tile?4()
 eric6.ViewManager.ViewManager.ViewManager.unhighlight?4(current=False)
-eric6.ViewManager.ViewManager.ViewManager.zoomValueChanged?4(value)
+eric6.ViewManager.ViewManager.ViewManager.zoomValueChanged?4(value, zoomingWidget)
 eric6.ViewManager.ViewManager.ViewManager?1()
 eric6.ViewManager.factory?4(parent, ui, dbs, pluginManager)
 eric6.WebBrowser.AdBlock.AdBlockDialog.AdBlockDialog.addCustomRule?4(filterRule)
@@ -10857,7 +10865,7 @@
 eric6.WebBrowser.Bookmarks.BookmarksMenu.BookmarksMenu.createBaseMenu?4()
 eric6.WebBrowser.Bookmarks.BookmarksMenu.BookmarksMenu.newTab?7
 eric6.WebBrowser.Bookmarks.BookmarksMenu.BookmarksMenu.newWindow?7
-eric6.WebBrowser.Bookmarks.BookmarksMenu.BookmarksMenu.openAll?4()
+eric6.WebBrowser.Bookmarks.BookmarksMenu.BookmarksMenu.openAll?4(act)
 eric6.WebBrowser.Bookmarks.BookmarksMenu.BookmarksMenu.openUrl?7
 eric6.WebBrowser.Bookmarks.BookmarksMenu.BookmarksMenu.postPopulated?4()
 eric6.WebBrowser.Bookmarks.BookmarksMenu.BookmarksMenu?1(parent=None)
@@ -11008,19 +11016,20 @@
 eric6.WebBrowser.Download.DownloadItem.DownloadItem.setData?4(data)
 eric6.WebBrowser.Download.DownloadItem.DownloadItem.setIcon?4(icon)
 eric6.WebBrowser.Download.DownloadItem.DownloadItem.statusChanged?7
-eric6.WebBrowser.Download.DownloadItem.DownloadItem?1(downloadItem=None, parent=None)
+eric6.WebBrowser.Download.DownloadItem.DownloadItem?1(downloadItem=None, pageUrl="", parent=None)
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.RemoveExit?7
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.RemoveNever?7
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.RemoveSuccessFullDownload?7
-eric6.WebBrowser.Download.DownloadManager.DownloadManager.activeDownloads?4()
+eric6.WebBrowser.Download.DownloadManager.DownloadManager.activeDownloadsCount?4()
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.allowQuit?4()
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.changeOccurred?4()
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.cleanup?4()
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.closeEvent?4(evt)
-eric6.WebBrowser.Download.DownloadManager.DownloadManager.count?4()
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.download?4(downloadItem)
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.downloadDirectory?4()
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.downloads?4()
+eric6.WebBrowser.Download.DownloadManager.DownloadManager.downloadsCount?4()
+eric6.WebBrowser.Download.DownloadManager.DownloadManager.downloadsCountChanged?7
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.on_cleanupButton_clicked?4()
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.removePolicy?4()
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.save?4()
@@ -11028,6 +11037,7 @@
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.setRemovePolicy?4(policy)
 eric6.WebBrowser.Download.DownloadManager.DownloadManager.shutdown?4()
 eric6.WebBrowser.Download.DownloadManager.DownloadManager?1(parent=None)
+eric6.WebBrowser.Download.DownloadManagerButton.DownloadManagerButton?1(parent=None)
 eric6.WebBrowser.Download.DownloadModel.DownloadModel.data?4(index, role)
 eric6.WebBrowser.Download.DownloadModel.DownloadModel.flags?4(index)
 eric6.WebBrowser.Download.DownloadModel.DownloadModel.mimeData?4(indexes)
@@ -11151,6 +11161,13 @@
 eric6.WebBrowser.GreaseMonkey.GreaseMonkeyDownloader.GreaseMonkeyDownloader?1(url, manager, mode)
 eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJavaScript.bootstrap_js?7
 eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJavaScript.values_js?7
+eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.GreaseMonkeyJsObject.deleteValue?4(nspace, name)
+eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.GreaseMonkeyJsObject.getValue?4(nspace, name, dValue)
+eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.GreaseMonkeyJsObject.listValues?4(nspace)
+eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.GreaseMonkeyJsObject.setClipboard?4(text)
+eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.GreaseMonkeyJsObject.setSettingsFile?4(name)
+eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.GreaseMonkeyJsObject.setValue?4(nspace, name, value)
+eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.GreaseMonkeyJsObject?1(parent=None)
 eric6.WebBrowser.GreaseMonkey.GreaseMonkeyManager.GreaseMonkeyManager.addScript?4(script)
 eric6.WebBrowser.GreaseMonkey.GreaseMonkeyManager.GreaseMonkeyManager.allScripts?4()
 eric6.WebBrowser.GreaseMonkey.GreaseMonkeyManager.GreaseMonkeyManager.canRunOnScheme?4(scheme)
@@ -11175,6 +11192,8 @@
 eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.GreaseMonkeyScript.exclude?4()
 eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.GreaseMonkeyScript.fileName?4()
 eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.GreaseMonkeyScript.fullName?4()
+eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.GreaseMonkeyScript.icon?4()
+eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.GreaseMonkeyScript.iconUrl?4()
 eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.GreaseMonkeyScript.include?4()
 eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.GreaseMonkeyScript.isEnabled?4()
 eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.GreaseMonkeyScript.isUpdating?4()
@@ -11322,10 +11341,14 @@
 eric6.WebBrowser.ImageSearch.ImageSearchEngine.ImageSearchEngine.searchEngineNames?4()
 eric6.WebBrowser.ImageSearch.ImageSearchEngine.ImageSearchEngine.setSearchEngine?4(searchEngine)
 eric6.WebBrowser.ImageSearch.ImageSearchEngine.ImageSearchEngine?1(parent=None)
+eric6.WebBrowser.JavaScript.ExternalJsObject.ExternalJsObject.extraObjects?7
 eric6.WebBrowser.JavaScript.ExternalJsObject.ExternalJsObject.page?4()
 eric6.WebBrowser.JavaScript.ExternalJsObject.ExternalJsObject.passwordManager?4()
+eric6.WebBrowser.JavaScript.ExternalJsObject.ExternalJsObject.registerExtraObject?4(name, jsObject)
+eric6.WebBrowser.JavaScript.ExternalJsObject.ExternalJsObject.setupWebChannel?4(channel, page)
 eric6.WebBrowser.JavaScript.ExternalJsObject.ExternalJsObject.speedDial?4()
 eric6.WebBrowser.JavaScript.ExternalJsObject.ExternalJsObject.startPage?4()
+eric6.WebBrowser.JavaScript.ExternalJsObject.ExternalJsObject.unregisterExtraObject?4(name)
 eric6.WebBrowser.JavaScript.ExternalJsObject.ExternalJsObject?1(page)
 eric6.WebBrowser.JavaScript.PasswordManagerJsObject.PasswordManagerJsObject.formSubmitted?4(urlStr, userName, password, data)
 eric6.WebBrowser.JavaScript.PasswordManagerJsObject.PasswordManagerJsObject?1(parent=None)
@@ -11354,7 +11377,7 @@
 eric6.WebBrowser.Network.EricSchemeHandler.EricSchemeReply.closed?7
 eric6.WebBrowser.Network.EricSchemeHandler.EricSchemeReply.readData?4(maxlen)
 eric6.WebBrowser.Network.EricSchemeHandler.EricSchemeReply?1(job, parent=None)
-eric6.WebBrowser.Network.NetworkManager.NetworkManager.authentication?4(url, auth)
+eric6.WebBrowser.Network.NetworkManager.NetworkManager.authentication?4(url, auth, page=None)
 eric6.WebBrowser.Network.NetworkManager.NetworkManager.certificateError?4(error, view)
 eric6.WebBrowser.Network.NetworkManager.NetworkManager.changed?7
 eric6.WebBrowser.Network.NetworkManager.NetworkManager.clearSslExceptions?4()
@@ -11481,7 +11504,7 @@
 eric6.WebBrowser.OpenSearch.OpenSearchWriter.OpenSearchWriter.write?4(device, engine)
 eric6.WebBrowser.OpenSearch.OpenSearchWriter.OpenSearchWriter?1()
 eric6.WebBrowser.PageScreenDialog.PageScreenDialog.on_buttonBox_clicked?4(button)
-eric6.WebBrowser.PageScreenDialog.PageScreenDialog?1(view, visibleOnly=False, parent=None)
+eric6.WebBrowser.PageScreenDialog.PageScreenDialog?1(view, parent=None)
 eric6.WebBrowser.Passwords.LoginForm.LoginForm.isValid?4()
 eric6.WebBrowser.Passwords.LoginForm.LoginForm?1()
 eric6.WebBrowser.Passwords.PasswordManager.PasswordManager.allSiteNames?4()
@@ -11713,7 +11736,7 @@
 eric6.WebBrowser.Session.SessionManager.SessionManager.ReplaceSession?7
 eric6.WebBrowser.Session.SessionManager.SessionManager.RestoreSession?7
 eric6.WebBrowser.Session.SessionManager.SessionManager.SwitchSession?7
-eric6.WebBrowser.Session.SessionManager.SessionManager.aboutToShowSessionsMenu?4()
+eric6.WebBrowser.Session.SessionManager.SessionManager.aboutToShowSessionsMenu?4(menu)
 eric6.WebBrowser.Session.SessionManager.SessionManager.activateTimer?4()
 eric6.WebBrowser.Session.SessionManager.SessionManager.autoSaveSession?4()
 eric6.WebBrowser.Session.SessionManager.SessionManager.cloneSession?4(sessionFilePath)
@@ -11901,7 +11924,7 @@
 eric6.WebBrowser.TabManager.TabManagerWidget.TabManagerWidget.domainFromUrl?4(url, useHostName=False)
 eric6.WebBrowser.TabManager.TabManagerWidget.TabManagerWidget.groupTypeChanged?7
 eric6.WebBrowser.TabManager.TabManagerWidget.TabManagerWidget.mainWindowCreated?4(mainWin, refresh=True)
-eric6.WebBrowser.TabManager.TabManagerWidget.TabManagerWidget.raiseTabManager?4()
+eric6.WebBrowser.TabManager.TabManagerWidget.TabManagerWidget.raiseTabManager?4(icon)
 eric6.WebBrowser.TabManager.TabManagerWidget.TabManagerWidget?1(mainWindow, parent=None, defaultWidget=False)
 eric6.WebBrowser.Tools.DelayedFileWatcher.DelayedFileWatcher.delayedDirectoryChanged?7
 eric6.WebBrowser.Tools.DelayedFileWatcher.DelayedFileWatcher.delayedFileChanged?7
@@ -11942,7 +11965,8 @@
 eric6.WebBrowser.Tools.Scripts.setCss?4(css)
 eric6.WebBrowser.Tools.Scripts.setStyleSheet?4(css)
 eric6.WebBrowser.Tools.Scripts.setupFormObserver?4()
-eric6.WebBrowser.Tools.Scripts.setupWebChannel?4()
+eric6.WebBrowser.Tools.Scripts.setupWebChannel?4(worldId)
+eric6.WebBrowser.Tools.Scripts.setupWindowObject?4()
 eric6.WebBrowser.Tools.WebBrowserTools.containsSpace?4(string)
 eric6.WebBrowser.Tools.WebBrowserTools.ensureUniqueFilename?4(name, appendFormat="({0})")
 eric6.WebBrowser.Tools.WebBrowserTools.filterCharsFromFilename?4(name)
@@ -12098,6 +12122,7 @@
 eric6.WebBrowser.WebBrowserLanguagesDialog.WebBrowserLanguagesDialog.on_upButton_clicked?4()
 eric6.WebBrowser.WebBrowserLanguagesDialog.WebBrowserLanguagesDialog?1(parent=None)
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.SafeJsWorld?7
+eric6.WebBrowser.WebBrowserPage.WebBrowserPage.UnsafeJsWorld?7
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.acceptNavigationRequest?4(url, type_, isMainFrame)
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.certificateError?4(error)
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.execJavaScript?4(script, worldId=QWebEngineScript.MainWorld, timeout=500)
@@ -12108,7 +12133,9 @@
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.isJavaScriptEnabled?4()
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.javaScriptConsoleMessage?4(level, message, lineNumber, sourceId)
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.mapToViewport?4(pos)
+eric6.WebBrowser.WebBrowserPage.WebBrowserPage.navigationRequestAccepted?7
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.printCallback?4(resDict=resultDict)
+eric6.WebBrowser.WebBrowserPage.WebBrowserPage.printRequested?7
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.resultCallback?4(resDict=resultDict)
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.runJavaScript?4(script, worldId=-1, callback=None)
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.safeBrowsingAbort?7
@@ -12116,7 +12143,6 @@
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.scroll?4(x, y)
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.scrollPosition?4()
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.scrollTo?4(pos)
-eric6.WebBrowser.WebBrowserPage.WebBrowserPage.setJavaScriptEnabled?4(enable)
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.setUserAgent?4(agent)
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.userAgent?4(resolveEmpty=False)
 eric6.WebBrowser.WebBrowserPage.WebBrowserPage.userAgentForUrl?4(url)
@@ -12153,7 +12179,7 @@
 eric6.WebBrowser.WebBrowserTabWidget.WebBrowserTabWidget.printPreviewBrowser?4(browser=None)
 eric6.WebBrowser.WebBrowserTabWidget.WebBrowserTabWidget.reloadAllBrowsers?4()
 eric6.WebBrowser.WebBrowserTabWidget.WebBrowserTabWidget.restoreAllClosedTabs?4()
-eric6.WebBrowser.WebBrowserTabWidget.WebBrowserTabWidget.restoreClosedTab?4()
+eric6.WebBrowser.WebBrowserTabWidget.WebBrowserTabWidget.restoreClosedTab?4(act)
 eric6.WebBrowser.WebBrowserTabWidget.WebBrowserTabWidget.shallShutDown?4()
 eric6.WebBrowser.WebBrowserTabWidget.WebBrowserTabWidget.showMessage?7
 eric6.WebBrowser.WebBrowserTabWidget.WebBrowserTabWidget.sourceChanged?7
@@ -12228,6 +12254,7 @@
 eric6.WebBrowser.WebBrowserView.WebBrowserView.source?4()
 eric6.WebBrowser.WebBrowserView.WebBrowserView.sourceChanged?7
 eric6.WebBrowser.WebBrowserView.WebBrowserView.storeSessionData?4(data)
+eric6.WebBrowser.WebBrowserView.WebBrowserView.title?4()
 eric6.WebBrowser.WebBrowserView.WebBrowserView.undo?4()
 eric6.WebBrowser.WebBrowserView.WebBrowserView.unselect?4()
 eric6.WebBrowser.WebBrowserView.WebBrowserView.zoomIn?4()
@@ -12313,7 +12340,7 @@
 eric6.WebBrowser.WebBrowserWindow.WebBrowserWindow.keyPressEvent?4(evt)
 eric6.WebBrowser.WebBrowserWindow.WebBrowserWindow.mainWindow?4()
 eric6.WebBrowser.WebBrowserWindow.WebBrowserWindow.mainWindows?4()
-eric6.WebBrowser.WebBrowserWindow.WebBrowserWindow.masterPasswordChanged?4(oldPassword, newPassword)
+eric6.WebBrowser.WebBrowserWindow.WebBrowserWindow.masterPasswordChanged?4(oldPassword, newPassword, local=False)
 eric6.WebBrowser.WebBrowserWindow.WebBrowserWindow.mousePressEvent?4(evt)
 eric6.WebBrowser.WebBrowserWindow.WebBrowserWindow.networkManager?4()
 eric6.WebBrowser.WebBrowserWindow.WebBrowserWindow.newPrivateWindow?4(link=None)
@@ -12355,9 +12382,11 @@
 eric6.WebBrowser.WebBrowserWindow.WebBrowserWindow.webBrowserWindowClosed?7
 eric6.WebBrowser.WebBrowserWindow.WebBrowserWindow.webBrowserWindowOpened?7
 eric6.WebBrowser.WebBrowserWindow.WebBrowserWindow.webProfile?4(private=False)
+eric6.WebBrowser.WebBrowserWindow.WebBrowserWindow.webSettings?4()
 eric6.WebBrowser.WebBrowserWindow.WebBrowserWindow?1(home, path, parent, name, fromEric=False, initShortcutsOnly=False, searchWord=None, private=False, qthelp=False, settingsDir="", restoreSession=False)
 eric6.WebBrowser.WebInspector.WebInspector.closeEvent?4(evt)
 eric6.WebBrowser.WebInspector.WebInspector.inspectElement?4()
+eric6.WebBrowser.WebInspector.WebInspector.inspectorClosed?7
 eric6.WebBrowser.WebInspector.WebInspector.isEnabled?4()
 eric6.WebBrowser.WebInspector.WebInspector.setView?4(view, inspectElement=False)
 eric6.WebBrowser.WebInspector.WebInspector?1(parent=None)
--- a/APIs/Python3/eric6.bas	Sun Feb 04 10:56:30 2018 +0100
+++ b/APIs/Python3/eric6.bas	Fri Mar 02 19:35:16 2018 +0100
@@ -148,6 +148,7 @@
 DownloadAskActionDialog QDialog Ui_DownloadAskActionDialog
 DownloadItem QWidget Ui_DownloadItem
 DownloadManager QDialog Ui_DownloadManager
+DownloadManagerButton E5ToolButton
 DownloadModel QAbstractListModel
 DuplicateParamError Exception
 E5Action QAction
@@ -369,6 +370,7 @@
 GreaseMonkeyConfigurationListWidget QListWidget
 GreaseMonkeyConfigurationScriptInfoDialog QDialog Ui_GreaseMonkeyConfigurationScriptInfoDialog
 GreaseMonkeyDownloader QObject
+GreaseMonkeyJsObject QObject
 GreaseMonkeyManager QObject
 GreaseMonkeyScript QObject
 HelpAppearancePage ConfigurationPageBase Ui_HelpAppearancePage
--- a/Cooperation/CooperationClient.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Cooperation/CooperationClient.py	Fri Mar 02 19:35:16 2018 +0100
@@ -191,9 +191,12 @@
         connection.setGreetingMessage(self.__username,
                                       self.__servers[0].serverPort())
         
-        connection.error.connect(self.__connectionError)
-        connection.disconnected.connect(self.__disconnected)
-        connection.readyForUse.connect(self.__readyForUse)
+        connection.error.connect(
+            lambda err: self.__connectionError(err, connection))
+        connection.disconnected.connect(
+            lambda: self.__disconnected(connection))
+        connection.readyForUse.connect(
+            lambda: self.__readyForUse(connection))
         connection.rejected.connect(self.__connectionRejected)
     
     def __connectionRejected(self, msg):
@@ -204,14 +207,15 @@
         """
         self.connectionError.emit(msg)
     
-    def __connectionError(self, socketError):
+    def __connectionError(self, socketError, connection):
         """
         Private slot to handle a connection error.
         
         @param socketError reference to the error object
-            (QAbstractSocket.SocketError)
+        @type QAbstractSocket.SocketError
+        @param connection connection that caused the error
+        @type Connection
         """
-        connection = self.sender()
         if socketError != QAbstractSocket.RemoteHostClosedError:
             if connection.peerPort() != 0:
                 msg = "* {0}:{1}\n{2}\n".format(
@@ -226,23 +230,28 @@
             self.cannotConnect.emit()
         self.removeConnection(connection)
     
-    def __disconnected(self):
+    def __disconnected(self, connection):
         """
         Private slot to handle the disconnection of a chat client.
+        
+        @param connection connection that was disconnected
+        @type Connection
         """
-        connection = self.sender()
         self.removeConnection(connection)
     
-    def __readyForUse(self):
+    def __readyForUse(self, connection):
         """
         Private slot to handle a connection getting ready for use.
+        
+        @param connection connection that got ready for use
+        @type Connection
         """
-        connection = self.sender()
         if self.hasConnection(connection.peerAddress(), connection.peerPort()):
             return
         
         connection.newMessage.connect(self.newMessage)
-        connection.getParticipants.connect(self.__getParticipants)
+        connection.getParticipants.connect(
+            lambda: self.__getParticipants(connection))
         connection.editorCommand.connect(self.editorCommand)
         
         self.__peers[connection.peerAddress()].append(connection)
@@ -267,11 +276,14 @@
             self.__processParticipants)
         self.__initialConnection.connectToHost(host, port)
     
-    def __getParticipants(self):
+    def __getParticipants(self, reqConnection):
         """
         Private slot to handle the request for a list of participants.
+        
+        @param reqConnection reference to the connection to get
+            participants for
+        @type Connection
         """
-        reqConnection = self.sender()
         participants = []
         for connectionList in self.__peers.values():
             for connection in connectionList:
Binary file Documentation/Help/source.qch has changed
--- a/Documentation/Help/source.qhp	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Help/source.qhp	Fri Mar 02 19:35:16 2018 +0100
@@ -1254,6 +1254,7 @@
               <section title="eric6.WebBrowser.Download.DownloadAskActionDialog" ref="eric6.WebBrowser.Download.DownloadAskActionDialog.html" />
               <section title="eric6.WebBrowser.Download.DownloadItem" ref="eric6.WebBrowser.Download.DownloadItem.html" />
               <section title="eric6.WebBrowser.Download.DownloadManager" ref="eric6.WebBrowser.Download.DownloadManager.html" />
+              <section title="eric6.WebBrowser.Download.DownloadManagerButton" ref="eric6.WebBrowser.Download.DownloadManagerButton.html" />
               <section title="eric6.WebBrowser.Download.DownloadModel" ref="eric6.WebBrowser.Download.DownloadModel.html" />
               <section title="eric6.WebBrowser.Download.DownloadUtilities" ref="eric6.WebBrowser.Download.DownloadUtilities.html" />
             </section>
@@ -1285,6 +1286,7 @@
               <section title="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyAddScriptDialog" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyAddScriptDialog.html" />
               <section title="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyDownloader" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyDownloader.html" />
               <section title="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJavaScript" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJavaScript.html" />
+              <section title="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.html" />
               <section title="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyManager" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyManager.html" />
               <section title="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html" />
             </section>
@@ -2484,7 +2486,6 @@
       <keyword name="BookmarksToolBar.__openBookmarkInNewTab" id="BookmarksToolBar.__openBookmarkInNewTab" ref="eric6.WebBrowser.Bookmarks.BookmarksToolBar.html#BookmarksToolBar.__openBookmarkInNewTab" />
       <keyword name="BookmarksToolBar.__openBookmarkInNewWindow" id="BookmarksToolBar.__openBookmarkInNewWindow" ref="eric6.WebBrowser.Bookmarks.BookmarksToolBar.html#BookmarksToolBar.__openBookmarkInNewWindow" />
       <keyword name="BookmarksToolBar.__openBookmarkInPrivateWindow" id="BookmarksToolBar.__openBookmarkInPrivateWindow" ref="eric6.WebBrowser.Bookmarks.BookmarksToolBar.html#BookmarksToolBar.__openBookmarkInPrivateWindow" />
-      <keyword name="BookmarksToolBar.__openToolBarBookmark" id="BookmarksToolBar.__openToolBarBookmark" ref="eric6.Helpviewer.Bookmarks.BookmarksToolBar.html#BookmarksToolBar.__openToolBarBookmark" />
       <keyword name="BookmarksToolBar.__rebuild" id="BookmarksToolBar.__rebuild" ref="eric6.Helpviewer.Bookmarks.BookmarksToolBar.html#BookmarksToolBar.__rebuild" />
       <keyword name="BookmarksToolBar.__rebuild" id="BookmarksToolBar.__rebuild" ref="eric6.WebBrowser.Bookmarks.BookmarksToolBar.html#BookmarksToolBar.__rebuild" />
       <keyword name="BookmarksToolBar.__removeBookmark" id="BookmarksToolBar.__removeBookmark" ref="eric6.Helpviewer.Bookmarks.BookmarksToolBar.html#BookmarksToolBar.__removeBookmark" />
@@ -4256,7 +4257,7 @@
       <keyword name="DownloadManager.__updateRow" id="DownloadManager.__updateRow" ref="eric6.Helpviewer.Download.DownloadManager.html#DownloadManager.__updateRow" />
       <keyword name="DownloadManager.__updateRow" id="DownloadManager.__updateRow" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.__updateRow" />
       <keyword name="DownloadManager.activeDownloads" id="DownloadManager.activeDownloads" ref="eric6.Helpviewer.Download.DownloadManager.html#DownloadManager.activeDownloads" />
-      <keyword name="DownloadManager.activeDownloads" id="DownloadManager.activeDownloads" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.activeDownloads" />
+      <keyword name="DownloadManager.activeDownloadsCount" id="DownloadManager.activeDownloadsCount" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.activeDownloadsCount" />
       <keyword name="DownloadManager.allowQuit" id="DownloadManager.allowQuit" ref="eric6.Helpviewer.Download.DownloadManager.html#DownloadManager.allowQuit" />
       <keyword name="DownloadManager.allowQuit" id="DownloadManager.allowQuit" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.allowQuit" />
       <keyword name="DownloadManager.changeOccurred" id="DownloadManager.changeOccurred" ref="eric6.Helpviewer.Download.DownloadManager.html#DownloadManager.changeOccurred" />
@@ -4265,13 +4266,13 @@
       <keyword name="DownloadManager.cleanup" id="DownloadManager.cleanup" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.cleanup" />
       <keyword name="DownloadManager.closeEvent" id="DownloadManager.closeEvent" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.closeEvent" />
       <keyword name="DownloadManager.count" id="DownloadManager.count" ref="eric6.Helpviewer.Download.DownloadManager.html#DownloadManager.count" />
-      <keyword name="DownloadManager.count" id="DownloadManager.count" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.count" />
       <keyword name="DownloadManager.download" id="DownloadManager.download" ref="eric6.Helpviewer.Download.DownloadManager.html#DownloadManager.download" />
       <keyword name="DownloadManager.download" id="DownloadManager.download" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.download" />
       <keyword name="DownloadManager.downloadDirectory" id="DownloadManager.downloadDirectory" ref="eric6.Helpviewer.Download.DownloadManager.html#DownloadManager.downloadDirectory" />
       <keyword name="DownloadManager.downloadDirectory" id="DownloadManager.downloadDirectory" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.downloadDirectory" />
       <keyword name="DownloadManager.downloads" id="DownloadManager.downloads" ref="eric6.Helpviewer.Download.DownloadManager.html#DownloadManager.downloads" />
       <keyword name="DownloadManager.downloads" id="DownloadManager.downloads" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.downloads" />
+      <keyword name="DownloadManager.downloadsCount" id="DownloadManager.downloadsCount" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.downloadsCount" />
       <keyword name="DownloadManager.handleUnsupportedContent" id="DownloadManager.handleUnsupportedContent" ref="eric6.Helpviewer.Download.DownloadManager.html#DownloadManager.handleUnsupportedContent" />
       <keyword name="DownloadManager.on_cleanupButton_clicked" id="DownloadManager.on_cleanupButton_clicked" ref="eric6.Helpviewer.Download.DownloadManager.html#DownloadManager.on_cleanupButton_clicked" />
       <keyword name="DownloadManager.on_cleanupButton_clicked" id="DownloadManager.on_cleanupButton_clicked" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.on_cleanupButton_clicked" />
@@ -4285,6 +4286,11 @@
       <keyword name="DownloadManager.setRemovePolicy" id="DownloadManager.setRemovePolicy" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.setRemovePolicy" />
       <keyword name="DownloadManager.shutdown" id="DownloadManager.shutdown" ref="eric6.Helpviewer.Download.DownloadManager.html#DownloadManager.shutdown" />
       <keyword name="DownloadManager.shutdown" id="DownloadManager.shutdown" ref="eric6.WebBrowser.Download.DownloadManager.html#DownloadManager.shutdown" />
+      <keyword name="DownloadManagerButton" id="DownloadManagerButton" ref="eric6.WebBrowser.Download.DownloadManagerButton.html#DownloadManagerButton" />
+      <keyword name="DownloadManagerButton (Constructor)" id="DownloadManagerButton (Constructor)" ref="eric6.WebBrowser.Download.DownloadManagerButton.html#DownloadManagerButton.__init__" />
+      <keyword name="DownloadManagerButton (Module)" id="DownloadManagerButton (Module)" ref="eric6.WebBrowser.Download.DownloadManagerButton.html" />
+      <keyword name="DownloadManagerButton.__buttonClicked" id="DownloadManagerButton.__buttonClicked" ref="eric6.WebBrowser.Download.DownloadManagerButton.html#DownloadManagerButton.__buttonClicked" />
+      <keyword name="DownloadManagerButton.__updateState" id="DownloadManagerButton.__updateState" ref="eric6.WebBrowser.Download.DownloadManagerButton.html#DownloadManagerButton.__updateState" />
       <keyword name="DownloadModel" id="DownloadModel" ref="eric6.Helpviewer.Download.DownloadModel.html#DownloadModel" />
       <keyword name="DownloadModel" id="DownloadModel" ref="eric6.WebBrowser.Download.DownloadModel.html#DownloadModel" />
       <keyword name="DownloadModel (Constructor)" id="DownloadModel (Constructor)" ref="eric6.Helpviewer.Download.DownloadModel.html#DownloadModel.__init__" />
@@ -4668,8 +4674,10 @@
       <keyword name="E5PassivePopup.__defaultArea" id="E5PassivePopup.__defaultArea" ref="eric6.E5Gui.E5PassivePopup.html#E5PassivePopup.__defaultArea" />
       <keyword name="E5PassivePopup.__moveNear" id="E5PassivePopup.__moveNear" ref="eric6.E5Gui.E5PassivePopup.html#E5PassivePopup.__moveNear" />
       <keyword name="E5PassivePopup.__positionSelf" id="E5PassivePopup.__positionSelf" ref="eric6.E5Gui.E5PassivePopup.html#E5PassivePopup.__positionSelf" />
+      <keyword name="E5PassivePopup.getCustomData" id="E5PassivePopup.getCustomData" ref="eric6.E5Gui.E5PassivePopup.html#E5PassivePopup.getCustomData" />
       <keyword name="E5PassivePopup.hideEvent" id="E5PassivePopup.hideEvent" ref="eric6.E5Gui.E5PassivePopup.html#E5PassivePopup.hideEvent" />
       <keyword name="E5PassivePopup.mouseReleaseEvent" id="E5PassivePopup.mouseReleaseEvent" ref="eric6.E5Gui.E5PassivePopup.html#E5PassivePopup.mouseReleaseEvent" />
+      <keyword name="E5PassivePopup.setCustomData" id="E5PassivePopup.setCustomData" ref="eric6.E5Gui.E5PassivePopup.html#E5PassivePopup.setCustomData" />
       <keyword name="E5PassivePopup.setTimeout" id="E5PassivePopup.setTimeout" ref="eric6.E5Gui.E5PassivePopup.html#E5PassivePopup.setTimeout" />
       <keyword name="E5PassivePopup.setView" id="E5PassivePopup.setView" ref="eric6.E5Gui.E5PassivePopup.html#E5PassivePopup.setView" />
       <keyword name="E5PassivePopup.setVisible" id="E5PassivePopup.setVisible" ref="eric6.E5Gui.E5PassivePopup.html#E5PassivePopup.setVisible" />
@@ -5014,11 +5022,13 @@
       <keyword name="E5ToolButton (Module)" id="E5ToolButton (Module)" ref="eric6.E5Gui.E5ToolButton.html" />
       <keyword name="E5ToolButton.__menuAboutToHide" id="E5ToolButton.__menuAboutToHide" ref="eric6.E5Gui.E5ToolButton.html#E5ToolButton.__menuAboutToHide" />
       <keyword name="E5ToolButton.__showMenu" id="E5ToolButton.__showMenu" ref="eric6.E5Gui.E5ToolButton.html#E5ToolButton.__showMenu" />
+      <keyword name="E5ToolButton.badgeText" id="E5ToolButton.badgeText" ref="eric6.E5Gui.E5ToolButton.html#E5ToolButton.badgeText" />
       <keyword name="E5ToolButton.contextMenuEvent" id="E5ToolButton.contextMenuEvent" ref="eric6.E5Gui.E5ToolButton.html#E5ToolButton.contextMenuEvent" />
       <keyword name="E5ToolButton.menu" id="E5ToolButton.menu" ref="eric6.E5Gui.E5ToolButton.html#E5ToolButton.menu" />
       <keyword name="E5ToolButton.mouseDoubleClickEvent" id="E5ToolButton.mouseDoubleClickEvent" ref="eric6.E5Gui.E5ToolButton.html#E5ToolButton.mouseDoubleClickEvent" />
       <keyword name="E5ToolButton.mousePressEvent" id="E5ToolButton.mousePressEvent" ref="eric6.E5Gui.E5ToolButton.html#E5ToolButton.mousePressEvent" />
       <keyword name="E5ToolButton.mouseReleaseEvent" id="E5ToolButton.mouseReleaseEvent" ref="eric6.E5Gui.E5ToolButton.html#E5ToolButton.mouseReleaseEvent" />
+      <keyword name="E5ToolButton.setBadgeText" id="E5ToolButton.setBadgeText" ref="eric6.E5Gui.E5ToolButton.html#E5ToolButton.setBadgeText" />
       <keyword name="E5ToolButton.setMenu" id="E5ToolButton.setMenu" ref="eric6.E5Gui.E5ToolButton.html#E5ToolButton.setMenu" />
       <keyword name="E5ToolButton.setShowMenuInside" id="E5ToolButton.setShowMenuInside" ref="eric6.E5Gui.E5ToolButton.html#E5ToolButton.setShowMenuInside" />
       <keyword name="E5ToolButton.setToolbarButtonLook" id="E5ToolButton.setToolbarButtonLook" ref="eric6.E5Gui.E5ToolButton.html#E5ToolButton.setToolbarButtonLook" />
@@ -5189,6 +5199,7 @@
       <keyword name="Editor.__exportMenuTriggered" id="Editor.__exportMenuTriggered" ref="eric6.QScintilla.Editor.html#Editor.__exportMenuTriggered" />
       <keyword name="Editor.__getCharacter" id="Editor.__getCharacter" ref="eric6.QScintilla.Editor.html#Editor.__getCharacter" />
       <keyword name="Editor.__getCodeCoverageFile" id="Editor.__getCodeCoverageFile" ref="eric6.QScintilla.Editor.html#Editor.__getCodeCoverageFile" />
+      <keyword name="Editor.__getEditorConfig" id="Editor.__getEditorConfig" ref="eric6.QScintilla.Editor.html#Editor.__getEditorConfig" />
       <keyword name="Editor.__getMacroName" id="Editor.__getMacroName" ref="eric6.QScintilla.Editor.html#Editor.__getMacroName" />
       <keyword name="Editor.__getPyVersion" id="Editor.__getPyVersion" ref="eric6.QScintilla.Editor.html#Editor.__getPyVersion" />
       <keyword name="Editor.__getSaveFileName" id="Editor.__getSaveFileName" ref="eric6.QScintilla.Editor.html#Editor.__getSaveFileName" />
@@ -5219,6 +5230,8 @@
       <keyword name="Editor.__lmBbookmarks" id="Editor.__lmBbookmarks" ref="eric6.QScintilla.Editor.html#Editor.__lmBbookmarks" />
       <keyword name="Editor.__lmBbreakpoints" id="Editor.__lmBbreakpoints" ref="eric6.QScintilla.Editor.html#Editor.__lmBbreakpoints" />
       <keyword name="Editor.__loadDiagram" id="Editor.__loadDiagram" ref="eric6.QScintilla.Editor.html#Editor.__loadDiagram" />
+      <keyword name="Editor.__loadEditorConfig" id="Editor.__loadEditorConfig" ref="eric6.QScintilla.Editor.html#Editor.__loadEditorConfig" />
+      <keyword name="Editor.__loadEditorConfigObject" id="Editor.__loadEditorConfigObject" ref="eric6.QScintilla.Editor.html#Editor.__loadEditorConfigObject" />
       <keyword name="Editor.__marginClicked" id="Editor.__marginClicked" ref="eric6.QScintilla.Editor.html#Editor.__marginClicked" />
       <keyword name="Editor.__marginNumber" id="Editor.__marginNumber" ref="eric6.QScintilla.Editor.html#Editor.__marginNumber" />
       <keyword name="Editor.__markOccurrences" id="Editor.__markOccurrences" ref="eric6.QScintilla.Editor.html#Editor.__markOccurrences" />
@@ -5268,6 +5281,7 @@
       <keyword name="Editor.__setMarginsDisplay" id="Editor.__setMarginsDisplay" ref="eric6.QScintilla.Editor.html#Editor.__setMarginsDisplay" />
       <keyword name="Editor.__setSpelling" id="Editor.__setSpelling" ref="eric6.QScintilla.Editor.html#Editor.__setSpelling" />
       <keyword name="Editor.__setSpellingLanguage" id="Editor.__setSpellingLanguage" ref="eric6.QScintilla.Editor.html#Editor.__setSpellingLanguage" />
+      <keyword name="Editor.__setTabAndIndent" id="Editor.__setTabAndIndent" ref="eric6.QScintilla.Editor.html#Editor.__setTabAndIndent" />
       <keyword name="Editor.__setTextDisplay" id="Editor.__setTextDisplay" ref="eric6.QScintilla.Editor.html#Editor.__setTextDisplay" />
       <keyword name="Editor.__showApplicationDiagram" id="Editor.__showApplicationDiagram" ref="eric6.QScintilla.Editor.html#Editor.__showApplicationDiagram" />
       <keyword name="Editor.__showClassDiagram" id="Editor.__showClassDiagram" ref="eric6.QScintilla.Editor.html#Editor.__showClassDiagram" />
@@ -5361,6 +5375,7 @@
       <keyword name="Editor.getCoverageLines" id="Editor.getCoverageLines" ref="eric6.QScintilla.Editor.html#Editor.getCoverageLines" />
       <keyword name="Editor.getCurrentWord" id="Editor.getCurrentWord" ref="eric6.QScintilla.Editor.html#Editor.getCurrentWord" />
       <keyword name="Editor.getCurrentWordBoundaries" id="Editor.getCurrentWordBoundaries" ref="eric6.QScintilla.Editor.html#Editor.getCurrentWordBoundaries" />
+      <keyword name="Editor.getEditorConfig" id="Editor.getEditorConfig" ref="eric6.QScintilla.Editor.html#Editor.getEditorConfig" />
       <keyword name="Editor.getEncoding" id="Editor.getEncoding" ref="eric6.QScintilla.Editor.html#Editor.getEncoding" />
       <keyword name="Editor.getFileName" id="Editor.getFileName" ref="eric6.QScintilla.Editor.html#Editor.getFileName" />
       <keyword name="Editor.getFileType" id="Editor.getFileType" ref="eric6.QScintilla.Editor.html#Editor.getFileType" />
@@ -5378,6 +5393,7 @@
       <keyword name="Editor.getSyntaxErrorLines" id="Editor.getSyntaxErrorLines" ref="eric6.QScintilla.Editor.html#Editor.getSyntaxErrorLines" />
       <keyword name="Editor.getSyntaxErrors" id="Editor.getSyntaxErrors" ref="eric6.QScintilla.Editor.html#Editor.getSyntaxErrors" />
       <keyword name="Editor.getTaskLines" id="Editor.getTaskLines" ref="eric6.QScintilla.Editor.html#Editor.getTaskLines" />
+      <keyword name="Editor.getVcsConflictMarkerLines" id="Editor.getVcsConflictMarkerLines" ref="eric6.QScintilla.Editor.html#Editor.getVcsConflictMarkerLines" />
       <keyword name="Editor.getWarningLines" id="Editor.getWarningLines" ref="eric6.QScintilla.Editor.html#Editor.getWarningLines" />
       <keyword name="Editor.getWarnings" id="Editor.getWarnings" ref="eric6.QScintilla.Editor.html#Editor.getWarnings" />
       <keyword name="Editor.getWord" id="Editor.getWord" ref="eric6.QScintilla.Editor.html#Editor.getWord" />
@@ -5872,8 +5888,11 @@
       <keyword name="ExternalJsObject (Module)" id="ExternalJsObject (Module)" ref="eric6.WebBrowser.JavaScript.ExternalJsObject.html" />
       <keyword name="ExternalJsObject.page" id="ExternalJsObject.page" ref="eric6.WebBrowser.JavaScript.ExternalJsObject.html#ExternalJsObject.page" />
       <keyword name="ExternalJsObject.passwordManager" id="ExternalJsObject.passwordManager" ref="eric6.WebBrowser.JavaScript.ExternalJsObject.html#ExternalJsObject.passwordManager" />
+      <keyword name="ExternalJsObject.registerExtraObject" id="ExternalJsObject.registerExtraObject" ref="eric6.WebBrowser.JavaScript.ExternalJsObject.html#ExternalJsObject.registerExtraObject" />
+      <keyword name="ExternalJsObject.setupWebChannel" id="ExternalJsObject.setupWebChannel" ref="eric6.WebBrowser.JavaScript.ExternalJsObject.html#ExternalJsObject.setupWebChannel" />
       <keyword name="ExternalJsObject.speedDial" id="ExternalJsObject.speedDial" ref="eric6.WebBrowser.JavaScript.ExternalJsObject.html#ExternalJsObject.speedDial" />
       <keyword name="ExternalJsObject.startPage" id="ExternalJsObject.startPage" ref="eric6.WebBrowser.JavaScript.ExternalJsObject.html#ExternalJsObject.startPage" />
+      <keyword name="ExternalJsObject.unregisterExtraObject" id="ExternalJsObject.unregisterExtraObject" ref="eric6.WebBrowser.JavaScript.ExternalJsObject.html#ExternalJsObject.unregisterExtraObject" />
       <keyword name="FavIconLabel" id="FavIconLabel" ref="eric6.Helpviewer.UrlBar.FavIconLabel.html#FavIconLabel" />
       <keyword name="FavIconLabel" id="FavIconLabel" ref="eric6.WebBrowser.UrlBar.FavIconLabel.html#FavIconLabel" />
       <keyword name="FavIconLabel (Constructor)" id="FavIconLabel (Constructor)" ref="eric6.Helpviewer.UrlBar.FavIconLabel.html#FavIconLabel.__init__" />
@@ -7395,6 +7414,15 @@
       <keyword name="GreaseMonkeyDownloader.updateScript" id="GreaseMonkeyDownloader.updateScript" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyDownloader.html#GreaseMonkeyDownloader.updateScript" />
       <keyword name="GreaseMonkeyJavaScript (Module)" id="GreaseMonkeyJavaScript (Module)" ref="eric6.Helpviewer.GreaseMonkey.GreaseMonkeyJavaScript.html" />
       <keyword name="GreaseMonkeyJavaScript (Module)" id="GreaseMonkeyJavaScript (Module)" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJavaScript.html" />
+      <keyword name="GreaseMonkeyJsObject" id="GreaseMonkeyJsObject" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.html#GreaseMonkeyJsObject" />
+      <keyword name="GreaseMonkeyJsObject (Constructor)" id="GreaseMonkeyJsObject (Constructor)" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.html#GreaseMonkeyJsObject.__init__" />
+      <keyword name="GreaseMonkeyJsObject (Module)" id="GreaseMonkeyJsObject (Module)" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.html" />
+      <keyword name="GreaseMonkeyJsObject.deleteValue" id="GreaseMonkeyJsObject.deleteValue" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.html#GreaseMonkeyJsObject.deleteValue" />
+      <keyword name="GreaseMonkeyJsObject.getValue" id="GreaseMonkeyJsObject.getValue" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.html#GreaseMonkeyJsObject.getValue" />
+      <keyword name="GreaseMonkeyJsObject.listValues" id="GreaseMonkeyJsObject.listValues" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.html#GreaseMonkeyJsObject.listValues" />
+      <keyword name="GreaseMonkeyJsObject.setClipboard" id="GreaseMonkeyJsObject.setClipboard" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.html#GreaseMonkeyJsObject.setClipboard" />
+      <keyword name="GreaseMonkeyJsObject.setSettingsFile" id="GreaseMonkeyJsObject.setSettingsFile" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.html#GreaseMonkeyJsObject.setSettingsFile" />
+      <keyword name="GreaseMonkeyJsObject.setValue" id="GreaseMonkeyJsObject.setValue" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.html#GreaseMonkeyJsObject.setValue" />
       <keyword name="GreaseMonkeyManager" id="GreaseMonkeyManager" ref="eric6.Helpviewer.GreaseMonkey.GreaseMonkeyManager.html#GreaseMonkeyManager" />
       <keyword name="GreaseMonkeyManager" id="GreaseMonkeyManager" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyManager.html#GreaseMonkeyManager" />
       <keyword name="GreaseMonkeyManager (Constructor)" id="GreaseMonkeyManager (Constructor)" ref="eric6.Helpviewer.GreaseMonkey.GreaseMonkeyManager.html#GreaseMonkeyManager.__init__" />
@@ -7442,9 +7470,11 @@
       <keyword name="GreaseMonkeyScript (Constructor)" id="GreaseMonkeyScript (Constructor)" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.__init__" />
       <keyword name="GreaseMonkeyScript (Module)" id="GreaseMonkeyScript (Module)" ref="eric6.Helpviewer.GreaseMonkey.GreaseMonkeyScript.html" />
       <keyword name="GreaseMonkeyScript (Module)" id="GreaseMonkeyScript (Module)" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html" />
+      <keyword name="GreaseMonkeyScript.__downloadIcon" id="GreaseMonkeyScript.__downloadIcon" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.__downloadIcon" />
       <keyword name="GreaseMonkeyScript.__downloadRequires" id="GreaseMonkeyScript.__downloadRequires" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.__downloadRequires" />
       <keyword name="GreaseMonkeyScript.__downloaderError" id="GreaseMonkeyScript.__downloaderError" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.__downloaderError" />
       <keyword name="GreaseMonkeyScript.__downloaderFinished" id="GreaseMonkeyScript.__downloaderFinished" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.__downloaderFinished" />
+      <keyword name="GreaseMonkeyScript.__iconDownloaded" id="GreaseMonkeyScript.__iconDownloaded" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.__iconDownloaded" />
       <keyword name="GreaseMonkeyScript.__parseScript" id="GreaseMonkeyScript.__parseScript" ref="eric6.Helpviewer.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.__parseScript" />
       <keyword name="GreaseMonkeyScript.__parseScript" id="GreaseMonkeyScript.__parseScript" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.__parseScript" />
       <keyword name="GreaseMonkeyScript.__reloadScript" id="GreaseMonkeyScript.__reloadScript" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.__reloadScript" />
@@ -7462,6 +7492,8 @@
       <keyword name="GreaseMonkeyScript.fileName" id="GreaseMonkeyScript.fileName" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.fileName" />
       <keyword name="GreaseMonkeyScript.fullName" id="GreaseMonkeyScript.fullName" ref="eric6.Helpviewer.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.fullName" />
       <keyword name="GreaseMonkeyScript.fullName" id="GreaseMonkeyScript.fullName" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.fullName" />
+      <keyword name="GreaseMonkeyScript.icon" id="GreaseMonkeyScript.icon" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.icon" />
+      <keyword name="GreaseMonkeyScript.iconUrl" id="GreaseMonkeyScript.iconUrl" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.iconUrl" />
       <keyword name="GreaseMonkeyScript.include" id="GreaseMonkeyScript.include" ref="eric6.Helpviewer.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.include" />
       <keyword name="GreaseMonkeyScript.include" id="GreaseMonkeyScript.include" ref="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.include" />
       <keyword name="GreaseMonkeyScript.isEnabled" id="GreaseMonkeyScript.isEnabled" ref="eric6.Helpviewer.GreaseMonkey.GreaseMonkeyScript.html#GreaseMonkeyScript.isEnabled" />
@@ -7700,6 +7732,7 @@
       <keyword name="HelpTabBar" id="HelpTabBar" ref="eric6.Helpviewer.HelpTabBar.html#HelpTabBar" />
       <keyword name="HelpTabBar (Constructor)" id="HelpTabBar (Constructor)" ref="eric6.Helpviewer.HelpTabBar.html#HelpTabBar.__init__" />
       <keyword name="HelpTabBar (Module)" id="HelpTabBar (Module)" ref="eric6.Helpviewer.HelpTabBar.html" />
+      <keyword name="HelpTabBar.__hidePreview" id="HelpTabBar.__hidePreview" ref="eric6.Helpviewer.HelpTabBar.html#HelpTabBar.__hidePreview" />
       <keyword name="HelpTabBar.__showTabPreview" id="HelpTabBar.__showTabPreview" ref="eric6.Helpviewer.HelpTabBar.html#HelpTabBar.__showTabPreview" />
       <keyword name="HelpTabBar.event" id="HelpTabBar.event" ref="eric6.Helpviewer.HelpTabBar.html#HelpTabBar.event" />
       <keyword name="HelpTabBar.leaveEvent" id="HelpTabBar.leaveEvent" ref="eric6.Helpviewer.HelpTabBar.html#HelpTabBar.leaveEvent" />
@@ -10284,6 +10317,7 @@
       <keyword name="JavaScriptIcon" id="JavaScriptIcon" ref="eric6.WebBrowser.StatusBar.JavaScriptIcon.html#JavaScriptIcon" />
       <keyword name="JavaScriptIcon (Constructor)" id="JavaScriptIcon (Constructor)" ref="eric6.WebBrowser.StatusBar.JavaScriptIcon.html#JavaScriptIcon.__init__" />
       <keyword name="JavaScriptIcon (Module)" id="JavaScriptIcon (Module)" ref="eric6.WebBrowser.StatusBar.JavaScriptIcon.html" />
+      <keyword name="JavaScriptIcon.__navigationRequestAccepted" id="JavaScriptIcon.__navigationRequestAccepted" ref="eric6.WebBrowser.StatusBar.JavaScriptIcon.html#JavaScriptIcon.__navigationRequestAccepted" />
       <keyword name="JavaScriptIcon.__showJavaScriptSettingsDialog" id="JavaScriptIcon.__showJavaScriptSettingsDialog" ref="eric6.WebBrowser.StatusBar.JavaScriptIcon.html#JavaScriptIcon.__showJavaScriptSettingsDialog" />
       <keyword name="JavaScriptIcon.__showMenu" id="JavaScriptIcon.__showMenu" ref="eric6.WebBrowser.StatusBar.JavaScriptIcon.html#JavaScriptIcon.__showMenu" />
       <keyword name="JavaScriptIcon.__toggleJavaScript" id="JavaScriptIcon.__toggleJavaScript" ref="eric6.WebBrowser.StatusBar.JavaScriptIcon.html#JavaScriptIcon.__toggleJavaScript" />
@@ -10908,11 +10942,14 @@
       <keyword name="MiniEditor.__deselectAll" id="MiniEditor.__deselectAll" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__deselectAll" />
       <keyword name="MiniEditor.__documentWasModified" id="MiniEditor.__documentWasModified" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__documentWasModified" />
       <keyword name="MiniEditor.__getCurrentWord" id="MiniEditor.__getCurrentWord" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__getCurrentWord" />
+      <keyword name="MiniEditor.__getEditorConfig" id="MiniEditor.__getEditorConfig" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__getEditorConfig" />
       <keyword name="MiniEditor.__getWord" id="MiniEditor.__getWord" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__getWord" />
       <keyword name="MiniEditor.__initContextMenu" id="MiniEditor.__initContextMenu" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__initContextMenu" />
       <keyword name="MiniEditor.__initContextMenuLanguages" id="MiniEditor.__initContextMenuLanguages" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__initContextMenuLanguages" />
       <keyword name="MiniEditor.__isPy2File" id="MiniEditor.__isPy2File" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__isPy2File" />
       <keyword name="MiniEditor.__languageMenuTriggered" id="MiniEditor.__languageMenuTriggered" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__languageMenuTriggered" />
+      <keyword name="MiniEditor.__loadEditorConfig" id="MiniEditor.__loadEditorConfig" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__loadEditorConfig" />
+      <keyword name="MiniEditor.__loadEditorConfigObject" id="MiniEditor.__loadEditorConfigObject" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__loadEditorConfigObject" />
       <keyword name="MiniEditor.__loadFile" id="MiniEditor.__loadFile" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__loadFile" />
       <keyword name="MiniEditor.__markOccurrences" id="MiniEditor.__markOccurrences" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__markOccurrences" />
       <keyword name="MiniEditor.__maybeSave" id="MiniEditor.__maybeSave" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__maybeSave" />
@@ -10941,12 +10978,14 @@
       <keyword name="MiniEditor.__setMargins" id="MiniEditor.__setMargins" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__setMargins" />
       <keyword name="MiniEditor.__setMonospaced" id="MiniEditor.__setMonospaced" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__setMonospaced" />
       <keyword name="MiniEditor.__setSbFile" id="MiniEditor.__setSbFile" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__setSbFile" />
+      <keyword name="MiniEditor.__setTabAndIndent" id="MiniEditor.__setTabAndIndent" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__setTabAndIndent" />
       <keyword name="MiniEditor.__setTextDisplay" id="MiniEditor.__setTextDisplay" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__setTextDisplay" />
       <keyword name="MiniEditor.__showContextMenuLanguages" id="MiniEditor.__showContextMenuLanguages" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__showContextMenuLanguages" />
       <keyword name="MiniEditor.__strippedName" id="MiniEditor.__strippedName" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__strippedName" />
       <keyword name="MiniEditor.__styleNeeded" id="MiniEditor.__styleNeeded" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__styleNeeded" />
       <keyword name="MiniEditor.__undo" id="MiniEditor.__undo" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__undo" />
       <keyword name="MiniEditor.__whatsThis" id="MiniEditor.__whatsThis" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__whatsThis" />
+      <keyword name="MiniEditor.__writeFile" id="MiniEditor.__writeFile" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__writeFile" />
       <keyword name="MiniEditor.__writeSettings" id="MiniEditor.__writeSettings" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.__writeSettings" />
       <keyword name="MiniEditor.activeWindow" id="MiniEditor.activeWindow" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.activeWindow" />
       <keyword name="MiniEditor.clearSearchIndicators" id="MiniEditor.clearSearchIndicators" ref="eric6.QScintilla.MiniEditor.html#MiniEditor.clearSearchIndicators" />
@@ -10965,6 +11004,7 @@
       <keyword name="MiniScintilla.focusInEvent" id="MiniScintilla.focusInEvent" ref="eric6.QScintilla.MiniEditor.html#MiniScintilla.focusInEvent" />
       <keyword name="MiniScintilla.focusOutEvent" id="MiniScintilla.focusOutEvent" ref="eric6.QScintilla.MiniEditor.html#MiniScintilla.focusOutEvent" />
       <keyword name="MiniScintilla.getFileName" id="MiniScintilla.getFileName" ref="eric6.QScintilla.MiniEditor.html#MiniScintilla.getFileName" />
+      <keyword name="MiniScintilla.removeTrailingWhitespace" id="MiniScintilla.removeTrailingWhitespace" ref="eric6.QScintilla.MiniEditor.html#MiniScintilla.removeTrailingWhitespace" />
       <keyword name="MiscellaneousChecker" id="MiscellaneousChecker" ref="eric6.Plugins.CheckerPlugins.CodeStyleChecker.MiscellaneousChecker.html#MiscellaneousChecker" />
       <keyword name="MiscellaneousChecker (Constructor)" id="MiscellaneousChecker (Constructor)" ref="eric6.Plugins.CheckerPlugins.CodeStyleChecker.MiscellaneousChecker.html#MiscellaneousChecker.__init__" />
       <keyword name="MiscellaneousChecker (Module)" id="MiscellaneousChecker (Module)" ref="eric6.Plugins.CheckerPlugins.CodeStyleChecker.MiscellaneousChecker.html" />
@@ -17503,7 +17543,9 @@
       <keyword name="WebBrowserPage (Module)" id="WebBrowserPage (Module)" ref="eric6.WebBrowser.WebBrowserPage.html" />
       <keyword name="WebBrowserPage.__featurePermissionRequested" id="WebBrowserPage.__featurePermissionRequested" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.__featurePermissionRequested" />
       <keyword name="WebBrowserPage.__fullScreenRequested" id="WebBrowserPage.__fullScreenRequested" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.__fullScreenRequested" />
-      <keyword name="WebBrowserPage.__setupWebChannel" id="WebBrowserPage.__setupWebChannel" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.__setupWebChannel" />
+      <keyword name="WebBrowserPage.__loadProgressSlot" id="WebBrowserPage.__loadProgressSlot" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.__loadProgressSlot" />
+      <keyword name="WebBrowserPage.__setupChannelTimeout" id="WebBrowserPage.__setupChannelTimeout" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.__setupChannelTimeout" />
+      <keyword name="WebBrowserPage.__setupWebChannelForUrl" id="WebBrowserPage.__setupWebChannelForUrl" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.__setupWebChannelForUrl" />
       <keyword name="WebBrowserPage.__urlChanged" id="WebBrowserPage.__urlChanged" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.__urlChanged" />
       <keyword name="WebBrowserPage.acceptNavigationRequest" id="WebBrowserPage.acceptNavigationRequest" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.acceptNavigationRequest" />
       <keyword name="WebBrowserPage.certificateError" id="WebBrowserPage.certificateError" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.certificateError" />
@@ -17526,7 +17568,6 @@
       <keyword name="WebBrowserPage.scroll" id="WebBrowserPage.scroll" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.scroll" />
       <keyword name="WebBrowserPage.scrollPosition" id="WebBrowserPage.scrollPosition" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.scrollPosition" />
       <keyword name="WebBrowserPage.scrollTo" id="WebBrowserPage.scrollTo" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.scrollTo" />
-      <keyword name="WebBrowserPage.setJavaScriptEnabled" id="WebBrowserPage.setJavaScriptEnabled" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.setJavaScriptEnabled" />
       <keyword name="WebBrowserPage.setUserAgent" id="WebBrowserPage.setUserAgent" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.setUserAgent" />
       <keyword name="WebBrowserPage.userAgent" id="WebBrowserPage.userAgent" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.userAgent" />
       <keyword name="WebBrowserPage.userAgentForUrl" id="WebBrowserPage.userAgentForUrl" ref="eric6.WebBrowser.WebBrowserPage.html#WebBrowserPage.userAgentForUrl" />
@@ -17542,6 +17583,7 @@
       <keyword name="WebBrowserTabBar" id="WebBrowserTabBar" ref="eric6.WebBrowser.WebBrowserTabBar.html#WebBrowserTabBar" />
       <keyword name="WebBrowserTabBar (Constructor)" id="WebBrowserTabBar (Constructor)" ref="eric6.WebBrowser.WebBrowserTabBar.html#WebBrowserTabBar.__init__" />
       <keyword name="WebBrowserTabBar (Module)" id="WebBrowserTabBar (Module)" ref="eric6.WebBrowser.WebBrowserTabBar.html" />
+      <keyword name="WebBrowserTabBar.__hidePreview" id="WebBrowserTabBar.__hidePreview" ref="eric6.WebBrowser.WebBrowserTabBar.html#WebBrowserTabBar.__hidePreview" />
       <keyword name="WebBrowserTabBar.__showTabPreview" id="WebBrowserTabBar.__showTabPreview" ref="eric6.WebBrowser.WebBrowserTabBar.html#WebBrowserTabBar.__showTabPreview" />
       <keyword name="WebBrowserTabBar.event" id="WebBrowserTabBar.event" ref="eric6.WebBrowser.WebBrowserTabBar.html#WebBrowserTabBar.event" />
       <keyword name="WebBrowserTabBar.leaveEvent" id="WebBrowserTabBar.leaveEvent" ref="eric6.WebBrowser.WebBrowserTabBar.html#WebBrowserTabBar.leaveEvent" />
@@ -17646,6 +17688,7 @@
       <keyword name="WebBrowserView.__openLinkInNewTab" id="WebBrowserView.__openLinkInNewTab" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.__openLinkInNewTab" />
       <keyword name="WebBrowserView.__openLinkInNewWindow" id="WebBrowserView.__openLinkInNewWindow" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.__openLinkInNewWindow" />
       <keyword name="WebBrowserView.__pauseMedia" id="WebBrowserView.__pauseMedia" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.__pauseMedia" />
+      <keyword name="WebBrowserView.__printPage" id="WebBrowserView.__printPage" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.__printPage" />
       <keyword name="WebBrowserView.__reloadAllSpeedDials" id="WebBrowserView.__reloadAllSpeedDials" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.__reloadAllSpeedDials" />
       <keyword name="WebBrowserView.__renderPreview" id="WebBrowserView.__renderPreview" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.__renderPreview" />
       <keyword name="WebBrowserView.__renderProcessTerminated" id="WebBrowserView.__renderProcessTerminated" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.__renderProcessTerminated" />
@@ -17719,6 +17762,7 @@
       <keyword name="WebBrowserView.showEvent" id="WebBrowserView.showEvent" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.showEvent" />
       <keyword name="WebBrowserView.source" id="WebBrowserView.source" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.source" />
       <keyword name="WebBrowserView.storeSessionData" id="WebBrowserView.storeSessionData" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.storeSessionData" />
+      <keyword name="WebBrowserView.title" id="WebBrowserView.title" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.title" />
       <keyword name="WebBrowserView.undo" id="WebBrowserView.undo" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.undo" />
       <keyword name="WebBrowserView.unselect" id="WebBrowserView.unselect" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.unselect" />
       <keyword name="WebBrowserView.zoomIn" id="WebBrowserView.zoomIn" ref="eric6.WebBrowser.WebBrowserView.html#WebBrowserView.zoomIn" />
@@ -17808,7 +17852,6 @@
       <keyword name="WebBrowserWindow.__reload" id="WebBrowserWindow.__reload" ref="eric6.WebBrowser.WebBrowserWindow.html#WebBrowserWindow.__reload" />
       <keyword name="WebBrowserWindow.__removeOldDocumentation" id="WebBrowserWindow.__removeOldDocumentation" ref="eric6.WebBrowser.WebBrowserWindow.html#WebBrowserWindow.__removeOldDocumentation" />
       <keyword name="WebBrowserWindow.__savePageAs" id="WebBrowserWindow.__savePageAs" ref="eric6.WebBrowser.WebBrowserWindow.html#WebBrowserWindow.__savePageAs" />
-      <keyword name="WebBrowserWindow.__savePageScreen" id="WebBrowserWindow.__savePageScreen" ref="eric6.WebBrowser.WebBrowserWindow.html#WebBrowserWindow.__savePageScreen" />
       <keyword name="WebBrowserWindow.__saveVisiblePageScreen" id="WebBrowserWindow.__saveVisiblePageScreen" ref="eric6.WebBrowser.WebBrowserWindow.html#WebBrowserWindow.__saveVisiblePageScreen" />
       <keyword name="WebBrowserWindow.__searchForWord" id="WebBrowserWindow.__searchForWord" ref="eric6.WebBrowser.WebBrowserWindow.html#WebBrowserWindow.__searchForWord" />
       <keyword name="WebBrowserWindow.__selectAll" id="WebBrowserWindow.__selectAll" ref="eric6.WebBrowser.WebBrowserWindow.html#WebBrowserWindow.__selectAll" />
@@ -17948,6 +17991,7 @@
       <keyword name="WebBrowserWindow.toggleFullScreen" id="WebBrowserWindow.toggleFullScreen" ref="eric6.WebBrowser.WebBrowserWindow.html#WebBrowserWindow.toggleFullScreen" />
       <keyword name="WebBrowserWindow.userAgentsManager" id="WebBrowserWindow.userAgentsManager" ref="eric6.WebBrowser.WebBrowserWindow.html#WebBrowserWindow.userAgentsManager" />
       <keyword name="WebBrowserWindow.webProfile" id="WebBrowserWindow.webProfile" ref="eric6.WebBrowser.WebBrowserWindow.html#WebBrowserWindow.webProfile" />
+      <keyword name="WebBrowserWindow.webSettings" id="WebBrowserWindow.webSettings" ref="eric6.WebBrowser.WebBrowserWindow.html#WebBrowserWindow.webSettings" />
       <keyword name="WebDatabasesDialog" id="WebDatabasesDialog" ref="eric6.Helpviewer.OfflineStorage.WebDatabasesDialog.html#WebDatabasesDialog" />
       <keyword name="WebDatabasesDialog (Constructor)" id="WebDatabasesDialog (Constructor)" ref="eric6.Helpviewer.OfflineStorage.WebDatabasesDialog.html#WebDatabasesDialog.__init__" />
       <keyword name="WebDatabasesDialog (Module)" id="WebDatabasesDialog (Module)" ref="eric6.Helpviewer.OfflineStorage.WebDatabasesDialog.html" />
@@ -18977,6 +19021,7 @@
       <keyword name="setWebBrowser" id="setWebBrowser" ref="eric6.Preferences.__init__.html#setWebBrowser" />
       <keyword name="setupFormObserver" id="setupFormObserver" ref="eric6.WebBrowser.Tools.Scripts.html#setupFormObserver" />
       <keyword name="setupWebChannel" id="setupWebChannel" ref="eric6.WebBrowser.Tools.Scripts.html#setupWebChannel" />
+      <keyword name="setupWindowObject" id="setupWindowObject" ref="eric6.WebBrowser.Tools.Scripts.html#setupWindowObject" />
       <keyword name="shelve (Module)" id="shelve (Module)" ref="eric6.Plugins.VcsPlugins.vcsMercurial.ShelveExtension.shelve.html" />
       <keyword name="shouldResetLayout" id="shouldResetLayout" ref="eric6.Preferences.__init__.html#shouldResetLayout" />
       <keyword name="shutilCopy" id="shutilCopy" ref="eric6.install-debugclients.html#shutilCopy" />
@@ -20060,6 +20105,7 @@
       <file>eric6.WebBrowser.Download.DownloadAskActionDialog.html</file>
       <file>eric6.WebBrowser.Download.DownloadItem.html</file>
       <file>eric6.WebBrowser.Download.DownloadManager.html</file>
+      <file>eric6.WebBrowser.Download.DownloadManagerButton.html</file>
       <file>eric6.WebBrowser.Download.DownloadModel.html</file>
       <file>eric6.WebBrowser.Download.DownloadUtilities.html</file>
       <file>eric6.WebBrowser.FeaturePermissions.FeaturePermissionBar.html</file>
@@ -20081,6 +20127,7 @@
       <file>eric6.WebBrowser.GreaseMonkey.GreaseMonkeyConfiguration.GreaseMonkeyConfigurationScriptInfoDialog.html</file>
       <file>eric6.WebBrowser.GreaseMonkey.GreaseMonkeyDownloader.html</file>
       <file>eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJavaScript.html</file>
+      <file>eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.html</file>
       <file>eric6.WebBrowser.GreaseMonkey.GreaseMonkeyManager.html</file>
       <file>eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html</file>
       <file>eric6.WebBrowser.History.HistoryCompleter.html</file>
--- a/Documentation/Source/eric6.Cooperation.CooperationClient.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Cooperation.CooperationClient.html	Fri Mar 02 19:35:16 2018 +0100
@@ -174,14 +174,16 @@
 </dd>
 </dl><a NAME="CooperationClient.__connectionError" ID="CooperationClient.__connectionError"></a>
 <h4>CooperationClient.__connectionError</h4>
-<b>__connectionError</b>(<i>socketError</i>)
+<b>__connectionError</b>(<i>socketError, connection</i>)
 <p>
         Private slot to handle a connection error.
 </p><dl>
-<dt><i>socketError</i></dt>
+<dt><i>socketError</i> (QAbstractSocket.SocketError)</dt>
 <dd>
 reference to the error object
-            (QAbstractSocket.SocketError)
+</dd><dt><i>connection</i> (Connection)</dt>
+<dd>
+connection that caused the error
 </dd>
 </dl><a NAME="CooperationClient.__connectionRejected" ID="CooperationClient.__connectionRejected"></a>
 <h4>CooperationClient.__connectionRejected</h4>
@@ -195,10 +197,15 @@
 </dd>
 </dl><a NAME="CooperationClient.__disconnected" ID="CooperationClient.__disconnected"></a>
 <h4>CooperationClient.__disconnected</h4>
-<b>__disconnected</b>(<i></i>)
+<b>__disconnected</b>(<i>connection</i>)
 <p>
         Private slot to handle the disconnection of a chat client.
-</p><a NAME="CooperationClient.__findConnections" ID="CooperationClient.__findConnections"></a>
+</p><dl>
+<dt><i>connection</i> (Connection)</dt>
+<dd>
+connection that was disconnected
+</dd>
+</dl><a NAME="CooperationClient.__findConnections" ID="CooperationClient.__findConnections"></a>
 <h4>CooperationClient.__findConnections</h4>
 <b>__findConnections</b>(<i>nick</i>)
 <p>
@@ -216,10 +223,16 @@
 </dd>
 </dl><a NAME="CooperationClient.__getParticipants" ID="CooperationClient.__getParticipants"></a>
 <h4>CooperationClient.__getParticipants</h4>
-<b>__getParticipants</b>(<i></i>)
+<b>__getParticipants</b>(<i>reqConnection</i>)
 <p>
         Private slot to handle the request for a list of participants.
-</p><a NAME="CooperationClient.__newConnection" ID="CooperationClient.__newConnection"></a>
+</p><dl>
+<dt><i>reqConnection</i> (Connection)</dt>
+<dd>
+reference to the connection to get
+            participants for
+</dd>
+</dl><a NAME="CooperationClient.__newConnection" ID="CooperationClient.__newConnection"></a>
 <h4>CooperationClient.__newConnection</h4>
 <b>__newConnection</b>(<i>connection</i>)
 <p>
@@ -242,10 +255,15 @@
 </dd>
 </dl><a NAME="CooperationClient.__readyForUse" ID="CooperationClient.__readyForUse"></a>
 <h4>CooperationClient.__readyForUse</h4>
-<b>__readyForUse</b>(<i></i>)
+<b>__readyForUse</b>(<i>connection</i>)
 <p>
         Private slot to handle a connection getting ready for use.
-</p><a NAME="CooperationClient.banKickUser" ID="CooperationClient.banKickUser"></a>
+</p><dl>
+<dt><i>connection</i> (Connection)</dt>
+<dd>
+connection that got ready for use
+</dd>
+</dl><a NAME="CooperationClient.banKickUser" ID="CooperationClient.banKickUser"></a>
 <h4>CooperationClient.banKickUser</h4>
 <b>banKickUser</b>(<i>nick</i>)
 <p>
--- a/Documentation/Source/eric6.E5Gui.E5PassivePopup.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.E5Gui.E5PassivePopup.html	Fri Mar 02 19:35:16 2018 +0100
@@ -80,12 +80,18 @@
 <td><a href="#E5PassivePopup.__positionSelf">__positionSelf</a></td>
 <td>Private method to position the popup.</td>
 </tr><tr>
+<td><a href="#E5PassivePopup.getCustomData">getCustomData</a></td>
+<td>Public method to get some custom data.</td>
+</tr><tr>
 <td><a href="#E5PassivePopup.hideEvent">hideEvent</a></td>
 <td>Protected method to handle the hide event.</td>
 </tr><tr>
 <td><a href="#E5PassivePopup.mouseReleaseEvent">mouseReleaseEvent</a></td>
 <td>Protected method to handle a mouse release event.</td>
 </tr><tr>
+<td><a href="#E5PassivePopup.setCustomData">setCustomData</a></td>
+<td>Public method to set some custom data.</td>
+</tr><tr>
 <td><a href="#E5PassivePopup.setTimeout">setTimeout</a></td>
 <td>Public method to set the delay for the popup is removed automatically.</td>
 </tr><tr>
@@ -162,7 +168,27 @@
 <b>__positionSelf</b>(<i></i>)
 <p>
         Private method to position the popup.
-</p><a NAME="E5PassivePopup.hideEvent" ID="E5PassivePopup.hideEvent"></a>
+</p><a NAME="E5PassivePopup.getCustomData" ID="E5PassivePopup.getCustomData"></a>
+<h4>E5PassivePopup.getCustomData</h4>
+<b>getCustomData</b>(<i>key</i>)
+<p>
+        Public method to get some custom data.
+</p><dl>
+<dt><i>key</i> (str)</dt>
+<dd>
+key for the custom data
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+stored data
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+any
+</dd>
+</dl><a NAME="E5PassivePopup.hideEvent" ID="E5PassivePopup.hideEvent"></a>
 <h4>E5PassivePopup.hideEvent</h4>
 <b>hideEvent</b>(<i>evt</i>)
 <p>
@@ -182,6 +208,19 @@
 <dd>
 reference to the mouse event (QMouseEvent)
 </dd>
+</dl><a NAME="E5PassivePopup.setCustomData" ID="E5PassivePopup.setCustomData"></a>
+<h4>E5PassivePopup.setCustomData</h4>
+<b>setCustomData</b>(<i>key, data</i>)
+<p>
+        Public method to set some custom data.
+</p><dl>
+<dt><i>key</i> (str)</dt>
+<dd>
+key for the custom data
+</dd><dt><i>data</i> (any)</dt>
+<dd>
+data to be stored
+</dd>
 </dl><a NAME="E5PassivePopup.setTimeout" ID="E5PassivePopup.setTimeout"></a>
 <h4>E5PassivePopup.setTimeout</h4>
 <b>setTimeout</b>(<i>delay</i>)
--- a/Documentation/Source/eric6.E5Gui.E5ToolButton.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.E5Gui.E5ToolButton.html	Fri Mar 02 19:35:16 2018 +0100
@@ -86,6 +86,9 @@
 <td><a href="#E5ToolButton.__showMenu">__showMenu</a></td>
 <td>Private slot to show the tool button menu.</td>
 </tr><tr>
+<td><a href="#E5ToolButton.badgeText">badgeText</a></td>
+<td>Public method to get the badge text.</td>
+</tr><tr>
 <td><a href="#E5ToolButton.contextMenuEvent">contextMenuEvent</a></td>
 <td>Protected method to handle context menu events.</td>
 </tr><tr>
@@ -101,6 +104,9 @@
 <td><a href="#E5ToolButton.mouseReleaseEvent">mouseReleaseEvent</a></td>
 <td>Protected method to handle mouse release events.</td>
 </tr><tr>
+<td><a href="#E5ToolButton.setBadgeText">setBadgeText</a></td>
+<td>Public method to set the badge text.</td>
+</tr><tr>
 <td><a href="#E5ToolButton.setMenu">setMenu</a></td>
 <td>Public method to set the tool button menu.</td>
 </tr><tr>
@@ -141,7 +147,22 @@
 <b>__showMenu</b>(<i></i>)
 <p>
         Private slot to show the tool button menu.
-</p><a NAME="E5ToolButton.contextMenuEvent" ID="E5ToolButton.contextMenuEvent"></a>
+</p><a NAME="E5ToolButton.badgeText" ID="E5ToolButton.badgeText"></a>
+<h4>E5ToolButton.badgeText</h4>
+<b>badgeText</b>(<i></i>)
+<p>
+        Public method to get the badge text.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+badge text
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl><a NAME="E5ToolButton.contextMenuEvent" ID="E5ToolButton.contextMenuEvent"></a>
 <h4>E5ToolButton.contextMenuEvent</h4>
 <b>contextMenuEvent</b>(<i>evt</i>)
 <p>
@@ -196,6 +217,16 @@
 <dd>
 reference to the mouse event
 </dd>
+</dl><a NAME="E5ToolButton.setBadgeText" ID="E5ToolButton.setBadgeText"></a>
+<h4>E5ToolButton.setBadgeText</h4>
+<b>setBadgeText</b>(<i>text</i>)
+<p>
+        Public method to set the badge text.
+</p><dl>
+<dt><i>text</i> (str)</dt>
+<dd>
+badge text to be set
+</dd>
 </dl><a NAME="E5ToolButton.setMenu" ID="E5ToolButton.setMenu"></a>
 <h4>E5ToolButton.setMenu</h4>
 <b>setMenu</b>(<i>menu</i>)
--- a/Documentation/Source/eric6.E5Network.E5NetworkMonitor.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.E5Network.E5NetworkMonitor.html	Fri Mar 02 19:35:16 2018 +0100
@@ -139,13 +139,16 @@
 </dd>
 </dl><a NAME="E5NetworkMonitor.__showHeaderDetails" ID="E5NetworkMonitor.__showHeaderDetails"></a>
 <h4>E5NetworkMonitor.__showHeaderDetails</h4>
-<b>__showHeaderDetails</b>(<i>index</i>)
+<b>__showHeaderDetails</b>(<i>index, headerList</i>)
 <p>
         Private slot to show a dialog with the header details.
 </p><dl>
-<dt><i>index</i></dt>
+<dt><i>index</i> (QModelIndex)</dt>
 <dd>
-index of the entry to show (QModelIndex)
+index of the entry to show
+</dd><dt><i>headerList</i> (QTableView)</dt>
+<dd>
+list requesting the header details
 </dd>
 </dl><a NAME="E5NetworkMonitor.closeEvent" ID="E5NetworkMonitor.closeEvent"></a>
 <h4>E5NetworkMonitor.closeEvent</h4>
@@ -265,10 +268,15 @@
 </dd>
 </dl><a NAME="E5RequestModel.__addReply" ID="E5RequestModel.__addReply"></a>
 <h4>E5RequestModel.__addReply</h4>
-<b>__addReply</b>(<i></i>)
+<b>__addReply</b>(<i>reply</i>)
 <p>
         Private slot to add the reply data to the model.
-</p><a NAME="E5RequestModel.__addRequest" ID="E5RequestModel.__addRequest"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply object
+</dd>
+</dl><a NAME="E5RequestModel.__addRequest" ID="E5RequestModel.__addRequest"></a>
 <h4>E5RequestModel.__addRequest</h4>
 <b>__addRequest</b>(<i>req</i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.AdBlock.AdBlockIcon.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.AdBlock.AdBlockIcon.html	Fri Mar 02 19:35:16 2018 +0100
@@ -104,20 +104,25 @@
 </dd>
 </dl><a NAME="AdBlockIcon.__createMenu" ID="AdBlockIcon.__createMenu"></a>
 <h4>AdBlockIcon.__createMenu</h4>
-<b>__createMenu</b>(<i>menu=None</i>)
+<b>__createMenu</b>(<i>menu</i>)
 <p>
         Private slot to create the context menu.
 </p><dl>
-<dt><i>menu</i></dt>
+<dt><i>menu</i> (QMenu)</dt>
 <dd>
-parent menu (QMenu)
+parent menu
 </dd>
 </dl><a NAME="AdBlockIcon.__enableAdBlock" ID="AdBlockIcon.__enableAdBlock"></a>
 <h4>AdBlockIcon.__enableAdBlock</h4>
-<b>__enableAdBlock</b>(<i></i>)
+<b>__enableAdBlock</b>(<i>act</i>)
 <p>
         Private slot to enable or disable AdBlock.
-</p><a NAME="AdBlockIcon.__isCurrentHostExcepted" ID="AdBlockIcon.__isCurrentHostExcepted"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action
+</dd>
+</dl><a NAME="AdBlockIcon.__isCurrentHostExcepted" ID="AdBlockIcon.__isCurrentHostExcepted"></a>
 <h4>AdBlockIcon.__isCurrentHostExcepted</h4>
 <b>__isCurrentHostExcepted</b>(<i></i>)
 <p>
@@ -130,11 +135,16 @@
 </dd>
 </dl><a NAME="AdBlockIcon.__setException" ID="AdBlockIcon.__setException"></a>
 <h4>AdBlockIcon.__setException</h4>
-<b>__setException</b>(<i></i>)
+<b>__setException</b>(<i>act</i>)
 <p>
         Private slot to add or remove the current host from the list of
         exceptions.
-</p><a NAME="AdBlockIcon.__showMenu" ID="AdBlockIcon.__showMenu"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+referenced to the action
+</dd>
+</dl><a NAME="AdBlockIcon.__showMenu" ID="AdBlockIcon.__showMenu"></a>
 <h4>AdBlockIcon.__showMenu</h4>
 <b>__showMenu</b>(<i>pos</i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.AdBlock.AdBlockManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.AdBlock.AdBlockManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -416,10 +416,15 @@
 </dd>
 </dl><a NAME="AdBlockManager.showRule" ID="AdBlockManager.showRule"></a>
 <h4>AdBlockManager.showRule</h4>
-<b>showRule</b>(<i></i>)
+<b>showRule</b>(<i>act</i>)
 <p>
         Public slot to show an AdBlock rule.
-</p><a NAME="AdBlockManager.subscription" ID="AdBlockManager.subscription"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action
+</dd>
+</dl><a NAME="AdBlockManager.subscription" ID="AdBlockManager.subscription"></a>
 <h4>AdBlockManager.subscription</h4>
 <b>subscription</b>(<i>location</i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.AdBlock.AdBlockSubscription.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.AdBlock.AdBlockSubscription.html	Fri Mar 02 19:35:16 2018 +0100
@@ -211,10 +211,15 @@
         Private method to populate the various rule caches.
 </p><a NAME="AdBlockSubscription.__rulesDownloaded" ID="AdBlockSubscription.__rulesDownloaded"></a>
 <h4>AdBlockSubscription.__rulesDownloaded</h4>
-<b>__rulesDownloaded</b>(<i></i>)
+<b>__rulesDownloaded</b>(<i>reply</i>)
 <p>
         Private slot to deal with the downloaded rules.
-</p><a NAME="AdBlockSubscription.__validateCheckSum" ID="AdBlockSubscription.__validateCheckSum"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="AdBlockSubscription.__validateCheckSum" ID="AdBlockSubscription.__validateCheckSum"></a>
 <h4>AdBlockSubscription.__validateCheckSum</h4>
 <b>__validateCheckSum</b>(<i>fileName</i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.Bookmarks.BookmarksMenu.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.Bookmarks.BookmarksMenu.html	Fri Mar 02 19:35:16 2018 +0100
@@ -138,25 +138,45 @@
 </dd>
 </dl><a NAME="BookmarksMenu.__edit" ID="BookmarksMenu.__edit"></a>
 <h4>BookmarksMenu.__edit</h4>
-<b>__edit</b>(<i></i>)
+<b>__edit</b>(<i>act</i>)
 <p>
         Private slot to edit a bookmarks properties.
-</p><a NAME="BookmarksMenu.__openBookmark" ID="BookmarksMenu.__openBookmark"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksMenu.__openBookmark" ID="BookmarksMenu.__openBookmark"></a>
 <h4>BookmarksMenu.__openBookmark</h4>
-<b>__openBookmark</b>(<i></i>)
+<b>__openBookmark</b>(<i>act</i>)
 <p>
         Private slot to open a bookmark in the current browser tab.
-</p><a NAME="BookmarksMenu.__openBookmarkInNewTab" ID="BookmarksMenu.__openBookmarkInNewTab"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksMenu.__openBookmarkInNewTab" ID="BookmarksMenu.__openBookmarkInNewTab"></a>
 <h4>BookmarksMenu.__openBookmarkInNewTab</h4>
-<b>__openBookmarkInNewTab</b>(<i></i>)
+<b>__openBookmarkInNewTab</b>(<i>act</i>)
 <p>
         Private slot to open a bookmark in a new browser tab.
-</p><a NAME="BookmarksMenu.__removeBookmark" ID="BookmarksMenu.__removeBookmark"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksMenu.__removeBookmark" ID="BookmarksMenu.__removeBookmark"></a>
 <h4>BookmarksMenu.__removeBookmark</h4>
-<b>__removeBookmark</b>(<i></i>)
+<b>__removeBookmark</b>(<i>act</i>)
 <p>
         Private slot to remove a bookmark.
-</p><a NAME="BookmarksMenu.createBaseMenu" ID="BookmarksMenu.createBaseMenu"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksMenu.createBaseMenu" ID="BookmarksMenu.createBaseMenu"></a>
 <h4>BookmarksMenu.createBaseMenu</h4>
 <b>createBaseMenu</b>(<i></i>)
 <p>
@@ -168,10 +188,15 @@
 </dd>
 </dl><a NAME="BookmarksMenu.openAll" ID="BookmarksMenu.openAll"></a>
 <h4>BookmarksMenu.openAll</h4>
-<b>openAll</b>(<i></i>)
+<b>openAll</b>(<i>act</i>)
 <p>
         Public slot to open all the menu's items.
-</p><a NAME="BookmarksMenu.postPopulated" ID="BookmarksMenu.postPopulated"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action object
+</dd>
+</dl><a NAME="BookmarksMenu.postPopulated" ID="BookmarksMenu.postPopulated"></a>
 <h4>BookmarksMenu.postPopulated</h4>
 <b>postPopulated</b>(<i></i>)
 <p>
@@ -236,10 +261,15 @@
 </dd>
 </dl><a NAME="BookmarksMenuBarMenu.__defaultBookmarkTriggered" ID="BookmarksMenuBarMenu.__defaultBookmarkTriggered"></a>
 <h4>BookmarksMenuBarMenu.__defaultBookmarkTriggered</h4>
-<b>__defaultBookmarkTriggered</b>(<i></i>)
+<b>__defaultBookmarkTriggered</b>(<i>act</i>)
 <p>
         Private slot handling the default bookmark menu entries.
-</p><a NAME="BookmarksMenuBarMenu.postPopulated" ID="BookmarksMenuBarMenu.postPopulated"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action object
+</dd>
+</dl><a NAME="BookmarksMenuBarMenu.postPopulated" ID="BookmarksMenuBarMenu.postPopulated"></a>
 <h4>BookmarksMenuBarMenu.postPopulated</h4>
 <b>postPopulated</b>(<i></i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.Bookmarks.BookmarksToolBar.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.Bookmarks.BookmarksToolBar.html	Fri Mar 02 19:35:16 2018 +0100
@@ -90,9 +90,6 @@
 <td><a href="#BookmarksToolBar.__openBookmarkInNewTab">__openBookmarkInNewTab</a></td>
 <td>Private slot to open a bookmark in a new browser tab.</td>
 </tr><tr>
-<td><a href="#BookmarksToolBar.__openToolBarBookmark">__openToolBarBookmark</a></td>
-<td>Private slot to open a bookmark in the current browser tab.</td>
-</tr><tr>
 <td><a href="#BookmarksToolBar.__rebuild">__rebuild</a></td>
 <td>Private slot to rebuild the toolbar.</td>
 </tr><tr>
@@ -145,10 +142,15 @@
 </dd>
 </dl><a NAME="BookmarksToolBar.__edit" ID="BookmarksToolBar.__edit"></a>
 <h4>BookmarksToolBar.__edit</h4>
-<b>__edit</b>(<i></i>)
+<b>__edit</b>(<i>act</i>)
 <p>
         Private slot to edit a bookmarks properties.
-</p><a NAME="BookmarksToolBar.__newBookmark" ID="BookmarksToolBar.__newBookmark"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksToolBar.__newBookmark" ID="BookmarksToolBar.__newBookmark"></a>
 <h4>BookmarksToolBar.__newBookmark</h4>
 <b>__newBookmark</b>(<i></i>)
 <p>
@@ -160,30 +162,40 @@
         Private slot to add a new bookmarks folder.
 </p><a NAME="BookmarksToolBar.__openBookmark" ID="BookmarksToolBar.__openBookmark"></a>
 <h4>BookmarksToolBar.__openBookmark</h4>
-<b>__openBookmark</b>(<i></i>)
+<b>__openBookmark</b>(<i>act</i>)
 <p>
         Private slot to open a bookmark in the current browser tab.
-</p><a NAME="BookmarksToolBar.__openBookmarkInNewTab" ID="BookmarksToolBar.__openBookmarkInNewTab"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksToolBar.__openBookmarkInNewTab" ID="BookmarksToolBar.__openBookmarkInNewTab"></a>
 <h4>BookmarksToolBar.__openBookmarkInNewTab</h4>
-<b>__openBookmarkInNewTab</b>(<i></i>)
+<b>__openBookmarkInNewTab</b>(<i>act</i>)
 <p>
         Private slot to open a bookmark in a new browser tab.
-</p><a NAME="BookmarksToolBar.__openToolBarBookmark" ID="BookmarksToolBar.__openToolBarBookmark"></a>
-<h4>BookmarksToolBar.__openToolBarBookmark</h4>
-<b>__openToolBarBookmark</b>(<i></i>)
-<p>
-        Private slot to open a bookmark in the current browser tab.
-</p><a NAME="BookmarksToolBar.__rebuild" ID="BookmarksToolBar.__rebuild"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksToolBar.__rebuild" ID="BookmarksToolBar.__rebuild"></a>
 <h4>BookmarksToolBar.__rebuild</h4>
 <b>__rebuild</b>(<i></i>)
 <p>
         Private slot to rebuild the toolbar.
 </p><a NAME="BookmarksToolBar.__removeBookmark" ID="BookmarksToolBar.__removeBookmark"></a>
 <h4>BookmarksToolBar.__removeBookmark</h4>
-<b>__removeBookmark</b>(<i></i>)
+<b>__removeBookmark</b>(<i>act</i>)
 <p>
         Private slot to remove a bookmark.
-</p><a NAME="BookmarksToolBar._createMenu" ID="BookmarksToolBar._createMenu"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksToolBar._createMenu" ID="BookmarksToolBar._createMenu"></a>
 <h4>BookmarksToolBar._createMenu</h4>
 <b>_createMenu</b>(<i></i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.Download.DownloadManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.Download.DownloadManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -263,13 +263,13 @@
         Private method to update the count label.
 </p><a NAME="DownloadManager.__updateRow" ID="DownloadManager.__updateRow"></a>
 <h4>DownloadManager.__updateRow</h4>
-<b>__updateRow</b>(<i>itm=None</i>)
+<b>__updateRow</b>(<i>itm</i>)
 <p>
         Private slot to update a download item.
 </p><dl>
-<dt><i>itm</i></dt>
+<dt><i>itm</i> (DownloadItem)</dt>
 <dd>
-reference to the download item (DownloadItem)
+reference to the download item
 </dd>
 </dl><a NAME="DownloadManager.activeDownloads" ID="DownloadManager.activeDownloads"></a>
 <h4>DownloadManager.activeDownloads</h4>
--- a/Documentation/Source/eric6.Helpviewer.Feeds.FeedsDialog.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.Feeds.FeedsDialog.html	Fri Mar 02 19:35:16 2018 +0100
@@ -87,10 +87,15 @@
 </dd>
 </dl><a NAME="FeedsDialog.__addFeed" ID="FeedsDialog.__addFeed"></a>
 <h4>FeedsDialog.__addFeed</h4>
-<b>__addFeed</b>(<i></i>)
+<b>__addFeed</b>(<i>button</i>)
 <p>
         Private slot to add a RSS feed.
-</p>
+</p><dl>
+<dt><i>button</i> (QPushButton)</dt>
+<dd>
+reference to the feed button
+</dd>
+</dl>
 <div align="right"><a href="#top">Up</a></div>
 <hr />
 </body></html>
\ No newline at end of file
--- a/Documentation/Source/eric6.Helpviewer.Feeds.FeedsManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.Feeds.FeedsManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -177,10 +177,15 @@
         Private slot to disable/enable various buttons.
 </p><a NAME="FeedsManager.__feedLoaded" ID="FeedsManager.__feedLoaded"></a>
 <h4>FeedsManager.__feedLoaded</h4>
-<b>__feedLoaded</b>(<i></i>)
+<b>__feedLoaded</b>(<i>reply</i>)
 <p>
         Private slot to extract the loaded feed data.
-</p><a NAME="FeedsManager.__itemActivated" ID="FeedsManager.__itemActivated"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="FeedsManager.__itemActivated" ID="FeedsManager.__itemActivated"></a>
 <h4>FeedsManager.__itemActivated</h4>
 <b>__itemActivated</b>(<i>itm, column</i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.GreaseMonkey.GreaseMonkeyManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.GreaseMonkey.GreaseMonkeyManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -137,10 +137,15 @@
 </dd>
 </dl><a NAME="GreaseMonkeyManager.__downloaderFinished" ID="GreaseMonkeyManager.__downloaderFinished"></a>
 <h4>GreaseMonkeyManager.__downloaderFinished</h4>
-<b>__downloaderFinished</b>(<i></i>)
+<b>__downloaderFinished</b>(<i>downloader</i>)
 <p>
         Private slot to handle the completion of a script download.
-</p><a NAME="GreaseMonkeyManager.__load" ID="GreaseMonkeyManager.__load"></a>
+</p><dl>
+<dt><i>downloader</i> (GreaseMonkeyDownloader)</dt>
+<dd>
+reference to the downloader object
+</dd>
+</dl><a NAME="GreaseMonkeyManager.__load" ID="GreaseMonkeyManager.__load"></a>
 <h4>GreaseMonkeyManager.__load</h4>
 <b>__load</b>(<i></i>)
 <p>
@@ -265,10 +270,15 @@
 </dd>
 </dl><a NAME="GreaseMonkeyManager.pageLoadStarted" ID="GreaseMonkeyManager.pageLoadStarted"></a>
 <h4>GreaseMonkeyManager.pageLoadStarted</h4>
-<b>pageLoadStarted</b>(<i></i>)
+<b>pageLoadStarted</b>(<i>frame</i>)
 <p>
         Public slot to handle the start of loading a page.
-</p><a NAME="GreaseMonkeyManager.removeScript" ID="GreaseMonkeyManager.removeScript"></a>
+</p><dl>
+<dt><i>frame</i> (QWebFrame)</dt>
+<dd>
+reference to the main frame of the loading page
+</dd>
+</dl><a NAME="GreaseMonkeyManager.removeScript" ID="GreaseMonkeyManager.removeScript"></a>
 <h4>GreaseMonkeyManager.removeScript</h4>
 <b>removeScript</b>(<i>script</i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.HelpBrowserWV.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.HelpBrowserWV.html	Fri Mar 02 19:35:16 2018 +0100
@@ -403,20 +403,28 @@
         Private slot to switch the display of access keys.
 </p><a NAME="HelpBrowser.__addExternalBinding" ID="HelpBrowser.__addExternalBinding"></a>
 <h4>HelpBrowser.__addExternalBinding</h4>
-<b>__addExternalBinding</b>(<i>frame=None</i>)
+<b>__addExternalBinding</b>(<i>frame, frameCleared</i>)
 <p>
         Private slot to add javascript bindings for adding search providers.
 </p><dl>
-<dt><i>frame</i></dt>
+<dt><i>frame</i> (QWebFrame)</dt>
 <dd>
-reference to the web frame (QWebFrame)
+reference to the web frame
+</dd><dt><i>frameCleared</i> (bool)</dt>
+<dd>
+flag indicate, that the frame was cleared
 </dd>
 </dl><a NAME="HelpBrowser.__addSearchEngine" ID="HelpBrowser.__addSearchEngine"></a>
 <h4>HelpBrowser.__addSearchEngine</h4>
-<b>__addSearchEngine</b>(<i></i>)
+<b>__addSearchEngine</b>(<i>act</i>)
 <p>
         Private slot to add a new search engine.
-</p><a NAME="HelpBrowser.__addSpeedDial" ID="HelpBrowser.__addSpeedDial"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="HelpBrowser.__addSpeedDial" ID="HelpBrowser.__addSpeedDial"></a>
 <h4>HelpBrowser.__addSpeedDial</h4>
 <b>__addSpeedDial</b>(<i></i>)
 <p>
@@ -428,15 +436,25 @@
         Private slot to apply the current zoom factor.
 </p><a NAME="HelpBrowser.__blockImage" ID="HelpBrowser.__blockImage"></a>
 <h4>HelpBrowser.__blockImage</h4>
-<b>__blockImage</b>(<i></i>)
+<b>__blockImage</b>(<i>act</i>)
 <p>
         Private slot to add a block rule for an image URL.
-</p><a NAME="HelpBrowser.__bookmarkLink" ID="HelpBrowser.__bookmarkLink"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="HelpBrowser.__bookmarkLink" ID="HelpBrowser.__bookmarkLink"></a>
 <h4>HelpBrowser.__bookmarkLink</h4>
-<b>__bookmarkLink</b>(<i></i>)
+<b>__bookmarkLink</b>(<i>act</i>)
 <p>
         Private slot to bookmark a link via the context menu.
-</p><a NAME="HelpBrowser.__checkForAccessKey" ID="HelpBrowser.__checkForAccessKey"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="HelpBrowser.__checkForAccessKey" ID="HelpBrowser.__checkForAccessKey"></a>
 <h4>HelpBrowser.__checkForAccessKey</h4>
 <b>__checkForAccessKey</b>(<i>evt</i>)
 <p>
@@ -469,10 +487,15 @@
         Private slot to copy a link to the clipboard.
 </p><a NAME="HelpBrowser.__copyLocation" ID="HelpBrowser.__copyLocation"></a>
 <h4>HelpBrowser.__copyLocation</h4>
-<b>__copyLocation</b>(<i></i>)
+<b>__copyLocation</b>(<i>act</i>)
 <p>
         Private slot to copy an image or media location to the clipboard.
-</p><a NAME="HelpBrowser.__currentEngineChanged" ID="HelpBrowser.__currentEngineChanged"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="HelpBrowser.__currentEngineChanged" ID="HelpBrowser.__currentEngineChanged"></a>
 <h4>HelpBrowser.__currentEngineChanged</h4>
 <b>__currentEngineChanged</b>(<i></i>)
 <p>
@@ -517,10 +540,15 @@
         Private slot to download a link and save it to disk.
 </p><a NAME="HelpBrowser.__downloadMedia" ID="HelpBrowser.__downloadMedia"></a>
 <h4>HelpBrowser.__downloadMedia</h4>
-<b>__downloadMedia</b>(<i></i>)
+<b>__downloadMedia</b>(<i>act</i>)
 <p>
         Private slot to download a media and save it to disk.
-</p><a NAME="HelpBrowser.__downloadRequested" ID="HelpBrowser.__downloadRequested"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="HelpBrowser.__downloadRequested" ID="HelpBrowser.__downloadRequested"></a>
 <h4>HelpBrowser.__downloadRequested</h4>
 <b>__downloadRequested</b>(<i>request</i>)
 <p>
@@ -670,11 +698,16 @@
         Private slot to (un)mute the selected media.
 </p><a NAME="HelpBrowser.__openLinkInNewTab" ID="HelpBrowser.__openLinkInNewTab"></a>
 <h4>HelpBrowser.__openLinkInNewTab</h4>
-<b>__openLinkInNewTab</b>(<i></i>)
+<b>__openLinkInNewTab</b>(<i>act</i>)
 <p>
         Private method called by the context menu to open a link in a new
         window.
-</p><a NAME="HelpBrowser.__pauseMedia" ID="HelpBrowser.__pauseMedia"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="HelpBrowser.__pauseMedia" ID="HelpBrowser.__pauseMedia"></a>
 <h4>HelpBrowser.__pauseMedia</h4>
 <b>__pauseMedia</b>(<i></i>)
 <p>
@@ -716,10 +749,15 @@
 </dd>
 </dl><a NAME="HelpBrowser.__sendLink" ID="HelpBrowser.__sendLink"></a>
 <h4>HelpBrowser.__sendLink</h4>
-<b>__sendLink</b>(<i></i>)
+<b>__sendLink</b>(<i>act</i>)
 <p>
         Private slot to send a link via email.
-</p><a NAME="HelpBrowser.__showAccessKeys" ID="HelpBrowser.__showAccessKeys"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="HelpBrowser.__showAccessKeys" ID="HelpBrowser.__showAccessKeys"></a>
 <h4>HelpBrowser.__showAccessKeys</h4>
 <b>__showAccessKeys</b>(<i></i>)
 <p>
@@ -769,10 +807,15 @@
 </dd>
 </dl><a NAME="HelpBrowser.__virusTotal" ID="HelpBrowser.__virusTotal"></a>
 <h4>HelpBrowser.__virusTotal</h4>
-<b>__virusTotal</b>(<i></i>)
+<b>__virusTotal</b>(<i>act</i>)
 <p>
         Private slot to scan the selected URL with VirusTotal.
-</p><a NAME="HelpBrowser.__webInspector" ID="HelpBrowser.__webInspector"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="HelpBrowser.__webInspector" ID="HelpBrowser.__webInspector"></a>
 <h4>HelpBrowser.__webInspector</h4>
 <b>__webInspector</b>(<i></i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.HelpTabBar.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.HelpTabBar.html	Fri Mar 02 19:35:16 2018 +0100
@@ -60,6 +60,9 @@
 <td><a href="#HelpTabBar.__init__">HelpTabBar</a></td>
 <td>Constructor</td>
 </tr><tr>
+<td><a href="#HelpTabBar.__hidePreview">__hidePreview</a></td>
+<td>Private method to hide the preview.</td>
+</tr><tr>
 <td><a href="#HelpTabBar.__showTabPreview">__showTabPreview</a></td>
 <td>Private slot to show the tab preview.</td>
 </tr><tr>
@@ -93,12 +96,22 @@
 <dd>
 reference to the parent widget (HelpTabWidget)
 </dd>
-</dl><a NAME="HelpTabBar.__showTabPreview" ID="HelpTabBar.__showTabPreview"></a>
+</dl><a NAME="HelpTabBar.__hidePreview" ID="HelpTabBar.__hidePreview"></a>
+<h4>HelpTabBar.__hidePreview</h4>
+<b>__hidePreview</b>(<i></i>)
+<p>
+        Private method to hide the preview.
+</p><a NAME="HelpTabBar.__showTabPreview" ID="HelpTabBar.__showTabPreview"></a>
 <h4>HelpTabBar.__showTabPreview</h4>
-<b>__showTabPreview</b>(<i></i>)
+<b>__showTabPreview</b>(<i>index</i>)
 <p>
         Private slot to show the tab preview.
-</p><a NAME="HelpTabBar.event" ID="HelpTabBar.event"></a>
+</p><dl>
+<dt><i>index</i> (int)</dt>
+<dd>
+index of tab to show a preview for
+</dd>
+</dl><a NAME="HelpTabBar.event" ID="HelpTabBar.event"></a>
 <h4>HelpTabBar.event</h4>
 <b>event</b>(<i>evt</i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.HelpTabWidget.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.HelpTabWidget.html	Fri Mar 02 19:35:16 2018 +0100
@@ -313,35 +313,53 @@
 </dd>
 </dl><a NAME="HelpTabWidget.__iconChanged" ID="HelpTabWidget.__iconChanged"></a>
 <h4>HelpTabWidget.__iconChanged</h4>
-<b>__iconChanged</b>(<i></i>)
+<b>__iconChanged</b>(<i>browser</i>)
 <p>
         Private slot to handle the icon change.
-</p><a NAME="HelpTabWidget.__initTabContextMenu" ID="HelpTabWidget.__initTabContextMenu"></a>
+</p><dl>
+<dt><i>browser</i> (HelpBrowser)</dt>
+<dd>
+reference to the web browser
+</dd>
+</dl><a NAME="HelpTabWidget.__initTabContextMenu" ID="HelpTabWidget.__initTabContextMenu"></a>
 <h4>HelpTabWidget.__initTabContextMenu</h4>
 <b>__initTabContextMenu</b>(<i></i>)
 <p>
         Private method to create the tab context menu.
 </p><a NAME="HelpTabWidget.__lineEditReturnPressed" ID="HelpTabWidget.__lineEditReturnPressed"></a>
 <h4>HelpTabWidget.__lineEditReturnPressed</h4>
-<b>__lineEditReturnPressed</b>(<i></i>)
+<b>__lineEditReturnPressed</b>(<i>edit</i>)
 <p>
         Private slot to handle the entering of an URL.
-</p><a NAME="HelpTabWidget.__loadFinished" ID="HelpTabWidget.__loadFinished"></a>
+</p><dl>
+<dt><i>edit</i> (UrlBar)</dt>
+<dd>
+reference to the line edit
+</dd>
+</dl><a NAME="HelpTabWidget.__loadFinished" ID="HelpTabWidget.__loadFinished"></a>
 <h4>HelpTabWidget.__loadFinished</h4>
-<b>__loadFinished</b>(<i>ok</i>)
+<b>__loadFinished</b>(<i>ok, browser</i>)
 <p>
         Private method to handle the loadFinished signal.
 </p><dl>
-<dt><i>ok</i></dt>
+<dt><i>ok</i> (bool)</dt>
 <dd>
-flag indicating the result (boolean)
+flag indicating the result
+</dd><dt><i>browser</i> (HelpBrowser)</dt>
+<dd>
+reference to the web browser
 </dd>
 </dl><a NAME="HelpTabWidget.__loadStarted" ID="HelpTabWidget.__loadStarted"></a>
 <h4>HelpTabWidget.__loadStarted</h4>
-<b>__loadStarted</b>(<i></i>)
+<b>__loadStarted</b>(<i>browser</i>)
 <p>
         Private method to handle the loadStarted signal.
-</p><a NAME="HelpTabWidget.__navigationMenuTriggered" ID="HelpTabWidget.__navigationMenuTriggered"></a>
+</p><dl>
+<dt><i>browser</i> (HelpBrowser)</dt>
+<dd>
+reference to the web browser
+</dd>
+</dl><a NAME="HelpTabWidget.__navigationMenuTriggered" ID="HelpTabWidget.__navigationMenuTriggered"></a>
 <h4>HelpTabWidget.__navigationMenuTriggered</h4>
 <b>__navigationMenuTriggered</b>(<i>act</i>)
 <p>
@@ -416,13 +434,16 @@
         Private slot to show the navigation button menu.
 </p><a NAME="HelpTabWidget.__sourceChanged" ID="HelpTabWidget.__sourceChanged"></a>
 <h4>HelpTabWidget.__sourceChanged</h4>
-<b>__sourceChanged</b>(<i>url</i>)
+<b>__sourceChanged</b>(<i>url, browser</i>)
 <p>
         Private slot to handle a change of a browsers source.
 </p><dl>
-<dt><i>url</i></dt>
+<dt><i>url</i> (QUrl)</dt>
 <dd>
-URL of the new site (QUrl)
+URL of the new site
+</dd><dt><i>browser</i> (HelpBrowser)</dt>
+<dd>
+reference to the web browser
 </dd>
 </dl><a NAME="HelpTabWidget.__tabContextMenuClone" ID="HelpTabWidget.__tabContextMenuClone"></a>
 <h4>HelpTabWidget.__tabContextMenuClone</h4>
@@ -466,20 +487,28 @@
         Private method to show a print preview of the selected tab.
 </p><a NAME="HelpTabWidget.__titleChanged" ID="HelpTabWidget.__titleChanged"></a>
 <h4>HelpTabWidget.__titleChanged</h4>
-<b>__titleChanged</b>(<i>title</i>)
+<b>__titleChanged</b>(<i>title, browser</i>)
 <p>
         Private slot to handle a change of a browsers title.
 </p><dl>
-<dt><i>title</i></dt>
+<dt><i>title</i> (str)</dt>
 <dd>
-new title (string)
+new title
+</dd><dt><i>browser</i> (HelpBrowser)</dt>
+<dd>
+reference to the web browser
 </dd>
 </dl><a NAME="HelpTabWidget.__windowCloseRequested" ID="HelpTabWidget.__windowCloseRequested"></a>
 <h4>HelpTabWidget.__windowCloseRequested</h4>
-<b>__windowCloseRequested</b>(<i></i>)
+<b>__windowCloseRequested</b>(<i>page</i>)
 <p>
         Private slot to handle the windowCloseRequested signal of a browser.
-</p><a NAME="HelpTabWidget.browserAt" ID="HelpTabWidget.browserAt"></a>
+</p><dl>
+<dt><i>page</i> (HelpWebPage)</dt>
+<dd>
+reference to the web page
+</dd>
+</dl><a NAME="HelpTabWidget.browserAt" ID="HelpTabWidget.browserAt"></a>
 <h4>HelpTabWidget.browserAt</h4>
 <b>browserAt</b>(<i>index</i>)
 <p>
@@ -661,10 +690,15 @@
         Public slot to restore all closed tabs.
 </p><a NAME="HelpTabWidget.restoreClosedTab" ID="HelpTabWidget.restoreClosedTab"></a>
 <h4>HelpTabWidget.restoreClosedTab</h4>
-<b>restoreClosedTab</b>(<i></i>)
+<b>restoreClosedTab</b>(<i>act</i>)
 <p>
         Public slot to restore the most recently closed tab.
-</p><a NAME="HelpTabWidget.shallShutDown" ID="HelpTabWidget.shallShutDown"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="HelpTabWidget.shallShutDown" ID="HelpTabWidget.shallShutDown"></a>
 <h4>HelpTabWidget.shallShutDown</h4>
 <b>shallShutDown</b>(<i></i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.HelpWebSearchWidget.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.HelpWebSearchWidget.html	Fri Mar 02 19:35:16 2018 +0100
@@ -140,15 +140,25 @@
 </dd>
 </dl><a NAME="HelpWebSearchWidget.__addEngineFromUrl" ID="HelpWebSearchWidget.__addEngineFromUrl"></a>
 <h4>HelpWebSearchWidget.__addEngineFromUrl</h4>
-<b>__addEngineFromUrl</b>(<i></i>)
+<b>__addEngineFromUrl</b>(<i>action</i>)
 <p>
         Private slot to add a search engine given its URL.
-</p><a NAME="HelpWebSearchWidget.__changeCurrentEngine" ID="HelpWebSearchWidget.__changeCurrentEngine"></a>
+</p><dl>
+<dt><i>action</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="HelpWebSearchWidget.__changeCurrentEngine" ID="HelpWebSearchWidget.__changeCurrentEngine"></a>
 <h4>HelpWebSearchWidget.__changeCurrentEngine</h4>
-<b>__changeCurrentEngine</b>(<i></i>)
+<b>__changeCurrentEngine</b>(<i>action</i>)
 <p>
         Private slot to handle the selection of a search engine.
-</p><a NAME="HelpWebSearchWidget.__completerActivated" ID="HelpWebSearchWidget.__completerActivated"></a>
+</p><dl>
+<dt><i>action</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="HelpWebSearchWidget.__completerActivated" ID="HelpWebSearchWidget.__completerActivated"></a>
 <h4>HelpWebSearchWidget.__completerActivated</h4>
 <b>__completerActivated</b>(<i>index</i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.HelpWindow.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.HelpWindow.html	Fri Mar 02 19:35:16 2018 +0100
@@ -1009,10 +1009,15 @@
 </dd>
 </dl><a NAME="HelpWindow.__feedsManagerClosed" ID="HelpWindow.__feedsManagerClosed"></a>
 <h4>HelpWindow.__feedsManagerClosed</h4>
-<b>__feedsManagerClosed</b>(<i></i>)
+<b>__feedsManagerClosed</b>(<i>feedsManager</i>)
 <p>
         Private slot to handle closing the feeds manager dialog.
-</p><a NAME="HelpWindow.__filterQtHelpDocumentation" ID="HelpWindow.__filterQtHelpDocumentation"></a>
+</p><dl>
+<dt><i>feedsManager</i> (FeedsManager)</dt>
+<dd>
+reference to the feeds manager object
+</dd>
+</dl><a NAME="HelpWindow.__filterQtHelpDocumentation" ID="HelpWindow.__filterQtHelpDocumentation"></a>
 <h4>HelpWindow.__filterQtHelpDocumentation</h4>
 <b>__filterQtHelpDocumentation</b>(<i>customFilter</i>)
 <p>
@@ -1659,16 +1664,20 @@
 </dd>
 </dl><a NAME="HelpWindow.masterPasswordChanged" ID="HelpWindow.masterPasswordChanged"></a>
 <h4>HelpWindow.masterPasswordChanged</h4>
-<b>masterPasswordChanged</b>(<i>oldPassword, newPassword</i>)
+<b>masterPasswordChanged</b>(<i>oldPassword, newPassword, local=False</i>)
 <p>
         Public slot to handle the change of the master password.
 </p><dl>
-<dt><i>oldPassword</i></dt>
+<dt><i>oldPassword</i> (str)</dt>
+<dd>
+current master password
+</dd><dt><i>newPassword</i> (str)</dt>
 <dd>
-current master password (string)
-</dd><dt><i>newPassword</i></dt>
+new master password
+</dd><dt><i>local</i> (bool)</dt>
 <dd>
-new master password (string)
+flag indicating being called from the local configuration
+            dialog
 </dd>
 </dl><a NAME="HelpWindow.mousePressEvent" ID="HelpWindow.mousePressEvent"></a>
 <h4>HelpWindow.mousePressEvent</h4>
--- a/Documentation/Source/eric6.Helpviewer.OpenSearch.OpenSearchEngine.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.OpenSearch.OpenSearchEngine.html	Fri Mar 02 19:35:16 2018 +0100
@@ -222,10 +222,15 @@
 </dd>
 </dl><a NAME="OpenSearchEngine.__imageObtained" ID="OpenSearchEngine.__imageObtained"></a>
 <h4>OpenSearchEngine.__imageObtained</h4>
-<b>__imageObtained</b>(<i></i>)
+<b>__imageObtained</b>(<i>reply</i>)
 <p>
         Private slot to receive the image of the engine.
-</p><a NAME="OpenSearchEngine.__lt__" ID="OpenSearchEngine.__lt__"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="OpenSearchEngine.__lt__" ID="OpenSearchEngine.__lt__"></a>
 <h4>OpenSearchEngine.__lt__</h4>
 <b>__lt__</b>(<i>other</i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.OpenSearch.OpenSearchManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.OpenSearch.OpenSearchManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -236,10 +236,15 @@
 </dd>
 </dl><a NAME="OpenSearchManager.__engineFromUrlAvailable" ID="OpenSearchManager.__engineFromUrlAvailable"></a>
 <h4>OpenSearchManager.__engineFromUrlAvailable</h4>
-<b>__engineFromUrlAvailable</b>(<i></i>)
+<b>__engineFromUrlAvailable</b>(<i>reply</i>)
 <p>
         Private slot to add a search engine from the net.
-</p><a NAME="OpenSearchManager.addEngine" ID="OpenSearchManager.addEngine"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="OpenSearchManager.addEngine" ID="OpenSearchManager.addEngine"></a>
 <h4>OpenSearchManager.addEngine</h4>
 <b>addEngine</b>(<i>engine</i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.PersonalInformationManager.PersonalInformationManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.PersonalInformationManager.PersonalInformationManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -103,10 +103,15 @@
 </dd>
 </dl><a NAME="PersonalInformationManager.__insertData" ID="PersonalInformationManager.__insertData"></a>
 <h4>PersonalInformationManager.__insertData</h4>
-<b>__insertData</b>(<i></i>)
+<b>__insertData</b>(<i>act</i>)
 <p>
         Private slot to insert the selected personal information.
-</p><a NAME="PersonalInformationManager.__loadSettings" ID="PersonalInformationManager.__loadSettings"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="PersonalInformationManager.__loadSettings" ID="PersonalInformationManager.__loadSettings"></a>
 <h4>PersonalInformationManager.__loadSettings</h4>
 <b>__loadSettings</b>(<i></i>)
 <p>
@@ -128,13 +133,16 @@
 </dd>
 </dl><a NAME="PersonalInformationManager.__pageLoadFinished" ID="PersonalInformationManager.__pageLoadFinished"></a>
 <h4>PersonalInformationManager.__pageLoadFinished</h4>
-<b>__pageLoadFinished</b>(<i>ok</i>)
+<b>__pageLoadFinished</b>(<i>ok, page</i>)
 <p>
         Private slot to handle the completion of a page load.
 </p><dl>
-<dt><i>ok</i></dt>
+<dt><i>ok</i> (bool)</dt>
 <dd>
-flag indicating a successful load (boolean)
+flag indicating a successful load
+</dd><dt><i>page</i> (HelpWebPage)</dt>
+<dd>
+reference to the web page object
 </dd>
 </dl><a NAME="PersonalInformationManager.connectPage" ID="PersonalInformationManager.connectPage"></a>
 <h4>PersonalInformationManager.connectPage</h4>
--- a/Documentation/Source/eric6.Helpviewer.SiteInfo.SiteInfoDialog.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.SiteInfo.SiteInfoDialog.html	Fri Mar 02 19:35:16 2018 +0100
@@ -98,10 +98,15 @@
 </dd>
 </dl><a NAME="SiteInfoDialog.__copyAction" ID="SiteInfoDialog.__copyAction"></a>
 <h4>SiteInfoDialog.__copyAction</h4>
-<b>__copyAction</b>(<i></i>)
+<b>__copyAction</b>(<i>act</i>)
 <p>
         Private slot to copy the image URL or the image name to the clipboard.
-</p><a NAME="SiteInfoDialog.__imagesTreeContextMenuRequested" ID="SiteInfoDialog.__imagesTreeContextMenuRequested"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="SiteInfoDialog.__imagesTreeContextMenuRequested" ID="SiteInfoDialog.__imagesTreeContextMenuRequested"></a>
 <h4>SiteInfoDialog.__imagesTreeContextMenuRequested</h4>
 <b>__imagesTreeContextMenuRequested</b>(<i>pos</i>)
 <p>
@@ -113,10 +118,15 @@
 </dd>
 </dl><a NAME="SiteInfoDialog.__saveImage" ID="SiteInfoDialog.__saveImage"></a>
 <h4>SiteInfoDialog.__saveImage</h4>
-<b>__saveImage</b>(<i></i>)
+<b>__saveImage</b>(<i>act</i>)
 <p>
         Private slot to save the selected image to disk.
-</p><a NAME="SiteInfoDialog.on_databasesList_currentItemChanged" ID="SiteInfoDialog.on_databasesList_currentItemChanged"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="SiteInfoDialog.on_databasesList_currentItemChanged" ID="SiteInfoDialog.on_databasesList_currentItemChanged"></a>
 <h4>SiteInfoDialog.on_databasesList_currentItemChanged</h4>
 <b>on_databasesList_currentItemChanged</b>(<i>current, previous</i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.SpeedDial.SpeedDial.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.SpeedDial.SpeedDial.html	Fri Mar 02 19:35:16 2018 +0100
@@ -204,13 +204,16 @@
         Private slot to react on a change of the pages configuration.
 </p><a NAME="SpeedDial.__thumbnailCreated" ID="SpeedDial.__thumbnailCreated"></a>
 <h4>SpeedDial.__thumbnailCreated</h4>
-<b>__thumbnailCreated</b>(<i>image</i>)
+<b>__thumbnailCreated</b>(<i>image, thumbnailer</i>)
 <p>
         Private slot to handle the creation of a thumbnail image.
 </p><dl>
-<dt><i>image</i></dt>
+<dt><i>image</i> (QPixmap)</dt>
 <dd>
-thumbnail image (QPixmap)
+thumbnail image
+</dd><dt><i>thumbnailer</i> (PageThumbnailer)</dt>
+<dd>
+reference to the page thumbnailer
 </dd>
 </dl><a NAME="SpeedDial.addPage" ID="SpeedDial.addPage"></a>
 <h4>SpeedDial.addPage</h4>
--- a/Documentation/Source/eric6.Helpviewer.UserAgent.UserAgentMenu.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.UserAgent.UserAgentMenu.html	Fri Mar 02 19:35:16 2018 +0100
@@ -108,10 +108,15 @@
 </dd>
 </dl><a NAME="UserAgentMenu.__changeUserAgent" ID="UserAgentMenu.__changeUserAgent"></a>
 <h4>UserAgentMenu.__changeUserAgent</h4>
-<b>__changeUserAgent</b>(<i></i>)
+<b>__changeUserAgent</b>(<i>act</i>)
 <p>
         Private slot to change the user agent.
-</p><a NAME="UserAgentMenu.__populateMenu" ID="UserAgentMenu.__populateMenu"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="UserAgentMenu.__populateMenu" ID="UserAgentMenu.__populateMenu"></a>
 <h4>UserAgentMenu.__populateMenu</h4>
 <b>__populateMenu</b>(<i></i>)
 <p>
--- a/Documentation/Source/eric6.Helpviewer.VirusTotal.VirusTotalApi.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Helpviewer.VirusTotal.VirusTotalApi.html	Fri Mar 02 19:35:16 2018 +0100
@@ -143,15 +143,25 @@
 </dd>
 </dl><a NAME="VirusTotalAPI.__checkServiceKeyValidityFinished" ID="VirusTotalAPI.__checkServiceKeyValidityFinished"></a>
 <h4>VirusTotalAPI.__checkServiceKeyValidityFinished</h4>
-<b>__checkServiceKeyValidityFinished</b>(<i></i>)
+<b>__checkServiceKeyValidityFinished</b>(<i>reply</i>)
 <p>
         Private slot to determine the result of the service key validity check.
-</p><a NAME="VirusTotalAPI.__getDomainReportFinished" ID="VirusTotalAPI.__getDomainReportFinished"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="VirusTotalAPI.__getDomainReportFinished" ID="VirusTotalAPI.__getDomainReportFinished"></a>
 <h4>VirusTotalAPI.__getDomainReportFinished</h4>
-<b>__getDomainReportFinished</b>(<i></i>)
+<b>__getDomainReportFinished</b>(<i>reply</i>)
 <p>
         Private slot to process the IP address report data.
-</p><a NAME="VirusTotalAPI.__getFileScanReportUrl" ID="VirusTotalAPI.__getFileScanReportUrl"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="VirusTotalAPI.__getFileScanReportUrl" ID="VirusTotalAPI.__getFileScanReportUrl"></a>
 <h4>VirusTotalAPI.__getFileScanReportUrl</h4>
 <b>__getFileScanReportUrl</b>(<i>scanId</i>)
 <p>
@@ -163,16 +173,26 @@
 </dd>
 </dl><a NAME="VirusTotalAPI.__getFileScanReportUrlFinished" ID="VirusTotalAPI.__getFileScanReportUrlFinished"></a>
 <h4>VirusTotalAPI.__getFileScanReportUrlFinished</h4>
-<b>__getFileScanReportUrlFinished</b>(<i></i>)
+<b>__getFileScanReportUrlFinished</b>(<i>reply</i>)
 <p>
         Private slot to determine the result of the file scan report URL
         request.
-</p><a NAME="VirusTotalAPI.__getIpAddressReportFinished" ID="VirusTotalAPI.__getIpAddressReportFinished"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="VirusTotalAPI.__getIpAddressReportFinished" ID="VirusTotalAPI.__getIpAddressReportFinished"></a>
 <h4>VirusTotalAPI.__getIpAddressReportFinished</h4>
-<b>__getIpAddressReportFinished</b>(<i></i>)
+<b>__getIpAddressReportFinished</b>(<i>reply</i>)
 <p>
         Private slot to process the IP address report data.
-</p><a NAME="VirusTotalAPI.__getUrlScanReportUrl" ID="VirusTotalAPI.__getUrlScanReportUrl"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="VirusTotalAPI.__getUrlScanReportUrl" ID="VirusTotalAPI.__getUrlScanReportUrl"></a>
 <h4>VirusTotalAPI.__getUrlScanReportUrl</h4>
 <b>__getUrlScanReportUrl</b>(<i>scanId</i>)
 <p>
@@ -184,21 +204,31 @@
 </dd>
 </dl><a NAME="VirusTotalAPI.__getUrlScanReportUrlFinished" ID="VirusTotalAPI.__getUrlScanReportUrlFinished"></a>
 <h4>VirusTotalAPI.__getUrlScanReportUrlFinished</h4>
-<b>__getUrlScanReportUrlFinished</b>(<i></i>)
+<b>__getUrlScanReportUrlFinished</b>(<i>reply</i>)
 <p>
         Private slot to determine the result of the URL scan report URL
         request.
-</p><a NAME="VirusTotalAPI.__loadSettings" ID="VirusTotalAPI.__loadSettings"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="VirusTotalAPI.__loadSettings" ID="VirusTotalAPI.__loadSettings"></a>
 <h4>VirusTotalAPI.__loadSettings</h4>
 <b>__loadSettings</b>(<i></i>)
 <p>
         Private method to load the settings.
 </p><a NAME="VirusTotalAPI.__submitUrlFinished" ID="VirusTotalAPI.__submitUrlFinished"></a>
 <h4>VirusTotalAPI.__submitUrlFinished</h4>
-<b>__submitUrlFinished</b>(<i></i>)
+<b>__submitUrlFinished</b>(<i>reply</i>)
 <p>
         Private slot to determine the result of the URL scan submission.
-</p><a NAME="VirusTotalAPI.checkServiceKeyValidity" ID="VirusTotalAPI.checkServiceKeyValidity"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="VirusTotalAPI.checkServiceKeyValidity" ID="VirusTotalAPI.checkServiceKeyValidity"></a>
 <h4>VirusTotalAPI.checkServiceKeyValidity</h4>
 <b>checkServiceKeyValidity</b>(<i>key, protocol=""</i>)
 <p>
--- a/Documentation/Source/eric6.PluginManager.PluginRepositoryDialog.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.PluginManager.PluginRepositoryDialog.html	Fri Mar 02 19:35:16 2018 +0100
@@ -263,10 +263,15 @@
         Private method to close the dialog and invoke the install dialog.
 </p><a NAME="PluginRepositoryWidget.__downloadCancel" ID="PluginRepositoryWidget.__downloadCancel"></a>
 <h4>PluginRepositoryWidget.__downloadCancel</h4>
-<b>__downloadCancel</b>(<i></i>)
+<b>__downloadCancel</b>(<i>reply=None</i>)
 <p>
         Private slot to cancel the current download.
-</p><a NAME="PluginRepositoryWidget.__downloadFile" ID="PluginRepositoryWidget.__downloadFile"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="PluginRepositoryWidget.__downloadFile" ID="PluginRepositoryWidget.__downloadFile"></a>
 <h4>PluginRepositoryWidget.__downloadFile</h4>
 <b>__downloadFile</b>(<i>url, filename, doneMethod=None</i>)
 <p>
@@ -284,7 +289,7 @@
 </dd>
 </dl><a NAME="PluginRepositoryWidget.__downloadFileDone" ID="PluginRepositoryWidget.__downloadFileDone"></a>
 <h4>PluginRepositoryWidget.__downloadFileDone</h4>
-<b>__downloadFileDone</b>(<i>reply</i>)
+<b>__downloadFileDone</b>(<i>reply, fileName, doneMethod</i>)
 <p>
         Private method called, after the file has been downloaded
         from the Internet.
@@ -292,6 +297,12 @@
 <dt><i>reply</i> (QNetworkReply)</dt>
 <dd>
 reference to the reply object of the download
+</dd><dt><i>fileName</i> (str)</dt>
+<dd>
+local name of the file
+</dd><dt><i>doneMethod</i> (func)</dt>
+<dd>
+method to be called when done
 </dd>
 </dl><a NAME="PluginRepositoryWidget.__downloadPlugin" ID="PluginRepositoryWidget.__downloadPlugin"></a>
 <h4>PluginRepositoryWidget.__downloadPlugin</h4>
--- a/Documentation/Source/eric6.Plugins.CheckerPlugins.SyntaxChecker.SyntaxCheck.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Plugins.CheckerPlugins.SyntaxChecker.SyntaxCheck.html	Fri Mar 02 19:35:16 2018 +0100
@@ -25,7 +25,7 @@
 </p>
 <h3>Global Attributes</h3>
 <table>
-<tr><td>VcsConflictMarkerRe</td></tr>
+<tr><td>VcsConflictMarkerRegExpList</td></tr>
 </table>
 <h3>Classes</h3>
 <table>
--- a/Documentation/Source/eric6.Plugins.VcsPlugins.vcsGit.GitDiffGenerator.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Plugins.VcsPlugins.vcsGit.GitDiffGenerator.html	Fri Mar 02 19:35:16 2018 +0100
@@ -152,21 +152,31 @@
 </dd>
 </dl><a NAME="GitDiffGenerator.__readStderr" ID="GitDiffGenerator.__readStderr"></a>
 <h4>GitDiffGenerator.__readStderr</h4>
-<b>__readStderr</b>(<i></i>)
+<b>__readStderr</b>(<i>process</i>)
 <p>
         Private slot to handle the readyReadStandardError signal.
 </p><p>
         It reads the error output of the process and inserts it into the
         error pane.
-</p><a NAME="GitDiffGenerator.__readStdout" ID="GitDiffGenerator.__readStdout"></a>
+</p><dl>
+<dt><i>process</i> (QProcess)</dt>
+<dd>
+reference to the process providing error output
+</dd>
+</dl><a NAME="GitDiffGenerator.__readStdout" ID="GitDiffGenerator.__readStdout"></a>
 <h4>GitDiffGenerator.__readStdout</h4>
-<b>__readStdout</b>(<i></i>)
+<b>__readStdout</b>(<i>process</i>)
 <p>
         Private slot to handle the readyReadStandardOutput signal.
 </p><p>
         It reads the output of the process, formats it and inserts it into
         the contents pane.
-</p><a NAME="GitDiffGenerator.getResult" ID="GitDiffGenerator.getResult"></a>
+</p><dl>
+<dt><i>process</i> (QProcess)</dt>
+<dd>
+reference to the process providing output
+</dd>
+</dl><a NAME="GitDiffGenerator.getResult" ID="GitDiffGenerator.getResult"></a>
 <h4>GitDiffGenerator.getResult</h4>
 <b>getResult</b>(<i></i>)
 <p>
--- a/Documentation/Source/eric6.Plugins.ViewManagerPlugins.Listspace.Listspace.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Plugins.ViewManagerPlugins.Listspace.Listspace.html	Fri Mar 02 19:35:16 2018 +0100
@@ -348,13 +348,16 @@
 </dd>
 </dl><a NAME="Listspace.__cursorLineChanged" ID="Listspace.__cursorLineChanged"></a>
 <h4>Listspace.__cursorLineChanged</h4>
-<b>__cursorLineChanged</b>(<i>lineno</i>)
+<b>__cursorLineChanged</b>(<i>lineno, editor</i>)
 <p>
         Private slot to handle a change of the current editor's cursor line.
 </p><dl>
 <dt><i>lineno</i> (int)</dt>
 <dd>
-line number of the current editor's cursor (zero based)
+line number of the editor's cursor (zero based)
+</dd><dt><i>editor</i> (Editor)</dt>
+<dd>
+reference to the editor
 </dd>
 </dl><a NAME="Listspace.__initMenu" ID="Listspace.__initMenu"></a>
 <h4>Listspace.__initMenu</h4>
--- a/Documentation/Source/eric6.Plugins.ViewManagerPlugins.Tabview.Tabview.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Plugins.ViewManagerPlugins.Tabview.Tabview.html	Fri Mar 02 19:35:16 2018 +0100
@@ -424,13 +424,16 @@
 </dd>
 </dl><a NAME="TabWidget.__cursorLineChanged" ID="TabWidget.__cursorLineChanged"></a>
 <h4>TabWidget.__cursorLineChanged</h4>
-<b>__cursorLineChanged</b>(<i>lineno</i>)
+<b>__cursorLineChanged</b>(<i>lineno, editor</i>)
 <p>
         Private slot to handle a change of the current editor's cursor line.
 </p><dl>
 <dt><i>lineno</i> (int)</dt>
 <dd>
-line number of the current editor's cursor (zero based)
+line number of the editor's cursor (zero based)
+</dd><dt><i>editor</i> (Editor)</dt>
+<dd>
+reference to the editor
 </dd>
 </dl><a NAME="TabWidget.__initMenu" ID="TabWidget.__initMenu"></a>
 <h4>TabWidget.__initMenu</h4>
--- a/Documentation/Source/eric6.Plugins.WizardPlugins.PyRegExpWizard.PyRegExpWizardCharactersDialog.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Plugins.WizardPlugins.PyRegExpWizard.PyRegExpWizardCharactersDialog.html	Fri Mar 02 19:35:16 2018 +0100
@@ -139,25 +139,31 @@
 </dd>
 </dl><a NAME="PyRegExpWizardCharactersDialog.__rangesCharTypeSelected" ID="PyRegExpWizardCharactersDialog.__rangesCharTypeSelected"></a>
 <h4>PyRegExpWizardCharactersDialog.__rangesCharTypeSelected</h4>
-<b>__rangesCharTypeSelected</b>(<i>index</i>)
+<b>__rangesCharTypeSelected</b>(<i>index, combo</i>)
 <p>
         Private slot to handle the activated(int) signal of the char ranges
         combo boxes.
 </p><dl>
-<dt><i>index</i></dt>
+<dt><i>index</i> (int)</dt>
 <dd>
-selected list index (integer)
+selected list index
+</dd><dt><i>combo</i> (QComboBox)</dt>
+<dd>
+reference to the combo box
 </dd>
 </dl><a NAME="PyRegExpWizardCharactersDialog.__singlesCharTypeSelected" ID="PyRegExpWizardCharactersDialog.__singlesCharTypeSelected"></a>
 <h4>PyRegExpWizardCharactersDialog.__singlesCharTypeSelected</h4>
-<b>__singlesCharTypeSelected</b>(<i>index</i>)
+<b>__singlesCharTypeSelected</b>(<i>index, combo</i>)
 <p>
         Private slot to handle the activated(int) signal of the single chars
         combo boxes.
 </p><dl>
-<dt><i>index</i></dt>
+<dt><i>index</i> (int)</dt>
 <dd>
-selected list index (integer)
+selected list index
+</dd><dt><i>combo</i> (QComboBox)</dt>
+<dd>
+reference to the combo box
 </dd>
 </dl><a NAME="PyRegExpWizardCharactersDialog.getCharacters" ID="PyRegExpWizardCharactersDialog.getCharacters"></a>
 <h4>PyRegExpWizardCharactersDialog.getCharacters</h4>
--- a/Documentation/Source/eric6.Plugins.WizardPlugins.QRegExpWizard.QRegExpWizardCharactersDialog.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Plugins.WizardPlugins.QRegExpWizard.QRegExpWizardCharactersDialog.html	Fri Mar 02 19:35:16 2018 +0100
@@ -188,25 +188,31 @@
 </dd>
 </dl><a NAME="QRegExpWizardCharactersDialog.__rangesCharTypeSelected" ID="QRegExpWizardCharactersDialog.__rangesCharTypeSelected"></a>
 <h4>QRegExpWizardCharactersDialog.__rangesCharTypeSelected</h4>
-<b>__rangesCharTypeSelected</b>(<i>index</i>)
+<b>__rangesCharTypeSelected</b>(<i>index, combo</i>)
 <p>
         Private slot to handle the activated(int) signal of the char ranges
         combo boxes.
 </p><dl>
-<dt><i>index</i></dt>
+<dt><i>index</i> (int)</dt>
 <dd>
-selected list index (integer)
+selected list index
+</dd><dt><i>combo</i> (QComboBox)</dt>
+<dd>
+reference to the combo box
 </dd>
 </dl><a NAME="QRegExpWizardCharactersDialog.__singlesCharTypeSelected" ID="QRegExpWizardCharactersDialog.__singlesCharTypeSelected"></a>
 <h4>QRegExpWizardCharactersDialog.__singlesCharTypeSelected</h4>
-<b>__singlesCharTypeSelected</b>(<i>index</i>)
+<b>__singlesCharTypeSelected</b>(<i>index, combo</i>)
 <p>
         Private slot to handle the activated(int) signal of the single chars
         combo boxes.
 </p><dl>
-<dt><i>index</i></dt>
+<dt><i>index</i> (int)</dt>
 <dd>
-selected list index (integer)
+selected list index
+</dd><dt><i>combo</i> (QComboBox)</dt>
+<dd>
+reference to the combo box
 </dd>
 </dl><a NAME="QRegExpWizardCharactersDialog.getCharacters" ID="QRegExpWizardCharactersDialog.getCharacters"></a>
 <h4>QRegExpWizardCharactersDialog.getCharacters</h4>
--- a/Documentation/Source/eric6.Plugins.WizardPlugins.QRegularExpressionWizard.QRegularExpressionWizardCharactersDialog.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Plugins.WizardPlugins.QRegularExpressionWizard.QRegularExpressionWizardCharactersDialog.html	Fri Mar 02 19:35:16 2018 +0100
@@ -184,25 +184,31 @@
 </dd>
 </dl><a NAME="QRegularExpressionWizardCharactersDialog.__rangesCharTypeSelected" ID="QRegularExpressionWizardCharactersDialog.__rangesCharTypeSelected"></a>
 <h4>QRegularExpressionWizardCharactersDialog.__rangesCharTypeSelected</h4>
-<b>__rangesCharTypeSelected</b>(<i>index</i>)
+<b>__rangesCharTypeSelected</b>(<i>index, combo</i>)
 <p>
         Private slot to handle the activated(int) signal of the char ranges
         combo boxes.
 </p><dl>
-<dt><i>index</i></dt>
+<dt><i>index</i> (int)</dt>
 <dd>
-selected list index (integer)
+selected list index
+</dd><dt><i>combo</i> (QComboBox)</dt>
+<dd>
+reference to the combo box
 </dd>
 </dl><a NAME="QRegularExpressionWizardCharactersDialog.__singlesCharTypeSelected" ID="QRegularExpressionWizardCharactersDialog.__singlesCharTypeSelected"></a>
 <h4>QRegularExpressionWizardCharactersDialog.__singlesCharTypeSelected</h4>
-<b>__singlesCharTypeSelected</b>(<i>index</i>)
+<b>__singlesCharTypeSelected</b>(<i>index, combo</i>)
 <p>
         Private slot to handle the activated(int) signal of the single chars
         combo boxes.
 </p><dl>
-<dt><i>index</i></dt>
+<dt><i>index</i> (int)</dt>
 <dd>
-selected list index (integer)
+selected list index
+</dd><dt><i>combo</i> (QComboBox)</dt>
+<dd>
+reference to the combo box
 </dd>
 </dl><a NAME="QRegularExpressionWizardCharactersDialog.getCharacters" ID="QRegularExpressionWizardCharactersDialog.getCharacters"></a>
 <h4>QRegularExpressionWizardCharactersDialog.getCharacters</h4>
--- a/Documentation/Source/eric6.Preferences.ConfigurationPages.ConfigurationPageBase.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Preferences.ConfigurationPages.ConfigurationPageBase.html	Fri Mar 02 19:35:16 2018 +0100
@@ -93,10 +93,15 @@
         Constructor
 </p><a NAME="ConfigurationPageBase.__selectColourSlot" ID="ConfigurationPageBase.__selectColourSlot"></a>
 <h4>ConfigurationPageBase.__selectColourSlot</h4>
-<b>__selectColourSlot</b>(<i></i>)
+<b>__selectColourSlot</b>(<i>button</i>)
 <p>
         Private slot to select a color.
-</p><a NAME="ConfigurationPageBase.initColour" ID="ConfigurationPageBase.initColour"></a>
+</p><dl>
+<dt><i>button</i> (QPushButton)</dt>
+<dd>
+reference to the button been pressed
+</dd>
+</dl><a NAME="ConfigurationPageBase.initColour" ID="ConfigurationPageBase.initColour"></a>
 <h4>ConfigurationPageBase.initColour</h4>
 <b>initColour</b>(<i>colourKey, button, prefMethod, byName=False, hasAlpha=False</i>)
 <p>
--- a/Documentation/Source/eric6.Preferences.ConfigurationPages.DiffColoursPage.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Preferences.ConfigurationPages.DiffColoursPage.html	Fri Mar 02 19:35:16 2018 +0100
@@ -115,15 +115,25 @@
 </dd>
 </dl><a NAME="DiffColoursPage.__selectBackgroundColour" ID="DiffColoursPage.__selectBackgroundColour"></a>
 <h4>DiffColoursPage.__selectBackgroundColour</h4>
-<b>__selectBackgroundColour</b>(<i></i>)
+<b>__selectBackgroundColour</b>(<i>button</i>)
 <p>
         Private slot to select a background colour.
-</p><a NAME="DiffColoursPage.__selectTextColour" ID="DiffColoursPage.__selectTextColour"></a>
+</p><dl>
+<dt><i>button</i> (QPushButton)</dt>
+<dd>
+reference to the button been pressed
+</dd>
+</dl><a NAME="DiffColoursPage.__selectTextColour" ID="DiffColoursPage.__selectTextColour"></a>
 <h4>DiffColoursPage.__selectTextColour</h4>
-<b>__selectTextColour</b>(<i></i>)
+<b>__selectTextColour</b>(<i>button</i>)
 <p>
         Private slot to select the text colour.
-</p><a NAME="DiffColoursPage.__updateSampleBackgroundColour" ID="DiffColoursPage.__updateSampleBackgroundColour"></a>
+</p><dl>
+<dt><i>button</i> (QPushButton)</dt>
+<dd>
+reference to the button been pressed
+</dd>
+</dl><a NAME="DiffColoursPage.__updateSampleBackgroundColour" ID="DiffColoursPage.__updateSampleBackgroundColour"></a>
 <h4>DiffColoursPage.__updateSampleBackgroundColour</h4>
 <b>__updateSampleBackgroundColour</b>(<i>colourKey</i>)
 <p>
--- a/Documentation/Source/eric6.Project.ProjectTranslationsBrowser.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Project.ProjectTranslationsBrowser.html	Fri Mar 02 19:35:16 2018 +0100
@@ -269,16 +269,19 @@
 </dd>
 </dl><a NAME="ProjectTranslationsBrowser.__generateTSFileDone" ID="ProjectTranslationsBrowser.__generateTSFileDone"></a>
 <h4>ProjectTranslationsBrowser.__generateTSFileDone</h4>
-<b>__generateTSFileDone</b>(<i>exitCode, exitStatus</i>)
+<b>__generateTSFileDone</b>(<i>exitCode, exitStatus, proc</i>)
 <p>
         Private slot to handle the finished signal of the pylupdate process.
 </p><dl>
-<dt><i>exitCode</i></dt>
+<dt><i>exitCode</i> (int)</dt>
+<dd>
+exit code of the process
+</dd><dt><i>exitStatus</i> (QProcess.ExitStatus)</dt>
 <dd>
-exit code of the process (integer)
-</dd><dt><i>exitStatus</i></dt>
+exit status of the process
+</dd><dt><i>proc</i> (QProcess)</dt>
 <dd>
-exit status of the process (QProcess.ExitStatus)
+reference to the process
 </dd>
 </dl><a NAME="ProjectTranslationsBrowser.__openFileInEditor" ID="ProjectTranslationsBrowser.__openFileInEditor"></a>
 <h4>ProjectTranslationsBrowser.__openFileInEditor</h4>
@@ -300,17 +303,27 @@
 </dd>
 </dl><a NAME="ProjectTranslationsBrowser.__readStderrLrelease" ID="ProjectTranslationsBrowser.__readStderrLrelease"></a>
 <h4>ProjectTranslationsBrowser.__readStderrLrelease</h4>
-<b>__readStderrLrelease</b>(<i></i>)
+<b>__readStderrLrelease</b>(<i>proc</i>)
 <p>
         Private slot to handle the readyReadStandardError signal of the
         lrelease process.
-</p><a NAME="ProjectTranslationsBrowser.__readStderrLupdate" ID="ProjectTranslationsBrowser.__readStderrLupdate"></a>
+</p><dl>
+<dt><i>proc</i> (QProcess)</dt>
+<dd>
+reference to the process
+</dd>
+</dl><a NAME="ProjectTranslationsBrowser.__readStderrLupdate" ID="ProjectTranslationsBrowser.__readStderrLupdate"></a>
 <h4>ProjectTranslationsBrowser.__readStderrLupdate</h4>
-<b>__readStderrLupdate</b>(<i></i>)
+<b>__readStderrLupdate</b>(<i>proc</i>)
 <p>
         Private slot to handle the readyReadStandardError signal of the
         pylupdate4/pylupdate5/pyside-lupdate process.
-</p><a NAME="ProjectTranslationsBrowser.__readStdout" ID="ProjectTranslationsBrowser.__readStdout"></a>
+</p><dl>
+<dt><i>proc</i> (QProcess)</dt>
+<dd>
+reference to the process
+</dd>
+</dl><a NAME="ProjectTranslationsBrowser.__readStdout" ID="ProjectTranslationsBrowser.__readStdout"></a>
 <h4>ProjectTranslationsBrowser.__readStdout</h4>
 <b>__readStdout</b>(<i>proc, ps</i>)
 <p>
@@ -325,17 +338,27 @@
 </dd>
 </dl><a NAME="ProjectTranslationsBrowser.__readStdoutLrelease" ID="ProjectTranslationsBrowser.__readStdoutLrelease"></a>
 <h4>ProjectTranslationsBrowser.__readStdoutLrelease</h4>
-<b>__readStdoutLrelease</b>(<i></i>)
+<b>__readStdoutLrelease</b>(<i>proc</i>)
 <p>
         Private slot to handle the readyReadStandardOutput signal of the
         lrelease process.
-</p><a NAME="ProjectTranslationsBrowser.__readStdoutLupdate" ID="ProjectTranslationsBrowser.__readStdoutLupdate"></a>
+</p><dl>
+<dt><i>proc</i> (QProcess)</dt>
+<dd>
+reference to the process
+</dd>
+</dl><a NAME="ProjectTranslationsBrowser.__readStdoutLupdate" ID="ProjectTranslationsBrowser.__readStdoutLupdate"></a>
 <h4>ProjectTranslationsBrowser.__readStdoutLupdate</h4>
-<b>__readStdoutLupdate</b>(<i></i>)
+<b>__readStdoutLupdate</b>(<i>proc</i>)
 <p>
         Private slot to handle the readyReadStandardOutput signal of the
         pylupdate process.
-</p><a NAME="ProjectTranslationsBrowser.__releaseAll" ID="ProjectTranslationsBrowser.__releaseAll"></a>
+</p><dl>
+<dt><i>proc</i> (QProcess)</dt>
+<dd>
+reference to the process
+</dd>
+</dl><a NAME="ProjectTranslationsBrowser.__releaseAll" ID="ProjectTranslationsBrowser.__releaseAll"></a>
 <h4>ProjectTranslationsBrowser.__releaseAll</h4>
 <b>__releaseAll</b>(<i></i>)
 <p>
@@ -358,16 +381,19 @@
 </dd>
 </dl><a NAME="ProjectTranslationsBrowser.__releaseTSFileDone" ID="ProjectTranslationsBrowser.__releaseTSFileDone"></a>
 <h4>ProjectTranslationsBrowser.__releaseTSFileDone</h4>
-<b>__releaseTSFileDone</b>(<i>exitCode, exitStatus</i>)
+<b>__releaseTSFileDone</b>(<i>exitCode, exitStatus, proc</i>)
 <p>
         Private slot to handle the finished signal of the lrelease process.
 </p><dl>
-<dt><i>exitCode</i></dt>
+<dt><i>exitCode</i> (int)</dt>
+<dd>
+exit code of the process
+</dd><dt><i>exitStatus</i> (QProcess.ExitStatus)</dt>
 <dd>
-exit code of the process (integer)
-</dd><dt><i>exitStatus</i></dt>
+exit status of the process
+</dd><dt><i>proc</i> (QProcess)</dt>
 <dd>
-exit status of the process (QProcess.ExitStatus)
+reference to the process
 </dd>
 </dl><a NAME="ProjectTranslationsBrowser.__removeLanguageFile" ID="ProjectTranslationsBrowser.__removeLanguageFile"></a>
 <h4>ProjectTranslationsBrowser.__removeLanguageFile</h4>
--- a/Documentation/Source/eric6.QScintilla.Editor.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.QScintilla.Editor.html	Fri Mar 02 19:35:16 2018 +0100
@@ -138,7 +138,7 @@
 QsciScintillaCompat
 <h3>Class Attributes</h3>
 <table>
-<tr><td>AttributeID</td></tr><tr><td>AttributePrivateID</td></tr><tr><td>AttributeProtectedID</td></tr><tr><td>CancelEditToken</td></tr><tr><td>ClassID</td></tr><tr><td>ClassPrivateID</td></tr><tr><td>ClassProtectedID</td></tr><tr><td>EndEditToken</td></tr><tr><td>EnumID</td></tr><tr><td>FromDocumentID</td></tr><tr><td>KeywordsID</td></tr><tr><td>MethodID</td></tr><tr><td>MethodPrivateID</td></tr><tr><td>MethodProtectedID</td></tr><tr><td>ModuleID</td></tr><tr><td>RequestSyncToken</td></tr><tr><td>Separator</td></tr><tr><td>StartEditToken</td></tr><tr><td>SyncToken</td></tr><tr><td>TemplateImageID</td></tr><tr><td>WarningCode</td></tr><tr><td>WarningStyle</td></tr>
+<tr><td>AttributeID</td></tr><tr><td>AttributePrivateID</td></tr><tr><td>AttributeProtectedID</td></tr><tr><td>CancelEditToken</td></tr><tr><td>ClassID</td></tr><tr><td>ClassPrivateID</td></tr><tr><td>ClassProtectedID</td></tr><tr><td>EndEditToken</td></tr><tr><td>EnumID</td></tr><tr><td>FromDocumentID</td></tr><tr><td>KeywordsID</td></tr><tr><td>MethodID</td></tr><tr><td>MethodPrivateID</td></tr><tr><td>MethodProtectedID</td></tr><tr><td>ModuleID</td></tr><tr><td>RequestSyncToken</td></tr><tr><td>Separator</td></tr><tr><td>StartEditToken</td></tr><tr><td>SyncToken</td></tr><tr><td>TemplateImageID</td></tr><tr><td>VcsConflictMarkerLineRegExpList</td></tr><tr><td>WarningCode</td></tr><tr><td>WarningStyle</td></tr>
 </table>
 <h3>Class Methods</h3>
 <table>
@@ -306,6 +306,9 @@
 <td><a href="#Editor.__getCodeCoverageFile">__getCodeCoverageFile</a></td>
 <td>Private method to get the file name of the file containing coverage info.</td>
 </tr><tr>
+<td><a href="#Editor.__getEditorConfig">__getEditorConfig</a></td>
+<td>Private method to get the requested option via EditorConfig.</td>
+</tr><tr>
 <td><a href="#Editor.__getMacroName">__getMacroName</a></td>
 <td>Private method to select a macro name from the list of macros.</td>
 </tr><tr>
@@ -396,6 +399,12 @@
 <td><a href="#Editor.__loadDiagram">__loadDiagram</a></td>
 <td>Private slot to load a diagram from file.</td>
 </tr><tr>
+<td><a href="#Editor.__loadEditorConfig">__loadEditorConfig</a></td>
+<td>Private method to load the EditorConfig properties.</td>
+</tr><tr>
+<td><a href="#Editor.__loadEditorConfigObject">__loadEditorConfigObject</a></td>
+<td>Private method to load the EditorConfig properties for the given file name.</td>
+</tr><tr>
 <td><a href="#Editor.__marginClicked">__marginClicked</a></td>
 <td>Private slot to handle the marginClicked signal.</td>
 </tr><tr>
@@ -543,6 +552,9 @@
 <td><a href="#Editor.__setSpellingLanguage">__setSpellingLanguage</a></td>
 <td>Private slot to set the spell checking language.</td>
 </tr><tr>
+<td><a href="#Editor.__setTabAndIndent">__setTabAndIndent</a></td>
+<td>Private method to set indentation size and style and tab width.</td>
+</tr><tr>
 <td><a href="#Editor.__setTextDisplay">__setTextDisplay</a></td>
 <td>Private method to configure the text display.</td>
 </tr><tr>
@@ -822,6 +834,9 @@
 <td><a href="#Editor.getCurrentWordBoundaries">getCurrentWordBoundaries</a></td>
 <td>Public method to get the word boundaries at the current position.</td>
 </tr><tr>
+<td><a href="#Editor.getEditorConfig">getEditorConfig</a></td>
+<td>Public method to get the requested option via EditorConfig.</td>
+</tr><tr>
 <td><a href="#Editor.getEncoding">getEncoding</a></td>
 <td>Public method to return the current encoding.</td>
 </tr><tr>
@@ -873,6 +888,9 @@
 <td><a href="#Editor.getTaskLines">getTaskLines</a></td>
 <td>Public method to get the lines containing a task.</td>
 </tr><tr>
+<td><a href="#Editor.getVcsConflictMarkerLines">getVcsConflictMarkerLines</a></td>
+<td>Public method to determine the lines containing a VCS conflict marker.</td>
+</tr><tr>
 <td><a href="#Editor.getWarningLines">getWarningLines</a></td>
 <td>Public method to get the lines containing a warning.</td>
 </tr><tr>
@@ -1746,6 +1764,39 @@
 <dd>
 file name of the coverage file (string)
 </dd>
+</dl><a NAME="Editor.__getEditorConfig" ID="Editor.__getEditorConfig"></a>
+<h4>Editor.__getEditorConfig</h4>
+<b>__getEditorConfig</b>(<i>option, nodefault=False, config=None</i>)
+<p>
+        Private method to get the requested option via EditorConfig.
+</p><p>
+        If there is no EditorConfig defined, the equivalent built-in option
+        will be used (Preferences.getEditor(). The option must be given as the
+        Preferences option key. The mapping to the EditorConfig option name
+        will be done within this method.
+</p><dl>
+<dt><i>option</i> (str)</dt>
+<dd>
+Preferences option key
+</dd><dt><i>nodefault</i> (bool)</dt>
+<dd>
+flag indicating to not get the default value from
+            Preferences but return None instead
+</dd><dt><i>config</i> (dict)</dt>
+<dd>
+reference to an EditorConfig object or None
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+value of requested setting or None if nothing was found and
+            nodefault parameter was True
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+any
+</dd>
 </dl><a NAME="Editor.__getMacroName" ID="Editor.__getMacroName"></a>
 <h4>Editor.__getMacroName</h4>
 <b>__getMacroName</b>(<i></i>)
@@ -2028,7 +2079,38 @@
 <b>__loadDiagram</b>(<i></i>)
 <p>
         Private slot to load a diagram from file.
-</p><a NAME="Editor.__marginClicked" ID="Editor.__marginClicked"></a>
+</p><a NAME="Editor.__loadEditorConfig" ID="Editor.__loadEditorConfig"></a>
+<h4>Editor.__loadEditorConfig</h4>
+<b>__loadEditorConfig</b>(<i>fileName=""</i>)
+<p>
+        Private method to load the EditorConfig properties.
+</p><dl>
+<dt><i>fileName</i> (str)</dt>
+<dd>
+name of the file
+</dd>
+</dl><a NAME="Editor.__loadEditorConfigObject" ID="Editor.__loadEditorConfigObject"></a>
+<h4>Editor.__loadEditorConfigObject</h4>
+<b>__loadEditorConfigObject</b>(<i>fileName</i>)
+<p>
+        Private method to load the EditorConfig properties for the given
+        file name.
+</p><dl>
+<dt><i>fileName</i> (str)</dt>
+<dd>
+name of the file
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+EditorConfig dictionary
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+dict
+</dd>
+</dl><a NAME="Editor.__marginClicked" ID="Editor.__marginClicked"></a>
 <h4>Editor.__marginClicked</h4>
 <b>__marginClicked</b>(<i>margin, line, modifiers</i>)
 <p>
@@ -2458,7 +2540,12 @@
 <dd>
 name of the personal/project exclude list (string)
 </dd>
-</dl><a NAME="Editor.__setTextDisplay" ID="Editor.__setTextDisplay"></a>
+</dl><a NAME="Editor.__setTabAndIndent" ID="Editor.__setTabAndIndent"></a>
+<h4>Editor.__setTabAndIndent</h4>
+<b>__setTabAndIndent</b>(<i></i>)
+<p>
+        Private method to set indentation size and style and tab width.
+</p><a NAME="Editor.__setTextDisplay" ID="Editor.__setTextDisplay"></a>
 <h4>Editor.__setTextDisplay</h4>
 <b>__setTextDisplay</b>(<i></i>)
 <p>
@@ -2539,11 +2626,16 @@
         menu.
 </p><a NAME="Editor.__showContextMenuMargin" ID="Editor.__showContextMenuMargin"></a>
 <h4>Editor.__showContextMenuMargin</h4>
-<b>__showContextMenuMargin</b>(<i></i>)
+<b>__showContextMenuMargin</b>(<i>menu</i>)
 <p>
         Private slot handling the aboutToShow signal of the margins context
         menu.
-</p><a NAME="Editor.__showContextMenuResources" ID="Editor.__showContextMenuResources"></a>
+</p><dl>
+<dt><i>menu</i> (QMenu)</dt>
+<dd>
+reference to the menu to be shown
+</dd>
+</dl><a NAME="Editor.__showContextMenuResources" ID="Editor.__showContextMenuResources"></a>
 <h4>Editor.__showContextMenuResources</h4>
 <b>__showContextMenuResources</b>(<i></i>)
 <p>
@@ -3275,6 +3367,26 @@
 tuple with start and end indexes of the current word
             (integer, integer)
 </dd>
+</dl><a NAME="Editor.getEditorConfig" ID="Editor.getEditorConfig"></a>
+<h4>Editor.getEditorConfig</h4>
+<b>getEditorConfig</b>(<i>option</i>)
+<p>
+        Public method to get the requested option via EditorConfig.
+</p><dl>
+<dt><i>option</i> (str)</dt>
+<dd>
+Preferences option key
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+value of requested setting
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+any
+</dd>
 </dl><a NAME="Editor.getEncoding" ID="Editor.getEncoding"></a>
 <h4>Editor.getEncoding</h4>
 <b>getEncoding</b>(<i></i>)
@@ -3498,6 +3610,21 @@
 <dd>
 list of lines containing a task (list of integer)
 </dd>
+</dl><a NAME="Editor.getVcsConflictMarkerLines" ID="Editor.getVcsConflictMarkerLines"></a>
+<h4>Editor.getVcsConflictMarkerLines</h4>
+<b>getVcsConflictMarkerLines</b>(<i></i>)
+<p>
+        Public method to determine the lines containing a VCS conflict marker.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+list of line numbers containg a VCS conflict marker
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+list of int
+</dd>
 </dl><a NAME="Editor.getWarningLines" ID="Editor.getWarningLines"></a>
 <h4>Editor.getWarningLines</h4>
 <b>getWarningLines</b>(<i></i>)
--- a/Documentation/Source/eric6.QScintilla.MiniEditor.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.QScintilla.MiniEditor.html	Fri Mar 02 19:35:16 2018 +0100
@@ -126,6 +126,9 @@
 <td><a href="#MiniEditor.__getCurrentWord">__getCurrentWord</a></td>
 <td>Private method to get the word at the current position.</td>
 </tr><tr>
+<td><a href="#MiniEditor.__getEditorConfig">__getEditorConfig</a></td>
+<td>Private method to get the requested option via EditorConfig.</td>
+</tr><tr>
 <td><a href="#MiniEditor.__getWord">__getWord</a></td>
 <td>Private method to get the word at a position.</td>
 </tr><tr>
@@ -141,6 +144,12 @@
 <td><a href="#MiniEditor.__languageMenuTriggered">__languageMenuTriggered</a></td>
 <td>Private method to handle the selection of a lexer language.</td>
 </tr><tr>
+<td><a href="#MiniEditor.__loadEditorConfig">__loadEditorConfig</a></td>
+<td>Private method to load the EditorConfig properties.</td>
+</tr><tr>
+<td><a href="#MiniEditor.__loadEditorConfigObject">__loadEditorConfigObject</a></td>
+<td>Private method to load the EditorConfig properties for the given file name.</td>
+</tr><tr>
 <td><a href="#MiniEditor.__loadFile">__loadFile</a></td>
 <td>Private method to load the given file.</td>
 </tr><tr>
@@ -225,6 +234,9 @@
 <td><a href="#MiniEditor.__setSbFile">__setSbFile</a></td>
 <td>Private method to set the file info in the status bar.</td>
 </tr><tr>
+<td><a href="#MiniEditor.__setTabAndIndent">__setTabAndIndent</a></td>
+<td>Private method to set indentation size and style and tab width.</td>
+</tr><tr>
 <td><a href="#MiniEditor.__setTextDisplay">__setTextDisplay</a></td>
 <td>Private method to configure the text display.</td>
 </tr><tr>
@@ -243,6 +255,9 @@
 <td><a href="#MiniEditor.__whatsThis">__whatsThis</a></td>
 <td>Private slot called in to enter Whats This mode.</td>
 </tr><tr>
+<td><a href="#MiniEditor.__writeFile">__writeFile</a></td>
+<td>Private method to write the current editor text to a file.</td>
+</tr><tr>
 <td><a href="#MiniEditor.__writeSettings">__writeSettings</a></td>
 <td>Private method to write the settings for reuse.</td>
 </tr><tr>
@@ -447,6 +462,39 @@
 <dd>
 the word at that current position
 </dd>
+</dl><a NAME="MiniEditor.__getEditorConfig" ID="MiniEditor.__getEditorConfig"></a>
+<h4>MiniEditor.__getEditorConfig</h4>
+<b>__getEditorConfig</b>(<i>option, nodefault=False, config=None</i>)
+<p>
+        Private method to get the requested option via EditorConfig.
+</p><p>
+        If there is no EditorConfig defined, the equivalent built-in option
+        will be used (Preferences.getEditor(). The option must be given as the
+        Preferences option key. The mapping to the EditorConfig option name
+        will be done within this method.
+</p><dl>
+<dt><i>option</i> (str)</dt>
+<dd>
+Preferences option key
+</dd><dt><i>nodefault</i> (bool)</dt>
+<dd>
+flag indicating to not get the default value from
+            Preferences but return None instead
+</dd><dt><i>config</i> (dict)</dt>
+<dd>
+reference to an EditorConfig object or None
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+value of requested setting or None if nothing was found and
+            nodefault parameter was True
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+any
+</dd>
 </dl><a NAME="MiniEditor.__getWord" ID="MiniEditor.__getWord"></a>
 <h4>MiniEditor.__getWord</h4>
 <b>__getWord</b>(<i>line, index</i>)
@@ -500,6 +548,37 @@
 <dd>
 reference to the action that was triggered (QAction)
 </dd>
+</dl><a NAME="MiniEditor.__loadEditorConfig" ID="MiniEditor.__loadEditorConfig"></a>
+<h4>MiniEditor.__loadEditorConfig</h4>
+<b>__loadEditorConfig</b>(<i>fileName=""</i>)
+<p>
+        Private method to load the EditorConfig properties.
+</p><dl>
+<dt><i>fileName</i> (str)</dt>
+<dd>
+name of the file
+</dd>
+</dl><a NAME="MiniEditor.__loadEditorConfigObject" ID="MiniEditor.__loadEditorConfigObject"></a>
+<h4>MiniEditor.__loadEditorConfigObject</h4>
+<b>__loadEditorConfigObject</b>(<i>fileName</i>)
+<p>
+        Private method to load the EditorConfig properties for the given
+        file name.
+</p><dl>
+<dt><i>fileName</i> (str)</dt>
+<dd>
+name of the file
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+EditorConfig dictionary
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+dict
+</dd>
 </dl><a NAME="MiniEditor.__loadFile" ID="MiniEditor.__loadFile"></a>
 <h4>MiniEditor.__loadFile</h4>
 <b>__loadFile</b>(<i>fileName, filetype=None</i>)
@@ -633,14 +712,19 @@
 <p>
         Private method to save to the given file.
 </p><dl>
-<dt><i>fileName</i></dt>
+<dt><i>fileName</i> (str)</dt>
 <dd>
-name of the file to save to (string)
+name of the file to save to
 </dd>
 </dl><dl>
 <dt>Returns:</dt>
 <dd>
-flag indicating success (boolean)
+flag indicating success
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl><a NAME="MiniEditor.__searchClearMarkers" ID="MiniEditor.__searchClearMarkers"></a>
 <h4>MiniEditor.__searchClearMarkers</h4>
@@ -715,7 +799,12 @@
 <dd>
 character position to display (int)
 </dd>
-</dl><a NAME="MiniEditor.__setTextDisplay" ID="MiniEditor.__setTextDisplay"></a>
+</dl><a NAME="MiniEditor.__setTabAndIndent" ID="MiniEditor.__setTabAndIndent"></a>
+<h4>MiniEditor.__setTabAndIndent</h4>
+<b>__setTabAndIndent</b>(<i></i>)
+<p>
+        Private method to set indentation size and style and tab width.
+</p><a NAME="MiniEditor.__setTextDisplay" ID="MiniEditor.__setTextDisplay"></a>
 <h4>MiniEditor.__setTextDisplay</h4>
 <b>__setTextDisplay</b>(<i></i>)
 <p>
@@ -761,7 +850,27 @@
 <b>__whatsThis</b>(<i></i>)
 <p>
         Private slot called in to enter Whats This mode.
-</p><a NAME="MiniEditor.__writeSettings" ID="MiniEditor.__writeSettings"></a>
+</p><a NAME="MiniEditor.__writeFile" ID="MiniEditor.__writeFile"></a>
+<h4>MiniEditor.__writeFile</h4>
+<b>__writeFile</b>(<i>fileName</i>)
+<p>
+        Private method to write the current editor text to a file.
+</p><dl>
+<dt><i>fileName</i> (str)</dt>
+<dd>
+name of the file to be written to
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating success
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl><a NAME="MiniEditor.__writeSettings" ID="MiniEditor.__writeSettings"></a>
 <h4>MiniEditor.__writeSettings</h4>
 <b>__writeSettings</b>(<i></i>)
 <p>
@@ -924,6 +1033,9 @@
 </tr><tr>
 <td><a href="#MiniScintilla.getFileName">getFileName</a></td>
 <td>Public method to return the name of the file being displayed.</td>
+</tr><tr>
+<td><a href="#MiniScintilla.removeTrailingWhitespace">removeTrailingWhitespace</a></td>
+<td>Public method to remove trailing whitespace.</td>
 </tr>
 </table>
 <h3>Static Methods</h3>
@@ -975,7 +1087,12 @@
 <dd>
 filename of the displayed file (string)
 </dd>
-</dl>
+</dl><a NAME="MiniScintilla.removeTrailingWhitespace" ID="MiniScintilla.removeTrailingWhitespace"></a>
+<h4>MiniScintilla.removeTrailingWhitespace</h4>
+<b>removeTrailingWhitespace</b>(<i></i>)
+<p>
+        Public method to remove trailing whitespace.
+</p>
 <div align="right"><a href="#top">Up</a></div>
 <hr />
 </body></html>
\ No newline at end of file
--- a/Documentation/Source/eric6.QScintilla.SearchReplaceWidget.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.QScintilla.SearchReplaceWidget.html	Fri Mar 02 19:35:16 2018 +0100
@@ -206,10 +206,15 @@
 </dd>
 </dl><a NAME="SearchReplaceSlidingWidget.selectionChanged" ID="SearchReplaceSlidingWidget.selectionChanged"></a>
 <h4>SearchReplaceSlidingWidget.selectionChanged</h4>
-<b>selectionChanged</b>(<i></i>)
+<b>selectionChanged</b>(<i>editor</i>)
 <p>
         Public slot tracking changes of selected text.
-</p><a NAME="SearchReplaceSlidingWidget.show" ID="SearchReplaceSlidingWidget.show"></a>
+</p><dl>
+<dt><i>editor</i> (Editor)</dt>
+<dd>
+reference to the editor
+</dd>
+</dl><a NAME="SearchReplaceSlidingWidget.show" ID="SearchReplaceSlidingWidget.show"></a>
 <h4>SearchReplaceSlidingWidget.show</h4>
 <b>show</b>(<i>text=''</i>)
 <p>
@@ -600,10 +605,15 @@
         Public method to replace the current selection and search again.
 </p><a NAME="SearchReplaceWidget.selectionChanged" ID="SearchReplaceWidget.selectionChanged"></a>
 <h4>SearchReplaceWidget.selectionChanged</h4>
-<b>selectionChanged</b>(<i></i>)
+<b>selectionChanged</b>(<i>editor</i>)
 <p>
         Public slot tracking changes of selected text.
-</p><a NAME="SearchReplaceWidget.show" ID="SearchReplaceWidget.show"></a>
+</p><dl>
+<dt><i>editor</i> (Editor)</dt>
+<dd>
+reference to the editor
+</dd>
+</dl><a NAME="SearchReplaceWidget.show" ID="SearchReplaceWidget.show"></a>
 <h4>SearchReplaceWidget.show</h4>
 <b>show</b>(<i>text=''</i>)
 <p>
@@ -619,9 +629,9 @@
 <p>
         Public slot to update the selection check box.
 </p><dl>
-<dt><i>editor</i></dt>
+<dt><i>editor</i> (Editor)</dt>
 <dd>
-reference to the editor (Editor)
+reference to the editor
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/Documentation/Source/eric6.UI.UserInterface.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.UI.UserInterface.html	Fri Mar 02 19:35:16 2018 +0100
@@ -1868,10 +1868,15 @@
 </dd>
 </dl><a NAME="UserInterface.__toolActionTriggered" ID="UserInterface.__toolActionTriggered"></a>
 <h4>UserInterface.__toolActionTriggered</h4>
-<b>__toolActionTriggered</b>(<i></i>)
+<b>__toolActionTriggered</b>(<i>act</i>)
 <p>
         Private slot called by external tools toolbar actions.
-</p><a NAME="UserInterface.__toolExecute" ID="UserInterface.__toolExecute"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered the slot
+</dd>
+</dl><a NAME="UserInterface.__toolExecute" ID="UserInterface.__toolExecute"></a>
 <h4>UserInterface.__toolExecute</h4>
 <b>__toolExecute</b>(<i>act</i>)
 <p>
@@ -2009,11 +2014,16 @@
         Private slot called to cancel the version check.
 </p><a NAME="UserInterface.__versionsDownloadDone" ID="UserInterface.__versionsDownloadDone"></a>
 <h4>UserInterface.__versionsDownloadDone</h4>
-<b>__versionsDownloadDone</b>(<i></i>)
+<b>__versionsDownloadDone</b>(<i>reply</i>)
 <p>
         Private slot called, after the versions file has been downloaded
         from the internet.
-</p><a NAME="UserInterface.__webBrowser" ID="UserInterface.__webBrowser"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="UserInterface.__webBrowser" ID="UserInterface.__webBrowser"></a>
 <h4>UserInterface.__webBrowser</h4>
 <b>__webBrowser</b>(<i>home=""</i>)
 <p>
--- a/Documentation/Source/eric6.Utilities.__init__.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.Utilities.__init__.html	Fri Mar 02 19:35:16 2018 +0100
@@ -188,7 +188,7 @@
 <td>Function to join a file extension to a path.</td>
 </tr><tr>
 <td><a href="#linesep">linesep</a></td>
-<td>Function to return the lineseparator used by the editor.</td>
+<td>Function to return the line separator used by the editor.</td>
 </tr><tr>
 <td><a href="#normabsjoinpath">normabsjoinpath</a></td>
 <td>Function returning a normalized, absolute path of the joined parts passed into it.</td>
@@ -610,21 +610,30 @@
 <hr /><hr />
 <a NAME="encode" ID="encode"></a>
 <h2>encode</h2>
-<b>encode</b>(<i>text, orig_coding</i>)
+<b>encode</b>(<i>text, origEncoding, forcedEncoding=""</i>)
 <p>
     Function to encode text into a byte text.
 </p><dl>
-<dt><i>text</i></dt>
+<dt><i>text</i> (str)</dt>
+<dd>
+text to be encoded
+</dd><dt><i>origEncoding</i> (str)</dt>
 <dd>
-text to be encoded (string)
-</dd><dt><i>orig_coding</i></dt>
+type of the original encoding
+</dd><dt><i>forcedEncoding</i> (str)</dt>
 <dd>
-type of the original encoding (string)
+encoding to be used for writing, if no coding line
+        is present
 </dd>
 </dl><dl>
 <dt>Returns:</dt>
 <dd>
-tuple of encoded text and encoding used (bytes, string)
+tuple of encoded text and encoding used
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (bytes, str)
 </dd>
 </dl><dl>
 <dt>Raises <b>CodingError</b>:</dt>
@@ -1352,7 +1361,7 @@
 <h2>linesep</h2>
 <b>linesep</b>(<i></i>)
 <p>
-    Function to return the lineseparator used by the editor.
+    Function to return the line separator used by the editor.
 </p><dl>
 <dt>Returns:</dt>
 <dd>
@@ -1892,24 +1901,33 @@
 <hr /><hr />
 <a NAME="writeEncodedFile" ID="writeEncodedFile"></a>
 <h2>writeEncodedFile</h2>
-<b>writeEncodedFile</b>(<i>filename, text, orig_coding</i>)
+<b>writeEncodedFile</b>(<i>filename, text, origEncoding, forcedEncoding=""</i>)
 <p>
     Function to write a file with properly encoded text.
 </p><dl>
-<dt><i>filename</i></dt>
+<dt><i>filename</i> (str)</dt>
 <dd>
-name of the file to read (string)
-</dd><dt><i>text</i></dt>
+name of the file to read
+</dd><dt><i>text</i> (str)</dt>
 <dd>
-text to be written (string)
-</dd><dt><i>orig_coding</i></dt>
+text to be written
+</dd><dt><i>origEncoding</i> (str)</dt>
 <dd>
-type of the original encoding (string)
+type of the original encoding
+</dd><dt><i>forcedEncoding</i> (str)</dt>
+<dd>
+encoding to be used for writing, if no coding
+        line is present
 </dd>
 </dl><dl>
 <dt>Returns:</dt>
 <dd>
-encoding used for writing the file (string)
+encoding used for writing the file
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/Documentation/Source/eric6.ViewManager.ViewManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.ViewManager.ViewManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -1108,21 +1108,24 @@
 </dd>
 </dl><a NAME="ViewManager.__cursorChanged" ID="ViewManager.__cursorChanged"></a>
 <h4>ViewManager.__cursorChanged</h4>
-<b>__cursorChanged</b>(<i>fn, line, pos</i>)
+<b>__cursorChanged</b>(<i>fn, line, pos, editor</i>)
 <p>
         Private slot to handle the cursorChanged signal.
 </p><p>
         It emits the signal cursorChanged with parameter editor.
 </p><dl>
-<dt><i>fn</i></dt>
+<dt><i>fn</i> (str)</dt>
 <dd>
-filename (string)
-</dd><dt><i>line</i></dt>
+filename
+</dd><dt><i>line</i> (int)</dt>
 <dd>
-line number of the cursor (int)
-</dd><dt><i>pos</i></dt>
+line number of the cursor
+</dd><dt><i>pos</i> (int)</dt>
 <dd>
-position in line of the cursor (int)
+position in line of the cursor
+</dd><dt><i>editor</i> (Editor)</dt>
+<dd>
+reference to the editor
 </dd>
 </dl><a NAME="ViewManager.__editAutoComplete" ID="ViewManager.__editAutoComplete"></a>
 <h4>ViewManager.__editAutoComplete</h4>
@@ -1291,14 +1294,17 @@
         Private slot to edit the user word list.
 </p><a NAME="ViewManager.__editorAutoCompletionAPIsAvailable" ID="ViewManager.__editorAutoCompletionAPIsAvailable"></a>
 <h4>ViewManager.__editorAutoCompletionAPIsAvailable</h4>
-<b>__editorAutoCompletionAPIsAvailable</b>(<i>available</i>)
+<b>__editorAutoCompletionAPIsAvailable</b>(<i>available, editor</i>)
 <p>
         Private method to handle the availability of API autocompletion signal.
 </p><dl>
-<dt><i>available</i></dt>
+<dt><i>available</i> (bool)</dt>
 <dd>
 flag indicating the availability of API
-        autocompletion (boolean)
+            autocompletion
+</dd><dt><i>editor</i> (Editor)</dt>
+<dd>
+reference to the editor
 </dd>
 </dl><a NAME="ViewManager.__editorCommand" ID="ViewManager.__editorCommand"></a>
 <h4>ViewManager.__editorCommand</h4>
@@ -1312,44 +1318,60 @@
 </dd>
 </dl><a NAME="ViewManager.__editorConfigChanged" ID="ViewManager.__editorConfigChanged"></a>
 <h4>ViewManager.__editorConfigChanged</h4>
-<b>__editorConfigChanged</b>(<i></i>)
+<b>__editorConfigChanged</b>(<i>editor</i>)
 <p>
         Private slot to handle changes of an editor's configuration.
-</p><a NAME="ViewManager.__editorOpened" ID="ViewManager.__editorOpened"></a>
+</p><dl>
+<dt><i>editor</i> (Editor)</dt>
+<dd>
+reference to the editor
+</dd>
+</dl><a NAME="ViewManager.__editorOpened" ID="ViewManager.__editorOpened"></a>
 <h4>ViewManager.__editorOpened</h4>
 <b>__editorOpened</b>(<i></i>)
 <p>
         Private slot to handle the editorOpened signal.
 </p><a NAME="ViewManager.__editorRenamed" ID="ViewManager.__editorRenamed"></a>
 <h4>ViewManager.__editorRenamed</h4>
-<b>__editorRenamed</b>(<i>fn</i>)
+<b>__editorRenamed</b>(<i>fn, editor</i>)
 <p>
         Private slot to handle the editorRenamed signal.
 </p><p>
-        It simply reemits the signal.
+        It simply re-emits the signal.
 </p><dl>
-<dt><i>fn</i></dt>
+<dt><i>fn</i> (str)</dt>
 <dd>
-filename of the renamed editor (string)
+filename of the renamed editor
+</dd><dt><i>editor</i> (Editor)</dt>
+<dd>
+reference to the editor
 </dd>
 </dl><a NAME="ViewManager.__editorSaved" ID="ViewManager.__editorSaved"></a>
 <h4>ViewManager.__editorSaved</h4>
-<b>__editorSaved</b>(<i>fn</i>)
+<b>__editorSaved</b>(<i>fn, editor</i>)
 <p>
         Private slot to handle the editorSaved signal.
 </p><p>
-        It simply reemits the signal.
+        It simply re-emits the signal.
 </p><dl>
-<dt><i>fn</i></dt>
+<dt><i>fn</i> (str)</dt>
 <dd>
-filename of the saved editor (string)
+filename of the saved editor
+</dd><dt><i>editor</i> (Editor)</dt>
+<dd>
+reference to the editor
 </dd>
 </dl><a NAME="ViewManager.__editorSelectionChanged" ID="ViewManager.__editorSelectionChanged"></a>
 <h4>ViewManager.__editorSelectionChanged</h4>
-<b>__editorSelectionChanged</b>(<i></i>)
+<b>__editorSelectionChanged</b>(<i>editor</i>)
 <p>
         Private slot to handle changes of the current editors selection.
-</p><a NAME="ViewManager.__enableSpellingActions" ID="ViewManager.__enableSpellingActions"></a>
+</p><dl>
+<dt><i>editor</i> (Editor)</dt>
+<dd>
+reference to the editor
+</dd>
+</dl><a NAME="ViewManager.__enableSpellingActions" ID="ViewManager.__enableSpellingActions"></a>
 <h4>ViewManager.__enableSpellingActions</h4>
 <b>__enableSpellingActions</b>(<i></i>)
 <p>
@@ -3351,13 +3373,16 @@
 </dd>
 </dl><a NAME="ViewManager.zoomValueChanged" ID="ViewManager.zoomValueChanged"></a>
 <h4>ViewManager.zoomValueChanged</h4>
-<b>zoomValueChanged</b>(<i>value</i>)
+<b>zoomValueChanged</b>(<i>value, zoomingWidget</i>)
 <p>
         Public slot to handle changes of the zoom value.
 </p><dl>
-<dt><i>value</i></dt>
+<dt><i>value</i> (int)</dt>
 <dd>
-new zoom value (integer)
+new zoom value
+</dd><dt><i>zoomingWidget</i> (Editor or Shell)</dt>
+<dd>
+reference to the widget triggering the slot
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/Documentation/Source/eric6.WebBrowser.AdBlock.AdBlockIcon.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.AdBlock.AdBlockIcon.html	Fri Mar 02 19:35:16 2018 +0100
@@ -104,7 +104,7 @@
 </dd>
 </dl><a NAME="AdBlockIcon.__createMenu" ID="AdBlockIcon.__createMenu"></a>
 <h4>AdBlockIcon.__createMenu</h4>
-<b>__createMenu</b>(<i>menu=None</i>)
+<b>__createMenu</b>(<i>menu</i>)
 <p>
         Private slot to create the context menu.
 </p><dl>
@@ -114,10 +114,15 @@
 </dd>
 </dl><a NAME="AdBlockIcon.__enableAdBlock" ID="AdBlockIcon.__enableAdBlock"></a>
 <h4>AdBlockIcon.__enableAdBlock</h4>
-<b>__enableAdBlock</b>(<i></i>)
+<b>__enableAdBlock</b>(<i>act</i>)
 <p>
         Private slot to enable or disable AdBlock.
-</p><a NAME="AdBlockIcon.__isCurrentHostExcepted" ID="AdBlockIcon.__isCurrentHostExcepted"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action
+</dd>
+</dl><a NAME="AdBlockIcon.__isCurrentHostExcepted" ID="AdBlockIcon.__isCurrentHostExcepted"></a>
 <h4>AdBlockIcon.__isCurrentHostExcepted</h4>
 <b>__isCurrentHostExcepted</b>(<i></i>)
 <p>
@@ -135,11 +140,16 @@
 </dd>
 </dl><a NAME="AdBlockIcon.__setException" ID="AdBlockIcon.__setException"></a>
 <h4>AdBlockIcon.__setException</h4>
-<b>__setException</b>(<i></i>)
+<b>__setException</b>(<i>act</i>)
 <p>
         Private slot to add or remove the current host from the list of
         exceptions.
-</p><a NAME="AdBlockIcon.__showMenu" ID="AdBlockIcon.__showMenu"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+referenced to the action
+</dd>
+</dl><a NAME="AdBlockIcon.__showMenu" ID="AdBlockIcon.__showMenu"></a>
 <h4>AdBlockIcon.__showMenu</h4>
 <b>__showMenu</b>(<i>pos</i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.AdBlock.AdBlockSubscription.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.AdBlock.AdBlockSubscription.html	Fri Mar 02 19:35:16 2018 +0100
@@ -192,10 +192,15 @@
 </dd>
 </dl><a NAME="AdBlockSubscription.__rulesDownloaded" ID="AdBlockSubscription.__rulesDownloaded"></a>
 <h4>AdBlockSubscription.__rulesDownloaded</h4>
-<b>__rulesDownloaded</b>(<i></i>)
+<b>__rulesDownloaded</b>(<i>reply</i>)
 <p>
         Private slot to deal with the downloaded rules.
-</p><a NAME="AdBlockSubscription.__validateCheckSum" ID="AdBlockSubscription.__validateCheckSum"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="AdBlockSubscription.__validateCheckSum" ID="AdBlockSubscription.__validateCheckSum"></a>
 <h4>AdBlockSubscription.__validateCheckSum</h4>
 <b>__validateCheckSum</b>(<i>fileName</i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.Bookmarks.BookmarksMenu.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.Bookmarks.BookmarksMenu.html	Fri Mar 02 19:35:16 2018 +0100
@@ -151,35 +151,65 @@
 </dd>
 </dl><a NAME="BookmarksMenu.__edit" ID="BookmarksMenu.__edit"></a>
 <h4>BookmarksMenu.__edit</h4>
-<b>__edit</b>(<i></i>)
+<b>__edit</b>(<i>act</i>)
 <p>
         Private slot to edit a bookmarks properties.
-</p><a NAME="BookmarksMenu.__openBookmark" ID="BookmarksMenu.__openBookmark"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksMenu.__openBookmark" ID="BookmarksMenu.__openBookmark"></a>
 <h4>BookmarksMenu.__openBookmark</h4>
-<b>__openBookmark</b>(<i></i>)
+<b>__openBookmark</b>(<i>act</i>)
 <p>
         Private slot to open a bookmark in the current browser tab.
-</p><a NAME="BookmarksMenu.__openBookmarkInNewTab" ID="BookmarksMenu.__openBookmarkInNewTab"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksMenu.__openBookmarkInNewTab" ID="BookmarksMenu.__openBookmarkInNewTab"></a>
 <h4>BookmarksMenu.__openBookmarkInNewTab</h4>
-<b>__openBookmarkInNewTab</b>(<i></i>)
+<b>__openBookmarkInNewTab</b>(<i>act</i>)
 <p>
         Private slot to open a bookmark in a new browser tab.
-</p><a NAME="BookmarksMenu.__openBookmarkInNewWindow" ID="BookmarksMenu.__openBookmarkInNewWindow"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksMenu.__openBookmarkInNewWindow" ID="BookmarksMenu.__openBookmarkInNewWindow"></a>
 <h4>BookmarksMenu.__openBookmarkInNewWindow</h4>
-<b>__openBookmarkInNewWindow</b>(<i></i>)
+<b>__openBookmarkInNewWindow</b>(<i>act</i>)
 <p>
         Private slot to open a bookmark in a new window.
-</p><a NAME="BookmarksMenu.__openBookmarkInPrivateWindow" ID="BookmarksMenu.__openBookmarkInPrivateWindow"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksMenu.__openBookmarkInPrivateWindow" ID="BookmarksMenu.__openBookmarkInPrivateWindow"></a>
 <h4>BookmarksMenu.__openBookmarkInPrivateWindow</h4>
-<b>__openBookmarkInPrivateWindow</b>(<i></i>)
+<b>__openBookmarkInPrivateWindow</b>(<i>act</i>)
 <p>
         Private slot to open a bookmark in a new private window.
-</p><a NAME="BookmarksMenu.__removeBookmark" ID="BookmarksMenu.__removeBookmark"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksMenu.__removeBookmark" ID="BookmarksMenu.__removeBookmark"></a>
 <h4>BookmarksMenu.__removeBookmark</h4>
-<b>__removeBookmark</b>(<i></i>)
+<b>__removeBookmark</b>(<i>act</i>)
 <p>
         Private slot to remove a bookmark.
-</p><a NAME="BookmarksMenu.__updateVisitCount" ID="BookmarksMenu.__updateVisitCount"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksMenu.__updateVisitCount" ID="BookmarksMenu.__updateVisitCount"></a>
 <h4>BookmarksMenu.__updateVisitCount</h4>
 <b>__updateVisitCount</b>(<i>idx</i>)
 <p>
@@ -201,10 +231,15 @@
 </dd>
 </dl><a NAME="BookmarksMenu.openAll" ID="BookmarksMenu.openAll"></a>
 <h4>BookmarksMenu.openAll</h4>
-<b>openAll</b>(<i></i>)
+<b>openAll</b>(<i>act</i>)
 <p>
         Public slot to open all the menu's items.
-</p><a NAME="BookmarksMenu.postPopulated" ID="BookmarksMenu.postPopulated"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action object
+</dd>
+</dl><a NAME="BookmarksMenu.postPopulated" ID="BookmarksMenu.postPopulated"></a>
 <h4>BookmarksMenu.postPopulated</h4>
 <b>postPopulated</b>(<i></i>)
 <p>
@@ -269,10 +304,15 @@
 </dd>
 </dl><a NAME="BookmarksMenuBarMenu.__defaultBookmarkTriggered" ID="BookmarksMenuBarMenu.__defaultBookmarkTriggered"></a>
 <h4>BookmarksMenuBarMenu.__defaultBookmarkTriggered</h4>
-<b>__defaultBookmarkTriggered</b>(<i></i>)
+<b>__defaultBookmarkTriggered</b>(<i>act</i>)
 <p>
         Private slot handling the default bookmark menu entries.
-</p><a NAME="BookmarksMenuBarMenu.postPopulated" ID="BookmarksMenuBarMenu.postPopulated"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action object
+</dd>
+</dl><a NAME="BookmarksMenuBarMenu.postPopulated" ID="BookmarksMenuBarMenu.postPopulated"></a>
 <h4>BookmarksMenuBarMenu.postPopulated</h4>
 <b>postPopulated</b>(<i></i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.Bookmarks.BookmarksToolBar.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.Bookmarks.BookmarksToolBar.html	Fri Mar 02 19:35:16 2018 +0100
@@ -154,10 +154,15 @@
 </dd>
 </dl><a NAME="BookmarksToolBar.__edit" ID="BookmarksToolBar.__edit"></a>
 <h4>BookmarksToolBar.__edit</h4>
-<b>__edit</b>(<i></i>)
+<b>__edit</b>(<i>act</i>)
 <p>
         Private slot to edit a bookmarks properties.
-</p><a NAME="BookmarksToolBar.__newBookmark" ID="BookmarksToolBar.__newBookmark"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksToolBar.__newBookmark" ID="BookmarksToolBar.__newBookmark"></a>
 <h4>BookmarksToolBar.__newBookmark</h4>
 <b>__newBookmark</b>(<i></i>)
 <p>
@@ -169,35 +174,60 @@
         Private slot to add a new bookmarks folder.
 </p><a NAME="BookmarksToolBar.__openBookmark" ID="BookmarksToolBar.__openBookmark"></a>
 <h4>BookmarksToolBar.__openBookmark</h4>
-<b>__openBookmark</b>(<i></i>)
+<b>__openBookmark</b>(<i>act</i>)
 <p>
         Private slot to open a bookmark in the current browser tab.
-</p><a NAME="BookmarksToolBar.__openBookmarkInNewTab" ID="BookmarksToolBar.__openBookmarkInNewTab"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksToolBar.__openBookmarkInNewTab" ID="BookmarksToolBar.__openBookmarkInNewTab"></a>
 <h4>BookmarksToolBar.__openBookmarkInNewTab</h4>
-<b>__openBookmarkInNewTab</b>(<i></i>)
+<b>__openBookmarkInNewTab</b>(<i>act</i>)
 <p>
         Private slot to open a bookmark in a new browser tab.
-</p><a NAME="BookmarksToolBar.__openBookmarkInNewWindow" ID="BookmarksToolBar.__openBookmarkInNewWindow"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksToolBar.__openBookmarkInNewWindow" ID="BookmarksToolBar.__openBookmarkInNewWindow"></a>
 <h4>BookmarksToolBar.__openBookmarkInNewWindow</h4>
-<b>__openBookmarkInNewWindow</b>(<i></i>)
+<b>__openBookmarkInNewWindow</b>(<i>act</i>)
 <p>
         Private slot to open a bookmark in a new window.
-</p><a NAME="BookmarksToolBar.__openBookmarkInPrivateWindow" ID="BookmarksToolBar.__openBookmarkInPrivateWindow"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksToolBar.__openBookmarkInPrivateWindow" ID="BookmarksToolBar.__openBookmarkInPrivateWindow"></a>
 <h4>BookmarksToolBar.__openBookmarkInPrivateWindow</h4>
-<b>__openBookmarkInPrivateWindow</b>(<i></i>)
+<b>__openBookmarkInPrivateWindow</b>(<i>act</i>)
 <p>
         Private slot to open a bookmark in a new private window.
-</p><a NAME="BookmarksToolBar.__rebuild" ID="BookmarksToolBar.__rebuild"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksToolBar.__rebuild" ID="BookmarksToolBar.__rebuild"></a>
 <h4>BookmarksToolBar.__rebuild</h4>
 <b>__rebuild</b>(<i></i>)
 <p>
         Private slot to rebuild the toolbar.
 </p><a NAME="BookmarksToolBar.__removeBookmark" ID="BookmarksToolBar.__removeBookmark"></a>
 <h4>BookmarksToolBar.__removeBookmark</h4>
-<b>__removeBookmark</b>(<i></i>)
+<b>__removeBookmark</b>(<i>act</i>)
 <p>
         Private slot to remove a bookmark.
-</p><a NAME="BookmarksToolBar.__updateVisitCount" ID="BookmarksToolBar.__updateVisitCount"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the triggering action
+</dd>
+</dl><a NAME="BookmarksToolBar.__updateVisitCount" ID="BookmarksToolBar.__updateVisitCount"></a>
 <h4>BookmarksToolBar.__updateVisitCount</h4>
 <b>__updateVisitCount</b>(<i>idx</i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.Download.DownloadItem.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.Download.DownloadItem.html	Fri Mar 02 19:35:16 2018 +0100
@@ -169,17 +169,20 @@
 </table>
 <a NAME="DownloadItem.__init__" ID="DownloadItem.__init__"></a>
 <h4>DownloadItem (Constructor)</h4>
-<b>DownloadItem</b>(<i>downloadItem=None, parent=None</i>)
+<b>DownloadItem</b>(<i>downloadItem=None, pageUrl="", parent=None</i>)
 <p>
         Constructor
 </p><dl>
-<dt><i>downloadItem</i></dt>
+<dt><i>downloadItem</i> (QWebEngineDownloadItem)</dt>
 <dd>
 reference to the download object containing the
         download data.
-</dd><dt><i>parent=</i> (QWebEngineDownloadItem)</dt>
+</dd><dt><i>pageUrl</i> (QUrl)</dt>
 <dd>
-reference to the parent widget (QWidget)
+URL of the calling page
+</dd><dt><i>parent</i> (QWidget)</dt>
+<dd>
+reference to the parent widget
 </dd>
 </dl><a NAME="DownloadItem.__adjustSize" ID="DownloadItem.__adjustSize"></a>
 <h4>DownloadItem.__adjustSize</h4>
--- a/Documentation/Source/eric6.WebBrowser.Download.DownloadManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.Download.DownloadManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -43,7 +43,14 @@
 <h2>DownloadManager</h2>
 <p>
     Class implementing the download manager.
-</p>
+</p><h3>Signals</h3>
+<dl>
+<dt>downloadsCountChanged()</dt>
+<dd>
+emitted to indicate a change of the
+        count of download items
+</dd>
+</dl>
 <h3>Derived from</h3>
 QDialog, Ui_DownloadManager
 <h3>Class Attributes</h3>
@@ -105,7 +112,7 @@
 <td><a href="#DownloadManager.__updateRow">__updateRow</a></td>
 <td>Private slot to update a download item.</td>
 </tr><tr>
-<td><a href="#DownloadManager.activeDownloads">activeDownloads</a></td>
+<td><a href="#DownloadManager.activeDownloadsCount">activeDownloadsCount</a></td>
 <td>Public method to get the number of active downloads.</td>
 </tr><tr>
 <td><a href="#DownloadManager.allowQuit">allowQuit</a></td>
@@ -120,9 +127,6 @@
 <td><a href="#DownloadManager.closeEvent">closeEvent</a></td>
 <td>Protected event handler for the close event.</td>
 </tr><tr>
-<td><a href="#DownloadManager.count">count</a></td>
-<td>Public method to get the number of downloads.</td>
-</tr><tr>
 <td><a href="#DownloadManager.download">download</a></td>
 <td>Public method to download a file.</td>
 </tr><tr>
@@ -132,6 +136,9 @@
 <td><a href="#DownloadManager.downloads">downloads</a></td>
 <td>Public method to get a reference to the downloads.</td>
 </tr><tr>
+<td><a href="#DownloadManager.downloadsCount">downloadsCount</a></td>
+<td>Public method to get the number of downloads.</td>
+</tr><tr>
 <td><a href="#DownloadManager.on_cleanupButton_clicked">on_cleanupButton_clicked</a></td>
 <td>Private slot cleanup the downloads.</td>
 </tr><tr>
@@ -255,17 +262,17 @@
         Private method to update the count label.
 </p><a NAME="DownloadManager.__updateRow" ID="DownloadManager.__updateRow"></a>
 <h4>DownloadManager.__updateRow</h4>
-<b>__updateRow</b>(<i>itm=None</i>)
+<b>__updateRow</b>(<i>itm</i>)
 <p>
         Private slot to update a download item.
 </p><dl>
-<dt><i>itm</i></dt>
+<dt><i>itm</i> (DownloadItem)</dt>
 <dd>
-reference to the download item (DownloadItem)
+reference to the download item
 </dd>
-</dl><a NAME="DownloadManager.activeDownloads" ID="DownloadManager.activeDownloads"></a>
-<h4>DownloadManager.activeDownloads</h4>
-<b>activeDownloads</b>(<i></i>)
+</dl><a NAME="DownloadManager.activeDownloadsCount" ID="DownloadManager.activeDownloadsCount"></a>
+<h4>DownloadManager.activeDownloadsCount</h4>
+<b>activeDownloadsCount</b>(<i></i>)
 <p>
         Public method to get the number of active downloads.
 </p><dl>
@@ -303,16 +310,6 @@
 <dd>
 reference to the close event
 </dd>
-</dl><a NAME="DownloadManager.count" ID="DownloadManager.count"></a>
-<h4>DownloadManager.count</h4>
-<b>count</b>(<i></i>)
-<p>
-        Public method to get the number of downloads.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-number of downloads (integer)
-</dd>
 </dl><a NAME="DownloadManager.download" ID="DownloadManager.download"></a>
 <h4>DownloadManager.download</h4>
 <b>download</b>(<i>downloadItem</i>)
@@ -344,6 +341,21 @@
 <dd>
 reference to the downloads (list of DownloadItem)
 </dd>
+</dl><a NAME="DownloadManager.downloadsCount" ID="DownloadManager.downloadsCount"></a>
+<h4>DownloadManager.downloadsCount</h4>
+<b>downloadsCount</b>(<i></i>)
+<p>
+        Public method to get the number of downloads.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+number of downloads
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+int
+</dd>
 </dl><a NAME="DownloadManager.on_cleanupButton_clicked" ID="DownloadManager.on_cleanupButton_clicked"></a>
 <h4>DownloadManager.on_cleanupButton_clicked</h4>
 <b>on_cleanupButton_clicked</b>(<i></i>)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Documentation/Source/eric6.WebBrowser.Download.DownloadManagerButton.html	Fri Mar 02 19:35:16 2018 +0100
@@ -0,0 +1,97 @@
+<!DOCTYPE html>
+<html><head>
+<title>eric6.WebBrowser.Download.DownloadManagerButton</title>
+<meta charset="UTF-8">
+<style>
+body {
+    background: #EDECE6;
+    margin: 0em 1em 10em 1em;
+    color: black;
+}
+
+h1 { color: white; background: #85774A; }
+h2 { color: white; background: #85774A; }
+h3 { color: white; background: #9D936E; }
+h4 { color: white; background: #9D936E; }
+    
+a { color: #BA6D36; }
+
+</style>
+</head>
+<body><a NAME="top" ID="top"></a>
+<h1>eric6.WebBrowser.Download.DownloadManagerButton</h1>
+<p>
+Module implementing a tool button for the download manager.
+</p>
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#DownloadManagerButton">DownloadManagerButton</a></td>
+<td>Class implementing a tool button for the download manager.</td>
+</tr>
+</table>
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<hr /><hr />
+<a NAME="DownloadManagerButton" ID="DownloadManagerButton"></a>
+<h2>DownloadManagerButton</h2>
+<p>
+    Class implementing a tool button for the download manager.
+</p>
+<h3>Derived from</h3>
+E5ToolButton
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#DownloadManagerButton.__init__">DownloadManagerButton</a></td>
+<td>Constructor</td>
+</tr><tr>
+<td><a href="#DownloadManagerButton.__buttonClicked">__buttonClicked</a></td>
+<td>Private slot handling a user clicking the button.</td>
+</tr><tr>
+<td><a href="#DownloadManagerButton.__updateState">__updateState</a></td>
+<td>Private slot to update the button state.</td>
+</tr>
+</table>
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<a NAME="DownloadManagerButton.__init__" ID="DownloadManagerButton.__init__"></a>
+<h4>DownloadManagerButton (Constructor)</h4>
+<b>DownloadManagerButton</b>(<i>parent=None</i>)
+<p>
+        Constructor
+</p><dl>
+<dt><i>parent</i> (QWidget)</dt>
+<dd>
+reference to the parent widget
+</dd>
+</dl><a NAME="DownloadManagerButton.__buttonClicked" ID="DownloadManagerButton.__buttonClicked"></a>
+<h4>DownloadManagerButton.__buttonClicked</h4>
+<b>__buttonClicked</b>(<i></i>)
+<p>
+        Private slot handling a user clicking the button.
+</p><a NAME="DownloadManagerButton.__updateState" ID="DownloadManagerButton.__updateState"></a>
+<h4>DownloadManagerButton.__updateState</h4>
+<b>__updateState</b>(<i></i>)
+<p>
+        Private slot to update the button state.
+</p>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
\ No newline at end of file
--- a/Documentation/Source/eric6.WebBrowser.Feeds.FeedsDialog.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.Feeds.FeedsDialog.html	Fri Mar 02 19:35:16 2018 +0100
@@ -87,10 +87,15 @@
 </dd>
 </dl><a NAME="FeedsDialog.__addFeed" ID="FeedsDialog.__addFeed"></a>
 <h4>FeedsDialog.__addFeed</h4>
-<b>__addFeed</b>(<i></i>)
+<b>__addFeed</b>(<i>button</i>)
 <p>
         Private slot to add a RSS feed.
-</p>
+</p><dl>
+<dt><i>button</i> (QPushButton)</dt>
+<dd>
+reference to the feed button
+</dd>
+</dl>
 <div align="right"><a href="#top">Up</a></div>
 <hr />
 </body></html>
\ No newline at end of file
--- a/Documentation/Source/eric6.WebBrowser.Feeds.FeedsManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.Feeds.FeedsManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -197,10 +197,15 @@
         Private slot to disable/enable various buttons.
 </p><a NAME="FeedsManager.__feedLoaded" ID="FeedsManager.__feedLoaded"></a>
 <h4>FeedsManager.__feedLoaded</h4>
-<b>__feedLoaded</b>(<i></i>)
+<b>__feedLoaded</b>(<i>reply</i>)
 <p>
         Private slot to extract the loaded feed data.
-</p><a NAME="FeedsManager.__itemActivated" ID="FeedsManager.__itemActivated"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="FeedsManager.__itemActivated" ID="FeedsManager.__itemActivated"></a>
 <h4>FeedsManager.__itemActivated</h4>
 <b>__itemActivated</b>(<i>itm, column</i>)
 <p>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Documentation/Source/eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.html	Fri Mar 02 19:35:16 2018 +0100
@@ -0,0 +1,216 @@
+<!DOCTYPE html>
+<html><head>
+<title>eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject</title>
+<meta charset="UTF-8">
+<style>
+body {
+    background: #EDECE6;
+    margin: 0em 1em 10em 1em;
+    color: black;
+}
+
+h1 { color: white; background: #85774A; }
+h2 { color: white; background: #85774A; }
+h3 { color: white; background: #9D936E; }
+h4 { color: white; background: #9D936E; }
+    
+a { color: #BA6D36; }
+
+</style>
+</head>
+<body><a NAME="top" ID="top"></a>
+<h1>eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject</h1>
+<p>
+Module implementing the Python side for GreaseMonkey scripts.
+</p>
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#GreaseMonkeyJsObject">GreaseMonkeyJsObject</a></td>
+<td>Class implementing the Python side for GreaseMonkey scripts.</td>
+</tr>
+</table>
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<hr /><hr />
+<a NAME="GreaseMonkeyJsObject" ID="GreaseMonkeyJsObject"></a>
+<h2>GreaseMonkeyJsObject</h2>
+<p>
+    Class implementing the Python side for GreaseMonkey scripts.
+</p>
+<h3>Derived from</h3>
+QObject
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#GreaseMonkeyJsObject.__init__">GreaseMonkeyJsObject</a></td>
+<td>Constructor</td>
+</tr><tr>
+<td><a href="#GreaseMonkeyJsObject.deleteValue">deleteValue</a></td>
+<td>Public slot to set delete the named variable for the identified script.</td>
+</tr><tr>
+<td><a href="#GreaseMonkeyJsObject.getValue">getValue</a></td>
+<td>Public slot to get the value for the named variable for the identified script.</td>
+</tr><tr>
+<td><a href="#GreaseMonkeyJsObject.listValues">listValues</a></td>
+<td>Public slot to list the stored variables for the identified script.</td>
+</tr><tr>
+<td><a href="#GreaseMonkeyJsObject.setClipboard">setClipboard</a></td>
+<td>Public slot to set some clipboard text.</td>
+</tr><tr>
+<td><a href="#GreaseMonkeyJsObject.setSettingsFile">setSettingsFile</a></td>
+<td>Public method to set the settings file for the GreaseMonkey parameters.</td>
+</tr><tr>
+<td><a href="#GreaseMonkeyJsObject.setValue">setValue</a></td>
+<td>Public slot to set the value for the named variable for the identified script.</td>
+</tr>
+</table>
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<a NAME="GreaseMonkeyJsObject.__init__" ID="GreaseMonkeyJsObject.__init__"></a>
+<h4>GreaseMonkeyJsObject (Constructor)</h4>
+<b>GreaseMonkeyJsObject</b>(<i>parent=None</i>)
+<p>
+        Constructor
+</p><dl>
+<dt><i>parent</i> (QObject)</dt>
+<dd>
+reference to the parent object
+</dd>
+</dl><a NAME="GreaseMonkeyJsObject.deleteValue" ID="GreaseMonkeyJsObject.deleteValue"></a>
+<h4>GreaseMonkeyJsObject.deleteValue</h4>
+<b>deleteValue</b>(<i>nspace, name</i>)
+<p>
+        Public slot to set delete the named variable for the identified script.
+</p><dl>
+<dt><i>nspace</i> (str)</dt>
+<dd>
+unique script id
+</dd><dt><i>name</i> (str)</dt>
+<dd>
+name of the variable
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating success
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl><a NAME="GreaseMonkeyJsObject.getValue" ID="GreaseMonkeyJsObject.getValue"></a>
+<h4>GreaseMonkeyJsObject.getValue</h4>
+<b>getValue</b>(<i>nspace, name, dValue</i>)
+<p>
+        Public slot to get the value for the named variable for the identified
+        script.
+</p><dl>
+<dt><i>nspace</i> (str)</dt>
+<dd>
+unique script id
+</dd><dt><i>name</i> (str)</dt>
+<dd>
+name of the variable
+</dd><dt><i>dValue</i> (str)</dt>
+<dd>
+default value
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+value for the named variable
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl><a NAME="GreaseMonkeyJsObject.listValues" ID="GreaseMonkeyJsObject.listValues"></a>
+<h4>GreaseMonkeyJsObject.listValues</h4>
+<b>listValues</b>(<i>nspace</i>)
+<p>
+        Public slot to list the stored variables for the identified script.
+</p><dl>
+<dt><i>nspace</i> (str)</dt>
+<dd>
+unique script id
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+list of stored variables
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
+</dd>
+</dl><a NAME="GreaseMonkeyJsObject.setClipboard" ID="GreaseMonkeyJsObject.setClipboard"></a>
+<h4>GreaseMonkeyJsObject.setClipboard</h4>
+<b>setClipboard</b>(<i>text</i>)
+<p>
+        Public slot to set some clipboard text.
+</p><dl>
+<dt><i>text</i> (str)</dt>
+<dd>
+text to be copied to the clipboard
+</dd>
+</dl><a NAME="GreaseMonkeyJsObject.setSettingsFile" ID="GreaseMonkeyJsObject.setSettingsFile"></a>
+<h4>GreaseMonkeyJsObject.setSettingsFile</h4>
+<b>setSettingsFile</b>(<i>name</i>)
+<p>
+        Public method to set the settings file for the GreaseMonkey parameters.
+</p><dl>
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the settings file
+</dd>
+</dl><a NAME="GreaseMonkeyJsObject.setValue" ID="GreaseMonkeyJsObject.setValue"></a>
+<h4>GreaseMonkeyJsObject.setValue</h4>
+<b>setValue</b>(<i>nspace, name, value</i>)
+<p>
+        Public slot to set the value for the named variable for the identified
+        script.
+</p><dl>
+<dt><i>nspace</i> (str)</dt>
+<dd>
+unique script id
+</dd><dt><i>name</i> (str)</dt>
+<dd>
+name of the variable
+</dd><dt><i>value</i> (str)</dt>
+<dd>
+value to be set
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating success
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
\ No newline at end of file
--- a/Documentation/Source/eric6.WebBrowser.GreaseMonkey.GreaseMonkeyManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.GreaseMonkey.GreaseMonkeyManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -134,13 +134,16 @@
 </dd>
 </dl><a NAME="GreaseMonkeyManager.__downloaderFinished" ID="GreaseMonkeyManager.__downloaderFinished"></a>
 <h4>GreaseMonkeyManager.__downloaderFinished</h4>
-<b>__downloaderFinished</b>(<i>fileName</i>)
+<b>__downloaderFinished</b>(<i>fileName, downloader</i>)
 <p>
         Private slot to handle the completion of a script download.
 </p><dl>
 <dt><i>fileName</i> (str)</dt>
 <dd>
 name of the downloaded script
+</dd><dt><i>downloader</i> (GreaseMonkeyDownloader)</dt>
+<dd>
+reference to the downloader object
 </dd>
 </dl><a NAME="GreaseMonkeyManager.__load" ID="GreaseMonkeyManager.__load"></a>
 <h4>GreaseMonkeyManager.__load</h4>
@@ -149,10 +152,15 @@
         Private slot to load the available scripts into the manager.
 </p><a NAME="GreaseMonkeyManager.__scriptChanged" ID="GreaseMonkeyManager.__scriptChanged"></a>
 <h4>GreaseMonkeyManager.__scriptChanged</h4>
-<b>__scriptChanged</b>(<i></i>)
+<b>__scriptChanged</b>(<i>script</i>)
 <p>
         Private slot handling a changed script.
-</p><a NAME="GreaseMonkeyManager.addScript" ID="GreaseMonkeyManager.addScript"></a>
+</p><dl>
+<dt><i>script</i> (GreaseMonkeyScript)</dt>
+<dd>
+reference to the changed script
+</dd>
+</dl><a NAME="GreaseMonkeyManager.addScript" ID="GreaseMonkeyManager.addScript"></a>
 <h4>GreaseMonkeyManager.addScript</h4>
 <b>addScript</b>(<i>script</i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.GreaseMonkey.GreaseMonkeyScript.html	Fri Mar 02 19:35:16 2018 +0100
@@ -70,6 +70,9 @@
 <td><a href="#GreaseMonkeyScript.__init__">GreaseMonkeyScript</a></td>
 <td>Constructor</td>
 </tr><tr>
+<td><a href="#GreaseMonkeyScript.__downloadIcon">__downloadIcon</a></td>
+<td>Private slot to download the script icon.</td>
+</tr><tr>
 <td><a href="#GreaseMonkeyScript.__downloadRequires">__downloadRequires</a></td>
 <td>Private method to download the required scripts.</td>
 </tr><tr>
@@ -79,6 +82,9 @@
 <td><a href="#GreaseMonkeyScript.__downloaderFinished">__downloaderFinished</a></td>
 <td>Private slot to handle a finished download.</td>
 </tr><tr>
+<td><a href="#GreaseMonkeyScript.__iconDownloaded">__iconDownloaded</a></td>
+<td>Private slot to handle a finished download of a script icon.</td>
+</tr><tr>
 <td><a href="#GreaseMonkeyScript.__parseScript">__parseScript</a></td>
 <td>Private method to parse the given script and populate the data structure.</td>
 </tr><tr>
@@ -112,6 +118,12 @@
 <td><a href="#GreaseMonkeyScript.fullName">fullName</a></td>
 <td>Public method to get the full name of the script.</td>
 </tr><tr>
+<td><a href="#GreaseMonkeyScript.icon">icon</a></td>
+<td>Public method to get the icon of the script.</td>
+</tr><tr>
+<td><a href="#GreaseMonkeyScript.iconUrl">iconUrl</a></td>
+<td>Public method to get the icon URL of the script.</td>
+</tr><tr>
 <td><a href="#GreaseMonkeyScript.include">include</a></td>
 <td>Public method to get the list of included URLs.</td>
 </tr><tr>
@@ -172,22 +184,47 @@
 <dd>
 path of the Javascript file (string)
 </dd>
-</dl><a NAME="GreaseMonkeyScript.__downloadRequires" ID="GreaseMonkeyScript.__downloadRequires"></a>
+</dl><a NAME="GreaseMonkeyScript.__downloadIcon" ID="GreaseMonkeyScript.__downloadIcon"></a>
+<h4>GreaseMonkeyScript.__downloadIcon</h4>
+<b>__downloadIcon</b>(<i></i>)
+<p>
+        Private slot to download the script icon.
+</p><a NAME="GreaseMonkeyScript.__downloadRequires" ID="GreaseMonkeyScript.__downloadRequires"></a>
 <h4>GreaseMonkeyScript.__downloadRequires</h4>
 <b>__downloadRequires</b>(<i></i>)
 <p>
         Private method to download the required scripts.
 </p><a NAME="GreaseMonkeyScript.__downloaderError" ID="GreaseMonkeyScript.__downloaderError"></a>
 <h4>GreaseMonkeyScript.__downloaderError</h4>
-<b>__downloaderError</b>(<i></i>)
+<b>__downloaderError</b>(<i>downloader</i>)
 <p>
         Private slot to handle a downloader error.
-</p><a NAME="GreaseMonkeyScript.__downloaderFinished" ID="GreaseMonkeyScript.__downloaderFinished"></a>
+</p><dl>
+<dt><i>downloader</i> (GreaseMonkeyDownloader)</dt>
+<dd>
+reference to the downloader object
+</dd>
+</dl><a NAME="GreaseMonkeyScript.__downloaderFinished" ID="GreaseMonkeyScript.__downloaderFinished"></a>
 <h4>GreaseMonkeyScript.__downloaderFinished</h4>
-<b>__downloaderFinished</b>(<i></i>)
+<b>__downloaderFinished</b>(<i>downloader</i>)
 <p>
         Private slot to handle a finished download.
-</p><a NAME="GreaseMonkeyScript.__parseScript" ID="GreaseMonkeyScript.__parseScript"></a>
+</p><dl>
+<dt><i>downloader</i> (GreaseMonkeyDownloader)</dt>
+<dd>
+reference to the downloader object
+</dd>
+</dl><a NAME="GreaseMonkeyScript.__iconDownloaded" ID="GreaseMonkeyScript.__iconDownloaded"></a>
+<h4>GreaseMonkeyScript.__iconDownloaded</h4>
+<b>__iconDownloaded</b>(<i>reply</i>)
+<p>
+        Private slot to handle a finished download of a script icon.
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="GreaseMonkeyScript.__parseScript" ID="GreaseMonkeyScript.__parseScript"></a>
 <h4>GreaseMonkeyScript.__parseScript</h4>
 <b>__parseScript</b>(<i></i>)
 <p>
@@ -200,15 +237,25 @@
         Private method to reload the script.
 </p><a NAME="GreaseMonkeyScript.__requireDownloadError" ID="GreaseMonkeyScript.__requireDownloadError"></a>
 <h4>GreaseMonkeyScript.__requireDownloadError</h4>
-<b>__requireDownloadError</b>(<i></i>)
+<b>__requireDownloadError</b>(<i>downloader</i>)
 <p>
         Private slot to handle a downloader error.
-</p><a NAME="GreaseMonkeyScript.__requireDownloaded" ID="GreaseMonkeyScript.__requireDownloaded"></a>
+</p><dl>
+<dt><i>downloader</i> (GreaseMonkeyDownloader)</dt>
+<dd>
+reference to the downloader object
+</dd>
+</dl><a NAME="GreaseMonkeyScript.__requireDownloaded" ID="GreaseMonkeyScript.__requireDownloaded"></a>
 <h4>GreaseMonkeyScript.__requireDownloaded</h4>
-<b>__requireDownloaded</b>(<i></i>)
+<b>__requireDownloaded</b>(<i>downloader</i>)
 <p>
         Private slot to handle a finished download of a required script.
-</p><a NAME="GreaseMonkeyScript.__toJavaScriptList" ID="GreaseMonkeyScript.__toJavaScriptList"></a>
+</p><dl>
+<dt><i>downloader</i> (GreaseMonkeyDownloader)</dt>
+<dd>
+reference to the downloader object
+</dd>
+</dl><a NAME="GreaseMonkeyScript.__toJavaScriptList" ID="GreaseMonkeyScript.__toJavaScriptList"></a>
 <h4>GreaseMonkeyScript.__toJavaScriptList</h4>
 <b>__toJavaScriptList</b>(<i>patterns</i>)
 <p>
@@ -289,6 +336,31 @@
 <dd>
 full name of the script (string)
 </dd>
+</dl><a NAME="GreaseMonkeyScript.icon" ID="GreaseMonkeyScript.icon"></a>
+<h4>GreaseMonkeyScript.icon</h4>
+<b>icon</b>(<i></i>)
+<p>
+        Public method to get the icon of the script.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+script icon
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+QIcon
+</dd>
+</dl><a NAME="GreaseMonkeyScript.iconUrl" ID="GreaseMonkeyScript.iconUrl"></a>
+<h4>GreaseMonkeyScript.iconUrl</h4>
+<b>iconUrl</b>(<i></i>)
+<p>
+        Public method to get the icon URL of the script.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+icon URL of the script (QUrl)
+</dd>
 </dl><a NAME="GreaseMonkeyScript.include" ID="GreaseMonkeyScript.include"></a>
 <h4>GreaseMonkeyScript.include</h4>
 <b>include</b>(<i></i>)
--- a/Documentation/Source/eric6.WebBrowser.JavaScript.ExternalJsObject.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.JavaScript.ExternalJsObject.html	Fri Mar 02 19:35:16 2018 +0100
@@ -49,11 +49,20 @@
 QObject
 <h3>Class Attributes</h3>
 <table>
-<tr><td>None</td></tr>
+<tr><td>extraObjects</td></tr>
 </table>
 <h3>Class Methods</h3>
 <table>
-<tr><td>None</td></tr>
+<tr>
+<td><a href="#ExternalJsObject.registerExtraObject">registerExtraObject</a></td>
+<td>Class method to register extra JavaScript objects.</td>
+</tr><tr>
+<td><a href="#ExternalJsObject.setupWebChannel">setupWebChannel</a></td>
+<td>Class method to setup the web channel.</td>
+</tr><tr>
+<td><a href="#ExternalJsObject.unregisterExtraObject">unregisterExtraObject</a></td>
+<td>Class method to unregister extra JavaScript objects.</td>
+</tr>
 </table>
 <h3>Methods</h3>
 <table>
@@ -78,7 +87,43 @@
 <table>
 <tr><td>None</td></tr>
 </table>
-<a NAME="ExternalJsObject.__init__" ID="ExternalJsObject.__init__"></a>
+<a NAME="ExternalJsObject.registerExtraObject" ID="ExternalJsObject.registerExtraObject"></a>
+<h4>ExternalJsObject.registerExtraObject (class method)</h4>
+<b>registerExtraObject</b>(<i>name, jsObject</i>)
+<p>
+        Class method to register extra JavaScript objects.
+</p><dl>
+<dt><i>name</i> (str)</dt>
+<dd>
+name for the object
+</dd><dt><i>jsObject</i> (QObject)</dt>
+<dd>
+reference to the JavaScript object to be registered
+</dd>
+</dl><a NAME="ExternalJsObject.setupWebChannel" ID="ExternalJsObject.setupWebChannel"></a>
+<h4>ExternalJsObject.setupWebChannel (class method)</h4>
+<b>setupWebChannel</b>(<i>channel, page</i>)
+<p>
+        Class method to setup the web channel.
+</p><dl>
+<dt><i>channel</i> (QWebChannel)</dt>
+<dd>
+reference to the channel
+</dd><dt><i>page</i> (QWebEnginePage)</dt>
+<dd>
+reference to the web page
+</dd>
+</dl><a NAME="ExternalJsObject.unregisterExtraObject" ID="ExternalJsObject.unregisterExtraObject"></a>
+<h4>ExternalJsObject.unregisterExtraObject (class method)</h4>
+<b>unregisterExtraObject</b>(<i>name</i>)
+<p>
+        Class method to unregister extra JavaScript objects.
+</p><dl>
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the object
+</dd>
+</dl><a NAME="ExternalJsObject.__init__" ID="ExternalJsObject.__init__"></a>
 <h4>ExternalJsObject (Constructor)</h4>
 <b>ExternalJsObject</b>(<i>page</i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.Network.EricSchemeHandler.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.Network.EricSchemeHandler.html	Fri Mar 02 19:35:16 2018 +0100
@@ -86,10 +86,15 @@
 </dd>
 </dl><a NAME="EricSchemeHandler.__replyClosed" ID="EricSchemeHandler.__replyClosed"></a>
 <h4>EricSchemeHandler.__replyClosed</h4>
-<b>__replyClosed</b>(<i></i>)
+<b>__replyClosed</b>(<i>reply</i>)
 <p>
         Private slot handling the closed signal of a reply.
-</p><a NAME="EricSchemeHandler.requestStarted" ID="EricSchemeHandler.requestStarted"></a>
+</p><dl>
+<dt><i>reply</i> (EricSchemeReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="EricSchemeHandler.requestStarted" ID="EricSchemeHandler.requestStarted"></a>
 <h4>EricSchemeHandler.requestStarted</h4>
 <b>requestStarted</b>(<i>job</i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.Network.NetworkManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.Network.NetworkManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -151,16 +151,19 @@
 </dd>
 </dl><a NAME="NetworkManager.authentication" ID="NetworkManager.authentication"></a>
 <h4>NetworkManager.authentication</h4>
-<b>authentication</b>(<i>url, auth</i>)
+<b>authentication</b>(<i>url, auth, page=None</i>)
 <p>
         Public slot to handle an authentication request.
 </p><dl>
-<dt><i>url</i></dt>
+<dt><i>url</i> (QUrl)</dt>
+<dd>
+URL requesting authentication
+</dd><dt><i>auth</i> (QAuthenticator)</dt>
 <dd>
-URL requesting authentication (QUrl)
-</dd><dt><i>auth</i></dt>
+reference to the authenticator object
+</dd><dt><i>page</i> (QWebEnginePage or None)</dt>
 <dd>
-reference to the authenticator object (QAuthenticator)
+reference to the web page
 </dd>
 </dl><a NAME="NetworkManager.certificateError" ID="NetworkManager.certificateError"></a>
 <h4>NetworkManager.certificateError</h4>
--- a/Documentation/Source/eric6.WebBrowser.Network.QtHelpSchemeHandler.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.Network.QtHelpSchemeHandler.html	Fri Mar 02 19:35:16 2018 +0100
@@ -89,10 +89,15 @@
 </dd>
 </dl><a NAME="QtHelpSchemeHandler.__replyClosed" ID="QtHelpSchemeHandler.__replyClosed"></a>
 <h4>QtHelpSchemeHandler.__replyClosed</h4>
-<b>__replyClosed</b>(<i></i>)
+<b>__replyClosed</b>(<i>reply</i>)
 <p>
         Private slot handling the closed signal of a reply.
-</p><a NAME="QtHelpSchemeHandler.requestStarted" ID="QtHelpSchemeHandler.requestStarted"></a>
+</p><dl>
+<dt><i>reply</i> (QtHelpSchemeReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="QtHelpSchemeHandler.requestStarted" ID="QtHelpSchemeHandler.requestStarted"></a>
 <h4>QtHelpSchemeHandler.requestStarted</h4>
 <b>requestStarted</b>(<i>job</i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.OpenSearch.OpenSearchEngine.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.OpenSearch.OpenSearchEngine.html	Fri Mar 02 19:35:16 2018 +0100
@@ -222,10 +222,15 @@
 </dd>
 </dl><a NAME="OpenSearchEngine.__imageObtained" ID="OpenSearchEngine.__imageObtained"></a>
 <h4>OpenSearchEngine.__imageObtained</h4>
-<b>__imageObtained</b>(<i></i>)
+<b>__imageObtained</b>(<i>reply</i>)
 <p>
         Private slot to receive the image of the engine.
-</p><a NAME="OpenSearchEngine.__lt__" ID="OpenSearchEngine.__lt__"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="OpenSearchEngine.__lt__" ID="OpenSearchEngine.__lt__"></a>
 <h4>OpenSearchEngine.__lt__</h4>
 <b>__lt__</b>(<i>other</i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.OpenSearch.OpenSearchManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.OpenSearch.OpenSearchManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -239,10 +239,15 @@
 </dd>
 </dl><a NAME="OpenSearchManager.__engineFromUrlAvailable" ID="OpenSearchManager.__engineFromUrlAvailable"></a>
 <h4>OpenSearchManager.__engineFromUrlAvailable</h4>
-<b>__engineFromUrlAvailable</b>(<i></i>)
+<b>__engineFromUrlAvailable</b>(<i>reply</i>)
 <p>
         Private slot to add a search engine from the net.
-</p><a NAME="OpenSearchManager.addEngine" ID="OpenSearchManager.addEngine"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="OpenSearchManager.addEngine" ID="OpenSearchManager.addEngine"></a>
 <h4>OpenSearchManager.addEngine</h4>
 <b>addEngine</b>(<i>engine</i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.PageScreenDialog.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.PageScreenDialog.html	Fri Mar 02 19:35:16 2018 +0100
@@ -76,7 +76,7 @@
 </table>
 <a NAME="PageScreenDialog.__init__" ID="PageScreenDialog.__init__"></a>
 <h4>PageScreenDialog (Constructor)</h4>
-<b>PageScreenDialog</b>(<i>view, visibleOnly=False, parent=None</i>)
+<b>PageScreenDialog</b>(<i>view, parent=None</i>)
 <p>
         Constructor
 </p><dl>
@@ -84,26 +84,16 @@
 <dd>
 reference to the web view containing the page to be saved
             (WebBrowserView)
-</dd><dt><i>visibleOnly</i></dt>
-<dd>
-flag indicating to just save the visible part
-            of the page (boolean)
 </dd><dt><i>parent</i></dt>
 <dd>
 reference to the parent widget (QWidget)
 </dd>
 </dl><a NAME="PageScreenDialog.__createPixmap" ID="PageScreenDialog.__createPixmap"></a>
 <h4>PageScreenDialog.__createPixmap</h4>
-<b>__createPixmap</b>(<i>visibleOnly</i>)
+<b>__createPixmap</b>(<i></i>)
 <p>
         Private slot to create a pixmap of the associated view's page.
-</p><dl>
-<dt><i>visibleOnly</i></dt>
-<dd>
-flag indicating to just save the visible part
-            of the page (boolean)
-</dd>
-</dl><a NAME="PageScreenDialog.__savePageScreen" ID="PageScreenDialog.__savePageScreen"></a>
+</p><a NAME="PageScreenDialog.__savePageScreen" ID="PageScreenDialog.__savePageScreen"></a>
 <h4>PageScreenDialog.__savePageScreen</h4>
 <b>__savePageScreen</b>(<i></i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.PersonalInformationManager.PersonalInformationManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.PersonalInformationManager.PersonalInformationManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -103,10 +103,15 @@
 </dd>
 </dl><a NAME="PersonalInformationManager.__insertData" ID="PersonalInformationManager.__insertData"></a>
 <h4>PersonalInformationManager.__insertData</h4>
-<b>__insertData</b>(<i></i>)
+<b>__insertData</b>(<i>act</i>)
 <p>
         Private slot to insert the selected personal information.
-</p><a NAME="PersonalInformationManager.__loadSettings" ID="PersonalInformationManager.__loadSettings"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="PersonalInformationManager.__loadSettings" ID="PersonalInformationManager.__loadSettings"></a>
 <h4>PersonalInformationManager.__loadSettings</h4>
 <b>__loadSettings</b>(<i></i>)
 <p>
@@ -128,13 +133,16 @@
 </dd>
 </dl><a NAME="PersonalInformationManager.__pageLoadFinished" ID="PersonalInformationManager.__pageLoadFinished"></a>
 <h4>PersonalInformationManager.__pageLoadFinished</h4>
-<b>__pageLoadFinished</b>(<i>ok</i>)
+<b>__pageLoadFinished</b>(<i>ok, page</i>)
 <p>
         Private slot to handle the completion of a page load.
 </p><dl>
-<dt><i>ok</i></dt>
+<dt><i>ok</i> (bool)</dt>
 <dd>
-flag indicating a successful load (boolean)
+flag indicating a successful load
+</dd><dt><i>page</i> (WebBrowserPage)</dt>
+<dd>
+reference to the web page object
 </dd>
 </dl><a NAME="PersonalInformationManager.connectPage" ID="PersonalInformationManager.connectPage"></a>
 <h4>PersonalInformationManager.connectPage</h4>
@@ -143,9 +151,9 @@
         Public method to allow the personal information manager to connect to
         the page.
 </p><dl>
-<dt><i>page</i></dt>
+<dt><i>page</i> (WebBrowserPage)</dt>
 <dd>
-reference to the web page (HelpWebPage)
+reference to the web page
 </dd>
 </dl><a NAME="PersonalInformationManager.createSubMenu" ID="PersonalInformationManager.createSubMenu"></a>
 <h4>PersonalInformationManager.createSubMenu</h4>
--- a/Documentation/Source/eric6.WebBrowser.Session.SessionManager.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.Session.SessionManager.html	Fri Mar 02 19:35:16 2018 +0100
@@ -278,20 +278,30 @@
 </dd>
 </dl><a NAME="SessionManager.__sessionActTriggered" ID="SessionManager.__sessionActTriggered"></a>
 <h4>SessionManager.__sessionActTriggered</h4>
-<b>__sessionActTriggered</b>(<i></i>)
+<b>__sessionActTriggered</b>(<i>act</i>)
 <p>
         Private slot to handle the menu selection of a session.
-</p><a NAME="SessionManager.__sessionDirectoryChanged" ID="SessionManager.__sessionDirectoryChanged"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="SessionManager.__sessionDirectoryChanged" ID="SessionManager.__sessionDirectoryChanged"></a>
 <h4>SessionManager.__sessionDirectoryChanged</h4>
 <b>__sessionDirectoryChanged</b>(<i></i>)
 <p>
         Private slot handling changes of the sessions directory.
 </p><a NAME="SessionManager.aboutToShowSessionsMenu" ID="SessionManager.aboutToShowSessionsMenu"></a>
 <h4>SessionManager.aboutToShowSessionsMenu</h4>
-<b>aboutToShowSessionsMenu</b>(<i></i>)
+<b>aboutToShowSessionsMenu</b>(<i>menu</i>)
 <p>
         Public slot to populate the sessions selection menu.
-</p><a NAME="SessionManager.activateTimer" ID="SessionManager.activateTimer"></a>
+</p><dl>
+<dt><i>menu</i> (QMenu)</dt>
+<dd>
+reference to the menu about to be shown
+</dd>
+</dl><a NAME="SessionManager.activateTimer" ID="SessionManager.activateTimer"></a>
 <h4>SessionManager.activateTimer</h4>
 <b>activateTimer</b>(<i></i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.SiteInfo.SiteInfoDialog.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.SiteInfo.SiteInfoDialog.html	Fri Mar 02 19:35:16 2018 +0100
@@ -107,10 +107,15 @@
 </dd>
 </dl><a NAME="SiteInfoDialog.__copyAction" ID="SiteInfoDialog.__copyAction"></a>
 <h4>SiteInfoDialog.__copyAction</h4>
-<b>__copyAction</b>(<i></i>)
+<b>__copyAction</b>(<i>act</i>)
 <p>
         Private slot to copy the image URL or the image name to the clipboard.
-</p><a NAME="SiteInfoDialog.__imageReplyFinished" ID="SiteInfoDialog.__imageReplyFinished"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="SiteInfoDialog.__imageReplyFinished" ID="SiteInfoDialog.__imageReplyFinished"></a>
 <h4>SiteInfoDialog.__imageReplyFinished</h4>
 <b>__imageReplyFinished</b>(<i></i>)
 <p>
@@ -147,10 +152,15 @@
 </dd>
 </dl><a NAME="SiteInfoDialog.__saveImage" ID="SiteInfoDialog.__saveImage"></a>
 <h4>SiteInfoDialog.__saveImage</h4>
-<b>__saveImage</b>(<i></i>)
+<b>__saveImage</b>(<i>act</i>)
 <p>
         Private slot to save the selected image to disk.
-</p><a NAME="SiteInfoDialog.__showLoadingText" ID="SiteInfoDialog.__showLoadingText"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="SiteInfoDialog.__showLoadingText" ID="SiteInfoDialog.__showLoadingText"></a>
 <h4>SiteInfoDialog.__showLoadingText</h4>
 <b>__showLoadingText</b>(<i></i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.SpeedDial.SpeedDial.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.SpeedDial.SpeedDial.html	Fri Mar 02 19:35:16 2018 +0100
@@ -229,13 +229,16 @@
         Private method to load the speed dial configuration.
 </p><a NAME="SpeedDial.__thumbnailCreated" ID="SpeedDial.__thumbnailCreated"></a>
 <h4>SpeedDial.__thumbnailCreated</h4>
-<b>__thumbnailCreated</b>(<i>image</i>)
+<b>__thumbnailCreated</b>(<i>image, thumbnailer</i>)
 <p>
         Private slot to handle the creation of a thumbnail image.
 </p><dl>
-<dt><i>image</i></dt>
+<dt><i>image</i> (QPixmap)</dt>
 <dd>
-thumbnail image (QPixmap)
+thumbnail image
+</dd><dt><i>thumbnailer</i> (PageThumbnailer)</dt>
+<dd>
+reference to the page thumbnailer
 </dd>
 </dl><a NAME="SpeedDial.addPage" ID="SpeedDial.addPage"></a>
 <h4>SpeedDial.addPage</h4>
--- a/Documentation/Source/eric6.WebBrowser.SpellCheck.ManageDictionariesDialog.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.SpellCheck.ManageDictionariesDialog.html	Fri Mar 02 19:35:16 2018 +0100
@@ -163,10 +163,15 @@
 </dd>
 </dl><a NAME="ManageDictionariesDialog.__installDictionary" ID="ManageDictionariesDialog.__installDictionary"></a>
 <h4>ManageDictionariesDialog.__installDictionary</h4>
-<b>__installDictionary</b>(<i></i>)
+<b>__installDictionary</b>(<i>reply</i>)
 <p>
         Private slot to install the downloaded dictionary.
-</p><a NAME="ManageDictionariesDialog.__installSelected" ID="ManageDictionariesDialog.__installSelected"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="ManageDictionariesDialog.__installSelected" ID="ManageDictionariesDialog.__installSelected"></a>
 <h4>ManageDictionariesDialog.__installSelected</h4>
 <b>__installSelected</b>(<i></i>)
 <p>
@@ -194,11 +199,16 @@
 </dd>
 </dl><a NAME="ManageDictionariesDialog.__listFileDownloaded" ID="ManageDictionariesDialog.__listFileDownloaded"></a>
 <h4>ManageDictionariesDialog.__listFileDownloaded</h4>
-<b>__listFileDownloaded</b>(<i></i>)
+<b>__listFileDownloaded</b>(<i>reply</i>)
 <p>
         Private method called, after the dictionaries list file has been
         downloaded from the Internet.
-</p><a NAME="ManageDictionariesDialog.__onlineStateChanged" ID="ManageDictionariesDialog.__onlineStateChanged"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="ManageDictionariesDialog.__onlineStateChanged" ID="ManageDictionariesDialog.__onlineStateChanged"></a>
 <h4>ManageDictionariesDialog.__onlineStateChanged</h4>
 <b>__onlineStateChanged</b>(<i>online</i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.StatusBar.JavaScriptIcon.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.StatusBar.JavaScriptIcon.html	Fri Mar 02 19:35:16 2018 +0100
@@ -60,6 +60,9 @@
 <td><a href="#JavaScriptIcon.__init__">JavaScriptIcon</a></td>
 <td>Constructor</td>
 </tr><tr>
+<td><a href="#JavaScriptIcon.__navigationRequestAccepted">__navigationRequestAccepted</a></td>
+<td>Private method to handle the navigationRequestAccepted signal.</td>
+</tr><tr>
 <td><a href="#JavaScriptIcon.__showJavaScriptSettingsDialog">__showJavaScriptSettingsDialog</a></td>
 <td>Private slot to show the JavaScript settings dialog.</td>
 </tr><tr>
@@ -90,6 +93,26 @@
 <dd>
 reference to the web browser window
 </dd>
+</dl><a NAME="JavaScriptIcon.__navigationRequestAccepted" ID="JavaScriptIcon.__navigationRequestAccepted"></a>
+<h4>JavaScriptIcon.__navigationRequestAccepted</h4>
+<b>__navigationRequestAccepted</b>(<i>url, navigationType, isMainFrame, page</i>)
+<p>
+        Private method to handle the navigationRequestAccepted signal.
+</p><dl>
+<dt><i>url</i> (QUrl)</dt>
+<dd>
+URL being loaded
+</dd><dt><i>navigationType</i> (QWebEnginePage.NavigationType)</dt>
+<dd>
+type of navigation request
+</dd><dt><i>isMainFrame</i> (bool)</dt>
+<dd>
+flag indicating a navigation request of the
+            main frame
+</dd><dt><i>page</i> (WebBrowserPage)</dt>
+<dd>
+reference to the web page
+</dd>
 </dl><a NAME="JavaScriptIcon.__showJavaScriptSettingsDialog" ID="JavaScriptIcon.__showJavaScriptSettingsDialog"></a>
 <h4>JavaScriptIcon.__showJavaScriptSettingsDialog</h4>
 <b>__showJavaScriptSettingsDialog</b>(<i></i>)
--- a/Documentation/Source/eric6.WebBrowser.TabManager.TabManagerWidget.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.TabManager.TabManagerWidget.html	Fri Mar 02 19:35:16 2018 +0100
@@ -229,10 +229,15 @@
 </dd>
 </dl><a NAME="TabManagerWidget.__processActions" ID="TabManagerWidget.__processActions"></a>
 <h4>TabManagerWidget.__processActions</h4>
-<b>__processActions</b>(<i></i>)
+<b>__processActions</b>(<i>act</i>)
 <p>
         Private slot to process the actions.
-</p><a NAME="TabManagerWidget.__refreshTree" ID="TabManagerWidget.__refreshTree"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="TabManagerWidget.__refreshTree" ID="TabManagerWidget.__refreshTree"></a>
 <h4>TabManagerWidget.__refreshTree</h4>
 <b>__refreshTree</b>(<i></i>)
 <p>
@@ -342,10 +347,15 @@
 </dd>
 </dl><a NAME="TabManagerWidget.raiseTabManager" ID="TabManagerWidget.raiseTabManager"></a>
 <h4>TabManagerWidget.raiseTabManager</h4>
-<b>raiseTabManager</b>(<i></i>)
+<b>raiseTabManager</b>(<i>icon</i>)
 <p>
         Public slot to show the tab manager.
-</p>
+</p><dl>
+<dt><i>icon</i> (E5ClickableLabel or QAction)</dt>
+<dd>
+reference to the clicked icon
+</dd>
+</dl>
 <div align="right"><a href="#top">Up</a></div>
 <hr />
 </body></html>
\ No newline at end of file
--- a/Documentation/Source/eric6.WebBrowser.Tools.Scripts.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.Tools.Scripts.html	Fri Mar 02 19:35:16 2018 +0100
@@ -66,6 +66,9 @@
 </tr><tr>
 <td><a href="#setupWebChannel">setupWebChannel</a></td>
 <td>Function generating  a script to setup the web channel.</td>
+</tr><tr>
+<td><a href="#setupWindowObject">setupWindowObject</a></td>
+<td>Function generating a script to setup window.object add-ons.</td>
 </tr>
 </table>
 <hr /><hr />
@@ -279,10 +282,15 @@
 <hr /><hr />
 <a NAME="setupWebChannel" ID="setupWebChannel"></a>
 <h2>setupWebChannel</h2>
-<b>setupWebChannel</b>(<i></i>)
+<b>setupWebChannel</b>(<i>worldId</i>)
 <p>
     Function generating  a script to setup the web channel.
 </p><dl>
+<dt><i>worldId</i> (int)</dt>
+<dd>
+world ID for which to setup the channel
+</dd>
+</dl><dl>
 <dt>Returns:</dt>
 <dd>
 script to setup the web channel
@@ -294,5 +302,23 @@
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
+<hr /><hr />
+<a NAME="setupWindowObject" ID="setupWindowObject"></a>
+<h2>setupWindowObject</h2>
+<b>setupWindowObject</b>(<i></i>)
+<p>
+    Function generating a script to setup window.object add-ons.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+generated script
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
 <hr />
 </body></html>
\ No newline at end of file
--- a/Documentation/Source/eric6.WebBrowser.UserAgent.UserAgentMenu.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.UserAgent.UserAgentMenu.html	Fri Mar 02 19:35:16 2018 +0100
@@ -108,10 +108,15 @@
 </dd>
 </dl><a NAME="UserAgentMenu.__changeUserAgent" ID="UserAgentMenu.__changeUserAgent"></a>
 <h4>UserAgentMenu.__changeUserAgent</h4>
-<b>__changeUserAgent</b>(<i></i>)
+<b>__changeUserAgent</b>(<i>act</i>)
 <p>
         Private slot to change the user agent.
-</p><a NAME="UserAgentMenu.__populateMenu" ID="UserAgentMenu.__populateMenu"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="UserAgentMenu.__populateMenu" ID="UserAgentMenu.__populateMenu"></a>
 <h4>UserAgentMenu.__populateMenu</h4>
 <b>__populateMenu</b>(<i></i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.VirusTotal.VirusTotalApi.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.VirusTotal.VirusTotalApi.html	Fri Mar 02 19:35:16 2018 +0100
@@ -100,7 +100,7 @@
 <td>Private method to get the report URL for a URL scan.</td>
 </tr><tr>
 <td><a href="#VirusTotalAPI.__getUrlScanReportUrlFinished">__getUrlScanReportUrlFinished</a></td>
-<td>Private slot to determine the result of the URL scan report URL request.</td>
+<td>Private slot to determine the result of the URL scan report URL.</td>
 </tr><tr>
 <td><a href="#VirusTotalAPI.__loadSettings">__loadSettings</a></td>
 <td>Private method to load the settings.</td>
@@ -143,15 +143,25 @@
 </dd>
 </dl><a NAME="VirusTotalAPI.__checkServiceKeyValidityFinished" ID="VirusTotalAPI.__checkServiceKeyValidityFinished"></a>
 <h4>VirusTotalAPI.__checkServiceKeyValidityFinished</h4>
-<b>__checkServiceKeyValidityFinished</b>(<i></i>)
+<b>__checkServiceKeyValidityFinished</b>(<i>reply</i>)
 <p>
         Private slot to determine the result of the service key validity check.
-</p><a NAME="VirusTotalAPI.__getDomainReportFinished" ID="VirusTotalAPI.__getDomainReportFinished"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="VirusTotalAPI.__getDomainReportFinished" ID="VirusTotalAPI.__getDomainReportFinished"></a>
 <h4>VirusTotalAPI.__getDomainReportFinished</h4>
-<b>__getDomainReportFinished</b>(<i></i>)
+<b>__getDomainReportFinished</b>(<i>reply</i>)
 <p>
         Private slot to process the IP address report data.
-</p><a NAME="VirusTotalAPI.__getFileScanReportUrl" ID="VirusTotalAPI.__getFileScanReportUrl"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="VirusTotalAPI.__getFileScanReportUrl" ID="VirusTotalAPI.__getFileScanReportUrl"></a>
 <h4>VirusTotalAPI.__getFileScanReportUrl</h4>
 <b>__getFileScanReportUrl</b>(<i>scanId</i>)
 <p>
@@ -163,16 +173,26 @@
 </dd>
 </dl><a NAME="VirusTotalAPI.__getFileScanReportUrlFinished" ID="VirusTotalAPI.__getFileScanReportUrlFinished"></a>
 <h4>VirusTotalAPI.__getFileScanReportUrlFinished</h4>
-<b>__getFileScanReportUrlFinished</b>(<i></i>)
+<b>__getFileScanReportUrlFinished</b>(<i>reply</i>)
 <p>
         Private slot to determine the result of the file scan report URL
         request.
-</p><a NAME="VirusTotalAPI.__getIpAddressReportFinished" ID="VirusTotalAPI.__getIpAddressReportFinished"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="VirusTotalAPI.__getIpAddressReportFinished" ID="VirusTotalAPI.__getIpAddressReportFinished"></a>
 <h4>VirusTotalAPI.__getIpAddressReportFinished</h4>
-<b>__getIpAddressReportFinished</b>(<i></i>)
+<b>__getIpAddressReportFinished</b>(<i>reply</i>)
 <p>
         Private slot to process the IP address report data.
-</p><a NAME="VirusTotalAPI.__getUrlScanReportUrl" ID="VirusTotalAPI.__getUrlScanReportUrl"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="VirusTotalAPI.__getUrlScanReportUrl" ID="VirusTotalAPI.__getUrlScanReportUrl"></a>
 <h4>VirusTotalAPI.__getUrlScanReportUrl</h4>
 <b>__getUrlScanReportUrl</b>(<i>scanId</i>)
 <p>
@@ -184,21 +204,31 @@
 </dd>
 </dl><a NAME="VirusTotalAPI.__getUrlScanReportUrlFinished" ID="VirusTotalAPI.__getUrlScanReportUrlFinished"></a>
 <h4>VirusTotalAPI.__getUrlScanReportUrlFinished</h4>
-<b>__getUrlScanReportUrlFinished</b>(<i></i>)
+<b>__getUrlScanReportUrlFinished</b>(<i>reply</i>)
 <p>
-        Private slot to determine the result of the URL scan report URL
+        Private slot to determine the result of the URL scan report URL.
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
         request.
-</p><a NAME="VirusTotalAPI.__loadSettings" ID="VirusTotalAPI.__loadSettings"></a>
+</dd>
+</dl><a NAME="VirusTotalAPI.__loadSettings" ID="VirusTotalAPI.__loadSettings"></a>
 <h4>VirusTotalAPI.__loadSettings</h4>
 <b>__loadSettings</b>(<i></i>)
 <p>
         Private method to load the settings.
 </p><a NAME="VirusTotalAPI.__submitUrlFinished" ID="VirusTotalAPI.__submitUrlFinished"></a>
 <h4>VirusTotalAPI.__submitUrlFinished</h4>
-<b>__submitUrlFinished</b>(<i></i>)
+<b>__submitUrlFinished</b>(<i>reply</i>)
 <p>
         Private slot to determine the result of the URL scan submission.
-</p><a NAME="VirusTotalAPI.checkServiceKeyValidity" ID="VirusTotalAPI.checkServiceKeyValidity"></a>
+</p><dl>
+<dt><i>reply</i> (QNetworkReply)</dt>
+<dd>
+reference to the network reply
+</dd>
+</dl><a NAME="VirusTotalAPI.checkServiceKeyValidity" ID="VirusTotalAPI.checkServiceKeyValidity"></a>
 <h4>VirusTotalAPI.checkServiceKeyValidity</h4>
 <b>checkServiceKeyValidity</b>(<i>key, protocol=""</i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.WebBrowserPage.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.WebBrowserPage.html	Fri Mar 02 19:35:16 2018 +0100
@@ -45,7 +45,15 @@
     Class implementing an enhanced web page.
 </p><h3>Signals</h3>
 <dl>
-<dt>safeBrowsingAbort()</dt>
+<dt>navigationRequestAccepted(url, navigation type, main frame)</dt>
+<dd>
+emitted
+        to signal an accepted navigation request
+</dd><dt>printRequested()</dt>
+<dd>
+emitted to indicate a print request of the shown
+        web page
+</dd><dt>safeBrowsingAbort()</dt>
 <dd>
 emitted to indicate an abort due to a safe
         browsing event
@@ -59,7 +67,7 @@
 QWebEnginePage
 <h3>Class Attributes</h3>
 <table>
-<tr><td>SafeJsWorld</td></tr>
+<tr><td>SafeJsWorld</td></tr><tr><td>UnsafeJsWorld</td></tr>
 </table>
 <h3>Class Methods</h3>
 <table>
@@ -86,7 +94,13 @@
 <td><a href="#WebBrowserPage.__fullScreenRequested">__fullScreenRequested</a></td>
 <td>Private slot handling a full screen request.</td>
 </tr><tr>
-<td><a href="#WebBrowserPage.__setupWebChannel">__setupWebChannel</a></td>
+<td><a href="#WebBrowserPage.__loadProgressSlot">__loadProgressSlot</a></td>
+<td>Private slot to implement a workaround for the loadFinished signal not working properly in Qt 5.10.0.</td>
+</tr><tr>
+<td><a href="#WebBrowserPage.__setupChannelTimeout">__setupChannelTimeout</a></td>
+<td>Private slot to initiate the setup of the web channel.</td>
+</tr><tr>
+<td><a href="#WebBrowserPage.__setupWebChannelForUrl">__setupWebChannelForUrl</a></td>
 <td>Private method to setup a web channel to our external object.</td>
 </tr><tr>
 <td><a href="#WebBrowserPage.__urlChanged">__urlChanged</a></td>
@@ -139,9 +153,6 @@
 </tr><tr>
 <td><a href="#WebBrowserPage.scrollTo">scrollTo</a></td>
 <td>Public method to scroll to the given position.</td>
-</tr><tr>
-<td><a href="#WebBrowserPage.setJavaScriptEnabled">setJavaScriptEnabled</a></td>
-<td>Public method to enable JavaScript.</td>
 </tr>
 </table>
 <h3>Static Methods</h3>
@@ -222,12 +233,33 @@
 <dd>
 reference to the full screen request
 </dd>
-</dl><a NAME="WebBrowserPage.__setupWebChannel" ID="WebBrowserPage.__setupWebChannel"></a>
-<h4>WebBrowserPage.__setupWebChannel</h4>
-<b>__setupWebChannel</b>(<i></i>)
+</dl><a NAME="WebBrowserPage.__loadProgressSlot" ID="WebBrowserPage.__loadProgressSlot"></a>
+<h4>WebBrowserPage.__loadProgressSlot</h4>
+<b>__loadProgressSlot</b>(<i>progress</i>)
+<p>
+        Private slot to implement a workaround for the loadFinished signal
+        not working properly in Qt 5.10.0.
+</p><dl>
+<dt><i>progress</i> (int)</dt>
+<dd>
+load progress in percent
+</dd>
+</dl><a NAME="WebBrowserPage.__setupChannelTimeout" ID="WebBrowserPage.__setupChannelTimeout"></a>
+<h4>WebBrowserPage.__setupChannelTimeout</h4>
+<b>__setupChannelTimeout</b>(<i></i>)
+<p>
+        Private slot to initiate the setup of the web channel.
+</p><a NAME="WebBrowserPage.__setupWebChannelForUrl" ID="WebBrowserPage.__setupWebChannelForUrl"></a>
+<h4>WebBrowserPage.__setupWebChannelForUrl</h4>
+<b>__setupWebChannelForUrl</b>(<i>url</i>)
 <p>
         Private method to setup a web channel to our external object.
-</p><a NAME="WebBrowserPage.__urlChanged" ID="WebBrowserPage.__urlChanged"></a>
+</p><dl>
+<dt><i>url</i> (QUrl)</dt>
+<dd>
+URL for which to setup the web channel
+</dd>
+</dl><a NAME="WebBrowserPage.__urlChanged" ID="WebBrowserPage.__urlChanged"></a>
 <h4>WebBrowserPage.__urlChanged</h4>
 <b>__urlChanged</b>(<i>url</i>)
 <p>
@@ -498,16 +530,6 @@
 <dd>
 position to scroll to
 </dd>
-</dl><a NAME="WebBrowserPage.setJavaScriptEnabled" ID="WebBrowserPage.setJavaScriptEnabled"></a>
-<h4>WebBrowserPage.setJavaScriptEnabled</h4>
-<b>setJavaScriptEnabled</b>(<i>enable</i>)
-<p>
-        Public method to enable JavaScript.
-</p><dl>
-<dt><i>enable</i> (bool)</dt>
-<dd>
-flag indicating the enabled state to be set
-</dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
 <hr />
--- a/Documentation/Source/eric6.WebBrowser.WebBrowserTabBar.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.WebBrowserTabBar.html	Fri Mar 02 19:35:16 2018 +0100
@@ -60,6 +60,9 @@
 <td><a href="#WebBrowserTabBar.__init__">WebBrowserTabBar</a></td>
 <td>Constructor</td>
 </tr><tr>
+<td><a href="#WebBrowserTabBar.__hidePreview">__hidePreview</a></td>
+<td>Private method to hide the preview.</td>
+</tr><tr>
 <td><a href="#WebBrowserTabBar.__showTabPreview">__showTabPreview</a></td>
 <td>Private slot to show the tab preview.</td>
 </tr><tr>
@@ -93,12 +96,22 @@
 <dd>
 reference to the parent widget (WebBrowserTabWidget)
 </dd>
-</dl><a NAME="WebBrowserTabBar.__showTabPreview" ID="WebBrowserTabBar.__showTabPreview"></a>
+</dl><a NAME="WebBrowserTabBar.__hidePreview" ID="WebBrowserTabBar.__hidePreview"></a>
+<h4>WebBrowserTabBar.__hidePreview</h4>
+<b>__hidePreview</b>(<i></i>)
+<p>
+        Private method to hide the preview.
+</p><a NAME="WebBrowserTabBar.__showTabPreview" ID="WebBrowserTabBar.__showTabPreview"></a>
 <h4>WebBrowserTabBar.__showTabPreview</h4>
-<b>__showTabPreview</b>(<i></i>)
+<b>__showTabPreview</b>(<i>index</i>)
 <p>
         Private slot to show the tab preview.
-</p><a NAME="WebBrowserTabBar.event" ID="WebBrowserTabBar.event"></a>
+</p><dl>
+<dt><i>index</i> (int)</dt>
+<dd>
+index of tab to show a preview for
+</dd>
+</dl><a NAME="WebBrowserTabBar.event" ID="WebBrowserTabBar.event"></a>
 <h4>WebBrowserTabBar.event</h4>
 <b>event</b>(<i>evt</i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.WebBrowserTabWidget.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.WebBrowserTabWidget.html	Fri Mar 02 19:35:16 2018 +0100
@@ -332,35 +332,53 @@
 </dd>
 </dl><a NAME="WebBrowserTabWidget.__iconChanged" ID="WebBrowserTabWidget.__iconChanged"></a>
 <h4>WebBrowserTabWidget.__iconChanged</h4>
-<b>__iconChanged</b>(<i></i>)
+<b>__iconChanged</b>(<i>browser</i>)
 <p>
         Private slot to handle a change of the web site icon.
-</p><a NAME="WebBrowserTabWidget.__initTabContextMenu" ID="WebBrowserTabWidget.__initTabContextMenu"></a>
+</p><dl>
+<dt><i>browser</i> (WebBrowserView)</dt>
+<dd>
+reference to the web browser
+</dd>
+</dl><a NAME="WebBrowserTabWidget.__initTabContextMenu" ID="WebBrowserTabWidget.__initTabContextMenu"></a>
 <h4>WebBrowserTabWidget.__initTabContextMenu</h4>
 <b>__initTabContextMenu</b>(<i></i>)
 <p>
         Private method to create the tab context menu.
 </p><a NAME="WebBrowserTabWidget.__lineEditReturnPressed" ID="WebBrowserTabWidget.__lineEditReturnPressed"></a>
 <h4>WebBrowserTabWidget.__lineEditReturnPressed</h4>
-<b>__lineEditReturnPressed</b>(<i></i>)
+<b>__lineEditReturnPressed</b>(<i>edit</i>)
 <p>
         Private slot to handle the entering of an URL.
-</p><a NAME="WebBrowserTabWidget.__loadFinished" ID="WebBrowserTabWidget.__loadFinished"></a>
+</p><dl>
+<dt><i>edit</i> (UrlBar)</dt>
+<dd>
+reference to the line edit
+</dd>
+</dl><a NAME="WebBrowserTabWidget.__loadFinished" ID="WebBrowserTabWidget.__loadFinished"></a>
 <h4>WebBrowserTabWidget.__loadFinished</h4>
-<b>__loadFinished</b>(<i>ok</i>)
+<b>__loadFinished</b>(<i>ok, browser</i>)
 <p>
         Private method to handle the loadFinished signal.
 </p><dl>
-<dt><i>ok</i></dt>
+<dt><i>ok</i> (bool)</dt>
 <dd>
-flag indicating the result (boolean)
+flag indicating the result
+</dd><dt><i>browser</i> (WebBrowserView)</dt>
+<dd>
+reference to the web browser
 </dd>
 </dl><a NAME="WebBrowserTabWidget.__loadStarted" ID="WebBrowserTabWidget.__loadStarted"></a>
 <h4>WebBrowserTabWidget.__loadStarted</h4>
-<b>__loadStarted</b>(<i></i>)
+<b>__loadStarted</b>(<i>browser</i>)
 <p>
         Private method to handle the loadStarted signal.
-</p><a NAME="WebBrowserTabWidget.__navigationMenuTriggered" ID="WebBrowserTabWidget.__navigationMenuTriggered"></a>
+</p><dl>
+<dt><i>browser</i> (WebBrowserView)</dt>
+<dd>
+reference to the web browser
+</dd>
+</dl><a NAME="WebBrowserTabWidget.__navigationMenuTriggered" ID="WebBrowserTabWidget.__navigationMenuTriggered"></a>
 <h4>WebBrowserTabWidget.__navigationMenuTriggered</h4>
 <b>__navigationMenuTriggered</b>(<i>act</i>)
 <p>
@@ -423,13 +441,16 @@
 </dd>
 </dl><a NAME="WebBrowserTabWidget.__recentlyAudibleChanged" ID="WebBrowserTabWidget.__recentlyAudibleChanged"></a>
 <h4>WebBrowserTabWidget.__recentlyAudibleChanged</h4>
-<b>__recentlyAudibleChanged</b>(<i>recentlyAudible</i>)
+<b>__recentlyAudibleChanged</b>(<i>recentlyAudible, page</i>)
 <p>
         Private slot to react on the audible state of a page.
 </p><dl>
 <dt><i>recentlyAudible</i> (bool)</dt>
 <dd>
 flag indicating the new audible state
+</dd><dt><i>page</i> (WebBrowserPage)</dt>
+<dd>
+reference to the web page
 </dd>
 </dl><a NAME="WebBrowserTabWidget.__showContextMenu" ID="WebBrowserTabWidget.__showContextMenu"></a>
 <h4>WebBrowserTabWidget.__showContextMenu</h4>
@@ -451,13 +472,16 @@
         Private slot to show the navigation button menu.
 </p><a NAME="WebBrowserTabWidget.__sourceChanged" ID="WebBrowserTabWidget.__sourceChanged"></a>
 <h4>WebBrowserTabWidget.__sourceChanged</h4>
-<b>__sourceChanged</b>(<i>url</i>)
+<b>__sourceChanged</b>(<i>url, browser</i>)
 <p>
         Private slot to handle a change of a browsers source.
 </p><dl>
-<dt><i>url</i></dt>
+<dt><i>url</i> (QUrl)</dt>
 <dd>
-URL of the new site (QUrl)
+URL of the new site
+</dd><dt><i>browser</i> (WebBrowserView)</dt>
+<dd>
+reference to the web browser
 </dd>
 </dl><a NAME="WebBrowserTabWidget.__tabContextMenuAudioMute" ID="WebBrowserTabWidget.__tabContextMenuAudioMute"></a>
 <h4>WebBrowserTabWidget.__tabContextMenuAudioMute</h4>
@@ -506,20 +530,28 @@
         Private method to show a print preview of the selected tab.
 </p><a NAME="WebBrowserTabWidget.__titleChanged" ID="WebBrowserTabWidget.__titleChanged"></a>
 <h4>WebBrowserTabWidget.__titleChanged</h4>
-<b>__titleChanged</b>(<i>title</i>)
+<b>__titleChanged</b>(<i>title, browser</i>)
 <p>
         Private slot to handle a change of a browsers title.
 </p><dl>
-<dt><i>title</i></dt>
+<dt><i>title</i> (str)</dt>
 <dd>
-new title (string)
+new title
+</dd><dt><i>browser</i> (WebBrowserView)</dt>
+<dd>
+reference to the web browser
 </dd>
 </dl><a NAME="WebBrowserTabWidget.__windowCloseRequested" ID="WebBrowserTabWidget.__windowCloseRequested"></a>
 <h4>WebBrowserTabWidget.__windowCloseRequested</h4>
-<b>__windowCloseRequested</b>(<i></i>)
+<b>__windowCloseRequested</b>(<i>page</i>)
 <p>
         Private slot to handle the windowCloseRequested signal of a browser.
-</p><a NAME="WebBrowserTabWidget.browserAt" ID="WebBrowserTabWidget.browserAt"></a>
+</p><dl>
+<dt><i>page</i> (WebBrowserPage)</dt>
+<dd>
+reference to the web page
+</dd>
+</dl><a NAME="WebBrowserTabWidget.browserAt" ID="WebBrowserTabWidget.browserAt"></a>
 <h4>WebBrowserTabWidget.browserAt</h4>
 <b>browserAt</b>(<i>index</i>)
 <p>
@@ -758,10 +790,15 @@
         Public slot to restore all closed tabs.
 </p><a NAME="WebBrowserTabWidget.restoreClosedTab" ID="WebBrowserTabWidget.restoreClosedTab"></a>
 <h4>WebBrowserTabWidget.restoreClosedTab</h4>
-<b>restoreClosedTab</b>(<i></i>)
+<b>restoreClosedTab</b>(<i>act</i>)
 <p>
         Public slot to restore the most recently closed tab.
-</p><a NAME="WebBrowserTabWidget.shallShutDown" ID="WebBrowserTabWidget.shallShutDown"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="WebBrowserTabWidget.shallShutDown" ID="WebBrowserTabWidget.shallShutDown"></a>
 <h4>WebBrowserTabWidget.shallShutDown</h4>
 <b>shallShutDown</b>(<i></i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.WebBrowserView.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.WebBrowserView.html	Fri Mar 02 19:35:16 2018 +0100
@@ -200,6 +200,9 @@
 <td><a href="#WebBrowserView.__pauseMedia">__pauseMedia</a></td>
 <td>Private slot to pause or play the selected media.</td>
 </tr><tr>
+<td><a href="#WebBrowserView.__printPage">__printPage</a></td>
+<td>Private slot to support printing from the web page.</td>
+</tr><tr>
 <td><a href="#WebBrowserView.__reloadAllSpeedDials">__reloadAllSpeedDials</a></td>
 <td>Private slot to reload all speed dials.</td>
 </tr><tr>
@@ -419,6 +422,9 @@
 <td><a href="#WebBrowserView.storeSessionData">storeSessionData</a></td>
 <td>Public method to store session data to be restored later on.</td>
 </tr><tr>
+<td><a href="#WebBrowserView.title">title</a></td>
+<td>Public method to get the view title.</td>
+</tr><tr>
 <td><a href="#WebBrowserView.undo">undo</a></td>
 <td>Public slot to undo the last edit action.</td>
 </tr><tr>
@@ -491,15 +497,25 @@
 </dd>
 </dl><a NAME="WebBrowserView.__blockImage" ID="WebBrowserView.__blockImage"></a>
 <h4>WebBrowserView.__blockImage</h4>
-<b>__blockImage</b>(<i></i>)
+<b>__blockImage</b>(<i>act</i>)
 <p>
         Private slot to add a block rule for an image URL.
-</p><a NAME="WebBrowserView.__bookmarkLink" ID="WebBrowserView.__bookmarkLink"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="WebBrowserView.__bookmarkLink" ID="WebBrowserView.__bookmarkLink"></a>
 <h4>WebBrowserView.__bookmarkLink</h4>
-<b>__bookmarkLink</b>(<i></i>)
+<b>__bookmarkLink</b>(<i>act</i>)
 <p>
         Private slot to bookmark a link via the context menu.
-</p><a NAME="WebBrowserView.__checkForForm" ID="WebBrowserView.__checkForForm"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="WebBrowserView.__checkForForm" ID="WebBrowserView.__checkForForm"></a>
 <h4>WebBrowserView.__checkForForm</h4>
 <b>__checkForForm</b>(<i>act, pos</i>)
 <p>
@@ -537,10 +553,15 @@
         Private slot to copy an image to the clipboard.
 </p><a NAME="WebBrowserView.__copyLink" ID="WebBrowserView.__copyLink"></a>
 <h4>WebBrowserView.__copyLink</h4>
-<b>__copyLink</b>(<i></i>)
+<b>__copyLink</b>(<i>act</i>)
 <p>
         Private slot to copy a link to the clipboard.
-</p><a NAME="WebBrowserView.__createContextMenu" ID="WebBrowserView.__createContextMenu"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="WebBrowserView.__createContextMenu" ID="WebBrowserView.__createContextMenu"></a>
 <h4>WebBrowserView.__createContextMenu</h4>
 <b>__createContextMenu</b>(<i>menu, hitTest</i>)
 <p>
@@ -748,27 +769,47 @@
         Private slot to (un)mute the selected media.
 </p><a NAME="WebBrowserView.__openLinkInNewPrivateWindow" ID="WebBrowserView.__openLinkInNewPrivateWindow"></a>
 <h4>WebBrowserView.__openLinkInNewPrivateWindow</h4>
-<b>__openLinkInNewPrivateWindow</b>(<i></i>)
+<b>__openLinkInNewPrivateWindow</b>(<i>act</i>)
 <p>
         Private slot called by the context menu to open a link in a new
         private window.
-</p><a NAME="WebBrowserView.__openLinkInNewTab" ID="WebBrowserView.__openLinkInNewTab"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="WebBrowserView.__openLinkInNewTab" ID="WebBrowserView.__openLinkInNewTab"></a>
 <h4>WebBrowserView.__openLinkInNewTab</h4>
-<b>__openLinkInNewTab</b>(<i></i>)
+<b>__openLinkInNewTab</b>(<i>act</i>)
 <p>
         Private method called by the context menu to open a link in a new
         tab.
-</p><a NAME="WebBrowserView.__openLinkInNewWindow" ID="WebBrowserView.__openLinkInNewWindow"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="WebBrowserView.__openLinkInNewWindow" ID="WebBrowserView.__openLinkInNewWindow"></a>
 <h4>WebBrowserView.__openLinkInNewWindow</h4>
-<b>__openLinkInNewWindow</b>(<i></i>)
+<b>__openLinkInNewWindow</b>(<i>act</i>)
 <p>
         Private slot called by the context menu to open a link in a new
         window.
-</p><a NAME="WebBrowserView.__pauseMedia" ID="WebBrowserView.__pauseMedia"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="WebBrowserView.__pauseMedia" ID="WebBrowserView.__pauseMedia"></a>
 <h4>WebBrowserView.__pauseMedia</h4>
 <b>__pauseMedia</b>(<i></i>)
 <p>
         Private slot to pause or play the selected media.
+</p><a NAME="WebBrowserView.__printPage" ID="WebBrowserView.__printPage"></a>
+<h4>WebBrowserView.__printPage</h4>
+<b>__printPage</b>(<i></i>)
+<p>
+        Private slot to support printing from the web page.
 </p><a NAME="WebBrowserView.__reloadAllSpeedDials" ID="WebBrowserView.__reloadAllSpeedDials"></a>
 <h4>WebBrowserView.__reloadAllSpeedDials</h4>
 <b>__reloadAllSpeedDials</b>(<i></i>)
@@ -794,10 +835,15 @@
 </dd>
 </dl><a NAME="WebBrowserView.__replaceMisspelledWord" ID="WebBrowserView.__replaceMisspelledWord"></a>
 <h4>WebBrowserView.__replaceMisspelledWord</h4>
-<b>__replaceMisspelledWord</b>(<i></i>)
+<b>__replaceMisspelledWord</b>(<i>act</i>)
 <p>
         Private slot to replace a misspelled word under the context menu.
-</p><a NAME="WebBrowserView.__resetSpeedDials" ID="WebBrowserView.__resetSpeedDials"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="WebBrowserView.__resetSpeedDials" ID="WebBrowserView.__resetSpeedDials"></a>
 <h4>WebBrowserView.__resetSpeedDials</h4>
 <b>__resetSpeedDials</b>(<i></i>)
 <p>
@@ -809,10 +855,15 @@
         Private slot to search for some text with the current search engine.
 </p><a NAME="WebBrowserView.__searchImage" ID="WebBrowserView.__searchImage"></a>
 <h4>WebBrowserView.__searchImage</h4>
-<b>__searchImage</b>(<i></i>)
+<b>__searchImage</b>(<i>act</i>)
 <p>
         Private slot to search for an image URL.
-</p><a NAME="WebBrowserView.__searchRequested" ID="WebBrowserView.__searchRequested"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="WebBrowserView.__searchRequested" ID="WebBrowserView.__searchRequested"></a>
 <h4>WebBrowserView.__searchRequested</h4>
 <b>__searchRequested</b>(<i>act</i>)
 <p>
@@ -824,10 +875,15 @@
 </dd>
 </dl><a NAME="WebBrowserView.__sendLink" ID="WebBrowserView.__sendLink"></a>
 <h4>WebBrowserView.__sendLink</h4>
-<b>__sendLink</b>(<i></i>)
+<b>__sendLink</b>(<i>act</i>)
 <p>
         Private slot to send a link via email.
-</p><a NAME="WebBrowserView.__setRwhvqt" ID="WebBrowserView.__setRwhvqt"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="WebBrowserView.__setRwhvqt" ID="WebBrowserView.__setRwhvqt"></a>
 <h4>WebBrowserView.__setRwhvqt</h4>
 <b>__setRwhvqt</b>(<i></i>)
 <p>
@@ -860,10 +916,15 @@
 </dd>
 </dl><a NAME="WebBrowserView.__virusTotal" ID="WebBrowserView.__virusTotal"></a>
 <h4>WebBrowserView.__virusTotal</h4>
-<b>__virusTotal</b>(<i></i>)
+<b>__virusTotal</b>(<i>act</i>)
 <p>
         Private slot to scan the selected URL with VirusTotal.
-</p><a NAME="WebBrowserView.__webInspector" ID="WebBrowserView.__webInspector"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="WebBrowserView.__webInspector" ID="WebBrowserView.__webInspector"></a>
 <h4>WebBrowserView.__webInspector</h4>
 <b>__webInspector</b>(<i></i>)
 <p>
@@ -1472,6 +1533,21 @@
 <dd>
 dictionary with session data to be restored
 </dd>
+</dl><a NAME="WebBrowserView.title" ID="WebBrowserView.title"></a>
+<h4>WebBrowserView.title</h4>
+<b>title</b>(<i></i>)
+<p>
+        Public method to get the view title.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+view title
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
 </dl><a NAME="WebBrowserView.undo" ID="WebBrowserView.undo"></a>
 <h4>WebBrowserView.undo</h4>
 <b>undo</b>(<i></i>)
--- a/Documentation/Source/eric6.WebBrowser.WebBrowserWebSearchWidget.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.WebBrowserWebSearchWidget.html	Fri Mar 02 19:35:16 2018 +0100
@@ -146,15 +146,25 @@
 </dd>
 </dl><a NAME="WebBrowserWebSearchWidget.__addEngineFromUrl" ID="WebBrowserWebSearchWidget.__addEngineFromUrl"></a>
 <h4>WebBrowserWebSearchWidget.__addEngineFromUrl</h4>
-<b>__addEngineFromUrl</b>(<i></i>)
+<b>__addEngineFromUrl</b>(<i>action</i>)
 <p>
         Private slot to add a search engine given its URL.
-</p><a NAME="WebBrowserWebSearchWidget.__changeCurrentEngine" ID="WebBrowserWebSearchWidget.__changeCurrentEngine"></a>
+</p><dl>
+<dt><i>action</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="WebBrowserWebSearchWidget.__changeCurrentEngine" ID="WebBrowserWebSearchWidget.__changeCurrentEngine"></a>
 <h4>WebBrowserWebSearchWidget.__changeCurrentEngine</h4>
-<b>__changeCurrentEngine</b>(<i></i>)
+<b>__changeCurrentEngine</b>(<i>action</i>)
 <p>
         Private slot to handle the selection of a search engine.
-</p><a NAME="WebBrowserWebSearchWidget.__completerActivated" ID="WebBrowserWebSearchWidget.__completerActivated"></a>
+</p><dl>
+<dt><i>action</i> (QAction)</dt>
+<dd>
+reference to the action that triggered
+</dd>
+</dl><a NAME="WebBrowserWebSearchWidget.__completerActivated" ID="WebBrowserWebSearchWidget.__completerActivated"></a>
 <h4>WebBrowserWebSearchWidget.__completerActivated</h4>
 <b>__completerActivated</b>(<i>index</i>)
 <p>
--- a/Documentation/Source/eric6.WebBrowser.WebBrowserWindow.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.WebBrowserWindow.html	Fri Mar 02 19:35:16 2018 +0100
@@ -170,6 +170,9 @@
 </tr><tr>
 <td><a href="#WebBrowserWindow.webProfile">webProfile</a></td>
 <td>Class method handling the web engine profile.</td>
+</tr><tr>
+<td><a href="#WebBrowserWindow.webSettings">webSettings</a></td>
+<td>Class method to get the web settings of the current profile.</td>
 </tr>
 </table>
 <h3>Methods</h3>
@@ -328,9 +331,6 @@
 <td><a href="#WebBrowserWindow.__savePageAs">__savePageAs</a></td>
 <td>Private slot to save the current page.</td>
 </tr><tr>
-<td><a href="#WebBrowserWindow.__savePageScreen">__savePageScreen</a></td>
-<td>Private slot to save the current page as a screen shot.</td>
-</tr><tr>
 <td><a href="#WebBrowserWindow.__saveVisiblePageScreen">__saveVisiblePageScreen</a></td>
 <td>Private slot to save the visible part of the current page as a screen shot.</td>
 </tr><tr>
@@ -1070,6 +1070,21 @@
 <dd>
 QWebEngineProfile
 </dd>
+</dl><a NAME="WebBrowserWindow.webSettings" ID="WebBrowserWindow.webSettings"></a>
+<h4>WebBrowserWindow.webSettings (class method)</h4>
+<b>webSettings</b>(<i></i>)
+<p>
+        Class method to get the web settings of the current profile.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+web settings of the current profile
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+QWebEngineSettings
+</dd>
 </dl><a NAME="WebBrowserWindow.__init__" ID="WebBrowserWindow.__init__"></a>
 <h4>WebBrowserWindow (Constructor)</h4>
 <b>WebBrowserWindow</b>(<i>home, path, parent, name, fromEric=False, initShortcutsOnly=False, searchWord=None, private=False, qthelp=False, settingsDir="", restoreSession=False</i>)
@@ -1297,10 +1312,15 @@
 </dd>
 </dl><a NAME="WebBrowserWindow.__feedsManagerClosed" ID="WebBrowserWindow.__feedsManagerClosed"></a>
 <h4>WebBrowserWindow.__feedsManagerClosed</h4>
-<b>__feedsManagerClosed</b>(<i></i>)
+<b>__feedsManagerClosed</b>(<i>feedsManager</i>)
 <p>
         Private slot to handle closing the feeds manager dialog.
-</p><a NAME="WebBrowserWindow.__filterQtHelpDocumentation" ID="WebBrowserWindow.__filterQtHelpDocumentation"></a>
+</p><dl>
+<dt><i>feedsManager</i> (FeedsManager)</dt>
+<dd>
+reference to the feeds manager object
+</dd>
+</dl><a NAME="WebBrowserWindow.__filterQtHelpDocumentation" ID="WebBrowserWindow.__filterQtHelpDocumentation"></a>
 <h4>WebBrowserWindow.__filterQtHelpDocumentation</h4>
 <b>__filterQtHelpDocumentation</b>(<i>customFilter</i>)
 <p>
@@ -1455,18 +1475,7 @@
 <b>__savePageAs</b>(<i></i>)
 <p>
         Private slot to save the current page.
-</p><a NAME="WebBrowserWindow.__savePageScreen" ID="WebBrowserWindow.__savePageScreen"></a>
-<h4>WebBrowserWindow.__savePageScreen</h4>
-<b>__savePageScreen</b>(<i>visibleOnly=False</i>)
-<p>
-        Private slot to save the current page as a screen shot.
-</p><dl>
-<dt><i>visibleOnly</i></dt>
-<dd>
-flag indicating to just save the visible part
-            of the page (boolean)
-</dd>
-</dl><a NAME="WebBrowserWindow.__saveVisiblePageScreen" ID="WebBrowserWindow.__saveVisiblePageScreen"></a>
+</p><a NAME="WebBrowserWindow.__saveVisiblePageScreen" ID="WebBrowserWindow.__saveVisiblePageScreen"></a>
 <h4>WebBrowserWindow.__saveVisiblePageScreen</h4>
 <b>__saveVisiblePageScreen</b>(<i></i>)
 <p>
@@ -1695,10 +1704,15 @@
         Private slot to show the synchronization dialog.
 </p><a NAME="WebBrowserWindow.__showTabManager" ID="WebBrowserWindow.__showTabManager"></a>
 <h4>WebBrowserWindow.__showTabManager</h4>
-<b>__showTabManager</b>(<i></i>)
+<b>__showTabManager</b>(<i>act</i>)
 <p>
         Private method to show the tab manager window.
-</p><a NAME="WebBrowserWindow.__showTocWindow" ID="WebBrowserWindow.__showTocWindow"></a>
+</p><dl>
+<dt><i>act</i> (QAction)</dt>
+<dd>
+reference to the act that triggered
+</dd>
+</dl><a NAME="WebBrowserWindow.__showTocWindow" ID="WebBrowserWindow.__showTocWindow"></a>
 <h4>WebBrowserWindow.__showTocWindow</h4>
 <b>__showTocWindow</b>(<i></i>)
 <p>
@@ -2091,16 +2105,20 @@
 </dd>
 </dl><a NAME="WebBrowserWindow.masterPasswordChanged" ID="WebBrowserWindow.masterPasswordChanged"></a>
 <h4>WebBrowserWindow.masterPasswordChanged</h4>
-<b>masterPasswordChanged</b>(<i>oldPassword, newPassword</i>)
+<b>masterPasswordChanged</b>(<i>oldPassword, newPassword, local=False</i>)
 <p>
         Public slot to handle the change of the master password.
 </p><dl>
-<dt><i>oldPassword</i></dt>
+<dt><i>oldPassword</i> (str)</dt>
+<dd>
+current master password
+</dd><dt><i>newPassword</i> (str)</dt>
 <dd>
-current master password (string)
-</dd><dt><i>newPassword</i></dt>
+new master password
+</dd><dt><i>local</i> (bool)</dt>
 <dd>
-new master password (string)
+flag indicating being called from the local configuration
+            dialog
 </dd>
 </dl><a NAME="WebBrowserWindow.mousePressEvent" ID="WebBrowserWindow.mousePressEvent"></a>
 <h4>WebBrowserWindow.mousePressEvent</h4>
--- a/Documentation/Source/eric6.WebBrowser.WebInspector.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/eric6.WebBrowser.WebInspector.html	Fri Mar 02 19:35:16 2018 +0100
@@ -52,7 +52,14 @@
 <h2>WebInspector</h2>
 <p>
     Class implementing a QWebEngineView to load the web inspector in.
-</p>
+</p><h3>Signals</h3>
+<dl>
+<dt>inspectorClosed</dt>
+<dd>
+emitted to indicate the closing of the inspector
+        window
+</dd>
+</dl>
 <h3>Derived from</h3>
 QWebEngineView
 <h3>Class Attributes</h3>
@@ -61,7 +68,10 @@
 </table>
 <h3>Class Methods</h3>
 <table>
-<tr><td>None</td></tr>
+<tr>
+<td><a href="#WebInspector.isEnabled">isEnabled</a></td>
+<td>Class method to check, if the web inspector is enabled.</td>
+</tr>
 </table>
 <h3>Methods</h3>
 <table>
@@ -84,9 +94,6 @@
 <td><a href="#WebInspector.inspectElement">inspectElement</a></td>
 <td>Public method to inspect an element.</td>
 </tr><tr>
-<td><a href="#WebInspector.isEnabled">isEnabled</a></td>
-<td>Public method to check, if the web inspector is enabled.</td>
-</tr><tr>
 <td><a href="#WebInspector.setView">setView</a></td>
 <td>Public method to connect a view to this inspector.</td>
 </tr>
@@ -95,7 +102,22 @@
 <table>
 <tr><td>None</td></tr>
 </table>
-<a NAME="WebInspector.__init__" ID="WebInspector.__init__"></a>
+<a NAME="WebInspector.isEnabled" ID="WebInspector.isEnabled"></a>
+<h4>WebInspector.isEnabled (class method)</h4>
+<b>isEnabled</b>(<i></i>)
+<p>
+        Class method to check, if the web inspector is enabled.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating the enabled state
+</dd>
+</dl><dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl><a NAME="WebInspector.__init__" ID="WebInspector.__init__"></a>
 <h4>WebInspector (Constructor)</h4>
 <b>WebInspector</b>(<i>parent=None</i>)
 <p>
@@ -135,22 +157,7 @@
 <b>inspectElement</b>(<i></i>)
 <p>
         Public method to inspect an element.
-</p><a NAME="WebInspector.isEnabled" ID="WebInspector.isEnabled"></a>
-<h4>WebInspector.isEnabled</h4>
-<b>isEnabled</b>(<i></i>)
-<p>
-        Public method to check, if the web inspector is enabled.
-</p><dl>
-<dt>Returns:</dt>
-<dd>
-flag indicating the enabled state
-</dd>
-</dl><dl>
-<dt>Return Type:</dt>
-<dd>
-bool
-</dd>
-</dl><a NAME="WebInspector.setView" ID="WebInspector.setView"></a>
+</p><a NAME="WebInspector.setView" ID="WebInspector.setView"></a>
 <h4>WebInspector.setView</h4>
 <b>setView</b>(<i>view, inspectElement=False</i>)
 <p>
--- a/Documentation/Source/index-eric6.WebBrowser.Download.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/index-eric6.WebBrowser.Download.html	Fri Mar 02 19:35:16 2018 +0100
@@ -37,6 +37,9 @@
 <td><a href="eric6.WebBrowser.Download.DownloadManager.html">DownloadManager</a></td>
 <td>Module implementing the download manager class.</td>
 </tr><tr>
+<td><a href="eric6.WebBrowser.Download.DownloadManagerButton.html">DownloadManagerButton</a></td>
+<td>Module implementing a tool button for the download manager.</td>
+</tr><tr>
 <td><a href="eric6.WebBrowser.Download.DownloadModel.html">DownloadModel</a></td>
 <td>Module implementing the download model.</td>
 </tr><tr>
--- a/Documentation/Source/index-eric6.WebBrowser.GreaseMonkey.html	Sun Feb 04 10:56:30 2018 +0100
+++ b/Documentation/Source/index-eric6.WebBrowser.GreaseMonkey.html	Fri Mar 02 19:35:16 2018 +0100
@@ -44,6 +44,9 @@
 <td><a href="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJavaScript.html">GreaseMonkeyJavaScript</a></td>
 <td>Module containing some JavaScript resources.</td>
 </tr><tr>
+<td><a href="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyJsObject.html">GreaseMonkeyJsObject</a></td>
+<td>Module implementing the Python side for GreaseMonkey scripts.</td>
+</tr><tr>
 <td><a href="eric6.WebBrowser.GreaseMonkey.GreaseMonkeyManager.html">GreaseMonkeyManager</a></td>
 <td>Module implementing the manager for GreaseMonkey scripts.</td>
 </tr><tr>
--- a/E5Gui/E5PassivePopup.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/E5Gui/E5PassivePopup.py	Fri Mar 02 19:35:16 2018 +0100
@@ -47,6 +47,8 @@
         self.setLineWidth(2)
         self.__hideTimer.timeout.connect(self.hide)
         self.clicked.connect(self.hide)
+        
+        self.__customData = {}  # dictionary to store some custom data
     
     def setView(self, child):
         """
@@ -210,6 +212,28 @@
             x = r.left()
         
         return QPoint(x, y)
+    
+    def setCustomData(self, key, data):
+        """
+        Public method to set some custom data.
+        
+        @param key key for the custom data
+        @type str
+        @param data data to be stored
+        @type any
+        """
+        self.__customData[key] = data
+    
+    def getCustomData(self, key):
+        """
+        Public method to get some custom data.
+        
+        @param key key for the custom data
+        @type str
+        @return stored data
+        @rtype any
+        """
+        return self.__customData[key]
 
 DEFAULT_POPUP_TYPE = E5PassivePopup.Boxed
 DEFAULT_POPUP_TIME = 6 * 1000
--- a/E5Gui/E5ToolButton.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/E5Gui/E5ToolButton.py	Fri Mar 02 19:35:16 2018 +0100
@@ -11,7 +11,7 @@
 
 from PyQt5.QtCore import pyqtSlot, pyqtSignal, Qt, QTimer, QSize
 from PyQt5.QtWidgets import QToolButton, QStyle, QStyleOptionToolButton, \
-    QStyleOption, QApplication
+    QStyleOption, QApplication, QLabel
 
 
 class E5ToolButton(QToolButton):
@@ -50,6 +50,12 @@
         self.__menu = None
         self.__options = E5ToolButton.NoOptions
         
+        self.__badgeLabel = QLabel(self)
+        font = self.__badgeLabel.font()
+        font.setPixelSize(self.__badgeLabel.height() / 2.5)
+        self.__badgeLabel.setFont(font)
+        self.__badgeLabel.hide()
+        
         opt = QStyleOptionToolButton()
         self.initStyleOption(opt)
         
@@ -251,3 +257,32 @@
             return
         
         super(E5ToolButton, self).contextMenuEvent(evt)
+    
+    ##################################################################
+    ## Methods to handle the tool button badge
+    ##################################################################
+    
+    def setBadgeText(self, text):
+        """
+        Public method to set the badge text.
+        
+        @param text badge text to be set
+        @type str
+        """
+        if text:
+            self.__badgeLabel.setText(text)
+            self.__badgeLabel.resize(self.__badgeLabel.sizeHint())
+            self.__badgeLabel.move(self.width() - self.__badgeLabel.width(), 0)
+            self.__badgeLabel.show()
+        else:
+            self.__badgeLabel.clear()
+            self.__badgeLabel.hide()
+    
+    def badgeText(self):
+        """
+        Public method to get the badge text.
+        
+        @return badge text
+        @rtype str
+        """
+        return self.__badgeLabel.text()
--- a/E5Network/E5NetworkMonitor.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/E5Network/E5NetworkMonitor.py	Fri Mar 02 19:35:16 2018 +0100
@@ -82,7 +82,9 @@
             [self.tr("Name"), self.tr("Value")])
         self.requestHeadersList.setModel(self.__requestHeaders)
         self.requestHeadersList.horizontalHeader().setStretchLastSection(True)
-        self.requestHeadersList.doubleClicked.connect(self.__showHeaderDetails)
+        self.requestHeadersList.doubleClicked.connect(
+            lambda index: self.__showHeaderDetails(
+                index, self.requestHeadersList))
         
         self.__replyHeaders = QStandardItemModel(self)
         self.__replyHeaders.setHorizontalHeaderLabels(
@@ -90,7 +92,8 @@
         self.responseHeadersList.setModel(self.__replyHeaders)
         self.responseHeadersList.horizontalHeader().setStretchLastSection(True)
         self.responseHeadersList.doubleClicked.connect(
-            self.__showHeaderDetails)
+            lambda index: self.__showHeaderDetails(
+                index, self.responseHeadersList))
         
         self.requestsList.horizontalHeader().setStretchLastSection(True)
         self.requestsList.verticalHeader().setMinimumSectionSize(-1)
@@ -180,19 +183,18 @@
             self.__replyHeaders.item(0, 1).setFlags(
                 Qt.ItemIsSelectable | Qt.ItemIsEnabled)
     
-    def __showHeaderDetails(self, index):
+    def __showHeaderDetails(self, index, headerList):
         """
         Private slot to show a dialog with the header details.
         
-        @param index index of the entry to show (QModelIndex)
+        @param index index of the entry to show
+        @type QModelIndex
+        @param headerList list requesting the header details
+        @type QTableView
         """
         if not index.isValid():
             return
         
-        headerList = self.sender()
-        if headerList is None:
-            return
-        
         row = index.row()
         name = headerList.model().data(headerList.model().index(row, 0))
         value = headerList.model().data(headerList.model().index(row, 1))
@@ -260,17 +262,16 @@
         self.beginInsertRows(
             QModelIndex(), len(self.requests), len(self.requests))
         self.requests.append(req)
-        req.reply.finished.connect(self.__addReply)
+        req.reply.finished.connect(lambda: self.__addReply(req.reply))
         self.endInsertRows()
     
-    def __addReply(self):
+    def __addReply(self, reply):
         """
         Private slot to add the reply data to the model.
+        
+        @param reply reference to the network reply object
+        @type QNetworkReply
         """
-        reply = self.sender()
-        if reply is None:
-            return
-        
         offset = len(self.requests) - 1
         while offset >= 0:
             if self.requests[offset].reply is reply:
--- a/Helpviewer/AdBlock/AdBlockIcon.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/AdBlock/AdBlockIcon.py	Fri Mar 02 19:35:16 2018 +0100
@@ -53,45 +53,45 @@
             self.setPixmap(
                 UI.PixmapCache.getPixmap("adBlockPlusDisabled16.png"))
     
-    def __createMenu(self, menu=None):
+    def __createMenu(self, menu):
         """
         Private slot to create the context menu.
         
-        @param menu parent menu (QMenu)
+        @param menu parent menu
+        @type QMenu
         """
-        if menu is None:
-            menu = self.sender()
-            if menu is None:
-                return
-        
         menu.clear()
         
         import Helpviewer.HelpWindow
         manager = Helpviewer.HelpWindow.HelpWindow.adBlockManager()
         
         if manager.isEnabled():
-            menu.addAction(
+            act = menu.addAction(
                 UI.PixmapCache.getIcon("adBlockPlusDisabled.png"),
-                self.tr("Disable AdBlock"),
-                self.__enableAdBlock).setData(False)
+                self.tr("Disable AdBlock"))
+            act.setData(False)
+            act.triggered.connect(lambda: self.__enableAdBlock(act))
         else:
-            menu.addAction(
+            act = menu.addAction(
                 UI.PixmapCache.getIcon("adBlockPlus.png"),
-                self.tr("Enable AdBlock"),
-                self.__enableAdBlock).setData(True)
+                self.tr("Enable AdBlock"))
+            act.setData(True)
+            act.triggered.connect(lambda: self.__enableAdBlock(act))
         menu.addSeparator()
         if manager.isEnabled() and \
            self.__mw.currentBrowser().page().url().host():
             if self.__isCurrentHostExcepted():
-                menu.addAction(
+                act = menu.addAction(
                     UI.PixmapCache.getIcon("adBlockPlus.png"),
-                    self.tr("Remove AdBlock Exception"),
-                    self.__setException).setData(False)
+                    self.tr("Remove AdBlock Exception"))
+                act.setData(False)
+                act.triggered.connect(lambda: self.__setException(act))
             else:
-                menu.addAction(
+                act = menu.addAction(
                     UI.PixmapCache.getIcon("adBlockPlusGreen.png"),
-                    self.tr("Add AdBlock Exception"),
-                    self.__setException).setData(True)
+                    self.tr("Add AdBlock Exception"))
+                act.setData(True)
+                act.triggered.connect(lambda: self.__setException(act))
         menu.addAction(
             UI.PixmapCache.getIcon("adBlockPlusGreen.png"),
             self.tr("AdBlock Exceptions..."), manager.showExceptionsDialog)
@@ -110,8 +110,9 @@
                 address = entry.urlString()[-55:]
                 actionText = self.tr("{0} with ({1})").format(
                     address, entry.rule.filter()).replace("&", "&&")
-                act = menu.addAction(actionText, manager.showRule)
+                act = menu.addAction(actionText)
                 act.setData(entry.rule)
+                act.triggered.connect(lambda: manager.showRule(act))
         else:
             menu.addAction(self.tr("No content blocked")).setEnabled(False)
     
@@ -124,7 +125,8 @@
         if not self.__menuAction:
             self.__menuAction = QAction(self.tr("AdBlock"), self)
             self.__menuAction.setMenu(QMenu())
-            self.__menuAction.menu().aboutToShow.connect(self.__createMenu)
+            self.__menuAction.menu().aboutToShow.connect(
+                lambda: self.__createMenu(self.__menuAction.menu()))
         
         if self.__enabled:
             self.__menuAction.setIcon(
@@ -145,15 +147,16 @@
         self.__createMenu(menu)
         menu.exec_(pos)
     
-    def __enableAdBlock(self):
+    def __enableAdBlock(self, act):
         """
         Private slot to enable or disable AdBlock.
+        
+        @param act reference to the action
+        @type QAction
         """
-        act = self.sender()
-        if act is not None:
-            import Helpviewer.HelpWindow
-            Helpviewer.HelpWindow.HelpWindow.adBlockManager().setEnabled(
-                act.data())
+        import Helpviewer.HelpWindow
+        Helpviewer.HelpWindow.HelpWindow.adBlockManager().setEnabled(
+            act.data())
     
     def __isCurrentHostExcepted(self):
         """
@@ -184,22 +187,23 @@
             else:
                 self.setPixmap(UI.PixmapCache.getPixmap("adBlockPlus16.png"))
     
-    def __setException(self):
+    def __setException(self, act):
         """
         Private slot to add or remove the current host from the list of
         exceptions.
+        
+        @param act referenced to the action
+        @type QAction
         """
-        act = self.sender()
-        if act is not None:
-            import Helpviewer.HelpWindow
-            urlHost = self.__mw.currentBrowser().page().url().host()
-            if act.data():
-                Helpviewer.HelpWindow.HelpWindow.adBlockManager()\
-                    .addException(urlHost)
-            else:
-                Helpviewer.HelpWindow.HelpWindow.adBlockManager()\
-                    .removeException(urlHost)
-            self.currentChanged()
+        import Helpviewer.HelpWindow
+        urlHost = self.__mw.currentBrowser().page().url().host()
+        if act.data():
+            Helpviewer.HelpWindow.HelpWindow.adBlockManager()\
+                .addException(urlHost)
+        else:
+            Helpviewer.HelpWindow.HelpWindow.adBlockManager()\
+                .removeException(urlHost)
+        self.currentChanged()
     
     def sourceChanged(self, browser, url):
         """
--- a/Helpviewer/AdBlock/AdBlockManager.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/AdBlock/AdBlockManager.py	Fri Mar 02 19:35:16 2018 +0100
@@ -364,15 +364,16 @@
         self.__adBlockDialog.show()
         return self.__adBlockDialog
     
-    def showRule(self):
+    def showRule(self, act):
         """
         Public slot to show an AdBlock rule.
+        
+        @param act reference to the action
+        @type QAction
         """
-        act = self.sender()
-        if act is not None:
-            rule = act.data()
-            if rule:
-                self.showDialog().showRule(rule)
+        rule = act.data()
+        if rule:
+            self.showDialog().showRule(rule)
     
     def elementHidingRules(self):
         """
--- a/Helpviewer/AdBlock/AdBlockSubscription.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/AdBlock/AdBlockSubscription.py	Fri Mar 02 19:35:16 2018 +0100
@@ -394,14 +394,16 @@
         self.__downloading = FollowRedirectReply(
             self.location(),
             Helpviewer.HelpWindow.HelpWindow.networkAccessManager())
-        self.__downloading.finished.connect(self.__rulesDownloaded)
+        self.__downloading.finished.connect(
+            lambda: self.__rulesDownloaded(self.__downloading))
     
-    def __rulesDownloaded(self):
+    def __rulesDownloaded(self, reply):
         """
         Private slot to deal with the downloaded rules.
+        
+        @param reply reference to the network reply
+        @type QNetworkReply
         """
-        reply = self.sender()
-        
         response = reply.readAll()
         reply.close()
         self.__downloading = None
--- a/Helpviewer/Bookmarks/BookmarksMenu.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/Bookmarks/BookmarksMenu.py	Fri Mar 02 19:35:16 2018 +0100
@@ -96,13 +96,16 @@
         
         self.addSeparator()
         act = self.addAction(self.tr("Open all in Tabs"))
-        act.triggered.connect(self.openAll)
+        act.triggered.connect(lambda: self.openAll(act))
     
-    def openAll(self):
+    def openAll(self, act):
         """
         Public slot to open all the menu's items.
+        
+        @param act reference to the action object
+        @type QAction
         """
-        menu = self.sender().parent()
+        menu = act.parent()
         if menu is None:
             return
         
@@ -139,23 +142,24 @@
             menu = QMenu()
             v = act.data()
             
-            menuAction = menu.addAction(
-                self.tr("&Open"), self.__openBookmark)
-            menuAction.setData(v)
-            menuAction = menu.addAction(
-                self.tr("Open in New &Tab\tCtrl+LMB"),
-                self.__openBookmarkInNewTab)
-            menuAction.setData(v)
+            act2 = menu.addAction(self.tr("Open"))
+            act2.setData(v)
+            act2.triggered.connect(
+                lambda: self.__openBookmark(act2))
+            act2 = menu.addAction(self.tr("Open in New Tab\tCtrl+LMB"))
+            act2.setData(v)
+            act2.triggered.connect(
+                lambda: self.__openBookmarkInNewTab(act2))
             menu.addSeparator()
             
-            menuAction = menu.addAction(
-                self.tr("&Remove"), self.__removeBookmark)
-            menuAction.setData(v)
+            act2 = menu.addAction(self.tr("Remove"))
+            act2.setData(v)
+            act2.triggered.connect(lambda: self.__removeBookmark(act2))
             menu.addSeparator()
             
-            menuAction = menu.addAction(
-                self.tr("&Properties..."), self.__edit)
-            menuAction.setData(v)
+            act2 = menu.addAction(self.tr("Properties..."))
+            act2.setData(v)
+            act2.triggered.connect(lambda: self.__edit(act2))
             
             execAct = menu.exec_(QCursor.pos())
             if execAct is not None:
@@ -165,40 +169,52 @@
                     parent.close()
                     parent = parent.parent()
     
-    def __openBookmark(self):
+    def __openBookmark(self, act):
         """
         Private slot to open a bookmark in the current browser tab.
+        
+        @param act reference to the triggering action
+        @type QAction
         """
-        idx = self.index(self.sender())
+        idx = self.index(act)
         
         self.openUrl.emit(
             idx.data(BookmarksModel.UrlRole),
             idx.data(Qt.DisplayRole))
     
-    def __openBookmarkInNewTab(self):
+    def __openBookmarkInNewTab(self, act):
         """
         Private slot to open a bookmark in a new browser tab.
+        
+        @param act reference to the triggering action
+        @type QAction
         """
-        idx = self.index(self.sender())
+        idx = self.index(act)
         
         self.newUrl.emit(
             idx.data(BookmarksModel.UrlRole),
             idx.data(Qt.DisplayRole))
     
-    def __removeBookmark(self):
+    def __removeBookmark(self, act):
         """
         Private slot to remove a bookmark.
+        
+        @param act reference to the triggering action
+        @type QAction
         """
-        idx = self.index(self.sender())
+        idx = self.index(act)
         self.removeEntry(idx)
     
-    def __edit(self):
+    def __edit(self, act):
         """
         Private slot to edit a bookmarks properties.
+        
+        @param act reference to the triggering action
+        @type QAction
         """
         from .BookmarkPropertiesDialog import BookmarkPropertiesDialog
         
-        idx = self.index(self.sender())
+        idx = self.index(act)
         node = self.model().node(idx)
         dlg = BookmarkPropertiesDialog(node)
         dlg.exec_()
@@ -279,13 +295,15 @@
         self.addSeparator()
         act = self.addAction(self.tr("Default Home Page"))
         act.setData("eric:home")
-        act.triggered.connect(self.__defaultBookmarkTriggered)
+        act.triggered.connect(
+            lambda: self.__defaultBookmarkTriggered(act))
         act = self.addAction(self.tr("Speed Dial"))
         act.setData("eric:speeddial")
-        act.triggered.connect(self.__defaultBookmarkTriggered)
+        act.triggered.connect(
+            lambda: self.__defaultBookmarkTriggered(act))
         self.addSeparator()
         act = self.addAction(self.tr("Open all in Tabs"))
-        act.triggered.connect(self.openAll)
+        act.triggered.connect(lambda: self.openAll(act))
     
     def setInitialActions(self, actions):
         """
@@ -298,11 +316,13 @@
         for act in self.__initialActions:
             self.addAction(act)
     
-    def __defaultBookmarkTriggered(self):
+    def __defaultBookmarkTriggered(self, act):
         """
         Private slot handling the default bookmark menu entries.
+        
+        @param act reference to the action object
+        @type QAction
         """
-        act = self.sender()
         urlStr = act.data()
         if urlStr.startswith("eric:"):
             self.openUrl.emit(QUrl(urlStr), "")
--- a/Helpviewer/Bookmarks/BookmarksToolBar.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/Bookmarks/BookmarksToolBar.py	Fri Mar 02 19:35:16 2018 +0100
@@ -87,23 +87,24 @@
             v = act.data()
             
             if act.menu() is None:
-                menuAction = menu.addAction(
-                    self.tr("&Open"), self.__openBookmark)
-                menuAction.setData(v)
-                menuAction = menu.addAction(
-                    self.tr("Open in New &Tab\tCtrl+LMB"),
-                    self.__openBookmarkInNewTab)
-                menuAction.setData(v)
+                act2 = menu.addAction(self.tr("Open"))
+                act2.setData(v)
+                act2.triggered.connect(
+                    lambda: self.__openBookmark(act2))
+                act2 = menu.addAction(self.tr("Open in New Tab\tCtrl+LMB"))
+                act2.setData(v)
+                act2.triggered.connect(
+                    lambda: self.__openBookmarkInNewTab(act2))
                 menu.addSeparator()
             
-            menuAction = menu.addAction(
-                self.tr("&Remove"), self.__removeBookmark)
-            menuAction.setData(v)
+            act2 = menu.addAction(self.tr("Remove"))
+            act2.setData(v)
+            act2.triggered.connect(lambda: self.__removeBookmark(act2))
             menu.addSeparator()
             
-            menuAction = menu.addAction(
-                self.tr("&Properties..."), self.__edit)
-            menuAction.setData(v)
+            act2 = menu.addAction(self.tr("Properties..."))
+            act2.setData(v)
+            act2.triggered.connect(lambda: self.__edit(act2))
             menu.addSeparator()
         
         menu.addAction(self.tr("Add &Bookmark..."), self.__newBookmark)
@@ -133,47 +134,40 @@
                     idx.data(BookmarksModel.UrlRole),
                     idx.data(Qt.DisplayRole))
     
-    def __openToolBarBookmark(self):
+    def __openBookmark(self, act):
         """
         Private slot to open a bookmark in the current browser tab.
+        
+        @param act reference to the triggering action
+        @type QAction
         """
-        idx = self.index(self.sender())
-        
-        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))
-        self.resetFlags()
-    
-    def __openBookmark(self):
-        """
-        Private slot to open a bookmark in the current browser tab.
-        """
-        idx = self.index(self.sender())
+        idx = self.index(act)
         
         self.openUrl.emit(
             idx.data(BookmarksModel.UrlRole),
             idx.data(Qt.DisplayRole))
     
-    def __openBookmarkInNewTab(self):
+    def __openBookmarkInNewTab(self, act):
         """
         Private slot to open a bookmark in a new browser tab.
+        
+        @param act reference to the triggering action
+        @type QAction
         """
-        idx = self.index(self.sender())
+        idx = self.index(act)
         
         self.newUrl.emit(
             idx.data(BookmarksModel.UrlRole),
             idx.data(Qt.DisplayRole))
     
-    def __removeBookmark(self):
+    def __removeBookmark(self, act):
         """
         Private slot to remove a bookmark.
+        
+        @param act reference to the triggering action
+        @type QAction
         """
-        idx = self.index(self.sender())
+        idx = self.index(act)
         
         self.__bookmarksModel.removeRow(idx.row(), self.rootIndex())
     
@@ -208,12 +202,15 @@
         menu.newUrl.connect(self.newUrl)
         return menu
     
-    def __edit(self):
+    def __edit(self, act):
         """
         Private slot to edit a bookmarks properties.
+        
+        @param act reference to the triggering action
+        @type QAction
         """
         from .BookmarkPropertiesDialog import BookmarkPropertiesDialog
-        idx = self.index(self.sender())
+        idx = self.index(act)
         node = self.__bookmarksModel.node(idx)
         dlg = BookmarkPropertiesDialog(node)
         dlg.exec_()
--- a/Helpviewer/CookieJar/CookiesDialog.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/CookieJar/CookiesDialog.py	Fri Mar 02 19:35:16 2018 +0100
@@ -85,11 +85,7 @@
         if not index.isValid():
             return
         
-        cookiesTable = self.sender()
-        if cookiesTable is None:
-            return
-        
-        model = cookiesTable.model()
+        model = self.cookiesTable.model()
         row = index.row()
         
         domain = model.data(model.index(row, 0))
--- a/Helpviewer/Download/DownloadManager.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/Download/DownloadManager.py	Fri Mar 02 19:35:16 2018 +0100
@@ -231,7 +231,7 @@
         @param append flag indicating to append the item
         @type bool
         """
-        itm.statusChanged.connect(self.__updateRow)
+        itm.statusChanged.connect(lambda: self.__updateRow(itm))
         itm.downloadFinished.connect(self.__finished)
         
         # insert at top of window
@@ -256,15 +256,13 @@
         self.changeOccurred()
         self.__updateActiveItemCount()
     
-    def __updateRow(self, itm=None):
+    def __updateRow(self, itm):
         """
         Private slot to update a download item.
         
-        @param itm reference to the download item (DownloadItem)
+        @param itm reference to the download item
+        @type DownloadItem
         """
-        if itm is None:
-            itm = self.sender()
-        
         if itm not in self.__downloads:
             return
         
--- a/Helpviewer/Feeds/FeedsDialog.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/Feeds/FeedsDialog.py	Fri Mar 02 19:35:16 2018 +0100
@@ -49,16 +49,18 @@
             label.setText(feed[0])
             self.feedsLayout.addWidget(label, row, 0)
             self.feedsLayout.addWidget(button, row, 1)
-            button.clicked.connect(self.__addFeed)
+            button.clicked.connect(lambda: self.__addFeed(button))
         
         msh = self.minimumSizeHint()
         self.resize(max(self.width(), msh.width()), msh.height())
     
-    def __addFeed(self):
+    def __addFeed(self, button):
         """
         Private slot to add a RSS feed.
+        
+        @param button reference to the feed button
+        @type QPushButton
         """
-        button = self.sender()
         urlString = button.feed[1]
         url = QUrl(urlString)
         if not url.host():
--- a/Helpviewer/Feeds/FeedsManager.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/Feeds/FeedsManager.py	Fri Mar 02 19:35:16 2018 +0100
@@ -264,14 +264,16 @@
         request = QNetworkRequest(QUrl(urlString))
         reply = Helpviewer.HelpWindow.HelpWindow.networkAccessManager()\
             .get(request)
-        reply.finished.connect(self.__feedLoaded)
+        reply.finished.connect(lambda: self.__feedLoaded(reply))
         self.__replies[id(reply)] = (reply, itm)
     
-    def __feedLoaded(self):
+    def __feedLoaded(self, reply):
         """
         Private slot to extract the loaded feed data.
+        
+        @param reply reference to the network reply
+        @type QNetworkReply
         """
-        reply = self.sender()
         if id(reply) not in self.__replies:
             return
         
--- a/Helpviewer/GreaseMonkey/GreaseMonkeyDownloader.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/GreaseMonkey/GreaseMonkeyDownloader.py	Fri Mar 02 19:35:16 2018 +0100
@@ -53,10 +53,6 @@
         """
         Private slot to handle the finished download of a script.
         """
-        if self.sender() != self.__reply:
-            self.finished.emit()
-            return
-        
         response = bytes(self.__reply.readAll()).decode()
         
         if self.__reply.error() == QNetworkReply.NoError and \
@@ -106,10 +102,6 @@
         """
         Private slot to handle the finished download of a required script.
         """
-        if self.sender() != self.__reply:
-            self.finished.emit()
-            return
-        
         response = bytes(self.__reply.readAll()).decode()
         
         if self.__reply.error() == QNetworkReply.NoError and response:
--- a/Helpviewer/GreaseMonkey/GreaseMonkeyManager.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/GreaseMonkey/GreaseMonkeyManager.py	Fri Mar 02 19:35:16 2018 +0100
@@ -61,18 +61,19 @@
         """
         from .GreaseMonkeyDownloader import GreaseMonkeyDownloader
         downloader = GreaseMonkeyDownloader(request, self)
-        downloader.finished.connect(self.__downloaderFinished)
+        downloader.finished.connect(
+            lambda: self.__downloaderFinished(downloader))
         self.__downloaders.append(downloader)
     
-    def __downloaderFinished(self):
+    def __downloaderFinished(self, downloader):
         """
         Private slot to handle the completion of a script download.
+        
+        @param downloader reference to the downloader object
+        @type GreaseMonkeyDownloader
         """
-        downloader = self.sender()
-        if downloader is None or downloader not in self.__downloaders:
-            return
-        
-        self.__downloaders.remove(downloader)
+        if downloader in self.__downloaders:
+            self.__downloaders.remove(downloader)
     
     def scriptsDirectory(self):
         """
@@ -231,14 +232,13 @@
         """
         return scheme in ["http", "https", "data", "ftp"]
     
-    def pageLoadStarted(self):
+    def pageLoadStarted(self, frame):
         """
         Public slot to handle the start of loading a page.
+        
+        @param frame reference to the main frame of the loading page
+        @type QWebFrame
         """
-        frame = self.sender()
-        if not frame:
-            return
-        
         urlScheme = frame.url().scheme()
         urlString = bytes(frame.url().toEncoded()).decode()
         
@@ -290,8 +290,9 @@
         
         @param page reference to the web page (HelpWebPage)
         """
-        page.mainFrame().javaScriptWindowObjectCleared.connect(
-            self.pageLoadStarted)
+        mainFrame = page.mainFrame()
+        mainFrame.javaScriptWindowObjectCleared.connect(
+            lambda: self.pageLoadStarted(mainFrame))
     
     def createRequest(self, op, request, outgoingData=None):
         """
--- a/Helpviewer/HelpBrowserWV.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/HelpBrowserWV.py	Fri Mar 02 19:35:16 2018 +0100
@@ -779,8 +779,9 @@
             self.__featurePermissionRequested)
         
         self.page().downloadRequested.connect(self.__downloadRequested)
-        self.page().frameCreated.connect(self.__addExternalBinding)
-        self.__addExternalBinding(self.page().mainFrame())
+        self.page().frameCreated.connect(
+            lambda frame: self.__addExternalBinding(frame, False))
+        self.__addExternalBinding(self.page().mainFrame(), False)
         
         self.page().databaseQuotaExceeded.connect(self.__databaseQuotaExceeded)
         
@@ -808,20 +809,22 @@
         
         self.grabGesture(Qt.PinchGesture)
     
-    def __addExternalBinding(self, frame=None):
+    def __addExternalBinding(self, frame, frameCleared):
         """
         Private slot to add javascript bindings for adding search providers.
         
-        @param frame reference to the web frame (QWebFrame)
+        @param frame reference to the web frame
+        @type QWebFrame
+        @param frameCleared flag indicate, that the frame was cleared
+        @type bool
         """
         self.page().settings().setAttribute(QWebSettings.JavascriptEnabled,
                                             True)
         if self.__javaScriptBinding is None:
             self.__javaScriptBinding = JavaScriptExternalObject(self.mw, self)
         
-        if frame is None:
+        if frameCleared:
             # called from QWebFrame.javaScriptWindowObjectCleared
-            frame = self.sender()
             if isinstance(frame, HelpWebPage):
                 frame = frame.mainFrame()
             if frame.url().scheme() == "eric" and frame.url().path() == "home":
@@ -838,7 +841,7 @@
         else:
             # called from QWebPage.frameCreated
             frame.javaScriptWindowObjectCleared.connect(
-                self.__addExternalBinding)
+                lambda: self.__addExternalBinding(frame, True))
         frame.addToJavaScriptWindowObject("external", self.__javaScriptBinding)
     
     def linkedResources(self, relation=""):
@@ -1210,65 +1213,83 @@
         frameAtPos = self.page().frameAt(evt.pos())
         hit = self.page().mainFrame().hitTestContent(evt.pos())
         if not hit.linkUrl().isEmpty():
-            menu.addAction(
+            act = menu.addAction(
                 UI.PixmapCache.getIcon("openNewTab.png"),
-                self.tr("Open Link in New Tab\tCtrl+LMB"),
-                self.__openLinkInNewTab).setData(hit.linkUrl())
+                self.tr("Open Link in New Tab\tCtrl+LMB"))
+            act.setData(hit.linkUrl())
+            act.triggered.connect(
+                lambda: self.__openLinkInNewTab(act))
             menu.addSeparator()
             menu.addAction(
                 UI.PixmapCache.getIcon("download.png"),
                 self.tr("Save Lin&k"), self.__downloadLink)
-            menu.addAction(
+            act = menu.addAction(
                 UI.PixmapCache.getIcon("bookmark22.png"),
-                self.tr("Bookmark this Link"), self.__bookmarkLink)\
-                .setData(hit.linkUrl())
+                self.tr("Bookmark this Link"))
+            act.setData(hit.linkUrl())
+            act.triggered.connect(
+                lambda: self.__bookmarkLink(act))
             menu.addSeparator()
             menu.addAction(
                 UI.PixmapCache.getIcon("editCopy.png"),
                 self.tr("Copy Link to Clipboard"), self.__copyLink)
-            menu.addAction(
+            act = menu.addAction(
                 UI.PixmapCache.getIcon("mailSend.png"),
-                self.tr("Send Link"),
-                self.__sendLink).setData(hit.linkUrl())
+                self.tr("Send Link"))
+            act.setData(hit.linkUrl())
+            act.triggered.connect(
+                lambda: self.__sendLink(act))
             if Preferences.getHelp("VirusTotalEnabled") and \
                Preferences.getHelp("VirusTotalServiceKey") != "":
-                menu.addAction(
+                act = menu.addAction(
                     UI.PixmapCache.getIcon("virustotal.png"),
-                    self.tr("Scan Link with VirusTotal"),
-                    self.__virusTotal).setData(hit.linkUrl())
+                    self.tr("Scan Link with VirusTotal"))
+                act.setData(hit.linkUrl())
+                act.triggered.connect(
+                    lambda: self.__virusTotal(act))
         
         if not hit.imageUrl().isEmpty():
             if not menu.isEmpty():
                 menu.addSeparator()
-            menu.addAction(
+            act = menu.addAction(
                 UI.PixmapCache.getIcon("openNewTab.png"),
-                self.tr("Open Image in New Tab"),
-                self.__openLinkInNewTab).setData(hit.imageUrl())
+                self.tr("Open Image in New Tab"))
+            act.setData(hit.imageUrl())
+            act.triggered.connect(
+                lambda: self.__openLinkInNewTab(act))
             menu.addSeparator()
             menu.addAction(
                 UI.PixmapCache.getIcon("download.png"),
                 self.tr("Save Image"), self.__downloadImage)
             menu.addAction(
                 self.tr("Copy Image to Clipboard"), self.__copyImage)
-            menu.addAction(
+            act = menu.addAction(
                 UI.PixmapCache.getIcon("editCopy.png"),
-                self.tr("Copy Image Location to Clipboard"),
-                self.__copyLocation).setData(hit.imageUrl().toString())
-            menu.addAction(
+                self.tr("Copy Image Location to Clipboard"))
+            act.setData(hit.imageUrl().toString())
+            act.triggered.connect(
+                lambda: self.__copyLocation(act))
+            act = menu.addAction(
                 UI.PixmapCache.getIcon("mailSend.png"),
-                self.tr("Send Image Link"),
-                self.__sendLink).setData(hit.imageUrl())
+                self.tr("Send Image Link"))
+            act.setData(hit.imageUrl())
+            act.triggered.connect(
+                lambda: self.__sendLink(act))
             menu.addSeparator()
-            menu.addAction(
+            act = menu.addAction(
                 UI.PixmapCache.getIcon("adBlockPlus.png"),
-                self.tr("Block Image"), self.__blockImage)\
-                .setData(hit.imageUrl().toString())
+                self.tr("Block Image"))
+            act.setData(hit.imageUrl().toString())
+            act.triggered.connect(
+                lambda: self.__blockImage(act))
             if Preferences.getHelp("VirusTotalEnabled") and \
                Preferences.getHelp("VirusTotalServiceKey") != "":
-                menu.addAction(
+                act = menu.addAction(
                     UI.PixmapCache.getIcon("virustotal.png"),
-                    self.tr("Scan Image with VirusTotal"),
-                    self.__virusTotal).setData(hit.imageUrl())
+                    self.tr("Scan Image with VirusTotal"))
+                act.setData(hit.imageUrl())
+                act.triggered.connect(
+                    lambda: self.__virusTotal(act))
         
         element = hit.element()
         if not element.isNull():
@@ -1299,18 +1320,24 @@
                         UI.PixmapCache.getIcon("audioVolumeMuted.png"),
                         self.tr("Mute"), self.__muteMedia)
                 menu.addSeparator()
-                menu.addAction(
+                act = menu.addAction(
                     UI.PixmapCache.getIcon("editCopy.png"),
-                    self.tr("Copy Media Address to Clipboard"),
-                    self.__copyLocation).setData(videoUrl.toString())
-                menu.addAction(
+                    self.tr("Copy Media Address to Clipboard"))
+                act.setData(videoUrl.toString())
+                act.triggered.connect(
+                    lambda: self.__copyLocation(act))
+                act = menu.addAction(
                     UI.PixmapCache.getIcon("mailSend.png"),
-                    self.tr("Send Media Address"), self.__sendLink)\
-                    .setData(videoUrl)
-                menu.addAction(
+                    self.tr("Send Media Address"))
+                act.setData(videoUrl)
+                act.triggered.connect(
+                    lambda: self.__sendLink(act))
+                act = menu.addAction(
                     UI.PixmapCache.getIcon("download.png"),
-                    self.tr("Save Media"), self.__downloadMedia)\
-                    .setData(videoUrl)
+                    self.tr("Save Media"))
+                act.setData(videoUrl)
+                act.triggered.connect(
+                    lambda: self.__downloadMedia(act))
             
             if element.tagName().lower() in ["input", "textarea"]:
                 if menu.isEmpty():
@@ -1356,10 +1383,12 @@
                 fmenu.addAction(
                     self.tr("Show &only this frame"),
                     self.__loadClickedFrame)
-                fmenu.addAction(
+                act = fmenu.addAction(
                     UI.PixmapCache.getIcon("openNewTab.png"),
-                    self.tr("Show in new &tab"),
-                    self.__openLinkInNewTab).setData(self.__clickedFrame.url())
+                    self.tr("Show in new &tab"))
+                act.setData(self.__clickedFrame.url())
+                act.triggered.connect(
+                    lambda: self.__openLinkInNewTab(act))
                 fmenu.addSeparator()
             fmenu.addAction(
                 UI.PixmapCache.getIcon("print.png"),
@@ -1391,9 +1420,12 @@
         menu.addAction(
             UI.PixmapCache.getIcon("bookmark22.png"),
             self.tr("Bookmark this Page"), self.addBookmark)
-        menu.addAction(
+        act = menu.addAction(
             UI.PixmapCache.getIcon("mailSend.png"),
-            self.tr("Send Page Link"), self.__sendLink).setData(self.url())
+            self.tr("Send Page Link"))
+        act.setData(self.url())
+        act.triggered.connect(
+            lambda: self.__sendLink(act))
         menu.addSeparator()
         self.__userAgentMenu = UserAgentMenu(self.tr("User Agent"),
                                              url=self.url())
@@ -1409,10 +1441,12 @@
         menu.addSeparator()
         if self.selectedText():
             menu.addAction(self.mw.copyAct)
-            menu.addAction(
+            act = menu.addAction(
                 UI.PixmapCache.getIcon("mailSend.png"),
-                self.tr("Send Text"),
-                self.__sendLink).setData(self.selectedText())
+                self.tr("Send Text"))
+            act.setData(self.selectedText())
+            act.triggered.connect(
+                lambda: self.__sendLink(act))
         menu.addAction(self.mw.findAct)
         menu.addSeparator()
         if self.selectedText():
@@ -1441,32 +1475,40 @@
                 googleTranslatorUrl = QUrl(
                     "http://translate.google.com/#auto|{0}|{1}".format(
                         langCode, self.selectedText()))
-                menu.addAction(
+                act = menu.addAction(
                     UI.PixmapCache.getIcon("translate.png"),
-                    self.tr("Google Translate"), self.__openLinkInNewTab)\
-                    .setData(googleTranslatorUrl)
+                    self.tr("Google Translate"))
+                act.setData(googleTranslatorUrl)
+                act.triggered.connect(
+                    lambda: self.__openLinkInNewTab(act))
                 wiktionaryUrl = QUrl(
                     "http://{0}.wiktionary.org/wiki/Special:Search?search={1}"
                     .format(langCode, self.selectedText()))
-                menu.addAction(
+                act = menu.addAction(
                     UI.PixmapCache.getIcon("wikipedia.png"),
-                    self.tr("Dictionary"), self.__openLinkInNewTab)\
-                    .setData(wiktionaryUrl)
+                    self.tr("Dictionary"))
+                act.setData(wiktionaryUrl)
+                act.triggered.connect(
+                    lambda: self.__openLinkInNewTab(act))
                 menu.addSeparator()
             
             guessedUrl = QUrl.fromUserInput(self.selectedText().strip())
             if self.__isUrlValid(guessedUrl):
-                menu.addAction(
-                    self.tr("Go to web address"),
-                    self.__openLinkInNewTab).setData(guessedUrl)
+                act = menu.addAction(self.tr("Go to web address"))
+                act.setData(guessedUrl)
+                act.triggered.connect(
+                    lambda: self.__openLinkInNewTab(act))
                 menu.addSeparator()
         
         element = hit.element()
         if not element.isNull() and \
            element.tagName().lower() == "input" and \
            element.attribute("type", "text") == "text":
-            menu.addAction(self.tr("Add to web search toolbar"),
-                           self.__addSearchEngine).setData(element)
+            act = menu.addAction(
+                self.tr("Add to web search toolbar"))
+            act.setData(element)
+            act.triggered.connect(
+                lambda: self.__addSearchEngine(act))
             menu.addSeparator()
         
         menu.addAction(
@@ -1487,12 +1529,14 @@
             bool(url.scheme()) and \
             "." in url.host()
     
-    def __openLinkInNewTab(self):
+    def __openLinkInNewTab(self, act):
         """
         Private method called by the context menu to open a link in a new
         window.
+        
+        @param act reference to the action that triggered
+        @type QAction
         """
-        act = self.sender()
         url = act.data()
         if url.isEmpty():
             return
@@ -1501,11 +1545,13 @@
         self.setSource(url)
         self.ctrlPressed = False
     
-    def __bookmarkLink(self):
+    def __bookmarkLink(self, act):
         """
         Private slot to bookmark a link via the context menu.
+        
+        @param act reference to the action that triggered
+        @type QAction
         """
-        act = self.sender()
         url = act.data()
         if url.isEmpty():
             return
@@ -1515,11 +1561,13 @@
         dlg.setUrl(bytes(url.toEncoded()).decode())
         dlg.exec_()
     
-    def __sendLink(self):
+    def __sendLink(self, act):
         """
         Private slot to send a link via email.
+        
+        @param act reference to the action that triggered
+        @type QAction
         """
-        act = self.sender()
         data = act.data()
         if isinstance(data, QUrl) and data.isEmpty():
             return
@@ -1552,29 +1600,35 @@
         """
         self.pageAction(QWebPage.CopyImageToClipboard).trigger()
     
-    def __copyLocation(self):
+    def __copyLocation(self, act):
         """
         Private slot to copy an image or media location to the clipboard.
+        
+        @param act reference to the action that triggered
+        @type QAction
         """
-        act = self.sender()
         url = act.data()
         QApplication.clipboard().setText(url)
     
-    def __blockImage(self):
+    def __blockImage(self, act):
         """
         Private slot to add a block rule for an image URL.
+        
+        @param act reference to the action that triggered
+        @type QAction
         """
         import Helpviewer.HelpWindow
-        act = self.sender()
         url = act.data()
         dlg = Helpviewer.HelpWindow.HelpWindow.adBlockManager().showDialog()
         dlg.addCustomRule(url)
     
-    def __downloadMedia(self):
+    def __downloadMedia(self, act):
         """
         Private slot to download a media and save it to disk.
+        
+        @param act reference to the action that triggered
+        @type QAction
         """
-        act = self.sender()
         url = act.data()
         self.mw.downloadManager().download(url, True, mainWindow=self.mw)
     
@@ -1600,11 +1654,13 @@
         else:
             self.__clickedMediaElement.evaluateJavaScript("this.muted = true")
     
-    def __virusTotal(self):
+    def __virusTotal(self, act):
         """
         Private slot to scan the selected URL with VirusTotal.
+        
+        @param act reference to the action that triggered
+        @type QAction
         """
-        act = self.sender()
         url = act.data()
         self.mw.requestVirusTotalScan(url)
     
@@ -1624,14 +1680,13 @@
             engine = self.mw.openSearchManager().engine(engineName)
             self.search.emit(engine.searchUrl(searchText))
     
-    def __addSearchEngine(self):
+    def __addSearchEngine(self, act):
         """
         Private slot to add a new search engine.
+        
+        @param act reference to the action that triggered
+        @type QAction
         """
-        act = self.sender()
-        if act is None:
-            return
-        
         element = act.data()
         elementName = element.attribute("name")
         formElement = QWebElement(element)
@@ -1653,8 +1708,6 @@
         
         searchUrl = QUrl(self.page().mainFrame().baseUrl().resolved(
             QUrl(formElement.attribute("action"))))
-##        if searchUrl.scheme() != "http":
-##            return
         
         if qVersionTuple() >= (5, 0, 0):
             from PyQt5.QtCore import QUrlQuery
--- a/Helpviewer/HelpTabBar.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/HelpTabBar.py	Fri Mar 02 19:35:16 2018 +0100
@@ -33,16 +33,17 @@
         self.__tabWidget = parent
         
         self.__previewPopup = None
-        self.__currentTabPreviewIndex = -1
         
         self.setMouseTracking(True)
     
-    def __showTabPreview(self):
+    def __showTabPreview(self, index):
         """
         Private slot to show the tab preview.
+        
+        @param index index of tab to show a preview for
+        @type int
         """
-        indexedBrowser = self.__tabWidget.browserAt(
-            self.__currentTabPreviewIndex)
+        indexedBrowser = self.__tabWidget.browserAt(index)
         currentBrowser = self.__tabWidget.currentBrowser()
         
         if indexedBrowser is None or currentBrowser is None:
@@ -52,13 +53,14 @@
         if indexedBrowser.progress() != 0:
             return
         
-        w = self.tabSizeHint(self.__currentTabPreviewIndex).width()
+        w = self.tabSizeHint(index).width()
         h = int(w * currentBrowser.height() / currentBrowser.width())
         
         self.__previewPopup = E5PassivePopup(self)
         self.__previewPopup.setFrameShape(QFrame.StyledPanel)
         self.__previewPopup.setFrameShadow(QFrame.Plain)
         self.__previewPopup.setFixedSize(w, h)
+        self.__previewPopup.setCustomData("index", index)
         
         from .HelpSnap import renderTabPreview
         label = QLabel()
@@ -68,11 +70,19 @@
         self.__previewPopup.layout().setAlignment(Qt.AlignTop)
         self.__previewPopup.layout().setContentsMargins(0, 0, 0, 0)
         
-        tr = self.tabRect(self.__currentTabPreviewIndex)
+        tr = self.tabRect(index)
         pos = QPoint(tr.x(), tr.y() + tr.height())
         
         self.__previewPopup.show(self.mapToGlobal(pos))
     
+    def __hidePreview(self):
+        """
+        Private method to hide the preview.
+        """
+        if self.__previewPopup is not None:
+            self.__previewPopup.hide()
+        self.__previewPopup = None
+    
     def mouseMoveEvent(self, evt):
         """
         Protected method to handle mouse move events.
@@ -96,17 +106,17 @@
             # If found and not the current tab then show tab preview
             if tabIndex != -1 and \
                tabIndex != self.currentIndex() and \
-               self.__currentTabPreviewIndex != tabIndex and \
                evt.buttons() == Qt.NoButton:
-                self.__currentTabPreviewIndex = tabIndex
-                QTimer.singleShot(200, self.__showTabPreview)
+                if self.__previewPopup is None or \
+                    (self.__previewPopup is not None and
+                     self.__previewPopup.getCustomData("index") != tabIndex):
+                    QTimer.singleShot(
+                        0, lambda: self.__showTabPreview(tabIndex))
             
             # If current tab or not found then hide previous tab preview
             if tabIndex == self.currentIndex() or \
                tabIndex == -1:
-                if self.__previewPopup is not None:
-                    self.__previewPopup.hide()
-                self.__currentTabPreviewIndex = -1
+                self.__hidePreview()
     
     def leaveEvent(self, evt):
         """
@@ -116,9 +126,7 @@
         """
         if Preferences.getHelp("ShowPreview"):
             # If leave tabwidget then hide previous tab preview
-            if self.__previewPopup is not None:
-                self.__previewPopup.hide()
-            self.__currentTabPreviewIndex = -1
+            self.__hidePreview()
         
         E5WheelTabBar.leaveEvent(self, evt)
     
@@ -129,9 +137,7 @@
         @param evt reference to the mouse press event (QMouseEvent)
         """
         if Preferences.getHelp("ShowPreview"):
-            if self.__previewPopup is not None:
-                self.__previewPopup.hide()
-            self.__currentTabPreviewIndex = -1
+            self.__hidePreview()
         
         E5WheelTabBar.mousePressEvent(self, evt)
     
@@ -160,6 +166,4 @@
         @param index index of the removed tab (integer)
         """
         if Preferences.getHelp("ShowPreview"):
-            if self.__previewPopup is not None:
-                self.__previewPopup.hide()
-            self.__currentTabPreviewIndex = -1
+            self.__hidePreview()
--- a/Helpviewer/HelpTabWidget.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/HelpTabWidget.py	Fri Mar 02 19:35:16 2018 +0100
@@ -203,9 +203,11 @@
         self.__tabBackContextMenu.addSeparator()
         self.__restoreClosedTabAct = self.__tabBackContextMenu.addAction(
             UI.PixmapCache.getIcon("trash.png"),
-            self.tr('Restore Closed Tab'), self.restoreClosedTab)
+            self.tr('Restore Closed Tab'))
         self.__restoreClosedTabAct.setEnabled(False)
         self.__restoreClosedTabAct.setData(0)
+        self.__restoreClosedTabAct.triggered.connect(
+            lambda: self.restoreClosedTab(self.__restoreClosedTabAct))
     
     def __showContextMenu(self, coord, index):
         """
@@ -328,7 +330,8 @@
                 self.__historyCompletionModel, self)
             self.__historyCompleter.activated[str].connect(self.__pathSelected)
         urlbar.setCompleter(self.__historyCompleter)
-        urlbar.returnPressed.connect(self.__lineEditReturnPressed)
+        urlbar.returnPressed.connect(
+            lambda: self.__lineEditReturnPressed(urlbar))
         if position == -1:
             self.__stackedUrlBar.addWidget(urlbar)
         else:
@@ -337,18 +340,23 @@
         browser = HelpBrowser(self.__mainWindow, self)
         urlbar.setBrowser(browser)
         
-        browser.sourceChanged.connect(self.__sourceChanged)
-        browser.titleChanged.connect(self.__titleChanged)
+        browser.sourceChanged.connect(
+            lambda url: self.__sourceChanged(url, browser))
+        browser.titleChanged.connect(
+            lambda title: self.__titleChanged(title, browser))
         browser.highlighted.connect(self.showMessage)
         browser.backwardAvailable.connect(
             self.__mainWindow.setBackwardAvailable)
         browser.forwardAvailable.connect(self.__mainWindow.setForwardAvailable)
-        browser.loadStarted.connect(self.__loadStarted)
-        browser.loadFinished.connect(self.__loadFinished)
-        browser.iconChanged.connect(self.__iconChanged)
+        browser.loadStarted.connect(
+            lambda: self.__loadStarted(browser))
+        browser.loadFinished.connect(
+            lambda ok: self.__loadFinished(ok, browser))
+        browser.iconChanged.connect(
+            lambda: self.__iconChanged(browser))
         browser.search.connect(self.newBrowser)
         browser.page().windowCloseRequested.connect(
-            self.__windowCloseRequested)
+            lambda: self.__windowCloseRequested(browser.page()))
         browser.page().printRequested.connect(self.__printRequested)
         browser.zoomValueChanged.connect(self.browserZoomValueChanged)
         
@@ -417,14 +425,13 @@
         if index is not None:
             self.setCurrentIndex(index)
     
-    def __windowCloseRequested(self):
+    def __windowCloseRequested(self, page):
         """
         Private slot to handle the windowCloseRequested signal of a browser.
+        
+        @param page reference to the web page
+        @type HelpWebPage
         """
-        page = self.sender()
-        if page is None:
-            return
-        
         browser = page.view()
         if browser is None:
             return
@@ -672,34 +679,34 @@
                     """Please upgrade.</p>"""))
             return
     
-    def __sourceChanged(self, url):
+    def __sourceChanged(self, url, browser):
         """
         Private slot to handle a change of a browsers source.
         
-        @param url URL of the new site (QUrl)
+        @param url URL of the new site
+        @type QUrl
+        @param browser reference to the web browser
+        @type HelpBrowser
         """
-        browser = self.sender()
-        
-        if browser is not None:
-            self.sourceChanged.emit(browser, url)
+        self.sourceChanged.emit(browser, url)
     
-    def __titleChanged(self, title):
+    def __titleChanged(self, title, browser):
         """
         Private slot to handle a change of a browsers title.
         
-        @param title new title (string)
+        @param title new title
+        @type str
+        @param browser reference to the web browser
+        @type HelpBrowser
         """
-        browser = self.sender()
+        index = self.indexOf(browser)
+        if title == "":
+            title = browser.url().toString()
         
-        if browser is not None and isinstance(browser, QWidget):
-            index = self.indexOf(browser)
-            if title == "":
-                title = browser.url().toString()
-            
-            self.setTabText(index, self.__elide(title.replace("&", "&&")))
-            self.setTabToolTip(index, title)
-        
-            self.titleChanged.emit(browser, title)
+        self.setTabText(index, self.__elide(title.replace("&", "&&")))
+        self.setTabToolTip(index, title)
+    
+        self.titleChanged.emit(browser, title)
     
     def __elide(self, txt, mode=Qt.ElideRight, length=40):
         """
@@ -746,65 +753,63 @@
             self.tabCloseRequested.connect(self.closeBrowserAt)
             self.__closeButton.hide()
     
-    def __loadStarted(self):
+    def __loadStarted(self, browser):
         """
         Private method to handle the loadStarted signal.
-        """
-        browser = self.sender()
         
-        if browser is not None:
-            index = self.indexOf(browser)
-            anim = self.animationLabel(
-                index, os.path.join(getConfig("ericPixDir"), "loading.gif"),
-                100)
-            if not anim:
-                loading = QIcon(os.path.join(getConfig("ericPixDir"),
-                                "loading.gif"))
-                self.setTabIcon(index, loading)
-            else:
-                self.setTabIcon(index, QIcon())
-            self.setTabText(index, self.tr("Loading..."))
-            self.setTabToolTip(index, self.tr("Loading..."))
-            self.showMessage.emit(self.tr("Loading..."))
-            
-            self.__mainWindow.setLoadingActions(True)
+        @param browser reference to the web browser
+        @type HelpBrowser
+        """
+        index = self.indexOf(browser)
+        anim = self.animationLabel(
+            index, os.path.join(getConfig("ericPixDir"), "loading.gif"),
+            100)
+        if not anim:
+            loading = QIcon(os.path.join(getConfig("ericPixDir"),
+                            "loading.gif"))
+            self.setTabIcon(index, loading)
+        else:
+            self.setTabIcon(index, QIcon())
+        self.setTabText(index, self.tr("Loading..."))
+        self.setTabToolTip(index, self.tr("Loading..."))
+        self.showMessage.emit(self.tr("Loading..."))
+        
+        self.__mainWindow.setLoadingActions(True)
     
-    def __loadFinished(self, ok):
+    def __loadFinished(self, ok, browser):
         """
         Private method to handle the loadFinished signal.
         
-        @param ok flag indicating the result (boolean)
+        @param ok flag indicating the result
+        @type bool
+        @param browser reference to the web browser
+        @type HelpBrowser
         """
-        browser = self.sender()
-        if not isinstance(browser, HelpBrowser):
-            return
+        import Helpviewer.HelpWindow
+        index = self.indexOf(browser)
+        self.resetAnimation(index)
+        self.setTabIcon(
+            index, Helpviewer.HelpWindow.HelpWindow.icon(browser.url()))
+        if ok:
+            self.showMessage.emit(self.tr("Finished loading"))
+        else:
+            self.showMessage.emit(self.tr("Failed to load"))
         
-        if browser is not None:
-            import Helpviewer.HelpWindow
-            index = self.indexOf(browser)
-            self.resetAnimation(index)
-            self.setTabIcon(
-                index, Helpviewer.HelpWindow.HelpWindow.icon(browser.url()))
-            if ok:
-                self.showMessage.emit(self.tr("Finished loading"))
-            else:
-                self.showMessage.emit(self.tr("Failed to load"))
-            
-            self.__mainWindow.setLoadingActions(False)
+        self.__mainWindow.setLoadingActions(False)
     
-    def __iconChanged(self):
+    def __iconChanged(self, browser):
         """
         Private slot to handle the icon change.
+        
+        @param browser reference to the web browser
+        @type HelpBrowser
         """
-        browser = self.sender()
-        
-        if browser is not None and isinstance(browser, QWidget):
-            import Helpviewer.HelpWindow
-            self.setTabIcon(
-                self.indexOf(browser),
-                Helpviewer.HelpWindow.HelpWindow.icon(browser.url()))
-            Helpviewer.HelpWindow.HelpWindow.bookmarksManager()\
-                .iconChanged(browser.url())
+        import Helpviewer.HelpWindow
+        self.setTabIcon(
+            self.indexOf(browser),
+            Helpviewer.HelpWindow.HelpWindow.icon(browser.url()))
+        Helpviewer.HelpWindow.HelpWindow.bookmarksManager()\
+            .iconChanged(browser.url())
     
     def getSourceFileList(self):
         """
@@ -873,11 +878,13 @@
         """
         return self.__stackedUrlBar.currentWidget()
     
-    def __lineEditReturnPressed(self):
+    def __lineEditReturnPressed(self, edit):
         """
         Private slot to handle the entering of an URL.
+        
+        @param edit reference to the line edit
+        @type UrlBar
         """
-        edit = self.sender()
         url = self.__guessUrlFromPath(edit.text())
         request = QNetworkRequest(url)
         request.setRawHeader(b"X-Eric6-UserLoadAction", b"1")
@@ -947,14 +954,16 @@
             elif browser.url() != "":
                 browser.setFocus()
     
-    def restoreClosedTab(self):
+    def restoreClosedTab(self, act):
         """
         Public slot to restore the most recently closed tab.
+        
+        @param act reference to the action that triggered
+        @type QAction
         """
         if not self.canRestoreClosedTab():
             return
         
-        act = self.sender()
         tab = self.__closedTabsManager.getClosedTabAt(act.data())
         
         self.newBrowser(tab.url.toString(), position=tab.position)
@@ -995,9 +1004,10 @@
         index = 0
         for tab in self.__closedTabsManager.allClosedTabs():
             title = fm.elidedText(tab.title, Qt.ElideRight, maxWidth)
-            self.__closedTabsMenu.addAction(
-                self.__mainWindow.icon(tab.url), title,
-                self.restoreClosedTab).setData(index)
+            act = self.__closedTabsMenu.addAction(
+                self.__mainWindow.icon(tab.url), title)
+            act.setData(index)
+            act.triggered.connect(lambda: self.restoreClosedTab(act))
             index += 1
         self.__closedTabsMenu.addSeparator()
         self.__closedTabsMenu.addAction(
--- a/Helpviewer/HelpWebSearchWidget.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/HelpWebSearchWidget.py	Fri Mar 02 19:35:16 2018 +0100
@@ -241,7 +241,8 @@
             engine = self.__openSearchManager.engine(engineName)
             action = OpenSearchEngineAction(engine, self.__enginesMenu)
             action.setData(engineName)
-            action.triggered.connect(self.__changeCurrentEngine)
+            action.triggered.connect(
+                lambda: self.__changeCurrentEngine(action))
             self.__enginesMenu.addAction(action)
             
             if self.__openSearchManager.currentEngineName() == engineName:
@@ -274,10 +275,11 @@
                     title = ct.title()
             
             action = self.__enginesMenu.addAction(
-                self.tr("Add '{0}'").format(title),
-                self.__addEngineFromUrl)
+                self.tr("Add '{0}'").format(title))
             action.setData(url)
             action.setIcon(ct.icon())
+            action.triggered.connect(
+                lambda: self.__addEngineFromUrl(action))
         
         self.__enginesMenu.addSeparator()
         self.__enginesMenu.addAction(self.__mw.searchEnginesAction())
@@ -286,26 +288,28 @@
             self.__enginesMenu.addAction(self.tr("Clear Recent Searches"),
                                          self.clear)
     
-    def __changeCurrentEngine(self):
+    def __changeCurrentEngine(self, action):
         """
         Private slot to handle the selection of a search engine.
+        
+        @param action reference to the action that triggered
+        @type QAction
         """
-        action = self.sender()
-        if action is not None:
-            name = action.data()
-            self.__openSearchManager.setCurrentEngineName(name)
+        name = action.data()
+        self.__openSearchManager.setCurrentEngineName(name)
     
-    def __addEngineFromUrl(self):
+    def __addEngineFromUrl(self, action):
         """
         Private slot to add a search engine given its URL.
+        
+        @param action reference to the action that triggered
+        @type QAction
         """
-        action = self.sender()
-        if action is not None:
-            url = action.data()
-            if not isinstance(url, QUrl):
-                return
-            
-            self.__openSearchManager.addEngine(url)
+        url = action.data()
+        if not isinstance(url, QUrl):
+            return
+        
+        self.__openSearchManager.addEngine(url)
     
     def __searchButtonClicked(self):
         """
--- a/Helpviewer/HelpWindow.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/HelpWindow.py	Fri Mar 02 19:35:16 2018 +0100
@@ -2488,7 +2488,8 @@
             self, 'Configuration', True, fromEric=self.fromEric,
             displayMode=ConfigurationDialog.HelpBrowserMode)
         dlg.preferencesChanged.connect(self.preferencesChanged)
-        dlg.masterPasswordChanged.connect(self.masterPasswordChanged)
+        dlg.masterPasswordChanged.connect(
+            lambda old, new: self.masterPasswordChanged(old, new, local=True))
         dlg.show()
         if self.__lastConfigurationPageName:
             dlg.showConfigurationPageByName(self.__lastConfigurationPageName)
@@ -2531,16 +2532,20 @@
             self.virustotalIpReportAct.setEnabled(True)
             self.virustotalDomainReportAct.setEnabled(True)
     
-    def masterPasswordChanged(self, oldPassword, newPassword):
+    def masterPasswordChanged(self, oldPassword, newPassword, local=False):
         """
         Public slot to handle the change of the master password.
         
-        @param oldPassword current master password (string)
-        @param newPassword new master password (string)
-        """
-        from Preferences.ConfigurationDialog import ConfigurationDialog
+        @param oldPassword current master password
+        @type str
+        @param newPassword new master password
+        @type str
+        @param local flag indicating being called from the local configuration
+            dialog
+        @type bool
+        """
         self.passwordManager().masterPasswordChanged(oldPassword, newPassword)
-        if self.fromEric and isinstance(self.sender(), ConfigurationDialog):
+        if self.fromEric and local:
             # we were called from our local configuration dialog
             Preferences.convertPasswords(oldPassword, newPassword)
             Utilities.crypto.changeRememberedMaster(newPassword)
@@ -3621,17 +3626,20 @@
         feedsManager = self.feedsManager()
         feedsManager.openUrl.connect(self.openUrl)
         feedsManager.newUrl.connect(self.openUrlNewTab)
-        feedsManager.rejected.connect(self.__feedsManagerClosed)
+        feedsManager.rejected.connect(
+            lambda fm: self.__feedsManagerClosed(fm))
         feedsManager.show()
     
-    def __feedsManagerClosed(self):
+    def __feedsManagerClosed(self, feedsManager):
         """
         Private slot to handle closing the feeds manager dialog.
-        """
-        feedsManager = self.sender()
+        
+        @param feedsManager reference to the feeds manager object
+        @type FeedsManager
+        """
         feedsManager.openUrl.disconnect(self.openUrl)
         feedsManager.newUrl.disconnect(self.openUrlNewTab)
-        feedsManager.rejected.disconnect(self.__feedsManagerClosed)
+        feedsManager.rejected.disconnect()
     
     def __showSiteinfoDialog(self):
         """
--- a/Helpviewer/History/HistoryMenu.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/History/HistoryMenu.py	Fri Mar 02 19:35:16 2018 +0100
@@ -404,9 +404,11 @@
         index = 0
         for tab in self.__tabWidget.closedTabsManager().allClosedTabs():
             title = fm.elidedText(tab.title, Qt.ElideRight, maxWidth)
-            self.__closedTabsMenu.addAction(
-                Helpviewer.HelpWindow.HelpWindow.icon(tab.url), title,
-                self.__tabWidget.restoreClosedTab).setData(index)
+            act = self.__closedTabsMenu.addAction(
+                Helpviewer.HelpWindow.HelpWindow.icon(tab.url), title)
+            act.setData(index)
+            act.triggered.connect(
+                lambda: self.__tabWidget.restoreClosedTab(act))
             index += 1
         self.__closedTabsMenu.addSeparator()
         self.__closedTabsMenu.addAction(
--- a/Helpviewer/OpenSearch/OpenSearchEngine.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/OpenSearch/OpenSearchEngine.py	Fri Mar 02 19:35:16 2018 +0100
@@ -364,17 +364,16 @@
         
         reply = self.__networkAccessManager.get(
             QNetworkRequest(QUrl.fromEncoded(self._imageUrl.encode("utf-8"))))
-        reply.finished.connect(self.__imageObtained)
+        reply.finished.connect(lambda: self.__imageObtained(reply))
         self.__replies.append(reply)
     
-    def __imageObtained(self):
+    def __imageObtained(self, reply):
         """
         Private slot to receive the image of the engine.
+        
+        @param reply reference to the network reply
+        @type QNetworkReply
         """
-        reply = self.sender()
-        if reply is None:
-            return
-        
         response = reply.readAll()
         
         reply.close()
--- a/Helpviewer/OpenSearch/OpenSearchManager.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/OpenSearch/OpenSearchManager.py	Fri Mar 02 19:35:16 2018 +0100
@@ -173,7 +173,7 @@
         from Helpviewer.HelpWindow import HelpWindow
 
         reply = HelpWindow.networkAccessManager().get(QNetworkRequest(url))
-        reply.finished.connect(self.__engineFromUrlAvailable)
+        reply.finished.connect(lambda: self.__engineFromUrlAvailable(reply))
         reply.setParent(self)
         self.__replies.append(reply)
         
@@ -410,14 +410,13 @@
                 """Searches on: {1}</p>""").format(engine.name(), host))
         return res
     
-    def __engineFromUrlAvailable(self):
+    def __engineFromUrlAvailable(self, reply):
         """
         Private slot to add a search engine from the net.
+        
+        @param reply reference to the network reply
+        @type QNetworkReply
         """
-        reply = self.sender()
-        if reply is None:
-            return
-        
         if reply.error() != QNetworkReply.NoError:
             reply.close()
             if reply in self.__replies:
--- a/Helpviewer/PersonalInformationManager/PersonalInformationManager.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/PersonalInformationManager/PersonalInformationManager.py	Fri Mar 02 19:35:16 2018 +0100
@@ -143,9 +143,9 @@
         
         for key, info in sorted(self.__allInfo.items()):
             if info:
-                act = submenu.addAction(
-                    self.__translations[key], self.__insertData)
+                act = submenu.addAction(self.__translations[key])
                 act.setData(info)
+                act.triggered.connect(lambda: self.__insertData(act))
         
         submenu.addSeparator()
         submenu.addAction(self.tr("Edit Personal Information"),
@@ -154,12 +154,14 @@
         menu.addMenu(submenu)
         menu.addSeparator()
     
-    def __insertData(self):
+    def __insertData(self, act):
         """
         Private slot to insert the selected personal information.
+        
+        @param act reference to the action that triggered
+        @type QAction
         """
-        act = self.sender()
-        if not self.__element or self.__element.isNull() or act is None:
+        if not self.__element or self.__element.isNull():
             return
         
         info = act.data()
--- a/Helpviewer/SiteInfo/SiteInfoDialog.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/SiteInfo/SiteInfoDialog.py	Fri Mar 02 19:35:16 2018 +0100
@@ -225,31 +225,34 @@
             return
         
         menu = QMenu()
-        act = menu.addAction(
-            self.tr("Copy Image Location to Clipboard"),
-            self.__copyAction)
+        act = menu.addAction(self.tr("Copy Image Location to Clipboard"))
         act.setData(itm.text(1))
-        act = menu.addAction(
-            self.tr("Copy Image Name to Clipboard"),
-            self.__copyAction)
+        act.triggered.connect(lambda: self.__copyAction(act))
+        act = menu.addAction(self.tr("Copy Image Name to Clipboard"))
         act.setData(itm.text(0))
+        act.triggered.connect(lambda: self.__copyAction(act))
         menu.addSeparator()
-        act = menu.addAction(self.tr("Save Image"), self.__saveImage)
+        act = menu.addAction(self.tr("Save Image"))
         act.setData(self.imagesTree.indexOfTopLevelItem(itm))
+        act.triggered.connect(lambda: self.__saveImage(act))
         menu.exec_(QCursor.pos())
     
-    def __copyAction(self):
+    def __copyAction(self, act):
         """
         Private slot to copy the image URL or the image name to the clipboard.
+        
+        @param act reference to the action that triggered
+        @type QAction
         """
-        act = self.sender()
         QApplication.clipboard().setText(act.data())
     
-    def __saveImage(self):
+    def __saveImage(self, act):
         """
         Private slot to save the selected image to disk.
+        
+        @param act reference to the action that triggered
+        @type QAction
         """
-        act = self.sender()
         index = act.data()
         itm = self.imagesTree.topLevelItem(index)
         if itm is None:
--- a/Helpviewer/SpeedDial/SpeedDial.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/SpeedDial/SpeedDial.py	Fri Mar 02 19:35:16 2018 +0100
@@ -316,7 +316,8 @@
         thumbnailer = PageThumbnailer(self)
         thumbnailer.setUrl(QUrl.fromEncoded(url.encode("utf-8")))
         thumbnailer.setLoadTitle(loadTitle)
-        thumbnailer.thumbnailCreated.connect(self.__thumbnailCreated)
+        thumbnailer.thumbnailCreated.connect(
+            lambda imag: self.__thumbnailCreated(imag, thumbnailer))
         self.__thumbnailers.append(thumbnailer)
         
         thumbnailer.start()
@@ -388,48 +389,47 @@
         """
         return self.__speedDialSize
     
-    def __thumbnailCreated(self, image):
+    def __thumbnailCreated(self, image, thumbnailer):
         """
         Private slot to handle the creation of a thumbnail image.
         
-        @param image thumbnail image (QPixmap)
+        @param image thumbnail image
+        @type QPixmap
+        @param thumbnailer reference to the page thumbnailer
+        @type PageThumbnailer
         """
-        from .PageThumbnailer import PageThumbnailer
-        thumbnailer = self.sender()
-        if not isinstance(thumbnailer, PageThumbnailer) or \
-           thumbnailer not in self.__thumbnailers:
-            return
-        
-        loadTitle = thumbnailer.loadTitle()
-        title = thumbnailer.title()
-        url = thumbnailer.url().toString()
-        fileName = self.__imageFileName(url)
-        
-        if image.isNull():
-            fileName = "qrc:icons/brokenPage.png"
-            title = self.tr("Unable to load")
-            loadTitle = True
-            page = self.pageForUrl(thumbnailer.url())
-            page.broken = True
-        else:
-            if not image.save(fileName):
-                qWarning(
-                    "SpeedDial.__thumbnailCreated: Cannot save thumbnail"
-                    " to {0}".format(fileName))
+        if thumbnailer in self.__thumbnailers:
+            loadTitle = thumbnailer.loadTitle()
+            title = thumbnailer.title()
+            url = thumbnailer.url().toString()
+            fileName = self.__imageFileName(url)
             
-            fileName = QUrl.fromLocalFile(fileName).toString()
-        
-        self.__regenerateScript = True
-        
-        for frame in self.__cleanFrames():
-            frame.evaluateJavaScript("setImageToUrl('{0}', '{1}');".format(
-                                     url, fileName))
-            if loadTitle:
-                frame.evaluateJavaScript("setTitleToUrl('{0}', '{1}');".format(
-                                         url, Utilities.html_uencode(title)))
-        
-        thumbnailer.deleteLater()
-        self.__thumbnailers.remove(thumbnailer)
+            if image.isNull():
+                fileName = "qrc:icons/brokenPage.png"
+                title = self.tr("Unable to load")
+                loadTitle = True
+                page = self.pageForUrl(thumbnailer.url())
+                page.broken = True
+            else:
+                if not image.save(fileName):
+                    qWarning(
+                        "SpeedDial.__thumbnailCreated: Cannot save thumbnail"
+                        " to {0}".format(fileName))
+                
+                fileName = QUrl.fromLocalFile(fileName).toString()
+            
+            self.__regenerateScript = True
+            
+            for frame in self.__cleanFrames():
+                frame.evaluateJavaScript("setImageToUrl('{0}', '{1}');".format(
+                                         url, fileName))
+                if loadTitle:
+                    frame.evaluateJavaScript(
+                        "setTitleToUrl('{0}', '{1}');".format(
+                            url, Utilities.html_uencode(title)))
+            
+            thumbnailer.deleteLater()
+            self.__thumbnailers.remove(thumbnailer)
     
     def __cleanFrames(self):
         """
--- a/Helpviewer/UserAgent/UserAgentMenu.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/UserAgent/UserAgentMenu.py	Fri Mar 02 19:35:16 2018 +0100
@@ -107,11 +107,13 @@
             else:
                 HelpWebPage().setUserAgent(userAgent)
     
-    def __changeUserAgent(self):
+    def __changeUserAgent(self, act):
         """
         Private slot to change the user agent.
+        
+        @param act reference to the action that triggered
+        @type QAction
         """
-        act = self.sender()
         if self.__url:
             self.__manager.setUserAgentForUrl(self.__url, act.data())
         else:
@@ -157,7 +159,7 @@
                 act.setToolTip(userAgent)
                 act.setCheckable(True)
                 act.setChecked(userAgent == currentUserAgentString)
-                act.triggered.connect(self.__changeUserAgent)
+                act.triggered.connect(lambda: self.__changeUserAgent(act))
                 if menuStack:
                     menuStack[-1].addAction(act)
                 else:
--- a/Helpviewer/VirusTotal/VirusTotalApi.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Helpviewer/VirusTotal/VirusTotalApi.py	Fri Mar 02 19:35:16 2018 +0100
@@ -127,17 +127,20 @@
         import Helpviewer.HelpWindow
         nam = Helpviewer.HelpWindow.HelpWindow.networkAccessManager()
         reply = nam.post(request, params)
-        reply.finished.connect(self.__checkServiceKeyValidityFinished)
+        reply.finished.connect(
+            lambda: self.__checkServiceKeyValidityFinished(reply))
         self.__replies.append(reply)
     
-    def __checkServiceKeyValidityFinished(self):
+    def __checkServiceKeyValidityFinished(self, reply):
         """
         Private slot to determine the result of the service key validity check.
+        
+        @param reply reference to the network reply
+        @type QNetworkReply
         """
         res = False
         msg = ""
         
-        reply = self.sender()
         if reply.error() == QNetworkReply.NoError:
             res = True
         elif reply.error() == self.ServiceCode_InvalidKey:
@@ -168,11 +171,13 @@
         reply.finished.connect(self.__submitUrlFinished)
         self.__replies.append(reply)
     
-    def __submitUrlFinished(self):
+    def __submitUrlFinished(self, reply):
         """
         Private slot to determine the result of the URL scan submission.
+        
+        @param reply reference to the network reply
+        @type QNetworkReply
         """
-        reply = self.sender()
         if reply.error() == QNetworkReply.NoError:
             result = json.loads(str(reply.readAll(), "utf-8"))
             if result["response_code"] == self.ServiceResult_ItemPresent:
@@ -211,12 +216,14 @@
         reply.finished.connect(self.__getUrlScanReportUrlFinished)
         self.__replies.append(reply)
     
-    def __getUrlScanReportUrlFinished(self):
+    def __getUrlScanReportUrlFinished(self, reply):
         """
         Private slot to determine the result of the URL scan report URL
         request.
+        
+        @param reply reference to the network reply
+        @type QNetworkReply
         """
-        reply = self.sender()
         if reply.error() == QNetworkReply.NoError:
             result = json.loads(str(reply.readAll(), "utf-8"))
             if "filescan_id" in result and result["filescan_id"] is not None:
@@ -243,12 +250,14 @@
         reply.finished.connect(self.__getFileScanReportUrlFinished)
         self.__replies.append(reply)
     
-    def __getFileScanReportUrlFinished(self):
+    def __getFileScanReportUrlFinished(self, reply):
         """
         Private slot to determine the result of the file scan report URL
         request.
+        
+        @param reply reference to the network reply
+        @type QNetworkReply
         """
-        reply = self.sender()
         if reply.error() == QNetworkReply.NoError:
             result = json.loads(str(reply.readAll(), "utf-8"))
             self.fileScanReport.emit(result["permalink"])
@@ -284,11 +293,13 @@
         reply.finished.connect(self.__getIpAddressReportFinished)
         self.__replies.append(reply)
     
-    def __getIpAddressReportFinished(self):
+    def __getIpAddressReportFinished(self, reply):
         """
         Private slot to process the IP address report data.
+        
+        @param reply reference to the network reply
+        @type QNetworkReply
         """
-        reply = self.sender()
         if reply.error() == QNetworkReply.NoError:
             result = json.loads(str(reply.readAll(), "utf-8"))
             if result["response_code"] == 0:
@@ -343,14 +354,16 @@
         import Helpviewer.HelpWindow
         nam = Helpviewer.HelpWindow.HelpWindow.networkAccessManager()
         reply = nam.get(request)
-        reply.finished.connect(self.__getDomainReportFinished)
+        reply.finished.connect(lambda: self.__getDomainReportFinished(reply))
         self.__replies.append(reply)
     
-    def __getDomainReportFinished(self):
+    def __getDomainReportFinished(self, reply):
         """
         Private slot to process the IP address report data.
+        
+        @param reply reference to the network reply
+        @type QNetworkReply
         """
-        reply = self.sender()
         if reply.error() == QNetworkReply.NoError:
             result = json.loads(str(reply.readAll(), "utf-8"))
             if result["response_code"] == 0:
--- a/PluginManager/PluginRepositoryDialog.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/PluginManager/PluginRepositoryDialog.py	Fri Mar 02 19:35:16 2018 +0100
@@ -135,8 +135,6 @@
             self.__networkConfigurationManager = None
             self.__onlineStateChanged(True)
         
-        self.__doneMethod = None
-        self.__inDownload = False
         self.__pluginsToDownload = []
         self.__pluginsDownloaded = []
         self.__isDownloadInstall = False
@@ -310,7 +308,7 @@
         if self.__isDownloadInstall:
             self.__allDownloadedOk &= status
         
-        del self.__pluginsToDownload[0]
+        self.__pluginsToDownload.pop(0)
         if len(self.__pluginsToDownload):
             self.__downloadPlugin()
         else:
@@ -350,7 +348,6 @@
         self.__downloadButton.setEnabled(len(self.__selectedItems()))
         self.__downloadInstallButton.setEnabled(len(self.__selectedItems()))
         self.__installButton.setEnabled(True)
-        self.__doneMethod = None
         if not self.__external:
             ui = e5App().getObject("UserInterface")
         else:
@@ -397,7 +394,6 @@
         self.__updateRemoteItems = 0
         
         self.downloadProgress.setValue(0)
-        self.__doneMethod = None
         
         if os.path.exists(self.pluginRepositoryFile):
             self.__repositoryMissing = False
@@ -459,17 +455,12 @@
             
             self.statusLabel.setText(url)
             
-            self.__doneMethod = doneMethod
-            self.__downloadURL = url
-            self.__downloadFileName = filename
-            self.__downloadIODevice = QFile(self.__downloadFileName + ".tmp")
-            self.__downloadCancelled = False
-            
             request = QNetworkRequest(QUrl(url))
             request.setAttribute(QNetworkRequest.CacheLoadControlAttribute,
                                  QNetworkRequest.AlwaysNetwork)
             reply = self.__networkManager.get(request)
-            reply.finished.connect(lambda: self.__downloadFileDone(reply))
+            reply.finished.connect(
+                lambda: self.__downloadFileDone(reply, filename, doneMethod))
             reply.downloadProgress.connect(self.__downloadProgress)
             self.__replies.append(reply)
         else:
@@ -481,13 +472,17 @@
                     """ from {0}.</p><p>Error: {1}</p>"""
                 ).format(url, self.tr("Computer is offline.")))
     
-    def __downloadFileDone(self, reply):
+    def __downloadFileDone(self, reply, fileName, doneMethod):
         """
         Private method called, after the file has been downloaded
         from the Internet.
         
         @param reply reference to the reply object of the download
         @type QNetworkReply
+        @param fileName local name of the file
+        @type str
+        @param doneMethod method to be called when done
+        @type func
         """
         self.__updateButton.setEnabled(True)
         self.__downloadCancelButton.setEnabled(False)
@@ -498,19 +493,16 @@
             self.__replies.remove(reply)
         if reply.error() != QNetworkReply.NoError:
             ok = False
-            if not self.__downloadCancelled:
+            if reply.error() != QNetworkReply.OperationCanceledError:
                 E5MessageBox.warning(
                     self,
                     self.tr("Error downloading file"),
                     self.tr(
                         """<p>Could not download the requested file"""
                         """ from {0}.</p><p>Error: {1}</p>"""
-                    ).format(self.__downloadURL, reply.errorString())
+                    ).format(reply.url().toString(), reply.errorString())
                 )
             self.downloadProgress.setValue(0)
-            self.__downloadURL = None
-            self.__downloadIODevice.remove()
-            self.__downloadIODevice = None
             if self.repositoryList.topLevelItemCount():
                 if self.repositoryList.currentItem() is None:
                     self.repositoryList.setCurrentItem(
@@ -523,33 +515,36 @@
             reply.deleteLater()
             return
         
-        self.__downloadIODevice.open(QIODevice.WriteOnly)
+        downloadIODevice = QFile(fileName + ".tmp")
+        downloadIODevice.open(QIODevice.WriteOnly)
         # read data in chunks
         chunkSize = 64 * 1024 * 1024
         while True:
             data = reply.read(chunkSize)
             if data is None or len(data) == 0:
                 break
-            self.__downloadIODevice.write(data)
-        self.__downloadIODevice.close()
-        if QFile.exists(self.__downloadFileName):
-            QFile.remove(self.__downloadFileName)
-        self.__downloadIODevice.rename(self.__downloadFileName)
-        self.__downloadIODevice = None
-        self.__downloadURL = None
+            downloadIODevice.write(data)
+        downloadIODevice.close()
+        if QFile.exists(fileName):
+            QFile.remove(fileName)
+        downloadIODevice.rename(fileName)
         reply.deleteLater()
         
-        if self.__doneMethod is not None:
-            self.__doneMethod(ok, self.__downloadFileName)
+        if doneMethod is not None:
+            doneMethod(ok, fileName)
     
-    def __downloadCancel(self):
+    def __downloadCancel(self, reply=None):
         """
         Private slot to cancel the current download.
+        
+        @param reply reference to the network reply
+        @type QNetworkReply
         """
-        if self.__replies:
-            reply = self.__replies[0]
-            self.__downloadCancelled = True
-            self.__pluginsToDownload = []
+        if reply is None:
+            if self.__replies:
+                reply = self.__replies[0]
+        self.__pluginsToDownload = []
+        if reply is not None:
             reply.abort()
     
     def __downloadProgress(self, done, total):
@@ -695,7 +690,7 @@
         """
         ignored = self.__sslErrorHandler.sslErrorsReply(reply, errors)[0]
         if ignored == E5SslErrorHandler.NotIgnored:
-            self.__downloadCancelled = True
+            self.__downloadCancel(reply)
     
     def getDownloadedPlugins(self):
         """
--- a/Plugins/CheckerPlugins/CodeStyleChecker/MiscellaneousChecker.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Plugins/CheckerPlugins/CodeStyleChecker/MiscellaneousChecker.py	Fri Mar 02 19:35:16 2018 +0100
@@ -222,7 +222,7 @@
         @return tuple containing the line number and the coding
         @rtype tuple of int and str
         """
-        for lineno, line in enumerate(self.__source[:2]):
+        for lineno, line in enumerate(self.__source[:5]):
             matched = re.search('coding[:=]\s*([-\w_.]+)', line, re.IGNORECASE)
             if matched:
                 return lineno, matched.group(1)
--- a/Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheck.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheck.py	Fri Mar 02 19:35:16 2018 +0100
@@ -26,9 +26,16 @@
 except ImportError:
     pass
 
-VcsConflictMarkerRe = re.compile(
-    r"""^<<<<<<< .*?=======.*?>>>>>>> .*?$""",
-    re.MULTILINE | re.DOTALL)
+VcsConflictMarkerRegExpList = (
+    re.compile(
+        r"""^<<<<<<< .*?\|\|\|\|\|\|\| .*?=======.*?>>>>>>> .*?$""",
+        re.MULTILINE | re.DOTALL
+    ),
+    re.compile(
+        r"""^<<<<<<< .*?=======.*?>>>>>>> .*?$""",
+        re.MULTILINE | re.DOTALL
+    ),
+)
 
 
 def initService():
@@ -236,14 +243,15 @@
         codestring = normalizeCode(codestring)
         
         # Check for VCS conflict markers
-        conflict = VcsConflictMarkerRe.search(codestring)
-        if conflict is not None:
-            start, i = conflict.span()
-            lineindex = 1 + codestring.count("\n", 0, start)
-            return [{'error':
-                     (file_enc, lineindex, 0, "",
-                      "VCS conflict marker found")
-                     }]
+        for conflictMarkerRe in VcsConflictMarkerRegExpList:
+            conflict = conflictMarkerRe.search(codestring)
+            if conflict is not None:
+                start, i = conflict.span()
+                lineindex = 1 + codestring.count("\n", 0, start)
+                return [{'error':
+                         (file_enc, lineindex, 0, "",
+                          "VCS conflict marker found")
+                         }]
         
         if filename.endswith('.ptl'):
             try:
--- a/Plugins/UiExtensionPlugins/PipInterface/PipListDialog.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Plugins/UiExtensionPlugins/PipInterface/PipListDialog.py	Fri Mar 02 19:35:16 2018 +0100
@@ -253,6 +253,8 @@
         self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(True)
         self.buttonBox.button(QDialogButtonBox.Cancel).setDefault(True)
         self.__refreshButton.setEnabled(False)
+        if self.__upgradeAllButton is not None:
+            self.__upgradeAllButton.setEnabled(False)
         QApplication.processEvents()
         
         QApplication.setOverrideCursor(Qt.WaitCursor)
--- a/Plugins/UiExtensionPlugins/PipInterface/PipSearchDialog.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Plugins/UiExtensionPlugins/PipInterface/PipSearchDialog.py	Fri Mar 02 19:35:16 2018 +0100
@@ -277,11 +277,10 @@
                     'version': [version.strip()],
                     'score': score}
             else:
-                # TODO: allow for multiple versions using highest score
                 if score > packages[name]['score']:
                     packages[name]['score'] = score
                     packages[name]['summary'] = summary
-                    packages[name]['version'].append(version.strip())
+                packages[name]['version'].append(version.strip())
 
         return list(packages.values())
     
--- a/Plugins/VcsPlugins/vcsGit/GitDiffGenerator.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Plugins/VcsPlugins/vcsGit/GitDiffGenerator.py	Fri Mar 02 19:35:16 2018 +0100
@@ -42,13 +42,17 @@
         
         self.process = QProcess()
         self.process.finished.connect(self.__procFinished)
-        self.process.readyReadStandardOutput.connect(self.__readStdout)
-        self.process.readyReadStandardError.connect(self.__readStderr)
+        self.process.readyReadStandardOutput.connect(
+            lambda: self.__readStdout(self.process))
+        self.process.readyReadStandardError.connect(
+            lambda: self.__readStderr(self.process))
         
         self.process2 = QProcess()
         self.process2.finished.connect(self.__procFinished)
-        self.process2.readyReadStandardOutput.connect(self.__readStdout)
-        self.process2.readyReadStandardError.connect(self.__readStderr)
+        self.process2.readyReadStandardOutput.connect(
+            lambda: self.__readStdout(self.process2))
+        self.process2.readyReadStandardError.connect(
+            lambda: self.__readStderr(self.process2))
     
     def stopProcesses(self):
         """
@@ -208,14 +212,16 @@
         else:
             self.__output2.append(line)
     
-    def __readStdout(self):
+    def __readStdout(self, process):
         """
         Private slot to handle the readyReadStandardOutput signal.
         
         It reads the output of the process, formats it and inserts it into
         the contents pane.
+        
+        @param process reference to the process providing output
+        @type QProcess
         """
-        process = self.sender()
         process.setReadChannel(QProcess.StandardOutput)
         
         isTopDiff = process == self.process
@@ -225,14 +231,16 @@
                        'replace')
             self.__processLine(line, isTopDiff)
     
-    def __readStderr(self):
+    def __readStderr(self, process):
         """
         Private slot to handle the readyReadStandardError signal.
         
         It reads the error output of the process and inserts it into the
         error pane.
+        
+        @param process reference to the process providing error output
+        @type QProcess
         """
-        if self.process is not None:
-            s = str(self.process.readAllStandardError(),
-                    self.__ioEncoding, 'replace')
-            self.__errors.append(s)
+        s = str(process.readAllStandardError(), self.__ioEncoding,
+                'replace')
+        self.__errors.append(s)
--- a/Plugins/VcsPlugins/vcsMercurial/hg.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/hg.py	Fri Mar 02 19:35:16 2018 +0100
@@ -2147,11 +2147,15 @@
             if os.path.splitdrive(repodir)[1] == os.sep:
                 return
         
-        args = self.initCommand("update")
-        args.append("--clean")
+        if self.version >= (4, 5, 0):
+            args = self.initCommand("merge")
+            args.append("--abort")
+        else:
+            args = self.initCommand("update")
+            args.append("--clean")
         
         dia = HgDialog(
-            self.tr('Cancelling uncommitted merge'),
+            self.tr('Canceling uncommitted merge'),
             self)
         res = dia.startProcess(args, repodir, False)
         if res:
--- a/Plugins/ViewManagerPlugins/Listspace/Listspace.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Plugins/ViewManagerPlugins/Listspace/Listspace.py	Fri Mar 02 19:35:16 2018 +0100
@@ -449,7 +449,8 @@
             self.currentStack.addWidget(win)
             self.currentStack.setCurrentWidget(win)
         editor.captionChanged.connect(self.__captionChange)
-        editor.cursorLineChanged.connect(self.__cursorLineChanged)
+        editor.cursorLineChanged.connect(
+            lambda lineno: self.__cursorLineChanged(lineno, editor))
         
         index = self.editors.index(editor)
         self.viewlist.setCurrentRow(index)
@@ -477,14 +478,15 @@
         if fn:
             self.setEditorName(editor, fn)
         
-    def __cursorLineChanged(self, lineno):
+    def __cursorLineChanged(self, lineno, editor):
         """
         Private slot to handle a change of the current editor's cursor line.
         
-        @param lineno line number of the current editor's cursor (zero based)
+        @param lineno line number of the editor's cursor (zero based)
         @type int
+        @param editor reference to the editor
+        @type Editor
         """
-        editor = self.sender()
         if editor:
             fn = editor.getFileName()
             if fn:
--- a/Plugins/ViewManagerPlugins/Tabview/Tabview.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Plugins/ViewManagerPlugins/Tabview/Tabview.py	Fri Mar 02 19:35:16 2018 +0100
@@ -379,7 +379,8 @@
         if editor not in self.editors:
             self.editors.append(editor)
             editor.captionChanged.connect(self.__captionChange)
-            editor.cursorLineChanged.connect(self.__cursorLineChanged)
+            editor.cursorLineChanged.connect(
+                lambda lineno: self.__cursorLineChanged(lineno, editor))
         
         emptyIndex = self.indexOf(self.emptyLabel)
         if emptyIndex > -1:
@@ -412,7 +413,8 @@
         if editor not in self.editors:
             self.editors.append(editor)
             editor.captionChanged.connect(self.__captionChange)
-            editor.cursorLineChanged.connect(self.__cursorLineChanged)
+            editor.cursorLineChanged.connect(
+                lambda lineno: self.__cursorLineChanged(lineno, editor))
         emptyIndex = self.indexOf(self.emptyLabel)
         if emptyIndex > -1:
             self.removeTab(emptyIndex)
@@ -451,14 +453,15 @@
                 self.setTabText(index, txt)
                 self.setTabToolTip(index, fn)
         
-    def __cursorLineChanged(self, lineno):
+    def __cursorLineChanged(self, lineno, editor):
         """
         Private slot to handle a change of the current editor's cursor line.
         
-        @param lineno line number of the current editor's cursor (zero based)
+        @param lineno line number of the editor's cursor (zero based)
         @type int
+        @param editor reference to the editor
+        @type Editor
         """
-        editor = self.sender()
         if editor and isinstance(editor, QScintilla.Editor.Editor):
             fn = editor.getFileName()
             if fn:
@@ -472,8 +475,8 @@
         @type QWidget
         """
         if isinstance(widget, QScintilla.Editor.Editor):
-            widget.cursorLineChanged.disconnect(self.__cursorLineChanged)
-            widget.captionChanged.disconnect(self.__captionChange)
+            widget.cursorLineChanged.disconnect()
+            widget.captionChanged.disconnect()
             self.editors.remove(widget)
             index = self.indexOf(widget.parent())
         else:
--- a/Plugins/WizardPlugins/PyRegExpWizard/PyRegExpWizardCharactersDialog.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Plugins/WizardPlugins/PyRegExpWizard/PyRegExpWizardCharactersDialog.py	Fri Mar 02 19:35:16 2018 +0100
@@ -158,8 +158,10 @@
         hboxLayout.addWidget(le2)
         self.singlesItemsBoxLayout.addWidget(hbox)
         
-        cb1.activated[int].connect(self.__singlesCharTypeSelected)
-        cb2.activated[int].connect(self.__singlesCharTypeSelected)
+        cb1.activated[int].connect(
+            lambda i: self.__singlesCharTypeSelected(i, cb1))
+        cb2.activated[int].connect(
+            lambda i: self.__singlesCharTypeSelected(i, cb2))
         hbox.show()
         
         self.singlesItemsBox.adjustSize()
@@ -192,7 +194,8 @@
         hboxLayout.addWidget(le2)
         self.rangesItemsBoxLayout.addWidget(hbox)
         
-        cb1.activated[int].connect(self.__rangesCharTypeSelected)
+        cb1.activated[int].connect(
+            lambda i: self.__rangesCharTypeSelected(i, cb1))
         
         hbox.show()
         
@@ -219,27 +222,31 @@
             lineedit.setEnabled(False)
         lineedit.clear()
         
-    def __singlesCharTypeSelected(self, index):
+    def __singlesCharTypeSelected(self, index, combo):
         """
         Private slot to handle the activated(int) signal of the single chars
         combo boxes.
         
-        @param index selected list index (integer)
+        @param index selected list index
+        @type int
+        @param combo reference to the combo box
+        @type QComboBox
         """
-        combo = self.sender()
         for entriesList in self.singlesEntries:
             if combo == entriesList[0]:
                 self.__performSelectedAction(index, entriesList[1])
                 break
         
-    def __rangesCharTypeSelected(self, index):
+    def __rangesCharTypeSelected(self, index, combo):
         """
         Private slot to handle the activated(int) signal of the char ranges
         combo boxes.
         
-        @param index selected list index (integer)
+        @param index selected list index
+        @type int
+        @param combo reference to the combo box
+        @type QComboBox
         """
-        combo = self.sender()
         for entriesList in self.rangesEntries:
             if combo == entriesList[0]:
                 self.__performSelectedAction(index, entriesList[1])
--- a/Plugins/WizardPlugins/QRegExpWizard/QRegExpWizardCharactersDialog.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Plugins/WizardPlugins/QRegExpWizard/QRegExpWizardCharactersDialog.py	Fri Mar 02 19:35:16 2018 +0100
@@ -448,8 +448,10 @@
         cb2a.hide()
         self.singlesItemsBoxLayout.addWidget(hbox)
         
-        cb1.activated[int].connect(self.__singlesCharTypeSelected)
-        cb2.activated[int].connect(self.__singlesCharTypeSelected)
+        cb1.activated[int].connect(
+            lambda i: self.__singlesCharTypeSelected(i, cb1))
+        cb2.activated[int].connect(
+            lambda i: self.__singlesCharTypeSelected(i, cb2))
         hbox.show()
         
         self.singlesItemsBox.adjustSize()
@@ -482,7 +484,9 @@
         hboxLayout.addWidget(le2)
         self.rangesItemsBoxLayout.addWidget(hbox)
         
-        cb1.activated[int].connect(self.__rangesCharTypeSelected)
+        cb1.activated[int].connect(
+            lambda i: self.__rangesCharTypeSelected(i, cb1))
+        
         hbox.show()
         
         self.rangesItemsBox.adjustSize()
@@ -547,14 +551,16 @@
                 combo.hide()
         lineedit.clear()
         
-    def __singlesCharTypeSelected(self, index):
+    def __singlesCharTypeSelected(self, index, combo):
         """
         Private slot to handle the activated(int) signal of the single chars
         combo boxes.
         
-        @param index selected list index (integer)
+        @param index selected list index
+        @type int
+        @param combo reference to the combo box
+        @type QComboBox
         """
-        combo = self.sender()
         for entriesList in self.singlesEntries:
             if combo == entriesList[0]:
                 formatIdentifier = combo.itemData(index)
@@ -562,14 +568,16 @@
                     formatIdentifier, entriesList[1], entriesList[2])
                 break
         
-    def __rangesCharTypeSelected(self, index):
+    def __rangesCharTypeSelected(self, index, combo):
         """
         Private slot to handle the activated(int) signal of the char ranges
         combo boxes.
         
-        @param index selected list index (integer)
+        @param index selected list index
+        @type int
+        @param combo reference to the combo box
+        @type QComboBox
         """
-        combo = self.sender()
         for entriesList in self.rangesEntries:
             if combo == entriesList[0]:
                 formatIdentifier = combo.itemData(index)
--- a/Plugins/WizardPlugins/QRegularExpressionWizard/QRegularExpressionWizardCharactersDialog.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Plugins/WizardPlugins/QRegularExpressionWizard/QRegularExpressionWizardCharactersDialog.py	Fri Mar 02 19:35:16 2018 +0100
@@ -362,8 +362,10 @@
         cb2a.hide()
         self.singlesItemsBoxLayout.addWidget(hbox)
         
-        cb1.activated[int].connect(self.__singlesCharTypeSelected)
-        cb2.activated[int].connect(self.__singlesCharTypeSelected)
+        cb1.activated[int].connect(
+            lambda i: self.__singlesCharTypeSelected(i, cb1))
+        cb2.activated[int].connect(
+            lambda i: self.__singlesCharTypeSelected(i, cb2))
         hbox.show()
         
         self.singlesItemsBox.adjustSize()
@@ -396,7 +398,9 @@
         hboxLayout.addWidget(le2)
         self.rangesItemsBoxLayout.addWidget(hbox)
         
-        cb1.activated[int].connect(self.__rangesCharTypeSelected)
+        cb1.activated[int].connect(
+            lambda i: self.__rangesCharTypeSelected(i, cb1))
+        
         hbox.show()
         
         self.rangesItemsBox.adjustSize()
@@ -464,14 +468,16 @@
                 combo.hide()
         lineedit.clear()
     
-    def __singlesCharTypeSelected(self, index):
+    def __singlesCharTypeSelected(self, index, combo):
         """
         Private slot to handle the activated(int) signal of the single chars
         combo boxes.
         
-        @param index selected list index (integer)
+        @param index selected list index
+        @type int
+        @param combo reference to the combo box
+        @type QComboBox
         """
-        combo = self.sender()
         for entriesList in self.singlesEntries:
             if combo == entriesList[0]:
                 formatIdentifier = combo.itemData(index)
@@ -479,14 +485,16 @@
                     formatIdentifier, entriesList[1], entriesList[2])
                 break
     
-    def __rangesCharTypeSelected(self, index):
+    def __rangesCharTypeSelected(self, index, combo):
         """
         Private slot to handle the activated(int) signal of the char ranges
         combo boxes.
         
-        @param index selected list index (integer)
+        @param index selected list index
+        @type int
+        @param combo reference to the combo box
+        @type QComboBox
         """
-        combo = self.sender()
         for entriesList in self.rangesEntries:
             if combo == entriesList[0]:
                 formatIdentifier = combo.itemData(index)
--- a/Preferences/ConfigurationPages/ConfigurationPageBase.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Preferences/ConfigurationPages/ConfigurationPageBase.py	Fri Mar 02 19:35:16 2018 +0100
@@ -66,15 +66,17 @@
         button.setIcon(QIcon(pm))
         button.setProperty("colorKey", colourKey)
         button.setProperty("hasAlpha", hasAlpha)
-        button.clicked.connect(self.__selectColourSlot)
+        button.clicked.connect(lambda: self.__selectColourSlot(button))
         self.__coloursDict[colourKey] = [colour, byName]
         
     @pyqtSlot()
-    def __selectColourSlot(self):
+    def __selectColourSlot(self, button):
         """
         Private slot to select a color.
+        
+        @param button reference to the button been pressed
+        @type QPushButton
         """
-        button = self.sender()
         colorKey = button.property("colorKey")
         hasAlpha = button.property("hasAlpha")
         
--- a/Preferences/ConfigurationPages/DiffColoursPage.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Preferences/ConfigurationPages/DiffColoursPage.py	Fri Mar 02 19:35:16 2018 +0100
@@ -42,27 +42,48 @@
             sample.setFont(monospacedFont)
         
         # set initial values
-        self.__initColour("TextColor", self.textButton,
-                          self.__updateSampleTextColour,
-                          self.__selectTextColour, self.textSample)
-        self.__initColour("AddedColor", self.addedButton,
-                          self.__updateSampleBackgroundColour,
-                          self.__selectBackgroundColour, self.addedSample)
-        self.__initColour("RemovedColor", self.removedButton,
-                          self.__updateSampleBackgroundColour,
-                          self.__selectBackgroundColour, self.removedSample)
-        self.__initColour("ReplacedColor", self.replacedButton,
-                          self.__updateSampleBackgroundColour,
-                          self.__selectBackgroundColour, self.replacedSample)
-        self.__initColour("ContextColor", self.contextButton,
-                          self.__updateSampleBackgroundColour,
-                          self.__selectBackgroundColour, self.contextSample)
-        self.__initColour("HeaderColor", self.headerButton,
-                          self.__updateSampleBackgroundColour,
-                          self.__selectBackgroundColour, self.headerSample)
-        self.__initColour("BadWhitespaceColor", self.whitespaceButton,
-                          self.__updateSampleBackgroundColour,
-                          self.__selectBackgroundColour, self.whitespaceSample)
+        self.__initColour(
+            "TextColor",
+            self.textButton,
+            self.__updateSampleTextColour,
+            lambda: self.__selectTextColour(self.textButton),
+            self.textSample)
+        self.__initColour(
+            "AddedColor",
+            self.addedButton,
+            self.__updateSampleBackgroundColour,
+            lambda: self.__selectBackgroundColour(self.addedButton),
+            self.addedSample)
+        self.__initColour(
+            "RemovedColor",
+            self.removedButton,
+            self.__updateSampleBackgroundColour,
+            lambda: self.__selectBackgroundColour(self.removedButton),
+            self.removedSample)
+        self.__initColour(
+            "ReplacedColor",
+            self.replacedButton,
+            self.__updateSampleBackgroundColour,
+            lambda: self.__selectBackgroundColour(self.replacedButton),
+            self.replacedSample)
+        self.__initColour(
+            "ContextColor",
+            self.contextButton,
+            self.__updateSampleBackgroundColour,
+            lambda: self.__selectBackgroundColour(self.contextButton),
+            self.contextSample)
+        self.__initColour(
+            "HeaderColor",
+            self.headerButton,
+            self.__updateSampleBackgroundColour,
+            lambda: self.__selectBackgroundColour(self.headerButton),
+            self.headerSample)
+        self.__initColour(
+            "BadWhitespaceColor",
+            self.whitespaceButton,
+            self.__updateSampleBackgroundColour,
+            lambda: self.__selectBackgroundColour(self.whitespaceButton),
+            self.whitespaceSample)
     
     def save(self):
         """
@@ -95,11 +116,13 @@
             initSlot(colourKey)
     
     @pyqtSlot()
-    def __selectTextColour(self):
+    def __selectTextColour(self, button):
         """
         Private slot to select the text colour.
+        
+        @param button reference to the button been pressed
+        @type QPushButton
         """
-        button = self.sender()
         colorKey = button.property("colorKey")
         
         colour = QColorDialog.getColor(self.__coloursDict[colorKey][0], self)
@@ -108,11 +131,13 @@
             self.__updateSampleTextColour(colorKey)
     
     @pyqtSlot()
-    def __selectBackgroundColour(self):
+    def __selectBackgroundColour(self, button):
         """
         Private slot to select a background colour.
+        
+        @param button reference to the button been pressed
+        @type QPushButton
         """
-        button = self.sender()
         colorKey = button.property("colorKey")
         
         colour = QColorDialog.getColor(self.__coloursDict[colorKey][0], self,
--- a/Preferences/ConfigurationPages/EditorFilePage.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Preferences/ConfigurationPages/EditorFilePage.py	Fri Mar 02 19:35:16 2018 +0100
@@ -76,6 +76,8 @@
                 Preferences.getEditor("DefaultSaveFilter")))
         self.automaticEolConversionCheckBox.setChecked(
             Preferences.getEditor("AutomaticEOLConversion"))
+        self.insertFinalNewlineCheckBox.setChecked(
+            Preferences.getEditor("InsertFinalNewline"))
         
         eolMode = Preferences.getEditor("EOLMode")
         if eolMode == QsciScintilla.EolWindows:
@@ -143,6 +145,9 @@
         Preferences.setEditor(
             "AutomaticEOLConversion",
             self.automaticEolConversionCheckBox.isChecked())
+        Preferences.setEditor(
+            "InsertFinalNewline",
+            self.insertFinalNewlineCheckBox.isChecked())
         
         if self.crlfRadioButton.isChecked():
             Preferences.setEditor("EOLMode", QsciScintilla.EolWindows)
--- a/Preferences/ConfigurationPages/EditorFilePage.ui	Sun Feb 04 10:56:30 2018 +0100
+++ b/Preferences/ConfigurationPages/EditorFilePage.ui	Fri Mar 02 19:35:16 2018 +0100
@@ -10,7 +10,7 @@
     <height>1622</height>
    </rect>
   </property>
-  <layout class="QVBoxLayout" name="verticalLayout_3">
+  <layout class="QVBoxLayout" name="verticalLayout_4">
    <item>
     <widget class="QLabel" name="headerLabel">
      <property name="text">
@@ -173,7 +173,17 @@
      <property name="title">
       <string>Save</string>
      </property>
-     <layout class="QVBoxLayout" name="verticalLayout_4">
+     <layout class="QVBoxLayout" name="verticalLayout_3">
+      <item>
+       <widget class="QCheckBox" name="insertFinalNewlineCheckBox">
+        <property name="toolTip">
+         <string>Select to insert a final newline if none is there</string>
+        </property>
+        <property name="text">
+         <string>Insert final newline upon save</string>
+        </property>
+       </widget>
+      </item>
       <item>
        <widget class="QCheckBox" name="stripWhitespaceCheckBox">
         <property name="toolTip">
@@ -632,6 +642,7 @@
   <tabstop>crRadioButton</tabstop>
   <tabstop>crlfRadioButton</tabstop>
   <tabstop>automaticEolConversionCheckBox</tabstop>
+  <tabstop>insertFinalNewlineCheckBox</tabstop>
   <tabstop>stripWhitespaceCheckBox</tabstop>
   <tabstop>createBackupFileCheckBox</tabstop>
   <tabstop>autosaveSlider</tabstop>
--- a/Preferences/ConfigurationPages/EditorStylesPage.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Preferences/ConfigurationPages/EditorStylesPage.py	Fri Mar 02 19:35:16 2018 +0100
@@ -251,6 +251,9 @@
         self.initColour("SearchMarkersMap",
                         self.searchMarkerMapButton,
                         Preferences.getEditorColour)
+        self.initColour("VcsConflictMarkersMap",
+                        self.conflictMarkerMapButton,
+                        Preferences.getEditorColour)
         self.initColour("MarkerMapBackground",
                         self.markerMapBackgroundButton,
                         Preferences.getEditorColour)
--- a/Preferences/ConfigurationPages/EditorStylesPage.ui	Sun Feb 04 10:56:30 2018 +0100
+++ b/Preferences/ConfigurationPages/EditorStylesPage.ui	Fri Mar 02 19:35:16 2018 +0100
@@ -1828,6 +1828,29 @@
         </property>
        </widget>
       </item>
+      <item row="4" column="2">
+       <widget class="QLabel" name="label_16">
+        <property name="text">
+         <string>Conflict Marker Line:</string>
+        </property>
+       </widget>
+      </item>
+      <item row="4" column="3">
+       <widget class="QPushButton" name="conflictMarkerMapButton">
+        <property name="minimumSize">
+         <size>
+          <width>100</width>
+          <height>0</height>
+         </size>
+        </property>
+        <property name="toolTip">
+         <string>Select the colour for the conflict marker line marker</string>
+        </property>
+        <property name="text">
+         <string/>
+        </property>
+       </widget>
+      </item>
       <item row="5" column="0">
        <widget class="QLabel" name="label_14">
         <property name="text">
@@ -1967,6 +1990,7 @@
   <tabstop>coverageMapButton</tabstop>
   <tabstop>currentMapButton</tabstop>
   <tabstop>searchMarkerMapButton</tabstop>
+  <tabstop>conflictMarkerMapButton</tabstop>
   <tabstop>markerMapBackgroundButton</tabstop>
   <tabstop>miniMenuCheckBox</tabstop>
   <tabstop>hideFormatButtonsCheckBox</tabstop>
--- a/Preferences/ConfigurationPages/WebBrowserPage.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Preferences/ConfigurationPages/WebBrowserPage.py	Fri Mar 02 19:35:16 2018 +0100
@@ -74,6 +74,8 @@
             self.screenCaptureCheckBox.setEnabled(False)
             self.webGLCheckBox.setEnabled(False)
         
+        self.javaScriptGroup.setChecked(
+            Preferences.getWebBrowser("JavaScriptEnabled"))
         self.jsOpenWindowsCheckBox.setChecked(
             Preferences.getWebBrowser("JavaScriptCanOpenWindows"))
         try:
@@ -239,6 +241,9 @@
                 self.webGLCheckBox.isChecked())
         
         Preferences.setWebBrowser(
+            "JavaScriptEnabled",
+            self.javaScriptGroup.isChecked())
+        Preferences.setWebBrowser(
             "JavaScriptCanOpenWindows",
             self.jsOpenWindowsCheckBox.isChecked())
         if self.jsActivateWindowsCheckBox.isEnabled():
--- a/Preferences/ConfigurationPages/WebBrowserPage.ui	Sun Feb 04 10:56:30 2018 +0100
+++ b/Preferences/ConfigurationPages/WebBrowserPage.ui	Fri Mar 02 19:35:16 2018 +0100
@@ -378,10 +378,13 @@
       <item>
        <widget class="QGroupBox" name="javaScriptGroup">
         <property name="toolTip">
-         <string/>
+         <string>Select to enable JavaScript support</string>
         </property>
         <property name="title">
-         <string>JavaScript</string>
+         <string>Enable JavaScript</string>
+        </property>
+        <property name="checkable">
+         <bool>true</bool>
         </property>
         <layout class="QVBoxLayout" name="verticalLayout_2">
          <item>
@@ -960,6 +963,7 @@
   <tabstop>saveSessionCheckBox</tabstop>
   <tabstop>sessionTimerSpinBox</tabstop>
   <tabstop>defaultSchemeCombo</tabstop>
+  <tabstop>javaScriptGroup</tabstop>
   <tabstop>jsOpenWindowsCheckBox</tabstop>
   <tabstop>jsActivateWindowsCheckBox</tabstop>
   <tabstop>jsClipboardCheckBox</tabstop>
--- a/Preferences/__init__.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Preferences/__init__.py	Fri Mar 02 19:35:16 2018 +0100
@@ -395,6 +395,7 @@
         "WarnFilesize": 512,
         "ClearBreaksOnClose": True,
         "StripTrailingWhitespace": False,
+        "InsertFinalNewline": True,
         "CommentColumn0": True,
         "OverrideEditAreaColours": False,
         
@@ -665,6 +666,7 @@
         "ChangesMap": QColor("#00b000"),
         "CurrentMap": QColor("#000000"),
         "SearchMarkersMap": QColor(Qt.blue),
+        "VcsConflictMarkersMap": QColor("#dd00dd"),
         "MarkerMapBackground": QColor("#e7e7e7"),
     }
     
@@ -1189,6 +1191,8 @@
             
             "AutoLoadImages": webEngineSettings.testAttribute(
                 QWebEngineSettings.AutoLoadImages),
+            "JavaScriptEnabled": webEngineSettings.testAttribute(
+                QWebEngineSettings.JavascriptEnabled),
             "JavaScriptCanOpenWindows": webEngineSettings.testAttribute(
                 QWebEngineSettings.JavascriptCanOpenWindows),
             "JavaScriptCanAccessClipboard": webEngineSettings.testAttribute(
@@ -1252,7 +1256,7 @@
         try:
             # Qt 5.10+
             cls.webBrowserDefaults.update({
-                "AllowWindowActivationFromJavaScript": 
+                "AllowWindowActivationFromJavaScript":
                     webEngineSettings.testAttribute(
                         QWebEngineSettings.AllowWindowActivationFromJavaScript
                     ),
@@ -2943,7 +2947,7 @@
             download["Downloaded"] = prefClass.settings.value("Downloaded")
             if download["Downloaded"] is None:
                 download["Downloaded"] = QDateTime()
-            else:
+            elif isinstance(download["Downloaded"], str):
                 download["Downloaded"] = QDateTime.fromString(
                     download["Downloaded"], "yyyy-MM-dd hh:mm:ss")
             downloads.append(download)
@@ -2986,7 +2990,8 @@
         return int(prefClass.settings.value(
             "WebBrowser/" + key, prefClass.webBrowserDefaults[key]))
     elif key in ["SingleWebBrowserWindow", "SaveGeometry",
-                 "JavaScriptCanOpenWindows", "JavaScriptCanAccessClipboard",
+                 "JavaScriptEnabled", "JavaScriptCanOpenWindows",
+                 "JavaScriptCanAccessClipboard",
                  "AutoLoadImages", "LocalStorageEnabled",
                  "SpatialNavigationEnabled", "LinksIncludedInFocusChain",
                  "LocalContentCanAccessRemoteUrls",
--- a/Project/Project.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Project/Project.py	Fri Mar 02 19:35:16 2018 +0100
@@ -4498,7 +4498,7 @@
         else:
             forProject = False
         
-        if self.pdata["VCS"] and self.pdata["VCS"] != 'None':
+        if forProject and self.pdata["VCS"] and self.pdata["VCS"] != 'None':
             if self.pudata["VCSOVERRIDE"] and \
                not nooverride:
                 vcsSystem = self.pudata["VCSOVERRIDE"]
@@ -4560,16 +4560,17 @@
             except LookupError:
                 pass
         
-        if vcs is None:
-            import VCS
-            self.vcsProjectHelper = VCS.getBasicHelper(self)
-            self.vcsBasicHelper = True
-        else:
-            self.vcsProjectHelper = vcs.vcsGetProjectHelper(self)
-            self.vcsBasicHelper = False
-        if self.vcsMenu is not None:
-            self.vcsProjectHelper.initMenu(self.vcsMenu)
-            self.vcsMenu.setEnabled(self.vcsSoftwareAvailable())
+        if forProject:
+            if vcs is None:
+                import VCS
+                self.vcsProjectHelper = VCS.getBasicHelper(self)
+                self.vcsBasicHelper = True
+            else:
+                self.vcsProjectHelper = vcs.vcsGetProjectHelper(self)
+                self.vcsBasicHelper = False
+            if self.vcsMenu is not None:
+                self.vcsProjectHelper.initMenu(self.vcsMenu)
+                self.vcsMenu.setEnabled(self.vcsSoftwareAvailable())
         return vcs
         
     def __showContextMenuVCS(self):
--- a/Project/ProjectBaseBrowser.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Project/ProjectBaseBrowser.py	Fri Mar 02 19:35:16 2018 +0100
@@ -240,26 +240,13 @@
             self.vcsHelper.addVCSMenus(
                 self.mainMenu, self.multiMenu, self.backMenu,
                 self.dirMenu, self.dirMultiMenu)
-        
+    
     def _newProject(self):
         """
         Protected slot to handle the newProject signal.
         """
-        self.layoutDisplay()
-        self.sortByColumn(0, Qt.DescendingOrder)
-        self.sortByColumn(0, Qt.AscendingOrder)
-        
-        self._createPopupMenus()
-        
-        if self.backMenu is not None:
-            self.backMenu.setEnabled(True)
-        
-        if self.project.vcs is not None:
-            self.vcsHelper = self.project.vcs.vcsGetProjectBrowserHelper(
-                self, self.project, self.isTranslationsBrowser)
-            self.vcsHelper.addVCSMenus(
-                self.mainMenu, self.multiMenu, self.backMenu,
-                self.dirMenu, self.dirMultiMenu)
+        # default to perform same actions as opening a project
+        self._projectOpened()
         
     def _removeFile(self):
         """
--- a/Project/ProjectTranslationsBrowser.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/Project/ProjectTranslationsBrowser.py	Fri Mar 02 19:35:16 2018 +0100
@@ -830,27 +830,25 @@
             
         return True
     
-    def __readStdoutLupdate(self):
+    def __readStdoutLupdate(self, proc):
         """
         Private slot to handle the readyReadStandardOutput signal of the
         pylupdate process.
+        
+        @param proc reference to the process
+        @type QProcess
         """
-        proc = self.sender()
-        if proc is not None:
-            self.__readStdout(proc, '{0}: '.format(self.pylupdate))
-        else:
-            return
+        self.__readStdout(proc, '{0}: '.format(self.pylupdate))
         
-    def __readStdoutLrelease(self):
+    def __readStdoutLrelease(self, proc):
         """
         Private slot to handle the readyReadStandardOutput signal of the
         lrelease process.
+        
+        @param proc reference to the process
+        @type QProcess
         """
-        proc = self.sender()
-        if proc is not None:
-            self.__readStdout(proc, 'lrelease: ')
-        else:
-            return
+        self.__readStdout(proc, 'lrelease: ')
         
     def __readStdout(self, proc, ps):
         """
@@ -868,27 +866,25 @@
             s += output
             self.appendStdout.emit(s)
         
-    def __readStderrLupdate(self):
+    def __readStderrLupdate(self, proc):
         """
         Private slot to handle the readyReadStandardError signal of the
         pylupdate4/pylupdate5/pyside-lupdate process.
+        
+        @param proc reference to the process
+        @type QProcess
         """
-        proc = self.sender()
-        if proc is not None:
-            self.__readStderr(proc, '{0}: '.format(self.pylupdate))
-        else:
-            return
+        self.__readStderr(proc, '{0}: '.format(self.pylupdate))
         
-    def __readStderrLrelease(self):
+    def __readStderrLrelease(self, proc):
         """
         Private slot to handle the readyReadStandardError signal of the
         lrelease process.
+        
+        @param proc reference to the process
+        @type QProcess
         """
-        proc = self.sender()
-        if proc is not None:
-            self.__readStderr(proc, 'lrelease: ')
-        else:
-            return
+        self.__readStderr(proc, 'lrelease: ')
         
     def __readStderr(self, proc, ps):
         """
@@ -917,12 +913,16 @@
         if self.hooks["extractMessages"] is not None:
             self.hooks["extractMessages"]()
         
-    def __generateTSFileDone(self, exitCode, exitStatus):
+    def __generateTSFileDone(self, exitCode, exitStatus, proc):
         """
         Private slot to handle the finished signal of the pylupdate process.
         
-        @param exitCode exit code of the process (integer)
-        @param exitStatus exit status of the process (QProcess.ExitStatus)
+        @param exitCode exit code of the process
+        @type int
+        @param exitStatus exit status of the process
+        @type QProcess.ExitStatus
+        @param proc reference to the process
+        @type QProcess
         """
         if exitStatus == QProcess.NormalExit and exitCode == 0:
             ui = e5App().getObject("UserInterface")
@@ -952,7 +952,6 @@
                     "The generation of the translation files (*.ts) has"
                     " failed.{0}").format(info))
         
-        proc = self.sender()
         for index in range(len(self.__pylupdateProcesses)):
             if proc == self.__pylupdateProcesses[index][0]:
                 try:
@@ -1044,9 +1043,12 @@
             path, filename = os.path.split(tempProjectFile)
             args.append(filename)
             proc.setWorkingDirectory(os.path.join(self.project.ppath, path))
-            proc.finished.connect(self.__generateTSFileDone)
-            proc.readyReadStandardOutput.connect(self.__readStdoutLupdate)
-            proc.readyReadStandardError.connect(self.__readStderrLupdate)
+            proc.finished.connect(
+                lambda c, s: self.__generateTSFileDone(c, s, proc))
+            proc.readyReadStandardOutput.connect(
+                lambda: self.__readStdoutLupdate(proc))
+            proc.readyReadStandardError.connect(
+                lambda: self.__readStderrLupdate(proc))
             
             proc.start(self.pylupdate, args)
             procStarted = proc.waitForStarted()
@@ -1106,12 +1108,16 @@
     ##  Methods for the release commands
     ###########################################################################
     
-    def __releaseTSFileDone(self, exitCode, exitStatus):
+    def __releaseTSFileDone(self, exitCode, exitStatus, proc):
         """
         Private slot to handle the finished signal of the lrelease process.
         
-        @param exitCode exit code of the process (integer)
-        @param exitStatus exit status of the process (QProcess.ExitStatus)
+        @param exitCode exit code of the process
+        @type int
+        @param exitStatus exit status of the process
+        @type QProcess.ExitStatus
+        @param proc reference to the process
+        @type QProcess
         """
         if exitStatus == QProcess.NormalExit and exitCode == 0:
             ui = e5App().getObject("UserInterface")
@@ -1144,7 +1150,6 @@
                 self.tr(
                     "The release of the translation files (*.qm) has failed."))
         
-        proc = self.sender()
         for index in range(len(self.__lreleaseProcesses)):
             if proc == self.__lreleaseProcesses[index][0]:
                 try:
@@ -1214,9 +1219,12 @@
             path, filename = os.path.split(tempProjectFile)
             args.append(filename)
             proc.setWorkingDirectory(os.path.join(self.project.ppath, path))
-            proc.finished.connect(self.__releaseTSFileDone)
-            proc.readyReadStandardOutput.connect(self.__readStdoutLrelease)
-            proc.readyReadStandardError.connect(self.__readStderrLrelease)
+            proc.finished.connect(
+                lambda c, s: self.__releaseTSFileDone(c, s, proc))
+            proc.readyReadStandardOutput.connect(
+                lambda: self.__readStdoutLrelease(proc))
+            proc.readyReadStandardError.connect(
+                lambda: self.__readStderrLrelease(proc))
             
             proc.start(lrelease, args)
             procStarted = proc.waitForStarted()
--- a/QScintilla/Editor.py	Sun Feb 04 10:56:30 2018 +0100
+++ b/QScintilla/Editor.py	Fri Mar 02 19:35:16 2018 +0100
@@ -39,6 +39,8 @@
 
 import UI.PixmapCache
 
+from ThirdParty.EditorConfig import editorconfig
+
 EditorAutoCompletionListID = 1
 TemplateCompletionListID = 2
 
@@ -143,6 +145,13 @@
     RequestSyncToken = "REQUEST_SYNC"
     SyncToken = "SYNC"
     
+    VcsConflictMarkerLineRegExpList = (
+        r"""^<<<<<<< .*?$""",
+        r"""^\|\|\|\|\|\|\| .*?$""",
+        r"""^=======.*?$""",
+        r"""^>>>>>>> .*?$""",
+    )
+    
     def __init__(self, dbs, fn="", vm=None,
                  filetype="", editor=None, tv=None):
         """
@@ -192,11 +201,14 @@
         self.notcoveredMarkers = []  # just a list of marker handles
         self.showingNotcoveredMarkers = False
         
+        self.lexer_ = None
+        
+        self.__loadEditorConfig()
+        
         self.condHistory = []
-        self.lexer_ = None
         self.__lexerReset = False
         self.completer = None
-        self.encoding = Preferences.getEditor("DefaultEncoding")
+        self.encoding = self.__getEditorConfig("DefaultEncoding")
         self.apiLanguage = ''
         self.lastModified = 0
         self.line = -1
@@ -260,8 +272,6 @@
         self.modificationChanged.connect(self.__modificationChanged)
         self.cursorPositionChanged.connect(self.__cursorPositionChanged)
         self.modificationAttempted.connect(self.__modificationReadOnly)
-        self.userListActivated.connect(self.__completionListSelected)
-        self.SCN_CHARADDED.connect(self.__charAddedPermanent)
         
         # margins layout
         if QSCINTILLA_VERSION() >= 0x020301:
@@ -405,6 +415,9 @@
             Preferences.getEditor("AutoCompletionWatchdogTime"))
         self.__acWatchdog.timeout.connect(self.autoCompleteQScintilla)
         
+        self.userListActivated.connect(self.__completionListSelected)
+        self.SCN_CHARADDED.connect(self.__charAddedPermanent)
+        
         self.__completionListHookFunctions = {}
         self.__completionListAsyncHookFunctions = {}
         self.__setAutoCompletion()
@@ -1156,7 +1169,8 @@
         self.marginMenuActs["ClearBookmark"] = self.bmMarginMenu.addAction(
             self.tr('Clear all bookmarks'), self.clearBookmarks)
         
-        self.bmMarginMenu.aboutToShow.connect(self.__showContextMenuMargin)
+        self.bmMarginMenu.aboutToShow.connect(
+            lambda: self.__showContextMenuMargin(self.bmMarginMenu))
         
         # breakpoint margin
         self.bpMarginMenu = QMenu()
@@ -1180,7 +1194,8 @@
         self.marginMenuActs["ClearBreakpoint"] = self.bpMarginMenu.addAction(
             self.tr('Clear all breakpoints'), self.__menuClearBreakpoints)
         
-        self.bpMarginMenu.aboutToShow.connect(self.__showContextMenuMargin)
+        self.bpMarginMenu.aboutToShow.connect(
+            lambda: self.__showContextMenuMargin(self.bpMarginMenu))
         
         # indicator margin
         self.indicMarginMenu = QMenu()
@@ -1233,7 +1248,8 @@
             self.indicMarginMenu.addAction(
                 self.tr('Clear changes'), self.__reinitOnlineChangeTrace)
         
-        self.indicMarginMenu.aboutToShow.connect(self.__showContextMenuMargin)
+        self.indicMarginMenu.aboutToShow.connect(
+            lambda: self.__showCon