Module: wine Branch: master Commit: 28645c64d54f74283d13e4ea05b549d74029ee23 URL: http://source.winehq.org/git/wine.git/?a=commit;h=28645c64d54f74283d13e4ea05...
Author: Dylan Smith dylan.ah.smith@gmail.com Date: Mon Jan 5 13:14:41 2009 -0500
richedit: Avoid rewrapping all text for isolated format changes.
When the character or paragraph format is changed the paragraph that is changed is already marked to be rewrapped, so ME_MarkAllForWrapping shouldn't be called. Since ME_RewrapRepaint uses this function, it shouldn't be called in these circumstances, since rewrapping all the text can cause noticable delays when working with a lot of text.
---
dlls/riched20/editor.c | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/dlls/riched20/editor.c b/dlls/riched20/editor.c index c7b8f40..107dcea 100644 --- a/dlls/riched20/editor.c +++ b/dlls/riched20/editor.c @@ -3263,7 +3263,11 @@ LRESULT ME_HandleMessage(ME_TextEditor *editor, UINT msg, WPARAM wParam, } ME_CommitUndo(editor); if (bRepaint) - ME_RewrapRepaint(editor); + { + ME_WrapMarkedParagraphs(editor); + ME_UpdateScrollBar(editor); + ME_Repaint(editor); + } return 1; } case EM_GETCHARFORMAT: @@ -3285,7 +3289,9 @@ LRESULT ME_HandleMessage(ME_TextEditor *editor, UINT msg, WPARAM wParam, case EM_SETPARAFORMAT: { BOOL result = ME_SetSelectionParaFormat(editor, (PARAFORMAT2 *)lParam); - ME_RewrapRepaint(editor); + ME_WrapMarkedParagraphs(editor); + ME_UpdateScrollBar(editor); + ME_Repaint(editor); ME_CommitUndo(editor); return result; }