Skip to content
Open
Show file tree
Hide file tree
Changes from 65 commits
Commits
Show all changes
80 commits
Select commit Hold shift + click to select a range
99f185b
add input policy, fix map key navigation
mverch67 May 13, 2026
86ffa09
add comments for policy classes and methods
mverch67 May 13, 2026
c000b42
update policy documentation
mverch67 May 13, 2026
cbc305e
rephrase
mverch67 May 13, 2026
9a89251
added command binding and generic view-agnostic dispatcher
mverch67 May 13, 2026
bc8517b
add command dispatcher
mverch67 May 13, 2026
0bb8f5b
update design doc
mverch67 May 13, 2026
2034c03
fix keyboard scanner, add STC8 keyboard (for tests)
mverch67 May 18, 2026
2ef399a
trunk fmt
mverch67 May 18, 2026
0480c6c
fix compile error on native
mverch67 May 18, 2026
4c4b2b5
add quick chat command
mverch67 May 21, 2026
83082c8
add command dispatcher policy
mverch67 May 21, 2026
559fd66
add test case for input policy
mverch67 May 21, 2026
9c4474f
add quick command key
mverch67 May 21, 2026
04e9dc6
remove redundant code
mverch67 May 21, 2026
0d2372f
fix macro for STC8 keyboard
mverch67 May 21, 2026
f9a3a66
use input policy for STC8 keyboard
mverch67 May 21, 2026
3910385
command key fix callbacks
mverch67 May 21, 2026
1de7e5f
add check for wifi connection when downloading map tiles
mverch67 May 21, 2026
f9dcbfe
add webDAV server
mverch67 May 26, 2026
9d1480c
add webDAV server
mverch67 May 26, 2026
4a7a7f4
fix warnings
mverch67 May 26, 2026
856a5e8
add event bubbles + webDAV icon
mverch67 May 26, 2026
82b995d
add TM9 keyboard input
mverch67 Jun 4, 2026
c5d2c69
add TM9 keyboard driver
mverch67 Jun 4, 2026
729d087
re-order command key bindings
mverch67 Jun 4, 2026
9fc64fa
update model with event bubble and fixed key focus
mverch67 Jun 4, 2026
50a5904
use gesture limit API
mverch67 Jun 4, 2026
9b9334f
webdav: replace c++ threads by FreeRTOS with prio
mverch67 Jun 4, 2026
b5dbfe1
add webdav server, mainButton group navigation
mverch67 Jun 4, 2026
21fcfbf
allow optional webdav server
mverch67 Jun 5, 2026
e2722b6
fix M9 scanner
mverch67 Jun 5, 2026
4070b0d
remove webdav as it is optional
mverch67 Jun 5, 2026
ad464ea
Merge branch 'master' into input-policy
mverch67 Jun 5, 2026
12c7953
skip scanning well known keyboards
mverch67 Jun 11, 2026
f180895
fix model for key navigation
mverch67 Jun 11, 2026
a62f8fb
add focus debug
mverch67 Jun 11, 2026
bbad8c9
fix key navigation issues
mverch67 Jun 11, 2026
670719c
fix boot screen (bluetooth)
mverch67 Jun 12, 2026
14f9458
trunk fmt
mverch67 Jun 12, 2026
2cf767a
Merge branch 'master' into input-policy
mverch67 Jun 12, 2026
5cda049
fix blank screen button and message navigation
mverch67 Jun 13, 2026
46da994
improved focused node style
mverch67 Jun 13, 2026
3868748
quick chat button implementation
mverch67 Jun 17, 2026
d5c011f
fix up/down key stuck on text edit; jump to nodes focus
mverch67 Jun 18, 2026
608e280
Merge branch 'master' into input-policy
mverch67 Jun 18, 2026
64fa2f7
fix map options (osd panel)
mverch67 Jun 19, 2026
4362e93
fix gpsLock button (CHECKED when press gps location)
mverch67 Jun 19, 2026
030df19
fix warning
mverch67 Jun 19, 2026
f142d20
fix test case
mverch67 Jun 19, 2026
807834d
Merge branch 'master' into input-policy
mverch67 Jun 19, 2026
640e337
Merge branch 'master' into input-policy
mverch67 Jun 19, 2026
8bda07d
trunk fmt
mverch67 Jun 19, 2026
9a89158
fix double focus after screen blank
mverch67 Jul 1, 2026
f593f69
align policy doc with implementation
mverch67 Jul 2, 2026
f2c72bf
fix 50Hz comment
mverch67 Jul 2, 2026
bdb8663
fix UICommand count
mverch67 Jul 2, 2026
14d5fca
fix STC8 event propagation
mverch67 Jul 2, 2026
9591450
fix picomputer input logic
mverch67 Jul 2, 2026
6c9cee2
removed unused function; add I2C guard
mverch67 Jul 2, 2026
85f627a
use const char*
mverch67 Jul 2, 2026
dfcb7a5
assign group when empty
mverch67 Jul 2, 2026
40661ad
fix white background when node pressed
mverch67 Jul 2, 2026
a99f985
add #pragma
mverch67 Jul 2, 2026
b354140
fix logic for mode/create flags
mverch67 Jul 2, 2026
7abce49
fix webDAV pointer
mverch67 Jul 2, 2026
6cbed39
fix deadlock
mverch67 Jul 2, 2026
1bf2e2a
fix CardKB wire
mverch67 Jul 6, 2026
67f14f8
add USE_ESP_LOG support
mverch67 Jul 6, 2026
1d67211
workaround: allow SDCARD SPI /SD instance shring
mverch67 Jul 6, 2026
34dca9e
fix WebDAVServer thread synchronisation and client availability.
mverch67 Jul 6, 2026
fabccc2
SDcard SPI shared and webDAV ui strings
mverch67 Jul 6, 2026
5a2ee15
define constants
mverch67 Jul 6, 2026
dca1924
add UI FTP server
mverch67 Jul 6, 2026
3ab6a54
fix remark
mverch67 Jul 6, 2026
4993d36
remove empty #elif branch
mverch67 Jul 6, 2026
988a203
SDCARD_INIT_SPI
mverch67 Jul 14, 2026
d08ae13
Merge branch 'master' into input-policy
mverch67 Jul 14, 2026
c0570a5
fix manual merge error
mverch67 Jul 14, 2026
015c556
fix 100% when charging
mverch67 Jul 14, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
429 changes: 429 additions & 0 deletions docs/input-policy-strategy-design.md

Large diffs are not rendered by default.

109 changes: 109 additions & 0 deletions generated/ui_320x240/.eez-project-build
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
{
"files": [
"actions.h",
"fonts.h",
"images.c",
"images.h",
"screens.c",
"screens.h",
"styles.c",
"styles.h",
"ui.c",
"ui.h",
"ui_font_montserrat_12.c",
"ui_font_montserrat_14.c",
"ui_font_montserrat_16.c",
"ui_font_montserrat_20.c",
"ui_image_battery_bolt_image.c",
"ui_image_battery_empty_image.c",
"ui_image_battery_empty_warn_image.c",
"ui_image_battery_full_image.c",
"ui_image_battery_low_image.c",
"ui_image_battery_mid_image.c",
"ui_image_battery_plug_image.c",
"ui_image_bluetooth_on_image.c",
"ui_image_circle_image.c",
"ui_image_circle_question_image.c",
"ui_image_debug_log_image.c",
"ui_image_gps_location_image.c",
"ui_image_groups_bell_image.c",
"ui_image_groups_bell_slash_image.c",
"ui_image_groups_button_image.c",
"ui_image_groups_key_image.c",
"ui_image_groups_lock_image.c",
"ui_image_groups_unlock_image.c",
"ui_image_home_bell_image.c",
"ui_image_home_bell_slash_image.c",
"ui_image_home_bluetooth_off_button_image.c",
"ui_image_home_bluetooth_on_button_image.c",
"ui_image_home_button_image.c",
"ui_image_home_clock_image.c",
"ui_image_home_ethernet_button_image.c",
"ui_image_home_fair_signal_image.c",
"ui_image_home_good_signal_image.c",
"ui_image_home_location_button_image.c",
"ui_image_home_lora_image.c",
"ui_image_home_mail_button_image.c",
"ui_image_home_mail_unread_button_image.c",
"ui_image_home_memory_button.c",
"ui_image_home_no_signal_image.c",
"ui_image_home_nodes_button_image.c",
"ui_image_home_qr_button_image.c",
"ui_image_home_sd_card_image.c",
"ui_image_home_signal_button_image.c",
"ui_image_home_strong_signal_image.c",
"ui_image_home_weak_signal_image.c",
"ui_image_home_wlan_button_image.c",
"ui_image_home_wlan_off_image.c",
"ui_image_hourgalss_start_image.c",
"ui_image_key_generate_image.c",
"ui_image_keyboard_image.c",
"ui_image_knob_logo_image.c",
"ui_image_location_lock_image.c",
"ui_image_location_pin_image.c",
"ui_image_lock_channel_image.c",
"ui_image_lock_secure_image.c",
"ui_image_lock_slash_image.c",
"ui_image_map_button_image.c",
"ui_image_meshtastic_boot_logo_image.c",
"ui_image_meshtastic_logo_image.c",
"ui_image_messages_button_image.c",
"ui_image_mqtt_logo2_image.c",
"ui_image_msg_popup_button_image.c",
"ui_image_nav_down_image.c",
"ui_image_nav_home_image.c",
"ui_image_nav_left_image.c",
"ui_image_nav_right_image.c",
"ui_image_nav_up_image.c",
"ui_image_no_tile_image.c",
"ui_image_node_client_image.c",
"ui_image_node_location_pin24_image.c",
"ui_image_node_router_image.c",
"ui_image_node_sensor_image.c",
"ui_image_nodes_button_image.c",
"ui_image_radar_beam_image.c",
"ui_image_reboot_bt_on_image.c",
"ui_image_reboot_image.c",
"ui_image_settings_button_image.c",
"ui_image_settings_trash_image.c",
"ui_image_shutdown_image.c",
"ui_image_signal_full_image.c",
"ui_image_signal_slider_image.c",
"ui_image_top_chart_image.c",
"ui_image_top_chats_image.c",
"ui_image_top_group_image.c",
"ui_image_top_loop_image.c",
"ui_image_top_lora_image.c",
"ui_image_top_map_image.c",
"ui_image_top_message_node_images.c",
"ui_image_top_neighbors_image.c",
"ui_image_top_node_detector_image.c",
"ui_image_top_nodes_image.c",
"ui_image_top_settings_image.c",
"ui_image_unmessagable_image.c",
"ui_image_user_question_image.c",
"ui_image_zoom_minus_image.c",
"ui_image_zoom_plus_image.c",
"vars.h"
]
}
13 changes: 6 additions & 7 deletions generated/ui_320x240/actions.h
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
#ifndef EEZ_LVGL_UI_ACTIONS_H
#define EEZ_LVGL_UI_ACTIONS_H
#include "lvgl.h"
#ifndef EEZ_LVGL_UI_ACTIONS_H
#define EEZ_LVGL_UI_ACTIONS_H

#include "lvgl.h"

extern void action_on_boot_screen_displayed(lv_event_t * e);



#endif /*EEZ_LVGL_UI_ACTIONS_H*/
23 changes: 16 additions & 7 deletions generated/ui_320x240/fonts.h
Original file line number Diff line number Diff line change
@@ -1,12 +1,21 @@
#ifndef EEZ_LVGL_UI_FONTS_H
#define EEZ_LVGL_UI_FONTS_H
#include "lvgl.h"
#ifndef EEZ_LVGL_UI_FONTS_H
#define EEZ_LVGL_UI_FONTS_H

#include "lvgl.h"

extern const lv_font_t ui_font_montserrat_12;
extern const lv_font_t ui_font_montserrat_14;
extern const lv_font_t ui_font_montserrat_16;
extern const lv_font_t ui_font_montserrat_20;



#ifndef EXT_FONT_DESC_T
#define EXT_FONT_DESC_T
typedef struct _ext_font_desc_t {
const char *name;
const void *font_ptr;
} ext_font_desc_t;
#endif

extern ext_font_desc_t fonts[];

#endif /*EEZ_LVGL_UI_FONTS_H*/
5 changes: 3 additions & 2 deletions generated/ui_320x240/images.c
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#include "images.h"

const ext_img_desc_t images[90] = {
const ext_img_desc_t images[91] = {
{ "meshtastic_boot_logo_image", &img_meshtastic_boot_logo_image },
{ "settings_button_image", &img_settings_button_image },
{ "map_button_image", &img_map_button_image },
Expand Down Expand Up @@ -91,4 +91,5 @@ const ext_img_desc_t images[90] = {
{ "home_qr_button_image", &img_home_qr_button_image },
{ "groups_bell_slash_image", &img_groups_bell_slash_image },
{ "groups_bell_image", &img_groups_bell_image },
};
{ "home_webdav_image", &img_home_webdav_image },
};
32 changes: 16 additions & 16 deletions generated/ui_320x240/images.h
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
#ifndef EEZ_LVGL_UI_IMAGES_H
#define EEZ_LVGL_UI_IMAGES_H
#include "lvgl.h"
#ifdef __cplusplus
extern "C" {
#endif
#ifndef EEZ_LVGL_UI_IMAGES_H
#define EEZ_LVGL_UI_IMAGES_H

#include "lvgl.h"

#ifdef __cplusplus
extern "C" {
#endif

extern const lv_img_dsc_t img_meshtastic_boot_logo_image;
extern const lv_img_dsc_t img_settings_button_image;
extern const lv_img_dsc_t img_map_button_image;
Expand Down Expand Up @@ -97,6 +97,7 @@ extern const lv_img_dsc_t img_unmessagable_image;
extern const lv_img_dsc_t img_home_qr_button_image;
extern const lv_img_dsc_t img_groups_bell_slash_image;
extern const lv_img_dsc_t img_groups_bell_image;
extern const lv_img_dsc_t img_home_webdav_image;

#ifndef EXT_IMG_DESC_T
#define EXT_IMG_DESC_T
Expand All @@ -106,11 +107,10 @@ typedef struct _ext_img_desc_t {
} ext_img_desc_t;
#endif

extern const ext_img_desc_t images[90];


#ifdef __cplusplus
}
#endif

extern const ext_img_desc_t images[91];

#ifdef __cplusplus
}
#endif

#endif /*EEZ_LVGL_UI_IMAGES_H*/
Loading
Loading