Title: [150482] trunk/Source/WebCore
Revision
150482
Author
[email protected]
Date
2013-05-21 15:20:50 -0700 (Tue, 21 May 2013)

Log Message

Robustify repaint of previous caret node when moving FrameSelection.
<http://webkit.org/b/116558>

Reviewed by Ryosuke Niwa.

As a follow-up to r150396, also repaint the caret rects if the previous node is contenteditable.

* editing/FrameSelection.cpp:
(WebCore::FrameSelection::recomputeCaretRect):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (150481 => 150482)


--- trunk/Source/WebCore/ChangeLog	2013-05-21 22:06:35 UTC (rev 150481)
+++ trunk/Source/WebCore/ChangeLog	2013-05-21 22:20:50 UTC (rev 150482)
@@ -1,3 +1,15 @@
+2013-05-21  Andreas Kling  <[email protected]>
+
+        Robustify repaint of previous caret node when moving FrameSelection.
+        <http://webkit.org/b/116558>
+
+        Reviewed by Ryosuke Niwa.
+
+        As a follow-up to r150396, also repaint the caret rects if the previous node is contenteditable.
+
+        * editing/FrameSelection.cpp:
+        (WebCore::FrameSelection::recomputeCaretRect):
+
 2013-05-21  Ryosuke Niwa  <[email protected]>
 
         Unreviewed build fix after r150469. We need to bail out here when DOM is mutated by an event listener such that

Modified: trunk/Source/WebCore/editing/FrameSelection.cpp (150481 => 150482)


--- trunk/Source/WebCore/editing/FrameSelection.cpp	2013-05-21 22:06:35 UTC (rev 150481)
+++ trunk/Source/WebCore/editing/FrameSelection.cpp	2013-05-21 22:20:50 UTC (rev 150482)
@@ -1394,7 +1394,8 @@
 
 #if ENABLE(TEXT_CARET)
     if (RenderView* view = m_frame->document()->renderView()) {
-        if (shouldRepaintCaret(view, isContentEditable())) {
+        bool previousOrNewCaretNodeIsContentEditable = isContentEditable() || (m_previousCaretNode && m_previousCaretNode->isContentEditable());
+        if (shouldRepaintCaret(view, previousOrNewCaretNodeIsContentEditable)) {
             Node* node = m_selection.start().deprecatedNode();
             if (m_previousCaretNode)
                 repaintCaretForLocalRect(m_previousCaretNode.get(), oldRect);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to