summaryrefslogtreecommitdiff
path: root/libs/hwui/SkiaCanvas.cpp
diff options
context:
space:
mode:
author Alec Mouri <alecmouri@google.com> 2022-09-08 00:17:03 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2022-09-08 00:17:03 +0000
commit4432aa6283b5249a49e26f72d2fd32af81df8d0c (patch)
tree189f39c96b5fde4b44bc08e4eb97dd0f1bd64ae3 /libs/hwui/SkiaCanvas.cpp
parentb53d5b3980c65e0dddfb430768d868a0230f797a (diff)
parent914e75086755f7be427d2b6a1ed96662a0a7049e (diff)
Merge "Support alpha for SurfaceView"
Diffstat (limited to 'libs/hwui/SkiaCanvas.cpp')
-rw-r--r--libs/hwui/SkiaCanvas.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/libs/hwui/SkiaCanvas.cpp b/libs/hwui/SkiaCanvas.cpp
index 397975dcb78f..473afbd2aa2f 100644
--- a/libs/hwui/SkiaCanvas.cpp
+++ b/libs/hwui/SkiaCanvas.cpp
@@ -18,6 +18,7 @@
#include "CanvasProperty.h"
#include "NinePatchUtils.h"
+#include "SkBlendMode.h"
#include "VectorDrawable.h"
#include "hwui/Bitmap.h"
#include "hwui/MinikinUtils.h"
@@ -251,10 +252,11 @@ const SkiaCanvas::SaveRec* SkiaCanvas::currentSaveRec() const {
return (rec && rec->saveCount == currentSaveCount) ? rec : nullptr;
}
-void SkiaCanvas::punchHole(const SkRRect& rect) {
+void SkiaCanvas::punchHole(const SkRRect& rect, float alpha) {
SkPaint paint = SkPaint();
- paint.setColor(0);
- paint.setBlendMode(SkBlendMode::kClear);
+ paint.setColor(SkColors::kBlack);
+ paint.setAlphaf(alpha);
+ paint.setBlendMode(SkBlendMode::kDstOut);
mCanvas->drawRRect(rect, paint);
}