Commit Graph

8 Commits

Author SHA1 Message Date
Sale Djenic 36ca4cd8f9 fix(@desktop/wallet): removed options for creating a derivation path that's not a keycard compatible if selected origin is migrated to a keycard
If selected origin is an origin migrate to a keycard the following options are disabled:
- drop down menu (where user is able to select one of predefined paths) in custom derivation section
- reset button
2023-05-26 06:54:50 +02:00
Sale Djenic 38ce51e4bb chore(@desktop/wallet): changes caused by accounts improvements on the `status-go` side
Closes: #10592
2023-05-26 06:54:50 +02:00
Sale Djenic 3588e2a44a fix(@desktop/wallet): derivation path edit control breaks in custom mode
Closes: #10479
2023-05-03 17:39:17 +02:00
Sale Djenic 686631ffcf fix(@desktop/wallet): setting derivation path for a new account with keycard can get in infinite loop
Closes: #10517
2023-05-03 14:17:34 +02:00
Sale Djenic 06ba89661b chore(@desktop/wallet): object names added to wallet account related qml components 2023-04-13 19:51:10 +02:00
Stefan 34c04f0af6 fix(Wallet) fix DerivationPathInput allow custom partial path
The non-standard derivation path was not allowed to be entered so paths
with custom indexes were not allowed.
Also implemented warning for non-ethereum coin
Added more tests for the new specifications
Other minor improvements and fixes

Closes #10135
2023-04-05 18:48:15 +04:00
Stefan 81c3463816 feat(wallet): implement DerivationPathInput control
The enforcing of the derivation path editing rules is done in a structured
way by handling all the changes on the array of `Element` stored in
d.elements and then recomposing the HTML string to be displayed after
every change.

Main limitation is the workaround in `onTextChanged` that regenerates
the text in order to dismiss foreign characters introduced by pasting
which I couldn't find a way to disable without disabling also the ability
to copy content to clipboard.

Highlights:
- Implement DerivationPathInput control that intercepts the modifiable
keyboard events in order to edit the visible TextEdit.text while
respecting the requirements of the derivation path editing
- Implement a JS Controller that handles the logic of the
  decomposing and recomposing the derivation path string
- Add anew StatusQ with the TextEdit basic look and feel to be used
  in DerivationPathInput control without duplicating the style
- Allow passing modifiable events that are not generating characters in
  order to allow copy to clipboard
- Disable add account when control is in error state
- Limit to maximum 5 elements in the derivation path

Testing:
- Integrate the control with StoryBook for a quick preview of the
  control
- Add unit tests for the Controller basic functionality and regression
  for the main control Item
- Removed forcing x64 architecture on apple arm64 hardware from the
  storybook build configuration

Note: initially the implementation was suppose to be simple parse the
derivation path string edit elements and format it. However, I could not
find a quick way fix the circular dependency issue between editing the
text and reformatting it. The solution was to use a one way from the
structured data to the formatted string which complicates the
implementation logic.

Closes: #9890
2023-03-31 18:14:50 +04:00
Sale Djenic 223e4f1bc2 feat(@desktop/wallet): new "Add Account" modal added
Closes: #9733
2023-03-28 18:09:39 +02:00