Timeline



Nov 13, 2005:

11:43 PM Changeset in webkit [11181] by mjs
  • 2 edits in trunk/WebCore
  • fix Deployment build
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]):
10:46 PM Changeset in webkit [11180] by vicki
  • 2 edits in trunk/WebCore

Reviewed by Adele.

  • fix <rdar://problem/4341389> crash in elementAtPoint code quitting Safari, and make this code slightly more readable
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]): add a nil check
7:49 PM Changeset in webkit [11179] by vicki
  • 3 edits in trunk/WebCore

Reviewed by Maciej.

  • fix <rdar://problem/4316201> REGRESSION: cursor and text in status bar is not updated when mousing over links in a frame (5509)
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::passSubframeEventToSubframe): add a case to handle NSMouseMoved, to fix the problem with the hand cursor (KWQKHTMLPart::mouseMoved): return if we're already sending an event to the subview
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]): if we're over a frame, return the element within the frame, to fix the problem with status bar text
3:56 PM Changeset in webkit [11178] by andersca
  • 1 edit
    2 adds in trunk/LayoutTests

2005-11-14 Anders Carlsson <andersca@mac.com>

Reviewed by Eric.

Add test to make sure that importNode preserves element prefixes.

  • fast/dom/importNode-prefix-expected.txt: Added.
  • fast/dom/importNode-prefix.html: Added.
3:52 PM Changeset in webkit [11177] by andersca
  • 2 edits in trunk/WebCore

2005-11-14 Anders Carlsson <andersca@mac.com>

Reviewed by Eric.

  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::importNode): Use tagName() instead of localName() so the prefix will be preserved.
12:42 PM Changeset in webkit [11176] by bdakin
  • 1 edit
    1 add in trunk/LayoutTests

Bug #:
Submitted by:
Reviewed by:

11:45 AM Changeset in webkit [11175] by andersca
  • 12 edits
    2 adds in trunk/LayoutTests

2005-11-13 Anders Carlsson <andersca@mac.com>

Reviewed by Eric.

Update tests for change to createDocument which now creates a document element.

  • dom/xhtml/level3/core/documentadoptnode14-expected.txt:
  • dom/xhtml/level3/core/documentadoptnode26-expected.txt:
  • dom/xhtml/level3/core/documentadoptnode27-expected.txt:
  • dom/xhtml/level3/core/infoset07-expected.txt:
  • dom/xhtml/level3/core/nodeisdefaultnamespace05-expected.txt:
  • dom/xhtml/level3/core/nodelookupnamespaceuri05-expected.txt:
  • dom/xhtml/level3/core/nodelookupprefix05-expected.txt:
  • dom/xhtml/level3/core/wellformed03-expected.txt:
  • dom/xhtml/level3/core/wellformed04-expected.txt: These tests still fail, but elsewhere now.
  • dom/xhtml/level3/core/nodereplacechild14-expected.txt:
  • dom/xhtml/level3/core/nodesettextcontent02-expected.txt: These tests now succeed.
  • fast/dom/createDocument.html: Added.
  • fast/dom/createDocument-expected.txt: Added.
11:44 AM Changeset in webkit [11174] by andersca
  • 2 edits in trunk/WebCore

2005-11-13 Anders Carlsson <andersca@mac.com>

Reviewed by Eric.

  • khtml/xml/dom_docimpl.cpp: (DOMImplementationImpl::createDocument): Make sure to create a document element.
11:26 AM Changeset in webkit [11173] by andersca
  • 1 add in trunk/LayoutTests/fast/dom/setAttributeNS-expected.txt

Forgot this.

10:53 AM Changeset in webkit [11172] by andersca
  • 1 edit
    1 add in trunk/LayoutTests

2005-11-13 Anders Carlsson <andersca@mac.com>

Reviewed by Eric.

Add test for setAttributeNS with null namespaceURI.

  • fast/dom/setAttributeNS.html: Added.
10:52 AM Changeset in webkit [11171] by andersca
  • 6 edits in trunk/WebCore

2005-11-13 Anders Carlsson <andersca@mac.com>

Reviewed by Eric.

  • khtml/ecma/kjs_binding.cpp: (KJS::valueToStringWithNullCheck):
  • khtml/ecma/kjs_binding.h: Add function which converts a JavaScript value to a DOMString, converting the null value to a null DOMString.
  • khtml/ecma/kjs_dom.cpp: (KJS::DOMNode::putValueProperty): (KJS::DOMElementProtoFunc::callAsFunction): Use valueToStringWithNullCheck in setAttributeNS and the textContent setter.
  • khtml/html/html_headimpl.cpp: (HTMLScriptElementImpl::insertedIntoDocument): Don't try to evaluate scripts for viewless documents.
  • khtml/xml/dom_nodeimpl.cpp: (DOM::NodeImpl::isEqualNode): Get the attribute map from the correct element.

Nov 12, 2005:

7:22 PM Changeset in webkit [11170] by thatcher
  • 6 edits in branches/Safari-2-0-branch

WebCore:

Merged fix from Ti-2005-009-branch to Safari-2-0-branch

2005-10-06 Beth Dakin <Beth Dakin>

Reviewed by Vicki.

Fix for <rdar://problem/4145535> Crash in khtml::RenderBlock::addOverhangingFloats
with simple HTML test file.

  • khtml/rendering/render_block.cpp: Added nil check (khtml::RenderBlock::addOverhangingFloats):

WebKit:

Merged fix from Ti-2005-009-branch to Safari-2-0-branch

2005-10-07 John Sullivan <sullivan@apple.com>

Reviewed by Tim Omernick.

WebKit support for allowing clients to know which frame originated a particular JavaScript alert/dialog.

  • WebView.subproj/WebUIDelegatePrivate.h: New optional delegate methods for the three JavaScript alert/dialogs. These are just like the existing ones in WebUIDelegate.h except that each adds a parameter specifying the frame that the JavaScript was running in. Eventually we'll deprecate the old three methods in favor of these in the public API.
  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge runJavaScriptAlertPanelWithMessage:]): Call version of the delegate method that has the frame parameter if the delegate supports it. (-[WebBridge runJavaScriptConfirmPanelWithMessage:]): ditto (-[WebBridge runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]): ditto
  • WebView.subproj/WebDefaultUIDelegate.m: (-[WebDefaultUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:]): Now implements the new version of the delegate method that includes the frame parameter. (Still doesn't do anything though.) (-[WebDefaultUIDelegate webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:]): Now implements the new version of the delegate method that includes the frame parameter. (Still doesn't do anything though.) (-[WebDefaultUIDelegate webView:runJavaScriptTextInputPanelWithPrompt:defaultText:initiatedByFrame:]): Now implements the new version of the delegate method that includes the frame parameter. Doesn't actually use the frame parameter here yet though.
5:17 PM Changeset in webkit [11169] by thatcher
  • 2 edits in branches/Safari-1-3-branch/WebKit

Merged fix from TOT to Safari-1-3-branch

2005-09-16 John Sullivan <sullivan@apple.com>

Reviewed by Tim Omernick

  • fixed <rdar://problem/4256557> CrashTracer: 238 crashes in Safari at com.apple.AppKit: -[NSPasteboard setData:forType:] + 188
  • WebView.subproj/WebImageView.m: (-[WebImageView copy:]): declare types to pasteboard before starting to set their data (-[WebImageView writeSelectionToPasteboard:types:]): ditto
5:10 PM Changeset in webkit [11168] by thatcher
  • 2 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-07-29 Geoffrey Garen <ggaren@apple.com>

Fixed:
<rdar://problem/3461547> can't use document.writeln() on windows opened via window.open("about:blank") in same function
<rdar://problem/3725977> A_WINDOW.document.write() content overwritten when first parameter to window.open is provided
<rdar://problem/4101498> SAP: window.write in same call chain as window.open fails to write if URL parameter is provided
<rdar://problem/4179028> document.write in same function as window.open fails to write new content (4056)
http://bugzilla.opendarwin.org/show_bug.cgi?id=4056 document.write in same function as window.open fails to write new content

Reviewed by darin.

Test cases added:

  • manual-tests/resources/write-after-open-popup.html: Added.
  • khtml/khtml_part.cpp: (KHTMLPart::didExplicitOpen): now cancels any pending redirection
5:03 PM Changeset in webkit [11167] by thatcher
  • 2 edits in branches/Safari-1-3-branch/WebKit

Merged fix from TOT to Safari-1-3-branch
Vicki thinks this fixes <rdar://problem/3562729> location.replace with dynamically written frameset doesn't change view (3621)

2005-08-01 Geoffrey Garen <ggaren@apple.com>

Fixed <rdar://problem/3572585> window.open fails if name param = the name of a window just closed in same function

Reviewed by darin.

Test cases added:

  • manual-tests/open-after-close.html: Added.
  • manual-tests/resources/open-after-close-popup.html: Added.
  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge closeWindowSoon]): We now remove a WebView from WebViewSets when the WebView is *scheduled* to close.
4:20 PM Changeset in webkit [11166] by thatcher
  • 9 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-09-19 Beth Dakin <Beth Dakin>

Reviewed by Hyatt

Test cases added: fast/table/overflowHidden.html

Fixed <rdar://problem/3885711> (4047) CSS: Content displays incorrectly in tables with TD style set overflow:hidden
Table cells render correctly with overflow:hidden, :auto, and :scroll specified. Cells now have a layer when overflow is specified.

  • khtml/css/cssstyleselector.cpp: Make sure table cells do not honor position:relative (khtml::CSSStyleSelector::adjustRenderStyle):
  • khtml/rendering/render_block.cpp: Add borderTopExtra() and borderBottomExtra() to various calculations of table cell height so that scroll bars render properly. (khtml::RenderBlock::isPointInScrollbar): (khtml::RenderBlock::nodeAtPoint):
  • khtml/rendering/render_box.cpp: Allow table cells to have overflow, and add borderTopExtra() and borderBottomExtra() to calculation of the clip rect. (RenderBox::setStyle): (RenderBox::getOverflowClipRect):
  • khtml/rendering/render_box.h: Removed definitions of borderTopExtra() and borderBottomExtra() so that they occur at the RenderObject level now.
  • khtml/rendering/render_layer.cpp: Layers must also take borderTopExtra() and borderBottomExtra() into account. (khtml::RenderLayer::updateLayerPosition): (khtml::RenderLayer::paintLayer): (khtml::RenderLayer::hitTestLayer):
  • khtml/rendering/render_object.cpp: Use m_overflowClip instead of hasOverflowClip() for consistency. (RenderObject::requiresLayer):
  • khtml/rendering/render_object.h: Add definitions of borderTopExtra() and borderBottomExtra() to RenderObject level. (khtml::RenderObject::borderTopExtra): (khtml::RenderObject::borderBottomExtra):
  • khtml/rendering/render_table.cpp: Allow table cells to have a layer if overflow is specified. (RenderTableSection::paint): (RenderTableCell::requiresLayer): (RenderTableCell::paint): (RenderTableCell::paintBoxDecorations):
  • layout-tests/fast/table/029-expected.txt: This layout test now paints a layer because it specifies overflow:hidden
  • layout-tests/fast/table/overflowHidden-expected.txt: Added.
  • layout-tests/fast/table/overflowHidden.html: Added.
4:18 PM Changeset in webkit [11165] by thatcher
  • 9 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-09-19 Beth Dakin <Beth Dakin>

Reviewed by Hyatt

Test cases added: fast/table/overflowHidden.html

Fixed <rdar://problem/3885711> (4047) CSS: Content displays incorrectly in tables with TD style set overflow:hidden
Table cells render correctly with overflow:hidden, :auto, and :scroll specified. Cells now have a layer when overflow is specified.

  • khtml/css/cssstyleselector.cpp: Make sure table cells do not honor position:relative (khtml::CSSStyleSelector::adjustRenderStyle):
  • khtml/rendering/render_block.cpp: Add borderTopExtra() and borderBottomExtra() to various calculations of table cell height so that scroll bars render properly. (khtml::RenderBlock::isPointInScrollbar): (khtml::RenderBlock::nodeAtPoint):
  • khtml/rendering/render_box.cpp: Allow table cells to have overflow, and add borderTopExtra() and borderBottomExtra() to calculation of the clip rect. (RenderBox::setStyle): (RenderBox::getOverflowClipRect):
  • khtml/rendering/render_box.h: Removed definitions of borderTopExtra() and borderBottomExtra() so that they occur at the RenderObject level now.
  • khtml/rendering/render_layer.cpp: Layers must also take borderTopExtra() and borderBottomExtra() into account. (khtml::RenderLayer::updateLayerPosition): (khtml::RenderLayer::paintLayer): (khtml::RenderLayer::hitTestLayer):
  • khtml/rendering/render_object.cpp: Use m_overflowClip instead of hasOverflowClip() for consistency. (RenderObject::requiresLayer):
  • khtml/rendering/render_object.h: Add definitions of borderTopExtra() and borderBottomExtra() to RenderObject level. (khtml::RenderObject::borderTopExtra): (khtml::RenderObject::borderBottomExtra):
  • khtml/rendering/render_table.cpp: Allow table cells to have a layer if overflow is specified. (RenderTableSection::paint): (RenderTableCell::requiresLayer): (RenderTableCell::paint): (RenderTableCell::paintBoxDecorations):
  • layout-tests/fast/table/029-expected.txt: This layout test now paints a layer because it specifies overflow:hidden
  • layout-tests/fast/table/overflowHidden-expected.txt: Added.
  • layout-tests/fast/table/overflowHidden.html: Added.
3:37 PM Changeset in webkit [11164] by thatcher
  • 2 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-11-11 Eric Seidel <eseidel@apple.com>

Reviewed by mjs.

Unfortunately both the Render and DOM trees will actually preform
the load on <embed> <object> and <iframe> tags depending on the
circumstances. The <iframe> code path was missing a recursion
check in the render tree. I fixed that. And improved the
recursion checking for all tags.
<rdar://problem/4187169> High CPU usage/hang occurs with Safari after loading cbsnews.com (also at cbs.com)

  • khtml/rendering/render_frames.cpp: (isURLAllowed): added, to prevent recursive loops (mapClassIdToServiceType): added, to simplify code (RenderPartObject::updateWidget): updated, to use above functions.
3:36 PM Changeset in webkit [11163] by thatcher
  • 2 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-11-11 Eric Seidel <eseidel@apple.com>

Reviewed by mjs.

Unfortunately both the Render and DOM trees will actually preform
the load on <embed> <object> and <iframe> tags depending on the
circumstances. The <iframe> code path was missing a recursion
check in the render tree. I fixed that. And improved the
recursion checking for all tags.
<rdar://problem/4187169> High CPU usage/hang occurs with Safari after loading cbsnews.com (also at cbs.com)

  • khtml/rendering/render_frames.cpp: (isURLAllowed): added, to prevent recursive loops (mapClassIdToServiceType): added, to simplify code (RenderPartObject::updateWidget): updated, to use above functions.

Nov 11, 2005:

6:32 PM Changeset in webkit [11162] by eseidel
  • 2 edits in trunk/WebCore

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

Unfortunately both the Render and DOM trees will actually preform
the load on <embed> <object> and <iframe> tags depending on the
circumstances. The <iframe> code path was missing a recursion
check in the render tree. I fixed that. And improved the
recursion checking for all tags.
<rdar://problem/4187169> High CPU usage/hang occurs with Safari after loading cbsnews.com (also at cbs.com)

  • khtml/rendering/render_frames.cpp: (isURLAllowed): added, to prevent recursive loops (mapClassIdToServiceType): added, to simplify code (RenderPartObject::updateWidget): updated, to use above functions.
5:57 PM Changeset in webkit [11161] by thatcher
  • 17 edits
    2 deletes in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-11-03 Adele Peterson <adele@apple.com>

Reviewed by Hyatt.

Clean up of layer scrolling code. Now we can clearly define what to do if a rectangle is fully visible, partially visible, or hidden.
This also fixes a bug with the previous implementation where nested layers/frames would get passed a rect that was too large.

Added fast/overflow/scrollRevealButton.html

  • khtml/rendering/render_layer.h: (khtml::RenderLayer::): Added ScrollBehavior enum, ScrollAlignment struct, and ScrollAlignment static members to describe specific scrolling behaviors depending on how visible the rectangle is. In the future, we can add other statics to easily describe desired behaviors.
  • khtml/rendering/render_layer.cpp: (khtml::): initialize ScrollAlignment static members: alignCenterIfNeeded, alignToEdgeIfNeeded, alignCenterAlways, alignTopAlways, alignBottomAlways (khtml::RenderLayer::scrollRectToVisible): alignCenterIfNeeded is the default behavior for both directions. Pass the original rect (adjusted if scrolling has occurred) when recursively calling this function. (khtml::RenderLayer::getRectToExpose): Adjusted for new ScrollAlignment parameters.
  • khtml/khtml_part.cpp: (KHTMLPart::gotoAnchor): Use the node's rect to determine where to scroll. We used to just use the origin, but this helps us match other browsers better. (KHTMLPart::setActiveNode): Removed scrolling code, since this is now also done in setFocusNode
  • khtml/xml/dom_elementimpl.cpp: (ElementImpl::scrollIntoView): Use new ScrollAlignment values to describe scrolling behavior.
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::nextKeyViewInFrame): Removed scrolling code, since this is now also done in setFocusNode (KWQKHTMLPart::centerSelectionInVisibleArea): Use new ScrollAlignment values to describe scrolling behavior.
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge ensureSelectionVisible]): ditto.
  • kwq/KWQScrollView.h: Removed ensureRectVisible, since we no longer use this.
  • kwq/KWQScrollView.mm: ditto.
  • khtml/khtmlview.cpp: (KHTMLView::doAutoScroll): Removed unnecessary nil checks for enclosingLayer (KHTMLView::focusNextPrevNode): ditto.
5:57 PM Changeset in webkit [11160] by thatcher
  • 19 edits
    2 deletes in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-11-03 Adele Peterson <adele@apple.com>

Reviewed by Hyatt.

Clean up of layer scrolling code. Now we can clearly define what to do if a rectangle is fully visible, partially visible, or hidden.
This also fixes a bug with the previous implementation where nested layers/frames would get passed a rect that was too large.

Added fast/overflow/scrollRevealButton.html

  • khtml/rendering/render_layer.h: (khtml::RenderLayer::): Added ScrollBehavior enum, ScrollAlignment struct, and ScrollAlignment static members to describe specific scrolling behaviors depending on how visible the rectangle is. In the future, we can add other statics to easily describe desired behaviors.
  • khtml/rendering/render_layer.cpp: (khtml::): initialize ScrollAlignment static members: alignCenterIfNeeded, alignToEdgeIfNeeded, alignCenterAlways, alignTopAlways, alignBottomAlways (khtml::RenderLayer::scrollRectToVisible): alignCenterIfNeeded is the default behavior for both directions. Pass the original rect (adjusted if scrolling has occurred) when recursively calling this function. (khtml::RenderLayer::getRectToExpose): Adjusted for new ScrollAlignment parameters.
  • khtml/khtml_part.cpp: (KHTMLPart::gotoAnchor): Use the node's rect to determine where to scroll. We used to just use the origin, but this helps us match other browsers better. (KHTMLPart::setActiveNode): Removed scrolling code, since this is now also done in setFocusNode
  • khtml/xml/dom_elementimpl.cpp: (ElementImpl::scrollIntoView): Use new ScrollAlignment values to describe scrolling behavior.
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::nextKeyViewInFrame): Removed scrolling code, since this is now also done in setFocusNode (KWQKHTMLPart::centerSelectionInVisibleArea): Use new ScrollAlignment values to describe scrolling behavior.
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge ensureSelectionVisible]): ditto.
  • kwq/KWQScrollView.h: Removed ensureRectVisible, since we no longer use this.
  • kwq/KWQScrollView.mm: ditto.
  • khtml/khtmlview.cpp: (KHTMLView::doAutoScroll): Removed unnecessary nil checks for enclosingLayer (KHTMLView::focusNextPrevNode): ditto.
5:31 PM Changeset in webkit [11159] by thatcher
  • 9 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-10-27 David Harrison <harrison@apple.com>

Reviewed by Justin Garcia and Dave Hyatt.

<rdar://problem/4134884> crash trying to forward msg - khtml::RenderBlock::addChildToFlow

Problem was that onunload events were being fired while in the middle of trying to detach, which resulted in updateDocumentsRendering re-attaching the previously detached nodes. Similar problem with load events while attaching.

Solved by eliminating load and unload for object nodes, pre-sending unload before detach, and sending dom mutation and load events after attaching.

Also, added asserts to catch this problem more easily in the future.

Added test:

  • fast/events/event-targets.html Make sure that load and unload events do not fire on certain objects.
  • khtml/ecma/kjs_html.cpp: (KJS::Image::notifyFinished): Use constant string for "load" event name.
  • khtml/ecma/xmlhttprequest.cpp: (KJS::XMLHttpRequest::changeState): Use constant strings for "load" and "readystatechange" event names.
  • khtml/html/html_baseimpl.cpp: (HTMLFrameElementImpl::close): (HTMLFrameElementImpl::willRemove): (HTMLFrameElementImpl::detach): Add willRemove() function.
  • khtml/html/html_baseimpl.h: Add willRemove() function.
  • khtml/html/html_objectimpl.cpp: (DOM::HTMLObjectElementImpl::attach): (DOM::HTMLObjectElementImpl::detach): Stop needlessly sending load and unload events for OBJECT elements.
  • khtml/xml/dom2_traversalimpl.cpp: (DOM::NodeIteratorImpl::notifyBeforeNodeRemoval): Rename local variable from willRemove to removedNode for clarity.
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::DocumentImpl): (DocumentImpl::forbidEventDispatch): (DocumentImpl::allowEventDispatch): (DocumentImpl::eventDispatchForbidden): (DocumentImpl::createEvent): Add mechanism to prevent event dispatch.
  • khtml/xml/dom_docimpl.h:
  • khtml/xml/dom_nodeimpl.cpp: (DOM::NodeImpl::dispatchEvent): (DOM::NodeImpl::dispatchGenericEvent): (DOM::NodeImpl::dispatchHTMLEvent): (DOM::NodeImpl::dispatchWindowEvent): (DOM::NodeImpl::dispatchMouseEvent): (DOM::NodeImpl::dispatchSimulatedMouseEvent): (DOM::NodeImpl::dispatchUIEvent): (DOM::NodeImpl::dispatchSubtreeModifiedEvent): (DOM::NodeImpl::dispatchKeyEvent): (DOM::NodeImpl::dispatchWheelEvent): (DOM::NodeImpl::willRemove): (DOM::ContainerNodeImpl::insertBefore): (DOM::ContainerNodeImpl::replaceChild): (DOM::ContainerNodeImpl::willRemove): (DOM::ContainerNodeImpl::willRemoveChild): (DOM::ContainerNodeImpl::removeChild): (DOM::ContainerNodeImpl::removeChildren): (DOM::ContainerNodeImpl::appendChild): (DOM::ContainerNodeImpl::addChild): (DOM::ContainerNodeImpl::dispatchChildInsertedEvents): (DOM::ContainerNodeImpl::dispatchChildRemovalEvents): Prevent event dispatch during DOM node removals and additions.
  • khtml/xml/dom_nodeimpl.h:
5:24 PM Changeset in webkit [11158] by thatcher
  • 9 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-10-27 David Harrison <harrison@apple.com>

Reviewed by Justin Garcia and Dave Hyatt.

<rdar://problem/4134884> crash trying to forward msg - khtml::RenderBlock::addChildToFlow

Problem was that onunload events were being fired while in the middle of trying to detach, which resulted in updateDocumentsRendering re-attaching the previously detached nodes. Similar problem with load events while attaching.

Solved by eliminating load and unload for object nodes, pre-sending unload before detach, and sending dom mutation and load events after attaching.

Also, added asserts to catch this problem more easily in the future.

Added test:

  • fast/events/event-targets.html Make sure that load and unload events do not fire on certain objects.
  • khtml/ecma/kjs_html.cpp: (KJS::Image::notifyFinished): Use constant string for "load" event name.
  • khtml/ecma/xmlhttprequest.cpp: (KJS::XMLHttpRequest::changeState): Use constant strings for "load" and "readystatechange" event names.
  • khtml/html/html_baseimpl.cpp: (HTMLFrameElementImpl::close): (HTMLFrameElementImpl::willRemove): (HTMLFrameElementImpl::detach): Add willRemove() function.
  • khtml/html/html_baseimpl.h: Add willRemove() function.
  • khtml/html/html_objectimpl.cpp: (DOM::HTMLObjectElementImpl::attach): (DOM::HTMLObjectElementImpl::detach): Stop needlessly sending load and unload events for OBJECT elements.
  • khtml/xml/dom2_traversalimpl.cpp: (DOM::NodeIteratorImpl::notifyBeforeNodeRemoval): Rename local variable from willRemove to removedNode for clarity.
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::DocumentImpl): (DocumentImpl::forbidEventDispatch): (DocumentImpl::allowEventDispatch): (DocumentImpl::eventDispatchForbidden): (DocumentImpl::createEvent): Add mechanism to prevent event dispatch.
  • khtml/xml/dom_docimpl.h:
  • khtml/xml/dom_nodeimpl.cpp: (DOM::NodeImpl::dispatchEvent): (DOM::NodeImpl::dispatchGenericEvent): (DOM::NodeImpl::dispatchHTMLEvent): (DOM::NodeImpl::dispatchWindowEvent): (DOM::NodeImpl::dispatchMouseEvent): (DOM::NodeImpl::dispatchSimulatedMouseEvent): (DOM::NodeImpl::dispatchUIEvent): (DOM::NodeImpl::dispatchSubtreeModifiedEvent): (DOM::NodeImpl::dispatchKeyEvent): (DOM::NodeImpl::dispatchWheelEvent): (DOM::NodeImpl::willRemove): (DOM::ContainerNodeImpl::insertBefore): (DOM::ContainerNodeImpl::replaceChild): (DOM::ContainerNodeImpl::willRemove): (DOM::ContainerNodeImpl::willRemoveChild): (DOM::ContainerNodeImpl::removeChild): (DOM::ContainerNodeImpl::removeChildren): (DOM::ContainerNodeImpl::appendChild): (DOM::ContainerNodeImpl::addChild): (DOM::ContainerNodeImpl::dispatchChildInsertedEvents): (DOM::ContainerNodeImpl::dispatchChildRemovalEvents): Prevent event dispatch during DOM node removals and additions.
  • khtml/xml/dom_nodeimpl.h:
3:35 PM Changeset in webkit [11157] by tomernic
  • 2 edits in trunk/WebCore

Reviewed by Geoff.

<rdar://problem/4202650> crash in QWidget::afterMouseDown selecting "Departure box"; http://www.funjet.com/ (works in Firefox)

This crash was caused by a script which replaced the QWidget for a RenderSelect while the user was clicking on that widget.
RenderSelect has the interesting property that it dynamically recreates its QWidget based on how many items there are and
whether the select is "multiple". Any script which caused a change to those attributes in mouseDown could have triggered
this crash.

The problem was simply that of a stale pointer; KWQTableView and KWQListBoxScrollView both kept a pointer to the associated
QListBox, but only KWQTableView had any logic to clear the pointer when the QListBox was deallocated. Instead of adding
similar functionality to KWQTableViewListBox (this duplicating code), I removed KWQTableViewListBox's "_box" pointer and
changed its -widget method to get the widget via the KWQTableView.

  • kwq/KWQListBox.mm: (QListBox::QListBox): (-[KWQListBoxScrollView widget]): Instead of keeping a pointer to the QListBox, get the QListBox from the KWQTableView, which is always this view's documentView. (-[KWQListBoxScrollView initWithListBox:]): Removed this method, since we can get at the QListBox by simply asking the KWQTableView for it.
1:15 PM Changeset in webkit [11156] by thatcher
  • 2 edits in branches/Safari-2-0-branch

Changes to let build-root work.

1:14 PM Changeset in webkit [12213] by thatcher
  • 2 edits in branches/Safari-2-0-branch/JavaScriptGlue

Upgraded to a native target so build-root works.

12:27 PM Changeset in webkit [11155] by thatcher
  • 1 edit in branches/Safari-1-3-branch/WebCore/khtml/rendering/render_replaced.cpp

Build fix. isVariable should be used on the branch.

12:26 PM Changeset in webkit [11154] by thatcher
  • 1 edit in branches/Safari-2-0-branch/WebCore/khtml/rendering/render_replaced.cpp

Build fix. isVariable should be used on the branch.

11:40 AM Changeset in webkit [11153] by thatcher
  • 2 edits in branches/Safari-1-3-branch/WebCore

Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=4170
and <rdar://problem/3849434> SLIDER: Article length goes from a
subject line, back to the whole article, when decreasing (4170)

Patch by Ricci Adams
Reviewed by Dave Hyatt

  • khtml/rendering/render_flexbox.cpp: (RenderFlexibleBox::layoutVerticalBox): clamp the value
11:38 AM Changeset in webkit [11152] by thatcher
  • 2 edits in branches/Safari-2-0-branch/WebCore

Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=4170
and <rdar://problem/3849434> SLIDER: Article length goes from a
subject line, back to the whole article, when decreasing (4170)

Patch by Ricci Adams
Reviewed by Dave Hyatt

  • khtml/rendering/render_flexbox.cpp: (RenderFlexibleBox::layoutVerticalBox): clamp the value
11:18 AM Changeset in webkit [11151] by thatcher
  • 2 edits in branches/Safari-1-3-branch/JavaScriptCore

Merges fixes from TOT to Safari-1-3-branch

2005-06-20 Anders Carlsson <andersca@mac.com>

Fixed: <http://bugzilla.opendarwin.org/show_bug.cgi?id=3294>

  • kjs/string_object.cpp: (replace): Handle the second argument of replace being a function.
11:09 AM Changeset in webkit [11150] by thatcher
  • 2 edits in branches/Safari-2-0-branch/JavaScriptCore

Merges fixes from TOT to Safari-2-0-branch

2005-06-20 Anders Carlsson <andersca@mac.com>

Fixed: <http://bugzilla.opendarwin.org/show_bug.cgi?id=3294>

  • kjs/string_object.cpp: (replace): Handle the second argument of replace being a function.
10:24 AM Changeset in webkit [11149] by thatcher
  • 3 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-11-11 Beth Dakin <Beth Dakin>

Reviewed by Hyatt.

Fix for <rdar://problem/3952698> Function buttons do not display
properly with Telia Webmail (3488).

Replaced elements with a percentage width used to be given a minimum
width of 0. This caused buttons etc with width:100% to overlap when
they shouldn't. Textareas and text boxes are still given a minimum
width of 0 because they need slightly different behavior to match
WinIE. I filed <rdar://problem/4339518> to track this remaining problem.

  • khtml/rendering/render_form.cpp: (RenderLineEdit::calcMinMaxWidth): Still give text fields a m_minWidth of 0. (RenderTextArea::calcMinMaxWidth): And textareas.
  • khtml/rendering/render_replaced.cpp: (RenderReplaced::calcMinMaxWidth): Remove the check for width().isPercent() when making m_minWidth 0.
10:21 AM Changeset in webkit [11148] by thatcher
  • 3 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-11-11 Beth Dakin <Beth Dakin>

Reviewed by Hyatt.

Fix for <rdar://problem/3952698> Function buttons do not display
properly with Telia Webmail (3488).

Replaced elements with a percentage width used to be given a minimum
width of 0. This caused buttons etc with width:100% to overlap when
they shouldn't. Textareas and text boxes are still given a minimum
width of 0 because they need slightly different behavior to match
WinIE. I filed <rdar://problem/4339518> to track this remaining problem.

  • khtml/rendering/render_form.cpp: (RenderLineEdit::calcMinMaxWidth): Still give text fields a m_minWidth of 0. (RenderTextArea::calcMinMaxWidth): And textareas.
  • khtml/rendering/render_replaced.cpp: (RenderReplaced::calcMinMaxWidth): Remove the check for width().isPercent() when making m_minWidth 0.
9:44 AM Changeset in webkit [11147] by bdakin
  • 4 edits
    4 adds in trunk

Bug #:
Submitted by:
Reviewed by:

8:40 AM Changeset in webkit [11146] by thatcher
  • 17 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-06-22 Kevin Ballard <Lily Ballard>

Reviewed by Darin.

Test cases added:

  • crlf.html
  • text-selection.html Both of these are attached to the bug separately from the patch, because I can't cvs add. Reviewer: feel free to remove this comment and tweak the test cases added lines to reflect wherever you place these cases in the hierarchy
  • khtml/ecma/kjs_html.cpp: (KJS::getInputSelectionStart): (KJS::getInputSelectionEnd): (KJS::KJS::HTMLElement::getValueProperty): (KJS::KJS::HTMLElement::hasProperty): (KJS::KJS::HTMLElementFunction::tryCall): (KJS::HTMLElement::putValue):
  • khtml/ecma/kjs_html.h: (KJS::HTMLElement::):
  • khtml/html/html_formimpl.cpp: (DOM::HTMLInputElementImpl::canHaveSelection): (DOM::HTMLInputElementImpl::selectionStart): (DOM::HTMLInputElementImpl::selectionEnd): (DOM::HTMLInputElementImpl::setSelectionStart): (DOM::HTMLInputElementImpl::setSelectionEnd): (DOM::HTMLInputElementImpl::setSelectionRange): (DOM::HTMLInputElementImpl::setValue): (DOM::HTMLTextAreaElementImpl::selectionStart): (DOM::HTMLTextAreaElementImpl::selectionEnd): (DOM::HTMLTextAreaElementImpl::setSelectionStart): (DOM::HTMLTextAreaElementImpl::setSelectionEnd): (DOM::HTMLTextAreaElementImpl::setSelectionRange): (DOM::HTMLTextAreaElementImpl::setValue):
  • khtml/html/html_formimpl.h:
  • khtml/rendering/render_form.cpp: (RenderLineEdit::selectionStart): (RenderLineEdit::selectionEnd): (RenderLineEdit::setSelectionStart): (RenderLineEdit::setSelectionEnd): (RenderLineEdit::setSelectionRange): (RenderTextArea::selectionStart): (RenderTextArea::selectionEnd): (RenderTextArea::setSelectionStart): (RenderTextArea::setSelectionEnd): (RenderTextArea::select): (RenderTextArea::setSelectionRange):
  • khtml/rendering/render_form.h:
  • kwq/KWQLineEdit.h:
  • kwq/KWQLineEdit.mm: (QLineEdit::setCursorPosition): (QLineEdit::cursorPosition): (QLineEdit::selectAll): (QLineEdit::selectionStart): (QLineEdit::selectedText): (QLineEdit::setSelection):
  • kwq/KWQTextArea.h:
  • kwq/KWQTextArea.mm: (-[KWQTextArea setSelectedRange:]): (-[KWQTextArea selectedRange]): (-[KWQTextArea getCursorPositionAsIndex:inParagraph:]): (RangeOfParagraph):
  • kwq/KWQTextEdit.h:
  • kwq/KWQTextEdit.mm: (QTextEdit::getCursorPosition): (QTextEdit::selectionStart): (QTextEdit::selectionEnd): (QTextEdit::setSelectionStart): (QTextEdit::setSelectionEnd): (QTextEdit::selectAll): (QTextEdit::setSelectionRange):
  • kwq/KWQTextField.h:
  • kwq/KWQTextField.mm: (-[KWQTextFieldController selectedRange]): (-[KWQTextFieldController setSelectedRange:]):
12:17 AM Changeset in webkit [11145] by thatcher
  • 5 edits in branches/Safari-2-0-branch/WebCore

Build fix for merge differences with the TOT version.

Nov 10, 2005:

10:39 PM Changeset in webkit [11144] by thatcher
  • 15 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-06-22 Kevin Ballard <Lily Ballard>

Reviewed by Darin.

Test cases added:

  • crlf.html
  • text-selection.html Both of these are attached to the bug separately from the patch, because I can't cvs add. Reviewer: feel free to remove this comment and tweak the test cases added lines to reflect wherever you place these cases in the hierarchy
  • khtml/ecma/kjs_html.cpp: (KJS::getInputSelectionStart): (KJS::getInputSelectionEnd): (KJS::KJS::HTMLElement::getValueProperty): (KJS::KJS::HTMLElement::hasProperty): (KJS::KJS::HTMLElementFunction::tryCall): (KJS::HTMLElement::putValue):
  • khtml/ecma/kjs_html.h: (KJS::HTMLElement::):
  • khtml/html/html_formimpl.cpp: (DOM::HTMLInputElementImpl::canHaveSelection): (DOM::HTMLInputElementImpl::selectionStart): (DOM::HTMLInputElementImpl::selectionEnd): (DOM::HTMLInputElementImpl::setSelectionStart): (DOM::HTMLInputElementImpl::setSelectionEnd): (DOM::HTMLInputElementImpl::setSelectionRange): (DOM::HTMLInputElementImpl::setValue): (DOM::HTMLTextAreaElementImpl::selectionStart): (DOM::HTMLTextAreaElementImpl::selectionEnd): (DOM::HTMLTextAreaElementImpl::setSelectionStart): (DOM::HTMLTextAreaElementImpl::setSelectionEnd): (DOM::HTMLTextAreaElementImpl::setSelectionRange): (DOM::HTMLTextAreaElementImpl::setValue):
  • khtml/html/html_formimpl.h:
  • khtml/rendering/render_form.cpp: (RenderLineEdit::selectionStart): (RenderLineEdit::selectionEnd): (RenderLineEdit::setSelectionStart): (RenderLineEdit::setSelectionEnd): (RenderLineEdit::setSelectionRange): (RenderTextArea::selectionStart): (RenderTextArea::selectionEnd): (RenderTextArea::setSelectionStart): (RenderTextArea::setSelectionEnd): (RenderTextArea::select): (RenderTextArea::setSelectionRange):
  • khtml/rendering/render_form.h:
  • kwq/KWQLineEdit.h:
  • kwq/KWQLineEdit.mm: (QLineEdit::setCursorPosition): (QLineEdit::cursorPosition): (QLineEdit::selectAll): (QLineEdit::selectionStart): (QLineEdit::selectedText): (QLineEdit::setSelection):
  • kwq/KWQTextArea.h:
  • kwq/KWQTextArea.mm: (-[KWQTextArea setSelectedRange:]): (-[KWQTextArea selectedRange]): (-[KWQTextArea getCursorPositionAsIndex:inParagraph:]): (RangeOfParagraph):
  • kwq/KWQTextEdit.h:
  • kwq/KWQTextEdit.mm: (QTextEdit::getCursorPosition): (QTextEdit::selectionStart): (QTextEdit::selectionEnd): (QTextEdit::setSelectionStart): (QTextEdit::setSelectionEnd): (QTextEdit::selectAll): (QTextEdit::setSelectionRange):
  • kwq/KWQTextField.h:
  • kwq/KWQTextField.mm: (-[KWQTextFieldController selectedRange]): (-[KWQTextFieldController setSelectedRange:]):
10:08 PM Changeset in webkit [11143] by mjs
  • 1 edit
    1 add in trunk/WebKit

Build fix, not reviewed.

  • Plugins.subproj/WebBaseNetscapePluginViewInternal.h: Added.
9:58 PM Changeset in webkit [11142] by thatcher
  • 3 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch
All the changes were applied to khtml/editing/htmlediting.[m|h]
None of the other files exist on the branch, they were split off later.

2005-11-09 David Harrison <harrison@apple.com>

Reviewed by Justin.

<rdar://problem/4313925> Denver Regression: Mail: "TAB+paste+insert before" actually inserts after the pasted text

  • added tab span editing functions in composite_edit_command.cpp
  • called them from insertText, insertLineBreak, and replaceSelection commands
  • also exposed some handy tab span funcs from htmlediting.cpp

Tests added in editing/insertion and editing/pasteboard.

  • khtml/editing/composite_edit_command.cpp: (khtml::CompositeEditCommand::positionOutsideTabSpan): (khtml::CompositeEditCommand::insertNodeAtTabSpanPosition):
  • khtml/editing/composite_edit_command.h:
  • khtml/editing/htmlediting.cpp: (khtml::positionBeforeNode): (khtml::positionAfterNode): (khtml::tabSpanNode): (khtml::positionBeforeTabSpan):
  • khtml/editing/htmlediting.h:
  • khtml/editing/insert_line_break_command.cpp: (khtml::InsertLineBreakCommand::doApply):
  • khtml/editing/insert_text_command.cpp: (khtml::InsertTextCommand::prepareForTextInsertion):
  • khtml/editing/replace_selection_command.cpp: (khtml::ReplaceSelectionCommand::doApply):
9:15 PM Changeset in webkit [12212] by ggaren
  • 3 edits in trunk/JavaScriptGlue

Reviewed by Maciej.

  • Fixed <rdar://problem/4334445> installer crashed on my dual g4 450Mhz after clicking language
  • Reversed backwards NULL check.
  • Inserted guards against NULL fJSUserObject data member.
  • Cleaned up some style.
  • JSUtils.cpp: (KJSValueToCFTypeInternal):
  • UserObjectImp.cpp: (UserObjectImp::~UserObjectImp): (UserObjectImp::callAsFunction): (UserObjectImp::userObjectGetter): (UserObjectImp::getOwnPropertySlot): (UserObjectImp::put): (UserObjectImp::mark):
9:12 PM Changeset in webkit [11141] by thatcher
  • 2 edits in branches/Safari-1-3-branch/WebKit

Merged fix from TOT to Safari-1-3-branch

2005-10-12 Vicki Murley <vicki@apple.com>

Reviewed by Darin.

fix <rdar://problem/4043643> iframe swallows events for overlapping elements (3449)

  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView hitTest:]): (-[WebHTMLView _updateMouseoverWithEvent:]): eliminate _hitViewForEvent hackery and self dependency from this function
9:09 PM Changeset in webkit [11140] by thatcher
  • 2 edits in branches/Safari-2-0-branch/WebKit

Merged fix from TOT to Safari-2-0-branch

2005-10-12 Vicki Murley <vicki@apple.com>

Reviewed by Darin.

fix <rdar://problem/4043643> iframe swallows events for overlapping elements (3449)

  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView hitTest:]): (-[WebHTMLView _updateMouseoverWithEvent:]): eliminate _hitViewForEvent hackery and self dependency from this function
9:06 PM Changeset in webkit [11139] by thatcher
  • 4 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-11-02 Vicki Murley <vicki@apple.com>

Reviewed by Darin.

fix <rdar://problem/4303587> REGRESSION (TOT): Scrollwheel doesn't work on frameset pages (5450)

  • kwq/KWQKHTMLPart.h:
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::wheelEvent): set _currentEvent to the wheel event (KWQKHTMLPart::passWheelEventToChildWidget): New. Pass the event to the child widget, if we haven't already handled the event
  • khtml/khtmlview.cpp: (KHTMLView::viewportWheelEvent): add passWheelEventToChildWidget check, and accept the event if we're passing to the child widget
8:32 PM Changeset in webkit [11138] by thatcher
  • 2 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-11-10 Adele Peterson <adele@apple.com>

Reviewed by Maciej.

  • fixed <rdar://problem/4327363> GAP: tabs not treated as whitespace in option element
  • khtml/rendering/render_form.cpp: (RenderSelect::updateFromElement): call simplifyWhiteSpace() on the itemText or label to collapse whitespace.
8:29 PM Changeset in webkit [11137] by thatcher
  • 2 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-11-10 Adele Peterson <adele@apple.com>

Reviewed by Maciej.

  • fixed <rdar://problem/4327363> GAP: tabs not treated as whitespace in option element
  • khtml/rendering/render_form.cpp: (RenderSelect::updateFromElement): call simplifyWhiteSpace() on the itemText or label to collapse whitespace.
7:16 PM Changeset in webkit [11136] by adele
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by Maciej.

Layout test for <rdar://problem/4327363> GAP: tabs not treated as whitespace in option element

  • fast/forms/option-strip-whitespace-expected.checksum: Added.
  • fast/forms/option-strip-whitespace-expected.png: Added.
  • fast/forms/option-strip-whitespace-expected.txt: Added.
  • fast/forms/option-strip-whitespace.html: Added.

WebCore:

Reviewed by Maciej.

  • fixed <rdar://problem/4327363> GAP: tabs not treated as whitespace in option element

Added

  • fast/forms/option-strip-whitespace.html
  • khtml/rendering/render_form.cpp: (RenderSelect::updateFromElement): call simplifyWhiteSpace() on the itemText or label to collapse whitespace.
6:15 PM Changeset in webkit [11135] by adele
  • 6 edits
    4 adds in trunk

LayoutTests:

Reviewed by Maciej.

Layout test for <rdar://problem/4228997> selecting a new radio button does not automatically clear the previous selected (outside <form> element)

  • fast/forms/radio_checked-expected.checksum: Added.
  • fast/forms/radio_checked-expected.png: Added.
  • fast/forms/radio_checked-expected.txt: Added.
  • fast/forms/radio_checked.html: Added.

WebCore:

Reviewed by Maciej.

-fixed <rdar://problem/4228997> selecting a new radio button does not automatically clear the previous selected (outside <form> element)

Moved the radio button checking code to the document, since we shouldn't need a form to keep track of grouped radio buttons.

Added

  • fast/forms/radio_checked.html
  • khtml/xml/dom_docimpl.h: Added m_selectedRadioButtons (now a two level hash table to account for forms and group names), radioButtonChecked, checkedRadioButtonForGroup, and removeRadioButtonGroup
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::DocumentImpl): initialize m_selectedRadioButtons (DocumentImpl::~DocumentImpl): delete m_selectedRadioButtons, and any of the inner hashtables if necessary (DocumentImpl::radioButtonChecked): moved from HTMLFormElementImpl. (DocumentImpl::checkedRadioButtonForGroup): ditto. (DocumentImpl::removeRadioButtonGroup): ditto.
  • khtml/html/html_formimpl.cpp: (DOM::HTMLFormElementImpl::HTMLFormElementImpl): removed initialization of m_selectedRadioButtons. (DOM::HTMLFormElementImpl::~HTMLFormElementImpl): removed deletion of m_selectedRadioButtons. (DOM::HTMLFormElementImpl::removeFormElement): now calls document's radio button functions (DOM::HTMLInputElementImpl::isKeyboardFocusable): ditto. (DOM::HTMLInputElementImpl::setInputType): ditto. (DOM::HTMLInputElementImpl::parseMappedAttribute): ditto. (DOM::HTMLInputElementImpl::setChecked): ditto. (DOM::HTMLInputElementImpl::preDispatchEventHandler): ditto.
  • khtml/html/html_formimpl.h: removed m_selectedRadioButtons, radioButtonChecked, checkedRadioButtonForGroup, and removeRadioButtonGroup
5:51 PM Changeset in webkit [11134] by thatcher
  • 4 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-09-21 Vicki Murley <vicki@apple.com>

Changes by Romain Brestac, reviewed by Darin.

  • khtml/misc/loader.cpp: (CachedXSLStyleSheet::CachedXSLStyleSheet): (CachedXSLStyleSheet::data):
  • khtml/misc/loader.h:
  • khtml/xsl/xslt_processorimpl.cpp: (DOM::XSLTProcessorImpl::addToResult): (DOM::XSLTProcessorImpl::documentFromXMLDocPtr):
5:45 PM Changeset in webkit [11133] by thatcher
  • 5 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-09-21 Vicki Murley <vicki@apple.com>

Changes by Romain Brestac, reviewed by Darin.

  • khtml/misc/loader.cpp: (CachedXSLStyleSheet::CachedXSLStyleSheet): (CachedXSLStyleSheet::data):
  • khtml/misc/loader.h:
  • khtml/xsl/xslt_processorimpl.cpp: (DOM::XSLTProcessorImpl::addToResult): (DOM::XSLTProcessorImpl::documentFromXMLDocPtr):
5:28 PM Changeset in webkit [11132] by thatcher
  • 1 edit in branches/Safari-2-0-branch/WebCore/kwq/KWQTextArea.mm

Removing an ASSERT since this file doesn't use them.

5:27 PM Changeset in webkit [11131] by thatcher
  • 1 edit in branches/Safari-1-3-branch/WebCore/kwq/KWQTextArea.mm

Removing an ASSERT since this file doesn't use them.

5:18 PM Changeset in webkit [11130] by thatcher
  • 6 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-10-03 Beth Dakin <Beth Dakin>

Reviewed by Darin.

Fix for <rdar://problem/4235722> line-height style settings not reflected in
textarea.

  • khtml/rendering/render_form.cpp: (RenderTextArea::setStyle): Make setStyle call new setLineHeight function and computer correct line height using RenderObject::lineHeight
  • kwq/KWQTextArea.h:
  • kwq/KWQTextArea.mm: (-[KWQTextAreaTextView setFont:]): setFont updates lineHeight if necessary. (-[KWQTextAreaTextView setLineHeight:]): sets the line height (-[NSTextView _KWQ_updateTypingAttributes:forLineHeight:fontHeight:]): Applies the new line height to the paragraph style attributes.
  • kwq/KWQTextEdit.h:
  • kwq/KWQTextEdit.mm: (QTextEdit::setLineHeight): calls setLineHeight in KWQTextAreaTextView
5:17 PM Changeset in webkit [11129] by thatcher
  • 6 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-10-03 Beth Dakin <Beth Dakin>

Reviewed by Darin.

Fix for <rdar://problem/4235722> line-height style settings not reflected in
textarea.

  • khtml/rendering/render_form.cpp: (RenderTextArea::setStyle): Make setStyle call new setLineHeight function and computer correct line height using RenderObject::lineHeight
  • kwq/KWQTextArea.h:
  • kwq/KWQTextArea.mm: (-[KWQTextAreaTextView setFont:]): setFont updates lineHeight if necessary. (-[KWQTextAreaTextView setLineHeight:]): sets the line height (-[NSTextView _KWQ_updateTypingAttributes:forLineHeight:fontHeight:]): Applies the new line height to the paragraph style attributes.
  • kwq/KWQTextEdit.h:
  • kwq/KWQTextEdit.mm: (QTextEdit::setLineHeight): calls setLineHeight in KWQTextAreaTextView
5:15 PM Changeset in webkit [11128] by tomernic
  • 6 edits in trunk/WebKit

Reviewed by Geoff.

<rdar://problem/4237941> Dashboard needs a way to stop Netscape plug-ins from getting null events

  • Plugins.subproj/WebBaseNetscapePluginViewInternal.h: Added. Added WebInternal category, with -stopNullEvents and -restartNullEvents. These methods already exist on WebBaseNetscapePluginView. I am just exposing them to callers elsewhere within WebKit.
  • WebKit.xcodeproj/project.pbxproj: Added WebBaseNetscapePluginViewInternal.h.
  • WebView.subproj/WebFrame.m: (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]): Walks down the web frame hierarchy and calls -_pauseNullEventsForAllNetscapePlugins on each WebHTMLView. (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]): Same as above, but calls -_resumeNullEventsForAllNetscapePlugins.
  • WebView.subproj/WebFramePrivate.h: Declared -_recursive_pauseNullEventsForAllNetscapePlugins and -_recursive_pauseNullEventsForAllNetscapePlugins.
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]): Checks subviews for WebBaseNetscapePluginViews, and calls -stopNullEvents on them. (-[WebHTMLView _resumeNullEventsForAllNetscapePlugins]): Same as above, but calls -restartNullEvents.
  • WebView.subproj/WebHTMLViewInternal.h: Declared -_pauseNullEventsForAllNetscapePlugins and -_resumeNullEventsForAllNetscapePlugins.
4:52 PM Changeset in webkit [11127] by thatcher
  • 1 edit in branches/Safari-1-3-branch/WebCore/khtml/ecma/kjs_html.cpp

Build fix.

4:51 PM Changeset in webkit [11126] by thatcher
  • 1 edit in branches/Safari-2-0-branch/WebCore/khtml/ecma/kjs_html.cpp

Build fix.

4:24 PM Changeset in webkit [11125] by harrison
  • 2 edits in trunk/WebCore

Reviewed by Tim Omernick.

<rdar://problem/3766883> AX: Should be able to tell whether an AXLink has been visited to or not

No test cases because this does not affect layout.

  • kwq/KWQAccObject.mm: (-[KWQAccObject accessibilityAttributeNames]): (-[KWQAccObject accessibilityAttributeValue:]): Added "AXVisited" attribute.
4:23 PM Changeset in webkit [11124] by thatcher
  • 1 edit in branches/Safari-2-0-branch/WebCore/khtml/ecma/kjs_html.cpp

Build fix.

4:21 PM Changeset in webkit [11123] by thatcher
  • 1 edit in branches/Safari-1-3-branch/WebCore/khtml/ecma/kjs_html.cpp

Build fix.

3:51 PM Changeset in webkit [11122] by thatcher
  • 2 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-11-10 Eric Seidel <eseidel@apple.com>

Reviewed by ggaren.

3:50 PM Changeset in webkit [11121] by thatcher
  • 2 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-11-10 Eric Seidel <eseidel@apple.com>

Reviewed by ggaren.

3:40 PM Changeset in webkit [11120] by thatcher
  • 6 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-11-01 Mitz Pettel <opendarwin.org@mitzpettel.com>

Reviewed by Dave Hyatt.
Commited by Tim Hatcher.

Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=5256
Relayout during load causes duplicate plugin part.

This was a problem with <OBJECT>s that contain an <EMBED>, if
layout happened in the middle of the OBJECT but before the EMBED.

No test case added, requires manual testing.

  • khtml/html/html_objectimpl.cpp: (DOM::HTMLObjectElementImpl::HTMLObjectElementImpl): (DOM::HTMLObjectElementImpl::closeRenderer): (DOM::HTMLObjectElementImpl::setComplete):
  • khtml/html/html_objectimpl.h: (DOM::HTMLObjectElementImpl::isComplete):
  • khtml/html/htmlfactory.cpp: (DOM::objectConstructor):
  • khtml/rendering/render_frames.cpp: (RenderPartObject::updateWidget):
3:29 PM Changeset in webkit [11119] by thatcher
  • 3 edits in branches/Safari-2-0-branch/WebKit

Merged fix from TOT to Safari-2-0-branch

2005-07-12 Geoffrey Garen <ggaren@apple.com>

Patch by Mitz Pettel

Added layout test for
http://bugzilla.opendarwin.org/show_bug.cgi?id=3435
Parentheses are backwards in Hebrew text (no bidi mirroring?)

Test is manual because results only reflect visually -
the layout is the same either way.

Test cases added:

  • manual-tests/bidi-parens.html: Added.
3:04 PM Changeset in webkit [11118] by thatcher
  • 3 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-11-09 Dave Hyatt <hyatt@apple.com>

Fixed <rdar://problem/4237617> selects should be in the tab order
in all keyboard modes

Reviewed by Vicki

  • kwq/KWQComboBox.mm: (QComboBox::focusPolicy):
  • kwq/KWQListBox.mm: (QListBox::focusPolicy):
3:02 PM Changeset in webkit [11117] by thatcher
  • 3 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-11-09 Dave Hyatt <hyatt@apple.com>

Fixed <rdar://problem/4237617> selects should be in the tab order
in all keyboard modes

Reviewed by Vicki

  • kwq/KWQComboBox.mm: (QComboBox::focusPolicy):
  • kwq/KWQListBox.mm: (QListBox::focusPolicy):
2:55 PM Changeset in webkit [11116] by eseidel
  • 2 edits in trunk/WebCore

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

2:54 PM Changeset in webkit [11115] by eseidel
  • 1 edit
    3 adds in trunk/LayoutTests

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

  • fast/dom/HTMLImageElement/image-src-absolute-url-expected.txt: Added.
  • fast/dom/HTMLImageElement/image-src-absolute-url.html: Added. http://bugzilla.opendarwin.org/show_bug.cgi?id=3473 <rdar://problem/3787988> Preloaded Image objects .src field is not a fully resolved path (3473)
2:38 PM Changeset in webkit [11114] by eseidel
  • 2 edits in trunk/WebKitTools

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

  • Scripts/build-webkit: Pass through options to xcodebuild
12:28 PM Changeset in webkit [11113] by thatcher
  • 2 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-10-10 Geoffrey Garen <ggaren@apple.com>

  • Fixed <rdar://problem/4245682> Regression: CrashTracer: 923 crashes in Safari at com.apple.WebCore: KJS::Window::clear + 132

Reviewed by mjs.

No test case because this crash isn't reliably reproducible.

  • khtml/ecma/kjs_window.cpp: (KJS::Window::Window): Initialize m_returnValueSlot to 0, so that we know not to write to it until it's explicitly set to a valid address.
12:28 PM Changeset in webkit [11112] by thatcher
  • 2 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-10-10 Geoffrey Garen <ggaren@apple.com>

  • Fixed <rdar://problem/4245682> Regression: CrashTracer: 923 crashes in Safari at com.apple.WebCore: KJS::Window::clear + 132

Reviewed by mjs.

No test case because this crash isn't reliably reproducible.

  • khtml/ecma/kjs_window.cpp: (KJS::Window::Window): Initialize m_returnValueSlot to 0, so that we know not to write to it until it's explicitly set to a valid address.
12:22 PM Changeset in webkit [11111] by thatcher
  • 2 edits in branches/Safari-2-0-branch/WebKit

Merged fix from TOT to Safari-2-0-branch

2005-09-16 John Sullivan <sullivan@apple.com>

Reviewed by Tim Omernick

  • fixed <rdar://problem/4256557> CrashTracer: 238 crashes in Safari at com.apple.AppKit: -[NSPasteboard setData:forType:] + 188
  • WebView.subproj/WebImageView.m: (-[WebImageView copy:]): declare types to pasteboard before starting to set their data (-[WebImageView writeSelectionToPasteboard:types:]): ditto
10:38 AM Changeset in webkit [11110] by thatcher
  • 2 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-10-03 Justin Garcia <justin.garcia@apple.com>

Reviewed by darin

<rdar://problem/4060947> Safari crashes trying to save PDF file as web archive (NULL KHTMLPart)

  • kwq/WebCoreBridge.mm: (+[WebCoreBridge bridgeForDOMDocument:]): Added a check for a null part.
10:22 AM Changeset in webkit [11109] by thatcher
  • 6 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-10-28 Beth Dakin <Beth Dakin>

Reviewed by John

Fix for <rdar://problem/4098083> REGRESSION (125-312): crash
in [KWQTableView resignFirstResponder] selecting from JS menu
(car4you.at, etc.)

Since it is possible that a render widget's eventFilterObject
has been destroyed even though the render widget is still ref-ed,
we need to nil-check the eventFilterObject before we use it to get
the eventFilter.

  • kwq/KWQComboBox.mm: (-[KWQPopUpButton becomeFirstResponder]): Added nil check. (-[KWQPopUpButton resignFirstResponder]): Added nil check.
  • kwq/KWQListBox.mm: (-[KWQTableView becomeFirstResponder]): Added nil check. (-[KWQTableView resignFirstResponder]): Added nil check.
  • kwq/KWQTextArea.mm: (-[KWQTextAreaTextView becomeFirstResponder]): Added nil check. (-[KWQTextAreaTextView resignFirstResponder]): Added nil check.
  • kwq/KWQTextField.mm: (-[KWQTextFieldController setHasFocus:]): Added nil check.
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge elementForView:]): Added nil check.
9:36 AM Changeset in webkit [11108] by thatcher
  • 2 edits in branches/Safari-2-0-branch/JavaScriptCore

Merges fixes from Ti-2005-009-branch to Safari-2-0-branch

2005-11-04 Geoffrey Garen <ggaren@apple.com>

Reviewed by darin.

  • Fixed <rdar://problem/4317701> *SecUpd: Tiger* PCRE heap overflow in Safari JavaScriptCore
  • pcre/pcre.c: (read_repeat_counts): We now return an error for negative repeat counts in regular expressions. This matches Firefox exactly, and Win IE by effect (Win IE doesn't return an error, but it does refuse to match anything).
9:26 AM Changeset in webkit [11107] by thatcher
  • 2 edits in branches/Safari-2-0-branch/JavaScriptCore

Reviewed by Darin.

  • Fixed <rdar://problem/4323773> REGRESSION (412.2-416.12): xxx appears on page due to JS regexp with char > 255 (5597) (tiddlywiki.com)

Previously, we fixed a buffer overflow by returning an error when
compiling character classes with characters > 255. But that broke
the internet.

Plan B here is to work around such classes, skipping single characters

255, skipping character ranges beginning > 255, and truncating

character ranges at 255.

I removed the early returns we added and the early returns in the
original library. Now, funky expressions compile normally, tweaked
by our special rules.

I also merged the UTF8 and UTF16 checks for out of range characters.
I remember we kept them separate before because we were purist about
marking off our code changes inside UTF16 #ifdefs. Since this patch
applies equally to UTF8 and UTF16, we've already lost that innocence,
so why not have a little fun?

  • ChangeLog:
  • pcre/pcre.c: (compile_branch):
  • tests/mozilla/jsDriver.pl: Oh, by the way, I modified this to look inside of $SYMROOTS/Development. Not perfect, but certainly better than $SYMROOTS/, which is always wrong with XCode 2.1.

Nov 9, 2005:

3:05 PM Changeset in webkit [11106] by thatcher
  • 2 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-09-21 Vicki Murley <vicki@apple.com>

Reviewed by Darin.

  • fix these bugs <rdar://problem/3579812> HTMLTableElement.insertRow(n) inserts row at the beginning of the table (4043) <rdar://problem/3711188> HTMLTableElement.insertRow() doesn't respect passed index
  • khtml/html/html_tableimpl.cpp: (DOM::HTMLTableElementImpl::insertRow): if the index is the same as the number of rows in the section, we should append

Update test results for /fast/dynamic/013.html. In the old version the the rows
and cells were children of the first table section, a tfoot. They are now children
of the second table section, a tbody. Our rendering now matches Gecko and Win IE
(according to yusufg on #webkit, comparing with 013-expected.png) for this case.

  • layout-tests/fast/dynamic/013-expected.checksum:
  • layout-tests/fast/dynamic/013-expected.png:
  • layout-tests/fast/dynamic/013-expected.txt:

Test cases added:

  • layout-tests/fast/dynamic/014-expected.checksum: Added.
  • layout-tests/fast/dynamic/014-expected.png: Added.
  • layout-tests/fast/dynamic/014-expected.txt: Added.
  • layout-tests/fast/dynamic/014.html: Added.
  • layout-tests/fast/dynamic/015-expected.checksum: Added.
  • layout-tests/fast/dynamic/015-expected.png: Added.
  • layout-tests/fast/dynamic/015-expected.txt: Added.
  • layout-tests/fast/dynamic/015.html: Added.
3:05 PM Changeset in webkit [11105] by hyatt
  • 4 edits in trunk/WebCore

Fix hit testing of relative positioned inline flows inside
clipped overflow blocks so that they aren't mistakenly included
in hit testing.

Reviewed by Beth.

  • khtml/rendering/render_layer.cpp: (khtml::RenderLayer::containsPoint):
  • kwq/KWQComboBox.mm: (QComboBox::focusPolicy):
  • kwq/KWQListBox.mm: (QListBox::focusPolicy):
3:00 PM Changeset in webkit [11104] by thatcher
  • 2 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-09-21 Vicki Murley <vicki@apple.com>

Reviewed by Darin.

  • fix these bugs <rdar://problem/3579812> HTMLTableElement.insertRow(n) inserts row at the beginning of the table (4043) <rdar://problem/3711188> HTMLTableElement.insertRow() doesn't respect passed index
  • khtml/html/html_tableimpl.cpp: (DOM::HTMLTableElementImpl::insertRow): if the index is the same as the number of rows in the section, we should append

Update test results for /fast/dynamic/013.html. In the old version the the rows
and cells were children of the first table section, a tfoot. They are now children
of the second table section, a tbody. Our rendering now matches Gecko and Win IE
(according to yusufg on #webkit, comparing with 013-expected.png) for this case.

  • layout-tests/fast/dynamic/013-expected.checksum:
  • layout-tests/fast/dynamic/013-expected.png:
  • layout-tests/fast/dynamic/013-expected.txt:

Test cases added:

  • layout-tests/fast/dynamic/014-expected.checksum: Added.
  • layout-tests/fast/dynamic/014-expected.png: Added.
  • layout-tests/fast/dynamic/014-expected.txt: Added.
  • layout-tests/fast/dynamic/014.html: Added.
  • layout-tests/fast/dynamic/015-expected.checksum: Added.
  • layout-tests/fast/dynamic/015-expected.png: Added.
  • layout-tests/fast/dynamic/015-expected.txt: Added.
  • layout-tests/fast/dynamic/015.html: Added.
2:51 PM Changeset in webkit [11103] by thatcher
  • 2 edits in branches/Safari-1-3-branch/WebCore

Merged fix from TOT to Safari-1-3-branch

2005-09-16 Tim Omernick <tomernick@apple.com>

Reviewed by Dave Hyatt. Test case reviewed by Vicki Murley.

<rdar://problem/3572507> Flash in div with display:none style will not redraw when style changed to display:block (3479)

Test cases added:

  • manual-tests/show-hide-object.html: Added.
  • manual-tests/resources/spinbox.swf: Added.
  • khtml/html/html_objectimpl.cpp: (DOM::HTMLObjectElementImpl::detach): Set needWidgetUpdate to true so that the widget is updated on the next attach().
2:37 PM Changeset in webkit [11102] by thatcher
  • 2 edits in branches/Safari-2-0-branch/WebCore

Merged fix from TOT to Safari-2-0-branch

2005-09-16 Tim Omernick <tomernick@apple.com>

Reviewed by Dave Hyatt. Test case reviewed by Vicki Murley.

<rdar://problem/3572507> Flash in div with display:none style will not redraw when style changed to display:block (3479)

Test cases added:

  • manual-tests/show-hide-object.html: Added.
  • manual-tests/resources/spinbox.swf: Added.
  • khtml/html/html_objectimpl.cpp: (DOM::HTMLObjectElementImpl::detach): Set needWidgetUpdate to true so that the widget is updated on the next attach().
11:57 AM Changeset in webkit [11101] by harrison
  • 1 edit
    36 adds in trunk/LayoutTests

Layout tests for <rdar://problem/4313925>
Denver Regression: Mail: "TAB+paste+insert before" actually inserts after the pasted text

  • editing/inserting/insert-br-at-tabspan-001-expected.checksum: Added.
  • editing/inserting/insert-br-at-tabspan-001-expected.png: Added.
  • editing/inserting/insert-br-at-tabspan-001-expected.txt: Added.
  • editing/inserting/insert-br-at-tabspan-001.html: Added.
  • editing/inserting/insert-br-at-tabspan-002-expected.checksum: Added.
  • editing/inserting/insert-br-at-tabspan-002-expected.png: Added.
  • editing/inserting/insert-br-at-tabspan-002-expected.txt: Added.
  • editing/inserting/insert-br-at-tabspan-002.html: Added.
  • editing/inserting/insert-br-at-tabspan-003-expected.checksum: Added.
  • editing/inserting/insert-br-at-tabspan-003-expected.png: Added.
  • editing/inserting/insert-br-at-tabspan-003-expected.txt: Added.
  • editing/inserting/insert-br-at-tabspan-003.html: Added.
  • editing/inserting/insert-text-at-tabspan-001-expected.checksum: Added.
  • editing/inserting/insert-text-at-tabspan-001-expected.png: Added.
  • editing/inserting/insert-text-at-tabspan-001-expected.txt: Added.
  • editing/inserting/insert-text-at-tabspan-001.html: Added.
  • editing/inserting/insert-text-at-tabspan-002-expected.checksum: Added.
  • editing/inserting/insert-text-at-tabspan-002-expected.png: Added.
  • editing/inserting/insert-text-at-tabspan-002-expected.txt: Added.
  • editing/inserting/insert-text-at-tabspan-002.html: Added.
  • editing/inserting/insert-text-at-tabspan-003-expected.checksum: Added.
  • editing/inserting/insert-text-at-tabspan-003-expected.png: Added.
  • editing/inserting/insert-text-at-tabspan-003-expected.txt: Added.
  • editing/inserting/insert-text-at-tabspan-003.html: Added.
  • editing/pasteboard/paste-text-at-tabspan-001-expected.checksum: Added.
  • editing/pasteboard/paste-text-at-tabspan-001-expected.png: Added.
  • editing/pasteboard/paste-text-at-tabspan-001-expected.txt: Added.
  • editing/pasteboard/paste-text-at-tabspan-001.html: Added.
  • editing/pasteboard/paste-text-at-tabspan-002-expected.checksum: Added.
  • editing/pasteboard/paste-text-at-tabspan-002-expected.png: Added.
  • editing/pasteboard/paste-text-at-tabspan-002-expected.txt: Added.
  • editing/pasteboard/paste-text-at-tabspan-002.html: Added.
  • editing/pasteboard/paste-text-at-tabspan-003-expected.checksum: Added.
  • editing/pasteboard/paste-text-at-tabspan-003-expected.png: Added.
  • editing/pasteboard/paste-text-at-tabspan-003-expected.txt: Added.
  • editing/pasteboard/paste-text-at-tabspan-003.html: Added.
11:56 AM Changeset in webkit [11100] by harrison
  • 8 edits in trunk/WebCore

Reviewed by Justin.

<rdar://problem/4313925> Denver Regression: Mail: "TAB+paste+insert before" actually inserts after the pasted text

  • added tab span editing functions in composite_edit_command.cpp
  • called them from insertText, insertLineBreak, and replaceSelection commands
  • also exposed some handy tab span funcs from htmlediting.cpp

Tests added in editing/insertion and editing/pasteboard.

  • khtml/editing/composite_edit_command.cpp: (khtml::CompositeEditCommand::positionOutsideTabSpan): (khtml::CompositeEditCommand::insertNodeAtTabSpanPosition):
  • khtml/editing/composite_edit_command.h:
  • khtml/editing/htmlediting.cpp: (khtml::positionBeforeNode): (khtml::positionAfterNode): (khtml::tabSpanNode): (khtml::positionBeforeTabSpan):
  • khtml/editing/htmlediting.h:
  • khtml/editing/insert_line_break_command.cpp: (khtml::InsertLineBreakCommand::doApply):
  • khtml/editing/insert_text_command.cpp: (khtml::InsertTextCommand::prepareForTextInsertion):
  • khtml/editing/replace_selection_command.cpp: (khtml::ReplaceSelectionCommand::doApply):
Note: See TracTimeline for information about the timeline view.