[Webkit-unassigned] [Bug 8926] New: performDragOperation to insert image may be manipulating wrong DOMDocument

bugzilla-daemon at opendarwin.org bugzilla-daemon at opendarwin.org
Mon May 15 14:38:03 PDT 2006


http://bugzilla.opendarwin.org/show_bug.cgi?id=8926

           Summary: performDragOperation to insert image may be manipulating
                    wrong DOMDocument
           Product: WebKit
           Version: 420+ (nightly)
          Platform: Macintosh
        OS/Version: Mac OS X 10.4
            Status: NEW
          Severity: normal
          Priority: P2
         Component: HTML Editing
        AssignedTo: webkit-unassigned at opendarwin.org
        ReportedBy: dwood at karelia.com


I am finding certain circumstances where dragging an image into an editable
block of text is causing the HTML not to be properly inserted.  Apparently the
DOMDocument is having its tree manipulated, but the webview's main frame is
replaced with another DOMHTMLDocument which does not have the surgery performed
on it.

Breakpoints to set:
* WebView.m, performDragOperation:, first line in the method
* same as above, third line, after the if(...) test
* Your delegate's -[webView:shouldInsertNode:...]
* Your delegate's -[webViewDidChange:] 
* -[WebHTMLView concludeDragForDraggingInfo:actionMask:] near end, at didInsert
= YES;

At PerformDragOperation start:
Po [[self mainFrame] DOMDocument]

At shouldInsertNode:
po [node ownerDocument]

At webViewDidChange:
po [[[notification object] mainFrame] DOMDocument]   <--- SOMETIMES NOT THE
ORIGINAL!

At concludeDragFor..:
po [[[bridge dragCaretDOMRange] startContainer] ownerDocument] <--- BACK TO THE
ORIGINAL

At performDragOperation (second breakpoint):
po [[self mainFrame] DOMDocument]  <--- NOT ORIGINAL


So what seems to be happening sometimes -- I can't figure out the circumstances
-- a new DOMDocument is created and set for the webview's main frame.  But the
surgery seems to be happening on the original.


-- 
Configure bugmail: http://bugzilla.opendarwin.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list