Helpviewer/HelpBrowserWV.py

changeset 1945
47016f5af3b8
parent 1934
ad6b7c30fb9f
child 1947
84626f18f2c3
diff -r 01367570658d -r 47016f5af3b8 Helpviewer/HelpBrowserWV.py
--- a/Helpviewer/HelpBrowserWV.py	Thu Jul 12 19:29:31 2012 +0200
+++ b/Helpviewer/HelpBrowserWV.py	Sat Jul 14 16:28:04 2012 +0200
@@ -274,22 +274,6 @@
                 suggestedFileName)
             return True
         
-##    if (extension == ChooseMultipleFilesExtension) {
-##        const QWebPage::ChooseMultipleFilesExtensionOption* exOption = static_cast<const QWebPage::ChooseMultipleFilesExtensionOption*>(option);
-##        QWebPage::ChooseMultipleFilesExtensionReturn* exReturn = static_cast<QWebPage::ChooseMultipleFilesExtensionReturn*>(output);
-##
-##        if (!exOption || !exReturn) {
-##            return QWebPage::extension(extension, option, output);
-##        }
-##
-##        QString suggestedFileName;
-##        if (!exOption->suggestedFileNames.isEmpty()) {
-##            suggestedFileName = exOption->suggestedFileNames.at(0);
-##        }
-##
-##        exReturn->fileNames = QFileDialog::getOpenFileNames(0, tr("Select files to upload..."), suggestedFileName);
-##        return true;
-##    }
         if extension == QWebPage.ErrorPageExtension:
             info = sip.cast(option, QWebPage.ErrorPageExtensionOption)
             if info.error == 102:
@@ -619,6 +603,8 @@
         
         self.__clickedFrame = None
         
+        self.mw.personalInformationManager().connectPage(self.page())
+        
         self.grabGesture(Qt.PinchGesture)
     
     def __addExternalBinding(self, frame=None):
@@ -1044,11 +1030,32 @@
             
             if element.tagName().lower() in ["input", "textarea"]:
                 if menu.isEmpty():
-                    self.page().createStandardContextMenu().exec_(evt.globalPos())
-                    return
+                    pageMenu = self.page().createStandardContextMenu()
+                    directionFound = False  # used to detect double direction entry
+                    for act in pageMenu.actions():
+                        if act.isSeparator():
+                            menu.addSeparator()
+                            continue
+                        if act.menu():
+                            if self.pageAction(QWebPage.SetTextDirectionDefault) in \
+                               act.menu().actions():
+                                if directionFound:
+                                    act.setVisible(False)
+                                directionFound = True
+                            elif self.pageAction(QWebPage.ToggleBold) in \
+                                 act.menu().actions():
+                                act.setVisible(False)
+                        elif act == self.pageAction(QWebPage.InspectElement):
+                            # we have our own inspect entry
+                            act.setVisible(False)
+                        menu.addAction(act)
+                    pageMenu = None
         
         if not menu.isEmpty():
             menu.addSeparator()
+        
+        self.mw.personalInformationManager().createSubMenu(menu, self, hit)
+        
         menu.addAction(self.mw.newTabAct)
         menu.addAction(self.mw.newAct)
         menu.addSeparator()
@@ -1114,8 +1121,9 @@
             engineNames = self.mw.openSearchManager().allEnginesNames()
             for engineName in engineNames:
                 engine = self.mw.openSearchManager().engine(engineName)
-                self.__searchMenu.addAction(
-                    OpenSearchEngineAction(engine, self.__searchMenu).setData(engineName))
+                act = OpenSearchEngineAction(engine, self.__searchMenu)
+                act.setData(engineName)
+                self.__searchMenu.addAction(act)
             self.__searchMenu.triggered.connect(self.__searchRequested)
             
             menu.addSeparator()
@@ -1304,7 +1312,7 @@
         engineName = act.data()
         if engineName:
             engine = self.mw.openSearchManager().engine(engineName)
-            self.search.connect(engine.searchUrl(searchText))
+            self.search.emit(engine.searchUrl(searchText))
     
     def __addSearchEngine(self):
         """
@@ -1530,6 +1538,9 @@
         
         @param evt reference to the key event (QKeyEvent)
         """
+        if self.mw.personalInformationManager().viewKeyPressEvent(self, evt):
+            return
+        
         if hasattr(QtWebKit, 'QWebElement'):
             if self.__enableAccessKeys:
                 self.__accessKeysPressed = (

eric ide

mercurial