1 #include "config.h" 2 #include "PicturePileLayerContent.h" 3 4 #include "SkCanvas.h" 5 #include "SkPicture.h" 6 7 namespace WebCore { 8 PicturePileLayerContent(const PicturePile & picturePile)9PicturePileLayerContent::PicturePileLayerContent(const PicturePile& picturePile) 10 : m_picturePile(picturePile) 11 { 12 } 13 draw(SkCanvas * canvas)14void PicturePileLayerContent::draw(SkCanvas* canvas) 15 { 16 android::Mutex::Autolock lock(m_drawLock); 17 m_picturePile.draw(canvas); 18 } 19 serialize(SkWStream * stream)20void PicturePileLayerContent::serialize(SkWStream* stream) 21 { 22 if (!stream) 23 return; 24 SkPicture picture; 25 draw(picture.beginRecording(width(), height(), 26 SkPicture::kUsePathBoundsForClip_RecordingFlag)); 27 picture.endRecording(); 28 picture.serialize(stream); 29 } 30 prerenderForRect(const IntRect & dirty)31PrerenderedInval* PicturePileLayerContent::prerenderForRect(const IntRect& dirty) 32 { 33 return m_picturePile.prerenderedInvalForArea(dirty); 34 } 35 clearPrerenders()36void PicturePileLayerContent::clearPrerenders() 37 { 38 m_picturePile.clearPrerenders(); 39 } 40 41 } // namespace WebCore 42