Browse Source

qml: remove split wallet functionality.

old multi-account wallets were never used on mobile, so we don't need to support this.
master
Sander van Grieken 2 years ago
parent
commit
af2b0f758d
  1. 19
      electrum/gui/qml/components/OpenWalletDialog.qml
  2. 26
      electrum/gui/qml/qewalletdb.py

19
electrum/gui/qml/components/OpenWalletDialog.qml

@ -74,20 +74,6 @@ ElDialog {
color: constants.colorError color: constants.colorError
font.pixelSize: constants.fontSizeLarge font.pixelSize: constants.fontSizeLarge
} }
Label {
Layout.alignment: Qt.AlignHCenter
visible: wallet_db.requiresSplit
text: qsTr('Wallet requires splitting')
font.pixelSize: constants.fontSizeLarge
}
FlatButton {
Layout.alignment: Qt.AlignHCenter
visible: wallet_db.requiresSplit
text: qsTr('Split wallet')
onClicked: wallet_db.doSplit()
}
} }
FlatButton { FlatButton {
@ -113,11 +99,6 @@ ElDialog {
WalletDB { WalletDB {
id: wallet_db id: wallet_db
path: openwalletdialog.path path: openwalletdialog.path
onSplitFinished: {
// if wallet needed splitting, we close the pane and refresh the wallet list
Daemon.availableWallets.reload()
openwalletdialog.close()
}
onReadyChanged: { onReadyChanged: {
if (ready) { if (ready) {
Daemon.loadWallet(openwalletdialog.path, password.text) Daemon.loadWallet(openwalletdialog.path, password.text)

26
electrum/gui/qml/qewalletdb.py

@ -1,16 +1,13 @@
import os
from typing import TYPE_CHECKING from typing import TYPE_CHECKING
from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QObject from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QObject
from electrum.i18n import _ from electrum.i18n import _
from electrum.logging import get_logger from electrum.logging import get_logger
from electrum.storage import WalletStorage, StorageEncryptionVersion from electrum.storage import WalletStorage
from electrum.wallet_db import WalletDB from electrum.wallet_db import WalletDB
from electrum.wallet import Wallet from electrum.wallet import Wallet
from electrum.bip32 import normalize_bip32_derivation, xpub_type
from electrum.util import InvalidPassword, WalletFileException, send_exception_to_crash_reporter from electrum.util import InvalidPassword, WalletFileException, send_exception_to_crash_reporter
from electrum import keystore
if TYPE_CHECKING: if TYPE_CHECKING:
from electrum.simple_config import SimpleConfig from electrum.simple_config import SimpleConfig
@ -26,8 +23,6 @@ class QEWalletDB(QObject):
needsHWDeviceChanged = pyqtSignal() needsHWDeviceChanged = pyqtSignal()
passwordChanged = pyqtSignal() passwordChanged = pyqtSignal()
validPasswordChanged = pyqtSignal() validPasswordChanged = pyqtSignal()
requiresSplitChanged = pyqtSignal()
splitFinished = pyqtSignal()
readyChanged = pyqtSignal() readyChanged = pyqtSignal()
invalidPassword = pyqtSignal() invalidPassword = pyqtSignal()
@ -45,7 +40,6 @@ class QEWalletDB(QObject):
self._needsPassword = False self._needsPassword = False
self._needsHWDevice = False self._needsHWDevice = False
self._password = '' self._password = ''
self._requiresSplit = False
self._validPassword = True self._validPassword = True
self._storage = None self._storage = None
@ -101,10 +95,6 @@ class QEWalletDB(QObject):
self._password = wallet_password self._password = wallet_password
self.passwordChanged.emit() self.passwordChanged.emit()
@pyqtProperty(bool, notify=requiresSplitChanged)
def requiresSplit(self):
return self._requiresSplit
@pyqtProperty(bool, notify=validPasswordChanged) @pyqtProperty(bool, notify=validPasswordChanged)
def validPassword(self): def validPassword(self):
return self._validPassword return self._validPassword
@ -132,16 +122,6 @@ class QEWalletDB(QObject):
if e.should_report_crash: if e.should_report_crash:
send_exception_to_crash_reporter(e) send_exception_to_crash_reporter(e)
@pyqtSlot()
def doSplit(self):
self._logger.warning('doSplit')
if not self._requiresSplit:
return
self._db.split_accounts(self._path)
self.splitFinished.emit()
def _load_storage(self): def _load_storage(self):
"""can raise WalletFileException""" """can raise WalletFileException"""
self._storage = WalletStorage(self._path) self._storage = WalletStorage(self._path)
@ -185,9 +165,7 @@ class QEWalletDB(QObject):
self._db = WalletDB(self._storage.read(), storage=self._storage, manual_upgrades=True) self._db = WalletDB(self._storage.read(), storage=self._storage, manual_upgrades=True)
if self._db.requires_split(): if self._db.requires_split():
self._logger.warning('wallet requires split') self._logger.warning('wallet requires split')
self._requiresSplit = True raise WalletFileException(_('This wallet needs splitting. This is not supported on mobile'))
self.requiresSplitChanged.emit()
return
if self._db.get_action(): if self._db.get_action():
self._logger.warning('action pending. QML version doesn\'t support continuation of wizard') self._logger.warning('action pending. QML version doesn\'t support continuation of wizard')
raise WalletFileException(_('This wallet has an action pending. This is currently not supported on mobile')) raise WalletFileException(_('This wallet has an action pending. This is currently not supported on mobile'))

Loading…
Cancel
Save