* test(table): Replicate issue when reducing table cells
See #3120 for report
* test(table): Cell reduction test without use after free
Set the row count to 1 to be able to have a passing test, now we can track
down the real bug, which is triggered when having more than 1 row in the table.
* test(table): Add failing test for cell reduction
This test currently triggers the use after free bug
* chore(table): No-op when new and current row and columns counts are equal
* chore(table): Clean up lv_table_set_col_cnt
* chore(table): Add comments to get_row_height
* chore(table): Minor format cleanup and comment of cell_data layout
* fix ASAN arror
* minor fixes
* chore(table): Restore comments to get_row_height
Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
* Add initial pre-commit configuration for code formatting
* chore: Move --recursive switch from cfg file to script
* pre-commit: Update format-source hook to use code-format.cfg
Also remove the code-format-per-file.cfg file as it's now unused
* docs: Add section about pre-commit
* widgets: make dependencies internal handling consistent when using Kconfig
* scripts/lv_conf_internal_gen.py: fix issue with widget with dependencies
* scripts/lv_conf_internal_gen.py: allow to call it from other directory
* replace lv_chart_refresh by invalidate_point so the chart will be updated faster.
* Update lv_chart.c
It seems the second `invalidate_point` is extra and can be removed.
* Update src/extra/widgets/chart/lv_chart.c
Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
Commit ba38a4b appears to have accidentally added a duplicate declaration of
_lv_log_add. With -Wredundant-decls, this causes warnings to spam the terminal.
warning: redundant redeclaration of ‘_lv_log_add’ [-Wredundant-decls]
This enables queuing up a key while animation is occurring and then sending it to the gridnav once the animation is complete.
Without this, if you call `lv_event_send()` to send a key to the gridnav later, then `lv_indev_get_act()` returns `NULL` since it's no longer actively processing the key handler, and nothing happens from the key.
* test(textarea): Password mode
* test(textarea): label style with one line enabled
* test(textarea): Cursor click pos
* chore(textarea): Move auto hide to helper
* test(textarea): Placeholder text
* test(textarea): Default properties values
* test(textarea): Remove assert from one line test
* tests(textarea): Remove unused variables
* feat/textarea: Add and use is_valid_but_non_printable_char
* chore/textarea: General cleanup
* test(textarea): Accepted chars
* Update src/widgets/lv_textarea.c
* test(textarea): Assert text is empty after widget creation
* test(textarea): Update test for label style with one line enabled
* test(textarea): Add default text helper and use it
* test(textarea): Ignore line break chars in one line mode
* textarea: Check for line break chars sooner when adding char
* textarea: Start refactor of insert_handler
* textarea: Add comments to insert_handler
Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
* test(table): Happy path test for set_cell_value
* table: Abstract char configuration on set_cell_value
Abstract bytes to allocate calculation and txt copying
* table: Add missing &
* table: Update helper names
* test(table): Add test for column increasing when setting a formatted cell value
* table: Increase table columns when needed
* test(table): Fix test_table_should_grow_columns_automatically_when_setting_formatted_cell_value
* table: Fix code formatting
* test(table): Add test for cell ctrl
* table: Refactor draw_main low hanging fruits
* lv_table: Initial refactor of get_row_height
Mostly early breaks on loops and reducing variable scope where possible
* lv_table: Initial refactor of refr_size
Adding const wherever is possible
* lv_table: Further cleanup get_row_height
* lv_table: Cleanup loop in draw_main
* lv_table: Fix -Werror=shadow compilation error
* test(table): Tests for cell ctrl clearance
* lv_table: Rename index to idx
* lv_table: Use helper to know if cell is empty
* test(table): Comment assumptions to column grow test
* test(table): Row height with multi line cell value
* test(table): Wrap on long texts and increase row height
* add rendering test
* fix warnings
* fix out of bounds indexig
* fix rendering test
Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
* feat(porting): add a macro lv_run_timer_handler_in_period to simplify porting
* feat: update helper function and doc
* doc(porting): update function names
* revise to the original os.md
* fix: fix typo
* fix: mitigate warnings