From 237956fa62b21b34b48799ba23e97ee07a26bfda Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Wed, 9 Jul 2008 15:18:55 +0000 Subject: [PATCH] moe all atom fetching to 1 round trip instead of 200 of them... and mrge into 1 bit of code to do it. SVN revision: 35039 --- legacy/ecore/src/lib/ecore_x/Ecore_X.h | 3 +- legacy/ecore/src/lib/ecore_x/Ecore_X_Atoms.h | 204 +++++++++-------- legacy/ecore/src/lib/ecore_x/Makefile.am | 11 +- legacy/ecore/src/lib/ecore_x/ecore_x.c | 53 ++--- legacy/ecore/src/lib/ecore_x/ecore_x_atoms.c | 191 ++++++++++++++++ .../src/lib/ecore_x/ecore_x_atoms_decl.h | 204 +++++++++++++++++ legacy/ecore/src/lib/ecore_x/ecore_x_dnd.c | 52 ----- legacy/ecore/src/lib/ecore_x/ecore_x_e.c | 9 - legacy/ecore/src/lib/ecore_x/ecore_x_icccm.c | 48 ---- legacy/ecore/src/lib/ecore_x/ecore_x_mwm.c | 3 - legacy/ecore/src/lib/ecore_x/ecore_x_netwm.c | 196 +---------------- .../ecore/src/lib/ecore_x/ecore_x_private.h | 2 + legacy/ecore/src/lib/ecore_x/ecore_xcb_atom.c | 205 +----------------- 13 files changed, 536 insertions(+), 645 deletions(-) create mode 100644 legacy/ecore/src/lib/ecore_x/ecore_x_atoms.c create mode 100644 legacy/ecore/src/lib/ecore_x/ecore_x_atoms_decl.h diff --git a/legacy/ecore/src/lib/ecore_x/Ecore_X.h b/legacy/ecore/src/lib/ecore_x/Ecore_X.h index c9e8849557..2186e03c46 100644 --- a/legacy/ecore/src/lib/ecore_x/Ecore_X.h +++ b/legacy/ecore/src/lib/ecore_x/Ecore_X.h @@ -1274,7 +1274,8 @@ EAPI void ecore_x_window_client_sniff(Ecore_X_Window win); EAPI void ecore_x_atom_get_prefetch(const char *name); EAPI void ecore_x_atom_get_fetch(void); EAPI Ecore_X_Atom ecore_x_atom_get(const char *name); - +EAPI void ecore_x_atoms_get(const char **names, int num, Ecore_X_Atom *atoms); + EAPI void ecore_x_icccm_init(void); diff --git a/legacy/ecore/src/lib/ecore_x/Ecore_X_Atoms.h b/legacy/ecore/src/lib/ecore_x/Ecore_X_Atoms.h index b32ffa49a2..24b7d32988 100644 --- a/legacy/ecore/src/lib/ecore_x/Ecore_X_Atoms.h +++ b/legacy/ecore/src/lib/ecore_x/Ecore_X_Atoms.h @@ -9,88 +9,114 @@ * @brief Ecore X atoms */ -/* General */ -EAPI extern Ecore_X_Atom ECORE_X_ATOM_UTF8_STRING; +/* generic atoms */ +EAPI extern Ecore_X_Atom ECORE_X_ATOM_ATOM; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_CARDINAL; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_COMPOUND_TEXT; EAPI extern Ecore_X_Atom ECORE_X_ATOM_FILE_NAME; EAPI extern Ecore_X_Atom ECORE_X_ATOM_STRING; EAPI extern Ecore_X_Atom ECORE_X_ATOM_TEXT; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_COMPOUND_TEXT; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_UTF8_STRING; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WINDOW; -/* ICCCM */ -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_STATE; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_DELETE_WINDOW; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_TAKE_FOCUS; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_PROTOCOLS; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_CLASS; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_NAME; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_COMMAND; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_ICON_NAME; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_CLIENT_MACHINE; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_CHANGE_STATE; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_COLORMAP_WINDOWS; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_WINDOW_ROLE; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_HINTS; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_NORMAL_HINTS; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_CLIENT_LEADER; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_TRANSIENT_FOR; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_SAVE_YOURSELF; +/* dnd atoms */ +EAPI extern Ecore_X_Atom ECORE_X_ATOM_SELECTION_XDND; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_XDND; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_AWARE; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ENTER; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_TYPE_LIST; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_POSITION; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_COPY; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_MOVE; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_PRIVATE; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_ASK; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_LIST; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_LINK; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_DESCRIPTION; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_PROXY; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_STATUS; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_LEAVE; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_DROP; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_FINISHED; -/* MWM */ -EAPI extern Ecore_X_Atom ECORE_X_ATOM_MOTIF_WM_HINTS; +/* dnd atoms that need to be exposed to the application interface */ +EAPI extern Ecore_X_Atom ECORE_X_DND_ACTION_COPY; +EAPI extern Ecore_X_Atom ECORE_X_DND_ACTION_MOVE; +EAPI extern Ecore_X_Atom ECORE_X_DND_ACTION_LINK; +EAPI extern Ecore_X_Atom ECORE_X_DND_ACTION_ASK; +EAPI extern Ecore_X_Atom ECORE_X_DND_ACTION_PRIVATE; + +/* old E atom */ +EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_FRAME_SIZE; -/* GNOME */ +/* old Gnome atom */ EAPI extern Ecore_X_Atom ECORE_X_ATOM_WIN_LAYER; -/* EWMH */ +/* ICCCM: client properties */ +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_NAME; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_ICON_NAME; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_NORMAL_HINTS; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_SIZE_HINTS; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_HINTS; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_CLASS; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_TRANSIENT_FOR; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_PROTOCOLS; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_COLORMAP_WINDOWS; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_COMMAND; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_CLIENT_MACHINE; + +/* ICCCM: window manager properties */ +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_STATE; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_ICON_SIZE; + +/* ICCCM: WM_STATEproperty */ +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_CHANGE_STATE; + +/* ICCCM: WM_PROTOCOLS properties */ +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_TAKE_FOCUS; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_SAVE_YOURSELF; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_DELETE_WINDOW; + +/* ICCCM: WM_COLORMAP properties */ +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_COLORMAP_NOTIFY; + +/* ICCCM: session management properties */ +EAPI extern Ecore_X_Atom ECORE_X_ATOM_SM_CLIENT_ID; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_CLIENT_LEADER; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_WM_WINDOW_ROLE; + +/* Motif WM atom */ +EAPI extern Ecore_X_Atom ECORE_X_ATOM_MOTIF_WM_HINTS; + EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_SUPPORTED; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK; - -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_NUMBER_OF_DESKTOPS; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_VIRTUAL_ROOTS; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_NAMES; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_GEOMETRY; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_VIEWPORT; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_LAYOUT; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WORKAREA; - -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_CURRENT_DESKTOP; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_SHOWING_DESKTOP; - EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_CLIENT_LIST; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_CLIENT_LIST_STACKING; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_NUMBER_OF_DESKTOPS; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_GEOMETRY; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_VIEWPORT; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_CURRENT_DESKTOP; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_NAMES; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_ACTIVE_WINDOW; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WORKAREA; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_VIRTUAL_ROOTS; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_LAYOUT; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_SHOWING_DESKTOP; +/* pager */ +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_CLOSE_WINDOW; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_MOVERESIZE_WINDOW; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_MOVERESIZE; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_RESTACK_WINDOW; + +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_REQUEST_FRAME_EXTENTS; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_NAME; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_VISIBLE_NAME; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON_NAME; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_VISIBLE_ICON_NAME; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_DESKTOP; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_STRUT; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_STRUT_PARTIAL; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON_GEOMETRY; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_PID; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_HANDLED_ICONS; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_USER_TIME; - -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_CLOSE_WINDOW; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_MOVERESIZE; - -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_MOVERESIZE_WINDOW; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_RESTACK_WINDOW; - -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ALLOWED_ACTIONS; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MOVE; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_RESIZE; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MINIMIZE; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_SHADE; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_STICK; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_HORZ; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_VERT; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_FULLSCREEN; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_CHANGE_DESKTOP; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_CLOSE; /*x*/ +/* window type */ EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DESKTOP; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DOCK; @@ -101,6 +127,7 @@ EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_SPLASH; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DIALOG; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL; +/* state */ EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_MODAL; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_STICKY; @@ -115,23 +142,36 @@ EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_ABOVE; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_BELOW; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_DEMANDS_ATTENTION; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_FRAME_EXTENTS; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_REQUEST_FRAME_EXTENTS; +/* allowed actions */ +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ALLOWED_ACTIONS; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MOVE; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_RESIZE; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MINIMIZE; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_SHADE; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_STICK; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_HORZ; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_VERT; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_FULLSCREEN; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_CHANGE_DESKTOP; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_CLOSE; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_STRUT; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_STRUT_PARTIAL; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON_GEOMETRY; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_PID; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_HANDLED_ICONS; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_USER_TIME; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_ID; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_FRAME_EXTENTS; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_PING; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_SYNC_REQUEST; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_SYNC_REQUEST_COUNTER; - -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_ID; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_INFO_BEGIN; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_INFO; - -/* NetWM Opacity Atoms */ EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_OPACITY; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_SHADOW; EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_SHADE; - -/* Selections */ +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_INFO_BEGIN; +EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_INFO; EAPI extern Ecore_X_Atom ECORE_X_ATOM_SELECTION_TARGETS; EAPI extern Ecore_X_Atom ECORE_X_ATOM_SELECTION_PRIMARY; EAPI extern Ecore_X_Atom ECORE_X_ATOM_SELECTION_SECONDARY; @@ -140,22 +180,4 @@ EAPI extern Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_PRIMARY; EAPI extern Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_SECONDARY; EAPI extern Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_CLIPBOARD; -/* DND */ -EAPI extern Ecore_X_Atom ECORE_X_ATOM_SELECTION_XDND; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_XDND; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_AWARE; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_TYPE_LIST; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_COPY; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_PRIVATE; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_ASK; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_LIST; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_DESCRIPTION; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_ENTER; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_LEAVE; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_STATUS; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_POSITION; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_DROP; -EAPI extern Ecore_X_Atom ECORE_X_ATOM_XDND_FINISHED; - - #endif /* _ECORE_X_ATOMS_H */ diff --git a/legacy/ecore/src/lib/ecore_x/Makefile.am b/legacy/ecore/src/lib/ecore_x/Makefile.am index fd46526a6b..c789555fe3 100644 --- a/legacy/ecore/src/lib/ecore_x/Makefile.am +++ b/legacy/ecore/src/lib/ecore_x/Makefile.am @@ -73,7 +73,8 @@ ecore_xcb_window.c \ ecore_xcb_window_prop.c \ ecore_xcb_xinerama.c \ ecore_xcb.c \ -ecore_xcb_private.h +ecore_xcb_private.h \ +ecore_x_atoms_decl.h libecore_x_la_LIBADD = \ @XCB_DAMAGE_LIBS@ \ @@ -134,7 +135,9 @@ ecore_x_dpms.c \ ecore_x_drawable.c \ ecore_x_cursor.c \ ecore_x_test.c \ -ecore_x_private.h +ecore_x_atoms.c \ +ecore_x_private.h \ +ecore_x_atoms_decl.h libecore_x_la_LIBADD = \ @Xcursor_libs@ \ @@ -191,4 +194,6 @@ ecore_x_dpms.c \ ecore_x_drawable.c \ ecore_x_cursor.c \ ecore_x_test.c \ -ecore_x_private.h +ecore_x_atoms.c \ +ecore_x_private.h \ +ecore_x_atoms_decl.h diff --git a/legacy/ecore/src/lib/ecore_x/ecore_x.c b/legacy/ecore/src/lib/ecore_x/ecore_x.c index 651b2da00f..4fb28614e6 100644 --- a/legacy/ecore/src/lib/ecore_x/ecore_x.c +++ b/legacy/ecore/src/lib/ecore_x/ecore_x.c @@ -40,31 +40,8 @@ int _ecore_x_xcursor = 0; Ecore_X_Window _ecore_x_private_win = 0; -/* FIXME - These are duplicates after making ecore atoms public */ -EAPI Ecore_X_Atom ECORE_X_ATOM_FILE_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_STRING = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_TEXT = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_UTF8_STRING = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_COMPOUND_TEXT = 0; - Ecore_X_Atom _ecore_x_atoms_wm_protocols[ECORE_X_WM_PROTOCOL_NUM]; -/* - * GNOME hints. - */ -EAPI Ecore_X_Atom ECORE_X_ATOM_WIN_LAYER = 0; - -/* - * Other hints. - */ -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_TARGETS; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PRIMARY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_SECONDARY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_CLIPBOARD = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_PRIMARY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_SECONDARY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_CLIPBOARD = 0; - EAPI int ECORE_X_EVENT_KEY_DOWN = 0; EAPI int ECORE_X_EVENT_KEY_UP = 0; EAPI int ECORE_X_EVENT_MOUSE_BUTTON_DOWN = 0; @@ -401,19 +378,11 @@ ecore_x_init(const char *name) return 0; } - ECORE_X_ATOM_COMPOUND_TEXT = XInternAtom(_ecore_x_disp, "COMPOUND_TEXT", False); - ECORE_X_ATOM_UTF8_STRING = XInternAtom(_ecore_x_disp, "UTF8_STRING", False); - ECORE_X_ATOM_FILE_NAME = XInternAtom(_ecore_x_disp, "FILE_NAME", False); - ECORE_X_ATOM_STRING = XInternAtom(_ecore_x_disp, "STRING", False); - ECORE_X_ATOM_TEXT = XInternAtom(_ecore_x_disp, "TEXT", False); + _ecore_x_atoms_init(); /* Set up the ICCCM hints */ ecore_x_icccm_init(); - ECORE_X_ATOM_MOTIF_WM_HINTS = XInternAtom(_ecore_x_disp, "_MOTIF_WM_HINTS", False); - - ECORE_X_ATOM_WIN_LAYER = XInternAtom(_ecore_x_disp, "_WIN_LAYER", False); - /* Set up the _NET_... hints */ ecore_x_netwm_init(); @@ -421,13 +390,6 @@ ecore_x_init(const char *name) ecore_x_e_init(); /* This is just to be anal about naming conventions */ - ECORE_X_ATOM_SELECTION_TARGETS = XInternAtom(_ecore_x_disp, "TARGETS", False); - ECORE_X_ATOM_SELECTION_PRIMARY = XA_PRIMARY; - ECORE_X_ATOM_SELECTION_SECONDARY = XA_SECONDARY; - ECORE_X_ATOM_SELECTION_CLIPBOARD = XInternAtom(_ecore_x_disp, "CLIPBOARD", False); - ECORE_X_ATOM_SELECTION_PROP_PRIMARY = XInternAtom(_ecore_x_disp, "_ECORE_SELECTION_PRIMARY", False); - ECORE_X_ATOM_SELECTION_PROP_SECONDARY = XInternAtom(_ecore_x_disp, "_ECORE_SELECTION_SECONDARY", False); - ECORE_X_ATOM_SELECTION_PROP_CLIPBOARD = XInternAtom(_ecore_x_disp, "_ECORE_SELECTION_CLIPBOARD", False); _ecore_x_atoms_wm_protocols[ECORE_X_WM_PROTOCOL_DELETE_REQUEST] = ECORE_X_ATOM_WM_DELETE_WINDOW; _ecore_x_atoms_wm_protocols[ECORE_X_WM_PROTOCOL_TAKE_FOCUS] = ECORE_X_ATOM_WM_TAKE_FOCUS; @@ -957,6 +919,19 @@ ecore_x_atom_get(const char *name) return XInternAtom(_ecore_x_disp, name, False); } +EAPI void +ecore_x_atoms_get(const char **names, int num, Ecore_X_Atom *atoms) +{ + Atom *atoms_int; + int i; + + if (!_ecore_x_disp) return 0; + atoms_int = alloca(num * sizeof(Atom)); + XInternAtoms(_ecore_x_disp, names, num, False, atoms_int); + for (i = 0; i < num; i++) + atoms[i] = atoms_int[i]; +} + diff --git a/legacy/ecore/src/lib/ecore_x/ecore_x_atoms.c b/legacy/ecore/src/lib/ecore_x/ecore_x_atoms.c new file mode 100644 index 0000000000..7ed7c10775 --- /dev/null +++ b/legacy/ecore/src/lib/ecore_x/ecore_x_atoms.c @@ -0,0 +1,191 @@ +/* + * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2 + */ + +#include "config.h" +#include "Ecore.h" +#include "ecore_x_private.h" +#include "Ecore_X.h" +#include "Ecore_X_Atoms.h" + +#include "ecore_x_atoms_decl.h" + +typedef struct +{ + const char *name; + Ecore_X_Atom *atom; +} Atom_Item; + +void +_ecore_x_atoms_init(void) +{ + const Atom_Item items[] = + { + { "ATOM", &ECORE_X_ATOM_ATOM }, + { "CARDINAL", &ECORE_X_ATOM_CARDINAL }, + { "COMPOUND_TEXT", &ECORE_X_ATOM_COMPOUND_TEXT }, + { "FILE_NAME", &ECORE_X_ATOM_FILE_NAME }, + { "STRING", &ECORE_X_ATOM_STRING }, + { "TEXT", &ECORE_X_ATOM_TEXT }, + { "UTF8_STRING", &ECORE_X_ATOM_UTF8_STRING }, + { "WINDOW", &ECORE_X_ATOM_WINDOW }, + + { "JXSelectionWindowProperty", &ECORE_X_ATOM_SELECTION_PROP_XDND }, + { "XdndSelection", &ECORE_X_ATOM_SELECTION_XDND }, + { "XdndAware", &ECORE_X_ATOM_XDND_AWARE }, + { "XdndEnter", &ECORE_X_ATOM_XDND_ENTER }, + { "XdndTypeList", &ECORE_X_ATOM_XDND_TYPE_LIST }, + { "XdndPosition", &ECORE_X_ATOM_XDND_POSITION }, + { "XdndActionCopy", &ECORE_X_ATOM_XDND_ACTION_COPY }, + { "XdndActionMove", &ECORE_X_ATOM_XDND_ACTION_MOVE }, + { "XdndActionPrivate", &ECORE_X_ATOM_XDND_ACTION_PRIVATE }, + { "XdndActionAsk", &ECORE_X_ATOM_XDND_ACTION_ASK }, + { "XdndActionList", &ECORE_X_ATOM_XDND_ACTION_LIST }, + { "XdndActionLink", &ECORE_X_ATOM_XDND_ACTION_LINK }, + { "XdndActionDescription", &ECORE_X_ATOM_XDND_ACTION_DESCRIPTION }, + { "XdndProxy", &ECORE_X_ATOM_XDND_PROXY }, + { "XdndStatus", &ECORE_X_ATOM_XDND_STATUS }, + { "XdndLeave", &ECORE_X_ATOM_XDND_LEAVE }, + { "XdndDrop", &ECORE_X_ATOM_XDND_DROP }, + { "XdndFinished", &ECORE_X_ATOM_XDND_FINISHED }, + + { "XdndActionCopy", &ECORE_X_DND_ACTION_COPY }, + { "XdndActionMove", &ECORE_X_DND_ACTION_MOVE }, + { "XdndActionLink", &ECORE_X_DND_ACTION_LINK }, + { "XdndActionAsk", &ECORE_X_DND_ACTION_ASK }, + { "XdndActionPrivate", &ECORE_X_DND_ACTION_PRIVATE }, + + { "_E_FRAME_SIZE", &ECORE_X_ATOM_E_FRAME_SIZE }, + + { "_WIN_LAYER", &ECORE_X_ATOM_WIN_LAYER }, + + { "WM_NAME", &ECORE_X_ATOM_WM_NAME }, + { "WM_ICON_NAME", &ECORE_X_ATOM_WM_ICON_NAME }, + { "WM_NORMAL_HINTS", &ECORE_X_ATOM_WM_NORMAL_HINTS }, + { "WM_SIZE_HINTS", &ECORE_X_ATOM_WM_SIZE_HINTS }, + { "WM_HINTS", &ECORE_X_ATOM_WM_HINTS }, + { "WM_CLASS", &ECORE_X_ATOM_WM_CLASS }, + { "WM_TRANSIENT_FOR", &ECORE_X_ATOM_WM_TRANSIENT_FOR }, + { "WM_PROTOCOLS", &ECORE_X_ATOM_WM_PROTOCOLS }, + { "WM_COLORMAP_WINDOWS", &ECORE_X_ATOM_WM_COLORMAP_WINDOWS }, + { "WM_COMMAND", &ECORE_X_ATOM_WM_COMMAND }, + { "WM_CLIENT_MACHINE", &ECORE_X_ATOM_WM_CLIENT_MACHINE }, + + { "WM_STATE", &ECORE_X_ATOM_WM_STATE }, + { "WM_ICON_SIZE", &ECORE_X_ATOM_WM_ICON_SIZE }, + + { "WM_CHANGE_STATE", &ECORE_X_ATOM_WM_CHANGE_STATE }, + + { "WM_TAKE_FOCUS", &ECORE_X_ATOM_WM_TAKE_FOCUS }, + { "WM_SAVE_YOURSELF", &ECORE_X_ATOM_WM_SAVE_YOURSELF }, + { "WM_DELETE_WINDOW", &ECORE_X_ATOM_WM_DELETE_WINDOW }, + + { "WM_COLORMAP_NOTIFY", &ECORE_X_ATOM_WM_COLORMAP_NOTIFY }, + + { "SM_CLIENT_ID", &ECORE_X_ATOM_SM_CLIENT_ID }, + { "WM_CLIENT_LEADER", &ECORE_X_ATOM_WM_CLIENT_LEADER }, + { "WM_WINDOW_ROLE", &ECORE_X_ATOM_WM_WINDOW_ROLE }, + + { "MOTIF_WM_HINTS", &ECORE_X_ATOM_MOTIF_WM_HINTS }, + + { "_NET_SUPPORTED", &ECORE_X_ATOM_NET_SUPPORTED }, + { "_NET_CLIENT_LIST", &ECORE_X_ATOM_NET_CLIENT_LIST }, + { "_NET_CLIENT_LIST_STACKING", &ECORE_X_ATOM_NET_CLIENT_LIST_STACKING }, + { "_NET_NUMBER_OF_DESKTOPS", &ECORE_X_ATOM_NET_NUMBER_OF_DESKTOPS }, + { "_NET_DESKTOP_GEOMETRY", &ECORE_X_ATOM_NET_DESKTOP_GEOMETRY }, + { "_NET_DESKTOP_VIEWPORT", &ECORE_X_ATOM_NET_DESKTOP_VIEWPORT }, + { "_NET_CURRENT_DESKTOP", &ECORE_X_ATOM_NET_CURRENT_DESKTOP }, + { "_NET_DESKTOP_NAMES", &ECORE_X_ATOM_NET_DESKTOP_NAMES }, + { "_NET_ACTIVE_WINDOW", &ECORE_X_ATOM_NET_ACTIVE_WINDOW }, + { "_NET_WORKAREA", &ECORE_X_ATOM_NET_WORKAREA }, + { "_NET_SUPPORTING_WM_CHECK", &ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK }, + { "_NET_VIRTUAL_ROOTS", &ECORE_X_ATOM_NET_VIRTUAL_ROOTS }, + { "_NET_DESKTOP_LAYOUT", &ECORE_X_ATOM_NET_DESKTOP_LAYOUT }, + { "_NET_SHOWING_DESKTOP", &ECORE_X_ATOM_NET_SHOWING_DESKTOP }, + + { "_NET_CLOSE_WINDOW", &ECORE_X_ATOM_NET_CLOSE_WINDOW }, + { "_NET_MOVERESIZE_WINDOW", &ECORE_X_ATOM_NET_MOVERESIZE_WINDOW }, + { "_NET_WM_MOVERESIZE", &ECORE_X_ATOM_NET_WM_MOVERESIZE }, + { "_NET_RESTACK_WINDOW", &ECORE_X_ATOM_NET_RESTACK_WINDOW }, + + { "_NET_REQUEST_FRAME_EXTENTS", &ECORE_X_ATOM_NET_REQUEST_FRAME_EXTENTS }, + + { "_NET_WM_NAME", &ECORE_X_ATOM_NET_WM_NAME }, + { "_NET_WM_VISIBLE_NAME", &ECORE_X_ATOM_NET_WM_VISIBLE_NAME }, + { "_NET_WM_ICON_NAME", &ECORE_X_ATOM_NET_WM_ICON_NAME }, + { "_NET_WM_VISIBLE_ICON_NAME", &ECORE_X_ATOM_NET_WM_VISIBLE_ICON_NAME }, + { "_NET_WM_DESKTOP", &ECORE_X_ATOM_NET_WM_DESKTOP }, + + { "_NET_WM_WINDOW_TYPE", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE }, + { "_NET_WM_WINDOW_TYPE_DESKTOP", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DESKTOP }, + { "_NET_WM_WINDOW_TYPE_DOCK", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DOCK }, + { "_NET_WM_WINDOW_TYPE_TOOLBAR", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLBAR }, + { "_NET_WM_WINDOW_TYPE_MENU", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_MENU }, + { "_NET_WM_WINDOW_TYPE_UTILITY", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_UTILITY }, + { "_NET_WM_WINDOW_TYPE_SPLASH", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_SPLASH }, + { "_NET_WM_WINDOW_TYPE_DIALOG", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DIALOG }, + { "_NET_WM_WINDOW_TYPE_NORMAL", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL }, + + { "_NET_WM_STATE", &ECORE_X_ATOM_NET_WM_STATE }, + { "_NET_WM_STATE_MODAL", &ECORE_X_ATOM_NET_WM_STATE_MODAL }, + { "_NET_WM_STATE_STICKY", &ECORE_X_ATOM_NET_WM_STATE_STICKY }, + { "_NET_WM_STATE_MAXIMIZED_VERT", &ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_VERT }, + { "_NET_WM_STATE_MAXIMIZED_HORZ", &ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_HORZ }, + { "_NET_WM_STATE_SHADED", &ECORE_X_ATOM_NET_WM_STATE_SHADED }, + { "_NET_WM_STATE_SKIP_TASKBAR", &ECORE_X_ATOM_NET_WM_STATE_SKIP_TASKBAR }, + { "_NET_WM_STATE_SKIP_PAGER", &ECORE_X_ATOM_NET_WM_STATE_SKIP_PAGER }, + { "_NET_WM_STATE_HIDDEN", &ECORE_X_ATOM_NET_WM_STATE_HIDDEN }, + { "_NET_WM_STATE_FULLSCREEN", &ECORE_X_ATOM_NET_WM_STATE_FULLSCREEN }, + { "_NET_WM_STATE_ABOVE", &ECORE_X_ATOM_NET_WM_STATE_ABOVE }, + { "_NET_WM_STATE_BELOW", &ECORE_X_ATOM_NET_WM_STATE_BELOW }, + { "_NET_WM_STATE_DEMANDS_ATTENTION", &ECORE_X_ATOM_NET_WM_STATE_DEMANDS_ATTENTION }, + + { "_NET_WM_ALLOWED_ACTIONS", &ECORE_X_ATOM_NET_WM_ALLOWED_ACTIONS }, + { "_NET_WM_ACTION_MOVE", &ECORE_X_ATOM_NET_WM_ACTION_MOVE }, + { "_NET_WM_ACTION_RESIZE", &ECORE_X_ATOM_NET_WM_ACTION_RESIZE }, + { "_NET_WM_ACTION_MINIMIZE", &ECORE_X_ATOM_NET_WM_ACTION_MINIMIZE }, + { "_NET_WM_ACTION_SHADE", &ECORE_X_ATOM_NET_WM_ACTION_SHADE }, + { "_NET_WM_ACTION_STICK", &ECORE_X_ATOM_NET_WM_ACTION_STICK }, + { "_NET_WM_ACTION_MAXIMIZE_HORZ", &ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_HORZ }, + { "_NET_WM_ACTION_MAXIMIZE_VERT", &ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_VERT }, + { "_NET_WM_ACTION_FULLSCREEN", &ECORE_X_ATOM_NET_WM_ACTION_FULLSCREEN }, + { "_NET_WM_ACTION_CHANGE_DESKTOP", &ECORE_X_ATOM_NET_WM_ACTION_CHANGE_DESKTOP }, + { "_NET_WM_ACTION_CLOSE", &ECORE_X_ATOM_NET_WM_ACTION_CLOSE }, + + { "_NET_WM_STRUT", &ECORE_X_ATOM_NET_WM_STRUT }, + { "_NET_WM_STRUT_PARTIAL", &ECORE_X_ATOM_NET_WM_STRUT_PARTIAL }, + { "_NET_WM_ICON_GEOMETRY", &ECORE_X_ATOM_NET_WM_ICON_GEOMETRY }, + { "_NET_WM_ICON", &ECORE_X_ATOM_NET_WM_ICON }, + { "_NET_WM_PID", &ECORE_X_ATOM_NET_WM_PID }, + { "_NET_WM_HANDLED_ICONS", &ECORE_X_ATOM_NET_WM_HANDLED_ICONS }, + { "_NET_WM_USER_TIME", &ECORE_X_ATOM_NET_WM_USER_TIME }, + { "_NET_STARTUP_ID", &ECORE_X_ATOM_NET_STARTUP_ID }, + { "_NET_FRAME_EXTENTS", &ECORE_X_ATOM_NET_FRAME_EXTENTS }, + + { "_NET_WM_PING", &ECORE_X_ATOM_NET_WM_PING }, + { "_NET_WM_SYNC_REQUEST", &ECORE_X_ATOM_NET_WM_SYNC_REQUEST }, + { "_NET_WM_SYNC_REQUEST_COUNTER", &ECORE_X_ATOM_NET_WM_SYNC_REQUEST_COUNTER }, + + { "_NET_WM_WINDOW_OPACITY", &ECORE_X_ATOM_NET_WM_WINDOW_OPACITY }, + { "_NET_WM_WINDOW_SHADOW", &ECORE_X_ATOM_NET_WM_WINDOW_SHADOW }, + { "_NET_WM_WINDOW_SHADE", &ECORE_X_ATOM_NET_WM_WINDOW_SHADE }, + + { "TARGETS", &ECORE_X_ATOM_SELECTION_TARGETS }, + { "CLIPBOARD", &ECORE_X_ATOM_SELECTION_PRIMARY }, + { "PRIMARY", &ECORE_X_ATOM_SELECTION_SECONDARY }, + { "SECONDARY", &ECORE_X_ATOM_SELECTION_CLIPBOARD }, + { "_ECORE_SELECTION_PRIMARY", &ECORE_X_ATOM_SELECTION_PROP_PRIMARY }, + { "_ECORE_SELECTION_SECONDARY", &ECORE_X_ATOM_SELECTION_PROP_SECONDARY }, + { "_ECORE_SELECTION_CLIPBOARD", &ECORE_X_ATOM_SELECTION_PROP_CLIPBOARD } + }; + Atom *atoms; + char **names; + int i, num; + + num = sizeof(items) / sizeof(Atom_Item); + atoms = alloca(num * sizeof(Atom)); + names = alloca(num * sizeof(char *)); + for (i = 0; i < num; i++) names[i] = items[i].name; + XInternAtoms(_ecore_x_disp, names, num, False, atoms); + for (i = 0; i < num; i++) *(items[i].atom) = atoms[i]; +} diff --git a/legacy/ecore/src/lib/ecore_x/ecore_x_atoms_decl.h b/legacy/ecore/src/lib/ecore_x/ecore_x_atoms_decl.h new file mode 100644 index 0000000000..ee1d2731dc --- /dev/null +++ b/legacy/ecore/src/lib/ecore_x/ecore_x_atoms_decl.h @@ -0,0 +1,204 @@ +/* generic atoms */ +EAPI Ecore_X_Atom ECORE_X_ATOM_ATOM = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_CARDINAL = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_COMPOUND_TEXT = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_FILE_NAME = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_STRING = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_TEXT = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_UTF8_STRING = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WINDOW = 0; + +/* dnd atoms */ +EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_XDND = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_XDND = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_AWARE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ENTER = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_TYPE_LIST = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_POSITION = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_COPY = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_MOVE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_PRIVATE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_ASK = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_LIST = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_LINK = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_DESCRIPTION = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_PROXY = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_STATUS = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_LEAVE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_DROP = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_FINISHED = 0; + +/* dnd atoms that need to be exposed to the application interface */ +EAPI Ecore_X_Atom ECORE_X_DND_ACTION_COPY = 0; +EAPI Ecore_X_Atom ECORE_X_DND_ACTION_MOVE = 0; +EAPI Ecore_X_Atom ECORE_X_DND_ACTION_LINK = 0; +EAPI Ecore_X_Atom ECORE_X_DND_ACTION_ASK = 0; +EAPI Ecore_X_Atom ECORE_X_DND_ACTION_PRIVATE = 0; + +/* old E atom */ +EAPI Ecore_X_Atom ECORE_X_ATOM_E_FRAME_SIZE = 0; + +/* old Gnome atom */ +EAPI Ecore_X_Atom ECORE_X_ATOM_WIN_LAYER = 0; + +/* ICCCM atoms */ + +/* ICCCM: client properties */ +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_NAME = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_ICON_NAME = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_NORMAL_HINTS = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_SIZE_HINTS = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_HINTS = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_CLASS = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_TRANSIENT_FOR = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_PROTOCOLS = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_COLORMAP_WINDOWS = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_COMMAND = 0; /* obsolete */ +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_CLIENT_MACHINE = 0; /* obsolete */ + +/* ICCCM: window manager properties */ +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_STATE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_ICON_SIZE = 0; + +/* ICCCM: WM_STATE property */ +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_CHANGE_STATE = 0; + +/* ICCCM: WM_PROTOCOLS properties */ +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_TAKE_FOCUS = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_SAVE_YOURSELF = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_DELETE_WINDOW = 0; + +/* ICCCM: WM_COLORMAP properties */ +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_COLORMAP_NOTIFY = 0; + +/* ICCCM: session management properties */ +EAPI Ecore_X_Atom ECORE_X_ATOM_SM_CLIENT_ID = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_CLIENT_LEADER = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_WM_WINDOW_ROLE = 0; + +/* Motif WM atom */ +EAPI Ecore_X_Atom ECORE_X_ATOM_MOTIF_WM_HINTS = 0; + +/* NetWM 1.3 atoms (http://standards.freedesktop.org/wm-spec/wm-spec-1.3.html) */ + +/* + * NetWM: Root Window Properties and related messages (complete) + */ + +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_SUPPORTED = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_CLIENT_LIST = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_CLIENT_LIST_STACKING = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_NUMBER_OF_DESKTOPS = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_GEOMETRY = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_VIEWPORT = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_CURRENT_DESKTOP = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_NAMES = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_ACTIVE_WINDOW = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WORKAREA = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_VIRTUAL_ROOTS = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_LAYOUT = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_SHOWING_DESKTOP = 0; + +/* + * NetWM: Other Root Window Messages (complete) + */ + +/* pager */ +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_CLOSE_WINDOW = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_MOVERESIZE_WINDOW = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_MOVERESIZE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_RESTACK_WINDOW = 0; + +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_REQUEST_FRAME_EXTENTS = 0; + +/* + * NetWM: Application Window Properties (complete) + */ + +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_NAME = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_VISIBLE_NAME = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON_NAME = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_VISIBLE_ICON_NAME = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_DESKTOP = 0; + +/* window type */ +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DESKTOP = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DOCK = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLBAR = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_MENU = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_UTILITY = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_SPLASH = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DIALOG = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL = 0; + +/* state */ +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_MODAL = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_STICKY = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_VERT = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_HORZ = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_SHADED = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_SKIP_TASKBAR = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_SKIP_PAGER = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_HIDDEN = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_FULLSCREEN = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_ABOVE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_BELOW = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_DEMANDS_ATTENTION = 0; + +/* allowed actions */ +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ALLOWED_ACTIONS = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MOVE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_RESIZE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MINIMIZE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_SHADE = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_STICK = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_HORZ = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_VERT = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_FULLSCREEN = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_CHANGE_DESKTOP = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_CLOSE = 0; + +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STRUT = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STRUT_PARTIAL = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON_GEOMETRY = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_PID = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_HANDLED_ICONS = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_USER_TIME = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_ID = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_FRAME_EXTENTS = 0; + +/* + * NetWM: Window Manager Protocols (complete) + */ + +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_PING = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_SYNC_REQUEST = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_SYNC_REQUEST_COUNTER = 0; + +/* + * NetWM: Not in the spec + */ + +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_OPACITY = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_SHADOW = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_SHADE = 0; + +/* + * Startup Notification (http://standards.freedesktop.org/startup-notification-spec/startup-notification-0.1.txt) + */ + +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_INFO_BEGIN = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_INFO = 0; + +/* selection atoms */ +EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_TARGETS = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PRIMARY = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_SECONDARY = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_CLIPBOARD = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_PRIMARY = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_SECONDARY = 0; +EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_CLIPBOARD = 0; diff --git a/legacy/ecore/src/lib/ecore_x/ecore_x_dnd.c b/legacy/ecore/src/lib/ecore_x/ecore_x_dnd.c index 6b2f75a424..61a64df4d2 100644 --- a/legacy/ecore/src/lib/ecore_x/ecore_x_dnd.c +++ b/legacy/ecore/src/lib/ecore_x/ecore_x_dnd.c @@ -6,32 +6,6 @@ #include "Ecore_X.h" #include "Ecore_X_Atoms.h" -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_XDND = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_XDND = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_AWARE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ENTER = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_TYPE_LIST = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_POSITION = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_COPY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_MOVE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_LINK = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_PRIVATE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_ASK = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_LIST = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_DESCRIPTION = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_PROXY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_STATUS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_DROP = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_FINISHED = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_LEAVE = 0; - -/* Xdnd atoms that need to be exposed to the application interface */ -EAPI Ecore_X_Atom ECORE_X_DND_ACTION_COPY = 0; -EAPI Ecore_X_Atom ECORE_X_DND_ACTION_MOVE = 0; -EAPI Ecore_X_Atom ECORE_X_DND_ACTION_LINK = 0; -EAPI Ecore_X_Atom ECORE_X_DND_ACTION_ASK = 0; -EAPI Ecore_X_Atom ECORE_X_DND_ACTION_PRIVATE = 0; - EAPI int ECORE_X_EVENT_XDND_ENTER = 0; EAPI int ECORE_X_EVENT_XDND_POSITION = 0; EAPI int ECORE_X_EVENT_XDND_STATUS = 0; @@ -73,32 +47,6 @@ _ecore_x_dnd_init(void) ECORE_X_EVENT_XDND_LEAVE = ecore_event_type_new(); ECORE_X_EVENT_XDND_DROP = ecore_event_type_new(); ECORE_X_EVENT_XDND_FINISHED = ecore_event_type_new(); - - ECORE_X_ATOM_SELECTION_PROP_XDND = XInternAtom(_ecore_x_disp, "XSelectionWindowProperty", False); - ECORE_X_ATOM_SELECTION_XDND = XInternAtom(_ecore_x_disp, "XdndSelection", False); - ECORE_X_ATOM_XDND_AWARE = XInternAtom(_ecore_x_disp, "XdndAware", False); - ECORE_X_ATOM_XDND_TYPE_LIST = XInternAtom(_ecore_x_disp, "XdndTypeList", False); - ECORE_X_ATOM_XDND_ENTER = XInternAtom(_ecore_x_disp, "XdndEnter", False); - ECORE_X_ATOM_XDND_POSITION = XInternAtom(_ecore_x_disp, "XdndPosition", False); - ECORE_X_ATOM_XDND_ACTION_COPY = XInternAtom(_ecore_x_disp, "XdndActionCopy", False); - ECORE_X_ATOM_XDND_ACTION_MOVE = XInternAtom(_ecore_x_disp, "XdndActionMove", False); - ECORE_X_ATOM_XDND_ACTION_PRIVATE = XInternAtom(_ecore_x_disp, "XdndActionPrivate", False); - ECORE_X_ATOM_XDND_ACTION_ASK = XInternAtom(_ecore_x_disp, "XdndActionAsk", False); - ECORE_X_ATOM_XDND_ACTION_LIST = XInternAtom(_ecore_x_disp, "XdndActionList", False); - ECORE_X_ATOM_XDND_ACTION_LINK = XInternAtom(_ecore_x_disp, "XdndActionLink", False); - ECORE_X_ATOM_XDND_ACTION_DESCRIPTION = XInternAtom(_ecore_x_disp, "XdndActionDescription", False); - ECORE_X_ATOM_XDND_PROXY = XInternAtom(_ecore_x_disp, "XdndProxy", False); - ECORE_X_ATOM_XDND_STATUS = XInternAtom(_ecore_x_disp, "XdndStatus", False); - ECORE_X_ATOM_XDND_LEAVE = XInternAtom(_ecore_x_disp, "XdndLeave", False); - ECORE_X_ATOM_XDND_DROP = XInternAtom(_ecore_x_disp, "XdndDrop", False); - ECORE_X_ATOM_XDND_FINISHED = XInternAtom(_ecore_x_disp, "XdndFinished", False); - - /* Initialize the globally defined xdnd atoms */ - ECORE_X_DND_ACTION_COPY = ECORE_X_ATOM_XDND_ACTION_COPY; - ECORE_X_DND_ACTION_MOVE = ECORE_X_ATOM_XDND_ACTION_MOVE; - ECORE_X_DND_ACTION_LINK = ECORE_X_ATOM_XDND_ACTION_LINK; - ECORE_X_DND_ACTION_ASK = ECORE_X_ATOM_XDND_ACTION_ASK; - ECORE_X_DND_ACTION_PRIVATE = ECORE_X_ATOM_XDND_ACTION_PRIVATE; } _ecore_x_dnd_init_count++; diff --git a/legacy/ecore/src/lib/ecore_x/ecore_x_e.c b/legacy/ecore/src/lib/ecore_x/ecore_x_e.c index cc57bc8262..3e1b9ed60f 100644 --- a/legacy/ecore/src/lib/ecore_x/ecore_x_e.c +++ b/legacy/ecore/src/lib/ecore_x/ecore_x_e.c @@ -10,18 +10,9 @@ #include "Ecore_X.h" #include "Ecore_X_Atoms.h" -/* - * Convenience macros - */ -#define _ATOM_GET(name) \ - XInternAtom(_ecore_x_disp, name, False) - -Ecore_X_Atom ECORE_X_ATOM_E_FRAME_SIZE = 0; - EAPI void ecore_x_e_init(void) { - ECORE_X_ATOM_E_FRAME_SIZE = _ATOM_GET("_E_FRAME_SIZE"); } EAPI void diff --git a/legacy/ecore/src/lib/ecore_x/ecore_x_icccm.c b/legacy/ecore/src/lib/ecore_x/ecore_x_icccm.c index b6d5d965d3..399ca92d19 100644 --- a/legacy/ecore/src/lib/ecore_x/ecore_x_icccm.c +++ b/legacy/ecore/src/lib/ecore_x/ecore_x_icccm.c @@ -12,58 +12,10 @@ #include "Ecore_X.h" #include "Ecore_X_Atoms.h" -/* Atoms */ -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_STATE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_DELETE_WINDOW = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_TAKE_FOCUS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_PROTOCOLS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_CLASS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_COMMAND = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_ICON_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_CLIENT_MACHINE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_CHANGE_STATE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_COLORMAP_WINDOWS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_WINDOW_ROLE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_HINTS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_NORMAL_HINTS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_CLIENT_LEADER = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_TRANSIENT_FOR = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_SAVE_YOURSELF = 0; EAPI void ecore_x_icccm_init(void) { - - ECORE_X_ATOM_WM_STATE = XInternAtom(_ecore_x_disp, "WM_STATE", False); - ECORE_X_ATOM_WM_DELETE_WINDOW = - XInternAtom(_ecore_x_disp, "WM_DELETE_WINDOW", False); - ECORE_X_ATOM_WM_TAKE_FOCUS = - XInternAtom(_ecore_x_disp, "WM_TAKE_FOCUS", False); - ECORE_X_ATOM_WM_PROTOCOLS = - XInternAtom(_ecore_x_disp, "WM_PROTOCOLS", False); - ECORE_X_ATOM_WM_CLASS = XInternAtom(_ecore_x_disp, "WM_CLASS", False); - ECORE_X_ATOM_WM_NAME = XInternAtom(_ecore_x_disp, "WM_NAME", False); - ECORE_X_ATOM_WM_COMMAND = XInternAtom(_ecore_x_disp, "WM_COMMAND", False); - ECORE_X_ATOM_WM_ICON_NAME = - XInternAtom(_ecore_x_disp, "WM_ICON_NAME", False); - ECORE_X_ATOM_WM_CLIENT_MACHINE = - XInternAtom(_ecore_x_disp, "WM_CLIENT_MACHINE", False); - ECORE_X_ATOM_WM_CHANGE_STATE = - XInternAtom(_ecore_x_disp, "WM_CHANGE_STATE", False); - ECORE_X_ATOM_WM_COLORMAP_WINDOWS = - XInternAtom(_ecore_x_disp, "WM_COLORMAP_WINDOWS", False); - ECORE_X_ATOM_WM_WINDOW_ROLE = - XInternAtom(_ecore_x_disp, "WM_WINDOW_ROLE", False); - ECORE_X_ATOM_WM_HINTS = XInternAtom(_ecore_x_disp, "WM_HINTS", False); - ECORE_X_ATOM_WM_NORMAL_HINTS = - XInternAtom(_ecore_x_disp, "WM_NORMAL_HINTS", False); - ECORE_X_ATOM_WM_CLIENT_LEADER = - XInternAtom(_ecore_x_disp, "WM_CLIENT_LEADER", False); - ECORE_X_ATOM_WM_TRANSIENT_FOR = - XInternAtom(_ecore_x_disp, "WM_TRANSIENT_FOR", False); - ECORE_X_ATOM_WM_SAVE_YOURSELF = - XInternAtom(_ecore_x_disp, "WM_SAVE_YOURSELF", False); } EAPI void diff --git a/legacy/ecore/src/lib/ecore_x/ecore_x_mwm.c b/legacy/ecore/src/lib/ecore_x/ecore_x_mwm.c index 7eee63b129..c009c7a038 100644 --- a/legacy/ecore/src/lib/ecore_x/ecore_x_mwm.c +++ b/legacy/ecore/src/lib/ecore_x/ecore_x_mwm.c @@ -24,9 +24,6 @@ typedef struct _mwmhints } MWMHints; -/* Atoms */ -EAPI Ecore_X_Atom ECORE_X_ATOM_MOTIF_WM_HINTS = 0; - EAPI int ecore_x_mwm_hints_get(Ecore_X_Window win, Ecore_X_MWM_Hint_Func * fhint, diff --git a/legacy/ecore/src/lib/ecore_x/ecore_x_netwm.c b/legacy/ecore/src/lib/ecore_x/ecore_x_netwm.c index f632a064f9..b10e783618 100644 --- a/legacy/ecore/src/lib/ecore_x/ecore_x_netwm.c +++ b/legacy/ecore/src/lib/ecore_x/ecore_x_netwm.c @@ -48,9 +48,6 @@ static void _ecore_x_netwm_startup_info_free(void *data); /* * Convenience macros */ -#define _ATOM_GET(name) \ - XInternAtom(_ecore_x_disp, name, False) - #define _ATOM_SET_UTF8_STRING_LIST(win, atom, string, cnt) \ XChangeProperty(_ecore_x_disp, win, atom, ECORE_X_ATOM_UTF8_STRING, 8, PropModeReplace, \ (unsigned char *)string, cnt) @@ -61,203 +58,12 @@ static void _ecore_x_netwm_startup_info_free(void *data); static Ecore_Hash *startup_info = NULL; -/* - * Root window NetWM hints. - */ -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_SUPPORTED = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK = 0; - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_NUMBER_OF_DESKTOPS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_VIRTUAL_ROOTS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_NAMES = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_GEOMETRY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_VIEWPORT = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_LAYOUT = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WORKAREA = 0; - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_CURRENT_DESKTOP = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_SHOWING_DESKTOP = 0; - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_CLIENT_LIST = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_CLIENT_LIST_STACKING = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_ACTIVE_WINDOW = 0; - -/* - * Client message types. - */ -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_CLOSE_WINDOW = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_MOVERESIZE = 0; - -/* - * Pagers - */ -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_MOVERESIZE_WINDOW = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_RESTACK_WINDOW = 0; - -/* - * Application window specific NetWM hints. - */ -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_ID = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_VISIBLE_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_VISIBLE_ICON_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_DESKTOP = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STRUT = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STRUT_PARTIAL = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON_GEOMETRY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_PID = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_HANDLED_ICONS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_USER_TIME = 0; - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ALLOWED_ACTIONS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MOVE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_RESIZE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MINIMIZE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_SHADE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_STICK = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_HORZ = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_VERT = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_FULLSCREEN = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_CHANGE_DESKTOP = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_CLOSE = 0; - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DESKTOP = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DOCK = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLBAR = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_MENU = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_UTILITY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_SPLASH = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DIALOG = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL = 0; - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_MODAL = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_STICKY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_VERT = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_HORZ = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_SHADED = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_SKIP_TASKBAR = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_SKIP_PAGER = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_HIDDEN = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_FULLSCREEN = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_ABOVE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_BELOW = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_DEMANDS_ATTENTION = 0; - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_OPACITY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_SHADOW = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_SHADE = 0; - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_FRAME_EXTENTS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_REQUEST_FRAME_EXTENTS = 0; - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_PING = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_SYNC_REQUEST = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_SYNC_REQUEST_COUNTER = 0; - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_INFO_BEGIN = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_INFO = 0; - EAPI void ecore_x_netwm_init(void) { - ECORE_X_ATOM_NET_SUPPORTED = _ATOM_GET("_NET_SUPPORTED"); - ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK = _ATOM_GET("_NET_SUPPORTING_WM_CHECK"); - - ECORE_X_ATOM_NET_NUMBER_OF_DESKTOPS = _ATOM_GET("_NET_NUMBER_OF_DESKTOPS"); - ECORE_X_ATOM_NET_VIRTUAL_ROOTS = _ATOM_GET("_NET_VIRTUAL_ROOTS"); - ECORE_X_ATOM_NET_DESKTOP_NAMES = _ATOM_GET("_NET_DESKTOP_NAMES"); - ECORE_X_ATOM_NET_DESKTOP_GEOMETRY = _ATOM_GET("_NET_DESKTOP_GEOMETRY"); - ECORE_X_ATOM_NET_DESKTOP_VIEWPORT = _ATOM_GET("_NET_DESKTOP_VIEWPORT"); - ECORE_X_ATOM_NET_DESKTOP_LAYOUT = _ATOM_GET("_NET_DESKTOP_LAYOUT"); - ECORE_X_ATOM_NET_WORKAREA = _ATOM_GET("_NET_WORKAREA"); - - ECORE_X_ATOM_NET_CURRENT_DESKTOP = _ATOM_GET("_NET_CURRENT_DESKTOP"); - ECORE_X_ATOM_NET_SHOWING_DESKTOP = _ATOM_GET("_NET_SHOWING_DESKTOP"); - - ECORE_X_ATOM_NET_CLIENT_LIST = _ATOM_GET("_NET_CLIENT_LIST"); - ECORE_X_ATOM_NET_CLIENT_LIST_STACKING = - _ATOM_GET("_NET_CLIENT_LIST_STACKING"); - ECORE_X_ATOM_NET_ACTIVE_WINDOW = _ATOM_GET("_NET_ACTIVE_WINDOW"); - - ECORE_X_ATOM_NET_CLOSE_WINDOW = _ATOM_GET("_NET_CLOSE_WINDOW"); - ECORE_X_ATOM_NET_WM_MOVERESIZE = _ATOM_GET("_NET_WM_MOVERESIZE"); - - ECORE_X_ATOM_NET_MOVERESIZE_WINDOW = _ATOM_GET("_NET_MOVERESIZE_WINDOW"); - ECORE_X_ATOM_NET_RESTACK_WINDOW = _ATOM_GET("_NET_RESTACK_WINDOW"); - - ECORE_X_ATOM_NET_WM_NAME = _ATOM_GET("_NET_WM_NAME"); - ECORE_X_ATOM_NET_STARTUP_ID = _ATOM_GET("_NET_STARTUP_ID"); - ECORE_X_ATOM_NET_WM_VISIBLE_NAME = _ATOM_GET("_NET_WM_VISIBLE_NAME"); - ECORE_X_ATOM_NET_WM_ICON_NAME = _ATOM_GET("_NET_WM_ICON_NAME"); - ECORE_X_ATOM_NET_WM_VISIBLE_ICON_NAME = _ATOM_GET("_NET_WM_VISIBLE_ICON_NAME"); - ECORE_X_ATOM_NET_WM_DESKTOP = _ATOM_GET("_NET_WM_DESKTOP"); - ECORE_X_ATOM_NET_WM_STRUT = _ATOM_GET("_NET_WM_STRUT"); - ECORE_X_ATOM_NET_WM_STRUT_PARTIAL = _ATOM_GET("_NET_WM_STRUT_PARTIAL"); - ECORE_X_ATOM_NET_WM_ICON_GEOMETRY = _ATOM_GET("_NET_WM_ICON_GEOMETRY"); - ECORE_X_ATOM_NET_WM_ICON = _ATOM_GET("_NET_WM_ICON"); - ECORE_X_ATOM_NET_WM_PID = _ATOM_GET("_NET_WM_PID"); - ECORE_X_ATOM_NET_WM_HANDLED_ICONS = _ATOM_GET("_NET_WM_HANDLED_ICONS"); - ECORE_X_ATOM_NET_WM_USER_TIME = _ATOM_GET("_NET_WM_USER_TIME"); - - ECORE_X_ATOM_NET_WM_ALLOWED_ACTIONS = _ATOM_GET("_NET_WM_ALLOWED_ACTIONS"); - ECORE_X_ATOM_NET_WM_ACTION_MOVE = _ATOM_GET("_NET_WM_ACTION_MOVE"); - ECORE_X_ATOM_NET_WM_ACTION_RESIZE = _ATOM_GET("_NET_WM_ACTION_RESIZE"); - ECORE_X_ATOM_NET_WM_ACTION_MINIMIZE = _ATOM_GET("_NET_WM_ACTION_MINIMIZE"); - ECORE_X_ATOM_NET_WM_ACTION_SHADE = _ATOM_GET("_NET_WM_ACTION_SHADE"); - ECORE_X_ATOM_NET_WM_ACTION_STICK = _ATOM_GET("_NET_WM_ACTION_STICK"); - ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_HORZ = _ATOM_GET("_NET_WM_ACTION_MAXIMIZE_HORZ"); - ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_VERT = _ATOM_GET("_NET_WM_ACTION_MAXIMIZE_VERT"); - ECORE_X_ATOM_NET_WM_ACTION_FULLSCREEN = _ATOM_GET("_NET_WM_ACTION_FULLSCREEN"); - ECORE_X_ATOM_NET_WM_ACTION_CHANGE_DESKTOP = _ATOM_GET("_NET_WM_ACTION_CHANGE_DESKTOP"); - ECORE_X_ATOM_NET_WM_ACTION_CLOSE = _ATOM_GET("_NET_WM_ACTION_CLOSE"); - - ECORE_X_ATOM_NET_WM_WINDOW_TYPE = _ATOM_GET("_NET_WM_WINDOW_TYPE"); - ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DESKTOP = _ATOM_GET("_NET_WM_WINDOW_TYPE_DESKTOP"); - ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DOCK = _ATOM_GET("_NET_WM_WINDOW_TYPE_DOCK"); - ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLBAR = _ATOM_GET("_NET_WM_WINDOW_TYPE_TOOLBAR"); - ECORE_X_ATOM_NET_WM_WINDOW_TYPE_MENU = _ATOM_GET("_NET_WM_WINDOW_TYPE_MENU"); - ECORE_X_ATOM_NET_WM_WINDOW_TYPE_UTILITY = _ATOM_GET("_NET_WM_WINDOW_TYPE_UTILITY"); - ECORE_X_ATOM_NET_WM_WINDOW_TYPE_SPLASH = _ATOM_GET("_NET_WM_WINDOW_TYPE_SPLASH"); - ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DIALOG = _ATOM_GET("_NET_WM_WINDOW_TYPE_DIALOG"); - ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL = _ATOM_GET("_NET_WM_WINDOW_TYPE_NORMAL"); - - ECORE_X_ATOM_NET_WM_STATE = _ATOM_GET("_NET_WM_STATE"); - ECORE_X_ATOM_NET_WM_STATE_MODAL = _ATOM_GET("_NET_WM_STATE_MODAL"); - ECORE_X_ATOM_NET_WM_STATE_STICKY = _ATOM_GET("_NET_WM_STATE_STICKY"); - ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_VERT = _ATOM_GET("_NET_WM_STATE_MAXIMIZED_VERT"); - ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_HORZ = _ATOM_GET("_NET_WM_STATE_MAXIMIZED_HORZ"); - ECORE_X_ATOM_NET_WM_STATE_SHADED = _ATOM_GET("_NET_WM_STATE_SHADED"); - ECORE_X_ATOM_NET_WM_STATE_SKIP_TASKBAR = _ATOM_GET("_NET_WM_STATE_SKIP_TASKBAR"); - ECORE_X_ATOM_NET_WM_STATE_SKIP_PAGER = _ATOM_GET("_NET_WM_STATE_SKIP_PAGER"); - ECORE_X_ATOM_NET_WM_STATE_HIDDEN = _ATOM_GET("_NET_WM_STATE_HIDDEN"); - ECORE_X_ATOM_NET_WM_STATE_FULLSCREEN = _ATOM_GET("_NET_WM_STATE_FULLSCREEN"); - ECORE_X_ATOM_NET_WM_STATE_ABOVE = _ATOM_GET("_NET_WM_STATE_ABOVE"); - ECORE_X_ATOM_NET_WM_STATE_BELOW = _ATOM_GET("_NET_WM_STATE_BELOW"); - ECORE_X_ATOM_NET_WM_STATE_DEMANDS_ATTENTION = _ATOM_GET("_NET_WM_STATE_DEMANDS_ATTENTION"); - - ECORE_X_ATOM_NET_WM_WINDOW_OPACITY = _ATOM_GET("_NET_WM_WINDOW_OPACITY"); - ECORE_X_ATOM_NET_WM_WINDOW_SHADOW = _ATOM_GET("_NET_WM_WINDOW_SHADOW"); - ECORE_X_ATOM_NET_WM_WINDOW_SHADE = _ATOM_GET("_NET_WM_WINDOW_SHADE"); - - ECORE_X_ATOM_NET_FRAME_EXTENTS = _ATOM_GET("_NET_FRAME_EXTENTS"); - ECORE_X_ATOM_NET_REQUEST_FRAME_EXTENTS = _ATOM_GET("_NET_REQUEST_FRAME_EXTENTS"); - - ECORE_X_ATOM_NET_WM_PING = _ATOM_GET("_NET_WM_PING"); - ECORE_X_ATOM_NET_WM_SYNC_REQUEST = _ATOM_GET("_NET_WM_SYNC_REQUEST"); - ECORE_X_ATOM_NET_WM_SYNC_REQUEST_COUNTER = _ATOM_GET("_NET_WM_SYNC_REQUEST_COUNTER"); - - ECORE_X_ATOM_NET_STARTUP_INFO_BEGIN = _ATOM_GET("_NET_STARTUP_INFO_BEGIN"); - ECORE_X_ATOM_NET_STARTUP_INFO = _ATOM_GET("_NET_STARTUP_INFO"); - startup_info = ecore_hash_new(ecore_direct_hash, ecore_direct_compare); if (startup_info) - { - ecore_hash_free_value_cb_set(startup_info, _ecore_x_netwm_startup_info_free); - } + ecore_hash_free_value_cb_set(startup_info, _ecore_x_netwm_startup_info_free); } EAPI void diff --git a/legacy/ecore/src/lib/ecore_x/ecore_x_private.h b/legacy/ecore/src/lib/ecore_x/ecore_x_private.h index c16e0726fb..9fcb6490c3 100644 --- a/legacy/ecore/src/lib/ecore_x/ecore_x_private.h +++ b/legacy/ecore/src/lib/ecore_x/ecore_x_private.h @@ -231,6 +231,8 @@ void _ecore_x_damage_init(void); void _ecore_x_composite_init(void); void _ecore_x_dpms_init(void); +void _ecore_x_atoms_init(void); + /* from sync */ #endif diff --git a/legacy/ecore/src/lib/ecore_x/ecore_xcb_atom.c b/legacy/ecore/src/lib/ecore_x/ecore_xcb_atom.c index 79a342c9b4..deece9c454 100644 --- a/legacy/ecore/src/lib/ecore_x/ecore_xcb_atom.c +++ b/legacy/ecore/src/lib/ecore_x/ecore_xcb_atom.c @@ -15,210 +15,7 @@ /* Atoms */ /*********/ -/* generic atoms */ -EAPI Ecore_X_Atom ECORE_X_ATOM_ATOM = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_CARDINAL = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_COMPOUND_TEXT = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_FILE_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_STRING = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_TEXT = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_UTF8_STRING = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WINDOW = 0; - -/* dnd atoms */ -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_XDND = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_XDND = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_AWARE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ENTER = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_TYPE_LIST = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_POSITION = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_COPY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_MOVE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_PRIVATE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_ASK = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_LIST = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_LINK = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_ACTION_DESCRIPTION = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_PROXY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_STATUS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_LEAVE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_DROP = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_XDND_FINISHED = 0; - -/* dnd atoms that need to be exposed to the application interface */ -EAPI Ecore_X_Atom ECORE_X_DND_ACTION_COPY = 0; -EAPI Ecore_X_Atom ECORE_X_DND_ACTION_MOVE = 0; -EAPI Ecore_X_Atom ECORE_X_DND_ACTION_LINK = 0; -EAPI Ecore_X_Atom ECORE_X_DND_ACTION_ASK = 0; -EAPI Ecore_X_Atom ECORE_X_DND_ACTION_PRIVATE = 0; - -/* old E atom */ -EAPI Ecore_X_Atom ECORE_X_ATOM_E_FRAME_SIZE = 0; - -/* old Gnome atom */ -EAPI Ecore_X_Atom ECORE_X_ATOM_WIN_LAYER = 0; - -/* ICCCM atoms */ - -/* ICCCM: client properties */ -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_ICON_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_NORMAL_HINTS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_SIZE_HINTS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_HINTS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_CLASS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_TRANSIENT_FOR = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_PROTOCOLS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_COLORMAP_WINDOWS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_COMMAND = 0; /* obsolete */ -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_CLIENT_MACHINE = 0; /* obsolete */ - -/* ICCCM: window manager properties */ -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_STATE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_ICON_SIZE = 0; - -/* ICCCM: WM_STATE property */ -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_CHANGE_STATE = 0; - -/* ICCCM: WM_PROTOCOLS properties */ -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_TAKE_FOCUS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_SAVE_YOURSELF = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_DELETE_WINDOW = 0; - -/* ICCCM: WM_COLORMAP properties */ -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_COLORMAP_NOTIFY = 0; - -/* ICCCM: session management properties */ -EAPI Ecore_X_Atom ECORE_X_ATOM_SM_CLIENT_ID = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_CLIENT_LEADER = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_WM_WINDOW_ROLE = 0; - -/* Motif WM atom */ -EAPI Ecore_X_Atom ECORE_X_ATOM_MOTIF_WM_HINTS = 0; - -/* NetWM 1.3 atoms (http://standards.freedesktop.org/wm-spec/wm-spec-1.3.html) */ - -/* - * NetWM: Root Window Properties and related messages (complete) - */ - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_SUPPORTED = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_CLIENT_LIST = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_CLIENT_LIST_STACKING = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_NUMBER_OF_DESKTOPS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_GEOMETRY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_VIEWPORT = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_CURRENT_DESKTOP = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_NAMES = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_ACTIVE_WINDOW = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WORKAREA = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_VIRTUAL_ROOTS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_DESKTOP_LAYOUT = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_SHOWING_DESKTOP = 0; - -/* - * NetWM: Other Root Window Messages (complete) - */ - -/* pager */ -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_CLOSE_WINDOW = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_MOVERESIZE_WINDOW = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_MOVERESIZE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_RESTACK_WINDOW = 0; - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_REQUEST_FRAME_EXTENTS = 0; - -/* - * NetWM: Application Window Properties (complete) - */ - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_VISIBLE_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_VISIBLE_ICON_NAME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_DESKTOP = 0; - -/* window type */ -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DESKTOP = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DOCK = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLBAR = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_MENU = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_UTILITY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_SPLASH = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DIALOG = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL = 0; - -/* state */ -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_MODAL = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_STICKY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_VERT = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_HORZ = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_SHADED = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_SKIP_TASKBAR = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_SKIP_PAGER = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_HIDDEN = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_FULLSCREEN = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_ABOVE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_BELOW = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE_DEMANDS_ATTENTION = 0; - -/* allowed actions */ -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ALLOWED_ACTIONS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MOVE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_RESIZE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MINIMIZE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_SHADE = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_STICK = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_HORZ = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_VERT = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_FULLSCREEN = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_CHANGE_DESKTOP = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ACTION_CLOSE = 0; - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STRUT = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_STRUT_PARTIAL = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON_GEOMETRY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_PID = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_HANDLED_ICONS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_USER_TIME = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_ID = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_FRAME_EXTENTS = 0; - -/* - * NetWM: Window Manager Protocols (complete) - */ - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_PING = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_SYNC_REQUEST = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_SYNC_REQUEST_COUNTER = 0; - -/* - * NetWM: Not in the spec - */ - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_OPACITY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_SHADOW = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_SHADE = 0; - -/* - * Startup Notification (http://standards.freedesktop.org/startup-notification-spec/startup-notification-0.1.txt) - */ - -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_INFO_BEGIN = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_NET_STARTUP_INFO = 0; - -/* selection atoms */ -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_TARGETS = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PRIMARY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_SECONDARY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_CLIPBOARD = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_PRIMARY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_SECONDARY = 0; -EAPI Ecore_X_Atom ECORE_X_ATOM_SELECTION_PROP_CLIPBOARD = 0; +#include "ecore_x_atoms_decl.h" /* To avoid round trips, the initialization is separated in 2 functions: _ecore_xcb_atom_init and