diff --git a/lib/matplotlib/backend_bases.py b/lib/matplotlib/backend_bases.py index 9909634b89e2..5d0f8b728009 100644 --- a/lib/matplotlib/backend_bases.py +++ b/lib/matplotlib/backend_bases.py @@ -2149,6 +2149,15 @@ def print_figure(self, filename, dpi=None, facecolor=None, edgecolor=None, """ self._is_saving = True + # Remove the figure manager, if any, to avoid resizing the GUI widget. + # Having *no* manager and a *None* manager are currently different (see + # Figure.show); should probably be normalized to None at some point. + _no_manager = object() + if hasattr(self, 'manager'): + manager = self.manager + del self.manager + else: + manager = _no_manager if format is None: # get format from filename, or from backend's default filetype @@ -2267,8 +2276,9 @@ def print_figure(self, filename, dpi=None, facecolor=None, edgecolor=None, self.figure.set_facecolor(origfacecolor) self.figure.set_edgecolor(origedgecolor) self.figure.set_canvas(self) + if manager is not _no_manager: + self.manager = manager self._is_saving = False - #self.figure.canvas.draw() ## seems superfluous return result @classmethod 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