| 12345678910111213141516171819202122232425262728293031323334 |
- #include "text_input.h"
- #include "cligui_main_i.h"
- void text_input_result_callback(void* ctx) {
- CliguiApp* app = ctx;
- char* data = app->text_input_store;
- size_t len = strlen(data);
- for(size_t i = 0; i < len; i++) {
- if(data[i] >= 0x41 && data[i] <= 0x5A) {
- // Char is uppercase
- data[i] += 0x20;
- }
- }
- furi_stream_buffer_send(app->data->streams.app_tx, data, len, FuriWaitForever);
- furi_stream_buffer_send(app->data->streams.app_tx, "\r\n", 2, FuriWaitForever);
- data[0] = 0;
- view_dispatcher_switch_to_view(app->view_dispatcher, ViewConsoleOutput);
- app->data->state = ViewConsoleOutput;
- }
- void text_input_input_handler(CliguiApp* app, InputEvent* event) {
- if(event->type == InputTypeShort && event->key == InputKeyBack) {
- // view_dispatcher_switch_to_view(app->view_dispatcher, ViewConsoleOutput);
- // app->data->state = ViewConsoleOutput;
- size_t len = strlen(app->text_input_store);
- app->text_input_store[len] = ' ';
- app->text_input_store[len + 1] = 0;
- }
- if(event->type == InputTypeLong &&
- (event->key == InputKeyLeft || event->key == InputKeyRight)) {
- view_dispatcher_switch_to_view(app->view_dispatcher, ViewConsoleOutput);
- app->data->state = ViewConsoleOutput;
- }
- }
|