commonise plugins

This commit is contained in:
Clement Bouvet
2022-10-13 12:59:57 +02:00
parent a78ca5bce5
commit 2dd757786d
5 changed files with 53 additions and 30 deletions

40
src_common/plugins.c Normal file
View File

@@ -0,0 +1,40 @@
#include "eth_plugin_handler.h"
#include "ui_callbacks.h"
void plugin_ui_get_id(void) {
ethQueryContractID_t pluginQueryContractID;
eth_plugin_prepare_query_contract_ID(&pluginQueryContractID,
strings.common.fullAddress,
sizeof(strings.common.fullAddress),
strings.common.fullAmount,
sizeof(strings.common.fullAmount));
// Query the original contract for ID if it's not an internal alias
if (!eth_plugin_call(ETH_PLUGIN_QUERY_CONTRACT_ID, (void *) &pluginQueryContractID)) {
PRINTF("Plugin query contract ID call failed\n");
io_seproxyhal_touch_tx_cancel(NULL);
}
}
void plugin_ui_get_item_internal(char *title_buffer,
size_t title_buffer_size,
char *msg_buffer,
size_t msg_buffer_size) {
ethQueryContractUI_t pluginQueryContractUI;
eth_plugin_prepare_query_contract_UI(&pluginQueryContractUI,
dataContext.tokenContext.pluginUiCurrentItem,
title_buffer,
title_buffer_size,
msg_buffer,
msg_buffer_size);
if (!eth_plugin_call(ETH_PLUGIN_QUERY_CONTRACT_UI, (void *) &pluginQueryContractUI)) {
PRINTF("Plugin query contract UI call failed\n");
io_seproxyhal_touch_tx_cancel(NULL);
}
}
void plugin_ui_get_item(void) {
plugin_ui_get_item_internal(strings.common.fullAddress,
sizeof(strings.common.fullAddress),
strings.common.fullAmount,
sizeof(strings.common.fullAmount));
}

11
src_common/plugins.h Normal file
View File

@@ -0,0 +1,11 @@
#ifndef _PLUGIN_H_
#define _PLUGIN_H_
void plugin_ui_get_id();
void plugin_ui_get_item();
void plugin_ui_get_item_internal(uint8_t *title_buffer,
size_t title_buffer_size,
uint8_t *msg_buffer,
size_t msg_buffer_size);
#endif // _PLUGIN_H_