src/eric7/WebBrowser/Download/DownloadManager.py

branch
eric7
changeset 9482
a2bc06a54d9d
parent 9473
3f23dbf37dbe
child 9566
d4986df5d2e4
equal deleted inserted replaced
9481:0b936ff1bbb9 9482:a2bc06a54d9d
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)

eric ide

mercurial