diff --git a/library.json b/library.json index 82f9171a0..b2809bb5a 100644 --- a/library.json +++ b/library.json @@ -1,5 +1,6 @@ { "name": "lvgl", + "version": "6.0.1", "keywords": "graphics, gui, embedded, littlevgl", "description": "Graphics library to create embedded GUI with easy-to-use graphical elements, beautiful visual effects and low memory footprint. It offers anti-aliasing, opacity, and animations using only one frame buffer.", "repository": diff --git a/src/lv_objx/lv_calendar.c b/src/lv_objx/lv_calendar.c index ced804db9..36baea3dc 100644 --- a/src/lv_objx/lv_calendar.c +++ b/src/lv_objx/lv_calendar.c @@ -787,7 +787,7 @@ static void draw_days(lv_obj_t * calendar, const lv_area_t * mask) } label_area.x1 = - calendar->coords.x1 + (w * day) / 7 + style_bg->body.padding.left + style_bg->body.padding.right; + calendar->coords.x1 + (w * day) / 7 + style_bg->body.padding.left; label_area.x2 = label_area.x1 + box_w - 1; /*Draw the "today box"*/ diff --git a/src/lv_objx/lv_chart.c b/src/lv_objx/lv_chart.c index 345e8f105..83ae1ab95 100644 --- a/src/lv_objx/lv_chart.c +++ b/src/lv_objx/lv_chart.c @@ -619,11 +619,20 @@ static bool lv_chart_design(lv_obj_t * chart, const lv_area_t * mask, lv_design_ lv_chart_draw_div(chart, mask); - if(ext->type & LV_CHART_TYPE_LINE) lv_chart_draw_lines(chart, mask); - if(ext->type & LV_CHART_TYPE_COLUMN) lv_chart_draw_cols(chart, mask); - if(ext->type & LV_CHART_TYPE_POINT) lv_chart_draw_points(chart, mask); - if(ext->type & LV_CHART_TYPE_VERTICAL_LINE) lv_chart_draw_vertical_lines(chart, mask); - if(ext->type & LV_CHART_TYPE_AREA) lv_chart_draw_areas(chart, mask); + /* Adjust the mask to remove the margin (clips chart contents to be within background) */ + + lv_area_t mask_tmp, adjusted_mask; + lv_obj_get_coords(chart, &mask_tmp); + + bool union_ok = lv_area_intersect(&adjusted_mask, mask, &mask_tmp); + + if(union_ok) { + if(ext->type & LV_CHART_TYPE_LINE) lv_chart_draw_lines(chart, &adjusted_mask); + if(ext->type & LV_CHART_TYPE_COLUMN) lv_chart_draw_cols(chart, &adjusted_mask); + if(ext->type & LV_CHART_TYPE_POINT) lv_chart_draw_points(chart, &adjusted_mask); + if(ext->type & LV_CHART_TYPE_VERTICAL_LINE) lv_chart_draw_vertical_lines(chart, &adjusted_mask); + if(ext->type & LV_CHART_TYPE_AREA) lv_chart_draw_areas(chart, &adjusted_mask); + } lv_chart_draw_axes(chart, mask); }