Esempio n. 1
0
gint
tomboy_window_get_workspace (GtkWindow *window)
{
#ifndef GDK_WINDOWING_X11
	return -1;
#else
	GdkWindow *gdkwin = gtk_widget_get_window(GTK_WIDGET (window));
	GdkAtom wm_desktop = gdk_atom_intern ("_NET_WM_DESKTOP", FALSE);
	GdkAtom out_type;
	gint out_format, out_length;
	gulong *out_val;
	int workspace;

	if (!gdk_property_get (gdkwin,
			       wm_desktop,
			       _GDK_MAKE_ATOM (XA_CARDINAL),
			       0, G_MAXLONG,
			       FALSE,
			       &out_type,
			       &out_format,
			       &out_length,
			       (guchar **) &out_val))
		return -1;

	workspace = *out_val;
	g_free (out_val);

	return workspace;
#endif
}
Esempio n. 2
0
void
tomboy_window_move_to_current_workspace (GtkWindow *window)
{
#ifndef GDK_WINDOWING_X11
	return;
#else
	GdkWindow *gdkwin = gtk_widget_get_window(GTK_WIDGET (window));
	GdkWindow *rootwin = 
		gdk_screen_get_root_window (gdk_window_get_screen (gdkwin));

	GdkAtom current_desktop = 
		gdk_atom_intern ("_NET_CURRENT_DESKTOP", FALSE);
	GdkAtom wm_desktop = gdk_atom_intern ("_NET_WM_DESKTOP", FALSE);
	GdkAtom out_type;
	gint out_format, out_length;
	gulong *out_val;
	int workspace;
	XEvent xev;

	if (!gdk_property_get (rootwin,
			       current_desktop,
			       _GDK_MAKE_ATOM (XA_CARDINAL),
			       0, G_MAXLONG,
			       FALSE,
			       &out_type,
			       &out_format,
			       &out_length,
			       (guchar **) &out_val))
		return;

	workspace = *out_val;
	g_free (out_val);

	TRACE (g_print ("Setting _NET_WM_DESKTOP to: %d\n", workspace));

	xev.xclient.type = ClientMessage;
	xev.xclient.serial = 0;
	xev.xclient.send_event = True;
	xev.xclient.display = GDK_WINDOW_XDISPLAY (gdkwin);
	xev.xclient.window = GDK_WINDOW_XID (gdkwin);
	xev.xclient.message_type = 
		gdk_x11_atom_to_xatom_for_display(
			gdk_window_get_display (gdkwin),
			wm_desktop);
	xev.xclient.format = 32;
	xev.xclient.data.l[0] = workspace;
	xev.xclient.data.l[1] = 0;
	xev.xclient.data.l[2] = 0;

	XSendEvent (GDK_WINDOW_XDISPLAY (rootwin),
		    GDK_WINDOW_XID (rootwin),
		    False,
		    SubstructureRedirectMask | SubstructureNotifyMask,
		    &xev);
#endif
}
Esempio n. 3
0
void GtkClipboard_::__construct(Php::Parameters &parameters)
{
	long int a = parameters[0];
	instance = (gpointer *)gtk_clipboard_get (_GDK_MAKE_ATOM(a));

}
Esempio n. 4
0
GdkAtom
ada_make_atom (gulong num)
{
  return _GDK_MAKE_ATOM (num);
}