Title: [154238] trunk/Source/WebCore
Revision
154238
Author
[email protected]
Date
2013-08-17 11:05:04 -0700 (Sat, 17 Aug 2013)

Log Message

<https://webkit.org/b/119954> Page::dragCaretController() should return a reference.

Reviewed by Antti Koivisto.

Page::m_dragCaretController is never null.

* dom/Document.cpp:
(WebCore::Document::nodeChildrenWillBeRemoved):
(WebCore::Document::nodeWillBeRemoved):
* page/DragController.cpp:
(WebCore::DragController::cancelDrag):
(WebCore::DragController::dragEnded):
(WebCore::DragController::tryDocumentDrag):
(WebCore::DragController::dispatchTextInputEventFor):
(WebCore::DragController::concludeEditDrag):
(WebCore::DragController::placeDragCaret):
* page/Page.h:
(WebCore::Page::dragCaretController):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paintCaret):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (154237 => 154238)


--- trunk/Source/WebCore/ChangeLog	2013-08-17 17:29:37 UTC (rev 154237)
+++ trunk/Source/WebCore/ChangeLog	2013-08-17 18:05:04 UTC (rev 154238)
@@ -1,5 +1,28 @@
 2013-08-17  Andreas Kling  <[email protected]>
 
+        <https://webkit.org/b/119954> Page::dragCaretController() should return a reference.
+
+        Reviewed by Antti Koivisto.
+
+        Page::m_dragCaretController is never null.
+
+        * dom/Document.cpp:
+        (WebCore::Document::nodeChildrenWillBeRemoved):
+        (WebCore::Document::nodeWillBeRemoved):
+        * page/DragController.cpp:
+        (WebCore::DragController::cancelDrag):
+        (WebCore::DragController::dragEnded):
+        (WebCore::DragController::tryDocumentDrag):
+        (WebCore::DragController::dispatchTextInputEventFor):
+        (WebCore::DragController::concludeEditDrag):
+        (WebCore::DragController::placeDragCaret):
+        * page/Page.h:
+        (WebCore::Page::dragCaretController):
+        * rendering/RenderBlock.cpp:
+        (WebCore::RenderBlock::paintCaret):
+
+2013-08-17  Andreas Kling  <[email protected]>
+
         <https://webkit.org/b/119952> Simplify Editor's back-pointer to the Frame.
 
         Reviewed by Antti Koivisto.

Modified: trunk/Source/WebCore/dom/Document.cpp (154237 => 154238)


--- trunk/Source/WebCore/dom/Document.cpp	2013-08-17 17:29:37 UTC (rev 154237)
+++ trunk/Source/WebCore/dom/Document.cpp	2013-08-17 18:05:04 UTC (rev 154238)
@@ -3464,7 +3464,7 @@
         for (Node* n = container->firstChild(); n; n = n->nextSibling()) {
             frame->eventHandler().nodeWillBeRemoved(n);
             frame->selection()->nodeWillBeRemoved(n);
-            frame->page()->dragCaretController()->nodeWillBeRemoved(n);
+            frame->page()->dragCaretController().nodeWillBeRemoved(n);
         }
     }
 }
@@ -3484,7 +3484,7 @@
     if (Frame* frame = this->frame()) {
         frame->eventHandler().nodeWillBeRemoved(n);
         frame->selection()->nodeWillBeRemoved(n);
-        frame->page()->dragCaretController()->nodeWillBeRemoved(n);
+        frame->page()->dragCaretController().nodeWillBeRemoved(n);
     }
 }
 

Modified: trunk/Source/WebCore/page/DragController.cpp (154237 => 154238)


--- trunk/Source/WebCore/page/DragController.cpp	2013-08-17 17:29:37 UTC (rev 154237)
+++ trunk/Source/WebCore/page/DragController.cpp	2013-08-17 18:05:04 UTC (rev 154238)
@@ -172,14 +172,14 @@
 // FIXME: This method is poorly named.  We're just clearing the selection from the document this drag is exiting.
 void DragController::cancelDrag()
 {
-    m_page->dragCaretController()->clear();
+    m_page->dragCaretController().clear();
 }
 
 void DragController::dragEnded()
 {
     m_dragInitiator = 0;
     m_didInitiateDrag = false;
-    m_page->dragCaretController()->clear();
+    m_page->dragCaretController().clear();
     
     m_client->dragEnded();
 }
@@ -340,7 +340,7 @@
         return false;
 
     if (isHandlingDrag) {
-        m_page->dragCaretController()->clear();
+        m_page->dragCaretController().clear();
         return true;
     }
 
@@ -363,7 +363,7 @@
         }
         
         if (!m_fileInputElementUnderMouse)
-            m_page->dragCaretController()->setCaretPosition(m_documentUnderMouse->frame()->visiblePositionForPoint(point));
+            m_page->dragCaretController().setCaretPosition(m_documentUnderMouse->frame()->visiblePositionForPoint(point));
 
         Frame* innerFrame = element->document()->frame();
         dragSession.operation = dragIsMove(innerFrame->selection(), dragData) ? DragOperationMove : DragOperationCopy;
@@ -394,7 +394,7 @@
     }
     
     // We are not over an editable region. Make sure we're clearing any prior drag cursor.
-    m_page->dragCaretController()->clear();
+    m_page->dragCaretController().clear();
     if (m_fileInputElementUnderMouse)
         m_fileInputElementUnderMouse->setCanReceiveDroppedFiles(false);
     m_fileInputElementUnderMouse = 0;
@@ -440,9 +440,9 @@
 
 bool DragController::dispatchTextInputEventFor(Frame* innerFrame, DragData* dragData)
 {
-    ASSERT(m_page->dragCaretController()->hasCaret());
-    String text = m_page->dragCaretController()->isContentRichlyEditable() ? "" : dragData->asPlainText(innerFrame);
-    Node* target = innerFrame->editor().findEventTargetFrom(m_page->dragCaretController()->caretPosition());
+    ASSERT(m_page->dragCaretController().hasCaret());
+    String text = m_page->dragCaretController().isContentRichlyEditable() ? "" : dragData->asPlainText(innerFrame);
+    Node* target = innerFrame->editor().findEventTargetFrom(m_page->dragCaretController().caretPosition());
     return target->dispatchEvent(TextEvent::createForDrop(innerFrame->document()->domWindow(), text), IGNORE_EXCEPTION);
 }
 
@@ -466,7 +466,7 @@
     RefPtr<Frame> innerFrame = element->document()->frame();
     ASSERT(innerFrame);
 
-    if (m_page->dragCaretController()->hasCaret() && !dispatchTextInputEventFor(innerFrame.get(), dragData))
+    if (m_page->dragCaretController().hasCaret() && !dispatchTextInputEventFor(innerFrame.get(), dragData))
         return true;
 
     if (dragData->containsColor()) {
@@ -494,12 +494,12 @@
     }
 
     if (!m_page->dragController().canProcessDrag(dragData)) {
-        m_page->dragCaretController()->clear();
+        m_page->dragCaretController().clear();
         return false;
     }
 
-    VisibleSelection dragCaret = m_page->dragCaretController()->caretPosition();
-    m_page->dragCaretController()->clear();
+    VisibleSelection dragCaret = m_page->dragCaretController().caretPosition();
+    m_page->dragCaretController().clear();
     RefPtr<Range> range = dragCaret.toNormalizedRange();
     RefPtr<Element> rootEditableElement = innerFrame->selection()->rootEditableElement();
 
@@ -941,7 +941,7 @@
         return;
     IntPoint framePoint = frameView->windowToContents(windowPoint);
 
-    m_page->dragCaretController()->setCaretPosition(frame->visiblePositionForPoint(framePoint));
+    m_page->dragCaretController().setCaretPosition(frame->visiblePositionForPoint(framePoint));
 }
 
 } // namespace WebCore

Modified: trunk/Source/WebCore/page/Page.h (154237 => 154238)


--- trunk/Source/WebCore/page/Page.h	2013-08-17 17:29:37 UTC (rev 154237)
+++ trunk/Source/WebCore/page/Page.h	2013-08-17 18:05:04 UTC (rev 154238)
@@ -185,7 +185,7 @@
     int subframeCount() const { checkSubframeCountConsistency(); return m_subframeCount; }
 
     Chrome& chrome() const { return *m_chrome; }
-    DragCaretController* dragCaretController() const { return m_dragCaretController.get(); }
+    DragCaretController& dragCaretController() const { return *m_dragCaretController; }
 #if ENABLE(DRAG_SUPPORT)
     DragController& dragController() const { return *m_dragController; }
 #endif
@@ -440,10 +440,10 @@
     void unthrottleTimers();
 
     const OwnPtr<Chrome> m_chrome;
-    OwnPtr<DragCaretController> m_dragCaretController;
+    const OwnPtr<DragCaretController> m_dragCaretController;
 
 #if ENABLE(DRAG_SUPPORT)
-    OwnPtr<DragController> m_dragController;
+    const OwnPtr<DragController> m_dragController;
 #endif
     const OwnPtr<FocusController> m_focusController;
 #if ENABLE(CONTEXT_MENUS)

Modified: trunk/Source/WebCore/rendering/RenderBlock.cpp (154237 => 154238)


--- trunk/Source/WebCore/rendering/RenderBlock.cpp	2013-08-17 17:29:37 UTC (rev 154237)
+++ trunk/Source/WebCore/rendering/RenderBlock.cpp	2013-08-17 18:05:04 UTC (rev 154238)
@@ -3279,15 +3279,15 @@
         caretPainter = frame()->selection()->caretRenderer();
         isContentEditable = frame()->selection()->rendererIsEditable();
     } else {
-        caretPainter = frame()->page()->dragCaretController()->caretRenderer();
-        isContentEditable = frame()->page()->dragCaretController()->isContentEditable();
+        caretPainter = frame()->page()->dragCaretController().caretRenderer();
+        isContentEditable = frame()->page()->dragCaretController().isContentEditable();
     }
 
     if (caretPainter == this && (isContentEditable || caretBrowsing)) {
         if (type == CursorCaret)
             frame()->selection()->paintCaret(paintInfo.context, paintOffset, paintInfo.rect);
         else
-            frame()->page()->dragCaretController()->paintDragCaret(frame(), paintInfo.context, paintOffset, paintInfo.rect);
+            frame()->page()->dragCaretController().paintDragCaret(frame(), paintInfo.context, paintOffset, paintInfo.rect);
     }
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to