void handle_static_action_clicked(Tile* tile, TileEvent* event, gpointer data) { AppShellData* app_data = (AppShellData*) data; MateDesktopItem* item = (MateDesktopItem*) g_object_get_data(G_OBJECT(tile), APP_ACTION_KEY); GSettings *settings; GApplication *app; if (event->type == TILE_EVENT_ACTIVATED_DOUBLE_CLICK) { return; } open_desktop_item_exec(item); settings = g_settings_new (CONTROL_CENTER_SCHEMA); if (g_settings_get_boolean(settings, EXIT_SHELL_ON_STATIC_ACTION)) { if (app_data->exit_on_close) { app=g_application_get_default(); g_application_quit(app); } else { hide_shell(app_data); } } g_object_unref(settings); }
static void open_hard_drive_tile (Tile * tile, TileEvent * event, TileAction * action) { MateDesktopItem *ditem; gchar *fb_ditem_id; fb_ditem_id = (gchar *) libslab_get_mateconf_value (SYSTEM_MONITOR_MATECONF_KEY); if (! fb_ditem_id) fb_ditem_id = g_strdup ("mate-system-monitor.desktop"); ditem = libslab_mate_desktop_item_new_from_unknown_id (fb_ditem_id); if (! open_desktop_item_exec (ditem)) g_warning ("open_hard_drive_tile: couldn't exec item\n"); mate_desktop_item_unref (ditem); g_free (fb_ditem_id); }