Skip to content

Commit 54689d7

Browse files
committed
Trigger event loop after setting cursor.
1 parent 42de0e8 commit 54689d7

File tree

5 files changed

+9
-1
lines changed

5 files changed

+9
-1
lines changed

lib/matplotlib/backend_bases.py

+5
Original file line numberDiff line numberDiff line change
@@ -3201,6 +3201,11 @@ def save_figure(self, *args):
32013201

32023202
def set_cursor(self, cursor):
32033203
"""Set the current cursor to one of the :class:`Cursors` enums values.
3204+
3205+
If required by the backend, this method should trigger an update in
3206+
the backend event loop after the cursor is set, as this method may be
3207+
called e.g. before a long-running task during which the GUI is not
3208+
updated.
32043209
"""
32053210

32063211
def update(self):

lib/matplotlib/backends/backend_gtk.py

+1
Original file line numberDiff line numberDiff line change
@@ -624,6 +624,7 @@ def set_message(self, s):
624624

625625
def set_cursor(self, cursor):
626626
self.canvas.window.set_cursor(cursord[cursor])
627+
gtk.main_iteration()
627628

628629
def release(self, event):
629630
try: del self._pixmapBack

lib/matplotlib/backends/backend_gtk3.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -500,7 +500,7 @@ def set_message(self, s):
500500

501501
def set_cursor(self, cursor):
502502
self.canvas.get_property("window").set_cursor(cursord[cursor])
503-
#self.canvas.set_cursor(cursord[cursor])
503+
Gtk.main_iteration()
504504

505505
def release(self, event):
506506
try: del self._pixmapBack

lib/matplotlib/backends/backend_tkagg.py

+1
Original file line numberDiff line numberDiff line change
@@ -698,6 +698,7 @@ def release(self, event):
698698

699699
def set_cursor(self, cursor):
700700
self.window.configure(cursor=cursord[cursor])
701+
self.window.update_idletasks()
701702

702703
def _Button(self, text, file, command, extension='.gif'):
703704
img_file = os.path.join(

lib/matplotlib/backends/backend_wx.py

+1
Original file line numberDiff line numberDiff line change
@@ -1595,6 +1595,7 @@ def save_figure(self, *args):
15951595
def set_cursor(self, cursor):
15961596
cursor = wxc.Cursor(cursord[cursor])
15971597
self.canvas.SetCursor(cursor)
1598+
self.canvas.Update()
15981599

15991600
def release(self, event):
16001601
try:

0 commit comments

Comments
 (0)