parent
e3f3a9c6bd
commit
b8d230d659
|
@ -847,11 +847,12 @@ Ecore_X_Atom ECORE_X_ATOM_NET_FRAME_EXTENTS;
|
|||
|
||||
Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON;
|
||||
|
||||
Ecore_X_Atom ECORE_X_ATOM_NET_WM_USER_TIME;
|
||||
|
||||
#if 0 /* Not used */
|
||||
Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON_GEOMETRY;
|
||||
Ecore_X_Atom ECORE_X_ATOM_NET_WM_PID;
|
||||
Ecore_X_Atom ECORE_X_ATOM_NET_WM_HANDLED_ICONS;
|
||||
Ecore_X_Atom ECORE_X_ATOM_NET_WM_USER_TIME;
|
||||
|
||||
Ecore_X_Atom ECORE_X_ATOM_NET_WM_PING;
|
||||
Ecore_X_Atom ECORE_X_ATOM_NET_WM_SYNC_REQUEST;
|
||||
|
@ -863,9 +864,9 @@ Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_OPACITY;
|
|||
Ecore_X_Atom ECORE_X_ATOM_NET_CLOSE_WINDOW;
|
||||
Ecore_X_Atom ECORE_X_ATOM_NET_MOVERESIZE_WINDOW;
|
||||
Ecore_X_Atom ECORE_X_ATOM_NET_WM_MOVERESIZE;
|
||||
Ecore_X_Atom ECORE_X_ATOM_NET_RESTACK_WINDOW;
|
||||
|
||||
#if 0 /* Not yet implemented */
|
||||
Ecore_X_Atom ECORE_X_ATOM_NET_RESTACK_WINDOW;
|
||||
Ecore_X_Atom ECORE_X_ATOM_NET_REQUEST_FRAME_EXTENTS;
|
||||
#endif
|
||||
|
||||
|
@ -962,11 +963,12 @@ ecore_x_netwm_init(void)
|
|||
|
||||
ECORE_X_ATOM_NET_WM_ICON = _ATOM_GET("_NET_WM_ICON");
|
||||
|
||||
ECORE_X_ATOM_NET_WM_USER_TIME = _ATOM_GET("_NET_WM_USER_TIME");
|
||||
|
||||
#if 0 /* Not used */
|
||||
ECORE_X_ATOM_NET_WM_ICON_GEOMETRY = _ATOM_GET("_NET_WM_ICON_GEOMETRY");
|
||||
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_PING = _ATOM_GET("_NET_WM_PING");
|
||||
ECORE_X_ATOM_NET_WM_SYNC_REQUEST = _ATOM_GET("_NET_WM_SYNC_REQUEST");
|
||||
|
@ -977,9 +979,9 @@ ecore_x_netwm_init(void)
|
|||
ECORE_X_ATOM_NET_CLOSE_WINDOW = _ATOM_GET("_NET_CLOSE_WINDOW");
|
||||
ECORE_X_ATOM_NET_MOVERESIZE_WINDOW = _ATOM_GET("_NET_MOVERESIZE_WINDOW");
|
||||
ECORE_X_ATOM_NET_WM_MOVERESIZE = _ATOM_GET("_NET_WM_MOVERESIZE");
|
||||
ECORE_X_ATOM_NET_RESTACK_WINDOW = _ATOM_GET("_NET_RESTACK_WINDOW");
|
||||
|
||||
#if 0 /* Not yet implemented */
|
||||
ECORE_X_ATOM_NET_RESTACK_WINDOW = _ATOM_GET("_NET_RESTACK_WINDOW");
|
||||
ECORE_X_ATOM_NET_REQUEST_FRAME_EXTENTS =
|
||||
_ATOM_GET("_NET_REQUEST_FRAME_EXTENTS");
|
||||
#endif
|
||||
|
|
|
@ -179,11 +179,12 @@ extern Ecore_X_Atom ECORE_X_ATOM_NET_FRAME_EXTENTS;
|
|||
|
||||
extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON;
|
||||
|
||||
extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_USER_TIME;
|
||||
|
||||
#if 0 /* Not used */
|
||||
extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_ICON_GEOMETRY;
|
||||
extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_PID;
|
||||
extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_HANDLED_ICONS;
|
||||
extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_USER_TIME;
|
||||
|
||||
extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_PING;
|
||||
extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_SYNC_REQUEST;
|
||||
|
@ -195,9 +196,9 @@ extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_OPACITY;
|
|||
extern Ecore_X_Atom ECORE_X_ATOM_NET_CLOSE_WINDOW;
|
||||
extern Ecore_X_Atom ECORE_X_ATOM_NET_MOVERESIZE_WINDOW;
|
||||
extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_MOVERESIZE;
|
||||
extern Ecore_X_Atom ECORE_X_ATOM_NET_RESTACK_WINDOW;
|
||||
|
||||
#if 0 /* Not yet implemented */
|
||||
extern Ecore_X_Atom ECORE_X_ATOM_NET_RESTACK_WINDOW;
|
||||
extern Ecore_X_Atom ECORE_X_ATOM_NET_REQUEST_FRAME_EXTENTS;
|
||||
#endif
|
||||
|
||||
|
|
|
@ -891,10 +891,10 @@ EventShow(const XEvent * ev)
|
|||
case ClientMessage:
|
||||
txt = XGetAtomName(disp, ev->xclient.message_type);
|
||||
Eprintf
|
||||
("%#08lx EV-%s win=%#lx ev_type=%s(%ld) data[0-3]= %08lx %08lx %08lx %08lx\n",
|
||||
("%#08lx EV-%s win=%#lx ev_type=%s(%ld) data: %08lx %08lx %08lx %08lx %08lx\n",
|
||||
ser, name, win, txt, ev->xclient.message_type,
|
||||
ev->xclient.data.l[0], ev->xclient.data.l[1], ev->xclient.data.l[2],
|
||||
ev->xclient.data.l[3]);
|
||||
ev->xclient.data.l[3], ev->xclient.data.l[4]);
|
||||
XFree(txt);
|
||||
break;
|
||||
case MappingNotify:
|
||||
|
|
|
@ -626,6 +626,7 @@ EwinIconify(EWin * ewin)
|
|||
if (lst)
|
||||
Efree(lst);
|
||||
|
||||
EwinStateUpdate(ewin);
|
||||
HintsSetWindowState(ewin);
|
||||
|
||||
call_depth--;
|
||||
|
@ -700,6 +701,7 @@ EwinDeIconify1(EWin * ewin, int dx, int dy)
|
|||
if (lst)
|
||||
Efree(lst);
|
||||
|
||||
EwinStateUpdate(ewin);
|
||||
HintsSetWindowState(ewin);
|
||||
|
||||
call_depth--;
|
||||
|
@ -734,6 +736,7 @@ EwinUnStick(EWin * ewin)
|
|||
EoSetSticky(ewin, 0);
|
||||
EwinMoveToDesktopAt(ewin, DesksGetCurrent(), EoGetX(ewin), EoGetY(ewin));
|
||||
EwinBorderUpdateState(ewin);
|
||||
EwinStateUpdate(ewin);
|
||||
HintsSetWindowState(ewin);
|
||||
HintsSetWindowDesktop(ewin);
|
||||
SnapshotEwinUpdate(ewin, SNAP_USE_STICKY);
|
||||
|
@ -762,6 +765,7 @@ EwinStick(EWin * ewin)
|
|||
EoSetSticky(ewin, 1);
|
||||
EwinMoveToDesktopAt(ewin, DesksGetCurrent(), x, y);
|
||||
EwinBorderUpdateState(ewin);
|
||||
EwinStateUpdate(ewin);
|
||||
HintsSetWindowState(ewin);
|
||||
HintsSetWindowDesktop(ewin);
|
||||
SnapshotEwinUpdate(ewin, SNAP_USE_STICKY);
|
||||
|
@ -1072,6 +1076,7 @@ EwinShade(EWin * ewin)
|
|||
Eprintf("EwinShade-E\n");
|
||||
#endif
|
||||
|
||||
EwinStateUpdate(ewin);
|
||||
HintsSetWindowState(ewin);
|
||||
}
|
||||
|
||||
|
@ -1279,11 +1284,12 @@ EwinUnShade(EWin * ewin)
|
|||
Eprintf("EwinUnShade-E\n");
|
||||
#endif
|
||||
|
||||
EwinStateUpdate(ewin);
|
||||
HintsSetWindowState(ewin);
|
||||
}
|
||||
|
||||
void
|
||||
EwinSetFullscreen(EWin * ewin, int on)
|
||||
EwinOpFullscreen(EWin * ewin, int source __UNUSED__, int on)
|
||||
{
|
||||
int x, y, w, h, ww, hh;
|
||||
EWin **lst;
|
||||
|
@ -1371,6 +1377,7 @@ EwinSetFullscreen(EWin * ewin, int on)
|
|||
RaiseEwin(ewin);
|
||||
EwinMoveResize(ewin, x, y, w, h);
|
||||
}
|
||||
|
||||
HintsSetWindowState(ewin);
|
||||
}
|
||||
|
||||
|
@ -1579,12 +1586,13 @@ EwinOpSkipLists(EWin * ewin, int source __UNUSED__, int skip)
|
|||
ewin->props.skip_ext_task = skip;
|
||||
ewin->props.skip_winlist = skip;
|
||||
ewin->props.skip_focuslist = skip;
|
||||
|
||||
EwinStateUpdate(ewin);
|
||||
HintsSetWindowState(ewin);
|
||||
#if ENABLE_GNOME
|
||||
GNOME_SetClientList();
|
||||
#endif
|
||||
SnapshotEwinUpdate(ewin, SNAP_USE_SKIP_LISTS);
|
||||
EwinStateUpdate(ewin);
|
||||
}
|
||||
|
||||
#if 0 /* Unused */
|
||||
|
@ -1592,36 +1600,37 @@ void
|
|||
EwinOpSkipTask(EWin * ewin, int skip)
|
||||
{
|
||||
ewin->props.skip_ext_task = skip;
|
||||
|
||||
EwinStateUpdate(ewin);
|
||||
HintsSetWindowState(ewin);
|
||||
#if ENABLE_GNOME
|
||||
GNOME_SetClientList();
|
||||
#endif
|
||||
SnapshotEwinUpdate(ewin, SNAP_USE_SKIP_LISTS);
|
||||
EwinStateUpdate(ewin);
|
||||
}
|
||||
|
||||
void
|
||||
EwinOpSkipFocus(EWin * ewin, int skip)
|
||||
{
|
||||
ewin->props.skip_focuslist = skip;
|
||||
SnapshotEwinUpdate(ewin, SNAP_USE_SKIP_LISTS);
|
||||
EwinStateUpdate(ewin);
|
||||
SnapshotEwinUpdate(ewin, SNAP_USE_SKIP_LISTS);
|
||||
}
|
||||
|
||||
void
|
||||
EwinOpSkipWinlist(EWin * ewin, int skip)
|
||||
{
|
||||
ewin->props.skip_winlist = skip;
|
||||
SnapshotEwinUpdate(ewin, SNAP_USE_SKIP_LISTS);
|
||||
EwinStateUpdate(ewin);
|
||||
SnapshotEwinUpdate(ewin, SNAP_USE_SKIP_LISTS);
|
||||
}
|
||||
|
||||
void
|
||||
EwinOpNeverFocus(EWin * ewin, int on)
|
||||
{
|
||||
ewin->props.never_focus = on;
|
||||
SnapshotEwinUpdate(ewin, SNAP_USE_FOCUS_NEVER);
|
||||
EwinStateUpdate(ewin);
|
||||
SnapshotEwinUpdate(ewin, SNAP_USE_FOCUS_NEVER);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -1695,6 +1704,7 @@ EwinOpSetLayer(EWin * ewin, int source __UNUSED__, int layer)
|
|||
}
|
||||
EoSetLayer(ewin, layer);
|
||||
RaiseEwin(ewin);
|
||||
EwinStateUpdate(ewin);
|
||||
HintsSetWindowState(ewin);
|
||||
SnapshotEwinUpdate(ewin, SNAP_USE_LAYER);
|
||||
}
|
||||
|
@ -1783,6 +1793,7 @@ EwinOpMoveToDesk(EWin * ewin, int source __UNUSED__, Desk * dsk, int inc)
|
|||
EwinMoveToDesktop(ewin, dsk);
|
||||
RaiseEwin(ewin);
|
||||
EwinBorderUpdateState(ewin);
|
||||
EwinStateUpdate(ewin);
|
||||
HintsSetWindowState(ewin);
|
||||
HintsSetWindowDesktop(ewin);
|
||||
SnapshotEwinUpdate(ewin, SNAP_USE_STICKY);
|
||||
|
|
16
src/ewins.c
16
src/ewins.c
|
@ -649,19 +649,19 @@ EwinStateUpdate(EWin * ewin)
|
|||
|
||||
ewin->state.inhibit_move =
|
||||
EwinInhGetUser(ewin, move) || ewin->state.fullscreen;
|
||||
ewin->state.inhibit_resize =
|
||||
EwinInhGetUser(ewin, size) || ewin->state.shaded ||
|
||||
ewin->state.fullscreen;
|
||||
ewin->state.inhibit_resize = ewin->state.iconified || ewin->state.shaded ||
|
||||
EwinInhGetUser(ewin, size) || ewin->state.fullscreen;
|
||||
ewin->state.inhibit_iconify = EwinInhGetWM(ewin, iconify);
|
||||
ewin->state.inhibit_shade = ewin->state.no_border || ewin->state.fullscreen;
|
||||
ewin->state.inhibit_shade = ewin->state.no_border ||
|
||||
ewin->state.iconified || ewin->state.fullscreen;
|
||||
ewin->state.inhibit_stick = 0;
|
||||
ewin->state.inhibit_max_hor =
|
||||
ewin->state.inhibit_max_hor = ewin->state.inhibit_resize ||
|
||||
ewin->props.no_resize_h || ewin->state.fullscreen;
|
||||
ewin->state.inhibit_max_ver =
|
||||
ewin->state.inhibit_max_ver = ewin->state.inhibit_resize ||
|
||||
ewin->props.no_resize_v || ewin->state.fullscreen;
|
||||
ewin->state.inhibit_fullscreeen =
|
||||
ewin->state.inhibit_move || ewin->state.inhibit_resize;
|
||||
ewin->state.inhibit_change_desk = 0;
|
||||
ewin->state.inhibit_change_desk = ewin->state.iconified;
|
||||
ewin->state.inhibit_close = EwinInhGetApp(ewin, close) ||
|
||||
EwinInhGetUser(ewin, close);
|
||||
}
|
||||
|
@ -783,7 +783,7 @@ AddToFamily(EWin * ewin, Window win)
|
|||
|
||||
if (ewin->state.fullscreen)
|
||||
{
|
||||
EwinSetFullscreen(ewin, 2);
|
||||
EwinOpFullscreen(ewin, OPSRC_WM, 2);
|
||||
ewin->state.placed = 1;
|
||||
EwinMoveToDesktopAt(ewin, dsk, EoGetX(ewin), EoGetY(ewin));
|
||||
ShowEwin(ewin);
|
||||
|
|
|
@ -332,7 +332,6 @@ void EwinInstantShade(EWin * ewin, int force);
|
|||
void EwinInstantUnShade(EWin * ewin);
|
||||
void EwinShade(EWin * ewin);
|
||||
void EwinUnShade(EWin * ewin);
|
||||
void EwinSetFullscreen(EWin * ewin, int on);
|
||||
void EwinMoveToArea(EWin * ewin, int ax, int ay);
|
||||
|
||||
void EwinOpClose(EWin * ewin, int source);
|
||||
|
@ -349,6 +348,7 @@ void EwinOpSetBorder(EWin * ewin, int source, const char *name);
|
|||
void EwinOpSetOpacity(EWin * ewin, int source, int opacity);
|
||||
void EwinOpMoveToDesk(EWin * ewin, int source, struct _desk *dsk,
|
||||
int inc);
|
||||
void EwinOpFullscreen(EWin * ewin, int source, int on);
|
||||
|
||||
/* finders.c */
|
||||
EWin *EwinFindByPtr(const EWin * ewin);
|
||||
|
|
53
src/ewmh.c
53
src/ewmh.c
|
@ -49,6 +49,13 @@
|
|||
#define _NET_WM_STATE_ADD 1
|
||||
#define _NET_WM_STATE_TOGGLE 2
|
||||
|
||||
/* Source indication */
|
||||
#define _NET_WM_SOURCE_UNKNOWN 0
|
||||
#define _NET_WM_SOURCE_APP 1
|
||||
#define _NET_WM_SOURCE_USER 2
|
||||
|
||||
#define OPSRC(src) (((src) == _NET_WM_SOURCE_USER) ? _NET_WM_SOURCE_USER : _NET_WM_SOURCE_APP)
|
||||
|
||||
#ifndef ENABLE_HINTS_GNOME
|
||||
Atom _G_WIN_LAUER;
|
||||
#endif
|
||||
|
@ -789,6 +796,8 @@ void
|
|||
EWMH_ProcessClientMessage(XClientMessageEvent * ev)
|
||||
{
|
||||
EWin *ewin;
|
||||
int source;
|
||||
Time ts;
|
||||
|
||||
/*
|
||||
* The ones that don't target an application window
|
||||
|
@ -857,23 +866,29 @@ EWMH_ProcessClientMessage(XClientMessageEvent * ev)
|
|||
|
||||
if (ev->message_type == ECORE_X_ATOM_NET_ACTIVE_WINDOW)
|
||||
{
|
||||
EwinOpActivate(ewin, OPSRC_UNKNOWN);
|
||||
source = OPSRC(ev->data.l[0]);
|
||||
ts = ev->data.l[1];
|
||||
/* cwin = ev->data.l[2]; */
|
||||
EwinOpActivate(ewin, source);
|
||||
}
|
||||
else if (ev->message_type == ECORE_X_ATOM_NET_CLOSE_WINDOW)
|
||||
{
|
||||
EwinOpClose(ewin, OPSRC_UNKNOWN);
|
||||
/* ts = ev->data.l[0]; */
|
||||
source = OPSRC(ev->data.l[1]);
|
||||
EwinOpClose(ewin, source);
|
||||
}
|
||||
else if (ev->message_type == ECORE_X_ATOM_NET_WM_DESKTOP)
|
||||
{
|
||||
source = OPSRC(ev->data.l[1]);
|
||||
if ((unsigned)ev->data.l[0] == 0xFFFFFFFF)
|
||||
{
|
||||
if (!EoIsSticky(ewin))
|
||||
EwinOpStick(ewin, OPSRC_UNKNOWN, 1);
|
||||
EwinOpStick(ewin, source, 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (EoIsSticky(ewin))
|
||||
EwinOpStick(ewin, OPSRC_UNKNOWN, 0);
|
||||
EwinOpStick(ewin, source, 0);
|
||||
else
|
||||
EwinMoveToDesktop(ewin, DeskGet(ev->data.l[0]));
|
||||
}
|
||||
|
@ -890,6 +905,7 @@ EWMH_ProcessClientMessage(XClientMessageEvent * ev)
|
|||
action = ev->data.l[0];
|
||||
atom = ev->data.l[1];
|
||||
atom2 = ev->data.l[2];
|
||||
source = OPSRC(ev->data.l[3]);
|
||||
if (atom == ECORE_X_ATOM_NET_WM_STATE_MODAL)
|
||||
{
|
||||
action = do_set(ewin->state.modal, action);
|
||||
|
@ -899,12 +915,12 @@ EWMH_ProcessClientMessage(XClientMessageEvent * ev)
|
|||
else if (atom == ECORE_X_ATOM_NET_WM_STATE_STICKY)
|
||||
{
|
||||
action = do_set(EoIsSticky(ewin), action);
|
||||
EwinOpStick(ewin, OPSRC_UNKNOWN, action);
|
||||
EwinOpStick(ewin, source, action);
|
||||
}
|
||||
else if (atom == ECORE_X_ATOM_NET_WM_STATE_SHADED)
|
||||
{
|
||||
action = do_set(ewin->state.shaded, action);
|
||||
EwinOpShade(ewin, OPSRC_UNKNOWN, action);
|
||||
EwinOpShade(ewin, source, action);
|
||||
}
|
||||
else if (atom == ECORE_X_ATOM_NET_WM_STATE_SKIP_TASKBAR)
|
||||
{
|
||||
|
@ -958,23 +974,23 @@ EWMH_ProcessClientMessage(XClientMessageEvent * ev)
|
|||
if (ewin->state.fullscreen == action)
|
||||
goto done;
|
||||
|
||||
EwinSetFullscreen(ewin, action);
|
||||
EwinOpFullscreen(ewin, source, action);
|
||||
}
|
||||
else if (atom == ECORE_X_ATOM_NET_WM_STATE_ABOVE)
|
||||
{
|
||||
action = do_set(EoGetLayer(ewin) >= 6, action);
|
||||
if (action)
|
||||
EwinOpSetLayer(ewin, OPSRC_UNKNOWN, 6);
|
||||
EwinOpSetLayer(ewin, source, 6);
|
||||
else
|
||||
EwinOpSetLayer(ewin, OPSRC_UNKNOWN, 4);
|
||||
EwinOpSetLayer(ewin, source, 4);
|
||||
}
|
||||
else if (atom == ECORE_X_ATOM_NET_WM_STATE_BELOW)
|
||||
{
|
||||
action = do_set(EoGetLayer(ewin) <= 2, action);
|
||||
if (action)
|
||||
EwinOpSetLayer(ewin, OPSRC_UNKNOWN, 2);
|
||||
EwinOpSetLayer(ewin, source, 2);
|
||||
else
|
||||
EwinOpSetLayer(ewin, OPSRC_UNKNOWN, 4);
|
||||
EwinOpSetLayer(ewin, source, 4);
|
||||
}
|
||||
else if (atom == ECORE_X_ATOM_NET_WM_STATE_DEMANDS_ATTENTION)
|
||||
{
|
||||
|
@ -991,14 +1007,16 @@ EWMH_ProcessClientMessage(XClientMessageEvent * ev)
|
|||
grav = flags & 0xf;
|
||||
if (grav == 0)
|
||||
grav = ewin->client.grav;
|
||||
x = (flags & 0x100) ? ev->data.l[1] : EoGetX(ewin);
|
||||
y = (flags & 0x200) ? ev->data.l[2] : EoGetY(ewin);
|
||||
w = (flags & 0x400) ? ev->data.l[3] : ewin->client.w;
|
||||
h = (flags & 0x800) ? ev->data.l[4] : ewin->client.h;
|
||||
x = (flags & 0x0100) ? ev->data.l[1] : EoGetX(ewin);
|
||||
y = (flags & 0x0200) ? ev->data.l[2] : EoGetY(ewin);
|
||||
w = (flags & 0x0400) ? ev->data.l[3] : ewin->client.w;
|
||||
h = (flags & 0x0800) ? ev->data.l[4] : ewin->client.h;
|
||||
/* source = OPSRC((flags & 0xF000) >> 12); */
|
||||
EwinMoveResizeWithGravity(ewin, x, y, w, h, grav);
|
||||
}
|
||||
else if (ev->message_type == ECORE_X_ATOM_NET_WM_MOVERESIZE)
|
||||
{
|
||||
/* source = OPSRC(ev->data.l[4]); */
|
||||
switch (ev->data.l[2])
|
||||
{
|
||||
case _NET_WM_MOVERESIZE_SIZE_TOPLEFT:
|
||||
|
@ -1023,6 +1041,11 @@ EWMH_ProcessClientMessage(XClientMessageEvent * ev)
|
|||
break;
|
||||
}
|
||||
}
|
||||
else if (ev->message_type == ECORE_X_ATOM_NET_RESTACK_WINDOW)
|
||||
{
|
||||
/* source = OPSRC(ev->data.l[0]); */
|
||||
/* FIXME - Implement */
|
||||
}
|
||||
|
||||
done:
|
||||
;
|
||||
|
|
Loading…
Reference in New Issue