Skip to content

Commit 02870bb

Browse files
committed
BUG: in qt4 backend, ignore auto-repeat keyboard events.
This makes constrained zoom/pan work. I don't see any need to support keyboard auto-repeat in mpl.
1 parent a74cb58 commit 02870bb

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

CHANGELOG

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
2011-04-17 Disable keyboard auto-repeat in qt4 backend by ignoring
2+
key events resulting from auto-repeat. This makes
3+
constrained zoom/pan work. - EF
4+
15
2011-04-03 Fixed broken pick interface to AsteriskCollection objects
26
used by scatter. - EF
37

lib/matplotlib/backends/backend_qt4.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -207,11 +207,15 @@ def wheelEvent( self, event ):
207207

208208
def keyPressEvent( self, event ):
209209
key = self._get_key( event )
210+
if key is None:
211+
return
210212
FigureCanvasBase.key_press_event( self, key )
211213
if DEBUG: print 'key press', key
212214

213215
def keyReleaseEvent( self, event ):
214216
key = self._get_key(event)
217+
if key is None:
218+
return
215219
FigureCanvasBase.key_release_event( self, key )
216220
if DEBUG: print 'key release', key
217221

@@ -236,6 +240,8 @@ def minumumSizeHint( self ):
236240
return QtCore.QSize( 10, 10 )
237241

238242
def _get_key( self, event ):
243+
if event.isAutoRepeat():
244+
return None
239245
if event.key() < 256:
240246
key = str(event.text())
241247
elif event.key() in self.keyvald:

0 commit comments

Comments
 (0)