fix regression: offline mode
This commit is contained in:
@@ -304,7 +304,8 @@ class InstallWizard(QDialog):
|
||||
else: raise
|
||||
|
||||
#if not self.config.get('server'):
|
||||
self.network_dialog()
|
||||
if self.network:
|
||||
self.network_dialog()
|
||||
|
||||
# start wallet threads
|
||||
wallet.start_threads(self.network)
|
||||
@@ -313,12 +314,13 @@ class InstallWizard(QDialog):
|
||||
|
||||
self.waiting_dialog(lambda: wallet.restore(self.waiting_label.setText))
|
||||
|
||||
if wallet.is_found():
|
||||
QMessageBox.information(None, _('Information'), _("Recovery successful"), _('OK'))
|
||||
if self.network:
|
||||
if wallet.is_found():
|
||||
QMessageBox.information(None, _('Information'), _("Recovery successful"), _('OK'))
|
||||
else:
|
||||
QMessageBox.information(None, _('Information'), _("No transactions found for this seed"), _('OK'))
|
||||
else:
|
||||
QMessageBox.information(None, _('Information'), _("No transactions found for this seed"), _('OK'))
|
||||
|
||||
wallet.fill_addressbook()
|
||||
QMessageBox.information(None, _('Information'), _("This wallet was restored offline. It may contain more addresses than displayed."), _('OK'))
|
||||
|
||||
self.password_dialog(wallet)
|
||||
|
||||
|
||||
@@ -821,9 +821,10 @@ class MiniDriver(QObject):
|
||||
self.network = main_window.network
|
||||
self.window = mini_window
|
||||
|
||||
self.network.register_callback('updated',self.update_callback)
|
||||
self.network.register_callback('connected', self.update_callback)
|
||||
self.network.register_callback('disconnected', self.update_callback)
|
||||
if self.network:
|
||||
self.network.register_callback('updated',self.update_callback)
|
||||
self.network.register_callback('connected', self.update_callback)
|
||||
self.network.register_callback('disconnected', self.update_callback)
|
||||
|
||||
self.state = None
|
||||
|
||||
@@ -838,7 +839,9 @@ class MiniDriver(QObject):
|
||||
self.emit(SIGNAL("updatesignal()"))
|
||||
|
||||
def update(self):
|
||||
if not self.network.interface:
|
||||
if not self.network:
|
||||
self.initializing()
|
||||
elif not self.network.interface:
|
||||
self.initializing()
|
||||
elif not self.network.interface.is_connected:
|
||||
self.connecting()
|
||||
|
||||
@@ -187,13 +187,15 @@ class ElectrumWindow(QMainWindow):
|
||||
self.history_list.setFocus(True)
|
||||
|
||||
# network callbacks
|
||||
self.network.register_callback('updated', lambda: self.need_update.set())
|
||||
self.network.register_callback('banner', lambda: self.emit(QtCore.SIGNAL('banner_signal')))
|
||||
self.network.register_callback('disconnected', lambda: self.emit(QtCore.SIGNAL('update_status')))
|
||||
self.network.register_callback('disconnecting', lambda: self.emit(QtCore.SIGNAL('update_status')))
|
||||
self.network.register_callback('new_transaction', lambda: self.emit(QtCore.SIGNAL('transaction_signal')))
|
||||
# set initial message
|
||||
self.console.showMessage(self.network.banner)
|
||||
if self.network:
|
||||
self.network.register_callback('updated', lambda: self.need_update.set())
|
||||
self.network.register_callback('banner', lambda: self.emit(QtCore.SIGNAL('banner_signal')))
|
||||
self.network.register_callback('disconnected', lambda: self.emit(QtCore.SIGNAL('update_status')))
|
||||
self.network.register_callback('disconnecting', lambda: self.emit(QtCore.SIGNAL('update_status')))
|
||||
self.network.register_callback('new_transaction', lambda: self.emit(QtCore.SIGNAL('transaction_signal')))
|
||||
|
||||
# set initial message
|
||||
self.console.showMessage(self.network.banner)
|
||||
|
||||
self.wallet = None
|
||||
self.init_lite()
|
||||
@@ -457,7 +459,7 @@ class ElectrumWindow(QMainWindow):
|
||||
|
||||
|
||||
def notify_transactions(self):
|
||||
if not self.network.is_connected():
|
||||
if not self.network or not self.network.is_connected():
|
||||
return
|
||||
|
||||
print_error("Notifying GUI")
|
||||
@@ -532,7 +534,11 @@ class ElectrumWindow(QMainWindow):
|
||||
|
||||
|
||||
def update_status(self):
|
||||
if self.network.is_connected():
|
||||
if self.network is None:
|
||||
text = _("Offline")
|
||||
icon = QIcon(":icons/status_disconnected.png")
|
||||
|
||||
elif self.network.is_connected():
|
||||
if not self.wallet.up_to_date:
|
||||
text = _("Synchronizing...")
|
||||
icon = QIcon(":icons/status_waiting.png")
|
||||
@@ -562,7 +568,7 @@ class ElectrumWindow(QMainWindow):
|
||||
|
||||
def update_wallet(self):
|
||||
self.update_status()
|
||||
if self.wallet.up_to_date or not self.network.is_connected():
|
||||
if self.wallet.up_to_date or not self.network or not self.network.is_connected():
|
||||
self.update_history_tab()
|
||||
self.update_receive_tab()
|
||||
self.update_contacts_tab()
|
||||
@@ -2073,6 +2079,8 @@ class ElectrumWindow(QMainWindow):
|
||||
|
||||
|
||||
def run_network_dialog(self):
|
||||
if not self.network:
|
||||
return
|
||||
NetworkDialog(self.wallet.network, self.config, self).do_exec()
|
||||
|
||||
def closeEvent(self, event):
|
||||
|
||||
Reference in New Issue
Block a user