summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorMangesh Ghiware <mghiware@google.com>2012-03-29 14:14:34 -0700
committerMangesh Ghiware <mghiware@google.com>2012-03-29 14:14:34 -0700
commit9951c35e2c4732577794299a1a49eb8ff613e875 (patch)
treec114ae1cfd2e3205556aa6ac266b059ed5e3d743 /Source
parent304991de60a64b43bffd0c910655ee4ef1e9683c (diff)
downloadexternal_webkit-9951c35e2c4732577794299a1a49eb8ff613e875.zip
external_webkit-9951c35e2c4732577794299a1a49eb8ff613e875.tar.gz
external_webkit-9951c35e2c4732577794299a1a49eb8ff613e875.tar.bz2
Clip canvas to layer content on a draw.
Bug: 6150903 Also, fix the visual indicator box coordinates to display right and bottom edges. Change-Id: I269f4dd3ae55eed77d9cbe67950c28ce1c789a51
Diffstat (limited to 'Source')
-rw-r--r--Source/WebCore/platform/graphics/android/LayerAndroid.cpp8
-rw-r--r--Source/WebCore/platform/graphics/android/PictureLayerContent.cpp2
-rw-r--r--Source/WebCore/platform/graphics/android/PictureSetLayerContent.cpp3
3 files changed, 9 insertions, 4 deletions
diff --git a/Source/WebCore/platform/graphics/android/LayerAndroid.cpp b/Source/WebCore/platform/graphics/android/LayerAndroid.cpp
index 167f7e7..b40e00a 100644
--- a/Source/WebCore/platform/graphics/android/LayerAndroid.cpp
+++ b/Source/WebCore/platform/graphics/android/LayerAndroid.cpp
@@ -909,10 +909,10 @@ void LayerAndroid::contentDraw(SkCanvas* canvas, PaintStyle style)
canvas->drawLine(0, 0, w, h, paint);
canvas->drawLine(0, h, w, 0, paint);
- canvas->drawLine(0, 0, 0, h, paint);
- canvas->drawLine(0, h, w, h, paint);
- canvas->drawLine(w, h, w, 0, paint);
- canvas->drawLine(w, 0, 0, 0, paint);
+ canvas->drawLine(0, 0, 0, h-1, paint);
+ canvas->drawLine(0, h-1, w-1, h-1, paint);
+ canvas->drawLine(w-1, h-1, w-1, 0, paint);
+ canvas->drawLine(w-1, 0, 0, 0, paint);
}
if (m_fixedPosition)
diff --git a/Source/WebCore/platform/graphics/android/PictureLayerContent.cpp b/Source/WebCore/platform/graphics/android/PictureLayerContent.cpp
index 6beed16..4398146 100644
--- a/Source/WebCore/platform/graphics/android/PictureLayerContent.cpp
+++ b/Source/WebCore/platform/graphics/android/PictureLayerContent.cpp
@@ -91,6 +91,8 @@ void PictureLayerContent::draw(SkCanvas* canvas)
return;
android::Mutex::Autolock lock(m_drawLock);
+ SkRect r = SkRect::MakeWH(width(), height());
+ canvas->clipRect(r);
canvas->drawPicture(*m_picture);
}
diff --git a/Source/WebCore/platform/graphics/android/PictureSetLayerContent.cpp b/Source/WebCore/platform/graphics/android/PictureSetLayerContent.cpp
index c2c008b..8b72b0a 100644
--- a/Source/WebCore/platform/graphics/android/PictureSetLayerContent.cpp
+++ b/Source/WebCore/platform/graphics/android/PictureSetLayerContent.cpp
@@ -1,6 +1,7 @@
#include "config.h"
#include "PictureSetLayerContent.h"
+#include "SkCanvas.h"
#include "SkPicture.h"
namespace WebCore {
@@ -21,6 +22,8 @@ void PictureSetLayerContent::draw(SkCanvas* canvas)
return;
android::Mutex::Autolock lock(m_drawLock);
+ SkRect r = SkRect::MakeWH(width(), height());
+ canvas->clipRect(r);
m_pictureSet.draw(canvas);
}