Use object registry for downloadmanager.
This commit is contained in:
parent
7a7b397c15
commit
b818bc5896
@ -133,7 +133,8 @@ class Application(QApplication):
|
||||
searchrunner = runners.SearchRunner(self)
|
||||
self.registry['searchrunner'] = searchrunner
|
||||
log.init.debug("Initializing downloads...")
|
||||
self.downloadmanager = downloads.DownloadManager(self)
|
||||
downloadmanager = downloads.DownloadManager(self)
|
||||
self.registry['downloadmanager'] = downloadmanager
|
||||
log.init.debug("Initializing main window...")
|
||||
mainwin = mainwindow.MainWindow()
|
||||
self.registry['mainwindow'] = mainwin
|
||||
@ -383,6 +384,7 @@ class Application(QApplication):
|
||||
modeman = self.registry['modeman']
|
||||
prompter = self.registry['prompter']
|
||||
cmd_history = self.registry['cmd_history']
|
||||
downloadmanager = self.registry['downloadmanager']
|
||||
|
||||
# misc
|
||||
self.lastWindowClosed.connect(self.shutdown)
|
||||
@ -457,8 +459,8 @@ class Application(QApplication):
|
||||
completer.change_completed_part.connect(cmd.on_change_completed_part)
|
||||
|
||||
# downloads
|
||||
tabs.start_download.connect(self.downloadmanager.fetch)
|
||||
tabs.download_get.connect(self.downloadmanager.get)
|
||||
tabs.start_download.connect(downloadmanager.fetch)
|
||||
tabs.download_get.connect(downloadmanager.get)
|
||||
|
||||
def _get_widgets(self):
|
||||
"""Get a string list of all widgets."""
|
||||
|
@ -21,10 +21,9 @@
|
||||
|
||||
from PyQt5.QtCore import (pyqtSlot, Qt, QVariant, QAbstractListModel,
|
||||
QModelIndex)
|
||||
from PyQt5.QtWidgets import QApplication
|
||||
|
||||
from qutebrowser.config import config
|
||||
from qutebrowser.utils import usertypes, qtutils
|
||||
from qutebrowser.utils import usertypes, qtutils, utils
|
||||
|
||||
|
||||
Role = usertypes.enum('Role', 'item', start=Qt.UserRole, is_int=True)
|
||||
@ -40,14 +39,14 @@ class DownloadModel(QAbstractListModel):
|
||||
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self.downloadmanager = QApplication.instance().downloadmanager
|
||||
self.downloadmanager.download_about_to_be_added.connect(
|
||||
downloadmanager = utils.get_object('downloadmanager')
|
||||
downloadmanager.download_about_to_be_added.connect(
|
||||
lambda idx: self.beginInsertRows(QModelIndex(), idx, idx))
|
||||
self.downloadmanager.download_added.connect(self.endInsertRows)
|
||||
self.downloadmanager.download_about_to_be_finished.connect(
|
||||
downloadmanager.download_added.connect(self.endInsertRows)
|
||||
downloadmanager.download_about_to_be_finished.connect(
|
||||
lambda idx: self.beginRemoveRows(QModelIndex(), idx, idx))
|
||||
self.downloadmanager.download_finished.connect(self.endRemoveRows)
|
||||
self.downloadmanager.data_changed.connect(self.on_data_changed)
|
||||
downloadmanager.download_finished.connect(self.endRemoveRows)
|
||||
downloadmanager.data_changed.connect(self.on_data_changed)
|
||||
|
||||
def __repr__(self):
|
||||
return '<{}>'.format(self.__class__.__name__)
|
||||
@ -82,7 +81,7 @@ class DownloadModel(QAbstractListModel):
|
||||
if index.parent().isValid() or index.column() != 0:
|
||||
return QVariant()
|
||||
|
||||
item = self.downloadmanager.downloads[index.row()]
|
||||
item = utils.get_object('downloadmanager').downloads[index.row()]
|
||||
if role == Qt.DisplayRole:
|
||||
data = str(item)
|
||||
elif role == Qt.ForegroundRole:
|
||||
@ -106,4 +105,4 @@ class DownloadModel(QAbstractListModel):
|
||||
if parent.isValid():
|
||||
# We don't have children
|
||||
return 0
|
||||
return len(self.downloadmanager.downloads)
|
||||
return len(utils.get_object('downloadmanager').downloads)
|
||||
|
Loading…
Reference in New Issue
Block a user