device/trezor: add button pressed request
This commit is contained in:
@@ -249,6 +249,13 @@ struct Wallet2CallbackImpl : public tools::i_wallet2_callback
|
||||
}
|
||||
}
|
||||
|
||||
virtual void on_device_button_pressed()
|
||||
{
|
||||
if (m_listener) {
|
||||
m_listener->onDeviceButtonPressed();
|
||||
}
|
||||
}
|
||||
|
||||
virtual boost::optional<epee::wipeable_string> on_device_pin_request()
|
||||
{
|
||||
if (m_listener) {
|
||||
|
||||
@@ -385,6 +385,11 @@ struct WalletListener
|
||||
*/
|
||||
virtual void onDeviceButtonRequest(uint64_t code) { (void)code; }
|
||||
|
||||
/**
|
||||
* @brief called by device if the button was pressed
|
||||
*/
|
||||
virtual void onDeviceButtonPressed() { }
|
||||
|
||||
/**
|
||||
* @brief called by device when PIN is needed
|
||||
*/
|
||||
|
||||
@@ -978,6 +978,12 @@ void wallet_device_callback::on_button_request(uint64_t code)
|
||||
wallet->on_device_button_request(code);
|
||||
}
|
||||
|
||||
void wallet_device_callback::on_button_pressed()
|
||||
{
|
||||
if (wallet)
|
||||
wallet->on_device_button_pressed();
|
||||
}
|
||||
|
||||
boost::optional<epee::wipeable_string> wallet_device_callback::on_pin_request()
|
||||
{
|
||||
if (wallet)
|
||||
@@ -12855,6 +12861,12 @@ void wallet2::on_device_button_request(uint64_t code)
|
||||
m_callback->on_device_button_request(code);
|
||||
}
|
||||
//----------------------------------------------------------------------------------------------------
|
||||
void wallet2::on_device_button_pressed()
|
||||
{
|
||||
if (nullptr != m_callback)
|
||||
m_callback->on_device_button_pressed();
|
||||
}
|
||||
//----------------------------------------------------------------------------------------------------
|
||||
boost::optional<epee::wipeable_string> wallet2::on_device_pin_request()
|
||||
{
|
||||
if (nullptr != m_callback)
|
||||
|
||||
@@ -105,6 +105,7 @@ namespace tools
|
||||
virtual void on_lw_money_spent(uint64_t height, const crypto::hash &txid, uint64_t amount) {}
|
||||
// Device callbacks
|
||||
virtual void on_device_button_request(uint64_t code) {}
|
||||
virtual void on_device_button_pressed() {}
|
||||
virtual boost::optional<epee::wipeable_string> on_device_pin_request() { return boost::none; }
|
||||
virtual boost::optional<epee::wipeable_string> on_device_passphrase_request(bool on_device) { return boost::none; }
|
||||
virtual void on_device_progress(const hw::device_progress& event) {};
|
||||
@@ -118,6 +119,7 @@ namespace tools
|
||||
public:
|
||||
wallet_device_callback(wallet2 * wallet): wallet(wallet) {};
|
||||
void on_button_request(uint64_t code=0) override;
|
||||
void on_button_pressed() override;
|
||||
boost::optional<epee::wipeable_string> on_pin_request() override;
|
||||
boost::optional<epee::wipeable_string> on_passphrase_request(bool on_device) override;
|
||||
void on_progress(const hw::device_progress& event) override;
|
||||
@@ -1367,6 +1369,7 @@ namespace tools
|
||||
|
||||
wallet_device_callback * get_device_callback();
|
||||
void on_device_button_request(uint64_t code);
|
||||
void on_device_button_pressed();
|
||||
boost::optional<epee::wipeable_string> on_device_pin_request();
|
||||
boost::optional<epee::wipeable_string> on_device_passphrase_request(bool on_device);
|
||||
void on_device_progress(const hw::device_progress& event);
|
||||
|
||||
Reference in New Issue
Block a user