Fixes#1439.
When reorganizing fiat-value component to not use global state, had missed its necessary `currentCurrency` parameter.
This now passes it in wherever it's used.
- Now striping hex prefixed gas values, which may have been causing mis-estimation.
- Unified calculation logic to be entirely functional.
- Greatly simplified how the pending-tx form keeps updated form state.
Still needs a commit from @kumavis to ensure the background passes in a txMeta.txParams.gasPrice value.
The state object had been changed, but our mock states for tx approval were using the old keys.
Rather than try to muck about and figure out each and every change, I've re-generated a UI dev state for tx approval, which should help @zanibas on his current project.
We can continue adding new dev states as needed from here. If anyone catches a state that doesn't render correctly, it's worth checking if a new snapshot doesn't solve things.
Debugged by adding new debugging loggers, and I've left them in place for easier future debugging.
Also added a new state to try to make UI dev mode work again, but it has other issues, like #1128, that need to be addressed before UI dev mode can be used again.
Provider egine bump
Remove presence of message manger in keyring controller
Change the status wording fom conf to approved
make Message manager a class
fix messages not being apart of the badge
re write message manger to better reflect controller pattern
I'm unsure which will be more performant: A notification using a trimmed down version of the UI, or using them both, letting the browser cache them both.
In any case, here I've modified the normal UI to recognize when it's a popup, and change the UX accordingly in a few ways:
- Hide the menu bar
- Hide the back button from the notifications view.
- When confirming the last tx, close the window.
Calls to `eth.sign` are now transiently persisted in memory, and displayed in a chronological stack with pending transactions (which are still persisted to disk).
This allows the user a method to sign/cancel transactions even if they miss the Chrome notification.
Improved a lot of the view routing, to avoid cases where routes would show an empty account view, or transition to the accounts list when it shouldn't.
Broke the transaction approval view into a couple components so messages and transactions could have their own templates.