Loading libs/hwui/SkiaCanvas.h +1 −2 Original line number Diff line number Diff line Loading @@ -53,9 +53,8 @@ public: LOG_ALWAYS_FATAL("SkiaCanvas cannot be reset as a recording canvas"); } virtual uirenderer::DisplayList finishRecording() override { virtual void finishRecording(uirenderer::RenderNode*) override { LOG_ALWAYS_FATAL("SkiaCanvas does not produce a DisplayList"); return uirenderer::DisplayList(); } virtual void enableZ(bool enableZ) override { LOG_ALWAYS_FATAL("SkiaCanvas does not support enableZ"); Loading libs/hwui/hwui/Canvas.h +1 −2 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ #include <SaveFlags.h> #include <androidfw/ResourceTypes.h> #include "DisplayList.h" #include "Properties.h" #include "utils/Macros.h" Loading Loading @@ -118,7 +117,7 @@ public: virtual void resetRecording(int width, int height, uirenderer::RenderNode* renderNode = nullptr) = 0; [[nodiscard]] virtual uirenderer::DisplayList finishRecording() = 0; virtual void finishRecording(uirenderer::RenderNode* destination) = 0; virtual void enableZ(bool enableZ) = 0; bool isHighContrastText() const { return uirenderer::Properties::enableHighContrastText; } Loading libs/hwui/jni/android_graphics_DisplayListCanvas.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -102,7 +102,7 @@ static void android_view_DisplayListCanvas_finishRecording( CRITICAL_JNI_PARAMS_COMMA jlong canvasPtr, jlong renderNodePtr) { Canvas* canvas = reinterpret_cast<Canvas*>(canvasPtr); RenderNode* renderNode = reinterpret_cast<RenderNode*>(renderNodePtr); renderNode->setStagingDisplayList(canvas->finishRecording()); canvas->finishRecording(renderNode); } static void android_view_DisplayListCanvas_drawRenderNode(CRITICAL_JNI_PARAMS_COMMA jlong canvasPtr, jlong renderNodePtr) { Loading libs/hwui/pipeline/skia/SkiaRecordingCanvas.cpp +6 −2 Original line number Diff line number Diff line Loading @@ -55,11 +55,15 @@ void SkiaRecordingCanvas::initDisplayList(uirenderer::RenderNode* renderNode, in SkiaCanvas::reset(&mRecorder); } uirenderer::DisplayList SkiaRecordingCanvas::finishRecording() { std::unique_ptr<SkiaDisplayList> SkiaRecordingCanvas::finishRecording() { // close any existing chunks if necessary enableZ(false); mRecorder.restoreToCount(1); return uirenderer::DisplayList(std::move(mDisplayList)); return std::move(mDisplayList); } void SkiaRecordingCanvas::finishRecording(uirenderer::RenderNode* destination) { destination->setStagingDisplayList(uirenderer::DisplayList(finishRecording())); } // ---------------------------------------------------------------------------- Loading libs/hwui/pipeline/skia/SkiaRecordingCanvas.h +3 −2 Original line number Diff line number Diff line Loading @@ -39,11 +39,12 @@ public: } virtual void resetRecording(int width, int height, uirenderer::RenderNode* renderNode) override { uirenderer::RenderNode* renderNode = nullptr) override { initDisplayList(renderNode, width, height); } virtual uirenderer::DisplayList finishRecording() override; virtual void finishRecording(uirenderer::RenderNode* destination) override; std::unique_ptr<SkiaDisplayList> finishRecording(); virtual void drawBitmap(Bitmap& bitmap, float left, float top, const Paint* paint) override; virtual void drawBitmap(Bitmap& bitmap, const SkMatrix& matrix, const Paint* paint) override; Loading Loading
libs/hwui/SkiaCanvas.h +1 −2 Original line number Diff line number Diff line Loading @@ -53,9 +53,8 @@ public: LOG_ALWAYS_FATAL("SkiaCanvas cannot be reset as a recording canvas"); } virtual uirenderer::DisplayList finishRecording() override { virtual void finishRecording(uirenderer::RenderNode*) override { LOG_ALWAYS_FATAL("SkiaCanvas does not produce a DisplayList"); return uirenderer::DisplayList(); } virtual void enableZ(bool enableZ) override { LOG_ALWAYS_FATAL("SkiaCanvas does not support enableZ"); Loading
libs/hwui/hwui/Canvas.h +1 −2 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ #include <SaveFlags.h> #include <androidfw/ResourceTypes.h> #include "DisplayList.h" #include "Properties.h" #include "utils/Macros.h" Loading Loading @@ -118,7 +117,7 @@ public: virtual void resetRecording(int width, int height, uirenderer::RenderNode* renderNode = nullptr) = 0; [[nodiscard]] virtual uirenderer::DisplayList finishRecording() = 0; virtual void finishRecording(uirenderer::RenderNode* destination) = 0; virtual void enableZ(bool enableZ) = 0; bool isHighContrastText() const { return uirenderer::Properties::enableHighContrastText; } Loading
libs/hwui/jni/android_graphics_DisplayListCanvas.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -102,7 +102,7 @@ static void android_view_DisplayListCanvas_finishRecording( CRITICAL_JNI_PARAMS_COMMA jlong canvasPtr, jlong renderNodePtr) { Canvas* canvas = reinterpret_cast<Canvas*>(canvasPtr); RenderNode* renderNode = reinterpret_cast<RenderNode*>(renderNodePtr); renderNode->setStagingDisplayList(canvas->finishRecording()); canvas->finishRecording(renderNode); } static void android_view_DisplayListCanvas_drawRenderNode(CRITICAL_JNI_PARAMS_COMMA jlong canvasPtr, jlong renderNodePtr) { Loading
libs/hwui/pipeline/skia/SkiaRecordingCanvas.cpp +6 −2 Original line number Diff line number Diff line Loading @@ -55,11 +55,15 @@ void SkiaRecordingCanvas::initDisplayList(uirenderer::RenderNode* renderNode, in SkiaCanvas::reset(&mRecorder); } uirenderer::DisplayList SkiaRecordingCanvas::finishRecording() { std::unique_ptr<SkiaDisplayList> SkiaRecordingCanvas::finishRecording() { // close any existing chunks if necessary enableZ(false); mRecorder.restoreToCount(1); return uirenderer::DisplayList(std::move(mDisplayList)); return std::move(mDisplayList); } void SkiaRecordingCanvas::finishRecording(uirenderer::RenderNode* destination) { destination->setStagingDisplayList(uirenderer::DisplayList(finishRecording())); } // ---------------------------------------------------------------------------- Loading
libs/hwui/pipeline/skia/SkiaRecordingCanvas.h +3 −2 Original line number Diff line number Diff line Loading @@ -39,11 +39,12 @@ public: } virtual void resetRecording(int width, int height, uirenderer::RenderNode* renderNode) override { uirenderer::RenderNode* renderNode = nullptr) override { initDisplayList(renderNode, width, height); } virtual uirenderer::DisplayList finishRecording() override; virtual void finishRecording(uirenderer::RenderNode* destination) override; std::unique_ptr<SkiaDisplayList> finishRecording(); virtual void drawBitmap(Bitmap& bitmap, float left, float top, const Paint* paint) override; virtual void drawBitmap(Bitmap& bitmap, const SkMatrix& matrix, const Paint* paint) override; Loading