WebKit-https.git
12 years ago Reviewed by Darin and Geoff.
mjs [Mon, 23 Apr 2007 03:28:45 +0000 (03:28 +0000)]
    Reviewed by Darin and Geoff.

        - remove the concept of oversize objects, now that there aren't any (for now
        only enforced with an assert).
        http://bugs.webkit.org/show_bug.cgi?id=13382

        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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21015 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Darin and Geoff.
mjs [Mon, 23 Apr 2007 03:09:30 +0000 (03:09 +0000)]
    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:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21014 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Fix 1% regression on the PLT. Make sure roundToDevicePixels does no
hyatt [Mon, 23 Apr 2007 03:08:05 +0000 (03:08 +0000)]
    Fix 1% regression on the PLT.  Make sure roundToDevicePixels does no
        work when no scale is in effect.

        Reviewed by mjs

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21013 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Oliver.
darin [Mon, 23 Apr 2007 00:44:34 +0000 (00:44 +0000)]
    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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21012 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Darin.
thatcher [Mon, 23 Apr 2007 00:38:54 +0000 (00:38 +0000)]
    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

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21011 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Maciej.
darin [Sun, 22 Apr 2007 23:14:59 +0000 (23:14 +0000)]
    Reviewed by Maciej.

        - fix http://bugs.webkit.org/show_bug.cgi?id=5196
          <rdar://problem/4537384> input type=file fields with style=display:none do not post
          their values (5196)

        - fix http://bugs.webkit.org/show_bug.cgi?id=8248
          Can not clear file input field

        * 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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21010 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Hyatt.
darin [Sun, 22 Apr 2007 23:12:29 +0000 (23:12 +0000)]
    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):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21009 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
darin [Sun, 22 Apr 2007 22:57:21 +0000 (22:57 +0000)]
LayoutTests:

        Reviewed by Tim Hatcher.

        - test for http://bugs.webkit.org/show_bug.cgi?id=13439
          4 problems found in dashboard-region parser and serializer

        * 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.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13439
          4 problems found in dashboard-region parser and serializer

        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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21008 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Mitz.
thatcher [Sun, 22 Apr 2007 22:12:00 +0000 (22:12 +0000)]
    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.

        * WebInspector/webInspector/treeoutline.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21007 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Mitz.
thatcher [Sun, 22 Apr 2007 22:05:48 +0000 (22:05 +0000)]
    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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21006 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
darin [Sun, 22 Apr 2007 17:17:02 +0000 (17:17 +0000)]
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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21004 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Darin.
ap [Sun, 22 Apr 2007 08:23:55 +0000 (08:23 +0000)]
    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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21003 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
andrew [Sun, 22 Apr 2007 03:15:17 +0000 (03:15 +0000)]
LayoutTests:
2007-04-21  Mitz Pettel  <mitz@webkit.org>

        Reviewed by Darin.

        - repaint test for http://bugs.webkit.org/show_bug.cgi?id=13391
          REGRESSION (r18819): Incomplete repaint of button text

        * 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.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13391
          REGRESSION (r18819): Incomplete repaint of button text

        Test: fast/repaint/control-clip.html

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

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::computeAbsoluteRepaintRect):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21002 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Adam.
darin [Sun, 22 Apr 2007 01:41:26 +0000 (01:41 +0000)]
    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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21001 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Oliver.
darin [Sat, 21 Apr 2007 23:46:57 +0000 (23:46 +0000)]
    Reviewed by Oliver.

        - fix some problems I ran into using the inspector

        * WebInspector/webInspector/inspector.js: Add some null checks.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21000 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Oliver.
darin [Sat, 21 Apr 2007 23:46:07 +0000 (23:46 +0000)]
    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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20999 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Fix for bug 13432, determineFlowSpacing is O(n^2).
hyatt [Sat, 21 Apr 2007 22:31:09 +0000 (22:31 +0000)]
    Fix for bug 13432, determineFlowSpacing is O(n^2).

        Reviewed by aroben

        * rendering/InlineBox.cpp:
        (WebCore::InlineBox::nextOnLineExists):
        (WebCore::InlineBox::prevOnLineExists):
        * rendering/InlineBox.h:
        (WebCore::InlineBox::InlineBox):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20998 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-21 Lamar Goddard <lamargoddard@gmail.com>
ap [Sat, 21 Apr 2007 09:38:59 +0000 (09:38 +0000)]
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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20997 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Darin.
ap [Sat, 21 Apr 2007 08:50:29 +0000 (08:50 +0000)]
    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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20996 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-21 Mitz Pettel <mitz@webkit.org>
bdash [Sat, 21 Apr 2007 08:20:39 +0000 (08:20 +0000)]
2007-04-21  Mitz Pettel  <mitz@webkit.org>

        Reviewed by Darin.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13353
          REGRESSION (r20754-20766): Textarea does not resize when scrollbar is present

        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.

        - test for http://bugs.webkit.org/show_bug.cgi?id=13353
          REGRESSION (r20754-20766): Textarea does not resize when scrollbar is present

        * 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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20995 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-21 Mitz Pettel <mitz@webkit.org>
bdash [Sat, 21 Apr 2007 08:17:09 +0000 (08:17 +0000)]
2007-04-21  Mitz Pettel  <mitz@webkit.org>

        Reviewed by Darin.

        - http://bugs.webkit.org/show_bug.cgi?id=13350
          Build Ahem into DumpRenderTree

        * 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.

        - http://bugs.webkit.org/show_bug.cgi?id=13350
          Build Ahem into DumpRenderTree

        * quality/testing.html: Removed the requirement to download and install
        Ahem for running the tests.
        * quality/testwriting.html: Added information about Ahem.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20994 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-21 Mitz Pettel <mitz@webkit.org>
bdash [Sat, 21 Apr 2007 08:14:25 +0000 (08:14 +0000)]
2007-04-21  Mitz Pettel  <mitz@webkit.org>

        Reviewed by Darin.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13417
          Repro crash when the first argument to getMatchedCSSRules is not an element

        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.

        - test for http://bugs.webkit.org/show_bug.cgi?id=13417
          Repro crash when the first argument to getMatchedCSSRules is not an element

        * fast/dom/Window/getMatchedCSSRules-null-crash-expected.txt: Added.
        * fast/dom/Window/getMatchedCSSRules-null-crash.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20993 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-21 Mitz Pettel <mitz@webkit.org>
bdash [Sat, 21 Apr 2007 08:12:26 +0000 (08:12 +0000)]
2007-04-21  Mitz Pettel  <mitz@webkit.org>

        Reviewed by Darin.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13416
          Repro crash after referencing the user stylesheet from JavaScript

        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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20992 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-21 Mitz Pettel <mitz@webkit.org>
bdash [Sat, 21 Apr 2007 08:09:45 +0000 (08:09 +0000)]
2007-04-21  Mitz Pettel  <mitz@webkit.org>

        Reviewed by Adam.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13428
          REGRESSION (r20973-r20976): Failing ecma/Array/15.4.4.5-3.js

        - fix http://bugs.webkit.org/show_bug.cgi?id=13429
          REGRESSION (r20973-r20976): Crashing in fast/dom/plugin-attributes-enumeration.html

        * kjs/array_object.cpp:
        (ArrayInstance::sort): Free the old storage, not the new one.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20991 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-21 MorganL <morganl.webkit@yahoo.com>
bdash [Sat, 21 Apr 2007 08:08:41 +0000 (08:08 +0000)]
2007-04-21  MorganL  <morganl.webkit@yahoo.com>

        Reviewed by Adam.

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

        * page/Frame.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20990 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-21 Alp Toker <alp@atoker.com>
bdash [Sat, 21 Apr 2007 07:51:46 +0000 (07:51 +0000)]
2007-04-21  Alp Toker  <alp@atoker.com>

        Gdk build fix.

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

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20989 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFixes the build.
thatcher [Sat, 21 Apr 2007 06:43:48 +0000 (06:43 +0000)]
Fixes the build.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20988 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Darin.
thatcher [Sat, 21 Apr 2007 06:14:51 +0000 (06:14 +0000)]
    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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20986 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Adam.
bdakin [Sat, 21 Apr 2007 01:00:07 +0000 (01:00 +0000)]
    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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20982 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
beidson [Sat, 21 Apr 2007 00:26:18 +0000 (00:26 +0000)]
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

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20981 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Bug 13424, firstLineStyle and verticalPositionHint together take
hyatt [Sat, 21 Apr 2007 00:24:43 +0000 (00:24 +0000)]
    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):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20980 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Not reviewed, build fix.
mjs [Fri, 20 Apr 2007 22:50:45 +0000 (22:50 +0000)]
    Not reviewed, build fix.

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

        * pcre/pcre_compile.c:
        (compile_branch):
        (pcre_compile2):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20977 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Darin.
aroben [Fri, 20 Apr 2007 22:33:36 +0000 (22:33 +0000)]
    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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20976 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-20 Peter Kasting <pkasting@google.com>
oliver [Fri, 20 Apr 2007 22:26:55 +0000 (22:26 +0000)]
2007-04-20  Peter Kasting  <pkasting@google.com>

        Reviewed by Oliver.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13420

        * platform/TextEncodingRegistry.cpp:
        (WebCore::addToTextEncodingNameMap): Change a pointer comparison to a
        strcmp(), since the strings here are not necessarily
        pointer-equivalent.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20975 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Darin.
mjs [Fri, 20 Apr 2007 22:20:15 +0000 (22:20 +0000)]
    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:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20974 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Darin.
mjs [Fri, 20 Apr 2007 22:00:06 +0000 (22:00 +0000)]
    Reviewed by Darin.

        - bump optimization flags up to -O3 for 1% JS iBench speed improvement

        * Configurations/Base.xcconfig:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20973 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
darin [Fri, 20 Apr 2007 21:52:14 +0000 (21:52 +0000)]
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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20972 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-20 Mark Rowe <mrowe@apple.com>
bdash [Fri, 20 Apr 2007 08:47:42 +0000 (08:47 +0000)]
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):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20971 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-20 Mark Rowe <mrowe@apple.com>
bdash [Fri, 20 Apr 2007 07:50:14 +0000 (07:50 +0000)]
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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20970 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Maciej.
andersca [Fri, 20 Apr 2007 07:13:24 +0000 (07:13 +0000)]
    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:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20969 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-19 Alp Toker <alp@atoker.com>
bdash [Fri, 20 Apr 2007 06:54:25 +0000 (06:54 +0000)]
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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20968 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Fix for bug 13208, implement word-break. This patch produces a partial
hyatt [Fri, 20 Apr 2007 05:02:19 +0000 (05:02 +0000)]
    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):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20967 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-20 Mark Rowe <mrowe@apple.com>
bdash [Fri, 20 Apr 2007 04:59:28 +0000 (04:59 +0000)]
2007-04-20  Mark Rowe  <mrowe@apple.com>

        Qt build fix for FreeBSD.

        * WebCore.pro: FreeBSD needs HAVE_PTHREAD_NP_H defined.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20966 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-19 Oliver Hunt <oliver@apple.com>
oliver [Fri, 20 Apr 2007 02:50:14 +0000 (02:50 +0000)]
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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20965 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-19 Mitz Pettel <mitz@webkit.org>
bdash [Fri, 20 Apr 2007 02:09:35 +0000 (02:09 +0000)]
2007-04-19  Mitz Pettel  <mitz@webkit.org>

        Reviewed by Darin.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13403
          REGRESSION (r18875-r18899): Can no longer type into search form field after searching and then clicking "back"

        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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20964 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-19 Mitz Pettel <mitz@webkit.org>
bdash [Fri, 20 Apr 2007 02:08:01 +0000 (02:08 +0000)]
2007-04-19  Mitz Pettel  <mitz@webkit.org>

        Rubber-stamped by Adam.

        - http://bugs.webkit.org/show_bug.cgi?id=13412
          Replace abe.jpg with a PNG file

        * 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:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20963 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
justing [Fri, 20 Apr 2007 01:53:22 +0000 (01:53 +0000)]
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:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20962 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
justing [Fri, 20 Apr 2007 00:08:50 +0000 (00:08 +0000)]
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:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20960 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Darin.
andrew [Thu, 19 Apr 2007 22:35:06 +0000 (22:35 +0000)]
    Reviewed by Darin.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13336
          REGRESSION (r20646): editing/execCommand/hilitecolor.html crashes under guardMalloc

        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):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20959 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
justing [Thu, 19 Apr 2007 20:27:47 +0000 (20:27 +0000)]
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:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20958 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
bdakin [Thu, 19 Apr 2007 19:58:20 +0000 (19:58 +0000)]
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:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20957 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
andersca [Thu, 19 Apr 2007 19:19:16 +0000 (19:19 +0000)]
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:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20954 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago - review suggestion for rdar://5145011 code change
pyeh [Thu, 19 Apr 2007 18:56:25 +0000 (18:56 +0000)]
    - 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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20953 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago <rdar://problem/5145011> Allow attachment view of web object to handle access...
pyeh [Thu, 19 Apr 2007 18:21:06 +0000 (18:21 +0000)]
    <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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20952 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by John.
andersca [Thu, 19 Apr 2007 16:47:51 +0000 (16:47 +0000)]
    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]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20951 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
weinig [Thu, 19 Apr 2007 14:47:21 +0000 (14:47 +0000)]
LayoutTests:

        Reviewed by Hyatt

        - updated results for http://bugs.webkit.org/show_bug.cgi?id=13291
          REGRESSION (r19595): WebViewDidBeginEditingNotification not posted when focusing with the mouse

        * 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.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13291
          REGRESSION (r19595): WebViewDidBeginEditingNotification not posted when focusing with the mouse

        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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20950 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-19 Mark Rowe <mrowe@apple.com>
bdash [Thu, 19 Apr 2007 14:02:25 +0000 (14:02 +0000)]
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.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20949 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
weinig [Thu, 19 Apr 2007 13:09:49 +0000 (13:09 +0000)]
LayoutTests:

        Reviewed by Darin.

        - Test for http://bugs.webkit.org/show_bug.cgi?id=12249
          FCKeditor: <hr>, <ul> and <ol> have id="undefined"

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

WebCore:

        Reviewed by Darin.

        - Patch for http://bugs.webkit.org/show_bug.cgi?id=12249
          FCKeditor: <hr>, <ul> and <ol> have id="undefined"

        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:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20948 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by hyatt.
andrew [Thu, 19 Apr 2007 08:51:49 +0000 (08:51 +0000)]
    Reviewed by hyatt.

        * WebCoreSources.bkl: Remove obsolete source file from build.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20944 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdd in a missing word.
bdash [Thu, 19 Apr 2007 04:07:55 +0000 (04:07 +0000)]
Add in a missing word.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20943 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-19 Mark Rowe <mrowe@apple.com>
bdash [Thu, 19 Apr 2007 03:02:41 +0000 (03:02 +0000)]
2007-04-19  Mark Rowe  <mrowe@apple.com>

        Reviewed by Oliver and Adam.

        <rdar://problem/5141290> WebAssertions.h is still needed some internal clients.

        * Misc/WebAssertions.h: Added.
        * WebKit.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20941 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-18 Alp Toker <alp@atoker.com>
bdash [Thu, 19 Apr 2007 00:48:10 +0000 (00:48 +0000)]
2007-04-18  Alp Toker  <alp@atoker.com>

        Gdk build fix.  Reviewed by Sam Weinig.

        Track changes to make GdkLauncher work again.

        * WebCoreSources.bkl:
        * platform/gdk/ChromeClientGdk.h:
        * platform/gdk/TemporaryLinkStubs.cpp:
        (ChromeClientGdk::createWindow):
        (ChromeClientGdk::createModalDialog):
        (Editor::markBadGrammar):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20939 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRemoved unintentional garbage left after an #endif in my previous patch
beidson [Thu, 19 Apr 2007 00:42:50 +0000 (00:42 +0000)]
Removed unintentional garbage left after an #endif in my previous patch

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20938 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
beidson [Thu, 19 Apr 2007 00:39:18 +0000 (00:39 +0000)]
LayoutTests:

        Reviewed by Tim

        <rdar://problem/5008925>
        Expose the NSURLConnection delegate willCacheResponse API to WebResourceLoadDelegate

        * http/tests/misc/willCacheResponse-delegate-callback-expected.txt: Added.
        * http/tests/misc/willCacheResponse-delegate-callback.html: Added.

WebCore:

        Reviewed by Tim

        <rdar://problem/5008925>
        Expose the NSURLConnection delegate willCacheResponse API to WebResourceLoadDelegate

        * WebCore.xcodeproj/project.pbxproj: Added ResourceLoaderMac.mm

        * loader/FrameLoaderClient.h: Add the willCacheResponse SPI for WebKit to implement

        * loader/ResourceLoader.h:
        * loader/mac/ResourceLoaderMac.mm: Added.
        (WebCore::ResourceLoader::willCacheResponse): Return the new cachedResponse from the client

        * platform/graphics/svg/SVGImageEmptyClients.h:
        (WebCore::SVGEmptyFrameLoaderClient::willCacheResponse): Stub

        * platform/network/ResourceHandleClient.h:
        (WebCore::ResourceHandleClient::willCacheResponse):  Return the new cachedResponse from the client

        * platform/network/mac/ResourceHandleMac.mm:
        (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]): Call to get the new
          cachedURLResponse before calling for the cache policy

WebKit:

        Reviewed by Tim

        <rdar://problem/5008925>
        Expose the NSURLConnection delegate willCacheResponse API to WebResourceLoadDelegate

        * WebCoreSupport/WebFrameLoaderClient.h:
        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::willCacheResponse): Call
          [WebResourceLoadDelegate webView:resource:willCacheResponse:fromDataSource:];

        * WebView/WebView.mm:
        (-[WebView _cacheResourceLoadDelegateImplementations]): Pull out the willCacheResponse impl

        * WebView/WebViewPrivate.h: Add WebResourceLoadDelegatePrivate category for this new SPI

WebKitTools:

        Reviewed by Tim

        <rdar://problem/5008925>
        Expose the NSURLConnection delegate willCacheResponse API to WebResourceLoadDelegate

        * DumpRenderTree/ResourceLoadDelegate.m:
        (-[ResourceLoadDelegate webView:resource:willCacheResponse:fromDataSource:]):
          Add the willCacheResponse delegate call

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20937 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Hyatt.
darin [Thu, 19 Apr 2007 00:33:29 +0000 (00:33 +0000)]
    Reviewed by Hyatt.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13375
          REGRESSION (r20901): failing fast/overflow/scrollRevealButton.html

        * dom/Document.cpp: (WebCore::Document::updateLayout):
        If we have a parent frame, update its layout too.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20936 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by David Kilzer.
aroben [Wed, 18 Apr 2007 23:59:43 +0000 (23:59 +0000)]
    Reviewed by David Kilzer.

        * Scripts/webkitdirs.pm:
        (sub setConfiguration): Added an optional argument to set the
        configuration instead of parsing it from ARGV.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20935 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Adam
sullivan [Wed, 18 Apr 2007 21:11:46 +0000 (21:11 +0000)]
    Reviewed by Adam

        - fixed <rdar://problem/5103009> REGRESSION: Activity window shows blank name for untitled pages

        * WebView/WebHTMLRepresentation.mm:
        (-[WebHTMLRepresentation title]):
        return nil for empty string, to match old behavior

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20934 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by AP.
kmccullo [Wed, 18 Apr 2007 20:05:06 +0000 (20:05 +0000)]
    Reviewed by AP.

        - Consolidated encoding tests.

        * fast/encoding/char-decoding-expected.txt:
        * fast/encoding/char-decoding.html:
        * fast/encoding/charset-x-nextstep-expected.txt: Removed.
        * fast/encoding/charset-x-nextstep.html: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20933 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-18 Alp Toker <alp@atoker.com>
bdash [Wed, 18 Apr 2007 14:55:35 +0000 (14:55 +0000)]
2007-04-18  Alp Toker  <alp@atoker.com>

        Gdk build fix.  Reviewed by Mark.

        * loader/gdk/FrameLoaderClientGdk.cpp:
        (WebCore::FrameLoaderClientGdk::loadedFromCachedPage):
        (WebCore::FrameLoaderClientGdk::setDocumentViewFromCachedPage):
        (WebCore::FrameLoaderClientGdk::saveDocumentViewToCachedPage):
        * loader/gdk/FrameLoaderClientGdk.h:
        * platform/gdk/TemporaryLinkStubs.cpp:
        (CachedPage::close): Track PageCache to CachedPage refactoring.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20932 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-17 Mitz Pettel <mitz@webkit.org>
bdash [Wed, 18 Apr 2007 04:58:54 +0000 (04:58 +0000)]
2007-04-17  Mitz Pettel  <mitz@webkit.org>

        Reviewed by Darin.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13369
          REGRESSION (r13366): Invisible table cell background is painted

        Test: fast/table/invisible-cell-background.html

        * rendering/RenderTableCell.cpp:
        (WebCore::RenderTableCell::paintBackgroundsBehindCell): Don't paint any
        background if the cell is not visible. This behavior matches WinIE and Opera.

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

        Reviewed by Darin.

        - pixel test for http://bugs.webkit.org/show_bug.cgi?id=13369
          REGRESSION (r13366): Invisible table cell background is painted

        * fast/table/invisible-cell-background-expected.checksum: Added.
        * fast/table/invisible-cell-background-expected.png: Added.
        * fast/table/invisible-cell-background-expected.txt: Added.
        * fast/table/invisible-cell-background.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20931 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRolling out my previous checkin, as the compiler bug still exists on Leopard.
justing [Wed, 18 Apr 2007 03:50:25 +0000 (03:50 +0000)]
Rolling out my previous checkin, as the compiler bug still exists on Leopard.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20930 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago * Scripts/find-included-framework-headers: Search Obj-C and Obj-C++
aroben [Wed, 18 Apr 2007 03:22:32 +0000 (03:22 +0000)]
    * Scripts/find-included-framework-headers: Search Obj-C and Obj-C++
        files as well.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20929 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Added a simple shell script to find all the headers from a specified
aroben [Wed, 18 Apr 2007 03:18:43 +0000 (03:18 +0000)]
    Added a simple shell script to find all the headers from a specified
        framework or frameworks that are included by files beneath the working
        directory.

        * Scripts/find-included-framework-headers: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20928 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
justing [Wed, 18 Apr 2007 02:23:47 +0000 (02:23 +0000)]
WebCore:

        Reviewed by adam

        Removed workarounds for compiler bug 4213314.

        * platform/mac/CursorMac.mm:
        (WebCore::leakNamedCursor):
        * platform/mac/ScrollViewMac.mm:
        (WebCore::ScrollView::resizeContents):
        (WebCore::ScrollView::contentsToWindow):
        (WebCore::ScrollView::windowToContents):

WebKit:

        Reviewed by adam

        Removed workarounds for compiler bug 4213314.

        * Misc/WebNSAttributedStringExtras.mm:
        (+[NSAttributedString _web_attributedStringFromRange:]):
        * WebKit.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20927 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
justing [Wed, 18 Apr 2007 01:20:44 +0000 (01:20 +0000)]
LayoutTests:

        Reviewed by harrison

        <rdar://problem/5119244>
        Crash when indenting a selected ToDo

        * editing/execCommand/5119244-expected.checksum: Added.
        * editing/execCommand/5119244-expected.png: Added.
        * editing/execCommand/5119244-expected.txt: Added.
        * editing/execCommand/5119244.html: Added.

WebCore:

        Reviewed by harrison

        <rdar://problem/5119244>
        Crash when indenting a selected ToDo

        indentRegion() was using the old (incorrect) editable root
        getter, which returned null for a valid, editable position,
        causing the crash.

        * editing/IndentOutdentCommand.cpp:
        (WebCore::IndentOutdentCommand::indentRegion):
        The editable root for a position is editableRootForPosition(p),
        not p.node()->rootEditableElement(), because of VisiblePositions
        before/after tables, replaced elements and others.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20926 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
justing [Wed, 18 Apr 2007 00:13:15 +0000 (00:13 +0000)]
LayoutTests:

        Reviewed by hyatt

        <rdar://problem/5138441>
        GoogleDocs: Indented text looks like text that's been Quoted

        Demonstrates the bug:
        * editing/execCommand/5138441-expected.checksum: Added.
        * editing/execCommand/5138441-expected.png: Added.
        * editing/execCommand/5138441-expected.txt: Added.
        * editing/execCommand/5138441.html: Added.

        Added inline style declarations for indent blockquotes
        to match those that the engine creates:
        * editing/execCommand/indent-selection.html:
        * editing/execCommand/outdent-selection.html:

WebCore:

        Reviewed by hyatt

        <rdar://problem/5138441>
        GoogleDocs: Indented text looks like text that's been Quoted

        GoogleDocs uses FormatBlock, blockquotes and a style rule
        for blockquotes to implement a "Quote Text" feature.  Styles
        intended only for those blockquotes were added to the
        blockquotes that we use for indenting.

        * css/html4.css: Removed the webkit-indent-blockquote class rule.
        * editing/IndentOutdentCommand.cpp:
        (WebCore::createIndentBlockquoteElement): Use custom margins
        and turn off border and padding to override author rules for
        blockquotes.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20925 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Tim Hatcher
sullivan [Tue, 17 Apr 2007 23:00:07 +0000 (23:00 +0000)]
    Reviewed by Tim Hatcher

        - fixed <rdar://problem/5138492> Safari doesn't remember some changes to the PDF scale and display mode

        Some of the user interactions that could change the PDF scale and display mode were not going through
        the proxy mechanism in WebPDFView that updates preferences. Now we also listen to PDFKit notifications
        in order to catch the other cases.

        * WebView/WebPDFView.h:
        new _ignoreScaleAndDisplayModeNotifications and _updatePreferencesTimer ivars

        * WebView/WebPDFView.mm:
        (-[WebPDFView setPDFDocument:]):
        ignore scale and display mode notifications while we're setting up a fresh document
        (-[WebPDFView dealloc]):
        cancel the new timer (which releases it)
        (-[WebPDFView viewDidMoveToWindow]):
        listen for two PDFKit notifications
        (-[WebPDFView viewWillMoveToWindow:]):
        stop listening to the two PDFKit notifications
        (-[WebPDFView _applyPDFDefaults]):
        white space change
        (-[WebPDFView _cancelUpdatePreferencesTimer]):
        invalidate, release, and nil out the timer
        (-[WebPDFView _scaleOrDisplayModeChanged:]):
        update preferences soon, unless deliberately ignoring these notifications
        (-[WebPDFView _updatePreferencesNow]):
        cancel timer, then save data to preferences (code for saving the data was extracted from
        -[PDFPrefUpdatingProxy forwardInvocation:])
        (-[WebPDFView _updatePreferencesSoon]):
        use timer to consolidate multiple calls into one action; formerly we were setting preferences
        multiple times for some atomic user actions
        (-[PDFPrefUpdatingProxy forwardInvocation:]):
        call _updatePreferencesSoon where we used to immediately set preferences

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20924 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
justing [Tue, 17 Apr 2007 20:27:58 +0000 (20:27 +0000)]
LayoutTests:

        Reviewed by darin

        <rdar://problem/5136770>
        Gmail Editor: Hang when turning a particular multi-line selection into a list

        Demonstrates the bug:
        * editing/execCommand/5136770-expected.checksum: Added.
        * editing/execCommand/5136770-expected.png: Added.
        * editing/execCommand/5136770-expected.txt: Added.
        * editing/execCommand/5136770.html: Added.

        Added placeholders in empty list items:
        * editing/execCommand/4747450-expected.txt:
        * editing/execCommand/insert-list-empty-div-expected.txt:
        * editing/execCommand/4917055-expected.txt:

        A horizontal rule pushed into a list item appears *before*
        the list marker in the render tree, although, the new results
        look more correct (13376):
        * editing/execCommand/create-list-with-hr-expected.checksum:
        * editing/execCommand/create-list-with-hr-expected.png:
        * editing/execCommand/create-list-with-hr-expected.txt:
        * editing/execCommand/create-list-with-hr.html:

WebCore:

        Reviewed by darin

        <rdar://problem/5136770>
        Gmail Editor: Hang when turning a particular multi-line selection into a list

        When InsertListCommand pushes content into list items,
        it creates an empty list item and then calls moveParagraphs.
        But moveParagraphs' selection preservation code fails when
        it encounters empty list items (list items w/o placeholders).
        This causes InsertListCommand to lose track of where it has
        already been performed, which causes the hang.

        * editing/InsertListCommand.cpp:
        (WebCore::InsertListCommand::doApply): Use brs to hold open
        empty list items.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20923 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Oops, rolled that last change out. I'll redo it again later after making
darin [Tue, 17 Apr 2007 19:58:16 +0000 (19:58 +0000)]
    Oops, rolled that last change out. I'll redo it again later after making
        som additional refinments.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20921 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Kevin Decker
sullivan [Tue, 17 Apr 2007 19:00:43 +0000 (19:00 +0000)]
    Reviewed by Kevin Decker

        - fixed <rdar://problem/4184640> "Look Up in Dictionary" item is always disabled for PDF pages

        * WebView/WebPDFView.mm:
        (-[WebPDFView validateUserInterfaceItem:]):
        enable "Look Up in Dictionary" only if we're using a version of PDFKit that knows how to do so
        (-[WebPDFView _canLookUpInDictionary]):
        use respondsToSelector to test whether the current version of PDFKit supports this non-API feature
        (-[WebPDFView _lookUpInDictionaryFromMenu:]):
        implement this method, which WebKit includes in the context menu when there's selected text
        (-[WebPDFView _menuItemsFromPDFKitForEvent:]):
        updated comment for this change

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20920 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Brady.
darin [Tue, 17 Apr 2007 18:44:21 +0000 (18:44 +0000)]
    Reviewed by Brady.

        - a few baby steps to try to make lockHistory and userGesture less confusing

        * page/FrameLoadRequest.h:
        (WebCore::FrameLoadRequest::FrameLoadRequest): Add initialization of m_isUserGesture
        to true.
        (WebCore::FrameLoadRequest::shouldLockHistory): Renamed from lockHistory to avoid having
        a getter that sounds like a verb phrase.
        (WebCore::FrameLoadRequest::setShouldLockHistory): Ditto.
        (WebCore::FrameLoadRequest::isUserGesture): Added.
        (WebCore::FrameLoadRequest::setIsUserGesture): Ditto.

        * loader/FrameLoader.h: Remove userGesture parameter from load that takes
        FrameLoadRequest. Remove default values for lockHistory and userGesture parameters,
        since that just makes it more likely we'll forget to pass them in. Remove one of
        the overloads of urlSelected, since it's only called one place.

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::createWindow): Remove userGesture parameter, relying on
        the true default in FrameLoadRequest.
        (WebCore::FrameLoader::urlSelected): Call setShouldLockHistory and setIsUserGesture
        on the FrameLoadRequest, and call load directly; also eliminate the other urlSelected
        overload since this was the only place it was called.
        (WebCore::FrameLoader::load): Remove userGesture parameter, relying on the true
        default in FrameLoadRequest. In the other overload, clean up logic to eliminate the
        argsReferrer variable and get rid of the userGesture parameter, using the value from
        FrameLoadRequest.
        (WebCore::FrameLoader::submitForm): Remove userGesture parameter, relying on the value
        in the FrameLoadRequest. This actually changes behavior.

        * bindings/js/kjs_html.cpp: (KJS::JSHTMLDocument::putValueProperty): Pass
        false for userGesture explicitly instead of relying on default argument.

        * page/ContextMenuController.cpp: (WebCore::ContextMenuController::contextMenuItemSelected):
        Remove userGesture parameter, relying on the true default in FrameLoadRequest.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20919 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoMore elegant fix for the 64-bit build failure.
thatcher [Tue, 17 Apr 2007 17:49:16 +0000 (17:49 +0000)]
More elegant fix for the 64-bit build failure.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20918 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
ddkilzer [Tue, 17 Apr 2007 01:15:36 +0000 (01:15 +0000)]
WebCore:

        Reviewed by NOBODY (fixed misspelling).

        * manual-tests/containing-block-position-chage.html: Removed.
        * manual-tests/containing-block-position-change.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20914 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago64-bit build fix.
thatcher [Tue, 17 Apr 2007 00:25:29 +0000 (00:25 +0000)]
64-bit build fix.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20913 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
justing [Mon, 16 Apr 2007 21:06:46 +0000 (21:06 +0000)]
LayoutTests:

        Reviewed by darin

        <rdar://problem/5134759>
        GMail Editor: Hang after pasting underlined text multiple times

        Demonstrates the bug:
        * editing/pasteboard/5134759-expected.checksum: Added.
        * editing/pasteboard/5134759-expected.png: Added.
        * editing/pasteboard/5134759-expected.txt: Added.
        * editing/pasteboard/5134759.html: Added.

        A unnecessary extra space was added to an element's
        inline style declaration, because of the way cssText behaves:
        * editing/pasteboard/paste-table-002-expected.txt:

WebCore:

        Reviewed by darin

        <rdar://problem/5134759>
        GMail Editor: Hang after pasting underlined text multiple times

        The moveParagraphs call that ReplaceSelectionCommand
        performs must receive only inline content from createMarkup,
        or else it will result in another call to moveParagraphs
        when it performs the move, resulting in infinite recursion.

        * editing/markup.cpp:
        (WebCore::startMarkup): We were only converting a block to
        an inline if it had an inline style declaration or styles
        coming from matched rules.  Cleaned up this code a bit by
        handling an element's style separately from its other
        attributes.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20912 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago * Drosera/debugger.css: hide the borders for iframes
thatcher [Mon, 16 Apr 2007 18:31:08 +0000 (18:31 +0000)]
    * Drosera/debugger.css: hide the borders for iframes

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20907 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Rubber stamped by Tim Hatcher.
darin [Mon, 16 Apr 2007 18:29:10 +0000 (18:29 +0000)]
    Rubber stamped by Tim Hatcher.

        * WebKit.xcodeproj/project.pbxproj: Added Radar bug number to the error message
        for the "version number ending in 4" check so folks from Apple can find the
        original bug that motivated for this. To summarize what's in that bug, it says that
        <http://my.fedex.com> was failing, that it was because of the OpenCube DHTML Menu,
        and that some other affected sites were not using OpenCube (so the error is presumably
        more widespread).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20906 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago - get layout tests going again
darin [Mon, 16 Apr 2007 16:52:09 +0000 (16:52 +0000)]
    - get layout tests going again

        * page/mac/FrameMac.mm: (WebCore::Frame::setUseSecureKeyboardEntry):
        Replace assertion with a runtime check. We can consider changing it back to
        an assertion some day, but it's not important.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20902 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
darin [Mon, 16 Apr 2007 15:41:04 +0000 (15:41 +0000)]
WebCore:

        Reviewed by John Sullivan.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13303
          <rdar://problem/5126341> REGRESSION: controls in a background Safari window
          maintain active appearance if the address bar has focus (13303)

        - fix a related problem where elements could look focused in non-active windows

        - simplify secure keyboard entry logic in Frame::setIsActive

        * WebCore.exp: Add two new symbols for use by WebKit.

        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::dispatchFocusEvent): Call setUseSecureKeyboardEntryWhenActive
        rather than calling setSecureKeyboardEntry directly -- does nothing if the frame is not active.
        (WebCore::HTMLInputElement::dispatchBlurEvent): Ditto.

        * page/Frame.cpp:
        (WebCore::Frame::setUseSecureKeyboardEntryWhenActive): Added. Calls
        setUseSecureKeyboardEntry only if the frame is active, but also stores away the state,
        so that the setIsActive function doesn't have to recompute it.
        (WebCore::Frame::setIsActive): Rewrote all the comments in the function. Removed the code
        to manage control tints, which are not based on the whether the frame is active but rather
        on AppKit's concept of whether the window should have "key appearance". Simplified the
        logic about when to call setUseSecureKeyboardEntry by using the value of
        m_useSecureKeyboardEntryWhenActive.
        (WebCore::FramePrivate::FramePrivate): Initialize m_useSecureKeyboardEntryWhenActive.
        * page/Frame.h: Made setSecureKeyboardEntry private and renamed it to
        setUseSecureKeyboardEntry, removed isSecureKeyboardEntry, and
        added a public setUseSecureKeyboardEntryWhenActive.
        * page/FramePrivate.h: Added m_useSecureKeyboardEntryWhenActive.
        * page/mac/FrameMac.mm: (WebCore::Frame::setUseSecureKeyboardEntry): Added an assertion,
        and removed isSecureKeyboardEntry().

        * page/FrameView.h: Added updateControlTints.
        * page/FrameView.cpp: (WebCore::FrameView::updateControlTints): Added. Code was moved
        here from setIsActive for two reasons: (1) it makes more sense in the view class, and
        (2) it needs to be called at the appropriate time for AppKit, not when active changes.

        * rendering/RenderTheme.cpp: (WebCore::RenderTheme::isFocused): Added an isActive
        check here to match the logic in the implementation of the CSS pseudo-state.
        * rendering/RenderThemeMac.mm:
        (WebCore::RenderThemeMac::updateFocusedState): Use the isFocused function instead of
        repeating the logic here. Removed the "need to add a key window test here" comment.
        (WebCore::RenderThemeMac::controlSupportsTints): Added a comment about the NSCell
        SPI that's related to the _windowChangedKeyState method we now use in WebHTMLView.

WebKit:

        Reviewed by John Sullivan.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13303
          <rdar://problem/5126341> REGRESSION: controls in a background Safari window
          maintain active appearance if the address bar has focus (13303)

        * WebView/WebHTMLView.mm: (-[WebHTMLView _windowChangedKeyState]):
        Added. Calls FrameView::updateControlTints.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20901 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by John Sullivan.
darin [Mon, 16 Apr 2007 15:15:01 +0000 (15:15 +0000)]
    Reviewed by John Sullivan.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13227
          StringImpl::isLower incorrectly assumes islower returns 1 (it can return any non-0)

        * platform/StringImpl.cpp:
        (WebCore::StringImpl::isLower): Based on test application results, changed to use &&
        instead of trying to use & to avoid branches. Use U16_NEXT so we can handle characters
        outside the BMP. Improved comments.
        (WebCore::StringImpl::lower): Improved comments.
        (WebCore::equalIgnoringCase): Changed to use && instead of trying to use & to avoid
        branches. Improved comments. Added an assertion about the assumption we're
        making that characters in the char* are all ASCII.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20900 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdding wx sources and changes to wxWebKit branch.
kevino [Sat, 14 Apr 2007 22:33:17 +0000 (22:33 +0000)]
Adding wx sources and changes to wxWebKit branch.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20893 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
ddkilzer [Sat, 14 Apr 2007 01:26:07 +0000 (01:26 +0000)]
LayoutTests:

        Patch and review by hyatt.  Testing and landing by ddkilzer.

        <rdar://problem/5078866>
        tables don't inherit text-align (in strict mode; they're not supposed to in quirks mode)

        Test tables/mozilla_expected_failures/bugs/bug11384s.html progressed after this fix, so
        it was moved to tables/mozilla/bugs/bug11384s.html.

        * fast/css/table-text-align-quirk-expected.checksum: Added.
        * fast/css/table-text-align-quirk-expected.png: Added.
        * fast/css/table-text-align-quirk-expected.txt: Added.
        * fast/css/table-text-align-quirk.html: Added.
        * fast/css/table-text-align-strict-expected.checksum: Added.
        * fast/css/table-text-align-strict-expected.png: Added.
        * fast/css/table-text-align-strict-expected.txt: Added.
        * fast/css/table-text-align-strict.html: Added.
        * fast/table/border-collapsing/rtl-border-collapsing.html: Replaced "text-align: -khtml-center"
        style with "text-align: center" style.
        * tables/mozilla/bugs/bug11384s-expected.checksum: Added.
        * tables/mozilla/bugs/bug11384s-expected.png: Added.
        * tables/mozilla/bugs/bug11384s-expected.txt: Added.
        * tables/mozilla/bugs/bug11384s.html: Added.
        * tables/mozilla_expected_failures/bugs/bug11384s-expected.checksum: Removed.
        * tables/mozilla_expected_failures/bugs/bug11384s-expected.png: Removed.
        * tables/mozilla_expected_failures/bugs/bug11384s-expected.txt: Removed.
        * tables/mozilla_expected_failures/bugs/bug11384s.html: Removed.

WebCore:

        Patch and review by hyatt.  Testing and landing by ddkilzer.

        <rdar://problem/5078866>
        tables don't inherit text-align (in strict mode; they're not supposed to in quirks mode)

        Test: fast/css/table-text-align-quirk.html
              fast/css/table-text-align-strict.html

        Previous commit (r20731) removed the wrong property from WebCore/css/html4.css.  However,
        when the correct property was removed, it caused tables to inherit alignment properties
        from tags like <center> and <div align="center">.  This is fixed in
        WebCore::CSSStyleSelector::adjustRenderStyle() by special-casing tables to reset the
        text-align property.

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::valueForTextAlign): Renamed KHTML_CENTER, KHTML_LEFT and KHTML_RIGHT to
        WEBKIT_CENTER, WEBKIT_LEFT and WEBKIT_RIGHT.
        * css/cssparser.cpp:
        (WebCore::CSSParser::parseValue): Ditto.
        * css/cssstyleselector.cpp:
        (WebCore::CSSStyleSelector::adjustRenderStyle): Tables should not support -webkit-center,
        -webkit-left or -webkit-right values for text-align, so reset them back to auto.
        * css/html4.css: Removed "text-align: -webkit-auto;" property from tables selector.  It
        was previously added to css/quirks.css in r20731.
        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::determineHorizontalPosition): Renamed KHTML_* to WEBKIT_*.
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::calcHorizontalMargins): Ditto.
        * rendering/RenderFlow.cpp:
        (WebCore::RenderFlow::caretRect): Ditto.
        * rendering/RenderStyle.h: Ditto.
        (WebCore::):
        * rendering/bidi.cpp:
        (WebCore::RenderBlock::computeHorizontalPositionsForLine): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20889 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2007-04-13 Oliver Hunt <oliver@apple.com>
oliver [Sat, 14 Apr 2007 00:57:13 +0000 (00:57 +0000)]
2007-04-13  Oliver Hunt  <oliver@apple.com>

        Reviewed by Adam.

        Due to rdar://problem/5133910 -- WebArchives should not be constructed
        using resource from the cache -- We may try to create a potentially
        incorrect WebArchive when dragging an image multiple times.

        This patch retains the assertion for invalid behaviour, but adds a
        branch to make sure we don't try to do anything with the WebArchive
        in release builds.

        * Misc/WebNSPasteboardExtras.mm:
        (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20888 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by a sanity check
beidson [Fri, 13 Apr 2007 21:47:56 +0000 (21:47 +0000)]
    Reviewed by a sanity check

        My layout test *has* to be http, since dumping history in DRT with hard coded file paths
        will never match up to expected results across machines.

        Lame

        * history/new-window-redirect-history-expected.txt: Removed.
        * history/new-window-redirect-history.html: Removed.
        * history/resources/redirect-1.html: Removed.
        * history/resources/redirect-2.html: Removed.
        * http/tests/navigation/new-window-redirect-history-expected.txt: Added.
        * http/tests/navigation/new-window-redirect-history.html: Added.
        * http/tests/navigation/resources/redirect-1.html: Added.
        * http/tests/navigation/resources/redirect-2.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20883 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Rubberstamped by Anders.
aroben [Fri, 13 Apr 2007 20:34:14 +0000 (20:34 +0000)]
    Rubberstamped by Anders.

        * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.c: #include
        stdio.h so that snprintf is defined.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20879 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
beidson [Fri, 13 Apr 2007 20:28:27 +0000 (20:28 +0000)]
LayoutTests:

        Reviewed by Geoose

        <rdar://problem/4664154> and http://bugs.webkit.org/show_bug.cgi?id=3546

        Layout test that covers opening an empty new window, then starting to navigate around in it

        * history/new-window-redirect-history-expected.txt: Added.
        * history/new-window-redirect-history.html: Added.
        * history/resources/redirect-1.html: Added.
        * history/resources/redirect-2.html: Added.

WebCore:

        Reviewed by Black Sheep

        <rdar://problem/4664154> and http://bugs.webkit.org/show_bug.cgi?id=3546

        When you click on a link that opens in a new window from within gmail, they first create a new window
        with an empty URL, then immediately document.write() into the window to schedule a redirect.

        Since the initial page doesn't have a URL associated with it, a history item never gets created.  The
        reasonable solution?  To actually create the history item after the redirect (in updateHistoryForInternalLoad)

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::addHistoryForCurrentLocation): Updates global and B/F history with a new history item
        (WebCore::FrameLoader::updateHistoryForStandardLoad): Call addHistoryForCurrentLocation
        (WebCore::FrameLoader::updateHistoryForInternalLoad): Call addHistoryForCurrentLocation if there is not already
          a current history item
        * loader/FrameLoader.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20878 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Anders
beidson [Fri, 13 Apr 2007 20:09:15 +0000 (20:09 +0000)]
    Reviewed by Anders

        Add the ability to dump the back/forward history of all windows open at the end of a test

        * DumpRenderTree/DumpRenderTree.m:
        (dumpBackForwardListForWebView): Dump B/F list for the given WebView
        (dump): Call dumpBackForwardListForWebView for each WebView open after the test

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20877 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoLayoutTests:
andersca [Fri, 13 Apr 2007 19:54:13 +0000 (19:54 +0000)]
LayoutTests:

        Reviewed by Brady.

        * plugins/open-and-close-window-with-plugin.html:
        Manage open windows manually for this test.

WebKitTools:

        Reviewed by Brady.

        By default, close any windows that have been opened during a test. This can be overridden by
        calling setCloseRemainingWindowsWhenComplete(false).

        Change the windows set to an array so we can gurantee the enumeration order.

        * DumpRenderTree/DumpRenderTree.m:
        (+[LayoutTestController isSelectorExcludedFromWebScript:]):
        (+[LayoutTestController webScriptNameForSelector:]):
        (-[LayoutTestController setCloseRemainingWindowsWhenComplete:]):
        (runTest):
        (-[DumpRenderTreeWindow initWithContentRect:styleMask:backing:defer:]):
        (-[DumpRenderTreeWindow dealloc]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20876 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Dave Harrison.
thatcher [Fri, 13 Apr 2007 19:13:33 +0000 (19:13 +0000)]
    Reviewed by Dave Harrison.

        <rdar://problem/5132727> Soho Mail build fails because of renamed SPI

        * WebView/WebUIDelegatePrivate.h: define WebMenuItemTagSearchInGoogle as OldWebMenuItemTagSearchWeb

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20874 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Build fix.
ggaren [Fri, 13 Apr 2007 19:12:51 +0000 (19:12 +0000)]
    Build fix.

        * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.c:
        (handleCallback): Explicitly cast the void* returned by malloc.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@20873 268f45cc-cd09-0410-ab3c-d52691b4dbfc