pygtk: determine key is a modifier

gtk, pygtk, python, user-interface

Solution

If your version of GTK+/PyGTK is recent enough, key events have a `is_modifier` attribute. It's not documented in the PyGTK reference, but it's in the GDK API documentation and is exposed through PyGTK. It was added in GDK 2.10.

Problem

I've got key-press-event handler and i need to determine which kind of key was pressed: modifier or not? It's not in event.state, because this field works only when modifier was pressed with something else, but i need this for single key (i.e. simply pressing control or alt, ...).

Original source