diff --git a/core_lib/src/canvaspainter.cpp b/core_lib/src/canvaspainter.cpp index ca63f3d0f..4dad6b9f5 100644 --- a/core_lib/src/canvaspainter.cpp +++ b/core_lib/src/canvaspainter.cpp @@ -300,16 +300,8 @@ void CanvasPainter::paintCurrentBitmapFrame(QPainter& painter, const QRect& blit if (isCurrentLayer && isDrawing) { - // Certain tools require being painted continuously, for example, the Polyline tool. - // The tiled buffer does not update the area outside which it paints, - // so in that case, in order to see the previously laid-down polyline stroke, - // the surrounding area must be drawn again before - // applying the new tiled output on top - - if (!blitRect.contains(mTiledBuffer->bounds()) || mOptions.bIgnoreCanvasBuffer) { - currentBitmapPainter.setCompositionMode(QPainter::CompositionMode_SourceOver); - currentBitmapPainter.drawImage(paintedImage->topLeft(), *paintedImage->image()); - } + currentBitmapPainter.setCompositionMode(QPainter::CompositionMode_SourceOver); + currentBitmapPainter.drawImage(paintedImage->topLeft(), *paintedImage->image()); const auto tiles = mTiledBuffer->tiles(); for (const Tile* tile : tiles) { diff --git a/core_lib/src/canvaspainter.h b/core_lib/src/canvaspainter.h index 99b90c6be..7f1d3c285 100644 --- a/core_lib/src/canvaspainter.h +++ b/core_lib/src/canvaspainter.h @@ -42,9 +42,6 @@ struct CanvasPainterOptions bool bThinLines = false; bool bOutlines = false; - /// When using a tool that can't rely on canvas buffer, - /// for example Polyline because we're continously clearing the surface - bool bIgnoreCanvasBuffer = false; LayerVisibility eLayerVisibility = LayerVisibility::RELATED; float fLayerVisibilityThreshold = 0.f; float scaling = 1.0f; diff --git a/core_lib/src/interface/scribblearea.cpp b/core_lib/src/interface/scribblearea.cpp index 3ff8e8dec..8b9be7c16 100644 --- a/core_lib/src/interface/scribblearea.cpp +++ b/core_lib/src/interface/scribblearea.cpp @@ -1198,7 +1198,6 @@ void ScribbleArea::prepCanvas(int frame) o.fLayerVisibilityThreshold = mPrefs->getFloat(SETTING::LAYER_VISIBILITY_THRESHOLD); o.scaling = mEditor->view()->scaling(); o.cmBufferBlendMode = mEditor->tools()->currentTool()->type() == ToolType::ERASER ? QPainter::CompositionMode_DestinationOut : QPainter::CompositionMode_SourceOver; - o.bIgnoreCanvasBuffer = currentTool()->type() == POLYLINE; OnionSkinPainterOptions onionSkinOptions; onionSkinOptions.enabledWhilePlaying = mPrefs->getInt(SETTING::ONION_WHILE_PLAYBACK);