diff --git a/lib/matplotlib/backends/backend_qt5.py b/lib/matplotlib/backends/backend_qt5.py index 4c7c0194160d..79537c413939 100644 --- a/lib/matplotlib/backends/backend_qt5.py +++ b/lib/matplotlib/backends/backend_qt5.py @@ -240,7 +240,6 @@ def __init__(self, figure): self._dpi_ratio_prev = None self._draw_pending = False - self._erase_before_paint = False self._is_drawing = False self._draw_rect_callback = lambda painter: None @@ -491,7 +490,6 @@ def draw(self): return with cbook._setattr_cm(self, _is_drawing=True): super().draw() - self._erase_before_paint = True self.update() def draw_idle(self): diff --git a/lib/matplotlib/backends/backend_qt5agg.py b/lib/matplotlib/backends/backend_qt5agg.py index ae37afe0bdbb..eadb0138fa5c 100644 --- a/lib/matplotlib/backends/backend_qt5agg.py +++ b/lib/matplotlib/backends/backend_qt5agg.py @@ -38,10 +38,6 @@ def paintEvent(self, event): painter = QtGui.QPainter(self) - if self._erase_before_paint: - painter.eraseRect(self.rect()) - self._erase_before_paint = False - rect = event.rect() left = rect.left() top = rect.top() @@ -55,6 +51,10 @@ def paintEvent(self, event): reg = self.copy_from_bbox(bbox) buf = cbook._unmultiplied_rgba8888_to_premultiplied_argb32( memoryview(reg)) + + # clear the widget canvas + painter.eraseRect(rect) + qimage = QtGui.QImage(buf, buf.shape[1], buf.shape[0], QtGui.QImage.Format_ARGB32_Premultiplied) if hasattr(qimage, 'setDevicePixelRatio'): diff --git a/lib/matplotlib/backends/backend_qt5cairo.py b/lib/matplotlib/backends/backend_qt5cairo.py index bea4f6069c33..5a38a80864be 100644 --- a/lib/matplotlib/backends/backend_qt5cairo.py +++ b/lib/matplotlib/backends/backend_qt5cairo.py @@ -37,9 +37,7 @@ def paintEvent(self, event): # Not available on Qt4 or some older Qt5. qimage.setDevicePixelRatio(dpi_ratio) painter = QtGui.QPainter(self) - if self._erase_before_paint: - painter.eraseRect(self.rect()) - self._erase_before_paint = False + painter.eraseRect(event.rect()) painter.drawImage(0, 0, qimage) self._draw_rect_callback(painter) painter.end() pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy