54 |
{ |
{ |
55 |
Window wnd; |
Window wnd; |
56 |
unsigned long id; |
unsigned long id; |
|
unsigned long parent; |
|
57 |
unsigned long behind; |
unsigned long behind; |
58 |
int xoffset, yoffset; |
int xoffset, yoffset; |
59 |
int width, height; |
int width, height; |
3255 |
XFree(sizehints); |
XFree(sizehints); |
3256 |
} |
} |
3257 |
|
|
3258 |
|
/* Handle popups without parents through some ewm hints */ |
3259 |
|
if (parent == 0xFFFFFFFF) |
3260 |
|
ewmh_set_window_popup(wnd); |
3261 |
/* Set WM_TRANSIENT_FOR, if necessary */ |
/* Set WM_TRANSIENT_FOR, if necessary */ |
3262 |
if ((parent != 0x00000000) && (parent != 0xFFFFFFFF)) |
else if (parent != 0x00000000) |
3263 |
{ |
{ |
3264 |
sw_parent = seamless_get_window_by_id(parent); |
sw_parent = seamless_get_window_by_id(parent); |
3265 |
if (sw_parent) |
if (sw_parent) |
3284 |
sw = xmalloc(sizeof(seamless_window)); |
sw = xmalloc(sizeof(seamless_window)); |
3285 |
sw->wnd = wnd; |
sw->wnd = wnd; |
3286 |
sw->id = id; |
sw->id = id; |
|
sw->parent = parent; |
|
3287 |
sw->behind = 0; |
sw->behind = 0; |
3288 |
sw->xoffset = 0; |
sw->xoffset = 0; |
3289 |
sw->yoffset = 0; |
sw->yoffset = 0; |
3463 |
break; |
break; |
3464 |
} |
} |
3465 |
|
|
|
/* Handle popups without parents through some ewm hints */ |
|
|
if ((sw->state == SEAMLESSRDP_NOTYETMAPPED) && (sw->parent == 0xFFFFFFFF)) |
|
|
ewmh_set_window_popup(sw->wnd); |
|
|
|
|
3466 |
sw->state = state; |
sw->state = state; |
3467 |
} |
} |
3468 |
|
|