BUGS / FIXES
-------------------------------------------------------------------------------
-* BUG: resize xmms playlist seems to clip/cut off window every 2nd resize step
- to previous rect shape. must be some shape propagation issue.
* e_hints.c manually changes flags on a border instead of calling
e_border_stick() for example or the calls in e_border.c - add calls as needed
to e_border.c. before calling check the lock flags too.
bd->client.h = bd->h - (bd->client_inset.t + bd->client_inset.b);
bd->changed = 1;
bd->changes.size = 1;
+ if ((bd->shaped) || (bd->client.shaped))
+ {
+ bd->need_shape_merge = 1;
+ bd->need_shape_export = 1;
+ }
if (bd->client.netwm.sync.request)
{
bd->client.netwm.sync.wait++;
bd->changed = 1;
bd->changes.pos = 1;
bd->changes.size = 1;
+ if ((bd->shaped) || (bd->client.shaped))
+ {
+ bd->need_shape_merge = 1;
+ bd->need_shape_export = 1;
+ }
if (bd->client.netwm.sync.request)
{
bd->client.netwm.sync.wait++;
bd->shaded = 1;
bd->changes.shaded = 1;
bd->changed = 1;
+ if ((bd->shaped) || (bd->client.shaped))
+ {
+ bd->need_shape_merge = 1;
+ bd->need_shape_export = 1;
+ }
edje_object_signal_emit(bd->bg_object, "shaded", "");
ev = calloc(1, sizeof(E_Event_Border_Resize));
ev->border = bd;
bd->shaded = 0;
bd->changes.shaded = 1;
bd->changed = 1;
+ if ((bd->shaped) || (bd->client.shaped))
+ {
+ bd->need_shape_merge = 1;
+ bd->need_shape_export = 1;
+ }
edje_object_signal_emit(bd->bg_object, "unshaded", "");
ev = calloc(1, sizeof(E_Event_Border_Resize));
ev->border = bd;