Lanistor
Lanistor
> Ah, I know what the problem is now. LVGL sets a slightly larger draw area for the labels. It's because some letters are overflowing their box and they would...
> On v8 it work for me with this modification: > > ```c > static void label_init_event_cb(lv_event_t* e) { > lv_coord_t* size = (int32_t*)lv_event_get_param(e); //Use lv_coord_t instead of int32_t >...
> Please check what happens in `lv_obj_pos.c` in `lv_obj_invalidate`. What is the [`ext_size`](https://github.com/lvgl/lvgl/blob/release/v8.3/src/core/lv_obj_pos.c#L857)? It's value is `4`,`5` or `6`, same as the extra size. But even i change the `lv_event_set_ext_draw_size`...
> Please check what happens in `lv_obj_pos.c` in `lv_obj_invalidate`. What is the [`ext_size`](https://github.com/lvgl/lvgl/blob/release/v8.3/src/core/lv_obj_pos.c#L857)? It's not only the `label`, or the `ext_draw_size`, even i change to normal `lv_obj_t`, the problem still...
> So do you say not only the label but all widget has larger draw area? > > Have you used a `display_drv.rounder_cb`? Yeah, all widget has larger draw area,...
> > But, if the repaint is called by lv_obj_set_style_bg_color, it won't draw larger. > > Maybe we are missing something fundamental. What/How do change when you see the issue?...
> I see how you creat the widgets and it looks good, but how do you update the values? The `update_widget` will called by period. ```cpp void status_bar_battery_debug_widget::update_widget() { lv_obj_clean(this->view);...
> Ah, it's not ideal. You should call only lv_obj_set_style_bg_color. As you create the widgets some extra areas are invalidated. So instead of continuously creating/deleting widgets, you can call only...
> Well, I see that recreating widgets can be tempting to handle complex logic, but this way you will always have this updating area issue. Imagine that there are 2...
> Just to be sure we are talking about the same thing, please try this: > > ```c > lv_obj_t * label = lv_label_create(lv_screen_active()); > lv_obj_center(label); > lv_label_set_text(label, "Hello"); >...