Commit Graph

390 Commits

Author SHA1 Message Date
Dan Finlay 44545e0f47 Add metamask route to infura urls
Fixes #597

Allows metamask-specific RPC metrics.
2016-08-31 11:10:25 -07:00
Dan Finlay fd5dad136f Remove old notification cleanup code 2016-08-29 17:33:56 -07:00
Dan Finlay 742a0e0dfe Make popup a type Edge supports 2016-08-29 17:33:35 -07:00
Dan Finlay 1b617402ec Add extra edge compatibility 2016-08-29 17:33:18 -07:00
Dan Finlay b36b760338 Fix console.error references
Microsoft edge does not support console.error.bind, nor is that call necessary here.
2016-08-29 17:32:39 -07:00
Dan Finlay 6838027c65 Remove bind calls from console errors 2016-08-29 16:49:58 -07:00
Frankie 547894ed39 Merge branch 'master' into i#563forgotPassword 2016-08-25 16:06:54 -07:00
Frankie 11c6c63d76 Merge branch 'master' into i#563forgotPassword 2016-08-25 14:17:29 -07:00
Frankie 483a7fee0a Add a back button on lock screen to go back to init menu 2016-08-25 14:13:32 -07:00
Dan Finlay 793ad6b8d8 Merge branch 'master' into PopupNotifications 2016-08-24 16:59:22 -07:00
Dan Finlay eee08457e5 Merge branch 'master' into i484PersistPendingSignatures 2016-08-24 16:15:43 -07:00
Dan Finlay 3febbdae57 Linted 2016-08-24 16:02:22 -07:00
Dan Finlay abb5b2013d Fix bug where unconfirmed message sig is lost when locked.
Fixes #484

Adds unsigned messages to the in-memory message list before showing the unlock message.
2016-08-24 15:58:08 -07:00
Kevin Serrano c82a494b4b Implement usage of nock. 2016-08-24 13:58:50 -07:00
Kevin Serrano d3d634d09c Added mock option to function. 2016-08-24 13:28:06 -07:00
Dan Finlay 671ca33abb Close notification on opening main UI 2016-08-23 15:44:50 -07:00
Dan Finlay b3887ffd0a Skip popup dismissal in tests 2016-08-23 11:48:46 -07:00
Dan Finlay 983f3938da Linted 2016-08-23 11:42:54 -07:00
Dan Finlay 4fb49dfb4b Close popup even if last tx is dismissed from main UI 2016-08-23 11:40:08 -07:00
Dan Finlay e5ca83d2bf Emit updates to all listeners on pending tx updates
Previously the metamask controller only supported a single UI event listener, which wasn't useful for having a separate notification UI open at the same time.

Also reduced the notification's complexity down to a single method, which is heavily re-used.

Still has an outstanding bug where if the plugin ui dismisses the last tx, it does not close the notification popup.
2016-08-23 11:15:56 -07:00
Dan Finlay 49ab51d825 Merge branch 'master' into PopupNotifications 2016-08-22 20:06:59 -07:00
kumavis c97866e367 Merge branch 'master' into kumavis-patch-1 2016-08-22 19:23:01 -07:00
kumavis 8b9999b71e inpage - cleanContextForImports fix
set to undefined instead of deleting
updates #447
2016-08-22 19:22:12 -07:00
kumavis 5c9ca21ba3 Merge branch 'master' into i390-TransactionLimit 2016-08-22 19:19:53 -07:00
kumavis b8077983d6 inpage provider - reassign incomming ids 2016-08-22 18:59:15 -07:00
Dan Finlay 361e26fad7 Limit to one popup, re-focus on additional notifications. 2016-08-22 17:18:14 -07:00
Dan Finlay 6e1000f361 Merge branch 'master' into PopupNotifications 2016-08-22 15:03:36 -07:00
Dan Finlay 3d451ddf3e Merge branch 'master' into i390-TransactionLimit 2016-08-22 11:59:08 -07:00
Dan Finlay 7389f9d0a0 Enforce tx history limit 2016-08-18 15:40:56 -07:00
Frankie 3525dc0801 Create a ShapeShift tx in tx History 2016-08-18 15:20:26 -07:00
Frankie efa61f2cf8 Merge branch 'master' into shapeshiftTx 2016-08-18 11:06:32 -07:00
Frankie 752d16f6c0 WIP: ShapeShift tx 2016-08-18 11:04:28 -07:00
Dan Finlay dfaac78e39 Linted 2016-08-16 17:50:51 -07:00
Dan Finlay a167bbc5a0 MVP Popup Notifications Working
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.
2016-08-16 17:32:54 -07:00
Dan Finlay 030bdec27a Unify notification and popup ui files 2016-08-16 16:46:44 -07:00
Dan Finlay 4ba90969ee Merge branch 'master' into PopupNotifications 2016-08-16 15:41:11 -07:00
Dan Finlay 5479509618 Set up MVP for popup-based notifications. 2016-08-16 15:39:40 -07:00
Kevin Serrano 666f3cd66c Added compliance for tests and properly accounts for N/A conversions. 2016-08-16 15:11:40 -07:00
Kevin Serrano d43ac808ff Fix uncalled fn. 2016-08-16 14:28:32 -07:00
Kevin Serrano 6041ba1ed2 Add fallback to API failure. 2016-08-16 14:07:06 -07:00
Kevin Serrano 58e3042a3b Remove logging. Clean up duplicate entries in currency list. 2016-08-16 13:21:16 -07:00
Kevin Serrano 6895d330ff Merge master. 2016-08-15 10:50:53 -07:00
Dan Finlay e826eb932c Remove ethereum classic provider
Fixes #542
2016-08-14 18:41:05 -07:00
kumavis 0b660f4ac8 deps - extracted ensnare to module 2016-08-12 13:25:38 -07:00
Kevin Serrano b1f68ec9cd Add global var for background. 2016-08-11 19:44:59 -07:00
Kevin Serrano 1e54a1b5e8 Merge github.com:MetaMask/metamask-plugin into logging-fix 2016-08-11 19:05:22 -07:00
Kevin Serrano 2b0c6953e2 Create global variable that changes ui logging. 2016-08-11 18:58:23 -07:00
Kevin Serrano b8856d765d Setting defaults to production. 2016-08-11 15:42:21 -07:00
kumavis c0f7c49105 inpage-prov - sync error - fix link 2016-08-11 14:35:55 -07:00
Kevin Serrano 243d83dd33 Separate developmentMode conditional to only wrap log. 2016-08-11 14:24:35 -07:00
Kevin Serrano ad468c1880 Merge branch 'master' into logging-fix 2016-08-11 14:07:49 -07:00
kumavis d7dffedf48 deps - local-message-stream extracted as module post-message-stream 2016-08-11 14:04:20 -07:00
Kevin Serrano 804e8df87f Lint 2016-08-11 14:03:51 -07:00
Kevin Serrano 9904b4ef5a Add ability to hide logging messages in production. 2016-08-11 13:59:14 -07:00
kumavis 53b1334d37 clean -formatting 2016-08-11 13:31:00 -07:00
kumavis 3417c421c8 inpage-provider - remove createSyncProvider, just fail 2016-08-11 13:23:49 -07:00
Kevin Serrano abfc5632ef Fix ether warning checkbox. 2016-08-10 10:54:55 -07:00
Kevin Serrano cb0c1f25ba Did not previously call functions before! 2016-08-09 16:49:15 -07:00
Kevin Serrano 637d3978b7 Fix default value. Add loading indication for async. 2016-08-09 16:33:58 -07:00
Kevin Serrano 260de6532c Get fiat numbers rendering on tooltip. Need to find way to create line breaks. 2016-08-05 12:18:44 -07:00
Kevin Serrano 479abadaa7 Merge branch 'master' into usd-conversion 2016-08-04 13:26:03 -07:00
Dan Finlay c9c8fbf2ec Fix account selection updating 2016-07-29 13:27:39 -07:00
Dan Finlay 6151339840 Merge branch 'master' into AddEthClassic 2016-07-28 15:47:22 -07:00
Dan Finlay 5ceed48db9 Fix broken reference to host store.didUpdate
I'd returned this line because it seemed to fix Firefox compatibility, now it seems like that wasn't the case.  Removing it again.
2016-07-28 11:53:33 -07:00
Dan Finlay 9b43ec2278 Add eth classic to provider menu 2016-07-28 10:53:51 -07:00
Dan Finlay 2368c2993d Add platform specific builds and zip tasks (#486)
* Add platform specific folders to dist folder

* Remove gulp hacks

* Add platform specific bundling

dev and dist tasks now build into platform-specific folders within the `dist` folder.

Added tasks `gulp zip` and `gulp dist`.

`zip` builds the platform-specific folders into platform-specific bundles within the `dist` folder.

`dist` builds and then zips all at once.

* Fix chrome bundle zipping

* Fix broken reference in eth warning

* Fix but where web3.eth.accounts are not available in firefox.

* Bump changelog
2016-07-26 15:15:40 -07:00
Dan Finlay b43b9f13e9 Fix integration tests 2016-07-25 17:47:14 -07:00
Dan Finlay be74589f49 Fix extension tests 2016-07-25 17:33:22 -07:00
Dan Finlay 913a9e85bd Inject inpage script synchronously
Huge thanks to the Firefox team, for their help on the issue of our long-standing inpage script race condition.

http://stackoverflow.com/questions/38577656/how-can-i-make-a-firefox-add-on-contentscript-inject-and-run-a-script-before-oth

The problem is that we were injecting a `script` tag and assigning its `src` attribute, which triggers an asynchronous fetch request, and does not guarantee execution order! (That was news to me!)

Instead, I'm now assigning the `script` tag a `textContent` value of the script to inject, and it seems to fix the problem!

There is also a Firefox-only API that could solve this whole problem in an even more elegant way, so we might want to expose a code path for that solution later on:

https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XPCOM/Language_Bindings/Components.utils.exportFunction

Allows you to expose an object from one scope to another. There was even talk of creating a polyfill for it that does virtually what we do, message passing between contexts.
2016-07-25 16:38:07 -07:00
Dan Finlay b07bbc14e1 Clean up extension polyfill abstraction 2016-07-25 13:46:33 -07:00
Dan Finlay f3ea891e72 Allow page injection to look for cross-browser APIs appropriately 2016-07-25 13:28:38 -07:00
Kevin Serrano 86832e6feb Fix merge conflicts. Fix typos. Ensure currency immediately updated on load. 2016-07-22 11:15:47 -07:00
Kevin Serrano 22528002e1 Linting! 2016-07-22 10:15:39 -07:00
Kevin Serrano a612fcee64 Change function names. Add interval polling for api. Refactor functions. 2016-07-21 16:44:50 -07:00
Kevin Serrano 716e65424d Add date access throughout the data flow. 2016-07-21 14:08:26 -07:00
Frankie fcd523abe4 Buy button (#474)
* WIP: Buy button link

* Add buy eth and the buy eth warning message

* Add css

* Move the opening of coinbase page to background
 and send to faucet if on test net

* Create a Warning about storeing eth

* Finish Buy button and Eth store warning screen

* Add to CHANGELOG

* fix frankies deletion and change chrome to extension
2016-07-21 13:41:10 -07:00
Kevin Serrano 66941f0808 Provide date access. 2016-07-21 13:33:22 -07:00
Kevin Serrano 7b85802a0f Merge branch 'master' into usd-conversion 2016-07-21 11:30:57 -07:00
Dan Finlay 6658bea8d4 Implement some cross-browser practices (#473)
* Add mozilla plugin key to manifest

* Move all chrome references into platform-checking module

Addresses #453

* Add chrome global back to linter blacklist

* Add tests
2016-07-21 10:45:32 -07:00
Kevin Serrano 4a9d5b1c25 Add data field to pass up parameters up to reducer. 2016-07-21 10:15:34 -07:00
Kevin Serrano 491b9cddc5 Add fiat actions to metamask controllere and actions. 2016-07-21 09:30:58 -07:00
Kevin Serrano aac810b1eb Progress on config manager. Plus tests. 2016-07-21 08:47:03 -07:00
Dan Finlay cdd7e40545 Make injected web3 fail hard on sync methods (#471)
Make injected web3 fail hard on sync methods
2016-07-20 14:54:07 -07:00
kumavis b2afa16925 typo fix 2016-07-18 18:08:29 -07:00
kumavis 9101812552 inpage - add try/catch to cleanContextForImports 2016-07-18 17:57:23 -07:00
kumavis 97e38b4983 new tx - calculate estimatedGas and show thing in tx-details (#441)
* new tx - calculate estimatedGas and show thing in tx-details

* Bump changelog
2016-07-13 23:39:44 -07:00
Kevin Serrano ecd0a3ec1e Add one wallet to new accounts instead of three. 2016-07-12 12:06:18 -07:00
Dan Finlay e21a48da83 Linted 2016-07-11 20:53:26 -07:00
Dan Finlay c4a15340e0 Add notification global for development
The background process now has a global `METAMASK_NOTIFIER` object that allows easy mocking of notification data.
2016-07-11 15:45:57 -07:00
Dan Finlay 9609593f13 Fix bug where rejected tx would not call back 2016-07-07 11:00:19 -07:00
kumavis 786a283dd2 contentscript - remove timeout before stream setup 2016-07-06 21:45:15 -07:00
kumavis 5c4c902c94 appease the linting gods 2016-07-06 20:32:36 -07:00
kumavis 7aa120e630 web3 injection - use web3 dist for faster injection 2016-07-06 20:20:40 -07:00
Dan Finlay c0b0c9c028 Simplify error log 2016-07-05 09:51:33 -07:00
Dan Finlay 1d8d7d833d Improve metamask-controller error logging
Fixes #384
2016-07-05 09:06:33 -07:00
kumavis d4e400e5e5 Merge pull request #378 from MetaMask/UiDev
Ui dev
2016-06-30 21:20:40 -07:00
Dan Finlay e55938ed15 First simple version of ui mocker 2016-06-30 18:22:16 -07:00
kumavis cc970ccd0d fix typo 2016-06-30 15:31:36 -07:00
Dan Finlay 78f2794d39 Remove useless and buggy clearWallet function 2016-06-30 11:34:34 -07:00
Dan Finlay 6fef01c8a1 Emphasizing how weird this bug is by removing all behavior from the method. 2016-06-30 11:31:27 -07:00
Dan Finlay f49b6ca1dc Replicated really strange bug with test 2016-06-30 11:30:46 -07:00
Kevin Serrano 3ae479f5ac Unify wording for transaction options (#369)
* Unify wording for transaction options.

* Modify changelog.

* Fix wording and spacing.
2016-06-29 15:44:37 -07:00
kumavis 6238af6330 fix bad merge 2016-06-28 13:21:25 -07:00
kumavis 4777f82ae0 Merge branch 'master' into notif2 2016-06-28 13:13:06 -07:00
kumavis 57aca116ed Merge branch 'master' into FixSomeFormatting
# Conflicts:
#	CHANGELOG.md
#	app/scripts/lib/notifications.js
2016-06-28 13:11:50 -07:00
Frankie 16566ee7db Move clearNotifications to popup.js 2016-06-28 12:57:06 -07:00
kumavis b1d5a332c0 fix typo 2016-06-28 12:41:37 -07:00
kumavis c82d7585b8 background - prepare state for notifcations 2016-06-28 12:36:53 -07:00
Frankie 4f4c5048bf fix #341 close notifications when oppening pop up 2016-06-28 11:57:33 -07:00
kumavis baba719468 notif - change size for better readability 2016-06-27 16:28:07 -07:00
kumavis 36a183db94 Merge pull request #326 from MetaMask/conf-tx-refactor
Tx/Msg Conf page + notifcation refactor
2016-06-24 17:29:38 -07:00
kumavis 770528d538 clean - appease the linting machine 2016-06-24 17:27:42 -07:00
kumavis d7d440b2c2 svg notif now work for msg signatures 2016-06-24 17:22:27 -07:00
Dan Finlay 60fec24c00 Debugged by using a real dapp 2016-06-24 17:00:35 -07:00
Dan Finlay d3e0e7fe45 Manually debugged refactor 2016-06-24 16:46:18 -07:00
Dan Finlay 122018a96a Fixed tests 2016-06-24 16:13:27 -07:00
Dan Finlay fa7e466559 Rename background-controller metamask-controller 2016-06-24 15:55:11 -07:00
Dan Finlay b2b3f4b26b Improve refactor
Replace config-manager-singleton with one that is instantiated within the `background-controller`, and takes its persistence callbacks from its instantiated options.

Replaced class getters with more familiar get___() functions.
2016-06-24 15:52:56 -07:00
Dan Finlay 9ed3c676ec Refactored background.js controller apart from chrome + transport
Still needs linting fixes, probably bugs, this commit should be used as a draft of what a separation of these concerns might look like.
2016-06-24 13:05:21 -07:00
kumavis eb1b9d027f breakout pending-tx-details 2016-06-24 12:48:52 -07:00
kumavis fce748c118 contentscript - skip web3 injection if domain appears to be a pdf 2016-06-24 11:21:22 -07:00
kumavis 2808fd175b notif - remove dummy dev notif 2016-06-23 17:33:43 -07:00
kumavis 2468949cb5 some legit linting fixes 2016-06-23 16:53:45 -07:00
kumavis 3cf7bf725f svg notif - use actual txParams 2016-06-23 16:42:40 -07:00
kumavis cc7dbace38 tx-conf add non-interactive mode for notification 2016-06-23 15:25:33 -07:00
kumavis 2495c6ea54 svg notifications - remove unneeded deps and clean code 2016-06-23 15:13:24 -07:00
kumavis 122576a790 initial svg notifications 2016-06-22 19:28:11 -07:00
Dan Finlay ff7b980143 Fix eth sign with dennis' test input 2016-06-21 17:13:02 -07:00
Dan Finlay 3c01969fe3 Merge branch 'master' of github.com:MetaMask/metamask-plugin into AutoLint 2016-06-21 14:12:48 -07:00
Dan Finlay 8fde8a8921 Manually linted 2016-06-21 13:56:04 -07:00
Dan Finlay ab15b4c825 Merge branch 'master' of github.com:MetaMask/metamask-plugin into AutoLint 2016-06-21 13:19:44 -07:00
Dan Finlay a08c3bc01b Auto linted 2016-06-21 13:18:32 -07:00
kumavis 45d16d975b background - batch rpc fix for origin domain 2016-06-21 13:14:21 -07:00
Dan Finlay 7b2f061fbb Some manual fixes 2016-06-21 12:51:04 -07:00
kumavis 30da848611 id-mgmt - add missing deps 2016-06-21 00:39:27 -07:00
Dan Finlay 61459a6b51 Merge pull request #294 from MetaMask/SignFullDataNotHash
Sign full data not hash
2016-06-20 15:08:27 -07:00
Dan Finlay 7ecc028c5d Merge pull request #296 from MetaMask/i252
idStore - add DELEGATE_CALL detection
2016-06-17 10:48:44 -07:00
kumavis c1e9444200 idStore - add DELEGATE_CALL detection 2016-06-16 19:51:34 -07:00
Dan Finlay 451be3b10e Merge branch 'master' into SignFullDataNotHash 2016-06-16 17:34:44 -07:00
Dan Finlay e8ef8f3d2d Add confirmation status to metamask state branch 2016-06-16 16:41:33 -07:00
Dan Finlay 5d90167bcc Expose disclaimer consent to dnode API 2016-06-16 15:58:11 -07:00
Dan Finlay 0f564aa64d Add confirmation persisting to localStorage 2016-06-16 15:04:50 -07:00
Dan Finlay 408addb1b2 Fixed signing of hashes
Signing now always takes a 64 digit hex string, and returns a message signature which appropriately pads r, s, and v with zeroes.

Need to verify with Denis that this is the behavior he requires.
2016-06-16 11:46:35 -07:00
Dan Finlay ae3993b6d7 Factor idManagement into its own module 2016-06-15 14:58:06 -07:00
Dan Finlay 37e552e95d Sign binary data not hash on eth_sign 2016-06-15 10:48:36 -07:00
Dan Finlay 7430560f7f Fix pad with zeroes usage 2016-06-14 15:41:07 -07:00
Dan Finlay 1fe383f7fb Fix signature concatenation
Fixes #280

Or at least, it should. Is this what you were requesting, @denisgranha?
2016-06-14 15:35:37 -07:00
Dan Finlay b2b4b4dd25 Merge branch 'master' into display_network 2016-06-03 15:21:24 -07:00
Dan Finlay d49ef1a2e5 Blockchain status now updates on availability change 2016-06-03 15:18:20 -07:00
Dan Finlay 2422c78ce2 Add network loading indication 2016-06-03 13:58:09 -07:00