11 |
11 |
12 import os |
12 import os |
13 |
13 |
14 from PyQt5.QtCore import pyqtSignal, QObject, QSettings, QRegExp, QUrl |
14 from PyQt5.QtCore import pyqtSignal, QObject, QSettings, QRegExp, QUrl |
15 from PyQt5.QtWidgets import QDialog |
15 from PyQt5.QtWidgets import QDialog |
16 from PyQt5.QtNetwork import QNetworkReply |
16 from PyQt5.QtNetwork import QNetworkReply, QNetworkRequest |
17 |
17 |
18 from E5Gui import E5MessageBox |
18 from E5Gui import E5MessageBox |
19 |
19 |
20 from WebBrowser.WebBrowserWindow import WebBrowserWindow |
20 from WebBrowser.WebBrowserWindow import WebBrowserWindow |
21 from WebBrowser.Network.FollowRedirectReply import FollowRedirectReply |
|
22 |
21 |
23 |
22 |
24 class GreaseMonkeyDownloader(QObject): |
23 class GreaseMonkeyDownloader(QObject): |
25 """ |
24 """ |
26 Class implementing the downloader for GreaseMonkey scripts. |
25 Class implementing the downloader for GreaseMonkey scripts. |
38 """ |
37 """ |
39 super(GreaseMonkeyDownloader, self).__init__() |
38 super(GreaseMonkeyDownloader, self).__init__() |
40 |
39 |
41 self.__manager = manager |
40 self.__manager = manager |
42 |
41 |
43 self.__reply = FollowRedirectReply( |
42 self.__reply = WebBrowserWindow.networkManager().get( |
44 url, WebBrowserWindow.networkManager()) |
43 QNetworkRequest(url)) |
45 self.__reply.finished.connect(self.__scriptDownloaded) |
44 self.__reply.finished.connect(self.__scriptDownloaded) |
46 |
45 |
47 self.__fileName = "" |
46 self.__fileName = "" |
48 self.__requireUrls = [] |
47 self.__requireUrls = [] |
49 |
48 |
146 def __downloadRequires(self): |
145 def __downloadRequires(self): |
147 """ |
146 """ |
148 Private slot to initiate the download of required scripts. |
147 Private slot to initiate the download of required scripts. |
149 """ |
148 """ |
150 if self.__requireUrls: |
149 if self.__requireUrls: |
151 self.__reply = FollowRedirectReply( |
150 self.__reply = WebBrowserWindow.networkManager().get( |
152 self.__requireUrls.pop(0), |
151 QNetworkRequest(self.__requireUrls.pop(0))) |
153 WebBrowserWindow.networkManager()) |
|
154 self.__reply.finished.connect(self.__requireDownloaded) |
152 self.__reply.finished.connect(self.__requireDownloaded) |
155 else: |
153 else: |
156 from .GreaseMonkeyScript import GreaseMonkeyScript |
154 from .GreaseMonkeyScript import GreaseMonkeyScript |
157 deleteScript = True |
155 deleteScript = True |
158 script = GreaseMonkeyScript(self.__manager, self.__fileName) |
156 script = GreaseMonkeyScript(self.__manager, self.__fileName) |