Nikolay Sivov : user32/edit: Invalidate if style changed after EM_SETREADONLY.
Alexandre Julliard
julliard at winehq.org
Tue Sep 22 13:55:51 CDT 2009
Module: wine
Branch: master
Commit: 0209b02f47a13274ca4f26efff2842466b43e673
URL: http://source.winehq.org/git/wine.git/?a=commit;h=0209b02f47a13274ca4f26efff2842466b43e673
Author: Nikolay Sivov <bunglehead at gmail.com>
Date: Sat Sep 19 22:32:04 2009 +0400
user32/edit: Invalidate if style changed after EM_SETREADONLY.
---
dlls/user32/edit.c | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/dlls/user32/edit.c b/dlls/user32/edit.c
index 5a62bc2..8ad945b 100644
--- a/dlls/user32/edit.c
+++ b/dlls/user32/edit.c
@@ -5011,6 +5011,9 @@ static LRESULT EditWndProc_common( HWND hwnd, UINT msg,
case EM_SETREADONLY16:
case EM_SETREADONLY:
+ {
+ DWORD old_style = es->style;
+
if (wParam) {
SetWindowLongW( hwnd, GWL_STYLE,
GetWindowLongW( hwnd, GWL_STYLE ) | ES_READONLY );
@@ -5020,8 +5023,13 @@ static LRESULT EditWndProc_common( HWND hwnd, UINT msg,
GetWindowLongW( hwnd, GWL_STYLE ) & ~ES_READONLY );
es->style &= ~ES_READONLY;
}
- result = 1;
+
+ if (old_style ^ es->style)
+ InvalidateRect(es->hwndSelf, NULL, TRUE);
+
+ result = 1;
break;
+ }
case EM_SETWORDBREAKPROC16:
EDIT_EM_SetWordBreakProc16(es, (EDITWORDBREAKPROC16)lParam);
More information about the wine-cvs
mailing list