summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/ChangeLog
diff options
context:
space:
mode:
authorSteve Block <steveblock@google.com>2011-05-06 11:45:16 +0100
committerSteve Block <steveblock@google.com>2011-05-12 13:44:10 +0100
commitcad810f21b803229eb11403f9209855525a25d57 (patch)
tree29a6fd0279be608e0fe9ffe9841f722f0f4e4269 /Source/WebCore/ChangeLog
parent121b0cf4517156d0ac5111caf9830c51b69bae8f (diff)
downloadexternal_webkit-cad810f21b803229eb11403f9209855525a25d57.zip
external_webkit-cad810f21b803229eb11403f9209855525a25d57.tar.gz
external_webkit-cad810f21b803229eb11403f9209855525a25d57.tar.bz2
Merge WebKit at r75315: Initial merge by git.
Change-Id: I570314b346ce101c935ed22a626b48c2af266b84
Diffstat (limited to 'Source/WebCore/ChangeLog')
-rw-r--r--Source/WebCore/ChangeLog17690
1 files changed, 17690 insertions, 0 deletions
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
new file mode 100644
index 0000000..104e6de
--- /dev/null
+++ b/Source/WebCore/ChangeLog
@@ -0,0 +1,17690 @@
+2011-01-07 Adam Barth <abarth@webkit.org>
+
+ Rubber-stamped by Eric Seidel.
+
+ Move WebCore to Source
+ https://bugs.webkit.org/show_bug.cgi?id=52050
+
+ Update project files to understand WebCore's new location. I suspect
+ there will be some follow-up patches after we land this patch.
+
+ * Android.derived.jscbindings.mk:
+ * Android.jscbindings.mk:
+ * Android.v8bindings.mk:
+ * GNUmakefile.am:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.pri:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.vcproj/WebCoreGeneratedCairo.vsprops:
+ * WebCore.vcproj/WebCoreGeneratedCommon.vsprops:
+
+2011-01-07 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51851
+ Implement RenderSVGInlineText::localCaretRect()
+
+ * rendering/svg/RenderSVGInlineText.cpp:
+ (WebCore::RenderSVGInlineText::localCaretRect): Implemented.
+
+2011-01-07 Ryosuke Niwa <rniwa@webkit.org>
+
+ Unreviewed; Added the missing null pointer check for r75293.
+
+ * dom/Document.cpp:
+ (WebCore::Document::adoptNode):
+
+2011-01-07 Stephanie Lewis <slewis@apple.com>
+
+ Reviewed by Geoff Garen.
+
+ <rdar://problem/8649617> Migrate memory tracking from Safari to WebKit
+ https://bugs.webkit.org/show_bug.cgi?id=50799 Add Memory Sampler to WebKit
+
+ Add a sampler for printing off process memory statistics.
+ Export file mode.
+
+ * WebCore.exp.in:
+
+2011-01-06 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ onbeforeunload is broken for framesets
+ https://bugs.webkit.org/show_bug.cgi?id=19418
+
+ Added beforeunload event support for sub frames. WebKit's implementation tries to match
+ that of Internet Explorer as much as possible. beforeunload event is fired for each and
+ every descendent of a frame that is about to navigate.
+
+ When a value other than null is returned by a beforeunload handler, a confirmation dialog
+ is shown for each handler (calls chrome's runBeforeUnloadConfirmPanel) just like it is done
+ for main frames.
+
+ In addition, navigation is forbidden while beforeunload handlers are being called.
+ Setting values to location.href, location.reload, and other means of navigations are thus
+ ignored while beforeunload event handler is being ran, matching Internet Explorer's behavior.
+
+ Because navigation needs to prevented globally, NavigationDisablerForBeforeUnload is added to
+ NavigationScheduler.h, which is instantiated as a RAII object in FrameLoader::shouldClose.
+
+ Tests: fast/events/before-unload-adopt-subframe-to-outside.html
+ fast/events/before-unload-adopt-within-subframes.html
+ fast/events/before-unload-forbidden-navigation.html
+ fast/events/before-unload-in-multiple-subframes.html
+ fast/events/before-unload-in-subframe.html
+ fast/events/before-unload-javascript-navigation.html
+ fast/events/before-unload-remove-and-add-subframe.html
+ fact/events/before-unload-remove-itself.html
+ fast/events/before-unload-with-subframes.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::shouldClose): Calls fireBeforeUnloadEvent on m_frame and m_frame's
+ descendents. Returns true only if every call to fireBeforeUnloadEvent returned true.
+ (WebCore::FrameLoader::fireBeforeUnloadEvent): Fires a beforeunload event and calls
+ chrome's runBeforeUnloadConfirmPanel as needed.
+ (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Calls shouldClose for all frames.
+ * loader/FrameLoader.h:
+ * loader/NavigationScheduler.cpp:
+ (WebCore::NavigationScheduler::shouldScheduleNavigation): Checks the nullity of Page and calls
+ NavigationDisablerForBeforeUnload::isNavigationAllowed when url is not javascript scheme.
+ (WebCore::NavigationScheduler::scheduleRedirect): Calls shouldScheduleNavigation.
+ (WebCore::NavigationScheduler::scheduleLocationChange): Ditto.
+ (WebCore::NavigationScheduler::scheduleRefresh): Ditto.
+ (WebCore::NavigationScheduler::scheduleHistoryNavigation): Ditto.
+ * loader/NavigationScheduler.h:
+ (WebCore::NavigationDisablerForBeforeUnload::NavigationDisablerForBeforeUnload): Disables navigation.
+ (WebCore::NavigationDisablerForBeforeUnload::~NavigationDisablerForBeforeUnload): Enables navigation
+ when called on the last instance of NavigationDisablerForBeforeUnload.
+ (WebCore::NavigationDisablerForBeforeUnload::isNavigationAllowed): Returns true if there are no instance
+ of NavigationDisablerForBeforeUnload left on the stack.
+
+2011-01-07 Martin Robinson <mrobinson@igalia.com>
+
+ Build fix for GTK+.
+
+ * GNUmakefile.am: Add RenderFullScreen.cpp to the sources list.
+ * rendering/RenderFullScreen.cpp:
+ (RenderFullScreen::setAnimating): Guard the call to contentChanged
+ with ENABLED(ACCELERATED_COMPOSITING).
+
+2011-01-07 Ryosuke Niwa <rniwa@webkit.org>
+
+ Unreviewed; speculative fix for Windows debug build.
+
+ * bindings/js/JSBindingsAllInOne.cpp:
+
+2011-01-07 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Ojan Vafai.
+
+ Adopting an iframe to a child frame results in stack overflow
+ https://bugs.webkit.org/show_bug.cgi?id=52018
+
+ Throws an exception when a document adopts an iframe that is an ancestor
+ of the document in the frame hierarchy. New behavior matches that of Firefox.
+
+ Test: fast/html/adopt-parent-frame.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::adoptNode):
+
+2011-01-07 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [Chromium] Scrollbar code cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=52073
+
+ Scrollbar code cleanup:
+ - Remove ScrollbarThemeMac.{mm|h} from the mac sources list, we use
+ ScrollbarThemeChromiumMac.{mm|h}
+ - Remove USE_WEB_THEME_ENGINE_TO_PAINT_THUMB #define now that switch to
+ WebThemeEngine is permanent
+ - Fix typo in Linux scrollbar enum name
+
+ No new tests (compiles).
+
+ * WebCore.gypi:
+ * platform/chromium/ChromiumBridge.h:
+ * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
+ (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece):
+ * platform/chromium/ScrollbarThemeChromiumMac.mm:
+ (WebCore::scrollbarStateToThemeState):
+ (WebCore::ScrollbarThemeChromiumMac::paint):
+
+2011-01-07 Jer Noble <jer.noble@apple.com>
+
+ GTK Linux build fix: isDocumentRunningFullScreenAnimation should
+ be protected both by ENABLE(FULLSCREEN_API) && USE(ACCELERATED_COMPOSITING)
+
+ * page/FrameView.cpp:
+
+2011-01-07 Rafael Weinstein <rafaelw@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Cleanup: Fold shadowParentNode into shadowHost
+ https://bugs.webkit.org/show_bug.cgi?id=51059
+
+ Replaces all uses of shadowParentNode.
+
+ No new tests because no behavior has changed.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::initForStyleResolve):
+ * dom/Node.cpp:
+ (WebCore::Node::shadowHost):
+ (WebCore::Node::shadowAncestorNode):
+ (WebCore::eventTargetRespectingSVGTargetRules):
+ (WebCore::Node::getEventAncestors):
+ * dom/Node.h:
+ * editing/Editor.cpp:
+ (WebCore::Editor::findString):
+ * page/DragController.cpp:
+ (WebCore::asFileInput):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleMousePressEvent):
+ (WebCore::instanceAssociatedWithShadowTreeElement):
+ (WebCore::EventHandler::dispatchMouseEvent):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::hasLineIfEmpty):
+ * rendering/RenderSVGShadowTreeRootContainer.cpp:
+ (WebCore::RenderSVGShadowTreeRootContainer::updateFromElement):
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::title):
+
+2011-01-07 Chris Marrin <cmarrin@apple.com>
+
+ Unreviewed.
+
+ I mistakenly included a Windows only file in a
+ cross platform file.
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+
+2011-01-07 Chris Marrin <cmarrin@apple.com>
+
+ Unreviewed.
+
+ Get rid of include of <QuartzCore/QuartzCore.h>
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+
+2011-01-07 Jer Noble <jer.noble@apple.com>
+
+ Further build fixes. Add a ENABLE(FULLSCREEN_API) guard around
+ the implementation of requiresCompositingfForFullScreen.
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::requiresCompositingForFullScreen):
+
+2011-01-07 Jer Noble <jer.noble@apple.com>
+
+ No review, build fix only. Removed parameter who was causing
+ a warning in Release builds.
+
+ * dom/Document.cpp:
+ (WebCore::Document::webkitDidExitFullScreenForElement):
+
+2011-01-07 Chris Marrin <cmarrin@apple.com>
+
+ Unreviewed.
+
+ Use new wkCACFLayerGetContextUserData function
+
+ * platform/graphics/ca/win/PlatformCALayerWin.cpp:
+
+2011-01-07 James Robinson <jamesr@chromium.org>
+
+ Fix compile bustage due to bad merge in 75276.
+
+ * page/animation/AnimationController.cpp:
+ (WebCore::AnimationControllerPrivate::beginAnimationUpdateTime):
+
+2010-12-17 Jer Noble <jer@kokode.apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Implement WebKit Full Screen support.
+ https://bugs.webkit.org/show_bug.cgi?id=49481
+ rdar://problem/8247444
+
+ Mark for export all those WebCore functions needed by WebFullscreenController.
+
+ * WebCore.exp.in:
+
+2010-12-17 Jer Noble <jer@kokode.apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Implement WebKit Full Screen support.
+ https://bugs.webkit.org/show_bug.cgi?id=49481
+ rdar://problem/8247444
+
+ screenRect is useful for more than just HTMLMediaElements. Promote it into
+ Element.
+
+ * dom/Element.cpp: Moved into Element from HTMLMediaElement.
+ * dom/Element.h: Ditto.
+ * dom/Node.cpp:
+ * html/HTMLMediaElement.cpp: Moved screenRect into Element.
+ * html/HTMLMediaElement.h: Ditto.
+ * WebCore.exp.in: Modify the exports list to reflect the new symbol name.
+
+2010-12-17 Jer Noble <jer@kokode.apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Implement WebKit Full Screen support.
+ https://bugs.webkit.org/show_bug.cgi?id=49481
+ rdar://problem/8247444
+
+ The RenderFullScreen is intended to be used by clients of that API to allow a DOM subtree to
+ be rendered outside its original Frame. Because of this, there are a few areas of the
+ rendering code which need to be special cased: RenderFullScreen layers should not be clipped
+ to the viewport, as they will almost always be rendering outside the viewport area;
+ RenderFullScreen graphics layers should not be reparented by the RenderLayerCompositor, as
+ the client will likely want to reparent the platformLayer into their own fullscreen platform
+ window; the FrameView must update the RenderFullScreen graphics layer tree separately from
+ the root layer, as the two trees are disconnected.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::updateCompositingLayers): Special treatment for fullscreen renderer.
+ (WebCore::FrameView::syncCompositingStateRecursive): Ditto.
+ (WebCore::FrameView::paintContents): Ditto.
+ * rendering/RenderLayer.h: Add a new ContentChangeType enum entry for FullScreen.
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::contentChanged): Add support for above.
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::layerOrAncestorIsFullScreen): New function.
+ (WebCore::RenderLayerBacking::updateCompositedBounds): Do not clip if the layerOrAncestorIsFullScreen.
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): Special treatment for fullscreen renderer.
+ (WebCore::RenderLayerCompositor::requiresCompositingLayer): Ditto.
+ (WebCore::RenderLayerCompositor::requiresCompositingForFullScreen): Ditto.
+ * rendering/RenderLayerCompositor.h:
+
+2010-12-17 Jer Noble <jer@kokode.apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Implemented non-accelerated fullscreen support. The Document will now vend a RenderFullScreen object for clients to
+ use to relocate the fullscreen element subtree.
+
+ https://bugs.webkit.org/show_bug.cgi?id=49481
+ rdar://problem/8247444
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::loadFullScreenRulesIfNeeded): Change webkitFullScreen -> webkitIsFullScreen.
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Ditto.
+ * dom/Document.cpp:
+ (WebCore::Document::Document): Initialize m_fullScreenRenderer.
+ (WebCore::Document::detach): Call setFullScreenRenderer(0).
+ (WebCore::Document::nodeWillBeRemoved): Replicate the logic in webkitWillEnterFullScreenForElement.
+ (WebCore::Document::webkitWillEnterFullScreenForElement): Detach the fullscreen element to cause
+ a new RenderFullScreen renderer to be created with the new fullscreen element.
+ (WebCore::Document::webkitDidEnterFullScreenForElement): Notify clients of a fullscreen change
+ here, rather in "willEnter", to avoid reentrancy problems when clients remove nodes in response
+ to webkitfullscreenchange events.
+ (WebCore::Document::webkitWillExitFullScreenForElement): Recalculate the fullscreen element's style.
+ (WebCore::Document::webkitDidExitFullScreenForElement): Ditto.
+ (WebCore::Document::setFullScreenRenderer): Accessor for m_fullScreenRenderer.
+ (WebCore::Document::setFullScreenRendererSize): Set the style on the m_fullScreenRenderer with a new
+ size; this keeps clients from having to access the renderer's style directly.
+ (WebCore::Document::setFullScreenRendererBackgroundColor): Ditto.
+ * dom/Document.h:
+ (WebCore::Document::webkitIsFullScreen): Change webkitFullScreen -> webkitIsFullScreen.
+ (WebCore::Document::fullScreenRenderer): Accessor.
+ * dom/Document.idl:
+ * dom/Node.cpp:
+ (WebCore::Node::createRendererIfNeeded): If the document is in fullscreen mode, create a RenderFullScreen
+ object to insert between the fullscreen element and its parent.
+ * page/ChromeClient.h:
+ (WebCore::ChromeClient::fullScreenRendererChanged): Added.
+ * rendering/MediaControlElements.cpp:
+ (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler): Change webkitFullScreen -> webkitIsFullScreen.
+
+2010-12-17 Jer Noble <jer@kokode.apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Implement WebKit Full Screen support.
+ https://bugs.webkit.org/show_bug.cgi?id=49481
+ rdar://problem/8247444
+
+ This patch introduces a new RenderObject type: RenderFullScreen. The RenderFullScreen renderer
+ will be used to implement new FullScreen APIs. Because the RenderFullScreen object will be the
+ parent of the current fullscreen element, the style rules for fullscreen objects must change to
+ match.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * rendering/RenderFullScreen.cpp: Added.
+ (RenderFullScreen::setAnimating): Sets the m_isAnimating flag.
+ (RenderFullScreen::createFullScreenStyle): Returns a new RenderStyle containing the default stye
+ for RenderFullScreen objects.
+ * rendering/RenderFullScreen.h: Added.
+ (WebCore::RenderFullScreen::isRenderFullScreen): Added. Overrides the RenderObject version.
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::isRenderFullScreen): Added. Used for type-checking RenderFullScreen objects.
+ * css/fullscreen.css: Modified the contained fullscreen styles.
+
+
+2011-01-07 James Robinson <jamesr@chromium.org>
+
+ Revert "Implement mozilla's animationTime property"
+ https://bugs.webkit.org/show_bug.cgi?id=51952
+
+ This approach isn't quite right.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.exp.in:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * page/DOMWindow.cpp:
+ * page/DOMWindow.h:
+ * page/DOMWindow.idl:
+ * page/Frame.cpp:
+ * page/Frame.h:
+ * page/Page.cpp:
+ (WebCore::Page::Page):
+ * page/Page.h:
+ * page/animation/AnimationController.cpp:
+ (WebCore::AnimationControllerPrivate::beginAnimationUpdateTime):
+ * page/animation/AnimationTimeController.cpp: Removed.
+ * page/animation/AnimationTimeController.h: Removed.
+
+2011-01-07 Jan Erik Hanssen <jhanssen@sencha.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Black text on black buttons using a dark theme
+ https://bugs.webkit.org/show_bug.cgi?id=35024
+
+ Implement RenderThemeQt::systemColor to apply the correct colors from the current Qt style.
+
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::systemColor):
+ * platform/qt/RenderThemeQt.h:
+
+2011-01-05 Adrienne Walker <enne@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add WEBKIT_lose_context WebGL extension.
+ https://bugs.webkit.org/show_bug.cgi?id=51492
+
+ Tests: fast/canvas/webgl/context-lost-restored.html
+ fast/canvas/webgl/context-lost.html
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pri:
+ * WebCore.pro:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSWebGLRenderingContextCustom.cpp:
+ (WebCore::toJS):
+ (WebCore::JSWebGLRenderingContext::getSupportedExtensions):
+ * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
+ (WebCore::toV8Object):
+ (WebCore::V8WebGLRenderingContext::getSupportedExtensionsCallback):
+ * html/canvas/WebGLExtension.h:
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::WebGLRenderingContextRestoreTimer::fired):
+ (WebCore::WebGLRenderingContext::getExtension):
+ (WebCore::WebGLRenderingContext::getSupportedExtensions):
+ (WebCore::WebGLRenderingContext::forceLostContext):
+ (WebCore::WebGLRenderingContext::onLostContext):
+ (WebCore::WebGLRenderingContext::getNumberOfExtensions):
+ (WebCore::WebGLRenderingContext::getExtensionNumber):
+ * html/canvas/WebGLRenderingContext.h:
+ * html/canvas/WebKitLoseContext.cpp: Copied from WebCore/html/canvas/WebGLExtension.h.
+ (WebCore::WebKitLoseContext::WebKitLoseContext):
+ (WebCore::WebKitLoseContext::~WebKitLoseContext):
+ (WebCore::WebKitLoseContext::getName):
+ (WebCore::WebKitLoseContext::create):
+ (WebCore::WebKitLoseContext::loseContext):
+ * html/canvas/WebKitLoseContext.h: Copied from WebCore/html/canvas/WebGLExtension.h.
+ * html/canvas/WebKitLoseContext.idl: Copied from WebCore/html/canvas/WebGLExtension.h.
+
+2011-01-07 Chris Marrin <cmarrin@apple.com>
+
+ Unreviewed.
+
+ Build fix for Chromium. Missing include.
+
+ * page/animation/AnimationBase.cpp:
+
+2011-01-07 Chris Marrin <cmarrin@apple.com>
+
+ Unreviewed.
+
+ Build fix.
+
+ * platform/graphics/ca/win/PlatformCALayerWin.cpp:
+
+2011-01-06 Gavin Barraclough <barraclough@apple.com>
+
+ Reviewed by Geoff Garen.
+
+ Bug 52035 - Unregistering DOMWrapperWorlds is unsafe
+
+ The method DOMWrapperWorld::unregisterWorld() effectively calls the DOMWrapperWorld's
+ destructor early, in order to release wrappers once we know we no longer intend to use them.
+ Whilst it is okay to have a method to throw away wrappers (assuming we know we're willing to
+ lose any state stored on them) it is not okay to deregister the world from the JSGlobalData.
+ A sequence of events that triggers the bug would look like this:
+
+ (1) Create a DOMWrapperWorld.
+ (2) Register a timer in the world.
+ (3) Call unregisterWorld() on the world.
+ (4) Timer goes off, code is executed in the world, creates a Node not attached to a Document.
+ (5) We attempt to lookup a wrapper map for the world on the JSGlobalData, but because we've
+ called forgetWorld() none exists.
+ (6) Attempt to add a wrapper to a NULL map.
+
+ Fix the problem by not removing the JSGlobalData's wrapper map until the world really goes away.
+
+ * WebCore.exp.in:
+ * bindings/js/DOMWrapperWorld.cpp:
+ (WebCore::DOMWrapperWorld::DOMWrapperWorld):
+ (WebCore::DOMWrapperWorld::~DOMWrapperWorld):
+ (WebCore::DOMWrapperWorld::clearWrappers):
+ * bindings/js/DOMWrapperWorld.h:
+
+2011-01-07 Chris Marrin <cmarrin@apple.com>
+
+ Rubber-stamped by Simon Fraser.
+
+ Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
+ https://bugs.webkit.org/show_bug.cgi?id=49388
+
+ Final step in unifying GraphicsLayer logic across Win and Mac. This
+ implements the Windows side classes for PlatformCALayer and supporting
+ classes. Also changed MediaPlayer to use new PlatformCALayerClient
+ so it can use PlatformCALayer directly rather than a dummy GraphicsLayer.
+ WKCACFLayerRenderer now does the task of notifying animations of their
+ start time. Also commented out an assert in AnimationBase because
+ AnimationController's frame time is not in sync with the new
+ AnimationTimeController. I've opened a new bug for that issue:
+
+ https://bugs.webkit.org/show_bug.cgi?id=52037
+
+ This also includes the Mac side changes backed out in
+ http://trac.webkit.org/changeset/75227.
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.vcproj/WebCoreCommon.vsprops:
+ * WebCore.vcproj/copyForwardingHeaders.cmd:
+ * WebCore.xcodeproj/project.pbxproj:
+ * config.h:
+ * page/animation/AnimationBase.cpp:
+ (WebCore::AnimationBase::freezeAtTime):
+ (WebCore::AnimationBase::getElapsedTime):
+ * page/animation/AnimationController.cpp:
+ (WebCore::AnimationControllerPrivate::beginAnimationUpdateTime):
+ * page/animation/KeyframeAnimation.cpp:
+ (WebCore::KeyframeAnimation::fetchIntervalEndpointsForProperty):
+ * platform/graphics/GraphicsLayer.h:
+ (WebCore::GraphicsLayer::layerDidDisplay):
+ (WebCore::GraphicsLayer::showDebugBorders):
+ (WebCore::GraphicsLayer::showRepaintCounter):
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::platformCALayerAnimationStarted):
+ (WebCore::GraphicsLayerCA::setContentsToImage):
+ (WebCore::GraphicsLayerCA::setContentsToMedia):
+ (WebCore::GraphicsLayerCA::layerDidDisplay):
+ (WebCore::GraphicsLayerCA::updateSublayerList):
+ * platform/graphics/ca/GraphicsLayerCA.h:
+ (WebCore::GraphicsLayerCA::platformCALayer):
+ (WebCore::GraphicsLayerCA::platformCALayerLayoutSublayersOfLayer):
+ (WebCore::GraphicsLayerCA::platformCALayerRespondsToLayoutChanges):
+ (WebCore::GraphicsLayerCA::platformCALayerContentsOrientation):
+ (WebCore::GraphicsLayerCA::platformCALayerPaintContents):
+ (WebCore::GraphicsLayerCA::platformCALayerShowDebugBorders):
+ (WebCore::GraphicsLayerCA::platformCALayerShowRepaintCounter):
+ (WebCore::GraphicsLayerCA::platformCALayerIncrementRepaintCount):
+ (WebCore::GraphicsLayerCA::platformCALayerContentsOpaque):
+ (WebCore::GraphicsLayerCA::platformCALayerDrawsContent):
+ (WebCore::GraphicsLayerCA::platformCALayerLayerDidDisplay):
+ * platform/graphics/ca/PlatformCAAnimation.h:
+ * platform/graphics/ca/PlatformCALayer.h:
+ (WebCore::PlatformCALayer::owner):
+ (WebCore::PlatformCALayer::animationStarted):
+ * platform/graphics/ca/PlatformCALayerClient.h: Copied from WebCore/platform/graphics/ca/PlatformCALayerClient.h.
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+ (PlatformCALayer::setOwner):
+ (PlatformCALayer::create):
+ (PlatformCALayer::PlatformCALayer):
+ (PlatformCALayer::contents):
+ (PlatformCALayer::setContents):
+ * platform/graphics/ca/win: Added.
+ * platform/graphics/ca/win/PlatformCAAnimationWin.cpp: Added.
+ * platform/graphics/ca/win/PlatformCALayerWin.cpp: Added.
+ * platform/graphics/ca/win/PlatformCALayerWinInternal.cpp: Added.
+ * platform/graphics/ca/win/PlatformCALayerWinInternal.h: Added.
+ (WebCore::PlatformCALayerWinInternal::owner):
+ * platform/graphics/mac/WebGLLayer.mm:
+ (-[WebGLLayer display]):
+ * platform/graphics/mac/WebLayer.h:
+ * platform/graphics/mac/WebLayer.mm:
+ (drawLayerContents):
+ (setLayerNeedsDisplayInRect):
+ (-[WebLayer setNeedsDisplay]):
+ (-[WebLayer display]):
+ * platform/graphics/mac/WebTiledLayer.mm:
+ (-[WebTiledLayer setNeedsDisplay]):
+ (-[WebTiledLayer display]):
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::CGContextWithHDC):
+ * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
+ (WebCore::MediaPlayerPrivateFullscreenWindow::setRootChildLayer):
+ (WebCore::MediaPlayerPrivateFullscreenWindow::wndProc):
+ * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h:
+ (WebCore::MediaPlayerPrivateFullscreenWindow::rootChildLayer):
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::~LayerClient):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerRespondsToLayoutChanges):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerAnimationStarted):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerContentsOrientation):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerPaintContents):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerShowDebugBorders):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerShowRepaintCounter):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerIncrementRepaintCount):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerContentsOpaque):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerDrawsContent):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerLayerDidDisplay):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerLayoutSublayersOfLayer):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::platformMedia):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveCurrentImage):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::createLayerForMovie):
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
+ (WebCore::MediaPlayerPrivate::movieNewImageAvailable):
+ (WebCore::MediaPlayerPrivate::createLayerForMovie):
+ * platform/graphics/win/WKCACFLayerRenderer.cpp:
+ (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer):
+ (WebCore::WKCACFLayerRenderer::rootLayer):
+ (WebCore::WKCACFLayerRenderer::addPendingAnimatedLayer):
+ (WebCore::WKCACFLayerRenderer::setRootChildLayer):
+ (WebCore::WKCACFLayerRenderer::setNeedsDisplay):
+ (WebCore::WKCACFLayerRenderer::destroyRenderer):
+ (WebCore::WKCACFLayerRenderer::render):
+ * platform/graphics/win/WKCACFLayerRenderer.h:
+ (WebCore::WKCACFLayerRendererClient::animationsStarted):
+ (WebCore::WKCACFLayerRendererClient::syncCompositingState):
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::showDebugBorders):
+ (WebCore::RenderLayerBacking::showRepaintCounter):
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
+ * rendering/RenderLayerCompositor.h:
+ (WebCore::RenderLayerCompositor::compositorShowDebugBorders):
+ (WebCore::RenderLayerCompositor::compositorShowRepaintCounter):
+ (WebCore::RenderLayerCompositor::notifyAnimationStarted):
+ (WebCore::RenderLayerCompositor::notifySyncRequired):
+ (WebCore::RenderLayerCompositor::paintContents):
+ (WebCore::RenderLayerCompositor::showDebugBorders):
+ (WebCore::RenderLayerCompositor::showRepaintCounter):
+
+2011-01-07 Nate Chapin <japhet@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Let PingLoader send cookies if FrameLoaderClient permits it.
+ https://bugs.webkit.org/show_bug.cgi?id=51898
+
+ Test: http/tests/navigation/ping-cookie.html
+
+ * loader/PingLoader.cpp:
+ (WebCore::PingLoader::PingLoader): Set m_shouldUseCredentialStorage
+ at load start time, since we won't be able to call
+ FrameLoaderClient::shouldUseCredentialStorage() later.
+ * loader/PingLoader.h:
+ (WebCore::PingLoader::shouldUseCredentialStorage):
+
+2011-01-07 Xan Lopez <xlopez@igalia.com>
+
+ Unreviewed, rolling out r75256.
+ http://trac.webkit.org/changeset/75256
+ https://bugs.webkit.org/show_bug.cgi?id=50869
+
+ Broke GTK+ canvas tests
+
+ * platform/graphics/cairo/PathCairo.cpp:
+ (WebCore::Path::addArc):
+
+2011-01-07 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Port scrollbar painting to GtkStyleContext
+ https://bugs.webkit.org/show_bug.cgi?id=52051
+
+ Use GtkStyleContext API to paint scrollbars when building with
+ GTK+ 3.x.
+
+ No new tests. This should not change functionality.
+
+ * platform/gtk/RenderThemeGtk.h:
+ * platform/gtk/RenderThemeGtk3.cpp:
+ (WebCore::RenderThemeGtk::gtkScrollbarStyle):
+ * platform/gtk/ScrollbarThemeGtk.cpp:
+ * platform/gtk/ScrollbarThemeGtk.h:
+ * platform/gtk/ScrollbarThemeGtk2.cpp:
+ (WebCore::gtkStyleSetCallback):
+ (WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk):
+ * platform/gtk/ScrollbarThemeGtk3.cpp:
+ (WebCore::gtkStyleChangedCallback):
+ (WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk):
+ (WebCore::ScrollbarThemeGtk::updateThemeProperties):
+ (WebCore::ScrollbarThemeGtk::paintTrackBackground):
+ (WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
+ (WebCore::ScrollbarThemeGtk::paintThumb):
+ (WebCore::ScrollbarThemeGtk::paintButton):
+
+2011-01-07 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/8783318> Text emphasis marks should not appear over characters that have ruby annotations
+ https://bugs.webkit.org/show_bug.cgi?id=51267
+
+ Test: fast/text/emphasis-avoid-ruby.html
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::placeBoxesInBlockDirection): Use getEmphasisMarkPosition() to check if
+ there are text emphasis marks.
+ (WebCore::InlineFlowBox::addTextBoxVisualOverflow): Ditto.
+ (WebCore::InlineFlowBox::computeOverAnnotationAdjustment): Ditto.
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::getEmphasisMarkPosition): Added. Returns true and sets the emphasis mark
+ position if the text is style with emphasis marks and there isn’t a ruby annotation that should
+ suppress them. Otherwise returns false.
+ (WebCore::InlineTextBox::paint): Use getEmphasisMarkPosition() to check if emphasis marks should
+ be painted.
+ * rendering/InlineTextBox.h:
+
+2011-01-07 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [cairo] Rendering a lot of arcs on top of each other causes time
+ outs in some tests
+ https://bugs.webkit.org/show_bug.cgi?id=50869
+
+ We avoid the situation where we have to render the same arc
+ multiple times over itself. Now it renders just one oval and
+ moves to the end angle.
+
+ * platform/graphics/cairo/PathCairo.cpp:
+ (WebCore::Path::addArc):
+
+2011-01-07 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Port buttons painting to GtkStyleContext
+ https://bugs.webkit.org/show_bug.cgi?id=51812
+
+ Use GtkStyleContext API to paint buttons when building with GTK+
+ 3.x.
+
+ No new tests. This should not change functionality.
+
+ * platform/gtk/RenderThemeGtk3.cpp:
+ (WebCore::adjustRectForFocus):
+ (WebCore::RenderThemeGtk::adjustRepaintRect):
+ (WebCore::RenderThemeGtk::paintButton):
+
+2011-01-07 Zhenyao Mo <zmo@google.com>
+
+ Unreviewed, build fix.
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::copyTexSubImage2D):
+
+2011-01-06 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ copyTexSubImage2D shouldn't have undefined pixels
+ https://bugs.webkit.org/show_bug.cgi?id=51559
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::copyTexImage2D): Refactor to share some code with copyTexSubImage2D through helper function clip2D.
+ (WebCore::WebGLRenderingContext::copyTexSubImage2D): Initialize undefined pixels to 0.
+ (WebCore::WebGLRenderingContext::validateTexFuncLevel): Seperate the validation of level from validateTexFuncParameters.
+ (WebCore::WebGLRenderingContext::validateTexFuncParameters): Ditto.
+ * html/canvas/WebGLRenderingContext.h:
+ * html/canvas/WebGLTexture.cpp:
+ (WebCore::WebGLTexture::getType): Expose the type of a texture.
+ * html/canvas/WebGLTexture.h:
+
+2011-01-07 Takashi Toyoshima <toyoshim@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ cleanupAfterGraphicsCall() is never called in
+ WebGLRenderingContext::checkFramebufferStatus()
+ https://bugs.webkit.org/show_bug.cgi?id=51668
+
+ No new tests. This is a trivial bug.
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::checkFramebufferStatus):
+
+2011-01-07 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Chris Fleizach.
+
+ GTK: AX: atk tests need to be updated after recent changes
+ https://bugs.webkit.org/show_bug.cgi?id=51932
+
+ Make sure we can always get the right accesssible parent for an
+ AtkObject when traversing the hierarchy bottom up.
+
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (isRootObject): New function to check whether an
+ AccessibilityObject is the root one or not, according to the
+ latest changes in the hierarchy.
+ (atkParentOfRootObject): Gets the appropriate AtkObject from GTK's
+ GAIL as the parent of the root AtkObject from WebCore.
+ (webkit_accessible_get_parent): Use atkParentOfRootObject.
+ (webkit_accessible_get_index_in_parent): Ditto.
+ (atkRole): Expose AccessibilityObjects with ScrollAreaRole as
+ AtkObject's of role ATK_ROLE_SCROLLED_PANE.
+
+2011-01-07 Zhenyao Mo <zmo@google.com>
+
+ Unreviewed, Mac 32-bit build fix.
+ Use float instead of double in GL function arguments to avoid implicit type down casting.
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::blendColor):
+ (WebCore::WebGLRenderingContext::clearColor):
+ (WebCore::WebGLRenderingContext::clearDepth):
+ (WebCore::WebGLRenderingContext::depthRange):
+ (WebCore::WebGLRenderingContext::lineWidth):
+ (WebCore::WebGLRenderingContext::polygonOffset):
+ (WebCore::WebGLRenderingContext::sampleCoverage):
+ * html/canvas/WebGLRenderingContext.h:
+ * html/canvas/WebGLRenderingContext.idl:
+
+2011-01-07 Carlos Garcia Campos <cgarcia@igalia.com> and Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Port slider painting to GtkStyleContext
+ https://bugs.webkit.org/show_bug.cgi?id=51874
+
+ Use GtkStyleContext API to paint sliders when building with GTK+
+ 3.x. Also move the code to adjust media slider to its own method
+ in RenderThemeGtk.cpp since it's common to both gtk 2 and 3.
+
+ No new tests. This should not change functionality.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::adjustMediaSliderThumbSize):
+ * platform/gtk/RenderThemeGtk.h:
+ * platform/gtk/RenderThemeGtk2.cpp:
+ (WebCore::RenderThemeGtk::adjustSliderThumbSize):
+ * platform/gtk/RenderThemeGtk3.cpp:
+ (WebCore::RenderThemeGtk::paintSliderTrack):
+ (WebCore::RenderThemeGtk::paintSliderThumb):
+ (WebCore::RenderThemeGtk::adjustSliderThumbSize):
+
+2011-01-07 Benjamin Poulain <benjamin.poulain@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] [WK2] QtWebKit does not build in debug, FileReader.cpp does not compile
+ https://bugs.webkit.org/show_bug.cgi?id=51992
+
+ Add the missing header. CString is used in debug by the calls to LOG().
+
+ * fileapi/FileReader.cpp:
+
+2011-01-07 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ Cairo's ContextShadow may mis-render some box shadows
+ https://bugs.webkit.org/show_bug.cgi?id=51374
+
+ The space required for the internal shadow of the corners was not
+ correctly considered.
+
+ * platform/graphics/cairo/ContextShadowCairo.cpp:
+ (WebCore::ContextShadow::drawRectShadow):
+
+2011-01-06 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION (r74663): ASSERTION FAILED: m_tokenizer->lineNumber() == line.zeroBasedInt()
+ https://bugs.webkit.org/show_bug.cgi?id=52013
+
+ When excluding line numbers for composite strings, we forgot to exclude
+ the line number for the current string!
+
+ Test: fast/parser/line-number-composite-segmented-string.html
+
+ * platform/text/SegmentedString.cpp:
+ (WebCore::SegmentedString::setExcludeLineNumbers):
+
+2011-01-06 Chris Marrin <cmarrin@apple.com>
+
+ Unreviewed.
+
+ Back out changes in http://trac.webkit.org/changeset/75199
+ This breaks the Windows build. Fixing it on that side. Until
+ then I'll back this out.
+
+2011-01-06 Jenn Braithwaite <jennb@chromium.org>
+
+ Reviewed by Dmitry Titov.
+
+ When a live frame is moved between pages, some plug-in DOM methods cease to function
+ https://bugs.webkit.org/show_bug.cgi?id=45770
+
+ Test: fast/frames/iframe-reparenting-plugins.html
+
+ * page/Frame.cpp:
+ (WebCore::Frame::~Frame):
+ (WebCore::Frame::addObserver):
+ (WebCore::Frame::removeObserver):
+ * page/Frame.h:
+ (WebCore::FrameDestructionObserver::~FrameDestructionObserver):
+ Added observer to be notified when frame is destroyed.
+ * page/Page.cpp:
+ (WebCore::Page::~Page):
+ (WebCore::Page::refreshPlugins):
+ PluginData no longer stores page pointer.
+ * plugins/DOMMimeType.cpp:
+ (WebCore::DOMMimeType::DOMMimeType):
+ (WebCore::DOMMimeType::~DOMMimeType):
+ (WebCore::DOMMimeType::enabledPlugin):
+ * plugins/DOMMimeType.h:
+ (WebCore::DOMMimeType::create):
+ (WebCore::DOMMimeType::frameDestroyed):
+ Store frame instead of page pointer in DOMMimeType.
+ * plugins/DOMMimeTypeArray.cpp:
+ (WebCore::DOMMimeTypeArray::item):
+ (WebCore::DOMMimeTypeArray::namedItem):
+ Provide frame to create DOMMimeType.
+ * plugins/DOMPlugin.cpp:
+ (WebCore::DOMPlugin::DOMPlugin):
+ (WebCore::DOMPlugin::~DOMPlugin):
+ (WebCore::DOMPlugin::item):
+ (WebCore::DOMPlugin::namedItem):
+ * plugins/DOMPlugin.h:
+ (WebCore::DOMPlugin::create):
+ (WebCore::DOMPlugin::frameDestroyed):
+ Store frame instead of page pointer in DOMPlugin.
+ * plugins/DOMPluginArray.cpp:
+ (WebCore::DOMPluginArray::item):
+ (WebCore::DOMPluginArray::namedItem):
+ Provide frame to create DOMPlugin.
+ * plugins/PluginData.cpp:
+ (WebCore::PluginData::PluginData):
+ (WebCore::PluginData::initPlugins):
+ * plugins/PluginData.h:
+ No longer stores a pointer to the page.
+ Added page parameter to initPlugins.
+ * plugins/PluginDataNone.cpp:
+ (WebCore::PluginData::initPlugins):
+ * plugins/chromium/PluginDataChromium.cpp:
+ (WebCore::PluginData::initPlugins):
+ * plugins/gtk/PluginDataGtk.cpp:
+ (WebCore::PluginData::initPlugins):
+ * plugins/wx/PluginDataWx.cpp:
+ (WebCore::PluginData::initPlugins):
+ Updated platforms to add (unused) page parameter to initPlugins.
+
+2011-01-05 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Define GC3D types to match GL types and use them in GraphicsContext3D
+ https://bugs.webkit.org/show_bug.cgi?id=45557
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::readPixels):
+ (WebCore::WebGLRenderingContext::validateTexFuncData):
+ * platform/graphics/GraphicsContext3D.cpp:
+ (WebCore::GraphicsContext3D::texImage2DResourceSafe):
+ (WebCore::GraphicsContext3D::computeFormatAndTypeParameters):
+ (WebCore::GraphicsContext3D::extractImageData):
+ (WebCore::GraphicsContext3D::extractTextureData):
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/cg/GraphicsContext3DCG.cpp:
+ (WebCore::GraphicsContext3D::getImageData):
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::enable):
+ (WebCore::SharedGraphicsContext3D::disable):
+ (WebCore::SharedGraphicsContext3D::clear):
+ (WebCore::SharedGraphicsContext3D::drawArrays):
+ (WebCore::SharedGraphicsContext3D::getError):
+ (WebCore::SharedGraphicsContext3D::getIntegerv):
+ (WebCore::SharedGraphicsContext3D::createFramebuffer):
+ (WebCore::SharedGraphicsContext3D::createTexture):
+ (WebCore::SharedGraphicsContext3D::deleteFramebuffer):
+ (WebCore::SharedGraphicsContext3D::deleteTexture):
+ (WebCore::SharedGraphicsContext3D::framebufferTexture2D):
+ (WebCore::SharedGraphicsContext3D::texParameteri):
+ (WebCore::SharedGraphicsContext3D::texImage2D):
+ (WebCore::SharedGraphicsContext3D::texSubImage2D):
+ (WebCore::SharedGraphicsContext3D::readPixels):
+ (WebCore::SharedGraphicsContext3D::setActiveTexture):
+ (WebCore::SharedGraphicsContext3D::bindTexture):
+ (WebCore::SharedGraphicsContext3D::bindFramebuffer):
+ * platform/graphics/gpu/SharedGraphicsContext3D.h:
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+ (WebCore::GraphicsContext3D::activeTexture):
+ (WebCore::GraphicsContext3D::attachShader):
+ (WebCore::GraphicsContext3D::bindAttribLocation):
+ (WebCore::GraphicsContext3D::bindBuffer):
+ (WebCore::GraphicsContext3D::bindFramebuffer):
+ (WebCore::GraphicsContext3D::bindRenderbuffer):
+ (WebCore::GraphicsContext3D::bindTexture):
+ (WebCore::GraphicsContext3D::blendColor):
+ (WebCore::GraphicsContext3D::blendEquation):
+ (WebCore::GraphicsContext3D::blendEquationSeparate):
+ (WebCore::GraphicsContext3D::blendFunc):
+ (WebCore::GraphicsContext3D::blendFuncSeparate):
+ (WebCore::GraphicsContext3D::bufferData):
+ (WebCore::GraphicsContext3D::bufferSubData):
+ (WebCore::GraphicsContext3D::checkFramebufferStatus):
+ (WebCore::GraphicsContext3D::clearColor):
+ (WebCore::GraphicsContext3D::clear):
+ (WebCore::GraphicsContext3D::clearDepth):
+ (WebCore::GraphicsContext3D::clearStencil):
+ (WebCore::GraphicsContext3D::colorMask):
+ (WebCore::GraphicsContext3D::compileShader):
+ (WebCore::GraphicsContext3D::copyTexImage2D):
+ (WebCore::GraphicsContext3D::copyTexSubImage2D):
+ (WebCore::GraphicsContext3D::cullFace):
+ (WebCore::GraphicsContext3D::depthFunc):
+ (WebCore::GraphicsContext3D::depthMask):
+ (WebCore::GraphicsContext3D::depthRange):
+ (WebCore::GraphicsContext3D::detachShader):
+ (WebCore::GraphicsContext3D::disable):
+ (WebCore::GraphicsContext3D::disableVertexAttribArray):
+ (WebCore::GraphicsContext3D::drawArrays):
+ (WebCore::GraphicsContext3D::drawElements):
+ (WebCore::GraphicsContext3D::enable):
+ (WebCore::GraphicsContext3D::enableVertexAttribArray):
+ (WebCore::GraphicsContext3D::framebufferRenderbuffer):
+ (WebCore::GraphicsContext3D::framebufferTexture2D):
+ (WebCore::GraphicsContext3D::frontFace):
+ (WebCore::GraphicsContext3D::generateMipmap):
+ (WebCore::GraphicsContext3D::getActiveAttrib):
+ (WebCore::GraphicsContext3D::getActiveUniform):
+ (WebCore::GraphicsContext3D::getAttachedShaders):
+ (WebCore::GraphicsContext3D::getAttribLocation):
+ (WebCore::GraphicsContext3D::getError):
+ (WebCore::GraphicsContext3D::getString):
+ (WebCore::GraphicsContext3D::hint):
+ (WebCore::GraphicsContext3D::isBuffer):
+ (WebCore::GraphicsContext3D::isEnabled):
+ (WebCore::GraphicsContext3D::isFramebuffer):
+ (WebCore::GraphicsContext3D::isProgram):
+ (WebCore::GraphicsContext3D::isRenderbuffer):
+ (WebCore::GraphicsContext3D::isShader):
+ (WebCore::GraphicsContext3D::isTexture):
+ (WebCore::GraphicsContext3D::lineWidth):
+ (WebCore::GraphicsContext3D::linkProgram):
+ (WebCore::GraphicsContext3D::pixelStorei):
+ (WebCore::GraphicsContext3D::polygonOffset):
+ (WebCore::GraphicsContext3D::readPixels):
+ (WebCore::GraphicsContext3D::renderbufferStorage):
+ (WebCore::GraphicsContext3D::sampleCoverage):
+ (WebCore::GraphicsContext3D::scissor):
+ (WebCore::GraphicsContext3D::stencilFunc):
+ (WebCore::GraphicsContext3D::stencilFuncSeparate):
+ (WebCore::GraphicsContext3D::stencilMask):
+ (WebCore::GraphicsContext3D::stencilMaskSeparate):
+ (WebCore::GraphicsContext3D::stencilOp):
+ (WebCore::GraphicsContext3D::stencilOpSeparate):
+ (WebCore::GraphicsContext3D::texParameterf):
+ (WebCore::GraphicsContext3D::texParameteri):
+ (WebCore::GraphicsContext3D::uniform1f):
+ (WebCore::GraphicsContext3D::uniform1fv):
+ (WebCore::GraphicsContext3D::uniform2f):
+ (WebCore::GraphicsContext3D::uniform2fv):
+ (WebCore::GraphicsContext3D::uniform3f):
+ (WebCore::GraphicsContext3D::uniform3fv):
+ (WebCore::GraphicsContext3D::uniform4f):
+ (WebCore::GraphicsContext3D::uniform4fv):
+ (WebCore::GraphicsContext3D::uniform1i):
+ (WebCore::GraphicsContext3D::uniform1iv):
+ (WebCore::GraphicsContext3D::uniform2i):
+ (WebCore::GraphicsContext3D::uniform2iv):
+ (WebCore::GraphicsContext3D::uniform3i):
+ (WebCore::GraphicsContext3D::uniform3iv):
+ (WebCore::GraphicsContext3D::uniform4i):
+ (WebCore::GraphicsContext3D::uniform4iv):
+ (WebCore::GraphicsContext3D::uniformMatrix2fv):
+ (WebCore::GraphicsContext3D::uniformMatrix3fv):
+ (WebCore::GraphicsContext3D::uniformMatrix4fv):
+ (WebCore::GraphicsContext3D::useProgram):
+ (WebCore::GraphicsContext3D::validateProgram):
+ (WebCore::GraphicsContext3D::vertexAttrib1f):
+ (WebCore::GraphicsContext3D::vertexAttrib1fv):
+ (WebCore::GraphicsContext3D::vertexAttrib2f):
+ (WebCore::GraphicsContext3D::vertexAttrib2fv):
+ (WebCore::GraphicsContext3D::vertexAttrib3f):
+ (WebCore::GraphicsContext3D::vertexAttrib3fv):
+ (WebCore::GraphicsContext3D::vertexAttrib4f):
+ (WebCore::GraphicsContext3D::vertexAttrib4fv):
+ (WebCore::GraphicsContext3D::vertexAttribPointer):
+ (WebCore::GraphicsContext3D::viewport):
+ (WebCore::GraphicsContext3D::getBooleanv):
+ (WebCore::GraphicsContext3D::getBufferParameteriv):
+ (WebCore::GraphicsContext3D::getFloatv):
+ (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
+ (WebCore::GraphicsContext3D::getIntegerv):
+ (WebCore::GraphicsContext3D::getProgramiv):
+ (WebCore::GraphicsContext3D::getProgramInfoLog):
+ (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
+ (WebCore::GraphicsContext3D::getShaderiv):
+ (WebCore::GraphicsContext3D::getShaderInfoLog):
+ (WebCore::GraphicsContext3D::getTexParameterfv):
+ (WebCore::GraphicsContext3D::getTexParameteriv):
+ (WebCore::GraphicsContext3D::getUniformfv):
+ (WebCore::GraphicsContext3D::getUniformiv):
+ (WebCore::GraphicsContext3D::getUniformLocation):
+ (WebCore::GraphicsContext3D::getVertexAttribfv):
+ (WebCore::GraphicsContext3D::getVertexAttribiv):
+ (WebCore::GraphicsContext3D::getVertexAttribOffset):
+ (WebCore::GraphicsContext3D::texImage2D):
+ (WebCore::GraphicsContext3D::texSubImage2D):
+ (WebCore::GraphicsContext3D::createBuffer):
+ (WebCore::GraphicsContext3D::createFramebuffer):
+ (WebCore::GraphicsContext3D::createProgram):
+ (WebCore::GraphicsContext3D::createRenderbuffer):
+ (WebCore::GraphicsContext3D::createShader):
+ (WebCore::GraphicsContext3D::createTexture):
+ (WebCore::GraphicsContext3D::deleteBuffer):
+ (WebCore::GraphicsContext3D::deleteFramebuffer):
+ (WebCore::GraphicsContext3D::deleteProgram):
+ (WebCore::GraphicsContext3D::deleteRenderbuffer):
+ (WebCore::GraphicsContext3D::deleteShader):
+ (WebCore::GraphicsContext3D::deleteTexture):
+ (WebCore::GraphicsContext3D::sizeInBytes):
+ (WebCore::GraphicsContext3D::synthesizeGLError):
+ * platform/graphics/qt/GraphicsContext3DQt.cpp:
+ (WebCore::GraphicsContext3D::activeTexture):
+ (WebCore::GraphicsContext3D::attachShader):
+ (WebCore::GraphicsContext3D::getAttachedShaders):
+ (WebCore::GraphicsContext3D::bindAttribLocation):
+ (WebCore::GraphicsContext3D::bindBuffer):
+ (WebCore::GraphicsContext3D::bindFramebuffer):
+ (WebCore::GraphicsContext3D::bindRenderbuffer):
+ (WebCore::GraphicsContext3D::bindTexture):
+ (WebCore::GraphicsContext3D::blendColor):
+ (WebCore::GraphicsContext3D::blendEquation):
+ (WebCore::GraphicsContext3D::blendEquationSeparate):
+ (WebCore::GraphicsContext3D::blendFunc):
+ (WebCore::GraphicsContext3D::blendFuncSeparate):
+ (WebCore::GraphicsContext3D::bufferData):
+ (WebCore::GraphicsContext3D::bufferSubData):
+ (WebCore::GraphicsContext3D::checkFramebufferStatus):
+ (WebCore::GraphicsContext3D::clearColor):
+ (WebCore::GraphicsContext3D::clear):
+ (WebCore::GraphicsContext3D::clearDepth):
+ (WebCore::GraphicsContext3D::clearStencil):
+ (WebCore::GraphicsContext3D::colorMask):
+ (WebCore::GraphicsContext3D::compileShader):
+ (WebCore::GraphicsContext3D::copyTexImage2D):
+ (WebCore::GraphicsContext3D::copyTexSubImage2D):
+ (WebCore::GraphicsContext3D::cullFace):
+ (WebCore::GraphicsContext3D::depthFunc):
+ (WebCore::GraphicsContext3D::depthMask):
+ (WebCore::GraphicsContext3D::depthRange):
+ (WebCore::GraphicsContext3D::detachShader):
+ (WebCore::GraphicsContext3D::disable):
+ (WebCore::GraphicsContext3D::disableVertexAttribArray):
+ (WebCore::GraphicsContext3D::drawArrays):
+ (WebCore::GraphicsContext3D::drawElements):
+ (WebCore::GraphicsContext3D::enable):
+ (WebCore::GraphicsContext3D::enableVertexAttribArray):
+ (WebCore::GraphicsContext3D::framebufferRenderbuffer):
+ (WebCore::GraphicsContext3D::framebufferTexture2D):
+ (WebCore::GraphicsContext3D::frontFace):
+ (WebCore::GraphicsContext3D::generateMipmap):
+ (WebCore::GraphicsContext3D::getActiveAttrib):
+ (WebCore::GraphicsContext3D::getActiveUniform):
+ (WebCore::GraphicsContext3D::getAttribLocation):
+ (WebCore::GraphicsContext3D::getError):
+ (WebCore::GraphicsContext3D::getString):
+ (WebCore::GraphicsContext3D::hint):
+ (WebCore::GraphicsContext3D::isBuffer):
+ (WebCore::GraphicsContext3D::isEnabled):
+ (WebCore::GraphicsContext3D::isFramebuffer):
+ (WebCore::GraphicsContext3D::isProgram):
+ (WebCore::GraphicsContext3D::isRenderbuffer):
+ (WebCore::GraphicsContext3D::isShader):
+ (WebCore::GraphicsContext3D::isTexture):
+ (WebCore::GraphicsContext3D::linkProgram):
+ (WebCore::GraphicsContext3D::pixelStorei):
+ (WebCore::GraphicsContext3D::polygonOffset):
+ (WebCore::GraphicsContext3D::readPixels):
+ (WebCore::GraphicsContext3D::renderbufferStorage):
+ (WebCore::GraphicsContext3D::sampleCoverage):
+ (WebCore::GraphicsContext3D::scissor):
+ (WebCore::GraphicsContext3D::stencilFunc):
+ (WebCore::GraphicsContext3D::stencilFuncSeparate):
+ (WebCore::GraphicsContext3D::stencilMask):
+ (WebCore::GraphicsContext3D::stencilMaskSeparate):
+ (WebCore::GraphicsContext3D::stencilOp):
+ (WebCore::GraphicsContext3D::stencilOpSeparate):
+ (WebCore::GraphicsContext3D::texParameterf):
+ (WebCore::GraphicsContext3D::texParameteri):
+ (WebCore::GraphicsContext3D::uniform1f):
+ (WebCore::GraphicsContext3D::uniform1fv):
+ (WebCore::GraphicsContext3D::uniform2f):
+ (WebCore::GraphicsContext3D::uniform2fv):
+ (WebCore::GraphicsContext3D::uniform3f):
+ (WebCore::GraphicsContext3D::uniform3fv):
+ (WebCore::GraphicsContext3D::uniform4f):
+ (WebCore::GraphicsContext3D::uniform4fv):
+ (WebCore::GraphicsContext3D::uniform1i):
+ (WebCore::GraphicsContext3D::uniform1iv):
+ (WebCore::GraphicsContext3D::uniform2i):
+ (WebCore::GraphicsContext3D::uniform2iv):
+ (WebCore::GraphicsContext3D::uniform3i):
+ (WebCore::GraphicsContext3D::uniform3iv):
+ (WebCore::GraphicsContext3D::uniform4i):
+ (WebCore::GraphicsContext3D::uniform4iv):
+ (WebCore::GraphicsContext3D::uniformMatrix2fv):
+ (WebCore::GraphicsContext3D::uniformMatrix3fv):
+ (WebCore::GraphicsContext3D::uniformMatrix4fv):
+ (WebCore::GraphicsContext3D::useProgram):
+ (WebCore::GraphicsContext3D::validateProgram):
+ (WebCore::GraphicsContext3D::vertexAttrib1f):
+ (WebCore::GraphicsContext3D::vertexAttrib1fv):
+ (WebCore::GraphicsContext3D::vertexAttrib2f):
+ (WebCore::GraphicsContext3D::vertexAttrib2fv):
+ (WebCore::GraphicsContext3D::vertexAttrib3f):
+ (WebCore::GraphicsContext3D::vertexAttrib3fv):
+ (WebCore::GraphicsContext3D::vertexAttrib4f):
+ (WebCore::GraphicsContext3D::vertexAttrib4fv):
+ (WebCore::GraphicsContext3D::vertexAttribPointer):
+ (WebCore::GraphicsContext3D::viewport):
+ (WebCore::GraphicsContext3D::getBooleanv):
+ (WebCore::GraphicsContext3D::getBufferParameteriv):
+ (WebCore::GraphicsContext3D::getFloatv):
+ (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
+ (WebCore::GraphicsContext3D::getIntegerv):
+ (WebCore::GraphicsContext3D::getProgramiv):
+ (WebCore::GraphicsContext3D::getProgramInfoLog):
+ (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
+ (WebCore::GraphicsContext3D::getShaderiv):
+ (WebCore::GraphicsContext3D::getShaderInfoLog):
+ (WebCore::GraphicsContext3D::getShaderSource):
+ (WebCore::GraphicsContext3D::getTexParameterfv):
+ (WebCore::GraphicsContext3D::getTexParameteriv):
+ (WebCore::GraphicsContext3D::getUniformfv):
+ (WebCore::GraphicsContext3D::getUniformiv):
+ (WebCore::GraphicsContext3D::getUniformLocation):
+ (WebCore::GraphicsContext3D::getVertexAttribfv):
+ (WebCore::GraphicsContext3D::getVertexAttribiv):
+ (WebCore::GraphicsContext3D::getVertexAttribOffset):
+ (WebCore::GraphicsContext3D::texImage2D):
+ (WebCore::GraphicsContext3D::texSubImage2D):
+ (WebCore::GraphicsContext3D::createBuffer):
+ (WebCore::GraphicsContext3D::createFramebuffer):
+ (WebCore::GraphicsContext3D::createProgram):
+ (WebCore::GraphicsContext3D::createRenderbuffer):
+ (WebCore::GraphicsContext3D::createShader):
+ (WebCore::GraphicsContext3D::createTexture):
+ (WebCore::GraphicsContext3D::deleteBuffer):
+ (WebCore::GraphicsContext3D::deleteFramebuffer):
+ (WebCore::GraphicsContext3D::deleteProgram):
+ (WebCore::GraphicsContext3D::deleteRenderbuffer):
+ (WebCore::GraphicsContext3D::deleteShader):
+ (WebCore::GraphicsContext3D::deleteTexture):
+ (WebCore::GraphicsContext3D::sizeInBytes):
+ (WebCore::GraphicsContext3D::synthesizeGLError):
+ (WebCore::GraphicsContext3D::getImageData):
+ * platform/graphics/skia/GraphicsContext3DSkia.cpp:
+ (WebCore::GraphicsContext3D::getImageData):
+
+2011-01-06 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Eric Seidel.
+
+ [GTK] Initial build support for WebGL
+ https://bugs.webkit.org/show_bug.cgi?id=51716
+
+ Add initial build support for WebGL and insert bits of implementation
+ necessary for clean compilation into GraphicsContext3D.
+
+ No new tests. This is just a build change.
+
+ * GNUmakefile.am: Add missing files to the source lists.
+ * platform/graphics/GraphicsContext3D.h: Include IntSize.h as it's used below.
+ Include typedefs necessary for WebGL on GTK+ and consolidate typdefs which are the
+ same across different platforms. X11 headers define the VERSION symbol, so it's
+ necessary to undefine it, since it's used as an enum value.
+
+2011-01-06 Helder Correia <helder@sencha.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] GraphicsContext::drawConvexPolygon() has unnecessary code for shadow
+ https://bugs.webkit.org/show_bug.cgi?id=52014
+
+ The function is only used by RenderObject to draw box sides.
+ The shadow branch is never used and thus can be removed.
+
+ No new tests are necessary.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::drawConvexPolygon):
+
+2011-01-06 Laszlo Gombos <laszlo.1.gombos@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Make sure touch is disabled in the minimal configuration
+ https://bugs.webkit.org/show_bug.cgi?id=51316
+
+ No new tests as there is no new functionality.
+
+ * features.pri:
+
+2011-01-06 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Eric Seidel.
+
+ [GTK] Freetype backend does not support WOFF
+ https://bugs.webkit.org/show_bug.cgi?id=51904
+
+ * CMakeListsEfl.txt: Add WOFF support to the sources list.
+ * GNUmakefile.am: Add WOFF support to the sources list.
+ * platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:
+ (WebCore::createFontCustomPlatformData): Call the WOFF decoder when appropriate.
+ (WebCore::FontCustomPlatformData::supportsFormat): Advertise support for WOFF.
+
+2011-01-06 James Simonsen <simonjam@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [Web Timing] Remove vendor prefix
+ https://bugs.webkit.org/show_bug.cgi?id=48922
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::performance): Rename to performance.
+ * page/DOMWindow.h:
+ * page/DOMWindow.idl: Rename to performance and make replaceable.
+
+2011-01-06 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
+ https://bugs.webkit.org/show_bug.cgi?id=49388
+
+ Changed PlatformCALayer API. Added PlatformCALayerClient abstract class which is
+ used to communicate from PlatformCALayer to the owner. This replaces passing
+ GraphicsLayerCA pointer when creating PlatformCALayer. It also includes the
+ API that used to be in PlatformCALayerLayout. GraphicsLayerCA now implements
+ the PlatformCALayerClient API.
+
+ This change has little impact on the Mac side but makes the Windows
+ interface simpler, especially when handling video layers on Windows.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * config.h:
+ * platform/graphics/GraphicsLayer.h:
+ (WebCore::GraphicsLayer::layerDidDisplay):
+ (WebCore::GraphicsLayer::showDebugBorders):
+ (WebCore::GraphicsLayer::showRepaintCounter):
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::platformCALayerAnimationStarted):
+ (WebCore::GraphicsLayerCA::setContentsToImage):
+ (WebCore::GraphicsLayerCA::setContentsToMedia):
+ (WebCore::GraphicsLayerCA::layerDidDisplay):
+ (WebCore::GraphicsLayerCA::updateSublayerList):
+ * platform/graphics/ca/GraphicsLayerCA.h:
+ (WebCore::GraphicsLayerCA::platformCALayerLayoutSublayersOfLayer):
+ (WebCore::GraphicsLayerCA::platformCALayerRespondsToLayoutChanges):
+ (WebCore::GraphicsLayerCA::platformCALayerContentsOrientation):
+ (WebCore::GraphicsLayerCA::platformCALayerPaintContents):
+ (WebCore::GraphicsLayerCA::platformCALayerShowDebugBorders):
+ (WebCore::GraphicsLayerCA::platformCALayerShowRepaintCounter):
+ (WebCore::GraphicsLayerCA::platformCALayerIncrementRepaintCount):
+ (WebCore::GraphicsLayerCA::platformCALayerContentsOpaque):
+ (WebCore::GraphicsLayerCA::platformCALayerDrawsContent):
+ (WebCore::GraphicsLayerCA::platformCALayerLayerDidDisplay):
+ (WebCore::GraphicsLayerCA::platformCALayer):
+ * platform/graphics/ca/PlatformCALayer.h:
+ (WebCore::PlatformCALayer::owner):
+ (WebCore::PlatformCALayer::animationStarted):
+ * platform/graphics/ca/PlatformCALayerClient.h: Added.
+ (WebCore::PlatformCALayerClient::~PlatformCALayerClient):
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+ (PlatformCALayer::setOwner):
+ (PlatformCALayer::create):
+ (PlatformCALayer::PlatformCALayer):
+ (PlatformCALayer::contents):
+ (PlatformCALayer::setContents):
+ * platform/graphics/mac/WebGLLayer.mm:
+ (-[WebGLLayer display]):
+ * platform/graphics/mac/WebLayer.h:
+ * platform/graphics/mac/WebLayer.mm:
+ (drawLayerContents):
+ (setLayerNeedsDisplayInRect):
+ (-[WebLayer setNeedsDisplay]):
+ (-[WebLayer display]):
+ * platform/graphics/mac/WebTiledLayer.mm:
+ (-[WebTiledLayer setNeedsDisplay]):
+ (-[WebTiledLayer display]):
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::showDebugBorders):
+ (WebCore::RenderLayerBacking::showRepaintCounter):
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
+ * rendering/RenderLayerCompositor.h:
+ (WebCore::RenderLayerCompositor::compositorShowDebugBorders):
+ (WebCore::RenderLayerCompositor::compositorShowRepaintCounter):
+ (WebCore::RenderLayerCompositor::notifyAnimationStarted):
+ (WebCore::RenderLayerCompositor::notifySyncRequired):
+ (WebCore::RenderLayerCompositor::paintContents):
+ (WebCore::RenderLayerCompositor::showDebugBorders):
+ (WebCore::RenderLayerCompositor::showRepaintCounter):
+
+2011-01-06 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Allow framesets after hidden inputs
+ https://bugs.webkit.org/show_bug.cgi?id=51998
+
+ This implements the HTML5 spec update in response to:
+ http://www.w3.org/Bugs/Public/show_bug.cgi?id=11156
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+
+2010-12-29 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ vertexAttribPointer should raise INVALID_OPERATION if stride/offset is not multiple of the type size
+ https://bugs.webkit.org/show_bug.cgi?id=51725
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::vertexAttribPointer):
+
+2011-01-06 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ [WINCE] Remove JSC::g_stackBase
+ https://bugs.webkit.org/show_bug.cgi?id=51779
+
+ * platform/wince/SharedTimerWinCE.cpp:
+ (WebCore::TimerWindowWndProc):
+
+2011-01-06 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Antonio Gomes.
+
+ [Qt] Introduce QDRTNode for passing WebCore::Node across JS bridge
+
+ This allows LayoutTestController to pass WebCore::Node back to
+ layout tests.
+
+ Also amend nodesFromRect-links-and-text.html and
+ nodesFromRect-inner-documents.html so that they do not produce
+ platform-specific results.
+
+ Unskip:
+ fast/dom/nodesFromRect-links-and-text.html
+ fast/dom/nodesFromRect-inner-documents.html
+
+ https://bugs.webkit.org/show_bug.cgi?id=48957
+
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtDRTNodeRuntime::create):
+ (JSC::Bindings::QtDRTNodeRuntime::get):
+ (JSC::Bindings::convertValueToQVariant):
+ (JSC::Bindings::convertQVariantToValue):
+
+2011-01-06 Joone Hur <joone.hur@collabora.co.uk>
+
+ Reviewed by Eric Seidel.
+
+ WML Parser should treat line/column number in a consistent way
+ https://bugs.webkit.org/show_bug.cgi?id=51601
+
+ XML Parser treats line/column number as 1-based values, but WML ErrorHandler treat them as 0-based.
+ Therefore, this patch allows WML ErrorHandler to use 1-based values.
+
+ * dom/XMLDocumentParser.cpp:
+ (WebCore::XMLDocumentParser::handleError): Treat line/column number as 1 based values.
+ * dom/XMLDocumentParser.h: Make textPositionOneBased public and Add TextPosition1(m_lastErrorPosition) to keep error line/column number.
+ * dom/XMLDocumentParserLibxml2.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser): Initialize m_lastErrorPosition.
+ * dom/XMLDocumentParserQt.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser): Initialize m_lastErrorPosition.
+ * wml/WMLErrorHandling.cpp:
+ (WebCore::reportWMLError): Use 1 based value instead of 0 based value to report error line/column number.
+
+2011-01-05 Adam Roben <aroben@apple.com>
+
+ Remove some dead code from WKCACFLayerRenderer
+
+ Fixes <http://webkit.org/b/51954> WKCACFLayerRenderer has dead and
+ redundant code for reacting to changes to the layer tree
+
+ Reviewed by Sam Weinig.
+
+ * platform/graphics/win/WKCACFLayerRenderer.cpp:
+ * platform/graphics/win/WKCACFLayerRenderer.h:
+ Removed didFlushContext and the HashMap it depended on. We react to
+ changes to the layer tree in layerTreeDidChange instead.
+
+2011-01-06 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ AX: "AXExpanded" not exposed on most ARIA roles that use aria-expanded
+ https://bugs.webkit.org/show_bug.cgi?id=51995
+
+ Test: platform/mac/accessibility/aria-expanded-standard-items.html
+
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::AccessibilityObject::supportsARIAExpanded):
+ (WebCore::AccessibilityObject::isExpanded):
+ * accessibility/AccessibilityObject.h:
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::isVisited):
+ * accessibility/AccessibilityRenderObject.h:
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
+
+2010-12-28 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Must generate INVALID_VALUE errors for strings containing out-of-range characters
+ https://bugs.webkit.org/show_bug.cgi?id=50929
+
+ * html/canvas/WebGLRenderingContext.cpp: Validate characters according to GLSL ES 1.0 spec section 3.1.
+ (WebCore::WebGLRenderingContext::bindAttribLocation):
+ (WebCore::WebGLRenderingContext::getAttribLocation):
+ (WebCore::WebGLRenderingContext::getUniformLocation):
+ (WebCore::WebGLRenderingContext::shaderSource):
+ (WebCore::WebGLRenderingContext::validateString): Helper function to perform the character validation.
+ * html/canvas/WebGLRenderingContext.h: Declare validateString().
+
+2011-01-06 Yong Li <yoli@rim.com>
+
+ Reviewed by Adam Barth.
+ Add the test case that is missed in r75066.
+ https://bugs.webkit.org/show_bug.cgi?id=48077
+
+ Test case: WebCore/manual-tests/bugzilla-48077.html.
+
+2011-01-06 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ Implement mozilla's animationTime property
+ https://bugs.webkit.org/show_bug.cgi?id=51952
+
+ Implements mozilla's animationTime property as described here:
+ https://developer.mozilla.org/en/DOM/window.mozAnimationStartTime
+ and http://hacks.mozilla.org/2010/08/more-efficient-javascript-animations-with-mozrequestanimationframe/
+ The property is called webkitAnimationTime as calling it the 'Start' time is not very informative.
+ This property exposes a notion of a 'current' time to use for declarative animations and allows
+ scripts to synchronize imperative animations with declarative ones if they choose to. Once queried
+ this time is saved and used for all declarative animation updates until the embedder paints/composites
+ the next frame and clears it, or 15ms elapse (in case the embedder isn't producing frames, for example
+ if the page is in a background tab).
+
+ This patch also ensures that all declarative animations started in the same script execution block
+ are synchronized even if some time elapses while script is running.
+
+ Test: fast/animation/animation-time.html
+
+ * WebCore.gypi:
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::webkitAnimationTime):
+ * page/DOMWindow.h:
+ * page/DOMWindow.idl:
+ * page/Frame.cpp:
+ (WebCore::Frame::currentAnimationTime):
+ * page/Frame.h:
+ * page/Page.cpp:
+ (WebCore::Page::Page):
+ * page/Page.h:
+ (WebCore::Page::animationTime):
+ * page/animation/AnimationController.cpp:
+ (WebCore::AnimationControllerPrivate::beginAnimationUpdateTime):
+ * page/animation/AnimationTimeController.cpp: Added.
+ (WebCore::AnimationTimeController::AnimationTimeController):
+ (WebCore::AnimationTimeController::~AnimationTimeController):
+ (WebCore::AnimationTimeController::currentAnimationTime):
+ (WebCore::AnimationTimeController::clearCurrentAnimationTime):
+ (WebCore::AnimationTimeController::clearCurrentAnimationTimeTimerFired):
+ * page/animation/AnimationTimeController.h: Added.
+ (WebCore::AnimationTimeController::create):
+
+2011-01-06 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ Null out the parent stylesheet pointer when a css rule is removed.
+ https://bugs.webkit.org/show_bug.cgi?id=51993
+
+ Tests: fast/dom/StyleSheet/removed-media-rule-deleted-parent-crash.html
+ fast/dom/StyleSheet/removed-stylesheet-rule-deleted-parent-crash.html
+
+ * css/CSSRuleList.cpp:
+ (WebCore::CSSRuleList::deleteRule):
+ * css/CSSStyleSheet.cpp:
+ (WebCore::CSSStyleSheet::deleteRule):
+
+2011-01-04 Adrienne Walker <enne@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ NaN in a TypedArray should be converted to zero only for Float32Array.
+ https://bugs.webkit.org/show_bug.cgi?id=46990
+
+ Test: LayoutTests/fast/canvas/webgl/array-unit-tests.html
+
+ * bindings/js/JSArrayBufferViewHelper.h:
+ (WebCore::convertArrayValue):
+ (WebCore::constructArrayBufferView):
+ * html/canvas/Float32Array.h:
+ (WebCore::Float32Array::set):
+ (WebCore::Float32Array::item):
+
+2011-01-06 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed Windows build fix for r75161.
+
+ * platform/graphics/cg/GraphicsContextCG.cpp: Missing include added.
+
+2011-01-06 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed WinCE build fix for r75139.
+
+ Try to remove include after adding forward-declaration in r75145.
+
+ * platform/graphics/Gradient.h:
+
+2011-01-06 Renata Hodovan <reni@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51811
+ Merge m_height and m_width members of ImageData into the new m_size member.
+
+ Image (BitmapImage, ImageSource) types in WebKit use IntSize to store their
+ width and height argument, except ImageData. This patch refactors ImageData
+ to follow the style of other Image types in WebKit.
+ Using of PassRefPtrs other than argument passing is not allowed in WebKit anymore.
+ This patch also refactors the PassRefPtr usages of ImageData.
+
+ It's just a refactoring, so we don't need any new tests.
+
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneSerializer::write):
+ (WebCore::CloneDeserializer::readTerminal):
+ * bindings/v8/SerializedScriptValue.cpp:
+ (WebCore::ZigZag::Reader::readImageData):
+ * html/ImageData.cpp:
+ (WebCore::ImageData::create):
+ (WebCore::ImageData::ImageData):
+ * html/ImageData.h:
+ (WebCore::ImageData::size):
+ (WebCore::ImageData::width):
+ (WebCore::ImageData::height):
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::createEmptyImageData):
+ (WebCore::CanvasRenderingContext2D::createImageData):
+ (WebCore::CanvasRenderingContext2D::getImageData):
+ * html/canvas/CanvasRenderingContext2D.h:
+ * platform/graphics/haiku/ImageBufferHaiku.cpp:
+ (WebCore::getImageData):
+
+2011-01-06 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Darin Adler.
+
+ document.querySelector(':nth-child(foo)') should throw a syntax error
+ https://bugs.webkit.org/show_bug.cgi?id=51231
+
+ Also fixes
+ CSSNthSelector parsing code is illegible and buggy (allows "n3" as a valid selector)
+ https://bugs.webkit.org/show_bug.cgi?id=21815
+
+ Add a check in the parser that other than an+b, only "odd" or "even" would be allowed
+ as parameters to nth selector.
+
+ Tests: fast/css/css3-nth-tokens-script.html
+ fast/css/css3-nth-tokens-style.html
+
+ * css/CSSGrammar.y:
+ * css/CSSParser.cpp:
+ (WebCore::isValidNthToken):
+ * css/CSSParser.h:
+
+2011-01-06 Jan Erik Hanssen <jhanssen@sencha.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] crash in QNetworkReplyHandler::sendResponseIfNeeded()
+ https://bugs.webkit.org/show_bug.cgi?id=51453
+
+ Check if m_reply is NULL before accessing.
+
+ * manual-tests/load-deferrer-resume-crash.html: Added.
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::setLoadMode):
+ (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
+
+2011-01-06 Andras Becsi <abecsi@webkit.org>
+
+ Reviewed by Csaba Osztrogonác.
+
+ [Qt][V8] Fix the build when DEVICE_ORIENTATION is enabled.
+
+ No new tests needed.
+
+ * WebCore.pro: remove duplications and globally add RuntimeEnabledFeatures.
+
+2011-01-06 Helder Correia <helder@sencha.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt][GTK] Use GraphicsContext::hasShadow() in port-specific code
+ https://bugs.webkit.org/show_bug.cgi?id=51985
+
+ r75139 introduced GraphicsContext::hasShadow(). This can now simplify
+ and unify some code in the Qt and GTK ports.
+
+ No new tests necessary for this refactoring.
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::drawConvexPolygon):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+
+2011-01-05 Darin Adler <darin@apple.com>
+
+ Fix Chromium Mac build.
+
+ * platform/graphics/Gradient.h: Forward-declare CGContextRef.
+ This might even make it possible to remove the include of
+ <CoreGraphics/CoreGraphics.h> for PLATFORM(WIN), but I did not
+ do that at this time because I don't want to break the Windows
+ build when fixing the Chromium build.
+
+2011-01-05 Xianzhu Wang <wangxianzhu@google.com>
+
+ Reviewed by David Levin.
+
+ Implement RemoteFontStream's skip behavior (in FontCustomPlatformData.cpp)
+ https://bugs.webkit.org/show_bug.cgi?id=51736
+
+ No new tests. This change has potential effect on @font-face CSS feature
+ on ports using Skia. Tested on Chromium that this change won't break
+ fast/css/font-face-remote.html. This change can make the test pass on
+ other ports using Skia.
+
+ * platform/graphics/skia/FontCustomPlatformData.cpp:
+ (WebCore::RemoteFontStream::read):
+
+2011-01-05 Helder Correia <helder@sencha.com>
+
+ Reviewed by Simon Fraser.
+
+ Shadows are not drawn when filling a rect with a gradient fillStyle on Mac and Chromium-Mac
+ https://bugs.webkit.org/show_bug.cgi?id=51869
+
+ GraphicsContext::fillRect(const FloatRect&) is clipping to the rect.
+ The shadow is being drawn, but getting clipped to the rect being filled.
+ The solution is to draw the gradient into a CGLayer (when a shadow is
+ required), then render the layer to the GraphicsContext.
+
+ This patch also fixes:
+ canvas/philip/tests/2d.shadow.gradient.alpha.html
+ canvas/philip/tests/2d.shadow.gradient.basic.html
+ canvas/philip/tests/2d.shadow.gradient.transparent.2.html
+
+ Test: fast/canvas/canvas-fillRect-gradient-shadow.html
+
+ * platform/graphics/Gradient.h:
+ * platform/graphics/cg/GradientCG.cpp:
+ (WebCore::Gradient::paint):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::fillRect):
+
+2011-01-05 Steve Falkenburg <sfalken@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Debug and Release builds on Windows clobber each other
+ https://bugs.webkit.org/show_bug.cgi?id=49185
+
+ Changes the structure of WebKitBuild build products directory so we
+ completely separate each build configuration into independent directories.
+
+ Although we previously had per-configuration directories for obj, this change adds
+ per-configuration directories for bin, lib, obj, and include. Each configuration's
+ build products are stored within a directory inside of WebKitBuild.
+
+ Most use of $(WebKitOutputDir) in the build files has been replaced by $(ConfigurationBuildDir),
+ defined in common.vsprops to be $(WebKitOutputDir)\$(ConfigurationName).
+
+ * WebCore.vcproj/QTMovieWinCommon.vsprops:
+ * WebCore.vcproj/QTMovieWinPostBuild.cmd:
+ * WebCore.vcproj/QTMovieWinPreBuild.cmd:
+ * WebCore.vcproj/WebCore.make:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.vcproj/WebCoreCommon.vsprops:
+ * WebCore.vcproj/WebCoreGeneratedCairo.vsprops:
+ * WebCore.vcproj/WebCoreGeneratedCommon.vsprops:
+ * WebCore.vcproj/WebCoreMediaQT.vsprops:
+ * WebCore.vcproj/WebCorePostBuild.cmd:
+ * WebCore.vcproj/WebCorePreBuild.cmd:
+ * WebCore.vcproj/copyForwardingHeaders.cmd:
+ * WebCore.vcproj/copyInspectorFiles.cmd:
+
+2011-01-05 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Ariya Hidayat.
+
+ Directly composited SVG images fail to render
+ https://bugs.webkit.org/show_bug.cgi?id=51975
+
+ There was already code, added in r67900, to detect whether an image
+ may be directly composited, by checking to see if it's a bitmap image.
+
+ However, CachedImage::image() returns the nullImage() if m_image is null,
+ which is a BitmapImage, confusing this test.
+
+ Test: compositing/images/direct-svg-image.html
+
+ * loader/cache/CachedImage.cpp: Remove nullImage(), since Image has
+ exactly the same method.
+ (WebCore::CachedImage::image): Use Image::nullImage().
+ * loader/cache/CachedImage.h:
+ (WebCore::CachedImage::hasImage): New method to ask whether the m_image is
+ non-null.
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::isDirectlyCompositedImage): Use hasImage()
+ so that we don't test the nullImage.
+
+2011-01-05 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fix percentage values in radius of radial gradients
+ https://bugs.webkit.org/show_bug.cgi?id=51979
+
+ Handle percentage values for the ending size of radial gradients.
+
+ Test: fast/gradients/css3-radial-gradients3.html
+
+ * css/CSSGradientValue.cpp:
+ (WebCore::CSSRadialGradientValue::resolveRadius): Add parameter for height or width, which is
+ non-null if percentage values are allowed, and compute percentage values when we see them.
+ (WebCore::CSSRadialGradientValue::createGradient): Pass height or width down to say that
+ percentages are OK when resolving end radii.
+ * css/CSSGradientValue.h: New parameter for resolveRadius.
+
+2011-01-05 James Simonsen <simonjam@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ [Web Timing] Zero out some values on cross-origin redirects
+ https://bugs.webkit.org/show_bug.cgi?id=49294
+
+ Tests: http/tests/misc/webtiming-cross-origin-redirect.php
+ http/tests/misc/webtiming-origins.html
+
+ * loader/DocumentLoadTiming.h:
+ (WebCore::DocumentLoadTiming::DocumentLoadTiming): Add flags for cross-origin redirects and same-origin navigation.
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::~FrameLoader):
+ (WebCore::FrameLoader::stopLoading): Don't overwrite previous unload times.
+ (WebCore::FrameLoader::completed):
+ (WebCore::FrameLoader::loadWithDocumentLoader): Remember previous URL to see if navigation is same-origin.
+ (WebCore::FrameLoader::commitProvisionalLoad): Set flag if navigation is same-origin.
+ * loader/FrameLoader.h:
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::willSendRequest): Set flag on cross-origin redirects.
+ * page/PerformanceNavigation.cpp:
+ (WebCore::PerformanceNavigation::redirectCount): Clear if cross-origin redirect flag is set.
+ * page/PerformanceTiming.cpp:
+ (WebCore::PerformanceTiming::redirectStart): Ditto.
+ (WebCore::PerformanceTiming::redirectEnd): Ditto.
+ (WebCore::PerformanceTiming::unloadEventStart): Clear if cross-origin navigation is set.
+ (WebCore::PerformanceTiming::unloadEventEnd): Ditto.
+
+2011-01-05 Helder Correia <helder@sencha.com>
+
+ Reviewed by Ariya Hidayat.
+
+ [Qt] Default focus ring is too wide
+ https://bugs.webkit.org/show_bug.cgi?id=51854
+
+ This is an intermediate step to solve this bug. Use QPalette::Highlight
+ instead of default half-transparent black as the focus ring color.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::drawFocusRingForPath):
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::platformFocusRingColor):
+ * platform/qt/RenderThemeQt.h:
+
+2011-01-05 James Simonsen <simonjam@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [Web Timing] requestStart and responseStart should be available even if the document is still loading
+ https://bugs.webkit.org/show_bug.cgi?id=51368
+
+ Test: http/tests/misc/webtiming-slow-load.php
+
+ * page/PerformanceTiming.cpp:
+ (WebCore::getPossiblySkewedTimeInKnownRange): Handle case where response is not yet complete.
+ (WebCore::PerformanceTiming::resourceLoadTimeRelativeToAbsolute): Use full upper bound.
+
+2011-01-05 Chris Rogers <crogers@google.com>
+
+ Reviewed by Darin Fisher.
+
+ Add WebKitClient::createAudioDevice() for Chromium port of web audio API
+ https://bugs.webkit.org/show_bug.cgi?id=51424
+
+ No new tests since audio API is not yet implemented.
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+
+2011-01-05 Anders Carlsson <andersca@apple.com>
+
+ Try again.
+
+ * WebCore.exp.in:
+
+2011-01-05 Anders Carlsson <andersca@apple.com>
+
+ Attempt to fix Leopard build.
+
+ * WebCore.exp.in:
+
+2011-01-05 Evan Martin <evan@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ [chromium] refactor complex text on Linux
+ https://bugs.webkit.org/show_bug.cgi?id=51956
+
+ Pull out TextRunWalker from FontLinux.cpp. Put it in its own file.
+ Rename it to ComplexTextController, to match platform/graphics/mac
+ more closely.
+
+ No tests because the change is just renaming a class.
+
+ * WebCore.gyp/WebCore.gyp:
+ * platform/graphics/chromium/ComplexTextControllerLinux.cpp: Added.
+ (WebCore::ComplexTextController::ComplexTextController):
+ (WebCore::ComplexTextController::~ComplexTextController):
+ (WebCore::ComplexTextController::isWordBreak):
+ (WebCore::ComplexTextController::determineWordBreakSpacing):
+ (WebCore::ComplexTextController::setPadding):
+ (WebCore::ComplexTextController::reset):
+ (WebCore::ComplexTextController::setBackwardsIteration):
+ (WebCore::ComplexTextController::nextScriptRun):
+ (WebCore::ComplexTextController::widthOfFullRun):
+ (WebCore::ComplexTextController::setupFontForScriptRun):
+ (WebCore::ComplexTextController::allocHarfbuzzFont):
+ (WebCore::ComplexTextController::deleteGlyphArrays):
+ (WebCore::ComplexTextController::createGlyphArrays):
+ (WebCore::ComplexTextController::resetGlyphArrays):
+ (WebCore::ComplexTextController::shapeGlyphs):
+ (WebCore::ComplexTextController::setGlyphXPositions):
+ (WebCore::ComplexTextController::normalizeSpacesAndMirrorChars):
+ (WebCore::ComplexTextController::getNormalizedTextRun):
+ * platform/graphics/chromium/ComplexTextControllerLinux.h: Added.
+ (WebCore::ComplexTextController::setWordSpacingAdjustment):
+ (WebCore::ComplexTextController::setLetterSpacingAdjustment):
+ (WebCore::ComplexTextController::letterSpacing):
+ (WebCore::ComplexTextController::setXOffsetToZero):
+ (WebCore::ComplexTextController::rtl):
+ (WebCore::ComplexTextController::glyphs):
+ (WebCore::ComplexTextController::length):
+ (WebCore::ComplexTextController::xPositions):
+ (WebCore::ComplexTextController::advances):
+ (WebCore::ComplexTextController::width):
+ (WebCore::ComplexTextController::logClusters):
+ (WebCore::ComplexTextController::numCodePoints):
+ (WebCore::ComplexTextController::fontPlatformDataForScriptRun):
+ (WebCore::ComplexTextController::isCodepointSpace):
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::Font::drawComplexText):
+ (WebCore::Font::floatWidthForComplexText):
+ (WebCore::glyphIndexForXPositionInScriptRun):
+ (WebCore::Font::offsetForPositionForComplexText):
+ (WebCore::Font::selectionRectForComplexText):
+
+2011-01-05 Pratik Solanki <psolanki@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Merge cf and mac header files with same name
+ https://bugs.webkit.org/show_bug.cgi?id=51916
+
+ Since most of the code in the header files is identical, we can merge them and have #if
+ USE(CFNETWORK) to separate out the network specific parts.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/network/cf/AuthenticationChallenge.h:
+ (WebCore::AuthenticationChallenge::sender):
+ (WebCore::AuthenticationChallenge::nsURLAuthenticationChallenge):
+ * platform/network/cf/ResourceError.h:
+ (WebCore::ResourceError::ResourceError):
+ * platform/network/cf/ResourceRequest.h:
+ (WebCore::ResourceRequest::ResourceRequest):
+ * platform/network/cf/ResourceResponse.h:
+ (WebCore::ResourceResponse::ResourceResponse):
+ * platform/network/mac/AuthenticationChallenge.h: Removed.
+ * platform/network/mac/ResourceError.h: Removed.
+ * platform/network/mac/ResourceRequest.h: Removed.
+ * platform/network/mac/ResourceResponse.h: Removed.
+
+2011-01-05 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ Implement word transformation
+ https://bugs.webkit.org/show_bug.cgi?id=51943
+
+ Export Editor functions needed by WebKit2.
+
+ * WebCore.exp.in:
+
+2011-01-05 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ Implement repeating CSS3 gradients
+ https://bugs.webkit.org/show_bug.cgi?id=51843
+
+ Add support for repeating gradients, via the new gradient functions
+ -webkit-repeating-linear-gradient and -webkit-repeating-radial-gradient.
+
+ Tests: fast/gradients/css3-repeating-linear-gradients.html
+ fast/gradients/css3-repeating-radial-gradients.html
+
+ * css/CSSGradientValue.h:
+ (WebCore::CSSGradientValue::isRepeating): Accessor for whethe the gradient repeats.
+ (WebCore::CSSGradientValue::CSSGradientValue): Pass CSSGradientRepeat in.
+ (WebCore::CSSLinearGradientValue::create): Pass CSSGradientRepeat.
+ (WebCore::CSSLinearGradientValue::CSSLinearGradientValue): Ditto
+ (WebCore::CSSRadialGradientValue::create): Ditto.
+ (WebCore::CSSRadialGradientValue::CSSRadialGradientValue): Ditto.
+
+ * css/CSSGradientValue.cpp:
+ (WebCore::CSSGradientValue::addStops): Pass maxLengthForRepeat, which
+ is used for repeating radial gradients. Add code to repeat the stops,
+ adding stops before the start, and after the end until the 0-N range is
+ covered, where N is large enough to ensure the box is covered. Fix an issue
+ with repeating gradients where if both stops were < 0, it would fail to clamp
+ them to 0.
+
+ (WebCore::CSSLinearGradientValue::cssText): Output strings for repeating gradients.
+ (WebCore::CSSLinearGradientValue::createGradient): maxExtent for linear gradients is 1,
+ because they are guaranteed to fill the box already.
+ (WebCore::CSSRadialGradientValue::cssText): Output strings for repeating gradients.
+ (WebCore::CSSRadialGradientValue::createGradient): Compute the distance to the furthest
+ corner in order to inform addStops() how much additional extent is required.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseDeprecatedGradient): Old gradients never repeat.
+ (WebCore::CSSParser::parseLinearGradient): Pass down CSSGradientRepeat.
+ (WebCore::CSSParser::parseRadialGradient): Ditto.
+ (WebCore::CSSParser::isGeneratedImageValue): Add repeating gradient functions.
+ (WebCore::CSSParser::parseGeneratedImage): Ditto.
+ * css/CSSParser.h: Pass CSSGradientRepeat to gradient functions.
+ * platform/graphics/cg/GradientCG.cpp: Remove unused #include.
+
+2011-01-05 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Ariya Hidayat.
+
+ ContextShadow::blurLayerImage() not endian-safe
+ https://bugs.webkit.org/show_bug.cgi?id=51822
+
+ Correct the channel map in ContextShadow to reflect the different
+ ordering of pixels on processors with different endianness.
+
+ No new tests. This is covered by the existing shadow tests. It was
+ not discovered, because all of the bots using ContextShadow are
+ little-endian.
+
+ * platform/graphics/ContextShadow.cpp:
+ (WebCore::ContextShadow::blurLayerImage): Initialize the channel mapping
+ based on machine endianness.
+
+2011-01-05 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ [Chromium] Crash when drawing PDF plug-in scrollbars
+ https://bugs.webkit.org/show_bug.cgi?id=51942
+
+ Pepper plug-in scrollbars don't have a parent, guard against that before
+ seeing if the parent is a FrameView.
+
+ Not testable via layout tests, verified fix by hand.
+
+ * platform/chromium/ScrollbarThemeChromiumMac.mm:
+ (WebCore::ScrollbarThemeChromiumMac::paint):
+
+2011-01-05 Abhishek Arya <inferno@chromium.org>
+
+ Unreviewed.
+
+ Update FIXME comment to sound better. Also initialize the block to fix compile.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::removeChild):
+
+2011-01-05 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dave Hyatt.
+
+ Do not merge anonymous blocks when one of them is the one getting removed.
+ https://bugs.webkit.org/show_bug.cgi?id=51919
+
+ Test: fast/block/merge-anonymous-block-remove-child-crash.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::removeChild):
+
+2011-01-05 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ ApplyStyleCommand::applyRelativeFontStyleChange should take EditingStyle*
+ https://bugs.webkit.org/show_bug.cgi?id=50641
+
+ Modified applyRelativeFontStyleChange to take EditingStyle instead of CSSMutableStyleDeclaration.
+ Also extracted the logic to obtain the font size delta from ApplyStyleCommand to EditingStyle.
+ The font size delta is now stored as a member variable of EditingStyle as supposed to a property
+ in CSSMutableStyleDeclration as soon as EditingStyle is instantiated.
+
+ No new tests are added since this is a refactoring.
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::doApply): Calls applyRelativeFontStyleChange.
+ (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): Takes EditingStyle.
+ * editing/ApplyStyleCommand.h:
+ * editing/EditingStyle.cpp:
+ (WebCore::EditingStyle::EditingStyle): Initializes m_fontSizeDelta.
+ (WebCore::EditingStyle::init): Ditto.
+ (WebCore::EditingStyle::extractFontSizeDelta): Extracted from applyRelativeFontStyleChange.
+ (WebCore::EditingStyle::isEmpty): Takes care of m_fontSizeDelta.
+ (WebCore::EditingStyle::setStyle): Calls extractFontSizeDelta.
+ (WebCore::EditingStyle::overrideWithStyle): Ditto.
+ (WebCore::EditingStyle::clear): Initializes m_fontSizeDelta.
+ (WebCore::EditingStyle::copy): Calls extractFontSizeDelta.
+ * editing/EditingStyle.h:
+ (WebCore::EditingStyle::fontSizeDelta): Added.
+ (WebCore::EditingStyle::hasFontSizeDelta): Added.
+ * editing/Editor.h:
+
+2011-01-05 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/8799835> hyphenate-character: auto should fall back to hyphen-minus if the primary font lacks a hyphen glyph
+ https://bugs.webkit.org/show_bug.cgi?id=51915
+
+ This changes the results of existing tests in fast/text.
+
+ * platform/graphics/Font.h:
+ * platform/graphics/FontFastPath.cpp:
+ (WebCore::Font::primaryFontHasGlyphForCharacter): Added.
+ * rendering/style/RenderStyle.cpp:
+ * platform/graphics/qt/FontQt.cpp:
+ (WebCore::Font::primaryFontHasGlyphForCharacter): Added a stub.
+ (WebCore::RenderStyle::hyphenString): For hyphenate-character: auto, return a
+ hyphen only if the primary font has a hyphen glyph, and otherwise return a
+ hyphen-minus.
+
+2011-01-05 Laszlo Gombos <laszlo.1.gombos@nokia.com>
+
+ Reviewed by Ariya Hidayat.
+
+ [Qt] [Symbian] Make CONFIG-=def_files the default configuration for trunk builds
+ https://bugs.webkit.org/show_bug.cgi?id=51888
+
+ Overrule Qt's default from qconfig.pri for non-production builds so
+ that CONFIG(def_files) evaluates to false and QtWebKit trunk builds succeed.
+
+ No new tests as there is no new functionality.
+
+ * WebCore.pro:
+
+2011-01-05 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r74778.
+ http://trac.webkit.org/changeset/74778
+ https://bugs.webkit.org/show_bug.cgi?id=51930
+
+ Android and QtWebKit-V8 uses V8DOMWindowShell::setContext.
+ (Requested by bbandix on #webkit).
+
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::V8DOMWindowShell::setContext):
+ * bindings/v8/V8DOMWindowShell.h:
+
+2011-01-05 Yi Shen <yi.4.shen@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Animated GIF images does not animate 10x as expected by default.
+ https://bugs.webkit.org/show_bug.cgi?id=36818
+
+ Add a test animated GIF which should be displayed 2 times and stop.
+
+ * manual-tests/animated-gif-looping.html:
+ * manual-tests/resources/animated-2x.gif: Added.
+
+2011-01-05 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Fork code of ScrollbarThemeGtk that will differ for GTK+ 3
+ https://bugs.webkit.org/show_bug.cgi?id=51923
+
+ Split out pieces of ScrollbarThemeGtk into ScrollbarThemeGtk2 and
+ ScrollbarThemeGtk3 that will differ between GTK+ 2 and GTK+ 3.
+
+ No new tests. This should not change functionality.
+
+ * GNUmakefile.am: Add ScrollbarThemeGtk2.cpp and ScrollbarThemeGtk3.cpp
+ * platform/gtk/ScrollbarThemeGtk.cpp:
+ (WebCore::ScrollbarThemeGtk::updateScrollbarsFrameThickness):
+ * platform/gtk/ScrollbarThemeGtk.h:
+ * platform/gtk/ScrollbarThemeGtk2.cpp: Added.
+ (WebCore::ScrollbarThemeGtk::updateThemeProperties):
+ (WebCore::ScrollbarThemeGtk::paintTrackBackground):
+ (WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
+ (WebCore::ScrollbarThemeGtk::paintThumb):
+ (WebCore::ScrollbarThemeGtk::paintButton):
+ * platform/gtk/ScrollbarThemeGtk3.cpp: Added.
+ (WebCore::ScrollbarThemeGtk::updateThemeProperties):
+ (WebCore::ScrollbarThemeGtk::paintTrackBackground):
+ (WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
+ (WebCore::ScrollbarThemeGtk::paintThumb):
+ (WebCore::ScrollbarThemeGtk::paintButton):
+
+2011-01-05 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [CMake] Fix the usage of SOURCE_GROUP
+ https://bugs.webkit.org/show_bug.cgi?id=51739
+
+ * CMakeLists.txt:
+
+2011-01-05 Andras Becsi <abecsi@webkit.org>
+
+ Reviewed by Csaba Osztrogonác.
+
+ [Qt][V8] Fix the build after recent changes.
+
+ No new tests needed.
+
+ * WebCore.pro: Add missing files, and remove obsolete ones.
+
+2011-01-05 Yong Li <yoli@rim.com>
+
+ Reviewed by Adam Barth.
+
+ Suspend HTMLParserScheduler when page load is deferred to
+ avoid potential JS re-entrancy. Otherwise, when JS execution is triggered
+ from an external script or by events, and is blocked by a modal dialog,
+ WebKit can parse more HTML source and also start another JS execution.
+
+ https://bugs.webkit.org/show_bug.cgi?id=48077
+
+ Test case: WebCore/manual-tests/bugzilla-48077.html.
+
+ * dom/DocumentParser.cpp:
+ (WebCore::DocumentParser::suspendScheduledTasks):
+ (WebCore::DocumentParser::resumeScheduledTasks):
+ * dom/DocumentParser.h:
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::suspendScheduledTasks):
+ (WebCore::HTMLDocumentParser::resumeScheduledTasks):
+ * html/parser/HTMLParserScheduler.cpp:
+ (WebCore::HTMLParserScheduler::HTMLParserScheduler):
+ (WebCore::HTMLParserScheduler::suspend):
+ (WebCore::HTMLParserScheduler::resume):
+ * html/parser/HTMLParserScheduler.h:
+ (WebCore::HTMLParserScheduler::isScheduledForResume):
+ * page/PageGroupLoadDeferrer.cpp:
+ (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
+ (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
+
+2011-01-05 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen, Gustavo Noronha Silva
+
+ [GStreamer] MediaPlayerPrivateGStreamer::totalBytes() does not work reliably
+ https://bugs.webkit.org/show_bug.cgi?id=51926
+
+ Work around potential upstream bug: Querying a GstBin for the duration,
+ will forward the query to all sink children. Our WebKitWebSrc however
+ is a bin with only source children, therefore the query fails. Until
+ this is changed upstream, this patch works around it as follows,
+ based on suggestion by Philippe Normand and Sebastian Dröge:
+
+ When the initial query fails, attempt the same query on all source
+ pads and take the maximum length reported.
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::MediaPlayerPrivateGStreamer::totalBytes):
+
+2011-01-05 Philippe Normand <pnormand@igalia.com>
+
+ Rubber-stamped by Eric Seidel.
+
+ [GStreamer] build fails with gstreamer core 0.10.31 and -plugins-base 0.10.30
+ https://bugs.webkit.org/show_bug.cgi?id=51810
+
+ Based on a patch by Mart Raudsepp.
+
+ No new tests, build fix only.
+
+ * platform/graphics/gstreamer/GStreamerGWorld.cpp:
+ (WebCore::GStreamerGWorld::setWindowOverlay): Use the new xoverlay
+ API if the GST_CHECK_PLUGINS_BASE_VERSION macro is defined. It was
+ introduced in same version as the xoverlay API change.
+
+2011-01-05 Leo Yang <leo.yang@torchmobile.com.cn>
+
+ Reviewed by Dirk Schulze.
+
+ Malformed SVG causes crash in updateContainerOffset
+ https://bugs.webkit.org/show_bug.cgi?id=44610
+
+ We should check recursive <use> at the begining of
+ WebCore::SVGUseElement::buildInstanceTree instead
+ of at the end of it because the target element's
+ children may cause infinite recursive <use>.
+
+ Test: svg/custom/recursive-use.svg
+
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::buildInstanceTree):
+ (WebCore::SVGUseElement::hasCycleUseReferencing):
+ * svg/SVGUseElement.h:
+
+2011-01-04 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51907
+ Style selector should only be recalculated when the pending sheet count goes to zero
+
+ Shark says this is a significant performance improvement on some sites with lots of stylesheets.
+
+ * dom/Document.cpp:
+ (WebCore::Document::removePendingSheet):
+
+2011-01-05 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Use GtkStyleContext to get platform colors
+ https://bugs.webkit.org/show_bug.cgi?id=51830
+
+ Use GtkStyleContext API to get platform colors when building with
+ GTK+ 3.x.
+
+ No new tests. This should not change functionality.
+
+ * platform/graphics/Color.h: Add specialized constructor for GdkRGBA.
+ * platform/graphics/gtk/ColorGtk.cpp:
+ (WebCore::Color::Color):
+ (WebCore::Color::operator GdkRGBA):
+ * platform/gtk/RenderThemeGtk3.cpp:
+ (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
+ (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
+ (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
+ (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
+ (WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor):
+ (WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor):
+ (WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor):
+ (WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor):
+ (WebCore::RenderThemeGtk::systemColor):
+
+2011-01-05 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Unreviewed. Build fix for GTK when using gtk+-3 after r75009.
+
+ * platform/gtk/RenderThemeGtk3.cpp:
+ (WebCore::RenderThemeGtk::getStockIcon): Use adoptGRef instead of
+ adoptGRefPtr which doesn't exist.
+
+2011-01-05 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51903
+ Tell UI process which subframe is largest
+
+ * WebCore.exp.in: Exported FrameView::contentsSize().
+
+2011-01-04 Chris Fleizach <cfleizach@apple.com>
+
+ Unreviewed. GTK build fix.
+
+ WK2: Support Accessibility
+ https://bugs.webkit.org/show_bug.cgi?id=51859
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::axObjectCache):
+
+2011-01-04 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r74992.
+ http://trac.webkit.org/changeset/74992
+ https://bugs.webkit.org/show_bug.cgi?id=51917
+
+ Crash in HTMLDocumentParser::suspendScheduledTasks()
+ (Requested by tkent on #webkit).
+
+ * dom/DocumentParser.cpp:
+ * dom/DocumentParser.h:
+ * html/parser/HTMLDocumentParser.cpp:
+ * html/parser/HTMLDocumentParser.h:
+ * html/parser/HTMLParserScheduler.cpp:
+ (WebCore::HTMLParserScheduler::HTMLParserScheduler):
+ * html/parser/HTMLParserScheduler.h:
+ (WebCore::HTMLParserScheduler::isScheduledForResume):
+ * page/PageGroupLoadDeferrer.cpp:
+ (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
+ (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
+
+2011-01-04 Benjamin Poulain <benjamin.poulain@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] [WK2] Add support for non-trivial context menu action
+ https://bugs.webkit.org/show_bug.cgi?id=51902
+
+ Fix the preprocessor guard for ContextMenuItemTagSelectAll in
+ the implementation of ContextMenuController::contextMenuItemSelected(). The guard was
+ inconsistent with what is defined in ContextMenuItem.h.
+
+ * page/ContextMenuController.cpp:
+ (WebCore::ContextMenuController::contextMenuItemSelected):
+
+2011-01-04 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Ryosuke Niwa.
+
+ Avoid manual ref/deref in AsyncScriptRunner by using PendingScript
+ https://bugs.webkit.org/show_bug.cgi?id=51723
+
+ ScriptElement should also be able to keep its Element+CachedScript in
+ a PendingScript, and then executeScriptSoon can accept a PendingScript.
+ Once HTMLScriptRunner, ScriptElement, and AsyncScriptRunner all use
+ PendingScripts, then generic request and execute which operate on
+ PendingScripts can be factored out to avoid code duplicate that we have.
+
+ No new tests because no new functionality.
+
+ * dom/AsyncScriptRunner.cpp:
+ (WebCore::AsyncScriptRunner::~AsyncScriptRunner):
+ (WebCore::AsyncScriptRunner::executeScriptSoon):
+ (WebCore::AsyncScriptRunner::timerFired):
+ * dom/AsyncScriptRunner.h:
+ * dom/PendingScript.h: Add ctor which sets element and cachedScript. Rename adoptElement->setElement.
+ * dom/HTMLScriptRunner.cpp:
+ (WebCore::HTMLScriptRunner::requestPendingScript):
+
+2011-01-04 Jeff Miller <jeffm@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Member variable and method naming cleanup to be consistent with WebKit2.
+ https://bugs.webkit.org/show_bug.cgi?id=51228
+
+ * page/win/EventHandlerWin.cpp:
+ (WebCore::EventHandler::eventActivatedView):
+ Rename activatedWebView() to didActivateWebView().
+
+ * platform/PlatformMouseEvent.h:
+ Rename m_activatedWebView to m_didActivateWebView.
+
+ (WebCore::PlatformMouseEvent::PlatformMouseEvent):
+ Initialize platform-specific member variables in PlatformMouseEvent constructors.
+
+ (WebCore::PlatformMouseEvent::didActivateWebView):
+ Rename activatedWebView() to didActivateWebView().
+
+ * platform/win/PlatformMouseEventWin.cpp:
+ (WebCore::PlatformMouseEvent::PlatformMouseEvent):
+ Rename m_activatedWebView to m_didActivateWebView.
+
+2011-01-04 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Darin Adler.
+
+ CSS3 :nth-child selector and valid whitespace test fails
+ https://bugs.webkit.org/show_bug.cgi?id=36279
+
+ Teach the tokenizer to allow white spaces around [+/-] signs in nth constructs.
+
+ Test: fast/css/css3-nth-space.html
+
+ * css/tokenizer.flex:
+
+2011-01-04 Chris Fleizach <cfleizach@apple.com>
+
+ Unreviewed. Build fix.
+
+ WK2: Support Accessibility
+ https://bugs.webkit.org/show_bug.cgi?id=51859
+
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (fallbackObject):
+
+2011-01-04 Cosmin Truta <ctruta@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ [chromium] PNG compression settings optimized for speed
+ https://bugs.webkit.org/show_bug.cgi?id=51719
+
+ Although Z_HUFFMAN_ONLY is the fastest on hard-to-compress images,
+ it is also the slowest, by a wide margin, on easy-to-compress images.
+ Use a more balanced configuration, based on the libpng compression defaults,
+ but with a faster compression level (3 instead of 6), and a faster filter
+ ("sub" instead of "all").
+
+ No change in behaviour, so no new tests.
+
+ * platform/image-encoders/skia/PNGImageEncoder.cpp:
+ (WebCore::PNGImageEncoder::encode):
+
+2011-01-04 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ WK2: Support Accessibility
+ https://bugs.webkit.org/show_bug.cgi?id=51859
+
+ WK2 doesn't use platform scroll views anymore. Accessibility code
+ needs to have its own scroll views.
+
+ Test: platform/mac/accessibility/webkit-scrollarea.html
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.exp.in:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * accessibility/AXObjectCache.cpp:
+ (WebCore::AXObjectCache::AXObjectCache):
+ (WebCore::AXObjectCache::get):
+ (WebCore::AXObjectCache::getOrCreate):
+ (WebCore::AXObjectCache::rootObject):
+ (WebCore::AXObjectCache::remove):
+ (WebCore::AXObjectCache::handleScrollbarUpdate):
+ * accessibility/AXObjectCache.h:
+ (WebCore::AXObjectCache::handleScrollbarUpdate):
+ * accessibility/AccessibilityARIAGrid.h:
+ * accessibility/AccessibilityAllInOne.cpp:
+ * accessibility/AccessibilityImageMapLink.cpp:
+ * accessibility/AccessibilityImageMapLink.h:
+ * accessibility/AccessibilityListBoxOption.cpp:
+ * accessibility/AccessibilityListBoxOption.h:
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::AccessibilityObject::updateChildrenIfNecessary):
+ (WebCore::AccessibilityObject::elementAccessibilityHitTest):
+ (WebCore::AccessibilityObject::axObjectCache):
+ (WebCore::AccessibilityObject::focusedUIElement):
+ * accessibility/AccessibilityObject.h:
+ (WebCore::AccessibilityObject::isAccessibilityScrollView):
+ (WebCore::AccessibilityObject::isScrollView):
+ (WebCore::AccessibilityObject::canSetNumericValue):
+ (WebCore::AccessibilityObject::scrollBar):
+ (WebCore::AccessibilityObject::size):
+ (WebCore::AccessibilityObject::setValue):
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::parentObject):
+ (WebCore::AccessibilityRenderObject::accessibilityHitTest):
+ (WebCore::AccessibilityRenderObject::updateChildrenIfNecessary):
+ (WebCore::AccessibilityRenderObject::addChildren):
+ * accessibility/AccessibilityRenderObject.h:
+ * accessibility/AccessibilityScrollView.cpp: Added.
+ (WebCore::AccessibilityScrollView::AccessibilityScrollView):
+ (WebCore::AccessibilityScrollView::create):
+ (WebCore::AccessibilityScrollView::scrollBar):
+ (WebCore::AccessibilityScrollView::children):
+ (WebCore::AccessibilityScrollView::updateChildrenIfNecessary):
+ (WebCore::AccessibilityScrollView::removeChildScrollbar):
+ (WebCore::AccessibilityScrollView::addChildScrollbar):
+ (WebCore::AccessibilityScrollView::addChildren):
+ (WebCore::AccessibilityScrollView::webAreaObject):
+ (WebCore::AccessibilityScrollView::accessibilityHitTest):
+ (WebCore::AccessibilityScrollView::document):
+ (WebCore::AccessibilityScrollView::elementRect):
+ (WebCore::AccessibilityScrollView::parentObject):
+ * accessibility/AccessibilityScrollView.h: Added.
+ (WebCore::AccessibilityScrollView::roleValue):
+ (WebCore::AccessibilityScrollView::scrollView):
+ (WebCore::AccessibilityScrollView::accessibilityIsIgnored):
+ (WebCore::AccessibilityScrollView::isAccessibilityScrollView):
+ (WebCore::toAccessibilityScrollView):
+ * accessibility/AccessibilityScrollbar.cpp:
+ (WebCore::AccessibilityScrollbar::AccessibilityScrollbar):
+ (WebCore::AccessibilityScrollbar::create):
+ (WebCore::AccessibilityScrollbar::elementRect):
+ (WebCore::AccessibilityScrollbar::document):
+ (WebCore::AccessibilityScrollbar::orientation):
+ (WebCore::AccessibilityScrollbar::isEnabled):
+ (WebCore::AccessibilityScrollbar::valueForRange):
+ (WebCore::AccessibilityScrollbar::setValue):
+ * accessibility/AccessibilityScrollbar.h:
+ (WebCore::AccessibilityScrollbar::setParent):
+ (WebCore::AccessibilityScrollbar::canSetValueAttribute):
+ (WebCore::AccessibilityScrollbar::canSetNumericValue):
+ (WebCore::AccessibilityScrollbar::isAccessibilityScrollbar):
+ (WebCore::AccessibilityScrollbar::parentObject):
+ (WebCore::AccessibilityScrollbar::roleValue):
+ * accessibility/mac/AccessibilityObjectMac.mm:
+ (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
+ (-[AccessibilityObjectWrapper remoteAccessibilityParentObject]):
+ (-[AccessibilityObjectWrapper position]):
+ (-[AccessibilityObjectWrapper scrollViewParent]):
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+ (-[AccessibilityObjectWrapper accessibilityHitTest:]):
+ (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
+ * dom/Document.cpp:
+ (WebCore::Document::axObjectCache):
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::accessibilityRemoteObject):
+ * loader/FrameLoaderClient.h:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::~FrameView):
+ (WebCore::FrameView::axObjectCache):
+ * page/FrameView.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::setHasHorizontalScrollbar):
+ (WebCore::ScrollView::setHasVerticalScrollbar):
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::~Scrollbar):
+ (WebCore::Scrollbar::scroll):
+ (WebCore::Scrollbar::axObjectCache):
+ * platform/Scrollbar.h:
+ * platform/Widget.h:
+ (WebCore::Widget::axObjectCache):
+
+2011-01-04 W. James MacLean <wjmaclean@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Add support to compositor to composite to offscreen texture.
+ https://bugs.webkit.org/show_bug.cgi?id=50833
+
+ A patch to extend compositor to be able to composite into an offscreen texture instead
+ of just directly to the display buffer. Builds on RenderSurfaceChromium support.
+ Explicitly resets alpha channel before rendering to display.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::updateAndDrawRootLayer):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::setCompositeOffscreen):
+ (WebCore::LayerRendererChromium::useRenderSurface):
+ (WebCore::LayerRendererChromium::setScissorToRect):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::isCompositingOffscreen):
+ (WebCore::LayerRendererChromium::getOffscreenLayerTexture):
+
+2011-01-04 Evan Martin <evan@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ [chromium] depend on harfbuzz explicitly
+ https://bugs.webkit.org/show_bug.cgi?id=51895
+
+ platform/graphics/chromium uses Harfbuzz directly. Rather than
+ expecting Skia to adjust the include paths, be explicit about
+ the dependency.
+
+ * WebCore.gyp/WebCore.gyp:
+
+2011-01-04 Darin Adler <darin@apple.com>
+
+ Reviewed by Brady Eidson.
+
+ Add back/forward encoding and decoding to WebKit2
+ https://bugs.webkit.org/show_bug.cgi?id=51901
+
+ * WebCore.exp.in: Export functions used in WebKit2.
+
+ * history/HistoryItem.cpp:
+ (WebCore::HistoryItem::encodeBackForwardTree): Use references instead of pointers.
+ (WebCore::HistoryItem::encodeBackForwardTreeNode): Ditto.
+ (WebCore::HistoryItem::decodeBackForwardTree): Ditto.
+ * history/HistoryItem.h: Ditto.
+ * platform/network/FormData.cpp:
+ (WebCore::encode): Ditto.
+ (WebCore::decode): Ditto.
+ (WebCore::FormData::encodeForBackForward): Ditto.
+ (WebCore::FormData::decodeForBackForward): Ditto.
+ * platform/network/FormData.h: Ditto.
+
+2011-01-04 Xiaomei Ji <xji@chromium.org>
+
+ Reviewed by Dan Bernstein.
+
+ Implement sel.modify('move', 'left'/'right', 'lineBoundary').
+ https://bugs.webkit.org/show_bug.cgi?id=33435
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::modifyMovingRight):
+ (WebCore::SelectionController::modifyMovingLeft):
+ * editing/visible_units.cpp:
+ (WebCore::logicalStartOfLine):
+ (WebCore::logicalEndOfLine):
+ (WebCore::leftBoundaryOfLine):
+ (WebCore::rightBoundaryOfLine):
+ * editing/visible_units.h:
+
+2011-01-04 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Use the default CSS text input control border width of relying on the GTK+ theme
+ https://bugs.webkit.org/show_bug.cgi?id=51887
+
+ Do not rely on the GTK+ theme to determine text control borders. This simplifies
+ the RenderTheme code, prevents metrics differences between GTK+ 2.x and 3.x and
+ doesn't break the rendering of any theme that I've encountered.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::adjustSearchFieldStyle): No longer call setTextInputBorders, but
+ still disable any border radius.
+ * platform/gtk/RenderThemeGtk.h: Remove setTextInputBorders and no longer override the
+ default style of text areas and text input controls.
+ * platform/gtk/RenderThemeGtk2.cpp: Ditto.
+ * platform/gtk/RenderThemeGtk3.cpp: Ditto.
+
+2011-01-03 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Darin Adler.
+
+ Remove the last non-GObject usage of PlatformRefPtr and move the code to GRefPtr
+ https://bugs.webkit.org/show_bug.cgi?id=51846
+
+ No new tests. This should not introduce any functional changes.
+
+ Changed all references to PlatformRefPtr in GTK+ code to GRefPtr. Changed
+ all references to PlatformRefPtr in Brew code to RefPtr.
+
+2011-01-04 David Kilzer <ddkilzer@apple.com>
+
+ <http://webkit.org/b/51890> Move ResourceLoadPriority.h into WebCore/platform/network
+
+ Reviewed by Antti Koivisto.
+
+ This is needed to prevent a WebCore/platform policy violation in
+ my next patch.
+
+ * WebCore.gypi: Updated for moved header.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * platform/network/ResourceLoadPriority.h: Renamed from WebCore/loader/ResourceLoadPriority.h.
+
+2011-01-04 Brady Eidson <beidson@apple.com>
+
+ Reviewed by a spell checker.
+
+ * storage/StorageMap.h: mesured? Really?
+
+2011-01-04 Carlos Garcia Campos <cgarcia@igalia.com> and Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Port stock icon painting to GtkStyleContext
+ https://bugs.webkit.org/show_bug.cgi?id=51764
+
+ Port stock icon painting for media and search input elements to
+ GtkStyleContext. Also create the initial machinery for accessing
+ style contexts for all GTK+ 3.x based widgets.
+
+ No new tests. This should not change functionality.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::paintGdkPixbuf):
+ (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
+ (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
+ (WebCore::RenderThemeGtk::paintMediaButton):
+ * platform/gtk/RenderThemeGtk.h:
+ * platform/gtk/RenderThemeGtk2.cpp:
+ (WebCore::RenderThemeGtk::getStockIcon):
+ * platform/gtk/RenderThemeGtk3.cpp:
+ (WebCore::gtkStyleChangedCallback):
+ (WebCore::styleContextMap):
+ (WebCore::getStyleContext):
+ (WebCore::RenderThemeGtk::paintMenuList):
+
+2010-12-31 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ Scripts should not be executed before preceding stylesheets are loaded
+ https://bugs.webkit.org/show_bug.cgi?id=8852
+
+ Block inline script execution on pending stylesheet loads. This matches
+ other browsers and HTML5.
+
+ Tests: fast/tokenizer/inline-script-stylesheet-write.html
+ fast/tokenizer/inline-script-stylesheet.html
+
+ * dom/PendingScript.cpp:
+ (WebCore::PendingScript::releaseElementAndClear):
+ * dom/PendingScript.h:
+ (WebCore::PendingScript::PendingScript):
+ (WebCore::PendingScript::operator=):
+ (WebCore::PendingScript::startingPosition):
+ (WebCore::PendingScript::setStartingPosition):
+ * html/HTMLLinkElement.cpp:
+ (WebCore::HTMLLinkElement::process):
+
+ This fixes an unrelated bug with beforeload events that was exposed by the other
+ changes (fast/dom/beforeload/remove-link-in-beforeload-listener.html).
+
+ * html/parser/HTMLScriptRunner.cpp:
+ (WebCore::HTMLScriptRunner::sourceFromPendingScript):
+ (WebCore::HTMLScriptRunner::runScript):
+
+2011-01-04 Xianzhu Wang <wangxianzhu@google.com>
+
+ Reviewed by Darin Adler.
+
+ Let DataView.getInt8() and DataView.setInt8() use int8_t instead of
+ ambiguous 'char' to fix fast/canvas/webgl/data-view-test.html failure
+ on ARM.
+ https://bugs.webkit.org/show_bug.cgi?id=51861
+
+ By the way, changed other getIntXX() and setIntXX() methods to use
+ more precise integer types.
+
+ * bindings/js/JSDataViewCustom.cpp:
+ (WebCore::setDataViewMember):
+ * bindings/v8/custom/V8DataViewCustom.cpp:
+ (WebCore::V8DataView::getInt8Callback):
+ (WebCore::V8DataView::setInt8Callback):
+ * html/canvas/DataView.cpp:
+ (WebCore::DataView::getInt8):
+ (WebCore::DataView::setInt8):
+ * html/canvas/DataView.h:
+ * html/canvas/DataView.idl:
+
+2011-01-04 Yong Li <yoli@rim.com>
+
+ Reviewed by Adam Barth.
+
+ Suspend HTMLParserScheduler when page load is deferred to
+ avoid potential JS re-entrancy. Otherwise, when JS execution is triggered
+ from an external script or by events, and is blocked by a modal dialog,
+ WebKit can parse more HTML source and also start another JS execution.
+
+ https://bugs.webkit.org/show_bug.cgi?id=48077
+
+ Test case: WebCore/manual-tests/bugzilla-48077.html.
+
+ * dom/DocumentParser.cpp:
+ (WebCore::DocumentParser::suspendScheduledTasks):
+ (WebCore::DocumentParser::resumeScheduledTasks):
+ * dom/DocumentParser.h:
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::suspendScheduledTasks):
+ (WebCore::HTMLDocumentParser::resumeScheduledTasks):
+ * html/parser/HTMLParserScheduler.cpp:
+ (WebCore::HTMLParserScheduler::HTMLParserScheduler):
+ (WebCore::HTMLParserScheduler::suspend):
+ (WebCore::HTMLParserScheduler::resume):
+ * html/parser/HTMLParserScheduler.h:
+ (WebCore::HTMLParserScheduler::isScheduledForResume):
+ * page/PageGroupLoadDeferrer.cpp:
+ (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
+ (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
+
+2011-01-04 Tony Gentilcore <tonyg@chromium.org>
+
+ Unreviewed build fix.
+
+ Include glib-object.h for GObject
+ https://bugs.webkit.org/show_bug.cgi?id=51876
+
+ * bindings/gobject/DOMObjectCache.cpp:
+
+2011-01-04 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Dan Bernstein.
+
+ Clicking on the first or the last letter of LTR/RTL text in a RTL/LTR block puts caret on the opposite side.
+ https://bugs.webkit.org/show_bug.cgi?id=50992
+
+ Fixed the bug by interchanging the offset when the direction of inline text box and the containing block
+ does not match. Reused the code added by http://trac.webkit.org/changeset/73553.
+
+ Test: editing/selection/caret-bidi-first-and-last-letters.html
+
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::offsetForPosition):
+
+2010-12-29 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Remove 2 unnecessary includes from Document.h
+ https://bugs.webkit.org/show_bug.cgi?id=51727
+
+ No new tests because no changed functionality.
+
+ * dom/Document.cpp:
+ * dom/Document.h:
+ * editing/Editor.cpp:
+ * editing/SpellChecker.h:
+ * editing/SplitTextNodeCommand.cpp:
+ * editing/TextCheckingHelper.cpp:
+ * page/FrameView.cpp:
+ * page/Page.cpp:
+ * rendering/HitTestResult.cpp:
+ * rendering/InlineTextBox.cpp:
+ * rendering/InlineTextBox.h:
+ * rendering/svg/SVGInlineFlowBox.cpp:
+
+2011-01-04 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed WinCE build fix.
+
+ * CMakeListsWinCE.txt: Added missing include directories, files and libraries.
+
+2011-01-04 Yi Shen <yi.4.shen@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ Provide an interface to require using fullscreen mediaplayer
+ https://bugs.webkit.org/show_bug.cgi?id=51133
+
+ Only video should be displayed in fullscreen when
+ requiresFullscreenForVideoPlayback is specified.
+
+ No new tests because no client implements requiresFullscreenForVideoPlayback yet.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::updatePlayState):
+
+2011-01-04 Benjamin Poulain <benjamin.poulain@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] [WK2] create an initial implementation of the context menu handling for WebKit 2
+ https://bugs.webkit.org/show_bug.cgi?id=51825
+
+ Implement contextMenuItemVector() for Qt, this method is used in WebKit 2 to get the
+ platform independent menu informations.
+
+ * platform/qt/ContextMenuQt.cpp:
+ (WebCore::contextMenuItemVector):
+
+2011-01-04 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r74960.
+ http://trac.webkit.org/changeset/74960
+ https://bugs.webkit.org/show_bug.cgi?id=51868
+
+ Rollout since we hit an assert after this patch. (Requested by
+ krit on #webkit).
+
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::buildInstanceTree):
+
+2011-01-04 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r74961.
+ http://trac.webkit.org/changeset/74961
+ https://bugs.webkit.org/show_bug.cgi?id=51867
+
+ breaks 32/64-bits debug bots build (Requested by philn-tp on
+ #webkit).
+
+ * platform/graphics/gstreamer/GStreamerGWorld.cpp:
+ (WebCore::GStreamerGWorld::setWindowOverlay):
+
+2011-01-03 Philippe Normand <pnormand@igalia.com>
+
+ Rubber-stamped by Eric Seidel.
+
+ [GStreamer] build fails with gstreamer core 0.10.31 and -plugins-base 0.10.30
+ https://bugs.webkit.org/show_bug.cgi?id=51810
+
+ Based on a patch by Mart Raudsepp.
+
+ No new tests, build fix only.
+
+ * platform/graphics/gstreamer/GStreamerGWorld.cpp:
+ (WebCore::GStreamerGWorld::setWindowOverlay): Use the new xoverlay
+ API if the GST_CHECK_PLUGINS_BASE_VERSION macro is defined. It was
+ introduced in same version as the xoverlay API change.
+
+2011-01-04 Leo Yang <leo.yang@torchmobile.com.cn>
+
+ Reviewed by Dirk Schulze.
+
+ Malformed SVG causes crash in updateContainerOffset
+ https://bugs.webkit.org/show_bug.cgi?id=44610
+
+ We should check recursive <use> at the begining of
+ WebCore::SVGUseElement::buildInstanceTree instead
+ of at the end of it because the target element's
+ children may cause infinite recursive <use>.
+
+ Test: svg/custom/recursive-use.svg
+
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::buildInstanceTree):
+
+2011-01-04 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, build fix.
+
+ Try to fix Clang build.
+
+ * css/CSSParser.cpp:
+ (WebCore::valueFromSideKeyword):
+ (WebCore::CSSParser::parseLinearGradient):
+
+2011-01-03 Julie-Jeongeun-Kim <Jeongeun.Kim@obigo.com>
+
+ Reviewed by Darin Adler.
+
+ HTML5 Conformance Test failure: approved/xhtml5/object_border_pixel.xhtml
+ https://bugs.webkit.org/show_bug.cgi?id=48596
+
+ border attribute was not parsed in HTMLObjectElement.
+ I added code for it as HTMLImageElement handled.
+
+ new test:fast/html/object-border.html
+
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::parseMappedAttribute):
+
+2011-01-03 Darin Adler <darin@apple.com>
+
+ Try to fix Chromium build.
+
+ * history/HistoryItem.cpp:
+ (WebCore::HistoryItem::encodeBackForwardTreeNode): Added a V8 case here.
+ Not sure this ever will be used with V8.
+ (WebCore::HistoryItem::decodeBackForwardTree): Ditto.
+
+2011-01-03 Darin Adler <darin@apple.com>
+
+ Try to fix Leopard build.
+
+ * history/HistoryItem.cpp: Use a consistent type, uint64_t, for the
+ size variable.
+
+2011-01-03 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Fixes before child calculation when adding anonymous childs to table parts.
+ https://bugs.webkit.org/show_bug.cgi?id=50932
+
+ Fix in r74364 was incomplete. When before child is equal to the table part(to
+ which the new child is getting added), it confuses the table part to add it
+ incorrectly as an after child. The patch fixes by passing the before child as
+ the table part's first child.
+
+ Tests: fast/css-generated-content/table-before-after-child-add.html
+ fast/css-generated-content/table-cell-before-after-child-add.html
+ fast/css-generated-content/table-row-before-after-child-add.html
+ fast/css-generated-content/table-row-before-after-child-add.html
+
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::addChild):
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::addChild):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::addChild):
+
+2011-01-03 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Shrink HTMLTableCellElement
+ https://bugs.webkit.org/show_bug.cgi?id=51858
+
+ * html/HTMLTableCellElement.cpp:
+ (WebCore::HTMLTableCellElement::HTMLTableCellElement): Removed intialization of m_row and
+ m_col.
+ * html/HTMLTableCellElement.h: Removed m_row and m_col and their accessors.
+
+2011-01-03 Darin Adler <darin@apple.com>
+
+ Fix build.
+
+ * platform/network/FormData.cpp:
+ (WebCore::FormData::create): Roll back uint8_t change.
+ (WebCore::FormData::flatten): Ditto.
+ (WebCore::FormData::flattenToString): Ditto.
+ (WebCore::encode): Ditto.
+ (WebCore::decode): Ditto.
+ (WebCore::FormData::encodeForBackForward):
+ * platform/network/FormData.h: Ditto.
+ * platform/network/mac/FormDataStreamMac.mm:
+ (WebCore::advanceCurrentStream): Ditto.
+
+2011-01-03 Darin Adler <darin@apple.com>
+
+ Reviewed by Brady Eidson.
+
+ Add code to encode/decode the back/forward tree
+ https://bugs.webkit.org/show_bug.cgi?id=51853
+
+ * history/HistoryItem.cpp:
+ (WebCore::HistoryItem::encodeBackForwardTree): Added.
+ (WebCore::HistoryItem::encodeBackForwardTreeNode): Added.
+ (WebCore::HistoryItem::decodeBackForwardTree): Added.
+ * history/HistoryItem.h: Added functions above.
+
+ * platform/network/FormData.cpp:
+ (WebCore::FormData::create): Changed type to Vector<uint8_t> instead of
+ Vector<char>. This type is used in our newer code for vectors of bytes.
+ (WebCore::FormData::flatten): Ditto.
+ (WebCore::FormData::flattenToString): Ditto. Had to add a cast here.
+ (WebCore::FormData::encodeForBackForward): Added.
+ (WebCore::FormData::decodeForBackForward): Added.
+ * platform/network/FormData.h: Changed type to Vector<uint8_t> instead of
+ Vector<char>. Also made some single-argument constructors explicit.
+ Also added the new functions.
+
+ * platform/network/mac/FormDataStreamMac.mm:
+ (WebCore::advanceCurrentStream): Changed to use uint8_t to match above.
+
+2011-01-03 Simon Fraser <simon.fraser@apple.com>
+
+ Attempt to fix GTK build.
+
+ * platform/graphics/gtk/FontGtk.cpp:
+ (WebCore::drawGlyphsShadow):
+
+2011-01-03 Helder Correia <helder@sencha.com>
+
+ Reviewed by Simon Fraser.
+
+ ContextShadow can avoid code duplication for getting the CTM
+ https://bugs.webkit.org/show_bug.cgi?id=51799
+
+ ContextShadow defines its own getTransformationMatrixFromContext()
+ which does exactly the same as GraphicsContext::getCTM().
+
+ Existing tests: fast/canvas/canvas*shadow*html
+
+ * platform/graphics/ContextShadow.cpp:
+ (WebCore::ContextShadow::mustUseContextShadow):
+ (WebCore::ContextShadow::adjustBlurDistance):
+ (WebCore::ContextShadow::calculateLayerBoundingRect):
+ * platform/graphics/ContextShadow.h:
+ * platform/graphics/cairo/ContextShadowCairo.cpp:
+ (WebCore::ContextShadow::beginShadowLayer):
+ (WebCore::ContextShadow::endShadowLayer):
+ (WebCore::ContextShadow::drawRectShadowWithoutTiling):
+ * platform/graphics/cairo/FontCairo.cpp:
+ (WebCore::drawGlyphsShadow):
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::drawPathShadow):
+ * platform/graphics/cairo/ImageCairo.cpp:
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/gtk/FontGtk.cpp:
+ (WebCore::drawGlyphsShadow):
+ * platform/graphics/qt/ContextShadowQt.cpp:
+ (WebCore::ContextShadow::beginShadowLayer):
+ (WebCore::ContextShadow::endShadowLayer):
+ * platform/graphics/qt/FontQt.cpp:
+ (WebCore::drawTextCommon):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ * platform/graphics/qt/ImageQt.cpp:
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/qt/StillImageQt.cpp:
+ (WebCore::StillImage::draw):
+
+2011-01-03 Darin Adler <darin@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ InsertTextCommand::m_charactersAdded is unused
+ https://bugs.webkit.org/show_bug.cgi?id=51849
+
+ * editing/InsertTextCommand.cpp:
+ (WebCore::InsertTextCommand::InsertTextCommand): Don't initialize m_charactersAdded.
+ (WebCore::InsertTextCommand::input): Don't update m_charactersAdded.
+ * editing/InsertTextCommand.h: Removed charactersAdded function and
+ m_charactersAdded data member.
+
+2011-01-03 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Move paintMenuListButton() to RenderThemeGtk.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=51832
+
+ Method paintMenuListButton() contains code common to both gtk 2
+ and 3, so it can be moved to RenderThemeGtk.cpp instead of
+ duplicating it.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::paintMenuListButton):
+ * platform/gtk/RenderThemeGtk2.cpp:
+ * platform/gtk/RenderThemeGtk3.cpp:
+
+2011-01-03 Pratik Solanki <psolanki@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51850
+ Put CFNetwork loader code inside USE(CFNETWORK)
+
+ Add USE(CFNETWORK) macros around all the cf/mac network files. Also added all CFNetwork
+ files to the WebCore Xcode project.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * loader/cf/ResourceLoaderCFNet.cpp:
+ * loader/mac/ResourceLoaderMac.mm:
+ * platform/network/cf/AuthenticationCF.cpp:
+ * platform/network/cf/AuthenticationCF.h:
+ * platform/network/cf/CookieJarCFNet.cpp:
+ * platform/network/cf/CookieStorageCFNet.cpp:
+ * platform/network/cf/CookieStorageCFNet.h:
+ * platform/network/cf/CredentialStorageCFNet.cpp:
+ * platform/network/cf/FormDataStreamCFNet.cpp:
+ * platform/network/cf/FormDataStreamCFNet.h:
+ * platform/network/cf/LoaderRunLoopCF.cpp:
+ * platform/network/cf/LoaderRunLoopCF.h:
+ * platform/network/cf/ResourceError.h:
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ * platform/network/cf/ResourceRequest.h:
+ * platform/network/cf/ResourceRequestCFNet.cpp:
+ * platform/network/cf/ResourceRequestCFNet.h:
+ * platform/network/cf/ResourceResponse.h:
+ * platform/network/cf/ResourceResponseCFNet.cpp:
+ * platform/network/mac/AuthenticationMac.h:
+ * platform/network/mac/AuthenticationMac.mm:
+ * platform/network/mac/FormDataStreamMac.h:
+ * platform/network/mac/FormDataStreamMac.mm:
+ * platform/network/mac/ResourceError.h:
+ * platform/network/mac/ResourceHandleMac.mm:
+ * platform/network/mac/ResourceRequest.h:
+ * platform/network/mac/ResourceRequestMac.mm:
+ * platform/network/mac/ResourceResponse.h:
+ * platform/network/mac/ResourceResponseMac.mm:
+
+2011-01-03 Yi Shen <yi.4.shen@nokia.com>
+
+ Reviewed by Adam Barth.
+
+ [Qt] Add SelectAll option to the context menu for the editor
+ https://bugs.webkit.org/show_bug.cgi?id=50049
+
+ Enable SelectAll for the Qt context menu.
+
+ * page/ContextMenuController.cpp:
+ (WebCore::ContextMenuController::populate):
+ * platform/ContextMenuItem.h:
+ * platform/LocalizationStrategy.h:
+ * platform/LocalizedStrings.cpp:
+ (WebCore::contextMenuItemTagSelectAll):
+ * platform/LocalizedStrings.h:
+
+2011-01-03 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Shrink RootInlineBox
+ https://bugs.webkit.org/show_bug.cgi?id=51847
+
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::alignBoxesInBlockDirection): Changed to use the baselineType()
+ accessor.
+ * rendering/RootInlineBox.h: Rolled m_baselineType into a bitfield. Changed its type to
+ unsigned because otherwise MSVC treats it as signed.
+ (WebCore::RootInlineBox::baselineType): Added a cast.
+
+2011-01-03 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Split webkitprivate.{cpp,h} in more manageable chunks
+ https://bugs.webkit.org/show_bug.cgi?id=50698
+
+ Fix DOM bindings generation to no longer include the now-gone
+ webkitprivate.h header, including the appropriate replacements
+ instead.
+
+ * bindings/scripts/CodeGeneratorGObject.pm:
+
+2011-01-03 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Add Encode/Decode machinery Darin and I plan to work with for back/forward stuff in WebKit2.
+
+ * ForwardingHeaders/wtf/Decoder.h: Added.
+ * ForwardingHeaders/wtf/Encoder.h: Added.
+
+2011-01-03 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ AX: Regression: WebKit no longer auto-scrolls with VoiceOver navigation
+ https://bugs.webkit.org/show_bug.cgi?id=51833
+
+ Make sure the web area returns the contentsSize, not the same size as what is displayed.
+
+ Test: platform/mac/accessibility/webarea-size-equals-content-size.html
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::boundingBoxRect):
+
+2011-01-03 Simon Fraser <simon.fraser@apple.com>
+
+ Fix warning in 32-bit builds.
+
+ * css/CSSGradientValue.cpp:
+ (WebCore::CSSLinearGradientValue::createGradient):
+
+2011-01-03 Benjamin C Meyer <bmeyer@rim.com>
+
+ Reviewed by Daniel Bates.
+
+ In the cmake build system move logic related to ENABLE_NOTIFICATIONS into its own block.
+ https://bugs.webkit.org/show_bug.cgi?id=51827
+
+ * CMakeLists.txt:
+
+2011-01-03 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Remove the unused RenderTableCell::m_percentageHeight
+ https://bugs.webkit.org/show_bug.cgi?id=51837
+
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::RenderTableCell): Removed initialization of m_percentageHeight.
+ * rendering/RenderTableCell.h: Removed m_percentageHeight.
+
+2011-01-03 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by David Hyatt.
+
+ Implement -webkit-linear-gradient and -webkit-radial-gradient
+ https://bugs.webkit.org/show_bug.cgi?id=28152
+
+ Add support for -webkit-radial-gradients.
+
+ Tests: fast/gradients/css3-radial-gradients.html
+ fast/gradients/css3-radial-gradients2.html
+
+ * css/CSSGradientValue.cpp:
+ (WebCore::blend): Used to blend colors, which is necessary when truncating
+ the start of radial gradients.
+ (WebCore::GradientStop): Small struct to aid gradient stop processing.
+ (WebCore::CSSGradientValue::addStops): Rename 'positions' to 'stops', and store
+ the color so that we can blend it when truncating radial gradients. Changed
+ to handle both linear and radial gradients.
+ (WebCore::CSSRadialGradientValue::cssText): Update to follow the spec.
+ (WebCore::CSSRadialGradientValue::resolveRadius): Stylistic change.
+ (WebCore::distanceToClosestCorner): New utility method.
+ (WebCore::distanceToFarthestCorner): Ditto.
+ (WebCore::CSSRadialGradientValue::createGradient): New logic to deal with shape and
+ fill rules.
+
+ * css/CSSGradientValue.h:
+ (WebCore::CSSGradientValue::isLinearGradient): Color-stop processing needs to know what
+ kind of gradient it's dealing with, so add new isFooGradient methods.
+ (WebCore::CSSGradientValue::isRadialGradient): Ditto.
+ (WebCore::CSSLinearGradientValue::isLinearGradient):
+ (WebCore::CSSRadialGradientValue::setShape): New setters for shape, size etc.
+ (WebCore::CSSRadialGradientValue::setSizingBehavior):
+ (WebCore::CSSRadialGradientValue::setEndHorizontalSize):
+ (WebCore::CSSRadialGradientValue::setEndVerticalSize):
+ (WebCore::CSSRadialGradientValue::isRadialGradient):
+
+ * css/CSSParser.h:
+ * css/CSSParser.h: Pass a CSSParserValueList* into parseFillPositionXY() and parseFillPosition()
+ so we can use parseFillPosition() when parsing a gradient function.
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseFillPositionXY): Pass in a CSSParserValueList*
+ (WebCore::CSSParser::parseFillPosition): Ditto
+ (WebCore::CSSParser::parseFillProperty): Pass m_valueList to parseFillPosition.
+ (WebCore::CSSParser::parseTransformOriginShorthand): Ditto
+ (WebCore::CSSParser::parseRadialGradient): Flesh out radial gradient parsing.
+ (WebCore::CSSParser::parseTransformOrigin): Pass m_valueList to parseFillPosition.
+ (WebCore::CSSParser::parsePerspectiveOrigin): Ditto
+
+ * css/CSSValueKeywords.in: New keywords for radial gradient shape and fill behaviors.
+
+ * platform/graphics/Gradient.cpp:
+ (WebCore::Gradient::Gradient): Pass aspect ratio for elliptical gradients.
+ * platform/graphics/Gradient.h: Add aspect ratio for elliptical gradients.
+ (WebCore::Gradient::create):
+ (WebCore::Gradient::startRadius): Expose radii.
+ (WebCore::Gradient::endRadius):
+ (WebCore::Gradient::setStartRadius): Setters are required for when we need to scale color stops.
+ (WebCore::Gradient::setEndRadius):
+ (WebCore::Gradient::aspectRatio):
+ * platform/graphics/cg/GradientCG.cpp:
+ (WebCore::Gradient::paint): For elliptical gradients, scale the CTM.
+ * platform/graphics/wince/GraphicsContextWinCE.cpp:
+ (WebCore::GraphicsContext::fillRect): Use start/endRadius() rather than r0() and r1().
+
+2011-01-03 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by David Hyatt.
+
+ Implement -webkit-linear-gradient and -webkit-radial-gradient
+ https://bugs.webkit.org/show_bug.cgi?id=28152
+
+ Add support for the parsing and rendering of non-repeating CSS3 linear gradients,
+ according to <http://dev.w3.org/csswg/css3-images/#linear-gradients>.
+
+ Tests: fast/gradients/css3-color-stop-units.html
+ fast/gradients/css3-color-stops.html
+ fast/gradients/css3-gradient-parsing.html
+ fast/gradients/css3-linear-angle-gradients.html
+
+ * css/CSSGradientValue.h:
+ Add subclasses of CSSGradientValue for linear and radial gradients.
+
+ * css/CSSGradientValue.cpp:
+ (WebCore::CSSGradientValue::image): Add FIXME comment about why we can't cache
+ the gradient sometimes.
+ (WebCore::compareStops): positions are CSSValues now.
+ (WebCore::CSSGradientValue::sortStopsIfNeeded): Add assertion that this is only called
+ for old-style gradients.
+ (WebCore::CSSGradientValue::addStops): New method that handles the spec rules about
+ missing positions, ensuring that stop position is ordered, and spacing out stops
+ without positions. Also normalize gradients which use stops outside the 0-1 range
+ so that platforms can render them correctly.
+ (WebCore::positionFromValue): Determin the position on the gradient line for percentage,
+ number and length values.
+ (WebCore::CSSGradientValue::computeEndPoint):
+ (WebCore::CSSLinearGradientValue::cssText):
+ (WebCore::endPointsFromAngle): Compute endpoints for a gradient which covers the rectangle
+ given an angle.
+ (WebCore::CSSLinearGradientValue::createGradient):
+ (WebCore::CSSRadialGradientValue::cssText):
+ (WebCore::CSSRadialGradientValue::resolveRadius):
+ (WebCore::CSSRadialGradientValue::createGradient):
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue): Style fix.
+ (WebCore::CSSParser::parseContent): Use isGeneratedImageValue() and parseGeneratedImage()
+ (WebCore::CSSParser::parseFillImage): Use isGeneratedImageValue() and parseGeneratedImage()
+ (WebCore::CSSParser::parseBorderImage): Use isGeneratedImageValue() and parseGeneratedImage()
+ (WebCore::parseDeprecatedGradientPoint): Renamed to indicate that it's only used for -webkit-gradient.
+ (WebCore::parseDeprecatedGradientColorStop): Renamed to indicate that it's only used for -webkit-gradient,
+ and fixed to store CSSValues for the stop position.
+ (WebCore::CSSParser::parseDeprecatedGradient): Renamed to indicate that it's only used for -webkit-gradient,
+ and create CSSLinearGradientValue and CSSRadialGradientValue as appropriate.
+ (WebCore::valueFromSideKeyword):
+ (WebCore::parseGradientColorOrKeyword): Color parsing utility.
+ (WebCore::CSSParser::parseLinearGradient): New method to parse linear gradients.
+ (WebCore::CSSParser::parseRadialGradient): Stub for new method to parse radial gradients.
+ (WebCore::CSSParser::isGeneratedImageValue): Detect gradients and CSS canvas.
+ (WebCore::CSSParser::parseGeneratedImage): Parser for generated images like gradients
+ and CSS canvas.
+ * css/CSSParser.h:
+ * platform/graphics/Gradient.h:
+ (WebCore::Gradient::setP0): We need to be able to change the points when normalizing gradients.
+ (WebCore::Gradient::setP1): Ditto.
+
+2011-01-03 Noam Rosenthal <noam.rosenthal@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] document.getElementById(...) doesn't return the right object in combination with QGraphicsWidget
+ https://bugs.webkit.org/show_bug.cgi?id=51464
+
+ Added a way to bind any QObject created as a plugin to JavaScript,
+ by adding a custom member (qtObject) to WebCore::Widget.
+ Added a test to tst_qwebpage to make sure plugins created
+ as QGraphicsWidget are accessible through JavaScript.
+
+ * bindings/js/ScriptControllerQt.cpp:
+ (WebCore::ScriptController::createScriptInstanceForWidget):
+ * platform/Widget.h:
+ * platform/qt/WidgetQt.cpp:
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::setBindingObject):
+ (WebCore::Widget::bindingObject):
+
+2011-01-03 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51328
+
+ Printing on a page with body { height: 100% } clips out the overflow contents. This happened
+ because the computePageRects function was never correct. It was using the layer's width and height
+ for the document's width and height, and the layer no longer includes overflow in its width and
+ height. It was also incorrectly assuming the first page would begin at (0,0), and this is an invalid
+ assumption in RTL or vertical text environments.
+
+ Added printing/page-count-percentage-height.html
+
+ * page/PrintContext.cpp:
+ (WebCore::PrintContext::computePageRects):
+ (WebCore::PrintContext::computePageRectsWithPageSizeInternal):
+
+2011-01-03 Csaba Osztrogonác <ossy@webkit.org>
+
+ [Qt] Unreviewed buildfix for --minimal build after r74895.
+
+ * html/InputType.cpp: Missing include added.
+ * html/NumberInputType.cpp: Missing include added.
+
+2011-01-02 Darin Adler <darin@apple.com>
+
+ Reviewed by Kent Tamura.
+
+ Eliminate HTMLInputElement::m_deprecatedTypeNumber, other input refactoring and renaming
+ https://bugs.webkit.org/show_bug.cgi?id=51791
+
+ * dom/InputElement.h: Make sanitizeValueForTextField public so it can
+ be called by InputType.
+
+ * html/BaseButtonInputType.cpp:
+ (WebCore::BaseButtonInputType::accessKeyAction): Added.
+ (WebCore::BaseButtonInputType::storesValueSeparateFromAttribute): Added.
+ * html/BaseButtonInputType.h: Ditto.
+
+ * html/BaseCheckableInputType.cpp:
+ (WebCore::BaseCheckableInputType::canSetStringValue): Added.
+ (WebCore::BaseCheckableInputType::accessKeyAction): Added.
+ (WebCore::BaseCheckableInputType::fallbackValue): Added.
+ (WebCore::BaseCheckableInputType::storesValueSeparateFromAttribute): Added.
+ (WebCore::BaseCheckableInputType::isCheckable): Added.
+ * html/BaseCheckableInputType.h: Ditto.
+
+ * html/BaseDateAndTimeInputType.cpp:
+ (WebCore::BaseDateAndTimeInputType::hasSpinButton): Added.
+ * html/BaseDateAndTimeInputType.h: Ditto.
+
+ * html/BaseTextInputType.h: Made more functions private.
+
+ * html/ButtonInputType.cpp:
+ (WebCore::ButtonInputType::isTextButton): Added.
+ * html/ButtonInputType.h: Ditto.
+
+ * html/CheckboxInputType.cpp:
+ (WebCore::CheckboxInputType::willDispatchClick): Added.
+ (WebCore::CheckboxInputType::didDispatchClick): Added.
+ (WebCore::CheckboxInputType::isCheckbox): Added.
+ * html/CheckboxInputType.h: Ditto.
+
+ * html/DateTimeInputType.cpp:
+ (WebCore::DateTimeInputType::scaledStepValueShouldBeInteger): Fixed
+ typo in name of this function.
+ * html/DateTimeInputType.h: Ditto.
+ * html/DateTimeLocalInputType.cpp:
+ (WebCore::DateTimeLocalInputType::scaledStepValueShouldBeInteger): Ditto.
+ * html/DateTimeLocalInputType.h: Ditto.
+
+ * html/EmailInputType.cpp:
+ (WebCore::EmailInputType::isEmailField): Added.
+ * html/EmailInputType.h: Ditto.
+
+ * html/FileInputType.cpp:
+ (WebCore::FileInputType::FileInputType): Added.
+ (WebCore::FileInputType::canSetStringValue): Added.
+ (WebCore::FileInputType::canChangeFromAnotherType): Added.
+ (WebCore::FileInputType::files): Added.
+ (WebCore::FileInputType::canSetValue): Added.
+ (WebCore::FileInputType::getTypeSpecificValue): Added.
+ (WebCore::FileInputType::storesValueSeparateFromAttribute): Added.
+ (WebCore::FileInputType::setFileList): Added.
+ (WebCore::FileInputType::isFileUpload): Added.
+ * html/FileInputType.h: Ditto.
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::HTMLInputElement): Updated for data member
+ renaming and removal.
+ (WebCore::HTMLInputElement::isValidValue): Call canSetStringValue
+ instead of checking specific type numbers.
+ (WebCore::HTMLInputElement::getAllowedValueStepWithDecimalPlaces):
+ Use fastGetAttribute and fixed typo in the name of the
+ scaledStepValueShouldBeInteger function.
+ (WebCore::HTMLInputElement::isKeyboardFocusable): Call
+ InputType::isKeyboardFocusable; moved most of the type-specific
+ logic there.
+ (WebCore::HTMLInputElement::shouldUseInputMethod): Call
+ InputType::shouldUseInputMethod; moved the type-specific logic there.
+ (WebCore::HTMLInputElement::handleBlurEvent): Call
+ InputType::handleBlurEvent; moved the type-specific logic there.
+ (WebCore::HTMLInputElement::setType): Tweak the names and types
+ in this function.
+ (WebCore::HTMLInputElement::updateType): Removed the code that
+ set m_deprecatedTypeNumber. Compare types by comparing the value
+ from formControlType. Removed file-specific logic and instead call
+ InputType::canChangeFromAnotherType. Streamlined the logic for
+ activation callbacks.
+ (WebCore::HTMLInputElement::accessKeyAction): Call
+ InputType::accessKeyAction; moved the type-specific logic there.
+ (WebCore::HTMLInputElement::mapToEntry): Call
+ InputType::shouldRespectHeightAndWidthAttributes and
+ InputType::shouldRespectAlignAttribute.
+ (WebCore::HTMLInputElement::parseMappedAttribute): Updated
+ for name changes and the removal of m_defaultChecked. Changed the
+ alt attribute logic to be based on the class of the renderer.
+ Call InputType::srcAttributeChanged and moved the type-specific
+ logic there. Call shouldRespectAlignAttribute and
+ shouldRespectHeightAndWidthAttributes rather than having
+ type-specific logic here. Call minOrMaxAttributeChanged.
+ (WebCore::HTMLInputElement::rendererIsNeeded): Call
+ InputType::rendererIsNeeded; moved the type-specific logic there.
+ (WebCore::HTMLInputElement::attach): Removed the unneeded m_inited
+ flag, which was redundant with the m_haveType flag. Call
+ InputType::attach; moved the type-specific logic there.
+ (WebCore::HTMLInputElement::altText): Use fastGetAttribute.
+ (WebCore::HTMLInputElement::isSuccessfulSubmitButton): Call
+ InputType::canBeSuccessfulSubmitButton; moved the type-specific
+ logic there.
+ (WebCore::HTMLInputElement::isActivatedSubmit): Updated for
+ name changes.
+ (WebCore::HTMLInputElement::setActivatedSubmit): Ditto.
+ (WebCore::HTMLInputElement::reset): Updated to use
+ InputType::storesValueSeparateFromAttribute. Also use
+ hasAttribute(checkedAttr) rather than m_defaultChecked,
+ since both are the same. Also updated for name change.
+ (WebCore::HTMLInputElement::setChecked): Updated for name
+ changes. Also added call to
+ InputType::shouldSendChangeEventAfterCheckedChanged and
+ moved the type-specific logic there.
+ (WebCore::HTMLInputElement::setIndeterminate): Call
+ isCheckable to see if indeterminate is allowed.
+ Also updated for name changes.
+ (WebCore::HTMLInputElement::copyNonAttributeProperties):
+ Updated for name changes and removed data members.
+ (WebCore::HTMLInputElement::value): Call
+ InputType::getTypeSpecificValue and InputType::fallbackValue.
+ Moved the type-specific logic there.
+ (WebCore::HTMLInputElement::valueWithDefault): Call
+ InputType::defaultValue. Moved the type-specific logic there.
+ (WebCore::HTMLInputElement::setSuggestedValue): Call
+ InputType::canSetSuggestedValue. Moved the type-specific logic
+ there.
+ (WebCore::HTMLInputElement::setValue): Call
+ InputType::canSetValue. Moved the type-specific logic there.
+ Clear the file list if it exists rather than checking the
+ type explicitly. We could probably do that a more elegant way.
+ (WebCore::HTMLInputElement::placeholder): Use fastGetAttribute.
+ (WebCore::HTMLInputElement::setValueFromRenderer): Use the
+ isFileUpload function in the assertion.
+ (WebCore::HTMLInputElement::setFileListFromRenderer): Put most
+ of the code from this function into FileInputType::setFileList.
+ (WebCore::HTMLInputElement::preDispatchEventHandler): Changed
+ to call InputType::willDispatchClick, which does the type-specific
+ work. Still need to use a single struct for all types, because
+ the type of the element could change during the event handling.
+ (WebCore::HTMLInputElement::postDispatchEventHandler): Changed
+ to call InputType::didDispatchClick.
+ (WebCore::HTMLInputElement::defaultValue): Use fastGetAttribute.
+ (WebCore::HTMLInputElement::accept): Use fastGetAttribute.
+ (WebCore::HTMLInputElement::alt): Use fastGetAttribute.
+ (WebCore::HTMLInputElement::src): Use fastGetAttribute.
+ (WebCore::HTMLInputElement::setAutofilled): Updated for name
+ changes.
+ (WebCore::HTMLInputElement::files): Use InputType::files.
+ (WebCore::HTMLInputElement::isAcceptableValue): Use
+ InputType::isAcceptableValue.
+ (WebCore::HTMLInputElement::sanitizeValue): Use
+ InputType::sanitizeValue.
+ (WebCore::HTMLInputElement::hasUnacceptableValue): Use
+ InputType::hasUnacceptableValue.
+ (WebCore::HTMLInputElement::needsActivationCallback): Use
+ InputType::shouldResetOnDocumentActivation.
+ (WebCore::HTMLInputElement::willMoveToNewOwnerDocument): Use
+ InputType::willMoveToNewOwnerDocument.
+ (WebCore::HTMLInputElement::dataList): Use
+ InputType::shouldRespectListAttribute.
+ (WebCore::HTMLInputElement::selectedOption): Tweaked logic
+ and naming a bit.
+ (WebCore::HTMLInputElement::stepUpFromRenderer): Use
+ fastGetAttribute.
+ (WebCore::HTMLInputElement::isSpeechEnabled): Use
+ InputType::shouldRespectSpeechAttribute.
+ (WebCore::HTMLInputElement::isTextButton): No longer inline.
+ Calls through to InputType.
+ (WebCore::HTMLInputElement::isRadioButton): Ditto.
+ (WebCore::HTMLInputElement::isSearchField): Ditto.
+ (WebCore::HTMLInputElement::isInputTypeHidden): Ditto.
+ (WebCore::HTMLInputElement::isPasswordField): Ditto.
+ (WebCore::HTMLInputElement::isCheckbox): Ditto.
+ (WebCore::HTMLInputElement::isText): Ditto.
+ (WebCore::HTMLInputElement::isEmailField): Ditto.
+ (WebCore::HTMLInputElement::isFileUpload): Ditto.
+ (WebCore::HTMLInputElement::isImageButton): Ditto.
+ (WebCore::HTMLInputElement::isNumberField): Ditto.
+ (WebCore::HTMLInputElement::isSubmitButton): Ditto.
+ (WebCore::HTMLInputElement::isTelephoneField): Ditto.
+ (WebCore::HTMLInputElement::isURLField): Ditto.
+ (WebCore::HTMLInputElement::isEnumeratable): Ditto.
+ (WebCore::HTMLInputElement::isChecked): No longer inline.
+ Calls InputType::isCheckable.
+ (WebCore::HTMLInputElement::hasSpinButton): No longer inline.
+ Calls through to InputType.
+ (WebCore::HTMLInputElement::supportsPlaceholder): No longer
+ inline. Calls isTextType as before, but with no special case
+ for ISINDEX. That special case was unneeded since it returns
+ true from isTextType.
+ (WebCore::HTMLInputElement::checkedRadioButtons): No longer
+ inline.
+ (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent):
+ No longer inline.
+
+ * html/HTMLInputElement.h: Removed multiple unneeded includes.
+ The big one is probably InputType.h, but also HTMLFormElement.h.
+ Removed unneeded forward declarations. Made many functions
+ no longer inline since they now need to make virtual function
+ dispatches. Removed the unneeded defaultChecked and
+ webkitdirectory functions. Both are handled by HTML attribute
+ reflection for DOM bindings, and the callers instead can get
+ at the attribute. Made updateCheckedRadioButtons public so it
+ can be called by an InputType class. Removed
+ DeprecatedInputType, InputTypeMap, createTypeMap,
+ deprecatedInputType, allowsIndeterminate,
+ respectHeightAndWidthAttrs, storesValueSeparateFromAttribute,
+ m_imageLoader, m_fileList, m_deprecatedTypeNumber,
+ m_defaultChecked, and m_inited. Renamed m_checked to
+ m_isChecked, m_useDefaultChecked to m_reflectsCheckedAttribute,
+ m_indeterminate tom_isIndeterminate, m_haveType to m_hasType,
+ m_activeSubmit to m_isActivatedSubmit, and m_autofilled to
+ m_isAutofilled.
+
+ * html/HiddenInputType.cpp:
+ (WebCore::HiddenInputType::accessKeyAction): Added.
+ (WebCore::HiddenInputType::rendererIsNeeded) Added.:
+ (WebCore::HiddenInputType::storesValueSeparateFromAttribute): Added.
+ (WebCore::HiddenInputType::isHiddenType): Added.
+ (WebCore::HiddenInputType::shouldRespectHeightAndWidthAttributes): Added.
+ * html/HiddenInputType.h: Ditto.
+
+ * html/ImageInputType.cpp:
+ (WebCore::ImageInputType::ImageInputType): Moved out of the header file.
+ (WebCore::ImageInputType::srcAttributeChanged): Added.
+ (WebCore::ImageInputType::attach): Added.
+ (WebCore::ImageInputType::willMoveToNewOwnerDocument): Added.
+ (WebCore::ImageInputType::shouldRespectAlignAttribute): Added.
+ (WebCore::ImageInputType::canBeSuccessfulSubmitButton): Added.
+ (WebCore::ImageInputType::isImageButton): Added.
+ (WebCore::ImageInputType::isEnumeratable): Added.
+ (WebCore::ImageInputType::shouldRespectHeightAndWidthAttributes): Added.
+ * html/ImageInputType.h: Ditto.
+
+ * html/InputType.cpp:
+ (WebCore::InputType::create): Changed argument type to String. There
+ is no value in taking an AtomicString here.
+ (WebCore::InputType::scaledStepValueShouldBeInteger): Fixed typo in
+ this function name.
+ (WebCore::InputType::canSetStringValue): Added.
+ (WebCore::InputType::isKeyboardFocusable): Added.
+ (WebCore::InputType::shouldUseInputMethod): Added.
+ (WebCore::InputType::handleBlurEvent): Added.
+ (WebCore::InputType::accessKeyAction): Added.
+ (WebCore::InputType::attach): Added.
+ (WebCore::InputType::srcAttributeChanged): Added.
+ (WebCore::InputType::willMoveToNewOwnerDocument): Added.
+ (WebCore::InputType::shouldRespectAlignAttribute): Added.
+ (WebCore::InputType::canChangeFromAnotherType): Added.
+ (WebCore::InputType::minOrMaxAttributeChanged): Added.
+ (WebCore::InputType::canBeSuccessfulSubmitButton): Added.
+ (WebCore::InputType::rendererIsNeeded): Added.
+ (WebCore::InputType::files): Added.
+ (WebCore::InputType::getTypeSpecificValue): Added.
+ (WebCore::InputType::fallbackValue): Added.
+ (WebCore::InputType::defaultValue): Added.
+ (WebCore::InputType::canSetSuggestedValue): Added.
+ (WebCore::InputType::shouldSendChangeEventAfterCheckedChanged): Added.
+ (WebCore::InputType::storesValueSeparateFromAttribute): Added.
+ (WebCore::InputType::canSetValue): Added.
+ (WebCore::InputType::willDispatchClick): Added.
+ (WebCore::InputType::didDispatchClick): Added.
+ (WebCore::InputType::isAcceptableValue): Added.
+ (WebCore::InputType::sanitizeValue): Added.
+ (WebCore::InputType::hasUnacceptableValue): Added.
+ (WebCore::InputType::setFileList): Added.
+ (WebCore::InputType::shouldResetOnDocumentActivation): Added.
+ (WebCore::InputType::shouldRespectListAttribute): Added.
+ (WebCore::InputType::shouldRespectSpeechAttribute): Added.
+ (WebCore::InputType::isTextButton): Added.
+ (WebCore::InputType::isRadioButton): Added.
+ (WebCore::InputType::isSearchField): Added.
+ (WebCore::InputType::isHiddenType): Added.
+ (WebCore::InputType::isPasswordField): Added.
+ (WebCore::InputType::isCheckbox): Added.
+ (WebCore::InputType::isEmailField): Added.
+ (WebCore::InputType::isFileUpload): Added.
+ (WebCore::InputType::isImageButton): Added.
+ (WebCore::InputType::isNumberField): Added.
+ (WebCore::InputType::isSubmitButton): Added.
+ (WebCore::InputType::isTelephoneField): Added.
+ (WebCore::InputType::isURLField): Added.
+ (WebCore::InputType::isEnumeratable): Added.
+ (WebCore::InputType::isCheckable): Added.
+ (WebCore::InputType::hasSpinButton): Added.
+ (WebCore::InputType::shouldRespectHeightAndWidthAttributes): Added.
+
+ * html/InputType.h: Removed unneeded ExceptionCode.h include and
+ used a typedef instead as we do when we want for forward declare it.
+ Added includes and forward declarations needed for new functions.
+ Added ClickHandlingState structure. Changed the argument to create
+ to a String rather than AtomicString. Added many virtual functions.
+
+ * html/IsIndexInputType.cpp:
+ (WebCore::IsIndexInputType::shouldRespectListAttribute): Added.
+ * html/IsIndexInputType.h: Ditto.
+
+ * html/NumberInputType.cpp:
+ (WebCore::NumberInputType::handleBlurEvent): Added.
+ (WebCore::NumberInputType::isAcceptableValue): Added.
+ (WebCore::NumberInputType::sanitizeValue): Added.
+ (WebCore::NumberInputType::hasUnacceptableValue): Added.
+ (WebCore::NumberInputType::shouldRespectSpeechAttribute): Added.
+ (WebCore::NumberInputType::isNumberField): Added.
+ (WebCore::NumberInputType::hasSpinButton): Added.
+ * html/NumberInputType.h: Ditto.
+
+ * html/PasswordInputType.cpp:
+ (WebCore::PasswordInputType::shouldUseInputMethod): Added.
+ (WebCore::PasswordInputType::shouldResetOnDocumentActivation): Added.
+ (WebCore::PasswordInputType::shouldRespectListAttribute): Added.
+ (WebCore::PasswordInputType::shouldRespectSpeechAttribute): Added.
+ (WebCore::PasswordInputType::isPasswordField): Added.
+ * html/PasswordInputType.h: Ditto.
+
+ * html/RadioInputType.cpp:
+ (WebCore::RadioInputType::isKeyboardFocusable): Added.
+ (WebCore::RadioInputType::attach): Added.
+ (WebCore::RadioInputType::shouldSendChangeEventAfterCheckedChanged): Added.
+ (WebCore::RadioInputType::willDispatchClick): Added.
+ (WebCore::RadioInputType::didDispatchClick): Added.
+ (WebCore::RadioInputType::isRadioButton): Added.
+ * html/RadioInputType.h: Ditto.
+
+ * html/RangeInputType.cpp:
+ (WebCore::RangeInputType::accessKeyAction): Added.
+ (WebCore::RangeInputType::minOrMaxAttributeChanged): Added.
+ (WebCore::RangeInputType::fallbackValue): Added.
+ (WebCore::RangeInputType::sanitizeValue): Added.
+ (WebCore::RangeInputType::shouldRespectListAttribute): Added.
+ * html/RangeInputType.h: Ditto.
+
+ * html/ResetInputType.cpp:
+ (WebCore::ResetInputType::defaultValue): Added.
+ (WebCore::ResetInputType::isTextButton): Added.
+ * html/ResetInputType.h: Ditto.
+
+ * html/SearchInputType.cpp:
+ (WebCore::SearchInputType::shouldRespectSpeechAttribute): Added.
+ (WebCore::SearchInputType::isSearchField): Added.
+ * html/SearchInputType.h: Ditto.
+
+ * html/SubmitInputType.cpp:
+ (WebCore::SubmitInputType::canBeSuccessfulSubmitButton): Added.
+ (WebCore::SubmitInputType::defaultValue): Added.
+ (WebCore::SubmitInputType::isSubmitButton): Added.
+ (WebCore::SubmitInputType::isTextButton): Added.
+ * html/SubmitInputType.h: Ditto.
+
+ * html/TelephoneInputType.cpp:
+ (WebCore::TelephoneInputType::shouldRespectSpeechAttribute): Added.
+ (WebCore::TelephoneInputType::isTelephoneField): Added.
+ * html/TelephoneInputType.h: Ditto.
+
+ * html/TextFieldInputType.cpp:
+ (WebCore::TextFieldInputType::shouldUseInputMethod): Added.
+ (WebCore::TextFieldInputType::sanitizeValue): Added.
+ (WebCore::TextFieldInputType::shouldRespectListAttribute): Added.
+ * html/TextFieldInputType.h: Ditto.
+
+ * html/TextInputType.cpp:
+ (WebCore::TextInputType::canSetSuggestedValue): Added.
+ (WebCore::TextInputType::shouldRespectSpeechAttribute): Added.
+ * html/TextInputType.h: Ditto.
+
+ * html/TimeInputType.cpp:
+ (WebCore::TimeInputType::scaledStepValueShouldBeInteger): Fixed
+ typo in the name of this function.
+ * html/TimeInputType.h: Ditto.
+
+ * html/URLInputType.cpp:
+ (WebCore::URLInputType::isURLField): Added.
+ * html/URLInputType.h: Ditto.
+
+2011-01-03 Mihai Parparita <mihaip@chromium.org>
+
+ Unreviewed.
+
+ NSScrollView-based scrollbars and ScrollBarTheme-based scrollbars don't look the same
+ https://bugs.webkit.org/show_bug.cgi?id=51151
+
+ Flip switch to use WebThemeEngine for Chromium/Mac scrollbar rendering,
+ so that it can match Safari's (and thus use the same baselines).
+
+ No new tests, should be covered by layout tests (which will need
+ expectation changes)
+
+ * platform/chromium/ScrollbarThemeChromiumMac.mm:
+
+2011-01-03 Antonio Gomes <agomes@rim.com>
+
+ Unreviewed build fix for WebKit/Gtk+.
+
+ RenderThemeGtk::initMediaColors() in RenderThemeGtk2.cpp needs to be
+ guarded by ENABLE(VIDEO), as it is in its header.
+
+ No new tests.
+
+ * platform/gtk/RenderThemeGtk2.cpp:
+
+2011-01-02 Dan Bernstein <mitz@apple.com>
+
+ Rubber-stamped by Simon Fraser.
+
+ <rdar://problem/8812159> Update copyright strings
+
+ * Info.plist:
+
+2011-01-02 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ <rdar://problem/8806570> REGRESSION (r73337): Incorrect text match count when a match occurs in a text field
+ https://bugs.webkit.org/show_bug.cgi?id=51623
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::countMatchesForText): Actually remember the original search range end
+ container and offset and restore them when needed, instead of using two references to the
+ same Range.
+ * manual-tests/find-count-matches-after-text-control.html: Added.
+
+2011-01-02 Benjamin Poulain <benjamin.poulain@nokia.com>
+
+ Reviewed by Csaba Osztrogonác.
+
+ WebKit 2 does not build on 64bits with a recent GCC
+ https://bugs.webkit.org/show_bug.cgi?id=51754
+
+ Use explicitely 64 bits types for the attributes of DatabaseDetails.
+
+ * storage/DatabaseDetails.h:
+ (WebCore::DatabaseDetails::expectedUsage):
+ (WebCore::DatabaseDetails::currentUsage):
+
+2011-01-02 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed WinCE build fix for r74868.
+
+ * platform/graphics/wince/ImageBufferWinCE.cpp:
+ (WebCore::getImageData):
+
+2011-01-02 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r74847.
+ http://trac.webkit.org/changeset/74847
+ https://bugs.webkit.org/show_bug.cgi?id=51803
+
+ "Preprocessor guards should be in header files" (Requested by
+ ap on #webkit).
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ * dom/Document.cpp:
+ (WebCore::Document::recalcStyle):
+ * html/HTMLDocument.cpp:
+ * loader/FrameLoader.cpp:
+ * loader/ResourceLoadNotifier.cpp:
+ * page/Chrome.cpp:
+ * page/Console.cpp:
+ * page/ContextMenuController.cpp:
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::dispatchEvent):
+ * page/EventHandler.cpp:
+ * page/Page.cpp:
+ * storage/Database.cpp:
+ * workers/AbstractWorker.cpp:
+ * workers/DefaultSharedWorkerRepository.cpp:
+ * workers/SharedWorker.cpp:
+ * workers/Worker.cpp:
+ * workers/WorkerContext.cpp:
+ * workers/WorkerMessagingProxy.cpp:
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::callReadyStateChangeListener):
+
+2011-01-02 Patrick Gansterer <paroga@webkit.org>
+
+ [CMake] Unreviewed build fix.
+
+ * CMakeLists.txt:
+
+2011-01-02 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Simon Fraser.
+
+ Clarify ImageBuffer and ImageData relationship
+ https://bugs.webkit.org/show_bug.cgi?id=51297
+
+ Remove references to ImageData and CanvasPixelArray from ImageBuffer and SVG filter/masker code,
+ since this was a layering violation, and replaced it by ByteArray.
+
+ No change of functionality, so no new test added.
+
+ * html/ImageData.cpp:
+ (WebCore::ImageData::create):
+ (WebCore::ImageData::ImageData):
+ * html/ImageData.h: Added new constructor with ByteArray input.
+ (WebCore::ImageData::width):
+ (WebCore::ImageData::height):
+ (WebCore::ImageData::data):
+ * html/canvas/CanvasPixelArray.cpp:
+ (WebCore::CanvasPixelArray::create):
+ (WebCore::CanvasPixelArray::CanvasPixelArray):
+ * html/canvas/CanvasPixelArray.h: New conctructor with ByteArray input, used by HTML Canvas.
+ (WebCore::CanvasPixelArray::data):
+ (WebCore::CanvasPixelArray::length):
+ (WebCore::CanvasPixelArray::set):
+ (WebCore::CanvasPixelArray::get):
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::getImageData):
+ (WebCore::CanvasRenderingContext2D::putImageData):
+ * platform/graphics/ImageBuffer.h:
+ * platform/graphics/cairo/ImageBufferCairo.cpp:
+ (WebCore::getImageData):
+ (WebCore::ImageBuffer::getUnmultipliedImageData):
+ (WebCore::ImageBuffer::getPremultipliedImageData):
+ (WebCore::putImageData):
+ (WebCore::ImageBuffer::putUnmultipliedImageData):
+ (WebCore::ImageBuffer::putPremultipliedImageData):
+ * platform/graphics/cg/ImageBufferCG.cpp:
+ (WebCore::getImageData):
+ (WebCore::ImageBuffer::getUnmultipliedImageData):
+ (WebCore::ImageBuffer::getPremultipliedImageData):
+ (WebCore::putImageData):
+ (WebCore::ImageBuffer::putUnmultipliedImageData):
+ (WebCore::ImageBuffer::putPremultipliedImageData):
+ * platform/graphics/filters/FEBlend.cpp:
+ (WebCore::FEBlend::apply):
+ * platform/graphics/filters/FEColorMatrix.cpp:
+ (WebCore::FEColorMatrix::apply):
+ * platform/graphics/filters/FEComponentTransfer.cpp:
+ (WebCore::FEComponentTransfer::apply):
+ * platform/graphics/filters/FEComposite.cpp:
+ (WebCore::FEComposite::apply):
+ * platform/graphics/filters/FEConvolveMatrix.cpp:
+ (WebCore::setDestinationPixels):
+ (WebCore::FEConvolveMatrix::apply):
+ * platform/graphics/filters/FEConvolveMatrix.h:
+ * platform/graphics/filters/FEDisplacementMap.cpp:
+ (WebCore::FEDisplacementMap::apply):
+ * platform/graphics/filters/FEGaussianBlur.cpp:
+ (WebCore::FEGaussianBlur::apply):
+ * platform/graphics/filters/FELighting.cpp:
+ (WebCore::FELighting::apply):
+ * platform/graphics/filters/FEMorphology.cpp:
+ (WebCore::FEMorphology::apply):
+ * platform/graphics/filters/FETurbulence.cpp:
+ (WebCore::FETurbulence::apply):
+ * platform/graphics/filters/FilterEffect.cpp:
+ (WebCore::FilterEffect::asImageBuffer):
+ (WebCore::FilterEffect::asUnmultipliedImage):
+ (WebCore::FilterEffect::asPremultipliedImage):
+ (WebCore::FilterEffect::copyImageBytes):
+ (WebCore::FilterEffect::copyUnmultipliedImage):
+ (WebCore::FilterEffect::copyPremultipliedImage):
+ (WebCore::FilterEffect::createUnmultipliedImageResult):
+ (WebCore::FilterEffect::createPremultipliedImageResult):
+ * platform/graphics/filters/FilterEffect.h:
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ (WebCore::getImageData):
+ (WebCore::ImageBuffer::getUnmultipliedImageData):
+ (WebCore::ImageBuffer::getPremultipliedImageData):
+ (WebCore::putImageData):
+ (WebCore::ImageBuffer::putUnmultipliedImageData):
+ (WebCore::ImageBuffer::putPremultipliedImageData):
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::getImageData):
+ (WebCore::ImageBuffer::getUnmultipliedImageData):
+ (WebCore::ImageBuffer::getPremultipliedImageData):
+ (WebCore::putImageData):
+ (WebCore::ImageBuffer::putUnmultipliedImageData):
+ (WebCore::ImageBuffer::putPremultipliedImageData):
+ * platform/graphics/wince/ImageBufferWinCE.cpp:
+ (WebCore::getImageData):
+ (WebCore::ImageBuffer::getUnmultipliedImageData):
+ (WebCore::ImageBuffer::getPremultipliedImageData):
+ (WebCore::putImageData):
+ (WebCore::ImageBuffer::putUnmultipliedImageData):
+ (WebCore::ImageBuffer::putPremultipliedImageData):
+ * platform/graphics/wx/ImageBufferWx.cpp:
+ (WebCore::ImageBuffer::getUnmultipliedImageData):
+ (WebCore::ImageBuffer::getPremultipliedImageData):
+ (WebCore::ImageBuffer::putUnmultipliedImageData):
+ (WebCore::ImageBuffer::putPremultipliedImageData):
+ * rendering/RenderSVGResourceMasker.cpp:
+ (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
+
+2011-01-01 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Move JavaScriptCore to Source
+ https://bugs.webkit.org/show_bug.cgi?id=51604
+
+ Update references to JavaScriptCore.
+
+ * Android.derived.jscbindings.mk:
+ * Android.v8bindings.mk:
+ * CMakeLists.txt:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.pro:
+ - These changes are subtle and might not be 100% correct.
+ * move-js-headers.sh:
+
+2011-01-01 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ forbid sandboxed frames to call top.close() when allow-same-origin is not setted
+ https://bugs.webkit.org/show_bug.cgi?id=38340
+
+ We now pass the ScriptExecutionContext to window.close so it can find
+ the Frame and check whether navigation is allowed. This check will
+ almost always pass because you can only close top-level frames, but the
+ check will fail when the calling script is sandboxed.
+
+ Tests: fast/frames/sandboxed-iframe-close-top-noclose.html
+ fast/frames/sandboxed-iframe-close-top.html
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::close):
+ * page/DOMWindow.h:
+ * page/DOMWindow.idl:
+
+2011-01-01 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ sandbox iframes have access to top.history methods
+ https://bugs.webkit.org/show_bug.cgi?id=38152
+
+ To enforce the sandbox restrictions on History, we need to pass the
+ ScriptExecutionContext to WebCore. This patch leaves the original
+ History methods in place because they are used directly by folks who
+ don't care about security checks.
+
+ Test: fast/frames/sandboxed-iframe-history-denied.html
+
+ * page/History.cpp:
+ (WebCore::History::back):
+ (WebCore::History::forward):
+ (WebCore::History::go):
+ * page/History.h:
+ * page/History.idl:
+
+2011-01-01 Adam Barth <abarth@webkit.org>
+
+ Remove empty file.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/DOMAllInOne.cpp:
+ * dom/Entity.cpp: Removed.
+
+2011-01-01 Adam Barth <abarth@webkit.org>
+
+ Remove empty file.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSBindingsAllInOne.cpp:
+ * bindings/js/JSPopStateEventCustom.cpp: Removed.
+
+2011-01-01 Adam Barth <abarth@webkit.org>
+
+ Remove empty files.
+
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/generic/BindingFrame.h: Removed.
+ * bindings/generic/BindingLocation.h: Removed.
+
+2011-01-01 Konstantin Tokarev <annulen@yandex.ru>
+
+ Reviewed by Darin Adler.
+
+ Don't include Inspector headers when Inspector is disabled
+ https://bugs.webkit.org/show_bug.cgi?id=51789
+
+ * bindings/js/JSDOMWindowBase.cpp: Include Inspector headers when
+ Inspector is enabled
+ * dom/Document.cpp: Include Inspector headers when
+ Inspector is enabled
+ (WebCore::Document::recalcStyle): Disabled InspectorInstrumentationCookie
+ handling
+ * html/HTMLDocument.cpp: Include Inspector headers when
+ Inspector is enabled
+ * loader/FrameLoader.cpp: Include Inspector headers when
+ Inspector is enabled
+ * loader/ResourceLoadNotifier.cpp: Include Inspector headers when
+ Inspector is enabled
+ * page/Chrome.cpp: Include Inspector headers when
+ Inspector is enabled
+ * page/Console.cpp: Include Inspector headers when
+ Inspector is enabled
+ * page/ContextMenuController.cpp: Include Inspector headers when
+ Inspector is enabled
+ * page/DOMWindow.cpp: Include Inspector headers when
+ Inspector is enabled
+ (WebCore::DOMWindow::dispatchEvent): Disabled InspectorInstrumentationCookie
+ handling
+ * page/EventHandler.cpp: Include Inspector headers when
+ Inspector is enabled
+ * page/Page.cpp: Include Inspector headers when
+ Inspector is enabled
+ * storage/Database.cpp: Include Inspector headers when
+ Inspector is enabled
+ * workers/AbstractWorker.cpp: Include Inspector headers when
+ Inspector is enabled
+ * workers/DefaultSharedWorkerRepository.cpp: Include Inspector headers when
+ Inspector is enabled
+ * workers/SharedWorker.cpp: Include Inspector headers when
+ Inspector is enabled
+ * workers/Worker.cpp: Include Inspector headers when
+ Inspector is enabled
+ * workers/WorkerContext.cpp: Include Inspector headers when
+ Inspector is enabled
+ * workers/WorkerMessagingProxy.cpp: Include Inspector headers when
+ Inspector is enabled
+ * xml/XMLHttpRequest.cpp: Include Inspector headers when
+ Inspector is enabled
+ (WebCore::XMLHttpRequest::callReadyStateChangeListener): Disabled
+ InspectorInstrumentationCookie handling
+
+2010-12-31 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ fast/loader/about-blank-hash-change.html fails on Chromium
+ https://bugs.webkit.org/show_bug.cgi?id=51788
+
+ I'm unable to reproduce the failure locally, so this patch is slightly
+ speculative. We need to be slighly more careful how we compare the
+ fragment identifiers for Chromium because Chromium uses a URL parser
+ that is more agressive about canonicalization.
+
+ * page/Location.cpp:
+ (WebCore::Location::setHash):
+
+2010-12-31 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Use GLib/GIO API for FileSystemGtk implementation
+ https://bugs.webkit.org/show_bug.cgi?id=51617
+
+ Complete implementation of FileSystem platform code for GLib. This
+ converts remaining API points using POSIX calls to platform-independent
+ GLib calls and fixes other compilation errors.
+
+ No new tests. This code will be tested when an implementation
+ of beginDragWithFiles is complete.
+
+ (WebCore::JSDirectoryEntry::getFile):
+ (WebCore::JSDirectoryEntry::getDirectory):
+ * platform/FileSystem.h: Added forward declarations for GLib types to
+ avoid GLib includes and changed the PlatformFileHandle to be a GIOStream.
+ * platform/gtk/FileSystemGtk.cpp:
+ (WebCore::openTemporaryFile): Reimplement using only GLib calls.
+ (WebCore::openFile): Ditto.
+ (WebCore::closeFile): Ditto.
+ (WebCore::seekFile): Added implementation.
+ (WebCore::writeToFile): Reimplement using only GLib calls.
+ (WebCore::readFromFile): Ditto.
+
+2010-12-31 Darin Adler <darin@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Some renaming and refactoring of form element code
+ https://bugs.webkit.org/show_bug.cgi?id=51784
+
+ * bindings/js/JSHTMLSelectElementCustom.cpp:
+ (WebCore::JSHTMLSelectElement::remove): Call new overload of remove
+ for option elements instead of putting the logic in the binding.
+
+ * html/HTMLButtonElement.cpp:
+ (WebCore::HTMLButtonElement::HTMLButtonElement): Updated for name changes.
+ (WebCore::HTMLButtonElement::defaultEventHandler): Renamed argument to
+ "event" instead of "evt". Also updated for name changes.
+ (WebCore::HTMLButtonElement::isActivatedSubmit): Ditto.
+ (WebCore::HTMLButtonElement::setActivatedSubmit): Ditto.
+ (WebCore::HTMLButtonElement::appendFormData): Ditto.
+ * html/HTMLButtonElement.h: Renamed m_activeSubmit to m_isActivatedSubmit
+ to match the getter function name. The name still doesn't seem great.
+
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::HTMLFormElement): Updated for name changes.
+ (WebCore::HTMLFormElement::~HTMLFormElement): Use autoComplete function
+ instead of m_autocomplete data member.
+ (WebCore::HTMLFormElement::rendererIsNeeded): Use m_wasDemoted data member
+ instead of otherwise-unused isDemoted function.
+ (WebCore::HTMLFormElement::submitImplicitly): Updated for name changes.
+ (WebCore::HTMLFormElement::validateInteractively): Removed code to clear
+ m_insubmit. This is now handled by the caller, prepareForSubmission.
+ (WebCore::HTMLFormElement::prepareForSubmission): Renamed. Updated for
+ name changes. Moved code to clear m_isSubmittingOrPreparingForSubmission
+ here from validateInteractively. Removed unneeded check of m_doingsubmit
+ boolean before setting it.
+ (WebCore::HTMLFormElement::submit): Factored this function into two.
+ One for JavaScript and one for non-JavaScript. Neither function needs a frame
+ argument, because the question being asked, anyPageIsProcessingUserGesture,
+ is a question asked of an entire page group, not a specific frame or page,
+ so it's not important which is the active frame.
+ (WebCore::HTMLFormElement::submitFromJavaScript): Ditto.
+ (WebCore::HTMLFormElement::reset): Updated for name changes.
+ (WebCore::HTMLFormElement::parseMappedAttribute): Removed code to parse
+ acceptAttr and got rid of code to set m_autocomplete.
+ (WebCore::HTMLFormElement::elementForAlias): Changed return type to a raw
+ pointer.
+ (WebCore::HTMLFormElement::getNamedElements): Updated to use raw pointer
+ and the vector find function. Added a FIXME about the comment.
+ (WebCore::HTMLFormElement::documentDidBecomeActive): Use autoComplete
+ function instead of m_autocomplete data member.
+ (WebCore::HTMLFormElement::willMoveToNewOwnerDocument): Ditto.
+ (WebCore::HTMLFormElement::didMoveToNewOwnerDocument): Ditto.
+ (WebCore::HTMLFormElement::autoComplete): Ditto.
+ * html/HTMLFormElement.h: Added a FIXME about renaming the autoComplete
+ function. Renamed prepareSubmit to prepareForSubmission. Got rid of the
+ frame argument from the submit function and added a new submitFromJavaScript
+ variant. Removed the unneeded isDemoted function. Changed the return type
+ of elementForAlias to a raw pointer. Removed m_autocomplete. Renamed
+ m_insubmit to m_isSubmittingOrPreparingForSubmission, m_doingsubmit to
+ m_shouldSubmit, m_inreset to m_inResetFunction, m_malformed to m_wasMalformed,
+ m_demoted to m_wasDemoted. Use plain bool instead of bitfields.
+
+ * html/HTMLFormElement.idl: Use the function named submitFromJavaScript
+ instead of using CallWith=DynamicFrame because we don't need to know
+ what frame is calling. If we did, it's not clear that the "dynamic"
+ frame would be the right one anyway.
+
+ * html/HTMLSelectElement.cpp:
+ (WebCore::HTMLSelectElement::remove): Added an overload that takes an option
+ element, since the JavaScript binding supports this.
+ * html/HTMLSelectElement.h: Ditto.
+
+ * html/ImageInputType.cpp:
+ (WebCore::ImageInputType::handleDOMActivateEvent): Updated for name changes.
+ * html/ImageInputType.h: Ditto.
+ * html/SubmitInputType.cpp:
+ (WebCore::SubmitInputType::handleDOMActivateEvent): Ditto.
+
+2010-12-31 Daniel Bates <dbates@rim.com>
+
+ Reviewed by Darin Adler.
+
+ Pass style for <area> instead of associated <img> when querying whether
+ the theme draws the focus ring for an <area>
+ https://bugs.webkit.org/show_bug.cgi?id=51632
+
+ Fixes an issue where the style for the associated <img> of an <area>
+ was passed when considering whether the theme should draw a focus ring
+ for the <area>. Instead, we should pass the theme the style for the <area>.
+
+ It's not possible to test this at this time since there are no themes
+ that override focus ring drawing for <area>s.
+
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::paintFocusRing): Moved call to RenderTheme::supportsFocusRing()
+ such that it's called with respect to the focused <area>.
+
+2010-12-31 Darin Adler <darin@apple.com>
+
+ * WebCore.xcodeproj/project.pbxproj: Added back the language.
+ Developers should be using Xcode 3.2.5 or newer.
+
+2010-12-31 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Move V8 to WebCore Location implementation
+ https://bugs.webkit.org/show_bug.cgi?id=51768
+
+ * bindings/generic/BindingFrame.h:
+ * bindings/generic/BindingLocation.h:
+ * bindings/v8/V8Binding.h:
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::V8DOMWindowShell::setLocation):
+ * bindings/v8/V8Utilities.cpp:
+ * bindings/v8/V8Utilities.h:
+ * bindings/v8/custom/V8LocationCustom.cpp:
+ (WebCore::V8Location::hashAccessorSetter):
+ (WebCore::V8Location::hostAccessorSetter):
+ (WebCore::V8Location::hostnameAccessorSetter):
+ (WebCore::V8Location::hrefAccessorSetter):
+ (WebCore::V8Location::pathnameAccessorSetter):
+ (WebCore::V8Location::portAccessorSetter):
+ (WebCore::V8Location::protocolAccessorSetter):
+ (WebCore::V8Location::searchAccessorSetter):
+ (WebCore::V8Location::reloadCallback):
+ (WebCore::V8Location::replaceCallback):
+ (WebCore::V8Location::assignCallback):
+
+2010-12-31 Yi Shen <yi.4.shen@nokia.com>
+
+ Reviewed by Eric Seidel.
+
+ Make retrieving extraMediaControlsStyleSheet be page dependent.
+ https://bugs.webkit.org/show_bug.cgi?id=51752
+
+ Use themeForPage to retrieve extraMediaControlsStyleSheet for media
+ controls.
+
+ No new tests because no platform-specific theme implementation uses
+ the passed page pointer yet.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::styleForElement):
+
+2010-12-31 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [REGRESSION] WebInspector.ResourcesPanel.prototype.canShowSourceLine() broken.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51709
+
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype.canShowSourceLine):
+
+2010-12-31 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed build fix after r74800.
+
+ * bindings/js/JSDOMWindowCustom.cpp: Add missing header.
+ * bindings/js/JSLocationCustom.cpp: Ditto.
+
+2010-12-31 Adam Barth <abarth@webkit.org>
+
+ Rubber-stamped by Eric Seidel.
+
+ Move HTML and XML parser benchmarks into PerformanceTests/Parser
+ https://bugs.webkit.org/show_bug.cgi?id=51772
+
+ Remove the benchmarks folder now that it's empty. Future benchmarks
+ should go in the PerformanceTests directory.
+
+ * benchmarks: Removed.
+ * benchmarks/parser: Removed.
+ * benchmarks/parser/html-parser.html: Removed.
+ * benchmarks/parser/resources: Removed.
+ * benchmarks/parser/resources/html5.html: Removed.
+ * benchmarks/parser/resources/runner.js: Removed.
+ * benchmarks/parser/xml-parser.html: Removed.
+
+2010-12-31 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Add XML parser benchmark
+ https://bugs.webkit.org/show_bug.cgi?id=51612
+
+ Move the JavaScript code of html parser into a separate file to share it with xml parser.
+
+ * benchmarks/parser/html-parser.html:
+ * benchmarks/parser/resources/runner.js: Copied from WebCore/benchmarks/parser/html-parser.html.
+ (runFunction):
+ (run):
+ (start):
+ * benchmarks/parser/xml-parser.html: Copied from WebCore/benchmarks/parser/html-parser.html.
+
+2010-12-29 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Update validation of stencil mask and ref values
+ https://bugs.webkit.org/show_bug.cgi?id=50716
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::initializeNewContext): Initialize cached stencil settings.
+ (WebCore::WebGLRenderingContext::drawArrays): Validate stencil settings.
+ (WebCore::WebGLRenderingContext::drawElements): Ditto.
+ (WebCore::WebGLRenderingContext::stencilFunc): Cache stencil settings, but generate no error.
+ (WebCore::WebGLRenderingContext::stencilFuncSeparate): Ditto.
+ (WebCore::WebGLRenderingContext::stencilMask): Ditto.
+ (WebCore::WebGLRenderingContext::stencilMaskSeparate): Ditto.
+ (WebCore::WebGLRenderingContext::validateStencilSettings): Helper function to validate stencil settings.
+ * html/canvas/WebGLRenderingContext.h: Declare stencil setting members.
+
+2010-12-30 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Fork pieces of RenderThemeGtk that will differ for GTK+ 3
+ https://bugs.webkit.org/show_bug.cgi?id=51755
+
+ Split out pieces of RenderThemeGtk into RenderThemeGtk2 and RenderThemeGtk3
+ if they are going to differ between GTK+ 2.x and GTK+ 3.x. This is the preliminary
+ step to landing support for the new GTK+ 3.x theming API.
+
+ No new tests. This should not change functionality.
+
+ * GNUmakefile.am: Add RenderThemeGtk2 and RenderThemeGtk3 to the sources list.
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::adjustTextFieldStyle): Call the setTextInputBorders static method.
+ (WebCore::RenderThemeGtk::adjustTextAreaStyle): Ditto.
+ (WebCore::RenderThemeGtk::paintMediaButton): Ditto.
+ (WebCore::RenderThemeGtk::adjustProgressBarStyle): ditto.
+ * platform/gtk/RenderThemeGtk.h: Make setTextInputBorders a method, so that
+ it can be exist in RenderThemeGtk{2,3} and be called from RenderThemeGtk.
+ * platform/gtk/RenderThemeGtk2.cpp: Added. A fork of the bits of RenderThemeGtk
+ that will eventually be platform-dependent.
+ * platform/gtk/RenderThemeGtk3.cpp: Added. Ditto.
+
+2010-12-30 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Reverting r74292 because it introduced a crash with ruby text.
+ https://bugs.webkit.org/show_bug.cgi?id=51637
+
+ Test: fast/css/counters/counter-ruby-text-cleared.html
+
+ * rendering/RenderCounter.cpp:
+ (WebCore::findPlaceForCounter):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::addChild):
+ * rendering/RenderObjectChildList.cpp:
+ (WebCore::RenderObjectChildList::appendChildNode):
+ (WebCore::RenderObjectChildList::insertChildNode):
+
+2010-12-30 Darin Adler <darin@apple.com>
+
+ Reviewed by David Kilzer.
+
+ Remove unused JSBinding source files
+ https://bugs.webkit.org/show_bug.cgi?id=51762
+
+ * bindings/js/JSBinding.h: Removed.
+ * bindings/js/specialization: Removed.
+ * bindings/js/specialization/JSBindingState.cpp: Removed.
+ * bindings/js/specialization/JSBindingState.h: Removed.
+
+ * CMakeLists.txt: Removed references to files.
+ * GNUmakefile.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * bindings/js/JSBindingsAllInOne.cpp: Ditto.
+
+2010-12-30 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Remove Document.h include from some headers where it isn't necessary
+ https://bugs.webkit.org/show_bug.cgi?id=51730
+
+ No new tests because no new functionality.
+
+ * editing/EditingStyle.cpp:
+ * editing/EditingStyle.h:
+ * editing/SelectionController.h:
+ * editing/visible_units.h:
+ * html/HTMLAudioElement.h:
+ * html/HTMLBodyElement.h:
+ * inspector/InspectorCSSAgent.h:
+ * inspector/InspectorDOMAgent.h:
+ * inspector/InspectorInstrumentation.h:
+ * xml/DOMParser.cpp:
+ * xml/DOMParser.h:
+ (WebCore::DOMParser::create):
+ (WebCore::DOMParser::DOMParser):
+
+2010-12-30 Benjamin C Meyer <bmeyer@rim.com>
+
+ Reviewed by Darin Adler.
+
+ bindings/js/JSDesktopNotificationsCustom.cpp is not included in the cmake build
+ which is required when NOTIFICATIONS is enabled.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51761
+
+ * CMakeLists.txt:
+
+2010-12-30 Antti Koivisto <antti@apple.com>
+
+ Not reviewed.
+
+ Revert accidental project file change.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-12-30 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51134
+ Move loading related code from MemoryCache to CachedResourceLoader
+
+ - Merge MemoryCache::requestResource to CachedResourceLoader::requestResource
+ - Merge MemoryCache::requestUserCSSStyleSheet to CachedResourceLoader::requestUserCSSStyleSheet
+ - Move MemoryCache::revalidateResource to CachedResourceLoader::revalidateResource
+ - Add MemoryCache::add
+ - Refactor the decision on whether to reload, revalidate or use the existing resource to
+ a single function, CachedResourceLoader::determineRevalidationPolicy
+
+ * css/CSSImageValue.cpp:
+ (WebCore::CSSImageValue::cachedImage):
+
+ Remove a code path that called MemoryCache::requestResource directly. This code path would have crashed
+ if ever taken (since it passes null CachedResourceLoader pointer).
+
+ * loader/ImageLoader.cpp:
+ (WebCore::ImageLoader::updateFromElement):
+ * loader/cache/CachedImage.cpp:
+ * loader/cache/CachedResource.cpp:
+ (WebCore::CachedResource::CachedResource):
+ (WebCore::CachedResource::~CachedResource):
+ (WebCore::CachedResource::mustRevalidateDueToCacheHeaders):
+
+ Moved tests that were not about cache headers to CachedResourceLoader::determineRevalidationPolicy and renamed.
+
+ (WebCore::CachedResource::setLoadPriority):
+
+ Check for Unresolved value before setting.
+
+ * loader/cache/CachedResource.h:
+ (WebCore::CachedResource::setOwningCachedResourceLoader):
+
+ Rename to be bit less mysterious.
+
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::createResource):
+
+ This was moved from MemoryCache.
+
+ (WebCore::CachedResourceLoader::~CachedResourceLoader):
+ (WebCore::CachedResourceLoader::determineRevalidationPolicy):
+ (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
+
+ This was moved/merged from MemoryCache.
+
+ (WebCore::CachedResourceLoader::canRequest):
+ (WebCore::CachedResourceLoader::requestResource):
+
+ This combines MemoryCache::requestResource and the existing method.
+
+ (WebCore::CachedResourceLoader::revalidateResource):
+
+ This was moved from MemoryCache.
+
+ (WebCore::CachedResourceLoader::loadResource):
+
+ New method for initiating loading.
+
+ (WebCore::CachedResourceLoader::notifyLoadedFromMemoryCache):
+
+ Renamed the mysterious CachedResourceLoader::checkCacheObjectStatus
+
+ * loader/cache/CachedResourceLoader.h:
+ * loader/cache/MemoryCache.cpp:
+ (WebCore::MemoryCache::add):
+ * loader/cache/MemoryCache.h:
+ (WebCore::MemoryCache::remove):
+
+2010-12-30 Steve Block <steveblock@google.com>
+
+ Reviewed by Gavin Barraclough.
+
+ Enable JSC Rich Source Info for Android even when Inspector and Debugger are disabled
+ https://bugs.webkit.org/show_bug.cgi?id=51740
+
+ This is a policy decision for Android.
+
+ No new tests, simply enabling existing, tested code on Android.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::supportsRichSourceInfo):
+
+2010-12-30 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Adam Barth.
+
+ REGRESSION: fast/dom/cssTarget-crash.html fails
+ https://bugs.webkit.org/show_bug.cgi?id=20342
+
+ Do not reload the page when submitting a form, using "GET" method, and the
+ form action url matches the location url, except for the fragment.
+
+ Test: fast/forms/submit-change-fragment.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadURL):
+ (WebCore::FrameLoader::loadWithDocumentLoader):
+ (WebCore::FrameLoader::shouldScrollToAnchor):
+ * loader/FrameLoader.h:
+
+2010-12-30 Darin Adler <darin@apple.com>
+
+ Reviewed by Adam Barth.
+
+ Move security logic out of the JavaScript binding for location into the DOM class
+ https://bugs.webkit.org/show_bug.cgi?id=51714
+
+ * WebCore.xcodeproj/project.pbxproj: Removed JSBindingState.cpp, JSBindingState.h,
+ and JSBinding.h. Later, we'll remove them from other project files and delete
+ the source files.
+
+ * bindings/js/JSBinding.h: Emptied out, marked for later deletion.
+
+ * bindings/js/JSDOMBinding.cpp: Removed unused overload of the jsOwnedStringOrNull
+ function, unused shouldAllowNavigation function, unused allowSettingSrcToJavascriptURL
+ function, unused toLexicalFrame function, unused completeURL function, unused
+ getCachedDOMStructure and cacheDOMStructure overloads, and unused
+ getCachedDOMConstructor and cacheDOMConstruction functions.
+ (WebCore::activeDOMWindow): Added.
+ (WebCore::firstDOMWindow): Added.
+ (WebCore::toDynamicFrame): Changed to use firstDOMWindow instead of calling through
+ JSBindingState, since the latter is an unneeded abstraction.
+ (WebCore::processingUserGesture): Changed to call ScriptController's function
+ rather than calling through JSBindingState, which is an unneeded abstraction
+
+ * bindings/js/JSDOMBinding.h: Removed the functions mentioned above. Added
+ activeDOMWindow and firstDOMWindow. Also added a FIXME for the extremely poorly
+ named allowsAccessFromFrame functions, which answer the question of whether
+ script is allowed access *to* a frame.
+
+ * bindings/js/JSDOMWindowCustom.cpp: Removed many unneeded includes.
+ (WebCore::JSDOMWindow::setLocation): Streamlined by using the new
+ activeDOMWindow and firstDOMWindow functions.
+ (WebCore::JSDOMWindow::open): Ditto.
+ (WebCore::JSDOMWindow::showModalDialog): Ditto.
+ (WebCore::JSDOMWindow::postMessage): Ditto.
+
+ * bindings/js/JSLocationCustom.cpp:
+ (WebCore::JSLocation::setHref): Changed to pass the active and first windows through
+ to the Location::setHref function, with it doing the rest of the work. This moves
+ work out of the DOM binding that belongs in the DOM itself. Eventually such functions
+ could even be automatically generated by the bindings script.
+ (WebCore::JSLocation::setProtocol): Ditto.
+ (WebCore::JSLocation::setHost): Ditto.
+ (WebCore::JSLocation::setHostname): Ditto.
+ (WebCore::JSLocation::setPort): Ditto.
+ (WebCore::JSLocation::setPathname): Ditto.
+ (WebCore::JSLocation::setSearch): Ditto.
+ (WebCore::JSLocation::setHash): Ditto.
+ (WebCore::JSLocation::replace): Ditto.
+ (WebCore::JSLocation::reload): Ditto.
+ (WebCore::JSLocation::assign): Ditto.
+
+ * bindings/js/specialization/JSBindingState.cpp: Emptied out, marked for later deletion.
+ * bindings/js/specialization/JSBindingState.h: Emptied out, marked for later deletion.
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::setLocation): Added a SetLocationLocking argument that allows us
+ to use this function for Location::replace, which is the same as setLocation except that
+ it locks both history and the back/forward list.
+ * page/DOMWindow.h: Ditto.
+
+ * page/Location.cpp:
+ (WebCore::Location::setHref): Added. Uses DOMWindow::setLocation so that the security
+ logic there does not have to be repeated or even refactored.
+ (WebCore::Location::setProtocol): Ditto.
+ (WebCore::Location::setHost): Ditto.
+ (WebCore::Location::setHostname): Ditto.
+ (WebCore::Location::setPort): Ditto.
+ (WebCore::Location::setPathname): Ditto.
+ (WebCore::Location::setSearch): Ditto.
+ (WebCore::Location::setHash): Ditto.
+ (WebCore::Location::assign): Ditto.
+ (WebCore::Location::replace): Ditto.
+ (WebCore::Location::reload): Added. Security logic was refactored from the code in
+ JSLocationCustom.cpp. Added a FIXME about the fact that this security logic seems
+ possibly unneeded.
+
+ * page/Location.h: Fixed indentation on the whole file. Added the new functions above.
+ (WebCore::Location::create):
+ (WebCore::Location::frame):
+
+2010-12-30 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Pasting a style property with value should automatically split it into prop/value
+ https://bugs.webkit.org/show_bug.cgi?id=51581
+
+ The "paste" DOM event is handled for the CSS property name field to parse out the name and value parts
+ of a CSS property being pasted (by the first ':' found). The property is committed (if not a new one),
+ and the edit focus is transferred to the value field.
+
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertyTreeElement.prototype.selectElement):
+ (WebInspector.StylePropertyTreeElement.prototype):
+ * inspector/front-end/inspector.js:
+ (WebInspector.completeURL): Drive-by: return full URLs as-is.
+ (WebInspector.startEditing.cleanUpAfterEditing):
+ (WebInspector.startEditing):
+ (WebInspector.startEditing.pasteEventListener):
+ (WebInspector.startEditing.keyDownEventListener):
+
+2010-12-30 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: breakpoint is not disabled when clicking on breakpoints sidebar pane checkbox.
+ https://bugs.webkit.org/show_bug.cgi?id=51745
+
+ * inspector/front-end/Breakpoint.js:
+ (WebInspector.Breakpoint.prototype.set enabled):
+
+2010-12-30 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: call stack shows "Paused on a JavaScript breakpoint" when stepping.
+ https://bugs.webkit.org/show_bug.cgi?id=51748
+
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane.prototype.update):
+ (WebInspector.CallStackSidebarPane.prototype.registerShortcuts):
+ (WebInspector.CallStackSidebarPane.prototype._scriptBreakpointHit):
+ (WebInspector.CallStackSidebarPane.prototype._nativeBreakpointHit):
+
+2010-12-30 Mikhail Naganov <mnaganov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Fix leak of MemoryInfo wrappers introduced in r57004 (see issue 51712).
+
+ https://bugs.webkit.org/show_bug.cgi?id=51713
+
+ * WebCore.gypi:
+ * WebCore.pro:
+ * bindings/v8/custom/V8ConsoleCustom.cpp:
+ (WebCore::V8Console::memoryAccessorGetter):
+ * bindings/v8/custom/V8PerformanceCustom.cpp: Copied from V8ConsoleCustom.cpp.
+ (WebCore::V8Performance::memoryAccessorGetter):
+ * page/Console.idl:
+ * page/Performance.idl:
+
+2010-12-30 Steve Block <steveblock@google.com>
+
+ Reviewed by Sam Weinig.
+
+ Visiting macnn.com often causes SQL spew via geolocation database
+ https://bugs.webkit.org/show_bug.cgi?id=51557
+
+ If the Geolocation position cache database path has not been set, early-out
+ rather than using an empty path and thus failing to open the database.
+ This avoids SQL log spew.
+
+ Also, avoid starting the database thread until the path has been set, and
+ shorten the thread name to avoid warnings due to exceeding 30 characters.
+
+ No new tests, implementation clean-up only.
+
+ * page/GeolocationPositionCache.cpp:
+ (WebCore::GeolocationPositionCache::addUser):
+ (WebCore::GeolocationPositionCache::removeUser):
+ (WebCore::GeolocationPositionCache::setDatabasePath):
+ (WebCore::GeolocationPositionCache::startBackgroundThread):
+
+2010-12-29 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] minimal build fails at link time due to missing sqlite3 symbols
+ https://bugs.webkit.org/show_bug.cgi?id=51327
+
+ Guard the code calling sqlite3 with the ENABLE(DATABASE) check.
+
+ No new tests, build fix only.
+
+ * platform/sql/SQLiteAuthorizer.cpp:
+ * platform/sql/SQLiteDatabase.cpp:
+ * platform/sql/SQLiteFileSystem.cpp:
+ * platform/sql/SQLiteStatement.cpp:
+ * platform/sql/SQLiteTransaction.cpp:
+
+2010-12-30 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Dirk Schulze.
+
+ Prevent stringToLengthType() from skipping past end-of-string on invalid length unit.
+ https://bugs.webkit.org/show_bug.cgi?id=51692
+
+ * svg/SVGLength.cpp:
+ (WebCore::stringToLengthType):
+ (WebCore::SVGLength::setValueAsString):
+
+2010-12-30 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Create a helper function for finding descendent video elements for a node.
+ https://bugs.webkit.org/show_bug.cgi?id=51696
+
+ Test: media/video-element-other-namespace-crash.html
+
+ * html/MediaDocument.cpp:
+ (WebCore::descendentVideoElement): helper function.
+ (WebCore::MediaDocument::defaultEventHandler): use the new helper function. fix code repetitions.
+ (WebCore::MediaDocument::replaceMediaElementTimerFired): use the new helper function.
+
+2010-12-29 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: extract Database & DOM Storage agents; remove InspectorBackend.
+ https://bugs.webkit.org/show_bug.cgi?id=51707
+
+ This change brushes up storage agents + removes redundant InspectorBackend class.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::databaseForId):
+ (WebCore::InjectedScriptHost::selectDatabase):
+ (WebCore::InjectedScriptHost::selectDOMStorage):
+ (WebCore::InjectedScriptHost::inspectorDOMAgent):
+ * inspector/Inspector.idl:
+ * inspector/InspectorBackend.cpp: Removed.
+ * inspector/InspectorBackend.h: Removed.
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::~InspectorController):
+ (WebCore::InspectorController::connectFrontend):
+ (WebCore::InspectorController::releaseFrontendLifetimeAgents):
+ (WebCore::InspectorController::didUseDOMStorage):
+ (WebCore::InspectorController::setInjectedScriptSource):
+ (WebCore::InspectorController::dispatchOnInjectedScript):
+ (WebCore::InspectorController::releaseWrapperObjectGroup):
+ * inspector/InspectorController.h:
+ * inspector/InspectorDOMStorageAgent.cpp: Added.
+ (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
+ (WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
+ (WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
+ (WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
+ (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
+ (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
+ (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
+ * inspector/InspectorDOMStorageAgent.h: Copied from WebCore/inspector/InspectorStorageAgent.h.
+ (WebCore::InspectorDOMStorageAgent::create):
+ (WebCore::InspectorDOMStorageAgent::frontend):
+ * inspector/InspectorDatabaseAgent.cpp: Renamed from WebCore/inspector/InspectorStorageAgent.cpp.
+ (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
+ (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
+ (WebCore::InspectorDatabaseAgent::executeSQL):
+ (WebCore::InspectorDatabaseAgent::databaseForId):
+ (WebCore::InspectorDatabaseAgent::selectDatabase):
+ (WebCore::InspectorDatabaseAgent::clearFrontend):
+ (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
+ * inspector/InspectorDatabaseAgent.h: Renamed from WebCore/inspector/InspectorStorageAgent.h.
+ (WebCore::InspectorDatabaseAgent::create):
+ (WebCore::InspectorDatabaseAgent::frontend):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.show):
+ (WebInspector.ScriptsPanel.prototype.attachDebuggerWhenShown):
+ (WebInspector.ScriptsPanel.prototype._toggleDebugging):
+
+2010-12-29 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Cleanup SVG code according to the webkit style rules 3
+ https://bugs.webkit.org/show_bug.cgi?id=51490
+
+ Last patch to fix indention and other style issues according to the WebKit style rules in the SVG code.
+ Just one file can't be fixed for check-webkit-style.
+ * SVGAllInOne.cpp: check-webkit-style wants a config.h at the beginning
+
+ No changes of functionality, so no new tests.
+
+ * svg/SVGAllInOne.cpp:
+ * svg/SVGImage.cpp:
+ * svg/SVGLength.cpp:
+ (WebCore::SVGLength::setValue):
+ * svg/SVGPolygonElement.h:
+ * svg/SVGPolylineElement.h:
+ * svg/SVGPreserveAspectRatio.cpp:
+ (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
+ (WebCore::SVGPreserveAspectRatio::transformRect):
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::viewport):
+ * svg/SVGSetElement.h:
+ * svg/SVGStylable.h:
+ (WebCore::SVGStylable::~SVGStylable):
+ * svg/SVGStyledLocatableElement.h:
+ (WebCore::SVGStyledLocatableElement::localCoordinateSpaceTransform):
+ (WebCore::SVGStyledLocatableElement::isStyledLocatable):
+ * svg/SVGStyledTransformableElement.cpp:
+ (WebCore::SVGStyledTransformableElement::isKnownAttribute):
+ * svg/SVGSwitchElement.cpp:
+ (WebCore::SVGSwitchElement::childShouldCreateRenderer):
+ * svg/SVGTests.cpp:
+ (WebCore::SVGTests::parseMappedAttribute):
+ * svg/SVGTextContentElement.cpp:
+ (WebCore::SVGTextContentElement::isKnownAttribute):
+ * svg/SVGTextPathElement.cpp:
+ * svg/SVGTextPathElement.h:
+ * svg/SVGTitleElement.h:
+ (WebCore::SVGTitleElement::rendererIsNeeded):
+ * svg/SVGTransformDistance.cpp:
+ (WebCore::SVGTransformDistance::SVGTransformDistance):
+ (WebCore::SVGTransformDistance::scaledDistance):
+ (WebCore::SVGTransformDistance::addSVGTransforms):
+ (WebCore::SVGTransformDistance::addSVGTransform):
+ (WebCore::SVGTransformDistance::addToSVGTransform):
+ (WebCore::SVGTransformDistance::isZero):
+ * svg/SVGTransformList.cpp:
+ * svg/SVGURIReference.cpp:
+ (WebCore::SVGURIReference::getTarget):
+ * svg/SVGVKernElement.h:
+ * svg/SVGViewSpec.cpp:
+ (WebCore::SVGViewSpec::parseViewSpec):
+ * svg/SVGZoomAndPan.h:
+ (WebCore::SVGZoomAndPan::SVGZoomAndPan):
+ (WebCore::SVGZoomAndPan::~SVGZoomAndPan):
+ (WebCore::SVGZoomAndPan::zoomAndPan):
+ * svg/SVGZoomEvent.h:
+ (WebCore::SVGZoomEvent::create):
+ * svg/animation/SMILTime.cpp:
+ (WebCore::operator*):
+ * svg/animation/SMILTime.h:
+ (WebCore::SMILTime::SMILTime):
+ (WebCore::SMILTime::unresolved):
+ (WebCore::SMILTime::indefinite):
+ (WebCore::SMILTime::operator=):
+ (WebCore::SMILTime::value):
+ (WebCore::SMILTime::isFinite):
+ (WebCore::SMILTime::isIndefinite):
+ (WebCore::SMILTime::isUnresolved):
+ (WebCore::operator==):
+ (WebCore::operator!): new operator checks for 0 or infinite values.
+ (WebCore::operator!=):
+ (WebCore::operator>):
+ (WebCore::operator<):
+ (WebCore::operator>=):
+ (WebCore::operator<=):
+ * svg/animation/SMILTimeContainer.h:
+ (WebCore::SMILTimeContainer::create):
+ (WebCore::SMILTimeContainer::setDocumentOrderIndexesDirty):
+ * svg/animation/SVGSMILElement.cpp:
+ (WebCore::ConditionEventListener::operator==):
+ (WebCore::SVGSMILElement::repeatingDuration):
+ (WebCore::SVGSMILElement::resolveInterval):
+ (WebCore::SVGSMILElement::calculateAnimationPercentAndRepeat):
+ * svg/animation/SVGSMILElement.h:
+ (WebCore::SVGSMILElement::timeContainer):
+ (WebCore::SVGSMILElement::intervalBegin):
+ (WebCore::SVGSMILElement::intervalEnd):
+ (WebCore::SVGSMILElement::previousIntervalBegin):
+ (WebCore::SVGSMILElement::documentOrderIndex):
+ (WebCore::SVGSMILElement::setDocumentOrderIndex):
+ * svg/graphics/SVGImage.h:
+ (WebCore::SVGImage::create):
+ (WebCore::SVGImage::destroyDecodedData):
+ (WebCore::SVGImage::decodedSize):
+ (WebCore::SVGImage::frameAtIndex):
+ * svg/graphics/filters/SVGFilterBuilder.h:
+ (WebCore::SVGFilterBuilder::create):
+ (WebCore::SVGFilterBuilder::lastEffect):
+ (WebCore::SVGFilterBuilder::getEffectReferences):
+ (WebCore::SVGFilterBuilder::addBuiltinEffects):
+
+2010-12-29 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ ASSERT(oldchild->parent() == owner) fails.
+ https://bugs.webkit.org/show_bug.cgi?id=50480
+
+ In RenderBlock removeChild function, when the inlineChildrenBlock(equal to prev or next)
+ is reparented to blockChildrenBlock, it is no longer a child of "this". This causes the
+ assertion failure when removeChildNode executes on the child(equal to prev or next).
+ Fix a typo in canMergeContiguousAnonymousBlocks.
+
+ Test: fast/multicol/span/double-merge-anonymous-block-crash.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::canMergeContiguousAnonymousBlocks): fix typo, change prev to next.
+ (WebCore::RenderBlock::removeChild): if prev or not is reparented, then set it to zero.
+
+2010-12-29 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Check SVG element type in FrameView::scrollToAnchor
+ https://bugs.webkit.org/show_bug.cgi?id=51718
+
+ Test: svg/custom/scroll-to-anchor-in-symbol.svg
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::scrollToAnchor):
+
+2010-12-29 Anton Muhin <antonm@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ [v8] Minor cleanup: remove unused method (the only method which can mutate context of V8DOMWindowShell)
+ https://bugs.webkit.org/show_bug.cgi?id=51704
+
+ * bindings/v8/V8DOMWindowShell.cpp:
+ * bindings/v8/V8DOMWindowShell.h:
+
+2010-12-29 Kenichi Ishibashi <bashi@google.com>
+
+ Reviewed by Darin Adler.
+
+ Use a HashMap for m_continuation to save memory
+ https://bugs.webkit.org/show_bug.cgi?id=43716
+
+ Saving memory consumption by applying a HashMap convention to
+ continuation pointers of RenderInline and RenderBlock classes.
+
+ * rendering/RenderBlock.cpp: Removed m_continuation.
+ (WebCore::RenderBlock::RenderBlock):
+ (WebCore::RenderBlock::destroy):
+ (WebCore::RenderBlock::inlineElementContinuation):
+ (WebCore::RenderBlock::blockElementContinuation):
+ * rendering/RenderBlock.h: Removed m_continuation.
+ * rendering/RenderBoxModelObject.cpp: Added a hash map for continuations.
+ (WebCore::RenderBoxModelObject::destroy): Added an assertion.
+ (WebCore::RenderBoxModelObject::continuation): Added.
+ (WebCore::RenderBoxModelObject::setContinuation): Added.
+ * rendering/RenderBoxModelObject.h:
+ * rendering/RenderInline.cpp: Removed m_continuation.
+ (WebCore::RenderInline::RenderInline):
+ (WebCore::RenderInline::destroy):
+ (WebCore::RenderInline::inlineElementContinuation):
+ * rendering/RenderInline.h: Removed m_continuation.
+
+2010-12-27 Amruth Raj <amruthraj@motorola.com> and Ravi Kasibhatla <ravi.kasibhatla@motorola.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Enable building whatever already exists of WebKit2
+ https://bugs.webkit.org/show_bug.cgi?id=37369
+
+ No new functionality added or deleted. Only makefile change. Hence, no tests added.
+
+ * GNUmakefile.am: Removed bindings/gobject from webcore_sources & webcore_cppflags and
+ added them to WebKit/gtk/GNUmakefile.am
+ * platform/network/soup/cache/webkit/soup-cache.h: Remove include <webkit/webkitdefines.h>
+ and declare WEBKIT_API directly
+
+2010-12-29 Eric Seidel <eric@webkit.org>
+
+ Unreviewed.
+
+ Simplify make-hash-tools.pl
+ https://bugs.webkit.org/show_bug.cgi?id=49922
+
+ Added HashTools.h to the project file now that its not autogenerated.
+ I also sorted the project file using sort-xcode-project-file
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-12-29 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed: revert r74755 and 74757.
+
+2010-12-29 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Sam Weinig.
+
+ JSDataViewCustom.cpp gives the fastcall calling convention to functions called via C++
+ https://bugs.webkit.org/show_bug.cgi?id=51722
+
+ Remove the JSC_HOST_CALL from methods that are called from C++. JSC_HOST_CALL gives
+ methods the fastcall calling convention, which leads to runtime errors when they are
+ called from C++. Also remove a bit of unnecessary code duplication.
+
+ No new tests. This is covered by fast/canvas/webgl/data-view-test.html.
+
+ * bindings/js/JSDataViewCustom.cpp:
+ (WebCore::getDataViewMember): Remove duplicated code.
+ (WebCore::JSDataView::getInt8): Remove JSC_HOST_CALL.
+ (WebCore::JSDataView::getUint8): Ditto.
+ (WebCore::JSDataView::getFloat32): Ditto.
+ (WebCore::JSDataView::getFloat64): Ditto.
+ (WebCore::setDataViewMember): Remove duplicated code.
+ (WebCore::JSDataView::setInt8): Remove JSC_HOST_CALL.
+ (WebCore::JSDataView::setUint8): Ditto.
+
+2010-12-29 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Kenneth Russel.
+
+ A more robust fix for https://bugs.webkit.org/show_bug.cgi?id=51681
+
+ * html/HTMLCanvasElement.cpp:
+ (WebCore::HTMLCanvasElement::attach): Added. Like recalcStyle(), calls
+ CanvasRenderingContext2D::updateFont() if necessary. This covers the case of a detach/
+ attach-type style recalc.
+ * html/HTMLCanvasElement.h:
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawTextInternal): Removed the early return added in
+ r74716. A font that is loading custom fonts is okay to use, as long as it is valid.
+ (WebCore::CanvasRenderingContext2D::accessFont): Added a call to
+ Document::updateStyleIfNeeded(). This ensures that any pending style recalc will take place
+ and update the font if it is invalid.
+ * platform/graphics/Font.h:
+ (WebCore::Font::loadingCustomFonts): Made this private.
+
+2010-12-29 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed: Qt build fix.
+
+ * inspector/InspectorController.cpp:
+
+2010-12-29 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: extract Database & DOM Storage
+ agents; remove InspectorBackend.
+ https://bugs.webkit.org/show_bug.cgi?id=51707
+
+ This change brushes up storage agents + removes redundant
+ InspectorBackend class.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::databaseForId):
+ (WebCore::InjectedScriptHost::selectDatabase):
+ (WebCore::InjectedScriptHost::selectDOMStorage):
+ (WebCore::InjectedScriptHost::inspectorDOMAgent):
+ * inspector/Inspector.idl:
+ * inspector/InspectorBackend.cpp: Removed.
+ * inspector/InspectorBackend.h: Removed.
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::~InspectorController):
+ (WebCore::InspectorController::connectFrontend):
+ (WebCore::InspectorController::releaseFrontendLifetimeAgents):
+ (WebCore::InspectorController::didUseDOMStorage):
+ (WebCore::InspectorController::setInjectedScriptSource):
+ (WebCore::InspectorController::dispatchOnInjectedScript):
+ (WebCore::InspectorController::releaseWrapperObjectGroup):
+ * inspector/InspectorController.h:
+ * inspector/InspectorDOMStorageAgent.cpp: Added.
+ (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
+ (WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
+ (WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
+ (WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
+ (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
+ (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
+ (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
+ * inspector/InspectorDOMStorageAgent.h: Copied from WebCore/inspector/InspectorStorageAgent.h.
+ (WebCore::InspectorDOMStorageAgent::create):
+ (WebCore::InspectorDOMStorageAgent::frontend):
+ * inspector/InspectorDatabaseAgent.cpp: Renamed from WebCore/inspector/InspectorStorageAgent.cpp.
+ (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
+ (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
+ (WebCore::InspectorDatabaseAgent::executeSQL):
+ (WebCore::InspectorDatabaseAgent::databaseForId):
+ (WebCore::InspectorDatabaseAgent::selectDatabase):
+ (WebCore::InspectorDatabaseAgent::clearFrontend):
+ (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
+ * inspector/InspectorDatabaseAgent.h: Renamed from WebCore/inspector/InspectorStorageAgent.h.
+ (WebCore::InspectorDatabaseAgent::create):
+ (WebCore::InspectorDatabaseAgent::frontend):
+ * inspector/InspectorFrontendClientLocal.cpp:
+ * inspector/InspectorFrontendClientLocal.h:
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.show):
+
+2010-12-29 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Assertion failure: element->inDocument() in AsyncScriptRunner::executeScriptSoon()
+ https://bugs.webkit.org/show_bug.cgi?id=51067
+
+ Typically when a script element is removed from the document, the cached script
+ client is removed. However, during the before load event, the cached script client
+ hasn't been created yet so it can't be removed.
+
+ This patch handles that case by explicitly checking if the script element was
+ removed during the beforeload event. Also, it avoids caching the Document references
+ over the arbitrary script execution in the before load event.
+
+ Test: fast/dom/HTMLScriptElement/move-in-beforeload.html
+ fast/dom/HTMLScriptElement/remove-in-beforeload.html
+
+ * dom/ScriptElement.cpp:
+ (WebCore::ScriptElement::requestScript):
+
+2010-12-29 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Element highlight tooltip displays wrong element size when zoomed in
+ https://bugs.webkit.org/show_bug.cgi?id=51703
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::drawElementTitle):
+
+2010-12-29 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Kent Tamura.
+
+ [HTML5][Forms] Support for :in-range and :out-of-range CSS selectors
+ https://bugs.webkit.org/show_bug.cgi?id=29071
+
+ Use InputType::rangeUnderflow() and InputType::rangeOverflow()
+ to determine if a control is in-range or out-of-range.
+
+ Tests: fast/css/pseudo-in-range-invalid-value.html
+ fast/css/pseudo-in-range.html
+ fast/css/pseudo-out-of-range.html
+
+ * css/CSSSelector.cpp:
+ (WebCore::CSSSelector::pseudoId):
+ (WebCore::nameToPseudoTypeMap):
+ (WebCore::CSSSelector::extractPseudoType):
+ * css/CSSSelector.h:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::canShareStyleWithElement):
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ * dom/Element.h:
+ (WebCore::Element::isInRange):
+ (WebCore::Element::isOutOfRange):
+ * html/BaseDateAndTimeInputType.cpp:
+ (WebCore::BaseDateAndTimeInputType::supportsRangeLimitation):
+ * html/BaseDateAndTimeInputType.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::isInRange):
+ (WebCore::HTMLInputElement::isOutOfRange):
+ * html/HTMLInputElement.h:
+ * html/InputType.cpp:
+ (WebCore::InputType::supportsRangeLimitation):
+ * html/InputType.h:
+ * html/NumberInputType.cpp:
+ (WebCore::NumberInputType::supportsRangeLimitation):
+ * html/NumberInputType.h:
+ * html/RangeInputType.cpp:
+ (WebCore::RangeInputType::supportsRangeLimitation):
+ * html/RangeInputType.h:
+
+2010-12-29 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ When cloning an anonymous block, make sure to set the childrenInline flag based
+ on the state of the block to be cloned.
+ https://bugs.webkit.org/show_bug.cgi?id=51489
+
+ Test: fast/multicol/span/clone-anonymous-block-non-inline-child-crash.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::clone): add code to handle cloning of anonymous blocks.
+ (WebCore::RenderBlock::splitBlocks): remove anonymous block creation calls since it is now handled by clone().
+
+2010-12-29 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed build fix for WinCE after r73802.
+
+ Reapply parts from r72585:
+ Port ContextMenuWin.cpp to WinCE
+ https://bugs.webkit.org/show_bug.cgi?id=48408
+
+ * CMakeLists.txt:
+ * platform/ContextMenu.h:
+ * platform/win/ContextMenuWin.cpp:
+ (WebCore::ContextMenu::getContextMenuItems):
+ (WebCore::ContextMenu::createNativeMenuFromItems):
+
+2010-12-29 Kent Hansen <kent.hansen@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] Fix compilation with Qt in namespace
+ https://bugs.webkit.org/show_bug.cgi?id=51701
+
+ * platform/graphics/ContextShadow.h:
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/network/NetworkingContext.h:
+ * platform/network/qt/QtNAMThreadSafeProxy.h:
+ * plugins/PluginView.h:
+
+2010-12-28 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: A disabled style property should get enabled when edited
+ https://bugs.webkit.org/show_bug.cgi?id=51679
+
+ Test: inspector/styles-disable-then-change.html
+
+ * inspector/front-end/CSSStyleModel.js:
+ (WebInspector.CSSProperty.prototype.setText):
+ (WebInspector.CSSProperty.prototype.setText.callback):
+
+2010-12-29 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [CMake] Remove WebKitGenerators
+ https://bugs.webkit.org/show_bug.cgi?id=50445
+
+ * CMakeLists.txt: Pass preprocessor to generate-bindings.pl.
+
+2010-12-28 Pratik Solanki <psolanki@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51522
+ Use deviceRGBColorSpaceRef() instead of calling CGColorSpaceCreateDeviceRGB()
+
+ * page/win/FrameCGWin.cpp:
+ (WebCore::imageFromRect):
+ * platform/graphics/cg/GradientCG.cpp:
+ (WebCore::Gradient::platformGradient):
+ * platform/graphics/cg/GraphicsContext3DCG.cpp:
+ (WebCore::GraphicsContext3D::paintToCanvas):
+ * platform/graphics/cg/ImageCG.cpp:
+ (WebCore::BitmapImage::checkForSolidColor):
+ * platform/graphics/gstreamer/ImageGStreamerCG.mm:
+ (ImageGStreamer::ImageGStreamer):
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::CGContextWithHDC):
+ (WebCore::GraphicsContext::releaseWindowsContext):
+ (WebCore::GraphicsContext::drawWindowsBitmap):
+ * platform/graphics/win/ImageCGWin.cpp:
+ (WebCore::BitmapImage::create):
+ (WebCore::BitmapImage::getHBITMAPOfSize):
+ * platform/image-decoders/cg/ImageDecoderCG.cpp:
+ (WebCore::createColorSpace):
+ * platform/win/DragImageCGWin.cpp:
+ (WebCore::allocImage):
+ (WebCore::createCgContextFromBitmap):
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::paintMenuListButtonGradients):
+ (WebCore::RenderThemeMac::paintSliderTrack):
+ * rendering/RenderThemeSafari.cpp:
+ (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
+ (WebCore::RenderThemeSafari::paintSliderTrack):
+
+2010-12-28 Daniel Bates <dbates@rim.com>
+
+ Reviewed by Sam Weinig.
+
+ Substitute // MARK: for compiler-specific #pragma mark
+ https://bugs.webkit.org/show_bug.cgi?id=51657
+
+ Fix compilation warnings about "#pragma mark" on GTK+ bots by
+ substituting "// MARK:" for "#pragma mark", which provides
+ analogous code-bookmarking functionality under Xcode.
+
+ * platform/graphics/cg/PathCG.cpp:
+ * platform/graphics/mac/WebLayer.mm:
+
+2010-12-28 Jan Erik Hanssen <jhanssen@sencha.com>
+
+ Reviewed by Eric Seidel.
+
+ [Qt] GraphicsContext::getCTM() does not need to make a copy of QPainter::combinedTransform()
+ https://bugs.webkit.org/show_bug.cgi?id=51687
+
+ Use a const reference instead of a copy of QPainter::combinedTransform()
+ in GraphicsContext::getCTM()
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::getCTM):
+
+2010-12-28 Takashi Toyoshima <toyoshim@google.com>
+
+ Reviewed by Eric Seidel.
+
+ gcc detected 'control reaches end of non-void function' with
+ -finstrument-functions option.
+ https://bugs.webkit.org/show_bug.cgi?id=51669
+
+ No new tests. These fixes are trivial.
+
+ * dom/Element.cpp:
+ (WebCore::Element::childTypeAllowed):
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::cachedResourceTypeString):
+
+2010-12-28 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Remove unused member of PendingScript
+ https://bugs.webkit.org/show_bug.cgi?id=51684
+
+ This was used when HTMLScriptRunner::runScript created a PendingScript
+ for inline scripts. But now it just calls executeScript() directly.
+ External scripts always have the minimum starting line number.
+
+ No new tests because no changed functionality.
+
+ * dom/PendingScript.cpp:
+ (WebCore::PendingScript::releaseElementAndClear):
+ * dom/PendingScript.h:
+ (WebCore::PendingScript::PendingScript):
+ (WebCore::PendingScript::operator=):
+ * html/parser/HTMLScriptRunner.cpp:
+ (WebCore::HTMLScriptRunner::sourceFromPendingScript):
+
+2010-12-20 Antonio Gomes <agomes@rim.com>
+
+ Reviewed by Daniel Bates.
+
+ Spatial Navigation: code clean up (Part VI)
+ https://bugs.webkit.org/show_bug.cgi?id=50666
+
+ No new tests needed.
+
+ * page/FocusController.cpp:
+ (WebCore::updatFocusCandidateIfNeeded): Assert renderer() and
+ isElementNode() now that we are bailing out earlier in both the
+ FocusCandidate constructor and FocusController::findFocusCandidateInContainer().
+ * page/SpatialNavigation.h: Swapped the parameters order in canScrollInDirection
+ and virtualRectForAreaElementAndDirection functions.
+ (WebCore::FocusController::findFocusCandidateInContainer):
+ (WebCore::FocusController::advanceFocusDirectionallyInContainer): Adjusted callsites
+ of canScrollInDirection(), and added an early return if !isElementNode().
+ (WebCore::FocusController::advanceFocusDirectionally): Adjusted callsite of
+ virtualRectForAreaElementAndDirection();
+ * page/SpatialNavigation.cpp:
+ (WebCore::FocusCandidate::FocusCandidate): Assert if node is not a element node;
+ (WebCore::isScrollableNode): Renamed from isScrollableContainerNode;
+ (WebCore::scrollInDirection): Adjusted callsite after function name change;
+ (WebCore::scrollableEnclosingBoxOrParentFrameForNodeInDi:rection): Assert if node is
+ a documentNode.
+ (WebCore::canScrollInDirection): Signature changed.
+ (WebCore::canBeScrolledIntoView): Ditto.
+ (WebCore::virtualRectForAreaElementAndDirection): Ditto.
+
+2010-12-28 Adrienne Walker <enne@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Fix tiled compositor assertion after GPU process recovery.
+ https://bugs.webkit.org/show_bug.cgi?id=51682
+
+ After the GPU process recovers, the layer size is set to IntSize(),
+ but IntRect::unite() has a special case for empty rects. This
+ behavior was causing the layer size to be too small, causing an
+ out-of-bounds array access elsewhere.
+
+ No new tests.
+
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::growLayerToContain):
+
+2010-12-23 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Initialize to 0 for undefined values in CopyTexImage2D
+ https://bugs.webkit.org/show_bug.cgi?id=51421
+
+ * html/canvas/WebGLFramebuffer.cpp: Track width/height/internalFormat of color buffer.
+ (WebCore::WebGLFramebuffer::WebGLFramebuffer):
+ (WebCore::WebGLFramebuffer::setAttachment):
+ (WebCore::WebGLFramebuffer::getWidth):
+ (WebCore::WebGLFramebuffer::getHeight):
+ (WebCore::WebGLFramebuffer::getColorBufferFormat):
+ * html/canvas/WebGLFramebuffer.h:
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::copyTexImage2D): Initialize undefined pixels to 0.
+ (WebCore::WebGLRenderingContext::copyTexSubImage2D):
+ (WebCore::WebGLRenderingContext::framebufferTexture2D):
+ (WebCore::WebGLRenderingContext::renderbufferStorage):
+ (WebCore::WebGLRenderingContext::getBoundFramebufferWidth):
+ (WebCore::WebGLRenderingContext::getBoundFramebufferHeight):
+ * html/canvas/WebGLRenderingContext.h:
+ * html/canvas/WebGLTexture.cpp: Track width/height/internalFormat of a texture by target/level.
+ (WebCore::WebGLTexture::getInternalFormat):
+ (WebCore::WebGLTexture::getWidth):
+ (WebCore::WebGLTexture::getHeight):
+ (WebCore::WebGLTexture::mapTargetToIndex):
+ (WebCore::WebGLTexture::getLevelInfo):
+ * html/canvas/WebGLTexture.h:
+ (WebCore::WebGLTexture::isTexture):
+ * platform/graphics/GraphicsContext3D.h: Add getInternalFramebufferSize() function.
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+ (WebCore::GraphicsContext3D::getInternalFramebufferSize):
+ * platform/graphics/qt/GraphicsContext3DQt.cpp:
+ (WebCore::GraphicsContext3D::getInternalFramebufferSize):
+
+2010-12-23 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Map GLsizei to long instead of unsigned long in WebGLRenderingContext and GraphicsContext3D
+ https://bugs.webkit.org/show_bug.cgi?id=39855
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::copyTexImage2D): Map GLsizei to long.
+ (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
+ (WebCore::WebGLRenderingContext::renderbufferStorage): Ditto.
+ (WebCore::WebGLRenderingContext::scissor): Ditto.
+ (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
+ (WebCore::WebGLRenderingContext::texImage2D): Ditto.
+ (WebCore::WebGLRenderingContext::texSubImage2DBase): Ditto.
+ (WebCore::WebGLRenderingContext::texSubImage2DImpl): Ditto.
+ (WebCore::WebGLRenderingContext::texSubImage2D): Ditto.
+ (WebCore::WebGLRenderingContext::viewport): Ditto.
+ (WebCore::WebGLRenderingContext::validateSize): Check the sizes are non-negative.
+ * html/canvas/WebGLRenderingContext.h:
+ * html/canvas/WebGLRenderingContext.idl:
+
+2010-12-28 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ Fix crash with invalid font in m_fontList by not drawing text when a custom font is in the
+ process of loading.
+ https://bugs.webkit.org/show_bug.cgi?id=51681
+
+ Test: canvas/philip/tests/2d.text-custom-font-load-crash.html
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawTextInternal): bail out if a custom font is loading.
+ * platform/graphics/Font.cpp:
+ (WebCore::Font::operator==): Replace condition with new function loadingCustomFonts()
+ (WebCore::Font::drawText): Replace condition with new function loadingCustomFonts()
+ (WebCore::Font::drawEmphasisMarks): Replace condition with new function loadingCustomFonts()
+ * platform/graphics/Font.h:
+ (WebCore::Font::loadingCustomFonts): new function that returns if a custom font is loading.
+
+2010-12-28 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Combine setShadowRoot and clearShadowRoot into a simpler API
+ https://bugs.webkit.org/show_bug.cgi?id=50971
+
+ No change in behavior, and API is not used yet.
+
+ * dom/Element.cpp:
+ (WebCore::Element::setShadowRoot): Combined clearing and setting of
+ the shadowRoot, also hooked up with setting and clearing of the
+ corresponding shadowHost values.
+ * dom/Element.h: renamed clearShadowRoot to removeShadowRoot and made it
+ private.
+ * dom/Node.h: Made shadow host-related functions public so that
+ Element::setShadowRoot can access setShadowHost. It seems logical
+ to make shadowHost public as well to keep the defs together.
+
+2010-12-28 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Chromium] Expose extension API to select a node in WebInspector
+ Do not request content for resources with non-numeric identifiers.
+ https://bugs.webkit.org/show_bug.cgi?id=49727
+
+ Test: http/tests/inspector/extensions-resources-redirect.html
+
+ * inspector/front-end/NetworkManager.js:
+ (WebInspector.NetworkManager.prototype._appendRedirect):
+
+2010-12-28 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Unreviewed build fix for Qt.
+
+ ResourceTreeModel.js was added.
+
+ * inspector/front-end/WebKit.qrc:
+
+2010-12-28 Mikhail Naganov <mnaganov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ [Chromium] Fix memory leak in Profiles tab concerned with heap profiles views.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51680
+
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel.prototype._reset):
+
+2010-12-28 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: REGRESSION: Clicking image resource in style sidebar doesn't actually go to resource anymore
+ https://bugs.webkit.org/show_bug.cgi?id=51663
+
+ The base URI is now computed correctly for links from CSS property uri(...) values. Additionally,
+ optional quotes/apostrophes and spaces are now allowed inside uri(...).
+
+ Test: inspector/styles-url-linkify.html
+
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
+ (WebInspector.StylePropertyTreeElement.prototype.updateTitle):
+
+2010-12-21 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Protocol cleanup task. Introduce Network, DOMStorage and Database domains.
+
+ Domain was changed for Resources, FileSystem etc. related methods.
+ ResourcesManager was renamed to NetworkManager.
+ ResourceTreeModel was extracted as separate file.
+ FileSystem, Database, DOMStorage and ApplicationCache methods were
+ removed from NetworkManager and added to corresponding classes.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51334
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/Inspector.idl:
+ * inspector/front-end/AuditRules.js:
+ (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
+ * inspector/front-end/CSSStyleModel.js:
+ (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
+ (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype.addMessage):
+ (WebInspector.ConsoleView.prototype.clearMessages):
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.ApplicationCache.updateApplicationCacheStatus):
+ (WebInspector.ApplicationCache.updateNetworkState):
+ * inspector/front-end/DOMStorage.js:
+ (WebInspector.DOMStorage.addDOMStorage):
+ (WebInspector.DOMStorage.selectDOMStorage):
+ (WebInspector.DOMStorage.updateDOMStorage):
+ * inspector/front-end/Database.js:
+ (WebInspector.Database.prototype.executeSql):
+ (WebInspector.Database.addDatabase):
+ (WebInspector.Database.selectDatabase):
+ (WebInspector.Database.sqlTransactionSucceeded):
+ (WebInspector.Database.sqlTransactionFailed):
+ * inspector/front-end/FileSystemView.js:
+ (WebInspector.FileSystem.didGetFileSystemPath):
+ (WebInspector.FileSystem.didGetFileSystemError):
+ (WebInspector.FileSystem.didGetFileSystemDisabled):
+ * inspector/front-end/NetworkItemView.js:
+ (WebInspector.NetworkItemView):
+ * inspector/front-end/NetworkManager.js: Added.
+ (WebInspector.NetworkManager):
+ (WebInspector.NetworkManager.prototype._createResource):
+ (WebInspector.NetworkManager.prototype.identifierForInitialRequest):
+ (WebInspector.NetworkManager.prototype.willSendRequest):
+ (WebInspector.NetworkManager.prototype._updateResourceWithRequest):
+ (WebInspector.NetworkManager.prototype._appendRedirect):
+ (WebInspector.NetworkManager.prototype.markResourceAsCached):
+ (WebInspector.NetworkManager.prototype.didReceiveResponse):
+ (WebInspector.NetworkManager.prototype._updateResourceWithResponse):
+ (WebInspector.NetworkManager.prototype.didReceiveContentLength):
+ (WebInspector.NetworkManager.prototype.didFinishLoading):
+ (WebInspector.NetworkManager.prototype.didFailLoading):
+ (WebInspector.NetworkManager.prototype.didLoadResourceFromMemoryCache):
+ (WebInspector.NetworkManager.prototype._updateResourceWithCachedResource):
+ (WebInspector.NetworkManager.prototype.setInitialContent):
+ (WebInspector.NetworkManager.prototype.didCommitLoadForFrame):
+ (WebInspector.NetworkManager.prototype.frameDetachedFromParent):
+ (WebInspector.NetworkManager.prototype.didCreateWebSocket):
+ (WebInspector.NetworkManager.prototype.willSendWebSocketHandshakeRequest):
+ (WebInspector.NetworkManager.prototype.didReceiveWebSocketHandshakeResponse):
+ (WebInspector.NetworkManager.prototype.didCloseWebSocket):
+ (WebInspector.NetworkManager.prototype._processCachedResources):
+ (WebInspector.NetworkManager.prototype._addFramesRecursively):
+ (WebInspector.NetworkManager.requestContent):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkPanel.prototype.refreshResource):
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource.prototype._innerRequestContent):
+ * inspector/front-end/ResourceManager.js: Removed.
+ * inspector/front-end/ResourceTreeModel.js: Added.
+ (WebInspector.ResourceTreeModel):
+ (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame):
+ (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
+ (WebInspector.ResourceTreeModel.prototype.frameDetachedFromParent):
+ (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
+ (WebInspector.ResourceTreeModel.prototype.addResourceToFrame):
+ (WebInspector.ResourceTreeModel.prototype._clearResources):
+ (WebInspector.ResourceTreeModel.prototype.forAllResources):
+ (WebInspector.ResourceTreeModel.prototype.addConsoleMessage):
+ (WebInspector.ResourceTreeModel.prototype.clearConsoleMessages):
+ (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
+ (WebInspector.ResourceTreeModel.prototype.resourceForURL):
+ (WebInspector.ResourceTreeModel.prototype.bindResourceURL):
+ (WebInspector.ResourceTreeModel.prototype._unbindResourceURL):
+ (WebInspector.ResourceTreeModel.createResource):
+ * inspector/front-end/ResourceView.js:
+ (WebInspector.ResourceView.createResourceView):
+ (WebInspector.ResourceView.resourceViewTypeMatchesResource):
+ (WebInspector.ResourceView.resourceViewForResource):
+ (WebInspector.ResourceView.recreateResourceView):
+ (WebInspector.ResourceView.existingResourceViewForResource):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype.canShowSourceLine):
+ (WebInspector.ResourcesPanel.prototype.showSourceLine):
+ (WebInspector.ResourcesPanel.prototype.showResource):
+ (WebInspector.ResourcesPanel.prototype.get searchableViews.callback):
+ (WebInspector.ResourcesPanel.prototype.get searchableViews):
+ (WebInspector.FrameResourceTreeElement.prototype._errorsWarningsUpdated):
+ (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._addScript):
+ (WebInspector.ScriptsPanel.prototype.reset):
+ (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
+ (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.html:
+ * inspector/front-end/inspector.js:
+ (WebInspector.forAllResources):
+ (WebInspector.resourceForURL):
+
+2010-12-27 Helder Correia <helder@sencha.com>
+
+ Reviewed by Ariya Hidayat.
+
+ ContextShadow should use AffineTransform instead of TransformationMatrix
+ https://bugs.webkit.org/show_bug.cgi?id=51661
+
+ ContextShadow needs the CTM to make sure shadows are not affected by
+ transformations when drawing on a canvas. AffineTransform is sufficient
+ in this case.
+
+ Existing tests: fast/canvas/canvas*shadow*html
+
+ * platform/graphics/ContextShadow.cpp:
+ (WebCore::ContextShadow::mustUseContextShadow):
+ (WebCore::ContextShadow::adjustBlurDistance):
+ (WebCore::ContextShadow::calculateLayerBoundingRect):
+ * platform/graphics/ContextShadow.h:
+ * platform/graphics/cairo/ContextShadowCairo.cpp:
+ (WebCore::ContextShadow::getTransformationMatrixFromContext):
+ * platform/graphics/qt/ContextShadowQt.cpp:
+ (WebCore::ContextShadow::getTransformationMatrixFromContext):
+
+2010-12-27 Daniel Bates <dbates@rim.com>
+
+ Reviewed by Antonio Gomes.
+
+ Clean up: Rename HTMLFrameElementBase::getMarginWidth() and HTMLFrameElementBase::getMarginHeight()
+ https://bugs.webkit.org/show_bug.cgi?id=51634
+
+ Rename HTMLFrameElementBase::getMarginWidth() and HTMLFrameElementBase::getMarginHeight()
+ to HTMLFrameElementBase::marginWidth() and HTMLFrameElementBase::marginHeight(), respectively.
+ This will make the names of these getters consistent with the naming convention we use for
+ getters.
+
+ * html/HTMLBodyElement.cpp:
+ (WebCore::HTMLBodyElement::insertedIntoDocument):
+ * html/HTMLFrameElementBase.h:
+ (WebCore::HTMLFrameElementBase::marginWidth): Renamed; Formerly getMarginWidth().
+ (WebCore::HTMLFrameElementBase::marginHeight): Renamed; Formerly getMarginHeight().
+ * loader/SubframeLoader.cpp:
+ (WebCore::SubframeLoader::loadSubframe):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::init):
+ * rendering/RenderEmbeddedObject.cpp:
+ (WebCore::RenderEmbeddedObject::viewCleared): Also renamed variables marginw and marginh
+ to marginWidth and marginHeight, respectively. This makes the names of these variables
+ consistent with the names of similar variables in SubframeLoader::loadSubframe() and FrameView::init().
+ * rendering/RenderFrame.cpp:
+ (WebCore::RenderFrame::viewCleared): Ditto.
+
+2010-12-27 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Daniel Bates.
+
+ [GTK] RenderThemeGtk::m_HScale and RenderThemeGtk::m_VScale are not initialized
+ https://bugs.webkit.org/show_bug.cgi?id=51654
+
+ Properly initialize slider members of RenderThemeGtk. This can lead to test crashes
+ on some debug configurations.
+
+ No new tests. This is already covered by current slider tests. It isn't crashing on
+ the bots, but it does crash locally.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::RenderThemeGtk): Properly initialize members.
+
+2010-12-27 Anton Muhin <antonm@chromium.org>
+
+ Reviewed by David Levin.
+
+ [v8] Remove unused methods to protect/unprotect wrappers during garbage collection
+ https://bugs.webkit.org/show_bug.cgi?id=51648
+
+ * bindings/v8/ScriptController.cpp:
+ * bindings/v8/ScriptController.h:
+ * bindings/v8/V8GCController.cpp:
+ (WebCore::V8GCController::gcEpilogue):
+ * bindings/v8/V8GCController.h:
+
+2010-12-27 Yury Semikhatsky <yurys@chromium.org>
+
+ Unreviewed. Removed trailing spaces from a localized
+ string to make it the same as the one used in the code.
+
+ * English.lproj/localizedStrings.js:
+
+2010-12-27 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Eric Seidel.
+
+ Browser is failing 16 baseline test from Selector API Test Suite
+ https://bugs.webkit.org/show_bug.cgi?id=42968
+
+ Throw an exception if there is no argument to querySelector or
+ querySelectorAll. This replaces the current behavior of passing the string
+ "undefined" as the argument.
+
+ No new tests, just updating the existing results for
+ fast/dom/SelectorAPI/resig-SelectorAPI-test.xhtml.
+
+ * dom/Document.idl:
+ * dom/DocumentFragment.idl:
+ * dom/Element.idl:
+
+2010-12-26 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Dan Bernstein.
+
+ For box-shadow, non-primary shadows should have specified radii.
+ https://bugs.webkit.org/show_bug.cgi?id=51386
+
+ On paintBoxShadow(), the spread value accidentally accumulated accidentally
+ during the loop, which should be applied individually for radius of each shadow.
+ This change makes the radii for rects computed for each shadow.
+
+ Test: fast/box-shadow/spread-multiple-normal.html
+
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paintBoxShadow):
+
+2010-12-26 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Improve output of HTML parser benchmark
+ https://bugs.webkit.org/show_bug.cgi?id=51611
+
+ Calculate and show median, min and max values.
+
+ * benchmarks/parser/html-parser.html:
+
+2010-12-26 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ Remove the bad assert in paintPaginatedChildLayer, hitTestPaginatedChildLayer.
+ https://bugs.webkit.org/show_bug.cgi?id=48772
+
+ Test: fast/multicol/renderer-positioned-assert-crash.html
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::paintPaginatedChildLayer):
+ (WebCore::RenderLayer::hitTestPaginatedChildLayer):
+
+2010-12-25 Peter Rybin <peter.rybin@gmail.com>
+
+ Reviewed by Adam Barth.
+
+ Adds currentColumn (and currentLine) to SegmentedString. Switches
+ HTMLTreeBuilder to HTMLDocumentParser::textPosition when it
+ needs position for a <script> tag.
+
+ SegmentedString should provide column position
+ https://bugs.webkit.org/show_bug.cgi?id=51311
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::HTMLDocumentParser):
+ (WebCore::HTMLDocumentParser::textPosition):
+ * html/parser/HTMLInputStream.h:
+ (WebCore::HTMLInputStream::current):
+ (WebCore::InsertionPointRecord::InsertionPointRecord):
+ (WebCore::InsertionPointRecord::~InsertionPointRecord):
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
+ (WebCore::HTMLTreeBuilder::processScriptStartTag):
+ * html/parser/HTMLTreeBuilder.h:
+ (WebCore::HTMLTreeBuilder::create):
+ * platform/text/SegmentedString.cpp:
+ (WebCore::SegmentedString::operator=):
+ (WebCore::SegmentedString::numberOfCharactersConsumedSlow):
+ (WebCore::SegmentedString::advanceSlowCase):
+ (WebCore::SegmentedString::currentLine):
+ (WebCore::SegmentedString::currentColumn):
+ (WebCore::SegmentedString::setCurrentPosition):
+ * platform/text/SegmentedString.h:
+ (WebCore::SegmentedString::SegmentedString):
+ (WebCore::SegmentedString::advancePastNewline):
+ (WebCore::SegmentedString::advance):
+ (WebCore::SegmentedString::numberOfCharactersConsumed):
+
+2010-12-25 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ GraphicsContext: Don't pass StrokeStyle (enum) as const reference
+ https://bugs.webkit.org/show_bug.cgi?id=51608
+
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::setStrokeStyle):
+ (WebCore::GraphicsContext::setPlatformStrokeStyle):
+ (WebCore::GraphicsContext::adjustLineToPixelBoundaries):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::setPlatformStrokeStyle):
+ * platform/graphics/haiku/GraphicsContextHaiku.cpp:
+ (WebCore::GraphicsContext::setPlatformStrokeStyle):
+ * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
+ (WebCore::GraphicsContext::setPlatformStrokeStyle):
+ * platform/graphics/openvg/PainterOpenVG.cpp:
+ (WebCore::PainterOpenVG::setStrokeStyle):
+ * platform/graphics/openvg/PainterOpenVG.h:
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::setPlatformStrokeStyle):
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::setPlatformStrokeStyle):
+
+2010-12-24 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ REGRESSION (r74648): XHR layout test failures
+ https://bugs.webkit.org/show_bug.cgi?id=51603
+
+ Reverted r74648.
+
+ * WebCore.exp.in:
+
+2010-12-24 Dan Bernstein <mitz@apple.com>
+
+ Try to fix the Qt build after r74648.
+
+ * WebCore.gypi:
+ * WebCore.pro:
+ * platform/network/qt/CredentialStorageQt.cpp: Added.
+ (WebCore::CredentialStorage::getFromPersistentStorage):
+
+2010-12-24 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ CSSStyleSelector cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=51597
+
+ Make some methods const. Add assertion to checkOneSelector, with the
+ intention of later removing the if (!e) check (this is hot code).
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::locateCousinList):
+ (WebCore::CSSStyleSelector::canShareStyleWithElement):
+ (WebCore::CSSStyleSelector::locateSharedStyle):
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ (WebCore::CSSStyleSelector::mmLength):
+ (WebCore::CSSStyleSelector::inchLength):
+ (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
+ (WebCore::CSSStyleSelector::hasSelectorForAttribute):
+ * css/CSSStyleSelector.h:
+ (WebCore::CSSStyleSelector::fontSelector):
+
+2010-12-24 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ <rdar://problem/8758386> The web process uses its own credential storage
+ https://bugs.webkit.org/show_bug.cgi?id=51599
+
+ * WebCore.exp.in: Export CredentialStorage::getFromPersistentStorage(), Credential::hasPassword(),
+ and Credential::isEmpty().
+
+2010-12-24 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ [V8] Rename V8CustomEventListener.{h,cpp} to V8EventListener.{h,cpp}
+ https://bugs.webkit.org/show_bug.cgi?id=51595
+
+ * WebCore.gypi:
+ * bindings/v8/V8DOMWrapper.cpp:
+ * bindings/v8/V8EventListener.cpp: Renamed from WebCore/bindings/v8/custom/V8CustomEventListener.cpp.
+ (WebCore::V8EventListener::V8EventListener):
+ (WebCore::V8EventListener::getListenerFunction):
+ (WebCore::V8EventListener::callListenerFunction):
+ * bindings/v8/V8EventListener.h: Renamed from WebCore/bindings/v8/custom/V8CustomEventListener.h.
+ (WebCore::V8EventListener::create):
+ * bindings/v8/V8EventListenerList.h:
+ * bindings/v8/V8WorkerContextEventListener.h:
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+ * bindings/v8/custom/V8LocationCustom.cpp:
+ * bindings/v8/custom/V8NodeCustom.cpp:
+ * bindings/v8/custom/V8NotificationCenterCustom.cpp:
+
+2010-12-24 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Show current time / total in media player
+ https://bugs.webkit.org/show_bug.cgi?id=51535
+
+ * css/mediaControlsGtk.css:
+ (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::formatMediaControlsCurrentTime):
+ (WebCore::RenderThemeGtk::paintMediaCurrentTime):
+ * platform/gtk/RenderThemeGtk.h:
+
+2010-12-24 Jan Erik Hanssen <jhanssen@sencha.com>
+
+ Reviewed by Eric Seidel.
+
+ Clean up CSSRuleData in CSSStyleSelector.h
+ https://bugs.webkit.org/show_bug.cgi?id=27753
+
+ Move CSSRuleData and CSSRuleDataList from CSSStyleSelector.h to the .cpp file.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSRuleData::CSSRuleData):
+ (WebCore::CSSRuleData::~CSSRuleData):
+ (WebCore::CSSRuleData::position):
+ (WebCore::CSSRuleData::rule):
+ (WebCore::CSSRuleData::selector):
+ (WebCore::CSSRuleData::next):
+ (WebCore::CSSRuleDataList::CSSRuleDataList):
+ (WebCore::CSSRuleDataList::~CSSRuleDataList):
+ (WebCore::CSSRuleDataList::first):
+ (WebCore::CSSRuleDataList::last):
+ (WebCore::CSSRuleDataList::append):
+ * css/CSSStyleSelector.h:
+
+2010-12-24 Yury Semikhatsky <yurys@chromium.org>
+
+ Unreviewed. Fix compilation on Windows.
+
+ * inspector/InspectorStyleSheet.cpp:
+ (WebCore::InspectorStyle::~InspectorStyle): added explicit empty destructor
+ * inspector/InspectorStyleSheet.h:
+
+2010-12-24 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ inspector/debugger-step-out.html crashing intermittently in the bots
+ https://bugs.webkit.org/show_bug.cgi?id=50868
+
+ Use RefPtr rather instead of raw pointers when keeping references
+ to refcounted objects.
+
+ * inspector/InspectorCSSAgent.cpp:
+ (WebCore::InspectorCSSAgent::getStylesForNode2):
+ (WebCore::InspectorCSSAgent::getComputedStyleForNode2):
+ * inspector/InspectorStyleSheet.cpp:
+ (WebCore::InspectorStyle::create):
+ (WebCore::InspectorStyle::InspectorStyle):
+ (WebCore::InspectorStyle::buildObjectForStyle):
+ (WebCore::InspectorStyle::setPropertyText):
+ (WebCore::InspectorStyle::toggleProperty):
+ (WebCore::InspectorStyle::styleText):
+ (WebCore::InspectorStyle::populateAllProperties):
+ (WebCore::InspectorStyle::replacePropertyInStyleText):
+ (WebCore::InspectorStyleSheet::create):
+ (WebCore::InspectorStyleSheet::InspectorStyleSheet):
+ (WebCore::InspectorStyleSheetForInlineStyle::create):
+ (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
+ (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
+ * inspector/InspectorStyleSheet.h:
+ (WebCore::InspectorStyle::cssStyle):
+ (WebCore::InspectorStyleSheet::pageStyleSheet):
+
+2010-12-24 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVGElementInstance::m_useElement should be cleared when use element is removed from document
+ https://bugs.webkit.org/show_bug.cgi?id=51486
+
+ Test: svg/custom/use-instanceRoot-with-use-removed.svg
+
+ * svg/SVGElementInstance.cpp:
+ (WebCore::SVGElementInstance::invalidateAllInstancesOfElement):
+ * svg/SVGElementInstance.h:
+ (WebCore::SVGElementInstance::clearUseElement):
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::removedFromDocument):
+ (WebCore::ShadowTreeUpdateBlocker::if):
+ (WebCore::SVGUseElement::detachInstance):
+ (WebCore::SVGUseElement::detach):
+ * svg/SVGUseElement.h:
+
+2010-12-23 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Missing Localized Strings
+ https://bugs.webkit.org/show_bug.cgi?id=51542
+
+ Added missing strings: "WebSocket", "Frames", "Text", "Transfer",
+ "Preserve Log upon Navigation", and "Go to Line".
+
+ * English.lproj/localizedStrings.js:
+
+2010-12-24 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Inline HTML style property out of sync with element.style in Sidebar
+ https://bugs.webkit.org/show_bug.cgi?id=51478
+
+ Now the element attribute modifications (including "style") are tracked, which results in the
+ source offsets update (in the backend) and Styles/Metrics pane updates (in the frontend)
+ on the "style" attribute modification through the Elements tree. Also, it appears that
+ a complete "style" attribute removal destroys the inline style declaration
+ (StyledElement::m_inlineStyleDecl), while the code used to rely on it being immutable (hence a crash).
+
+ Test: inspector/elements-delete-inline-style.html
+
+ * inspector/InspectorCSSAgent.cpp:
+ (WebCore::InspectorCSSAgent::didModifyDOMAttr):
+ * inspector/InspectorCSSAgent.h:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::didModifyDOMAttr):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/InspectorStyleSheet.cpp:
+ (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
+ (WebCore::InspectorStyleSheetForInlineStyle::didModifyElementAttribute):
+ (WebCore::InspectorStyleSheetForInlineStyle::text):
+ (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
+ (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
+ * inspector/InspectorStyleSheet.h:
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
+
+2010-12-24 Noel Gordon <noel.gordon@gmail.com>
+
+ Reviewed by Andreas Kling.
+
+ [chromium] Fix a style nit in the JPEG encoder
+ https://bugs.webkit.org/show_bug.cgi?id=51574
+
+ * platform/image-encoders/skia/JPEGImageEncoder.cpp: nit begone.
+
+2010-12-23 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ Web Inspector: CSS shorthand properties expand unnecessarily
+ https://bugs.webkit.org/show_bug.cgi?id=36304
+
+ "border-radius" is a shorthand property that has a "non-standard" format and longhands, see
+ http://www.w3.org/TR/css3-background/#border-radius for reference. CSSParser does not use the
+ standard parseShorthand() or parse4Values() methods but instead a custom parseBorderRadius() method.
+ This method didn't use to create a ShorthandScope instance and set the m_implicitShorthand value
+ appropriately when adding implicit longhands, thus they were added as normal properties
+ found in the CSS (neither implicit, nor longhands). This is now fixed.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseBorderRadius):
+
+2010-12-24 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ setTargetAttributeAnimatedValue should check for a null shadowTreeElement.
+ https://bugs.webkit.org/show_bug.cgi?id=51576
+
+ Disallowed elements may be pruned from the shadow tree, leaving a null
+ shadowTreeElement. We should check for that before setting attributes.
+
+ Test: svg/custom/animate-disallowed-use-element.svg
+
+ * svg/SVGAnimationElement.cpp:
+ (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
+
+2010-12-24 Evan Martin <evan@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ TextMetrics::width is an integer, but the member is a float
+ https://bugs.webkit.org/show_bug.cgi?id=51566
+
+ Change the return type to a float.
+
+ No tests, fixing a compiler warning.
+ (I was unable to produce a difference in the values exposed to pages
+ with a float versus the previous conversion to an integer.)
+
+ * html/TextMetrics.h:
+ (WebCore::TextMetrics::width):
+
+2010-12-24 Ryuan Choi <ryuan.choi@samsung.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [EFL] Add option to enable Touch Events.
+ https://bugs.webkit.org/show_bug.cgi?id=49125
+
+ Add files for EFL to support TOUCH_EVENTS.
+
+ * CMakeLists.txt:
+ * CMakeListsEfl.txt:
+ * platform/PlatformTouchEvent.h: Add EFL related constructor.
+ * platform/PlatformTouchPoint.h: ditto.
+ * platform/efl/PlatformTouchEventEfl.cpp: Added.
+ (WebCore::PlatformTouchEvent::PlatformTouchEvent):
+ * platform/efl/PlatformTouchPointEfl.cpp: Added.
+ (WebCore::PlatformTouchPoint::PlatformTouchPoint):
+
+2010-12-24 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [EFL] Return an empty string instead of 'application/octet-stream' in getMIMETypeForExtension()
+ https://bugs.webkit.org/show_bug.cgi?id=51457
+
+ WebKit EFL can't play html5 audio because of wrong mime type checking.
+ So, 'application/octet-stream' is changed with an empty string.
+
+ * platform/efl/MIMETypeRegistryEfl.cpp:
+ (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
+ Returns an empty string instead of application/octet-stream when it can't find proper mime type.
+
+2010-12-24 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ SVGFontFaceElement::rebuildFontFace() should exit when not in document
+ https://bugs.webkit.org/show_bug.cgi?id=51571
+
+ We were hitting a NULL deref crash. Since most of the callers checked
+ inDocument() anyway, I moved it into the start of rebuildFontFace.
+
+ Test: svg/custom/use-invalid-font-face.svg
+
+ * svg/SVGFontFaceElement.cpp:
+ (WebCore::SVGFontFaceElement::parseMappedAttribute):
+ (WebCore::SVGFontFaceElement::rebuildFontFace):
+ (WebCore::SVGFontFaceElement::childrenChanged):
+
+2010-12-24 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Remove unnecessary check in CSSCanvasValue::canvasDestroyed().
+ https://bugs.webkit.org/show_bug.cgi?id=51564
+
+ This check was duplicating an ASSERT for a case fixed in r73927.
+ Now that the bug is fixed the check is no longer necessary.
+
+ Removing dead code, so no new tests needed.
+
+ * css/CSSCanvasValue.cpp:
+ (WebCore::CSSCanvasValue::canvasDestroyed):
+
+2010-12-23 Evan Martin <evan@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ ViewportArguments.h uses an enum to intialize a bool
+ https://bugs.webkit.org/show_bug.cgi?id=50982
+
+ Initialize userScalable to true, rather than -1.
+ No tests; fixes a compiler warning.
+
+ * dom/ViewportArguments.h:
+ (WebCore::ViewportArguments::ViewportArguments):
+
+2010-12-23 Jan Erik Hanssen <jhanssen@sencha.com>
+
+ Reviewed by Adam Barth.
+
+ [Qt] User name/password stripped from URLs
+ https://bugs.webkit.org/show_bug.cgi?id=36232
+
+ If a username but no password or no username but a password is present
+ in a URL, QtWebKit won't send any authentication information down to Qt
+ as it should.
+
+ Tests: http/tests/xmlhttprequest/basic-auth-nopassword.html
+ http/tests/xmlhttprequest/basic-auth-nouser.html
+
+ * platform/network/qt/ResourceHandleQt.cpp:
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::loadResourceSynchronously):
+
+2010-12-23 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ queryCommandValue("FormatBlock") does not respect editing boundaries
+ https://bugs.webkit.org/show_bug.cgi?id=51219
+
+ Fixed the bug by checking the element we found in elementForFormatBlockCommand
+ does not contain the editable root.
+
+ * editing/FormatBlockCommand.cpp:
+ (WebCore::FormatBlockCommand::elementForFormatBlockCommand):
+
+2010-12-23 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ FormatBlock doesn't preserve typing style but it should
+ https://bugs.webkit.org/show_bug.cgi?id=51140
+
+ Fixed the bug by making preserveTypingStyle return true.
+
+ Test: editing/execCommand/format-block-typing-style.html
+
+ * editing/FormatBlockCommand.h:
+ (WebCore::FormatBlockCommand::preservesTypingStyle):
+
+2010-12-23 Jessie Berlin <jberlin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Need WebKit2 API to create a SecurityOrigin from protocol, host, and port
+ https://bugs.webkit.org/show_bug.cgi?id=51563
+
+ Add SecurityOrigin::create(const String& protocol, const String& host, int port).
+
+ * WebCore.exp.in:
+ Export the symbols for WebCore::SecurityOrigin::create(String, String, int).
+
+ * page/SecurityOrigin.cpp:
+ (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
+ Use the constant MaxAllowedPort.
+ (WebCore::SecurityOrigin::create):
+ Sanitizing based off of that done in createFromDatabaseIdentifier.
+ * page/SecurityOrigin.h:
+
+2010-12-23 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed build fix for WinCE after r73802.
+
+ Reapply r70812:
+ Port ContextMenuItemWin.cpp to WinCE
+ https://bugs.webkit.org/show_bug.cgi?id=48407
+
+ * platform/win/ContextMenuItemWin.cpp:
+
+2010-12-23 Adam Barth <abarth@webkit.org>
+
+ Remove include of non-existant file.
+
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+
+2010-12-23 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Selection becomes stale when CharacterData is manipulated directly
+ https://bugs.webkit.org/show_bug.cgi?id=51389
+
+ The bug was caused by SelectionController's not adjusting selection when CharacterData's
+ m_data is modified by its API.
+
+ Fixed the bug by adding textWillBeReplaced to SelectionController and calling it in
+ CharacterData::textWillBeReplaced. Added newLength to setDataAndUpdate, which is passed to
+ textWillBeReplaced because inserting, replacing, or removing data may require moving
+ the offset of the selection end points (done by shouldRemovePositionAfterAdoptingTextReplacement).
+
+ Also fixed the condition for determining whether or not a node intersects the selection
+ in respondToNodeModification, which is extracted from nodeWillBeRemoved. The old condition
+ failed to recognize certain cases when selection started and ended with non-zero offsets.
+
+ Tests: editing/selection/character-data-mutation-crash.html
+ editing/selection/character-data-mutation.html
+
+ * dom/CharacterData.cpp:
+ (WebCore::CharacterData::setData): Passes newLegnth to setDataAndUpdate.
+ (WebCore::CharacterData::appendData): Ditto.
+ (WebCore::CharacterData::insertData): Ditto.
+ (WebCore::CharacterData::deleteData): Ditto.
+ (WebCore::CharacterData::replaceData): Ditto.
+ (WebCore::CharacterData::setDataAndUpdate): Added newLegnth to the argument list,
+ and renamed lengthOfReplacedData to oldLength; calls textWillBeReplaced.
+ * dom/CharacterData.h:
+ * editing/SelectionController.cpp:
+ (WebCore::removingNodeRemovesPosition): Removed indentations from blank lines.
+ (WebCore::SelectionController::nodeWillBeRemoved): Calls nodeWillBeRemoved.
+ (WebCore::SelectionController::respondToNodeModification): Extracted from nodeWillBeRemoved;
+ fixed the logic to figure out whether a node is inside the range or not.
+ (WebCore::shouldRemovePositionAfterAdoptingTextReplacement): Added.
+ (WebCore::SelectionController::textWillBeReplaced): Added.
+ * editing/SelectionController.h:
+
+2010-12-23 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Remove unneeded V8 bindings files
+ https://bugs.webkit.org/show_bug.cgi?id=51570
+
+ * WebCore.gypi:
+ * bindings/generic/BindingDOMWindow.h: Removed.
+ * bindings/v8/specialization/V8BindingDOMWindow.h: Removed.
+
+2010-12-23 Dan Bernstein <mitz@apple.com>
+
+ Build fix.
+
+ * editing/EditorCommand.cpp:
+ (WebCore::enabledDismissCorrectionPanel):
+
+2010-12-23 Darin Adler <darin@apple.com>
+
+ Try to fix crash seen on GTK bot.
+
+ * editing/EditorCommand.cpp:
+ (WebCore::internalCommand): Add back empty string check I accidentally deleted in r74580.
+
+ * WebCore.xcodeproj/project.pbxproj: Let Xcode edit the file.
+
+2010-12-23 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r74561.
+ http://trac.webkit.org/changeset/74561
+ https://bugs.webkit.org/show_bug.cgi?id=51565
+
+ "Broke Chromium UI tests on Vista" (Requested by kbr_google on
+ #webkit).
+
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContentsIfDirty):
+ * platform/graphics/skia/GraphicsContext3DSkia.cpp:
+ (WebCore::GraphicsContext3D::getImageData):
+
+2010-12-23 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ [Chromium] Add WebThemeEngine for Mac to allow scrollbar rendering to be overridden for the DRT
+ https://bugs.webkit.org/show_bug.cgi?id=51507
+
+ Adds WebThemeEngine for the Mac (it already has parallel definitions for
+ Windows and Linux) so that scrollbar thumb rendering can be overridden
+ for the DRT (to be consistent with the NSScroller-based rendering
+ used by the Mac port).
+
+ No new tests since the functionality is not exposed yet. Eventually will
+ result in the Chromium/Mac port being able to use the same pixel
+ baselines for layout tests as the Mac port.
+
+ * platform/chromium/ChromiumBridge.h:
+ * platform/chromium/ScrollbarThemeChromiumMac.mm:
+ (WebCore::scrollbarStateToThemeState):
+ (WebCore::ScrollbarThemeChromiumMac::paint):
+
+2010-12-23 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ WKView should not try to do asynchronous validation for selectors that are not editor commands
+ https://bugs.webkit.org/show_bug.cgi?id=51555
+
+ * WebCore.exp.in: Added commandIsSupportedFromMenuOrKeyBinding.
+ * editing/Editor.h: Reordered arguments in the Editor::Command constructor
+ and the data members too so the frame is last. Added
+ commandIsSupportedFromMenuOrKeyBinding.
+
+ * editing/EditorCommand.cpp:
+ (WebCore::supported): Removed the EditorCommandSource argument. These
+ functions are now only used when called from DOM.
+ (WebCore::supportedFromMenuOrKeyBinding): Ditto.
+ (WebCore::supportedCopyCut): Ditto.
+ (WebCore::supportedPaste): Ditto.
+ (WebCore::enabledDismissCorrectionPanel): Changed the supported function to
+ an enabled function. It was incorrect to say that this is "supported" only
+ when the correction panel is up. Correct to say that it is "enabled" only
+ then. And also probably OK to enable it even when the selection is not in
+ editable text, as long as the panel is up.
+ (WebCore::createCommandMap): Moved conditional commands out of the main
+ array into a separate section at the end.
+ (WebCore::internalCommand): Added.
+ (WebCore::Editor::command): Changed to use the new internalCommand function
+ and simplified by relying on the null check in the Command constructor.
+ (WebCore::Editor::commandIsSupportedFromMenuOrKeyBinding): Added.
+ (WebCore::Editor::Command::Command): Removed unneeded initialization of
+ m_source, which is never looked at if m_command is 0. Added feature of
+ passing a null command pointer to the non-default constructor.
+ (WebCore::Editor::Command::isSupported): Changed to only call the
+ per-command isSupported function when the command source is DOM.
+ Accordingly that function is now called isSupportedFromDOM.
+
+2010-12-23 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Incorrect layer property used noted as changed in GraphicsLayerCA::setAcceleratesDrawing
+ https://bugs.webkit.org/show_bug.cgi?id=51560
+
+ No new tests.
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::setAcceleratesDrawing):
+
+2010-12-23 Jan Erik Hanssen <jhanssen@sencha.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] copy and paste greek symbols to Word, TextEdit results in ?'s being shown
+ https://bugs.webkit.org/show_bug.cgi?id=35635
+
+ Explicitly set text/html data on QClipboard as UTF-8 and also include a <meta>
+ tag informing the OS that the data is in UTF-8 format.
+
+ * platform/qt/PasteboardQt.cpp:
+ (WebCore::Pasteboard::writeSelection):
+
+2010-12-23 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ CSSCursorImageValue destructor should clear referenced element.
+ https://bugs.webkit.org/show_bug.cgi?id=51417
+
+ Calls correct method to clear image and renames method to avoid future confusion.
+
+ Test: svg/css/cursor-image-replace.svg
+
+ * css/CSSCursorImageValue.cpp:
+ (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::cursorImageValueRemoved):
+ * svg/SVGElement.h:
+
+2010-12-22 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ WebKit2 needs to mirror the frame tree in the UIProcess
+ https://bugs.webkit.org/show_bug.cgi?id=51546
+
+ - Add client functions to notify that a frame has been added or
+ removed from the page cache.
+
+ * history/CachedFrame.cpp:
+ (WebCore::CachedFrameBase::restore):
+ (WebCore::CachedFrame::CachedFrame):
+ * history/CachedFrame.h:
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::didSaveToPageCache):
+ (WebCore::EmptyFrameLoaderClient::didRestoreFromPageCache):
+ * loader/FrameLoaderClient.h:
+
+2010-12-22 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Add setNeedsStyleRecalc for getting canvas contexts that use IOSurfaces
+ This patch also changes USE_IOSURFACE to instead follow USE(IOSURFACE)
+ https://bugs.webkit.org/show_bug.cgi?id=51279
+
+ * html/HTMLCanvasElement.cpp: For IOSurface, use setNeedsStyleRecalc
+ * html/canvas/CanvasRenderingContext2D.cpp: Use new flag
+ * platform/graphics/ImageBuffer.h: Use new flag
+ * platform/graphics/cg/ImageBufferCG.cpp: Use new flag
+
+2010-12-20 Adrienne Walker <enne@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Tile root layer of the compositor.
+ https://bugs.webkit.org/show_bug.cgi?id=49947
+
+ Refactor root layer update and drawing from LayerRendererChromium into
+ LayerTilerChromium. The root layer is now drawn as multiple tiles
+ rather than as one single large texture. Scrollbars are now drawn
+ separately rather than as part of the root layer.
+
+ Test: LayoutTests/compositing/
+
+ * WebCore.gypi:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::repaintContentRectangle):
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::ScrollView):
+ (WebCore::ScrollView::setClipsRepaints):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::clipsRepaints):
+ * platform/graphics/chromium/LayerChromium.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::~LayerRendererChromium):
+ (WebCore::LayerRendererChromium::useShader):
+ (WebCore::LayerRendererChromium::verticalScrollbarRect):
+ (WebCore::LayerRendererChromium::horizontalScrollbarRect):
+ (WebCore::LayerRendererChromium::invalidateRootLayerRect):
+ (WebCore::LayerRendererChromium::updateAndDrawRootLayer):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::setRootLayer):
+ (WebCore::LayerRendererChromium::initializeSharedObjects):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/LayerTilerChromium.cpp: Added.
+ (WebCore::LayerTilerChromium::create):
+ (WebCore::LayerTilerChromium::LayerTilerChromium):
+ (WebCore::LayerTilerChromium::~LayerTilerChromium):
+ (WebCore::LayerTilerChromium::layerRendererContext):
+ (WebCore::LayerTilerChromium::setTileSize):
+ (WebCore::LayerTilerChromium::reset):
+ (WebCore::LayerTilerChromium::createTile):
+ (WebCore::LayerTilerChromium::invalidateTiles):
+ (WebCore::LayerTilerChromium::contentRectToTileIndices):
+ (WebCore::LayerTilerChromium::contentRectToLayerRect):
+ (WebCore::LayerTilerChromium::layerRectToContentRect):
+ (WebCore::LayerTilerChromium::tileIndex):
+ (WebCore::LayerTilerChromium::tileContentRect):
+ (WebCore::LayerTilerChromium::tileLayerRect):
+ (WebCore::LayerTilerChromium::invalidateRect):
+ (WebCore::LayerTilerChromium::invalidateEntireLayer):
+ (WebCore::LayerTilerChromium::update):
+ (WebCore::LayerTilerChromium::setLayerPosition):
+ (WebCore::LayerTilerChromium::draw):
+ (WebCore::LayerTilerChromium::resizeLayer):
+ (WebCore::LayerTilerChromium::growLayerToContain):
+ (WebCore::LayerTilerChromium::Tile::~Tile):
+ (WebCore::LayerTilerChromium::Tile::releaseTextureId):
+ * platform/graphics/chromium/LayerTilerChromium.h: Added.
+ (WebCore::LayerTilerChromium::Tile::Tile):
+ (WebCore::LayerTilerChromium::Tile::textureId):
+ (WebCore::LayerTilerChromium::Tile::dirty):
+ (WebCore::LayerTilerChromium::Tile::clearDirty):
+ (WebCore::LayerTilerChromium::layerRenderer):
+
+2010-12-22 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Editor.h doesn't need to include SelectionController.h
+ https://bugs.webkit.org/show_bug.cgi?id=51441
+
+ Removed #include <Selection.h> from Editor.h.
+ Also extracted WritingDirection.h from EditingStyle.h and renamed SelectionController::EDirection
+ to SelectionDirection and moved its declaration from SelectionController.h to VisibleSelection.h
+
+ * WebCore.exp.in: Signature changes.
+ * WebCore.xcodeproj/project.pbxproj: Added WritingDirection.h
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine): Change due to SelectionDirection.
+ * editing/EditingStyle.h: Removed WritingDirection and included WritingDirection.h
+ * editing/Editor.cpp:
+ (WebCore::Editor::deleteWithDirection): Change due to SelectionDirection.
+ (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto.
+ (WebCore::Editor::markMisspellingsAfterTypingToWord): Ditto.
+ * editing/Editor.h: Removed SelectionController.h; added DocumentMarker.h, Timer.h, VisibleSelection.h
+ and WritingDirection.h; forward declared CSSMutableStyleDeclaration.
+ * editing/EditorCommand.cpp:
+ (WebCore::executeDeleteBackward): Change due to SelectionDirection.
+ (WebCore::executeDeleteBackwardByDecomposingPreviousCharacter): Ditto.
+ (WebCore::executeDeleteForward): Ditto.
+ (WebCore::executeDeleteToBeginningOfLine): Ditto.
+ (WebCore::executeDeleteToBeginningOfParagraph): Ditto.
+ (WebCore::executeDeleteToEndOfLine): Ditto.
+ (WebCore::executeDeleteToEndOfParagraph): Ditto.
+ (WebCore::executeDeleteWordBackward): Ditto.
+ (WebCore::executeDeleteWordForward): Ditto.
+ (WebCore::executeForwardDelete): Ditto.
+ (WebCore::executeMoveBackward): Ditto.
+ (WebCore::executeMoveBackwardAndModifySelection): Ditto.
+ (WebCore::executeMoveDown): Ditto.
+ (WebCore::executeMoveDownAndModifySelection): Ditto.
+ (WebCore::executeMoveForward): Ditto.
+ (WebCore::executeMoveForwardAndModifySelection): Ditto.
+ (WebCore::executeMoveLeft): Ditto.
+ (WebCore::executeMoveLeftAndModifySelection): Ditto.
+ (WebCore::executeMoveRight): Ditto.
+ (WebCore::executeMoveRightAndModifySelection): Ditto.
+ (WebCore::executeMoveToBeginningOfDocument): Ditto.
+ (WebCore::executeMoveToBeginningOfDocumentAndModifySelection): Ditto.
+ (WebCore::executeMoveToBeginningOfLine): Ditto.
+ (WebCore::executeMoveToBeginningOfLineAndModifySelection): Ditto.
+ (WebCore::executeMoveToBeginningOfParagraph): Ditto.
+ (WebCore::executeMoveToBeginningOfParagraphAndModifySelection): Ditto.
+ (WebCore::executeMoveToBeginningOfSentence): Ditto.
+ (WebCore::executeMoveToBeginningOfSentenceAndModifySelection): Ditto.
+ (WebCore::executeMoveToEndOfDocument): Ditto.
+ (WebCore::executeMoveToEndOfDocumentAndModifySelection): Ditto.
+ (WebCore::executeMoveToEndOfSentence): Ditto.
+ (WebCore::executeMoveToEndOfSentenceAndModifySelection): Ditto.
+ (WebCore::executeMoveToEndOfLine): Ditto.
+ (WebCore::executeMoveToEndOfLineAndModifySelection): Ditto.
+ (WebCore::executeMoveToEndOfParagraph): Ditto.
+ (WebCore::executeMoveToEndOfParagraphAndModifySelection): Ditto.
+ (WebCore::executeMoveParagraphBackwardAndModifySelection): Ditto.
+ (WebCore::executeMoveParagraphForwardAndModifySelection): Ditto.
+ (WebCore::executeMoveUp): Ditto.
+ (WebCore::executeMoveUpAndModifySelection): Ditto.
+ (WebCore::executeMoveWordBackward): Ditto.
+ (WebCore::executeMoveWordBackwardAndModifySelection): Ditto.
+ (WebCore::executeMoveWordForward): Ditto.
+ (WebCore::executeMoveWordForwardAndModifySelection): Ditto.
+ (WebCore::executeMoveWordLeft): Ditto.
+ (WebCore::executeMoveWordLeftAndModifySelection): Ditto.
+ (WebCore::executeMoveWordRight): Ditto.
+ (WebCore::executeMoveWordRightAndModifySelection): Ditto.
+ (WebCore::executeMoveToLeftEndOfLine): Ditto.
+ (WebCore::executeMoveToLeftEndOfLineAndModifySelection): Ditto.
+ (WebCore::executeMoveToRightEndOfLine): Ditto.
+ (WebCore::executeMoveToRightEndOfLineAndModifySelection): Ditto.
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::willBeModified): Takes SelectionDirection instead of EDirection.
+ (WebCore::SelectionController::modify): Ditto.
+ * editing/SelectionController.h: Change due to SelectionDirection.
+ * editing/TypingCommand.cpp:
+ (WebCore::TypingCommand::deleteKeyPressed): Ditto.
+ (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
+ * editing/VisibleSelection.h: Added SelectionDirection, renamed and moved from EDirection
+ in SelectionController.h
+ * editing/WritingDirection.h: Added.
+ * page/DOMSelection.cpp:
+ (WebCore::DOMSelection::modify): Change due to SelectionDirection.
+ (WebCore::DOMSelection::deleteFromDocument): Ditto.
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleKeyboardSelectionMovement): Ditto.
+ * page/Frame.h: Includes SelectionController.h.
+
+2010-12-23 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Move V8 to WebCore's implementation of showModalDialog
+ https://bugs.webkit.org/show_bug.cgi?id=51527
+
+ This code is basically verbatim translation from the JavaScriptCore
+ bindings. The only intentional difference is in the world selection
+ for the dialog's frame. I suspect JavaScriptCore's bindings have a
+ subtle bug there.
+
+ In this patch, I also remove a bunch of now-unneeded code in the
+ generic bindings.
+
+ * bindings/generic/BindingDOMWindow.h:
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::DialogHandler::dialogCreated):
+ (WebCore::setUpDialog):
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+ (WebCore::DialogHandler::DialogHandler):
+ (WebCore::DialogHandler::dialogCreated):
+ (WebCore::DialogHandler::returnValue):
+ (WebCore::setUpDialog):
+ (WebCore::V8DOMWindow::showModalDialogCallback):
+ (WebCore::V8DOMWindow::openCallback):
+ * bindings/v8/specialization/V8BindingDOMWindow.h:
+
+2010-12-23 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Joseph Pecoraro.
+
+ Web Inspector: Can't backspace from CSS value to CSS key field
+ https://bugs.webkit.org/show_bug.cgi?id=51476
+
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertyTreeElement.prototype.):
+ (WebInspector.StylePropertyTreeElement.prototype):
+
+2010-12-23 W. James MacLean <wjmaclean@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Add asserts to test for contiguous-pixel Skia bitmaps.
+ https://bugs.webkit.org/show_bug.cgi?id=51186
+
+ No new tests. Behaviour not changed, but need the asserts to detect when assumptions violated.
+
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContentsIfDirty):
+ * platform/graphics/skia/GraphicsContext3DSkia.cpp:
+ (WebCore::GraphicsContext3D::getImageData):
+
+2010-12-23 Lucas De Marchi <lucas.demarchi@profusion.mobi>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Fix check by undefined macro
+ https://bugs.webkit.org/show_bug.cgi?id=51531
+
+ Fix check by undefined macro
+
+ When building EFL port with libsoup, BUILDING_GTK__ is not defined,
+ leading to warnings during compile. We actually have to use an #ifdef
+ instead of an #if.
+
+ No change in functionality so no new tests.
+
+ * platform/network/soup/cache/webkit/soup-cache.h:
+
+2010-12-23 Jonathan Dixon <joth@chromium.org>
+
+ Reviewed by Steve Block.
+
+ TouchEvents does not support multi-touch on a page with multiple touch targets
+ https://bugs.webkit.org/show_bug.cgi?id=51258
+
+ Test: fast/events/touch/multi-touch-grouped-targets.html
+
+ * page/EventHandler.cpp:
+ (WebCore::eventNameForTouchPointState):
+ (WebCore::EventHandler::handleTouchEvent):
+ Redesigned event handler to ensure all event targets involved in a given
+ multitouch event get the appropriate event(s) fired.
+
+ * platform/PlatformTouchPoint.h: Added end-stop marker for State enum.
+
+2010-12-23 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] media/audio-data-url.html fails since r75504
+ https://bugs.webkit.org/show_bug.cgi?id=51525
+
+ Make the GStreamer media-player advertize 3gpp mime-types as
+ supported if the 3gp caps are in the typefind factories.
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::mimeTypeCache):
+
+2010-12-23 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Refactor HTMLInputElement: Move a part of HTMLInputElement::defaultEventHandler()
+ to InputTypes.
+ https://bugs.webkit.org/show_bug.cgi?id=51093
+
+ Move BeforeTextInserted and Wheel event handling, event forwarding to
+ renderers, and the isindex form submission quirk code to InputTypes.
+ Also, change the return types of InputType event handlers from 'bool'
+ to 'void'. We use Event::defaultHandled() to decide whether event
+ handling should be stopped.
+
+ No new tests because this is just a refactoring.
+
+ * html/BaseButtonInputType.cpp: bool->void changes
+ (WebCore::BaseButtonInputType::handleKeydownEvent):
+ (WebCore::BaseButtonInputType::handleKeypressEvent):
+ (WebCore::BaseButtonInputType::handleKeyupEvent):
+ * html/BaseButtonInputType.h: ditto.
+ * html/BaseCheckableInputType.cpp: ditto.
+ (WebCore::BaseCheckableInputType::handleKeydownEvent):
+ (WebCore::BaseCheckableInputType::handleKeypressEvent):
+ * html/BaseCheckableInputType.h: ditto.
+ * html/BaseDateAndTimeInputType.cpp:
+ (WebCore::BaseDateAndTimeInputType::handleKeydownEvent): ditto.
+ (WebCore::BaseDateAndTimeInputType::handleWheelEvent): Just calls handleWheelEventForSpinButton().
+ * html/BaseDateAndTimeInputType.h: bool->void change and handleWhellEvent() addition.
+ * html/CheckboxInputType.cpp: bool->void change
+ (WebCore::CheckboxInputType::handleKeyupEvent):
+ * html/CheckboxInputType.h: ditto.
+ * html/FileInputType.cpp: ditto.
+ (WebCore::FileInputType::handleDOMActivateEvent):
+ * html/FileInputType.h: ditto.
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::defaultEventHandler):
+ - Change return-value handling of InputType event handlers
+ - Move out beforeTextInserted/wheel event handling and isindex form quirk.
+ * html/HTMLInputElement.h:
+ (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent):
+ Added so that InputType can call InputElement::handleBeforeTextInsertedEvent().
+ * html/ImageInputType.cpp: bool->void change
+ (WebCore::ImageInputType::handleDOMActivateEvent):
+ * html/ImageInputType.h: ditto.
+ * html/InputType.cpp: ditto.
+ (WebCore::InputType::handleClickEvent):
+ (WebCore::InputType::handleDOMActivateEvent):
+ (WebCore::InputType::handleKeydownEvent):
+ (WebCore::InputType::handleKeypressEvent):
+ (WebCore::InputType::handleKeyupEvent):
+ (WebCore::InputType::handleBeforeTextInsertedEvent):
+ (WebCore::InputType::handleWheelEvent): Added default implementation.
+ (WebCore::InputType::forwardEvent): ditto.
+ (WebCore::InputType::formForSubmission): ditto.
+ * html/InputType.h:
+ * html/IsIndexInputType.cpp:
+ (WebCore::IsIndexInputType::formForSubmission): Moved from HTMLInputElement.cpp.
+ * html/IsIndexInputType.h:
+ * html/NumberInputType.cpp:
+ (WebCore::isNumberCharacter): Moved from HTMLInputElement.cpp.
+ (WebCore::NumberInputType::handleKeydownEvent): bool->void change.
+ (WebCore::NumberInputType::handleBeforeTextInsertedEvent): Moved from HTMInputElement.cpp.
+ (WebCore::NumberInputType::handleWheelEvent): Added. Just calls handleWheelEventForSpinButton().
+ * html/NumberInputType.h:
+ * html/RadioInputType.cpp: bool->void changes.
+ (WebCore::RadioInputType::handleClickEvent):
+ (WebCore::RadioInputType::handleKeydownEvent):
+ (WebCore::RadioInputType::handleKeyupEvent):
+ * html/RadioInputType.h:
+ * html/RangeInputType.cpp:
+ (WebCore::RangeInputType::handleKeydownEvent): ditto.
+ (WebCore::RangeInputType::forwardEvent): Moved from HTMLInputElement.cpp.
+ * html/RangeInputType.h:
+ * html/ResetInputType.cpp: bool->void change.
+ (WebCore::ResetInputType::handleDOMActivateEvent):
+ * html/ResetInputType.h: ditto.
+ * html/SubmitInputType.cpp: ditto.
+ (WebCore::SubmitInputType::handleDOMActivateEvent):
+ * html/SubmitInputType.h: ditto.
+ * html/TextFieldInputType.cpp:
+ (WebCore::TextFieldInputType::handleKeydownEvent): bool->void change.
+ (WebCore::TextFieldInputType::handleKeydownEventForSpinButton): ditto.
+ (WebCore::TextFieldInputType::handleWheelEventForSpinButton): Moved from HTMLInputElement.cpp.
+ (WebCore::TextFieldInputType::forwardEvent): ditto.
+ * html/TextFieldInputType.h:
+
+2010-12-23 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Joseph Pecoraro.
+
+ Web Inspector: After scrolling new property value and cancelling, removed property remains active in page style
+ https://bugs.webkit.org/show_bug.cgi?id=51390
+
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertyTreeElement.prototype):
+
+2010-12-23 Noel Gordon <noel.gordon@gmail.com>
+
+ Reviewed by Adam Barth.
+
+ [chromium] Reduce canvas.toDataURL("image/png") run-time costs 300%
+ https://bugs.webkit.org/show_bug.cgi?id=51455
+
+ Chromium uses the libpng compression defaults. Good compression results,
+ but at much larger run-time cost compared to other browsers. Chrome is 2
+ times slower than Mozilla 3.6.12 and 3-4 times slower than Safari 5.0.3.
+
+ libpng has supported alternative compression methods for some time, they
+ better meet the dual goals of good compression and run-time cost for the
+ on-line case, and are well-documented. Here use Huffman encoding. It's
+ 2-20% faster than other encodings (Z_RLE, Z_FILTERED) and the compressed
+ size is within 1% of the Safari 5.0.3 result independent of image size.
+
+ No change in behaviour, so no new tests.
+
+ * platform/image-encoders/skia/PNGImageEncoder.cpp:
+ (WebCore::PNGImageEncoder::encode): Apply Huffman image encoding.
+
+2010-12-22 Noel Gordon <noel.gordon@gmail.com>
+
+ Reviewed by Darin Fisher.
+
+ [chromium] Optimize canvas.toDataURL("image/png") unpremultiplication loop
+ https://bugs.webkit.org/show_bug.cgi?id=51321
+
+ Follow on from r73890, unroll the SkUnPreMultiply::PMColorToColor() call for
+ the "image/png" encoder case viz., compute the unpremultiplication in-place.
+ See https://bugs.webkit.org/show_bug.cgi?id=50804 for reference.
+
+ No new tests: canvas.toDataURL() is covered by existing tests.
+
+ * platform/image-encoders/skia/PNGImageEncoder.cpp:
+ (WebCore::preMultipliedBGRAtoRGBA):
+
+2010-12-22 Ariya Hidayat <ariya@sencha.com>
+
+ Reviewed by Simon Fraser.
+
+ Implement skewX() and skewY() for CSSMatrix.
+ https://bugs.webkit.org/show_bug.cgi?id=38335
+
+ * css/WebKitCSSMatrix.cpp:
+ (WebCore::WebKitCSSMatrix::skew): Implemented skewX() and skewY().
+ * css/WebKitCSSMatrix.h: Added skewX() and skewY().
+ * css/WebKitCSSMatrix.idl: Added skewX() and skewY().
+
+2010-12-22 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Support unprefixed box-shadow property
+ https://bugs.webkit.org/show_bug.cgi?id=51448
+
+ Add support for the box-shadow CSS property. We'll currently render this
+ similarly to -webkit-box-shadow, but a later fix will adjust the blur radius
+ handling to match the spec.
+
+ Test: fast/css/box-shadow.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Implement getComputedStyle
+ for box-shadow
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ (WebCore::ShadowParseContext::ShadowParseContext):
+ (WebCore::ShadowParseContext::commitValue):
+ (WebCore::ShadowParseContext::commitLength):
+ (WebCore::ShadowParseContext::commitColor): Support CSSPropertyBoxShadow
+
+ * css/CSSPropertyNames.in: add box-shadow
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty): Add CSSPropertyBoxShadow, and
+ store in the ShadowData if this is -webkit-box-shadow or not. We'll use this
+ to adjust radii later.
+
+ * css/SVGCSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applySVGProperty): Add CSSPropertyBoxShadow.
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::blendFunc):
+ (WebCore::PropertyWrapperShadow::blend):
+ (WebCore::AnimationBase::ensurePropertyMap): Support animations of box-shadow.
+
+ * rendering/style/ShadowData.cpp: Store a flag to say if this is a -webkit-box-shadow.
+ (WebCore::ShadowData::ShadowData):
+ (WebCore::ShadowData::operator==):
+ * rendering/style/ShadowData.h:
+ (WebCore::ShadowData::ShadowData):
+ (WebCore::ShadowData::isWebkitBoxShadow):
+
+2010-12-22 Michael Saboff <msaboff@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ REGRESSION: Can't shadow/overwrite window.constructor
+ (causes TypeError exception)
+ https://bugs.webkit.org/show_bug.cgi?id=48953
+
+ Added code in the javascript code generator to create a setter for
+ a constructor if the new extended attribute ReplaceableConstructor
+ is present for the interface.
+
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * page/DOMWindow.idl:
+
+2010-12-22 Steve Lacey <sjl@chromium.org>
+
+ Reviewed by David Levin.
+
+ Change css for chromium media controls to deal with the timeline
+ not expanding when the current time disappears. This happens when
+ the width of the control drops below 240px.
+
+ This change results in a minor pixel difference - the timebar now
+ aligns better with the time and when the time is not displayed is
+ now perfectly centered. Disabling the affected tests for now
+ and will rebaseline.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51500
+
+ * css/mediaControlsChromium.css:
+ (audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
+ (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
+ (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
+ (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
+
+2010-12-22 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ the shadow direction is negated in canvas context shadowOffsetY.
+ https://bugs.webkit.org/show_bug.cgi?id=25619
+
+ Invert shadow offset Y direction in 0-blur path in FontMac::drawGlyps
+ if we're not transforming shadows (i.e. are rendering in a canvas). Also
+ use CG shadows if there's a non-translate/flip transform applied
+ (shadow offsets are supposed to ignore transforms, but the naive/simple
+ implementation was taking them into account).
+
+ Also does the equivalent changes to FontCGWin.
+
+ Test: fast/canvas/fillText-shadow.html
+
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::shadowsIgnoreTransforms):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/mac/FontMac.mm:
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/win/FontCGWin.cpp:
+ (WebCore::Font::drawGlyphs):
+
+2010-12-22 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r74503.
+ http://trac.webkit.org/changeset/74503
+ https://bugs.webkit.org/show_bug.cgi?id=51513
+
+ breaks chromium mac debug compile (Requested by tonyg-cr on
+ #webkit).
+
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContentsIfDirty):
+ * platform/graphics/skia/GraphicsContext3DSkia.cpp:
+ (WebCore::GraphicsContext3D::getImageData):
+
+2010-12-22 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Replace runtime checks for hyphenation API availability with compile-time checks.
+
+ * platform/text/cf/HyphenationCF.cpp:
+ (WebCore::::createValueForNullKey): Changed to use CFLocaleCopyCurrent() instead of using the
+ search locale, which is empty on Windows. On Mac, this is equivalent to using the search locale.
+ (WebCore::canHyphenate): Added this implementation for when the hyphenation API is not available.
+ It is identical to the implementation in Hyphenation.cpp.
+ (WebCore::lastHyphenLocation): Ditto.
+
+2010-12-22 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Cache snapshots of plug-ins before painting, to avoid script running during painting
+ https://bugs.webkit.org/show_bug.cgi?id=51493
+
+ When FrameView is asked to do a flattening paint (e.g. when Safari snapshots,
+ or when printing), plug-ins which otherwise use the CA rendering model
+ are sent a paint event. Some plug-ins may run script while handling this event,
+ or out of process plug-ins may process queued requests at this time. Running
+ script while inside layout or painting can have bad consequences, because it
+ can result in arbitrary changes to the render tree.
+
+ This patch avoids sending plug-ins paint events inside of painting. Instead,
+ we ask the plug-ins to cache a snapshot before we paint, and then the software
+ paint simply draws that snapshot.
+
+ Requires manual test, because the bug happens when Safari does
+ a page snapshot. It's not possible to tell the Test Netscape Plug-in
+ to paint without laying out, making an automated test impossible.
+
+ * manual-tests/plugins/plugin-paint-causes-layout.html: Added.
+
+ * page/FrameView.h:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::paintContents): Notify all enclosed widgets
+ that a flattening paint is going to happen.
+ (WebCore::FrameView::notifyWidgetsInAllFrames): Utility method
+ that tells the RenderView in all subframes to notify their widgets.
+
+ * platform/Widget.h:
+ (WebCore::Widget::notifyWidget): Generic method that can be used
+ to send messages to widgets. Current messages are just 'before flattening paint'
+ and 'after flattening paint'. Message has no payload.
+
+ * rendering/RenderView.h:
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::getRetainedWidgets):
+ (WebCore::RenderView::releaseWidgets): Factor code out of updateWidgetPositions(),
+ since we use it in two places now.
+
+ (WebCore::RenderView::updateWidgetPositions): Use getRetainedWidgets() etc.
+ (WebCore::RenderView::notifyWidgets): Retain all the widgets, then send
+ them all the message.
+
+ * rendering/RenderWidget.h:
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::notifyWidget): Pass the message to the widget.
+
+2010-12-22 Adrienne Walker <enne@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Fix null pointer deref when restoring a lost WebGL context.
+ https://bugs.webkit.org/show_bug.cgi?id=51494
+
+ No new tests, as context restored events are not currently testable.
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::initializeNewContext):
+ (WebCore::WebGLRenderingContext::restoreContext):
+
+2010-12-22 Adam Bergkvist <adam.bergkvist@ericsson.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Building with Blob support fails again
+ https://bugs.webkit.org/show_bug.cgi?id=51392
+
+ Build fix.
+
+ * GNUmakefile.am:
+
+2010-12-22 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ canHyphenate() always returns true for the default locale
+ https://bugs.webkit.org/show_bug.cgi?id=51506
+
+ No test, since this change only affects performance.
+
+ * platform/text/cf/HyphenationCF.cpp:
+ (WebCore::::createValueForNullKey): Return 0 if hyphenation is not supported for the default locale.
+ (WebCore::::createValueForKey): Removed whitespace.
+
+2010-12-22 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Joseph Pecoraro.
+
+ Web Inspector: script name gets parsed as HTML in Call stack panel
+ https://bugs.webkit.org/show_bug.cgi?id=51468
+
+ * inspector/front-end/Placard.js:
+ (WebInspector.Placard.prototype.set subtitle):
+
+2010-12-22 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Darin Adler.
+
+ MediaPlayer should look for MIME type in data: URL
+ https://bugs.webkit.org/show_bug.cgi?id=51195
+
+ If no MIME type is passed from the media element for a data: URL, try to get it from
+ the URL itself.
+
+ No new tests are possible because the MIME type is just passed to the media engine.
+
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::MediaPlayer::load):
+
+2010-12-22 W. James MacLean <wjmaclean@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Add asserts to test for contiguous-pixel Skia bitmaps.
+ https://bugs.webkit.org/show_bug.cgi?id=51186
+
+ No new tests. Behaviour not changed, but need the asserts to detect when assumptions violated.
+
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContentsIfDirty):
+ * platform/graphics/skia/GraphicsContext3DSkia.cpp:
+ (WebCore::GraphicsContext3D::getImageData):
+
+2010-12-22 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ WAI-ARIA menubar role mapped to AXGroup, should be AXMenuBar
+ https://bugs.webkit.org/show_bug.cgi?id=51488
+
+ Test: platform/mac/accessibility/aria-menubar.html
+
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::createARIARoleMap):
+
+2010-12-22 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ CopyTex{Sub}Image2D check always if the bound fbo's internal color format is compatible
+ https://bugs.webkit.org/show_bug.cgi?id=51423
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::copyTexImage2D): Remove the isGLES2Compliant flag around format compatibility checking.
+ (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
+ (WebCore::WebGLRenderingContext::getBoundFramebufferColorFormat): Helper function to get bound framebuffer's color format; deal with the case of webgl's internal fbo.
+ * html/canvas/WebGLRenderingContext.h:
+
+2010-12-22 Xan Lopez <xlopez@igalia.com>
+
+ Reviewed by Gustavo Noronha.
+
+ [GTK] Compilation fixes with GTK+ 2.91.7
+ https://bugs.webkit.org/show_bug.cgi?id=51487
+
+ * platform/gtk/GtkVersioning.h: do not define GDK_DISPLAY for
+ backwards compatibility, it's now defined again in GTK+ 3.x.
+ * platform/gtk/PasteboardHelper.cpp: do not call GDK functions to
+ initialize global static variables (!). These are called when the
+ .so is loaded, and they now require GType to be initialized and
+ will crash. Initialize them once from the ctor, which is a more
+ common pattern anyway.
+ (WebCore::initGdkAtoms): new method to initialize static variables.
+ (WebCore::PasteboardHelper::PasteboardHelper): call it.
+ * plugins/gtk/PluginViewGtk.cpp: do not include gdkconfig.h when
+ using GTK+ 3.x, since it's no longer installed.
+
+2010-12-22 Dirk Schulze <krit@wbekit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Cleanup SVG code according to the webkit style rules 2
+ https://bugs.webkit.org/show_bug.cgi?id=51461
+
+ Second patch to fix indention and other style issues according to the WebKit style rules in the SVG code.
+
+ No changes of functionality, so no new tests.
+
+ * svg/SVGFEDisplacementMapElement.cpp:
+ (WebCore::SVGFEDisplacementMapElement::stringToChannel):
+ * svg/SVGFEDistantLightElement.h:
+ * svg/SVGFEFuncAElement.h:
+ * svg/SVGFEFuncBElement.h:
+ * svg/SVGFEFuncGElement.h:
+ * svg/SVGFEFuncRElement.h:
+ * svg/SVGFEMergeElement.cpp:
+ (WebCore::SVGFEMergeElement::build):
+ * svg/SVGFEMorphologyElement.cpp:
+ * svg/SVGFEPointLightElement.h:
+ * svg/SVGFESpecularLightingElement.cpp:
+ (WebCore::SVGFESpecularLightingElement::findLights):
+ * svg/SVGFESpotLightElement.h:
+ * svg/SVGFitToViewBox.cpp:
+ (WebCore::SVGFitToViewBox::parseViewBox):
+ (WebCore::SVGFitToViewBox::isKnownAttribute):
+ * svg/SVGFontFaceElement.cpp:
+ (WebCore::cssPropertyIdForSVGAttributeName):
+ * svg/SVGFontFaceElement.h:
+ (WebCore::SVGFontFaceElement::associatedFontElement):
+ * svg/SVGFontFaceNameElement.h:
+ * svg/SVGFontFaceSrcElement.cpp:
+ * svg/SVGFontFaceSrcElement.h:
+ * svg/SVGFontFaceUriElement.h:
+ * svg/SVGForeignObjectElement.h:
+ * svg/SVGGlyphElement.cpp:
+ (WebCore::parseArabicForm):
+ (WebCore::parseOrientation):
+ * svg/SVGGlyphElement.h:
+ (WebCore::SVGGlyphIdentifier::SVGGlyphIdentifier):
+ (WebCore::SVGGlyphIdentifier::inheritedValue):
+ (WebCore::SVGGlyphIdentifier::operator==):
+ (WebCore::SVGGlyphElement::rendererIsNeeded):
+ * svg/SVGGlyphMap.h:
+ (WebCore::GlyphMapNode::GlyphMapNode):
+ (WebCore::GlyphMapNode::create):
+ (WebCore::SVGGlyphMap::SVGGlyphMap):
+ (WebCore::SVGGlyphMap::add):
+ (WebCore::SVGGlyphMap::compareGlyphPriority):
+ (WebCore::SVGGlyphMap::get):
+ (WebCore::SVGGlyphMap::clear):
+ * svg/SVGGradientElement.cpp:
+ * svg/SVGHKernElement.cpp:
+ * svg/SVGHKernElement.h:
+ (WebCore::SVGHKernElement::rendererIsNeeded):
+ * svg/SVGImageElement.h:
+ * svg/SVGImageLoader.cpp:
+ * svg/SVGImageLoader.h:
+ * svg/SVGLangSpace.cpp:
+ (WebCore::SVGLangSpace::parseMappedAttribute):
+ (WebCore::SVGLangSpace::isKnownAttribute):
+ * svg/SVGLangSpace.h:
+ (WebCore::SVGLangSpace::xmllang):
+ * svg/SVGMetadataElement.h:
+ * svg/SVGMissingGlyphElement.h:
+ (WebCore::SVGMissingGlyphElement::rendererIsNeeded):
+ * svg/SVGPaint.cpp:
+ (WebCore::SVGPaint::cssText):
+ * svg/SVGPaint.h:
+ (WebCore::SVGPaint::create):
+ (WebCore::SVGPaint::paintType):
+ (WebCore::SVGPaint::isSVGPaint):
+ * svg/SVGParserUtilities.cpp:
+ * svg/SVGParserUtilities.h:
+ (WebCore::isWhitespace):
+ (WebCore::skipOptionalSpaces):
+ (WebCore::skipOptionalSpacesOrDelimiter):
+ * svg/SVGPathElement.cpp:
+ * svg/SVGPathParserFactory.h:
+ * svg/SVGPathSegList.h:
+
+2010-12-22 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ AX: WAI-ARIA textbox role needs different AXRole, depending on value of aria-multiline property
+ https://bugs.webkit.org/show_bug.cgi?id=51481
+
+ Support aria-multiline and use it to change the role of an ARIA "textbox"
+ from AXTextArea to AXTextField.
+
+ Test: platform/mac/accessibility/aria-multiline.html
+
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::AccessibilityObject::ariaIsMultiline):
+ * accessibility/AccessibilityObject.h:
+ (WebCore::AccessibilityObject::isPasswordField):
+ (WebCore::AccessibilityObject::isTextControl):
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
+ * accessibility/AccessibilityRenderObject.h:
+ * html/HTMLAttributeNames.in:
+
+2010-12-22 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ CSS 2.1 failure: counter-increment-013 fails
+ https://bugs.webkit.org/show_bug.cgi?id=51483
+
+ Clamp the counter-increment property to the valid range of signed
+ integers.
+
+ Test: fast/css/counters/counter-increment-overflow.html
+
+ * css/CSSParser.cpp:
+ (WebCore::clampToSignedInteger):
+ (WebCore::CSSParser::parseCounter):
+
+2010-12-22 Dan Bernstein <mitz@apple.com>
+
+ Rubber-stamped by Mark Rowe.
+
+ Changed WebKitTools to Tools in script build phases.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-12-21 Vangelis Kokkevis <vangelis@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Fixing crash with empty render surfaces.
+ https://bugs.webkit.org/show_bug.cgi?id=51432
+
+ Test: platform/chromium/compositing/empty-render-surface-crasher.html
+
+ * platform/graphics/chromium/RenderSurfaceChromium.cpp:
+ (WebCore::RenderSurfaceChromium::draw):
+
+2010-12-21 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: persist JavaScript breakpoints in frontend settings.
+ https://bugs.webkit.org/show_bug.cgi?id=48434
+
+ * bindings/js/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::setBreakpoint):
+ (WebCore::ScriptDebugServer::removeBreakpoint):
+ * bindings/js/ScriptDebugServer.h:
+ * bindings/v8/DebuggerScript.js:
+ ():
+ * bindings/v8/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::setBreakpoint):
+ (WebCore::ScriptDebugServer::removeBreakpoint):
+ * bindings/v8/ScriptDebugServer.h:
+ * inspector/Inspector.idl:
+ * inspector/InspectorBackend.cpp:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::enableDebuggerFromFrontend):
+ (WebCore::InspectorController::setStickyBreakpoints):
+ (WebCore::InspectorController::restoreStickyBreakpoint):
+ * inspector/InspectorController.h:
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
+ (WebCore::InspectorDebuggerAgent::setStickyBreakpoint):
+ (WebCore::InspectorDebuggerAgent::setBreakpoint):
+ (WebCore::InspectorDebuggerAgent::removeBreakpoint):
+ (WebCore::InspectorDebuggerAgent::restoreBreakpoint):
+ (WebCore::InspectorDebuggerAgent::clearForPageNavigation):
+ (WebCore::InspectorDebuggerAgent::didParseSource):
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/front-end/Breakpoint.js:
+ (WebInspector.Breakpoint):
+ (WebInspector.Breakpoint.prototype.remove):
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager):
+ (WebInspector.DOMBreakpoint.prototype._serializeToJSON):
+ (WebInspector.JavaScriptBreakpoint):
+ (WebInspector.XHRBreakpoint.prototype._serializeToJSON):
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._debuggerPaused):
+ * inspector/front-end/SourceFrame.js:
+
+2010-12-20 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51354
+ Don't block rendering and script execution on deferred stylesheets
+
+ - Don't add low priority stylesheets to the document pending sheet count.
+ - Resolve media attribute fully for the link element stylesheet load.
+
+ Test: http/tests/local/stylesheet-and-script-load-order-media-print.html
+
+ * html/HTMLLinkElement.cpp:
+ (WebCore::HTMLLinkElement::HTMLLinkElement):
+ (WebCore::HTMLLinkElement::~HTMLLinkElement):
+ (WebCore::HTMLLinkElement::setDisabledState):
+ (WebCore::HTMLLinkElement::process):
+ (WebCore::HTMLLinkElement::sheetLoaded):
+ (WebCore::HTMLLinkElement::addPendingSheet):
+ (WebCore::HTMLLinkElement::removePendingSheet):
+ * html/HTMLLinkElement.h:
+
+2010-12-22 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r74473.
+ http://trac.webkit.org/changeset/74473
+ https://bugs.webkit.org/show_bug.cgi?id=51463
+
+ broke compilation on leopard intel release (Requested by
+ podivilov on #webkit).
+
+ * bindings/js/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::setBreakpoint):
+ (WebCore::ScriptDebugServer::removeBreakpoint):
+ * bindings/js/ScriptDebugServer.h:
+ * bindings/v8/DebuggerScript.js:
+ ():
+ * bindings/v8/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::setBreakpoint):
+ (WebCore::ScriptDebugServer::removeBreakpoint):
+ * bindings/v8/ScriptDebugServer.h:
+ * inspector/Inspector.idl:
+ * inspector/InspectorBackend.cpp:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::enableDebuggerFromFrontend):
+ (WebCore::InspectorController::setStickyBreakpoints):
+ (WebCore::InspectorController::restoreStickyBreakpoint):
+ (WebCore::InspectorController::breakpointsSettingKey):
+ (WebCore::InspectorController::loadBreakpoints):
+ (WebCore::InspectorController::saveBreakpoints):
+ * inspector/InspectorController.h:
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::formatBreakpointId):
+ (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
+ (WebCore::InspectorDebuggerAgent::setBreakpoint):
+ (WebCore::InspectorDebuggerAgent::removeBreakpoint):
+ (WebCore::InspectorDebuggerAgent::clearForPageNavigation):
+ (WebCore::InspectorDebuggerAgent::md5Base16):
+ (WebCore::InspectorDebuggerAgent::loadBreakpoints):
+ (WebCore::InspectorDebuggerAgent::saveBreakpoints):
+ (WebCore::InspectorDebuggerAgent::didParseSource):
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/front-end/Breakpoint.js:
+ (WebInspector.Breakpoint):
+ (WebInspector.Breakpoint.jsBreakpointId):
+ (WebInspector.Breakpoint.prototype.set enabled):
+ (WebInspector.Breakpoint.prototype.get id):
+ (WebInspector.Breakpoint.prototype.set condition):
+ (WebInspector.Breakpoint.prototype.remove):
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager):
+ (WebInspector.BreakpointManager.prototype._createDOMBreakpoint):
+ (WebInspector.BreakpointManager.prototype._createEventListenerBreakpoint):
+ (WebInspector.BreakpointManager.prototype._createXHRBreakpoint):
+ (WebInspector.BreakpointManager.prototype._setNativeBreakpoint):
+ (WebInspector.BreakpointManager.prototype._setNativeBreakpointEnabled):
+ (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint):
+ (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
+ (WebInspector.BreakpointManager.prototype._projectChanged):
+ (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints):
+ (WebInspector.BreakpointManager.prototype._saveBreakpoints):
+ (WebInspector.BreakpointManager.prototype._validateBreakpoints):
+ (WebInspector.DOMBreakpoint.prototype._serializeToJSON):
+ (WebInspector.EventListenerBreakpoint.prototype._serializeToJSON):
+ (WebInspector.XHRBreakpoint.prototype._serializeToJSON):
+ (WebInspector.NativeBreakpointView.prototype.set enabled):
+ (WebInspector.NativeBreakpointView.prototype.remove):
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel):
+ (WebInspector.DebuggerModel.prototype.setOneTimeBreakpoint):
+ (WebInspector.DebuggerModel.prototype.removeOneTimeBreakpoint):
+ (WebInspector.DebuggerModel.prototype.setBreakpoint):
+ (WebInspector.DebuggerModel.prototype.findBreakpoint):
+ (WebInspector.DebuggerModel.prototype.reset):
+ (WebInspector.DebuggerModel.prototype._setBreakpoint):
+ (WebInspector.DebuggerModel.prototype._breakpointRemoved):
+ (WebInspector.DebuggerModel.prototype._setBreakpointOnBackend):
+ (WebInspector.DebuggerModel.prototype.breakpointRestored):
+ (WebInspector.DebuggerModel.prototype.pausedScript):
+ (WebInspector.DebuggerModel.prototype.resumedScript):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.continueToLine):
+ (WebInspector.ScriptsPanel.prototype._debuggerPaused):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint.didEditBreakpointCondition):
+ (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint):
+ (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition.didEditBreakpointCondition):
+ (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition):
+ (WebInspector.SourceFrame.prototype._contextMenu):
+ (WebInspector.SourceFrame.prototype._mouseDown):
+ (WebInspector.SourceFrame.prototype._continueToLine):
+ (WebInspector.SourceFrame.prototype._setBreakpoint):
+
+2010-12-21 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: persist JavaScript breakpoints in frontend settings.
+ https://bugs.webkit.org/show_bug.cgi?id=48434
+
+ * bindings/js/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::setBreakpoint):
+ (WebCore::ScriptDebugServer::removeBreakpoint):
+ * bindings/js/ScriptDebugServer.h:
+ * bindings/v8/DebuggerScript.js:
+ ():
+ * bindings/v8/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::setBreakpoint):
+ (WebCore::ScriptDebugServer::removeBreakpoint):
+ * bindings/v8/ScriptDebugServer.h:
+ * inspector/Inspector.idl:
+ * inspector/InspectorBackend.cpp:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::enableDebuggerFromFrontend):
+ (WebCore::InspectorController::setStickyBreakpoints):
+ (WebCore::InspectorController::restoreStickyBreakpoint):
+ * inspector/InspectorController.h:
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
+ (WebCore::InspectorDebuggerAgent::setStickyBreakpoint):
+ (WebCore::InspectorDebuggerAgent::setBreakpoint):
+ (WebCore::InspectorDebuggerAgent::removeBreakpoint):
+ (WebCore::InspectorDebuggerAgent::restoreBreakpoint):
+ (WebCore::InspectorDebuggerAgent::clearForPageNavigation):
+ (WebCore::InspectorDebuggerAgent::didParseSource):
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/front-end/Breakpoint.js:
+ (WebInspector.Breakpoint):
+ (WebInspector.Breakpoint.prototype.remove):
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager):
+ (WebInspector.DOMBreakpoint.prototype._serializeToJSON):
+ (WebInspector.JavaScriptBreakpoint):
+ (WebInspector.XHRBreakpoint.prototype._serializeToJSON):
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._debuggerPaused):
+ * inspector/front-end/SourceFrame.js:
+
+2010-12-22 Dirk Schulze <krit@wbekit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Cleanup SVG code according to the webkit style rules 1
+ https://bugs.webkit.org/show_bug.cgi?id=51411
+
+ First patch to fix indention and other style issues according to the WebKit style rules in the SVG code.
+
+ No change of functionality.
+
+ * svg/ColorDistance.cpp:
+ (WebCore::ColorDistance::isZero):
+ * svg/ColorDistance.h:
+ * svg/ElementTimeControl.h:
+ (WebCore::ElementTimeControl::~ElementTimeControl):
+ * svg/LinearGradientAttributes.h:
+ (WebCore::LinearGradientAttributes::LinearGradientAttributes):
+ (WebCore::LinearGradientAttributes::x1):
+ (WebCore::LinearGradientAttributes::y1):
+ (WebCore::LinearGradientAttributes::x2):
+ (WebCore::LinearGradientAttributes::y2):
+ (WebCore::LinearGradientAttributes::setX1):
+ (WebCore::LinearGradientAttributes::setY1):
+ (WebCore::LinearGradientAttributes::setX2):
+ (WebCore::LinearGradientAttributes::setY2):
+ (WebCore::LinearGradientAttributes::hasX1):
+ (WebCore::LinearGradientAttributes::hasY1):
+ (WebCore::LinearGradientAttributes::hasX2):
+ (WebCore::LinearGradientAttributes::hasY2):
+ * svg/RadialGradientAttributes.h:
+ (WebCore::RadialGradientAttributes::RadialGradientAttributes):
+ (WebCore::RadialGradientAttributes::cx):
+ (WebCore::RadialGradientAttributes::cy):
+ (WebCore::RadialGradientAttributes::r):
+ (WebCore::RadialGradientAttributes::fx):
+ (WebCore::RadialGradientAttributes::fy):
+ (WebCore::RadialGradientAttributes::setCx):
+ (WebCore::RadialGradientAttributes::setCy):
+ (WebCore::RadialGradientAttributes::setR):
+ (WebCore::RadialGradientAttributes::setFx):
+ (WebCore::RadialGradientAttributes::setFy):
+ (WebCore::RadialGradientAttributes::hasCx):
+ (WebCore::RadialGradientAttributes::hasCy):
+ (WebCore::RadialGradientAttributes::hasR):
+ (WebCore::RadialGradientAttributes::hasFx):
+ (WebCore::RadialGradientAttributes::hasFy):
+ * svg/SVGAngle.cpp:
+ * svg/SVGAnimateColorElement.h:
+ * svg/SVGAnimateElement.cpp:
+ (WebCore::SVGAnimateElement::calculateAnimatedValue):
+ (WebCore::SVGAnimateElement::calculateDistance):
+ * svg/SVGAnimateElement.h:
+ * svg/SVGAnimateMotionElement.cpp:
+ * svg/SVGAnimateMotionElement.h:
+ * svg/SVGAnimatedNumber.h:
+ * svg/SVGAnimationElement.cpp:
+ (WebCore::parseKeyTimes):
+ (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
+ (WebCore::SVGAnimationElement::updateAnimation):
+ * svg/SVGClipPathElement.cpp:
+ (WebCore::SVGClipPathElement::svgAttributeChanged):
+ * svg/SVGColor.h:
+ (WebCore::SVGColor::create):
+ (WebCore::SVGColor::createCurrentColor):
+ (WebCore::SVGColor::colorType):
+ (WebCore::SVGColor::setRGBColor):
+ (WebCore::SVGColor::color):
+ (WebCore::SVGColor::isSVGColor):
+ * svg/SVGCursorElement.cpp:
+ (WebCore::SVGCursorElement::svgAttributeChanged):
+ * svg/SVGCursorElement.h:
+ * svg/SVGDescElement.h:
+ (WebCore::SVGDescElement::rendererIsNeeded):
+ * svg/SVGDocument.cpp:
+ * svg/SVGDocument.h:
+ (WebCore::SVGDocument::create):
+ (WebCore::SVGDocument::isSVGDocument):
+ * svg/SVGElement.h:
+ (WebCore::SVGElement::isStyled):
+ (WebCore::SVGElement::isStyledTransformable):
+ (WebCore::SVGElement::isStyledLocatable):
+ (WebCore::SVGElement::isSVG):
+ (WebCore::SVGElement::isFilterEffect):
+ (WebCore::SVGElement::isGradientStop):
+ (WebCore::SVGElement::isTextContent):
+ (WebCore::SVGElement::isValid):
+ (WebCore::SVGElement::svgAttributeChanged):
+ (WebCore::SVGElement::synchronizeProperty):
+ (WebCore::SVGElement::supplementalTransform):
+ (WebCore::SVGElement::invalidateSVGAttributes):
+ (WebCore::SVGElement::rendererIsNeeded):
+ (WebCore::SVGElement::needsPendingResourceHandling):
+ (WebCore::SVGElement::buildPendingResource):
+ * svg/SVGElementInstance.h:
+ (WebCore::SVGElementInstance::create):
+ (WebCore::SVGElementInstance::correspondingElement):
+ (WebCore::SVGElementInstance::correspondingUseElement):
+ (WebCore::SVGElementInstance::shadowTreeElement):
+ (WebCore::SVGElementInstance::parentNode):
+ (WebCore::SVGElementInstance::previousSibling):
+ (WebCore::SVGElementInstance::nextSibling):
+ (WebCore::SVGElementInstance::firstChild):
+ (WebCore::SVGElementInstance::lastChild):
+ (WebCore::SVGElementInstance::ownerDocument):
+ (WebCore::SVGElementInstance::toNode):
+ (WebCore::SVGElementInstance::toSVGElementInstance):
+ (WebCore::SVGElementInstance::hasChildNodes):
+ (WebCore::SVGElementInstance::setFirstChild):
+ (WebCore::SVGElementInstance::setLastChild):
+ (WebCore::SVGElementInstance::setNextSibling):
+ (WebCore::SVGElementInstance::setPreviousSibling):
+ (WebCore::SVGElementInstance::refEventTarget):
+ (WebCore::SVGElementInstance::derefEventTarget):
+ * svg/SVGElementInstanceList.h:
+ (WebCore::SVGElementInstanceList::create):
+ * svg/SVGException.h:
+ (WebCore::SVGException::create):
+ (WebCore::SVGException::SVGException):
+ * svg/SVGFEColorMatrixElement.cpp:
+ (WebCore::SVGFEColorMatrixElement::parseMappedAttribute):
+ * svg/SVGFEComponentTransferElement.cpp:
+ (WebCore::SVGFEComponentTransferElement::build):
+ * svg/SVGFEDiffuseLightingElement.cpp:
+ (WebCore::SVGFEDiffuseLightingElement::findLights):
+ * svg/SVGFont.cpp:
+ (WebCore::convertEmUnitToPixel):
+ * svg/SVGUseElement.cpp:
+ (WebCore::isDirectReference):
+
+2010-12-22 Dai Mikurube <dmikurube@google.com>
+
+ Reviewed by Kent Tamura.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51289
+ Initial state of checkValidity() and :invalid are incorrect with <select required>
+
+ * html/HTMLSelectElement.cpp:
+ (WebCore::HTMLSelectElement::childrenChanged): setNeedsValidityCheck() after <select>'s children change.
+
+2010-12-22 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Joseph Pecoraro.
+
+ Web Inspector: Styles pane fails to display properties from a broken CSS rule correctly
+ https://bugs.webkit.org/show_bug.cgi?id=51405
+
+ Invoke markPropertyStart() after the parser has restored after an error.
+
+ * css/CSSGrammar.y:
+
+2010-12-22 Dai Mikurube <dmikurube@google.com>
+
+ Reviewed by Kent Tamura.
+
+ Assertion failure with <select multiple required>
+ https://bugs.webkit.org/show_bug.cgi?id=51260
+
+ Test: fast/css/pseudo-valid-select-click.html
+
+ * dom/SelectElement.cpp: updateValidity() after selecting some options of ListBox-typed <select> elements to update valid() cache.
+ (WebCore::SelectElement::updateListBoxSelection):
+
+2010-12-21 Darin Adler <darin@apple.com>
+
+ Unreviewed correction to unreviewed build fix for r74447.
+
+ Inappropriate code was left behind in sourceURI function for non-Dashboard platforms.
+
+ * html/HTMLImageLoader.cpp:
+ (WebCore::HTMLImageLoader::sourceURI): Change the logic so all the bug-workaround
+ logic is inside the #ifdef.
+
+2010-12-21 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Include the shadow color space as part of the GraphicsContext state
+ https://bugs.webkit.org/show_bug.cgi?id=51420
+
+ Include the ColorSpace for the shadow color as part of the graphics
+ state. This will be used later for a shadow implementation that
+ does not rely on platform shadow code.
+
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::setShadow):
+ (WebCore::GraphicsContext::clearShadow):
+ (WebCore::GraphicsContext::getShadow):
+ * platform/graphics/GraphicsContext.h:
+ (WebCore::GraphicsContextState::GraphicsContextState):
+ * platform/graphics/chromium/FontChromiumWin.cpp:
+ (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
+ (WebCore::Font::drawComplexText):
+ * platform/graphics/mac/FontMac.mm:
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/skia/SkiaFontWin.cpp:
+ (WebCore::windowsCanHandleDrawTextShadow):
+ * platform/graphics/win/FontCGWin.cpp:
+ (WebCore::drawGDIGlyphs):
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/wince/GraphicsContextWinCE.cpp:
+ (WebCore::GraphicsContext::fillRoundedRect):
+ (WebCore::GraphicsContext::drawText):
+
+2010-12-21 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ <rdar://problem/8668230> REGRESSION (r71884): Returning alternate requests from willSendRequest can prevent other requests from ever being sent
+ https://bugs.webkit.org/show_bug.cgi?id=51413
+
+ 71884 was wrong in moving willSendRequest to ResourceLoader::start(). It’s wrong to do all the
+ scheduling, which is host-dependent, before calling willSendRequest, because the latter can
+ change the host.
+
+ * loader/NetscapePlugInStreamLoader.cpp:
+ (WebCore::NetscapePlugInStreamLoader::create): Check the return value from ResourceLoader::init()
+ and return 0 if it is false.
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::init): Made this function return a boolean. Moved the call to willSendRequest()
+ from start() into here. Return false if willSendRequest() canceled the request.
+ (WebCore::ResourceLoader::start): Moved the call to willSendRequest() from here to init().
+ * loader/ResourceLoader.h:
+ * loader/SubresourceLoader.cpp:
+ (WebCore::SubresourceLoader::create): Check the return value from ResourceLoader::init()
+ and return 0 if it is false.
+
+2010-12-21 Benjamin Kalman <kalman@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Shift-End does not select to the end of the line
+ https://bugs.webkit.org/show_bug.cgi?id=50610
+
+ Let the VisiblePosition affinity for end of line selection to be set by
+ visibleEnd/visibleStart rather than using end/start and always using UPSTREAM.
+
+ Test: editing/selection/extend-to-line-boundary.html
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::positionForPlatform): Use visibleStart/visibleEnd rather than
+ start/end.
+ (WebCore::SelectionController::modifyExtendingForward): Don't explicitly use UPSTREAM affinity.
+
+2010-12-21 Jan Erik Hanssen <jhanssen@sencha.com>
+
+ Reviewed by Simon Fraser.
+
+ matrix3d() must take the zoom factor into account
+ https://bugs.webkit.org/show_bug.cgi?id=51408
+
+ Test: transforms/3d/general/matrix-with-zoom-3d.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::createTransformOperations):
+
+2010-12-21 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Move V8 to common implementation of window.open
+ https://bugs.webkit.org/show_bug.cgi?id=51385
+
+ I also changed some function names to match WebKit style. There's a
+ bunch of code we can remove in the generic bindings now. I'll do that
+ in the next patch.
+
+ * bindings/generic/BindingDOMWindow.h:
+ (WebCore::::open):
+ * bindings/generic/BindingFrame.h:
+ (WebCore::::navigateIfAllowed):
+ * bindings/generic/BindingSecurity.h:
+ (WebCore::::canAccessWindow):
+ (WebCore::::allowPopUp):
+ (WebCore::::shouldAllowNavigation):
+ * bindings/generic/GenericBinding.h:
+ (WebCore::completeURL):
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::toLexicalFrame):
+ (WebCore::toDynamicFrame):
+ * bindings/js/specialization/JSBindingState.cpp:
+ (WebCore::::activeFrame):
+ (WebCore::::firstFrame):
+ * bindings/js/specialization/JSBindingState.h:
+ * bindings/v8/V8Utilities.cpp:
+ (WebCore::callingOrEnteredFrame):
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+ (WebCore::V8DOMWindow::locationAccessorSetter):
+ (WebCore::V8DOMWindow::openCallback):
+ * bindings/v8/specialization/V8BindingState.cpp:
+ (WebCore::::activeWindow):
+ (WebCore::::firstWindow):
+ (WebCore::::activeFrame):
+ (WebCore::::firstFrame):
+ * bindings/v8/specialization/V8BindingState.h:
+
+2010-12-21 Ryosuke Niwa <rniwa@webkit.org>
+
+ Unreviewed build fix for r74447.
+
+ Call usesDashboardBackwardCompatibilityMode() only if DASHBOARD_SUPPORT is enabled.
+
+ * html/HTMLImageLoader.cpp:
+ (WebCore::HTMLImageLoader::sourceURI):
+
+2010-12-21 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/8725702> REGRESSION (r68854): Broken image icon seen in the Address Book Dashboard widget
+
+ Test: platform/mac/fast/dom/HTMLImageElement/dashboard-src-quirk.html
+
+ The Address Book widget sets the src attribute of an img element to a string that looks like a CSS
+ URL value. This used to work prior to r68854, because some DOM attribute parsing functions were using
+ the wrong function to parse URL attributes (last named deprecatedParseURL).
+
+ * html/HTMLImageLoader.cpp:
+ (WebCore::HTMLImageLoader::sourceURI): In Dashboard, check if the src attribute begins with 'url("'
+ and ends with '")', and if so, strip those away.
+
+2010-12-21 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ CharacterData needs cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=51426
+
+ Extracted CharacterData::setDataAndNotify and CharacterData::updateRenderer.
+
+ * dom/CharacterData.cpp:
+ (WebCore::CharacterData::setData): Calls setDataAndUpdate.
+ (WebCore::CharacterData::parserAppendData): Ditto.
+ (WebCore::CharacterData::appendData): Ditto.
+ (WebCore::CharacterData::insertData): Ditto.
+ (WebCore::CharacterData::deleteData): Ditto.
+ (WebCore::CharacterData::replaceData): Ditto.
+ (WebCore::CharacterData::setDataAndUpdate): Added.
+ (WebCore::CharacterData::updateRenderer): Added.
+ (WebCore::CharacterData::dispatchModifiedEvent): Renamed prevValue to oldData.
+ * dom/CharacterData.h:
+
+2010-12-21 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r74420.
+ http://trac.webkit.org/changeset/74420
+ https://bugs.webkit.org/show_bug.cgi?id=51436
+
+ causes editing/pasteboard/paste-noscript-xhtml.xhtml to crash
+ (Requested by tonyg-cr on #webkit).
+
+ * dom/DocumentParser.cpp:
+ * dom/DocumentParser.h:
+ * html/parser/HTMLDocumentParser.cpp:
+ * html/parser/HTMLDocumentParser.h:
+ * html/parser/HTMLParserScheduler.cpp:
+ (WebCore::HTMLParserScheduler::HTMLParserScheduler):
+ * html/parser/HTMLParserScheduler.h:
+ (WebCore::HTMLParserScheduler::isScheduledForResume):
+ * page/PageGroupLoadDeferrer.cpp:
+ (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
+ (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
+
+2010-12-21 Kenneth Russell <kbr@google.com>
+
+ Reviewed by Darin Fisher.
+
+ Enable extensions used in accelerated 2D canvas implementation
+ https://bugs.webkit.org/show_bug.cgi?id=51433
+
+ Call Extensions3D::ensureEnabled() for all supported extensions
+ the accelerated 2D Canvas implementation uses. Tested with a few
+ layout tests previously failing when run in Chromium due to OpenGL
+ INVALID_ENUM and other errors.
+
+ * platform/graphics/gpu/DrawingBuffer.cpp:
+ (WebCore::DrawingBuffer::create):
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
+ (WebCore::SharedGraphicsContext3D::supportsBGRA):
+ * platform/graphics/gpu/SharedGraphicsContext3D.h:
+
+2010-12-21 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ WebGLRenderingContext needs to zero textures and renderbuffers
+ https://bugs.webkit.org/show_bug.cgi?id=49355
+
+ Test: fast/canvas/webgl/uninitialized-test.html
+
+ * html/canvas/WebGLFramebuffer.cpp:
+ (WebCore::WebGLFramebuffer::onAccess): Use a parameter to decide if renderbuffer initialization is needed.
+ (WebCore::WebGLFramebuffer::initializeRenderbuffers): Don't return false if color buffer doesn't exist.
+ * html/canvas/WebGLFramebuffer.h: Modify onAccess with an added parameter.
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::clear): Call onAccess with an added parameter.
+ (WebCore::WebGLRenderingContext::copyTexImage2D): Ditto.
+ (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
+ (WebCore::WebGLRenderingContext::drawArrays): Ditto.
+ (WebCore::WebGLRenderingContext::drawElements): Ditto.
+ (WebCore::WebGLRenderingContext::readPixels): Ditto.
+ (WebCore::WebGLRenderingContext::texImage2DBase): Create buffer data of 0s if input is null to initialize textures.
+ * platform/graphics/GraphicsContext3D.cpp:
+ (WebCore::GraphicsContext3D::texImage2DResourceSafe): Helper function that initialize all pixels to 0.
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
+ (WebCore::Canvas2DLayerChromium::updateContentsIfDirty): Use texImage2DResourceSafe.
+ * platform/graphics/chromium/DrawingBufferChromium.cpp:
+ (WebCore::generateColorTexture): Ditto.
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::prepareToDrawLayers): Ditto.
+ * platform/graphics/chromium/TextureManager.cpp:
+ (WebCore::TextureManager::requestTexture): Ditto.
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::allocateTexture): Ditto.
+ * platform/graphics/gpu/DrawingBuffer.cpp:
+ (WebCore::DrawingBuffer::reset): Use texImage2DResourceSafe; also, only initialize depth/stencil buffer.
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::texImage2D): Use texImage2DResourceSafe.
+ * platform/graphics/gpu/Texture.cpp:
+ (WebCore::Texture::create): Ditto.
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+ (WebCore::GraphicsContext3D::texImage2D): Generate an INVALID_VALUE if pixels==null is passed in.
+
+2010-12-21 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioBusChromium for decoding audio file data
+ https://bugs.webkit.org/show_bug.cgi?id=51430
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/chromium: Added.
+ * platform/audio/chromium/AudioBusChromium.cpp: Added.
+ (WebCore::createBusFromInMemoryAudioFile):
+
+2010-12-21 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add web audio spatialization resource files
+ https://bugs.webkit.org/show_bug.cgi?id=50998
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/HRTFElevation.cpp:
+ (WebCore::HRTFElevation::calculateKernelsForAzimuthElevation):
+ * platform/audio/mac/AudioBusMac.mm:
+ (WebCore::AudioBus::loadPlatformResource):
+ * platform/audio/resources: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T000_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T000_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T000_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T000_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T000_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T000_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T000_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T000_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T000_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T000_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T015_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T015_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T015_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T015_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T015_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T015_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T015_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T015_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T015_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T015_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T030_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T030_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T030_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T030_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T030_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T030_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T030_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T030_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T030_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T030_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T045_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T045_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T045_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T045_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T045_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T045_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T045_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T045_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T045_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T045_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T060_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T060_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T060_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T060_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T060_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T060_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T060_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T060_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T060_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T060_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T075_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T075_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T075_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T075_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T075_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T075_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T075_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T075_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T075_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T075_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T090_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T090_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T090_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T090_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T090_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T090_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T090_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T090_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T090_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T090_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T105_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T105_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T105_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T105_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T105_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T105_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T105_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T105_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T105_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T105_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T120_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T120_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T120_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T120_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T120_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T120_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T120_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T120_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T120_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T120_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T135_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T135_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T135_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T135_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T135_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T135_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T135_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T135_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T135_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T135_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T150_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T150_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T150_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T150_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T150_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T150_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T150_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T150_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T150_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T150_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T165_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T165_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T165_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T165_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T165_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T165_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T165_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T165_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T165_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T165_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T180_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T180_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T180_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T180_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T180_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T180_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T180_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T180_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T180_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T180_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T195_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T195_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T195_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T195_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T195_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T195_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T195_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T195_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T195_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T195_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T210_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T210_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T210_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T210_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T210_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T210_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T210_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T210_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T210_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T210_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T225_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T225_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T225_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T225_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T225_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T225_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T225_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T225_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T225_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T225_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T240_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T240_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T240_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T240_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T240_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T240_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T240_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T240_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T240_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T240_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T255_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T255_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T255_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T255_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T255_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T255_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T255_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T255_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T255_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T255_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T270_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T270_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T270_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T270_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T270_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T270_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T270_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T270_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T270_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T270_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T285_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T285_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T285_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T285_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T285_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T285_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T285_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T285_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T285_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T285_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T300_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T300_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T300_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T300_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T300_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T300_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T300_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T300_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T300_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T300_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T315_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T315_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T315_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T315_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T315_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T315_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T315_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T315_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T315_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T315_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T330_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T330_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T330_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T330_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T330_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T330_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T330_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T330_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T330_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T330_P345.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T345_P000.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T345_P015.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T345_P030.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T345_P045.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T345_P060.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T345_P075.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T345_P090.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T345_P315.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T345_P330.wav: Added.
+ * platform/audio/resources/IRC_Composite_C_R0195_T345_P345.wav: Added.
+
+2010-12-21 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Gavin Barraclough & Oliver Hunt.
+
+ Added PageAllocationAligned, a cross-platform abstraction for memory allocations with arbitrary alignment requirements
+ https://bugs.webkit.org/show_bug.cgi?id=51359
+
+ * ForwardingHeaders/wtf/PageAllocationAligned.h: Added.
+
+2010-12-21 Ariya Hidayat <ariya@sencha.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=49774
+ Need to scale translation values in matrix() by the zoom factor.
+
+ Test: fast/transforms/matrix-with-zoom.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::createTransformOperations):
+
+2010-12-21 Jian Li <jianli@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Fix bug 51366: REGRESSION (r66452): Form data no longer contains
+ 'Content-Type' header for files with unrecognized extensions
+ https://bugs.webkit.org/show_bug.cgi?id=51366
+
+ Test: http/tests/local/formdata/form-data-with-unknown-file-extension.html
+
+ * platform/network/FormData.cpp:
+ (WebCore::FormData::appendKeyValuePairItems):
+
+2010-12-21 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Mac WebKit delivers an extra didCommit when loading web archives
+ https://bugs.webkit.org/show_bug.cgi?id=51419
+
+ Could not find a simple way to test this in WebKit1, but in WebKit2
+ it leads to an immediate failure when loading a web archive. Tested
+ that making the Mac share the same code path with other platforms
+ works fine in WebKit1.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::finishedLoadingDocument): Removed special case for
+ the Mac platform. Also removed the call to isArchiveMimeType since we
+ get a 0 from ArchiveFactory::create in that case.
+
+ * loader/archive/ArchiveFactory.cpp:
+ (WebCore::ArchiveFactory::isArchiveMimeType): Hardened slightly by
+ adding a special case for null and empty strings, since hash tables can't
+ handle null strings.
+ (WebCore::ArchiveFactory::create): Ditto.
+
+2010-12-21 Yong Li <yoli@rim.com>
+
+ Reviewed by Adam Barth.
+
+ Suspend HTMLParserScheduler when page load is deferred to
+ avoid potential JS re-entrancy. Otherwise, when JS execution is triggered
+ from an external script or by events, and is blocked by a modal dialog,
+ WebKit can parse more HTML source and also start another JS execution.
+
+ https://bugs.webkit.org/show_bug.cgi?id=48077
+
+ Test case: WebCore/manual-tests/bugzilla-48077.html.
+
+ * dom/DocumentParser.cpp:
+ (WebCore::DocumentParser::suspendParsing):
+ (WebCore::DocumentParser::resumeParsing):
+ * dom/DocumentParser.h:
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::suspendParsing):
+ (WebCore::HTMLDocumentParser::resumeParsing):
+ * html/parser/HTMLParserScheduler.cpp:
+ (WebCore::HTMLParserScheduler::HTMLParserScheduler):
+ (WebCore::HTMLParserScheduler::suspend):
+ (WebCore::HTMLParserScheduler::resume):
+ * html/parser/HTMLParserScheduler.h:
+ (WebCore::HTMLParserScheduler::isScheduledForResume):
+ * page/PageGroupLoadDeferrer.cpp:
+ (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
+ (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
+
+2010-12-21 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by John Sullivan.
+
+ Clicking missing plug-in text does not show a sheet
+ https://bugs.webkit.org/show_bug.cgi?id=51403
+
+ * WebCore.exp.in:
+ Export symbols needed by WebKit2.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ Make HTMLPlugInImageElement.h a private header.
+
+ * html/HTMLPlugInImageElement.h:
+ (WebCore::HTMLPlugInImageElement::serviceType):
+ (WebCore::HTMLPlugInImageElement::url):
+ Make these member functions public.
+
+2010-12-21 Andras Becsi <abecsi@webkit.org>
+
+ Unreviewed build fix.
+
+ [Qt] Fix the build with USE_GSTREAMER=1
+
+ No new tests needed.
+
+ * WebCore.pro: remove nonexisting DataSourceGStreamer sources.
+
+2010-12-21 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] QtWebKit doesn't build in debug on Windows
+ https://bugs.webkit.org/show_bug.cgi?id=41930
+
+ Disable incremental linking in windows 32bit debug version as webkit is so
+ big it fails to link incremental.
+
+ Build fix. No new test cases added.
+
+ * WebCore.pro:
+
+2010-12-21 Dominic Cooney <dominicc@google.com>
+
+ Reviewed by Adam Barth.
+
+ Rename Node::isShadowNode to isShadowRoot
+ https://bugs.webkit.org/show_bug.cgi?id=51060
+
+ The method gets whether the node is the root of a shadow tree;
+ renamed to reflect intent.
+
+ A simple rename--no new tests needed.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::initForStyleResolve):
+ (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
+ * dom/Node.cpp:
+ (WebCore::Node::shadowTreeRootNode):
+ (WebCore::Node::isInShadowTree):
+ (WebCore::eventTargetRespectingSVGTargetRules):
+ (WebCore::Node::getEventAncestors):
+ * dom/Node.h:
+ (WebCore::Node::isShadowRoot):
+ * dom/Range.cpp:
+ (WebCore::Range::checkNodeBA):
+ * page/DragController.cpp:
+ (WebCore::asFileInput):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleMousePressEvent):
+ (WebCore::EventHandler::dispatchMouseEvent):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::hasLineIfEmpty):
+ * rendering/TextControlInnerElements.cpp:
+ (WebCore::TextControlInnerElement::attachInnerElement):
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::title):
+ * svg/SVGUseElement.cpp:
+ (WebCore::ShadowTreeUpdateBlocker::while):
+ * svg/animation/SVGSMILElement.cpp:
+ (WebCore::SVGSMILElement::insertedIntoDocument):
+
+2010-12-20 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ Qt port of geolocation, geoposition objects timestamp was in seconds
+ instead of miliseconds as per HTML5 Geolocation standards.
+ Ref: http://dev.w3.org/geo/api/spec-source.html#position_interface
+ http://www.w3.org/TR/DOM-Level-3-Core/core.html#Core-DOMTimeStamp
+
+ Implemented by Asheesh Srivastava.
+
+ [QT] QtWebkit geolocation's position.timestamp is not in miliseconds
+ https://bugs.webkit.org/show_bug.cgi?id=51100
+
+ Porting code not covered in layout testing. No new tests added.
+
+ * platform/qt/GeolocationServiceQt.cpp:
+ (WebCore::GeolocationServiceQt::positionUpdated):
+
+2010-12-20 Yuzo Fujishima <yuzo@google.com>
+
+ Reviewed by Eric Seidel.
+
+ Fix for Bug 26183 - [@font-face] font-family descriptor with multiple names should be discarded
+ https://bugs.webkit.org/show_bug.cgi?id=26183
+
+ Test: fast/css/font-face-font-family-descriptor.html
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::createFontFaceRule): Consider @font-face rule
+ invalid if its font-family descriptor has multiple (or zero) families.
+
+2010-12-20 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: fall back to object formatting in case dom is not yet loaded.
+ https://bugs.webkit.org/show_bug.cgi?id=44273
+
+ Sometimes DOM is loaded after the inline message is being formatted, so we get
+ no nodeId for it. Let us fall back to object formatting in such cases.
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype._formatnode):
+ (WebInspector.ConsoleMessage):
+
+2010-12-20 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Joseph Pecoraro.
+
+ Web Inspector: cycle through tag name / attributes / new attribute on Tab.
+
+ https://bugs.webkit.org/show_bug.cgi?id=38429
+
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.moveToNextAttributeIfNeeded):
+
+2010-12-20 Yuta Kitamura <yutak@chromium.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ WebSocket errors should be logged to console
+ https://bugs.webkit.org/show_bug.cgi?id=40945
+
+ Test: http/tests/inspector/console-websocket-error.html
+
+ * platform/network/SocketStreamErrorBase.cpp:
+ (WebCore::SocketStreamErrorBase::compare):
+ * platform/network/SocketStreamErrorBase.h:
+ (WebCore::SocketStreamErrorBase::failingURL):
+ (WebCore::SocketStreamErrorBase::localizedDescription):
+ (WebCore::SocketStreamErrorBase::SocketStreamErrorBase):
+ * platform/network/cf/SocketStreamError.h:
+ (WebCore::SocketStreamError::SocketStreamError):
+ * platform/network/cf/SocketStreamHandle.h:
+ * platform/network/cf/SocketStreamHandleCFNet.cpp:
+ (WebCore::SocketStreamHandle::readStreamCallback):
+ (WebCore::SocketStreamHandle::writeStreamCallback):
+ (WebCore::SocketStreamHandle::reportErrorToClient):
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::didFail):
+
+2010-12-17 MORITA Hajime <morrita@google.com>
+
+ Reviewed by James Robinson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51240
+ [Chromium][Skia] Border with a color with alpha != 1 breaks webkit gradient on skia.
+
+ Even after a shader was set, old color value had been remaining and passed to Skia.
+ Then Skia refered an alpha component of that color to make pixels transparent.
+ This change invalidates existing color value when a shader is given,
+ which means the renderer will paint shapes with gradients or patterns.
+
+ Test: fast/gradients/gradient-after-transparent-border.html
+
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::setStrokeShader):
+ (WebCore::PlatformContextSkia::setFillShader):
+
+2010-12-20 Xiaomei Ji <xji@chromium.org>
+
+ Reviewed by Dan Bernstein.
+
+ Fix move left/right by character hang.
+ https://bugs.webkit.org/show_bug.cgi?id=51344
+
+ Test: editing/selection/51344.html
+
+ * editing/VisiblePosition.cpp:
+ (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
+ (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
+
+2010-12-20 Steve Lacey <sjl@chromium.org>
+
+ Reviewed by David Levin.
+
+ Add missing default styles in mediaControlsChromium.css to prevent
+ user overrides.
+ https://bugs.webkit.org/show_bug.cgi?id=51360
+
+ No new tests needed as functionality is covered by existing layout
+ tests.
+
+
+ * css/mediaControlsChromium.css:
+ (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
+ (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
+
+2010-12-20 Jian Li <jianli@chromium.org>
+
+ Reviewed by David Levin.
+
+ Add lastModifiedDate attribute to File interface per File API spec
+ https://bugs.webkit.org/show_bug.cgi?id=49895
+
+ lastModifiedDate is not supported for GObject bindings because Date is
+ not support in code generation.
+
+ Test: http/tests/local/fileapi/file-last-modified.html
+
+ * fileapi/File.cpp:
+ (WebCore::File::lastModifiedDate):
+ * fileapi/File.h:
+ * fileapi/File.idl:
+
+2010-12-20 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ <rdar://problem/8757601> Don't install header files in to the Resources directory.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-12-20 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ [Chromium] v8/SerializedScriptValue::readUint32 treats incoming raw values as signed instead of unsigned
+ https://bugs.webkit.org/show_bug.cgi?id=51338
+
+ * bindings/v8/SerializedScriptValue.cpp:
+ (WebCore::ZigZag::Reader::readUint32):
+
+2010-12-20 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Ada Chan.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=51355 Crash in
+ RenderMathMLSubSup::layout() because of null base
+ -and corresponding-
+ <rdar://problem/8712200>
+
+ Only use base inside if(base) block.
+ * mathml/RenderMathMLSubSup.cpp:
+ (WebCore::RenderMathMLSubSup::layout):
+
+2010-12-20 Enrica Casucci <enrica@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Crash at WebCore::SplitElementCommand::SplitElementCommand
+ https://bugs.webkit.org/show_bug.cgi?id=51278
+ <rdar://problem/7347139>
+
+ Executing outdent command on an inline blockquote that is
+ not the first element in a block causes a crash.
+ The fix consists in chaging the was the start of block is
+ calculated in case of the inline blockquote.
+
+ Test: editing/execCommand/outdent-inline-blockquote.html
+ editing/execCommand/outdent-inline-list.html
+
+ * editing/IndentOutdentCommand.cpp:
+ (WebCore::IndentOutdentCommand::outdentParagraph):
+
+2010-12-20 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Need to support serialisation of cyclic graphs in the internal structured cloning algorithm
+ https://bugs.webkit.org/show_bug.cgi?id=51353
+
+ The Internal Structured Clone algorithm has been changed to allow (and
+ correctly clone) cyclic graphs. This patch updates our implementation
+ to provide that functionality.
+
+ I've bumped the serialization version number, and added ObjectReferenceTag
+ to represent references to objects that have already been seen.
+
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneSerializer::startObjectInternal):
+ Now that we have something a bit more complex than cycle checking
+ I've replaced the duplicate code in startObject and startArray with
+ a shared function that implements that logic to plant an object
+ reference
+ (WebCore::CloneSerializer::startObject):
+ (WebCore::CloneSerializer::startArray):
+ Lift out duplicate code
+ (WebCore::CloneSerializer::endObject):
+ Can't remove objects from the gcbuffer now as they need to remain live
+ so we can identify graphs
+ (WebCore::CloneSerializer::writeStringIndex):
+ (WebCore::CloneSerializer::writeObjectIndex):
+ (WebCore::CloneSerializer::writeConstantPoolIndex):
+ (WebCore::CloneSerializer::write):
+ (WebCore::CloneSerializer::serialize):
+ (WebCore::CloneDeserializer::readStringIndex):
+ (WebCore::CloneDeserializer::readConstantPoolIndex):
+ (WebCore::CloneDeserializer::readTerminal):
+ (WebCore::CloneDeserializer::deserialize):
+
+2010-12-20 Xan Lopez <xlopez@igalia.com>
+
+ Reviewed by Gustavo Noronha.
+
+ * GNUmakefile.am: add missing files.
+
+2010-12-20 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Pass the correct beforeChild value when adding a child to an anonymous table part.
+ https://bugs.webkit.org/show_bug.cgi?id=50932
+
+ When a "before" content child was added to an anonymous table part, it was added
+ after the last child. This patch fixes the behavior by adding it properly before
+ the first child.
+
+ Test: fast/css-generated-content/table-before-child-add.html
+
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::addChild):
+
+2010-12-18 Gavin Barraclough <barraclough@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Bug 26276 - Need a mechanism to determine stack extent
+
+ Add forwarding header for StackBounds.h.
+
+ * ForwardingHeaders/wtf/StackBounds.h: Added.
+
+2010-12-20 James Robinson <jamesr@chromium.org>
+
+ Unreviewed, rolling out r74278.
+ http://trac.webkit.org/changeset/74278
+ https://bugs.webkit.org/show_bug.cgi?id=50833
+
+ [chromium] Causes many layout tests to crash
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::prepareToDrawLayers):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::useRenderSurface):
+ (WebCore::LayerRendererChromium::setScissorToRect):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+
+2010-12-20 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Factored common page set management into a new PageBlock base class
+ https://bugs.webkit.org/show_bug.cgi?id=51285
+
+ * ForwardingHeaders/wtf/PageBlock.h: Added.
+
+2010-12-20 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ GeolocationPositionCache should do database access on background thread
+ https://bugs.webkit.org/show_bug.cgi?id=50825
+
+ Covered by existing Geolocation tests.
+
+ * page/Coordinates.h:
+ (WebCore::Coordinates::threadSafeCopy):
+ * page/GeolocationPositionCache.cpp:
+ (WebCore::GeolocationPositionCache::GeolocationPositionCache):
+ (WebCore::GeolocationPositionCache::addUser):
+ (WebCore::GeolocationPositionCache::removeUser):
+ (WebCore::GeolocationPositionCache::setDatabasePath):
+ (WebCore::GeolocationPositionCache::setCachedPosition):
+ (WebCore::GeolocationPositionCache::cachedPosition):
+ (WebCore::GeolocationPositionCache::startBackgroundThread):
+ (WebCore::GeolocationPositionCache::threadEntryPoint):
+ (WebCore::GeolocationPositionCache::threadEntryPointImpl):
+ (WebCore::GeolocationPositionCache::triggerReadFromDatabase):
+ (WebCore::GeolocationPositionCache::readFromDatabase):
+ (WebCore::GeolocationPositionCache::readFromDatabaseImpl):
+ (WebCore::GeolocationPositionCache::triggerWriteToDatabase):
+ (WebCore::GeolocationPositionCache::writeToDatabase):
+ (WebCore::GeolocationPositionCache::writeToDatabaseImpl):
+ * page/GeolocationPositionCache.h:
+ * page/Geoposition.h:
+ (WebCore::Geoposition::threadSafeCopy):
+ (WebCore::Geoposition::Geoposition):
+
+2010-12-20 Andras Becsi <abecsi@webkit.org>
+
+ Unreviewed build fix.
+
+ [Qt][V8] Add missing sources to the pro file and remove duplications to fix linking.
+
+ No new tests needed.
+
+ * WebCore.pro:
+
+2010-12-20 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Make CSSCompletions a real class rather than singleton
+ https://bugs.webkit.org/show_bug.cgi?id=51332
+
+ Drive-by: make use of keywords from re2js in the CSS tokenizer
+ (apparently, various authors have presumed that re2js is processed at build time).
+
+ No new tests, as this is a refactoring.
+
+ * inspector/front-end/CSSCompletions.js:
+ (WebInspector.CSSCompletions):
+ (WebInspector.CSSCompletions.prototype.startsWith):
+ (WebInspector.CSSCompletions.prototype.firstStartsWith):
+ (WebInspector.CSSCompletions.prototype._firstIndexOfPrefix):
+ (WebInspector.CSSCompletions.prototype.keySet):
+ (WebInspector.CSSCompletions.prototype.next):
+ (WebInspector.CSSCompletions.prototype.previous):
+ (WebInspector.CSSCompletions.prototype._closest):
+ * inspector/front-end/SourceCSSTokenizer.js:
+ (WebInspector.SourceCSSTokenizer):
+ * inspector/front-end/SourceCSSTokenizer.re2js:
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertyTreeElement.prototype):
+ * inspector/front-end/inspector.js:
+ (WebInspector.doLoadedDone.propertyNamesCallback):
+ (WebInspector.doLoadedDone):
+
+2010-12-10 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: "Add conditional breakpoint" - create breakpoint only after condition is provided.
+ https://bugs.webkit.org/show_bug.cgi?id=50813
+
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._addBreakpoint):
+ (WebInspector.SourceFrame.prototype._breakpointRemoved):
+ (WebInspector.SourceFrame.prototype._breakpointChanged):
+ (WebInspector.SourceFrame.prototype._setBreakpointDecoration):
+ (WebInspector.SourceFrame.prototype._removeBreakpointDecoration):
+ (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint.didEditBreakpointCondition):
+ (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint):
+ (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition.didEditBreakpointCondition):
+ (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition):
+ (WebInspector.SourceFrame.prototype._contextMenu):
+ (WebInspector.SourceFrame.prototype._editBreakpointCondition.finishEditing):
+ (WebInspector.SourceFrame.prototype._editBreakpointCondition):
+ (WebInspector.SourceFrame.prototype._continueToLine):
+ (WebInspector.SourceFrame.prototype._setBreakpoint):
+
+2010-12-20 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ IDBTransactionBackedImpl instances can be accidentally deleted during calls to abort/commit.
+ https://bugs.webkit.org/show_bug.cgi?id=51112
+
+ Makes IDBTransactionBackendImpl objects take a self reference while executing commit and abort.
+
+ Test: storage/indexeddb/transaction-crash-on-abort.html
+
+ * storage/IDBTransactionBackendImpl.cpp:
+ (WebCore::IDBTransactionBackendImpl::abort):
+ (WebCore::IDBTransactionBackendImpl::commit):
+
+2010-12-20 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ IDBCursor::delete is not implemented.
+ https://bugs.webkit.org/show_bug.cgi?id=51110
+
+ Implement IDBCursor::delete.
+ See http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#widl-IDBCursor-delete
+
+ Tests: storage/indexeddb/cursor-delete.html
+ storage/indexeddb/cursor-index-delete.html
+
+ * storage/IDBCursor.cpp:
+ (WebCore::IDBCursor::deleteFunction):
+ * storage/IDBCursor.h:
+ * storage/IDBCursor.idl:
+ * storage/IDBCursorBackendImpl.cpp:
+ (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
+ (WebCore::IDBCursorBackendImpl::deleteFunction):
+ (WebCore::IDBCursorBackendImpl::loadCurrentRow):
+ * storage/IDBCursorBackendImpl.h:
+ (WebCore::IDBCursorBackendImpl::create):
+ * storage/IDBCursorBackendInterface.h:
+ * storage/IDBIndexBackendImpl.cpp:
+ (WebCore::IDBIndexBackendImpl::openCursorInternal):
+ * storage/IDBKey.cpp:
+ (WebCore::IDBKey::fromQuery):
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::deleteInternal):
+ (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
+
+2010-12-20 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: After a multiline command execution Console does not show the command prompt
+ https://bugs.webkit.org/show_bug.cgi?id=51257
+
+ * inspector/front-end/TextPrompt.js:
+ (WebInspector.TextPrompt.prototype._moveBackInHistory):
+ (WebInspector.TextPrompt.prototype._moveForwardInHistory):
+
+2010-12-19 Helder Correia <helder@sencha.com>
+
+ Reviewed by Ariya Hidayat.
+
+ [Qt] Blur distance should not be affected by transformations
+ https://bugs.webkit.org/show_bug.cgi?id=51161
+
+ From the spec at http://dev.w3.org/html5/2dcontext/#dom-context-2d-shadowblur:
+ "The shadowBlur attribute specifies the level of the blurring effect.
+ (The units do not map to coordinate space units, and are not affected
+ by the current transformation matrix.)"
+
+ Test: fast/canvas/canvas-scale-shadowBlur.html
+
+ * platform/graphics/ContextShadow.cpp:
+ (WebCore::ContextShadow::adjustBlurDistance):
+ * platform/graphics/ContextShadow.h:
+ * platform/graphics/cairo/ContextShadowCairo.cpp:
+ (WebCore::ContextShadow::beginShadowLayer):
+ * platform/graphics/qt/ContextShadowQt.cpp:
+ (WebCore::ContextShadow::beginShadowLayer):
+
+2010-12-19 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Cameron Zwarich.
+
+ Text emphasis marks are not repainted correctly in flipped writing modes
+ https://bugs.webkit.org/show_bug.cgi?id=51307
+
+ Tests: fast/repaint/text-emphasis-h.html
+ fast/repaint/text-emphasis-v.html
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::addTextBoxVisualOverflow): Added flippedness check.
+
+2010-12-19 Rob Buis <rwlbuis@gmail.com>
+
+ Reviewed by Andreas Kling.
+
+ Remove m_drawsContents from RenderSVGContainer.h
+ https://bugs.webkit.org/show_bug.cgi?id=51305
+
+ Remove m_drawsContents, its getter and setter and the call
+ sites, since it has no effect anymore.
+
+ * WebCore.order:
+ * rendering/RenderSVGContainer.cpp:
+ (WebCore::RenderSVGContainer::RenderSVGContainer):
+ (WebCore::RenderSVGContainer::paint):
+ * rendering/RenderSVGContainer.h:
+ * rendering/RenderSVGResourceContainer.h:
+ * rendering/SVGImageBufferTools.cpp:
+ (WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer):
+
+2010-12-19 Benjamin Poulain <benjamin.poulain@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ WebKit does not build with worker but without the javascript debugger
+ https://bugs.webkit.org/show_bug.cgi?id=51293
+
+ Add missing guard for calls depending on the debugger.
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::populateScriptObjects):
+ (WebCore::InspectorController::postWorkerNotificationToFrontend):
+
+2010-12-18 Tom Sepez <tsepez@chromium.org>
+
+ Reviewed by David Levin.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51055
+ Fix a null de-reference when an XML file contains a malformed entity
+ of the form "&:;".
+
+ Test: fast/parser/xml-colon-entity.html
+
+ * html/parser/HTMLEntitySearch.cpp:
+ (WebCore::HTMLEntitySearch::advance):
+
+2010-12-18 Noel Gordon <noel.gordon@gmail.com>
+
+ Reviewed by David Levin.
+
+ [chromium] Simplify the PNG encoder.
+ https://bugs.webkit.org/show_bug.cgi?id=50905
+
+ Remove PNGEncoderState class - it was a proxy for the encoder output, and
+ that is a Vector<>, so just write into it directly using append() to make
+ use of Vector<>'s resize() smarts. Simplify the preMultipliedBGRAtoRGBA()
+ and encode() routines, replace the OwnArrayPtr<> with a Vector<>.
+
+ canvas.toDataURL("image/png") is covered by existing tests.
+
+ * platform/image-encoders/skia/PNGImageEncoder.cpp:
+ (WebCore::writeOutput): Use a Vector<>, append() the encoded data to it.
+ (WebCore::preMultipliedBGRAtoRGBA): simplified.
+ (WebCore::PNGImageEncoder::encode): ditto.
+
+2010-12-18 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Cameron Zwarich.
+
+ Text emphasis marks are not always included in the selection highlight
+ https://bugs.webkit.org/show_bug.cgi?id=51299
+
+ Affects pixel results of fast/text/emphasis.html
+
+ Account for annotations in selectionTop() and selectionBottom().
+
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::selectionTop):
+ (WebCore::RootInlineBox::selectionBottom):
+
+2010-12-18 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Cameron Zwarich.
+
+ In flipped writing modes, opposite text emphasis marks from adjacent lines overlap
+ https://bugs.webkit.org/show_bug.cgi?id=51298
+
+ Test: fast/text/emphasis-overlap.html
+
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::beforeAnnotationsAdjustment): Changed + to -.
+
+2010-12-18 Helder Correia <helder@sencha.com> and Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Ariya Hidayat.
+
+ [Qt] Canvas shadow offset should not be affected by any transformation
+ https://bugs.webkit.org/show_bug.cgi?id=50422
+
+ On a canvas context, shadows are currently affected by all
+ transformations except scaling. According to the spec:
+ http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#shadows
+
+ "The shadowOffsetX and shadowOffsetY attributes specify the distance
+ that the shadow will be offset in the positive horizontal and positive
+ vertical distance respectively. Their values are in coordinate space
+ units. They are not affected by the current transformation matrix."
+
+ NOTE: this applies only to canvas, not to box shadows.
+
+ Test: fast/canvas/canvas-transforms-fillRect-shadow.html
+
+ * platform/graphics/ContextShadow.cpp:
+ (WebCore::ContextShadow::ContextShadow):
+ (WebCore::ContextShadow::calculateLayerBoundingRect):
+ * platform/graphics/ContextShadow.h:
+ (WebCore::ContextShadow::setShadowsIgnoreTransforms):
+ (WebCore::ContextShadow::shadowsIgnoreTransforms):
+ (WebCore::ContextShadow::offset):
+ * platform/graphics/qt/ContextShadowQt.cpp:
+ (WebCore::ContextShadow::beginShadowLayer):
+ (WebCore::ContextShadow::endShadowLayer):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::mustUseContextShadow):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ (WebCore::GraphicsContext::setPlatformShadow):
+
+2010-12-18 Ariya Hidayat <ariya@sencha.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] TransparencyLayer should inherit its container render hints
+ https://bugs.webkit.org/show_bug.cgi?id=51283
+
+ * platform/graphics/qt/TransparencyLayer.h:
+ (WebCore::TransparencyLayer::TransparencyLayer):
+
+2010-12-18 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Laszlo Gombos.
+
+ [Web Timing] Rename domContentLoaded{Start,End}->domContentLoadedEvent{Start,End}
+ https://bugs.webkit.org/show_bug.cgi?id=50943
+
+ See: http://test.w3.org/webperf/specs/NavigationTiming/#nt-dom-content-event-start
+
+ * dom/Document.cpp:
+ (WebCore::Document::finishedParsing):
+ * dom/DocumentTiming.h:
+ (WebCore::DocumentTiming::DocumentTiming):
+ * page/PerformanceTiming.cpp:
+ (WebCore::PerformanceTiming::domContentLoadedEventStart):
+ (WebCore::PerformanceTiming::domContentLoadedEventEnd):
+ * page/PerformanceTiming.h:
+ * page/PerformanceTiming.idl:
+
+2010-12-17 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Andreas Kling.
+
+ Style fix for r73927
+ https://bugs.webkit.org/show_bug.cgi?id=51194
+
+ No functionality change. No new tests needed.
+
+ * html/HTMLCanvasElement.h:
+
+2010-12-17 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Buttons rendering was broken in r74129
+ https://bugs.webkit.org/show_bug.cgi?id=51173
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::paintRenderObject):
+
+2010-12-17 Zoltan Herczeg <zherczeg@webkit.org>
+
+ Reviewed by Dirk Schulze.
+
+ Improve 'arithmetic' operator on feComposite
+ https://bugs.webkit.org/show_bug.cgi?id=51105
+
+ Fixing style errors and bug description for r74177.
+
+ * platform/graphics/filters/FEComposite.cpp:
+ (WebCore::arithmetic):
+
+2010-12-17 Dan Bernstein <mitz@apple.com>
+
+ Rubber-stamped by Mark Rowe.
+
+ Updated for the renaming of WebKitTools to Tools
+
+ * WebCore.vcproj/build-generated-files.sh:
+ * WebCore.vcproj/migrate-scripts.sh:
+
+2010-12-17 Carol Szabo <carol.szabo@nokia.com>
+
+ Reviewed by Darin Adler.
+
+ A corrupted counter tree is created when renderers are added to the
+ tree bypassing RenderObject::addChild
+ https://bugs.webkit.org/show_bug.cgi?id=51270
+
+ This patch replaces the hack introduced for fixing bug 43812
+ with code that addresses the underlying problem for that bug.
+ No new layout tests provided as there is no identified scenario when
+ visible behavior would be different, the internal datastructures
+ are maintained properly through this fix so the previous hack
+ introduced for bug 43812 is now removed. The fact that the
+ layout test introduced for 43812 continues to pass is proof that the
+ code works.
+
+ * rendering/RenderCounter.cpp:
+ (WebCore::findPlaceForCounter):
+ Removed hack.
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::addChild):
+ Moved call to counter nodes updater to lower level
+ functions to avoid bypass.
+ * rendering/RenderObjectChildList.cpp:
+ (WebCore::RenderObjectChildList::appendChildNode):
+ (WebCore::RenderObjectChildList::insertChildNode):
+ Changed to update the values of the counters that
+ may be inserted in the tree.
+
+2010-12-17 Shimeng (Simon) Wang <swang@google.com>
+
+ Reviewed by Steve Block.
+
+ Fix V8 JNI binding.
+ https://bugs.webkit.org/show_bug.cgi?id=51156
+
+ There're LayoutTests in:
+ http://trac.webkit.org/browser/trunk/LayoutTests/java/lc3/JSNumber
+ to exercise these code paths.
+ Though Chromium don't run them.
+ Tested on Android fast/events/touch tests.
+
+ * bridge/jni/v8/JNIUtilityPrivate.cpp:
+ (JSC::Bindings::convertNPVariantToJValue):
+
+2010-12-17 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Chris Marrin.
+
+ Interrupted accelerated animation can break later transitions
+ <rdar://problem/8767714>
+ https://bugs.webkit.org/show_bug.cgi?id=51264
+
+ If we're still waiting for the 'animationDidStart' callback when renderers
+ get destroyed, then the m_waitingForStartTimeResponse flag could be left
+ set to 'true', which causes later transitions to never start.
+
+ Fix by clearing the m_waitingForStartTimeResponse flag when the m_startTimeResponseWaiters
+ becomes empty.
+
+ Test: transitions/interrupted-accelerated-transition.html
+
+ * page/animation/AnimationController.cpp:
+ (WebCore::AnimationControllerPrivate::removeFromStartTimeResponseWaitList):
+
+2010-12-17 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Chris Marrin.
+
+ Interrupted accelerated animation can break later transitions
+ https://bugs.webkit.org/show_bug.cgi?id=51264
+
+ Step 1: code cleanup.
+ Rename "responseWait" variables to "startTimeResponseWait", to make it clear
+ the kind of response that is being waited for.
+
+ Make a couple of methods private.
+
+ No behavioral changes, so no tests.
+
+ * page/animation/AnimationController.cpp:
+ (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
+ (WebCore::AnimationControllerPrivate::endAnimationUpdate):
+ (WebCore::AnimationControllerPrivate::receivedStartTimeResponse):
+ (WebCore::AnimationControllerPrivate::addToStartTimeResponseWaitList):
+ (WebCore::AnimationControllerPrivate::removeFromStartTimeResponseWaitList):
+ (WebCore::AnimationControllerPrivate::startTimeResponse):
+ * page/animation/AnimationControllerPrivate.h:
+
+2010-12-17 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ Layout and rendering of CSS text-emphasis
+ Final part of <rdar://problem/7720300> Support the CSS3 text-emphasis property
+ https://bugs.webkit.org/show_bug.cgi?id=48539
+
+ Tests: fast/text/emphasis-vertical.html
+ fast/text/emphasis.html
+
+ Emphasis marks behave like they are stuck just above the ascender (or just below the
+ descender). They occupy space in the leading and in padding, and only grow the line space
+ if they cannot fit.
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::placeBoxesInBlockDirection): Renamed the containsRuby parameter to
+ hasAnnotationsBefore, and added hasAnnotationsAfter. Line annotations include ruby and text emphasis
+ marks.
+ (WebCore::InlineFlowBox::addTextBoxVisualOverflow): Added overflow from emphasis marks.
+ (WebCore::InlineFlowBox::computeOverAnnotationAdjustment): Remaned computeBlockDirectionRubyAdjustment()
+ to this and added adjustment for text emphasis marks.
+ (WebCore::InlineFlowBox::computeUnderAnnotationAdjustment): Added. Similar to the previous function,
+ but for annotations under the glyphs. These can only be text emphasis marks.
+ * rendering/InlineFlowBox.h:
+ * rendering/InlineTextBox.cpp:
+ (WebCore::paintTextWithShadows): Paint emphasis marks.
+ (WebCore::InlineTextBox::paint): Ditto.
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren): Generalized the code that adjusts the last line for
+ ruby in flipped writing mode to also adjust the last line for emphasis marks under the line in non-
+ flipped writing mode.
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::selectionColor): Added this helper method which generalizes selectionForegroundColor().
+ (WebCore::RenderObject::selectionForegroundColor): Moved most of the code to selectionColor().
+ (WebCore::RenderObject::selectionEmphasisMarkColor): Added.
+ * rendering/RenderObject.h:
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::RootInlineBox): Updated initialization for new members.
+ (WebCore::RootInlineBox::alignBoxesInBlockDirection): Update new members.
+ (WebCore::RootInlineBox::beforeAnnotationsAdjustment): Renamed blockDirectionRubyAdjustment() to this
+ and extended to deal with annotations over and under the line and the previous line. If both lines have
+ annotations into the space between the lines, maintain separation so that the annotations do not overlap.
+ * rendering/RootInlineBox.h:
+ (WebCore::RootInlineBox::hasAnnotationsBefore): Added this accessor.
+ (WebCore::RootInlineBox::hasAnnotationsAfter): Ditto.
+
+2010-12-17 W. James MacLean <wjmaclean@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Add support to compositor to composite to offscreen texture.
+ https://bugs.webkit.org/show_bug.cgi?id=50833
+
+ A patch to extend compositor to be able to composite into an offscreen texture instead
+ of just directly to the display buffer. Builds on RenderSurfaceChromium support.
+
+ External behaviour not changed, so no tests.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::prepareToDrawLayers):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::setCompositeOffscreen):
+ (WebCore::LayerRendererChromium::useRenderSurface):
+ (WebCore::LayerRendererChromium::setScissorToRect):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::isCompositingOffscreen):
+ (WebCore::LayerRendererChromium::getOffscreenLayerTexture):
+
+2010-12-17 Ariya Hidayat <ariya@sencha.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Default image interpolation should reset the render hint
+ https://bugs.webkit.org/show_bug.cgi?id=51233
+
+ Save initial SmoothPixmapTransform render hint so that it can be used
+ with default image interpolation quality to reset back the render hints.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
+ (WebCore::GraphicsContext::setImageInterpolationQuality):
+
+2010-12-17 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: Support Date objects as keys.
+ https://bugs.webkit.org/show_bug.cgi?id=51193
+
+ * bindings/v8/IDBBindingUtilities.cpp:
+ (WebCore::createIDBKeyFromValue):
+ Use the new IDBKey factory functions, and support Date objects.
+ * bindings/v8/custom/V8IDBKeyCustom.cpp:
+ (WebCore::toV8):
+ Create Date objects from DateType keys.
+ * storage/IDBKey.cpp:
+ (WebCore::IDBKey::fromQuery):
+ (WebCore::IDBKey::isEqual):
+ (WebCore::IDBKey::whereSyntax):
+ (WebCore::IDBKey::lowerCursorWhereFragment):
+ (WebCore::IDBKey::upperCursorWhereFragment):
+ (WebCore::IDBKey::bind):
+ (WebCore::IDBKey::bindWithNulls):
+ Update all SQL related functions to handle Date keys.
+ * storage/IDBKey.h:
+ (WebCore::IDBKey::createNull):
+ (WebCore::IDBKey::createNumber):
+ (WebCore::IDBKey::createString):
+ (WebCore::IDBKey::createDate):
+ Rename the create factories; since both number and date is just a
+ double, function overloading can't be used to discriminate between
+ the factories.
+ (WebCore::IDBKey::date):
+ Add getter for the date value.
+
+2010-12-17 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: add scripts parsed after resource load to SourceFrame.
+ https://bugs.webkit.org/show_bug.cgi?id=51243
+
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._addScript):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype.addScript):
+
+2010-12-17 Anton Muhin <antonm@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ [v8] The last portion of CSS GC work: fixing fast/dom/StyleSheet/gc-stylesheet-wrapper.html
+ https://bugs.webkit.org/show_bug.cgi?id=51121
+
+ Properly group style elements of HTML links, style elements and processing instructions.
+
+ * bindings/v8/V8GCController.cpp:
+ (WebCore::NodeGrouperVisitor::visitDOMWrapper):
+ (WebCore::NodeGrouperVisitor::addDOMObjectToGroup):
+
+2010-12-17 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [REGRESSION] scripts in scripts panel are not updated on reload.
+ https://bugs.webkit.org/show_bug.cgi?id=51101
+
+ * inspector/front-end/ResourceManager.js:
+ (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
+
+2010-12-17 Benjamin Poulain <benjamin.poulain@nokia.com>
+
+ Reviewed by Laszlo Gombos.
+
+ The inspector does not compile without JAVASCRIPT_DEBUGGER
+ https://bugs.webkit.org/show_bug.cgi?id=51246
+
+ Fix the build, m_extraHeaders does not depend on JAVASCRIPT_DEBUGGER.
+
+ * inspector/InspectorController.h:
+
+2010-12-17 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: clear extra/override headers when front-end is closed
+ https://bugs.webkit.org/show_bug.cgi?id=51244
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::disconnectFrontend):
+ (WebCore::InspectorController::willSendRequest):
+
+2010-12-17 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: [REGRESSION] Cmd (Ctrl) + G does not search next in Scripts panel.
+ https://bugs.webkit.org/show_bug.cgi?id=50893
+
+ Now Mac shortcuts are:
+ - Cmd F/G = find / next
+ - Cmd L = go to line
+
+ Win/Linux:
+ - Ctrl+G = go to line
+
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._registerShortcuts):
+ * inspector/front-end/inspector.js:
+ (WebInspector._registerShortcuts):
+
+2010-12-16 Sergio Villar Senin <svillar@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ Wrong check in ResourceHandleSoup in error cases
+ https://bugs.webkit.org/show_bug.cgi?id=51171
+
+ Calling didReceiveData with no data causes a crash in debug
+ builds. Checking for soupMsg->response_body->data is not correct as libsoup
+ always creates a buffer for that. Instead we should check for
+ soupMsg->response_body->length
+
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::sendRequestCallback):
+
+2010-12-17 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Avoid unnecessary calls to GraphicsContextPlatformPrivate::p()
+ https://bugs.webkit.org/show_bug.cgi?id=49954
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::pushTransparencyLayerInternal):
+ (WebCore::GraphicsContext::beginTransparencyLayer):
+
+2010-12-17 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Compile warning introduced in r74129
+ https://bugs.webkit.org/show_bug.cgi?id=51181
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::gtkContainer):
+
+2010-12-17 James Simonsen <simonjam@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [Web Timing] Add sslHandshakeStart to interface
+
+ https://bugs.webkit.org/show_bug.cgi?id=50400
+
+ Test: http/tests/misc/webtiming-ssl.php
+
+ * page/PerformanceTiming.cpp:
+ (WebCore::PerformanceTiming::connectStart): Update comment.
+ (WebCore::PerformanceTiming::connectEnd): Remove SSL time.
+ (WebCore::PerformanceTiming::sslHandshakeStart): Added.
+ * page/PerformanceTiming.h: Added sslHandshakeStart.
+ * page/PerformanceTiming.idl: Ditto.
+
+2010-12-17 James Simonsen <simonjam@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [Web Timing] Navigation type enums should begin with TYPE_
+ https://bugs.webkit.org/show_bug.cgi?id=51200
+
+ * page/PerformanceNavigation.cpp:
+ (WebCore::PerformanceNavigation::type): Added TYPE_ to navigation types.
+ * page/PerformanceNavigation.h: Ditto and added TYPE_RESERVED.
+ * page/PerformanceNavigation.idl: Ditto.
+
+2010-12-17 Steve Block <steveblock@google.com>
+
+ Unreviewed build fix.
+
+ Fix build when Geolocation is disabled.
+
+ No new tests, build fix only.
+
+ * page/Geolocation.h:
+
+2010-12-17 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed. WinCE build fix.
+
+ * platform/graphics/GraphicsContext.h:
+
+2010-12-17 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: remove unnecessary dependencies from InspectorBackendStub.
+
+ InspectorBackendStub is a transport-only thing but it has dependencies with
+ Callback.js and WebInspector namespace. Callback can be integrated into
+ InspectorBackendStub because it is the only client.
+ Without these dependencies InspectorBackendStub can be used as an API
+ wrapper for Inspector Protocol.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51184
+
+ * WebCore.gypi:
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/front-end/Callback.js: Removed.
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.html:
+
+2010-12-15 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Extension API] add support for adding/overriding HTTP request headers
+ https://bugs.webkit.org/show_bug.cgi?id=50493
+
+ Test: http/tests/inspector/extensions-headers.html
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::willSendRequest): Apply extra headers.
+ (WebCore::InspectorController::setExtraHeaders):
+ * inspector/InspectorController.h:
+ * inspector/front-end/ExtensionAPI.js:
+ (WebInspector.injectedExtensionAPI.Resources.prototype.getHAR):
+ (WebInspector.injectedExtensionAPI.Resources.prototype.addRequestHeaders):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype._onAddRequestHeaders):
+
+2010-12-16 Koan-Sin Tan <koansin.tan@gmail.com>
+
+ Reviewed by Kent Tamura.
+
+ Glyphs in vertical text tests are rotated 90 degrees clockwise on Chromium Linux
+ https://bugs.webkit.org/show_bug.cgi?id=50365
+
+ No new tests. But this makes Chromimium Linux show
+ fast/blockflow/japanese-*-text.html and other vertical
+ writing text correctly as on WebKit and Chromimum for Mac.
+
+ * platform/graphics/chromium/FontCacheLinux.cpp:
+ (WebCore::FontCache::createFontPlatformData):
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/chromium/FontPlatformDataLinux.cpp:
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::operator=):
+ (WebCore::FontPlatformData::operator==):
+ (WebCore::FontPlatformData::hash):
+ * platform/graphics/chromium/FontPlatformDataLinux.h:
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::orientation):
+ * platform/graphics/chromium/SimpleFontDataLinux.cpp:
+ (WebCore::SimpleFontData::platformInit):
+ * platform/graphics/skia/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+ * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp:
+ (WebCore::substituteWithVerticalGlyphs):
+ (WebCore::GlyphPage::fill):
+
+2010-12-16 Yi Shen <yi.4.shen@nokia.com>, Tor Arne Vestbo <tor.arne.vestbo@nokia.com>
+
+ Reviewed by Eric Carlson.
+
+ Provide an interface to require using fullscreen mediaplayer
+ https://bugs.webkit.org/show_bug.cgi?id=51133
+
+ Add ChromeClient::requiresFullscreenForVideoPlayback to require webkit
+ to launch fullscreen video player for playing the html5 video. The
+ idea is that a browser vendor can specify this behavior through the
+ platform plugin or something else by using this interface.
+
+ No new tests because no client implements requiresFullscreenForVideoPlayback yet.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::updatePlayState):
+ (WebCore::HTMLMediaElement::exitFullscreen):
+ * page/Chrome.cpp:
+ (WebCore::Chrome::requiresFullscreenForVideoPlayback):
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ (WebCore::ChromeClient::requiresFullscreenForVideoPlayback):
+
+2010-12-16 Steve Block <steveblock@google.com>
+
+ Reviewed by Steve Block.
+
+ GeolocationPositionCache needs refactoring
+ https://bugs.webkit.org/show_bug.cgi?id=50826
+
+ No new tests, refactoring only.
+
+ * page/Geolocation.cpp:
+ (WebCore::Geolocation::Geolocation):
+ (WebCore::Geolocation::makeCachedPositionCallbacks):
+ (WebCore::Geolocation::haveSuitableCachedPosition):
+ (WebCore::Geolocation::positionChangedInternal):
+ * page/Geolocation.h:
+ * page/GeolocationPositionCache.cpp:
+ (WebCore::GeolocationPositionCache::instance):
+ (WebCore::GeolocationPositionCache::GeolocationPositionCache):
+ (WebCore::GeolocationPositionCache::addUser):
+ (WebCore::GeolocationPositionCache::removeUser):
+ (WebCore::GeolocationPositionCache::setDatabasePath):
+ (WebCore::GeolocationPositionCache::setCachedPosition):
+ (WebCore::GeolocationPositionCache::cachedPosition):
+ (WebCore::GeolocationPositionCache::readFromDatabase):
+ (WebCore::GeolocationPositionCache::writeToDatabase):
+ * page/GeolocationPositionCache.h:
+ (WebCore::GeolocationPositionCacheWrapper::GeolocationPositionCacheWrapper):
+ (WebCore::GeolocationPositionCacheWrapper::~GeolocationPositionCacheWrapper):
+ (WebCore::GeolocationPositionCacheWrapper::setCachedPosition):
+ (WebCore::GeolocationPositionCacheWrapper::cachedPosition):
+
+2010-12-16 Ariya Hidayat <ariya@sencha.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] GraphicsContext should respect QWebView render hints
+ https://bugs.webkit.org/show_bug.cgi?id=51208
+
+ GraphicsContext does not override SmoothPixmapTransform (see also
+ r62762). To keep the same behavior, canvas default image interpolation
+ quality is set to medium and QWebView's render hints by default also
+ include SmoothPixmapTransform.
+
+ * html/HTMLCanvasElement.h:
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
+
+2010-12-16 Daniel Bates <dbates@rim.com>
+
+ Formatting fix; un-indent one level all lines in [2793, 2808] (with respect to r74217)
+ so as to be consistent with the formatting of the rest of this file.
+
+ Also, add an empty line between the win32* and wince* conditional include blocks.
+
+ * WebCore.pro:
+
+2010-12-16 Daniel Bates <dbates@rim.com>
+
+ Reviewed by Antonio Gomes.
+
+ [Qt] Only include ScrollAnimatorWin.h and compile ScrollAnimatorWin.cpp
+ on Windows if ENABLE_SMOOTH_SCROLLING=1
+ https://bugs.webkit.org/show_bug.cgi?id=51215
+
+ Conditionally include the files ScrollAnimatorWin.h and ScrollAnimatorWin.cpp when building
+ the Qt Windows with smooth scrolling enabled.
+
+ No change in functionality since these files are guarded by ENABLE(SMOOTH_SCROLLING).
+
+ * WebCore.pro:
+
+2010-12-16 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ execCommand('JustifyCenter') adds extra BR
+ https://bugs.webkit.org/show_bug.cgi?id=51082
+
+ The bug was caused by moveParagraphContentsToNewBlockIfNecessary's adding a placeholder br
+ to new block and not removing it later. Fixed the bug by removing it when the paragraph
+ moved into the block didn't have a br at the end.
+
+ Test: editing/execCommand/justify.html
+
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
+
+2010-12-16 Jian Li <jianli@chromium.org>
+
+ Unreviewed. Fixed chromium build break caused by r74207.
+
+ * platform/ContextMenuItem.h:
+
+2010-12-16 Leandro Pereira <leandro@profusion.mobi>
+
+ [EFL] Unreviewed build fix.
+
+ Disable ContextMenu support for now while support for
+ CROSS_PLATFORM_MENUS is written.
+
+ * CMakeListsEfl.txt:
+ * platform/ContextMenu.h:
+ * platform/ContextMenuItem.h:
+ * platform/efl/ContextMenuEfl.cpp:
+ (WebCore::ContextMenu::ContextMenu):
+ (WebCore::ContextMenu::getContextMenuItems):
+ (WebCore::ContextMenu::createNativeMenuFromItems):
+ (WebCore::ContextMenu::nativeMenu):
+ * platform/efl/ContextMenuItemEfl.cpp:
+ (WebCore::ContextMenuItem::ContextMenuItem):
+ (WebCore::ContextMenuItem::~ContextMenuItem):
+ (WebCore::ContextMenuItem::nativeMenuItem):
+ (WebCore::ContextMenuItem::type):
+ (WebCore::ContextMenuItem::setAction):
+ (WebCore::ContextMenuItem::action):
+ (WebCore::ContextMenuItem::setChecked):
+ (WebCore::ContextMenuItem::checked):
+ (WebCore::ContextMenuItem::setEnabled):
+ (WebCore::ContextMenuItem::enabled):
+ (WebCore::ContextMenuItem::setSubMenu):
+
+2010-12-16 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ execCommand('styleWithCSS') is ignored when selection isn't inside a contenteditable area
+ https://bugs.webkit.org/show_bug.cgi?id=51164
+
+ Fixed the bug by always enabling the StyleWithCSS command.
+
+ Test: editing/style/stylewithcss-without-selection.html
+
+ * editing/EditorCommand.cpp:
+ (WebCore::createCommandMap): StyleWithCSS is enabled rather than enabledInRichlyEditableText.
+
+2010-12-16 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Save the manual plug-in stream data and redeliver it when the plug-in is initialized
+ https://bugs.webkit.org/show_bug.cgi?id=51201
+
+ Export SharedBuffer related symbols.
+
+ * WebCore.exp.in:
+
+2010-12-16 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: timeline records should only operate WebCore time.
+ https://bugs.webkit.org/show_bug.cgi?id=51127
+
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
+ * inspector/TimelineRecordFactory.cpp:
+ (WebCore::TimelineRecordFactory::createResourceFinishData):
+ * inspector/TimelineRecordFactory.h:
+
+2010-12-15 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=50996
+ <rdar://problem/8098862> Consider disabling DNS prefetch when proxy is used
+
+ No new tests, cannot test DNS.
+
+ * platform/network/cf/DNSCFNet.cpp:
+ (WebCore::proxyIsEnabledInSystemPreferences): Check if accessing example.com is going to use
+ a proxy. This is only an estimate - even with a proxy is configured in system preferences, an
+ actual request can go directly to the host if a PAC script says so.
+ (WebCore::DNSResolveQueue::add): Check if proxy is enabled when sending immediate requests.
+ (WebCore::DNSResolveQueue::fired): Ditto when sending queued ones.
+
+2010-12-16 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Console always scroll to the bottom on new events
+ https://bugs.webkit.org/show_bug.cgi?id=51189
+
+ When new messages are added to the console it will auto scroll
+ only if it was already scrolled down to the last record.
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype._scheduleScrollIntoView.scrollIntoView):
+ (WebInspector.ConsoleView.prototype._scheduleScrollIntoView):
+ (WebInspector.ConsoleView.prototype._isScrolledToLastMessage):
+ (WebInspector.ConsoleView.prototype.addMessage):
+
+2010-12-16 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: update CallStackSidebarPane placards and status message in the same event handler.
+ https://bugs.webkit.org/show_bug.cgi?id=51174
+
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
+ (WebInspector.BreakpointManager.prototype._debuggerPaused):
+ (WebInspector.BreakpointManager.prototype._debuggerResumed):
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane):
+ (WebInspector.CallStackSidebarPane.prototype.update):
+ (WebInspector.CallStackSidebarPane.prototype.registerShortcuts):
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel.prototype.pausedScript):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._debuggerPaused):
+
+2010-12-16 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: Fix IDBDatabaseError code offset bug
+ https://bugs.webkit.org/show_bug.cgi?id=51177
+
+ IDBDatabaseError::code() needs to return the error code without
+ offset. But when the IDBDatabaseError is created, the code comes with
+ an offset (it gets passed a IDBDatabaseException::IDBDatabaseExceptionCode).
+
+ However, in Chromium, IDBDatabaseErrors are sometimes also created via
+ WebIDBDatabaseError when they are sent across IPC, and then the error
+ code comes *without* offset. Provide a second create() function for
+ this case.
+
+ * storage/IDBDatabaseError.h:
+ (WebCore::IDBDatabaseError::create):
+ (WebCore::IDBDatabaseError::createWithoutOffset):
+ (WebCore::IDBDatabaseError::code):
+
+2010-12-16 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r74162.
+ http://trac.webkit.org/changeset/74162
+ https://bugs.webkit.org/show_bug.cgi?id=51185
+
+ More breakage in GTK+ (Requested by xan_ on #webkit).
+
+ * platform/text/TextCodecUTF16.cpp:
+ (WebCore::TextCodecUTF16::registerEncodingNames):
+
+2010-12-16 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Up/Down/PageUp/PageDown on a CSS property numeric value commit the value editor
+ https://bugs.webkit.org/show_bug.cgi?id=51114
+
+ The r74038 regressed the behaviour. This patch additionally ensures that both Metrics and Styles panes
+ are updated once a stylesheet is reverted.
+
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
+ (WebInspector.ElementsPanel.prototype._metricsPaneEdited):
+ (WebInspector.ElementsPanel.prototype._styleSheetChanged):
+
+2010-12-16 Yury Semikhatsky <yurys@chromium.org>
+
+ Unreviewed. Fix Chromium Mac Debug Clang compilation.
+
+ * platform/graphics/FontFastPath.cpp:
+ (WebCore::Font::getGlyphsAndAdvancesForSimpleText):
+
+2010-12-16 Alejandro G. Castro <alex@igalia.com>
+
+ Unreviewed. Fix GTK3 compilation after 74129.
+
+ * platform/gtk/WidgetRenderingContextGtk3.cpp:
+
+2010-12-16 Yury Semikhatsky <yurys@chromium.org>
+
+ Unreviewed. Fix Chromium Debug compilation after r74177
+
+ * platform/graphics/filters/FEComposite.cpp:
+ (WebCore::arithmetic):
+
+2010-12-16 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, build fix.
+
+ Fix a warning on 32-bit Mac.
+
+ * platform/graphics/mac/SimpleFontDataMac.mm:
+ (WebCore::SimpleFontData::emphasisMarkFontData): 0.5 -> 0.5f
+
+2010-12-16 Zoltan Herczeg <zherczeg@webkit.org>
+
+ Reviewed by Dirk Schulze.
+
+ Improve feArithmeticFilter
+ https://bugs.webkit.org/show_bug.cgi?id=51105
+
+ In case of the arithmetic operator on feComposite filter, we could use
+ different result passing modes depend on its type. Furthermore, the
+ number of executed multiplications is reduced if k1 or k4 argument is zero.
+
+ 2% speedup on WebCore/manual-tests/svg-filter-animation.svg
+
+ * platform/graphics/filters/FEComposite.cpp:
+ (WebCore::computeArithmeticPixels):
+ (WebCore::arithmetic):
+ (WebCore::FEComposite::apply):
+
+2010-12-15 Brian Weinstein <bweinstein@apple.com>
+
+ Reviewed by Jon Honeycutt.
+
+ WebKit2 should exit auto scrolling mode when losing focus
+ https://bugs.webkit.org/show_bug.cgi?id=49209
+
+ When a page loses focus, make sure that we stop the autoscroll timer, which exits pan scrolling mode. We
+ don't want to automatically scroll when a page doesn't have focus.
+
+ Updated manual-tests/autoscroll.html with instructions to test this bug.
+
+ * manual-tests/autoscroll.html:
+ * page/FocusController.cpp:
+ (WebCore::FocusController::setFocused):
+
+2010-12-15 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Font support for the text-emphasis CSS property
+ Part of <rdar://problem/7720300> Support the CSS3 text-emphasis property
+ https://bugs.webkit.org/show_bug.cgi?id=48539
+
+ * platform/graphics/Font.cpp:
+ (WebCore::Font::drawEmphasisMarks): Added. Calls through to drawEmphasisMarksFor{Simple,Complex}Text.
+ (WebCore::Font::canReceiveTextEmphasis): Added. For simple text, checks if the character should
+ have an emphasis mark.
+
+ * platform/graphics/Font.h:
+
+ * platform/graphics/FontFastPath.cpp:
+ (WebCore::Font::glyphDataForCharacter): Replaced the forceSmallCaps boolean with a FontDataVariant
+ parameter and made this function work with other variants.
+ (WebCore::Font::getEmphasisMarkGlyphData): Added. Returns glyph data for the first character of
+ the emphasis mark. This function may not work if the emphasis mark uses a complex script, but none
+ of the standard emphasis marks do so.
+ (WebCore::Font::emphasisMarkAscent): Added.
+ (WebCore::Font::emphasisMarkDescent): Added.
+ (WebCore::Font::emphasisMarkHeight): Added.
+ (WebCore::Font::getGlyphsAndAdvancesForSimpleText): Moved much of the logic from drawSimpleText()
+ into this new function, which also has a ForTextEmphasis parameter, which is passed along to the
+ WidthIterator.
+ (WebCore::Font::drawSimpleText): Left the drawing part here.
+ (WebCore::Font::drawEmphasisMarksForSimpleText): Added.
+ (WebCore::Font::drawGlyphBuffer): Removed the unused TextRun parameter.
+ (WebCore::offsetToMiddleOfGlyph): Added this helper.
+ (WebCore::offsetToMiddleOfGlyphAtIndex): Added this other helper.
+ (WebCore::Font::drawEmphasisMarks): Added. Draws emphasis marks for a given glyph buffer by placing
+ one mark centered above each glyph. Zero glyphs in the buffer indicate that no mark should be drawn.
+
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::drawEmphasisMarks): Added. Calls through to Font::drawEmphasisMarks().
+
+ * platform/graphics/GraphicsContext.h:
+
+ * platform/graphics/SimpleFontData.cpp:
+ (WebCore::SimpleFontData::SimpleFontData): Removed initialization of deleted members.
+ (WebCore::SimpleFontData::~SimpleFontData): Removed derived font data cleanup, which now happens
+ in ~DerivedFontData.
+ (WebCore::SimpleFontData::brokenIdeographFontData): Changed to use m_derivedFontData.
+ (WebCore::SimpleFontData::DerivedFontData::DerivedFontData): Added. This lazily-allocated struct
+ contains the SimpleFontData for small caps, broken ideograph and emphasis mark.
+ (WebCore::SimpleFontData::DerivedFontData::~DerivedFontData): Added.
+
+ * platform/graphics/SimpleFontData.h:
+ (WebCore::SimpleFontData::variantFontData): Added. This is used by Font::glyphDataForCharacter().
+
+ * platform/graphics/WidthIterator.cpp:
+ (WebCore::WidthIterator::WidthIterator): Added forTextEmphasis parameter.
+ (WebCore::WidthIterator::advance): When used for text emphasis, replace glyphs with the zero glyph
+ if they should not receive an emphasis mark.
+
+ * platform/graphics/WidthIterator.h:
+
+ * platform/graphics/chromium/FontChromiumWin.cpp:
+ (WebCore::Font::drawEmphasisMarksForComplexText): Added stub.
+
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::TextRunWalker::nextScriptRun): Updated for change to Font::glyphDataForCharacter().
+ (WebCore::TextRunWalker::setupFontForScriptRun): Ditto.
+ (WebCore::Font::drawEmphasisMarksForComplexText): Added stub.
+
+ * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
+ (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
+ (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
+ (WebCore::SimpleFontData::emphasisMarkFontData): Added.
+
+ * platform/graphics/chromium/SimpleFontDataLinux.cpp:
+ (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
+ (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
+ (WebCore::SimpleFontData::emphasisMarkFontData): Added.
+
+ * platform/graphics/efl/FontEfl.cpp:
+ (WebCore::Font::drawEmphasisMarksForComplexText): Added stub.
+
+ * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
+ (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
+ (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
+ (WebCore::SimpleFontData::emphasisMarkFontData): Added.
+
+ * platform/graphics/gtk/FontGtk.cpp:
+ (WebCore::Font::drawEmphasisMarksForComplexText): Added stub.
+
+ * platform/graphics/haiku/FontHaiku.cpp:
+ (WebCore::Font::drawEmphasisMarksForComplexText): Added stub.
+
+ * platform/graphics/haiku/SimpleFontDataHaiku.cpp:
+ (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
+ (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
+ (WebCore::SimpleFontData::emphasisMarkFontData): Added.
+
+ * platform/graphics/mac/ComplexTextController.cpp:
+ (WebCore::ComplexTextController::ComplexTextController): Added forTextEmphasis parameter.
+ (WebCore::ComplexTextController::collectComplexTextRuns): Updated for change to Font::glyphDataForCharacter().
+ (WebCore::ComplexTextController::adjustGlyphsAndAdvances): When used for text emphasis, replace glyphs with the zero glyph
+ if they should not receive an emphasis mark.
+
+ * platform/graphics/mac/ComplexTextController.h:
+
+ * platform/graphics/mac/FontComplexTextMac.cpp:
+ (WebCore::Font::getGlyphsAndAdvancesForComplexText): Moved much of the logic from drawComplexText()
+ into this new function, which also has a ForTextEmphasis parameter, which is passed along to the
+ ComplexTextController.
+ (WebCore::Font::drawComplexText): Left the drawing part here.
+ (WebCore::Font::drawEmphasisMarksForComplexText): Added.
+
+ * platform/graphics/mac/SimpleFontDataMac.mm:
+ (WebCore::SimpleFontData::platformDestroy): Adopted m_derivedFontData.
+ (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
+ (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
+ (WebCore::SimpleFontData::emphasisMarkFontData): Added.
+
+ * platform/graphics/pango/SimpleFontDataPango.cpp:
+ (WebCore::SimpleFontData::platformDestroy): Removed redundant clearing of derived font.
+ (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
+ (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
+ (WebCore::SimpleFontData::emphasisMarkFontData): Added.
+
+ * platform/graphics/qt/FontQt.cpp:
+ (WebCore::Font::emphasisMarkAscent): Added stub.
+ (WebCore::Font::emphasisMarkDescent): Ditto.
+ (WebCore::Font::emphasisMarkHeight): Ditto.
+ (WebCore::Font::drawEmphasisMarksForSimpleText): Ditto.
+ (WebCore::Font::drawEmphasisMarksForComplexText): Ditto.
+
+ * platform/graphics/win/FontWin.cpp:
+ (WebCore::Font::getGlyphsAndAdvancesForComplexText): Moved much of the logic from drawComplexText()
+ into this new function, which also has a ForTextEmphasis parameter. Currently returns an empty
+ glyph buffer for text emphasis.
+ (WebCore::Font::drawComplexText): Left the drawing part here.
+ (WebCore::Font::drawEmphasisMarksForComplexText): Added.
+
+ * platform/graphics/win/SimpleFontDataWin.cpp:
+ (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
+ (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
+ (WebCore::SimpleFontData::emphasisMarkFontData): Added.
+
+ * platform/graphics/win/UniscribeController.cpp:
+ (WebCore::UniscribeController::advance): Updated for change to Font::glyphDataForCharacter().
+
+ * platform/graphics/wince/FontWinCE.cpp:
+ (WebCore::Font::drawEmphasisMarksForComplexText): Added stub.
+
+ * platform/graphics/wince/SimpleFontDataWinCE.cpp:
+ (WebCore::SimpleFontData::platformDestroy): Removed redundant clearing of derived font.
+ (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
+ (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
+ (WebCore::SimpleFontData::emphasisMarkFontData): Added.
+
+ * platform/graphics/wx/FontWx.cpp:
+ (WebCore::Font::getGlyphsAndAdvancesForComplexText): Added stub.
+ (WebCore::Font::drawComplexText): Updated for removal of unused TextRun parameter to drawGlyphBuffer().
+ (WebCore::Font::drawEmphasisMarksForComplexText): Added.
+
+ * platform/graphics/wx/SimpleFontDataWx.cpp:
+ (WebCore::SimpleFontData::scaledFontData): Moved code from smallCapsFontData() here and generalized.
+ (WebCore::SimpleFontData::smallCapsFontData): Adopted m_derivedFontData and scaledFontData().
+ (WebCore::SimpleFontData::emphasisMarkFontData): Added.
+
+ * platform/text/CharacterNames.h: Added characters used in Font::canReceiveTextEmphasis().
+
+2010-12-15 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=51150 WebView's
+ _scaleWebView SPI doesn't work on pages with compositing layers
+ -and corresponding-
+ <rdar://problem/8604713>
+
+ paintingGoesToWindow() should return false if the owning layer has
+ a transform.
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::paintingGoesToWindow):
+
+ Use docWidth() and docHeight() instead of rightLayoutOverflow() and
+ bottomLayoutOverflow() since docWidth/Height are now the preferred
+ way to query physical dimensions of the document.
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::updateRootLayerPosition):
+
+2010-12-15 Alex Bredariol Grilo <abgrilo@profusion.mobi>
+
+ Reviewed by Eric Seidel.
+
+ [EFL] Fix timer calling time in SharedTimerEfl
+
+ No new features, so no tests added.
+
+ The usage of ecore_timer_loop_add instead of ecore_timer_add corrects
+ the problem that the timer is not called at the correct time. Since this
+ code runs in a single thread, all multiple thread operations were
+ removed.
+
+ * platform/efl/SharedTimerEfl.cpp:
+ (WebCore::stopSharedTimer):
+ (WebCore::addNewTimer):
+
+2010-12-15 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Ariya Hidayat.
+
+ [Qt] StillImage::draw() shouldn't call setCompositionMode() unless the QPaintEngine has Porter-Duff composition
+ https://bugs.webkit.org/show_bug.cgi?id=49918
+
+ Go through GraphicsContext::setCompositeOperation() which does the check for us.
+
+ * platform/graphics/qt/StillImageQt.cpp:
+ (WebCore::StillImage::draw):
+
+2010-12-15 Yong Li <yoli@rim.com>
+
+ Reviewed by Darin Adler.
+
+ UTF-16 and its variants should be treated as Big Endian when BOM
+ is absent.
+ https://bugs.webkit.org/show_bug.cgi?id=51035
+
+ Test: fast/encoding/char-decoding.html (changed)
+
+ * platform/text/TextCodecUTF16.cpp:
+ (WebCore::TextCodecUTF16::registerEncodingNames):
+
+2010-12-15 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Chris Marrin.
+
+ Percentage Z values in 3d transform functions and transform-origin should cause the property to be invalid
+ https://bugs.webkit.org/show_bug.cgi?id=51070
+
+ Treat as inavlid -webkit-transform values that include a percentage value in translateZ()
+ or in the third parameter to translate3d().
+
+ Test: transforms/3d/general/3dtransform-values.html
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseTransform):
+ (WebCore::CSSParser::parseTransformOrigin): Whitespace change.
+
+2010-12-15 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Chris Marrin.
+
+ Reflection does not render properly when -webkit-transform is toggled, untoggled, and retoggled
+ https://bugs.webkit.org/show_bug.cgi?id=50967
+
+ If a reflection on a compositied, transformed element is toggled on, off and on,
+ then we pick up a cached layer clone that has the wrong transform set on it.
+
+ The fix is to reset those properties on the layer clones that get changed
+ when the GraphicsLayer gains a structural layer (for reflection flattening).
+
+ Test: compositing/reflections/remove-add-reflection.html
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::ensureStructuralLayer):
+
+2010-12-15 Timothy Hatcher <timothy@apple.com>
+
+ Fix a regression where the Web Inspector console would be empty
+ if the Inspector is localized.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51145
+
+ Reviewed by Joseph Pecoraro.
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.createFilterElement): Add a label argument so the UI string
+ is separate from the classname. Code clean up.
+ (WebInspector.ConsoleView.prototype.filter): Remove toLowerCase and use string compare.
+ (WebInspector.ConsoleView): Pass separate classnames and labels to createFilterElement.
+
+2010-12-15 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ WebKit2 in compositing mode no longer has font smoothing
+ https://bugs.webkit.org/show_bug.cgi?id=50733
+
+ Only turn off font smoothing for layers whose contents are
+ not opaque. This allows the root GraphicsLayer in WebKit2 to
+ set the opaque flag, and get smoothed text.
+
+ * platform/graphics/mac/WebLayer.mm:
+ (drawLayerContents):
+
+2010-12-15 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Allow disabling of font smoothing in compositing layers to be overridden by style
+ https://bugs.webkit.org/show_bug.cgi?id=50732
+
+ Add methods to GraphicsContext to get and set font smoothing,
+ and have them be part of the graphics state.
+
+ Fix Font::drawGlyphs() to allow the font's smoothing mode (from style)
+ to override the current smoothing mode of the context. The global
+ shouldUseSmoothing() still has final say.
+
+ Turn off smoothing in compositing layers with this, rather than
+ the non-stateful 'allow' method.
+
+ * manual-tests/compositing/font-smoothing.html: Added.
+ Manual test because DRT disables font smoothing.
+
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::setShouldSmoothFonts):
+ (WebCore::GraphicsContext::shouldSmoothFonts):
+ (WebCore::GraphicsContext::setPlatformShouldSmoothFonts):
+ * platform/graphics/GraphicsContext.h:
+ (WebCore::GraphicsContextState::GraphicsContextState):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::setPlatformShouldSmoothFonts):
+ * platform/graphics/mac/FontMac.mm:
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/mac/WebLayer.mm:
+ (drawLayerContents):
+
+2010-12-15 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ IOSurface bounds checks on bytesPerRow and allocSize are incorrect
+ https://bugs.webkit.org/show_bug.cgi?id=51137
+
+ No new tests added. For those using this new functionality, many current canvas layout tests will now pass.
+
+ * platform/graphics/cg/ImageBufferCG.cpp:
+
+2010-12-15 Kenneth Russell <kbr@google.com>
+
+ Reviewed by James Robinson.
+
+ Web Audio API: port FFTFrame to MKL
+ https://bugs.webkit.org/show_bug.cgi?id=50986
+
+ Ported FFTFrame to Intel's MKL. This patch contains the port and
+ initial, though not complete, build system changes. Tested so far
+ with a unit test by Chris Rogers (which requires code changes to
+ AudioContext.cpp and is not being checked in). Further testing to
+ follow once layout tests are available for the Web Audio API.
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+ * platform/audio/FFTFrame.h:
+ * platform/audio/mkl: Added.
+ * platform/audio/mkl/FFTFrameMKL.cpp: Added.
+ (WebCore::FFTFrame::FFTFrame):
+ (WebCore::FFTFrame::~FFTFrame):
+ (WebCore::FFTFrame::multiply):
+ (WebCore::FFTFrame::doFFT):
+ (WebCore::FFTFrame::doInverseFFT):
+ (WebCore::FFTFrame::cleanup):
+ (WebCore::FFTFrame::realData):
+ (WebCore::FFTFrame::imagData):
+ (WebCore::FFTFrame::getUpToDateComplexData):
+ (WebCore::FFTFrame::descriptorHandleForSize):
+
+2010-12-15 Yong Li <yoli@rim.com>
+
+ Reviewed by Darin Adler.
+
+ Fix stack overflow when there are too many sibling inline boxes by using
+ a loop to traverse children instead of calling each sibling from the first child.
+ https://bugs.webkit.org/show_bug.cgi?id=48255
+
+ Test: fast/overflow/lots-of-sibling-inline-boxes.html
+
+ * rendering/InlineBox.h:
+ (WebCore::InlineBox::setConstructed):
+ (WebCore::InlineBox::next):
+ * rendering/InlineFlowBox.h:
+ (WebCore::InlineFlowBox::setConstructed):
+
+2010-12-15 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ WebKit2: Can't add files to an <input type=file>
+ https://bugs.webkit.org/show_bug.cgi?id=51087
+
+ Add exported function.
+
+ * WebCore.exp.in:
+
+2010-12-15 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Antonio Gomes.
+
+ [Qt] screenIsMonochrome() is broken
+ https://bugs.webkit.org/show_bug.cgi?id=49957
+
+ * platform/qt/PlatformScreenQt.cpp:
+ (WebCore::screenIsMonochrome):
+
+2010-12-15 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ [GTK] Move button rendering from gtk{2,3}drawing.cpp to RenderThemeGtk
+ https://bugs.webkit.org/show_bug.cgi?id=48486
+
+ Implement button rendering in RenderThemeGtk. The implementation
+ from gtk{2,3}drawing.cpp will be removed once menu list button rendering
+ is implemented in RenderThemeGtk as well.
+
+ No new tests, as this should not change functionality.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::paintButton): Add an implementation of button
+ rendering that uses WidgetRenderingContext.
+
+2010-10-18 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ [GTK] Move input type=range rendering to RenderThemeGtk
+ https://bugs.webkit.org/show_bug.cgi?id=47836
+
+ Begin moving widget rendering out of the old Mozilla theme drawing code,
+ which should remove many lines of code when completed. WidgetRenderingContext
+ now hides the GTK+ 2 vs. 3 API differences, so that RenderThemeGtk can stay
+ version agnostic.
+
+ No new tests as this patch does not change functionality.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::RenderThemeGtk): gtkContainer() now returns a
+ GtkWidget, so update the cast here.
+ (WebCore::RenderThemeGtk::getGtkStateType): Added this helper which
+ converts a RenderObject state into a GtkStateType.
+ (WebCore::RenderThemeGtk::paintRenderObject): Removed work-arounds for
+ scale painting, as it's not handled by this method any longer.
+ (WebCore::RenderThemeGtk::paintSliderTrack): Updated to use
+ WidgetRenderingContext.
+ (WebCore::RenderThemeGtk::paintSliderThumb): Ditto.
+ (WebCore::RenderThemeGtk::adjustSliderThumbSize): Get the size
+ properties directly from the widget now instead of asking the Mozilla code.
+ (WebCore::RenderThemeGtk::setupWidgetAndAddToContainer): Added this
+ helper which reduces the amount of code quite a bit.
+ (WebCore::RenderThemeGtk::gtkContainer): Updated to use helper.
+ (WebCore::RenderThemeGtk::gtkButton): Ditto.
+ (WebCore::RenderThemeGtk::gtkEntry): Ditto.
+ (WebCore::RenderThemeGtk::gtkTreeView): Ditto.
+ (WebCore::RenderThemeGtk::gtkVScale): Added.
+ (WebCore::RenderThemeGtk::gtkHScale): Added.
+ (WebCore::RenderThemeGtk::platformColorsDidChange): Removed
+ GTK_CONTAINER cast.
+ * platform/gtk/RenderThemeGtk.h: Updated to add new GtkHScale and
+ GtkVScale members.
+ * platform/gtk/WidgetRenderingContext.h: Aded new methods to proxy
+ gtk_paint_box, gtk_paint_focus and gtk_paint_slider.
+ * platform/gtk/WidgetRenderingContextGtk2.cpp:
+ (WebCore::WidgetRenderingContext::gtkPaintBox): Added.
+ (WebCore::WidgetRenderingContext::gtkPaintFocus): Ditto.
+ (WebCore::WidgetRenderingContext::gtkPaintSlider): Ditto.
+ * platform/gtk/WidgetRenderingContextGtk3.cpp:
+ (WebCore::WidgetRenderingContext::gtkPaintBox): Ditto.
+ (WebCore::WidgetRenderingContext::gtkPaintFocus): Ditto.
+ (WebCore::WidgetRenderingContext::gtkPaintSlider): Ditto.
+ * platform/gtk/gtk2drawing.c: Removed defunct code!
+ (moz_gtk_get_widget_border):
+ (moz_gtk_widget_paint):
+ * platform/gtk/gtk3drawing.c: Ditto.
+ (moz_gtk_get_widget_border):
+ (moz_gtk_widget_paint):
+ * platform/gtk/gtkdrawing.h:
+
+2010-12-15 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r74117.
+ http://trac.webkit.org/changeset/74117
+ https://bugs.webkit.org/show_bug.cgi?id=51113
+
+ This broke the GTK1 build. (Requested by mrobinson on
+ #webkit).
+
+ * GNUmakefile.am:
+ * platform/network/soup/cache/webkit/soup-cache.h:
+
+2010-12-15 Jian Li <jianli@chromium.org>
+
+ Unreviewed. Fixed a clang compiling error by making the forward
+ declaration of MediaPlayerFactory be consistent with the definition.
+
+ * platform/graphics/MediaPlayer.h:
+
+2010-12-15 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Rename pageY to pageLogicalOffset, since for vertical writing modes it is an x-position rather than a
+ y-position.
+
+ * rendering/LayoutState.cpp:
+ (WebCore::LayoutState::pageLogicalOffset):
+ (WebCore::LayoutState::addForcedColumnBreak):
+ * rendering/LayoutState.h:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded):
+ (WebCore::RenderBlock::layoutColumns):
+ (WebCore::RenderBlock::setPageLogicalOffset):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::pageLogicalOffset):
+ (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutBlock):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::layout):
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::layout):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::layoutRows):
+
+2010-12-13 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: move scripts storage from ScriptsPanel to DebuggerModel.
+ https://bugs.webkit.org/show_bug.cgi?id=50908
+
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager):
+ (WebInspector.BreakpointManager.prototype._debuggerPaused):
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane):
+ (WebInspector.CallStackSidebarPane.prototype.update):
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel):
+ (WebInspector.DebuggerModel.prototype.setBreakpoint):
+ (WebInspector.DebuggerModel.prototype._setBreakpoint):
+ (WebInspector.DebuggerModel.prototype.scriptForSourceID):
+ (WebInspector.DebuggerModel.prototype.scriptsForURL):
+ (WebInspector.DebuggerModel.prototype.queryScripts):
+ (WebInspector.DebuggerModel.prototype.parsedScriptSource):
+ (WebInspector.DebuggerModel.prototype.failedToParseScriptSource):
+ (WebInspector.DebuggerModel.prototype.breakpointRestored):
+ (WebInspector.DebuggerModel.prototype.debuggerPaused):
+ (WebInspector.DebuggerModel.prototype.debuggerResumed):
+ * inspector/front-end/Resource.js:
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel): eliminate sourceIDMap
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._createViewerIfNeeded):
+ (WebInspector.SourceFrame.prototype._setBreakpoint):
+ * inspector/front-end/SourceView.js:
+ (WebInspector.SourceView):
+ * inspector/front-end/inspector.js:
+ (WebInspector.createJSBreakpointsSidebarPane):
+ (WebInspector.parsedScriptSource):
+ (WebInspector.failedToParseScriptSource):
+
+2010-12-15 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Darin Adler.
+
+ MediaPlayer should try all installed media engines
+ https://bugs.webkit.org/show_bug.cgi?id=50209
+
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::bestMediaEngineForTypeAndCodecs): Rename from chooseBestEngineForTypeAndCodecs. Take optional
+ parameter for current engine.
+ (WebCore::nextMediaEngine): New, return the next media engine in the list.
+ (WebCore::MediaPlayer::MediaPlayer): Initialize reload timer.
+ (WebCore::MediaPlayer::load): Store url, mime type, and codecs parameter in member variables.
+ (WebCore::MediaPlayer::loadWithNextMediaEngine): New, initiate loading with the next media engine.
+ (WebCore::MediaPlayer::supportsType): Make contentType parameter const.
+ (WebCore::MediaPlayer::reloadTimerFired): New, call loadWithNextMediaEngine.
+ (WebCore::MediaPlayer::networkStateChanged): If network state signals a failure and the file's
+ metadata has not loaded, give the next installed engine a try.
+ * platform/graphics/MediaPlayer.h:
+
+2010-12-15 Amruth Raj <amruthraj@motorola.com> and Ravi Kasibhatla <ravi.kasibhatla@motorola.com>
+
+ Reviewed by Martin Robinson.
+
+ Changes to enable building WebKit2 for Gtk port
+ (https://bugs.webkit.org/show_bug.cgi?id=37369)
+
+ No new functionality added or deleted. Only makefile change. Hence, no tests added.
+
+ * GNUmakefile.am: Removed bindings/gobject from webcore_sources & webcore_cppflags and added them to WebKit/gtk/GNUmakefile.am
+ * platform/network/soup/cache/webkit/soup-cache.h: Remove include <webkit/webkitdefines.h> and declare WEBKIT_API directly
+
+2010-12-15 Jarred Nicholls <jarred@sencha.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Implement the File API spec
+ https://bugs.webkit.org/show_bug.cgi?id=49839
+
+ No new tests. fast/files tests work when manually operated.
+ They do not automatically work due to Qt's inability to handle multi-file
+ inputs (https://bugs.webkit.org/show_bug.cgi?id=22048) as well as Qt's DRT
+ is missing an eventSender.beginDragWithFiles implementation.
+
+ * WebCore.pri:
+ * WebCore.pro:
+ * features.pri:
+ * platform/qt/FileSystemQt.cpp:
+ (WebCore::directoryName):
+ (WebCore::readFromFile):
+ (WebCore::seekFile):
+
+2010-12-14 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ https://bugs.webkit.org/show_bug.cgi?id=49548
+ WebCore cache stores duplicate copies of subresources with URL fragments
+
+ - Strip fragment identifiers from HTTP and file URLs for the memory cache.
+ - Changed some CachedResourceLoader and MemoryCache interfaces to use KURLs
+ instead of strings to reduce repeated URL parsing.
+
+ Test: http/tests/cache/subresource-fragment-identifier.html
+
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::cachedResource):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::tellClientAboutPastMemoryCacheLoads):
+ * loader/cache/CachedResource.cpp:
+ (WebCore::CachedResource::~CachedResource):
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::cachedResource):
+ (WebCore::CachedResourceLoader::checkForReload):
+ (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
+ (WebCore::CachedResourceLoader::requestResource):
+ * loader/cache/CachedResourceLoader.h:
+ * loader/cache/MemoryCache.cpp:
+ (WebCore::MemoryCache::requestResource):
+ (WebCore::MemoryCache::requestUserCSSStyleSheet):
+ (WebCore::MemoryCache::removeFragmentIdentifierIfNeeded):
+ (WebCore::MemoryCache::resourceForURL):
+ * loader/cache/MemoryCache.h:
+
+2010-12-15 Anton Muhin <antonm@chromium.org>
+
+ Reviewed by David Levin.
+
+ [v8] Next round of CSS GC story: proper grouping of CSSStyleDeclarations
+ https://bugs.webkit.org/show_bug.cgi?id=50965
+
+ * bindings/v8/V8GCController.cpp:
+ (WebCore::DOMObjectGrouperVisitor::visitDOMWrapper):
+ (WebCore::DOMObjectGrouperVisitor::addAllItems):
+
+2010-12-13 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: push persistent breakpoints into backend state cookie so they hit on navigation.
+ https://bugs.webkit.org/show_bug.cgi?id=48858
+
+ BreakpointManager pushes all persistent breakpoints to backend when loaded.
+ InspectorController restores sticky breakpoints from cookie on navigation.
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::disconnectFrontend):
+ (WebCore::InspectorController::didCommitLoad):
+ (WebCore::InspectorController::setStickyBreakpoints):
+ (WebCore::InspectorController::restoreStickyBreakpoints):
+ (WebCore::InspectorController::restoreStickyBreakpoint):
+ * inspector/InspectorController.h:
+ * inspector/InspectorState.cpp:
+ (WebCore::InspectorState::InspectorState):
+ (WebCore::InspectorState::getObject):
+ (WebCore::InspectorState::setObject):
+ (WebCore::InspectorState::registerObject):
+ * inspector/InspectorState.h:
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager):
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.BreakpointsSidebarPane):
+ (WebInspector.BreakpointsSidebarPane.prototype._removeListElement):
+ (WebInspector.BreakpointsSidebarPane.prototype._projectChanged):
+ (WebInspector.EventListenerBreakpointsSidebarPane):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCategory):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointAdded):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._projectChanged):
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.reset):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.reset):
+ * inspector/front-end/Settings.js:
+ (WebInspector.Settings.prototype.inspectedURLChanged):
+ (WebInspector.Settings.prototype.get projectId):
+ (WebInspector.Settings.prototype.findSettingForAllProjects):
+ (WebInspector.Settings.prototype._formatProjectKey):
+ * inspector/front-end/inspector.js:
+ (WebInspector.createDOMBreakpointsSidebarPane):
+ (WebInspector.createXHRBreakpointsSidebarPane):
+ (WebInspector.reset):
+ (WebInspector.inspectedURLChanged):
+
+2010-12-15 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Unreviewed, fix compilation warnings after r74066.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::layersUseImage): Place this static function between the
+ same if-def region used in the only place where it's called from.
+
+2010-12-15 Emil Eklund <eae@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Change ContainerNode::willRemoveChildren to not fire mutation events for children
+ added as a result of a mutation event, thereby avoiding an infinite loop.
+ https://bugs.webkit.org/show_bug.cgi?id=51079
+
+ Test: fast/dom/containerNode.html
+
+ * dom/ContainerNode.cpp:
+ (WebCore::willRemoveChildren): Don't fire mutation events for children added during a mutation event.
+
+2010-12-14 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ <rdar://problem/8767193> REGRESSION (r60822): caps-lock-indicator is accepted as a -webkit-appearance value
+ https://bugs.webkit.org/show_bug.cgi?id=51096
+
+ Test: fast/css/appearance-caps-lock-indicator.html
+
+ * css/CSSValueKeywords.in: Moved caps-lock-indicator outside the range of values that should be
+ accepted by the parser, and added comments about maintaining the list of appearance values.
+ * platform/ThemeTypes.h: Moved CapsLockIndicatorPart to the end of the ControlPart enum.
+
+2010-12-14 takano takumi <takano@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ text-combine value names have been changed in the css3 proposal.
+ https://bugs.webkit.org/show_bug.cgi?id=51089
+
+ Changed text-combine's value names from "none|cluster|upright" to "none|horizontal".
+
+ * css/CSSParser.cpp: Changed value name.
+ (WebCore::CSSParser::parseValue):
+ * css/CSSPrimitiveValueMappings.h: Changed value name.
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator TextCombine):
+ * css/CSSValueKeywords.in: No more text-combine specific values needed since
+ "horizontal" is already there.
+ * rendering/style/RenderStyleConstants.h: Changed value name.
+ * rendering/style/StyleRareNonInheritedData.h: Changed textCombine field size.
+
+2010-12-14 Koan-Sin Tan <koansin.tan@gmail.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Kana should be part of CJK Ideographs in WebCore/platform/graphics/Font.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=51012
+
+ Kana should be displayed correctly in vertical text with broken font.
+
+ Test: fast/blockflow/japanese-rl-text-with-broken-font.html
+
+ * platform/graphics/Font.cpp:
+ (WebCore::Font::isCJKIdeographOrSymbol): add katakana, hiraganna, and Halfwidth and Fullwidth Forms
+
+2010-12-14 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Additional RenderStyle support for the text-emphasis CSS property
+ Part of <rdar://problem/7720300> Support the CSS3 text-emphasis property
+ https://bugs.webkit.org/show_bug.cgi?id=48539
+
+ No test possible, since this is just adding a function to be used by upcoming patches.
+
+ * platform/text/CharacterNames.h: Added characters used as emphasis marks.
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::textEmphasisMarkString): Added. Returns a string containing the
+ emphasis mark, or the null AtomicString if there is none.
+ * rendering/style/RenderStyle.h:
+
+2010-12-14 Anton D'Auria <adauria@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Do not allow access to existing HTML5 databases in private browsing
+ mode https://bugs.webkit.org/show_bug.cgi?id=49332
+
+ Test: storage/private-browsing-noread-nowrite.html
+
+ Previously, read-only transactions and private browsing mode were
+ represented by the same SQLStatement and DatabaseAuthorizer states.
+ This patch removes the m_readOnly member variable from SQLStatement and
+ DatabaseAuthorizer, and replaces it with m_permissions whose bit fields
+ are initialized by a DatabaseAuthorizer enum Permissions (ReadWrite,
+ ReadOnly, NoAccess). A read-only transaction sets permissions to
+ ReadOnly, and if !m_database->scriptExecutionContext()->allowDatabaseAccess(),
+ then permissions also set to NoAccess.
+
+ * dom/Document.cpp:
+ (WebCore::Document::allowDatabaseAccess): this method was previously
+ called isDatabaseReadOnly. It checks if private browsing preference is
+ set. This method is renamed because it is used to check if private
+ browsing restricts access to databases.
+ * dom/Document.h:
+ * dom/ScriptExecutionContext.h:
+ * storage/AbstractDatabase.cpp:
+ (WebCore::AbstractDatabase::setAuthorizerPermissions):
+ * storage/AbstractDatabase.h:
+ * storage/DatabaseAuthorizer.cpp:
+ (WebCore::DatabaseAuthorizer::reset):
+ (WebCore::DatabaseAuthorizer::createTable):
+ (WebCore::DatabaseAuthorizer::createTempTable):
+ (WebCore::DatabaseAuthorizer::dropTable):
+ (WebCore::DatabaseAuthorizer::dropTempTable):
+ (WebCore::DatabaseAuthorizer::allowAlterTable):
+ (WebCore::DatabaseAuthorizer::createIndex):
+ (WebCore::DatabaseAuthorizer::createTempIndex):
+ (WebCore::DatabaseAuthorizer::dropIndex):
+ (WebCore::DatabaseAuthorizer::dropTempIndex):
+ (WebCore::DatabaseAuthorizer::createTrigger):
+ (WebCore::DatabaseAuthorizer::createTempTrigger):
+ (WebCore::DatabaseAuthorizer::dropTrigger):
+ (WebCore::DatabaseAuthorizer::dropTempTrigger):
+ (WebCore::DatabaseAuthorizer::createView):
+ (WebCore::DatabaseAuthorizer::createTempView):
+ (WebCore::DatabaseAuthorizer::dropView):
+ (WebCore::DatabaseAuthorizer::dropTempView):
+ (WebCore::DatabaseAuthorizer::createVTable):
+ (WebCore::DatabaseAuthorizer::dropVTable):
+ (WebCore::DatabaseAuthorizer::allowDelete):
+ (WebCore::DatabaseAuthorizer::allowInsert):
+ (WebCore::DatabaseAuthorizer::allowUpdate):
+ (WebCore::DatabaseAuthorizer::allowRead):
+ (WebCore::DatabaseAuthorizer::allowReindex):
+ (WebCore::DatabaseAuthorizer::allowWrite): a new private method that
+ checks if DatabaseAuthorizer is enabled and if it is in ReadOnly or
+ NoAccess mode.
+ (WebCore::DatabaseAuthorizer::setReadOnly):
+ (WebCore::DatabaseAuthorizer::setPermissions):
+ * storage/DatabaseAuthorizer.h:
+ * storage/SQLStatement.cpp:
+ (WebCore::SQLStatement::create):
+ (WebCore::SQLStatement::SQLStatement):
+ (WebCore::SQLStatement::execute):
+ * storage/SQLStatement.h:
+ * storage/SQLStatementSync.cpp:
+ (WebCore::SQLStatementSync::SQLStatementSync):
+ (WebCore::SQLStatementSync::execute):
+ * storage/SQLStatementSync.h:
+ * storage/SQLTransaction.cpp:
+ (WebCore::SQLTransaction::executeSQL):
+ * storage/SQLTransactionSync.cpp:
+ (WebCore::SQLTransactionSync::executeSQL):
+ * workers/WorkerContext.h:
+ (WebCore::WorkerContext::allowDatabaseAccess):
+
+2010-12-02 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Dimitri Glazkov.
+
+ [chromium] Fix drawing of inset box shadows
+ https://bugs.webkit.org/show_bug.cgi?id=41576
+
+ When clearing outside clipped path, the context contains unexpected transform.
+ Fixed to restore original state before the clear.
+
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::clipPathAntiAliased):
+ (WebCore::PlatformContextSkia::applyAntiAliasedClipPaths):
+
+2010-12-14 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Mouse Events Not Received in Run Applet in their Own Process Mode
+ https://bugs.webkit.org/show_bug.cgi?id=51078
+ <rdar://problem/8333491>
+
+ Make sure that Widget::handleEvent is called for applets as well.
+
+ * html/HTMLAppletElement.cpp:
+ (WebCore::HTMLAppletElement::defaultEventHandler):
+ * html/HTMLAppletElement.h:
+
+2010-12-14 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Chris Marrin.
+
+ Parts of page disappear
+ https://bugs.webkit.org/show_bug.cgi?id=41701
+
+ The page has text-indent: -1000000px on an element that becomes
+ compositing, causing a huge tiled layer to get created.
+
+ r63452 aimed to fix this by clamping layer bounds to the viewport,
+ but did not do so for pages running accelerated animations (since
+ we don't want to clamp for transform animations). However, this
+ page only has an opacity animation.
+
+ So refine the logic added for r63452 to only call setCompositingConsultsOverlap(false)
+ for transform animations.
+
+ Test: compositing/geometry/limit-layer-bounds-opacity-transition.html
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::startAnimation): call didStartAcceleratedAnimation()
+ with the appropriate properties, and clean up confusing logic that was used to
+ compute the return value. We want to return true if either property is accelerated.
+
+ (WebCore::RenderLayerBacking::startTransition): Call didStartAcceleratedAnimation()
+ with the appropriate property.
+
+ * rendering/RenderLayerCompositor.h:
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::didStartAcceleratedAnimation): Pass the property in,
+ and only turn off overlap testing if we see a transform animation.
+
+2010-12-14 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ <rdar://problem/8225016> and https://bugs.webkit.org/show_bug.cgi?id=40138
+ Authorization header is sent from an HTTP Auth protected site on redirect
+ Test: http/tests/misc/authentication-sent-to-redirect.html
+
+ Add helper to clear the Auth headers from a resource request:
+ * platform/network/ResourceRequestBase.cpp:
+ (WebCore::ResourceRequestBase::clearHTTPAuthorization):
+ * platform/network/ResourceRequestBase.h:
+
+ Only Mac and Windows CFNetwork ports seem to have this problem, so plug it for them:
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::ResourceHandle::willSendRequest):
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::ResourceHandle::willSendRequest):
+
+2010-12-14 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Chris Marrin.
+
+ Crash in WebCore::GraphicsLayer::paintGraphicsLayerContents() loading this URL
+ https://bugs.webkit.org/show_bug.cgi?id=51072
+
+ Fix a crash when painting a layer whose PlatformCALayer has been deleted,
+ by clearing the PlatformCALayer value on the CALayer when the PlatformCALayer
+ is destroyed.
+
+ I was not able to reduce the page to a simple testcase.
+
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+ (PlatformCALayer::~PlatformCALayer):
+
+2010-12-14 Laszlo Gombos <laszlo.1.gombos@nokia.com>
+
+ Unreviewed, build fix.
+
+ [Qt] Fix the list of header files in WebCore.pro after r74049.
+
+ No new tests as there is no new functionality.
+
+ * WebCore.pro:
+
+2010-12-14 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Focus rings are ugly, rects should be united instead of drawn individually
+ https://bugs.webkit.org/show_bug.cgi?id=49953
+
+ Create a QPainterPath and add to it the focus rects, one at a time.
+ Combine the 2 drawFocusRing functions into one function drawFocusRingForPath.
+
+ Tests: fast/css/focus-ring-detached.html
+ fast/css/focus-ring-multiline.html
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::drawFocusRingForPath):
+ (WebCore::GraphicsContext::drawFocusRing):
+
+2010-12-14 Mark Rowe <mrowe@apple.com>
+
+ Fix the Qt build.
+
+ * xml/XSLTProcessorQt.cpp:
+ (WebCore::XSLTProcessor::transformToString): Make the conversion to QString explicit
+ since QVariant can be constructed from either a QString or a bool.
+
+2010-12-14 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ compositing/masks/simple-composited-mask.html failure
+ https://bugs.webkit.org/show_bug.cgi?id=49746
+
+ Geometry of composited layers with a mask depends on the loading
+ of the mask image, since maskClipRect() is used for the layer bounds.
+
+ So when RenderBox::imageChanged() is called for an image used by
+ a mask on a layer with a composited mask, call the newly-renamed
+ layer->contentsChanged() method. This percolates down into RenderLayerBacking,
+ ending in a layer geometry update.
+
+ Renamed RenderLayer::rendereContentsChanged() to contentsChanged() and added
+ an enum to say what changed, for somewhat more efficient updating.
+
+ Also, when the mask layer gets resized, make sure we mark it as needing
+ display.
+
+ Tested by pixel result of compositing/masks/simple-composited-mask.html
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::didDraw):
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::markContextChanged):
+ (WebCore::WebGLRenderingContext::reshape):
+ * rendering/RenderBox.cpp:
+ (WebCore::layersUseImage):
+ (WebCore::RenderBox::imageChanged):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::imageDimensionsChanged):
+ (WebCore::RenderImage::notifyFinished):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::contentChanged):
+ * rendering/RenderLayer.h:
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
+ (WebCore::RenderLayerBacking::contentChanged):
+ * rendering/RenderLayerBacking.h:
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::updatePlayer):
+
+2010-12-14 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ <http://webkit.org/b/51064> Reproducible crash inside WebCore::MediaPlayerPrivateQTKit::createQTMovie when loading <video>
+
+ We were crashing inside MediaPlayerPrivateQTKit::createQTMovie as we were passing a null URL in
+ to CFNetworkCopyProxiesForURL. This happened because we were null-checking the URL incorrectly.
+
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
+ (WebCore::MediaPlayerPrivateQTKit::resumeLoad): Explicitly test for a null string.
+
+2010-12-14 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=50970
+
+ It's arguably a bug, but we don't let inline flow layers paint floating
+ descendants. The containing block of the inline flow paints them instead.
+ However our shouldPaint logic has always been flawed and has turned off propagation
+ of painting when an inline flow layer is enclosing the float.
+
+ Change enclosingSelfPaintingLayer to enclosingFloatPaintingLayer to be more precise
+ and for now limit it to RenderBoxes.
+
+ Added fast/block/float/floatstack.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::addOverhangingFloats):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::enclosingFloatPaintingLayer):
+ * rendering/RenderBox.h:
+ * rendering/RenderObject.cpp:
+ * rendering/RenderObject.h:
+
+2010-12-14 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Move asynchronous event dispatching out of Document
+ https://bugs.webkit.org/show_bug.cgi?id=49785
+
+ Move asynchonous event code out of Document and into a standalone
+ EventQueue class (which supports async events for both regular nodes
+ and the window object).
+
+ No new tests necessary, since no new functionality is exposed (existing
+ layout tests pass).
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::enqueueWindowEvent):
+ (WebCore::Document::enqueueHashchangeEvent):
+ * dom/DOMAllInOne.cpp:
+ (WebCore::Document::eventQueue):
+ * dom/Document.h:
+ * dom/EventQueue.cpp: Added.
+ (WebCore::EventQueue::EventQueue):
+ (WebCore::EventQueue::enqueueEvent):
+ (WebCore::EventQueue::pendingEventTimerFired):
+ (WebCore::EventQueue::dispatchEvent):
+ * dom/EventQueue.h: Added.
+ * storage/StorageEventDispatcher.cpp:
+ (WebCore::StorageEventDispatcher::dispatch):
+
+2010-12-14 Kyounga Ra <kyounga.ra@gmail.com>
+
+ Reviewed by Adam Barth.
+
+ <noscript> is rendered with enabled XHTMLMP.
+ https://bugs.webkit.org/show_bug.cgi?id=48493
+
+ * html/HTMLElement.cpp:
+ (WebCore::HTMLElement::rendererIsNeeded):
+
+2010-12-14 Laszlo Gombos <laszlo.1.gombos@nokia.com>
+
+ Reviewed by Eric Seidel.
+
+ [Qt] [Symbian] Do not use pkg-config on Symbian as it is not supported
+ https://bugs.webkit.org/show_bug.cgi?id=50231
+
+ No new tests as there is no new functionality.
+
+ Guard CONFIG+=link_pkgconfig with !symbian.
+
+ * WebCore.pro:
+
+2010-12-14 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r74040.
+ http://trac.webkit.org/changeset/74040
+ https://bugs.webkit.org/show_bug.cgi?id=51050
+
+ Breaks 2d.shadow.canvas.transparent.2 and
+ 2d.shadow.image.transparent.2 (Requested by helder on
+ #webkit).
+
+ * platform/graphics/ContextShadow.cpp:
+ (WebCore::ContextShadow::ContextShadow):
+ (WebCore::ContextShadow::calculateLayerBoundingRect):
+ * platform/graphics/ContextShadow.h:
+ (WebCore::ContextShadow::offset):
+ * platform/graphics/qt/ContextShadowQt.cpp:
+ (WebCore::ContextShadow::beginShadowLayer):
+ (WebCore::ContextShadow::endShadowLayer):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ (WebCore::GraphicsContext::setPlatformShadow):
+
+2010-12-14 Nate Chapin <japhet@chromium.org>
+
+ Unreviewed, fixing qt (hopefully for real this time).
+
+ Remove a couple more references to loader.h.
+
+ * xml/XSLStyleSheetQt.cpp:
+ * xml/XSLTProcessorQt.cpp:
+
+2010-12-14 Nate Chapin <japhet@chromium.org>
+
+ Unreviewed, fix mac and qt builds.
+
+ Missed a couple of references to loader.h and
+ improperly added CachedResourceRequest.h to
+ WebCore.xcodeproj.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/android/TemporaryLinkStubs.cpp:
+ * platform/qt/TemporaryLinkStubsQt.cpp:
+
+2010-12-14 Nate Chapin <japhet@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Rename Loader to CachedResourceRequest.
+ https://bugs.webkit.org/show_bug.cgi?id=50848
+
+ No new tests, rename only.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSStyleSelector.cpp:
+ * loader/cache/CachedCSSStyleSheet.cpp:
+ * loader/cache/CachedFont.cpp:
+ * loader/cache/CachedResource.cpp:
+ (WebCore::CachedResource::setRequest):
+ * loader/cache/CachedResource.h:
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::load):
+ (WebCore::CachedResourceLoader::loadDone):
+ (WebCore::CachedResourceLoader::cancelRequests):
+ * loader/cache/CachedResourceLoader.h:
+ * loader/cache/CachedResourceRequest.cpp: Copied from WebCore/loader/loader.cpp.
+ * loader/cache/CachedResourceRequest.h: Copied from WebCore/loader/loader.h.
+ * loader/loader.cpp: Removed.
+ * loader/loader.h: Removed.
+ * xml/XSLStyleSheetLibxslt.cpp:
+ * xml/XSLTProcessor.cpp:
+ * xml/XSLTProcessorLibxslt.cpp:
+
+2010-12-14 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46422
+
+ Rename pageHeight variables and members in WebCore to pageLogicalHeight in preparation for
+ making printing and pagination work with vertical writing modes.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::forceLayoutForPagination):
+ * rendering/LayoutState.cpp:
+ (WebCore::LayoutState::LayoutState):
+ (WebCore::LayoutState::clearPaginationInformation):
+ * rendering/LayoutState.h:
+ (WebCore::LayoutState::LayoutState):
+ (WebCore::LayoutState::isPaginated):
+ (WebCore::LayoutState::pageLogicalHeight):
+ (WebCore::LayoutState::pageLogicalHeightChanged):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::layoutColumns):
+ (WebCore::RenderBlock::nextPageTop):
+ (WebCore::RenderBlock::applyBeforeBreak):
+ (WebCore::RenderBlock::applyAfterBreak):
+ (WebCore::RenderBlock::adjustForUnsplittableChild):
+ (WebCore::RenderBlock::adjustLinePositionForPagination):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computeLogicalHeight):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutBlock):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::layout):
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::layout):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::layoutRows):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::RenderView):
+ (WebCore::RenderView::layout):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::pageLogicalHeight):
+ (WebCore::RenderView::setPageLogicalHeight):
+
+2010-12-14 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Fix GTK build by adding source files that were accidentally skipped in
+ r74044. Sorry!
+
+ * GNUmakefile.am: Added SliderThumbElement.
+
+2010-12-14 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=50974
+ getComputedStyle() returns wrong values for zoomed elements when
+ display is none
+ -and corresponding-
+ <rdar://problem/8522731>
+
+ If there is no renderer but the RenderStyle's value is a fixed
+ length, send it through zoomAdjustedPixelValue(). There's not much
+ we can do for other length types without a renderer.
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::zoomAdjustedPixelValueForLength):
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+
+2010-12-13 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by David Levin.
+
+ Move SliderThumbElement into its own file.
+ https://bugs.webkit.org/show_bug.cgi?id=50973
+
+ No change in behavior, so no tests.
+
+ * Android.mk: Added SliderThumbElement.
+ * CMakeLists.txt: Ditto.
+ * WebCore.gyp/WebCore.gyp: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto,
+ * html/shadow/SliderThumbElement.cpp: Added.
+ * html/shadow/SliderThumbElement.h: Added.
+ * rendering/RenderSlider.cpp: Removed code that was moved into
+ SliderThumbElement.
+
+2010-12-13 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Adam Barth.
+
+ https://bugs.webkit.org/show_bug.cgi?id=50953
+ DNS Prefetch should be an opt-in feature
+
+ No new tests, can't test DNS.
+
+ * dom/Document.h: Made initDNSPrefetch public, since Page now calls it.
+
+ * page/Page.cpp: (WebCore::Page::dnsPrefetchingStateChanged):
+ * page/Page.h:
+ Documents cache the value of this setting, so they need to be notified of changes. In particular,
+ the first document in a page is created before settings are applied.
+
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings): Changed default to false.
+ (WebCore::Settings::setDNSPrefetchingEnabled): Notify the page about the change.
+
+2010-12-14 Helder Correia <helder@sencha.com>
+
+ Reviewed by Ariya Hidayat.
+
+ [Qt] Canvas shadow offset should not be affected by any transformation
+ https://bugs.webkit.org/show_bug.cgi?id=50422
+
+ On a canvas context, shadows are currently affected by all
+ transformations except scaling. According to the spec:
+ http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#shadows
+
+ "The shadowOffsetX and shadowOffsetY attributes specify the distance
+ that the shadow will be offset in the positive horizontal and positive
+ vertical distance respectively. Their values are in coordinate space
+ units. They are not affected by the current transformation matrix."
+
+ NOTE: this applies only to canvas, not to box shadows.
+
+ Test: fast/canvas/canvas-transforms-fillRect-shadow.html
+
+ * platform/graphics/ContextShadow.cpp:
+ (WebCore::ContextShadow::ContextShadow):
+ (WebCore::ContextShadow::calculateLayerBoundingRect):
+ * platform/graphics/ContextShadow.h:
+ (WebCore::ContextShadow::setShadowsIgnoreTransforms):
+ (WebCore::ContextShadow::shadowsIgnoreTransforms):
+ (WebCore::ContextShadow::offset):
+ * platform/graphics/qt/ContextShadowQt.cpp:
+ (WebCore::ContextShadow::beginShadowLayer):
+ (WebCore::ContextShadow::endShadowLayer):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::mustUseContextShadow):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ (WebCore::GraphicsContext::setPlatformShadow):
+
+2010-12-14 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Rule data not updated in Styles pane after stylesheet gets reverted
+ https://bugs.webkit.org/show_bug.cgi?id=51034
+
+ * inspector/front-end/CSSStyleModel.js:
+ (WebInspector.CSSStyleModel.prototype._onRevert):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel):
+ (WebInspector.ElementsPanel.prototype._metricsPaneEdited):
+ (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
+ (WebInspector.ElementsPanel.prototype._styleSheetChanged):
+
+2010-12-14 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Avoid GraphicsContext save/restore in Image::drawPattern()
+ https://bugs.webkit.org/show_bug.cgi?id=51037
+
+ It's enough to restore the CompositeOperator after drawing.
+
+ * platform/graphics/qt/ImageQt.cpp:
+ (WebCore::Image::drawPattern):
+
+2010-12-14 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ <rdar://problem/8763862>
+ r72017 used incorrect compiler conditional.
+
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
+ (WebCore::MediaPlayerPrivateQTKit::createQTMovie):
+
+2010-12-14 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Simplify context-menu handling code
+ https://bugs.webkit.org/show_bug.cgi?id=49658
+
+ * platform/ContextMenuItem.h:
+ * platform/gtk/ContextMenuGtk.cpp:
+ (WebCore::ContextMenu::appendItem):
+ * platform/gtk/ContextMenuItemGtk.cpp:
+ (WebCore::ContextMenuItem::ContextMenuItem):
+ (WebCore::ContextMenuItem::~ContextMenuItem):
+ (WebCore::ContextMenuItem::releasePlatformDescription):
+ (WebCore::ContextMenuItem::type):
+ (WebCore::ContextMenuItem::setType):
+ (WebCore::ContextMenuItem::action):
+ (WebCore::ContextMenuItem::setAction):
+ (WebCore::ContextMenuItem::title):
+ (WebCore::ContextMenuItem::setTitle):
+ (WebCore::ContextMenuItem::platformSubMenu):
+ (WebCore::ContextMenuItem::setSubMenu):
+ (WebCore::ContextMenuItem::setChecked):
+ (WebCore::ContextMenuItem::setEnabled):
+
+2010-12-14 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [Gtk] Implement STATE_FOCUSED, STATE_FOCUSABLE, and corresponding events for text objects
+ https://bugs.webkit.org/show_bug.cgi?id=27048
+
+ Handle focus change for text objects based in caret changes.
+
+ As text objects (such as paragraphs) seem not to accept focus in
+ WebCore in the same way other objects (text controls) do, a
+ Gtk-specific workaround is needed to expose this states and the
+ related events to ATK-based assistive technologies.
+
+ Test: platform/gtk/accessibility/caret-browsing-text-focus.html
+
+ Ensure that text objects are exposed with the ATK_STATE_FOCUSABLE
+ state, and that the ATK_STATE_FOCUSED state is added to those
+ text objects containing the currently active caret selection.
+
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (selectionBelongsToObject): Moved upwards to use it from
+ the new isTextWithCaret() function.
+ (isTextWithCaret): New, checks whether an accessibility object
+ represents a text object with the current caret selection on it.
+ (setAtkStateSetFromCoreObject): Add the ATK_STATE_FOCUSED state
+ when also when isTextWithCaret(coreObject) returns true.
+ (webkit_accessible_ref_state_set): Add the ATK_STATE_FOCUSABLE
+ state to text objects and those with the ATK_ROLE_PARAGRAPH role.
+ (webkit_accessible_text_get_n_selections): Optimize return expression.
+
+ Make sure the proper events associated to a change of focus are
+ emitted, based on caret changes across different accessibility
+ objects. Also, refactored the code in more manageable and
+ understandable helper functions.
+
+ * editing/gtk/SelectionControllerGtk.cpp:
+ (WebCore::emitTextSelectionChange): New, includes the specific
+ code formerly placed in notifyAccessibilityForSelectionChange() to
+ emit the 'text-caret-moved' and 'text-selection-change' signals.
+ (WebCore::maybeEmitTextFocusChange): New, takes care of emitting
+ the 'focus-event' and 'state-changed::focused' signals when
+ needed, that is, when a change in the selection happens across
+ different accessible objects.
+ (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
+ Refactored some code here, by using the new helper functions.
+
+2010-12-14 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: regroup Inspector.idl entries.
+ Just for better visibility.
+
+ https://bugs.webkit.org/show_bug.cgi?id=51025
+
+ * inspector/Inspector.idl:
+
+2010-12-14 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Reverted stylesheet breaks style data
+ https://bugs.webkit.org/show_bug.cgi?id=51030
+
+ * inspector/InspectorStyleSheet.cpp:
+ (WebCore::InspectorStyleSheet::reparseStyleSheet):
+
+2010-12-14 Mads Ager <ager@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ [V8] Reflected unsigned attributes should be in the range [0, 2^31)
+ https://bugs.webkit.org/show_bug.cgi?id=51023
+
+ Follow the changes made to CodeGeneratorJS.pm to return 0 for
+ reflected unsigned attributes that are outside the allowed range.
+ See https://bugs.webkit.org/show_bug.cgi?id=50472
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+
+2010-12-14 Charlie Reis <creis@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Remove stale include of Document.h in V8DOMWrapper.h
+ https://bugs.webkit.org/show_bug.cgi?id=50607
+
+ We no longer need to include Document.h or V8DOMMap.h in
+ V8DOMWrapper. Removing them to avoid dependencies.
+
+ * bindings/v8/V8DOMWrapper.h:
+
+2010-12-14 Julien Chaffraix <jchaffraix@codeaurora.org>
+
+ Reviewed by Darin Adler.
+
+ Test for: EventSource fails to connect if Content-Type header has a charset attribute
+ https://bugs.webkit.org/show_bug.cgi?id=45372
+
+ Tests: http/tests/eventsource/eventsource-content-type-charset.html
+ http/tests/eventsource/eventsource-content-type-text-event-stream-foobar.html
+
+ * page/EventSource.cpp:
+ (WebCore::EventSource::didReceiveResponse): Use the mimeType instead of the Content-Type
+ header directly. This makes the detection of the "text/stream" mimeType more accurate.
+
+2010-12-14 Pieter Senster <psenster@google.com>
+
+ Reviewed by Dirk Schulze.
+
+ Incorporate the channel offsets from the ColorMatrix filter in the filter calculation
+ https://bugs.webkit.org/show_bug.cgi?id=50682
+
+ Test: svg/filters/feColorMatrix-offset.svg
+
+ * platform/graphics/filters/FEColorMatrix.cpp:
+ (WebCore::matrix):
+
+2010-12-14 Jarred Nicholls <jarred@sencha.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Qt's Clipboard::files() implementation for HTML5 Drag/Drop (DataTransfer)
+
+ No new tests. Run tests manually until DRT is updated w/ beginDragWithFiles.
+
+ * platform/qt/ClipboardQt.cpp:
+ (WebCore::ClipboardQt::files):
+
+2010-12-13 Antonio Gomes <agomes@rim.com>
+
+ Rubber stamped by Daniel Bates.
+
+ Spatial Navigation: code clean up (part V)
+ https://bugs.webkit.org/show_bug.cgi?id=50666
+
+ No new tests needed.
+
+ * page/SpatialNavigation.cpp:
+ (WebCore::distanceDataForNode): Made 'FocusCandidate current' const since it is not
+ supposed to change within this function.
+ * page/SpatialNavigation.h: Ditto.
+
+2010-12-13 takano takumi <takano@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ GlyphPage::fill() is slow on vertical writing (Mac)
+ https://bugs.webkit.org/show_bug.cgi?id=50865
+
+ No test. Just a performance improvement.
+
+ * platform/graphics/Font.cpp:
+ (WebCore::Font::isCJKIdeograph): Now this only checks pure ideographs (Hanji).
+ (WebCore::Font::isCJKIdeographOrSymbol): Added this for Hanji and Hanji related symbols.
+ * platform/graphics/Font.h:
+ * platform/graphics/FontFastPath.cpp:
+ (WebCore::Font::glyphDataForCharacter): Changed to call isCJKIdeographOrSymbol() instead of isCJKIdeograph().
+ * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
+ (WebCore::shouldUseCoreText): This tests if GlyphPage::fill() should use CoreText or not.
+ For vertical writing, if the current page contains only ideographs, we go CG path.
+ (WebCore::GlyphPage::fill): Made to call shouldUseCoreText() and switch code path.
+
+2010-12-13 Antonio Gomes <agomes@rim.com>
+
+ Reviewed by Daniel Bates.
+
+ Spatial Navigation: code clean up (part IV)
+ https://bugs.webkit.org/show_bug.cgi?id=50666
+
+ Avoid calling canScrollInDirection more than necessary.
+
+ No new tests needed.
+
+ * page/FocusController.cpp:
+ (WebCore::FocusController::advanceFocusDirectionallyInContainer): Moved the call to canScrollInDirection()
+ to within the scrollInDirection().
+ * page/SpatialNavigation.cpp: Removed the assertion to canScrollingDirection function.
+ (WebCore::scrollInDirection):
+
+2010-12-13 Antonio Gomes <agomes@rim.com>
+
+ Reviewed by Daniel Bates.
+
+ Spatial Navigation: code clean up (part III)
+ https://bugs.webkit.org/show_bug.cgi?id=50666
+
+ No new tests needed.
+
+ * page/SpatialNavigation.h: Added FocusCandidate::isFrameOwnerElement and
+ WebCore::frameOwnerElement helper functions.
+ (WebCore::FocusCandidate::isFrameOwnerElement): Returns true if the Node pointer
+ wrapped by FocusCandidate is an instance of HTMLFrameOwnerElement. Returns false
+ otherwise.
+ * page/SpatialNavigation.cpp:
+ (WebCore::frameOwnerElement): Returns the HTMLFrameOwnerElement associated with
+ the FocusCandidate if appropriate.
+ * page/FocusController.cpp:
+ (WebCore::updateFocusCandidateIfNeeded): Make use of newly added frameOwnerElement() helper.
+ (WebCore::FocusController::advanceFocusDirectionallyInContainer): Ditto.
+
+2010-12-13 Mike Lawther <mikelawther@chromium.org>
+
+ Reviewed by Daniel Bates.
+
+ [skia] ignore transform for canvas shadows
+ https://bugs.webkit.org/show_bug.cgi?id=50437
+
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::setPlatformShadow):
+
+2010-12-13 Dai Mikurube <dmikurube@google.com>
+
+ Reviewed by Kent Tamura.
+
+ ValidityState's exposed functions should check if willValidate() is true before all
+ https://bugs.webkit.org/show_bug.cgi?id=50617
+
+ Added checking willValidate() to exposed functions. And modified willValidate() behavior
+ for <button type="submit"> and <input type="submit"> to return true if not disabled and
+ not readonly.
+
+ * html/HTMLButtonElement.cpp:
+ (WebCore::HTMLButtonElement::parseMappedAttribute): Added calling setNeedsWillValidateCheck() to refresh willValidate() after changing its type.
+ (WebCore::HTMLButtonElement::recalcWillValidate): Added to return true if not disabled and not readonly when type="submit". It's to be compliant to the spec.
+ * html/HTMLButtonElement.h:
+ * html/SubmitInputType.cpp:
+ (WebCore::SubmitInputType::supportsValidation): Removed it to enable willValidate() for <input> when type="submit". It's to be compliant to the spec.
+ (WebCore::SubmitInputType::supportsRequired): Added it to reject required attributes though validation is available.
+ * html/SubmitInputType.h:
+ * html/ValidityState.cpp: Added checking willValidate().
+ (WebCore::ValidityState::typeMismatch):
+ (WebCore::ValidityState::patternMismatch):
+ (WebCore::ValidityState::tooLong):
+ (WebCore::ValidityState::rangeUnderflow):
+ (WebCore::ValidityState::rangeOverflow):
+ (WebCore::ValidityState::stepMismatch):
+ (WebCore::ValidityState::customError):
+ * html/ValidityState.h:
+
+2010-12-13 Noel Gordon <noel.gordon@gmail.com>
+
+ Reviewed by David Levin.
+
+ [chromium] Upstream skia/ImageBuffer.cpp routine mulDiv255Ceil()
+ https://bugs.webkit.org/show_bug.cgi?id=50545
+
+ Skia has rolled, replace uses of mulDiv255Ceil with SkMulDiv255Ceiling.
+
+ No new tests, no change in behaviour.
+
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::putImageData):
+
+2010-12-13 Gavin Peters <gavinp@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Re land Purpose after bad merge
+ https://bugs.webkit.org/show_bug.cgi?id=51000
+
+ * loader/loader.cpp:
+ (WebCore::Loader::load):
+
+2010-12-13 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ <rdar://problem/8763696> REGRESSION (r72173): Fallback fonts’ vertical metrics aren’t accounted for even when line-height is unspecified
+ https://bugs.webkit.org/show_bug.cgi?id=50979
+
+ Many test results updated.
+
+ * rendering/InlineFlowBox.cpp: Reinstated the code that updates affectsAscent and
+ affectsDescent in the used-fonts code path. Renamed variables for clarity. Added
+ a check whether usedFonts is empty (which it might be if there is glyph overflow
+ but no fallback) as an optimization.
+
+2010-12-13 Mark Rowe <mrowe@apple.com>
+
+ Rubber-stamped by Jon Honeycutt.
+
+ Remove unnecessary include of Switch module.
+
+ There are no switch statements in this file.
+
+ * dom/make_names.pl:
+
+2010-12-13 Emil Eklund <eae@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Change SelectionController::setFocusedNodeIfNeeded to traverse the DOM
+ tree instead of the render tree.
+ https://bugs.webkit.org/show_bug.cgi?id=50989
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::setFocusedNodeIfNeeded):
+ Walk up DOM/hosted tree rather than render tree and remove FIXME comment
+ that does't apply (SelectionController and EventHandler needs different
+ checks).
+
+2010-12-13 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ AX: aria-invalid should be supported.
+ https://bugs.webkit.org/show_bug.cgi?id=50573
+
+ Test: platform/mac/accessibility/aria-invalid.html
+
+ * accessibility/AXObjectCache.h:
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::AccessibilityObject::invalidStatus):
+ * accessibility/AccessibilityObject.h:
+ * accessibility/chromium/AXObjectCacheChromium.cpp
+ (WebCore::AXObjectCache::postPlatformNotification):
+ * accessibility/mac/AXObjectCacheMac.mm:
+ (WebCore::AXObjectCache::postPlatformNotification):
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+ * dom/Element.cpp:
+ (WebCore::Element::updateAfterAttributeChanged):
+ * html/HTMLAttributeNames.in:
+
+2010-12-13 Joone Hur <joone@kldp.org>
+
+ Reviewed by Eric Seidel.
+
+ WebKit fails to compile when building with WML support enabled
+ https://bugs.webkit.org/show_bug.cgi?id=42943
+
+ Use TextPosition instead of lineNumber() and columNumber().
+
+ No new tests are added, because this is just a build fix.
+
+ * dom/XMLDocumentParser.h: Make lineNumber() private.
+ * wml/WMLErrorHandling.cpp:
+ (WebCore::reportWMLError): Use TextPosition instead of lineNumber() and columnNumber().
+
+2010-12-13 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ AX: lists and list boxes need different attributes
+ https://bugs.webkit.org/show_bug.cgi?id=50978
+
+ Separate out the attributes being returned for lists (<ul>) and listboxes (<select multiple>).
+
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
+
+2010-12-13 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=50963
+
+ REGRESSION: Scrolling nested iframes is messed up on platforms that use the cross-platform ScrollView.
+
+ The selfClipRect and childrenClipRect methods of RenderLayer were incorrectly relying on the bounding box
+ of the root layer. This bounding box was only coincidentally incorporating overflow as part of the
+ RenderLayer's bounds. Since I fixed the RenderLayer bounds to not include layout overflow any longer,
+ this check is now exposed as incorrect. Use the entire document size when computing layer clip
+ rects.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::childrenClipRect):
+ (WebCore::RenderLayer::selfClipRect):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::documentRect):
+
+2010-12-13 Simon Fraser <simon.fraser@apple.com>
+
+ GraphicsContextPrivate.h was removed. Nuke it from the project.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-12-13 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Antti Koivisto.
+
+ HTMLMediaElement::endedPlayback should not return true if duration is zero
+ https://bugs.webkit.org/show_bug.cgi?id=50962
+
+ (WebCore::HTMLMediaElement::endedPlayback): Don't return true when duration is zero because a
+ media file can't play if it has no duration, therefore it can't have ended playback.
+
+2010-12-13 Brent Fulgham <bfulgham@webkit.org>
+
+ Unreviewed build fix after r73840.
+
+ * WebCore.vcproj/WebCoreGeneratedCairo.vsprops: Update property file
+ to pass three arguments to build-generated-files.sh, just like
+ the official Apple port.
+
+2010-12-13 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Make sure the defaultSpaceEventHandler does logical scrolling.
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::defaultSpaceEventHandler):
+
+2010-12-13 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=50591 Adopt new CG API for canvas
+
+ No new tests necessary.
+
+ * Configurations/WebCore.xcconfig: Added IOSurface framework link.
+ * html/canvas/CanvasRenderingContext2D.cpp: Used IOSurface def. instead.
+ * platform/graphics/ImageBuffer.h: Pushed renderingMode down into ctor.
+ * platform/graphics/cairo/ImageBufferCairo.cpp:
+ * platform/graphics/cg/ImageBufferCG.cpp:
+ * platform/graphics/haiku/ImageBufferHaiku.cpp:
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ * platform/graphics/wince/ImageBufferWinCE.cpp:
+ * platform/graphics/wx/ImageBufferWx.cpp:
+
+2010-12-13 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r73923.
+ http://trac.webkit.org/changeset/73923
+ https://bugs.webkit.org/show_bug.cgi?id=50944
+
+ Broke editing/selection/extend-selection-home-end.html on non-
+ mac platforms. Looks like a real bug. (Requested by ojan on
+ #webkit).
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::positionForPlatform):
+ (WebCore::SelectionController::modifyExtendingForward):
+
+2010-12-13 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=48545, Home/End, PageUp/PageDwn should respect writing-mode.
+
+ Add logical scrolling to WebCore. It basically mirrors physical scrolling but works in abstract logical
+ directions and only converts to physical when it's time to attempt the scroll.
+
+ Also fixed bugs in scrollRecursively and logicalScrollRecursively where overflow sections in containing
+ frames got skipped over.
+
+ Made the resetting of the inline axis scroll position on Home/End Mac-specific for overflow sections.
+
+ * WebCore.exp.in:
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::logicalScrollOverflow):
+ (WebCore::EventHandler::scrollRecursively):
+ (WebCore::EventHandler::logicalScrollRecursively):
+ * page/EventHandler.h:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::isVerticalDocument):
+ (WebCore::FrameView::isFlippedDocument):
+ * page/FrameView.h:
+ * platform/ScrollTypes.h:
+ (WebCore::logicalToPhysical):
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::scroll):
+ (WebCore::ScrollView::logicalScroll):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::isVerticalDocument):
+ (WebCore::ScrollView::isFlippedDocument):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::logicalScroll):
+ * rendering/RenderBox.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::scroll):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::logicalScroll):
+ * rendering/RenderListBox.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::logicalScroll):
+ * rendering/RenderTextControlSingleLine.h:
+
+2010-12-13 Yury Semikhatsky <yurys@chromium.org>
+
+ Unreviewed. Rollout 73914, 73915, 73917, 73920 and 73921.
+
+ REGRESSION(r73914): "Chromium page_cycler_morejs fails" (Requested by yurys on #webkit).
+ https://bugs.webkit.org/show_bug.cgi?id=50950
+
+ * Android.jscbindings.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.order:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSBindingsAllInOne.cpp:
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::reportException):
+ * bindings/js/JSWorkerContextErrorHandler.cpp: Renamed from WebCore/bindings/js/JSErrorHandler.cpp.
+ (WebCore::JSWorkerContextErrorHandler::JSWorkerContextErrorHandler):
+ (WebCore::JSWorkerContextErrorHandler::~JSWorkerContextErrorHandler):
+ (WebCore::JSWorkerContextErrorHandler::handleEvent):
+ * bindings/js/JSWorkerContextErrorHandler.h: Renamed from WebCore/bindings/js/JSErrorHandler.h.
+ (WebCore::JSWorkerContextErrorHandler::create):
+ (WebCore::createJSWorkerContextErrorHandler):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bindings/scripts/CodeGeneratorV8.pm:
+ * bindings/v8/V8ConsoleMessage.cpp:
+ (WebCore::V8ConsoleMessage::dispatchNow):
+ (WebCore::V8ConsoleMessage::handler):
+ * bindings/v8/V8ConsoleMessage.h:
+ * bindings/v8/V8WindowErrorHandler.cpp: Removed.
+ * bindings/v8/V8WindowErrorHandler.h: Removed.
+ * bindings/v8/WorkerContextExecutionProxy.cpp:
+ (WebCore::v8MessageHandler):
+ * bindings/v8/WorkerScriptController.cpp:
+ (WebCore::WorkerScriptController::evaluate):
+ * dom/Document.cpp:
+ (WebCore::Document::reportException):
+ (WebCore::Document::addMessage):
+ * dom/Document.h:
+ * dom/ErrorEvent.cpp:
+ * dom/ErrorEvent.h:
+ * dom/Event.cpp:
+ * dom/Event.h:
+ * dom/ScriptExecutionContext.cpp:
+ (WebCore::ScriptExecutionContext::ScriptExecutionContext):
+ * dom/ScriptExecutionContext.h:
+ * websockets/WebSocket.cpp:
+ (WebCore::WebSocket::connect):
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::didOpen):
+ (WebCore::WebSocketChannel::appendToBuffer):
+ * websockets/WebSocketHandshake.cpp:
+ (WebCore::WebSocketHandshake::readServerHandshake):
+ (WebCore::WebSocketHandshake::readStatusLine):
+ (WebCore::WebSocketHandshake::readHTTPHeaders):
+ (WebCore::WebSocketHandshake::checkResponseHeaders):
+ * workers/DefaultSharedWorkerRepository.cpp:
+ (WebCore::postExceptionTask):
+ (WebCore::postConsoleMessageTask):
+ * workers/WorkerContext.cpp:
+ (WebCore::WorkerContext::WorkerContext):
+ (WebCore::WorkerContext::reportException):
+ (WebCore::WorkerContext::addMessage):
+ * workers/WorkerContext.h:
+ * workers/WorkerMessagingProxy.cpp:
+ (WebCore::WorkerExceptionTask::performTask):
+ (WebCore::postConsoleMessageTask):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::reportUnsafeUsage):
+
+2010-12-13 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ https://bugs.webkit.org/show_bug.cgi?id=50758
+ <rdar://problem/8722094>
+ Defer loading print stylesheets
+
+ - Make preload scanner skip stylesheets with non-screen media types.
+ - Make it possible to specify non-default load priority from the client.
+ - Use this mechanism to load print stylesheets using very low priority so they get loaded after everything else.
+ - Move default priority code from Loader to CachedResource.
+ - Move ResourceLoadScheduler::Priority enum to a separate file (as ResourceLoadPriority).
+ - Add a way to make ResourceLoadScheduler load resources one at the time so the above functionality can be tested reliably.
+
+ Tests: http/tests/local/link-stylesheet-load-order-preload.html
+ http/tests/local/link-stylesheet-load-order.html
+
+ * WebCore.exp.in:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSImageValue.cpp:
+ (WebCore::CSSImageValue::cachedImage):
+ * html/HTMLLinkElement.cpp:
+ (WebCore::HTMLLinkElement::process):
+ * html/parser/HTMLPreloadScanner.cpp:
+ (WebCore::HTMLNames::PreloadTask::PreloadTask):
+ (WebCore::HTMLNames::PreloadTask::processAttributes):
+ (WebCore::HTMLNames::PreloadTask::relAttributeIsStyleSheet):
+ (WebCore::HTMLNames::PreloadTask::linkMediaAttributeIsScreen):
+ (WebCore::HTMLNames::PreloadTask::preload):
+ * loader/DocumentThreadableLoader.cpp:
+ (WebCore::DocumentThreadableLoader::loadRequest):
+ * loader/ResourceLoadPriority.h: Added.
+ * loader/ResourceLoadScheduler.cpp:
+ (WebCore::ResourceLoadScheduler::ResourceLoadScheduler):
+ (WebCore::ResourceLoadScheduler::scheduleSubresourceLoad):
+ (WebCore::ResourceLoadScheduler::schedulePluginStreamLoad):
+ (WebCore::ResourceLoadScheduler::scheduleLoad):
+ (WebCore::ResourceLoadScheduler::servePendingRequests):
+ (WebCore::ResourceLoadScheduler::HostInformation::~HostInformation):
+ (WebCore::ResourceLoadScheduler::HostInformation::schedule):
+ (WebCore::ResourceLoadScheduler::HostInformation::remove):
+ (WebCore::ResourceLoadScheduler::HostInformation::hasRequests):
+ (WebCore::ResourceLoadScheduler::HostInformation::limitRequests):
+ * loader/ResourceLoadScheduler.h:
+ (WebCore::ResourceLoadScheduler::isSerialLoadingEnabled):
+ (WebCore::ResourceLoadScheduler::setSerialLoadingEnabled):
+ (WebCore::ResourceLoadScheduler::HostInformation::requestsPending):
+ * loader/cache/CachedResource.cpp:
+ (WebCore::defaultPriorityForResourceType):
+ (WebCore::CachedResource::CachedResource):
+ * loader/cache/CachedResource.h:
+ (WebCore::CachedResource::loadPriority):
+ (WebCore::CachedResource::setLoadPriority):
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::requestCSSStyleSheet):
+ (WebCore::CachedResourceLoader::requestResource):
+ (WebCore::CachedResourceLoader::requestPreload):
+ * loader/cache/CachedResourceLoader.h:
+ * loader/cache/MemoryCache.cpp:
+ (WebCore::MemoryCache::requestResource):
+ * loader/cache/MemoryCache.h:
+ * loader/loader.cpp:
+ (WebCore::Loader::load):
+
+2010-12-13 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Build fix for r73927
+ https://bugs.webkit.org/show_bug.cgi?id=50946
+
+ Reverting CSSCanvasValue::canvasDestroyed to its code before r73927
+ because it's breaking the build and I changed it only because it
+ appeared redunudant after r73927.
+
+ No behavior changed so no new tests needed.
+
+ * css/CSSCanvasValue.cpp:
+ (WebCore::CSSCanvasValue::canvasDestroyed):
+
+2010-12-13 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by nobody, build fix.
+
+ Unlinking IOSurface framework from xcodeproj.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-12-13 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ HTMLCanvasElement should handle multiple observers.
+ https://bugs.webkit.org/show_bug.cgi?id=50899
+
+ Test: fast/canvas/canvas-bg-multiple-removal.html
+
+ * css/CSSCanvasValue.cpp:
+ (WebCore::CSSCanvasValue::~CSSCanvasValue):
+ (WebCore::CSSCanvasValue::canvasDestroyed):
+ (WebCore::CSSCanvasValue::element):
+ * html/HTMLCanvasElement.cpp:
+ (WebCore::HTMLCanvasElement::HTMLCanvasElement):
+ (WebCore::HTMLCanvasElement::~HTMLCanvasElement):
+ (WebCore::HTMLCanvasElement::addObserver):
+ (WebCore::HTMLCanvasElement::removeObserver):
+ (WebCore::HTMLCanvasElement::didDraw):
+ (WebCore::HTMLCanvasElement::reset):
+ * html/HTMLCanvasElement.h:
+
+2010-12-13 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ [Chromium] canvas/philip/tests/2d.missingargs.html hangs on Snow Leopard
+ https://bugs.webkit.org/show_bug.cgi?id=50841
+
+ Test: fast/canvas/strokeText-missing-args.html
+
+ We didn't have isfinite checks for the x and y coordinates that are
+ passed to strokeText/drawTextInternal (unlike all the other methods,
+ which got checks in r50910 and r59447).
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawTextInternal):
+
+2010-12-09 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Adopt new CG API for canvas
+ https://bugs.webkit.org/show_bug.cgi?id=50591
+
+ No new tests. All current layout tests are sufficient.
+
+ * html/HTMLCanvasElement.cpp: Add in accelerateRendering flag for imagebuffer creation.
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::isAccelerated): Always return true if using CA on new platforms.
+ (WebCore::CanvasRenderingContext2D::drawTextInternal): Use accelerateRendering for imagebuffer.
+ * platform/graphics/ImageBuffer.h:
+ (WebCore::ImageBuffer::create): Plumb through new flag.
+ * platform/graphics/cairo/ImageBufferCairo.cpp: Update method sig.
+ * platform/graphics/cg/ImageBufferCG.cpp: Switch off of accelerateRendering flag for new accelerated paths.
+ * platform/graphics/cg/ImageBufferData.h: Add in surface ref
+ * platform/graphics/haiku/ImageBufferHaiku.cpp: Update method sig.
+ * platform/graphics/qt/ImageBufferQt.cpp: ^^
+ * platform/graphics/skia/ImageBufferSkia.cpp: ^^
+ * platform/graphics/wince/ImageBufferWinCE.cpp: ^^
+ * platform/graphics/wx/ImageBufferWx.cpp: ^^
+ * platform/mac/WebCoreSystemInterface.h: Add new method sigs
+ * platform/mac/WebCoreSystemInterface.mm: ^^
+ * rendering/RenderLayerBacking.cpp:
+ * rendering/RenderLayerCompositor.cpp: Set acceleratesDrawing for canvas backings.
+
+2010-12-13 Benjamin Kalman <kalman@chromium.org>
+
+ Reviewed by Ojan Vafai.
+
+ Shift-End does not select to the end of the line
+ https://bugs.webkit.org/show_bug.cgi?id=50610
+
+ Test: editing/selection/extend-to-line-boundary.html
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::positionForPlatform): Use visibleStart/visibleEnd rather than
+ start/end.
+ (WebCore::SelectionController::modifyExtendingForward):
+
+2010-12-13 Adam Roben <aroben@apple.com>
+
+ Windows build fix after r73914
+
+ * WebCore.vcproj/WebCore.vcproj: Fix malformed XML.
+
+2010-12-13 Yury Semikhatsky <yurys@chromium.org>
+
+ Unreviewed. Qt build fix.
+
+ * dom/ScriptExecutionContext.cpp:
+ (WebCore::ScriptExecutionContext::ScriptExecutionContext):
+ * dom/ScriptExecutionContext.h:
+
+2010-12-13 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [Gtk] Additional support is needed for caret browsing
+ https://bugs.webkit.org/show_bug.cgi?id=25526
+
+ Enable "MoveTo{Beginninng|End}OfDocument" commands when caret
+ browsing is enabled.
+
+ This change impacts the GTK-port only as caret browsing is a
+ feature only used in that platform so far.
+
+ Test: platform/gtk/editing/selection/caret-mode-document-begin-end.html
+
+ * editing/EditorCommand.cpp:
+ (WebCore::createCommandMap): Enable the commads when in caret browsing.
+
+2010-12-13 Yury Semikhatsky <yurys@chromium.org>
+
+ Unreviewed. Qt build fix.
+
+ * dom/Event.cpp:
+ (WebCore::Event::isErrorEvent):
+ * dom/Event.h: remove ENABLE(WORKERS) guard since ErrorEvent is now used not
+ only in workers.
+
+2010-12-13 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Protocol cleanup task. Assign domain attribute to Resources and Debugger specific functions.
+
+ Debugger and Resources related notification functions of Inspector.idl were
+ marked as such with help of "domain" attribute. The other changes in js files
+ are reflecting this change. Some wrappers in WebInspector namespace were dropped,
+ the others were moved to DebuggerModel class.
+
+ https://bugs.webkit.org/show_bug.cgi?id=50906
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::didParseSource):
+ * inspector/InspectorProfilerAgent.cpp:
+ (WebCore::InspectorProfilerAgent::resetState):
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMAgent.prototype.didCommitLoad):
+ * inspector/front-end/Database.js:
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel):
+ (WebInspector.DebuggerModel.prototype.pausedScript):
+ (WebInspector.DebuggerModel.prototype.resumedScript):
+ (WebInspector.DebuggerModel.prototype.attachDebuggerWhenShown):
+ (WebInspector.DebuggerModel.prototype.debuggerWasEnabled):
+ (WebInspector.DebuggerModel.prototype.debuggerWasDisabled):
+ (WebInspector.DebuggerModel.prototype.parsedScriptSource):
+ (WebInspector.DebuggerModel.prototype.failedToParseScriptSource):
+ (WebInspector.DebuggerModel.prototype.didCreateWorker):
+ (WebInspector.DebuggerModel.prototype.didDestroyWorker):
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel):
+ (WebInspector.ProfilesPanel.prototype.updateMainViewWidth):
+ (WebInspector.ProfilesPanel.prototype.setRecordingProfile):
+ * inspector/front-end/ResourceManager.js:
+ (WebInspector.ResourceManager):
+ (WebInspector.ResourceManager.prototype._unbindResourceURL):
+ (WebInspector.ResourceManager.prototype.updateDOMStorage):
+ (WebInspector.ResourceManager.prototype.updateApplicationCacheStatus):
+ (WebInspector.ResourceManager.prototype.didGetFileSystemPath):
+ (WebInspector.ResourceManager.prototype.didGetFileSystemError):
+ (WebInspector.ResourceManager.prototype.didGetFileSystemDisabled):
+ (WebInspector.ResourceManager.prototype.updateNetworkState):
+ (WebInspector.ResourceManager.prototype.addDOMStorage):
+ (WebInspector.ResourceManager.prototype.selectDOMStorage):
+ (WebInspector.ResourceManager.prototype.addDatabase):
+ (WebInspector.ResourceManager.prototype.selectDatabase):
+ (WebInspector.ResourceManager.prototype.sqlTransactionSucceeded):
+ (WebInspector.ResourceManager.prototype.sqlTransactionFailed):
+ * inspector/front-end/WorkersSidebarPane.js:
+ (WebInspector.Worker):
+ * inspector/front-end/inspector.js:
+
+2010-12-13 Yury Semikhatsky <yurys@chromium.org>
+
+ Unreviewed. Qt build fix.
+
+ * dom/ErrorEvent.cpp:
+ * dom/ErrorEvent.h: remove ENABLE(WORKERS) guard since ErrorEvent is now used not
+ only in workers.
+
+2010-12-13 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ WebCore doesn't fire window.onerror event when uncaught JavaScript exceptions are thrown
+ https://bugs.webkit.org/show_bug.cgi?id=8519
+
+ Uncaught exceptions are propagated to window.onerror hander if one is present.
+ The handler is expected to be a function accepting three arguments: error message,
+ resource url and line number where the exception occured.
+
+ It was decided to dispatch ErrorEvent to all listeners/handlers no matter if they
+ were created in the same isolated world where the exception occured or not.
+
+ Tests: fast/events/window-onerror1.html
+ fast/events/window-onerror10.html
+ fast/events/window-onerror11.html
+ fast/events/window-onerror2.html
+ fast/events/window-onerror3.html
+ fast/events/window-onerror4.html
+ fast/events/window-onerror5.html
+ fast/events/window-onerror6.html
+ fast/events/window-onerror7.html
+ fast/events/window-onerror8.html
+ fast/events/window-onerror9.html
+ http/tests/security/window-onerror-exception-in-iframe.html
+ userscripts/window-onerror-for-isolated-world-1.html
+ userscripts/window-onerror-for-isolated-world-2.html
+
+ * Android.jscbindings.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.order:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSBindingsAllInOne.cpp:
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::reportException):
+ * bindings/js/JSErrorHandler.cpp: Renamed from WebCore/bindings/js/JSWorkerContextErrorHandler.cpp.
+ (WebCore::JSErrorHandler::JSErrorHandler):
+ (WebCore::JSErrorHandler::~JSErrorHandler):
+ (WebCore::JSErrorHandler::handleEvent):
+ * bindings/js/JSErrorHandler.h: Copied from WebCore/bindings/js/JSWorkerContextErrorHandler.h.
+ (WebCore::JSErrorHandler::create):
+ (WebCore::createJSErrorHandler):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bindings/scripts/CodeGeneratorV8.pm:
+ * bindings/v8/V8ConsoleMessage.cpp:
+ (WebCore::V8ConsoleMessage::dispatchNow):
+ (WebCore::V8ConsoleMessage::handler): the method was changed to use generic WebCore exception
+ reporting mechanism which is also used by JSC bindings.
+ * bindings/v8/V8ConsoleMessage.h:
+ * bindings/v8/V8WindowErrorHandler.cpp: Copied from WebCore/bindings/js/JSWorkerContextErrorHandler.h.
+ (WebCore::V8WindowErrorHandler::V8WindowErrorHandler):
+ (WebCore::V8WindowErrorHandler::callListenerFunction):
+ * bindings/v8/V8WindowErrorHandler.h: Renamed from WebCore/bindings/js/JSWorkerContextErrorHandler.h.
+ (WebCore::V8WindowErrorHandler::create):
+ * bindings/v8/WorkerContextExecutionProxy.cpp:
+ (WebCore::v8MessageHandler):
+ * bindings/v8/WorkerScriptController.cpp:
+ (WebCore::WorkerScriptController::evaluate):
+ * dom/Document.cpp:
+ (WebCore::Document::errorEventTarget):
+ (WebCore::Document::logExceptionToConsole):
+ * dom/Document.h:
+ * dom/ScriptExecutionContext.cpp:
+ (WebCore::ScriptExecutionContext::PendingException::PendingException):
+ (WebCore::ScriptExecutionContext::ScriptExecutionContext):
+ (WebCore::ScriptExecutionContext::reportException): this method is not virtual anymore to
+ ensure that error event dispatching algorithm is the same in WorkerContext and in Document.
+ (WebCore::ScriptExecutionContext::dispatchErrorEvent):
+ * dom/ScriptExecutionContext.h:
+ * workers/DefaultSharedWorkerRepository.cpp:
+ (WebCore::postExceptionTask):
+ * workers/WorkerContext.cpp:
+ (WebCore::WorkerContext::WorkerContext):
+ (WebCore::WorkerContext::errorEventTarget):
+ (WebCore::WorkerContext::logExceptionToConsole):
+ * workers/WorkerContext.h:
+ * workers/WorkerMessagingProxy.cpp:
+ (WebCore::WorkerExceptionTask::performTask):
+
+2010-12-08 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Joseph Pecoraro.
+
+ Web Inspector: Enable CSS property editing name/value-wise (like Firebug does)
+ https://bugs.webkit.org/show_bug.cgi?id=50565
+
+ For CSS property editing, the property name and value have become two fields separated
+ by a colon (rather than one field containing the full property text.) A user can tab
+ between the name and value fields forward and backward. A colon typed in the name field
+ and a semicolon in the value field (unless found inside a string) act as a Tab and focus
+ the next editable field (while applying the entire property value.)
+
+ Now a user can tab through all editable styles for an element, even across rule boundaries.
+
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.XHRBreakpointsSidebarPane.prototype._startEditingBreakpoint):
+ * inspector/front-end/DataGrid.js:
+ (WebInspector.DataGrid.prototype._startEditingColumnOfDataGridNode):
+ (WebInspector.DataGrid.prototype._startEditing):
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeElement.prototype._startEditingAttribute):
+ (WebInspector.ElementsTreeElement.prototype._startEditingTextNode):
+ (WebInspector.ElementsTreeElement.prototype._startEditingTagName):
+ (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML):
+ * inspector/front-end/MetricsSidebarPane.js:
+ (WebInspector.MetricsSidebarPane.prototype.startEditing):
+ * inspector/front-end/ObjectPropertiesSection.js:
+ (WebInspector.ObjectPropertyTreeElement.prototype.startEditing):
+ * inspector/front-end/Section.js:
+ (WebInspector.Section):
+ (WebInspector.Section.prototype.get subtitleAsTextForTest):
+ (WebInspector.Section.prototype.get nextSibling):
+ (WebInspector.Section.prototype.get previousSibling):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._editBreakpointCondition):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertiesSection.prototype.nextEditableSibling):
+ (WebInspector.StylePropertiesSection.prototype.previousEditableSibling):
+ (WebInspector.StylePropertiesSection.prototype.addNewBlankProperty):
+ (WebInspector.StylePropertiesSection.prototype.startEditingSelector):
+ (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
+ (WebInspector.StylePropertyTreeElement.prototype.):
+ (WebInspector.StylePropertyTreeElement.prototype):
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextViewer.prototype._handleDoubleClick):
+ * inspector/front-end/WatchExpressionsSidebarPane.js:
+ (WebInspector.WatchExpressionTreeElement.prototype.startEditing):
+ * inspector/front-end/inspector.css:
+ (.child-editing):
+ * inspector/front-end/inspector.js:
+ (WebInspector.startEditing.defaultFinishHandler):
+ (WebInspector.startEditing):
+ * inspector/front-end/treeoutline.js:
+ (TreeElement.prototype.select):
+
+2010-12-13 Yael Aharon <yael.aharon@nokia.com>
+
+ Unreviewed.
+
+ Added svn propery eol-style. Patches to this file fail to apply on Windows EWS bot.
+
+ * accessibility/AccessibilityAllInOne.cpp: Added property svn:eol-style.
+
+2010-12-13 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r73898.
+ http://trac.webkit.org/changeset/73898
+ https://bugs.webkit.org/show_bug.cgi?id=50919
+
+ FileSystem and Database API's were broken (Requested by loislo
+ on #webkit).
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::didParseSource):
+ * inspector/InspectorProfilerAgent.cpp:
+ (WebCore::InspectorProfilerAgent::resetState):
+ * inspector/front-end/DOMAgent.js:
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel):
+ (WebInspector.DebuggerModel.prototype.debuggerPaused):
+ (WebInspector.DebuggerModel.prototype.debuggerResumed):
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel):
+ (WebInspector.ProfilesPanel.prototype.updateMainViewWidth):
+ * inspector/front-end/ResourceManager.js:
+ (WebInspector.ResourceManager):
+ (WebInspector.ResourceManager.prototype._registerNotifyHandlers):
+ (WebInspector.ResourceManager.prototype._unbindResourceURL):
+ * inspector/front-end/inspector.js:
+ (WebInspector.addDatabase):
+ (WebInspector.addDOMStorage):
+ (WebInspector.updateDOMStorage):
+ (WebInspector.updateApplicationCacheStatus):
+ (WebInspector.didGetFileSystemPath):
+ (WebInspector.didGetFileSystemError):
+ (WebInspector.didGetFileSystemDisabled):
+ (WebInspector.updateNetworkState):
+ (WebInspector.attachDebuggerWhenShown):
+ (WebInspector.debuggerWasEnabled):
+ (WebInspector.debuggerWasDisabled):
+ (WebInspector.profilerWasEnabled):
+ (WebInspector.profilerWasDisabled):
+ (WebInspector.parsedScriptSource):
+ (WebInspector.restoredBreakpoint):
+ (WebInspector.failedToParseScriptSource):
+ (WebInspector.pausedScript):
+ (WebInspector.resumedScript):
+ (WebInspector.resetProfilesPanel):
+ (WebInspector.didCommitLoad):
+ (WebInspector.addProfileHeader):
+ (WebInspector.setRecordingProfile):
+ (WebInspector.addHeapSnapshotChunk):
+ (WebInspector.finishHeapSnapshot):
+
+2010-12-13 Anton Muhin <antonm@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ [v8] More CSS wrappers GC work: keep document's style sheets, style sheet and css rule lists' items in proper object groups
+ https://bugs.webkit.org/show_bug.cgi?id=50828
+
+ * bindings/v8/DOMData.h:
+ (WebCore::DOMData::WrapperMapObjectRemover::visitDOMWrapper):
+ (WebCore::DOMData::removeObjectsFromWrapperMap):
+ * bindings/v8/DOMDataStore.h:
+ (WebCore::ChunkedTable::visit):
+ (WebCore::ChunkedTable::visitEntries):
+ (WebCore::DOMDataStore::IntrusiveDOMWrapperMap::visit):
+ (WebCore::DOMDataStore::IntrusiveDOMWrapperMap::ChunkedTableTraits::visit):
+ * bindings/v8/V8DOMMap.cpp:
+ (WebCore::removeAllDOMObjectsInCurrentThread):
+ (WebCore::visitDOMNodesInCurrentThread):
+ (WebCore::visitDOMObjectsInCurrentThread):
+ (WebCore::visitActiveDOMObjectsInCurrentThread):
+ (WebCore::visitDOMSVGElementInstancesInCurrentThread):
+ * bindings/v8/V8DOMMap.h:
+ (WebCore::WeakReferenceMap::visit):
+ * bindings/v8/V8GCController.cpp:
+ (WebCore::DOMObjectVisitor::visitDOMWrapper):
+ (WebCore::EnsureWeakDOMNodeVisitor::visitDOMWrapper):
+ (WebCore::GCPrologueVisitor::visitDOMWrapper):
+ (WebCore::NodeGrouperVisitor::visitDOMWrapper):
+ (WebCore::NodeGrouperVisitor::applyGrouping):
+ (WebCore::DOMObjectGrouperVisitor::visitDOMWrapper):
+ (WebCore::GCEpilogueVisitor::visitDOMWrapper):
+
+2010-12-13 Zoltan Herczeg <zherczeg@webkit.org>
+
+ Unreviewed build fix for r73894.
+
+ SVGFEImage should also check its hasResult() in its apply().
+
+ * svg/graphics/filters/SVGFEImage.cpp:
+ (WebCore::FEImage::apply):
+
+2010-12-13 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Protocol cleanup task. Assign domain attribute to Resources and Debugger specific functions.
+
+ Debugger and Resources related notification functions of Inspector.idl were
+ marked as such with help of "domain" attribute. The other changes in js files
+ are reflecting this change. Some wrappers in WebInspector namespace were dropped,
+ the others were moved to DebuggerModel class.
+
+ https://bugs.webkit.org/show_bug.cgi?id=50906
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::didParseSource):
+ * inspector/InspectorProfilerAgent.cpp:
+ (WebCore::InspectorProfilerAgent::resetState):
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMAgent.prototype.didCommitLoad):
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel):
+ (WebInspector.DebuggerModel.prototype.pausedScript):
+ (WebInspector.DebuggerModel.prototype.resumedScript):
+ (WebInspector.DebuggerModel.prototype.attachDebuggerWhenShown):
+ (WebInspector.DebuggerModel.prototype.debuggerWasEnabled):
+ (WebInspector.DebuggerModel.prototype.debuggerWasDisabled):
+ (WebInspector.DebuggerModel.prototype.parsedScriptSource):
+ (WebInspector.DebuggerModel.prototype.failedToParseScriptSource):
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel):
+ (WebInspector.ProfilesPanel.prototype.addHeapSnapshots):
+ (WebInspector.ProfilesPanel.prototype.updateMainViewWidth):
+ (WebInspector.ProfilesPanel.prototype.setRecordingProfile):
+ * inspector/front-end/ResourceManager.js:
+ (WebInspector.ResourceManager):
+ (WebInspector.ResourceManager.prototype._unbindResourceURL):
+ (WebInspector.ResourceManager.prototype.updateDOMStorage):
+ (WebInspector.ResourceManager.prototype.updateApplicationCacheStatus):
+ (WebInspector.ResourceManager.prototype.didGetFileSystemPath):
+ (WebInspector.ResourceManager.prototype.didGetFileSystemError):
+ (WebInspector.ResourceManager.prototype.didGetFileSystemDisabled):
+ (WebInspector.ResourceManager.prototype.updateNetworkState):
+ (WebInspector.ResourceManager.prototype.addDatabase):
+ (WebInspector.ResourceManager.prototype.addDOMStorage):
+ * inspector/front-end/inspector.js:
+
+2010-12-13 Zoltan Herczeg <zherczeg@webkit.org>
+
+ Reviewed by Dirk Schulze.
+
+ Better result passing in filter primitives
+ https://bugs.webkit.org/show_bug.cgi?id=49907
+
+ SVG filter primitives can use the output of other filters. The
+ input and output format of a filter can be a premultiplied or
+ unmultiplied RGBA array, or an image buffer. All filter
+ primitive results were converted to image buffers before, which
+ could be an unecessary (and really costly) operation, if
+ a filter expects its input in the same format as the output
+ of the input filter primitive. This overhead is removed by
+ this patch. All apply() methods are updated according to this
+ new filter primitive interface.
+
+ Filters do not generate their results twice (or more) anymore,
+ when their apply() called multiple times.
+
+ The existing tests cover this feature.
+
+ * manual-tests/svg-filter-animation.svg: Added.
+ * platform/graphics/filters/FEBlend.cpp:
+ (WebCore::FEBlend::apply):
+ * platform/graphics/filters/FEColorMatrix.cpp:
+ (WebCore::FEColorMatrix::apply):
+ * platform/graphics/filters/FEComponentTransfer.cpp:
+ (WebCore::FEComponentTransfer::apply):
+ * platform/graphics/filters/FEComposite.cpp:
+ (WebCore::FEComposite::apply):
+ * platform/graphics/filters/FEConvolveMatrix.cpp:
+ (WebCore::FEConvolveMatrix::apply):
+ * platform/graphics/filters/FEDisplacementMap.cpp:
+ (WebCore::FEDisplacementMap::apply):
+ * platform/graphics/filters/FEFlood.cpp:
+ (WebCore::FEFlood::apply):
+ * platform/graphics/filters/FEGaussianBlur.cpp:
+ (WebCore::FEGaussianBlur::apply):
+ * platform/graphics/filters/FELighting.cpp:
+ (WebCore::FELighting::apply):
+ * platform/graphics/filters/FEMerge.cpp:
+ (WebCore::FEMerge::apply):
+ * platform/graphics/filters/FEMerge.h:
+ * platform/graphics/filters/FEMorphology.cpp:
+ (WebCore::FEMorphology::apply):
+ * platform/graphics/filters/FEOffset.cpp:
+ (WebCore::FEOffset::apply):
+ * platform/graphics/filters/FETile.cpp:
+ (WebCore::FETile::apply):
+ * platform/graphics/filters/FETurbulence.cpp:
+ (WebCore::FETurbulence::apply):
+ * platform/graphics/filters/FilterEffect.cpp:
+ (WebCore::FilterEffect::requestedRegionOfInputImageData):
+ (WebCore::FilterEffect::asImageBuffer):
+ (WebCore::FilterEffect::asUnmultipliedImage):
+ (WebCore::FilterEffect::asPremultipliedImage):
+ (WebCore::FilterEffect::copyImageBytes):
+ (WebCore::FilterEffect::copyUnmultipliedImage):
+ (WebCore::FilterEffect::copyPremultipliedImage):
+ (WebCore::FilterEffect::createImageBufferResult):
+ (WebCore::FilterEffect::createUnmultipliedImageResult):
+ (WebCore::FilterEffect::createPremultipliedImageResult):
+ * platform/graphics/filters/FilterEffect.h:
+ (WebCore::FilterEffect::hasResult):
+ * platform/graphics/filters/SourceAlpha.cpp:
+ (WebCore::SourceAlpha::apply):
+ * platform/graphics/filters/SourceGraphic.cpp:
+ (WebCore::SourceGraphic::apply):
+ * platform/graphics/filters/SourceGraphic.h:
+ * rendering/RenderSVGResourceFilter.cpp:
+ (WebCore::RenderSVGResourceFilter::postApplyResource):
+ * svg/graphics/filters/SVGFEImage.cpp:
+ (WebCore::FEImage::apply):
+
+2010-12-13 Csaba Osztrogonác <ossy@webkit.org>
+
+ Unreviewed.
+
+ * WebCore.pro: Remove non-existant loader/Request.h from build system.
+
+2010-12-13 Noel Gordon <noel.gordon@gmail.com>
+
+ Reviewed by Eric Seidel.
+
+ [chromium] Reduce canvas.toDataURL("image/jpeg") run-time cost by 10%
+ https://bugs.webkit.org/show_bug.cgi?id=50804
+
+ Follow on from r73173, unroll the SkUnPreMultiply::PMColorToColor() call
+ viz., compute the unpremultiplatcion in-place. This reduces the run-time
+ cost of jpeg encoding by 10-15% for my image test set.
+
+ No new tests: canvas.toDataURL() is covered by existing tests.
+
+ * platform/image-encoders/skia/JPEGImageEncoder.cpp:
+ (WebCore::preMultipliedBGRAtoRGB):
+
+2010-12-13 Helder Correia <helder@sencha.com>
+
+ Reviewed by Eric Seidel.
+
+ [Qt] StillImage::draw() should use ContextShadow
+ https://bugs.webkit.org/show_bug.cgi?id=50849
+
+ The branch that checks for a shadow requirement in StillImage::draw()
+ is executed when drawing a canvas onto a canvas with
+ ctx1.drawImage(canvas2, x, y). The current implementation supports
+ solid shadows only. And if transformations are present, the offset gets
+ transformed as well. Thus, ContextShadow must be used instead in order
+ to support blur and correct offset transformations.
+
+ Test: fast/canvas/canvas-draw-canvas-on-canvas-shadow.html
+
+ * platform/graphics/qt/StillImageQt.cpp:
+ (WebCore::StillImage::draw):
+
+2010-12-12 Jon Honeycutt <jhoneycutt@apple.com>
+
+ Unreviewed build fix.
+
+ * editing/EditingAllInOne.cpp:
+ Add new file to the all-in-one.
+
+2010-12-12 Jon Honeycutt <jhoneycutt@apple.com>
+
+ Unreviewed build fix.
+
+ * WebCore.vcproj/WebCore.vcproj:
+ Remove accidentally-committed conflict marker.
+
+2010-10-28 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Ojan Vafai.
+
+ spellcheck does not check pasted text
+ https://bugs.webkit.org/show_bug.cgi?id=40092
+
+ - Introduced SpellChecker class to encapsulate asynchronous spell
+ checker state: sequence id, requesting text and target node.
+ This is also the first step to decompose spell-check related
+ code to a separate class.
+ - Added EditorClient::isAsynchronousSpellCheckingEnabled()
+ to use async spellcheck API on the platform.
+ These APIs are touched by SpellChecker.
+ - Used SpellChecker to check a pasted test. Text to check is
+ collected from the subtree under the editingRoot.
+ - Added Setting::m_asynchronousSpellCheckingEnabled to control
+ async spell checking.
+
+ Test: editing/spelling/spellcheck-paste.html
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.exp.in:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/DocumentMarkerController.cpp:
+ (WebCore::DocumentMarkerController::showMarkers):
+ (showDocumentMarkers):
+ * dom/DocumentMarkerController.h:
+ * dom/PositionIterator.cpp:
+ (WebCore::PositionIterator::setOffsetInLeafNode):
+ * dom/PositionIterator.h:
+ * editing/Editor.cpp:
+ (WebCore::Editor::replaceSelectionWithFragment):
+ (WebCore::Editor::Editor):
+ (WebCore::findFirstMarkable):
+ (WebCore::Editor::selectionStartHasSpellingMarkerFor):
+ * editing/Editor.h:
+ (WebCore::Editor::spellChecker):
+ * editing/SpellChecker.cpp: Added.
+ (WebCore::SpellChecker::SpellChecker):
+ (WebCore::SpellChecker::~SpellChecker):
+ (WebCore::SpellChecker::initRequest):
+ (WebCore::SpellChecker::clearRequest):
+ (WebCore::SpellChecker::isAsynchronousEnabled):
+ (WebCore::SpellChecker::canCheckAsynchronously):
+ (WebCore::SpellChecker::isBusy):
+ (WebCore::SpellChecker::isValid):
+ (WebCore::SpellChecker::isCheckable):
+ (WebCore::SpellChecker::requestCheckingFor):
+ (WebCore::forwardIterator):
+ (WebCore::SpellChecker::didCheck):
+ * editing/SpellChecker.h: Added.
+ (WebCore::SpellCheckingResult::SpellCheckingResult):
+ (WebCore::SpellCheckingResult::type):
+ (WebCore::SpellCheckingResult::location):
+ (WebCore::SpellCheckingResult::length):
+ * loader/EmptyClients.h:
+ (WebCore::EmptyEditorClient::requestCheckingOfString):
+ * page/EditorClient.h:
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings):
+ * page/Settings.h:
+ (WebCore::Settings::setAsynchronousSpellCheckingEnabled):
+ (WebCore::Settings::asynchronousSpellCheckingEnabled):
+
+2010-12-09 Antonio Gomes <agomes@rim.com>
+
+ Reviewed by Daniel Bates.
+
+ Spatial Navigation: code clean up (part II)
+ https://bugs.webkit.org/show_bug.cgi?id=50666
+
+ No new tests needed.
+
+ * page/FocusController.cpp: Removed static declaration of updateFocusCandidateIfNeeded() from
+ the top of FocusController.cpp, and added the 'static' keyword where the function is implemented;
+ * page/SpatialNavigation.cpp: In FocusCandidate constructor, renamed 'n' to 'node', and added an assert to it;
+ (WebCore::FocusCandidate::FocusCandidate):
+ (WebCore::virtualRectForAreaElementAndDirection): Added an assert to 'node';
+ * page/SpatialNavigation.h:I reordered the declaration of some methods in order to group related ones;
+ Removed isScrollableContainerNode() function declaration since it is not used outside SpatialNavigation.cpp;
+ And removed the declaration of isNodeDeepDescendantOfDocument() since it does not exist anymore.
+
+2010-12-12 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ build-webkit --gtk --minimal fails
+ https://bugs.webkit.org/show_bug.cgi?id=46267
+
+ No new tests, build fix only.
+
+ * GNUmakefile.am: Include some JS bindings generated headers in
+ the build even if their corresponding feature is disabled. They
+ are needed to make the DOM bindings build.
+
+2010-12-12 Sam Magnuson <smagnuso@gmail.com>
+
+ Reviewed by Eric Seidel.
+
+ [Qt] Compile with QT_NO_QUUID_STRING.
+ https://bugs.webkit.org/show_bug.cgi?id=49745
+
+ * platform/UUID.cpp:
+ (WebCore::createCanonicalUUIDString):
+
+2010-12-12 Ragner Magalhaes <ragner.magalhaes@openbossa.org>
+
+ Reviewed by Eric Seidel.
+
+ [Qt] Missing style for date pickers on Qt Mobile theme
+ https://bugs.webkit.org/show_bug.cgi?id=50628
+
+ * css/themeQtMobile.css:
+
+2010-12-11 Alice Liu <alice.liu@apple.com>
+
+ Mac build fix.
+
+ * platform/network/mac/ResourceResponseMac.mm:
+ (WebCore::ResourceResponse::platformLazyInit):
+ Resolve string[0] ambiguity by passing 0U.
+
+2010-12-11 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ [V8] Move to DOMWindow::setLocation
+ https://bugs.webkit.org/show_bug.cgi?id=50876
+
+ Recently, JavaScriptCore moved to implementing setLocation in WebCore.
+ This patch change V8 to use that common code path. I haven't removed
+ the old code path because it's still used for other things (like
+ assigning window.location.href), but I'll move the rest over in a
+ future patch.
+
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+ (WebCore::V8DOMWindow::locationAccessorSetter):
+ * bindings/v8/specialization/V8BindingState.cpp:
+ (WebCore::::getFirstWindow):
+ * bindings/v8/specialization/V8BindingState.h:
+
+2010-10-11 Diego Gonzalez <diegohcg@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Mock DeviceOrientation client for DRT
+ https://bugs.webkit.org/show_bug.cgi?id=47490
+
+ * WebCore.pro:
+
+2010-12-11 Joone Hur <joone@kldp.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ enumeration value ‘ResponseTypeArrayBuffer’ not handled in switch
+ https://bugs.webkit.org/show_bug.cgi?id=50871
+
+ Fix the warning which occurs when enumeration value is not handled in switch.
+
+ No new tests, no change in behavior.
+
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::response):
+
+2010-12-11 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Add an overload to makeString for Vector<char>
+ https://bugs.webkit.org/show_bug.cgi?id=50123
+
+ This also contains a segfault fix for ImageBuffer::toDataURL of the Haiku port.
+
+ * platform/graphics/cg/ImageBufferCG.cpp:
+ (WebCore::ImageBuffer::toDataURL):
+ * platform/graphics/gtk/ImageBufferGtk.cpp:
+ (WebCore::ImageBuffer::toDataURL):
+ * platform/graphics/haiku/ImageBufferHaiku.cpp:
+ (WebCore::ImageBuffer::toDataURL):
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::toDataURL):
+
+2010-12-10 Alexey Proskuryakov <ap@apple.com>
+
+ Mac build fix.
+
+ * platform/network/cf/ResourceResponseCFNet.cpp: (WebCore::ResourceResponse::platformLazyInit):
+ Resolve string[0] ambiguity by passing 0U.
+
+2010-12-10 Steve Falkenburg <sfalken@apple.com>
+
+ Windows production build fix.
+
+ Only the vsprops are indirected through WebKitVSPropsRedirectionDir, not the scripts in WebKitLibraries/win/tools/scripts.
+
+ * WebCore.vcproj/WebCoreGeneratedCommon.vsprops:
+ * WebCore.vcproj/build-generated-files.sh:
+
+2010-12-10 John Knottenbelt <jknotten@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Remove WebCore/platform/mac/GeolocationService.{h,mm}
+ https://bugs.webkit.org/show_bug.cgi?id=50074
+
+ Remove unused non-client-based geolocation code.
+
+ * platform/mac/GeolocationServiceMac.h: Removed.
+ * platform/mac/GeolocationServiceMac.mm: Removed.
+
+2010-12-10 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46573
+ <rdar://problem/8479389> REGRESSION: charset="utf-8" (with quotes) doesn't work
+
+ Test: http/tests/mime/quoted-charset.php
+
+ * platform/network/cf/ResourceResponseCFNet.cpp: (WebCore::ResourceResponse::platformLazyInit):
+ * platform/network/mac/ResourceResponseMac.mm: (WebCore::ResourceResponse::platformLazyInit):
+ Work around a CFNetwork issue, strip quotes if they are present.
+
+2010-12-10 Vincent Scheib <scheib@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Shader::loadShader() must initialize variable passed to getShaderiv
+ https://bugs.webkit.org/show_bug.cgi?id=50842
+
+ Test: fast/canvas/canvas-largedraws.html
+
+ * platform/graphics/gpu/Shader.cpp:
+ (WebCore::Shader::loadShader):
+
+2010-12-10 Vincent Scheib <scheib@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Texture::updateSubRect should pass IntRect by reference
+ https://bugs.webkit.org/show_bug.cgi?id=50845
+
+ No test, changing to pass by ref.
+
+ * platform/graphics/gpu/Texture.cpp:
+ (WebCore::Texture::updateSubRect):
+ * platform/graphics/gpu/Texture.h:
+
+2010-12-10 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Move open and showModalDialog implementations from bindings into DOM class DOMWindow
+ https://bugs.webkit.org/show_bug.cgi?id=50836
+
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::open): Removed most of the code and changed to call
+ DOMWindow::open.
+ (WebCore::DialogHandler::DialogHandler): Added. Object is used to handle the
+ arguments and return value in showModalDialog.
+ (WebCore::DialogHandler::dialogCreated): Ditto.
+ (WebCore::DialogHandler::returnValue): Ditto.
+ (WebCore::setUpDialog): Added. Function passed to showModalDialog that just
+ casts pointer to DialogHandler can calls dialogCreated.
+ (WebCore::JSDOMWindow::showModalDialog): Removed most of the code and changed
+ to call DOMWindow::showModalDialog.
+ (WebCore::JSDOMWindow::postMessage): Made style match the rest of the file by
+ renaming local variables and getting rid of a needless ones.
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::parseModalDialogFeatures): Moved body of this function
+ to the WindowFeatures class.
+ (WebCore::DOMWindow::allowPopUp): Renamed argument from activeFrame to firstFrame,
+ because that's the frame we pass in here. Also added an overload so this can be
+ called on a window rather than a frame.
+ (WebCore::DOMWindow::setLocation): Renamed a couple variables so the names are
+ the same as in open and showModalDialog. Factored the JavaScript security check
+ into a new function named isInsecureScriptAccess.
+ (WebCore::DOMWindow::isInsecureScriptAccess): Here is the new function.
+ (WebCore::DOMWindow::createWindow): Added. Contains logic shared by open and
+ showModalDialog just as the function named createWindow in JSDOMWindowCustom.cpp
+ used to.
+ (WebCore::DOMWindow::open): Added. Code from JSDOMWindowCustom without the
+ JavaScript language binding part, and with a bit of refactoring to share code
+ with the rest of the DOMWindow class.
+ (WebCore::DOMWindow::showModalDialog): Ditto.
+
+ * page/DOMWindow.h: Moved conditional parts of the file into separate paragraphs
+ in alphabetical order so they are not scattered thorugh the file. Removed redundant
+ includes. Added some blank lines for clarity. Added an open function and a
+ showModalDialog function. Added private createWindow and isInsecureScriptAccess
+ functions.
+
+ * page/WindowFeatures.cpp:
+ (WebCore::isWindowFeaturesSeparator): Renamed from isSeparator for clarity.
+ (WebCore::WindowFeatures::WindowFeatures): Updated for name change. Used isEmpty
+ instead of checking length. Added a new constructor for use when making dialogs,
+ with code from the showModalDialog function.
+ (WebCore::WindowFeatures::boolFeature): Use DialogFeaturesMap typedef.
+ (WebCore::WindowFeatures::floatFeature): Use DialogFeaturesMap typedef.
+ Renamed a local variable and tweaked the comments a bit.
+ (WebCore::WindowFeatures::parseDialogFeatures): Added. Code moved here from
+ DOMWindow::parseDialogFeatures and refactored a bit.
+
+ * page/WindowFeatures.h: Added new constructor, new parseDialogFeatures
+ function, DialogFeaturesMap typedef, and made setWindowFeature function private.
+
+2010-12-10 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ AX: refactor AccessibilityRenderObject::doAccessibilityHitTest
+ https://bugs.webkit.org/show_bug.cgi?id=50574
+
+ Refactors accessibility hit testing to allow for a more flexible model when handling elements
+ with fake sub-elements (like sliders or list boxes).
+
+ Renamed doAccessibilityHitTest -> accessibilityHitTest, which is called on the root
+ accessibility render object. Then subclassers are able to override
+ elementAccessibilityHitTest to return their own specific elements.
+
+ * accessibility/AccessibilityListBox.cpp:
+ (WebCore::AccessibilityListBox::elementAccessibilityHitTest):
+ * accessibility/AccessibilityListBox.h:
+ * accessibility/AccessibilityObject.h:
+ (WebCore::AccessibilityObject::accessibilityHitTest):
+ (WebCore::AccessibilityObject::elementAccessibilityHitTest):
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::accessibilityHitTest):
+ * accessibility/AccessibilityRenderObject.h:
+ * accessibility/AccessibilitySlider.cpp:
+ (WebCore::AccessibilitySlider::elementAccessibilityHitTest):
+ * accessibility/AccessibilitySlider.h:
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (webkit_accessible_component_ref_accessible_at_point):
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityHitTest:]):
+
+2010-12-10 Kenneth Russell <kbr@google.com>
+
+ Reviewed by Darin Adler.
+
+ Clean up assertion in Extensions3DOpenGL.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=50852
+
+ Built Release mode to test. No functionality change.
+
+ * platform/graphics/opengl/Extensions3DOpenGL.cpp:
+ (WebCore::Extensions3DOpenGL::ensureEnabled):
+
+2010-12-10 Cosmin Truta <ctruta@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Crash while processing ill-formed <textPath> ouside of <text>
+ https://bugs.webkit.org/show_bug.cgi?id=47759
+
+ Renderers within a <text> subtree are created only when their corresponding elements
+ satisfy the content model.
+
+ Test: svg/custom/invalid-text-content.svg
+
+ * svg/SVGTRefElement.cpp:
+ (WebCore::SVGTRefElement::childShouldCreateRenderer): Fixed to comply with the content model.
+ (WebCore::SVGTRefElement::rendererIsNeeded): Added.
+ * svg/SVGTRefElement.h:
+ * svg/SVGTSpanElement.cpp:
+ (WebCore::SVGTSpanElement::childShouldCreateRenderer): Fixed to comply with the content model.
+ (WebCore::SVGTSpanElement::rendererIsNeeded): Added.
+ * svg/SVGTSpanElement.h: Changed indentation.
+ * svg/SVGTextElement.cpp:
+ (WebCore::SVGTextElement::childShouldCreateRenderer): Reformatted.
+ * svg/SVGTextPathElement.cpp:
+ (WebCore::SVGTextPathElement::childShouldCreateRenderer): Fixed to comply with the content model.
+ (WebCore::SVGTextPathElement::rendererIsNeeded): Added.
+ * svg/SVGTextPathElement.h:
+
+2010-12-10 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Adam Barth.
+
+ Use enums instead of booleans in ImageSource/ImageDecoder constructors
+ https://bugs.webkit.org/show_bug.cgi?id=50818
+
+ This patch basically defines two enum type in ImageSource: AlphaOption
+ and GammaAndColorProfileOption and use them as ImageSource and ImageDecoder
+ constructor parameters instead of boolean typs.
+
+ * platform/graphics/ImageSource.cpp:
+ (WebCore::ImageSource::ImageSource):
+ (WebCore::ImageSource::setData):
+ * platform/graphics/ImageSource.h: Define the two enum types.
+ * platform/graphics/cg/GraphicsContext3DCG.cpp:
+ (WebCore::GraphicsContext3D::getImageData):
+ * platform/graphics/cg/ImageSourceCG.cpp:
+ (WebCore::ImageSource::ImageSource):
+ * platform/graphics/qt/ImageDecoderQt.cpp:
+ (WebCore::ImageDecoder::create):
+ (WebCore::ImageDecoderQt::ImageDecoderQt):
+ * platform/graphics/qt/ImageDecoderQt.h:
+ * platform/graphics/skia/GraphicsContext3DSkia.cpp:
+ (WebCore::GraphicsContext3D::getImageData):
+ * platform/image-decoders/ImageDecoder.cpp:
+ (WebCore::ImageDecoder::create):
+ * platform/image-decoders/ImageDecoder.h:
+ (WebCore::ImageDecoder::ImageDecoder):
+ * platform/image-decoders/bmp/BMPImageDecoder.cpp:
+ (WebCore::BMPImageDecoder::BMPImageDecoder):
+ * platform/image-decoders/bmp/BMPImageDecoder.h:
+ * platform/image-decoders/gif/GIFImageDecoder.cpp:
+ (WebCore::GIFImageDecoder::GIFImageDecoder):
+ * platform/image-decoders/gif/GIFImageDecoder.h:
+ * platform/image-decoders/ico/ICOImageDecoder.cpp:
+ (WebCore::ICOImageDecoder::ICOImageDecoder):
+ (WebCore::ICOImageDecoder::decodeAtIndex):
+ * platform/image-decoders/ico/ICOImageDecoder.h:
+ * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
+ (WebCore::JPEGImageDecoder::JPEGImageDecoder):
+ * platform/image-decoders/jpeg/JPEGImageDecoder.h:
+ * platform/image-decoders/png/PNGImageDecoder.cpp:
+ (WebCore::PNGImageDecoder::PNGImageDecoder):
+ * platform/image-decoders/png/PNGImageDecoder.h:
+ * platform/image-decoders/webp/WEBPImageDecoder.cpp:
+ (WebCore::WEBPImageDecoder::WEBPImageDecoder):
+ * platform/image-decoders/webp/WEBPImageDecoder.h:
+
+2010-12-10 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION(r73799): editing/execCommand/4920488.html fails
+ https://bugs.webkit.org/show_bug.cgi?id=50854
+
+ The regression was caused by Range::processContents's not extracting
+ m_end.container()->firstChild(). Fixed the bug by always adding the first child.
+
+ * dom/Range.cpp:
+ (WebCore::Range::processContents):
+
+2010-12-10 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ REGRESSION: Infinite redirect on developer.apple.com
+ https://bugs.webkit.org/show_bug.cgi?id=45627
+
+ Tests: fast/loader/form-submit-aborts-parsing.html
+ fast/loader/location-change-aborts-parsing.html
+
+ This patch is not pretty, but it fixes the bug. I stole this approach
+ from the old HTML parser (as suggested by Eric Seidel). The other
+ approaches that folks tried for this bug are better, but it's inclear
+ how to get them to work correctly. I've added a large FIXME comment.
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::pumpTokenizer):
+ * html/parser/HTMLTreeBuilder.h:
+ (WebCore::HTMLTreeBuilder::isParsingFragment):
+
+2010-12-10 Brian Weinstein <bweinstein@apple.com>
+
+ Reviewed by Ada Chan.
+
+ When we are creating a ContextMenuItem, only call setSubMenu if we have
+ a subMenu to set.
+
+ * platform/ContextMenuItem.cpp:
+ (WebCore::ContextMenuItem::ContextMenuItem):
+
+2010-12-10 Kenneth Russell <kbr@google.com>
+
+ Unreviewed, another build fix. #include <wtf/UnusedParam.h> needed
+ for Release builds.
+
+ * platform/graphics/opengl/Extensions3DOpenGL.cpp:
+
+2010-12-10 Kenneth Russell <kbr@google.com>
+
+ Unreviewed, build fix. Change #ifndef NDEBUG to #ifdef NDEBUG.
+
+ * platform/graphics/opengl/Extensions3DOpenGL.cpp:
+ (WebCore::Extensions3DOpenGL::ensureEnabled):
+
+2010-12-10 Kenneth Russell <kbr@google.com>
+
+ Reviewed by James Robinson.
+
+ Implement extension entry points and remove EXTENSIONS enum
+ https://bugs.webkit.org/show_bug.cgi?id=40316
+
+ Implemented WebGLRenderingContext's getSupportedExtensions and
+ getExtensions entry points, and, to verify them, added support for
+ the first specified WebGL extension, OES_texture_float. This
+ extension is now advertised in the Chromium and WebKit ports when
+ the underlying hardware supports it.
+
+ The new OES_texture_float test in the WebGL conformance suite
+ verifies the allocation and population of floating point textures,
+ and their use as render targets. However, because this extension
+ is optional, it is not easily testable with a layout test; there
+ is only one set of expectations for a given test, and two would be
+ needed, one when the extension is available and one when it is not.
+
+ Tested with the oes-texture-float.html WebGL conformance test in
+ Chromium and WebKit on Mac OS X on hardware that supports the
+ extension. Also verified with a configuration that does not
+ advertise the extension that this same test passes.
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pri:
+ * WebCore.pro:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSWebGLRenderingContextCustom.cpp:
+ (WebCore::toJS):
+ (WebCore::JSWebGLRenderingContext::markChildren):
+ (WebCore::JSWebGLRenderingContext::getExtension):
+ (WebCore::JSWebGLRenderingContext::getSupportedExtensions):
+ * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
+ (WebCore::toV8Object):
+ (WebCore::V8WebGLRenderingContext::getExtensionCallback):
+ (WebCore::V8WebGLRenderingContext::getSupportedExtensionsCallback):
+ * html/canvas/OESTextureFloat.cpp: Added.
+ (WebCore::OESTextureFloat::OESTextureFloat):
+ (WebCore::OESTextureFloat::~OESTextureFloat):
+ (WebCore::OESTextureFloat::getName):
+ (WebCore::OESTextureFloat::create):
+ * html/canvas/OESTextureFloat.h: Added.
+ * html/canvas/OESTextureFloat.idl: Added.
+ * html/canvas/WebGLExtension.cpp: Added.
+ (WebCore::WebGLExtension::WebGLExtension):
+ (WebCore::WebGLExtension::~WebGLExtension):
+ * html/canvas/WebGLExtension.h: Added.
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::getExtension):
+ (WebCore::WebGLRenderingContext::getSupportedExtensions):
+ (WebCore::WebGLRenderingContext::validateTexFuncFormatAndType):
+ (WebCore::WebGLRenderingContext::validateTexFuncData):
+ (WebCore::WebGLRenderingContext::getNumberOfExtensions):
+ (WebCore::WebGLRenderingContext::getExtensionNumber):
+ * html/canvas/WebGLRenderingContext.h:
+ * html/canvas/WebGLRenderingContext.idl:
+ * platform/graphics/Extensions3D.h:
+ * platform/graphics/GraphicsContext3D.cpp:
+ (WebCore::GraphicsContext3D::computeFormatAndTypeParameters):
+ (WebCore::GraphicsContext3D::extractTextureData):
+ (WebCore::doUnpackingAndPacking):
+ (WebCore::doPacking):
+ (WebCore::doFloatingPointPacking):
+ (WebCore::GraphicsContext3D::packPixels):
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/chromium/Extensions3DChromium.h:
+ * platform/graphics/opengl/Extensions3DOpenGL.cpp:
+ (WebCore::Extensions3DOpenGL::supports):
+ (WebCore::Extensions3DOpenGL::ensureEnabled):
+ * platform/graphics/opengl/Extensions3DOpenGL.h:
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+ (WebCore::GraphicsContext3D::texImage2D):
+ * platform/graphics/qt/Extensions3DQt.cpp:
+ (WebCore::Extensions3DQt::ensureEnabled):
+ * platform/graphics/qt/Extensions3DQt.h:
+
+2010-12-10 Darin Adler <darin@apple.com>
+
+ Try to fix Windows build.
+
+ * dom/Range.cpp:
+ (WebCore::Range::processContents): Put typedef of NodeVector inside the function
+ instead of at the top of the file, since the use is restricted to this function.
+ There's another NodeVector in ContainerNode.cpp.
+
+2010-12-09 Brian Weinstein <bweinstein@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Prep for WebKit2: Context menu support on Windows
+ https://bugs.webkit.org/show_bug.cgi?id=50514
+
+ Before this patch ContextMenu on Windows were backed by HMENUs, and ContextMenuItems
+ were backed by MENUITEMINFOs. This meant they couldn't be copied, and they needed to
+ be to work in WebKit2.
+
+ This patch adds a new USE flag - CROSS_PLATFORM_CONTEXT_MENUS that are for a cross-platform
+ representation of context menus. This patch also has Windows adopt them.
+
+ Cross-platform context menus change the API of context menus and the ContextMenuClient. There
+ is no more idea of a PlatformMenuDescription or a PlatformMenuItemDescription. Menus are backed
+ by a Vector of ContextMenuItems, and menu items are backed by the variables they need (enabled, checked
+ title, action, type, and submenu).
+
+ This patch also refactors the ContextMenuClient interface to use a variation on the getCustomMenuFromDefaultItems
+ function to allow for customization of the context menu.
+
+ For other ports to use CROSS_PLATFORM_CONTEXT_MENUS, all they need to do is write conversion functions from
+ a ContextMenu <-> native menu type, and ContextMenuItem <-> native menu item type. For Windows, this is done
+ in ContextMenuWin.cpp and ContextMenuItemWin.cpp.
+
+ No new tests, no change in behavior.
+
+ * WebCore.vcproj/WebCore.vcproj: Add new files (only needed on Windows for now).
+ * loader/EmptyClients.h:
+ (WebCore::EmptyContextMenuClient::customizeMenu): Define this function if CROSS_PLATFORM_CONTEXT_MENUS
+ is on.
+ * page/ContextMenuClient.h: Ditto.
+ * page/ContextMenuController.cpp:
+ (WebCore::ContextMenuController::showContextMenu): Call customizeMenu instead of
+ getCustomMenuFromDefaultItems if CROSS_PLATFORM_CONTEXT_MENUS is on.
+ * platform/ContextMenu.cpp: Added.
+ (WebCore::ContextMenu::ContextMenu): Empty constructor.
+ (WebCore::ContextMenu::setItems): Sets the items in the menu.
+ (WebCore::ContextMenu::items): Returns the items in the menu.
+ (WebCore::ContextMenu::itemAtIndex):
+ (WebCore::itemWithActionInMenu): Returns the item with the correct action, recursively descending
+ into submenus.
+ (WebCore::ContextMenu::itemWithAction): Calls through to itemWithActionInMenu.
+ * platform/ContextMenu.h: Added a new set of functions and member variables that are defined for
+ CROSS_PLATFORM_CONTEXT_MENUS.
+ (WebCore::ContextMenu::appendItem): Appends an item to the menu.
+ * platform/ContextMenuItem.cpp: Added.
+ (WebCore::ContextMenuItem::ContextMenuItem):
+ (WebCore::ContextMenuItem::~ContextMenuItem):
+ (WebCore::ContextMenuItem::setSubMenu):
+ * platform/ContextMenuItem.h:
+ (WebCore::ContextMenuItem::type): Returns the type.
+ (WebCore::ContextMenuItem::setType): Sets the type.
+ (WebCore::ContextMenuItem::action): Returns the action.
+ (WebCore::ContextMenuItem::setAction): Sets the action.
+ (WebCore::ContextMenuItem::title): Returns the title.
+ (WebCore::ContextMenuItem::setTitle): Sets the title.
+ (WebCore::ContextMenuItem::checked): Returns whether or not the menu item is checked.
+ (WebCore::ContextMenuItem::setChecked): Sets whether ot not the menu item is checked.
+ (WebCore::ContextMenuItem::enabled): Returns whether or not the menu item is enabled.
+ (WebCore::ContextMenuItem::setEnabled): Sets whether or not the menu item is enabled.
+ (WebCore::ContextMenuItem::submenu): Returns the submenu.
+ * platform/PlatformMenuDescription.h: Remove the idea if a PlatformMenuDescription if
+ CROSS_PLATFORM_CONTEXT_MENUS is on.
+ * platform/win/ContextMenuItemWin.cpp:
+ (WebCore::ContextMenuItem::ContextMenuItem): Creates a ContextMenuItem from a MENUITEMINFO.
+ (WebCore::ContextMenuItem::nativeMenuItem): Creates and returns a MENUITEMINFO.
+ * platform/win/ContextMenuWin.cpp:
+ (WebCore::ContextMenu::ContextMenu): Creates a ContextMenu from an HMENU.
+ (WebCore::ContextMenu::nativeMenu): Creates and returns an HMENU.
+
+2010-12-10 Emil Eklund <eae@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Fix crash in ReplaceSelectionCommand::doApply when selection is modified
+ during execution.
+ https://bugs.webkit.org/show_bug.cgi?id=50840
+
+ Test: editing/execCommand/insertHTML-mutation-crash.html
+
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::copyStyleToChildren):
+ Replaced raw node pointer with RefPtr.
+
+ (WebCore::ReplaceSelectionCommand::doApply):
+ Replaced raw node pointer with RefPtr and added null check.
+
+2010-12-10 Emil Eklund <eae@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Fix crash in Range::processContents when modified during mutation event.
+ https://bugs.webkit.org/show_bug.cgi?id=50710
+
+ Test: fast/dom/Range/range-extractContents.html
+
+ * dom/Range.cpp:
+ (WebCore::Range::processContents):
+ Replace raw pointers with RefPtrs and add checks.
+
+2010-12-09 Enrica Casucci <enrica@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Implement IME support for Mac.
+ <rdar://problem/7660589> WebKit2: Implement IME support for Mac.
+ https://bugs.webkit.org/show_bug.cgi?id=50788
+
+ * dom/KeyboardEvent.h:
+ (WebCore::KeypressCommand::KeypressCommand): Removed ASSERT in constructor,
+ since it is now used for more than one command.
+
+2010-12-10 Jessie Berlin <jberlin@apple.com>
+
+ Windows build fix. Unreviewed.
+
+ * WebCore.vcproj/WebCore.vcproj:
+ Remove duplicate </File> tag.
+
+2010-12-09 Jenn Braithwaite <jennb@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ TextResourceDecoder::checkForHeadCharset can look way past the limit.
+ https://bugs.webkit.org/show_bug.cgi?id=47397
+
+ Replaced charset detection algorithm with real parser.
+ Added tests for parser bugs mentioned in the thread for this bug report.
+ Converted hixie's encoding parsing tests to a layout test.
+
+ Tests: fast/encoding/bracket-in-script.html
+ fast/encoding/bracket-in-tag.html
+ fast/encoding/escaped-bracket.html
+ fast/encoding/meta-in-body.html
+ fast/encoding/meta-in-script.html
+ fast/encoding/meta-in-title.html
+ fast/encoding/mismatched-end-tag.html
+ fast/encoding/namespace-meta.html
+ fast/encoding/not-http-equiv-content.html
+ fast/encoding/parser-tests.html
+ fast/encoding/quotes-in-title.html
+ fast/encoding/tag-name-digit.html
+ http/tests/misc/charset-sniffer-end-sniffing.html
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/parser/HTMLMetaCharsetParser.cpp: Added.
+ (WebCore::HTMLMetaCharsetParser::HTMLMetaCharsetParser):
+ (WebCore::HTMLMetaCharsetParser::~HTMLMetaCharsetParser):
+ (WebCore::HTMLMetaCharsetParser::extractCharset):
+ (WebCore::HTMLMetaCharsetParser::processMeta):
+ (WebCore::HTMLMetaCharsetParser::checkForMetaCharset):
+ * html/parser/HTMLMetaCharsetParser.h: Added.
+ (WebCore::HTMLMetaCharsetParser::create):
+ (WebCore::HTMLMetaCharsetParser::encoding):
+ * loader/TextResourceDecoder.cpp:
+ (WebCore::TextResourceDecoder::checkForHeadCharset):
+ (WebCore::TextResourceDecoder::checkForMetaCharset):
+ * loader/TextResourceDecoder.h:
+
+2010-12-10 Nate Chapin <japhet@chromium.org>
+
+ Reviewed by Antti Koivisto.
+
+ Merge Loader and Request. Currently, Loader is a singleton attached
+ to MemoryCache. Our goal is to remove knowledge of the loading process
+ from MemoryCache, so we should attach Loader to CachedResourceLoader instead.
+ Once Loader is moved off of MemoryCache, there's no reason it needs to be a singleton,
+ which removes the main reason for Request existing as a separate class (to store per-request
+ state that Loader couldn't).
+
+ Loader will be given a more descriptive name in a later patch.
+
+ https://bugs.webkit.org/show_bug.cgi?id=49837
+
+ Refactor only, no new tests.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * loader/FrameLoader.cpp:
+ * loader/Request.cpp:
+ * loader/Request.h:
+ * loader/cache/CachedFont.cpp:
+ * loader/cache/CachedImage.cpp:
+ * loader/cache/CachedResource.cpp:
+ * loader/cache/CachedResource.h:
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::CachedResourceLoader):
+ (WebCore::CachedResourceLoader::~CachedResourceLoader):
+ (WebCore::CachedResourceLoader::requestImage):
+ (WebCore::CachedResourceLoader::setAutoLoadImages):
+ (WebCore::CachedResourceLoader::load):
+ (WebCore::CachedResourceLoader::loadDone): Was setLoadInProgress(false),
+ plus other CachedResourceLoader cleanup that had been handled in Loader.
+ (WebCore::CachedResourceLoader::cancelRequests): Moved from Loader.
+ (WebCore::CachedResourceLoader::requestCount):
+ * loader/cache/CachedResourceLoader.h:
+ (WebCore::CachedResourceLoader::loadFinishing): Was setLoadInProgress(true)
+ * loader/cache/MemoryCache.h:
+ * loader/loader.cpp:
+ (WebCore::Loader::Loader):
+ (WebCore::Loader::~Loader):
+ (WebCore::Loader::load):
+ (WebCore::Loader::willSendRequest):
+ (WebCore::Loader::didFinishLoading):
+ (WebCore::Loader::didFail):
+ (WebCore::Loader::didReceiveResponse):
+ (WebCore::Loader::didReceiveData):
+ (WebCore::Loader::didReceiveCachedMetadata):
+ * loader/loader.h:
+ (WebCore::Loader::cachedResourceLoader):
+
+2010-12-10 Martin Robinson <mrobinson@igalia.com>
+
+ Unreviewed, rolling out r73703.
+ http://trac.webkit.org/changeset/73703
+ https://bugs.webkit.org/show_bug.cgi?id=49658
+
+ This patch is causing crashes on the GTK+ bots.
+
+ * platform/ContextMenuItem.h:
+ (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription):
+ * platform/gtk/ContextMenuGtk.cpp:
+ (WebCore::ContextMenu::appendItem):
+ * platform/gtk/ContextMenuItemGtk.cpp:
+ (WebCore::ContextMenuItem::ContextMenuItem):
+ (WebCore::ContextMenuItem::~ContextMenuItem):
+ (WebCore::ContextMenuItem::createNativeMenuItem):
+ (WebCore::ContextMenuItem::releasePlatformDescription):
+ (WebCore::ContextMenuItem::type):
+ (WebCore::ContextMenuItem::setType):
+ (WebCore::ContextMenuItem::action):
+ (WebCore::ContextMenuItem::setAction):
+ (WebCore::ContextMenuItem::title):
+ (WebCore::ContextMenuItem::setTitle):
+ (WebCore::ContextMenuItem::platformSubMenu):
+ (WebCore::ContextMenuItem::setSubMenu):
+ (WebCore::ContextMenuItem::setChecked):
+ (WebCore::ContextMenuItem::setEnabled):
+
+2010-12-08 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ fast/canvas/canvas-getImageData-negative-source.html fails on Mac
+ https://bugs.webkit.org/show_bug.cgi?id=47901
+
+ Test: fast/canvas/canvas-getImageData-rounding.html
+
+ static_cast<unsigned> is generally not what we want in
+ convertLogicalToDevice. It produces inconsistent results when compiling
+ for 32-bit vs. 64-bit, and in any case we weren't getting correct
+ rounding behavior for source rectangles (e.g. we should get a source rect
+ of width 2 if the source X is 0.9 and the source width is 0.2, but we
+ were getting only one of width 1).
+
+ * html/HTMLCanvasElement.cpp:
+ (WebCore::HTMLCanvasElement::convertLogicalToDevice):
+ (WebCore::HTMLCanvasElement::convertToValidDeviceSize):
+ * html/HTMLCanvasElement.h:
+
+2010-12-10 Hironori Bono <hbono@chromium.org>
+
+ Reviewed by Ojan Vafai.
+
+ [Chromium] Use libjpeg-turbo instead of libjpeg
+ https://bugs.webkit.org/show_bug.cgi?id=50054
+
+ This change replaces the hard-coded path to the GYP files of the JPEG
+ library with a 'libjpeg_gyp_path' variable, which is added by Chromium
+ r68453. (When building WebKit Chromium, this change sets its value to
+ '<(chromium_src_dir)/third_party/libjpeg/libjpeg.gyp' to avoid changing
+ the current behavior.)
+
+ No new tests since this does not change the code at all.
+
+ * WebCore.gyp/WebCore.gyp:
+
+2010-12-10 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
+ https://bugs.webkit.org/show_bug.cgi?id=49388
+
+ Got rid of the NonZeroBeginTimeFlag. Functionality is now hidden inside
+ the implementation.
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::setAnimationOnLayer):
+ * platform/graphics/ca/PlatformCAAnimation.h:
+ * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
+ (hasNonZeroBeginTimeFlag):
+ (setNonZeroBeginTimeFlag):
+ (PlatformCAAnimation::PlatformCAAnimation):
+ (PlatformCAAnimation::setBeginTime):
+
+2010-12-10 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: eliminate SourceFrameDelegate by passing scripts to SourceFrame constructor.
+ https://bugs.webkit.org/show_bug.cgi?id=50679
+
+ * inspector/front-end/Script.js:
+ * inspector/front-end/ScriptView.js:
+ (WebInspector.ScriptView):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.reset):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame):
+ (WebInspector.SourceFrame.prototype._createViewerIfNeeded):
+ (WebInspector.SourceFrame.prototype._breakpointAdded):
+ (WebInspector.SourceFrame.prototype._doEditLine):
+ (WebInspector.SourceFrame.prototype._commitEditLine):
+ (WebInspector.SourceFrame.prototype._breakpoints):
+ (WebInspector.SourceFrame.prototype._sourceIDForLine):
+ * inspector/front-end/SourceView.js:
+ (WebInspector.SourceView):
+
+2010-12-10 Andreas Kling <kling@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Don't do GraphicsContext save/restore just to preserve the CompositeOperator
+ https://bugs.webkit.org/show_bug.cgi?id=50070
+
+ Add GraphicsContext::compositeOperation() so we don't have to do a full
+ save/restore if the only context-tainting call is setCompositeOperation().
+
+ GraphicsContext::setCompositeOperation() now stores the op in its state
+ and calls a port-specific setPlatformCompositeOperation().
+
+ No new tests, this is an optimization.
+
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::setCompositeOperation):
+ (WebCore::GraphicsContext::compositeOperation):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/GraphicsContextPrivate.h:
+ (WebCore::GraphicsContextState::GraphicsContextState):
+ * platform/graphics/Image.cpp:
+ (WebCore::Image::fillWithSolidColor):
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::setPlatformCompositeOperation):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::setPlatformCompositeOperation):
+ * platform/graphics/haiku/GraphicsContextHaiku.cpp:
+ (WebCore::GraphicsContext::setPlatformCompositeOperation):
+ * platform/graphics/mac/GraphicsContextMac.mm:
+ (WebCore::GraphicsContext::setPlatformCompositeOperation):
+ * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
+ (WebCore::GraphicsContext::setPlatformCompositeOperation):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::setPlatformCompositeOperation):
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::setPlatformCompositeOperation):
+ * platform/graphics/skia/SkiaUtils.cpp:
+ (WebCore::WebCoreCompositeToSkiaComposite):
+ * platform/graphics/wince/GraphicsContextWinCE.cpp:
+ (WebCore::GraphicsContext::setPlatformCompositeOperation):
+ * platform/graphics/wx/GraphicsContextWx.cpp:
+ (WebCore::GraphicsContext::setPlatformCompositeOperation):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paintFillLayerExtended):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::paintBoxDecorations):
+
+2010-12-10 Renata Hodovan <reni@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ GraphicsContext: Merge m_common and m_data
+ https://bugs.webkit.org/show_bug.cgi?id=49914
+
+ Move data members from GraphicsContextPrivate into GraphicsContext. So GraphicsContextPlatform.h
+ and m_common became unnecessary. They are removed.
+ Add two methods to GraphicsContext: platformInit() and platformDestroy(), which
+ make the constructor of GraphicsContext clearer.
+ Besides add a getter to the private GraphicsContext::m_state member, because some inline
+ functions in cairo need it.
+
+ No new test is needed, because this is a refactoring.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::~GraphicsContext):
+ (WebCore::GraphicsContext::save):
+ (WebCore::GraphicsContext::restore):
+ (WebCore::GraphicsContext::setStrokeThickness):
+ (WebCore::GraphicsContext::setStrokeStyle):
+ (WebCore::GraphicsContext::setStrokeColor):
+ (WebCore::GraphicsContext::setShadow):
+ (WebCore::GraphicsContext::clearShadow):
+ (WebCore::GraphicsContext::getShadow):
+ (WebCore::GraphicsContext::strokeThickness):
+ (WebCore::GraphicsContext::strokeStyle):
+ (WebCore::GraphicsContext::strokeColor):
+ (WebCore::GraphicsContext::strokeColorSpace):
+ (WebCore::GraphicsContext::fillRule):
+ (WebCore::GraphicsContext::setFillRule):
+ (WebCore::GraphicsContext::setFillColor):
+ (WebCore::GraphicsContext::fillColor):
+ (WebCore::GraphicsContext::fillColorSpace):
+ (WebCore::GraphicsContext::setShouldAntialias):
+ (WebCore::GraphicsContext::shouldAntialias):
+ (WebCore::GraphicsContext::state):
+ (WebCore::GraphicsContext::setStrokePattern):
+ (WebCore::GraphicsContext::setFillPattern):
+ (WebCore::GraphicsContext::setStrokeGradient):
+ (WebCore::GraphicsContext::setFillGradient):
+ (WebCore::GraphicsContext::fillGradient):
+ (WebCore::GraphicsContext::strokeGradient):
+ (WebCore::GraphicsContext::fillPattern):
+ (WebCore::GraphicsContext::strokePattern):
+ (WebCore::GraphicsContext::setShadowsIgnoreTransforms):
+ (WebCore::GraphicsContext::updatingControlTints):
+ (WebCore::GraphicsContext::setUpdatingControlTints):
+ (WebCore::GraphicsContext::setPaintingDisabled):
+ (WebCore::GraphicsContext::paintingDisabled):
+ (WebCore::GraphicsContext::textDrawingMode):
+ (WebCore::GraphicsContext::setTextDrawingMode):
+ * platform/graphics/GraphicsContext.h:
+ (WebCore::GraphicsContextState::GraphicsContextState):
+ * platform/graphics/GraphicsContextPrivate.h: Removed.
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::setPlatformFill):
+ (WebCore::setPlatformStroke):
+ (WebCore::drawPathShadow):
+ (WebCore::fillCurrentCairoPath):
+ (WebCore::strokeCurrentCairoPath):
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ (WebCore::GraphicsContext::strokeRect):
+ (WebCore::GraphicsContext::setAlpha):
+ (WebCore::GraphicsContext::getAlpha):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::applyStrokePattern):
+ (WebCore::GraphicsContext::applyFillPattern):
+ (WebCore::GraphicsContext::drawPath):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ (WebCore::GraphicsContext::strokeRect):
+ * platform/graphics/haiku/GraphicsContextHaiku.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::clip):
+ (WebCore::GraphicsContext::clipOut):
+ (WebCore::GraphicsContext::addInnerRoundedRectClip):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::platformInit):
+ * platform/graphics/win/GraphicsContextCairoWin.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::platformInit):
+ * platform/graphics/wince/GraphicsContextWinCE.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::fillRect):
+ * platform/graphics/wx/GraphicsContextWx.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+
+2010-12-10 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: introduce a pair of set/remove methods for each breakpoint type.
+ https://bugs.webkit.org/show_bug.cgi?id=50809
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::setEventListenerBreakpoint):
+ (WebCore::InspectorController::removeEventListenerBreakpoint):
+ (WebCore::InspectorController::hasEventListenerBreakpoint):
+ (WebCore::InspectorController::setXHRBreakpoint):
+ (WebCore::InspectorController::removeXHRBreakpoint):
+ (WebCore::InspectorController::hasXHRBreakpoint):
+ (WebCore::InspectorController::clearNativeBreakpoints):
+ * inspector/InspectorController.h:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::setDOMBreakpoint):
+ (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
+ (WebCore::InspectorDOMAgent::shouldBreakOnNodeInsertion):
+ (WebCore::InspectorDOMAgent::shouldBreakOnNodeRemoval):
+ (WebCore::InspectorDOMAgent::shouldBreakOnAttributeModification):
+ (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
+ (WebCore::InspectorDOMAgent::didRemoveDOMNode):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
+ (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
+ (WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager):
+ (WebInspector.NativeBreakpoint):
+ (WebInspector.DOMBreakpoint):
+ (WebInspector.EventListenerBreakpoint):
+ (WebInspector.XHRBreakpoint):
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane):
+ (WebInspector.CallStackSidebarPane.prototype._nativeBreakpointHit):
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel.prototype.debuggerPaused):
+
+2010-12-10 Adam Roben <aroben@apple.com>
+
+ Windows production build fix after r72555
+
+ * WebCore.vcproj/WebCoreGeneratedCommon.vsprops: Use
+ "$(WebKitVSPropsRedirectionDir)..\..\WebKitLibraries\win" to find the
+ .vsprops files, rather than $(WebKitLibrariesDir).
+
+2010-12-10 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
+
+ Reviewed by nobody, build fix.
+
+ [Qt] Second attempt to fix the build with Qt 4.6 broken in 73710.
+
+ * platform/network/qt/QtNAMThreadSafeProxy.cpp:
+ (WebCore::QtNetworkReplyThreadSafeProxy::QtNetworkReplyThreadSafeProxy):
+ (WebCore::QtNetworkReplyThreadSafeProxy::localCustomRequest):
+ * platform/network/qt/QtNAMThreadSafeProxy.h:
+
+2010-12-10 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
+
+ Reviewed by nobody, build fix.
+
+ [Qt] Fix the build with Qt 4.6 broken in 73710.
+
+ * platform/network/qt/QtNAMThreadSafeProxy.cpp:
+ (WebCore::QtNetworkReplyThreadSafeProxy::QtNetworkReplyThreadSafeProxy):
+ * platform/network/qt/QtNAMThreadSafeProxy.h:
+
+2010-12-10 Emil Eklund <eae@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Change EventHandler::dispatchMouseEvent code to use DOM traversal instead of render tree traversal
+ https://bugs.webkit.org/show_bug.cgi?id=49982
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::dispatchMouseEvent):
+ Walk up DOM/hosted tree rather than render tree.
+
+2010-12-10 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Support a QNetworkAccessManager affined to a different thread.
+ https://bugs.webkit.org/show_bug.cgi?id=50080
+
+ This patch introduce thread safe proxy classes for QNetworkAccessManager
+ and QNetworkReply.
+ If run in the same thread, these objects will forward the calls with
+ Qt::DirectConnection bindings, while in the other case they will use
+ Qt::QueuedConnection to carry requests accross threads.
+
+ This patch basically:
+ - Makes sure that all access goes through these objects
+ - Reorders signal connections to make sure we are connected when the
+ signal comes
+ - Makes sure that no QObject in the WebCore thread is a child of the
+ reply which might be in a different thread.
+ - Forward the data directly in QByteArrays in signals instead of collecting
+ the data when the signal is handled.
+
+ New test: tst_QWebPage::networkAccessManagerOnDifferentThread
+
+ * WebCore.pro:
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+ (WebCore::MediaPlayerPrivateQt::commitLoad):
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::FormDataIODevice::FormDataIODevice):
+ (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
+ (WebCore::QNetworkReplyHandler::~QNetworkReplyHandler):
+ (WebCore::QNetworkReplyHandler::setLoadMode):
+ (WebCore::QNetworkReplyHandler::abort):
+ (WebCore::QNetworkReplyHandler::release):
+ (WebCore::ignoreHttpError):
+ (WebCore::QNetworkReplyHandler::finish):
+ (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
+ (WebCore::QNetworkReplyHandler::forwardData):
+ (WebCore::QNetworkReplyHandler::start):
+ (WebCore::QNetworkReplyHandler::sendQueuedItems):
+ * platform/network/qt/QNetworkReplyHandler.h:
+ * platform/network/qt/QtNAMThreadSafeProxy.cpp: Added.
+ * platform/network/qt/QtNAMThreadSafeProxy.h: Added.
+ * platform/network/qt/ResourceHandleQt.cpp:
+ (WebCore::ResourceHandle::willLoadFromCache):
+ * platform/qt/CookieJarQt.cpp:
+ (WebCore::networkAccessManager):
+ (WebCore::setCookies):
+ (WebCore::cookies):
+ (WebCore::cookieRequestHeaderFieldValue):
+ (WebCore::cookiesEnabled):
+
+2010-12-09 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Refactor QNetworkReplyHandler::finish() to prevent crashes.
+ https://bugs.webkit.org/show_bug.cgi?id=50761
+
+ This patch change the order to check if m_reply is null instead,
+ explicitly deleting the reply before calling start() for a redirect,
+ or after calling didFinishLoading()/didFail() in other cases.
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::finish):
+
+2010-12-09 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Make sure we send the response before any data.
+ https://bugs.webkit.org/show_bug.cgi?id=50760
+
+ This patch make sure the data available flag is set before
+ we call sendResponseIfNeeded.
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
+ (WebCore::QNetworkReplyHandler::finish):
+ (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
+ (WebCore::QNetworkReplyHandler::forwardData):
+ (WebCore::QNetworkReplyHandler::resetState):
+ * platform/network/qt/QNetworkReplyHandler.h:
+
+2010-12-10 Koan-Sin Tan <koansin.tan@gmail.com>
+
+ Reviewed by Dan Bernstein.
+
+ Bopomofo should be part of CJK Ideographs in WebCore/platform/graphics/Font.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=50668
+
+ No new tests. Note that, as said in the bug report discussion,
+ I did have a test case for the bug. However, to show the test
+ case you need some "broken" Microsoft copyrighted fonts, such
+ as DFKai-SB.
+
+ * platform/graphics/Font.cpp:
+ (WebCore::Font::isCJKIdeograph):
+
+2010-12-10 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Simplify context-menu handling code
+ https://bugs.webkit.org/show_bug.cgi?id=49658
+
+ * platform/ContextMenuItem.h:
+ * platform/gtk/ContextMenuGtk.cpp:
+ (WebCore::ContextMenu::appendItem):
+ * platform/gtk/ContextMenuItemGtk.cpp:
+ (WebCore::ContextMenuItem::ContextMenuItem):
+ (WebCore::ContextMenuItem::~ContextMenuItem):
+ (WebCore::ContextMenuItem::releasePlatformDescription):
+ (WebCore::ContextMenuItem::type):
+ (WebCore::ContextMenuItem::setType):
+ (WebCore::ContextMenuItem::action):
+ (WebCore::ContextMenuItem::setAction):
+ (WebCore::ContextMenuItem::title):
+ (WebCore::ContextMenuItem::setTitle):
+ (WebCore::ContextMenuItem::platformSubMenu):
+ (WebCore::ContextMenuItem::setSubMenu):
+ (WebCore::ContextMenuItem::setChecked):
+ (WebCore::ContextMenuItem::setEnabled):
+
+2010-12-10 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ [GStreamer] un-needed methods
+ https://bugs.webkit.org/show_bug.cgi?id=50805
+
+ No new tests, code cleanup only.
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
+
+2010-12-10 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ [GStreamer] data: source could also support non-base64 encoded URIs
+ https://bugs.webkit.org/show_bug.cgi?id=30007
+
+ Removed our ancient implementation of dataurisrc. We should now
+ use the one in gst-plugins-bad which is more mature.
+
+ * GNUmakefile.am:
+ * platform/graphics/gstreamer/DataSourceGStreamer.cpp: Removed.
+ * platform/graphics/gstreamer/DataSourceGStreamer.h: Removed.
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::doGstInit):
+
+2010-12-10 Zoltan Herczeg <zherczeg@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ [Qt] Fix crashes in debug mode
+ https://bugs.webkit.org/show_bug.cgi?id=49976
+
+ The m_methods hashmap of QtInstance contains InternalFunctions
+ whose depend on the current RuntimeObject. When we recreate the
+ RuntimeObject, we should also reset this hashmap.
+
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtInstance::newRuntimeObject):
+
+2010-12-10 François Sausset <sausset@gmail.com>
+
+ Reviewed by Eric Seidel.
+
+ MathML: update baselinePosition() call in RenderMathMLBlock.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=50540
+
+ The call of baselinePosition() is outdated: new arguments added.
+
+ * mathml/RenderMathMLBlock.cpp:
+ (WebCore::RenderMathMLBlock::paint):
+
+2010-12-10 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: Numeric keys are floats.
+ https://bugs.webkit.org/show_bug.cgi?id=50674
+
+ Use floating point to represent numeric keys,
+ add version meta data to the SQLite db,
+ and migrate object stores that use integers.
+
+ * bindings/v8/IDBBindingUtilities.cpp:
+ (WebCore::createIDBKeyFromValue):
+ * bindings/v8/custom/V8IDBKeyCustom.cpp:
+ (WebCore::toV8):
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::createTables):
+ (WebCore::migrateDatabase):
+ (WebCore::IDBFactoryBackendImpl::open):
+ * storage/IDBKey.cpp:
+ (WebCore::IDBKey::IDBKey):
+ (WebCore::IDBKey::fromQuery):
+ (WebCore::IDBKey::bind):
+ (WebCore::IDBKey::bindWithNulls):
+ * storage/IDBKey.h:
+ (WebCore::IDBKey::create):
+ (WebCore::IDBKey::number):
+
+2010-12-10 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [Gtk] style="font-family: courier" makes text disappear
+ https://bugs.webkit.org/show_bug.cgi?id=47452
+
+ Don't ever use fonts that do not have any of the three charmaps that
+ Fontconfig supports (Unicode, Apple Roman and Symbol). If we select
+ a font that doesn't have one of these charmaps, use the next font in
+ the list.
+
+ Test: platform/gtk/fonts/font-with-no-valid-encoding.html
+
+ * platform/graphics/freetype/FontCacheFreeType.cpp:
+ (WebCore::FontCache::createFontPlatformData): Check whether the
+ font we selected has a valid Fontconfig charmap.
+ * platform/graphics/freetype/FontPlatformData.h: Added new method definition.
+ * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
+ (WebCore::FontPlatformData::hasCompatibleCharmap): Added this method which
+ verifies that a font has a valid Fontconfig charmap.
+
+2010-12-09 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Ojan Vafai.
+
+ Make DOM Mutation Events Asynchronous
+ https://bugs.webkit.org/show_bug.cgi?id=46936
+
+ Implemented DOM mutations events as scoped events. A scoped event is an event whose
+ dispatch is done via ScopedEventQueue. The behavior of the queue is controlled by
+ EventQueueScope objects (RAII idiom), which increments and decrements the scoping level
+ on its constructor and destructor respectively.
+
+ When the scoping level is 0 (initial level), scoped events are dispatched as soon as
+ they are enqueued and act like synchronous events. When the scoping level is greater than 0,
+ however, events are queued in ScopedEventQueue and their dispatches are delayed until
+ the scoping level goes back to 0 (by the destruction of EventQueueScope).
+
+ DOMSubtreeModified, DOMNodeInserted, DOMNodeRemoved, DOMNodeRemovedFromDocument,
+ DOMNodeInsertedIntoDocument, DOMFocusIn, DOMFocusOut, focusin, and focusout are treated as
+ scoped events, and a scope object is instantiated in EditCommand::apply to delay dispatches
+ of the events until the completion of each call of EditCommand::doApply.
+
+ Test: fast/events/mutation/execCommands.html
+
+ * Android.mk: Added ScopedEventQueue.cpp.
+ * CMakeLists.txt: Ditto.
+ * WebCore.pro: Ditto.
+ * GNUmakefile.am: Added ScopedEventQueue.cpp and ScopedEventQueue.h.
+ * WebCore.gypi: Ditto.
+ * WebCore.vcproj/project.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * dom/ContainerNode.cpp:
+ (WebCore::dispatchChildInsertionEvents): Calls dispatchScopedEvent.
+ (WebCore::dispatchChildRemovalEvents): Ditto.
+ * dom/DOMAllInOne.cpp: Added ScopedEventQueue.cpp.
+ * dom/Element.cpp:
+ (WebCore::Element::dispatchAttrRemovalEvent): Ditto.
+ (WebCore::Element::dispatchAttrAdditionEvent): Ditto.
+ * dom/Node.cpp:
+ (WebCore::Node::dispatchScopedEvent): Added.
+ (WebCore::Node::dispatchSubtreeModifiedEvent): Calls dispatchScopedEvent.
+ * dom/Node.h:
+ * dom/ScopedEventQueue.cpp: Added.
+ (WebCore::ScopedEventQueue::initialize): Added.
+ (WebCore::ScopedEventQueue::enqueueEvent): Added.
+ (WebCore::ScopedEventQueue::dispatchAllEvents): Added.
+ (WebCore::ScopedEventQueue::dispatchEvent): Added.
+ (WebCore::ScopedEventQueue::instance): Added.
+ (WebCore::ScopedEventQueue::incrementScopingLevel): Added.
+ (WebCore::ScopedEventQueue::decrementScopingLevel): Added.
+ * dom/ScopedEventQueue.h: Added.
+ (WebCore::ScopedEventQueue::~ScopedEventQueue): Added.
+ (WebCore::ScopedEventQueue::ScopedEventQueue): Added.
+ (WebCore::EventQueueScope::EventQueueScope): Added.
+ (WebCore::EventQueueScope::~EventQueueScope): Added.
+ * editing/EditCommand.cpp:
+ (WebCore::EditCommand::apply): Instantiates EventQueueScope.
+
+2010-12-09 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r73684.
+ http://trac.webkit.org/changeset/73684
+ https://bugs.webkit.org/show_bug.cgi?id=50801
+
+ "missing bug number" (Requested by rniwa on #webkit).
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/ContainerNode.cpp:
+ (WebCore::dispatchChildInsertionEvents):
+ (WebCore::dispatchChildRemovalEvents):
+ * dom/DOMAllInOne.cpp:
+ * dom/Element.cpp:
+ (WebCore::Element::dispatchAttrRemovalEvent):
+ (WebCore::Element::dispatchAttrAdditionEvent):
+ * dom/Node.cpp:
+ (WebCore::Node::dispatchSubtreeModifiedEvent):
+ (WebCore::Node::dispatchUIEvent):
+ * dom/Node.h:
+ * dom/ScopedEventQueue.cpp: Removed.
+ * dom/ScopedEventQueue.h: Removed.
+ * editing/EditCommand.cpp:
+ (WebCore::EditCommand::apply):
+
+2010-12-09 Qi Zhang <qi.2.zhang@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] enable orientation flag when QtMobility available
+ https://bugs.webkit.org/show_bug.cgi?id=50781
+
+ When QtMobility available, enable orientation flag by default.
+
+ * features.pri:
+
+2010-12-09 Kenichi Ishibashi <bashi@google.com>
+
+ Reviewed by Kent Tamura.
+
+ Improve validation API support of <object> and <keygen>
+ https://bugs.webkit.org/show_bug.cgi?id=50663
+
+ Adds validation API to HTMLObjectElement class.
+ Makes HTMLKeygenElement::willValidate() return false.
+
+ Test: fast/forms/setCustomValidity-existence.html
+
+ * html/HTMLKeygenElement.h:
+ (WebCore::HTMLKeygenElement::willValidate): Added.
+ * html/HTMLObjectElement.h:
+ (WebCore::HTMLObjectElement::validationMessage): Added.
+ (WebCore::HTMLObjectElement::checkValidity): Added.
+ (WebCore::HTMLObjectElement::setCustomValidity): Added.
+ * html/HTMLObjectElement.idl: Added validation API properties.
+
+2010-12-09 Sadrul Habib Chowdhury <sadrul@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ Make sure a non-zero value is used for tile-width to avoid a crash
+ https://bugs.webkit.org/show_bug.cgi?id=50341
+
+ The scaled tile width can be very small at times (e.g. with 'style: font 1
+ required'). So use a minimum width of 1 instead of using 0 (which leads to a
+ crash).
+
+ Tests: fast/dom/HTMLProgressElement/progress-element-with-style-crash.html
+
+ * rendering/RenderThemeChromiumSkia.cpp:
+ (WebCore::RenderThemeChromiumSkia::paintProgressBar):
+
+2010-12-09 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Ojan Vafai.
+
+ Implemented DOM mutations events as scoped events. A scoped event is an event whose
+ dispatch is done via ScopedEventQueue. The behavior of the queue is controlled by
+ EventQueueScope objects (RAII idiom), which increments and decrements the scoping level
+ on its constructor and destructor respectively.
+
+ When the scoping level is 0 (initial level), scoped events are dispatched as soon as
+ they are enqueued and act like synchronous events. When the scoping level is greater than 0,
+ however, events are queued in ScopedEventQueue and their dispatches are delayed until
+ the scoping level goes back to 0 (by the destruction of EventQueueScope).
+
+ DOMSubtreeModified, DOMNodeInserted, DOMNodeRemoved, DOMNodeRemovedFromDocument,
+ DOMNodeInsertedIntoDocument, DOMFocusIn, DOMFocusOut, focusin, and focusout are treated as
+ scoped events, and a scope object is instantiated in EditCommand::apply to delay dispatches
+ of the events until the completion of each call of EditCommand::doApply.
+
+ Test: fast/events/mutation/execCommands.html
+
+ * Android.mk: Added ScopedEventQueue.cpp.
+ * CMakeLists.txt: Ditto.
+ * WebCore.pro: Ditto.
+ * GNUmakefile.am: Added ScopedEventQueue.cpp and ScopedEventQueue.h.
+ * WebCore.gypi: Ditto.
+ * WebCore.vcproj/project.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * dom/ContainerNode.cpp:
+ (WebCore::dispatchChildInsertionEvents): Calls dispatchScopedEvent.
+ (WebCore::dispatchChildRemovalEvents): Ditto.
+ * dom/DOMAllInOne.cpp: Added ScopedEventQueue.cpp.
+ * dom/Element.cpp:
+ (WebCore::Element::dispatchAttrRemovalEvent): Ditto.
+ (WebCore::Element::dispatchAttrAdditionEvent): Ditto.
+ * dom/Node.cpp:
+ (WebCore::Node::dispatchScopedEvent): Added.
+ (WebCore::Node::dispatchSubtreeModifiedEvent): Calls dispatchScopedEvent.
+ * dom/Node.h:
+ * dom/ScopedEventQueue.cpp: Added.
+ (WebCore::ScopedEventQueue::initialize): Added.
+ (WebCore::ScopedEventQueue::enqueueEvent): Added.
+ (WebCore::ScopedEventQueue::dispatchAllEvents): Added.
+ (WebCore::ScopedEventQueue::dispatchEvent): Added.
+ (WebCore::ScopedEventQueue::instance): Added.
+ (WebCore::ScopedEventQueue::incrementScopingLevel): Added.
+ (WebCore::ScopedEventQueue::decrementScopingLevel): Added.
+ * dom/ScopedEventQueue.h: Added.
+ (WebCore::ScopedEventQueue::~ScopedEventQueue): Added.
+ (WebCore::ScopedEventQueue::ScopedEventQueue): Added.
+ (WebCore::EventQueueScope::EventQueueScope): Added.
+ (WebCore::EventQueueScope::~EventQueueScope): Added.
+ * editing/EditCommand.cpp:
+ (WebCore::EditCommand::apply): Instantiates EventQueueScope.
+
+2010-12-09 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Gavin Barraclough.
+
+ Fix scrolling with mouse wheel in WebKit2 views. Once
+ we coalesce wheel events, we can re-enable this.
+
+ * platform/mac/ScrollAnimatorMac.mm:
+ (WebCore::ScrollAnimatorMac::scroll):
+
+2010-12-09 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by James Robinson.
+
+ For details element, ensure that if we ended up being inline that we set out replaced
+ flag so that we are treated like an inline block.
+ https://bugs.webkit.org/show_bug.cgi?id=50671
+
+ Test: fast/html/details-element-render-inline-crash.html
+
+ * rendering/RenderDetails.cpp:
+ (WebCore::RenderDetails::styleDidChange): setReplaced to true if we are set as inline.
+ * rendering/RenderDetails.h: function definition.
+
+2010-12-09 Jasmin Lapalme <jlapalme@druide.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Fix a faulty conversion from UTF-8 to UTF-16 in WebCore during an XSLT transformation.
+ https://bugs.webkit.org/show_bug.cgi?id=50708
+
+ Test: fast/xsl/utf8-chunks.xml
+
+ * xml/XSLTProcessorLibxslt.cpp:
+ (WebCore::writeToVector): now converts and returns the correct byte count when the end of the chunk is in the middle of a multibyte UTF-8 character.
+
+2010-12-09 Vincent Scheib <scheib@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Clip update rectangle for Texture::updateSubRect to texture size
+ https://bugs.webkit.org/show_bug.cgi?id=49929
+
+ Test: fast/canvas/canvas-largedraws.html
+
+ * platform/graphics/gpu/Texture.cpp:
+ (WebCore::Texture::updateSubRect):
+
+2010-12-09 Kenneth Russell <kbr@google.com>
+
+ Unreviewed. Another speculative Gtk build fix after r73669. Add
+ needed derived sources to GNUmakefile.am.
+
+ * GNUmakefile.am:
+
+2010-12-09 Kenneth Russell <kbr@google.com>
+
+ Unreviewed. Speculative Gtk build fix after
+ https://bugs.webkit.org/show_bug.cgi?id=36512 / r73669. Process
+ all of the WebGL classes' IDL files.
+
+ * CMakeLists.txt:
+
+2010-12-09 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Expose constructor functions for instanceof checks of WebGL objects
+ https://bugs.webkit.org/show_bug.cgi?id=36512
+
+ Test: fast/canvas/webgl/instanceof-test.html
+
+ * bindings/generic/RuntimeEnabledFeatures.h:
+ (WebCore::RuntimeEnabledFeatures::webGLActiveInfoEnabled):
+ (WebCore::RuntimeEnabledFeatures::webGLBufferEnabled):
+ (WebCore::RuntimeEnabledFeatures::webGLFramebufferEnabled):
+ (WebCore::RuntimeEnabledFeatures::webGLProgramEnabled):
+ (WebCore::RuntimeEnabledFeatures::webGLRenderbufferEnabled):
+ (WebCore::RuntimeEnabledFeatures::webGLShaderEnabled):
+ (WebCore::RuntimeEnabledFeatures::webGLTextureEnabled):
+ (WebCore::RuntimeEnabledFeatures::webGLUniformLocationEnabled):
+ * html/canvas/WebGLActiveInfo.idl: Remove OmitConstructor.
+ * html/canvas/WebGLBuffer.idl: Ditto.
+ * html/canvas/WebGLFramebuffer.idl: Ditto.
+ * html/canvas/WebGLProgram.idl: Ditto.
+ * html/canvas/WebGLRenderbuffer.idl: Ditto.
+ * html/canvas/WebGLShader.idl: Ditto.
+ * html/canvas/WebGLTexture.idl: Ditto.
+ * html/canvas/WebGLUniformLocation.idl: Ditto.
+ * page/DOMWindow.idl: Expose constructors for WebGL objects in DOMWindow.
+
+2010-12-09 Timothy Hatcher <timothy@apple.com>
+
+ Export Color::white and Color::transparent.
+
+ Reviewed by Anders Carlsson.
+
+ * WebCore.exp.in:
+
+2010-12-09 Sam Weinig <sam@webkit.org>
+
+ Fix failing Mac tests.
+
+ * platform/mac/ScrollAnimatorMac.mm:
+ (WebCore::ScrollAnimatorMac::scroll): Don't smooth scroll if the default
+ AppleScrollAnimationEnabled is false.
+
+2010-12-09 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Compositor needs to manage its VRAM use
+ https://bugs.webkit.org/show_bug.cgi?id=49629
+
+ This adds a basic texture manager to the Chromium compositor to limit the amount of VRAM
+ used by compositor textures and switches ContentLayerChromium, ImageLayerChromium, and
+ RenderSurfaceChromium to use managed LayerTexture. The other *LayerChromium classes (Canvas,
+ Video, and WebGL) and the root layer are still unmanaged.
+
+ The TextureManager works by providing tokens to callers that want to use a managed texture.
+ The token can be used to request a texture, see if the previously requested texture is still
+ available, and to protect/unprotect textures when they cannot be collected. Whenever a
+ texture is created the manager attempts to free up the least recently used textures until the
+ total memory use is below the provided threshhold. If the manager cannot satisfy the memory
+ limit it will not return any new textures until some old textures are released.
+
+ A LayerTexture wraps a TextureManager token, size, and format. A LayerChromium can check if a
+ previously requested texture is still available for use and reserve the LayerTexture's underlying
+ storage between the updateContentsIfDirty() and the draw() call.
+
+ Also changes LayerChromium from having separate contentsDirty()/updateContents() calls to a single
+ updateContentsIfDirty().
+
+ Tests: platform/chromium/compositing/lots-of-img-layers-with-opacity.html
+ platform/chromium/compositing/lots-of-img-layers.html
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
+ (WebCore::Canvas2DLayerChromium::updateContentsIfDirty):
+ * platform/graphics/chromium/Canvas2DLayerChromium.h:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::cleanupResources):
+ (WebCore::ContentLayerChromium::updateContentsIfDirty):
+ (WebCore::ContentLayerChromium::updateTextureRect):
+ (WebCore::ContentLayerChromium::draw):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContentsIfDirty):
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::updateContentsIfDirty):
+ (WebCore::LayerChromium::draw):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::useShader):
+ (WebCore::LayerRendererChromium::prepareToDrawLayers):
+ (WebCore::LayerRendererChromium::updateRootLayerTextureRect):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::getFramebufferPixels):
+ (WebCore::LayerRendererChromium::createLayerTexture):
+ (WebCore::LayerRendererChromium::deleteLayerTexture):
+ (WebCore::LayerRendererChromium::updateLayersRecursive):
+ (WebCore::LayerRendererChromium::useRenderSurface):
+ (WebCore::LayerRendererChromium::drawLayer):
+ (WebCore::LayerRendererChromium::setScissorToRect):
+ (WebCore::LayerRendererChromium::setDrawViewportRect):
+ (WebCore::LayerRendererChromium::initializeSharedObjects):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::renderSurfaceSharedValues):
+ (WebCore::LayerRendererChromium::textureManager):
+ * platform/graphics/chromium/LayerTexture.cpp: Added.
+ (WebCore::LayerTexture::LayerTexture):
+ (WebCore::LayerTexture::~LayerTexture):
+ (WebCore::LayerTexture::isValid):
+ (WebCore::LayerTexture::reserve):
+ (WebCore::LayerTexture::unreserve):
+ (WebCore::LayerTexture::bindTexture):
+ (WebCore::LayerTexture::framebufferTexture2D):
+ * platform/graphics/chromium/LayerTexture.h: Added.
+ (WebCore::LayerTexture::create):
+ * platform/graphics/chromium/PluginLayerChromium.cpp:
+ (WebCore::PluginLayerChromium::updateContentsIfDirty):
+ * platform/graphics/chromium/PluginLayerChromium.h:
+ * platform/graphics/chromium/RenderSurfaceChromium.cpp:
+ (WebCore::RenderSurfaceChromium::SharedValues::SharedValues):
+ (WebCore::RenderSurfaceChromium::SharedValues::~SharedValues):
+ (WebCore::RenderSurfaceChromium::RenderSurfaceChromium):
+ (WebCore::RenderSurfaceChromium::cleanupResources):
+ (WebCore::RenderSurfaceChromium::prepareContentsTexture):
+ (WebCore::RenderSurfaceChromium::draw):
+ * platform/graphics/chromium/RenderSurfaceChromium.h:
+ (WebCore::RenderSurfaceChromium::SharedValues::shaderProgram):
+ (WebCore::RenderSurfaceChromium::SharedValues::shaderSamplerLocation):
+ (WebCore::RenderSurfaceChromium::SharedValues::shaderMatrixLocation):
+ (WebCore::RenderSurfaceChromium::SharedValues::shaderAlphaLocation):
+ (WebCore::RenderSurfaceChromium::SharedValues::initialized):
+ * platform/graphics/chromium/TextureManager.cpp: Added.
+ (WebCore::memoryUseBytes):
+ (WebCore::TextureManager::TextureManager):
+ (WebCore::TextureManager::getToken):
+ (WebCore::TextureManager::releaseToken):
+ (WebCore::TextureManager::hasTexture):
+ (WebCore::TextureManager::protectTexture):
+ (WebCore::TextureManager::unprotectTexture):
+ (WebCore::TextureManager::reduceMemoryToLimit):
+ (WebCore::TextureManager::addTexture):
+ (WebCore::TextureManager::removeTexture):
+ (WebCore::TextureManager::requestTexture):
+ * platform/graphics/chromium/TextureManager.h: Added.
+ (WebCore::TextureManager::create):
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::updateContentsIfDirty):
+ * platform/graphics/chromium/VideoLayerChromium.h:
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::updateContentsIfDirty):
+ * platform/graphics/chromium/WebGLLayerChromium.h:
+
+2010-12-09 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Rework my recent setLocation refactoring to use DOMWindow instead of Frame.
+ It's difficult to make correct security decisions based on Frame since a
+ Frame can navigate to a new document.
+
+ Fixes some test failures that I somehow missed before the last check-in.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::crossDomainAccessErrorMessage): Call to the
+ shell DOMWindow; not sure this one matters, but it's closer to the old
+ code before my last patch. Also pass the DOMWindow rather than the
+ frame to crossDomainAccessErrorMessage.
+
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::setLocation): Pass DOMWindow rather than Frame
+ to the DOMWindow::setLocation function.
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::setLocation): Take DOMWindow rather than Frame.
+ (WebCore::DOMWindow::crossDomainAccessErrorMessage): Ditto.
+
+ * page/DOMWindow.h: Update new functions to take DOMWindow rather
+ than Frame.
+
+2010-12-09 Sam Weinig <sam@webkit.org>
+
+ Try and fix the mac build.
+
+ * WebCore.exp.in:
+
+2010-12-09 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ Removed an unused variable.
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::computeLogicalBoxHeights): Removed parentLineHeight.
+
+2010-12-09 Darin Adler <darin@apple.com>
+
+ Reviewed by Geoffrey Garen.
+
+ Move DOMWindow::setLocation logic into DOMWindow class and out of JavaScript binding
+ https://bugs.webkit.org/show_bug.cgi?id=50640
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::printErrorMessageForFrame): Removed body; just call through to
+ DOMWindow::printErrorMessage.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::crossDomainAccessErrorMessage): Removed body;
+ just call through to DOMWindow::crossDomainAccessErrorMessage.
+
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::setLocation): Changed terminology to use activeFrame and
+ firstFrame, rather than the older lexicalFrame and dynamicFrame. Removed most
+ of the body and moved it into DOMWindow::setLocation.
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::setLocation): Added. Does all the same work that
+ JSDOMWindow::setLocation used to do, but in a way that's not specific
+ to JavaScript.
+ (WebCore::DOMWindow::printErrorMessage): Added.
+ (WebCore::DOMWindow::crossDomainAccessErrorMessage): Added.
+
+ * page/DOMWindow.h: Added setLocation, printErrorMessage, and
+ crossDomainAccessErrorMessage.
+
+2010-12-09 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Dan Bernstein.
+
+ WebKit2 needs smooth scrolling support on the mac
+ <rdar://problem/8219402>
+
+ * WebCore.xcodeproj/project.pbxproj: Change ScrollAnimatorMac.cpp to ScrollAnimatorMac.mm.
+ * platform/mac/ScrollAnimatorMac.cpp: Removed.
+ * platform/mac/ScrollAnimatorMac.h:
+ * platform/mac/ScrollAnimatorMac.mm: Copied from platform/mac/ScrollAnimatorMac.cpp.
+ (-[ScrollAnimationHelperDelegate initWithScrollAnimator:WebCore::]):
+ (-[ScrollAnimationHelperDelegate bounds]):
+ (-[ScrollAnimationHelperDelegate _immediateScrollToPoint:]):
+ (-[ScrollAnimationHelperDelegate convertSizeToBase:]):
+ (-[ScrollAnimationHelperDelegate convertSizeFromBase:]):
+ (-[ScrollAnimationHelperDelegate superview]):
+ (-[ScrollAnimationHelperDelegate documentView]):
+ (-[ScrollAnimationHelperDelegate window]):
+ (-[ScrollAnimationHelperDelegate _recursiveRecomputeToolTips]):
+ (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
+ (WebCore::ScrollAnimatorMac::scroll):
+ (WebCore::ScrollAnimatorMac::setScrollPositionAndStopAnimation):
+ (WebCore::ScrollAnimatorMac::currentPosition):
+ (WebCore::ScrollAnimatorMac::immediateScrollToPoint):
+ Add implementation of ScrollAnimator for the Mac.
+
+2010-12-09 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ <rdar://problem/8613779> and https://bugs.webkit.org/show_bug.cgi?id=50777
+ WebKit2 ContextMenuClient support
+
+ Export some symbols and headers needed by WebKit2 Mac:
+ * WebCore.exp.in:
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-12-09 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r73635.
+ http://trac.webkit.org/changeset/73635
+ https://bugs.webkit.org/show_bug.cgi?id=50778
+
+ 'Side-effects on 3 css tests needs closer review' (Requested
+ by mwenge on #webkit).
+
+ * platform/graphics/qt/ImageQt.cpp:
+ (loadResourcePixmap):
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
+ (WebCore::RenderThemeQt::paintSearchField):
+ (WebCore::RenderThemeQt::adjustSearchFieldStyle):
+ (WebCore::RenderThemeQt::adjustSearchFieldCancelButtonStyle):
+ (WebCore::RenderThemeQt::paintSearchFieldCancelButton):
+ * platform/qt/RenderThemeQt.h:
+
+2010-12-09 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Search input field doesn't have cancel button
+
+ Add a cancel button to the search field and make it customizable
+ by the client. For now, use the close dialog button associated
+ with the application's style as the default.
+
+ https://bugs.webkit.org/show_bug.cgi?id=42887
+
+ * platform/graphics/qt/ImageQt.cpp:
+ (loadResourcePixmap):
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
+ (WebCore::RenderThemeQt::paintSearchField):
+ (WebCore::RenderThemeQt::adjustSearchFieldStyle):
+ (WebCore::RenderThemeQt::adjustSearchFieldCancelButtonStyle):
+ (WebCore::RenderThemeQt::convertToPaintingRect):
+ (WebCore::RenderThemeQt::paintSearchFieldCancelButton):
+ * platform/qt/RenderThemeQt.h:
+
+2010-12-09 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Antonio Gomes.
+
+ Spatial Navigation: Crash when handling iframe of size 0.
+ https://bugs.webkit.org/show_bug.cgi?id=50730
+
+ if we have a frame of size 0, we would get into infinite loop and eventually crash. The reason is
+ that when the algorithm sees a starting rect of size 0, it assumes that there is no focused node,
+ thus restarts itself. The solution is to avoid considering iframes with size 0 for the spatial
+ navigation algorithm.
+
+ Test: fast/spatial-navigation/snav-hidden-iframe-zero-size.html
+
+ * page/FocusController.cpp:
+ (WebCore::updateFocusCandidateIfNeeded):
+
+2010-12-09 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r73616.
+ http://trac.webkit.org/changeset/73616
+ https://bugs.webkit.org/show_bug.cgi?id=50772
+
+ Breaks chromium win build (Requested by hwennborg on #webkit).
+
+ * bindings/v8/IDBBindingUtilities.cpp:
+ (WebCore::createIDBKeyFromValue):
+ * bindings/v8/custom/V8IDBKeyCustom.cpp:
+ (WebCore::toV8):
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::createTables):
+ (WebCore::IDBFactoryBackendImpl::open):
+ * storage/IDBKey.cpp:
+ (WebCore::IDBKey::IDBKey):
+ (WebCore::IDBKey::fromQuery):
+ (WebCore::IDBKey::bind):
+ (WebCore::IDBKey::bindWithNulls):
+ * storage/IDBKey.h:
+ (WebCore::IDBKey::create):
+ (WebCore::IDBKey::number):
+
+2010-12-09 Antonio Gomes <agomes@rim.com>
+
+ Rubber stamped by by Gustavo Noronha Silva.
+
+ Buildfix for GTK+ with building with -no-video.
+
+ paintStockIcon static function was implemented under the ENABLE(VIDEO) guard
+ but used from outside the guard. See RenderThemeGtk::paintSearchFieldResultsDecoration()
+ and RenderThemeGtk::paintSearchFieldCancelButton() methods.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::getMediaElementFromRenderObject):
+
+2010-12-07 Antonio Gomes <agomes@rim.com>
+
+ Reviewed by Daniel Bates.
+
+ Spatial Navigation: code clean up
+ https://bugs.webkit.org/show_bug.cgi?id=50666
+
+ Patch unifies two FocusCandidate constructors, making caller sites
+ simpler. Now the special handling HTMLAreaElement gets is done within
+ the non default constructor (i.e. FocusCanditate(Node*, FocusDirection)).
+
+ No new tests needed.
+
+ * page/FocusController.cpp:
+ (WebCore::FocusController::findFocusCandidateInContainer):
+ * page/SpatialNavigation.cpp:
+ (WebCore::FocusCandidate::FocusCandidate):
+
+2010-12-09 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Eric Carlson.
+
+ [GStreamer] disable fullscreen on MacOS Tiger and Leopard
+ https://bugs.webkit.org/show_bug.cgi?id=50748
+
+ Don't support fullscreen video on Tiger and Leopard, just like the
+ QTKit player.
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::MediaPlayerPrivateGStreamer::supportsFullscreen):
+
+2010-12-06 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Support the Mozilla-style Fullscreen Javascript API
+ https://bugs.webkit.org/show_bug.cgi?id=50572
+
+ * GNUmakefile.am: enable the Javascript Fullscreen API feature if
+ it's been requested at configure time.
+
+2010-12-09 Yong Li <yoli@rim.com>
+
+ Reviewed by Darin Adler.
+
+ Check the return value of ImageBuffer::create()
+ to avoid crash when ImageBuffer::create() fails.
+ https://bugs.webkit.org/show_bug.cgi?id=50631
+
+ No new test because it relies on the platform implementation
+ of ImageBuffer. It is hard to make ImageBuffer::create() fail
+ in most ports.
+
+ * platform/graphics/GeneratedImage.cpp:
+ (WebCore::GeneratedImage::drawPattern):
+
+2010-12-09 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Implement "Use Selection for Find" in WebKit2
+ https://bugs.webkit.org/show_bug.cgi?id=50737
+ <rdar://problem/8564881>
+
+ Implement a TakeFindStringFromSelection editor command. This is
+ used solely to implement the "Use Selection for Find" menu command
+ on Mac, and is not made available to script. On WebKit2, it is
+ very convenient to reuse the editing machinery since this command
+ is very similar to Copy.
+
+ * editing/Editor.h:
+ * editing/EditorCommand.cpp:
+ (WebCore::executeTakeFindStringFromSelection): Call to a mac-only Editor function.
+ (WebCore::enabledTakeFindStringFromSelection): Check using Editor::canCopyExcludingStandaloneImage
+ (WebCore::createCommandMap): Add "TakeFindStringFromSelection" command.
+ * editing/mac/EditorMac.mm:
+ (WebCore::Editor::canCopyExcludingStandaloneImages): Helper function; we can't use Editor::canCopy
+ since it would make no sense to enable "Use Selection for Find" when viewing a standalone image
+ document.
+ (WebCore::Editor::takeFindStringFromSelection): Implement by copying the selected text
+ to the special Find pasteboard.
+
+2010-12-09 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ As part of r73559, I added the referenceNode check to validate whether the root
+ node of the iterator matches the node which is getting moved to other document.
+ referenceNode is initialized to root, however can get moved using previousNode
+ and nextNode methods, so it is required to use root directly.
+ https://bugs.webkit.org/show_bug.cgi?id=50764
+
+ Test: fast/dom/node-iterator-reference-node-moved-crash.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::moveNodeIteratorsToNewDocument): change referenceNode to root.
+
+2010-12-08 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Provide a generic way to store shadowParent on a Node.
+ https://bugs.webkit.org/show_bug.cgi?id=50184
+
+ This patch makes TreeShared::m_parent act as either parentNode() or
+ shadowHost() for Node. The distinction is controlled by IsShadowRootFlag.
+
+ Refactoring, so no new tests. See performance result testing in bug.
+
+ * dom/Element.cpp:
+ (WebCore::Element::recalcStyle): Changed to use parentOrHostNode().
+ * dom/Node.cpp:
+ (WebCore::Node::shadowHost): Added.
+ (WebCore::Node::setShadowHost): Added.
+ (WebCore::Node::isContentEditable): Changed to use parentOrHostNode().
+ (WebCore::Node::isContentRichlyEditable): Ditto.
+ (WebCore::Node::nextRenderer): Ditto.
+ (WebCore::Node::virtualComputedStyle): Ditto.
+ (WebCore::Node::canStartSelection): Ditto.
+ (WebCore::Node::shadowTreeRootNode): Changed to use parentNodeGuaranteedHostFree().
+ (WebCore::Node::getEventAncestors): Ditto.
+ (WebCore::Node::defaultEventHandler): Changed to use parentOrHostNode().
+ * dom/Node.h: Added an extra flag and adjusted bit counts.
+ (WebCore::Node::isShadowNode): Made non-virtual, switched to use flag.
+ (WebCore::Node::parentNode): Made to recognize flag.
+ (WebCore::Node::parentOrHostNode): Changed to use straight parent() and made const.
+ (WebCore::Node::parentNodeGuaranteedHostFree): Added.
+ (WebCore::Node::shadowParentNode): Made non-virtual and const.
+ * editing/TextIterator.cpp:
+ (WebCore::depthCrossingShadowBoundaries): Changed to use parentOrHostNode();
+ (WebCore::nextInPreOrderCrossingShadowBoundaries): Ditto.
+ (WebCore::previousInPostOrderCrossingShadowBoundaries): Ditto.
+ (WebCore::setUpFullyClippedStack): Ditto.
+ (WebCore::TextIterator::advance): Ditto.
+ (WebCore::SimplifiedBackwardsTextIterator::advance): Ditto.
+ * page/DOMSelection.cpp:
+ (WebCore::DOMSelection::anchorNode): Changed to use parentNodeGuaranteedHostFree().
+ (WebCore::DOMSelection::focusNode): Ditto.
+ (WebCore::DOMSelection::baseNode): Ditto.
+ (WebCore::DOMSelection::extentNode): Ditto.
+ (WebCore::DOMSelection::getRangeAt): Ditto.
+ * rendering/MediaControlElements.cpp:
+ (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
+ Changed to setShadowHost().
+ (WebCore::MediaControlShadowRootElement::updateStyle): Changed to use shadowHost().
+ (WebCore::MediaControlShadowRootElement::detach): Added an override to
+ explicitly set shadowHost to 0. Otherwise, the element will leak.
+ * rendering/MediaControlElements.h: Added detach def, removed members that are
+ no longer needed.
+ * rendering/RenderSVGShadowTreeRootContainer.cpp:
+ (WebCore::RenderSVGShadowTreeRootContainer::~RenderSVGShadowTreeRootContainer):
+ Added explicit clearing of shadowHost to avoid leaking and crashes,
+ because SVG shadow DOM can be dynamically attached/detached, producing
+ stale nodes in over/out event handling.
+ * rendering/RenderSlider.cpp:
+ (WebCore::SliderThumbElement::defaultEventHandler): Changed to use shadowHost().
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine):
+ Added explicit clearing of shadowHost and explicit destruction to
+ avoid out-of-order removal of children.
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::nodePosition): Simplified code.
+ * rendering/SVGShadowTreeElements.cpp:
+ (WebCore::SVGShadowTreeRootElement::SVGShadowTreeRootElement): Added
+ setting of shadowHost.
+ (WebCore::SVGShadowTreeRootElement::attachElement): Changed to use shadowHost().
+ (WebCore::SVGShadowTreeRootElement::clearShadowHost): Added.
+ * rendering/SVGShadowTreeElements.h: Added def, removed members that are
+ no longer needed.
+ * rendering/ShadowElement.cpp:
+ (WebCore::ShadowBlockElement::initAsPart): Changed to use shadowHost().
+ * rendering/ShadowElement.h: Removed members that are no longer needed.
+ (WebCore::ShadowElement::ShadowElement): Added setting of shadowHost.
+ (WebCore::ShadowElement::detach): Added.
+ * rendering/TextControlInnerElements.cpp:
+ (WebCore::TextControlInnerElement::TextControlInnerElement): Added setting
+ of shadowHost.
+ (WebCore::TextControlInnerElement::attachInnerElement): Changed to use
+ isShadowNode().
+ (WebCore::TextControlInnerElement::detach): Added.
+ * rendering/TextControlInnerElements.h: Removed members that are no
+ longer needed.
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::ownerSVGElement): Simplified code.
+ (WebCore::SVGElement::viewportElement): Ditto.
+ * svg/SVGLocatable.cpp:
+ (WebCore::SVGLocatable::computeCTM): Ditto.
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::title): Ditto.
+ * svg/SVGUseElement.cpp:
+ (WebCore::ShadowTreeUpdateBlocker::while): Ditto.
+
+2010-12-09 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ <rdar://problem/7660733> and https://bugs.webkit.org/show_bug.cgi?id=50191
+ WebKit2 Authentication Support
+
+ * WebCore.exp.in:
+
+2010-12-09 Peter Beverloo <peter@lvp-media.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ Default CSS definitions for the figure and figcaption elements.
+
+ Tests: fast/html/figcaption-element.html
+ fast/html/figure-element.html
+
+ * css/html.css:
+ (figure): The default figure-style equals a blockquote
+ (figcaption): A non-sectioning block-level element
+
+2010-12-09 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Console records for failed XHRs should contain call stack and request method
+ https://bugs.webkit.org/show_bug.cgi?id=50390
+
+ When inspector front-end is open we capture call stack at the place where request is sent and
+ pass the stack along with other request data. There is a new type of console messages which
+ is NetworkErrorMessageType, all messages of that type will have requestId field initialized
+ with the corresponding network request identifier so that later on when we need to display
+ that message in the front-end we could pull request data from the Network panel using
+ this identifier. If there are no data for given requestId message formatting falls back to
+ the old implementation which lacks such things as call stack, request method and exact
+ source location.
+
+ * inspector/ConsoleMessage.cpp:
+ (WebCore::ConsoleMessage::ConsoleMessage):
+ (WebCore::ConsoleMessage::addToFrontend):
+ (WebCore::ConsoleMessage::isEqual):
+ * inspector/ConsoleMessage.h:
+ * inspector/Inspector.idl:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::didReceiveResponse):
+ (WebCore::InspectorController::didFailLoading):
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::identifierForInitialRequest):
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype.updateMessageRepeatCount):
+ (WebInspector.ConsoleMessage):
+ (WebInspector.ConsoleMessage.prototype._formatMessage):
+ (WebInspector.ConsoleMessage.prototype.toMessageElement):
+ (WebInspector.ConsoleMessage.prototype.toString):
+ (WebInspector.ConsoleMessage.prototype.isEqual):
+ * inspector/front-end/ResourceManager.js:
+ (WebInspector.ResourceManager.prototype.identifierForInitialRequest):
+ * inspector/front-end/inspector.js:
+ (WebInspector.addConsoleMessage):
+ * page/Console.h:
+
+2010-12-09 Dai Mikurube <dmikurube@google.com>
+
+ Reviewed by Kent Tamura.
+
+ Implement "required" attribute for select tags
+ https://bugs.webkit.org/show_bug.cgi?id=50380
+
+ Test: fast/forms/select-live-pseudo-selectors.html
+ platform/mac/fast/objc/dom-html-select-live-pseudo-selectors.html
+
+ * dom/SelectElement.cpp:
+ (WebCore::SelectElement::updateValidity): Added. It's a pure virtual function which is prepared so that HTMLSelectElement::updateValidity() calls HTMLSelectElement::setNeedsValidityCheck().
+ (WebCore::SelectElement::parseMultipleAttribute): Added calling updateValidity().
+ * html/HTMLSelectElement.cpp:
+ (WebCore::HTMLSelectElement::deselectItems): Added calling setNeedsValidityCheck() to enable validity check after changing. No tests for this change since this function is not exposed to JavaScript or any web interface.
+ (WebCore::HTMLSelectElement::setSelectedIndex): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::setSelectedIndexByUser): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::valueMissing): Added valueMissing() to check if selecting an invalid or placeholder label option when a valid required attribute is specified.
+ (WebCore::HTMLSelectElement::listBoxSelectItem): Added calling setNeedsValidityCheck(). No tests for this change since it is not called yet. Look at the bug 36177 and the changeset 56180.
+ (WebCore::HTMLSelectElement::add): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::remove): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::restoreFormControlState): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::parseMappedAttribute): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::selectAll): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::reset): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::updateListBoxSelection): Added calling setNeedsValidityCheck(). Skipped adding tests for this change as too complicated..
+ (WebCore::HTMLSelectElement::setLength): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::isRequiredFormControl): Check if required or not.
+ (WebCore::HTMLSelectElement::hasPlaceholderLabelOption): Added.
+ (WebCore::HTMLSelectElement::updateValidity): Added. It calls setNeedsValidityCheck().
+ * html/HTMLSelectElement.h:
+ (WebCore::HTMLSelectElement::isOptionalFormControl): Check if not required.
+ * html/HTMLSelectElement.idl: Added a required attribute to select elements..
+ * html/ValidityState.cpp:
+ (WebCore::ValidityState::valueMissing): Added valueMissing check for select elements into the global checker, ValidityState::valueMissing().
+ * wml/WMLSelectElement.h:
+ (WebCore::WMLSelectElement::updateValidity): Added. It does nothing.
+
+2010-12-07 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Steve Block.
+
+ IndexedDB returns the wrong exceptions
+ https://bugs.webkit.org/show_bug.cgi?id=50632
+
+ IndexedDB exceptions need to have an offset so they can
+ be distinguished from DOM exceptions. We also need to
+ add strings for the various exceptions. Lastly, make
+ IDBDatabaseException use the common exception base class.
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::setDOMException):
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::setDOMException):
+ * dom/ExceptionCode.cpp:
+ (WebCore::getExceptionCodeDescription):
+ * dom/ExceptionCode.h:
+ * storage/IDBDatabaseError.h:
+ (WebCore::IDBDatabaseError::code):
+ * storage/IDBDatabaseException.h:
+ (WebCore::IDBDatabaseException::create):
+ (WebCore::IDBDatabaseException::ErrorCodeToExceptionCode):
+ (WebCore::IDBDatabaseException::IDBDatabaseException):
+ * storage/IDBDatabaseException.idl:
+
+2010-12-09 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
+
+ Build fix for GTK+3. Use functions added for GTK+ 2.24 to get the
+ GDK window size.
+
+ * plugins/gtk/gtk2xtbin.c:
+ (gtk_xtbin_realize):
+
+2010-12-09 Siddharth Mathur <siddharth.mathur@nokia.com>
+
+ Reviewed by Laszlo Gombos.
+
+ Use BUILDING_WEBKIT like other ports
+ https://bugs.webkit.org/show_bug.cgi?id=50713
+
+ * WebCore.pro: Change BUILD_WEBKIT to BUILDING_WEBKIT
+
+2010-12-08 Erik Arvidsson <arv@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Replace getAttribute().isNull() with fastHasAttribute()
+ https://bugs.webkit.org/show_bug.cgi?id=50719
+
+ Covered by existing tests.
+
+ * dom/SelectElement.cpp:
+ (WebCore::SelectElement::reset):
+ * html/HTMLAppletElement.cpp:
+ (WebCore::HTMLAppletElement::rendererIsNeeded):
+ * html/HTMLCollection.cpp:
+ (WebCore::HTMLCollection::itemAfter):
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElement::formNoValidate):
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::noValidate):
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::defaultChecked):
+ (WebCore::HTMLInputElement::multiple):
+ (WebCore::HTMLInputElement::webkitdirectory):
+ * html/HTMLOptionElement.cpp:
+ (WebCore::HTMLOptionElement::defaultSelected):
+ * html/HTMLScriptElement.cpp:
+ (WebCore::HTMLScriptElement::asyncAttributeValue):
+ (WebCore::HTMLScriptElement::deferAttributeValue):
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::allowsMultipleFiles):
+ (WebCore::RenderFileUploadControl::allowsDirectoryUpload):
+
+2010-12-08 Nicolas Dufresne <nicolas.dufresne@collabora.co.uk>
+
+ Reviewed by Martin Robinson.
+
+ Full page size flash plugins do not show in all situations
+ https://bugs.webkit.org/show_bug.cgi?id=47742
+
+ This patch moves the plugin widget size allocation after the
+ NPP_SetWindow is called with the effect that the resize of Flash
+ content no longer result in grey flash. This seems logical since the
+ widget tree cannot be fully constructed before the plugin receives
+ the new container window.
+
+ Test: manual-tests/plugins/gtk-windowed-grey-glitch.html
+
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::setNPWindowIfNeeded):
+
+2010-12-08 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Fix regression from xji's wheel scroll patch. The vertical case is looking at the horizontal
+ maximum position and not the vertical position.
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::wheelEvent):
+
+2010-12-08 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Need a way to get a WKBundleFrameRef from JS HTMLIFrameElement
+ https://bugs.webkit.org/show_bug.cgi?id=50726
+
+ * WebCore.xcodeproj/project.pbxproj: Expose HTMLIFrameElement.h.
+
+2010-12-08 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Add getter and setters for acceleratesRendering flag on layers
+ https://bugs.webkit.org/show_bug.cgi?id=50717
+
+ * platform/graphics/GraphicsLayer.cpp:
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+ Plumbed through acceleratedRendering flag.
+
+2010-12-07 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ WebGLUniformLocation objects must be invalidated during linkProgram
+ https://bugs.webkit.org/show_bug.cgi?id=37118
+
+ * html/canvas/WebGLProgram.cpp:
+ (WebCore::WebGLProgram::WebGLProgram): Initialize link count to 0.
+ (WebCore::WebGLProgram::cacheActiveAttribLocations): Don't check link status through gl call; use the cached status instead.
+ * html/canvas/WebGLProgram.h:
+ (WebCore::WebGLProgram::getLinkCount): Get link count.
+ (WebCore::WebGLProgram::increaseLinkCount): Increase link count by 1.
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::getUniform): Fix a bug where wrong error is generated.
+ (WebCore::WebGLRenderingContext::linkProgram): call increaseLinkCount after linkProgram.
+ * html/canvas/WebGLUniformLocation.cpp:
+ (WebCore::WebGLUniformLocation::WebGLUniformLocation): Set program's link count upon creation.
+ (WebCore::WebGLUniformLocation::program): Return null if count doesn't match the program's.
+ (WebCore::WebGLUniformLocation::location): Return -1 if count doesn't match the program's.
+ * html/canvas/WebGLUniformLocation.h:
+
+2010-12-08 Adele Peterson <adele@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=50725
+ <rdar://problem/8694972> REGRESSION (r72052): "Search" placeholder in MobileMe mail is positioned too high
+
+ Test: fast/forms/placeholder-position.html
+
+ Since we center the inner text element for single line text controls,
+ we should ask the subclass to give us the y offset instead of trying to calculate it in the RenderTextControl class.
+
+ * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::paintPlaceholder):
+ * rendering/RenderTextControl.h:
+ * rendering/RenderTextControlMultiLine.cpp: (WebCore::RenderTextControlMultiLine::textBlockInsetTop):
+ * rendering/RenderTextControlMultiLine.h:
+ * rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::textBlockInsetTop):
+ * rendering/RenderTextControlSingleLine.h:
+
+2010-12-08 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add web audio files to mac port Xcode projects
+ https://bugs.webkit.org/show_bug.cgi?id=50721
+
+ No new tests since audio API is not yet implemented.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::webkitAudioContext):
+
+2010-12-08 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Yensign hack should work with Shift_JIS and ISO-2022-JP encodings.
+ https://bugs.webkit.org/show_bug.cgi?id=49714
+
+ IE chooses a font which shows a yensign for 0x5c code point for a page
+ encoded in x-mac-japanese, ISO-2022-JP, EUC-JP, Shift_JIS, Shift_JIS_X0213-2000,
+ x-sjis, and Windows-31J.
+ We have emulated this behavior by replacing 0x5c with 0xa5 for EUC-JP and
+ Shift_JIS_X0213-2000. This change adds other encodings above.
+
+ Also, we move the HashSet initialization for isJapanese() and
+ backslashAsCurrencySymbol() to TextEncodingRegistry.cpp because of
+ ease of making them multi-thread safe.
+
+ * platform/text/TextEncoding.cpp:
+ (WebCore::TextEncoding::isJapanese): Just calls isJapaneseEncoding().
+ (WebCore::TextEncoding::backslashAsCurrencySymbol): Uses shouldShowBackslashAsCurrencySymbolIn().
+ * platform/text/TextEncodingRegistry.cpp:
+ (WebCore::addEncodingName): Moved from TextEncoding.cpp, and stop using atomicCanonicalTextEncodingName().
+ (WebCore::buildQuirksSets): Added. Initializes HashSets for isJapaneseEncoding() and shouldShowBackslashAsCurrencySymbolIn().
+ (WebCore::isJapaneseEncoding):
+ (WebCore::shouldShowBackslashAsCurrencySymbolIn):
+ (WebCore::extendTextCodecMaps): Add a call to buildQuirksSets().
+ * platform/text/TextEncodingRegistry.h:
+
+2010-12-08 Andy Estes <aestes@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Reflected unsigned attributes should be in the range [0, 2^31).
+ https://bugs.webkit.org/show_bug.cgi?id=50472
+
+ HTML5 says that unsigned reflected attributes should be in the range
+ [0, 2^31). When a value isn't in this range, a default value (or 0)
+ should be returned instead. Update the JS bindings code generator to
+ ensure 0 is returned when a content attribute value falls outside of
+ this range.
+
+ Tests: bindings/scripts/test/TestObj.idl
+ fast/html/marquee-element.html
+
+ * bindings/scripts/CodeGeneratorJS.pm: Return the maximum of 0 and the
+ content attribute as a 32-bit signed int when converting a native value
+ to an unsigned JS value.
+ * bindings/scripts/test/TestObj.idl: Add a reflected unsigned attribute
+ to test code generation.
+ * bindings/scripts/test/CPP/WebDOMTestObj.cpp: Update test results.
+ * bindings/scripts/test/CPP/WebDOMTestObj.h: Ditto.
+ * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Ditto.
+ * bindings/scripts/test/GObject/WebKitDOMTestObj.h: Ditto.
+ * bindings/scripts/test/JS/JSTestObj.cpp: Ditto.
+ * bindings/scripts/test/JS/JSTestObj.h: Ditto.
+ * bindings/scripts/test/ObjC/DOMTestObj.h: Ditto.
+ * bindings/scripts/test/ObjC/DOMTestObj.mm: Ditto.
+ * bindings/scripts/test/V8/V8TestObj.cpp: Ditto.
+
+2010-12-08 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Use gtk_icon_set_render_icon() to render icons in RenderThemeGtk
+ https://bugs.webkit.org/show_bug.cgi?id=50623
+
+ We don't need to cache the icons since the will be cached by GTK+,
+ and they will be rendered using the state and text direction.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::paintStockIcon):
+ (WebCore::getMediaButtonIconSize):
+ (WebCore::RenderThemeGtk::initMediaColors):
+ (WebCore::RenderThemeGtk::initMediaButtons):
+ (WebCore::RenderThemeGtk::RenderThemeGtk):
+ (WebCore::RenderThemeGtk::~RenderThemeGtk):
+ (WebCore::RenderThemeGtk::gtkIconState):
+ (WebCore::RenderThemeGtk::adjustSearchFieldResultsDecorationStyle):
+ (WebCore::centerRectVerticallyInParentInputElement):
+ (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
+ (WebCore::RenderThemeGtk::adjustSearchFieldCancelButtonStyle):
+ (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
+ (WebCore::RenderThemeGtk::platformColorsDidChange):
+ (WebCore::RenderThemeGtk::paintMediaButton):
+ (WebCore::RenderThemeGtk::paintMediaFullscreenButton):
+ (WebCore::RenderThemeGtk::paintMediaMuteButton):
+ (WebCore::RenderThemeGtk::paintMediaPlayButton):
+ (WebCore::RenderThemeGtk::paintMediaSeekBackButton):
+ (WebCore::RenderThemeGtk::paintMediaSeekForwardButton):
+ * platform/gtk/RenderThemeGtk.h:
+
+2010-12-08 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Detach node iterator and move to new document when node gets moved.
+ https://bugs.webkit.org/show_bug.cgi?id=50697
+
+ Test: fast/dom/node-iterator-document-moved-crash.html
+
+ * dom/Document.cpp: Method that takes a node and new document as argument.
+ It detaches the node iterators belonging to the current document and attaches
+ them to the new document.
+ (WebCore::Document::moveNodeIteratorsToNewDocument):
+ * dom/Document.h: Function definition.
+ * dom/Node.cpp: When node is moved to another document, call the function to move
+ the iterators appropriately.
+ (WebCore::Node::setDocument):
+
+2010-12-08 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Text is blurry on a large composited layer with an odd center x/y coordinate
+ https://bugs.webkit.org/show_bug.cgi?id=50702
+
+ Compute the center of a large layer using floats instead of ints to avoid roundoff errors.
+
+ Test: compositing/text-on-large-layer.html
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::draw):
+
+2010-12-08 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Dan Bernstein.
+
+ REGRESSION: LayoutTests/editing/selection/caret-rtl-2.html fails
+ https://bugs.webkit.org/show_bug.cgi?id=33503
+
+ The bug was caused by Font::offsetForPosition's not taking into account the containing block's text direction.
+ When RTL text appears in a LTR block, the offset at the beginning of RTL text is on the left of RTL text,
+ and the offset at the end of RTL text is on the right of RTL text. For example, if we had RTL text CBA,
+ then the correspondance between letters and offsets in logical order are: A -> 0, B -> 1, and C -> 2.
+
+ Case 1. CBA appears in a RTL block:
+ In this case, clicking on the visual left of CBA puts the caret naturally at Position("CBA", 2).
+ Clicking on the visual right of CBA puts the caret at Position("CBA", 0) as expected.
+ Case 2. CBA appears in a LTR block:
+ Because the containing block flows from left to right, by convention, Position("CBA", 2") corresponds
+ to the visual right of CBA, and Position("CBA", 0) corresponds to the visual left of CBA.
+ Therefore, clicking on the visual left of CBA should put the caret at Position("CBA", 0),
+ and clicking on the visual right should put it at Position("CBA", 2).
+
+ The bug was caused by WebKit's not considering case 2. The same bug also exist for LTR text in a RTL block.
+ Fixed the bug by taking care of the case 2 in InlineTextBox::offsetForPosition.
+
+ Tests: editing/selection/caret-ltr-2-left.html
+ editing/selection/caret-ltr-2.html
+ editing/selection/caret-ltr-right.html
+ editing/selection/caret-ltr.html
+ editing/selection/caret-rtl-2-left.html
+ editing/selection/caret-rtl-right.html
+
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::offsetForPosition):
+
+2010-12-08 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fix some clang++ warnings (one of which was an actual bug)
+ https://bugs.webkit.org/show_bug.cgi?id=50700
+
+ * page/mac/DragControllerMac.mm:
+ (WebCore::DragController::dragOperation):
+ Add parentheses to silent a clang warning.
+
+ * page/mac/EventHandlerMac.mm:
+ (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
+ Fix || vs && precedence bug uncovered by clang.
+
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+ (WebCore::GraphicsContext3D::reshape):
+ Use an early return to avoid a warning.
+
+2010-12-08 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
+ https://bugs.webkit.org/show_bug.cgi?id=49388
+
+ Added copy constructors and casting operators to go between
+ TransformationMatrix and CATransform3D. Also added a copy
+ constructor to go from CGAffineTransform to TransformationMatrix.
+ Used these new methods to clean up platform CA code. This will
+ make it easier to port to Windows.
+
+ I also fixed a couple of build issues found when trying out a
+ Windows build.
+
+ This is a resubmission of changesets r73477 and r73483 with a
+ fix for the SL build. The failure was because TransformationMatrix
+ included QuartzCore/CATransform3D.h which brought in some system
+ libraries, including Quickdraw, which has a definition for
+ 'Cursor' which clashed with WebCore's 'Cursor' class. So I had
+ to qualify its use in WebChromeClient.cpp in WebKit2.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::updateContentsTransform):
+ (WebCore::GraphicsLayerCA::ensureCloneLayers):
+ (WebCore::GraphicsLayerCA::fetchCloneLayers):
+ * platform/graphics/ca/TransformationMatrixCA.cpp: Copied from WebCore/platform/graphics/ca/TransformationMatrixCA.cpp.
+ * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
+ (PlatformCAAnimation::setFromValue):
+ (PlatformCAAnimation::setToValue):
+ (PlatformCAAnimation::setValues):
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+ (PlatformCALayer::transform):
+ (PlatformCALayer::setTransform):
+ (PlatformCALayer::sublayerTransform):
+ (PlatformCALayer::setSublayerTransform):
+ (PlatformCALayer::contentsTransform):
+ (PlatformCALayer::setContentsTransform):
+ * platform/graphics/cg/TransformationMatrixCG.cpp:
+ (WebCore::TransformationMatrix::TransformationMatrix):
+ * platform/graphics/transforms/TransformationMatrix.h:
+
+2010-12-07 Brian Weinstein <bweinstein@apple.com>
+
+ Reviewed by John Sullivan.
+
+ Layering Violation in ContextMenu - member variable of type HitTestResult
+ https://bugs.webkit.org/show_bug.cgi?id=50586
+
+ ContextMenu had a layering violation by having a member variable of type HitTestResult, because
+ classes in WebCore/platform can't know about classes in WebCore.
+
+ This patch moves the HitTestResult and all functions that use it out of ContextMenu into ContextMenuController.
+ All of the functions that dealt with populating the ContextMenu are now in ContextMenuController, and this
+ allowed us to delete the ContextMenu file, putting all of the cross-platform code that used to be it
+ in ContextMenuController, and the rest of the code is in the platform-specific files.
+
+ No change in behavior, no new tests.
+
+ * Android.mk: Removed ContextMenu.cpp.
+ * CMakeLists.txt: Ditto.
+ * GNUmakefile.am: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+
+ * page/ContextMenuController.cpp:
+ (WebCore::ContextMenuController::ContextMenuController): Initialized m_hitTestResult to an empty HitTestResult.
+ (WebCore::ContextMenuController::handleContextMenuEvent): Call populate on the ContextMenuController instead
+ of the ContextMenu.
+ (WebCore::ContextMenuController::createContextMenu): Fix some indination, and store the HitTestResult in a member
+ variable.
+ (WebCore::ContextMenuController::showContextMenu): Call addInspectElementItem on the ContextMenuController.
+ (WebCore::ContextMenuController::contextMenuItemSelected): Use m_hitTestResult whenever we need a HitTestResult.
+ (WebCore::ContextMenuController::appendItem): Validates the item for its state, and then appends it to the parent menu.
+ This allowed us to move checkOrEnableIfNeeded from ContextMenu.
+
+ These functions were all moved from ContextMenu, and changed slightly to fit in ContextMenuController.
+ All calls to ContextMenu::appendItem were changed to ContextMenuController::appendItem, which takes care
+ of validating the menu.
+ (WebCore::separatorItem): Moved from ContextMenu.
+ (WebCore::ContextMenuController::createAndAppendFontSubMenu): Ditto.
+ (WebCore::ContextMenuController::createAndAppendSpellingAndGrammarSubMenu): Ditto.
+ (WebCore::ContextMenuController::createAndAppendSpeechSubMenu): Ditto.
+ (WebCore::ContextMenuController::createAndAppendWritingDirectionSubMenu): Ditto.
+ (WebCore::ContextMenuController::createAndAppendTextDirectionSubMenu): Ditto.
+ (WebCore::ContextMenuController::createAndAppendSubstitutionsSubMenu): Ditto.
+ (WebCore::ContextMenuController::createAndAppendTransformationsSubMenu): Ditto.
+ (WebCore::selectionContainsPossibleWord): Ditto.
+ (WebCore::ContextMenuController::populate): Ditto.
+ (WebCore::ContextMenuController::addInspectElementItem): Ditto.
+ (WebCore::ContextMenuController::checkOrEnableIfNeeded): Ditto.
+
+ * page/ContextMenuController.h:
+ (WebCore::ContextMenuController::hitTestResult): Returns the HitTestResult of the current ContextMenu.
+
+ * platform/ContextMenu.cpp: Removed.
+ * platform/ContextMenu.h:
+ * platform/efl/ContextMenuEfl.cpp:
+ (WebCore::ContextMenu::ContextMenu): Removed m_hitTestResult from the constructor.
+ (WebCore::ContextMenu::appendItem): Removed the call to checkOrEnableIfNeeded.
+ * platform/gtk/ContextMenuGtk.cpp:
+ (WebCore::ContextMenu::ContextMenu): Removed m_hitTestResult from the constructor.
+ (WebCore::ContextMenu::appendItem): Ditto.
+ * platform/haiku/ContextMenuHaiku.cpp:
+ (WebCore::ContextMenu::ContextMenu): Removed m_hitTestResult from the constructor.
+ (WebCore::ContextMenu::appendItem): Ditto.
+ (WebCore::ContextMenu::insertItem): Ditto.
+ * platform/mac/ContextMenuMac.mm:
+ (-[WebCoreMenuTarget validateMenuItem:]): Calls checkOrEnableIfNeeded on the controller instead of
+ the context menu.
+ (WebCore::ContextMenu::ContextMenu): Removed m_hitTestResult from the constructor.
+ (WebCore::ContextMenu::appendItem): Removed the call to checkOrEnableIfNeeded.
+ (WebCore::ContextMenu::insertItem): Ditto.
+ * platform/win/ContextMenuWin.cpp:
+ (WebCore::ContextMenu::ContextMenu): Removed m_hitTestResult from the constructor.
+ (WebCore::ContextMenu::insertItem): Removed the call to checkOrEnableIfNeeded.
+ * platform/wx/ContextMenuWx.cpp:
+ (WebCore::ContextMenu::ContextMenu): Removed m_hitTestResult from the constructor.
+ (ContextMenu::appendItem): Ditto.
+
+2010-12-08 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by John Sullivan.
+
+ [GTK] Layering violation in ContextMenuGtk.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=50676
+
+ ContextMenuGtk accesses the page's ContextMenuController, which is a layering
+ violation. This was fixed for Mac with change r73469. We make a similar fix here
+ by moving the "activated" signal connection to the WebKit layer.
+
+ * platform/gtk/ContextMenuGtk.cpp:
+ (WebCore::ContextMenu::appendItem): Remove access of ContextMenuController. This
+ is a layering violation.
+
+2010-12-08 Jessie Berlin <jberlin@apple.com>
+
+ Reviewed by Adam Roben.
+
+ WebKit2: Implement WebChromeClient::exceededDatabaseQuota
+ https://bugs.webkit.org/show_bug.cgi?id=50656
+
+ * WebCore.exp.in:
+ Export the symbol for SecurityOrigin::databaseIdentifier.
+
+2010-12-08 Csaba Osztrogonác <ossy@webkit.org>
+
+ Unreviewed, rolling out r73521.
+ http://trac.webkit.org/changeset/73521
+ https://bugs.webkit.org/show_bug.cgi?id=50640
+
+ It broke 90 layout tests
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::printErrorMessageForFrame):
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::crossDomainAccessErrorMessage):
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::setLocation):
+ * page/DOMWindow.cpp:
+ * page/DOMWindow.h:
+
+2010-12-08 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=50576
+
+ REGRESSION in position of autocomplete popup on RTL page.
+
+ RTL static position computation did not subtract out the width of the enclosing box if the
+ immediate parent was a RenderInline. This bug was exposed by properly changing the RenderView
+ to be RTL when the document was RTL.
+
+ Added three new tests in fast/block/positioning.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computePositionedLogicalWidth):
+
+2010-12-08 Xiaomei Ji <xji@chromium.org>
+
+ Reviewed by David Hyatt.
+
+ Fix backward mouse wheeling not working when scroll position is below 0.
+ https://bugs.webkit.org/show_bug.cgi?id=50370
+
+ Tests: fast/events/wheelevent-in-horizontal-scrollbar-in-rtl.html
+ fast/events/wheelevent-in-vertical-scrollbar-in-rtl.html
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::wheelEvent):
+
+2010-12-08 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fix pauseAnimation API to work with shorthand properties
+ https://bugs.webkit.org/show_bug.cgi?id=50639
+
+ The pause API is always called with a long-hand property, but that
+ property may be animating via a shorthand. Detect this, and pause
+ such shorthand animations.
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::ShorthandPropertyWrapper::propertyWrappers): Expose the vector
+ of wrappers used by a shorthand wrapper.
+
+ (WebCore::gatherEnclosingShorthandProperties): Utility function that walks
+ through the shorthand wrappers, keeping track of which can affect the given
+ property.
+ (WebCore::AnimationBase::animatableShorthandsAffectingProperty): Return a set
+ of shorthand properties that can affect the given property.
+
+ * page/animation/AnimationBase.h: New method.
+ * page/animation/CompositeAnimation.cpp:
+ (WebCore::CompositeAnimation::pauseTransitionAtTime): If we don't find the
+ property itself, check whether it's being animated via shorthands.
+
+2010-12-08 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ <rdar://problem/8740920> Gestures: Frame::scalePage() broken by r73885
+
+ Make sure the transform applied to the RenderView for page scaling is incorporated into the
+ docTop/Bottom/Left/Right accessors.
+
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::docTop):
+ (WebCore::RenderView::docBottom):
+ (WebCore::RenderView::docLeft):
+ (WebCore::RenderView::docRight):
+
+2010-12-08 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Protocol cleanup task. Remove WebInspector wrappers
+ for TimelineAgent functions.
+
+ https://bugs.webkit.org/show_bug.cgi?id=50690
+
+ * inspector/Inspector.idl:
+ * inspector/front-end/TimelineAgent.js:
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel):
+ (WebInspector.TimelinePanel.prototype.timelineProfilerWasStarted):
+ (WebInspector.TimelinePanel.prototype.timelineProfilerWasStopped):
+
+2010-12-08 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ [GTK] media/fullscreen* failing on 64-bits Debug
+ https://bugs.webkit.org/show_bug.cgi?id=50394
+
+ Avoid emiting durationchanged in the case where the previous
+ duration was 0 because that case is already handled by the
+ HTMLMediaElement.
+
+ Test: media/media-fullscreen*.html
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::MediaPlayerPrivateGStreamer::durationChanged):
+
+2010-12-07 Darin Adler <darin@apple.com>
+
+ Reviewed by Geoffrey Garen.
+
+ Move DOMWindow::setLocation logic into DOMWindow class and out of JavaScript binding
+ https://bugs.webkit.org/show_bug.cgi?id=50640
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::printErrorMessageForFrame): Removed body; just call through to
+ DOMWindow::printErrorMessage.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::crossDomainAccessErrorMessage): Removed body;
+ just call through to DOMWindow::crossDomainAccessErrorMessage.
+
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::setLocation): Changed terminology to use activeFrame and
+ firstFrame, rather than the older lexicalFrame and dynamicFrame. Removed most
+ of the body and moved it into DOMWindow::setLocation.
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::setLocation): Added. Does all the same work that
+ JSDOMWindow::setLocation used to do, but in a way that's not specific
+ to JavaScript.
+ (WebCore::DOMWindow::printErrorMessage): Added.
+ (WebCore::DOMWindow::crossDomainAccessErrorMessage): Added.
+
+ * page/DOMWindow.h: Added setLocation, printErrorMessage, and
+ crossDomainAccessErrorMessage.
+
+2010-12-08 Alejandro G. Castro <alex@igalia.com>
+
+ Unreviewed, rolling out r73494.
+ http://trac.webkit.org/changeset/73494
+ https://bugs.webkit.org/show_bug.cgi?id=50380
+
+ The tests added are crashing in the debug bots (macn and gtk)
+
+ * html/HTMLSelectElement.cpp:
+ (WebCore::HTMLSelectElement::deselectItems):
+ (WebCore::HTMLSelectElement::setSelectedIndex):
+ (WebCore::HTMLSelectElement::setSelectedIndexByUser):
+ (WebCore::HTMLSelectElement::listBoxSelectItem):
+ (WebCore::HTMLSelectElement::add):
+ (WebCore::HTMLSelectElement::remove):
+ (WebCore::HTMLSelectElement::restoreFormControlState):
+ (WebCore::HTMLSelectElement::parseMappedAttribute):
+ (WebCore::HTMLSelectElement::selectAll):
+ (WebCore::HTMLSelectElement::reset):
+ (WebCore::HTMLSelectElement::updateListBoxSelection):
+ (WebCore::HTMLSelectElement::setLength):
+ * html/HTMLSelectElement.h:
+ (WebCore::HTMLSelectElement::isOptionalFormControl):
+ * html/HTMLSelectElement.idl:
+ * html/ValidityState.cpp:
+ (WebCore::ValidityState::valueMissing):
+
+2010-12-07 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Inspector protocol cleanup task. Remove
+ WebInspector wrappers for DOMAgent functions.
+
+ There were a lot of wrappers in WebInspector namespace
+ for different WebInspector agents functions. As far as we have a
+ generic mechanic for such functions we can remove these
+ wrappers and register domAgent instance as a handler for
+ DOM domain notifications.
+
+ https://bugs.webkit.org/show_bug.cgi?id=50626
+
+ * inspector/Inspector.idl:
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMNode):
+ (WebInspector.DOMAgent):
+ (WebInspector.DOMAgent.prototype.attributesUpdated):
+ (WebInspector.DOMAgent.prototype.characterDataModified):
+ (WebInspector.DOMAgent.prototype.setDocument):
+ (WebInspector.DOMAgent.prototype.setDetachedRoot):
+ (WebInspector.DOMAgent.prototype.setChildNodes):
+ (WebInspector.DOMAgent.prototype.childNodeCountUpdated):
+ (WebInspector.DOMAgent.prototype.childNodeInserted):
+ (WebInspector.DOMAgent.prototype.childNodeRemoved):
+ (WebInspector.EventListeners.getEventListenersForNodeAsync):
+ * inspector/front-end/inspector.js:
+ (WebInspector.didCommitLoad):
+
+2010-12-08 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: remove groupLevel counter from console messages
+ https://bugs.webkit.org/show_bug.cgi?id=50672
+
+ * inspector/ConsoleMessage.cpp:
+ (WebCore::ConsoleMessage::ConsoleMessage):
+ (WebCore::ConsoleMessage::addToFrontend):
+ (WebCore::ConsoleMessage::isEqual):
+ * inspector/ConsoleMessage.h:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::addMessageToConsole):
+ (WebCore::InspectorController::clearConsoleMessages):
+ (WebCore::InspectorController::startGroup):
+ (WebCore::InspectorController::endGroup):
+ * inspector/InspectorController.h:
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.createFilterElement):
+ (WebInspector.ConsoleView):
+ (WebInspector.ConsoleView.prototype.filter):
+ (WebInspector.ConsoleView.prototype.afterShow):
+ (WebInspector.ConsoleView.prototype.addMessage):
+ (WebInspector.ConsoleView.prototype.updateMessageRepeatCount):
+ (WebInspector.ConsoleView.prototype.clearMessages):
+ (WebInspector.ConsoleMessage):
+ (WebInspector.ConsoleMessage.createTextMessage):
+ (WebInspector.ConsoleMessage.prototype.toMessageElement):
+ (WebInspector.ConsoleMessage.prototype._addMessageHeader):
+ (WebInspector.ConsoleMessage.prototype._updateRepeatCount):
+ (WebInspector.ConsoleMessage.prototype.toString):
+ (WebInspector.ConsoleMessage.prototype.isEqual):
+ (WebInspector.ConsoleGroup):
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource.prototype._checkWarning):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._addMessageToSource):
+ * inspector/front-end/inspector.js:
+ (WebInspector.addConsoleMessage):
+ (WebInspector.log.logMessage):
+ (WebInspector.log):
+
+2010-12-07 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: introduce DebuggerModel class representing InspectorDebuggerAgent state.
+ https://bugs.webkit.org/show_bug.cgi?id=50567
+
+ Moved debugging-related code from BreakpointManager to DebuggerModel. Moved Breakpoint class to a separate file.
+
+ * English.lproj/localizedStrings.js:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/Breakpoint.js: Added.
+ (WebInspector.Breakpoint): Moved from BreakpointManager.js.
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager): Remove debugger-related methods.
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane):
+ (WebInspector.CallStackSidebarPane.prototype._nativeBreakpointHit):
+ (WebInspector.CallStackSidebarPane.prototype._scriptBreakpointHit):
+ * inspector/front-end/DebuggerModel.js: Added.
+ (WebInspector.DebuggerModel): Moved debugger-related methods from BreakpointManager.
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype.continueToLine):
+ (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback):
+ (WebInspector.ScriptsPanel.prototype.editScriptSource):
+ (WebInspector.ScriptsPanel.prototype._debuggerPaused):
+ (WebInspector.ScriptsPanel.prototype._debuggerResumed):
+ (WebInspector.ScriptsPanel.prototype.reset):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._createViewerIfNeeded):
+ (WebInspector.SourceFrameDelegate.prototype.addBreakpoint):
+ (WebInspector.SourceFrameDelegate.prototype.breakpoints):
+ (WebInspector.SourceFrameDelegate.prototype.findBreakpoint):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.html:
+ * inspector/front-end/inspector.js:
+ (WebInspector.createJSBreakpointsSidebarPane):
+ (WebInspector.restoredBreakpoint):
+ (WebInspector.pausedScript):
+ (WebInspector.resumedScript):
+ (WebInspector.reset):
+
+2010-12-08 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: SourceFrame refactoring.
+ https://bugs.webkit.org/show_bug.cgi?id=50223
+
+ SourceFrame should ask BreakpointManager about existing breakpoints instead of maintaining
+ it's own storages. Move common code from ScriptView and SourceView to SourceFrame.
+
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager.prototype.findBreakpoints):
+ (WebInspector.BreakpointManager.prototype.findBreakpoint):
+ * inspector/front-end/Script.js:
+ (WebInspector.Script):
+ (WebInspector.Script.prototype.get linesCount):
+ (WebInspector.Script.prototype.get source):
+ (WebInspector.Script.prototype.set source):
+ * inspector/front-end/ScriptView.js:
+ (WebInspector.ScriptView):
+ (WebInspector.ScriptView.prototype._scriptSourceChanged):
+ (WebInspector.ScriptFrameDelegateImpl):
+ (WebInspector.ScriptFrameDelegateImpl.prototype.canEditScripts):
+ (WebInspector.ScriptFrameDelegateImpl.prototype.editLineComplete):
+ (WebInspector.ScriptFrameDelegateImpl.prototype.scripts):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame): Add common methods of ScriptView and SourceView.
+ (WebInspector.SourceFrameDelegate):
+ (WebInspector.SourceFrameDelegate.prototype.canEditScripts):
+ (WebInspector.SourceFrameDelegate.prototype.editLineComplete):
+ (WebInspector.SourceFrameDelegate.prototype.scripts):
+ * inspector/front-end/SourceView.js:
+ (WebInspector.SourceView):
+ (WebInspector.SourceView.prototype._contentLoaded):
+ (WebInspector.ResourceFrameDelegateImpl):
+ (WebInspector.ResourceFrameDelegateImpl.prototype.canEditScripts):
+ (WebInspector.ResourceFrameDelegateImpl.prototype.editLineComplete):
+ (WebInspector.ResourceFrameDelegateImpl.prototype.scripts):
+
+2010-12-08 Yuta Kitamura <yutak@chromium.org>
+
+ Unreviewed, rolling out r73492.
+ http://trac.webkit.org/changeset/73492
+ https://bugs.webkit.org/show_bug.cgi?id=49914
+
+ Caused a lot of pixel test failures and broke Windows build.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::createGraphicsContextPrivate):
+ (WebCore::GraphicsContext::destroyGraphicsContextPrivate):
+ (WebCore::GraphicsContext::save):
+ (WebCore::GraphicsContext::restore):
+ (WebCore::GraphicsContext::setStrokeThickness):
+ (WebCore::GraphicsContext::setStrokeStyle):
+ (WebCore::GraphicsContext::setStrokeColor):
+ (WebCore::GraphicsContext::setShadow):
+ (WebCore::GraphicsContext::clearShadow):
+ (WebCore::GraphicsContext::getShadow):
+ (WebCore::GraphicsContext::strokeThickness):
+ (WebCore::GraphicsContext::strokeStyle):
+ (WebCore::GraphicsContext::strokeColor):
+ (WebCore::GraphicsContext::strokeColorSpace):
+ (WebCore::GraphicsContext::fillRule):
+ (WebCore::GraphicsContext::setFillRule):
+ (WebCore::GraphicsContext::setFillColor):
+ (WebCore::GraphicsContext::fillColor):
+ (WebCore::GraphicsContext::fillColorSpace):
+ (WebCore::GraphicsContext::setShouldAntialias):
+ (WebCore::GraphicsContext::shouldAntialias):
+ (WebCore::GraphicsContext::setStrokePattern):
+ (WebCore::GraphicsContext::setFillPattern):
+ (WebCore::GraphicsContext::setStrokeGradient):
+ (WebCore::GraphicsContext::setFillGradient):
+ (WebCore::GraphicsContext::fillGradient):
+ (WebCore::GraphicsContext::strokeGradient):
+ (WebCore::GraphicsContext::fillPattern):
+ (WebCore::GraphicsContext::strokePattern):
+ (WebCore::GraphicsContext::setShadowsIgnoreTransforms):
+ (WebCore::GraphicsContext::updatingControlTints):
+ (WebCore::GraphicsContext::setUpdatingControlTints):
+ (WebCore::GraphicsContext::setPaintingDisabled):
+ (WebCore::GraphicsContext::paintingDisabled):
+ (WebCore::GraphicsContext::textDrawingMode):
+ (WebCore::GraphicsContext::setTextDrawingMode):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/GraphicsContextPrivate.h: Added.
+ (WebCore::GraphicsContextState::GraphicsContextState):
+ (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::setPlatformFill):
+ (WebCore::setPlatformStroke):
+ (WebCore::drawPathShadow):
+ (WebCore::fillCurrentCairoPath):
+ (WebCore::strokeCurrentCairoPath):
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::~GraphicsContext):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ (WebCore::GraphicsContext::strokeRect):
+ (WebCore::GraphicsContext::setAlpha):
+ (WebCore::GraphicsContext::getAlpha):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::~GraphicsContext):
+ (WebCore::GraphicsContext::applyStrokePattern):
+ (WebCore::GraphicsContext::applyFillPattern):
+ (WebCore::GraphicsContext::drawPath):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ (WebCore::GraphicsContext::strokeRect):
+ * platform/graphics/haiku/GraphicsContextHaiku.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::~GraphicsContext):
+ * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::~GraphicsContext):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::clip):
+ (WebCore::GraphicsContext::clipOut):
+ (WebCore::GraphicsContext::addInnerRoundedRectClip):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::~GraphicsContext):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::~GraphicsContext):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ * platform/graphics/win/GraphicsContextCairoWin.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ * platform/graphics/wince/GraphicsContextWinCE.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::~GraphicsContext):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::fillRect):
+ * platform/graphics/wx/GraphicsContextWx.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::~GraphicsContext):
+
+2010-12-08 Dai Mikurube <dmikurube@google.com>
+
+ Reviewed by Kent Tamura.
+
+ Implement "required" attribute for select tags
+ https://bugs.webkit.org/show_bug.cgi?id=50380
+
+ Test: fast/forms/select-live-pseudo-selectors.html
+ platform/mac/fast/objc/dom-html-select-live-pseudo-selectors.html
+
+ * html/HTMLSelectElement.cpp:
+ (WebCore::HTMLSelectElement::deselectItems): Added calling setNeedsValidityCheck() to enable validity check after changing. No tests for this change since this function is not exposed to JavaScript or any web interface.
+ (WebCore::HTMLSelectElement::setSelectedIndex): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::setSelectedIndexByUser): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::valueMissing): Added valueMissing() to check if selecting an invalid or placeholder label option when a valid required attribute is specified.
+ (WebCore::HTMLSelectElement::listBoxSelectItem): Added calling setNeedsValidityCheck(). No tests for this change since it is not called yet. Look at the bug 36177 and the changeset 56180.
+ (WebCore::HTMLSelectElement::add): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::remove): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::restoreFormControlState): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::parseMappedAttribute): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::selectAll): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::reset): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::updateListBoxSelection): Added calling setNeedsValidityCheck(). Skipped adding tests for this change as too complicated..
+ (WebCore::HTMLSelectElement::setLength): Added calling setNeedsValidityCheck().
+ (WebCore::HTMLSelectElement::isRequiredFormControl): Check if required or not.
+ (WebCore::HTMLSelectElement::hasPlaceholderLabelOption): Added.
+ * html/HTMLSelectElement.h:
+ (WebCore::HTMLSelectElement::isOptionalFormControl): Check if not required.
+ * html/HTMLSelectElement.idl: Added a required attribute to select elements..
+ * html/ValidityState.cpp:
+ (WebCore::ValidityState::valueMissing): Added valueMissing check for select elements into the global checker, ValidityState::valueMissing().
+
+2010-12-08 Renata Hodovan <reni@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ GraphicsContext: Merge m_common and m_data
+ https://bugs.webkit.org/show_bug.cgi?id=49914
+
+ Move data members from GraphicsContextPrivate into GraphicsContext. So GraphicsContextPlatform.h
+ and m_common became unnecessary. They are removed.
+ Add two methods to GraphicsContext: platformInit() and platformDestroy(), which
+ make the constructor of GraphicsContext clearer.
+ Besides add a getter to the private GraphicsContext::m_state member, because some inline
+ functions in cairo need it.
+
+ No new test is needed, because this is a refactoring.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::~GraphicsContext):
+ (WebCore::GraphicsContext::save):
+ (WebCore::GraphicsContext::restore):
+ (WebCore::GraphicsContext::setStrokeThickness):
+ (WebCore::GraphicsContext::setStrokeStyle):
+ (WebCore::GraphicsContext::setStrokeColor):
+ (WebCore::GraphicsContext::setShadow):
+ (WebCore::GraphicsContext::clearShadow):
+ (WebCore::GraphicsContext::getShadow):
+ (WebCore::GraphicsContext::strokeThickness):
+ (WebCore::GraphicsContext::strokeStyle):
+ (WebCore::GraphicsContext::strokeColor):
+ (WebCore::GraphicsContext::strokeColorSpace):
+ (WebCore::GraphicsContext::fillRule):
+ (WebCore::GraphicsContext::setFillRule):
+ (WebCore::GraphicsContext::setFillColor):
+ (WebCore::GraphicsContext::fillColor):
+ (WebCore::GraphicsContext::fillColorSpace):
+ (WebCore::GraphicsContext::setShouldAntialias):
+ (WebCore::GraphicsContext::shouldAntialias):
+ (WebCore::GraphicsContext::state):
+ (WebCore::GraphicsContext::setStrokePattern):
+ (WebCore::GraphicsContext::setFillPattern):
+ (WebCore::GraphicsContext::setStrokeGradient):
+ (WebCore::GraphicsContext::setFillGradient):
+ (WebCore::GraphicsContext::fillGradient):
+ (WebCore::GraphicsContext::strokeGradient):
+ (WebCore::GraphicsContext::fillPattern):
+ (WebCore::GraphicsContext::strokePattern):
+ (WebCore::GraphicsContext::setShadowsIgnoreTransforms):
+ (WebCore::GraphicsContext::updatingControlTints):
+ (WebCore::GraphicsContext::setUpdatingControlTints):
+ (WebCore::GraphicsContext::setPaintingDisabled):
+ (WebCore::GraphicsContext::paintingDisabled):
+ (WebCore::GraphicsContext::textDrawingMode):
+ (WebCore::GraphicsContext::setTextDrawingMode):
+ * platform/graphics/GraphicsContext.h:
+ (WebCore::GraphicsContextState::GraphicsContextState):
+ * platform/graphics/GraphicsContextPrivate.h: Removed.
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::setPlatformFill):
+ (WebCore::setPlatformStroke):
+ (WebCore::drawPathShadow):
+ (WebCore::fillCurrentCairoPath):
+ (WebCore::strokeCurrentCairoPath):
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ (WebCore::GraphicsContext::strokeRect):
+ (WebCore::GraphicsContext::setAlpha):
+ (WebCore::GraphicsContext::getAlpha):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::applyStrokePattern):
+ (WebCore::GraphicsContext::applyFillPattern):
+ (WebCore::GraphicsContext::drawPath):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ (WebCore::GraphicsContext::strokeRect):
+ * platform/graphics/haiku/GraphicsContextHaiku.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::clip):
+ (WebCore::GraphicsContext::clipOut):
+ (WebCore::GraphicsContext::addInnerRoundedRectClip):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::setPlatformShadow):
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ * platform/graphics/win/GraphicsContextCairoWin.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ * platform/graphics/wince/GraphicsContextWinCE.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::fillRect):
+ * platform/graphics/wx/GraphicsContextWx.cpp:
+ (WebCore::GraphicsContext::platformInit):
+ (WebCore::GraphicsContext::platformDestroy):
+
+2010-12-07 Anton Muhin <antonm@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ Port http://trac.webkit.org/changeset/72819/ to v8-backed ports.
+ https://bugs.webkit.org/show_bug.cgi?id=50246
+
+ * bindings/v8/V8DOMMap.h:
+ (WebCore::AbstractWeakReferenceMap::Visitor::startMap):
+ (WebCore::AbstractWeakReferenceMap::Visitor::endMap):
+ (WebCore::WeakReferenceMap::visit):
+ * bindings/v8/V8GCController.cpp:
+ (WebCore::GrouperItem::GrouperItem):
+ (WebCore::GrouperItem::groupId):
+ (WebCore::makeV8ObjectGroups):
+ (WebCore::NodeGrouperVisitor::NodeGrouperVisitor):
+ (WebCore::NodeGrouperVisitor::visitDOMWrapper):
+ (WebCore::NodeGrouperVisitor::applyGrouping):
+ (WebCore::DOMObjectGrouperVisitor::ObjectGrouperVisitor):
+ (WebCore::DOMObjectGrouperVisitor::startMap):
+ (WebCore::DOMObjectGrouperVisitor::endMap):
+ (WebCore::DOMObjectGrouperVisitor::visitDOMWrapper):
+ (WebCore::V8GCController::gcPrologue):
+
+2010-12-07 Daniel Bates <dbates@rim.com>
+
+ Reviewed by Martin Robinson.
+
+ Implement focus ring support for image maps
+ https://bugs.webkit.org/show_bug.cgi?id=50371
+
+ Implement GraphicsContext::drawFocusRing(const Path&, ...) so as to support
+ drawing a focus ring for image maps.
+
+ Tests: fast/images/imagemap-circle-focus-ring.html
+ fast/images/imagemap-polygon-focus-ring.html
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::adjustFocusRingColor): Added.
+ (WebCore::adjustFocusRingLineWidth): Added.
+ (WebCore::focusRingStrokeStyle): Added.
+ (WebCore::GraphicsContext::drawFocusRing): Moved code for determining focus ring- color,
+ line width and stroke style into functions adjustFocusRingColor(), adjustFocusRingLineWidth(),
+ and focusRingStrokeStyle(), respectively. Implemented GraphicsContext::drawFocusRing(const Path&, ...).
+
+2010-12-07 Sergio Villar Senin <svillar@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] WebKitSoupCache fails to load resources when cache contents are externally removed
+ https://bugs.webkit.org/show_bug.cgi?id=50577
+
+ Try to download cached resources again if they are no longer
+ accesible by the cache.
+
+ * platform/network/soup/cache/soup-request-http.c:
+ (send_async_cb):
+ (webkit_soup_request_http_send_async):
+
+2010-12-06 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Dimitri Glazkov.
+
+ RenderIndicator subclasses should not change the render tree during layout.
+ https://bugs.webkit.org/show_bug.cgi?id=50026
+
+ The old code created shadow elements during a layout computation,
+ that makes the layout state inconsisntent and cause an assertion failure.
+ This change created shadow elements before the layout to avoid
+ state inconsistencies.
+
+ Instead of creating shadows on demand, RenderMeter and
+ RenderProgress now create all necessary shadows before layouts,
+ and change its visibilities during the layout: Changing
+ visibilities doesn't trigger relayout and keep the state
+ consistent.
+
+ RenderMeter uses new HidablePartElement for shadow elements,
+ which can toggle visibiliby between hidden and original value.
+
+ Test: fast/dom/HTMLMeterElement/meter-element-crash.html
+
+ * html/HTMLMeterElement.cpp:
+ (WebCore::HTMLMeterElement::attach): Calling updateFromElement()
+ * html/HTMLMeterElement.h:
+ * html/HTMLProgressElement.cpp:
+ (WebCore::HTMLProgressElement::attach): Calling updateFromElement()
+ * html/HTMLProgressElement.h:
+ * rendering/RenderIndicator.cpp:
+ * rendering/RenderIndicator.h:
+ * rendering/RenderMeter.cpp:
+ (WebCore::MeterPartElement::MeterPartElement): Added to hold a restorable visibility.
+ (WebCore::MeterPartElement::createForPart):
+ (WebCore::MeterPartElement::hide):
+ (WebCore::MeterPartElement::restoreVisibility):
+ (WebCore::MeterPartElement::updateStyleForPart):
+ (WebCore::MeterPartElement::saveVisibility):
+ (WebCore::RenderMeter::~RenderMeter):
+ (WebCore::RenderMeter::createPart): Extracted
+ (WebCore::RenderMeter::updateFromElement): Had a shadow generation.
+ (WebCore::RenderMeter::layoutParts): Removed shadow generation code.
+ (WebCore::RenderMeter::shouldHaveParts):
+ (WebCore::RenderMeter::valuePartRect): Adopted orientation.
+ (WebCore::RenderMeter::orientation): Morphed from isHorizontal()
+ (WebCore::RenderMeter::valuePseudoId): Adoptedn orientation
+ (WebCore::RenderMeter::barPseudoId): Adopted orientation.
+ * rendering/RenderMeter.h:
+ (WebCore::RenderMeter::shadowAttached):
+ * rendering/RenderProgress.cpp:
+ (WebCore::RenderProgress::updateFromElement): Had a shadow generation.
+ (WebCore::RenderProgress::layoutParts):
+ * rendering/RenderProgress.h:
+ * rendering/ShadowElement.cpp:
+ (WebCore::ShadowBlockElement::createForPart): Extracted initAsPart().
+ (WebCore::ShadowBlockElement::initAsPart): Extracted from createForPart().
+ * rendering/ShadowElement.h:
+
+2010-11-29 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ returning to a POST result within a frame does a GET instead of a POST
+ https://bugs.webkit.org/show_bug.cgi?id=10199
+
+ FrameLoader::loadURLIntoChildFrame had a check for whether a frame
+ had a HistoryItem, and if so used that item's URL. However, that did
+ not handle the case where the HistoryItem had FormData and thus was the
+ result of a POST request. FrameLoader::navigateToDifferentDocument (now
+ renamed to loadDifferentDocumentItem) does all that, so just switch to
+ using it instead.
+
+ Besides the bug fix, the only difference in behavior is that we use the
+ HistoryItem's URL instead of original URL when restoring it in a child
+ frame. This seems desirable too (for consistency with other browsers, and
+ so that we can avoid form double-submits for forms that that do
+ POST-then-redirect), and is tested by
+ fast/history/history-back-initial-vs-final-url.html.
+
+ Tests: fast/history/history-back-initial-vs-final-url.html
+ http/tests/navigation/post-frames-goback1.html
+ http/tests/navigation/postredirect-frames-goback1.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadURLIntoChildFrame): Switch to using
+ loadDifferentDocumentItem. Also cleaned up ordering slightly (if
+ on the archive path, there's no need to do any of the other checks).
+ (WebCore::FrameLoader::loadDifferentDocumentItem): Renamed from
+ navigateToDifferentDocument so that calling it from loadItem and
+ loadURLIntoChildFrame flows more easily.
+ (WebCore::FrameLoader::loadSameDocumentItem): Similarly, renamed from
+ navigateWithinDocument.
+ (WebCore::FrameLoader::loadItem): Update callsites to the above methods.
+ * loader/FrameLoader.h:
+
+2010-12-07 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Made tables repaint correctly in all writing modes
+ Part of: Make tables work with vertical text
+ https://bugs.webkit.org/show_bug.cgi?id=46417
+
+ Tests: fast/repaint/table-writing-modes-h.html
+ fast/repaint/table-writing-modes-v.html
+
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::paintObject): Compute the ranges of rows and
+ columns to repaint based on the logical extent of the repaint rect.
+
+2010-12-07 Alexey Marinichev <amarinichev@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] compositor lost context recovery fix
+ https://bugs.webkit.org/show_bug.cgi?id=50614
+
+ To test, load a page that triggers the compositor, kill the GPU
+ process and hover over a link to redraw and thus restart the GPU
+ process. Without this patch it will assert in
+ ContentLayerChromium::updateTextureRect; with this patch it will not.
+
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::setNeedsDisplay):
+
+2010-12-07 Anders Carlsson <andersca@apple.com>
+
+ Fix the last clang++ build error.
+
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+ (PlatformCALayer::animationForKey):
+ Cast the returned animation to the correct type.
+
+2010-12-07 Anders Carlsson <andersca@apple.com>
+
+ Fix some clang++ build errors.
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
+ Remove unused variable.
+
+ * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+ Fix constness of pointers.
+
+2010-12-07 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Chris Marrin.
+
+ Fix the Color -> CGColorRef conversions for the debug colors
+ used for compositing layers.
+
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+ (PlatformCALayer::setBackgroundColor):
+ (PlatformCALayer::setBorderColor):
+
+2010-12-07 Brian Weinstein <bweinstein@apple.com>
+
+ Reviewed by John Sullivan.
+
+ Part of Layering Violation in ContextMenu
+ https://bugs.webkit.org/show_bug.cgi?id=50586
+
+ ContextMenuMac.mm had a WebCoreMenuTarget class, which was responsible for wrapping
+ a ContextMenuItem, and calling through to the ContextMenuController to validate it
+ and call a function when it was selected.
+
+ It was a layering violation to have this class here, because ContextMenu can't know
+ about ContextMenuController.
+
+ This patch moves the class that wraps the ContextMenuItems to WebKit/mac/WebHTMLView.mm,
+ and sets up the menu targets there.
+
+ No change in behavior, no new tests.
+
+ * WebCore.exp.in: Added function that needs to be exported.
+ * platform/mac/ContextMenuMac.mm:
+ (WebCore::ContextMenu::ContextMenu): Don't set the sharedMenuTarget anymore.
+ (WebCore::ContextMenu::appendItem): Don't call setMenuItemTarget (this is done in WebKit now).
+ (WebCore::ContextMenu::insertItem): Ditto.
+
+2010-12-07 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ -webkit-transition Fails on Multiple text-shadow Shadows
+ https://bugs.webkit.org/show_bug.cgi?id=42281
+
+ When transitioning multiple shadows, the blend function for
+ ShadowData dropped all but the first and last shadow because
+ of a failure to append to the end of the list. Fixed.
+
+ Test: transitions/multiple-text-shadow-transition.html
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::PropertyWrapperShadow::blend):
+
+2010-12-07 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ CSS animation doesn't work for border-radius
+ https://bugs.webkit.org/show_bug.cgi?id=48340
+
+ Include CSSPropertyBorderRadius in the list of shorthand
+ properties, so that the individual border-radius properties
+ get animated.
+
+ Test: transitions/border-radius-transition.html
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::addShorthandProperties):
+
+2010-12-07 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Kent Tamura.
+
+ Implement HTML5 hidden attribute
+ https://bugs.webkit.org/show_bug.cgi?id=40511
+
+ Test: fast/html/hidden-attr.html
+
+ * html/HTMLElement.cpp:
+ (WebCore::HTMLElement::mapToEntry): Pick up hidden as a global mapped attribute.
+ (WebCore::HTMLElement::parseMappedAttribute): Map hidden attribute to display: none.
+
+2010-12-07 Kenneth Russell <kbr@google.com>
+
+ Reviewed by David Levin.
+
+ Fix compilation of core web audio files on Windows
+ https://bugs.webkit.org/show_bug.cgi?id=50603
+
+ Changed a few constructs using C99 features of math.h to use
+ wtf/MathExtras.h instead. Changed inline definitions of a couple of
+ const static doubles in classes to out-of-line. Built Chrome with
+ web audio enabled on Windows and Mac OS X to test these changes.
+
+ No new tests since audio API is not yet implemented.
+
+ * WebCore.gypi:
+ * platform/audio/AudioResampler.cpp:
+ * platform/audio/Biquad.cpp:
+ (WebCore::Biquad::setLowpassParams):
+ (WebCore::Biquad::setHighpassParams):
+ (WebCore::Biquad::setLowShelfParams):
+ * platform/audio/Cone.cpp:
+ (WebCore::ConeEffect::gain):
+ * platform/audio/EqualPowerPanner.cpp:
+ (WebCore::EqualPowerPanner::pan):
+ * platform/audio/FFTFrame.cpp:
+ (WebCore::FFTFrame::interpolateFrequencyComponents):
+ (WebCore::FFTFrame::extractAverageGroupDelay):
+ (WebCore::FFTFrame::addConstantGroupDelay):
+ * platform/audio/HRTFKernel.cpp:
+ * platform/audio/HRTFPanner.cpp:
+ * webaudio/AudioBufferSourceNode.cpp:
+ (WebCore::AudioBufferSourceNode::readFromBufferWithGrainEnvelope):
+ * webaudio/AudioPannerNode.cpp:
+ (WebCore::AudioPannerNode::getAzimuthElevation):
+ * webaudio/AudioParam.cpp: Added.
+ (AudioParam::setValue):
+ (AudioParam::smooth):
+ * webaudio/AudioParam.h:
+ * webaudio/RealtimeAnalyser.cpp:
+
+2010-11-25 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GStreamer] faster elements linking
+ https://bugs.webkit.org/show_bug.cgi?id=50067
+
+ Perform less checks during GStreamer elements linking if building
+ against GStreamer >= 0.10.30.
+
+ * platform/graphics/gstreamer/GStreamerGWorld.cpp:
+ (WebCore::GStreamerGWorld::enterFullscreen):
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
+
+2010-12-07 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ [GStreamer] ::buffered() should return multiple ranges in some cases
+ https://bugs.webkit.org/show_bug.cgi?id=45101
+
+ Improved the ::buffered() method thanks to the new buffering query
+ support that landed in GStreamer 0.10.31. The method now
+ queries the media buffered-ranges on the pipeline and queue2
+ handles it if it's buffering the media to disk.
+
+ The webkitwebsrc element also gained BYTES duration query
+ support. This is needed in the rare cases where uridecodebin
+ configures its queue before the HTTP server returns the media
+ Content-Length.
+
+ Test: http/tests/media/video-buffered.html
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::MediaPlayerPrivateGStreamer::buffered):
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ (webkit_web_src_init):
+ (webKitWebSrcQuery): Make webkitwebsrc handle the duration queries
+ if it's aware of the media content-length.
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::paintMediaSliderTrack): Fix position of
+ the second and next buffered ranges.
+
+2010-12-07 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Antonio Gomes.
+
+ Spatial navigation not Working for Map and Area Tags
+ https://bugs.webkit.org/show_bug.cgi?id=47142
+
+ Give area elements special treatment in spatial navigation algorithm by getting the
+ rect of the area from the associated image. Since area elements are likely to overlap
+ if they are not rects, or if authors are not careful, we flatten the rect of area elements.
+
+ Tests: fast/spatial-navigation/snav-imagemap-area-not-focusable.html
+ fast/spatial-navigation/snav-imagemap-area-without-image.html
+ fast/spatial-navigation/snav-imagemap-overlapped-areas.html
+ fast/spatial-navigation/snav-imagemap-simple.html
+
+ * page/FocusController.cpp:
+ (WebCore::FocusController::findFocusCandidateInContainer):
+ (WebCore::FocusController::advanceFocusDirectionallyInContainer):
+ (WebCore::FocusController::advanceFocusDirectionally):
+ * page/SpatialNavigation.cpp:
+ (WebCore::FocusCandidate::FocusCandidate):
+ (WebCore::virtualRectForDirection):
+ (WebCore::virtualRectForAreaElementAndDirection):
+ * page/SpatialNavigation.h:
+ (WebCore::FocusCandidate::FocusCandidate):
+
+2010-12-07 Darin Adler <darin@apple.com>
+
+ Try to fix V8 build.
+
+ * bindings/generic/BindingDOMWindow.h:
+ (WebCore::BindingDOMWindow::createWindow): Pass security origin.
+
+2010-12-07 Darin Adler <darin@apple.com>
+
+ Another build fix.
+
+ * loader/CrossOriginAccessControl.cpp: Added a missing include.
+
+2010-12-07 Darin Adler <darin@apple.com>
+
+ Try to fix build.
+
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::start): Pass security origin.
+ (WebCore::PluginView::getURLNotify): Ditto.
+ (WebCore::PluginView::getURL): Ditto.
+ (WebCore::PluginView::handlePost): Ditto.
+
+2010-12-06 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Pass security origin to make local file decision correctly
+ https://bugs.webkit.org/show_bug.cgi?id=48603
+
+ * bindings/generic/BindingDOMWindow.h:
+ (WebCore::BindingDOMWindow::createWindow): Pass security origin.
+ (WebCore::BindingDOMWindow::open): Ditto.
+ * bindings/generic/BindingFrame.h:
+ (WebCore::BindingFrame::navigateIfAllowed): Ditto.
+
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::setLocation): Pass security origin.
+ (WebCore::createWindow): Ditto.
+ (WebCore::JSDOMWindow::open): Ditto.
+
+ * bindings/js/JSDocumentCustom.cpp:
+ (WebCore::JSDocument::setLocation): Pass security origin.
+
+ * dom/Document.cpp:
+ (WebCore::Document::processHttpEquiv): Pass security origin.
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::openInInspectedWindow):
+ Pass security origin.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::changeLocation): Added a security origin
+ argument, passed through to urlSelected.
+ (WebCore::FrameLoader::urlSelected): Replaced the resource request
+ and frame name arguments with a frame load request arguments in one
+ overload, and changed the other overload to pass in the current
+ frame's document for the security origin.
+ (WebCore::FrameLoader::loadFrameRequest): Moved the canDisplay
+ check before the referrer computation because it no longer needs
+ to look at the referrer. Replaced the call to canDisplay that
+ used the target frame's security origin and the call to
+ deprecatedCanDisplay with a single call to canDisplay that uses
+ the requester security origin.
+
+ * loader/FrameLoader.h: Updated for argument changes above.
+
+ * loader/NavigationScheduler.cpp:
+ (WebCore::ScheduledURLNavigation::ScheduledURLNavigation): Added
+ a security origin.
+ (WebCore::ScheduledURLNavigation::fire): Pass the security origin
+ in to FrameLoader::changeLocation.
+ (WebCore::ScheduledURLNavigation::securityOrigin): Added.
+ (WebCore::ScheduledRedirect::ScheduledRedirect): Added a security
+ origin argument.
+ (WebCore::ScheduledLocationChange::ScheduledLocationChange): Ditto.
+ (WebCore::ScheduledRefresh::ScheduledRefresh): Ditto.
+ (WebCore::ScheduledRefresh::fire): Pass the security origin in to
+ FrameLoader::changeLocation.
+ (WebCore::ScheduledFormSubmission::fire): Include the security
+ origin when constructing form submission.
+ (WebCore::NavigationScheduler::scheduleRedirect): Include the security
+ origin when creating the scheduled navigation object.
+ (WebCore::NavigationScheduler::scheduleLocationChange): Ditto.
+ (WebCore::NavigationScheduler::scheduleRefresh): Ditto.
+
+ * loader/NavigationScheduler.h: Added the security origin argument
+ to scheduleLocationChange.
+
+ * loader/SubframeLoader.cpp:
+ (WebCore::SubframeLoader::loadOrRedirectSubframe): Pass in the security
+ origin when calling scheduleLocationChange.
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::selectCache): Ditto.
+
+ * page/ContextMenuController.cpp:
+ (WebCore::openNewWindow): Pass in the security origin.
+ (WebCore::ContextMenuController::contextMenuItemSelected): Ditto.
+
+ * page/FrameLoadRequest.h: Added a security origin called the requester
+ to all FrameLoadRequest objects.
+
+ * page/XSSAuditor.cpp:
+ (WebCore::XSSAuditor::findInRequest): Added the security origin.
+
+2010-12-07 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: avoid initializing Context on when creating attaching listener to ScriptDebugServer
+ https://bugs.webkit.org/show_bug.cgi?id=50627
+
+ * bindings/v8/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::addListener): don't try to collect already parsed scripts if context has
+ not been initialized yet.
+
+2010-12-07 Csaba Osztrogonác <ossy@webkit.org>
+
+ Unreviewed. Rolling out r73421, because it made transitions/color-transition-all.html flakey.
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::addShorthandProperties):
+
+2010-12-07 Martin Robinson <mrobinson@igalia.com>
+
+ Unreviewed, rolling out r73392.
+ http://trac.webkit.org/changeset/73392
+ https://bugs.webkit.org/show_bug.cgi?id=50489
+
+ This commit caused crashes on the GTK+ bots
+
+ * bindings/ScriptControllerBase.cpp:
+ (WebCore::ScriptController::executeIfJavaScriptURL):
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::close):
+ (WebCore::Document::lastModified):
+ (WebCore::Document::finishedParsing):
+ (WebCore::Document::initSecurityContext):
+ (WebCore::Document::updateURLForPushOrReplaceState):
+ * dom/Document.h:
+ * dom/ProcessingInstruction.cpp:
+ (WebCore::ProcessingInstruction::checkStyleSheet):
+ * dom/ScriptElement.cpp:
+ (WebCore::ScriptElement::scriptCharset):
+ * html/HTMLLinkElement.cpp:
+ (WebCore::HTMLLinkElement::process):
+ * html/MediaDocument.cpp:
+ (WebCore::MediaDocument::replaceMediaElementTimerFired):
+ * html/PluginDocument.cpp:
+ (WebCore::PluginDocumentParser::createDocumentStructure):
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::DocumentLoader):
+ (WebCore::DocumentLoader::finishedLoading):
+ (WebCore::DocumentLoader::commitData):
+ (WebCore::DocumentLoader::setupForReplaceByMIMEType):
+ (WebCore::DocumentLoader::setFrame):
+ * loader/DocumentLoader.h:
+ * loader/DocumentWriter.cpp:
+ (WebCore::DocumentWriter::begin):
+ * loader/DocumentWriter.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::FrameLoader):
+ (WebCore::FrameLoader::init):
+ (WebCore::FrameLoader::clear):
+ (WebCore::FrameLoader::receivedFirstData):
+ (WebCore::FrameLoader::transitionToCommitted):
+ (WebCore::FrameLoader::open):
+ (WebCore::FrameLoader::finishedLoadingDocument):
+ (WebCore::FrameLoader::addExtraFieldsToRequest):
+ * loader/FrameLoader.h:
+ (WebCore::FrameLoader::writer):
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::requestPreload):
+ * platform/network/FormDataBuilder.cpp:
+ (WebCore::FormDataBuilder::encodingFromAcceptCharset):
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImage::dataChanged):
+
+2010-12-07 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [CMake] Remove WebKitGenerators
+ https://bugs.webkit.org/show_bug.cgi?id=50445
+
+ Move remaining logic into main CMakeLists.txt.
+
+ * CMakeLists.txt:
+
+2010-12-07 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Clear old SVG cursor entry before adding a new one
+ https://bugs.webkit.org/show_bug.cgi?id=50549
+
+ Test: svg/css/cursor-replace.svg
+
+ * css/CSSCursorImageValue.cpp:
+ (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
+ * svg/SVGCursorElement.cpp:
+ (WebCore::SVGCursorElement::~SVGCursorElement):
+ (WebCore::SVGCursorElement::removeClient):
+ (WebCore::SVGCursorElement::removeReferencedElement):
+ * svg/SVGCursorElement.h:
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::setCursorElement):
+ (WebCore::SVGElement::cursorElementRemoved):
+ (WebCore::SVGElement::setCursorImageValue):
+ (WebCore::SVGElement::cursorImageElementRemoved):
+ * svg/SVGElement.h:
+
+2010-12-07 Kenichi Ishibashi <bashi@google.com>
+
+ Reviewed by Kent Tamura.
+
+ Let HTMLObjectElement be a form associated element
+ https://bugs.webkit.org/show_bug.cgi?id=48821
+
+ Introduces FormAssociatedElement class which would be a super class
+ of form assocated elements. Some of member functions and variables of
+ HTMLFormControlElement are migrated into this class.
+ Following the HTML5 spec, HTMLFormControlElement class and
+ HTMLObjectElement class are subclasses of it for now.
+
+ Test: fast/forms/form-collection-elements-order.html
+
+ * Android.mk: Added FormAssociatedElement.cpp
+ * CMakeLists.txt: Ditto.
+ * GNUmakefile.am: Added FormAssociatedElement.{cpp,h}
+ * WebCore.exp.in: Added the symbol for toHTMLElement(FormAssociatedElement*)
+ * WebCore.gypi: Added FormAssociatedElement.{cpp,h}
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * dom/CheckedRadioButtons.h: Fixed class forward declaration order.
+ * dom/Document.cpp:
+ (WebCore::Document::registerFormElementWithFormAttribute): Modified to
+ use FormAssociatedElement instead of HTMLFormControlElement
+ (WebCore::Document::unregisterFormElementWithFormAttribute): Ditto.
+ (WebCore::Document::resetFormElementsOwner):
+ * dom/Document.h: Ditto.
+ * html/DOMFormData.cpp: Ditto.
+ (WebCore::DOMFormData::DOMFormData):
+ * html/FormAssociatedElement.cpp: Copied and renamed from WebCore/html/HTMLFormControlElement.cpp.
+ (WebCore::FormAssociatedElement::FormAssociatedElement):
+ (WebCore::FormAssociatedElement::~FormAssociatedElement):
+ (WebCore::FormAssociatedElement::validity):
+ (WebCore::FormAssociatedElement::insertedIntoTree):
+ (WebCore::FormAssociatedElement::removedFromTree):
+ (WebCore::FormAssociatedElement::removeFromForm):
+ (WebCore::FormAssociatedElement::resetFormOwner):
+ (WebCore::FormAssociatedElement::formAttributeChanged):
+ (WebCore::toHTMLElement):
+ * html/FormAssociatedElement.h: Ditto.
+ (WebCore::FormAssociatedElement::ref):
+ (WebCore::FormAssociatedElement::deref):
+ (WebCore::FormAssociatedElement::formDestroyed):
+ (WebCore::FormAssociatedElement::setForm):
+ * html/HTMLElement.h: Changed the access level of findFormAncestor().
+ * html/HTMLFormCollection.cpp:
+ (WebCore::HTMLFormCollection::item): Modified to use FormAssociatedElement
+ instead of HTMLFormControlElement.
+ (WebCore::HTMLFormCollection::getNamedFormItem): Ditto.
+ (WebCore::HTMLFormCollection::updateNameCache): Ditto.
+ * html/HTMLFormControlElement.cpp: Modified regarding with the change of class
+ hierarchy.
+ (WebCore::HTMLFormControlElement::HTMLFormControlElement):
+ (WebCore::HTMLFormControlElement::~HTMLFormControlElement):
+ (WebCore::HTMLFormControlElement::insertedIntoTree):
+ (WebCore::HTMLFormControlElement::removedFromTree):
+ (WebCore::HTMLFormControlElement::supportsFocus):
+ (WebCore::HTMLFormControlElement::checkValidity):
+ (WebCore::HTMLFormControlElement::virtualForm):
+ (WebCore::HTMLFormControlElement::isDefaultButtonForForm):
+ (WebCore::HTMLFormControlElement::attributeChanged):
+ * html/HTMLFormControlElement.h: Ditto.
+ (WebCore::HTMLFormControlElement::form):
+ (WebCore::HTMLFormControlElement::disabled):
+ (WebCore::HTMLFormControlElement::type):
+ (WebCore::HTMLFormControlElement::refFormAssociatedElement):
+ (WebCore::HTMLFormControlElement::derefFormAssociatedElement):
+ * html/HTMLFormElement.cpp: Modified to use FormAssociatedElement
+ instead of HTMLFormControlElement.
+ (WebCore::HTMLFormElement::submitImplicitly):
+ (WebCore::HTMLFormElement::validateInteractively):
+ (WebCore::HTMLFormElement::submit):
+ (WebCore::HTMLFormElement::reset):
+ (WebCore::HTMLFormElement::formElementIndexWithFormAttribute):
+ (WebCore::HTMLFormElement::formElementIndex):
+ (WebCore::HTMLFormElement::registerFormElement):
+ (WebCore::HTMLFormElement::removeFormElement):
+ (WebCore::HTMLFormElement::defaultButton):
+ (WebCore::HTMLFormElement::checkValidity):
+ (WebCore::HTMLFormElement::collectUnhandledInvalidControls):
+ (WebCore::HTMLFormElement::documentDidBecomeActive):
+ * html/HTMLFormElement.h: Ditto.
+ (WebCore::HTMLFormElement::associatedElements):
+ * html/HTMLInputElement.cpp: Ditto.
+ (WebCore::HTMLInputElement::updateCheckedRadioButtons):
+ * html/HTMLObjectElement.cpp: Modified regarding with the change of class
+ hierarchy.
+ (WebCore::HTMLObjectElement::HTMLObjectElement):
+ (WebCore::HTMLObjectElement::~HTMLObjectElement):
+ (WebCore::HTMLObjectElement::create):
+ (WebCore::HTMLObjectElement::attributeChanged):
+ (WebCore::HTMLObjectElement::insertedIntoTree):
+ (WebCore::HTMLObjectElement::removedFromTree):
+ (WebCore::HTMLObjectElement::appendFormData):
+ (WebCore::HTMLObjectElement::formControlName):
+ * html/HTMLObjectElement.h: Ditto.
+ (WebCore::HTMLObjectElement::form):
+ (WebCore::HTMLObjectElement::isFormControlElement):
+ (WebCore::HTMLObjectElement::isEnumeratable):
+ (WebCore::HTMLObjectElement::refFormAssociatedElement):
+ (WebCore::HTMLObjectElement::derefFormAssociatedElement):
+ * html/HTMLTagNames.in: Added constructorNeedsFormElement to object tag.
+ * html/ValidationMessage.cpp: Modified to use FormAssociatedElement
+ instead of HTMLFormControlElement.
+ (WebCore::ValidationMessage::ValidationMessage):
+ (WebCore::ValidationMessage::create):
+ * html/ValidationMessage.h: Ditto.
+ * html/ValidityState.cpp: Ditto.
+ (WebCore::ValidityState::validationMessage):
+ (WebCore::ValidityState::setCustomErrorMessage):
+ (WebCore::ValidityState::valueMissing):
+ (WebCore::ValidityState::typeMismatch):
+ (WebCore::ValidityState::patternMismatch):
+ (WebCore::ValidityState::tooLong):
+ (WebCore::ValidityState::rangeUnderflow):
+ (WebCore::ValidityState::rangeOverflow):
+ (WebCore::ValidityState::stepMismatch):
+ * html/ValidityState.h: Ditto.
+ (WebCore::ValidityState::create):
+ (WebCore::ValidityState::ValidityState):
+ * loader/FormSubmission.cpp: Ditto.
+ (WebCore::FormSubmission::create):
+
+2010-12-06 Pavel Feldman <pfeldman@chromium.org>
+
+ Not reviewed. Rolling out r72988 for breaking iframes.
+
+ * css/CSSImportRule.cpp:
+ (WebCore::CSSImportRule::insertedIntoParent):
+
+2010-12-06 Hironori Bono <hbono@chromium.org>
+
+ Reviewed by David Levin.
+
+ [Chromium] Refactor FontCacheChromiumWin.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=50611
+
+ This change just moved the helper functions for the WebCore::FontCache class to the beginning of ths file.
+
+ No new tests are added since this is a refactoring.
+
+ * platform/graphics/chromium/FontCacheChromiumWin.cpp:
+ (WebCore::fontDataFromDescriptionAndLogFont): Moved to the beginning of the file.
+ (WebCore::toGDIFontWeight): Moved to the beginning of the file.
+ (WebCore::FillLogFont): Moved to the beginning of the file.
+ (WebCore::TraitsInFamilyProcData::TraitsInFamilyProcData): Moved to the beginning of the file.
+ (WebCore::traitsInFamilyEnumProc): Moved to the beginning of the file.
+ (WebCore::FontCache::platformInit): Moved after the static functions.
+
+2010-12-06 Alexey Marinichev <amarinichev@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ Throw webglcontextlost and webglcontextrestored events when a WebGL context is lost and restored.
+ https://bugs.webkit.org/show_bug.cgi?id=50364
+
+ No new tests since there is currently no way to force a context lost event.
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::WebGLRenderingContextRestoreTimer::fired):
+ (WebCore::WebGLRenderingContext::create):
+ (WebCore::WebGLRenderingContext::WebGLRenderingContext):
+ (WebCore::WebGLRenderingContext::isContextLost):
+ (WebCore::WebGLRenderingContext::loseContext):
+ (WebCore::WebGLRenderingContext::restoreContext):
+ * html/canvas/WebGLRenderingContext.h:
+ (WebCore::WebGLRenderingContext::WebGLRenderingContextRestoreTimer::WebGLRenderingContextRestoreTimer):
+
+2010-12-06 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=50593
+
+ Fix background canvas painting for documents with left/top overflow. The math from the original RTL patch was incorrect.
+
+ Just use the RenderView's document dimensions always.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::paintRootBoxDecorations):
+
+2010-12-06 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ CSS animation doesn't work for border-radius
+ https://bugs.webkit.org/show_bug.cgi?id=48340
+
+ Include CSSPropertyBorderRadius in the list of shorthand
+ properties, so that the individual border-radius properties
+ get animated.
+
+ Test: transitions/border-radius-transition.html
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::addShorthandProperties):
+
+2010-12-06 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ ApplyStyleCommand should take EditingStyle instead of CSSStyleDeclaration
+ https://bugs.webkit.org/show_bug.cgi?id=49938
+
+ Modified ApplyStyleCommand::ApplyStyleCommand and ApplyStyleCommand::create to take EditingStyle*
+ instead of CSSStyleDeclaration*. Also replaced much of code in Editor::computeAndSetTypingStyle
+ by calls to EditingStyle's member functions and extracted EditingStyle::overrideWith and
+ EditingStyle::extractAndRemoveBlockProperties.
+
+ No new tests are added since this is a refactoring.
+
+ * WebCore.exp.in: Added SelectionController::copyTypingStyle and EditingStyle::~EditingStyle.
+ * css/CSSMutableStyleDeclaration.cpp: Made CSSMutableStyleDeclaration* in the argument list const.
+ (WebCore::CSSMutableStyleDeclaration::merge):
+ * css/CSSMutableStyleDeclaration.h:
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::ApplyStyleCommand): Takes EditingStyle* instead of CSSStyleDeclaration*.
+ (WebCore::ApplyStyleCommand::doApply): Uses EditingStyle.
+ * editing/ApplyStyleCommand.h: m_style is now a ref-pointer to EditingStyle instead of CSSMutableStyleDeclaration.
+ (WebCore::ApplyStyleCommand::create): Takes EditingStyle* instead of CSSStyleDeclaration*.
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::applyStyle): Ditto.
+ (WebCore::CompositeEditCommand::moveParagraphs): Calls applyStyle.
+ (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Ditto.
+ * editing/CompositeEditCommand.h:
+ * editing/DeleteSelectionCommand.cpp:
+ (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): Ditto.
+ * editing/EditCommand.cpp:
+ * editing/EditCommand.h:
+ * editing/EditingStyle.cpp:
+ (WebCore::EditingStyle::~EditingStyle): Added.
+ (WebCore::EditingStyle::overrideWithStyle): Extracted from Editor::calculateTypingStyleAfterDelete.
+ (WebCore::EditingStyle::copy): Added.
+ (WebCore::EditingStyle::extractAndRemoveBlockProperties): Extracted from Editor::calculateTypingStyleAfterDelete.
+ * editing/EditingStyle.h:
+ * editing/Editor.cpp:
+ (WebCore::Editor::applyStyle): Calls ApplyStyleCommand::create.
+ (WebCore::Editor::applyParagraphStyle): Ditto.
+ (WebCore::Editor::computeAndSetTypingStyle): Ditto.
+ * editing/InsertLineBreakCommand.cpp:
+ (WebCore::InsertLineBreakCommand::doApply): Calls applyStyle.
+ * editing/InsertParagraphSeparatorCommand.cpp:
+ (WebCore::InsertParagraphSeparatorCommand::applyStyleAfterInsertion): Ditto.
+ * editing/InsertTextCommand.cpp:
+ (WebCore::InsertTextCommand::input): Ditto.
+ * editing/RemoveFormatCommand.cpp:
+ (WebCore::RemoveFormatCommand::doApply): Calls ApplyStyleCommand::create.
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Calls applyStyle.
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::copyTypingStyle): Moved from SelectionController.h
+ * editing/SelectionController.h:
+
+2010-12-05 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ Executing FormatBlock on multiple paragraphs inside pre does not remove the outer pre
+ https://bugs.webkit.org/show_bug.cgi?id=47300
+
+ The bug was caused by FormatBlockCommand::formatRange's not removing refNode when the refNode
+ contains more than one paragraphs even when the refNode is fully selected.
+
+ Fixed the bug by modifying FormatBlockCommand::formatRange to correctly remove the node in
+ such a situation.
+
+ Also fixed a bug in ApplyBlockElementCommand::formatSelection that the end of selection
+ is not properly updated when the end of selection resides in the node split by
+ rangeForParagraphSplittingTextNodesIfNeeded or endOfNextParagrahSplittingTextNodesIfNeeded.
+
+ Test: editing/execCommand/format-block-multiple-paragraphs-in-pre.html
+
+ * editing/ApplyBlockElementCommand.cpp:
+ (WebCore::ApplyBlockElementCommand::formatSelection): Calls formatRange with m_endOfLastParagraph.
+ (WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesIfNeeded): Updates
+ m_endOfLastParagraph when the position points to the node split by this function.
+ (WebCore::ApplyBlockElementCommand::endOfNextParagrahSplittingTextNodesIfNeeded): Ditto.
+ * editing/ApplyBlockElementCommand.h: Added m_endOfLastParagraph as a member variable.
+ * editing/FormatBlockCommand.cpp:
+ (WebCore::FormatBlockCommand::formatRange): See above.
+ * editing/FormatBlockCommand.h:
+ * editing/IndentOutdentCommand.cpp:
+ (WebCore::IndentOutdentCommand::formatRange): Ignores the end of selection.
+ * editing/IndentOutdentCommand.h:
+
+2010-12-03 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Postpone gl delete* calls until shaders/programs are no longer attached
+ https://bugs.webkit.org/show_bug.cgi?id=50501
+
+ * html/canvas/WebGLBuffer.cpp:
+ (WebCore::WebGLBuffer::deleteObjectImpl): Simply delete GL resource.
+ * html/canvas/WebGLFramebuffer.cpp:
+ (WebCore::WebGLFramebuffer::deleteObjectImpl): Ditto.
+ * html/canvas/WebGLObject.cpp:
+ (WebCore::WebGLObject::deleteObject): Tracking whether deleteObjectImpl should be called or not.
+ * html/canvas/WebGLObject.h:
+ (WebCore::WebGLObject::detachContext): Set attachmentCount to 0 to ensure OpenGL resource deletion.
+ (WebCore::WebGLObject::onDetached): No need to track attachmentCount here as we track it in deleteObject.
+ (WebCore::WebGLObject::isDeleted): Make this public.
+ * html/canvas/WebGLProgram.cpp:
+ (WebCore::WebGLProgram::deleteObjectImpl): Simply delete GL resource.
+ * html/canvas/WebGLRenderbuffer.cpp:
+ (WebCore::WebGLRenderbuffer::deleteObjectImpl): Ditto.
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::getProgramParameter): intercept DELETE_STATUS.
+ (WebCore::WebGLRenderingContext::getShaderParameter): Ditto.
+ * html/canvas/WebGLShader.cpp:
+ (WebCore::WebGLShader::deleteObjectImpl): Simply delete GL resource.
+ * html/canvas/WebGLTexture.cpp:
+ (WebCore::WebGLTexture::deleteObjectImpl): Simply delete GL resource.
+
+2010-12-06 Ryosuke Niwa <rniwa@webkit.org>
+
+ Yet unreviewed another Leopard build fix for r73380.
+
+ * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
+ (PlatformCAAnimation::setKeyTimes):
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+ (PlatformCALayer::platformCALayer):
+
+2010-12-06 Andy Estes <aestes@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Marquee elements do not stop animating when scrollAmount is set to 0.
+ https://bugs.webkit.org/show_bug.cgi?id=50434
+
+ Test: fast/html/marquee-scrollamount.html
+
+ * rendering/RenderMarquee.cpp:
+ (WebCore::RenderMarquee::timerFired): Allow increment to be 0.
+
+2010-12-06 Ryosuke Niwa <rniwa@webkit.org>
+
+ Unreviewed Leopard buildfix for r73380.
+
+ * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
+ (PlatformCAAnimation::setTimingFunctions):
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+ (PlatformCALayer::PlatformCALayer):
+
+2010-12-06 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GStreamer] use ResourceHandle::setDefersLoading in WebKitWebSourceGStreamer
+ https://bugs.webkit.org/show_bug.cgi?id=44157
+
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ (webKitWebSrcNeedDataMainCb):
+ (webKitWebSrcEnoughDataMainCb): Replaced platform-specific code
+ with cross-platform ResourceHandle::setDefersLoading calls.
+
+2010-12-06 Ryosuke Niwa <rniwa@webkit.org>
+
+ Unreviewed Leopard build fix for r73388.
+
+ * accessibility/AccessibilitySlider.cpp:
+ (WebCore::AccessibilitySlider::maxValueForRange):
+ (WebCore::AccessibilitySlider::minValueForRange):
+
+2010-12-06 Ryosuke Niwa <rniwa@webkit.org>
+
+ Unreviewed build fix for Leopard after r73379.
+
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::setAllowsFontSmoothing):
+
+2010-12-06 Nate Chapin <japhet@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Make DocumentWriter a member of DocumentLoader
+ instead of FrameLoader.
+ https://bugs.webkit.org/show_bug.cgi?id=50489
+
+ Refactor, no new tests.
+
+ * bindings/ScriptControllerBase.cpp:
+ (WebCore::ScriptController::executeIfJavaScriptURL):
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::close):
+ (WebCore::Document::lastModified):
+ (WebCore::Document::finishedParsing):
+ (WebCore::Document::initSecurityContext):
+ (WebCore::Document::updateURLForPushOrReplaceState):
+ * dom/Document.h:
+ (WebCore::Document::setDocumentLoader):
+ (WebCore::Document::loader):
+ * dom/ProcessingInstruction.cpp:
+ (WebCore::ProcessingInstruction::checkStyleSheet):
+ * dom/ScriptElement.cpp:
+ (WebCore::ScriptElement::scriptCharset):
+ * html/HTMLLinkElement.cpp:
+ (WebCore::HTMLLinkElement::process):
+ * html/MediaDocument.cpp:
+ (WebCore::MediaDocument::replaceMediaElementTimerFired):
+ * html/PluginDocument.cpp:
+ (WebCore::PluginDocumentParser::createDocumentStructure):
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::DocumentLoader):
+ (WebCore::DocumentLoader::finishedLoading):
+ (WebCore::DocumentLoader::commitData):
+ (WebCore::DocumentLoader::setupForReplaceByMIMEType):
+ (WebCore::DocumentLoader::setFrame):
+ * loader/DocumentLoader.h:
+ (WebCore::DocumentLoader::writer):
+ * loader/DocumentWriter.h:
+ (WebCore::DocumentWriter::setFrame):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::FrameLoader):
+ (WebCore::FrameLoader::init):
+ (WebCore::FrameLoader::clear):
+ (WebCore::FrameLoader::receivedFirstData):
+ (WebCore::FrameLoader::transitionToCommitted):
+ (WebCore::FrameLoader::open):
+ (WebCore::FrameLoader::finishedLoadingDocument):
+ (WebCore::FrameLoader::addExtraFieldsToRequest):
+ * loader/FrameLoader.h:
+ (WebCore::FrameLoader::notifier):
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::requestPreload):
+ * platform/network/FormDataBuilder.cpp:
+ (WebCore::FormDataBuilder::encodingFromAcceptCharset):
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImage::dataChanged):
+
+2010-12-06 Mark Rowe <mrowe@apple.com>
+
+ Build fix.
+
+ * WebCore.xcodeproj/project.pbxproj: Don't force WebCore to build against the 10.5 SDK.
+ That's just plain wrong.
+
+2010-12-06 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ HTML5 Slider does not work correctly with VoiceOver
+ https://bugs.webkit.org/show_bug.cgi?id=50505
+
+ Address a few problems with the Mac implementation for the accessibility slider.
+ 1) The value indicator is not hit testable.
+ 2) The value indicator does not return an AXValue.
+ 3) In the slider, the min/max values are not correct when min/max attributes are not present.
+ 4) When you change the value with the keyboard, it doesn't send out the right notification.
+ 5) Sliders were returning AXValue and AXTopLevelUIElement attributes twice in their list of attributes.
+
+ Test: platform/mac/accessibility/html-slider-indicator.html
+
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::AccessibilityObject::getAttribute):
+ Use fastGetAttribute on Element, instead of getAttribute.
+ * accessibility/AccessibilityObject.h:
+ (WebCore::AccessibilityObject::isInputSlider):
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
+ * accessibility/AccessibilitySlider.cpp:
+ (WebCore::AccessibilitySlider::doAccessibilityHitTest):
+ (WebCore::AccessibilitySlider::maxValueForRange):
+ (WebCore::AccessibilitySlider::minValueForRange):
+ * accessibility/AccessibilitySlider.h:
+ (WebCore::AccessibilitySlider::isInputSlider):
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::applyStep):
+
+2010-12-06 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=49220 <<rdar://problem/8644849>, REGRESSION: transforms now
+ O(n^3) from pathological behavior in lowestPosition, rightmostPosition, leftmostPosition and topmostPosition.
+
+ This patch throws out the lowest/rightmost/leftmost/topmostPosition functions and re-architects layout overflow
+ in the engine to cache all the information required to properly handle scrolling.
+
+ In the old code, there were two types of overflow: layout overflow and visual overflow. The former could
+ affect scrolling and the latter could not. The distinction was largely meaningless, since layout overflow
+ wasn't actually used to determine scroll width or scroll height. It didn't propagate across self-painting layer
+ boundaries either. In the old code, the term visible overflow meant the union of the layout overflow and
+ visual overflow rects.
+
+ In the new code, the two types of overflow remain, but the distinction between the two is now clear. Visual overflow
+ is used purely for painting and hit testing checks and layout overflow is used specifically for scrolling. It has
+ been expanded to propagate across self-painting layers, to factor in relative positioning and transforms, and to
+ work with writing modes.
+
+ In order to minimize layout test changes, layers no longer incorporate right/bottom overflow into their width/height members.
+ Doing so uncovered two bugs where left/top overflow was ignored (proof that even having layer dimensions is harmful).
+ A render tree dump hack has been put into the code to keep this overflow dumping for the RenderView's layer, since otherwise
+ a huge number of tests would change.
+
+ Added fast/overflow/overflow-rtl-vertical.html to test vertical writing-mode overflow. Existing tests cover the rest.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::adjustViewSize):
+ (WebCore::FrameView::forceLayoutForPagination):
+ Changed to use RenderView's docTop/Left/Width/Height accessors, which simply grab the overflow and properly flip it
+ to account for writing modes.
+
+ * platform/graphics/IntRect.h:
+ (WebCore::IntRect::shiftLeftEdgeTo):
+ (WebCore::IntRect::shiftRightEdgeTo):
+ (WebCore::IntRect::shiftTopEdgeTo):
+ (WebCore::IntRect::shiftBottomEdgeTo):
+ New helper functions for sliding the edge of a rectangle without moving any of the other three edges.
+
+ * rendering/InlineBox.h:
+ (WebCore::InlineBox::frameRect):
+ frameRect is a helper for obtaining the x, y, width, height of an InlineBox as an IntRect.
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
+ All of the overflow setting in the inline direction has been removed from this function. All line overflow is computed
+ at once now in a single function: computeOverflow.
+
+ (WebCore::InlineFlowBox::addBoxShadowVisualOverflow):
+ (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
+ (WebCore::InlineFlowBox::addReplacedChildOverflow):
+ Helper for propagating overflow from specific types of children that occur on a line into the InlineFlowBox's overflow.
+
+ (WebCore::InlineFlowBox::computeOverflow):
+ The new function that computes both horizontal and vertical overflow for a line box.
+
+ (WebCore::InlineFlowBox::setLayoutOverflow):
+ (WebCore::InlineFlowBox::setVisualOverflow):
+ (WebCore::InlineFlowBox::setOverflowFromLogicalRects):
+ New functions that set the overflow computed by computeOverflow. These replace setBlockDirectionOverflowPositions
+ and setInlineDirectionOverflowPositions. They essentially do the same thing, but they operate on rectangles.
+
+ (WebCore::InlineFlowBox::nodeAtPoint):
+ (WebCore::InlineFlowBox::paint):
+ Changed to use visual overflow instead of visible overflow. (Visible overflow as a union of layout and visual
+ overflow is no longer necessary, since visual overflow is now equivalent to the old visible overflow concept.)
+
+ * rendering/InlineFlowBox.h:
+ (WebCore::InlineFlowBox::logicalLayoutOverflowRect):
+ (WebCore::InlineFlowBox::logicalVisualOverflowRect):
+ Helpers for obtaining logical overflow rectangles, since lines compute their overflow in logical terms before
+ converting to block coordinates at the end.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::addOverflowFromChildren):
+ (WebCore::RenderBlock::computeOverflow):
+ (WebCore::RenderBlock::addOverflowFromFloats):
+ (WebCore::RenderBlock::addOverflowFromPositionedObjects):
+ Blocks now have a computeOverflow function called at the end of layout that adds in all the types of overflow. The addOverflowFromChildren
+ method is virtual so that RenderListItem and RenderTable can subclass it. RenderListItem has to position its list marker and
+ propagate marker overflow up, and RenderTable adds in overflow from its sections.
+
+ (WebCore::RenderBlock::layoutOnlyPositionedObjects):
+ (WebCore::RenderBlock::layoutPositionedObjects):
+ When only positioned objects lay out, overflow must still be recomputed. The refactoring of overflow computation into a single
+ callable method: computeOverflow, makes it possible for this to be done easily.
+
+ (WebCore::RenderBlock::paint):
+ visible -> visual.
+
+ (WebCore::RenderBlock::addOverhangingFloats):
+ The propagation of float overflow has changed substantially. The basic rules are:
+ (1) The float must be in our floating objects list to contribute to overflow.
+ (2) The float must be a descendant to contribute to overflow.
+ (3) The block must have the outermost list that contains the float, or it has a self-painting layer and
+ so the float needs to be included in its overflow.
+
+ (WebCore::RenderBlock::nodeAtPoint):
+ visible -> visual.
+
+ (WebCore::RenderBlock::layoutColumns):
+ Remove column overflow computation from layoutColumns and move it to computeOverflow.
+
+ (WebCore::RenderBlock::adjustLinePositionForPagination):
+ visible -> visual.
+
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::scrollbarsChanged):
+ Added a new virtual method used by table cells when scrollbars in an overflow:auto/scroll table cell come and go.
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren):
+ (WebCore::RenderBlock::determineStartPosition):
+ (WebCore::RenderBlock::matchedEndLine):
+ (WebCore::RenderBlock::addOverflowFromInlineChildren):
+ (WebCore::RenderBlock::beforeSideVisualOverflowForLine):
+ (WebCore::RenderBlock::afterSideVisualOverflowForLine):
+ visible -> visual.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::scrollWidth):
+ (WebCore::RenderBox::scrollHeight):
+ Patched to use layoutOverflow functions instead of the old rightmost/leftmostPosition functions.
+
+ (WebCore::RenderBox::paintRootBoxDecorations):
+ Use docLeft and docTop here, so that writing modes are handled.
+
+ (WebCore::RenderBox::clippedOverflowRectForRepaint):
+ visible -> visual.
+
+ (WebCore::RenderBox::addOverflowFromChild):
+ (WebCore::RenderBox::addLayoutOverflow):
+ (WebCore::RenderBox::addVisualOverflow):
+ (WebCore::RenderBox::logicalVisualOverflowRectForPropagation):
+ (WebCore::RenderBox::visualOverflowRectForPropagation):
+ (WebCore::RenderBox::logicalLayoutOverflowRectForPropagation):
+ (WebCore::RenderBox::layoutOverflowRectForPropagation):
+ * rendering/RenderBox.h:
+ The new overflow system for boxes. Layout overflow now crosses self-painting layer boundaries and adjusts child boxes
+ for transforms, relative positioning and writing mode differences.
+
+ (WebCore::RenderBox::layoutOverflowRect):
+ (WebCore::RenderBox::topLayoutOverflow):
+ (WebCore::RenderBox::bottomLayoutOverflow):
+ (WebCore::RenderBox::leftLayoutOverflow):
+ (WebCore::RenderBox::rightLayoutOverflow):
+ Changed the default rectangle for layout overflow to be the client box to match the scrollable areas of overflow regions.
+
+ (WebCore::RenderBox::clientLogicalBottom):
+ New helper for obtaining the logical bottom of the client box.
+
+ (WebCore::RenderBox::clientBoxRect):
+ New helper for obtaining the clientLeft/Top/Width/Height box.
+
+ * rendering/RenderBoxModelObject.h:
+ (WebCore::RenderBoxModelObject::relativePositionLogicalOffset):
+ Helper for obtaining the relative position offset transposed for vertical writing modes. Used by line overflow.
+
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutBlock):
+ Changed flexible boxes to just call the base class computeOverflow method.
+
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::linesVisualOverflowBoundingBox):
+ (WebCore::RenderInline::clippedOverflowRectForRepaint):
+ visible -> visual.
+
+ * rendering/RenderInline.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::updateLayerPosition):
+ Changed layers to no longer incorporate right/bottom overflow into width/height. This is the reason many layout
+ tests change. (Not doing this makes the layout test changes far worse, since overflow propagates across self-painting
+ layers now.)
+
+ (WebCore::RenderLayer::overflowTop):
+ (WebCore::RenderLayer::overflowBottom):
+ (WebCore::RenderLayer::overflowLeft):
+ (WebCore::RenderLayer::overflowRight):
+ overflowTop/Bottom/Left/Right return overflow that accounts for writing modes, i.e., purely physical overflow that can be used
+ to set up the scroll area.
+
+ (WebCore::RenderLayer::computeScrollDimensions):
+ Drastically simplified this method now that overflowTop/Bottom/Left/Right just do the right thing regarding unreachable overflow.
+
+ (WebCore::RenderLayer::updateScrollInfoAfterLayout):
+ Make sure to explicitly set the vertical scrollbar's position just as we did with horizontal scrollbars, so that clamping to the
+ bottom works.
+
+ (WebCore::performOverlapTests):
+ (WebCore::RenderLayer::paintLayer):
+ Fix a bug in performOverlapTests. It incorrectly used the layer's bounds, and so it didn't account for left/top overflow out
+ of the layer (see why I hate layers even having dimensions?). Changed it to use the bounding box of the layer instead.
+
+ (WebCore::RenderLayer::hitTest):
+ Fix a bug in hit testing. It incorrectly used the root layer's bounds as the limit of the hit test, and so it didn't account
+ for left/top overflow in a ScrollView (hate hate hate layers having dimensions). I changed it to use the hit test rect instead,
+ so that the damage rect never stops the point from being tested (unless the hit test request says not to ignore clipping).
+
+ (WebCore::RenderLayer::localBoundingBox):
+ visible -> visual.
+
+ * rendering/RenderLayer.h:
+ Added the new overflowTop/Left/Right/Bottom accessors.
+
+ * rendering/RenderLineBoxList.cpp:
+ (WebCore::RenderLineBoxList::anyLineIntersectsRect):
+ (WebCore::RenderLineBoxList::lineIntersectsDirtyRect):
+ (WebCore::RenderLineBoxList::paint):
+ (WebCore::RenderLineBoxList::hitTest):
+ visible -> visual.
+
+ * rendering/RenderListItem.cpp:
+ (WebCore::RenderListItem::addOverflowFromChildren):
+ (WebCore::RenderListItem::positionListMarker):
+ * rendering/RenderListItem.h:
+ RenderListItem now positions the list marker when computing its overflow, since the marker propagates overflow back up to the list item.
+
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::paint):
+ visible -> visual.
+
+ * rendering/RenderMarquee.cpp:
+ (WebCore::RenderMarquee::computePosition):
+ Changed to use overflow functions instead of rightmost/lowestPosition.
+
+ * rendering/RenderMedia.cpp:
+ * rendering/RenderMedia.h:
+ Removed the lowest/topmost/rightmost/leftmostPosition functions, since control overflow is handled properly already.
+
+ * rendering/RenderOverflow.h:
+ (WebCore::RenderOverflow::RenderOverflow):
+ (WebCore::RenderOverflow::setLayoutOverflow):
+ (WebCore::RenderOverflow::setVisualOverflow):
+ Add new setters for layout and visual overflow as rects.
+
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::shouldPaint):
+ (WebCore::RenderReplaced::clippedOverflowRectForRepaint):
+ visible -> visual.
+
+ * rendering/RenderRubyRun.cpp:
+ (WebCore::RenderRubyRun::layout):
+ Call computeOverflow to recompute our overflow information after we adjust the ruby.
+
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::layout):
+ (WebCore::RenderTable::addOverflowFromChildren):
+ (WebCore::RenderTable::paint):
+ * rendering/RenderTable.h:
+ Move section overflow propagation into addOverflowFromChildren, and change RenderTable to just call computeOverflow.
+
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::clippedOverflowRectForRepaint):
+ visible -> visual.
+
+ (WebCore::RenderTableCell::scrollbarsChanged):
+ Adding unreachable overflow support (something that in the old code only existed for positioned objects in the root view) exposed
+ a bug in table layout. If scrollbars are added during the layout that occurs after intrinsic padding was incorporated into the
+ cell, then the cell won't lay out properly the second time (after the scrollbars have been added). We have to adjust the intrinsic
+ padding accounting for the presence of the new scrollbar so the second layout will get the right dimensions.
+
+ * rendering/RenderTableCell.h:
+ (WebCore::RenderTableCell::hasVisualOverflow):
+ visible -> visual.
+
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::layoutRows):
+ * rendering/RenderTableSection.h:
+ visible -> visual. Removed the leftmost/rightmost/topmost/bottommostPosition functions.
+
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::writeLayers):
+ Added a hack to render tree dumping to include right/bottom overflow for the root layer only. This keeps a zillion layout tests
+ from failing.
+
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::layout):
+ (WebCore::RenderView::docTop):
+ (WebCore::RenderView::docBottom):
+ (WebCore::RenderView::docLeft):
+ (WebCore::RenderView::docRight):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::docHeight):
+ (WebCore::RenderView::docWidth):
+ RenderView now uses docLeft/Top/Height/Width functions, which are just overflow queries that account for writing modes. These methods
+ are now the preferred way to query for the physical dimensions of a document.
+
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::addHighlightOverflow):
+ Changed to call setOverflowFromLogicalRects instead of the block/inline position functions.
+
+ (WebCore::RootInlineBox::alignBoxesInBlockDirection):
+ Remove the computation of block direction overflow, since it now all happens at once after the line is built.
+
+ (WebCore::RootInlineBox::paddedLayoutOverflowRect):
+ * rendering/RootInlineBox.h:
+ Added a new helper function for incorporating the end padding into a line. This end padding also includes the single pixel for a caret
+ in LTR if needed.
+
+2010-12-06 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Share code between Mac (CA) and Windows (CACF) GraphicsLayer implementations
+ https://bugs.webkit.org/show_bug.cgi?id=49388
+
+ Replaced GraphicsLayerMac with GraphicsLayerCA. GraphicsLayerCA is essentially
+ identical to GraphicsLayerMac, but replaces all the CoreAnimation specific calls
+ with calls to PlatformCALayer and PlatformCAAnimation. This makes GraphicsLayerCA
+ platform neutral as long as implementations of those two classes are available.
+ Added implementations in PlatformCALayerMac and PlatformCAAnimationMac. Also got
+ rid of GraphicsLayer::nativeLayer() and replaced it with GraphicsLayer::platformLayer()
+ to avoid confusion since both names were used to refer to the same thing.
+
+ This patch is only for Mac. Windows implementation has not changed.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/GraphicsLayer.h:
+ * platform/graphics/ca/GraphicsLayerCA.cpp: Copied from WebCore/platform/graphics/ca/GraphicsLayerCA.cpp.
+ * platform/graphics/ca/GraphicsLayerCA.h: Copied from WebCore/platform/graphics/ca/GraphicsLayerCA.h.
+ * platform/graphics/ca/PlatformCAAnimation.h: Copied from WebCore/platform/graphics/ca/PlatformCAAnimation.h.
+ * platform/graphics/ca/PlatformCALayer.h: Copied from WebCore/platform/graphics/ca/PlatformCALayer.h.
+ * platform/graphics/ca/mac/PlatformCAAnimationMac.mm: Copied from WebCore/platform/graphics/ca/mac/PlatformCAAnimationMac.mm.
+ (toCAMediaTimingFunction):
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm: Copied from WebCore/platform/graphics/ca/mac/PlatformCALayerMac.mm.
+ (PlatformCALayer::PlatformCALayer):
+ * platform/graphics/chromium/GraphicsLayerChromium.cpp:
+ * platform/graphics/chromium/GraphicsLayerChromium.h:
+ * platform/graphics/mac/GraphicsLayerMac.h: Removed.
+ * platform/graphics/mac/GraphicsLayerMac.mm: Removed.
+ * platform/graphics/mac/WebLayer.h:
+ * platform/graphics/mac/WebLayer.mm:
+ (-[WebLayer setNeedsDisplay]):
+ (-[WebLayer setNeedsDisplayInRect:]):
+ (-[WebLayer display]):
+ (-[WebLayer drawInContext:]):
+ * platform/graphics/mac/WebTiledLayer.h:
+ * platform/graphics/mac/WebTiledLayer.mm:
+ (-[WebTiledLayer setNeedsDisplay]):
+ (-[WebTiledLayer setNeedsDisplayInRect:]):
+ (-[WebTiledLayer display]):
+ (-[WebTiledLayer drawInContext:]):
+ * platform/graphics/qt/GraphicsLayerQt.cpp:
+ (WebCore::GraphicsLayerQtImpl::flushChanges):
+ * platform/graphics/qt/GraphicsLayerQt.h:
+ * platform/graphics/win/GraphicsLayerCACF.cpp:
+ * platform/graphics/win/GraphicsLayerCACF.h:
+
+2010-12-06 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Font antialiasing (smoothing) changes when elements are rendered into compositing layers
+ https://bugs.webkit.org/show_bug.cgi?id=23364
+
+ Text rendered by Core Graphics over a transparent background looks bad because of
+ font smoothing, so turn off smoothing when rendering text into compositing layers.
+
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::setAllowsFontSmoothing):
+ * platform/graphics/mac/WebLayer.mm:
+ (drawLayerContents):
+
+2010-12-06 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [WINCE] Add build system
+ https://bugs.webkit.org/show_bug.cgi?id=50522
+
+ * CMakeListsWinCE.txt: Added.
+
+2010-12-06 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ AX does not support HTML5 "required"
+ https://bugs.webkit.org/show_bug.cgi?id=50507
+
+ Test: platform/mac/accessibility/html5-required-attribute.html
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::isRequired):
+
+2010-12-06 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] using shadows leaks memory
+ https://bugs.webkit.org/show_bug.cgi?id=50541
+
+ Fixed leaks in the shadow code.
+ * platform/graphics/cairo/CairoUtilities.cpp:
+ (WebCore::drawPatternToCairoContext): adoptRef instead of just
+ getting a new reference.
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::drawPathShadow): handle cairo_path_t with smart
+ pointers.
+
+2010-12-06 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ [v8] Web Inspector: remove duplicate code for capturing stack trace
+ https://bugs.webkit.org/show_bug.cgi?id=50461
+
+ No new tests. Covered with existing inspector tests.
+
+ * bindings/js/ScriptCallStackFactory.cpp:
+ (WebCore::createScriptCallStack):
+ * bindings/js/ScriptCallStackFactory.h:
+ * bindings/v8/ScriptCallStackFactory.cpp:
+ (WebCore::toScriptCallFrame):
+ (WebCore::toScriptCallFramesVector):
+ (WebCore::createScriptCallStack):
+ * bindings/v8/ScriptCallStackFactory.h:
+ * bindings/v8/V8ConsoleMessage.cpp:
+ (WebCore::V8ConsoleMessage::handler):
+ * inspector/ScriptCallFrame.cpp:
+ (WebCore::ScriptCallFrame::ScriptCallFrame):
+ (WebCore::ScriptCallFrame::isEqual):
+ (WebCore::ScriptCallFrame::buildInspectorObject):
+ * inspector/ScriptCallFrame.h:
+ (WebCore::ScriptCallFrame::sourceURL):
+ * inspector/ScriptCallStack.h:
+ * inspector/TimelineRecordFactory.cpp:
+ (WebCore::TimelineRecordFactory::createGenericRecord):
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement):
+
+== Rolled over to ChangeLog-2010-12-06 ==