1
0
mirror of https://github.com/lvgl/lvgl.git synced 2025-01-14 06:42:58 +08:00

46 Commits

Author SHA1 Message Date
Neo Xu
47a244afe1 ci(image): test all image formats (#4974)
Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
2023-12-11 14:25:33 +01:00
Gabor Kiss-Vamosi
a802d1fc8b test: temporarily disable -Wstack-usage
Seemingly unrealistic values are reported. See https://github.com/lvgl/lvgl/actions/runs/6974396516/job/18980011134
2023-11-23 22:47:47 +01:00
Gabor Kiss-Vamosi
ff16a41aca test: increment -Wstack-usage=6000 2023-11-23 22:29:12 +01:00
Gabor Kiss-Vamosi
e402b42914 test: add -fsanitize=leak -fsanitize=undefined 2023-11-23 22:15:54 +01:00
Gabor Kiss-Vamosi
c526653822 fix(anim_timeline): fix special cases of anim timeline and add tests 2023-11-18 19:03:57 +01:00
Zhang Ji Peng
8cf0bbb558
feat(draw): add implements vector graphic APIs (#4528) (#4691)
Signed-off-by: zhangjipeng <zhangjipeng@xiaomi.com>
Co-authored-by: zhangjipeng <zhangjipeng@xiaomi.com>
Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
2023-11-09 11:37:33 +01:00
Niklas Fiekas
8fabcc6853
feat(font): add option to disable kerning (#4725) 2023-10-30 13:23:20 +01:00
Neo Xu
726620d0fc
feat(obj): add unified obj property set/get API (#4579)
Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
2023-10-26 09:39:30 +02:00
_VIFEXTech
c4c4627ae0
feat(libs): add libjpeg-turbo decoder (#4567)
Signed-off-by: pengyiqiang <pengyiqiang@xiaomi.com>
Co-authored-by: pengyiqiang <pengyiqiang@xiaomi.com>
2023-09-22 10:43:59 +02:00
Gabor Kiss-Vamosi
ca55b2ed8d arch(img_decoder): replace read_liine_c with get_area_cb
also remove sjpeg support as get_area_cb can de quite same (some optimization is still needed to not decode the out of bounds chunks)
2023-09-18 21:19:00 +02:00
Zoltan Janosy
ca54d127c2
feat(fs): add support for memory-mapped files (#4462)
Co-authored-by: Zoltan Janosy <zjanosy@fishman.com>
Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
2023-08-31 13:00:26 +02:00
Gabor Kiss-Vamosi
f753265a79 arch(draw): add parallel rendering architecture
BREAKING CHANGE

This is a huge update which introduces parallel rendering. lv_conf.h needs to be updated too.
2023-07-05 13:05:19 +02:00
Neo Xu
3fbdd7b6c1
fix(anim): fix compile warnings (#4305)
Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
2023-06-23 20:32:25 +02:00
Carlos Diaz
61b46756f6
ci(malloc): add malloc/realloc/free stub in unit tests (#4078) 2023-03-24 09:06:16 +01:00
Gabor Kiss-Vamosi
124f9b0f9f arch(driver): new driver architecture with new color format support 2023-02-20 20:50:58 +01:00
Gabor Kiss-Vamosi
ad8eed9eb5 ci: avoide having files with the same name
Related to https://github.com/lvgl/lvgl/issues/3930#issuecomment-1385681008
2023-01-18 09:26:51 +01:00
some00
d33e56e951
test(cmake): exclude test targets from build only configurations (#3821) 2022-12-21 08:31:23 +01:00
Gabor Kiss-Vamosi
077cd2e15d ci: use headers for text config instead of CMake 2022-11-25 11:32:14 +01:00
some00
ab2446c247
fix(test cmake): capitalize Ruby_EXECUTABLE variable (#3751) 2022-10-20 12:20:03 +02:00
some00
c3a49327ba
test add valgrind support and address technical debt (#3731)
Test runners are now properly generated by CMake only when needed
2022-10-09 17:06:56 -04:00
honey the codewitch
57e0943b10
feat(tiny_ttf): ttf support (#3680)
Co-authored-by: embeddedt <42941056+embeddedt@users.noreply.github.com>
Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
2022-09-26 17:30:07 +02:00
Gabor Kiss-Vamosi
d78e927252 ci: enable discarded-qualifiers warning
related to #3686
2022-09-19 14:26:29 +02:00
Yobe Zhou
f09c04b935
feat(file_explorer): add API to use file explorer (#3601)
Co-authored-by: 100ask <team100ask@outlook.com>
Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
2022-09-04 16:57:15 +02:00
Gabor Kiss-Vamosi
327dbb6031 feat(msg): allow using variable address as msg_id 2022-08-25 14:20:43 +02:00
Gabor Kiss-Vamosi
50be1859de fix(ime_pinyin): fix warnings and add it to build tests 2022-08-23 13:11:12 +02:00
Xiang Xiao
9ed5b3fe06
Sync up Kconfig with lv_config_template.h (#3508)
* fix(config): remove LV_COLOR_16_SWAP related stuff

follow commit 5369d7d473446a8953f2ea37b9116da918d3c8d2

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>

* fix(config): remove LV_COLOR_SCREEN_TRANSP related stuff

follow commit 5369d7d473446a8953f2ea37b9116da918d3c8d2

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-07-20 11:29:34 +02:00
Gabor Kiss-Vamosi
6104855491 fix(conf): fix a lot of new config realted issues 2022-07-19 17:21:19 +02:00
Gabor Kiss-Vamosi
98660a861d fix(fs): fix cached read and add unit test for lv_fs
fixes: #3262
2022-04-21 20:45:33 +02:00
Gabor Kiss-Vamosi
1b219654db chore: code formatting and fix warnings 2022-04-06 22:18:30 +02:00
guoweilkd
7713327d61
feat(font): add imgfont - can be used to add emojis to label/span (#3160)
* feature(font): draw img in label/span

* add to tests

Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
2022-03-17 10:18:14 +01:00
Mariotaku
e7736f2c32
feat(fragment): add fragment manager (a UI Controller concept) (#2940)
* adding lv_obj_controller

* adding examples for lv_obj_controller

* added some docs

* formatted code

* updated controller docs

* updated controller docs

* updated sample controller field

* changed lv_controller_manager_parent to lv_controller_manager_get_parent

* updated unmanaged controller creation/deletion

* renamed lv_controller_manager_t

* rename: controller -> fragment

* formatted code

* Update examples/others/fragment/lv_example_fragment.h

Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>

* Update src/extra/others/fragment/lv_fragment.c

Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>

* Update src/extra/others/fragment/lv_fragment.c

Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>

* Update src/extra/others/fragment/lv_fragment.c

Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>

* code cleanup

* fragment creation rework

* (wip) fragment manager

* (wip) fragment manager

* refactoring fragment

* lifecycle fixes

* updated fragment event callback

* exposed states of fragment

* added some docs

* updated lv_fragment_managed_states_t name

* updated docs

* updated docs

* updated lv_fragment_manager_dispatch_event docs

* removed msgbox fragment

* updated fragment docs

* updated fragment docs

* updated docs

* updating examples

* fixed example

* reformatted code

* fixed obj_created set timing

* simplified fragment

* improved fragment view del assertion

* fixed a typo

* fixed event_cb check in lv_obj_remove_event_cb_with_user_data

* fixing fragment obj assertion

* regenerated config

* fixed fragment examples

* fixed fragment examples

* added missing examples

* updated docs

* fragment api cleanup

* rename fragment struct names

* added missing param doc

* enabled test for 32bit build

* feat(porting): add a macro lv_run_timer_handler_in_period to simplify porting (#3063)

* 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

* chore: fix code formatting

* fix(fsdrv): replacing sprintf with lv_snprintf for safety (#3079)

* fix(Kconfig) remove duplicate LV_BUILD_EXAMPLES configuration

* feat(refr) add reset of FPS statistics

* fix(conf) mismatched macro judgment

* feat(fsdrv) replacing sprintf with lv_snprintf for safety

* feat(fsdrv) update stdio and win32

Co-authored-by: pengyiqiang <pengyiqiang@xiaomi.com>

* fix warnings

Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
Co-authored-by: Gabriel Wang <embedded_zhuoran@Hotmail.com>
Co-authored-by: _VIFEXTech <1290176185@qq.com>
Co-authored-by: pengyiqiang <pengyiqiang@xiaomi.com>
2022-02-11 12:43:08 +01:00
Adrian Schnyder
abba1c351a feat(fs): add caching option for lv_fs-read (#2979)
BREAKING CHANGE:
The `LV_FS_...` related configs needs to be updated.

Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
2022-01-24 20:52:37 +01:00
embeddedt
4122dda399
ci add 5k stack limit 2022-01-24 14:34:00 -05:00
Themba Dube
8c75bb298a Revert "ci add back stack usage check at 4 kilobytes"
This reverts commit 89135d663daca34c9d9695a4c12b4208ef4ba217.
2022-01-24 11:01:22 -05:00
Themba Dube
89135d663d ci add back stack usage check at 4 kilobytes 2022-01-24 10:56:11 -05:00
Themba Dube
3bd6ad80e7 test(demo) add tests for widget and stress demos 2022-01-24 10:55:32 -05:00
Themba Dube
1900c21548 ci temporarily disable stack usage check 2022-01-24 10:16:58 -05:00
X-Ryl669
923defd6b6
fix(gradient): general cleanup and fix for alignment issues (#3036)
* Try to fix ASAN behavior

* improve alignments

* fix buffer overflow and various other fixes

* minor fixes

* formatting

Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
2022-01-24 15:47:47 +01:00
Themba Dube
446b1ebf2b test add support for using system heap 2022-01-23 09:58:55 -05:00
Gabor Kiss-Vamosi
80f0b09e34 test fix LV_USE_LOG_LEVEL -> LV_LOG_LEVEL typo
Related to #2673
2021-10-19 17:40:41 +02:00
Carlos Diaz
42989d4e9a
test(txt) initial unit tests and general code cleanup/fixes (#2623)
* test(txt): Add test for identifying empty text when trying to get next line

* test(txt): Rename next line empty string handling test

* test(txt): Add tests for _lv_txt_is_cmd

* test(txt): Add initial tests for _lv_txt_ins

* fix(txt): Check for NULL before using strlen

Passing NULL to strlen is not defined, so we should avoid it

* txt: Update docs

Remove docs from source file and add comment about pointers to NULL terminated arrays where necessary

* txt: Misc update in encoded_size

* test(txt): first tests for _lv_txt_cut

* tests: Remove -Wmissing-prototype flag from compilation

This will allow us to have cleaner test cases files.

* test(txt): Remove test (funtion) prototypes as they're no longer necessary

* Update src/misc/lv_txt.h

Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>

* Update src/misc/lv_txt.h

Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>

* Revert "tests: Remove -Wmissing-prototype flag from compilation"

This reverts commit 8b3217de8d9210eb2e6da5e94c0735beb2735be7.

* test(txt): Use pragma to disable missing-prototype warning

* test: use extended set of compile options for test cases

* Revert "test(txt): Use pragma to disable missing-prototype warning"

This reverts commit 64909e30ed124ca1e8ca390ca0639479c3e34f44.

* test(txt): Add assert to test_txt_cut_len_longer_than_string test

* test(txt): Add test for _lv_txt_encoded_next on valid ascii input

* test(txt): Add tests for _lv_txt_encoded_next with 2 byte long inputs

* test(txt): Add tests for _lv_txt_encoded_next with 3 byte long inputs

* test(txt): Add tests for _lv_txt_encoded_next with 4 byte long inputs

* cleanup(txt): Add helper macros to identify ASCII and UTF8 codes

* cleanup(txt): Add missing LV_ prefix to helper macros

Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
Co-authored-by: embeddedt <42941056+embeddedt@users.noreply.github.com>
2021-10-15 11:37:53 +02:00
Gabor Kiss-Vamosi
7a95fa9e2d test add 3rd party libs to all tests and also fix them
Fixes: #2661
2021-10-12 17:03:50 +02:00
Gabor Kiss-Vamosi
18f61c5f77
arch add small 3rd party libs to lvgl (#2569)
* move png, sjpg, bmp, gif, fs_if to extra/libs

* reorganize the examples

* update lv_conf_internal.h

* fix warnings

* add freetype

* remove unused assets

* add the new libs to build tests

* update the docs
2021-10-04 14:34:11 +02:00
Chris Mumford
b1bf7fd29a
test(ci) build and run tests in parallel. (#2515)
Create one GitHub workflow job for each build option build
or test execution. This allows each of the five builds to
be executed in parallel as well as making it easier to
navigate to the test output as it now resides in its own
job.

This change **does** change the command-line arguments to
the test execution script. This is required to allow the
build options name to be passed in.

New `tests/main.py` command-line help:

```
usage: main.py [-h] [--build-options BUILD_OPTIONS] [--clean]
               [--report]
               [{build,test} [{build,test} ...]]

Build and/or run LVGL tests.

positional arguments:
  {build,test}          build: compile build tests, test:
                        compile/run executable tests.

optional arguments:
  -h, --help            show this help message and exit
  --build-options BUILD_OPTIONS
                        the build option name to build or run.
                        When omitted all build configurations
                        are used.
  --clean               clean existing build artifacts before
                        operation.
  --report              generate code coverage report for
                        tests.

This program builds and optionally runs the LVGL test programs.
There are two types of LVGL tests: "build", and "test". The
build-only tests, as their name suggests, only verify that the
program successfully compiles and links (with various build
options). There are also a set of tests that execute to verify
correct LVGL library behavior.
```
2021-09-01 11:58:14 +02:00
Chris Mumford
df6cbfe866
ci(tests) run tests using ctest (#2503)
Simplifies `tests/main.py` as it no longer needs to invoke
tests individually or keep track of and report their pass/fail
status.

Also enables the ability to run tests in parallel, support timeouts,
and re-run flaky tests.

https://cmake.org/cmake/help/latest/manual/ctest.1.html
2021-08-30 08:45:33 -04:00
Chris Mumford
9c846ee493
test convert Makefile to CMake (#2495)
* Convert tests/Makefile to a cmake project file.

This change switches the building of LVGL tests to use cmake
which is more portable than make. Additionally, whenever
cmake can be used, instead of the Python script (`main.py`),
the former is preferred.

The interface to `main.py` is unchanged, and tests are built
and executated the same as before.

This closes https://github.com/lvgl/lvgl/issues/2474.

* Installing `gcovr` in GitHub workflow.

* Documented steps to install libpng-dev.

* Added missing stdout flush when running tests.

* Grammar tweak in README.

Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
2021-08-27 15:49:31 +02:00