11 import pathlib |
11 import pathlib |
12 |
12 |
13 from PyQt6.QtCore import pyqtSignal, pyqtSlot, QObject, QSettings |
13 from PyQt6.QtCore import pyqtSignal, pyqtSlot, QObject, QSettings |
14 from PyQt6.QtNetwork import QNetworkReply, QNetworkRequest |
14 from PyQt6.QtNetwork import QNetworkReply, QNetworkRequest |
15 |
15 |
16 from WebBrowser.WebBrowserWindow import WebBrowserWindow |
16 from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow |
17 |
17 |
18 |
18 |
19 class GreaseMonkeyDownloader(QObject): |
19 class GreaseMonkeyDownloader(QObject): |
20 """ |
20 """ |
21 Class implementing the downloader for GreaseMonkey scripts. |
21 Class implementing the downloader for GreaseMonkey scripts. |
80 if "// ==UserScript==" not in response: |
80 if "// ==UserScript==" not in response: |
81 self.error.emit() |
81 self.error.emit() |
82 return |
82 return |
83 |
83 |
84 if not self.__fileName: |
84 if not self.__fileName: |
85 from WebBrowser.Tools import WebBrowserTools |
85 from eric7.WebBrowser.Tools import WebBrowserTools |
86 |
86 |
87 filePath = os.path.join( |
87 filePath = os.path.join( |
88 self.__manager.scriptsDirectory(), |
88 self.__manager.scriptsDirectory(), |
89 WebBrowserTools.getFileNameFromUrl(self.__reply.url()), |
89 WebBrowserTools.getFileNameFromUrl(self.__reply.url()), |
90 ) |
90 ) |
130 if not name: |
130 if not name: |
131 name = "require.js" |
131 name = "require.js" |
132 elif not name.endswith(".js"): |
132 elif not name.endswith(".js"): |
133 name += ".js" |
133 name += ".js" |
134 filePath = os.path.join(self.__manager.requireScriptsDirectory(), name) |
134 filePath = os.path.join(self.__manager.requireScriptsDirectory(), name) |
135 from WebBrowser.Tools import WebBrowserTools |
135 from eric7.WebBrowser.Tools import WebBrowserTools |
136 |
136 |
137 self.__fileName = WebBrowserTools.ensureUniqueFilename(filePath, "{0}") |
137 self.__fileName = WebBrowserTools.ensureUniqueFilename(filePath, "{0}") |
138 if not pathlib.Path(self.__fileName).is_absolute(): |
138 if not pathlib.Path(self.__fileName).is_absolute(): |
139 self.__fileName = os.path.join( |
139 self.__fileName = os.path.join( |
140 self.__manager.requireScriptsDirectory(), self.__fileName |
140 self.__manager.requireScriptsDirectory(), self.__fileName |