8000 Replace gtk3 deprecated APIs that have simple replacements. · matplotlib/matplotlib@917bfbe · GitHub
[go: up one dir, main page]

Skip to content

Commit 917bfbe

Browse files
committed
Replace gtk3 deprecated APIs that have simple replacements.
- set_double_buffered (deprecated since gtk3.14) is unnecessary, gtk (even gtk2) defaults to being double-buffered (this line of code comes from the old gtk2 backend which used to disable double buffering). https://developer.gnome.org/gtk3/stable/GtkWidget.html#gtk-widget-set-double-buffered - gtk_window_get_pointer is deprecated since gtk3.0. https://developer.gnome.org/gdk3/stable/gdk3-Windows.html#gdk-window-get-pointer - get_window_size_request is deprecated since gtk3.0. Also inline add_widget, which is used exactly once. https://developer.gnome.org/gtk3/stable/GtkWidget.html#gtk-widget-size-request
1 parent ea68032 commit 917bfbe

File tree

1 file changed

+4
-9
lines changed

1 file changed

+4
-9
lines changed

lib/matplotlib/backends/backend_gtk3.py

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,6 @@ def __init__(self, figure):
124124

125125
self.set_events(self.__class__.event_mask)
126126

127-
self.set_double_buffered(True)
128127
self.set_can_focus(True)
129128

130129
renderer_init = _api.deprecate_method_override(
@@ -180,7 +179,7 @@ def key_release_event(self, widget, event):
180179

181180
def motion_notify_event(self, widget, event):
182181
if event.is_hint:
183-
t, x, y, state = event.window.get_pointer()
182+
t, x, y, state = event.window.get_device_position(event.device)
184183
else:
185184
x, y = event.x, event.y
186185

@@ -338,20 +337,16 @@ def __init__(self, canvas, num):
338337

339338
self.toolbar = self._get_toolbar()
340339

341-
def add_widget(child):
342-
child.show()
343-
self.vbox.pack_end(child, False, False, 0)
344-
size_request = child.size_request()
345-
return size_request.height
346-
347340
if self.toolmanager:
348341
backend_tools.add_tools_to_manager(self.toolmanager)
349342
if self.toolbar:
350343
backend_tools.add_tools_to_container(self.toolbar)
351344

352345
if self.toolbar is not None:
353346
self.toolbar.show()
354-
h += add_widget(self.toolbar)
347+
self.vbox.pack_end(self.toolbar, False, False, 0)
348+
min_size, nat_size = self.toolbar.get_preferred_size()
349+
h += nat_size.height
355350

356351
self.window.set_default_size(w, h)
357352

0 commit comments

Comments
 (0)
0