diff options
Diffstat (limited to 'plugins/media-keys/msd-media-keys-manager.c')
-rw-r--r-- | plugins/media-keys/msd-media-keys-manager.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/plugins/media-keys/msd-media-keys-manager.c b/plugins/media-keys/msd-media-keys-manager.c index fc9bee7..a68835f 100644 --- a/plugins/media-keys/msd-media-keys-manager.c +++ b/plugins/media-keys/msd-media-keys-manager.c @@ -543,6 +543,22 @@ do_calculator_action (MsdMediaKeysManager *manager) } static void +do_messenger_action (MsdMediaKeysManager *manager) +{ + GSettings *settings; + char *messenger; + + settings = g_settings_new ("org.mate.applications-messenger"); + messenger = g_settings_get_string (settings, "exec"); + + if (messenger) + execute (manager, messenger, FALSE, FALSE); + + g_free (messenger); + g_object_unref (settings); +} + +static void do_shutdown_action (MsdMediaKeysManager *manager) { execute (manager, "mate-session-save --shutdown-dialog", FALSE, FALSE); @@ -1263,6 +1279,9 @@ do_action (MsdMediaKeysManager *manager, case CALCULATOR_KEY: do_calculator_action (manager); break; + case MESSENGER_KEY: + do_messenger_action (manager); + break; case PLAY_KEY: return do_multimedia_player_action (manager, "Play"); case PAUSE_KEY: |