Timeline


and

04/23/07:

23:37 Changeset [21063] by ggaren
  • 1 edit
    1 move in trunk/LayoutTests

Rubber Stamped by Mark Rowe.


Disabling this test because it hangs all the time.
(http://bugs.webkit.org/show_bug.cgi?id=13370)

  • http/tests/plugins/npapi-response-headers.html: Removed.
23:13 Changeset [21062] by bdakin
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Adam.

Fix for <rdar://problem/5155507> REGRESSION: Crash in
RenderLayer::setHasVisibleContent()

  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::appendChildNode): Must null-check enclosingLayer() (WebCore::RenderContainer::insertChildNode): Same.

LayoutTests:

Reviewed by Adam.

Test for <rdar://problem/5155507> REGRESSION: Crash in
RenderLayer::setHasVisibleContent()

  • fast/css-generated-content/visibleContentHiddenParent-expected.checksum: Added.
  • fast/css-generated-content/visibleContentHiddenParent-expected.png: Added.
  • fast/css-generated-content/visibleContentHiddenParent-expected.txt: Added.
  • fast/css-generated-content/visibleContentHiddenParent.html: Added.
21:55 Changeset [21061] by hyatt
  • 7 edits in trunk/WebCore

Fix for bug 13337, deep tag nesting is slow. This patch fixes a number of O(n2) issues as well as making
a few performance optimizations based off profiling. Details next to each change below.

Note that calcMinMaxWidth being slow is a critical separate piece of this puzzle. Until bug 13430 is fixed,
render tree construction will be O(n2) (because of the minmaxrecalc bit setting being stupid enough to
always crawl to the root of the tree) and calcMinMaxWidth will waste tons of unnecessary time.

When these fixes are combined with the calcMinMaxWidth fix in 13430, the penguin page specified in 13337
loads in < 2 seconds (down from an infinite hang before).

Reviewed by aroben, ollie

  • css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::locateCousinList): (WebCore::CSSStyleSelector::locateSharedStyle):
  • css/csstyleselector.h Cap the depth of cousin searching on the shared style optimization. We will be willing to (at most) crawl up the tree the same distance that we were willing to crawl backwards through sibling lists. Leaving it uncapped resulted in pathological style resolution for the case of an infinitely nested chain of singletons.
  • html/HTMLParser.cpp: (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): (WebCore::HTMLParser::popBlock): Cap the number of residual style tags that we are willing to reopen. We will reopen at most 200 residual style tags, since the assumption is that once that many tags are on the stack, you're probably already every kind of bold, italic, and color of the rainbow.
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::absoluteClippedOverflowRect): absoluteClippedOverflowRect can just return the empty rect when the inline flow has no line boxes instead of doing a bunch of work (and calling containingBlock()) for no reason.
  • rendering/RenderInline.cpp: (WebCore::RenderInline::addChildToFlow): Remove the useless containingBlock() check from addChildToFlow. Obviously every inline's containing block is a block flow.
  • rendering/bidi.cpp: (WebCore::inlineWidth): (WebCore::RenderBlock::createLineBoxes): Cap the depth of individual line trees to 200. Again the assumption is that once that many open inlines exist all on one line that there's no way this would be intentional.
19:47 Changeset [21060] by aroben
  • 2 edits in trunk/WebKitTools

Reviewed by Mark Rowe and David Kilzer.

  • Scripts/build-webkit: Print the path to the run-safari script when finished building so that users can copy-and-paste the command to execute it.
18:27 Changeset [21059] by hyatt
  • 2 edits in trunk/WebCore

Fix for bug 13430, cap inline splitting for continuations to a maximum depth of 200.

Reviewed by olliej, antti

  • rendering/RenderInline.cpp: (WebCore::RenderInline::splitInlines):
17:59 Changeset [21058] by bdash
  • 2 edits in trunk/WebCore

2007-04-23 Alp Toker <alp@atoker.com>

Gdk build fix. Track EventHandler change made in r21042.

  • page/gdk/EventHandlerGdk.cpp: (WebCore::EventHandler::passWheelEventToWidget): (WebCore::EventHandler::passMousePressEventToScrollbar):
17:37 Changeset [21057] by thatcher
  • 2 edits in trunk/WebCore

Reviewed by Darin.

<rdar://problem/5024945> -[DOMRange lineBoxRects] doesn't include start and end nodes that have offsets

  • rendering/RenderText.cpp: (WebCore::RenderText::addLineBoxRects): Use min(box->len(), end) instead of special-casing UINT_MAX.
17:31 Changeset [21056] by adele
  • 2 edits in trunk/WebCore

Fix by Darin, reviewed by me.

Fix for REGRESSION: Can't upload attachments to bugzilla since the file upload control is reset immediately
http://bugs.webkit.org/show_bug.cgi?id=13461

  • rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::updateFromElement): Only clear the FileChooser if the value is empty *and* (not or) the filename is empty.
16:48 Changeset [21055] by adele
  • 2 edits in trunk/WebCore

Reviewed by Adam.

Updated fix for <rdar://problem/4887426> Set a reasonable maximum number of recent searches for search menu

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::parseMappedAttribute): Use a const int maxSavedResults instead of magic number 256.
16:45 Changeset [21054] by thatcher
  • 1 edit in trunk/WebCore/ChangeLog

Fix the bug number for my last commit.

16:42 Changeset [21053] by thatcher
  • 2 edits in trunk/WebCore

Reviewed by Hyatt.

<rdar://problem/5084400> [DOMRange lineBoxRects] returns an empty array when the DOM nodes have just been created

Don't call selectionRect with a -1 end position, instead use the text length.

  • rendering/RenderText.cpp: (WebCore::RenderText::addLineBoxRects):
16:27 Changeset [21052] by adele
  • 4 edits in trunk

WebCore:

Fixed and reviewed by Darin, Adele, and Oliver.

WebCore part of fix for <rdar://problem/5107538> REGRESSION: Page scroll when selecting characters from inline input candidate window by arrow buttons
http://bugs.webkit.org/show_bug.cgi?id=13263

  • dom/KeyboardEvent.h: (WebCore::KeypressCommand::isEmpty): Added helper method.

WebKit:

Fixed and reviewed by Darin, Adele, and Oliver.

WebKit part of fix for <rdar://problem/5107538> REGRESSION: Page scroll when selecting characters from inline input candidate window by arrow buttons
http://bugs.webkit.org/show_bug.cgi?id=13263

  • WebView/WebHTMLView.mm: (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): If we have no command after calling interpretKeyEvents, we assume the input method handled the key. (-[WebHTMLView doCommandBySelector:]): Add noop: to the command vector, but then when actually performing actions, ignore it.
15:56 Changeset [23331] by aroben
  • 2 edits in branches/WindowsMerge/WebCore

Build fix.

  • page/win/EventHandlerWin.cpp: Removed passWheelEventToSubframe.
15:51 Changeset [21051] by pyeh
  • 2 edits in trunk/WebCore

<rdar://problem/4938364> Attachment button has different string length between attributeStringForRange and stringForRange

<rdar://problem/4939536> AXLengthForTextMarkerRange returns zero length for the range of an attachment


Reviewed by Darin.

  • bridge/mac/WebCoreAXObject.mm: (nsStringForReplacedNode): Added helper routine to check if the replaced node should be exposed as an attachment character in string representation. Added an additional check to make sure that text node is not considered a replaced node. Removed helper routine AXAttributedStringAppendReplaced since half of the functions are now taken care by nsStringForReplacedNode. The other half is directly used in the doAXAttributedStringForTextMarkerRange method. (-[WebCoreAXObject doAXStringForTextMarkerRange:]): (-[WebCoreAXObject doAXAttributedStringForTextMarkerRange:]): Both string and AttrbributedString methods will now utilize the helper routine nsStringForReplacedNode to return replacement characters for range occupied by attachment.
15:14 Changeset [21050] by mjs
  • 2 edits in trunk/JavaScriptCore

Build fix, not reviewed.

  • kjs/collector.h: Fix struct/class mismatch.
15:10 Changeset [21049] by adele
  • 2 edits in trunk/WebCore

Reviewed by Oliver.

Fix for <rdar://problem/4887426> Set a reasonable maximum number of recent searches for search menu

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::parseMappedAttribute): Enforce a maximum of 256 saved results for the search field.
15:08 Changeset [21048] by mjs
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin.

  • raise ALLOCATIONS_PER_COLLECTION to 4000, for 3.7% iBench speed improvement


Now that the cell size is smaller and the block size is bigger, we can fit 4000 objects in
the two spare cells the collector is willing to keep around, so collect a bit less often.


  • kjs/collector.cpp:
14:54 Changeset [21047] by mjs
  • 4 edits in trunk/JavaScriptCore

Reviewed by Darin and Geoff.


  • move mark and collectOnMainThreadOnly bits into separate bitmaps


This saves 4 bytes per cell, allowing shrink of cell size to 32,
which leads to a .8% speed improvement on iBench.


This is only feasible because of all the previous changes on the branch.

  • kjs/collector.cpp: (KJS::allocateBlock): Adjust for some renames of constants. (KJS::Collector::markStackObjectsConservatively): Now that cells are 32 bytes (64 bytes on 64-bit) the cell alignment check can be made much more strict, and also obsoletes the need for a % sizeof(CollectorCell) check. Also, we can mask off the low bits of the pointer to have a potential block pointer to look for. (KJS::Collector::collectOnMainThreadOnly): Use bitmap. (KJS::Collector::markMainThreadOnlyObjects): Use bitmap. (KJS::Collector::collect): When sweeping, use bitmaps directly to find mark bits.
  • kjs/collector.h: (KJS::): Move needed constants and type declarations here. (KJS::CollectorBitmap::get): Bit twiddling to get a bitmap value. (KJS::CollectorBitmap::set): Bit twiddling to set a bitmap bit to true. (KJS::CollectorBitmap::clear): Bit twiddling to set a bitmap bit to false. (KJS::CollectorBitmap::clearAll): Clear whole bitmap at one go. (KJS::Collector::cellBlock): New operation, compute the block pointer for a cell by masking off low bits. (KJS::Collector::cellOffset): New operation, compute the cell offset for a cell by masking off high bits and dividing (actually a shift). (KJS::Collector::isCellMarked): Check mark bit in bitmap (KJS::Collector::markCell): Set mark bit in bitmap.
  • kjs/value.h: (KJS::JSCell::JSCell): No more bits. (KJS::JSCell::marked): Let collector handle it. (KJS::JSCell::mark): Let collector handle it.
14:24 Changeset [21046] by adele
  • 3 edits in trunk/LayoutTests

Reviewed by Adam.

Updating test from last checkin to include test case for select with and without a form element.

  • fast/events/onchange-select-popup-expected.txt:
  • fast/events/onchange-select-popup.html:
14:15 Changeset [21045] by adele
  • 11 edits
    2 adds in trunk

LayoutTests:

Reviewed by Hyatt & Adam.

Tests for <rdar://problem/4807799> REGRESSION: calling select() in onSearch handler doesn't work if you hit enter to trigger the event

  • fast/events/onchange-passwordfield-expected.txt:
  • fast/events/onchange-passwordfield.html:
  • fast/events/onchange-searchfield-expected.txt:
  • fast/events/onchange-searchfield.html:
  • fast/events/onchange-select-popup-expected.txt: Added.
  • fast/events/onchange-select-popup.html: Added.
  • fast/events/onchange-textfield-expected.txt:
  • fast/events/onchange-textfield.html:
  • fast/forms/onchange-enter-submit-expected.txt:

WebCore:

Reviewed by Hyatt & Adam.

Fix for <rdar://problem/4807799> REGRESSION: calling select() in onSearch handler doesn't work if you hit enter to trigger the event
Fix for <rdar://problem/5153970> onChange doesn't fire when focusing a popup, using type-ahead to select, and leaving

This previous behavior to blur controls when hitting enter was added to achieve the result of firing the change event. Firefox does not
fire blur- just the change event, so this fix will match Firefox behavior.

This also fixes a bug where we didn't fire the change event when using type-ahead selection with the popup menu.

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler): Fire change event instead of blur event when hitting enter.
  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::dispatchFocusEvent): Now that we have type-ahead selection for popups that can be opened with the arrow keys, we should always save the last selection when a popup gets focus, so it can be compared to the current selection when it loses focus. (WebCore::HTMLSelectElement::dispatchBlurEvent): For the same reasons as above, we should fire onChange for all popups on blur.

(WebCore::HTMLSelectElement::menuListDefaultEventHandler): Fire change event instead of blur event when hitting enter. Removed an unnecessary

check for form() before calling menuListOnChange(). Removed an unnecessary check for renderer() and usesMenuList().

(WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Remove call to blur. Since list boxes fire the change event immediately after an

action is taken, we don't need to fire anything after hitting enter.

(WebCore::HTMLSelectElement::menuListOnChange): Reset m_lastOnChangeIndex after firing the change event.

14:07 Changeset [21044] by thatcher
  • 2 edits in trunk/WebKit

Reviewed by Darin.

<rdar://problem/5124364> IB3 crashes when loading a nib containing a WebView that has a WebHTMLView encoded inside

Since WebView's initWithCoder throws away all the decoded subviews, the WebHTMLView gets dealoced while it has a nil _private pointer.
Checking for a nil _private in WehHTMLView's close fixes this crash. No need to implement a full initWithCoder for WebHTMLView since
it will be thrown away by the WebView anyway.

  • WebView/WebHTMLView.mm: (-[WebHTMLView close]): Return earily if _priviate is nil. (-[WebHTMLView initWithFrame:]): Unrelated change that removes an AppKit version check that predates Tiger.
12:19 Changeset [21043] by zbujtas
  • 2 edits in S60/trunk/WebKit

yadavall, reviewed by <zbujtas@gmail.com>

DESC: Fix ROM image iby file
http://bugs.webkit.org/show_bug.cgi?id=13419

  • rom/webkit.iby:
10:07 Changeset [21042] by andersca
  • 4 edits in trunk/WebCore

Reviewed by Ada.

<rdar://problem/5061022>
REGRESSION: Acrobat 8 plug-in fails to scroll with trackpad two-finger scroll or mouse wheel (12995)


Pass wheel events to all widgets.


  • page/EventHandler.cpp: (WebCore::EventHandler::handleWheelEvent):
  • page/EventHandler.h:
  • page/mac/EventHandlerMac.mm: (WebCore::EventHandler::passWheelEventToWidget):
08:32 Changeset [21041] by bdash
  • 2 edits in trunk/WebCore

2007-04-23 Alp Toker <alp@atoker.com>

Reviewed by Mark.

Save and restore the context state when beginning and ending a transparency layer.

  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::beginTransparencyLayer): (WebCore::GraphicsContext::endTransparencyLayer):
08:01 Changeset [21040] by thatcher
  • 2 edits in trunk/WebKit

Reviewed by Mark Rowe.

Remove the "No Selection" message after leaving search mode.
This was a regression caused by the inspector refresh.

07:45 Changeset [21039] by bdash
  • 1 copy in tags/Safari-4522.6.2/JavaScriptGlue

New tag (part 2).

07:45 Changeset [21038] by bdash
  • 1 add in tags/Safari-4522.6.2

New tag (part 1).

07:43 Changeset [21037] by bdash
  • 1 edit in branches/Safari-522/JavaScriptGlue/Configurations/Version.xcconfig

Versioning.

07:42 Changeset [21036] by bdash
  • 2 edits in branches/Safari-522/JavaScriptGlue

Merge r20462.

07:16 Changeset [21035] by bdash
  • 2 edits in trunk/WebCore

2007-04-23 Alp Toker <alp@atoker.com>

Reviewed by Mark.

Further implementation and checks. The opacity layer code is not so beautiful
but gets the job done with fewer complications than maintaining our own stack.

  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::translate): (WebCore::GraphicsContext::setPlatformStrokeThickness): (WebCore::GraphicsContext::beginTransparencyLayer): (WebCore::GraphicsContext::endTransparencyLayer): (WebCore::GraphicsContext::setCompositeOperation): (WebCore::GraphicsContext::rotate): (WebCore::GraphicsContext::scale):
07:14 Changeset [21034] by andersca
  • 2 edits in trunk/JavaScriptCore

Build fix.


  • kjs/regexp_object.h: RegExpObjectImpPrivate is a struct, not a class.
06:33 Changeset [21033] by yongjzha
  • 12 edits in S60/trunk/WebKit

winship, reviewed by Yongjun

DESC: move DialogMimeFileSelectLC from DialogProvider API to MWidgetCallBack
http://bugs.webkit.org/show_bug.cgi?id=13406

  • BrowserControl/inc/BrCtl.h:
  • BrowserControl/inc/BrCtlDefs.h: (TBrCtlDefs::):
  • BrowserControl/inc/BrCtlDialogsProvider.h: (TBrCtlSelectOptionData::TBrCtlSelectOptionData): (TBrCtlImageCarrier::TBrCtlImageCarrier):
  • BrowserControl/inc/BrCtlInterface.h:
  • BrowserControl/src/BrCtl.cpp: (CBrCtl::~CBrCtl): (CBrCtl::HandleCommandL): (CBrCtl::CreateWidgetExtensionL):
  • BrowserCore/Formcontrols/inc/FControlFileInputSkin.h:
  • BrowserCore/Formcontrols/src/FControlFileInputSkin.cpp: (TFileDialogWrapper::DialogMimeFileSelectLC): (CFormFileInputSkin::SetAcceptedMimeType): (CFormFileInputSkin::ActivateL):
  • BrowserView/inc/WidgetExtension.h:
  • group/BWINSCW/WebKit_30U.def:
  • group/EABI/browserengineU.def:
  • group/formcontrols.mmpi:
03:28 Changeset [21032] by mjs
  • 7 edits in trunk/JavaScriptCore

Reviewed by Darin.


  • shrink FunctionImp / DeclaredFunctionImp by 4 bytes, by moving parameter list to function body


I reconciled this with a similar change in KDE kjs by Maks Orlovich <maksim@kde.org>.

  • kjs/function.cpp: (KJS::FunctionImp::callAsFunction): (KJS::FunctionImp::passInParameters): (KJS::FunctionImp::lengthGetter): (KJS::FunctionImp::getParameterName):
  • kjs/function.h:
  • kjs/function_object.cpp: (FunctionProtoFunc::callAsFunction): (FunctionObjectImp::construct):
  • kjs/nodes.cpp: (FunctionBodyNode::addParam): (FunctionBodyNode::paramString): (FuncDeclNode::addParams): (FuncDeclNode::processFuncDecl): (FuncExprNode::addParams): (FuncExprNode::evaluate):
  • kjs/nodes.h: (KJS::Parameter::Parameter): (KJS::FunctionBodyNode::numParams): (KJS::FunctionBodyNode::paramName): (KJS::FunctionBodyNode::parameters): (KJS::FuncExprNode::FuncExprNode): (KJS::FuncDeclNode::FuncDeclNode):
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Disable 64-bit warnings because they handle size_t badly.
02:45 Changeset [21031] by mjs
  • 3 edits in trunk/JavaScriptCore

Reviewed by Darin.

  • shrink RegexpObjectImp by 4 bytes


Somewhat inexplicably, this seems to be a .33% speedup on JS iBench.


  • kjs/regexp_object.cpp: (KJS::RegExpObjectImpPrivate::RegExpObjectImpPrivate): (RegExpObjectImp::RegExpObjectImp): (RegExpObjectImp::performMatch): (RegExpObjectImp::arrayOfMatches): (RegExpObjectImp::getBackref): (RegExpObjectImp::getLastMatch): (RegExpObjectImp::getLastParen): (RegExpObjectImp::getLeftContext): (RegExpObjectImp::getRightContext): (RegExpObjectImp::getValueProperty): (RegExpObjectImp::putValueProperty):
  • kjs/regexp_object.h:
02:27 Changeset [21030] by mjs
  • 2 edits in trunk/JavaScriptCore

Reviewed by Oliver.


  • change to 1-bit bitfields instead of 8-bit, this turns out to lead to a .51% speedup on JS iBench


The 1-bit bitfields are actually faster than just plain bools, at least on Intel (go figure).

  • kjs/property_map.h:
01:53 Changeset [21029] by mjs
  • 3 edits in trunk/JavaScriptCore

Reviewed by Darin.



I did this by storing the capacity before the beginning of the storage array. It turns out
it is rarely needed and is by definition 0 when the storage array is null.


  • kjs/array_instance.h: (KJS::ArrayInstance::capacity): Get it from the secret stash
  • kjs/array_object.cpp: (allocateStorage): New function to encapsulate allocating the storage with extra space ahead for the capacity. (reallocateStorage): ditto for realloc (ArrayInstance::ArrayInstance): (ArrayInstance::~ArrayInstance): (ArrayInstance::resizeStorage):
01:47 Changeset [21028] by thatcher
  • 5 edits in trunk/WebKit

Reviewed by Darin.

Bug 6658: World leak when closing inspected window
http://bugs.webkit.org/show_bug.cgi?id=6658 and <rdar://problem/4411863>

Removes over-retains of the inspector WebView, WebInspector and WebInspectorPanel.

  • WebInspector/WebInspector.m: (+sharedWebInspector): Return the global sharedWebInspector variable. (-window): Release the window after calling setWindow:. (-windowWillClose:): Set the JavaScript Inspector variable to null and expire the current highlight. Also clear the global sharedWebInspector variable and release it if self equals sharedWebInspector. (-showWindow:): Set the JavaScript Inspector variable back to self.
  • WebInspector/WebInspectorInternal.h: Remove the isSharedInspector member variable.
  • WebView/WebView.mm: (-[WebView windowScriptObject]): Return nil if core([self mainFrame]) is NULL.
01:38 Changeset [21027] by darin
  • 9 edits
    3 adds in trunk

JavaScriptCore:

Reviewed by Maciej.

  • fix <rdar://problem/4840688> REGRESSION (r10588, r10621): JavaScript won't parse modifications of non-references (breaks 300themovie.warnerbros.com, fedex.com)

Despite the ECMAScript specification's claim that you can treat these as syntax
errors, doing so creates some website incompatibilities. So this patch turns them back
into evaluation errors instead.

Test: fast/js/modify-non-references.html

  • kjs/grammar.y: Change makeAssignNode, makePrefixNode, and makePostfixNode so that they never fail to parse. Update rules that use them. Fix a little bit of indenting. Use new PostfixErrorNode, PrefixErrorNode, and AssignErrorNode classes.
  • kjs/nodes.h: Added an overload of throwError that takes a char* argument. Replaced setExceptionDetailsIfNeeded and debugExceptionIfNeeded with handleException, which does both. Added PostfixErrorNode, PrefixErrorNode, and AssignErrorNode classes.
  • kjs/nodes.cpp: Changed exception macros to use handleException; simpler and smaller code size than the two functions that we used before. (Node::throwError): Added the overload mentioned above. (Node::handleException): Added. Contains the code from both setExceptionDetailsIfNeeded and debugExceptionIfNeeded. (PostfixErrorNode::evaluate): Added. Throws an exception. (PrefixErrorNode::evaluate): Ditto. (AssignErrorNode::evaluate): Ditto. (ThrowNode::execute): Call handleException instead of debugExceptionIfNeeded; this effectively adds a call to setExceptionDetailsIfNeeded, which may help with getting the correct file and line number for these exceptions.
  • kjs/nodes2string.cpp: (PostfixErrorNode::streamTo): Added. (PrefixErrorNode::streamTo): Added. (AssignErrorNode::streamTo): Added.

LayoutTests:

Reviewed by Maciej.

  • test for <rdar://problem/4840688> REGRESSION (r10588, r10621): JavaScript won't parse modifications of non-references (breaks 300themovie.warnerbros.com, fedex.com)
  • fast/js/modify-non-references-expected.txt: Added.
  • fast/js/modify-non-references.html: Added.
  • fast/js/resources/modify-non-references.js: Added.
  • fast/js/assign-expected.txt: Updated for different exception text.
  • fast/js/postfix-syntax-expected.txt: Ditto.
  • fast/js/prefix-syntax-expected.txt: Ditto.
01:27 Changeset [21026] by darin
  • 22 edits in trunk

LayoutTests:

Reviewed by Hyatt.

  • test changes for rename of box-sizing to -webkit-box-sizing
  • fast/borders/border-fit.html: Rename.
  • fast/box-sizing/box-sizing.html: Ditto.
  • fast/box-sizing/panels-one.html: Added -webkit-box-sizing.
  • fast/box-sizing/panels-two.html: Ditto.
  • fast/box-sizing/percentage-height.html: Renamed -khtml-box-sizing to -webkit-box-sizing.
  • fast/css/computed-style-expected.txt: Updated for different name and place in sorting order.
  • tables/mozilla/core/box_sizing.html: Rename.

WebCore:

Reviewed by Hyatt.

  • rename box-sizing to -webkit-box-sizing because of <rdar://problem/4667227> REGRESSION: Shifted table on page at https://us.etrade.com/e/t/home (due to box-sizing)
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Rename.
  • css/CSSPropertyNames.in: Ditto.
  • css/cssparser.cpp: (WebCore::CSSParser::parseValue): Rename and take out comment explaining why we aren't prefacing with -webkit.
  • css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): Rename.
  • css/html4.css: Rename.
  • css/quirks.css: Rename.

WebKit:

Reviewed by Hyatt.

  • rename box-sizing to -webkit-box-sizing
  • WebInspector/webInspector/inspector.css: Here.
  • WebInspector/webInspector/inspector.js: And here, in the expected default CSS values list.

WebKitTools:

Reviewed by Hyatt.

  • rename box-sizing to -webkit-box-sizing
  • Drosera/console.css: Here.
  • Drosera/debugger.css: And here.
  • Drosera/viewer.css: And here.
00:54 Changeset [21025] by mjs
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin.


  • fix test failures / crashes on PPC
  • kjs/property_map.h: Make the bool fields explicitly 8-bit bitfields, since bool is a full word there otherwise :-(
00:44 Changeset [21024] by mjs
  • 3 edits in trunk/JavaScriptCore

Reviewed by Darin.


  • fix more test case failures
  • bindings/runtime_array.cpp: (RuntimeArray::RuntimeArray): inherit from JSObject instead of ArrayInstance; it turns out that this class only needs the prototype and classInfo from ArrayInstance, not the actual class itself, and it was too big otherwise. (RuntimeArray::getOwnPropertySlot):
  • bindings/runtime_array.h:
00:15 Changeset [21023] by mjs
  • 3 edits in trunk/JavaScriptCore

Reviewed by Darin.


  • fix some test failures
  • bindings/runtime_method.cpp: (RuntimeMethod::RuntimeMethod): inherit from InternalFunctionImp instead of FunctionImpl, otherwise this is too big (RuntimeMethod::getOwnPropertySlot):
  • bindings/runtime_method.h:
00:13 Changeset [21022] by bdash
  • 4 edits in trunk/WebCore

2007-04-23 Alp Toker <alp@atoker.com>

Reviewed by Hyatt.

  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::drawEllipse): (WebCore::GraphicsContext::drawConvexPolygon): Fix stroking and filling of ellipses and polygons.
  • platform/graphics/cairo/ImageCairo.cpp: (WebCore::BitmapImage::draw): Make use of a new GraphicsContext function to simplify the code. (WebCore::Image::drawPattern): Now implemented. This makes content with tiled patterns (eg. CSS repeat) render correctly.
  • platform/graphics/gdk/ImageGdk.cpp: (WebCore::Image::drawPattern): Remove old stub.

04/22/07:

23:46 Changeset [21021] by bdash
  • 3 edits in trunk/WebCore

2007-04-22 Lars Naesbye Christensen <lars@naesbye.dk>

Reviewed by Tim Hatcher.

Prettier, more modern 'cell' cursor
http://bugs.webkit.org/show_bug.cgi?id=13441
Also updates past ChangeLog entries to new email address

  • ChangeLog:
  • ChangeLog-2006-12-31:
  • Resources/cellCursor.png:
23:17 Changeset [21020] by bdash
  • 2 edits in trunk/WebCore

2007-04-23 Mark Rowe <mrowe@apple.com>

Rubber-stamped by Hyatt.

Rename cMaxPenderingSourceLengthInLowBandwidthDisplay to cMaxPendingSourceLengthInLowBandwidthDisplay.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
21:16 Changeset [21019] by mjs
  • 6 edits in trunk/JavaScriptCore

Reviewed by Darin.


Based an idea by Christopher E. Hyde <C.Hyde@parableuk.force9.co.uk>. His patch to do
this also had many other List changes and I found this much simpler subset of the changes
was actually a hair faster.


This optimization is valid because the arguments list is only kept around to
lazily make the arguments object. If it's not made by the time the function
exits, it never will be, since any function that captures the continuation will
have its own local arguments variable in scope.


Besides the 1.7% speed improvement, it shrinks List by 4 bytes
(which in turn shrinks ActivationImp by 4 bytes).


  • kjs/Context.cpp: (KJS::Context::~Context): Clear the activation's arguments list.
  • kjs/function.cpp: (KJS::ActivationImp::ActivationImp): Adjusted for list changes. (KJS::ActivationImp::mark): No need to mark, lists are always protected (this doesn't cause a ref-cycle for reasons stated above). (KJS::ActivationImp::createArgumentsObject): Clear arguments list.
  • kjs/function.h:
  • kjs/list.cpp: (KJS::List::List): No more needsMarking boolean (KJS::List::operator=): ditto
  • kjs/list.h: (KJS::List::List): ditto (KJS::List::reset): ditto (KJS::List::deref): ditto
21:10 Changeset [21018] by mjs
  • 4 edits in trunk/JavaScriptCore

Reviewed by Darin.


Inspired by similar changes by Christopher E. Hyde <C.Hyde@parableuk.force9.co.uk>
done in the kjs-tweaks branch of KDE's kjs. However, this version is somewhat
cleaner style-wise and avoids some of the negative speed impact (at least on gcc/x86)
of his version.


This is nearly a wash performance-wise, maybe a slight slowdown, but worth doing
to eventually reach cell size 32.


  • kjs/collector.cpp: (KJS::):
  • kjs/property_map.cpp: (KJS::PropertyMap::~PropertyMap): (KJS::PropertyMap::clear): (KJS::PropertyMap::get): (KJS::PropertyMap::getLocation): (KJS::PropertyMap::put): (KJS::PropertyMap::insert): (KJS::PropertyMap::expand): (KJS::PropertyMap::rehash): (KJS::PropertyMap::remove): (KJS::PropertyMap::mark): (KJS::PropertyMap::containsGettersOrSetters): (KJS::PropertyMap::getEnumerablePropertyNames): (KJS::PropertyMap::getSparseArrayPropertyNames): (KJS::PropertyMap::save): (KJS::PropertyMap::checkConsistency):
  • kjs/property_map.h: (KJS::PropertyMap::hasGetterSetterProperties): (KJS::PropertyMap::setHasGetterSetterProperties): (KJS::PropertyMap::): (KJS::PropertyMap::PropertyMap):
21:01 Changeset [21017] by mjs
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin.



  • kjs/collector.cpp: (KJS::allocateBlock): New function to allocate 64k of 64k-aligned memory (KJS::freeBlock): Corresponding free (KJS::Collector::allocate): (KJS::Collector::collect):
20:29 Changeset [21016] by mjs
  • 1 edit in trunk/WebCore/ChangeLog

Added bugzilla URL to earlier commit.

20:28 Changeset [21015] by mjs
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin and Geoff.


This change is a .66% speedup on JS iBench for 32-bit platforms, probably much more
for 64-bit since it finally gives a reasonable cell size, but I did not test that.


  • kjs/collector.cpp: (KJS::): Use different cell size for 32-bit and 64-bit, now that there is no oversize allocation. (KJS::Collector::allocate): Remove oversize allocator. (KJS::Collector::markStackObjectsConservatively): Don't check oversize objects. (KJS::Collector::markMainThreadOnlyObjects): Ditto. (KJS::Collector::collect): Ditto.
20:09 Changeset [21014] by mjs
  • 4 edits in trunk/WebCore

Reviewed by Darin and Geoff.

  • move most of Window's data members into a separate private object, to avoid needing to use the oversize allocator for it


It was the only remaining JSObject subclass to use the oversize
allocator on 32-bit platforms, and having oversize objects around
makes garbage collection slower so this would hurt performance
with many tabs/windows open.


No significant effect on JS iBench.

  • bindings/js/kjs_events.cpp: (KJS::JSUnprotectedEventListener::JSUnprotectedEventListener): (KJS::JSUnprotectedEventListener::~JSUnprotectedEventListener): (KJS::JSEventListener::JSEventListener): (KJS::JSEventListener::~JSEventListener): (KJS::JSLazyEventListener::parseCode):
  • bindings/js/kjs_window.cpp: (KJS::WindowPrivate::WindowPrivate): (KJS::Window::Window): (KJS::Window::~Window): (KJS::Window::location): (KJS::Window::selection): (KJS::Window::locationbar): (KJS::Window::menubar): (KJS::Window::personalbar): (KJS::Window::statusbar): (KJS::Window::toolbar): (KJS::Window::scrollbars): (KJS::Window::mark): (KJS::Window::getValueProperty): (KJS::Window::findJSEventListener): (KJS::Window::findJSUnprotectedEventListener): (KJS::Window::clearHelperObjectProperties): (KJS::Window::clear): (KJS::Window::setCurrentEvent): (KJS::Window::setReturnValueSlot): (KJS::Window::clearAllTimeouts): (KJS::Window::installTimeout): (KJS::Window::pauseTimeouts): (KJS::Window::resumeTimeouts): (KJS::Window::clearTimeout): (KJS::Window::timerFired): (KJS::Window::disconnectFrame): (KJS::Window::jsEventListeners): (KJS::Window::jsHTMLEventListeners): (KJS::Window::jsUnprotectedEventListeners): (KJS::Window::jsUnprotectedHTMLEventListeners):
  • bindings/js/kjs_window.h:
20:08 Changeset [21013] by hyatt
  • 2 edits in trunk/WebCore

Fix 1% regression on the PLT. Make sure roundToDevicePixels does no
work when no scale is in effect.

Reviewed by mjs

17:44 Changeset [21012] by darin
  • 3 edits in trunk/WebCore

Reviewed by Oliver.

  • fix small things noticed while looking into a font subsitution bug
  • platform/Font.h: (WebCore::Font::operator==): Corrected a misleading comment.
  • platform/Font.cpp: (WebCore::Font::Font): Initialize m_pageZero to 0 in the empty constructor instead of leaving it uninitialized. Initialize m_fontList for tighter code. Remove unneeded initialization of RefPtr members to 0. Changed the copy constructor to use initialization for tighter code. (WebCore::Font::operator=): Sorted to match the order from the header and the copy constructor, and removed the uneeded self-assignment check.
17:38 Changeset [21011] by thatcher
  • 2 edits in trunk/WebKit

Reviewed by Darin.

The fix for <rdar://problem/4976681> ASSERTION failure on quit @ talkcrunch.com in _NPN_ReleaseObject
was #ifdefed out in Production builds.

  • WebView/WebView.mm: (+[WebView initialize]): Move the #ifdef REMOVE_SAFARI_DOM_TREE_DEBUG_ITEM inside initialize around the specific code (+[WebView _applicationWillTerminate]): Moved outside the #ifdef REMOVE_SAFARI_DOM_TREE_DEBUG_ITEM block
16:14 Changeset [21010] by darin
  • 5 edits
    1 add in trunk/WebCore

Reviewed by Maciej.

  • manual-tests/clear-input-file.html: Added.
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::appendFormData): Remove check that prevents submission of form data when there is no renderer or the renderer is invisible. While well-intentioned, the rule does not match the behavior of other web browsers. (WebCore::HTMLInputElement::setValue): Instead of disallowing all value changes for file type, allow changes to the empty string. (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): Made file type return true for this. 1) The file type does store its value separate from the value attribute. 2) The code in setInputType() should do the right thing given this new value, according to my inspection of the code. 3) The code in both reset() and setValue() will work properly if this is true, which was the motivation for changing it.
  • platform/FileChooser.h: Added a clear function.
  • platform/FileChooser.cpp: (WebCore::FileChooser::clear): Clear the filename and the icon.
  • rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::valueChanged): Used a local variable to make the code a little bit more readable (and match the change below). (WebCore::RenderFileUploadControl::updateFromElement): Used local variables a bit more in the old code. Added code that will call clear on the FileChooser and repaint if the DOM element has an empty value and the FileChooser does not.
16:12 Changeset [21009] by darin
  • 9 edits in trunk/WebCore

Reviewed by Hyatt.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=12279
Implemented two pass loading. Enabled by WTF_USE_LOW_BANDWIDTH_DISPLAY flag.

  • dom/Document.cpp: (WebCore::Document::Document): initialize member variable m_inLowBandwidthDisplay
  • dom/Document.h: (WebCore::Document::haveStylesheetsLoaded): while in low bandwidth display mode, ignore pending style sheets (WebCore::Document::setDocLoader): (WebCore::Document::inLowBandwidthDisplay): (WebCore::Document::setLowBandwidthDisplay):
  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::scriptHandler): while in low bandwidth display mode, don't execute JavaScript
  • loader/Cache.cpp: (WebCore::Cache::requestResource): while in low bandwidth display mode, don't let style sheet and JavaScript block
  • loader/CachedCSSStyleSheet.cpp: (WebCore::CachedCSSStyleSheet::checkNotify): add notifyFinished() as client may need "this" pointer
  • loader/DocLoader.h: (WebCore::DocLoader::replaceDocument):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::FrameLoader): (WebCore::FrameLoader::requestFrame): while in low bandwidth display mode, don't load sub-frame (WebCore::FrameLoader::stopLoading): (WebCore::FrameLoader::begin): set to low bandwidth display mode if the top frame is HTML document (WebCore::FrameLoader::write): (WebCore::FrameLoader::endIfNotLoading): (WebCore::FrameLoader::checkCompleted): while in low bandwidth display mode, don't set complete (WebCore::FrameLoader::requestObject): while in low bandwidth display mode, don't care Object (WebCore::FrameLoader::addLowBandwidthDisplayRequest): (WebCore::FrameLoader::removeAllLowbandwidthDisplayRequests): (WebCore::FrameLoader::notifyFinished): (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
  • loader/FrameLoader.h: (WebCore::FrameLoader::FrameLoader::needToSwitchOutLowBandwidthDisplay): (WebCore::FrameLoader::FrameLoader::setUseLowBandwidthDisplay): (WebCore::FrameLoader::FrameLoader::useLowBandwidthDisplay):
15:57 Changeset [21008] by darin
  • 6 edits
    2 adds in trunk

LayoutTests:

Reviewed by Tim Hatcher.

  • fast/css/dashboard-region-parser.html: Added.
  • fast/css/dashboard-region-parser-expected.txt: Added.
  • fast/css/dashboard-regions-attr-crash.html: Updated bug URL to point to bugs.webkit.org instead of bugzilla.opendarwin.org. At some point we should do this for the roughly 100 other tests that have the old URL.
  • fast/css/dashboard-regions-attr-crash-expected.txt: Ditto.

WebCore:

Reviewed by Tim Hatcher.

Test: fast/css/dashboard-region-parser.html

  • css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::cssText): Fix code that overwrote each additional region with the previous one to instead build a space-separated list. Check for the case of an identifier that's invalid, since that's (accidentally) how we represent a region value that doesn't have explicit top/right/bottom/left values. The old code would end up writing out four spaces after the region type.
  • css/cssparser.cpp: (WebCore::CSSParser::parseDashboardRegions): Fail to parse if there is something after the "none" identifier or after the arguments inside the dashboard-region "function". Also replaced code that produced a identifier with CSS_VAL_INVALID in a roundabout way with code that does it explicitly.
15:12 Changeset [21007] by thatcher
  • 2 edits in trunk/WebKit

Reviewed by Mitz.

Bug 13436: Make Option-clicking a disclosure triangle expand the entire subtree
http://bugs.webkit.org/show_bug.cgi?id=13436

Makes option-click recursively expand and collapse the sub-tree. Pressing option-left
and -right also recursively expands and collapses the sub-tree.

15:05 Changeset [21006] by thatcher
  • 2 edits in trunk/WebKit

Reviewed by Mitz.

Bug 13437: Inspector does not update when navigating to a different page
http://bugs.webkit.org/show_bug.cgi?id=13437

  • WebInspector/webInspector/inspector.js: Correctly update to a new root node if the new focus node and the old focus node don't have a common ancestor.
13:28 Changeset [21005] by kevino
  • 4 edits
    1 add in branches/wx-port-alpha/trunk

Get JavaScriptCore tests running on the wxWebKit branch. (use run-wxwebkit-tests to run them)

10:24 Changeset [23330] by darin
  • 2 edits in branches/WindowsMerge/LayoutTests
  • win/Skipped: Added a new test that requires emacs key bindings that we don't have implemented in Boomer.
10:17 Changeset [21004] by darin
  • 5 edits
    4 adds in trunk

LayoutTests:

Reviewed by Adele.

  • test for <rdar://problem/5100240> REGRESSION: Control-O broken
  • editing/input/emacs-ctrl-o-expected.checksum: Added.
  • editing/input/emacs-ctrl-o-expected.png: Added.
  • editing/input/emacs-ctrl-o-expected.txt: Added.
  • editing/input/emacs-ctrl-o.html: Added.

WebCore:

Reviewed by Adele.

  • support for fix for <rdar://problem/5100240> REGRESSION: Control-O broken
  • dom/KeyboardEvent.h: Include a vector of command names in the KeypressCommand object instead of a single command name.

WebKit:

Reviewed by Adele.

  • fix for <rdar://problem/5100240> REGRESSION: Control-O broken
  • WebView/WebHTMLView.mm: (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): Update to handle a vector of command names instead of a single command. (-[WebHTMLView doCommandBySelector:]): Change logic so that we add the command to a vector and also so that the interpretKeyEvents parameters are still intact for a second call to doCommandBySelector:, since the key bindings mechanism can do more than one. (-[WebHTMLView insertText:]): Added comment.
01:23 Changeset [21003] by ap
  • 7 edits in trunk/WebCore

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=13115
REGRESSION: 1000% performance regression in DOM access by index, which was already slow

  • dom/NodeList.h: Move cached data into a separate class, so it can be shared.
  • dom/Node.h: Replace the set of registered NodeLists with a struct that also contains a shared NodeList::Caches (so the size of Node doesn't change).
  • dom/NodeList.cpp: (WebCore::NodeList::NodeList): (WebCore::NodeList::~NodeList): (WebCore::NodeList::recursiveLength): (WebCore::NodeList::itemForwardsFromCurrent): (WebCore::NodeList::itemBackwardsFromCurrent): (WebCore::NodeList::recursiveItem): (WebCore::NodeList::itemWithName): (WebCore::NodeList::rootNodeChildrenChanged): (WebCore::NodeList::NodeListInfo::NodeListInfo): (WebCore::NodeList::NodeListInfo::reset):
  • dom/ChildNodeList.cpp: (WebCore::ChildNodeList::ChildNodeList): (WebCore::ChildNodeList::length): (WebCore::ChildNodeList::item): (WebCore::ChildNodeList::nodeMatches):
  • dom/ChildNodeList.h:
  • dom/Node.cpp: (WebCore::Node::childNodes): (WebCore::Node::registerNodeList): (WebCore::Node::unregisterNodeList): (WebCore::Node::notifyLocalNodeListsAttributeChanged): (WebCore::Node::notifyLocalNodeListsChildrenChanged): Adjust for the above changes.

04/21/07:

20:15 Changeset [21002] by andrew
  • 3 edits
    4 adds in trunk

LayoutTests:
2007-04-21 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

  • fast/repaint/control-clip-expected.checksum: Added.
  • fast/repaint/control-clip-expected.png: Added.
  • fast/repaint/control-clip-expected.txt: Added.
  • fast/repaint/control-clip.html: Added.

WebCore:
2007-04-21 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

Test: fast/repaint/control-clip.html

Ignore controls' lightweight clip in repaint rect computation for now.

  • rendering/RenderBox.cpp: (WebCore::RenderBox::computeAbsoluteRepaintRect):
18:41 Changeset [21001] by darin
  • 2 edits in trunk/WebCore

Reviewed by Adam.

  • fix <rdar://problem/4816343> :-khtml-drag CSS pseudo-class changed to :-webkit-drag, need alias
  • css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType): Since Apple documentation claims "-khtml-drag" works, we need to keep it working, so add it back as an alias.
16:46 Changeset [21000] by darin
  • 3 edits in trunk/WebKit

Reviewed by Oliver.

  • fix some problems I ran into using the inspector
  • WebInspector/webInspector/inspector.js: Add some null checks.
16:46 Changeset [20999] by darin
  • 2 edits in trunk/WebCore

Reviewed by Oliver.

  • fix <rdar://problem/4782422> REGRESSION: -[stringByEvaluatingJavaScriptFromString] returns an empty string instead of nil for non-string results
  • page/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]): Added a call to nsStringNilIfEmpty to restore the old behavior. It might be nice to distinguish the empty string from a non-string result, but there's no obvious way to do that, and for compatibility it's probably best to just restore the old behavior instead.
15:31 Changeset [20998] by hyatt
  • 3 edits in trunk/WebCore

Fix for bug 13432, determineFlowSpacing is O(n2).

Reviewed by aroben

  • rendering/InlineBox.cpp: (WebCore::InlineBox::nextOnLineExists): (WebCore::InlineBox::prevOnLineExists):
  • rendering/InlineBox.h: (WebCore::InlineBox::InlineBox):
02:38 Changeset [20997] by ap
  • 8 edits
    2 adds in trunk

2007-04-21 Lamar Goddard <lamargoddard@gmail.com>

Reviewed by Darin.

Fix for http://bugs.webkit.org/show_bug.cgi?id=5262
<rdar://problem/5018778>
XMLSerializer drops Namespace information

WebCore:

Updated WebCore::markup to output namespace information for elements/attributes whose namespace information
doesn't appear in its scope in the output.

  • WebCore/editing/markup.cpp: (WebCore::createMarkup(const Node*, ...)): Changed call to WebCore::markup to match parameters (WebCore::markup): Changed recursive call to match tree structure, removed ASSERT and no longer needed includeSiblings parameter. (WebCore::startMarkup): Added optional parameter to track namespaces in the current scope. (WebCore::addNamespace): Function to add namespace information to markup. (WebCore::shouldAddNamespaceAttr): (WebCore::shouldAddNamespaceElem): Functions that test whether namespace information should be added for a given node.
  • WebCore/dom/Document.idl: (createElementNS): (createAttributeNS): (getElementsByTagNameNS): Added [ConvertNullToNullString] to namespaceURI parameter.
  • WebCore/dom/Node.cpp: (Node::getElementsByTagNameNS): removed test for namespaceURI being null as null can be a valid namespace.

LayoutTests:

  • fast/dom/serialize-nodes-expected.txt: Added.
  • fast/dom/serialize-nodes.xhtml: Added.
  • dom/xhtml/level3/core/nodeisequalnode14-expected.txt: This test fails because createAttribute is supposed to create an Attr with localName of null.
  • dom/xhtml/level3/core/nodeisequalnode15-expected.txt: Now succeeds.
  • fast/innerHTML/004-expected.txt: Added namespace information to head and body nodes as xhtml nodes now serialize with namespace information.
01:50 Changeset [20996] by ap
  • 4 edits
    4 adds in trunk

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=13300
Reproducible crash opening anekdot.ru

WebCore:

  • html/HTMLParser.cpp: (WebCore::HTMLParser::HTMLParser): (WebCore::HTMLParser::getNode): (WebCore::HTMLParser::handleIsindex):
  • html/HTMLParser.h: Made HTMLParser::form a RefPtr, and renamed it to m_currentFormElement. Made m_currentMapElement a RefPtr.

LayoutTests:

  • fast/parser/rewrite-form-expected.txt: Added.
  • fast/parser/rewrite-form.html: Added.
  • fast/parser/rewrite-map-expected.txt: Added.
  • fast/parser/rewrite-map.html: Added.
01:20 Changeset [20995] by bdash
  • 9 edits
    4 adds in trunk

2007-04-21 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

Test: fast/overflow/hit-test-overflow-controls.html

  • page/EventHandler.cpp: (WebCore::EventHandler::handleMouseMoveEvent): Avoid activating scrollbars during layer resize.
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::isPointInOverflowControl): Renamed isPointInScrollbar to this, to reflect that it returns true for points in the resize corner as well. Changed it to call the layer to do the actual work. (WebCore::RenderBlock::nodeAtPoint): Updated for the above rename.
  • rendering/RenderBlock.h:
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::horizontalScrollbarWidget): Fixed typo in this function's name (it was horizontaScrollbarWidget). (WebCore::RenderLayer::hitTestOverflowControls): Added. Returns whether the hit point is in one of the scrollbars or the resize corner, and updates the platform scrollbar in the hit test result if a scrollbar was hit.
  • rendering/RenderLayer.h:
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::isPointInOverflowControl): Rename.
  • rendering/RenderListBox.h:

2007-04-21 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

  • fast/overflow/hit-test-overflow-controls-expected.checksum: Added.
  • fast/overflow/hit-test-overflow-controls-expected.png: Added.
  • fast/overflow/hit-test-overflow-controls-expected.txt: Added.
  • fast/overflow/hit-test-overflow-controls.html: Added.
01:17 Changeset [20994] by bdash
  • 6 edits in trunk

2007-04-21 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

  • DumpRenderTree/DumpRenderTree.m: (activateAhemFont): Added. Activates the copy of Ahem included in the DumpRenderTree binary. (dumpRenderTree): Replaced the check that Ahem is available with a call to activateAhemFont().
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Added linker options to include Ahem in the data section of the DumpRenderTree binary.

2007-04-21 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

  • quality/testing.html: Removed the requirement to download and install Ahem for running the tests.
  • quality/testwriting.html: Added information about Ahem.
01:14 Changeset [20993] by bdash
  • 3 edits
    2 adds in trunk

2007-04-21 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

Test: fast/dom/Window/getMatchedCSSRules-null-crash.html

  • css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::styleRulesForElement): Added null check.

2007-04-21 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

  • fast/dom/Window/getMatchedCSSRules-null-crash-expected.txt: Added.
  • fast/dom/Window/getMatchedCSSRules-null-crash.html: Added.
01:12 Changeset [20992] by bdash
  • 3 edits in trunk/WebCore

2007-04-21 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

No test included because DumpRenderTree does not support setting the user stylesheet.

  • css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::CSSStyleSelector): (WebCore::CSSStyleSelector::~CSSStyleSelector):
  • css/cssstyleselector.h: Made m_userSheet a RefPtr.
01:09 Changeset [20991] by bdash
  • 2 edits in trunk/JavaScriptCore

2007-04-21 Mitz Pettel <mitz@webkit.org>

Reviewed by Adam.

  • kjs/array_object.cpp: (ArrayInstance::sort): Free the old storage, not the new one.
01:08 Changeset [20990] by bdash
  • 2 edits in trunk/WebCore

2007-04-21 MorganL <morganl.webkit@yahoo.com>

Reviewed by Adam.

NPObject should be forward declared using 'struct' instead of 'class'

  • page/Frame.h:
00:51 Changeset [20989] by bdash
  • 2 edits in trunk/WebCore

2007-04-21 Alp Toker <alp@atoker.com>

Gdk build fix.

  • platform/gdk/FontPlatformDataGdk.cpp: (WebCore::FontPlatformData::FontPlatformData): Use the correct casts.

04/20/07:

23:43 Changeset [20988] by thatcher
  • 1 edit in trunk/WebKit/WebInspector/WebInspector.m

Fixes the build.

23:19 Changeset [20987] by thatcher
  • 1 delete in branches/WebInspectorRefresh

Remove the branch now that the changes were merged over to source:trunk in r20986.

23:14 Changeset [20986] by thatcher
  • 2 edits
    11 copies
    2 deletes in trunk/WebKit

Reviewed by Darin.

Merge over the WebInspectorRefresh branch. This change removes the NSOutlineView and
is replaced with a HTML/JavaScript tree. Most of the inspector logic is now in the JavaScript.

A few bugs are fixed by these changes:

Bug 6615: Parent node drop-down list is upside-down
http://bugs.webkit.org/show_bug.cgi?id=6615

Bug 6643: REGRESSION: Tree view repaints lines without erasing them first
http://bugs.webkit.org/show_bug.cgi?id=6643

Bug 6650: Web Inspector HTML Hierarchy can't be scrolled with scrollwheel
http://bugs.webkit.org/show_bug.cgi?id=6650

Bug 6677: Can't drag inspector when tree view has focus
http://bugs.webkit.org/show_bug.cgi?id=6677

Bug 7326: Web Inspector tree scrollbar always shows up when resizing the top pane down
http://bugs.webkit.org/show_bug.cgi?id=7326

  • WebInspector/WebInspector.h: Removed the searchQuery methods.
  • WebInspector/WebInspector.m: Removed the DOMNode category and code for the old outline view.
  • WebInspector/WebInspectorOutlineView.h: Removed.
  • WebInspector/WebInspectorOutlineView.m: Removed.
  • WebInspector/WebInspectorInternal.h: Remove some methods and instance variables.
  • WebInspector/webInspector/Images/resize.png: Added.
  • WebInspector/webInspector/inspector.css:
  • WebInspector/webInspector/inspector.html: Include the new classes and remove the plugin.
  • WebInspector/webInspector/inspector.js: Changes to use the new tree outline and other fixes.
  • WebInspector/webInspector/scrollarea.js: Copied from the Dashboard widget resources.
  • WebInspector/webInspector/scrollbar.js: Ditto.
  • WebInspector/webInspector/treeoutline.js: New tree outline class.
  • WebInspector/webInspector/utilities.js: DOM and String prototype additions.
  • WebKit.xcodeproj/project.pbxproj: Remove WebInspectorOutlineView.
19:00 Changeset [20985] by bdash
  • 1 copy in tags/Safari-4522.6.1

New tag.

18:49 Changeset [20984] by bdash
  • 4 edits in branches/Safari-522

Versioning.

18:46 Changeset [20983] by bdash
  • 8 edits in branches/Safari-522

Merge r20445.

18:00 Changeset [20982] by bdakin
  • 1 edit
    2 adds in trunk/LayoutTests

Reviewed by Adam.

Test I meant to check in a while ago.

  • fast/events/fire-scroll-event-expected.txt: Added.
  • fast/events/fire-scroll-event.html: Added.
17:58 Changeset [23329] by adachan
  • 11 edits in branches/WindowsMerge
17:55 Changeset [23328] by bdakin
  • 2 edits in branches/WindowsMerge/WebCore

Reviewed by Adam.

Fix for <rdar://problem/5089822> Boomer does not send scroll events

  • platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
17:26 Changeset [20981] by beidson
  • 6 edits in trunk

WebCore:

Reviewed by Oliver (Black Sheep)

<rdar://problem/3559794>
[WebView setMaintainsBackForwardList:] doesn't actually flush out the current page caches

  • WebCore.exp:
  • history/BackForwardList.cpp: (WebCore::BackForwardList::BackForwardList): Set the flag to true by default (WebCore::BackForwardList::addItem): Check the flag and bail if its false (WebCore::BackForwardList::setCapacity): More correct if it set the m_current to NoCurrentItemIndex if we're setting capacity to 0 (WebCore::BackForwardList::enabled): (WebCore::BackForwardList::setEnabled): If we're disabling, cycle capacity to 0 and back to flush things out
  • history/BackForwardList.h: Add enabled(), setEnabled(bool), and m_enabled

WebKit:

Reviewed by Oliver (Black Sheep)

<rdar://problem/3559794>
[WebView setMaintainsBackForwardList:] doesn't actually flush out the current page caches

  • WebView/WebView.mm: Remove _private->useBackForwardList (-[WebView _setInitiatedDrag:]): Use _private->page instead of [self page] (-[WebView initWithCoder:]): Manipulate the flag that is now in WebCore::BackForwardList (-[WebView encodeWithCoder:]): Ditto (-[WebView backForwardList]): Use _private->page instead of [self page] (-[WebView setMaintainsBackForwardList:]): Manipulate the flag that is now in WebCore::BackForwardList
17:24 Changeset [20980] by hyatt
  • 5 edits in trunk/WebCore

Bug 13424, firstLineStyle and verticalPositionHint together take
33% of the time on the new tag nesting PLT. Don't waste time even
looking for first-line styles if no stylesheet used them.

Reviewed by beth

  • css/CSSGrammar.y:
  • dom/Document.cpp: (WebCore::Document::Document):
  • dom/Document.h: (WebCore::Document::usesFirstLineRules): (WebCore::Document::setUsesFirstLineRules):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::verticalPositionHint): (WebCore::RenderObject::firstLineStyle):
17:14 Changeset [20979] by thatcher
  • 1 copy in tags/Safari-4522.6

New tag.

17:13 Changeset [20978] by thatcher
  • 4 edits in branches/Safari-522

Versioning

15:50 Changeset [20977] by mjs
  • 2 edits in trunk/JavaScriptCore

Not reviewed, build fix.

  • fix build problem with last change - -O3 complains more about uninitialized variables


  • pcre/pcre_compile.c: (compile_branch): (pcre_compile2):
15:33 Changeset [20976] by aroben
  • 2 edits in trunk/WebKitTools

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=13421
Bug 13421: prepare-ChangeLog should use svn-create-patch when spewing diffs

  • Scripts/prepare-ChangeLog: Use svn-create-patch instead of svn diff.
15:26 Changeset [20975] by oliver
  • 2 edits in trunk/WebCore

2007-04-20 Peter Kasting <pkasting@google.com>

Reviewed by Oliver.

  • platform/TextEncodingRegistry.cpp: (WebCore::addToTextEncodingNameMap): Change a pointer comparison to a strcmp(), since the strings here are not necessarily pointer-equivalent.
15:20 Changeset [23327] by aroben
  • 2 edits in branches/WindowsMerge/WebKitTools
  • DumpRenderTree/DumpRenderTree.vcproj/TestNetscapePlugin/TestNetscapePlugin.vcproj: Use WebKitConfigSuffix instead of ConfigSuffix.
15:20 Changeset [20974] by mjs
  • 3 edits in trunk/JavaScriptCore

Reviewed by Darin.


  • <rdar://problem/5149915> use mergesort when possible, since it leads to fewer compares (2% JS iBench speedup)
  • kjs/array_object.cpp: (ArrayInstance::sort): Use mergesort(3) on platforms that have it, since it tends to do fewer compares than qsort; but avoid it very on large arrays since it uses extra memory. Also added comments identifying possibly even better sorting algorithms for sort by string value and sort by compare function.
  • kjs/config.h:
15:00 Changeset [20973] by mjs
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin.


  • bump optimization flags up to -O3 for 1% JS iBench speed improvement
  • Configurations/Base.xcconfig:
14:52 Changeset [20972] by darin
  • 7 edits
    2 adds in trunk

LayoutTests:

Reviewed by Geoff Garen and John Sullivan.

  • test changes for <rdar://problem/4671964> document property on <iframe> elements causes problems for SAP application
  • fast/dom/iframe-document-expected.txt: Added.
  • fast/dom/iframe-document.html: Added.
  • fast/dom/attr_dead_doc.html: Changed to use contentDocument instead of relying on the document property on HTMLIFrameElement.
  • fast/events/mouseover-mouseout.html: Ditto.
  • fast/frames/repaint-display-none-crash.html: Ditto.

WebCore:

Reviewed by Geoff Garen and John Sullivan.

  • fix <rdar://problem/4671964> document property on <iframe> elements causes problems for SAP application

Test: fast/dom/iframe-document.html

  • bindings/js/kjs_html.h: Removed IFrameDocument.
  • bindings/js/kjs_html.cpp: (KJS::JSHTMLElement::iFrameGetter): Ditto.
12:49 GtkAPIProposal edited by kimmok@iki.fi
(diff)
12:47 GtkAPIProposal edited by kimmok@iki.fi
(diff)
02:25 BuildingGdk edited by alp@atoker.com
Updated roadmap (diff)
02:01 Changeset [23326] by aroben
  • 2 edits in branches/WindowsMerge/WebKitTools

Explicitly link DRT against some Win32 libs because VC++ Express
doesn't link against them by default.

  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/DumpRenderTree.vcproj:
01:47 Changeset [20971] by bdash
  • 2 edits in trunk/JavaScriptCore

2007-04-20 Mark Rowe <mrowe@apple.com>

Reviewed by Maciej.

Fix bogus optimisation in the generic pthread code path.

  • kjs/collector.cpp: (KJS::currentThreadStackBase):
00:50 Changeset [20970] by bdash
  • 2 edits in trunk/JavaScriptCore

2007-04-20 Mark Rowe <mrowe@apple.com>

Reviewed by Anders.

Improve FreeBSD compatibility, as suggested by Alexander Botero-Lowry.

  • kjs/collector.cpp: (KJS::currentThreadStackBase): FreeBSD requires that pthread_attr_t's are initialized via pthread_attr_init before being used in any context.
00:13 Changeset [20969] by andersca
  • 2 edits in trunk/WebKit

Reviewed by Maciej.

<rdar://problem/5085897> REGRESSION: Some Flash links at www.jumpskyhigh.com just reload the page


Get rid of the check that would prevent plugin requests from being loaded if a new page load was underway.
www.jumpskyhigh.com had a flash movie that was embedded inside an <a> tag and clicking on the plug-in would cause the
URL pointed to by the <a> tag to start loading and thus preventing the plug-in from loading the real URL.


This check was added by Maciej and we should be able to remove it with the loader changes that have happened now,
(mainly the fact that resource loaders are handled by the document loader instead of the frame loader).


  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):

04/19/07:

23:54 Changeset [20968] by bdash
  • 3 edits in trunk/WebCore

2007-04-19 Alp Toker <alp@atoker.com>

Reviewed by Mark.

  • platform/gdk/FontGdk.cpp: (WebCore::Font::drawGlyphs):
  • platform/gdk/FontPlatformDataGdk.cpp: (WebCore::FontPlatformData::FontPlatformData): Fix font support in Gdk port.
22:43 Changeset [23325] by aroben
  • 2 edits in branches/WindowsMerge/WebCore
  • WebCore.vcproj/WebCore.vcproj: Removed empty filter.
22:40 Changeset [23324] by aroben
  • 2 edits in branches/WindowsMerge/WebCore
  • WebCore.vcproj/WebCore.vcproj: Removed unused files.
22:37 Changeset [23323] by aroben
  • 1 delete in branches/WindowsMerge/WebCore/kcanvas

Removed empty directory.

22:02 Changeset [20967] by hyatt
  • 11 edits
    4 adds in trunk

Fix for bug 13208, implement word-break. This patch produces a partial
implementation of word-break. word-break: break-all is implemented. In
addition, a custom value, word-break: break-word is added that is a hybrid
of word-wrap: break-word and word-break: break-all (and more useful than
either).

Reviewed by beth

Added fast/text/word-break.html

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSPropertyNames.in:
  • css/CSSValueKeywords.in:
  • css/cssparser.cpp: (WebCore::CSSParser::parseValue):
  • css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • rendering/RenderStyle.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator==): (WebCore::RenderStyle::diff):
  • rendering/RenderStyle.h: (WebCore::): (WebCore::RenderStyle::breakWords): (WebCore::RenderStyle::wordBreak): (WebCore::RenderStyle::setWordBreak): (WebCore::RenderStyle::initialWordBreak): (WebCore::RenderStyle::initialWordWrap):
  • rendering/RenderText.cpp: (WebCore::RenderText::calcMinMaxWidthInternal):
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::createInnerTextStyle): (WebCore::RenderTextControl::calcHeight):
  • rendering/bidi.cpp: (WebCore::RenderBlock::findNextLineBreak):
21:59 Changeset [20966] by bdash
  • 2 edits in trunk/WebCore

2007-04-20 Mark Rowe <mrowe@apple.com>

Qt build fix for FreeBSD.

  • WebCore.pro: FreeBSD needs HAVE_PTHREAD_NP_H defined.
21:06 BuildingQtOnLinux edited by bdash@webkit.org
Info about another build error. (diff)
20:02 Changeset [23322] by aroben
  • 6 edits in branches/WindowsMerge/WebKitTools

Reviewed by Steve.

Get rid of all uses of ATL CString in DumpRenderTree.

Also fixed a couple of bugs related to SAFEARRAY usage.

Unless otherwise noted, changes are simple converting CString usage to
std::wstring.

  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/DumpRenderTree.cpp: (initialize): (dumpFrameScrollPosition): The bounds of a SAFEARRAY are inclusive, so the length is upper - lower + 1. (compareHistoryItems): The vector we're sorting now holds COMPtrs, so changed to reflect that. (dumpHistoryItem): Use a Vector of COMPtrs to hold the child items, and fixed length calculation. (dumpBackForwardList): Use a Vector of COMPtrs to hold the items so that they are retained properly. (main):
  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/EditingDelegate.cpp: (dumpPath): (dump):
  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/LayoutTestController.cpp: (jsValueToWString): (queueLoadCallback): (queueScriptCallback):
  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/WorkQueueItem.cpp: (LoadItem::invoke): (ScriptItem::invoke):
  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/WorkQueueItem.h: (LoadItem::LoadItem): (LoadItem::url): (LoadItem::target): (ScriptItem::ScriptItem): (ScriptItem::script):
19:50 Changeset [20965] by oliver
  • 2 edits in trunk/WebKit

2007-04-19 Oliver Hunt <oliver@apple.com>

Reviewed by Adam.

Fix for <rdar://problem/4960912> -- REGRESSION: Content-Disposition:
filename is ignored for drag-and-drop.

  • WebView/WebResource.mm: (-[WebResource _fileWrapperRepresentation]): When creating the NSFileWrapper check the response for a preferred filename, rather than just blindly hoping for the best.
19:09 Changeset [20964] by bdash
  • 2 edits in trunk/WebCore

2007-04-19 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

The problem was that the page was loaded from the page cache with a subtree
marked for layout and the layout timer stopped (having been stopped when the
page entered the page cache). FrameView::needsLayout() was returning false
which prevented the pending layout from completing.

  • page/FrameView.cpp: (WebCore::FrameView::clear): Removed the call to stop the layout timer, since reset() does that already. (WebCore::FrameView::needsLayout): Changed to return true if there's a subtree pending relayout.
19:08 Changeset [20963] by bdash
  • 78 edits
    1 add
    2 deletes in trunk/LayoutTests

2007-04-19 Mitz Pettel <mitz@webkit.org>

Rubber-stamped by Adam.

  • editing/abe.jpg: Removed.
  • editing/deleting/4866671.html:
  • editing/deleting/delete-3608462-fix.html:
  • editing/deleting/delete-image-001.html:
  • editing/deleting/delete-image-002.html:
  • editing/deleting/delete-image-003.html:
  • editing/deleting/delete-image-004.html:
  • editing/execCommand/5080333-1-expected.checksum:
  • editing/execCommand/5080333-1-expected.png:
  • editing/execCommand/5080333-1.html:
  • editing/execCommand/5080333-2-expected.checksum:
  • editing/execCommand/5080333-2-expected.png:
  • editing/execCommand/5080333-2.html:
  • editing/execCommand/createLink-expected.txt:
  • editing/execCommand/createLink.html:
  • editing/execCommand/insertImage-expected.checksum:
  • editing/execCommand/insertImage-expected.png:
  • editing/execCommand/insertImage.html:
  • editing/execCommand/unlink-expected.txt:
  • editing/execCommand/unlink.html:
  • editing/inserting/12882.html:
  • editing/inserting/typing-around-image-001.html:
  • editing/pasteboard/4641033-expected.checksum:
  • editing/pasteboard/4641033-expected.png:
  • editing/pasteboard/4641033.html:
  • editing/pasteboard/4947130-expected.checksum:
  • editing/pasteboard/4947130-expected.png:
  • editing/pasteboard/4947130.html:
  • editing/pasteboard/4989774-expected.checksum:
  • editing/pasteboard/4989774-expected.png:
  • editing/pasteboard/4989774.html:
  • editing/pasteboard/copy-standalone-image.html:
  • editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.checksum:
  • editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.png:
  • editing/pasteboard/drag-image-to-contenteditable-in-iframe.html:
  • editing/pasteboard/drag-selected-image-to-contenteditable-expected.checksum:
  • editing/pasteboard/drag-selected-image-to-contenteditable-expected.png:
  • editing/pasteboard/drag-selected-image-to-contenteditable.html:
  • editing/pasteboard/styled-element-markup-expected.checksum:
  • editing/pasteboard/styled-element-markup-expected.png:
  • editing/pasteboard/styled-element-markup.html:
  • editing/resources/abe.jpg: Removed.
  • editing/resources/abe.png: Added.
  • editing/selection/4402375-expected.checksum:
  • editing/selection/4402375-expected.png:
  • editing/selection/4402375.html:
  • editing/selection/4932260-1-expected.checksum:
  • editing/selection/4932260-1-expected.png:
  • editing/selection/4932260-1.html:
  • editing/selection/4932260-2-expected.checksum:
  • editing/selection/4932260-2-expected.png:
  • editing/selection/4932260-2.html:
  • editing/selection/4932260-3-expected.checksum:
  • editing/selection/4932260-3-expected.png:
  • editing/selection/4932260-3.html:
  • editing/selection/drag-to-contenteditable-iframe-expected.checksum:
  • editing/selection/drag-to-contenteditable-iframe-expected.png:
  • editing/selection/drag-to-contenteditable-iframe.html:
  • editing/selection/extend-by-character-002-expected.checksum:
  • editing/selection/extend-by-character-002-expected.png:
  • editing/selection/extend-by-character-002.html:
  • editing/selection/extend-by-character-004-expected.checksum:
  • editing/selection/extend-by-character-004-expected.png:
  • editing/selection/extend-by-character-004.html:
  • editing/selection/image-before-linebreak-expected.checksum:
  • editing/selection/image-before-linebreak-expected.png:
  • editing/selection/image-before-linebreak.html:
  • editing/selection/legal-positions.html:
  • editing/selection/move-by-character-002-expected.checksum:
  • editing/selection/move-by-character-002-expected.png:
  • editing/selection/move-by-character-002.html:
  • editing/selection/move-by-character-004-expected.checksum:
  • editing/selection/move-by-character-004-expected.png:
  • editing/selection/move-by-character-004.html:
  • editing/selection/replaced-boundaries-1-expected.checksum:
  • editing/selection/replaced-boundaries-1-expected.png:
  • editing/selection/replaced-boundaries-1.html:
  • editing/selection/replaced-boundaries-2-expected.checksum:
  • editing/selection/replaced-boundaries-2-expected.png:
  • editing/selection/replaced-boundaries-2.html:
18:53 Changeset [20962] by justing
  • 8 edits
    4 adds in trunk

LayoutTests:

Reviewed by harrison


<rdar://problem/5144139>
On delete, <BR> inserted into non-editable ToDo <TABLE> element

  • editing/deleting/5144139-2-expected.checksum: Added.
  • editing/deleting/5144139-2-expected.png: Added.
  • editing/deleting/5144139-2-expected.txt: Added.
  • editing/deleting/5144139-2.html: Added.

WebCore:

Reviewed by harrison


<rdar://problem/5144139>
On delete, <BR> inserted into non-editable ToDo <TABLE> element


The fact that the br was being inserted at a bad position
(a non-editable position and one inside a table instead of
before it) was fixed in the previous checkin. This change
stops us from inserting a br at all, to fix the bug.


After a delete, we need a placeholder if the selection
started at the start of a paragraph and ended at the end
of a paragraph. But not if it starts just before a table
and ends inside that table. We need placeholders to hold
open emptied out table cells, but that is handled separately.


Also, moved lineBreakExistsAtPosition to htmlediting.cpp
so that it can be used in more places.

  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::removePlaceholderAt): (WebCore::CompositeEditCommand::moveParagraphs):
  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::doApply):
  • editing/InsertLineBreakCommand.cpp:
  • editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::doApply):
  • editing/htmlediting.cpp: (WebCore::lineBreakExistsAtPosition):
  • editing/htmlediting.h:
18:10 Changeset [23321] by sfalken
  • 3 edits in branches/WindowsMerge/WebKitTools

2007-04-19 Steve Falkenburg <sfalken@apple.com>

Reviewed by Adam.


Eliminate more ATL use (CComSafeArray).


In one place, we were using SafeArray for something that was better served
by WTF::Vector. I added WTF to the vcproj as part of this patch.

  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/DumpRenderTree.cpp: (dumpFrameScrollPosition): (dumpHistoryItem): (dumpBackForwardList):
  • DumpRenderTree/DumpRenderTree.vcproj/DumpRenderTree/DumpRenderTree.vcproj:
17:49 Changeset [20961] by sfalken
  • 1 copy in tags/Safari-522.6.2b

New tag.

17:08 Changeset [20960] by justing
  • 13 edits
    4 adds in trunk

LayoutTests:

Reviewed by harrison

  • editing/execCommand/5144139-1-expected.checksum: Added.
  • editing/execCommand/5144139-1-expected.png: Added.
  • editing/execCommand/5144139-1-expected.txt: Added.
  • editing/execCommand/5144139-1.html: Added.

WebCore:

Reviewed by harrison


Fixes some issues found while investigating:
<rdar://problem/5144139> On delete, <BR> inserted into non-editable ToDo <TABLE> element


Move the code to handle inserting content before/after
tables for [table, 0/max] to insertNodeAt, so that
all insertions get it, not just some.
Changed insertNodeAt to take in a position instead of a
node and an offset.

  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::insertNodeAt): (WebCore::CompositeEditCommand::insertNodeAtTabSpanPosition): (WebCore::CompositeEditCommand::insertBlockPlaceholder): (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): If paragrahStart.node() is an atomic node, insertNodeAt can handle insertion, we don't need to special case it. (WebCore::CompositeEditCommand::moveParagraphs): (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
  • editing/CompositeEditCommand.h:
  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::mergeParagraphs): (WebCore::DeleteSelectionCommand::doApply):
  • editing/FormatBlockCommand.cpp: (WebCore::FormatBlockCommand::doApply):
  • editing/IndentOutdentCommand.cpp: (WebCore::IndentOutdentCommand::indentRegion): (WebCore::IndentOutdentCommand::outdentParagraph):
  • editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply):
  • editing/InsertListCommand.cpp: (WebCore::InsertListCommand::doApply):
  • editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::doApply):
  • editing/InsertTextCommand.cpp: (WebCore::InsertTextCommand::prepareForTextInsertion): Removed some dead code that handled insertion at non-editable positions. (WebCore::InsertTextCommand::insertTab):
  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): (WebCore::ReplaceSelectionCommand::insertNodeAtAndUpdateNodesInserted):
  • editing/ReplaceSelectionCommand.h:
15:35 Changeset [20959] by andrew
  • 7 edits in trunk/WebCore

Reviewed by Darin.

Avoid calling selectionRect() and selectionGapRects() on a renderer that needs
layout.

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::selectionGapRects):
  • rendering/RenderBlock.h: (WebCore::RenderBlock::BlockSelectionInfo::BlockSelectionInfo):
  • rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::selectionRect):
  • rendering/RenderObject.h: (WebCore::RenderObject::SelectionInfo::SelectionInfo):
  • rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::selectionRect):
  • rendering/RenderText.cpp: (WebCore::RenderText::selectionRect):
13:27 Changeset [20958] by justing
  • 7 edits
    12 adds in trunk

LayoutTests:

Reviewed by darin


<rdar://problem/5142012>
GoogleDocs: Crash at WebCore::Range::startPosition() when creating a list from a link

Tests the change to pushAnchorElementDown, where we remove
the anchor element that has had copies of it pushed down:

  • editing/execCommand/5142012-1-expected.checksum: Added.
  • editing/execCommand/5142012-1-expected.png: Added.
  • editing/execCommand/5142012-1-expected.txt: Added.
  • editing/execCommand/5142012-1.html: Added.


Demonstrates the crash (fixed by adding nil-checks
to moveParagraphs):

  • editing/execCommand/5142012-2-expected.checksum: Added.
  • editing/execCommand/5142012-2-expected.png: Added.
  • editing/execCommand/5142012-2-expected.txt: Added.
  • editing/execCommand/5142012-2.html: Added.


Tests the changes to positionAvoidingSpecialElementBoundary,
where we push down anchors before we avoid them so that
we don't also avoid structural elements like lists and paragraphs:

  • editing/execCommand/5142012-3-expected.checksum: Added.
  • editing/execCommand/5142012-3-expected.png: Added.
  • editing/execCommand/5142012-3-expected.txt: Added.
  • editing/execCommand/5142012-3.html: Added.

WebCore:

Reviewed by darin

<rdar://problem/5142012>
GoogleDocs: Crash at WebCore::Range::startPosition() when creating a list from a link


List creation uses moveParagraphs to push content into list items.
Its fragment creation (using createMarkup) incorrectly uses regular
spaces instead of nbsps for spaces that were rendered (11475), which
causes spaces to be collapsed during the move operation. This results
in a call to rangeFromLocationAndLength with a location past the end
of the document. We use the result from rangeFromLocationAndLength
(null) and crash.


Also when moveParagraphs tries to push content into a list item surrounded
by an anchor, it fails because positionAvoidingSpecialElementBoundary avoids
the anchor, which also avoids the list item. This was fixed by pushing
down anchors before avoiding them.


  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::pushAnchorElementDown): Remove the old anchor after we push down clones of it, this is what callers expect. (WebCore::CompositeEditCommand::pushPartiallySelectedAnchorElementsDown): Call the new enclosingAnchorElement, that takes in a position instead of a node. (WebCore::CompositeEditCommand::moveParagraphs): If spaces collapsed as a result of the move, rangeFromLocationAndLength can return null, bail and don't try to preserve the selection in that case. (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary): Moved from htmlediting.cpp. Make sure anchors are pushed down before avoiding them so that we don't also avoid structural elements like lists and blocks.
  • editing/CompositeEditCommand.h:
  • editing/TypingCommand.cpp: Moved isFirst/LastPositionBefore/AfterTable to htmlediting.cpp.
  • editing/htmlediting.cpp: Moved positionAvoidingSpecialElementBoundary so that it could call pushAnchorElementDown. (WebCore::isFirstPositionAfterTable): Moved here. (WebCore::isLastPositionBeforeTable): Moved here. (WebCore::enclosingAnchorElement): Moved here. (WebCore::enclosingListChild): Removed an extraneous space.
  • editing/htmlediting.h:
12:58 Changeset [20957] by bdakin
  • 21 edits
    2 moves
    6 adds
    6 deletes in trunk

WebCore:

Reviewed by Hyatt.

Fix for <rdar://problem/5120889> Sized table cells w/borders not
drawn to correct size

When table cells have children with %-height, the cells were
incorrectly shrinking down to be the size of the child. This
exposed another problem with replaced children and sizing.

  • rendering/RenderBox.cpp: (WebCore::RenderBox::calcReplacedHeightUsing): The exposed problem. Subtract our borders and padding in the auto or percent table cell containing block case.
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::layoutRows): When our children can flex, do not always set the cellTopExtra and cellBottomExtra to 0! That is bad! We should do the same as the non-flex case.

Layout Tests:

Reviewed by Hyatt.

Series of new/rearranged results after fix for <rdar://problem/
5120889> Sized table cells w/borders not drawn to correct size

These tests are different by tiny, barely noticeable amounts. The
new results are more correct. We didn't catch the problem before
because it was so subtle here:

  • fast/replaced/width100percent-expected.txt:
  • fast/table/003-expected.checksum:
  • fast/table/003-expected.png:
  • fast/table/003-expected.txt:

This is the test that exposed the other problem with replaced
children. Now we fit snugly inside the border on the bottom, which
is different than Firefox, but seems right.

  • tables/mozilla/bugs/bug131020-expected.checksum:
  • tables/mozilla/bugs/bug131020-expected.png:
  • tables/mozilla/bugs/bug131020-expected.txt:

This test actually always failed and was incorrectly filed as a
success. Moving to failures.

  • tables/mozilla/bugs/bug137388-2-expected.checksum: Removed.
  • tables/mozilla/bugs/bug137388-2-expected.png: Removed.
  • tables/mozilla/bugs/bug137388-2-expected.txt: Removed.
  • tables/mozilla/bugs/bug137388-2.html: Removed.
  • tables/mozilla_expected_failures/bugs/bug137388-2-expected.checksum: Added.
  • tables/mozilla_expected_failures/bugs/bug137388-2-expected.png: Added.
  • tables/mozilla_expected_failures/bugs/bug137388-2-expected.txt: Added.

This test was actually wrong before, and now it is right!

  • tables/mozilla/bugs/bug149275-2-expected.checksum:
  • tables/mozilla/bugs/bug149275-2-expected.png:
  • tables/mozilla/bugs/bug149275-2-expected.txt:

This was a failing test that now passes. YAY!

  • tables/mozilla/bugs/bug18440-expected.checksum: Added.
  • tables/mozilla/bugs/bug18440-expected.png: Added.
  • tables/mozilla/bugs/bug18440-expected.txt: Added.
  • tables/mozilla_expected_failures/bugs/bug18440-expected.checksum: Removed.
    • tables/mozilla_expected_failures/bugs/bug18440-expected.png: Removed.
    • tables/mozilla_expected_failures/bugs/bug18440-expected.txt: Removed.
    • tables/mozilla_expected_failures/bugs/bug18440.html: Removed.

This was slightly wrong before and is now correct.

  • tables/mozilla/bugs/bug30692-expected.checksum:
  • tables/mozilla/bugs/bug30692-expected.png:
  • tables/mozilla/bugs/bug30692-expected.txt:

Still wrong, but slightly more correct.

  • tables/mozilla_expected_failures/bugs/bug137388-1-expected.checksum:
  • tables/mozilla_expected_failures/bugs/bug137388-1-expected.png:
  • tables/mozilla_expected_failures/bugs/bug137388-1-expected.txt:

So much closer to being correct!! But still slightly wrong.

  • tables/mozilla_expected_failures/bugs/bug19526-expected.txt:
12:57 Changeset [20956] by thatcher
  • 6 edits in branches/WebInspectorRefresh/WebKit/WebInspector

Address review comments Darin made.

12:37 Changeset [20955] by brmorris
  • 2 edits in S60/branches/3.1m/WebKit

brad, reviewed by zalan

DESC: add ContentAccess namespace to StaticImageDecoder.cpp

  • BrowserCore/Renderers/src/StaticImageDecoder.cpp:
12:19 Changeset [20954] by andersca
  • 5 edits
    2 adds in trunk

LayoutTests:

Reviewed by Geoff.

http://bugs.webkit.org/show_bug.cgi?id=13333
Support naturalWidth/naturalHeight on image elements


  • fast/dom/HTMLImageElement/image-natural-width-height-expected.txt: Added.
  • fast/dom/HTMLImageElement/image-natural-width-height.html: Added.

WebCore:

Reviewed by Geoff.

http://bugs.webkit.org/show_bug.cgi?id=13333
Support naturalWidth/naturalHeight on image elements

  • html/HTMLImageElement.cpp: (WebCore::HTMLImageElement::naturalWidth): (WebCore::HTMLImageElement::naturalHeight):
  • html/HTMLImageElement.h:
  • html/HTMLImageElement.idl:
11:56 Changeset [20953] by pyeh
  • 2 edits in trunk/WebCore
  • review suggestion for rdar://5145011 code change


  • bridge/mac/WebCoreAXObject.mm: (-[WebCoreAXObject value]): return early if value attribute is not supported by the attachment view.
11:21 Changeset [20952] by pyeh
  • 2 edits in trunk/WebCore

<rdar://problem/5145011> Allow attachment view of web object to handle accessibility actions


  • bridge/mac/WebCoreAXObject.mm: (-[WebCoreAXObject value]): Only allow asking the attachmentView for value if attachmentView supports this value attribute (-[WebCoreAXObject title]): (-[WebCoreAXObject accessibilityAttributeNames]): Should not return that long list of unrelated attributes for attachmentView. (-[WebCoreAXObject accessibilityActionNames]): (-[WebCoreAXObject accessibilityPerformAction:]): Allow attachmentView a chance to handle actions. (-[WebCoreAXObject accessibilityParameterizedAttributeNames]): Should not return that long list of unrelated attributes for attachmentView.
09:47 Changeset [20951] by andersca
  • 3 edits in trunk/WebKit

Reviewed by John.

<rdar://problem/5137002>
REGRESSION (r20812): [WebFrame DOMDocument] is returning non-nil value in bookmarks view, causing trouble in Safari

Put back the MIME type check as a workaround.

  • WebView/WebFrame.mm: (-[WebFrame DOMDocument]):
08:24 GtkAPIProposal edited by bdash@webkit.org
(diff)
08:20 GtkAPIProposal created by christian@twotoasts.de
07:47 Changeset [20950] by weinig
  • 532 edits in trunk

LayoutTests:

Reviewed by Hyatt

  • editing/deleting/4845371-expected.txt:
  • editing/deleting/collapse-whitespace-3587601-fix-expected.txt:
  • editing/deleting/delete-3608430-fix-expected.txt:
  • editing/deleting/delete-3608445-fix-expected.txt:
  • editing/deleting/delete-3608462-fix-expected.txt:
  • editing/deleting/delete-3775172-fix-expected.txt:
  • editing/deleting/delete-3800834-fix-expected.txt:
  • editing/deleting/delete-3857753-fix-expected.txt:
  • editing/deleting/delete-3865854-fix-expected.txt:
  • editing/deleting/delete-3928305-fix-expected.txt:
  • editing/deleting/delete-3959464-fix-expected.txt:
  • editing/deleting/delete-4038408-fix-expected.txt:
  • editing/deleting/delete-4083333-fix-expected.txt:
  • editing/deleting/delete-after-span-ws-001-expected.txt:
  • editing/deleting/delete-after-span-ws-002-expected.txt:
  • editing/deleting/delete-after-span-ws-003-expected.txt:
  • editing/deleting/delete-all-text-in-text-field-assertion-expected.txt:
  • editing/deleting/delete-and-undo-expected.txt:
  • editing/deleting/delete-at-paragraph-boundaries-001-expected.txt:
  • editing/deleting/delete-at-paragraph-boundaries-002-expected.txt:
  • editing/deleting/delete-at-paragraph-boundaries-003-expected.txt:
  • editing/deleting/delete-at-paragraph-boundaries-004-expected.txt:
  • editing/deleting/delete-at-paragraph-boundaries-005-expected.txt:
  • editing/deleting/delete-at-paragraph-boundaries-006-expected.txt:
  • editing/deleting/delete-at-paragraph-boundaries-007-expected.txt:
  • editing/deleting/delete-at-paragraph-boundaries-008-expected.txt:
  • editing/deleting/delete-at-paragraph-boundaries-009-expected.txt:
  • editing/deleting/delete-at-paragraph-boundaries-010-expected.txt:
  • editing/deleting/delete-at-paragraph-boundaries-011-expected.txt:
  • editing/deleting/delete-at-start-or-end-expected.txt:
  • editing/deleting/delete-block-contents-001-expected.txt:
  • editing/deleting/delete-block-contents-002-expected.txt:
  • editing/deleting/delete-block-contents-003-expected.txt:
  • editing/deleting/delete-block-merge-contents-001-expected.txt:
  • editing/deleting/delete-block-merge-contents-002-expected.txt:
  • editing/deleting/delete-block-merge-contents-003-expected.txt:
  • editing/deleting/delete-block-merge-contents-004-expected.txt:
  • editing/deleting/delete-block-merge-contents-005-expected.txt:
  • editing/deleting/delete-block-merge-contents-006-expected.txt:
  • editing/deleting/delete-block-merge-contents-007-expected.txt:
  • editing/deleting/delete-block-merge-contents-008-expected.txt:
  • editing/deleting/delete-block-merge-contents-009-expected.txt:
  • editing/deleting/delete-block-merge-contents-010-expected.txt:
  • editing/deleting/delete-block-merge-contents-011-expected.txt:
  • editing/deleting/delete-block-merge-contents-012-expected.txt:
  • editing/deleting/delete-block-merge-contents-013-expected.txt:
  • editing/deleting/delete-block-merge-contents-014-expected.txt:
  • editing/deleting/delete-block-merge-contents-015-expected.txt:
  • editing/deleting/delete-block-merge-contents-016-expected.txt:
  • editing/deleting/delete-block-merge-contents-017-expected.txt:
  • editing/deleting/delete-block-merge-contents-018-expected.txt:
  • editing/deleting/delete-block-merge-contents-019-expected.txt:
  • editing/deleting/delete-block-merge-contents-020-expected.txt:
  • editing/deleting/delete-block-merge-contents-021-expected.txt:
  • editing/deleting/delete-block-merge-contents-022-expected.txt:
  • editing/deleting/delete-block-merge-contents-023-expected.txt:
  • editing/deleting/delete-block-merge-contents-024-expected.txt:
  • editing/deleting/delete-block-table-expected.txt:
  • editing/deleting/delete-br-001-expected.txt:
  • editing/deleting/delete-br-002-expected.txt:
  • editing/deleting/delete-br-003-expected.txt:
  • editing/deleting/delete-br-004-expected.txt:
  • editing/deleting/delete-br-005-expected.txt:
  • editing/deleting/delete-br-006-expected.txt:
  • editing/deleting/delete-br-007-expected.txt:
  • editing/deleting/delete-br-008-expected.txt:
  • editing/deleting/delete-br-009-expected.txt:
  • editing/deleting/delete-br-010-expected.txt:
  • editing/deleting/delete-br-011-expected.txt:
  • editing/deleting/delete-br-012-expected.txt:
  • editing/deleting/delete-by-word-001-expected.txt:
  • editing/deleting/delete-by-word-002-expected.txt:
  • editing/deleting/delete-character-001-expected.txt:
  • editing/deleting/delete-contiguous-ws-001-expected.txt:
  • editing/deleting/delete-first-list-item-expected.txt:
  • editing/deleting/delete-hr-expected.txt:
  • editing/deleting/delete-image-001-expected.txt:
  • editing/deleting/delete-image-002-expected.txt:
  • editing/deleting/delete-image-003-expected.txt:
  • editing/deleting/delete-image-004-expected.txt:
  • editing/deleting/delete-leading-ws-001-expected.txt:
  • editing/deleting/delete-line-001-expected.txt:
  • editing/deleting/delete-line-002-expected.txt:
  • editing/deleting/delete-line-003-expected.txt:
  • editing/deleting/delete-line-004-expected.txt:
  • editing/deleting/delete-line-005-expected.txt:
  • editing/deleting/delete-line-006-expected.txt:
  • editing/deleting/delete-line-007-expected.txt:
  • editing/deleting/delete-line-008-expected.txt:
  • editing/deleting/delete-line-009-expected.txt:
  • editing/deleting/delete-line-010-expected.txt:
  • editing/deleting/delete-line-011-expected.txt:
  • editing/deleting/delete-line-012-expected.txt:
  • editing/deleting/delete-line-013-expected.txt:
  • editing/deleting/delete-line-014-expected.txt:
  • editing/deleting/delete-line-015-expected.txt:
  • editing/deleting/delete-line-016-expected.txt:
  • editing/deleting/delete-line-017-expected.txt:
  • editing/deleting/delete-line-end-ws-001-expected.txt:
  • editing/deleting/delete-line-end-ws-002-expected.txt:
  • editing/deleting/delete-link-1-expected.txt:
  • editing/deleting/delete-listitem-001-expected.txt:
  • editing/deleting/delete-listitem-002-expected.txt:
  • editing/deleting/delete-mixed-editable-content-001-expected.txt:
  • editing/deleting/delete-select-all-001-expected.txt:
  • editing/deleting/delete-select-all-002-expected.txt:
  • editing/deleting/delete-select-all-003-expected.txt:
  • editing/deleting/delete-selection-001-expected.txt:
  • editing/deleting/delete-tab-001-expected.txt:
  • editing/deleting/delete-tab-002-expected.txt:
  • editing/deleting/delete-tab-003-expected.txt:
  • editing/deleting/delete-tab-004-expected.txt:
  • editing/deleting/delete-to-end-of-paragraph-expected.txt:
  • editing/deleting/delete-to-select-table-expected.txt:
  • editing/deleting/delete-trailing-ws-001-expected.txt:
  • editing/deleting/delete-trailing-ws-002-expected.txt:
  • editing/deleting/delete-ws-fixup-001-expected.txt:
  • editing/deleting/delete-ws-fixup-002-expected.txt:
  • editing/deleting/delete-ws-fixup-003-expected.txt:
  • editing/deleting/delete-ws-fixup-004-expected.txt:
  • editing/deleting/forward-delete-expected.txt:
  • editing/deleting/list-item-1-expected.txt:
  • editing/deleting/merge-different-styles-expected.txt:
  • editing/deleting/merge-endOfParagraph-expected.txt:
  • editing/deleting/merge-into-empty-block-1-expected.txt:
  • editing/deleting/merge-into-empty-block-2-expected.txt:
  • editing/deleting/merge-no-br-expected.txt:
  • editing/deleting/merge-unrendered-space-expected.txt:
  • editing/deleting/paragraph-in-preserveNewline-expected.txt:
  • editing/deleting/pruning-after-merge-1-expected.txt:
  • editing/deleting/pruning-after-merge-2-expected.txt:
  • editing/deleting/smart-delete-001-expected.txt:
  • editing/deleting/smart-delete-002-expected.txt:
  • editing/deleting/smart-delete-003-expected.txt:
  • editing/deleting/smart-delete-004-expected.txt:
  • editing/deleting/table-cells-expected.txt:
  • editing/deleting/transpose-empty-expected.txt:
  • editing/deleting/whitespace-pre-1-expected.txt:
  • editing/execCommand/4641880-1-expected.txt:
  • editing/execCommand/4641880-2-expected.txt:
  • editing/execCommand/boldSelection-expected.txt:
  • editing/execCommand/create-list-from-range-selection-expected.txt:
  • editing/execCommand/create-list-with-hr-expected.txt:
  • editing/execCommand/createLink-expected.txt:
  • editing/execCommand/format-block-expected.txt:
  • editing/execCommand/format-block-from-range-selection-expected.txt:
  • editing/execCommand/format-block-with-braces-expected.txt:
  • editing/execCommand/format-block-with-trailing-br-expected.txt:
  • editing/execCommand/hilitecolor-expected.txt:
  • editing/execCommand/indent-empty-root-expected.txt:
  • editing/execCommand/indent-list-item-expected.txt:
  • editing/execCommand/indent-selection-expected.txt:
  • editing/execCommand/insert-list-and-stitch-expected.txt:
  • editing/execCommand/insert-list-with-id-expected.txt:
  • editing/execCommand/insertHTML-expected.txt:
  • editing/execCommand/insertHorizontalRule-expected.txt:
  • editing/execCommand/insertImage-expected.txt:
  • editing/execCommand/italicizeByCharacter-expected.txt:
  • editing/execCommand/modifyForeColorByCharacter-expected.txt:
  • editing/execCommand/nsresponder-indent-expected.txt:
  • editing/execCommand/nsresponder-outdent-expected.txt:
  • editing/execCommand/outdent-selection-expected.txt:
  • editing/execCommand/print-expected.txt:
  • editing/execCommand/queryCommandState-01-expected.txt:
  • editing/execCommand/remove-formatting-2-expected.txt:
  • editing/execCommand/remove-formatting-expected.txt:
  • editing/execCommand/remove-list-from-range-selection-expected.txt:
  • editing/execCommand/remove-list-item-1-expected.txt:
  • editing/execCommand/remove-list-items-expected.txt:
  • editing/execCommand/selectAll-expected.txt:
  • editing/execCommand/strikethroughSelection-expected.txt:
  • editing/execCommand/switch-list-type-expected.txt:
  • editing/execCommand/unlink-expected.txt:
  • editing/input/firstrectforcharacterrange-plain-expected.txt:
  • editing/input/firstrectforcharacterrange-styled-expected.txt:
  • editing/input/wrapped-line-char-rect-expected.txt:
  • editing/inserting/4278698-expected.txt:
  • editing/inserting/before-after-input-element-expected.txt:
  • editing/inserting/editable-html-element-expected.txt:
  • editing/inserting/editing-empty-divs-expected.txt:
  • editing/inserting/insert-3654864-fix-expected.txt:
  • editing/inserting/insert-3659587-fix-expected.txt:
  • editing/inserting/insert-3775316-fix-expected.txt:
  • editing/inserting/insert-3778059-fix-expected.txt:
  • editing/inserting/insert-3786362-fix-expected.txt:
  • editing/inserting/insert-3800346-fix-expected.txt:
  • editing/inserting/insert-3851164-fix-expected.txt:
  • editing/inserting/insert-3907422-fix-expected.txt:
  • editing/inserting/insert-after-delete-001-expected.txt:
  • editing/inserting/insert-at-end-01-expected.txt:
  • editing/inserting/insert-at-end-02-expected.txt:
  • editing/inserting/insert-before-link-1-expected.txt:
  • editing/inserting/insert-br-001-expected.txt:
  • editing/inserting/insert-br-002-expected.txt:
  • editing/inserting/insert-br-003-expected.txt:
  • editing/inserting/insert-br-004-expected.txt:
  • editing/inserting/insert-br-005-expected.txt:
  • editing/inserting/insert-br-006-expected.txt:
  • editing/inserting/insert-br-007-expected.txt:
  • editing/inserting/insert-br-008-expected.txt:
  • editing/inserting/insert-br-009-expected.txt:
  • editing/inserting/insert-br-at-tabspan-001-expected.txt:
  • editing/inserting/insert-br-at-tabspan-002-expected.txt:
  • editing/inserting/insert-br-at-tabspan-003-expected.txt:
  • editing/inserting/insert-br-quoted-001-expected.txt:
  • editing/inserting/insert-br-quoted-002-expected.txt:
  • editing/inserting/insert-br-quoted-003-expected.txt:
  • editing/inserting/insert-br-quoted-004-expected.txt:
  • editing/inserting/insert-br-quoted-005-expected.txt:
  • editing/inserting/insert-br-quoted-006-expected.txt:
  • editing/inserting/insert-div-001-expected.txt:
  • editing/inserting/insert-div-002-expected.txt:
  • editing/inserting/insert-div-003-expected.txt:
  • editing/inserting/insert-div-004-expected.txt:
  • editing/inserting/insert-div-005-expected.txt:
  • editing/inserting/insert-div-006-expected.txt:
  • editing/inserting/insert-div-007-expected.txt:
  • editing/inserting/insert-div-008-expected.txt:
  • editing/inserting/insert-div-009-expected.txt:
  • editing/inserting/insert-div-010-expected.txt:
  • editing/inserting/insert-div-011-expected.txt:
  • editing/inserting/insert-div-012-expected.txt:
  • editing/inserting/insert-div-013-expected.txt:
  • editing/inserting/insert-div-014-expected.txt:
  • editing/inserting/insert-div-015-expected.txt:
  • editing/inserting/insert-div-016-expected.txt:
  • editing/inserting/insert-div-017-expected.txt:
  • editing/inserting/insert-div-018-expected.txt:
  • editing/inserting/insert-div-019-expected.txt:
  • editing/inserting/insert-div-020-expected.txt:
  • editing/inserting/insert-div-021-expected.txt:
  • editing/inserting/insert-div-022-expected.txt:
  • editing/inserting/insert-div-023-expected.txt:
  • editing/inserting/insert-div-024-expected.txt:
  • editing/inserting/insert-div-025-expected.txt:
  • editing/inserting/insert-div-026-expected.txt:
  • editing/inserting/insert-div-027-expected.txt:
  • editing/inserting/insert-paragraph-01-expected.txt:
  • editing/inserting/insert-paragraph-02-expected.txt:
  • editing/inserting/insert-paragraph-03-expected.txt:
  • editing/inserting/insert-paragraph-04-expected.txt:
  • editing/inserting/insert-space-in-empty-doc-expected.txt:
  • editing/inserting/insert-tab-001-expected.txt:
  • editing/inserting/insert-tab-002-expected.txt:
  • editing/inserting/insert-tab-003-expected.txt:
  • editing/inserting/insert-tab-004-expected.txt:
  • editing/inserting/insert-text-at-tabspan-001-expected.txt:
  • editing/inserting/insert-text-at-tabspan-002-expected.txt:
  • editing/inserting/insert-text-at-tabspan-003-expected.txt:
  • editing/inserting/insert-text-with-newlines-expected.txt:
  • editing/inserting/line-break-expected.txt:
  • editing/inserting/multiple-lines-selected-expected.txt:
  • editing/inserting/paragraph-separator-01-expected.txt:
  • editing/inserting/paragraph-separator-02-expected.txt:
  • editing/inserting/paragraph-separator-03-expected.txt:
  • editing/inserting/paragraph-separator-in-table-1-expected.txt:
  • editing/inserting/paragraph-separator-in-table-2-expected.txt:
  • editing/inserting/redo-expected.txt:
  • editing/inserting/return-key-with-selection-001-expected.txt:
  • editing/inserting/return-key-with-selection-002-expected.txt:
  • editing/inserting/return-key-with-selection-003-expected.txt:
  • editing/inserting/typing-001-expected.txt:
  • editing/inserting/typing-002-expected.txt:
  • editing/inserting/typing-003-expected.txt:
  • editing/inserting/typing-around-br-001-expected.txt:
  • editing/inserting/typing-around-image-001-expected.txt:
  • editing/pasteboard/3976872-expected.txt:
  • editing/pasteboard/4076267-2-expected.txt:
  • editing/pasteboard/4076267-3-expected.txt:
  • editing/pasteboard/4076267-expected.txt:
  • editing/pasteboard/4242293-1-expected.txt:
  • editing/pasteboard/4242293-expected.txt:
  • editing/pasteboard/4631972-expected.txt:
  • editing/pasteboard/4641033-expected.txt:
  • editing/pasteboard/4700297-expected.txt:
  • editing/pasteboard/4744008-expected.txt:
  • editing/pasteboard/8145-1-expected.txt:
  • editing/pasteboard/8145-2-expected.txt:
  • editing/pasteboard/8145-3-expected.txt:
  • editing/pasteboard/bad-placeholder-expected.txt:
  • editing/pasteboard/block-wrappers-necessary-expected.txt:
  • editing/pasteboard/copy-in-password-field-expected.txt:
  • editing/pasteboard/copy-standalone-image-expected.txt:
  • editing/pasteboard/cut-text-001-expected.txt:
  • editing/pasteboard/displaced-generic-placeholder-expected.txt:
  • editing/pasteboard/displaced-placeholder-expected.txt:
  • editing/pasteboard/display-block-on-spans-expected.txt:
  • editing/pasteboard/drag-drop-modifies-page-expected.txt:
  • editing/pasteboard/drag-selected-image-to-contenteditable-expected.txt:
  • editing/pasteboard/drop-link-expected.txt:
  • editing/pasteboard/emacs-cntl-y-001-expected.txt:
  • editing/pasteboard/emacs-ctrl-a-k-y-expected.txt:
  • editing/pasteboard/emacs-ctrl-k-y-001-expected.txt:
  • editing/pasteboard/interchange-newline-1-expected.txt:
  • editing/pasteboard/interchange-newline-2-expected.txt:
  • editing/pasteboard/interchange-newline-3-expected.txt:
  • editing/pasteboard/interchange-newline-4-expected.txt:
  • editing/pasteboard/merge-after-delete-1-expected.txt:
  • editing/pasteboard/merge-after-delete-2-expected.txt:
  • editing/pasteboard/merge-after-delete-expected.txt:
  • editing/pasteboard/merge-end-3-expected.txt:
  • editing/pasteboard/merge-end-4-expected.txt:
  • editing/pasteboard/merge-end-5-expected.txt:
  • editing/pasteboard/merge-end-blockquote-expected.txt:
  • editing/pasteboard/merge-end-borders-expected.txt:
  • editing/pasteboard/merge-end-list-expected.txt:
  • editing/pasteboard/merge-end-table-expected.txt:
  • editing/pasteboard/merge-start-blockquote-expected.txt:
  • editing/pasteboard/merge-start-list-expected.txt:
  • editing/pasteboard/nested-blocks-with-text-area-expected.txt:
  • editing/pasteboard/nested-blocks-with-text-field-expected.txt:
  • editing/pasteboard/paste-4035648-fix-expected.txt:
  • editing/pasteboard/paste-4038267-fix-expected.txt:
  • editing/pasteboard/paste-4039777-fix-expected.txt:
  • editing/pasteboard/paste-RTFD-expected.txt:
  • editing/pasteboard/paste-TIFF-expected.txt:
  • editing/pasteboard/paste-line-endings-001-expected.txt:
  • editing/pasteboard/paste-line-endings-002-expected.txt:
  • editing/pasteboard/paste-line-endings-003-expected.txt:
  • editing/pasteboard/paste-line-endings-004-expected.txt:
  • editing/pasteboard/paste-line-endings-005-expected.txt:
  • editing/pasteboard/paste-line-endings-006-expected.txt:
  • editing/pasteboard/paste-line-endings-007-expected.txt:
  • editing/pasteboard/paste-line-endings-008-expected.txt:
  • editing/pasteboard/paste-line-endings-009-expected.txt:
  • editing/pasteboard/paste-line-endings-010-expected.txt:
  • editing/pasteboard/paste-list-001-expected.txt:
  • editing/pasteboard/paste-match-style-001-expected.txt:
  • editing/pasteboard/paste-match-style-002-expected.txt:
  • editing/pasteboard/paste-pre-001-expected.txt:
  • editing/pasteboard/paste-pre-002-expected.txt:
  • editing/pasteboard/paste-table-001-expected.txt:
  • editing/pasteboard/paste-table-002-expected.txt:
  • editing/pasteboard/paste-table-003-expected.txt:
  • editing/pasteboard/paste-text-001-expected.txt:
  • editing/pasteboard/paste-text-002-expected.txt:
  • editing/pasteboard/paste-text-003-expected.txt:
  • editing/pasteboard/paste-text-004-expected.txt:
  • editing/pasteboard/paste-text-005-expected.txt:
  • editing/pasteboard/paste-text-006-expected.txt:
  • editing/pasteboard/paste-text-007-expected.txt:
  • editing/pasteboard/paste-text-008-expected.txt:
  • editing/pasteboard/paste-text-009-expected.txt:
  • editing/pasteboard/paste-text-010-expected.txt:
  • editing/pasteboard/paste-text-011-expected.txt:
  • editing/pasteboard/paste-text-012-expected.txt:
  • editing/pasteboard/paste-text-013-expected.txt:
  • editing/pasteboard/paste-text-014-expected.txt:
  • editing/pasteboard/paste-text-015-expected.txt:
  • editing/pasteboard/paste-text-016-expected.txt:
  • editing/pasteboard/paste-text-017-expected.txt:
  • editing/pasteboard/paste-text-018-expected.txt:
  • editing/pasteboard/paste-text-019-expected.txt:
  • editing/pasteboard/paste-text-at-tabspan-001-expected.txt:
  • editing/pasteboard/paste-text-at-tabspan-002-expected.txt:
  • editing/pasteboard/paste-text-at-tabspan-003-expected.txt:
  • editing/pasteboard/paste-xml-expected.txt:
  • editing/pasteboard/pasting-object-expected.txt:
  • editing/pasteboard/pasting-tabs-expected.txt:
  • editing/pasteboard/prevent-block-nesting-01-expected.txt:
  • editing/pasteboard/quirks-mode-br-1-expected.txt:
  • editing/pasteboard/quirks-mode-br-2-expected.txt:
  • editing/pasteboard/smart-paste-001-expected.txt:
  • editing/pasteboard/smart-paste-002-expected.txt:
  • editing/pasteboard/smart-paste-003-expected.txt:
  • editing/pasteboard/smart-paste-004-expected.txt:
  • editing/pasteboard/smart-paste-005-expected.txt:
  • editing/pasteboard/smart-paste-006-expected.txt:
  • editing/pasteboard/smart-paste-007-expected.txt:
  • editing/pasteboard/smart-paste-008-expected.txt:
  • editing/pasteboard/styled-element-markup-expected.txt:
  • editing/pasteboard/subframe-dragndrop-1-expected.txt:
  • editing/pasteboard/testcase-9507-expected.txt:
  • editing/pasteboard/undoable-fragment-removes-expected.txt:
  • editing/pasteboard/unrendered-br-expected.txt:
  • editing/selection/3690703-2-expected.txt:
  • editing/selection/3690703-expected.txt:
  • editing/selection/3690719-expected.txt:
  • editing/selection/4397952-expected.txt:
  • editing/selection/4932260-1-expected.txt:
  • editing/selection/4932260-2-expected.txt:
  • editing/selection/4932260-3-expected.txt:
  • editing/selection/4947387-expected.txt:
  • editing/selection/6476-expected.txt:
  • editing/selection/7152-1-expected.txt:
  • editing/selection/7152-2-expected.txt:
  • editing/selection/after-line-wrap-expected.txt:
  • editing/selection/caret-rtl-2-expected.txt:
  • editing/selection/caret-rtl-expected.txt:
  • editing/selection/click-before-and-after-table-expected.txt:
  • editing/selection/click-start-of-line-expected.txt:
  • editing/selection/designmode-no-caret-expected.txt:
  • editing/selection/editable-links-expected.txt:
  • editing/selection/editable-non-editable-crash-expected.txt:
  • editing/selection/end-of-document-expected.txt:
  • editing/selection/expanding-selections-expected.txt:
  • editing/selection/expanding-selections2-expected.txt:
  • editing/selection/extend-by-character-001-expected.txt:
  • editing/selection/extend-by-character-002-expected.txt:
  • editing/selection/extend-by-character-003-expected.txt:
  • editing/selection/extend-by-character-004-expected.txt:
  • editing/selection/extend-by-character-005-expected.txt:
  • editing/selection/extend-by-character-006-expected.txt:
  • editing/selection/extend-by-sentence-001-expected.txt:
  • editing/selection/extend-by-word-001-expected.txt:
  • editing/selection/extend-by-word-002-expected.txt:
  • editing/selection/fake-doubleclick-expected.txt:
  • editing/selection/fake-drag-expected.txt:
  • editing/selection/iframe-expected.txt:
  • editing/selection/image-before-linebreak-expected.txt:
  • editing/selection/inline-table-expected.txt:
  • editing/selection/leave-requested-block-expected.txt:
  • editing/selection/mixed-editability-1-expected.txt:
  • editing/selection/mixed-editability-3-expected.txt:
  • editing/selection/mixed-editability-4-expected.txt:
  • editing/selection/mixed-editability-5-expected.txt:
  • editing/selection/move-3875618-fix-expected.txt:
  • editing/selection/move-3875641-fix-expected.txt:
  • editing/selection/move-backwords-by-word-001-expected.txt:
  • editing/selection/move-between-blocks-no-001-expected.txt:
  • editing/selection/move-between-blocks-yes-001-expected.txt:
  • editing/selection/move-by-character-001-expected.txt:
  • editing/selection/move-by-character-002-expected.txt:
  • editing/selection/move-by-character-003-expected.txt:
  • editing/selection/move-by-character-004-expected.txt:
  • editing/selection/move-by-character-005-expected.txt:
  • editing/selection/move-by-character-6-expected.txt:
  • editing/selection/move-by-line-001-expected.txt:
  • editing/selection/move-by-line-002-expected.txt:
  • editing/selection/move-by-word-001-expected.txt:
  • editing/selection/previous-line-position-expected.txt:
  • editing/selection/replace-selection-1-expected.txt:
  • editing/selection/replaced-boundaries-1-expected.txt:
  • editing/selection/replaced-boundaries-2-expected.txt:
  • editing/selection/replaced-boundaries-3-expected.txt:
  • editing/selection/select-all-001-expected.txt:
  • editing/selection/select-all-002-expected.txt:
  • editing/selection/select-all-003-expected.txt:
  • editing/selection/select-all-004-expected.txt:
  • editing/selection/select-all-005-expected.txt:
  • editing/selection/select-all-006-expected.txt:
  • editing/selection/select-all-iframe-expected.txt:
  • editing/selection/select-box-expected.txt:
  • editing/selection/select-element-paragraph-boundary-expected.txt:
  • editing/selection/select-missing-image-expected.txt:
  • editing/selection/selection-3748164-fix-expected.txt:
  • editing/selection/skip-non-editable-1-expected.txt:
  • editing/selection/skip-non-editable-2-expected.txt:
  • editing/selection/table-caret-1-expected.txt:
  • editing/selection/table-caret-2-expected.txt:
  • editing/selection/table-caret-3-expected.txt:
  • editing/selection/triple-click-in-pre-expected.txt:
  • editing/selection/unrendered-001-expected.txt:
  • editing/selection/unrendered-002-expected.txt:
  • editing/selection/unrendered-003-expected.txt:
  • editing/selection/unrendered-004-expected.txt:
  • editing/selection/unrendered-005-expected.txt:
  • editing/selection/unrendered-space-expected.txt:
  • editing/spelling/spelling-expected.txt:
  • editing/style/apple-style-editable-mix-expected.txt:
  • editing/style/block-style-001-expected.txt:
  • editing/style/block-style-002-expected.txt:
  • editing/style/block-style-003-expected.txt:
  • editing/style/block-style-004-expected.txt:
  • editing/style/block-style-005-expected.txt:
  • editing/style/block-style-006-expected.txt:
  • editing/style/block-styles-007-expected.txt:
  • editing/style/create-block-for-style-001-expected.txt:
  • editing/style/create-block-for-style-002-expected.txt:
  • editing/style/create-block-for-style-003-expected.txt:
  • editing/style/create-block-for-style-004-expected.txt:
  • editing/style/create-block-for-style-005-expected.txt:
  • editing/style/create-block-for-style-006-expected.txt:
  • editing/style/create-block-for-style-007-expected.txt:
  • editing/style/create-block-for-style-008-expected.txt:
  • editing/style/create-block-for-style-009-expected.txt:
  • editing/style/create-block-for-style-010-expected.txt:
  • editing/style/create-block-for-style-011-expected.txt:
  • editing/style/create-block-for-style-012-expected.txt:
  • editing/style/create-block-for-style-013-expected.txt:
  • editing/style/designmode-expected.txt:
  • editing/style/non-inheritable-styles-expected.txt:
  • editing/style/relative-font-size-change-001-expected.txt:
  • editing/style/relative-font-size-change-002-expected.txt:
  • editing/style/relative-font-size-change-003-expected.txt:
  • editing/style/relative-font-size-change-004-expected.txt:
  • editing/style/remove-underline-across-paragraph-expected.txt:
  • editing/style/remove-underline-across-paragraph-in-bold-expected.txt:
  • editing/style/remove-underline-after-paragraph-expected.txt:
  • editing/style/remove-underline-after-paragraph-in-bold-expected.txt:
  • editing/style/remove-underline-expected.txt:
  • editing/style/remove-underline-from-stylesheet-expected.txt:
  • editing/style/remove-underline-in-bold-expected.txt:
  • editing/style/smoosh-styles-001-expected.txt:
  • editing/style/smoosh-styles-002-expected.txt:
  • editing/style/smoosh-styles-003-expected.txt:
  • editing/style/style-3681552-fix-001-expected.txt:
  • editing/style/style-3681552-fix-002-expected.txt:
  • editing/style/style-3690704-fix-expected.txt:
  • editing/style/style-3998892-fix-expected.txt:
  • editing/style/style-boundary-001-expected.txt:
  • editing/style/style-boundary-002-expected.txt:
  • editing/style/style-boundary-003-expected.txt:
  • editing/style/style-boundary-004-expected.txt:
  • editing/style/style-boundary-005-expected.txt:
  • editing/style/table-selection-expected.txt:
  • editing/style/typing-style-001-expected.txt:
  • editing/style/typing-style-002-expected.txt:
  • editing/style/typing-style-003-expected.txt:
  • editing/style/unbold-in-bold-expected.txt:
  • editing/style/underline-expected.txt:
  • editing/undo/4063751-expected.txt:
  • editing/undo/redo-typing-001-expected.txt:
  • editing/undo/undo-iframe-location-change-expected.txt:
  • editing/undo/undo-misspellings-expected.txt:
  • editing/undo/undo-typing-001-expected.txt:
  • editing/unsupported-content/list-delete-001-expected.txt:
  • editing/unsupported-content/list-delete-002-expected.txt:
  • editing/unsupported-content/list-delete-003-expected.txt:
  • editing/unsupported-content/list-type-after-expected.txt:
  • editing/unsupported-content/list-type-before-expected.txt:
  • editing/unsupported-content/table-delete-001-expected.txt:
  • editing/unsupported-content/table-delete-002-expected.txt:
  • editing/unsupported-content/table-delete-003-expected.txt:
  • editing/unsupported-content/table-type-after-expected.txt:
  • editing/unsupported-content/table-type-before-expected.txt:
  • fast/forms/focus-selection-input-expected.txt:

WebCore:

Reviewed by Hyatt.

Covered by editing tests.

  • dom/Document.cpp: (WebCore::Document::setFocusedNode): Moved the call to Editor::didBeginEditing() back into here.
  • dom/Element.cpp: (WebCore::Element::updateFocusAppearance): Removed the call to didBeginEditing().
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::updateFocusAppearance): Ditto.
07:02 Changeset [20949] by bdash
  • 3 edits
    3 adds in trunk

2007-04-19 Mark Rowe <mrowe@apple.com>

Reviewed by Darin.

Fix http://bugs.webkit.org/show_bug.cgi?id=13401
Bug 13401: Reproducible crash calling myArray.sort(compareFn) from within
a sort comparison function

  • kjs/array_object.cpp: (ArrayInstance::sort): Save/restore the static variables around calls to qsort to ensure nested calls to ArrayInstance::sort behave correctly.

2007-04-19 Mark Rowe <mrowe@apple.com>

Reviewed by Darin.

Test for http://bugs.webkit.org/show_bug.cgi?id=13401
Bug 13401: Reproducible crash calling myArray.sort(compareFn) from within
a sort comparison function

  • fast/js/array-sort-reentrance-expected.txt: Added.
  • fast/js/array-sort-reentrance.html: Added.
  • fast/js/resources/array-sort-reentrance.js: Added.
06:09 Changeset [20948] by weinig
  • 7 edits
    2 adds in trunk

LayoutTests:

Reviewed by Darin.

  • editing/execCommand/arguments-combinations-expected.txt: Added.
  • editing/execCommand/arguments-combinations.html: Added.

WebCore:

Reviewed by Darin.

Convert undefined and null to a null string for third argument of
execCommand();

Test: editing/execCommand/arguments-combinations.html

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/kjs_binding.cpp: (KJS::valueToStringWithUndefinedOrNullCheck):
  • bindings/js/kjs_binding.h:
  • bindings/scripts/CodeGeneratorJS.pm:
  • dom/Document.idl:
05:58 Changeset [20947] by bdash
  • 1 copy in tags/Safari-4522.5.6/WebKit

New tag (part 2).

05:56 Changeset [20946] by bdash
  • 1 add in tags/Safari-4522.5.6

New tag (part 1).

05:54 Changeset [20945] by bdash
  • 1 edit in branches/Safari-522/WebKit/Configurations/Version.xcconfig

Versioning.

01:53 Changeset [23320] by aroben
  • 2 edits in branches/WindowsMerge/LayoutTests
  • win/Skipped: Added a crasher.
01:51 Changeset [20944] by andrew
  • 2 edits in trunk/WebCore

Reviewed by hyatt.

  • WebCoreSources.bkl: Remove obsolete source file from build.
01:23 Changeset [23319] by aroben
  • 2 edits in branches/WindowsMerge/LayoutTests
  • win/Skipped: Added back the test that wouldn't die.
Note: See TracTimeline for information about the timeline view.