426 lambda title: self.__titleChanged(title, browser)) |
426 lambda title: self.__titleChanged(title, browser)) |
427 browser.highlighted.connect(self.showMessage) |
427 browser.highlighted.connect(self.showMessage) |
428 browser.backwardAvailable.connect( |
428 browser.backwardAvailable.connect( |
429 self.__mainWindow.setBackwardAvailable) |
429 self.__mainWindow.setBackwardAvailable) |
430 browser.forwardAvailable.connect(self.__mainWindow.setForwardAvailable) |
430 browser.forwardAvailable.connect(self.__mainWindow.setForwardAvailable) |
431 browser.loadStarted.connect( |
431 browser.loadProgress.connect( |
432 lambda: self.__loadStarted(browser)) |
432 lambda progress: self.__loadProgress(progress, browser)) |
433 browser.loadFinished.connect( |
433 browser.loadFinished.connect( |
434 lambda ok: self.__loadFinished(ok, browser)) |
434 lambda ok: self.__loadFinished(ok, browser)) |
435 browser.faviconChanged.connect( |
435 browser.faviconChanged.connect( |
436 lambda: self.__iconChanged(browser)) |
436 lambda: self.__iconChanged(browser)) |
437 browser.search.connect(self.newBrowser) |
437 browser.search.connect(self.newBrowser) |
872 browser.preferencesChanged() |
872 browser.preferencesChanged() |
873 |
873 |
874 for urlbar in self.__stackedUrlBar.urlBars(): |
874 for urlbar in self.__stackedUrlBar.urlBars(): |
875 urlbar.preferencesChanged() |
875 urlbar.preferencesChanged() |
876 |
876 |
877 def __loadStarted(self, browser): |
|
878 """ |
|
879 Private method to handle the loadStarted signal. |
|
880 |
|
881 @param browser reference to the web browser |
|
882 @type WebBrowserView |
|
883 """ |
|
884 index = self.indexOf(browser) |
|
885 anim = self.animationLabel(index, "loadingAnimation", 40) |
|
886 if not anim: |
|
887 self.setTabIcon(index, UI.PixmapCache.getIcon("loading")) |
|
888 else: |
|
889 self.setTabIcon(index, QIcon()) |
|
890 self.setTabText(index, self.tr("Loading...")) |
|
891 self.setTabToolTip(index, self.tr("Loading...")) |
|
892 self.showMessage.emit(self.tr("Loading...")) |
|
893 |
|
894 self.__mainWindow.setLoadingActions(True) |
|
895 |
|
896 def __loadFinished(self, ok, browser): |
877 def __loadFinished(self, ok, browser): |
897 """ |
878 """ |
898 Private method to handle the loadFinished signal. |
879 Private method to handle the loadFinished signal. |
899 |
880 |
900 @param ok flag indicating the result |
881 @param ok flag indicating the result |
901 @type bool |
882 @type bool |
902 @param browser reference to the web browser |
883 @param browser reference to the web browser |
903 @type WebBrowserView |
884 @type WebBrowserView |
904 """ |
885 """ |
905 import WebBrowser.WebBrowserWindow |
|
906 index = self.indexOf(browser) |
|
907 self.resetAnimation(index) |
|
908 self.setTabIcon( |
|
909 index, WebBrowser.WebBrowserWindow.WebBrowserWindow.icon( |
|
910 browser.url())) |
|
911 if ok: |
886 if ok: |
912 self.showMessage.emit(self.tr("Finished loading")) |
887 self.showMessage.emit(self.tr("Finished loading")) |
913 else: |
888 else: |
914 self.showMessage.emit(self.tr("Failed to load")) |
889 self.showMessage.emit(self.tr("Failed to load")) |
915 |
890 |
916 self.__mainWindow.setLoadingActions(False) |
891 def __loadProgress(self, progress, browser): |
|
892 """ |
|
893 Private method to handle the loadProgress signal. |
|
894 |
|
895 Note: This works around wegengine not sending a loadFinished |
|
896 signal for navigation on the same page. |
|
897 |
|
898 @param progress load progress in percent |
|
899 @type int |
|
900 @param browser reference to the web browser |
|
901 @type WebBrowserView |
|
902 """ |
|
903 index = self.indexOf(browser) |
|
904 if progress == 0: |
|
905 # page loading has started |
|
906 anim = self.animationLabel(index, "loadingAnimation", 40) |
|
907 if not anim: |
|
908 self.setTabIcon(index, UI.PixmapCache.getIcon("loading")) |
|
909 else: |
|
910 self.setTabIcon(index, QIcon()) |
|
911 self.setTabText(index, self.tr("Loading...")) |
|
912 self.setTabToolTip(index, self.tr("Loading...")) |
|
913 self.showMessage.emit(self.tr("Loading...")) |
|
914 |
|
915 self.__mainWindow.setLoadingActions(True) |
|
916 elif progress == 100: |
|
917 import WebBrowser.WebBrowserWindow |
|
918 self.resetAnimation(index) |
|
919 self.setTabIcon( |
|
920 index, WebBrowser.WebBrowserWindow.WebBrowserWindow.icon( |
|
921 browser.url())) |
|
922 self.showMessage.emit(self.tr("Finished loading")) |
|
923 |
|
924 self.__mainWindow.setLoadingActions(False) |
917 |
925 |
918 def __iconChanged(self, browser): |
926 def __iconChanged(self, browser): |
919 """ |
927 """ |
920 Private slot to handle a change of the web site icon. |
928 Private slot to handle a change of the web site icon. |
921 |
929 |