diff --git a/applications/services/gui/canvas.c b/applications/services/gui/canvas.c index c62003d70..73da3e5ea 100644 --- a/applications/services/gui/canvas.c +++ b/applications/services/gui/canvas.c @@ -525,17 +525,18 @@ void canvas_draw_xbm( canvas_draw_u8g2_bitmap(&canvas->fb, x, y, width, height, bitmap, IconRotation0); } -void canvas_draw_xbm_mirrored( +void canvas_draw_xbm_custom( Canvas* canvas, int32_t x, int32_t y, size_t width, size_t height, + IconRotation rotation, const uint8_t* bitmap_data) { furi_check(canvas); x += canvas->offset_x; y += canvas->offset_y; - canvas_draw_u8g2_bitmap(&canvas->fb, x, y, width, height, bitmap_data, IconRotation180); + canvas_draw_u8g2_bitmap(&canvas->fb, x, y, width, height, bitmap_data, rotation); } void canvas_draw_glyph(Canvas* canvas, int32_t x, int32_t y, uint16_t ch) { diff --git a/applications/services/gui/canvas.h b/applications/services/gui/canvas.h index 7d22bffe5..34f20746a 100644 --- a/applications/services/gui/canvas.h +++ b/applications/services/gui/canvas.h @@ -296,21 +296,24 @@ void canvas_draw_xbm( size_t height, const uint8_t* bitmap); -/** Draw mirrored XBM bitmap +/** Draw rotated XBM bitmap * * @param canvas Canvas instance * @param x x coordinate * @param y y coordinate * @param[in] width bitmap width * @param[in] height bitmap height + * @param[in] rotation bitmap rotation * @param bitmap pointer to XBM bitmap data */ -void canvas_draw_xbm_mirrored( + +void canvas_draw_xbm_custom( Canvas* canvas, int32_t x, int32_t y, size_t width, size_t height, + IconRotation rotation, const uint8_t* bitmap_data); /** Draw dot at x,y diff --git a/targets/f7/api_symbols.csv b/targets/f7/api_symbols.csv index 51aa81d0f..15f8e5ed3 100644 --- a/targets/f7/api_symbols.csv +++ b/targets/f7/api_symbols.csv @@ -832,7 +832,7 @@ Function,+,canvas_draw_str,void,"Canvas*, int32_t, int32_t, const char*" Function,+,canvas_draw_str_aligned,void,"Canvas*, int32_t, int32_t, Align, Align, const char*" Function,+,canvas_draw_triangle,void,"Canvas*, int32_t, int32_t, size_t, size_t, CanvasDirection" Function,+,canvas_draw_xbm,void,"Canvas*, int32_t, int32_t, size_t, size_t, const uint8_t*" -Function,+,canvas_draw_xbm_mirrored,void,"Canvas*, int32_t, int32_t, size_t, size_t, const uint8_t*" +Function,+,canvas_draw_xbm_custom,void,"Canvas*, int32_t, int32_t, size_t, size_t, IconRotation, const uint8_t*" Function,+,canvas_get_font_params,const CanvasFontParameters*,"const Canvas*, Font" Function,+,canvas_glyph_width,size_t,"Canvas*, uint16_t" Function,+,canvas_height,size_t,const Canvas*