From a99a4c773fdcdf1f3de37ac2ca84851af5774cf9 Mon Sep 17 00:00:00 2001 From: Eric Firing Date: Fri, 24 May 2019 14:17:20 -1000 Subject: [PATCH] Don't set missing history buttons. Closes #14318. --- lib/matplotlib/backends/backend_gtk3.py | 6 ++++-- lib/matplotlib/backends/backend_qt5.py | 6 ++++-- lib/matplotlib/backends/backend_wx.py | 6 ++++-- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/lib/matplotlib/backends/backend_gtk3.py b/lib/matplotlib/backends/backend_gtk3.py index 147d941ad29e..4fb63b17cbb5 100644 --- a/lib/matplotlib/backends/backend_gtk3.py +++ b/lib/matplotlib/backends/backend_gtk3.py @@ -607,8 +607,10 @@ def _get_canvas(self, fig): def set_history_buttons(self): can_backward = self._nav_stack._pos > 0 can_forward = self._nav_stack._pos < len(self._nav_stack._elements) - 1 - self._gtk_ids['Back'].set_sensitive(can_backward) - self._gtk_ids['Forward'].set_sensitive(can_forward) + if 'Back' in self._gtk_ids: + self._gtk_ids['Back'].set_sensitive(can_backward) + if 'Forward' in self._gtk_ids: + self._gtk_ids['Forward'].set_sensitive(can_forward) @cbook.deprecated("3.1") diff --git a/lib/matplotlib/backends/backend_qt5.py b/lib/matplotlib/backends/backend_qt5.py index 7126d3d7c9c0..96badf0f5cf6 100644 --- a/lib/matplotlib/backends/backend_qt5.py +++ b/lib/matplotlib/backends/backend_qt5.py @@ -832,8 +832,10 @@ def save_figure(self, *args): def set_history_buttons(self): can_backward = self._nav_stack._pos > 0 can_forward = self._nav_stack._pos < len(self._nav_stack._elements) - 1 - self._actions['back'].setEnabled(can_backward) - self._actions['forward'].setEnabled(can_forward) + if 'back' in self._actions: + self._actions['back'].setEnabled(can_backward) + if 'forward' in self._actions: + self._actions['forward'].setEnabled(can_forward) class SubplotToolQt(UiSubplotTool): diff --git a/lib/matplotlib/backends/backend_wx.py b/lib/matplotlib/backends/backend_wx.py index 45b86846f353..b34082879e79 100644 --- a/lib/matplotlib/backends/backend_wx.py +++ b/lib/matplotlib/backends/backend_wx.py @@ -1556,8 +1556,10 @@ def set_message(self, s): def set_history_buttons(self): can_backward = self._nav_stack._pos > 0 can_forward = self._nav_stack._pos < len(self._nav_stack._elements) - 1 - self.EnableTool(self.wx_ids['Back'], can_backward) - self.EnableTool(self.wx_ids['Forward'], can_forward) + if 'Back' in self.wx_ids: + self.EnableTool(self.wx_ids['Back'], can_backward) + if 'Forward' in self.wx_ids: + self.EnableTool(self.wx_ids['Forward'], can_forward) class StatusBarWx(wx.StatusBar):