Timeline



Jan 3, 2006:

6:01 PM Changeset in webkit [11869] by bdakin
  • 2 edits in trunk/WebKit

Bug #:
Submitted by:
Reviewed by:
Bug #:
Submitted by:
Reviewed by:

5:02 PM Changeset in webkit [11868] by mjs
  • 7 edits in trunk

WebCore:

Reviewed by Vicki.

  • moved frame traversal code across from bridge, also dropped the children array
  • kwq/WebCoreBridge.h:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge firstChild]): Moved from WebBridge. Use new _firstChild pointer. (-[WebCoreBridge lastChild]): Moved from WebBridge. Use new _lastChild pointer. (-[WebCoreBridge childCount]): Moved from WebBridge. Use _childCount variable. (-[WebCoreBridge previousSibling]): Moved from WebBridge. (-[WebCoreBridge nextSibling]): ditt (-[WebCoreBridge isDescendantOfFrame:]): ditto (-[WebCoreBridge traverseNextFrameStayWithin:]): ditto (-[WebCoreBridge appendChild:]): Moved from WebBridge, maintain count and first/last pointers. (-[WebCoreBridge removeChild:]): Moved from WebBridge, maintain count and first/last pointers.

WebKit:

Reviewed by Vicki.

  • moved frame traversal code across from bridge, also dropped the children array
  • WebCoreSupport.subproj/WebBridge.h:
  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge dealloc]): Don't release children array, that was moved down to WebCore. (-[WebBridge saveDocumentState:]):
  • many methods moved to WebCore.
  • WebView.subproj/WebFrame.m: (Frame): New convenience method to get a WebFrame * from a method that returns WebCoreBridge *. (-[WebFrame _firstChildFrame]): use Frame() (-[WebFrame _lastChildFrame]): ditto (-[WebFrame _previousSiblingFrame]): ditto (-[WebFrame _nextSiblingFrame]): ditto (-[WebFrame _traverseNextFrameStayWithin:]): ditto
3:21 PM Changeset in webkit [11867] by justing
  • 2 edits in trunk/WebCore

Reviewed by harrison

<http://bugzilla.opendarwin.org/show_bug.cgi?id=4609>
window.getSelection().toString() is undefined (range object
returned from window.getSelection() is useless)

toString was defined as a method on the JS Selection object,
but it didn't return anything.

Added layout test:

  • editing/selection/toString.html
  • khtml/ecma/kjs_window.cpp: (KJS::SelectionFunc::callAsFunction):
3:06 PM Changeset in webkit [11866] by justing
  • 1 edit
    2 adds in trunk/LayoutTests

Reviewed by harrison

Layout test for:
<http://bugzilla.opendarwin.org/show_bug.cgi?id=4609>
window.getSelection().toString() is undefined (range object
returned from window.getSelection() is useless)

  • editing/selection/toString-expected.txt: Added.
  • editing/selection/toString.html: Added.
3:03 PM Changeset in webkit [11865] by eseidel
  • 1 edit
    4 adds in trunk/LayoutTests

Bug #: 6345
Submitted by: eseidel
Reviewed by: darin

REGRESSION: repro crash w/ invalid charset attribute on <script>
http://bugzilla.opendarwin.org/show_bug.cgi?id=6345

  • fast/loader/invalid-charset-on-script-crashes-loader-expected.txt: Added.
  • fast/loader/invalid-charset-on-script-crashes-loader.html: Added.
  • fast/loader/resources/invalid-charset-on-script-crashes-loader.js: Added.
2:42 PM Changeset in webkit [11864] by ggaren
  • 2 edits in trunk/WebCore

Reviewed by timo.

Since we clear all the plugin data structures in setView, we need to
clear the windowScriptObject as well. I had already done this in my
previous patch, but I didn't realize there are two windowScriptObjects
-- one for Netscape PlugIns, and one for WebKit PlugIns.

  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::setView): Clear the Netscape PlugIn windowScriptObject as well.
2:34 PM Changeset in webkit [11863] by andersca
  • 1 edit
    2 adds in trunk/LayoutTests

2006-01-03 Anders Carlsson <andersca@mac.com>

Reviewed by Eric.

  • fast/js/test-prototypes-expected.txt: Added.
  • fast/js/test-prototypes.html: Added.
2:34 PM Changeset in webkit [11862] by andersca
  • 6 edits in trunk/WebCore

2006-01-03 Anders Carlsson <andersca@mac.com>

Reviewed by Eric.

  • khtml/ecma/XSLTProcessor.cpp: (KJS::XSLTProcessorConstructorImp::XSLTProcessorConstructorImp):
  • khtml/ecma/XSLTProcessor.h:
  • khtml/ecma/domparser.cpp: (KJS::DOMParserConstructorImp::DOMParserConstructorImp):
  • khtml/ecma/xmlhttprequest.cpp: (KJS::XMLHttpRequestConstructorImp::XMLHttpRequestConstructorImp):
  • khtml/ecma/xmlserializer.cpp: (KJS::XMLSerializerConstructorImp::XMLSerializerConstructorImp): Add "prototype" property in constructors.
2:02 PM Changeset in webkit [11861] by eseidel
  • 3 edits in trunk/WebCore

Bug #: 6345
Submitted by: eseidel
Reviewed by: darin

REGRESSION: repro crash w/ invalid charset attribute on <script>
http://bugzilla.opendarwin.org/show_bug.cgi?id=6345
I also made some small spacing cleanup here.
I did *not* fix the usage in formData, as the move from KCharSet to
QTextCodec actually fixed a bug whereby if the first listed charset
in accept-charsets was invalid, we would assume latin1 instead of
checking for the next valid one before assuming system encoding.

  • khtml/html/html_formimpl.cpp: (DOM::HTMLFormElementImpl::formData): cleanup
  • khtml/misc/loader.cpp: (CachedCSSStyleSheet::CachedCSSStyleSheet): null check (CachedScript::CachedScript): cleanup (CachedXSLStyleSheet::CachedXSLStyleSheet): null check (CachedXBLDocument::CachedXBLDocument): cleanup
1:51 PM Changeset in webkit [11860] by andersca
  • 1 edit
    2 adds in trunk/LayoutTests

2006-01-03 Anders Carlsson <andersca@mac.com>

Reviewed by Darin.

  • fast/frames/iframe-target-expected.txt: Added.
  • fast/frames/iframe-target.html: Added.
1:50 PM Changeset in webkit [11859] by andersca
  • 2 edits in trunk/WebKit

2006-01-03 Anders Carlsson <andersca@mac.com>

Reviewed by Darin.

  • WebView.subproj/WebFrame.m: (-[WebFrame _descendantFrameNamed:sourceFrame:]): Return the correct frame.
4:37 AM Changeset in webkit [11858] by justing
  • 2 edits
    8 adds in trunk/LayoutTests

New/updated layout tests for:
<http://bugzilla.opendarwin.org/show_bug.cgi?id=4904>
Bug with baseOffset and extentOffset in selections (for writely.com)
<rdar://problem/4259818>
selection object incorrect after double-clicking a word

  • editing/selection/anchor-focus1-expected.txt: Added.
  • editing/selection/anchor-focus1.html: Added.
  • editing/selection/anchor-focus2-expected.txt: Added.
  • editing/selection/anchor-focus2.html: Added.
  • editing/selection/anchor-focus3-expected.txt: Added.
  • editing/selection/anchor-focus3.html: Added.
  • editing/selection/getRangeAt-expected.txt: Added.
  • editing/selection/getRangeAt.html: Added.
  • editing/selection/unrendered-001-expected.txt:
4:28 AM Changeset in webkit [11857] by justing
  • 7 edits in trunk/WebCore

<http://bugzilla.opendarwin.org/show_bug.cgi?id=4904>
Bug with baseOffset and extentOffset in selections (for writely.com)
<rdar://problem/4259818>
selection object incorrect after double-clicking a word

Reviewed by harrison

Changed the Selection object's anchor/focus properties to match
Mozilla's Selection object API, added getRangeAt and outlined the
rest of the API.
Cleaned up the JS Selection object (to do less work in the DOM binding).
Added an updateLayout call to VisiblePosition::init and removed some
updateLayout calls from other parts of the editing code.

Added layout tests:

  • editing/selection/getRangeAt.html
  • editing/selection/anchor-focus1.html
  • editing/selection/anchor-focus2.html
  • editing/selection/anchor-focus3.html Updated expected results:
  • editing/selection/unrendered-001-expected.txt
  • khtml/ecma/kjs_window.cpp: (KJS::Selection::getValueProperty): (KJS::Selection::toString): (KJS::SelectionFunc::callAsFunction):
  • khtml/ecma/kjs_window.h: (KJS::Selection::):
  • khtml/editing/SelectionController.cpp: (khtml::SelectionController::modify): (khtml::SelectionController::type): (khtml::SelectionController::toString): (khtml::SelectionController::getRangeAt): (khtml::SelectionController::setBaseAndExtent): (khtml::SelectionController::setPosition): (khtml::SelectionController::collapse): (khtml::SelectionController::collapseToEnd): (khtml::SelectionController::collapseToStart): (khtml::SelectionController::empty): (khtml::SelectionController::extend): (khtml::SelectionController::validate):
  • khtml/editing/SelectionController.h: (khtml::SelectionController::part): (khtml::SelectionController::baseNode): (khtml::SelectionController::extentNode): (khtml::SelectionController::baseOffset): (khtml::SelectionController::extentOffset): (khtml::SelectionController::anchorNode): (khtml::SelectionController::anchorOffset): (khtml::SelectionController::focusNode): (khtml::SelectionController::focusOffset): (khtml::SelectionController::isCollapsed):
  • khtml/editing/visible_position.cpp: (khtml::VisiblePosition::init): (khtml::VisiblePosition::isCandidate):
  • khtml/khtml_part.cpp: (KHTMLPart::handleMousePressEventSingleClick):
2:06 AM Changeset in webkit [11856] by andersca
  • 3 edits
    2 adds in trunk/LayoutTests

2006-01-03 Anders Carlsson <andersca@mac.com>

Reviewed by Maciej.

  • dom/html/level2/core/createDocument08-expected.txt:
  • dom/xhtml/level2/core/createDocument08-expected.txt: These now fail.
  • fast/dom/createDocument-empty-expected.txt: Added.
  • fast/dom/createDocument-empty.html: Added.
2:05 AM Changeset in webkit [11855] by andersca
  • 3 edits in trunk/WebCore

2006-01-03 Anders Carlsson <andersca@mac.com>

Reviewed by Maciej.

  • khtml/ecma/kjs_dom.cpp: (KJS::DOMDOMImplementationProtoFunc::callAsFunction): When passing null to createDocument, pass a null DOMString, and not a DOMString containing the text "null".
  • khtml/xml/dom_docimpl.cpp: (DOMImplementationImpl::createDocument): Only validate the qualifiedName if it's not null or empty. Also, do not create the document element if the qualifiedName is null or empty.
1:19 AM Changeset in webkit [11854] by eseidel
  • 57 edits in trunk/WebCore

Bug #: 6109
Submitted by: eseidel
Reviewed by: darin

No functionality changes, no tests possible.

khtml/editing should use RefPtr instead of manual ref/deref
http://bugzilla.opendarwin.org/show_bug.cgi?id=6109

Results in a slight performance gain < 1% on the PLT.

  • khtml/editing/SelectionController.cpp: (khtml::SelectionController::toRange):
  • khtml/editing/SelectionController.h:
  • khtml/editing/append_node_command.cpp: (khtml::AppendNodeCommand::AppendNodeCommand): (khtml::AppendNodeCommand::doApply): (khtml::AppendNodeCommand::doUnapply):
  • khtml/editing/append_node_command.h: (khtml::AppendNodeCommand::~AppendNodeCommand): (khtml::AppendNodeCommand::appendChild): (khtml::AppendNodeCommand::parentNode):
  • khtml/editing/apply_style_command.cpp: (khtml::StyleChange::init): (khtml::ApplyStyleCommand::removeInlineStyle):
  • khtml/editing/apply_style_command.h:
  • khtml/editing/composite_edit_command.cpp: (khtml::CompositeEditCommand::deleteInsignificantText):
  • khtml/editing/delete_from_text_node_command.cpp: (khtml::DeleteFromTextNodeCommand::DeleteFromTextNodeCommand):
  • khtml/editing/delete_from_text_node_command.h: (khtml::DeleteFromTextNodeCommand::~DeleteFromTextNodeCommand): (khtml::DeleteFromTextNodeCommand::node):
  • khtml/editing/delete_selection_command.cpp: (khtml::DeleteSelectionCommand::initializePositionData): (khtml::DeleteSelectionCommand::saveTypingStyleState): (khtml::DeleteSelectionCommand::handleGeneralDelete): (khtml::DeleteSelectionCommand::calculateEndingPosition): (khtml::DeleteSelectionCommand::calculateTypingStyleAfterDelete): (khtml::DeleteSelectionCommand::clearTransientState):
  • khtml/editing/delete_selection_command.h:
  • khtml/editing/edit_command.cpp: (khtml::EditCommand::EditCommand): (khtml::EditCommand::~EditCommand): (khtml::EditCommand::setTypingStyle): (khtml::EditCommand::styleAtPosition):
  • khtml/editing/edit_command.h: (khtml::EditCommand::document): (khtml::EditCommand::typingStyle):
  • khtml/editing/insert_into_text_node_command.cpp: (khtml::InsertIntoTextNodeCommand::InsertIntoTextNodeCommand):
  • khtml/editing/insert_into_text_node_command.h: (khtml::InsertIntoTextNodeCommand::~InsertIntoTextNodeCommand): (khtml::InsertIntoTextNodeCommand::node):
  • khtml/editing/insert_node_before_command.cpp: (khtml::InsertNodeBeforeCommand::InsertNodeBeforeCommand): (khtml::InsertNodeBeforeCommand::doApply): (khtml::InsertNodeBeforeCommand::doUnapply):
  • khtml/editing/insert_node_before_command.h: (khtml::InsertNodeBeforeCommand::~InsertNodeBeforeCommand): (khtml::InsertNodeBeforeCommand::insertChild): (khtml::InsertNodeBeforeCommand::refChild):
  • khtml/editing/insert_paragraph_separator_command.cpp: (khtml::InsertParagraphSeparatorCommand::InsertParagraphSeparatorCommand): (khtml::InsertParagraphSeparatorCommand::~InsertParagraphSeparatorCommand): (khtml::InsertParagraphSeparatorCommand::calculateStyleBeforeInsertion): (khtml::InsertParagraphSeparatorCommand::applyStyleAfterInsertion):
  • khtml/editing/insert_paragraph_separator_command.h:
  • khtml/editing/join_text_nodes_command.cpp: (khtml::JoinTextNodesCommand::JoinTextNodesCommand): (khtml::JoinTextNodesCommand::doApply): (khtml::JoinTextNodesCommand::doUnapply):
  • khtml/editing/join_text_nodes_command.h: (khtml::JoinTextNodesCommand::~JoinTextNodesCommand): (khtml::JoinTextNodesCommand::firstNode): (khtml::JoinTextNodesCommand::secondNode):
  • khtml/editing/jsediting.cpp:
  • khtml/editing/markup.cpp: (khtml::createMarkup): (khtml::createFragmentFromMarkup): (khtml::createFragmentFromText): (khtml::createFragmentFromNodeList):
  • khtml/editing/markup.h:
  • khtml/editing/merge_identical_elements_command.cpp: (khtml::MergeIdenticalElementsCommand::MergeIdenticalElementsCommand): (khtml::MergeIdenticalElementsCommand::doApply): (khtml::MergeIdenticalElementsCommand::doUnapply):
  • khtml/editing/merge_identical_elements_command.h: (khtml::MergeIdenticalElementsCommand::~MergeIdenticalElementsCommand):
  • khtml/editing/move_selection_command.cpp: (khtml::MoveSelectionCommand::MoveSelectionCommand): (khtml::MoveSelectionCommand::~MoveSelectionCommand): (khtml::MoveSelectionCommand::doApply):
  • khtml/editing/move_selection_command.h:
  • khtml/editing/rebalance_whitespace_command.cpp:
  • khtml/editing/rebalance_whitespace_command.h: (khtml::RebalanceWhitespaceCommand::~RebalanceWhitespaceCommand):
  • khtml/editing/remove_css_property_command.cpp: (khtml::RemoveCSSPropertyCommand::RemoveCSSPropertyCommand):
  • khtml/editing/remove_css_property_command.h: (khtml::RemoveCSSPropertyCommand::~RemoveCSSPropertyCommand): (khtml::RemoveCSSPropertyCommand::styleDeclaration):
  • khtml/editing/remove_node_attribute_command.cpp: (khtml::RemoveNodeAttributeCommand::RemoveNodeAttributeCommand):
  • khtml/editing/remove_node_attribute_command.h: (khtml::RemoveNodeAttributeCommand::~RemoveNodeAttributeCommand): (khtml::RemoveNodeAttributeCommand::element):
  • khtml/editing/remove_node_command.cpp: (khtml::RemoveNodeCommand::RemoveNodeCommand): (khtml::RemoveNodeCommand::doApply): (khtml::RemoveNodeCommand::doUnapply):
  • khtml/editing/remove_node_command.h: (khtml::RemoveNodeCommand::~RemoveNodeCommand): (khtml::RemoveNodeCommand::node):
  • khtml/editing/remove_node_preserving_children_command.cpp: (khtml::RemoveNodePreservingChildrenCommand::RemoveNodePreservingChildrenCommand):
  • khtml/editing/remove_node_preserving_children_command.h: (khtml::RemoveNodePreservingChildrenCommand::~RemoveNodePreservingChildrenCommand): (khtml::RemoveNodePreservingChildrenCommand::node):
  • khtml/editing/replace_selection_command.cpp: (khtml::ReplacementFragment::ReplacementFragment): (khtml::ReplacementFragment::~ReplacementFragment): (khtml::ReplacementFragment::enclosingBlock): (khtml::ReplacementFragment::removeNodePreservingChildren): (khtml::ReplacementFragment::removeNode): (khtml::ReplacementFragment::insertFragmentForTestRendering): (khtml::ReplacementFragment::restoreTestRenderingNodesToFragment): (khtml::ReplaceSelectionCommand::fixupNodeStyles): (khtml::computeAndStoreNodeDesiredStyle): (khtml::NodeDesiredStyle::NodeDesiredStyle): (khtml::ReplaceSelectionCommand::ReplaceSelectionCommand): (khtml::ReplaceSelectionCommand::~ReplaceSelectionCommand): (khtml::ReplaceSelectionCommand::doApply): (khtml::ReplaceSelectionCommand::completeHTMLReplacement): (khtml::ReplaceSelectionCommand::updateNodesInserted):
  • khtml/editing/replace_selection_command.h: (khtml::NodeDesiredStyle::node): (khtml::NodeDesiredStyle::style): (khtml::ReplacementFragment::root):
  • khtml/editing/set_node_attribute_command.cpp: (khtml::SetNodeAttributeCommand::SetNodeAttributeCommand):
  • khtml/editing/set_node_attribute_command.h: (khtml::SetNodeAttributeCommand::~SetNodeAttributeCommand): (khtml::SetNodeAttributeCommand::element):
  • khtml/editing/split_element_command.cpp: (khtml::SplitElementCommand::SplitElementCommand): (khtml::SplitElementCommand::doApply): (khtml::SplitElementCommand::doUnapply):
  • khtml/editing/split_element_command.h: (khtml::SplitElementCommand::~SplitElementCommand):
  • khtml/editing/split_text_node_command.cpp: (khtml::SplitTextNodeCommand::SplitTextNodeCommand): (khtml::SplitTextNodeCommand::doApply): (khtml::SplitTextNodeCommand::doUnapply):
  • khtml/editing/split_text_node_command.h: (khtml::SplitTextNodeCommand::~SplitTextNodeCommand): (khtml::SplitTextNodeCommand::node):
  • khtml/editing/split_text_node_containing_element.cpp: (khtml::SplitTextNodeContainingElementCommand::SplitTextNodeContainingElementCommand): (khtml::SplitTextNodeContainingElementCommand::doApply):
  • khtml/editing/split_text_node_containing_element_command.h: (khtml::SplitTextNodeContainingElementCommand::~SplitTextNodeContainingElementCommand):
  • khtml/editing/visible_position.cpp: (khtml::makeRange):
  • khtml/editing/visible_position.h:
  • khtml/editing/visible_text.cpp: (khtml::TextIterator::range): (khtml::SimplifiedBackwardsTextIterator::range): (khtml::CharacterIterator::range): (khtml::findPlainText):
  • khtml/editing/visible_text.h: (khtml::WordAwareIterator::range):
  • khtml/editing/wrap_contents_in_dummy_span_command.cpp: (khtml::WrapContentsInDummySpanCommand::WrapContentsInDummySpanCommand): (khtml::WrapContentsInDummySpanCommand::doApply): (khtml::WrapContentsInDummySpanCommand::doUnapply):
  • khtml/editing/wrap_contents_in_dummy_span_command.h: (khtml::WrapContentsInDummySpanCommand::~WrapContentsInDummySpanCommand):
  • kwq/DOMHTML.mm: (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]): (-[DOMHTMLDocument _createDocumentFragmentWithText:]):
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge documentFragmentWithMarkupString:baseURLString:]): (-[WebCoreBridge documentFragmentWithText:]): (-[WebCoreBridge documentFragmentWithNodesAsParagraphs:]):
12:23 AM Changeset in webkit [11853] by andersca
  • 1 edit
    2 adds in trunk/LayoutTests

2006-01-03 Anders Carlsson <andersca@mac.com>

Reviewed by Darin.

  • fast/dom/clone-node-form-elements-expected.txt: Added.
  • fast/dom/clone-node-form-elements.html: Added.
12:12 AM Changeset in webkit [11852] by andersca
  • 7 edits in trunk/WebCore

2006-01-03 Anders Carlsson <andersca@mac.com>

Reviewed by Darin.

  • khtml/html/html_elementimpl.cpp: (HTMLElementImpl::cloneNode): Call copyNonAttributeProperties on the new node.
  • khtml/html/html_formimpl.cpp: (DOM::HTMLInputElementImpl::copyNonAttributeProperties):
  • khtml/html/html_formimpl.h: Copy m_value, m_checked and m_indeterminate here.
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::importNode): Call copyNonAttributeProperties on the new node.
  • khtml/xml/dom_elementimpl.cpp: (ElementImpl::cloneNode): Call copyNonAttributeProperties on the new node.
  • khtml/xml/dom_elementimpl.h: (DOM::ElementImpl::copyNonAttributeProperties): Add function declaration.

Jan 2, 2006:

9:15 PM Changeset in webkit [11851] by mjs
  • 6 edits in trunk/WebKit

Reviewed by Eric.

To do this, I had to invert the ownership so that WebBridge now
owns WebFrame instead of vice versa. As a result, WebView now owns
a WebBridge pointer and does not have a direct WebFrame pointer.

  • WebCoreSupport.subproj/WebBridge.h:
  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge initWithFrameName:view:]): The initializer is now responsible for creating the frame, so pass it what it needs to do that. (-[WebBridge dealloc]): The bridge now owns the frame, so release it. (-[WebBridge close]): ditto (-[WebBridge firstChild]): Moved from WebFrame (-[WebBridge lastChild]): ditto (-[WebBridge childCount]): ditto (-[WebBridge previousSibling]): ditto (-[WebBridge nextSibling]): ditto (-[WebBridge isDescendantOfFrame:]): ditto (-[WebBridge traverseNextFrameStayWithin:]): ditto (-[WebBridge appendChild:]): ditto (-[WebBridge removeChild:]): ditto
  • WebView.subproj/WebFrame.m: (-[WebFrame _removeChild::]): Call WebBridge version (-[WebFramePrivate dealloc]): ditto (-[WebFrame _firstChildFrame]): ditto (-[WebFrame _lastChildFrame]): ditto (-[WebFrame _childFrameCount]): ditto (-[WebFrame _previousSiblingFrame]): ditto (-[WebFrame _nextSiblingFrame]): ditto (-[WebFrame _traverseNextFrameStayWithin:]): ditto (-[WebFrame _appendChild:]): ditto (-[WebFrame _removeChild:]): ditto (-[WebFrame _isDescendantOfFrame:]): ditto, (-[WebFrame _detachFromParent]): reorder a bit to avoid losing our bridge pointer before the bridge is due to release us, and don't release the bridge any more since it now owns us (-[WebFrame _initWithName:webFrameView:webView:bridge:]): new initializer, we no longer create the bridge, instead it is passed in (-[WebFrame initWithName:webFrameView:webView:]): Call the new designated initializer, but this method is no longer viable and should be deprecated.
  • WebView.subproj/WebFrameInternal.h:
  • WebView.subproj/WebView.m: WebView was changed to hold onto the WebBridge for the main frame instead of the WebFrame.

(-[WebViewPrivate dealloc]): update for the fact that we hold
a bridge now, not a frame.
(-[WebView _close]): ditto
(-[WebView _createFrameNamed:inParent:allowsScrolling:]): Create
a bridge, not a frame.
(-[WebView _commonInitializationWithFrameName:groupName:]): ditto.
(-[WebView setDefersCallbacks:]): get mainFrame via method
(-[WebView mainFrame]): Update to get the main frame properly

7:48 PM Changeset in webkit [11850] by mjs
  • 1 edit
    1 delete in trunk/WebCore

Rubber stamped by Eric.

  • remove the no longer used QIntDict
  • kwq/KWQIntDict.h: Removed.
6:07 PM Changeset in webkit [11849] by ap
  • 3 edits
    5 adds in trunk

Reviewed by Eric.

Test case: fast/xsl/xslt-relative-path.xml

  • khtml/xsl/xslt_processorimpl.cpp: (DOM::docLoaderFunc): Renamed from stylesheetLoadFunc. Use base URL when constructing URLs. (DOM::XSLTProcessorImpl::transformToString):
4:13 PM Changeset in webkit [11848] by vicki
  • 2 edits in trunk/WebCore

Reviewed by Maciej.

  • fix for <rdar://problem/4389622> *Pan EU2* iframe swallows events for overlapping elements (part 2)

We originally added a call to passSubframeEventToSubframe here to fix the hand cursor updating problem
reported in <rdar://problem/4316201> REGRESSION: cursor and text in status bar is not updated when
mousing over links in a frame (5509). However, when we return early after passSubframeEventToSubframe,
we fail to fire onmouseout events. Since the call to passSubframeEventToSubframe was originally added
to fix the hand cursor updating problem, remove the early return and make cursor updating conditional
on passSubframeEventToSubframe.

  • khtml/khtmlview.cpp: (KHTMLView::viewportMouseMoveEvent):

Dec 30, 2005:

4:14 PM Changeset in webkit [11847] by darin
  • 23 edits in trunk/WebCore

Reviewed by Maciej.

Added new functions named equal and equalIgnoringCase.

  • khtml/xml/dom_stringimpl.h: Changed the type of the length parameter to computeHash to unsigned to match the rest of the interface. Added equal and equalIgnoringCase functions. Added a version of the hash function that works on char* to CaseInsensitiveHash as preparation for an atomic string change.
  • khtml/xml/dom_stringimpl.cpp: Moved the QT_ALLOC_QCHAR_VEC and QT_DELETE_QCHAR_VEC macros here, and changed them into inline functions. (DOM::equal): Implemented. (DOM::equalIgnoringCase): Implemented. (DOM::DOMStringImpl::computeHash): Changed parameter type to unsigned to match other similar functions.
  • khtml/dom/dom_string.h: Removed unnecessary friend declarations. Changed operator overloads for == and != to call through inline to DOMStringImpl. Replaced strcasecmp with equalIgnoringCase, overloaded for one more combination of parameters. Removed strcmp.
  • khtml/dom/dom_string.cpp: Removed functions that are now implemented in DOMStringImpl*.
  • khtml/xml/dom_atomicstring.h: Removed a redundant const. Removed unnecessary friend declarations. Removed AtomicString::equal. Filled out a larger set of == and != operator implementations, mostly with inlines calling through to DOMStringImpl. Renamed equalsIgnoreCase to equalIgnoringCase and filled out a larger set as above.
  • khtml/xml/dom_atomicstring.cpp: Renamed AtomicString::equal to just ==. Removed some implementation of == and equalsIgnoreCase that are replaced by inlines.
  • khtml/html/html_listimpl.cpp: (DOM::HTMLOListElementImpl::parseMappedAttribute): (DOM::HTMLLIElementImpl::parseMappedAttribute): Use the "==" operator instead of strcmp.
  • khtml/css/cssstyleselector.cpp: (khtml::CSSStyleSelector::checkOneSelector): Use equalIgnoringCase instead of equalsIgnoreCase.
  • khtml/rendering/render_form.cpp: (RenderSlider::updateFromElement): Fixed bug where a temporary DOMString was put into a const DOMString&. Changed some DOMString to AtomicString as appropriate, and also used equalIgnoringCase instead of strcasecmp. (RenderSlider::slotSliderValueChanged): More of the same.
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::processHttpEquiv): Replaced use of strcasecmp with equalIgnoringCase. Added parentheses to fix incorrect operator precedence in one case
(&& binds tighter than
) which fixes a crash when using a http-equiv pragma when there

is no part (not sure how to reproduce that).

  • khtml/khtml_part.cpp: (updateState): (KHTMLPart::selectionStartHasStyle):
  • khtml/ecma/kjs_html.cpp: (KJS::KJS::HTMLDocument::putValueProperty):
  • khtml/editing/apply_style_command.cpp: (khtml::StyleChange::checkForLegacyHTMLStyleChange): (khtml::StyleChange::currentlyHasStyle): (khtml::hasTextDecorationProperty): (khtml::ApplyStyleCommand::extractTextDecorationStyle): (khtml::ApplyStyleCommand::extractAndNegateTextDecorationStyle):
  • khtml/html/html_baseimpl.cpp: (HTMLBodyElementImpl::parseMappedAttribute): (HTMLFrameElementImpl::parseMappedAttribute):
  • khtml/html/html_blockimpl.cpp: (HTMLDivElementImpl::parseMappedAttribute): (HTMLHRElementImpl::parseMappedAttribute): (HTMLParagraphElementImpl::parseMappedAttribute): (HTMLMarqueeElementImpl::parseMappedAttribute):
  • khtml/html/html_elementimpl.cpp: (HTMLElementImpl::parseMappedAttribute): (HTMLElementImpl::addHTMLAlignment): (HTMLElementImpl::setContentEditable):
  • khtml/html/html_formimpl.cpp: (DOM::HTMLFormElementImpl::parseMappedAttribute): (DOM::HTMLButtonElementImpl::parseMappedAttribute): (DOM::HTMLInputElementImpl::setInputType): (DOM::HTMLInputElementImpl::parseMappedAttribute): (DOM::HTMLKeygenElementImpl::appendFormData): (DOM::HTMLTextAreaElementImpl::parseMappedAttribute):
  • khtml/html/html_imageimpl.cpp: (DOM::HTMLAreaElementImpl::parseMappedAttribute):
  • khtml/html/html_inlineimpl.cpp: (DOM::HTMLBRElementImpl::parseMappedAttribute):
  • khtml/html/html_tableimpl.cpp: (DOM::HTMLTablePartElementImpl::parseMappedAttribute):
  • khtml/html/htmlparser.cpp: (HTMLParser::handleError): Use equalIgnoringCase instead of strcasecmp.
2:17 PM Changeset in webkit [11846] by ap
  • 10 edits
    4 adds in trunk

Reviewed by Darin, landed by ap.

WebCore:

  • khtml/rendering/font.h:
  • khtml/rendering/font.cpp: (khtml::Font::selectionRectForText): Added.
  • khtml/rendering/render_text.cpp: (kthml::InlineTextBox::selectionRect): Use selectionRectForText. This works for justified text as well, and avoids intermediate rounding which resulted in selection rects narrower than AppKit's. (khtml::InlineTextBox::positionForOffset): Use selectionRectForText, which works for justified text as well.
  • kwq/KWQFontMetrics.h:
  • kwq/KWQFontMetrics.mm: (QFontMetrics::selectionRectForText): Added.
  • kwq/WebCoreTextRenderer.h:

WebKit:

  • WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer selectionRectForRun:style:geometry:]): Added. (CG_drawHighlight): Use new function CG_selectionRect. (CG_selectionRect): New function to compute the selection rect. Eliminated rounding hackery that was required for keeping the highlight rect within the selection rect computed by InlineTextBox::selectionRect, since the latter uses this function now. The new selection rect is wider and matches AppKit more closely, although the right hand side is roundf()ed instead of cielf()ed for optimal caret positioning. (ATSU_drawHighlight): Use new function ATSU_selectionRect. (ATSU_selectionRect): New function to compute the selection rect. Much like CG_selectionRect.

LayoutTests:

  • fast/text/justified-text-rect-expected.checksum: Added.
  • fast/text/justified-text-rect-expected.png: Added.
  • fast/text/justified-text-rect-expected.txt: Added.
  • fast/text/justified-text-rect.html: Added.
1:23 PM Changeset in webkit [11845] by ap
  • 2 edits in trunk/WebCore
  • khtml/editing/visible_text.cpp: (khtml::TextIterator::rangeFromLocationAndLength): Only special-case (0, 0) ranges for empty documents.
1:22 PM Changeset in webkit [11844] by andersca
  • 1 edit in trunk/LayoutTests/fast/dom/dom-parse-serialize-expected.txt

Forgot to commit this

1:16 PM Changeset in webkit [11843] by eseidel
  • 2 edits in trunk/LayoutTests

Bug #: 6305
Submitted by: eseidel
Reviewed by: ggaren

Missing CSS Style sheets in one of the XHTML tests in WebCore
http://bugzilla.opendarwin.org/show_bug.cgi?id=6305

  • fast/parser/entities-in-xhtml.xhtml: removed <link> to css sheet
12:43 PM Changeset in webkit [11842] by ggaren
  • 1 edit in trunk/WebCore/ChangeLog

Remove conflict marker from ChangeLog

12:42 PM Changeset in webkit [11841] by ggaren
  • 3 edits
    1 add in trunk

WebCore:

Added test case for <rdar://problem/4268278> Submitting a form in onUnload event
handler causes crash in -[WebDataSource(WebPrivate) _commitIfReady:]

  • manual-tests/onunload-form-submit-crash.html: Added.

WebKit:

Reviewed by Eric.

Manual testcase added:
WebCore/manual-tests/onunload-form-submit-crash.html

  • Fixed <rdar://problem/4268278> Submitting a form in onUnload event handler causes crash in -[WebDataSource(WebPrivate) _commitIfReady:]

The problem is that the form submission in the unload event kicks off
a new load in the midst of the load that caused the unload event to
fire in the first place, so the two loads stomp each other.

The solution is to cancel the first load and let the unload handler's
load win. (Firefox does the same.)

  • WebView.subproj/WebFrame.m: (-[WebFrame _transitionToCommitted:]): Moved call to -closeURL up the call stack to _continueLoadRequest. (See below.) This has the side-effect of always firing the unload event, even if the new datasource never becomes committed, which seems like a good thing.

(-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
Call -closeURL here, instead of in _transitionToCommitted, so that the
unload handler can fire before we initialize any part of the load.

Check provisionalDataSource for nil to discover if the unload event
kicked off its own load.

Cleared up some coments.

(-[WebFrame _detachFromParent]):
It turns out that if you close the window instead of just navigating
to a new page, you get an alternate assertion failure/crash because
the load kicked off by the unload event handler generates resource
loader callbacks after the associated WebFrame/WebView has disappeared.

The nifty solution here is just to reverse the order of calls to
-stopLoading and -closeURL, thus guaranteeing that -stopLoading has the
last word when you close a window.

6:53 AM Changeset in webkit [11840] by andersca
  • 6 edits in trunk/LayoutTests

2005-12-30 Anders Carlsson <andersca@mac.com>

Reviewed by Eric.

XMLSerializer should use createMarkup

  • fast/dom/XMLSerializer.html:
  • fast/dom/XMLSerializer-expected.txt: Create a document fragment and serialize it.
  • fast/dom/dom-parse-serialize.html:
  • fast/dom/dom-parse-serialize-expected.txt: Add some entities to attributes and text nodes.
  • fast/xsl/xslt-processer-expected.txt: Update test results.
6:51 AM Changeset in webkit [11839] by andersca
  • 3 edits in trunk/WebCore

2005-12-30 Anders Carlsson <andersca@mac.com>

Reviewed by Eric.

  • khtml/ecma/xmlserializer.cpp: (KJS::XMLSerializerProtoFunc::callAsFunction):

Use createMarkup instead of NodeImpl::toString.

  • khtml/editing/markup.cpp: (khtml::startMarkup):

escape attribute values and ignore document fragment nodes.

1:57 AM Changeset in webkit [11838] by mjs
  • 2 edits in trunk/JavaScriptCore

No review, just test result update.

  • tests/mozilla/expected.html: Updated for newly passing test from recent fixes.
1:48 AM Changeset in webkit [11837] by eseidel
  • 7 edits in trunk/WebCore

Bug #: 6299
Submitted by: eseidel
Reviewed by: mjs

No functional changes, thus no layout test.

Just removes debug NSLog() calls from ksvg2/kcanvas.
http://bugzilla.opendarwin.org/show_bug.cgi?id=6299

  • kcanvas/device/quartz/KCanvasFilterQuartz.mm: (KCanvasFilterQuartz::prepareFilter): (KCanvasFilterQuartz::applyFilter): (KCanvasFilterQuartz::getCIFilterStack): (KCanvasFilterQuartz::imageForName): (KCanvasFEBlendQuartz::getCIFilter): (KCanvasFEColorMatrixQuartz::getCIFilter): (KCanvasFEGaussianBlurQuartz::getCIFilter):
  • kcanvas/device/quartz/KCanvasResourcesQuartz.mm: (KCanvasClipperQuartz::applyClip):
  • kcanvas/device/quartz/KRenderingDeviceQuartz.mm: (KRenderingDeviceContextQuartz::mapFromVisual): (KRenderingDeviceContextQuartz::mapToVisual): (KRenderingDeviceQuartz::createResource): (KRenderingDeviceQuartz::createFilterEffect):
  • kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm: (drawShadingWithStyle): (KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
  • kcanvas/device/quartz/KRenderingPaintServerQuartz.mm: (KRenderingPaintServerPatternQuartz::draw):
  • ksvg2/svg/svgpathparser.cpp: (SVGPathParser::parseSVG):
1:44 AM Changeset in webkit [11836] by andersca
  • 2 edits in trunk/JavaScriptCore

2005-12-30 Anders Carlsson <andersca@mac.com>

Reviewed by Maciej.

  • kjs/object.cpp: (KJS::JSObject::put):

Rework the getter setter part. We now walk the prototype chain, checking for
getter/setter properties and only take the slow path if any are found.

1:27 AM Changeset in webkit [11835] by eseidel
  • 2 edits
    2 adds in trunk/LayoutTests

Bug #: none
Submitted by: eseidel
Reviewed by: No review, just adding a couple missing results.

One missing pixel test.
One result which never was updated properly after rounded rect fix:
http://bugzilla.opendarwin.org/show_bug.cgi?id=6157

  • svg/W3C-SVG-1.1/shapes-rect-01-t-expected.txt:
  • fast/parser/xhtml-alternate-entities-expected.checksum: Added.
  • fast/parser/xhtml-alternate-entities-expected.png: Added.
12:51 AM Changeset in webkit [11834] by mjs
  • 1 edit
    4 adds in trunk/LayoutTests

Reviewed by Darin, landed by Maciej.

  • fast/overflow/overflow-auto-table-expected.checksum: Added.
  • fast/overflow/overflow-auto-table-expected.png: Added.
  • fast/overflow/overflow-auto-table-expected.txt: Added.
  • fast/overflow/overflow-auto-table.html: Added.
12:49 AM Changeset in webkit [11833] by eseidel
  • 37 edits in trunk/LayoutTests

Bug #: none
Submitted by: eseidel
Reviewed by: none, just updating stale results

No review, updating stale results.
I went over all the interesting ones with mjs and hyatt.

  • css2.1/t040304-c64-uri-00-a-g-expected.checksum:
  • css2.1/t040304-c64-uri-00-a-g-expected.png:
  • css2.1/t0905-c414-flt-wrap-01-d-g-expected.checksum:
  • css2.1/t0905-c414-flt-wrap-01-d-g-expected.png:
  • css2.1/t100801-c544-valgn-02-d-agi-expected.checksum:
  • css2.1/t100801-c544-valgn-02-d-agi-expected.png:
  • dom/xhtml/level2/html/HTMLBaseElement02-expected.checksum:
  • dom/xhtml/level2/html/HTMLBaseElement02-expected.png:
  • dom/xhtml/level2/html/frame-expected.checksum:
  • dom/xhtml/level2/html/frame-expected.png:
  • dom/xhtml/level2/html/iframe-expected.checksum:
  • dom/xhtml/level2/html/iframe-expected.png:
  • editing/selection/extend-by-word-002-expected.checksum:
  • editing/selection/extend-by-word-002-expected.png:
  • fast/css/imageTileOpacity-expected.checksum:
  • fast/css/imageTileOpacity-expected.png:
  • fast/forms/001-expected.checksum:
  • fast/forms/001-expected.png:
  • fast/frames/empty-frame-src-expected.checksum:
  • fast/frames/empty-frame-src-expected.png:
  • fast/frames/invalid-expected.checksum:
  • fast/frames/invalid-expected.png:
  • fast/frames/valid-expected.checksum:
  • fast/frames/valid-expected.png:
  • svg/custom/conditional-processing-outside-switch-expected.txt:
  • svg/custom/control-points-for-S-and-T-expected.txt:
  • svg/custom/fill-update-expected.txt:
  • svg/custom/junk-data-expected.txt:
  • svg/custom/missing-xlink-expected.txt:
  • svg/custom/path-bad-data-expected.txt:
  • svg/custom/path-update-expected.txt:
  • svg/custom/simpleCDF-expected.txt:
  • svg/custom/transform-ignore-after-invalid-expected.txt:
  • svg/custom/transform-invalid-expected.txt:
  • svg/custom/transform-with-ending-space-expected.txt:
  • svg/custom/use-forward-refs-expected.txt:
12:18 AM Changeset in webkit [11832] by mjs
  • 2 edits in trunk/LayoutTests

No review.

  • fast/js/kde/Number-expected.txt:
12:14 AM Changeset in webkit [11831] by mjs
  • 2 edits in trunk/JavaScriptCore

Reviewed and committed by Maciej.

(Merged from KJS, original work by Harri Porten)

  • kjs/number_object.cpp: (NumberProtoFunc::callAsFunction): rewrote Number.toString(radix) to work with negative numbers, floating point and very large numbers.
Note: See TracTimeline for information about the timeline view.