core icon indicating copy to clipboard operation
core copied to clipboard

Ledger integration

Open gantunesr opened this issue 3 years ago • 1 comments

Ledger PR

Ledger integration

This PR expands the responsibility of the KeyringController to support the LedgerKeyring from @ledgerhq/metamask-keyring.

Description

Itemize the changes you have made into the categories below

  • BREAKING:

    • NA
  • FIXED:

    • NA
  • CHANGED:

    • KeyringController.signTypedMessage
      • Added support to check if the account is a ledger device and if so, propagate the signing request to the device.
  • REMOVED:

    • NA
  • ADDED:

    • KeyringController.getLedgerKeyring
      • Method to retrieve the keyring for ledger.
    • KeyringController.connectLedgerHardware
      • Method to connect to a device using a Transport object.
    • KeyringController.unlockLedgerDefaultAccount
      • Method to retrieve the first account from the Ledger device.
    • KeyringController.openEthereumApp
      • Method to open the Ethereum app on the Ledger device
    • KeyringController.closeRunningApp
      • Method to close the current app on the Ledger device.
    • KeyringController.forgetLedger
      • Method to reset the state of the keyring.
  • DEPRECATED:

    • NA
  • SECURITY:

    • NA

Checklist

  • [x] Tests are included if applicable
  • [x] Any added code is fully documented

Issue

Progresses https://github.com/MetaMask/MetaMask-planning/issues/85

References

gantunesr avatar Jun 27 '22 14:06 gantunesr

Thanks for the review @mcmire, I have added the explicit unit test to the methods you pointed out and improve the typing.

gantunesr avatar Sep 21 '22 18:09 gantunesr

Hey @mcmire, I'll close this PR and open it again when the Ledger integration resume

gantunesr avatar Dec 01 '22 13:12 gantunesr

This integration is currently stalled. We'll get back to it during Q12023

gantunesr avatar Dec 08 '22 16:12 gantunesr