Read WM_TRANSIENT_FOR only on map or change + debug stuff.
SVN revision: 10524
This commit is contained in:
parent
1aad1cf0d2
commit
3d5c6c0743
17
src/icccm.c
17
src/icccm.c
|
@ -40,6 +40,7 @@ static Atom E_XA_WM_ICON_NAME = 0;
|
|||
static Atom E_XA_WM_WINDOW_ROLE = 0;
|
||||
static Atom E_XA_WM_HINTS = 0;
|
||||
static Atom E_XA_WM_CLIENT_LEADER = 0;
|
||||
static Atom E_XA_WM_TRANSIENT_FOR = 0;
|
||||
|
||||
void
|
||||
ICCCM_Init(void)
|
||||
|
@ -60,6 +61,7 @@ ICCCM_Init(void)
|
|||
E_XA_WM_WINDOW_ROLE = XInternAtom(disp, "WM_WINDOW_ROLE", False);
|
||||
E_XA_WM_HINTS = XInternAtom(disp, "WM_HINTS", False);
|
||||
E_XA_WM_CLIENT_LEADER = XInternAtom(disp, "WM_CLIENT_LEADER", False);
|
||||
E_XA_WM_TRANSIENT_FOR = XInternAtom(disp, "WM_TRANSIENT_FOR", False);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -831,7 +833,7 @@ void
|
|||
ICCCM_GetHints(EWin * ewin, Atom atom_change)
|
||||
{
|
||||
XWMHints *hint;
|
||||
Window w;
|
||||
Window win;
|
||||
Atom *prop;
|
||||
Window *cleader;
|
||||
int i, num;
|
||||
|
@ -949,14 +951,15 @@ ICCCM_GetHints(EWin * ewin, Atom atom_change)
|
|||
ewin->skipfocus = 1;
|
||||
}
|
||||
|
||||
if (XGetTransientForHint(disp, ewin->client.win, &w))
|
||||
{
|
||||
ewin->client.transient = 1;
|
||||
ewin->client.transient_for = w;
|
||||
}
|
||||
else
|
||||
if (atom_change == 0 || atom_change == E_XA_WM_TRANSIENT_FOR)
|
||||
{
|
||||
ewin->client.transient = 0;
|
||||
ewin->client.transient_for = None;
|
||||
if (XGetTransientForHint(disp, ewin->client.win, &win))
|
||||
{
|
||||
ewin->client.transient = 1;
|
||||
ewin->client.transient_for = win;
|
||||
}
|
||||
}
|
||||
|
||||
if (ewin->client.group == ewin->client.win)
|
||||
|
|
|
@ -5747,7 +5747,7 @@ EwinShowInfo2(const EWin * ewin)
|
|||
"Border %s lrtb %i,%i,%i,%i\n"
|
||||
"Icon window, pixmap, mask %#10lx, %#10lx, %#10lx\n"
|
||||
"Is client group leader %i Client group leader %#10lx\n"
|
||||
"Has transients %i Transient for %#10lx\n"
|
||||
"Has transients %i Transient type %i Transient for %#10lx\n"
|
||||
"No resize H/V %i/%i Shaped %i\n"
|
||||
"Base, min, max, inc w/h %ix%i, %ix%i, %ix%i %ix%i\n"
|
||||
"Aspect min, max %5.5f, %5.5f\n"
|
||||
|
@ -5773,7 +5773,8 @@ EwinShowInfo2(const EWin * ewin)
|
|||
ewin->client.icon_win,
|
||||
ewin->client.icon_pmap, ewin->client.icon_mask,
|
||||
ewin->client.is_group_leader, ewin->client.group,
|
||||
ewin->has_transients, ewin->client.transient_for,
|
||||
ewin->has_transients,
|
||||
ewin->client.transient, ewin->client.transient_for,
|
||||
ewin->client.no_resize_h, ewin->client.no_resize_v,
|
||||
ewin->client.shaped,
|
||||
ewin->client.base_w, ewin->client.base_h,
|
||||
|
|
Loading…
Reference in New Issue