@@ -172,7 +172,7 @@ def new_figure_manager_given_figure(num, figure):
172
172
173
173
class TimerQT (TimerBase ):
174
174
'''
175
- Subclass of :class:`backend_bases.TimerBase` that uses Qt4 timer events.
175
+ Subclass of :class:`backend_bases.TimerBase` that uses Qt timer events.
176
176
177
177
Attributes:
178
178
* interval: The time between timer events in milliseconds. Default
@@ -242,6 +242,9 @@ def __init__(self, figure):
242
242
w , h = self .get_width_height ()
243
243
self .resize (w , h )
244
244
245
+ # Key auto-repeat enabled by default
246
+ self ._keyautorepeat = True
247
+
245
248
def enterEvent (self , event ):
246
249
FigureCanvasBase .enter_notify_event (self , guiEvent = event )
247
250
@@ -322,6 +325,17 @@ def keyReleaseEvent(self, event):
322
325
if DEBUG :
323
326
print ('key release' , key )
324
327
328
+ @property
329
+ def keyAutoRepeat (self ):
330
+ """
331
+ If True, enable auto-repeat for key events.
332
+ """
333
+ return self ._keyautorepeat
334
+
335
+ @keyAutoRepeat .setter
336
+ def keyAutoRepeat (self , val ):
337
+ self ._keyautorepeat = bool (val )
338
+
325
339
def resizeEvent (self , event ):
326
340
w = event .size ().width ()
327
341
h = event .size ().height ()
@@ -344,7 +358,7 @@ def minumumSizeHint(self):
344
358
return QtCore .QSize (10 , 10 )
345
359
346
360
def _get_key (self , event ):
347
- if event .isAutoRepeat ():
361
+ if not self . _keyautorepeat and event .isAutoRepeat ():
348
362
return None
349
363
350
364
event_key = event .key ()
0 commit comments