# HG changeset patch # User bsmith@81767d24-ef19-dc11-ae90-00e081727c95 # Date 1334005610 0 # Node ID 3d4066aab4e055a2c9e13e44cc9aecb4066bd84b # Parent a7a24a3b889941279d557c48db6ec4ce8d20842a Fixed windows not automatically redrawing when removing items from a layout on OS/2, Mac and Windows. diff -r a7a24a3b8899 -r 3d4066aab4e0 mac/dw.m --- a/mac/dw.m Mon Apr 09 07:15:05 2012 +0000 +++ b/mac/dw.m Mon Apr 09 21:06:50 2012 +0000 @@ -8496,6 +8496,7 @@ Box *thisbox = [parent box]; int z, index = -1; Item *tmpitem, *thisitem = thisbox->items; + id window = [object window]; for(z=0;zcount;z++) { @@ -8527,6 +8528,8 @@ thisbox->items = tmpitem; free(thisitem); thisbox->count--; + /* Queue a redraw on the top-level window */ + _dw_redraw(window, TRUE); } } DW_MUTEX_UNLOCK; diff -r a7a24a3b8899 -r 3d4066aab4e0 os2/dw.c --- a/os2/dw.c Mon Apr 09 07:15:05 2012 +0000 +++ b/os2/dw.c Mon Apr 09 21:06:50 2012 +0000 @@ -4543,6 +4543,8 @@ thisbox->items = tmpitem; free(thisitem); thisbox->count--; + /* Queue a redraw on the top-level window */ + _dw_redraw(_toplevel_window(handle), TRUE); } _free_window_memory(frame ? frame : handle); } diff -r a7a24a3b8899 -r 3d4066aab4e0 win/dw.c --- a/win/dw.c Mon Apr 09 07:15:05 2012 +0000 +++ b/win/dw.c Mon Apr 09 21:06:50 2012 +0000 @@ -4374,6 +4374,8 @@ thisbox->items = tmpitem; free(thisitem); thisbox->count--; + /* Queue a redraw on the top-level window */ + _dw_redraw(_toplevel_window(handle), TRUE); } _free_window_memory(handle, 0); EnumChildWindows(handle, _free_window_memory, 0);