| Index: samplecode/SampleApp.cpp
|
| diff --git a/samplecode/SampleApp.cpp b/samplecode/SampleApp.cpp
|
| index df10b1e70bec2b31e31ed9d3fb6a8568a400ae37..8825f53e72d40fb02264dc40fdcf7ec528fe8a1c 100644
|
| --- a/samplecode/SampleApp.cpp
|
| +++ b/samplecode/SampleApp.cpp
|
| @@ -1007,7 +1007,7 @@ static SkBitmap capture_bitmap(SkCanvas* canvas) {
|
|
|
| static bool bitmap_diff(SkCanvas* canvas, const SkBitmap& orig,
|
| SkBitmap* diff) {
|
| - const SkBitmap& src = canvas->getDevice()->accessBitmap(false);
|
| + SkBitmap src = capture_bitmap(canvas);
|
|
|
| SkAutoLockPixels alp0(src);
|
| SkAutoLockPixels alp1(orig);
|
| @@ -1282,7 +1282,7 @@ void SampleWindow::saveToPdf()
|
|
|
| SkCanvas* SampleWindow::beforeChildren(SkCanvas* canvas) {
|
| if (fSaveToPdf) {
|
| - const SkBitmap& bmp = canvas->getDevice()->accessBitmap(false);
|
| + const SkBitmap bmp = capture_bitmap(canvas);
|
| SkISize size = SkISize::Make(bmp.width(), bmp.height());
|
| SkPDFDevice* pdfDevice = new SkPDFDevice(size, size,
|
| canvas->getTotalMatrix());
|
| @@ -1308,15 +1308,6 @@ SkCanvas* SampleWindow::beforeChildren(SkCanvas* canvas) {
|
| return canvas;
|
| }
|
|
|
| -static void paint_rgn(const SkBitmap& bm, const SkIRect& r,
|
| - const SkRegion& rgn) {
|
| - SkCanvas canvas(bm);
|
| - SkRegion inval(rgn);
|
| -
|
| - inval.translate(r.fLeft, r.fTop);
|
| - canvas.clipRegion(inval);
|
| - canvas.drawColor(0xFFFF8080);
|
| -}
|
| #include "SkData.h"
|
| void SampleWindow::afterChildren(SkCanvas* orig) {
|
| if (fSaveToPdf) {
|
| @@ -1327,7 +1318,8 @@ void SampleWindow::afterChildren(SkCanvas* orig) {
|
| SkString name;
|
| name.printf("%s.pdf", this->getTitle());
|
| SkPDFDocument doc;
|
| - SkPDFDevice* device = static_cast<SkPDFDevice*>(fPdfCanvas->getDevice());
|
| + SkPDFDevice* device = NULL;//static_cast<SkPDFDevice*>(fPdfCanvas->getDevice());
|
| + SkASSERT(false);
|
| doc.appendPage(device);
|
| #ifdef SK_BUILD_FOR_ANDROID
|
| name.prepend("/sdcard/");
|
| @@ -1357,9 +1349,8 @@ void SampleWindow::afterChildren(SkCanvas* orig) {
|
| if (fRequestGrabImage) {
|
| fRequestGrabImage = false;
|
|
|
| - SkBaseDevice* device = orig->getDevice();
|
| - SkBitmap bmp;
|
| - if (device->accessBitmap(false).copyTo(&bmp, kN32_SkColorType)) {
|
| + SkBitmap bmp = capture_bitmap(orig);
|
| + if (!bmp.isNull()) {
|
| static int gSampleGrabCounter;
|
| SkString name;
|
| name.printf("sample_grab_%d.png", gSampleGrabCounter++);
|
| @@ -1395,19 +1386,6 @@ void SampleWindow::afterChildren(SkCanvas* orig) {
|
| if (fMeasureFPS && fMeasureFPS_StartTime) {
|
| fMeasureFPS_Time += SkTime::GetMSecs() - fMeasureFPS_StartTime;
|
| }
|
| -
|
| - // if ((fScrollTestX | fScrollTestY) != 0)
|
| - if (false) {
|
| - const SkBitmap& bm = orig->getDevice()->accessBitmap(true);
|
| - int dx = fScrollTestX * 7;
|
| - int dy = fScrollTestY * 7;
|
| - SkIRect r;
|
| - SkRegion inval;
|
| -
|
| - r.set(50, 50, 50+100, 50+100);
|
| - bm.scrollRect(&r, dx, dy, &inval);
|
| - paint_rgn(bm, r, inval);
|
| - }
|
| }
|
|
|
| void SampleWindow::beforeChild(SkView* child, SkCanvas* canvas) {
|
| @@ -2257,9 +2235,8 @@ void SampleView::draw(SkCanvas* canvas) {
|
| } else {
|
| SkGPipeWriter writer;
|
| SimplePC controller(canvas);
|
| - TiledPipeController tc(canvas->getDevice()->accessBitmap(false),
|
| - &SkImageDecoder::DecodeMemory,
|
| - &canvas->getTotalMatrix());
|
| + SkBitmap bitmap = capture_bitmap(canvas);
|
| + TiledPipeController tc(bitmap, &SkImageDecoder::DecodeMemory, &canvas->getTotalMatrix());
|
| SkGPipeController* pc;
|
| if (SkOSMenu::kMixedState == fPipeState) {
|
| pc = &tc;
|
|
|