Commit Graph

1756 Commits

Author SHA1 Message Date
tomFlowee ad53051b3a Go with the times. 2024-05-05 20:53:19 +02:00
tomFlowee 84e72bc606 Move image from mobile to common. 2024-05-05 20:52:26 +02:00
tomFlowee 5d131178f2 Make the groupBox fall in line with the rest
This adjusts the colors and qt6 qml standards.
Also various small bugfixes for non-collapsable boxes.
2024-05-05 20:52:26 +02:00
tomFlowee 2a507a6a96 Move the TextPasteDecorator (and icon) to common
The widget actually is pretty useful on desktop too.
2024-05-05 20:52:26 +02:00
tomFlowee 16d52b9383 Make camera stuff available for desktop app
In case the configure step found the QtMultimedia libs, we also
include the camera / QR-scanner functionality in the desktop
app since users may use a laptop which contains a camera.
2024-05-05 20:52:26 +02:00
tomFlowee dbb399fc7a Simplify the CardTypeSelector
Make the selector more compact, Instead of showing empty space, make
the size just fit the actual content.
This makes it more usable on mobile layouts.

Also improve the UX of the NewAccount page on mobile, less implicit text
and more explicit intention based titles.

Last, make the title-label's font scale to fit the size it is given.
2024-05-05 20:52:26 +02:00
tomFlowee da8802c6d1 Re-do the 'import wallet' screen (mobile)
This completely re-designed the 'import wallet' screens on
mobile.
We use the various new features available now, most importantly the
ability to detect derivation and start-height from an electrum
indexing server.
2024-05-05 20:52:26 +02:00
tomFlowee cccdce7ba9 Make 'BigButton' a common widget 2024-05-03 22:40:09 +02:00
tomFlowee 46d73996d7 Make the ImportHandler & IndexerServices work together
We now get an actual endpoint from the IndexerServices which is handed
to the ImportHandler for remote services.

This also includes a bunch of bugfixes and basic 'make it work' stuff.
2024-05-03 11:53:08 +02:00
tomFlowee a0455ab414 UX fixes for TextField
Fix colors on disabled fields.

We now render the Placeholder as italic and in a more distinct color
to the main text.
2024-05-03 11:49:04 +02:00
tomFlowee bb7c082119 UX improvements for ComboBox
Fix ComboBox general colors to fit in the theme.
This also adds enabled usage, so the enabled comboboxes fall in
line with the textfield color settings, same for disabled ones.

We also added a focus indicator.
2024-05-03 11:49:04 +02:00
tomFlowee 9ec9632999 Add helper method FloweePay::addressForPrivKey
Also use the helper method in Flowee_utils:
static PrivateKey PrivateKey::fromBase58(std::string);
2024-05-01 22:19:14 +02:00
tomFlowee 49b10a6842 Add xpriv import and detection 2024-04-30 21:51:16 +02:00
tomFlowee 39b23f3725 Enhance the TestPasteDecorator
This moves the component out to its own file while fixing some UX
issues.

* It is now always visible for (UI) discovery purposes.
* When we paste when there is no matching text we show negative
feedback.
2024-04-30 21:51:16 +02:00
tomFlowee 25a2fce9f2 Add support for xpub strings.
This allows the xpub type strings to be identified and used. Nobody uses
it at this time, though.
2024-04-29 12:15:43 +02:00
tomFlowee 4b47da747f Add QR for the xpub 2024-04-29 12:15:43 +02:00
tomFlowee d3baf2495a Add CliboardHelper support for privatekeys + seeds. 2024-04-29 12:15:43 +02:00
tomFlowee 0ac472f0af Allow override of the 'back' button 2024-04-29 12:15:43 +02:00
tomFlowee e7c937cae1 Integrate into the app singleton 2024-04-29 12:15:43 +02:00
tomFlowee 6b31d46892 Add IndexerServics to find electrum indexers
This does not hardcode any indexers, as that would be fragile as
well as painting a bulls-eye on the backs of the server operators
for ddos targets.

Instead this reuses the same concept from Satoshi's Bitcoin. We have
DNS feeds (currently only one) maintained by a crawler.
This finds us a handful of Electrum servers.
We connect to one of those to find more servers, notice that this is
not SSL encrypted because we only have an IP address at that time
while SSL wants a hostname.

This quick connection over plainnet is there just to fetch the
server list known to the server, we can then open an SSL connection
to any of those.
2024-04-29 12:15:43 +02:00
tomFlowee 7a5a9d8b41 Expand ImportHandler to support privkeys etc too. 2024-04-27 21:05:01 +02:00
tomFlowee 930bedfeaa Add copyright headers to new class 2024-04-23 12:58:01 +02:00
tomFlowee ab75ae136f Start new class ImportHandler.
ImportHandler can connect to an Electrum Server and
check different derivation paths etc for a given seed.
2024-04-23 12:55:51 +02:00
tomFlowee 8f26c086a5 Fix UX bug where clickable areas overlapped.
This makes more clear what happens when you click on the extend of the
zoom/scale row.
2024-04-23 09:59:15 +02:00
tomFlowee 5e89ba5d41 match comment to reality 2024-03-18 22:51:32 +01:00
tomFlowee dbed7c7a69 Reject transactions of v >= 10
This is purely a future-proofing measure, don't accept transactions that
are likely to be handled differently than todays transactions.
Since the May 2023 upgrade versions other than 1 or two are not allowed
on-chain, but before that some version 4 transactions were mined (and some
negative numbered ones longer ago).

Talks about a version 10 transaction has started, so make sure this software,
if it is still running at someone's machine, will already reject higher
version transactions because we can't know if they are compatible or not.
2024-03-13 17:03:37 +01:00
tomFlowee bde68cc7bc Reach balance; add CT icon
For inputs we added fusion icons, for outputs we now have
CashToken icons that show up when applicable.
2024-03-07 10:49:53 +01:00
tomFlowee 7b5ed94298 Avoid null pointer warning 2024-03-07 10:49:53 +01:00
tomFlowee e34c4492fc Cleanup 2024-03-07 10:49:53 +01:00
tomFlowee d614ebe836 Fix warning. 2024-03-07 10:49:53 +01:00
tomFlowee 53ac4a2592 [desktop] Disable showing of clipboard icons until hover 2024-03-07 10:49:53 +01:00
tomFlowee 032f20d2dd On Desktop, show tooltip with exact mined date.
If the timestamp is something vague like "half an hour ago" then the
tooltip will show the to-the-minute correct timestamp.
2024-03-05 22:07:09 +01:00
tomFlowee f119fd788c Make the amount be according to user settings again
Must have left it commented out after the refactor, this brings back the
existing functionality to follow the user setting and only show fiat
price.
2024.02.0
2024-02-28 12:10:09 +01:00
tomFlowee 2ebe29772d Fix width indicator. 2024-02-28 12:05:24 +01:00
tomFlowee 63e7f988f6 Fixlets for fiat price changes pane. 2024-02-28 11:45:16 +01:00
tomFlowee d07a8f3355 new version 2024-02-27 19:42:39 +01:00
tomFlowee d1dc483b18 A little counter balance for big bloom filters
Last year I increased the bloom filters to make sure that bcom wallets
could be imported with their weird behavior.
The side-effect has been that wallets imported that have 3K addresses
and up start to have massive amounts of false-positives on their bloom
filter during import.
So while the hacks done before were for wallet vendors intentionally
keeping their list of private keys small (100 or so), we know we can
thus turn off said weird workarounds when the wallet is in actual fact
much larger. And thus save bandwidth.
2024-02-27 19:41:35 +01:00
tomFlowee 15411010b0 Avoid rollback when not needed
This now uses a shared-pointer and moves the creation to the point where
we know the new data is actually a transaction for us, avoiding work
when the bloom filter caught a transaction not actually for us.
2024-02-27 19:41:09 +01:00
tomFlowee 920e5d470c Split bloom filter and private-key ownership.
Now we view the creation of more private keys, and how many, as a
separate concept as the bloom-filter 'gap' counts.

This cleans up the concepts of bloom filters, we now use the
design as documented on;

https://codeberg.org/Flowee/pay/wiki/dev/bloom
2024-02-27 16:07:02 +01:00
tomFlowee fc407ee7f2 Improve debug output features. In debug builds.
This removes the 'debug' logging (again) in non-debug builds,
but it also adds a new 'debugFile' argument where the user can
point to the logs.conf (as used by all flowee server components)
which allows setting of log levels per section, and more.
2024-02-26 23:09:56 +01:00
tomFlowee 6e2eb8797a Fix typo. 2024-02-14 00:23:47 +01:00
tomFlowee a2560d98a7 Separate 'singleAccount' concept between UIs
The isSingleAccount property controls if the UI is simple or more
complex.
The single account setup doesn't show you that you have any concept on
differnt accounts at all. No account chooser etc.

On Desktop, however, we choose to always show the archived wallets
anyway. Even though its not in-your-face. Which makes the behavior
between those UIs slightly different.
The addition of the limitedArchiveView property is meant to
facilitate that.
2024-02-14 00:02:53 +01:00
tomFlowee 04c4c7ec03 Avoid using a not existing account 2024-02-14 00:02:53 +01:00
tomFlowee e127574b7a Improve keyboard usage of listViews
The page-up/page-down now actually scroll a significant chunk of a
page and not an annoyingly small distance.

As we scroll, we make it a point to show the ScrollBar-thumb in order
to give the user feedback on where in the list they are.
2024-02-14 00:02:53 +01:00
tomFlowee 6312a468af Improve the entry of pin and numbers. 2024-02-14 00:02:53 +01:00
tomFlowee 19b8c497cf Improve text
The help text now is more clear about how the payment may be started.
2024-02-13 14:25:54 +01:00
tomFlowee d6bde257cc Fix components scaling
We simply use the font size, which is our basic scaling system anyway.
This avoids sizing issues for really large fonts when items start taking
multiple lines.
2024-02-12 23:55:12 +01:00
tomFlowee 347a23bc72 Make the PIN panel take more space
This makes entering the PIN much easier simply because we use as much
space on the screen as there is available.
2024-02-12 23:20:36 +01:00
tomFlowee 1ec24150c1 Add icons and colors to the placeholder buttons. 2024-02-12 23:01:14 +01:00
tomFlowee b8d650b9b3 Add UI scaling to desktop 2024-02-12 23:01:14 +01:00