Skip to content
This repository was archived by the owner on Aug 31, 2021. It is now read-only.

Commit db257d5

Browse files
committed
[[ Skia Update ]] Tweak a couple of things
- Use more efficient SkSurface::draw function - Use sk_ref_sp convenience function when reffing sk_sp<SkTypeface> variables
1 parent 9afa204 commit db257d5

File tree

2 files changed

+3
-6
lines changed

2 files changed

+3
-6
lines changed

engine/src/mblandroidtypeface.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,7 @@ void MCAndroidTypefaceRelease(MCAndroidTypefaceRef p_typeface)
9191
bool MCAndroidTypefaceGetMetrics(MCAndroidTypefaceRef p_typeface, uint32_t p_size, float &r_ascent, float &r_descent, float &r_leading, float &r_xheight)
9292
{
9393
// Skia APIs expect typefaces to be passed as shared pointers
94-
sk_sp<SkTypeface> t_typeface((SkTypeface*)p_typeface);
95-
t_typeface->ref();
94+
sk_sp<SkTypeface> t_typeface = sk_ref_sp((SkTypeface *)p_typeface);
9695

9796
SkPaint t_paint;
9897
t_paint.setTypeface(t_typeface);
@@ -114,8 +113,7 @@ bool MCAndroidTypefaceGetMetrics(MCAndroidTypefaceRef p_typeface, uint32_t p_siz
114113
bool MCAndroidTypefaceMeasureText(MCAndroidTypefaceRef p_typeface, uint32_t p_size, const char *p_text, uint32_t p_text_length, bool p_utf16, float &r_length)
115114
{
116115
// Skia APIs expect typefaces to be passed as shared pointers
117-
sk_sp<SkTypeface> t_typeface((SkTypeface*)p_typeface);
118-
t_typeface->ref();
116+
sk_sp<SkTypeface> t_typeface = sk_ref_sp((SkTypeface *)p_typeface);
119117

120118
SkPaint t_paint;
121119
t_paint.setTypeface(t_typeface);

libgraphics/src/context.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1493,10 +1493,9 @@ void MCGContextEnd(MCGContextRef self)
14931493
else
14941494
{
14951495
// Hardware-backed layer - copy it into RAM
1496-
sk_sp<SkImage> t_image = t_child_layer->m_surface->makeImageSnapshot();
14971496
self->layer->canvas->save();
14981497
self->layer->canvas->resetMatrix();
1499-
self->layer->canvas->drawImage(t_image, t_child_layer->origin_x, t_child_layer->origin_y, &t_paint);
1498+
t_child_layer->m_surface->draw(self->layer->canvas, t_child_layer->origin_x, t_child_layer->origin_y, &t_paint);
15001499
self->layer->canvas->restore();
15011500
}
15021501

0 commit comments

Comments
 (0)