diff --git a/lib/matplotlib/backends/backend_gtk3.py b/lib/matplotlib/backends/backend_gtk3.py index e9e78b43e213..3f769a622586 100644 --- a/lib/matplotlib/backends/backend_gtk3.py +++ b/lib/matplotlib/backends/backend_gtk3.py @@ -124,7 +124,6 @@ def __init__(self, figure): self.set_events(self.__class__.event_mask) - self.set_double_buffered(True) self.set_can_focus(True) renderer_init = _api.deprecate_method_override( @@ -180,7 +179,7 @@ def key_release_event(self, widget, event): def motion_notify_event(self, widget, event): if event.is_hint: - t, x, y, state = event.window.get_pointer() + t, x, y, state = event.window.get_device_position(event.device) else: x, y = event.x, event.y @@ -338,12 +337,6 @@ def __init__(self, canvas, num): self.toolbar = self._get_toolbar() - def add_widget(child): - child.show() - self.vbox.pack_end(child, False, False, 0) - size_request = child.size_request() - return size_request.height - if self.toolmanager: backend_tools.add_tools_to_manager(self.toolmanager) if self.toolbar: @@ -351,7 +344,9 @@ def add_widget(child): if self.toolbar is not None: self.toolbar.show() - h += add_widget(self.toolbar) + self.vbox.pack_end(self.toolbar, False, False, 0) + min_size, nat_size = self.toolbar.get_preferred_size() + h += nat_size.height self.window.set_default_size(w, h)