Example #1
0
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);
}