From 59d52fbe5cc2c3ec6e60beb5824905144028841f Mon Sep 17 00:00:00 2001 From: Camil Staps Date: Wed, 26 Aug 2015 16:50:39 +0200 Subject: Invalidate window after WinDonePicture to force redraw --- Linux_C_12/cpicture_121.c | 3 +++ windowCCall_12.icl | 12 ++++++------ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/Linux_C_12/cpicture_121.c b/Linux_C_12/cpicture_121.c index 07f85f3..31772f5 100644 --- a/Linux_C_12/cpicture_121.c +++ b/Linux_C_12/cpicture_121.c @@ -213,6 +213,9 @@ void WinDonePicture(GdkDrawable *inDraw, OS ios, GdkDrawable **outDraw, OS* oos) gtk_widget_destroy(widget); } + if (GDK_IS_WINDOW(inDraw)) + gdk_window_invalidate_rect(GDK_WINDOW(inDraw), NULL, gtk_true()); + *oos = ios; printf("WinDonePicture -- returning\n"); } /* WinDonePicture */ diff --git a/windowCCall_12.icl b/windowCCall_12.icl index 501c9cd..8245ed4 100644 --- a/windowCCall_12.icl +++ b/windowCCall_12.icl @@ -22,7 +22,7 @@ winInvalidateWindow _ _ = code { .inline WinInvalidateWindow - ccall WinInvalidateWindow "II-I" + ccall WinInvalidateWindow "pI-I" .end } @@ -31,7 +31,7 @@ winInvalidateRect hwnd (left,top, right,bottom) tb = code { .inline WinInvalidateRect - ccall WinInvalidateRect "IIIIII-I" + ccall WinInvalidateRect "pIIIII-I" .end } @@ -40,7 +40,7 @@ winValidateRect hwnd (left,top, right,bottom) tb = code { .inline WinValidateRect - ccall WinValidateRect "IIIIII-I" + ccall WinValidateRect "pIIIII-I" .end } @@ -49,7 +49,7 @@ winValidateRgn hwnd rgn tb = code { .inline WinValidateRgn - ccall WinValidateRgn "III-I" + ccall WinValidateRgn "ppI-I" .end } @@ -58,7 +58,7 @@ winGetDC _ _ = code { .inline WinGetDC - ccall WinGetDC "II-pI" + ccall WinGetDC "pI-pI" .end } @@ -67,6 +67,6 @@ winReleaseDC hwnd (hdc,tb) = code { .inline WinReleaseDC - ccall WinReleaseDC "III-I" + ccall WinReleaseDC "ppI-I" .end } -- cgit v1.2.3