From: Carsten Haitzler Date: Sat, 13 Aug 2005 03:22:24 +0000 (+0000) Subject: bug-- X-Git-Tag: submit/efl/20131021.015651~15287 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=103858369ee81eb5fd4529d5a2bef173fa732467;p=platform%2Fupstream%2Fenlightenment.git bug-- SVN revision: 16117 --- diff --git a/TODO b/TODO index c70b973..5e5ce4b 100644 --- a/TODO +++ b/TODO @@ -8,8 +8,6 @@ Some of the things (in very short form) that need to be done to E17... 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. diff --git a/src/bin/e_border.c b/src/bin/e_border.c index d6e8f96..f776fd7 100644 --- a/src/bin/e_border.c +++ b/src/bin/e_border.c @@ -679,6 +679,11 @@ e_border_resize(E_Border *bd, int w, int h) 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++; @@ -733,6 +738,11 @@ e_border_move_resize(E_Border *bd, int x, int y, int w, int h) 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++; @@ -1022,6 +1032,11 @@ e_border_shade(E_Border *bd, E_Direction dir) 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; @@ -1111,6 +1126,11 @@ e_border_unshade(E_Border *bd, E_Direction dir) 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;