Diffstat (limited to 'noncore/graphics/drawpad/erasedrawmode.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/graphics/drawpad/erasedrawmode.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/noncore/graphics/drawpad/erasedrawmode.cpp b/noncore/graphics/drawpad/erasedrawmode.cpp index 990cecb..0e585cc 100644 --- a/noncore/graphics/drawpad/erasedrawmode.cpp +++ b/noncore/graphics/drawpad/erasedrawmode.cpp @@ -63,6 +63,12 @@ void EraseDrawMode::mouseMoveEvent(QMouseEvent* e) r.setRight(r.right() + m_pDrawPad->pen().width()); r.setBottom(r.bottom() + m_pDrawPad->pen().width()); - bitBlt(m_pDrawPadCanvas, r.x(), r.y(), m_pDrawPadCanvas->currentPage(), r.x(), r.y(), r.width(), r.height()); + QRect viewportRect(m_pDrawPadCanvas->contentsToViewport(r.topLeft()), + m_pDrawPadCanvas->contentsToViewport(r.bottomRight())); + + bitBlt(m_pDrawPadCanvas->viewport(), viewportRect.x(), viewportRect.y(), + m_pDrawPadCanvas->currentPage(), r.x(), r.y(), r.width(), r.height()); + + m_pDrawPadCanvas->viewport()->update(viewportRect); } } |