[libwnck] core: Add _wnck_gdk_window_lookup_from_window()
- From: Vincent Untz <vuntz src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libwnck] core: Add _wnck_gdk_window_lookup_from_window()
- Date: Thu, 20 Jan 2011 15:37:24 +0000 (UTC)
commit 52181fcb1ce189b7f7e48dda3e6439faad067fd3
Author: Vincent Untz <vuntz gnome org>
Date: Thu Jan 20 00:28:23 2011 +0100
core: Add _wnck_gdk_window_lookup_from_window()
This avoids duplicating code to lookup a GdkWindow from a Window,
without using gdk_display_get_default().
libwnck/xutils.c | 37 +++++++++++++++++++++++--------------
libwnck/xutils.h | 3 +++
2 files changed, 26 insertions(+), 14 deletions(-)
---
diff --git a/libwnck/xutils.c b/libwnck/xutils.c
index 5256124..2551762 100644
--- a/libwnck/xutils.c
+++ b/libwnck/xutils.c
@@ -838,8 +838,7 @@ _wnck_deiconify (Screen *screen,
*/
GdkWindow *gdkwindow;
- gdkwindow = gdk_x11_window_lookup_for_display (gdk_display_get_default (),
- xwindow);
+ gdkwindow = _wnck_gdk_window_lookup_from_window (screen, xwindow);
_wnck_error_trap_push ();
if (gdkwindow)
@@ -1362,21 +1361,12 @@ _wnck_select_input (Screen *screen,
Window xwindow,
int mask)
{
- Display *display;
- GdkDisplay *gdkdisplay;
- GdkWindow *gdkwindow;
+ Display *display;
+ GdkWindow *gdkwindow;
display = DisplayOfScreen (screen);
- gdkdisplay = gdk_x11_lookup_xdisplay (display);
- if (gdkdisplay)
- gdkwindow = gdk_x11_window_lookup_for_display (gdkdisplay, xwindow);
- else
- {
- g_warning ("No GdkDisplay matching Display \"%s\" was found.\n",
- DisplayString (display));
- gdkwindow = NULL;
- }
+ gdkwindow = _wnck_gdk_window_lookup_from_window (screen, xwindow);
_wnck_error_trap_push ();
if (gdkwindow)
@@ -2432,6 +2422,25 @@ _wnck_set_icon_geometry (Screen *screen,
_wnck_error_trap_pop ();
}
+GdkWindow*
+_wnck_gdk_window_lookup_from_window (Screen *screen,
+ Window xwindow)
+{
+ Display *display;
+ GdkDisplay *gdkdisplay;
+
+ display = DisplayOfScreen (screen);
+ gdkdisplay = gdk_x11_lookup_xdisplay (display);
+
+ if (gdkdisplay)
+ return gdk_x11_window_lookup_for_display (gdkdisplay, xwindow);
+
+ g_warning ("No GdkDisplay matching Display \"%s\" was found.\n",
+ DisplayString (display));
+
+ return NULL;
+}
+
/* orientation of pager */
#define _NET_WM_ORIENTATION_HORZ 0
#define _NET_WM_ORIENTATION_VERT 1
diff --git a/libwnck/xutils.h b/libwnck/xutils.h
index 2b334a3..ed4bffe 100644
--- a/libwnck/xutils.h
+++ b/libwnck/xutils.h
@@ -221,6 +221,9 @@ void _wnck_set_desktop_layout (Screen *xscreen,
GdkPixbuf* _wnck_gdk_pixbuf_get_from_pixmap (Screen *screen,
Pixmap xpixmap);
+GdkWindow* _wnck_gdk_window_lookup_from_window (Screen *screen,
+ Window xwindow);
+
#define WNCK_NO_MANAGER_TOKEN 0
int _wnck_try_desktop_layout_manager (Screen *xscreen,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]