GtkHotkeyListener

GtkHotkeyListener — Abstract base class providing platform independent hotkey listening capabilities

Synopsis




                    GtkHotkeyListenerPrivate;
                    GtkHotkeyListener;
GtkHotkeyListener*  gtk_hotkey_listener_get_default     (void);
void                gtk_hotkey_listener_activated       (GtkHotkeyListener *self,
                                                         GtkHotkeyInfo *hotkey,
                                                         guint event_time);
gboolean            gtk_hotkey_listener_bind_hotkey     (GtkHotkeyListener *self,
                                                         GtkHotkeyInfo *hotkey,
                                                         GError **error);
gboolean            gtk_hotkey_listener_unbind_hotkey   (GtkHotkeyListener *self,
                                                         GtkHotkeyInfo *hotkey,
                                                         GError **error);

Object Hierarchy


  GObject
   +----GtkHotkeyListener
         +----GtkHotkeyX11Listener

Signals


  "activated"                                      : Run Last

Description

GtkHotkeyListener is an abstract base class for implementing platform specific hotkey listeners - ie objects able to register when the user enters a certain keyboard combination, regardless of which window has focus.

Unless you have very special needs you should use the factory method gtk_hotkey_listener_get_default() to get a reference to a GtkHotkeyListener matching your platform. Although most applications will not need.

This class is part of the advanced API of GtkHotkey. Applications will not normally use a GtkHotkeyListener directly, since gtk_hotkey_info_bind() will call into gtk_hotkey_listener_bind() on the default listener for you.

Details

GtkHotkeyListenerPrivate

typedef struct _GtkHotkeyListenerPrivate GtkHotkeyListenerPrivate;


GtkHotkeyListener

typedef struct _GtkHotkeyListener GtkHotkeyListener;


gtk_hotkey_listener_get_default ()

GtkHotkeyListener*  gtk_hotkey_listener_get_default     (void);

Static factory method to get a reference to the default GtkHotkeyListener for the current platform.

FIXME: Currently hardcoded to X11

Returns : A new reference to the default hotkey listener for the platform

gtk_hotkey_listener_activated ()

void                gtk_hotkey_listener_activated       (GtkHotkeyListener *self,
                                                         GtkHotkeyInfo *hotkey,
                                                         guint event_time);

Emit the GtkHotkeyInfo::activated signal on a hotkey listener.

self : GtkHotkeyListener to emit the GtkHotkeyListener::activated signal
hotkey : The GtkHotkeyInfo the event happened for
event_time : The system time the event happened on. This is useful for applications to pass through focus stealing prevention when mapping windows

gtk_hotkey_listener_bind_hotkey ()

gboolean            gtk_hotkey_listener_bind_hotkey     (GtkHotkeyListener *self,
                                                         GtkHotkeyInfo *hotkey,
                                                         GError **error);

This method must be implemented by any child class of GtkHotkeyListener.

Start listening for keypresses matching the signature of hotkey. This method is notmally accessed indirectly by calling gtk_hotkey_info_bind().

self : The hotkey listener on which to bind a hotkey
hotkey : The GtkHotkeyInfo to bind. See GtkHotkeyInfo:signature
error : GError in which to store errors, or NULL to ignore
Returns : TRUE if the binding succeeded, or FALSE otherwise. In case of runtime errors error will be set

gtk_hotkey_listener_unbind_hotkey ()

gboolean            gtk_hotkey_listener_unbind_hotkey   (GtkHotkeyListener *self,
                                                         GtkHotkeyInfo *hotkey,
                                                         GError **error);

This method must be implemented by any child class of GtkHotkeyListener.

Stop listening for keypresses matching the signature of hotkey. This method is notmally accessed indirectly by calling gtk_hotkey_info_unbind().

self : The hotkey listener on which to bind a hotkey
hotkey : The GtkHotkeyInfo to bind. See GtkHotkeyInfo:signature
error : GError in which to store errors, or NULL to ignore
Returns : TRUE if the binding has been removed, or FALSE otherwise. In case of runtime errors error will be set

Signal Details

The "activated" signal

void                user_function                      (GtkHotkeyListener *listener,
                                                        GtkHotkeyInfo     *hotkey,
                                                        guint              event_time,
                                                        gpointer           user_data)       : Run Last

Emitted when a registered hotkey has been activated.

listener : The object that emitted the signal
hotkey : a GtkHotkeyInfo for the hotkey that was activated
event_time : Time for event triggering the keypress. This is mainly used to pass to window management functions to pass through focus stealing prevention
user_data : user data set when the signal handler was connected.

See Also

GtkHotkeyRegistry, GtkHotkeyInfo