Commit Graph
59 Commits
Author SHA1 Message Date
jwinterm 04ed46aca3 Deep Cake scrub: gut user-visible refs, swap SVG asset contents
URL replacements throughout lib/:
- support_view_model.dart: removed Cake's own support channels (email,
  website, forum, Telegram, Telegram bot). Only GitHub Issues + Releases
  remain. Third-party provider support links (ChangeNow, SideShift,
  SimpleSwap, Exolix, Trocador, Onramper, DFX, MoonPay, Robinhood,
  Kryptonim) kept — genuinely useful when a swap goes sideways.
- transaction_details_view_model.dart + payjoin_details_view_model.dart:
  mempool.cakewallet.com -> mempool.space (canonical free public mempool,
  no affiliate).
- services_updates_widget.dart: status.cakewallet.com -> our GH issues.
- 8 widget/screen files: docs.cakewallet.com / blog / cakewallet.com help
  URLs repointed to github.com/Such-Software/hash-wallet (placeholder
  until we have our own docs; better than dead-linking to Cake's docs).

User-facing text changes:
- walletkit_service.dart: WalletKit metadata (name/description/url/icon/
  redirect) all -> Hash Wallet / Such Software repo / hashwallet:// scheme.
- di.dart: TrezorConnect callback URL + appName -> Hash Wallet.
- vulnerable_seeds_popup.dart + haven_wallet_removal_popup.dart: copy
  rewritten to say 'Hash Wallet' instead of 'Cake Wallet', and point to
  GH issues instead of Cake's support email.
- swap_provider_initial_preference_modal.dart: trailing 'Cake Wallet.'
  -> 'Hash Wallet.'

Deep-link URL scheme cakewallet:// -> hashwallet:// in:
- lib/main.dart, lib/src/screens/root/root.dart, lib/view_model/link_view_model.dart
  Means any cakewallet:// link from a payment QR / Trezor callback /
  shortcut now routes via hashwallet://. No existing user base so no
  migration needed.

SVG asset swaps (content replaced, filenames kept so call-sites compile
without rewriting):
- assets/new-ui/cake_squircle_icon.svg -> hash_wallet/02_app_icon.svg
- assets/new-ui/cakewallet-wordmark-light.svg -> hash_wallet/03_lockup_horizontal.svg
  (dark text for light backgrounds)
- assets/new-ui/cakewallet-wordmark.svg -> hash_wallet/03_lockup_horizontal_dark.svg
  (light text for dark backgrounds)
- apps_widget.dart: the conditional cakelabs-icon render became a SizedBox()
  no-op. The Apps tab is gutted anyway (placeholder content); this widget
  is also used elsewhere where the Cake Labs attribution badge is unwanted.
2026-05-16 11:54:49 -04:00
jwinterm 04203654f1 Rename Flutter project + binary: cake_wallet -> hash_wallet
The big one. Touches 760+ files. Locks in the user's decision to break
import-line compatibility with upstream cake-tech/cake_wallet in exchange
for a binary named hash_wallet on every platform.

Changes:
- pubspec_description.yaml: project name cake_wallet -> hash_wallet
- 762 Dart files: every 'package:cake_wallet/...' import rewritten to
  'package:hash_wallet/...' (lib/, cw_*/lib/, tool/, test/, integration_test/)
- linux/CMakeLists.txt: BINARY_NAME cake_wallet -> hash_wallet
- windows/CMakeLists.txt: project + BINARY_NAME (CakeWallet -> HashWallet)
- windows/runner/Runner.rc: company / file / product strings to Hash Wallet
  + Such Software LLC copyright
- macos/Runner.xcodeproj/project_base.pbxproj: cake_wallet_new.app refs
  -> hash_wallet.app (macOS output bundle name)
- com.suchsoftware.HashWallet.yml (Flatpak): all binary path refs
  cake_wallet -> hash_wallet (e.g. /app/hash_wallet/hash_wallet)
- linux/com.suchsoftware.HashWallet.desktop: Exec=hash_wallet
- scripts/android/copy_monero_deps.sh: CW_DIR target path
- configure_hash_wallet.sh: error message typo (old filename)

INTENTIONALLY UNCHANGED:
- cw_* subpackage names (cw_core, cw_bitcoin, cw_wownero, etc.) — they
  remain as the historical 'cake wallet' naming; renaming them would
  cascade through every sub-package's internal structure
- Method channel name 'com.cake_wallet/native_utils' in iOS/macOS/Android
  AppDelegates and MainActivity — it's a string identifier that has to
  match the Dart side exactly. Renaming requires both-sides change; it's
  internal-only and not user-visible.
- ghcr.io/cake-tech/cake_wallet:debian13-... docker image references in
  build scripts — that's Cake Labs' published image we use as the build
  environment, not ours.

User data directory now follows the new binary name:
  ~/.local/share/hash_wallet/  (was ~/.local/share/cake_wallet/)
  ~/.config/hash_wallet/       (was ~/.config/cake_wallet/)
Existing users on the old name will need migration if any exist.
2026-05-16 11:33:25 -04:00
jwinterm 625022fdbb Initial Hash Wallet rebrand from Cake Wallet fork
- Re-enable Wownero and remove the wallet-deprecation popup
- Disable Solana, Tron, Zano, Zcash, Decred across all platform configs
- Trim swap providers to Trocador-only (its aggregator already covers
  ChangeNow, FixedFloat, LetsExchange, Exolix, StealthEx, Quantex, +16 more)
- Bundle ID com.suchsoftware.hashwallet, display name "Hash Wallet",
  URL scheme "hashwallet"; Android Java package moved
- iOS plist + macOS xcconfig + Windows bat updated
- About page and English strings rebranded; new README
- Cake Pay verified hidden via existing FeatureFlag.isCakePayEnabled = false
2026-05-14 08:04:08 -04:00
Omar 3822a2c30f minor fix 2026-05-07 00:17:45 +02:00
9f6396f5d8 feat: migrate Trade data to SQLite with TradeLegacy for backward compatibility (#3106)
* feat: migrate Trade data to SQLite with TradeLegacy for backward compatibility

* feat: persist full currency snapshots in sql storage, not raw-only [WIP]

* feat: persist full trade currency snapshots in sql storage

* refactor trade and currency handling for migration

* Minor fixes

---------

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
2026-05-07 00:02:04 +02:00
b5cec3576c popup ui for wownero deprecation (#3186)
* fix: add "support for coin removed" to exception handler ignored list

* wownero deprecation popup

---------

Co-authored-by: Czarek Nakamoto <cyjan@mrcyjanek.net>
2026-05-06 23:18:35 +02:00
5feee62358 Image cleanup (#3160)
* Remove webp currency icons and switch all to SVG

* Remove more unused images

* Fix base icon

* Fix Polygon, Tron, Bitcoin Cash, and BNB flat icons

* Fix base icon

* Remove more unused icons

* Update icon urls

* Switch support icons to SVGs

* Replace more hero images

* Add back Haven logo temporarily and fix refund icon

* Fix

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>

---------

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
2026-05-06 23:00:05 +02:00
malik1004xandGitHub f0ef217210 hide lnurl from confirm sending sheet (#3207) 2026-05-06 21:49:47 +02:00
malik1004xandGitHub cfb5da012e show token row in receive infobox (#3211)
* show token row in receive infobox

* fix showing currencies w/o image
2026-05-06 21:48:27 +02:00
2651260fe4 CW-1260: Enable Swap all for EVM wallets and persist amount when currency changes (#2828)
* feat: Enable Swap all for EVM wallets and persist amount when currency changes

* Update local

* ffeat: Recalculate amounts when swapping all and currency changes

* revert formatting

* fix: Review comments

* refactor: streamline currency change logic

* refactor: simplify currency change handling

* fix: handle amount and gas estimation for swap xyz trades for swap all

* Revert "fix: handle amount and gas estimation for swap xyz trades for swap all"

This reverts commit 408c9dbeffdc82e08e9349d0f14b229031060c62.

* feat: exclude specific providers for swap all

---------

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
2026-04-30 20:17:21 +02:00
40c4118b66 refactor: Improve bridge view model (#3184)
* refactor: Improve bridge view model

* Move bridge related vms into single folder

* handle missing class when building for monero.com

* handle missing classes in monero.com build

* Minor enhancements

* Update lib/view_model/bridge/bridge_view_model.dart [skip ci]

* Update lib/view_model/bridge/bridge_view_model.dart

---------

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
2026-04-30 20:15:11 +02:00
malik1004xandGitHub 928113ea25 fix height and amount for btcln tx details (#3201) 2026-04-30 03:16:31 +02:00
Omar 9c842282e6 minor fix [skip ci] 2026-04-19 03:05:51 +02:00
Omar HatemandGitHub 314eb36dd5 6.1.0 fixes (#3190)
* - Fix swap state not maintained (fixed rate can be on or off at the same time)
- Fix Pay Anything putting contract address
- Pick the token of the URI

* fix incorrect function calls [skip ci]
2026-04-18 00:05:14 +02:00
malik1004xandGitHub 1cb05d5211 fix bridge ui (#3189)
* fix bridge ui

* padding on info bottom sheet

* fix cutoff on infobottomsheet

* fix wording on bridge details ui

* no _amountController.clear() on bridge page navigation

* autofocus keyboard on bridge page opened

* remove KeyboardHideOverlay

* fix text field resize

* fix text field padding
2026-04-17 23:46:58 +02:00
0e92111d93 v6.1.0 Release Candidate (#3178)
* v6.1.0 Release Candidate

* add copy indicator on tx details screen (#3152)

* initial remove wownero (#3180)

* fix: minor fix to the backupSeeds (#3181)

* add isSensitive to copy indicator (#3183)

* add copy indicator on tx details screen

* add isSensitive field

* fix: add "support for coin removed" to exception handler ignored list (#3182)

* CW-1273: Implement USDT0 Bridge (#2855)

* feat: Implement USDT0 Bridging using OFT Standard by Layer Zero. POC available in apps menu.

* feat: Implement USDT0 Bridging using OFT Standard by Layer Zero. POC available in apps menu.

* feat: Implement USDT0 Bridging using OFT Standard by Layer Zero. POC available in apps menu.

* Add transaction history and status polling for USDT0 bridging

* Add  Transaction history and status polling for USDT0 Bridging

* USDT0 Bridging Implementation

* Update Arbitrum USDT token symbol

* fix: Merge conflicts

* fix: Merge conflicts

* chore: Rever formatting

* feat: Implement new flow

* feat: Implement new ui flow

* Add currency to configure

* feat: new ui flow

* Update USDT0 implementation
- Switch to sqlite for storage instead of hive
- Switch bridge history and details to modals
- Switch bridge transfer details page to new tx details ui

* refactor: rearrange modal action buttons

* enhance usdt0 bridge flows

* Update lib/entities/wallet_manager.dart [skip ci]

---------

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>

* v6.1.0 Release Candidate

* fix lag on saving frozen coin status (#3164)

* fix lag on saving frozen coin status

* wrap saveUnspentCoinInfo in @action

* revert fix + safeguard coin control page

* v6.1.0 Release Candidate

* v6.1.0 Release Candidate [skip ci]

* v6.1.0 Release Candidate [skip ci]

---------

Co-authored-by: malik1004x <malikowskirobert@gmail.com>
Co-authored-by: cyan <cyjan@mrcyjanek.net>
Co-authored-by: David Adegoke <64401859+Blazebrain@users.noreply.github.com>
2026-04-16 05:09:59 +02:00
malik1004xandGitHub fb14d07fc7 fix lag on saving frozen coin status (#3164)
* fix lag on saving frozen coin status

* wrap saveUnspentCoinInfo in @action

* revert fix + safeguard coin control page
2026-04-15 14:31:44 +02:00
586a040e4a CW-1273: Implement USDT0 Bridge (#2855)
* feat: Implement USDT0 Bridging using OFT Standard by Layer Zero. POC available in apps menu.

* feat: Implement USDT0 Bridging using OFT Standard by Layer Zero. POC available in apps menu.

* feat: Implement USDT0 Bridging using OFT Standard by Layer Zero. POC available in apps menu.

* Add transaction history and status polling for USDT0 bridging

* Add  Transaction history and status polling for USDT0 Bridging

* USDT0 Bridging Implementation

* Update Arbitrum USDT token symbol

* fix: Merge conflicts

* fix: Merge conflicts

* chore: Rever formatting

* feat: Implement new flow

* feat: Implement new ui flow

* Add currency to configure

* feat: new ui flow

* Update USDT0 implementation
- Switch to sqlite for storage instead of hive
- Switch bridge history and details to modals
- Switch bridge transfer details page to new tx details ui

* refactor: rearrange modal action buttons

* enhance usdt0 bridge flows

* Update lib/entities/wallet_manager.dart [skip ci]

---------

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
2026-04-15 05:06:05 +02:00
malik1004xandGitHub a0355ff414 add isSensitive to copy indicator (#3183)
* add copy indicator on tx details screen

* add isSensitive field
2026-04-15 00:33:37 +02:00
malik1004xandGitHub c338c6d6b8 add copy indicator on tx details screen (#3152) 2026-04-14 05:45:31 +02:00
malik1004xandGitHub 8ba05dd284 Merge branch 'dev' into list-item-padding 2026-04-13 23:36:16 +02:00
547fae891a show Bitcoin address derivation path (#3177)
* show Bitcoin address derivation path

* Revert "show Bitcoin address derivation path"

* Update cw_bitcoin/lib/bitcoin_address_record.dart [skip ci]

* Update cw_bitcoin/lib/bitcoin_address_record.dart [skip ci]

---------

Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
2026-04-13 22:05:26 +02:00
malik1004xandGitHub 3b614ba04a disable swap frome xternal when switching to wallet-supported currency (#3175) 2026-04-13 19:52:48 +02:00
tuxsudo 3ab5c502f2 Remove a change and fix padding on transactions page 2026-04-08 22:03:22 -04:00
tuxsudoandGitHub fd62cd5b52 Add background color to confirmation indicator (#3159) 2026-04-08 18:13:13 +02:00
malik1004xandGitHub 915e76d4f9 improve evm ui (#3129)
* improve evm ui

* fix model generation

* add db schema

* bugfixes

* scrollable fav token modal

* make combined balance the default

* add crypto_full_icons to pubspec

* optimize transaction duplication check

* fix format issue

* add chain icons to swap tiles

* decrease asset tile font weight

* show chain icon in swap currency selector

* move chain icon for tokens

* new trade history row

* ui fix

* fix padding on modal

* remove vec
2026-04-01 11:04:58 +02:00
OmarHatem 628bd9d45b ignore timeout exception 2026-03-28 17:51:03 +01:00
malik1004xandGitHub ba9e8d7b7f make swap scrollable on smaller devices (#3139) 2026-03-27 16:50:23 +01:00
David AdegokeandGitHub 8da886f1f1 Merge pull request #3143 from cake-tech/walletconnect-from-scan-button
make walletconnect work from the scan button
2026-03-27 16:43:42 +01:00
malik1004xandGitHub 1e8eb2dd3c fix swap id cutting off for some providers (#3141) 2026-03-27 16:40:21 +01:00
Robert Malikowski b6f614fdbc make walletconnect work from the scan button 2026-03-27 00:56:35 +01:00
David AdegokeandGitHub 680cf22a98 feat: Add Tether Gold (XAUT0) token support to Solana wallet and add migration for existing wallets (#3136) 2026-03-26 16:36:46 +01:00
malik1004xandGitHub cbc9f99ba4 add balance hidden message (#3132)
* add balance hidden message

* add to translation

* add to translation
2026-03-26 00:06:15 +01:00
malik1004xandGitHub 312d88dc63 make tx details modal full screen by default (#3133) 2026-03-25 23:48:35 +01:00
Konstantin UllrichandGitHub e7b8229429 Handle network errors, improve Lightning setup, and add deposit events (#3127)
* fix: send all for lightning

* fix: adjust crypto amount parsing logic for send page outputs

* feat: add event handling for deposit transactions in Bitcoin and Lightning wallets

- Introduced `onCreateDepositTransactionEvent` and `onUpdateDepositTransactionEvent` callbacks to manage deposit transaction updates.
- Updated event listener logic to handle unclaimed and claimed deposit events.
- Added support for processing deposit transaction info with `ElectrumTransactionInfo`.

* fix: handle network errors on username validation and improve Lightning address setup

- Added network error handling for username validation with a fallback error.
- Enhanced Lightning address setup logic with error handling and a fail-safe mechanism to disable Lightning usage if the setup fails.

* fix: enhance error handling for Lightning and update validation patterns

* fix: remove redundant raw string mark from amount validation pattern

* fix: normalize crypto amount input by replacing commas with dots
2026-03-25 20:45:23 +01:00
malik1004xandGitHub a864655e2d Transaction details (New UI) (#3070)
* merge

* strings

* layout fixes

* add modal for tx details

* add copy option

* fix bottomWidget

* fix bottomWidget

* remove import

* add rbf

* add observer for rbf

* post-review fixes

* add mweb explorer

* proper formatting for source address
2026-03-24 01:49:46 +01:00
malik1004xandGitHub 212441d1bc fix tx status update (#3123)
* fix tx status update

* fix infobox with disabled address rotation

* check transaction direction (edge case)
2026-03-23 21:11:01 +01:00
tuxsudoandGitHub a8d9f0877b Minor UI Fixes (#3108)
* Fix Filter button padding

* Fix sign/verify closing popup
2026-03-19 21:07:19 +01:00
malik1004xandGitHub 24cceb5795 fix ui edge cases (#3109)
* wrap navbar in observer to account for disabling pages

* always display fiat amount with 2 decimals on confirm sheet

* don't show limit popup if max limit is 0 (this signifies the providers didn't load yet)

* fix deposit amount getting set to "ALL" in race condition

* disable showing hardware wallets on l2 wallet selector

* fix reset in account customizer if designs weren't loaded properly

* add withDecimals string extension

* add fallback on failed display amount parse
2026-03-18 22:34:02 +01:00
Konstantin UllrichandGitHub 183e2bed94 fix: add OpenCryptoPay request handling to SendViewModel (#3105) 2026-03-18 14:55:46 +01:00
OmarHatem a05277757c update app versions [skip ci] 2026-03-16 15:48:33 +01:00
db00a0214a v6.0.2 Release candidate (#3080)
* v6.0.2 Release candidate

* v6.0.2 Release candidate

* move btc ln up in the currency picker

* disable bsc for swapsxyz

* minor [skip ci]

* hide dex/rate selection on swap screen

* temp fix for evm tokens swaps icons until hive migration is done

* minor [skip ci]

* disable force dex providers for existing users and let them pick it from settings preference

* Show bitcoin address types in swap picker (#3096)

* Show bitcoin address types in swap picker

* remove wrong conversion to bolt11 [skip ci]

* feat: add Lightning invoice resolution and address normalization

* automatically select contact wallet address based on the selected swap currency (whether it's bitcoin or lightning)

* minor [skip ci]

* default to bolt11 invoice for lightning swaps

---------

Co-authored-by: Konstantin Ullrich <konstantinullrich12@gmail.com>

---------

Co-authored-by: Konstantin Ullrich <konstantinullrich12@gmail.com>
2026-03-16 14:21:16 +01:00
SerhiiandGitHub 82982ae5af fix swap deposit address when switching from external to wallet (#3097) 2026-03-16 01:20:02 +01:00
tuxsudoandGitHub b1511a2fb0 Minor UI Fix (#3093)
* Switch to CakeImageWidget on settings_page.dart

* Temporary fix for Filters button placement

* Increase top padding slightly more
2026-03-15 04:24:08 +01:00
malik1004xandGitHub 2de86c80a8 improve transaction list performance (#3082)
* improve transaction list performance

* fix "no transactions" placeholder positioning

* format
2026-03-14 14:31:50 +01:00
malik1004xandGitHub 9e88d4bf96 fix fiat amount switching after applying payment request (#3089) 2026-03-14 14:22:10 +01:00
tuxsudoandGitHub 3815fc30c6 New Settings (#3065)
* Update display_settings_page.dart

* Update settings_choices_cell.dart

* Update settings_theme_choice.dart

* Convert display_settings_page.dart to NewListSection

* Cleanup [skip ci]

* Minor

* Minor [skip ci]

* Add SizedBox to scroll view

* Upgrade receive_top_bar.dart with gradient and optional child content

* Adjust animations

* Add modal_page_wrapper.dart

* Add option to hide AppBar for BasePage [skip ci]

* New settings all final (#3067)

* Conflict

* ModalPageWrapper improved abstraction

* display_settings_page.dart minor update

* connection_sync_page.dart redesign

* Conflict

* manage_nodes_page.dart initial redesign

* other settings initial

* Conflict

* add optional subtitle to standard_list.dart

* add connection_sync_view_model.dart

* Add missing images

* Conflict

* Update list item widgets

* Conflict

* Conflict

* Conflict

* minor updates

* Conflict

* Fixes + move Mweb to privacy page

* Conflict

* Remove observer from modal_page_wrapper.dart

* Conflict

* Conflict

* Refactor settings_page.dart with suggestions

* Suggestion fixes

* Conflicts + fix About page

* Fix sync bar conflict

* Update Connections page title [skip ci]

* Trigger CI

* Fix Lightning and Payjoin log export

* Update MWEB node page

* Add FeatureFlag to AutomaticNodeSwitching

* Fix address text on privacy_page.dart

* Move WalletConnect from connection_sync_page.dart to settings_page.dart

* Add WalletConnect icon

* Fix settings icons

* Make text strings use S.of(context) and fix About string in settings_page.dart

* Display settings page fixes

* modal_page_wrapper.dart minor suggestions

* Missingimage

* Add spacing to list_item_selector_widget.dart

* Fix error on manage_nodes_page.dart
2026-03-14 14:15:42 +01:00
aa18ea3960 readd filters to new ui (#3062)
Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
2026-03-14 13:57:41 +01:00
malik1004xandGitHub af4459e76f optimize receive qr (#3083) 2026-03-14 13:45:05 +01:00
malik1004xandGitHub 98d8161afc add RepaintBoundary to send and swap (#3084) 2026-03-14 13:43:33 +01:00