ChangeLog-2011-10-19   [plain text]


2011-10-19  Adam Barth  <abarth@webkit.org>

        Another attempted build fix.  I managed to screw up every line of this file.

        * CodeGenerators.pri:

2011-10-19  Adam Barth  <abarth@webkit.org>

        Attempt to fix the Qt build.

        * CodeGenerators.pri:

2011-10-19  Adam Barth  <abarth@webkit.org>

        Document.cpp shouldn't need to know about every event for every feature
        https://bugs.webkit.org/show_bug.cgi?id=70469

        Reviewed by Eric Seidel.

        make_event_factory.pl generates the implementation of EventFactory
        based on a simple ".in" file.

        * CodeGenerators.pri:
        * DerivedSources.make:
        * GNUmakefile.am:
        * WebCore.gyp/WebCore.gyp:
        * WebCore.gyp/scripts/action_makenames.py:
        * WebCore.xcodeproj/project.pbxproj:
        * dom/Document.cpp:
        (WebCore::Document::createEvent):
        * dom/EventFactory.h: Added.
        * dom/EventFactory.in: Added.
        * dom/make_event_factory.pl: Added.
        (defaultEventPropertyHash):
        (eventHandler):
        (parametersHandler):
        (readNames):
        (readEvents):
        (interfaceForEvent):
        (printCppFile):
        (printLicenseHeader):

2011-10-19  Kentaro Hara  <haraken@chromium.org>

        Added a ConstructorMode check to all existing custom V8 constructors.
        https://bugs.webkit.org/show_bug.cgi?id=70464

        Reviewed by Adam Barth.

        This patch adds the following two lines to all existing custom V8 constructors:

            if (ConstructorMode::current() == ConstructorMode::WrapExistingObject)
                return args.Holder();

        This checks whether a programmer is trying to allocate an object via "new X",
        or C++ is trying to allocate an object via the function template and wrap the
        object with a JS flavor. (See here for more details: bug 70015) In the latter case,
        a constructor callback should not be executed (i.e. should return immediately).

        No new tests. No change in behavior.

        * bindings/v8/custom/V8ArrayBufferCustom.cpp: Added the ConstructorMode check.
        (WebCore::V8ArrayBuffer::constructorCallback):
        * bindings/v8/custom/V8ArrayBufferViewCustom.h: Ditto.
        (WebCore::constructWebGLArray):
        * bindings/v8/custom/V8AudioContextCustom.cpp: Ditto.
        (WebCore::V8AudioContext::constructorCallback):
        * bindings/v8/custom/V8DOMFormDataCustom.cpp: Ditto.
        (WebCore::V8DOMFormData::constructorCallback):
        * bindings/v8/custom/V8DataViewCustom.cpp: Ditto.
        (WebCore::V8DataView::constructorCallback):
        * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp: Ditto.
        (WebCore::v8HTMLAudioElementConstructorCallback):
        * bindings/v8/custom/V8HTMLImageElementConstructor.cpp: Ditto.
        (WebCore::v8HTMLImageElementConstructorCallback):
        * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp: Ditto.
        (WebCore::v8HTMLOptionElementConstructorCallback):
        * bindings/v8/custom/V8MessageChannelConstructor.cpp: Ditto.
        (WebCore::V8MessageChannel::constructorCallback):
        * bindings/v8/custom/V8WebKitMutationObserverCustom.cpp: Ditto.
        (WebCore::V8WebKitMutationObserver::constructorCallback):
        * bindings/v8/custom/V8WebKitPointConstructor.cpp: Ditto.
        (WebCore::V8WebKitPoint::constructorCallback):
        * bindings/v8/custom/V8WebSocketCustom.cpp: Ditto.
        (WebCore::V8WebSocket::constructorCallback):
        * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp: Ditto.
        (WebCore::V8XMLHttpRequest::constructorCallback):

2011-10-19  Carol Szabo  <carol@webkit.org>

        CSS Counters have wrong values
        https://bugs.webkit.org/show_bug.cgi?id=69605

        Reviewed by Darin Adler.

        Test: fast/css/counters/after-continuation.html

        Added a new method for getting the renderer of the "after"
        pseudo-element that handles continuations.
        Hooked up the new method with the CSS counter code.

        * rendering/RenderCounter.cpp:
        (WebCore::rendererOfAfterPseudoElement):
        (WebCore::previousInPreOrder):
        (WebCore::nextInPreOrder):
        * rendering/RenderObject.h:

2011-10-19  Anna Cavender  <annacc@chromium.org>

        Adding some IDL files for <track>.
        https://bugs.webkit.org/show_bug.cgi?id=62887

        Reviewed by Adam Barth.

        Tests:
        MutableTextTrack.idl and addTrack() in HTMLMediaElement.idl are tested by:
        media/track/track-mutable.html

        TextTrack.idl is tested by:
        media/track/track-text-track.html

        TextTrackCue.idl is tested by:
        media/track/track-webvtt-tc006-cue-identifiers.html
        media/track/track-webvtt-tc007-cue-no-id.html
        media/track/track-webvtt-tc008-timings-no-hours.html
        media/track/track-webvtt-tc009-timings-hour.html
        media/track/track-webvtt-tc013-settings.html
        media/track/track-webvtt-tc023-markup.html

        TextTrackCueList.idl is tested by:
        media/track/track-text-track-cue-list.html

        * CMakeLists.txt: Adding files to build systems.
        * CodeGenerators.pri: Adding files to build systems.
        * DerivedSources.cpp: Adding files to build systems.
        * DerivedSources.make: Adding files to build systems.
        * GNUmakefile.list.am: Adding files to build systems.
        * WebCore.gypi: Adding files to build systems.
        * WebCore.pro: Adding files to build systems.
        * WebCore.xcodeproj/project.pbxproj: Adding files to build systems.
        * bindings/gobject/GNUmakefile.am: Adding files to build systems.
        * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp: Adding files to build systems.
        * bindings/js/JSBindingsAllInOne.cpp: Adding files to build systems.

        * bindings/js/JSTextTrackCustom.cpp: Added.
        (WebCore::toJS):

        * bindings/scripts/CodeGeneratorV8.pm:
        (HasCustomToV8Implementation): Special check for TextTrack since V8 can auto-generate
        it, but JS cannot yet.

        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::addTrack): creates and returns a new MutableTextTrack.
        * html/HTMLMediaElement.h: Adding addTrack() function.
        * html/HTMLMediaElement.idl: Adding addTrack() function.
        * html/HTMLTrackElement.cpp:
        (WebCore::HTMLTrackElement::track): Adding track getter.
        * html/HTMLTrackElement.h: Adding track getter.
        * html/HTMLTrackElement.idl: Adding track getter.
        * html/MutableTextTrack.idl: Added.
        * html/TextTrack.idl: Added.
        * html/TextTrackCue.idl: Added.
        * html/TextTrackCueList.cpp:
        (WebCore::TextTrackCueList::length):
        (WebCore::TextTrackCueList::item): Used for [] operator.
        * html/TextTrackCueList.h: Added item() for [] operator.
        * html/TextTrackCueList.idl: Added.
        * page/DOMWindow.idl: Adding TextTrackCue new operator.

2011-10-19  Shawn Singh  <shawnsingh@chromium.org>

        [chromium] Fix webkit style on a few files.
        https://bugs.webkit.org/show_bug.cgi?id=70441

        Reviewed by James Robinson.

        Tested with existing layout and unit tests.

        * platform/graphics/chromium/LayerChromium.cpp:
        * platform/graphics/chromium/LayerChromium.h:
        (WebCore::LayerChromium::setIsMask):
        * platform/graphics/chromium/LayerRendererChromium.cpp:
        (WebCore::LayerRendererChromium::initialize):
        * platform/graphics/chromium/LayerRendererChromium.h:

2011-10-19  Nat Duca  <nduca@chromium.org>

        [chromium] Route requestAnimationFrame through CCProxy in threaded mode
        https://bugs.webkit.org/show_bug.cgi?id=70160

        Reviewed by James Robinson.

        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
        (WebCore::CCLayerTreeHost::setNeedsAnimate):
        * platform/graphics/chromium/cc/CCLayerTreeHost.h:
        * platform/graphics/chromium/cc/CCProxy.h:
        * platform/graphics/chromium/cc/CCScheduler.cpp:
        (WebCore::CCScheduler::requestAnimate):
        * platform/graphics/chromium/cc/CCScheduler.h:
        * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
        (WebCore::CCSingleThreadProxy::setNeedsAnimate):
        * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
        (WebCore::CCThreadProxy::setNeedsAnimate):
        (WebCore::CCThreadProxy::setNeedsAnimateOnCCThread):
        * platform/graphics/chromium/cc/CCThreadProxy.h:

2011-10-19  Kent Tamura  <tkent@chromium.org>

        Reject invalid MIME type strings for a file selection dialog parameter
        https://bugs.webkit.org/show_bug.cgi?id=70095

        Reviewed by Darin Fisher and Darin Adler.

        No new tests. This affect only a value passed to WebKit layer.

        * html/HTMLInputElement.cpp:
        (WebCore::isRFC2616TokenCharacter): Added.
        (WebCore::HTMLInputElement::acceptMIMETypes):
        Validate a MIME type string, and don't add invalid strings to the output Vector.

2011-10-19  Darin Adler  <darin@apple.com>

        Remove OptionElement (first half)
        https://bugs.webkit.org/show_bug.cgi?id=70276

        Reviewed by Kent Tamura.

        Refactoring that does not require new tests.

        * css/SelectorChecker.cpp:
        (WebCore::SelectorChecker::checkOneSelector): Use hasTagName
        and toHTMLOptionElement instead of toOptionElement.

        * dom/OptionElement.cpp: Deleted contents. Remove file later.
        * dom/OptionElement.h: Ditto.

        * html/HTMLOptionElement.cpp:
        (WebCore::HTMLOptionElement::HTMLOptionElement): Initialize m_isSelected.
        (WebCore::HTMLOptionElement::createForJSConstructor): Initialize the
        selected attribute rather than calling setDefaultSelected.
        (WebCore::HTMLOptionElement::text): Moved the code here from
        OptionElement::collectOptionLabelOrText.
        (WebCore::HTMLOptionElement::index): Moved the code here from
        OptionElement::optionIndex.
        (WebCore::HTMLOptionElement::parseMappedAttribute): Removed unneeded
        code to call setValue and setLabel. Changed the code that called
        setSelected to instead set m_isSelected and added a FIXME about why
        that's probably wrong, but same behavior as before.
        (WebCore::HTMLOptionElement::value): Moved the code here from
        OptionElement::collectOptionValue. Added a FIXME about incorrect
        whitespace stripping.
        (WebCore::HTMLOptionElement::selected): Use m_isSelected.
        (WebCore::HTMLOptionElement::setSelected): Use m_isSelected and
        call setSelectedState instead of OptionElement::setSelectedState.
        (WebCore::HTMLOptionElement::setSelectedState): Moved the code
        here from OptionElement::setSelectedState.
        (WebCore::HTMLOptionElement::label): Streamlined the code.
        (WebCore::HTMLOptionElement::textIndentedToRespectGroupLabel):
        Moved the code here from OptionElement::collectOptionTextRespectingGroupLabel.
        (WebCore::HTMLOptionElement::insertedIntoTree): Use m_isSelected
        and rewrote comment for clarity.
        (WebCore::HTMLOptionElement::collectOptionInnerText): Moved this
        here from OptionElement, and changed to use StringBuilder.
        (WebCore::toHTMLOptionElement): Added.

        * html/HTMLOptionElement.h: Removed OptionElement.h include.
        Removed OptionElement base class. Removed unneeded friend declarations.
        Made value and selected functions non-virtual. Removed unneeded
        defaultSelected and setDefaultSelected functions. Made the
        textIndentedToRespectGroupLabel and setSelectedState functions
        be non-virtual and public. Added a collectOptionInnerText function.
        Replaced m_data with m_value, m_label, and m_selected.

        * html/HTMLSelectElement.cpp:
        (WebCore::toOptionElement): Added. Helper to keep existing code
        close to the same.
        (WebCore::HTMLSelectElement::nextValidIndex): Use hasTagName
        instead of isOptionElement.
        (WebCore::HTMLSelectElement::saveLastSelection): Use HTMLOptionElement
        type instead of OptionElement.
        (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex): Ditto.
        (WebCore::HTMLSelectElement::updateListBoxSelection): Ditto.
        (WebCore::HTMLSelectElement::listBoxOnChange): Ditto.
        (WebCore::HTMLSelectElement::recalcListItems): Ditto.
        (WebCore::HTMLSelectElement::selectedIndex): Ditto.
        (WebCore::HTMLSelectElement::setSelectedIndex): Ditto.
        (WebCore::HTMLSelectElement::optionToListIndex): Ditto.
        (WebCore::HTMLSelectElement::listToOptionIndex): Ditto.
        (WebCore::HTMLSelectElement::deselectItemsWithoutValidation): Ditto.
        (WebCore::HTMLSelectElement::saveFormControlState): Ditto.
        (WebCore::HTMLSelectElement::restoreFormControlState): Ditto.
        (WebCore::HTMLSelectElement::appendFormData): Ditto.
        (WebCore::HTMLSelectElement::reset): Ditto.
        (WebCore::HTMLSelectElement::updateSelectedState): Ditto.
        (WebCore::HTMLSelectElement::lastSelectedListIndex): Ditto.
        (WebCore::HTMLSelectElement::typeAheadFind): Ditto.
        (WebCore::HTMLSelectElement::accessKeySetSelectedIndex): Ditto.
        (WebCore::HTMLSelectElement::length): Ditto.

        * rendering/RenderListBox.cpp:
        (WebCore::RenderListBox::updateFromElement): Use HTMLOptionElement,
        hasTagName, and toHTMLOptionElement.
        (WebCore::RenderListBox::addFocusRingRects): Ditto.
        (WebCore::RenderListBox::paintItemForeground): Ditto.
        (WebCore::RenderListBox::paintItemBackground): Ditto.
        * rendering/RenderMenuList.cpp:
        (WebCore::RenderMenuList::updateOptionsWidth): Ditto.
        (WebCore::RenderMenuList::setTextFromOption): Ditto.
        (WebCore::RenderMenuList::itemText): Ditto.
        (WebCore::RenderMenuList::itemIsSelected): Ditto.

2011-10-19  Raymond Toy  <rtoy@google.com>

        Flush denormals to zero on Windows.
        https://bugs.webkit.org/show_bug.cgi?id=70140

        Reviewed by Kenneth Russell.

        * platform/audio/AudioBus.cpp:
        (WebCore::AudioBus::processWithGainFromMonoStereo):
        Flush any denormals to zero before saving the result.  Change
        double gain to float gain to match existing float operations.
        * platform/audio/DenormalDisabler.h:
        (WebCore::DenormalDisabler::flushDenormalFloatToZero):
        New function to flush the given float to zero, if it is a denormal
        number.

2011-10-19  Raphael Kubo da Costa  <kubo@profusion.mobi>

        [EFL] Remove the empty paint() implementation in ScrollbarEfl.
        https://bugs.webkit.org/show_bug.cgi?id=70428

        Reviewed by Antonio Gomes.

        Remove the empty reimplementation of Scrollbar::paint(), as this would
        cause ScrollView::paintScrollbars() to paint nothing at all.

        If we have mock scrollbars enabled, this will paint them; otherwise,
        the code path will end up in WidgetEfl::paint(), which also does
        nothing, so the behavior should not change.

        No new tests, this is machinery needed to run the current ones.

        * platform/efl/ScrollbarEfl.cpp:
        (ScrollbarEfl::frameRectsChanged):
        * platform/efl/ScrollbarEfl.h:

2011-10-19  Raphael Kubo da Costa  <kubo@profusion.mobi>

        [EFL] Do not always consider a ScrollView will have an Evas/Evas_Object.
        https://bugs.webkit.org/show_bug.cgi?id=70426

        Reviewed by Antonio Gomes.

        After r95234 turned on a new code path for the port (we erroneously used
        ENABLE_AS_IMAGE instead of ENABLE_SVG_AS_IMAGE before), some tests, such
        as compositing/image/direct-svg-image.html or
        fast/writing-mode/block-level-images.html started writing stderr
        messages about the parent passed to ScrollbarEfl::setParent not having
        an Evas.

        It turns out that a FrameView can be created in places other than
        ewk_frame_view_create_for_view, in which case the view will not have an
        Evas or an Evas_Object. This is not an error condition, so we can just
        return earlier.

        No new tests, this was detected by existing ones.

        * platform/efl/ScrollbarEfl.cpp:
        (ScrollbarEfl::setParent):

2011-10-19  Julien Chaffraix  <jchaffraix@webkit.org>

        Multiple crashes in RenderTable during layout
        https://bugs.webkit.org/show_bug.cgi?id=70392

        Reviewed by Simon Fraser.

        Tests: fast/table/crash-anonymous-table-computeLogicalWidth.html
               fast/table/crash-anonymous-table-layout.html

        r97555 forgot to take into account anonymous tables during layout
        where RenderObject::node() is NULL.

        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::computeLogicalWidth):
        (WebCore::RenderTable::layout):
        Added a check for node() before calling Node::hasTagName.

2011-10-19  Adam Bergkvist  <adam.bergkvist@ericsson.com>

        Update MediaStream to use WebCore platform interfaces
        https://bugs.webkit.org/show_bug.cgi?id=68464

        Reviewed by Adam Barth.

        This is one in a series of patches that update the MediaStream feature
        to use WebCore platform interfaces.

        Tests will be provided by http://webkit.org/b/56587

        * dom/LocalMediaStream.cpp:
        (WebCore::LocalMediaStream::create):
        (WebCore::LocalMediaStream::LocalMediaStream):
        (WebCore::LocalMediaStream::stop):
        (WebCore::LocalMediaStream::stopTimerFired):
        (WebCore::LocalMediaStream::~LocalMediaStream):
        (WebCore::LocalMediaStream::toLocalMediaStream):
        * dom/LocalMediaStream.h:
        * dom/LocalMediaStream.idl:
        * dom/MediaStream.cpp:
        (WebCore::MediaStream::create):
        (WebCore::MediaStream::MediaStream):
        (WebCore::MediaStream::~MediaStream):
        (WebCore::MediaStream::readyState):
        (WebCore::MediaStream::streamEnded):
        (WebCore::MediaStream::scriptExecutionContext):
        * dom/MediaStream.h:
        (WebCore::MediaStream::label):
        (WebCore::MediaStream::tracks):
        (WebCore::MediaStream::descriptor):
        * dom/MediaStreamTrack.cpp:
        (WebCore::MediaStreamTrack::create):
        (WebCore::MediaStreamTrack::MediaStreamTrack):
        (WebCore::MediaStreamTrack::kind):
        (WebCore::MediaStreamTrack::label):
        (WebCore::MediaStreamTrack::enabled):
        (WebCore::MediaStreamTrack::setEnabled):
        * dom/MediaStreamTrack.h:
        * dom/MediaStreamTrack.idl:
        * dom/MediaStreamTrackList.cpp:
        (WebCore::MediaStreamTrackList::create):
        (WebCore::MediaStreamTrackList::MediaStreamTrackList):
        (WebCore::MediaStreamTrackList::length):
        (WebCore::MediaStreamTrackList::item):
        * dom/MediaStreamTrackList.h:
        * p2p/PeerConnection.cpp:
        (WebCore::PeerConnection::addStream):
        (WebCore::PeerConnection::removeStream):
        (WebCore::PeerConnection::remoteStreamAdded):
        * page/MediaStreamClient.h:
        * page/MediaStreamController.cpp:
        (WebCore::MediaStreamController::unregisterFrameController):
        (WebCore::MediaStreamController::streamGenerated):
        * page/MediaStreamController.h:
        * page/MediaStreamFrameController.cpp:
        (WebCore::MediaStreamFrameController::enterDetachedState):
        (WebCore::MediaStreamFrameController::disconnectFrame):
        (WebCore::MediaStreamFrameController::streamGenerated):
        * page/MediaStreamFrameController.h:

2011-10-19  W. James MacLean  <wjmaclean@chromium.org>

        [chromium] Shorten animation time for ZoomAnimator.
        https://bugs.webkit.org/show_bug.cgi?id=70419

        Reviewed by Kenneth Russell.

        Shorten animation time for ZoomAnimator.

        Existing test coverage sufficient.

        * platform/ScrollAnimatorNone.cpp:
        (WebCore::ScrollAnimatorNone::zoom):

2011-10-19  Zhenyao Mo  <zmo@google.com>

        Implement WEBGL_debug_shaders and WEBGL_debug_renderer_info extensions
        https://bugs.webkit.org/show_bug.cgi?id=70077

        Reviewed by Kenneth Russell.

        * WebCore.gypi: added new extension class files.
        * WebCore.xcodeproj/project.pbxproj: ditto.
        * WebCore.pro: ditto.
        * CMakeLists.txt: ditto.
        * GNUmakefile.list.am: ditto.
        * bindings/js/JSWebGLRenderingContextCustom.cpp:
        (WebCore::toJS): Handles two new extensions.
        * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
        (WebCore::toV8Object): Ditto.
        * html/canvas/WebGLDebugRendererInfo.cpp: Added.
        (WebCore::WebGLDebugRendererInfo::WebGLDebugRendererInfo):
        (WebCore::WebGLDebugRendererInfo::~WebGLDebugRendererInfo):
        (WebCore::WebGLDebugRendererInfo::getName):
        (WebCore::WebGLDebugRendererInfo::create):
        * html/canvas/WebGLDebugRendererInfo.h: Added.
        * html/canvas/WebGLDebugRendererInfo.idl: Added.
        * html/canvas/WebGLDebugShaders.cpp: Added.
        (WebCore::WebGLDebugShaders::WebGLDebugShaders):
        (WebCore::WebGLDebugShaders::~WebGLDebugShaders):
        (WebCore::WebGLDebugShaders::getName):
        (WebCore::WebGLDebugShaders::create):
        (WebCore::WebGLDebugShaders::getTranslatedShaderSource):
        * html/canvas/WebGLDebugShaders.h: Added.
        * html/canvas/WebGLDebugShaders.idl: Added.
        * html/canvas/WebGLExtension.h:
        * html/canvas/WebGLRenderingContext.cpp:
        (WebCore::WebGLRenderingContext::allowPrivilegedExtensions): To be implemented - deciding whether the two extensions should be allowed or not.
        (WebCore::WebGLRenderingContext::getExtension): Handles two new extensions.
        (WebCore::WebGLRenderingContext::getParameter): Handles UNMASKED_VENDOR_WEBGL / UNMASKED_RENDERER_WEBGL
        (WebCore::WebGLRenderingContext::getSupportedExtensions): Handles two new extensions.
        * html/canvas/WebGLRenderingContext.h:
        * platform/graphics/Extensions3D.h: Ditto.
        * platform/graphics/GraphicsTypes3D.h: Add GC3Dchar.
        * platform/graphics/chromium/Extensions3DChromium.h: Handles two new extensions.
        * platform/graphics/opengl/Extensions3DOpenGL.cpp: Ditto.
        (WebCore::getTranslatedShaderSourceANGLE):
        * platform/graphics/opengl/Extensions3DOpenGL.h: Ditto.
        * platform/graphics/qt/Extensions3DQt.cpp: Ditto.
        (WebCore::Extensions3DQt::getTranslatedShaderSourceANGLE):
        * platform/graphics/qt/Extensions3DQt.h: Ditto.

2011-10-19  Geoffrey Garen  <ggaren@apple.com>

        Removed StringImplBase, fusing it into StringImpl
        https://bugs.webkit.org/show_bug.cgi?id=70443

        Reviewed by Gavin Barraclough.

        * ForwardingHeaders/runtime/RopeImpl.h: Removed.
        * ForwardingHeaders/wtf/text/StringImplBase.h: Removed.

2011-10-19  Shinya Kawanaka  <shinyak@google.com>

        ArrayBuffer should have slice method.
        https://bugs.webkit.org/show_bug.cgi?id=66646

        Reviewed by Kenneth Russell.

        * html/canvas/ArrayBuffer.cpp:
        (WebCore::clampValue):
        (WebCore::ArrayBuffer::slice):
        (WebCore::ArrayBuffer::sliceImpl):
        (WebCore::ArrayBuffer::clampIndex):
        * html/canvas/ArrayBuffer.h: Added declaration.
        * html/canvas/ArrayBuffer.idl: Added interface.

2011-10-19  Mark Hahnenberg  <mhahnenberg@apple.com>

        Add getConstructData to the MethodTable
        https://bugs.webkit.org/show_bug.cgi?id=70163

        Reviewed by Geoffrey Garen.

        No new tests.

        Adding getConstructData to the MethodTable in order to be able to 
        remove all calls to getConstructDataVirtual soon.  Part of the process 
        of de-virtualizing JSCell.

        * WebCore.exp.in:

2011-10-19  Dan Bernstein  <mitz@apple.com>

        Incorrect pagination in flipped-blocks writing modes with border/padding before
        https://bugs.webkit.org/show_bug.cgi?id=70444

        Reviewed by Darin Adler.

        Test: fast/multicol/flipped-blocks-border-after.html

        * rendering/LayoutState.cpp:
        (WebCore::LayoutState::LayoutState): Account for flipped blocks when adjusting the page offset.

2011-10-19  Beth Dakin  <bdakin@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=70396
        Focus rings are too thin in HiDPI in WebKit2
        -and corresponding-
        <rdar://problem/10086876>

        Reviewed by Dan Bernstein.

        Rename wkSetPatternBaseCTM to wkSetBaseCTM
        * WebCore.exp.in:
        * platform/mac/WebCoreSystemInterface.h:
        * platform/mac/WebCoreSystemInterface.mm:

        New CG-only function calls into wkSetBaseCTM.
        * platform/graphics/GraphicsContext.h:
        * platform/graphics/cg/GraphicsContextCG.cpp:
        (WebCore::GraphicsContext::setBaseCTM):

        Call GraphicsContext::setBaseCTM() rather than calling into WebKitSystemInterface 
        directly.
        * platform/graphics/cg/ImageCG.cpp:
        (WebCore::Image::drawPattern):

2011-10-19  Anna Cavender  <annacc@chromium.org>

        Update WebVTTParser to require at least one space between timestamps and arrows, e.g.:
        00:04:01.000 --> 00:03:00.500 is OK
        00:04:01.000-->00:03:00.500 is not OK
        https://bugs.webkit.org/show_bug.cgi?id=70274

        Reviewed by Eric Carlson.

        Existing tests:
        media/track/track-webvtt-tc008-timings-no-hours.html
        (see media/track/captions-webvtt/tc008-timings-no-hour-errors.vtt #6)
        media/track/track-webvtt-tc009-timings-hour.html
        (see media/track/captions-webvtt/tc009-timings-hour-error.vtt #6) 

        * html/track/WebVTTParser.cpp:
        (WebCore::WebVTTParser::collectTimingsAndSettings): Check that the
            character before and after the '-->' is a space character

2011-10-19  Daniel Cheng  <dcheng@chromium.org>

        Don't always select images during an image drag.
        https://bugs.webkit.org/show_bug.cgi?id=62998

        Reviewed by Tony Chang.

        Only select an image being dragged if it is contenteditable.

        Test: fast/events/drag-selects-image.html

        * dom/Node.cpp:
        (WebCore::Node::isContentRichlyEditable):
        * dom/Node.h:
        * page/DragController.cpp:
        (WebCore::prepareClipboardForImageDrag):

2011-10-19  Andreas Kling  <kling@webkit.org>

        HTMLBodyElement: Simplify link/alink/vlink attribute parsing.
        https://bugs.webkit.org/show_bug.cgi?id=70429

        Reviewed by Antonio Gomes.

        Instead of carrying around a CSSMutableStyleDeclaration with the body element,
        just use CSSParser::parseColor() to parse the three link color attributes.

        * html/HTMLBodyElement.h:
        * html/HTMLBodyElement.cpp:
        (WebCore::HTMLBodyElement::~HTMLBodyElement):

            Remove HTMLBodyElement::m_linkDecl and all the voodoo that went along with it.

        (WebCore::HTMLBodyElement::parseMappedAttribute):

            Use CSSParser directly to parse the color values for {link,alink,vlink}Attr.

2011-10-18  Oliver Hunt  <oliver@apple.com>

        Support CanvasPixelArray in the DFG
        https://bugs.webkit.org/show_bug.cgi?id=70384

        Reviewed by Filip Pizlo.

        Make CanvasPixelArray inherit from ByteArray's ClassInfo so
        can identify it more sensibly.

        * bindings/js/JSImageDataCustom.cpp:
        (WebCore::toJS):

2011-10-19  Chang Shu  <cshu@webkit.org>

        [Qt] Disable fullscreen api on Qt by default
        https://bugs.webkit.org/show_bug.cgi?id=70413

        Reviewed by Noam Rosenthal.

        As the WebKit side of implementation for fullscreen api feature has not been done yet,
        we'd better turn off the feature on the WebCore side by default.

        * features.pri:

2011-10-19  Dirk Schulze  <krit@webkit.org>

        Unreviewed, rolling out r97863.
        http://trac.webkit.org/changeset/97863
        https://bugs.webkit.org/show_bug.cgi?id=65769

        Rollout

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * platform/graphics/FloatRect.cpp:
        * platform/graphics/FloatRect.h:
        (WebCore::FloatRect::contains):
        * rendering/RenderObject.h:
        (WebCore::RenderObject::isSVGPath):
        * rendering/RenderTreeAsText.cpp:
        (WebCore::write):
        * rendering/svg/RenderSVGAllInOne.cpp:
        * rendering/svg/RenderSVGModelObject.cpp:
        (WebCore::isGraphicsElement):
        * rendering/svg/RenderSVGPath.cpp:
        (WebCore::BoundingRectStrokeStyleApplier::BoundingRectStrokeStyleApplier):
        (WebCore::BoundingRectStrokeStyleApplier::strokeStyle):
        (WebCore::RenderSVGPath::RenderSVGPath):
        (WebCore::RenderSVGPath::fillContains):
        (WebCore::RenderSVGPath::strokeContains):
        (WebCore::RenderSVGPath::layout):
        (WebCore::RenderSVGPath::shouldStrokeZeroLengthSubpath):
        (WebCore::RenderSVGPath::zeroLengthSubpathRect):
        (WebCore::RenderSVGPath::setupSquareCapPath):
        (WebCore::RenderSVGPath::setupNonScalingStrokePath):
        (WebCore::RenderSVGPath::fillAndStrokePath):
        (WebCore::RenderSVGPath::paint):
        (WebCore::RenderSVGPath::addFocusRingRects):
        (WebCore::RenderSVGPath::nodeAtFloatPoint):
        (WebCore::RenderSVGPath::calculateMarkerBoundsIfNeeded):
        (WebCore::RenderSVGPath::updateCachedBoundaries):
        * rendering/svg/RenderSVGPath.h:
        (WebCore::RenderSVGPath::path):
        (WebCore::RenderSVGPath::setNeedsPathUpdate):
        (WebCore::RenderSVGPath::setNeedsBoundariesUpdate):
        (WebCore::RenderSVGPath::setNeedsTransformUpdate):
        (WebCore::RenderSVGPath::objectBoundingBox):
        (WebCore::RenderSVGPath::strokeBoundingBox):
        (WebCore::RenderSVGPath::repaintRectInLocalCoordinates):
        (WebCore::RenderSVGPath::localToParentTransform):
        (WebCore::RenderSVGPath::localTransform):
        (WebCore::toRenderSVGPath):
        * rendering/svg/RenderSVGRect.cpp: Removed.
        * rendering/svg/RenderSVGRect.h: Removed.
        * rendering/svg/RenderSVGResource.h:
        (WebCore::RenderSVGResource::postApplyResource):
        * rendering/svg/RenderSVGResourceClipper.cpp:
        (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
        (WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect):
        (WebCore::RenderSVGResourceClipper::hitTestClipContent):
        * rendering/svg/RenderSVGResourceContainer.cpp:
        (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):
        * rendering/svg/RenderSVGResourceFilter.cpp:
        (WebCore::RenderSVGResourceFilter::postApplyResource):
        * rendering/svg/RenderSVGResourceFilter.h:
        * rendering/svg/RenderSVGResourceGradient.cpp:
        (WebCore::RenderSVGResourceGradient::applyResource):
        * rendering/svg/RenderSVGResourceGradient.h:
        * rendering/svg/RenderSVGResourcePattern.cpp:
        (WebCore::RenderSVGResourcePattern::postApplyResource):
        * rendering/svg/RenderSVGResourcePattern.h:
        * rendering/svg/RenderSVGResourceSolidColor.cpp:
        (WebCore::RenderSVGResourceSolidColor::postApplyResource):
        * rendering/svg/RenderSVGResourceSolidColor.h:
        * rendering/svg/RenderSVGRoot.cpp:
        (WebCore::RenderSVGRoot::paint):
        * rendering/svg/RenderSVGShape.cpp: Removed.
        * rendering/svg/RenderSVGShape.h: Removed.
        * rendering/svg/SVGInlineTextBox.cpp:
        (WebCore::SVGInlineTextBox::releasePaintingResource):
        * rendering/svg/SVGRenderSupport.cpp:
        (WebCore::SVGRenderSupport::prepareToRenderSVGContent):
        (WebCore::SVGRenderSupport::finishRenderSVGContent):
        (WebCore::SVGRenderSupport::layoutChildren):
        * rendering/svg/SVGRenderTreeAsText.cpp:
        (WebCore::writeStyle):
        (WebCore::operator<<):
        (WebCore::write):
        * rendering/svg/SVGRenderTreeAsText.h:
        * rendering/svg/SVGTextRunRenderingContext.cpp:
        (WebCore::SVGTextRunRenderingContext::drawSVGGlyphs):
        * svg/SVGCircleElement.cpp:
        (WebCore::SVGCircleElement::svgAttributeChanged):
        * svg/SVGEllipseElement.cpp:
        (WebCore::SVGEllipseElement::svgAttributeChanged):
        * svg/SVGLineElement.cpp:
        (WebCore::SVGLineElement::svgAttributeChanged):
        * svg/SVGPathElement.cpp:
        (WebCore::SVGPathElement::svgAttributeChanged):
        (WebCore::SVGPathElement::pathSegListChanged):
        * svg/SVGPathElement.h:
        * svg/SVGPolyElement.cpp:
        (WebCore::SVGPolyElement::svgAttributeChanged):
        * svg/SVGRectElement.cpp:
        (WebCore::SVGRectElement::svgAttributeChanged):
        * svg/SVGRectElement.h:

2011-10-19  Yury Semikhatsky  <yurys@chromium.org>

        Web Inspector: worker inspector title should contain worker URL
        https://bugs.webkit.org/show_bug.cgi?id=70424

        Worker inspector title is now evaluated when the front-end starts.

        Reviewed by Pavel Feldman.

        * inspector/front-end/WorkerManager.js:
        (WebInspector.WorkerManager.loaded):
        (WebInspector.WorkerManager._calculateWorkerInspectorTitle):

2011-10-19  Martin Robinson  <mrobinson@igalia.com>

        [GTK] Avoid unecessarily calling gtk_widget_size_allocate on plugin widgets
        https://bugs.webkit.org/show_bug.cgi?id=70190

        Reviewed by Xan Lopez.

        Instead of always calling gtk_widget_size_allocate on every single plugin
        widget during scrolling, only call it on widgets that are both in the view
        and that have moved.

        No new tests. It's difficult to test scrolling performance in an
        automated way.

        * plugins/gtk/PluginViewGtk.cpp:
        (WebCore::PluginView::setNPWindowIfNeeded): Reverse the if statement detecting a
        clipped out plugin. It was incorrect.
        (WebCore::PluginView::updateWidgetAllocationAndClip): If the current allocation of
        the plugin widget has not changed or if the widget remains scrolled out, do not call
        gtk_widget_size_allocate.

2011-10-19  Renata Hodovan  <reni@webkit.org>

        Add new renderer for SVGRectElement.
        https://bugs.webkit.org/show_bug.cgi?id=65769

        Reviewed by Dirk Schulze.

        This patch introduces a new common base class called RenderSVGShape which
        replaces the RenderSVGPath. This new base class has the same purpose
        as the replaced class and has specialized descendants for common
        shapes (like Rectangles and Circles), which allows faster painting
        of these shapes when certain conditions are fulfilled. On some
        benchmark programs we have seen 5% speedup.

        The biggest motivation of this refactor is taking advantage
        of faster primitive drawing in the most common and frequent
        cases. However in some rare cases, like painting rounded
        rects, we need to fallback to the original code path, which
        is fully kept in the RenderSVGShape base class. Some other
        cases, like dashed strokes, can be painted but mouse pointer
        events cannot be handled by the descendant classes. A different
        fallback mechanism is used in such cases which redirects
        only the pointer event handling to the base class.

        Tests: svg/custom/pointer-events-on-rounded-rect.xhtml
               svg/custom/pointer-events-with-linecaps-and-miterlimits.xhtml

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * platform/graphics/FloatRect.cpp:
        (WebCore::FloatRect::contains):
        * platform/graphics/FloatRect.h:
        (WebCore::FloatRect::contains):
        * rendering/RenderObject.h:
        (WebCore::RenderObject::isSVGRect):
        (WebCore::RenderObject::isSVGShape):
        * rendering/RenderTreeAsText.cpp:
        (WebCore::write):
        * rendering/svg/RenderSVGAllInOne.cpp:
        * rendering/svg/RenderSVGModelObject.cpp:
        (WebCore::isGraphicsElement):
        * rendering/svg/RenderSVGPath.cpp:
        (WebCore::RenderSVGPath::RenderSVGPath):
        (WebCore::RenderSVGPath::inflateWithMarkerBounds): Unite the markerBounds with strokeBoundingBox.
        * rendering/svg/RenderSVGPath.h:
        * rendering/svg/RenderSVGRect.cpp: Added.
        (WebCore::RenderSVGRect::RenderSVGRect):
        (WebCore::RenderSVGRect::~RenderSVGRect):
        (WebCore::RenderSVGRect::createShape):
        (WebCore::RenderSVGRect::objectBoundingBox):
        (WebCore::RenderSVGRect::strokeBoundingBox):
        (WebCore::RenderSVGRect::fillShape):
        (WebCore::RenderSVGRect::strokeShape):
        (WebCore::RenderSVGRect::shapeDependentStrokeContains):
        (WebCore::RenderSVGRect::shapeDependentFillContains):
        * rendering/svg/RenderSVGRect.h: Added.
        (WebCore::RenderSVGRect::isSVGRect):
        (WebCore::RenderSVGRect::renderName):
        (WebCore::RenderSVGRect::isEmpty):
        * rendering/svg/RenderSVGResource.h:
        (WebCore::RenderSVGResource::postApplyResource): A new shape argument was added to allow shape specific faster painting.
        * rendering/svg/RenderSVGResourceClipper.cpp:
        (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
        (WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect):
        (WebCore::RenderSVGResourceClipper::hitTestClipContent):
        * rendering/svg/RenderSVGResourceContainer.cpp:
        (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):
        * rendering/svg/RenderSVGResourceFilter.cpp:
        (WebCore::RenderSVGResourceFilter::postApplyResource):
        * rendering/svg/RenderSVGResourceFilter.h:
        * rendering/svg/RenderSVGResourceGradient.cpp:
        (WebCore::RenderSVGResourceGradient::applyResource):
        * rendering/svg/RenderSVGResourceGradient.h:
        * rendering/svg/RenderSVGResourcePattern.cpp:
        (WebCore::RenderSVGResourcePattern::postApplyResource):
        * rendering/svg/RenderSVGResourcePattern.h:
        * rendering/svg/RenderSVGResourceSolidColor.cpp:
        (WebCore::RenderSVGResourceSolidColor::postApplyResource):
        * rendering/svg/RenderSVGResourceSolidColor.h:
        * rendering/svg/RenderSVGShape.cpp: Copied from Source/WebCore/rendering/svg/RenderSVGPath.cpp.
        (WebCore::RenderSVGShape::RenderSVGShape):
        (WebCore::RenderSVGShape::~RenderSVGShape):
        (WebCore::RenderSVGShape::createShape):
        (WebCore::RenderSVGShape::isEmpty):
        (WebCore::RenderSVGShape::fillShape):
        (WebCore::RenderSVGShape::objectBoundingBox):
        (WebCore::RenderSVGShape::strokeBoundingBox):
        (WebCore::RenderSVGShape::strokeShape):
        (WebCore::RenderSVGShape::shapeDependentStrokeContains):
        The purpose of this virtual function allows decendants to use their own fast checks.
        (WebCore::RenderSVGShape::shapeDependentFillContains):
        The purpose of this virtual function allows decendants to use their own fast checks.
        (WebCore::RenderSVGShape::fillContains):
        (WebCore::RenderSVGShape::strokeContains):
        (WebCore::RenderSVGShape::layout):
        (WebCore::RenderSVGShape::shouldStrokeZeroLengthSubpath):
        (WebCore::RenderSVGShape::zeroLengthSubpathRect):
        (WebCore::RenderSVGShape::setupSquareCapPath):
        (WebCore::RenderSVGShape::setupNonScalingStrokePath):
        (WebCore::RenderSVGShape::fillAndStrokePath):
        (WebCore::RenderSVGShape::paint):
        (WebCore::RenderSVGShape::addFocusRingRects):
        (WebCore::RenderSVGShape::nodeAtFloatPoint):
        (WebCore::RenderSVGShape::calculateMarkerBoundsIfNeeded):
        (WebCore::RenderSVGShape::updateCachedBoundaries):
        (WebCore::RenderSVGShape::strokeWidth):
        * rendering/svg/RenderSVGShape.h: Copied from Source/WebCore/rendering/svg/RenderSVGPath.h.
        (WebCore::BoundingRectStrokeStyleApplier::BoundingRectStrokeStyleApplier):
        (WebCore::BoundingRectStrokeStyleApplier::strokeStyle):
        (WebCore::RenderSVGShape::setNeedsShapeUpdate):
        (WebCore::RenderSVGShape::setNeedsBoundariesUpdate):
        (WebCore::RenderSVGShape::setNeedsTransformUpdate):
        (WebCore::RenderSVGShape::isPaintingFallback):
        (WebCore::RenderSVGShape::path):
        (WebCore::RenderSVGShape::setIsPaintingFallback):
        (WebCore::RenderSVGShape::setStrokeAndMarkerBoundingBox):
        (WebCore::RenderSVGShape::hasPath):
        (WebCore::RenderSVGShape::repaintRectInLocalCoordinates):
        (WebCore::RenderSVGShape::localToParentTransform):
        (WebCore::RenderSVGShape::localTransform):
        (WebCore::RenderSVGShape::isSVGShape):
        (WebCore::RenderSVGShape::renderName):
        (WebCore::RenderSVGShape::isRoundedRect):
        (WebCore::RenderSVGShape::inflateWithMarkerBounds):
        (WebCore::toRenderSVGShape):
        * rendering/svg/SVGInlineTextBox.cpp:
        (WebCore::SVGInlineTextBox::releasePaintingResource):
        * rendering/svg/SVGRenderSupport.cpp:
        (WebCore::SVGRenderSupport::finishRenderSVGContent):
        (WebCore::SVGRenderSupport::layoutChildren):
        * rendering/svg/SVGRenderTreeAsText.cpp:
        (WebCore::writeStyle):
        (WebCore::operator<<):
        (WebCore::write):
        * rendering/svg/SVGRenderTreeAsText.h:
        * rendering/svg/SVGTextRunRenderingContext.cpp:
        (WebCore::SVGTextRunRenderingContext::drawSVGGlyphs):
        * svg/SVGCircleElement.cpp:
        (WebCore::SVGCircleElement::svgAttributeChanged):
        * svg/SVGEllipseElement.cpp:
        (WebCore::SVGEllipseElement::svgAttributeChanged):
        * svg/SVGLineElement.cpp:
        (WebCore::SVGLineElement::svgAttributeChanged):
        * svg/SVGPathElement.cpp:
        (WebCore::SVGPathElement::svgAttributeChanged):
        (WebCore::SVGPathElement::pathSegListChanged):
        (WebCore::SVGPathElement::createRenderer):
        * svg/SVGPathElement.h:
        * svg/SVGPolyElement.cpp:
        (WebCore::SVGPolyElement::svgAttributeChanged):
        * svg/SVGRectElement.cpp:
        (WebCore::SVGRectElement::svgAttributeChanged):
        (WebCore::SVGRectElement::createRenderer):
        * svg/SVGRectElement.h:

2011-10-19  Chris Fleizach  <cfleizach@apple.com>

        AX: buttons of number type <input> controls are not fully accessible
        https://bugs.webkit.org/show_bug.cgi?id=70241

        Unreviewed. Fix missing </File> tag in Windows WebCore project file.

        * WebCore.vcproj/WebCore.vcproj:

2011-10-19  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: [Chromium] Add an ability to show the objects that were allocated between snapshot N-2 and snapshot N-1 and still alive in snapshot N.
        https://bugs.webkit.org/show_bug.cgi?id=61178

        This ability will help us to see only the leaked objects.
        Scenario:
        1) do an action on inspected page which leaks javascript data;
        2) make snapshot;
        3) repeat first two steps three or more times;
        4) select the last snapshot and select the filter 'Objects allocated between Snapshot 1 and Snapshot2' instead of 'All objects'.
        The view shows the object that were allocated between snapshot N-2 and snapshot N-1 and still alive in snapshot N

        Reviewed by Pavel Feldman.

        * English.lproj/localizedStrings.js:
        * inspector/front-end/DetailedHeapshotGridNodes.js:
        (WebInspector.HeapSnapshotConstructorNode):
        (WebInspector.HeapSnapshotConstructorNode.prototype._createNodesProvider):
        * inspector/front-end/DetailedHeapshotView.js:
        (WebInspector.HeapSnapshotConstructorsDataGrid):
        (WebInspector.HeapSnapshotConstructorsDataGrid.prototype.setDataSource):
        (WebInspector.HeapSnapshotConstructorsDataGrid.prototype.populateChildren):
        (WebInspector.HeapSnapshotConstructorsDataGrid.prototype._filterSelectIndexChanged.firstSnapshotLoaded):
        (WebInspector.HeapSnapshotConstructorsDataGrid.prototype._filterSelectIndexChanged.secondSnapshotLoaded):
        (WebInspector.HeapSnapshotConstructorsDataGrid.prototype._filterSelectIndexChanged):
        (WebInspector.HeapSnapshotDiffDataGrid.prototype._baseProfileIndexChanged):
        (WebInspector.HeapSnapshotDiffDataGrid.prototype.populateChildren):
        (WebInspector.DetailedHeapshotView.profileCallback):
        (WebInspector.DetailedHeapshotView):
        (WebInspector.DetailedHeapshotView.prototype.get statusBarItems):
        (WebInspector.DetailedHeapshotView.prototype._changeBase):
        (WebInspector.DetailedHeapshotView.prototype._changeFilter):
        (WebInspector.DetailedHeapshotView.prototype._loadProfileByIndex):
        (WebInspector.DetailedHeapshotView.prototype._changeView):
        (WebInspector.DetailedHeapshotView.prototype._updateFilterOptions):
        * inspector/front-end/HeapSnapshot.js:
        (WebInspector.HeapSnapshot.prototype.dispose):
        (WebInspector.HeapSnapshot.prototype.get maxNodeId):
        (WebInspector.HeapSnapshot.prototype.aggregates):
        (WebInspector.HeapSnapshot.prototype._buildAggregates):
        (WebInspector.HeapSnapshot.prototype._sortAggregateIndexes):
        (WebInspector.HeapSnapshot.prototype.createNodesProviderForClass):
        (WebInspector.HeapSnapshot.prototype.updateStaticData):
        * inspector/front-end/HeapSnapshotProxy.js:
        (WebInspector.HeapSnapshotWorker):
        (WebInspector.HeapSnapshotProxy.prototype.aggregates):
        (WebInspector.HeapSnapshotProxy.prototype.createNodesProviderForClass):
        (WebInspector.HeapSnapshotProxy.prototype.get maxNodeId):
        (WebInspector.HeapSnapshotProxy.prototype.startLoading):

2011-10-19  Alexander Pavlov  <apavlov@chromium.org>

        Strip trailing whitespace in the WebCore/css C++ code.
        https://bugs.webkit.org/show_bug.cgi?id=70410

        Reviewed by Dirk Schulze.

        Only affected file names retained below for brevity.
        Multiline boolean expression were fixed where necessary to avoid patch style violations.

        * css/CSSBorderImageSliceValue.cpp:
        * css/CSSBorderImageSliceValue.h:
        * css/CSSBorderImageValue.cpp:
        * css/CSSCanvasValue.cpp:
        * css/CSSCanvasValue.h:
        * css/CSSComputedStyleDeclaration.cpp:
        * css/CSSCursorImageValue.cpp:
        * css/CSSFontFace.cpp:
        * css/CSSFontFace.h:
        * css/CSSFontFaceSource.cpp:
        * css/CSSFontFaceSource.h:
        * css/CSSFontFaceSrcValue.cpp:
        * css/CSSFontFaceSrcValue.h:
        * css/CSSFontSelector.cpp:
        * css/CSSFontSelector.h:
        * css/CSSFunctionValue.cpp:
        * css/CSSFunctionValue.h:
        * css/CSSGradientValue.cpp:
        * css/CSSGradientValue.h:
        * css/CSSImageGeneratorValue.cpp:
        * css/CSSImageGeneratorValue.h:
        * css/CSSImageValue.cpp:
        * css/CSSImageValue.h:
        * css/CSSImportRule.cpp:
        * css/CSSInitialValue.cpp:
        * css/CSSInitialValue.h:
        * css/CSSMutableStyleDeclaration.cpp:
        * css/CSSMutableStyleDeclaration.h:
        * css/CSSParser.cpp:
        * css/CSSParser.h:
        * css/CSSParserValues.cpp:
        * css/CSSParserValues.h:
        * css/CSSPrimitiveValue.cpp:
        * css/CSSPrimitiveValue.h:
        * css/CSSPrimitiveValueCache.cpp:
        * css/CSSPrimitiveValueCache.h:
        * css/CSSPrimitiveValueMappings.h:
        * css/CSSProperty.cpp:
        * css/CSSProperty.h:
        * css/CSSPropertyLonghand.cpp:
        * css/CSSReflectValue.cpp:
        * css/CSSReflectValue.h:
        * css/CSSReflectionDirection.h:
        * css/CSSSegmentedFontFace.cpp:
        * css/CSSSegmentedFontFace.h:
        * css/CSSSelector.cpp:
        * css/CSSSelector.h:
        * css/CSSSelectorList.cpp:
        * css/CSSSelectorList.h:
        * css/CSSStyleApplyProperty.cpp:
        * css/CSSStyleDeclaration.h:
        * css/CSSStyleSelector.cpp:
        * css/CSSStyleSelector.h:
        * css/CSSStyleSheet.cpp:
        * css/CSSTimingFunctionValue.cpp:
        * css/CSSTimingFunctionValue.h:
        * css/CSSUnicodeRangeValue.cpp:
        * css/CSSUnicodeRangeValue.h:
        * css/CSSValueList.cpp:
        * css/CSSWrapShapes.cpp:
        * css/CSSWrapShapes.h:
        * css/FontValue.cpp:
        * css/MediaList.cpp:
        * css/MediaQuery.cpp:
        * css/MediaQuery.h:
        * css/MediaQueryEvaluator.h:
        * css/MediaQueryExp.cpp:
        * css/MediaQueryExp.h:
        * css/Pair.h:
        * css/SVGCSSComputedStyleDeclaration.cpp:
        * css/SVGCSSParser.cpp:
        * css/SVGCSSStyleSelector.cpp:
        * css/SelectorChecker.cpp:
        * css/SelectorChecker.h:
        * css/StyleBase.cpp:
        * css/StyleMedia.cpp:
        * css/StyleMedia.h:
        * css/StyleSheetList.cpp:
        * css/StyleSheetList.h:
        * css/WebKitCSSFilterValue.cpp:
        * css/WebKitCSSFilterValue.h:
        * css/WebKitCSSKeyframeRule.cpp:
        * css/WebKitCSSKeyframeRule.h:
        * css/WebKitCSSKeyframesRule.cpp:
        * css/WebKitCSSKeyframesRule.h:
        * css/WebKitCSSMatrix.cpp:
        * css/WebKitCSSMatrix.h:
        * css/WebKitCSSTransformValue.cpp:
        * css/WebKitCSSTransformValue.h:

2011-10-19  Dirk Schulze  <krit@webkit.org>

        Make FilterEffect::apply() independent of image data management
        https://bugs.webkit.org/show_bug.cgi?id=70350

        Reviewed by Zoltan Herczeg.
        
        FilterEffect::apply() needs to be independent from the image data management in FilterEffect.
        This allows implementing effective hardware accelerated alternatives, like OpenGL, CI or OpenCL
        based filters, to the software rendering. The software rendering code will be used as fallback
        and moves to platformApplySoftware().

        The patch does not change the behavior of SVG filters. Did not add new test cases.

        * platform/graphics/filters/FEBlend.cpp: Renamed apply() to platformApplyGeneric()
            and removed validity checks that are done by FilterEffect::apply(). This is a
            recurring pattern for all following effects. 
        (WebCore::FEBlend::platformApplySoftware):
        * platform/graphics/filters/FEBlend.h:
        * platform/graphics/filters/FEColorMatrix.cpp:
        (WebCore::FEColorMatrix::platformApplySoftware):
        * platform/graphics/filters/FEColorMatrix.h:
        * platform/graphics/filters/FEComponentTransfer.cpp:
        (WebCore::FEComponentTransfer::platformApplySoftware):
        * platform/graphics/filters/FEComponentTransfer.h:
        * platform/graphics/filters/FEComposite.cpp:
        (WebCore::FEComposite::platformApplySoftware):
        * platform/graphics/filters/FEComposite.h:
        * platform/graphics/filters/FEConvolveMatrix.cpp:
        (WebCore::FEConvolveMatrix::platformApplySoftware):
        * platform/graphics/filters/FEConvolveMatrix.h:
        * platform/graphics/filters/FEDisplacementMap.cpp:
        (WebCore::FEDisplacementMap::platformApplySoftware):
        * platform/graphics/filters/FEDisplacementMap.h:
        * platform/graphics/filters/FEDropShadow.cpp:
        (WebCore::FEDropShadow::platformApplySoftware):
        * platform/graphics/filters/FEDropShadow.h:
        * platform/graphics/filters/FEFlood.cpp:
        (WebCore::FEFlood::platformApplySoftware):
        * platform/graphics/filters/FEFlood.h:
        * platform/graphics/filters/FEGaussianBlur.cpp:
        (WebCore::FEGaussianBlur::platformApplySoftware):
        * platform/graphics/filters/FEGaussianBlur.h:
        * platform/graphics/filters/FELighting.cpp:
        (WebCore::FELighting::platformApplySoftware):
        * platform/graphics/filters/FELighting.h:
        * platform/graphics/filters/FEMerge.cpp:
        (WebCore::FEMerge::platformApplySoftware):
        * platform/graphics/filters/FEMerge.h:
        * platform/graphics/filters/FEMorphology.cpp:
        (WebCore::FEMorphology::platformApplySoftware):
        * platform/graphics/filters/FEMorphology.h:
        * platform/graphics/filters/FEOffset.cpp:
        (WebCore::FEOffset::platformApplySoftware):
        * platform/graphics/filters/FEOffset.h:
        * platform/graphics/filters/FETile.cpp:
        (WebCore::FETile::platformApplySoftware):
        * platform/graphics/filters/FETile.h:
        * platform/graphics/filters/FETurbulence.cpp:
        (WebCore::FETurbulence::platformApplySoftware):
        * platform/graphics/filters/FETurbulence.h:
        * platform/graphics/filters/FilterEffect.cpp: Added non-virtual apply() function. This will call the platform specific apply functions,
            which need to be virtual now.
        (WebCore::FilterEffect::hasResult): Added a comment for new implementations. This function needs to be updated for every new port.
        (WebCore::FilterEffect::apply):
        (WebCore::FilterEffect::createImageBufferResult): Removed determineAbsolutePaintRect() call. This is done in apply() now.
        (WebCore::FilterEffect::createUnmultipliedImageResult): Ditto.
        (WebCore::FilterEffect::createPremultipliedImageResult): Ditto.
        * platform/graphics/filters/FilterEffect.h:
        * platform/graphics/filters/SourceAlpha.cpp:
        (WebCore::SourceAlpha::platformApplySoftware):
        * platform/graphics/filters/SourceAlpha.h:
        * platform/graphics/filters/SourceGraphic.cpp:
        (WebCore::SourceGraphic::platformApplySoftware):
        * platform/graphics/filters/SourceGraphic.h:
        * svg/graphics/filters/SVGFEImage.cpp:
        (WebCore::FEImage::platformApplySoftware):
        * svg/graphics/filters/SVGFEImage.h:

2011-10-19  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Enable caseSensitive search / Regex support in advanced search.
        https://bugs.webkit.org/show_bug.cgi?id=70335

        Reviewed by Pavel Feldman.

        * inspector/ContentSearchUtils.cpp:
        (WebCore::ContentSearchUtils::createSearchRegex):
        (WebCore::ContentSearchUtils::searchInTextByLines):
        * inspector/ContentSearchUtils.h:
        * inspector/Inspector.json:
        * inspector/InspectorDebuggerAgent.cpp:
        (WebCore::InspectorDebuggerAgent::searchInContent):
        * inspector/InspectorDebuggerAgent.h:
        * inspector/InspectorPageAgent.cpp:
        (WebCore::InspectorPageAgent::searchInResource):
        * inspector/InspectorPageAgent.h:
        * inspector/front-end/AdvancedSearchController.js:
        (WebInspector.SearchView):
        (WebInspector.SearchView.prototype.get searchConfig):
        (WebInspector.FileBasedSearchResultsPane.prototype._createSearchRegex):
        (WebInspector.FileBasedSearchResultsPane.prototype.addSearchResult):
        (WebInspector.FileBasedSearchResultsPane.SearchResult):
        * inspector/front-end/ConsolePanel.js:
        (WebInspector.ConsolePanel.prototype.performSearch):
        * inspector/front-end/ContentProviders.js:
        (WebInspector.ScriptContentProvider.prototype.searchInContent):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype.searchInContent.searchCallback):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype.searchInContent):
        (WebInspector.ResourceContentProvider.prototype.searchInContent):
        (WebInspector.CompilerSourceMappingContentProvider.prototype.searchInContent):
        (WebInspector.StaticContentProvider.prototype.searchInContent):
        * inspector/front-end/ElementsTreeOutline.js:
        ():
        * inspector/front-end/NetworkPanel.js:
        (WebInspector.NetworkLogView.prototype.performSearch):
        * inspector/front-end/Resource.js:
        (WebInspector.Resource.prototype.searchInContent):
        * inspector/front-end/Script.js:
        (WebInspector.Script.prototype.searchInContent):
        * inspector/front-end/ScriptsSearchScope.js:
        (WebInspector.ScriptsSearchScope.prototype.performSearch.searchCallbackWrapper):
        (WebInspector.ScriptsSearchScope.prototype.performSearch):
        * inspector/front-end/SourceFrame.js:
        (WebInspector.SourceFrame.createSearchRegex):
        * inspector/front-end/UISourceCode.js:
        (WebInspector.UISourceCode.prototype.searchInContent):
        (WebInspector.ContentProvider.prototype.searchInContent):
        * inspector/front-end/inspector.css:
        (.search-view .search-panel input[type="search"].search-config-search):
        (.search-view .search-panel label.search-config-label):
        (.search-view .search-panel input[type="checkbox"].search-config-checkbox):
        * inspector/front-end/utilities.js:
        ():

2011-10-19  Andreas Kling  <kling@webkit.org>

        MediaList: Remove inheritance from StyleBase.
        https://bugs.webkit.org/show_bug.cgi?id=70203

        Reviewed by Darin Adler.

        * css/MediaList.h:
        (WebCore::MediaList::parentStyleSheet):
        (WebCore::MediaList::setParentStyleSheet):
        * css/MediaList.cpp:
        (WebCore::MediaList::MediaList):
        (WebCore::MediaList::notifyChanged):

            Change MediaList to no longer inherit from StyleBase. The parent()/setParent()
            mechanism was replaced by explicit parentStyleSheet()/setParentStyleSheet().

        * css/CSSImportRule.cpp:
        (WebCore::CSSImportRule::CSSImportRule):
        (WebCore::CSSImportRule::~CSSImportRule):
        * css/CSSMediaRule.cpp:
        (WebCore::CSSMediaRule::CSSMediaRule):
        (WebCore::CSSMediaRule::~CSSMediaRule):

            Change StyleBase::setParent() calls to MediaList::setParentStyleSheet().
            CSSRules are never moved between stylesheets, so the parent style sheet pointer
            is valid for the MediaList's lifetime.

        * css/StyleSheet.cpp:
        (WebCore::StyleSheet::~StyleSheet):

            Change StyleBase::setParent() calls to MediaList::setParentStyleSheet().

        (WebCore::StyleSheet::setMedia):

            Change StyleBase::setParent() calls to MediaList::setParentStyleSheet().
            Assert that the parent sheet is either null, or this, as MediaLists should never
            be reparented to other sheets.
            Assert that the StyleSheet is indeed a CSSStyleSheet.  XSLStyleSheet inherits from
            StyleSheet, but it shouldn't be using the MediaList.

        * bindings/js/JSDOMBinding.h:
        (WebCore::root):

            Add MediaList* specific overload for root() since it can't fall back
            to root(StyleBase*) anymore.

        * WebCore.xcodeproj/project.pbxproj:

            Add some PrivateHeaders to accomodate the JSDOMBinding.h changes.

        * css/CSSMediaRule.h:

            Remove unnecessary forward-declaration of MediaList.

2011-10-19  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Console messages for XHR logging should show call stack if available.
        https://bugs.webkit.org/show_bug.cgi?id=70324

        Reviewed by Pavel Feldman.

        * inspector/front-end/ConsoleMessage.js:
        (WebInspector.ConsoleMessageImpl.prototype._formatMessage):

2011-10-13  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: move JS specific popover handling to JavaScriptSourceFrame.
        https://bugs.webkit.org/show_bug.cgi?id=70033

        Reviewed by Pavel Feldman.

        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel.prototype.uiSourceCodes):
        (WebInspector.DebuggerPresentationModel.prototype.get paused):
        * inspector/front-end/JavaScriptSourceFrame.js:
        (WebInspector.JavaScriptSourceFrame):
        (WebInspector.JavaScriptSourceFrame.prototype.shouldShowPopover):
        (WebInspector.JavaScriptSourceFrame.prototype.onShowPopover.showObjectPopover):
        (WebInspector.JavaScriptSourceFrame.prototype.onShowPopover):
        (WebInspector.JavaScriptSourceFrame.prototype.onHidePopover):
        (WebInspector.JavaScriptSourceFrame.prototype._highlightExpression):
        * inspector/front-end/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype._createSourceFrame):
        (WebInspector.SourceFrameDelegateForScriptsPanel):
        * inspector/front-end/SourceFrame.js:
        (WebInspector.SourceFrame):
        (WebInspector.SourceFrame.prototype.willHide):
        (WebInspector.SourceFrame.prototype._initializeTextViewer):
        (WebInspector.SourceFrame.prototype._getPopoverAnchor):
        (WebInspector.SourceFrame.prototype.get readOnly):
        (WebInspector.SourceFrame.prototype._setReadOnly):
        (WebInspector.SourceFrame.prototype.contentChanged):
        (WebInspector.SourceFrame.prototype.shouldShowPopover):
        (WebInspector.SourceFrame.prototype.onShowPopover):
        (WebInspector.SourceFrame.prototype.onHidePopover):

2011-10-19  Tomasz Morawski  <t.morawski@samsung.com>

        [EFL][WK2] Added missing files to build WebKit2 EFL
        https://bugs.webkit.org/show_bug.cgi?id=70312

        Reviewed by Ryosuke Niwa.

        Added missing files to WebCore/CMakeListEfl.txt script:
        - platform/network/soup/CredentialStorageSoup.cpp
        - platform/network/soup/ProxyServerSoup.cpp
        Fixes few linking time errors.

        * CMakeListsEfl.txt:

2011-10-19  Kentaro Hara  <haraken@chromium.org>

        Rename AllowAllocation to ConstructorMode
        https://bugs.webkit.org/show_bug.cgi?id=70397

        Reviewed by Adam Barth.

        The name 'AllowAllocation' is confusing (See discussion here: bug 70015).
        This patch renames 'AllowAllocation' to 'ConstructorMode' to clarify that
        this class is for distinguishing the following two situations:
         1. A programmer allocates an object via "new X"; X is a function with a C++ constructCallback.
         2. C++ allocates an object via the function template and tries to wrap the object with a JS flavor.

        Tests: fast/events/constructors/*

        * bindings/scripts/CodeGeneratorV8.pm: Renamed AllowAllocation to ConstructorMode.
        (GenerateConstructorCallback):
        * bindings/scripts/test/V8/V8TestInterface.cpp: Updated a run-binding-tests result.
        (WebCore::V8TestInterface::constructorCallback):
        * bindings/v8/V8Binding.cpp: Renamed AllowAllocation to ConstructorMode.
        (WebCore::V8BindingPerIsolateData::V8BindingPerIsolateData):
        * bindings/v8/V8Binding.h: Ditto.
        (WebCore::ConstructorMode::ConstructorMode):
        (WebCore::ConstructorMode::~ConstructorMode):
        (WebCore::ConstructorMode::current):
        (WebCore::SafeAllocation::newInstance):
        * bindings/v8/V8Proxy.cpp: Ditto.
        (WebCore::V8Proxy::checkNewLegal):
        * bindings/v8/custom/V8EventConstructors.cpp: Ditto.
        (WebCore::constructV8Event):

2011-10-19  Tomasz Morawski  <t.morawski@samsung.com>

        [EFL] Added missing dummy platformDescription function
        https://bugs.webkit.org/show_bug.cgi?id=70310

        Reviewed by Ryosuke Niwa.

        Added dummy platformDescription function needed to compile WK2.

        * platform/efl/ContextMenuEfl.cpp:
        (WebCore::ContextMenu::platformDescription):

2011-10-18  Kentaro Hara  <haraken@chromium.org>

        Generate a SharedWorker constructor of V8 using [Constructor] IDL
        https://bugs.webkit.org/show_bug.cgi?id=67879

        Reviewed by Hajime Morita.

        Spec: http://dev.w3.org/html5/workers/#shared-workers-and-the-sharedworker-interface
        This patch changed SharedWorker::create(..., context, ec) to
        SharedWorker::create(context, ..., ec), since a parameter specified by [CallWith]
        should come at the beginning (c.f. bug 69799).

        Test: ui_tests:WorkerTest.FLAKY_SharedWorkerFastConstructor
              ui_tests:WorkerTest.FLAKY_SharedWorkerFastName

        * WebCore.gypi: Removed bindings/v8/custom/V8SharedWorkerCustom.cpp
        * WebCore.pro: Ditto.
        * bindings/js/JSSharedWorkerCustom.cpp: Moved ScriptExecutionContext parameter to the beginning.
        (WebCore::JSSharedWorkerConstructor::constructJSSharedWorker):
        * bindings/v8/custom/V8SharedWorkerCustom.cpp: Removed.
        * workers/SharedWorker.cpp: Moved ScriptExecutionContext parameter to the beginning.
        (WebCore::SharedWorker::create): Ditto.
        * workers/SharedWorker.h: Ditto.
        * workers/SharedWorker.idl: Added [Constructor] IDL.

2011-10-18  Johnny Ding  <jnd@chromium.org>

        Implement NSProcessInfo::systemUptime on Mac Leopard.
        https://bugs.webkit.org/show_bug.cgi?id=66577

        Reviewed by Tony Chang.

        * WebCore.gyp/WebCore.gyp:
        * platform/chromium/ScrollAnimatorChromiumMac.mm:
        (-[NSProcessInfo systemUptime]):

2011-10-18  Sam Weinig  <sam@webkit.org>

        Try to jostle the windows build back to life.

        * rendering/HitTestResult.h:

2011-10-18  Anders Carlsson  <andersca@apple.com>

        Assertion failure when going back in page with navigated subframes
        https://bugs.webkit.org/show_bug.cgi?id=70389
        <rdar://problem/8988444>

        Reviewed by Darin Adler.

        Test: fast/history/history-back-twice-with-subframes-assert.html

        If a single navigation ends up loading multiple frame, the first committed frame will
        end up calling recursiveUpdateForCommit on the main frame which will null out the provisional item
        for all frames on the page. This means that it can null out the provisional item for any frames
        that are still yet to be committed which causes the aforementioned assertion failure.

        Fix this by only nulling out the provisional history item (and saving/restoring the scroll position and
        some other things) for frames that already contain the URL that the item requested. If a frame is being loaded,
        it will null out its provisional history item when it's committed.

        * loader/HistoryController.cpp:
        (WebCore::HistoryController::recursiveUpdateForCommit):

2011-10-18  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r97765.
        http://trac.webkit.org/changeset/97765
        https://bugs.webkit.org/show_bug.cgi?id=70388

        "broke webkit_unit_tests, http/tests/xmlhttprequest
        /xmlhttprequest-test-send-flag.html on linux debug" (Requested
        by dpranke on #webkit).

        * WebCore.gypi:
        * loader/DocumentThreadableLoader.cpp:
        (WebCore::DocumentThreadableLoader::create):
        (WebCore::DocumentThreadableLoader::~DocumentThreadableLoader):
        (WebCore::DocumentThreadableLoader::cancel):
        (WebCore::DocumentThreadableLoader::setDefersLoading):
        (WebCore::DocumentThreadableLoader::willSendRequest):
        (WebCore::DocumentThreadableLoader::didSendData):
        (WebCore::DocumentThreadableLoader::didReceiveResponse):
        (WebCore::DocumentThreadableLoader::didReceiveData):
        (WebCore::DocumentThreadableLoader::didReceiveCachedMetadata):
        (WebCore::DocumentThreadableLoader::didFinishLoading):
        (WebCore::DocumentThreadableLoader::didFail):
        (WebCore::DocumentThreadableLoader::preflightSuccess):
        (WebCore::DocumentThreadableLoader::loadRequest):
        * loader/DocumentThreadableLoader.h:
        * loader/cache/CachedRawResource.cpp:
        (WebCore::CachedRawResource::CachedRawResource):
        (WebCore::CachedRawResource::data):
        * loader/cache/CachedRawResource.h:
        * loader/cache/CachedResource.cpp:
        (WebCore::CachedResource::CachedResource):
        * loader/cache/CachedResource.h:
        (WebCore::CachedResource::setRequestedFromNetworkingLayer):
        * loader/cache/CachedResourceClient.h:
        * loader/cache/CachedResourceRequest.cpp:
        (WebCore::CachedResourceRequest::~CachedResourceRequest):
        (WebCore::CachedResourceRequest::willSendRequest):
        (WebCore::CachedResourceRequest::didFinishLoading):
        (WebCore::CachedResourceRequest::didReceiveResponse):
        (WebCore::CachedResourceRequest::didReceiveData):
        * loader/cache/CachedResourceRequest.h:
        * loader/chromium/CachedRawResourceChromium.cpp: Removed.
        * loader/chromium/CachedResourceRequestChromium.cpp: Removed.
        * loader/chromium/DocumentThreadableLoaderChromium.cpp:
        (WebCore::DocumentThreadableLoader::didDownloadData):
        * loader/icon/IconLoader.h:
        * platform/network/BlobResourceHandle.cpp:
        (WebCore::BlobResourceHandle::notifyResponse):

2011-10-18  Mark Hahnenberg  <mhahnenberg@apple.com>

        Rename static put to putByIndex
        https://bugs.webkit.org/show_bug.cgi?id=70281

        Reviewed by Geoffrey Garen.

        No new tests.

        Renaming versions of deleteProperty that use an unsigned as the property
        name to "deletePropertyByIndex" in preparation for adding them to the 
        MethodTable, which requires unique names for each method.

        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateHeader):
        (GenerateImplementation):
        * bridge/runtime_array.cpp:
        (JSC::RuntimeArray::putVirtual):
        (JSC::RuntimeArray::putByIndex):
        * bridge/runtime_array.h:

2011-10-18  Sam Weinig  <sam@webkit.org>

        Fix the build.

        * rendering/HitTestResult.cpp:
        (WebCore::HitTestResult::absolutePDFURL):
        Fix typo.

2011-10-18  Alexis Menard  <alexis.menard@openbossa.org>

        Unreviewed warning fix after https://bugs.webkit.org/show_bug.cgi?id=70269

        * WebCore.pro:

2011-10-18  Alexey Proskuryakov  <ap@apple.com>

        Expose PDF information in hit test result
        https://bugs.webkit.org/show_bug.cgi?id=70353

        Reviewed by Sam Weinig.

        * WebCore.exp.in:
        * rendering/HitTestResult.cpp:
        (WebCore::HitTestResult::absolutePDFURL):
        * rendering/HitTestResult.h:
        Added HitTestResult::absolutePDFURL(). It will contain a URL when over a PDF object or embed;
        not sure if we want this for PDFImageDocuments.

2011-10-18  Adrienne Walker  <enne@google.com>

        [chromium] Preserve offscreen tiles instead of immediately recycling them
        https://bugs.webkit.org/show_bug.cgi?id=70352

        Reviewed by James Robinson.

        Tested by existing layout tests.

        Prior to having a TextureManager class, tiled layers recycled their
        textures internally to avoid reallocation. Unfortunately, it recycled
        these tiles as soon as they went offscreen, even if they were still
        valid. Instead, keep tiles around forever, letting the TextureManager
        decide (via LRU) when to reclaim the underlying textures. This will
        improve scrolling performance due to not needing to repaint tiles.

        This change does lead to more texture reallocation for any textures
        that get reclaimed, but the command buffer implementation already
        pools and reuses texture ids, so it should not introduce additional
        flush syncs. If there's any performance penalty, it'll be at the
        driver level, but I'd prefer to measure that there's a problem before
        prematurely optimizing and adding complexity to the TextureManager.

        * platform/graphics/chromium/TiledLayerChromium.cpp:
        (WebCore::TiledLayerChromium::cleanupResources):
        (WebCore::TiledLayerChromium::createTile):
        (WebCore::TiledLayerChromium::prepareToUpdate):
        * platform/graphics/chromium/TiledLayerChromium.h:

2011-10-18  Adam Klein  <adamk@chromium.org>

        [MutationObservers] Implement WebKitMutationObserver.observe for characterData changes
        https://bugs.webkit.org/show_bug.cgi?id=68957

        Reviewed by Ryosuke Niwa.

        Test: fast/mutation/observe-characterdata.html

        * dom/CharacterData.cpp:
        (WebCore::CharacterData::dispatchModifiedEvent):

2011-10-18  Scott Byer  <scottbyer@chromium.org>

        Scroll animator tracing
        https://bugs.webkit.org/show_bug.cgi?id=70280

        Reviewed by James Robinson.

        No functional difference, no test needed.

        * platform/ScrollAnimatorNone.cpp:
        (WebCore::ScrollAnimatorNone::scroll):
        (WebCore::ScrollAnimatorNone::animationTimerFired):

2011-10-18  James Robinson  <jamesr@chromium.org>

        [chromium] Remove USE(THREADED_COMPOSITING) from the tree, this is controlled by a runtime setting
        https://bugs.webkit.org/show_bug.cgi?id=70356

        Reviewed by Kenneth Russell.

        * platform/graphics/chromium/cc/CCLayerTreeHost.h:

2011-10-18  Ojan Vafai  <ojan@chromium.org>

        cleanup some FIXMEs in RenderFlexibleBox
        https://bugs.webkit.org/show_bug.cgi?id=70374

        Reviewed by Darin Adler.

        No new tests. Existing tests cover all changes.

        * rendering/RenderFlexibleBox.cpp:
        (WebCore::RenderFlexibleBox::layoutBlock):
        (WebCore::RenderFlexibleBox::flowAwareBorderAndPaddingLogicalHeight):
        (WebCore::RenderFlexibleBox::flowAwareMarginLogicalHeightForChild):
        * rendering/RenderFlexibleBox.h:
        Removed the FIXME to implement computePreferredLogicalWidths. It doesn't
        seem to be necessary, at least not with the current test cases.

2011-10-18  Joseph Pecoraro  <joepeck@webkit.org>

        Web Inspector: Some localizedStrings.js Updates
        https://bugs.webkit.org/show_bug.cgi?id=70365

        Reviewed by Darin Adler.

        Fixed syntax issue, added missing strings, and removed a duplicate.

        * English.lproj/localizedStrings.js:

2011-10-18  Tony Chang  <tony@chromium.org>

        fix unused-but-set-variable warnings in WebCore
        https://bugs.webkit.org/show_bug.cgi?id=70344

        Reviewed by Adam Barth.

        This is a new compiler warning in gcc 4.6.

        * bindings/v8/V8DOMWrapper.cpp:
        (WebCore::V8DOMWrapper::isWrapperOfType):
        * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
        (WebCore::ComplexTextController::normalizeSpacesAndMirrorChars):

2011-10-18  Dan Bernstein  <mitz@apple.com>

        Certain column-rule styles render incorrectly in vertical writing modes
        https://bugs.webkit.org/show_bug.cgi?id=70362

        Reviewed by Darin Adler.

        Test: fast/multicol/vertical-rl/rule-style.html

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::paintColumnRules): Use the correct border sides for vertical writing modes.

2011-10-18  Anna Cavender  <annacc@chromium.org>

        Fix broken binding tests by changing G_MAXUSHORT to G_MAXUINT in WebKitDOMTestObj.cpp.
        https://bugs.webkit.org/show_bug.cgi?id=70267

        Reviewed by Daniel Bates.

        Tests: fixing WebKitDOMTestObj.cpp

        * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
        (webkit_dom_test_obj_class_init): Change G_MAXUSHORT to G_MAXUINT

2011-10-18  Julien Chaffraix  <jchaffraix@webkit.org>

        Crash in RenderDeprecatedFlexibleBox::layoutHorizontalBox
        https://bugs.webkit.org/show_bug.cgi?id=70183

        Reviewed by David Hyatt.

        Test: fast/flexbox/layoutHorizontal-crash.html

        The deferred scroll information update logic was not updated when an object was destroy'ed.

        The fix is very simple. As the deferred logic was only used with deprecated flexbox, it is a
        pretty uncommon cases so let's optimize the new code for the common case.

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::willBeDestroyed):

2011-10-18  Adam Klein  <adamk@chromium.org>

        [MutationObservers] Clean up MutationObserver code in Node
        https://bugs.webkit.org/show_bug.cgi?id=70349

        Reviewed by Ryosuke Niwa.

        Three small cleanups.

        No new tests, no behavior change.

        * dom/Node.cpp:
        (WebCore::Node::clearRareData): Use indices instead of iterator in for loop; fix typo.
        (WebCore::Node::registerMutationObserver): Inline single call to Node::ensureMutationObserverEntries.
        * dom/Node.h: Make mutationObserverEntries private.

2011-10-18  James Robinson  <jamesr@chromium.org>

        [chromium] Fix shutdown race when posting main thread task to CCThreadProxy and enable tests
        https://bugs.webkit.org/show_bug.cgi?id=70161

        Reviewed by David Levin.

        Adds a weak pointer mechanism to cancel main thread tasks posted to CCThreadProxy instances from the compositor
        thread. Previously there was a race condition where main thread tasks could run even after the CCThreadProxy was
        destroyed.

        This race does not exist in the other direction because when tearing down a CCThreadProxy we first post a quit
        task to the compositor thread and then suspend execution of the main thread until all compositor tasks for the
        CCThreadProxy have been drained.

        Covered by the now-enabled CCLayerTreeHostTest* unit tests.

        * WebCore.gypi:
        * platform/graphics/chromium/cc/CCScopedMainThreadProxy.h: Added.
        (WebCore::CCScopedMainThreadProxy::create):
        (WebCore::CCScopedMainThreadProxy::postTask):
        (WebCore::CCScopedMainThreadProxy::shutdown):
        (WebCore::CCScopedMainThreadProxy::CCScopedMainThreadProxy):
        (WebCore::CCScopedMainThreadProxy::runTaskIfNotShutdown):
        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
        (WebCore::CCThreadProxy::CCThreadProxy):
        (WebCore::CCThreadProxy::~CCThreadProxy):
        (WebCore::CCThreadProxy::createBeginFrameAndCommitTaskOnCCThread):
        * platform/graphics/chromium/cc/CCThreadProxy.h:

2011-10-13  Ojan Vafai  <ojan@chromium.org>

        implement flex-flow:column
        https://bugs.webkit.org/show_bug.cgi?id=70082

        Reviewed by David Hyatt.

        There's still a bug with a FIXME where we don't compute the right
        size for the container of the flexbox in the presence of
        orthogonal flows. That's the cause of all the failing cases
        in the tests.

        Tests: css3/flexbox/flex-flow-border.html
               css3/flexbox/flex-flow-margins.html
               css3/flexbox/flex-flow-orientations.html
               css3/flexbox/flex-flow-overflow.html
               css3/flexbox/flex-flow-padding.html
               css3/flexbox/flex-flow.html

        * rendering/RenderFlexibleBox.cpp:
        (WebCore::RenderFlexibleBox::layoutBlock):
        (WebCore::RenderFlexibleBox::hasOrthogonalFlow):
        (WebCore::RenderFlexibleBox::isColumnFlow):
        (WebCore::RenderFlexibleBox::isHorizontalFlow):
        (WebCore::RenderFlexibleBox::isLeftToRightFlow):
        Use isHorizontalFlow and isLeftToRightFlow so that methods like
        flowAwareBorderStart look exactly like borderStart with
        isHorizontalWritingMode and isLeftToRightDirection replaced.

        (WebCore::RenderFlexibleBox::setFlowAwareLogicalHeight):
        (WebCore::RenderFlexibleBox::flowAwareLogicalHeightForChild):
        (WebCore::RenderFlexibleBox::flowAwareLogicalWidthForChild):
        (WebCore::RenderFlexibleBox::flowAwareLogicalHeight):
        (WebCore::RenderFlexibleBox::flowAwareLogicalWidth):
        (WebCore::RenderFlexibleBox::flowAwareContentLogicalHeight):
        (WebCore::RenderFlexibleBox::flowAwareContentLogicalWidth):
        (WebCore::RenderFlexibleBox::transformedWritingMode):
        Transform the writing-mode based of the flex-flow and direction
        values. That methods like flowAwareBorderBefore look exactly like
        borderBefore, except it switches over a different value.

        (WebCore::RenderFlexibleBox::flowAwareBorderStart):
        (WebCore::RenderFlexibleBox::flowAwareBorderBefore):
        (WebCore::RenderFlexibleBox::flowAwareBorderAfter):
        (WebCore::RenderFlexibleBox::flowAwarePaddingStart):
        (WebCore::RenderFlexibleBox::flowAwarePaddingBefore):
        (WebCore::RenderFlexibleBox::flowAwarePaddingAfter):
        (WebCore::RenderFlexibleBox::flowAwareMarginStartForChild):
        (WebCore::RenderFlexibleBox::flowAwareMarginEndForChild):
        (WebCore::RenderFlexibleBox::flowAwareMarginBeforeForChild):
        (WebCore::RenderFlexibleBox::flowAwareMarginAfterForChild):
        (WebCore::RenderFlexibleBox::setFlowAwareMarginStartForChild):
        (WebCore::RenderFlexibleBox::setFlowAwareMarginEndForChild):
        (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
        (WebCore::RenderFlexibleBox::alignChildrenBlockDirection):
        * rendering/RenderFlexibleBox.h:

2011-10-18  Shawn Singh  <shawnsingh@chromium.org>

        [chromium] Tracking update rects in LayerChromium and CCLayerImpl.
        https://bugs.webkit.org/show_bug.cgi?id=69441

        Reviewed by James Robinson.

        This patch does not do much on its own, but is just part 1 of a
        string of other patches which will use these rects for
        visualization and scissoring.  The appropriate testing will be
        associated with those patches.

        * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
        (WebCore::Canvas2DLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/LayerChromium.cpp:
        (WebCore::LayerChromium::pushPropertiesTo):
        * platform/graphics/chromium/LayerChromium.h:
        * platform/graphics/chromium/TiledLayerChromium.cpp:
        (WebCore::TiledLayerChromium::cleanupResources):
        (WebCore::TiledLayerChromium::updateCompositorResources):
        (WebCore::TiledLayerChromium::pushPropertiesTo):
        (WebCore::TiledLayerChromium::prepareToUpdate):
        * platform/graphics/chromium/TiledLayerChromium.h:
        * platform/graphics/chromium/VideoLayerChromium.cpp:
        (WebCore::VideoLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/WebGLLayerChromium.cpp:
        (WebCore::WebGLLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/cc/CCLayerImpl.h:
        (WebCore::CCLayerImpl::updateRect):
        (WebCore::CCLayerImpl::setUpdateRect):

2011-10-18  Anna Cavender  <annacc@chromium.org>

        Change CodeGeneratorGObject.pm to use g_value_get_uint() instead of g_value_get_ushort()
        for IDL attributes of type unsigned short.
        https://bugs.webkit.org/show_bug.cgi?id=70267

        Reviewed by Xan Lopez.

        Tests: small change to WebKitDOMTestObj.cpp

        * bindings/scripts/CodeGeneratorGObject.pm:
        (GetGValueTypeName): convert unsigned short to uint instead of ushort
        * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
        (webkit_dom_test_obj_set_property): expect g_value_get_uint instead of g_value_get_ushort
        (webkit_dom_test_obj_class_init): expect G_MAXUSHORT instead of G_MAXUINT16

2011-10-18  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: ScriptsPanel's should use similar logic to decide whether it could show an anchor location and actually showing it.
        https://bugs.webkit.org/show_bug.cgi?id=70322

        Reviewed by Pavel Feldman.

        * inspector/front-end/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype.canShowAnchorLocation):
        (WebInspector.ScriptsPanel.prototype._showSourceLine):

2011-10-18  Eric Carlson  <eric.carlson@apple.com>

        Use the new cached cue loader
        https://bugs.webkit.org/show_bug.cgi?id=70269

        Reviewed by Antti Koivisto.

        No new tests, no functionality changed.

        * CMakeLists.txt: Remove CueParser.cpp/h and CueParserPrivate.h.
        * GNUmakefile.list.am: Ditto.
        * WebCore.gypi: Ditto.
        * WebCore.xcodeproj/project.pbxproj: Ditto.

        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::loadTextTracks):
        (WebCore::HTMLMediaElement::textTrackReadyStateChanged): New, not implemented yet.
        (WebCore::HTMLMediaElement::textTrackModeChanged): Ditto.
        (WebCore::HTMLMediaElement::textTrackCreated): Ditto.
        (WebCore::HTMLMediaElement::textTrackAddCues): Ditto.
        (WebCore::HTMLMediaElement::textTrackRemoveCues): Ditto.
        (WebCore::HTMLMediaElement::textTrackAddCue): Ditto.
        (WebCore::HTMLMediaElement::textTrackRemoveCue): Ditto.
        * html/HTMLMediaElement.h:

        * html/HTMLTrackElement.cpp:
        (WebCore::HTMLTrackElement::load): Update for interface change
        (WebCore::HTMLTrackElement::textTrackLoadingCompleted): New, dispatch 'load' or 'error' event.
        * html/HTMLTrackElement.h:

        * html/LoadableTextTrack.cpp:
        (WebCore::LoadableTextTrack::LoadableTextTrack): Add TextTrackClient and TextTrackLoadingClient
            parameters.
        (WebCore::LoadableTextTrack::load): Make url parameter KURL instead of String. Create the 
            cue loader, trigger the load.
        (WebCore::LoadableTextTrack::newCuesAvailable): New callback from the loader. Not implemented yet.
        (WebCore::LoadableTextTrack::cueLoadingStarted): Ditto.
        (WebCore::LoadableTextTrack::cueLoadingCompleted): Ditto.
        * html/LoadableTextTrack.h:

        * html/MutableTextTrack.cpp:
        (WebCore::MutableTextTrack::MutableTextTrack): Add TextTrackClient parameter.
        * html/MutableTextTrack.h:
        (WebCore::MutableTextTrack::create):

        * html/TextTrack.cpp:
        (WebCore::TextTrack::TextTrack): Add TextTrackClient parameter.
        (WebCore::TextTrack::~TextTrack): Tell the client to remove all cues, forget the client.
        (WebCore::TextTrack::setReadyState): Tell client about ready state change.
        (WebCore::TextTrack::setMode): Tell client about mode change.
        * html/TextTrack.h:
        (WebCore::TextTrackClient::textTrackAddCues): New client interface.
        (WebCore::TextTrackClient::textTrackRemoveCues): Ditto.
        (WebCore::TextTrackClient::textTrackAddCue): Ditto.
        (WebCore::TextTrackClient::textTrackRemoveCue): Ditto.
        (WebCore::TextTrack::create):
        (WebCore::TextTrack::trackType): New.
        (WebCore::TextTrack::client): Ditto.
        (WebCore::TextTrack::setClient): Ditto.

        * html/track/CueParser.cpp: Removed.
        * html/track/CueParser.h: Removed.
        * html/track/CueParserPrivate.h: Removed.

        * html/track/WebVTTParser.cpp:
        (WebCore::WebVTTParser::fileIdentifierMaximumLength): New, return length of WebVTT file
            magic number.
        (WebCore::WebVTTParser::hasRequiredFileIdentifier): Update to use constants instead of hard
            coded lengths.
        (WebCore::WebVTTParser::WebVTTParser): Initialize "m_client" in the initilization list
            instead of setting it in the constructor.
        (WebCore::WebVTTParser::getNewCues): Renamed from fetchParsedCues.
        * html/track/WebVTTParser.h:
        (WebCore::WebVTTParser::create): Take a WebVTTParserClient* instead of a CueParserPrivateClient*.

        * loader/CueLoader.cpp:
        (WebCore::CueLoader::CueLoader):
        (WebCore::CueLoader::~CueLoader): Remove client.
        (WebCore::CueLoader::cueLoadTimerFired): Tell client about new clues and/or that the load
            has finished.
        (WebCore::CueLoader::processNewCueData): Process newly loaded data.
        (WebCore::CueLoader::didReceiveData): Ditto.
        (WebCore::CueLoader::notifyFinished): Do final processing as necessary, prime the timer
            to call client.
        (WebCore::CueLoader::load): Create resource loader, initiate loading.
        (WebCore::CueLoader::newCuesParsed): Prime timer to tell client about newly parsed cues.
        (WebCore::CueLoader::getNewCues): Get new cues from parser.
        * loader/CueLoader.h:
        (WebCore::CueLoader::create):

2011-10-18  Adam Barth  <abarth@webkit.org>

        Always enable ENABLE(XPATH)
        https://bugs.webkit.org/show_bug.cgi?id=70217

        Reviewed by Eric Seidel.

        As discussed on webkit-dev, we're reducing the complexity of WebKit by
        removing unneeded configuration options.  ENABLE(XPATH) is enabled on
        every port, so we are removing the ability to disable the feature.

        * CMakeLists.txt:
        * Configurations/FeatureDefines.xcconfig:
        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * UseJSC.cmake:
        * WebCore.pro:
        * bindings/js/JSCustomXPathNSResolver.cpp:
        * bindings/js/JSCustomXPathNSResolver.h:
        * bindings/js/JSDOMBinding.cpp:
        (WebCore::setDOMException):
        * bindings/js/JSExceptionBase.cpp:
        (WebCore::toExceptionBase):
        * bindings/js/JSXPathResultCustom.cpp:
        * bindings/objc/DOMCustomXPathNSResolver.h:
        * bindings/objc/DOMCustomXPathNSResolver.mm:
        * bindings/objc/DOMInternal.h:
        * bindings/objc/DOMUtility.mm:
        (JSC::createDOMWrapper):
        * bindings/objc/DOMXPath.mm:
        (kit):
        * bindings/objc/PublicDOMInterfaces.h:
        * bindings/v8/V8DOMWrapper.cpp:
        (WebCore::V8DOMWrapper::getXPathNSResolver):
        * bindings/v8/V8DOMWrapper.h:
        * bindings/v8/V8Proxy.cpp:
        (WebCore::V8Proxy::setDOMException):
        * bindings/v8/V8Proxy.h:
        * bindings/v8/custom/V8CustomXPathNSResolver.cpp:
        * bindings/v8/custom/V8CustomXPathNSResolver.h:
        * bindings/v8/custom/V8DocumentCustom.cpp:
        (WebCore::V8Document::evaluateCallback):
        * dom/Document.cpp:
        * dom/Document.h:
        * dom/Document.idl:
        * dom/ExceptionCode.cpp:
        (WebCore::getExceptionCodeDescription):
        * dom/ExceptionCode.h:
        * features.pri:
        * inspector/InspectorDOMAgent.cpp:
        * page/DOMWindow.idl:
        * xml/NativeXPathNSResolver.cpp:
        * xml/NativeXPathNSResolver.h:
        * xml/XPathEvaluator.cpp:
        * xml/XPathEvaluator.h:
        * xml/XPathEvaluator.idl:
        * xml/XPathException.h:
        * xml/XPathException.idl:
        * xml/XPathExpression.cpp:
        * xml/XPathExpression.h:
        * xml/XPathExpression.idl:
        * xml/XPathExpressionNode.cpp:
        * xml/XPathExpressionNode.h:
        * xml/XPathFunctions.cpp:
        * xml/XPathFunctions.h:
        * xml/XPathGrammar.y:
        * xml/XPathNSResolver.cpp:
        * xml/XPathNSResolver.h:
        * xml/XPathNSResolver.idl:
        * xml/XPathNodeSet.cpp:
        * xml/XPathNodeSet.h:
        * xml/XPathParser.cpp:
        * xml/XPathParser.h:
        * xml/XPathPath.cpp:
        * xml/XPathPath.h:
        * xml/XPathPredicate.cpp:
        * xml/XPathPredicate.h:
        * xml/XPathResult.cpp:
        * xml/XPathResult.h:
        * xml/XPathResult.idl:
        * xml/XPathStep.cpp:
        * xml/XPathStep.h:
        * xml/XPathUtil.cpp:
        * xml/XPathUtil.h:
        * xml/XPathValue.cpp:
        * xml/XPathValue.h:
        * xml/XPathVariableReference.cpp:
        * xml/XPathVariableReference.h:

2011-10-18  Chris Fleizach  <cfleizach@apple.com>

        AX: buttons of number type <input> controls are not fully accessible
        https://bugs.webkit.org/show_bug.cgi?id=70241

        Staged commit, part 6.

        Reviewed by Darin Adler.

        Test: platform/mac/accessibility/html5-input-number.html

        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::addImageMapChildren):
        (WebCore::AccessibilityRenderObject::addTextFieldChildren):
        (WebCore::AccessibilityRenderObject::addChildren):
        * accessibility/AccessibilityRenderObject.h:

2011-10-18  Nate Chapin  <japhet@chromium.org>

        Make DocumentThreadableLoader a CachedResourceClient.
        This will allow us to cache ThreadableLoaderClients as
        appropriate in a later patch.
        https://bugs.webkit.org/show_bug.cgi?id=61225

        Reviewed by Antti Koivisto.

        No new tests, no functionality change intended.

        * WebCore.gypi:
        * loader/DocumentThreadableLoader.cpp:
        (WebCore::DocumentThreadableLoader::notifyFinished): CachedResourceClients don't send separate callbacks
            for didFail() and didFinishLoading(), so we need to differentiate here.
        (WebCore::DocumentThreadableLoader::loadRequest): Call CachedResourceLoader::requestRawResource()
            instead of ResourceLoadScheduler::scheduleSubresourceLoad().
        * loader/DocumentThreadableLoader.h:
        * loader/cache/CachedRawResource.cpp:
        (WebCore::CachedRawResource::data): Handle the complexity of some ThreadableLoaderClients setting
            DoNotBufferData in ResoureLoaderOptions. If the DataBufferingPolicy is BufferData, then the
            'data' input parameter will contain all data received so far, and we need to determine the
            incremental data to forward to the clients. If the policy is DoNotBufferData, 'data' is just
            the incremental data.
        * loader/cache/CachedRawResource.h:
        * loader/cache/CachedResource.cpp:
        * loader/cache/CachedResource.h:
        (WebCore::CachedResource::preloadResult):
        (WebCore::CachedResource::didSendData):
        (WebCore::CachedResource::didDownloadData):
        (WebCore::CachedResource::setLoadFinishTime):
        (WebCore::CachedResource::loadFinishTime):
        * loader/cache/CachedResourceClient.h: Add several new callbacks needed by DocumentThreadableLoader.
        * loader/cache/CachedResourceRequest.cpp:
        (WebCore::CachedResourceRequest::didReceiveResponse): CachedResource::setResponse() can now cancel
            the request, so protect appropriately.
        * loader/cache/CachedResourceRequest.h:
        * loader/chromium/CachedRawResourceChromium.cpp: Added (plumb didDownloadData() to DocumentThreadableLoader).
        * loader/chromium/CachedResourceRequestChromium.cpp: Added (plumb didDownloadData() to DocumentThreadableLoader).
        * loader/chromium/DocumentThreadableLoaderChromium.cpp:
        * platform/network/BlobResourceHandle.cpp:
        (WebCore::BlobResourceHandle::notifyResponse): Protect before setting response, since it might kill us.

2011-10-18  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r97752.
        http://trac.webkit.org/changeset/97752
        https://bugs.webkit.org/show_bug.cgi?id=70332

        Caused assertion failures in MediaList::setParentStyleSheet()
        on the apple bots. (Requested by kling on #webkit).

        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/JSDOMBinding.h:
        * css/CSSImportRule.cpp:
        (WebCore::CSSImportRule::CSSImportRule):
        (WebCore::CSSImportRule::~CSSImportRule):
        * css/CSSMediaRule.cpp:
        (WebCore::CSSMediaRule::CSSMediaRule):
        (WebCore::CSSMediaRule::~CSSMediaRule):
        * css/CSSMediaRule.h:
        * css/MediaList.cpp:
        (WebCore::MediaList::MediaList):
        (WebCore::MediaList::notifyChanged):
        * css/MediaList.h:
        * css/StyleSheet.cpp:
        (WebCore::StyleSheet::~StyleSheet):
        (WebCore::StyleSheet::setMedia):

2011-10-18  Anna Cavender  <annacc@chromium.org>

        Change TextTrack to use the word DISABLED instead of OFF for mode
        https://bugs.webkit.org/show_bug.cgi?id=70268

        Reviewed by Daniel Bates.

        No new tests. No new functionality.

        * html/TextTrack.cpp:
        (WebCore::TextTrack::setMode): use Disabled instead of Off
        * html/TextTrack.h: update Mode enum to use Disabled instead of Off

2011-10-18  Chris Fleizach  <cfleizach@apple.com>

        AX: buttons of number type <input> controls are not fully accessible
        https://bugs.webkit.org/show_bug.cgi?id=70241

        Staged commit, part 5.

        Reviewed by Darin Adler.

        * accessibility/AXObjectCache.cpp:
        (WebCore::AXObjectCache::getOrCreate):
        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::boundingBoxRect):

2011-10-18  Antti Koivisto  <antti@apple.com>

        Move default stylesheet loading to a separate function
        https://bugs.webkit.org/show_bug.cgi?id=70331

        Reviewed by Andreas Kling.
        
        - Move default stylesheet loading out from CSSStyleSelector::styleForElement()
        - Rename e -> element
        - Remove pointless reffing of the placeholder style.

        * css/CSSStyleSelector.cpp:
        (WebCore::ensureDefaultStyleSheetsForElement):
        (WebCore::isAtShadowBoundary):
        (WebCore::CSSStyleSelector::styleForElement):

2011-10-18  Chris Fleizach  <cfleizach@apple.com>

        AX: buttons of number type <input> controls are not fully accessible
        https://bugs.webkit.org/show_bug.cgi?id=70241

        Staged commit part 4.

        Reviewed by Darin Adler.

        * accessibility/AccessibilityMockObject.h:
        (WebCore::AccessibilityMockObject::isMockObject):
        (WebCore::AccessibilityMockObject::detachFromParent):
        * accessibility/AccessibilityObject.cpp:
        (WebCore::AccessibilityObject::elementAccessibilityHitTest):
        * accessibility/mac/WebAccessibilityObjectWrapper.mm:
        (-[WebAccessibilityObjectWrapper accessibilityActionNames]):
        (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
        (-[WebAccessibilityObjectWrapper subrole]):
        (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

2011-10-18  Chris Fleizach  <cfleizach@apple.com>

        AX: buttons of number type <input> controls are not fully accessible
        https://bugs.webkit.org/show_bug.cgi?id=70241

        Staged commit part 3. Committing the new spin button classes.

        Reviewed by Darin Adler.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * accessibility/AccessibilitySpinButton.cpp: Added.
        (WebCore::AccessibilitySpinButton::create):
        (WebCore::AccessibilitySpinButton::AccessibilitySpinButton):
        (WebCore::AccessibilitySpinButton::~AccessibilitySpinButton):
        (WebCore::AccessibilitySpinButton::incrementButton):
        (WebCore::AccessibilitySpinButton::decrementButton):
        (WebCore::AccessibilitySpinButton::elementRect):
        (WebCore::AccessibilitySpinButton::addChildren):
        (WebCore::AccessibilitySpinButton::step):
        (WebCore::AccessibilitySpinButtonPart::AccessibilitySpinButtonPart):
        (WebCore::AccessibilitySpinButtonPart::create):
        (WebCore::AccessibilitySpinButtonPart::elementRect):
        (WebCore::AccessibilitySpinButtonPart::press):
        * accessibility/AccessibilitySpinButton.h: Added.
        (WebCore::AccessibilitySpinButton::setSpinButtonElement):
        (WebCore::AccessibilitySpinButton::roleValue):
        (WebCore::AccessibilitySpinButton::accessibilityIsIgnored):
        (WebCore::AccessibilitySpinButton::isSpinButton):
        (WebCore::AccessibilitySpinButtonPart::~AccessibilitySpinButtonPart):
        (WebCore::AccessibilitySpinButtonPart::isIncrementor):
        (WebCore::AccessibilitySpinButtonPart::setIsIncrementor):
        (WebCore::AccessibilitySpinButtonPart::roleValue):
        (WebCore::AccessibilitySpinButtonPart::isSpinButtonPart):
        (WebCore::AccessibilitySpinButtonPart::accessibilityIsIgnored):
        (WebCore::toAccessibilitySpinButton):
        (WebCore::toAccessibilitySpinButtonPart):

2011-10-18  Chris Fleizach  <cfleizach@apple.com>

        AX: buttons of number type <input> controls are not fully accessible
        https://bugs.webkit.org/show_bug.cgi?id=70241

        Phase 2 of the staged commit.

        Reviewed by Darin Adler.

        * accessibility/AccessibilityObject.cpp:
        (WebCore::AccessibilityObject::boundingBoxForQuads):
        * accessibility/AccessibilityObject.h:
        (WebCore::AccessibilityObject::isSpinButton):
        (WebCore::AccessibilityObject::isSpinButtonPart):
        (WebCore::AccessibilityObject::isMockObject):

2011-10-18  Chris Fleizach  <cfleizach@apple.com>

        AX: buttons of number type <input> controls are not fully accessible
        https://bugs.webkit.org/show_bug.cgi?id=70241

        Expose the spin button object to the AX hierarchy. Since there is no distinct
        render object that backs this object, a mock object needs to be created for the entire
        spin button and the actual increment and decrement buttons inside.

        This will be a staged commit since the first time around Windows layout tests started crashing for an undeterminable reason.

        Reviewed by Darin Adler.

        * html/shadow/TextControlInnerElements.cpp:
        (WebCore::SpinButtonElement::step):
        (WebCore::SpinButtonElement::repeatingTimerFired):
        * html/shadow/TextControlInnerElements.h:

2011-10-18  Andreas Kling  <kling@webkit.org>

        MediaList: Remove inheritance from StyleBase.
        https://bugs.webkit.org/show_bug.cgi?id=70203

        Reviewed by Darin Adler.

        * css/MediaList.h:
        (WebCore::MediaList::parentStyleSheet):
        (WebCore::MediaList::setParentStyleSheet):
        * css/MediaList.cpp:
        (WebCore::MediaList::MediaList):
        (WebCore::MediaList::notifyChanged):

            Change MediaList to no longer inherit from StyleBase. The parent()/setParent()
            mechanism was replaced by explicit parentStyleSheet()/setParentStyleSheet().

        * css/CSSImportRule.cpp:
        (WebCore::CSSImportRule::CSSImportRule):
        (WebCore::CSSImportRule::~CSSImportRule):
        * css/CSSMediaRule.cpp:
        (WebCore::CSSMediaRule::CSSMediaRule):
        (WebCore::CSSMediaRule::~CSSMediaRule):

            Change StyleBase::setParent() calls to MediaList::setParentStyleSheet().
            CSSRules are never moved between stylesheets, so the parent style sheet pointer
            is valid for the MediaList's lifetime.

        * css/StyleSheet.cpp:
        (WebCore::StyleSheet::~StyleSheet):

            Change StyleBase::setParent() calls to MediaList::setParentStyleSheet().

        (WebCore::StyleSheet::setMedia):

            Change StyleBase::setParent() calls to MediaList::setParentStyleSheet().
            Assert that the parent sheet is either null, or this, as MediaLists should never
            be reparented to other sheets.
            Assert that the StyleSheet is indeed a CSSStyleSheet.  XSLStyleSheet inherits from
            StyleSheet, but it shouldn't be using the MediaList.

        * bindings/js/JSDOMBinding.h:
        (WebCore::root):

            Add MediaList* specific overload for root() since it can't fall back
            to root(StyleBase*) anymore.

        * WebCore.xcodeproj/project.pbxproj:

            Add some PrivateHeaders to accomodate the JSDOMBinding.h changes.

        * css/CSSMediaRule.h:

            Remove unnecessary forward-declaration of MediaList.

2011-10-18  Andreas Kling  <kling@webkit.org>

        XSLStyleSheet only needs to manage XSLImportRule children.
        https://bugs.webkit.org/show_bug.cgi?id=70326

        Reviewed by Antti Koivisto.

        * css/StyleBase.h:
        * xml/XSLImportRule.h:
        * css/CSSRule.h:
        (WebCore::CSSRule::isImportRule):

            Move StyleBase::isImportRule() down to CSSRule. Since XSLImportRule no longer
            implements it, it's now specific to CSSImportRule.

        * xml/XSLStyleSheet.h:

            Change m_children to be a vector of XSLImportRules. Also remove length(),
            item() and append() since they were only used internally to modify m_children.

        * xml/XSLStyleSheetQt.cpp:
        (WebCore::XSLStyleSheet::~XSLStyleSheet):
        * xml/XSLStyleSheetLibxslt.cpp:
        (WebCore::XSLStyleSheet::~XSLStyleSheet):
        (WebCore::XSLStyleSheet::isLoading):
        (WebCore::XSLStyleSheet::clearDocuments):
        (WebCore::XSLStyleSheet::loadChildSheet):
        (WebCore::XSLStyleSheet::locateStylesheetSubResource):

            Remove now-unnecessary isImportRule() checks and tidy up the code a bit.

2011-10-18  Zan Dobersek  <zandobersek@gmail.com>

        [Gtk] Support for client-based geolocation
        https://bugs.webkit.org/show_bug.cgi?id=64970

        Reviewed by Martin Robinson.

        Add feature defines for client-based geolocation when geolocation is enabled,
        since this is the providing method that is now used by default. Remove
        service-based providing method completely as it is not needed anymore.

        * GNUmakefile.am: Add feature defines for client-based geolocation.
        * GNUmakefile.list.am: Remove GeolocationServiceGtk.* files from compilation.
        * platform/gtk/GeolocationServiceGtk.cpp: Removed.
        * platform/gtk/GeolocationServiceGtk.h: Removed.

2011-10-18  Antti Koivisto  <antti@apple.com>

        REGRESSION(r97248): :visited as descendant selector broken
        https://bugs.webkit.org/show_bug.cgi?id=70122

        Reviewed by Nikolas Zimmerman.
        
        Make ":visited foo" and similar selectors work correctly again. They can affect 
        the visited style of an element inside a visited link.

        Test: fast/selectors/visited-descendant.html

        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyDeclarations): 
        
            Apply visited style to children of visited links too.
            
        * css/SelectorChecker.cpp:
        (WebCore::SelectorChecker::checkSelector): 
        
            Don't disable visited matching until we run into first ancestor link or use combinator other than child/descendant.

        (WebCore::SelectorChecker::determineLinkMatchType):
        
            Look into child/descendant component selectors too to determine the link match type.

2011-10-18  Andreas Kling  <kling@webkit.org>

        Move CSSRule specific virtuals from StyleBase down into CSSRule.
        https://bugs.webkit.org/show_bug.cgi?id=70240

        Reviewed by Darin Adler.

        Move all the isFooRule() virtuals except isImportRule() to CSSRule
        since they only make sense for its subclasses. isRule() remains in
        StyleBase since we still need it for the parent chain traversal.
        isImportRule() remains because XSLImportRule implements it.

        Also moved insertedIntoParent() and removed its usage in
        XSLStyleSheet since it is only reimplemented by CSSImportRule.

        * css/CSSRule.h:
        (WebCore::CSSRule::isCharsetRule):
        (WebCore::CSSRule::isFontFaceRule):
        (WebCore::CSSRule::isKeyframeRule):
        (WebCore::CSSRule::isKeyframesRule):
        (WebCore::CSSRule::isMediaRule):
        (WebCore::CSSRule::isPageRule):
        (WebCore::CSSRule::isStyleRule):
        (WebCore::CSSRule::isRegionStyleRule):
        (WebCore::CSSRule::insertedIntoParent):
        * css/StyleBase.h:
        (WebCore::StyleBase::isImportRule):
        (WebCore::StyleBase::isCSSStyleSheet):
        * xml/XSLStyleSheet.h:
        (WebCore::XSLStyleSheet::append):

2011-10-18  Sachin Puranik  <jcqt43@motorola.com>

        Option.value should trim extra internal html spaces
        https://bugs.webkit.org/show_bug.cgi?id=69455

        Reviewed by Kent Tamura.

        Currently option.value does not trim the internal white space as suggested by spec. This patch implements the same.

        Test: fast/forms/option-value-trim-html-spaces.html

        * dom/OptionElement.cpp: Removed a function as this implementation is moved to the HTMLOptionElement.cpp file.
        * html/HTMLOptionElement.cpp:
        (WebCore::HTMLOptionElement::value): Implementation of .value function which will now trim the html white spaces.

2011-10-18  Mihnea Ovidenie  <mihnea@adobe.com>

        [CSS Regions]Parse @-webkit-region rule
        https://bugs.webkit.org/show_bug.cgi?id=70021

        Reviewed by David Hyatt.

        Test: fast/regions/parsing-region-style-rule.html

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * bindings/objc/DOMCSS.mm:
        (kitClass):
        * bindings/v8/custom/V8CSSRuleCustom.cpp:
        (WebCore::toV8):
        * css/CSSGrammar.y:
        * css/CSSMediaRule.cpp:
        (WebCore::CSSMediaRule::cssText):
        * css/CSSParser.cpp:
        (WebCore::CSSParser::setReusableRegionSelectorVector):
        (WebCore::CSSParser::createRegionStylingRule):
        * css/CSSParser.h:
        (WebCore::CSSParser::reusableRegionSelectorVector):
        * css/CSSRegionStyleRule.cpp: Added.
        (WebCore::CSSRegionStyleRule::CSSRegionStyleRule):
        (WebCore::CSSRegionStyleRule::~CSSRegionStyleRule):
        (WebCore::CSSRegionStyleRule::cssText):
        * css/CSSRegionStyleRule.h: Added.
        * css/CSSRule.h:
        * css/CSSRule.idl:
        * css/CSSRuleList.cpp:
        (WebCore::CSSRuleList::item):
        (WebCore::CSSRuleList::rulesText):
        * css/CSSRuleList.h:
        * css/CSSSelectorList.cpp:
        (WebCore::CSSSelectorList::selectorsText):
        * css/CSSSelectorList.h:
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::addRegionStyleRule):
        (WebCore::RuleSet::addRulesFromSheet):
        * css/CSSStyleSelector.h:
        * css/StyleBase.h:
        (WebCore::StyleBase::isRegionStyleRule):
        * css/tokenizer.flex:

2011-10-11  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: support displaying multiple sources per single script in ScriptsPanel.
        https://bugs.webkit.org/show_bug.cgi?id=69847

        Reviewed by Pavel Feldman.

        * inspector/front-end/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype._removeSourceFrame):
        (WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced):

2011-10-18  Nikolas Zimmermann  <nzimmermann@rim.com>

        Prepare SVGImage intrinsic size negotiation: Add intrinsic size & ratio calculation functionality to Image
        https://bugs.webkit.org/show_bug.cgi?id=70314

        Reviewed by Antti Koivisto.

        Add a "void computeIntrinsicDimension(Length& intrinsicWidth, Lengt& intrinsicHeight, FloatSize& intrinsicRatio)" helper method
        to Image/GeneratedImage/SVGImage and make it accessible through StyleImage.

        For a regular Image the intrinsicWidth/Height contains just a Length(size().width(), Fixed). In contrary SVGImages pass on the
        style()->width()/height() values from the render style of the RenderSVGRoot renderer. These information are needed to implement
        the size negotiation between embedded SVG images and the embedder.

        No new tests, as this new functionality is not yet used.

        * loader/cache/CachedImage.cpp:
        (WebCore::CachedImage::computeIntrinsicDimensions):
        * loader/cache/CachedImage.h:
        * platform/graphics/GeneratedImage.cpp:
        (WebCore::GeneratedImage::computeIntrinsicDimensions):
        * platform/graphics/GeneratedImage.h:
        * platform/graphics/Image.cpp:
        (WebCore::Image::computeIntrinsicDimensions):
        * platform/graphics/Image.h:
        * platform/graphics/cg/PDFDocumentImage.cpp:
        (WebCore::PDFDocumentImage::computeIntrinsicDimensions):
        * platform/graphics/cg/PDFDocumentImage.h:
        * rendering/style/StyleCachedImage.cpp:
        (WebCore::StyleCachedImage::computeIntrinsicDimensions):
        * rendering/style/StyleCachedImage.h:
        * rendering/style/StyleGeneratedImage.cpp:
        (WebCore::StyleGeneratedImage::computeIntrinsicDimensions):
        * rendering/style/StyleGeneratedImage.h:
        * rendering/style/StyleImage.h:
        * rendering/style/StylePendingImage.h:
        (WebCore::StylePendingImage::computeIntrinsicDimensions):
        * svg/graphics/SVGImage.cpp:
        (WebCore::SVGImage::computeIntrinsicDimensions):
        * svg/graphics/SVGImage.h:

2011-10-17  Alexander Pavlov  <apavlov@chromium.org>

        Web Inspector: [Chromium] Different dimensions are reported for elements onscreen and in the Metrics pane
        https://bugs.webkit.org/show_bug.cgi?id=70242

        Reviewed by Pavel Feldman.

        * inspector/DOMNodeHighlighter.cpp:

2011-10-18  Kentaro Hara  <haraken@chromium.org>

        Unreviewed, rolling out r97697.
        http://trac.webkit.org/changeset/97697
        https://bugs.webkit.org/show_bug.cgi?id=68978

        some tests are broken

        * bindings/js/JSMessageEventCustom.cpp:
        (WebCore::JSMessageEvent::data):
        * bindings/v8/custom/V8MessageEventCustom.cpp:
        (WebCore::V8MessageEvent::dataAccessorGetter):
        (WebCore::V8MessageEvent::portsAccessorGetter):
        (WebCore::V8MessageEvent::initMessageEventCallback):
        * dom/MessageEvent.cpp:
        (WebCore::MessageEventInit::MessageEventInit):
        (WebCore::MessageEvent::MessageEvent):
        (WebCore::MessageEvent::isMessageEvent):
        * dom/MessageEvent.h:
        (WebCore::MessageEvent::create):
        (WebCore::MessageEvent::dataAsSerializedScriptValue):
        (WebCore::MessageEvent::dataAsString):
        (WebCore::MessageEvent::dataAsBlob):
        (WebCore::MessageEvent::dataAsArrayBuffer):
        * dom/MessageEvent.idl:

2011-10-17  Antti Koivisto  <antti@apple.com>

        r97638 caused 3 printing crashes
        https://bugs.webkit.org/show_bug.cgi?id=70284

        Reviewed by Kent Tamura.

        Null check element.

        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyDeclarations):

2011-10-17  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r97669.
        http://trac.webkit.org/changeset/97669
        https://bugs.webkit.org/show_bug.cgi?id=70305

        Broke accessibility tests on Windows (Requested by rniwa on
        #webkit).

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * accessibility/AXObjectCache.cpp:
        (WebCore::AXObjectCache::getOrCreate):
        * accessibility/AccessibilityMockObject.h:
        * accessibility/AccessibilityObject.cpp:
        (WebCore::AccessibilityObject::elementAccessibilityHitTest):
        * accessibility/AccessibilityObject.h:
        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::boundingBoxRect):
        (WebCore::AccessibilityRenderObject::clearChildren):
        (WebCore::AccessibilityRenderObject::updateChildrenIfNecessary):
        (WebCore::AccessibilityRenderObject::addChildren):
        * accessibility/AccessibilityRenderObject.h:
        * accessibility/AccessibilitySpinButton.cpp: Removed.
        * accessibility/AccessibilitySpinButton.h: Removed.
        * accessibility/mac/WebAccessibilityObjectWrapper.mm:
        (-[WebAccessibilityObjectWrapper accessibilityActionNames]):
        (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
        (-[WebAccessibilityObjectWrapper subrole]):
        (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
        * html/shadow/TextControlInnerElements.cpp:
        (WebCore::SpinButtonElement::repeatingTimerFired):
        * html/shadow/TextControlInnerElements.h:

2011-10-17  Kent Tamura  <tkent@chromium.org>

        Remove OptionGroupElement
        https://bugs.webkit.org/show_bug.cgi?id=70220

        Reviewed by Darin Adler.

        No new tests, just a refactoring.

        * CMakeLists.txt: Remove OptionGroupElement.cpp and/or OptionGroupElement.h.
        * GNUMakefile.am.list: ditto.
        * WebCore.gypi: ditto.
        * WebCore.pro: ditto.
        * WebCore.vcproj/WebCore.vcproj: ditto.
        * WebCore.xcodeproj/project.pbxproj: ditto.
        * dom/DOMAllInOne.cpp: ditto.
        * dom/OptionElement.cpp:
        (WebCore::OptionElement::collectOptionTextRespectingGroupLabel):
        Use hasTagName(optgroupTag) and static_cast<> instead of toOptionGroupElement().
        * dom/OptionGroupElement.cpp: Removed.
        * dom/OptionGroupElement.h: Removed.
        * html/HTMLOptGroupElement.cpp:
        (WebCore::isHTMLOptGroupElement): Added.
        * html/HTMLOptGroupElement.h:
         - Don't inherit OptionGroupElement.
         - Make groupLabelText() non-virtual.
        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::recalcListItems):
        Use Use hasTagName(optgroupTag) instead of isOptionGroupElement().
        * rendering/RenderListBox.cpp:
        (WebCore::RenderListBox::updateFromElement):
        Use hasTagName(optgroupTag) and static_cast<> instead of toOptionGroupElement().
        (WebCore::RenderListBox::paintItemForeground):
        Use hasTagName(optgroupTag) instead of isOptionGroupElement().
        * rendering/RenderMenuList.cpp:
        (WebCore::RenderMenuList::itemText):
        Use hasTagName(optgroupTag) and static_cast<> instead of toOptionGroupElement().
        (WebCore::RenderMenuList::itemIsEnabled):
        Use Use hasTagName(optgroupTag) instead of isOptionGroupElement().
        (WebCore::RenderMenuList::itemIsLabel): ditto.

2011-10-17  Huang Dongsung  <luxtella@company100.net>

        [TexMap][QT] TexMapGL renders a strange one-pixel border of BitmapTexture.
        https://bugs.webkit.org/show_bug.cgi?id=70293

        TextureMapperGL renders the strange border in
        http://www.webkit.org/blog-files/leaves/index.html
        Bug occurs because BitmapTexture is larger than the content due to rounding to
        NPOT, and its pixel data is never initialized.

        Reviewed by Noam Rosenthal.

        * platform/graphics/opengl/TextureMapperGL.cpp:
        (WebCore::texImage2DResourceSafe):
        (WebCore::BitmapTextureGL::reset):

2011-10-17  Jochen Eisinger  <jochen@chromium.org>

        Make NavigationAction wrap a ResourceRequest instead of a KURL.
        https://bugs.webkit.org/show_bug.cgi?id=68803

        With this, FrameLoaderClient::dispatchCreatePage knows about the
        request that will be used for the initial navigaion of the to be
        created page.

        Reviewed by Nate Chapin.

        Test: platform/chromium/fast/loader/create-view-target-blank.html

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::loadURL):
        (WebCore::FrameLoader::load):
        (WebCore::FrameLoader::loadWithDocumentLoader):
        (WebCore::FrameLoader::reload):
        (WebCore::FrameLoader::loadPostRequest):
        (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
        (WebCore::FrameLoader::loadDifferentDocumentItem):
        (WebCore::createWindow):
        * loader/NavigationAction.cpp:
        (WebCore::NavigationAction::NavigationAction):
        * loader/NavigationAction.h:
        (WebCore::NavigationAction::isEmpty):
        (WebCore::NavigationAction::url):
        (WebCore::NavigationAction::resourceRequest):
        * loader/PolicyChecker.cpp:
        (WebCore::PolicyChecker::checkNavigationPolicy):
        * page/ContextMenuController.cpp:
        (WebCore::openNewWindow):
        * WebCore.exp: updated

2011-10-17  Tom Sepez  <tsepez@chromium.org>

        XSSAuditor bypass with remote script ending in ? character
        https://bugs.webkit.org/show_bug.cgi?id=70255

        Reviewed by Daniel Bates.

        Fix XSSAuditor bypass where unterminated src="" attribute could pick up
        text from page causing failed XSS detection.  Constrain match to domain
        portions of src attribute only.

        Test: http/tests/security/xssAuditor/script-tag-with-source-unterminated.html

        * html/parser/XSSAuditor.cpp:
        (WebCore::XSSAuditor::filterScriptToken):
        (WebCore::XSSAuditor::filterObjectToken):
        (WebCore::XSSAuditor::filterParamToken):
        (WebCore::XSSAuditor::filterEmbedToken):
        (WebCore::XSSAuditor::filterAppletToken):
        (WebCore::XSSAuditor::filterIframeToken):
        (WebCore::XSSAuditor::eraseAttributeIfInjected):
        (WebCore::XSSAuditor::decodedSnippetForAttribute):
        * html/parser/XSSAuditor.h:

2011-10-17  Adam Klein  <adamk@chromium.org>

        Parse MutationObserverOptions directly into a bitfield
        https://bugs.webkit.org/show_bug.cgi?id=70287

        Reviewed by Ryosuke Niwa.

        Replaces the MutationObserverOptions class with a typedef,
        used to pass a bitfield composed of enums defined in
        WebKitMutationObserver.h.

        No new tests because no behavior should change.

        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/JSDictionary.h: Removed now-unused method.
        * bindings/js/JSWebKitMutationObserverCustom.cpp:
        (WebCore::JSWebKitMutationObserver::observe):
        * bindings/v8/custom/V8WebKitMutationObserverCustom.cpp:
        (WebCore::V8WebKitMutationObserver::observeCallback):
        * dom/MutationObserverOptions.h: Removed.
        * dom/Node.cpp:
        (WebCore::Node::registerMutationObserver):
        * dom/Node.h:
        * dom/NodeRareData.h:
        (WebCore::MutationObserverEntry::MutationObserverEntry):
        (WebCore::MutationObserverEntry::matches):
        * dom/WebKitMutationObserver.cpp:
        (WebCore::WebKitMutationObserver::observe):
        * dom/WebKitMutationObserver.h:

2011-10-17  Luke Macpherson   <macpherson@chromium.org>

        Add compile-time asserts for RenderStyle::(Non)InheritedFlags size.
        https://bugs.webkit.org/show_bug.cgi?id=69803

        Reviewed by Darin Adler.

        No new tests.

        Adds COMPILE_ASSERTs for the size of RenderStyle::InheritedFlags and
        RenderStyle::NonInheritedFlags to ensure that they are not accidentally
        grown in future changes.
        Change types of unsigned bitfields to unsigned char to ensure that the
        above assertions remain true when building on windows.

        * rendering/style/RenderStyle.cpp:
        (WebCore::RenderStyle):
        Adds assertions to ensure struct sizes do not change.
        * rendering/style/RenderStyle.h:
        Changes unsigned to unsigned char as outlined above.

2011-10-17  Ojan Vafai  <ojan@chromium.org>

        Unreviewed, rolling out r97662.
        http://trac.webkit.org/changeset/97662
        https://bugs.webkit.org/show_bug.cgi?id=68497

        Was not the cause of the test failures.

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

2011-10-17  Ryosuke Niwa  <rniwa@webkit.org>

        Rename deregister* to unregister*
        https://bugs.webkit.org/show_bug.cgi?id=70272

        Reviewed by Darin Adler.

        Renamed deregisterHandler to unregisterHandler.

        * inspector/front-end/ExtensionAPI.js:
        (injectedExtensionAPI.ExtensionServerClient.prototype.unregisterHandler):
        * inspector/front-end/ExtensionServer.js:
        (WebInspector.ExtensionServer.prototype._onSetOpenResourceHandler):
        * inspector/front-end/HandlerRegistry.js:
        (get WebInspector.HandlerRegistry.prototype.unregisterHandler):

2011-10-17  Huang Dongsung  <luxtella@company100.net>

        [TexMap][QT] The BGRA32PremultimpliedBuffer should not inherit the RefCounted class.
        https://bugs.webkit.org/show_bug.cgi?id=70098

        The BitmapTexture has a BGRA32PremultimpliedBuffer object using OwnPtr, not RefPtr.
        It causes following assertion fail, RefCountedBase::m_deletionHasBegun.
        It is better that the BGRA32PremultimpliedBuffer does not inherit the RefCounted
        because the BitmapTexture only has and uses a BGRA32PremultimpliedBuffer object.

        Reviewed by Noam Rosenthal.

        * platform/graphics/opengl/TextureMapperGL.h:

2011-10-17  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Search in resource crashes when there is no resource with given url.
        https://bugs.webkit.org/show_bug.cgi?id=69767

        Reviewed by Pavel Feldman.

        Test: http/tests/inspector/search/search-in-non-existing-resource.html

        * inspector/InspectorPageAgent.cpp:
        (WebCore::InspectorPageAgent::searchInResource):

2011-10-17  Mihnea Ovidenie  <mihnea@adobe.com>

        [CSS Regions]Change content:-webkit-from-flow to -webkit-flow-from
        https://bugs.webkit.org/show_bug.cgi?id=70104

        Reviewed by David Hyatt.

        1. -webkit-flow-from is now a property instead of being an addition to content property.
        2. -webkit-flow-from takes an identifier instead of string.

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseValue):
        (WebCore::CSSParser::parseContent):
        (WebCore::CSSParser::parseRegionThread):
        * css/CSSParser.h:
        * css/CSSPrimitiveValue.cpp:
        (WebCore::isValidCSSUnitTypeForDoubleConversion):
        (WebCore::CSSPrimitiveValue::cleanup):
        (WebCore::CSSPrimitiveValue::getStringValue):
        (WebCore::CSSPrimitiveValue::cssText):
        * css/CSSPrimitiveValue.h:
        * css/CSSPropertyNames.in:
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):

2011-10-17  Kentaro Hara  <haraken@chromium.org>

        MessageEvent.data can be stored as ScriptValue.
        https://bugs.webkit.org/show_bug.cgi?id=68978

        Reviewed by Hajime Morita.

        Currently, the following test cases fail or crash:

        - shouldBe("new MessageEvent('eventType', { data: test_object }).data", "test_object") -> FAIL
        - new MessageEvent('eventType', { data: document }).data -> CRASH

        This is because MessageEvent.data is implemented just as SerializedScriptValue
        and it cannot keep ScriptValue passed by JavaScript. This patch makes the following changes:

        - If MessageEvent is constructed with ScriptValue, it is stored as ScriptValue internally.
        When MessageEvent.data is called, the ScriptValue is returned.
        - If MessageEvent is constructed with SerializedScriptValue, it is stored as
        SerializedScriptValue internally (since we cannot deserialize it into ScriptValue
        at this point because of lack of ExecState). When MessageEvent.data is called,
        the SerializedScriptValue is deserialized into the corresponding ScriptValue,
        and the ScriptValue is returned.

        This patch does not make a fix for ObjC bindings code, since we need to first fix
        the bug 28774, as commented in dom/MessageEvent.h and dom/MessageEvent.cpp.

        Test: fast/events/constructors/message-event-constructor.html

        * bindings/js/JSMessageEventCustom.cpp:
        (WebCore::JSMessageEvent::data): Custom getter for MessageEvent.data. Supported ScriptValue.
        (WebCore::JSMessageEvent::initMessageEvent): Changed SerializedScriptValue to ScriptValue.
        * bindings/v8/custom/V8MessageEventCustom.cpp:
        (WebCore::V8MessageEvent::dataAccessorGetter): Custom getter for MessageEvent.data. Supported ScriptValue.
        (WebCore::V8MessageEvent::portsAccessorGetter): Removed extra spaces.
        (WebCore::V8MessageEvent::initMessageEventCallback): Changed SerializedScriptValue to ScriptValue.
        * dom/MessageEvent.cpp:
        (WebCore::MessageEvent::MessageEvent): Supported ScriptValue.
        (WebCore::MessageEvent::initMessageEvent): Supported ScriptValue.
        (WebCore::MessageEvent::isMessageEvent): Removed extra spaces.
        * dom/MessageEvent.h: Added DataType::DataTypeScriptValue.
        (WebCore::MessageEvent::create): Supported ScriptValue.
        (WebCore::MessageEvent::dataAsScriptValue): Getter for data. Insert ASSERT() to guarantee that this accessor is not called for unintended type of data.
        (WebCore::MessageEvent::dataAsSerializedScriptValue): Ditto.
        (WebCore::MessageEvent::dataAsString): Ditto.
        (WebCore::MessageEvent::dataAsBlob): Ditto.
        (WebCore::MessageEvent::dataAsArrayBuffer): Ditto.
        * dom/MessageEvent.idl: Changed SerializedScriptValue to DOMObject (i.e. ScriptValue). This patch does not touch an ObjC part.

2011-10-17  Shinya Kawanaka  <shinyak@google.com>

        Unified spell-checking and legacy spell checking should be easy to switch
        https://bugs.webkit.org/show_bug.cgi?id=69242

        Reviewed by Hajime Morita.

        WebCore has two different code paths for spell-checking:
                  1) checkTextOfParagraph() for Snow Leopard or later
                  2) checkSpellingOfString() for checkGrammarOfString() for other platforms.

        This patch introduces a flag to change code paths dynamically.
        This patch also includes build fix for QT, GTK, and Windows platforms.

        No new tests because this patch does not change a behavior.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * accessibility/AccessibilityObject.cpp:
        (WebCore::AccessibilityObject::hasMisspelling):
          Changed static if-USE(UNIFIED_TEXT_CHECKING) statement to dynamic
          condition branch to achieve easy code path change.
        * accessibility/mac/WebAccessibilityObjectWrapper.mm: ditto.
        (AXAttributeStringSetSpelling):
        * editing/EditingAllInOne.cpp:
        * editing/Editor.cpp:
        (WebCore::Editor::advanceToNextMisspelling): ditto.
        (WebCore::Editor::guessesForMisspelledOrUngrammaticalSelection): ditto.
        (WebCore::Editor::markMisspellingsAfterTypingToWord): ditto.
        (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): ditto.
        (WebCore::Editor::changeBackToReplacedString): ditto.
        (WebCore::Editor::markMisspellingsAndBadGrammar): ditto.
        (WebCore::Editor::unifiedTextCheckerEnabled):
          Utility method to check using unified text checking or not.
        * editing/Editor.h:
        * editing/TextCheckingHelper.cpp:
        (WebCore::TextCheckingHelper::findFirstMisspellingOrBadGrammar):
          Same as WebCore::AccessibilityObject::hasMisspelling.
        (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): ditto.
        (WebCore::TextCheckingHelper::unifiedTextCheckerEnabled):
          Utility method to check using unified text checking or not.
        (WebCore::unifiedTextCheckerEnabled): ditto.
        * editing/TextCheckingHelper.h:
        * page/Settings.cpp:
        (WebCore::Settings::Settings):
          Includes a flag to change the code path.
        * page/Settings.h:
        (WebCore::Settings::setUnifiedTextCheckerEnabled):
          Sets a flag to change the code path.
        (WebCore::Settings::unifiedTextCheckerEnabled):
          A flag to change the code path.

2011-10-17  Julien Chaffraix  <jchaffraix@webkit.org>

        Unreviewed build fix after 97691.

        * html/HTMLTableCellElement.h:
        (WebCore::toHTMLTableCellElement): Avoid declaring the same function twice.

2011-10-12  Ojan Vafai  <ojan@chromium.org>

        Unreviewed, rolling out r97661.
        http://trac.webkit.org/changeset/97661

        Confirmed this patch was not the cause of the test failures.

        display:inline-block elements don't correctly handle orthogonal writing-modes 
        https://bugs.webkit.org/show_bug.cgi?id=69957 
        
        Reading min/maxPreferredLogicalWidth from a child uses the child's writing-mode. 
        Instead, we need to grab the result based on the parent's writing-mode. 
        In the case of orthogonal writing-modes, we need the child's logical height. 
    
        Tests: fast/writing-mode/borders-expected.html 
               fast/writing-mode/borders.html 
        
        * rendering/RenderBlock.cpp: 
        (WebCore::RenderBlock::computeBlockPreferredLogicalWidths): 

2011-10-17  James Robinson  <jamesr@chromium.org>

        Unreviewed, rolling out r97690.
        http://trac.webkit.org/changeset/97690
        https://bugs.webkit.org/show_bug.cgi?id=70161

        Hits assertion in CCLayerTreeHostTests

        * WebCore.gypi:
        * platform/graphics/chromium/cc/CCMainThread.h:
        * platform/graphics/chromium/cc/CCMainThreadTask.h:
        (WebCore::createMainThreadTask):
        * platform/graphics/chromium/cc/CCScopedMainThreadProxy.h: Removed.
        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
        (WebCore::CCThreadProxySchedulerClient::scheduleBeginFrameAndCommit):
        (WebCore::CCThreadProxy::CCThreadProxy):
        (WebCore::CCThreadProxy::stop):
        * platform/graphics/chromium/cc/CCThreadProxy.h:

2011-10-17  Julien Chaffraix  <jchaffraix@webkit.org>

        Remove colSpan / rowSpan caching from RenderTableCell
        https://bugs.webkit.org/show_bug.cgi?id=69569

        Reviewed by Darin Adler.

        Memory optimization, no change in behavior expected.

        This change removes m_colSpan & m_rowSpan from RenderTableCell (inspired by
        kling's memory shaving effort).

        This makes us save 8 bytes per RenderTableCell on my machine (x86-64). No slowdown
        on PageCycler Alexa-US.

        This change refactored the way we handle updates from the DOM side to simplify
        the code using the following: colspan / rowspan updates always go through
        parseMappedAttribute where we already check for the renderer type. Thus removed the
        generic updateFromElement and replaced it with colSpanOrRowSpanChanged. This removes
        a virtual dispatch.

        As there is no way to know if an attribute has changed in the parseMappedAttribute code,
        we now unconditionally call colSpanOrRowSpanChanged. Looking at Chromium's page data,
        colSpan and rowSpan are never changed outside the HTML markup thus such a change should
        have a limited impact.

        * html/HTMLTableCellElement.cpp:
        (WebCore::HTMLTableCellElement::parseMappedAttribute): Updated after updateFromElement
        removal.

        * html/HTMLTableCellElement.h:
        (WebCore::toHTMLTableCellElement): Added the usual conversion functions.

        * rendering/RenderTableCell.cpp:
        (WebCore::RenderTableCell::RenderTableCell): Added a boolean to know if we have
        the right type of associated DOM node to avoid the cost of checking that every
        time.

        (WebCore::RenderTableCell::colSpan):
        (WebCore::RenderTableCell::rowSpan):
        Forwarded the calls to our object if we have the right type (normal case).

        (WebCore::RenderTableCell::colSpanOrRowSpanChanged): Handles the
        updateFromElement calls but in a more streamlined way.

        * rendering/RenderTableCell.h:

2011-10-17  James Robinson  <jamesr@chromium.org>

        [chromium] Fix shutdown race when posting main thread task to CCThreadProxy and enable tests
        https://bugs.webkit.org/show_bug.cgi?id=70161

        Reviewed by David Levin.

        Adds a weak pointer mechanism to cancel main thread tasks posted to CCThreadProxy instances from the compositor
        thread. Previously there was a race condition where main thread tasks could run even after the CCThreadProxy was
        destroyed.

        This race does not exist in the other direction because when tearing down a CCThreadProxy we first post a quit
        task to the compositor thread and then suspend execution of the main thread until all compositor tasks for the
        CCThreadProxy have been drained.

        Covered by the now-enabled CCLayerTreeHostTest* unit tests.

        * WebCore.gypi:
        * platform/graphics/chromium/cc/CCScopedMainThreadProxy.h: Added.
        (WebCore::CCScopedMainThreadProxy::create):
        (WebCore::CCScopedMainThreadProxy::postTask):
        (WebCore::CCScopedMainThreadProxy::shutdown):
        (WebCore::CCScopedMainThreadProxy::CCScopedMainThreadProxy):
        (WebCore::CCScopedMainThreadProxy::runTaskIfNotShutdown):
        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
        (WebCore::CCThreadProxy::CCThreadProxy):
        (WebCore::CCThreadProxy::~CCThreadProxy):
        (WebCore::CCThreadProxy::createBeginFrameAndCommitTaskOnCCThread):
        * platform/graphics/chromium/cc/CCThreadProxy.h:

2011-10-17  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r97641.
        http://trac.webkit.org/changeset/97641
        https://bugs.webkit.org/show_bug.cgi?id=70288

        "This change may have broken mouse/hit-test coordinate tests."
        (Requested by jeffm7 on #webkit).

        * platform/Widget.cpp:
        (WebCore::Widget::convertFromContainingWindow):
        (WebCore::Widget::convertToContainingWindow):

2011-10-17  Andreas Kling  <kling@webkit.org>

        CSSParser: Remove unused variable 'propertyComponents'
        https://bugs.webkit.org/show_bug.cgi?id=70230

        Reviewed by Darin Adler.

        (WebCore::CSSParser::markPropertyEnd):

2011-10-17  Shawn Singh  <shawnsingh@chromium.org>

        [chromium] Update comments about transform hierarchy in CCLayerTreeHostCommon
        https://bugs.webkit.org/show_bug.cgi?id=69765

        Reviewed by James Robinson.

        Only comments changed, no tests needed.

        * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
        (WebCore::calculateDrawTransformsAndVisibilityInternal):

2011-10-17  Dan Bernstein  <mitz@apple.com>

        Remove unnecessary calls to columnRectAt()
        https://bugs.webkit.org/show_bug.cgi?id=70283

        Reviewed by Darin Adler.

        These call sites only needed one of the column dimensions, which are independent of the column
        index, and can be retrieved directly from the ColumnInfo.

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::paintColumnRules):
        (WebCore::RenderBlock::hitTestColumns):

2011-10-17  Andreas Kling  <kling@webkit.org>

        Protect against incorrect Element::fast*Attribute() usage.
        https://bugs.webkit.org/show_bug.cgi?id=67612

        Reviewed by Darin Adler.

        Add debug-only checks in Element's fastHasAttribute() and fastGetAttribute() to verify
        that we aren't looking up the "style" attribute or any of the SVG animatable attributes.

        No new tests, erroneous behavior is covered by assertions.

        * WebCore.exp.in: Export Element::fastAttributeLookupAllowed() for debug builds
        since it's used by the inline fast*Attribute() calls.
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::canShareStyleWithElement): Use getAttribute() for class.
        * css/SelectorChecker.cpp:
        (WebCore::linkAttribute): Use getAttribute() for xlink:href.
        * dom/Element.cpp:
        (WebCore::Element::getAttribute): Manually inline fastGetAttribute() in ideal case.
        (WebCore::Element::fastAttributeLookupAllowed): Checks if an attribute can be used
        with the fast lookup functions.
        * dom/Element.h:
        (WebCore::Element::fastHasAttribute): Add assertion.
        (WebCore::Element::fastGetAttribute): Ditto.
        * editing/ApplyStyleCommand.cpp:
        (WebCore::hasNoAttributeOrOnlyStyleAttribute): Use getAttribute() for class.
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::isInlineNodeWithStyle): Ditto.
        * html/ClassList.cpp:
        (WebCore::ClassList::ClassList): Ditto.
        (WebCore::ClassList::addInternal): Ditto.
        (WebCore::ClassList::removeInternal): Ditto.
        (WebCore::ClassList::toString): Ditto.
        * svg/SVGAltGlyphElement.cpp:
        (WebCore::SVGAltGlyphElement::hasValidGlyphElements): Use getAttribute() for xlink:href.
        * svg/SVGAnimateMotionElement.cpp:
        (WebCore::SVGAnimateMotionElement::rotateMode): Use getAttribute() for rotate.
        * svg/SVGAnimationElement.cpp:
        (WebCore::SVGAnimationElement::animationMode): Use getAttribute() for values.
        * svg/SVGElement.cpp:
        (WebCore::SVGElement::isAnimatableAttribute): Added, returns true if the given
        QualifiedName represents an animatable attribute.
        * svg/SVGElement.h:
        * svg/SVGFontFaceUriElement.cpp:
        (WebCore::SVGFontFaceUriElement::srcValue): Use getAttribute() for xlink:href.
        (WebCore::SVGFontFaceUriElement::loadFont): Ditto.
        * svg/animation/SVGSMILElement.cpp:
        (WebCore::SVGSMILElement::xlinkHref): Ditto.
        * svg/SVGGlyphRefElement.cpp:
        (WebCore::SVGGlyphRefElement::hasValidGlyphElement): Ditto.
        * svg/SVGStyleElement.cpp:
        (WebCore::SVGStyleElement::type): Use getAttribute() for type.

2011-10-17  Chris Fleizach  <cfleizach@apple.com>

        AX: buttons of number type <input> controls are not fully accessible
        https://bugs.webkit.org/show_bug.cgi?id=70241

        Expose the spin button object to the AX hierarchy. Since there is no distinct
        render object that backs this object, a mock object needs to be created for the entire
        spin button and the actual increment and decrement buttons inside.

        Reviewed by Darin Adler.

        Test: platform/mac/accessibility/html5-input-number.html

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * accessibility/AXObjectCache.cpp:
        (WebCore::AXObjectCache::getOrCreate):
        * accessibility/AccessibilityMockObject.cpp:
        (WebCore::AccessibilityMockObject::AccessibilityMockObject):
        * accessibility/AccessibilityMockObject.h:
        (WebCore::AccessibilityMockObject::isMockObject):
        * accessibility/AccessibilityObject.cpp:
        (WebCore::AccessibilityObject::boundingBoxForQuads):
        (WebCore::AccessibilityObject::elementAccessibilityHitTest):
        * accessibility/AccessibilityObject.h:
        (WebCore::AccessibilityObject::isSpinButton):
        (WebCore::AccessibilityObject::isSpinButtonPart):
        (WebCore::AccessibilityObject::isMockObject):
        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::boundingBoxRect):
        (WebCore::AccessibilityRenderObject::addImageMapChildren):
        (WebCore::AccessibilityRenderObject::addTextFieldChildren):
        (WebCore::AccessibilityRenderObject::addChildren):
        * accessibility/AccessibilityRenderObject.h:
        * accessibility/AccessibilitySpinButton.cpp: Added.
        (WebCore::AccessibilitySpinButton::create):
        (WebCore::AccessibilitySpinButton::AccessibilitySpinButton):
        (WebCore::AccessibilitySpinButton::~AccessibilitySpinButton):
        (WebCore::AccessibilitySpinButton::incrementButton):
        (WebCore::AccessibilitySpinButton::decrementButton):
        (WebCore::AccessibilitySpinButton::elementRect):
        (WebCore::AccessibilitySpinButton::addChildren):
        (WebCore::AccessibilitySpinButton::step):
        (WebCore::AccessibilitySpinButtonPart::AccessibilitySpinButtonPart):
        (WebCore::AccessibilitySpinButtonPart::create):
        (WebCore::AccessibilitySpinButtonPart::elementRect):
        (WebCore::AccessibilitySpinButtonPart::press):
        * accessibility/AccessibilitySpinButton.h: Added.
        (WebCore::AccessibilitySpinButton::setSpinButtonElement):
        (WebCore::AccessibilitySpinButton::roleValue):
        (WebCore::AccessibilitySpinButton::accessibilityIsIgnored):
        (WebCore::AccessibilitySpinButton::isSpinButton):
        (WebCore::AccessibilitySpinButtonPart::~AccessibilitySpinButtonPart):
        (WebCore::AccessibilitySpinButtonPart::isIncrementor):
        (WebCore::AccessibilitySpinButtonPart::setIsIncrementor):
        (WebCore::AccessibilitySpinButtonPart::roleValue):
        (WebCore::AccessibilitySpinButtonPart::isSpinButtonPart):
        (WebCore::AccessibilitySpinButtonPart::accessibilityIsIgnored):
        (WebCore::toAccessibilitySpinButton):
        (WebCore::toAccessibilitySpinButtonPart):
        * accessibility/mac/WebAccessibilityObjectWrapper.mm:
        (-[WebAccessibilityObjectWrapper accessibilityActionNames]):
        (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
        (-[WebAccessibilityObjectWrapper subrole]):
        (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
        * html/shadow/TextControlInnerElements.cpp:
        (WebCore::SpinButtonElement::step):
        (WebCore::SpinButtonElement::repeatingTimerFired):
        * html/shadow/TextControlInnerElements.h:

2011-10-17  Dmitry Titov  <dimich@chromium.org>

        Re-landing: window.webkitNotifications uses deallocated NotificationPresenter after live Iframe transfer.
        https://bugs.webkit.org/show_bug.cgi?id=70147

        Reviewed by David Levin.

        I only found a way to test this manually, since Chromium TestShell uses static instance
        of NotificationPresenter instead of per-page one so the issue does not reproduce.
        Adding manual test that works in full build of Chromium.

        * manual-tests/iframe_notifications/iframe-reparenting-close-window-child.html: Added.
        * manual-tests/iframe_notifications/iframe-reparenting-close-window-iframe.html: Added.
        * manual-tests/iframe_notifications/iframe-reparenting-close-window.html: Added.
        * notifications/NotificationCenter.cpp:
        (WebCore::NotificationCenter::disconnectFrame):
        * page/DOMWindow.cpp:
        (WebCore::DOMWindow::resetNotifications):
        * page/DOMWindow.h:
        * page/Frame.cpp:
        (WebCore::Frame::transferChildFrameToNewDocument): reset webkitNotifications object.

2011-10-17  Arno Renevier  <arno@renevier.net>

        quote "attributes" keyword in CodeGeneratorGObject.pm
        https://bugs.webkit.org/show_bug.cgi?id=64348

        Reviewed by Darin Adler.

        No change of functionality. No new tests.

        * bindings/scripts/CodeGeneratorGObject.pm:

2011-10-17  Ojan Vafai  <ojan@chromium.org>

        Unreviewed, rolling out r97654.
        http://trac.webkit.org/changeset/97654
        https://bugs.webkit.org/show_bug.cgi?id=68497

        Caused a number of Chromium failures.

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

2011-10-17  Ojan Vafai  <ojan@chromium.org>

        Unreviewed, rolling out r97653.
        http://trac.webkit.org/changeset/97653
        https://bugs.webkit.org/show_bug.cgi?id=69957

        Caused a number of Chromium failures.

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::computeBlockPreferredLogicalWidths):

2011-10-17  Rafael Weinstein  <rafaelw@chromium.org>

        [MutationObservers] Implement WebKitMutationObserver.observe for attributes
        https://bugs.webkit.org/show_bug.cgi?id=68956

        Reviewed by Ryosuke Niwa.

        Test: fast/mutation/observe-attributes.html

        This adds an initial implementation for registering mutation observers on nodes,
        delivering mutation records at the end of the outer-most script invokation and
        observing mutations to element attributes.

        Note that the outer-most script invokation only works in V8.

        Note also that support for observing changes to the style attribute when updated
        via the style property is not implemented here.

        * bindings/v8/V8Proxy.cpp:
        (WebCore::V8Proxy::didLeaveScriptContext):
        * dom/Element.cpp:
        (WebCore::enqueueAttributesMutationRecord):
        (WebCore::Element::setAttribute):
        * dom/MutationRecord.cpp:
        (WebCore::MutationRecord::createAttributes):
        * dom/MutationRecord.h:
        * dom/MutationRecord.idl:
        * dom/Node.cpp:
        (WebCore::Node::clearRareData):
        (WebCore::Node::mutationObserverData):
        (WebCore::Node::ensureMutationObserverData):
        (WebCore::Node::registeredMutationObserversOfType):
        (WebCore::Node::registerMutationObserver):
        (WebCore::Node::deregisterMutationObserver):
        * dom/Node.h:
        * dom/NodeRareData.h:
        (WebCore::MutationObserverRegistration::MutationObserverRegistration):
        (WebCore::MutationObserverRegistration::operator==):
        (WebCore::MutationObserverData::MutationObserverData):
        (WebCore::MutationObserverData::~MutationObserverData):
        (WebCore::NodeRareData::mutationObserverData):
        (WebCore::NodeRareData::ensureMutationObserverData):
        * dom/WebKitMutationObserver.cpp:
        (WebCore::WebKitMutationObserver::observe):
        (WebCore::WebKitMutationObserver::disconnect):
        (WebCore::WebKitMutationObserver::wasDeregistered):
        (WebCore::activeMutationObservers):
        (WebCore::WebKitMutationObserver::enqueueMutationRecord):
        (WebCore::WebKitMutationObserver::deliverAllMutations):
        (WebCore::WebKitMutationObserver::deliver):
        * dom/WebKitMutationObserver.h:

2011-10-17  Andreas Kling  <kling@webkit.org>

        HTMLKeygenElement: Don't cache keytype and challenge attributes.
        https://bugs.webkit.org/show_bug.cgi?id=68365

        Reviewed by Darin Adler.

        * html/HTMLKeygenElement.cpp:
        (WebCore::HTMLKeygenElement::parseMappedAttribute):
        (WebCore::HTMLKeygenElement::appendFormData):
        * html/HTMLKeygenElement.h:

2011-09-22  Ojan Vafai  <ojan@chromium.org>

        incorrect height with height:auto and writing-mode:vertical-rl
        https://bugs.webkit.org/show_bug.cgi?id=68497

        Reviewed by David Hyatt.

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

2011-10-12  Ojan Vafai  <ojan@chromium.org>

        display:inline-block elements don't correctly handle orthogonal writing-modes
        https://bugs.webkit.org/show_bug.cgi?id=69957

        Reviewed by David Hyatt.

        Reading min/maxPreferredLogicalWidth from a child uses the child's writing-mode.
        Instead, we need to grab the result based on the parent's writing-mode.
        In the case of orthogonal writing-modes, we need the child's logical height.

        Tests: fast/writing-mode/borders-expected.html
               fast/writing-mode/borders.html

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::computeBlockPreferredLogicalWidths):

2011-10-17  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r97643.
        http://trac.webkit.org/changeset/97643
        https://bugs.webkit.org/show_bug.cgi?id=70270

        Broke iframe reparenting tests (Requested by dimich on
        #webkit).

        * manual-tests/iframe_notifications/iframe-reparenting-close-window-child.html: Removed.
        * manual-tests/iframe_notifications/iframe-reparenting-close-window-iframe.html: Removed.
        * manual-tests/iframe_notifications/iframe-reparenting-close-window.html: Removed.
        * notifications/NotificationCenter.cpp:
        (WebCore::NotificationCenter::disconnectFrame):
        * page/DOMWindow.cpp:
        (WebCore::DOMWindow::webkitNotifications):
        * page/DOMWindow.h:
        * page/Frame.cpp:
        (WebCore::Frame::transferChildFrameToNewDocument):

2011-10-17  Dmitry Titov  <dimich@chromium.org>

        window.webkitNotifications uses deallocated NotificationPresenter after live Iframe transfer.
        https://bugs.webkit.org/show_bug.cgi?id=70147

        Reviewed by David Levin.

        I only found a way to test this manually, since Chromium TestShell uses static instance
        of NotificationPresenter instead of per-page one so the issue does not reproduce.
        Adding manual test that works in full build of Chromium.

        * manual-tests/iframe_notifications/iframe-reparenting-close-window-child.html: Added.
        * manual-tests/iframe_notifications/iframe-reparenting-close-window-iframe.html: Added.
        * manual-tests/iframe_notifications/iframe-reparenting-close-window.html: Added.
        * notifications/NotificationCenter.cpp:
        (WebCore::NotificationCenter::disconnectFrame):
        * page/DOMWindow.cpp:
        (WebCore::DOMWindow::resetNotifications):
        * page/DOMWindow.h:
        * page/Frame.cpp:
        (WebCore::Frame::transferChildFrameToNewDocument): reset webkitNotifications object.

2011-10-17  Jeff Miller  <jeffm@apple.com>

        Widget window coordinate functions should use root view coordinate functions
        https://bugs.webkit.org/show_bug.cgi?id=70152

        Reviewed by Darin Adler.

        No new tests, no changes to functionality.

        * platform/Widget.cpp:
        (WebCore::Widget::convertFromContainingWindow): Use convertFromRootView().
        (WebCore::Widget::convertToContainingWindow): Use convertToRootView().

2011-10-14  Chris Marrin  <cmarrin@apple.com>

        Throttle rate of requestAnimationFrame when page is not visible
        https://bugs.webkit.org/show_bug.cgi?id=67873

        Reviewed by Anders Carlsson.

        Add logic to suspend and resume scripted animations when page is hidden,
        minimized or the tab is not visible. The hide/minimize notification comes
        in from WebKit/WebKit2 to a new set of functions.

        * WebCore.exp.in:
        * page/Page.cpp:
        (WebCore::Page::didMoveOnscreen):
        (WebCore::Page::willMoveOffscreen):
        (WebCore::Page::suspendScriptedAnimations):
        (WebCore::Page::resumeScriptedAnimations):
        * page/Page.h:

2011-10-17  Antti Koivisto  <antti@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69966
        Eliminate separate RenderStyle for visited link style

        Reviewed by Dave Hyatt and Nikolas Zimmermann.

        There are only a few properties that can apply to visited links and they can
        be part of the regular style. Many things will get simpler when the separate 
        RenderStyle for visited links is eliminated.
        
        - Add valid visited link properties as separate fields to RenderStyle. The  
          visitedLinkColor goes to inherited, everything else goes to rare data structures.
        - Make RenderStyle::visitedDependentColor() get the visited style from the new fields.
        - As VISITED_LINK pseudo style doesn't exists anymore, remove all code dealing with it.
        - Make CSSStyleSelector and ApplyPropertyColor apply the visited link style to the
          newly added fields instead of a separate RenderStyle.
        - Same thing with SVGRenderStyle, SVGCSSStyleSelector.
        - Fixup the SVG visited link style code to use the new fields.

        This is ~15% progression in styleForElement performance over the HTML5 spec load.

        * css/CSSStyleApplyProperty.cpp:
        (WebCore::ApplyPropertyColor::ApplyPropertyColor):
        (WebCore::ApplyPropertyColor::applyInheritValue):
        (WebCore::ApplyPropertyColor::applyInitialValue):
        (WebCore::ApplyPropertyColor::applyValue):
        (WebCore::ApplyPropertyColor::applyColorValue):
        (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::CSSStyleSelector):
        (WebCore::CSSStyleSelector::styleForElement):
        (WebCore::CSSStyleSelector::pseudoStyleForElement):
        (WebCore::CSSStyleSelector::updateFont):
        (WebCore::CSSStyleSelector::applyDeclaration):
        (WebCore::CSSStyleSelector::applyDeclarations):
        (WebCore::CSSStyleSelector::applyProperty):
        (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
        * css/CSSStyleSelector.h:
        (WebCore::CSSStyleSelector::applyPropertyToRegularStyle):
        (WebCore::CSSStyleSelector::applyPropertyToVisitedLinkStyle):
        * css/SVGCSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applySVGProperty):
        * dom/Element.cpp:
        (WebCore::Element::pseudoStyleCacheIsInvalid):
        * rendering/style/RenderStyle.cpp:
        (WebCore::RenderStyle::getCachedPseudoStyle):
        (WebCore::RenderStyle::colorIncludingFallback):
        (WebCore::RenderStyle::visitedDependentColor):
        * rendering/style/RenderStyle.h:
        (WebCore::InheritedFlags::setVisitedLinkColor):
        (WebCore::InheritedFlags::setVisitedLinkBackgroundColor):
        (WebCore::InheritedFlags::setVisitedLinkBorderLeftColor):
        (WebCore::InheritedFlags::setVisitedLinkBorderRightColor):
        (WebCore::InheritedFlags::setVisitedLinkBorderBottomColor):
        (WebCore::InheritedFlags::setVisitedLinkBorderTopColor):
        (WebCore::InheritedFlags::setVisitedLinkOutlineColor):
        (WebCore::InheritedFlags::setVisitedLinkColumnRuleColor):
        (WebCore::InheritedFlags::setVisitedLinkTextEmphasisColor):
        (WebCore::InheritedFlags::setVisitedLinkTextFillColor):
        (WebCore::InheritedFlags::setVisitedLinkTextStrokeColor):
        * rendering/style/RenderStyleConstants.h:
        * rendering/style/SVGRenderStyle.h:
        (WebCore::SVGRenderStyle::setVisitedLinkFillPaint):
        (WebCore::SVGRenderStyle::setVisitedLinkStrokePaint):
        (WebCore::SVGRenderStyle::visitedLinkFillPaintType):
        (WebCore::SVGRenderStyle::visitedLinkFillPaintColor):
        (WebCore::SVGRenderStyle::visitedLinkStrokePaintType):
        (WebCore::SVGRenderStyle::visitedLinkStrokePaintColor):
        * rendering/style/SVGRenderStyleDefs.cpp:
        (WebCore::StyleFillData::StyleFillData):
        (WebCore::StyleFillData::operator==):
        (WebCore::StyleStrokeData::StyleStrokeData):
        (WebCore::StyleStrokeData::operator==):
        * rendering/style/SVGRenderStyleDefs.h:
        * rendering/style/StyleInheritedData.cpp:
        (WebCore::StyleInheritedData::StyleInheritedData):
        (WebCore::StyleInheritedData::operator==):
        * rendering/style/StyleInheritedData.h:
        * rendering/style/StyleMultiColData.cpp:
        (WebCore::StyleMultiColData::StyleMultiColData):
        (WebCore::StyleMultiColData::operator==):
        * rendering/style/StyleMultiColData.h:
        * rendering/style/StyleRareInheritedData.cpp:
        (WebCore::StyleRareInheritedData::StyleRareInheritedData):
        (WebCore::StyleRareInheritedData::operator==):
        * rendering/style/StyleRareInheritedData.h:
        * rendering/style/StyleRareNonInheritedData.cpp:
        (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
        (WebCore::StyleRareNonInheritedData::operator==):
        * rendering/style/StyleRareNonInheritedData.h:
        * rendering/svg/RenderSVGResource.cpp:
        (WebCore::requestPaintingResource):

2011-10-17  Eric Carlson  <eric.carlson@apple.com>

        Cues should be loaded by the cached resource loader
        https://bugs.webkit.org/show_bug.cgi?id=70134

        Reviewed by Darin Adler.

        No new tests, changes covered by existing tests.

        * CMakeLists.txt: Add CachedCues.cpp/h.
        * GNUmakefile.list.am: Ditto.
        * WebCore.gypi: Ditto.
        * WebCore.xcodeproj/project.pbxproj: Ditto.

        * loader/cache/CachedCues.cpp: Added.
        (WebCore::CachedCues::CachedCues):
        (WebCore::CachedCues::~CachedCues):
        (WebCore::CachedCues::data): Called when new data has been loaded, pass it to all registered
            clients.
        * loader/cache/CachedCues.h: Added.

        * loader/cache/CachedResource.cpp:
        (WebCore::defaultPriorityForResourceType): Cues have low loader priority.
        * loader/cache/CachedResource.h:

        * loader/cache/CachedResourceClient.h:
        (WebCore::CachedResourceClient::didReceiveData): New client interface.

        * loader/cache/CachedResourceLoader.cpp:
        (WebCore::createResource): Create and return a new cue loader.
        (WebCore::CachedResourceLoader::requestCues):
        (WebCore::CachedResourceLoader::checkInsecureContent): Cues aren't mentioned in the CPS spec
            yet, but they only work with a media element so use the mdia policy.
        (WebCore::CachedResourceLoader::canRequest): Allow cues to be loaded from any origin like media.
        * loader/cache/CachedResourceLoader.h:

        * loader/cache/CachedResourceRequest.cpp:
        (WebCore::cachedResourceTypeToTargetType):
        * platform/network/chromium/ResourceRequest.h:

2011-10-17  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/10293929> REGRESSION (r97525): iChat transcript has horizontal scroll bar when the conversation includes a wide image
        https://bugs.webkit.org/show_bug.cgi?id=70204

        Reviewed by Darin Adler.

        Reverted r97525, which was supposed to fix <http://webkit.org/b/29447>.

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::computeReplacedLogicalWidthUsing):
        (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
        * rendering/RenderBox.h:

2011-10-17  Ada Chan  <adachan@apple.com>

        Export KURL::baseAsString() so it can be called in WebProcessProxy::assumeReadAccessToBaseURL() in WebKit2.
        https://bugs.webkit.org/show_bug.cgi?id=70168

        Reviewed by Alexey Proskuryakov.

        No new tests. There is no change in functionality.

        * WebCore.exp.in: Export KURL::baseAsString().

2011-10-17  Ryosuke Niwa  <rniwa@webkit.org>

        Touch Internals.cpp to make 64-bit GTK+ build happy.

        * testing/Internals.cpp:

2011-10-17  Chris Fleizach  <cfleizach@apple.com>

        AX: children() method should be consolidated in AccessibilityObject
        https://bugs.webkit.org/show_bug.cgi?id=70243

        Code cleanup, no new tests.

        Reviewed by Darin Adler.

        * accessibility/AccessibilityObject.cpp:
        (WebCore::AccessibilityObject::children):
        * accessibility/AccessibilityObject.h:
        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::updateChildrenIfNecessary):
        * accessibility/AccessibilityRenderObject.h:
        * accessibility/AccessibilityScrollView.cpp:
        (WebCore::AccessibilityScrollView::updateChildrenIfNecessary):
        (WebCore::AccessibilityScrollView::updateScrollbars):
        (WebCore::AccessibilityScrollView::addChildren):
        * accessibility/AccessibilityScrollView.h:
        * accessibility/AccessibilitySlider.cpp:
        * accessibility/AccessibilitySlider.h:
        * accessibility/AccessibilityTableColumn.cpp:
        * accessibility/AccessibilityTableColumn.h:
        * accessibility/AccessibilityTableHeaderContainer.cpp:
        * accessibility/AccessibilityTableHeaderContainer.h:

2011-10-17  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Search matches highlighting in text does not work correctly.
        https://bugs.webkit.org/show_bug.cgi?id=70244

        Reviewed by Pavel Feldman.

        Test: inspector/utilities-highlight-results.html

        * inspector/front-end/utilities.js:
        ():

2011-10-17  Chris Fleizach  <cfleizach@apple.com>

        AX: webkit won't always send live region notifications
        https://bugs.webkit.org/show_bug.cgi?id=70030

        Webkit purposefully does not send live region notifications if some AT client has not accessed the AX tree in between 
        the last live region update (ostensibly to improve performance).
        However, this is problematic if a screen reader misses one notification... it has no idea what happened and the only 
        recourse is to rescan the page for changes. The correct thing to do is to always send notifications.

        Reviewed by Darin Adler.

        Test: platform/mac/accessibility/aria-liveregions-notifications-always-sent.html

        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::childrenChanged):

2011-10-12  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: fix handling of source mapping entries with no mapping.
        https://bugs.webkit.org/show_bug.cgi?id=69941

        Reviewed by Pavel Feldman.

        * inspector/front-end/CompilerSourceMapping.js:
        (WebInspector.ClosureCompilerSourceMapping.prototype._parseMappings):

2011-10-17  Mikhail Naganov  <mnaganov@chromium.org>

        Web Inspector: [Chromium] Add an ability to look up and explore an object from a heap profile.
        https://bugs.webkit.org/show_bug.cgi?id=61179

        This is exteremely helpful when dealing with DOM wrappers, as
        their properties are mostly implemented with getters and thus not
        stored in heap snapshots.

        Reviewed by Pavel Feldman.

        * English.lproj/localizedStrings.js:
        * bindings/js/ScriptProfiler.cpp:
        (WebCore::ScriptProfiler::objectByHeapObjectId):
        * bindings/js/ScriptProfiler.h:
        * bindings/v8/ScriptProfiler.cpp:
        (WebCore::ScriptProfiler::objectByHeapObjectId):
        * bindings/v8/ScriptProfiler.h:
        * inspector/Inspector.json:
        * inspector/InspectorController.cpp:
        (WebCore::InspectorController::InspectorController):
        * inspector/InspectorProfilerAgent.cpp:
        (WebCore::InspectorProfilerAgent::create):
        (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
        (WebCore::InspectorProfilerAgent::getObjectByHeapObjectId):
        * inspector/InspectorProfilerAgent.h:
        * inspector/front-end/DetailedHeapshotGridNodes.js:
        (WebInspector.HeapSnapshotGridNode.prototype.hasHoverMessage.false.queryObjectContent):
        (WebInspector.HeapSnapshotGenericObjectNode):
        (WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
        (WebInspector.HeapSnapshotGenericObjectNode.prototype.queryObjectContent.else.formatResult):
        (WebInspector.HeapSnapshotGenericObjectNode.prototype.queryObjectContent):
        (WebInspector.HeapSnapshotGenericObjectNode.prototype.shortenWindowURL):
        * inspector/front-end/DetailedHeapshotView.js:
        (WebInspector.DetailedHeapshotView.prototype._showObjectPopover):
        * inspector/front-end/HeapSnapshot.js:
        (WebInspector.HeapSnapshotNode.prototype.get canBeQueried):
        (WebInspector.HeapSnapshotNode.prototype.get flags):
        (WebInspector.HeapSnapshotNode.prototype.get isDOMWindow):
        (WebInspector.HeapSnapshot.prototype._init):
        (WebInspector.HeapSnapshot.prototype.dispose):
        (WebInspector.HeapSnapshot.prototype._flagsOfNode):
        (WebInspector.HeapSnapshot.prototype._calculateFlags):
        (WebInspector.HeapSnapshot.prototype.updateStaticData):
        (WebInspector.HeapSnapshotNodesProvider.prototype._serialize):
        * inspector/front-end/HeapSnapshotProxy.js:
        (WebInspector.HeapSnapshotProxy.prototype.get nodeFlags):
        * inspector/front-end/RemoteObject.js:
        (WebInspector.RemoteObject.fromError):
        * inspector/front-end/heapProfiler.css:
        (.detailed-heapshot-view tr:not(.selected) td.object-column span.highlight):

2011-10-17  Alexander Pavlov  <apavlov@chromium.org>

        Web Inspector: Editing CSS selector doesn't fire onResourceContentCommitted
        https://bugs.webkit.org/show_bug.cgi?id=70018

        Reviewed by Yury Semikhatsky.

        Test: inspector/styles/commit-selector.html

        * inspector/front-end/CSSStyleModel.js:
        (WebInspector.CSSStyleModel.prototype.setRuleSelector.callback):
        (WebInspector.CSSStyleModel.prototype.setRuleSelector):

2011-10-17  Andreas Kling  <kling@webkit.org>

        CSS/XSLStyleSheet: Remove insert() and remove().
        https://bugs.webkit.org/show_bug.cgi?id=70226

        Reviewed by Antti Koivisto.

        Remove insert() and remove() from XSLStyleSheet. CSSStyleSheet retains remove()
        since it's used by InspectorStyleSheet as well as SVGFontFaceElement.

        * css/CSSStyleSheet.cpp:
        (WebCore::CSSStyleSheet::remove):

            Remove range check. This method is internal to WebKit and the call sites
            already take care of it.

        (WebCore::CSSStyleSheet::insertRule):
        (WebCore::CSSStyleSheet::deleteRule):
        * css/CSSStyleSheet.h:
        * xml/XSLStyleSheet.h:

2011-10-17  Rosen Dash  <rosen.dash@motorola.com>

        when CSS pseudo selectors are applied (:before and :after) the *-of-line keyboard navigation does not work
        https://bugs.webkit.org/show_bug.cgi?id=10123

        Reviewed by Ryosuke Niwa.

        This patch addresses folllowing two issues:
        1. When CSS pseudo elements are before or after is used with content attribute containing single character
           at the start/end of text and we try to move cursor by right navigation key, the page freezes falling
           into an infinite loop.
        2. When these elements try to insert some text between a text line, navigation by right/left arrow key is prohibited.

        Tests: editing/selection/css-pseudo-element-hang.html
               editing/selection/css-pseudo-element.html

        * editing/VisiblePosition.cpp:
        (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
        (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):

2011-10-15  Antti Koivisto  <antti@apple.com>

        Test :visited pseudo class
        https://bugs.webkit.org/show_bug.cgi?id=70219

        Reviewed by Andreas Kling.
        
        Currently DRT doesn't support :visited. All tests where it should match have wrong checked in results.
        
        - Make <a href=""> to match :visited in DRT. It already does on browsers. A number of existing tests 
          for :visited use it already, the rest can be modified to use it.
        - Make render tree dumps correctly dump the visited state dependent color.

        * css/SelectorChecker.cpp:
        (WebCore::SelectorChecker::determineLinkStateSlowCase):
        * rendering/RenderTreeAsText.cpp:
        (WebCore::RenderTreeAsText::writeRenderObject):

2011-10-17  Satish Sampath  <satish@chromium.org>

        Avoid leaking document when leaving google.com due to geolocation
        permission request.
        https://bugs.webkit.org/show_bug.cgi?id=58027

        Reviewed by Kenneth Rohde Christiansen.

        * page/Geolocation.cpp:
        (WebCore::Geolocation::Watchers::find): added
        (WebCore::Geolocation::reset): cleared all pending notifiers.
        (WebCore::Geolocation::clearWatch): removed from pending notifier set.
        * page/Geolocation.h:
        (WebCore::Geolocation::Watchers::find): added

2011-10-17  Andrei Lavreniyuk  <andy.lavr@gmail.com>

        Fix clang WebKitGTK+ build.

        Reviewed by Martin Robinson.

        * plugins/gtk/PluginViewGtk.cpp:

2011-10-16  Adam Barth  <abarth@webkit.org>

        Always disable ENABLE(ON_FIRST_TEXTAREA_FOCUS_SELECT_ALL) and delete associated code
        https://bugs.webkit.org/show_bug.cgi?id=70216

        Reviewed by Eric Seidel.

        No port enables this feature.  It was added for the previous Android
        port (and should have been an editing behavior in any case).

        * html/HTMLTextAreaElement.cpp:
        (WebCore::HTMLTextAreaElement::updateFocusAppearance):

2011-10-16  Ryosuke Niwa  <rniwa@webkit.org>

        Expose rangeFromLocationAndLength and locationAndLengthFromRange via internals object
        https://bugs.webkit.org/show_bug.cgi?id=68330

        Reviewed by Hajime Morita.

        Add rangeFromLocationAndLength, locationFromRange, and lengthFromRange to window.internals.

        Test: editing/text-iterator/range-to-from-location-and-length.html

        * WebCore.exp.in:
        * testing/Internals.cpp:
        (WebCore::Internals::scrollElementToRect):
        (WebCore::Internals::rangeFromLocationAndLength):
        (WebCore::Internals::locationFromRange):
        (WebCore::Internals::lengthFromRange):
        * testing/Internals.h:
        * testing/Internals.idl:

2011-10-16  Kentaro Hara  <haraken@chromium.org>

        Generate MessageChannel constructor by [Constructor] IDL
        https://bugs.webkit.org/show_bug.cgi?id=70214

        Reviewed by Adam Barth.

        This patch generates an MessageChannel constructor for JSC by [Constructor] IDL,
        but V8 is still using a custom constructor since the V8 constructor requires special logic.

        Tests: fast/dom/global-constructors.html
               fast/events/message-port.html
               fast/events/message-port-no-wrapper.html
               fast/dom/Window/window-postmessage-args.html

        * bindings/js/JSMessageChannelCustom.cpp: Removed the MessageChannel constructor.
        * dom/MessageChannel.idl: Generates the MessageChannel constructor for JSC.

2011-10-16  Ryosuke Niwa  <rniwa@webkit.org>

        [Mac] fontForSelection and styleForSelectionStart should be moved to EditorMac
        https://bugs.webkit.org/show_bug.cgi?id=70114

        Reviewed by Hajime Morita.

        Moved fontForSelection and styleForSelectionStart from Editor to EditorMac
        and made styleForSelectionStart static local.

        * editing/Editor.cpp:
        * editing/Editor.h:
        * editing/mac/EditorMac.mm:
        (WebCore::styleForSelectionStart):
        (WebCore::Editor::fontForSelection):
        (WebCore::Editor::fontAttributesForSelectionStart):

2011-10-16  Kentaro Hara  <haraken@chromium.org>

        Generate EventSource constructor for JSC by [Constructor] IDL
        https://bugs.webkit.org/show_bug.cgi?id=70212

        Reviewed by Adam Barth.

        Removed JSEventSourceCustom.cpp.

        Tests: fast/dom/global-constructors.html
               fast/eventsource/eventsource-constructor.html
               fast/eventsource/eventsource-attribute-listeners.html

        * GNUmakefile.list.am: Removed JSEventSourceCustom.cpp.
        * UseJSC.cmake: Ditto.
        * WebCore.gypi: Ditto.
        * WebCore.pro: Ditto.
        * WebCore.xcodeproj/project.pbxproj: Ditto.
        * bindings/js/JSBindingsAllInOne.cpp: Ditto.
        * bindings/js/JSEventSourceCustom.cpp: Removed this file.
        * page/EventSource.idl: Removed 'JSCustomConstructor' IDL.

2011-10-16  David Barr  <davidbarr@chromium.org>

        Inline CSSPrimitiveValue::isQuirkValue() as non-virtual function
        https://bugs.webkit.org/show_bug.cgi?id=64865

        Reviewed by Darin Adler.

        Based on profiling and patch from:
        Tamas Czene <Czene.Tamas@stud.u-szeged.hu>

        This is expected to produce a small performance progression.
        Additional memory overhead is avoided by using spare bits.
        CSSQuirkPrimitiveValue is removed as it becomes just a factory.

        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.order:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseValidPrimitive):
        * css/CSSParserValues.cpp:
        (WebCore::CSSParserValue::createCSSValue):
        * css/CSSPrimitiveValue.cpp:
        (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
        * css/CSSPrimitiveValue.h:
        (WebCore::CSSPrimitiveValue::createAllowingMarginQuirk):
        Moved from CSSQuirkPrimitiveValue::create.
        (WebCore::CSSPrimitiveValue::isQuirkValue):
        * css/CSSQuirkPrimitiveValue.h: Removed.
        * css/SVGCSSParser.cpp:
        (WebCore::CSSParser::parseSVGValue):

2011-10-16  Kentaro Hara  <haraken@chromium.org>

        Generate XMLHttpRequest constructor for JSC by [Constructor] IDL
        https://bugs.webkit.org/show_bug.cgi?id=70208

        Reviewed by Adam Barth.

        This patch generates an XMLHttpRequest constructor for JSC by [Constructor] IDL,
        but V8 is still using a custom constructor since the V8 constructor requires a special logic.

        Tests: fast/dom/global-constructors.html
               fast/dom/XMLHttpRequest-constants.html
               fast/dom/xmlhttprequest-constructor-in-detached-document.html
               http/tests/security/cookies/xmlhttprequest.html

        * bindings/js/JSXMLHttpRequestCustom.cpp: Removed an XMLHttpRequest custom constructor.
        * bindings/scripts/CodeGeneratorV8.pm: Currently, CodeGeneratorV8.pm generates constructor code whenever [Constructor] is specified, even if [V8CustomConstructor] is specified. This is wrong. This patch fixes the condition where the constructor code is generated.
        * bindings/scripts/test/V8/V8TestObj.cpp: Updated a run-binding-tests result.
        * xml/XMLHttpRequest.h: Added a necessary header.
        * xml/XMLHttpRequest.idl: V8 is still using a custom constructor.

2011-10-16  Kentaro Hara  <haraken@chromium.org>

        Generate XSLTProcessor constructor for JSC by [Constructor] IDL.
        https://bugs.webkit.org/show_bug.cgi?id=70206

        Reviewed by Adam Barth.

        Tests: fast/xsl/xslt-processor.html
               fast/xsl/default-html.html
               fast/dom/global-constructors.html

        * bindings/js/JSXSLTProcessorCustom.cpp: Removed a custom constructor.
        * xml/XSLTProcessor.idl: Removed 'JSCustomConstructor'.

2011-10-16  Kentaro Hara  <haraken@chromium.org>

        Support [Constructor] IDL for JSC.
        https://bugs.webkit.org/show_bug.cgi?id=70101

        Reviewed by Adam Barth.

        The spec for [Constructor] IDL is here: http://www.w3.org/TR/WebIDL/#Constructor
        This patch introduced [Constructor] IDL for JSC. This patch also added
        [ConstructorRaisesException] for JSC. If [ConstructorRaisesException] is specified,
        a placeholder for ExceptionCode is passed to XXX::create(), like XXX::create(..., ec).

        Notes:
        - We do not yet support constructor overloading.
        - We do not yet support [Optional] without CallWithDefaultValue for constructor arguments.

        Tests: Source/WebCore/bindings/scripts/test/TestInterface.idl
               Source/WebCore/bindings/scripts/test/TestObj.idl

        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateHeader): Generates constructor declaration code to a header file, if a given DOM object has constructor.
        (GenerateImplementation): Uses GenerateArgumentsCountCheck() and GenerateParametersCheck().
        (GenerateArgumentsCountCheck): Splits out of GenerateImplementation() for reuse.
        (GenerateParametersCheck): Splits out of GenerateImplementation() for reuse.
        (GenerateConstructorDefinition): Generates constructor definition code.
        * bindings/scripts/test/JS/JSTestInterface.cpp: Updated the run-binding-tests results.
        (WebCore::JSTestInterfaceConstructor::constructJSTestInterface):
        * bindings/scripts/test/JS/JSTestInterface.h: Ditto.
        (WebCore::JSTestInterfaceConstructor::create):
        (WebCore::JSTestInterfaceConstructor::createStructure):
        * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp: Ditto.
        (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
        * bindings/scripts/test/JS/JSTestMediaQueryListListener.h: Ditto.
        (WebCore::JSTestMediaQueryListListenerConstructor::create):
        (WebCore::JSTestMediaQueryListListenerConstructor::createStructure):
        * bindings/scripts/test/JS/JSTestObj.cpp: Ditto.
        (WebCore::jsTestObjPrototypeFunctionVoidMethod):
        (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
        (WebCore::jsTestObjPrototypeFunctionIntMethod):
        (WebCore::jsTestObjPrototypeFunctionIntMethodWithArgs):
        (WebCore::jsTestObjPrototypeFunctionObjMethod):
        (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
        (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs):
        (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
        (WebCore::jsTestObjPrototypeFunctionSerializedValue):
        (WebCore::jsTestObjPrototypeFunctionIdbKey):
        (WebCore::jsTestObjPrototypeFunctionOptionsObject):
        (WebCore::jsTestObjPrototypeFunctionMethodWithException):
        (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
        (WebCore::jsTestObjPrototypeFunctionAddEventListener):
        (WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
        (WebCore::jsTestObjPrototypeFunctionWithDynamicFrame):
        (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndArg):
        (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndOptionalArg):
        (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture):
        (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD):
        (WebCore::jsTestObjPrototypeFunctionWithScriptStateVoid):
        (WebCore::jsTestObjPrototypeFunctionWithScriptStateObj):
        (WebCore::jsTestObjPrototypeFunctionWithScriptStateVoidException):
        (WebCore::jsTestObjPrototypeFunctionWithScriptStateObjException):
        (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContext):
        (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
        (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
        (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
        (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
        (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
        (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg):
        (WebCore::jsTestObjPrototypeFunctionConditionalMethod1):
        (WebCore::jsTestObjPrototypeFunctionConditionalMethod2):
        (WebCore::jsTestObjPrototypeFunctionConditionalMethod3):
        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
        (WebCore::jsTestObjPrototypeFunctionOverloadedMethod5):
        (WebCore::jsTestObjPrototypeFunctionClassMethod):
        (WebCore::jsTestObjPrototypeFunctionClassMethodWithOptional):
        * bindings/scripts/test/JS/JSTestObj.h: Ditto.
        (WebCore::JSTestObjConstructor::create):
        (WebCore::JSTestObjConstructor::createStructure):
        * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp: Ditto.
        * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h: Ditto.
        (WebCore::JSTestSerializedScriptValueInterfaceConstructor::create):
        (WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):

2011-10-16  Dmitry Lomov  <dslomov@google.com>

        https://bugs.webkit.org/show_bug.cgi?id=70186
        Pass MessagePortArray to JSC's SerializedScriptValue::serialize/deserialize.

        Reviewed by Oliver Hunt.

        * bindings/js/JSDOMWindowCustom.cpp:
        (WebCore::handlePostMessage):
        (WebCore::JSDOMWindow::postMessage):
        (WebCore::JSDOMWindow::webkitPostMessage):
        * bindings/js/JSDictionary.cpp:
        (WebCore::JSDictionary::convertValue):
        * bindings/js/JSHistoryCustom.cpp:
        (WebCore::JSHistory::pushState):
        (WebCore::JSHistory::replaceState):
        * bindings/js/JSMessageEventCustom.cpp:
        (WebCore::JSMessageEvent::data):
        (WebCore::handleInitMessageEvent):
        (WebCore::JSMessageEvent::initMessageEvent):
        (WebCore::JSMessageEvent::webkitInitMessageEvent):
        * bindings/js/JSMessagePortCustom.h:
        (WebCore::handlePostMessage):
        * bindings/js/JSPopStateEventCustom.cpp:
        (WebCore::JSPopStateEvent::state):
        * bindings/js/ScriptValue.cpp:
        (WebCore::ScriptValue::serialize):
        (WebCore::ScriptValue::deserialize):
        * bindings/js/SerializedScriptValue.cpp:
        (WebCore::SerializedScriptValue::create):
        (WebCore::SerializedScriptValue::deserialize):
        * bindings/js/SerializedScriptValue.h:

2011-10-16  Dan Bernstein  <mitz@apple.com>

        REGRESSION (r96620): Float-avoiding block positioned incorrectly in right-to-left block
        https://bugs.webkit.org/show_bug.cgi?id=70197

        Reviewed by Dave Kilzer.

        Test: fast/block/float/avoidance-rtl.html

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats): Changed
        logicalLeftOffsetForContent() to startOffsetForContent() to get the right value in the
        right-to-left case.

2011-10-16  Adam Barth  <abarth@webkit.org>

        Always enable ENABLE(DOM_STORAGE)
        https://bugs.webkit.org/show_bug.cgi?id=70189

        Reviewed by Eric Seidel.

        As discussed on webkit-dev, we are reducing the complexity of WebKit by
        removing unnecessary configuration options.  DOMStorage is not a core
        part of the web platform.  It should always be enabled.

        * CMakeLists.txt:
        * Configurations/FeatureDefines.xcconfig:
        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * UseJSC.cmake:
        * WebCore.exp.in:
        * WebCore.pro:
        * bindings/js/JSEventCustom.cpp:
        * bindings/js/JSInjectedScriptHostCustom.cpp:
        * bindings/js/JSStorageCustom.cpp:
        * bindings/v8/custom/V8EventCustom.cpp:
        (WebCore::toV8):
        * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
        (WebCore::V8InjectedScriptHost::storageIdCallback):
        * bindings/v8/custom/V8StorageCustom.cpp:
        * dom/Document.cpp:
        (WebCore::Document::createEvent):
        * dom/Event.cpp:
        (WebCore::Event::isStorageEvent):
        * dom/Event.h:
        * dom/Node.cpp:
        * features.pri:
        * inspector/InjectedScriptHost.cpp:
        (WebCore::InjectedScriptHost::InjectedScriptHost):
        (WebCore::InjectedScriptHost::disconnect):
        (WebCore::InjectedScriptHost::storageIdImpl):
        * inspector/InjectedScriptHost.h:
        (WebCore::InjectedScriptHost::init):
        * inspector/InspectorController.cpp:
        (WebCore::InspectorController::InspectorController):
        (WebCore::InspectorController::connectFrontend):
        (WebCore::InspectorController::disconnectFrontend):
        (WebCore::InspectorController::restoreInspectorStateFromCookie):
        * inspector/InspectorController.h:
        * inspector/InspectorDOMStorageAgent.cpp:
        * inspector/InspectorDOMStorageResource.cpp:
        * inspector/InspectorDOMStorageResource.h:
        * inspector/InspectorInstrumentation.cpp:
        (WebCore::InspectorInstrumentation::didCommitLoadImpl):
        (WebCore::InspectorInstrumentation::didUseDOMStorageImpl):
        * inspector/InspectorInstrumentation.h:
        (WebCore::InspectorInstrumentation::didUseDOMStorage):
        * inspector/InstrumentingAgents.h:
        (WebCore::InstrumentingAgents::InstrumentingAgents):
        * inspector/WorkerInspectorController.cpp:
        (WebCore::WorkerInspectorController::WorkerInspectorController):
        (WebCore::WorkerInspectorController::connectFrontend):
        * inspector/generate-inspector-idl:
        * page/Chrome.cpp:
        * page/DOMWindow.cpp:
        (WebCore::DOMWindow::~DOMWindow):
        (WebCore::DOMWindow::clear):
        (WebCore::DOMWindow::localStorage):
        * page/DOMWindow.h:
        * page/DOMWindow.idl:
        * page/Navigator.cpp:
        (WebCore::Navigator::getStorageUpdates):
        * page/Navigator.h:
        * page/Navigator.idl:
        * page/Page.cpp:
        * page/Page.h:
        * page/PageGroup.cpp:
        (WebCore::PageGroup::closeLocalStorage):
        * page/PageGroup.h:
        * page/Settings.cpp:
        (WebCore::Settings::Settings):
        (WebCore::Settings::setSessionStorageQuota):
        * page/Settings.h:
        (WebCore::Settings::sessionStorageQuota):
        * storage/LocalStorageTask.cpp:
        * storage/LocalStorageTask.h:
        * storage/LocalStorageThread.cpp:
        * storage/LocalStorageThread.h:
        * storage/Storage.cpp:
        * storage/Storage.h:
        * storage/Storage.idl:
        * storage/StorageArea.h:
        * storage/StorageAreaImpl.cpp:
        * storage/StorageAreaImpl.h:
        * storage/StorageAreaSync.cpp:
        (WebCore::StorageAreaSync::scheduleSync):
        * storage/StorageAreaSync.h:
        * storage/StorageEvent.cpp:
        * storage/StorageEvent.h:
        * storage/StorageEvent.idl:
        * storage/StorageEventDispatcher.cpp:
        * storage/StorageEventDispatcher.h:
        * storage/StorageMap.cpp:
        * storage/StorageMap.h:
        * storage/StorageNamespace.cpp:
        * storage/StorageNamespace.h:
        * storage/StorageNamespaceImpl.cpp:
        * storage/StorageNamespaceImpl.h:
        * storage/StorageSyncManager.cpp:
        (WebCore::StorageSyncManager::scheduleDeleteEmptyDatabase):
        * storage/StorageSyncManager.h:
        * storage/StorageTracker.cpp:
        * storage/StorageTracker.h:

2011-10-15  Adam Barth  <abarth@webkit.org>

        Rename ENABLE(SKIA_TEXT) to USE(SKIA_TEXT)
        https://bugs.webkit.org/show_bug.cgi?id=70191

        Reviewed by Daniel Bates.

        SKIA_TEXT is not a WebKit feature.  It's a macro that determines
        whether we use a feature of the underly library (Skia).

        * platform/graphics/chromium/FontChromiumWin.cpp:
        (WebCore::Font::drawComplexText):
        * platform/graphics/chromium/UniscribeHelper.cpp:
        (WebCore::UniscribeHelper::draw):
        * platform/graphics/skia/PlatformContextSkia.cpp:
        (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
        * platform/graphics/skia/PlatformContextSkia.h:
        * platform/graphics/skia/SkiaFontWin.cpp:
        * platform/graphics/skia/SkiaFontWin.h:

2011-10-15  Eric Carlson  <eric.carlson@apple.com>

        Make VIDEO_TRACK compile with warnings as errors enabled
        https://bugs.webkit.org/show_bug.cgi?id=70188

        Reviewed by Filip Pizlo.

        No new tests, no functionality changed.

        * html/TextTrackCueList.h: Fix an include.
        * html/track/CueParser.cpp:
        (WebCore::CueParser::supportsType): Remove unused param.
        * html/track/CueParser.h:
        (WebCore::CueParserClient::~CueParserClient): Add virtual destructor.
        * html/track/CueParserPrivate.h:
        (WebCore::CueParserPrivateClient::~CueParserPrivateClient): Ditto.
        * loader/CueLoader.h:
        (WebCore::CueLoaderClient::~CueLoaderClient): Ditto.
        (WebCore::CueLoader::~CueLoader): Ditto.

2011-10-15  Adam Barth  <abarth@webkit.org>

        Rename ENABLE(TILED_BACKING_STORE) to USE(TILED_BACKING_STORE)
        https://bugs.webkit.org/show_bug.cgi?id=70194

        Reviewed by Daniel Bates.

        TILED_BACKING_STORE isn't a web platform feature.  It's an
        implementation strategy for WebKit that's used by some ports
        and not by others.

        * features.pri:
        * loader/EmptyClients.h:
        * page/Chrome.cpp:
        * page/Chrome.h:
        * page/ChromeClient.h:
        * page/Frame.cpp:
        (WebCore::Frame::Frame):
        (WebCore::Frame::setView):
        * page/Frame.h:
        * page/FrameView.cpp:
        (WebCore::FrameView::repaintContentRectangle):
        (WebCore::FrameView::doDeferredRepaints):
        * page/Settings.cpp:
        (WebCore::Settings::setTiledBackingStoreEnabled):
        * platform/HostWindow.h:
        * platform/ScrollView.cpp:
        (WebCore::ScrollView::setScrollPosition):
        * platform/graphics/Tile.h:
        * platform/graphics/TiledBackingStore.cpp:
        * platform/graphics/TiledBackingStore.h:
        * platform/graphics/TiledBackingStoreBackend.h:
        * platform/graphics/TiledBackingStoreClient.h:
        * platform/graphics/qt/GraphicsLayerQt.cpp:
        (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl):
        (WebCore::GraphicsLayerQtImpl::~GraphicsLayerQtImpl):
        (WebCore::GraphicsLayerQtImpl::recache):
        (WebCore::GraphicsLayerQtImpl::paint):
        * platform/graphics/qt/TileQt.cpp:
        * platform/graphics/qt/TileQt.h:
        * platform/graphics/texmap/TextureMapperNode.cpp:
        (WebCore::TextureMapperNode::computeTiles):
        (WebCore::TextureMapperNode::renderContent):
        (WebCore::TextureMapperNode::paintSelf):
        (WebCore::TextureMapperNode::syncCompositingStateSelf):
        * platform/graphics/texmap/TextureMapperNode.h:
        (WebCore::TextureMapperNode::State::State):

2011-10-15  Adam Barth  <abarth@webkit.org>

        Remove the last remnant of WBXML
        https://bugs.webkit.org/show_bug.cgi?id=70187

        Reviewed by Daniel Bates.

        The bulk of the WBXML code was removed in 2009, but we missed one block.

        * platform/wince/MIMETypeRegistryWinCE.cpp:
        (WebCore::initMIMETypeEntensionMap):

2011-10-15  Darin Adler  <darin@apple.com>

        REGRESSION(r97533): fast/forms/select-script-onchange.html failed after
        https://bugs.webkit.org/show_bug.cgi?id=70173

        Reviewed by Ryosuke Niwa.

        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::setValue): Removed unneeded boolean argument
        [true for deselect].
        (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Added explicit
        boolean arguments for all calls to setSelectedIndex to restore pre-r97533
        behavior.
        (WebCore::HTMLSelectElement::typeAheadFind): Ditto.
        (WebCore::HTMLSelectElement::accessKeySetSelectedIndex): Ditto.

        * html/HTMLSelectElement.h:
        Removed default of true for userDrivenChange. Each caller should pass it
        explicitly. Longer term we should use an enum instead of a boolean or find
        some other way of avoiding the argument.
        (WebCore::HTMLSelectElement::setSelectedIndex):
        Pass false for userDrivenChange as the old code did pre-r97533.

2011-10-15  Laszlo Gombos  <laszlo.1.gombos@nokia.com>

        [Qt] [Symbian] Remove support for the Symbian platform for the QtWebKit port
        https://bugs.webkit.org/show_bug.cgi?id=69920

        Reviewed by Kenneth Rohde Christiansen.

        No new tests as there is no new functionality.

        * WebCore.gypi:
        * WebCore.pri:
        * WebCore.pro:
        * bindings/v8/V8GCController.cpp:
        (WebCore::V8GCController::checkMemoryUsage):
        * config.h:
        * css/CSSPrimitiveValueMappings.h:
        (WebCore::CSSPrimitiveValue::operator int):
        * features.pri:
        * page/NavigatorBase.cpp:
        * platform/graphics/qt/GraphicsContextQt.cpp:
        (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
        * platform/network/qt/ResourceRequestQt.cpp:
        (WebCore::initializeMaximumHTTPConnectionCountPerHost):
        * platform/text/qt/TextCodecQt.cpp:
        (WebCore::TextCodecQt::decode):
        * plugins/PluginDatabase.cpp:
        * plugins/PluginPackage.cpp:
        (WebCore::PluginPackage::unload):
        * plugins/PluginPackage.h:
        (WebCore::PluginPackage::version):
        * plugins/PluginView.cpp:
        (WebCore::PluginView::setFrameRect):
        * plugins/PluginView.h:
        * plugins/npapi.h:
        * plugins/symbian: Removed.
        * plugins/symbian/PluginContainerSymbian.cpp: Removed.
        * plugins/symbian/PluginContainerSymbian.h: Removed.
        * plugins/symbian/PluginDatabaseSymbian.cpp: Removed.
        * plugins/symbian/PluginPackageSymbian.cpp: Removed.
        * plugins/symbian/PluginViewSymbian.cpp: Removed.
        * plugins/symbian/npinterface.h: Removed.

2011-10-08  Robert Hogan  <robert@webkit.org>

        CSS 2.1 failure: height-width-table-001.htm
        https://bugs.webkit.org/show_bug.cgi?id=69709

        Reviewed by Simon Fraser.

        CSS 2.1 expects CSS table elements to treat fixed height/width as
        excluding table borders, but HTML table elements to treat fixed height/width as
        including them.
        
        See http://lists.w3.org/Archives/Public/www-style/2011Jan/0178.html
            http://lists.w3.org/Archives/Public/public-css-testsuite/2011Oct/0005.html
            
        It looks like some clarification is pending in the specs, but the new behaviour
        lets WebKit pass the following tests in the suite CSS and also match FF:
          height-width-table-001.htm
          height-width-inline-table-001.htm
          abspos-containing-block-initial-004d.htm

        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::computeLogicalWidth):
        (WebCore::RenderTable::layout):

2011-10-15  Darin Adler  <darin@apple.com>

        Make toHTMLElement fail to compile if you try to use it on an HTMLElement*
        https://bugs.webkit.org/show_bug.cgi?id=70164

        Reviewed by Adam Barth.

        Refactoring covered by existing tests.

        * bindings/js/JSHTMLFrameSetElementCustom.cpp:
        (WebCore::JSHTMLFrameSetElement::nameGetter): Removed unneeded casts and
        some unneeded local variables as well. Changed the name of the local variable
        for the HTMLFrameElement to frameElement to avoid confusion with the Frame.
        * dom/Document.cpp:
        (WebCore::Document::openSearchDescriptionURL): Removed unneeded HTMLElement
        check; we can call hasTagName directly on a Node and that takes care of
        checking both that it's an HTMLElement and checking the tag name.
        * dom/MicroDataItemList.cpp:
        (WebCore::MicroDataItemList::nodeMatches): Use toHTMLElement instead of
        a cast. Also changed hasAttribute calls to fastHasAttribute and getAttribute
        calls to fastGetAttribute since these are neither style attributes nor SVG
        animatables.
        * editing/ApplyStyleCommand.cpp:
        (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Use toHTMLElement.
        (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): Ditto.
        * editing/DeleteButtonController.cpp:
        (WebCore::DeleteButtonController::show): Removed unneeded toHTMLElement call.
        * html/HTMLElement.cpp:
        (WebCore::HTMLElement::setOuterHTML): Use toHTMLElement.
        * html/HTMLElement.h: Added toHTMLElement overload to catch calls when the
        pointer is already HTMLElement* or a pointer to a class derived from it.
        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::recalcListItems): Use toHTMLElement.
        * html/HTMLTextAreaElement.cpp:
        (WebCore::HTMLTextAreaElement::innerTextElement): Use toHTMLElement.

2011-10-15  Antoine Labour  <piman@chromium.org>

        Add WebAcceleratedContentLayer backed by a texture to support accelerated content hosting
        https://bugs.webkit.org/show_bug.cgi?id=70084

        Reviewed by James Robinson.

        Covered by existing compositing/ tests

        * platform/graphics/chromium/LayerChromium.h:
        * platform/graphics/chromium/LayerRendererChromium.cpp:
        (WebCore::LayerRendererChromium::pluginLayerProgramFlip):
        (WebCore::LayerRendererChromium::cleanupSharedObjects):
        * platform/graphics/chromium/LayerRendererChromium.h:
        * platform/graphics/chromium/PluginLayerChromium.cpp:
        (WebCore::PluginLayerChromium::PluginLayerChromium):
        (WebCore::PluginLayerChromium::setTextureId):
        (WebCore::PluginLayerChromium::setFlipped):
        (WebCore::PluginLayerChromium::pushPropertiesTo):
        * platform/graphics/chromium/PluginLayerChromium.h:
        (WebCore::PluginLayerChromium::flipped):
        * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
        (WebCore::CCPluginLayerImpl::CCPluginLayerImpl):
        (WebCore::CCPluginLayerImpl::draw):
        * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
        (WebCore::CCPluginLayerImpl::setFlipped):

2011-10-15  Michael Nordman  <michaeln@google.com>

        [Chromium] Some WebSQLDatabase in worker bug fixes.
        https://bugs.webkit.org/show_bug.cgi?id=70071

        - Test for a NULL webView WebWorkerClientImpl.
        - Avoid altering Database instance lifetimes during WorkerThread::stop().

        Existing tests coverage applies.

        Reviewed by David Levin.

        * storage/chromium/DatabaseTrackerChromium.cpp:
        (WebCore::DatabaseTracker::interruptAllDatabasesForContext):

2011-10-14  Adam Barth  <abarth@webkit.org>

        Update expected results.

        * bindings/scripts/test/V8/V8TestObj.cpp:
        (WebCore::TestObjInternal::serializedValueCallback):

2011-10-14  Ryosuke Niwa  <rniwa@webkit.org>

        GTK build fix after r97533.

        * accessibility/gtk/AXObjectCacheAtk.cpp:
        (WebCore::notifyChildrenSelectionChange):
        * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
        (optionFromSelection):
        (webkit_accessible_selection_get_selection_count):

2011-10-14  David Kilzer  <ddkilzer@apple.com>

        <http://webkit.org/b/70158> Fix clang compiler warnings

        Reviewed by Darin Adler.

        * dom/ViewportArguments.cpp:
        (WebCore::computeViewportAttributes): Use std::max<float>()
        instead of std::max().

2011-10-14  Mark Hahnenberg  <mhahnenberg@apple.com>

        Rename getOwnPropertySlot to getOwnPropertySlotVirtual
        https://bugs.webkit.org/show_bug.cgi?id=69810

        Reviewed by Geoffrey Garen.

        No new tests.

        Renamed the virtual version of getOwnPropertySlot to getOwnPropertySlotVirtual
        in preparation for when we add the static getOwnPropertySlot to the MethodTable 
        in ClassInfo.

        Also added a few static getOwnPropertySlot functions where they had been overlooked 
        before (especially in CodeGeneratorJS.pm).

        * WebCore.exp.in:
        * bindings/js/JSDOMWindowCustom.cpp:
        (WebCore::JSDOMWindow::getOwnPropertySlotVirtual):
        (WebCore::JSDOMWindow::getOwnPropertySlot):
        (WebCore::DialogHandler::returnValue):
        * bindings/js/JSDOMWindowShell.cpp:
        (WebCore::JSDOMWindowShell::getOwnPropertySlotVirtual):
        (WebCore::JSDOMWindowShell::getOwnPropertySlot):
        * bindings/js/JSDOMWindowShell.h:
        * bindings/js/JSWorkerContextCustom.cpp:
        (WebCore::JSWorkerContext::getOwnPropertySlotDelegate):
        * bindings/js/SerializedScriptValue.cpp:
        (WebCore::CloneSerializer::getSparseIndex):
        (WebCore::CloneSerializer::getProperty):
        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateGetOwnPropertySlotBody):
        (GenerateHeader):
        (GenerateImplementation):
        (GenerateConstructorDeclaration):
        (GenerateConstructorDefinition):
        * bindings/scripts/test/JS/JSTestInterface.cpp:
        (WebCore::JSTestInterfaceConstructor::getOwnPropertySlotVirtual):
        (WebCore::JSTestInterfaceConstructor::getOwnPropertySlot):
        (WebCore::JSTestInterface::getOwnPropertySlotVirtual):
        (WebCore::JSTestInterface::getOwnPropertySlot):
        * bindings/scripts/test/JS/JSTestInterface.h:
        * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
        (WebCore::JSTestMediaQueryListListenerConstructor::getOwnPropertySlotVirtual):
        (WebCore::JSTestMediaQueryListListenerConstructor::getOwnPropertySlot):
        (WebCore::JSTestMediaQueryListListenerPrototype::getOwnPropertySlotVirtual):
        (WebCore::JSTestMediaQueryListListenerPrototype::getOwnPropertySlot):
        (WebCore::JSTestMediaQueryListListener::getOwnPropertySlotVirtual):
        (WebCore::JSTestMediaQueryListListener::getOwnPropertySlot):
        * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
        * bindings/scripts/test/JS/JSTestObj.cpp:
        (WebCore::JSTestObjConstructor::getOwnPropertySlotVirtual):
        (WebCore::JSTestObjConstructor::getOwnPropertySlot):
        (WebCore::JSTestObjPrototype::getOwnPropertySlotVirtual):
        (WebCore::JSTestObjPrototype::getOwnPropertySlot):
        (WebCore::JSTestObj::getOwnPropertySlotVirtual):
        (WebCore::JSTestObj::getOwnPropertySlot):
        * bindings/scripts/test/JS/JSTestObj.h:
        * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
        (WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertySlotVirtual):
        (WebCore::JSTestSerializedScriptValueInterfaceConstructor::getOwnPropertySlot):
        (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlotVirtual):
        (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlot):
        * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
        * bridge/objc/objc_runtime.h:
        * bridge/objc/objc_runtime.mm:
        (JSC::Bindings::ObjcFallbackObjectImp::getOwnPropertySlotVirtual):
        * bridge/qt/qt_instance.cpp:
        (JSC::Bindings::QtInstance::getOwnPropertySlot):
        * bridge/qt/qt_runtime.cpp:
        (JSC::Bindings::QtRuntimeMetaMethod::getOwnPropertySlotVirtual):
        (JSC::Bindings::QtRuntimeConnectionMethod::getOwnPropertySlotVirtual):
        * bridge/qt/qt_runtime.h:
        * bridge/runtime_array.cpp:
        (JSC::RuntimeArray::getOwnPropertySlotVirtual):
        * bridge/runtime_array.h:
        * bridge/runtime_method.cpp:
        (JSC::RuntimeMethod::getOwnPropertySlotVirtual):
        * bridge/runtime_method.h:
        * bridge/runtime_object.cpp:
        (JSC::Bindings::RuntimeObject::getOwnPropertySlotVirtual):
        * bridge/runtime_object.h:

2011-10-14  Ryosuke Niwa  <rniwa@webkit.org>

        Windows build fix attempt after r97533.

        * html/HTMLSelectElementWin.cpp:
        (WebCore::HTMLSelectElement::platformHandleKeydownEvent):

2011-10-14  Darin Adler  <darin@apple.com>

        Follow up the recent HTMLSelectElement improvements with a little bit more
        https://bugs.webkit.org/show_bug.cgi?id=70139

        Reviewed by Ryosuke Niwa.

        Refactoring, covered by existing tests.

        Mostly, this adds a toHTMLSelectElement and uses it wherever possible.

        * accessibility/AccessibilityListBox.cpp:
        (WebCore::AccessibilityListBox::canSetSelectedChildrenAttribute): Use toHTMLSelectElement.
        (WebCore::AccessibilityListBox::addChildren): Ditto. Also removed unneeded toHTMLElement.
        * accessibility/AccessibilityMenuListPopup.cpp:
        (WebCore::AccessibilityMenuListPopup::addChildren): Ditto.
        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::isMultiSelectable): Ditto.
        (WebCore::AccessibilityRenderObject::stringValue): Removed checks on the type of the
        underlying node, since other code already assumes that a menu list renderer is only
        created for a select element. Streamlined the code a bit and removed some unneeded
        local variables.
        * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
        (WebCore::JSHTMLOptionsCollection::indexSetter): Use toHTMLSelectElement.
        * bindings/js/JSHTMLSelectElementCustom.cpp:
        (WebCore::JSHTMLSelectElement::remove): Ditto.
        (WebCore::JSHTMLSelectElement::indexSetter): Ditto.
        * editing/FrameSelection.cpp:
        (WebCore::FrameSelection::selectAll): Ditto.
        * html/HTMLKeygenElement.cpp:
        (WebCore::HTMLKeygenElement::shadowSelect): Ditto.
        * html/HTMLOptGroupElement.cpp:
        (WebCore::HTMLOptGroupElement::recalcSelectOptions): Ditto.
        (WebCore::HTMLOptGroupElement::ownerSelectElement): Ditto.
        * html/HTMLOptionElement.cpp:
        (WebCore::HTMLOptionElement::selected): Changed code to call renamed
        updateListItemSelectedStates rather than the confusing old name
        recalcListItemsIfNeeded.
        (WebCore::HTMLOptionElement::childrenChanged): Changed to call
        optionElementChildrenChanged rather than calling childrenChanged,
        because the children of the select element did not change!
        (WebCore::HTMLOptionElement::ownerSelectElement): Use toHTMLSelectElement.
        * html/HTMLOptionsCollection.cpp:
        (WebCore::HTMLOptionsCollection::add): Use toHTMLSelectElement.
        (WebCore::HTMLOptionsCollection::remove): Use toHTMLSelectElement.
        (WebCore::HTMLOptionsCollection::selectedIndex): Use toHTMLSelectElement.
        (WebCore::HTMLOptionsCollection::setSelectedIndex): Use toHTMLSelectElement.
        (WebCore::HTMLOptionsCollection::setLength): Use toHTMLSelectElement.
        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::setSelectedIndexByUser): Call setSelectedIndex
        without the now-unneeded internal suffix.
        (WebCore::HTMLSelectElement::parseMappedAttribute): When the code says that
        we should "determine selectedness of the items", call updateListItemSelectedStates
        rather than the confusingly named recalcListItemsIfNeeded.
        (WebCore::HTMLSelectElement::updateListItemSelectedStates): Renamed
        recalcListItemsIfNeeded to this, since that's what this function is for.
        (WebCore::HTMLSelectElement::optionElementChildrenChanged): Added. Does
        the same work as childrenChanged, although it does not call up to the
        base class childrenChanged function. Later we might find we can remove
        some of the work here, for example it's not clear we should call the
        accessibility childrenChanged function.
        (WebCore::HTMLSelectElement::nextValidIndex): Changed this to a member function
        and made it get the list items itself rather than requiring they be passed in.
        (WebCore::HTMLSelectElement::nextSelectableListIndex): Updated for change to
        nextValidIndex.
        (WebCore::HTMLSelectElement::previousSelectableListIndex): Ditto.
        (WebCore::HTMLSelectElement::firstSelectableListIndex): Ditto.
        (WebCore::HTMLSelectElement::lastSelectableListIndex): Ditto.
        (WebCore::HTMLSelectElement::nextSelectableListIndexPageAway): Ditto.
        (WebCore::HTMLSelectElement::listItems): Removed unneeded const_cast, since
        recalcListItems is now a const member function. Call recalcListItems by that
        name instead of recalcListItemsInternal.
        (WebCore::HTMLSelectElement::recalcListItems): Renamed from recalcListItemsInternal
        and made this a const member function. The data members that this needs to modify
        are now mutable.
        (WebCore::HTMLSelectElement::setSelectedIndex): Renamed from setSelectedIndexInternal.
        Changed call to updateValidity to instead call setNeedsValidityCheck, since both
        do the same thing.
        (WebCore::HTMLSelectElement::parseMultipleAttribute): Ditto.
        (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Updated for change to
        nextValidIndex, removed unneeded comparison with zero that's already handled by
        casting to an unsigned type, and use setSelectedIndex instead of using
        setSelectedIndexInternal since they are both the same thing.
        (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Removed another unneeded
        comparision with zero that's handled by casting to an unsigned type.
        (WebCore::HTMLSelectElement::lastSelectedListIndex): Use size_t instead of unsigned
        for a vector index.
        (WebCore::HTMLSelectElement::typeAheadFind): Use setSelectedIndex instead of
        setSelectedIndexInternal.
        (WebCore::HTMLSelectElement::insertedIntoTree): Removed unneeded explicit boolean
        when calling a function that already has a default value of true.
        (WebCore::HTMLSelectElement::accessKeySetSelectedIndex): Use setSelectedIndex
        instead of setSelectedIndexInternal.

        * html/HTMLSelectElement.h: Made childrenChanged private. Added
        optionElementChildrenChanged. Renamed recalcListItemsIfNeeded to the clearer
        updateListItemSelectedStates. Removed unused listBoxSelectItem. Removed
        updateValidity after changing all callers to instead call setNeedsValidityCheck.
        Made canSelectAll and selectAll non-virtual. Removed recalcListItemsInternal
        since it's the same thing as recalcListItems now. Renamed setSelectedIndexInternal
        to setSelectedIndex since it's the same function, just with a few arguments we
        don't want to allow outside callers to pass. Changed nextValidIndex into a
        non-static member function. Made m_listItems and m_shouldRecalcListItems mutable.
        Added a toHTMLSelectElement function, modeled on the toElement function.

        * html/ValidityState.cpp:
        (WebCore::ValidityState::valueMissing): Use toHTMLSelectElement.
        * rendering/RenderListBox.cpp:
        (WebCore::RenderListBox::updateFromElement): Ditto.
        (WebCore::RenderListBox::scrollToRevealSelection): Ditto.
        (WebCore::RenderListBox::size): Ditto.
        (WebCore::RenderListBox::numItems): Ditto.
        (WebCore::RenderListBox::addFocusRingRects): Ditto.
        (WebCore::RenderListBox::paintItemForeground): Ditto.
        (WebCore::RenderListBox::paintItemBackground): Ditto.
        (WebCore::RenderListBox::panScroll): Ditto.
        (WebCore::RenderListBox::autoscroll): Ditto.
        (WebCore::RenderListBox::stopAutoscroll): Ditto.
        (WebCore::RenderListBox::valueChanged): Ditto.
        (WebCore::RenderListBox::nodeAtPoint): Ditto.
        * rendering/RenderMenuList.cpp:
        (WebCore::RenderMenuList::updateOptionsWidth): Ditto.
        (WebCore::RenderMenuList::updateFromElement): Ditto.
        (WebCore::RenderMenuList::setTextFromOption): Ditto.
        (WebCore::RenderMenuList::showPopup): Ditto.
        (WebCore::RenderMenuList::valueChanged): Ditto.
        (WebCore::RenderMenuList::listBoxSelectItem): Ditto.
        (WebCore::RenderMenuList::multiple): Ditto.
        (WebCore::RenderMenuList::didSetSelectedIndex): Ditto.
        (WebCore::RenderMenuList::didUpdateActiveOption): Ditto.
        (WebCore::RenderMenuList::itemText): Ditto.
        (WebCore::RenderMenuList::itemAccessibilityText): Ditto.
        (WebCore::RenderMenuList::itemToolTip): Ditto.
        (WebCore::RenderMenuList::itemIsEnabled): Ditto. Also use the
        disabled function instead of the virtual isEnabledFormControl
        function to check if the optgroup is enabled.
        (WebCore::RenderMenuList::itemStyle): Ditto.
        (WebCore::RenderMenuList::itemBackgroundColor): Ditto.
        (WebCore::RenderMenuList::listSize): Ditto.
        (WebCore::RenderMenuList::selectedIndex): Ditto.
        (WebCore::RenderMenuList::itemIsSeparator): Ditto.
        (WebCore::RenderMenuList::itemIsLabel): Ditto.
        (WebCore::RenderMenuList::itemIsSelected): Ditto.
        (WebCore::RenderMenuList::setTextFromItem): Ditto.

2011-10-14  Mark Hahnenberg  <mhahnenberg@apple.com>

        Rename virtual put to putVirtual
        https://bugs.webkit.org/show_bug.cgi?id=69851

        Reviewed by Darin Adler.

        No new tests.

        Renamed virtual versions of put to putVirtual in prepration for 
        adding the static put to the MethodTable in ClassInfo since the 
        compiler gets mad if the virtual and static versions have the same 
        name.

        * WebCore.exp.in:
        * bindings/js/JSDOMWindowCustom.cpp:
        (WebCore::JSDOMWindow::putVirtual):
        * bindings/js/JSDOMWindowShell.cpp:
        (WebCore::JSDOMWindowShell::putVirtual):
        * bindings/js/JSDOMWindowShell.h:
        * bindings/js/JSLocationCustom.cpp:
        (WebCore::JSLocation::putDelegate):
        * bindings/js/JSPluginElementFunctions.cpp:
        (WebCore::runtimeObjectCustomPut):
        * bindings/js/SerializedScriptValue.cpp:
        (WebCore::CloneDeserializer::putProperty):
        * bindings/objc/WebScriptObject.mm:
        (-[WebScriptObject setValue:forKey:]):
        (-[WebScriptObject setWebScriptValueAtIndex:value:]):
        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateHeader):
        (GenerateImplementation):
        * bindings/scripts/test/JS/JSTestObj.cpp:
        (WebCore::JSTestObj::putVirtual):
        * bindings/scripts/test/JS/JSTestObj.h:
        * bridge/NP_jsobject.cpp:
        (_NPN_SetProperty):
        * bridge/jni/jni_jsobject.mm:
        (JavaJSObject::setMember):
        (JavaJSObject::setSlot):
        * bridge/objc/objc_runtime.h:
        * bridge/objc/objc_runtime.mm:
        (JSC::Bindings::ObjcFallbackObjectImp::putVirtual):
        * bridge/qt/qt_instance.cpp:
        (JSC::Bindings::QtInstance::put):
        * bridge/qt/qt_runtime.cpp:
        (JSC::Bindings::convertQVariantToValue):
        * bridge/runtime_array.cpp:
        (JSC::RuntimeArray::putVirtual):
        * bridge/runtime_array.h:
        * bridge/runtime_object.cpp:
        (JSC::Bindings::RuntimeObject::putVirtual):
        * bridge/runtime_object.h:
        * bridge/testqtbindings.cpp:
        (main):

2011-10-14  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r97519.
        http://trac.webkit.org/changeset/97519
        https://bugs.webkit.org/show_bug.cgi?id=70156

        Broke 79+ tests on bots (Requested by dglazkov on #webkit).

        * platform/graphics/skia/GraphicsContextSkia.cpp:
        (WebCore::getFocusRingOutset):
        (WebCore::GraphicsContext::drawFocusRing):

2011-09-28  Robert Hogan  <robert@webkit.org>

        Replaced elements squeezed when width is specified as percentage inside a table with Auto layout
        https://bugs.webkit.org/show_bug.cgi?id=29447

        If inserting a 'replaced' element (e.g. image, plugin) in a table cell that is not descendant from
        a block with fixed layout then do not squeeze the element, let it use its intrinsic width and height.

        Reviewed by David Hyatt.

        Test: fast/replaced/table-percent-width.html

        * rendering/RenderBox.cpp:
        (WebCore::shouldExpandToIntrinsicDimension):
        (WebCore::RenderBox::containingBlockReplacedLogicalWidthForContent):
        (WebCore::RenderBox::computeReplacedLogicalWidthUsing):
        (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
        * rendering/RenderBox.h:

2011-10-14  Cary Clark  <caryclark@google.com>

        [Chromium Skia on Mac] Improve focus ring
        https://bugs.webkit.org/show_bug.cgi?id=70124

        Reviewed by Eric Seidel.
        
        The focus ring code formerly outset the bounds of
        the component rectangles by fractional amounts. Because
        the rectangles are SkIRect (integer based), the fractional
        outset had no effect.

        The equivalent code in GraphicsContextMac.mm computes
        the curve radius and rectangle outset with integers, so
        the use of floats in Skia's case, besides not working,
        is unnecessary.

        The Skia code also failed to take the offset into account.
        In LayoutTests, the focus rings either have an offset of
        0 or 2. The CoreGraphics code increases the ring's rectangles
        by the offset, then passes the result to wkDrawFocusRing.

        I did not find any documentation about how wkDrawFocusRing
        further inflates the focus ring, but empirically I determined
        that adding 2 to the offset generated rings with identical
        outer diameters.
 
        With these adjustments, the layout tests generate focus rings
        in the Skia on Mac case that match the coverage of the
        Chromium CG-based platform, in particular, matching:
        
        editing/inserting/editable-inline-element.html
        editing/selection/3690703-2.html

        * platform/graphics/skia/GraphicsContextSkia.cpp:
        (WebCore::getFocusRingOutset):
        (WebCore::GraphicsContext::drawFocusRing):

2011-10-14  Chang Shu  <cshu@webkit.org>

        [Qt] Enable fullscreen api on Qt
        https://bugs.webkit.org/show_bug.cgi?id=70131

        As a result, we have 3 passed tests.

        Reviewed by Noam Rosenthal.

        * features.pri:

2011-10-14  Beth Dakin  <bdakin@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=70148
        Should switch to CoreUI version of CorrectionDot, GrammarDot, and SpellingDot
        -and corresponding-
        <rdar://problem/10208281>

        Reviewed by Anders Carlsson.

        Use NS*Dot whenever it's available, and fallback to *Dot only when it is not.
        * platform/graphics/mac/GraphicsContextMac.mm:
        (WebCore::createPatternColor):
        (WebCore::GraphicsContext::drawLineForTextChecking):

2011-10-14  Dmitry Lomov  <dslomov@google.com>

        https://bugs.webkit.org/show_bug.cgi?id=70120
        [Chromium] Pass MessagePortArray to SerializedScriptValue::serialize/deserialize.
        This patch augments SerializedScriptValue with MessagePortArray* parameter to implement MessagePort 
        transfer within the message in the future.

        Reviewed by David Levin.

        * bindings/scripts/CodeGeneratorV8.pm:
        (GenerateParametersCheck):
        * bindings/v8/SerializedScriptValue.cpp:
        (WebCore::SerializedScriptValue::create):
        (WebCore::SerializedScriptValue::SerializedScriptValue):
        (WebCore::SerializedScriptValue::deserialize):
        * bindings/v8/SerializedScriptValue.h:
        * bindings/v8/custom/V8DOMWindowCustom.cpp:
        (WebCore::handlePostMessageCallback):
        (WebCore::V8DOMWindow::postMessageCallback):
        (WebCore::V8DOMWindow::webkitPostMessageCallback):
        * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
        (WebCore::handlePostMessageCallback):
        (WebCore::V8DedicatedWorkerContext::postMessageCallback):
        (WebCore::V8DedicatedWorkerContext::webkitPostMessageCallback):
        * bindings/v8/custom/V8HistoryCustom.cpp:
        (WebCore::V8History::pushStateCallback):
        (WebCore::V8History::replaceStateCallback):
        * bindings/v8/custom/V8MessageEventCustom.cpp:
        (WebCore::V8MessageEvent::dataAccessorGetter):
        * bindings/v8/custom/V8MessagePortCustom.cpp:
        (WebCore::handlePostMessageCallback):
        (WebCore::V8MessagePort::postMessageCallback):
        (WebCore::V8MessagePort::webkitPostMessageCallback):
        * bindings/v8/custom/V8WorkerCustom.cpp:
        (WebCore::handlePostMessageCallback):
        (WebCore::V8Worker::postMessageCallback):
        (WebCore::V8Worker::webkitPostMessageCallback):
        * workers/Worker.idl:

2011-10-14  Jeff Miller  <jeffm@apple.com>

        InjectedBundleHitTestResult::imageRect() should return rect in WKView coordinates
        https://bugs.webkit.org/show_bug.cgi?id=69963
        
        Add infrastructure to convert from any frame view's coordinate system to the
        root view's coordinate system.

        Reviewed by Simon Fraser.

        No new tests (yet), this is covered by <https://bugs.webkit.org/show_bug.cgi?id=70136>.

        * WebCore.exp.in: Exported WebCore::ScrollView::contentsToRootView(), used by InjectedBundleHitTestResult.cpp.
        
        * platform/ScrollView.cpp:
        (WebCore::ScrollView::rootViewToContents): Added (both point and rect versions).
        (WebCore::ScrollView::contentsToRootView): Ditto.
        
        * platform/ScrollView.h: Added member functions to convert to/from root view coordinates.
        
        * platform/Widget.cpp:
        (WebCore::Widget::convertFromRootView): Added (both point and rect versions).
        (WebCore::Widget::convertToRootView): Ditto.
        
        * platform/Widget.h: Added member functions to convert to/from root view coordinates.

2011-10-14  Andreas Kling  <kling@webkit.org>

        CSSParser: Remove StyleBase usage.
        https://bugs.webkit.org/show_bug.cgi?id=70150

        Reviewed by Darin Adler.

        Split CSSParser::m_parsedStyleObjects into two vectors of
        CSSRules and MediaLists.

        * css/CSSParser.cpp:
        (WebCore::CSSParser::createMediaList):
        (WebCore::CSSParser::createCharsetRule):
        (WebCore::CSSParser::createImportRule):
        (WebCore::CSSParser::createMediaRule):
        (WebCore::CSSParser::createKeyframesRule):
        (WebCore::CSSParser::createStyleRule):
        (WebCore::CSSParser::createFontFaceRule):
        (WebCore::CSSParser::createPageRule):
        (WebCore::CSSParser::createKeyframeRule):
        * css/CSSParser.h:

2011-10-14  Adam Barth  <abarth@webkit.org>

        canvas getImageData should explain why it throws SECURITY_ERR
        https://bugs.webkit.org/show_bug.cgi?id=70088

        Reviewed by Darin Adler.

        Log as message to the console when getImageData fails because the
        canvas is tainted.

        * html/canvas/CanvasRenderingContext2D.cpp:
        (WebCore::CanvasRenderingContext2D::getImageData):

2011-10-14  Andreas Kling  <kling@webkit.org>

        Inspector: Remove StyleBase usage.
        https://bugs.webkit.org/show_bug.cgi?id=70138

        Reviewed by Antti Koivisto.

        Be fully specific about whether we're operating on a CSSRule or
        a CSSStyleSheet.

        No behavior change expected, this merely is a cleanup.

        * inspector/InspectorCSSAgent.cpp:
        (WebCore::InspectorCSSAgent::parentStyleSheet):
        (WebCore::InspectorCSSAgent::asCSSStyleRule):
        * inspector/InspectorCSSAgent.h:
        * inspector/InspectorStyleSheet.cpp:
        (WebCore::asCSSRuleList):

2011-10-14  Mark Hahnenberg  <mhahnenberg@apple.com>

        Rename virtual deleteProperty to deletePropertyVirtual
        https://bugs.webkit.org/show_bug.cgi?id=69884

        Reviewed by Darin Adler.

        No new tests.

        Renamed virtual versions of deleteProperty to deletePropertyVirtual in prepration for 
        adding the static deleteProperty to the MethodTable in ClassInfo since the 
        compiler gets mad if the virtual and static versions have the same name.

        * WebCore.exp.in:
        * bindings/js/JSDOMStringMapCustom.cpp:
        (WebCore::JSDOMStringMap::deletePropertyVirtual):
        * bindings/js/JSDOMWindowCustom.cpp:
        (WebCore::JSDOMWindow::deletePropertyVirtual):
        * bindings/js/JSDOMWindowShell.cpp:
        (WebCore::JSDOMWindowShell::deletePropertyVirtual):
        * bindings/js/JSDOMWindowShell.h:
        * bindings/js/JSHistoryCustom.cpp:
        (WebCore::JSHistory::deletePropertyVirtual):
        * bindings/js/JSLocationCustom.cpp:
        (WebCore::JSLocation::deletePropertyVirtual):
        * bindings/js/JSStorageCustom.cpp:
        (WebCore::JSStorage::deletePropertyVirtual):
        * bindings/js/ScriptObject.cpp:
        (WebCore::ScriptGlobalObject::remove):
        * bindings/objc/WebScriptObject.mm:
        (-[WebScriptObject removeWebScriptKey:]):
        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateHeader):
        * bridge/NP_jsobject.cpp:
        (_NPN_RemoveProperty):
        * bridge/jni/jni_jsobject.mm:
        (JavaJSObject::removeMember):
        * bridge/objc/objc_runtime.h:
        * bridge/objc/objc_runtime.mm:
        (JSC::Bindings::ObjcFallbackObjectImp::deletePropertyVirtual):
        * bridge/runtime_array.cpp:
        (JSC::RuntimeArray::deletePropertyVirtual):
        * bridge/runtime_array.h:
        * bridge/runtime_object.cpp:
        (JSC::Bindings::RuntimeObject::deletePropertyVirtual):
        * bridge/runtime_object.h:

2011-10-14  Simon Fraser  <simon.fraser@apple.com>

        Web Inspector: WebProcess crashes hard when inspecting elements with border-images applied
        https://bugs.webkit.org/show_bug.cgi?id=70105

        Reviewed by Dave Hyatt.
        
        Fix three different crashes related to getting computed style for border-image.
        In both valueForNinePieceImageSlice() and valueForNinePieceImageQuad(),
        assign 'right' to 'left' because we've computed a value for 'right' already.
        Otherwise this would leave 'right' as null, causing later crashes in cssText().
        
        In mapNinePieceImage(), borderImage->imageValue() can be null for a border-image
        shorthand that is missing the image value.

        Test: fast/css/getComputedStyle/computed-style-border-image.html

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::valueForNinePieceImageSlice):
        (WebCore::valueForNinePieceImageQuad):
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::mapNinePieceImage):

2011-10-14  Ryosuke Niwa  <rniwa@webkit.org>

        Mac build fix after r97497.

        * editing/markup.cpp:
        (WebCore::isNonTableCellHTMLBlockElement):

2011-10-14  Daniel Cheng  <dcheng@chromium.org>

        Context-aware HTML paste for Chromium
        https://bugs.webkit.org/show_bug.cgi?id=62112

        Reviewed by Ryosuke Niwa.

        Add createFragmentFromMarkupWithContext which understands enough about DOM structure to
        retain necessary elements to preserve structure and appearance when extracting a subset of
        a DOM tree.

        Covered by existing layout tests.

        * editing/MarkupAccumulator.h:
        * editing/markup.cpp:
        (WebCore::isNonTableCellHTMLBlockElement):
        (WebCore::isHTMLBlockElement):
        (WebCore::ancestorToRetainStructureAndAppearanceForBlock):
        (WebCore::ancestorToRetainStructureAndAppearance):
        (WebCore::ancestorToRetainStructureAndAppearanceWithNoRenderer):
        (WebCore::findNodesSurroundingContext):
        (WebCore::trimFragment):
        (WebCore::createFragmentFromMarkupWithContext):
        * editing/markup.h:
        * platform/chromium/ChromiumDataObject.cpp:
        (WebCore::ChromiumDataObject::getData):
        * platform/chromium/DataTransferItemChromium.cpp:
        (WebCore::DataTransferItemChromium::getAsString):
        * platform/chromium/PasteboardChromium.cpp:
        (WebCore::Pasteboard::documentFragment):
        * platform/chromium/PlatformSupport.h:

2011-10-14  Peter Beverloo  <peter@chromium.org>

        [Chromium] Inherit settings from Chromium's envsetup.sh, address a NDK todo
        https://bugs.webkit.org/show_bug.cgi?id=70028

        Reviewed by Adam Barth.

        * WebCore.gyp/WebCore.gyp:

2011-10-14  Nate Chapin  <japhet@chromium.org>

        Check CachedResourceClient types with ASSERTs rather
        than if statements.
        https://bugs.webkit.org/show_bug.cgi?id=70113

        Reviewed by Adam Barth.

        No new tests, no functionality change.

        * loader/cache/CachedCSSStyleSheet.cpp:
        * loader/cache/CachedFont.cpp:
        * loader/cache/CachedImage.cpp:
        * loader/cache/CachedResourceClientWalker.h:
        * loader/cache/CachedXSLStyleSheet.cpp:

2011-10-14  Andreas Kling  <kling@webkit.org>

        Don't assert that CSSRules are CSSRules.

        Rubber-stamped by Antti Koivisto.

        * css/CSSRule.h:
        (WebCore::CSSRule::isRule):
        * css/CSSStyleSheet.cpp:
        (WebCore::CSSStyleSheet::append):
        (WebCore::CSSStyleSheet::insert):

2011-10-14  Beth Dakin  <bdakin@apple.com>

        Attempted Leopard build fix.

        * platform/graphics/GraphicsContext.cpp:
        (WebCore::GraphicsContext::createCompatibleBuffer):

2011-10-14  Andreas Kling  <kling@webkit.org>

        CSSStyleSheet should only ever contain CSSRules.
        https://bugs.webkit.org/show_bug.cgi?id=70116

        Reviewed by Antti Koivisto.

        Move child management from the StyleSheet class down into
        CSSStyleSheet and XSLStyleSheet. XSLStyleSheet continues to
        manage StyleBase objects, while CSSStyleSheet now only contains
        CSSRule.

        This is enforced at both compile time and runtime with explicit
        types and assertions.

        * css/CSSRule.h:
        (WebCore::CSSRule::isRule):

            Promoted to a public method so we can use it in assertions.

        * css/CSSRuleList.h:
        (WebCore::CSSRuleList::create):
        (WebCore::CSSRuleList::styleSheet):
        * css/CSSRuleList.cpp:
        (WebCore::CSSRuleList::CSSRuleList):
        * bindings/js/JSCSSRuleListCustom.cpp:
        (WebCore::JSCSSRuleListOwner::isReachableFromOpaqueRoots):

            Change backing to a CSSStyleSheet instead of a StyleSheet.

        * css/CSSRuleList.cpp:
        (WebCore::CSSRuleList::item):

            Remove redundant assertions.

        * css/CSSStyleSheet.cpp:
        (WebCore::CSSStyleSheet::isLoading):
        (WebCore::CSSStyleSheet::addSubresourceStyleURLs):
        * css/CSSStyleSelector.cpp:
        (WebCore::RuleSet::addRulesFromSheet):
        * inspector/InspectorCSSAgent.cpp:
        (WebCore::InspectorCSSAgent::collectStyleSheets):
        * page/PageSerializer.cpp:
        (WebCore::PageSerializer::serializeCSSStyleSheet):

            Use more specific CSSRule* since that's what we get from
            CSSStyleSheet::item() now.

        * css/StyleSheet.cpp:
        (WebCore::StyleSheet::~StyleSheet):
        * css/CSSStyleSheet.cpp:
        (WebCore::CSSStyleSheet::~CSSStyleSheet):
        * xml/XSLStyleSheetLibxslt.cpp:
        (WebCore::XSLStyleSheet::~XSLStyleSheet):
        * xml/XSLStyleSheetQt.cpp:
        (WebCore::XSLStyleSheet::~XSLStyleSheet):

            Orphaning logic from ~StyleSheet() moved to subclass dtors.

        * css/StyleSheet.h:
        * css/CSSStyleSheet.h:
        (WebCore::CSSStyleSheet::length):
        (WebCore::CSSStyleSheet::item):
        * css/CSSStyleSheet.cpp:
        (WebCore::CSSStyleSheet::append):
        (WebCore::CSSStyleSheet::insert):
        (WebCore::CSSStyleSheet::remove):

            Moved from StyleSheet and changed to only accept CSSRules.

        * css/StyleSheet.h:
        * xml/XSLStyleSheet.h:
        (WebCore::XSLStyleSheet::length):
        (WebCore::XSLStyleSheet::item):
        (WebCore::XSLStyleSheet::append):
        (WebCore::XSLStyleSheet::insert):
        (WebCore::XSLStyleSheet::remove):

            Moved from StyleSheet though still uses StyleBase.

2011-10-14 Yuji Sanachan <sanachan.y@gmail.com>

        Include dom/ExceptionCode.h instead of Filesystem APIs headers
        to fix compile error when ENABLE_WORKERS=1 and ENABLE_FILE_SYSTEM=0
        https://bugs.webkit.org/show_bug.cgi?id=70036

        Reviewed by Darin Adler.

        * workers/WorkerContext.cpp:
        (WebCore::WorkerContext::importScript):

2011-10-14  Darin Adler  <darin@apple.com>

        Text drawn via -webkit-background-clip:text should be non-blurry with all scaling 
        techniques
        https://bugs.webkit.org/show_bug.cgi?id=68641

        Reviewed by Simon Fraser. Committed by Beth Dakin.

        * platform/graphics/GraphicsContext.cpp:
        (WebCore::GraphicsContext::createCompatibleBuffer): Allocate a buffer based on the 
        scale
        factor of the context.
        * platform/graphics/GraphicsContext.h: Added createCompatibleBuffer.

        * rendering/RenderBoxModelObject.cpp:
        (WebCore::RenderBoxModelObject::paintFillLayerExtended): Use 
        createCompatibleBuffer.

2011-10-14  Ryosuke Niwa  <rniwa@webkit.org>

        Move selectionStartStyle and selectionHasStyle to EditingStyle
        https://bugs.webkit.org/show_bug.cgi?id=69882

        Reviewed by Enrica Casucci.

        Moved selectionHasStyle and selectionStartStyle from Editor to EditingStyle.
        Also moved much of code in Editor::selectionStartCSSPropertyValue to method of EditingStyle.

        In addition, moved Range::editingStartPosition to htmlediting where it belongs
        and renamed it to adjustedSelectionStartForStyleComputation.

        * dom/Range.cpp:
        * dom/Range.h:
        * editing/EditingStyle.cpp:
        (WebCore::EditingStyle::triStateOfStyle): Extracted from selectionHasStyle.
        (WebCore::EditingStyle::legacyFontSize): Extracted from selectionStartCSSPropertyValue.
        (WebCore::EditingStyle::styleAtSelectionStart): Moved from Editor::selectionStartStyle.
        * editing/EditingStyle.h:
        * editing/Editor.cpp:
        (WebCore::Editor::fontForSelection):
        (WebCore::Editor::selectionStartHasStyle):
        (WebCore::Editor::selectionHasStyle):
        (WebCore::Editor::selectionStartCSSPropertyValue):
        * editing/Editor.h:
        * editing/EditorCommand.cpp:
        (WebCore::executeToggleStyleInList):
        * editing/htmlediting.cpp:
        (WebCore::adjustedSelectionStartForStyleComputation): Moved from Range::editingStartPosition.
        * editing/htmlediting.h:

2011-10-14  Ryosuke Niwa  <rniwa@webkit.org>

        Redundant comparison in AccessibilityObject.cpp updateAXLineStartForVisiblePosition
        https://bugs.webkit.org/show_bug.cgi?id=70074

        Reviewed by Chris Fleizach.

        Removed redundant code.

        * accessibility/AccessibilityObject.cpp:
        (WebCore::updateAXLineStartForVisiblePosition):

2011-10-12  Ryosuke Niwa  <rniwa@webkit.org>

        Make the interface of locationAndLengthFromRange and rangeFromLocationAndLength consistent
        https://bugs.webkit.org/show_bug.cgi?id=69964

        Reviewed by Enrica Casucci.

        Extracted the logic to determine the scope element as FrameSelection::rootEditableElementOrDocumentElement
        and deployed it in WebKit layer. Made locationAndLengthFromRange take a scope element and renamed it to
        getLocationAndLengthFromRange.

        * WebCore.exp.in:
        * editing/FrameSelection.cpp:
        (WebCore::FrameSelection::rootEditableElementOrDocumentElement):
        * editing/FrameSelection.h:
        * editing/TextIterator.cpp:
        (WebCore::TextIterator::getLocationAndLengthFromRange):
        * editing/TextIterator.h:

2011-10-13  Arko Saha  <arko@motorola.com>

        Microdata: Basic implementation of document.getItems() method.
        https://bugs.webkit.org/show_bug.cgi?id=68610

        Reviewed by Ryosuke Niwa.

        Added ENABLE(MICRODATA) feature flag. Implement document.getItems() DOM API.
        Spec: http://www.whatwg.org/specs/web-apps/current-work/complete/microdata.html

        Tests: fast/dom/MicroData/001.html
               fast/dom/MicroData/002.html
               fast/dom/MicroData/003.html
               fast/dom/MicroData/004.html
               fast/dom/MicroData/005.html
               fast/dom/MicroData/006.html
               fast/dom/MicroData/007.html
               fast/dom/MicroData/008.html
               fast/dom/MicroData/009.html

        * CMakeLists.txt:
        * DerivedSources.make:
        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * dom/Document.cpp:
        (WebCore::Document::getItems): Returns NodeList of the element in the Document that
        create items, that are not part of other items, and that are of one of the types
        given in the argument. If no tokens specified/undefined in the argument, then
        return a NodeList containing all top level microdata items.
        (WebCore::Document::removeCachedMicroDataItemList): Remove Microdata item node list
        from cache.
        * dom/Document.h:
        * dom/Document.idl: Added getItems() microdata DOM API.
        * dom/MicroDataItemList.cpp: Added.
        (WebCore::MicroDataItemList::MicroDataItemList):
        (WebCore::MicroDataItemList::~MicroDataItemList):
        (WebCore::MicroDataItemList::nodeMatches):
        * dom/MicroDataItemList.h: Added.
        (WebCore::MicroDataItemList::create):
        * dom/Node.cpp:
        (WebCore::Node::itemTypeAttributeChanged): It is responsible to invalidate the Microdata
        item node cache when itemType attribute changes.
        (WebCore::NodeListsNodeData::invalidateCachesThatDependOnAttributes):
        (WebCore::NodeListsNodeData::invalidateMicrodataItemListCaches): Invalidate Microdata item
        list cache.
        (WebCore::NodeListsNodeData::isEmpty):
        * dom/Node.h:
        * dom/NodeRareData.h:
        * features.pri:
        * html/HTMLAttributeNames.in: Added itemid, itemprop, itemscope, itemtype attributes.
        * html/HTMLElement.cpp:
        (WebCore::HTMLElement::parseMappedAttribute): Handle itemtype attribute change.
        * html/HTMLElement.idl: Added itemid, itemprop, itemscope, itemtypes microdata attributes.

2011-10-14  Andreas Kling  <kling@webkit.org>

        Stricter management of WebKitCSSKeyframeRules.
        https://bugs.webkit.org/show_bug.cgi?id=70109

        Reviewed by Antti Koivisto.

        Covered by existing tests.

        * css/CSSParser.h:
        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseKeyframeRule):

            Return a WebKitCSSKeyframeRule instead of a CSSRule.

        * css/CSSRuleList.cpp:
        (WebCore::CSSRuleList::deleteRule):
        * css/WebKitCSSKeyframesRule.cpp:
        (WebCore::WebKitCSSKeyframesRule::deleteRule):

            Moved style sheet orphaning logic for @-webkit-keyframe
            from CSSRuleList into WebKitCSSKeyframesRule::deleteRule()
            since that's the only caller operating on those rules.

        * css/WebKitCSSKeyframesRule.cpp:
        (WebCore::WebKitCSSKeyframesRule::~WebKitCSSKeyframesRule):
        (WebCore::WebKitCSSKeyframesRule::length):
        (WebCore::WebKitCSSKeyframesRule::item):
        (WebCore::WebKitCSSKeyframesRule::insertRule):

            Change isKeyframeRule() checks to assertions since we know
            our rules are always WebKitCSSKeyframeRules. Also tidied up.

2011-10-14  Andreas Kling  <kling@webkit.org>

        Unreviewed, actually remove StyleList.* after r97640.

        * css/StyleList.cpp: Removed.
        * css/StyleList.h: Removed.

2011-10-14  Andreas Kling  <kling@webkit.org>

        Merge StyleList into StyleSheet.
        https://bugs.webkit.org/show_bug.cgi?id=70100

        Reviewed by Antti "printf" Koivisto.

        Merge all functionality from StyleList into StyleSheet,
        since StyleSheet was the only subclass of StyleList anyway.

        Also removed FIXME's about throwing exceptions in CSSRuleList
        since they were incorrect. The call sites already handle the
        relevant cases.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/JSCSSRuleListCustom.cpp:
        (WebCore::JSCSSRuleListOwner::isReachableFromOpaqueRoots):
        * css/CSSRuleList.cpp:
        (WebCore::CSSRuleList::CSSRuleList):
        (WebCore::CSSRuleList::length):
        (WebCore::CSSRuleList::item):
        (WebCore::CSSRuleList::deleteRule):
        (WebCore::CSSRuleList::append):
        (WebCore::CSSRuleList::insertRule):
        * css/CSSRuleList.h:
        (WebCore::CSSRuleList::create):
        (WebCore::CSSRuleList::styleSheet):
        * css/StyleList.cpp: Removed.
        * css/StyleList.h: Removed.
        * css/StyleSheet.cpp:
        (WebCore::StyleSheet::StyleSheet):
        (WebCore::StyleSheet::append):
        (WebCore::StyleSheet::insert):
        (WebCore::StyleSheet::remove):
        * css/StyleSheet.h:
        (WebCore::StyleSheet::length):
        (WebCore::StyleSheet::item):

2011-10-14  Mihnea Ovidenie  <mihnea@adobe.com>

        [CSS Regions] Change -webkit-flow to -webkit-flow-into
        https://bugs.webkit.org/show_bug.cgi?id=70014

        Reviewed by David Hyatt.

        1. -webkit-flow is renamed to -webkit-flow-into
        2. -webkit-flow-into takes <ident> instead of strings

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseValue):
        (WebCore::validFlowName):
        (WebCore::CSSParser::parseFlowThread):
        * css/CSSPropertyNames.in:
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):

2011-10-12  Hans Wennborg  <hans@chromium.org>

        IndexedDB: Remove SQLite backing store
        https://bugs.webkit.org/show_bug.cgi?id=69620

        Reviewed by Darin Fisher.

        Remove the SQLite backing store implementation; it is not used anymore.
        Also remove the maximumSize parameter, it is not used either.

        No new functionality, so no new tests.

        * GNUmakefile.list.am:
        * WebCore.gypi:
        * storage/IDBBackingStore.h:
        * storage/IDBFactory.cpp:
        (WebCore::IDBFactory::getDatabaseNames):
        (WebCore::IDBFactory::open):
        * storage/IDBFactoryBackendImpl.cpp:
        (WebCore::computeFileIdentifier):
        (WebCore::computeUniqueIdentifier):
        (WebCore::IDBFactoryBackendImpl::getDatabaseNames):
        (WebCore::IDBFactoryBackendImpl::open):
        (WebCore::IDBFactoryBackendImpl::openBackingStore):
        * storage/IDBFactoryBackendImpl.h:
        * storage/IDBFactoryBackendInterface.h:
        * storage/IDBLevelDBBackingStore.cpp:
        (WebCore::IDBLevelDBBackingStore::open):
        * storage/IDBLevelDBBackingStore.h:
        * storage/IDBSQLiteBackingStore.cpp: Removed.
        * storage/IDBSQLiteBackingStore.h: Removed.

2011-10-14  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix mac builds. r97448 broke them.

        * WebCore.xcodeproj/project.pbxproj: Set ImageBySizeCache.h role to private.

2011-10-14  Justin Schuh  <jschuh@chromium.org>

        Clear WebMediaPlayerClientImpl back pointer on destruction
        https://bugs.webkit.org/show_bug.cgi?id=69973

        Reviewed by James Robinson.

        Clear the backpointer and remove the unused m_currentFrame

        * platform/graphics/chromium/VideoLayerChromium.cpp:
        (WebCore::VideoLayerChromium::VideoLayerChromium):
        (WebCore::VideoLayerChromium::cleanupResources):
        (WebCore::VideoLayerChromium::updateCompositorResources):
        (WebCore::VideoLayerChromium::releaseProvider):
        * platform/graphics/chromium/VideoLayerChromium.h:

2011-10-13  Hans Wennborg  <hans@chromium.org>

        IndexedDB: Make IDBCursor.value() return an IDBAny object
        https://bugs.webkit.org/show_bug.cgi?id=70024

        Reviewed by Tony Chang.

        This is to work around the fact that the V8 bindings mechanism does
        eager deserialization of SerializedScriptValue attributes. This means
        that the value is fetched from the back-end only once, when the
        IDBCursor is first wrapped. When the cursor's value changes, this is
        not reflected.

        We work around this by making IDBCursor.value() return the
        SerializedScriptValue wrapped in an IDBAny object.

        * storage/IDBCursor.cpp:
        (WebCore::IDBCursor::value):
        * storage/IDBCursor.h:
        * storage/IDBCursorWithValue.idl:

2011-10-14  Rémi Duraffort  <remi.duraffort@st.com>

        Fix compilation when the JS Debugger is disabled.
        https://bugs.webkit.org/show_bug.cgi?id=70007

        Reviewed by Antti Koivisto.

        * inspector/InspectorInstrumentation.cpp:
        (WebCore::InspectorInstrumentation::willEvaluateWorkerScript):
        * inspector/InspectorRuntimeAgent.cpp:
        * inspector/InspectorRuntimeAgent.h:
        * inspector/WorkerInspectorController.cpp:
        * inspector/WorkerInspectorController.h:
        * workers/WorkerMessagingProxy.cpp:
        (WebCore::WorkerMessagingProxy::disconnectFromInspector):
        (WebCore::WorkerMessagingProxy::sendMessageToInspector):

2011-10-13  Nikolas Zimmermann  <nzimmermann@rim.com>

        Prepare SVGImage intrinsic size negotiation: Introduce an IntSize <-> SVGImage cache in CachedImage
        https://bugs.webkit.org/show_bug.cgi?id=69416

        Reviewed by Antti Koivisto.

        Refactor ImageBySizeCache out of CSSImageGeneratorValue as CachedImage wants to use the same type of cache for its purposes.
        When introducing the SVGImage intrinsic size negotiation the container size of an SVGImage is dependant on the place where
        it gets embedded (eg width/height attributes of host documents <img> force a certain size).

        Currently CachedImage only contains a single RefPtr<Image>, which it constructs out of the decoded data.
        Multiple RenderObjects share the same CachedImages, when embedding eg. a SVG document in a <html:img> or using it in a background-image for a <div>.
        Consider the case where two RenderObjects use the same CachedImage, each with a different container size (200x100 vs 100x200) and the embedded
        document contains a viewBox and some arbitary preserveAspectRatio settings. To honour these we have to relayout the document with the desired
        size (percentual unit resolving etc, all depend on the RenderSVGRoots size).

        With the current design this is hard to realize, w/o requring to relayout the embedded document for each embedder that uses an SVGImage.
        This patch introduces a cache right within CachedImage, which manages a map of images to certain sizes, by utilizing the new ImageBySizeCache.

        CachedImage::imageForRenderer() takes a RenderObject* parameter, which it uses to look up the last set image container size for a renderer.
        Using that size it queries the cache whether it already has an SVGImage for that size, if not it gets created, by creating a whole
        new instance of SVGImage, filling it with the already decoded data, and passing on a fixed image container size, which overrides the
        size that RenderSVGRoot reports, when computeReplacedLogicalWidth/Height is called and thus laying out the document at the desired size.
        This image is then put in the cache for further reusability.

        Likewise CachedImage::setContainerSizeForRenderer() now takes a RenderObject* parameter and stores that in the cache with an associated container size.
        It requires to touch several files which use CachedImage throughout WebCore/WebKit/WebKit2.

        The actual cache is not yet turned on yet, so this is not a functional change so far, as it needs some other changes to SVGImage,
        which will come with the master patch in bug 47156.

        No new tests yet, as the new cache isn't turned on yet.

        * CMakeLists.txt: Add rendering/ImageBySizeCache.* to build.
        * GNUmakefile.list.am: Ditto.
        * WebCore.gypi: Ditto.
        * WebCore.pro: Ditto.
        * WebCore.vcproj/WebCore.vcproj: Ditto.
        * WebCore.xcodeproj/project.pbxproj: Ditto.
        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): Use new CachedImage::imageSizeForRenderer(RenderObject*) method.
        * bindings/objc/DOM.mm: Ditto (for CachedImage::image()).
        (-[DOMElement image]):
        (-[DOMElement _imageTIFFRepresentation]):
        * bridge/qt/qt_pixmapruntime.cpp:
        (JSC::Bindings::QtPixmapInstance::variantFromObject): Ditto (for CachedImage::image()).
        * css/CSSCanvasValue.cpp: s/m_clients/clients()/, which now live in the ImageBySizeCache instead of CSSImageGeneratorValue.
        (WebCore::CSSCanvasValue::canvasChanged):
        (WebCore::CSSCanvasValue::canvasResized):
        (WebCore::CSSCanvasValue::image):
        * css/CSSGradientValue.cpp: Ditto.
        (WebCore::CSSGradientValue::image):
        * css/CSSImageGeneratorValue.cpp: Move the sizes/clients/images cache into a new ImageBySizeCache class, to make it usable for CachedImage as well.
        (WebCore::CSSImageGeneratorValue::addClient): Adapt to move.
        (WebCore::CSSImageGeneratorValue::removeClient): Ditto.
        (WebCore::CSSImageGeneratorValue::getImage): Ditto.
        (WebCore::CSSImageGeneratorValue::putImage): Ditto.
        * css/CSSImageGeneratorValue.h:
        (WebCore::CSSImageGeneratorValue::clients): Forwarded to the ImageBySizeCache.
        * editing/DeleteButtonController.cpp: 
        (WebCore::isDeletableElement): CachedImage::canRender() now takes a RenderObject* parameter.
        * html/HTMLImageElement.cpp:
        (WebCore::HTMLImageElement::width): Use new CachedImage::imageSizeForRenderer(RenderObject*) method.
        (WebCore::HTMLImageElement::height): Ditto.
        (WebCore::HTMLImageElement::naturalWidth): Ditto.
        (WebCore::HTMLImageElement::naturalHeight): Ditto.
        * html/ImageDocument.cpp:
        (WebCore::ImageDocumentParser::finish): Ditto.
        (WebCore::ImageDocument::scale): Ditto.
        (WebCore::ImageDocument::resizeImageToFit): Ditto.
        (WebCore::ImageDocument::imageUpdated): Ditto.
        (WebCore::ImageDocument::restoreImageSize): Ditto.
        (WebCore::ImageDocument::imageFitsInWindow): Ditto.
        * html/canvas/CanvasRenderingContext.cpp:
        (WebCore::CanvasRenderingContext::wouldTaintOrigin): Use new CachedImage::imageForRenderer(RenderObject*) method.
        * html/canvas/CanvasRenderingContext2D.cpp:
        (WebCore::isOriginClean): Ditto.
        (WebCore::size): Ditto (for CachedImage::imageSizeForRenderer()).
        (WebCore::CanvasRenderingContext2D::drawImage): Ditto.
        (WebCore::CanvasRenderingContext2D::createPattern): Ditto.
        * html/canvas/WebGLRenderingContext.cpp:
        (WebCore::WebGLRenderingContext::texImage2D): Ditto.
        (WebCore::WebGLRenderingContext::texSubImage2D): Ditto.
        * loader/cache/CachedImage.cpp: Add currently _disabled_ cache for SVGImages. The intrinsic size negotiation will need to use multiple SVGImages
        for each requested size (equal to the size of the embedding place for the image) - make it possible to cache these SVGImages, and maintain a cache
        for them. The hash code is a 1:1 refactoring from the already present code in CSSImageGeneratorValue, now named 'ImageBySizeCache'.
        (WebCore::CachedImage::lookupImageForSize): Looks up an Image from the cache for a given IntSize. Currently turned off.
        (WebCore::CachedImage::lookupImageForRenderer): Looks up an Image from the cache for a given renderer. Currently turned off.
        (WebCore::CachedImage::lookupOrCreateImageForRenderer): Looks up an Image from the cache or creates a new SVGImage for a given size and caches it, if possible. Currently turned off.
        All following changes share this: Don't operate on m_image directly, instead always look up one from the cache for a given size or renderer - if that's not present fallback to m_image.
        When an SVGImage is first created by CachedImage::createImage() and stored in m_image, the cache remains empty.

        If eg. <img width="30" height="70" src="foo.svg"> is used which implies a container size of 30x70 a new SVGImage is created with the additional information of a 30x70 container size
        which is immediately passed to the SVGImage after its creation. This SVGImage is put in the ImageBySizeCache associated with a container size of 30x70.
        We now have two SVGImage objects present, one living in CachedImage::m_image, created by createImage() during data decoding, and one living in the ImageBySizeCache
        created by lookupOrCreateImageForRenderer() associated with the 30x70 container. The first SVGImage::size() will return a value as defined in the referenced foo.svg,
        whereas the SVGImage::size() call of the new SVGImage living in the cache reports 30x70 and renders according to that.

        Whenever any method of CachedImage is called with a RenderObject* or IntSize, we can't just operate on m_image anymore but instead have to lookup the right
        images for a certain renderer/size from the cache and operate on these. When calling eg. CachedImage::image() with a null renderer, m_image is returned.
        When passing with a valid renderer only cache lookups are done if the m_image is actually a SVGImage, otherwhise lookupImageForSize/Renderer will just return the m_image.
        There is no logical change induced for non-SVGImage derived images.

        CachedImage::image() of course needs a RenderObject* parameter now, to identify which of the images from the cache to use, if the underlying image is a SVGImage.
        Luckily these information are already present in StyleCachedImage/StyleImage & friends and only need to be added for some additional methods.
        (WebCore::CachedImage::image): FIXME
        (WebCore::CachedImage::imageForRenderer): Call lookupOrCreateImageForRenderer() instead of returning m_image, if it's not null. Its a no-op for non SVGImage derived objects.
        (WebCore::CachedImage::setContainerSizeForRenderer): For non-SVGImages, just pass on the size to the m_image. For SVGImages, associate the passed in renderer with the IntSize in the cache.
                                                             This does NOT create the SVGImage yet, this is delayed until imageForRenderer() is called for a given renderer that wants this size.
        (WebCore::CachedImage::imageSize): Don't operate on m_image, ask lookupImageForRenderer() with the incoming renderer.
        (WebCore::CachedImage::imageRect): Ditto.
        (WebCore::CachedImage::clear): Force clearing the m_svgImageCache.
        (WebCore::CachedImage::data): Call m_image->size() instead of imageSize(), to avoid having to pass a null renderer to imageSize() as here no renderer is available yet.
        (WebCore::CachedImage::destroyDecodedData): Don't destroy decoded data for SVG images, as m_data needs to be accessable at any time to construct a cloned SVGImage.
                                                    In future we don't need this anymore if we make sure multiple SVGImages share the same trees, but that's for a follow-up patch.
        (WebCore::CachedImage::decodedSizeChanged): Don't operate on m_image, ask lookupImageForRenderer() with the incoming renderer.
        (WebCore::CachedImage::didDraw): Ditto.
        (WebCore::CachedImage::shouldPauseAnimation): Ditto.
        (WebCore::CachedImage::animationAdvanced): Ditto.
        (WebCore::CachedImage::changedInRect): Ditto. (eg. when leaving out this change animated SVG images wouldn't update anymore, as the animation didn't happen on m_image!)
        * loader/cache/CachedImage.h: imageForRenderer/canRender/setContainerSizeForRenderer/imageSizeForRenderer now all take a RenderObject* parameter to identifiy the current user of the image.
        (WebCore::CachedImage::canRender): Pass on the incoming renderer to imageSizeForRenderer().
        * page/DragController.cpp:
        (WebCore::getImage): Use new CachedImage::imageForRenderer(RenderObject*) method.
        * page/EventHandler.cpp:
        (WebCore::EventHandler::selectCursor): Ditto.
        * page/PageSerializer.cpp:
        (WebCore::PageSerializer::serializeFrame): Ditto.
        (WebCore::PageSerializer::addImageToResources): Ditto.
        (WebCore::PageSerializer::retrieveResourcesForCSSDeclaration): Ditto.
        * page/PageSerializer.h:
        * platform/chromium/ClipboardChromium.cpp:
        (WebCore::writeImageToDataObject): Ditto.
        * platform/chromium/PasteboardChromium.cpp:
        (WebCore::Pasteboard::writeImage): Ditto.
        * platform/graphics/Image.h:
        (WebCore::Image::isSVGImage): Add boolean helper to identify SVGImages, just like isBitmapImage().
        * platform/gtk/ClipboardGtk.cpp:
        (WebCore::ClipboardGtk::declareAndWriteDragImage): Use new CachedImage::imageForRenderer(RenderObject*) method.
        * platform/gtk/PasteboardGtk.cpp:
        (WebCore::Pasteboard::writeImage): Ditto.
        * platform/mac/HTMLConverter.mm:
        (fileWrapperForElement): Ditto.
        * platform/mac/PasteboardMac.mm:
        (WebCore::Pasteboard::writeImage): Ditto.
        * platform/qt/ClipboardQt.cpp:
        (WebCore::ClipboardQt::declareAndWriteDragImage): Ditto.
        * platform/qt/PasteboardQt.cpp:
        (WebCore::Pasteboard::writeImage): Ditto.
        * platform/win/ClipboardWin.cpp:
        (WebCore::writeImageToDataObject): Ditto.
        * platform/win/PasteboardWin.cpp:
        (WebCore::Pasteboard::writeImage): Ditto.
        * platform/wince/PasteboardWinCE.cpp:
        (WebCore::Pasteboard::writeImage): Ditto.
        * rendering/HitTestResult.cpp:
        (WebCore::HitTestResult::image): Ditto.
        * rendering/ImageBySizeCache.cpp: Copied from WebCore/css/CSSImageGeneratorValue.cpp, to preserve history for the original cache code.
        (WebCore::ImageBySizeCache::ImageBySizeCache): Straight copy from CSSImageGeneratorValue, renamed to ImageBySizeCache, removing all but the cache relevant code.
        (WebCore::ImageBySizeCache::addClient): Ditto.
        (WebCore::ImageBySizeCache::removeClient): Ditto.
        (WebCore::ImageBySizeCache::getImage): Ditto.
        (WebCore::ImageBySizeCache::putImage): Ditto.
        (WebCore::ImageBySizeCache::clear): New function, that clears the cache, introduced for the needs of CachedImage.
        (WebCore::ImageBySizeCache::imageForSize): New function to query an Image* for a given IntSize, introduced for the needs of CachedImage.
        (WebCore::ImageBySizeCache::sizeForClient): New function to query an IntSize for a given renderer.
        * rendering/ImageBySizeCache.h: Copied from WebCore/css/CSSImageGeneratorValue.h.
        (WebCore::ImageBySizeCache::clients):
        * rendering/InlineFlowBox.cpp:
        (WebCore::InlineFlowBox::paintFillLayer): CachedImage::canRender() now takes a RenderObject* parameter.
        (WebCore::InlineFlowBox::paintBoxDecorations): Ditto.
        (WebCore::InlineFlowBox::paintMask): Ditto.
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::paintMaskImages): Ditto.
        (WebCore::RenderBox::repaintLayerRectsForImage): Ditto.
        * rendering/RenderBoxModelObject.cpp:
        (WebCore::RenderBoxModelObject::paintFillLayerExtended): Ditto.
        (WebCore::RenderBoxModelObject::calculateFillTileSize): Ditto (for CachedImage::setContainerSizeForRenderer()).
        (WebCore::RenderBoxModelObject::paintNinePieceImage): Ditto.
        * rendering/RenderImage.cpp:
        (WebCore::RenderImage::imageSizeForError): Use new CachedImage::imageForRenderer(RenderObject*) method.
        (WebCore::RenderImage::setImageSizeForAltText): Ditto.
        (WebCore::RenderImage::computeReplacedLogicalWidth): FIXME
        * rendering/RenderImageResource.cpp:
        (WebCore::RenderImageResource::setContainerSizeForRenderer): Pass on m_renderer to CachedImage::setContainerSizeForRenderer().
        * rendering/RenderImageResource.h: Remove constness from setContainerSizeForRenderer.
        (WebCore::RenderImageResource::image): Pass on m_renderer to CachedImage::image().
        (WebCore::RenderImageResource::imageSize): Pass on m_renderer to CachedImage::imageSizeForRenderer().
        * rendering/RenderImageResourceStyleImage.h:
        (WebCore::RenderImageResourceStyleImage::setContainerSizeForRenderer): Remove constness, pass on m_renderer to StyleImage::setContainerSizeForRenderer().
        * rendering/RenderLayerBacking.cpp:
        (WebCore::RenderLayerBacking::isDirectlyCompositedImage): Use new CachedImage::imageForRenderer(RenderObject*) method.
        (WebCore::RenderLayerBacking::updateImageContents): Ditto.
        * rendering/RenderListMarker.cpp:
        (WebCore::RenderListMarker::computePreferredLogicalWidths): CachedImage::setContainerSizeForRenderer() now takes a RenderObject* parameter.
        * rendering/RenderObject.cpp:
        (WebCore::mustRepaintFillLayers): CachedImage::canRender() now takes a RenderObject* parameter.
        (WebCore::RenderObject::borderImageIsLoadedAndCanBeRendered): Ditto.
        * rendering/style/StyleCachedImage.cpp:
        (WebCore::StyleCachedImage::canRender): Pass on incoming renderer to CachedImage::canRender().
        (WebCore::StyleCachedImage::imageSize): Pass on incoming renderer to CachedImage::imageSizeForRenderer().
        (WebCore::StyleCachedImage::setContainerSizeForRenderer): Pass on incoming renderer to CachedImage::setContainerSizeForRenderer().
        (WebCore::StyleCachedImage::addClient): Remove unneeded return statment in void method.
        (WebCore::StyleCachedImage::removeClient): Ditto.
        (WebCore::StyleCachedImage::image): Pass on incoming renderer to CachedImage::image().
        * rendering/style/StyleCachedImage.h: Add RenderObject* parameter to canRender()/setContainerSizeForRenderer(). image() already has one, that was unused so far.
        * rendering/style/StyleGeneratedImage.cpp: Inlined setContainerSizeForRenderer.
        * rendering/style/StyleGeneratedImage.h: 
        (WebCore::StyleGeneratedImage::setContainerSizeForRenderer): Add RenderObject* parameter.
        * rendering/style/StyleImage.h:
        (WebCore::StyleImage::canRender): Ditto.
        * rendering/style/StylePendingImage.h:
        (WebCore::StylePendingImage::setContainerSizeForRenderer): Ditto.
        * svg/SVGFEImageElement.cpp:
        (WebCore::SVGFEImageElement::build): Use new CachedImage::imageForRenderer(RenderObject*) method.
        * svg/graphics/SVGImage.cpp: Cleanup file, the include hack seems not needed anymore.
        (WebCore::SVGImage::setContainerSize): s/LayoutSize/IntSize/ to match the code in platform/.
        * svg/graphics/SVGImage.h: Ditto.
        (WebCore::SVGImage::isSVGImage): Return true.

2011-10-13  Kenichi Ishibashi  <bashi@chromium.org>

        [Chromium] Uninitialized read in WebCore::*Font* / HB_GSUB_Select_Feature
        https://bugs.webkit.org/show_bug.cgi?id=70087

        Reviewed by Kent Tamura.

        Initialize local variables in ComplexTextControllerLinux::setupfontFeatures.

        No new tests because there is no behavior change. Manually tested with valgrind.

        * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
        (WebCore::setupFontFeatures):

2011-10-13  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt][Win] Unreviewed buildfix after r97433.

        * platform/MemoryPressureHandler.h: Add a missing include.

2011-10-13  Adam Barth  <abarth@webkit.org>

        Spelling error in v8WebSocket::constructorCallback error
        https://bugs.webkit.org/show_bug.cgi?id=63943

        Reviewed by Kent Tamura.

        Fix typo.

        * bindings/v8/custom/V8WebSocketCustom.cpp:
        (WebCore::V8WebSocket::constructorCallback):

2011-10-13  Mark Hahnenberg  <mhahnenberg@apple.com>

        Rename virtual getConstructData to getConstructDataVirtual
        https://bugs.webkit.org/show_bug.cgi?id=69872

        Reviewed by Geoffrey Garen.

        No new tests.

        Renamed virtual getConstructData functions to getConstructDataVirtual to 
        avoid conflicts when we add static getConstructData to the MethodTable.

        * WebCore.exp.in:
        * bindings/js/JSAudioConstructor.cpp:
        (WebCore::JSAudioConstructor::getConstructDataVirtual):
        * bindings/js/JSAudioConstructor.h:
        * bindings/js/JSImageConstructor.cpp:
        (WebCore::JSImageConstructor::getConstructDataVirtual):
        * bindings/js/JSImageConstructor.h:
        * bindings/js/JSOptionConstructor.cpp:
        (WebCore::JSOptionConstructor::getConstructDataVirtual):
        * bindings/js/JSOptionConstructor.h:
        * bindings/js/ScriptFunctionCall.cpp:
        (WebCore::ScriptFunctionCall::construct):
        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateConstructorDeclaration):
        (GenerateConstructorDefinition):
        * bindings/scripts/test/JS/JSTestInterface.cpp:
        (WebCore::JSTestInterfaceConstructor::getConstructDataVirtual):
        * bridge/runtime_object.cpp:
        (JSC::Bindings::RuntimeObject::getConstructDataVirtual):
        * bridge/runtime_object.h:

2011-10-13  Simon Fraser  <simon.fraser@apple.com>

        Remove #include of <QuartzCore/QuartzCore.h> in a widely-used header.

        Reviewed by Sam Weinig.

        * platform/PlatformScreen.h: Typedef PlatformDisplayID to a uint32_t.
        * platform/graphics/DisplayRefreshMonitor.h: Typedef CVDisplayLinkRef as
        an opaque type to avoid bringing in QuartzCore.h, and move displayLinkCallback
        to the .cpp file since it uses Core Video types.
        * platform/graphics/mac/DisplayRefreshMonitorMac.cpp:
        (WebCore::displayLinkCallback): Make this a local static function, that
        calls a member fuction on the object.
        (WebCore::DisplayRefreshMonitor::requestRefreshCallback):
        (WebCore::DisplayRefreshMonitor::displayLinkFired):

2011-10-13  Michael Saboff  <msaboff@apple.com>

        REGRESSION: High frequency memory warnings cause Safari to hog the CPU doing useless garbage collection
        https://bugs.webkit.org/show_bug.cgi?id=69774

        Throttle the processing of memory pressure events to no more often than once every 5 seconds.

        Reviewed by Geoffrey Garen.

        No new tests.

        * platform/MemoryPressureHandler.cpp:
        (WebCore::MemoryPressureHandler::MemoryPressureHandler):
        * platform/MemoryPressureHandler.h:
        * platform/mac/MemoryPressureHandlerMac.mm:
        (WebCore::MemoryPressureHandler::respondToMemoryPressure):

2011-10-13  Kentaro Hara  <haraken@chromium.org>

        Implement an OverflowEvent constructor for V8
        https://bugs.webkit.org/show_bug.cgi?id=70017

        Reviewed by Adam Barth.

        Test: fast/events/constructors/overflow-event-constructor.html

        * bindings/v8/custom/V8EventConstructors.cpp: Added an OverflowEvent constructor.
        * dom/OverflowEvent.idl: Replaced 'JSCustomConstructor' with 'CustomConstructor'.

2011-10-13  Anantanarayanan G Iyengar  <ananta@chromium.org>

        https://bugs.webkit.org/show_bug.cgi?id=70064
        
        The NPObjectWrapper class used by V8 bindings in Chromium to wrap the window
        script object was allocating an instance of itself in the NPAllocate
        implementation and returning this pointer. It should be returning a pointer
        to the wrapped NPObject structure (NPProxyObject). The member function
        getUnderlyingNPObject should return 0 if we fail to find the underlying NPObject
        for the call. It was incorrectly returning a pointer to the same NPObject in
        this case which could cause recursion. 

        Reviewed by Nate Chapin.

        No new tests as there is no change in functionality.

        * bindings/v8/NPObjectWrapper.cpp:
        (WebCore::NPObjectWrapper::getObjectForCall):
        (WebCore::NPObjectWrapper::NPAllocate):
        * bindings/v8/NPObjectWrapper.h:

2011-10-13  Arthur Hsu  <arthurhsu@chromium.org>

        Ensure font loaded before calling Skia to drawPosText in Chrome sandbox
        https://bugs.webkit.org/show_bug.cgi?id=69370

        Reviewed by James Robinson.

        * platform/graphics/chromium/FontChromiumWin.cpp:
        (WebCore::Font::drawGlyphs):

2011-10-13  Kentaro Hara  <haraken@chromium.org>

        Regarding constructor, replace [ConstructorWith=...] IDL with [CallWith=...] IDL
        https://bugs.webkit.org/show_bug.cgi?id=69801

        As for constructors, [ConstructorWith=...] has the same meaning as [CallWith=...].
        We should deprecate [ConstructorWith=...]. This is a clean-up bug for the bug 65839.

        Reviewed by Adam Barth.

        No new tests, since no change in behavior.

        * bindings/scripts/CodeGeneratorV8.pm: Replaced [ConstructorWith=...] IDL with [CallWith=...] IDL.
        (GenerateConstructorCallback):
        * bindings/scripts/test/TestInterface.idl: Ditto.
        * fileapi/FileReader.idl: Ditto.
        * p2p/PeerConnection.idl: Ditto.
        * page/EventSource.idl: Ditto.
        * workers/Worker.idl: Ditto.

2011-10-13  Kentaro Hara  <haraken@chromium.org>

        Constructor should not be called if the object is being constructed inside WebCore
        https://bugs.webkit.org/show_bug.cgi?id=70015

        Reviewed by Adam Barth.

        Summary: A DOM object can be created from the JS context and from the WebCore context.
        Constructor should be called if the object is created from the JS context,
        but should not be called if the object is created from the WebCore context.

        Details:
        - Expected behavior when the object is created from the JS context (e.g. "new Event()"):
        (1) V8XXXX::constructorCallback() is called.
        (2) V8XXXX::constructorCallback() calls XXXX::create().
        (3) XXXX::create() creates a C++ object.
        (4) V8XXXX::constructorCallback() calls toV8() for the C++ object.
        (5) toV8() wraps the C++ object and returns the wrapped JS object.

        - Actual behavior when the object is created from the JS context (e.g. "new Event()"):
        As described above (1) - (5). That's fine!!

        - Expected behavior when the object is created from the WebCore context.
        (e.g. "window.addEventListener("load", function (event) { ... });". In this case,
        the Event object is created inside the WebCore context):
        (1) WebCore calls XXXX::create().
        (2) XXXX::create() creates a C++ object.
        (3) WebCore calls toV8() for the C++ object.
        (4) toV8() wraps the C++ object and returns the wrapped JS object.

        - Actual behavior when the object is created from the WebCore context.
        (e.g. "window.addEventListener("load", function (event) { ... });"):
        (1) WebCore calls XXXX::create().
        (2) XXXX::create() creates a C++ object.
        (3) WebCore calls toV8() for the C++ object.
        (4) toV8() can call XXXX::constructorCallback(). (Whether or not toV8() calls
        XXXX::constructorCallback() depends on the implementation of toV8().)
        (5) V8XXXX::constructorCallback() calls XXXX::create().
        (6) XXXX::create() creates __another__ C++ object.
        (7) V8XXXX::constructorCallback() calls toV8() for the C++ object.
        (8) toV8() wraps the C++ object and returns the wrapped JS object.

        This actual behavior definitely causes the following problems:

        - Problem1: The object returned to JS is not the object created in (2)
        but the object created in (6). However, I do not yet know a test case that causes
        some visible bug because of this problem.

        - Problem2: In (4), XXXX::constructorCallback() can be called with no argument.
        If XXXX::constructorCallback() expects at least one argument, XXXX::constructorCallback()
        throws TypeError, resulting in crash. For example, Event caused this problem
        when I implemented constructor for Event. Based on the discussion with Dominicc,
        we solved this problem by adding the following two lines of code to Event::constructorCallback()
        (See here: http://codesearch.google.com/codesearch#OAMlx_jo-ck/src/third_party/WebKit/Source/WebCore/bindings/v8/custom/V8EventConstructors.cpp&exact_package=chromium&q=allowallocation&type=cs):

        XXXX::constructorCallback(...) {
            ...;
            if (AllowAllocation::current())
                return args.Holder();
            ...;
        }

        This if check means "XXXX::constructorCallback() returns immediately if it is called
        from the WebCore context".

        With these observations, we think that all constructorCallback() should have the above
        if check. This patch adds the if check to CodeGeneratorV8.pm. After this patch is landed,
        I would like to add the if check to all existing custom V8 constructors.

        No new tests, since we could not find a test case that causes some visible bug without the if check.

        * bindings/scripts/CodeGeneratorV8.pm:
        (GenerateConstructorCallback): Generates a constructor so that it returns immediately without doing anything if the constructor is called from the WebCore context.
        * bindings/scripts/test/V8/V8TestInterface.cpp: Updated the result.
        (WebCore::V8TestInterface::constructorCallback):
        * bindings/scripts/test/V8/V8TestObj.cpp: Ditto.
        (WebCore::V8TestObj::constructorCallback):

2011-10-13  Kentaro Hara  <haraken@chromium.org>

        Implement a BeforeLoadEvent constructor for V8
        https://bugs.webkit.org/show_bug.cgi?id=69980

        Reviewed by Adam Barth.

        Test: fast/events/constructors/before-load-event-constructor.html

        * bindings/v8/custom/V8EventConstructors.cpp: Added a BeforeLoadEvent constructor.
        * dom/BeforeLoadEvent.idl: Replaced 'JSCustomConstructor' with 'CustomConstructor'.

2011-10-13  Joshua Bell  <jsbell@chromium.org>

        make IDBFactory.open wait for pending setVersion transactions to complete
        https://bugs.webkit.org/show_bug.cgi?id=69307

        Reviewed by Tony Chang.

        Added a queue of pending open calls, similar to the queue of pending
        setVersion calls. Ensure pending calls are processed in the correct
        order when transactions complete.

        Tests: storage/indexeddb/open-close-version.html
               storage/indexeddb/two-version-changes.html
               storage/indexeddb/version-change-exclusive.html

        * storage/IDBDatabaseBackendImpl.cpp:
        (WebCore::IDBDatabaseBackendImpl::PendingOpenCall::create):
        (WebCore::IDBDatabaseBackendImpl::PendingOpenCall::callbacks):
        (WebCore::IDBDatabaseBackendImpl::PendingOpenCall::PendingOpenCall):
        (WebCore::IDBDatabaseBackendImpl::setVersion):
        (WebCore::IDBDatabaseBackendImpl::transactionStarted):
        (WebCore::IDBDatabaseBackendImpl::transactionFinished):
        (WebCore::IDBDatabaseBackendImpl::processPendingCalls):
        (WebCore::IDBDatabaseBackendImpl::openConnection):
        (WebCore::IDBDatabaseBackendImpl::close):
        * storage/IDBDatabaseBackendImpl.h:
        * storage/IDBFactoryBackendImpl.cpp:
        (WebCore::IDBFactoryBackendImpl::open):
        * storage/IDBTransactionBackendImpl.cpp:
        (WebCore::IDBTransactionBackendImpl::abort):
        (WebCore::IDBTransactionBackendImpl::start):
        (WebCore::IDBTransactionBackendImpl::commit):

2011-10-13  Chris Marrin  <cmarrin@apple.com>

        Fix Leopard build

        Unreviewed.

        * platform/graphics/DisplayRefreshMonitor.h: Added.

2011-10-12  Chris Marrin  <cmarrin@apple.com>

        Sync requestAnimationFrame callback to CVDisplayLink on Mac
        https://bugs.webkit.org/show_bug.cgi?id=68911

        Reviewed by Simon Fraser.

        Test: fast/animation/request-animation-frame-iframe.html

        Implement CVDisplayLink which checks to see if any scheduleAnimation requests
        have come in. If so, remember the timestamp and do a callOnMainThread to fire
        the callbacks. A DisplayRefreshMonitorManager is a singleton which has a list
        of DisplayRefreshMonitors, one for each display. Each monitor has one or more
        DisplayRefreshMonitorClients, which is a abstract virtual class implemented
        by ScriptAnimationController. When an animation is scheduled, the
        displayRefreshFired method is called on the client, which in turn calls the
        requestAnimationFrame callbacks. 

        DisplayRefreshMonitor and therefore the CVDisplayLink it owns is discarded
        when it no longer has any clients. This minimizes the number of concurrent
        CVDisplayLink threads.

        * WebCore.exp.in:
        * WebCore.xcodeproj/project.pbxproj:
        * dom/Document.cpp:
        (WebCore::Document::windowScreenDidChange):
        (WebCore::Document::webkitRequestAnimationFrame):
        * dom/Document.h:
        * dom/ScriptedAnimationController.cpp:
        (WebCore::ScriptedAnimationController::ScriptedAnimationController):
        (WebCore::ScriptedAnimationController::windowScreenDidChange):
        (WebCore::ScriptedAnimationController::scheduleAnimation):
        * dom/ScriptedAnimationController.h:
        (WebCore::ScriptedAnimationController::displayRefreshFired):
        * page/Page.cpp:
        (WebCore::Page::Page):
        (WebCore::Page::windowScreenDidChange):
        * page/Page.h:
        (WebCore::Page::displayID):
        * platform/PlatformScreen.h:
        * platform/graphics/DisplayRefreshMonitor.cpp: Added.
        (WebCore::DisplayRefreshMonitorClient::DisplayRefreshMonitorClient):
        (WebCore::DisplayRefreshMonitorClient::~DisplayRefreshMonitorClient):
        (WebCore::DisplayRefreshMonitorClient::fireDisplayRefreshIfNeeded):
        (WebCore::DisplayRefreshMonitor::DisplayRefreshMonitor):
        (WebCore::DisplayRefreshMonitor::refreshDisplayOnMainThread):
        (WebCore::DisplayRefreshMonitorManager::sharedManager):
        (WebCore::DisplayRefreshMonitorManager::findMonitor):
        (WebCore::DisplayRefreshMonitorManager::registerClient):
        (WebCore::DisplayRefreshMonitorManager::unregisterClient):
        (WebCore::DisplayRefreshMonitorManager::scheduleAnimation):
        (WebCore::DisplayRefreshMonitorManager::windowScreenDidChange):
        * platform/graphics/DisplayRefreshMonitor.h: Added.
        (WebCore::DisplayRefreshMonitorClient::scheduleAnimation):
        (WebCore::DisplayRefreshMonitor::hasClients):
        (WebCore::DisplayRefreshMonitor::addClient):
        (WebCore::DisplayRefreshMonitor::removeClient):
        (WebCore::DisplayRefreshMonitor::displayID):
        (WebCore::DisplayRefreshMonitorManager::DisplayRefreshMonitorManager):
        * platform/graphics/mac/DisplayRefreshMonitorMac.cpp: Added.
        (WebCore::DisplayRefreshMonitor::displayLinkCallback):
        (WebCore::DisplayRefreshMonitor::~DisplayRefreshMonitor):
        (WebCore::DisplayRefreshMonitor::scheduleAnimation):

2011-10-13  Abhishek Arya  <inferno@chromium.org>

        Unreviewed. Qt compile fix.

        * css/CSSFontFaceSource.cpp: include Document.h.

2011-10-12  Abhishek Arya  <inferno@chromium.org>

        Register custom fonts at their creation time,  
        rather than at retirement time.
        https://bugs.webkit.org/show_bug.cgi?id=68929

        Reviewed by Dan Bernstein.

        Test: fast/text/custom-font-data-crash2.html

        * css/CSSFontFace.cpp:
        * css/CSSFontFace.h: remove function added in r94508,
        which is no longer needed. We now register custom fonts
        at creation time.
        * css/CSSFontFaceSource.cpp:
        (WebCore::CSSFontFaceSource::pruneTable): no longer need
        to delete/retire font data here, it will be handled in ~Document.
        (WebCore::CSSFontFaceSource::getFontData): register custom
        font to document's m_customFonts.
        * css/CSSFontSelector.cpp:
        * css/CSSFontSelector.h: remove function added in r94508,
        which is no longer needed. We now register custom fonts
        at creation time.
        * css/CSSSegmentedFontFace.cpp:
        (WebCore::CSSSegmentedFontFace::pruneTable): no longer need
        to delete/retire font data here, it will be handled in ~Document.
        (WebCore::CSSSegmentedFontFace::getFontData): register custom
        font to document's m_customFonts.
        * dom/Document.cpp: Change function names to registerCustomFont
        , deleteCustomFonts and local to m_customFont.
        (WebCore::Document::~Document):
        (WebCore::Document::recalcStyle): yanking out the comment. We
        no longer keep retired custom fonts. We clear all custom fonts
        on Document destruction.
        (WebCore::Document::registerCustomFont): 
        (WebCore::Document::deleteCustomFonts):
        * dom/Document.h:

2011-10-13  Ryosuke Niwa  <rniwa@webkit.org>

        Crash in DeleteSelectionCommand::handleGeneralDelete
        https://bugs.webkit.org/show_bug.cgi?id=70045

        Reviewed by Darin Adler.

        Exit early when m_upstreamStart is null.

        No new tests because we don't have a reduction.

        * editing/DeleteSelectionCommand.cpp:
        (WebCore::DeleteSelectionCommand::handleGeneralDelete):

2011-10-13  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=70049
        
        [CSS Regions] Add a test of a float being pushed down because it can't fit
        next to another float and make sure it re-evaluates its position when it changes
        regions as a result of the push.

        Reviewed by Sam Weinig.

        Added new test in fast/regions.

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::computeLogicalLocationForFloat):

2011-10-13  Adam Barth  <abarth@webkit.org>

        Move XSTL to script-src in Content-Security-Policy
        https://bugs.webkit.org/show_bug.cgi?id=63637

        Reviewed by Eric Seidel.

        The spec was unclear about how to treat XSLT.  My reading was that they
        should fall under style-src, but further discussion on the mailing list
        settled on using script-src because an XSLT can inject arbitrary DOM
        and script into a page, which is more risky than including style.

        Tests: http/tests/security/contentSecurityPolicy/xsl-unaffected-by-style-src-1.php
               http/tests/security/contentSecurityPolicy/xsl-unaffected-by-style-src-2.php

        * loader/cache/CachedResourceLoader.cpp:
        (WebCore::CachedResourceLoader::canRequest):

2011-10-13  Zeno Albisser  <zeno.albisser@nokia.com>

        [Qt] QtWebKit build error for Mac 32bit
        https://bugs.webkit.org/show_bug.cgi?id=69914

        In WebCore.pro and QtWebKit.pro we define NSGEOMETRY_TYPES_SAME_AS_CGGEOMETRY_TYPES
        when compiling with ENABLE_VIDEO and with WTF_USE_QTKIT.
        But this is meant to be defined in NSGeometry.h under certain preconditions.
        Without setting NS_BUILD_32_LIKE_64 none of these preconditions is
        met and therefore NSGeometry.h will create several conflicting type definitions.

        With this patch we create consistent definitions again.
        Due to the order of include files we cannot remove
        NSGEOMETRY_TYPES_SAME_AS_CGGEOMETRY_TYPES from WebCore.pro.

        Reviewed by Andreas Kling.

        * WebCore.pro:

2011-10-13  Tom Hudson  <tomhudson@google.com>

        Revert border radius clips (r95239) for Chromium due to performance issues. Update test expectations to skip border radius clip layout tests.
        https://bugs.webkit.org/show_bug.cgi?id=69844

        Reviewed by Simon Fraser.

        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::clipToRect): Only process border radius clips #if !PLATFORM(CHROMIUM)

2011-10-13  Julien Chaffraix  <jchaffraix@webkit.org>

        Deprecate event.layerX and event.layerY in WebKit
        https://bugs.webkit.org/show_bug.cgi?id=69951

        Reviewed by Darin Adler.

        layerX and layerY were concepts of the old Netscape code that stayed
        in WebKit for a long time without changes. Now the code is completely
        wrong and Mozilla has expressed some interest in removing it from their
        API too.

        This is a first step in the removal as layerX and layerY are exposed
        in some APIs. Chromium and Win are fine with removing the property
        directly, but ObjC needs to deprecate them first.

        * bindings/objc/PublicDOMInterfaces.h: Mark the API as deprecated.

        * dom/MouseRelatedEvent.cpp:
        (WebCore::MouseRelatedEvent::layerX):
        (WebCore::MouseRelatedEvent::layerY):
        * dom/UIEvent.cpp:
        (WebCore::UIEvent::layerX):
        (WebCore::UIEvent::layerY):
        Added a call to warnDeprecatedLayerXYUsage in the previous functions.

        (WebCore::UIEvent::warnDeprecatedLayerXYUsage): Print a warning in the
        console about the removal of event.layerX and event.layerY in the near future.

        * dom/UIEvent.h: Added warnDeprecatedLayerXYUsage.

2011-10-03  Robert Hogan  <robert@webkit.org>

        CSS 2.1 failure: inline-replaced-height-008.htm
        https://bugs.webkit.org/show_bug.cgi?id=69273

        Reviewed by Simon Fraser.

        Test: css2.1/20110323/inline-block-replaced-height-008.html

        Per http://www.w3.org/TR/CSS21/visudet.html#inline-replaced-height,  if 'height' has computed value of 
        'auto', the replaced element has an intrinsic ratio and its used width is known or resolved, then 
        the used value of 'height' is determined by the equation (used width) / (intrinsic ratio).

        * rendering/RenderImage.cpp:
        (WebCore::RenderImage::computeReplacedLogicalHeight):
        * rendering/RenderReplaced.h:

2011-10-13  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r97362.
        http://trac.webkit.org/changeset/97362
        https://bugs.webkit.org/show_bug.cgi?id=70039

        Relies on V8 APIs that have been reverted upstream. (Requested
        by dglazkov on #webkit).

        * English.lproj/localizedStrings.js:
        * bindings/js/ScriptProfiler.cpp:
        * bindings/js/ScriptProfiler.h:
        * bindings/v8/ScriptProfiler.cpp:
        * bindings/v8/ScriptProfiler.h:
        * inspector/Inspector.json:
        * inspector/InspectorController.cpp:
        (WebCore::InspectorController::InspectorController):
        * inspector/InspectorProfilerAgent.cpp:
        (WebCore::InspectorProfilerAgent::create):
        (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
        * inspector/InspectorProfilerAgent.h:
        * inspector/front-end/DetailedHeapshotGridNodes.js:
        (WebInspector.HeapSnapshotGridNode.prototype.hasHoverMessage.false.hoverMessage):
        (WebInspector.HeapSnapshotGenericObjectNode):
        (WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
        (WebInspector.HeapSnapshotGenericObjectNode.prototype.hoverMessage):
        (WebInspector.HeapSnapshotGenericObjectNode.prototype.shortenWindowURL):
        * inspector/front-end/DetailedHeapshotView.js:
        (WebInspector.DetailedHeapshotView.prototype._showStringContentPopover):
        * inspector/front-end/HeapSnapshot.js:
        (WebInspector.HeapSnapshot.prototype._init):
        (WebInspector.HeapSnapshot.prototype.dispose):
        (WebInspector.HeapSnapshot.prototype.updateStaticData):
        (WebInspector.HeapSnapshotNodesProvider.prototype._serialize):
        * inspector/front-end/HeapSnapshotProxy.js:
        * inspector/front-end/RemoteObject.js:
        * inspector/front-end/heapProfiler.css:

2011-10-13  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69932
        
        Layout repainting messed up for objects in regions. There were two bugs here.
        The first is that the regionOverflowRect needs to at least be the size of the 
        region's rect. When you're in the middle of layout, you haven't computed the
        overflow rect for the flow thread yet (the flow thread's height could even be 0),
        and so you just need to enforce a minimum size. Also removed the region-overflow:break
        clipping behavior, since it was established that was wrong.
        
        The second bug is that when you tell a region to repaint, you need to disable layout state,
        since applying layout deltas from the flow thread makes no sense. The region is in a totally
        different place in the render tree, so the current flow thread layout state can't be used
        to determine your coordinate offset.

        Reviewed by Dan Bernstein.

        Added fast/repaint test.

        * rendering/RenderFlowThread.cpp:
        (WebCore::RenderFlowThread::repaintRectangleInRegions):
        * rendering/RenderRegion.cpp:
        (WebCore::RenderRegion::regionOverflowRect):

2011-10-13  Renata Hodovan  <reni@webkit.org>

        FEComponentTransfer element doesn't support dynamic invalidation
        https://bugs.webkit.org/show_bug.cgi?id=69747

        The dynamic changes are captured by the svgAttributeChange() function, and
        invalidate the filter primitive if necessary.
        invalidateFilterPrimitiveParent() is a new free function in
        SVGFilterPrimitiveStanardAttributes what makes the invalidation possible
        by objects not inherited from SVGFilterPrimitiveStanardAttributes too.
        This solution was used in SVGFEMergeNodeElement::svgAttributeChanged()
        previously and now it can use this new function too.

        Reviewed by Nikolas Zimmermann.

        Tests: svg/dynamic-updates/SVGFEComponentTransferElement-dom-amplitude-attr.html
               svg/dynamic-updates/SVGFEComponentTransferElement-dom-exponent-attr.html
               svg/dynamic-updates/SVGFEComponentTransferElement-dom-intercept-attr.html
               svg/dynamic-updates/SVGFEComponentTransferElement-dom-offset-attr.html
               svg/dynamic-updates/SVGFEComponentTransferElement-dom-slope-attr.html
               svg/dynamic-updates/SVGFEComponentTransferElement-dom-tableValues-attr.html
               svg/dynamic-updates/SVGFEComponentTransferElement-dom-type-attr.html
               svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-amplitude-prop.html
               svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-exponent-prop.html
               svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-intercept-prop.html
               svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-offset-prop.html
               svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-slope-prop.html
               svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-tableValues-prop.html
               svg/dynamic-updates/SVGFEComponentTransferElement-svgdom-type-prop.html

        * svg/SVGComponentTransferFunctionElement.cpp:
        (WebCore::SVGComponentTransferFunctionElement::svgAttributeChanged):
        * svg/SVGComponentTransferFunctionElement.h:
        * svg/SVGFEComponentTransferElement.cpp:
        (WebCore::SVGFEComponentTransferElement::build):
        * svg/SVGFEMergeNodeElement.cpp:
        (WebCore::SVGFEMergeNodeElement::svgAttributeChanged):
        * svg/SVGFilterPrimitiveStandardAttributes.cpp:
        (WebCore::invalidateFilterPrimitiveParent):
        * svg/SVGFilterPrimitiveStandardAttributes.h:

2011-10-13  Deepak Sherveghar  <bpwv64@motorola.com>

        REGRESSION (r95381): Standalone video can be focused and draws a focus ring.
        https://bugs.webkit.org/show_bug.cgi?id=69097

        Reviewed by Eric Carlson.

        We don't want to focus a media element in a standalone document.

        Test: fast/events/media-focus-in-standalone-media-document.html

        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::supportsFocus): return false if media element is in a standalone media document.

2011-10-13  Mikhail Naganov  <mnaganov@chromium.org>

        Web Inspector: [Chromium] Add an ability to look up and explore an object from a heap profile.
        https://bugs.webkit.org/show_bug.cgi?id=61179

        This is exteremely helpful when dealing with DOM wrappers, as
        their properties are mostly implemented with getters and thus not
        stored in heap snapshots.

        Reviewed by Pavel Feldman.

        * English.lproj/localizedStrings.js:
        * bindings/js/ScriptProfiler.cpp:
        (WebCore::ScriptProfiler::objectByHeapObjectId):
        * bindings/js/ScriptProfiler.h:
        * bindings/v8/ScriptProfiler.cpp:
        (WebCore::ScriptProfiler::objectByHeapObjectId):
        * bindings/v8/ScriptProfiler.h:
        * inspector/Inspector.json:
        * inspector/InspectorController.cpp:
        (WebCore::InspectorController::InspectorController):
        * inspector/InspectorProfilerAgent.cpp:
        (WebCore::InspectorProfilerAgent::create):
        (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
        (WebCore::InspectorProfilerAgent::getObjectByHeapObjectId):
        * inspector/InspectorProfilerAgent.h:
        * inspector/front-end/DetailedHeapshotGridNodes.js:
        (WebInspector.HeapSnapshotGridNode.prototype.hasHoverMessage.false.queryObjectContent):
        (WebInspector.HeapSnapshotGenericObjectNode):
        (WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
        (WebInspector.HeapSnapshotGenericObjectNode.prototype.queryObjectContent.else.formatResult):
        (WebInspector.HeapSnapshotGenericObjectNode.prototype.queryObjectContent):
        (WebInspector.HeapSnapshotGenericObjectNode.prototype.shortenWindowURL):
        * inspector/front-end/DetailedHeapshotView.js:
        (WebInspector.DetailedHeapshotView.prototype._showObjectPopover):
        * inspector/front-end/HeapSnapshot.js:
        (WebInspector.HeapSnapshotNode.prototype.get canBeQueried):
        (WebInspector.HeapSnapshotNode.prototype.get flags):
        (WebInspector.HeapSnapshotNode.prototype.get isDOMWindow):
        (WebInspector.HeapSnapshot.prototype._init):
        (WebInspector.HeapSnapshot.prototype.dispose):
        (WebInspector.HeapSnapshot.prototype._flagsOfNode):
        (WebInspector.HeapSnapshot.prototype._calculateFlags):
        (WebInspector.HeapSnapshot.prototype.updateStaticData):
        (WebInspector.HeapSnapshotNodesProvider.prototype._serialize):
        * inspector/front-end/HeapSnapshotProxy.js:
        (WebInspector.HeapSnapshotProxy.prototype.get nodeFlags):
        * inspector/front-end/RemoteObject.js:
        (WebInspector.RemoteObject.fromError):
        * inspector/front-end/heapProfiler.css:
        (.detailed-heapshot-view tr:not(.selected) td.object-column span.highlight):

2011-10-13  Adam Barth  <abarth@webkit.org>

        script-src * should allow all URLs
        https://bugs.webkit.org/show_bug.cgi?id=70011

        Reviewed by Eric Seidel.

        This patch gets us slightly ahead of the spec.  Technically, script-src
        means "any host" and inherits the current scheme.  However, that's not
        what developers expect and it's even contradicted by examples in the
        spec itself.  After this patch, * matches all URLs.

        Test: http/tests/security/contentSecurityPolicy/script-src-star-cross-scheme.html

        * page/ContentSecurityPolicy.cpp:
        (WebCore::CSPSourceList::CSPSourceList):
        (WebCore::CSPSourceList::matches):
        (WebCore::CSPSourceList::parseSource):
        (WebCore::CSPSourceList::addSourceStar):

2011-10-13  Kentaro Hara  <haraken@chromium.org>

        Implement an OverflowEvent constructor for JSC
        https://bugs.webkit.org/show_bug.cgi?id=69907

        Reviewed by Adam Barth.

        There is no spec for the OverflowEvent constructor
        since it is WebKit-specific. However, judging from the current
        IDL of initOverflowEvent(), the constructor IDL should be as follows.

        [Constructor(DOMString type, optional OverflowEventInit eventInitDict)]
        interface OverflowEvent : Event {
            ...;
        }

        dictionary OverflowEventInit : EventInit {
            unsigned short orient;
            boolean horizontalOverflow;
            boolean verticalOverflow;
        }

        Note: In initOverflowEvent(), we cannot specify |bubbles| and |cancelable|.
        I do not know why, but we can find a comment in fast/events/script-tests/init-events.js
        that says "initOverflowEvent has an interface that has a design that's
        inconsistent with the init functions from other events".
        On the other hand, the above constructor enables to specify |bubbles| and |cancelable|,
        which is consistent with other constructors.

        Test: fast/events/constructors/overflow-event-constructor.html

        * bindings/generic/EventConstructors.h: Added a definition for the OverflowEvent constructor.
        * bindings/js/JSEventConstructors.cpp: Added #includes for OverflowEvent.
        * dom/OverflowEvent.cpp:
        (WebCore::OverflowEventInit::OverflowEventInit):
        (WebCore::OverflowEvent::OverflowEvent):
        (WebCore::OverflowEvent::initOverflowEvent):
        * dom/OverflowEvent.h: Added a definition for OverflowEventInit.
        (WebCore::OverflowEvent::create):
        (WebCore::OverflowEvent::orient):
        (WebCore::OverflowEvent::horizontalOverflow):
        (WebCore::OverflowEvent::verticalOverflow):
        * dom/OverflowEvent.idl: Makes OverflowEvent constructible.

2011-10-13  Kent Tamura  <tkent@chromium.org>

        Cleanup of HTMLSelectElement
        https://bugs.webkit.org/show_bug.cgi?id=69908

        Reviewed by Darin Adler.

        - Change the m_listItems type: Vector<Element*> -> Vector<HTMLElement*>
        - Rename a member: m_recalcListItems -> m_shouldRecalcListItems
        - Fold checkListItems() into listItems()
        - Style fixes

        No new tests, just a cleanup.

        * accessibility/AccessibilityListBox.cpp:
        (WebCore::AccessibilityListBox::addChildren):
        * accessibility/AccessibilityListBoxOption.cpp:
        (WebCore::AccessibilityListBoxOption::listBoxOptionIndex):
        * accessibility/AccessibilityMenuListPopup.cpp:
        (WebCore::AccessibilityMenuListPopup::addChildren):
        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::stringValue):
        * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
        (optionFromSelection):
        (webkit_accessible_selection_get_selection_count):
        * dom/OptionElement.cpp:
        (WebCore::OptionElement::optionIndex):
        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::HTMLSelectElement):
        (WebCore::HTMLSelectElement::add):
        (WebCore::HTMLSelectElement::value):
        (WebCore::HTMLSelectElement::setValue):
        (WebCore::HTMLSelectElement::parseMappedAttribute):
        (WebCore::HTMLSelectElement::recalcListItemsIfNeeded):
        (WebCore::HTMLSelectElement::setOption):
        (WebCore::HTMLSelectElement::setLength):
        (WebCore::HTMLSelectElement::nextValidIndex):
        (WebCore::HTMLSelectElement::firstSelectableListIndex):
        (WebCore::HTMLSelectElement::nextSelectableListIndexPageAway):
        (WebCore::HTMLSelectElement::selectAll):
        (WebCore::HTMLSelectElement::saveLastSelection):
        (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
        (WebCore::HTMLSelectElement::updateListBoxSelection):
        (WebCore::HTMLSelectElement::listBoxOnChange):
        (WebCore::HTMLSelectElement::listItems):
        (WebCore::HTMLSelectElement::setRecalcListItems):
        (WebCore::HTMLSelectElement::recalcListItemsInternal):
        (WebCore::HTMLSelectElement::selectedIndex):
        (WebCore::HTMLSelectElement::setSelectedIndexInternal):
        (WebCore::HTMLSelectElement::optionToListIndex):
        (WebCore::HTMLSelectElement::listToOptionIndex):
        (WebCore::HTMLSelectElement::dispatchFocusEvent):
        (WebCore::HTMLSelectElement::deselectItemsWithoutValidation):
        (WebCore::HTMLSelectElement::saveFormControlState): Use StringBuilder.
        (WebCore::HTMLSelectElement::restoreFormControlState):
        (WebCore::HTMLSelectElement::appendFormData):
        (WebCore::HTMLSelectElement::reset):
        (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
        (WebCore::HTMLSelectElement::updateSelectedState):
        (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
        (WebCore::HTMLSelectElement::lastSelectedListIndex):
        Optimize the code by iterating in the reverse order.
        (WebCore::HTMLSelectElement::typeAheadFind):
        (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
        (WebCore::HTMLSelectElement::length):
        (WebCore::toSelectElement):
        * html/HTMLSelectElement.h:
        * rendering/RenderListBox.cpp:
        (WebCore::RenderListBox::updateFromElement):
        (WebCore::RenderListBox::addFocusRingRects):
        (WebCore::RenderListBox::paintItemForeground):
        (WebCore::RenderListBox::paintItemBackground):
        (WebCore::RenderListBox::nodeAtPoint):
        * rendering/RenderMenuList.cpp:
        (WebCore::RenderMenuList::updateOptionsWidth):
        (WebCore::RenderMenuList::setTextFromOption):
        (WebCore::RenderMenuList::itemText):
        (WebCore::RenderMenuList::itemAccessibilityText):
        (WebCore::RenderMenuList::itemToolTip):
        (WebCore::RenderMenuList::itemIsEnabled):
        (WebCore::RenderMenuList::itemStyle):
        (WebCore::RenderMenuList::itemBackgroundColor):
        (WebCore::RenderMenuList::itemIsSeparator):
        (WebCore::RenderMenuList::itemIsLabel):
        (WebCore::RenderMenuList::itemIsSelected):

2011-10-13  Adam Barth  <abarth@webkit.org>

        DOMWindow subobjects can be re-created after navigation
        https://bugs.webkit.org/show_bug.cgi?id=68849

        Reviewed by Sam Weinig.

        Test: http/tests/security/xss-DENIED-getSelection-from-inactive-domwindow.html

        * page/DOMWindow.cpp:
        (WebCore::DOMWindow::~DOMWindow):
            - Add ASSERTs to show that we're not recreating these objects.
            - Add a call to clear() as defense in depth in case we have any of
              these objects hanging around.
        (WebCore::DOMWindow::clear):
            - Clear out a couple of objects that weren't getting cleared.
              These are actually not likely to cause problems, but clearing
              them out is the safe thing to do.
        (WebCore::DOMWindow::isActive):
            - Add a concept of whether the DOMWindow is "active" in its frame.
              We had this concept in a couple places already, but centralizing
              it into a helper function make it easier to use and talk about.
        (WebCore::DOMWindow::orientation):
            - Whitespace nit.
        (WebCore::DOMWindow::screen):
        (WebCore::DOMWindow::history):
        (WebCore::DOMWindow::crypto):
        (WebCore::DOMWindow::locationbar):
        (WebCore::DOMWindow::menubar):
        (WebCore::DOMWindow::personalbar):
        (WebCore::DOMWindow::scrollbars):
        (WebCore::DOMWindow::statusbar):
        (WebCore::DOMWindow::toolbar):
        (WebCore::DOMWindow::console):
        (WebCore::DOMWindow::applicationCache):
        (WebCore::DOMWindow::navigator):
        (WebCore::DOMWindow::performance):
        (WebCore::DOMWindow::location):
        (WebCore::DOMWindow::sessionStorage):
        (WebCore::DOMWindow::localStorage):
        (WebCore::DOMWindow::webkitNotifications):
        (WebCore::DOMWindow::webkitIndexedDB):
        (WebCore::DOMWindow::getSelection):
        (WebCore::DOMWindow::styleMedia):
        (WebCore::DOMWindow::webkitURL):
        (WebCore::DOMWindow::webkitStorageInfo):
            - Avoid creating these objects when we're not active.  That can
              only lead to sadness.
        (WebCore::DOMWindow::webkitRequestFileSystem):
        (WebCore::DOMWindow::webkitResolveLocalFileSystemURL):
        (WebCore::DOMWindow::openDatabase):
        (WebCore::DOMWindow::postMessage):
            - While not techincally creating subobjects, these functions also
              seem unwise when the DOMWindow is inactive.
        (WebCore::DOMWindow::find):
        (WebCore::DOMWindow::length):
        (WebCore::DOMWindow::getMatchedCSSRules):
            - These functions operate on the active Document.  When we're not
              active, that's not us!
        (WebCore::DOMWindow::document):
            - Update to use the new concept of being active rather than having
              this function roll its own implementation.
        (WebCore::DOMWindow::webkitConvertPointFromNodeToPage):
        (WebCore::DOMWindow::webkitConvertPointFromPageToNode):
        (WebCore::DOMWindow::scrollBy):
        (WebCore::DOMWindow::scrollTo):
            - These functions also look unwise to run when inactive because
              they're reading information from the active document.
            - I added a RefPtr for node because the call to
              updateLayoutIgnorePendingStylesheets() seems likely to be able to
              run script somehow.
        (WebCore::DOMWindow::addEventListener):
        (WebCore::DOMWindow::removeEventListener):
        (WebCore::DOMWindow::dispatchLoadEvent):
        (WebCore::DOMWindow::dispatchEvent):
            - I don't think these functions worked when inactive anyway, but
              explicitly blocking them seems wise.
        (WebCore::DOMWindow::setLocation):
        (WebCore::DOMWindow::isInsecureScriptAccess):
        (WebCore::DOMWindow::open):
        (WebCore::DOMWindow::showModalDialog):
            - These already have checks for being active, but it can't hurt to
              be explicit at the top of the function.
        * page/DOMWindow.h:

2011-10-13  Kent Tamura  <tkent@chromium.org>

        REGRESSION(r89915): <input type=email multiple> don't show the default value
        https://bugs.webkit.org/show_bug.cgi?id=69895

        Reviewed by Hajime Morita.

        m_valueIfDirty became unexpectedly empty because
        EmailInputType::sanitizeValue() returned an empty string for a
        null input string.

        To solve this issue, HTMLInputElement::sanitizeValue() checks
        nullness, and remove the null check of sanitizeValue() of
        InputType subclasses.
        Also, we make InputType::sanitizeValue() const.

        * html/ColorInputType.cpp:
        (WebCore::ColorInputType::sanitizeValue):
        - Make this const.
        - Remove null check.
        * html/ColorInputType.h: Make sanitizeValue() const.
        * html/EmailInputType.cpp:
        (WebCore::EmailInputType::sanitizeValue): Make this const.
        * html/EmailInputType.h: Make sanitizeValue() const.
        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::sanitizeValue):
        (WebCore::HTMLInputElement::updateValueIfNeeded):
        * html/InputType.cpp:
        (WebCore::InputType::sanitizeValue):
        Returns a null string if the input string is null, and
        don't call InputType::sanitizeValue() in this case.
        * html/InputType.h: Make sanitizeValue() const.
        * html/NumberInputType.cpp:
        (WebCore::NumberInputType::sanitizeValue): Make this const.
        * html/NumberInputType.h: Make sanitizeValue() const.
        * html/RangeInputType.cpp:
        (WebCore::RangeInputType::sanitizeValue):
        - Make this const.
        - Remove null check.
        * html/RangeInputType.h: Make sanitizeValue() const.
        * html/TextFieldInputType.cpp:
        (WebCore::TextFieldInputType::sanitizeValue): Make this const.
        * html/TextFieldInputType.h: Make sanitizeValue() const.

2011-10-12  Joseph Pecoraro  <joepeck@webkit.org>

        Pass Parsed Accept Attribute MIME Types to WebKit Clients
        https://bugs.webkit.org/show_bug.cgi?id=69598

        Reviewed by David Kilzer.

        No new tests. No new functionality in WebCore, just
        exposing more information to the WebKit port.

        * html/FileInputType.cpp:
        (WebCore::FileInputType::handleDOMActivateEvent):
        (WebCore::FileInputType::receiveDropForDirectoryUpload):
        Set the MIME type list on the FileChooser settings.

        * html/HTMLInputElement.h:
        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::acceptMIMETypes):
        Accessor for a parsed list of MIME types from the accept attribute.
        
        * platform/FileChooser.h:
        Add a slot for a MIME type list on the chooser settings.

2011-10-12  Joseph Pecoraro  <joepeck@webkit.org>

        Pass Parsed Accept Attribute MIME Types to WebKit Clients
        https://bugs.webkit.org/show_bug.cgi?id=69598

        Reviewed by Kent Tamura.

        Deprecate the old String version of getting the "accept"
        mime type values. Instead we will change to include a
        list of MIME types.

        * html/FileInputType.cpp:
        (WebCore::FileInputType::handleDOMActivateEvent):
        (WebCore::FileInputType::receiveDropForDirectoryUpload):
        * platform/FileChooser.h:

2011-10-12  Adam Barth  <abarth@webkit.org>

        Remove ENABLE(XHTMLMP) and associated code
        https://bugs.webkit.org/show_bug.cgi?id=69729

        Reviewed by David Levin.

        As discussed on webkit-dev, we are removing this feature as part of our
        cleanup of unmaintained code in WebKit.

        * Configurations/FeatureDefines.xcconfig:
        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * dom/DOMImplementation.cpp:
        (WebCore::DOMImplementation::createDocument):
        * dom/Document.cpp:
        (WebCore::Document::Document):
        * dom/Document.h:
        (WebCore::Document::isMediaDocument):
        * dom/Node.cpp:
        * dom/make_names.pl:
        (usesDefaultJSWrapper):
        * features.pri:
        * html/HTMLElement.cpp:
        (WebCore::HTMLElement::rendererIsNeeded):
        * html/HTMLElementsAllInOne.cpp:
        * html/HTMLNoScriptElement.cpp: Removed.
        * html/HTMLNoScriptElement.h: Removed.
        * html/HTMLTagNames.in:
        * html/HTMLViewSourceDocument.cpp:
        (WebCore::HTMLViewSourceDocument::createParser):
        * loader/FrameLoader.cpp:
        * platform/wince/MIMETypeRegistryWinCE.cpp:
        (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
        * xml/parser/XMLDocumentParser.h:
        (WebCore::XMLDocumentParser::isXHTMLDocument):
        * xml/parser/XMLDocumentParserLibxml2.cpp:
        (WebCore::XMLDocumentParser::XMLDocumentParser):
        (WebCore::XMLDocumentParser::startElementNs):
        (WebCore::XMLDocumentParser::endElementNs):
        (WebCore::XMLDocumentParser::endDocument):
        (WebCore::XMLDocumentParser::internalSubset):
        (WebCore::getEntityHandler):
        (WebCore::externalSubsetHandler):
        * xml/parser/XMLDocumentParserQt.cpp:
        (WebCore::XMLDocumentParser::XMLDocumentParser):
        (WebCore::XMLDocumentParser::parse):
        (WebCore::XMLDocumentParser::parseStartElement):
        (WebCore::XMLDocumentParser::parseEndElement):
        (WebCore::XMLDocumentParser::endDocument):
        (WebCore::XMLDocumentParser::parseDtd):

2011-10-12  Kentaro Hara  <haraken@chromium.org>

        Implement a WebKitTransitionEvent constructor for V8
        https://bugs.webkit.org/show_bug.cgi?id=69911

        Reviewed by Adam Barth.

        Test: fast/events/constructors/webkit-transition-event-constructor.html

        * bindings/v8/custom/V8EventConstructors.cpp: Added a WebKitTransitionEvent constructor.
        * dom/WebKitTransitionEvent.idl: Replaced 'JSCustomConstructor' with 'CustomConstructor'.

2011-10-12  Kentaro Hara  <haraken@chromium.org>

        Implement a BeforeLoadEvent constructor for JSC
        https://bugs.webkit.org/show_bug.cgi?id=69893

        Reviewed by Adam Barth.

        There is no spec for the BeforeLoadEvent constructor
        since it is WebKit-specific. However, judging from the current
        IDL of initBeforeLoadEvent(), the constructor IDL
        should be as follows.

        [Constructor(DOMString type, optional BeforeLoadEventInit eventInitDict)]
        interface BeforeLoadEvent : Event {
            ...;
        }

        dictionary BeforeLoadEventInit : EventInit {
            DOMString url;
        }

        Test: fast/events/constructors/before-load-event-constructor.html

        * bindings/generic/EventConstructors.h: Added a definition for the BeforeLoadEvent constructor.
        * bindings/js/JSEventConstructors.cpp: Added #includes for BeforeLoadEvent.
        * dom/BeforeLoadEvent.h: Added a definition for BeforeLoadEventInit.
        (WebCore::BeforeLoadEventInit::BeforeLoadEventInit):
        (WebCore::BeforeLoadEvent::create):
        (WebCore::BeforeLoadEvent::initBeforeLoadEvent):
        (WebCore::BeforeLoadEvent::BeforeLoadEvent):
        * dom/BeforeLoadEvent.idl: Makes BeforeLoadEvent constructible.

2011-10-12  Ben Wells  <benwells@chromium.org>

        [skia] Implement Path.currentPoint for skia
        https://bugs.webkit.org/show_bug.cgi?id=69817

        Replace FIXME with implementation.

        Reviewed by Kenneth Russell.

        * platform/graphics/skia/PathSkia.cpp:
        (WebCore::Path::currentPoint):

2011-10-12  Ben Wells  <benwells@chromium.org>

        Incorrect rendering with one-sided thick border and border-radius
        https://bugs.webkit.org/show_bug.cgi?id=38787

        Reviewed by Simon Fraser.

        Incorrect rendering resulted when the inner border could not be properly represented as a rounded
        rectangle. When this happens, and the inner border is clipped out, the clipping code clips out the
        enclosing rectangle instead.

        This change addresses this by clipping in a different way in this case only. The inside is clipped
        out one side at a time with a rounded rect created by adjusting the unrenderable inner border
        rounded rectangle. The side polygon which is clipped to is also increased in this case to include
        the inside of the border so that no areas are missing.

        Test: fast/borders/border-radius-complex-inner.html

        * rendering/RenderBoxModelObject.cpp:
        (WebCore::RenderBoxModelObject::paintOneBorderSide):
        (WebCore::RenderBoxModelObject::paintBorder):
        (WebCore::calculateSideRectIncludingInner):
        (WebCore::calculateAdjustedInnerBorder):
        (WebCore::RenderBoxModelObject::clipBorderSideForComplexInnerPath):
        * rendering/RenderBoxModelObject.h:

2011-10-12  Luke Macpherson   <macpherson@chromium.org>

        Clean up CSSPropertyTextDecoration implementation and ETextDecoration usage.
        https://bugs.webkit.org/show_bug.cgi?id=67625

        Reviewed by Eric Seidel.

        No new tests - no functionality changed.

        The implementation of CSSPropertyTextDecoration is simlified because
        1) CSSValueListIterator produces a valid iterator when no results available.
        2) CSSParser only allows CSSValueNone or a list of appropriate idents.
        3) CSSParser will treat a zero-length list as invalid at parse time.

        * css/CSSPrimitiveValueMappings.h:
        (WebCore::CSSPrimitiveValue::operator ETextDecoration):
        Implement cast from CSSPrimitiveValue to ETextDecoration.
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):
        * rendering/style/RenderStyle.h:
        Use ETextDecoration enum instead of int throughout.
        (WebCore::InheritedFlags::textDecorationsInEffect):
        (WebCore::InheritedFlags::textDecoration):
        (WebCore::InheritedFlags::addToTextDecorationsInEffect):
        (WebCore::InheritedFlags::setTextDecorationsInEffect):
        (WebCore::InheritedFlags::setTextDecoration):
        * rendering/style/RenderStyleConstants.h:
        Introduce constant for number of bits required to represent enum.
        (WebCore::operator|):
        Implement | operator for bitfield enum.
        (WebCore::operator|=):
        Implement |= operator for bitfield enum.
        * rendering/style/StyleVisualData.h:
        Use ETextDecoration instead of int.

2011-10-12  Tony Chang  <tony@chromium.org>

        Implement -webkit-flex-align for cross axis alignment in flex-flow: row
        https://bugs.webkit.org/show_bug.cgi?id=69808

        Reviewed by David Hyatt.

        Tests: css3/flexbox/flex-align-percent-height.html
               css3/flexbox/flex-align-vertical-writing-mode.html
               css3/flexbox/flex-align.html

        * rendering/RenderFlexibleBox.cpp:
        (WebCore::RenderFlexibleBox::isFlowAwareLogicalHeightAuto):
        (WebCore::RenderFlexibleBox::flowAwareContentLogicalHeight):
        (WebCore::RenderFlexibleBox::flowAwareBorderAndPaddingLogicalHeight):
        (WebCore::RenderFlexibleBox::flowAwareMarginLogicalHeightForChild):
        (WebCore::RenderFlexibleBox::flowAwareLogicalLocationForChild):
        (WebCore::RenderFlexibleBox::layoutInlineDirection):
        (WebCore::RenderFlexibleBox::availableLogicalHeightForChild):
        (WebCore::RenderFlexibleBox::marginBoxAscent):
        (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
        (WebCore::RenderFlexibleBox::adjustLocationLogicalTopForChild):
        (WebCore::RenderFlexibleBox::alignChildrenBlockDirection):
        * rendering/RenderFlexibleBox.h:

2011-10-12  Mihnea Ovidenie  <mihnea@adobe.com>

        [CSS Regions]Remove -webkit-content-order property
        https://bugs.webkit.org/show_bug.cgi?id=69848

        Reviewed by Tony Chang.

        -webkit-content-order property is removed from latest CSS Regions spec.

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseValue):
        * css/CSSPropertyNames.in:
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):
        * dom/Node.cpp:
        (WebCore::Node::diff):
        * rendering/RenderFlowThread.cpp:
        (WebCore::compareRenderRegions):
        * rendering/RenderTreeAsText.cpp:
        (WebCore::writeRenderFlowThreads):
        * rendering/style/RenderStyle.h:
        * rendering/style/StyleRareNonInheritedData.cpp:
        (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
        (WebCore::StyleRareNonInheritedData::operator==):
        * rendering/style/StyleRareNonInheritedData.h:

2011-10-12  Adam Bergkvist  <adam.bergkvist@ericsson.com>

        Update PeerConnection to use WebCore platform interfaces
        https://bugs.webkit.org/show_bug.cgi?id=68462

        Reviewed by Adam Barth.

        Currently not testable.

        * WebCore.gypi:
        * WebCore.pro:
        * bindings/js/JSPeerConnectionCustom.cpp:
        (WebCore::JSPeerConnectionConstructor::constructJSPeerConnection):
        * bindings/v8/custom/V8PeerConnectionCustom.cpp: Removed.
        * dom/MediaStreamList.cpp:
        (WebCore::MediaStreamList::item):
        (WebCore::MediaStreamList::append):
        (WebCore::MediaStreamList::remove):
        (WebCore::MediaStreamList::contains):
        * dom/MediaStreamList.h:
        * p2p/PeerConnection.cpp:
        (WebCore::PeerConnection::create):
        (WebCore::PeerConnection::PeerConnection):
        (WebCore::PeerConnection::processSignalingMessage):
        (WebCore::PeerConnection::readyState):
        (WebCore::PeerConnection::send):
        (WebCore::PeerConnection::addStream):
        (WebCore::PeerConnection::removeStream):
        (WebCore::PeerConnection::localStreams):
        (WebCore::PeerConnection::remoteStreams):
        (WebCore::PeerConnection::close):
        (WebCore::PeerConnection::iceProcessingCompleted):
        (WebCore::PeerConnection::sdpGenerated):
        (WebCore::PeerConnection::dataStreamMessageReceived):
        (WebCore::PeerConnection::remoteStreamAdded):
        (WebCore::PeerConnection::remoteStreamRemoved):
        (WebCore::PeerConnection::scriptExecutionContext):
        (WebCore::PeerConnection::stop):
        (WebCore::PeerConnection::scheduleInitialNegotiation):
        (WebCore::PeerConnection::initialNegotiationTimerFired):
        (WebCore::PeerConnection::ensureStreamChangeScheduled):
        (WebCore::PeerConnection::streamChangeTimerFired):
        (WebCore::PeerConnection::scheduleReadyStateChange):
        (WebCore::PeerConnection::readyStateChangeTimerFired):
        (WebCore::PeerConnection::changeReadyState):
        * p2p/PeerConnection.h:
        (WebCore::PeerConnection::refEventTarget):
        (WebCore::PeerConnection::derefEventTarget):
        * p2p/PeerConnection.idl:
        * page/MediaStreamClient.h:
        * page/MediaStreamController.cpp:
        (WebCore::MediaStreamController::MediaStreamController):
        * page/MediaStreamController.h:
        * page/MediaStreamFrameController.cpp:
        * page/MediaStreamFrameController.h:

2011-10-12  Chris Fleizach  <cfleizach@apple.com>

        AX: CrashTracer: [USER] 296 crashes in WebProcess at com.apple.WebCore: WebCore::AccessibilityScrollbar::document const + 29
        https://bugs.webkit.org/show_bug.cgi?id=69936

        AX Scrollbars have a weak pointer to their parent. They need to become AccessibilityMockObjects, so that they can
        participate in the detachFromParent() methods that happens when those parents go away.
        Could not reproduce the crash, but the backtrace is unequivocal.

        Reviewed by Darin Adler.

        * accessibility/AccessibilityScrollView.cpp:
        (WebCore::AccessibilityScrollView::removeChildScrollbar):
        * accessibility/AccessibilityScrollbar.cpp:
        (WebCore::AccessibilityScrollbar::AccessibilityScrollbar):
        * accessibility/AccessibilityScrollbar.h:
        (WebCore::AccessibilityScrollbar::scrollbar):
        (WebCore::AccessibilityScrollbar::isAccessibilityScrollbar):

2011-10-12  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69950
        
        REGRESSION: Printing broken because of the isWritingModeRoot addition for unsplittable
        paginated content. Make sure not to include the RenderView when checking for writing mode
        roots. We only care about children that differ from their parents.

        Reviewed by Dimitri Glazkov.

        * rendering/LayoutState.cpp:
        (WebCore::LayoutState::LayoutState):
        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::adjustForUnsplittableChild):
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::isUnsplittableForPagination):
        * rendering/RenderBox.h:

2011-10-12  Anna Cavender  <annacc@chromium.org>

        Moving ScriptExecutionContext to the front of the argument list for
        IDL constructors that use ConstructorWith=ScriptExecutionContext.
        https://bugs.webkit.org/show_bug.cgi?id=69799

        Reviewed by Adam Barth.

        Tests:
        - http/tests/eventsource/* (for EventSource)
        - fast/filesystem/* (for Worker)

        * bindings/js/JSEventSourceCustom.cpp:
        (WebCore::JSEventSourceConstructor::constructJSEventSource):
        * bindings/js/JSWorkerCustom.cpp:
        (WebCore::JSWorkerConstructor::constructJSWorker):
        * bindings/scripts/CodeGeneratorV8.pm:
        (GenerateConstructorCallback):
        * bindings/scripts/test/V8/V8TestInterface.cpp:
        (WebCore::V8TestInterface::constructorCallback):
        * page/EventSource.cpp:
        (WebCore::EventSource::create):
        * page/EventSource.h:
        * workers/Worker.cpp:
        (WebCore::Worker::create):
        * workers/Worker.h:

2011-10-11  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69896
        
        [CSS Regions] Make positioned blocks work with variable width regions.
        
        Make positioned objects able to position and size independently in each region. This involves
        lifting the restriction in renderBoxRegionInfo for positioned objects and passing in region
        information to computeLogicalWidthForPositioned so that it can compute answers for a given
        region.

        In order to make mixed writing modes work with positioned objects, this patch also takes some
        baby steps towards fixing differing writing modes in paginated environments.

        Reviewed by Sam Weinig.

        Added many new tests in fast/regions.

        * rendering/LayoutState.cpp:
        (WebCore::LayoutState::LayoutState):
        Disable pagination whenever differing writing modes are encountered. The block effectively becomes
        unsplittable (as though it was an image).

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::layoutBlock):
        Remove a FIXME that looks incorrect now.

        (WebCore::RenderBlock::adjustPositionedBlock):
        Patch static inline position caching to call a new method that unshifts the position to put it back
        in the overall block's space rather than having it be per-region.

        (WebCore::RenderBlock::layoutPositionedObjects):
        Make sure to attempt to set a logicalTop for positioned objects before they lay out so that they
        have a chance of paginating correctly the first time around. If for some reason the top estimate proves
        to be incorrect, we lay out again. Technically this bug exists for multi-column and printing as well, but
        for now just fixing it for regions.

        (WebCore::RenderBlock::adjustForUnsplittableChild):
        Add writing mode roots to the set of objects we consider to be unsplittable.

        (WebCore::RenderBlock::setStaticInlinePositionForChild):
        New helper function that handles shifting the inline static position back into the overall block's space
        rather than leaving it in a translated region-specific space.

        * rendering/RenderBlock.h:
        (WebCore::RenderBlock::startOffsetForContent):
        New helper function for computing the start offset when no regions are involved.

        * rendering/RenderBlockLineLayout.cpp:
        (WebCore::setStaticPositions):
        (WebCore::RenderBlock::LineBreaker::nextLineBreak):
        Patched to call the new helper function, setStaticInlinePositionForChild.

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::positionLineBox):
        Patched to call the new helper function, setStaticInlinePositionForChild.

        (WebCore::RenderBox::computeLogicalWidthInRegion):
        Pass region information into the positioning logical width computation function.

        (WebCore::RenderBox::renderBoxRegionInfo):
        Remove the positioning restriction and properly compute shifting and left/right offsets for positioned
        objects.

        (WebCore::RenderBox::computeLogicalHeight):
        Add code for perpendicular flows that just positions the object within the first region it is encountered
        in. Since the object is unsplittable, this will work out. Should the object be so tall that it can't fit
        in any region, then the resulting rendering will potentially be terrible, but the expectation is that authors should
        avoid having perpendicular flows break across pages.

        (WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
        (WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
        Patched to handle regions when they are passed in. Also makes sure that the pagination direction axis computation uses
        the flow thread's first region when the flow thread is the positioned object's containing block.

        (WebCore::computeInlineStaticDistance):
        Patched to examine regions and to modify the static distance computation accordingly so that it is per-region.

        (WebCore::RenderBox::computePositionedLogicalWidth):
        Pass along the region information when computing the positioned logical width.

        (WebCore::computeLogicalLeftPositionedOffset):
        Handle the adjustment of the logical left offset for differing writing modes (in this case when the writing mode
        is flipped relative to us).

        (WebCore::RenderBox::computePositionedLogicalHeight):
        Deal with perpendicular writing modes and make sure the object is placed properly using the first region it 
        occurs in.

        (WebCore::computeLogicalTopPositionedOffset):
        Remove code that is no longer needed.

        (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
        Patched to pass in 0 instead of a region since replaced elements aren't handled yet.

        * rendering/RenderBox.h:
        Changing the computePositionedLogicalWidth method to take region information.

        * rendering/RenderDeprecatedFlexibleBox.cpp:
        (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
        (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
        Didn't bother fixing deprecated flexible box, and the new flexbox still can't handle positioned objects. When it does,
        it will use the new method. Put in some FIXMEs to help the flexbox coders see the issue when they port the code over
        to the new flexbox.

        * rendering/RenderLayer.h:
        (WebCore::RenderLayer::staticInlinePosition):
        (WebCore::RenderLayer::staticBlockPosition):
        (WebCore::RenderLayer::setStaticInlinePosition):
        (WebCore::RenderLayer::setStaticBlockPosition):
        Patched to take LayoutUnits instead of ints.

2011-10-12  Nate Chapin  <japhet@chromium.org>

        Remove logging to determine how null v8::Contexts are happening,
        and check the return value of V8DOMWindowShell::initContextIfNeeded()
        before using the context it initialized.
        https://bugs.webkit.org/show_bug.cgi?id=68099

        Reviewed by Adam Barth.

        No new tests, the only symptom is a crash without a known repro.

        * bindings/v8/ScriptController.cpp:
        * bindings/v8/V8DOMWindowShell.cpp:
        (WebCore::V8DOMWindowShell::initContextIfNeeded): Return true
            if a context already existed.
        (WebCore::V8DOMWindowShell::namedItemAdded): Remove logging.
        * bindings/v8/V8Proxy.cpp:

2011-10-06  Robert Hogan  <robert@webkit.org>

        CSS 2.1 failure: border-conflict-style-079
        https://bugs.webkit.org/show_bug.cgi?id=69551

        Reviewed by Antonio Gomes.

        * css/CSSValueKeywords.in: ridge and outset were the wrong way round
        * rendering/style/RenderStyleConstants.h: ditto


2011-10-12  Jian Li  <jianli@chromium.org>

        Support passing optional filename when FormData.append() is used to
        append a blob
        https://bugs.webkit.org/show_bug.cgi?id=69885

        Reviewed by David Levin.

        Covered by existing test with new test case added:
        http/tests/local/formdata/send-form-data-with-sliced-file.html

        * bindings/js/JSDOMFormDataCustom.cpp:
        (WebCore::JSDOMFormData::append):
        * bindings/v8/custom/V8DOMFormDataCustom.cpp:
        (WebCore::V8DOMFormData::appendCallback):
        * html/DOMFormData.cpp:
        (WebCore::DOMFormData::append):
        * html/DOMFormData.h:
        * html/DOMFormData.idl:
        * html/FormDataList.cpp:
        (WebCore::FormDataList::appendBlob):
        * html/FormDataList.h:
        (WebCore::FormDataList::Item::Item):
        (WebCore::FormDataList::Item::filename):
        (WebCore::FormDataList::appendBlob):
        * platform/network/FormData.cpp:
        (WebCore::FormData::appendKeyValuePairItems):

2011-10-12  Sergey Glazunov  <serg.glazunov@gmail.com>

        ScriptController::executeIfJavaScriptURL gets confused by synchronous frame loads
        https://bugs.webkit.org/show_bug.cgi?id=69777

        Reviewed by Adam Barth.

        Test: http/tests/security/xss-DENIED-synchronous-frame-load-in-javascript-url.html

        * bindings/ScriptControllerBase.cpp:
        (WebCore::ScriptController::executeIfJavaScriptURL):
        * loader/DocumentWriter.cpp:
        (WebCore::DocumentWriter::replaceDocument):
        (WebCore::DocumentWriter::begin):
        * loader/DocumentWriter.h:

2011-10-12  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Searching in multiple scripts in the scripts tab
        https://bugs.webkit.org/show_bug.cgi?id=38807

        Reviewed by Pavel Feldman.

        Added support for advanced search capabilities in inspector by means
        of showing the new SearchView in Drawer. Advanced search is activated
        with Ctrl+Shift+F (Cmd+Shift+F) shortcut.

        * English.lproj/localizedStrings.js:
        * WebCore.gypi:
        * WebCore.vcproj/WebCore.vcproj:
        * inspector/compile-front-end.sh:
        * inspector/front-end/AdvancedSearchController.js: Added.
        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel.prototype.uiSourceCodes):
        * inspector/front-end/ScriptsPanel.js:
        * inspector/front-end/ScriptsSearchScope.js: Added.
        * inspector/front-end/UISourceCode.js:
        (WebInspector.UISourceCode.prototype.searchInContent):
        * inspector/front-end/WebKit.qrc:
        * inspector/front-end/externs.js:
        (WebInspector.showViewInDrawer):
        * inspector/front-end/inspector.css:
        (.search-view):
        (.search-view .search-panel):
        (.search-view .search-results):
        (#search-results-pane-file-based .search-result):
        (#search-results-pane-file-based .search-result:first-child):
        (#search-results-pane-file-based .search-result .search-result-file-name):
        (#search-results-pane-file-based .search-result .search-result-matches-count):
        (#search-results-pane-file-based .search-match):
        (#search-results-pane-file-based .search-match .webkit-line-number.search-match-line-number):
        (#search-results-pane-file-based .search-match:not(:hover) .webkit-line-number.search-match-line-number):
        (#search-results-pane-file-based .search-match:hover):
        (#search-results-pane-file-based .search-match .highlighted-match):
        (#search-results-pane-file-based a):
        (#search-results-pane-file-based .search-match .search-match-content):
        * inspector/front-end/inspector.html:
        * inspector/front-end/inspector.js:
        (WebInspector.documentKeyDown):
        * inspector/front-end/utilities.js:
        ():

2011-10-12  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Fix Drawer to make it possible to show views other than Console.
        https://bugs.webkit.org/show_bug.cgi?id=69831

        Reviewed by Pavel Feldman.

        Animation type extracted to distinguish between slow and normal
        animation and immediate show/hide.
        Implemented correct console toggle button behavior on showing views
        other than console in Drawer.
        View shown in Drawer is now shown in drawer-contents div with common
        styles moved there.
        Removed unused "_safelyRemoveChildren" method from Drawer.

        * inspector/front-end/ConsolePanel.js:
        (WebInspector.ConsolePanel.prototype.show):
        (WebInspector.ConsolePanel.prototype.hide):
        * inspector/front-end/Drawer.js:
        (WebInspector.Drawer):
        (WebInspector.Drawer.prototype.show):
        (WebInspector.Drawer.prototype.hide):
        (WebInspector.Drawer.prototype._animationDuration):
        * inspector/front-end/inspector.css:
        (body.drawer-visible #drawer-contents):
        * inspector/front-end/inspector.js:
        (WebInspector._toggleConsoleButtonClicked):
        (WebInspector._escPressed):
        (WebInspector.showViewInDrawer):
        (WebInspector.documentKeyDown):

2011-10-12  Yury Semikhatsky  <yurys@chromium.org>

        [v8] Use V8DOMWrapper::isWrapperOfType for determining global object type
        https://bugs.webkit.org/show_bug.cgi?id=69923

        Get rid of globalObjectPrototypeIsDOMWindow, use V8DOMWrapper::isWrapperOfType instead.

        Reviewed by Pavel Feldman.

        * bindings/v8/V8DOMWrapper.cpp:
        (WebCore::V8DOMWrapper::instantiateV8Object):
        (WebCore::V8DOMWrapper::getEventListener):

2011-10-12  Yury Semikhatsky  <yurys@chromium.org>

        [Chromium] Web Inspector: assertion failure when evaluating expression in worker inspector console
        https://bugs.webkit.org/show_bug.cgi?id=69922

        Check that the global object is a DOMWindow wrapper befor casting it to V8DOMWindow.

        Reviewed by Pavel Feldman.

        * bindings/v8/ScriptState.cpp:
        (WebCore::ScriptState::domWindow):

2011-10-12  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Update WebSocket protocol to hybi-17
        https://bugs.webkit.org/show_bug.cgi?id=69910

        Reviewed by Kent Tamura.

        Essential changes between hybi-10 and hybi-17 are:
        - Sec-WebSocket-Origin header has been renamed to "Origin".
        - Sec-WebSocket-Version header value has been bumped to 13.

        No new tests are necessary. pywebsocket has already been updated to the latest version
        which understands the new protocol. Tests under http/tests/websocket/ should keep
        passing.

        * websockets/WebSocketHandshake.cpp:
        (WebCore::WebSocketHandshake::clientHandshakeMessage):
        (WebCore::WebSocketHandshake::clientHandshakeRequest):

2011-10-11  Antti Koivisto  <antti@apple.com>

        Resolve regular and visited link style in a single pass
        https://bugs.webkit.org/show_bug.cgi?id=69838

        Reviewed by Darin Adler
        
        We can simplify and speed up selector matching by removing the recursive matching done
        to generate the style for the :visited pseudo selector. Both regular and visited link style
        can be generated in a single pass through the style selector.
        
        - Make SelectorChecker::checkSelector to return both :visited and :link matches for all links.
        - For each selector statically determine and cache the link states it may match.
        - When applying the matched style declarations, apply them to the right RenderStyle
          (regular, visited, or both).

        Statically determining which link state will be matched works since we only support :visited matching
        based on the current element state (not ancestors or siblings).
        
        A later patch will eliminate the separate RenderStyle for visited style completely and include the
        few allowed properties to the regular RenderStyle.

        * css/CSSStyleSelector.cpp:
        (WebCore::RuleData::linkMatchType):
        (WebCore::RuleSet::linkPseudoClassRules):
        (WebCore::CSSStyleSelector::addMatchedDeclaration):
        (WebCore::CSSStyleSelector::matchRules):
        (WebCore::CSSStyleSelector::styleForElement):
        (WebCore::CSSStyleSelector::pseudoStyleForElement):
        (WebCore::CSSStyleSelector::updateFont):
        (WebCore::CSSStyleSelector::checkSelector):
        (WebCore::RuleData::RuleData):
        (WebCore::RuleSet::addRule):
        (WebCore::RuleSet::collectFeatures):
        (WebCore::RuleSet::shrinkToFit):
        (WebCore::CSSStyleSelector::applyDeclaration):
        (WebCore::CSSStyleSelector::applyDeclarations):
        (WebCore::CSSStyleSelector::applyProperty):
        (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
        * css/CSSStyleSelector.h:
        (WebCore::CSSStyleSelector::MatchedStyleDeclaration::MatchedStyleDeclaration):
        * css/SelectorChecker.cpp:
        (WebCore::SelectorChecker::SelectorChecker):
        (WebCore::SelectorChecker::checkSelector):
        (WebCore::SelectorChecker::fastCheckRightmostSelector):
        (WebCore::SelectorChecker::fastCheckSelector):
        (WebCore::SelectorChecker::checkOneSelector):
        (WebCore::SelectorChecker::commonPseudoClassSelectorMatches):
        (WebCore::SelectorChecker::determineLinkMatchType):
        * css/SelectorChecker.h:
        * rendering/style/RenderStyle.cpp:
        (WebCore::RenderStyle::addCachedPseudoStyle):

2011-10-12  Kent Tamura  <tkent@chromium.org>

        REGRESSION(r94836): An assertion fails in HTMLFormControlElement::isValidFormControlElement
        when HTMLInputElement::setValue() is called while the element is focused.
        https://bugs.webkit.org/show_bug.cgi?id=69909

        Reviewed by Ryosuke Niwa.

        setNeedsValidityCheck() should be called after the value update
        and before any style recalculation. r94836 moved
        setSelectionRange() call, and it recalculates the element style.

        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::setValue): Move setNeedsValidityCheck() to setValueInternal().
        (WebCore::HTMLInputElement::setValueInternal): Move setNeedsValidityCheck() from setValue().

2011-10-12  Kent Tamura  <tkent@chromium.org>

        Build fixes for r97238.
        https://bugs.webkit.org/show_bug.cgi?id=69828

        * GNUmakefile.list.am: Remove SelectElement.{cpp,h}.
        * dom/DOMAllInOne.cpp: Remove SelectElement.cpp.

2011-10-12  Kent Tamura  <tkent@chromium.org>

        Move the content of SelectElementData into HTMLSelectElement, and remove SelectElement.{cpp,h}
        https://bugs.webkit.org/show_bug.cgi?id=69828

        Reviewed by Darin Adler.

        - Move all of the data members of SelectElementData to
        HTMLSelectElement, and their accessor functions are not needed
        anymore.
        - Move SelectElementData::useMenuList() to HTMLSelectElement.

        No new tests, just a refactoring.

        * CMakeLists.txt: Remove SelectElement.cpp.
        * WebCore.gypi: Remove SelectElement.{cpp,h}.
        * WebCore.pro: ditto.
        * WebCore.vcproj/WebCore.vcproj: ditto.
        * WebCore.xcodeproj/project.pbxproj: ditto.
        * dom/OptionElement.cpp: Remove a reference to SelectElement.h.
        * dom/SelectElement.cpp: Removed.
        * dom/SelectElement.h: Removed.
        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::HTMLSelectElement):
        Initializes the moved data members.
        (WebCore::HTMLSelectElement::formControlType):
        (WebCore::HTMLSelectElement::setSelectedIndexByUser):
        (WebCore::HTMLSelectElement::activeSelectionStartListIndex):
        (WebCore::HTMLSelectElement::activeSelectionEndListIndex):
        (WebCore::HTMLSelectElement::parseMappedAttribute):
        (WebCore::HTMLSelectElement::canSelectAll):
        (WebCore::HTMLSelectElement::createRenderer):
        (WebCore::HTMLSelectElement::setOption):
        (WebCore::HTMLSelectElement::selectAll):
        (WebCore::HTMLSelectElement::saveLastSelection):
        (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
        (WebCore::HTMLSelectElement::setActiveSelectionEndIndex):
        (WebCore::HTMLSelectElement::updateListBoxSelection):
        (WebCore::HTMLSelectElement::listBoxOnChange):
        (WebCore::HTMLSelectElement::menuListOnChange):
        (WebCore::HTMLSelectElement::scrollToSelection):
        (WebCore::HTMLSelectElement::setOptionsChangedOnRenderer):
        (WebCore::HTMLSelectElement::setRecalcListItems):
        (WebCore::HTMLSelectElement::recalcListItemsInternal):
        (WebCore::HTMLSelectElement::setSelectedIndexInternal):
        (WebCore::HTMLSelectElement::dispatchFocusEvent):
        (WebCore::HTMLSelectElement::dispatchBlurEvent):
        (WebCore::HTMLSelectElement::parseMultipleAttribute):
        (WebCore::HTMLSelectElement::reset):
        (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
        (WebCore::HTMLSelectElement::updateSelectedState):
        (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
        (WebCore::HTMLSelectElement::defaultEventHandler):
        (WebCore::HTMLSelectElement::typeAheadFind):
        (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
        * html/HTMLSelectElement.h:
        (WebCore::HTMLSelectElement::size):
        (WebCore::HTMLSelectElement::multiple):
        (WebCore::HTMLSelectElement::usesMenuList):

2011-10-12  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium Mac build fix after r97227.

        * platform/chromium/ScrollbarThemeChromiumMac.mm:
        (+[ScrollbarPrefsObserver appearancePrefsChanged:]):

2011-10-11  Antoine Labour  <piman@chromium.org>

        Separate compositor client thread from webkit's main thread.
        https://bugs.webkit.org/show_bug.cgi?id=69048

        Reviewed by Darin Fisher.

        Covered by compositing tests.

        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
        (WebCore::CCLayerTreeHost::CCLayerTreeHost):
        * platform/graphics/chromium/cc/CCMainThread.cpp:
        * platform/graphics/chromium/cc/CCMainThread.h:
        * platform/graphics/chromium/cc/CCProxy.cpp:
        (WebCore::CCProxy::isMainThread):
        (WebCore::CCProxy::setMainThread):
        (WebCore::CCProxy::CCProxy):
        * platform/graphics/chromium/cc/CCProxy.h:

2011-10-11  Simon Fraser  <simon.fraser@apple.com>

        Fix Leopard and Snow Leopard builds, which don't use the scrollbar painter.
        
        * platform/mac/ScrollAnimatorMac.mm:

2011-10-11  Simon Fraser  <simon.fraser@apple.com>

        Make custom scrollbar theme for use in DRT, to reduce pixel diffs between platforms
        https://bugs.webkit.org/show_bug.cgi?id=68134

        Reviewed by Darin Adler.

        Use ScrollbarThemeMock when the setting to use mock scrollbars is enabled.
        
        Make ScrollbarTheme::nativeTheme() private, and add a new static theme() method
        that reads the setting, and returns the mock theme if set. All callers now use
        theme() rther than nativeTheme(). Add the new ScrollbarTheme.cpp file to the build.
        
        Fix scroll animator code for Mac and Chromium that was casting the ScrollbarTheme
        without type-checking it to test whether it's the mock theme.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.exp.in:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * html/shadow/TextControlInnerElements.cpp:
        (WebCore::SpinButtonElement::startRepeatingTimer):
        * platform/ScrollAnimatorWin.cpp:
        (WebCore::ScrollAnimatorWin::scroll):
        (WebCore::ScrollAnimatorWin::accelerationTime):
        (WebCore::ScrollAnimatorWin::animateScroll):
        * platform/ScrollView.cpp:
        (WebCore::ScrollView::wheelEvent):
        * platform/ScrollableArea.cpp:
        (WebCore::ScrollableArea::setScrollbarOverlayStyle):
        * platform/Scrollbar.cpp:
        (WebCore::Scrollbar::maxOverlapBetweenPages):
        (WebCore::Scrollbar::Scrollbar):
        * platform/ScrollbarTheme.cpp: Copied from Source/WebCore/platform/mock/ScrollbarThemeMock.h.
        (WebCore::ScrollbarTheme::theme):
        * platform/ScrollbarTheme.h:
        (WebCore::ScrollbarTheme::isMockTheme):
        * platform/chromium/PopupListBox.cpp:
        (WebCore::PopupListBox::layout):
        * platform/chromium/ScrollAnimatorChromiumMac.mm:
        (WebCore::chromiumScrollbarTheme):
        (WebCore::ScrollAnimatorChromiumMac::didAddVerticalScrollbar):
        (WebCore::ScrollAnimatorChromiumMac::willRemoveVerticalScrollbar):
        (WebCore::ScrollAnimatorChromiumMac::didAddHorizontalScrollbar):
        (WebCore::ScrollAnimatorChromiumMac::willRemoveHorizontalScrollbar):
        (WebCore::ScrollAnimatorChromiumMac::updateScrollerStyle):
        * platform/chromium/ScrollbarThemeChromiumMac.mm:
        (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
        (+[ScrollbarPrefsObserver behaviorPrefsChanged:]):
        * platform/mac/ScrollAnimatorMac.mm:
        (WebCore::macScrollbarTheme):
        (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
        (WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
        (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
        (WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):
        (WebCore::ScrollAnimatorMac::updateScrollerStyle):
        * platform/mac/ScrollbarThemeMac.mm:
        (+[WebScrollbarPrefsObserver appearancePrefsChanged:]):
        (+[WebScrollbarPrefsObserver behaviorPrefsChanged:]):
        * platform/mock/ScrollbarThemeMock.h:
        (WebCore::ScrollbarThemeMock::isMockTheme):
        * platform/qt/RenderThemeQt.cpp:
        (WebCore::RenderThemeQt::adjustInnerSpinButtonStyle):
        * platform/win/PopupMenuWin.cpp:
        (WebCore::PopupMenuWin::calculatePositionAndSize):
        * rendering/RenderLayer.cpp:
        (WebCore::cornerRect):
        * rendering/RenderScrollbarPart.cpp:
        (WebCore::calcScrollbarThicknessUsing):
        * rendering/RenderScrollbarTheme.h:
        (WebCore::RenderScrollbarTheme::scrollbarThickness):
        (WebCore::RenderScrollbarTheme::buttonsPlacement):
        (WebCore::RenderScrollbarTheme::shouldCenterOnThumb):
        (WebCore::RenderScrollbarTheme::initialAutoscrollTimerDelay):
        (WebCore::RenderScrollbarTheme::autoscrollTimerDelay):
        (WebCore::RenderScrollbarTheme::registerScrollbar):
        (WebCore::RenderScrollbarTheme::unregisterScrollbar):
        * rendering/RenderTextControl.cpp:
        (WebCore::RenderTextControl::scrollbarThickness):
        * rendering/RenderThemeChromiumSkia.cpp:
        (WebCore::RenderThemeChromiumSkia::menuListInternalPadding):
        * rendering/RenderThemeChromiumWin.cpp:
        (WebCore::RenderThemeChromiumWin::adjustInnerSpinButtonStyle):

2011-10-11  Kentaro Hara  <haraken@chromium.org>

        Implement a WebKitTransitionEvent constructor for JSC
        https://bugs.webkit.org/show_bug.cgi?id=69829

        Reviewed by Adam Barth.

        There is no spec for the WebKitTransitionEvent constructor
        since it is WebKit-specific. However, judging from the current
        IDL of initWebKitTransitionEvent(), the constructor IDL
        should be as follows.

        [Constructor(DOMString type, optional WebKitTransitionEventInit eventInitDict)]
        interface WebKitTransitionEvent : Event {
            ...;
        }

        dictionary WebKitTransitionEventInit : EventInit {
            DOMString propertyName;
            double elapsedTime;
        }

        Test: fast/events/constructors/webkit-transition-event-constructor.html

        * bindings/generic/EventConstructors.h: Added a definition for the WebKitTransitionEvent constructor.
        * bindings/js/JSEventConstructors.cpp: Added #includes for WebKitTransitionEvent.
        * dom/WebKitTransitionEvent.cpp:
        (WebCore::WebKitTransitionEventInit::WebKitTransitionEventInit):
        (WebCore::WebKitTransitionEvent::WebKitTransitionEvent):
        (WebCore::WebKitTransitionEvent::initWebKitTransitionEvent):
        * dom/WebKitTransitionEvent.h: Added a definition for WebKitTransitionEventInit.
        (WebCore::WebKitTransitionEvent::create):
        (WebCore::WebKitTransitionEvent::isWebKitTransitionEvent):
        * dom/WebKitTransitionEvent.idl: Makes WebKitTransitionEvent constructible.

2011-10-11  Sameer Patil  <mkrp87@motorola.com>

        :checked pseudo selector not matching selected option 
        https://bugs.webkit.org/show_bug.cgi?id=63192

        Reviewed by Kent Tamura.

        Test: fast/css/checked-pseudo-selector.html

        Option element selected state need to be checked in checkOneSelector, 
        so that it can be considered as checked on querySelectorAll(':checked').

        * css/SelectorChecker.cpp:
        (WebCore::SelectorChecker::checkOneSelector):

2011-10-11  Ryuan Choi  <ryuan.choi@samsung.com>

        StorageAreaSync::sync needs a transaction for better performance.
        https://bugs.webkit.org/show_bug.cgi?id=57694

        Reviewed by Darin Adler.

        For now, StorageAreaSync::sync execute SQLite operations for all items outside
        a transaction.
        However, SQLite operations outside a transaction are all atomic and thus
        writes will block on I/O, which makes the process slow during heavy I/O.
        This wrapped them with BEGIN TRANSACTION and END TRANSACTION for the better
        performance.

        No new tests required.
        No functional changes if transaction doesn't fail.
        And also, it is difficult to test the case of transaction fails.

        * storage/StorageAreaSync.cpp:
        (WebCore::StorageAreaSync::sync):

2011-10-11  Ojan Vafai  <ojan@chromium.org>

        margin-right is ignored with vertical writing mode
        https://bugs.webkit.org/show_bug.cgi?id=69686

        Reviewed by Darin Adler.

        We need to use the parent's writing mode when grabbing
        the margin start/end for the purposes of computing the parent's
        preferred widths.

        Test: fast/writing-mode/margins.html

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::computeBlockPreferredLogicalWidths):
        * rendering/RenderBlock.h:

2011-10-11  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r97202, r97207, and r97215.
        http://trac.webkit.org/changeset/97202
        http://trac.webkit.org/changeset/97207
        http://trac.webkit.org/changeset/97215
        https://bugs.webkit.org/show_bug.cgi?id=69894

        Broke builds (Requested by rniwa on #webkit).

        * platform/PopupMenuClient.h:
        * rendering/RenderMenuList.cpp:
        (WebCore::RenderMenuList::showPopup):
        * rendering/RenderMenuList.h:
        * rendering/RenderObject.h:
        * rendering/RenderTextControlSingleLine.cpp:
        (WebCore::RenderTextControlSingleLine::showPopup):
        * rendering/RenderTextControlSingleLine.h:
        * testing/Internals.cpp:
        * testing/Internals.h:
        * testing/Internals.idl:

2011-10-11  Martin Robinson  <mrobinson@igalia.com>

        [Soup] ResourceHandleSoup does not handle encodedBlobData
        https://bugs.webkit.org/show_bug.cgi?id=52092

        Reviewed by Gustavo Noronha Silva.

        Add support for sending encoded blob data during requests.

        * platform/network/soup/ResourceHandleSoup.cpp:
        (WebCore::addFileToSoupMessageBody): Added this helper.
        (WebCore::blobIsOutOfDate): Ditto.
        (WebCore::addEncodedBlobItemToSoupMessageBody): Ditto.
        (WebCore::addEncodedBlobToSoupMessageBody): Ditto.
        (WebCore::addFormElementsToSoupMessage): No longer flatten form data, as we
        cannot do this in the case where the form data contains blobs. Now handle
        the blob case.
        (WebCore::loadResourceSynchronously): Add blob support for synchronous loading.

2011-10-11  Chris Rogers  <crogers@google.com>

        Heap buffer overflow in Webaudio FFTFrame::doFFT
        https://bugs.webkit.org/show_bug.cgi?id=69447

        Reviewed by Kenneth Russell.

        No new tests. This only changes internal implementation details.

        * platform/audio/HRTFKernel.cpp:
        (WebCore::extractAverageGroupDelay):
        * platform/audio/HRTFPanner.cpp:
        (WebCore::HRTFPanner::fftSizeForSampleRate):

2011-10-11  Ryosuke Niwa  <rniwa@webkit.org>

        Second Qt minimum release build fix attempt after r97163.

        * platform/graphics/texmap/TextureMapperNode.cpp:
        (WebCore::TextureMapperNode::syncCompositingStateSelf):

2011-10-11  Ryosuke Niwa  <rniwa@webkit.org>

        Qt minimum release build fix attempt after r97163.

        * platform/graphics/texmap/TextureMapperNode.cpp:
        (WebCore::TextureMapperNode::syncCompositingStateSelf):

2011-10-11  Oliver Hunt  <oliver@apple.com>

        Clang build broken
        https://bugs.webkit.org/show_bug.cgi?id=69891

        Reviewed by Darin Adler.

        Rename CachedResourceClient::type to CachedResourceClient::resourceClientType
        to avoid conflict in CSSImportRule.

        * loader/cache/CachedCSSStyleSheet.cpp:
        (WebCore::CachedCSSStyleSheet::didAddClient):
        * loader/cache/CachedFont.cpp:
        (WebCore::CachedFont::didAddClient):
        * loader/cache/CachedFont.h:
        (WebCore::CachedFontClient::resourceClientType):
        * loader/cache/CachedImage.cpp:
        (WebCore::CachedImage::didAddClient):
        * loader/cache/CachedImage.h:
        (WebCore::CachedImageClient::resourceClientType):
        * loader/cache/CachedResourceClient.h:
        (WebCore::CachedResourceClient::resourceClientType):
        * loader/cache/CachedResourceClientWalker.h:
        (WebCore::CachedResourceClientWalker::next):
        * loader/cache/CachedStyleSheetClient.h:
        (WebCore::CachedStyleSheetClient::resourceClientType):
        * loader/cache/CachedXSLStyleSheet.cpp:
        (WebCore::CachedXSLStyleSheet::didAddClient):

2011-10-11  Ryosuke Niwa  <rniwa@webkit.org>

        Dir attribute is converted into direction property when merging paragraphs
        https://bugs.webkit.org/show_bug.cgi?id=69680

        Reviewed by Enrica Casucci.

        Don't include direction and unicode-bidi properties in the wrapping style.

        Tests: editing/deleting/merge-paragraph-into-h1-with-dir-2.html
               editing/deleting/merge-paragraph-into-h1-with-dir.html

        * editing/EditingStyle.cpp:
        (WebCore::EditingStyle::mergeInlineAndImplicitStyleOfElement): Skip unicode-bidi and direction properties.
        (WebCore::EditingStyle::wrappingStyleForSerialization): Extracted from StyledMarkupAccumulator::serializeNodes.
        * editing/EditingStyle.h:
        * editing/markup.cpp:
        (WebCore::StyledMarkupAccumulator::serializeNodes): Calls wrappingStyleForSerialization.

2011-10-11  Nico Weber  <thakis@chromium.org>

        [chromium] Let rule_binding use os.execvp() instead of subprocess.call() to spawn fewer processes.
        https://bugs.webkit.org/show_bug.cgi?id=69589

        Reviewed by Dirk Pranke.

        When building with `make -j40`, all the binding rules are built en bloc. Since this script currently
        uses subprocess.call(), that actually spawns 80 processes at once. OS X has a max process limit of
        255 by default, so the build used to fail with
        "open2: fork failed: Resource temporarily unavailable at ../bindings/scripts/preprocessor.pm line 60"
        As a fix, use execvp() instead, which replaces the current process instead of spawning a new one.

        * WebCore.gyp/scripts/rule_binding.py:

2011-10-11  Fady Samuel  <fsamuel@chromium.org>

        Towards making PopupMenuClient more testable
        https://bugs.webkit.org/show_bug.cgi?id=69631

        Reviewed by Simon Fraser.

        Added some functions to window.internals to allow testing of parts of PopupMenuClient.

        Test: fast/dom/popup-menu-client-test.html

        * platform/PopupMenuClient.h:
        * rendering/RenderMenuList.cpp:
        (WebCore::RenderMenuList::showPopup):
        (WebCore::RenderMenuList::boundingBoxRect):
        * rendering/RenderMenuList.h:
        (WebCore::RenderMenuList::RenderMenuList::isPopupMenuClient):
        * rendering/RenderObject.h:
        (WebCore::RenderObject::isPopupMenuClient):
        * rendering/RenderTextControlSingleLine.cpp:
        (WebCore::RenderTextControlSingleLine::showPopup):
        (WebCore::RenderTextControlSingleLine::boundingBoxRect):
        * rendering/RenderTextControlSingleLine.h:
        (WebCore::RenderTextControlSingleLine::isPopupMenuClient):
        * testing/Internals.cpp:
        (WebCore::Internals::toPopupMenuClient):
        (WebCore::Internals::popupClientPaddingLeft):
        (WebCore::Internals::popupClientPaddingRight):
        (WebCore::Internals::popupClientBoundingBoxRect):
        * testing/Internals.h:
        * testing/Internals.idl:

2011-10-11  Nate Chapin  <japhet@chromium.org>

        Make CachedResourceClientWalker templates, and
        have it check and filter out bad casts when iterating
        (currently we rely on CachedResourceClients being careful
        to inherit from the right subclass for the type of resource
        they want to load).
        https://bugs.webkit.org/show_bug.cgi?id=69877

        Reviewed by Adam Barth.

        No new tests, no functionality change.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * loader/cache/CachedCSSStyleSheet.cpp:
        * loader/cache/CachedFont.cpp:
        * loader/cache/CachedFont.h:
        * loader/cache/CachedImage.cpp:
        * loader/cache/CachedImage.h:
        * loader/cache/CachedResource.cpp:
        * loader/cache/CachedResourceClient.h:
        * loader/cache/CachedResourceClientWalker.cpp: Removed.
        * loader/cache/CachedResourceClientWalker.h:
        * loader/cache/CachedStyleSheetClient.h:
        * loader/cache/CachedXSLStyleSheet.cpp:

2011-10-11  W. James MacLean  <wjmaclean@chromium.org>

        [chromium] Fix compilation guards in ScrollAnimatorNone (GESTURE_EVENTS).
        https://bugs.webkit.org/show_bug.cgi?id=69853

        Reviewed by Kenneth Russell.

        Adding missing guards ENABLE(GESTURE_EVENTS) in ScrollAnimatorNone. So
        far this hasn't been a problem since GESTURE_EVENTS are usually turned on
        whenever SMOOTH_SCROLLING is, but it could be a problem if this changes.

        No new tests (compilation without errors is the test).

        * platform/ScrollAnimatorNone.cpp:
        * platform/ScrollAnimatorNone.h:

2011-10-11  Kenneth Russell  <kbr@google.com>

        [chromium] Check for lost context at beginning of compositor's execution
        https://bugs.webkit.org/show_bug.cgi?id=69776

        Reviewed by James Robinson.

        Test: platform/chromium/compositing/webgl-loses-compositor-context.html

        * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
        (WebCore::CCSingleThreadProxy::recreateContextIfNeeded):

2011-10-11  W. James MacLean  <wjmaclean@chromium.org>

        Loss of precision when converting from double to int and double to float in FrameView::zoomAnimatorTransformChanged()
        https://bugs.webkit.org/show_bug.cgi?id=69739

        Reviewed by Simon Fraser.

        Change 'double' parameters in FrameView:: & ScrollableArea::zoomAnimatorTransformChanged()
        to 'float' to avoid loss of precision warnings when invoking setPageScalefactor.

        Test coverage provided by existing zoom-animator tests.

        * page/FrameView.cpp:
        (WebCore::FrameView::zoomAnimatorTransformChanged):
        * page/FrameView.h:
        * platform/ScrollableArea.cpp:
        (WebCore::ScrollableArea::zoomAnimatorTransformChanged):
        * platform/ScrollableArea.h:

2011-10-11  No'am Rosenthal  <noam.rosenthal@nokia.com>

        Unreviewed build fix, unbreaking the Qt minimal bot.
        Some #ifdef ENABLED(TILED_BACKING_STORE) clauses were missing.

        * platform/graphics/texmap/TextureMapperNode.cpp:
        (WebCore::TextureMapperNode::computeTiles):
        (WebCore::TextureMapperNode::renderContent):
        (WebCore::TextureMapperNode::paintSelf):

2011-10-11  Abhishek Arya  <inferno@chromium.org>

        Generalize r95461 change to include table-cell and 
        allow splitting between :before, :after content.
        https://bugs.webkit.org/show_bug.cgi?id=69854

        Reviewed by Eric Seidel.

        Test: fast/table/table-row-before-after-content-around-table-cell.html

        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::addChild):

2011-10-11  Dominic Mazzoni  <dmazzoni@google.com>

        AccessibilityMenuList should fire change notification when popup is not open.
        https://bugs.webkit.org/show_bug.cgi?id=69440

        Reviewed by Chris Fleizach.

        Test: accessibility/menu-list-sends-change-notification.html

        * accessibility/AccessibilityMenuList.cpp:
        (WebCore::AccessibilityMenuList::didUpdateActiveOption):

2011-10-11  Joshua Bell  <jsbell@chromium.org>

        IndexedDB: implement IDBFactory.cmp method
        https://bugs.webkit.org/show_bug.cgi?id=62293

        Reviewed by Tony Chang.

        * storage/IDBFactory.cpp:
        (WebCore::IDBFactory::cmp):
        * storage/IDBFactory.h:
        * storage/IDBFactory.idl:
        * storage/IDBKey.cpp:
        (WebCore::IDBKey::compare):
        (WebCore::IDBKey::isLessThan):
        (WebCore::IDBKey::isEqual):
        * storage/IDBKey.h:

2011-10-11  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Texmap] TextureMapperGL leaves GL in a modified state.
        https://bugs.webkit.org/show_bug.cgi?id=68983

        Reviewed by Andreas Kling.

        Disable the vertexAttribArray after clipping.

        No new functionality so no new tests.

        * platform/graphics/opengl/TextureMapperGL.cpp:
        (WebCore::TextureMapperGL::beginClip):

2011-10-11  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Qt][WK2] Synchronize tiling with accelerated compositing
        https://bugs.webkit.org/show_bug.cgi?id=69151

        Reviewed by Kenneth Rohde Christiansen.

        Enable "externally managed" tiles in TextureMapperNodes.
        Currently, TextureMapperNodes manage tiles themselves, the tiles being there only to
        overcome the 2k texture size limitation. For WebKit2, we want those tiles to be managed
        externally, namely through the web process via the remote tile backend for
        TiledBackingStore.

        This patch adds a store for those externally managed tiles, and adds the necessary code to
        paint them instead of the owned tiles when appropriate.

        In addition, in order to support externally managed remote tiles, we have to calculate per-
        layer visible rects and pass them to the web process. The new collectVisibleContentRects
        does this - and is directly tied to the externally-managed tile approach.

        Code is disabled for now, but covered by existing compositing tests.

        * platform/graphics/texmap/TextureMapperNode.cpp:
        (WebCore::TextureMapperNode::computeTiles):
        (WebCore::clampRect):
        (WebCore::TextureMapperNode::collectVisibleContentRects):
        (WebCore::TextureMapperNode::renderContent):
        (WebCore::TextureMapperNode::targetRectForTileRect):
        (WebCore::TextureMapperNode::paintSelf):
        (WebCore::TextureMapperNode::createContentsTile):
        (WebCore::TextureMapperNode::removeContentsTile):
        (WebCore::TextureMapperNode::setTileBackBufferTextureForDirectlyCompositedImage):
        (WebCore::TextureMapperNode::clearAllDirectlyCompositedImageTiles):
        (WebCore::TextureMapperNode::setContentsTileBackBuffer):
        (WebCore::TextureMapperNode::swapContentsBuffers):
        (WebCore::TextureMapperNode::syncCompositingStateSelf):
        (WebCore::TextureMapperNode::syncCompositingState):
        * platform/graphics/texmap/TextureMapperNode.h:
        (WebCore::TextureMapperNode::size):
        (WebCore::TextureMapperNode::setTileOwnership):
        (WebCore::TextureMapperNode::setID):
        (WebCore::TextureMapperNode::id):
        (WebCore::TextureMapperNode::texture):
        (WebCore::TextureMapperNode::ExternallyManagedTile::ExternallyManagedTile):
        (WebCore::TextureMapperNode::State::State):

2011-10-11  Claudio Saavedra  <csaavedra@igalia.com>

        [GTK] GtkAuthenticationDialog: use GtkGrid instead of GtkTable
        https://bugs.webkit.org/show_bug.cgi?id=69749

        Reviewed by Martin Robinson.

        * platform/gtk/GtkAuthenticationDialog.cpp:
        (WebCore::addEntryToGrid): Migrate to GtkGrid when using GTK+ 3
        (WebCore::GtkAuthenticationDialog::GtkAuthenticationDialog):
        Ditto.

2011-10-11  Alexey Proskuryakov  <ap@apple.com>

        Build fix.

        * WebCore.exp.in: Export GraphicsContext::clearShadow().

2011-10-10  Adam Klein  <adamk@chromium.org>

        [MutationObservers] Add stub implementation of WebKitMutationObserver
        https://bugs.webkit.org/show_bug.cgi?id=68949

        Reviewed by Ryosuke Niwa, Oliver Hunt, and Dimitri Glazkov.

        See https://bugs.webkit.org/show_bug.cgi?id=68729 for the metabug.

        This patch adds a stub WebKitMutationObserver and its supporting classes
        MutationCallback and MutationObserverOptions.
        No implementation is provided for the all-important observe() and
        disconnect() methods.

        Note that WebKitMutationObserver is vendor-prefixed since it has a
        constructor exposed on DOMWindow.  None of the rest of the API needs
        prefixing, as it's only available via a call through a MutationObserver
        callback (created by instantiating WebKitMutationObserver).

        Given the number of files required to get just the stub up and running,
        it seems reasonable to leave the actual implementation for the next
        patch (or more likely several patches).  I've left FIXMEs in all the places
        that'll need augmentation.

        Tests: fast/mutation/mutation-observer-constructor.html
               fast/mutation/observe-exceptions.html

        * CMakeLists.txt:
        * DerivedSources.cpp:
        * DerivedSources.make:
        * GNUmakefile.list.am:
        * UseJSC.cmake:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/JSDictionary.h:
        (WebCore::JSDictionary::tryGetProperty):
        * bindings/js/JSMutationCallbackCustom.cpp: Added.
        (WebCore::JSMutationCallback::handleEvent):
        * bindings/js/JSWebKitMutationObserverCustom.cpp: Added.
        (WebCore::JSWebKitMutationObserverConstructor::constructJSWebKitMutationObserver):
        (WebCore::JSWebKitMutationObserver::observe):
        * bindings/v8/custom/V8MutationCallbackCustom.cpp: Added.
        (WebCore::V8MutationCallback::handleEvent):
        * bindings/v8/custom/V8WebKitMutationObserverCustom.cpp: Added.
        (WebCore::V8WebKitMutationObserver::constructorCallback):
        (WebCore::V8WebKitMutationObserver::observeCallback):
        * dom/MutationCallback.h: Added.
        (WebCore::MutationCallback::~MutationCallback):
        * dom/MutationCallback.idl: Added.
        * dom/MutationObserverOptions.h: Added.
        (WebCore::MutationObserverOptions::create):
        (WebCore::MutationObserverOptions::childList):
        (WebCore::MutationObserverOptions::setChildList):
        (WebCore::MutationObserverOptions::attributes):
        (WebCore::MutationObserverOptions::setAttributes):
        (WebCore::MutationObserverOptions::characterData):
        (WebCore::MutationObserverOptions::setCharacterData):
        (WebCore::MutationObserverOptions::subtree):
        (WebCore::MutationObserverOptions::setSubtree):
        (WebCore::MutationObserverOptions::attributeOldValue):
        (WebCore::MutationObserverOptions::setAttributeOldValue):
        (WebCore::MutationObserverOptions::characterDataOldValue):
        (WebCore::MutationObserverOptions::setCharacterDataOldValue):
        (WebCore::MutationObserverOptions::MutationObserverOptions):
        * dom/WebKitMutationObserver.cpp: Added.
        (WebCore::WebKitMutationObserver::create):
        (WebCore::WebKitMutationObserver::WebKitMutationObserver):
        (WebCore::WebKitMutationObserver::~WebKitMutationObserver):
        (WebCore::WebKitMutationObserver::observe):
        (WebCore::WebKitMutationObserver::disconnect):
        * dom/WebKitMutationObserver.h: Added.
        * dom/WebKitMutationObserver.idl: Added.
        * page/DOMWindow.idl:

2011-10-11  Arun Patole  <BMF834@motorola.com>

        Need more efficient ways to set inline CSS styles
        https://bugs.webkit.org/show_bug.cgi?id=58157

        Reviewed by Dimitri Glazkov.

        No new tests added as this is just a code optimization.

        Code optimization:
          -Used CSSPropertyNames, CSSValues and CSSPrimitiveValues instead of Strings.
          -Removed displayString(), webkitTransitionString(), opacityString() functions as they will no longer be needed after this change.
          -Moved makeOpaque and makeTransparent functionality to MediaControlPanelElement from MediaControlRootElement.

        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::mediaPlayerRateChanged):
        * html/shadow/MediaControlElements.cpp:
        (WebCore::MediaControlElement::show):
        (WebCore::MediaControlElement::hide):
        (WebCore::MediaControlPanelElement::MediaControlPanelElement):
        (WebCore::MediaControlPanelElement::makeOpaque):
        (WebCore::MediaControlPanelElement::makeTransparent):
        (WebCore::MediaControlInputElement::show):
        (WebCore::MediaControlInputElement::hide):
        * html/shadow/MediaControlElements.h:
        * html/shadow/MediaControlRootElement.cpp:
        (WebCore::MediaControlRootElement::MediaControlRootElement):
        (WebCore::MediaControlRootElement::makeOpaque):
        (WebCore::MediaControlRootElement::makeTransparent):
        * html/shadow/MediaControlRootElement.h:
        * html/shadow/MediaControlRootElementChromium.cpp:
        (WebCore::MediaControlRootElementChromium::makeOpaque):
        (WebCore::MediaControlRootElementChromium::makeTransparent):

2011-10-11  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: make Extensions component compile.
        https://bugs.webkit.org/show_bug.cgi?id=69833

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/BinarySearch.js:
        * inspector/front-end/ConsoleModel.js:
        * inspector/front-end/ExtensionAPI.js:
        (injectedExtensionAPI.Network.prototype.addRequestHeaders):
        (injectedExtensionAPI.AuditResultImpl.prototype.addResult):
        (injectedExtensionAPI.AuditResultNode.prototype.addChild):
        * inspector/front-end/ExtensionAuditCategory.js:
        * inspector/front-end/ExtensionPanel.js:
        (WebInspector.ExtensionSidebarPane.prototype.setExpression):
        * inspector/front-end/ExtensionRegistryStub.js:
        * inspector/front-end/ExtensionServer.js:
        (WebInspector.ExtensionServer.prototype._postNotification):
        (WebInspector.ExtensionServer.prototype._onAddRequestHeaders):
        (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
        (WebInspector.ExtensionServer.prototype._registerExtension):
        (WebInspector.ExtensionStatus):
        * inspector/front-end/NetworkLog.js:
        (WebInspector.NetworkLog.prototype._onResourceStarted):
        * inspector/front-end/Object.js:
        (WebInspector.Object.prototype.dispatchEventToListeners):
        * inspector/front-end/externs.js:
        (console.warn):
        (console.assert):
        (console.error):
        ():
        (AuditResult):
        (EventSink):
        (ExtensionSidebarPane):
        (Panel):
        (PanelWithSidebar):
        (Request):
        (Resource):
        (Timeline):

2011-10-05  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: implement CompilerSourceMappingProvider.
        https://bugs.webkit.org/show_bug.cgi?id=69423

        Reviewed by Pavel Feldman.

        CompilerSourceMappingProvider implements a cross-domain communication channel for loading source mappings and source files.
        Front-end page can't send XHRs to source mapping server directly due to SOP restrictions. Instead, we inject an invisible
        iframe that is loaded from source mapping server and use window.postMessage to communicate with it. iframe has a different
        origin and thus doesn't have access to front-end window.

        Test: http/tests/inspector/compiler-source-mapping-provider.html

        * inspector/front-end/CompilerSourceMappingProvider.js:
        (WebInspector.CompilerSourceMappingProvider):
        (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceMapping.frameLoaded.didLoadData):
        (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceMapping.frameLoaded):
        (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceMapping):
        (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceCode):
        (WebInspector.CompilerSourceMappingProvider.prototype._sendRequest):
        (WebInspector.CompilerSourceMappingProvider.prototype._onMessage):
        (WebInspector.CompilerSourceMappingProvider.prototype._cancelRequest):
        * inspector/front-end/inspector.js:
        (WebInspector.installSourceMappingForTest):

2011-10-11  Mike Reed  <reed@google.com>

        re-add support for GDI text behind a compile flag
        https://bugs.webkit.org/show_bug.cgi?id=69530

        Reviewed by James Robinson.

        Reverts back to using GDI for text (when possible)
        but keeps skia-text version behind a compile-flag. If/when we can
        resolve the outstanding soft-clip and intl-performance bugs with the
        skia version, we may change the compile-flag to reenable skia.
        
        Previous change http://trac.webkit.org/changeset/94589 removed the GDI code.

        * platform/graphics/chromium/FontChromiumWin.cpp:
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::TransparencyAwareFontPainter):
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::init):
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::TransparencyAwareGlyphPainter):
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::~TransparencyAwareGlyphPainter):
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::estimateTextBounds):
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::hdc):
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::TransparencyAwareUniscribePainter):
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::~TransparencyAwareUniscribePainter):
        (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::estimateTextBounds):
        (WebCore::drawGlyphsWin):
        (WebCore::Font::drawGlyphs):
        (WebCore::Font::drawComplexText):
        * platform/graphics/chromium/UniscribeHelper.cpp:
        (WebCore::UniscribeHelper::draw):
        * platform/graphics/skia/PlatformContextSkia.cpp:
        (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
        * platform/graphics/skia/PlatformContextSkia.h:
        * platform/graphics/skia/SkiaFontWin.cpp:
        (WebCore::windowsCanHandleDrawTextShadow):
        (WebCore::windowsCanHandleTextDrawing):
        (WebCore::windowsCanHandleTextDrawingWithoutShadow):
        * platform/graphics/skia/SkiaFontWin.h:

2011-10-11  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>

        [Qt] Remove all references to QTDIR_build and standalone_package

        Qt is now modularized, which means we no longer import WebKit into
        the Qt source tree. Instead we use git submodules, and building
        QtWebKit as "part of Qt" is really building QtWebKit as from trunk.

        To decrease the number of buildsystem configurations we also remove
        the standalone_package code-path used when we were providing tarballs
        with the derived sources pre-generated.

        Reviewed by Simon Hausmann.

        * CodeGenerators.pri:
        * WebCore.pri:
        * features.pri:

2011-10-10  Andreas Kling  <kling@webkit.org>

        Shrink WebCore::Node on 64-bit.
        https://bugs.webkit.org/show_bug.cgi?id=69768

        Reviewed by Antti Koivisto.

        Rearrange TreeShared and Node members so that the node flags fall
        into the padding at the end of TreeShared on 64-bit, reducing the
        size of Node (and all subclasses) by 8 bytes.

        * dom/Document.h:
        (WebCore::Node::Node):
        * dom/Node.h:
        * platform/TreeShared.h:
        (WebCore::TreeShared::TreeShared):

2011-10-11  Kent Tamura  <tkent@chromium.org>

        Move m_listItems and m_recalcListItems from SelectElementData to HTMLSelectElement
        https://bugs.webkit.org/show_bug.cgi?id=69812

        Reviewed by Ryosuke Niwa.

        Move SelectElementData::m_recalcListItems,
        SelectElementData::m_listItems, and related functions of
        SelectElementData class to HTMLSelectElement.

        Non-const listItems() was removed because it is used only in
        recalcListItemsInternal() and it can access m_listItems diretly.

        Static recalcListItems() is changed to non-static, and renamed to
        recalcListItemsInternal() in order to avoid confusion with the
        existing recalcListItems().

        No new tests, just a refactoring.

        * dom/SelectElement.cpp:
        Move checkListItems() and listItems() to HTMLSelectElement.
        (WebCore::SelectElementData::SelectElementData):
        Remove Initialization of m_recalcListItems.
        * dom/SelectElement.h:
        Move m_recalcListItems, m_listItems, and related functions to HTMLSelectElement.
        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::HTMLSelectElement):
        Initializes m_recalcListItems.
        (WebCore::HTMLSelectElement::recalcListItems):
        Rename the static recalcListItems() to recalcListItemsInternal().
        (WebCore::HTMLSelectElement::recalcListItemsIfNeeded):
        Use m_recalcListItems directly.
        (WebCore::HTMLSelectElement::nextSelectableListIndex):
        Update a listItems() callsite.
        (WebCore::HTMLSelectElement::previousSelectableListIndex): ditto.
        (WebCore::HTMLSelectElement::firstSelectableListIndex): ditto.
        (WebCore::HTMLSelectElement::lastSelectableListIndex): ditto.
        (WebCore::HTMLSelectElement::nextSelectableListIndexPageAway): ditto.
        (WebCore::HTMLSelectElement::saveLastSelection): ditto.
        (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex): ditto.
        (WebCore::HTMLSelectElement::updateListBoxSelection): ditto.
        (WebCore::HTMLSelectElement::listBoxOnChange): ditto.
        (WebCore::HTMLSelectElement::checkListItems):
        Moved from SelectElementData.
        (WebCore::HTMLSelectElement::listItems): ditto.
        (WebCore::HTMLSelectElement::setRecalcListItems):
        Use m_recalcListItems directly.
        (WebCore::HTMLSelectElement::recalcListItemsInternal):
        - Make this non-static.
        - Renamed from recalcListItems() to avoid confilct with another recalcListItems().
        - Use m_recalcListItems and m_listItems directly.
        (WebCore::HTMLSelectElement::selectedIndex):
        Update a listItems() callsite.
        (WebCore::HTMLSelectElement::setSelectedIndexInternal): ditto.
        (WebCore::HTMLSelectElement::optionToListIndex): ditto.
        (WebCore::HTMLSelectElement::listToOptionIndex): ditto.
        (WebCore::HTMLSelectElement::deselectItemsWithoutValidation): ditto.
        (WebCore::HTMLSelectElement::saveFormControlState):
        Update callsites of listItems() and recalcListItems().
        (WebCore::HTMLSelectElement::restoreFormControlState):
        Update a listItems() callsite.
        (WebCore::HTMLSelectElement::appendFormData): ditto.
        (WebCore::HTMLSelectElement::reset): ditto.
        (WebCore::HTMLSelectElement::menuListDefaultEventHandler): ditto.
        (WebCore::HTMLSelectElement::updateSelectedState): ditto.
        (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): ditto.
        (WebCore::HTMLSelectElement::lastSelectedListIndex): ditto.
        (WebCore::HTMLSelectElement::typeAheadFind): ditto.
        (WebCore::HTMLSelectElement::insertedIntoTree):
        Update a recalcListItems() callsite.
        (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
        Update a listItems() callsite.
        (WebCore::HTMLSelectElement::length): ditto.
        * html/HTMLSelectElement.h:
        Move m_recalcListItems, m_listItems, and related functions from SelectElementData.
        * html/HTMLSelectElementWin.cpp:
        (WebCore::HTMLSelectElement::platformHandleKeydownEvent):
        Update a listItems() callsite.

2011-10-11  Kenichi Ishibashi  <bashi@chromium.org>

        [Chromium] Complex script code path breaks on Windows XP when a CFF font is used
        https://bugs.webkit.org/show_bug.cgi?id=69497

        Reviewed by Kent Tamura.

        Don't use CFF webfonts when ScriptShape() can't handle it.
        ScriptShape() indicates us the case by setting fNoGlyphIndex to TRUE.
        If it's TRUE, we don't use the font. This could happen with early
        version of Uniscribe on WinXP.

        No new tests because the version of Uniscribe depends on environment.
        One can install newer version of Uniscribe on WinXP.

        * platform/graphics/chromium/UniscribeHelper.cpp:
        (WebCore::canUseGlyphIndex): Added.
        (WebCore::UniscribeHelper::shape): Don't use the shape result when canUseGlyphIndex() returns false.

2011-10-11  John Bauman  <jbauman@chromium.org>

        Fix crash with toDataURL to JPEG
        https://bugs.webkit.org/show_bug.cgi?id=69681

        Reviewed by Kenneth Russell.

        Move RefPtr declaration outside if to make sure image data still
        exists through CGImageToDataURL.

        * platform/graphics/cg/ImageBufferCG.cpp:
        (WebCore::ImageBuffer::toDataURL):

2011-10-10  Adam Barth  <abarth@webkit.org>

        Update test results.

        * bindings/scripts/test/V8/V8TestInterface.h:
        (WebCore::V8TestInterface::existingWrapper):
        (WebCore::V8TestInterface::wrap):
        * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
        (WebCore::V8TestMediaQueryListListener::existingWrapper):
        (WebCore::V8TestMediaQueryListListener::wrap):
        * bindings/scripts/test/V8/V8TestObj.cpp:
        (WebCore::TestObjInternal::readOnlyTestObjAttrAttrGetter):
        (WebCore::TestObjInternal::cachedAttribute1AttrGetter):
        (WebCore::TestObjInternal::cachedAttribute2AttrGetter):
        * bindings/scripts/test/V8/V8TestObj.h:
        (WebCore::V8TestObj::existingWrapper):
        (WebCore::V8TestObj::wrap):
        * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
        (WebCore::V8TestSerializedScriptValueInterface::existingWrapper):
        (WebCore::V8TestSerializedScriptValueInterface::wrap):

2011-10-10  Abhishek Arya  <inferno@chromium.org>

        Style not updated on text fragment in :first-letter
        nested in :before table.
        https://bugs.webkit.org/show_bug.cgi?id=69540

        Reviewed by Dan Bernstein.

        Test: fast/css-generated-content/first-letter-in-nested-before-table.html

        * rendering/RenderObjectChildList.cpp:
        (WebCore::RenderObjectChildList::updateBeforeAfterContent):

2011-10-10  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r97121.
        http://trac.webkit.org/changeset/97121
        https://bugs.webkit.org/show_bug.cgi?id=69815

        Many layout tests failed (Requested by tkent on #webkit).

        * dom/SelectElement.cpp:
        (WebCore::SelectElementData::SelectElementData):
        (WebCore::SelectElementData::checkListItems):
        (WebCore::SelectElementData::listItems):
        * dom/SelectElement.h:
        (WebCore::SelectElementData::shouldRecalcListItems):
        (WebCore::SelectElementData::setShouldRecalcListItems):
        (WebCore::SelectElementData::rawListItems):
        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::HTMLSelectElement):
        (WebCore::HTMLSelectElement::recalcListItems):
        (WebCore::HTMLSelectElement::recalcListItemsIfNeeded):
        (WebCore::HTMLSelectElement::nextSelectableListIndex):
        (WebCore::HTMLSelectElement::previousSelectableListIndex):
        (WebCore::HTMLSelectElement::firstSelectableListIndex):
        (WebCore::HTMLSelectElement::lastSelectableListIndex):
        (WebCore::HTMLSelectElement::nextSelectableListIndexPageAway):
        (WebCore::HTMLSelectElement::saveLastSelection):
        (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
        (WebCore::HTMLSelectElement::updateListBoxSelection):
        (WebCore::HTMLSelectElement::listBoxOnChange):
        (WebCore::HTMLSelectElement::setRecalcListItems):
        (WebCore::HTMLSelectElement::selectedIndex):
        (WebCore::HTMLSelectElement::setSelectedIndexInternal):
        (WebCore::HTMLSelectElement::optionToListIndex):
        (WebCore::HTMLSelectElement::listToOptionIndex):
        (WebCore::HTMLSelectElement::deselectItemsWithoutValidation):
        (WebCore::HTMLSelectElement::saveFormControlState):
        (WebCore::HTMLSelectElement::restoreFormControlState):
        (WebCore::HTMLSelectElement::appendFormData):
        (WebCore::HTMLSelectElement::reset):
        (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
        (WebCore::HTMLSelectElement::updateSelectedState):
        (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
        (WebCore::HTMLSelectElement::lastSelectedListIndex):
        (WebCore::HTMLSelectElement::typeAheadFind):
        (WebCore::HTMLSelectElement::insertedIntoTree):
        (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
        (WebCore::HTMLSelectElement::length):
        * html/HTMLSelectElement.h:
        (WebCore::HTMLSelectElement::listItems):
        * html/HTMLSelectElementWin.cpp:
        (WebCore::HTMLSelectElement::platformHandleKeydownEvent):

2011-10-10  Kent Tamura  <tkent@chromium.org>

        Move m_listItems and m_recalcListItems from SelectElementData to HTMLSelectElement
        https://bugs.webkit.org/show_bug.cgi?id=69812

        Reviewed by Ryosuke Niwa.

        Move SelectElementData::m_recalcListItems,
        SelectElementData::m_listItems, and related functions of
        SelectElementData class to HTMLSelectElement.

        Non-const listItems() was removed because it is used only in
        recalcListItemsInternal() and it can access m_listItems diretly.

        Static recalcListItems() is changed to non-static, and renamed to
        recalcListItemsInternal() in order to avoid confusion with the
        existing recalcListItems().

        No new tests, just a refactoring.

        * dom/SelectElement.cpp:
        Move checkListItems() and listItems() to HTMLSelectElement.
        (WebCore::SelectElementData::SelectElementData):
        Remove Initialization of m_recalcListItems.
        * dom/SelectElement.h:
        Move m_recalcListItems, m_listItems, and related functions to HTMLSelectElement.
        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::HTMLSelectElement):
        Initializes m_recalcListItems.
        (WebCore::HTMLSelectElement::recalcListItems):
        Rename the static recalcListItems() to recalcListItemsInternal().
        (WebCore::HTMLSelectElement::recalcListItemsIfNeeded):
        Use m_recalcListItems directly.
        (WebCore::HTMLSelectElement::nextSelectableListIndex):
        Update a listItems() callsite.
        (WebCore::HTMLSelectElement::previousSelectableListIndex): ditto.
        (WebCore::HTMLSelectElement::firstSelectableListIndex): ditto.
        (WebCore::HTMLSelectElement::lastSelectableListIndex): ditto.
        (WebCore::HTMLSelectElement::nextSelectableListIndexPageAway): ditto.
        (WebCore::HTMLSelectElement::saveLastSelection): ditto.
        (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex): ditto.
        (WebCore::HTMLSelectElement::updateListBoxSelection): ditto.
        (WebCore::HTMLSelectElement::listBoxOnChange): ditto.
        (WebCore::HTMLSelectElement::checkListItems):
        Moved from SelectElementData.
        (WebCore::HTMLSelectElement::listItems): ditto.
        (WebCore::HTMLSelectElement::setRecalcListItems):
        Use m_recalcListItems directly.
        (WebCore::HTMLSelectElement::recalcListItemsInternal):
        - Make this non-static.
        - Renamed from recalcListItems() to avoid confilct with another recalcListItems().
        - Use m_recalcListItems and m_listItems directly.
        (WebCore::HTMLSelectElement::selectedIndex):
        Update a listItems() callsite.
        (WebCore::HTMLSelectElement::setSelectedIndexInternal): ditto.
        (WebCore::HTMLSelectElement::optionToListIndex): ditto.
        (WebCore::HTMLSelectElement::listToOptionIndex): ditto.
        (WebCore::HTMLSelectElement::deselectItemsWithoutValidation): ditto.
        (WebCore::HTMLSelectElement::saveFormControlState):
        Update callsites of listItems() and recalcListItems().
        (WebCore::HTMLSelectElement::restoreFormControlState):
        Update a listItems() callsite.
        (WebCore::HTMLSelectElement::appendFormData): ditto.
        (WebCore::HTMLSelectElement::reset): ditto.
        (WebCore::HTMLSelectElement::menuListDefaultEventHandler): ditto.
        (WebCore::HTMLSelectElement::updateSelectedState): ditto.
        (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): ditto.
        (WebCore::HTMLSelectElement::lastSelectedListIndex): ditto.
        (WebCore::HTMLSelectElement::typeAheadFind): ditto.
        (WebCore::HTMLSelectElement::insertedIntoTree):
        Update a recalcListItems() callsite.
        (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
        Update a listItems() callsite.
        (WebCore::HTMLSelectElement::length): ditto.
        * html/HTMLSelectElement.h:
        Move m_recalcListItems, m_listItems, and related functions from SelectElementData.
        * html/HTMLSelectElementWin.cpp:
        (WebCore::HTMLSelectElement::platformHandleKeydownEvent):
        Update a listItems() callsite.

2011-10-10  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/10246137> Duplicate ::after content when both ::before and ::after are styled as table parts

        Reviewed by Sam Weinig.

        Test: fast/css-generated-content/table-parts-before-and-after.html

        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::addChild): Prevented table part childern after a ::before table from being merged
        into it.
        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::addChild): Prevented children after a ::before table section from being merged
        into it.

2011-10-10  Nate Chapin  <japhet@chromium.org>

        Most of the functions in CachedResourceClient are specific
        to a single type of CachedResource. Move these callbacks into
        separate subclasses of CachedResourceClient, and leave only
        the common callback (notifyFinished) in the base class.
        https://bugs.webkit.org/show_bug.cgi?id=69790

        Reviewed by Adam Barth.

        No new tests, no functionality changed intended.

        * css/CSSFontFaceSource.h:
        * css/CSSImageValue.h:
        * css/CSSImportRule.h:
        * dom/ProcessingInstruction.cpp:
        * dom/ProcessingInstruction.h:
        * html/HTMLLinkElement.h:
        * html/ImageDocument.h:
        * loader/ImageLoader.h:
        * loader/cache/CachedCSSStyleSheet.cpp:
        * loader/cache/CachedCSSStyleSheet.h:
        * loader/cache/CachedFont.cpp:
        * loader/cache/CachedFont.h:
        * loader/cache/CachedImage.cpp:
        * loader/cache/CachedImage.h:
        * loader/cache/CachedResourceClient.h:
        * loader/cache/CachedXSLStyleSheet.cpp:
        * loader/cache/CachedXSLStyleSheet.h:
        * platform/chromium/ClipboardChromium.h:
        * platform/gtk/ClipboardGtk.h:
        * platform/mac/ClipboardMac.h:
        * platform/qt/ClipboardQt.h:
        * platform/win/ClipboardWin.h:
        * rendering/RenderObject.cpp:
        * rendering/RenderObject.h:
        * svg/SVGFEImageElement.h:
        * svg/SVGFontFaceUriElement.h:
        * xml/XSLImportRule.h:

2011-10-10  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r97087.
        http://trac.webkit.org/changeset/97087
        https://bugs.webkit.org/show_bug.cgi?id=69805

        failing assert on debug builds (Requested by simonjam on
        #webkit).

        * bindings/ScriptControllerBase.cpp:
        (WebCore::ScriptController::executeIfJavaScriptURL):
        * loader/DocumentWriter.cpp:
        (WebCore::DocumentWriter::replaceDocument):
        (WebCore::DocumentWriter::begin):
        * loader/DocumentWriter.h:

2011-10-10  Adam Barth  <abarth@webkit.org>

        [V8] CodeGeneratorV8 shouldn't hardcode the list of ActiveDOMObjects
        https://bugs.webkit.org/show_bug.cgi?id=69792

        Reviewed by Nate Chapin.

        We used to hard code the list of active DOM objects in the code
        generator, but now we have an IDL attribute.  This patch switches the
        code generator over to using the IDL attribute.

        * bindings/scripts/CodeGeneratorV8.pm:
        (GenerateHeader):
        (GenerateNormalAttrGetter):
        (GenerateImplementation):
        (GetDomMapFunction):

2011-10-10  Nico Weber  <thakis@chromium.org>

        PluginDocumentParser uses incorrect syntax for background color
        https://bugs.webkit.org/show_bug.cgi?id=69694

        Reviewed by Adam Barth.

        * html/PluginDocument.cpp:
        (WebCore::PluginDocumentParser::createDocumentStructure):

2011-10-10  Ryosuke Niwa  <rniwa@webkit.org>

        REGRESSION(r96870): editing/pasteboard/smart-paste-008.html fails on non-Mac
        https://bugs.webkit.org/show_bug.cgi?id=69587

        Reviewed by Enrica Casucci.

        Insert a space at the correct offset when startNode is a text node.

        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplaceSelectionCommand::addSpacesForSmartReplace):

2011-09-20  Jer Noble  <jer.noble@apple.com>

        MediaControlSeekButtonElement should support seeking by changing the playback rate.
        https://bugs.webkit.org/show_bug.cgi?id=63595

        Reviewed by Eric Carlson.

        Test: media/video-controls-scanning.html

        Add a new property to HTMLMediaElement, supportsScanning(), which returns whether the
        element is capable of playing its media at a rate greater than 1x. HTMLMediaElement passes
        this call through to MediaPlayer and MediaPlayerPrivate. If this property returns true, the
        built-in scanning controls can prefer to scan by changing the playbackRate, rather than by
        repeatedly seeking small amounts of time. Unless overridden by specific media engines, this
        property defaults to "false".

        * html/HTMLMediaElement.h:
        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::supportsScanning): Added.  Calls through to MediaPlayer.
        * platform/graphics/MediaPlayer.h:
        * platform/graphics/MediaPlayer.cpp:
        (WebCore::MediaPlayer::supportsScanning): Added. Calls through to MediaPlayerPrivate.
        * platform/graphics/MediaPlayerPrivate.h:
        (WebCore::MediaPlayerPrivateInterface::supportsScanning): Added. Defaults to "false".
        * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
        (WebCore::MediaPlayerPrivateAVFoundation::supportsScanning): Added.
        * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
        (WebCore::MediaPlayerPrivateQTKit::supportsScanning): Added.

        MediaControlSeekButtonElement now queries HTMLMediaElement::supportsScanning() to see if the
        media element can implement its seeking behavior by scanning the media at greater than 1x
        rate. Note whether the media was playing or paused when the seek begins, so that the playing
        state can be restored when seeking ends.  Instead of capturing the mouse after mouseDown, 
        the seek button now responds to setActive() and begins seeking when the button is active
        and stops when it becomes inactive.

        Some behaviors have changed: clicking on the seek button no longer causes the media element
        to pause; the media will end in the same state it began after the click.  cStepTime has been
        eliminated; Clicking the seek button will always skip by at least cSeekTime, or 0.2s.

        * html/shadow/MediaControlElements.cpp:
        (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement): Initialize new 
            ivars.
        (WebCore::MediaControlSeekButtonElement::defaultEventHandler): Mark mouseDown and mouseUp
            as defaultHandled, so as not to trigger drag start and drag end actions.
        (WebCore::MediaControlSeekButtonElement::setActive): Call startTimer or stopTimer based
            on whether the button is active or not.
        (WebCore::MediaControlSeekButtonElement::startTimer): Determine whether to scan or skip
            and start the seekTimer.
        (WebCore::MediaControlSeekButtonElement::stopTimer): Restore the playing state and
            stop the timer.
        (WebCore::MediaControlSeekButtonElement::seekTimerFired): Depending on whether we're 
            scanning or skipping, jump ahead or change the playback rate.
        * html/shadow/MediaControlElements.h:

2011-10-10  Mark Hahnenberg  <mhahnenberg@apple.com>

        Remove getCallDataVirtual methods
        https://bugs.webkit.org/show_bug.cgi?id=69186

        Reviewed by Geoffrey Garen.

        No new tests.

        Removed all getCallDataVirtual methods and replaced their call sites 
        with an explicit lookup in the MethodTable.

        * WebCore.exp.in:
        * bindings/js/JSCallbackData.cpp:
        (WebCore::JSCallbackData::invokeCallback):
        * bindings/js/JSCustomXPathNSResolver.cpp:
        (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
        * bindings/js/JSErrorHandler.cpp:
        (WebCore::JSErrorHandler::handleEvent):
        * bindings/js/JSEventListener.cpp:
        (WebCore::JSEventListener::handleEvent):
        * bindings/js/JSHTMLAllCollectionCustom.cpp:
        * bindings/js/JSHTMLAppletElementCustom.cpp:
        * bindings/js/JSHTMLEmbedElementCustom.cpp:
        * bindings/js/JSHTMLObjectElementCustom.cpp:
        * bindings/js/JSInjectedScriptHostCustom.cpp:
        (WebCore::JSInjectedScriptHost::evaluate):
        * bindings/js/JSPluginElementFunctions.cpp:
        (WebCore::runtimeObjectGetCallData):
        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateHeader):
        * bridge/objc/objc_runtime.h:
        * bridge/objc/objc_runtime.mm:
        * bridge/qt/qt_runtime.cpp:
        (JSC::Bindings::QtRuntimeConnectionMethod::call):
        (JSC::Bindings::isJavaScriptFunction):
        * bridge/qt/qt_runtime.h:
        (JSC::Bindings::QtRuntimeMetaMethod::create):
        (JSC::Bindings::QtRuntimeMetaMethod::createStructure):
        (JSC::Bindings::QtRuntimeConnectionMethod::create):
        (JSC::Bindings::QtRuntimeConnectionMethod::createStructure):
        * bridge/runtime_method.cpp:
        * bridge/runtime_method.h:
        * bridge/runtime_object.cpp:
        * bridge/runtime_object.h:

2011-10-06  Jer Noble  <jer.noble@apple.com>

        media/video-loop.html is failing on Lion because of negative currentTime()
        https://bugs.webkit.org/show_bug.cgi?id=69468

        Reviewed by Darin Adler.

        No new tests. Covered by media/video-loop.html test.

        AVFoundation will occasionally return small, negative current times during loop operations.
        Clean up these negative times before returning the currentTime.

        * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
        (WebCore::MediaPlayerPrivateAVFoundationObjC::currentTime):

2011-10-10  Jeremy Apthorp  <jeremya@chromium.org>

        Exiting fullscreen shouldn't crash if the element that was fullscreened
        had associated anonymous blocks.
        https://bugs.webkit.org/show_bug.cgi?id=68503

        Reviewed by Simon Fraser.

        Test: fullscreen/full-screen-render-inline.html
        Test: fullscreen/parent-flow-inline-with-block-child.html

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::moveChildTo):
        (WebCore::RenderBlock::moveChildrenTo):
        * rendering/RenderBlock.h:
        (WebCore::RenderBlock::moveChildTo):
        (WebCore::RenderBlock::moveAllChildrenTo):
        (WebCore::RenderBlock::moveChildrenTo):
        * rendering/RenderFullScreen.cpp:
        (RenderFullScreen::unwrapRenderer):
        Move all children back to the parent, not just the firstChild.

2011-10-10  Sergey Glazunov  <serg.glazunov@gmail.com>

        ScriptController::executeIfJavaScriptURL gets confused by synchronous frame loads
        https://bugs.webkit.org/show_bug.cgi?id=69777

        Reviewed by Adam Barth.

        Test: http/tests/security/xss-DENIED-synchronous-frame-load-in-javascript-url.html

        * bindings/ScriptControllerBase.cpp:
        (WebCore::ScriptController::executeIfJavaScriptURL):
        * loader/DocumentWriter.cpp:
        (WebCore::DocumentWriter::replaceDocument):
        (WebCore::DocumentWriter::begin):
        * loader/DocumentWriter.h:

2011-10-10  Nayan Kumar K  <nayankk@motorola.com>

        Add missing ifdef for JAVASCRIPT_DEBUGGER feature.
        https://bugs.webkit.org/show_bug.cgi?id=69758

        Reviewed by Adam Barth.

        No new tests added since this is a build failure fix.

        * bindings/v8/custom/V8ScriptProfileCustom.cpp:
        * bindings/v8/custom/V8ScriptProfileNodeCustom.cpp:

2011-10-10  Simon Fraser  <simon.fraser@apple.com>

        REGRESSION(96070) 25% intl1 PLT regression from scrollbar invalidation
        https://bugs.webkit.org/show_bug.cgi?id=69238

        Reviewed by Darin Adler.

        Fix PLT regression from additional scrollbars invalidations.
        
        Don't invalidate the scrollbar rect from setHasHorizontalScrollbar()
        and setHasVerticalScrollbar(), because this is called during FrameView
        teardown, at which point the invalidation is redundant.
        
        Instead, invalidate from ScrollView::updateScrollbars(), which is
        called only when scrollbars change because of size or layout
        changes.

        * platform/ScrollView.cpp:
        (WebCore::ScrollView::setHasHorizontalScrollbar):
        (WebCore::ScrollView::setHasVerticalScrollbar):
        (WebCore::ScrollView::updateScrollbars):

2011-10-10  Abhishek Arya  <inferno@chromium.org>

        Style for updated due to inability to locate
        :before content in presence of listmarkers and runins.
        https://bugs.webkit.org/show_bug.cgi?id=68624

        Reviewed by Dan Bernstein.

        Tests: fast/lists/inline-before-content-after-list-marker.html
               fast/runin/runin-between-list-marker-and-before-content.html
               fast/runin/runin-into-div-with-float-child.html
               fast/runin/runin-not-go-into-float.html

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::handleRunInChild): Fix as per spec that
        we should not be skipping over floating/positioned renderers to
        push runins into neighbouring block. This matches Opera renderings.
        * rendering/RenderObject.cpp: Add const to parameter variable
        to make call from beforePseudoElementRenderer easier. Also matches
        CounterNode.h definition.
        (WebCore::RenderObject::nextInPreOrder):
        (WebCore::RenderObject::nextInPreOrderAfterChildren):
        * rendering/RenderObject.h: Same const addition.
        * rendering/RenderObjectChildList.cpp:
        (WebCore::RenderObjectChildList::beforePseudoElementRenderer):
        Remove skipping of floating/positioned renderers, similar to
        handleRunIn. Revert code change in r94857 and add better next
        sibling iterator. This addresses the layouttest in r94857 where
        :before content is in its own anonymous rendertable.

2011-10-10  Abhishek Arya  <inferno@chromium.org>

        Handle insertion into an anonymous table part that
        is followed by a non-anonymous block correctly.
        https://bugs.webkit.org/show_bug.cgi?id=69536

        Reviewed by Dan Bernstein.

        Tests: fast/table/table-insert-before-non-anonymous-block.html

        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::addChild):
        * rendering/RenderTableRow.cpp:
        (WebCore::RenderTableRow::addChild):
        * rendering/RenderTableSection.cpp:
        (WebCore::RenderTableSection::addChild):
        (WebCore::RenderTableSection::splitColumn):

2011-10-10  Kent Tamura  <tkent@chromium.org>

        Make static functions in HTMLSelectElement.cpp member functions of HTMLSelectElement class
        https://bugs.webkit.org/show_bug.cgi?id=69755

        Reviewed by Ryosuke Niwa.

        
        No new tests, just a refactoring.

        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::nextValidIndex):
        Make this a static member function of HTMLSelectElement.
        (WebCore::HTMLSelectElement::nextSelectableListIndex):
        Make this a member function of HTMLSelectElement.
        (WebCore::HTMLSelectElement::previousSelectableListIndex): ditto.
        (WebCore::HTMLSelectElement::firstSelectableListIndex): ditto.
        (WebCore::HTMLSelectElement::lastSelectableListIndex): ditto.
        (WebCore::HTMLSelectElement::nextSelectableListIndexPageAway): ditto.
        (WebCore::HTMLSelectElement::selectAll): Update callsite of the above functions.
        (WebCore::HTMLSelectElement::setSelectedIndexInternal): ditto.
        (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): ditto.
        * html/HTMLSelectElement.h:
         - Add the above function declarations.
         - Move SkipDirection definition from HTMLSelectElement.cpp.

2011-10-10  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: annotate DOMAgent, Debugger(Presentation)Model with types.
        https://bugs.webkit.org/show_bug.cgi?id=69726

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/ApplicationCacheItemsView.js:
        (WebInspector.ApplicationCacheItemsView):
        * inspector/front-end/AuditsPanel.js:
        (WebInspector.AuditsPanel):
        * inspector/front-end/BreakpointManager.js:
        (WebInspector.BreakpointManager.prototype._breakpointResolved):
        * inspector/front-end/CSSStyleModel.js:
        * inspector/front-end/CompilerSourceMapping.js:
        (WebInspector.CompilerSourceMapping.prototype.compiledLocationToSourceLocation):
        (WebInspector.CompilerSourceMapping.prototype.sourceLocationToCompiledLocation):
        (WebInspector.CompilerSourceMapping.prototype.sources):
        * inspector/front-end/ConsoleView.js:
        (WebInspector.ConsoleView.prototype._completions.evaluated):
        (WebInspector.ConsoleView.prototype._completions.receivedPropertyNamesFromEval):
        (WebInspector.ConsoleView.prototype.evalInInspectedWindow):
        * inspector/front-end/CookieItemsView.js:
        (WebInspector.CookieItemsView):
        * inspector/front-end/DOMAgent.js:
        (WebInspector.DOMNode.prototype.isXMLNode):
        (WebInspector.DOMDocument):
        (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable.onDocumentAvailable):
        (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable):
        (WebInspector.DOMDispatcher.prototype.characterDataModified):
        (WebInspector.DOMDispatcher.prototype.childNodeCountUpdated):
        (WebInspector.DOMDispatcher.prototype.childNodeInserted):
        (WebInspector.DOMDispatcher.prototype.childNodeRemoved):
        * inspector/front-end/DOMStorageItemsView.js:
        (WebInspector.DOMStorageItemsView):
        * inspector/front-end/DatabaseTableView.js:
        (WebInspector.DatabaseTableView):
        * inspector/front-end/DebuggerModel.js:
        (WebInspector.DebuggerModel):
        (WebInspector.DebuggerPausedDetails):
        (WebInspector.DebuggerModel.prototype.reset):
        (WebInspector.DebuggerModel.prototype.get callFrames):
        (WebInspector.DebuggerModel.prototype._pausedScript):
        (WebInspector.DebuggerModel.prototype._resumedScript):
        (WebInspector.DebuggerModel.prototype._parsedScriptSource):
        (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
        (WebInspector.DebuggerDispatcher.prototype.scriptParsed):
        (WebInspector.DebuggerDispatcher.prototype.breakpointResolved):
        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel.prototype._parsedScriptSource):
        (WebInspector.DebuggerPresentationModel.prototype._failedToParseScriptSource):
        (WebInspector.DebuggerPresentationModel.prototype._sourceMappingUpdated):
        (WebInspector.DebuggerPresentationModel.prototype._updateBreakpointsAfterLiveEdit):
        (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
        (WebInspector.DebuggerPresentationModel.prototype._createPresentationMessage):
        (WebInspector.PresentationConsoleMessage):
        (WebInspector.PresentationCallFrame.prototype.evaluate):
        (WebInspector.DebuggerPresentationModel.Linkifier.prototype._updateSourceAnchors):
        * inspector/front-end/ElementsPanel.js:
        (WebInspector.ElementsPanel):
        (WebInspector.ElementsPanel.prototype._documentUpdated.selectLastSelectedNode):
        (WebInspector.ElementsPanel.prototype._documentUpdated):
        * inspector/front-end/NetworkPanel.js:
        * inspector/front-end/Object.js:
        (WebInspector.Object.prototype.dispatchEventToListeners):
        (WebInspector.Event):
        (WebInspector.Event.prototype.stopPropagation):
        (WebInspector.Event.prototype.preventDefault):
        * inspector/front-end/RawSourceCode.js:
        (WebInspector.RawSourceCode.SourceMapping):
        (WebInspector.RawSourceCode.SourceMapping.prototype.rawLocationToUILocation):
        (WebInspector.RawSourceCode.SourceMapping.prototype.uiLocationToRawLocation):
        (WebInspector.RawSourceCode.PlainSourceMapping.prototype.rawLocationToUILocation):
        (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiLocationToRawLocation):
        (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.rawLocationToUILocation):
        (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.rawLocationToUILocation):
        (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.uiLocationToRawLocation):
        * inspector/front-end/Script.js:
        (WebInspector.Script):
        (WebInspector.Script.prototype.requestSource):
        (WebInspector.Script.prototype.searchInContent):
        (WebInspector.Script.prototype.editSource):
        * inspector/front-end/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
        * inspector/front-end/TimelinePanel.js:
        (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
        * inspector/front-end/UISourceCode.js:
        (WebInspector.UISourceCode):
        (WebInspector.ContentProvider.SearchMatch):
        * inspector/front-end/WatchExpressionsSidebarPane.js:
        (WebInspector.WatchExpressionsSection.prototype.update):
        * inspector/front-end/externs.js:
        * inspector/generate-protocol-externs:

2011-10-10  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: Linkifier.reset throw an exception if it is called after reset of debuggerPresentationModel.
        https://bugs.webkit.org/show_bug.cgi?id=69756

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel.Linkifier.prototype.reset):

2011-09-28  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: RawSourceCode could be mapped to multiple sources.
        https://bugs.webkit.org/show_bug.cgi?id=68526

        Replace SourceMapping.uiSourceCode with SourceMapping.uiSourceCodeList as there could be more
        then one UISourceCode associated with a RawSourceCode.

        Reviewed by Pavel Feldman.

        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel.prototype._sourceMappingUpdated):
        (WebInspector.DebuggerPresentationModel.prototype._updateSourceMapping):
        (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
        (WebInspector.PresentationCallFrame.prototype.get url):
        (WebInspector.DebuggerPresentationModelResourceBinding.prototype.canSetContent):
        (WebInspector.DebuggerPresentationModelResourceBinding.prototype.setContent):
        * inspector/front-end/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced):
        * inspector/front-end/SourceFile.js:
        (WebInspector.RawSourceCode.prototype._saveSourceMapping):
        (WebInspector.RawSourceCode.PlainSourceMapping):
        (WebInspector.RawSourceCode.PlainSourceMapping.prototype.rawLocationToUILocation):
        (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiSourceCodeList):
        (WebInspector.RawSourceCode.FormattedSourceMapping):
        (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.rawLocationToUILocation):
        (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiSourceCodeList):

2011-10-10  Andreas Kling  <kling@webkit.org>

        Shrink RenderLayer and ScrollableArea.
        https://bugs.webkit.org/show_bug.cgi?id=69759

        Reviewed by Antti Koivisto.

        Rearrange the members of RenderLayer and its base class ScrollableArea
        to maximize struct packing, shrinking RenderLayer by one CPU word on
        32-bit (and two on 64-bit.)

        This reduces memory consumption by 134 kB (on 64-bit) when loading the
        full HTML5 spec.

        * platform/ScrollableArea.h:
        (WebCore::ScrollableArea::verticalScrollElasticity):
        (WebCore::ScrollableArea::horizontalScrollElasticity):
        (WebCore::ScrollableArea::scrollbarOverlayStyle):

            Cast the now-bitfield members to the appropriate enum types.

        * rendering/RenderLayer.h:
        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::RenderLayer):

            Move shouldBeNormalFlowOnly() call out of initializer list since it
            depends on m_renderer being initialized.

2011-10-10  Cary Clark  <caryclark@google.com>

        [Skia on Chromium Mac] Set canExpandAroundIdeographsInComplexText to true
        https://bugs.webkit.org/show_bug.cgi?id=69656
        https://bugs.webkit.org/show_bug.cgi?id=62987
        https://bugs.webkit.org/show_bug.cgi?id=62889

        Reviewed by Stephen White.

        Skia on Linux and Windows uses different font engines from
        Skia on Mac. After determining that the underlying CoreText
        can handle it, enabling this allows justification to work
        correctly.

        Tests: fast/text/justify-ideograph-complex.html

        * platform/graphics/skia/FontSkia.cpp:
        (WebCore::Font::canExpandAroundIdeographsInComplexText):

2011-10-10  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: memory leak in Resource panel.
        https://bugs.webkit.org/show_bug.cgi?id=69754

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/ResourcesPanel.js:
        (WebInspector.ResourcesPanel.prototype.reset):
        * inspector/front-end/View.js:
        (WebInspector.View.prototype.childViews):

2011-10-06  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: saving JavaScript after live edit resets scroller position.
        https://bugs.webkit.org/show_bug.cgi?id=69340

        Do not recreate SourceFrame when content is changed. Instead, update text model in existing SourceFrame.

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel.prototype.setScriptSource.didEditScriptSource):
        (WebInspector.DebuggerPresentationModel.prototype.setScriptSource):
        * inspector/front-end/JavaScriptSourceFrame.js:
        (WebInspector.JavaScriptSourceFrame):
        * inspector/front-end/RawSourceCode.js:
        (WebInspector.RawSourceCode.prototype.setCompilerSourceMappingProvider):
        * inspector/front-end/SourceFrame.js:
        (WebInspector.SourceFrame.prototype._setReadOnly):
        (WebInspector.SourceFrame.prototype.contentChanged):
        * inspector/front-end/UISourceCode.js:
        (WebInspector.UISourceCode.prototype.contentChanged):

2011-10-10  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed test fix for r97050.

        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):

2011-10-10  Andreas Kling  <kling@webkit.org>

        Shrink RenderListItem on 64-bit.
        https://bugs.webkit.org/show_bug.cgi?id=69751

        Reviewed by Kenneth Rohde Christiansen.

        Rearrange members to utilize the padding at the end of RenderBlock.
        This shrinks RenderListItem by 8 bytes on 64-bit, reducing memory consumption
        by 60 kB when loading the full HTML5 spec.

        * rendering/RenderListItem.h:

2011-10-10  Andreas Kling  <kling@webkit.org>

        Shrink RootInlineBox.
        https://bugs.webkit.org/show_bug.cgi?id=69707

        Reviewed by Antti Koivisto.

        Move the bitfields from RootInlineBox up into its base class (InlineFlowBox.)
        This shrinks RootInlineBox by one CPU word without growing InlineFlowBox.
        Enum bitfields were changed to "unsigned" for the MSVC signedness quirk.

        Also move one 32-bit member to the head of RootInlineBox so it falls into the
        padding at the end of InlineFlowBox on 64-bit.

        This reduces memory consumption by 780 kB (on 64-bit) when loading the full
        HTML5 spec.

        * rendering/InlineFlowBox.h:
        (WebCore::InlineFlowBox::InlineFlowBox):
        * rendering/RootInlineBox.cpp:
        (WebCore::RootInlineBox::RootInlineBox):
        (WebCore::RootInlineBox::lineBreakBidiStatus):
        * rendering/RootInlineBox.h:

2011-10-10  Pavel Podivilov  <podivilov@chromium.org>

        Unreviewed, attempt to fix chromium mac build after r97034.

        * platform/ScrollAnimatorNone.h:

2011-10-10  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: small memory leak in scripts panel.
        https://bugs.webkit.org/show_bug.cgi?id=69744

        Scripts panel doesn't clean the list of child views.

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
        * inspector/front-end/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype._uiSourceCodeRemoved):

2011-10-07  Yury Semikhatsky  <yurys@chromium.org>

        Web Inspector: allow to start WorkerContext paused
        https://bugs.webkit.org/show_bug.cgi?id=69635

        Allow to pause WorkerContext on start.

        Reviewed by Pavel Feldman.

        * bindings/v8/ScriptDebugServer.cpp:
        (WebCore::ScriptDebugServer::setPauseOnNextStatement):
        * bindings/v8/WorkerScriptDebugServer.cpp:
        (WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
        * bindings/v8/WorkerScriptDebugServer.h:
        * inspector/InspectorController.cpp:
        (WebCore::InspectorController::InspectorController):
        * inspector/InspectorInstrumentation.cpp:
        (WebCore::InspectorInstrumentation::willEvaluateWorkerScript):
        * inspector/InspectorInstrumentation.h:
        * inspector/InspectorRuntimeAgent.cpp:
        (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
        (WebCore::InspectorRuntimeAgent::~InspectorRuntimeAgent):
        (WebCore::InspectorRuntimeAgent::pauseWorkerContext): this method will start
        running worker message loop in "debug" mode, i.e. it will process only inspector
        tasks until method InspectorRuntimeAgent::resume is called.
        (WebCore::InspectorRuntimeAgent::resume):
        * inspector/InspectorRuntimeAgent.h:
        * inspector/WorkerDebuggerAgent.cpp:
        * inspector/WorkerDebuggerAgent.h:
        * inspector/WorkerInspectorController.cpp:
        (WebCore::WorkerInspectorController::WorkerInspectorController):
        (WebCore::WorkerInspectorController::resume): method which is called from WebKit layer
        when it is known that inspector state was restored and it is OK to resume worker execution.
        * inspector/WorkerInspectorController.h:
        * workers/DedicatedWorkerThread.cpp:
        (WebCore::DedicatedWorkerThread::create):
        (WebCore::DedicatedWorkerThread::DedicatedWorkerThread):
        * workers/DedicatedWorkerThread.h:
        * workers/SharedWorkerThread.cpp:
        (WebCore::SharedWorkerThread::create):
        (WebCore::SharedWorkerThread::SharedWorkerThread):
        * workers/SharedWorkerThread.h:
        * workers/WorkerMessagingProxy.cpp:
        (WebCore::WorkerMessagingProxy::startWorkerContext):
        (WebCore::WorkerMessagingProxy::disconnectFromInspector):
        (WebCore::WorkerMessagingProxy::sendMessageToInspector):
        * workers/WorkerThread.cpp:
        (WebCore::WorkerThreadStartupData::create):
        (WebCore::WorkerThreadStartupData::WorkerThreadStartupData):
        (WebCore::WorkerThread::WorkerThread): WorkerThread is passed a booleand flag indicating
        whether the context should be paused and wait for explicit resume command before it
        starts running its script.
        (WebCore::WorkerThread::workerThread):
        * workers/WorkerThread.h:

2011-10-10  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r97045.
        http://trac.webkit.org/changeset/97045
        https://bugs.webkit.org/show_bug.cgi?id=69746

        makes apple bots very crashy :( (Requested by kling on
        #webkit).

        * css/CSSStyleApplyProperty.cpp:
        (WebCore::ApplyPropertyColor::applyInheritValue):
        * page/animation/AnimationBase.cpp:
        (WebCore::PropertyWrapperMaybeInvalidColor::PropertyWrapperMaybeInvalidColor):
        (WebCore::PropertyWrapperSVGPaint::PropertyWrapperSVGPaint):
        (WebCore::AnimationBase::ensurePropertyMap):
        * platform/graphics/Color.h:
        (WebCore::Color::Color):
        * rendering/style/BorderValue.h:
        (WebCore::BorderValue::BorderValue):
        (WebCore::BorderValue::isTransparent):
        (WebCore::BorderValue::operator==):
        (WebCore::BorderValue::color):
        * rendering/style/OutlineValue.h:
        (WebCore::OutlineValue::operator==):
        * rendering/style/RenderStyle.h:
        (WebCore::InheritedFlags::setBorderLeftColor):
        (WebCore::InheritedFlags::setBorderRightColor):
        (WebCore::InheritedFlags::setBorderTopColor):
        (WebCore::InheritedFlags::setBorderBottomColor):
        (WebCore::InheritedFlags::setOutlineColor):
        (WebCore::InheritedFlags::setColumnRuleColor):
        (WebCore::InheritedFlags::fillPaintColor):
        (WebCore::InheritedFlags::strokePaintColor):
        (WebCore::InheritedFlags::borderLeftColor):
        (WebCore::InheritedFlags::borderRightColor):
        (WebCore::InheritedFlags::borderTopColor):
        (WebCore::InheritedFlags::borderBottomColor):
        (WebCore::InheritedFlags::backgroundColor):
        (WebCore::InheritedFlags::color):
        (WebCore::InheritedFlags::columnRuleColor):
        (WebCore::InheritedFlags::outlineColor):
        (WebCore::InheritedFlags::textEmphasisColor):
        (WebCore::InheritedFlags::textFillColor):
        (WebCore::InheritedFlags::textStrokeColor):
        (WebCore::InheritedFlags::stopColor):
        (WebCore::InheritedFlags::floodColor):
        (WebCore::InheritedFlags::lightingColor):

2011-10-06  Andreas Kling  <kling@webkit.org>

        Shrink BorderValue.
        https://bugs.webkit.org/show_bug.cgi?id=69521

        Reviewed by Antti Koivisto.

        Unroll BorderValue's Color member so we can pack the color's validity flag
        in BorderValue's bitfield.

        This shrinks BorderValue by 32 bit, which in turn shrinks BorderData by
        16 bytes. This reduces memory consumption by 760 kB when loading the full
        HTML5 spec.

        * platform/graphics/Color.h:
        (WebCore::Color::Color):

            Allow construction of Color objects with specific validity.

        * rendering/style/BorderValue.h:
        (WebCore::BorderValue::BorderValue):
        (WebCore::BorderValue::isTransparent):
        (WebCore::BorderValue::operator==):
        (WebCore::BorderValue::setColor):
        (WebCore::BorderValue::color):
        * rendering/style/OutlineValue.h:
        (WebCore::OutlineValue::operator==):

            Unroll m_color into BorderValue by splitting it into an RGBA32 and a bool.
            Made those variables private and added color(), setColor() accessors.

        * rendering/style/RenderStyle.h:
        (WebCore::InheritedFlags::setBorderLeftColor):
        (WebCore::InheritedFlags::setBorderRightColor):
        (WebCore::InheritedFlags::setBorderTopColor):
        (WebCore::InheritedFlags::setBorderBottomColor):
        (WebCore::InheritedFlags::setOutlineColor):
        (WebCore::InheritedFlags::setColumnRuleColor):

            Added a SET_BORDERVALUE_COLOR macro and use that instead of SET_VAR
            when setting BorderValue colors.

        (WebCore::InheritedFlags::fillPaintColor):
        (WebCore::InheritedFlags::strokePaintColor):
        (WebCore::InheritedFlags::borderLeftColor):
        (WebCore::InheritedFlags::borderRightColor):
        (WebCore::InheritedFlags::borderTopColor):
        (WebCore::InheritedFlags::borderBottomColor):
        (WebCore::InheritedFlags::backgroundColor):
        (WebCore::InheritedFlags::color):
        (WebCore::InheritedFlags::columnRuleColor):
        (WebCore::InheritedFlags::outlineColor):
        (WebCore::InheritedFlags::textEmphasisColor):
        (WebCore::InheritedFlags::textFillColor):
        (WebCore::InheritedFlags::textStrokeColor):
        (WebCore::InheritedFlags::stopColor):
        (WebCore::InheritedFlags::floodColor):
        (WebCore::InheritedFlags::lightingColor):

            Made color getters return "Color" instead of "const Color&" since
            BorderValue no longer has an actual object to return the reference to.

        * css/CSSStyleApplyProperty.cpp:
        (WebCore::ApplyPropertyColor::applyInheritValue):
        * page/animation/AnimationBase.cpp:
        (WebCore::PropertyWrapperColor::PropertyWrapperColor):
        (WebCore::PropertyWrapperColor::blend):
        (WebCore::PropertyWrapperMaybeInvalidColor::PropertyWrapperMaybeInvalidColor):
        (WebCore::PropertyWrapperSVGPaint::PropertyWrapperSVGPaint):
        (WebCore::AnimationBase::ensurePropertyMap):

            Adapt to RenderStyle color getters now returning "Color" instead of
            "const Color&".

2011-10-09  Yury Semikhatsky  <yurys@chromium.org>

        Missing m_notificationPresenter initialization in WorkerThread constructor
        https://bugs.webkit.org/show_bug.cgi?id=69741

        Added missing m_notificationPresenter(0)

        Reviewed by Pavel Feldman.

        * workers/WorkerThread.cpp:
        (WebCore::WorkerThread::WorkerThread):

2011-10-09  Daniel Bates  <dbates@webkit.org>

        Another attempt to fix the Leopard Intel Debug build after changeset 97034 <http://trac.webkit.org/changeset/97034>
        (https://bugs.webkit.org/show_bug.cgi?id=68035)

        * page/FrameView.cpp:
        (WebCore::FrameView::zoomAnimatorTransformChanged): Explicitly convert a double precision result
        to a single precision result. I am unsure if this fix is correct. We need to look into this some
        more. See <https://bugs.webkit.org/show_bug.cgi?id=69739> for more details.

2011-10-09  Daniel Bates  <dbates@webkit.org>

        Attempt to fix the Leopard Intel Debug build after changeset 97034 <http://trac.webkit.org/changeset/97034>
        (https://bugs.webkit.org/show_bug.cgi?id=68035)

        * page/FrameView.cpp:
        (WebCore::FrameView::zoomAnimatorTransformChanged): Explicitly convert double precision result to
        an integer. I am unsure if this fix is correct. We need to look into this some more. See
        <https://bugs.webkit.org/show_bug.cgi?id=69739> for more details.

2011-10-09  Luke Macpherson   <macpherson@chromium.org>

        Fix Lion, Leopard and Snow Leopard builds after changeset 97034 <http://trac.webkit.org/changeset/97034>
        (https://bugs.webkit.org/show_bug.cgi?id=68035)
        https://bugs.webkit.org/show_bug.cgi?id=69735

        Reviewed by Daniel Bates.

        * testing/Internals.cpp:
        Mark unused parameters to prevent compile errors when GESTURE_EVENTS and SMOOTH_SCROLLING are disabled.
        (WebCore::Internals::setEnableScrollAnimator):
        (WebCore::Internals::setZoomAnimatorTransform):
        (WebCore::Internals::setZoomParameters):

2011-10-09  Kent Tamura  <tkent@chromium.org>

        Remove redundant code of HTMLSelectElement.
        https://bugs.webkit.org/show_bug.cgi?id=69701

        Reviewed by Darin Adler.

        No new tests, just a refactoring.

        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::deselectItems):
        Rename inner deselectItems() to deselectItemsWithoutValidation().
        (WebCore::HTMLSelectElement::setSelectedIndex):
        Rename a callsite of another setSelectedIndex() to setSelectedIndexInternal().
        (WebCore::HTMLSelectElement::setSelectedIndexByUser):
        ditto, and update a callsite of updateSelectedState().
        (WebCore::HTMLSelectElement::listBoxSelectItem):
        Update a callsite of updateSelectedState().
        (WebCore::HTMLSelectElement::activeSelectionEndListIndex):
        Update a callsite of lastSelectedListIndex().
        (WebCore::HTMLSelectElement::selectAll):
        Update callsites of functions which are changed to non-static.
        (WebCore::HTMLSelectElement::saveLastSelection):
        Merge a static function and a non-static function.
        (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex): ditto.
        (WebCore::HTMLSelectElement::setActiveSelectionEndIndex): ditto.
        (WebCore::HTMLSelectElement::updateListBoxSelection): ditto.
        (WebCore::HTMLSelectElement::listBoxOnChange): ditto.
        (WebCore::HTMLSelectElement::menuListOnChange): ditto.
        (WebCore::HTMLSelectElement::scrollToSelection): ditto.
        (WebCore::HTMLSelectElement::setOptionsChangedOnRenderer): Made this non-static.
        (WebCore::HTMLSelectElement::setRecalcListItems):
        Merge a static function and a non-static function.
        (WebCore::HTMLSelectElement::selectedIndex): ditto.
        (WebCore::HTMLSelectElement::setSelectedIndexInternal):
        Made this non-static, and renamed from setSelectedIndex() because
        of conflict with an existing function.
        (WebCore::HTMLSelectElement::optionToListIndex):
        Merge a static function and a non-static function.
        (WebCore::HTMLSelectElement::listToOptionIndex): ditto.
        (WebCore::HTMLSelectElement::dispatchFocusEvent):
        Update a callsite of function which is changed to no-staic.
        (WebCore::HTMLSelectElement::dispatchBlurEvent): ditto.
        (WebCore::HTMLSelectElement::deselectItemsWithoutValidation):
        Made this non-static, and renamed from deselectItems() to avoid conflict.
        (WebCore::HTMLSelectElement::restoreFormControlState):
        Update a callsite of function which is changed to no-staic.
        (WebCore::HTMLSelectElement::reset): ditto.
        (WebCore::HTMLSelectElement::platformHandleKeydownEvent): Made this non-static.
        (WebCore::HTMLSelectElement::menuListDefaultEventHandler): ditto.
        (WebCore::HTMLSelectElement::updateSelectedState): ditto.
        (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): ditto.
        (WebCore::HTMLSelectElement::defaultEventHandler):
        Merged a static function and a non-static function.
        (WebCore::HTMLSelectElement::lastSelectedListIndex): Made this non-static.
        (WebCore::HTMLSelectElement::typeAheadFind): ditto.
        (WebCore::HTMLSelectElement::accessKeySetSelectedIndex): ditto.
        * html/HTMLSelectElement.h:
        * html/HTMLSelectElementWin.cpp:
        (WebCore::HTMLSelectElement::platformHandleKeydownEvent): Made this non-static.

2011-10-09  Adam Barth  <abarth@webkit.org>

        CSP should log unrecognized directives to the console
        https://bugs.webkit.org/show_bug.cgi?id=69728

        Reviewed by Sam Weinig.

        Several of the web developers who have been experimenting with CSP have
        run into trouble with directives we don't support.  For example, one
        developer was confused for a while why image-src didn't do what he
        expected.  Logging a message to the console will help these folks
        figure out what's going on.

        * page/ContentSecurityPolicy.cpp:
        (WebCore::ContentSecurityPolicy::reportUnrecognizedDirective):
        (WebCore::ContentSecurityPolicy::addDirective):
        * page/ContentSecurityPolicy.h:

2011-10-09  W. James MacLean  <wjmaclean@chromium.org>

        [chromium] Zoom animator front-end
        https://bugs.webkit.org/show_bug.cgi?id=68035

        Adds necessary components to ScrollAnimatorNone to support a zoom animation
        feature. Includes test infrastructure via testing/Internals to capture
        in-progress texture scaling (zoom-animator-scale-test.html) as well as a
        final view --- after pageScaleFactor has been applied --- in zoom-animator-scale-test2.html.

        Removes temporary test fields from Settings.

        Reviewed by Kenneth Russell.

        Test: platform/chromium/compositing/zoom-animator-scale-test2.html

        * page/EventHandler.cpp:
        (WebCore::EventHandler::handleGestureEvent):
        * page/FrameView.cpp:
        (WebCore::FrameView::zoomAnimatorTransformChanged):
        * page/FrameView.h:
        * page/Settings.cpp:
        (WebCore::Settings::Settings):
        * page/Settings.h:
        * platform/ScrollAnimator.cpp:
        (WebCore::ScrollAnimator::ScrollAnimator):
        (WebCore::ScrollAnimator::notifyZoomChanged):
        (WebCore::ScrollAnimator::zoomTranslation):
        (WebCore::ScrollAnimator::resetZoom):
        (WebCore::ScrollAnimator::setZoomParametersForTest):
        * platform/ScrollAnimator.h:
        (WebCore::ScrollAnimator::zoomScale):
        * platform/ScrollAnimatorNone.cpp:
        (WebCore::ScrollAnimatorNone::ZoomData::ZoomData):
        (WebCore::ScrollAnimatorNone::ZoomData::animateZoom):
        (WebCore::ScrollAnimatorNone::ScrollAnimatorNone):
        (WebCore::ScrollAnimatorNone::zoom):
        (WebCore::ScrollAnimatorNone::handleGestureEvent):
        (WebCore::ScrollAnimatorNone::animationTimerFired):
        * platform/ScrollAnimatorNone.h:
        * platform/ScrollableArea.cpp:
        (WebCore::ScrollableArea::zoomAnimatorTransformChanged):
        * platform/ScrollableArea.h:
        * testing/Internals.cpp:
        (WebCore::Internals::setEnableScrollAnimator):
        (WebCore::Internals::setZoomAnimatorTransform):
        (WebCore::Internals::getPageScaleFactor):
        (WebCore::Internals::setZoomParameters):
        * testing/Internals.h:
        * testing/Internals.idl:

2011-10-09  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/9484496> REGRESSION (WebKit2): Checkboxes and radio buttons are drawn 1 pixel too high, not repainted properly
        https://bugs.webkit.org/show_bug.cgi?id=69727

        Reviewed by Anders Carlsson.

        * platform/mac/ThemeMac.mm: Made WebCoreFlippedView an NSControl subclass so that the NSButtonCell
        used to draw checkboxes and radio buttons can make it its controlView, and consequently check and
        obey its flippedness.

2011-10-09  Benjamin Poulain  <benjamin@webkit.org>

        Do not compare the first glyph to itself in Font::drawGlyphBuffer()
        https://bugs.webkit.org/show_bug.cgi?id=69715

        Reviewed by Andreas Kling.

        When looking for glyphs with similar properties, we should
        skip the first one since the comparison of fontData 
        and offset will always fail.

        This is covered by the existing tests.

        * platform/graphics/FontFastPath.cpp:
        (WebCore::Font::drawGlyphBuffer):

2011-10-08  Justin Schuh  <jschuh@chromium.org>

        Make ThreadGlobalData members use OwnPtr
        https://bugs.webkit.org/show_bug.cgi?id=69710

        Reviewed by Adam Barth.

        No functional changes. No new tests required.

        * platform/ThreadGlobalData.cpp:
        (WebCore::ThreadGlobalData::ThreadGlobalData):
        (WebCore::ThreadGlobalData::~ThreadGlobalData):
        (WebCore::ThreadGlobalData::destroy):
        * platform/ThreadGlobalData.h:

2011-10-08  Mark Hahnenberg  <mhahnenberg@apple.com>

        Add static version of JSCell::getConstructData
        https://bugs.webkit.org/show_bug.cgi?id=69673

        Reviewed by Geoffrey Garen.

        No new tests.

        Added static version of getConstructData to all classes that 
        override it and changed the virtual versions to call the static 
        versions.  This is the first step in de-virtualizing JSCell::getConstructData.

        * bindings/js/JSAudioConstructor.cpp:
        (WebCore::JSAudioConstructor::getConstructData):
        * bindings/js/JSAudioConstructor.h:
        * bindings/js/JSImageConstructor.cpp:
        (WebCore::JSImageConstructor::getConstructData):
        * bindings/js/JSImageConstructor.h:
        * bindings/js/JSOptionConstructor.cpp:
        (WebCore::JSOptionConstructor::getConstructData):
        * bindings/js/JSOptionConstructor.h:
        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateConstructorDeclaration):
        (GenerateConstructorDefinition):
        * bindings/scripts/test/JS/JSTestInterface.cpp:
        (WebCore::JSTestInterfaceConstructor::getConstructData):
        * bridge/runtime_object.cpp:
        (JSC::Bindings::RuntimeObject::getConstructData):
        * bridge/runtime_object.h:

2011-10-08  Mark Hahnenberg  <mhahnenberg@apple.com>

        Add static version of JSCell::getOwnPropertySlot
        https://bugs.webkit.org/show_bug.cgi?id=69593

        Reviewed by Geoffrey Garen.

        No new tests.

        Added static version of getOwnPropertySlot to every class that overrides
        JSCell::getOwnPropertySlot.  The virtual versions now call the static versions.
        This is the first step in de-virtualizing JSCell::getOwnPropertySlot.

        * bindings/js/JSDOMWindowShell.cpp:
        (WebCore::JSDOMWindowShell::getOwnPropertySlot):
        * bindings/js/JSDOMWindowShell.h:
        * bridge/objc/objc_runtime.h:
        * bridge/objc/objc_runtime.mm:
        (JSC::Bindings::ObjcFallbackObjectImp::getOwnPropertySlot):
        * bridge/qt/qt_runtime.cpp:
        (JSC::Bindings::QtRuntimeMetaMethod::getOwnPropertySlot):
        (JSC::Bindings::QtRuntimeConnectionMethod::getOwnPropertySlot):
        * bridge/qt/qt_runtime.h:
        * bridge/runtime_array.cpp:
        (JSC::RuntimeArray::getOwnPropertySlot):
        * bridge/runtime_array.h:
        * bridge/runtime_method.cpp:
        (JSC::RuntimeMethod::getOwnPropertySlot):
        * bridge/runtime_method.h:
        * bridge/runtime_object.cpp:
        (JSC::Bindings::RuntimeObject::getOwnPropertySlot):
        * bridge/runtime_object.h:

2011-10-03  Carlos Garcia Campos  <cgarcia@igalia.com> and Martin Robinson  <mrobinson@igalia.com>

        [GTK] Implement drag and drop support in WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=63706

        Reviewed by Philippe Normand.

        * platform/DragData.h:
        * platform/gtk/DataObjectGtk.cpp:
        (WebCore::DataObjectGtk::text): Mark as const.
        (WebCore::DataObjectGtk::markup): Ditto.
        (WebCore::DataObjectGtk::urlLabel): Ditto.
        * platform/gtk/DataObjectGtk.h: Remove unused member
        m_dragContext.
        (WebCore::DataObjectGtk::url): Mark as const.
        (WebCore::DataObjectGtk::uriList): Ditto.
        (WebCore::DataObjectGtk::filenames): Ditto.
        (WebCore::DataObjectGtk::image): Ditto.
        (WebCore::DataObjectGtk::hasText): Ditto.
        (WebCore::DataObjectGtk::hasMarkup): Ditto.
        (WebCore::DataObjectGtk::hasURIList): Ditto.
        (WebCore::DataObjectGtk::hasURL): Ditto.
        (WebCore::DataObjectGtk::hasFilenames): Ditto.
        (WebCore::DataObjectGtk::hasImage): Ditto.
        * platform/gtk/DragIcon.cpp: Added. A helper which takes care of
        creating a transparent drag window for drags.
        * platform/gtk/DragIcon.h: Added.

2011-10-08  Abhishek Arya  <inferno@chromium.org>

        Add support for ADDRESS_SANITIZER in RenderArena
        allocate, free calls.
        https://bugs.webkit.org/show_bug.cgi?id=69636

        Reviewed by Darin Adler.

        Use malloc, free directly without using the debug header. Otherwise,
        we won't be able to detect out of bounds access in debug header.

        * rendering/RenderArena.cpp:
        (WebCore::RenderArena::allocate):
        (WebCore::RenderArena::free):

2011-10-08  Kent Tamura  <tkent@chromium.org>

        Remove some static functions of HTMLSelectElement
        https://bugs.webkit.org/show_bug.cgi?id=69621

        Reviewed by Darin Adler.

        Merge a static function and the corresponding non-static member function
        into one function if there are no other callers of the static function.

        No new tests, just a refactoring.

        * html/HTMLFormControlElement.h:
        Make formControlName() protected because it is called from
        HTMLSelectElement.
        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::parseMappedAttribute):
        Remove two argument of parseMultipleAttribute().
        (WebCore::HTMLSelectElement::selectAll):
        Merged the static function and the member function.
        (WebCore::HTMLSelectElement::dispatchFocusEvent): ditto.
        (WebCore::HTMLSelectElement::dispatchBlurEvent): ditto.
        (WebCore::HTMLSelectElement::saveFormControlState): ditto.
        (WebCore::HTMLSelectElement::restoreFormControlState):
        (WebCore::HTMLSelectElement::parseMultipleAttribute):
         - Make this non-static member function.
         - Use reattachIfAttached().
        (WebCore::HTMLSelectElement::appendFormData): Merged.
        (WebCore::HTMLSelectElement::reset): ditto.
        (WebCore::HTMLSelectElement::insertedIntoTree): ditto.
        (WebCore::HTMLSelectElement::accessKeySetSelectedIndex): ditto.
        (WebCore::HTMLSelectElement::length): Merged with optionCount().
        * html/HTMLSelectElement.h:

2011-10-08  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96996.
        http://trac.webkit.org/changeset/96996
        https://bugs.webkit.org/show_bug.cgi?id=69697

        It broke all tests on the Qt bot (Requested by Ossy_night on
        #webkit).

        * WebCore.exp.in:
        * bindings/js/JSCallbackData.cpp:
        (WebCore::JSCallbackData::invokeCallback):
        * bindings/js/JSCustomXPathNSResolver.cpp:
        (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
        * bindings/js/JSErrorHandler.cpp:
        (WebCore::JSErrorHandler::handleEvent):
        * bindings/js/JSEventListener.cpp:
        (WebCore::JSEventListener::handleEvent):
        * bindings/js/JSHTMLAllCollectionCustom.cpp:
        (WebCore::JSHTMLAllCollection::getCallDataVirtual):
        * bindings/js/JSHTMLAppletElementCustom.cpp:
        (WebCore::JSHTMLAppletElement::getCallDataVirtual):
        * bindings/js/JSHTMLEmbedElementCustom.cpp:
        (WebCore::JSHTMLEmbedElement::getCallDataVirtual):
        * bindings/js/JSHTMLObjectElementCustom.cpp:
        (WebCore::JSHTMLObjectElement::getCallDataVirtual):
        * bindings/js/JSInjectedScriptHostCustom.cpp:
        (WebCore::JSInjectedScriptHost::evaluate):
        * bindings/js/JSPluginElementFunctions.cpp:
        (WebCore::runtimeObjectGetCallData):
        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateHeader):
        * bridge/objc/objc_runtime.h:
        * bridge/objc/objc_runtime.mm:
        (JSC::Bindings::ObjcFallbackObjectImp::getCallDataVirtual):
        * bridge/qt/qt_runtime.cpp:
        (JSC::Bindings::QtRuntimeMetaMethod::getCallDataVirtual):
        (JSC::Bindings::QtRuntimeConnectionMethod::call):
        (JSC::Bindings::QtRuntimeConnectionMethod::getCallDataVirtual):
        (JSC::Bindings::isJavaScriptFunction):
        * bridge/qt/qt_runtime.h:
        * bridge/runtime_method.cpp:
        (JSC::RuntimeMethod::getCallDataVirtual):
        * bridge/runtime_method.h:
        * bridge/runtime_object.cpp:
        (JSC::Bindings::RuntimeObject::getCallDataVirtual):
        * bridge/runtime_object.h:

2011-10-08  Ryosuke Niwa  <rniwa@webkit.org>

        Snow Leopard build fix after r96976. Apparently we just need a full rebuild.

        * config.h:

2011-10-07  Mark Hahnenberg  <mhahnenberg@apple.com>

        Add static version of JSCell::deleteProperty
        https://bugs.webkit.org/show_bug.cgi?id=69659

        Reviewed by Geoffrey Garen.

        No new tests.

        Added static version of both versions of put to all classes that 
        override them and changed the virtual versions to call the static 
        versions.  This is the first step in de-virtualizing JSCell::deleteProperty.

        * bridge/objc/objc_runtime.h:
        * bridge/objc/objc_runtime.mm:
        (JSC::Bindings::ObjcFallbackObjectImp::deleteProperty):
        * bridge/runtime_array.cpp:
        (JSC::RuntimeArray::deleteProperty):
        * bridge/runtime_array.h:
        * bridge/runtime_object.cpp:
        (JSC::Bindings::RuntimeObject::deleteProperty):
        * bridge/runtime_object.h:

2011-10-07  Justin Schuh  <jschuh@chromium.org>

        Make isXMLMIMEType regex use TLS
        https://bugs.webkit.org/show_bug.cgi?id=69665

        Reviewed by Adam Barth.

        Test: fast/workers/worker-multi-startup.html

        * dom/DOMImplementation.cpp:
        (WebCore::XMLMIMETypeRegExp::XMLMIMETypeRegExp):
        (WebCore::XMLMIMETypeRegExp::~XMLMIMETypeRegExp):
        (WebCore::XMLMIMETypeRegExp::isXMLMIMEType):
        (WebCore::DOMImplementation::isXMLMIMEType):
        * dom/DOMImplementation.h:
        * platform/ThreadGlobalData.cpp:
        (WebCore::ThreadGlobalData::ThreadGlobalData):
        (WebCore::ThreadGlobalData::destroy):
        * platform/ThreadGlobalData.h:
        (WebCore::ThreadGlobalData::xmlTypeRegExp):

2011-10-07  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96847.
        http://trac.webkit.org/changeset/96847
        https://bugs.webkit.org/show_bug.cgi?id=69684

        may have caused memory regression on win chromium (Requested
        by simonjam on #webkit).

        * platform/graphics/chromium/FontChromiumWin.cpp:
        (WebCore::Font::drawGlyphs):

2011-10-07  Mark Hahnenberg  <mhahnenberg@apple.com>

        Remove getCallDataVirtual methods
        https://bugs.webkit.org/show_bug.cgi?id=69186

        Reviewed by Geoffrey Garen.

        No new tests.

        Removed all getCallDataVirtual methods and replaced their call sites 
        with an explicit lookup in the MethodTable.

        * WebCore.exp.in:
        * bindings/js/JSCallbackData.cpp:
        (WebCore::JSCallbackData::invokeCallback):
        * bindings/js/JSCustomXPathNSResolver.cpp:
        (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
        * bindings/js/JSErrorHandler.cpp:
        (WebCore::JSErrorHandler::handleEvent):
        * bindings/js/JSEventListener.cpp:
        (WebCore::JSEventListener::handleEvent):
        * bindings/js/JSHTMLAllCollectionCustom.cpp:
        * bindings/js/JSHTMLAppletElementCustom.cpp:
        * bindings/js/JSHTMLEmbedElementCustom.cpp:
        * bindings/js/JSHTMLObjectElementCustom.cpp:
        * bindings/js/JSInjectedScriptHostCustom.cpp:
        (WebCore::JSInjectedScriptHost::evaluate):
        * bindings/js/JSPluginElementFunctions.cpp:
        (WebCore::runtimeObjectGetCallData):
        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateHeader):
        * bridge/objc/objc_runtime.h:
        * bridge/objc/objc_runtime.mm:
        * bridge/qt/qt_runtime.cpp:
        (JSC::Bindings::QtRuntimeConnectionMethod::call):
        (JSC::Bindings::isJavaScriptFunction):
        * bridge/qt/qt_runtime.h:
        (JSC::Bindings::QtRuntimeMetaMethod::createStructure):
        (JSC::Bindings::QtRuntimeConnectionMethod::createStructure):
        * bridge/runtime_method.cpp:
        * bridge/runtime_method.h:
        * bridge/runtime_object.cpp:
        * bridge/runtime_object.h:

2011-10-07  Mark Hahnenberg  <mhahnenberg@apple.com>

        Add static version of JSCell::put
        https://bugs.webkit.org/show_bug.cgi?id=69382

        Reviewed by Geoffrey Garen.

        No new tests.

        Added static version of both versions of put to all classes that 
        override them and changed the virtual versions to call the static 
        versions.

        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateHeader):
        (GenerateImplementation):
        * bindings/scripts/test/JS/JSTestObj.cpp:
        (WebCore::JSTestObj::put):
        * bindings/scripts/test/JS/JSTestObj.h:
        * bridge/objc/objc_runtime.h:
        * bridge/objc/objc_runtime.mm:
        (JSC::Bindings::ObjcFallbackObjectImp::put):
        * bridge/runtime_array.cpp:
        (JSC::RuntimeArray::put):
        * bridge/runtime_array.h:
        * bridge/runtime_object.cpp:
        (JSC::Bindings::RuntimeObject::put):
        * bridge/runtime_object.h:

2011-10-07  Anantanarayanan G Iyengar  <ananta@chromium.org>

         https://bugs.webkit.org/show_bug.cgi?id=69471

         We now wrap the window script NPObject which is requested by NPAPI plugins for
         scripting. The wrapped NPObject pointer maintains a weak reference to the
         window script NPObject and is cleared out when the window script object is destroyed.
         The NPObject wrapper is destroyed when the last outstanding reference is released.

         Reviewed by Nate Chapin.

         No tests added as there is no change in functionality.

        * WebCore.gypi:
        * bindings/v8/NPObjectWrapper.cpp: Added.
        (WebCore::NPObjectWrapper::NPObjectWrapper):
        (WebCore::NPObjectWrapper::create):
        (WebCore::NPObjectWrapper::clear):
        (WebCore::NPObjectWrapper::getWrapper):
        (WebCore::NPObjectWrapper::getUnderlyingNPObject):
        (WebCore::NPObjectWrapper::getObjectForCall):
        (WebCore::NPObjectWrapper::NPAllocate):
        (WebCore::NPObjectWrapper::NPDeallocate):
        (WebCore::NPObjectWrapper::NPPInvalidate):
        (WebCore::NPObjectWrapper::NPHasMethod):
        (WebCore::NPObjectWrapper::NPInvoke):
        (WebCore::NPObjectWrapper::NPInvokeDefault):
        (WebCore::NPObjectWrapper::NPHasProperty):
        (WebCore::NPObjectWrapper::NPGetProperty):
        (WebCore::NPObjectWrapper::NPSetProperty):
        (WebCore::NPObjectWrapper::NPRemoveProperty):
        (WebCore::NPObjectWrapper::NPNEnumerate):
        (WebCore::NPObjectWrapper::NPNConstruct):
        (WebCore::NPObjectWrapper::NPInvokePrivate):
        * bindings/v8/NPObjectWrapper.h: Added.
        * bindings/v8/NPV8Object.cpp:
        (_NPN_EvaluateHelper):
        * bindings/v8/ScriptController.cpp:
        (WebCore::ScriptController::ScriptController):
        (WebCore::ScriptController::clearScriptObjects):
        (WebCore::ScriptController::windowScriptNPObject):
        * bindings/v8/ScriptController.h:

2011-10-07  Antoine Labour  <piman@chromium.org>

        Webkit API for compositor
        https://bugs.webkit.org/show_bug.cgi?id=69107

        Reviewed by Darin Fisher.

        Covered by existing compositing tests.

        * platform/graphics/chromium/ContentLayerChromium.h: 

2011-10-07  Ben Wells  <benwells@chromium.org>

        CSS text-transform should apply to select elements
        https://bugs.webkit.org/show_bug.cgi?id=69503

        Reviewed by Ojan Vafai.

        Select elements are drawn in two ways depending on whether they are multiple and what their size is.
        Neither method previously handled text-transforms. Both of these rendering styles are now updated to transform
        their text correctly.

        Test: fast/css/text-transform-select.html

        * rendering/RenderListBox.cpp:
        (WebCore::RenderListBox::updateFromElement):
        (WebCore::RenderListBox::paintItemForeground):
        * rendering/RenderMenuList.cpp:
        (WebCore::RenderMenuList::updateOptionsWidth):
        (WebCore::RenderMenuList::setText):
        (WebCore::RenderMenuList::itemText):
        * rendering/RenderText.cpp:
        (WebCore::makeCapitalized):
        (WebCore::applyTextTransform):
        (WebCore::RenderText::setTextInternal):
        (WebCore::RenderText::textWithoutTranscoding):
        * rendering/RenderText.h:

2011-10-07  Tony Chang  <tony@chromium.org>

        fix a crash when loading non-html multipart data
        https://bugs.webkit.org/show_bug.cgi?id=69675

        Reviewed by Adam Barth.

        setupForReplaceByMIMEType calls DocumentWriter::end().  This leads to
        a crash on Mac because WebHTMLRepresentation() calls commitLoad(nil),
        which tries to write to the DocumentWriter.  By just inlining the code
        to load the last page, we avoid this crash (and makes the non-html
        multipart code more like the html multipart code).

        * loader/DocumentLoader.cpp:
        (WebCore::DocumentLoader::maybeFinishLoadingMultipartContent):

2011-10-07  Sergey Glazunov  <serg.glazunov@gmail.com>

        XSLT-generated document should inherit its SecurityOrigin from the source document
        https://bugs.webkit.org/show_bug.cgi?id=69661

        Reviewed by Adam Barth.

        Test: http/tests/security/xss-DENIED-xsl-document-securityOrigin.xml

        * xml/XSLTProcessor.cpp:
        (WebCore::XSLTProcessor::createDocumentFromSource):

2011-10-07  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96944.
        http://trac.webkit.org/changeset/96944
        https://bugs.webkit.org/show_bug.cgi?id=69662

        Caused many tests to crash on Snow Leopard (Requested by rniwa
        on #webkit).

        * css/CSSStyleApplyProperty.cpp:
        (WebCore::ApplyPropertyColor::applyInheritValue):
        * page/animation/AnimationBase.cpp:
        (WebCore::PropertyWrapperMaybeInvalidColor::PropertyWrapperMaybeInvalidColor):
        (WebCore::PropertyWrapperSVGPaint::PropertyWrapperSVGPaint):
        (WebCore::AnimationBase::ensurePropertyMap):
        * platform/graphics/Color.h:
        (WebCore::Color::Color):
        * rendering/style/BorderValue.h:
        (WebCore::BorderValue::BorderValue):
        (WebCore::BorderValue::isTransparent):
        (WebCore::BorderValue::operator==):
        (WebCore::BorderValue::color):
        * rendering/style/OutlineValue.h:
        (WebCore::OutlineValue::operator==):
        * rendering/style/RenderStyle.h:
        (WebCore::InheritedFlags::setBorderLeftColor):
        (WebCore::InheritedFlags::setBorderRightColor):
        (WebCore::InheritedFlags::setBorderTopColor):
        (WebCore::InheritedFlags::setBorderBottomColor):
        (WebCore::InheritedFlags::setOutlineColor):
        (WebCore::InheritedFlags::setColumnRuleColor):
        (WebCore::InheritedFlags::fillPaintColor):
        (WebCore::InheritedFlags::strokePaintColor):
        (WebCore::InheritedFlags::borderLeftColor):
        (WebCore::InheritedFlags::borderRightColor):
        (WebCore::InheritedFlags::borderTopColor):
        (WebCore::InheritedFlags::borderBottomColor):
        (WebCore::InheritedFlags::backgroundColor):
        (WebCore::InheritedFlags::color):
        (WebCore::InheritedFlags::columnRuleColor):
        (WebCore::InheritedFlags::outlineColor):
        (WebCore::InheritedFlags::textEmphasisColor):
        (WebCore::InheritedFlags::textFillColor):
        (WebCore::InheritedFlags::textStrokeColor):
        (WebCore::InheritedFlags::stopColor):
        (WebCore::InheritedFlags::floodColor):
        (WebCore::InheritedFlags::lightingColor):

2011-10-07  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69658
        
        [CSS3 Regions] Box painting of overflow into regions is incorrect because children were being
        incorrectly clamped to their containing block region ranges. Change the clamping model so that
        renderRegionForLine no longer does it. A block will now truly have an accurate range across
        all the regions that paint it. Instead, do the clamping at the time a child box asks the containing
        block for its information. At that time clamp to the start and end regions, so that we never ask
        a containing block for info about a region that it doesn't exist in.

        Reviewed by Anders Carlsson.

        Added new test in fast/regions and updated an old result to be correct.

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::pageLogicalHeightForOffset):
        (WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
        (WebCore::RenderBlock::regionAtBlockOffset):
        (WebCore::RenderBlock::clampToStartAndEndRegions):
        * rendering/RenderBlock.h:
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::borderBoxRectInRegion):
        (WebCore::RenderBox::containingBlockLogicalWidthForContentInRegion):
        (WebCore::RenderBox::renderBoxRegionInfo):
        * rendering/RenderFlowThread.cpp:
        (WebCore::RenderFlowThread::renderRegionForLine):
        (WebCore::RenderFlowThread::regionLogicalWidthForLine):
        (WebCore::RenderFlowThread::regionLogicalHeightForLine):
        (WebCore::RenderFlowThread::regionRemainingLogicalHeightForLine):
        (WebCore::RenderFlowThread::mapFromFlowToRegion):
        (WebCore::RenderFlowThread::setRegionRangeForBox):
        * rendering/RenderFlowThread.h:

2011-10-07  Chang Shu  <cshu@webkit.org>

        Remove compile time flag ENABLE_PASSWORD_ECHO
        https://bugs.webkit.org/show_bug.cgi?id=69647

        As we have runtime flag in the page/Settings, we should remove this redundant compile time flag.

        Reviewed by Andreas Kling.

        * config.h:
        * page/Settings.cpp:
        (WebCore::Settings::Settings):

2011-10-07  Chris Fleizach  <cfleizach@apple.com>

        Bug 69562 - AccessibilityImageMapLink holds onto it's parent even after it's been freed
        https://bugs.webkit.org/show_bug.cgi?id=69562

        Some fake objects, like AXImageMapLink, have weak references to their parent's (since they are fake objects and
        need some connection to the parent). However, if the parent disappears before the child, then we're left with a 
        out of date reference to that parent.

        The fix is to allow these elements to clear their parentage when the parent goes away.

        Reviewed by Darin Adler.

        Test: accessibility/image-map-update-parent-crash.html

        * accessibility/AccessibilityMenuListOption.cpp:
        (WebCore::AccessibilityMenuListOption::isVisible):
        * accessibility/AccessibilityMenuListPopup.cpp:
        (WebCore::AccessibilityMenuListPopup::isOffScreen):
        (WebCore::AccessibilityMenuListPopup::isEnabled):
        (WebCore::AccessibilityMenuListPopup::press):
        (WebCore::AccessibilityMenuListPopup::addChildren):
        (WebCore::AccessibilityMenuListPopup::childrenChanged):
        * accessibility/AccessibilityMockObject.h:
        (WebCore::AccessibilityMockObject::detachFromParent):
        * accessibility/AccessibilityObject.cpp:
        (WebCore::AccessibilityObject::clearChildren):
        * accessibility/AccessibilityObject.h:
        (WebCore::AccessibilityObject::detachFromParent):
        * accessibility/AccessibilitySlider.cpp:
        (WebCore::AccessibilitySliderThumb::elementRect):
        * accessibility/AccessibilityTableColumn.cpp:
        (WebCore::AccessibilityTableColumn::headerObjectForSection):

2011-10-07  Andreas Kling  <kling@webkit.org>

        Pack StyleRareNonInheritedData even harder on 64-bit.
        https://bugs.webkit.org/show_bug.cgi?id=69648

        Reviewed by Benjamin Poulain.

        Rearrange the members of StyleRareNonInheritedData to fold as much
        as possible into the padding at the end of RefCounted.

        This shrinks StyleRareNonInheritedData by 16 bytes on 64-bit,
        reducing memory consumption by another 140 kB when loading the
        full HTML5 spec.

        * rendering/style/StyleRareNonInheritedData.cpp:
        (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
        * rendering/style/StyleRareNonInheritedData.h:

2011-10-07  Cary Clark  <caryclark@google.com>

        Enable color profiles, unless profile is grayscale
        https://bugs.webkit.org/show_bug.cgi?id=69622
        https://bugs.webkit.org/show_bug.cgi?id=49950
        http://code.google.com/p/chromium/issues/detail?id=80844

        Further specialize the earlier fix described in 49950 to
        allow color profiles in YCbCr images, but disallow color
        profiles marked as grayData.
        (see http://www.color.org/ICC1v42_2006-05.pdf 7.2.6 )

        Reviewed by Adam Barth.

        Test: fast/images/gray-scale-jpeg-with-color-profile.html
              fast/images/color-jpeg-with-color-profile.html

        * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
        (WebCore::readColorProfile):
        (WebCore::JPEGImageReader::decode):

2011-10-07  Chris Fleizach  <cfleizach@apple.com>

        AX: re-organize fake elements to use new AccessibilityMockObject
        https://bugs.webkit.org/show_bug.cgi?id=69588

        This adds an AccessibilityMockObject for "fake" elements to descend from.
        Its benefit is to consolidate the various ways that these fake elements are setting
        and returning their parent objects.

        No functional change, hence no new tests.

        Reviewed by Jon Honeycutt.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * accessibility/AccessibilityARIAGrid.cpp:
        (WebCore::AccessibilityARIAGrid::addChildren):
        * accessibility/AccessibilityImageMapLink.cpp:
        (WebCore::AccessibilityImageMapLink::AccessibilityImageMapLink):
        * accessibility/AccessibilityImageMapLink.h:
        (WebCore::AccessibilityImageMapLink::node):
        * accessibility/AccessibilityMenuList.cpp:
        (WebCore::AccessibilityMenuList::addChildren):
        * accessibility/AccessibilityMenuList.h:
        (WebCore::toAccessibilityMenuList):
        * accessibility/AccessibilityMenuListOption.cpp:
        (WebCore::AccessibilityMenuListOption::AccessibilityMenuListOption):
        (WebCore::AccessibilityMenuListOption::isVisible):
        * accessibility/AccessibilityMenuListOption.h:
        * accessibility/AccessibilityMenuListPopup.cpp:
        (WebCore::AccessibilityMenuListPopup::AccessibilityMenuListPopup):
        (WebCore::AccessibilityMenuListPopup::isOffScreen):
        (WebCore::AccessibilityMenuListPopup::isEnabled):
        (WebCore::AccessibilityMenuListPopup::menuListOptionAccessibilityObject):
        (WebCore::AccessibilityMenuListPopup::press):
        (WebCore::AccessibilityMenuListPopup::addChildren):
        (WebCore::AccessibilityMenuListPopup::childrenChanged):
        (WebCore::AccessibilityMenuListPopup::didUpdateActiveOption):
        * accessibility/AccessibilityMenuListPopup.h:
        * accessibility/AccessibilityMockObject.cpp: Added.
        (WebCore::AccessibilityMockObject::AccessibilityMockObject):
        (WebCore::AccessibilityMockObject::~AccessibilityMockObject):
        * accessibility/AccessibilityMockObject.h: Added.
        (WebCore::AccessibilityMockObject::parentObject):
        (WebCore::AccessibilityMockObject::setParent):
        (WebCore::AccessibilityMockObject::detachFromParent):
        * accessibility/AccessibilitySlider.cpp:
        (WebCore::AccessibilitySlider::addChildren):
        (WebCore::AccessibilitySliderThumb::AccessibilitySliderThumb):
        (WebCore::AccessibilitySliderThumb::elementRect):
        * accessibility/AccessibilitySlider.h:
        * accessibility/AccessibilityTable.cpp:
        (WebCore::AccessibilityTable::addChildren):
        (WebCore::AccessibilityTable::headerContainer):
        * accessibility/AccessibilityTable.h:
        (WebCore::toAccessibilityTable):
        * accessibility/AccessibilityTableColumn.cpp:
        (WebCore::AccessibilityTableColumn::AccessibilityTableColumn):
        (WebCore::AccessibilityTableColumn::setParent):
        (WebCore::AccessibilityTableColumn::headerObject):
        (WebCore::AccessibilityTableColumn::headerObjectForSection):
        (WebCore::AccessibilityTableColumn::accessibilityIsIgnored):
        (WebCore::AccessibilityTableColumn::addChildren):
        * accessibility/AccessibilityTableColumn.h:
        * accessibility/AccessibilityTableHeaderContainer.cpp:
        (WebCore::AccessibilityTableHeaderContainer::AccessibilityTableHeaderContainer):
        (WebCore::AccessibilityTableHeaderContainer::accessibilityIsIgnored):
        (WebCore::AccessibilityTableHeaderContainer::addChildren):
        * accessibility/AccessibilityTableHeaderContainer.h:

2011-10-07  Nate Chapin  <japhet@chromium.org>

        Make IconLoader a CachedResourceClient instead of a SubresourceLoaderClient.
        This is one of the steps required to remove the SubresourceLoaderClient interface,
        which will simplify the layering in the loader.
        https://bugs.webkit.org/show_bug.cgi?id=69567

        Reviewed by Adam Barth.

        No new tests, no functionality change intended.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * loader/cache/CachedRawResource.cpp: Added.
        * loader/cache/CachedRawResource.h: Added.
        * loader/cache/CachedResource.cpp:
        * loader/cache/CachedResource.h:
        (WebCore::CachedResource::ignoreForRequestCount): Renamed and generalized from isLinkResource(),
            which was only used to decided whether the CachedResource should count toward
            CachedResourceLoader::requestCount().
        * loader/cache/CachedResourceLoader.cpp:
        * loader/cache/CachedResourceLoader.h:
        * loader/cache/CachedResourceRequest.cpp:
        * loader/cache/CachedResourceRequest.h:
        * loader/icon/IconLoader.cpp: Get a CachedResource instead of a SubresourceLoader.
        (WebCore::IconLoader::notifyFinished): Merge in the status code check that was in didReceiveResponse(),
            since we won't be checking any callbacks before the load completes.
        * loader/icon/IconLoader.h:

2011-10-07  Adam Bergkvist  <adam.bergkvist@ericsson.com>

        Add WebCore platform interfaces needed by updated PeerConnection design
        https://bugs.webkit.org/show_bug.cgi?id=68460

        Reviewed by Adam Barth.

        Added the PeerConnection platform files to WebCore/platform/mediastream

        Currently not testable.

        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * WebCore.gyp/WebCore.gyp:
        * WebCore.gypi:
        * platform/mediastream/MediaStreamComponent.h: Added.
        (WebCore::MediaStreamComponent::create):
        (WebCore::MediaStreamComponent::source):
        (WebCore::MediaStreamComponent::enabled):
        (WebCore::MediaStreamComponent::setEnabled):
        (WebCore::MediaStreamComponent::MediaStreamComponent):
        * platform/mediastream/MediaStreamDescriptor.h: Added.
        (WebCore::MediaStreamDescriptor::create):
        (WebCore::MediaStreamDescriptor::owner):
        (WebCore::MediaStreamDescriptor::setOwner):
        (WebCore::MediaStreamDescriptor::label):
        (WebCore::MediaStreamDescriptor::component):
        (WebCore::MediaStreamDescriptor::numberOfComponents):
        (WebCore::MediaStreamDescriptor::ended):
        (WebCore::MediaStreamDescriptor::setEnded):
        (WebCore::MediaStreamDescriptor::MediaStreamDescriptor):
        * platform/mediastream/MediaStreamSource.h: Added.
        (WebCore::MediaStreamSource::create):
        (WebCore::MediaStreamSource::id):
        (WebCore::MediaStreamSource::type):
        (WebCore::MediaStreamSource::name):
        (WebCore::MediaStreamSource::muted):
        (WebCore::MediaStreamSource::setMuted):
        (WebCore::MediaStreamSource::MediaStreamSource):
        * platform/mediastream/PeerHandler.cpp: Added.
        (WebCore::PeerHandler::PeerHandler):
        (WebCore::PeerHandler::~PeerHandler):
        (WebCore::PeerHandler::produceInitialOffer):
        (WebCore::PeerHandler::handleInitialOffer):
        (WebCore::PeerHandler::processSDP):
        (WebCore::PeerHandler::processPendingStreams):
        (WebCore::PeerHandler::sendDataStreamMessage):
        (WebCore::PeerHandler::stop):
        * platform/mediastream/PeerHandler.h: Added.
        (WebCore::PeerHandlerClient::~PeerHandlerClient):
        (WebCore::PeerHandler::create):

2011-10-07  Vineet Chaudary  <vineet.chaudhary@motorola.com>

        background-color affects the font color in disabled textarea.
        https://bugs.webkit.org/show_bug.cgi?id=65361

        Reviewed by Darin Adler.

        For the transparent/translucent background colors use lightening fortext color.

        * rendering/RenderTextControl.cpp:
        (WebCore::disabledTextColor):

2011-10-07  David Barr  <davidbarr@chromium.org>

        Implement currentColor support for box-shadow and text-shadow
        https://bugs.webkit.org/show_bug.cgi?id=68218

        Reviewed by Simon Fraser.

        Test: fast/box-shadow/box-shadow-currentcolor.html

        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseShadow): Add CSSValueCurrentcolor to supported keywords.

2011-10-07  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: add Audits panel to the compilation.
        https://bugs.webkit.org/show_bug.cgi?id=69633

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/AuditCategories.js:
        * inspector/front-end/AuditLauncherView.js:
        * inspector/front-end/AuditResultView.js:
        * inspector/front-end/AuditRules.js:
        (WebInspector.AuditRules.CombineExternalResourcesRule.prototype.doRun):
        (WebInspector.AuditRules.MinimizeDnsLookupsRule.prototype.doRun):
        (WebInspector.AuditRules.CacheControlRule.prototype.handleNonCacheableResources):
        * inspector/front-end/AuditsPanel.js:
        (WebInspector.AuditsPanel):
        * inspector/front-end/NetworkLog.js:
        * inspector/front-end/treeoutline.js:

2011-10-07  Andreas Kling  <kling@webkit.org>

        Functions that return "const Color" should simply return "Color".

        Rubber-stamped by Antti Koivisto.

        * rendering/RenderLayerBacking.cpp:
        (WebCore::RenderLayerBacking::rendererBackgroundColor):
        * rendering/RenderLayerBacking.h:
        * rendering/RenderTable.h:
        (WebCore::RenderTable::bgColor):
        * rendering/style/RenderStyle.cpp:
        (WebCore::RenderStyle::colorIncludingFallback):
        (WebCore::RenderStyle::visitedDependentColor):
        * rendering/style/RenderStyle.h:

2011-10-07  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: TypeError: Cannot read property 'styleSheetId' of undefined in tests.
        https://bugs.webkit.org/show_bug.cgi?id=69634

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/CSSStyleModel.js:
        (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt):

2011-10-06  Andreas Kling  <kling@webkit.org>

        Shrink BorderValue.
        https://bugs.webkit.org/show_bug.cgi?id=69521

        Reviewed by Antti Koivisto.

        Unroll BorderValue's Color member so we can pack the color's validity flag
        in BorderValue's bitfield.

        This shrinks BorderValue by 32 bit, which in turn shrinks BorderData by
        16 bytes. This reduces memory consumption by 760 kB when loading the full
        HTML5 spec.

        * platform/graphics/Color.h:
        (WebCore::Color::Color):

            Allow construction of Color objects with specific validity.

        * rendering/style/BorderValue.h:
        (WebCore::BorderValue::BorderValue):
        (WebCore::BorderValue::isTransparent):
        (WebCore::BorderValue::operator==):
        (WebCore::BorderValue::setColor):
        (WebCore::BorderValue::color):
        * rendering/style/OutlineValue.h:
        (WebCore::OutlineValue::operator==):

            Unroll m_color into BorderValue by splitting it into an RGBA32 and a bool.
            Made those variables private and added color(), setColor() accessors.

        * rendering/style/RenderStyle.h:
        (WebCore::InheritedFlags::setBorderLeftColor):
        (WebCore::InheritedFlags::setBorderRightColor):
        (WebCore::InheritedFlags::setBorderTopColor):
        (WebCore::InheritedFlags::setBorderBottomColor):
        (WebCore::InheritedFlags::setOutlineColor):
        (WebCore::InheritedFlags::setColumnRuleColor):

            Added a SET_BORDERVALUE_COLOR macro and use that instead of SET_VAR
            when setting BorderValue colors.

        (WebCore::InheritedFlags::fillPaintColor):
        (WebCore::InheritedFlags::strokePaintColor):
        (WebCore::InheritedFlags::borderLeftColor):
        (WebCore::InheritedFlags::borderRightColor):
        (WebCore::InheritedFlags::borderTopColor):
        (WebCore::InheritedFlags::borderBottomColor):
        (WebCore::InheritedFlags::backgroundColor):
        (WebCore::InheritedFlags::color):
        (WebCore::InheritedFlags::columnRuleColor):
        (WebCore::InheritedFlags::outlineColor):
        (WebCore::InheritedFlags::textEmphasisColor):
        (WebCore::InheritedFlags::textFillColor):
        (WebCore::InheritedFlags::textStrokeColor):
        (WebCore::InheritedFlags::stopColor):
        (WebCore::InheritedFlags::floodColor):
        (WebCore::InheritedFlags::lightingColor):

            Made color getters return "Color" instead of "const Color&" since
            BorderValue no longer has an actual object to return the reference to.

        * css/CSSStyleApplyProperty.cpp:
        (WebCore::ApplyPropertyColor::applyInheritValue):
        * page/animation/AnimationBase.cpp:
        (WebCore::PropertyWrapperColor::PropertyWrapperColor):
        (WebCore::PropertyWrapperColor::blend):
        (WebCore::PropertyWrapperMaybeInvalidColor::PropertyWrapperMaybeInvalidColor):
        (WebCore::PropertyWrapperSVGPaint::PropertyWrapperSVGPaint):
        (WebCore::AnimationBase::ensurePropertyMap):

            Adapt to RenderStyle color getters now returning "Color" instead of
            "const Color&".

2011-10-07  Philippe Normand  <pnormand@igalia.com>

        [GStreamer] webkitwebsrc: avoid GST_BOILERPLATE_FULL
        https://bugs.webkit.org/show_bug.cgi?id=69630

        Reviewed by Martin Robinson.

        Use G_DEFINE_TYPE_WITH_CODE instead of GST_BOILERPLATE_FULL and
        replace use of gst_ghost_pad_new_no_target_from_template() and
        gst_ghost_pad_set_target() with a single call to
        gst_ghost_pad_new_from_template(). These changes keep the element
        compatible with GStreamer 0.10 while preparing the port to 0.11.

        * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
        (webkit_web_src_class_init):
        (webkit_web_src_init):

2011-10-07  Martin Robinson  <mrobinson@igalia.com>

        [Freetype] Pseudo-italics do not work
        https://bugs.webkit.org/show_bug.cgi?id=40856

        Reviewed by Philippe Normand.

        * platform/graphics/freetype/FontPlatformData.h: Add the font description as an argument initializeWithFontFace.
        * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
        (WebCore::FontPlatformData::FontPlatformData): Pass the font description to initializeWithFontFace.
        (WebCore::FontPlatformData::initializeWithFontFace): If we were asked for an italic font and we were
        given one that wasn't oblique or italic, activate the synthetic oblique bit.

2011-10-07  Philippe Normand  <pnormand@igalia.com>

        [GStreamer] avoid direct access to GstMessage structure field
        https://bugs.webkit.org/show_bug.cgi?id=69629

        Reviewed by Martin Robinson.

        Use gst_message_get_structure() instead of direct access to the
        structure field. No direct benefit apart from compatibility with
        GStreamer 0.11.

        * platform/graphics/gstreamer/GStreamerGWorld.cpp:
        (WebCore::gstGWorldSyncMessageCallback):
        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
        (WebCore::MediaPlayerPrivateGStreamer::handleMessage):
        (WebCore::MediaPlayerPrivateGStreamer::mediaLocationChanged):

2011-10-07  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: add timeline panel to the compilation.
        https://bugs.webkit.org/show_bug.cgi?id=69628

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/SidebarTreeElement.js:
        (WebInspector.SidebarTreeElement):
        * inspector/front-end/SourceCSSTokenizer.js:
        (WebInspector.SourceCSSTokenizer.prototype.nextToken):
        * inspector/front-end/SourceCSSTokenizer.re2js:
        * inspector/front-end/SourceHTMLTokenizer.js:
        (WebInspector.SourceHTMLTokenizer.prototype.nextToken):
        * inspector/front-end/SourceHTMLTokenizer.re2js:
        * inspector/front-end/SourceJavaScriptTokenizer.js:
        (WebInspector.SourceJavaScriptTokenizer.prototype.nextToken):
        * inspector/front-end/SourceJavaScriptTokenizer.re2js:
        * inspector/front-end/TimelineGrid.js:
        * inspector/front-end/TimelineOverviewPane.js:
        (WebInspector.TimelineOverviewPane.prototype._createTimelineCategoryStatusBarCheckbox):
        * inspector/front-end/TimelinePanel.js:
        (WebInspector.TimelinePanel.prototype._createEventDivider):
        (WebInspector.TimelinePanel.prototype._addRecordToTimeline):
        (WebInspector.TimelinePanel.prototype._findParentRecord):
        (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
        (WebInspector.TimelinePanel.prototype.updateMainViewWidth):
        (WebInspector.TimelinePanel.prototype.onResize):
        (WebInspector.TimelinePanel.prototype._windowChanged):
        (WebInspector.TimelinePanel.prototype._refreshRecords):
        (WebInspector.TimelineRecordGraphRow.prototype._onClick):
        (WebInspector.TimelinePanel.FormattedRecord):
        (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
        (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):

2011-10-07  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96892.
        http://trac.webkit.org/changeset/96892
        https://bugs.webkit.org/show_bug.cgi?id=69626

        it broke windows canary bots (Requested by podivilov on
        #webkit).

        * WebCore.gyp/scripts/rule_binding.py:

2011-10-07  Andreas Kling  <kling@webkit.org>

        Shrink StyleInheritedData.
        https://bugs.webkit.org/show_bug.cgi?id=69625

        Reviewed by Antti Koivisto.

        Rearrange the members of StyleInheritedData to fold as much
        as possible into the padding at the end of RefCounted.

        This shrinks StyleInheritedData by 8 bytes on 64-bit, reducing
        memory consumption by 500 kB when loading the full HTML5 spec.

        * rendering/style/StyleInheritedData.cpp:
        (WebCore::StyleInheritedData::StyleInheritedData):
        * rendering/style/StyleInheritedData.h:

2011-10-07  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: make ScriptsPanel compile
        https://bugs.webkit.org/show_bug.cgi?id=69623

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/CallStackSidebarPane.js:
        (WebInspector.CallStackSidebarPane.prototype.update):
        (WebInspector.CallStackSidebarPane.prototype._placardSelected):
        * inspector/front-end/DebuggerModel.js:
        * inspector/front-end/JavaScriptSourceFrame.js:
        (WebInspector.JavaScriptSourceFrame):
        * inspector/front-end/KeyboardShortcut.js:
        * inspector/front-end/Object.js:
        * inspector/front-end/ObjectPropertiesSection.js:
        * inspector/front-end/ScopeChainSidebarPane.js:
        (WebInspector.ScopeChainSidebarPane.prototype.update):
        * inspector/front-end/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype._setScriptSourceIsBeingEdited):
        (WebInspector.ScriptsPanel.prototype._createSourceFrame):
        (WebInspector.ScriptsPanel.prototype._toggleBreakpointsClicked):
        (WebInspector.SourceFrameDelegateForScriptsPanel):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.requestContent):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.debuggingSupported):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setBreakpoint):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.updateBreakpoint):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.removeBreakpoint):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.findBreakpoint):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.continueToLine):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.canEditScriptSource):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setScriptSource):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setScriptSourceIsBeingEdited):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.debuggerPaused):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.evaluateInSelectedCallFrame):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.releaseEvaluationResult):
        (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.suggestedFileName):
        * inspector/front-end/StatusBarButton.js:
        * inspector/front-end/WatchExpressionsSidebarPane.js:
        (WebInspector.WatchExpressionsSection.prototype.update.appendResult):
        (WebInspector.WatchExpressionsSection.prototype.update):
        (WebInspector.WatchExpressionTreeElement.prototype.startEditing):
        * inspector/front-end/WorkerManager.js:
        (WebInspector.WorkerManager.prototype._openInspectorWindow):
        (WebInspector.WorkerManager.prototype._pageInspectorClosing):
        (WebInspector.DedicatedWorkerMessageForwarder.prototype._receiveMessage):
        * inspector/front-end/WorkersSidebarPane.js:
        (WebInspector.WorkersSidebarPane.prototype.removeWorker):
        * inspector/front-end/externs.js:
        (WebInspector.linkifyURL):
        (InjectedFakeWorker):
        * inspector/front-end/inspector.js:

2011-10-07  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96879.
        http://trac.webkit.org/changeset/96879
        https://bugs.webkit.org/show_bug.cgi?id=69618

        Broke CCLayerTreeHostTestShortlived1 on chromium mac.
        (Requested by podivilov on #webkit).

        * platform/graphics/chromium/cc/CCLayerTreeHost.h:

2011-10-07  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: add ResourcesPanel to the compilation.
        https://bugs.webkit.org/show_bug.cgi?id=69612

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/ApplicationCacheItemsView.js:
        (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid):
        * inspector/front-end/NetworkPanel.js:
        * inspector/front-end/ResourceView.js:
        * inspector/front-end/ResourcesPanel.js:
        (WebInspector.ResourcesPanel.prototype.showAnchorLocation):
        (WebInspector.ResourcesPanel.prototype.showResource):
        (WebInspector.BaseStorageTreeElement.prototype.isEventWithinDisclosureTriangle):
        (WebInspector.FrameTreeElement.prototype.frameNavigated):
        (WebInspector.StorageCategoryView):
        (WebInspector.SearchResultsTreeElementsTraverser.prototype.last):
        * inspector/front-end/externs.js:
        (WebInspector.openRequestInNetworkPanel):

2011-10-07  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96909.
        http://trac.webkit.org/changeset/96909
        https://bugs.webkit.org/show_bug.cgi?id=69616

        Broke chromium mac compilation (Requested by podivilov on
        #webkit).

        * platform/graphics/chromium/ContentLayerChromium.h:

2011-10-07  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Element highlighting does not highlight padding/border/margin for inline elements.
        https://bugs.webkit.org/show_bug.cgi?id=69558

        Reviewed by Pavel Feldman.

        * inspector/DOMNodeHighlighter.cpp:

2011-10-07  Mario Sanchez Prada  <msanchez@igalia.com>

        [GTK] Don't expose objects with unknown role on GTK
        https://bugs.webkit.org/show_bug.cgi?id=69561

        Reviewed by Chris Fleizach.

        Ignore accessibility objects in accessibilityPlatformIncludesObject.

        Test: platform/gtk/accessibility/unknown-roles-not-exposed.html

        * accessibility/gtk/AccessibilityObjectAtk.cpp:
        (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
        For unknown accessibility objects, return IgnoreObject.

2011-10-07  Pavel Feldman  <pfeldman@chromium.org>

        Web Inspector: add Elements and Network panels to the compilation
        https://bugs.webkit.org/show_bug.cgi?id=69604

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/BreakpointsSidebarPane.js:
        (WebInspector.XHRBreakpointsSidebarPane.prototype._addButtonClicked):
        (WebInspector.XHRBreakpointsSidebarPane.prototype._labelClicked):
        * inspector/front-end/DOMAgent.js:
        * inspector/front-end/DOMBreakpointsSidebarPane.js:
        * inspector/front-end/DataGrid.js:
        (WebInspector.DataGrid.prototype._startEditingConfig):
        * inspector/front-end/Drawer.js:
        * inspector/front-end/ElementsPanel.js:
        (WebInspector.ElementsPanel.prototype._hideSearchHighlights):
        (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
        (WebInspector.ElementsPanel.prototype.updateBreadcrumbSizes.collapseDimmed):
        (WebInspector.ElementsPanel.prototype.updateBreadcrumbSizes):
        (WebInspector.ElementsPanel.prototype._registerShortcuts):
        * inspector/front-end/ElementsTreeOutline.js:
        (WebInspector.ElementsTreeElement.prototype._startEditingAttribute):
        (WebInspector.ElementsTreeElement.prototype._startEditingTextNode):
        (WebInspector.ElementsTreeElement.prototype._startEditingTagName):
        (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML):
        * inspector/front-end/GoToLineDialog.js:
        (WebInspector.GoToLineDialog._show):
        * inspector/front-end/MetricsSidebarPane.js:
        (WebInspector.MetricsSidebarPane.prototype.startEditing):
        * inspector/front-end/NetworkPanel.js:
        (WebInspector.NetworkLogView.prototype._onLoadEventFired):
        (WebInspector.NetworkLogView.prototype._domContentLoadedEventFired):
        (WebInspector.NetworkLogView.prototype._updateOffscreenRows):
        (WebInspector.NetworkLogView.prototype._removeAllNodeHighlights):
        (WebInspector.NetworkPanel.prototype._resourceByAnchor):
        (WebInspector.NetworkDataGridNode.prototype._refreshInitiatorCell):
        * inspector/front-end/ObjectPropertiesSection.js:
        (WebInspector.ObjectPropertyTreeElement.prototype.startEditing):
        * inspector/front-end/Panel.js:
        * inspector/front-end/Popover.js:
        * inspector/front-end/SourceFrame.js:
        (WebInspector.SourceFrame.prototype._editBreakpointCondition):
        * inspector/front-end/StylesSidebarPane.js:
        (WebInspector.StylePropertiesSection.prototype.startEditingSelector):
        (WebInspector.StylePropertyTreeElement.prototype):
        * inspector/front-end/TimelineGrid.js:
        * inspector/front-end/UIUtils.js:
        (WebInspector.EditingConfig):
        (WebInspector.startEditing.editingCancelled):
        (WebInspector.startEditing.editingCommitted):
        (WebInspector.formatLocalized):
        (WebInspector.openLinkExternallyLabel):
        (WebInspector.openInNetworkPanelLabel):
        (WebInspector.copyLinkAddressLabel):
        * inspector/front-end/externs.js:
        (WebInspector.extensionServer.notifyObjectSelected):
        (WebInspector.openResource):
        * inspector/front-end/inspector.js:
        (WebInspector.resourceForURL):

2011-10-07  Anna Cavender  <annacc@chromium.org>

        Change enum value names for TextTrack::readyState and TextTrack::mode
        https://bugs.webkit.org/show_bug.cgi?id=69603

        Reviewed by David Levin.

        No new tests. No new functionality.

        * html/LoadableTextTrack.cpp:
        (WebCore::LoadableTextTrack::trackLoadStarted):
        (WebCore::LoadableTextTrack::trackLoadError):
        (WebCore::LoadableTextTrack::trackLoadCompleted):
        * html/TextTrack.cpp:
        (WebCore::TextTrack::TextTrack):
        (WebCore::TextTrack::setMode):
        * html/TextTrack.h:

2011-10-07  Anna Cavender  <annacc@chromium.org>

        Adding parens in WebVTTParser.cpp to appease compiler preferences.
        https://bugs.webkit.org/show_bug.cgi?id=69602

        Reviewed by David Levin.

        No new tests. No new functionality.

        * html/track/WebVTTParser.cpp:
        (WebCore::WebVTTParser::constructTreeFromToken):

2011-10-06  Antoine Labour  <piman@chromium.org>

        Webkit API for compositor
        https://bugs.webkit.org/show_bug.cgi?id=69107

        Reviewed by Darin Fisher.

        Covered by existing compositing tests.

        * platform/graphics/chromium/ContentLayerChromium.h: 

2011-10-06  Kent Tamura  <tkent@chromium.org>

        Remove SelectElement class
        https://bugs.webkit.org/show_bug.cgi?id=69518

        Reviewed by Ryosuke Niwa.

        SelectElement used to be an abstract class for HTMLSelectElement
        and WMLSelectElement. SelectElement is not needed anymore because
        WML was removed.

        This patch just removes SelectElement by moving SelectElement
        functions to HTMLSelectElement.

        No new tests. Just a refactoring.

        * WebCore.vcproj/WebCore.vcproj:
        Rename dom\SelectElementWin.cpp to html\HTMLSelectElementWin.cpp.
        * accessibility/AccessibilityListBoxOption.cpp:
        (WebCore::AccessibilityListBoxOption::setSelected):
        Remove unnecessary cast.
        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::stringValue):
        Use HTMLSelectElement instead of SelectElement.
        * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
        (optionFromSelection): ditto.
        (webkit_accessible_selection_get_selection_count): ditto.
        * accessibility/gtk/AXObjectCacheAtk.cpp:
        (notifyChildrenSelectionChange): ditto.
        * dom/OptionElement.cpp:
        (WebCore::OptionElement::optionIndex): ditto.
        * dom/OptionElement.h: ditto.
        * dom/SelectElement.cpp:
        (WebCore::SelectElementData::checkListItems): ditto.
        (WebCore::SelectElementData::listItems): ditto.
        * dom/SelectElementWin.cpp: Removed.
        * dom/SelectElement.h: Removed SelectElement class declaration.
        * html/HTMLSelectElement.cpp: Move functions from SelectElement.cpp.
        (WebCore::HTMLSelectElement::selectedIndex):
        Removed 'SelectElement::' because the function is moved to HTMLSelectElement.
        (WebCore::HTMLSelectElement::deselectItems): dito.
        (WebCore::HTMLSelectElement::setSelectedIndex): dito.
        (WebCore::HTMLSelectElement::setSelectedIndexByUser): ditto.
        (WebCore::HTMLSelectElement::activeSelectionEndListIndex): ditto.
        (WebCore::HTMLSelectElement::length): ditto.
        (WebCore::HTMLSelectElement::saveFormControlState): ditto.
        (WebCore::HTMLSelectElement::restoreFormControlState): ditto.
        (WebCore::HTMLSelectElement::parseMappedAttribute): ditto.
        (WebCore::HTMLSelectElement::selectAll): ditto.
        (WebCore::HTMLSelectElement::appendFormData): ditto.
        (WebCore::HTMLSelectElement::optionToListIndex): ditto.
        (WebCore::HTMLSelectElement::listToOptionIndex): ditto.
        (WebCore::HTMLSelectElement::recalcListItems): ditto.
        (WebCore::HTMLSelectElement::setRecalcListItems): ditto.
        (WebCore::HTMLSelectElement::reset): ditto.
        (WebCore::HTMLSelectElement::dispatchFocusEvent): ditto.
        (WebCore::HTMLSelectElement::dispatchBlurEvent): ditto.
        (WebCore::HTMLSelectElement::defaultEventHandler): ditto.
        (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex): ditto.
        (WebCore::HTMLSelectElement::setActiveSelectionEndIndex): ditto.
        (WebCore::HTMLSelectElement::updateListBoxSelection): ditto.
        (WebCore::HTMLSelectElement::menuListOnChange): ditto.
        (WebCore::HTMLSelectElement::listBoxOnChange): ditto.
        (WebCore::HTMLSelectElement::saveLastSelection): ditto.
        (WebCore::HTMLSelectElement::accessKeySetSelectedIndex): ditto.
        (WebCore::HTMLSelectElement::scrollToSelection): ditto.
        (WebCore::HTMLSelectElement::insertedIntoTree): ditto.
        (WebCore::nextValidIndex): Moved from SelectElement.cpp.
        (WebCore::nextSelectableListIndex): ditto.
        (WebCore::previousSelectableListIndex): ditto.
        (WebCore::firstSelectableListIndex): ditto.
        (WebCore::lastSelectableListIndex): ditto.
        (WebCore::nextSelectableListIndexPageAway): ditto.
        (WebCore::HTMLSelectElement::setOptionsChangedOnRenderer): ditto.
        (WebCore::HTMLSelectElement::parseMultipleAttribute): ditto.
        (WebCore::HTMLSelectElement::platformHandleKeydownEvent): ditto.
        (WebCore::HTMLSelectElement::menuListDefaultEventHandler): ditto.
        (WebCore::HTMLSelectElement::updateSelectedState): ditto.
        (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): ditto.
        (WebCore::HTMLSelectElement::lastSelectedListIndex): ditto.
        (WebCore::stripLeadingWhiteSpace): ditto.
        (WebCore::HTMLSelectElement::typeAheadFind): ditto.
        (WebCore::HTMLSelectElement::optionCount): ditto.
        (WebCore::toSelectElement): ditto.
        * html/HTMLSelectElementWin.cpp: Copied from Source/WebCore/dom/SelectElementWin.cpp.
        (WebCore::HTMLSelectElement::platformHandleKeydownEvent):
        * html/HTMLSelectElement.h: Removed 'virtual' of SelectElement functions.
        (WebCore::HTMLSelectElement::size):
        (WebCore::HTMLSelectElement::multiple):
        (WebCore::HTMLSelectElement::listItems):
        (WebCore::HTMLSelectElement::updateValidity):
        * rendering/RenderListBox.cpp: Replace SelectElement with HTMLSelectElement
        (WebCore::RenderListBox::RenderListBox):
        (WebCore::RenderListBox::scrollToRevealSelection):
        (WebCore::RenderListBox::addFocusRingRects):
        (WebCore::RenderListBox::paintItemForeground):
        (WebCore::RenderListBox::paintItemBackground):
        (WebCore::RenderListBox::panScroll):
        (WebCore::RenderListBox::autoscroll):
        (WebCore::RenderListBox::valueChanged):
        * rendering/RenderMenuList.cpp: Replace SelectElement with HTMLSelectElement
        (WebCore::RenderMenuList::RenderMenuList):
        (WebCore::RenderMenuList::setTextFromOption):
        (WebCore::RenderMenuList::showPopup):
        (WebCore::RenderMenuList::valueChanged):
        (WebCore::RenderMenuList::listBoxSelectItem):
        (WebCore::RenderMenuList::multiple):
        (WebCore::RenderMenuList::didSetSelectedIndex):
        (WebCore::RenderMenuList::didUpdateActiveOption):
        (WebCore::RenderMenuList::itemText):
        (WebCore::RenderMenuList::itemAccessibilityText):
        (WebCore::RenderMenuList::itemToolTip):
        (WebCore::RenderMenuList::itemIsEnabled):
        (WebCore::RenderMenuList::itemStyle):
        (WebCore::RenderMenuList::itemBackgroundColor):
        (WebCore::RenderMenuList::listSize):
        (WebCore::RenderMenuList::selectedIndex):
        (WebCore::RenderMenuList::itemIsSeparator):
        (WebCore::RenderMenuList::itemIsLabel):
        (WebCore::RenderMenuList::itemIsSelected):
        (WebCore::RenderMenuList::setTextFromItem):

2011-10-06  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96896.
        http://trac.webkit.org/changeset/96896
        https://bugs.webkit.org/show_bug.cgi?id=69601

        broke windows and mac chromium builds (Requested by simonjam
        on #webkit).

        * platform/graphics/chromium/ContentLayerChromium.h:

2011-10-06  Antoine Labour  <piman@chromium.org>

        Webkit API for compositor
        https://bugs.webkit.org/show_bug.cgi?id=69107

        Reviewed by Darin Fisher.

        Covered by existing compositing tests.

        * platform/graphics/chromium/ContentLayerChromium.h: 

2011-10-06  Joseph Pecoraro  <joepeck@webkit.org>

        Reviewed by Kent Tamura.

        Pass "accept" mime type information into FileChooser at all call sites
        https://bugs.webkit.org/show_bug.cgi?id=69592

        No new tests. This only exposes some more information to
        WebKit ports, no functionality change in WebCore.

        * html/FileInputType.cpp:
        (WebCore::FileInputType::receiveDropForDirectoryUpload):

2011-10-06  Kent Tamura  <tkent@chromium.org>

        [JSC binding] Fix inconsistent behavior of DOMStringMap
        https://bugs.webkit.org/show_bug.cgi?id=53752

        Reviewed by Darin Adler.

        The dataset behavior was inconsistent. The get operation handled
        data-* attributes first, and the put and delete operations handled
        JavaScript properties first.

        Like Firefox and Opera, the put and delete operations should
        handle data-* attribute first.

        * bindings/js/JSDOMStringMapCustom.cpp:
        (WebCore::JSDOMStringMap::deleteProperty):
         Handles DOMStringMap first, then returns false if the DOMStringMap makes an error.
        (WebCore::JSDOMStringMap::putDelegate): ditto.

2011-10-06  Nico Weber  <thakis@chromium.org>

        [chromium] Let rule_binding use os.execvp() instead of subprocess.call() to spawn fewer processes.
        https://bugs.webkit.org/show_bug.cgi?id=69589

        Reviewed by Adam Barth.

        When building with `make -j40`, all the binding rules are built en bloc. Since this script currently
        uses subprocess.call(), that actually spawns 80 processes at once. OS X has a max process limit of
        255 by default, so the build used to fail with
        "open2: fork failed: Resource temporarily unavailable at ../bindings/scripts/preprocessor.pm line 60"
        As a fix, use execvp() instead, which replaces the current process instead of spawning a new one.

        * WebCore.gyp/scripts/rule_binding.py:

2011-10-06  Anders Carlsson  <andersca@apple.com>

        When building with clang, enable -Wglobal-constructors and -Wexit-time-destructors
        https://bugs.webkit.org/show_bug.cgi?id=69586

        Reviewed by Darin Adler.

        * Configurations/Base.xcconfig:
        Add -Wglobal-constructors and -Wexit-time-destructors when building with clang.
        
        * WebCore.xcodeproj/project.pbxproj:
        When building with clang, we don't need to run the check-for-global-initializers and
        check-for-exit-time-destructors anymore.
        
        * platform/graphics/filters/FEGaussianBlur.cpp:
        (gaussianKernelFactor):
        (WebCore::FEGaussianBlur::calculateKernelSize):
        (WebCore::FEGaussianBlur::calculateStdDeviation):
        Change the gaussian kernel factor global to be an inline function instead.

2011-10-06  Anders Carlsson  <andersca@apple.com>

        Add DEFINE_DEBUG_ONLY_GLOBAL for globals that should be defined in debug builds
        https://bugs.webkit.org/show_bug.cgi?id=69584

        Reviewed by Darin Adler.

        Adopt the DEFINE_DEBUG_ONLY_GLOBAL macro.

        * bindings/js/JSLazyEventListener.cpp:
        * dom/Node.cpp:
        * dom/Range.cpp:
        * history/CachedPage.cpp:
        * loader/SubresourceLoader.cpp:
        * loader/cache/CachedResource.cpp:
        * page/Frame.cpp:
        * page/Page.cpp:
        * rendering/BidiRun.cpp:
        * rendering/RenderObject.cpp:
        * svg/SVGElementInstance.cpp:
        * xml/XMLHttpRequest.cpp:

2011-10-06  James Robinson  <jamesr@chromium.org>

        [chromium] Remove USE(THREADED_COMPOSITING) from the tree
        https://bugs.webkit.org/show_bug.cgi?id=69489

        Reviewed by Darin Fisher.

        This macro isn't needed any more since the logic it guarded is guarded by a runtime switch.

        * platform/graphics/chromium/cc/CCLayerTreeHost.h:

2011-10-06  David Grogan  <dgrogan@chromium.org>

        Return null for the value of IDB key cursors instead of ASSERTing
        https://bugs.webkit.org/show_bug.cgi?id=69131
        
        This is in support of the IndexedDB performance improvement here:
        http://codereview.chromium.org/7834006/

        Reviewed by Tony Chang.

        * storage/IDBCursorBackendImpl.cpp:
        (WebCore::IDBCursorBackendImpl::value):

2011-10-06  Alexey Proskuryakov  <ap@apple.com>

        [Mac] Should be able to scroll embedded PDFs using mouse
        https://bugs.webkit.org/show_bug.cgi?id=69579

        Reviewed by Darin Adler.

        Hit testing doesn't find scrollbars installed by a plug-in, so mouse events don't work.

        As we want to use WebKit scrollbars with PDF plug-in, a cleaner long-term solution would be
        to have a base class under PluginViewBase that can handle scrolling instead of doing that
        in PluginView and Plugin.

        * plugins/PluginViewBase.h:
        (WebCore::PluginViewBase::horizontalScrollbar):
        (WebCore::PluginViewBase::verticalScrollbar):
        Added accessors for scrollbars installed by plug-in.

        * rendering/nodeAtPoint.cpp: (WebCore::RenderEmbeddedObject::nodeAtPoint):
        Like RenderLayer, add scrollbars to hit result after normal  hit testing.

        * rendering/RenderEmbeddedObject.h: Added a nodeAtPoint override.

        * rendering/RenderWidget.h: Made nodeAtPoint() protected instead of private, so that
        RenderEmbeddedObject could call it.

2011-10-06  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/9717490> Flash of white when navigating daringfireball.net
        https://bugs.webkit.org/show_bug.cgi?id=69581

        Reviewed by Darin Adler.

        * platform/ScrollView.cpp:
        (WebCore::ScrollView::updateScrollbars): Moved the calls to Scrollbar::setEnabled() into the code
        section where invalidation is suppressed if necessary, so that they do not trigger premature invalidation.

2011-10-06  Dan Bernstein  <mitz@apple.com>

        Added a comment explaining code added in r96834.

        Suggested by Darin Adler.

        * editing/FrameSelection.cpp:
        (WebCore::FrameSelection::updateAppearance):

2011-10-05  Ryosuke Niwa  <rniwa@webkit.org>

        Deleting line break before h1 converts h1 to span
        https://bugs.webkit.org/show_bug.cgi?id=45784

        Reviewed by Enrica Casucci.

        This patch fundamentally alters the kind of styles we preserve while merging or moving paragraphs.
        StylizedMarkupAccumulator no longer wraps nodes by computed style when it's not annotating for interchange.
        Instead, it accumulates implicit and inline styles of ancestors of the serialized contents.

        The most significant code change is in StyledMarkupAccumulator::serializeNodes where we setup m_wrappingStyle
        by merging implicit and inline style of ancestors with mergeInlineAndImplicitStyleOfElement. Because it walks up
        the DOM tree upwards, it should not be overriding any CSS properties. Consequently, mergeStyle,
        mergeInlineStyleOfElement, and mergeInlineAndImplicitStyleOfElement are modified to take CSSPropertyOverrideMode.

        New behavior matches that of Internet Explorer and Firefox when merging paragraphs.

        Tests: editing/deleting/merge-paragraph-from-address.html
               editing/deleting/merge-paragraph-from-h6-with-style-2.html
               editing/deleting/merge-paragraph-from-h6-with-style.html
               editing/deleting/merge-paragraph-from-h6.html
               editing/deleting/merge-paragraph-from-listing.html
               editing/deleting/merge-paragraph-from-p-with-style-2.html
               editing/deleting/merge-paragraph-from-p-with-style-3.html
               editing/deleting/merge-paragraph-from-p-with-style.html
               editing/deleting/merge-paragraph-into-h1-with-style.html
               editing/deleting/merge-paragraph-into-h1.html
               editing/deleting/merge-paragraph-into-pre.html

        * css/CSSValueList.cpp:
        (WebCore::CSSValueList::hasValue): Made const.
        * css/CSSValueList.h:
        * editing/ApplyStyleCommand.cpp:
        (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Calls mergeInlineStyleOfElement.
        (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Ditto.
        * editing/EditingStyle.cpp:
        (WebCore::copyEditingProperties): Takes a boolean includeBackgroundColor.
        (WebCore::isEditingProperty): Extracted from elementIsStyledSpanOrHTMLEquivalent.
        (WebCore::EditingStyle::elementIsStyledSpanOrHTMLEquivalent): Calls isEditingProperty.
        (WebCore::EditingStyle::mergeTypingStyle): Calls mergeStyle.
        (WebCore::EditingStyle::mergeInlineStyleOfElement): Takes CSSPropertyOverrideMode.
        (WebCore::elementMatchesAndPropertyIsNotInInlineStyleDecl): Added.
        (WebCore::EditingStyle::mergeInlineAndImplicitStyleOfElement): Added.
        (WebCore::mergeTextDecorationValues): Extracted from mergeStyle.
        (WebCore::EditingStyle::mergeStyle): Takes CSSPropertyOverrideMode.
        * editing/EditingStyle.h:
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::nodeToSplitToAvoidPastingIntoInlineNodesWithStyle): Extracted from doApply.
        (WebCore::ReplaceSelectionCommand::doApply): Calls nodeToSplitToAvoidPastingIntoInlineNodesWithStyle.
        (WebCore::ReplaceSelectionCommand::performTrivialReplace): Exit early when we need to split the tree to avoid
        pasting into inline nodes with style. Also remove a collapsed or spurious br.
        * editing/markup.cpp:
        (WebCore::StyledMarkupAccumulator::serializeNodes):

2011-10-06  Abhishek Arya  <inferno@chromium.org>

        Crash in VisiblePosition::canonicalPosition.
        https://bugs.webkit.org/show_bug.cgi?id=69568

        Reviewed by Ryosuke Niwa.

        Move the position's containerNode calculation after layout is
        complete(in updateLayoutIgnorePendingStylesheets).        

        Test: editing/selection/selection-plugin-clear-crash.html

        * editing/VisiblePosition.cpp:
        (WebCore::VisiblePosition::canonicalPosition):

2011-10-06  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96861.
        http://trac.webkit.org/changeset/96861
        https://bugs.webkit.org/show_bug.cgi?id=69573

        This patch didn't compile on windows (Requested by annacc on
        #webkit).

        * html/track/WebVTTParser.cpp:
        (WebCore::WebVTTParser::constructTreeFromToken):

2011-10-06  Anna Cavender  <annacc@chromium.org>

        Adding parens in WebVTTParser.cpp to appease compiler preferences.
        https://bugs.webkit.org/show_bug.cgi?id=69460

        Reviewed by David Levin.

        No new tests. No new functionality.

        * html/track/WebVTTParser.cpp:
        (WebCore::WebVTTParser::constructTreeFromToken):

2011-10-06  Fady Samuel  <fsamuel@chromium.org>

        Code clean-up: Make RenderObject::absoluteBoundingBoxRect and associated methods const and make its parameter useTransforms no longer default to false
        https://bugs.webkit.org/show_bug.cgi?id=69009

        Reviewed by Simon Fraser.

        Upcoming patches may make use of absoluteBoundingBoxRect on a const RenderObject, so this needed to be fixed.
        Making useTransforms default to true instead of false and replacing instances of absoluteBoundingBoxRect() to
        absoluteBoundingBoxRectIgnoringTransforms() partially addreses // FIXME: useTransforms should go away eventually.

        * WebCore.exp.in:
        * dom/Element.cpp:
        (WebCore::Element::screenRect):
        * dom/Node.cpp:
        (WebCore::Node::getRect):
        (WebCore::Node::renderRect):
        * html/shadow/SliderThumbElement.cpp:
        (WebCore::SliderThumbElement::setPositionFromPoint):
        * html/shadow/TextControlInnerElements.cpp:
        (WebCore::InputFieldSpeechButtonElement::startSpeechInput):
        * inspector/DOMNodeHighlighter.cpp:
        * plugins/IFrameShimSupport.cpp:
        (WebCore::getPluginOcclusions):
        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::absoluteRects):
        (WebCore::RenderBlock::absoluteQuads):
        * rendering/RenderBlock.h:
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::absoluteRects):
        (WebCore::RenderBox::absoluteQuads):
        * rendering/RenderBox.h:
        * rendering/RenderFileUploadControl.cpp:
        (WebCore::RenderFileUploadControl::paintObject):
        * rendering/RenderIFrame.cpp:
        (WebCore::RenderIFrame::flattenFrame):
        * rendering/RenderInline.cpp:
        (WebCore::RenderInline::absoluteRects):
        (WebCore::RenderInline::culledInlineAbsoluteRects):
        (WebCore::RenderInline::absoluteQuads):
        (WebCore::RenderInline::culledInlineAbsoluteQuads):
        * rendering/RenderInline.h:
        * rendering/RenderMenuList.cpp:
        (WebCore::RenderMenuList::showPopup):
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::absoluteBoundingBoxRect):
        (WebCore::RenderObject::addAbsoluteRectForLayer):
        (WebCore::RenderObject::paintingRootRect):
        * rendering/RenderObject.h:
        (WebCore::RenderObject::absoluteRects):
        (WebCore::RenderObject::absoluteBoundingBoxRectIgnoringTransforms):
        (WebCore::RenderObject::absoluteQuads):
        * rendering/RenderText.cpp:
        (WebCore::RenderText::absoluteRects):
        (WebCore::RenderText::absoluteQuads):
        * rendering/RenderText.h:
        * rendering/RenderTextControlSingleLine.cpp:
        (WebCore::RenderTextControlSingleLine::showPopup):
        * rendering/RenderThemeSafari.cpp:
        (WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
        (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration):
        (WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
        * rendering/RenderView.cpp:
        (WebCore::RenderView::absoluteRects):
        (WebCore::RenderView::absoluteQuads):
        * rendering/RenderView.h:
        * rendering/svg/RenderSVGBlock.cpp:
        (WebCore::RenderSVGBlock::absoluteRects):
        * rendering/svg/RenderSVGBlock.h:
        * rendering/svg/RenderSVGHiddenContainer.cpp:
        (WebCore::RenderSVGHiddenContainer::absoluteQuads):
        * rendering/svg/RenderSVGHiddenContainer.h:
        * rendering/svg/RenderSVGInline.cpp:
        (WebCore::RenderSVGInline::absoluteQuads):
        * rendering/svg/RenderSVGInline.h:
        * rendering/svg/RenderSVGModelObject.cpp:
        (WebCore::RenderSVGModelObject::absoluteRects):
        (WebCore::RenderSVGModelObject::absoluteQuads):
        * rendering/svg/RenderSVGModelObject.h:
        * rendering/svg/RenderSVGText.cpp:
        (WebCore::RenderSVGText::absoluteQuads):
        * rendering/svg/RenderSVGText.h:
        * testing/Internals.cpp:
        (WebCore::Internals::boundingBox):

2011-10-06  Simon Hausmann  <simon.hausmann@nokia.com>

        [Qt][Wk2] Fix build with Qt 5 when QtScript is built as standalone module
        https://bugs.webkit.org/show_bug.cgi?id=69520

        Reviewed by Csaba Osztrogonác.

        * WebCore.pri: Use qt5 scope.
        * WebCore.pro: Use qt5 scope and pull in QtScript for the time being.

2011-10-06  Tony Chang  <tony@chromium.org>

        last frame of a multipart response is not displayed
        https://bugs.webkit.org/show_bug.cgi?id=69449

        Reviewed by Adam Barth.

        Test: http/tests/multipart/load-last-non-html-frame.php

        * loader/DocumentLoader.cpp:
        (WebCore::DocumentLoader::maybeFinishLoadingMultipartContent): for non-progressive load pages, commit the load so the
            last frame will be displayed.
        * loader/DocumentLoader.h:
        * loader/MainResourceLoader.cpp:
        (WebCore::MainResourceLoader::didFinishLoading):

2011-10-06  Gavin Peters  <gavinp@chromium.org>

        conditionalize m_cachedScript stacks to just Chromium port
        https://bugs.webkit.org/show_bug.cgi?id=69537

        New stack saving telemetry code in ScriptElement shouldn't have
        been put in all ports; just narrowing it to the chromium port will
        save other ports the memory hit of this diagnostic code.

        Reviewed by Nate Chapin.

        No new tests.

        * dom/ScriptElement.cpp:
        (WebCore::ScriptElement::ScriptElement):
        (WebCore::ScriptElement::requestScript):
        (WebCore::ScriptElement::stopLoadRequest):
        (WebCore::ScriptElement::notifyFinished):
        * dom/ScriptElement.h:

2011-10-06  Arthur Hsu  <arthurhsu@chromium.org>

        Ensure font loaded before calling Skia to drawPosText in Chrome sandbox
        https://bugs.webkit.org/show_bug.cgi?id=69370

        Reviewed by James Robinson.

        * platform/graphics/chromium/FontChromiumWin.cpp:
        (WebCore::Font::drawGlyphs):

2011-10-06  Chris Rogers  <crogers@google.com>

        BiquadFilterNode must not reset filter state if type attribute is set to the same type
        https://bugs.webkit.org/show_bug.cgi?id=69485

        Reviewed by Kenneth Russell.

        No new tests.  This particular case is difficult to test with a layout test using OfflineAudioContext.

        * webaudio/BiquadProcessor.cpp:
        (WebCore::BiquadProcessor::setType):
        * webaudio/BiquadProcessor.h:

2011-10-06  Raphael Kubo da Costa  <kubo@profusion.mobi>

        [EFL] Do not create cairo surfaces with the wrong size for form elements
        https://bugs.webkit.org/show_bug.cgi?id=69533

        Reviewed by Ryosuke Niwa.

        RenderThemeEfl::cacheThemePartResizeAndReset resizes the Ecore_Evas
        associated with an entry, but did not reset the `size` attribute of the
        struct -- in practice, this meant the subsequent call to
        themePartCacheEntrySurfaceCreate would create a cairo surface with the
        previous size, thus rendering an element with the wrong size.

        No new tests, this is triggered by running running pixel tests for
        running, in this order, fast/forms/button-sizes.html,
        fast/forms/input-appearance-preventDefault.html,
        fast/forms/input-appearance-spinbutton-disabled-readonly.html,
        fast/forms/input-appearance-width.html,
        fast/forms/input-button-sizes.html,
        fast/forms/input-placeholder-text-indent.html and
        fast/forms/input-text-click-inside.html (!).

        * platform/efl/RenderThemeEfl.cpp:
        (WebCore::RenderThemeEfl::cacheThemePartResizeAndReset): Reset the
        size attribute when resizing the canvas.

2011-10-06  Chris Rogers  <crogers@google.com>

        Make sure OfflineAudioContext can not be created with a sample-rate less than 44.1KHz
        https://bugs.webkit.org/show_bug.cgi?id=69483

        Reviewed by Kenneth Russell.

        No new tests.

        * webaudio/AudioBuffer.cpp:
        (WebCore::AudioBuffer::create):
        * webaudio/AudioContext.cpp:
        (WebCore::AudioContext::createBuffer):

2011-10-06  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69544
        
        [CSS3 Regions] Compute the starting and ending regions of a block, so that we can clamp
        descendants to those regions. This is preparation for having true overflow in the boxes
        in each region, and it's also a performance optimization to reduce the amount of
        region walking that the RenderFlowThread is doing.

        Add a range map to RenderFlowThread to cache the start/end regions for each box.
        
        Amend everyone who calls renderRegionForLine to pass in the box that is making the query.
        This box is then used to clamp to start and end regions so that any regions outside of that
        range will never be examined.

        Reviewed by Dan Bernstein.

        Test: fast/regions/top-overflow-out-of-second-region.html

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::layoutBlock):
        (WebCore::RenderBlock::hasNextPage):
        (WebCore::RenderBlock::pageLogicalHeightForOffset):
        (WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
        (WebCore::RenderBlock::regionAtBlockOffset):
        * rendering/RenderFlowThread.cpp:
        (WebCore::RenderFlowThread::~RenderFlowThread):
        (WebCore::RenderFlowThread::layout):
        (WebCore::RenderFlowThread::renderRegionForLine):
        (WebCore::RenderFlowThread::regionLogicalWidthForLine):
        (WebCore::RenderFlowThread::regionLogicalHeightForLine):
        (WebCore::RenderFlowThread::regionRemainingLogicalHeightForLine):
        (WebCore::RenderFlowThread::mapFromFlowToRegion):
        (WebCore::RenderFlowThread::removeRenderBoxRegionInfo):
        (WebCore::RenderFlowThread::logicalWidthChangedInRegions):
        (WebCore::RenderFlowThread::setRegionRangeForBox):
        (WebCore::RenderFlowThread::getRegionRangeForBox):
        * rendering/RenderFlowThread.h:
        * rendering/RenderRegion.cpp:
        (WebCore::RenderRegion::takeRenderBoxRegionInfo):
        (WebCore::RenderRegion::removeRenderBoxRegionInfo):
        * rendering/RenderRegion.h:

2011-10-05  Gavin Barraclough  <barraclough@apple.com>

        Add explicit JSGlobalThis type.
        https://bugs.webkit.org/show_bug.cgi?id=69478

        Reviewed by Darin Adler.

        JSC supports a split global object, as used by WebCore for the Window. As a stage
        of making this visible to JSC, make it so that if the global this value is not the
        global object itself, it must be a subclass of JSGlobalThis.

        * ForwardingHeaders/runtime/JSGlobalThis.h: Added.
            - Added forwarding header.
        * bindings/js/JSDOMGlobalObject.cpp:
        (WebCore::JSDOMGlobalObject::finishCreation):
        * bindings/js/JSDOMGlobalObject.h:
            - finishCreation takes a JSGlobalThis, or thisValue is implicit.
        * bindings/js/JSDOMWindowShell.h:
            - Make the window shell a subclass of JSGlobalThis.
        * bindings/js/JSWorkerContextBase.cpp:
        (WebCore::JSWorkerContextBase::finishCreation):
            - Don't pass the thisValue to JSGlobalObject::finishCreation.
        * bindings/js/JSWorkerContextBase.h:
        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateHeader):
            - Don't pass the thisValue to JSGlobalObject::finishCreation,
              for worker contexts.

2011-10-06  Anna Cavender  <annacc@chromium.org>

        Fix CodeGeneratorV8 for EnabledAtRuntime when class has no parent class.
        https://bugs.webkit.org/show_bug.cgi?id=69480

        Reviewed by Adam Barth.

        No new tests. No new functionality, yet.

        * bindings/scripts/CodeGeneratorV8.pm:

2011-10-06  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/10232866> Assertion failure beneath blockSelectionGaps() when a selected node is removed

        Reviewed by Ryosuke Niwa.

        Test: editing/selection/invalid-in-RenderView.html

        * editing/FrameSelection.cpp:
        (WebCore::FrameSelection::updateAppearance): Ensure that the VisibleSelection used to set the selection
        in the RenderView is valid, by reconstructing it from the current selection.

2011-10-06  Andreas Kling  <kling@webkit.org>

        InlineBox's virtualLogicalHeight() partially limited to builds with SVG.
        https://bugs.webkit.org/show_bug.cgi?id=69538

        Reviewed by Dan Bernstein.

        Remove erroneous ENABLE(SVG) guards around the initialization and use
        of InlineBox::hasVirtualLogicalHeight.

        This variable is used by TrailingFloatsRootInlineBox and should always
        be respected regardless of SVG support.

        * rendering/InlineBox.cpp:
        (WebCore::InlineBox::logicalHeight):
        * rendering/InlineBox.h:
        (WebCore::InlineBox::InlineBox):

2011-10-06  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Implement cache model for WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=68434

        Reviewed by Martin Robinson.

        Add a function to FileSystem to get the free space of the file
        system where the given path is on.

        * platform/FileSystem.h:
        * platform/gtk/FileSystemGtk.cpp:
        (WebCore::getVolumeFreeSizeForPath):

2011-10-06  Sergey Glazunov  <serg.glazunov@gmail.com>

        Add check for JavaScript URLs in HTMLPlugInImageElement::allowedToLoadFrameURL
        https://bugs.webkit.org/show_bug.cgi?id=68813

        Reviewed by Adam Barth.

        Test: http/tests/security/xss-DENIED-object-element.html

        * html/HTMLPlugInImageElement.cpp:
        (WebCore::HTMLPlugInImageElement::allowedToLoadFrameURL):

2011-10-06  Yury Semikhatsky  <yurys@chromium.org>

        Web Inspector: avoid assertion failure in ~InspectorDebuggerAgent in case of workers
        https://bugs.webkit.org/show_bug.cgi?id=69534

        Make sure frontend is disconnected before WorkerInspectorController is destroyed.

        Reviewed by Pavel Feldman.

        * inspector/WorkerInspectorController.cpp:
        (WebCore::WorkerInspectorController::~WorkerInspectorController):

2011-10-05  Alexey Proskuryakov  <ap@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69492
        [Mac] Should be able to scroll embedded PDFs from keyboard

        Reviewed by Darin Adler.

        * WebCore.exp.in: Export ScrollableArea::scroll.

        * html/HTMLPlugInElement.cpp: (WebCore::HTMLPlugInElement::defaultEventHandler): Call base
        class default event handler, so that events on focused plug-in elements would fall through
        to EventHandler::defaultKeyboardEventHandler.

        * plugins/PluginViewBase.h: (WebCore::PluginViewBase::scroll): Added a method that's called
        on a plug-in when WebCore asks it to scroll. Plug-in cannot really know what key events
        result in scroll actions.

        * rendering/RenderEmbeddedObject.cpp:
        (WebCore::RenderEmbeddedObject::scroll):
        (WebCore::RenderEmbeddedObject::logicalScroll):
        * rendering/RenderEmbeddedObject.h:
        Ask plug-in to scroll when EventHandler::scrollOverflow() is called.

2011-10-06  Konstantin Scheglov  <scheglov@google.com>

        REGRESSION (r95852?): Disappearing Border on bugs.webkit.org attachments <table>
        https://bugs.webkit.org/show_bug.cgi?id=69296

        Reviewed by David Hyatt.

        Test: fast/table/border-collapsing/cached-69296.html

        Remember BorderValue in CollapsedBorderValue by value.
        See https://bugs.webkit.org/show_bug.cgi?id=69296#c7 for motivation.

        * rendering/style/CollapsedBorderValue.h:
        (WebCore::CollapsedBorderValue::CollapsedBorderValue):
        (WebCore::CollapsedBorderValue::width):
        (WebCore::CollapsedBorderValue::style):
        (WebCore::CollapsedBorderValue::exists):
        (WebCore::CollapsedBorderValue::isTransparent):
        (WebCore::CollapsedBorderValue::operator==):
        * rendering/RenderTableCell.cpp:
        (WebCore::RenderTableCell::collapsedStartBorder):
        (WebCore::RenderTableCell::collapsedEndBorder):
        (WebCore::RenderTableCell::collapsedBeforeBorder):
        (WebCore::RenderTableCell::collapsedAfterBorder):

2011-10-06  Gavin Peters  <gavinp@chromium.org>

        save resource zeroing stacks in ScriptElement for debugging
        https://bugs.webkit.org/show_bug.cgi?id=69453

        The state machine tracking how m_cachedScript gets zeroed shows that sometimes we get
        two notifyFinished() events in a ScriptElement, which can crash chrome (see chrome bug
        75604).  This patch will save a stack in the ScriptElement when this happens, so that if
        we do later crash, we can see how we did the first zeroing.

        See http://code.google.com/p/chromium/issues/detail?id=75604 for the chromium bug that
        this change will help track down.

        Reviewed by Nate Chapin.

        No new tests, this shouldn't affect output at all, and isn't particularly testable.

        * dom/ScriptElement.cpp:
        (WebCore::ScriptElement::ScriptElement):
        (WebCore::ScriptElement::stopLoadRequest):
        (WebCore::ScriptElement::notifyFinished):
        * dom/ScriptElement.h:

2011-10-06  Rémi Duraffort  <remi.duraffort@st.com>

        Fix compilation by adding some missing ENABLE(VIDEO|XSLT)
        https://bugs.webkit.org/show_bug.cgi?id=69522

        Unreviewed build fix

        * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp:
        * bindings/v8/custom/V8HTMLAudioElementConstructor.h:
        * bindings/v8/custom/V8XSLTProcessorCustom.cpp:

2011-10-06  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: add Styles and Metrics sidebars to the compilation.
        https://bugs.webkit.org/show_bug.cgi?id=69529

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/CSSCompletions.js:
        (WebInspector.CSSCompletions.requestCSSNameCompletions):
        * inspector/front-end/CSSKeywordCompletions.js:
        (WebInspector.CSSKeywordCompletions.forProperty):
        (WebInspector.CSSKeywordCompletions.isColorAwareProperty):
        * inspector/front-end/Checkbox.js:
        * inspector/front-end/ElementsPanel.js:
        * inspector/front-end/MetricsSidebarPane.js:
        (WebInspector.MetricsSidebarPane.prototype._updateMetrics):
        (WebInspector.MetricsSidebarPane.prototype.startEditing):
        (WebInspector.MetricsSidebarPane.prototype._handleKeyDown):
        * inspector/front-end/SourceCSSTokenizer.js:
        (WebInspector.SourceCSSTokenizer):
        * inspector/front-end/SourceCSSTokenizer.re2js:
        * inspector/front-end/StylesSidebarPane.js:
        (WebInspector.StylesSidebarPane.prototype.update):
        (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
        (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules):
        (WebInspector.StylePropertiesSection.prototype.onpopulate):
        (WebInspector.StylePropertiesSection.prototype.startEditingSelector):
        (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted.successCallback):
        (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
        (WebInspector.ComputedStylePropertiesSection.prototype.onpopulate):
        (WebInspector.BlankStylePropertiesSection.prototype.makeNormal):
        (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
        (WebInspector.StylePropertyTreeElement.prototype):
        * inspector/front-end/externs.js:
        (WebInspector.linkifyResourceAsNode):
        (Element.prototype.scrollIntoViewIfNeeded):
        (Element.prototype.selectionLeftOffset):
        * inspector/front-end/inspector.js:
        * inspector/front-end/utilities.js:

2011-10-06  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: extract DOMPresentation, make EventListenersSidebar compile
        https://bugs.webkit.org/show_bug.cgi?id=69527

        Reviewed by Yury Semikhatsky.

        * WebCore.gypi:
        * WebCore.vcproj/WebCore.vcproj:
        * inspector/compile-front-end.sh:
        * inspector/front-end/DOMAgent.js:
        (WebInspector.DOMNode.prototype.nodeNameInCorrectCase):
        (WebInspector.DOMNode.prototype.moveTo):
        (WebInspector.DOMNode.prototype.isXMLNode):
        * inspector/front-end/DOMBreakpointsSidebarPane.js:
        (WebInspector.DOMBreakpointsSidebarPane.prototype._setBreakpoint):
        * inspector/front-end/DOMPresentation.js: Added.
        (WebInspector.DOMPresentation.decorateNodeLabel):
        (WebInspector.DOMPresentation.linkifyNodeReference):
        (WebInspector.DOMPresentation.linkifyNodeById):
        * inspector/front-end/ElementsPanel.js:
        (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
        * inspector/front-end/ElementsTreeOutline.js:
        (WebInspector.ElementsTreeOutline.prototype.set rootDOMNode):
        * inspector/front-end/EventListenersSidebarPane.js:
        * inspector/front-end/ObjectPropertiesSection.js:
        * inspector/front-end/PropertiesSection.js:
        * inspector/front-end/Section.js:
        * inspector/front-end/StylesSidebarPane.js:
        (WebInspector.StylesSidebarPane.prototype._rebuildStyleRules):
        (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules):
        * inspector/front-end/WebKit.qrc:
        * inspector/front-end/inspector.html:

2011-10-06  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: add all Resource panel views to the compilation.
        https://bugs.webkit.org/show_bug.cgi?id=69526

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/CookieItemsView.js:
        (WebInspector.CookieItemsView.prototype._contextMenu):
        (WebInspector.Cookies.cookieMatchesResourceURL):
        * inspector/front-end/CookiesTable.js:
        (WebInspector.CookiesTable):
        (WebInspector.CookiesTable.prototype._onDeleteFromGrid):
        * inspector/front-end/DOMStorageItemsView.js:
        (WebInspector.DOMStorageItemsView.prototype._dataGridForDOMStorageEntries):
        * inspector/front-end/DataGrid.js:
        (WebInspector.DataGrid.createSortableDataGrid.sortDataGrid.comparator):
        (WebInspector.DataGrid.createSortableDataGrid.sortDataGrid):
        (WebInspector.DataGrid.createSortableDataGrid):
        * inspector/front-end/DatabaseQueryView.js:
        (WebInspector.DatabaseQueryView.prototype._queryFinished):
        * inspector/front-end/DatabaseTableView.js:
        (WebInspector.DatabaseTableView.prototype._queryFinished):
        * inspector/front-end/ResourcesPanel.js:
        (WebInspector.ResourcesPanel.prototype.reset):
        (WebInspector.ResourcesPanel.prototype.showDatabase):
        * inspector/front-end/TextPrompt.js:

2011-10-06  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: add all Resource panel views to the compilation.
        https://bugs.webkit.org/show_bug.cgi?id=69526

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/CookieItemsView.js:
        (WebInspector.CookieItemsView.prototype._contextMenu):
        (WebInspector.Cookies.cookieMatchesResourceURL):
        * inspector/front-end/CookiesTable.js:
        (WebInspector.CookiesTable):
        (WebInspector.CookiesTable.prototype._onDeleteFromGrid):
        * inspector/front-end/DOMStorageItemsView.js:
        (WebInspector.DOMStorageItemsView.prototype._dataGridForDOMStorageEntries):
        * inspector/front-end/DataGrid.js:
        (WebInspector.DataGrid.createSortableDataGrid.sortDataGrid.comparator):
        (WebInspector.DataGrid.createSortableDataGrid.sortDataGrid):
        (WebInspector.DataGrid.createSortableDataGrid):
        * inspector/front-end/DatabaseQueryView.js:
        (WebInspector.DatabaseQueryView.prototype._queryFinished):
        * inspector/front-end/DatabaseTableView.js:
        (WebInspector.DatabaseTableView.prototype._queryFinished):
        * inspector/front-end/ResourcesPanel.js:
        (WebInspector.ResourcesPanel.prototype.reset):
        (WebInspector.ResourcesPanel.prototype.showDatabase):
        * inspector/front-end/TextPrompt.js:

2011-10-06  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96791.
        http://trac.webkit.org/changeset/96791
        https://bugs.webkit.org/show_bug.cgi?id=69528

        webkit_unit_tests broken on Mac and Win (Requested by
        hwennborg on #webkit).

        * platform/graphics/chromium/cc/CCLayerTreeHost.h:

2011-10-05  Mikhail Naganov  <mnaganov@chromium.org>

        Web Inspector: [Chromium] Heap Snapshot colors legend help popup is not shown.
        https://bugs.webkit.org/show_bug.cgi?id=69482

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/DetailedHeapshotView.js:
        (WebInspector.DetailedHeapshotView.prototype._helpClicked):

2011-10-05  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: add 10 more front-end classes to the compilation process.
        https://bugs.webkit.org/show_bug.cgi?id=69445

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/HAREntry.js:
        * inspector/front-end/HandlerRegistry.js:
        * inspector/front-end/IFrameView.js:
        * inspector/front-end/JavaScriptSourceFrame.js:
        * inspector/front-end/PanelEnablerView.js:
        (WebInspector.PanelEnablerView):
        * inspector/front-end/PartialQuickSort.js:
        * inspector/front-end/PropertiesSidebarPane.js:
        (WebInspector.PropertiesSidebarPane.prototype.update.fillSection):
        (WebInspector.PropertiesSidebarPane.prototype.update):
        * inspector/front-end/ShowMoreDataGridNode.js:
        * inspector/front-end/SidebarTreeElement.js:
        * inspector/front-end/TimelineAgent.js:
        * inspector/front-end/WelcomeView.js:
        * inspector/front-end/externs.js:
        (WebInspector.addMainEventListeners):

2011-10-05  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: make ElementsTreeOutline compile
        https://bugs.webkit.org/show_bug.cgi?id=69439

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/DOMAgent.js:
        * inspector/front-end/DOMSyntaxHighlighter.js:
        * inspector/front-end/ElementsPanel.js:
        (WebInspector.ElementsPanel.get this):
        (WebInspector.ElementsPanel):
        (WebInspector.ElementsPanel.prototype._populateContextMenu):
        (WebInspector.ElementsPanel.prototype._inspectElementRequested):
        * inspector/front-end/ElementsTreeOutline.js:
        (WebInspector.ElementsTreeOutline):
        (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focusElement):
        (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired):
        (WebInspector.ElementsTreeOutline.prototype._updateModifiedNodes):
        (WebInspector.ElementsTreeOutline.prototype._populateContextMenu):
        (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
        (WebInspector.ElementsTreeElement.prototype._startEditingAttribute):
        (WebInspector.ElementsTreeElement.prototype._startEditingTextNode):
        (WebInspector.ElementsTreeElement.prototype._startEditingTagName):
        (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML):
        (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.changeTagNameCallback):
        (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted):
        ():
        * inspector/front-end/externs.js:
        (WebInspector.highlightDOMNode):
        (WebInspector.resourceURLForRelatedNode):

2011-10-06  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: Inspector fails to start if there was at least one watch expression.
        https://bugs.webkit.org/show_bug.cgi?id=69516

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/ConsoleView.js:
        * inspector/front-end/WatchExpressionsSidebarPane.js:
        (WebInspector.WatchExpressionsSidebarPane):

2011-10-06  Dominic Cooney   <dominicc@chromium.org>

        Don't make virtual calls in Node::parentNode.
        https://bugs.webkit.org/show_bug.cgi?id=69266

        Reviewed by Antti Koivisto.

        ShadowRoot and SVGShadowRoot remain semantically separate (eg
        isShadowRoot/isSVGShadowRoot) but share a flag
        (IsShadowRootOrSVGShadowRootFlag, hitherto IsShadowRootFlag just
        for ShadowRoot). In combination with IsSVGFlag ShadowRoot (false)
        can be distinguished from SVGShadowRoot (true). This lets us make
        isSVGShadowRoot non-virtual.

        No change in behavior => No new tests.

        * dom/Node.cpp:
        (WebCore::Node::shadowHost):
        * dom/Node.h:
        (WebCore::Node::isSVGShadowRoot):
        (WebCore::Node::isShadowRoot):
        (WebCore::Node::parentNode):
        (WebCore::Node::parentNodeGuaranteedHostFree):
        * rendering/svg/SVGShadowTreeElements.cpp:
        (WebCore::SVGShadowTreeContainerElement::SVGShadowTreeContainerElement):
        (WebCore::SVGShadowTreeRootElement::SVGShadowTreeRootElement):
        * rendering/svg/SVGShadowTreeElements.h:
        * svg/SVGElement.cpp:
        (WebCore::SVGElement::SVGElement):
        * svg/SVGElement.h:
        * svg/SVGGElement.cpp:
        (WebCore::SVGGElement::SVGGElement):
        * svg/SVGGElement.h:
        * svg/SVGStyledElement.cpp:
        (WebCore::SVGStyledElement::SVGStyledElement):
        * svg/SVGStyledElement.h:
        * svg/SVGStyledLocatableElement.cpp:
        (WebCore::SVGStyledLocatableElement::SVGStyledLocatableElement):
        * svg/SVGStyledLocatableElement.h:
        * svg/SVGStyledTransformableElement.cpp:
        (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
        * svg/SVGStyledTransformableElement.h:

2011-10-06  John Knottenbelt  <jknotten@chromium.org>

        Take pageScaleFactor into account for MouseRelatedEvents.
        https://bugs.webkit.org/show_bug.cgi?id=67592

        Reviewed by Tony Gentilcore.

        Tests: fast/events/page-scaled-mouse-click-iframe.html
               fast/events/page-scaled-mouse-click.html

        * dom/MouseRelatedEvent.cpp:
        (WebCore::contentsScrollOffset):
        (WebCore::MouseRelatedEvent::MouseRelatedEvent):
        (WebCore::frameScaleFactor):
        (WebCore::MouseRelatedEvent::computePageLocation):
        (WebCore::MouseRelatedEvent::computeRelativePosition):

2011-10-03  Hans Wennborg  <hans@chromium.org>

        IndexedDB: Remove SQLite-LevelDB migration code
        https://bugs.webkit.org/show_bug.cgi?id=69264

        Reviewed by Tony Chang.

        Remove migration functionality.

        Just removing code, so no new tests.

        * storage/IDBFactoryBackendImpl.cpp:
        (WebCore::IDBFactoryBackendImpl::open):
        * storage/IDBFactoryBackendImpl.h:

2011-10-06  James Robinson  <jamesr@chromium.org>

        [chromium] Remove USE(THREADED_COMPOSITING) from the tree
        https://bugs.webkit.org/show_bug.cgi?id=69489

        Reviewed by Darin Fisher.

        This macro isn't needed any more since the logic it guarded is guarded by a runtime switch.

        * platform/graphics/chromium/cc/CCLayerTreeHost.h:

2011-10-05  Kentaro Hara  <haraken@chromium.org>

        Refactor IDL attributes about constructor
        https://bugs.webkit.org/show_bug.cgi?id=69074

        Reviewed by Adam Barth.

        Currently, IDL attributes about constructor are confusing:

        - [CustomConstructFunction] means that there is a custom constructor for JSC.
        - [V8CustomConstructor] means that there is a custom constructor for V8.
        - [CustomConstructor] exists in CodeGenerator*.pm but is not used in any IDL files.
        - For almost all IDL files, [CustomConstructFunction] and [V8CustomConstructor] are used at the same time.
        - ObjC, CPP and GObject bindings do not support custom constructors.

        This patch makes the following changes:

        - Rename [CustomConstructFunction] to [JSCustomConstructor].
        - [JSCustomConstructor] means that there is a custom constructor for JSC.
        - [V8CustomConstructor] means that there is a custom constructor for V8.
        - [CustomConstructor] means that there is a custom constructor for both JSC and V8.

        No new tests. No change in behavior. Confirm that build succeeds.

        * bindings/scripts/CodeGeneratorJS.pm: Removed [CustomConstructFunction] and added [JSCustomConstructor]
        (GenerateHeader):
        (GenerateAttributesHashTable):
        (GenerateImplementation):
        (GenerateConstructorDefinition):
        * css/WebKitCSSMatrix.idl: Renamed [CustomConstructFunction] to [JSCustomConstructor]. If both [JSCustomConstructor] and [V8CustomConstructor] are specified, then we replaced them with [CustomConstructor].
        * dom/CustomEvent.idl: Ditto.
        * dom/ErrorEvent.idl: Ditto.
        * dom/Event.idl: Ditto.
        * dom/HashChangeEvent.idl: Ditto.
        * dom/MessageChannel.idl: Ditto.
        * dom/MessageEvent.idl: Ditto.
        * dom/PageTransitionEvent.idl: Ditto.
        * dom/PopStateEvent.idl: Ditto.
        * dom/ProgressEvent.idl: Ditto.
        * dom/WebKitAnimationEvent.idl: Ditto.
        * html/DOMFormData.idl: Ditto.
        * html/canvas/ArrayBuffer.idl: Ditto.
        * html/canvas/DataView.idl: Ditto.
        * html/canvas/Float32Array.idl: Ditto.
        * html/canvas/Float64Array.idl: Ditto.
        * html/canvas/Int16Array.idl: Ditto.
        * html/canvas/Int32Array.idl: Ditto.
        * html/canvas/Int8Array.idl: Ditto.
        * html/canvas/Uint16Array.idl: Ditto.
        * html/canvas/Uint32Array.idl: Ditto.
        * html/canvas/Uint8Array.idl: Ditto.
        * p2p/PeerConnection.idl: Ditto.
        * page/EventSource.idl: Ditto.
        * page/WebKitPoint.idl: Ditto.
        * webaudio/AudioContext.idl: Ditto.
        * websockets/CloseEvent.idl: Ditto.
        * websockets/WebSocket.idl: Ditto.
        * workers/SharedWorker.idl: Ditto.
        * workers/Worker.idl: Ditto.
        * xml/XMLHttpRequest.idl: Ditto.
        * xml/XSLTProcessor.idl: Ditto.

2011-10-03  Andy Estes  <aestes@apple.com>

        Add the option to suppress rendering until the document's load event fires.
        https://bugs.webkit.org/show_bug.cgi?id=69298

        Reviewed by Simon Fraser.

        Add a WebCore setting that suppresses painting and compositing layer
        updates until the document's load event fires. This masks the effects
        of incremental rendering (for clients that opt in) by ensuring that all
        sub-resources have loaded and a full layout has taken place before
        painting the document for the first time.

        No tests currently possible. Testing this would require the ability for
        DRT to dump state while resources are loading, which it doesn't
        currently do.

        * dom/Document.cpp:
        (WebCore::Document::implicitClose): If rendering was previously
        suppressed, force a repaint and compositing layer update.
        (WebCore::Document::visualUpdatesAllowed): Add a helper method to
        determine if the document is in a state where rendering is allowed.
        * dom/Document.h:
        * page/Settings.cpp:
        (WebCore::Settings::Settings):
        * page/Settings.h:
        (WebCore::Settings::setSuppressIncrementalRendering):
        (WebCore::Settings::suppressIncrementalRendering):
        * rendering/RenderLayer.cpp:
        (WebCore::shouldSuppressPaintingLayer): Encapsulate the FOUC and
        painting suppression checks into a single helper function for
        readability's sake.
        (WebCore::RenderLayer::paintLayer):
        * rendering/RenderLayerCompositor.cpp:
        (WebCore::RenderLayerCompositor::updateCompositingLayers): If we should
        suppress compositing layer updates and the load event has yet to fire,
        return early.

2011-10-05  Yuta Kitamura  <yutak@chromium.org>

        WebSocket: Add extensions attribute
        https://bugs.webkit.org/show_bug.cgi?id=69408

        Reviewed by Kent Tamura.

        Add WebSocket's "extensions" attribute as specified in the WebSocket API
        <http://dev.w3.org/html5/websockets/#the-websocket-interface>.

        WebSocket protocol extension is not implemented at all, thus this attribute
        always returns an empty string.

        Test: http/tests/websocket/tests/hybi/extensions.html
              http/tests/websocket/tests/hixie76/undefined-attributes.html (updated)

        * websockets/WebSocket.cpp:
        (WebCore::WebSocket::extensions):
        If the hixie-76 protocol is chosen, we need to return "undefined" in order to
        keep behavior of the ports which have not used the newer hybi protocol yet.
        * websockets/WebSocket.h:
        * websockets/WebSocket.idl:

2011-10-05  Dominic Cooney  <dominicc@chromium.org>

        IsShadowRootFlag should not depend on whether a ShadowRoot is attached to a host.
        https://bugs.webkit.org/show_bug.cgi?id=69406

        Reviewed by Hajime Morita.

        No change in behavior => No new tests.

        * dom/Node.cpp:
        (WebCore::Node::setShadowHost): Don't twiddle the flag.
        * dom/Node.h:
        * dom/ShadowRoot.cpp:
        (WebCore::ShadowRoot::ShadowRoot): Set the IsShadowRootFlag on creation.
        * dom/TreeScope.cpp:
        (WebCore::TreeScope::TreeScope): Let ShadowRoot set creation flags.
        * dom/TreeScope.h:

2011-10-05  Chris Rogers  <crogers@google.com>

        Define a log2f() function for Windows in wtf/MathExtras.h
        https://bugs.webkit.org/show_bug.cgi?id=69491

        Reviewed by Darin Adler.

        No new tests. This change is tested in existing layout tests.

        * webaudio/AudioParamTimeline.cpp:
        (WebCore::AudioParamTimeline::valuesForTimeRangeImpl):

2011-10-05  Erik Arvidsson  <arv@chromium.org>

        window.location.href and others needlessly decodes URI-encoded characters
        https://bugs.webkit.org/show_bug.cgi?id=30225

        Reviewed by Darin Adler.

        Don't decode KURL::path() and stop using KURL::deprecatedString() in Location methods.

        This slightly changes how we parse data and javascript URLs (non hierarchical URLs) to
        not encode so aggressively.

        * fileapi/DOMFileSystemBase.cpp:
        (WebCore::DOMFileSystemBase::crackFileSystemURL): Manually decode path()
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::defaultObjectContentType): Manually decode path()
        * page/Location.cpp:
        (WebCore::Location::href): Use string() instead of deprecatedString()
        * page/Location.h:
        (WebCore::Location::toString): Inline call to href()
        * platform/KURL.cpp:
        (WebCore::KURL::path): Don't decode.
        (WebCore::escapeAndAppendNonHierarchicalPart): Rename escapeAndAppendFragment to escapeAndAppendNonHierarchicalPart
                                                       since this is now used for more than just fragments.
        (WebCore::KURL::parse): Don't decode
        * platform/KURLGoogle.cpp:
        (WebCore::KURL::path): Remove out of date comment
        * platform/qt/KURLQt.cpp:
        (WebCore::KURL::fileSystemPath): Manually decode path()
        * platform/win/ClipboardWin.cpp:
        (WebCore::createGlobalHDropContent): Manually decode path()
        * workers/WorkerLocation.cpp:
        (WebCore::WorkerLocation::href): Use string() instead of deprecatedString()
        * workers/WorkerLocation.h:
        (WebCore::WorkerLocation::toString): Inline call to href()

2011-10-05  Darin Adler  <darin@apple.com>

        [Mac] Use four more named cursors if present
        https://bugs.webkit.org/show_bug.cgi?id=69488

        Reviewed by Dan Bernstein.

        * platform/mac/CursorMac.mm:
        (WebCore::Cursor::ensurePlatformCursor): Use the names "Help", "Cell",
        "ZoomIn", and "ZoomOut" to get those cursors. Structure the code so it
        falls back if the cursors are not present.

2011-10-05  Tony Chang  <tony@chromium.org>

        force margin:auto to 0 in flex items
        https://bugs.webkit.org/show_bug.cgi?id=69475

        Reviewed by Ojan Vafai.

        The spec used to say the margin had a value of flex(1 0 0), but changed to just be 0.

        * rendering/RenderFlexibleBox.cpp:
        (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
        (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):

2011-10-05  Dean Jackson  <dino@apple.com>

        Computed style for filter property
        https://bugs.webkit.org/show_bug.cgi?id=68477

        Reviewed by Simon Fraser.

        Reports the computed style for the new -webkit-filter
        property value.

        Test: css3/filters/filter-property-computed-style.html

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::computedFilter):
        (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

2011-10-05  Jer Noble  <jer.noble@apple.com>

        Enable WEB_AUDIO by default in the WebKit/mac port.
        https://bugs.webkit.org/show_bug.cgi?id=68587

        Reviewed by Simon Fraser.

        No new tests; existing webaudio/ layout tests cover this.

        * Configurations/FeatureDefines.xcconfig:
        * WebCore.xcodeproj/project.pbxproj: Add a build step which copies audio resources to
            the WebCore.framework bundle.

2011-10-03  Ojan Vafai  <ojan@chromium.org>

        [flexbox] take marginBeforeForChild into account when positioning children
        https://bugs.webkit.org/show_bug.cgi?id=69313

        Reviewed by Tony Chang.

        * rendering/RenderFlexibleBox.cpp:
        (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):

2011-10-05  Vangelis Kokkevis  <vangelis@chromium.org>

        Switching threaded compositor from a compile time option to a
        run time one.
        https://bugs.webkit.org/show_bug.cgi?id=69391

        Reviewed by Darin Fisher.

        Mostly converted #if USE(THREADED_COMPOSITING) to a regular if statements.
        In addition, CCLayerTreeHost::scheduleComposite() is removed as it wasn't being
        called from anywhere, 

        No new tests as it doesn't add new functionality.

        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
        (WebCore::CCLayerTreeHost::setNeedsCommitThenRedraw):
        (WebCore::CCLayerTreeHost::setNeedsRedraw):
        (WebCore::CCLayerTreeHost::composite):
        * platform/graphics/chromium/cc/CCLayerTreeHost.h:
        * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
        (WebCore::CCSingleThreadProxy::setNeedsCommitThenRedraw):
        (WebCore::CCSingleThreadProxy::compositeImmediately):
        * platform/graphics/chromium/cc/CCSingleThreadProxy.h:

2011-10-05  Dean Jackson  <dino@apple.com>

        Parse '-webkit-filter' property syntax
        https://bugs.webkit.org/show_bug.cgi?id=68473

        Reviewed by Nikolas Zimmermann.

        Parse the new -webkit-filter property, looking for shorthand
        functions then testing number, type and value of parameters.

        Note that support for drop-shadow() was omitted from this
        patch because parsing CSS shadow syntax was going to require some
        refactoring of the box and text shadow code. The followup
        bug is https://bugs.webkit.org/show_bug.cgi?id=69108.

        Also, computed style will return null for filters at the moment.
        That's https://bugs.webkit.org/show_bug.cgi?id=68477.

        Tests: css3/filters/filter-property-parsing-invalid.html
               css3/filters/filter-property-parsing.html

        * CMakeLists.txt:
        * CodeGenerators.pri:
        * DerivedSources.cpp:
        * DerivedSources.make:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
            Build files updated for new WebKitCSSFilterValue classes.
        * bindings/js/JSCSSValueCustom.cpp:
        (WebCore::toJS):
        * bindings/objc/DOMCSS.mm:
            Test if value is WebKitCSSFilterValue.
        * css/CSSParser.cpp:
        (WebCore::filterInfoForName):
        (WebCore::CSSParser::isValidFilterArgument):
        (WebCore::CSSParser::parseFilter):
        * css/CSSParser.h:
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):
        (WebCore::filterOperationForType):
        (WebCore::CSSStyleSelector::createFilterOperations):
        * css/CSSStyleSelector.h:
            Handle the new shorthand functions in -webkit-filter.
        * css/CSSValue.h:
        (WebCore::CSSValue::isWebKitCSSFilterValue):
            Add virtual function that returns false here.
        * css/WebKitCSSFilterValue.cpp: Added.
        (WebCore::WebKitCSSFilterValue::WebKitCSSFilterValue):
        (WebCore::WebKitCSSFilterValue::~WebKitCSSFilterValue):
        (WebCore::WebKitCSSFilterValue::cssText):
        * css/WebKitCSSFilterValue.h: Added.
        (WebCore::WebKitCSSFilterValue::create):
        (WebCore::WebKitCSSFilterValue::operationType):
        (WebCore::WebKitCSSFilterValue::isWebKitCSSFilterValue):
        * css/WebKitCSSFilterValue.idl: Added.
            WebKitCSSFilterValue modelled closely on WebKitCSSTransformValue,
            basically identifying the type of operation in a CSSValueList.
        * page/DOMWindow.idl:
            New WebKitCSSFilterValue constructor.
        * platform/graphics/filters/FilterOperation.h:
        (WebCore::BlurFilterOperation::create):
        (WebCore::BlurFilterOperation::stdDeviationX):
        (WebCore::BlurFilterOperation::stdDeviationY):
        (WebCore::BlurFilterOperation::BlurFilterOperation):
        (WebCore::SharpenFilterOperation::create):
        (WebCore::SharpenFilterOperation::radius):
        (WebCore::SharpenFilterOperation::threshold):
        (WebCore::SharpenFilterOperation::SharpenFilterOperation):
            Use Length rather than double for parameters that are CSS lengths.

2011-10-05  Chris Rogers  <crogers@google.com>

        Fix Windows build - it doesn't have a log2f() function...
        https://bugs.webkit.org/show_bug.cgi?id=69473

        Unreviewed build fix.

        * webaudio/AudioParamTimeline.cpp:
        (WebCore::AudioParamTimeline::valuesForTimeRangeImpl):

2011-10-05  James Robinson  <jamesr@chromium.org>

        [chromium] ASSERT triggered when gpu process lost in single-threaded compositing path
        https://bugs.webkit.org/show_bug.cgi?id=69467

        Reviewed by Kenneth Russell.

        Shuffles debug-only bookkeeping around to more closely match what we do in the threaded path and not trip a
        false-positive ASSERT().

        * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
        (WebCore::CCSingleThreadProxy::doComposite):

2011-10-05  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96756.
        http://trac.webkit.org/changeset/96756
        https://bugs.webkit.org/show_bug.cgi?id=69472

        Many builds broken due to WTFGetBacktrace not being exported
        from JavaScriptCore (Requested by aroben on #webkit).

        * dom/ScriptElement.cpp:
        (WebCore::ScriptElement::ScriptElement):
        (WebCore::ScriptElement::stopLoadRequest):
        (WebCore::ScriptElement::notifyFinished):
        * dom/ScriptElement.h:

2011-10-05  Gavin Peters  <gavinp@chromium.org>

        save resource zeroing stacks in ScriptElement for debugging
        https://bugs.webkit.org/show_bug.cgi?id=69453

        The state machine tracking how m_cachedScript gets zeroed shows that sometimes we get
        two notifyFinished() events in a ScriptElement, which can crash chrome (see chrome bug
        75604).  This patch will save a stack in the ScriptElement when this happens, so that if
        we do later crash, we can see how we did the first zeroing.

        See http://code.google.com/p/chromium/issues/detail?id=75604 for the chromium bug that
        this change will help track down.

        Reviewed by Nate Chapin.

        No new tests, this shouldn't affect output at all, and isn't particularly testable.

        * dom/ScriptElement.cpp:
        (WebCore::ScriptElement::ScriptElement):
        (WebCore::ScriptElement::stopLoadRequest):
        (WebCore::ScriptElement::notifyFinished):
        * dom/ScriptElement.h:

2011-10-05  Alexey Proskuryakov  <ap@apple.com>

        More build fix.

        * WebCore.exp.in: Made a typo in a last minute change for my 32-bit build fix.

2011-10-05  Anna Cavender  <annacc@chromium.org>

        Fix CueParser::didFinishLoading to match changes in ThreadableLoaderClient
        https://bugs.webkit.org/show_bug.cgi?id=69456

        Reviewed by David Levin.

        No new tests. No new functionality.

        * html/track/CueParser.cpp:
        (WebCore::CueParser::didFinishLoading):
        * html/track/CueParser.h:

2011-10-05  Alexey Proskuryakov  <ap@apple.com>

        32-bit build fix.

        * WebCore.exp.in: In 32-bit, WebCore needs to export both NSSize and CGSize constructors.
        In 64-bit, NSSize is just a typedef for CGSize. Also fixed conversion operators, for good measure.

2011-10-05  Jer Noble  <jer.noble@apple.com>

        WEB_AUDIO does not compile on Leopard 32-bit.
        https://bugs.webkit.org/show_bug.cgi?id=69292

        Reviewed by Simon Fraser.

        No new tests; covered by all existing audio tests.

        Use of float and double within the WEB_AUDIO implementation have been harmonized, with most
        calculations done using floats, with narrowPrecisionToFloat() added when necessary to
        narrow double results down to floats, and with float constants initialized with float values:
        * platform/audio/AudioBus.cpp:
        (WebCore::AudioBus::AudioBus):
        (WebCore::AudioBus::createByMixingToMono):
        * platform/audio/AudioBus.h:
        (WebCore::AudioBus::sampleRate):
        (WebCore::AudioBus::setSampleRate):
        * platform/audio/AudioDSPKernel.h:
        (WebCore::AudioDSPKernel::AudioDSPKernel):
        (WebCore::AudioDSPKernel::sampleRate):
        * platform/audio/AudioDSPKernelProcessor.cpp:
        (WebCore::AudioDSPKernelProcessor::AudioDSPKernelProcessor):
        * platform/audio/AudioDSPKernelProcessor.h:
        * platform/audio/AudioDestination.h:
        * platform/audio/AudioFileReader.h:
        * platform/audio/AudioProcessor.h:
        (WebCore::AudioProcessor::AudioProcessor):
        (WebCore::AudioProcessor::sampleRate):
        * platform/audio/AudioUtilities.cpp:
        (WebCore::AudioUtilities::decibelsToLinear):
        (WebCore::AudioUtilities::linearToDecibels):
        (WebCore::AudioUtilities::discreteTimeConstantForSampleRate):
        * platform/audio/AudioUtilities.h:
        * platform/audio/DynamicsCompressor.cpp:
        (WebCore::DynamicsCompressor::DynamicsCompressor):
        (WebCore::DynamicsCompressor::initializeParameters):
        (WebCore::DynamicsCompressor::parameterValue):
        (WebCore::DynamicsCompressor::setEmphasisStageParameters):
        (WebCore::DynamicsCompressor::process):
        * platform/audio/DynamicsCompressor.h:
        (WebCore::DynamicsCompressor::sampleRate):
        (WebCore::DynamicsCompressor::nyquist):
        * platform/audio/DynamicsCompressorKernel.cpp:
        (WebCore::saturate):
        (WebCore::DynamicsCompressorKernel::DynamicsCompressorKernel):
        (WebCore::DynamicsCompressorKernel::process):
        * platform/audio/DynamicsCompressorKernel.h:
        * platform/audio/EqualPowerPanner.cpp:
        (WebCore::EqualPowerPanner::EqualPowerPanner):
        * platform/audio/EqualPowerPanner.h:
        * platform/audio/HRTFDatabase.cpp:
        (WebCore::HRTFDatabase::create):
        (WebCore::HRTFDatabase::HRTFDatabase):
        * platform/audio/HRTFDatabase.h:
        (WebCore::HRTFDatabase::sampleRate):
        * platform/audio/HRTFDatabaseLoader.cpp:
        (WebCore::HRTFDatabaseLoader::createAndLoadAsynchronouslyIfNecessary):
        (WebCore::HRTFDatabaseLoader::HRTFDatabaseLoader):
        * platform/audio/HRTFDatabaseLoader.h:
        (WebCore::HRTFDatabaseLoader::databaseSampleRate):
        * platform/audio/HRTFElevation.cpp:
        (WebCore::HRTFElevation::calculateSymmetricKernelsForAzimuthElevation):
        (WebCore::HRTFElevation::calculateKernelsForAzimuthElevation):
        (WebCore::HRTFElevation::createForSubject):
        (WebCore::HRTFElevation::createByInterpolatingSlices):
        * platform/audio/HRTFElevation.h:
        (WebCore::HRTFElevation::sampleRate):
        (WebCore::HRTFElevation::HRTFElevation):
        * platform/audio/HRTFKernel.cpp:
        (WebCore::extractAverageGroupDelay):
        (WebCore::HRTFKernel::HRTFKernel):
        (WebCore::HRTFKernel::createInterpolatedKernel):
        * platform/audio/HRTFKernel.h:
        (WebCore::HRTFKernel::create):
        (WebCore::HRTFKernel::frameDelay):
        (WebCore::HRTFKernel::sampleRate):
        (WebCore::HRTFKernel::HRTFKernel):
        * platform/audio/HRTFPanner.cpp:
        (WebCore::HRTFPanner::HRTFPanner):
        (WebCore::HRTFPanner::fftSizeForSampleRate):
        * platform/audio/HRTFPanner.h:
        (WebCore::HRTFPanner::sampleRate):
        * platform/audio/Panner.cpp:
        (WebCore::Panner::create):
        * platform/audio/Panner.h:
        * platform/audio/chromium/AudioBusChromium.cpp:
        (WebCore::AudioBus::loadPlatformResource):
        * platform/audio/mac/AudioBusMac.mm:
        (WebCore::AudioBus::loadPlatformResource):
        * platform/audio/mac/AudioDestinationMac.cpp:
        (WebCore::AudioDestination::create):
        (WebCore::AudioDestination::hardwareSampleRate):
        (WebCore::AudioDestinationMac::AudioDestinationMac):
        * platform/audio/mac/AudioDestinationMac.h:
        (WebCore::AudioDestinationMac::sampleRate):
        * platform/audio/mac/AudioFileReaderMac.cpp:
        (WebCore::AudioFileReader::createBus):
        (WebCore::createBusFromAudioFile):
        (WebCore::createBusFromInMemoryAudioFile):
        * platform/audio/mac/AudioFileReaderMac.h:
        * webaudio/AsyncAudioDecoder.cpp:
        (WebCore::AsyncAudioDecoder::decodeAsync):
        (WebCore::AsyncAudioDecoder::DecodingTask::create):
        (WebCore::AsyncAudioDecoder::DecodingTask::DecodingTask):
        * webaudio/AsyncAudioDecoder.h:
        (WebCore::AsyncAudioDecoder::DecodingTask::sampleRate):
        * webaudio/AudioBasicProcessorNode.cpp:
        (WebCore::AudioBasicProcessorNode::AudioBasicProcessorNode):
        * webaudio/AudioBasicProcessorNode.h:
        * webaudio/AudioBuffer.cpp:
        (WebCore::AudioBuffer::create):
        (WebCore::AudioBuffer::createFromAudioFileData):
        (WebCore::AudioBuffer::AudioBuffer):
        * webaudio/AudioBuffer.h:
        (WebCore::AudioBuffer::sampleRate):
        * webaudio/AudioBufferSourceNode.cpp:
        (WebCore::AudioBufferSourceNode::create):
        (WebCore::AudioBufferSourceNode::AudioBufferSourceNode):
        (WebCore::AudioBufferSourceNode::process):
        (WebCore::AudioBufferSourceNode::renderFromBuffer):
        * webaudio/AudioBufferSourceNode.h:
        * webaudio/AudioChannelMerger.cpp:
        (WebCore::AudioChannelMerger::AudioChannelMerger):
        * webaudio/AudioChannelMerger.h:
        (WebCore::AudioChannelMerger::create):
        * webaudio/AudioChannelSplitter.cpp:
        (WebCore::AudioChannelSplitter::AudioChannelSplitter):
        * webaudio/AudioChannelSplitter.h:
        (WebCore::AudioChannelSplitter::create):
        * webaudio/AudioContext.cpp:
        (WebCore::AudioContext::createOfflineContext):
        (WebCore::AudioContext::AudioContext):
        (WebCore::AudioContext::createBuffer):
        * webaudio/AudioContext.h:
        (WebCore::AudioContext::sampleRate):
        * webaudio/AudioDestinationNode.cpp:
        (WebCore::AudioDestinationNode::AudioDestinationNode):
        * webaudio/AudioDestinationNode.h:
        * webaudio/AudioGainNode.cpp:
        (WebCore::AudioGainNode::AudioGainNode):
        * webaudio/AudioGainNode.h:
        (WebCore::AudioGainNode::create):
        * webaudio/AudioListener.cpp:
        (WebCore::AudioListener::AudioListener):
        * webaudio/AudioListener.h:
        (WebCore::AudioListener::setPosition):
        (WebCore::AudioListener::setOrientation):
        (WebCore::AudioListener::setVelocity):
        * webaudio/AudioNode.cpp:
        (WebCore::AudioNode::AudioNode):
        * webaudio/AudioNode.h:
        (WebCore::AudioNode::sampleRate):
        * webaudio/AudioPannerNode.cpp:
        (WebCore::AudioPannerNode::AudioPannerNode):
        (WebCore::AudioPannerNode::getAzimuthElevation):
        * webaudio/AudioPannerNode.h:
        (WebCore::AudioPannerNode::create):
        * webaudio/AudioParam.cpp:
        (WebCore::AudioParam::value):
        (WebCore::AudioParam::smoothedValue):
        (WebCore::AudioParam::smooth):
        (WebCore::AudioParam::calculateSampleAccurateValues):
        * webaudio/AudioParamTimeline.cpp:
        (WebCore::AudioParamTimeline::valueForContextTime):
        (WebCore::timeToSampleFrame):
        (WebCore::AudioParamTimeline::valuesForTimeRangeImpl):
        * webaudio/AudioSourceNode.h:
        (WebCore::AudioSourceNode::AudioSourceNode):
        * webaudio/BiquadFilterNode.cpp:
        (WebCore::BiquadFilterNode::BiquadFilterNode):
        * webaudio/BiquadFilterNode.h:
        (WebCore::BiquadFilterNode::create):
        * webaudio/BiquadProcessor.cpp:
        (WebCore::BiquadProcessor::BiquadProcessor):
        * webaudio/BiquadProcessor.h:
        * webaudio/ConvolverNode.cpp:
        (WebCore::ConvolverNode::ConvolverNode):
        * webaudio/ConvolverNode.h:
        (WebCore::ConvolverNode::create):
        * webaudio/DefaultAudioDestinationNode.cpp:
        (WebCore::DefaultAudioDestinationNode::initialize):
        * webaudio/DefaultAudioDestinationNode.h:
        (WebCore::DefaultAudioDestinationNode::sampleRate):
        * webaudio/DelayDSPKernel.cpp:
        (WebCore::DelayDSPKernel::DelayDSPKernel):
        (WebCore::DelayDSPKernel::process):
        * webaudio/DelayDSPKernel.h:
        * webaudio/DelayNode.cpp:
        (WebCore::DelayNode::DelayNode):
        * webaudio/DelayNode.h:
        (WebCore::DelayNode::create):
        * webaudio/DelayProcessor.cpp:
        (WebCore::DelayProcessor::DelayProcessor):
        * webaudio/DelayProcessor.h:
        * webaudio/DynamicsCompressorNode.cpp:
        (WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
        * webaudio/DynamicsCompressorNode.h:
        (WebCore::DynamicsCompressorNode::create):
        * webaudio/HighPass2FilterNode.cpp:
        (WebCore::HighPass2FilterNode::HighPass2FilterNode):
        * webaudio/HighPass2FilterNode.h:
        (WebCore::HighPass2FilterNode::create):
        * webaudio/JavaScriptAudioNode.cpp:
        (WebCore::JavaScriptAudioNode::create):
        (WebCore::JavaScriptAudioNode::JavaScriptAudioNode):
        (WebCore::JavaScriptAudioNode::initialize):
        * webaudio/JavaScriptAudioNode.h:
        * webaudio/LowPass2FilterNode.cpp:
        (WebCore::LowPass2FilterNode::LowPass2FilterNode):
        * webaudio/LowPass2FilterNode.h:
        (WebCore::LowPass2FilterNode::create):
        * webaudio/OfflineAudioDestinationNode.h:
        (WebCore::OfflineAudioDestinationNode::sampleRate):
        * webaudio/RealtimeAnalyserNode.cpp:
        (WebCore::RealtimeAnalyserNode::RealtimeAnalyserNode):
        * webaudio/RealtimeAnalyserNode.h:
        (WebCore::RealtimeAnalyserNode::create):
        * webaudio/WaveShaperDSPKernel.cpp:
        (WebCore::WaveShaperDSPKernel::process):
        * webaudio/WaveShaperProcessor.cpp:
        (WebCore::WaveShaperProcessor::WaveShaperProcessor):
        * webaudio/WaveShaperProcessor.h:


2011-10-05  Alexey Proskuryakov  <ap@apple.com>

        [Mac] Make built-in PDF description localizable
        https://bugs.webkit.org/show_bug.cgi?id=69442

        Reviewed by Dan Bernstein.

        Added strings for plug-in's name and for its supported MIME type.

        * English.lproj/Localizable.strings:
        * WebCore.exp.in:
        * platform/DefaultLocalizationStrategy.cpp:
        (WebCore::DefaultLocalizationStrategy::builtInPDFPluginName):
        (WebCore::DefaultLocalizationStrategy::pdfDocumentTypeDescription):
        * platform/DefaultLocalizationStrategy.h:
        * platform/LocalizationStrategy.h:
        * platform/LocalizedStrings.cpp:
        (WebCore::builtInPDFPluginName):
        (WebCore::pdfDocumentTypeDescription):
        * platform/LocalizedStrings.h:

2011-10-05  David Levin  <levin@chromium.org>

        Attempt to fix the bindings test (broken by r96727).
        Reviewed by Adam Barth.

        * bindings/scripts/test/V8/V8TestInterface.cpp:
        (WebCore::ConfigureV8TestInterfaceTemplate):
        * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
        (WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
        * bindings/scripts/test/V8/V8TestObj.cpp:
        (WebCore::ConfigureV8TestObjTemplate):
        * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
        (WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):

2011-10-05  James Robinson  <jamesr@chromium.org>

        [chromium] Hook WebCompositor interface for input events up to the compositor proper
        https://bugs.webkit.org/show_bug.cgi?id=69394

        Reviewed by Darin Fisher.

        This wires up WebCompositorImpl to the compositor itself so we can handle input events as scrolls on the
        compositor thread, although it doesn't actually wire up any input events to actual scrolling. The way this
        works:

        - CCThreadProxy owns an adapter that implements the CCScrollController interface
        - CCThreadProxy owns a CCInputHandler, which is implemented by WebKit::WebCompositorImpl, that has a pointer to
        the adapter
        - CCLayerTreeHost has an identifier (an int) for its WebKit::WebCompositorImpl that's initialized in
        initializeLayerRenderer. This identifier is exposed to its owner (WebKit::WebViewImpl) so the embedder can wire
        up the threading logic behind the scenes.

        This is just plumbing, no change in behavior.

        * WebCore.gypi:
        * platform/graphics/chromium/cc/CCInputHandler.h: Added.
        (WebCore::CCInputHandler::~CCInputHandler):
        (WebCore::CCInputHandler::CCInputHandler):
        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
        (WebCore::CCLayerTreeHost::CCLayerTreeHost):
        (WebCore::CCLayerTreeHost::initialize):
        * platform/graphics/chromium/cc/CCLayerTreeHost.h:
        (WebCore::CCLayerTreeHost::compositorIdentifier):
        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
        (WebCore::CCLayerTreeHostImpl::scrollRootLayer):
        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
        * platform/graphics/chromium/cc/CCProxy.h:
        * platform/graphics/chromium/cc/CCScrollController.h: Added.
        (WebCore::CCScrollController::CCScrollController):
        (WebCore::CCScrollController::~CCScrollController):
        * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
        (WebCore::CCSingleThreadProxy::CCSingleThreadProxy):
        * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
        (WebCore::CCSingleThreadProxy::compositorIdentifier):
        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
        (WebCore::CCThreadProxyScrollControllerAdapter::create):
        (WebCore::CCThreadProxyScrollControllerAdapter::~CCThreadProxyScrollControllerAdapter):
        (WebCore::CCThreadProxyScrollControllerAdapter::scrollRootLayer):
        (WebCore::CCThreadProxyScrollControllerAdapter::CCThreadProxyScrollControllerAdapter):
        (WebCore::CCThreadProxy::CCThreadProxy):
        (WebCore::CCThreadProxy::initializeLayerRenderer):
        (WebCore::CCThreadProxy::compositorIdentifier):
        (WebCore::CCThreadProxy::beginFrameAndCommit):
        (WebCore::CCThreadProxy::initializeLayerRendererOnCCThread):
        (WebCore::CCThreadProxy::layerTreeHostClosedOnCCThread):
        * platform/graphics/chromium/cc/CCThreadProxy.h:

2011-10-05  Andreas Kling  <kling@webkit.org>

        Shrink OutlineValue.
        https://bugs.webkit.org/show_bug.cgi?id=69436

        Reviewed by Darin Adler.

        Move OutlineValue::m_isAuto up into the base class (BorderValue.)
        This shrinks OutlineValue by 32 bit, which in turn shrinks
        StyleBackgroundData by one CPU word.

        This reduces memory consumption by 250 kB (on 64-bit) when loading
        the full HTML5 spec.

        * rendering/style/BorderValue.h:
        (WebCore::BorderValue::BorderValue):
        * rendering/style/OutlineValue.h:
        (WebCore::OutlineValue::OutlineValue):
        (WebCore::OutlineValue::isAuto):

2011-10-05  Chang Shu  <cshu@webkit.org>

        [WK2] WebKitTestRunner needs LayoutTestController.dumpConfigurationForViewport
        https://bugs.webkit.org/show_bug.cgi?id=69365

        Reviewed by Darin Adler.

        Expose computeViewportAttributes for mac build.

        * WebCore.exp.in:

2011-10-05  Anna Cavender  <annacc@chromium.org>

        Functions to make <track> enabled at runtime, including changes to
        CodeGeneratorvV8 to allow entire interfaces (not just attributes) to
        be runtime-enabled.
        https://bugs.webkit.org/show_bug.cgi?id=69352

        Reviewed by Adam Barth.

        No new tests. No new functionality.

        * bindings/generic/RuntimeEnabledFeatures.cpp:
        * bindings/generic/RuntimeEnabledFeatures.h:
        (WebCore::RuntimeEnabledFeatures::webkitVideoTrackEnabled):
        (WebCore::RuntimeEnabledFeatures::setWebkitVideoTrackEnabled):
        * bindings/scripts/CodeGeneratorV8.pm:
        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::loadTextTracks):
        * html/HTMLTrackElement.idl:

2011-10-05  Kenneth Russell  <kbr@google.com>

        Mask underlying RENDERER and VENDOR strings
        https://bugs.webkit.org/show_bug.cgi?id=69389

        Reviewed by Sam Weinig.

        Test: fast/canvas/webgl/renderer-and-vendor-strings.html

        * html/canvas/WebGLGetInfo.h:
        * html/canvas/WebGLRenderingContext.cpp:
        (WebCore::WebGLRenderingContext::getParameter):

2011-10-05  Sachin Puranik  <jcqt43@motorola.com>

        Spec change - option.label should be reflected like option.value
        https://bugs.webkit.org/show_bug.cgi?id=68684

        Reviewed by Darin Adler.

        Incorporating the recent change in spec for label attribute of 
        option element. While retrieving the "Label" IDL attribute return
        the "Label" content attribute if present , else return the 
        value of textContent attribute.

        Tests: fast/forms/option-label-trim-html-spaces.html
               fast/forms/option-value-and-label-changed-by-js.html

        * dom/OptionElement.cpp:
        (WebCore::OptionElement::normalizeText):style fixes
        * dom/OptionElement.h: make collectOptionInnerText() protected.
        * html/HTMLOptionElement.cpp:
        (WebCore::HTMLOptionElement::label): return innerText if label attribute un-available.
        (WebCore::HTMLOptionElement::setLabel):setLabel() implementation.
        * html/HTMLOptionElement.h: add setLabel declaration.
        * html/HTMLOptionElement.idl: Change reflect to ConvertNullToNullString in idl

2011-10-05  Rémi Duraffort  <remi.duraffort@st.com>

        [GTK] Fix compilation with gtk v2.20.1
        https://bugs.webkit.org/show_bug.cgi?id=69418

        Unreviewed build fix

        * platform/gtk/GtkDragAndDropHelper.cpp:

2011-10-05  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68731
        
        Outline sides not painted for region. Fix the painting and hit testing code for regions to add in
        the maximalOutlineSize on unclipped sides. Also fix some math errors with the computation of the
        translation offset and clip rects when overflow or outlines spill out.

        Reviewed by Darin Adler.

        Added new test in fast/regions.

        * rendering/RenderFlowThread.cpp:
        (WebCore::RenderFlowThread::paintIntoRegion):
        (WebCore::RenderFlowThread::hitTestRegion):
        * rendering/RenderRegion.cpp:
        (WebCore::RenderRegion::regionOverflowRect):

2011-10-05  Yury Semikhatsky  <yurys@chromium.org>
        
        Unreviewed. Build fix: make InspectorStateClient.h Private in XCode project.

        * WebCore.xcodeproj/project.pbxproj:

2011-10-05  Martin Robinson  <mrobinson@igalia.com>

        libsoup-CRITICAL **: soup_message_io_pause: assertion `io != NULL' failed
        https://bugs.webkit.org/show_bug.cgi?id=64263

        Reviewed by Xan Lopez.

        No new tests. This is difficult to test because it relies on network
        timing and to catch and parse stdout.

        Instead of allowing messages to pause and unpause after receiving headers,
        we wait until the completion of the sendRequestCallback. This will ensure
        that the SoupSession is in the correct state to allow for pausing and unpausing.

        * platform/network/soup/ResourceHandleSoup.cpp:
        (WebCore::ResourceHandle::platformSetDefersLoading): Don't pause and unpause
        until the sendRequestCallback is called. We detect this situation by
        checking whether or not we have an input stream yet. Previously the code
        was only pausing until after soupMessage->status_code was not equal to
        SOUP_STATUS_NONE. This means that the message was pausable right after
        headers are received. sendRequestCallback happens some time after that.

2011-10-05  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed build fix for Debug builders.

        * inspector/WorkerInspectorController.cpp:
        (WebCore::WorkerInspectorController::restoreInspectorStateFromCookie):

2011-10-05  Dirk Schulze  <krit@webkit.org>

        SVG 1.1: ineffectual transform attribute for ClipPath
        https://bugs.webkit.org/show_bug.cgi?id=55361

        Reviewed by Nikolas Zimmermann.
        
        Respect 'transform' attribute/property for <clip-path>.
        If the masking code path is used the mask context gets transformed, otherwise the path itself.

        Tests: svg/clip-path/clip-path-transform-1.svg
               svg/clip-path/clip-path-transform-2.svg
               svg/dynamic-updates/SVGClipPathElement-transform-influences-hitTesting.html

        * rendering/svg/RenderSVGResourceClipper.cpp:
        (WebCore::RenderSVGResourceClipper::pathOnlyClipping): Transform the clip path.
        (WebCore::RenderSVGResourceClipper::applyClippingToContext):
        (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage): Transform the context of the mask image.
        (WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect): Repaint rect must get concatenated with the current animated transformation.
        (WebCore::RenderSVGResourceClipper::hitTestClipContent): Point for hit testing must be transformed by the current animated transformation.
        * rendering/svg/RenderSVGResourceClipper.h:

2011-10-05  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: move elements panel update semantics from ElementsPanel to ElementsTreeOutline.
        https://bugs.webkit.org/show_bug.cgi?id=69431

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/ConsoleMessage.js:
        (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsNode):
        * inspector/front-end/ElementsPanel.js:
        (WebInspector.ElementsPanel.get this):
        (WebInspector.ElementsPanel):
        (WebInspector.ElementsPanel.prototype.show):
        (WebInspector.ElementsPanel.prototype.hide):
        (WebInspector.ElementsPanel.prototype._selectedNodeChanged):
        (WebInspector.ElementsPanel.prototype._reset):
        (WebInspector.ElementsPanel.prototype._nodeRemoved):
        (WebInspector.ElementsPanel.prototype.updateBreadcrumb.selectCrumbFunction):
        (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
        * inspector/front-end/ElementsTreeOutline.js:
        (WebInspector.ElementsTreeOutline):
        (WebInspector.ElementsTreeOutline.prototype.wireToDomAgent):
        (WebInspector.ElementsTreeOutline.prototype.setVisible):
        (WebInspector.ElementsTreeOutline.prototype.addEventListener):
        (WebInspector.ElementsTreeOutline.prototype.removeEventListener):
        (WebInspector.ElementsTreeOutline.prototype.selectDOMNode):
        (WebInspector.ElementsTreeOutline.prototype.update):
        (WebInspector.ElementsTreeOutline.prototype._selectedNodeChanged):
        (WebInspector.ElementsTreeOutline.prototype.findTreeElement.parentNode):
        (WebInspector.ElementsTreeOutline.prototype.findTreeElement):
        (WebInspector.ElementsTreeOutline.prototype.createTreeElementFor):
        (WebInspector.ElementsTreeOutline.prototype._ondrop.callback):
        (WebInspector.ElementsTreeOutline.prototype._ondrop):
        (WebInspector.ElementsTreeOutline.prototype.adjustCollapsedRange):
        (WebInspector.ElementsTreeOutline.prototype._updateModifiedNodes):
        (WebInspector.ElementsTreeElement.prototype.insertChildElement):
        (WebInspector.ElementsTreeElement.prototype.selectOnMouseDown):
        (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML.dispose):
        (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML):
        (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted.moveToNextAttributeIfNeeded):
        (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
        (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.changeTagNameCallback):
        (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted):
        (WebInspector.ElementsTreeElement.prototype._textNodeEditingCommitted):
        (WebInspector.ElementsTreeElement.prototype._editingCancelled):
        ():
        * inspector/front-end/externs.js:
        (WebInspector.ElementsTreeOutline):
        * inspector/front-end/utilities.js:

2011-10-05  Yury Semikhatsky  <yurys@chromium.org>

        Web Inspector: provide a way for persisting worker inspector state
        https://bugs.webkit.org/show_bug.cgi?id=69422

        Worker inspector can persist and restore its state. InspectorStateClient is
        exctracted into a separate interface and has a custom implementation in case
        of worker inspector.

        Reviewed by Pavel Feldman.

        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * inspector/InspectorClient.h:
        * inspector/InspectorState.cpp:
        (WebCore::InspectorState::InspectorState):
        * inspector/InspectorState.h:
        * inspector/InspectorStateClient.h: Copied from Source/WebCore/inspector/InspectorClient.h.
        (WebCore::InspectorStateClient::~InspectorStateClient):
        (WebCore::InspectorStateClient::updateInspectorStateCookie):
        * inspector/WorkerInspectorController.cpp:
        (WebCore::WorkerInspectorController::WorkerInspectorController):
        (WebCore::WorkerInspectorController::restoreInspectorStateFromCookie):
        * inspector/WorkerInspectorController.h:
        * workers/DefaultSharedWorkerRepository.cpp:
        (WebCore::SharedWorkerProxy::postMessageToPageInspector):
        (WebCore::SharedWorkerProxy::updateInspectorStateCookie):
        * workers/WorkerMessagingProxy.cpp:
        (WebCore::WorkerMessagingProxy::updateInspectorStateCookie):
        * workers/WorkerMessagingProxy.h:
        * workers/WorkerReportingProxy.h:

2011-10-05  Abhishek Arya  <inferno@chromium.org>

        Crash in SVGTRefElement::updateReferencedText.
        https://bugs.webkit.org/show_bug.cgi?id=67555

        Reviewed by Rob Buis.

        Test: svg/text/tref-event-listener-crash.svg

        * svg/SVGTRefElement.cpp:
        (WebCore::SubtreeModificationEventListener::clear): This fixes the
        crash. there can be cases when our target is removed, but our event
        listener is alive. when our tref is going away, we need to disable
        those event listeners by nulling out our tref element.
        (WebCore::SubtreeModificationEventListener::handleEvent): Adding
        null check for tref element, which can happen in cases where
        event listener's clear is called, but we could not remove it from
        the target.
        (WebCore::SVGTRefElement::~SVGTRefElement): There are always
        cases when removedFromDocument is not called. So, important to
        clear event listener in those cases.
        (WebCore::SVGTRefElement::svgAttributeChanged): Use common
        function buildPendingResource.
        (WebCore::SVGTRefElement::buildPendingResource): Common function
        to prevent triple duplication of same code. made it more readable.
        (WebCore::SVGTRefElement::insertedIntoDocument): Use common
        function buildPendingResource.
        (WebCore::SVGTRefElement::removedFromDocument): Use new helper
        removeEventListener.
        (WebCore::SVGTRefElement::clearEventListener): Helper to clear
        event listener. Name chosen to not collide with Node::removeEventListener.
        * svg/SVGTRefElement.h: definition of new helpers.
        * svg/SVGTextPathElement.cpp:
        (WebCore::SVGTextPathElement::insertedIntoDocument): Copy same
        logic as tref and use element. more asserts and easy bailouts.

2011-10-05  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: restoring : shortcut in inspector.

        * inspector/front-end/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype._createSidebarButtons):

2011-10-05  Andreas Kling  <kling@webkit.org>

        Shrink FontDescription.
        https://bugs.webkit.org/show_bug.cgi?id=69426

        Reviewed by Nikolas Zimmermann.

        Pack FontDescription's members in a bitfield, effectively shrinking
        the class by two CPU-words. This reduces memory consumption by ~1 MB
        on 64-bit when loading the full HTML5 spec.

        * platform/graphics/FontDescription.h:
        (WebCore::FontDescription::orientation):
        (WebCore::FontDescription::textOrientation):
        (WebCore::FontDescription::widthVariant):

2011-10-05  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Add support for search in script content.
        https://bugs.webkit.org/show_bug.cgi?id=69015

        Reviewed by Pavel Feldman.

        Tests: http/tests/inspector/search/search-in-concatenated-script.html
               http/tests/inspector/search/search-in-script.html

        * inspector/Inspector.json:
        * inspector/InspectorDebuggerAgent.cpp:
        (WebCore::InspectorDebuggerAgent::searchInContent):
        (WebCore::InspectorDebuggerAgent::getScriptSource):
        * inspector/InspectorDebuggerAgent.h:
        * inspector/front-end/ContentProviders.js:
        (WebInspector.ScriptContentProvider.prototype.searchInContent):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype._sortedScripts.var):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype._sortedScripts):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype.requestContent):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype.searchInContent.maybeCallback):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype.searchInContent.searchCallback):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype.searchInContent):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype._concatenateScriptsContent):
        * inspector/front-end/Script.js:
        (WebInspector.Script.prototype.requestSource.didGetScriptSource):
        (WebInspector.Script.prototype.requestSource):
        (WebInspector.Script.prototype.searchInContent):

2011-10-05  Alexis Menard  <alexis.menard@openbossa.org>

        [Qt][WK2] Default directories and paths are missing for LocalStorage, Database and IconDatabase.
        https://bugs.webkit.org/show_bug.cgi?id=69111

        Reviewed by Kenneth Rohde Christiansen.

        Provide default path for LocalStorage, Database and IconDatabase using QDesktopServices.

        No new tests : existing ones should cover.

        * platform/qt/CookieJarQt.cpp:
        (WebCore::SharedCookieJarQt::SharedCookieJarQt):

2011-10-05  Patrick Gansterer  <paroga@webkit.org>

        Unreviewed build fix for !ENABLE(FILTERS) after r96203.

        * rendering/svg/SVGResourcesCache.cpp:
        (WebCore::SVGResourcesCache::clientUpdatedFromElement):

2011-10-05  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed build fix for windows bots after r96679.

        * html/NumberInputType.h:

2011-10-04  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: make ResourceView(s) compile
        https://bugs.webkit.org/show_bug.cgi?id=69351

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/CookiesTable.js:
        (WebInspector.CookiesTable.prototype._sortCookies):
        * inspector/front-end/DataGrid.js:
        * inspector/front-end/EmptyView.js:
        * inspector/front-end/FontView.js:
        (WebInspector.FontView.prototype._createContentIfNeeded):
        * inspector/front-end/ImageView.js:
        (WebInspector.ImageView.prototype._createContentIfNeeded.onImageLoad):
        (WebInspector.ImageView.prototype._createContentIfNeeded):
        (WebInspector.ImageView.prototype._openInNewTab):
        * inspector/front-end/NetworkItemView.js:
        * inspector/front-end/ResourceCookiesView.js:
        * inspector/front-end/ResourceHTMLView.js:
        (WebInspector.ResourceHTMLView.prototype.hide):
        * inspector/front-end/ResourceHeadersView.js:
        (WebInspector.ResourceHeadersView.prototype._refreshParms):
        (WebInspector.ResourceHeadersView.prototype._refreshHeadersTitle):
        (WebInspector.ResourceHeadersView.prototype._refreshHeaders):
        (WebInspector.ResourceHeadersView.prototype._refreshHeadersText):
        * inspector/front-end/ResourceJSONView.js:
        (WebInspector.ResourceJSONView.parseJSON.WebInspector.ResourceJSONView.parseJSONP):
        * inspector/front-end/ResourcePreviewView.js:
        * inspector/front-end/ResourceResponseView.js:
        * inspector/front-end/ResourceTimingView.js:
        (WebInspector.ResourceTimingView.createTimingTable):
        * inspector/front-end/ResourceView.js:
        (WebInspector.ResourceSourceFrame):
        * inspector/front-end/SourceFrame.js:
        * inspector/front-end/TabbedPane.js:
        * inspector/front-end/UIUtils.js:
        (Number.secondsToString):
        (Number.bytesToString):
        * inspector/front-end/inspector.js:

2011-10-04  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: debuggerPresentatioModel.linkifyLocation leaks updateAnchor closure instances.
        https://bugs.webkit.org/show_bug.cgi?id=69146

        In many places we use linkifyLocation function to produce a link node which updates automatically when the source file is changed on the fly.
        Such changes happen when we use pretty print or another operation that changes the source code somehow.
        linkifyLocation associates a new instance of updateAnchor closure with the each link node and add the closure to the SourceMappingUpdated event's list.
        As the result the node<->closure pairs wouldn't be collected until reset the UI and DebuggerPresentationModel.

        Reviewed by Pavel Feldman.

        Test: inspector/debugger/linkifier.html

        * inspector/front-end/ConsoleMessage.js:
        (WebInspector.ConsoleMessageImpl):
        (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation):
        * inspector/front-end/ConsoleView.js:
        (WebInspector.ConsoleView.prototype._consoleCleared):
        (WebInspector.ConsoleCommandResult):
        (WebInspector.ConsoleMessage.create):
        (WebInspector.ConsoleMessage.createTextMessage):
        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel.prototype.createLinkifier):
        (WebInspector.DebuggerPresentationModel.Linkifier):
        (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyLocation):
        (WebInspector.DebuggerPresentationModel.Linkifier.prototype.reset):
        (WebInspector.DebuggerPresentationModel.Linkifier.prototype._updateSourceAnchors):
        (WebInspector.DebuggerPresentationModel.Linkifier.prototype._updateAnchor):
        * inspector/front-end/EventListenersSidebarPane.js:
        (WebInspector.EventListenersSidebarPane.prototype.update.callback):
        (WebInspector.EventListenersSidebarPane.prototype.update):
        ():
        * inspector/front-end/NetworkPanel.js:
        (WebInspector.NetworkLogView):
        (WebInspector.NetworkLogView.prototype._reset):
        (WebInspector.NetworkDataGridNode.prototype._refreshInitiatorCell):
        * inspector/front-end/ProfileDataGridTree.js:
        (WebInspector.ProfileDataGridNode.prototype.createCell):
        * inspector/front-end/ProfileView.js:
        (WebInspector.CPUProfileView):
        (WebInspector.CPUProfileView.prototype._resetClicked):
        * inspector/front-end/TimelinePanel.js:
        (WebInspector.TimelinePanel):
        (WebInspector.TimelinePanel.prototype._linkifyLocation):
        (WebInspector.TimelinePanel.prototype._linkifyCallFrame):
        (WebInspector.TimelinePanel.prototype._clearPanel):
        (WebInspector.TimelinePanel.FormattedRecord):
        (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
        (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
        (WebInspector.TimelinePanel.PopupContentHelper):
        (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendLinkRow):
        (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendStackTrace):
        * inspector/front-end/inspector.js:

2011-10-03  Andreas Kling  <kling@webkit.org>

        REGRESSION(r82611) InlineBox has 33 bits of bitset, causing alignment issues and extra memory use.
        https://bugs.webkit.org/show_bug.cgi?id=64914

        Reviewed by Antti Koivisto.

        Remove InlineBox::prevOnLineExists() and its two accompanying bitfields
        since nobody is using them anymore. nextOnLineExists() is still used by
        GTK+ accessibility code.

        Also added a compile-time assertion to guard against future bloating of
        the InlineBox class.

        * rendering/InlineBox.cpp:
        (WebCore::SameSizeAsInlineBox::~SameSizeAsInlineBox):
        * rendering/InlineBox.h:
        (WebCore::InlineBox::InlineBox):

2011-10-05  Andreas Kling  <kling@webkit.org>

        Shrink FontFallbackList.
        https://bugs.webkit.org/show_bug.cgi?id=69093

        Rubber-stamped by Antti Koivisto.

        Workaround MSVC quirk by making enum bitfield "unsigned".

        * platform/graphics/FontFallbackList.h:

2011-10-05  Andreas Kling  <kling@webkit.org>

        Shrink StyleRareNonInheritedData.
        https://bugs.webkit.org/show_bug.cgi?id=69331

        Reviewed by Darin Adler.

        Workaround MSVC quirk by making enum bitfields "unsigned".

        * rendering/style/RenderStyle.h:
        (WebCore::InheritedFlags::regionOverflow):
        (WebCore::InheritedFlags::transformStyle3D):
        (WebCore::InheritedFlags::backfaceVisibility):
        (WebCore::InheritedFlags::pageSizeType):
        * rendering/style/StyleRareNonInheritedData.h:

2011-10-05  Pavel Feldman  <pfeldman@chromium.org>

        Web Inspector: add CSS model classes to the compilation.
        https://bugs.webkit.org/show_bug.cgi?id=69376

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/CSSCompletions.js:
        * inspector/front-end/CSSKeywordCompletions.js:
        (WebInspector.CSSKeywordCompletions.forProperty):
        * inspector/front-end/CSSStyleModel.js:
        (WebInspector.CSSStyleDeclaration):
        (WebInspector.CSSStyleModelResourceBinding.prototype.setContent):
        (WebInspector.CSSStyleModelResourceBinding.prototype.canSetContent):
        * inspector/front-end/ResourceTreeModel.js:
        * inspector/front-end/StylesSidebarPane.js:
        (WebInspector.StylesSidebarPane.prototype._containsInherited):
        (WebInspector.StylePropertiesSection.prototype.isPropertyInherited):
        (WebInspector.StylePropertiesSection.prototype.isPropertyOverloaded):
        (WebInspector.ComputedStylePropertiesSection.prototype.rebuildComputedTrace):
        * inspector/front-end/externs.js:
        (Array.prototype.keySet):

2011-10-05  Kent Tamura  <tkent@chromium.org>

        Input styles are unexpectedly shared regardless of required status difference.
        https://bugs.webkit.org/show_bug.cgi?id=69402

        Reviewed by Daniel Bates.

        Tests: fast/css/pseudo-required-shared.html

        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::canShareStyleWithControl): Check the difference of required().

2011-10-04  Kent Tamura  <tkent@chromium.org>

        Remove Node::willBlur()
        https://bugs.webkit.org/show_bug.cgi?id=69395

        Reviewed by Ryosuke Niwa.

        Revert the WebCore part of r87371 because
        FrameSelection::textWillBeReplaced() doesn't set focus anymore.
        No new tests. Covered by fast/forms/input-number-blur-twice.html.

        * dom/Document.cpp:
        (WebCore::Document::setFocusedNode): Revert r87371.
        * dom/Node.cpp: ditto.
        * dom/Node.h: ditto.
        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::handleBlurEvent): ditto.
        * html/HTMLInputElement.h: ditto.
        * html/InputType.cpp:
        (WebCore::InputType::handleBlurEvent): ditto.
        * html/InputType.h: ditto.
        * html/NumberInputType.cpp:
        (WebCore::NumberInputType::handleBlurEvent): ditto.
        * html/NumberInputType.h: ditto.

2011-10-04  Kent Tamura  <tkent@chromium.org>

        Introduce feature flags for incomplete input types
        https://bugs.webkit.org/show_bug.cgi?id=68971

        Reviewed by Hajime Morita.

        * Configurations/FeatureDefines.xcconfig:
         Add ENABLE_INPUT_TYPE_* flags. They are enabled only for iOS.
        * html/DateInputType.cpp: Wrapped with ENABLE(INPUT_TYPE_DATE)
        * html/DateInputType.h: ditto.
        * html/DateTimeInputType.cpp: Wrapped with ENABLE(INPUT_TYPE_DATETIME)
        * html/DateTimeInputType.h: ditto.
        * html/DateTimeLocalInputType.cpp: Wrapped with ENABLE(INPUT_TYPE_DATETIMELOCAL)
        * html/DateTimeLocalInputType.h: ditto.
        * html/InputType.cpp:
        (WebCore::createInputTypeFactoryMap):
         Recognizes type attribute value only if it is enabled by ENABLE(INPUT_TYPE_*).
        * html/MonthInputType.cpp: Wrapped with ENABLE(INPUT_TYPE_MONTH)
        * html/MonthInputType.h: ditto.
        * html/TimeInputType.cpp: Wrapped with ENABLE(INPUT_TYPE_TIME)
        * html/TimeInputType.h: ditto.
        * html/WeekInputType.cpp: Wrapped with ENABLE(INPUT_TYPE_WEEK)
        * html/WeekInputType.h: ditto.

2011-10-04  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69398

        [CSS3 Regions] Support the region-overflow property properly.
        
        (1) Change -webkit-break to break, since the -webkit-region-overflow property already has the
        -webkit- extension.
        
        (2) Fix clipping so that it works when overflow is set or when region break is set.
        
        (3) Refactor all the pagination spots to check if a next page is available using the new hasNextPage
        function. This prevents us from paginating if we hit the last region and further breaks are no longer
        allowed.
        
        Reviewed by Dan Bernstein.

        Added new tests in fast/regions.

        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseValue):
        * css/CSSPrimitiveValueMappings.h:
        (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
        (WebCore::CSSPrimitiveValue::operator RegionOverflow):
        * css/CSSValueKeywords.in:
        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::collapseMargins):
        (WebCore::RenderBlock::estimateLogicalTopPosition):
        (WebCore::RenderBlock::hasNextPage):
        (WebCore::RenderBlock::nextPageLogicalTop):
        (WebCore::RenderBlock::applyBeforeBreak):
        (WebCore::RenderBlock::applyAfterBreak):
        (WebCore::RenderBlock::pageLogicalHeightForOffset):
        (WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
        (WebCore::RenderBlock::adjustForUnsplittableChild):
        (WebCore::RenderBlock::pushToNextPageWithMinimumLogicalHeight):
        (WebCore::RenderBlock::adjustLinePositionForPagination):
        * rendering/RenderBlock.h:
        * rendering/RenderFlowThread.cpp:
        (WebCore::RenderFlowThread::layout):
        (WebCore::RenderFlowThread::repaintRectangleInRegions):
        (WebCore::RenderFlowThread::regionRemainingLogicalHeightForLine):
        * rendering/RenderFlowThread.h:
        * rendering/RenderRegion.cpp:
        (WebCore::RenderRegion::regionOverflowRect):

2011-10-04  Mark Hahnenberg  <mhahnenberg@apple.com>

        Add static ClassInfo structs to classes that override JSCell::getCallData
        https://bugs.webkit.org/show_bug.cgi?id=69311

        Reviewed by Darin Adler.

        No new tests.

        Added ClassInfo structs to each class that defined its own getCallData 
        function but did not already have its own ClassInfo struct.  This is a 
        necessary addition for when we switch over to looking up getCallData from 
        the MethodTable in ClassInfo rather than doing the virtual call (which we 
        are removing).  These new ClassInfo structs are public because we often 
        use these structs in other areas of the code to uniquely identify JSC classes and 
        to enforce runtime invariants based on those class identities using ASSERTs.
        Also added new createStructure methods to those classes that didn't have 
        them so that the new ClassInfo structs would be used when creating the Structures 
        in these classes.

        * bridge/qt/qt_runtime.cpp:
        * bridge/qt/qt_runtime.h:

2011-10-03  Geoffrey Garen  <ggaren@apple.com>

        Some JSValue cleanup
        https://bugs.webkit.org/show_bug.cgi?id=69320

        Reviewed by Darin Adler.

        * bindings/js/JSDOMBinding.cpp:
        (WebCore::valueToDate):
        * bindings/js/JSErrorHandler.cpp:
        (WebCore::JSErrorHandler::handleEvent):
        * bindings/js/JSEventListener.cpp:
        (WebCore::JSEventListener::handleEvent):
        * bindings/js/JSSQLTransactionCustom.cpp:
        (WebCore::JSSQLTransaction::executeSql):
        * bindings/js/JSSQLTransactionSyncCustom.cpp:
        (WebCore::JSSQLTransactionSync::executeSql):
        * bindings/js/ScriptValue.cpp:
        (WebCore::jsToInspectorValue):
        * bindings/js/SerializedScriptValue.cpp:
        (WebCore::CloneSerializer::dumpIfTerminal):
        * bindings/objc/WebScriptObject.mm:
        (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
        * bridge/jni/jsc/JNIUtilityPrivate.cpp:
        (JSC::Bindings::convertValueToJValue): Updated for JSC changes.

2011-10-04  Sadrul Habib Chowdhury  <sadrul@chromium.org>

        Fix FrameView::scrollElementToRect to take already scrolled amount into consideration.
        https://bugs.webkit.org/show_bug.cgi?id=69220

        Reviewed by Simon Fraser.

        * page/FrameView.cpp:
        (WebCore::FrameView::scrollElementToRect):

2011-10-04  Anders Carlsson  <andersca@apple.com>

        Ignore the warning about using 'override'.

        * WebCore.vcproj/WebCore.vcproj:

2011-10-04  Sam Weinig  <sam@webkit.org>

        Stub out WorkerScriptController::disableEval for v8 to fix the build.

        * bindings/v8/WorkerScriptController.cpp:
        (WebCore::WorkerScriptController::disableEval):
        * bindings/v8/WorkerScriptController.h:

2011-10-04  Sam Weinig  <sam@webkit.org>

        OVERRIDE seems to not be working for Windows. Remove it for now.

        * dom/Document.h:
        * workers/WorkerContext.h:

2011-10-04  Sam Weinig  <sam@webkit.org>

        Wean ContentSecurityPolicy from the Document
        https://bugs.webkit.org/show_bug.cgi?id=69387

        Reviewed by Adam Barth.

        * bindings/js/WorkerScriptController.cpp:
        (WebCore::WorkerScriptController::disableEval):
        * bindings/js/WorkerScriptController.h:
        * dom/Document.cpp:
        (WebCore::Document::disableEval):
        * dom/Document.h:
        * workers/WorkerContext.cpp:
        (WebCore::WorkerContext::disableEval):
        * workers/WorkerContext.h:
        * dom/ScriptExecutionContext.h:
        Add pure virtual disableEval to ScriptExecutionContext, so that ContentSecurityPolicy
        can call it for both Documents and WorkerContexts.

        * page/ContentSecurityPolicy.cpp:
        (WebCore::ContentSecurityPolicy::didReceiveHeader):
        Call the new ScriptExecutionContext::disableEval() function.

        (WebCore::ContentSecurityPolicy::reportViolation):
        Use ScriptExecutionContext::addMessage() instead of going directly to the DOMWindow.

2011-10-04  Anders Carlsson  <andersca@apple.com>

        Move code into ScrollElasticityController::beginScrollGesture()
        https://bugs.webkit.org/show_bug.cgi?id=69383

        Reviewed by John Sullivan.

        * platform/mac/ScrollAnimatorMac.h:
        Add new ScrollElasticityControllerClient member functions.

        * platform/mac/ScrollAnimatorMac.mm:
        (WebCore::ScrollAnimatorMac::isHorizontalScrollerPinnedToMinimumPosition):
        (WebCore::ScrollAnimatorMac::isHorizontalScrollerPinnedToMaximumPosition):
        (WebCore::ScrollAnimatorMac::stretchAmount):
        (WebCore::ScrollAnimatorMac::startSnapRubberbandTimer):
        (WebCore::ScrollAnimatorMac::stopSnapRubberbandTimer):
        Implement the new ScrollElasticityControllerClient member functions.

        (WebCore::ScrollAnimatorMac::beginScrollGesture):
        Move code into ScrollElasticityController::beginScrollGesture and call it directly.

        * platform/mac/ScrollElasticityController.h:
        Add new ScrollElasticityControllerClient member functions.

        * platform/mac/ScrollElasticityController.mm:
        (WebCore::reboundDeltaForElasticDelta):
        (WebCore::ScrollElasticityController::beginScrollGesture):
        Set up the scroll gesture state.

        (WebCore::ScrollElasticityController::stopSnapRubberbandTimer):
        New helper function.

2011-10-04  Scott Graham  <scottmg@chromium.org>

        Add GAMEPAD feature flag
        https://bugs.webkit.org/show_bug.cgi?id=66859

        Reviewed by Darin Fisher.

        No new tests, as no new functionality yet.

        * Configurations/FeatureDefines.xcconfig:
        * GNUmakefile.am:
        * features.pri:

2011-10-04  Fady Samuel  <fsamuel@chromium.org>

        [Chromium] Moved files towards GTK removal
        https://bugs.webkit.org/show_bug.cgi?id=69229

        Reviewed by Tony Chang.

        * WebCore.gypi:
        * platform/chromium/PlatformThemeChromiumLinux.cpp: Renamed from Source/WebCore/platform/chromium/PlatformThemeChromiumGtk.cpp.
        (WebCore::PlatformThemeChromiumLinux::setScrollbarColors):
        (WebCore::clamp):
        (WebCore::PlatformThemeChromiumLinux::saturateAndBrighten):
        (WebCore::PlatformThemeChromiumLinux::outlineColor):
        (WebCore::PlatformThemeChromiumLinux::paintArrowButton):
        * platform/chromium/PlatformThemeChromiumLinux.h: Renamed from Source/WebCore/platform/chromium/PlatformThemeChromiumGtk.h.
        (WebCore::PlatformThemeChromiumLinux::thumbInactiveColor):
        (WebCore::PlatformThemeChromiumLinux::thumbActiveColor):
        (WebCore::PlatformThemeChromiumLinux::trackColor):
        (WebCore::PlatformThemeChromiumLinux::PlatformThemeChromiumLinux):

2011-10-04  James Robinson  <jamesr@chromium.org>

        [chromium] Extract scheduling logic from CCThreadProxy to its own class
        https://bugs.webkit.org/show_bug.cgi?id=69049

        Reviewed by Kenneth Russell.

        This partially extracts the commit/draw scheduling from CCThreadProxy to a separate isolated class. This makes
        the commit/draw logic easier to test, understand and extend.

        There is one subtle behavior change here to the way that the function formerly known as
        CCLayerTreeHost::setNeedsCommitAndRedraw works. Previously, this would trigger a begin frame message, if one
        wasn't pending, and then trigger a redraw if one wasn't pending. This was subtly wrong - the intent of that call
        is that a redraw should happen after the commit. It isn't useful to draw before the commit occurs. This patch
        changes the name of the function to setNeedsCommitThenRedraw and only requests a redraw after a commit occurs.

        Covered by new CCSchedulerTest unit tests, CCLayerTreeHostTest unit tests, and compositing/ layout tests.

        * WebCore.gypi:
        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
        (WebCore::CCLayerTreeHost::initialize):
        (WebCore::CCLayerTreeHost::setZoomAnimatorTransform):
        (WebCore::CCLayerTreeHost::setNeedsCommitThenRedraw):
        (WebCore::CCLayerTreeHost::setViewport):
        (WebCore::CCLayerTreeHost::setVisible):
        * platform/graphics/chromium/cc/CCLayerTreeHost.h:
        * platform/graphics/chromium/cc/CCProxy.h:
        * platform/graphics/chromium/cc/CCScheduler.cpp: Added.
        (WebCore::CCScheduler::CCScheduler):
        (WebCore::CCScheduler::requestCommit):
        (WebCore::CCScheduler::requestCommitThenRedraw):
        (WebCore::CCScheduler::requestRedraw):
        (WebCore::CCScheduler::didCommit):
        (WebCore::CCScheduler::didDraw):
        * platform/graphics/chromium/cc/CCScheduler.h: Added.
        (WebCore::CCSchedulerClient::~CCSchedulerClient):
        (WebCore::CCScheduler::create):
        (WebCore::CCScheduler::commitPending):
        (WebCore::CCScheduler::redrawPending):
        (WebCore::CCScheduler::redrawAfterCommit):
        * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
        (WebCore::CCSingleThreadProxy::setNeedsCommitThenRedraw):
        (WebCore::CCSingleThreadProxy::setNeedsRedraw):
        (WebCore::CCSingleThreadProxy::recreateContextIfNeeded):
        (WebCore::CCSingleThreadProxy::doComposite):
        * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
        (WebCore::CCThreadProxySchedulerClient::create):
        (WebCore::CCThreadProxySchedulerClient::~CCThreadProxySchedulerClient):
        (WebCore::CCThreadProxySchedulerClient::scheduleBeginFrameAndCommit):
        (WebCore::CCThreadProxySchedulerClient::scheduleDrawAndPresent):
        (WebCore::CCThreadProxySchedulerClient::CCThreadProxySchedulerClient):
        (WebCore::CCThreadProxy::CCThreadProxy):
        (WebCore::CCThreadProxy::compositeAndReadback):
        (WebCore::CCThreadProxy::initializeLayerRenderer):
        (WebCore::CCThreadProxy::setNeedsCommit):
        (WebCore::CCThreadProxy::setNeedsCommitOnCCThread):
        (WebCore::CCThreadProxy::setNeedsCommitThenRedraw):
        (WebCore::CCThreadProxy::setNeedsCommitThenRedrawOnCCThread):
        (WebCore::CCThreadProxy::setNeedsRedraw):
        (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
        (WebCore::CCThreadProxy::finishAllRenderingOnCCThread):
        (WebCore::CCThreadProxy::obtainBeginFrameAndCommitTaskFromCCThread):
        (WebCore::CCThreadProxy::createBeginFrameAndCommitTaskOnCCThread):
        (WebCore::CCThreadProxy::beginFrameAndCommit):
        (WebCore::CCThreadProxy::commitOnCCThread):
        (WebCore::CCThreadProxy::drawLayersAndPresentOnCCThread):
        (WebCore::CCThreadProxy::initializeImplOnCCThread):
        * platform/graphics/chromium/cc/CCThreadProxy.h:

2011-10-04  Alexey Proskuryakov  <ap@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=67774
        PDF in a frameset is not displayed, always downloads

        Reviewed by Darin Adler.

        * WebCore.exp.in:
        * WebCore.xcodeproj/project.pbxproj:
        Added exports necessary to subclass a ScrollableArea.

2011-10-04  Anders Carlsson  <andersca@apple.com>

        ScrollElasticityController should keep track of the rubberband timer state
        https://bugs.webkit.org/show_bug.cgi?id=69381

        Reviewed by Sam Weinig.

        Add a m_snapRubberbandTimerIsActive member variable to ScrollElasticityController
        and use it instead of checking whether the m_snapRubberbandTimer is active.

        Eventually, ScrollElasticityControllerClient will have two member functions for starting
        and stopping the timer, and the ScrollElasticityController will call them at the appropriate times.

        * platform/mac/ScrollAnimatorMac.mm:
        (WebCore::ScrollAnimatorMac::handleWheelEvent):
        (WebCore::ScrollAnimatorMac::beginScrollGesture):
        It's OK to stop the timer unconditionally.

        (WebCore::ScrollAnimatorMac::snapRubberBand):
        (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
        * platform/mac/ScrollElasticityController.h:
        * platform/mac/ScrollElasticityController.mm:
        (WebCore::ScrollElasticityController::ScrollElasticityController):

2011-10-04  Anders Carlsson  <andersca@apple.com>

        Move all rubber-banding related member variables to ScrollElasticityController
        https://bugs.webkit.org/show_bug.cgi?id=69379

        Reviewed by Dan Bernstein.

        * platform/mac/ScrollAnimatorMac.h:
        * platform/mac/ScrollAnimatorMac.mm:
        (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
        (WebCore::ScrollAnimatorMac::handleWheelEvent):
        (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
        (WebCore::ScrollAnimatorMac::beginScrollGesture):
        (WebCore::ScrollAnimatorMac::snapRubberBand):
        (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
        * platform/mac/ScrollElasticityController.h:
        * platform/mac/ScrollElasticityController.mm:
        (WebCore::ScrollElasticityController::ScrollElasticityController):

2011-10-04  Anders Carlsson  <andersca@apple.com>

        Build fixes for everyone.

        * platform/chromium/ScrollAnimatorChromiumMac.h:
        * platform/chromium/ScrollAnimatorChromiumMac.mm:
        (WebCore::isScrollingLeftAndShouldNotRubberBand):
        (WebCore::isScrollingRightAndShouldNotRubberBand):
        (WebCore::ScrollAnimatorChromiumMac::smoothScrollWithEvent):
        Fix Chromium build.

        * platform/gtk/PlatformWheelEventGtk.cpp:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent):
        Fix GTK+ build.

2011-10-04  Anders Carlsson  <andersca@apple.com>

        Add a ScrollElasticityController class and move some members over from ScrollAnimatorMac
        https://bugs.webkit.org/show_bug.cgi?id=69373

        Reviewed by David Hyatt.

        ScrollElasticityController is a new class that will handle the rubber-banding when handling scroll events.

        * WebCore.xcodeproj/project.pbxproj:
        * platform/mac/ScrollAnimatorMac.h:
        * platform/mac/ScrollAnimatorMac.mm:
        (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
        (WebCore::ScrollAnimatorMac::handleWheelEvent):
        (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
        (WebCore::ScrollAnimatorMac::beginScrollGesture):
        (WebCore::ScrollAnimatorMac::snapRubberBand):
        (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
        * platform/mac/ScrollElasticityController.h: Added.
        (WebCore::ScrollElasticityControllerClient::~ScrollElasticityControllerClient):
        * platform/mac/ScrollElasticityController.mm: Added.
        (WebCore::ScrollElasticityController::ScrollElasticityController):

2011-10-04  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69372
        
        [CSS3 Regions] Make sure overflow:visible lets content spill out of regions.

        Reviewed by Anders Carlsson.

        No new tests, since plenty of results changed.

        * rendering/RenderFlowThread.cpp:
        (WebCore::RenderFlowThread::paintIntoRegion):
        (WebCore::RenderFlowThread::hitTestRegion):
        (WebCore::RenderFlowThread::repaintRectangleInRegions):
        (WebCore::RenderFlowThread::firstRegion):
        (WebCore::RenderFlowThread::lastRegion):
        * rendering/RenderFlowThread.h:
        * rendering/RenderRegion.cpp:
        (WebCore::RenderRegion::regionOverflowRect):
        (WebCore::RenderRegion::isFirstRegion):
        (WebCore::RenderRegion::isLastRegion):
        (WebCore::RenderRegion::layout):
        * rendering/RenderRegion.h:
        (WebCore::RenderRegion::setRegionRect):
        (WebCore::RenderRegion::regionRect):

2011-10-04  Chris Rogers  <crogers@google.com>

        Avoid unnecessary ASSERT in AudioDSPKernelProcessor::setNumberOfChannels()
        https://bugs.webkit.org/show_bug.cgi?id=69361

        Reviewed by James Robinson.

        No new tests.  This changes no JavaScript API.

        * platform/audio/AudioDSPKernelProcessor.cpp:
        (WebCore::AudioDSPKernelProcessor::setNumberOfChannels):

2011-10-04  Anders Carlsson  <andersca@apple.com>

        Use const PlatformWheelEvent references where possible
        https://bugs.webkit.org/show_bug.cgi?id=69367

        Reviewed by Sam Weinig.

        * page/EventHandler.cpp:
        (WebCore::EventHandler::handleWheelEvent):
        * platform/ScrollAnimator.cpp:
        (WebCore::ScrollAnimator::handleWheelEvent):
        * platform/ScrollAnimator.h:
        * platform/ScrollView.cpp:
        (WebCore::ScrollView::wheelEvent):
        * platform/ScrollView.h:
        * platform/ScrollableArea.cpp:
        (WebCore::ScrollableArea::handleWheelEvent):
        * platform/ScrollableArea.h:
        * platform/chromium/ScrollAnimatorChromiumMac.h:
        * platform/chromium/ScrollAnimatorChromiumMac.mm:
        (WebCore::ScrollAnimatorChromiumMac::handleWheelEvent):
        * platform/mac/ScrollAnimatorMac.h:
        * platform/mac/ScrollAnimatorMac.mm:
        (WebCore::isScrollingLeftAndShouldNotRubberBand):
        (WebCore::isScrollingRightAndShouldNotRubberBand):
        (WebCore::ScrollAnimatorMac::handleWheelEvent):
        (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):

2011-10-04  Andreas Kling  <kling@webkit.org>

        Shrink HTMLTableCellElement.
        https://bugs.webkit.org/show_bug.cgi?id=69347

        Reviewed by Antti Koivisto.

        Don't cache the rowspan and colspan attributes on the element.
        This shrinks HTMLTableCellElement by one CPU word, reducing memory
        consumption by 80 kB (on 64-bit) when loading the full HTML5 spec.

        * html/HTMLTableCellElement.cpp:
        (WebCore::HTMLTableCellElement::HTMLTableCellElement):
        (WebCore::HTMLTableCellElement::colSpan):
        (WebCore::HTMLTableCellElement::rowSpan):
        (WebCore::HTMLTableCellElement::parseMappedAttribute):
        * html/HTMLTableCellElement.h:

2011-10-04  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96630.
        http://trac.webkit.org/changeset/96630
        https://bugs.webkit.org/show_bug.cgi?id=69368

        Caused assertion failures in validateCell (Requested by
        mhahnenberg on #webkit).

        * bridge/qt/qt_runtime.cpp:
        * bridge/qt/qt_runtime.h:

2011-10-04  Cary Clark  <caryclark@google.com>

        Enable sub pixel text (Skia on Mac)
        https://bugs.webkit.org/show_bug.cgi?id=69354
        http://code.google.com/p/chromium/issues/detail?id=98165

        Reviewed by Eric Seidel.

        No new tests. Layout test pixel results have been
        disabled and will be rebaselined once all Skia on Mac
        changes are in.

        * platform/graphics/skia/FontSkia.cpp:
        (WebCore::setupPaint):
        Enable sub pixel text. This is set by default to enabled
        by CoreGraphics, but by default disabled on Skia.

2011-10-04  Anders Carlsson  <andersca@apple.com>

        Remove PlatformWheelEvent::m_isAccepted
        https://bugs.webkit.org/show_bug.cgi?id=69357

        Reviewed by Darin Adler.

        Remove PlatformWheelEvent::m_isAccepted and all the getters/setters.

        * page/EventHandler.cpp:
        (WebCore::EventHandler::handleWheelEvent):
        (WebCore::EventHandler::handleGestureEvent):
        * page/mac/EventHandlerMac.mm:
        (WebCore::EventHandler::wheelEvent):
        * platform/PlatformWheelEvent.h:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent):
        * platform/ScrollAnimator.cpp:
        (WebCore::ScrollAnimator::handleWheelEvent):
        * platform/chromium/PopupContainer.cpp:
        (WebCore::PopupContainer::handleGestureEvent):
        * platform/chromium/ScrollAnimatorChromiumMac.mm:
        (WebCore::ScrollAnimatorChromiumMac::handleWheelEvent):
        * platform/efl/PlatformWheelEventEfl.cpp:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent):
        * platform/mac/ScrollAnimatorMac.mm:
        (WebCore::ScrollAnimatorMac::handleWheelEvent):
        * platform/mac/WheelEventMac.mm:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent):
        * platform/qt/WheelEventQt.cpp:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent):
        * platform/win/WheelEventWin.cpp:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent):
        * platform/wx/MouseWheelEventWx.cpp:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent):

2011-09-21  Cris Neckar  <cdn@chromium.org>

        Hold refptr to identified previous sibling within findPlaceForCounter.
        https://bugs.webkit.org/show_bug.cgi?id=68563

        Reviewed by Adam Barth.

        Test: fast/css/counters/counter-after-style-crash.html

        * rendering/RenderCounter.cpp:
        (WebCore::findPlaceForCounter):

2011-10-04  Joshua Bell  <jsbell@chromium.org>

        IndexedDB add() should fail if key is NaN
        https://bugs.webkit.org/show_bug.cgi?id=62286

        Reviewed by Tony Chang.

        Test: storage/indexeddb/invalid-keys.html

        Implement special case - numbers are valid keys, except for NaN.

        * bindings/v8/IDBBindingUtilities.cpp:
        (WebCore::createIDBKeyFromValue):

2011-10-04  Mark Hahnenberg  <mhahnenberg@apple.com>

        Add static ClassInfo structs to classes that override JSCell::getCallData
        https://bugs.webkit.org/show_bug.cgi?id=69311

        Reviewed by Darin Adler.

        No new tests.

        Added ClassInfo structs to each class that defined its own getCallData 
        function but did not already have its own ClassInfo struct.  This is a 
        necessary addition for when we switch over to looking up getCallData from 
        the MethodTable in ClassInfo rather than doing the virtual call (which we 
        are removing).  These new ClassInfo structs are public because we often 
        use these structs in other areas of the code to uniquely identify JSC classes and 
        to enforce runtime invariants based on those class identities using ASSERTs.

        * bridge/qt/qt_runtime.cpp:
        * bridge/qt/qt_runtime.h:

2011-10-04  Ryosuke Niwa  <rniwa@webkit.org>

        REGRESSION(r94274): setting input.value erroneously triggers focus event
        https://bugs.webkit.org/show_bug.cgi?id=69315

        Reviewed by Kent Tamura.

        Fixed the bug by adding a new flag to setSelection to avoid calling setFocusedNodeIfNeeded
        when called by nodeWillBeRemoved and textWillBeReplaced.

        Added a manual test. Unfortunately, the test always passes in DRT.

        * editing/FrameSelection.cpp:
        (WebCore::FrameSelection::setSelection):
        (WebCore::FrameSelection::respondToNodeModification):
        (WebCore::FrameSelection::textWillBeReplaced):
        * editing/FrameSelection.h:
        * manual-tests/mutate-unfocused-text-with-selection.html: Added.

2011-10-04  Young Han Lee  <joybro201@gmail.com>

        HTML canvas strokes with dash and dashOffset
        https://bugs.webkit.org/show_bug.cgi?id=63933

        Reviewed by Simon Fraser.

        Add webkitLineDash and webkitLineDashOffset attributes to CanvasRenderingContext2D for JSC.
        These attributes can be used to determine the dash-style of stroke in HTML Canvas.

        As this kind of attributes are not specified in the HTML Canvas specification yet,
        the 'webkit' prefix is added to its names.

        Mozilla already implemented these attributes, mozDash and mozDashOffset [1], and this patch
        is created by referring to the implementation. This patch is basically using the specified
        behavior of stroke-dasharray and stroke-dashoffset in the SVG specification [2], except
        that doesn't support units or percentages, just floating point numbers.

        [1] https://bugzilla.mozilla.org/show_bug.cgi?id=662038
        [2] http://www.w3.org/TR/SVG/painting.html#StrokeProperties

        Tests: fast/canvas/canvas-webkitLineDash-invalid.html
               fast/canvas/canvas-webkitLineDash.html

        * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
        (WebCore::JSCanvasRenderingContext2D::webkitLineDash):
        (WebCore::JSCanvasRenderingContext2D::setWebkitLineDash):
        * html/canvas/CanvasRenderingContext2D.cpp:
        (WebCore::CanvasRenderingContext2D::State::State):
        (WebCore::CanvasRenderingContext2D::webkitLineDash):
        (WebCore::CanvasRenderingContext2D::setWebkitLineDash):
        (WebCore::CanvasRenderingContext2D::webkitLineDashOffset):
        (WebCore::CanvasRenderingContext2D::setWebkitLineDashOffset):
        * html/canvas/CanvasRenderingContext2D.h:
        * html/canvas/CanvasRenderingContext2D.idl:

2011-10-04  Matthew Delaney  <mdelaney@apple.com>

        Allow canvas backing store to be lazily allocated
        https://bugs.webkit.org/show_bug.cgi?id=67054

        Reviewed by Darin Adler.

        No new tests; doesn't affect behavior.

        * html/HTMLCanvasElement.cpp:
        (WebCore::HTMLCanvasElement::createImageBuffer): Removed the setting of lineWidth
        that caused the eager creation of ImageBuffer to use its GraphicsContext.
        * html/canvas/CanvasRenderingContext2D.cpp:
        (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D): Added in default
        line width setting along with other default context settings.

2011-10-04  Sam Weinig  <sam@webkit.org>

        Add support for the CSP connect-src directive
        https://bugs.webkit.org/show_bug.cgi?id=69353

        Reviewed by Adam Barth.

        Add CSP support for XMLHttpRequest, WebSockets and EventSource.

        Tests: http/tests/security/contentSecurityPolicy/connect-src-eventsource-allowed.html
               http/tests/security/contentSecurityPolicy/connect-src-eventsource-blocked.html
               http/tests/security/contentSecurityPolicy/connect-src-websocket-allowed.html
               http/tests/security/contentSecurityPolicy/connect-src-websocket-blocked.html
               http/tests/security/contentSecurityPolicy/connect-src-xmlhttprequest-allowed.html
               http/tests/security/contentSecurityPolicy/connect-src-xmlhttprequest-blocked.html

        * page/ContentSecurityPolicy.cpp:
        (WebCore::ContentSecurityPolicy::allowConnectFromSource):
        (WebCore::ContentSecurityPolicy::addDirective):
        * page/ContentSecurityPolicy.h:
        Add connect-src directive parsing and predicate.

        * page/EventSource.cpp:
        (WebCore::EventSource::create):
        * websockets/WebSocket.cpp:
        (WebCore::WebSocket::connect):
        * xml/XMLHttpRequest.cpp:
        (WebCore::XMLHttpRequest::open):
        Test allowConnectFromSource when establishing a connection.

2011-10-03  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69317
        
        [CSS3 Regions] Make overflow:hidden/auto/scroll sections behave properly when split across regions. This
        includes sizing and positioning independently in each region, clipping independently in each region, and
        shifting to avoid floats in each region.

        Reviewed by Anders Carlsson.

        Added many new tests in fast/regions.

        * editing/Editor.cpp:
        (WebCore::Editor::insideVisibleArea):
        Patching a call to overflowClipRect, which now includes a region argument so that clipping can be adjusted
        per-region.

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::layoutBlock):
        Don't clear out the cached region information when the width changes. Instead make a new call to
        the flow thread to check if widths changed in any region and set relayoutChildren to true if so.

        (WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats):
        This is a new function that has been split out from determineLogicalLeftPositionForChild so that it can
        be called by region code to compute offsets independently in each region without altering the overall object's
        logical left position.
        
        (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
        Patched to call computeStartPositionDeltaForChildAvoidingFloats instead of doing the work of avoiding the floats
        itself.

        (WebCore::RenderBlock::computeLogicalLocationForFloat):
        Fix the left clamping code to clamp to the left border in the correct region rather than always just clamping
        to 0.

        (WebCore::RenderBlock::logicalLeftOffsetForContent):
        (WebCore::RenderBlock::logicalRightOffsetForContent):
        Tweaked to handle the new signature of borderBoxRectInRegion.

        (WebCore::RenderBlock::nextFloatLogicalBottomBelow):
        Reworked not to return 0 on failure or when done, but to just return the current height. This is a more
        fitting answer for the function to return when no more floats remain.

        (WebCore::RenderBlock::getClearDelta):
        Big changes to this function. It was never patched to support writing modes, so the new code is all
        writing-mode-aware now. Also improved the computeLogicalWidth() call to make sure margins didn't get incorrectly changed.
        The code computes transient information in each region as the object tries to find a place to fit, so that the
        old widths are properly retained when layout of that child later checks to see if it needs to relayout children or not.

        (WebCore::RenderBlock::nodeAtPoint):
        Patched to call overflowClipRect with the region being hit tested.

        (WebCore::inNormalFlow):
        Tweaked to not need the initialBlock variable.

        (WebCore::RenderBlock::applyBeforeBreak):
        (WebCore::RenderBlock::applyAfterBreak):
        (WebCore::RenderBlock::pageLogicalHeightForOffset):
        (WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
        (WebCore::RenderBlock::adjustForUnsplittableChild):
        (WebCore::RenderBlock::adjustLinePositionForPagination):
        (WebCore::RenderBlock::lineWidthForPaginatedLineChanged):
        Tweaked to use inRenderFlowThread() now that it exists. Also removing the regionsHaveUniformLogicalWidth()
        optimization, since you can't rely on that when objects size differently depending on floats. In other words,
        the future of pagination is variable width objects even in printing/columns.

        (WebCore::RenderBlock::offsetFromLogicalTopOfFirstPage):
        Renamed to make it more clear what logicalPageOffset() was. It's your offset from the top of the first page.

        (WebCore::RenderBlock::regionAtBlockOffset):
        New helper function for accessing the region at a given offset within your block.

        (WebCore::RenderBlock::logicalWidthChangedInRegions):
        New helper function that computes whether or not your logical width information changed in any regions. If so,
        relayoutChildren gets set to true (just as it would have when computeLogicalWidth for the overall block changes
        values).

        (WebCore::RenderBlock::collapsedMarginBeforeForChild):
        (WebCore::RenderBlock::collapsedMarginAfterForChild):
        (WebCore::RenderBlock::marginBeforeForChild):
        (WebCore::RenderBlock::marginAfterForChild):
        (WebCore::RenderBlock::marginLogicalLeftForChild):
        (WebCore::RenderBlock::marginLogicalRightForChild):
        (WebCore::RenderBlock::marginStartForChild):
        (WebCore::RenderBlock::marginEndForChild):
        Tweaked because of const to take const arguments.
        
        * rendering/RenderBlock.h:
        (WebCore::RenderBlock::availableLogicalWidthForLine):
        (WebCore::RenderBlock::logicalRightOffsetForLine):
        (WebCore::RenderBlock::logicalLeftOffsetForLine):
        (WebCore::RenderBlock::startOffsetForLine):
        (WebCore::RenderBlock::logicalWidthForChild):
        (WebCore::RenderBlock::logicalHeightForChild):
        (WebCore::RenderBlock::logicalTopForChild):
        (WebCore::RenderBlock::logicalLeftForChild):
        (WebCore::RenderBlock::availableLogicalWidthForContent):
        (WebCore::RenderBlock::startOffsetForContent):
        (WebCore::RenderBlock::logicalLeftOffsetForContent):
        (WebCore::RenderBlock::logicalRightOffsetForContent):
        Reworking these functions so versions exist that take regions and page offsets to avoid having to recalculate
        where you are over and over again as you walk up a containing block chain.

        * rendering/RenderBlockLineLayout.cpp:
        (WebCore::LineWidth::fitBelowFloats):
        Changed to handle the better return value for nextFloatLogicalBottomBelow.
        
        (WebCore::RenderBlock::checkPaginationAndFloatsAtEndLine):
        Removing the uniform logical width optimization.

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::borderBoxRectInRegion):
        Changed to take a region and offset from the first page so that it doesn't have to be recomputed as you recur up
        the containing block chain.

        (WebCore::RenderBox::clearRenderBoxRegionInfo):
        Changed to just use inRenderFlowThread().

        (WebCore::RenderBox::pushContentsClip):
        Changed for the new region-parameterized overflow clip function.
        
        (WebCore::RenderBox::overflowClipRect):
        Now takes a region so that a specific clip rect can be returned sized to the appropriate border box in that
        region.

        (WebCore::RenderBox::containingBlockLogicalWidthForContent):
        (WebCore::RenderBox::containingBlockLogicalWidthForContentInRegion):
        Objects in flow threads no longer shrink to avoid floats when computing their overall widths. The region-specific
        check now does the shrinking. It checks at the point where the region slices the object, or the top of the object if
        it begins in the middle of the region.

        (WebCore::RenderBox::computeLogicalWidth):
        (WebCore::RenderBox::computeLogicalWidthInRegion):
        Push all the rest of the computeLogicalWidth code into computeLogicalWidthInRegion.
        
        (WebCore::RenderBox::renderBoxRegionInfo):
        Changed to take the region and the offset from the top of the first page to avoid recomputation.

        * rendering/RenderBox.h:
        (WebCore::RenderBox::hasRenderOverflow):
        (WebCore::RenderBox::hasVisualOverflow):
        New helper used by the RenderLayer code to avoid having to check visual overflow when none exists.

        * rendering/RenderBoxModelObject.cpp:
        (WebCore::RenderBoxModelObject::paintFillLayerExtended):
        Use the new region-specific overflow clip.

        * rendering/RenderBoxRegionInfo.h:
        (WebCore::RenderBoxRegionInfo::shiftLogicalLeft):
        Helper used by the region code to shift a box over when floats cause it to move.

        * rendering/RenderFlowThread.cpp:
        (WebCore::RenderFlowThread::computeLogicalWidth):
        Remove the optimization to avoid creating box info for uniform widths.

        (WebCore::RenderFlowThread::paintIntoRegion):
        Make the clip rects used when painting the flow thread's layer tree temporary in each region.

        (WebCore::RenderFlowThread::removeRenderBoxRegionInfo):
        Removing the uniform logical width optimization

        (WebCore::RenderFlowThread::logicalWidthChangedInRegions):
        * rendering/RenderFlowThread.h:
        New helper called to see if a block needs to relayout its children because its width changed in some
        region.

        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::paint):
        (WebCore::RenderLayer::paintLayer):
        (WebCore::RenderLayer::hitTestLayer):
        (WebCore::RenderLayer::updateClipRects):
        (WebCore::RenderLayer::calculateClipRects):
        (WebCore::RenderLayer::parentClipRects):
        (WebCore::RenderLayer::backgroundClipRect):
        (WebCore::RenderLayer::calculateRects):
        (WebCore::RenderLayer::childrenClipRect):
        (WebCore::RenderLayer::selfClipRect):
        (WebCore::RenderLayer::repaintBlockSelectionGaps):
        * rendering/RenderLayer.h:
        * rendering/RenderLayerBacking.cpp:
        (WebCore::RenderLayerBacking::updateCompositedBounds):
        (WebCore::clipBox):
        (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
        (WebCore::RenderLayerBacking::paintIntoLayer):
        * rendering/RenderLayerCompositor.cpp:
        (WebCore::RenderLayerCompositor::addToOverlapMap):
        (WebCore::RenderLayerCompositor::clippedByAncestor):
        Changing all the layer clipping code to pass regions through to all of the helper functions involved. This is
        so overflowClipRect can ultimately take a region. Eventually when we get positioned objects moving independently
        in each region, we'll patch the "clip" property as well, and it will be much easier because all the plumbing has
        been put in place here for overflow.
        
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::enclosingRenderFlowThread):
        Optimized to not walk up the render tree if we're in layout and a currentRenderFlowThread() exists.

        * rendering/RenderRegion.cpp:
        (WebCore::RenderRegion::renderBoxRegionInfo):
        (WebCore::RenderRegion::setRenderBoxRegionInfo):
        (WebCore::RenderRegion::takeRenderBoxRegionInfo):
        Removing the optimization for uniform logical width regions. Changed remove to take so that the caller
        can examine it before deleting.

        (WebCore::RenderRegion::offsetFromLogicalTopOfFirstPage):
        * rendering/RenderRegion.h:
        Helper function that computes the region's offset from the top of the first page.

        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::overflowClipRect):
        (WebCore::RenderTable::nodeAtPoint):
        * rendering/RenderTable.h:
        * rendering/RenderTableCell.h:
        * rendering/RenderTableSection.cpp:
        (WebCore::RenderTableSection::nodeAtPoint):
        Changed to pass the region to overflowClipRect.

        * rendering/RenderTreeAsText.cpp:
        (WebCore::writeLayers):
        Modified because the layer clip functions need regions now.

        * rendering/RenderView.h:
        (WebCore::RenderView::pushLayoutState):
        Changed to use inRenderFlowThread over view()->hasRenderFlowThread.
        
        * rendering/svg/RenderSVGRoot.cpp:
        (WebCore::RenderSVGRoot::paint):
        Patched to use the new overflowClipRect that is region-specific.

2011-10-04  Anders Carlsson  <andersca@apple.com>

        More work towards making PlatformWheelEvent immutable
        https://bugs.webkit.org/show_bug.cgi?id=69348

        Reviewed by Sam Weinig.

        More work on getting rid of m_isAccepted from PlatformWheelEvent. Add more asserts
        that the return value of handleWheelEvent is equal to m_isAccepted.

        * page/EventHandler.cpp:
        (WebCore::EventHandler::handleWheelEvent):
        * platform/ScrollAnimator.cpp:
        (WebCore::ScrollAnimator::handleWheelEvent):

2011-10-04  Cary Clark  <caryclark@google.com>

        Inset focus ring (Skia on Mac)
        https://bugs.webkit.org/show_bug.cgi?id=69166
        http://code.google.com/p/chromium/issues/detail?id=97956

        This focus ring was drawn too large and was left tracks
        in subsequent invalidations. Make it more closely match
        the CG version.

        Reviewed by Adam Barth.

        No new tests. This platform is not enabled.

        * platform/graphics/skia/GraphicsContextSkia.cpp:
        (WebCore::getFocusRingOutset):
        (WebCore::GraphicsContext::drawFocusRing):

2011-10-03  Jon Lee  <jonlee@apple.com>

        Extend DOM WheelEvent to differentiate between physical and logical scroll directions
        https://bugs.webkit.org/show_bug.cgi?id=68959
        <rdar://problem/10036688>

        Reviewed by Sam Weinig.

        Test: fast/events/wheelevent-direction-inverted-from-device.html

        * dom/WheelEvent.cpp:
        (WebCore::WheelEvent::WheelEvent):
        (WebCore::WheelEvent::initWheelEvent):
        (WebCore::WheelEventDispatchMediator::WheelEventDispatchMediator):
        * dom/WheelEvent.h:
        (WebCore::WheelEvent::create):
        (WebCore::WheelEvent::webkitDirectionInvertedFromDevice):
        * dom/WheelEvent.idl: Added the webkitDirectionInvertedFromDevice idl attribute.
        * platform/PlatformWheelEvent.h:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent):
        (WebCore::PlatformWheelEvent::webkitDirectionInvertedFromDevice):
        * platform/efl/PlatformWheelEventEfl.cpp:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent): default to false.
        * platform/gtk/PlatformWheelEventGtk.cpp:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent): default to false.
        * platform/mac/WheelEventMac.mm:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent): if building on Lion or later, use
        [NSEvent isDirectionInvertedFromDevice].
        * platform/qt/WheelEventQt.cpp:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent): default to false.
        * platform/win/WheelEventWin.cpp:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent): default to false.
        * platform/wx/MouseWheelEventWx.cpp:
        (WebCore::PlatformWheelEvent::PlatformWheelEvent): default to false.

2011-10-04  Rémi Duraffort  <remi.duraffort@st.com>

        [EFL] Fix compilation when SQLite and/or libxslt are not installed in /usr/include
        https://bugs.webkit.org/show_bug.cgi?id=69338

        Unreviewed build fix

        * CMakeListsEfl.txt:

2011-10-03 Ken Buchanan <kenrb@chromium.org>

        Resource loader should block HTTP redirects to local resources
        https://bugs.webkit.org/show_bug.cgi?id=68706

        Reviewed by Adam Barth.

        Modified MainResourceLoader to add an extra security check on
        HTTP redirects. Also, moved isFeedWithNestedProtocolInHTTPFamily
        to SecurityOrigin.cpp.

        * loader/FrameLoader.cpp:
        (WebCore::isFeedWithNestedProtocolInHTTPFamily):
        (WebCore::FrameLoader::loadFrameRequest):
        * loader/MainResourceLoader.cpp:
        (WebCore::MainResourceLoader::willSendRequest):
        * page/SecurityOrigin.cpp:
        (WebCore::isFeedWithNestedProtocolInHTTPFamily):
        (WebCore::SecurityOrigin::canDisplay):

2011-10-04  Cary Clark  <caryclark@google.com>

        Apply color profile found to decoded bitmap (Skia on Mac)
        https://bugs.webkit.org/show_bug.cgi?id=69144
        This fixes http://code.google.com/p/chromium/issues/detail?id=97830

        Reviewed by Stephen White.

        No new tests. This platform is not enabled.

        * platform/image-decoders/ImageDecoder.h:
        Add color profile slot to Skia variation.

        * platform/image-decoders/skia/ImageDecoderSkia.cpp:
        (WebCore::resolveColorSpace):
        Adjust the bitmap in place to use the supplied color space.

        (WebCore::createColorSpace):
        Create a CGColorSpace from a color profile.

        (WebCore::ImageFrame::setColorProfile):
        Save the image's color profile until the image is complete.

        (WebCore::ImageFrame::setStatus):
        Apply the color profile, if any, to the image.

2011-10-04  Leandro Pereira  <leandro@profusion.mobi>

        [CMake] Unreviewed: pass feature definitions in the right format for the CSS scripts.

        The Perl scripts in the css/ directory expect the definitions passed via
        --defines to be a string of space-separated entries, however we were passing a
        list of semicolon-separated strings, thus making all feature defines actually
        be ignored.

        Detected after r96433, which checked for some definitions in
        CSSPropertyNames.in.

        No new tests, this is a build fix.

        * CMakeLists.txt:

2011-10-04  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: make SourceFrame compile.
        https://bugs.webkit.org/show_bug.cgi?id=69345

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/DOMAgent.js:
        (WebInspector.DOMAgent.prototype.inspectElement):
        (WebInspector.DOMDispatcher.prototype.inspectElementRequested):
        * inspector/front-end/ElementsPanel.js:
        (WebInspector.ElementsPanel.prototype._inspectElementRequested):
        * inspector/front-end/ObjectPropertiesSection.js:
        (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired):
        (WebInspector.ObjectPropertyTreeElement.prototype.startEditing):
        * inspector/front-end/ResourcesPanel.js:
        (WebInspector.ResourcesPanel.prototype._applyDiffMarkup):
        * inspector/front-end/SourceFrame.js:
        (WebInspector.SourceFrame.prototype._onShowPopover.showObjectPopover):
        (WebInspector.SourceFrame.prototype._onShowPopover):
        (WebInspector.SourceFrame.prototype._editBreakpointCondition):
        (WebInspector.SourceFrame.prototype.startEditing):
        (WebInspector.SourceFrame.prototype.commitEditing.didEditContent):
        (WebInspector.SourceFrame.prototype.commitEditing):
        (WebInspector.SourceFrameDelegate.prototype.requestContent):
        (WebInspector.SourceFrameDelegate.prototype.debuggingSupported):
        (WebInspector.SourceFrameDelegate.prototype.setBreakpoint):
        (WebInspector.SourceFrameDelegate.prototype.removeBreakpoint):
        (WebInspector.SourceFrameDelegate.prototype.updateBreakpoint):
        (WebInspector.SourceFrameDelegate.prototype.findBreakpoint):
        (WebInspector.SourceFrameDelegate.prototype.continueToLine):
        (WebInspector.SourceFrameDelegate.prototype.canEditScriptSource):
        (WebInspector.SourceFrameDelegate.prototype.setScriptSource):
        (WebInspector.SourceFrameDelegate.prototype.setScriptSourceIsBeingEdited):
        (WebInspector.SourceFrameDelegate.prototype.debuggerPaused):
        (WebInspector.SourceFrameDelegate.prototype.evaluateInSelectedCallFrame):
        (WebInspector.SourceFrameDelegate.prototype.releaseEvaluationResult):
        (WebInspector.SourceFrameDelegate.prototype.suggestedFileName):
        * inspector/front-end/externs.js:
        (WebInspector.log):
        * inspector/front-end/inspector.js:
        (WebInspector.log.logMessage):
        (WebInspector.log):
        * inspector/front-end/utilities.js:
        ():

2011-10-04  Mikhail Naganov  <mnaganov@chromium.org>

        Web Inspector: Factor out object properties popup.
        https://bugs.webkit.org/show_bug.cgi?id=69234

        Also, for HTML elements, show a non-empty id value in the element name.

        Reviewed by Pavel Feldman.

        * WebCore.gypi:
        * WebCore.vcproj/WebCore.vcproj:
        * inspector/front-end/ObjectPopoverHelper.js: Added.
        * inspector/front-end/SourceFrame.js: Extracted from here.
        (WebInspector.SourceFrame.prototype._initializeTextViewer):
        (WebInspector.SourceFrame.prototype._mouseDown):
        (WebInspector.SourceFrame.prototype._onShowPopover.showObjectPopover):
        (WebInspector.SourceFrame.prototype._onShowPopover):
        * inspector/front-end/WebKit.qrc:
        * inspector/front-end/inspector.html:

2011-10-04  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: compile text editor.
        https://bugs.webkit.org/show_bug.cgi?id=69339

        Drive-by compilation for color, database and dom storage entities.

        Reviewed by Yury Semikhatsky.

        * inspector/Inspector.json:
        * inspector/compile-front-end.sh:
        * inspector/front-end/Color.js:
        (WebInspector.Color.prototype._individualRGBValueToFloatValue):
        * inspector/front-end/KeyboardShortcut.js:
        (WebInspector.KeyboardShortcut.makeKey):
        (WebInspector.KeyboardShortcut.makeKeyFromEvent):
        (WebInspector.KeyboardShortcut.makeDescriptor):
        * inspector/front-end/SourceCSSTokenizer.js:
        * inspector/front-end/SourceCSSTokenizer.re2js:
        * inspector/front-end/SourceHTMLTokenizer.js:
        * inspector/front-end/SourceHTMLTokenizer.re2js:
        * inspector/front-end/SourceJavaScriptTokenizer.js:
        * inspector/front-end/SourceJavaScriptTokenizer.re2js:
        * inspector/front-end/SourceTokenizer.js:
        (WebInspector.SourceTokenizer.prototype._charAt):
        (WebInspector.SourceTokenizer.prototype.createInitialCondition):
        (WebInspector.SourceTokenizer.prototype.nextToken):
        * inspector/front-end/TextEditorHighlighter.js:
        (WebInspector.TextEditorHighlighter.prototype.highlight):
        (WebInspector.TextEditorHighlighter.prototype._highlightLines):
        * inspector/front-end/TextEditorModel.js:
        * inspector/front-end/TextViewer.js:
        (WebInspector.TextViewerDelegate.prototype.doubleClick):
        (WebInspector.TextViewerDelegate.prototype.beforeTextChanged):
        (WebInspector.TextViewerDelegate.prototype.afterTextChanged):
        (WebInspector.TextViewerDelegate.prototype.commitEditing):
        (WebInspector.TextViewerDelegate.prototype.cancelEditing):
        (WebInspector.TextViewerDelegate.prototype.populateLineGutterContextMenu):
        (WebInspector.TextViewerDelegate.prototype.populateTextAreaContextMenu):
        (WebInspector.TextViewerDelegate.prototype.suggestedFileName):
        (WebInspector.TextEditorMainPanel.prototype._enclosingLineRowOrSelf):
        (WebInspector.TextEditorMainPanel.prototype._createLink):
        (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
        (WebInspector.TextEditorMainPanel.prototype._updateChunksForRanges):
        * inspector/front-end/externs.js:
        (WebInspector.completeURL):
        (window.getComputedStyle):
        (Event.prototype.initWebKitWheelEvent):
        * inspector/front-end/utilities.js:

2011-10-04  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Timeline panel shortcut for filtering short records should have shorter description.
        https://bugs.webkit.org/show_bug.cgi?id=69333

        Reviewed by Pavel Feldman.

        * English.lproj/localizedStrings.js:
        * inspector/front-end/TimelinePanel.js:
        (WebInspector.TimelinePanel.prototype._registerShortcuts):

2011-10-04  Andreas Kling  <kling@webkit.org>

        Shrink StyleRareNonInheritedData.
        https://bugs.webkit.org/show_bug.cgi?id=69331

        Reviewed by Antti Koivisto.

        Rearrange the members and move all small types into the bitfield.
        This shrinks StyleRareNonInheritedData by two CPU words, reducing memory
        consumption by 140 kB (on 64-bit) when loading the full HTML5 spec.

        * rendering/style/StyleRareNonInheritedData.cpp:
        (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
        * rendering/style/StyleRareNonInheritedData.h:

2011-10-04  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Remove http/tests/inspector/network/disabled-cache-crash.html.
        https://bugs.webkit.org/show_bug.cgi?id=69332

        Reviewed by Pavel Feldman.

        * WebCore.exp.in:
        * testing/Internals.cpp:
        * testing/Internals.h:
        * testing/Internals.idl:

2011-10-04  Pavel Feldman  <pfeldman@chromium.org>

        Web Inspector: make DataGrid compile
        https://bugs.webkit.org/show_bug.cgi?id=69334

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/DataGrid.js:
        (WebInspector.DataGrid):
        (WebInspector.DataGrid.prototype._startEditingColumnOfDataGridNode):
        (WebInspector.DataGrid.prototype._startEditing):
        (WebInspector.DataGrid.prototype._startEditingConfig):
        (WebInspector.DataGrid.prototype._editingCommitted.moveToNextIfNeeded):
        (WebInspector.DataGrid.prototype._editingCommitted):
        (WebInspector.DataGrid.prototype._editingCancelled):
        (WebInspector.DataGrid.prototype.removeChildrenRecursive):
        (WebInspector.DataGrid.prototype._keyDown):
        (WebInspector.DataGrid.prototype._startResizerDragging):
        (WebInspector.DataGrid.prototype._resizerDragging):
        (WebInspector.DataGrid.prototype._endResizerDragging):
        (WebInspector.DataGridNode.prototype._attach):
        * inspector/front-end/UIUtils.js:
        (WebInspector.isBeingEdited):
        (WebInspector.markBeingEdited):
        (WebInspector.isEditingAnyField):
        (WebInspector.EditingConfig):
        (WebInspector.startEditing.blurEventListener):
        (WebInspector.startEditing.getContent):
        (WebInspector.startEditing.cleanUpAfterEditing):
        (WebInspector.startEditing.editingCancelled):
        (WebInspector.startEditing.editingCommitted):
        (WebInspector.startEditing.defaultFinishHandler):
        (WebInspector.startEditing):
        (WebInspector.startEditing.pasteEventListener):
        (WebInspector.startEditing.keyDownEventListener):
        * inspector/front-end/externs.js:
        (Array.prototype.remove):
        (window.getComputedStyle):
        * inspector/front-end/inspector.js:

2011-10-04  Andrey Kosyakov  <caseq@chromium.org>

        Web Inspector: [Extensions API] extension panel's toolbar icon is incorrect when inspector window is docked
        https://bugs.webkit.org/show_bug.cgi?id=69336

        Reviewed by Pavel Feldman.

        * inspector/front-end/ExtensionPanel.js:
        (WebInspector.ExtensionPanel):

2011-10-04  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: update call frame location when source mapping is changed.
        https://bugs.webkit.org/show_bug.cgi?id=68997

        Currently we use fake "debugger-paused" event hack to update execution line and call stack placards when source mapping is changed.
        - add PresentationCallFrame.createPlacard method to create "live" placards that are updated on source mapping changes.
        - remove PresentationCallFrame functionName, isInternalScript, and url getters.
        - fire execution-line-changed event when selected call frame or source mapping is changed.

        Reviewed by Pavel Feldman.

        * inspector/compile-front-end.sh:
        * inspector/front-end/CallStackSidebarPane.js:
        (WebInspector.CallStackSidebarPane.prototype.update):
        * inspector/front-end/CompilerSourceMapping.js:
        (WebInspector.ClosureCompilerSourceMappingPayload):
        (WebInspector.ClosureCompilerSourceMapping):
        (WebInspector.ClosureCompilerSourceMapping.prototype._parseMappings):
        * inspector/front-end/ContentProviders.js:
        (WebInspector.CompilerSourceMappingContentProvider.prototype.requestContent):
        (WebInspector.CompilerSourceMappingContentProvider.prototype.searchInContent):
        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel):
        (WebInspector.DebuggerPresentationModel.prototype.createPlacard.updatePlacard):
        (WebInspector.DebuggerPresentationModel.prototype.createPlacard):
        (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
        (WebInspector.DebuggerPresentationModel.prototype._debuggerResumed):
        (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
        (WebInspector.DebuggerPresentationModel.prototype.get selectedCallFrame):
        (WebInspector.DebuggerPresentationModel.prototype._dispatchExecutionLineChanged):
        (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
        (WebInspector.PresentationCallFrame):
        (WebInspector.PresentationCallFrame.prototype.get rawSourceCode):
        (WebInspector.PresentationCallFrame.prototype.uiLocation):
        * inspector/front-end/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype._debuggerPaused.else.didGetUILocation):
        (WebInspector.ScriptsPanel.prototype._debuggerPaused):
        (WebInspector.ScriptsPanel.prototype._executionLineChanged):
        (WebInspector.ScriptsPanel.prototype._callFrameSelected):
        * inspector/front-end/externs.js:
        (WebInspector.displayNameForURL):

2011-10-04  Pavel Feldman  <pfeldman@chromium.org>

        Not reviewed: inspector tests fix.

        * inspector/front-end/ExtensionPanel.js:
        (WebInspector.ExtensionPanel):
        (WebInspector.ExtensionPanel.prototype.get toolbarItemLabel):

2011-09-29  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: add compiler source mapping support to RawSourceCode.
        https://bugs.webkit.org/show_bug.cgi?id=68891

        Reviewed by Pavel Feldman.

        * WebCore.gypi:
        * WebCore.vcproj/WebCore.vcproj:
        * inspector/front-end/BreakpointManager.js:
        (WebInspector.BreakpointManager.prototype.uiSourceCodeAdded):
        (WebInspector.BreakpointManager.prototype.setBreakpoint):
        (WebInspector.BreakpointManager.prototype._materializeBreakpoint):
        * inspector/front-end/CompilerSourceMappingProvider.js: Added.
        (WebInspector.CompilerSourceMappingProvider):
        (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceMapping):
        (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceCode):
        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
        * inspector/front-end/RawSourceCode.js:
        (WebInspector.RawSourceCode.prototype.setCompilerSourceMappingProvider):
        (WebInspector.RawSourceCode.prototype._resourceFinished):
        (WebInspector.RawSourceCode.prototype._updateSourceMapping.didCreateSourceMapping):
        (WebInspector.RawSourceCode.prototype._updateSourceMapping):
        (WebInspector.RawSourceCode.prototype._createSourceMapping.didLoadSourceMapping):
        (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiLocationToRawLocation):
        (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
        (WebInspector.RawSourceCode.CompilerSourceMapping):
        (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.rawLocationToUILocation):
        (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.uiLocationToRawLocation):
        (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.get uiSourceCodeList):
        (WebInspector.CompilerSourceMappingProvider):
        (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceMapping):
        (WebInspector.CompilerSourceMappingProvider.prototype.loadSourceCode):
        * inspector/front-end/UISourceCodeContentProviders.js:
        (WebInspector.CompilerSourceMappingContentProvider):
        (WebInspector.CompilerSourceMappingContentProvider.prototype.requestContent):
        * inspector/front-end/WebKit.qrc:
        * inspector/front-end/inspector.html:

2011-10-04  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: start adding UI components to the compilation process.
        https://bugs.webkit.org/show_bug.cgi?id=69319

        Reviewed by Yury Semikhatsky.

        * WebCore.gypi:
        * WebCore.vcproj/WebCore.vcproj:
        * inspector/compile-front-end.sh:
        * inspector/front-end/Drawer.js:
        (WebInspector.Drawer.prototype.show.animationFinished):
        (WebInspector.Drawer.prototype.show):
        (WebInspector.Drawer.prototype.resize):
        * inspector/front-end/ElementsPanel.js:
        (WebInspector.ElementsPanel.prototype.statusBarResized):
        * inspector/front-end/EmptyView.js:
        * inspector/front-end/Panel.js:
        (WebInspector.Panel.prototype.set get toolbarItemLabel):
        (WebInspector.Panel.prototype.get statusBarItems):
        (WebInspector.Panel.prototype.updateMainViewWidth):
        (WebInspector.Panel.prototype.statusBarResized):
        * inspector/front-end/PropertiesSection.js:
        * inspector/front-end/SearchController.js:
        (WebInspector.SearchController.prototype._onKeyDown):
        * inspector/front-end/Section.js:
        (WebInspector.Section.prototype.set populated):
        (WebInspector.Section.prototype.onpopulate):
        (WebInspector.Section.prototype.expand):
        * inspector/front-end/SidebarPane.js:
        * inspector/front-end/Toolbar.js:
        (WebInspector.Toolbar.createPanelToolbarItem):
        (WebInspector.ToolbarDropdown.prototype.show):
        * inspector/front-end/UIUtils.js: Added.
        (WebInspector.elementDragStart):
        (WebInspector.elementDragEnd):
        (WebInspector.animateStyle):
        (WebInspector.animateStyle.forceComplete):
        (WebInspector.animateStyle.cancel):
        * inspector/front-end/WebKit.qrc:
        * inspector/front-end/externs.js:
        (WebInspector.extensionServer.notifyPanelShown):
        (WebInspector.extensionServer.notifyPanelHidden):
        (WebInspector.currentPanel):
        (WebInspector.setCurrentPanel):
        * inspector/front-end/inspector.html:
        * inspector/front-end/inspector.js:

2011-10-04  Kenichi Ishibashi  <bashi@chromium.org>

        [Chromium] Implement font shaping with font-feature-settings on Windows
        https://bugs.webkit.org/show_bug.cgi?id=65904

        Reviewed by Kenneth Russell.

        Use Uniscribe's OpenType APIs to shape complex text to support -webkit-font-feature-settings property.

        No new tests. css3/font-feature-settings-rendering.html should pass by this patch.

        * platform/graphics/chromium/UniscribeHelper.cpp:
        (WebCore::loadOpenTypeFunctions):
        (WebCore::UniscribeHelper::UniscribeHelper): Calls loadOpenTypeFunctions if needed.
        (WebCore::UniscribeHelper::fillRuns): Uses ScriptItemizeOpenType() if possible.
        (WebCore::UniscribeHelper::shape): Uses ScriptShapeOpenType() if possible.
        (WebCore::UniscribeHelper::fillShapes): Adds OpenType script tag as an argument.
        (WebCore::convertFeatureTag): Added.
        (WebCore::UniscribeHelper::setRangeProperties): Added.
        * platform/graphics/chromium/UniscribeHelper.h:
        * platform/graphics/chromium/UniscribeHelperTextRun.cpp:
        (WebCore::UniscribeHelperTextRun::UniscribeHelperTextRun): Calls setRangeProperties().

2011-10-04  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL] Implement declared but missing functions.
        https://bugs.webkit.org/show_bug.cgi?id=65368

        Unreviewed build fix for WebKit/Efl builds after r96566.

        * platform/efl/CursorEfl.cpp:
        (WebCore::Cursor::operator=):
        * platform/efl/LocalizedStringsEfl.cpp:
        (WebCore::localizedString):

2011-10-04  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: move abstract panel search logic into the only view that is using it.
        https://bugs.webkit.org/show_bug.cgi?id=69328

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/Panel.js:
        (WebInspector.Panel.prototype.searchCanceled):
        (WebInspector.Panel.prototype.performSearch):
        (WebInspector.Panel.prototype.jumpToNextSearchResult):
        (WebInspector.Panel.prototype.jumpToPreviousSearchResult):
        * inspector/front-end/ProfilesPanel.js:
        (WebInspector.ProfilesPanel.prototype.performSearch.updateMatchesCount):
        (WebInspector.ProfilesPanel.prototype.performSearch.updateMatchesCountSoon):
        (WebInspector.ProfilesPanel.prototype.performSearch.finishedCallback):
        (WebInspector.ProfilesPanel.prototype.performSearch.processChunk):
        (WebInspector.ProfilesPanel.prototype.performSearch):
        (WebInspector.ProfilesPanel.prototype.jumpToNextSearchResult):
        (WebInspector.ProfilesPanel.prototype.jumpToPreviousSearchResult):
        (WebInspector.ProfilesPanel.prototype._searchableViews):
        (WebInspector.ProfilesPanel.prototype.searchCanceled):

2011-10-04  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: fixed poor inspector merge, drive-by front-endcompilation fix.

        * inspector/front-end/ContentProviders.js:
        (WebInspector.ScriptContentProvider.prototype.requestContent):
        (WebInspector.ScriptContentProvider.prototype.searchInContent):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype.searchInContent):
        * inspector/front-end/DebuggerPresentationModel.js:

2011-10-04  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: remove dependency from GoToLine dialog from Panel.
        https://bugs.webkit.org/show_bug.cgi?id=69327

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/GoToLineDialog.js:
        (WebInspector.GoToLineDialog.install):
        (WebInspector.GoToLineDialog._show):
        * inspector/front-end/NetworkItemView.js:
        (WebInspector.NetworkItemView.prototype._tabSelected):
        (WebInspector.ResourceContentView.prototype.contentLoaded):
        (WebInspector.ResourceContentView.prototype.canHighlightLine):
        (WebInspector.ResourceContentView.prototype.highlightLine):
        (set WebInspector):
        * inspector/front-end/NetworkPanel.js:
        (WebInspector.NetworkPanel.viewGetter):
        (WebInspector.NetworkPanel):
        * inspector/front-end/Panel.js:
        (WebInspector.Panel.prototype.registerShortcut):
        * inspector/front-end/ResourcesPanel.js:
        (WebInspector.ResourcesPanel.viewGetter):
        (WebInspector.ResourcesPanel):
        (WebInspector.ResourcesPanel.prototype.showResource):
        * inspector/front-end/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.viewGetter):
        * inspector/front-end/SourceFrame.js:
        (WebInspector.SourceFrame.prototype.canHighlightLine):
        * inspector/front-end/TabbedPane.js:
        (WebInspector.TabbedPane.prototype._hideTab):
        (WebInspector.TabbedPane.prototype.canHighlightLine):
        (WebInspector.TabbedPane.prototype.highlightLine):
        * inspector/front-end/View.js:
        (WebInspector.View.prototype.canHighlightLine):
        (WebInspector.View.prototype.highlightLine):

2011-10-04  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96491.
        http://trac.webkit.org/changeset/96491
        https://bugs.webkit.org/show_bug.cgi?id=69326

        Breaks Slow Leopard inspector tests (Requested by pfeldman on
        #webkit).

        * inspector/Inspector.json:
        * inspector/InspectorDebuggerAgent.cpp:
        (WebCore::InspectorDebuggerAgent::getScriptSource):
        * inspector/InspectorDebuggerAgent.h:
        * inspector/front-end/ContentProviders.js:
        (WebInspector.ScriptContentProvider.prototype.requestContent):
        * inspector/front-end/Script.js:
        (WebInspector.Script.prototype.requestSource.didGetScriptSource):
        (WebInspector.Script.prototype.requestSource):

2011-10-03  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: add DebuggerPresentationModel and ConsoleView to compilation.
        https://bugs.webkit.org/show_bug.cgi?id=69269

        Reviewed by Yury Semikhatsky.

        * inspector/compile-front-end.sh:
        * inspector/front-end/BreakpointManager.js:
        (WebInspector.BreakpointManager.prototype.uiSourceCodeAdded):
        * inspector/front-end/ConsoleView.js:
        (WebInspector.ConsoleView.prototype._consoleCleared):
        (WebInspector.ConsoleView.prototype._completions.evaluated.getCompletions):
        (WebInspector.ConsoleView.prototype._completions.evaluated):
        (WebInspector.ConsoleView.prototype._messagesClicked):
        * inspector/front-end/ContentProviders.js:
        (WebInspector.StaticContentProvider.prototype.requestContent):
        (WebInspector.StaticContentProvider.prototype.searchInContent):
        * inspector/front-end/ContextMenu.js:
        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel.prototype._addScript):
        (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
        (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
        (WebInspector.DebuggerPresentationModel.prototype._rawSourceCodeForScriptWithURL):
        (WebInspector.DebuggerPresentationModel.prototype._rawSourceCodeForScript):
        (WebInspector.DebuggerPresentationModel.prototype._scriptForRawSourceCode):
        (WebInspector.DebuggerPresentationModel.prototype._createRawSourceCodeId):
        (WebInspector.DebuggerPresentationModelResourceBinding.prototype.canSetContent):
        (WebInspector.DebuggerPresentationModelResourceBinding.prototype.setContent):
        * inspector/front-end/HelpScreen.js:
        * inspector/front-end/JavaScriptContextManager.js:
        (WebInspector.FrameEvaluationContext.prototype.get displayName):
        * inspector/front-end/KeyboardShortcut.js:
        (WebInspector.KeyboardShortcut):
        * inspector/front-end/Resource.js:
        (WebInspector.Resource.displayName):
        * inspector/front-end/ScriptFormatter.js:
        (WebInspector.ScriptFormatter.prototype._didFormatContent):
        * inspector/front-end/ShortcutsScreen.js:
        * inspector/front-end/StatusBarButton.js:
        * inspector/front-end/TextPrompt.js:
        * inspector/front-end/externs.js:
        (WebInspector.populateHrefContextMenu):
        (WebInspector.useLowerCaseMenuTitles):
        (WebInspector.ScriptsPanel.this.evaluateInSelectedCallFrame):
        (WebInspector.ScriptsPanel.this.getSelectedCallFrameVariables):
        (WebInspector.ScriptsPanel):
        * inspector/front-end/inspector.js:
        * inspector/front-end/utilities.js:

2011-10-03  Ryosuke Niwa  <rniwa@webkit.org>

        Mac release build fix after r96561, and Leopard build fix after r96568.

        * editing/TextCheckingHelper.h:
        (WebCore::TextCheckingParagraph::textCharAt):
        * page/mac/EventHandlerMac.mm:
        (WebCore::EventHandler::wheelEvent):

2011-10-03  Ryosuke Niwa  <rniwa@webkit.org>

        Build fix after r96568.

        * accessibility/AccessibilityObject.cpp:
        * accessibility/mac/WebAccessibilityObjectWrapper.mm:
        * editing/Editor.cpp:

2011-10-03  Shinya Kawanaka  <shinyak@google.com>

        Should call checkTextOfParagraph() indirectly to make unifying spell-checking code path easy.
        https://bugs.webkit.org/show_bug.cgi?id=69241

        Reviewed by Ryosuke Niwa.

        WebCore has two different code paths for spell-checking:
          1) checkTextOfParagraph() for Snow Leopard or later
          2) checkSpellingOfString() for checkGrammarOfString() for other platforms.

        At the first step, this patch introduces an indirect wrapper to call
        checkTextOfParagraph() in Snow Leopard or later. This is intended to make it easy to
        introduce a function for mimicing checkTextOfParagraph() in Chromium platform or
        other non-SL or non-Lion platform.

        No new tests because this patch does not change a behavior.

        * accessibility/AccessibilityObject.cpp:
        (WebCore::AccessibilityObject::hasMisspelling): Calling checkTextOfParagraph() indirectly.
        * accessibility/mac/WebAccessibilityObjectWrapper.mm:
        (AXAttributeStringSetSpelling): ditto.
        * editing/Editor.cpp:
        (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): ditto.
        * editing/TextCheckingHelper.cpp:
        (WebCore::TextCheckingHelper::findFirstMisspellingOrBadGrammar): ditto.
        (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): ditto.
        (WebCore::checkTextOfParagraph): Added.
        * editing/TextCheckingHelper.h:

2011-10-03  Darin Adler  <darin@apple.com>

        Change cursor to hand over missing plug-in message
        https://bugs.webkit.org/show_bug.cgi?id=69312

        Reviewed by Sam Weinig.

        No tests because we currently don't have any test machinery for cursors.

        * page/EventHandler.cpp:
        (WebCore::OptionalCursor::OptionalCursor): Added. Construct an object
        to represent either a cursor, or no cursor change.
        (WebCore::OptionalCursor::isCursorChange): Added.
        (WebCore::OptionalCursor::cursor): Added.
        (WebCore::EventHandler::selectCursor): Changed return type to OptionalCursor,
        moved some special cases from handleMouseMoveEvent in here. Moved the logic
        for plug-ins and framesets into the specific renderer classes for those.
        Added a call to the new getCursor virtual function.
        (WebCore::EventHandler::handleMouseMoveEvent): Changed cursor setting code to
        just be a call to selectCursor and then setCursor. Plug-in-specific code is now
        in RenderWidget.

        * page/EventHandler.h: Changed return type of selectCursor.

        * page/MouseEventWithHitTestResults.cpp: Made some functions be inline.
        * page/MouseEventWithHitTestResults.h:
        (WebCore::MouseEventWithHitTestResults::localPoint): Made this inline.
        (WebCore::MouseEventWithHitTestResults::scrollbar): Made this inline.
        Yes, this has nothing to do with the rest of the patch, but it's good.

        * rendering/RenderEmbeddedObject.cpp:
        (WebCore::RenderEmbeddedObject::getReplacementTextGeometry): Made const.
        (WebCore::RenderEmbeddedObject::isInMissingPluginIndicator): Made const.
        Overloaded so it can be called with a point rather than an event.
        (WebCore::shouldMissingPluginMessageBeButton): Added. Helps streamline
        the logic below.
        (WebCore::RenderEmbeddedObject::handleMissingPluginIndicatorEvent):
        Changed to use shouldMissingPluginMessageBeButton.
        (WebCore::RenderEmbeddedObject::getCursor): Added. Sets the cursor to
        a hand when over the missing plug-in message.
        * rendering/RenderEmbeddedObject.h: Added getCursor override. Also updated
        for other changes above.

        * rendering/RenderFrameSet.cpp:
        (WebCore::RenderFrameSet::getCursor): Added. Contains the logic that used
        to be hardcoded in EventHandler::selectCursor about cursors when over
        resizable frame borders.
        * rendering/RenderFrameSet.h: Added getCursor.

        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::getCursor): Added. Returns SetCursorBasedOnStyle.
        * rendering/RenderObject.h: Added getCursor.

        * rendering/RenderWidget.cpp:
        (WebCore::RenderWidget::getCursor): Added. Contains the logic that used
        to be hardcoded in EventHandler::handleMouseMoveEvent to prevent setting
        the cursor when the pointer is over a plug-in. This new code is much better,
        because it only kicks in when there is actually a plug-in present. The old
        was based on the HTML tag!
        * rendering/RenderWidget.h: Added getCursor.

2011-10-03  Anders Carlsson  <andersca@apple.com>

        Work towards making PlatformWheelEvent immutable
        https://bugs.webkit.org/show_bug.cgi?id=69306

        Reviewed by Sam Weinig.

        Currently, PlatformWheelEvent has an m_isAccepted flag that tracks whether
        the event has been handled or not. For all other event types, that state is instead
        tracked by the return value of the various event handlers.

        As a first step, add return values to the various handleWheelEvent functions and
        add an assertion in EventHandler::wheelEvent that the return value is the same as
        the state of PlatformWheelEvent::isAccepted.

        * Configurations/Base.xcconfig:
        Don't warn when using C++11 extensions.

        * page/mac/EventHandlerMac.mm:
        (WebCore::EventHandler::wheelEvent):
        Assert that isAccepted matches the return value.

        * platform/ScrollAnimator.cpp:
        (WebCore::ScrollAnimator::handleWheelEvent):
        Return isAccepted.

        * platform/ScrollAnimator.h:
        HandleWheelEvent now returns a boolean.

        * platform/ScrollView.cpp:
        (WebCore::ScrollView::wheelEvent):
        Return whether the event was handled or not.

        * platform/ScrollView.h:
        ScrollView::wheelEvent now returns a bool.

        * platform/ScrollableArea.cpp:
        (WebCore::ScrollableArea::handleWheelEvent):
        * platform/ScrollableArea.h:
        ScrollableArea::handleWheelEvent now returns a bool.

        * platform/chromium/ScrollAnimatorChromiumMac.h:
        * platform/chromium/ScrollAnimatorChromiumMac.mm:
        (WebCore::ScrollAnimatorChromiumMac::handleWheelEvent):
        Add return values, based on either the base class calls or the state of
        PlatformWheelEvent::isAccepted().

        * platform/mac/ScrollAnimatorMac.h:
        * platform/mac/ScrollAnimatorMac.mm:
        (WebCore::ScrollAnimatorMac::handleWheelEvent):
        Ditto.

2011-10-03  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/9973489> REGRESSION (r66599): -[DOMNode boundingBox] returns the zero rect for SVG elements
        https://bugs.webkit.org/show_bug.cgi?id=69305

        Reviewed by Simon Fraser.

        Test: svg/custom/boundingBox.html

        Rather than asserting and returning the zero rect, take the transform-aware code path for computing SVG
        bounding rects.

        * rendering/svg/RenderSVGForeignObject.cpp:
        (WebCore::RenderSVGForeignObject::mapLocalToContainer): Updated for change to SVGRenderSupport::mapLocalToContainer().
        * rendering/svg/RenderSVGInline.cpp:
        (WebCore::RenderSVGInline::mapLocalToContainer): Ditto.
        * rendering/svg/RenderSVGModelObject.cpp:
        (WebCore::RenderSVGModelObject::mapLocalToContainer): Ditto.
        (WebCore::RenderSVGModelObject::absoluteRects): Replaced an incorrect assertion with code to approximate the bounding
        box.
        * rendering/svg/RenderSVGText.cpp:
        (WebCore::RenderSVGText::mapLocalToContainer): Updated for change to SVGRenderSupport::mapLocalToContainer().
        * rendering/svg/SVGRenderSupport.cpp:
        (WebCore::SVGRenderSupport::mapLocalToContainer): Removed the fixed and useTransform boolean parameters.
        * rendering/svg/SVGRenderSupport.h:

2011-10-03  Michael Nordman  <michaeln@google.com>

        A little more WebSQLDatabase thread safety.
        https://bugs.webkit.org/show_bug.cgi?id=69277

        - switch to using AtomicallyInitializedStatic where appropiate
        - avoid using some Strings across threads

        Reviewed by David Levin.

        Existing tests apply.

        * storage/AbstractDatabase.cpp:
        (WebCore::guidMutex):
        (WebCore::guidToVersionMap):
        (WebCore::guidToDatabaseMap):
        (WebCore::guidForOriginAndName):
        (WebCore::AbstractDatabase::databaseInfoTableName):
        (WebCore::AbstractDatabase::AbstractDatabase):
        (WebCore::AbstractDatabase::performOpenAndVerify):
        (WebCore::AbstractDatabase::getVersionFromDatabase):
        (WebCore::AbstractDatabase::setVersionInDatabase):
        * storage/AbstractDatabase.h:
        * storage/chromium/DatabaseTrackerChromium.cpp:
        (WebCore::DatabaseTracker::tracker):
        * storage/chromium/QuotaTracker.cpp:
        (WebCore::QuotaTracker::instance):

2011-10-03  Ryosuke Niwa  <rniwa@webkit.org>

        Replace m_firstNodeInserted and m_lastLeafInserted in ReplaceSelectionCommand by positions
        https://bugs.webkit.org/show_bug.cgi?id=68874

        Reviewed by Enrica Casucci.

        Replaced m_firstNodeInserted and m_lastLeafInserted by m_startOfInsertedContent and m_endOfInsertedContent
        respectively. Also removed removeNodePreservingChildren and removeNodeAndPruneAncestors in ReplaceSelectionCommand
        because they were not virtual in CompositeEditCommand and implicitly overriding the functions was confusing.
        Since each of these two functions is used at exactly one place, just update positions and insertedNodes explicitly.

        * editing/CompositeEditCommand.cpp:
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplaceSelectionCommand::removeUnrenderedTextNodesAtEnds):
        (WebCore::ReplaceSelectionCommand::positionAtEndOfInsertedContent):
        (WebCore::ReplaceSelectionCommand::positionAtStartOfInsertedContent):
        (WebCore::ReplaceSelectionCommand::handleStyleSpans):
        (WebCore::ReplaceSelectionCommand::mergeEndIfNeeded): Update m_endOfInsertedContent by endingSelection().visibleEnd()
        instead of m_lastLeafInserted with destination.previous() because moveParagraph could have removed leading whitespace in
        the text node referenced by destination. This is tested by an existing layout test.
        (WebCore::ReplaceSelectionCommand::doApply):
        (WebCore::ReplaceSelectionCommand::addSpacesForSmartReplace): Update positions as needed. All changes are tested
        by the existing layout tests in editing/pasteboard.
        (WebCore::ReplaceSelectionCommand::updateNodesInserted):
        * editing/ReplaceSelectionCommand.h:
        * editing/htmlediting.cpp:
        (WebCore::hasARenderedDescendant): Moved from CompositeEditCommand.cpp.
        (WebCore::highestNodeToRemoveInPruning): Ditto.
        * editing/htmlediting.h:

2011-10-03  Ryosuke Niwa  <rniwa@webkit.org>

        REGRESSION(r94274): cloned text input loses value
        https://bugs.webkit.org/show_bug.cgi?id=69095

        Reviewed by Darin Adler.

        The bug was caused by copyNonAttributeProperties not updating inner element text after copying
        m_valueIfDirty. Fixed the bug by calling updateInnerTextValue.

        Test: fast/forms/clone-input-with-dirty-value.html

        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::copyNonAttributeProperties):

2011-10-03  Ryosuke Niwa  <rniwa@webkit.org>

        Leopard build fix after r96530.

        * rendering/svg/RenderSVGResourcePattern.cpp:
        (WebCore::RenderSVGResourcePattern::applyResource):

2011-10-03  Sam Weinig  <sam@webkit.org>

        Move ContentSecurityPolicy to the ScriptExecutionContext to prepare it for working with XHR and workers
        https://bugs.webkit.org/show_bug.cgi?id=69294

        Reviewed by Darin Adler.

        * dom/Document.cpp:
        (WebCore::Document::initSecurityContext):
        Initialize the ContentSecurityPolicy by calling down to the ScriptExecutionContext.

        * dom/Document.h:
        Move the ContentSecurityPolicy member and getter from here to ScriptExecutionContext.h.

        * dom/ScriptExecutionContext.cpp:
        (WebCore::ScriptExecutionContext::setContentSecurityPolicy):
        * dom/ScriptExecutionContext.h:
        (WebCore::ScriptExecutionContext::contentSecurityPolicy):
        Add ContentSecurityPolicy member and getter/setter.

        * page/ContentSecurityPolicy.cpp:
        (WebCore::ContentSecurityPolicy::ContentSecurityPolicy):
        (WebCore::ContentSecurityPolicy::didReceiveHeader):
        (WebCore::ContentSecurityPolicy::reportViolation):
        (WebCore::ContentSecurityPolicy::parseReportURI):
        (WebCore::ContentSecurityPolicy::createCSPDirective):
        * page/ContentSecurityPolicy.h:
        (WebCore::ContentSecurityPolicy::create):
        Replace Document with ScriptExecutionContext. Add temporary checked casts to document
        where necessary.

        * workers/WorkerContext.cpp:
        (WebCore::WorkerContext::WorkerContext):
        Add initialization of the ContentSecurityPolicy.

2011-10-03  Anders Carlsson  <andersca@apple.com>

        Remove custom scrollbar painting hooks
        https://bugs.webkit.org/show_bug.cgi?id=69163

        Reviewed by Alexey Proskuryakov.

        The custom scrollbar and scroll corner painting hooks aren't used by anyone
        so go ahead and remove them. This removes the setter/getter and ChromeClient functions.

        * page/Chrome.cpp:
        * page/ChromeClient.h:
        * page/Settings.cpp:
        (WebCore::Settings::Settings):
        * page/Settings.h:
        * platform/ScrollbarThemeComposite.cpp:
        (WebCore::ScrollbarThemeComposite::paint):
        (WebCore::ScrollbarThemeComposite::paintScrollCorner):

2011-09-22  Darin Adler  <darin@apple.com>

        Rename many obviously-correct call sites in WebCore using releaseRef to use it by its new name leakRef
        https://bugs.webkit.org/show_bug.cgi?id=68672

        Reviewed by Daniel Bates.

        * bindings/js/JSDOMWindowBase.cpp:
        (WebCore::JSDOMWindowBase::commonJSGlobalData):
        * css/CSSInitialValue.h:
        (WebCore::CSSInitialValue::createExplicit):
        (WebCore::CSSInitialValue::createImplicit):
        * css/CSSPrimitiveValue.cpp:
        (WebCore::CSSPrimitiveValue::init):
        * css/CSSStyleSelector.cpp:
        (WebCore::parseUASheet):
        (WebCore::CSSStyleSelector::styleForElement):
        * platform/ScrollView.cpp:
        (WebCore::ScrollView::wheelEvent):
        * platform/efl/RenderThemeEfl.cpp:
        (WebCore::RenderTheme::themeForPage):
        * platform/gtk/RenderThemeGtk.cpp:
        (WebCore::RenderTheme::themeForPage):
        * platform/haiku/RenderThemeHaiku.cpp:
        (WebCore::RenderTheme::themeForPage):
        * platform/network/cf/DNSCFNet.cpp:
        (WebCore::DNSResolveQueue::resolve):
        * platform/network/cf/ResourceHandleCFNet.cpp:
        (WebCore::ResourceHandle::releaseConnectionForDownload):
        * platform/qt/RenderThemeQt.cpp:
        (WebCore::RenderTheme::themeForPage):
        (WebCore::RenderThemeQt::paintSearchFieldCancelButton):
        * platform/text/BidiContext.cpp:
        (WebCore::BidiContext::create):
        * platform/wx/RenderThemeWx.cpp:
        (WebCore::RenderTheme::themeForPage):
        * rendering/RenderThemeChromiumLinux.cpp:
        (WebCore::RenderTheme::themeForPage):
        * rendering/RenderThemeChromiumMac.mm:
        (WebCore::RenderTheme::themeForPage):
        * rendering/RenderThemeChromiumSkia.cpp:
        (WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton):
        (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration):
        (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton):
        * rendering/RenderThemeChromiumWin.cpp:
        (WebCore::RenderTheme::themeForPage):
        * rendering/RenderThemeMac.mm:
        (WebCore::RenderTheme::themeForPage):
        * rendering/RenderThemeSafari.cpp:
        (WebCore::RenderTheme::themeForPage):
        * rendering/RenderThemeWin.cpp:
        (WebCore::RenderTheme::themeForPage):
        (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
        (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
        (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
        * rendering/RenderThemeWinCE.cpp:
        (WebCore::RenderTheme::themeForPage):
        * rendering/style/RenderStyle.cpp:
        (WebCore::defaultStyle):
        Call leakRef instead of releaseRef. I did this only in the cases where
        it was obvious to me this was the right way to do it. I'll keep revisiting
        sites still calling it releaseRef until they are all gone.

2011-09-27  Ojan Vafai  <ojan@chromium.org>

        remove dead code in flipForWritingMode
        https://bugs.webkit.org/show_bug.cgi?id=68948

        Reviewed by Hajime Morita.

        ChildToParentFlippingAdjustment is never used, so the third argument
        to flipForWritingMode always has the same value.

        In addition, renamed to flipForWritingModeForChild to be more clear
        that it's operating on the child and renamed flipFloatForWritingMode to match.

        No new tests. This is just a code cleanup. No functional changes. 

        * rendering/InlineBox.cpp:
        (WebCore::InlineBox::paint):
        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::paintChildren):
        (WebCore::RenderBlock::flipFloatForWritingModeForChild):
        (WebCore::RenderBlock::paintFloats):
        (WebCore::RenderBlock::hitTestFloats):
        (WebCore::RenderBlock::hitTestContents):
        * rendering/RenderBlock.h:
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::flipForWritingModeForChild):
        (WebCore::RenderBox::topLeftLocation):
        * rendering/RenderBox.h:
        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::paintObject):
        (WebCore::RenderTable::nodeAtPoint):
        * rendering/RenderTableRow.cpp:
        (WebCore::RenderTableRow::nodeAtPoint):
        * rendering/RenderTableSection.cpp:
        (WebCore::RenderTableSection::paintCell):
        (WebCore::RenderTableSection::nodeAtPoint):

2011-10-03  Jer Noble  <jer.noble@apple.com>

        Unreviewed, rolling out r96526.
        http://trac.webkit.org/changeset/96526
        https://bugs.webkit.org/show_bug.cgi?id=68587

        WEB_AUDIO has numerous 64->32 bit casting warnings, causing
        build breakages where -Wall is enabled.

        * Configurations/FeatureDefines.xcconfig:
        * WebCore.xcodeproj/project.pbxproj:

2011-10-03  Joseph Pecoraro  <joepeck@webkit.org>

        Web Inspector: rgb() with percentages shows wrong hex/hsl values
        https://bugs.webkit.org/show_bug.cgi?id=69152

        Reviewed by Pavel Feldman.

        Previously we assumed rgb values were always in byte form,
        but they could include percentage values. Ex. rgb(100%,0,0).
        This patch fixes this, and in the process includes clamping
        for invalid percentages, byte values, and alpha values.

        Test: inspector/styles/styles-invalid-color-values.html

        * inspector/front-end/Color.js:
        (WebInspector.Color.prototype._clamp):
        (WebInspector.Color.prototype._individualRGBValueToFloatValue):
        (WebInspector.Color.prototype._individualRGBValueToHexValue):
        (WebInspector.Color.prototype._rgbToHex):
        (WebInspector.Color.prototype._rgbToHSL):
        An individual rgb value can be either a decimal/float or a
        percentage. Rewrite the conversion functions to handle either
        input. Regardless of the type of input, always return a clamped
        decimal/float value between 0 and 255.

        (WebInspector.Color.prototype._rgbaToHSLA):
        (WebInspector.Color.prototype._hslaToRGBA):
        (WebInspector.Color.prototype._parse):
        Clamp the alpha value between 0 and 1.

2011-10-03  Dirk Schulze  <krit@webkit.org>

        SVG Pattern tile pixelated on patternTransform
        https://bugs.webkit.org/show_bug.cgi?id=69261

        Reviewed by Rob Buis.

        Scale the SVG pattern tile by the scale level of patternTransform to avoid pixelation.

        Test: svg/custom/pattern-scaled-pattern-space.svg

        * rendering/svg/RenderSVGResourcePattern.cpp:
        (WebCore::RenderSVGResourcePattern::applyResource):

2011-10-03  Jer Noble  <jer.noble@apple.com>

        Enable WEB_AUDIO by default in the WebKit/mac port.
        https://bugs.webkit.org/show_bug.cgi?id=68587

        Reviewed by Simon Fraser.

        No new tests; existing webaudio/ layout tests cover this.

        * Configurations/FeatureDefines.xcconfig:
        * WebCore.xcodeproj/project.pbxproj: Add a build step which copies audio resources to
            the WebCore.framework bundle.

2011-10-03  Chris Rogers  <crogers@google.com>

        BiquadFilterNode .type attribute is not handled correctly
        https://bugs.webkit.org/show_bug.cgi?id=69182

        Reviewed by Kenneth Russell.

        Test: webaudio/biquadfilternode-basic.html

        * platform/audio/AudioDSPKernelProcessor.cpp:
        (WebCore::AudioDSPKernelProcessor::initialize):
        * webaudio/AudioBufferSourceNode.cpp:
        (WebCore::AudioBufferSourceNode::AudioBufferSourceNode):
        * webaudio/AudioChannelMerger.cpp:
        (WebCore::AudioChannelMerger::AudioChannelMerger):
        * webaudio/AudioChannelSplitter.cpp:
        (WebCore::AudioChannelSplitter::AudioChannelSplitter):
        * webaudio/AudioDestinationNode.cpp:
        (WebCore::AudioDestinationNode::AudioDestinationNode):
        * webaudio/AudioGainNode.cpp:
        (WebCore::AudioGainNode::AudioGainNode):
        * webaudio/AudioNode.cpp:
        (WebCore::AudioNode::AudioNode):
        (WebCore::AudioNode::~AudioNode):
        (WebCore::AudioNode::setNodeType):
        (WebCore::AudioNode::ref):
        (WebCore::AudioNode::finishDeref):
        * webaudio/AudioNode.h:
        (WebCore::AudioNode::nodeType):
        * webaudio/AudioPannerNode.cpp:
        (WebCore::AudioPannerNode::AudioPannerNode):
        (WebCore::AudioPannerNode::notifyAudioSourcesConnectedToNode):
        * webaudio/BiquadFilterNode.cpp:
        (WebCore::BiquadFilterNode::BiquadFilterNode):
        (WebCore::BiquadFilterNode::setType):
        * webaudio/BiquadFilterNode.h:
        * webaudio/BiquadFilterNode.idl:
        * webaudio/BiquadProcessor.h:
        (WebCore::BiquadProcessor::setType):
        * webaudio/ConvolverNode.cpp:
        (WebCore::ConvolverNode::ConvolverNode):
        * webaudio/DelayNode.cpp:
        (WebCore::DelayNode::DelayNode):
        * webaudio/DynamicsCompressorNode.cpp:
        (WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
        * webaudio/HighPass2FilterNode.cpp:
        (WebCore::HighPass2FilterNode::HighPass2FilterNode):
        * webaudio/JavaScriptAudioNode.cpp:
        (WebCore::JavaScriptAudioNode::JavaScriptAudioNode):
        * webaudio/LowPass2FilterNode.cpp:
        (WebCore::LowPass2FilterNode::LowPass2FilterNode):
        * webaudio/MediaElementAudioSourceNode.cpp:
        (WebCore::MediaElementAudioSourceNode::MediaElementAudioSourceNode):
        * webaudio/RealtimeAnalyserNode.cpp:
        (WebCore::RealtimeAnalyserNode::RealtimeAnalyserNode):
        * webaudio/WaveShaperNode.cpp:
        (WebCore::WaveShaperNode::WaveShaperNode):

2011-10-03  Chris Fleizach  <cfleizach@apple.com>

        AX: support role mapping for HTML5 section elements
        https://bugs.webkit.org/show_bug.cgi?id=69150

        We need to map these HTML5 elements to appropriate ARIA roles. That mapping is:
          article -> Document article
          nav -> Landmark navigation
          aside -> Landmark complementary
          section -> Document region
          address -> Landmark content info
          header -> Landmark banner (unless it's in an article or section)
          footer -> Landmark content info (unless it's in an article or section)

        Reviewed by Darin Adler.

        Test: platform/mac/accessibility/html-section-elements.html

        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::isDescendantOfElementType):
        (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
        * accessibility/AccessibilityRenderObject.h:

2011-10-03  Chris Fleizach  <cfleizach@apple.com>

        AX: click point for AXHeadings often returns point on empty space (results in wrong context menu)
        https://bugs.webkit.org/show_bug.cgi?id=69262

        When the contextual menu is opened for a heading, often it will open on empty space because
        the heading is wider than the content inside. The click point should thus use the content
        inside the heading as the click point.

        To accomplish this we need to query whether we have children using children() which is a non-const
        method, hence the removal of const from clickPoint().

        Reviewed by John Sullivan.

        Test: platform/mac/accessibility/heading-clickpoint.html

        * accessibility/AccessibilityObject.cpp:
        (WebCore::AccessibilityObject::clickPoint):
        * accessibility/AccessibilityObject.h:
        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::clickPoint):
        * accessibility/AccessibilityRenderObject.h:

2011-10-03  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96500.
        http://trac.webkit.org/changeset/96500
        https://bugs.webkit.org/show_bug.cgi?id=69268

        Breaks inspector, change landed with no test. (Requested by
        pfeldman on #webkit).

        * WebCore.gypi:
        * WebCore.vcproj/WebCore.vcproj:
        * inspector/front-end/ConsoleMessage.js:
        (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation):
        * inspector/front-end/ConsoleView.js:
        (WebInspector.ConsoleView.prototype._consoleCleared):
        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation.updateAnchor):
        (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation):
        * inspector/front-end/EventListenersSidebarPane.js:
        (WebInspector.EventListenersSidebarPane.prototype.update.callback):
        (WebInspector.EventListenersSidebarPane.prototype.update):
        ():
        * inspector/front-end/Linkifier.js: Removed.
        * inspector/front-end/NetworkPanel.js:
        (WebInspector.NetworkLogView):
        (WebInspector.NetworkLogView.prototype._reset):
        (WebInspector.NetworkDataGridNode.prototype._refreshInitiatorCell):
        * inspector/front-end/ProfileDataGridTree.js:
        (WebInspector.ProfileDataGridNode.prototype.createCell):
        * inspector/front-end/ProfileView.js:
        (WebInspector.CPUProfileView):
        (WebInspector.CPUProfileView.prototype._resetClicked):
        * inspector/front-end/TimelinePanel.js:
        (WebInspector.TimelinePanel):
        (WebInspector.TimelinePanel.prototype._clearPanel):
        (WebInspector.TimelinePanel.FormattedRecord):
        (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
        (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
        (WebInspector.TimelinePanel.FormattedRecord.prototype._linkifyLocation):
        (WebInspector.TimelinePanel.FormattedRecord.prototype._linkifyCallFrame):
        (WebInspector.TimelinePanel.PopupContentHelper):
        (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendLinkRow):
        (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendStackTrace):
        * inspector/front-end/WebKit.qrc:
        * inspector/front-end/inspector.html:
        * inspector/front-end/inspector.js:

2011-09-30  Antti Koivisto  <antti@apple.com>

        Add exact match attribute selectors to the fast path
        https://bugs.webkit.org/show_bug.cgi?id=69159

        Reviewed by Sam Weinig.

        Attribute selectors are increasingly common and we have them in our default style sheet too.
        [foo] and [foo="bar"] type selectors can be resolved quickly and easily in the fast path.
        
        - Implement fast path checking for simple attribute selectors.
        - Get rid of the ill-defined CSSSelector::hasAttribute(), inline CSSSelector::attribute()
        
        This is ~20% progression in styleForElement() performance loading the full HTML5 spec (~0.8s).

        * css/CSSSelector.cpp:
        (WebCore::CSSSelector::selectorText):
        * css/CSSSelector.h:
        (WebCore::CSSSelector::hasTag):
        (WebCore::CSSSelector::attribute):
        (WebCore::CSSSelector::isAttributeSelector):
        * css/CSSSelectorList.cpp:
        (WebCore::SelectorNeedsNamespaceResolutionFunctor::operator()):
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::checkSelector):
        * css/SelectorChecker.cpp:
        (WebCore::SelectorChecker::fastCheckRightmostSelector):
        (WebCore::SelectorChecker::fastCheckSelector):
        (WebCore::isFastCheckableMatch):
        (WebCore::isFastCheckableRightmostSelector):
        (WebCore::SelectorChecker::isFastCheckableSelector):
        (WebCore::SelectorChecker::checkSelector):
        (WebCore::htmlAttributeHasCaseInsensitiveValue):
        (WebCore::anyAttributeMatches):
        (WebCore::SelectorChecker::checkOneSelector):
        * css/SelectorChecker.h:
        (WebCore::SelectorChecker::attributeNameMatches):
        (WebCore::SelectorChecker::checkExactAttribute):
        (WebCore::SelectorChecker::fastCheckRightmostAttributeSelector):

2011-10-03  Mike Reed  <reed@google.com>

        respect other paint flags when setting flags for the font. No need to fiddle with DC(0) in paintSkiaText.
        https://bugs.webkit.org/show_bug.cgi?id=69172

        Reviewed by Stephen White.

        No new tests. This is a cleanup/optimization, existing tests apply

        * platform/graphics/skia/SkiaFontWin.cpp:
        (WebCore::getDefaultGDITextFlags):
        (WebCore::setupPaintForFont):
        (WebCore::paintSkiaText):

2011-10-03  Andreas Kling  <kling@webkit.org>

        FontFallbackList: Glyph pages waste a lot of memory.
        https://bugs.webkit.org/show_bug.cgi?id=69260

        Reviewed by Dan Bernstein.

        Use a minimum hash table size of 16 (down from 64) for FontFallbackList's
        glyph pages. This reduces memory consumption by ~900 kB when loading the
        full HTML5 spec.

        The cost is two additional rehash()es of FontFallbackList::m_pages when
        adding the 32nd and 64th pages to the hash map.

        * platform/graphics/FontFallbackList.h:

2011-10-03  Konstantin Scheglov  <scheglov@google.com>

        Right border missing from table with colspan and collapsing border
        https://bugs.webkit.org/show_bug.cgi?id=14274

        Reviewed by David Hyatt.

        Test: fast/table/border-collapsing/bug14274.html

        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::RenderTable):
        * rendering/RenderTable.h:
        (WebCore::RenderTable::colToEffCol):

2011-10-03  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Fix make distcheck build
        https://bugs.webkit.org/show_bug.cgi?id=69243

        Reviewed by Martin Robinson.

        * GNUmakefile.am:
        * GNUmakefile.list.am:

2011-10-03  Pierre Rossi  <pierre.rossi@gmail.com>

        [Qt] Build fix: Qt::escape is deprecated in Qt5
        https://bugs.webkit.org/show_bug.cgi?id=69162

        Use QString::toHtmlEscaped in the Qt5 case.

        Reviewed by Andreas Kling.

        No new tests needed.

        * WebCore.pro: adjust the include path accordingly
        in the v8 case.

2011-10-03  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: debuggerPresentatioModel.linkifyLocation leaks updateAnchor closure instances.
        https://bugs.webkit.org/show_bug.cgi?id=69146

        In many places we use linkifyLocation function to produce a link node which updates automatically when the source file is changed on the fly.
        Such changes happen when we use pretty print or another operation that changes the source code somehow.
        linkifyLocation associates a new instance of updateAnchor closure with the each link node and add the closure to the SourceMappingUpdated event's list.
        As the result the node<->closure pairs wouldn't be collected until reset the UI and DebuggerPresentationModel.

        Reviewed by Yury Semikhatsky.

        Test: inspector/performance/resources/network-append-30-requests.html

        * WebCore.gypi:
        * WebCore.vcproj/WebCore.vcproj:
        * inspector/front-end/ConsoleMessage.js:
        (WebInspector.ConsoleMessage.prototype._linkifyLocation):
        * inspector/front-end/ConsoleView.js:
        (WebInspector.ConsoleView.prototype._consoleCleared):
        * inspector/front-end/DebuggerPresentationModel.js:
        * inspector/front-end/EventListenersSidebarPane.js:
        (WebInspector.EventListenersSidebarPane.prototype.update.callback):
        (WebInspector.EventListenersSidebarPane.prototype.update):
        ():
        * inspector/front-end/Linkifier.js: Added.
        (WebInspector.Linkifier):
        (WebInspector.Linkifier.prototype.linkifyLocation):
        (WebInspector.Linkifier.prototype.reset):
        (WebInspector.Linkifier.prototype._updateSourceAnchors):
        (WebInspector.Linkifier.prototype._updateAnchor):
        * inspector/front-end/NetworkPanel.js:
        (WebInspector.NetworkLogView):
        (WebInspector.NetworkLogView.prototype._reset):
        (WebInspector.NetworkDataGridNode.prototype._refreshInitiatorCell):
        * inspector/front-end/ProfileDataGridTree.js:
        (WebInspector.ProfileDataGridNode.prototype.createCell):
        * inspector/front-end/ProfileView.js:
        (WebInspector.CPUProfileView):
        (WebInspector.CPUProfileView.prototype._resetClicked):
        * inspector/front-end/TimelinePanel.js:
        (WebInspector.TimelinePanel):
        (WebInspector.TimelinePanel.prototype._linkifyLocation):
        (WebInspector.TimelinePanel.prototype._linkifyCallFrame):
        (WebInspector.TimelinePanel.prototype._clearPanel):
        (WebInspector.TimelinePanel.FormattedRecord):
        (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
        (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
        (WebInspector.TimelinePanel.PopupContentHelper):
        (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendLinkRow):
        (WebInspector.TimelinePanel.PopupContentHelper.prototype._appendStackTrace):
        * inspector/front-end/WebKit.qrc:
        * inspector/front-end/inspector.html:
        * inspector/front-end/inspector.js:

2011-10-03  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: more compilation fixes including making ConsoleMessage a part of console model.
        https://bugs.webkit.org/show_bug.cgi?id=69253

        Reviewed by Yury Semikhatsky.

        * inspector/Inspector.json:
        * inspector/compile-front-end.sh:
        * inspector/front-end/ConsoleMessage.js:
        (WebInspector.ConsoleMessage.create):
        (WebInspector.ConsoleMessage.createTextMessage):
        (WebInspector.ConsoleMessageImpl):
        * inspector/front-end/ConsoleModel.js:
        (WebInspector.ConsoleModel.prototype._messageRepeatCountUpdated):
        (WebInspector.ConsoleMessage.create):
        (WebInspector.ConsoleMessage.createTextMessage):
        (WebInspector.ConsoleDispatcher.prototype.messageAdded):
        * inspector/front-end/ConsoleView.js:
        (WebInspector.ConsoleCommandResult):
        (WebInspector.ConsoleCommandResult.prototype.toMessageElement):
        * inspector/front-end/CookieParser.js:
        (WebInspector.Cookie.prototype.get path):
        (WebInspector.Cookie.prototype.get domain):
        (WebInspector.Cookie.prototype.expires):
        * inspector/front-end/DOMAgent.js:
        * inspector/front-end/ExtensionServer.js:
        (WebInspector.ExtensionServer.prototype._onAddConsoleMessage):
        * inspector/front-end/NetworkManager.js:
        (WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):
        (WebInspector.NetworkDispatcher.prototype.requestWillBeSent):
        (WebInspector.NetworkDispatcher.prototype.requestServedFromMemoryCache):
        (WebInspector.NetworkDispatcher.prototype.webSocketCreated):
        (WebInspector.NetworkDispatcher.prototype._createResource):
        * inspector/front-end/Resource.js:
        (WebInspector.Resource):
        (WebInspector.Resource.prototype.setContent):
        (WebInspector.Resource.prototype.searchInContent):
        * inspector/front-end/ResourceTreeModel.js:
        (WebInspector.ResourceTreeModel.prototype._createResource):
        * inspector/front-end/externs.js:
        (WebInspector.linkifyStringAsFragmentWithCustomLinkifier):
        (WebInspector.extensionServer.notifyResourceContentCommitted):
        (WebInspector.resourceForURL):
        (WebInspector.debuggerPresentationModel.linkifyLocation):
        (WebInspector.ObjectPropertiesSection):
        (WebInspector.ElementsTreeOutline):
        * inspector/front-end/inspector.html:
        * inspector/front-end/inspector.js:
        (WebInspector.log.logMessage):
        (WebInspector.log):
        * inspector/generate-protocol-externs:

2011-10-03  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: move console message formatting from ConsoleView.js into ConsoleMessage.js
        https://bugs.webkit.org/show_bug.cgi?id=69244

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/ConsoleMessage.js:
        (WebInspector.ConsoleMessage):
        (WebInspector.ConsoleMessage.prototype._formatMessage.else.else.linkifier):
        (WebInspector.ConsoleMessage.prototype._formatMessage):
        (WebInspector.ConsoleMessage.prototype._format):
        (WebInspector.ConsoleMessage.prototype._formatParameter):
        (WebInspector.ConsoleMessage.prototype._formatParameterAsValue):
        (WebInspector.ConsoleMessage.prototype._formatParameterAsObject):
        (WebInspector.ConsoleMessage.prototype._formatParameterAsNode):
        (WebInspector.ConsoleMessage.prototype._formatParameterAsArray):
        (WebInspector.ConsoleMessage.prototype._formatParameterAsString):
        (WebInspector.ConsoleMessage.prototype._printArray):
        (WebInspector.ConsoleMessage.prototype._formatAsArrayEntry):
        (WebInspector.ConsoleMessage.prototype._formatWithSubstitutionString):
        * inspector/front-end/ConsoleView.js:

2011-10-03  Dirk Schulze  <krit@webkit.org>

        feColorMatrix saturation is not limited to range 0..1 anymore
        https://bugs.webkit.org/show_bug.cgi?id=69245

        Reviewed by Nikolas Zimmermann.
        
        Opera doesn't limit the range of values for saturation on feColorMatrix from 0 to 1. The limitation
        was also removed from the new Filter Effects 1.0 specification. Values outside this range lead to
        under- or oversaturation of the filter input image.
        https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/publish/Filters.html#feColorMatrixElement

        Test: svg/filters/feColorMatrix-saturate.svg

        * svg/SVGFEColorMatrixElement.cpp:
        (WebCore::SVGFEColorMatrixElement::build):

2011-10-03  Andreas Kling  <kling@webkit.org>

        Shrink HTMLLIElement.
        https://bugs.webkit.org/show_bug.cgi?id=69250

        Reviewed by Antti Koivisto.

        Don't cache the explicit "value" attribute on the HTMLLIElement,
        but fetch it with fastGetAttribute when needed.
        This shrinks HTMLLIElement by one CPU word.

        * html/HTMLLIElement.cpp:
        (WebCore::HTMLLIElement::HTMLLIElement):
        (WebCore::HTMLLIElement::parseMappedAttribute):
        (WebCore::HTMLLIElement::attach):
        * html/HTMLLIElement.h:

2011-10-03  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Add support for backend search in script content.
        https://bugs.webkit.org/show_bug.cgi?id=69015

        Reviewed by Pavel Feldman.

        Tests: http/tests/inspector/search/search-in-concatenated-script.html
               http/tests/inspector/search/search-in-script.html

        * inspector/Inspector.json:
        * inspector/InspectorDebuggerAgent.cpp:
        (WebCore::InspectorDebuggerAgent::searchInContent):
        (WebCore::InspectorDebuggerAgent::getScriptSource):
        * inspector/InspectorDebuggerAgent.h:
        * inspector/front-end/ContentProviders.js:
        (WebInspector.ScriptContentProvider.prototype.requestContent):
        (WebInspector.ScriptContentProvider.prototype.searchInContent):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype.searchInContent.maybeCallback):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype.searchInContent.searchCallback):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype.searchInContent):
        * inspector/front-end/Script.js:
        (WebInspector.Script.prototype.requestSource):
        (WebInspector.Script.prototype.searchInContent):

2011-10-03  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: move console message formatting from ConsoleView.js into ConsoleMessage.js
        https://bugs.webkit.org/show_bug.cgi?id=69244

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/ConsoleMessage.js:
        (WebInspector.ConsoleMessage):
        (WebInspector.ConsoleMessage.prototype._formatMessage.else.else.linkifier):
        (WebInspector.ConsoleMessage.prototype._formatMessage):
        (WebInspector.ConsoleMessage.prototype._format):
        (WebInspector.ConsoleMessage.prototype._formatParameter):
        (WebInspector.ConsoleMessage.prototype._formatParameterAsValue):
        (WebInspector.ConsoleMessage.prototype._formatParameterAsObject):
        (WebInspector.ConsoleMessage.prototype._formatParameterAsNode):
        (WebInspector.ConsoleMessage.prototype._formatParameterAsArray):
        (WebInspector.ConsoleMessage.prototype._formatParameterAsString):
        (WebInspector.ConsoleMessage.prototype._printArray):
        (WebInspector.ConsoleMessage.prototype._formatAsArrayEntry):
        (WebInspector.ConsoleMessage.prototype._formatWithSubstitutionString):
        * inspector/front-end/ConsoleView.js:

2011-10-03  Pavel Feldman  <pfeldman@chromium.org>

        Web Inspector: restore partial front-end compilability
        https://bugs.webkit.org/show_bug.cgi?id=69221

        Removed unused isWhitespace; introduced missing classes in Inspector.json;
        generated externs for the protocol types along with the commands.

        Reviewed by Yury Semikhatsky.

        * inspector/Inspector.json:
        * inspector/compile-front-end.sh:
        * inspector/front-end/DOMAgent.js:
        (WebInspector.DOMAgent):
        (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable.onDocumentAvailable):
        (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable):
        * inspector/front-end/ElementsPanel.js:
        (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
        * inspector/front-end/ElementsTreeOutline.js:
        ():
        * inspector/front-end/Object.js:
        * inspector/front-end/Popover.js:
        (WebInspector.PopoverHelper.prototype._mouseMove):
        * inspector/front-end/View.js:
        * inspector/front-end/externs.js:
        (Array.prototype.remove):
        * inspector/generate-protocol-externs:

2011-10-02  Kent Tamura  <tkent@chromium.org>

        method/enctype/formMethod/formEnctype properties should be limited to known values.
        https://bugs.webkit.org/show_bug.cgi?id=68887

        Reviewed by Hajime Morita.

        According to the standard and other browser behaviors, the
        following IDL properties should be reflected to the corresponding
        HTML attributes on setting, but should return normalized values on
        getting.
        - HTMLFormElement::method
        - HTMLFormElement::enctype
        - HTMLInputElement::formMethod
        - HTMLInputElement::formEnctype
        - HTMLButtonElement::formMethod
        - HTMLButtonElement::formEnctype

        Tests: fast/forms/enctype-attribute.html
               fast/forms/method-attribute.html

        * html/HTMLButtonElement.idl:
        Replace 'Reflect' with 'ConvertNullToNullString' in order to use a
        getter function.
        * html/HTMLFormControlElement.cpp:
        (WebCore::HTMLFormControlElement::formEnctype):
        Normalizes the value by parseEncodingType().
        (WebCore::HTMLFormControlElement::setFormEnctype):
        Simply calls setAttribute()
        (WebCore::HTMLFormControlElement::formMethod):
        Normalizes the value by parseMethodType().
        (WebCore::HTMLFormControlElement::setFormMethod):
        Simply calls setAttribute()
        * html/HTMLFormControlElement.h:
        * html/HTMLFormElement.cpp:
        (WebCore::HTMLFormElement::parseMappedAttribute):
        Follow the Attributes function renaming.
        (WebCore::HTMLFormElement::method):
        Normalizes the value by parseMethodType().
        * html/HTMLFormElement.idl:
        Replace 'Reflect' with 'ConvertNullToNullString' in order to use a
        getter function.
        * html/HTMLInputElement.idl: ditto.
        * loader/FormSubmission.cpp:
        (WebCore::FormSubmission::Attributes::parseEncodingType):
        New function made from a part of old parseEncodingType().
        (WebCore::FormSubmission::Attributes::updateEncodingType):
        Renamed from parseEncodingType().
        (WebCore::FormSubmission::Attributes::parseMethodType):
        New function made from a part of old parseMethodType().
        (WebCore::FormSubmission::Attributes::updateMethodType):
        Renamed from parseMethodType().
        (WebCore::FormSubmission::create):
        Follow the Attributes function renaming.
        * loader/FormSubmission.h:
        (WebCore::FormSubmission::Attributes::methodString):
        A helper function to provide normalized strings for FormSubmission::Method.

2011-10-02  Sam Weinig  <sam@webkit.org>

        Strength reduce Mac only Frame::searchForLabelsBeforeElement and Frame::matchLabelsAgainstElement into callers
        https://bugs.webkit.org/show_bug.cgi?id=69230

        Reviewed by Anders Carlsson.

        * WebCore.exp.in:
        * page/Frame.h:
        * page/mac/FrameMac.mm:

2011-10-02  Zeno Albisser  <zeno.albisser@nokia.com>

        [Qt][WK2][Mac] WebKit2 does not build on mac after merge of Qt5 refactor branch.
        https://bugs.webkit.org/show_bug.cgi?id=69223

        Add a missing import (NSWindow.h) in WebVideoFullscreenHUDWindowController.
        Add a missing include path and a missing objective source file to WebCore.pro.

        Reviewed by Noam Rosenthal.

        No new tests, build fix.

        * WebCore.pro:
        * platform/mac/WebVideoFullscreenHUDWindowController.h:

2011-10-02  Julien Chaffraix  <jchaffraix@webkit.org>

        Remove an unused member in RenderTable::ColumnStruct
        https://bugs.webkit.org/show_bug.cgi?id=69119

        Reviewed by Darin Adler.

        No test as there should be no change in behavior.

        The member was added several years ago and its users were removed or changed. The code would
        need a refactoring but this would be tricky to get right. This change just removes the member
        to reap the short-term benefits.

        * rendering/RenderTable.h:
        (WebCore::RenderTable::ColumnStruct::ColumnStruct): Remove anything associated with m_width.

2011-10-02  Dan Bernstein  <mitz@apple.com>

        REGRESSION (r95502): Assertion failure in CSSPrimitiveValue::computeLengthDouble() when media query specifies unit-less length
        https://bugs.webkit.org/show_bug.cgi?id=68760

        Reviewed by Antti Koivisto.

        Test: fast/media/invalid-lengths.html

        Made length-comparison media queries accept only length values. In compatibility mode, numbers
        are allowed as well, and they are interpreted as pixels.

        * css/MediaQueryEvaluator.cpp:
        (WebCore::computeLength): Added this helper function.
        (WebCore::device_heightMediaFeatureEval): Changed to use computeLength().
        (WebCore::device_widthMediaFeatureEval): Ditto.
        (WebCore::heightMediaFeatureEval): Ditto.
        (WebCore::widthMediaFeatureEval): Ditto.

2011-10-02  Dirk Schulze  <krit@webkit.org>

        SVG Mask should take 'color-interpolation' into account to determine the color space of the mask image
        https://bugs.webkit.org/show_bug.cgi?id=69076

        Reviewed by Simon Fraser.
        
        SVG Masks should take 'color-interpolation' into account to determine the color space of the mask image.
        The behavior was changed in SVG 1.1 SE. The color space of the mask image gets defined by the computed value of the
        'color-interpolation' property. This will switch the default color space from linearRGB to sRGB for mask images and
        is a performance improvement for platforms without native support for linearRGB color space. The
        color space transformation can be avoided.

        Test: svg/custom/grayscale-gradient-mask-2.svg

        * rendering/svg/RenderSVGResourceMasker.cpp:
        (WebCore::RenderSVGResourceMasker::applyResource):
        (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
        * rendering/svg/RenderSVGResourceMasker.h:

2011-10-01  Vangelis Kokkevis  <vangelis@chromium.org>

        [chromium] Fixing draw matrix for composited layers. This
        was a regression introduced by:
        http://trac.webkit.org/changeset/96454

        https://bugs.webkit.org/show_bug.cgi?id=69217

        Reviewed by James Robinson.

        Tests: compositor test now pass

        * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
        (WebCore::CCTiledLayerImpl::draw):
        * platform/graphics/chromium/cc/CCTiledLayerImpl.h:

2011-10-01  Geoffrey Garen  <ggaren@apple.com>

        Removed redundant helper functions for allocating Strong handles
        https://bugs.webkit.org/show_bug.cgi?id=69218

        Reviewed by Sam Weinig.

        * ForwardingHeaders/heap/StrongInlines.h: Added.
        * bindings/js/JSCallbackData.h:
        * bindings/js/JSDOMWindowShell.cpp:
        * bindings/js/ScheduledAction.h:
        * bindings/js/ScriptCachedFrameData.cpp:
        * bindings/js/ScriptController.cpp:
        * bindings/js/ScriptState.cpp:
        * bindings/js/ScriptValue.h:
        * bindings/js/WorkerScriptController.cpp:
        * bridge/runtime_root.cpp:

2011-10-01  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96421.
        http://trac.webkit.org/changeset/96421
        https://bugs.webkit.org/show_bug.cgi?id=69206

        It broke Qt-WK2 build (Requested by ossy on #webkit).

        * WebCore.pro:

2011-09-30  Adrienne Walker  <enne@google.com>

        [chromium] Track separate scroll deltas on the compositor thread
        https://bugs.webkit.org/show_bug.cgi?id=69034

        Reviewed by James Robinson.

        Test: new tests in CCLayerTreeHostImplTest/CCLayerTreeHostTest

        Track scroll deltas and maximum scrolls on LayerChromium/CCLayerImpl.
        The CCLayerImpl tree is now able to adjust these scroll deltas
        independent of the main thread. To push them back to the main thread,
        CCLayerTreeHostImpl collects them all and then bakes them into the
        scroll position during a begin frame and commit call. This allows new
        deltas to be collected while the scroll position containing the old
        delta and the old scroll position will be overwritten during the next
        commit.

        Only the main frame is supported right now for pushing this scroll
        delta back into the authoritative WebKit source to keep both sides in
        sync.

        Move tilingTransform() to the impl tree because drawTransform() is now
        updated using scroll deltas and so the results from calculating draw
        transforms needs to be dynamic so that children are updated properly.

        Also, exposed DebugScopedSetImplThread public because it's used in a
        few places.

        * platform/graphics/chromium/LayerChromium.cpp:
        (WebCore::LayerChromium::pushPropertiesTo):
        * platform/graphics/chromium/LayerChromium.h:
        (WebCore::LayerChromium::maxScrollPosition):
        (WebCore::LayerChromium::setMaxScrollPosition):
        (WebCore::LayerChromium::scrollDelta):
        (WebCore::LayerChromium::scrollable):
        * platform/graphics/chromium/NonCompositedContentHost.cpp:
        (WebCore::NonCompositedContentHost::setViewport):
        * platform/graphics/chromium/TiledLayerChromium.cpp:
        (WebCore::TiledLayerChromium::pushPropertiesTo):
        * platform/graphics/chromium/TiledLayerChromium.h:
        * platform/graphics/chromium/cc/CCLayerImpl.cpp:
        (WebCore::CCLayerImpl::scrollBy):
        * platform/graphics/chromium/cc/CCLayerImpl.h:
        (WebCore::CCLayerImpl::maxScrollPosition):
        (WebCore::CCLayerImpl::setMaxScrollPosition):
        (WebCore::CCLayerImpl::scrollDelta):
        (WebCore::CCLayerImpl::setScrollDelta):
        (WebCore::CCLayerImpl::scrollable):
        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
        (WebCore::CCLayerTreeHost::applyScrollDeltas):
        * platform/graphics/chromium/cc/CCLayerTreeHost.h:
        * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
        (WebCore::calculateDrawTransformsAndVisibilityInternal):
        * platform/graphics/chromium/cc/CCLayerTreeHostCommon.h:
        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
        (WebCore::CCLayerTreeHostImpl::scrollRootLayer):
        (WebCore::CCLayerTreeHostImpl::processScrollDeltas):
        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
        * platform/graphics/chromium/cc/CCProxy.h:
        * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
        (WebCore::CCSingleThreadProxy::start):
        (WebCore::CCSingleThreadProxy::context):
        (WebCore::CCSingleThreadProxy::finishAllRendering):
        (WebCore::CCSingleThreadProxy::initializeLayerRenderer):
        (WebCore::CCSingleThreadProxy::setNeedsCommit):
        (WebCore::CCSingleThreadProxy::stop):
        (WebCore::CCSingleThreadProxy::recreateContextIfNeeded):
        (WebCore::CCSingleThreadProxy::commitIfNeeded):
        (WebCore::CCSingleThreadProxy::doComposite):
        * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
        (WebCore::DebugScopedSetImplThread::DebugScopedSetImplThread):
        (WebCore::DebugScopedSetImplThread::~DebugScopedSetImplThread):
        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
        (WebCore::CCThreadProxy::createBeginFrameAndCommitTaskOnCCThread):
        (WebCore::CCThreadProxy::beginFrameAndCommit):
        * platform/graphics/chromium/cc/CCThreadProxy.h:
        * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
        (WebCore::CCTiledLayerImpl::tilingTransform):
        (WebCore::CCTiledLayerImpl::draw):
        * platform/graphics/chromium/cc/CCTiledLayerImpl.h:

2011-09-30  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69202
        
        [CSS3 Regions] Make positioned objects use the first region as the ICB when it
        is their containing block. Make sure static distance computations take into
        account the current region as well.

        Reviewed by Sam Weinig.

        Added new tests in fast/regions.

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::adjustPositionedBlock):
        * rendering/RenderBlock.h:
        (WebCore::RenderBlock::startOffsetForContent):
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
        (WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
        (WebCore::computeInlineStaticDistance):
        (WebCore::computeLogicalLeftPositionedOffset):
        (WebCore::computeLogicalTopPositionedOffset):
        * rendering/RenderFlowThread.cpp:
        (WebCore::RenderFlowThread::contentLogicalWidthOfFirstRegion):
        (WebCore::RenderFlowThread::contentLogicalHeightOfFirstRegion):
        (WebCore::RenderFlowThread::contentLogicalLeftOfFirstRegion):
        * rendering/RenderFlowThread.h:

2011-09-30  David Barr  <davidbarr@chromium.org>

        Implement currentColor support for CSS gradients
        https://bugs.webkit.org/show_bug.cgi?id=58730

        Reviewed by Adam Barth.

        Allow currentColor as a CSS3 gradient color-stop.

        Test: fast/css/linear-gradient-currentcolor.html

        * css/CSSGradientValue.cpp:
        (WebCore::CSSGradientValue::isCacheable): Make currentColor uncacheable since the
        background image may be invalidated if currentColor is used as a gradient stop and
        the value of the 'color' property changes.
        * css/CSSParser.cpp:
        (WebCore::parseGradientColorOrKeyword): Accept the currentColor keyword.
        * rendering/style/StyleGeneratedImage.cpp:
        (WebCore::StyleGeneratedImage::image): Initialize document styleSelector so that
        currentColor may be computed for a StyleGeneratedImage.

2011-09-30  Gavin Barraclough  <barraclough@apple.com>

        Remove toStrictThisObject, toThisString, toThisJSString
        https://bugs.webkit.org/show_bug.cgi?id=69203

        Rubber stamped by Sam Weinig

        These are no longer used.

        * bindings/js/JSDOMWindowBase.cpp:
        * bindings/js/JSDOMWindowBase.h:

2011-09-30  Adam Barth  <abarth@webkit.org>

        Remove ASSERT introduced in http://trac.webkit.org/changeset/96427
        which is triggering all over the place.

        Sorting this out is covered in this bug:
        https://bugs.webkit.org/show_bug.cgi?id=69200

        * rendering/RenderView.cpp:
        (WebCore::RenderView::layout):

2011-09-30  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96426.
        http://trac.webkit.org/changeset/96426
        https://bugs.webkit.org/show_bug.cgi?id=69199

        Broke a zillion image results on Chromium Skia Mac (Requested
        by abarth|gardener on #webkit).

        * platform/graphics/skia/GraphicsContextSkia.cpp:
        (WebCore::getFocusRingOutset):
        (WebCore::GraphicsContext::drawFocusRing):

2011-09-30  Ilya Sherman  <isherman@chromium.org>

        Fix assertion failure in XSS Auditor
        https://bugs.webkit.org/show_bug.cgi?id=69050
        https://code.google.com/p/chromium/issues/detail?id=97346

        Reviewed by Daniel Bates.

        Test: fast/forms/xss-auditor-doesnt-crash.html

        * html/parser/XSSAuditor.cpp:
        (WebCore::XSSAuditor::init): Don't try to decode the HTML body if it is empty.

2011-09-30  Maciej Stachowiak  <mjs@apple.com>

        Loading page on potterybankids causes reproducible assertion failure in debug builds
        https://bugs.webkit.org/show_bug.cgi?id=69185
        <rdar://problem/10218241>

        Reviewed by Simon Fraser.

        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::computeRepaintRects): Remove assert condition that isn't guaranteed
        to be true.

2011-09-30  Johnny Ding  <jnd@chromium.org>

        Support -webkit-tap-highlight-color when enabling touch events support.
        https://bugs.webkit.org/show_bug.cgi?id=48544

        Reviewed by Kenneth Rohde Christiansen.

        Original code from the iOS WebCore code dump, extracted and modified by tijiang@rim and jnd@chromium.
        Supports the new CSS property -webkit-tap-highlight-color on platforms which support touch events.
        Platform can override WebCore::RenderTheme::platformTapHighlightColor to use its own platform
        specific default tap highlight color. Otherwise RenderTheme::defaultTapHighlightColor will be
        used as default tap highlight color.

        Test: fast/events/touch/tap-highlight-color.html

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseValue):
        * css/CSSPropertyNames.in:
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):
        * rendering/RenderTheme.cpp:
        (WebCore::RenderTheme::tapHighlightColor):
        * rendering/RenderTheme.h:
        (WebCore::RenderTheme::platformTapHighlightColor):
        * rendering/style/RenderStyle.cpp:
        (WebCore::RenderStyle::initialTapHighlightColor):
        * rendering/style/RenderStyle.h:
        (WebCore::InheritedFlags::tapHighlightColor):
        (WebCore::InheritedFlags::setTapHighlightColor):
        * rendering/style/StyleRareInheritedData.cpp:
        (WebCore::StyleRareInheritedData::StyleRareInheritedData):
        (WebCore::StyleRareInheritedData::operator==):
        * rendering/style/StyleRareInheritedData.h:

2011-09-30  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69173
        
        RTL/LTR mixtures still not correct in regions. Simplify the loop once I realized it's only
        your directionality that matters and not your containing block's.

        Reviewed by Dan Bernstein.

        Added new test in fast/regions.

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

2011-09-30  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/10208291> first-letter in generated before content with display: table is not updated

        Reviewed by Sam Weinig.

        Test: fast/css-generated-content/first-letter-in-nested-before.html

        * rendering/RenderObjectChildList.cpp:
        (WebCore::RenderObjectChildList::updateBeforeAfterContent): Preserve the style type of anonymous
        containers around the generated content when updating their style. This preserves the first-letter-ness
        of the inline wrapping the first letter, which allows updateFirstLetter() to identify it later.

2011-09-30  Cary Clark  <caryclark@google.com>

        Inset focus ring (Skia on Mac)
        https://bugs.webkit.org/show_bug.cgi?id=69166
        http://code.google.com/p/chromium/issues/detail?id=97956

        This focus ring was drawn too large and was left tracks
        in subsequent invalidations. Make it more closely match
        the CG version.

        Reviewed by Stephen White.

        No new tests. This platform is not enabled.

        * platform/graphics/skia/GraphicsContextSkia.cpp:
        (WebCore::getFocusRingOutset):
        (WebCore::GraphicsContext::drawFocusRing):

2011-09-30  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96422.
        http://trac.webkit.org/changeset/96422
        https://bugs.webkit.org/show_bug.cgi?id=69170

        Broke Windows build and kling wanted to roll it out as well
        (Requested by rniwa on #webkit).

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

2011-09-30  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69167
        
        [CSS3 Regions] Fix some bugs in the computation of the logical left and width offsets
        for blocks in variable width regions. Specifically, this patch addresses a minor bug
        with overflow:hidden/scroll/auto block placement and with RTL directionality.

        Reviewed by Sam Weinig.

        Added five new tests in fast/regions.

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::logicalRightOffsetForContent):
        Avoid a double fetch of the border box in a given region by not calling
        logicalLeftOffsetForContent. No correctness change here. It's just cleaner.

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::borderBoxRectInRegion):
        Change the shifted optimization to be cached for "self" rather than for "containing block".
        Rework the adjustment loop to handle changes in directionality and to fix correctness
        issues with RTL.

        (WebCore::RenderBox::containingBlockLogicalWidthForContentInRegion):
        Don't double adjust if an object uses line width as the containing block width. In that
        case we already computed the line width in the region, so we don't need to apply any
        additional fixup.

        (WebCore::RenderBox::renderBoxRegionInfo):
        * rendering/RenderBoxRegionInfo.h:
        (WebCore::RenderBoxRegionInfo::RenderBoxRegionInfo):
        (WebCore::RenderBoxRegionInfo::isShifted):
        Changed the shifted code to be on self rather than on containing block.

        * rendering/RenderFlowThread.cpp:
        (WebCore::RenderFlowThread::layout):
        Refactor the layout code for RenderFlowThread to properly set up region rects assuming
        right alignment in RTL code. This change forces us to compute our maximum logical width
        first before looping through the regions again to set their content rects.

2011-09-30  Andreas Kling  <kling@webkit.org>

        REGRESSION(r82611) InlineBox has 33 bits of bitset, causing alignment issues and extra memory use.
        https://bugs.webkit.org/show_bug.cgi?id=64914

        Reviewed by Antti Koivisto.

        Remove InlineBox::prevOnLineExists() and its two accompanying bitfields
        since nobody is using them anymore. nextOnLineExists() is still used by
        GTK+ accessibility code.

        Also added a compile-time assertion to guard against future bloating of
        the InlineBox class.

        * rendering/InlineBox.cpp:
        (WebCore::SameSizeAsInlineBox::~SameSizeAsInlineBox):
        * rendering/InlineBox.h:
        (WebCore::InlineBox::InlineBox):

2011-09-30  Pierre Rossi  <pierre.rossi@gmail.com>

        [Qt] Build fix: Qt::escape is deprecated in Qt5
        https://bugs.webkit.org/show_bug.cgi?id=69162

        Use QString::toHtmlEscaped in the Qt5 case.

        Reviewed by Andreas Kling.

        No new tests needed.

        * WebCore.pro: adjust the include path accordingly
        in the v8 case.

2011-09-30  Ryosuke Niwa  <rniwa@webkit.org>

        Remove unused ReplaceSelectionCommand::copyStyleToChildren
        https://bugs.webkit.org/show_bug.cgi?id=69153

        Reviewed by Antonio Gomes.

        Removed the function because it's no called anywhere.

        * editing/ReplaceSelectionCommand.cpp:
        * editing/ReplaceSelectionCommand.h:

2011-09-30  Aaron Colwell  <acolwell@chromium.org>

        Fix EnabledAtRuntime support for constants.
        https://bugs.webkit.org/show_bug.cgi?id=67311

        Reviewed by Adam Barth.

        * bindings/scripts/CodeGeneratorV8.pm:
        (GenerateImplementation):

2011-09-29  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69043
        
        [CSS3 Regions] Blocks split across regions with variable width need to size
        differently in each region.
        
        This patch adds the capability for blocks to have variable width and positioning
        when split across regions. It is very rudimentary and so far only operates on basic
        normal flow RenderBlocks. Future patches will expand the support to cover other layout
        constructs like flexible boxes and tables.

        Reviewed by Sam Weinig.

        Added new tests in fast/regions and updated existing results.

        * WebCore.xcodeproj/project.pbxproj:
        * rendering/HitTestResult.cpp:
        (WebCore::HitTestResult::HitTestResult):
        (WebCore::HitTestResult::operator=):
        * rendering/HitTestResult.h:
        (WebCore::HitTestResult::region):
        (WebCore::HitTestResult::setRegion):
        The hit test result now holds the active RenderRegion so that hit testing can adjust
        block widths and positions when hit testing their border boxes.

        * rendering/PaintInfo.h:
        (WebCore::PaintInfo::PaintInfo):
        The paint info struct now holds the active RenderRegion so that painting can adjust
        block widths and positions when painting borders and backgrounds and shadows.

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::layoutBlock):
        If our width ever changes, we invalidate all of our cached RenderBoxRegionInfo in all
        regions that we span.

        (WebCore::RenderBlock::clearRenderBoxRegionInfo):
        Called to clear out our cached region-specific information in all regions that we span.

        (WebCore::RenderBlock::borderBoxRectInRegionAtPosition):
        Returns the borderBoxRect for the region at the specified vertical offset. This rect
        can be both shifted horizontally and have a different width from our original border rect.

        (WebCore::RenderBlock::logicalLeftOffsetForContent):
        (WebCore::RenderBlock::logicalRightOffsetForContent):
        Modified to call borderBoxRectInRegionAtPosition so that lines will fit inside
        the content rect of the border box rect for the specific region.

        * rendering/RenderBlock.h:
        (WebCore::RenderBlock::logicalRightOffsetForContent):
        Modified to call logicalLeftOffsetForContent since it's cleaner.

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::borderBoxRectInRegion):
        Called to compute the border box rect in a specific region. The result is cached in a HashMap
        in the region itself so that subsequent lookups are fast.

        (WebCore::RenderBox::nodeAtPoint):
        Modified to use the border box rect in the active region when hit testing the backgrounds of boxes.

        (WebCore::RenderBox::paintBoxDecorations):
        Modified to use the border box rect in the active region when painting the backgrounds of boxes.

        (WebCore::RenderBox::containingBlockLogicalWidthForContent):
        (WebCore::RenderBox::containingBlockLogicalWidthForContentInRegion):
        (WebCore::RenderBox::computeLogicalWidth):
        (WebCore::RenderBox::computeLogicalWidthInRegion):
        Helpers for computing logical widths and margins in a specific region. The result is then cached
        in a HashMap in the region.

        (WebCore::RenderBox::renderBoxRegionInfo):
        The function for obtaining the region-specific information for a given box.

        * rendering/RenderBox.h:
        (WebCore::RenderBox::borderBoxRectInRegion):
        New function for returning the border box rect in a given region.

        * rendering/RenderBoxModelObject.cpp:
        (WebCore::RenderBoxModelObject::paintFillLayerExtended):
        Make sure mask painting honors the active region.

        * rendering/RenderBoxRegionInfo.h: Added.
        (WebCore::RenderBoxRegionInfo::RenderBoxRegionInfo):
        (WebCore::RenderBoxRegionInfo::logicalLeft):
        (WebCore::RenderBoxRegionInfo::logicalWidth):
        (WebCore::RenderBoxRegionInfo::containingBlockChainIsShifted):
        New class held by RenderRegions that caches box-specific info for a given region. This will eventually
        expand to include custom styles as well, but for now it is limited to a new logical left and a new
        logical width, along with a bit for optimizing accumulated shifting when painting/hit testing to avoid
        too much groveling up the containing block chain.

        * rendering/RenderFlowThread.cpp:
        (WebCore::RenderFlowThread::RenderFlowThread):
        Removed the region fitting optimization, since eventually everyone is going to care, and there's no reason
        to limit it with the results now being cached.

        (WebCore::RenderFlowThread::layout):
        All box-specific region information is always cleared whenever the regions are invalidated.

        (WebCore::RenderFlowThread::computeLogicalWidth):
        Modified to set up RenderBoxRegionInfo for the flow thread in all regions.
        
        (WebCore::RenderFlowThread::paintIntoRegion):
        (WebCore::RenderFlowThread::hitTestRegion):
        Modified to take the region instead of the region's rectangle so that painting and hit testing of the flow
        thread layer tree can properly receive the active region.

        (WebCore::RenderFlowThread::removeRenderBoxRegionInfo):
        Helper for removing a box's information from all regions. For now it grovels through every region, so eventually
        we may want to have a cache of the start/end regions for a given box somewhere.

        * rendering/RenderFlowThread.h:
        Removal of the region fitting stuff.

        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::paint):
        (WebCore::RenderLayer::paintOverlayScrollbars):
        (WebCore::RenderLayer::paintLayer):
        (WebCore::RenderLayer::paintList):
        (WebCore::RenderLayer::paintPaginatedChildLayer):
        (WebCore::RenderLayer::paintChildLayerIntoColumns):
        * rendering/RenderLayer.h:
        * rendering/RenderLayerBacking.cpp:
        (WebCore::RenderLayerBacking::paintIntoLayer):
        Modified to pass the current region down through painting functions so that it is known at paint time.

        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::RenderObject):
        Added a new bit to RenderObjects, inRenderFlowThread(), so that it is quick to determine whether or not an
        object needs flow thread special casing.

        (WebCore::RenderObject::enclosingRenderFlowThread):
        Modified enclosingRenderFlowThread to be able to quickly return 0 if the object is not in a flow thread.

        (WebCore::RenderObject::containerForRepaint):
        Same.

        * rendering/RenderObject.h:
        (WebCore::RenderObject::setParent):
        setParent now updates inRenderFlowThread() state.

        (WebCore::RenderObject::inRenderFlowThread):
        (WebCore::RenderObject::setInRenderFlowThread):
        Adding the new bit.

        * rendering/RenderObjectChildList.cpp:
        (WebCore::RenderObjectChildList::removeChildNode):
        Make sure when an object is removed from a RenderFlowThread that it deletes its box-specific information
        in all regions.

        * rendering/RenderRegion.cpp:
        (WebCore::RenderRegion::~RenderRegion):
        (WebCore::RenderRegion::paintReplaced):
        (WebCore::RenderRegion::nodeAtPoint):
        (WebCore::RenderRegion::renderBoxRegionInfo):
        (WebCore::RenderRegion::setRenderBoxRegionInfo):
        (WebCore::RenderRegion::removeRenderBoxRegionInfo):
        (WebCore::RenderRegion::deleteAllRenderBoxRegionInfo):
        (WebCore::RenderRegion::matchesRenderFlowThreadLogicalWidth):
        * rendering/RenderRegion.h:
        Added the new HashMap for holding box-specific region information. Also added an additional optimization to
        check if a specific region matches the overall width of the RenderFlowThread. If it does, we don't need to 
        cache box-specific information for that region.

        * rendering/RenderReplica.cpp:
        (WebCore::RenderReplica::paint):
        * rendering/RenderScrollbarPart.cpp:
        (WebCore::RenderScrollbarPart::paintIntoRect):
        * rendering/svg/SVGImageBufferTools.cpp:
        (WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer):
        Modified the PaintInfo construction to include the region argument. It's not optional so that callers will
        have to consider it (since masks illustrated this is necessary).

2011-09-30  Tim Horton  <timothy_horton@apple.com>

        feBlend uses a table of function pointers which reduces inlineability inside the main loop
        https://bugs.webkit.org/show_bug.cgi?id=69154
        <rdar://problem/10215221>

        Reviewed by Darin Adler.

        Don't use a table of function pointers inside the feBlend inner loop, instead
        use switch and inline functions, bringing a 20% performance gain across the
        board to feBlend.

        No new tests, minor performance improvement.

        * platform/graphics/filters/FEBlend.cpp:
        (WebCore::normal):
        (WebCore::multiply):
        (WebCore::screen):
        (WebCore::darken):
        (WebCore::lighten):
        (WebCore::FEBlend::apply):

2011-09-30  Mark Hahnenberg  <mhahnenberg@apple.com>

        Add getCallData to MethodTable in ClassInfo
        https://bugs.webkit.org/show_bug.cgi?id=69024

        Reviewed by Sam Weinig.

        No new tests.

        * WebCore.exp.in:

        Changed getCallData from private to protected to allow subclasses who 
        don't override getCallData themselves to reference it in their own 
        method tables when calling the CREATE_METHOD_TABLE macro.
        * bridge/runtime_method.h:

2011-09-30  Ned Holbrook  <nholbrook@apple.com>

        Complex spaces with synthetic bold are too wide
        https://bugs.webkit.org/show_bug.cgi?id=69033

        Reviewed by Dan Bernstein.

        Test: fast/text/complex-synthetic-bold-space-width.html

        * platform/graphics/mac/ComplexTextController.cpp:
        (WebCore::ComplexTextController::adjustGlyphsAndAdvances): Subtract synthetic bold offset from spaceWidth.
        * platform/graphics/win/UniscribeController.cpp:
        (WebCore::UniscribeController::shapeAndPlaceItem): Ditto.

2011-09-30  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: [chromium] expose inspector protocol version to the embedder.
        https://bugs.webkit.org/show_bug.cgi?id=69092

        This change also introduces major/minor inspector version components.

        Reviewed by Yury Semikhatsky.

        * CMakeLists.txt:
        * CodeGenerators.pri:
        * DerivedSources.make:
        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * WebCore.gyp/WebCore.gyp:
        * WebCore.gypi:
        * inspector/Inspector-0.1.json: Renamed from Source/WebCore/inspector/Inspector.draft-01.json.
        * inspector/Inspector.json:
        * inspector/generate-inspector-protocol-version: Renamed from Source/WebCore/inspector/validate-protocol-compatibility.

2011-09-29  Antti Koivisto  <antti@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69106
        Universal attribute selectors disable style sharing

        Reviewed by Dave Hyatt.

        Selectors of type [foo="bar"] ended up marking every element style with the affectedByAttributeSelectors bit
        rendering style sharing inoperative. This happens on http://www.whatwg.org/specs/web-apps/current-work/ for example.

        Instead we now mark style with affectedByUncommonAttributeSelectors bit only if an attribute selector actually 
        matches the element. Before sharing, we also check the current element against collected attribute rules.
        We can share the style if neither element was affected.
        
        This speeds up style matching and applying ~15% on full HTML5 spec (=~0.7s). Sharing percentage goes from 0% to ~30%.
        Increased sharing should also save a substantial amount of memory.

        * css/CSSSelector.h:
        (WebCore::CSSSelector::isAttributeSelector):
        * css/CSSStyleSelector.cpp:
        (WebCore::RuleData::containsUncommonAttributeSelector):
        (WebCore::collectSpecialRulesInDefaultStyle):
        (WebCore::assertNoSiblingRulesInDefaultStyle):
        (WebCore::CSSStyleSelector::CSSStyleSelector):
        (WebCore::CSSStyleSelector::matchRules):
        (WebCore::CSSStyleSelector::matchesRuleSet):
        (WebCore::CSSStyleSelector::canShareStyleWithElement):
        (WebCore::CSSStyleSelector::locateSharedStyle):
        (WebCore::CSSStyleSelector::styleForElement):
        (WebCore::selectorListContainsUncommonAttributeSelector):
        (WebCore::isCommonAttributeSelectorAttribute):
        (WebCore::containsUncommonAttributeSelector):
        (WebCore::RuleData::RuleData):
        (WebCore::collectFeaturesFromSelector):
        (WebCore::collectFeaturesFromList):
        * css/CSSStyleSelector.h:
        * css/SelectorChecker.cpp:
        (WebCore::SelectorChecker::checkOneSelector):
        * rendering/style/RenderStyle.cpp:
        (WebCore::RenderStyle::RenderStyle):
        * rendering/style/RenderStyle.h:
        (WebCore::InheritedFlags::affectedByUncommonAttributeSelectors):
        (WebCore::InheritedFlags::setAffectedByUncommonAttributeSelectors):

2011-09-30  James Robinson  <jamesr@chromium.org>

        [chromium] Add WebKit API for sending input events to the compositor thread
        https://bugs.webkit.org/show_bug.cgi?id=69117

        Reviewed by Darin Fisher.

        Convert to using an externally-provided thread instead of one managed by CCThreadProxy internally. Most changes
        in these files are mechanically changing references from ccThread to s_ccThread to reflect the class-static
        nature of this pointer, the rest are removing the old thread creation codepath.

        These changes are covered by the CC* unit tests and by the gpu layout tests when run with the
        use_threaded_compositing=1 gyp define.

        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
        * platform/graphics/chromium/cc/CCLayerTreeHost.h:
        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
        (WebCore::CCThreadProxy::setThread):
        (WebCore::CCThreadProxy::CCThreadProxy):
        (WebCore::CCThreadProxy::~CCThreadProxy):
        (WebCore::CCThreadProxy::compositeAndReadback):
        (WebCore::CCThreadProxy::finishAllRendering):
        (WebCore::CCThreadProxy::initializeLayerRenderer):
        (WebCore::CCThreadProxy::setNeedsCommit):
        (WebCore::CCThreadProxy::setNeedsCommitAndRedraw):
        (WebCore::CCThreadProxy::setNeedsRedraw):
        (WebCore::CCThreadProxy::start):
        (WebCore::CCThreadProxy::stop):
        (WebCore::CCThreadProxy::beginFrameAndCommit):
        (WebCore::CCThreadProxy::scheduleDrawTaskOnCCThread):
        * platform/graphics/chromium/cc/CCThreadProxy.h:

2011-09-29  Fady Samuel  <fsamuel@chromium.org>

        Fixed Hit testing on Framesets when Frameset is transformed
        https://bugs.webkit.org/show_bug.cgi?id=67740

        Reviewed by Simon Fraser.

        Tests: fast/frames/frame-set-rotation-hit.html
               fast/frames/frame-set-scaling-hit.html

        * rendering/RenderFrameSet.cpp:
        (WebCore::RenderFrameSet::userResize):

2011-09-29  Dirk Pranke  <dpranke@chromium.org>

        fix gyp warnings in chromium for renamed files
        https://bugs.webkit.org/show_bug.cgi?id=69116

        Reviewed by Adam Barth.

        * WebCore.gypi:

2011-09-29  Martin Robinson  <mrobinson@igalia.com>

        [Freetype] Some text in Planet GNOME renders in the wrong place
        https://bugs.webkit.org/show_bug.cgi?id=69099

        Reviewed by Dirk Schulze.

        Test: platform/gtk/fonts/synthetic-oblique-positioning.html

        Fold the oblique transform into the font matrix itself rather than transforming
        the CTM of the context at render time. Not only does this fix the issue, it
        prevents unnecessary work on every paint.

        * platform/graphics/cairo/FontCairo.cpp:
        No longer set the synthetic oblique transformation matrix on the context
        when rendering the text. Instead it is now folded into the TM of the font
        itself.
        * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
        (WebCore::FontPlatformData::initializeWithFontFace): Fold the oblique transform into the scaled font.
        * platform/graphics/win/FontPlatformDataCairoWin.cpp:
        (WebCore::FontPlatformData::FontPlatformData): Ditto.

2011-09-29  Dan Bernstein  <mitz@apple.com>

        Follow-up fix for <rdar://problem/10191243> Glyph variants (line final swashes) appear where they should not

        Reviewed by Simon Fraser.

        * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
        (WebCore::FontPlatformData::ctFont): Check for Hoefler Text Black Italic as well.

2011-09-29  Cary Clark  <caryclark@google.com>

        Enable LCD text in Skia on Mac
        https://bugs.webkit.org/show_bug.cgi?id=68734

        Reviewed by Stephen White.

        No new tests. Existing layout tests are generated
        with LCD text disabled for pixel comparisons.

        Duplicate the logic in FontMac.mm to pass settings
        for antialiasing and smoothing. Also disable smoothing
        for DumpRenderTree.
 
        * platform/graphics/skia/FontSkia.cpp:
        (WebCore::setupPaint):
        (WebCore::Font::drawGlyphs):

2011-09-29  Varun Jain  <varunjain@google.com>
 
         Implement flick gesture in Chromium Gesture Recognizer
         https://bugs.webkit.org/show_bug.cgi?id=67930
 
         Reviewed by Dimitri Glazkov.
 
         Test: Source/WebKit/chromium/tests/InnerGestureRecognizerTest.cpp 
 
         * platform/chromium/GestureRecognizerChromium.cpp:
         (WebCore::GestureRecognizerChromium::isOverMinFlickSpeed):
         (WebCore::GestureRecognizerChromium::appendScrollGestureEnd):
         (WebCore::GestureRecognizerChromium::updateValues):
         (WebCore::GestureRecognizerChromium::scrollEnd):
         * platform/chromium/GestureRecognizerChromium.h:

2011-09-29  Noel Gordon  <noel.gordon@gmail.com>

        [chromium] canvas.toDataURL("image/jpeg"): use libjpeg-turbo data swizzle
        https://bugs.webkit.org/show_bug.cgi?id=67402

        Reviewed by Kenneth Russell.

        libjpeg-turbo can read directly from the input data for the premultiplied BRGX
        (SkBitmap) encoding case.

        No change in behavior, covered by existing canvas 2d/3d tests
        canvas/philip/tests/toDataURL.jpeg.alpha.html
        fast/canvas/webgl/premultiplyalpha-test.html

        * platform/image-encoders/skia/JPEGImageEncoder.cpp:
        (WebCore::encodePixels): If JCS_EXTENSIONS is defined (libjpeg-turbo), swizzle
        the input BRGX pixels directly within libjpeg-turbo.

2011-09-29  Adam Barth  <abarth@webkit.org>

        Fixenate the build.

        * bindings/v8/V8DOMWindowShell.cpp:
        (WebCore::V8DOMWindowShell::namedItemAdded):

2011-09-29  Ryosuke Niwa  <rniwa@webkit.org>

        Remove direct reads to m_firstNodeInserted and m_lastLeafInserted in ReplaceSelectionCommand
        https://bugs.webkit.org/show_bug.cgi?id=69023

        Reviewed by Enrica Casucci.

        Converted to removeUnrenderedTextNodesAtEnds to use InsertedNodes instead of m_firstNodeInserted
        and m_lastLeafInserted. Extracted the logic to update nodes as InsertedNodes::willRemoveNode
        (old one was renamed to InsertedNodes::willRemoveNodePreservingChildren).

        Also extracted shouldPerformSmartReplace and addSpacesForSmartReplace out of doApply,
        and rewrote the logic to obtain endNode and startNode using startOfInsertedContent and
        endOfInsertedContent instead of m_firstNodeInserted and m_lastLeafInserted.

        Finally, replaced the nullity checks of m_firstNodeInserted and m_lastLeafInserted in
        completeHTMLReplacement by nullity checks of start and end positions.

        * dom/Node.cpp:
        (WebCore::Node::traversePreviousSibling): Added.
        * dom/Node.h:
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplaceSelectionCommand::InsertedNodes::willRemoveNodePreservingChildren): Renamed from
        willRemoveNode.
        (WebCore::ReplaceSelectionCommand::InsertedNodes::willRemoveNode): Extracted from
        removeUnrenderedTextNodesAtEnds.
        (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
        (WebCore::ReplaceSelectionCommand::removeUnrenderedTextNodesAtEnds):
        (WebCore::ReplaceSelectionCommand::positionAtEndOfInsertedContent): Made const.
        (WebCore::ReplaceSelectionCommand::positionAtStartOfInsertedContent): Made const.
        (WebCore::ReplaceSelectionCommand::handleStyleSpans): Takes firstNodeInserted instead of directly
        accessing m_firstNodeInserted.
        (WebCore::ReplaceSelectionCommand::doApply):
        (WebCore::ReplaceSelectionCommand::shouldPerformSmartReplace):
        (WebCore::ReplaceSelectionCommand::addSpacesForSmartReplace):
        (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
        * editing/ReplaceSelectionCommand.h:

2011-09-29  Andreas Kling  <kling@webkit.org>

        Shrink HTMLAnchorElement on 32-bit.
        https://bugs.webkit.org/show_bug.cgi?id=69094

        Reviewed by Antti Koivisto.

        * html/HTMLAnchorElement.h: Pack members into a bitfield.

2011-09-29  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/10191243> Glyph variants (line final swashes) appear where they should not

        Reviewed by Simon Fraser.

        Test: fast/text/line-initial-and-final-swashes.html

        Hoefler Text Italic enables line-initial and -final swashes by default, so disable them. This
        change targets only this known-bad font rather than all fonts, because at least one font (Khmer MN)
        incorrectly claims to have the line-initial feature enabled, but disabling it actually does
        something different and bad (breaking some combining marks).

        * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
        (WebCore::createFeatureSettingDictionary): Added this helper function.
        (WebCore::cascadeToLastResortFontDescriptor): Deployed WTF_ARRAY_LENGTH().
        (WebCore::cascadeToLastResortAndDisableSwashesFontDescriptor): Added. Returns a font descriptor
        that, in addition to having a cascade list consisting of the last resort font, also has feature
        settings to disable line-initial and line-final swashes.
        (WebCore::FontPlatformData::ctFont): For Hoefler Text Italic, use cascadeToLastResortAndDisableSwashesFontDescriptor().

2011-09-29  Mark Hahnenberg  <mhahnenberg@apple.com>

        Unreviewed: resetting baseline for code generator bindings

        Unreviewed build fix

        No new tests.

        * bindings/scripts/test/JS/JSTestObj.cpp:
        * bindings/scripts/test/JS/JSTestObj.h:

2011-09-29  Nate Chapin  <japhet@chromium.org>

        [V8, chromium] More logging to determine cause of a null
        v8::Context in V8DOMWindowShell::namedItemAdded().

        https://bugs.webkit.org/show_bug.cgi?id=68099

        Reviewed by Adam Barth.

        * bindings/v8/V8DOMWindowShell.cpp:
        (WebCore::V8DOMWindowShell::namedItemAdded):

2011-09-29  Alexey Proskuryakov  <ap@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=69040
        ScrollbarThemeComposite requires a ScrollView to draw scroll corner

        Reviewed by Simon Fraser.

        No new tests. This will be needed later.

        * platform/ScrollbarThemeComposite.cpp:
        (WebCore::pageForScrollView):
        (WebCore::ScrollbarThemeComposite::paintScrollCorner):
        Use pageForScrollView() function which already existed in this file, used in another similar
        location.

        * platform/chromium/FramelessScrollView.cpp:
        * platform/chromium/FramelessScrollView.h:
        * platform/gtk/ScrollbarThemeGtk.cpp:
        * platform/gtk/ScrollbarThemeGtk.h:
        * platform/wx/ScrollbarThemeWx.cpp:
        * platform/wx/ScrollbarThemeWx.h:
        All these overrides are no longer needed, ScrollbarThemeComposite will do the right thing.

        * platform/qt/ScrollbarThemeQt.cpp: (WebCore::ScrollbarThemeQt::paintScrollCorner):
        Removed a special case for updatingControlTints phase. The same case is present in cross-platform
        code now, and Qt doesn't have any custom subclasses of ScrollableArea or ScrollView to need
        special handling.
        This was added in r37377 without a bug or much ChangeLog explanation.

2011-09-29  Mark Hahnenberg  <mhahnenberg@apple.com>

        De-virtualize JSCell::visitChildrenVirtual and remove all other visitChildrenVirtual methods
        https://bugs.webkit.org/show_bug.cgi?id=68839

        Reviewed by Geoffrey Garen.

        No new tests.

        Removed the remaining visitChildrenVirtual methods.  This patch completes the process of 
        de-virtualizing visitChildren.

        * WebCore.exp.in:
        * bindings/js/JSAttrCustom.cpp:
        * bindings/js/JSAudioContextCustom.cpp:
        * bindings/js/JSCSSRuleCustom.cpp:
        * bindings/js/JSCSSStyleDeclarationCustom.cpp:
        * bindings/js/JSCanvasRenderingContextCustom.cpp:
        * bindings/js/JSDOMGlobalObject.cpp:
        (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject):
        (WebCore::JSDOMGlobalObject::finishCreation):
        * bindings/js/JSDOMGlobalObject.h:
        * bindings/js/JSDOMWindowCustom.cpp:
        * bindings/js/JSDOMWindowShell.cpp:
        * bindings/js/JSDOMWindowShell.h:
        * bindings/js/JSJavaScriptAudioNodeCustom.cpp:
        * bindings/js/JSMessageChannelCustom.cpp:
        * bindings/js/JSMessagePortCustom.cpp:
        * bindings/js/JSNamedNodeMapCustom.cpp:
        * bindings/js/JSNodeCustom.cpp:
        * bindings/js/JSNodeFilterCustom.cpp:
        * bindings/js/JSNodeIteratorCustom.cpp:
        * bindings/js/JSSVGElementInstanceCustom.cpp:
        * bindings/js/JSSharedWorkerCustom.cpp:
        * bindings/js/JSStyleSheetCustom.cpp:
        * bindings/js/JSTreeWalkerCustom.cpp:
        * bindings/js/JSWebGLRenderingContextCustom.cpp:
        * bindings/js/JSWorkerContextCustom.cpp:
        * bindings/js/JSXMLHttpRequestCustom.cpp:
        * bindings/js/JSXPathResultCustom.cpp:
        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateHeader):
        (GenerateImplementation):
        * bridge/qt/qt_instance.cpp:
        * bridge/qt/qt_runtime.cpp:
        * bridge/qt/qt_runtime.h:

2011-09-23  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>

        [Qt] Fix build against Qt5 after refactor of widgets out of QtGUi

        QWidget and friends now live in the QtWidgets library. We update
        includes in implementation files and private headers to us the
        non-module-prefixed path, and leave the lookup for the include
        path. For public headers we have to ifdef the includes as the
        user might now have the modules we need in his QT config.

        Finally, QSGCanvas is no longer a QWidget but a QWindow, so we
        have to update our code and use windowHandle() for setting the
        parent relationships.

        https://bugs.webkit.org/show_bug.cgi?id=68687

        Reviewed by Andreas Kling.

        * WebCore.pri:
        * platform/graphics/qt/GraphicsLayerQt.cpp:

2011-09-29  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96340.
        http://trac.webkit.org/changeset/96340
        https://bugs.webkit.org/show_bug.cgi?id=69098

        Caused 10 tests to crash in Debug (Requested by
        abarth|gardener on #webkit).

        * accessibility/AXObjectCache.cpp:
        (WebCore::AXObjectCache::AXObjectCache):
        (WebCore::AXObjectCache::~AXObjectCache):
        (WebCore::AXObjectCache::remove):
        (WebCore::AXObjectCache::childrenChanged):
        * accessibility/AXObjectCache.h:
        * accessibility/AccessibilityMenuList.cpp:
        (WebCore::AccessibilityMenuList::childrenChanged):
        * accessibility/AccessibilityMenuList.h:
        * accessibility/AccessibilityMenuListPopup.cpp:
        (WebCore::AccessibilityMenuListPopup::childrenChanged):
        * accessibility/AccessibilityMenuListPopup.h:
        * accessibility/AccessibilityObject.h:
        (WebCore::AccessibilityObject::childrenChanged):
        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::startOfContinuations):
        (WebCore::AccessibilityRenderObject::updateAccessibilityRole):
        (WebCore::AccessibilityRenderObject::childrenChanged):
        * accessibility/AccessibilityRenderObject.h:
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::willBeDestroyed):

2011-09-29  Andreas Kling  <kling@webkit.org>

        Shrink FontFallbackList.
        https://bugs.webkit.org/show_bug.cgi?id=69093

        Reviewed by Antti Koivisto.

        Reduce the size of FontFallbackList by one CPU word, decreasing memory
        consumption by 300 kB (on 64-bit) when loading the full HTML5 spec.

        * platform/graphics/FontCache.h:
        * platform/graphics/FontCache.cpp:
        (WebCore::FontCache::generation):

            Store the FontCache generation as an ushort rather than uint.

        * platform/graphics/FontFallbackList.cpp:
        (WebCore::FontFallbackList::FontFallbackList):
        * platform/graphics/FontFallbackList.h:

            Pack enum and bool members in a bitfield.

2011-09-29  Adam Barth  <abarth@webkit.org>

        We should ignore the return value of GetRealNamedProperty
        https://bugs.webkit.org/show_bug.cgi?id=68840

        Reviewed by Nate Chapin.

        Instead of skipping the lookup process by using the result of real
        named property, we should just indiciate that it wasn't handled by the
        interceptor.

        Test: http/tests/security/window-named-valueOf.html

        * bindings/v8/custom/V8DOMWindowCustom.cpp:
        (WebCore::V8DOMWindow::namedPropertyGetter):

2011-09-29  Chris Fleizach  <cfleizach@apple.com>

        ARIA live regions don't trigger notifications for elements that aren't in the AX tree
        https://bugs.webkit.org/show_bug.cgi?id=62289

        If an ARIA Live region udpates an element that is not in the AX object cache, then the Live region
        notification is not sent. To fix this, the childrenChanged() method needs to actually create
        the appropriate objects, but since that method gets called during a render tree update, we've learned 
        that it's generally not safe to create objects.

        Instead a one shot timer can be fired that will update and create the necessary objects so that the
        correct notification can be sent.

        Reviewed by Darin Adler.

        Test: platform/mac/accessibility/aria-liveregion-without-element-access.html

        * accessibility/AXObjectCache.cpp:
        (WebCore::AXObjectCache::AXObjectCache):
        (WebCore::AXObjectCache::~AXObjectCache):
        (WebCore::AXObjectCache::remove):
        (WebCore::AXObjectCache::childrenUpdateTimerFired):
        (WebCore::AXObjectCache::childrenChanged):
        * accessibility/AXObjectCache.h:
        * accessibility/AccessibilityMenuList.cpp:
        (WebCore::AccessibilityMenuList::childrenChanged):
        * accessibility/AccessibilityMenuList.h:
        * accessibility/AccessibilityMenuListPopup.cpp:
        (WebCore::AccessibilityMenuListPopup::childrenChanged):
        * accessibility/AccessibilityMenuListPopup.h:
        * accessibility/AccessibilityObject.h:
        (WebCore::AccessibilityObject::childrenChanged):
        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::startOfContinuations):
        (WebCore::AccessibilityRenderObject::updateAccessibilityRole):
        (WebCore::AccessibilityRenderObject::childrenChanged):
        * accessibility/AccessibilityRenderObject.h:
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::willBeDestroyed):

2011-09-29  Martin Robinson  <mrobinson@igalia.com>

        [GTK] Dragging a selection does not produce a drag image
        https://bugs.webkit.org/show_bug.cgi?id=69064

        Reviewed by Andreas Kling.

        Moved Chromium's generic implementation of Frame::nodeImage and
        Frame::dragImageForSeletion to Frame.cpp and simply excluded via
        #ifdefs platforms that do not have their own implementation. Removed
        all empty implementations of these functions and Qt's which was
        functionally identical.

        No new tests. Drag-and-drop drag image functionality changes
        are incredibly difficult to test in a non-manual way.

        * CMakeListsEfl.txt: Delist FrameEfl.cpp.
        * GNUmakefile.list.am: Delist FrameGtk.cpp.
        * WebCore.gypi: Delist removed Frame*.cpp.
        * WebCore.pro: Delist FrameQt.cpp.
        * page/Frame.cpp: Moved FrameChromium implementation here.
        (WebCore::ScopedFramePaintingState::ScopedFramePaintingState):
        (WebCore::ScopedFramePaintingState::~ScopedFramePaintingState):
        (WebCore::Frame::nodeImage):
        (WebCore::Frame::dragImageForSelection):
        * page/chromium/FrameChromium.cpp: Removed.
        * page/efl/FrameEfl.cpp: Removed.
        * page/gtk/FrameGtk.cpp: Removed.
        * page/qt/FrameQt.cpp: Removed.
        * page/wx/FrameWx.cpp: Removed.
        * platform/gtk/ClipboardGtk.cpp:
        (WebCore::ClipboardGtk::createDragImage): Call nodeImage to get
        the drag image for a node.

2011-09-29  Noel Gordon  <noel.gordon@gmail.com>

        [chromium skia] PNGImageEncoder: hoist constants out of the encoding loop
        https://bugs.webkit.org/show_bug.cgi?id=68988

        Reviewed by Kenneth Russell.

        No new tests.  Covered by existing canvas 2d and 3d tests.
        canvas/philip/tests/toDataURL.png.*.html
        fast/canvas/toDataURL-alpha.html
        fast/canvas/webgl/premultiplyalpha-test.html

        * platform/image-encoders/skia/PNGImageEncoder.cpp:
        (WebCore::encodePixels):  Move constant out of the encoding loop.
        (WebCore::PNGImageEncoder::encode):  Consistency & style: call encodePixels()
        just like we do in the JPEG encoder.

2011-09-29  Iain Merrick  <husky@google.com>

        Add unit test for CCLayerSorter
        https://bugs.webkit.org/show_bug.cgi?id=68622

        Minor refactoring for testability:
        - Made pointInTriangle public.
        - Added LayerShape to decouple LayerIntersector and GraphNode.
        - Added a public wrapper function for LayerIntersector.

        Reviewed by James Robinson.

        * platform/graphics/chromium/cc/CCLayerSorter.cpp:
        (WebCore::CCLayerSorter::pointInTriangle):
        (WebCore::CCLayerSorter::calculateZDiff):
        (WebCore::CCLayerSorter::LayerIntersector::LayerIntersector):
        (WebCore::CCLayerSorter::LayerIntersector::go):
        (WebCore::CCLayerSorter::LayerIntersector::checkZDiff):
        (WebCore::CCLayerSorter::LayerIntersector::layerZFromProjectedPoint):
        (WebCore::CCLayerSorter::checkOverlap):
        (WebCore::CCLayerSorter::LayerShape::LayerShape):
        (WebCore::CCLayerSorter::createGraphNodes):
        * platform/graphics/chromium/cc/CCLayerSorter.h:
        (WebCore::CCLayerSorter::LayerShape::LayerShape):
        (WebCore::CCLayerSorter::GraphNode::GraphNode):

2011-09-29  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: UI performance test for network panel is incorrect. The time is including a timeout between scheduled refresh and actual refresh.
        https://bugs.webkit.org/show_bug.cgi?id=69087

        The fix has the changes for the test and minor perf framework improvements.

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/NetworkPanel.js:
        (WebInspector.NetworkLogView.prototype._defaultRefreshDelay.500._scheduleRefresh):

2011-09-29  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Make search-in-resource test simpler.
        https://bugs.webkit.org/show_bug.cgi?id=69025

        Changed search-in-resource test.
        Removed error parameter from content provider's searchInContent callback.

        Reviewed by Pavel Feldman.

        * inspector/InspectorPageAgent.cpp:
        (WebCore::InspectorPageAgent::searchInResource):
        (WebCore::InspectorPageAgent::searchInResources):
        * inspector/front-end/Resource.js:
        (WebInspector.Resource.prototype.searchInContent):

2011-09-29  Hans Wennborg  <hans@chromium.org>

        IndexedDB: Use LevelDB also for in-memory databases
        https://bugs.webkit.org/show_bug.cgi?id=68903

        Reviewed by Steve Block.

        Add LevelDBDatabase::openInMemory() which uses leveldb::NewMemEnv()
        to create in-memory LevelDB databases.

        Use this in IDBLeveLDBBackingStore::open() when the caller passes in
        an empty file path.
        This happens in Chromium's incognito mode, and when running layout
        tests.

        Fix IDBSQLiteBackingStore::backingStoreExists() so it doesn't create
        files when passed in an empty file path, but uses the in-memory mode
        instead.

        Existing layout tests will all be run in-memory.

        * platform/leveldb/LevelDBDatabase.cpp:
        (WebCore::LevelDBDatabase::~LevelDBDatabase):
        (WebCore::openDB):
        (WebCore::LevelDBDatabase::open):
        (WebCore::LevelDBDatabase::openInMemory):
        * platform/leveldb/LevelDBDatabase.h:
        * storage/IDBLevelDBBackingStore.cpp:
        (WebCore::IDBLevelDBBackingStore::open):
        * storage/IDBSQLiteBackingStore.cpp:
        (WebCore::IDBSQLiteBackingStore::backingStoreExists):

2011-09-29  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: speed-up Network panel. Change _staleResources type from array to object.
        https://bugs.webkit.org/show_bug.cgi?id=69081

        There is a test with 30 requests.
        For the each stage of loading a resource we have an entry in _staleResources array. There are at least 4 stages per request.
        NetworkLogView._refresh function is creating/updating the resource row for the each such entry.
        This array can be replaced with a hash map just because the resource associated with the entry is the same for all the entries with the same request id.

        Reviewed by Pavel Feldman.

        Test: inspector/performance/resources/network-append-30-requests.html

        * inspector/front-end/NetworkPanel.js:
        (WebInspector.NetworkLogView):
        (WebInspector.NetworkLogView.prototype._invalidateAllItems):
        (WebInspector.NetworkLogView.prototype.refresh):
        (WebInspector.NetworkLogView.prototype._reset):
        (WebInspector.NetworkLogView.prototype._refreshResource):

2011-09-28  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: make inspector protocol validation a part of the build process.
        https://bugs.webkit.org/show_bug.cgi?id=68999

        Since we'd like to commit to inspector protocol backwards compatibility, violating it
        should be a build failure.

        Reviewed by Yury Semikhatsky.

        * CMakeLists.txt:
        * CodeGenerators.pri:
        * DerivedSources.make:
        * GNUmakefile.am:
        * WebCore.gyp/WebCore.gyp:
        * inspector/Inspector.draft-01.json:
        * inspector/Inspector.json:
        * inspector/generate-inspector-idl:
        * inspector/generate-protocol-externs:
        * inspector/validate-protocol-compatibility:

2011-09-27  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: Scripts panel without folders causes errors when creating content scripts section.
        https://bugs.webkit.org/show_bug.cgi?id=68827

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.insertOrdered.optionCompare):
        (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.insertOrdered):
        (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):

2011-09-28  Andrey Kosyakov  <caseq@chromium.org>

        Web Inspector: network log view refresh optimizations
        https://bugs.webkit.org/show_bug.cgi?id=69010

        Reviewed by Pavel Feldman.

        * inspector/front-end/NetworkPanel.js:
        (WebInspector.NetworkLogView.prototype.refresh):

2011-09-29  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: split SourceFile.js into RawSourceCode.js and UISourceCodeContentProviders.js.
        https://bugs.webkit.org/show_bug.cgi?id=69068

        Reviewed by Yury Semikhatsky.

        * WebCore.gypi:
        * WebCore.vcproj/WebCore.vcproj:
        * inspector/front-end/RawSourceCode.js: Renamed from Source/WebCore/inspector/front-end/SourceFile.js.
        (WebInspector.RawSourceCode): Moved from SourceFile.js.
        (WebInspector.UILocation): Moved from SourceFile.js.
        * inspector/front-end/UISourceCodeContentProviders.js: Added. Moved ContentProvider implementations from SourceFile.js
        (WebInspector.ScriptContentProvider):
        (WebInspector.ScriptContentProvider.prototype.requestContent):
        (WebInspector.ConcatenatedScriptsContentProvider):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype.requestContent):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype._concatenateScriptsContent.appendChunk):
        (WebInspector.ConcatenatedScriptsContentProvider.prototype._concatenateScriptsContent):
        (WebInspector.ResourceContentProvider):
        (WebInspector.ResourceContentProvider.prototype.requestContent):
        (WebInspector.StaticContentProvider):
        (WebInspector.StaticContentProvider.prototype.requestContent):
        * inspector/front-end/WebKit.qrc:
        * inspector/front-end/inspector.html:

2011-09-29  Philippe Normand  <pnormand@igalia.com>

        [GStreamer] 2 flaky media tests
        https://bugs.webkit.org/show_bug.cgi?id=67407

        Reviewed by Martin Robinson.

        Workaround for GStreamer bug#639941. In GStreamer
        0.10.35 basesink reports wrong duration in case of EOS and
        negative playback rate. This workaround fixes two media tests,
        media/video-timeupdate-reverse-play.html and
        media/video-reverse-play-duration.html.

        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
        (WebCore::MediaPlayerPrivateGStreamer::prepareToPlay):
        (WebCore::MediaPlayerPrivateGStreamer::currentTime):
        (WebCore::MediaPlayerPrivateGStreamer::didEnd):

2011-09-29  Philippe Normand  <pnormand@igalia.com>

        [GStreamer] fullscreen video pause/play fails
        https://bugs.webkit.org/show_bug.cgi?id=66936

        Reviewed by Martin Robinson.

        Don't use the identity element to avoid painting of the in-window
        video. Instead simply make the sink aware of the fullscreen state
        and ignore buffers if fullscreen and autovideosink are
        active. Also fixed two deadlocks happening when a paused pipeline
        is switched to fullscreen and when fullscreen is disabled for a
        paused pipeline.

        * platform/graphics/gstreamer/GStreamerGWorld.cpp:
        (WebCore::GStreamerGWorld::enterFullscreen):
        (WebCore::GStreamerGWorld::exitFullscreen):
        * platform/graphics/gstreamer/GStreamerGWorld.h:
        (WebCore::GStreamerGWorld::isFullscreen):
        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
        (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
        * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
        (webkit_video_sink_render):
        (webkit_video_sink_new):
        * platform/graphics/gstreamer/VideoSinkGStreamer.h:

2011-09-29  Tim Horton  <timothy_horton@apple.com>

        REGRESSION(87010): elements in ECMA-cloud neither filled nor blurred
        https://bugs.webkit.org/show_bug.cgi?id=68679
        <rdar://problem/10204649>

        Reviewed by Nikolas Zimmermann.

        Strip prefixes from SVG attributes before testing if they're supported.
        Namespaced attributes will be matched using their namespace instead of
        the (user-choosable) prefix.

        Test: svg/custom/xlink-custom-namespace.svg

        * svg/SVGAElement.cpp:
        (WebCore::SVGAElement::isSupportedAttribute):
        * svg/SVGAnimateMotionElement.cpp:
        (WebCore::SVGAnimateMotionElement::isSupportedAttribute):
        * svg/SVGAnimateTransformElement.cpp:
        (WebCore::SVGAnimateTransformElement::isSupportedAttribute):
        * svg/SVGAnimationElement.cpp:
        (WebCore::SVGAnimationElement::isSupportedAttribute):
        * svg/SVGCircleElement.cpp:
        (WebCore::SVGCircleElement::isSupportedAttribute):
        * svg/SVGClipPathElement.cpp:
        (WebCore::SVGClipPathElement::isSupportedAttribute):
        * svg/SVGComponentTransferFunctionElement.cpp:
        (WebCore::SVGComponentTransferFunctionElement::isSupportedAttribute):
        * svg/SVGCursorElement.cpp:
        (WebCore::SVGCursorElement::isSupportedAttribute):
        * svg/SVGElement.h:
        (WebCore::SVGAttributeHashTranslator::hash):
        (WebCore::SVGAttributeHashTranslator::equal):
        * svg/SVGEllipseElement.cpp:
        (WebCore::SVGEllipseElement::isSupportedAttribute):
        * svg/SVGExternalResourcesRequired.h:
        * svg/SVGFEBlendElement.cpp:
        (WebCore::SVGFEBlendElement::isSupportedAttribute):
        * svg/SVGFEColorMatrixElement.cpp:
        (WebCore::SVGFEColorMatrixElement::isSupportedAttribute):
        * svg/SVGFEComponentTransferElement.cpp:
        (WebCore::SVGFEComponentTransferElement::isSupportedAttribute):
        * svg/SVGFECompositeElement.cpp:
        (WebCore::SVGFECompositeElement::isSupportedAttribute):
        * svg/SVGFEConvolveMatrixElement.cpp:
        (WebCore::SVGFEConvolveMatrixElement::isSupportedAttribute):
        * svg/SVGFEDiffuseLightingElement.cpp:
        (WebCore::SVGFEDiffuseLightingElement::isSupportedAttribute):
        * svg/SVGFEDisplacementMapElement.cpp:
        (WebCore::SVGFEDisplacementMapElement::isSupportedAttribute):
        * svg/SVGFEDropShadowElement.cpp:
        (WebCore::SVGFEDropShadowElement::isSupportedAttribute):
        * svg/SVGFEGaussianBlurElement.cpp:
        (WebCore::SVGFEGaussianBlurElement::isSupportedAttribute):
        * svg/SVGFEImageElement.cpp:
        (WebCore::SVGFEImageElement::isSupportedAttribute):
        * svg/SVGFELightElement.cpp:
        (WebCore::SVGFELightElement::isSupportedAttribute):
        * svg/SVGFEMergeNodeElement.cpp:
        (WebCore::SVGFEMergeNodeElement::isSupportedAttribute):
        * svg/SVGFEMorphologyElement.cpp:
        (WebCore::SVGFEMorphologyElement::isSupportedAttribute):
        * svg/SVGFEOffsetElement.cpp:
        (WebCore::SVGFEOffsetElement::isSupportedAttribute):
        * svg/SVGFESpecularLightingElement.cpp:
        (WebCore::SVGFESpecularLightingElement::isSupportedAttribute):
        * svg/SVGFETileElement.cpp:
        (WebCore::SVGFETileElement::isSupportedAttribute):
        * svg/SVGFETurbulenceElement.cpp:
        (WebCore::SVGFETurbulenceElement::isSupportedAttribute):
        * svg/SVGFilterElement.cpp:
        (WebCore::SVGFilterElement::isSupportedAttribute):
        * svg/SVGFilterPrimitiveStandardAttributes.cpp:
        (WebCore::SVGFilterPrimitiveStandardAttributes::isSupportedAttribute):
        * svg/SVGForeignObjectElement.cpp:
        (WebCore::SVGForeignObjectElement::isSupportedAttribute):
        * svg/SVGGElement.cpp:
        (WebCore::SVGGElement::isSupportedAttribute):
        * svg/SVGGradientElement.cpp:
        (WebCore::SVGGradientElement::isSupportedAttribute):
        * svg/SVGImageElement.cpp:
        (WebCore::SVGImageElement::isSupportedAttribute):
        * svg/SVGLineElement.cpp:
        (WebCore::SVGLineElement::isSupportedAttribute):
        * svg/SVGLinearGradientElement.cpp:
        (WebCore::SVGLinearGradientElement::isSupportedAttribute):
        * svg/SVGMPathElement.cpp:
        (WebCore::SVGMPathElement::isSupportedAttribute):
        * svg/SVGMarkerElement.cpp:
        (WebCore::SVGMarkerElement::isSupportedAttribute):
        * svg/SVGMaskElement.cpp:
        (WebCore::SVGMaskElement::isSupportedAttribute):
        * svg/SVGPathElement.cpp:
        (WebCore::SVGPathElement::isSupportedAttribute):
        * svg/SVGPatternElement.cpp:
        (WebCore::SVGPatternElement::isSupportedAttribute):
        * svg/SVGPolyElement.cpp:
        (WebCore::SVGPolyElement::isSupportedAttribute):
        * svg/SVGRadialGradientElement.cpp:
        (WebCore::SVGRadialGradientElement::isSupportedAttribute):
        * svg/SVGRectElement.cpp:
        (WebCore::SVGRectElement::isSupportedAttribute):
        * svg/SVGScriptElement.cpp:
        (WebCore::SVGScriptElement::isSupportedAttribute):
        * svg/SVGStopElement.cpp:
        (WebCore::SVGStopElement::isSupportedAttribute):
        * svg/SVGStyleElement.cpp:
        (WebCore::SVGStyleElement::isSupportedAttribute):
        * svg/SVGStyledTransformableElement.cpp:
        (WebCore::SVGStyledTransformableElement::isSupportedAttribute):
        * svg/SVGSymbolElement.cpp:
        (WebCore::SVGSymbolElement::isSupportedAttribute):
        * svg/SVGTRefElement.cpp:
        (WebCore::SVGTRefElement::isSupportedAttribute):
        * svg/SVGTextContentElement.cpp:
        (WebCore::SVGTextContentElement::isSupportedAttribute):
        * svg/SVGTextElement.cpp:
        (WebCore::SVGTextElement::isSupportedAttribute):
        * svg/SVGTextPathElement.cpp:
        (WebCore::SVGTextPathElement::isSupportedAttribute):
        * svg/SVGTextPositioningElement.cpp:
        (WebCore::SVGTextPositioningElement::isSupportedAttribute):
        * svg/SVGURIReference.cpp:
        (WebCore::SVGURIReference::addSupportedAttributes):
        * svg/SVGUseElement.cpp:
        (WebCore::SVGUseElement::isSupportedAttribute):
        * svg/SVGViewElement.cpp:
        (WebCore::SVGViewElement::isSupportedAttribute):

2011-09-28  Kentaro Hara  <haraken@chromium.org>

        "ScriptValue" arguments of PopStateEvent methods should be "const ScriptValue&"
        https://bugs.webkit.org/show_bug.cgi?id=68984

        Reviewed by Darin Adler.

        Just a follow-up fix for the bug 68345. For performance,
        "ScriptValue" arguments of PopStateEvent methods should be "const ScriptValue&".

        Tests: fast/events/constructors/pop-state-event-constructor.html
               fast/events/fire-popstate-event.html

        * dom/PopStateEvent.cpp:
        (WebCore::PopStateEvent::PopStateEvent):
        (WebCore::PopStateEvent::create):
        (WebCore::PopStateEvent::initPopStateEvent):
        * dom/PopStateEvent.h:

2011-09-28  Martin Robinson  <mrobinson@igalia.com>

        [GTK] Move drag-and-drop code which can be shared with WebKit2 to WebCore
        https://bugs.webkit.org/show_bug.cgi?id=66890

        Added a GtkDragAndDropHelper class to hold all the logic that is common
        between WebKit1 and WebKit2. This will allow greater code sharing between
        the two ports.

        Reviewed by Philippe Normand.

        No new tests. This patch should not change behavior.

        * GNUmakefile.list.am: Added the GtkDragAndDropHelper to the sources list.
        * platform/gtk/GtkDragAndDropHelper.cpp: Added.
        * platform/gtk/GtkDragAndDropHelper.h: Added.

2011-09-28  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/10196497> first-letter after list marker not updated correctly

        Reviewed by Simon Fraser.

        Test: fast/dynamic/first-letter-after-list-marker.html

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::updateFirstLetter): Improved the logic for continuing past list markers
        when trying to locate a first letter to update.

2011-09-28  Kent Tamura  <tkent@chromium.org>

        REGRESSION(r93858): Can't type anything into input elements when maxlength is greater than 2^31
        https://bugs.webkit.org/show_bug.cgi?id=68981

        Reviewed by Darin Adler.

        * html/parser/HTMLParserIdioms.cpp:
        (WebCore::parseHTMLInteger):
        Check the failure of charactersToIntStrict().
        (WebCore::parseHTMLNonNegativeInteger):
        Check the failure of charactersToUIntStrict().

2011-09-28  Antoine Labour  <piman@chromium.org>

        Remove unused createRootLayerPainter from CCLayerTreeHostClient
        https://bugs.webkit.org/show_bug.cgi?id=69042

        Reviewed by James Robinson.

        No new test needed: no semantic change.

        * platform/graphics/chromium/cc/CCLayerTreeHost.h:

2011-09-28  Luke Macpherson   <macpherson@chromium.org>

        Only resolve direction aware properties when properties are direction aware.
        https://bugs.webkit.org/show_bug.cgi?id=68968

        Reviewed by Eric Seidel.

        No new tests / no functionality changed.

        Profiling showed a ~8% improvement in applyProperty by not calling resolveDirectionAwareProperty for every property.

        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):

2011-09-28  Simon Fraser  <simon.fraser@apple.com>

        fast/dom/scroll-element-to-rect.html fails on WK1 Mac port
        https://bugs.webkit.org/show_bug.cgi?id=68815

        Reviewed by Dan Bernstein.
        
        FrameView::scrollElementToRect() was incorrectly using Element::boundsInWindowSpace(),
        which is window-relative (not web view-relative), and has flipped coordinates
        in WebKit1.
        
        Change to use Node::getRect() which is what the author intended.

        * dom/Element.h:
        * page/FrameView.cpp:
        (WebCore::FrameView::scrollElementToRect):

2011-09-28  Peter Beverloo  <peter@chromium.org>

        Don't clamp cubic-bezier timing functions between 0 and 1
        https://bugs.webkit.org/show_bug.cgi?id=45761

        Remove the limitation of clamping the cubic-bezier timing function
        values between 0 and 1, following the specification change made on
        April 5 of this year.

        Reviewed by Dean Jackson.

        Tests: transitions/cubic-bezier-overflow-color.html
               transitions/cubic-bezier-overflow-length.html
               transitions/cubic-bezier-overflow-shadow.html
               transitions/cubic-bezier-overflow-svg-length.html
               transitions/cubic-bezier-overflow-transform.html

        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseCubicBezierTimingFunctionValue):

2011-09-28  Chris Rogers  <crogers@google.com>

        DelayNode must set the context on delayTime AudioParam to support automation
        https://bugs.webkit.org/show_bug.cgi?id=68828

        Reviewed by Kenneth Russell.

        Test: webaudio/delaynode-scheduling.html

        * webaudio/DelayNode.cpp:
        (WebCore::DelayNode::DelayNode):

2011-09-28  Sergey Glazunov  <serg.glazunov@gmail.com>

        JavaScript generated documents don't inherit the cookie URL
        https://bugs.webkit.org/show_bug.cgi?id=69003

        Reviewed by Adam Barth.

        Test: http/tests/security/cookies/cookie-theft-with-javascript-doc.html

        * dom/Document.h:
        (WebCore::Document::setCookieURL):
        * loader/DocumentWriter.cpp:
        (WebCore::DocumentWriter::replaceDocument):
        (WebCore::DocumentWriter::begin):
        * loader/DocumentWriter.h:

2011-09-27  Dimitri Glazkov  <dglazkov@chromium.org>

        REGRESSION(r95573): Crash when loading SVG documents in a flattened frame or any SVG document in Chromium/Mac.
        https://bugs.webkit.org/show_bug.cgi?id=68938

        Reviewed by David Hyatt.

        Test: all svg tests in LayoutTests.

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::computeBlockPreferredLogicalWidths): Added a null-check for containingBlock.

2011-09-28  Una Sabovic  <una.sabovic@palm.com>

        Setting innerText to an empty string on editable div loses focus
        https://bugs.webkit.org/show_bug.cgi?id=62092

        Reviewed by Ryosuke Niwa.

        When selection start or end node is being deleted do not clear the selection.
        Instead update the start/end position to an equivalent parent-anchored positions.
        When text is inserted/deleted update selection per range modification spec:
        http://www.w3.org/TR/DOM-Level-2-Traversal-Range/ranges.html#Level-2-Range-Mutation

        Tests: editing/selection/document-mutation.html
               editing/selection/editable-div-clear-on-keydown.html

        * editing/FrameSelection.cpp:
        (WebCore::FrameSelection::respondToNodeModification):
        (WebCore::updatePositionAfterAdoptingTextReplacement):
        (WebCore::FrameSelection::textWillBeReplaced):
        * editing/htmlediting.cpp:
        (WebCore::updatePositionForNodeRemoval):

2011-09-28  Joseph Pecoraro  <joepeck@webkit.org>

        FTPDirectoryDocument Shows Garbled String for Last Modified Date
        https://bugs.webkit.org/show_bug.cgi?id=69011

        Reviewed by Dan Bernstein.

        Force WTF::String concatenation instead of an accidental char* pointer addition.

        * html/FTPDirectoryDocument.cpp:
        (WebCore::processFileDateString):

2011-09-28  Nate Chapin  <japhet@chromium.org>

        Fix a regression in r96060. ResourceLoader shouldn't get
        initialized with a null DocumentLoader.
        https://bugs.webkit.org/show_bug.cgi?id=69004

        Reviewed by Csaba Osztrogonác.

        This should fix a debug crash in some platforms in
        plugins/js-from-destroy.html

        * loader/ResourceLoader.cpp:
        (WebCore::ResourceLoader::init): Move the activeDocumentLoader() null checks back
            to SubresouceLoader::create().
        * loader/SubresourceLoader.cpp:
        (WebCore::SubresourceLoader::create):

2011-09-28  Adam Barth  <abarth@webkit.org>

        CSP doesn't work for a wide variety of cases
        https://bugs.webkit.org/show_bug.cgi?id=68921

        Reviewed by Darin Adler.

        Patch suggested by Sam Weinig.  It's unclear to me how to test this
        change because all our tests run on non-default ports, which is why we
        have this bug in the first place.  Mozilla uses a proxy while testing
        so they can test with URLs like http://example.com, but we don't have
        such a facility.

        * page/ContentSecurityPolicy.cpp:
        (WebCore::CSPSource::portMatches):

2011-09-28  Fady Samuel  <fsamuel@chromium.org>

        [Chromium] Seperate GTK specific Gyp rules from X11 Gyp rules
        https://bugs.webkit.org/show_bug.cgi?id=68936

        Reviewed by Tony Chang.

        Chromium need to be built without Gtk for future version of ChromiumOS.

        * WebCore.gyp/WebCore.gyp:

2011-09-28  Tom Sepez  <tsepez@chromium.org>

        Revert change which broke displaying end script tags in view-source, instead
        deal with any trailing </script> tag included by mistake in the XSSAuditor
        itself.  Correct tests to detect the missing close tags.
        https://bugs.webkit.org/show_bug.cgi?id=68898

        Reviewed by Adam Barth.

        * html/parser/HTMLSourceTracker.cpp:
        (WebCore::HTMLSourceTracker::end):
        * html/parser/HTMLTokenizer.cpp:
        (WebCore::HTMLTokenizer::nextToken):
        * html/parser/XSSAuditor.cpp:
        (WebCore::startsHTMLEndTagAt):
        (WebCore::XSSAuditor::snippetForJavaScript):

2011-09-28  Adam Barth  <abarth@webkit.org>

        Remove empty directories.

        * editing/brew: Removed.
        * page/brew: Removed.
        * platform/brew: Removed.
        * platform/graphics/brew: Removed.
        * platform/network/brew: Removed.
        * platform/text/brew: Removed.

2011-09-28  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: optional arguments support for the frontend needs to be extended.
        https://bugs.webkit.org/show_bug.cgi?id=69005

        Generator supports optional arguments but they are transferred by value.
        It is not suitable if the used type doesn't have operator bool.
        I'll transfer such arguments by pointer.

        Reviewed by Pavel Feldman.

        Build is the test.

        * inspector/CodeGeneratorInspector.pm:
        (generateFrontendFunction):
        (paramTypeTraits):
        * inspector/InspectorDebuggerAgent.cpp:
        (WebCore::InspectorDebuggerAgent::didParseSource):
        * inspector/InspectorResourceAgent.cpp:
        (WebCore::InspectorResourceAgent::didFailLoading):

2011-09-28  Antaryami Pandia  <antaryami.pandia@motorola.com>

        Reflected attribute input.size wraps on negative values (Chrome), or
        returns them (Safari).
        https://bugs.webkit.org/show_bug.cgi?id=44886

        Reviewed by Darin Adler.

        Test: fast/dom/HTMLInputElement/input-size-attribute.html

        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::parseMappedAttribute):

2011-09-28  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Add support for search in single resource to page agent.
        https://bugs.webkit.org/show_bug.cgi?id=68998

        Reviewed by Pavel Feldman.

        Test: http/tests/inspector/search/search-in-resource.html

        * inspector/ContentSearchUtils.cpp:
        (WebCore::ContentSearchUtils::getRegularExpressionMatchesByLines):
        * inspector/ContentSearchUtils.h:
        * inspector/Inspector.json:
        * inspector/InspectorPageAgent.cpp:
        (WebCore::buildObjectForSearchMatch):
        (WebCore::InspectorPageAgent::searchInResource):
        * inspector/InspectorPageAgent.h:
        * inspector/front-end/Resource.js:
        (WebInspector.Resource.prototype.searchInContent):
        * inspector/front-end/SourceFile.js:
        (WebInspector.ResourceContentProvider.prototype.requestContent):
        (WebInspector.ResourceContentProvider.prototype.searchInContent):
        * inspector/front-end/UISourceCode.js:
        (WebInspector.ContentProvider.prototype.requestContent):
        (WebInspector.ContentProvider.prototype.searchInContent):

2011-09-28  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: It'd be useful to have performance stats for the back-end to front-end communication channel.
        https://bugs.webkit.org/show_bug.cgi?id=69002

        Reviewed by Yury Semikhatsky.

        * inspector/CodeGeneratorInspector.pm:

2011-09-27  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: live edit cursor always appears at the beginning of the file.
        https://bugs.webkit.org/show_bug.cgi?id=68900

        Reviewed by Pavel Feldman.

        * inspector/front-end/TextViewer.js:
        (WebInspector.TextEditorMainPanel.prototype._updateSelectionOnStartEditing):

2011-09-28  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Refactor searching in inspector, add test (fixed non regex search).
        https://bugs.webkit.org/show_bug.cgi?id=68930

        Reviewed by Yury Semikhatsky.

        Search moved out from page agent.
        Fixed search for non regex case which is not yet used.

        Test: http/tests/inspector/search/search-in-resources.html

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * inspector/ContentSearchUtils.cpp: Added.
        (WebCore::ContentSearchUtils::createSearchRegexSource):
        (WebCore::ContentSearchUtils::createSearchRegex):
        (WebCore::ContentSearchUtils::countRegularExpressionMatches):
        * inspector/ContentSearchUtils.h: Added.
        * inspector/InspectorPageAgent.cpp:
        (WebCore::hasTextContent):
        (WebCore::InspectorPageAgent::cachedResourceContent):
        (WebCore::textContentForCachedResource):
        (WebCore::buildObjectForSearchResult):
        (WebCore::InspectorPageAgent::searchInResources):
        * inspector/front-end/utilities.js:
        ():

2011-09-28  Kentaro Hara  <haraken@chromium.org>

        Implement a PopStateEvent constructor for V8
        https://bugs.webkit.org/show_bug.cgi?id=68896

        Reviewed by Adam Barth.

        Test: fast/events/constructors/pop-state-event-constructor.html

        * bindings/v8/custom/V8EventConstructors.cpp: Added a PopStateEvent constructor.
        * dom/PopStateEvent.idl: Added a 'V8CustomConstructor' attribute.

2011-09-28  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Texmap] Allow TextureMapperGL to work without a GraphicsContext
        https://bugs.webkit.org/show_bug.cgi?id=68980

        Reviewed by Andreas Kling.

        Perform a null-check for m_context and initialize that variable.
        If a graphics-context doesn't exist, we don't need to reset it.

        No new functionality so no new tests.

        * platform/graphics/opengl/TextureMapperGL.cpp:
        (WebCore::TextureMapperGL::TextureMapperGL):
        (WebCore::TextureMapperGL::beginPainting):
        (WebCore::TextureMapperGL::endPainting):

2011-09-28  Kentaro Hara  <haraken@chromium.org>

        Implement an ErrorEvent constructor for V8
        https://bugs.webkit.org/show_bug.cgi?id=68336

        Reviewed by Adam Barth.

        Test: fast/events/constructors/error-event-constructor.html

        * bindings/v8/OptionsObject.cpp:
        (WebCore::OptionsObject::getKeyValue): Returns an unsigned value corresponding to a given key.
        * bindings/v8/OptionsObject.h:
        * bindings/v8/custom/V8EventConstructors.cpp: Added the ErrorEvent constructor.
        * dom/ErrorEvent.idl: Added a 'V8CustomConstructor' attribute.

2011-09-27  Andy Estes  <aestes@apple.com>

        WebKitLinkedOnOrAfter() check is ineffective for Solar Walk app-specific hack.
        https://bugs.webkit.org/show_bug.cgi?id=68863

        Reviewed by Darin Adler.

        The SolarWalk binary does not link against WebKit.framework directly,
        so calling NSVersionOfLinkTimeLibrary() will not return the version of
        WebKit against which SolarWalk was linked. Since Solar Walk has
        released an update that addresses the issue for which this app-specific
        hack was originally added, we should just remove the hack.

        * WebCore.exp.in: Remove applicationIsSolarWalkMac().
        * platform/RuntimeApplicationChecks.cpp: Ditto.
        * platform/RuntimeApplicationChecks.h: Ditto.

2011-09-28  Tim Horton  <timothy_horton@apple.com>

        Fix potential SVG performance regression (over-invalidation of caches) from 96052
        https://bugs.webkit.org/show_bug.cgi?id=68941
        <rdar://problem/10196224>

        Reviewed by Zoltan Herczeg.

        Only invalidate the cache of a filter when target style changes, as of the different types of cached
        resources, only filters make use of the style of the target element and thus need to be invalidated
        when the target style changes.

        No new tests, performance improvement.

        * rendering/svg/SVGResourcesCache.cpp:
        (WebCore::SVGResourcesCache::clientUpdatedFromElement):

2011-09-28  Adenilson Cavalcanti  <adenilson.silva@openbossa.org>

        Missing initialization of member in ImageFrameQt class
        https://bugs.webkit.org/show_bug.cgi?id=68943

        Reviewed by Kenneth Rohde Christiansen.

        No new tests, this fixes internal implementation detail.

        * platform/image-decoders/qt/ImageFrameQt.cpp:
        (WebCore::ImageFrame::ImageFrame):
        (WebCore::ImageFrame::operator=):

2011-09-27  Luke Macpherson   <macpherson@chromium.org>

        Defer call to CSSValue::isPrimitiveValue(), saves ~4% in CSSStyleSelector::applyProperty().
        https://bugs.webkit.org/show_bug.cgi?id=68964

        Reviewed by Eric Seidel.

        No new tests / no functionality changed.

        Doing value->isPrimitiveValue() is relatviely expensive, so moving it after the early returns but
        before the result is used saves a significant number of cycles. (Tested with Shark profiler in Safari).

        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):

2011-09-27  Ryosuke Niwa  <rniwa@webkit.org>

        Simplify ReplaceSelectionCommand::positionAtStartOfInsertedContent
        https://bugs.webkit.org/show_bug.cgi?id=68939

        Reviewed by Darin Adler.

        Simplified ReplaceSelectionCommand::positionAtStartOfInsertedContent.

        This change revealed a bug in removeUnrenderedTextNodesAtEnds that text nodes without any visible
        text at ends are not removed when it has a render object. Fixed the bug by checking the length of
        the rendered text. (Tested by editing/pasteboard/pasting-word-in-div-extra-line.html)

        This further revealed that caretMaxRenderedOffset doesn't return an offset and caretMaxRenderedOffset
        on InlineBox, InlineTextBox, RenderObject, RenderBR, RenderPlaced are never called. To address this
        issue, renamed caretMaxRenderedOffset to renderedTextLength for RenderText and removed the rest.

        * dom/Position.cpp:
        (WebCore::Position::rendersInDifferentPosition):
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::nodeHasVisibleRenderText): Added.
        (WebCore::ReplaceSelectionCommand::removeUnrenderedTextNodesAtEnds): Calls nodeHasVisibleRenderText.
        (WebCore::ReplaceSelectionCommand::positionAtStartOfInsertedContent): Simplified.
        * editing/visible_units.cpp:
        (WebCore::startOfParagraph): Calls renderedTextLength.
        (WebCore::endOfParagraph): Ditto.
        * rendering/InlineBox.cpp: Removed caretMaxRenderedOffset.
        * rendering/InlineBox.h: Ditto.
        * rendering/InlineTextBox.cpp: Ditto.
        * rendering/InlineTextBox.h: Ditto.
        * rendering/RenderBR.cpp: Ditto.
        * rendering/RenderBR.h: Ditto.
        * rendering/RenderObject.cpp: Ditto.
        * rendering/RenderObject.h: Ditto.
        * rendering/RenderReplaced.cpp: Ditto.
        * rendering/RenderReplaced.h: Ditto.
        * rendering/RenderText.cpp:
        (WebCore::RenderText::renderedTextLength): Renamed from caretMaxRenderedOffset.
        * rendering/RenderText.h:

2011-09-27  James Robinson  <jamesr@chromium.org>

        [chromium] LayerRenderChromium asserts about leaking textures.
        https://bugs.webkit.org/show_bug.cgi?id=68190

        Reviewed by Kenneth Russell.

        This introduces an interface TextureAllocator that the TextureManager uses to allocate/deallocate textures.
        This means that TextureManager does not need to depend directly on GraphicsContext3D, other than for the format
        enum type, making it more testable.  It also allows us to track the allocations by subclassing TextureAllocator
        to make sure we aren't leaking any textures.

        * WebCore.gypi:
        * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
        (WebCore::Canvas2DLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/Canvas2DLayerChromium.h:
        * platform/graphics/chromium/ImageLayerChromium.cpp:
        (WebCore::ImageLayerTextureUpdater::updateTextureRect):
        * platform/graphics/chromium/LayerChromium.h:
        (WebCore::LayerChromium::updateCompositorResources):
        * platform/graphics/chromium/LayerRendererChromium.cpp:
        (WebCore::LayerRendererChromium::LayerRendererChromium):
        (WebCore::LayerRendererChromium::releaseRenderSurfaceTextures):
        (WebCore::LayerRendererChromium::drawLayers):
        (WebCore::LayerRendererChromium::useRenderSurface):
        (WebCore::LayerRendererChromium::initializeSharedObjects):
        (WebCore::LayerRendererChromium::cleanupSharedObjects):
        * platform/graphics/chromium/LayerRendererChromium.h:
        (WebCore::LayerRendererChromium::renderSurfaceTextureAllocator):
        (WebCore::LayerRendererChromium::contentsTextureAllocator):
        * platform/graphics/chromium/LayerTextureUpdater.h:
        * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
        (WebCore::LayerTextureUpdaterBitmap::updateTextureRect):
        (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
        * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
        * platform/graphics/chromium/ManagedTexture.cpp:
        (WebCore::ManagedTexture::bindTexture):
        (WebCore::ManagedTexture::framebufferTexture2D):
        * platform/graphics/chromium/ManagedTexture.h:
        * platform/graphics/chromium/TextureManager.cpp:
        (WebCore::TextureManager::memoryUseBytes):
        (WebCore::TextureManager::deleteEvictedTextures):
        (WebCore::TextureManager::evictAndDeleteAllTextures):
        (WebCore::TextureManager::removeTexture):
        (WebCore::TextureManager::allocateTexture):
        (WebCore::TextureManager::requestTexture):
        * platform/graphics/chromium/TextureManager.h:
        (WebCore::TextureAllocator::~TextureAllocator):
        * platform/graphics/chromium/TiledLayerChromium.cpp:
        (WebCore::TiledLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/TiledLayerChromium.h:
        * platform/graphics/chromium/TrackingTextureAllocator.cpp: Added.
        (WebCore::TrackingTextureAllocator::TrackingTextureAllocator):
        (WebCore::TrackingTextureAllocator::~TrackingTextureAllocator):
        (WebCore::TrackingTextureAllocator::createTexture):
        (WebCore::TrackingTextureAllocator::deleteTexture):
        * platform/graphics/chromium/TrackingTextureAllocator.h: Copied from Source/WebCore/platform/graphics/chromium/ManagedTexture.h.
        (WebCore::TrackingTextureAllocator::create):
        (WebCore::TrackingTextureAllocator::currentMemoryUseBytes):
        * platform/graphics/chromium/VideoLayerChromium.cpp:
        (WebCore::VideoLayerChromium::updateCompositorResources):
        (WebCore::VideoLayerChromium::updateTexture):
        * platform/graphics/chromium/VideoLayerChromium.h:
        * platform/graphics/chromium/WebGLLayerChromium.cpp:
        (WebCore::WebGLLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/WebGLLayerChromium.h:
        * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
        (WebCore::CCHeadsUpDisplay::draw):
        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
        (WebCore::CCLayerTreeHost::~CCLayerTreeHost):
        (WebCore::CCLayerTreeHost::deleteContentsTexturesOnCCThread):
        (WebCore::CCLayerTreeHost::commitToOnCCThread):
        (WebCore::CCLayerTreeHost::didRecreateGraphicsContext):
        (WebCore::CCLayerTreeHost::updateCompositorResources):
        * platform/graphics/chromium/cc/CCLayerTreeHost.h:
        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
        (WebCore::CCLayerTreeHostImpl::contentsTextureAllocator):
        (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
        * platform/graphics/chromium/cc/CCRenderSurface.cpp:
        (WebCore::CCRenderSurface::drawSurface):
        * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
        (WebCore::CCSingleThreadProxy::setNeedsCommit):
        (WebCore::CCSingleThreadProxy::stop):
        (WebCore::CCSingleThreadProxy::recreateContextIfNeeded):
        (WebCore::CCSingleThreadProxy::commitIfNeeded):
        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
        (WebCore::CCThreadProxy::commitOnCCThread):
        (WebCore::CCThreadProxy::layerTreeHostClosedOnCCThread):
2011-09-27  James Robinson  <jamesr@chromium.org>

        [chromium] Only initiate the beginFrameAndCommit sequence if a commit has been requested
        https://bugs.webkit.org/show_bug.cgi?id=68967

        Reviewed by Kenneth Russell.

        When updating the scheduler state, we should only initiate a new commit flow if a commit has been requested (as
        opposed to only a redraw).

        Covered by the unit test CCLayerTreeHostTestSetNeedsRedraw with USE(THREADED_COMPOSITING) set to true.

        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
        (WebCore::CCThreadProxy::updateSchedulerStateOnCCThread):

2011-09-27  Kentaro Hara  <haraken@chromium.com>

        Implement a PageTransitionEvent constructor for V8
        https://bugs.webkit.org/show_bug.cgi?id=68067

        Reviewed by Adam Barth.

        Test: fast/events/constructors/page-transition-event-constructor.html

        * bindings/v8/custom/V8EventConstructors.cpp: Added the PageTransitionEvent constructor.
        * dom/PageTransitionEvent.idl: Added a 'V8CustomConstructor' attribute.

2011-09-27  Kentaro Hara  <haraken@chromium.org>

        Implement a MessageEvent constructor for JSC
        https://bugs.webkit.org/show_bug.cgi?id=68883

        Reviewed by Adam Barth.

        The spec for MessageEvent is here:
        http://www.whatwg.org/specs/web-apps/current-work/#messageevent

        Currently, some tests in fast/events/constructors/message-event-constructor.html
        are failing or crashing in DRT, as we commented in the test file.
        This is because MessageEvent.data is implemented as SerializedScriptValue,
        and thus it cannot keep ScriptValue passed by JavaScript.
        This is the same issue as the bug (https://bugs.webkit.org/show_bug.cgi?id=68345).
        We will soon make a follow-up patch to fix these failures, after this
        patch is landed.

        Test: fast/events/constructors/message-event-constructor.html

        * bindings/generic/EventConstructors.h: Added a definition for the MessageEvent constructor.
        * bindings/js/JSDictionary.cpp:
        (WebCore::JSDictionary::convertValue): Generates MessagePortArray from the list of message ports in the format of JSValues.
        * bindings/js/JSDictionary.h:
        * bindings/js/JSEventConstructors.cpp: Added #includes for MessageEvent.
        * dom/MessageEvent.cpp:
        (WebCore::MessageEventInit::MessageEventInit):
        (WebCore::MessageEvent::MessageEvent):
        (WebCore::MessageEvent::initMessageEvent):
        * dom/MessageEvent.h: Added a definition for MessageEvent. Removed an extra leading spaces.
        (WebCore::MessageEvent::create):
        (WebCore::MessageEvent::origin):
        (WebCore::MessageEvent::lastEventId):
        (WebCore::MessageEvent::source):
        (WebCore::MessageEvent::ports):
        (WebCore::MessageEvent::dataType):
        (WebCore::MessageEvent::dataAsSerializedScriptValue):
        (WebCore::MessageEvent::dataAsString):
        (WebCore::MessageEvent::dataAsBlob):
        (WebCore::MessageEvent::dataAsArrayBuffer):
        * dom/MessageEvent.idl: Makes MessageEvent constructible.

2011-09-27  Eric Uhrhane  <ericu@chromium.org>

        [Chromium/FileWriter] race condition in FileWriter completion can lead to assert
        https://bugs.webkit.org/show_bug.cgi?id=67684

        Reviewed by David Levin.

        Tests: fast/filesystem/file-writer-abort-continue.html
               fast/filesystem/file-writer-abort.html

        Track the state of the backend and be prepared for reentrant user
        requests.  Limit recursion depth to an arbitrary small constant.
        * fileapi/FileWriter.cpp: Lots of event-handling changes.
        * fileapi/FileWriter.h:

2011-09-27  Mihai Parparita  <mihaip@chromium.org>

        Unreviewed, rolling out r96141.
        http://trac.webkit.org/changeset/96141
        https://bugs.webkit.org/show_bug.cgi?id=68190

        Breaks PrerenderBrowserTest.PrerenderHTML5Video in
        browser_tests

        * WebCore.gypi:
        * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
        (WebCore::Canvas2DLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/Canvas2DLayerChromium.h:
        * platform/graphics/chromium/ImageLayerChromium.cpp:
        (WebCore::ImageLayerTextureUpdater::updateTextureRect):
        * platform/graphics/chromium/LayerChromium.h:
        (WebCore::LayerChromium::updateCompositorResources):
        * platform/graphics/chromium/LayerRendererChromium.cpp:
        (WebCore::LayerRendererChromium::LayerRendererChromium):
        (WebCore::LayerRendererChromium::releaseRenderSurfaceTextures):
        (WebCore::LayerRendererChromium::drawLayers):
        (WebCore::LayerRendererChromium::createLayerTexture):
        (WebCore::LayerRendererChromium::deleteLayerTexture):
        (WebCore::LayerRendererChromium::useRenderSurface):
        (WebCore::LayerRendererChromium::initializeSharedObjects):
        (WebCore::LayerRendererChromium::cleanupSharedObjects):
        * platform/graphics/chromium/LayerRendererChromium.h:
        (WebCore::LayerRendererChromium::setContentsTextureMemoryUseBytes):
        * platform/graphics/chromium/LayerTextureUpdater.h:
        * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
        (WebCore::LayerTextureUpdaterBitmap::updateTextureRect):
        (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
        * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
        * platform/graphics/chromium/ManagedTexture.cpp:
        (WebCore::ManagedTexture::bindTexture):
        (WebCore::ManagedTexture::framebufferTexture2D):
        * platform/graphics/chromium/ManagedTexture.h:
        * platform/graphics/chromium/TextureManager.cpp:
        (WebCore::memoryUseBytes):
        (WebCore::TextureManager::deleteEvictedTextures):
        (WebCore::TextureManager::evictAndDeleteAllTextures):
        (WebCore::TextureManager::removeTexture):
        (WebCore::TextureManager::allocateTexture):
        (WebCore::TextureManager::requestTexture):
        * platform/graphics/chromium/TextureManager.h:
        * platform/graphics/chromium/TiledLayerChromium.cpp:
        (WebCore::TiledLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/TiledLayerChromium.h:
        * platform/graphics/chromium/TrackingTextureAllocator.cpp: Removed.
        * platform/graphics/chromium/TrackingTextureAllocator.h: Removed.
        * platform/graphics/chromium/VideoLayerChromium.cpp:
        (WebCore::VideoLayerChromium::updateCompositorResources):
        (WebCore::VideoLayerChromium::updateTexture):
        * platform/graphics/chromium/VideoLayerChromium.h:
        * platform/graphics/chromium/WebGLLayerChromium.cpp:
        (WebCore::WebGLLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/WebGLLayerChromium.h:
        * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
        (WebCore::CCHeadsUpDisplay::draw):
        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
        (WebCore::CCLayerTreeHost::~CCLayerTreeHost):
        (WebCore::CCLayerTreeHost::deleteContentsTextures):
        (WebCore::CCLayerTreeHost::commitTo):
        (WebCore::CCLayerTreeHost::didRecreateGraphicsContext):
        (WebCore::CCLayerTreeHost::updateCompositorResources):
        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp.rej: Removed.
        * platform/graphics/chromium/cc/CCLayerTreeHost.h:
        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
        (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
        * platform/graphics/chromium/cc/CCRenderSurface.cpp:
        (WebCore::CCRenderSurface::drawSurface):
        * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
        (WebCore::CCSingleThreadProxy::setNeedsCommit):
        (WebCore::CCSingleThreadProxy::stop):
        (WebCore::CCSingleThreadProxy::recreateContextIfNeeded):
        (WebCore::CCSingleThreadProxy::commitIfNeeded):
        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
        (WebCore::CCThreadProxy::commitOnCCThread):
        (WebCore::CCThreadProxy::layerTreeHostClosedOnCCThread):

2011-09-27  James Robinson  <jamesr@chromium.org>

        [chromium] Guard accelerated skia drawing logic with its own define to remove dependency on USE(THREADED_COMPOSITING)
        https://bugs.webkit.org/show_bug.cgi?id=68953

        Reviewed by Kenneth Russell.

        The accelerated drawing code is incompatible with threaded compositing. Rather than tying the two behaviors
        together via USE(THREADED_COMPOSITING), this patch guards the accelerated drawing code with its own USE() guard
        so the features can advance independently. Today, it's not safe to set both of these flags.

        * platform/graphics/chromium/ContentLayerChromium.cpp:
        (WebCore::ContentLayerChromium::createTextureUpdater):
        * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
        * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:

2011-09-27  Luke Macpherson   <macpherson@chromium.org>

        Slightly improve performance of CSSStyleApplyProperty handler lookup.
        https://bugs.webkit.org/show_bug.cgi?id=68868

        Reviewed by Eric Seidel.

        No new tests as no functionality changed.

        * css/CSSStyleApplyProperty.h:
        (WebCore::CSSStyleApplyProperty::propertyHandler):
        Make propertyHandler() public and remove redirecting functions.
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):
        Perform property handler lookup once and reuse the result.

2011-09-27  Kent Tamura  <tkent@chromium.org>

        [V8] element.dataset.nonExistingKey should return undefined.
        https://bugs.webkit.org/show_bug.cgi?id=68877

        Reviewed by Nate Chapin.

        * bindings/v8/custom/V8DOMStringMapCustom.cpp:
        (WebCore::V8DOMStringMap::namedPropertyGetter): Uses v8StringOrUndefined() instead of v8String().

2011-09-23  Mark Hahnenberg  <mhahnenberg@apple.com>

        Add static version of JSCell::visitChildren
        https://bugs.webkit.org/show_bug.cgi?id=68404

        Reviewed by Darin Adler.

        No new tests.

        In this patch we just extract the bodies of the virtual visitChildren methods
        throughout the JSCell inheritance hierarchy out into static methods, which are 
        now called from the virtual methods.  This is an intermediate step in trying to 
        move the virtual-ness of visitChildren into our own custom vtable stored in 
        ClassInfo.  We need to convert the methods to static methods in order to be 
        able to more easily store and refer to them in our custom vtable since normal 
        member methods store some implicit information in their types, making it 
        impossible to store them generically in ClassInfo.

        * WebCore.exp.in:
        * bindings/js/JSAttrCustom.cpp:
        (WebCore::JSAttr::visitChildrenVirtual):
        (WebCore::JSAttr::visitChildren):
        * bindings/js/JSAudioContextCustom.cpp:
        (WebCore::JSAudioContext::visitChildrenVirtual):
        (WebCore::JSAudioContext::visitChildren):
        * bindings/js/JSCSSRuleCustom.cpp:
        (WebCore::JSCSSRule::visitChildrenVirtual):
        (WebCore::JSCSSRule::visitChildren):
        * bindings/js/JSCSSStyleDeclarationCustom.cpp:
        (WebCore::JSCSSStyleDeclaration::visitChildrenVirtual):
        (WebCore::JSCSSStyleDeclaration::visitChildren):
        * bindings/js/JSCanvasRenderingContextCustom.cpp:
        (WebCore::JSCanvasRenderingContext::visitChildrenVirtual):
        (WebCore::JSCanvasRenderingContext::visitChildren):
        * bindings/js/JSDOMGlobalObject.cpp:
        (WebCore::JSDOMGlobalObject::visitChildrenVirtual):
        (WebCore::JSDOMGlobalObject::visitChildren):
        * bindings/js/JSDOMGlobalObject.h:
        * bindings/js/JSDOMWindowCustom.cpp:
        (WebCore::JSDOMWindow::visitChildrenVirtual):
        (WebCore::JSDOMWindow::visitChildren):
        * bindings/js/JSDOMWindowShell.cpp:
        (WebCore::JSDOMWindowShell::visitChildrenVirtual):
        (WebCore::JSDOMWindowShell::visitChildren):
        * bindings/js/JSDOMWindowShell.h:
        * bindings/js/JSJavaScriptAudioNodeCustom.cpp:
        (WebCore::JSJavaScriptAudioNode::visitChildrenVirtual):
        (WebCore::JSJavaScriptAudioNode::visitChildren):
        * bindings/js/JSMessageChannelCustom.cpp:
        (WebCore::JSMessageChannel::visitChildrenVirtual):
        (WebCore::JSMessageChannel::visitChildren):
        * bindings/js/JSMessagePortCustom.cpp:
        (WebCore::JSMessagePort::visitChildrenVirtual):
        (WebCore::JSMessagePort::visitChildren):
        * bindings/js/JSNamedNodeMapCustom.cpp:
        (WebCore::JSNamedNodeMap::visitChildrenVirtual):
        (WebCore::JSNamedNodeMap::visitChildren):
        * bindings/js/JSNodeCustom.cpp:
        (WebCore::JSNode::visitChildrenVirtual):
        (WebCore::JSNode::visitChildren):
        * bindings/js/JSNodeFilterCustom.cpp:
        (WebCore::JSNodeFilter::visitChildrenVirtual):
        (WebCore::JSNodeFilter::visitChildren):
        * bindings/js/JSNodeIteratorCustom.cpp:
        (WebCore::JSNodeIterator::visitChildrenVirtual):
        (WebCore::JSNodeIterator::visitChildren):
        * bindings/js/JSSVGElementInstanceCustom.cpp:
        (WebCore::JSSVGElementInstance::visitChildrenVirtual):
        (WebCore::JSSVGElementInstance::visitChildren):
        * bindings/js/JSSharedWorkerCustom.cpp:
        (WebCore::JSSharedWorker::visitChildrenVirtual):
        (WebCore::JSSharedWorker::visitChildren):
        * bindings/js/JSStyleSheetCustom.cpp:
        (WebCore::JSStyleSheet::visitChildrenVirtual):
        (WebCore::JSStyleSheet::visitChildren):
        * bindings/js/JSTreeWalkerCustom.cpp:
        (WebCore::JSTreeWalker::visitChildrenVirtual):
        (WebCore::JSTreeWalker::visitChildren):
        * bindings/js/JSWebGLRenderingContextCustom.cpp:
        (WebCore::JSWebGLRenderingContext::visitChildrenVirtual):
        (WebCore::JSWebGLRenderingContext::visitChildren):
        * bindings/js/JSWorkerContextCustom.cpp:
        (WebCore::JSWorkerContext::visitChildrenVirtual):
        (WebCore::JSWorkerContext::visitChildren):
        * bindings/js/JSXMLHttpRequestCustom.cpp:
        (WebCore::JSXMLHttpRequest::visitChildrenVirtual):
        (WebCore::JSXMLHttpRequest::visitChildren):
        * bindings/js/JSXPathResultCustom.cpp:
        (WebCore::JSXPathResult::visitChildrenVirtual):
        (WebCore::JSXPathResult::visitChildren):
        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateHeader):
        (GenerateImplementation):
        * bindings/scripts/test/JS/JSTestObj.cpp:
        (WebCore::JSTestObj::visitChildrenVirtual):
        (WebCore::JSTestObj::visitChildren):
        * bindings/scripts/test/JS/JSTestObj.h:
        * bridge/qt/qt_instance.cpp:
        (JSC::Bindings::QtRuntimeObject::visitChildrenVirtual):
        (JSC::Bindings::QtRuntimeObject::visitChildren):
        * bridge/qt/qt_runtime.cpp:
        (JSC::Bindings::QtRuntimeMetaMethod::visitChildrenVirtual):
        (JSC::Bindings::QtRuntimeMetaMethod::visitChildren):
        * bridge/qt/qt_runtime.h:
        * workers/WorkerContext.h:

2011-09-27  Mark Hahnenberg  <mhahnenberg@apple.com>

        Add static version of JSCell::getCallData
        https://bugs.webkit.org/show_bug.cgi?id=68741

        Reviewed by Darin Adler.

        No new tests.

        In this patch we just extract the bodies of the virtual getCallData methods
        throughout the JSCell inheritance hierarchy out into static methods, which are 
        now called from the virtual methods.  This is an intermediate step in trying to 
        move the virtual-ness of getCallData into our own method table stored in 
        ClassInfo.  We need to convert the methods to static methods because static methods 
        can be represented as function pointers rather than pointers to member functions, and
        function pointers are smaller and faster to call than pointers to member functions.

        * WebCore.exp.in:
        * bindings/js/JSCallbackData.cpp:
        (WebCore::JSCallbackData::invokeCallback):
        * bindings/js/JSCustomXPathNSResolver.cpp:
        (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
        * bindings/js/JSErrorHandler.cpp:
        (WebCore::JSErrorHandler::handleEvent):
        * bindings/js/JSEventListener.cpp:
        (WebCore::JSEventListener::handleEvent):
        * bindings/js/JSHTMLAllCollectionCustom.cpp:
        (WebCore::JSHTMLAllCollection::getCallDataVirtual):
        (WebCore::JSHTMLAllCollection::getCallData):
        * bindings/js/JSHTMLAppletElementCustom.cpp:
        (WebCore::JSHTMLAppletElement::getCallDataVirtual):
        (WebCore::JSHTMLAppletElement::getCallData):
        * bindings/js/JSHTMLEmbedElementCustom.cpp:
        (WebCore::JSHTMLEmbedElement::getCallDataVirtual):
        (WebCore::JSHTMLEmbedElement::getCallData):
        * bindings/js/JSHTMLObjectElementCustom.cpp:
        (WebCore::JSHTMLObjectElement::getCallDataVirtual):
        (WebCore::JSHTMLObjectElement::getCallData):
        * bindings/js/JSInjectedScriptHostCustom.cpp:
        (WebCore::JSInjectedScriptHost::evaluate):
        * bindings/js/JSPluginElementFunctions.cpp:
        (WebCore::runtimeObjectGetCallData):
        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateHeader):
        * bridge/objc/objc_runtime.h:
        * bridge/objc/objc_runtime.mm:
        (JSC::Bindings::ObjcFallbackObjectImp::getCallDataVirtual):
        (JSC::Bindings::ObjcFallbackObjectImp::getCallData):
        * bridge/qt/qt_runtime.cpp:
        (JSC::Bindings::QtRuntimeMetaMethod::getCallDataVirtual):
        (JSC::Bindings::QtRuntimeMetaMethod::getCallData):
        (JSC::Bindings::QtRuntimeConnectionMethod::call):
        (JSC::Bindings::QtRuntimeConnectionMethod::getCallDataVirtual):
        (JSC::Bindings::QtRuntimeConnectionMethod::getCallData):
        (JSC::Bindings::isJavaScriptFunction):
        * bridge/qt/qt_runtime.h:
        * bridge/runtime_method.cpp:
        (JSC::RuntimeMethod::getCallDataVirtual):
        (JSC::RuntimeMethod::getCallData):
        * bridge/runtime_method.h:
        * bridge/runtime_object.cpp:
        (JSC::Bindings::RuntimeObject::getCallDataVirtual):
        (JSC::Bindings::RuntimeObject::getCallData):
        * bridge/runtime_object.h:

2011-09-27  Dean Jackson  <dino@apple.com>

        Unreviewed. Remove duplicate FilterOperation{s}.h that were
        accidentally added to the top level of the Xcode project.

        * WebCore.xcodeproj/project.pbxproj:

2011-09-27  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68940

        Narrow the float/lines pagination heuristic to only kick in if
        the previous line broke cleanly and if the floats are occurring
        at the start of the line.

        Reviewed by Dan Bernstein.

        * rendering/RenderBlockLineLayout.cpp:
        (WebCore::RenderBlock::positionNewFloatOnLine):

2011-09-27  James Robinson  <jamesr@chromium.org>

        Add a mechanism to test for the compositing tree mutated during painting
        https://bugs.webkit.org/show_bug.cgi?id=68738

        Reviewed by Adam Barth.

        Sets a static bool during GraphicsLayer::paintGraphicsLayerContents and ASSERT()s that we never create or
        destroy a GraphicsLayer inside this function. Painting should never mutate the GraphicsLayer tree.

        Test: compositing/video/video-with-invalid-source.html

        * platform/graphics/GraphicsLayer.cpp:
        (WebCore::GraphicsLayer::GraphicsLayer):
        (WebCore::GraphicsLayer::~GraphicsLayer):
        (WebCore::GraphicsLayer::paintGraphicsLayerContents):

2011-09-27  Ojan Vafai  <ojan@chromium.org>

        take padding/border on flexbox into account with direction:rtl
        https://bugs.webkit.org/show_bug.cgi?id=68846

        Reviewed by David Hyatt.

        Use the logicalWidth of the flexbox instead of it's availableLogicalWidth
        so that we include the flexbox's border and padding.
        
        Also, change all uses of availableLogicalWidth to contentLogicalWidth.
        The former takes multi-column into account. Multi-column flexboxes don't
        make any sense, so there's no point in calling availableLogicalWidth.

        * rendering/RenderFlexibleBox.cpp:
        (WebCore::RenderFlexibleBox::flowAwareLogicalWidth):
        (WebCore::RenderFlexibleBox::flowAwareContentLogicalWidth):
        (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
        (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmInlineDirection):
        (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
        * rendering/RenderFlexibleBox.h:

2011-09-27  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96139.
        http://trac.webkit.org/changeset/96139
        https://bugs.webkit.org/show_bug.cgi?id=68933

        Broke table-percent-height.html on Mac bots (Requested by
        mwenge2 on #webkit).

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::computeReplacedLogicalWidthUsing):
        (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
        * rendering/RenderBox.h:

2011-09-27  Tim Horton  <timothy_horton@apple.com>

        REGRESSION(65665): Pattern size being clamped to SVG size can prevent transformed elements from being fully covered by userSpaceOnUse patterns
        https://bugs.webkit.org/show_bug.cgi?id=67700
        <rdar://problem/10125102>

        Reviewed by Darin Adler.

        Clamp all resources to the same size, 4096x4096 (arbitrarily chosen), instead of to the size
        of the <svg> element. This fixes the case where a transformed element displays part of a resource
        outside of the size of the <svg> element.

        When drawing an oversized pattern into its tile image, scale the content down to fit. When drawing
        the tile image to the screen, scale it back up to fit the expected area. This will cause pixelation
        when patterns are over the 4k limit.

        Tests: svg/custom/transformed-pattern-clamp-svg-root.svg, svg/custom/oversized-pattern-scale.svg

        * rendering/svg/RenderSVGResourceClipper.cpp:
        (WebCore::RenderSVGResourceClipper::applyClippingToContext):
        * rendering/svg/RenderSVGResourceGradient.cpp:
        (WebCore::createMaskAndSwapContextForTextGradient):
        (WebCore::clipToTextMask):
        * rendering/svg/RenderSVGResourceMasker.cpp:
        (WebCore::RenderSVGResourceMasker::applyResource):
        * rendering/svg/RenderSVGResourcePattern.cpp:
        (WebCore::RenderSVGResourcePattern::applyResource):
        (WebCore::RenderSVGResourcePattern::createTileImage):
        * rendering/svg/RenderSVGResourcePattern.h:
        * rendering/svg/SVGImageBufferTools.cpp:
        (WebCore::SVGImageBufferTools::clampedAbsoluteTargetRect):
        * rendering/svg/SVGImageBufferTools.h:

2011-09-27  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/10098679> Assertion failure in RenderLayer::paintPaginatedChildLayer()

        Reviewed by Simon Fraser.

        Test: fast/dynamic/layer-no-longer-paginated.html

        FrameView::layout() calls adjustViewSize() before calling RenderLayer::updateLayerPositions().
        The former may trigger painting with a layer tree that is not entirely up-to-date. Specifically,
        the isPaginated() state of a layer may be incorrect, leading to the assertion in this bug. Instead
        of asserting, return early and count on the upcoming updateLayerPositions() to repaint as needed.

        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::paintPaginatedChildLayer): Replaced the assertion with an early return.

2011-09-27  Ojan Vafai  <ojan@chromium.org>

        offsetTop/offsetLeft return the wrong values for horizontal-bt/vertical-rl writing modes
        https://bugs.webkit.org/show_bug.cgi?id=68304

        Reviewed by David Hyatt.

        When grabbing the x/y values of the RenderBox, we need to take writing mode
        flipping into account.

        Test: fast/dom/offset-position-writing-modes.html

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::locationIncludingFlipping):
        * rendering/RenderBox.h:
        (WebCore::RenderBox::yFlippedForWritingMode):
        (WebCore::RenderBox::xFlippedForWritingMode):
        * rendering/RenderBoxModelObject.cpp:
        (WebCore::RenderBoxModelObject::offsetLeft):
        (WebCore::RenderBoxModelObject::offsetTop):

2011-09-27  Tim Horton  <timothy_horton@apple.com>

        Rapidly refreshing a feMorphology[erode] with r=0 can sometimes cause display corruption
        https://bugs.webkit.org/show_bug.cgi?id=68816
        <rdar://problem/10186468>

        Reviewed by Simon Fraser.

        If a filter returns without writing into its result buffer, make sure to return an cleared buffer.

        Test: svg/filters/feMorphology-zero-radius.svg

        * platform/graphics/filters/FEMorphology.cpp:
        (WebCore::FEMorphology::apply):
        * platform/graphics/filters/FETurbulence.cpp:
        (WebCore::FETurbulence::apply):

2011-09-27  Ryosuke Niwa  <rniwa@webkit.org>

        CompositeEditCommand::prune should remove subtree at once
        https://bugs.webkit.org/show_bug.cgi?id=68866

        Reviewed by Darin Adler.

        Extracted the logic to find the highest ancestor to remove as highestNodeToRemoveInPruning from prune.
        This reduces the number of node removals from O(n) to O(1) where n is the depth of the tree.

        * editing/CompositeEditCommand.cpp:
        (WebCore::hasARenderedDescendant): Takes excludedNode in addition to node. excludedNode is used to ignore
        the child node from which we climbed up the tree in highestNodeToRemoveInPruning.
        (WebCore::highestNodeToRemoveInPruning): Extracted from prune.
        (WebCore::CompositeEditCommand::prune):
        (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):

2011-09-27  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=68922

        Paginated floats should not grow the height of a block when they don't end
        up being tied to a line. Floats encountered in skipLeadingWhitespace that
        paginate can't immediately grow the height of the block, since there may not
        end up being any actual line content. We only want to push the height of the
        block down if we have actual line content that we want to keep with the
        float.
        
        Make positionNewFloatOnLine check if the line is empty or not, and if it is,
        it just puts the desired pagination strut into LineInfo. If and when actual
        line content is encountered and setEmpty becomes false, we'll grow the block
        height then.
        
        Reviewed by Dan Bernstein.

        Added fast/multicol/float-paginate-empty-lines.html and
        fast/regions/webkit-flow-double-pagination-float-push.html.

        * rendering/RenderBlock.h:
        * rendering/RenderBlockLineLayout.cpp:
        (WebCore::LineWidth::LineWidth):
        (WebCore::LineWidth::fitsOnLine):
        (WebCore::LineWidth::currentWidth):
        (WebCore::LineWidth::uncommittedWidth):
        (WebCore::LineWidth::committedWidth):
        (WebCore::LineWidth::availableWidth):
        (WebCore::LineWidth::addUncommittedWidth):
        (WebCore::LineWidth::commit):
        (WebCore::LineWidth::computeAvailableWidthFromLeftAndRight):
        (WebCore::LineWidth::updateAvailableWidth):
        (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
        (WebCore::LineWidth::applyOverhang):
        (WebCore::LineWidth::fitBelowFloats):
        (WebCore::LineInfo::LineInfo):
        (WebCore::LineInfo::floatPaginationStrut):
        (WebCore::LineInfo::setEmpty):
        (WebCore::LineInfo::setFloatPaginationStrut):
        (WebCore::RenderBlock::LineBreaker::skipLeadingWhitespace):
        (WebCore::RenderBlock::LineBreaker::nextLineBreak):
        (WebCore::RenderBlock::positionNewFloatOnLine):

2011-09-27  Dean Jackson  <dino@apple.com>

        Add 'filter' value to RenderStyle
        https://bugs.webkit.org/show_bug.cgi?id=68471

        Reviewed by Simon Fraser.

        Add a filter property to RenderStyle when ENABLE(CSS_FILTERS)
        is turned on. Similar to -webkit-transform, -webkit-filter is a
        list of FilterOperations, each identifying what type of operation
        it is. This change simply adds the basic objects, it does not
        parse the property to generate the list.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * platform/graphics/filters/FilterOperation.h: Added.
        (WebCore::FilterOperation::~FilterOperation):
        (WebCore::FilterOperation::operator!=):
        (WebCore::FilterOperation::getOperationType):
        (WebCore::FilterOperation::isSameType):
        (WebCore::FilterOperation::FilterOperation):
        (WebCore::ReferenceFilterOperation::create):
        (WebCore::ReferenceFilterOperation::reference):
        (WebCore::ReferenceFilterOperation::operator==):
        (WebCore::ReferenceFilterOperation::ReferenceFilterOperation):
        (WebCore::BasicColorMatrixFilterOperation::create):
        (WebCore::BasicColorMatrixFilterOperation::amount):
        (WebCore::BasicColorMatrixFilterOperation::operator==):
        (WebCore::BasicColorMatrixFilterOperation::BasicColorMatrixFilterOperation):
        (WebCore::BasicComponentTransferFilterOperation::create):
        (WebCore::BasicComponentTransferFilterOperation::amount):
        (WebCore::BasicComponentTransferFilterOperation::operator==):
        (WebCore::BasicComponentTransferFilterOperation::BasicComponentTransferFilterOperation):
        (WebCore::GammaFilterOperation::create):
        (WebCore::GammaFilterOperation::amplitude):
        (WebCore::GammaFilterOperation::exponent):
        (WebCore::GammaFilterOperation::offset):
        (WebCore::GammaFilterOperation::operator==):
        (WebCore::GammaFilterOperation::GammaFilterOperation):
        (WebCore::BlurFilterOperation::create):
        (WebCore::BlurFilterOperation::stdDeviationX):
        (WebCore::BlurFilterOperation::stdDeviationY):
        (WebCore::BlurFilterOperation::operator==):
        (WebCore::BlurFilterOperation::BlurFilterOperation):
        (WebCore::SharpenFilterOperation::create):
        (WebCore::SharpenFilterOperation::radius):
        (WebCore::SharpenFilterOperation::threshold):
        (WebCore::SharpenFilterOperation::amount):
        (WebCore::SharpenFilterOperation::operator==):
        (WebCore::SharpenFilterOperation::SharpenFilterOperation):
        (WebCore::DropShadowFilterOperation::create):
        (WebCore::DropShadowFilterOperation::shadow):
        (WebCore::DropShadowFilterOperation::operator==):
        (WebCore::DropShadowFilterOperation::DropShadowFilterOperation):
        * platform/graphics/filters/FilterOperations.cpp: Added.
        (WebCore::FilterOperations::FilterOperations):
        (WebCore::FilterOperations::operator==):
        * platform/graphics/filters/FilterOperations.h: Added.
        (WebCore::FilterOperations::operator!=):
        (WebCore::FilterOperations::clear):
        (WebCore::FilterOperations::operations):
        (WebCore::FilterOperations::size):
        (WebCore::FilterOperations::at):
        * rendering/style/RenderStyle.cpp:
        (WebCore::RenderStyle::RenderStyle):
        * rendering/style/RenderStyle.h:
        (WebCore::InheritedFlags::filter):
        (WebCore::InheritedFlags::hasFilter):
        (WebCore::InheritedFlags::setFilter):
        (WebCore::InheritedFlags::initialFilter):
        * rendering/style/StyleAllInOne.cpp: Added include of new StyleFilterData.
        * rendering/style/StyleFilterData.cpp: Added.
        (WebCore::StyleFilterData::StyleFilterData):
        (WebCore::StyleFilterData::operator==):
        * rendering/style/StyleFilterData.h: Added.
        (WebCore::StyleFilterData::create):
        (WebCore::StyleFilterData::copy):
        (WebCore::StyleFilterData::operator!=):
        * rendering/style/StyleRareNonInheritedData.cpp:
        (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
        (WebCore::StyleRareNonInheritedData::operator==):
        * rendering/style/StyleRareNonInheritedData.h: New filter DataRef.

2011-09-27  James Robinson  <jamesr@chromium.org>

        [chromium] LayerRenderChromium asserts about leaking textures.
        https://bugs.webkit.org/show_bug.cgi?id=68190

        Reviewed by Kenneth Russell.

        This introduces an interface TextureAllocator that the TextureManager uses to allocate/deallocate textures.
        This means that TextureManager does not need to depend directly on GraphicsContext3D, other than for the format
        enum type, making it more testable.  It also allows us to track the allocations by subclassing TextureAllocator
        to make sure we aren't leaking any textures.

        * WebCore.gypi:
        * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
        (WebCore::Canvas2DLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/Canvas2DLayerChromium.h:
        * platform/graphics/chromium/ImageLayerChromium.cpp:
        (WebCore::ImageLayerTextureUpdater::updateTextureRect):
        * platform/graphics/chromium/LayerChromium.h:
        (WebCore::LayerChromium::updateCompositorResources):
        * platform/graphics/chromium/LayerRendererChromium.cpp:
        (WebCore::LayerRendererChromium::LayerRendererChromium):
        (WebCore::LayerRendererChromium::releaseRenderSurfaceTextures):
        (WebCore::LayerRendererChromium::drawLayers):
        (WebCore::LayerRendererChromium::useRenderSurface):
        (WebCore::LayerRendererChromium::initializeSharedObjects):
        (WebCore::LayerRendererChromium::cleanupSharedObjects):
        * platform/graphics/chromium/LayerRendererChromium.h:
        (WebCore::LayerRendererChromium::renderSurfaceTextureAllocator):
        (WebCore::LayerRendererChromium::contentsTextureAllocator):
        * platform/graphics/chromium/LayerTextureUpdater.h:
        * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
        (WebCore::LayerTextureUpdaterBitmap::updateTextureRect):
        (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
        * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
        * platform/graphics/chromium/ManagedTexture.cpp:
        (WebCore::ManagedTexture::bindTexture):
        (WebCore::ManagedTexture::framebufferTexture2D):
        * platform/graphics/chromium/ManagedTexture.h:
        * platform/graphics/chromium/TextureManager.cpp:
        (WebCore::TextureManager::memoryUseBytes):
        (WebCore::TextureManager::deleteEvictedTextures):
        (WebCore::TextureManager::evictAndDeleteAllTextures):
        (WebCore::TextureManager::removeTexture):
        (WebCore::TextureManager::allocateTexture):
        (WebCore::TextureManager::requestTexture):
        * platform/graphics/chromium/TextureManager.h:
        (WebCore::TextureAllocator::~TextureAllocator):
        * platform/graphics/chromium/TiledLayerChromium.cpp:
        (WebCore::TiledLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/TiledLayerChromium.h:
        * platform/graphics/chromium/TrackingTextureAllocator.cpp: Added.
        (WebCore::TrackingTextureAllocator::TrackingTextureAllocator):
        (WebCore::TrackingTextureAllocator::~TrackingTextureAllocator):
        (WebCore::TrackingTextureAllocator::createTexture):
        (WebCore::TrackingTextureAllocator::deleteTexture):
        * platform/graphics/chromium/TrackingTextureAllocator.h: Copied from Source/WebCore/platform/graphics/chromium/ManagedTexture.h.
        (WebCore::TrackingTextureAllocator::create):
        (WebCore::TrackingTextureAllocator::currentMemoryUseBytes):
        * platform/graphics/chromium/VideoLayerChromium.cpp:
        (WebCore::VideoLayerChromium::updateCompositorResources):
        (WebCore::VideoLayerChromium::updateTexture):
        * platform/graphics/chromium/VideoLayerChromium.h:
        * platform/graphics/chromium/WebGLLayerChromium.cpp:
        (WebCore::WebGLLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/WebGLLayerChromium.h:
        * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
        (WebCore::CCHeadsUpDisplay::draw):
        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
        (WebCore::CCLayerTreeHost::~CCLayerTreeHost):
        (WebCore::CCLayerTreeHost::deleteContentsTexturesOnCCThread):
        (WebCore::CCLayerTreeHost::commitToOnCCThread):
        (WebCore::CCLayerTreeHost::didRecreateGraphicsContext):
        (WebCore::CCLayerTreeHost::updateCompositorResources):
        * platform/graphics/chromium/cc/CCLayerTreeHost.h:
        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
        (WebCore::CCLayerTreeHostImpl::contentsTextureAllocator):
        (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
        * platform/graphics/chromium/cc/CCRenderSurface.cpp:
        (WebCore::CCRenderSurface::drawSurface):
        * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
        (WebCore::CCSingleThreadProxy::setNeedsCommit):
        (WebCore::CCSingleThreadProxy::stop):
        (WebCore::CCSingleThreadProxy::recreateContextIfNeeded):
        (WebCore::CCSingleThreadProxy::commitIfNeeded):
        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
        (WebCore::CCThreadProxy::commitOnCCThread):
        (WebCore::CCThreadProxy::layerTreeHostClosedOnCCThread):

2011-06-28  Robert Hogan  <robert@webkit.org>

        Reviewed by David Hyatt.

        Replaced elements squeezed when width is specified as percentage inside a table with Auto layout
        https://bugs.webkit.org/show_bug.cgi?id=29447

        If inserting a 'replaced' element (e.g. image, plugin) in a table cell that is not descendant from
        a block with fixed layout then do not squeeze the element, let it use its intrinsic width and height.

        Test: fast/replaced/table-percent-width.html

        * rendering/RenderBox.cpp:
        (WebCore::avoidSqueezingWidth):
        (WebCore::avoidSqueezingHeight):
        (WebCore::RenderBox::containingBlockReplacedLogicalWidthForContent):
        (WebCore::RenderBox::computeReplacedLogicalWidthUsing):
        (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
        * rendering/RenderBox.h:

2011-09-27  Simon Fraser  <simon.fraser@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=67858

        Roll r96070 back in now that the crash has been fixed in r96130.

        Reviewed by Darin Adler.
        
        When non-overlay scrollbars are hidden on a composited iframe, nothing invalidated
        the scrollbar areas or the scroll corner, so the scrollbars appear to remain.
        
        Fix by invalidating the scrollbars and scroll corner when they are removed. Invalidation
        on scrollbar creation appears to happen via updating the scrollbar style.

        Tested by compositing/iframes/repaint-after-losing-scrollbars.html which no longer shows
        stale scrollbars when run manually, even though the green squares are missing from the
        pixel result (bug 67878).

        * page/FrameView.cpp:
        (WebCore::FrameView::updateScrollCorner): Pass the corner rect into invalidateScrollCorner().
        * platform/ScrollView.cpp:
        (WebCore::ScrollView::setHasHorizontalScrollbar): Invalidate the scrollbar area if hiding it.
        (WebCore::ScrollView::setHasVerticalScrollbar): Ditto.
        (WebCore::ScrollView::updateScrollbars): In the case where both scrollbars are going away,
        compute the scroll corner rect while we still have scrollbars, and then invalidate it
        explicitly. (updateScrollCorner() doesn't, because it doesn't have access to the old corner
        rect.)
        * platform/ScrollableArea.cpp:
        (WebCore::ScrollableArea::invalidateScrollCorner): Pass the rect in, because we can't
        compute it in the case where the scrollbars are going away.
        * platform/ScrollableArea.h: Pass in a rect to invalidateScrollCorner(), which matches
        invalidateScrollbar().
        * rendering/RenderLayerCompositor.cpp:
        (WebCore::RenderLayerCompositor::destroyRootLayer): Pass the corner rect into invalidateScrollCorner().
        * rendering/RenderScrollbarPart.cpp: Ditto.
        (WebCore::RenderScrollbarPart::imageChanged): Ditto.

2011-09-27  Mihai Parparita  <mihaip@chromium.org>

        Fix Chromium Mac build after r96130.

        * page/FrameView.cpp:
        (WebCore::FrameView::layerForOverhangAreas):

2011-09-27  Kaustubh Atrawalkar  <kaustubh@motorola.com>

        Autofocus on readonly inputs does not focus the element.
        https://bugs.webkit.org/show_bug.cgi?id=24092

        Reviewed by Ryosuke Niwa.

        Readonly input elements should be autofocusable. Removed the check.

        Tests: fast/forms/autofocus-readonly-attribute.html

        * html/HTMLFormControlElement.cpp:
        (WebCore::shouldAutofocus):

2011-09-27  Simon Fraser  <simon.fraser@apple.com>

        Clean up how FrameView accesses the RenderView
        https://bugs.webkit.org/show_bug.cgi?id=68914

        Reviewed by Sam Weinig.

        Clean up how FrameView accesses the content renderer of its
        frame. Previously, this was done in several different ways,
        only some of which did null-checking.
        
        Use an inline method to avoid having to expose Frame
        in the header.
        
        Standardize the terminology to use 'root' for this RenderView.

        * page/FrameView.cpp:
        (WebCore::rootRenderer):
        (WebCore::FrameView::setFrameRect):
        (WebCore::FrameView::adjustViewSize):
        (WebCore::FrameView::updateCompositingLayers):
        (WebCore::FrameView::clearBackingStores):
        (WebCore::FrameView::restoreBackingStores):
        (WebCore::FrameView::layerForHorizontalScrollbar):
        (WebCore::FrameView::layerForVerticalScrollbar):
        (WebCore::FrameView::layerForScrollCorner):
        (WebCore::FrameView::layerForOverhangAreas):
        (WebCore::FrameView::syncCompositingStateForThisFrame):
        (WebCore::FrameView::hasCompositedContent):
        (WebCore::FrameView::enterCompositingMode):
        (WebCore::FrameView::isSoftwareRenderable):
        (WebCore::FrameView::didMoveOnscreen):
        (WebCore::FrameView::willMoveOffscreen):
        (WebCore::FrameView::layout):
        (WebCore::FrameView::embeddedContentBox):
        (WebCore::FrameView::contentsInCompositedLayer):
        (WebCore::FrameView::scrollContentsFastPath):
        (WebCore::FrameView::scrollContentsSlowPath):
        (WebCore::FrameView::maintainScrollPositionAtAnchor):
        (WebCore::FrameView::scrollPositionChanged):
        (WebCore::FrameView::repaintFixedElementsAfterScrolling):
        (WebCore::FrameView::visibleContentsResized):
        (WebCore::FrameView::scheduleRelayoutOfSubtree):
        (WebCore::FrameView::needsLayout):
        (WebCore::FrameView::setNeedsLayout):
        (WebCore::FrameView::performPostLayoutTasks):
        (WebCore::FrameView::updateControlTints):
        (WebCore::FrameView::paintContents):
        (WebCore::FrameView::forceLayoutForPagination):
        (WebCore::FrameView::adjustPageHeightDeprecated):
        (WebCore::FrameView::isVerticalDocument):
        (WebCore::FrameView::isFlippedDocument):

2011-09-27  Dominic Mazzoni  <dmazzoni@google.com>

        AXObjectCache cleared unnecessarily when non-top Document is detached.
        https://bugs.webkit.org/show_bug.cgi?id=68636

        Reviewed by Chris Fleizach.

        Test: accessibility/deleting-iframe-destroys-axcache.html

        * dom/Document.cpp:
        (WebCore::Document::attach):
        (WebCore::Document::detach):

2011-09-27  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96108, r96111, r96113, and r96116.
        http://trac.webkit.org/changeset/96108
        http://trac.webkit.org/changeset/96111
        http://trac.webkit.org/changeset/96113
        http://trac.webkit.org/changeset/96116
        https://bugs.webkit.org/show_bug.cgi?id=68913

        Wait for working Qt5 (Requested by ossy on #webkit).

        * WebCore.pri:
        * platform/graphics/qt/GraphicsLayerQt.cpp:

2011-09-27  Csaba Osztrogonác  <ossy@webkit.org>

        Fix ENABLE(SQL_DATABASE)=0 build after r95919
        https://bugs.webkit.org/show_bug.cgi?id=68902

        r95919 enabled OFFLINE_WEB_APPLICATIONS by default and
        it needs SQLite stuff even if ENABLE_SQL_DATABASE=0.

        Reviewed by Adam Barth.

        * platform/sql/SQLiteAuthorizer.cpp:
        * platform/sql/SQLiteDatabase.cpp:
        * platform/sql/SQLiteFileSystem.cpp:
        * platform/sql/SQLiteStatement.cpp:
        * platform/sql/SQLiteTransaction.cpp:
        * storage/DatabaseAuthorizer.cpp:

2011-09-27  Julien Chaffraix  <jchaffraix@webkit.org>

        Crash because CSSPrimitiveValue::computeLengthDouble assumes fontMetrics are available
        https://bugs.webkit.org/show_bug.cgi?id=66291

        Reviewed by Darin Adler.

        Test: fast/canvas/crash-set-font.html

        This is Yet Another Missing updateFont (similar to bug 57756 and likely others). Here the issue is that
        applying one of the font properties could mutate the parent style's font if m_parentStyle == m_style.
        We would then query the newly created font when applying CSSPropertyFontSize, which has no font fallback
        list as Font::update was never called.

        The right fix would be to refactor of how we handle fonts to avoid such manual updates (see bug 62390).
        Until this happens, it is better not to crash.

        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyProperty): Added updateFont() here as the fonts could have been
        mutated by the previous property change. Also added a comment explaining why it is safe to do it
        this way.

2011-09-27  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Texmap] Code cleanup: remove unused boundingRect/visibleRect calculations
        https://bugs.webkit.org/show_bug.cgi?id=68897

        Reviewed by Andreas Kling.

        No new functionality so no new tests.

        * platform/graphics/texmap/TextureMapperNode.cpp:
        (WebCore::TextureMapperNode::computeAllTransforms):
        (WebCore::TextureMapperNode::computeTiles):
        (WebCore::TextureMapperNode::syncCompositingState):
        * platform/graphics/texmap/TextureMapperNode.h:

2011-09-27  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Texmap][Qt] Refactor texture-upload to allow direct chunk update
        https://bugs.webkit.org/show_bug.cgi?id=68808

        Add a function to BitmapTexture for direct pixel updates.
        Modify BitmapTextureGL::endPaint to use that function. Since the BGRA
        to RGBA swizzling is done inside that function, there's no need for the 
        RGBA32PremultipliedBuffer class to contain such function. Also,
        RGBA32PremultipliedBuffer was renamed to BGRA32PremultipliedBuffer, correcting
        an old mistake.

        Reviewed by Andreas Kling.

        No new tests. Existing tests in LayoutTests/compositing test this.

        * platform/graphics/opengl/TextureMapperGL.cpp:
        (WebCore::BitmapTextureGL::beginPaint):
        (WebCore::BitmapTextureGL::endPaint):
        (WebCore::swizzleBGRAToRGBA):
        (WebCore::BitmapTextureGL::updateContents):
        * platform/graphics/opengl/TextureMapperGL.h:
        (WebCore::BGRA32PremultimpliedBuffer::~BGRA32PremultimpliedBuffer):
        * platform/graphics/qt/TextureMapperQt.cpp:
        (WebCore::BitmapTextureQt::updateContents):
        (WebCore::BGRA32PremultimpliedBufferQt::data):
        (WebCore::BGRA32PremultimpliedBuffer::create):
        * platform/graphics/qt/TextureMapperQt.h:
        * platform/graphics/texmap/TextureMapper.h:

2011-09-23  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>

        [Qt] Fix build against Qt5 after refactor of widgets out of QtGUi

        QWidget and friends now live in the QtWidgets library. We update
        includes in implementation files and private headers to us the
        non-module-prefixed path, and leave the lookup for the include
        path. For public headers we have to ifdef the includes as the
        user might now have the modules we need in his QT config.

        Finally, QSGCanvas is no longer a QWidget but a QWindow, so we
        have to update our code and use windowHandle() for setting the
        parent relationships.

        https://bugs.webkit.org/show_bug.cgi?id=68687

        Reviewed by Andreas Kling.

        * WebCore.pri:
        * platform/graphics/qt/GraphicsLayerQt.cpp:

2011-09-27  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: split DOM.attributesUpdated into attributeModified and attributeRemoved.
        Send attribute name and value within the event.
        https://bugs.webkit.org/show_bug.cgi?id=68613

        Reviewed by Yury Semikhatsky.

        * dom/Element.cpp:
        (WebCore::Element::setAttribute):
        (WebCore::Element::removeAttribute):
        * inspector/Inspector.draft-01.json:
        * inspector/Inspector.json:
        * inspector/InspectorDOMAgent.cpp:
        (WebCore::InspectorDOMAgent::didModifyDOMAttr):
        (WebCore::InspectorDOMAgent::didRemoveDOMAttr):
        * inspector/InspectorDOMAgent.h:
        * inspector/InspectorInstrumentation.cpp:
        (WebCore::InspectorInstrumentation::didModifyDOMAttrImpl):
        (WebCore::InspectorInstrumentation::didRemoveDOMAttrImpl):
        * inspector/InspectorInstrumentation.h:
        (WebCore::InspectorInstrumentation::didModifyDOMAttr):
        (WebCore::InspectorInstrumentation::didRemoveDOMAttr):
        * inspector/front-end/DOMAgent.js:
        (WebInspector.DOMNode.prototype._addAttribute):
        (WebInspector.DOMNode.prototype._setAttribute):
        (WebInspector.DOMNode.prototype._removeAttribute):
        (WebInspector.DOMAgent.prototype._attributeModified):
        (WebInspector.DOMAgent.prototype._attributeRemoved):
        (WebInspector.DOMAgent.prototype._inlineStyleInvalidated):
        (WebInspector.DOMAgent.prototype._loadNodeAttributes):
        (WebInspector.DOMDispatcher.prototype.attributeModified):
        (WebInspector.DOMDispatcher.prototype.attributeRemoved):
        * inspector/front-end/ElementsPanel.js:
        (WebInspector.ElementsPanel):
        (WebInspector.ElementsPanel.prototype._attributesUpdated):
        * inspector/front-end/MetricsSidebarPane.js:
        (WebInspector.MetricsSidebarPane):
        (WebInspector.MetricsSidebarPane.prototype._attributesUpdated):
        * inspector/front-end/StylesSidebarPane.js:
        (WebInspector.StylesSidebarPane):
        (WebInspector.StylesSidebarPane.prototype._attributesModified):
        (WebInspector.StylesSidebarPane.prototype._attributesRemoved):
        (WebInspector.StylesSidebarPane.prototype._styleInvalidated):
        (WebInspector.StylePropertyTreeElement.prototype.event):
        (WebInspector.StylePropertyTreeElement.prototype):
        * inspector/validate-protocol-compatibility:

2011-09-27  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r96070 and r96075.
        http://trac.webkit.org/changeset/96070
        http://trac.webkit.org/changeset/96075
        https://bugs.webkit.org/show_bug.cgi?id=68893

        WK2 tests started crashing after r96070 for SL and Qt
        (Requested by torarne on #webkit).

        * page/FrameView.cpp:
        (WebCore::FrameView::updateScrollCorner):
        * platform/ScrollView.cpp:
        (WebCore::ScrollView::setHasHorizontalScrollbar):
        (WebCore::ScrollView::setHasVerticalScrollbar):
        (WebCore::ScrollView::updateScrollbars):
        * platform/ScrollableArea.cpp:
        (WebCore::ScrollableArea::invalidateScrollCorner):
        * platform/ScrollableArea.h:
        * rendering/RenderLayerCompositor.cpp:
        (WebCore::RenderLayerCompositor::destroyRootLayer):
        * rendering/RenderScrollbarPart.cpp:
        (WebCore::RenderScrollbarPart::imageChanged):

2011-09-27  Andrey Kosyakov  <caseq@chromium.org>

        Web Inspector: JS exception upon clicking on "Word Wrap" checkbox in Settings screen
        https://bugs.webkit.org/show_bug.cgi?id=68888

        Reviewed by Pavel Feldman.

        * inspector/front-end/ElementsPanel.js:
        (WebInspector.ElementsPanel.prototype._domWordWrapSettingChanged):

2011-09-21  Pavel Podivilov  <podivilov@chromium.org>

        Web Inspector: migrate RawSourceCode clients to SourceMapping class.
        https://bugs.webkit.org/show_bug.cgi?id=68524

        Clients should use uiSourceCode(), rawLocationToUILocation(), uiLocationToRawLocation() methods of SourceMapping class.
        Initially, RawSourceCode may not have associated SourceMapping, so it is natural to extract this methods and associated state to a separate class.

        Reviewed by Yury Semikhatsky.

        * inspector/front-end/BreakpointManager.js:
        (WebInspector.BreakpointManager.prototype._materializeBreakpoint):
        (WebInspector.BreakpointManager.prototype._breakpointDebuggerLocationChanged):
        * inspector/front-end/DebuggerPresentationModel.js:
        (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation.updateAnchor):
        (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation):
        (WebInspector.DebuggerPresentationModel.prototype._addScript):
        (WebInspector.DebuggerPresentationModel.prototype._updateSourceMapping):
        (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
        (WebInspector.DebuggerPresentationModel.prototype._restoreConsoleMessages):
        (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
        (WebInspector.DebuggerPresentationModel.prototype._createPresentationMessage):
        (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
        (WebInspector.PresentationCallFrame.prototype.get url):
        (WebInspector.PresentationCallFrame.prototype.sourceLine.sourceMappingUpdated):
        (WebInspector.PresentationCallFrame.prototype.sourceLine):
        (WebInspector.DebuggerPresentationModelResourceBinding.prototype.canSetContent):
        (WebInspector.DebuggerPresentationModelResourceBinding.prototype.setContent):
        * inspector/front-end/SourceFile.js:
        (WebInspector.RawSourceCode.prototype.get sourceMapping):

2011-09-27  Vineet Chaudhary  <vineet.chaudhary@motorola.com>

        wrap attribute of textarea element cannot be accessed by JavaScript.
        https://bugs.webkit.org/show_bug.cgi?id=68592

        Reviewed by Kent Tamura.

        Added JS interface for wrap attribute to HTMLTextAreaElement.idl.

        Test: fast/forms/textarea-wrap-attribute.html

        * html/HTMLTextAreaElement.idl:

2011-09-27  Xan Lopez  <xlopez@igalia.com>

        [GTK] Add compatibility methods for DOM bindings
        https://bugs.webkit.org/show_bug.cgi?id=68884

        Reviewed by Philippe Normand.

        Add compatibility methods for our DOM bindings.

        * bindings/gobject/WebKitDOMCustom.cpp:
        (webkit_dom_blob_slice): alias to the new method name.
        (webkit_dom_html_form_element_dispatch_form_change): this was
        removed from WebCore, so just print a warning about it.
        (webkit_dom_html_form_element_dispatch_form_input): ditto.
        * bindings/gobject/WebKitDOMCustom.h:

2011-09-27  Ryosuke Niwa  <rniwa@webkit.org>

        Encapsulate m_firstNodeInserted and m_lastLeafInserted in node insertion logic
        https://bugs.webkit.org/show_bug.cgi?id=68875

        Reviewed by Kent Tamura.

        Added InsertedNode class inside ReplaceSelection to encapsulate m_firstNodeInserted and m_lastLeafInserted.
        Deployed it in removeRedundantStylesAndKeepStyleSpanInline, doApply, and insertAsListItems of ReplaceSelectionCommand.

        * editing/DeleteSelectionCommand.cpp:
        (WebCore::DeleteSelectionCommand::removeNode):
        (WebCore::DeleteSelectionCommand::handleGeneralDelete):
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
        (WebCore::ReplaceSelectionCommand::doApply):
        (WebCore::ReplaceSelectionCommand::insertAsListItems):
        * editing/ReplaceSelectionCommand.h:
        (WebCore::ReplaceSelectionCommand::InsertedNodes::respondToNodeInsertion):
        (WebCore::ReplaceSelectionCommand::InsertedNodes::willRemoveNode):
        (WebCore::ReplaceSelectionCommand::InsertedNodes::firstNodeInserted):
        (WebCore::ReplaceSelectionCommand::InsertedNodes::lastLeafInserted):
        (WebCore::ReplaceSelectionCommand::InsertedNodes::pastLastLeaf):
        * editing/htmlediting.cpp:
        (WebCore::updatePositionForNodeRemoval): Moved from DeleteSelectionCommand.cpp.
        * editing/htmlediting.h:

2011-09-27  Arun Patole  <bmf834@motorola.com>

        Audio element doesn't emit the 'playing' event every time it starts playing, after it has finished playing.
        https://bugs.webkit.org/show_bug.cgi?id=60972

        Reviewed by Philippe Normand.

        The paused attribute should be set to true and the media element should emit a 'paused' at the end of playback.
        WHATWG revision r6562: http://html5.org/tools/web-apps-tracker?from=6561&to=6562

        Test: media/media-element-play-after-eos.html

        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): set m_paused to true and schedule 'pause' event when playback ended.

2011-09-27  Rakesh KN  <rakesh.kn@motorola.com>

        <input> with autofocus doesn't lose focus when it has a certain onblur listener
        https://bugs.webkit.org/show_bug.cgi?id=68513

        Reviewed by Kent Tamura.

        Test: fast/forms/autofocus-focus-only-once.html

        These changes make sure that an element is focused only once when autofocus attribute is used.

        * html/HTMLFormControlElement.cpp:
        (WebCore::HTMLFormControlElement::HTMLFormControlElement):
        (WebCore::shouldAutofocus):
        (WebCore::HTMLFormControlElement::attach):
        * html/HTMLFormControlElement.h:
        (WebCore::HTMLFormControlElement::hasAutofocused):
        (WebCore::HTMLFormControlElement::setAutofocused):

2011-09-26  Kentaro Hara  <haraken@chromium.org>

        Implement PopStateEvent.state with SerializedScriptValue and ScriptValue
        https://bugs.webkit.org/show_bug.cgi?id=68345

        Reviewed by Adam Barth.

        Previously, the following test cases fail or crash:

        - shouldBe("new PopStateEvent('eventType', { state: object1 }).state", "object1") -> FAIL
        - new PopStateEvent('eventType', { state: document }).state -> CRASH in DRT

        This is because PopStateEvent.state is implemented not as ScriptValue but as SerializedScriptValue.
        However, we cannot simply change the type of PopStateEvent.state to ScriptValue,
        since PopStateEvent can be constructed in the context that does not know ScriptValue.
        For example, Document.cpp calls PopStateEvent::create() with SerializedScriptValue
        popped from HistoryItem, but we cannot deserialize the SerializedScriptValue into
        the corresponding ScriptValue here because the deserialization requires ExecState.
        In other words, although we want to store PopStateEvent.state by ScriptValue internally,
        PopStateEvent still needs to provide an API to construct it with SerializedScriptValue.
        With these observations, this patch makes the following changes:

        - If PopStateEvent is constructed with ScriptValue, it is stored as ScriptValue internally.
        When PopStateEvent.state is called, the ScriptValue is returned.
        - If PopStateEvent is constructed with SerializedScriptValue, it is stored as
        SerializedScriptValue internally (since we cannot deserialize it into ScriptValue
        at this point). When PopStateEvent.state is called, the SerializedScriptValue is
        deserialized into the corresponding ScriptValue, and the ScriptValue is returned.

        Tests: fast/events/constructors/pop-state-event-constructor.html
               fast/events/fire-popstate-event.html

        * GNUmakefile.list.am: Added JSPopStateEventCustom.cpp.
        * UseJSC.cmake: Ditto.
        * WebCore.gypi: Ditto.
        * WebCore.pro: Ditto.
        * WebCore.xcodeproj/project.pbxproj: Ditto.
        * bindings/js/JSBindingsAllInOne.cpp: Ditto.
        * bindings/js/JSPopStateEventCustom.cpp:
        (WebCore::JSPopStateEvent::state): Custom getter for PopStateEvent.state.
        * bindings/v8/custom/V8PopStateEventCustom.cpp:
        (WebCore::V8PopStateEvent::stateAccessorGetter): Custom getter for PopStateEvent.state.
        * dom/PopStateEvent.cpp:
        (WebCore::PopStateEventInit::PopStateEventInit): Added initialization code for PopStateEvent.m_state.
        (WebCore::PopStateEvent::PopStateEvent): Ditto.
        (WebCore::PopStateEvent::create): Ditto.
        (WebCore::PopStateEvent::initPopStateEvent): Ditto.
        * dom/PopStateEvent.h:
        (WebCore::PopStateEvent::serializedState): Getter.
        (WebCore::PopStateEvent::state): Getter.
        * dom/PopStateEvent.idl: Change the type of 'stateArg' and 'state' to DOMObject. Added [CustomGetter] to 'state'.

2011-09-09  Simon Fraser  <simon.fraser@apple.com>

        Pixel result shows that compositing/iframes/repaint-after-losing-scrollbars.html is failing
        https://bugs.webkit.org/show_bug.cgi?id=67858

        Reviewed by Darin Adler.
        
        When non-overlay scrollbars are hidden on a composited iframe, nothing invalidated
        the scrollbar areas or the scroll corner, so the scrollbars appear to remain.
        
        Fix by invalidating the scrollbars and scroll corner when they are removed. Invalidation
        on scrollbar creation appears to happen via updating the scrollbar style.

        Tested by compositing/iframes/repaint-after-losing-scrollbars.html which no longer shows
        stale scrollbars when run manually, even though the green squares are missing from the
        pixel result (bug 67878).

        * page/FrameView.cpp:
        (WebCore::FrameView::updateScrollCorner): Pass the corner rect into invalidateScrollCorner().
        * platform/ScrollView.cpp:
        (WebCore::ScrollView::setHasHorizontalScrollbar): Invalidate the scrollbar area if hiding it.
        (WebCore::ScrollView::setHasVerticalScrollbar): Ditto.
        (WebCore::ScrollView::updateScrollbars): In the case where both scrollbars are going away,
        compute the scroll corner rect while we still have scrollbars, and then invalidate it
        explicitly. (updateScrollCorner() doesn't, because it doesn't have access to the old corner
        rect.)
        * platform/ScrollableArea.cpp:
        (WebCore::ScrollableArea::invalidateScrollCorner): Pass the rect in, because we can't
        compute it in the case where the scrollbars are going away.
        * platform/ScrollableArea.h: Pass in a rect to invalidateScrollCorner(), which matches
        invalidateScrollbar().
        * rendering/RenderLayerCompositor.cpp:
        (WebCore::RenderLayerCompositor::destroyRootLayer): Pass the corner rect into invalidateScrollCorner().
        * rendering/RenderScrollbarPart.cpp: Ditto.
        (WebCore::RenderScrollbarPart::imageChanged): Ditto.

2011-09-09  Simon Fraser  <simon.fraser@apple.com>

        Translucent scrollbars on composited layers render incorrectly
        https://bugs.webkit.org/show_bug.cgi?id=58515

        Reviewed by Sam Weinig.
        
        Scrollbars in composited elements were getting drawn twice,
        because r41203 moved the call to paintOverflowControls() out of
        RenderLayer::paintLayer(), but forgot to change RenderLayerBacking::paintIntoLayer().

        Test: compositing/scrollbar-painting.html

        * rendering/RenderLayerBacking.cpp:
        (WebCore::RenderLayerBacking::paintIntoLayer):

2011-09-26  Nat Duca  <nduca@chromium.org>

        [chromium] Make CCThreadProxy draw
        https://bugs.webkit.org/show_bug.cgi?id=67417

        Update the CCThreadProxy to correctly implement the CCProxy
        interface, do all the right committing and updating steps, and
        draw a picture on the screen.

        Reviewed by James Robinson.

        * platform/graphics/IntRect.h:
        * platform/graphics/chromium/LayerRendererChromium.cpp:
        (WebCore::LayerRendererChromium::~LayerRendererChromium):
        * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
        (WebCore::CCHeadsUpDisplay::enabled):
        * platform/graphics/chromium/cc/CCLayerImpl.cpp:
        (WebCore::CCLayerImpl::CCLayerImpl):
        (WebCore::CCLayerImpl::~CCLayerImpl):
        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
        (WebCore::CCLayerTreeHost::CCLayerTreeHost):
        (WebCore::CCLayerTreeHost::commitTo):
        (WebCore::CCLayerTreeHost::commitComplete):
        (WebCore::CCLayerTreeHost::setNeedsRedraw):
        * platform/graphics/chromium/cc/CCLayerTreeHost.h:
        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
        (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
        (WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
        * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
        (WebCore::CCSingleThreadProxy::finishAllRendering):
        (WebCore::CCSingleThreadProxy::setNeedsCommit):
        (WebCore::CCSingleThreadProxy::commitIfNeeded):
        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
        (WebCore::CCThreadProxy::CCThreadProxy):
        (WebCore::CCThreadProxy::~CCThreadProxy):
        (WebCore::CCThreadProxy::compositeAndReadback):
        (WebCore::CCThreadProxy::drawLayersAndReadbackOnCCThread):
        (WebCore::CCThreadProxy::finishAllRendering):
        (WebCore::CCThreadProxy::isStarted):
        (WebCore::CCThreadProxy::setNeedsCommit):
        (WebCore::CCThreadProxy::setNeedsCommitAndRedraw):
        (WebCore::CCThreadProxy::setNeedsRedraw):
        (WebCore::CCThreadProxy::start):
        (WebCore::CCThreadProxy::stop):
        (WebCore::CCThreadProxy::finishAllRenderingOnCCThread):
        (WebCore::CCThreadProxy::createBeginFrameAndCommitTaskOnCCThread):
        (WebCore::CCThreadProxy::beginFrameAndCommit):
        (WebCore::CCThreadProxy::commitOnCCThread):
        (WebCore::CCThreadProxy::scheduleDrawTaskOnCCThread):
        (WebCore::CCThreadProxy::drawLayersAndPresentOnCCThread):
        (WebCore::CCThreadProxy::drawLayersOnCCThread):
        (WebCore::CCThreadProxy::updateSchedulerStateOnCCThread):
        * platform/graphics/chromium/cc/CCThreadProxy.h:

2011-09-26  Adam Klein  <adamk@chromium.org>

        [MutationObservers] implement MutationRecord
        https://bugs.webkit.org/show_bug.cgi?id=68824

        Reviewed by Darin Adler.

        Implements MutationRecord as specified in the thread at
        http://lists.w3.org/Archives/Public/public-webapps/2011JulSep/1622.html,
        including some minor naming changes from the original proposal.

        This is a small part of the MutationObserver API, see
        https://bugs.webkit.org/show_bug.cgi?id=68729 for the metabug covering
        this feature.

        No new tests as this isn't yet exposed to the platform.

        * CMakeLists.txt:
        * DerivedSources.cpp:
        * DerivedSources.make:
        * GNUmakefile.list.am:
        * WebCore.gypi:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * dom/MutationRecord.cpp: Added.
        (WebCore::MutationRecord::createChildList):
        (WebCore::MutationRecord::createAttributes):
        (WebCore::MutationRecord::createCharacterData):
        (WebCore::MutationRecord::MutationRecord):
        (WebCore::MutationRecord::~MutationRecord):
        * dom/MutationRecord.h: Added.
        (WebCore::MutationRecord::target):
        (WebCore::MutationRecord::addedNodes):
        (WebCore::MutationRecord::removedNodes):
        (WebCore::MutationRecord::previousSibling):
        (WebCore::MutationRecord::nextSibling):
        (WebCore::MutationRecord::attributeName):
        (WebCore::MutationRecord::attributeNamespace):
        (WebCore::MutationRecord::oldValue):
        (WebCore::MutationRecord::setOldValue):
        * dom/MutationRecord.idl: Added.

2011-09-26  Kentaro Hara  <haraken@chromium.org>

        Implement a CloseEvent constructor for V8
        https://bugs.webkit.org/show_bug.cgi?id=68793

        Reviewed by Adam Barth.

        Test: fast/events/constructors/close-event-constructor.html

        * bindings/v8/OptionsObject.cpp:
        (WebCore::OptionsObject::getKey): Just removed an extra space.
        (WebCore::OptionsObject::getKeyValue): Returns an unsigned short value corresponding to the given key.
        * bindings/v8/OptionsObject.h:
        * bindings/v8/custom/V8EventConstructors.cpp: Added the CloseEvent constructor.
        * websockets/CloseEvent.idl: Added a 'V8CustomConstructor' attribute.

2011-09-26  Nate Chapin  <japhet@chromium.org>

        Clean up CachedResource::load(). Collapse its
        logic into a single callsite, taking just a
        CachedResourceLoader and a ResourceLoaderOptions.

        1. Its 'incremental' parameter is redundant.
        2. With 'incremental' removed, the SecurityCheckPolicy is the only
           parameter difference between the CachedResource::load() variants.
           Making it a part of ResourceLoaderOptions removes yet another random
           enum that is passed around individually.
        3. We currently have to call setResourceLoaderOptions() before load() on a
           new CachedResource, so we should just take the ResourceLoaderOptions in load().

        https://bugs.webkit.org/show_bug.cgi?id=67443

        Reviewed by Antti Koivisto.

        No new tests, refactor only.

        * loader/DocumentThreadableLoader.cpp:
        * loader/FrameLoaderTypes.h: Move SecurityCheckPolicy to ResourceLoaderOptions.h.
        * loader/MainResourceLoader.cpp:
        * loader/NetscapePlugInStreamLoader.cpp:
        * loader/ResourceLoadScheduler.cpp:
        * loader/ResourceLoadScheduler.h:
        * loader/ResourceLoader.cpp: Enforce SecurityCheckPolicy here instead of SubresourceLoader.
        * loader/ResourceLoaderOptions.h: Store SecurityCheckPolicy on ResourceLoaderOptions.
        * loader/SubresourceLoader.cpp:
        * loader/SubresourceLoader.h:
        * loader/cache/CachedFont.cpp:
        * loader/cache/CachedFont.h:
        * loader/cache/CachedImage.cpp:
        * loader/cache/CachedImage.h:
        * loader/cache/CachedResource.cpp:
        * loader/cache/CachedResource.h:
        * loader/cache/CachedResourceLoader.cpp:
        (WebCore::defaultCachedResourceOptions): Define the default ResourceLoaderOptions for
            CachedResource loads here instead of as a default parameter on requestResource().
        * loader/cache/CachedResourceLoader.h:
        * loader/cache/CachedResourceRequest.cpp:
        (WebCore::CachedResourceRequest::didReceiveData): Remove m_incremental, since its purpose
            is already enforced in the data() implementation of every CachedResource that doesn't want
            incremental loads.
        * loader/cache/CachedResourceRequest.h:

2011-09-26  Joshua Bell  <jsbell@chromium.org>

        IndexedDB: Second half of IDBFactory.getDatabaseNames implementation
        https://bugs.webkit.org/show_bug.cgi?id=68818

        Reviewed by Tony Chang.

        Test: storage/indexeddb/factory-basics.html

        Adds ability to enumerate IndexedDB databases within an origin.

        * bindings/v8/custom/V8IDBAnyCustom.cpp:
        (WebCore::toV8):
        * storage/IDBAny.cpp:
        (WebCore::IDBAny::domStringList):
        (WebCore::IDBAny::set):
        * storage/IDBAny.h:
        * storage/IDBBackingStore.h:
        * storage/IDBCallbacks.h:
        * storage/IDBFactory.cpp:
        (WebCore::IDBFactory::getDatabaseNames):
        * storage/IDBFactory.h:
        * storage/IDBFactory.idl:
        * storage/IDBFactoryBackendImpl.cpp:
        (WebCore::IDBFactoryBackendImpl::getDatabaseNames):
        (WebCore::IDBFactoryBackendImpl::open):
        (WebCore::IDBFactoryBackendImpl::openBackingStore):
        * storage/IDBFactoryBackendImpl.h:
        * storage/IDBFactoryBackendInterface.h:
        * storage/IDBLevelDBBackingStore.cpp:
        (WebCore::IDBLevelDBBackingStore::getDatabaseNames):
        (WebCore::IDBLevelDBBackingStore::getObjectStores):
        (WebCore::IDBLevelDBBackingStore::getIndexes):
        * storage/IDBLevelDBBackingStore.h:
        * storage/IDBLevelDBCoding.cpp:
        (WebCore::IDBLevelDBCoding::DatabaseNameKey::encodeMinKeyForOrigin):
        (WebCore::IDBLevelDBCoding::DatabaseNameKey::encodeStopKeyForOrigin):
        * storage/IDBLevelDBCoding.h:
        * storage/IDBRequest.cpp:
        (WebCore::IDBRequest::onSuccess):
        * storage/IDBRequest.h:
        * storage/IDBSQLiteBackingStore.cpp:
        (WebCore::IDBSQLiteBackingStore::getDatabaseNames):
        * storage/IDBSQLiteBackingStore.h:

2011-09-26  Tim Horton  <timothy_horton@apple.com>

        <animateColor> applied to filtered ellipse does not update
        https://bugs.webkit.org/show_bug.cgi?id=68457
        <rdar://problem/10154777>

        Reviewed by Darin Adler.

        Invalidate the filter's cache when style changes take place so that style changes are respected.

        Test: svg/filters/animate-fill.svg

        * rendering/svg/SVGResourcesCache.cpp:
        (WebCore::SVGResourcesCache::clientStyleChanged):
        (WebCore::SVGResourcesCache::clientUpdatedFromElement):

2011-09-26  Max Perepelitsyn  <pph34r@gmail.com>

        Set but unused variables cleanup in v8 bindings (gcc 4.6)
        https://bugs.webkit.org/show_bug.cgi?id=68079

        Reviewed by Adam Barth.

        Test: http/tests/websocket/tests/hybi/send-object-tostring-check.html

        * bindings/scripts/CodeGeneratorV8.pm:
        * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
        (WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
        * bindings/scripts/test/V8/V8TestObj.cpp:
        (WebCore::ConfigureV8TestObjTemplate):
        * bindings/v8/WorkerScriptDebugServer.cpp:
        (WebCore::WorkerScriptDebugServer::addListener):
        * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
        (WebCore::V8HTMLOptionsCollection::lengthAccessorSetter):
        * bindings/v8/custom/V8WebSocketCustom.cpp:
        (WebCore::V8WebSocket::sendCallback):

2011-09-26  Tony Chang  <tony@chromium.org>

        switch the initial value of flex-order to 0
        https://bugs.webkit.org/show_bug.cgi?id=68820

        The spec changed from having an initial value of 1 to 0.

        Reviewed by Ojan Vafai.

        * rendering/style/RenderStyle.h:
        (WebCore::InheritedFlags::initialFlexOrder):

2011-09-26  Chris Rogers  <crogers@google.com>

        OfflineAudioDestinationNode must wait for thread completion in uninitialize()
        https://bugs.webkit.org/show_bug.cgi?id=68725

        Reviewed by Kenneth Russell.

        No new tests.  This fixes internal implementation details.

        * webaudio/OfflineAudioDestinationNode.cpp:
        (WebCore::OfflineAudioDestinationNode::uninitialize):

2011-09-26  Xan Lopez  <xlopez@igalia.com>

        [GTK] Do not ignore 'Replaceable' attributes in the DOM bindings
        https://bugs.webkit.org/show_bug.cgi?id=68837

        Reviewed by Martin Robinson.

        * bindings/scripts/CodeGeneratorGObject.pm: add getters (but not
        setters) for 'Replaceable' attributes. Punt for the future
        actually making them settable, since it seems non trivial.

2011-09-26  Ryosuke Niwa  <rniwa@webkit.org>

        Leopard build fix.

        * testing/Internals.cpp:
        (WebCore::Internals::setZoomAnimatorTransform):

2011-09-26  Joshua Bell  <jsbell@chromium.org>

        IndexedDB: Null key path gets stored as empty string key path
        https://bugs.webkit.org/show_bug.cgi?id=68726

        Reviewed by Tony Chang.

        Store additional flag to indicate if object store key path
        is null vs. empty. Added additional runtime tests for integrity
        of object store metadata.

        * storage/IDBLevelDBBackingStore.cpp:
        (WebCore::checkObjectStoreAndMetaDataType):
        (WebCore::IDBLevelDBBackingStore::getObjectStores):
        (WebCore::IDBLevelDBBackingStore::createObjectStore):
        * storage/IDBLevelDBCoding.cpp:

2011-09-26  John Bauman  <jbauman@chromium.org>

        Fix nonpremultiplied webgl toDataURL to jpeg
        https://bugs.webkit.org/show_bug.cgi?id=68366

        The canvas spec says that toDataURL to formats without an alpha must
        be "composited onto a solid black background using the source-over
        operator." Do that.

        Reviewed by Kenneth Russell.

        * platform/graphics/cg/ImageBufferCG.cpp:
        (WebCore::CGImageToDataURL):
        (WebCore::ImageBuffer::toDataURL):
        (WebCore::ImageDataToDataURL):
        * platform/image-encoders/skia/JPEGImageEncoder.cpp:
        (WebCore::RGBAtoRGB):

2011-09-26  Raphael Kubo da Costa  <kubo@profusion.mobi>

        [CMake] Remove FindFreetype.cmake
        https://bugs.webkit.org/show_bug.cgi?id=68778

        Reviewed by Adam Barth.

        CMake has provided its own FindFreetype.cmake forever, so there is no
        need to have another implementation in WebKit.

        No new tests, just a buildsystem change.

        * CMakeListsEfl.txt: Use FREETYPE_{LIBRARIES,INCLUDE_DIRS} instead of
        Freetype_{LIBRARIES,INCLUDE_DIRS}.

2011-09-26  Alexei Svitkine  <asvitkine@chromium.org>

        Fix full-page rubber band overhang appearing when gesturing during a slow page load.
        https://bugs.webkit.org/show_bug.cgi?id=68568

        Chromium bug: http://code.google.com/p/chromium/issues/detail?id=97243

        (This also happens on Safari.)

        The problem was that ScrollView::overhangAmount() was returning a full-page overhang due to contentsSize() being 0 briefly during a page load, which was then getting used by ScrollAnimatorChromiumMac.mm to update the overhang on a gesture event. This change makes the relevant logic not return an overhang if the contentsSize() is empty.

        Reviewed by Adam Barth.

        No new tests, since this is highly timing-related.

        * platform/ScrollView.cpp:
        (WebCore::ScrollView::overhangAmount):
        (WebCore::ScrollView::wheelEvent):

2011-09-26  W. James MacLean  <wjmaclean@chromium.org>

        [chromium] Revise zoom animator backend to use full transform instead of just scale.
        https://bugs.webkit.org/show_bug.cgi?id=68535

        Reviewed by Kenneth Russell.

        * page/Settings.cpp:
        (WebCore::Settings::Settings):
        * page/Settings.h:
        (WebCore::Settings::setZoomAnimatorScale):
        (WebCore::Settings::zoomAnimatorScale):
        (WebCore::Settings::setZoomAnimatorPosition):
        (WebCore::Settings::zoomAnimatorPosX):
        (WebCore::Settings::zoomAnimatorPosY):
        * platform/graphics/chromium/LayerRendererChromium.cpp:
        (WebCore::LayerRendererChromium::LayerRendererChromium):
        (WebCore::LayerRendererChromium::drawLayersInternal):
        * platform/graphics/chromium/LayerRendererChromium.h:
        (WebCore::LayerRendererChromium::setZoomAnimatorTransform):
        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
        (WebCore::CCLayerTreeHost::CCLayerTreeHost):
        (WebCore::CCLayerTreeHost::commitTo):
        (WebCore::CCLayerTreeHost::setZoomAnimatorTransform):
        (WebCore::CCLayerTreeHost::updateLayers):
        * platform/graphics/chromium/cc/CCLayerTreeHost.h:
        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
        (WebCore::CCLayerTreeHostImpl::setZoomAnimatorTransform):
        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
        * testing/Internals.cpp:
        (WebCore::Internals::setZoomAnimatorTransform):
        * testing/Internals.h:
        * testing/Internals.idl:

2011-09-26  Dan Bernstein  <mitz@apple.com>

        REGRESSION (r95926) Assert firing in svg/clip-path/clip-path-on-svg.svg
        https://bugs.webkit.org/show_bug.cgi?id=68819

        Reviewed by Dave Hyatt.

        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::scheduleRelayout): Revert to using view() instead of the RenderView**
        parameter of isRooted, since only the former returns 0 when the document is detached.

2011-09-26  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: XMLHttpRequest console logging messages should link to network panel when possible.
        https://bugs.webkit.org/show_bug.cgi?id=67399

        Reviewed by Pavel Feldman.

        * inspector/ConsoleMessage.cpp:
        (WebCore::ConsoleMessage::ConsoleMessage):
        * inspector/ConsoleMessage.h:
        * inspector/InspectorConsoleAgent.cpp:
        (WebCore::InspectorConsoleAgent::resourceRetrievedByXMLHttpRequest):
        * inspector/InspectorConsoleAgent.h:
        * inspector/InspectorInstrumentation.cpp:
        (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequestImpl):
        * inspector/front-end/ConsoleMessage.js:
        (WebInspector.ConsoleMessage.prototype._formatMessage.else.else.linkifier):
        (WebInspector.ConsoleMessage.prototype._formatMessage):
        * inspector/front-end/ResourcesPanel.js:
        (WebInspector.ResourcesPanel.prototype.showAnchorLocation):
        * inspector/front-end/inspector.js:
        (WebInspector.linkifyStringAsFragmentWithCustomLinkifier):
        (WebInspector.linkifyStringAsFragment):

2011-09-26  Jer Noble  <jer.noble@apple.com>

        White flash when entering full-screen using element.webkitRequestFullScreen()
        https://bugs.webkit.org/show_bug.cgi?id=68481

        Reviewed by Simon Fraser.

        No new tests; covered by existing full screen tests.

        During an animation, renderers may try to paint into the FullScreenRenderer's 
        GraphicsLayer, and an optimization we previously added for the FullScreenRenderer's 
        background will cause these paints to fail. Remove this optimization in 
        containsPaintedContent, and taking non-composited elements into full screen will
        animate correctly.

        * rendering/RenderLayerBacking.cpp:
        (WebCore::RenderLayerBacking::containsPaintedContent):

2011-09-26  Mihai Parparita  <mihaip@chromium.org>

        Unreviewed, rolling out r95960.
        http://trac.webkit.org/changeset/95960
        https://bugs.webkit.org/show_bug.cgi?id=58608

        Significantly changes table border rendering

        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::drawLineForBoxSide):

2011-09-23  Simon Fraser  <simon.fraser@apple.com>

        Repaint tests don't work in WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=68453

        Reviewed by Sam Weinig.

        Have FrameView keep track of repaint rects when asked to, and
        expose this set of repaint rects via private WebKit API for later
        use by DumpRenderTree.
        
        The repaint rects are in WebView coordinates, so we have to
        unapply the scroll offset.

        * WebCore.exp.in:
        * page/FrameView.cpp:
        (WebCore::FrameView::FrameView):
        (WebCore::FrameView::reset):
        (WebCore::FrameView::repaintContentRectangle):
        (WebCore::FrameView::setTracksRepaints):
        * page/FrameView.h:
        (WebCore::FrameView::isTrackingRepaints):
        (WebCore::FrameView::resetTrackedRepaints):
        (WebCore::FrameView::trackedRepaintRects):

2011-09-26  Antti Koivisto  <antti@apple.com>

        Optimize matching of common pseudo classes
        https://bugs.webkit.org/show_bug.cgi?id=68633

        Reviewed by Dave Hyatt, Darin Adler, Dimitri Glazkov.
        
        :link, :visited and :focus are quite common. They often used as univeral selectors (including in our
        default stylesheet) so we try to match them for all elements in the document. They take always the 
        slow matching path. In addition we match link styles twice due to visited link pseudo style generation
        so the overhead is doubled. As a result substantial portion of our style matching time is spent 
        dealing with these pseudo classes. 
        
        This patch adds new lists to RuleSet for common pseudo class rules. The rules on the lists are only checked
        if the element has approprate type and stat. ases where the rightmost pseudo class can then be rejected immediately.
        We can also enable the fast path checking for the rest of the selector in many cases.
    
        This seems to be >30% progression in selector matching performance with typical style sheets. It saves ~0.9s
        when loading the full HTML5 spec.

        * css/CSSStyleSelector.cpp:
        (WebCore::RuleData::hasRightmostSelectorMatchingHTMLBasedOnRuleHash):
        (WebCore::RuleSet::idRules):
        (WebCore::RuleSet::classRules):
        (WebCore::RuleSet::tagRules):
        (WebCore::RuleSet::shadowPseudoElementRules):
        (WebCore::RuleSet::linkPseudoClassRules):
        (WebCore::RuleSet::visitedPseudoClassRules):
        (WebCore::RuleSet::focusPseudoClassRules):
        (WebCore::RuleSet::universalRules):
        (WebCore::RuleSet::pageRules):
        
            Add a new lists, some stylistic renamings.
    
        (WebCore::CSSStyleSelector::matchRules):
        
            New link and focus checks.

        (WebCore::CSSStyleSelector::matchRulesForList):
        (WebCore::CSSStyleSelector::checkSelector):
        
            Inline the rightmost selector tag checking, skip if unnecessary.
        
        (WebCore::isSelectorMatchingHTMLBasedOnRuleHash):
        
            Common pseudo classes now match based on early filtering (though it is not a hash in this case).

        (WebCore::RuleData::RuleData):
        (WebCore::RuleSet::~RuleSet):
        (WebCore::RuleSet::addRule):
        
            Sort pseudo classes to new lists.
        
        (WebCore::RuleSet::collectFeatures):
        (WebCore::RuleSet::shrinkToFit):
        (WebCore::CSSStyleSelector::matchPageRules):
        * css/SelectorChecker.cpp:
        (WebCore::SelectorChecker::checkSelector):
        
            Adopt to expanded fast path (this is used by querySelectorAll).

        (WebCore::SelectorChecker::fastCheckRightmostSelector):
        (WebCore::SelectorChecker::fastCheckSelector):
        
            Rightmost selector is now checked differently than the rest. RuleSet based selection in CSSStyleSelector
            is equivalent to fastCheckRightmostSelector().
        
        (WebCore::isFastCheckableRelation):
        (WebCore::isFastCheckableMatch):
        (WebCore::isFastCheckableRightmostSelector):
        (WebCore::SelectorChecker::isFastCheckableSelector):
        (WebCore::SelectorChecker::checkOneSelector):
        (WebCore::SelectorChecker::commonPseudoClassSelectorMatches):
        (WebCore::SelectorChecker::isFrameFocused):
        * css/SelectorChecker.h:
        (WebCore::SelectorChecker::isCommonPseudoClassSelector):
        (WebCore::SelectorChecker::linkMatchesVisitedPseudoClass):
        (WebCore::SelectorChecker::matchesFocusPseudoClass):
        (WebCore::SelectorChecker::tagMatches):
        
            Refactor a bunch of shared checks into functions.

2011-09-12  Ryosuke Niwa  <rniwa@webkit.org>

        REGRESSION(r74971): Selection doesn't work correctly in BiDi Text
        https://bugs.webkit.org/show_bug.cgi?id=57340

        Reviewed by Eric Seidel.

        This patch adds the end point adjustment mechanism at bidi boundaries similar to the one NSTextView implements.

        To understand the problem, suppose we have strong RTL letters "ABC" in a LTR block (visually laid out as CBA).

        Per NSTextView convention, logical offsets between each letter is placed as (0)C(2)B(1)A(3). In other words,
        placing the caret visually on the left of CBA yields the position inside the text node of "ABC" at offset 0.
        Likewise, placing it between C and B yields ("ABC", 2), and placing it on the right of CBA yields ("ABC", 3).

        Now suppose a user attempts to select the letter A by a mouse drag from the right of CBA to a point between
        B and A. First, the initial mouse down places the selection's base at ("ABC", 3). Then as the mouse pointer
        moves to a point on the left of A, the selection's extent is set at ("ABC", 1), selecting "BC".

        To mitigate this issue, NSTextView adjusts selection base and extent under certain conditions. In the above
        example, NSTextView detects user's intent and changes the selection's base to ("ABC", 0) temporarily.

        This patch implements a similar trick on WebKit. We adjust the base or the extent when they're at the left
        end or at the right end of a bidi run and the other end is inside of the run. In the above example, the
        base position on the right of A is the right end of a bidi run and the extent position between B and A is
        inside the same run (CBA), so we would adjust the base to be ("ABC", 0) as NSTextView does.

        Take another example abcABC. Note offsets are assigned as (0)a(1)b(2)c(3)C(5)B(4)A(6) When the user starts
        a mouse drag from the right of A to a point between B and A, we adjust the selection base to be ("abcABC", 3)
        because the base is at the right end of a bidi run and the extent is in the same run. We keep the adjustment
        when the mouse pointer moves to a point between C and B. However, when the mouser pointer reaches a point
        between letters b and c, the selection extent is placed at ("abcABC", 2). Because the extent is outside of
        the bidi run started from the selection base, we restore the original base at this point. Had we not done this,
        we'll end up selecting just "c".

        While this algorithm is implemented in FrameSelection::setNonDirectionalSelectionIfNeeded, this patch adds
        various member functions to RenderedPosition to facilitate abstraction around inline boxes and bidi runs.

        Test: editing/selection/select-bidi-run.html

        * editing/FrameSelection.cpp:
        (WebCore::adjustEndpointsAtBidiBoundary): Added. Implements the endpoints adjustment algorithm.
        (WebCore::FrameSelection::setNonDirectionalSelectionIfNeeded): Calls adjustEndpointsAtBidiBoundary, and
        restores the original base as needed.
        * editing/FrameSelection.h:
        * editing/RenderedPosition.cpp:
        (WebCore::RenderedPosition::RenderedPosition):
        (WebCore::RenderedPosition::prevLeafChild): Added to cache prevLeafChild of the current inline box.
        (WebCore::RenderedPosition::nextLeafChild): Ditto for nextLeafChild.
        (WebCore::RenderedPosition::isEquivalent): Compares two RenderedPositions considering neighboring inline boxes
        so that the rightmost position in a box and the leftmost position in the following box is considered equal.
        (WebCore::RenderedPosition::bidiLevelOnLeft): Added. Returns the bidi level of the run on the left. We can't
        add a generic bidiLevel to this class because it'll be ambiguous at bidi boundaries.
        (WebCore::RenderedPosition::bidiLevelOnRight): Ditto for the run on the right.
        (WebCore::RenderedPosition::leftBoundaryOfBidiRun): Added.
        (WebCore::RenderedPosition::rightBoundaryOfBidiRun): Added.
        (WebCore::RenderedPosition::atLeftBoundaryOfBidiRun): Added.
        (WebCore::RenderedPosition::atRightBoundaryOfBidiRun): Added.
        (WebCore::RenderedPosition::positionAtLeftBoundaryOfBiDiRun): Returns Position at the left edge of a bidi run
        if RenderedPosition is at such a position. Asserts atLeftBoundaryOfBidiRun.
        (WebCore::RenderedPosition::positionAtRightBoundaryOfBiDiRun): Ditto for the right edge.
        * editing/RenderedPosition.h:
        (WebCore::RenderedPosition::atLeftBoundaryOfBidiRun): Added.
        (WebCore::RenderedPosition::atRightBoundaryOfBidiRun): Added.
        (WebCore::RenderedPosition::atLeftmostOffsetInBox): Added.
        (WebCore::RenderedPosition::atRightmostOffsetInBox): Added.
        (WebCore::RenderedPosition::uncachedInlineBox): Added. We can't use a static const variable because gcc thinks
        reinterpret_cast<InlineBox*>(1) is not an integral value.
        (WebCore::RenderedPosition::RenderedPosition):
        * editing/VisibleSelection.h:
        (WebCore::VisibleSelection::visibleBase): Added.
        (WebCore::VisibleSelection::visibleExtent): Added.
        * page/EventHandler.cpp:
        (WebCore::EventHandler::updateSelectionForMouseDrag):

2011-09-26  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r95256.
        http://trac.webkit.org/changeset/95256
        https://bugs.webkit.org/show_bug.cgi?id=68814

        Temporary CRASH calls no longer needed (Requested by enne on
        #webkit).

        * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
        (WebCore::CCLayerTreeHost::commitTo):

2011-09-26  Mark Rowe  <mrowe@apple.com>

        <http://webkit.org/b/68809> IconDatabase::syncThreadMainLoop can assert if wakeSyncThread is called before thread starts executing

        If wakeSyncThread is called before syncThreadMainLoop starts executing then m_syncThreadHasWorkToDo would be set
        while executing the body of the sync thread loop, causing us to skip blocking on the condition variable. This would
        lead to us hitting the assertion failure due to m_disabledSuddenTerminationForSyncThread being false, unless the main
        thread happened to call wakeSyncThread a second time while the first loop iteration was executing.

        Reviewed by Anders Carlsson.

        * loader/icon/IconDatabase.cpp:
        (WebCore::IconDatabase::syncThreadMainLoop): Clear m_syncThreadHasWorkToDo to indicate that we're about to perform
        all pending work.

2011-09-26  Antaryami Pandia  <antaryami.pandia@motorola.com>

        Groove/inset/outset borders show solid if the color is black.
        https://bugs.webkit.org/show_bug.cgi?id=58608

        Reviewed by Simon Fraser.

        Lightened the border side colors when drawing borders with styles as
        Outset/Inset/Groove/Ridge.

        Tests: fast/borders/border-groove.html
               fast/borders/border-inset.html
               fast/borders/border-outset.html
               fast/borders/border-ridge.html

        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::drawLineForBoxSide):

2011-09-26  Abhishek Arya  <inferno@chromium.org>

        Delete retired custom font data only on document
        destruction, and not on recalc style.
        https://bugs.webkit.org/show_bug.cgi?id=68805

        Reviewed by Dave Hyatt.

        Test: fast/text/custom-font-data-crash.html

        * dom/Document.cpp:
        (WebCore::Document::recalcStyle):

2011-09-23  Adrienne Walker  <enne@google.com>

        [chromium] Update VideoLayerChromium textures after texture resources are reclaimed
        https://bugs.webkit.org/show_bug.cgi?id=68742

        Reviewed by James Robinson.

        If video textures are reclaimed (such as during a visibility change on
        a tab), the dirty rect for the layer is empty and it skips out of
        updating compositor resources, leaving the video textures invalid.
        Instead, check the textures here to make sure they're still valid
        first before early out so that they can get reupdated if necessary.

        Additionally, fix a small bug in pushPropertiesTo where 1 plane RGB
        videos would not get drawn because all 3 planes didn't have valid
        textures.

        Test: compositing/video-page-visibility.html

        * platform/graphics/chromium/VideoLayerChromium.cpp:
        (WebCore::VideoLayerChromium::VideoLayerChromium):
        (WebCore::VideoLayerChromium::cleanupResources):
        (WebCore::VideoLayerChromium::updateCompositorResources):
        (WebCore::VideoLayerChromium::pushPropertiesTo):
        (WebCore::VideoLayerChromium::setLayerTreeHost):
        (WebCore::VideoLayerChromium::texturesValid):
        * platform/graphics/chromium/VideoLayerChromium.h:

2011-09-26  Pavel Feldman  <pfeldman@google.com>

        Web Inspector: introduce protocol backwards compatibility validator.
        https://bugs.webkit.org/show_bug.cgi?id=68800

        Reviewed by Yury Semikhatsky.

        * inspector/Inspector.json:
        * inspector/Inspector.draft-01.json: Copied from Source/WebCore/inspector/Inspector.json.
        * inspector/validate-protocol-compatibility: Added.

2011-09-26  Andreas Kling  <kling@webkit.org>

        [Qt] Unused variable in QNetworkReplyHandler::sendNetworkRequest.
        https://bugs.webkit.org/show_bug.cgi?id=68798

        Reviewed by Noam Rosenthal.

        * platform/network/qt/QNetworkReplyHandler.cpp:
        (WebCore::QNetworkReplyHandler::sendNetworkRequest):

2011-09-26  Ilya Tikhonovsky  <loislo@chromium.org>

        Second unreviewed build fix for r95941

        * inspector/InspectorInstrumentation.cpp:
        (WebCore::InspectorInstrumentation::willCallFunctionImpl):

2011-09-26  Ilya Tikhonovsky  <loislo@chromium.org>

        Unreviewed build fix for webkit builds after r95941.

        * inspector/InspectorInstrumentation.cpp:
        (WebCore::InspectorInstrumentation::willCallFunctionImpl):

2011-09-26  Andrey Kosyakov  <caseq@chromium.org>

        Web Inspector: [Extensions API] allow resources to hook on click on resource links
        https://bugs.webkit.org/show_bug.cgi?id=68528

        Reviewed by Yury Semikhatsky.

        * WebCore.gypi:
        * WebCore.vcproj/WebCore.vcproj:
        * inspector/front-end/ExtensionAPI.js:
        (injectedExtensionAPI.Console.prototype.get Severity):
        (injectedExtensionAPI.Panels.prototype.create):
        (injectedExtensionAPI.Panels.prototype.setOpenResourceHandler.else.callbackWrapper):
        (injectedExtensionAPI.Panels.prototype.setOpenResourceHandler):
        (injectedExtensionAPI.ExtensionServerClient.prototype.hasHandler):
        (injectedExtensionAPI.ExtensionServerClient.prototype.deregisterHandler):
        * inspector/front-end/ExtensionServer.js:
        (WebInspector.ExtensionServer):
        (WebInspector.ExtensionServer.prototype._onSetOpenResourceHandler):
        (WebInspector.ExtensionServer.prototype._handleAnchorClicked):
        (WebInspector.ExtensionServer.prototype._addExtensions):
        (WebInspector.ExtensionServer.prototype._addExtension):
        (WebInspector.ExtensionServer.prototype._registerExtension):
        * inspector/front-end/SettingsScreen.js:
        (WebInspector.SettingsScreen):
        (WebInspector.SettingsScreen.prototype._createCustomSetting):
        * inspector/front-end/WebKit.qrc:
        * inspector/front-end/helpScreen.css:
        (.help-content select):
        (.help-content select:disabled):
        (.help-content option):
        * inspector/front-end/inspector.html:
        * inspector/front-end/inspector.js:
        (WebInspector.set attached):
        (WebInspector._showAnchorLocation):

2011-09-23  Ilya Tikhonovsky  <loislo@chromium.org>

        Web Inspector: Timeline: record root event for the function calls enforced by console eval.
        https://bugs.webkit.org/show_bug.cgi?id=68695

        In a complex web application developer might want to timeline a specific piece of code.

        In this case he can do the next steps:
        1) start timeline;
        2) eval a command in console;
        3) stop timeline.

        I think it'd be nice to have a root event for the all the events that happened as the result of such eval.

        Reviewed by Yury Semikhatsky.

        Test: inspector/timeline/timeline-injected-script-eval.html

        * bindings/v8/ScriptFunctionCall.cpp:
        * inspector/InjectedScript.cpp:
        (WebCore::InjectedScript::makeCall):
        * inspector/InspectorInstrumentation.cpp:
        (WebCore::InspectorInstrumentation::willCallFunctionImpl):

2011-09-26  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Texmap][Qt] Enable TextureMapperGL in platforms where BGRA is not present
        https://bugs.webkit.org/show_bug.cgi?id=65473

        Reviewed by Andreas Kling.

        For now, swap RGBA->BGRA in software if we're in OpenGL ES 2.
        We do that by iterating on the pixels and manually swapping each pixel's red and blue
        values. This can be done faster with shaders, but for now this is a working solution
        for platforms without BGRA support.

        No new tests. Existing layout tests cover this.

        * platform/graphics/opengl/TextureMapperGL.cpp:
        (WebCore::BitmapTextureGL::endPaint):
        * platform/graphics/opengl/TextureMapperGL.h:
        * platform/graphics/qt/TextureMapperQt.cpp:
        (WebCore::RGBA32PremultimpliedBufferQt::swapRGB):

2011-09-26  Sergio Villar Senin  <svillar@igalia.com>

        [GTK] Fix coding style bits in ResourceHandleSoup.cpp
        https://bugs.webkit.org/show_bug.cgi?id=68634

        Reviewed by Martin Robinson.

        No new tests needed.

        * platform/network/soup/ResourceHandleSoup.cpp:
        (WebCore::ResourceHandle::defaultSession):

2011-09-26  James Robinson  <jamesr@chromium.org>

        [mac] Timestamp parameter to requestAnimationFrame is busted in USE(REQUEST_ANIMATION_FRAME_TIMER) path
        https://bugs.webkit.org/show_bug.cgi?id=68769

        Reviewed by Simon Fraser.

        Convert the time parameter from double to DOMTimeStamp using convertSecondsToDOMTimeStamp rather than relying on
        implicit double->long conversion, which ignores the units of the value.

        Test: fast/animation/request-animation-frame-timestamps-advance.html

        * dom/ScriptedAnimationController.cpp:
        (WebCore::ScriptedAnimationController::animationTimerFired):

2011-09-25  Mark Hahnenberg  <mhahnenberg@apple.com>

        Add custom vtable struct to ClassInfo struct
        https://bugs.webkit.org/show_bug.cgi?id=68567

        Reviewed by Oliver Hunt.

        No new tests.

        Added CREATE_METHOD_TABLE macro to generate the custom vtable for the 
        specified class in its ClassInfo.  Also added to it the first function to use 
        this macro, visitChildren.  This is part of the process of getting rid of all 
        C++ virtual methods in JSCell.  Eventually all virtual functions in JSCell 
        that can't easily be converted to non-virtual functions will be put into 
        this custom vtable structure.

        * bindings/js/JSAudioConstructor.cpp:
        * bindings/js/JSDOMGlobalObject.cpp:
        * bindings/js/JSDOMWindowBase.cpp:
        * bindings/js/JSDOMWindowShell.cpp:
        * bindings/js/JSImageConstructor.cpp:
        * bindings/js/JSImageDataCustom.cpp:
        (WebCore::toJS):
        * bindings/js/JSOptionConstructor.cpp:
        * bindings/js/JSWorkerContextBase.cpp:

        Changed the bindings generator to add the call to the CREATE_METHOD_TABLE macro where
        necessary.
        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateImplementation):
        (GenerateConstructorDefinition):
        * bindings/scripts/test/JS/JSTestInterface.cpp:
        * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
        * bindings/scripts/test/JS/JSTestObj.cpp:
        * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
        * bridge/c/CRuntimeObject.cpp:
        * bridge/c/c_instance.cpp:
        * bridge/jni/jsc/JavaInstanceJSC.cpp:
        * bridge/jni/jsc/JavaRuntimeObject.cpp:
        * bridge/objc/ObjCRuntimeObject.mm:
        * bridge/objc/objc_instance.mm:
        * bridge/objc/objc_runtime.mm:
        * bridge/qt/qt_instance.cpp:
        * bridge/qt/qt_pixmapruntime.cpp:
        * bridge/qt/qt_runtime.cpp:
        * bridge/runtime_array.cpp:
        * bridge/runtime_method.cpp:
        * bridge/runtime_object.cpp:

2011-09-25  Eunmi Lee  <eunmi15.lee@samsung.com>

        [EFL] Move GtkWidgetBackingStoreCairo to the cairo directory and modify to use in the EFL.
        https://bugs.webkit.org/show_bug.cgi?id=63502

        Reviewed by Martin Robinson.

        The gtk/GtkWidgetBackingStoreCairo.cpp is moved to the cairo/WidgetBackingStoreCairo.cpp and
        some codes for EFL are added.
        WidgetBackingStoreCairo creates cairo_image_surface and has a role to copy reusable area
        when scrolling. So, it will be used in the WebKit2 EFL port's BackingStore.

        * CMakeListsEfl.txt:
        * GNUmakefile.list.am:
        * platform/cairo/WidgetBackingStore.h:
        * platform/cairo/WidgetBackingStoreCairo.cpp: Renamed from Source/WebCore/platform/gtk/GtkWidgetBackingStoreCairo.cpp.
        (WebCore::createSurfaceForBackingStore):
        (WebCore::WidgetBackingStorePrivate::create):
        (WebCore::WidgetBackingStorePrivate::WidgetBackingStorePrivate):
        (WebCore::WidgetBackingStore::create):
        (WebCore::WidgetBackingStore::WidgetBackingStore):
        (WebCore::WidgetBackingStore::~WidgetBackingStore):
        (WebCore::WidgetBackingStore::cairoSurface):
        (WebCore::WidgetBackingStore::scroll):
        * platform/gtk/GtkWidgetBackingStoreX11.cpp:

2011-09-25  Adam Barth  <abarth@webkit.org>

        Finish removing PLATFORM(BREWMP) by removing associated code
        https://bugs.webkit.org/show_bug.cgi?id=68779

        Reviewed by Sam Weinig.

        When Geoffrey Garen removed PLATFORM(BREWMP) in
        http://trac.webkit.org/changeset/95555, he did not remove all the
        associated code.  This completes the work started in r95555 by removing
        all the code assoicated with PLATFORM(BREWMP).

        * WebCore.gyp/WebCore.gyp:
        * WebCore.gypi:
        * bindings/js/ScriptControllerBrew.cpp: Removed.
        * editing/brew: Removed.
        * editing/brew/EditorBrew.cpp: Removed.
        * gyp/WebCore.gyp:
        * page/brew: Removed.
        * page/brew/ChromeClientBrew.h: Removed.
        * page/brew/DragControllerBrew.cpp: Removed.
        * page/brew/EventHandlerBrew.cpp: Removed.
        * page/brew/FrameBrew.cpp: Removed.
        * platform/brew: Removed.
        * platform/brew/ClipboardBrew.cpp: Removed.
        * platform/brew/ClipboardBrew.h: Removed.
        * platform/brew/ContextMenuBrew.cpp: Removed.
        * platform/brew/ContextMenuItemBrew.cpp: Removed.
        * platform/brew/CursorBrew.cpp: Removed.
        * platform/brew/DragDataBrew.cpp: Removed.
        * platform/brew/EventLoopBrew.cpp: Removed.
        * platform/brew/FileSystemBrew.cpp: Removed.
        * platform/brew/KURLBrew.cpp: Removed.
        * platform/brew/LanguageBrew.cpp: Removed.
        * platform/brew/LocalizedStringsBrew.cpp: Removed.
        * platform/brew/LoggingBrew.cpp: Removed.
        * platform/brew/MIMETypeRegistryBrew.cpp: Removed.
        * platform/brew/PasteboardBrew.cpp: Removed.
        * platform/brew/PlatformKeyboardEventBrew.cpp: Removed.
        * platform/brew/PlatformMouseEventBrew.cpp: Removed.
        * platform/brew/PlatformTouchEventBrew.cpp: Removed.
        * platform/brew/PlatformTouchPointBrew.cpp: Removed.
        * platform/brew/PopupMenuBrew.cpp: Removed.
        * platform/brew/PopupMenuBrew.h: Removed.
        * platform/brew/SSLKeyGeneratorBrew.cpp: Removed.
        * platform/brew/ScreenBrew.cpp: Removed.
        * platform/brew/ScrollbarThemeBrew.cpp: Removed.
        * platform/brew/ScrollbarThemeBrew.h: Removed.
        * platform/brew/SearchPopupMenuBrew.cpp: Removed.
        * platform/brew/SearchPopupMenuBrew.h: Removed.
        * platform/brew/SharedBufferBrew.cpp: Removed.
        * platform/brew/SharedTimerBrew.cpp: Removed.
        * platform/brew/SoundBrew.cpp: Removed.
        * platform/brew/SystemTimeBrew.cpp: Removed.
        * platform/brew/TemporaryLinkStubs.cpp: Removed.
        * platform/brew/WidgetBrew.cpp: Removed.
        * platform/graphics/brew: Removed.
        * platform/graphics/brew/IconBrew.cpp: Removed.
        * platform/graphics/brew/ImageBrew.cpp: Removed.
        * platform/graphics/brew/IntPointBrew.cpp: Removed.
        * platform/graphics/brew/IntSizeBrew.cpp: Removed.
        * platform/network/brew: Removed.
        * platform/network/brew/DNSBrew.cpp: Removed.
        * platform/network/brew/SocketStreamError.h: Removed.
        * platform/network/brew/SocketStreamHandle.h: Removed.
        * platform/network/brew/SocketStreamHandleBrew.cpp: Removed.
        * platform/network/brew/SocketStreamHandlePrivate.h: Removed.
        * platform/text/brew: Removed.
        * platform/text/brew/TextBoundariesBrew.cpp: Removed.
        * platform/text/brew/TextBreakIteratorBrew.cpp: Removed.
        * platform/text/brew/TextCodecBrew.cpp: Removed.
        * platform/text/brew/TextCodecBrew.h: Removed.

2011-09-25  Kentaro Hara  <haraken@chromium.org>

        Implement a CloseEvent constructor for JSC
        https://bugs.webkit.org/show_bug.cgi?id=68340

        Reviewed by Oliver Hunt.

        The spec of the CloseEvent constructor is here:
        http://dev.w3.org/html5/websockets/#closeevent

        Test: fast/events/constructors/close-event-constructor.html

        * bindings/generic/EventConstructors.h: Added a definition for the CloseEvent constructor.
        * bindings/js/JSEventConstructors.cpp: Added #includes for CloseEvent.
        * websockets/CloseEvent.h: Added a definition for CloseEventInit.
        (WebCore::CloseEventInit::CloseEventInit):
        (WebCore::CloseEvent::create):
        (WebCore::CloseEvent::CloseEvent):
        * websockets/CloseEvent.idl: Makes CloseEvent constructible.

2011-09-25  Mark Rowe  <mrowe@apple.com>

        <rdar://problem/10177824> IconDatabase’s use of ThreadCondition leads to assertion failures in the face of spurious wakeups

        It's possible for ThreadCondition::wait to return spuriously without the condition having been signaled.
        When that happens we should immediately return to waiting rather than doing our normal work, as some of that
        work relies on wakeSyncThread having been called to signal the condition.

        Reviewed by Sam Weinig.

        * loader/icon/IconDatabase.cpp:
        (WebCore::IconDatabase::IconDatabase):
        (WebCore::IconDatabase::wakeSyncThread): Note that we have work for the sync thread to do.
        (WebCore::IconDatabase::syncThreadMainLoop): If we were woken with no work to do, immediately
        go back to waiting on the condition variable. Otherwise, reset m_syncThreadHasWorkToDo and then
        do that work. We also switch to moving m_disabledSuddenTerminationForSyncThread immediately in to
        our local shouldReenableSuddenTermination variable since it can be updated by other threads while
        we don't hold the lock. This makes it inappropriate to make assumptions about its value after dropping
        and reacquiring the lock.
        * loader/icon/IconDatabase.h:

2011-09-25  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/10156263> ASSERT in WebCore::FrameView::scheduleRelayoutOfSubtree

        Reviewed by Sam Weinig.

        Test: fast/dynamic/subtree-unrooted.html

        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::scheduleRelayout): Replaced the check that the renderer is parented,
        which was added in r21162, with a check that it is “rooted”.

2011-09-24  Abhishek Arya  <inferno@chromium.org>

        Issues with merging block children of a ruby
        base with another ruby base having inline children. 
        https://bugs.webkit.org/show_bug.cgi?id=66124

        Reviewed by Dan Bernstein.

        Test: fast/ruby/ruby-base-merge-block-children-crash.html

        * rendering/RenderRubyBase.cpp:
        (WebCore::RenderRubyBase::moveInlineChildren): add a firstChild()
        check to prevent empty anonymous block addition, just like
        moveBlockChildren method.
        * rendering/RenderRubyBase.cpp:
        (WebCore::RenderRubyBase::moveBlockChildren): This was incorrectly
        doing optimizations to see if current ruby base has only inline
        children before beforeChild and then trying to take out them from 
        their parent anonymous blocks. The problem is those inlines could
        be split and have continuations because of encountering a block
        inside inline flow. In those cases, we cannot take the inline out.
        So, we should just make children non-inline in the destination
        block and transfer the children as it-is.
        * rendering/RenderRubyBase.h: remove unncessary functions.

2011-09-25  Adam Barth  <abarth@webkit.org>

        Remove PLATFORM(HAIKU) and associated code
        https://bugs.webkit.org/show_bug.cgi?id=68774

        Reviewed by Sam Weinig.

        As discussed on webkit-dev, the Haiku port has been inactive for over a
        year.  A year and a half ago, we discussed removing the port, but folks
        said they planned to work on it more.  That work does not appear to
        have happened in the intervening time.

        * WebCore.gyp/WebCore.gyp:
        * WebCore.gypi:
        * bindings/js/ScriptControllerHaiku.cpp: Removed.
        * editing/haiku: Removed.
        * editing/haiku/EditorHaiku.cpp: Removed.
        * gyp/WebCore.gyp:
        * loader/cache/CachedFont.cpp:
        * page/EventHandler.cpp:
        (WebCore::EventHandler::eventInvertsTabsToLinksClientCallResult):
        * page/haiku: Removed.
        * page/haiku/DragControllerHaiku.cpp: Removed.
        * page/haiku/EventHandlerHaiku.cpp: Removed.
        * page/haiku/FrameHaiku.cpp: Removed.
        * platform/ContextMenuItem.h:
        * platform/Cursor.h:
        * platform/DragData.h:
        * platform/DragImage.h:
        * platform/PlatformKeyboardEvent.h:
        * platform/PlatformMenuDescription.h:
        * platform/PlatformMouseEvent.h:
        * platform/Widget.h:
        * platform/graphics/BitmapImage.h:
        * platform/graphics/Color.h:
        * platform/graphics/FloatPoint.h:
        * platform/graphics/FloatRect.h:
        * platform/graphics/Gradient.h:
        * platform/graphics/GraphicsContext.cpp:
        * platform/graphics/GraphicsContext.h:
        * platform/graphics/ImageBufferData.h:
        * platform/graphics/ImageSource.h:
        * platform/graphics/IntPoint.h:
        * platform/graphics/IntRect.h:
        * platform/graphics/IntSize.h:
        * platform/graphics/Path.h:
        * platform/graphics/Pattern.h:
        * platform/graphics/SimpleFontData.h:
        * platform/graphics/haiku: Removed.
        * platform/graphics/haiku/ColorHaiku.cpp: Removed.
        * platform/graphics/haiku/FloatPointHaiku.cpp: Removed.
        * platform/graphics/haiku/FloatRectHaiku.cpp: Removed.
        * platform/graphics/haiku/FontCacheHaiku.cpp: Removed.
        * platform/graphics/haiku/FontCustomPlatformData.cpp: Removed.
        * platform/graphics/haiku/FontCustomPlatformData.h: Removed.
        * platform/graphics/haiku/FontHaiku.cpp: Removed.
        * platform/graphics/haiku/FontPlatformData.h: Removed.
        * platform/graphics/haiku/GlyphPageTreeNodeHaiku.cpp: Removed.
        * platform/graphics/haiku/GradientHaiku.cpp: Removed.
        * platform/graphics/haiku/GraphicsContextHaiku.cpp: Removed.
        * platform/graphics/haiku/IconHaiku.cpp: Removed.
        * platform/graphics/haiku/ImageBufferDataHaiku.h: Removed.
        * platform/graphics/haiku/ImageBufferHaiku.cpp: Removed.
        * platform/graphics/haiku/ImageHaiku.cpp: Removed.
        * platform/graphics/haiku/IntPointHaiku.cpp: Removed.
        * platform/graphics/haiku/IntRectHaiku.cpp: Removed.
        * platform/graphics/haiku/IntSizeHaiku.cpp: Removed.
        * platform/graphics/haiku/PathHaiku.cpp: Removed.
        * platform/graphics/haiku/SimpleFontDataHaiku.cpp: Removed.
        * platform/graphics/haiku/StillImageHaiku.cpp: Removed.
        * platform/graphics/haiku/StillImageHaiku.h: Removed.
        * platform/haiku: Removed.
        * platform/haiku/ClipboardHaiku.cpp: Removed.
        * platform/haiku/ClipboardHaiku.h: Removed.
        * platform/haiku/ContextMenuHaiku.cpp: Removed.
        * platform/haiku/ContextMenuItemHaiku.cpp: Removed.
        * platform/haiku/CookieJarHaiku.cpp: Removed.
        * platform/haiku/CursorHaiku.cpp: Removed.
        * platform/haiku/DragDataHaiku.cpp: Removed.
        * platform/haiku/DragImageHaiku.cpp: Removed.
        * platform/haiku/EventLoopHaiku.cpp: Removed.
        * platform/haiku/FileSystemHaiku.cpp: Removed.
        * platform/haiku/LocalizedStringsHaiku.cpp: Removed.
        * platform/haiku/LoggingHaiku.cpp: Removed.
        * platform/haiku/MIMETypeRegistryHaiku.cpp: Removed.
        * platform/haiku/PasteboardHaiku.cpp: Removed.
        * platform/haiku/PlatformKeyboardEventHaiku.cpp: Removed.
        * platform/haiku/PlatformMouseEventHaiku.cpp: Removed.
        * platform/haiku/PlatformWheelEventHaiku.cpp: Removed.
        * platform/haiku/PopupMenuHaiku.cpp: Removed.
        * platform/haiku/PopupMenuHaiku.h: Removed.
        * platform/haiku/RenderThemeHaiku.cpp: Removed.
        * platform/haiku/RenderThemeHaiku.h: Removed.
        * platform/haiku/ScreenHaiku.cpp: Removed.
        * platform/haiku/ScrollbarThemeHaiku.cpp: Removed.
        * platform/haiku/ScrollbarThemeHaiku.h: Removed.
        * platform/haiku/SearchPopupMenuHaiku.cpp: Removed.
        * platform/haiku/SearchPopupMenuHaiku.h: Removed.
        * platform/haiku/SharedBufferHaiku.cpp: Removed.
        * platform/haiku/SharedTimerHaiku.cpp: Removed.
        * platform/haiku/SoundHaiku.cpp: Removed.
        * platform/haiku/TemporaryLinkStubs.cpp: Removed.
        * platform/haiku/WidgetHaiku.cpp: Removed.
        * platform/image-decoders/haiku: Removed.
        * platform/image-decoders/haiku/ImageDecoderHaiku.cpp: Removed.
        * platform/text/UnicodeRange.h:
        * platform/text/haiku: Removed.
        * platform/text/haiku/TextBreakIteratorInternalICUHaiku.cpp: Removed.

2011-09-25  Adam Barth  <abarth@webkit.org>

        Attempted build fixes for GTK and Qt.

        * GNUmakefile.list.am:
        * WebCore.pro:

2011-09-24  Adam Barth  <abarth@webkit.org>

        Always enable ENABLE(OFFLINE_WEB_APPLICATIONS)
        https://bugs.webkit.org/show_bug.cgi?id=68767

        Reviewed by Eric Seidel.

        As discussed on webkit-dev, almost everyone has this enable turned on
        and this feature is unlikely to be removed from the web platform given
        its popularity.

        * CMakeLists.txt:
        * Configurations/FeatureDefines.xcconfig:
        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * WebCore.exp.in:
        * WebCore.pro:
        * bindings/cpp/WebDOMEventTarget.cpp:
        (toWebKit):
        * bindings/js/JSEventTarget.cpp:
        (WebCore::toJS):
        (WebCore::toEventTarget):
        * bindings/v8/V8DOMWrapper.cpp:
        (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
        * dom/EventTarget.cpp:
        (WebCore::EventTarget::toDOMApplicationCache):
        * dom/EventTarget.h:
        * features.pri:
        * history/PageCache.cpp:
        (WebCore::logCanCacheFrameDecision):
        (WebCore::PageCache::canCachePageContainingThisFrame):
        * html/HTMLHtmlElement.cpp:
        (WebCore::HTMLHtmlElement::insertedByParser):
        * html/HTMLHtmlElement.h:
        * html/HTMLMediaElement.cpp:
        (WebCore::createFileURLForApplicationCacheResource):
        (WebCore::HTMLMediaElement::loadResource):
        * html/ImageDocument.cpp:
        (WebCore::ImageDocument::createDocumentStructure):
        * html/MediaDocument.cpp:
        (WebCore::MediaDocumentParser::createDocumentStructure):
        * html/PluginDocument.cpp:
        (WebCore::PluginDocumentParser::createDocumentStructure):
        * html/parser/HTMLConstructionSite.cpp:
        (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
        * inspector/InspectorApplicationCacheAgent.cpp:
        * inspector/InspectorApplicationCacheAgent.h:
        * inspector/InspectorController.cpp:
        (WebCore::InspectorController::InspectorController):
        (WebCore::InspectorController::connectFrontend):
        (WebCore::InspectorController::disconnectFrontend):
        * inspector/InspectorController.h:
        * inspector/InspectorInstrumentation.cpp:
        (WebCore::InspectorInstrumentation::updateApplicationCacheStatusImpl):
        * inspector/InspectorInstrumentation.h:
        (WebCore::InspectorInstrumentation::networkStateChanged):
        (WebCore::InspectorInstrumentation::updateApplicationCacheStatus):
        * inspector/InstrumentingAgents.h:
        (WebCore::InstrumentingAgents::InstrumentingAgents):
        (WebCore::InstrumentingAgents::setInspectorApplicationCacheAgent):
        * inspector/WorkerInspectorController.cpp:
        (WebCore::WorkerInspectorController::connectFrontend):
        * inspector/generate-inspector-idl:
        * loader/DocumentLoader.cpp:
        (WebCore::DocumentLoader::DocumentLoader):
        (WebCore::DocumentLoader::mainReceivedError):
        (WebCore::DocumentLoader::stopLoading):
        (WebCore::DocumentLoader::detachFromFrame):
        (WebCore::DocumentLoader::handledOnloadEvents):
        * loader/DocumentLoader.h:
        (WebCore::DocumentLoader::applicationCacheHost):
        * loader/EmptyClients.h:
        (WebCore::EmptyChromeClient::reachedApplicationCacheOriginQuota):
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::loadResourceSynchronously):
        * loader/MainResourceLoader.cpp:
        (WebCore::MainResourceLoader::willSendRequest):
        (WebCore::MainResourceLoader::didReceiveResponse):
        (WebCore::MainResourceLoader::didReceiveData):
        (WebCore::MainResourceLoader::didFinishLoading):
        (WebCore::MainResourceLoader::didFail):
        (WebCore::MainResourceLoader::load):
        * loader/ResourceLoader.cpp:
        (WebCore::ResourceLoader::start):
        (WebCore::ResourceLoader::willSendRequest):
        (WebCore::ResourceLoader::didSendData):
        (WebCore::ResourceLoader::didReceiveResponse):
        (WebCore::ResourceLoader::didReceiveData):
        (WebCore::ResourceLoader::didFinishLoading):
        (WebCore::ResourceLoader::didFail):
        (WebCore::ResourceLoader::wasBlocked):
        (WebCore::ResourceLoader::cannotShowURL):
        (WebCore::ResourceLoader::shouldUseCredentialStorage):
        (WebCore::ResourceLoader::willCacheResponse):
        * loader/ResourceLoader.h:
        * loader/appcache/ApplicationCache.cpp:
        * loader/appcache/ApplicationCache.h:
        * loader/appcache/ApplicationCacheGroup.cpp:
        * loader/appcache/ApplicationCacheGroup.h:
        * loader/appcache/ApplicationCacheHost.cpp:
        * loader/appcache/ApplicationCacheHost.h:
        * loader/appcache/ApplicationCacheResource.cpp:
        * loader/appcache/ApplicationCacheResource.h:
        * loader/appcache/ApplicationCacheStorage.cpp:
        * loader/appcache/ApplicationCacheStorage.h:
        * loader/appcache/DOMApplicationCache.cpp:
        * loader/appcache/DOMApplicationCache.h:
        * loader/appcache/DOMApplicationCache.idl:
        * loader/appcache/ManifestParser.cpp:
        (WebCore::parseManifest):
        * loader/appcache/ManifestParser.h:
        * loader/chromium/ResourceLoaderChromium.cpp:
        (WebCore::ResourceLoader::didDownloadData):
        * page/ChromeClient.h:
        * page/DOMWindow.cpp:
        (WebCore::DOMWindow::clear):
        (WebCore::DOMWindow::applicationCache):
        * page/DOMWindow.h:
        (WebCore::DOMWindow::optionalApplicationCache):
        * page/DOMWindow.idl:
        * xml/parser/XMLDocumentParserLibxml2.cpp:
        (WebCore::XMLDocumentParser::startElementNs):
        * xml/parser/XMLDocumentParserQt.cpp:
        (WebCore::XMLDocumentParser::parseStartElement):

2011-09-24  Adam Barth  <abarth@webkit.org>

        Remove ENABLE(WCSS) and associated code
        https://bugs.webkit.org/show_bug.cgi?id=68759

        Reviewed by Darin Adler.

        As discussed on webkit-dev, we are removing this feature from trunk to
        reduce the number of different configurations.

        * CodeGenerators.pri:
        * GNUmakefile.am:
        * WebCore.pro:
        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseValue):
        * css/CSSParser.h:
        * css/CSSPrimitiveValueMappings.h:
        (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):
        * css/WCSSPropertyNames.in: Removed.
        * css/WCSSValueKeywords.in: Removed.
        * features.pri:
        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::HTMLInputElement):
        * html/HTMLInputElement.h:
        * html/TextFieldInputType.cpp:
        (WebCore::TextFieldInputType::sanitizeValue):
        (WebCore::TextFieldInputType::handleBeforeTextInsertedEvent):
        * rendering/RenderMarquee.cpp:
        (WebCore::RenderMarquee::start):
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::createObject):
        * rendering/style/RenderStyleConstants.h:

2011-09-24  Young Han Lee  <joybro@company100.net>

        SVGAnimation does not support 'values' for from-to animations
        https://bugs.webkit.org/show_bug.cgi?id=64859

        Reviewed by Dirk Schulze.

        If from-to animation have discrete calc-mode and have a 'keyTimes' list, values of
        the keyTimes indicate the begin and the end of the animation respectively.[1][2]

        When keyTimes is given, calculate the progress percentage of the animation with it
        even for from-to animation.

        [1] http://www.w3.org/TR/SVG/animate.html#ValueAttributes
        [2] http://www.w3.org/TR/2001/REC-smil-animation-20010904/#AnimFuncValues

        Test: svg/animations/animate-from-to-keyTimes.html

        * svg/SVGAnimationElement.cpp:
        (WebCore::SVGAnimationElement::calculatePercentForFromTo):
        (WebCore::SVGAnimationElement::updateAnimation):
        * svg/SVGAnimationElement.h:

2011-09-23  Chris Fleizach  <cfleizach@apple.com>

        WebKit does not expose AXPlaceholder value on password fields
        https://bugs.webkit.org/show_bug.cgi?id=68745

        Reviewed by Oliver Hunt.

        * accessibility/mac/WebAccessibilityObjectWrapper.mm:
        (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):

2011-09-23  Mark Rowe  <mrowe@apple.com>

        Fix the build.

        * loader/CrossOriginAccessControl.cpp:
        (WebCore::passesAccessControlCheck): Get rid of the exit-time destructor.

2011-09-23  Adam Barth  <abarth@webkit.org>

        Canvas security checks show up on HTML5GamingTest benchmark
        https://bugs.webkit.org/show_bug.cgi?id=68743

        Reviewed by Oliver Hunt.

        Prior to this patch, the canvas security checks took as much as 4% of
        the time on the HTML5GamingTest benchmark:

        http://craftymind.com/factory/guimark2/HTML5GamingTest.html

        This patch uses a couple of AtomicStrings and shuffles around the order
        of the security check to take this down to around 0.1% (which is near
        the noise floor of what I can measure with my profiler).

        * html/canvas/CanvasRenderingContext.cpp:
        (WebCore::CanvasRenderingContext::wouldTaintOrigin):
        * loader/CrossOriginAccessControl.cpp:
        (WebCore::passesAccessControlCheck):

2011-09-23  Justin Novosad  <junov@chromium.org>

        Unwarranted DOM Exception when canvas2D drawImage is called with src
        rect out of bounds
        https://bugs.webkit.org/show_bug.cgi?id=65709

        Reviewed by Oliver Hunt.

        * html/canvas/CanvasRenderingContext2D.cpp:
        (WebCore::CanvasRenderingContext2D::drawImage):
        Return early without throwing an exception if source rectangle is out of 
        bounds to match the spec.

2011-09-23  Lukasz Slachciak  <l.slachciak@samsung.com>

        Printing of notImplemented() when logging enabled.
        https://bugs.webkit.org/show_bug.cgi?id=64590

        Printing of notImplemented() method was enabled on Debug builds only.
        Now it is enabled when logging is enabled.

        Reviewed by Oliver Hunt.

        No new tests because there is no new functionality.

        * platform/NotImplemented.h: Non-debug mode replaced with non-logging mode.

2011-09-23  Mihai Parparita  <mihaip@chromium.org>

        [Chromium] REGRESSION (r95725): Resizing a window doesn't resize the contents
        https://bugs.webkit.org/show_bug.cgi?id=68730

        Reviewed by James Robinson.

        Adds a missing contentsResized() call in ScrollView::setFrameRect.

        Test: fast/dom/Window/window-resize-contents.html

        * p