feat(cmsis-pack): Monthly update for May (alpha) (#3359)

* feat(cmsis-pack): Monthly update for May

* fix(benchmark): fix a typo

* fix(draw): fix warning

* Update LVGL.lvgl.1.0.4-alpha5.pack

* feat(arm-2d): add a quick patch to support RGB565A8
This commit is contained in:
Gabriel Wang
2022-05-16 19:41:59 +01:00
committed by GitHub
parent c5d1557738
commit a7cfc0b901
8 changed files with 51 additions and 29 deletions

View File

@@ -868,6 +868,19 @@ static void lv_draw_arm2d_img_decoded(struct _lv_draw_ctx_t * draw_ctx,
blend_dsc.blend_area = coords;
lv_draw_sw_blend(draw_ctx, &blend_dsc);
}
#if LV_COLOR_DEPTH == 16
else if(!mask_any && !transform && cf == LV_IMG_CF_RGB565A8 && draw_dsc->recolor_opa == LV_OPA_TRANSP) {
lv_coord_t src_w = lv_area_get_width(coords);
lv_coord_t src_h = lv_area_get_height(coords);
blend_dsc.src_buf = (const lv_color_t *)src_buf;
blend_dsc.mask_buf = (lv_opa_t *)src_buf;
blend_dsc.mask_buf += sizeof(lv_color_t) * src_w * src_h;
blend_dsc.blend_area = coords;
blend_dsc.mask_area = coords;
blend_dsc.mask_res = LV_DRAW_MASK_RES_CHANGED;
lv_draw_sw_blend(draw_ctx, &blend_dsc);
}
#endif
/*In the other cases every pixel need to be checked one-by-one*/
else {
blend_area.x1 = draw_ctx->clip_area->x1;

View File

@@ -85,7 +85,7 @@ LV_ATTRIBUTE_FAST_MEM void lv_draw_sw_img_decoded(struct _lv_draw_ctx_t * draw_c
lv_coord_t src_w = lv_area_get_width(coords);
lv_coord_t src_h = lv_area_get_height(coords);
blend_dsc.src_buf = (const lv_color_t *)src_buf;
blend_dsc.mask_buf = (const void *)src_buf;
blend_dsc.mask_buf = (lv_opa_t *)src_buf;
blend_dsc.mask_buf += sizeof(lv_color_t) * src_w * src_h;
blend_dsc.blend_area = coords;
blend_dsc.mask_area = coords;