Commit Graph

51 Commits

Author SHA1 Message Date
VIFEX
4d0c029827 fix(draw): fix the default draw thread stack is too large (#5951)
Signed-off-by: pengyiqiang <pengyiqiang@xiaomi.com>
Signed-off-by: FASTSHIFT <vifextech@foxmail.com>
Co-authored-by: pengyiqiang <pengyiqiang@xiaomi.com>
2024-04-08 21:31:19 +02:00
lion2tomato
21dd110e63 feat(draw): add draw thread stack size config option (#5910)
Signed-off-by: lijianjun <lijianjun@xiaomi.com>
Signed-off-by: Neo Xu <neo.xu1990@gmail.com>
Co-authored-by: lijianjun <lijianjun@xiaomi.com>
Co-authored-by: Neo Xu <neo.xu1990@gmail.com>
2024-03-22 10:06:27 +08:00
Johannes Marbach
1b97f0f2c0 feat(fbdev,sdl): support display rotation (#5703)
Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
2024-03-21 19:36:38 +08:00
Neo Xu
54198c925b fix(warning): variable set but unused. (#5757)
Signed-off-by: Neo Xu <neo.xu1990@gmail.com>
2024-03-03 19:45:33 +01:00
Gabor Kiss-Vamosi
10978c94c2 feat(image, layer): add bitmap mask feature (#5545) 2024-02-10 20:57:46 +01:00
Neo Xu
812e98aa8b chore(conf): use EXTERNAL and INTERNAL macro to config libs (#5046)
Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
2024-02-06 16:24:59 +08:00
Gabriel Wang
78a6b2f425 chore(cmsis-pack): prepare for LVGL9 release (#5323)
Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
2024-01-15 19:50:03 +01:00
Gabriel Wang
ab1182b1b2 feat(draw-sw): add Helium (transform) acceleration to sw-draw-image-core (#5231)
Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
2024-01-14 12:36:42 +01:00
_VIFEXTech
5c4c41e3d0 Merge pull request #5032 from FASTSHIFT/fix_draw_sw_vector
fix(draw_vector): fix build break when thorvg disabled
2023-12-19 10:36:30 +08:00
Gabor Kiss-Vamosi
34f444e327 chore(draw): optimize lv_draw_sw_rgb565_swap 2023-12-18 20:24:40 +01:00
pengyiqiang
63953a0717 fix(draw_vector): fix build break when thorvg disabled
```
lvgl/demos/lv_demos.c:74:37: error: ‘lv_demo_vector_graphic’ undeclared here (not in a function)
   74 |     { "vector_graphic", .entry_cb = lv_demo_vector_graphic },
      |                                     ^~~~~~~~~~~~~~~~~~~~~

/usr/bin/ld: lib/liblvgl.a(lv_draw_sw.c.o): in function `execute_drawing':
lvgl/src/draw/sw/lv_draw_sw.c:338: undefined reference to `lv_draw_sw_vector'
```

Signed-off-by: pengyiqiang <pengyiqiang@xiaomi.com>
2023-12-18 12:22:35 +08:00
_VIFEXTech
4be4cb6eee feat(style): add skew style (#4886)
Signed-off-by: pengyiqiang <pengyiqiang@xiaomi.com>
Co-authored-by: pengyiqiang <pengyiqiang@xiaomi.com>
2023-12-12 09:18:01 +01:00
bjsylvia
07d9ab5968 feat(profiler): add some profiler points and default header for perfetto ui (#4965)
Signed-off-by: YanXiaowei <yanxiaowei@xiaomi.com>
Co-authored-by: YanXiaowei <yanxiaowei@xiaomi.com>
2023-12-11 14:18:41 +01:00
Gabor Kiss-Vamosi
f325e4d1c0 feat(draw): remove draw BG_IMG draw task 2023-12-11 14:11:54 +01:00
bjsylvia
76f82598eb chore(draw): optimize sw execute_drawing (#4954)
Signed-off-by: YanXiaowei <yanxiaowei@xiaomi.com>
Co-authored-by: YanXiaowei <yanxiaowei@xiaomi.com>
2023-12-07 20:25:16 +01:00
Neo Xu
34f7e9e012 chore: fix inconsistent comment style (#4889)
Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
2023-11-29 11:11:16 +01:00
Gabor Kiss-Vamosi
a5c92ef298 feat(draw): add sw display rotate implementations 2023-11-27 11:46:40 +01:00
bjsylvia
9399fc4664 fix(draw): delete duplicate prototype (#4826)
Signed-off-by: YanXiaowei <yanxiaowei@xiaomi.com>
Co-authored-by: YanXiaowei <yanxiaowei@xiaomi.com>
2023-11-19 08:55:05 +01:00
Gabor Kiss-Vamosi
2f3e8d4066 feat(draw): add initial SDL renderer
It caches SW rendered bitmaps in textures.
The cache is also updated to support data and source separately.
E.g. source is a path to an image, and if that image changes all
related cache entries needs to found and invalidated.

Limitations of SDL rederer:
- not all draw task types are supported
- image transformation is not supported
- some textures (e.g. button matrix texts) are not detected as cached
- images are not cached
- images are supported only from path
2023-11-18 15:35:45 +01:00
Viktor Szépe
cc6581ae03 ci: upgrade astyle tool (#4776)
Install from source to use the latest version
2023-11-10 15:37:23 +01:00
bjsylvia
17d1da62af fix(render): make parallel rendering work based on Nuttx Simulator (#4764)
Signed-off-by: YanXiaowei <yanxiaowei@xiaomi.com>
Co-authored-by: YanXiaowei <yanxiaowei@xiaomi.com>
2023-11-10 13:31:36 +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
Gabor Kiss-Vamosi
d4613aecbe feat(draw): add lv_draw_sw_rgb565_swap 2023-11-06 15:22:33 +01:00
bjsylvia
fbb65d2fe3 fix(leak): fix common memory leak on lv_init (#4750)
Signed-off-by: XiaoweiYan <yanxiaowei@xiaomi.com>
Co-authored-by: XiaoweiYan <yanxiaowei@xiaomi.com>
2023-11-06 14:55:52 +01:00
Gabor Kiss-Vamosi
235190d00a fix(debug): fix LV_USE_PARALLEL_DRAW_DEBUG 2023-11-06 11:33:11 +01:00
Gabor Kiss-Vamosi
0721884ee9 refactor: disp->display, res->result/resolution, hor/ver->horizontal/vertical, txt->text, angle->rotation, zoom->scale 2023-09-18 22:57:30 +02:00
Gabor Kiss-Vamosi
09c12d0f9c refactor(btn, img): rename btn to button and img to image 2023-09-14 20:12:31 +02:00
Gabor Kiss-Vamosi
da876e4a21 feat(draw): add preferred_draw_unit_id and preference_score to draw_tasks
see https://github.com/lvgl/lvgl/issues/4342#issuecomment-1691636624
2023-08-30 19:46:41 +02:00
Gabor Kiss-Vamosi
7899f77ee9 feat(draw): add lv_draw_layer_alloc_buf() 2023-08-25 22:57:35 +02:00
bjsylvia
67ca457a07 fix: fix typos (#4451)
Signed-off-by: XiaoweiYan <yanxiaowei@xiaomi.com>
Co-authored-by: XiaoweiYan <yanxiaowei@xiaomi.com>
2023-08-14 16:49:30 +02:00
Gabor Kiss-Vamosi
9064e121ba feat(draw_buf): add lv_draw_buf_get_buf to properly handle mem align 2023-08-13 20:56:31 +02:00
Gabor Kiss-Vamosi
45aa59a473 feat(draw_buf): add lv_draw_buf_t for stride support (#4423) 2023-07-31 18:44:02 +02:00
Gabor Kiss-Vamosi
b466045f13 chore: change some // comments to /**/ 2023-07-15 18:39:11 +02:00
Nicușor Cîțu
c146d65a12 feat(freertos) Define USE_FREERTOS_TASK_NOTIFY.
A direct to task notification is an event sent directly to a task, rather than
indirectly to a task via an intermediary object such as a queue, event group or semaphore.
Sending a direct to task notification to a task sets the state of the target task
notification to 'pending'. Just as a task can block on an intermediary object such
as a semaphore to wait for that semaphore to be available, a task can block on a task
notification to wait for that notification's state to become pending.

Unblocking an RTOS task with a direct notification is 45% faster and uses less RAM
than unblocking a task using an intermediary object such as a binary semaphore.

RTOS task notifications can only be used when there is only one task that can be the recipient of the event.

Signed-off-by: Nicușor Cîțu <nicusor.citu@nxp.com>
2023-07-13 20:04:50 +02:00
Kevin Schlosser
b38c466e8d chore: remove repetitive code from lv_draw_sw.c (#4356) 2023-07-10 20:12:29 +02:00
Neo Xu
dd967ffccc chore: add OPA mix macro (#4354)
Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
2023-07-10 20:05:46 +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
Gabor Kiss-Vamosi
b603fb90f1 fix(buf_copy): fix lv_draw_sw_buffer_copy 2023-04-26 12:51:56 +02: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
85ef9b2b84 perf(draw): optimize LV_COLOR_FORMAT_NATIVE 2022-07-24 22:02:31 +02:00
Gabor Kiss-Vamosi
689e584d52 feat(draw): add transformation for LV_IMG_CF_A8 images 2022-07-24 16:22:50 +02:00
Gabor Kiss-Vamosi
536a5e319b chore: fix warning 2022-07-21 07:31:39 +02:00
Gabor Kiss-Vamosi
453ac21254 arch(color): define generic color formats and add draw_ctx->buffer_convert 2022-07-21 07:28:19 +02:00
Gabor Kiss-Vamosi
5369d7d473 arch(conf, api) refactor lv_conf and some API (#3501)
Kconfig and MicroPython config is not updated yet.


* start to refactor lv_conf.h

* further mem refactoring

* create lv_mem_builtin.c/h

* update lv_conf_internal.h

* add lv_strlen and lv_strncpy

* rename LV_DRAW_COMPLEX to LV_USE_DRAW_MASK

* update lv_conf_template

* minor fix
2022-07-19 13:31:42 +02:00
Mariotaku
f575935180 fix(sdl): add transformation support for the SDL backend (#3403)
* sdl transform wip

* sdl transform wip

* working transform (scale, rotate)

* fixed transform with masks

* fixing includes

* removed lv_obj_t references in draw backend

* update the API to work with SW layers too

* update lv_conf_internal.h

* makefile fixes

* updated sdl transform implementation

Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
2022-06-15 10:36:47 +02:00
Gabor Kiss-Vamosi
318146a2c2 feat(draw): support transforming widgets and improfe sw transform
For details see: https://docs.lvgl.io/master/overview/style.html
2022-04-26 10:45:12 +02:00
Gabor Kiss-Vamosi
d034511bba feat(draw): add draw_ctx->buffer_copy
realted to: #3087
2022-02-18 13:57:11 +01:00
Gabor Kiss-Vamosi
49642d3891 fix(draw): add lv_draw_sw_bg 2022-01-15 13:46:36 +01:00
Gabor Kiss-Vamosi
d3b7b4acfd chore(draw): add lv_draw_sw_wait_for_finish 2021-12-22 17:01:36 +01:00
Gabor Kiss-Vamosi
db53ea925c arch(draw): allow replacing the draw engine
BREAKING CHANGE: the API of lv_draw_... function have been changed
2021-12-21 15:54:22 +01:00