Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5b17c6ca authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Add canvas#drawRegion" into main

parents a14d219c 5087ae3b
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -15750,6 +15750,7 @@ package android.graphics {
    method public void drawRect(@NonNull android.graphics.RectF, @NonNull android.graphics.Paint);
    method public void drawRect(@NonNull android.graphics.Rect, @NonNull android.graphics.Paint);
    method public void drawRect(float, float, float, float, @NonNull android.graphics.Paint);
    method @FlaggedApi("com.android.graphics.hwui.flags.draw_region") public void drawRegion(@NonNull android.graphics.Region, @NonNull android.graphics.Paint);
    method public void drawRenderNode(@NonNull android.graphics.RenderNode);
    method public void drawRoundRect(@NonNull android.graphics.RectF, float, float, @NonNull android.graphics.Paint);
    method public void drawRoundRect(float, float, float, float, float, float, @NonNull android.graphics.Paint);
+5 −0
Original line number Diff line number Diff line
@@ -333,6 +333,11 @@ public abstract class BaseCanvas {
        nDrawPath(mNativeCanvasWrapper, path.readOnlyNI(), paint.getNativeInstance());
    }

    public void drawRegion(@NonNull Region region, @NonNull Paint paint) {
        throwIfHasHwFeaturesInSwMode(paint);
        nDrawRegion(mNativeCanvasWrapper, region.mNativeRegion, paint.getNativeInstance());
    }

    public void drawPoint(float x, float y, @NonNull Paint paint) {
        throwIfHasHwFeaturesInSwMode(paint);
        nDrawPoint(mNativeCanvasWrapper, x, y, paint.getNativeInstance());
+5 −0
Original line number Diff line number Diff line
@@ -289,6 +289,11 @@ public class BaseRecordingCanvas extends Canvas {
        nDrawPath(mNativeCanvasWrapper, path.readOnlyNI(), paint.getNativeInstance());
    }

    @Override
    public void drawRegion(@NonNull Region region, @NonNull Paint paint) {
        nDrawRegion(mNativeCanvasWrapper, region.mNativeRegion, paint.getNativeInstance());
    }

    @Override
    public final void drawPicture(@NonNull Picture picture) {
        picture.endRecording();
+11 −0
Original line number Diff line number Diff line
@@ -1930,6 +1930,17 @@ public class Canvas extends BaseCanvas {
        super.drawPath(path, paint);
    }

    /**
     * Draws the given region using the given paint.
     *
     * @param region The region to be drawn
     * @param paint The paint used to draw the region
     */
    @FlaggedApi(Flags.FLAG_DRAW_REGION)
    public void drawRegion(@NonNull Region region, @NonNull Paint paint) {
        super.drawRegion(region, paint);
    }

    /**
     * Helper for drawPoints() for drawing a single point.
     */
+7 −0
Original line number Diff line number Diff line
@@ -76,3 +76,10 @@ flag {
  description: "Automatically animate all changes in HDR headroom"
  bug: "314810174"
}

flag {
  name: "draw_region"
  namespace: "core_graphics"
  description: "Add canvas#drawRegion API"
  bug: "318612129"
}