From a1fa56b20e1eee6829f5a41775050d9bd5a52842 Mon Sep 17 00:00:00 2001 From: devilhorns Date: Sat, 16 Jan 2010 17:02:33 +0000 Subject: [PATCH] Add atoms/functions to allow a quickpanel zone to be set. git-svn-id: http://svn.enlightenment.org/svn/e/trunk/ecore@45230 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- src/lib/ecore_x/Ecore_X.h | 3 +++ src/lib/ecore_x/Ecore_X_Atoms.h | 2 ++ src/lib/ecore_x/ecore_x_atoms_decl.h | 2 ++ src/lib/ecore_x/xlib/ecore_x_atoms.c | 2 ++ src/lib/ecore_x/xlib/ecore_x_e.c | 25 +++++++++++++++++++++++++ 5 files changed, 34 insertions(+) diff --git a/src/lib/ecore_x/Ecore_X.h b/src/lib/ecore_x/Ecore_X.h index 5744fec..e4c18c3 100644 --- a/src/lib/ecore_x/Ecore_X.h +++ b/src/lib/ecore_x/Ecore_X.h @@ -1573,6 +1573,9 @@ EAPI void ecore_x_e_illume_quickpanel_priority_major_set(Ecore_X_ EAPI int ecore_x_e_illume_quickpanel_priority_major_get(Ecore_X_Window win); EAPI void ecore_x_e_illume_quickpanel_priority_minor_set(Ecore_X_Window win, unsigned int priority); EAPI int ecore_x_e_illume_quickpanel_priority_minor_get(Ecore_X_Window win); +EAPI void ecore_x_e_illume_quickpanel_zone_set(Ecore_X_Window win, Ecore_X_Window *zone); +EAPI Ecore_X_Window ecore_x_e_illume_quickpanel_zone_get(Ecore_X_Window win); +EAPI void ecore_x_e_illume_quickpanel_zone_request_send(Ecore_X_Window win); EAPI void ecore_x_e_illume_home_send(Ecore_X_Window win); EAPI void ecore_x_e_illume_top_shelf_geometry_set(Ecore_X_Window win, int x, int y, int w, int h); EAPI int ecore_x_e_illume_top_shelf_geometry_get(Ecore_X_Window win, int *x, int *y, int *w, int *h); diff --git a/src/lib/ecore_x/Ecore_X_Atoms.h b/src/lib/ecore_x/Ecore_X_Atoms.h index 6c49007..23b6274 100644 --- a/src/lib/ecore_x/Ecore_X_Atoms.h +++ b/src/lib/ecore_x/Ecore_X_Atoms.h @@ -223,6 +223,8 @@ EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_QUICKPANEL_ON; EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_QUICKPANEL_OFF; EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_QUICKPANEL_PRIORITY_MAJOR; EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_QUICKPANEL_PRIORITY_MINOR; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_QUICKPANEL_ZONE; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_QUICKPANEL_ZONE_REQUEST; EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_TOP_SHELF_GEOMETRY; EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_BOTTOM_PANEL_GEOMETRY; diff --git a/src/lib/ecore_x/ecore_x_atoms_decl.h b/src/lib/ecore_x/ecore_x_atoms_decl.h index 1ad5531..0788291 100644 --- a/src/lib/ecore_x/ecore_x_atoms_decl.h +++ b/src/lib/ecore_x/ecore_x_atoms_decl.h @@ -246,5 +246,7 @@ EAPI Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_QUICKPANEL_ON = 0; EAPI Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_QUICKPANEL_OFF = 0; EAPI Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_QUICKPANEL_PRIORITY_MAJOR = 0; EAPI Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_QUICKPANEL_PRIORITY_MINOR = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_QUICKPANEL_ZONE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_QUICKPANEL_ZONE_REQUEST = 0; EAPI Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_TOP_SHELF_GEOMETRY = 0; EAPI Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_BOTTOM_PANEL_GEOMETRY = 0; diff --git a/src/lib/ecore_x/xlib/ecore_x_atoms.c b/src/lib/ecore_x/xlib/ecore_x_atoms.c index 4c4d206..37801ab 100644 --- a/src/lib/ecore_x/xlib/ecore_x_atoms.c +++ b/src/lib/ecore_x/xlib/ecore_x_atoms.c @@ -239,6 +239,8 @@ _ecore_x_atoms_init(void) { "_E_ILLUME_QUICKPANEL_OFF", &ECORE_X_ATOM_E_ILLUME_QUICKPANEL_OFF }, { "_E_ILLUME_QUICKPANEL_PRIORITY_MAJOR", &ECORE_X_ATOM_E_ILLUME_QUICKPANEL_PRIORITY_MAJOR }, { "_E_ILLUME_QUICKPANEL_PRIORITY_MINOR", &ECORE_X_ATOM_E_ILLUME_QUICKPANEL_PRIORITY_MINOR }, + { "_E_ILLUME_QUICKPANEL_ZONE", &ECORE_X_ATOM_E_ILLUME_QUICKPANEL_ZONE }, + { "_E_ILLUME_QUICKPANEL_ZONE_REQUEST", &ECORE_X_ATOM_E_ILLUME_QUICKPANEL_ZONE_REQUEST }, { "_E_ILLUME_TOP_SHELF_GEOMETRY", &ECORE_X_ATOM_E_ILLUME_TOP_SHELF_GEOMETRY }, { "_E_ILLUME_BOTTOM_PANEL_GEOMETRY", &ECORE_X_ATOM_E_ILLUME_BOTTOM_PANEL_GEOMETRY } }; diff --git a/src/lib/ecore_x/xlib/ecore_x_e.c b/src/lib/ecore_x/xlib/ecore_x_e.c index f6dc4dc..e83caa3 100644 --- a/src/lib/ecore_x/xlib/ecore_x_e.c +++ b/src/lib/ecore_x/xlib/ecore_x_e.c @@ -424,6 +424,31 @@ ecore_x_e_illume_quickpanel_priority_minor_get(Ecore_X_Window win) } EAPI void +ecore_x_e_illume_quickpanel_zone_set(Ecore_X_Window win, Ecore_X_Window *zone) +{ + ecore_x_window_prop_window_set(win, ECORE_X_ATOM_E_ILLUME_QUICKPANEL_ZONE, + zone, 1); +} + +EAPI Ecore_X_Window +ecore_x_e_illume_quickpanel_zone_get(Ecore_X_Window win) +{ + Ecore_X_Window zone; + + if (!ecore_x_window_prop_window_get(win, ECORE_X_ATOM_E_ILLUME_QUICKPANEL_ZONE, + &zone, 1)) return 0; + return zone; +} + +EAPI void +ecore_x_e_illume_quickpanel_zone_request_send(Ecore_X_Window win) +{ + ecore_x_client_message32_send(win, ECORE_X_ATOM_E_ILLUME_QUICKPANEL_ZONE_REQUEST, + ECORE_X_EVENT_MASK_WINDOW_CONFIGURE, + 1, 0, 0, 0, 0); +} + +EAPI void ecore_x_e_illume_top_shelf_geometry_set(Ecore_X_Window win, int x, int y, int w, int h) { unsigned int geom[4]; -- 2.7.4