Esempio n. 1
0
static void show_desktop_applet_realized(MatePanelApplet* applet, gpointer data)
{
	ShowDesktopData* sdd;
	GdkScreen* screen;

	sdd = (ShowDesktopData*) data;

	if (sdd->matewnck_screen != NULL)
		g_signal_handlers_disconnect_by_func(sdd->matewnck_screen, show_desktop_changed_callback, sdd);

	if (sdd->icon_theme != NULL)
		g_signal_handlers_disconnect_by_func(sdd->icon_theme, theme_changed_callback, sdd);

	screen = gtk_widget_get_screen(sdd->applet);
	sdd->matewnck_screen = matewnck_screen_get(gdk_screen_get_number (screen));

	if (sdd->matewnck_screen != NULL)
		wncklet_connect_while_alive(sdd->matewnck_screen, "showing_desktop_changed", G_CALLBACK(show_desktop_changed_callback), sdd, sdd->applet);
	else
		g_warning("Could not get MatewnckScreen!");

	show_desktop_changed_callback(sdd->matewnck_screen, sdd);

	sdd->icon_theme = gtk_icon_theme_get_for_screen (screen);
	wncklet_connect_while_alive(sdd->icon_theme, "changed", G_CALLBACK(theme_changed_callback), sdd, sdd->applet);

	update_icon (sdd);
}
Esempio n. 2
0
static MatewnckScreen *
matewnck_selector_get_screen (MatewnckSelector *selector)
{
  GdkScreen *screen;

  g_assert (gtk_widget_has_screen (GTK_WIDGET (selector)));

  screen = gtk_widget_get_screen (GTK_WIDGET (selector));

  return matewnck_screen_get (gdk_screen_get_number (screen));
}
Esempio n. 3
0
int
main (int argc, char **argv)
{
    MatewnckScreen *screen;
    GtkWidget *sw;
    GtkWidget *win;

    gtk_init (&argc, &argv);

    screen = matewnck_screen_get (0);

    g_signal_connect (G_OBJECT (screen), "active_window_changed",
                      G_CALLBACK (active_window_changed_callback),
                      NULL);
    g_signal_connect (G_OBJECT (screen), "active_workspace_changed",
                      G_CALLBACK (active_workspace_changed_callback),
                      NULL);
    g_signal_connect (G_OBJECT (screen), "window_stacking_changed",
                      G_CALLBACK (window_stacking_changed_callback),
                      NULL);
    g_signal_connect (G_OBJECT (screen), "window_opened",
                      G_CALLBACK (window_opened_callback),
                      NULL);
    g_signal_connect (G_OBJECT (screen), "window_closed",
                      G_CALLBACK (window_closed_callback),
                      NULL);
    g_signal_connect (G_OBJECT (screen), "workspace_created",
                      G_CALLBACK (workspace_created_callback),
                      NULL);
    g_signal_connect (G_OBJECT (screen), "workspace_destroyed",
                      G_CALLBACK (workspace_destroyed_callback),
                      NULL);
    g_signal_connect (G_OBJECT (screen), "application_opened",
                      G_CALLBACK (application_opened_callback),
                      NULL);
    g_signal_connect (G_OBJECT (screen), "application_closed",
                      G_CALLBACK (application_closed_callback),
                      NULL);
    g_signal_connect (G_OBJECT (screen), "showing_desktop_changed",
                      G_CALLBACK (showing_desktop_changed_callback),
                      NULL);

    global_tree_model = create_tree_model ();
    global_tree_view = create_tree_view ();

    gtk_tree_view_set_model (GTK_TREE_VIEW (global_tree_view),
                             global_tree_model);

    win = gtk_window_new (GTK_WINDOW_TOPLEVEL);

    gtk_window_set_title (GTK_WINDOW (win), "Window List");

    sw = gtk_scrolled_window_new (NULL, NULL);
    gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
                                    GTK_POLICY_AUTOMATIC,
                                    GTK_POLICY_AUTOMATIC);

    gtk_container_add (GTK_CONTAINER (sw), global_tree_view);
    gtk_container_add (GTK_CONTAINER (win), sw);

    gtk_window_set_default_size (GTK_WINDOW (win), 650, 550);

    /* quit on window close */
    g_signal_connect (G_OBJECT (win), "destroy",
                      G_CALLBACK (gtk_main_quit),
                      NULL);

    gtk_widget_show_all (win);

    gtk_main ();

    return 0;
}