From fa19cf50b77bf7ffed1b042cfab1774c90040202 Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Fri, 8 Jan 2010 08:24:35 +0000 Subject: [PATCH] add call to set compositor selection owner SVN revision: 44969 --- legacy/ecore/src/lib/ecore_x/Ecore_X.h | 3 ++- legacy/ecore/src/lib/ecore_x/xlib/ecore_x_netwm.c | 14 +++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/legacy/ecore/src/lib/ecore_x/Ecore_X.h b/legacy/ecore/src/lib/ecore_x/Ecore_X.h index 13f8557773..8b2aee06d2 100644 --- a/legacy/ecore/src/lib/ecore_x/Ecore_X.h +++ b/legacy/ecore/src/lib/ecore_x/Ecore_X.h @@ -1781,7 +1781,8 @@ EAPI void ecore_x_damage_free(Ecore_X_Damage damage); EAPI void ecore_x_damage_subtract(Ecore_X_Damage damage, Ecore_X_Region repair, Ecore_X_Region parts); EAPI int ecore_x_screen_is_composited(int screen); - +EAPI void ecore_x_screen_is_composited_set(int screen, Ecore_X_Window win); + EAPI int ecore_x_dpms_query(void); EAPI void ecore_x_dpms_capable_get_prefetch(void); EAPI void ecore_x_dpms_capable_get_fetch(void); diff --git a/legacy/ecore/src/lib/ecore_x/xlib/ecore_x_netwm.c b/legacy/ecore/src/lib/ecore_x/xlib/ecore_x_netwm.c index 873d0e6620..23edf26c65 100644 --- a/legacy/ecore/src/lib/ecore_x/xlib/ecore_x_netwm.c +++ b/legacy/ecore/src/lib/ecore_x/xlib/ecore_x_netwm.c @@ -1517,7 +1517,7 @@ ecore_x_screen_is_composited(int screen) static Ecore_X_Atom atom = None; char buf[32]; - snprintf(buf, sizeof(buf), "_NET_WM_CM_S%d", screen); + snprintf(buf, sizeof(buf), "_NET_WM_CM_S%i", screen); if (atom == None) atom = XInternAtom(_ecore_x_disp, buf, True); if (atom == None) return 0; @@ -1525,3 +1525,15 @@ ecore_x_screen_is_composited(int screen) return win != None; } + +EAPI void +ecore_x_screen_is_composited_set(int screen, Ecore_X_Window win) +{ + static Ecore_X_Atom atom = None; + char buf[32]; + + snprintf(buf, sizeof(buf), "_NET_WM_CM_S%i", screen); + if (atom == None) atom = XInternAtom(_ecore_x_disp, buf, True); + if (atom == None) return 0; + XSetSelectionOwner(_ecore_x_disp, atom, win, _ecore_x_event_last_time); +}