changeset 1817:e827394a7f20

Force redraw of notebook on add/remove on OS/2.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Mon, 15 Oct 2012 01:18:38 +0000
parents d0dda44136a0
children 09a7202edb53
files os2/dw.c
diffstat 1 files changed, 9 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/os2/dw.c	Sun Oct 14 22:43:09 2012 +0000
+++ b/os2/dw.c	Mon Oct 15 01:18:38 2012 +0000
@@ -8196,9 +8196,12 @@
  */
 unsigned long API dw_notebook_page_new(HWND handle, ULONG flags, int front)
 {
-   return (ULONG)WinSendMsg(handle, BKM_INSERTPAGE, 0L,
-                      MPFROM2SHORT((BKA_STATUSTEXTON | BKA_AUTOPAGESIZE | BKA_MAJOR | flags), front ? BKA_FIRST : BKA_LAST));
-}
+   ULONG retval = (ULONG)WinSendMsg(handle, BKM_INSERTPAGE, 0L,
+                                    MPFROM2SHORT((BKA_STATUSTEXTON | BKA_AUTOPAGESIZE | BKA_MAJOR | flags), front ? BKA_FIRST : BKA_LAST));
+   RECTL rect;
+   WinQueryWindowRect(handle, &rect);
+   WinInvalidateRect(handle, &rect, TRUE);
+   return retval;}
 
 /*
  * Remove a page from a notebook.
@@ -8210,10 +8213,13 @@
 {
    HWND pagehwnd = (HWND)WinSendMsg(handle, BKM_QUERYPAGEWINDOWHWND,
                                     MPFROMLONG(pageid), 0L);
+   RECTL rect;
    WinSendMsg(handle, BKM_DELETEPAGE,
             MPFROMLONG(pageid),  (MPARAM)BKA_SINGLE);
    if(pagehwnd)
       dw_window_destroy(pagehwnd);
+   WinQueryWindowRect(handle, &rect);
+   WinInvalidateRect(handle, &rect, TRUE);
 }
 
 /*