http://bugs.codeweavers.com/show_bug.cgi?id=428
*** shadow/428 Mon Feb 11 04:54:13 2002 --- shadow/428.tmp.13062 Fri Apr 12 16:40:46 2002 *************** *** 7,15 **** | Severity: normal OS/Version: All | | Priority: P1 Component: notes | +----------------------------------------------------------------------------+ ! | Assigned To: bugs@codeweavers.com | | Reported By: jim@openanswers.co.uk | +----------------------------------------------------------------------------+ | URL: | +============================================================================+ | DESCRIPTION | --- 7,16 ---- | Severity: normal OS/Version: All | | Priority: P1 Component: notes | +----------------------------------------------------------------------------+ ! | Assigned To: wine-bugs@winehq.com | | Reported By: jim@openanswers.co.uk | +----------------------------------------------------------------------------+ + | Milestone: TargetMilestone: --- | | URL: | +============================================================================+ | DESCRIPTION | *************** *** 74,76 **** --- 75,131 ---- not update them in the preview pane. Clicking on a folder or view does not update the list of messages to reflect the selected folder/view. However, double clicking on a message so that it opens in a new window works. + + ------- Additional Comments From thaynes@ca.ibm.com 2002-04-12 16:40 ------- + This problem is also seen with Lotus Notes 5.0.3 and 5.0.9a. + + A hack to fix this has been floating around for a while - try patching + + dlls/user/painting.c + + with this patch (not my own work!) + + --- painting.c Sat Mar 9 18:44:30 2002 + +++ painting.c Fri Apr 12 17:12:48 2002 + @@ -24,6 +24,7 @@ + #include "wingdi.h" + #include "wine/winuser16.h" + #include "wine/server.h" + +#include "gdi.h" + #include "win.h" + #include "dce.h" + #include "wine/debug.h" + @@ -148,7 +149,7 @@ + + + /*********************************************************************** + - * BeginPaint (USER32.@) + + * BeginPaint (USER32.@) + */ + HDC WINAPI BeginPaint( HWND hwnd, PAINTSTRUCT *lps ) + { + @@ -235,10 +236,23 @@ + + + /*********************************************************************** + - * EndPaint (USER32.@) + + * EndPaint (USER32.@) + */ + BOOL WINAPI EndPaint( HWND hwnd, const PAINTSTRUCT *lps ) + { + + WND *wnd; + + if (hwnd && (wnd = WIN_FindWndPtr(hwnd))) + + { /* FIXME : is this appropriate here !? */ + + DWORD clsStyle = wnd->clsStyle; + + WIN_ReleaseWndPtr(wnd); + + if (clsStyle & CS_OWNDC) /* the dc has been reused */ + + { /* restore visible region */ + + HRGN hrgn=CreateRectRgn(0,0,0,0); + + SetHookFlags16( lps->hdc, DCHF_INVALIDATEVISRGN ); + + USER_Driver.pGetDC( hwnd, lps->hdc, hrgn, DCX_EXCLUDERGN ); + + DeleteObject(hrgn); + + } + + } + ReleaseDC( hwnd, lps->hdc ); + ShowCaret( hwnd ); + return TRUE;