diff --git a/ChangeLog.txt b/ChangeLog.txt index edbdb04b41..e03168a261 100644 --- a/ChangeLog.txt +++ b/ChangeLog.txt @@ -10,6 +10,10 @@ * Change, ! Fix, % Optimization, + Addition, - Removal, ; Comment */ +2015-07-14 17:51 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl) + * src/rtl/gtxwc/gtxwc.c + ! fixed SetMode() when HB_GTI_RESIZABLE is set to .F. + 2015-07-03 11:22 UTC+0200 Viktor Szakats (vszakats users.noreply.github.com) * include/harbour.hbx * src/rtl/libnamec.c diff --git a/src/rtl/gtxwc/gtxwc.c b/src/rtl/gtxwc/gtxwc.c index 8d553a8e18..1152f9c8a7 100644 --- a/src/rtl/gtxwc/gtxwc.c +++ b/src/rtl/gtxwc/gtxwc.c @@ -4983,12 +4983,18 @@ static HB_BOOL hb_gt_xwc_SetMode( PHB_GT pGT, int iRow, int iCol ) else { HB_MAXUINT nTimeOut = hb_dateMilliSeconds() + 1000; + HB_BOOL fResizable = wnd->fResizable; #ifdef XWC_DEBUG printf( "SetMode(%d,%d) begin\n", iRow, iCol ); fflush( stdout ); #endif HB_XWC_XLIB_LOCK(); + if( ! fResizable ) + { + wnd->fResizable = HB_TRUE; + hb_gt_xwc_SetResizing( wnd ); + } hb_gt_xwc_ResizeRequest( wnd, iCol, iRow ); HB_XWC_XLIB_UNLOCK(); @@ -5004,6 +5010,14 @@ static HB_BOOL hb_gt_xwc_SetMode( PHB_GT pGT, int iRow, int iCol ) } while( !fResult ); + if( ! fResizable ) + { + wnd->fResizable = HB_FALSE; + HB_XWC_XLIB_LOCK(); + hb_gt_xwc_SetResizing( wnd ); + HB_XWC_XLIB_UNLOCK(); + } + #ifdef XWC_DEBUG printf( "SetMode(%d,%d) => %d\n", iRow, iCol, fResult ); fflush( stdout ); #endif