QDRTNode can be used for passing DOM nodes that are not HTMLElements across the JS bridge. Gives us a chance of passing nodesFromRect tests.
Created attachment 72878 [details]
Attachment 72878 [details] did not pass style-queue:
Failed to run "['WebKitTools/Scripts/check-webkit-style', '--diff-files', u'WebCore/ChangeLog', u'WebCore/bridge/qt/qt_runtime.cpp', u'WebKit/qt/ChangeLog', u'WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.cpp', u'WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.h']" exit_code: 1
WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.h:30: Code inside a namespace should not be indented. [whitespace/indent] 
Total errors found: 1 in 5 files
If any of these errors are false positives, please file a bug against check-webkit-style.
Created attachment 73173 [details]
This allows fast/dom/nodesFromRect-inner-documents.html an fast/dom/nodesFromRect-links-and-text.html to pass on Qt.
Looks reasonable, although I will review better soon.
All this path robert had to take is because qwebelement does not work well for text nodes. see bug 31099.
Comment on attachment 73173 [details]
View in context: https://bugs.webkit.org/attachment.cgi?id=73173&action=review
> + static QDRTNode create(Node* element)
'Node* element' looks strange to me, Robert. Could we just name it 'node'?
> + WebCore::Node* m_element;
Ditto. m_node make more sense to me, and actually throughout the patch.
Created attachment 75941 [details]
(In reply to comment #8)
> Created an attachment (id=75941) [details]
Comment on attachment 75941 [details]
View in context: https://bugs.webkit.org/attachment.cgi?id=75941&action=review
> +// this is here as a proxy, so we'd have a class to friend in QDRTNode,
> + m_node = static_cast<Node*>(node);
Do you need to static_cast Node* to Node*?
Created attachment 77915 [details]
(In reply to comment #10)
> (From update of attachment 75941 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=75941&action=review
> > WebCore/bridge/qt/qt_runtime.cpp:137
> > +// this is here as a proxy, so we'd have a class to friend in QDRTNode,
> Capital T.
> > WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.cpp:91
> > + m_node = static_cast<Node*>(node);
> Do you need to static_cast Node* to Node*?
When fixing up per your comments I realized we should make the expected results less platform-specific. Proposed change to results in the patch. Do you agree?
Comment on attachment 77915 [details]
Rejecting attachment 77915 [details] from commit-queue.
Failed to run "['./Tools/Scripts/webkit-patch', '--status-host=queues.webkit.org', '--bot-id=cr-jail-3', 'apply-attachment', '--no-update', '--non-interactive', 77915]" exit_code: 1
Last 500 characters of output:
rks/Python.framework/Versions/2.6/lib/python2.6/urllib2.py", line 361, in _call_chain
result = func(*args)
File "/mnt/git/webkit-commit-queue/Tools/Scripts/webkitpy/thirdparty/autoinstalled/mechanize/_http.py", line 756, in https_open
return self.do_open(conn_factory, req)
File "/mnt/git/webkit-commit-queue/Tools/Scripts/webkitpy/thirdparty/autoinstalled/mechanize/_http.py", line 706, in do_open
urllib2.URLError: <urlopen error [Errno 60] Operation timed out>
Full output: http://queues.webkit.org/results/7297400
Created attachment 78041 [details]
Created attachment 78135 [details]
Comment on attachment 78135 [details]
Clearing flags on attachment: 78135
Committed r75189: <http://trac.webkit.org/changeset/75189>
All reviewed patches have been landed. Closing bug.