-
Notifications
You must be signed in to change notification settings - Fork 336
Offload window management and Windows GDI operation to a separate thread in win32drv. #216
Conversation
@kisvegabor ping for progress Kenji Mouri |
Wow, it's unbelievable. Again 🙂 I started to work on the new driver architecture which will be part of the main repo. It consists of It can be used like this: lv_drv_sdl_window_t * drv_win = lv_mem_alloc(sizeof(lv_drv_sdl_window_t));
lv_drv_sdl_window_init(drv_win);
drv_win->hor_res = w;
drv_win->ver_res = h;
lv_disp_drv_t * disp_drv = lv_drv_sdl_window_create(drv_win);
lv_dev_fb_t * dev_fb = lv_mem_alloc(sizeof(lv_dev_fb_t));
lv_dev_fb_init(dev_fb);
dev_fb->hor_res = w;
dev_fb->ver_res = h;
lv_disp_t * disp = lv_dev_fb_create(dev_fb, disp_drv); As I imagine Linux |
I am reading the source code you committed in the It looks like I can try to integrate the Windows driver to this scheme, but I need to try first and validate my guess. Kenji Mouri |
If it looks good at first look, it's already something. 🙂 I'll let you know when it's stabilized. |
I think may be
Kenji Mouri |
For this callbacks I was considering an SPI based display controller (e.g. ILI9341) and an I2C touchpad controller. For these purpose of these functions is quite different:
Anyway, I keep this option in mind. |
In #212, I said that I will try to create a new PR to offload them to a separate thread because Windows GDI operation uses 80% of the main thread CPU time when I use the profiler. Here is the code.
Before

After

Kenji Mouri