235 |
235 |
236 @param downloadRequest reference to the download object containing the |
236 @param downloadRequest reference to the download object containing the |
237 download data. |
237 download data. |
238 @type QWebEngineDownloadRequest |
238 @type QWebEngineDownloadRequest |
239 """ |
239 """ |
|
240 from eric7.WebBrowser.SafeBrowsing.SafeBrowsingManager import ( |
|
241 SafeBrowsingManager, |
|
242 ) |
|
243 |
|
244 from .DownloadItem import DownloadItem |
|
245 |
240 url = downloadRequest.url() |
246 url = downloadRequest.url() |
241 if url.isEmpty(): |
247 if url.isEmpty(): |
242 return |
248 return |
243 |
249 |
244 self.__closeDownloadTab(url) |
250 self.__closeDownloadTab(url) |
245 |
251 |
246 # Safe Browsing |
252 # Safe Browsing |
247 from eric7.WebBrowser.SafeBrowsing.SafeBrowsingManager import ( |
|
248 SafeBrowsingManager, |
|
249 ) |
|
250 |
|
251 if SafeBrowsingManager.isEnabled(): |
253 if SafeBrowsingManager.isEnabled(): |
252 threatLists = WebBrowserWindow.safeBrowsingManager().lookupUrl(url)[0] |
254 threatLists = WebBrowserWindow.safeBrowsingManager().lookupUrl(url)[0] |
253 if threatLists: |
255 if threatLists: |
254 threatMessages = ( |
256 threatMessages = ( |
255 WebBrowserWindow.safeBrowsingManager().getThreatMessages( |
257 WebBrowserWindow.safeBrowsingManager().getThreatMessages( |
270 downloadRequest.cancel() |
272 downloadRequest.cancel() |
271 return |
273 return |
272 |
274 |
273 window = WebBrowserWindow.getWindow() |
275 window = WebBrowserWindow.getWindow() |
274 pageUrl = window.currentBrowser().url() if window else QUrl() |
276 pageUrl = window.currentBrowser().url() if window else QUrl() |
275 from .DownloadItem import DownloadItem |
|
276 |
|
277 itm = DownloadItem( |
277 itm = DownloadItem( |
278 downloadRequest=downloadRequest, pageUrl=pageUrl, parent=self |
278 downloadRequest=downloadRequest, pageUrl=pageUrl, parent=self |
279 ) |
279 ) |
280 self.__addItem(itm) |
280 self.__addItem(itm) |
281 |
281 |
406 Preferences.setWebBrowser("DownloadManagerSize", self.size()) |
406 Preferences.setWebBrowser("DownloadManagerSize", self.size()) |
407 Preferences.setWebBrowser("DownloadManagerPosition", self.pos()) |
407 Preferences.setWebBrowser("DownloadManagerPosition", self.pos()) |
408 if self.removePolicy() == DownloadManager.RemoveExit: |
408 if self.removePolicy() == DownloadManager.RemoveExit: |
409 return |
409 return |
410 |
410 |
411 from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow |
|
412 |
|
413 if WebBrowserWindow.isPrivate(): |
411 if WebBrowserWindow.isPrivate(): |
414 return |
412 return |
415 |
413 |
416 downloads = [] |
414 downloads = [] |
417 for download in self.__downloads: |
415 for download in self.__downloads: |
420 |
418 |
421 def __load(self): |
419 def __load(self): |
422 """ |
420 """ |
423 Private method to load the download settings. |
421 Private method to load the download settings. |
424 """ |
422 """ |
|
423 from .DownloadItem import DownloadItem |
|
424 |
425 if self.__loaded: |
425 if self.__loaded: |
426 return |
426 return |
427 |
427 |
428 size = Preferences.getWebBrowser("DownloadManagerSize") |
428 size = Preferences.getWebBrowser("DownloadManagerSize") |
429 if size.isValid(): |
429 if size.isValid(): |
430 self.resize(size) |
430 self.resize(size) |
431 pos = Preferences.getWebBrowser("DownloadManagerPosition") |
431 pos = Preferences.getWebBrowser("DownloadManagerPosition") |
432 self.move(pos) |
432 self.move(pos) |
433 |
433 |
434 from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow |
|
435 |
|
436 if not WebBrowserWindow.isPrivate(): |
434 if not WebBrowserWindow.isPrivate(): |
437 downloads = Preferences.getWebBrowser("DownloadManagerDownloads") |
435 downloads = Preferences.getWebBrowser("DownloadManagerDownloads") |
438 for download in downloads: |
436 for download in downloads: |
439 if not download["URL"].isEmpty() and bool(download["Location"]): |
437 if not download["URL"].isEmpty() and bool(download["Location"]): |
440 from .DownloadItem import DownloadItem |
|
441 |
|
442 itm = DownloadItem(parent=self) |
438 itm = DownloadItem(parent=self) |
443 itm.setData(download) |
439 itm.setData(download) |
444 self.__addItem(itm, append=True) |
440 self.__addItem(itm, append=True) |
445 self.cleanupButton.setEnabled( |
441 self.cleanupButton.setEnabled( |
446 (self.downloadsCount() - self.activeDownloadsCount()) > 0 |
442 (self.downloadsCount() - self.activeDownloadsCount()) > 0 |
562 |
558 |
563 @return reference to the task bar button |
559 @return reference to the task bar button |
564 @rtype QWinTaskbarButton or None |
560 @rtype QWinTaskbarButton or None |
565 """ |
561 """ |
566 if Globals.isWindowsPlatform(): |
562 if Globals.isWindowsPlatform(): |
567 from PyQt6.QtWinExtras import QWinTaskbarButton |
563 from PyQt6.QtWinExtras import QWinTaskbarButton # __IGNORE_WARNING_I10__ |
568 |
564 |
569 if self.__winTaskbarButton is None: |
565 if self.__winTaskbarButton is None: |
570 window = WebBrowserWindow.mainWindow() |
566 window = WebBrowserWindow.mainWindow() |
571 self.__winTaskbarButton = QWinTaskbarButton(window.windowHandle()) |
567 self.__winTaskbarButton = QWinTaskbarButton(window.windowHandle()) |
572 self.__winTaskbarButton.progress().setRange(0, 100) |
568 self.__winTaskbarButton.progress().setRange(0, 100) |