Sander van Grieken
c79414012c
fix bug where undefined wallet instance crashes app
3 years ago
Sander van Grieken
49b7a7518c
upgrade wallet automatically when needed
3 years ago
Sander van Grieken
670882c3c0
improve wallet open flow
remove load_wallet from walletDB, route all wallet loading through QEDaemon.
QEDaemon emits walletLoaded and walletRequiresPassword signals. main.qml opens
OpenWallet view when extra user interaction is needed
3 years ago
Sander van Grieken
539197e8f3
fix up styling ServerConnectWizard
3 years ago
Sander van Grieken
c3bc42f434
add clipping for flickable
3 years ago
Sander van Grieken
d49b168389
wrap potentially large pages in a flickable, for small form factors
3 years ago
Sander van Grieken
48d47b008e
move seed text component to its own type
3 years ago
Sander van Grieken
5d5204db1e
wizard styling, infotext component, add some boilerplate for existing seed
3 years ago
Sander van Grieken
07452a6a7a
seed generation can take some time, do it in a background thread and
show a busy indicator while we wait
3 years ago
Sander van Grieken
4cae116ad8
create wallet at end of new wallet wizard
3 years ago
Sander van Grieken
145e7e3440
add seed warning texts
3 years ago
Sander van Grieken
e243aa22e7
remove cruft
3 years ago
ThomasV
08154da3b6
add command line parameters to android/build.sh, and use separate .buildozer dirs for kivy and qt5
3 years ago
ThomasV
064ac55059
determine android_gui at runtime
3 years ago
Sander van Grieken
553ccdebd1
qml: eliminate animation glitching when removing a page from the wizard (back button)
3 years ago
Sander van Grieken
b1bd4d5acb
add seed generation and verification for standard wallets
3 years ago
Sander van Grieken
c999b3a297
add Bitcoin QObject for seed generation
3 years ago
Sander van Grieken
ba58c6357e
add initial dialog for opening wallets, initial coverage also for splitting and db upgrades
3 years ago
Sander van Grieken
63663b2b2d
add simple message pane component
3 years ago
Sander van Grieken
54fe17b403
introduce QEWalletDb class to expose electrum wallet db to qml
3 years ago
Sander van Grieken
f9245164bb
remove devtest buttons
3 years ago
Sander van Grieken
0682f05d95
factor off the main QGuiApplication class into its own file
3 years ago
Sander van Grieken
4b3f79f41c
use QEAvailableWalletListModel for available wallets
3 years ago
Sander van Grieken
2b7f22d27d
create available wallet listmodel class
3 years ago
ThomasV
634a647fb1
android: parameterize GUI framework
3 years ago
Sander van Grieken
d13f5d0da0
qml: add server connect wizard
3 years ago
Sander van Grieken
56bbd28af7
qml: generalize Wizard
3 years ago
Sander van Grieken
c3d37913cd
android now uses qml UI
3 years ago
Sander van Grieken
18b10c84ca
qml: add debug tracing of QML plugin loading
3 years ago
Sander van Grieken
279c1ce9fb
dev: disable PIL use for now
3 years ago
Sander van Grieken
64de9807ac
remove kivy platform check
3 years ago
Sander van Grieken
f8ce681f5e
allow override of QT_QUICK_CONTROLS_STYLE
3 years ago
Sander van Grieken
ba7bcbfcbc
qml: many UI updates and additions
4 years ago
Sander van Grieken
6e482f437a
qml: fixes and cleanup for qedaemon, qenetwork. expose many wallet properties in qewallet
4 years ago
Sander van Grieken
3b22ecdae4
qml: add available wallets model
4 years ago
Sander van Grieken
599b01f009
qml: some more boilerplate, init language, SIGINT signal handler
4 years ago
Sander van Grieken
1260720bb6
qml: qml test plugin
4 years ago
Sander van Grieken
e3c63ae395
qml: initial implementation of new wallet conversation
4 years ago
Sander van Grieken
e534c5d834
qml: switch to QtQuick Controls
4 years ago
Sander van Grieken
d195fce82d
qml: hook any qml supporting plugins, add test plugin
This allows different platforms to have their own UI components while still leveraging the common
set of QObjects and utility components.
4 years ago
Sander van Grieken
39048fdd10
qml: UI: add most transaction fields to tx history page
4 years ago
Sander van Grieken
a3801ecae8
qml: map fields of tx history
4 years ago
Sander van Grieken
3dce09328e
qml: Initial QML to test QObject property binding, ListModels, Camera
4 years ago
Sander van Grieken
7eb733757a
qml: add initial qml.ElectrumGui class, Electrum QObject wrappers and an initial QObject for QR en/decoding
4 years ago
Sander van Grieken
1df5187719
qml: add 'qml' gui option and add gui.qml.ELectrumGui to type hint for gui_object
4 years ago
ThomasV
49a67a5cd2
build android apk with qt5
update requirements file for building PyQt5
3 years ago
SomberNight
c463f5e23d
password unification refactor: move methods from wallet to daemon
Note in particular that check_password_for_directory was not safe to use while the daemon had wallets loaded,
as the same file would have two corresponding Wallet() instances in memory. This was specifically handled in
the kivy GUI, on the caller side, by stopping-before and reloading-after the wallets; but it was dirty to
have the caller handle this.
3 years ago
SomberNight
c71f00cc8e
transaction.deserialize: only set self._inputs after parsing witness
re multi-threaded sanity...
(see lazy deserialization in Transaction.inputs)
3 years ago
ThomasV
1d343657f1
Qt: require left-click to toggle receive qr-code
3 years ago
SomberNight
b6b7b0a6c0
lnwatcher.inspect_tx_candidate: handle witness being None
```
E/W | lnwatcher.LNWalletWatcher.[test_segwit_2-LNW] | Exception in trigger_callbacks: AssertionError('witness is missing! txid=49f0fe532c07ec099ea3a9540a06141f529d28244c3a7be20f54843636cd7380. rawtx=cHNidP8BAFICAAAAAbliIHcoL1ZXwvRfBrjmhEJ63isM+wBBiCoZW231T2jhAAAAAAD9////AbMsQQAAAAAAFgAURC0BRfNFWqqD+jbsTaiX0/qjrE2v2iIAAAEA/S8BAgAAAAABAVbd14mCS0q4HjYGhWppSXvBvx9POsTYDSwXAIkxJF1iAAAAAAD/////ASEtQQAAAAAAFgAUh+Ku4dqhbNrjKjcK65dsZAWV+ocEAEcwRAIgcILGbxQK7wxiq1yBY6GxGBs4A32pBzC4PUSiMY0QuVMCIGtWnoRD/2zx4BshRYeHsg7wp9ClplQWxjsBJszXEcPfAUgwRQIhAPn0dsBeyqW4U0TbOgJMMEEuKwqBXfXHryHJvOxcwKafAiBRBBFpJvYxMtjkg7aABj1yUEwBaZuAqg1a8mlbHLKnBwFHUiECRc2elI2LEqEE31/G9tC6IA4yV09nKK6nSTez2vUlVikhAxbmJytLCOgHfz1vFqKrZMhERzVCJd0AaAkBWZqMKbe6Uq4AAAAAIgYDtG0jdrMO8FbxdAepULYg1Hu8fbq6hQ7Ki35K6/TViEQQ0uN52gAAAIABAAAAgQAAAAAiAgIP7MeuyqhS6fOpbLYY/1R+Rgmc0sYyA5GHEXBYOpWSoBDS43naAAAAgAAAAAB7AAAAAA==')
Traceback (most recent call last):
File "...\electrum\electrum\util.py", line 1176, in wrapper
return await func(*args, **kwargs)
File "...\electrum\electrum\lnwatcher.py", line 213, in trigger_callbacks
await callback()
File "...\electrum\electrum\lnwatcher.py", line 219, in check_onchain_situation
spenders = self.inspect_tx_candidate(funding_outpoint, 0)
File "...\electrum\electrum\lnwatcher.py", line 297, in inspect_tx_candidate
r = self.inspect_tx_candidate(spender_txid+':%d'%i, n+1)
File "...\electrum\electrum\lnwatcher.py", line 281, in inspect_tx_candidate
assert witness, f"witness is missing! txid={spender_txid}. rawtx={str(spender_tx)}"
AssertionError: witness is missing! txid=49f0fe532c07ec099ea3a9540a06141f529d28244c3a7be20f54843636cd7380. rawtx=cHNidP8BAFICAAAAAbliIHcoL1ZXwvRfBrjmhEJ63isM+wBBiCoZW231T2jhAAAAAAD9////AbMsQQAAAAAAFgAURC0BRfNFWqqD+jbsTaiX0/qjrE2v2iIAAAEA/S8BAgAAAAABAVbd14mCS0q4HjYGhWppSXvBvx9POsTYDSwXAIkxJF1iAAAAAAD/////ASEtQQAAAAAAFgAUh+Ku4dqhbNrjKjcK65dsZAWV+ocEAEcwRAIgcILGbxQK7wxiq1yBY6GxGBs4A32pBzC4PUSiMY0QuVMCIGtWnoRD/2zx4BshRYeHsg7wp9ClplQWxjsBJszXEcPfAUgwRQIhAPn0dsBeyqW4U0TbOgJMMEEuKwqBXfXHryHJvOxcwKafAiBRBBFpJvYxMtjkg7aABj1yUEwBaZuAqg1a8mlbHLKnBwFHUiECRc2elI2LEqEE31/G9tC6IA4yV09nKK6nSTez2vUlVikhAxbmJytLCOgHfz1vFqKrZMhERzVCJd0AaAkBWZqMKbe6Uq4AAAAAIgYDtG0jdrMO8FbxdAepULYg1Hu8fbq6hQ7Ki35K6/TViEQQ0uN52gAAAIABAAAAgQAAAAAiAgIP7MeuyqhS6fOpbLYY/1R+Rgmc0sYyA5GHEXBYOpWSoBDS43naAAAAgAAAAAB7AAAAAA==
```
3 years ago