Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1712)

Unified Diff: Source/WebCore/ChangeLog

Side-by-side diff isn't available for this file because of its large size.
Issue 8020006: Merge 95668 - [chromium] SharedGraphicsContext3D's context should not be destroyed during atexit (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/874/
Patch Set: Created 9 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
Download patch
« no previous file with comments | « no previous file | Source/WebCore/platform/graphics/gpu/SharedGraphicsContext3D.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/WebCore/ChangeLog
===================================================================
--- Source/WebCore/ChangeLog (revision 95829)
+++ Source/WebCore/ChangeLog (working copy)
@@ -1,20 +1,9538 @@
-2011-09-06 Nat Duca <nduca@chromium.org>
+2011-09-21 James Robinson <jamesr@chromium.org>
- [chromium] REGRESSION(94353): requestAnimationFrame not throttled in compositing path
- https://bugs.webkit.org/show_bug.cgi?id=67621
+ [chromium] SharedGraphicsContext3D's context should not be destroyed during atexit
+ https://bugs.webkit.org/show_bug.cgi?id=68558
- CCSingleThreadProxy should not perform layout when called
- via the compositeImmediately path. Doing so makes it look
- like frame rate is unbounded.
+ Reviewed by Stephen White.
+ The SharedGraphicsContext3D's internal context is lazily created and then leaked intentionally, but since the
+ last ref is in a function-static RefPtr<> it ends up being destroyed at process exit time. This is bad, since
+ by the time we get this far in process shutdown we can't actually cleanly run the destruction logic and we
+ crash. Since we are explicitly leaking this for the lifetime of the process there's no point in keeping it in a
+ RefPtr<>
+
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::get):
+
+2011-09-21 Sergey Glazunov <serg.glazunov@gmail.com>
+
+ [Chromium] Protect the Frame in V8HTMLDocument::openCallback
+ https://bugs.webkit.org/show_bug.cgi?id=68555
+
+ Reviewed by Nate Chapin.
+
+ Test: fast/dom/frame-deleted-in-document-open.html
+
+ * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
+ (WebCore::V8HTMLDocument::openCallback):
+
+2011-09-21 Adam Klein <adamk@chromium.org>
+
+ Clean up CSS Counter code
+ https://bugs.webkit.org/show_bug.cgi?id=68492
+
+ Reviewed by Tony Chang.
+
+ Several cleanups/fixes:
+ - Make Counter::listStyle() return the actual list style string,
+ rather than empty string.
+ - Handle a specified list style of "none" correctly when generating
+ cssText and in Counter::listStyle().
+ - Use StringBuilder when generating cssText.
+
+ Test: fast/css/counters/getCounterValue.html
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseCounterContent):
+ Simplify processing (moving conversion to CSSStyleSelector),
+ pass a CSS_IDENT as the listStyle to Counter::create.
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::cssText):
+ Use StringBuilder.
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ Convert from a CSS_IDENT to an EListStyleType.
+ * css/Counter.h:
+ (WebCore::Counter::listStyleIdent):
+ Renamed from listStyleNumber to match its new functionality.
+
+2011-09-21 Chris Marrin <cmarrin@apple.com>
+
+ Check in WebCore.vcproj file unchanged but written like MSDev likes it
+
+ Unreviewed.
+
+ * WebCode.vcproj/WebCore.vcproj:
+
+2011-09-21 Stephen White <senorblanco@chromium.org>
+
+ [chromium] Optimize ImageBuffer constructor when accelerated
+ https://bugs.webkit.org/show_bug.cgi?id=68501
+
+ If the accelerated rendering mode is passed in to ImageBuffer, instead
+ of creating a bitmap PlatformCanvas and subsequently replacing its
+ device with an SkGpuDevice, create an SkCanvas and SkGpuDevice first,
+ and fall back to raster creation only failure. This saves on system
+ RAM for the backing store (and possibly GDI resources).
+
Reviewed by James Robinson.
+ Covered by existing tests.
+
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::get):
+ * platform/graphics/gpu/SharedGraphicsContext3D.h:
+ Rename "SharedGraphicsContext3D::create()" to "get()" to more
+ accurately reflect its function.
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::createAcceleratedCanvas):
+ Refactor creation of accelerated ImageBuffer.
+ (WebCore::ImageBuffer::ImageBuffer):
+ Attempt creation of accelerated ImageBuffer first, and only fall back
+ to bitmap-backed canvas creation if it fails.
+
+2011-09-21 Dan Bernstein <mitz@apple.com>
+
+ WebCore part of: Prevent the WebKit frameworks from defining inappropriately-named Objective-C classes
+ https://bugs.webkit.org/show_bug.cgi?id=68451
+
+ Reviewed by Darin Adler.
+
+ * WebCore.xcodeproj/project.pbxproj: Added a script build phase that invokes
+ check-for-inappropriate-objc-class-names, allowing only class names prefixed with "DOM" or "Web".
+
+2011-09-21 Dan Bernstein <mitz@apple.com>
+
+ <rdar://problem/9768483> REGRESSION: Crash in RenderBlock::removeFloatingObjectsBelow()
+ https://bugs.webkit.org/show_bug.cgi?id=68550
+
+ Reviewed by Darin Adler.
+
+ Test: fast/multicol/null-lastFloat-in-removeFloatingObjectsBelow.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::removeFloatingObjectsBelow): Break out of the while() loop when the
+ floating object set is empty, which can happen if there were no floats on previous lines
+ (in which case, lastFloat is 0).
+
+2011-09-21 ChangSeok Oh <shivamidow@gmail.com>
+
+ [GTK] Fix build break when enabling webgl on r95593
+ https://bugs.webkit.org/show_bug.cgi?id=68502
+
+ Reviewed by Martin Robinson.
+
+ Add PassOwnPtr.h to GC3DPrivate.h and remove useless one from GC3DGtk.cpp & GC3DPrivate.cpp
+
+ No tests required.
+
+ * platform/graphics/gtk/GraphicsContext3DGtk.cpp:
+ * platform/graphics/gtk/GraphicsContext3DPrivate.cpp:
+ * platform/graphics/gtk/GraphicsContext3DPrivate.h:
+
+2011-09-21 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: clear resource agent resource cache upon resource agent's disable.
+ https://bugs.webkit.org/show_bug.cgi?id=67995
+
+ Reviewed by Pavel Feldman.
+
+ Test: http/tests/inspector/network/network-disabling-check-no-memory-leak.html
+
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::disable):
+
+2011-09-21 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=68543
+
+ Make sure that when regions change dimensions we recompute pagination slices.
+
+ Reviewed by Simon Fraser.
+
+ Added new tests in fast/regions.
+
+ * rendering/LayoutState.cpp:
+ (WebCore::LayoutState::LayoutState):
+ * rendering/LayoutState.h:
+ * rendering/RenderFlowThread.cpp:
+ (WebCore::RenderFlowThread::layout):
+ (WebCore::RenderFlowThread::renderRegionForLine):
+ (WebCore::RenderFlowThread::regionLogicalWidthForLine):
+ * rendering/RenderRegion.cpp:
+ (WebCore::RenderRegion::layout):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::pushLayoutState):
+ * rendering/RenderView.h:
+ (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
+ (WebCore::LayoutStateMaintainer::push):
+
+2011-09-21 Xianzhu Wang <wangxianzhu@chromium.org>
+
+ Ensure TestWebKitAPI works on mac, win, chromium-mac and chromium-linux
+ https://bugs.webkit.org/show_bug.cgi?id=68206
+
+ Reviewed by Tony Chang.
+
+ Added two new wtf headers into ForwardingHeaders/wtf to make
+ #include <wtf/...h> cross-platform.
+ No new tests needed.
+
+ * ForwardingHeaders/wtf/MetaAllocator.h: Added.
+ * ForwardingHeaders/wtf/RedBlackTree.h: Added.
+
+2011-09-21 David Delaune <david.delaune@googlemail.com>
+
+ [WinCairo] IconDatabase::defaultIcon always fails for non-CAN_THEME_URL_ICON builds.
+ https://bugs.webkit.org/show_bug.cgi?id=67469
+
+ Reviewed by Brent Fulgham.
+
+ No new functionality added in this change.
+
+ * loader/icon/IconDatabase.cpp: defining CAN_THEME_URL_ICON for the WIN_CAIRO
+
+2011-09-20 Ryosuke Niwa <rniwa@webkit.org>
+
+ Span element gets produced using backspace/delete to merge header with paragraph
+ https://bugs.webkit.org/show_bug.cgi?id=68413
+
+ Reviewed by Darin Adler.
+
+ Add p element to the list of elements to retain appearance. Also modified removeStyleFromNode
+ (and renamed to removeStyleFromRules) not to remove inline style declarations because
+ inline styles need to stay on copy.
+
+ Test: editing/deleting/merge-paragraph-from-p-with-style.html
+
+ * editing/DeleteSelectionCommand.cpp:
+ (WebCore::DeleteSelectionCommand::saveTypingStyleState):
+ * editing/EditingStyle.cpp:
+ (WebCore::EditingStyle::removeStyleFromRules): Renamed from removeStyleFromNode.
+ * editing/EditingStyle.h:
+ * editing/markup.cpp:
+ (WebCore::isBlockNodeToRetainAppearance):
+ (WebCore::StyledMarkupAccumulator::serializeNodes):
+
+2011-09-21 Alice Boxhall <aboxhall@chromium.org>
+
+ Report AXValueChanged when value changes in element with role=textbox.
+ https://bugs.webkit.org/show_bug.cgi?id=68201
+
+ Reviewed by Chris Fleizach.
+
+ Test: platform/mac/accessibility/textbox-role-reports-notifications.html
+
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::AccessibilityObject::isARIATextControl):
+ * accessibility/AccessibilityObject.h:
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::contentChanged):
+ (WebCore::AccessibilityRenderObject::childrenChanged):
+
+2011-09-21 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: introduce Page.enable and Page.disable
+ https://bugs.webkit.org/show_bug.cgi?id=68530
+
+ Otherwise protocol is violating the contract of not sending
+ notifications by default.
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/Inspector.json:
+
+2011-09-21 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: add minimal error handling to the DOM breakpoints.
+ https://bugs.webkit.org/show_bug.cgi?id=68537
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/InspectorDOMAgent.h:
+ * inspector/InspectorDOMDebuggerAgent.cpp:
+ (WebCore::domTypeForName):
+ (WebCore::InspectorDOMDebuggerAgent::setDOMBreakpoint):
+ (WebCore::InspectorDOMDebuggerAgent::removeDOMBreakpoint):
+
+2011-09-21 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: make WebInspector a bit more timeline friendly.
+ https://bugs.webkit.org/show_bug.cgi?id=68534
+
+ I found that the maximum captured stack frame depth tracked by timeline is not
+ very convenient because the average depth of call stack considerably more than five.
+ Another useful trick is console.timeStamp for all backend calls.
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
+
+2011-09-21 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
+
+ [Qt][WK2] Implement Download support in WebProcess
+ https://bugs.webkit.org/show_bug.cgi?id=68153
+
+ Reviewed by Andreas Kling.
+
+ Refactored QNetworkReplyHandler::finish() in order to add
+ and use the static function QNetworkReplyHandler::errorForReply().
+ This will be used by our Download implementation in WebKit2 (WebProcess)
+ when handling ResourceError.
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::finish):
+ (WebCore::QNetworkReplyHandler::errorForReply):
+ * platform/network/qt/QNetworkReplyHandler.h:
+ * platform/network/qt/ResourceRequest.h:
+
+2011-09-21 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: paint box model colors in Metrics sidebar at all times, do not draw box outlines.
+ https://bugs.webkit.org/show_bug.cgi?id=68240
+
+ Today we paint backgrounds in Metrics box model on hover only - should be painted at all
+ times for the reference. Outlining boxes is highlight is wrong since outlines are outside
+ the corresponding box regions. We've seen few reports on that + Firebug does not do borders
+ for that reason.
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/DOMNodeHighlighter.cpp:
+ * inspector/DOMNodeHighlighter.h:
+ * inspector/Inspector.json:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::setHighlightDataFromConfig):
+ * inspector/front-end/Color.js:
+ * inspector/front-end/MetricsSidebarPane.js:
+ (WebInspector.MetricsSidebarPane.prototype._highlightDOMNode):
+ (WebInspector.MetricsSidebarPane.prototype._updateMetrics):
+ * inspector/front-end/inspector.css:
+ (.metrics .label):
+ * inspector/front-end/inspector.js:
+ (WebInspector.buildHighlightConfig):
+
+2011-09-21 Andreas Kling <kling@webkit.org>
+
+ Protect against misuse of EventListenerIterator.
+ https://bugs.webkit.org/show_bug.cgi?id=68364
+
+ Reviewed by Darin Adler.
+
+ In debug mode, keep track of the number of active EventListenerIterators
+ on an EventListenerMap, and assert that there are no iterators when the
+ map is being modified.
+
+ * dom/EventListenerMap.cpp:
+ (WebCore::EventListenerMap::EventListenerMap):
+ (WebCore::EventListenerMap::clear):
+ (WebCore::EventListenerMap::add):
+ (WebCore::EventListenerMap::remove):
+ (WebCore::EventListenerMap::find):
+ (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
+ (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
+ (WebCore::EventListenerIterator::EventListenerIterator):
+ (WebCore::EventListenerIterator::~EventListenerIterator):
+ * dom/EventListenerMap.h:
+
+2011-09-21 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: minor fixes in the DOM domain of the protocol.
+ https://bugs.webkit.org/show_bug.cgi?id=68517
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/Inspector.json:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::setAttributesAsText):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMNode.prototype.setAttribute):
+
+2011-09-16 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: limit the use of "Resource" term in the protocol.
+ https://bugs.webkit.org/show_bug.cgi?id=68250
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/Inspector.json:
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::markResourceAsCached):
+ (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
+ (WebCore::InspectorResourceAgent::setExtraHTTPHeaders):
+ (WebCore::InspectorResourceAgent::getResponseBody):
+ * inspector/InspectorResourceAgent.h:
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer.prototype._onAddRequestHeaders):
+ * inspector/front-end/NetworkManager.js:
+ (WebInspector.NetworkManager.prototype.requestContent):
+ (WebInspector.NetworkDispatcher.prototype.requestServedFromCache):
+ (WebInspector.NetworkDispatcher.prototype.requestServedFromMemoryCache):
+
+2011-09-21 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r95608.
+ http://trac.webkit.org/changeset/95608
+ https://bugs.webkit.org/show_bug.cgi?id=68521
+
+ breaks GTK and Windows builds. Please check EWS next time.
+ (Requested by philn-tp on #webkit).
+
+ * html/HTMLBodyElement.cpp:
+ (WebCore::adjustForZoom):
+ (WebCore::HTMLBodyElement::setScrollLeft):
+ (WebCore::HTMLBodyElement::setScrollTop):
+ * loader/HistoryController.cpp:
+ (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::scrollX):
+ (WebCore::DOMWindow::scrollY):
+ (WebCore::DOMWindow::scrollTo):
+ * page/Frame.cpp:
+ (WebCore::Frame::pageScaleFactor):
+ * page/Frame.h:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::applyOverflowToViewport):
+ (WebCore::FrameView::scrollXForFixedPosition):
+ (WebCore::FrameView::scrollYForFixedPosition):
+
+2011-09-21 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: console panel's scroller is not properly aligned.
+ https://bugs.webkit.org/show_bug.cgi?id=68448
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/inspector.css:
+ (#console-view):
+ (#console-messages):
+ (#drawer #console-messages):
+
+2011-09-20 Alpha Lam <hclam@chromium.org>
+
+ https://bugs.webkit.org/show_bug.cgi?id=68081
+ Fix scroll in page scaling mode.
+
+ Reviewed by Simon Fraser.
+
+ The following things are done in this patch:
+ 1. Rename Frame::pageScaleFactor() to Frame::frameScaleFactor() to better
+ reflect its purpose.
+ 2. Frame::frameScaleFactor() returns the scale factor of this frame with
+ respect to the container. So for the main frame it'll return the scale
+ factor of the page, inner frames will return 1.0
+ 3. scrollBy(), scrollX() and scrollY() to take into account of the frame
+ scale factor, causing incorrect coordinates reported to Javascript.
+
+ Tests: fast/events/scale-and-scroll-body.html
+ fast/events/scale-and-scroll-iframe-body.html
+ fast/events/scale-and-scroll-iframe-window.html
+ fast/events/scale-and-scroll-window.html
+
+ * html/HTMLBodyElement.cpp:
+ (WebCore::adjustForZoom):
+ (WebCore::HTMLBodyElement::setScrollLeft):
+ (WebCore::HTMLBodyElement::setScrollTop):
+ * loader/HistoryController.cpp:
+ (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::scrollX):
+ (WebCore::DOMWindow::scrollY):
+ (WebCore::DOMWindow::scrollTo):
+ * page/Frame.cpp:
+ (WebCore::Frame::frameScaleFactor): Return page's scale factor if this is
+ main frame, otherwise 1.0
+ * page/Frame.h:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::applyOverflowToViewport):
+ (WebCore::FrameView::scrollXForFixedPosition):
+ (WebCore::FrameView::scrollYForFixedPosition):
+
+2011-09-21 Andras Becsi <andras.becsi@nokia.com>
+
+ [Qt] Remove Qt specific code from css/SelectorChecker.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=67702
+
+ Reviewed by Csaba Osztrogonác.
+
+ No new tests needed.
+
+ * css/SelectorChecker.cpp: Move Qt-specific code to the Qt-specific WebPlatformStrategies.
+ (WebCore::SelectorChecker::determineLinkStateSlowCase):
+ * platform/VisitedLinkStrategy.h:
+
+2011-09-16 MORITA Hajime <morrita@google.com>
+
+ Style changes on forwarded shadow children should trigger shadow renderer reconstruction.
+ https://bugs.webkit.org/show_bug.cgi?id=68228
+
+ Reviewed by Dimitri Glazkov.
+
+ Currently style changes on forwarded shadow child triggers
+ Node::reattach() only for the forwarded node. But it should
+ invalidate whole renderers on the shadow tree because
+ ShadowContentElement expects its inclusions to be attached and to
+ create renderers in the inclusion order. But single node
+ reattach() violates the expectation and possibly creates
+ inconsistent render tree.
+
+ This change makes NodeRenderingContext to go
+ AttachContentForwarded, where the ShadowContentElement::attach()
+ happens, only during ShadowRoot::attach(), not for style-change
+ triggered Node::attach() on the forwarded nodes.
+
+ Note that the altering phase AttachContentLight doesn't create
+ renderers for the forwarded nodes. Instead of that, it possibly
+ triggers shadow subtree reconstruction on
+ NodeRenderingContext::hostChildrenChanged().
+
+ No new tests. This is a defensive change. There is no visible
+ difference at this time.
+
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::NodeRenderingContext::NodeRenderingContext):
+ * dom/ShadowRoot.cpp:
+ (WebCore::ShadowRoot::isInclusionSelectorActive):
+ * dom/ShadowRoot.h:
+
+2011-09-20 MORITA Hajime <morrita@google.com>
+
+ <meter> doesn't update rendering when its value is changed.
+ https://bugs.webkit.org/show_bug.cgi?id=67614
+
+ Reviewed by Dimitri Glazkov.
+
+ It lacks repaint() when the value is changed.
+
+ For non-native appearance it works because the indicator is
+ implemented in shadow DOM, for native appearance, repainting should be
+ handled explicitly.
+
+ Test: fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value.html
+
+ * html/HTMLMeterElement.cpp:
+ (WebCore::HTMLMeterElement::didElementStateChange):
+ * rendering/RenderMeter.cpp:
+ (WebCore::RenderMeter::updateFromElement):
+ * rendering/RenderMeter.h:
+ * rendering/RenderProgress.cpp:
+ (WebCore::RenderProgress::updateAnimationState):
+
+2011-09-20 Kent Tamura <tkent@chromium.org>
+
+ Move RenderObject::markContainingBlocksForLayout() to RenderObject.cpp.
+ https://bugs.webkit.org/show_bug.cgi?id=67989
+
+ Reviewed by Ryosuke Niwa.
+
+ No new tests because of no behavior change.
+
+ * rendering/RenderObject.cpp:
+ (WebCore::objectIsRelayoutBoundary): Moved from RenderObject.h.
+ (WebCore::RenderObject::markContainingBlocksForLayout): Moved from RenderObject.h
+ * rendering/RenderObject.h:
+
+2011-09-20 Rachel Blum <groby@chromium.org>
+
+ Support for multiple <link rel="icon"> favicon elements.
+ https://bugs.webkit.org/show_bug.cgi?id=65564
+
+ Reviewed by Darin Fisher.
+
+ No tests - purely an API change. (And API is not exposed to LayoutTests)
+
+ * dom/Document.cpp:
+ (WebCore::Document::iconURLs):
+ (WebCore::Document::addIconURL):
+ * dom/Document.h:
+ * dom/IconURL.cpp:
+ (WebCore::toIconIndex):
+ * dom/IconURL.h:
+ (WebCore::IconURL::IconURL):
+ * html/HTMLLinkElement.cpp:
+ (WebCore::HTMLLinkElement::process):
+ * loader/LinkLoader.cpp:
+ (WebCore::LinkLoader::loadLink):
+ * loader/LinkLoader.h:
+ * loader/icon/IconController.cpp:
+ (WebCore::IconController::urlsForTypes):
+ (WebCore::IconController::appendToIconURLs):
+ (WebCore::IconController::defaultURL):
+
+2011-09-20 Ojan Vafai <ojan@chromium.org>
+
+ [css3-flexbox] cleanup padding width calculations
+ https://bugs.webkit.org/show_bug.cgi?id=68490
+
+ Reviewed by Tony Chang.
+
+ No new tests. Existing tests cover the refactor.
+
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::logicalBorderAndPaddingWidthForChild):
+ (WebCore::RenderFlexibleBox::logicalScrollbarHeightForChild):
+ (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
+ (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
+ (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
+ * rendering/RenderFlexibleBox.h:
+
+2011-09-19 Jer Noble <jer.noble@apple.com>
+
+ Fix clang compile errors in Web Audio
+ https://bugs.webkit.org/show_bug.cgi?id=68384
+
+ Reviewed by David Levin.
+
+ No new tests; no net change in functionality.
+
+ * platform/graphics/MediaPlayer.h: Forward declare (instead of including directly)
+ AudioSourceProvider.
+ * webaudio/AudioChannelMerger.cpp:
+ (WebCore::AudioChannelMerger::checkNumberOfChannelsForInput): Remove unused parameter name.
+
+2011-09-20 John Gregg <johnnyg@google.com>
+
+ Directory Upload: parent path can truncate first char of the correct path
+ https://bugs.webkit.org/show_bug.cgi?id=66695
+
+ In some cases, if the parent path we compute ends with a separator
+ character like '/' or 'C:\', by adding one in an attempt to grab the
+ subsequent separator we actually grab a character of the real path,
+ which is incorrect.
+
+ Reviewed by Darin Fisher.
+
+ * html/FileInputType.cpp:
+ (WebCore::FileInputType::setFileList):
+
+2011-09-20 Jochen Eisinger <jochen@chromium.org>
+
+ Invoke CachedResourceLoader::canRequest for all URLs in a redirect chain
+ https://bugs.webkit.org/show_bug.cgi?id=68279
+
+ Reviewed by Adam Barth.
+
+ * loader/cache/CachedResourceLoader.h:
+ * loader/cache/CachedResourceRequest.cpp:
+ (WebCore::CachedResourceRequest::willSendRequest):
+
+2011-09-18 Ojan Vafai <ojan@chromium.org>
+
+ change RenderFlexibleBox to act on logical coordinates
+ https://bugs.webkit.org/show_bug.cgi?id=68129
+
+ Reviewed by David Hyatt.
+
+ This makes RenderFlexibleBox respect direction and writing-mode.
+ We now properly support the default flex-flow value of "row".
+
+ Test: css3/flexbox/writing-modes.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::setLogicalLocationForChild):
+ * rendering/RenderBlock.h:
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutBlock):
+ (WebCore::RenderFlexibleBox::logicalBorderWidthForChild):
+ (WebCore::RenderFlexibleBox::logicalPaddingWidthForChild):
+ (WebCore::RenderFlexibleBox::logicalScrollbarHeightForChild):
+ (WebCore::RenderFlexibleBox::marginStartStyleForChild):
+ (WebCore::RenderFlexibleBox::marginEndStyleForChild):
+ (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
+ (WebCore::RenderFlexibleBox::layoutInlineDirection):
+ (WebCore::RenderFlexibleBox::logicalPositiveFlexForChild):
+ (WebCore::RenderFlexibleBox::logicalNegativeFlexForChild):
+ (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
+ (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmInlineDirection):
+ (WebCore::RenderFlexibleBox::setLogicalOverrideSize):
+ (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
+ * rendering/RenderFlexibleBox.h:
+
+2011-09-20 Marshall Greenblatt <marshall@chromium.org>
+
+ Use DEFINE_STATIC_LOCAL to intentionally leak the static RefCountedHFONT object returned from
+ FontPlatformData::hashTableDeletedFontValue() to avoid global destructor ordering problems.
+ https://bugs.webkit.org/show_bug.cgi?id=67906
+
+ Reviewed by Adam Barth.
+
+ * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
+
+2011-09-20 Ryosuke Niwa <rniwa@webkit.org>
+
+ Hit testing on margins of body and head elements doesn't recur
+ https://bugs.webkit.org/show_bug.cgi?id=40753
+
+ Reviewed by Darin Adler.
+
+ The bug was caused by positionForPointRespectingEditingBoundaries's comparing the editability
+ of head/body and html elements when hit testing was done inside margins of head and body elements.
+
+ Fixed the bug by special-casing html element since margins of head and body elements are special.
+
+ Tests: editing/selection/click-on-body-margin.html
+ editing/selection/click-on-head-margin.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::positionForPointRespectingEditingBoundaries):
+
+2011-09-20 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=68480
+
+ De-virtualize containingBlock() and make RenderView return 0 instead
+ of itself to make the construction of normal loops that terminate via
+ a null-check possible.
+
+ Fix the only two places in the tree that needed null checks.
+
+ Eliminating RenderTableCell::containingBlock() is fine since the base class
+ does the same thing anyway.
+
+ Reviewed by Simon Fraser.
+
+ * editing/VisiblePosition.cpp:
+ (WebCore::VisiblePosition::lineDirectionPointForBlockDirectionNavigation):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::containingBlock):
+ * rendering/RenderObject.h:
+ * rendering/RenderTableCell.cpp:
+ * rendering/RenderTableCell.h:
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::RenderTreeAsText::writeRenderObject):
+ * rendering/RenderView.cpp:
+ * rendering/RenderView.h:
+
+2011-09-20 Anders Carlsson <andersca@apple.com>
+
+ Remove ScrollView::platformContentsSize
+ https://bugs.webkit.org/show_bug.cgi?id=68188
+
+ Reviewed by Darin Adler.
+
+ Since ScrollView keeps track of the contents size in ScrollView::m_contentsSize, we never
+ have to ask the underlying platform scroll view for contents size since it should always just
+ be equal to m_contentsSize.
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::contentsSize):
+ (WebCore::ScrollView::wheelEvent):
+ * platform/ScrollView.h:
+ * platform/mac/ScrollViewMac.mm:
+ * platform/wx/ScrollViewWx.cpp:
+
+2011-09-20 Alexis Menard <alexis.menard@openbossa.org>
+
+ [Qt] [WK2] Implement a persistent cookie storage.
+ https://bugs.webkit.org/show_bug.cgi?id=65309
+
+ Reviewed by Chang Shu.
+
+ Implement a cookie storage for the Qt port on WebKit2.
+ The implementation is using a SQLite database to store the cookies
+ and restore them. It uses a static object as CookieJar is not an
+ object but a set of global functions. The actual saving/restoring is on
+ the WebProcess side where our network stack lives.
+
+ Existing tests cover the new implementation. Unfortunately there is one
+ case that we can't easily simulate : login in a website, make sure that the webprocess
+ is not running and then going back to this website and see that we are logged.
+
+ * WebCore.pri:
+ * WebCore.pro:
+ * platform/qt/CookieJarQt.cpp:
+ (WebCore::getHostnamesWithCookies):
+ (WebCore::deleteCookiesForHostname):
+ (WebCore::deleteAllCookies):
+ (WebCore::SharedCookieJarQt::shared):
+ (WebCore::SharedCookieJarQt::create):
+ (WebCore::SharedCookieJarQt::destroy):
+ (WebCore::SharedCookieJarQt::getHostnamesWithCookies):
+ (WebCore::SharedCookieJarQt::deleteCookiesForHostname):
+ (WebCore::SharedCookieJarQt::deleteAllCookies):
+ (WebCore::SharedCookieJarQt::SharedCookieJarQt):
+ (WebCore::SharedCookieJarQt::~SharedCookieJarQt):
+ (WebCore::SharedCookieJarQt::setCookiesFromUrl):
+ (WebCore::SharedCookieJarQt::ensureDatabaseTable):
+ (WebCore::SharedCookieJarQt::loadCookies):
+ * platform/qt/CookieJarQt.h: Added.
+
+2011-09-20 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=68314
+
+ Make sure that the containing block loop when clipping to border-radius
+ terminates by checking if you hit the RenderView. Null checking isn't sufficient
+ for stupid historical reasons that should be fixed (i.e., the RenderView returns itself
+ as its own containing block, even though this should just be changed).
+
+ Reviewed by Simon Fraser and Darin Adler.
+
+ Added new test in fast/clip.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::inContainingBlockChain):
+
+2011-09-20 Dan Bernstein <mitz@apple.com>
+
+ MathML renderers do not override RenderObject::renderName()
+ https://bugs.webkit.org/show_bug.cgi?id=68461
+
+ Reviewed by Darin Adler.
+
+ Added implementations of renderName() in MathML RenderObject subclasses.
+
+ * rendering/mathml/RenderMathMLBlock.h:
+ (WebCore::RenderMathMLBlock::renderName):
+ * rendering/mathml/RenderMathMLFenced.h:
+ (WebCore::RenderMathMLFenced::renderName):
+ * rendering/mathml/RenderMathMLFraction.h:
+ (WebCore::RenderMathMLFraction::renderName):
+ * rendering/mathml/RenderMathMLMath.h:
+ (WebCore::RenderMathMLMath::renderName):
+ * rendering/mathml/RenderMathMLOperator.h:
+ (WebCore::RenderMathMLOperator::renderName):
+ * rendering/mathml/RenderMathMLRoot.h:
+ (WebCore::RenderMathMLRoot::renderName):
+ * rendering/mathml/RenderMathMLRow.h:
+ (WebCore::RenderMathMLRow::renderName):
+ * rendering/mathml/RenderMathMLSquareRoot.h:
+ (WebCore::RenderMathMLSquareRoot::renderName):
+ * rendering/mathml/RenderMathMLSubSup.h:
+ (WebCore::RenderMathMLSubSup::renderName):
+ * rendering/mathml/RenderMathMLUnderOver.h:
+ (WebCore::RenderMathMLUnderOver::renderName):
+
+2011-09-20 ChangSeok Oh <shivamidow@gmail.com>
+
+ [GTK] requestAnimationFrame support for gtk port
+ https://bugs.webkit.org/show_bug.cgi?id=66280
+
+ Reviewed by Martin Robinson.
+
+ Add some files to build-target & activate ENABLE_REQUEST_ANIMATION_FRAME flag
+ when enabling requestAnimationFrame option.
+
+ fast/animation/request-animation-frame-cancel.html
+ fast/animation/request-animation-frame-cancel2.html
+ fast/animation/request-animation-frame-display.html
+ fast/animation/request-animation-frame-during-modal.html
+ fast/animation/request-animation-frame-timestamps.html
+ fast/animation/request-animation-frame-within-callback.html
+ fast/animation/request-animation-frame.html
+
+ * GNUmakefile.am:
+ * GNUmakefile.list.am:
+
+2011-09-20 Aaron Boodman <aa@chromium.org>
+
+ Rework script context creation/release notifications
+ https://bugs.webkit.org/show_bug.cgi?id=67828
+
+ Reviewed by Adam Barth.
+
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::V8DOMWindowShell::disposeContextHandles):
+ (WebCore::V8DOMWindowShell::initContextIfNeeded):
+ * bindings/v8/V8IsolatedContext.cpp:
+ (WebCore::V8IsolatedContext::V8IsolatedContext):
+ (WebCore::V8IsolatedContext::destroy):
+ * bindings/v8/V8IsolatedContext.h:
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::didCreateScriptContext):
+ (WebCore::EmptyFrameLoaderClient::willReleaseScriptContext):
+ * loader/FrameLoaderClient.h:
+
+2011-09-19 Oliver Hunt <oliver@apple.com>
+
+ Refactor Heap allocation logic into separate AllocationSpace class
+ https://bugs.webkit.org/show_bug.cgi?id=68409
+
+ Reviewed by Gavin Barraclough.
+
+ Adding a forwarding header.
+
+ * ForwardingHeaders/heap/AllocationSpace.h: Added.
+
+2011-09-20 Geoffrey Garen <ggaren@apple.com>
+
+ Build fix.
+
+ * WebCorePrefix.h: Removed stray text from accidental paste.
+
+2011-09-19 Geoffrey Garen <ggaren@apple.com>
+
+ Removed BREWMP* platform #ifdefs
+ https://bugs.webkit.org/show_bug.cgi?id=68425
+
+ BREWMP* has no maintainer, and this is dead code.
+
+ Reviewed by Darin Adler.
+
+ * WebCorePrefix.h:
+ * loader/cache/CachedFont.cpp:
+ * platform/DragData.h:
+ * platform/DragImage.h:
+ * platform/FileSystem.h:
+ * platform/PlatformKeyboardEvent.h:
+ * platform/PlatformMouseEvent.h:
+ * platform/PlatformTouchEvent.h:
+ * platform/PlatformTouchPoint.h:
+ (WebCore::PlatformTouchPoint::PlatformTouchPoint):
+ * platform/Widget.h:
+ * platform/graphics/IntPoint.h:
+ * platform/graphics/IntSize.h:
+ * platform/graphics/WOFFFileFormat.cpp:
+ * platform/graphics/skia/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+ (WebCore::createFontCustomPlatformData):
+ * platform/graphics/skia/FontCustomPlatformData.h:
+ * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
+ * platform/text/TextBoundaries.cpp:
+ * platform/text/TextEncoding.cpp:
+ (WebCore::TextEncoding::encode):
+ * platform/text/TextEncodingRegistry.cpp:
+ * plugins/PluginViewNone.cpp:
+
+2011-09-20 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: Copy Stack Trace lacks newlines on Windows
+ https://bugs.webkit.org/show_bug.cgi?id=68447
+
+ Reviewed by Joseph Pecoraro.
+
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane.prototype._copyStackTrace):
+
+2011-09-20 Pavel Feldman <pfeldman@google.com>
+
+ Not reviewed: inspector sanity test fix.
+
+ * inspector/front-end/inspector.js:
+ (WebInspector.showConsole):
+
+2011-09-20 Alexis Menard <alexis.menard@openbossa.org>
+
+ [Qt][WK2] Add stubs for FULLSCREEN_API on Qt.
+ https://bugs.webkit.org/show_bug.cgi?id=68444
+
+ Reviewed by Andreas Kling.
+
+ Create all the stubs necessary for enabling FULLSCREEN_API on the Qt port.
+
+ No new tests : just stubs.
+
+ * CodeGenerators.pri:
+ * WebCore.pro:
+ * features.pri:
+
+2011-09-20 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r95509.
+ http://trac.webkit.org/changeset/95509
+ https://bugs.webkit.org/show_bug.cgi?id=68446
+
+ crashes chromium fast/repaint/japanese-rl-selection-repaint-
+ in-regions.html on Win and Linux (Requested by dslomov on
+ #webkit).
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::positionForPointRespectingEditingBoundaries):
+
+2011-09-20 Jarred Nicholls <jarred@sencha.com>
+
+ [Qt] Permit qrc resources to load in QWebSettings::setUserStyleSheetUrl()
+ https://bugs.webkit.org/show_bug.cgi?id=51159
+
+ Permit any URL with a local scheme to set a user style sheet. Allow qrc
+ resource URLs as arguments to QWebSettings::setUserStyleSheetUrl().
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ * page/Page.cpp:
+ (WebCore::Page::userStyleSheetLocationChanged):
+ * platform/qt/KURLQt.cpp:
+ (WebCore::KURL::fileSystemPath):
+
+2011-09-20 Csaba Osztrogonác <ossy@webkit.org>
+
+ [Qt][Mac] Buildfix after r95513.
+ Forwarding headers for WebCore should be generated based on WebCore sources instead of WebKit2.
+
+ Rubber-stamped by Andras Becsi.
+
+ * DerivedSources.pro:
+ * WebCore.pro: Add platform/mac/DisplaySleepDisabler.cpp to SOURCES.
+
+2011-09-19 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: document Debugger.paused, introduce types for ids in Debugger domain.
+ https://bugs.webkit.org/show_bug.cgi?id=68363
+
+ Migrates from poorly documented "details" object to explicit parameters
+ containing break type and data.
+
+ Reviewed by Tony Gentilcore.
+
+ * inspector/InjectedScriptSource.js:
+ ():
+ * inspector/Inspector.json:
+ * inspector/InspectorDOMDebuggerAgent.cpp:
+ (WebCore::InspectorDOMDebuggerAgent::didInvalidateStyleAttr):
+ (WebCore::InspectorDOMDebuggerAgent::willInsertDOMNode):
+ (WebCore::InspectorDOMDebuggerAgent::willRemoveDOMNode):
+ (WebCore::InspectorDOMDebuggerAgent::willModifyDOMAttr):
+ (WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
+ (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
+ (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
+ (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
+ (WebCore::InspectorDebuggerAgent::pause):
+ (WebCore::InspectorDebuggerAgent::didPause):
+ (WebCore::InspectorDebuggerAgent::didContinue):
+ (WebCore::InspectorDebuggerAgent::breakProgram):
+ (WebCore::InspectorDebuggerAgent::clear):
+ (WebCore::InspectorDebuggerAgent::clearBreakDetails):
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/front-end/DOMBreakpointsSidebarPane.js:
+ (WebInspector.DOMBreakpointsSidebarPane.prototype.createBreakpointHitStatusMessage.didPushNodeToFrontend):
+ (WebInspector.DOMBreakpointsSidebarPane.prototype.createBreakpointHitStatusMessage):
+ (WebInspector.DOMBreakpointsSidebarPane.prototype.highlightBreakpoint):
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel.prototype._pausedScript):
+ (WebInspector.DebuggerDispatcher.prototype.paused):
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.PresentationCallFrame.prototype.evaluate):
+ * inspector/front-end/ScopeChainSidebarPane.js:
+ (WebInspector.ScopeChainSidebarPane.prototype.update):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._debuggerPaused.didCreateBreakpointHitStatusMessage):
+ (WebInspector.ScriptsPanel.prototype._debuggerPaused.else.didGetSourceLocation):
+ (WebInspector.ScriptsPanel.prototype._debuggerPaused):
+
+2011-09-19 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: use strict types for Breakpoint and CallFrame ids in the protocol definition.
+ https://bugs.webkit.org/show_bug.cgi?id=68172
+
+ Reviewed by Tony Gentilcore.
+
+ * inspector/Inspector.json:
+
+2011-09-15 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: refactor ConsoleView, Drawer, ConsolePanel trio. Remove animation
+ from drawer -> panel transition.
+ https://bugs.webkit.org/show_bug.cgi?id=68155
+
+ ConsoleView, ConsolePanel and Drawer are all Views with custom show/hide implementations
+ and weird DOM element containment. As a result, we have a number of cases when switching
+ console from full panel to drawer mode and back result in UI glitches.
+ For the sake of code clarity and no glitches, I'd like to sacrifice the "grow into full
+ screen" console animation.
+
+ Reviewed by Tony Gentilcore.
+
+ * inspector/front-end/ConsoleModel.js:
+ (WebInspector.ConsoleModel):
+ * inspector/front-end/ConsolePanel.js:
+ (WebInspector.ConsolePanel):
+ (WebInspector.ConsolePanel.prototype.get statusBarItems):
+ (WebInspector.ConsolePanel.prototype.show):
+ (WebInspector.ConsolePanel.prototype.hide):
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView):
+ (WebInspector.ConsoleView.createFilterElement):
+ (WebInspector.ConsoleView.get this):
+ (WebInspector.ConsoleView.prototype.get statusBarItems):
+ (WebInspector.ConsoleView.prototype.wasShown):
+ * inspector/front-end/Drawer.js:
+ (WebInspector.Drawer):
+ (WebInspector.Drawer.prototype.get visible):
+ (WebInspector.Drawer.prototype._constrainHeight):
+ (WebInspector.Drawer.prototype.show.animationFinished):
+ (WebInspector.Drawer.prototype.show):
+ (WebInspector.Drawer.prototype.hide):
+ (WebInspector.Drawer.prototype.resize):
+ (WebInspector.Drawer.prototype._animationDuration):
+ * inspector/front-end/inspector.html:
+ * inspector/front-end/inspector.js:
+ (WebInspector._createGlobalStatusBarItems):
+ (WebInspector._toggleConsoleButtonClicked):
+ (WebInspector.set attached):
+ (WebInspector.windowResize):
+ (WebInspector.documentKeyDown):
+
+2011-09-19 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: streamline Console's MessageType and MessageSource semantics.
+ https://bugs.webkit.org/show_bug.cgi?id=68342
+
+ This change fixes semantics of the MessageSource and MessageType:
+ MessageSource is now the source of the message (be it Network, HTML
+ parser or Console API). MessageType is only defined for the Console API
+ messages and contains the name of the API call (log, dir, dirxml, etc.).
+ Subsequent https://bugs.webkit.org/show_bug.cgi?id=66371 will make MessageType
+ private to the inspector.
+
+ Reviewed by Tony Gentilcore.
+
+ * dom/Document.cpp:
+ (WebCore::Document::logExceptionToConsole):
+ * inspector/ConsoleMessage.cpp:
+ (WebCore::messageSourceValue):
+ (WebCore::messageTypeValue):
+ (WebCore::ConsoleMessage::addToFrontend):
+ * inspector/Inspector.json:
+ * inspector/InspectorConsoleAgent.cpp:
+ (WebCore::InspectorConsoleAgent::didReceiveResponse):
+ (WebCore::InspectorConsoleAgent::didFailLoading):
+ * inspector/front-end/ConsoleMessage.js:
+ (WebInspector.ConsoleMessage.createTextMessage):
+ (WebInspector.ConsoleMessage.prototype._formatMessage):
+ (WebInspector.ConsoleMessage.prototype.toString):
+ * page/Console.cpp:
+ (WebCore::printMessageSourceAndLevelPrefix):
+ (WebCore::Console::addMessage):
+ (WebCore::Console::dir):
+ (WebCore::Console::dirxml):
+ (WebCore::Console::group):
+ (WebCore::Console::groupCollapsed):
+ (WebCore::Console::groupEnd):
+ * page/ConsoleTypes.h:
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::didFailSocketStream):
+
+2011-09-20 Adenilson Cavalcanti <adenilson.silva@openbossa.org>
+
+ [Qt] resizeToContent seems to trigger infinite resize on some pages
+ https://bugs.webkit.org/show_bug.cgi?id=43852
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ InnerHeight and InnerWidth are now calculated using ScrollView::visibleContentRect
+ including the scrollbars (if any) instead of using ScrollView::frameRect as before.
+
+ This makes no behavior change while not using the tiled backing
+ store and is compliant with the W3C definition stated in the CSSOM
+ View Module.
+
+ Plus it will return the correct values for tiled backing store,
+ thus fixing the original bug report by avoiding infinite resize
+ events caused by wrong innerHeight and innerWidth values.
+
+ Test: innerWidth/Height are covered by existing tests. The
+ non-infinite resizing is covered by a new Qt autotest at
+ test_qgraphicswebview::windowResizeEvent()
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::innerHeight): using ScrollView::visibleContentRect.
+ (WebCore::DOMWindow::innerWidth): using ScrollView::visibleContentRect.
+
+2011-09-09 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: implement reverse mapping for compiler source maps.
+ https://bugs.webkit.org/show_bug.cgi?id=67850
+
+ Implement the mapping from source code to compiled code. It will be used for
+ setting breakpoints on source code.
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/CompilerSourceMapping.js:
+ (WebInspector.ClosureCompilerSourceMapping):
+ (WebInspector.ClosureCompilerSourceMapping.prototype.compiledLocationToSourceLocation):
+ (WebInspector.ClosureCompilerSourceMapping.prototype.sourceLocationToCompiledLocation):
+ (WebInspector.ClosureCompilerSourceMapping.prototype._parseMappings):
+
+2011-09-08 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: extract RawSourceCode source mapping logic to helper classes.
+ https://bugs.webkit.org/show_bug.cgi?id=67789
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/SourceFile.js:
+ (WebInspector.RawSourceCode.prototype.get uiSourceCode):
+ (WebInspector.RawSourceCode.prototype.rawLocationToUILocation):
+ (WebInspector.RawSourceCode.prototype.uiLocationToRawLocation):
+ (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent.didFormatContent):
+ (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent):
+ (WebInspector.RawSourceCode.prototype._createSourceMapping):
+ (WebInspector.RawSourceCode.prototype._saveSourceMapping):
+ (WebInspector.RawSourceCode.PlainSourceMapping):
+ (WebInspector.RawSourceCode.PlainSourceMapping.prototype.rawLocationToUILocation):
+ (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiLocationToRawLocation):
+ (WebInspector.RawSourceCode.PlainSourceMapping.prototype.get uiSourceCode):
+ (WebInspector.RawSourceCode.FormattedSourceMapping):
+ (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.rawLocationToUILocation):
+ (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
+ (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.get uiSourceCode):
+
+2011-09-20 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ [GTK] WebProcess shouldn't use the GTK+ API
+ https://bugs.webkit.org/show_bug.cgi?id=68062
+
+ Reviewed by Martin Robinson.
+
+ Move errors code that is common between webki1 and webkit2 to
+ WebCore so that it can be shared.
+
+ * GNUmakefile.list.am: Add new files to compilation.
+ * platform/gtk/ErrorsGtk.cpp: Added.
+ (WebCore::cancelledError):
+ (WebCore::blockedError):
+ (WebCore::cannotShowURLError):
+ (WebCore::interruptedForPolicyChangeError):
+ (WebCore::cannotShowMIMETypeError):
+ (WebCore::fileDoesNotExistError):
+ (WebCore::pluginWillHandleLoadError):
+ * platform/gtk/ErrorsGtk.h: Added.
+
+2011-09-19 Mark Rowe <mrowe@apple.com>
+
+ Attempt to fix the Leopard build.
+
+ * platform/mac/DisplaySleepDisabler.cpp:
+ (WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
+ * platform/mac/DisplaySleepDisabler.h:
+
+2011-09-19 Mark Rowe <mrowe@apple.com>
+
+ <http://webkit.org/b/68421> Stop calling UpdateSystemActivity in places where we hold power assertions that achieve the same effect
+
+ On SnowLeopard and newer it's not necessary to call UpdateSystemActivity to prevent the screensaver from kicking
+ in as the NoDisplaySleep assertion now has that effect. It's also not necessary to hold both a NoDisplaySleep and
+ a NoIdleSleep assertion as the latter is implied by the former.
+
+ Since there were multiple copies of the same code to disable display sleep spread across WebCore, WebKit and WebKit2
+ this patch takes the approach of moving this functionality to a new DisplaySleepDisabler class that lives in WebCore.
+ A class is used as it makes it easier to reason about the lifetime of the assertions and to ensure that the assertions will
+ always be released when their owning objects go away.
+
+ Reviewed by Dan Bernstein.
+
+ * WebCore.exp.in:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/mac/DisplaySleepDisabler.cpp:
+ (WebCore::DisplaySleepDisabler::DisplaySleepDisabler): Register for the NoDisplaySleep assertion, and start our
+ system activity timer when on Leopard.
+ (WebCore::DisplaySleepDisabler::~DisplaySleepDisabler): Unregister for the assertion.
+ (WebCore::DisplaySleepDisabler::systemActivityTimerFired): Call UpdateSystemActivity to prevent the screensaver from
+ triggering on Leopard.
+ * platform/mac/DisplaySleepDisabler.h:
+ (WebCore::DisplaySleepDisabler::create):
+ * platform/mac/WebVideoFullscreenController.h:
+ * platform/mac/WebVideoFullscreenController.mm:
+ (-[WebVideoFullscreenController dealloc]):
+ (-[WebVideoFullscreenController setupVideoOverlay:]): Remove the now-unnecessary explicit use of the WebCore namespace.
+ (-[WebVideoFullscreenController mediaElement]): Ditto.
+ (-[WebVideoFullscreenController setMediaElement:]): Ditto.
+ (-[WebVideoFullscreenController windowDidExitFullscreen]): Ditto.
+ (-[WebVideoFullscreenController updatePowerAssertions]): Create a DisplaySleepDisabler instance when transitioning from permitting
+ display sleep to disabling display sleep. Clear out our reference when sleep should be permitted, destroying any
+ disabler that we own.
+
+2011-09-19 Ryosuke Niwa <rniwa@webkit.org>
+
+ Hit testing on margins of body and head elements doesn't recur
+ https://bugs.webkit.org/show_bug.cgi?id=40753
+
+ Reviewed by Darin Adler.
+
+ The bug was caused by positionForPointRespectingEditingBoundaries's comparing the editability
+ of head/body and html elements when hit testing was done inside margins of head and body elements.
+
+ Fixed the bug by special-casing html element (any immediate child of render view with a render layer)
+ since margins of head and body elements are special.
+
+ Tests: editing/selection/click-on-body-margin.html
+ editing/selection/click-on-head-margin.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::positionForPointRespectingEditingBoundaries):
+
+2011-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r95493 and r95496.
+ http://trac.webkit.org/changeset/95493
+ http://trac.webkit.org/changeset/95496
+ https://bugs.webkit.org/show_bug.cgi?id=68418
+
+ Broke Windows build (Requested by rniwa on #webkit).
+
+ * ForwardingHeaders/heap/AllocationSpace.h: Removed.
+
+2011-09-19 James Robinson <jamesr@chromium.org>
+
+ [chromium] ContentLayer's texture updater deleted during paint when compositing turns off in the middle of paint
+ https://bugs.webkit.org/show_bug.cgi?id=68405
+
+ Reviewed by Kenneth Russell.
+
+ Make TiledLayerChromium's textureUpdater refcounted and hold an explicit reference during paint in case
+ compositing is turned off halfway through a paint.
+
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerTextureUpdater::create):
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ * platform/graphics/chromium/LayerTextureUpdater.h:
+ * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
+ (WebCore::LayerTextureUpdaterBitmap::create):
+ (WebCore::LayerTextureUpdaterSkPicture::create):
+ * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
+ * platform/graphics/chromium/TiledLayerChromium.cpp:
+ (WebCore::TiledLayerChromium::prepareToUpdate):
+
+2011-09-19 Luke Macpherson <macpherson@chromium.org>
+
+ Eliminate Length::undefinedLength = -1 and replace with Undefined LengthType.
+ https://bugs.webkit.org/show_bug.cgi?id=68057
+
+ Reviewed by Darin Adler.
+
+ There appear to be many cases where -1 is actually a valid Length.
+ Encoding the validity of Length separately to the value is a natural solution.
+
+ No new tests / no behavioral changes.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::ApplyPropertyLength::applyValue):
+ * platform/Length.h:
+ (WebCore::Length::Length):
+ (WebCore::Length::value):
+ (WebCore::Length::calcValue):
+ (WebCore::Length::calcMinValue):
+ (WebCore::Length::calcFloatValue):
+ (WebCore::Length::isUndefined):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::computePreferredLogicalWidths):
+ * rendering/RenderDeprecatedFlexibleBox.cpp:
+ (WebCore::RenderDeprecatedFlexibleBox::computePreferredLogicalWidths):
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::isLogicalWidthSpecified):
+ (WebCore::RenderImage::isLogicalHeightSpecified):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::computePreferredLogicalWidths):
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::computePreferredLogicalWidths):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::computePreferredLogicalWidths):
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::computePreferredLogicalWidths):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::computePreferredLogicalWidths):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::initialMaxSize):
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::computePreferredLogicalWidths):
+
+2011-09-19 Adam Barth <abarth@webkit.org>
+
+ Always enable ENABLE(EVENTSOURCE)
+ https://bugs.webkit.org/show_bug.cgi?id=68414
+
+ Reviewed by Eric Seidel.
+
+ EventSource seems to be here to stay. This patch makes WebKit more
+ hackable by removing this ENABLE macro, as discussed on webkit-dev.
+
+ * Configurations/FeatureDefines.xcconfig:
+ * GNUmakefile.am:
+ * bindings/cpp/WebDOMEventTarget.cpp:
+ (toWebKit):
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::eventSource):
+ * bindings/js/JSEventSourceCustom.cpp:
+ * bindings/js/JSEventTarget.cpp:
+ (WebCore::toJS):
+ (WebCore::toEventTarget):
+ * bindings/js/JSWorkerContextCustom.cpp:
+ (WebCore::JSWorkerContext::eventSource):
+ * bindings/v8/V8DOMWrapper.cpp:
+ (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
+ * features.pri:
+ * page/DOMWindow.idl:
+ * page/EventSource.cpp:
+ * page/EventSource.h:
+ * page/EventSource.idl:
+ * workers/WorkerContext.idl:
+
+2011-09-19 Jeremy Apthorp <jeremya@chromium.org>
+
+ Fix a use-after-free: clear the fullscreen change event target queue at
+ detach time, rather than at destruction time. If this isn't done, it's
+ possible for the event target queue to be the only thing that
+ references the document. Then when the document is popped off the queue
+ and dereferenced in Document::fullScreenChangeDelayTimerFired, the
+ document is destroyed and the subsequent access to
+ m_fullScreenChangeEventTargetQueue.isEmpty() accesses free'd memory.
+ https://bugs.webkit.org/show_bug.cgi?id=67960
+
+ Reviewed by Adam Barth.
+
+ * dom/Document.cpp:
+ (WebCore::Document::~Document):
+ (WebCore::Document::detach):
+
+2011-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r95482.
+ http://trac.webkit.org/changeset/95482
+ https://bugs.webkit.org/show_bug.cgi?id=68410
+
+ Broke chromium webkit-tests (Requested by dslomov on #webkit).
+
+ * platform/image-encoders/skia/JPEGImageEncoder.cpp:
+ (WebCore::RGBAtoRGB):
+
+2011-09-19 Oliver Hunt <oliver@apple.com>
+
+ Refactor Heap allocation logic into separate AllocationSpace class
+ https://bugs.webkit.org/show_bug.cgi?id=68409
+
+ Reviewed by Gavin Barraclough.
+
+ Adding a forwarding header.
+
+ * ForwardingHeaders/heap/AllocationSpace.h: Added.
+
+2011-09-19 Adam Barth <abarth@webkit.org>
+
+ [V8] document.all gets confused about its prototype chain
+ https://bugs.webkit.org/show_bug.cgi?id=68393
+
+ Reviewed by Eric Seidel.
+
+ GetRealNamedPropertyInPrototypeChain doesn't call interceptors, so it's
+ not a good idea to use its return value. It turns out that all the
+ callers of the API only cared about whether it returns a null handle.
+
+ Test: http/tests/security/document-all.html
+
+ * bindings/v8/V8Collection.h:
+ (WebCore::collectionNamedPropertyGetter):
+ * bindings/v8/custom/V8DOMStringMapCustom.cpp:
+ (WebCore::V8DOMStringMap::namedPropertyDeleter):
+ (WebCore::V8DOMStringMap::namedPropertySetter):
+ * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
+ (WebCore::V8HTMLAllCollection::namedPropertyGetter):
+ * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
+ (WebCore::V8HTMLCollection::namedPropertyGetter):
+ * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
+ (WebCore::V8NamedNodeMap::namedPropertyGetter):
+ * bindings/v8/custom/V8StorageCustom.cpp:
+ (WebCore::storageSetter):
+
+2011-09-19 Adam Barth <abarth@webkit.org>
+
+ Named property confusion with __proto__
+ https://bugs.webkit.org/show_bug.cgi?id=68221
+
+ Reviewed by Eric Seidel.
+
+ The __proto__ property is super magical because it's not a real named
+ property and it has higher precedence than even interceptors. This
+ confuses this check, which is meant to detech which names will get
+ handled by our interceptor.
+
+ Test: http/tests/security/window-named-proto.html
+
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+ (WebCore::V8DOMWindow::namedSecurityCheck):
+
+2011-09-19 Adam Barth <abarth@webkit.org>
+
+ Rename ENABLE(OPENTYPE_SANITIZER) to USE(OPENTYPE_SANITIZER)
+ https://bugs.webkit.org/show_bug.cgi?id=68292
+
+ Reviewed by Eric Seidel.
+
+ OpenType Sanitizer is a library for sanitizing type and not a feature.
+ Therefore this macro should say that we USE the library.
+
+ * platform/graphics/WOFFFileFormat.cpp:
+ * platform/graphics/WOFFFileFormat.h:
+ * platform/graphics/mac/FontCustomPlatformData.cpp:
+ (WebCore::createFontCustomPlatformData):
+ * platform/graphics/opentype/OpenTypeSanitizer.cpp:
+ * platform/graphics/opentype/OpenTypeSanitizer.h:
+ * platform/graphics/skia/FontCustomPlatformData.cpp:
+ (WebCore::createFontCustomPlatformData):
+ (WebCore::FontCustomPlatformData::supportsFormat):
+
+2011-09-19 Adam Barth <abarth@webkit.org>
+
+ Remove APPLICATION_CACHE_DYNAMIC_ENTRIES and associated code
+ https://bugs.webkit.org/show_bug.cgi?id=68407
+
+ Reviewed by Eric Seidel.
+
+ As discussed on webkit-dev, no one appears to be using this code.
+
+ * GNUmakefile.list.am:
+ * UseJSC.cmake:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSBindingsAllInOne.cpp:
+ * bindings/js/JSDOMApplicationCacheCustom.cpp: Removed.
+
+2011-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r95385 and r95457.
+ http://trac.webkit.org/changeset/95385
+ http://trac.webkit.org/changeset/95457
+ https://bugs.webkit.org/show_bug.cgi?id=68395
+
+ Broke chromium browser_tests (Requested by dslomov on
+ #webkit).
+
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::V8DOMWindowShell::disposeContextHandles):
+ (WebCore::V8DOMWindowShell::initContextIfNeeded):
+ * bindings/v8/V8IsolatedContext.cpp:
+ (WebCore::V8IsolatedContext::V8IsolatedContext):
+ (WebCore::V8IsolatedContext::destroy):
+ * bindings/v8/V8IsolatedContext.h:
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::didCreateScriptContextForFrame):
+ (WebCore::EmptyFrameLoaderClient::didDestroyScriptContextForFrame):
+ (WebCore::EmptyFrameLoaderClient::didCreateIsolatedScriptContext):
+ * loader/FrameLoaderClient.h:
+
+2011-09-19 John Bauman <jbauman@chromium.org>
+
+ Fix nonpremultiplied webgl toDataURL to jpeg
+ https://bugs.webkit.org/show_bug.cgi?id=68366
+
+ The canvas spec says that toDataURL to formats without an alpha must
+ be "composited onto a solid black background using the source-over
+ operator." Do that.
+
+ Reviewed by Kenneth Russell.
+
+ * platform/image-encoders/skia/JPEGImageEncoder.cpp:
+ (WebCore::RGBAtoRGB):
+
+2011-09-19 Chris Marrin <cmarrin@apple.com>
+
+ Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction
+ https://bugs.webkit.org/show_bug.cgi?id=67510
+
+ Reviewed by Adam Roben.
+
+ Another fix to take care of one last crash when running pause-crash.html.
+ CACF can't deal with null valueFunctions, so avoid setting it when it doesn't
+ exist.
+
+ This also adds logic to the Windows Hook in LayerChangesFlusher to prevent it
+ from catching the null pointer exception generated by the pause-crash.html test
+ before this bug was fixed. Windows was ignoring the exception, so the testcase
+ would appear to succeed, even though it should have crashed.
+
+ This is a resubmission of http://trac.webkit.org/changeset/95243 with a build fix.
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * platform/graphics/ca/win/LayerChangesFlusher.cpp:
+ (WebCore::LayerChangesFlusher::hookCallback):
+ * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
+ (PlatformCAAnimation::copy):
+ * platform/win/StructuredExceptionHandlerSupressor.h: Added.
+ (WebCore::StructuredExceptionHandlerSupressor::StructuredExceptionHandlerSupressor):
+ (WebCore::StructuredExceptionHandlerSupressor::~StructuredExceptionHandlerSupressor):
+
+2011-09-19 Ryosuke Niwa <rniwa@webkit.org>
+
+ Incorrect selection with absolutely positioned div
+ https://bugs.webkit.org/show_bug.cgi?id=39503
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ The bug was caused by a false assumption in RenderBlock::positionForPoint. Because the last child box
+ can be positioned, floated, invisible, etc..., we can't always trust last child's logicalTop to tell us
+ whether a given point is inside or below the last child box.
+
+ Fixed the bug by using the last hit-test candidate instead.
+
+ Test: editing/selection/block-with-positioned-lastchild.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::positionForPoint):
+
+2011-09-19 Dmitry Titov <dimich@chromium.org>
+
+ [Chromium] Crash after magic iframe transfer for Pepper/NaCl plugins.
+ https://bugs.webkit.org/show_bug.cgi?id=68267
+ Make adoptNode() to not enable live iframe transfer when the iframe's subtree contains plugins.
+
+ Reviewed by Adam Barth.
+
+ Test: fast/frames/iframe-reparenting-embed-elements.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::adoptNode):
+ * html/HTMLFrameElementBase.cpp:
+ (WebCore::hasPluginElements):
+ (WebCore::HTMLFrameElementBase::canRemainAliveOnRemovalFromTree):
+ * html/HTMLFrameElementBase.h:
+
+2011-09-19 Abhishek Arya <inferno@chromium.org>
+
+ Issues with merging ruby bases.
+ https://bugs.webkit.org/show_bug.cgi?id=67240
+
+ Reviewed by James Robinson.
+
+ 1) Change fromBeforeChild to beforeChild to match
+ webkit rendering naming conventions.
+ 2) Add assert to verify ruby base is indeed emptied
+ after collecting all children in a single base.
+ 3) Fix condition in mergeBlockChildren to bail out only
+ when we have no children and there is no work to merge
+ children to toBase.
+
+ Test: fast/ruby/ruby-overhang-crash.html
+
+ * rendering/RenderRubyBase.cpp:
+ (WebCore::RenderRubyBase::moveChildren):
+ (WebCore::RenderRubyBase::moveInlineChildren):
+ (WebCore::RenderRubyBase::moveBlockChildren):
+ (WebCore::RenderRubyBase::mergeBlockChildren):
+ * rendering/RenderRubyBase.h:
+ * rendering/RenderRubyRun.cpp:
+ (WebCore::RenderRubyRun::removeChild):
+
+2011-09-16 Abhishek Arya <inferno@chromium.org>
+
+ Child not placed correctly when beforeChild (table part)
+ has both :before, :after content.
+ https://bugs.webkit.org/show_bug.cgi?id=67656
+
+ Reviewed by James Robinson.
+
+ Tests: fast/table/table-cell-before-after-content-around-table-block.html
+ fast/table/table-cell-before-after-content-around-table-row.html
+ fast/table/table-cell-before-after-content-around-table.html
+ fast/table/table-row-before-after-content-around-block.html
+ fast/table/table-row-before-after-content-around-table.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
+ 1. Use the new helper functions findAfterContentRenderer,
+ anonymousContainer.
+ 2. Rename anonymousChild to better name - beforeChildAnonymousContainer.
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::addChild):
+ When adding a new child, if beforeChild is a table part(
+ Table/TableSection/TableRow), we need to check if both
+ :before, :after content are shoved in one of the anonymous child.
+ If yes, we need to split the :before, :after content before adding
+ newChild. Easiest approach is to destroy the :before content, then add
+ the newChild and then call updateBeforeAfterContent to recreate the
+ :before content.
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::findBeforeContentRenderer): same as
+ beforePseudoElementRenderer, but ignores text childs since they are
+ sequentially added.
+ (WebCore::RenderObject::findAfterContentRenderer): same.
+ (WebCore::RenderObject::anonymousContainer):
+ (WebCore::objectIsRelayoutBoundary):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::addChild): use the new helpers and functionally
+ correct functions - findAfterContentRenderer, anonymousContainer. previous
+ implementation was wrong since it would not go inside, if :after content
+ is embedded deeper than one level.
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::addChild): same.
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::addChild): same.
+
+2011-09-19 Robert Kroeger <rjkroege@chromium.org>
+
+ [chromium] Gesture recognizer fires taptype only every other touch
+ down/up sequence https://bugs.webkit.org/show_bug.cgi?id=68368
+
+ Reviewed by Adam Barth.
+
+ The addition of doubletap detection to the gesture recognizer missed some of the
+ outgoing edges in the recognizer state machine. This change simplifies the logic
+ and handles all outgoing edges.
+
+ * platform/chromium/GestureRecognizerChromium.cpp:
+ (WebCore::GestureRecognizerChromium::GestureRecognizerChromium):
+ (WebCore::GestureRecognizerChromium::isInSecondClickTimeWindow):
+ (WebCore::GestureRecognizerChromium::updateValues):
+ (WebCore::GestureRecognizerChromium::touchDown):
+ (WebCore::GestureRecognizerChromium::click):
+ * platform/chromium/GestureRecognizerChromium.h:
+
+2011-09-19 Tom Sepez <tsepez@chromium.org>
+
+ Fix xssauditor bypass with unterminated closing tag by making the HTMLSourceTracker
+ and the HTMLParser interact more closely with each other. HTMLParser should be
+ setting the end range for the token itself to account for buffering that the
+ HTMLSourceTracker can't know about, but there are a lot of paths that would need
+ updating. First step is to cover this one path.
+ https://bugs.webkit.org/show_bug.cgi?id=68281
+
+ Reviewed by Adam Barth.
+
+ Test: http/tests/security/xssAuditor/script-tag-with-invalid-closing-tag.html
+
+ * html/parser/HTMLSourceTracker.cpp:
+ (WebCore::HTMLSourceTracker::end):
+ * html/parser/HTMLTokenizer.cpp:
+ (WebCore::HTMLTokenizer::nextToken):
+
+2011-09-19 Peter Rybin <peter.rybin@gmail.com>
+
+ TextPosition refactoring: Merge ZeroBasedNumber and OneBasedNumber classes
+ https://bugs.webkit.org/show_bug.cgi?id=63541
+
+ Reviewed by Adam Barth.
+
+ No new tests because this patch is not changing behavior.
+
+ * bindings/js/JavaScriptCallFrame.cpp:
+ (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
+ * bindings/js/JavaScriptCallFrame.h:
+ (WebCore::JavaScriptCallFrame::create):
+ (WebCore::JavaScriptCallFrame::position):
+ (WebCore::JavaScriptCallFrame::update):
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::eventHandlerLineNumber):
+ * bindings/js/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::hasBreakpoint):
+ (WebCore::ScriptDebugServer::dispatchDidParseSource):
+ (WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
+ (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
+ * bindings/js/ScriptDebugServer.h:
+ * bindings/js/ScriptSourceCode.h:
+ (WebCore::ScriptSourceCode::ScriptSourceCode):
+ * bindings/js/StringSourceProvider.h:
+ (WebCore::StringSourceProvider::create):
+ (WebCore::StringSourceProvider::startPosition):
+ (WebCore::StringSourceProvider::StringSourceProvider):
+ * bindings/v8/ScheduledAction.cpp:
+ (WebCore::ScheduledAction::ScheduledAction):
+ * bindings/v8/ScriptController.cpp:
+ (WebCore::ScriptController::eventHandlerPosition):
+ * bindings/v8/ScriptController.h:
+ * bindings/v8/ScriptEventListener.cpp:
+ (WebCore::createAttributeEventListener):
+ * bindings/v8/ScriptSourceCode.h:
+ (WebCore::ScriptSourceCode::ScriptSourceCode):
+ (WebCore::ScriptSourceCode::startPosition):
+ * bindings/v8/V8LazyEventListener.cpp:
+ (WebCore::V8LazyEventListener::V8LazyEventListener):
+ * bindings/v8/V8LazyEventListener.h:
+ (WebCore::V8LazyEventListener::create):
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::compileScript):
+ (WebCore::V8Proxy::evaluate):
+ (WebCore::V8Proxy::runScript):
+ * bindings/v8/V8Proxy.h:
+ * bindings/v8/WorkerContextExecutionProxy.cpp:
+ (WebCore::WorkerContextExecutionProxy::evaluate):
+ (WebCore::WorkerContextExecutionProxy::runScript):
+ * bindings/v8/WorkerContextExecutionProxy.h:
+ * bindings/v8/WorkerScriptController.cpp:
+ (WebCore::WorkerScriptController::evaluate):
+ * dom/PendingScript.cpp:
+ (WebCore::PendingScript::releaseElementAndClear):
+ * dom/PendingScript.h:
+ (WebCore::PendingScript::PendingScript):
+ (WebCore::PendingScript::startingPosition):
+ (WebCore::PendingScript::setStartingPosition):
+ * dom/ScriptElement.cpp:
+ (WebCore::ScriptElement::prepareScript):
+ * dom/ScriptElement.h:
+ * dom/ScriptableDocumentParser.h:
+ * dom/ViewportArguments.cpp:
+ (WebCore::parserLineNumber):
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
+ (WebCore::HTMLDocumentParser::pumpTokenizer):
+ (WebCore::HTMLDocumentParser::lineNumber):
+ (WebCore::HTMLDocumentParser::textPosition):
+ * html/parser/HTMLDocumentParser.h:
+ * html/parser/HTMLInputStream.h:
+ * html/parser/HTMLScriptRunner.cpp:
+ (WebCore::HTMLScriptRunner::execute):
+ (WebCore::HTMLScriptRunner::runScript):
+ * html/parser/HTMLScriptRunner.h:
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::uninitializedPositionValue1):
+ (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
+ (WebCore::HTMLTreeBuilder::takeScriptToProcess):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processScriptStartTag):
+ * html/parser/HTMLTreeBuilder.h:
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::buildInitiatorObject):
+ * platform/text/SegmentedString.cpp:
+ (WebCore::SegmentedString::currentLine):
+ (WebCore::SegmentedString::currentColumn):
+ (WebCore::SegmentedString::setCurrentPosition):
+ * platform/text/SegmentedString.h:
+ * svg/SVGDocumentExtensions.cpp:
+ (WebCore::parserLineNumber):
+ * xml/XMLErrors.cpp:
+ (WebCore::XMLErrors::XMLErrors):
+ (WebCore::XMLErrors::handleError):
+ (WebCore::XMLErrors::appendErrorMessage):
+ * xml/XMLErrors.h:
+ * xml/parser/MarkupTokenizerBase.h:
+ (WebCore::MarkupTokenizerBase::lineNumber):
+ * xml/parser/NewXMLDocumentParser.cpp:
+ (WebCore::NewXMLDocumentParser::processScript):
+ (WebCore::NewXMLDocumentParser::textPosition):
+ (WebCore::NewXMLDocumentParser::lineNumber):
+ * xml/parser/NewXMLDocumentParser.h:
+ * xml/parser/XMLDocumentParser.cpp:
+ (WebCore::XMLDocumentParser::pushCurrentNode):
+ (WebCore::XMLDocumentParser::handleError):
+ * xml/parser/XMLDocumentParser.h:
+ * xml/parser/XMLDocumentParserLibxml2.cpp:
+ (WebCore::PendingCallbacks::appendErrorCallback):
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::doWrite):
+ (WebCore::XMLDocumentParser::startElementNs):
+ (WebCore::XMLDocumentParser::error):
+ (WebCore::XMLDocumentParser::lineNumber):
+ (WebCore::XMLDocumentParser::columnNumber):
+ (WebCore::XMLDocumentParser::textPosition):
+ * xml/parser/XMLDocumentParserQt.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+ (WebCore::XMLDocumentParser::doWrite):
+ (WebCore::XMLDocumentParser::doEnd):
+ (WebCore::XMLDocumentParser::lineNumber):
+ (WebCore::XMLDocumentParser::columnNumber):
+ (WebCore::XMLDocumentParser::textPosition):
+ (WebCore::XMLDocumentParser::parse):
+ (WebCore::XMLDocumentParser::parseStartElement):
+
+2011-09-19 Dan Bernstein <mitz@apple.com>
+
+ WebCore part of [mac] WebKit contains Objective-C classes that are not prefixed with its standard prefixes
+ https://bugs.webkit.org/show_bug.cgi?id=68323
+
+ Reviewed by Sam Weinig.
+
+ Renamed AccessibilityObjectWrapper to WebAccessibilityObjectWrapper.
+ Renamed CascadeList to WebCascadeList.
+ Renamed CookieStorageObjCAdapter to WebCookieStorageObjCAdapter.
+ Renamed LanguageChangeObserver to WebLanguageChangeObserver.
+ Renamed ScrollAnimationHelperDelegate to WebScrollAnimationHelperDelegate.
+ Renamed ScrollbarPainterControllerDelegate to WebScrollbarPainterControllerDelegate.
+ Renamed ScrollbarPainterDelegate to WebScrollbarPainterDelegate.
+ Renamed ScrollbarPartAnimation to WebScrollbarPartAnimation.
+ Renamed ScrollbarPrefsObserver to WebScrollbarPrefsObserver.
+
+ * WebCore.gyp/WebCore.gyp: Updated for the renaming of CascadeList to WebCascadeList.
+ * WebCore.xcodeproj/project.pbxproj:
+ * accessibility/AccessibilityObject.h:
+ * accessibility/mac/AXObjectCacheMac.mm:
+ (WebCore::AXObjectCache::attachWrapper):
+ * accessibility/mac/AccessibilityObjectMac.mm:
+ * accessibility/mac/AccessibilityObjectWrapper.h: Removed.
+ * accessibility/mac/AccessibilityObjectWrapper.mm: Removed.
+ * accessibility/mac/WebAccessibilityObjectWrapper.h: Copied from Source/WebCore/accessibility/mac/AccessibilityObjectWrapper.h.
+ * accessibility/mac/WebAccessibilityObjectWrapper.mm: Copied from Source/WebCore/accessibility/mac/AccessibilityObjectWrapper.mm.
+ (convertToNSArray):
+ (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
+ (-[WebAccessibilityObjectWrapper accessibilityIndexOfChild:]):
+ (-[WebAccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
+ * platform/graphics/mac/ComplexTextControllerCoreText.mm:
+ (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
+ * platform/mac/Language.mm:
+ (WebCore::platformDefaultLanguage):
+ * platform/mac/ScrollAnimatorMac.h:
+ * platform/mac/ScrollAnimatorMac.mm:
+ (-[WebScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
+ (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
+ * platform/network/mac/CookieStorageMac.mm:
+ (WebCore::startObservingCookieChanges):
+
+2011-09-19 Cary Clark <caryclark@google.com>
+
+ Move fontDataForCombiningCharacterSequence to fix Skia on Mac build
+ https://bugs.webkit.org/show_bug.cgi?id=68358
+
+ Reviewed by Dan Bernstein.
+
+ No new tests.
+
+ * platform/graphics/mac/FontMac.mm:
+ * platform/graphics/mac/FontComplexTextMac.cpp:
+ (WebCore::Font::fontDataForCombiningCharacterSequence):
+ This moves the implementation from FontMac.mm to
+ FontComplexTextMac.cpp, so it is visible to the Skia on Mac
+ platform as well.
+
+2011-09-19 Jessie Berlin <jberlin@apple.com>
+
+ Sites that use history pushState or replaceState are recorded in history in Private Browsing
+ mode.
+ https://bugs.webkit.org/show_bug.cgi?id=68208
+
+ Reviewed by Brady Eidson.
+
+ Test: TestWebKitAPI/Tests/WebKit2/PrivateBrowsingPushStateNoHistoryCallback.
+
+ Add the privateBrowsingEnabled check that is used in other places in HistoryController
+ before calling addVisitedLink and FrameLoaderClient::updateGlobalHistory.
+
+ * loader/HistoryController.cpp:
+ (WebCore::HistoryController::pushState):
+ (WebCore::HistoryController::replaceState):
+
+2011-09-19 Leandro Pereira <leandro@profusion.mobi>
+
+ Unreviewed: ScrollbarThemeMock.cpp is already referenced in the
+ global CMakeLists.txt.
+
+ * CMakeListsEfl.txt: Remove reference to platform/mock/ScrollbarThemeMock.cpp.
+ * CMakeListsWinCE.txt: Ditto.
+
+2011-09-19 Ademar de Souza Reis Jr. <ademar.reis@openbossa.org>
+
+ Unreviewed: dos2unix on bindings/js/JSExceptionBase.h
+
+ Visual Studio is choking on this file when generating packages for
+ Qt-4.8 on Windows:
+
+ """
+ Source\WebCore\Bindings\js\JSExceptionBase.h:
+ error C4335: Mac file format detected: please convert the source file
+ to either DOS or UNIX format
+ """
+
+ Since from all .cpp or .h files shared by all ports this is the only
+ one with CRLF line terminations, I'm assuming this was a mistake.
+
+ * bindings/js/JSExceptionBase.h:
+
+2011-09-19 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: didMarkDOMContentEvent() should send event of MarkDOMContent type.
+ https://bugs.webkit.org/show_bug.cgi?id=67528
+
+ Reviewed by Pavel Feldman.
+
+ Tests: inspector/timeline/timeline-dom-content-loaded-event.html
+ inspector/timeline/timeline-load-event.html
+
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
+
+2011-09-19 Shawn Singh <shawnsingh@chromium.org>
+
+ Re-name LayerChromium border functions to reflect that
+ they are only for debug use.
+ https://bugs.webkit.org/show_bug.cgi?id=68212
+
+ Reviewed by James Robinson.
+
+ Code cleanup towards unit testing.
+
+ * platform/graphics/chromium/GraphicsLayerChromium.cpp:
+ (WebCore::GraphicsLayerChromium::clearBackgroundColor):
+ (WebCore::GraphicsLayerChromium::setDebugBackgroundColor):
+ (WebCore::GraphicsLayerChromium::setDebugBorder):
+ (WebCore::GraphicsLayerChromium::updateLayerBackgroundColor):
+ (WebCore::GraphicsLayerChromium::setupContentsLayer):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::setDebugBorderColor):
+ (WebCore::LayerChromium::setDebugBorderWidth):
+ * platform/graphics/chromium/LayerChromium.h:
+
+2011-09-18 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: requestAnimationFrame callbacks don't show up in the timeline panel.
+ https://bugs.webkit.org/show_bug.cgi?id=67986
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/timeline/timeline-animation-frame.html
+
+ * English.lproj/localizedStrings.js:
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::callFunction):
+ (WebCore::V8Proxy::callFunctionWithoutFrame):
+ (WebCore::V8Proxy::instrumentedCallFunction):
+ * bindings/v8/V8Proxy.h:
+ * bindings/v8/custom/V8CustomVoidCallback.cpp:
+ (WebCore::invokeCallback):
+ * dom/ScriptedAnimationController.cpp:
+ (WebCore::ScriptedAnimationController::registerCallback):
+ (WebCore::ScriptedAnimationController::cancelCallback):
+ (WebCore::ScriptedAnimationController::serviceScriptedAnimations):
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallbackImpl):
+ (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallbackImpl):
+ (WebCore::InspectorInstrumentation::willFireAnimationFrameEventImpl):
+ (WebCore::InspectorInstrumentation::didFireAnimationFrameEventImpl):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::willCallFunction):
+ (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallback):
+ (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallback):
+ (WebCore::InspectorInstrumentation::willFireAnimationFrameEvent):
+ (WebCore::InspectorInstrumentation::didFireAnimationFrameEvent):
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::didRegisterAnimationFrameCallback):
+ (WebCore::InspectorTimelineAgent::didCancelAnimationFrameCallback):
+ (WebCore::InspectorTimelineAgent::willFireAnimationFrameEvent):
+ (WebCore::InspectorTimelineAgent::didFireAnimationFrameEvent):
+ * inspector/InspectorTimelineAgent.h:
+ * inspector/TimelineRecordFactory.cpp:
+ (WebCore::TimelineRecordFactory::createAnimationFrameCallbackData):
+ * inspector/TimelineRecordFactory.h:
+ * inspector/front-end/TimelineAgent.js:
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel):
+ (WebInspector.TimelinePanel.prototype.get _recordStyles):
+ (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
+ (WebInspector.TimelinePanel.prototype._clearPanel):
+ (WebInspector.TimelinePanel.FormattedRecord):
+ (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
+ (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
+
+2011-09-19 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ [GTK] Fix distcheck build
+ https://bugs.webkit.org/show_bug.cgi?id=68241
+
+ Reviewed by Martin Robinson.
+
+ * GNUmakefile.list.am:
+
+2011-09-18 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: chromium-win: "Save timeline data" does nothing.
+ https://bugs.webkit.org/show_bug.cgi?id=68313
+
+ windows shell API function GetSaveFileName doesn't accept file names with ':' symbol.
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelineModel.prototype._saveToFile):
+
+2011-09-18 Dan Bernstein <mitz@apple.com>
+
+ Try to fix the Chromium Mac build after r95391.
+
+ * WebCore.gyp/WebCore.gyp:
+
+2011-09-18 Dan Bernstein <mitz@apple.com>
+
+ Try to fix the Chromium Mac build after r95391.
+
+ * WebCore.gyp/WebCore.gyp:
+
+2011-09-18 Dan Bernstein <mitz@apple.com>
+
+ Try to fix the Chromium Mac build after r95391.
+
+ * WebCore.gypi: Updated for the renaming of ComplexTextController.cpp.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * platform/graphics/Font.h: Changed #if directives to include the Chromium Mac port.
+ * platform/graphics/SimpleFontData.h: Ditto.
+ * platform/graphics/mac/ComplexTextControllerCoreText.cpp: Changed the filename extension of this
+ Objective-C++ file to .mm.
+ * platform/graphics/mac/ComplexTextControllerCoreText.mm: Copied from Source/WebCore/platform/graphics/mac/ComplexTextControllerCoreText.cpp.
+
+2011-09-18 Dan Bernstein <mitz@apple.com>
+
+ Snow Leopard build fix after r95391.
+
+ * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
+ (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
+
+2011-09-18 Dan Bernstein <mitz@apple.com>
+
+ Leopard build fix after r95391.
+
+ * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
+ (WebCore::ComplexTextController::collectComplexTextRunsForCharactersATSUI):
+
+2011-09-18 Dan Bernstein <mitz@apple.com>
+
+ Allow Core Text to choose the fallback font for rendering a combining character sequence
+
+ Fixes <rdar://problem/7860281> Decomposed text is displayed incorrectly when Verdana is specified
+ https://bugs.webkit.org/show_bug.cgi?id=68287
+
+ Reviewed by Dave Hyatt.
+
+ Test: platform/mac/fast/text/combining-character-sequence-fallback.html
+
+ * WebCore.xcodeproj/project.pbxproj: Compile ComplexTextControllerCoreText.cpp as Objective-C++.
+ I am going to rename this file in a followup patch.
+
+ * platform/graphics/Font.h: Declared fontDataForCombiningCharacterSequence().
+
+ * platform/graphics/SimpleFontData.h: Declared canRenderCombiningCharacterSequence() and added
+ a member variable to cache the results of calling this function.
+
+ * platform/graphics/mac/ComplexTextController.cpp:
+ (WebCore::ComplexTextController::offsetForPosition): Fixed a typo in a comment.
+ (WebCore::advanceByCombiningCharacterSequence): Added this helper function, which iterates over
+ characters until the end of a sequence of combining characters, zero-width joiners and zero-width
+ non-joiners. A single base characater followed by such a (possibly-empty) sequence is known as
+ a combining character sequence. This stretches the definition a little because the base character
+ may be a combining character as well. Returns false if an invalid UTF-16 sequence is encountered,
+ true otherwise.
+ (WebCore::ComplexTextController::collectComplexTextRuns): - Replaced the glyphData and nextGlyphData
+ variables each with a pair of variables, a SimpleFontData* and a boolean indicating whether a
+ character mapped to the missing glyph. This clarifies that this function does not use glyph IDs.
+ - Renamed the local variable newC to uppercaseCharacter.
+ - Changed to use advanceByCombiningCharacterSequence().
+ - Changed to use Font::fontDataForCombiningCharacterSequence() instead of Font::glyphDataForCharacter().
+ If there are combining marks and none of the fonts in the fallback list can render the sequence alone,
+ use the systemFallbackFontData() constant to indicate to collectComplexTextRunsForCharactersCoreText()
+ to allow Core Text to perform its own fallback.
+ - Stopped checking isSmallCaps against nextIsSmallCaps. It was redundant, since the small caps FontData
+ differs from the normal variant.
+ (WebCore::ComplexTextController::collectComplexTextRunsForCharacters): Moved the common logic to
+ handle the 0 fontData case from the ATSUI and Core Text continuations of this function into this function.
+
+ * platform/graphics/mac/ComplexTextController.h:
+ (WebCore::ComplexTextController::systemFallbackFontData): Added. This constant is used to indicate to
+ collectComplexTextRunsForCharactersCoreText() that it should allow Core Text to perform its own font
+ fallback.
+
+ * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
+ (WebCore::ComplexTextController::collectComplexTextRunsForCharactersATSUI): Handle systemFallbackFontData()
+ by using the primary font data.
+
+ * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
+ (-[CascadeList initWithFont:WebCore::character:]): Added.
+ (-[CascadeList count]): Added.
+ (-[CascadeList objectAtIndex:]): Added. Returns an entry from a cascade list of CTFontDescriptorRef
+ objects based on the font’s fallback list for the character. The list is initialized lazily.
+ (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Handle systemFallbackFontData()
+ by allowing Core Text to perform font fallback, starting with a cascade list based on the font’s fallback
+ list and possibly continuing with system fallback.
+
+ * platform/graphics/mac/FontMac.mm:
+ (WebCore::Font::fontDataForCombiningCharacterSequence): Added. If the sequence is only a base character,
+ calls through to glyphDataForCharacter(). Otherwise, iterates over the font’s fallback list for the
+ base character (and the system fallback font for that character), returning the first font that can
+ render the sequence, or 0 if there is none.
+
+ * platform/graphics/mac/SimpleFontDataMac.mm:
+ (WebCore::provideStringAndAttributes): Added this Core Text callback.
+ (WebCore::SimpleFontData::canRenderCombiningCharacterSequence): Added. Checks if Core Text can render
+ the sequence using only this font. Caches the result.
+
+2011-09-17 Mihai Parparita <mihaip@chromium.org>
+
+ FrameLoaderClient BackForwardList-related methods are unsued
+ https://bugs.webkit.org/show_bug.cgi?id=68293
+
+ Reviewed by Darin Adler.
+
+ Remove FrameLoaderClient methods that were added by r51629, since only
+ the old (since-deleted) Android port needed them.
+
+ * history/BackForwardListImpl.cpp:
+ (WebCore::BackForwardListImpl::addItem):
+ (WebCore::BackForwardListImpl::goBack):
+ (WebCore::BackForwardListImpl::goForward):
+ (WebCore::BackForwardListImpl::goToItem):
+ (WebCore::BackForwardListImpl::setCapacity):
+ * loader/EmptyClients.h:
+ * loader/FrameLoaderClient.h:
+
+2011-09-17 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=68307
+
+ Crash in border image cssText. Make sure to null check all the components, since they're all
+ optional now.
+
+ Reviewed by Sam Weinig.
+
+ Added fast/borders/border-image-slice-omission.html
+
+ * css/CSSBorderImageValue.cpp:
+ (WebCore::CSSBorderImageValue::cssText):
+
+2011-09-17 Aaron Boodman <aa@chromium.org>
+
+ Rework script context creation/release notifications
+ https://bugs.webkit.org/show_bug.cgi?id=67828
+
+ Reviewed by Adam Barth.
+
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::V8DOMWindowShell::disposeContextHandles):
+ (WebCore::V8DOMWindowShell::initContextIfNeeded):
+ * bindings/v8/V8IsolatedContext.cpp:
+ (WebCore::V8IsolatedContext::V8IsolatedContext):
+ (WebCore::V8IsolatedContext::destroy):
+ * bindings/v8/V8IsolatedContext.h:
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::didCreateScriptContext):
+ (WebCore::EmptyFrameLoaderClient::willReleaseScriptContext):
+ * loader/FrameLoaderClient.h:
+
+2011-09-17 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: file open dialog appears when user clicks on the timeline bar in timeline panel.
+ https://bugs.webkit.org/show_bug.cgi?id=68312
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel.prototype._createFileSelector):
+
+2011-09-17 Jeff Miller <jeffm@apple.com>
+
+ Build fix after r95372.
+
+ * dom/DOMAllInOne.cpp: #include "EventListenerMap.cpp"
+
+2011-09-17 Deepak Sherveghar <bpwv64@motorola.com>
+
+ Override supportsFocus() for HTMLMediaElement.
+ https://bugs.webkit.org/show_bug.cgi?id=67190
+
+ Reviewed by Antonio Gomes.
+
+ Tests: fast/events/media-element-focus-tab.html
+ fast/spatial-navigation/snav-media-elements.html
+
+ Return true from supportsFocus() if control's attribute is present or a tabindex is specified.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::supportsFocus):
+ * html/HTMLMediaElement.h:
+
+2011-09-16 Adam Barth <abarth@webkit.org>
+
+ Rename ENABLE(LEVELDB) to USE(LEVELDB)
+ https://bugs.webkit.org/show_bug.cgi?id=68290
+
+ Reviewed by Darin Adler.
+
+ LEVELDB is a library that can be used to implemented INDEXED_DATABASE,
+ which means it should be a USE not an ENABLE.
+
+ * CMakeLists.txt:
+ * WebCore.gyp/WebCore.gyp:
+ * platform/leveldb/LevelDBComparator.h:
+ * platform/leveldb/LevelDBDatabase.cpp:
+ * platform/leveldb/LevelDBDatabase.h:
+ * platform/leveldb/LevelDBIterator.h:
+ * platform/leveldb/LevelDBSlice.h:
+ * platform/leveldb/LevelDBTransaction.cpp:
+ * platform/leveldb/LevelDBTransaction.h:
+ * platform/leveldb/LevelDBWriteBatch.cpp:
+ * platform/leveldb/LevelDBWriteBatch.h:
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::IDBFactoryBackendImpl::open):
+ (WebCore::IDBFactoryBackendImpl::migrateFromSQLiteToLevelDB):
+ * storage/IDBLevelDBBackingStore.cpp:
+ * storage/IDBLevelDBBackingStore.h:
+ * storage/IDBLevelDBCoding.cpp:
+ * storage/IDBLevelDBCoding.h:
+
+2011-09-16 Andreas Kling <kling@webkit.org>
+
+ Reduce EventTarget memory usage by deferring hash map allocation
+ until there are listeners for more than 1 event type.
+
+ http://webkit.org/b/68105
+
+ Reviewed by Darin Adler.
+
+ Introduce an EventListenerMap class which manages a map of event types that have
+ one or more listeners connected.
+
+ When there is only one event type, it's stored directly on the EventListenerMap
+ internally, and when more are added it moves to a hash map. It only goes back
+ from the hash map if all the listeners are removed at once (i.e clear() is called.)
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+
+ Adding files.
+
+ * WebCore.exp.in:
+
+ Export EventListenerMap::contains() for WebKit/mac.
+
+ * dom/EventListenerMap.cpp: Added.
+ (WebCore::EventListenerMap::EventListenerMap):
+ (WebCore::EventListenerMap::~EventListenerMap):
+ (WebCore::EventListenerMap::isEmpty):
+ (WebCore::EventListenerMap::contains):
+ (WebCore::EventListenerMap::clear):
+ (WebCore::EventListenerMap::eventTypes):
+ (WebCore::addListenerToVector):
+ (WebCore::EventListenerMap::add):
+ (WebCore::removeListenerFromVector):
+ (WebCore::EventListenerMap::remove):
+ (WebCore::EventListenerMap::find):
+ (WebCore::removeFirstListenerCreatedFromMarkup):
+ (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
+ (WebCore::copyListenersNotCreatedFromMarkupToTarget):
+ (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
+ (WebCore::EventListenerIterator::EventListenerIterator):
+ (WebCore::EventListenerIterator::nextListener):
+ * dom/EventListenerMap.h: Added.
+
+ * dom/EventTarget.cpp:
+ (WebCore::EventTargetData::~EventTargetData):
+ (WebCore::EventTarget::addEventListener):
+ (WebCore::EventTarget::removeEventListener):
+ (WebCore::EventTarget::fireEventListeners):
+ (WebCore::EventTarget::getEventListeners):
+ (WebCore::EventTarget::removeAllEventListeners):
+
+ * dom/EventTarget.h:
+ (WebCore::EventTarget::visitJSEventListeners):
+
+ Use EventListenerIterator to visit listeners. (JSC specific.)
+
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::getEventListenersForNode):
+
+ Call EventListenerMap::eventTypes() go get the list of event types
+ currently listened for.
+
+ * dom/Node.cpp:
+ (WebCore::Node::removeEventListener):
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::transferEventListenersToShadowTree):
+
+ Move implementations of SVG-specific hacks into EventListenerMap and
+ call them from here.
+
+2011-09-16 Jeremy Apthorp <jeremya@chromium.org> and James Kozianski <koz@chromium.org>
+
+ Don't detach elements from the render tree when entering fullscreen mode
+ https://bugs.webkit.org/show_bug.cgi?id=66531
+
+ This prevents plugin instances from being destroyed and reinstantiated
+ when entering fullscreen mode.
+
+ Reviewed by James Robinson.
+
+ Test: plugins/fullscreen-plugins-dont-reload.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::webkitWillEnterFullScreenForElement):
+ (WebCore::Document::webkitDidExitFullScreenForElement):
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::NodeRendererFactory::createRendererIfNeeded):
+ * rendering/RenderFullScreen.cpp:
+ (createFullScreenStyle):
+ (RenderFullScreen::wrapRenderer):
+ (RenderFullScreen::unwrapRenderer):
+ * rendering/RenderFullScreen.h:
+
+2011-09-16 Jochen Eisinger <jochen@chromium.org>
+
+ Rename FrameLoaderClient::allowImages to FrameLoaderClient::allowImage and include the image URL as parameter
+ https://bugs.webkit.org/show_bug.cgi?id=68071
+
+ This will allow embedders to block images based on where the image is loaded from, instead of just blocking all images in a given frame.
+
+ Reviewed by Adam Barth.
+
+ * html/ImageDocument.cpp:
+ (WebCore::ImageDocumentParser::appendBytes):
+ * loader/FrameLoaderClient.h:
+ (WebCore::FrameLoaderClient::allowImage):
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::requestImage):
+
+2011-09-16 Tom Sepez <tsepez@chromium.org>
+
+ Make XSSAuditor truncate inline snippets at a reasonable length before comparison
+ respecting boundaries of multiply urlencoded sequences.
+ https://bugs.webkit.org/show_bug.cgi?id=68092
+
+ Reviewed by Adam Barth.
+
+ Test: http/tests/security/xssAuditor/property-escape-long.html
+
+ * html/parser/XSSAuditor.cpp:
+ (WebCore::XSSAuditor::filterTokenAfterScriptStartTag):
+ (WebCore::XSSAuditor::eraseDangerousAttributesIfInjected):
+ (WebCore::XSSAuditor::eraseAttributeIfInjected):
+ (WebCore::XSSAuditor::decodedSnippetForAttribute):
+ (WebCore::XSSAuditor::isContainedInRequest):
+ * html/parser/XSSAuditor.h:
+
+2011-09-16 Shawn Singh <shawnsingh@chromium.org>
+
+ Remove m_contentsDirty from LayerChromium because it
+ is redundant with m_dirtyRect.
+ https://bugs.webkit.org/show_bug.cgi?id=68213
+
+ Reviewed by James Robinson.
+
+ Code cleanup towards unit testing.
+
+ * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
+ (WebCore::Canvas2DLayerChromium::updateCompositorResources):
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::paintContentsIfDirty):
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::paintContentsIfDirty):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::LayerChromium):
+ (WebCore::LayerChromium::setNeedsDisplay):
+ (WebCore::LayerChromium::resetNeedsDisplay):
+ * platform/graphics/chromium/LayerChromium.h:
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::updateCompositorResources):
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::updateCompositorResources):
+
+2011-09-16 Dmitry Lomov <dslomov@google.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=66714
+ Add webkitPostMessage to allow for adding transferable support.
+ This adds webkitPostMessage, currently identical to postMessage, which
+ would later be a vehicle for adding transferable support for messaging.
+
+ Based on patch by Luke Zarko.
+
+ Reviewed by David Levin.
+
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::webkitPostMessage):
+ * bindings/js/JSDedicatedWorkerContextCustom.cpp:
+ (WebCore::JSDedicatedWorkerContext::webkitPostMessage):
+ * bindings/js/JSMessageEventCustom.cpp:
+ (WebCore::JSMessageEvent::webkitInitMessageEvent):
+ * bindings/js/JSMessagePortCustom.cpp:
+ (WebCore::JSMessagePort::webkitPostMessage):
+ * bindings/js/JSWorkerCustom.cpp:
+ (WebCore::JSWorker::postMessage):
+ (WebCore::JSWorker::webkitPostMessage):
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+ (WebCore::handlePostMessageCallback):
+ (WebCore::V8DOMWindow::postMessageCallback):
+ (WebCore::V8DOMWindow::webkitPostMessageCallback):
+ * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
+ (WebCore::handlePostMessageCallback):
+ (WebCore::V8DedicatedWorkerContext::postMessageCallback):
+ (WebCore::V8DedicatedWorkerContext::webkitPostMessageCallback):
+ * bindings/v8/custom/V8MessageEventCustom.cpp:
+ (WebCore::V8MessageEvent::initMessageEventCallback):
+ (WebCore::V8MessageEvent::webkitInitMessageEventCallback):
+ * bindings/v8/custom/V8MessagePortCustom.cpp:
+ (WebCore::handlePostMessageCallback):
+ (WebCore::V8MessagePort::postMessageCallback):
+ (WebCore::V8MessagePort::webkitPostMessageCallback):
+ * bindings/v8/custom/V8WorkerCustom.cpp:
+ (WebCore::handlePostMessageCallback):
+ (WebCore::V8Worker::postMessageCallback):
+ (WebCore::V8Worker::webkitPostMessageCallback):
+ * dom/MessageEvent.idl:
+ * dom/MessagePort.idl:
+ * page/DOMWindow.idl:
+ * workers/DedicatedWorkerContext.idl:
+ * workers/Worker.idl:
+
+2011-09-16 Alexei Svitkine <asvitkine@chromium.org>
+
+ Chromium: Fix repaint of rubber-band overhang area under composited path
+ https://bugs.webkit.org/show_bug.cgi?id=68246
+
+ I accidently removed these two lines from the last patch on: https://bugs.webkit.org/show_bug.cgi?id=66969
+
+ Reviewed by James Robinson.
+
+ Test: platform/chromium-gpu/compositing/rubberbanding/transform-overhang-size-change.html
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::scrollContents):
+
+2011-09-16 Peter Beverloo <peter@chromium.org>
+
+ Depend on harfbuzz for OS=Android as well
+ https://bugs.webkit.org/show_bug.cgi?id=68239
+
+ Like GTK, Android depends on harfbuzz as well, so reflect that in
+ the project file. Furthermore, fix a compile error in PopupListBox.cpp
+ by explicitly including ctype.h, as isspace otherwise won't be declared.
+
+ Reviewed by Steve Block.
+
+ * WebCore.gyp/WebCore.gyp:
+ * platform/chromium/PopupListBox.cpp:
+
+2011-09-16 Tony Chang <tony@chromium.org>
+
+ Rename flex-align values to match the spec
+ https://bugs.webkit.org/show_bug.cgi?id=67741
+
+ Reviewed by Ojan Vafai.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator EFlexAlign):
+ * css/CSSValueKeywords.in:
+ * rendering/style/RenderStyleConstants.h:
+
+2011-09-16 Kentaro Hara <haraken@chromium.org>
+
+ Implement an ErrorEvent constructor for JSC
+ https://bugs.webkit.org/show_bug.cgi?id=68148
+
+ Reviewed by Sam Weinig.
+
+ The spec for the ErrorEvent constructor is here:
+ http://dev.w3.org/html5/workers/#errorevent
+
+ Test: fast/events/constructors/error-event-constructor.html
+
+ * bindings/generic/EventConstructors.h: Added a definition for the ErrorEvent constructor.
+ * bindings/js/JSEventConstructors.cpp: Added #includes for ErrorEvent.
+ * dom/ErrorEvent.cpp:
+ (WebCore::ErrorEventInit::ErrorEventInit):
+ (WebCore::ErrorEvent::ErrorEvent):
+ (WebCore::ErrorEvent::initErrorEvent):
+ (WebCore::ErrorEvent::isErrorEvent):
+ * dom/ErrorEvent.h: Added a definition for ErrorEventInit.
+ (WebCore::ErrorEvent::create):
+ (WebCore::ErrorEvent::message):
+ (WebCore::ErrorEvent::filename):
+ (WebCore::ErrorEvent::lineno):
+ * dom/ErrorEvent.idl: Makes ErrorEvent constructible.
+
+2011-09-16 Kentaro Hara <haraken@google.com>
+
+ Overhangs a ruby by no more than half the width of the neighboring text.
+ https://bugs.webkit.org/show_bug.cgi?id=62684
+
+ Reviewed by Dan Bernstein.
+
+ Assume two rubies between which a narrow text exists, like
+ "<ruby>x<rt>xxxxxx</rt></ruby>l<ruby>y<rt>yyyyyy</rt></ruby>".
+ In order to avoid the two rubies overlapping with each other,
+ this patch overhangs the ruby by no more than half the ruby font
+ size and no more than half the width of the neighboring text.
+
+ Tests: fast/ruby/overhang-horizontal-no-overlap1.html
+ fast/ruby/overhang-horizontal-no-overlap2.html
+ fast/ruby/overhang-vertical-no-overlap1.html
+ fast/ruby/overhang-vertical-no-overlap2.html
+
+ * rendering/RenderRubyRun.cpp:
+ (WebCore::RenderRubyRun::getOverhang): Calculates the width of ruby overhanging.
+
+2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r95304.
+ http://trac.webkit.org/changeset/95304
+ https://bugs.webkit.org/show_bug.cgi?id=68299
+
+ Broke GTK+ builds. It pulls derived headers into main.c
+ (Requested by rniwa on #webkit).
+
+ * bindings/scripts/CodeGeneratorGObject.pm:
+ ():
+ * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
+ * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
+ * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
+ * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
+ (webkit_dom_test_obj_conditional_method1):
+ (webkit_dom_test_obj_conditional_method2):
+ (webkit_dom_test_obj_conditional_method3):
+ (webkit_dom_test_obj_get_conditional_attr1):
+ (webkit_dom_test_obj_set_conditional_attr1):
+ (webkit_dom_test_obj_get_conditional_attr2):
+ (webkit_dom_test_obj_set_conditional_attr2):
+ (webkit_dom_test_obj_get_conditional_attr3):
+ (webkit_dom_test_obj_set_conditional_attr3):
+ (webkit_dom_test_obj_set_property):
+ (webkit_dom_test_obj_get_property):
+ (webkit_dom_test_obj_class_init):
+ * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
+ * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
+
+2011-09-16 Shawn Singh <shawnsingh@chromium.org>
+
+ Re-named isRootLayer to isNonCompositedContent because
+ that is what the flag actually means.
+ https://bugs.webkit.org/show_bug.cgi?id=68214
+
+ Reviewed by James Robinson.
+
+ Code cleanup towards unit testing.
+
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::LayerChromium):
+ (WebCore::LayerChromium::pushPropertiesTo):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::setIsNonCompositedContent):
+ (WebCore::LayerChromium::isNonCompositedContent):
+ * platform/graphics/chromium/NonCompositedContentHost.cpp:
+ (WebCore::NonCompositedContentHost::NonCompositedContentHost):
+ * platform/graphics/chromium/TiledLayerChromium.cpp:
+ (WebCore::TiledLayerChromium::setLayerTreeHost):
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ (WebCore::CCLayerImpl::CCLayerImpl):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (WebCore::CCLayerImpl::setIsNonCompositedContent):
+ (WebCore::CCLayerImpl::isNonCompositedContent):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
+ (WebCore::CCTiledLayerImpl::draw):
+
+2011-09-16 Simon Fraser <simon.fraser@apple.com>
+
+ Make custom scrollbar theme for use in DRT, to reduce pixel diffs between platforms
+ https://bugs.webkit.org/show_bug.cgi?id=68134
+
+ Reviewed by Sam Weinig.
+
+ Add a new setting to control whether the mock scrollbar theme is used.
+ This is a global setting, so that it can be set without having to
+ access a specific Settings object.
+
+ * page/Settings.h:
+ (WebCore::Settings::setMockScrollbarsEnabled):
+ (WebCore::Settings::mockScrollbarsEnabled):
+
+2011-09-16 Ben Wells <benwells@chromium.org>
+
+ Large canvas fills should not crash or create unnecessarily large image buffers
+ https://bugs.webkit.org/show_bug.cgi?id=67988
+
+ When using source-in, destination-in, source-out, or destination-atop a temporary
+ buffer is created. This buffer only needs to be big enough to cover the intersection
+ of the path and the canvas. If the area of intersection between the fill and the
+ canvas is empty the canvas is completely cleared and a temporary buffer is not used.
+
+ This change also adds some null checks for failures to create contexts or buffers.
+
+ Reviewed by Darin Adler.
+
+ Test: fast/canvas/canvas-large-fills.html
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::clearCanvas):
+ (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere):
+
+2011-09-16 Shawn Singh <shawnsingh@chromium.org>
+
+ Remove default NULL argument in LayerChromium::create().
+ https://bugs.webkit.org/show_bug.cgi?id=68211
+
+ Reviewed by James Robinson.
+
+ Code cleanup related to creating unit testing.
+
+ * platform/graphics/chromium/LayerChromium.h:
+
+2011-09-16 Adrienne Walker <enne@google.com>
+
+ [chromium] Move quad drawing code from LayerChromium to LayerRendererChromium
+ https://bugs.webkit.org/show_bug.cgi?id=68272
+
+ Reviewed by James Robinson.
+
+ All the OpenGL code is in LayerRendererChromium and the CCLayerImpl
+ tree, so move the static drawTexturedQuad/toGLMatrix functions to
+ LayerRendererChromium, where they really belong.
+
+ Just moving code around. Tested by existing compositor tests.
+
+ * platform/graphics/chromium/LayerChromium.cpp:
+ * platform/graphics/chromium/LayerChromium.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::toGLMatrix):
+ (WebCore::LayerRendererChromium::drawTexturedQuad):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
+ (WebCore::CCCanvasLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
+ (WebCore::CCHeadsUpDisplay::draw):
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ (WebCore::CCLayerImpl::drawDebugBorder):
+ * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
+ (WebCore::CCPluginLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCRenderSurface.cpp:
+ (WebCore::CCRenderSurface::drawSurface):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
+ (WebCore::CCTiledLayerImpl::drawTiles):
+ * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
+ (WebCore::CCVideoLayerImpl::drawYUV):
+ (WebCore::CCVideoLayerImpl::drawRGBA):
+
+2011-09-16 Shawn Singh <shawnsingh@chromium.org>
+
+ Fixed const correctness on accessors in LayerChromium
+ https://bugs.webkit.org/show_bug.cgi?id=68210
+
+ Reviewed by James Robinson.
+
+ Code cleanup related to creating unit testing.
+
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::preserves3D):
+ (WebCore::LayerChromium::replicaLayer):
+
+2011-09-14 Ryosuke Niwa <rniwa@webkit.org>
+
+ Deleting line break before h1 converts h1 to span
+ https://bugs.webkit.org/show_bug.cgi?id=45784
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Fixed the bug by treating h1 and other elements that retain structure like Mail blockquote.
+
+ We already had a logic to overriding styles of merged paragraphs by Mail blockquote so
+ just extend this logic for h1-h6, pre, etc...
+
+ Tests: editing/deleting/merge-paragraph-from-address.html
+ editing/deleting/merge-paragraph-from-h6-with-style.html
+ editing/deleting/merge-paragraph-from-h6.html
+ editing/deleting/merge-paragraph-from-listing.html
+ editing/deleting/merge-paragraph-into-h1-with-style.html
+ editing/deleting/merge-paragraph-into-h1.html
+ editing/deleting/merge-paragraph-into-pre.html
+
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
+ * editing/markup.cpp:
+ (WebCore::isBlockNodeToRetainAppearance): Extracted from ancestorToRetainStructureAndAppearance.
+ (WebCore::StyledMarkupAccumulator::serializeNodes):
+ (WebCore::ancestorToRetainStructureAndAppearance):
+ * editing/markup.h:
+
+2011-09-16 Max Perepelitsyn <pph34r@gmail.com>
+
+ Set but not used variables cleanup (gcc 4.6)
+ https://bugs.webkit.org/show_bug.cgi?id=68157
+
+ Reviewed by Darin Adler.
+
+ * platform/audio/ReverbConvolverStage.cpp:
+ (WebCore::ReverbConvolverStage::process):
+ * rendering/RenderMediaControlsChromium.cpp:
+ (WebCore::paintMediaButton):
+
+2011-09-16 Geoffrey Garen <ggaren@apple.com>
+
+ Removed undetectable style.filter.
+
+ Reviewed by Sam Weinig.
+
+ This feature was added in http://trac.webkit.org/changeset/15557 to
+ support housingmaps.com. But housingmaps.com no longer needs this hack,
+ we don't know of other websites that need it, and we don't know of
+ any other browsers that have implemented this feature.
+
+ * ForwardingHeaders/runtime/StringObjectThatMasqueradesAsUndefined.h: Removed.
+ * WebCore.order:
+ * bindings/js/JSCSSStyleDeclarationCustom.cpp:
+ (WebCore::JSCSSStyleDeclaration::nameGetter):
+
+2011-09-16 Adam Barth <abarth@webkit.org>
+
+ Update JSC results to account for intrinsics change.
+
+ * bindings/scripts/test/JS/JSTestInterface.cpp:
+ * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
+ * bindings/scripts/test/JS/JSTestObj.cpp:
+ * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
+
+2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r95312.
+ http://trac.webkit.org/changeset/95312
+ https://bugs.webkit.org/show_bug.cgi?id=68277
+
+ It's innocent, innocent I tell you! (Requested by jamesr_ on
+ #webkit).
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::createTextureUpdater):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
+ * platform/graphics/chromium/cc/CCThreadProxy.cpp:
+ (WebCore::CCThreadProxy::context):
+ (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
+ (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
+ (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
+
+2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r95309.
+ http://trac.webkit.org/changeset/95309
+ https://bugs.webkit.org/show_bug.cgi?id=68271
+
+ Broke many chromium gpu tests. (Requested by dave_levin on
+ #webkit).
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::createTextureUpdater):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
+ * platform/graphics/chromium/cc/CCThreadProxy.cpp:
+ (WebCore::CCThreadProxy::context):
+ (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
+ (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
+ (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
+
+2011-09-16 Filip Pizlo <fpizlo@apple.com>
+
+ DFG JIT should inline Math.abs
+ https://bugs.webkit.org/show_bug.cgi?id=68227
+
+ Reviewed by Oliver Hunt.
+
+ Added JavaScriptCore/dfg to include path path. Changed the bindings
+ scripts to handle the presence of intrinsics.
+
+ * CMakeLists.txt:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (GenerateHashTable):
+
+2011-09-16 Iain Merrick <husky@google.com>
+
+ [chromium] Fix CCLayerTreeHostTest
+ https://bugs.webkit.org/show_bug.cgi?id=67418
+
+ This is a minimal set of changes to get CCLayerTreeHostTest
+ compiling, running and passing with USE_THREADED_COMPOSITING
+ enabled.
+
+ Reviewed by James Robinson.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::createTextureUpdater):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::createLayerTreeHostImpl):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
+ * platform/graphics/chromium/cc/CCThreadProxy.cpp:
+ (WebCore::CCThreadProxy::context):
+ (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
+ (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
+ (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
+
+2011-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r95227.
+ http://trac.webkit.org/changeset/95227
+ https://bugs.webkit.org/show_bug.cgi?id=68262
+
+ Broke a bunch of SVG tests (Requested by andersca on #webkit).
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::contentsSize):
+ (WebCore::ScrollView::wheelEvent):
+ * platform/ScrollView.h:
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::platformContentsSize):
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::platformContentsSize):
+
+2011-09-16 James Simonsen <simonjam@chromium.org>
+
+ Fix HTML5 parser's adoption agency algorithm to reparent correctly
+ https://bugs.webkit.org/show_bug.cgi?id=68147
+
+ Reviewed by Eric Seidel.
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
+
+2011-09-16 Adam Barth <abarth@webkit.org>
+
+ CodeGeneratorGObject should use C++ style comments for ENABLE guards
+ https://bugs.webkit.org/show_bug.cgi?id=68256
+
+ Reviewed by Darin Adler.
+
+ This patch should have not behavioral effect. It just cleans up the
+ GObject code generator to use C++-style comments for ENABLE guards and
+ to use the usual comment style for license blocks.
+
+ * bindings/scripts/CodeGeneratorGObject.pm:
+ * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
+ * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
+ * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
+ * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
+ (webkit_dom_test_obj_conditional_method1):
+ (webkit_dom_test_obj_conditional_method2):
+ (webkit_dom_test_obj_conditional_method3):
+ (webkit_dom_test_obj_get_conditional_attr1):
+ (webkit_dom_test_obj_set_conditional_attr1):
+ (webkit_dom_test_obj_get_conditional_attr2):
+ (webkit_dom_test_obj_set_conditional_attr2):
+ (webkit_dom_test_obj_get_conditional_attr3):
+ (webkit_dom_test_obj_set_conditional_attr3):
+ (webkit_dom_test_obj_set_property):
+ (webkit_dom_test_obj_get_property):
+ (webkit_dom_test_obj_class_init):
+ * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
+ * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
+
+2011-09-16 Csaba Osztrogonác <ossy@webkit.org>
+
+ [Qt] REGRESSION(r95091) It made many tests flakey
+ https://bugs.webkit.org/show_bug.cgi?id=68232
+
+ Unreviewed rolling out r95091 and followup patches.
+
+ * English.lproj/localizedStrings.js:
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::callFunction):
+ * bindings/v8/V8Proxy.h:
+ * bindings/v8/custom/V8CustomVoidCallback.cpp:
+ (WebCore::invokeCallback):
+ * dom/ScriptedAnimationController.cpp:
+ (WebCore::ScriptedAnimationController::registerCallback):
+ (WebCore::ScriptedAnimationController::cancelCallback):
+ (WebCore::ScriptedAnimationController::serviceScriptedAnimations):
+ * inspector/InspectorInstrumentation.cpp:
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::willCallFunction):
+ * inspector/InspectorTimelineAgent.cpp:
+ * inspector/InspectorTimelineAgent.h:
+ * inspector/TimelineRecordFactory.cpp:
+ * inspector/TimelineRecordFactory.h:
+ * inspector/front-end/TimelineAgent.js:
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel):
+ (WebInspector.TimelinePanel.prototype.get _recordStyles):
+ (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
+ (WebInspector.TimelinePanel.prototype._clearPanel):
+ (WebInspector.TimelinePanel.FormattedRecord):
+ (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
+ (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
+
+2011-09-16 Abhishek Arya <inferno@chromium.org>
+
+ cachedFont not getting updated for inline SVG text.
+ https://bugs.webkit.org/show_bug.cgi?id=68060
+
+ Reviewed by Nikolas Zimmermann.
+
+ The cached scaledFont needs to be updated on every style set call. It
+ is not similar to m_style which can get derived from parent's style and
+ hence will get automatically updated on ancestor's style change. This is
+ required, otherwise we will maintain stale font list in cached scaledFont
+ when custom fonts are retired on Document::recalcStyle.
+
+ Test: svg/text/text-style-recalc-crash.html
+
+ * rendering/svg/RenderSVGInlineText.cpp:
+ (WebCore::RenderSVGInlineText::styleDidChange):
+ (WebCore::RenderSVGInlineText::setStyle):
+ * rendering/svg/RenderSVGInlineText.h:
+
+2011-09-16 Antti Koivisto <antti@apple.com>
+
+ REGRESSION (r95052): SelectorChecker identifier filter not working
+ https://bugs.webkit.org/show_bug.cgi?id=68244
+
+ Reviewed by Dan Bernstein.
+
+ Missing &.
+
+ * css/SelectorChecker.cpp:
+ (WebCore::collectDescendantSelectorIdentifierHashes):
+
+2011-09-16 Csaba Osztrogonác <ossy@webkit.org>
+
+ Unreviewed typo fix after r95271.
+
+ * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
+
+2011-09-16 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: [Extensions API] support extensions for remote inspector front-end
+ https://bugs.webkit.org/show_bug.cgi?id=67840
+
+ Reviewed by Pavel Feldman.
+
+ - Merge ExtensionCommon.js into ExtensionAPI.js
+ - refactor building of extension API for better reuse
+ - expose interface for extension registration
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/ExtensionAPI.js:
+ (defineCommonExtensionSymbols):
+ (buildExtensionAPIInjectedScript):
+ * inspector/front-end/ExtensionCommon.js:
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer.prototype._addExtensions):
+ (WebInspector.ExtensionServer.prototype._addExtension):
+ (WebInspector.ExtensionServer.prototype._buildExtensionAPIScript):
+ (WebInspector.ExtensionServer.prototype._onWindowMessage):
+ (WebInspector.ExtensionServer.prototype._registerExtension):
+ (WebInspector.ExtensionServer.prototype._expandResourcePath):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.html:
+
+2011-09-16 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: change WebInspector.currentPanel getter/setter to functions.
+ https://bugs.webkit.org/show_bug.cgi?id=68242
+
+ This is necessary for the panel switching performance tests.
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/Drawer.js:
+ (WebInspector.Drawer.prototype.show.animationFinished):
+ (WebInspector.Drawer.prototype.show):
+ (WebInspector.Drawer.prototype.hide):
+ (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
+ (WebInspector.Drawer.prototype._animateDrawerHeight):
+ (WebInspector.Drawer.prototype._statusBarDragging):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.switchToAndFocus):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype.showAnchorLocation):
+ * inspector/front-end/ScriptsPanel.js:
+ * inspector/front-end/SearchController.js:
+ (WebInspector.SearchController.prototype.updateSearchMatchesCount):
+ (WebInspector.SearchController.prototype.updateCurrentMatchIndex):
+ (WebInspector.SearchController.prototype.updateSearchLabel):
+ (WebInspector.SearchController.prototype.handleShortcut):
+ (WebInspector.SearchController.prototype._performSearch):
+ * inspector/front-end/Toolbar.js:
+ (WebInspector.Toolbar.createPanelToolbarItem.onToolbarItemClicked):
+ (WebInspector.Toolbar.createPanelToolbarItem):
+ * inspector/front-end/inspector.js:
+ (WebInspector.currentPanel):
+ (WebInspector._updateFocusedNode):
+ (WebInspector.windowResize):
+ (WebInspector.documentKeyDown):
+ (WebInspector.documentCanCopy):
+ (WebInspector.documentCopy):
+ (WebInspector.showPanel):
+ (WebInspector.startUserInitiatedDebugging):
+ (WebInspector.inspect):
+ (WebInspector._showAnchorLocationInPanel):
+ (WebInspector._toolbarItemClicked):
+ (WebInspector.PanelHistory.prototype.goBack):
+ (WebInspector.PanelHistory.prototype.goForward):
+
+2011-09-15 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: rename Console.clearConsoleMessages to Console.clearMessages, brush up console domain doc.
+ https://bugs.webkit.org/show_bug.cgi?id=68165
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::clearConsoleMessages):
+ * inspector/Inspector.json:
+ * inspector/InspectorConsoleAgent.cpp:
+ (WebCore::InspectorConsoleAgent::clearMessages):
+ * inspector/InspectorConsoleAgent.h:
+ * inspector/front-end/ConsoleModel.js:
+ (WebInspector.ConsoleModel.prototype.requestClearMessages):
+
+2011-09-16 Alejandro G. Castro <alex@igalia.com>
+
+ Fix GTK build after r95245.
+
+ * GNUmakefile.list.am:
+
+2011-09-16 Leo Yang <leo.yang@torchmobile.com.cn>
+
+ [Qt] Crash when dragging google maps.
+ https://bugs.webkit.org/show_bug.cgi?id=68223
+
+ The custom image for a cursor might not be ready when WebKit trying
+ to use it to construct the cursor in Qt porting. This patch is using
+ arrow image to substitute the unready custom image.
+
+ Reviewed by Adam Barth.
+
+ Test: fast/css/crash-on-custom-cursor-when-loading.html
+
+ * platform/qt/CursorQt.cpp:
+ (WebCore::createCustomCursor):
+ (WebCore::Cursor::ensurePlatformCursor):
+
+2011-09-15 Adam Barth <abarth@webkit.org>
+
+ Rename ENABLE(DATABASE) to ENABLE(SQL_DATABASE)
+ https://bugs.webkit.org/show_bug.cgi?id=68205
+
+ Reviewed by Eric Seidel.
+
+ As discussed on webkit-dev.
+
+ * CMakeLists.txt:
+ * Configurations/FeatureDefines.xcconfig:
+ * GNUmakefile.am:
+ * GNUmakefile.list.am:
+ * UseJSC.cmake:
+ * bindings/generic/RuntimeEnabledFeatures.cpp:
+ * bindings/generic/RuntimeEnabledFeatures.h:
+ * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::setDOMException):
+ * bindings/js/JSExceptionBase.cpp:
+ (WebCore::toExceptionBase):
+ * bindings/js/JSInjectedScriptHostCustom.cpp:
+ (WebCore::JSInjectedScriptHost::databaseId):
+ * bindings/js/JSSQLResultSetRowListCustom.cpp:
+ * bindings/js/JSSQLTransactionCustom.cpp:
+ * bindings/js/JSSQLTransactionSyncCustom.cpp:
+ * bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
+ * bindings/scripts/test/CPP/WebDOMTestCallback.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
+ * bindings/scripts/test/JS/JSTestCallback.cpp:
+ * bindings/scripts/test/JS/JSTestCallback.h:
+ * bindings/scripts/test/ObjC/DOMTestCallback.mm:
+ * bindings/scripts/test/TestCallback.idl:
+ * bindings/scripts/test/V8/V8TestCallback.cpp:
+ * bindings/scripts/test/V8/V8TestCallback.h:
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::setDOMException):
+ * bindings/v8/V8Proxy.h:
+ * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
+ (WebCore::V8InjectedScriptHost::databaseIdCallback):
+ * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
+ * bindings/v8/custom/V8SQLTransactionCustom.cpp:
+ * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
+ * dom/Document.cpp:
+ * dom/Document.h:
+ * dom/ExceptionCode.cpp:
+ (WebCore::getExceptionCodeDescription):
+ * dom/ExceptionCode.h:
+ * dom/ScriptExecutionContext.cpp:
+ (WebCore::ScriptExecutionContext::ScriptExecutionContext):
+ (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
+ * dom/ScriptExecutionContext.h:
+ * features.pri:
+ * history/PageCache.cpp:
+ (WebCore::logCanCacheFrameDecision):
+ (WebCore::PageCache::canCachePageContainingThisFrame):
+ * inspector/InjectedScriptHost.cpp:
+ (WebCore::InjectedScriptHost::InjectedScriptHost):
+ (WebCore::InjectedScriptHost::disconnect):
+ * inspector/InjectedScriptHost.h:
+ (WebCore::InjectedScriptHost::init):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::connectFrontend):
+ (WebCore::InspectorController::disconnectFrontend):
+ (WebCore::InspectorController::restoreInspectorStateFromCookie):
+ * inspector/InspectorController.h:
+ * inspector/InspectorDatabaseAgent.cpp:
+ * inspector/InspectorDatabaseInstrumentation.h:
+ * inspector/InspectorDatabaseResource.cpp:
+ * inspector/InspectorDatabaseResource.h:
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didCommitLoadImpl):
+ * inspector/InspectorInstrumentation.h:
+ * inspector/InstrumentingAgents.h:
+ (WebCore::InstrumentingAgents::InstrumentingAgents):
+ * inspector/WorkerInspectorController.cpp:
+ (WebCore::WorkerInspectorController::WorkerInspectorController):
+ (WebCore::WorkerInspectorController::connectFrontend):
+ * loader/EmptyClients.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::stopLoading):
+ * page/ChromeClient.h:
+ * page/DOMWindow.cpp:
+ * page/DOMWindow.h:
+ * page/DOMWindow.idl:
+ * platform/sql/SQLiteAuthorizer.cpp:
+ * platform/sql/SQLiteDatabase.cpp:
+ * platform/sql/SQLiteFileSystem.cpp:
+ * platform/sql/SQLiteStatement.cpp:
+ * platform/sql/SQLiteTransaction.cpp:
+ * storage/AbstractDatabase.cpp:
+ * storage/AbstractDatabase.h:
+ * storage/ChangeVersionWrapper.cpp:
+ * storage/ChangeVersionWrapper.h:
+ * storage/Database.cpp:
+ * storage/Database.h:
+ * storage/Database.idl:
+ * storage/DatabaseAuthorizer.cpp:
+ * storage/DatabaseCallback.h:
+ * storage/DatabaseCallback.idl:
+ * storage/DatabaseDetails.h:
+ * storage/DatabaseSync.cpp:
+ * storage/DatabaseSync.h:
+ * storage/DatabaseSync.idl:
+ * storage/DatabaseTask.cpp:
+ * storage/DatabaseTask.h:
+ * storage/DatabaseThread.cpp:
+ * storage/DatabaseThread.h:
+ * storage/DatabaseTracker.cpp:
+ * storage/DatabaseTracker.h:
+ * storage/DatabaseTrackerClient.h:
+ * storage/OriginQuotaManager.cpp:
+ * storage/OriginQuotaManager.h:
+ * storage/OriginUsageRecord.cpp:
+ * storage/OriginUsageRecord.h:
+ * storage/SQLCallbackWrapper.h:
+ * storage/SQLError.h:
+ * storage/SQLError.idl:
+ * storage/SQLException.h:
+ * storage/SQLException.idl:
+ * storage/SQLResultSet.cpp:
+ * storage/SQLResultSet.h:
+ * storage/SQLResultSet.idl:
+ * storage/SQLResultSetRowList.cpp:
+ * storage/SQLResultSetRowList.h:
+ * storage/SQLResultSetRowList.idl:
+ * storage/SQLStatement.cpp:
+ * storage/SQLStatement.h:
+ * storage/SQLStatementCallback.h:
+ * storage/SQLStatementCallback.idl:
+ * storage/SQLStatementErrorCallback.h:
+ * storage/SQLStatementErrorCallback.idl:
+ * storage/SQLStatementSync.cpp:
+ * storage/SQLStatementSync.h:
+ * storage/SQLTransaction.cpp:
+ * storage/SQLTransaction.h:
+ * storage/SQLTransaction.idl:
+ * storage/SQLTransactionCallback.h:
+ * storage/SQLTransactionCallback.idl:
+ * storage/SQLTransactionClient.cpp:
+ * storage/SQLTransactionClient.h:
+ * storage/SQLTransactionCoordinator.cpp:
+ * storage/SQLTransactionCoordinator.h:
+ * storage/SQLTransactionErrorCallback.h:
+ * storage/SQLTransactionErrorCallback.idl:
+ * storage/SQLTransactionSync.cpp:
+ * storage/SQLTransactionSync.h:
+ * storage/SQLTransactionSync.idl:
+ * storage/SQLTransactionSyncCallback.h:
+ * storage/SQLTransactionSyncCallback.idl:
+ * storage/chromium/DatabaseObserver.h:
+ * storage/chromium/DatabaseTrackerChromium.cpp:
+ * storage/chromium/QuotaTracker.cpp:
+ * storage/chromium/QuotaTracker.h:
+ * storage/chromium/SQLTransactionClientChromium.cpp:
+ * workers/WorkerContext.cpp:
+ * workers/WorkerContext.h:
+ * workers/WorkerContext.idl:
+ * workers/WorkerThread.cpp:
+ (WebCore::WorkerThreadShutdownStartTask::performTask):
+ (WebCore::WorkerThread::stop):
+
+2011-09-15 Alexandru Chiculita <achicu@adobe.com>
+
+ [CSSRegions] Regions should not slice line box rendering
+ https://bugs.webkit.org/show_bug.cgi?id=66198
+
+ Created a new LayoutState constructor for the RenderFlowThread. It will
+ set m_isPaginated to true and force a pageHeight if 1. The actual pageHeight is
+ not used, because pageLogicalHeightForOffset will actually redirect the call
+ to RenderFlowThread.
+
+ Removed some of the duplicate code that calculated the page logical offset.
+ Added new methods like logicalPageOffset, pageLogicalHeightForOffset,
+ pageRemainingLogicalHeightForOffset.
+
+ There are still some issues related to incremental layout and different region widths.
+ Those issues will be addressed in different patches.
+
+ Reviewed by David Hyatt.
+
+ Tests: fast/regions/text-region-breaks.html
+ fast/regions/text-region-split-horizontal-bt.html
+ fast/regions/text-region-split-vertical-rl.html
+ fast/regions/text-region-split-vertical.html
+ fast/regions/text-region-split.html
+
+ * rendering/LayoutState.cpp:
+ (WebCore::LayoutState::LayoutState):
+ * rendering/LayoutState.h:
+ (WebCore::LayoutState::LayoutState):
+ (WebCore::LayoutState::isPaginated):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::positionNewFloats):
+ (WebCore::RenderBlock::adjustForRegionFittingIfNeeded):
+ (WebCore::RenderBlock::nextPageLogicalTopExcludingBoundaryPoint):
+ (WebCore::RenderBlock::nextPageLogicalTopIncludingBoundaryPoint):
+ (WebCore::inNormalFlow):
+ (WebCore::RenderBlock::applyBeforeBreak):
+ (WebCore::RenderBlock::applyAfterBreak):
+ (WebCore::RenderBlock::logicalPageOffset):
+ (WebCore::RenderBlock::pageLogicalHeightForOffset):
+ (WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
+ (WebCore::RenderBlock::adjustForUnsplittableChild):
+ (WebCore::RenderBlock::adjustLinePositionForPagination):
+ * rendering/RenderBlock.h:
+ * rendering/RenderFlowThread.cpp:
+ (WebCore::RenderFlowThread::layout):
+ (WebCore::RenderFlowThread::regionLogicalHeightForLine):
+ (WebCore::RenderFlowThread::regionRemainingLogicalHeightForLine):
+ * rendering/RenderFlowThread.h:
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::pushLayoutState):
+ * rendering/RenderView.h:
+ (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
+ (WebCore::LayoutStateMaintainer::push):
+
+2011-09-15 Kentaro Hara <haraken@google.com>
+
+ Implement a PopStateEvent constructor for JSC
+ https://bugs.webkit.org/show_bug.cgi?id=67977
+
+ Reviewed by Sam Weinig.
+
+ Test: fast/events/constructors/pop-state-event-constructor.html
+
+ * bindings/generic/EventConstructors.h: Added a definition for the PopStateEvent constructor.
+ * bindings/js/JSEventConstructors.cpp: Added #includes for PopStateEvent.
+ * dom/PopStateEvent.cpp:
+ (WebCore::PopStateEventInit::PopStateEventInit):
+ (WebCore::PopStateEvent::PopStateEvent):
+ (WebCore::PopStateEvent::create):
+ * dom/PopStateEvent.h: Added a definition for PopStateEventInit.
+ * dom/PopStateEvent.idl: Makes PopStateEvent constructible.
+
+2011-09-15 Mihai Parparita <mihaip@chromium.org>
+
+ Fragment navigations should interrupt a provisional load of a different document
+ https://bugs.webkit.org/show_bug.cgi?id=64556
+
+ Reviewed by Adam Barth.
+
+ Tests: http/tests/history/back-with-fragment-change.php
+ http/tests/navigation/navigation-interrupted-by-fragment.html
+
+ * loader/FrameLoader.cpp: Stop provisional load if a fragment commits.
+ * loader/HistoryController.cpp: Don't commit the wrong provisional item.
+
+2011-09-15 Adrienne Walker <enne@google.com>
+
+ [chromium] Add temporary diagnostics for LayerTreeHost::commitTo crash
+ https://bugs.webkit.org/show_bug.cgi?id=68204
+
+ Reviewed by James Robinson.
+
+ Add CRASH calls to determine which assumptions are being violated.
+
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::commitTo):
+
+2011-09-15 Mark Hahnenberg <mhahnenberg@apple.com>
+
+ Unzip initialization lists and constructors in JSCell hierarchy (7/7)
+ https://bugs.webkit.org/show_bug.cgi?id=68122
+
+ Reviewed by Geoffrey Garen.
+
+ No new tests.
+
+ Completed the seventh and final level of the refactoring to add finishCreation()
+ methods to all classes within the JSCell hierarchy with non-trivial
+ constructor bodies.
+
+ This consists of moving the finishCreation() method call into the create methods
+ of the sixth level of the hierarchy as was done in previous patches.
+
+ The special cases for JSAudioConstructor, JSOptionConstructor, and JSImageConstructor
+ were also lumped in and given finishCreation() methods that are called in their
+ create methods because we are at the end and want to avoid a trivial patch just
+ for moving their finishCreation() methods from their constructor to their create method.
+
+ * bindings/js/JSAudioConstructor.cpp:
+ (WebCore::JSAudioConstructor::JSAudioConstructor):
+ (WebCore::JSAudioConstructor::finishCreation):
+ * bindings/js/JSAudioConstructor.h:
+ (WebCore::JSAudioConstructor::create):
+ * bindings/js/JSDOMBinding.h:
+ (WebCore::DOMConstructorWithDocument::DOMConstructorWithDocument):
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::JSDOMWindowBase):
+ * bindings/js/JSImageConstructor.cpp:
+ (WebCore::JSImageConstructor::JSImageConstructor):
+ (WebCore::JSImageConstructor::finishCreation):
+ * bindings/js/JSImageConstructor.h:
+ (WebCore::JSImageConstructor::create):
+ * bindings/js/JSOptionConstructor.cpp:
+ (WebCore::JSOptionConstructor::JSOptionConstructor):
+ (WebCore::JSOptionConstructor::finishCreation):
+ * bindings/js/JSOptionConstructor.h:
+ (WebCore::JSOptionConstructor::create):
+ * bindings/js/JSWorkerContextBase.cpp:
+ (WebCore::JSWorkerContextBase::JSWorkerContextBase):
+
+ The bindings generation script was also changed to move the finishCreation() call into the
+ create methods for descendants of JSWorkerContextBase and JSDOMWindowBase because those base
+ classes had it removed from their constructors.
+
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (GenerateHeader):
+ * bridge/c/c_instance.cpp:
+ (JSC::Bindings::CRuntimeMethod::create):
+ (JSC::Bindings::CRuntimeMethod::CRuntimeMethod):
+ * bridge/jni/jsc/JavaInstanceJSC.cpp:
+ (JavaRuntimeMethod::create):
+ (JavaRuntimeMethod::JavaRuntimeMethod):
+ * bridge/objc/objc_instance.mm:
+ (ObjCRuntimeMethod::create):
+ (ObjCRuntimeMethod::ObjCRuntimeMethod):
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtRuntimeMetaMethod::QtRuntimeMetaMethod):
+ (JSC::Bindings::QtRuntimeConnectionMethod::QtRuntimeConnectionMethod):
+ * bridge/qt/qt_runtime.h:
+ (JSC::Bindings::QtRuntimeMetaMethod::create):
+ (JSC::Bindings::QtRuntimeConnectionMethod::create):
+
+2011-09-15 Kentaro Hara <haraken@google.com>
+
+ A single line must not be split into two pages.
+ https://bugs.webkit.org/show_bug.cgi?id=65005
+
+ Reviewed by David Hyatt.
+
+ When the document width of a page is overflowed, the last line of the page can be
+ split into the next page. This is the regression caused by r88737. r88737 tried to
+ fix rounding errors in rendering calculations by expanding and shrinking a page
+ using one common method, resizePageRectsKeepingRatio(), but overlooked the case where
+ a document width gets overflowed.
+
+ This patch fixes the problem by also using resizePageRectsKeepingRatio() for the case
+ where the document width gets overflowed.
+
+ Test: printing/single-line-must-not-be-split-into-two-pages.html
+
+ * WebCore.exp.in: Updated the signature of forceLayoutForPagination().
+ * page/Frame.cpp:
+ (WebCore::Frame::setPrinting): Added a new argument |originalPageSize|, which is an original page size before being expanded or shrunk.
+ * page/Frame.h:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::forceLayoutForPagination): Uses resizePageRectsKeepingRatio() in the case where the document width gets overflowed.
+ * page/FrameView.h:
+ * page/PrintContext.cpp:
+ (WebCore::PrintContext::begin): Passes an original page size to setPrinting().
+ (WebCore::PrintContext::end): Ditto.
+
+2011-09-15 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r95243 and r95246.
+ http://trac.webkit.org/changeset/95243
+ http://trac.webkit.org/changeset/95246
+ https://bugs.webkit.org/show_bug.cgi?id=68202
+
+ Broke the Windows build (Requested by smfr on #webkit).
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * platform/graphics/ca/win/LayerChangesFlusher.cpp:
+ (WebCore::LayerChangesFlusher::hookCallback):
+ * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
+ (PlatformCAAnimation::copy):
+ * platform/win/StructuredExceptionHandlerSupressor.h: Removed.
+
+2011-09-15 Simon Fraser <simon.fraser@apple.com>
+
+ Attempt to fix Windows build after r95243.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2011-09-15 Simon Fraser <simon.fraser@apple.com>
+
+ Make custom scrollbar theme for use in DRT, to reduce pixel differences between platforms
+ https://bugs.webkit.org/show_bug.cgi?id=68134
+
+ Reviewed by James Robinson.
+
+ Add new scrollbar theme, called ScrollbarThemeMock, for use in layout
+ tests. The mock scrollbar simply draws a light gray box in the track,
+ with a dark gray box for the thumb.
+
+ Add ScrollbarThemeMock files to the build on all platforms. It isn't hooked up yet.
+
+ * CMakeLists.txt:
+ * CMakeListsEfl.txt:
+ * CMakeListsWinCE.txt:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarTheme::nativeTheme):
+ * platform/mock/ScrollbarThemeMock.cpp: Added.
+ (WebCore::ScrollbarThemeMock::trackRect):
+ (WebCore::ScrollbarThemeMock::scrollbarThickness):
+ (WebCore::ScrollbarThemeMock::paintTrackBackground):
+ (WebCore::ScrollbarThemeMock::paintThumb):
+ * platform/mock/ScrollbarThemeMock.h: Added.
+ (WebCore::ScrollbarThemeMock::hasButtons):
+ (WebCore::ScrollbarThemeMock::hasThumb):
+ (WebCore::ScrollbarThemeMock::backButtonRect):
+ (WebCore::ScrollbarThemeMock::forwardButtonRect):
+
+2011-09-15 Beth Dakin <bdakin@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=67884
+ Delete button icon does not properly update when the device resolution changes
+ dynamically
+ -and corresponding-
+ <rdar://problem/10104632>
+
+ Reviewed by Darin Adler.
+
+ In DeleteButtonController::deviceScaleFactorChanged(), if the delete button is
+ currently showing, hide it and re-show it, forcing it to re-create the deletion
+ UI.
+ * editing/DeleteButtonController.cpp:
+ (WebCore::DeleteButtonController::deviceScaleFactorChanged):
+ * editing/DeleteButtonController.h:
+ * editing/Editor.cpp:
+ (WebCore::Editor::deviceScaleFactorChanged):
+ * editing/Editor.h:
+
+ Iterate through all of the frames and propagate the deviceScaleFactorChange()
+ message to Editor.
+ * page/Page.cpp:
+ (WebCore::Page::setDeviceScaleFactor):
+
+2011-09-15 Chris Marrin <cmarrin@apple.com>
+
+ Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction
+ https://bugs.webkit.org/show_bug.cgi?id=67510
+
+ Reviewed by Adam Roben.
+
+ Another fix to take care of one last crash when running pause-crash.html.
+ CACF can't deal with null valueFunctions, so avoid setting it when it doesn't
+ exist.
+
+ This also adds logic to the Windows Hook in LayerChangesFlusher to prevent it
+ from catching the null pointer exception generated by the pause-crash.html test
+ before this bug was fixed. Windows was ignoring the exception, so the testcase
+ would appear to succeed, even though it should have crashed.
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * platform/graphics/ca/win/LayerChangesFlusher.cpp:
+ (WebCore::LayerChangesFlusher::hookCallback):
+ * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
+ (PlatformCAAnimation::copy):
+ * platform\win\StructuredExceptionHandlerSupressor.h: New file to encapsulate the exception handling supression.
+
+2011-09-15 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=27579
+
+ Make sure that the border shorthand also resets border-image.
+
+ Reviewed by Beth Dakin.
+
+ Added fast/borders/border-image-reset-by-border-shorthand.html.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+
+2011-09-15 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=50072
+
+ Make overflow clipping to border-radius work across layers. This patch makes painting
+ work but does not attempt to fix hit testing. It also doesn't work when a composited
+ layer is clipped by a non-composited ancestor.
+
+ Add a new ClipRect class (used by ClipRects and RenderLayer) that is basically just tracking
+ a rect and a border radius taint. At the time we set a clip, if the rectangle is listed
+ as also being clipped by a radius, then we walk up the layer tree and push those inner border
+ rounded rect clips for any overflow areas in the containing block chain.
+
+ Reviewed by Beth Dakin.
+
+ Added new tests in fast/clip.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::pushContentsClip):
+ * rendering/RenderLayer.cpp:
+ (WebCore::inContainingBlockChain):
+ (WebCore::RenderLayer::clipToRect):
+ (WebCore::RenderLayer::restoreClip):
+ (WebCore::RenderLayer::paintLayer):
+ (WebCore::RenderLayer::hitTestLayer):
+ (WebCore::RenderLayer::calculateClipRects):
+ (WebCore::RenderLayer::backgroundClipRect):
+ (WebCore::RenderLayer::calculateRects):
+ (WebCore::RenderLayer::childrenClipRect):
+ (WebCore::RenderLayer::selfClipRect):
+ * rendering/RenderLayer.h:
+ (WebCore::ClipRect::ClipRect):
+ (WebCore::ClipRect::rect):
+ (WebCore::ClipRect::setRect):
+ (WebCore::ClipRect::hasRadius):
+ (WebCore::ClipRect::setHasRadius):
+ (WebCore::ClipRect::operator==):
+ (WebCore::ClipRect::intersect):
+ (WebCore::ClipRect::move):
+ (WebCore::ClipRect::isEmpty):
+ (WebCore::ClipRect::intersects):
+ (WebCore::intersection):
+ (WebCore::ClipRects::overflowClipRect):
+ (WebCore::ClipRects::setOverflowClipRect):
+ (WebCore::ClipRects::fixedClipRect):
+ (WebCore::ClipRects::setFixedClipRect):
+ (WebCore::ClipRects::posClipRect):
+ (WebCore::ClipRects::setPosClipRect):
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::updateCompositedBounds):
+ (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
+ (WebCore::RenderLayerBacking::paintIntoLayer):
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::addToOverlapMap):
+ (WebCore::RenderLayerCompositor::clippedByAncestor):
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::writeLayers):
+
+2011-09-15 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Crash in RenderBox::paintMaskImages due to a mask without an associated image
+ https://bugs.webkit.org/show_bug.cgi?id=50151
+
+ Reviewed by Simon Fraser.
+
+ Test: fast/css/empty-webkit-mask-crash.html
+
+ The crash stems from the fact that FillLayer::hasImage would walk over the linked list
+ of FillLayers and return true if one had an image. This means that hasImage() is true
+ does not mean that image() is non-NULL on all FillLayers.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::paintMaskImages): Simplify the logic by doing the hasImage() check up-front
+ and properly check image() for each FillLayers. This has the nice benefit of changing the complexity
+ from O(n^2) to O(n), which was what the code expected anyway.
+
+2011-09-15 Eric Seidel <eric@webkit.org>
+
+ Remove ENABLE(SVG_AS_IMAGE) since all major ports have it on by default
+ https://bugs.webkit.org/show_bug.cgi?id=68182
+
+ Reviewed by Adam Barth.
+
+ * Configurations/FeatureDefines.xcconfig:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * features.pri:
+ * loader/cache/CachedImage.cpp:
+ (WebCore::CachedImage::createImage):
+
+2011-09-15 Andy Estes <aestes@apple.com>
+
+ Having an empty listener to beforeload events changes the behavior of other scripts
+ https://bugs.webkit.org/show_bug.cgi?id=45586
+
+ Reviewed by Darin Adler.
+
+ Test: fast/dom/beforeload/cached-image-before-load.html
+
+ When loading a cached image after a beforeload handler has been
+ installed on the document, ImageLoader would dispatch both the
+ beforeload and load events asynchronously in such a way that caused
+ load to fire first. Since a side effect of firing the beforeload event
+ is to wire up the CachedImage to its associated RenderImage object,
+ this work was not done by the time load fired, and scripts that queried
+ renderer-dependent attributes of the image in an onload handler would
+ get bogus values in return.
+
+ Fix this by ensuring load fires after beforeload in the cached image case.
+
+ * loader/ImageLoader.cpp:
+ (WebCore::ImageLoader::updateFromElement): Call setClient() after
+ dispatching beforeload, since setClient() will dispatch the load event
+ if the image is cached.
+
+2011-09-15 Anders Carlsson <andersca@apple.com>
+
+ Remove ScrollView::platformContentsSize
+ https://bugs.webkit.org/show_bug.cgi?id=68188
+
+ Reviewed by Darin Adler.
+
+ Since ScrollView keeps track of the contents size in ScrollView::m_contentsSize, we never
+ have to ask the underlying platform scroll view for contents size since it should always just
+ be equal to m_contentsSize.
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::contentsSize):
+ (WebCore::ScrollView::wheelEvent):
+ * platform/ScrollView.h:
+ * platform/mac/ScrollViewMac.mm:
+ * platform/wx/ScrollViewWx.cpp:
+
+2011-09-15 Jon Lee <jonlee@apple.com>
+
+ Submitting a form with target=_blank works only once
+ https://bugs.webkit.org/show_bug.cgi?id=28633
+ <rdar://problem/7357787>
+
+ Reviewed by Andy Estes.
+
+ Test: fast/forms/submit-to-blank-multiple-times.html
+
+ The call to reset the multiple form submission bool is pushed down from the mouseDown handler to
+ handleMousePressEvent(), to include WK2 coverage, similar to keyEvent.
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleMousePressEvent):
+ (WebCore::EventHandler::keyEvent): clarified old FIXME comment. Both key events and mouse events
+ may submit a form multiple times, but the call to reset the handler should probably be in another
+ abstraction layer.
+ * page/mac/EventHandlerMac.mm:
+ (WebCore::EventHandler::mouseDown):
+
+2011-09-15 Peter Rybin <peter.rybin@gmail.com>
+
+ XMLDocumentParserQt.cpp incorrectly converts 0-based number into 1-based number
+ https://bugs.webkit.org/show_bug.cgi?id=63540
+
+ ZeroBasedNumber/OneBasedNumber are used in more places, inconsistency
+ in xml parser is fixed.
+
+ Reviewed by Adam Barth.
+
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::eventHandlerLineNumber):
+ * dom/ScriptableDocumentParser.h:
+ * dom/StyleElement.cpp:
+ (WebCore::StyleElement::StyleElement):
+ * dom/ViewportArguments.cpp:
+ (WebCore::parserLineNumber):
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::lineNumber):
+ * html/parser/HTMLDocumentParser.h:
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::buildInitiatorObject):
+ * svg/SVGDocumentExtensions.cpp:
+ (WebCore::parserLineNumber):
+ * xml/parser/NewXMLDocumentParser.cpp:
+ (WebCore::NewXMLDocumentParser::lineNumber):
+ * xml/parser/NewXMLDocumentParser.h:
+ * xml/parser/XMLDocumentParser.cpp:
+ (WebCore::XMLDocumentParser::pushCurrentNode):
+ * xml/parser/XMLDocumentParser.h:
+ * xml/parser/XMLDocumentParserLibxml2.cpp:
+ (WebCore::PendingCallbacks::appendErrorCallback):
+ (WebCore::XMLDocumentParser::doWrite):
+ (WebCore::XMLDocumentParser::startElementNs):
+ (WebCore::XMLDocumentParser::error):
+ (WebCore::XMLDocumentParser::lineNumber):
+ (WebCore::XMLDocumentParser::columnNumber):
+ (WebCore::XMLDocumentParser::textPosition):
+ * xml/parser/XMLDocumentParserQt.cpp:
+ (WebCore::XMLDocumentParser::doWrite):
+ (WebCore::XMLDocumentParser::doEnd):
+ (WebCore::XMLDocumentParser::lineNumber):
+ (WebCore::XMLDocumentParser::columnNumber):
+ (WebCore::XMLDocumentParser::textPosition):
+ (WebCore::XMLDocumentParser::parse):
+ (WebCore::XMLDocumentParser::parseStartElement):
+
+2011-09-15 Peter Kasting <pkasting@google.com>
+
+ Fix WebCore.gypi after r95130.
+
+ Unreviewed, build fix.
+
+ * WebCore.gypi:
+
+2011-09-15 Eric Seidel <eric@webkit.org>
+
+ Remove ENABLE_SVG_ANIMATION as all major ports have it on by default
+ https://bugs.webkit.org/show_bug.cgi?id=68022
+
+ Reviewed by Ryosuke Niwa.
+
+ * Configurations/FeatureDefines.xcconfig:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * features.pri:
+ * page/DOMWindow.idl:
+ * svg/svgtags.in:
+
+2011-09-15 Matthew Delaney <mdelaney@apple.com>
+
+ REGRESSION (Safari 5.1-r95043): Incorrect box-shadow offset
+ https://bugs.webkit.org/show_bug.cgi?id=68041
+
+ Reviewed by Dan Bernstein.
+
+ Test: fast/box-shadow/no-blur-multiple-offsets.html
+
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::setPlatformShadow): Add hack back in for Lion if
+ context is not accelerated.
+
+2011-09-15 James Simonsen <simonjam@chromium.org>
+
+ Ref protect HTMLObjectElement and HTMLEmbedElement while requesting plugins
+ https://bugs.webkit.org/show_bug.cgi?id=68014
+
+ Reviewed by Adam Barth.
+
+ Test: plugins/destroy-during-npp-new.html under valgrind
+ plugins/destroy-during-npp-new-object-with-fallback-content.html under valgrind
+
+ * html/HTMLEmbedElement.cpp:
+ (WebCore::HTMLEmbedElement::updateWidget):
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::updateWidget):
+
+2011-09-15 Sam Weinig <sam@webkit.org>
+
+ Experiment with removing ability to call a collection (except document.all)
+ https://bugs.webkit.org/show_bug.cgi?id=67579
+
+ Reviewed by Anders Carlsson.
+
+ At the request of the public-script-coord mailing list (specifically Brendan Eich, see
+ http://lists.w3.org/Archives/Public/public-script-coord/2011JulSep/0360.html), this
+ patch removes the ability to call a collection (either a NodeList or HTMLCollection,
+ but not an HTMLAllCollection) as function, a syntax that we adopted to emulate IE.
+ It is being landed to find out if there are any sites relying on this behavior of WebKit,
+ or, if it is only used in IE only paths. If we find sites are breaking, it should be rolled
+ out and we should inform the public-script-coord mailing list.
+
+ * bindings/js/JSHTMLAllCollectionCustom.cpp:
+ Update comment.
+
+ * bindings/js/JSHTMLCollectionCustom.cpp:
+ * bindings/js/JSNodeListCustom.cpp:
+ Remove custom call code.
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+ Add support for V8CustomCall.
+
+ * dom/NodeList.idl:
+ * html/HTMLCollection.idl:
+ Remove CustomCall.
+
+2011-09-15 Andreas Kling <kling@webkit.org>
+
+ CanvasRenderingContext2D::State copy ctor should use initializer list.
+ https://bugs.webkit.org/show_bug.cgi?id=68152
+
+ Reviewed by Darin Adler.
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::State::State):
+
+2011-09-15 Andreas Kling <kling@webkit.org>
+
+ Don't bother calculating dirty rect for accelerated 2D canvases.
+ https://bugs.webkit.org/show_bug.cgi?id=68158
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ For accelerated CanvasRenderingContext2D, didDraw() simply calls out
+ to RenderLayer::contentChanged(). Move this to the top of didDraw()
+ so we don't waste time calculating a precise dirty rect.
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::didDraw):
+
+2011-09-15 Brian Salomon <bsalomon@google.com>
+
+ [Skia/Chrome] Cleanup unneeded code now that GrGLInterface is used to set GL ctx per GL call.
+ https://bugs.webkit.org/show_bug.cgi?id=68096
+
+ Reviewed by Stephen White.
+
+ This change removes PlatformContextSkia::makeGrContextCurrent now that
+ GrGLInterface is used to set the context on every Skia GL call.
+
+ Tested by every canvas layout test.
+
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/skia/FontSkia.cpp:
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::clearRect):
+ (WebCore::GraphicsContext::clip):
+ (WebCore::GraphicsContext::drawConvexPolygon):
+ (WebCore::GraphicsContext::drawEllipse):
+ (WebCore::GraphicsContext::drawFocusRing):
+ (WebCore::GraphicsContext::drawLine):
+ (WebCore::GraphicsContext::drawLineForTextChecking):
+ (WebCore::GraphicsContext::drawLineForText):
+ (WebCore::GraphicsContext::drawRect):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ (WebCore::GraphicsContext::strokeArc):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::strokeRect):
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::ImageBuffer::~ImageBuffer):
+ (WebCore::ImageBuffer::copyImage):
+ (WebCore::ImageBuffer::draw):
+ (WebCore::ImageBuffer::drawPattern):
+ (WebCore::ImageBuffer::getUnmultipliedImageData):
+ (WebCore::ImageBuffer::getPremultipliedImageData):
+ (WebCore::ImageBuffer::putUnmultipliedImageData):
+ (WebCore::ImageBuffer::putPremultipliedImageData):
+ (WebCore::ImageBuffer::toDataURL):
+ * platform/graphics/skia/ImageSkia.cpp:
+ (WebCore::BitmapImage::draw):
+ (WebCore::BitmapImageSingleFrameSkia::draw):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::clipPathAntiAliased):
+ (WebCore::PlatformContextSkia::setGraphicsContext3D):
+ * platform/graphics/skia/PlatformContextSkia.h:
+ * platform/graphics/skia/SkiaFontWin.cpp:
+ (WebCore::paintSkiaText):
+
+2011-09-15 Peter Beverloo <peter@chromium.org>
+
+ [Chromium] Make sure that the ARM NEON files build with -marm
+ https://bugs.webkit.org/show_bug.cgi?id=68088
+
+ Simply adding the -marm cflag for OS=Android compiles results in it
+ being overridden by an -mthumb cflag later in the project generating
+ process. Therefore we should explicitly exclude -mthumb.
+
+ Reviewed by Tony Gentilcore.
+
+ * WebCore.gyp/WebCore.gyp:
+
+2011-09-15 Keishi Hattori <keishi@webkit.org>
+
+ [chromium] Build fix: Remove use of GraphicsContext::setIsAcceleratedContext
+
+ r95174 introduced GraphicsContext::setIsAcceleratedContext into Skia code and caused chromium builds to fail.
+
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+
+2011-09-15 Yuta Kitamura <yutak@chromium.org>
+
+ ThreadableWebSocketChannelClientWrapper shouldn't have a String in it.
+ https://bugs.webkit.org/show_bug.cgi?id=67908
+
+ Reviewed by David Levin.
+
+ Replace a String member variable in ThreadableWebSocketChannelClientWrapper with Vector<UChar>.
+
+ ThreadableWebSocketChannelClientWrapper is derived from ThreadSafeRefCounted. It may be
+ destroyed on different threads, which will affect String's refcounting. Therefore, classes
+ derived from ThreadSafeRefCounted must not have a String member variable.
+
+ No change in functionality, thus no new tests. WebSocket worker tests
+ (tests under http/tests/websocket/tests/{hixie76,hybi}/workers/) should keep passing.
+
+ * websockets/ThreadableWebSocketChannelClientWrapper.cpp:
+ (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
+ (WebCore::ThreadableWebSocketChannelClientWrapper::subprotocol):
+ Create a String from Vector<UChar>. Note that String constructor taking an empty vector returns
+ a null string, not an empty string. We want an empty string in that case, so I had to add
+ special-case handling for an empty vector.
+ (WebCore::ThreadableWebSocketChannelClientWrapper::setSubprotocol):
+ Copy the content of the given String into Vector.
+ * websockets/ThreadableWebSocketChannelClientWrapper.h:
+
+2011-09-14 Matthew Delaney <mdelaney@apple.com>
+
+ Use isAcceleratedContext() on the GraphicsContext instead of flags in ImageBuffer
+ https://bugs.webkit.org/show_bug.cgi?id=68137
+
+ Reviewed by Simon Fraser.
+
+ No new tests. No change in behavior.
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::isAccelerated): Have all just query the context directly.
+ (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere): just use isAccelerated directly
+ * platform/graphics/ImageBuffer.h:
+ * platform/graphics/cg/ImageBufferCG.cpp:
+ (WebCore::ImageBuffer::ImageBuffer): Set isAcceleratedContext on the GraphicsContext instead of carrying the
+ bit around on the ImageBuffer itself.
+ (WebCore::ImageBuffer::copyNativeImage): Update the check. Same for all below...
+ (WebCore::ImageBuffer::drawPattern):
+ (WebCore::ImageBuffer::getUnmultipliedImageData):
+ (WebCore::ImageBuffer::getPremultipliedImageData):
+ (WebCore::ImageBuffer::putUnmultipliedImageData):
+ (WebCore::ImageBuffer::putPremultipliedImageData):
+ * platform/graphics/skia/ImageBufferSkia.cpp: Set isAcceleratedContext on the GraphicsContext instead of carrying the
+ bit around on the ImageBuffer itself.
+ (WebCore::ImageBuffer::ImageBuffer): Remove m_acceleratesRendering flag and getter.
+
+2011-09-14 Jeffrey Pfau <jeffrey@endrift.com>
+
+ libxml2 fragment parser loses prefix namespaces
+ https://bugs.webkit.org/show_bug.cgi?id=66423
+
+ This makes the loop over the elements outside of the context actually update the element it's processing.
+
+ Reviewed by Eric Seidel.
+
+ Test: fast/parser/innerhtml-with-prefixed-elements.xhtml
+
+ * xml/parser/XMLDocumentParserLibxml2.cpp:
+ (WebCore::XMLDocumentParser::XMLDocumentParser):
+
+2011-09-14 Nate Chapin <japhet@chromium.org>
+
+ [V8] Null-check the v8::Context in
+ V8DOMWindowShell:namedItemAdded() before using it.
+ Also, add some logging to figure out how we're getting
+ into this bad state.
+ https://bugs.webkit.org/show_bug.cgi?id=68099
+
+ Reviewed by Adam Barth.
+
+ No new tests, no known repro.
+
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::V8DOMWindowShell::namedItemAdded):
+
+2011-09-14 Patrick Gansterer <paroga@webkit.org>
+
+ Replace ENABLE_XHR_RESPONSE_BLOB preprocessor statements in IDL files with Conditional attribute
+ https://bugs.webkit.org/show_bug.cgi?id=64960
+
+ Reviewed by Ryosuke Niwa.
+
+ * xml/XMLHttpRequest.idl:
+
+2011-09-14 Alexei Svitkine <asvitkine@chromium.org>
+
+ Chromium: Add a layer for rubber-band overhang painting to the hardware path.
+ https://bugs.webkit.org/show_bug.cgi?id=66969
+
+ Also, add layout tests for rubber-band overhang drawing for compositing path.
+
+ Reviewed by James Robinson.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::layerForOverhangAreas):
+ * page/FrameView.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::scrollContents):
+ (WebCore::ScrollView::wheelEvent):
+ * platform/ScrollView.h:
+ * platform/ScrollableArea.h:
+ (WebCore::ScrollableArea::layerForOverhangAreas):
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::frameViewDidChangeSize):
+ (WebCore::RenderLayerCompositor::paintContents):
+ (WebCore::RenderLayerCompositor::updateOverflowControlsLayers):
+ (WebCore::RenderLayerCompositor::destroyRootLayer):
+ * rendering/RenderLayerCompositor.h:
+ (WebCore::RenderLayerCompositor::layerForOverhangAreas):
+
+2011-09-14 Antoine Labour <piman@chromium.org>
+
+ Remove the dependency on GraphicsLayer from CCLayerTreeHost.
+ Move root layer management into the NonCompositedContentHost.
+ Have WebViewImpl create a NonCompositedContentHost explicitly.
+ https://bugs.webkit.org/show_bug.cgi?id=67883
+
+ Reviewed by James Robinson.
+
+ Covered by compositing/ layout tests.
+
+ * platform/graphics/chromium/NonCompositedContentHost.cpp:
+ (WebCore::NonCompositedContentHost::setRootLayer):
+ (WebCore::NonCompositedContentHost::setViewport):
+ (WebCore::NonCompositedContentHost::setVisible):
+ (WebCore::NonCompositedContentHost::clearRenderSurfacesRecursive):
+ (WebCore::NonCompositedContentHost::invalidateRect):
+ * platform/graphics/chromium/NonCompositedContentHost.h:
+ (WebCore::NonCompositedContentHost::topLevelRootLayer):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::create):
+ (WebCore::CCLayerTreeHost::CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::initialize):
+ (WebCore::CCLayerTreeHost::commitTo):
+ (WebCore::CCLayerTreeHost::didRecreateGraphicsContext):
+ (WebCore::CCLayerTreeHost::setViewport):
+ (WebCore::CCLayerTreeHost::setVisible):
+ (WebCore::CCLayerTreeHost::updateLayers):
+ (WebCore::CCLayerTreeHost::paintLayerContents):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ (WebCore::CCLayerTreeHost::rootLayer):
+
+2011-09-14 Henrik Grunell <grunell@google.com>
+
+ MediaStream API: Change PeerConnection constructor name to webkitPeerConnection
+ https://bugs.webkit.org/show_bug.cgi?id=67843
+
+ Reviewed by Tony Gentilcore.
+
+ Tests for the MediaStream API will be provided by the bug 56587, pending enough landed code.
+
+ * bindings/generic/RuntimeEnabledFeatures.h:
+ (WebCore::RuntimeEnabledFeatures::webkitPeerConnectionEnabled):
+ * page/DOMWindow.idl:
+
+2011-09-14 John Bauman <jbauman@chromium.org>
+
+ Make sure to GC decoded images that are only used with WebGL
+ https://bugs.webkit.org/show_bug.cgi?id=67899
+
+ Reviewed by James Robinson.
+
+ Tell CachedImage that the WebGL image was drawn so WebGL-only
+ content will have decoded images collected.
+
+ * platform/graphics/GraphicsContext3D.cpp:
+ (WebCore::GraphicsContext3D::extractImageData):
+
+2011-09-14 Antoine Labour <piman@chromium.org>
+
+ Added a pure virtual class CCLayerDelegate which helps to isolate
+ the chromium compositor from the rest of WebCore, and aids unit
+ testing by being easily mockable. The compositor layers no longer
+ directly see instances of GraphicsLayerChromium, instead they use
+ this interface.
+ https://bugs.webkit.org/show_bug.cgi?id=67750
+
+ Reviewed by James Robinson.
+
+ No new tests: changes already covered by existing compositing layout
+ tests.
+
+ * platform/graphics/chromium/CanvasLayerChromium.cpp:
+ (WebCore::CanvasLayerChromium::CanvasLayerChromium):
+ * platform/graphics/chromium/CanvasLayerChromium.h:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerPainter::create):
+ (WebCore::ContentLayerPainter::paint):
+ (WebCore::ContentLayerPainter::ContentLayerPainter):
+ (WebCore::ContentLayerChromium::create):
+ (WebCore::ContentLayerChromium::ContentLayerChromium):
+ (WebCore::ContentLayerChromium::drawsContent):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/GraphicsLayerChromium.cpp:
+ (WebCore::GraphicsLayerChromium::getDrawsContent):
+ (WebCore::GraphicsLayerChromium::getPreserves3D):
+ (WebCore::GraphicsLayerChromium::paintingGoesToWindow):
+ (WebCore::GraphicsLayerChromium::doPaintGraphicsLayerContents):
+ (WebCore::GraphicsLayerChromium::notifySyncRequired):
+ * platform/graphics/chromium/GraphicsLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::create):
+ (WebCore::ImageLayerChromium::ImageLayerChromium):
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::create):
+ (WebCore::LayerChromium::LayerChromium):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::CCLayerDelegate::~CCLayerDelegate):
+ (WebCore::LayerChromium::preserves3D):
+ (WebCore::LayerChromium::setOwner):
+ * platform/graphics/chromium/PluginLayerChromium.cpp:
+ (WebCore::PluginLayerChromium::create):
+ (WebCore::PluginLayerChromium::PluginLayerChromium):
+ * platform/graphics/chromium/PluginLayerChromium.h:
+ * platform/graphics/chromium/TiledLayerChromium.cpp:
+ (WebCore::TiledLayerChromium::TiledLayerChromium):
+ * platform/graphics/chromium/TiledLayerChromium.h:
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::create):
+ (WebCore::VideoLayerChromium::VideoLayerChromium):
+ (WebCore::VideoLayerChromium::updateCompositorResources):
+ * platform/graphics/chromium/VideoLayerChromium.h:
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::create):
+ (WebCore::WebGLLayerChromium::WebGLLayerChromium):
+ * platform/graphics/chromium/WebGLLayerChromium.h:
+
+2011-09-14 Anders Carlsson <andersca@apple.com>
+
+ Try to fix GTK+ build.
+
+ * GNUmakefile.list.am:
+
+2011-09-14 James Robinson <jamesr@chromium.org>
+
+ [chromium] LayerRendererChromium shouldn't be RefCounted
+ https://bugs.webkit.org/show_bug.cgi?id=68121
+
+ Reviewed by Kenneth Russell.
+
+ LayerRendererChromium is owned exclusively by CCLayerTreeHostImpl, so there's no reason to have it be
+ refcounted. Making it an OwnPtr<> makes the lifecycle for these objects much cleaner and reduces the chance of
+ introducing accidental reference cycles. This also removes the LayerRendererChromium pointers from CCLayerImpls
+ since it only needed at draw time.
+
+ Covered by compositing/ tests.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::create):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::copyOffscreenTextureToDisplay):
+ (WebCore::LayerRendererChromium::useRenderSurface):
+ (WebCore::LayerRendererChromium::drawLayer):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
+ (WebCore::CCCanvasLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ (WebCore::CCLayerImpl::CCLayerImpl):
+ (WebCore::CCLayerImpl::draw):
+ (WebCore::CCLayerImpl::bindContentsTexture):
+ (WebCore::CCLayerImpl::drawDebugBorder):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
+ * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
+ (WebCore::CCPluginLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
+ * platform/graphics/chromium/cc/CCRenderSurface.cpp:
+ (WebCore::CCRenderSurface::cleanupResources):
+ (WebCore::CCRenderSurface::prepareContentsTexture):
+ (WebCore::CCRenderSurface::draw):
+ (WebCore::CCRenderSurface::drawLayer):
+ (WebCore::CCRenderSurface::drawSurface):
+ * platform/graphics/chromium/cc/CCRenderSurface.h:
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
+ (WebCore::CCTiledLayerImpl::bindContentsTexture):
+ (WebCore::CCTiledLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
+ * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
+ (WebCore::CCVideoLayerImpl::draw):
+ (WebCore::CCVideoLayerImpl::drawYUV):
+ (WebCore::CCVideoLayerImpl::drawRGBA):
+ * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
+
+2011-09-14 Anders Carlsson <andersca@apple.com>
+
+ Get rid of WebCoreViewFactory and its WebViewFactory subclass
+ https://bugs.webkit.org/show_bug.cgi?id=68124
+
+ Reviewed by Sam Weinig.
+
+ * WebCore.exp.in:
+ * WebCore.xcodeproj/project.pbxproj:
+ * editing/mac/FrameSelectionMac.mm:
+ * page/mac/FrameMac.mm:
+ * page/mac/WebCoreViewFactory.h: Removed.
+ * page/mac/WebCoreViewFactory.m: Removed.
+
+2011-09-14 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=52736
+
+ Tiles were not being properly centered within border image sides for the "repeat"
+ keyword. This patch fixes the buggy math behind the pattern tiling to actually get
+ the initial phases correct.
+
+ Reviewed by Sam Weinig.
+
+ Added new tests in fast/borders and updated broken existing tests.
+
+ * platform/graphics/Image.cpp:
+ (WebCore::Image::drawTiled):
+
+2011-09-14 Anders Carlsson <andersca@apple.com>
+
+ Remove DocTypeStrings.gperf
+ https://bugs.webkit.org/show_bug.cgi?id=68119
+
+ Reviewed by Sam Weinig.
+
+ * CMakeLists.txt:
+ * CodeGenerators.pri:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/DocTypeStrings.gperf: Removed.
+ * make-hash-tools.pl:
+ * platform/HashTools.h:
+
+2011-09-14 Chris Rogers <crogers@google.com>
+
+ Address lifetime issues in OfflineAudioDestinationNode (take 2)
+ https://bugs.webkit.org/show_bug.cgi?id=68111
+
+ Reviewed by Kenneth Russell.
+
+ No new tests. This fixes existing layout tests.
+
+ * webaudio/OfflineAudioDestinationNode.cpp:
+ (WebCore::OfflineAudioDestinationNode::OfflineAudioDestinationNode):
+ (WebCore::OfflineAudioDestinationNode::~OfflineAudioDestinationNode):
+ (WebCore::OfflineAudioDestinationNode::startRendering):
+ (WebCore::OfflineAudioDestinationNode::render):
+
+2011-09-14 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=68103
+
+ Centered portions of border images don't render correctly. Make the tile scale factor have to be
+ explicitly passed in and modify paintNinePieceImage to compute it for all sides. The attempts to
+ implicitly compute the scale for the pattern based off the source and destination rects just don't
+ work, since the center image rects don't provide the right information to be able to infer the
+ scale factor.
+
+ Reviewed by Sam Weinig.
+
+ Reset all the existing fast/borders pixel results to Lion for these changes.
+
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::drawTiledImage):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/Image.cpp:
+ (WebCore::Image::drawTiled):
+ * platform/graphics/Image.h:
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paintNinePieceImage):
+
+2011-09-14 Anders Carlsson <andersca@apple.com>
+
+ Get rid of ResourceHandle::bufferedData()
+ https://bugs.webkit.org/show_bug.cgi?id=68112
+
+ Reviewed by David Hyatt.
+
+ ResourceHandle::bufferedData() was only implemented on Mac, and the support in the underlying
+ NSURLConnection class hasn't been there for several OS releases.
+
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::resourceData):
+ (WebCore::ResourceLoader::addData):
+ * platform/network/ResourceHandle.h:
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ * platform/network/curl/ResourceHandleCurl.cpp:
+ * platform/network/mac/ResourceHandleMac.mm:
+ * platform/network/qt/ResourceHandleQt.cpp:
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ * platform/network/win/ResourceHandleWin.cpp:
+
+2011-09-14 Mark Hahnenberg <mhahnenberg@apple.com>
+
+ REGRESSION: r95108 broke Qt Linux tests
+ https://bugs.webkit.org/show_bug.cgi?id=68104
+
+ Reviewed by Csaba Osztrogonác.
+
+ No new tests.
+
+ Build fix for Qt tests broken in r95108.
+
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
+ (JSC::Bindings::QtRuntimeMetaMethod::QtRuntimeMetaMethod):
+ (JSC::Bindings::QtRuntimeConnectionMethod::QtRuntimeConnectionMethod):
+ * bridge/qt/qt_runtime.h:
+
+2011-09-14 James Robinson <jamesr@chromium.org>
+
+ [skia] fast/canvas/setWidthResetAfterForcedRender is flaky
+ https://bugs.webkit.org/show_bug.cgi?id=67955
+
+ Reviewed by Stephen White.
+
+ When destroying an ImageBuffer due to a canvas resize, we weren't clearing the texture ID on the layer,
+ resulting in future compositor draw calls binding an invalid texture. This results in the test failing and
+ possibly drawing from a bad texture.
+
+ Covered by fast/canvas/setWidthResetAfterForcedRender.html in the GPU configuration.
+
+ * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
+ (WebCore::Canvas2DLayerChromium::drawsContent)
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::~ImageBuffer):
+
+2011-09-14 Eric Seidel <eric@webkit.org>
+
+ Remove ENABLE_SVG_USE as <use> is required by HTML5
+ https://bugs.webkit.org/show_bug.cgi?id=68019
+
+ Reviewed by Ryosuke Niwa.
+
+ I missed a couple uses of SVG_USE in my previous patch.
+
+ * dom/DOMImplementation.cpp:
+ (WebCore::isSVG10Feature):
+ (WebCore::isSVG11Feature):
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
+ * svg/SVGUseElement.h:
+
+2011-09-14 Mark Hahnenberg <mhahnenberg@apple.com>
+
+ Unzip initialization lists and constructors in JSCell hierarchy (6/7)
+ https://bugs.webkit.org/show_bug.cgi?id=67692
+
+ Reviewed by Geoffrey Garen.
+
+ No new tests.
+
+ Completed the sixth level of the refactoring to add finishCreation()
+ methods to all classes within the JSCell hierarchy with non-trivial
+ constructor bodies.
+
+ This primarily consists of pushing the calls to finishCreation() down
+ into the constructors of the subclasses of the fifth level of the hierarchy
+ as well as pulling the finishCreation() calls out into the class's corresponding
+ create() method if it has one. Doing both simultaneously allows us to
+ maintain the invariant that the finishCreation() method chain is called exactly
+ once during the creation of an object, since calling it any other number of
+ times (0, 2, or more) will cause an assertion failure.
+
+ * WebCore.exp.in:
+ * bindings/js/JSDOMBinding.h:
+ (WebCore::DOMConstructorObject::DOMConstructorObject):
+ (WebCore::DOMConstructorWithDocument::DOMConstructorWithDocument):
+ (WebCore::DOMConstructorWithDocument::finishCreation):
+ * bindings/js/JSDOMGlobalObject.cpp:
+ (WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
+ * bindings/js/JSDOMGlobalObject.h:
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::JSDOMWindowBase):
+ (WebCore::JSDOMWindowBase::finishCreation):
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSWorkerContextBase.cpp:
+ (WebCore::JSWorkerContextBase::JSWorkerContextBase):
+ (WebCore::JSWorkerContextBase::finishCreation):
+ * bindings/js/JSWorkerContextBase.h:
+ * bindings/scripts/CodeGeneratorJS.pm:
+
+ Added a finishCreation declaration and Moved the finishCreation call into the
+ create method for all classes except for subclasses of JSWorkerContextBase and
+ JSDOMWindowBase because those classes are on the next level, and it's easier
+ to do all of these classes in one fell swoop rather than level by level.
+ (GenerateHeader):
+ Added the implementation of the finishCreation method for the classes described above.
+ (GenerateImplementation):
+ Also added the finishCreation calls to the autogenerated DOM constructor classes.
+ (GenerateConstructorDeclaration):
+ (GenerateConstructorDefinition):
+
+ * bindings/scripts/test/JS/JSTestInterface.cpp:
+ (WebCore::JSTestInterfaceConstructor::create):
+ (WebCore::JSTestInterfaceConstructor::JSTestInterfaceConstructor):
+ (WebCore::JSTestInterfaceConstructor::finishCreation):
+ (WebCore::JSTestInterface::JSTestInterface):
+ (WebCore::JSTestInterface::finishCreation):
+ * bindings/scripts/test/JS/JSTestInterface.h:
+ (WebCore::JSTestInterface::create):
+ (WebCore::JSTestInterfacePrototype::create):
+ (WebCore::JSTestInterfacePrototype::JSTestInterfacePrototype):
+ * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
+ (WebCore::JSTestMediaQueryListListenerConstructor::create):
+ (WebCore::JSTestMediaQueryListListenerConstructor::JSTestMediaQueryListListenerConstructor):
+ (WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):
+ (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
+ (WebCore::JSTestMediaQueryListListener::finishCreation):
+ * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
+ (WebCore::JSTestMediaQueryListListener::create):
+ (WebCore::JSTestMediaQueryListListenerPrototype::create):
+ (WebCore::JSTestMediaQueryListListenerPrototype::JSTestMediaQueryListListenerPrototype):
+ * bindings/scripts/test/JS/JSTestObj.cpp:
+ (WebCore::JSTestObjConstructor::create):
+ (WebCore::JSTestObjConstructor::JSTestObjConstructor):
+ (WebCore::JSTestObjConstructor::finishCreation):
+ (WebCore::JSTestObj::JSTestObj):
+ (WebCore::JSTestObj::finishCreation):
+ * bindings/scripts/test/JS/JSTestObj.h:
+ (WebCore::JSTestObj::create):
+ (WebCore::JSTestObjPrototype::create):
+ (WebCore::JSTestObjPrototype::JSTestObjPrototype):
+ * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
+ (WebCore::JSTestSerializedScriptValueInterfaceConstructor::create):
+ (WebCore::JSTestSerializedScriptValueInterfaceConstructor::JSTestSerializedScriptValueInterfaceConstructor):
+ (WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):
+ (WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
+ (WebCore::JSTestSerializedScriptValueInterface::finishCreation):
+ * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
+ (WebCore::JSTestSerializedScriptValueInterface::create):
+ (WebCore::JSTestSerializedScriptValueInterfacePrototype::create):
+ (WebCore::JSTestSerializedScriptValueInterfacePrototype::JSTestSerializedScriptValueInterfacePrototype):
+ * bridge/c/CRuntimeObject.cpp:
+ (JSC::Bindings::CRuntimeObject::CRuntimeObject):
+ * bridge/c/CRuntimeObject.h:
+ (JSC::Bindings::CRuntimeObject::create):
+ * bridge/c/c_instance.cpp:
+ (JSC::Bindings::CRuntimeMethod::CRuntimeMethod):
+ (JSC::Bindings::CRuntimeMethod::finishCreation):
+ * bridge/jni/jsc/JavaInstanceJSC.cpp:
+ (JavaRuntimeMethod::JavaRuntimeMethod):
+ (JavaRuntimeMethod::finishCreation):
+ * bridge/jni/jsc/JavaRuntimeObject.cpp:
+ (JSC::Bindings::JavaRuntimeObject::JavaRuntimeObject):
+ * bridge/jni/jsc/JavaRuntimeObject.h:
+ (JSC::Bindings::JavaRuntimeObject::create):
+ * bridge/objc/ObjCRuntimeObject.h:
+ (JSC::Bindings::ObjCRuntimeObject::create):
+ * bridge/objc/ObjCRuntimeObject.mm:
+ (JSC::Bindings::ObjCRuntimeObject::ObjCRuntimeObject):
+ * bridge/objc/objc_instance.mm:
+ (ObjCRuntimeMethod::ObjCRuntimeMethod):
+ (ObjCRuntimeMethod::finishCreation):
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtRuntimeObject::create):
+ (JSC::Bindings::QtRuntimeObject::QtRuntimeObject):
+ * bridge/qt/qt_pixmapruntime.cpp:
+ (JSC::Bindings::QtPixmapRuntimeObject::create):
+ (JSC::Bindings::QtPixmapRuntimeObject::QtPixmapRuntimeObject):
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
+ (JSC::Bindings::QtRuntimeMetaMethod::QtRuntimeMetaMethod):
+ (JSC::Bindings::QtRuntimeMetaMethod::finishCreation):
+ (JSC::Bindings::QtRuntimeConnectionMethod::QtRuntimeConnectionMethod):
+ (JSC::Bindings::QtRuntimeConnectionMethod::finishCreation):
+ * bridge/qt/qt_runtime.h:
+ (JSC::Bindings::QtRuntimeMetaMethod::create):
+ * bridge/runtime_method.cpp:
+ (JSC::RuntimeMethod::RuntimeMethod):
+ * bridge/runtime_method.h:
+ (JSC::RuntimeMethod::create):
+
+2011-09-13 Eric Seidel <eric@webkit.org>
+
+ Remove ENABLE_SVG_USE as <use> is required by HTML5
+ https://bugs.webkit.org/show_bug.cgi?id=68019
+
+ Reviewed by Ryosuke Niwa.
+
+ * Configurations/FeatureDefines.xcconfig:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * features.pri:
+
+2011-09-14 Eric Carlson <eric.carlson@apple.com>
+
+ MediaPlayerPrivateAVFoundationObjC's "periodic time observer" is unnecessary
+ https://bugs.webkit.org/show_bug.cgi?id=68056
+
+ MediaPlayerPrivateAVFoundationObjC creates a "periodic time observer" not because it wants
+ periodic callbacks, but because a time observer also fires whenever a seek completes. This is
+ no longer necessary because it now uses but AVPlayerItem's
+ -seekToTime:toleranceBefore:toleranceAfter:completionHandler to seek, so seek completions are
+ always notified.
+
+ Reviewed by Darin Adler.
+
+ No new tests, code removed is tested by existing tests.
+
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
+ (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer):
+
+2011-09-14 Beth Dakin <bdakin@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=68054
+ Return an image scale factor as well as an Image* from CachedImage::brokenImage()
+
+ Reviewed by Darin Adler.
+
+ CachedImage::brokenImage() now returns a pair<Image*, float> where the float
+ represents the image's scale factor. This is important because currently, the
+ broken image will either be only 1x or 2x, but a deviceScaleFactor could
+ theoretically be something different (1.5, 3, etc). So it is not safe to assume
+ that the image's scale factor is equivalent to the deviceScaleFactor, and
+ hardcoding 2 for now is lame.
+ * loader/cache/CachedImage.cpp:
+ (WebCore::CachedImage::brokenImage):
+ (WebCore::CachedImage::image):
+ * loader/cache/CachedImage.h:
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::imageSizeForError):
+ (WebCore::RenderImage::paintReplaced):
+
+2011-09-14 James Robinson <jamesr@chromium.org>
+
+ [chromium] Move contents texture manager from LayerRendererChromium to CCLayerTreeHost
+ https://bugs.webkit.org/show_bug.cgi?id=67440
+
+ Reviewed by Kenneth Russell.
+
+ This moves the contents TextureManager over to the CCLayerTreeHost, where it belongs, and adds in a commit path
+ to make sure that textures are deleted even if the page is not visible. This move also removed the need for
+ LayerRendererChromium's CCLayerTreeHost pointer, so I removed that as well. That meant moving the
+ layerTreeAsText() logic over to the CCLayerImpl side, which is where it really belonged anyway.
+
+ Covered by existing compositing/ tests and
+ platform/chromium/compositor/lost-compositor-context-with-rendersurface.html
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::releaseRenderSurfaceTextures):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::initializeSharedObjects):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::setContentsTextureMemoryUseBytes):
+ * platform/graphics/chromium/TextureManager.cpp:
+ (WebCore::TextureManager::highLimitBytes):
+ (WebCore::TextureManager::reclaimLimitBytes):
+ (WebCore::TextureManager::lowLimitBytes):
+ * platform/graphics/chromium/TextureManager.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::initialize):
+ (WebCore::CCLayerTreeHost::~CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::deleteContentsTextures):
+ (WebCore::CCLayerTreeHost::commitTo):
+ (WebCore::CCLayerTreeHost::setVisible):
+ (WebCore::CCLayerTreeHost::contentsTextureManager):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::setVisible):
+ * platform/graphics/chromium/cc/CCProxy.h:
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
- (WebCore::CCSingleThreadProxy::compositeAndReadback):
- (WebCore::CCSingleThreadProxy::compositeImmediately):
- (WebCore::CCSingleThreadProxy::commitIfNeeded):
+ (WebCore::CCSingleThreadProxy::setNeedsCommit):
+ (WebCore::CCSingleThreadProxy::stop):
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
+ * platform/graphics/chromium/cc/CCThreadProxy.cpp:
+ (WebCore::CCThreadProxy::setNeedsCommit):
+ (WebCore::CCThreadProxy::setNeedsCommitOnCCThread):
+ (WebCore::CCThreadProxy::layerTreeHostClosedOnCCThread):
+ * platform/graphics/chromium/cc/CCThreadProxy.h:
+2011-09-14 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=68040
+
+ Make sure border image sub-properties can be specified in any order.
+
+ Reviewed by Beth Dakin.
+
+ New tests in fast/borders.
+
+ * css/CSSParser.cpp:
+ (WebCore::BorderImageParseContext::BorderImageParseContext):
+ (WebCore::BorderImageParseContext::canAdvance):
+ (WebCore::BorderImageParseContext::setCanAdvance):
+ (WebCore::BorderImageParseContext::allowCommit):
+ (WebCore::BorderImageParseContext::allowImage):
+ (WebCore::BorderImageParseContext::allowImageSlice):
+ (WebCore::BorderImageParseContext::allowSlash):
+ (WebCore::BorderImageParseContext::requireWidth):
+ (WebCore::BorderImageParseContext::requireOutset):
+ (WebCore::BorderImageParseContext::commitImage):
+ (WebCore::BorderImageParseContext::commitImageSlice):
+ (WebCore::BorderImageParseContext::commitSlash):
+ (WebCore::BorderImageParseContext::commitBorderWidth):
+ (WebCore::BorderImageParseContext::commitBorderOutset):
+ (WebCore::BorderImageParseContext::commitRepeat):
+ (WebCore::CSSParser::parseBorderImage):
+ (WebCore::CSSParser::parseBorderImageRepeat):
+ (WebCore::CSSParser::parseBorderImageSlice):
+ (WebCore::CSSParser::parseBorderImageQuad):
+ * css/CSSParserValues.h:
+ (WebCore::CSSParserValueList::previous):
+
+2011-09-14 Mike Reed <reed@google.com>
+
+ query SystemParametersInfo for GDI font smoothing settings
+ https://bugs.webkit.org/show_bug.cgi?id=68080
+
+ Reviewed by Stephen White.
+
+ No new tests. fixes antialiasing issues based on User settings
+
+ * platform/graphics/skia/SkiaFontWin.cpp:
+ (WebCore::getDefaultGDITextFlags):
+ (WebCore::setupPaintForFont):
+
+2011-09-13 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=68050
+
+ Regressions in some layout tests from making border/mask/reflection nine-piece-image
+ parsing match the spec, which allows any of the pieces to be omitted and to also be
+ specifiable in any order.
+
+ When the higher level code suddenly allowed the image slices to be omitted, the fixup
+ for legacy compatibility for reflections and masks in the parseBorderImageSlice function
+ no longer happened because that function no longer got called.
+
+ The fix is to properly set the defaults to include the "fill" keyword, so the fixup is
+ applied to the NinePieceImages you create before you ever map anything in from the rules.
+
+ This also has the side effect of fixing -webkit-max-box-image-slice to actually dump as
+ "0 fill" instead of just "0", which is the correct initial value for this property.
+
+ Reviewed by Adam Roben.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseBorderImageSlice):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * rendering/style/StyleRareNonInheritedData.cpp:
+ (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
+ * rendering/style/StyleReflection.h:
+ (WebCore::StyleReflection::StyleReflection):
+
+2011-09-13 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: InspectorInstrumentation::frameDestroyed is called after m_page has been reset.
+ https://bugs.webkit.org/show_bug.cgi?id=67997
+
+ We should not instrument frameDestroyed event from within Frame's destructor
+ since frame's m_page pointer is likely to be 0 by that time and appropriate
+ instrumenting agent won't be found. As a result, stale frame with its id
+ end up in the inspector.
+
+ This change wipes out frame binding from the inspector upon detach rather
+ than destroy.
+
+ Reviewed by Tony Gentilcore.
+
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::frameDetachedImpl):
+ * inspector/InspectorInstrumentation.h:
+ * inspector/InspectorPageAgent.cpp:
+ (WebCore::InspectorPageAgent::frameDetached):
+ * inspector/InspectorPageAgent.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::detachFromParent):
+ * page/Frame.cpp:
+ (WebCore::Frame::~Frame):
+ (WebCore::Frame::detachFromPage):
+ * page/Frame.h:
+
+2011-09-14 Pavel Feldman <pfeldman@google.com>
+
+ Not reviewed: rolling out r95089.
+
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::frameDestroyedImpl):
+ (WebCore::InspectorInstrumentation::instrumentingAgentsForPage):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::frameWindowDiscarded):
+ (WebCore::InspectorInstrumentation::domContentLoadedEventFired):
+ (WebCore::InspectorInstrumentation::loadEventFired):
+ (WebCore::InspectorInstrumentation::didCommitLoad):
+ (WebCore::InspectorInstrumentation::frameDestroyed):
+ * inspector/InspectorPageAgent.cpp:
+ (WebCore::InspectorPageAgent::frameDetached):
+ (WebCore::InspectorPageAgent::frameDestroyed):
+ * inspector/InspectorPageAgent.h:
+ * page/Frame.cpp:
+ (WebCore::Frame::~Frame):
+
+2011-09-14 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: requestAnimationFrame callbacks don't show up in the timeline panel.
+ https://bugs.webkit.org/show_bug.cgi?id=67986
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/timeline/timeline-animation-frame.html
+
+ * English.lproj/localizedStrings.js:
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::callFunction):
+ (WebCore::V8Proxy::callFunctionWithoutFrame):
+ (WebCore::V8Proxy::instrumentedCallFunction):
+ * bindings/v8/V8Proxy.h:
+ * bindings/v8/custom/V8CustomVoidCallback.cpp:
+ (WebCore::invokeCallback):
+ * dom/ScriptedAnimationController.cpp:
+ (WebCore::ScriptedAnimationController::registerCallback):
+ (WebCore::ScriptedAnimationController::cancelCallback):
+ (WebCore::ScriptedAnimationController::serviceScriptedAnimations):
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallbackImpl):
+ (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallbackImpl):
+ (WebCore::InspectorInstrumentation::willFireAnimationFrameEventImpl):
+ (WebCore::InspectorInstrumentation::didFireAnimationFrameEventImpl):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::willCallFunction):
+ (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallback):
+ (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallback):
+ (WebCore::InspectorInstrumentation::willFireAnimationFrameEvent):
+ (WebCore::InspectorInstrumentation::didFireAnimationFrameEvent):
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::didRegisterAnimationFrameCallback):
+ (WebCore::InspectorTimelineAgent::didCancelAnimationFrameCallback):
+ (WebCore::InspectorTimelineAgent::willFireAnimationFrameEvent):
+ (WebCore::InspectorTimelineAgent::didFireAnimationFrameEvent):
+ * inspector/InspectorTimelineAgent.h:
+ * inspector/TimelineRecordFactory.cpp:
+ (WebCore::TimelineRecordFactory::createAnimationFrameCallbackData):
+ * inspector/TimelineRecordFactory.h:
+ * inspector/front-end/TimelineAgent.js:
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel):
+ (WebInspector.TimelinePanel.prototype.get _recordStyles):
+ (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
+ (WebInspector.TimelinePanel.prototype._clearPanel):
+ (WebInspector.TimelinePanel.FormattedRecord):
+ (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
+ (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
+
+2011-09-13 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: InspectorInstrumentation::frameDestroyed is called after m_page has been reset.
+ https://bugs.webkit.org/show_bug.cgi?id=67997
+
+ We should not instrument frameDestroyed event from within Frame's destructor
+ since frame's m_page pointer is likely to be 0 by that time and appropriate
+ instrumenting agent won't be found. As a result, stale frame with its id
+ end up in the inspector.
+
+ This change wipes out frame binding from the inspector upon detach rather
+ than destroy + adds an assertion into the inspector agents lookup with 0 page.
+
+ Reviewed by Tony Gentilcore.
+
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::frameDetachedImpl):
+ (WebCore::InspectorInstrumentation::instrumentingAgentsForPage):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::frameWindowDiscarded):
+ (WebCore::InspectorInstrumentation::domContentLoadedEventFired):
+ (WebCore::InspectorInstrumentation::loadEventFired):
+ (WebCore::InspectorInstrumentation::frameDetached):
+ (WebCore::InspectorInstrumentation::didCommitLoad):
+ * inspector/InspectorPageAgent.cpp:
+ (WebCore::InspectorPageAgent::frameDetached):
+ * inspector/InspectorPageAgent.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::detachFromParent):
+ * page/Frame.cpp:
+ (WebCore::Frame::~Frame):
+ (WebCore::Frame::detachFromPage):
+ (WebCore::Frame::transferChildFrameToNewDocument):
+ * page/Frame.h:
+
+2011-09-14 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r95080.
+ http://trac.webkit.org/changeset/95080
+ https://bugs.webkit.org/show_bug.cgi?id=68070
+
+ It caused some 2d.composite.uncovered tests fail (Requested by
+ rgabor on #webkit).
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::clearCanvas):
+ (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere):
+
+2011-09-13 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: [v8] building call frame info for location-less internal script function crashes.
+ https://bugs.webkit.org/show_bug.cgi?id=67991
+
+ Reviewed by Yury Semikhatsky.
+
+ Test: inspector/debugger/debugger-pause-in-internal.html
+
+ * bindings/v8/DebuggerScript.js:
+ ():
+ * bindings/v8/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::currentCallFrame):
+
+2011-09-14 Ben Wells <benwells@chromium.org>
+
+ Large canvas fills should not crash or create unnecessarily large image buffers
+ https://bugs.webkit.org/show_bug.cgi?id=67988
+
+ When using source-in, destination-in, source-out, or destination-atop a temporary
+ buffer is created. This buffer only needs to be big enough to cover the intersection
+ of the path and the canvas.
+
+ This change also adds some null checks for failures to create contexts or buffers.
+
+ Reviewed by Stephen White.
+
+ Test: fast/canvas/canvas-large-fills.html
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::clearCanvas):
+ (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere):
+
+2011-09-14 Kentaro Hara <haraken@google.com>
+
+ Implement a PageTransitionEvent constructor for JSC
+ https://bugs.webkit.org/show_bug.cgi?id=68048
+
+ Reviewed by Sam Weinig.
+
+ The spec for the PageTransitionEvent constructor is here:
+ http://www.whatwg.org/specs/web-apps/current-work/#pagetransitionevent
+
+ Test: fast/events/constructors/page-transition-event-constructor.html
+
+ * bindings/generic/EventConstructors.h: Added a definition for the PageTransitionEvent constructor.
+ * bindings/js/JSEventConstructors.cpp: Added #includes for PageTransitionEvent.
+ * dom/PageTransitionEvent.cpp:
+ (WebCore::PageTransitionEventInit::PageTransitionEventInit):
+ (WebCore::PageTransitionEvent::PageTransitionEvent):
+ (WebCore::PageTransitionEvent::initPageTransitionEvent):
+ * dom/PageTransitionEvent.h: Added a definition for PageTransitionEventInit.
+ (WebCore::PageTransitionEvent::create):
+ (WebCore::PageTransitionEvent::isPageTransitionEvent):
+ (WebCore::PageTransitionEvent::persisted):
+ * dom/PageTransitionEvent.idl: Makes PageTransitionEvent constructible.
+
+2011-09-13 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r95058.
+ http://trac.webkit.org/changeset/95058
+ https://bugs.webkit.org/show_bug.cgi?id=68058
+
+ It made css3/calc/regression-62276.html crash (Requested by
+ Ossy on #webkit).
+
+ * css/CSSParser.cpp:
+ (WebCore::BorderImageParseContext::BorderImageParseContext):
+ (WebCore::BorderImageParseContext::allowBreak):
+ (WebCore::BorderImageParseContext::allowWidth):
+ (WebCore::BorderImageParseContext::allowOutset):
+ (WebCore::BorderImageParseContext::allowRepeat):
+ (WebCore::BorderImageParseContext::commitImage):
+ (WebCore::BorderImageParseContext::commitImageSlice):
+ (WebCore::BorderImageParseContext::commitSlash):
+ (WebCore::BorderImageParseContext::commitBorderWidth):
+ (WebCore::BorderImageParseContext::commitBorderOutset):
+ (WebCore::BorderImageParseContext::commitRepeat):
+ (WebCore::CSSParser::parseBorderImage):
+ (WebCore::CSSParser::parseBorderImageRepeat):
+ (WebCore::CSSParser::parseBorderImageSlice):
+ (WebCore::CSSParser::parseBorderImageQuad):
+ * css/CSSParserValues.h:
+
+2011-09-13 Abhishek Arya <inferno@chromium.org>
+
+ Crash in RenderScrollbarPart::imageChanged.
+ https://bugs.webkit.org/show_bug.cgi?id=68009
+
+ Reviewed by Simon Fraser.
+
+ When a custom scrollbar is removed from its FrameView, its destruction
+ can be delayed because of RefPtr maintained in EventHandler class
+ (m_lastScrollbarUnderMouse). Upon removal, we delete all the scrollbar
+ parts so that they don't link back to scrollbar. However, because of the
+ delay, we can have a call to updateScrollbarPart which recreates it.
+ When scrollbar is getting destroyed, we just check to see if there are
+ remaining scrollbar parts and if yes, we destroy them.
+
+ Test: scrollbars/scrollbar-part-created-with-no-parent-crash.html
+
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::~RenderScrollbar):
+
+2011-09-13 Adam Klein <adamk@chromium.org>
+
+ Fix cssText property of counter-valued CSSPrimitiveValue and avoid uninitialized read
+ https://bugs.webkit.org/show_bug.cgi?id=68021
+
+ Reviewed by Tony Chang.
+
+ Reported by valgrind in http://crbug.com/60653.
+
+ Besides fixing the uninitialized read, add support for outputting the
+ list separator for counters() calls and the list-style name.
+
+ Test: fast/css/counters/counter-cssText.html
+
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::cssText):
+
+2011-09-13 Kenichi Ishibashi <bashi@chromium.org>
+
+ WebFont followed tiny monospace text displays weird
+ https://bugs.webkit.org/show_bug.cgi?id=67996
+
+ Reviewed by Darin Adler.
+
+ Always call wkSetCGFontRenderingMode() in Font::drawGlyphs() so that the rendering mode is set correctly.
+
+ Test: platform/mac/fast/text/webfont-after-tiny-monospace-text.html
+
+ * platform/graphics/mac/FontMac.mm:
+ (WebCore::Font::drawGlyphs):
+
+2011-09-13 Tom Sepez <tsepez@chromium.org>
+
+ Fix XSS auditor bypass when inline handlers contain comments.
+ https://bugs.webkit.org/show_bug.cgi?id=27895
+
+ Reviewed by Adam Barth.
+
+ Tests: http/tests/security/xssAuditor/property-escape-comment.html
+ http/tests/security/xssAuditor/property-escape-entity.html
+ http/tests/security/xssAuditor/property-escape-quote.html
+
+ * html/parser/XSSAuditor.cpp:
+ (WebCore::XSSAuditor::snippetForAttribute):
+
+2011-09-13 Kentaro Hara <haraken@google.com>
+
+ Implement a HashChangeEvent constructor for V8
+ https://bugs.webkit.org/show_bug.cgi?id=67969
+
+ Reviewed by Nate Chapin.
+
+ Test: fast/events/constructors/hash-change-event-constructor.html
+
+ * bindings/v8/custom/V8EventConstructors.cpp: Added the HashChangeEvent constructor.
+ * dom/HashChangeEvent.idl: Added a 'V8CustomConstructor' attribute.
+
+2011-09-13 Jeremy Apthorp <jeremya@google.com>
+
+ Fix crash when an iframe element is removed during a transition to
+ fullscreen.
+ https://bugs.webkit.org/show_bug.cgi?id=67960
+
+ Reviewed by Adam Barth.
+
+ Test: fullscreen/full-screen-remove-ancestor-during-transition.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::~Document):
+ Clear the list of elements to which we need to send a fullscreenchange
+ event.
+
+2011-09-13 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=68040
+
+ Make sure border image sub-properties can be specified in any order.
+
+ Reviewed by Beth Dakin.
+
+ New tests in fast/borders.
+
+ * css/CSSParser.cpp:
+ (WebCore::BorderImageParseContext::BorderImageParseContext):
+ (WebCore::BorderImageParseContext::canAdvance):
+ (WebCore::BorderImageParseContext::setCanAdvance):
+ (WebCore::BorderImageParseContext::allowCommit):
+ (WebCore::BorderImageParseContext::allowImage):
+ (WebCore::BorderImageParseContext::allowImageSlice):
+ (WebCore::BorderImageParseContext::allowSlash):
+ (WebCore::BorderImageParseContext::requireWidth):
+ (WebCore::BorderImageParseContext::requireOutset):
+ (WebCore::BorderImageParseContext::commitImage):
+ (WebCore::BorderImageParseContext::commitImageSlice):
+ (WebCore::BorderImageParseContext::commitSlash):
+ (WebCore::BorderImageParseContext::commitBorderWidth):
+ (WebCore::BorderImageParseContext::commitBorderOutset):
+ (WebCore::BorderImageParseContext::commitRepeat):
+ (WebCore::CSSParser::parseBorderImage):
+ (WebCore::CSSParser::parseBorderImageRepeat):
+ (WebCore::CSSParser::parseBorderImageSlice):
+ (WebCore::CSSParser::parseBorderImageQuad):
+ * css/CSSParserValues.h:
+ (WebCore::CSSParserValueList::previous):
+
+2011-09-13 Jeff Miller <jeffm@apple.com>
+
+ WebCore::Cursor::ensurePlatformCursor() should always set a valid platform cursor on Windows
+ https://bugs.webkit.org/show_bug.cgi?id=68043
+
+ Make sure we set a valid platform cursor in the Cursor::NoDrop case, and add a default
+ clause that uses the arrow cursor in case another cursor type is added in the future
+ and we forget to update ensurePlatformCursor().
+
+ Reviewed by Anders Carlsson.
+
+ * platform/win/CursorWin.cpp:
+ (WebCore::Cursor::ensurePlatformCursor): Always set a valid platform cursor.
+
+2011-09-12 Jon Honeycutt <jhoneycutt@apple.com>
+
+ MSAA: WebKit reports the document state as disabled
+ https://bugs.webkit.org/show_bug.cgi?id=67974
+ <rdar://problem/10095898>
+
+ Reviewed by Brian Weinstein.
+
+ Test: platform/win/accessibility/document-enabled-state.html
+
+ * accessibility/AccessibilityScrollView.h:
+ (WebCore::AccessibilityScrollView::isEnabled):
+ This object backs the AccessibleDocument on Windows - always return
+ true for its enabled state.
+
+2011-08-11 Cris Neckar <cdn@chromium.org>
+
+ Fixes several bugs when adding CounterNodes to a tree which can cause asymetrical relationships.
+ https://bugs.webkit.org/show_bug.cgi?id=65996
+
+ Reviewed by Eric Seidel.
+
+ Test: fast/css/counters/counter-reparent-table-children-crash.html
+
+ * rendering/CounterNode.cpp:
+ (WebCore::CounterNode::insertAfter):
+ * rendering/RenderCounter.cpp:
+ (WebCore::findPlaceForCounter):
+ (WebCore::makeCounterNode):
+
+2011-09-13 Beth Dakin <bdakin@apple.com>
+
+ Adding a comment I forgot to add before.
+
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::imageSizeForError):
+
+2011-09-13 Antti Koivisto <antti@apple.com>
+
+ Move identifier filter from CSSStyleSelector to SelectorChecker
+ https://bugs.webkit.org/show_bug.cgi?id=68025
+
+ Reviewed by Sam Weinig.
+
+ This is a more logical place for this code. It also makes CSSStyleSelector slightly less bloated.
+ It will make it possible to use fastRejectSelector for querySelectorAll in the future.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::loadViewSourceStyle):
+ (WebCore::CSSStyleSelector::matchRulesForList):
+ (WebCore::RuleData::RuleData):
+ * css/CSSStyleSelector.h:
+ (WebCore::CSSStyleSelector::pushParent):
+ (WebCore::CSSStyleSelector::popParent):
+ * css/SelectorChecker.cpp:
+ (WebCore::collectElementIdentifierHashes):
+ (WebCore::SelectorChecker::pushParentStackFrame):
+ (WebCore::SelectorChecker::popParentStackFrame):
+ (WebCore::SelectorChecker::pushParent):
+ (WebCore::SelectorChecker::popParent):
+ (WebCore::collectDescendantSelectorIdentifierHashes):
+ (WebCore::SelectorChecker::collectIdentifierHashes):
+ * css/SelectorChecker.h:
+ (WebCore::SelectorChecker::parentStackIsConsistent):
+ (WebCore::SelectorChecker::ParentStackFrame::ParentStackFrame):
+ (WebCore::SelectorChecker::fastRejectSelector):
+
+2011-09-13 Kiyoto Tamura <owenestea@gmail.com>
+
+ For compatibility, execCommand should support deprecated 'useCSS' alias for 'styleWithCSS'
+ https://bugs.webkit.org/show_bug.cgi?id=36683
+
+ Reviewed by Ryosuke Niwa.
+
+ In addition to supporting the deprecated 'useCSS', 'styleWithCSS' now accepts any argument other than
+ the boolean false or the case-insensitive string "false". This is per
+ http://aryeh.name/spec/editing/editing.html#the-stylewithcss-command
+
+ Tests: editing/execCommand/style-with-css.html
+ editing/execCommand/use-css.html
+
+ * editing/EditorCommand.cpp:
+ (WebCore::executeStyleWithCSS):
+ (WebCore::executeUseCSS):
+ (WebCore::createCommandMap):
+
+2011-09-13 Anders Carlsson <andersca@apple.com>
+
+ Disable C++ exceptions when building with clang
+ https://bugs.webkit.org/show_bug.cgi?id=68031
+ <rdar://problem/9556880>
+
+ Reviewed by Mark Rowe.
+
+ * Configurations/Base.xcconfig:
+
+2011-09-13 Beth Dakin <bdakin@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=67885
+ Outline for the high-resolution broken image icon draws at 2x
+ -and corresponding-
+ <rdar://problem/10104637>
+
+ Reviewed by Dan Bernstein.
+
+ Scaled the image size to account for the deviceScaleFactor.
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::imageSizeForError):
+
+2011-09-13 Tim Horton <timothy_horton@apple.com>
+
+ REGRESSION (64275): Shape pattern-image fill turns black
+ https://bugs.webkit.org/show_bug.cgi?id=51061
+ <rdar://problem/8504705>
+
+ Reviewed by Simon Fraser.
+
+ When destroying a resource, register clients who are losing their
+ resource as having pending resources, so they can be resolved in the case a
+ resource with that id is re-registered.
+
+ Test: svg/custom/pending-resource-after-removal.xhtml
+
+ * rendering/svg/SVGResourcesCache.cpp:
+ (WebCore::SVGResourcesCache::resourceDestroyed):
+ * svg/SVGStyledElement.h:
+ (WebCore::toSVGStyledElement): Added.
+
+2011-09-13 Eric Seidel <eric@webkit.org>
+
+ Remove ENABLE_SVG_FOREIGN_OBJECT as it is a required part of HTML5
+ https://bugs.webkit.org/show_bug.cgi?id=68018
+
+ Reviewed by Ryosuke Niwa.
+
+ * Configurations/FeatureDefines.xcconfig:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.exp.in:
+ * dom/DOMImplementation.cpp:
+ (WebCore::isSVG10Feature):
+ (WebCore::isSVG11Feature):
+ * dom/Text.cpp:
+ (WebCore::Text::createRenderer):
+ * features.pri:
+ * page/DOMWindow.idl:
+ * rendering/svg/RenderSVGForeignObject.cpp:
+ * rendering/svg/RenderSVGForeignObject.h:
+ * svg/SVGAnimateMotionElement.cpp:
+ (WebCore::SVGAnimateMotionElement::hasValidAttributeType):
+ * svg/SVGForeignObjectElement.cpp:
+ * svg/SVGForeignObjectElement.h:
+ * svg/SVGForeignObjectElement.idl:
+ * svg/SVGLocatable.cpp:
+ (WebCore::isViewportElement):
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::isOutermostSVG):
+ * svg/SVGUseElement.cpp:
+ (WebCore::isDisallowedElement):
+ (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
+ * svg/svgtags.in:
+
+2011-09-13 Joseph Pecoraro <joepeck@webkit.org>
+
+ CRASH under WebCore::ArchiveResourceCollection::addAllResources loading WebArchive
+ https://bugs.webkit.org/show_bug.cgi?id=67983
+
+ Reviewed by Darin Adler.
+
+ Null mimetypes are okay for subresources, but as previously discovered
+ in bug 41082 they were required for main resources. Here we ensure
+ that they are required for main resources, but we allow null mimetypes
+ for subresources.
+
+ To fix a crash for bad input we never add a null ArchiveResource to the
+ Archive's subresource collection. It is useless and causes crashes whenever
+ someone iterates the Archive's subresource collection.
+
+ Test: webarchive/loading/test-loading-archive-subresource-null-mimetype.html
+
+ * loader/archive/cf/LegacyWebArchive.cpp:
+ (WebCore::LegacyWebArchive::createResource):
+ Allow a null mimetype, just type check from the dictionary.
+
+ (WebCore::LegacyWebArchive::extract):
+ Require a mimetype for the main resource. Do not add null
+ subresources to the subresource list.
+
+2011-09-13 Mihai Parparita <mihaip@chromium.org>
+
+ [Chromium] Remove javascript_engine from WebCore.gyp
+ https://bugs.webkit.org/show_bug.cgi?id=68001
+
+ Reviewed by Tony Chang.
+
+ Remove javascript_engine GYP variable (similar to the removal done on
+ the Chromium side with http://crrev.com/100692)
+
+ * WebCore.gyp/WebCore.gyp:
+
+2011-09-12 Ryosuke Niwa <rniwa@webkit.org>
+
+ [CSS3 Backgrounds and Borders] Add unprefixed border-image shorthand.
+ https://bugs.webkit.org/show_bug.cgi?id=67970
+
+ Reviewed by David Hyatt.
+
+ Also update CSSStyleSelector.cpp to support border-image to suppress assertion in
+ fast/borders/border-image-omit-right-slice.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ (WebCore::CSSStyleSelector::mapNinePieceImage):
+
+2011-09-13 Xianzhu Wang <wangxianzhu@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Webkit wraps between hyphen-minus and numeric characters
+ https://bugs.webkit.org/show_bug.cgi?id=20677
+
+ Disallow wrapping between a hyphen-minus and a digit if the hyphen-minus
+ is not directly after a digit or a letter.
+
+ Test: fast/text/line-breaks-after-hyphen-before-number.html
+
+ * rendering/break_lines.cpp:
+ (WebCore::asciiLineBreakTable): Disabled line-breaking after '-' and before '.', '0'-'9'. Note: the change for '0'-'9' doesn't really matter because the case is handled hard-coded in shouldBreakAfter().
+ (WebCore::shouldBreakAfter): Changed line-breaking behavior after '-'.
+ (WebCore::nextBreakablePosition): Passes lastLastCh to shouldBreakAfter.
+
+2011-09-13 Erik Wright <erikwright@chromium.org>
+
+ platform/graphics/gtk/FontGtk.cpp was renamed to platform/graphics/pango/FontPango.cpp . Reflect this change in WebCore.gypi to fix a Chromium build breakage.
+ https://bugs.webkit.org/show_bug.cgi?id=68000
+
+ Reviewed by Tony Gentilcore.
+
+ No change in functionality, thus no new tests.
+
+ * WebCore.gypi:
+
+2011-09-10 Mikhail Naganov <mnaganov@chromium.org>
+
+ Web Inspector: Profiler: Fix overlapping data in function names column.
+ https://bugs.webkit.org/show_bug.cgi?id=67896
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/ProfileDataGridTree.js:
+ (WebInspector.ProfileDataGridNode.prototype.createCell):
+ * inspector/front-end/dataGrid.css:
+ (.data-grid table.data):
+ (.data-grid td):
+
+2011-09-13 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r95025.
+ http://trac.webkit.org/changeset/95025
+ https://bugs.webkit.org/show_bug.cgi?id=68005
+
+ Test failed on Snow Leopard bots. (Requested by yutak_home on
+ #webkit).
+
+ * websockets/ThreadableWebSocketChannelClientWrapper.cpp:
+ (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
+ (WebCore::ThreadableWebSocketChannelClientWrapper::subprotocol):
+ (WebCore::ThreadableWebSocketChannelClientWrapper::setSubprotocol):
+ * websockets/ThreadableWebSocketChannelClientWrapper.h:
+
+2011-09-13 Yuta Kitamura <yutak@chromium.org>
+
+ ThreadableWebSocketChannelClientWrapper shouldn't have a String in it.
+ https://bugs.webkit.org/show_bug.cgi?id=67908
+
+ Reviewed by David Levin.
+
+ Replace a String member variable in ThreadableWebSocketChannelClientWrapper with Vector<UChar>.
+
+ No change in functionality, thus no new tests. WebSocket worker tests
+ (tests under http/tests/websocket/tests/{hixie76,hybi}/workers/) should keep passing.
+
+ * websockets/ThreadableWebSocketChannelClientWrapper.cpp:
+ (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
+ (WebCore::ThreadableWebSocketChannelClientWrapper::subprotocol):
+ Create a String from Vector<UChar>.
+ (WebCore::ThreadableWebSocketChannelClientWrapper::setSubprotocol):
+ Copy the content of the given String into Vector.
+ * websockets/ThreadableWebSocketChannelClientWrapper.h:
+
+2011-09-13 Fumitoshi Ukai <ukai@chromium.org>
+
+ Unreviewed, build fix.
+
+ CSSPropertyBorderImage was added in r94989, but not yet added in
+ WebCore::CSSStyleSelector::applyProperty
+
+ CSSStyleSelector.cpp:2481: warning: enumeration value 'CSSPropertyBorderImage' not handled in switch
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+
+2011-09-12 Shinya Kawanaka <shinyak@google.com>
+
+ Crashes in WebCore::InsertListCommand::unlistifyParagraph.
+ https://bugs.webkit.org/show_bug.cgi?id=67918
+
+ Reviewed by Ryosuke Niwa.
+
+ execCommand("InsertUnorderedList") was crashing if the parent node of the target is
+ a kind of list element and it is not contenteditable.
+ This patch checks the parent node is contenteditable.
+
+ Test: editing/execCommand/insert-list-in-noneditable-list-parent.html
+
+ * editing/htmlediting.cpp:
+ (WebCore::enclosingListChild): Checks the parent node is contenteditable.
+
+2011-09-12 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r94975.
+ http://trac.webkit.org/changeset/94975
+ https://bugs.webkit.org/show_bug.cgi?id=67984
+
+ crash in PrerenderBrowserTest.PrerenderHTML5VideoJs (Requested
+ by ukai on #webkit).
+
+ * platform/graphics/chromium/CanvasLayerChromium.h:
+ (WebCore::CanvasLayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ (WebCore::ContentLayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ (WebCore::ImageLayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::layerTreeAsText):
+ (WebCore::writeIndent):
+ (WebCore::LayerChromium::dumpLayer):
+ (WebCore::LayerChromium::dumpLayerProperties):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::textureMemoryReclaimLimit):
+ (WebCore::LayerRendererChromium::create):
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::close):
+ (WebCore::LayerRendererChromium::releaseTextures):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::drawLayersInternal):
+ (WebCore::LayerRendererChromium::getOffscreenLayerTexture):
+ (WebCore::LayerRendererChromium::initializeSharedObjects):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ (WebCore::LayerRendererChromium::layerTreeAsText):
+ (WebCore::LayerRendererChromium::dumpRenderSurfaces):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::owner):
+ (WebCore::LayerRendererChromium::rootLayer):
+ (WebCore::LayerRendererChromium::rootLayerImpl):
+ (WebCore::LayerRendererChromium::viewportSize):
+ (WebCore::LayerRendererChromium::contentsTextureManager):
+ * platform/graphics/chromium/ManagedTexture.cpp:
+ (WebCore::ManagedTexture::bindTexture):
+ (WebCore::ManagedTexture::framebufferTexture2D):
+ * platform/graphics/chromium/PluginLayerChromium.h:
+ (WebCore::PluginLayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/RenderSurfaceChromium.cpp:
+ (WebCore::RenderSurfaceChromium::name):
+ (WebCore::writeIndent):
+ (WebCore::RenderSurfaceChromium::dumpSurface):
+ * platform/graphics/chromium/RenderSurfaceChromium.h:
+ * platform/graphics/chromium/TextureManager.cpp:
+ (WebCore::TextureManager::deleteEvictedTextures):
+ (WebCore::TextureManager::removeTexture):
+ (WebCore::TextureManager::allocateTexture):
+ (WebCore::TextureManager::requestTexture):
+ * platform/graphics/chromium/TextureManager.h:
+ (WebCore::TextureManager::setAssociatedContextDebugOnly):
+ (WebCore::TextureManager::associatedContextDebugOnly):
+ * platform/graphics/chromium/TiledLayerChromium.cpp:
+ (WebCore::writeIndent):
+ (WebCore::TiledLayerChromium::dumpLayerProperties):
+ * platform/graphics/chromium/TiledLayerChromium.h:
+ * platform/graphics/chromium/VideoLayerChromium.h:
+ (WebCore::VideoLayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/WebGLLayerChromium.h:
+ (WebCore::WebGLLayerChromium::layerTypeAsString):
+ * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
+ * platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::initialize):
+ (WebCore::CCLayerTreeHost::~CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::commitTo):
+ (WebCore::CCLayerTreeHost::didRecreateGraphicsContext):
+ (WebCore::CCLayerTreeHost::setVisible):
+ (WebCore::CCLayerTreeHost::contentsTextureManager):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::drawLayers):
+ (WebCore::CCLayerTreeHostImpl::setVisible):
+ (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
+ * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
+ * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
+ * platform/graphics/chromium/cc/CCProxy.h:
+ * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
+ (WebCore::CCSingleThreadProxy::initializeLayerRenderer):
+ (WebCore::CCSingleThreadProxy::stop):
+ (WebCore::CCSingleThreadProxy::contentsTextureManager):
+ (WebCore::CCSingleThreadProxy::recreateContextIfNeeded):
+ * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
+ * platform/graphics/chromium/cc/CCThreadProxy.cpp:
+ (WebCore::CCThreadProxy::initializeLayerRenderer):
+ (WebCore::CCThreadProxy::contentsTextureManager):
+ (WebCore::CCThreadProxy::initializeLayerRendererOnCCThread):
+ (WebCore::CCThreadProxy::layerTreeHostClosedOnCCThread):
+ * platform/graphics/chromium/cc/CCThreadProxy.h:
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
+ (WebCore::CCTiledLayerImpl::dumpLayerProperties):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
+ * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
+ * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
+
+2011-09-12 Joseph Pecoraro <joepeck@webkit.org>
+
+ Possible ASSERT(!storageTracker) in Lazily Initialized StorageTracker
+ https://bugs.webkit.org/show_bug.cgi?id=67957
+
+ Reviewed by Darin Adler.
+
+ The storageTracker singleton may already have been created
+ through StorageTracker::tracker before initializeTracker
+ gets called. Update the ASSERT in this case to check that
+ there is no client for the tracker.
+
+ No test, this depends on how the port initializes the tracker.
+
+ * storage/StorageTracker.cpp:
+ (WebCore::StorageTracker::initializeTracker):
+
+2011-09-12 Adam Klein <adamk@chromium.org>
+
+ Fix out-of-bounds access in Gradient::sortStopsIfNecessary
+ https://bugs.webkit.org/show_bug.cgi?id=67958
+
+ Reviewed by Darin Adler.
+
+ Reported by Valgrind in http://crbug.com/77049.
+
+ The errant code was added as an optimization in r67804.
+ This patch reverts that one, as all parties agree that the optimization
+ doesn't seem worthwhile, and there clearly aren't any tests covering
+ the special case.
+
+ No new tests, as existing tests should cover the remaining call to
+ |std::stable_sort|.
+
+ * platform/graphics/Gradient.cpp:
+ (WebCore::Gradient::sortStopsIfNecessary):
+
+2011-09-12 Jacky Jiang <zhajiang@rim.com>
+
+ Setting document.title doesn't affect contents of title tag of XHTML documents
+ https://bugs.webkit.org/show_bug.cgi?id=57537
+
+ Reviewed by Alexey Proskuryakov.
+
+ Update the contents of the <title> tag of XHTML documents when setting
+ document.title.
+
+ Test: fast/dom/title-content-set-innerText-get.xhtml
+
+ * dom/Document.cpp:
+ (WebCore::Document::setTitle):
+
+2011-09-12 Raphael Kubo da Costa <kubo@profusion.mobi>
+
+ [EFL] Initialize m_unmodifiedText in PlatformKeyboardEventEfl.
+ https://bugs.webkit.org/show_bug.cgi?id=67038
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Since most of the time it will return the same thing as text(), we
+ initialize it the same way we initialize m_text. The other case (what
+ would have been generated if no modifiers were pressed) should be
+ covered by this as well.
+
+ As this method is used when handling access keys, tests such as
+ fast/events/access-key-self-destruct.html should now pass.
+
+ No new tests, as this fixes a problem uncovered by the existing ones.
+
+ * platform/efl/PlatformKeyboardEventEfl.cpp:
+ (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
+
+2011-09-12 Hyowon Kim <hw1008.kim@samsung.com>
+
+ Reviewed by Eric Seidel.
+
+ [EFL] Add GraphicsContext3DEfl for WebGL and accelerated compositing
+ https://bugs.webkit.org/show_bug.cgi?id=62709
+
+ Add GraphicsContext3D implementation for EFL port.
+ GraphicsContext3D delegates to GraphicsContext3DInternal.
+
+ * platform/graphics/efl/GraphicsContext3DEfl.cpp: Added.
+ (WebCore::GraphicsContext3D::create):
+ (WebCore::GraphicsContext3D::GraphicsContext3D):
+ (WebCore::GraphicsContext3D::~GraphicsContext3D):
+ (WebCore::GraphicsContext3D::platformGraphicsContext3D):
+ (WebCore::GraphicsContext3D::platformLayer):
+ (WebCore::GraphicsContext3D::makeContextCurrent):
+ (WebCore::GraphicsContext3D::isGLES2Compliant):
+ (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::clear):
+ (WebCore::GraphicsContext3D::clearColor):
+ (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::finish):
+ (WebCore::GraphicsContext3D::flush):
+ (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::getBooleanv):
+ (WebCore::GraphicsContext3D::getBufferParameteriv):
+ (WebCore::GraphicsContext3D::getContextAttributes):
+ (WebCore::GraphicsContext3D::getError):
+ (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::getString):
+ (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::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::releaseShaderCompiler):
+ (WebCore::GraphicsContext3D::renderbufferStorage):
+ (WebCore::GraphicsContext3D::sampleCoverage):
+ (WebCore::GraphicsContext3D::scissor):
+ (WebCore::GraphicsContext3D::shaderSource):
+ (WebCore::GraphicsContext3D::stencilFunc):
+ (WebCore::GraphicsContext3D::stencilFuncSeparate):
+ (WebCore::GraphicsContext3D::stencilMask):
+ (WebCore::GraphicsContext3D::stencilMaskSeparate):
+ (WebCore::GraphicsContext3D::stencilOp):
+ (WebCore::GraphicsContext3D::stencilOpSeparate):
+ (WebCore::GraphicsContext3D::texImage2D):
+ (WebCore::GraphicsContext3D::texParameterf):
+ (WebCore::GraphicsContext3D::texParameteri):
+ (WebCore::GraphicsContext3D::texSubImage2D):
+ (WebCore::GraphicsContext3D::uniform1f):
+ (WebCore::GraphicsContext3D::uniform1fv):
+ (WebCore::GraphicsContext3D::uniform1i):
+ (WebCore::GraphicsContext3D::uniform1iv):
+ (WebCore::GraphicsContext3D::uniform2f):
+ (WebCore::GraphicsContext3D::uniform2fv):
+ (WebCore::GraphicsContext3D::uniform2i):
+ (WebCore::GraphicsContext3D::uniform2iv):
+ (WebCore::GraphicsContext3D::uniform3f):
+ (WebCore::GraphicsContext3D::uniform3fv):
+ (WebCore::GraphicsContext3D::uniform3i):
+ (WebCore::GraphicsContext3D::uniform3iv):
+ (WebCore::GraphicsContext3D::uniform4f):
+ (WebCore::GraphicsContext3D::uniform4fv):
+ (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::reshape):
+ (WebCore::GraphicsContext3D::markContextChanged):
+ (WebCore::GraphicsContext3D::markLayerComposited):
+ (WebCore::GraphicsContext3D::layerComposited):
+ (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
+ (WebCore::GraphicsContext3D::paintRenderingResultsToImageData):
+ (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::synthesizeGLError):
+ (WebCore::GraphicsContext3D::getExtensions):
+ (WebCore::GraphicsContext3D::getInternalFramebufferSize):
+ (WebCore::GraphicsContext3D::setContextLostCallback):
+ (WebCore::GraphicsContext3D::getImageData):
+
+2011-09-12 Hyowon Kim <hw1008.kim@samsung.com>
+
+ Reviewed by Eric Seidel.
+
+ [CMAKE] Remove platform/graphics/opengl/*OpenGL.cpp files in CMakeLists.txt
+ https://bugs.webkit.org/show_bug.cgi?id=62707
+
+ No change in fuctionality so no new tests.
+
+ Bug 62376 makes all ports use GraphicsContext3DOpenGL and
+ Extensions3DOpenGL when enabling WebGL.
+ However, some ports already have their own GC3D implementation.
+ In QT and chromium, for example, GC3D delegates to GC3DInternal.
+ So, it would be better to allow each port to decide whether or not
+ to include files in platform/graphics/opengl.
+
+ * CMakeLists.txt:
+
+2011-09-12 Dan Bernstein <mitz@apple.com>
+
+ <rdar://problem/10054615> Floats in ruby text intrude into the base
+
+ Reviewed by Darin Adler.
+
+ Test: fast/ruby/float-overhang-from-ruby-text.html
+
+ * rendering/RenderRubyText.cpp:
+ (WebCore::RenderRubyText::avoidsFloats): Added. Returns true. This ensures that
+ RenderBlock::clearFloats() will not consider ruby text as having intruding floats.
+ * rendering/RenderRubyText.h:
+
+2011-09-12 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=67970
+
+ Add unprefixed border-image property.
+
+ Reviewed by Beth Dakin.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSPropertyNames.in:
+
+2011-09-12 Ryosuke Niwa <rniwa@webkit.org>
+
+ REGRESSION: Moving up doesn't work in some cases
+ https://bugs.webkit.org/show_bug.cgi?id=67522
+
+ Reviewed by Eric Seidel.
+
+ The bug was caused by previousLinePosition's attempting to obtain the last root line box using
+ a position at minCaretOffset (which is, in practice, located at the beginning of wrapped lines).
+
+ Fix the bug by calling maxCaretOffset instead. Because isCandidate returns false at (br, 1),
+ use the positionBeforeNode for br elements.
+
+ Test: editing/selection/move-up-into-wrapped-line.html
+
+ * editing/visible_units.cpp:
+ (WebCore::previousLinePosition):
+
+2011-09-12 David Levin <levin@chromium.org>
+
+ Make the ThreadSafeRefCounted support in CrossThreadCopier work for T*.
+ https://bugs.webkit.org/show_bug.cgi?id=67947
+
+ Reviewed by Adam Barth.
+
+ The changes are tested by compiling and added compile asserts to do some verification as well.
+
+ * platform/CrossThreadCopier.cpp:
+ Added some compile asserts to verify various match and non-matches for CrossThreadCopier.
+ * platform/CrossThreadCopier.h:
+ Added a typedef to convert T* to T, just like the typedef's to remove RefPtr and PassRefPtr.
+ Added a compile assert to verify that only one of the typedef did anything.
+ (CrossThreadCopierBase<false, true, T>::copy): Remove "get" as it is unnecessary.
+ It shouldn't have been here (PassRefPtr and RefPtr easily and sometimes more efficiently
+ convert to PassRefPtr without get). Also, a raw pointer doesn't have a get() method.
+
+2011-09-12 Chris Rogers <crogers@google.com>
+
+ Address lifetime issues in OfflineAudioDestinationNode
+ https://bugs.webkit.org/show_bug.cgi?id=67949
+
+ Reviewed by Kenneth Russell.
+
+ No new tests. This does not change JavaScript API.
+
+ * webaudio/OfflineAudioDestinationNode.cpp:
+ (WebCore::OfflineAudioDestinationNode::~OfflineAudioDestinationNode):
+ (WebCore::OfflineAudioDestinationNode::render):
+ (WebCore::OfflineAudioDestinationNode::notifyCompleteDispatch):
+
+2011-09-12 Jeff Timanus <twiz@chromium.org>
+
+ [chromium] Prevent a crash when tearing down an ImageBuffer that was not successfully initialized.
+ https://bugs.webkit.org/show_bug.cgi?id=67944
+
+ Reviewed by Stephen White.
+
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::~ImageBuffer):
+
+2011-09-12 Michael Saboff <msaboff@apple.com>
+
+ Update RegExp and related classes to use 8 bit strings when available
+ https://bugs.webkit.org/show_bug.cgi?id=67337
+
+ Updated call to match to use UString& instead of UChar*.
+
+ Reviewed by Gavin Barraclough.
+
+ No new tests, Covered by existing tests.
+
+ * platform/text/RegularExpression.cpp:
+ (WebCore::RegularExpression::match):
+
+2011-09-12 Beth Dakin <bdakin@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=67898
+ REGRESSION(r94900): fast/images/support-broken-image-delegate.html fails on Mac
+
+ Reviewed by Simon Fraser.
+
+ New function willPaintBrokenImage() returns true when there has been an error
+ loading the image and the broken image icon will be used in its place. This is
+ necessary since it is possible to have an error loading an image and to NOT use
+ the broken image icon.
+ * loader/cache/CachedImage.cpp:
+ (WebCore::CachedImage::willPaintBrokenImage):
+ * loader/cache/CachedImage.h:
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::imageSizeForError):
+
+2011-09-12 James Robinson <jamesr@chromium.org>
+
+ [chromium] Move contents texture manager from LayerRendererChromium to CCLayerTreeHost
+ https://bugs.webkit.org/show_bug.cgi?id=67440
+
+ Reviewed by Kenneth Russell.
+
+ This moves the contents TextureManager over to the CCLayerTreeHost, where it belongs, and adds in a commit path
+ to make sure that textures are deleted even if the page is not visible. This move also removed the need for
+ LayerRendererChromium's CCLayerTreeHost pointer, so I removed that as well. That meant moving the
+ layerTreeAsText() logic over to the CCLayerImpl side, which is where it really belonged anyway.
+
+ Covered by existing compositing/ tests and
+ platform/chromium/compositor/lost-compositor-context-with-rendersurface.html
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::releaseRenderSurfaceTextures):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::initializeSharedObjects):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::setContentsTextureMemoryUseBytes):
+ * platform/graphics/chromium/TextureManager.cpp:
+ (WebCore::TextureManager::highLimitBytes):
+ (WebCore::TextureManager::reclaimLimitBytes):
+ (WebCore::TextureManager::lowLimitBytes):
+ * platform/graphics/chromium/TextureManager.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::initialize):
+ (WebCore::CCLayerTreeHost::~CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::deleteContentsTextures):
+ (WebCore::CCLayerTreeHost::commitTo):
+ (WebCore::CCLayerTreeHost::setVisible):
+ (WebCore::CCLayerTreeHost::contentsTextureManager):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::setVisible):
+ * platform/graphics/chromium/cc/CCProxy.h:
+ * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
+ (WebCore::CCSingleThreadProxy::setNeedsCommit):
+ (WebCore::CCSingleThreadProxy::stop):
+ * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
+ * platform/graphics/chromium/cc/CCThreadProxy.cpp:
+ (WebCore::CCThreadProxy::setNeedsCommit):
+ (WebCore::CCThreadProxy::setNeedsCommitOnCCThread):
+ (WebCore::CCThreadProxy::layerTreeHostClosedOnCCThread):
+ * platform/graphics/chromium/cc/CCThreadProxy.h:
+
+2011-09-12 Chris Rogers <crogers@google.com>
+
+ DelayNode delay buffer is not correctly wrapping around
+ https://bugs.webkit.org/show_bug.cgi?id=67872
+
+ Reviewed by Kenneth Russell.
+
+ Test: webaudio/delaynode.html
+
+ * webaudio/DelayDSPKernel.cpp:
+ (WebCore::DelayDSPKernel::process):
+
+2011-09-12 Arko Saha <arko@motorola.com>
+
+ Selectstart is not fired when selection was created by arrow keys.
+ https://bugs.webkit.org/show_bug.cgi?id=60430
+
+ Reviewed by Ryosuke Niwa.
+
+ Fire selectstart when a user starts extending the selection using arrow key.
+ Fixed by Arko Saha <arko@motorola.com> and Kaustubh Atrawalkar <kaustubh@motorola.com>
+
+ Tests: fast/events/selectstart-by-arrow-keys-prevent-default.html
+ fast/events/selectstart-by-arrow-keys.html
+
+ * editing/FrameSelection.cpp:
+ (WebCore::FrameSelection::modify):
+ (WebCore::FrameSelection::shouldChangeSelection):
+ (WebCore::FrameSelection::dispatchSelectStart):
+ * editing/FrameSelection.h:
+
+2011-09-12 James Robinson <jamesr@chromium.org>
+
+ [chromium] REGRESSION(94353): Compositor textures and resources leaked when tab closed that is not last tab in the process
+ https://bugs.webkit.org/show_bug.cgi?id=67816
+
+ Reviewed by Kenneth Russell.
+
+ We lack infrastructure to construct an automated test for this today. To test manually, open up a composited
+ page (like the poster circle), duplicate the tab many times, close all the duplicates, and verify that the
+ memory use returns to the single tab level.
+
+ * platform/graphics/chromium/LayerChromium.h:
+ * platform/graphics/chromium/TiledLayerChromium.cpp:
+ (WebCore::TiledLayerChromium::setLayerTreeHost):
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::setLayerTreeHost):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::clearRenderSurfacesRecursive):
+ (WebCore::CCLayerTreeHost::setRootLayer):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+
+2011-09-12 Kentaro Hara <haraken@google.com>
+
+ Implement a HashChangeEvent constructor for JSC
+ https://bugs.webkit.org/show_bug.cgi?id=67924
+
+ Reviewed by Sam Weinig.
+
+ The spec for the HashChangeEvent constructor is here:
+ http://www.whatwg.org/specs/web-apps/current-work/#hashchangeevent
+
+ Test: fast/events/constructors/hash-change-event-constructor.html
+
+ * bindings/generic/EventConstructors.h: Added a definition for the HashChangeEvent constructor.
+ * bindings/js/JSEventConstructors.cpp: Added #includes for HashChangeEvent.
+ * dom/HashChangeEvent.h: Added a definition for HashChangeEventInit.
+ (WebCore::HashChangeEventInit::HashChangeEventInit):
+ (WebCore::HashChangeEvent::create):
+ (WebCore::HashChangeEvent::HashChangeEvent):
+ * dom/HashChangeEvent.idl: Makes HashChangeEvent constructible.
+
+2011-09-12 Mike Reed <reed@google.com>
+
+ [skia] remove dead code, no functionality change
+ https://bugs.webkit.org/show_bug.cgi?id=67844
+
+ Reviewed by Kenneth Russell.
+
+ No new tests. just removing dead-code, existing tests apply
+
+ * platform/graphics/chromium/FontChromiumWin.cpp:
+ (WebCore::Font::drawGlyphs):
+
+2011-09-12 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: Runtime.callFunctionOn does not accept arguments that evaluate to false.
+ https://bugs.webkit.org/show_bug.cgi?id=67934
+
+ Reviewed by Tony Gentilcore.
+
+ * inspector/InjectedScriptSource.js:
+
+2011-09-12 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: event dividers do not update timeline boundaries.
+ https://bugs.webkit.org/show_bug.cgi?id=67932
+
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkLogView.prototype._onLoadEventFired):
+ (WebInspector.NetworkLogView.prototype._domContentLoadedEventFired):
+ (WebInspector.NetworkLogView.prototype.refresh):
+ (WebInspector.NetworkTimeCalculator.prototype.updateBoundariesForEventTime):
+
+2011-09-12 Kentaro Hara <haraken@google.com>
+
+ Implement a WebKitAnimationEvent constructor for V8
+ https://bugs.webkit.org/show_bug.cgi?id=67922
+
+ Reviewed by Adam Barth.
+
+ Test: fast/events/constructors/webkit-animation-event-constructor.html
+
+ * bindings/v8/custom/V8EventConstructors.cpp: Added the WebKitAnimationEvent constructor.
+ * dom/WebKitAnimationEvent.idl: Added a 'V8CustomConstructor' attribute.
+
+2011-09-12 Andreas Kling <kling@webkit.org>
+
+ Shrink CanvasGradient for builds without ENABLE(DASHBOARD_SUPPORT).
+ https://bugs.webkit.org/show_bug.cgi?id=67916
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ * html/canvas/CanvasGradient.cpp:
+ (WebCore::CanvasGradient::CanvasGradient):
+ (WebCore::CanvasGradient::addColorStop):
+ * html/canvas/CanvasGradient.h:
+
+2011-09-12 Shinya Kawanaka <shinyak@google.com>
+
+ Characters beyond U+10000 should be deleted by one pressing delete key.
+ https://bugs.webkit.org/show_bug.cgi?id=40351
+
+ Reviewed by Kent Tamura.
+
+ If a character is the trail part of unicode surrogate pair, the lead part of it
+ should also be deleted. Also, If in MacOSX, the deletion should honor Mac's behavior.
+
+ Test: editing/deleting/delete-surrogatepair.html
+
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::previousOffsetForBackwardDeletion):
+ Added if-macro to support chromium on mac, and added trail part check for unicode character.
+
+2011-09-11 Kentaro Hara <haraken@google.com>
+
+ Implement a ProgressEvent constructor for V8
+ https://bugs.webkit.org/show_bug.cgi?id=67800
+
+ Reviewed by Sam Weinig.
+
+ Test: fast/events/constructors/progress-event-constructor.html
+
+ * bindings/js/JSDictionary.cpp:
+ (WebCore::JSDictionary::convertValue): Replaced UnsignedLongLongMax with std::numeric_limits<unsigned long long>::max().
+ * bindings/v8/OptionsObject.cpp:
+ (WebCore::OptionsObject::getKeyValue): Returns an unsigned long long value corresponding to a given key. Spec: http://www.w3.org/TR/WebIDL/#es-unsigned-long-long
+ * bindings/v8/OptionsObject.h:
+ * bindings/v8/custom/V8EventConstructors.cpp: Added the ProgressEvent constructor.
+ * dom/ProgressEvent.idl: Added a 'V8CustomConstructor' attribute.
+
+2011-09-11 Dimitri Glazkov <dglazkov@chromium.org>
+
+ REGRESSION (r87351): toggling display of lots (thousands) of elements with display:none is very slow
+ https://bugs.webkit.org/show_bug.cgi?id=67581
+
+ Reviewed by Darin Adler.
+
+ Test: perf/show-hide-table-rows.html
+
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::NodeRendererFactory::createRendererAndStyle): Moved style-creating code into createRendererIfNeeded, renamed
+ to createRenderer.
+ (WebCore::NodeRendererFactory::createRendererIfNeeded): Re-arrange code to avoid unnecessary creation of renderers.
+
+2011-09-11 Jeremy Moskovich <jeremy@chromium.org>
+
+ [Chromium] Change OOP Font loading code to use CGFont*() APIs.
+ https://bugs.webkit.org/show_bug.cgi?id=66935
+
+ This change is necessary due a bug in ATSFontDeactivate() on 10.7.
+ See crbug.com/93191 for details.
+
+ Reviewed by Eric Seidel.
+
+ No new tests - covered by existing tests.
+
+ * platform/chromium/PlatformBridge.h:
+ * platform/graphics/chromium/CrossProcessFontLoading.h:
+ * platform/graphics/chromium/CrossProcessFontLoading.mm:
+ (WebCore::MemoryActivatedFont::create):
+ (WebCore::MemoryActivatedFont::MemoryActivatedFont):
+ (WebCore::MemoryActivatedFont::~MemoryActivatedFont):
+
+2011-09-09 Oliver Hunt <oliver@apple.com>
+
+ Remove support for anonymous storage from jsobjects
+ https://bugs.webkit.org/show_bug.cgi?id=67881
+
+ Reviewed by Sam Weinig.
+
+ Remove all use of anonymous slots, this required modifying
+ bindings generation to add member variables for cached attributes,
+ and override visitChildren with the necessary logic to mark those
+ new members.
+
+ I added bindings generation tests for these values.
+
+ * bindings/js/JSAudioConstructor.h:
+ (WebCore::JSAudioConstructor::createStructure):
+ * bindings/js/JSDOMBinding.h:
+ (WebCore::DOMConstructorObject::createStructure):
+ * bindings/js/JSDOMGlobalObject.h:
+ (WebCore::JSDOMGlobalObject::createStructure):
+ * bindings/js/JSDOMWindowBase.h:
+ (WebCore::JSDOMWindowBase::createStructure):
+ * bindings/js/JSDOMWindowShell.h:
+ (WebCore::JSDOMWindowShell::createStructure):
+ * bindings/js/JSDOMWrapper.h:
+ (WebCore::JSDOMWrapper::createStructure):
+ * bindings/js/JSImageConstructor.h:
+ (WebCore::JSImageConstructor::createStructure):
+ * bindings/js/JSMessageEventCustom.cpp:
+ (WebCore::JSMessageEvent::data):
+ (WebCore::JSMessageEvent::initMessageEvent):
+ * bindings/js/JSOptionConstructor.h:
+ (WebCore::JSOptionConstructor::createStructure):
+ * bindings/js/JSWorkerContextBase.h:
+ (WebCore::JSWorkerContextBase::createStructure):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (GenerateHeader):
+ (GenerateImplementation):
+ (GenerateConstructorDeclaration):
+ * bindings/scripts/test/JS/JSTestInterface.cpp:
+ (WebCore::JSTestInterfaceConstructor::createStructure):
+ * bindings/scripts/test/JS/JSTestInterface.h:
+ (WebCore::JSTestInterface::createStructure):
+ (WebCore::JSTestInterfacePrototype::createStructure):
+ * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
+ (WebCore::JSTestMediaQueryListListenerConstructor::createStructure):
+ * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
+ (WebCore::JSTestMediaQueryListListener::createStructure):
+ (WebCore::JSTestMediaQueryListListenerPrototype::createStructure):
+ * bindings/scripts/test/JS/JSTestObj.cpp:
+ (WebCore::JSTestObjConstructor::createStructure):
+ (WebCore::jsTestObjCachedAttribute1):
+ (WebCore::jsTestObjCachedAttribute2):
+ (WebCore::JSTestObj::visitChildren):
+ * bindings/scripts/test/JS/JSTestObj.h:
+ (WebCore::JSTestObj::createStructure):
+ (WebCore::JSTestObjPrototype::createStructure):
+ * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
+ (WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):
+ * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
+ (WebCore::JSTestSerializedScriptValueInterface::createStructure):
+ (WebCore::JSTestSerializedScriptValueInterfacePrototype::createStructure):
+ * bindings/scripts/test/TestObj.idl:
+ * bindings/scripts/test/V8/V8TestObj.cpp:
+ (WebCore::TestObjInternal::cachedAttribute1AttrGetter):
+ (WebCore::TestObjInternal::cachedAttribute2AttrGetter):
+ * bridge/c/CRuntimeObject.h:
+ (JSC::Bindings::CRuntimeObject::createStructure):
+ * bridge/c/c_instance.cpp:
+ (JSC::Bindings::CRuntimeMethod::createStructure):
+ * bridge/jni/jsc/JavaInstanceJSC.cpp:
+ (JavaRuntimeMethod::createStructure):
+ * bridge/jni/jsc/JavaRuntimeObject.h:
+ (JSC::Bindings::JavaRuntimeObject::createStructure):
+ * bridge/objc/ObjCRuntimeObject.h:
+ (JSC::Bindings::ObjCRuntimeObject::createStructure):
+ * bridge/objc/objc_instance.mm:
+ (ObjCRuntimeMethod::createStructure):
+ * bridge/objc/objc_runtime.h:
+ (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
+ * bridge/runtime_array.h:
+ (JSC::RuntimeArray::createStructure):
+ * bridge/runtime_method.h:
+ (JSC::RuntimeMethod::createStructure):
+ * bridge/runtime_object.h:
+ (JSC::Bindings::RuntimeObject::createStructure):
+
+2011-09-01 Filip Pizlo <fpizlo@apple.com>
+
+ The executable allocator makes it difficult to free individual
+ chunks of executable memory
+ https://bugs.webkit.org/show_bug.cgi?id=66363
+
+ Reviewed by Oliver Hunt.
+
+ Introduced a best-fit, balanced-tree based allocator. The allocator
+ required a balanced tree that does not allocate memory and that
+ permits the removal of individual nodes directly (as opposed to by
+ key); neither AVLTree nor WebCore's PODRedBlackTree supported this.
+ Changed all references to executable code to use a reference counted
+ handle.
+
+ No new layout tests because behavior is not changed. New API unit
+ tests:
+ Tests/WTF/RedBlackTree.cpp
+ Tests/WTF/MetaAllocator.cpp
+
+ * ForwardingHeaders/wtf/MetaAllocatorHandle.h: Added.
+
+2011-09-10 Sam Weinig <sam@webkit.org>
+
+ Add isInterruptedExecutionException and isTerminatedExecutionException predicates
+ https://bugs.webkit.org/show_bug.cgi?id=67892
+
+ Reviewed by Andy "First Time Reviewer" Estes.
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::reportException):
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSEventListener::handleEvent):
+ * bindings/js/WorkerScriptController.cpp:
+ (WebCore::WorkerScriptController::evaluate):
+ Use the new predicates instead of probing the ClassInfo directly.
+
+2011-09-10 Kevin Ollivier <kevino@theolliviers.com>
+
+ [wx] Unreviewed build fix. MSW build fixes.
+
+ * config.h:
+
+2011-09-09 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=67861
+
+ Implement border-image-outset (and the mask equivalents).
+
+ Reviewed by Beth Dakin.
+
+ Added new tests in fast/borders and fast/reflections.
+
+ * css/CSSBorderImageValue.cpp:
+ (WebCore::CSSBorderImageValue::CSSBorderImageValue):
+ (WebCore::CSSBorderImageValue::cssText):
+ * css/CSSBorderImageValue.h:
+ (WebCore::CSSBorderImageValue::create):
+ Add m_outset field to CSSBorderImageValue and teach it how to dump the field as
+ part of cssText().
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::valueForNinePieceImageQuad):
+ (WebCore::valueForNinePieceImage):
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ Add support for border-image-outset and -webkit-mask-box-image-outset. Refactor
+ the code so that border-image-width and border-image-outset use a common
+ function.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ (WebCore::BorderImageParseContext::BorderImageParseContext):
+ (WebCore::BorderImageParseContext::allowOutset):
+ (WebCore::BorderImageParseContext::commitSlash):
+ (WebCore::BorderImageParseContext::commitBorderWidth):
+ (WebCore::BorderImageParseContext::commitBorderOutset):
+ (WebCore::BorderImageParseContext::commitRepeat):
+ (WebCore::BorderImageParseContext::commitBorderImage):
+ (WebCore::CSSParser::parseBorderImage):
+ Teach the border image parsing code about outsets. This code will soon be
+ replaced by true shorthand parsing code, but for now keep it working and add
+ outset support to it.
+
+ (WebCore::BorderImageQuadParseContext::BorderImageQuadParseContext):
+ (WebCore::BorderImageQuadParseContext::commitBorderImageQuad):
+ (WebCore::CSSParser::parseBorderImageQuad):
+ (WebCore::CSSParser::parseBorderImageWidth):
+ (WebCore::CSSParser::parseBorderImageOutset):
+ * css/CSSParser.h:
+ Refactor the border-image-width code so that it can be shared by border-image-outset, since
+ they are extremely similar.
+
+ * css/CSSPropertyNames.in:
+ Add the new properties.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ (WebCore::CSSStyleSelector::mapNinePieceImage):
+ (WebCore::CSSStyleSelector::mapNinePieceImageQuad):
+ (WebCore::CSSStyleSelector::loadPendingImages):
+ * css/CSSStyleSelector.h:
+ Refactor the code so that width/outset share common mapping functions. Add support for outset.
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::addToLine):
+ (WebCore::InlineFlowBox::addBoxShadowVisualOverflow):
+ (WebCore::InlineFlowBox::addBorderOutsetVisualOverflow):
+ (WebCore::InlineFlowBox::computeOverflow):
+ Add new functions for computing the visual overflow caused by border outsets. Fix bugs in
+ the shadow overflow code as well.
+
+ (WebCore::clipRectForNinePieceImageStrip):
+ (WebCore::InlineFlowBox::paintBoxDecorations):
+ (WebCore::InlineFlowBox::paintMask):
+ * rendering/InlineFlowBox.h:
+ Make sure the clip rect pushed when painting one piece of a split inline strip is expanded to
+ include the border and mask outsets. Always include the block direction expansion, and conditionally
+ include the inline direction expansion based off includeLogicalLeftEdge()/includeLogicalRightEdge().
+ clipRectForNinePieceImageStrip is a common function shared by masks and border images that does this
+ work.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::computeOverflow):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::maskClipRect):
+ (WebCore::RenderBox::addBoxShadowAndBorderOverflow):
+ * rendering/RenderBox.h:
+ Rename addShadowOverflow to addBoxShadowAndBorderOverflow. Have it compute both shadow and border image
+ outset overflow. Fix bugs with shadow overflow computation.
+
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paintNinePieceImage):
+ Change painting to apply the outsets to inflate the border image drawing area.
+
+ * rendering/RenderEmbeddedObject.cpp:
+ (WebCore::RenderEmbeddedObject::layout):
+ * rendering/RenderIFrame.cpp:
+ (WebCore::RenderIFrame::layout):
+ Patched to call the renamed addBoxShadowAndBorderOverflow function instead of addShadowOverflow.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::calculateRects):
+ Patched to no longer apply box-shadow to overflow clip areas when inflating the intersection area for the
+ layer bounds. Instead we generically apply all visual overflow so that border image outsets will also be
+ included. This fixes https://bugs.webkit.org/show_bug.cgi?id=37467.
+
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::layout):
+ Patched to call the renamed addBoxShadowAndBorderOverflow function instead of addShadowOverflow.
+
+ * rendering/style/NinePieceImage.cpp:
+ (WebCore::NinePieceImage::operator==):
+ * rendering/style/NinePieceImage.h:
+ (WebCore::NinePieceImage::NinePieceImage):
+ (WebCore::NinePieceImage::outset):
+ (WebCore::NinePieceImage::setOutset):
+ (WebCore::NinePieceImage::computeOutset):
+ (WebCore::NinePieceImage::copyOutsetFrom):
+ Add the outset field to NinePieceImage along with some helpers for manipulating outsets.
+
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::getImageOutsets):
+ (WebCore::RenderStyle::getImageHorizontalOutsets):
+ (WebCore::RenderStyle::getImageVerticalOutsets):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::hasBorderImageOutsets):
+ (WebCore::InheritedFlags::getBorderImageOutsets):
+ (WebCore::InheritedFlags::getBorderImageHorizontalOutsets):
+ (WebCore::InheritedFlags::getBorderImageVerticalOutsets):
+ (WebCore::InheritedFlags::getBorderImageInlineDirectionOutsets):
+ (WebCore::InheritedFlags::getBorderImageBlockDirectionOutsets):
+ (WebCore::InheritedFlags::getImageInlineDirectionOutsets):
+ (WebCore::InheritedFlags::getImageBlockDirectionOutsets):
+ Helpers for outset computation used by painting and overflow functions.
+
+2011-09-10 Dan Bernstein <mitz@apple.com>
+
+ Actually prevent unnecessary casts to MediaControls*.
+
+ Reviewed by Oliver Hunt.
+
+ * html/shadow/MediaControls.h:
+
+2011-09-10 Ryosuke Niwa <rniwa@webkit.org>
+
+ Remove printf added by r94900.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::drawPlatformResizerImage):
+
+2011-09-09 Chris Marrin <cmarrin@apple.com>
+
+ requestAnimationFrame doesn't throttle on Mac
+ https://bugs.webkit.org/show_bug.cgi?id=67171
+
+ Reviewed by Simon Fraser.
+
+ Changed requestAnimationFrame to use a Timer in ScriptedAnimationController
+ on Mac, rather than runLoopObservers. The Timer is throttled to fire no
+ faster than every 15ms. It is behind a WTF_USE_REQUEST_ANIMATION_FRAME_TIMER
+ flag and can be used by any implementation, but currently it is only enabled
+ by PLATFORM(MAC).
+
+ * dom/ScriptedAnimationController.cpp:
+ (WebCore::ScriptedAnimationController::ScriptedAnimationController):
+ (WebCore::ScriptedAnimationController::resume):
+ (WebCore::ScriptedAnimationController::registerCallback):
+ (WebCore::ScriptedAnimationController::serviceScriptedAnimations):
+ (WebCore::ScriptedAnimationController::scheduleAnimation):
+ (WebCore::ScriptedAnimationController::animationTimerFired):
+ * dom/ScriptedAnimationController.h:
+ * loader/EmptyClients.h:
+ * page/Chrome.cpp:
+ (WebCore::Chrome::scheduleAnimation):
+ * page/ChromeClient.h:
+
+2011-09-10 Jarred Nicholls <jarred@sencha.com>
+
+ [Qt] QWebSettings::setUserStyleSheetUrl() does not work with windows paths that contain drive letters
+ https://bugs.webkit.org/show_bug.cgi?id=34884
+
+ KURL::path() alone does not handle removing the leading slash from a windows file path.
+ Using QUrl::toLocalFile() will turn file:///C:/path into C:/path appropriately.
+
+ Reviewed by Andreas Kling.
+
+ * platform/qt/KURLQt.cpp:
+ (WebCore::KURL::fileSystemPath):
+
+2011-09-10 Ken Buchanan <kenrb@chromium.org>
+
+ Crash due to bad data in SVGDocumentExtensions m_pendingResources
+ https://bugs.webkit.org/show_bug.cgi?id=67488
+
+ Reviewed by Nikolas Zimmermann.
+
+ Resolving a crash condition caused by the deletion of
+ elements while pending resource entries for those elements are still
+ recorded.
+
+ * rendering/svg/RenderSVGResourceContainer.cpp:
+ (WebCore::RenderSVGResourceContainer::registerResource)
+ * svg/SVGDocumentExtensions.h:
+ (WebCore::SVGDocumentExtensions::isElementInPendingResources)
+ * svg/SVGDocumentExtensions.cpp:
+ (WebCore::SVGDocumentExtensions::addPendingResource)
+ (WebCore::SVGDocumentExtensions::isElementInPendingResources)
+ (WebCore::SVGDocumentExtensions::removeElementFromPendingResources)
+ * svg/SVGStyledElement.h:
+ (WebCore::SVGStyledElement::clearHasPendingResourcesIfPossible)
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::buildPendingResourcesIfNeeded)
+ (WebCore::SVGStyledElement::clearHasPendingResourcesIfPossible)
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::svgAttributeChanged)
+
+2011-09-10 Adam Barth <abarth@webkit.org>
+
+ Remove DocumentWriter::deprecatedFrameEncoding()
+ https://bugs.webkit.org/show_bug.cgi?id=67882
+
+ Reviewed by Eric Seidel.
+
+ Three years ago, in http://trac.webkit.org/changeset/39026, Alexey
+ Proskuryakov added ContentDispositionEncodingFallbackArray to work
+ around a web site compatibility issue with a non-ASCII file name
+ becoming garbled when received in the Content-Disposition header.
+
+ Since that time, there has been copious discussion of this topic among
+ browser vendors, in the IETF, and in the broader web community. For
+ example, here is a Stack Overflow thread about this topic:
+
+ http://stackoverflow.com/questions/93551/how-to-encode-the-filename-parameter-of-content-disposition-header-in-http
+
+ Eric Lawrence has written a blog post that summarizes IE's perspective
+ on this issue:
+
+ http://blogs.msdn.com/b/ieinternals/archive/2010/06/07/content-disposition-attachment-and-international-unicode-characters.aspx
+
+ The current consensus is that browsers should implement RFC 6266,
+ which is a new RFC that updates the definition of the
+ Content-Disposition header. Chrome and Firefox have both implemented
+ RFC 6266 and have encountered only one issue, which was then fixed by
+ the web site operator. IE has also implemented RFC 6266, but I don't
+ have detailed information about their compatibility experience.
+
+ This patch add explicit PLATFORM #ifdefs around the quirky
+ implementation previously used in Apple's Mac and Windows ports. This
+ code is already only used on Apple's ports, so this patch introduces no
+ functional changes. It does, however, discourage other ports from
+ adopting this quirk. IMHO, Apple should remove this quirk as soon as
+ compatibility allows and converge behavior with the other major browser
+ vendors.
+
+ See bug for manual test (the bug manifests in Safari download UI).
+
+ * loader/DocumentWriter.cpp:
+ * loader/DocumentWriter.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::addExtraFieldsToRequest):
+ * platform/network/ResourceRequestBase.cpp:
+ (WebCore::ResourceRequestBase::adopt):
+ (WebCore::ResourceRequestBase::copyData):
+ * platform/network/ResourceRequestBase.h:
+
+2011-09-09 Beth Dakin <bdakin@apple.com>
+
+ Attempted Leopard build fix.
+
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::paintReplaced):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::drawPlatformResizerImage):
+
+2011-09-09 Beth Dakin <bdakin@apple.com>
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=67819
+ Use high resolution platform images when the deviceScaleFactor > 1
+ -and corresponding-
+ <rdar://problem/10003098>
+
+ Reviewed by Darin Adler.
+
+ Add all of the new high resolution images. I also removed some tiffs from the
+ project and replaced them with png equivalents (that are already checked into
+ WebCore anyway). Since the high resolution images are pngs, it makes sense to use
+ pngs for all of the images that load through Image::loadPlatformResource()
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/mac/ImageMac.mm:
+ (WebCore::Image::loadPlatformResource):
+
+ Load the @2x resource for deviceScaleFactors >= 2.
+ * editing/DeleteButtonController.cpp:
+ (WebCore::DeleteButtonController::createDeletionUI):
+
+ CachedImage::brokenImage() is no longer a static helper function, but a real
+ member function. It also now loads the @2x resource for deviceScaleFactors >= 2
+ and takes a parameter for the deviceScaleFactor. When CachedImage::image() returns
+ the brokenImage(), it just returns the 1x version. brokenImage() has to be called
+ directly to reliably return the deviceScaleFactor-appropriate resource.
+ * loader/cache/CachedImage.cpp:
+ (WebCore::CachedImage::brokenImage):
+ (WebCore::CachedImage::image):
+ * loader/cache/CachedImage.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::drawPlatformResizerImage):
+ (WebCore::RenderLayer::paintResizer):
+ * rendering/RenderLayer.h:
+
+ New static function to retrieve the deviceScaleFactor for callers that do not have
+ direct access to a Page.
+ * page/Page.cpp:
+ (WebCore::Page::deviceScaleFactor):
+ * page/Page.h:
+
+ Call CachedImage::brokenImage() for the broken-image image at an accurate
+ resolution.
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::imageSizeForError):
+ (WebCore::RenderImage::paintReplaced):
+
+2011-09-09 Erik Arvidsson <arv@chromium.org>
+
+ Move Element.contains to Node
+ https://bugs.webkit.org/show_bug.cgi?id=67651
+
+ Reviewed by Darin Adler.
+
+ This moves the contains method from Element to Node as in the DOM4 working draft:
+ http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#dom-node-contains
+
+ This also special cases Document contains to make it O(1) instead of O(depth).
+
+ Tests: fast/dom/Node/contains-method.html
+ perf/document-contains.html
+
+ * bindings/objc/PublicDOMInterfaces.h: Move contains from DOMElement to DOMNode.
+ * dom/Element.idl:
+ * dom/Node.cpp:
+ (WebCore::Node::contains): Added document special case.
+ * dom/Node.idl:
+ * editing/DeleteSelectionCommand.cpp:
+ (WebCore::DeleteSelectionCommand::mergeParagraphs): Added a null check.
+
+2011-09-09 Tim Horton <timothy_horton@apple.com>
+
+ Text rendered with a simple (i.e. 0px blur) shadow inside a transparency layer has a double shadow
+ https://bugs.webkit.org/show_bug.cgi?id=67543
+ <rdar://problem/10070536>
+
+ Reviewed by Darin Adler.
+
+ Generalize (begin|end)TransparencyLayer, which now forward
+ through to (begin|end)PlatformTransparencyLayer, so that
+ isInTransparencyLayer can exist on every platform.
+
+ Make use of isInTransparencyLayer in FontMac to disable
+ "simple" shadow drawing when the text is being rendered
+ into a transparency layer.
+
+ Test: svg/custom/simple-text-double-shadow.svg
+
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::~GraphicsContext):
+ (WebCore::GraphicsContext::beginTransparencyLayer):
+ (WebCore::GraphicsContext::endTransparencyLayer):
+ (WebCore::GraphicsContext::isInTransparencyLayer):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
+ (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
+ * platform/graphics/haiku/GraphicsContextHaiku.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/mac/FontMac.mm:
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::isInTransparencyLayer):
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/win/FontCGWin.cpp:
+ (WebCore::drawGDIGlyphs):
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::GraphicsContext::releaseWindowsContext):
+ * platform/graphics/win/GraphicsContextCairoWin.cpp:
+ (WebCore::GraphicsContext::releaseWindowsContext):
+ * platform/graphics/win/GraphicsContextWin.cpp:
+ (WebCore::GraphicsContext::getWindowsContext):
+ * platform/graphics/wince/GraphicsContextWinCE.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/wx/GraphicsContextWx.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/win/ScrollbarThemeWin.cpp:
+ * plugins/win/PluginViewWin.cpp:
+ * rendering/RenderThemeWin.cpp:
+
+2011-09-09 Julien Chaffraix <jchaffraix@webkit.org>
+
+ [V8] V8WebKitPoint::constructorCallback leaks
+ https://bugs.webkit.org/show_bug.cgi?id=67865
+
+ Reviewed by Adam Barth.
+
+ Covered by fast/js/instanceof-XMLHttpRequest.html under Valgrind.
+
+ * bindings/v8/custom/V8WebKitPointConstructor.cpp:
+ (WebCore::V8WebKitPoint::constructorCallback): Changed the code
+ to use a RefPtr (per our usual style). Also use toV8 that will
+ take care of properly wrapping the object.
+
+2011-09-09 Chris Rogers <crogers@google.com>
+
+ HRTFDatabaseLoader should not call WTF::waitForThreadCompletion() more than once
+ https://bugs.webkit.org/show_bug.cgi?id=67866
+
+ Reviewed by David Levin.
+
+ No new tests since this is difficult to test.
+ This is designed to fix existing webaudio layout test failures.
+
+ * platform/audio/HRTFDatabaseLoader.cpp:
+ (WebCore::HRTFDatabaseLoader::HRTFDatabaseLoader):
+ (WebCore::HRTFDatabaseLoader::~HRTFDatabaseLoader):
+ (WebCore::HRTFDatabaseLoader::loadAsynchronously):
+ (WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):
+ * platform/audio/HRTFDatabaseLoader.h:
+
+2011-09-09 Jessie Berlin <jberlin@apple.com>
+
+ Cookies are not available after turning off Private Browsing after the last window has been
+ closed.
+ https://bugs.webkit.org/show_bug.cgi?id=67874
+
+ Reviewed by Darin Adler.
+
+ The private browsing storage session is a global setting that is being incorrectly set on a
+ per-page basis (see http://webkit.org/b/67870).
+
+ In this case, the global value was getting out of sync with the per-page setting:
+ 1. The global value was getting set to true when setPrivateBrowsingEnabled(true) was called.
+ 2. All Pages were then closed, destroying their Settings objects.
+ 3. When a new Page was created, a new Settings object was created and its
+ m_privateBrowsingEnabled value was getting set to false.
+ 4. The WebPage settings were then applied to the new Settings object, resulting in
+ setPrivateBrowsingEnabled(false) to be called.
+ 5. An if (m_privateBrowsingEnabled == privateBrowsingEnabled) early return prevented the
+ global value for the storage session from being destroyed.
+
+ * page/Settings.cpp:
+ (WebCore::Settings::setPrivateBrowsingEnabled):
+ Move the early return to be after setting the global private browsing values, and add a
+ clearer comment + FIXME.
+
+2011-09-09 Kentaro Hara <haraken@google.com>
+
+ Generate a WebKitCSSMatrix constructor of V8 using the IDL 'Constructor' extended attribute
+ https://bugs.webkit.org/show_bug.cgi?id=67458
+
+ Reviewed by Adam Barth.
+
+ Added a 'CallWithNullValue' extended attribute.
+ If a parameter is optional and missing, 'CallWithDefaultValue'
+ handles it as a string "undefined". On the other hand,
+ 'CallWithNullValue' handles it as a null string
+ (Note: not a string "null", but a null string).
+
+ Tests: fast/dom/Window/custom-constructors.html
+ transforms/svg-vs-css.xhtml
+ transforms/cssmatrix-2d-interface.xhtml
+ transforms/cssmatrix-3d-interface.xhtmlGenerate a WebKitCSSMatrix constructor
+
+ * WebCore.gypi: Removed V8WebKitCSSMatrixConstructor.cpp.
+ * WebCore.pro: Removed V8WebKitCSSMatrixConstructor.cpp.
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateParametersCheck): If the 'CallWithNullValue' extended attribute is set, we call MAYBE_MISSING_PARAMETER() with MissingIsEmpty mode to obtain a maybe missing parameter. Otherwise, we call MAYBE_MISSING_PARAMETER() with MissingIsUndefined mode.
+ (RequiresCustomSignature):
+ * bindings/scripts/test/V8/V8TestInterface.cpp: Updated test results.
+ (WebCore::V8TestInterface::constructorCallback):
+ * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp: Ditto.
+ (WebCore::TestMediaQueryListListenerInternal::methodCallback):
+ * bindings/scripts/test/V8/V8TestObj.cpp: Ditto.
+ (WebCore::TestObjInternal::voidMethodWithArgsCallback):
+ (WebCore::TestObjInternal::intMethodWithArgsCallback):
+ (WebCore::TestObjInternal::objMethodWithArgsCallback):
+ (WebCore::TestObjInternal::methodThatRequiresAllArgsCallback):
+ (WebCore::TestObjInternal::methodThatRequiresAllArgsAndThrowsCallback):
+ (WebCore::TestObjInternal::optionsObjectCallback):
+ (WebCore::TestObjInternal::customArgsAndExceptionCallback):
+ (WebCore::TestObjInternal::withDynamicFrameAndArgCallback):
+ (WebCore::TestObjInternal::withDynamicFrameAndOptionalArgCallback):
+ (WebCore::TestObjInternal::withDynamicFrameAndUserGestureCallback):
+ (WebCore::TestObjInternal::withDynamicFrameAndUserGestureASADCallback):
+ (WebCore::TestObjInternal::methodWithOptionalArgCallback):
+ (WebCore::TestObjInternal::methodWithNonOptionalArgAndOptionalArgCallback):
+ (WebCore::TestObjInternal::methodWithNonOptionalArgAndTwoOptionalArgsCallback):
+ (WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback):
+ (WebCore::TestObjInternal::overloadedMethod1Callback):
+ (WebCore::TestObjInternal::overloadedMethod2Callback):
+ (WebCore::TestObjInternal::overloadedMethod3Callback):
+ (WebCore::TestObjInternal::overloadedMethod4Callback):
+ (WebCore::TestObjInternal::classMethodWithOptionalCallback):
+ (WebCore::TestObjInternal::enabledAtRuntimeMethod1Callback):
+ (WebCore::TestObjInternal::enabledAtRuntimeMethod2Callback):
+ * bindings/v8/V8Binding.h:
+ (WebCore::V8ParameterBase::prepareBase): The fact that V8ParameterBase does not have any object means that we do not need to prepare anything, i.e. we should just return true in this case.
+ (WebCore::::prepare): If V8ParameterBase does not have any object, then we set a null string.
+ * bindings/v8/custom/V8BindingMacros.h: MAYBE_MISSING_PARAMETER() returns the parameter of a given index if the parameter exists. If the parameter does not exist and MissingIsUndefined is set, this macro returns an object that represents undefined. If the parameter does not exist and MissingIsEmpty is set, this macro returns an empty object.
+ * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp: Removed.
+ * css/WebKitCSSMatrix.idl: Added the 'Constructor' extended attribute.
+
+2011-09-09 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Removed ENABLE(SINGLE_THREADED) support, since it is always false
+ https://bugs.webkit.org/show_bug.cgi?id=67862
+
+ Next step toward making the baseline platform assumption that threads exist.
+
+ * WebCore.pri:
+ * features.pri:
+ * platform/sql/SQLiteDatabase.cpp:
+ (WebCore::SQLiteDatabase::interrupt): Removed now-dead code.
+
+2011-09-09 Fady Samuel <fsamuel@chromium.org>
+
+ Move pageScaleFactor code from Frame.{h|cpp} to Page.{h|cpp}
+ https://bugs.webkit.org/show_bug.cgi?id=67250
+
+ Reviewed by Simon Fraser.
+
+ No new tests because there's no change in functionality.
+
+ * WebCore.exp.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::styleForDocument):
+ * dom/Element.cpp:
+ (WebCore::Element::getClientRects):
+ (WebCore::Element::getBoundingClientRect):
+ * dom/Range.cpp:
+ (WebCore::adjustFloatQuadsForScrollAndAbsoluteZoomAndPageScale):
+ * loader/HistoryController.cpp:
+ (WebCore::HistoryController::restoreScrollPositionAndViewState):
+ * page/Frame.cpp:
+ (WebCore::Frame::Frame):
+ (WebCore::Frame::pageScaleFactor):
+ * page/Frame.h:
+ * page/Page.cpp:
+ (WebCore::Page::Page):
+ (WebCore::Page::setPageScaleFactor):
+ * page/Page.h:
+ (WebCore::Page::pageScaleFactor):
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingFrame):
+ (WebCore::RenderLayerCompositor::pageScaleFactor):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::paintBoxDecorations):
+
+2011-09-09 Dominic Mazzoni <dmazzoni@google.com>
+
+ AX: Images within anchors causes crash
+ https://bugs.webkit.org/show_bug.cgi?id=44149
+
+ Reviewed by Chris Fleizach.
+
+ Fixes the way parent RenderObject of an AccessibilityRenderObject
+ is computed in the presence of adjacent continuations.
+
+ Test: accessibility/div-within-anchors-causes-crash.html
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::renderParentObject):
+
+2011-09-09 Kulanthaivel Palanichamy <kulanthaivel@codeaurora.org>
+
+ CSS rules not being applied when a hidden field is inserted between an input[type=checkbox] and a label
+ https://bugs.webkit.org/show_bug.cgi?id=66887
+
+ Reviewed by David Hyatt.
+
+ Test: fast/css/adjacent-sibling-selector.html
+
+ This patch addresses the problem of elements not getting their style recomputed
+ when they are affected by direct adjacent sibling rules and one of their sibling in
+ their corresponding rules is modified dynamically.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::canShareStyleWithElement):
+ (WebCore::parentStylePreventsSharing):
+ * css/SelectorChecker.cpp:
+ (WebCore::SelectorChecker::checkSelector):
+ * dom/Element.cpp:
+ (WebCore::Element::recalcStyle):
+ (WebCore::checkForSiblingStyleChanges):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::RenderStyle):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::affectedByDirectAdjacentRules):
+ (WebCore::InheritedFlags::setAffectedByDirectAdjacentRules):
+
+2011-09-09 Rafael Antognolli <antognolli@profusion.mobi>
+
+ Make the EFL port use the correct rendering file.
+ https://bugs.webkit.org/show_bug.cgi?id=66323
+
+ Reviewed by Martin Robinson.
+
+ When compiling with Pango support, the EFL port should use
+ FontPango.cpp instead of FontEfl.cpp (which is just full of stubs).
+
+ No new functionality so no new tests.
+
+ * CMakeListsEfl.txt:
+
+2011-09-09 Chris Rogers <crogers@google.com>
+
+ AudioBufferSourceNode must validate AudioBuffer in .buffer attribute setter
+ https://bugs.webkit.org/show_bug.cgi?id=67749
+
+ Reviewed by Kenneth Russell.
+
+ Test: webaudio/audiobuffersource-channels.html
+
+ * WebCore.gypi:
+ * bindings/js/JSAudioBufferSourceNodeCustom.cpp:
+ (WebCore::JSAudioBufferSourceNode::setBuffer):
+ * bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp: Copied from Source/WebCore/bindings/js/JSAudioBufferSourceNodeCustom.cpp.
+ (WebCore::V8AudioBufferSourceNode::bufferAccessorSetter):
+ * webaudio/AudioBufferSourceNode.cpp:
+ (WebCore::AudioBufferSourceNode::setBuffer):
+ * webaudio/AudioBufferSourceNode.h:
+ * webaudio/AudioBufferSourceNode.idl:
+
+2011-09-09 Dan Bernstein <mitz@apple.com>
+
+ RenderBlock::addOverhangingFloats() takes superfluous parameters
+ https://bugs.webkit.org/show_bug.cgi?id=67863
+
+ Reviewed by Dave Hyatt.
+
+ No new tests, because behavior is unchanged.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::addOverhangingFloats): Removed the logical{Left, Top}Offset parameters,
+ since they were always the inverse of the logical{Left, Top}() of the child parameter.
+ * rendering/RenderBlock.h:
+
+2011-09-09 Rafael Antognolli <antognolli@profusion.mobi>
+
+ Add replacement functions for gdk ones.
+ https://bugs.webkit.org/show_bug.cgi?id=66323
+
+ Reviewed by Martin Robinson.
+
+ This will allow the EFL port to don't depend on gdk anymore.
+
+ No new functionality so no new tests.
+
+ * CMakeListsEfl.txt:
+ * platform/graphics/cairo/CairoUtilities.cpp:
+ (WebCore::appendRegionToCairoContext):
+ * platform/graphics/cairo/CairoUtilities.h:
+ * platform/graphics/pango/FontPango.cpp:
+ (WebCore::drawGlyphsShadow):
+ (WebCore::Font::drawComplexText):
+ * platform/graphics/pango/PangoUtilities.cpp: Added.
+ (WebCore::getLineClipRegionFromLayoutIter):
+ (WebCore::getClipRegionFromPangoLayoutLine):
+ * platform/graphics/pango/PangoUtilities.h: Added.
+
+2011-09-09 Mark Hahnenberg <mhahnenberg@apple.com>
+
+ Unzip initialization lists and constructors in JSCell hierarchy (5/7)
+ https://bugs.webkit.org/show_bug.cgi?id=67420
+
+ Reviewed by Geoffrey Garen.
+
+ No new tests.
+
+ Completed the fifth level of the refactoring to add finishCreation()
+ methods to all classes within the JSCell hierarchy with non-trivial
+ constructor bodies.
+
+ This primarily consists of pushing the calls to finishCreation() down
+ into the constructors of the subclasses of the second level of the hierarchy
+ as well as pulling the finishCreation() calls out into the class's corresponding
+ create() method if it has one. Doing both simultaneously allows us to
+ maintain the invariant that the finishCreation() method chain is called exactly
+ once during the creation of an object, since calling it any other number of
+ times (0, 2, or more) will cause an assertion failure.
+
+ * WebCore.exp.in:
+ * bindings/js/JSDOMBinding.h:
+ (WebCore::DOMConstructorObject::DOMConstructorObject):
+ * bindings/js/JSDOMGlobalObject.cpp:
+ (WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
+ (WebCore::JSDOMGlobalObject::finishCreation):
+ * bindings/js/JSDOMGlobalObject.h:
+ * bindings/js/JSDOMWindowShell.cpp:
+ * bindings/js/JSDOMWindowShell.h:
+ (WebCore::JSDOMWindowShell::create):
+ * bindings/js/JSDOMWrapper.h:
+ (WebCore::JSDOMWrapper::JSDOMWrapper):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (GenerateImplementation):
+ * bindings/scripts/test/JS/JSTestInterface.cpp:
+ (WebCore::JSTestInterface::JSTestInterface):
+ * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
+ (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
+ * bindings/scripts/test/JS/JSTestObj.cpp:
+ (WebCore::JSTestObj::JSTestObj):
+ * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
+ (WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
+ * bridge/c/CRuntimeObject.cpp:
+ (JSC::Bindings::CRuntimeObject::CRuntimeObject):
+ (JSC::Bindings::CRuntimeObject::finishCreation):
+ * bridge/c/CRuntimeObject.h:
+ * bridge/jni/jsc/JavaRuntimeObject.cpp:
+ (JSC::Bindings::JavaRuntimeObject::JavaRuntimeObject):
+ (JSC::Bindings::JavaRuntimeObject::finishCreation):
+ * bridge/jni/jsc/JavaRuntimeObject.h:
+ * bridge/objc/ObjCRuntimeObject.h:
+ * bridge/objc/ObjCRuntimeObject.mm:
+ (JSC::Bindings::ObjCRuntimeObject::ObjCRuntimeObject):
+ (JSC::Bindings::ObjCRuntimeObject::finishCreation):
+ * bridge/objc/objc_runtime.h:
+ (JSC::Bindings::ObjcFallbackObjectImp::create):
+ * bridge/objc/objc_runtime.mm:
+ (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtRuntimeObject::QtRuntimeObject):
+ * bridge/qt/qt_pixmapruntime.cpp:
+ (JSC::Bindings::QtPixmapRuntimeObject::QtPixmapRuntimeObject):
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
+ (JSC::Bindings::QtRuntimeMethod::finishCreation):
+ * bridge/qt/qt_runtime.h:
+ * bridge/runtime_array.cpp:
+ (JSC::RuntimeArray::RuntimeArray):
+ * bridge/runtime_array.h:
+ (JSC::RuntimeArray::create):
+ * bridge/runtime_method.cpp:
+ (JSC::RuntimeMethod::RuntimeMethod):
+ (JSC::RuntimeMethod::finishCreation):
+ * bridge/runtime_method.h:
+ * bridge/runtime_object.cpp:
+ (JSC::Bindings::RuntimeObject::RuntimeObject):
+ * bridge/runtime_object.h:
+ (JSC::Bindings::RuntimeObject::create):
+
+2011-09-09 Rafael Antognolli <antognolli@profusion.mobi>
+
+ Rename FontGtk.cpp to FontPango.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=66323
+
+ Reviewed by Martin Robinson.
+
+ This file will be used by the EFL port too, and since it's not GTK
+ specific anymore, rename it to something better.
+
+ No new functionality so no new tests.
+
+ * GNUmakefile.list.am:
+ * platform/graphics/pango/FontPango.cpp: Renamed from Source/WebCore/platform/graphics/gtk/FontGtk.cpp.
+
+2011-09-09 Adam Klein <adamk@chromium.org>
+
+ Initialize ExceptionCode in Element::removeAttribute
+ https://bugs.webkit.org/show_bug.cgi?id=67820
+
+ Reviewed by Darin Adler.
+
+ Silences valgrind warning reported in http://crbug.com/76490.
+
+ No new tests since this would only very occasionally be flaky,
+ and in the codepath in the valgrind report, the ec is ignored anyway.
+
+ * dom/Element.cpp:
+ (WebCore::Element::removeAttribute): Initialize ec to 0.
+
+2011-09-09 Laszlo Gombos <laszlo.1.gombos@nokia.com>
+
+ [Qt] Remove common.pri
+ https://bugs.webkit.org/show_bug.cgi?id=67814
+
+ Reviewed by Andreas Kling.
+
+ No new tests, no change in functionality.
+
+ * CodeGenerators.pri:
+ * WebCore.pri:
+
+2011-09-09 Dominic Mazzoni <dmazzoni@google.com>
+
+ Assert being hit in AccessibilityRenderObject::addChildren()
+ https://bugs.webkit.org/show_bug.cgi?id=61805
+
+ Reviewed by Chris Fleizach.
+
+ Fix nextSibling and previousSibling to handle adjacent continuations
+ properly, otherwise nodes end up appearing in the accessibility
+ tree twice (or a debug assertion could be raised).
+
+ Test: accessibility/adjacent-continuations-cause-assertion-failure.html
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::previousSibling):
+ (WebCore::AccessibilityRenderObject::nextSibling):
+
+2011-09-08 Kentaro Hara <haraken@google.com>
+
+ Implement a WebKitAnimationEvent constructor.
+ https://bugs.webkit.org/show_bug.cgi?id=67825
+
+ Reviewed by Sam Weinig.
+
+ There is no spec for the WebKitAnimationEvent constructor
+ since it is WebKit-specific. However, based on the current
+ IDL of initWebKitAnimationEvent(), the constructor IDL
+ should be as follows.
+
+ [Constructor(DOMString type, optional WebKitAnimationEventInit eventInitDict)]
+ interface WebKitAnimationEvent : Event {
+ ...;
+ }
+
+ dictionary WebKitAnimationEventInit : EventInit {
+ DOMString animationName;
+ double elapsedTime;
+ }
+
+ Test: fast/events/constructors/webkit-animation-event-constructor.html
+
+ * bindings/generic/EventConstructors.h: Added a definition for the WebKitAnimationEvent constructor.
+ * bindings/js/JSEventConstructors.cpp: Added #includes for WebKitAnimationEvent.
+ * dom/WebKitAnimationEvent.cpp:
+ (WebCore::WebKitAnimationEventInit::WebKitAnimationEventInit):
+ (WebCore::WebKitAnimationEvent::WebKitAnimationEvent):
+ * dom/WebKitAnimationEvent.h: Added a definition for WebKitAnimationEventInit.
+ (WebCore::WebKitAnimationEvent::create):
+ * dom/WebKitAnimationEvent.idl: Makes WebKitAnimationEvent constructible.
+
+2011-09-08 Abhishek Arya <inferno@chromium.org>
+
+ :before content rendering issues with list markers and run-ins.
+ https://bugs.webkit.org/show_bug.cgi?id=67735
+
+ 1) Remove the isAnonymous checks for run-in detection since the
+ run-in can belong to a node.
+ 2) When the parent has block children, then the list marker will
+ be enclosed in an anonymous block. In that case, for going to the
+ next list marker, we need to traverse one level up. We don't need
+ this check when searching for generated run-in (loop 2), since we
+ know parent will have inline children, so the list marker wont be
+ enclosed in an anonymous block.
+
+ Reviewed by Dave Hyatt.
+
+ Tests: fast/lists/list-marker-before-content-table.html
+ fast/runin/runin-generated-before-content.html
+
+ * rendering/RenderObjectChildList.cpp:
+ (WebCore::RenderObjectChildList::beforePseudoElementRenderer):
+
+2011-09-09 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: introduce JavaScriptSourceFrame class.
+ https://bugs.webkit.org/show_bug.cgi?id=67838
+
+ SourceFrame should not deal with JavaScript debugging since it is a base class for all source frame implementations.
+
+ Reviewed by Pavel Feldman.
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/JavaScriptSourceFrame.js: Added.
+ (WebInspector.JavaScriptSourceFrame):
+ (WebInspector.SourceFrameDelegateForScriptsPanel): moved from ScriptsPanel.js
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.requestContent):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.debuggingSupported):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setBreakpoint):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.updateBreakpoint):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.removeBreakpoint):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.findBreakpoint):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.continueToLine):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.canEditScriptSource):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setScriptSource):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setScriptSourceIsBeingEdited):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.debuggerPaused):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.evaluateInSelectedCallFrame):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.releaseEvaluationResult):
+ (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.suggestedFileName):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._createSourceFrame):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.html:
+
+2011-09-09 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r94845.
+ http://trac.webkit.org/changeset/94845
+ https://bugs.webkit.org/show_bug.cgi?id=67839
+
+ This patch kicked Qt-SL bots, but we don't need this
+ modification. (Requested by ossy_ on #webkit).
+
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
+ * platform/mac/WebVideoFullscreenController.mm:
+ * platform/mac/WebVideoFullscreenHUDWindowController.mm:
+
+2011-09-09 Csaba Osztrogonác <ossy@webkit.org>
+
+ [Qt][Mac]REGRESSION(r94774): Build is broken
+ https://bugs.webkit.org/show_bug.cgi?id=67799
+
+ It seems these files didn't rebuilt because of a
+ dependency bug. Touch them to trigger a rebuild.
+
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
+ * platform/mac/WebVideoFullscreenController.mm:
+ * platform/mac/WebVideoFullscreenHUDWindowController.mm:
+
+2011-09-09 Alexander Pavlov <apavlov@chromium.org>
+
+ Unreviewed, Chromium valgrind build fix.
+
+ Web Inspector: [Chromium] Valgrind signals use of uninitialized field in InspectorStyleSheetForInlineStyle
+ https://bugs.webkit.org/show_bug.cgi?id=67837
+
+ * inspector/InspectorStyleSheet.cpp:
+ (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
+
+2011-09-09 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r94536.
+ http://trac.webkit.org/changeset/94536
+ https://bugs.webkit.org/show_bug.cgi?id=67836
+
+ breaks absoluteLocation() of RelatedMouseEvent (Requested by
+ jknotten on #webkit).
+
+ * dom/MouseRelatedEvent.cpp:
+ (WebCore::MouseRelatedEvent::MouseRelatedEvent):
+
+2011-09-08 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: live edit both for JS and CSS is not discoverable.
+ https://bugs.webkit.org/show_bug.cgi?id=65962
+
+ Add the "Edit" button to SourceFrame, so that resources/scripts can be edited both in the
+ Resources and the Scripts panels. The button is grayed out if the resource/script is not editable.
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/Images/statusbarButtonGlyphs.png:
+ * inspector/front-end/ResourceView.js:
+ (WebInspector.EditableResourceSourceFrame.prototype.canEditSource):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.get statusBarItems):
+ (WebInspector.ScriptsPanel.prototype.set visibleView):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame):
+ (WebInspector.SourceFrame.prototype.get statusBarItems):
+ (WebInspector.SourceFrame.prototype._initializeTextViewer):
+ (WebInspector.SourceFrame.prototype._editButtonClicked):
+ (WebInspector.SourceFrame.prototype.canEditSource):
+ (WebInspector.SourceFrame.prototype.startEditing):
+ (WebInspector.SourceFrame.prototype.commitEditing):
+ (WebInspector.SourceFrame.prototype._setReadOnly):
+ (WebInspector.TextViewerDelegateForSourceFrame.prototype.doubleClick):
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextEditorMainPanel.prototype.set readOnly):
+ (WebInspector.TextEditorMainPanel.prototype._updateSelectionOnStartEditing):
+ * inspector/front-end/inspector.css:
+ (button.edit-source-status-bar-item .glyph):
+ (button.edit-source-status-bar-item.toggled-on .glyph):
+
+2011-09-09 Shinya Kawanaka <shinyak@google.com>
+
+ Crashes in WebCore::AppendNodeCommand::create().
+ https://bugs.webkit.org/show_bug.cgi?id=67767
+
+ Reviewed by Darin Adler.
+
+ In CompositeEditCommand::closeParagraphUnderNewElement(), lastNode could be a non Element node.
+ The current code assumes lastNode is an Element node. This patch checks it.
+
+ Test: editing/execCommand/ident-crashes-topnode-is-text.html
+
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): Added an element node check.
+
+2011-09-09 Shinya Kawanaka <shinyak@google.com>
+
+ Crashes in WebCore::ApplyStyleCommand.doApply()
+ https://bugs.webkit.org/show_bug.cgi?id=67765
+
+ Reviewed by Ryosuke Niwa.
+
+ WebCore::enclosingBlock may return null, but ApplyStyleCommand::applyBlockStyle did not check it. This patch make it to be checked.
+
+ Test: editing/style/remove-format-without-enclosing-block.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::applyBlockStyle): Added null check.
+
+2011-09-09 James Simonsen <simonjam@chromium.org>
+
+ [Chromium] Fix leak of Skia stream with custom CSS fonts
+ https://bugs.webkit.org/show_bug.cgi?id=67815
+
+ Reviewed by Adam Barth.
+
+ Test: fast/css/font-face-opentype.html under valgrind
+
+ * platform/graphics/mac/FontCustomPlatformData.cpp:
+ (WebCore::createFontCustomPlatformData):
+ * platform/graphics/skia/FontCustomPlatformData.cpp:
+ (WebCore::createFontCustomPlatformData):
+
+2011-09-07 Ryosuke Niwa <rniwa@webkit.org>
+
+ Push more code from HTMLInputElement::setValue to TextFieldInputType::setValue
+ https://bugs.webkit.org/show_bug.cgi?id=67742
+
+ Reviewed by Darin Adler.
+
+ Moved more code in HTMLInputElement::setValue to TextFieldInputType::setValue, and merged
+ InputType::valueChanged into InputType::setValue. Also introduced
+ InputType::dispatchChangeEventInResponseToSetValue to be overridden by TextFieldInputType.
+
+ * html/BaseButtonInputType.cpp:
+ (WebCore::BaseButtonInputType::setValue):
+ * html/BaseButtonInputType.h:
+ * html/BaseCheckableInputType.cpp:
+ (WebCore::BaseCheckableInputType::setValue):
+ * html/BaseCheckableInputType.h:
+ * html/ColorInputType.cpp:
+ * html/ColorInputType.h:
+ * html/FileInputType.cpp:
+ (WebCore::FileInputType::setValue):
+ * html/FileInputType.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::setValue):
+ * html/HTMLInputElement.h:
+ (WebCore::HTMLInputElement::cacheSelectionInResponseToSetValue):
+ * html/HiddenInputType.cpp:
+ (WebCore::HiddenInputType::setValue):
+ * html/HiddenInputType.h:
+ * html/InputType.cpp:
+ (WebCore::InputType::setValue):
+ (WebCore::InputType::dispatchChangeEventInResponseToSetValue):
+ * html/InputType.h:
+ * html/RangeInputType.cpp:
+ (WebCore::RangeInputType::setValue):
+ * html/RangeInputType.h:
+ * html/TextFieldInputType.cpp:
+ (WebCore::TextFieldInputType::setValue):
+ (WebCore::TextFieldInputType::dispatchChangeEventInResponseToSetValue):
+ * html/TextFieldInputType.h:
+
+2011-09-08 Annie Sullivan <sullivan@chromium.org>
+
+ Crashes in WebCore::InsertNodeBeforeCommand constructor.
+ https://bugs.webkit.org/show_bug.cgi?id=67763
+
+ Reviewed by Ryosuke Niwa.
+
+ Changes editableRootForPosition() to use the position's containerNode instead of deprecatedNode so that
+ positions which are before or after a given node cannot return that node as the editable root.
+
+ Test: editing/inserting/insert-paragraph-selection-outside-contenteditable.html
+
+ * editing/htmlediting.cpp:
+ (WebCore::editableRootForPosition): use containerNode instead of deprecatedNode.
+
+2011-09-08 James Weatherall <wez@chromium.org>
+
+ Release the reference to the HTMLPlugInElement's script object, when the element is removed from the document. This breaks a cyclical reference that would otherwise cause the element to be retained until the document is torn down.
+ https://bugs.webkit.org/show_bug.cgi?id=66181
+
+ Reviewed by Anders Carlsson.
+
+ No new tests - no functional change.
+
+ * html/HTMLPlugInElement.cpp:
+ (WebCore::HTMLPlugInElement::removedFromDocument):
+ * html/HTMLPlugInElement.h:
+
+2011-09-08 Daniel Bates <dbates@webkit.org>
+
+ XSS filter bypass via non-standard URL encoding
+ https://bugs.webkit.org/show_bug.cgi?id=66588
+
+ Reviewed by Adam Barth.
+
+ Tests: http/tests/security/xssAuditor/script-tag-with-16bit-unicode-surrogate-pair.html
+ http/tests/security/xssAuditor/script-tag-with-16bit-unicode.html
+ http/tests/security/xssAuditor/script-tag-with-16bit-unicode2.html
+ http/tests/security/xssAuditor/script-tag-with-16bit-unicode3.html
+ http/tests/security/xssAuditor/script-tag-with-16bit-unicode4.html
+ http/tests/security/xssAuditor/script-tag-with-16bit-unicode5.html
+ http/tests/security/xssAuditor/script-tag-with-three-times-url-encoded-16bit-unicode.html
+ http/tests/security/xssAuditor/window-open-without-url-should-not-assert.html
+
+ Implement support for decoding non-standard 16-bit Unicode escape sequences of
+ the form %u26C4 as described in <http://www.w3.org/International/iri-edit/draft-duerst-iri.html#anchor29>.
+
+ See also <http://en.wikipedia.org/wiki/Percent-encoding#Non-standard_implementations>.
+
+ * GNUmakefile.list.am: Added DecodeEscapeSequences.h.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * html/parser/XSSAuditor.cpp:
+ (WebCore::decode16BitUnicodeEscapeSequences): Added.
+ (WebCore::decodeStandardURLEscapeSequences): Added.
+ (WebCore::fullyDecodeString): Modified to call decode16BitUnicodeEscapeSequences().
+ (WebCore::XSSAuditor::init): Modified to return early when the URL of the document
+ is the empty string. This can happen when opening a new browser window or calling
+ window.open("").
+ * platform/KURL.cpp:
+ (WebCore::decodeURLEscapeSequences): Abstracted code into template-function decodeEscapeSequences().
+ This function just calls decodeEscapeSequences<URLEscapeSequence>().
+ * platform/text/DecodeEscapeSequences.h: Added.
+ (WebCore::Unicode16BitEscapeSequence::findInString):
+ (WebCore::Unicode16BitEscapeSequence::matchStringPrefix):
+ (WebCore::Unicode16BitEscapeSequence::decodeRun):
+ (WebCore::URLEscapeSequence::findInString):
+ (WebCore::URLEscapeSequence::matchStringPrefix):
+ (WebCore::URLEscapeSequence::decodeRun):
+ (WebCore::decodeEscapeSequences):
+
+2011-09-08 Adam Barth <abarth@webkit.org>
+
+ DocumentWriter::deprecatedFrameEncoding doesn't need to refert to Settings
+ https://bugs.webkit.org/show_bug.cgi?id=67812
+
+ Reviewed by Eric Seidel.
+
+ The one caller of this function does this work already.
+
+ * loader/DocumentWriter.cpp:
+ (WebCore::DocumentWriter::deprecatedFrameEncoding):
+
+2011-09-08 Adam Klein <adamk@chromium.org>
+
+ Always zero-out m_sortedTextBoxesPosition to avoid uninitialized read in TextIterator
+ https://bugs.webkit.org/show_bug.cgi?id=67810
+
+ Reviewed by Tony Chang.
+
+ Reported as a valgrind failure in http://crbug.com/84777.
+
+ No possible change in behavior, so no tests. The unitialized read
+ could never have an impact:
+
+ if (m_sortedTextBoxesPosition + 1 < m_sortedTextBoxes.size()) ...
+
+ Since m_sortedTextBoxes.size() will be zero here if
+ m_sortedTextBoxesPosition is uninitialized, and they're both unsigned,
+ so no possible value of m_sortedTextBoxesPosition could be < 0.
+
+ * editing/TextIterator.cpp:
+ (WebCore::TextIterator::TextIterator):
+
+2011-09-08 Tony Chang <tony@chromium.org>
+
+ Cleanup of switch statements with default cases
+ https://bugs.webkit.org/show_bug.cgi?id=67808
+
+ Reviewed by Adam Barth.
+
+ No new tests, just a small refactoring.
+
+ * page/WebKitAnimation.cpp:
+ (WebCore::WebKitAnimation::fillMode):
+ * platform/audio/Distance.cpp:
+ (WebCore::DistanceEffect::gain):
+
+2011-09-08 Eric Seidel <eric@webkit.org>
+
+ [BiDi] Add support for the BDI element
+ https://bugs.webkit.org/show_bug.cgi?id=50913
+
+ Reviewed by Ryosuke Niwa.
+
+ This patch is ridiculously trivial now that we have unicode-bidi: isolate support in WebKit.
+
+ Test: css3/bdi-element.html
+
+ * css/html.css:
+ (bdi):
+
+2011-09-08 David Levin <levin@chromium.org>
+
+ [chromium] KURL::copy doesn't produce something usable on another thread.
+ https://bugs.webkit.org/show_bug.cgi?id=67809
+
+ Reviewed by Adam Barth.
+
+ No new functionality exposed so no new test. This was caught by testing code: the thread
+ sanitizer run in Chromium (http://code.google.com/p/chromium/issues/detail?id=93708).
+
+ * platform/KURLGoogle.cpp:
+ (WebCore::KURLGooglePrivate::copyTo): Clear out the invalid String so that it will
+ not be used on another thread.
+
+2011-09-08 Alexey Proskuryakov <ap@apple.com>
+
+ REGRESSION (r66874): Missing RefPtr in ScriptController
+ https://bugs.webkit.org/show_bug.cgi?id=67748
+
+ Reviewed by Adam Barth.
+
+ * bindings/ScriptControllerBase.cpp: (WebCore::ScriptController::executeScript):
+
+2011-09-08 Adam Barth <abarth@webkit.org>
+
+ Second attempt to fix Chromium build.
+
+ * dom/Document.h:
+
+2011-09-08 Oliver Hunt <oliver@apple.com>
+
+ Use bump allocator for initial property storage
+ https://bugs.webkit.org/show_bug.cgi?id=67494
+
+ Reviewed by Geoffrey Garen.
+
+ Add a forwarding header.
+
+ * ForwardingHeaders/runtime/StorageBarrier.h: Added.
+
+2011-09-08 Roland Steiner <rolandsteiner@chromium.org>
+
+ Unreviewed, rolling out r94809.
+ http://trac.webkit.org/changeset/94809
+ https://bugs.webkit.org/show_bug.cgi?id=67718
+
+ commit _still_ premature, despite CQ eagerness
+
+ * html/HTMLAttributeNames.in:
+ * html/HTMLStyleElement.cpp:
+ * html/HTMLStyleElement.h:
+ * html/HTMLStyleElement.idl:
+
+2011-09-08 Sam Weinig <sam@webkit.org>
+
+ Remove the Completion object from JSC, I have never liked it
+ https://bugs.webkit.org/show_bug.cgi?id=67755
+
+ Reviewed by Gavin Barraclough.
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::reportException):
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSEventListener::handleEvent):
+ * bindings/js/JSInjectedScriptManager.cpp:
+ (WebCore::InjectedScriptManager::createInjectedScript):
+ * bindings/js/JSMainThreadExecState.h:
+ (WebCore::JSMainThreadExecState::evaluate):
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::evaluateInWorld):
+ * bindings/js/WorkerScriptController.cpp:
+ (WebCore::WorkerScriptController::evaluate):
+ * bindings/objc/WebScriptObject.mm:
+ (-[WebScriptObject evaluateWebScript:]):
+ * bridge/NP_jsobject.cpp:
+ (_NPN_Evaluate):
+ * bridge/jni/jni_jsobject.mm:
+ (JavaJSObject::eval):
+
+2011-09-08 Adam Barth <abarth@webkit.org>
+
+ Inline DocumentWriter::encoding() into it's only caller: deprecatedFrameEncoding()
+ https://bugs.webkit.org/show_bug.cgi?id=67807
+
+ Reviewed by Eric Seidel.
+
+ This function is super nutty. We don't want any more folks to call it
+ thinking that it does something sane.
+
+ * loader/DocumentWriter.cpp:
+ (WebCore::DocumentWriter::deprecatedFrameEncoding):
+ * loader/DocumentWriter.h:
+
+2011-09-08 Roland Steiner <rolandsteiner@chromium.org>
+
+ <style scoped>: Add 'scoped' attribute
+ https://bugs.webkit.org/show_bug.cgi?id=67718
+
+ Add 'scoped' attribute to IDL and attribute list,
+ implement and test setting/resetting of the attribute.
+
+ Reviewed by Dimitri Glazkov.
+
+ Test: fast/css/style-scoped/basic-attribute.html
+
+ * html/HTMLAttributeNames.in:
+ * html/HTMLStyleElement.cpp:
+ (WebCore::HTMLStyleElement::scoped):
+ (WebCore::HTMLStyleElement::setScoped):
+ (WebCore::HTMLStyleElement::scopingElement):
+ * html/HTMLStyleElement.h:
+ * html/HTMLStyleElement.idl:
+
+2011-09-08 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r94781.
+ http://trac.webkit.org/changeset/94781
+ https://bugs.webkit.org/show_bug.cgi?id=67806
+
+ Broke Objective-C binding on Mac (Requested by rniwa on
+ #webkit).
+
+ * dom/Element.idl:
+ * dom/Node.cpp:
+ (WebCore::Node::contains):
+ * dom/Node.idl:
+ * editing/DeleteSelectionCommand.cpp:
+ (WebCore::DeleteSelectionCommand::mergeParagraphs):
+
+2011-09-08 Eric Seidel <eric@webkit.org>
+
+ Remove DocumentWriter::setDecoder as a grep of WebKit shows no callers
+ https://bugs.webkit.org/show_bug.cgi?id=67803
+
+ Reviewed by Adam Barth.
+
+ Smells like dead code.
+
+ * loader/DocumentWriter.cpp:
+ * loader/DocumentWriter.h:
+
+2011-09-08 Shinya Kawanaka <shinyak@google.com>
+
+ Crashes in WebCore::ReplaceSelectionCommand::doApply
+ https://bugs.webkit.org/show_bug.cgi?id=67762
+
+ Reviewed by Ryosuke Niwa.
+
+ WebCore::enclosingBlock may return null, but its return value was not checked. This patch checks it.
+
+ Tests: editing/inserting/insert-without-enclosing-block.html
+
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::doApply): Added null check.
+
+2011-09-08 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r94784.
+ http://trac.webkit.org/changeset/94784
+ https://bugs.webkit.org/show_bug.cgi?id=67796
+
+ Commit was premature (Requested by rolandsteiner on #webkit).
+
+ * html/HTMLAttributeNames.in:
+ * html/HTMLStyleElement.cpp:
+ * html/HTMLStyleElement.h:
+ * html/HTMLStyleElement.idl:
+
+2011-09-08 W. James MacLean <wjmaclean@chromium.org>
+
+ [chromium] Add backend compositor support for rescaling (zooming) textures during zoom animation.
+ https://bugs.webkit.org/show_bug.cgi?id=66472
+
+ This patch contains plumbing from Internals to WebViewImpl that can be removed
+ at a later time when the zoom animator code is complete.
+
+ Reviewed by James Robinson.
+
+ Test: platform/chromium/compositing/zoom-animator-scale-test.html
+
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings):
+ * page/Settings.h:
+ (WebCore::Settings::setZoomAnimatorScale):
+ (WebCore::Settings::zoomAnimatorScale):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::drawLayersInternal):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::setZoomAnimatorScale):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::commitTo):
+ (WebCore::CCLayerTreeHost::setZoomAnimatorScale):
+ (WebCore::CCLayerTreeHost::updateLayers):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::setZoomAnimatorScale):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
+ * testing/Internals.cpp:
+ (WebCore::Internals::setZoomAnimatorScale):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2011-09-08 Eric Carlson <eric.carlson@apple.com>
+
+ HTMLMediaElement is missing initialTime attribute
+ https://bugs.webkit.org/show_bug.cgi?id=67791
+
+ Reviewed by Darin Adler.
+
+ Test: media/media-initialTime.html
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::initialTime):
+ * html/HTMLMediaElement.h:
+ * html/HTMLMediaElement.idl:
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::MediaPlayer::initialTime):
+ * platform/graphics/MediaPlayer.h:
+ * platform/graphics/MediaPlayerPrivate.h:
+ (WebCore::MediaPlayerPrivateInterface::initialTime):
+
+2011-09-03 Robert Hogan <robert@webkit.org>
+
+ Elements with position:absolute don't move to correct position after images load
+ https://bugs.webkit.org/show_bug.cgi?id=54611
+
+ Reviewed by Simon Fraser.
+
+ Test: fast/block/positioning/absolute-layout-after-image-load.html
+
+ In the test the 'label' block is an absolutely positioned child of an inline flow. So during layout,
+ this RenderBlock::layoutPositionedObjects fails to dirty it for rendering because it requires
+ the parent to be a BlockFlow. The code to do this was introduced in http://trac.webkit.org/changeset/8284.
+ There doesn't seem to be a good reason for requiring a BlockFlow, so remove the check.
+
+ Note: Although the issue is encountered only on first load without a fragment identifier, it
+ happens reliably when you include the fragment identifier in the url (#Footnote_1). This is so
+ because scrolling to the fragment always happens before the image has loaded, rendering the page
+ and clearing the initial dirty bits in the positioned element's renderer. When the image finally
+ loads in this scenario, the positioned element is otherwise clean and relies on the above code to get
+ re-rendered.
+
+ Note: This was originally landed in r94755 but positioned-float-layout-after-image-load.html exposed
+ an ASSERT bug, unrelated to this change, and was rolled out. That issue is tracked separately
+ in bug 67759.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutPositionedObjects): remove the check for r->parent()->isBlockFlow() when
+ deciding whether to mark children for layout
+
+2011-09-08 Roland Steiner <rolandsteiner@chromium.org>
+
+ <style scoped>: Add 'scoped' attribute
+ https://bugs.webkit.org/show_bug.cgi?id=67718
+
+ Add 'scoped' attribute to IDL and attribute list,
+ implement and test setting/resetting of the attribute.
+
+ Reviewed by Dimitri Glazkov.
+
+ Test: fast/css/style-scoped/basic-attribute.html
+
+ * html/HTMLAttributeNames.in:
+ * html/HTMLStyleElement.cpp:
+ (WebCore::HTMLStyleElement::scoped):
+ (WebCore::HTMLStyleElement::setScoped):
+ (WebCore::HTMLStyleElement::scopingElement):
+ * html/HTMLStyleElement.h:
+ * html/HTMLStyleElement.idl:
+
+2011-09-08 Erik Arvidsson <arv@chromium.org>
+
+ Move Element.contains to Node
+ https://bugs.webkit.org/show_bug.cgi?id=67651
+
+ Reviewed by Darin Adler.
+
+ This moves the contains method from Element to Node as in the DOM4 working draft:
+ http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#dom-node-contains
+
+ This also special cases Document contains to make it O(1) instead of O(depth).
+
+ Tests: fast/dom/Node/contains-method.html
+ perf/document-contains.html
+
+ * dom/Element.idl:
+ * dom/Node.cpp:
+ (WebCore::Node::contains): Added document special case.
+ * dom/Node.idl:
+ * editing/DeleteSelectionCommand.cpp:
+ (WebCore::DeleteSelectionCommand::mergeParagraphs): Added a null check.
+
+2011-09-08 Chris Rogers <crogers@google.com>
+
+ Check AudioContext createChannelMerger() for thread safety
+ https://bugs.webkit.org/show_bug.cgi?id=67247
+
+ Reviewed by Kenneth Russell.
+
+ Test: webaudio/audiochannelmerger-stereo.html
+
+ * webaudio/AudioChannelMerger.cpp:
+ (WebCore::AudioChannelMerger::process):
+ (WebCore::AudioChannelMerger::checkNumberOfChannelsForInput):
+ * webaudio/AudioChannelMerger.h:
+
+2011-09-08 Ned Holbrook <nholbrook@apple.com>
+
+ Refactor hyphen measurement
+ https://bugs.webkit.org/show_bug.cgi?id=67728
+
+ Reviewed by Darin Adler.
+
+ No new tests, purely refactoring.
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::measureHyphenWidth): Added.
+ (WebCore::setLogicalWidthForTextRun): Use measureHyphenWidth().
+ (WebCore::tryHyphenating): Ditto.
+ (WebCore::RenderBlock::LineBreaker::nextLineBreak): Ditto.
+
+2011-09-08 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Remove LayoutStateDisabler instances from RenderLayer
+ https://bugs.webkit.org/show_bug.cgi?id=66896
+
+ Reviewed by Simon Fraser.
+
+ As part of r93614, scrollTo does not call updateLayerPositions anymore.
+ This means that we don't need to disable LayoutState from the scrolling code
+ in RenderLayer.
+
+ This change is covered by the existing tests.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::updateLayerPositions): Updated the comment
+ that was not accurate anymore. Also explained what is wrong with
+ LayoutState vs RenderLayer now. Note that the ASSERT is still
+ valid and will not trigger as the remaining calls to updateLayerPositions
+ are done *outside* layout() where LayoutState is not set (thus disabled).
+
+ (WebCore::RenderLayer::updateScrollInfoAfterLayout): Removed
+ 2 LayoutStateDisabler surrounding scrollToOffset.
+
+2011-09-08 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Factor out the code to get the first non-null RenderTableSection in RenderTable
+ https://bugs.webkit.org/show_bug.cgi?id=66972
+
+ Reviewed by Darin Adler.
+
+ Refactoring only, covered by existing tests.
+
+ * accessibility/AccessibilityTable.cpp:
+ (WebCore::AccessibilityTable::addChildren):
+ (WebCore::AccessibilityTable::cellForColumnAndRow):
+ * accessibility/AccessibilityTableCell.cpp:
+ (WebCore::AccessibilityTableCell::rowIndexRange):
+ Updated those for the signature change in sectionBelow. Also added
+ a FIXME where topSection should be used instead of iterating
+ over the section (and likely missing some corner cases).
+
+ * rendering/FixedTableLayout.cpp:
+ (WebCore::FixedTableLayout::calcWidthArray):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::calcBorderStart):
+ (WebCore::RenderTable::calcBorderEnd):
+ (WebCore::RenderTable::outerBorderBefore):
+ (WebCore::RenderTable::sectionAbove):
+ (WebCore::RenderTable::sectionBelow):
+ (WebCore::RenderTable::firstLineBoxBaseline):
+ Updated all those functions to use the newly added functions. Also changed
+ the variable names to match the functions.
+
+ (WebCore::RenderTable::layout):
+ (WebCore::RenderTable::topNonEmptySection): Newly added function
+ that returns the top non null section of the table that has at least a
+ row.
+
+ (WebCore::RenderTable::cellAbove):
+ (WebCore::RenderTable::cellBelow):
+ Update the signature of those 2 functions to take an enum as it makes the
+ rest of the code more readable.
+
+ * rendering/RenderTable.h:
+ (WebCore::RenderTable::topSection): Newly added function to return
+ the top non null section in the table.
+
+2011-04-19 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Ryosuke Niwa.
+
+ [BiDi] [CSS3] MASTER: Add support for the unicode-bidi:isolate CSS property
+ https://bugs.webkit.org/show_bug.cgi?id=50912
+
+ This patch adds support for CSS3 unicode-bidi: isolate property, under the -webkit- vendor prefix.
+ Parsing support was added in a previous patch, this wires up the RenderStyle values
+ to code changes in the BidiResolver.
+
+ The effect of this patch is that it makes it possible to "isolate" runs of text
+ so that their RTL-ness or LTR-ness does not bleed out into the rest of your text
+ and effect layout. This is important because many unicode characters (like parenthesis, ':', '-', etc.)
+ do not have intrinsic directionality and are affected by whatever characters come before/after.
+ If you have usernames which include RTL text, if you inject those usernames in your page
+ you might end up with nearby characters moving!
+ (like 'RTL USERNAME - my awesome site' as a title, could end up as
+ 'my awesome site - USERNAME RTL' when correct would be 'USERNAME RTL - my awesome site'.)
+ This patch makes it possible to wrap sections of text in isolated spans, so that
+ they correctly order all their RTL/LTR contents, but also correctly participate in the
+ larger RTL/LTR ordering without affecting nearby characters.
+
+ Because much of this code is old and rarely touched, I've included extra background
+ information in hopes of expanding my set of potential reviewers:
+
+ WebKit uses the standard "Unicode Bidi Algorithm" henceforth known as the UBA.
+ The UBA is defined at http://unicode.org/reports/tr9/ for those not faint of heart.
+
+ Text layout is done per-block (<div>, <p>, etc), and begins with a string of text
+ (which in our case comes from the rendering tree) and a specified width.
+ First: Text is measured and wrapped into lines.
+ Second: The UBA is run over the lines of text.
+ Third: WebKit builds InlineBoxes (its linebox tree) and eventually render the text.
+
+ This patch modifies our UBA to ignore all text content inside "isolated" inlines (treating them as neutral characters)
+ and then adds another step after running the UBA, where we run the UBA recursively on any
+ previously identified "isolated" content.
+
+ The result of the UBA is an ordered list of "runs" of text with the RTL runs
+ correctly RTL and the LTR runs LTR.
+
+ The UBA does three things:
+ 1. It assigns a "class" to each character in a text stream (like neutral, strongly-RTL, strongly-LTR, etc.)
+ 2. Divides the text stream up into "runs" of characters of the same directionality (all RTL, all LTR).
+ 3. Re-orders those runs.
+
+ The UBA in WebKit is implemented by BidiResolver<T> in BidiResolver.h
+
+ The InlineBidiResolver (BidiResolver specialization which knows about the rendering tree)
+ walks along its InlineIterators, looking at each character and running the
+ Unicode Bidi Algorithm (UBA). It walks through the rendering tree subtree under
+ a block, using a (poorly named) bidiNext function which returns the next inline object.
+ Each inline object (or text character there-in) has a corresponding meaning in the UBA
+ such as a "strong RTL" character or a "neutral" character. The UBA reads these sequence
+ of characters, and figures out what direction (RTL or LTR) to assign to any neutral
+ characters it encounters, based on surrounding characters.
+
+ As the InlineBidiResolver is walking the rendering tree, the InlineIterator::advance()
+ function calls bidiNext(), which in turn can call notifyObserverEnteredObject/notifyObserverWillExitObject
+ notifying InlineBidiResolver that it is entering or exiting an "isolated"
+ span, at which point it will either start or stop ignoring the stream of characters
+ from the InlineIterator. When the InlineBidiResolver is ignoring the stream of
+ characters, instead of creating separate BidiRuns at each RTL/LTR boundary
+ as it normally would, it instead creates one "fake" run for the entire
+ isolated span. These fake runs participate in the normal UBA run ordering process,
+ but after the main UBA, a second pass is made where we examine
+ the list of isolatedRuns() and run the UBA on each of them, replacing the fake
+ run we previously inserted, with the resulting list of runs from that inner UBA run.
+ The way it "ignores" characters is by treating them all as neutral when inside an isolate.
+ Thus all the characters end up grouped in a single run, but their directionality (as a group)
+ is correctly affected by any surrounding strong characters.
+
+ If you understood that last paragraph, than the rest of the change is just plumbing.
+
+ I added a huge number of FIXMEs to this code, because this code has a variety of
+ design choices (or lack there of) which make some of this very difficult.
+
+ For example the bidiNext iterator function has two sets of mutually exclusive
+ parameters and can be used optionally with or without an observer. Prior to this
+ change there was only ever one object which cared about observing a walk over inlines
+ and that was InlineBidiResolver. This patch (regretfully) templatizes bidiNext
+ to support a new Observer type. The correct fix would be to rip bidiNext into
+ multiple functions and rip need for observation out of InlineBidiResolver.
+ Unfortunately I've tried both in separate bugs and failed. This code is very very
+ old and very poorly understood. We're slowly moving forward, this is another tiny step.
+
+ This is my fourth iteration of this patch (I'm happy to do more!), but I believe
+ it's a good compromise between fixing all of the design gotcha's of our bidi
+ system and doing the minimum amount to add this killer CSS feature.
+
+ I ran the PLT. (It averaged 0.2% faster with this change, but I attribute that to noise).
+
+ Test: css3/unicode-bidi-isolate-basic.html and css3/unicode-bidi-isolate-aharon.html
+
+ * platform/text/BidiResolver.h:
+ (WebCore::BidiCharacterRun::setNext):
+ - Needed by the new replaceRunWithRuns function.
+ (WebCore::BidiResolver::BidiResolver):
+ (WebCore::BidiResolver::~BidiResolver):
+ (WebCore::BidiResolver::enterIsolate):
+ (WebCore::BidiResolver::exitIsolate):
+ (WebCore::BidiResolver::inIsolate):
+ (WebCore::BidiResolver::isolatedRuns):
+ - Used to track isolated spans of text as they're encoutered.
+ They're stuffed away here to be processed recursively
+ after the main UBA has done its thang.
+ (WebCore::::appendRun):
+ (WebCore::::embed):
+ (WebCore::::commitExplicitEmbedding):
+ (WebCore::::createBidiRunsForLine):
+ * platform/text/BidiRunList.h:
+ (WebCore::::replaceRunWithRuns):
+ - This effectively takes all the runs from one runlist and adds them to
+ this one, replacing the fake run we inserted during a previous pass of the UBA.
+ - This RunList now owns the runs, so we call clear() on the other RunList
+ so that we don't end up double-freeing the runs.
+ (WebCore::::clear):
+ - This allows us to "take" runs from another run list and then clear it.
+ * rendering/BidiRun.h:
+ (WebCore::BidiRun::object):
+ * rendering/InlineIterator.h:
+ (WebCore::InlineIterator::object):
+ (WebCore::InlineIterator::offset):
+ (WebCore::notifyObserverEnteredObject): Mostly just renaming and adding a FIXME about plaintext.
+ (WebCore::notifyObserverWillExitObject): Mostly just renaming.
+ (WebCore::addPlaceholderRunForIsolatedInline):
+ (WebCore::isIsolatedInline):
+ (WebCore::InlineBidiResolver::appendRun):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::statusWithDirection):
+ (WebCore::constructBidiRuns):
+ - This is the heavy-lifting of this change. This function
+ runs the UBA recursively on all the previously identified isolated spans.
+ - If we encounter more isolated spans in our run, we just add them to the
+ main list an keep going. Because the runs are linked lists and we have
+ direct pointers to our placeholder objects, we don't care what order
+ we process the placeholders in, so long as when we're done, they're all processed.
+ (WebCore::RenderBlock::layoutInlineChildren):
+
+2011-09-08 Kentaro Hara <haraken@google.com>
+
+ Implement a ProgressEvent constructor for JSC
+ https://bugs.webkit.org/show_bug.cgi?id=67537
+
+ Reviewed by Sam Weinig.
+
+ The spec for the ProgressEvent constructor is here:
+ http://www.w3.org/TR/progress-events/#interface-progressevent
+
+ Test: fast/events/constructors/progress-event-constructor.html
+
+ * bindings/generic/EventConstructors.h: Added a definition for the ProgressEvent constructor.
+ * bindings/js/JSDictionary.cpp:
+ (WebCore::JSDictionary::convertValue): Converts an ECMA-262 Number into an IDL unsigned long long value. Spec: http://www.w3.org/TR/WebIDL/#es-unsigned-long-long
+ * bindings/js/JSEventConstructors.cpp: Added #includes for ProgressEvent.
+ * dom/ProgressEvent.cpp:
+ (WebCore::ProgressEventInit::ProgressEventInit):
+ (WebCore::ProgressEvent::ProgressEvent):
+ * dom/ProgressEvent.h: Added a definition for ProgressEventInit.
+ (WebCore::ProgressEvent::create):
+ * dom/ProgressEvent.idl: Makes ProgressEvent constructible.
+
+2011-09-08 Ryosuke Niwa <rniwa@webkit.org>
+
+ Make bindings tests quiet after r94701.
+
+ * bindings/scripts/test/JS/JSTestInterface.cpp:
+ * bindings/scripts/test/JS/JSTestInterface.h:
+ (WebCore::JSTestInterfacePrototype::JSTestInterfacePrototype):
+ * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
+ * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
+ (WebCore::JSTestMediaQueryListListenerPrototype::JSTestMediaQueryListListenerPrototype):
+ * bindings/scripts/test/JS/JSTestObj.cpp:
+ * bindings/scripts/test/JS/JSTestObj.h:
+ (WebCore::JSTestObjPrototype::JSTestObjPrototype):
+ * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
+ * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
+ (WebCore::JSTestSerializedScriptValueInterfacePrototype::JSTestSerializedScriptValueInterfacePrototype):
+
+2011-09-07 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: get rid of RawSourceCode.createSourceMappingIfNeeded.
+ https://bugs.webkit.org/show_bug.cgi?id=67717
+
+ Listen to SourceMappingUpdated event instead of using createSourceMappingIfNeeded.
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel):
+ (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation.updateAnchor):
+ (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation):
+ (WebInspector.DebuggerPresentationModel.prototype._updateSourceMapping):
+ (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
+ (WebInspector.DebuggerPresentationModel.prototype._restoreConsoleMessages):
+ (WebInspector.DebuggerPresentationModel.prototype.setFormatSource):
+ (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
+ (WebInspector.DebuggerPresentationModel.prototype._createPresentationMessage):
+ (WebInspector.DebuggerPresentationModel.prototype._consoleCleared):
+ (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
+ (WebInspector.DebuggerPresentationModel.prototype.messagesForUISourceCode):
+ (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
+ (WebInspector.PresentationCallFrame.prototype.sourceLine.sourceMappingUpdated):
+ (WebInspector.PresentationCallFrame.prototype.sourceLine):
+ * inspector/front-end/SourceFile.js:
+
+2011-09-06 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: do not re-create RawSourceCode when toggling pretty-print mode.
+ https://bugs.webkit.org/show_bug.cgi?id=67647
+
+ 1) Implement RawSourceCode.setFormatted that allows toggling pretty-print mode on the fly without resetting everything.
+ 2) Add RawSourceCode unit tests.
+ 3) Remove source mapping listeners and console messages from presentation model (they live in RawSourceCode now).
+
+ Reviewed by Yury Semikhatsky.
+
+ Test: inspector/debugger/raw-source-code.html
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel):
+ (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation):
+ (WebInspector.DebuggerPresentationModel.prototype._addScript):
+ (WebInspector.DebuggerPresentationModel.prototype._sourceMappingUpdated):
+ (WebInspector.DebuggerPresentationModel.prototype.setFormatSource):
+ (WebInspector.DebuggerPresentationModel.prototype._createRawSourceCodeId):
+ (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._toggleFormatSource):
+ * inspector/front-end/SourceFile.js:
+ (WebInspector.RawSourceCode):
+ (WebInspector.RawSourceCode.prototype.get uiSourceCode):
+ (WebInspector.RawSourceCode.prototype.setFormatted):
+ (WebInspector.RawSourceCode.prototype.rawLocationToUILocation):
+ (WebInspector.RawSourceCode.prototype._saveSourceMapping):
+
+2011-09-08 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: [REGRESSION] Clear console shortcut Ctrl + L broken
+ https://bugs.webkit.org/show_bug.cgi?id=67711
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype._consoleCleared):
+ (WebInspector.ConsoleView.prototype._registerShortcuts):
+ (WebInspector.ConsoleView.prototype._promptKeyDown):
+
+2011-09-08 Andras Becsi <andras.becsi@nokia.com>
+
+ [Qt] Build fails with strict compiler
+ https://bugs.webkit.org/show_bug.cgi?id=67778
+
+ Reviewed by Csaba Osztrogonác.
+
+ No new tests needed.
+
+ * platform/graphics/TiledBackingStore.cpp:
+ (WebCore::TiledBackingStore::resizeEdgeTiles): Remove unused contentsRect variable
+ which's usage was removed in r94681 to fix the build with [-Werror=unused-but-set-variable].
+
+2011-09-08 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r94695.
+ http://trac.webkit.org/changeset/94695
+ https://bugs.webkit.org/show_bug.cgi?id=67776
+
+ Hitting an assertion on Snow Leopard, Qt, GTK (Requested by
+ Zoltan on #webkit).
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::positionedFloatsNeedRelayout):
+ (WebCore::RenderBlock::layoutPositionedObjects):
+
+2011-09-08 Alexander Pavlov <apavlov@chromium.org>
+
+ Unreviewed, strip trailing whitespace in the Web Inspector frontend (*.js and *.css).
+
+ * inspector/front-end/ApplicationCacheItemsView.js:
+ * inspector/front-end/AuditResultView.js:
+ * inspector/front-end/BinarySearch.js:
+ * inspector/front-end/CSSStyleModel.js:
+ * inspector/front-end/ConsoleMessage.js:
+ * inspector/front-end/ConsoleModel.js:
+ * inspector/front-end/ConsoleView.js:
+ * inspector/front-end/CookieItemsView.js:
+ * inspector/front-end/CookieParser.js:
+ * inspector/front-end/DOMAgent.js:
+ * inspector/front-end/DOMStorage.js:
+ * inspector/front-end/DOMStorageItemsView.js:
+ * inspector/front-end/DataGrid.js:
+ * inspector/front-end/Database.js:
+ * inspector/front-end/DatabaseQueryView.js:
+ * inspector/front-end/DetailedHeapshotGridNodes.js:
+ * inspector/front-end/DetailedHeapshotView.js:
+ * inspector/front-end/ElementsTreeOutline.js:
+ * inspector/front-end/EmptyView.js:
+ * inspector/front-end/EventListenersSidebarPane.js:
+ * inspector/front-end/ExtensionCommon.js:
+ * inspector/front-end/GoToLineDialog.js:
+ * inspector/front-end/HeapSnapshot.js:
+ * inspector/front-end/HeapSnapshotProxy.js:
+ * inspector/front-end/HeapSnapshotWorkerDispatcher.js:
+ * inspector/front-end/ImageView.js:
+ * inspector/front-end/InjectedFakeWorker.js:
+ * inspector/front-end/InspectorFrontendHostStub.js:
+ * inspector/front-end/MetricsSidebarPane.js:
+ * inspector/front-end/NetworkManager.js:
+ * inspector/front-end/NetworkPanel.js:
+ * inspector/front-end/ObjectPropertiesSection.js:
+ * inspector/front-end/PartialQuickSort.js:
+ * inspector/front-end/ProfileView.js:
+ * inspector/front-end/ProfilesPanel.js:
+ * inspector/front-end/RemoteObject.js:
+ * inspector/front-end/Resource.js:
+ * inspector/front-end/ResourceCategory.js:
+ * inspector/front-end/ResourceHTMLView.js:
+ * inspector/front-end/ResourceHeadersView.js:
+ * inspector/front-end/ResourceJSONView.js:
+ * inspector/front-end/ResourceTimingView.js:
+ * inspector/front-end/ResourceTreeModel.js:
+ * inspector/front-end/ResourceView.js:
+ * inspector/front-end/ResourcesPanel.js:
+ * inspector/front-end/SearchController.js:
+ * inspector/front-end/SettingsScreen.js:
+ * inspector/front-end/ShortcutsScreen.js:
+ * inspector/front-end/SourceCSSTokenizer.js:
+ * inspector/front-end/SourceHTMLTokenizer.js:
+ * inspector/front-end/SourceJavaScriptTokenizer.js:
+ * inspector/front-end/StatusBarButton.js:
+ * inspector/front-end/TextEditorModel.js:
+ * inspector/front-end/TimelineGrid.js:
+ * inspector/front-end/View.js:
+ * inspector/front-end/heapProfiler.css:
+ * inspector/front-end/inspector.css:
+ * inspector/front-end/inspector.js:
+ * inspector/front-end/inspectorSyntaxHighlight.css:
+ * inspector/front-end/networkPanel.css:
+ * inspector/front-end/treeoutline.js:
+ * inspector/front-end/utilities.js:
+
+2011-09-07 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: trying to scroll mouse wheel when in TextViewer's gutter pane causes EventException::DISPATCH_REQUEST_ERR
+ https://bugs.webkit.org/show_bug.cgi?id=67715
+
+ Reviewed by Yury Semikhatsky.
+
+ - avoid exception on attempt to dispatch an event that is being dispatched by cloning the event.
+
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextViewer.forwardWheelEvent):
+ (WebInspector.TextViewer):
+
+2011-09-07 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r94674 and r94689.
+ http://trac.webkit.org/changeset/94674
+ http://trac.webkit.org/changeset/94689
+ https://bugs.webkit.org/show_bug.cgi?id=67754
+
+ Broke inspector/debugger/script-formatter.html (Requested by
+ rniwa on #webkit).
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel):
+ (WebInspector.DebuggerPresentationModel.prototype.addSourceMappingListener):
+ (WebInspector.DebuggerPresentationModel.prototype.removeSourceMappingListener):
+ (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation):
+ (WebInspector.DebuggerPresentationModel.prototype._addScript):
+ (WebInspector.DebuggerPresentationModel.prototype._sourceMappingUpdated):
+ (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
+ (WebInspector.DebuggerPresentationModel.prototype.setFormatSource):
+ (WebInspector.DebuggerPresentationModel.prototype._createRawSourceCodeId):
+ (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._toggleFormatSource):
+ * inspector/front-end/SourceFile.js:
+ (WebInspector.RawSourceCode):
+ (WebInspector.RawSourceCode.prototype.get uiSourceCode):
+ (WebInspector.RawSourceCode.prototype.get rawSourceCode):
+ (WebInspector.RawSourceCode.prototype.rawLocationToUILocation):
+ (WebInspector.RawSourceCode.prototype.requestContent):
+ (WebInspector.RawSourceCode.prototype._saveSourceMapping):
+
+2011-09-07 Julien Chaffraix <jchaffraix@webkit.org>
+
+ offsetFromRoot optimization is disabled after r93837
+ https://bugs.webkit.org/show_bug.cgi?id=67677
+
+ Reviewed by Simon Fraser.
+
+ Unfortunately not covered by any test as it does not change updateLayerPosition complexity (it is still O(n^2)
+ because of clippedOverflowRectForRepaint). However it is a noticeable slowdown on some use cases but we don't
+ have a good test harness to cover such slowdown.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::updateLayerPositions): Pass offsetFromRoot as not doing so means that we miss
+ the optimization altogether.
+
+ (WebCore::RenderLayer::computeRepaintRects):
+ (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
+ * rendering/RenderLayer.h:
+ Renamed |cachedOffset| to |offsetFromRoot| to be consistent with our latest renaming.
+
+2011-09-07 Ryosuke Niwa <rniwa@webkit.org>
+
+ Windows build fix after r94737.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::adjustRectForColumns):
+
+2011-09-07 Dan Bernstein <mitz@apple.com>
+
+ Removed hyphenation function implementations for an usupported build configuration.
+
+ Reviewed by Sam Weinig.
+
+ * platform/text/cf/HyphenationCF.cpp:
+
+2011-09-07 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=67739
+
+ adjustRectForColumns is O(# of columns) when it can be O(1). Fix the slow performance of this
+ function by removing the loop and just computing the start and end column for a repaint rect
+ and uniting everything in between.
+
+ Reviewed by Dan Bernstein.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::adjustRectForColumns):
+
+2011-09-07 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r94714 and r94723.
+ http://trac.webkit.org/changeset/94714
+ http://trac.webkit.org/changeset/94723
+ https://bugs.webkit.org/show_bug.cgi?id=67746
+
+ breaks gtk-linux tests with assertion failure (Requested by
+ thorton on #webkit).
+
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::~GraphicsContext):
+ * platform/graphics/GraphicsContext.h:
+ (WebCore::GraphicsContext::inTransparencyLayer):
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::beginTransparencyLayer):
+ (WebCore::GraphicsContext::endTransparencyLayer):
+ * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
+ (WebCore::GraphicsContextPlatformPrivate::beginTransparencyLayer):
+ (WebCore::GraphicsContextPlatformPrivate::endTransparencyLayer):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::beginTransparencyLayer):
+ (WebCore::GraphicsContext::endTransparencyLayer):
+ * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
+ (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
+ (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
+ (WebCore::GraphicsContextPlatformPrivate::beginTransparencyLayer):
+ (WebCore::GraphicsContextPlatformPrivate::endTransparencyLayer):
+ * platform/graphics/haiku/GraphicsContextHaiku.cpp:
+ (WebCore::GraphicsContext::beginTransparencyLayer):
+ (WebCore::GraphicsContext::endTransparencyLayer):
+ * platform/graphics/mac/FontMac.mm:
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
+ (WebCore::GraphicsContext::beginTransparencyLayer):
+ (WebCore::GraphicsContext::endTransparencyLayer):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::inTransparencyLayer):
+ (WebCore::GraphicsContext::beginTransparencyLayer):
+ (WebCore::GraphicsContext::endTransparencyLayer):
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::beginTransparencyLayer):
+ (WebCore::GraphicsContext::endTransparencyLayer):
+ * platform/graphics/win/FontCGWin.cpp:
+ (WebCore::drawGDIGlyphs):
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::GraphicsContext::releaseWindowsContext):
+ * platform/graphics/win/GraphicsContextCairoWin.cpp:
+ (WebCore::GraphicsContext::releaseWindowsContext):
+ * platform/graphics/win/GraphicsContextWin.cpp:
+ (WebCore::GraphicsContext::inTransparencyLayer):
+ (WebCore::GraphicsContext::getWindowsContext):
+ * platform/graphics/wince/GraphicsContextWinCE.cpp:
+ (WebCore::GraphicsContext::beginTransparencyLayer):
+ (WebCore::GraphicsContext::endTransparencyLayer):
+ * platform/graphics/wx/GraphicsContextWx.cpp:
+ (WebCore::GraphicsContext::beginTransparencyLayer):
+ (WebCore::GraphicsContext::endTransparencyLayer):
+ * platform/win/ScrollbarThemeWin.cpp:
+ (WebCore::ScrollbarThemeWin::paintTrackPiece):
+ (WebCore::ScrollbarThemeWin::paintButton):
+ (WebCore::ScrollbarThemeWin::paintThumb):
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::paint):
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::drawControl):
+
+2011-09-07 Chris Fleizach <cfleizach@apple.com>
+
+ Changes to aria-hidden don't change VO navigation
+ https://bugs.webkit.org/show_bug.cgi?id=67722
+
+ Reviewed by Darin Adler.
+
+ When altering aria-hidden, WebCore needs to update the children caches of
+ affected elements. However, for elements that were children, but ignored, their
+ caches did not get updated, and stale information would be propagated.
+
+ The fix is to always clearChildren() when a parent is asking for children. This
+ ensures information is always up to date when the parent itself is asking for new data.
+
+ Test: accessibility/aria-hidden-updates-alldescendants.html
+
+ * accessibility/AccessibilityObject.h:
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::ariaIsHidden):
+ (WebCore::AccessibilityRenderObject::childrenChanged):
+ (WebCore::AccessibilityRenderObject::addChildren):
+
+2011-09-07 Tim Horton <timothy_horton@apple.com>
+
+ Text rendered with a simple (i.e. 0px blur) shadow inside a transparency layer has a double shadow
+ https://bugs.webkit.org/show_bug.cgi?id=67543
+ <rdar://problem/10070536>
+
+ Reviewed by Simon Fraser.
+
+ Generalize (begin|end)TransparencyLayer, which now forward
+ through to (begin|end)PlatformTransparencyLayer, so that
+ isInTransparencyLayer can exist on every platform.
+
+ Make use of isInTransparencyLayer in FontMac to disable
+ "simple" shadow drawing when the text is being rendered
+ into a transparency layer.
+
+ Test: svg/custom/simple-text-double-shadow.svg
+
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::GraphicsContext):
+ (WebCore::GraphicsContext::~GraphicsContext):
+ (WebCore::GraphicsContext::beginTransparencyLayer):
+ (WebCore::GraphicsContext::endTransparencyLayer):
+ (WebCore::GraphicsContext::isInTransparencyLayer):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
+ (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
+ * platform/graphics/haiku/GraphicsContextHaiku.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/mac/FontMac.mm:
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::isInTransparencyLayer):
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/win/FontCGWin.cpp:
+ (WebCore::drawGDIGlyphs):
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::GraphicsContext::releaseWindowsContext):
+ * platform/graphics/win/GraphicsContextCairoWin.cpp:
+ (WebCore::GraphicsContext::releaseWindowsContext):
+ * platform/graphics/win/GraphicsContextWin.cpp:
+ (WebCore::GraphicsContext::getWindowsContext):
+ * platform/graphics/wince/GraphicsContextWinCE.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/graphics/wx/GraphicsContextWx.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::endPlatformTransparencyLayer):
+ (WebCore::GraphicsContext::supportsTransparencyLayers):
+ * platform/win/ScrollbarThemeWin.cpp:
+ * plugins/win/PluginViewWin.cpp:
+ * rendering/RenderThemeWin.cpp:
+
+2011-09-07 Dan Bernstein <mitz@apple.com>
+
+ <rdar://problem/8881922> Support the hyphenate-limit-lines property
+ https://bugs.webkit.org/show_bug.cgi?id=67730
+
+ Reviewed by Dave Hyatt.
+
+ Tests: fast/css/parsing-hyphenate-limit-lines.html
+ fast/text/hyphenate-limit-lines.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added hyphenate-limit-lines.
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue): Ditto. Valid values are non-negative integers and the keyword
+ "no-limit".
+ * css/CSSPropertyNames.in: Added -webkit-hyphenate-limit-lines.
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty): Added hyphenate-limit-lines.
+ * css/CSSValueKeywords.in: Added the "no-limit" value keyword.
+ * rendering/RenderBlock.h:
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutRunsAndFloats): Count the number of consecutive hyphenated lines
+ before the start line and pass it to layoutRunsAndFloatsInRange().
+ (WebCore::RenderBlock::layoutRunsAndFloatsInRange): Keep track of the number of consecutive
+ hyphenated lines before the current line and pass it to LineBreaker::nextLineBreak().
+ (WebCore::tryHyphenating): Added parameters for the number of consecutive hyphenated lines before
+ the current line and the limit on consecutive hyphenated lines, and an early return if the limit
+ has been reached.
+ (WebCore::RenderBlock::LineBreaker::nextLineBreak): Added a parameter for the number of consecutive
+ hyphenated lines before the current line, which is passed through to tryHyphenating, along with
+ the value of hyphenate-limit-lines.
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::isHyphenated): Added. Returns true if the line was hyphenated.
+ * rendering/RootInlineBox.h:
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::hyphenationLimitLines): Added this getter.
+ (WebCore::InheritedFlags::setHyphenationLimitLines): Added this setter.
+ (WebCore::InheritedFlags::initialHyphenationLimitLines): Added. The initial value is -1,
+ corresponding to "no-limit".
+ * rendering/style/StyleRareInheritedData.cpp:
+ (WebCore::StyleRareInheritedData::StyleRareInheritedData): Initialize new member variable.
+ (WebCore::StyleRareInheritedData::operator==): Compare new member variable.
+ * rendering/style/StyleRareInheritedData.h:
+
+2011-09-02 Ojan Vafai <ojan@chromium.org>
+
+ split overrideSize into overrideHeight and overrideWidth
+ https://bugs.webkit.org/show_bug.cgi?id=67550
+
+ Reviewed by Sam Weinig.
+
+ All uses of overrideSize only set one of the width or the height.
+ This change removes a bool from RenderObject and removes some
+ flexbox specific logic from RenderBox.
+
+ The only downside is that we have two global maps where we used
+ to have one.
+
+ No functional changes so existing tests are sufficient.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::hasOverrideHeight):
+ (WebCore::RenderBox::hasOverrideWidth):
+ (WebCore::RenderBox::setOverrideHeight):
+ (WebCore::RenderBox::setOverrideWidth):
+ (WebCore::RenderBox::clearOverrideSize):
+ (WebCore::RenderBox::overrideWidth):
+ (WebCore::RenderBox::overrideHeight):
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeLogicalHeight):
+ (WebCore::RenderBox::computePercentageLogicalHeight):
+ * rendering/RenderBox.h:
+ * rendering/RenderDeprecatedFlexibleBox.cpp:
+ (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
+ (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
+ (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenHorizontal):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::RenderObject):
+ * rendering/RenderObject.h:
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::setOverrideHeightFromRowHeight):
+ * rendering/RenderTableCell.h:
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::calcRowLogicalHeight):
+ (WebCore::RenderTableSection::layoutRows):
+
+2011-09-07 Alexei Svitkine <asvitkine@chromium.org>
+
+ Add test infrastructure to test rubber-banding overhang drawing along with layout tests for existing Chromium Mac overhang drawing in the non-gpu path.
+ https://bugs.webkit.org/show_bug.cgi?id=67511
+
+ Reviewed by Dimitri Glazkov.
+
+ Tests: platform/chromium-mac/rubberbanding/overhang-e.html
+ platform/chromium-mac/rubberbanding/overhang-n.html
+ platform/chromium-mac/rubberbanding/overhang-ne.html
+ platform/chromium-mac/rubberbanding/overhang-nw.html
+ platform/chromium-mac/rubberbanding/overhang-s.html
+ platform/chromium-mac/rubberbanding/overhang-se.html
+ platform/chromium-mac/rubberbanding/overhang-sw.html
+ platform/chromium-mac/rubberbanding/overhang-w.html
+
+ * WebCore.exp.in:
+ * platform/ScrollableArea.h:
+ * testing/Internals.cpp:
+ (WebCore::Internals::setScrollViewPosition):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2011-09-07 David Reveman <reveman@chromium.org>
+
+ [Chromium] Render surface anti-aliasing.
+ https://bugs.webkit.org/show_bug.cgi?id=66437
+
+ Reviewed by James Robinson.
+
+ Add CCLayerQuad class and CCLayerQuad::Edge subclass to allow
+ edge computations to be shared between tiled layers and render
+ surfaces. Move isCCW utility function to FloatQuad class and
+ add to2dTransform method to TransformationMatrix class. Add
+ necessary anti-aliasing shaders for render surfaces and use them
+ to avoid aliased edges.
+
+ Tests: compositing/reflections/nested-reflection-transformed.html (existing)
+
+ * WebCore.gypi:
+ * platform/graphics/FloatQuad.cpp:
+ (WebCore::FloatQuad::isCounterclockwise):
+ * platform/graphics/FloatQuad.h:
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::drawTexturedQuad):
+ * platform/graphics/chromium/LayerChromium.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::headsUpDisplayProgram):
+ (WebCore::LayerRendererChromium::renderSurfaceProgram):
+ (WebCore::LayerRendererChromium::renderSurfaceProgramAA):
+ (WebCore::LayerRendererChromium::renderSurfaceMaskProgram):
+ (WebCore::LayerRendererChromium::renderSurfaceMaskProgramAA):
+ (WebCore::LayerRendererChromium::tilerProgramSwizzle):
+ (WebCore::LayerRendererChromium::canvasLayerProgram):
+ (WebCore::LayerRendererChromium::pluginLayerProgram):
+ (WebCore::LayerRendererChromium::videoLayerRGBAProgram):
+ (WebCore::LayerRendererChromium::videoLayerYUVProgram):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::sharedGeometryQuad):
+ * platform/graphics/chromium/ShaderChromium.cpp:
+ (WebCore::VertexShaderQuad::VertexShaderQuad):
+ (WebCore::VertexShaderQuad::init):
+ (WebCore::VertexShaderQuad::getShaderString):
+ (WebCore::FragmentShaderRGBATexAlphaAA::FragmentShaderRGBATexAlphaAA):
+ (WebCore::FragmentShaderRGBATexAlphaAA::init):
+ (WebCore::FragmentShaderRGBATexAlphaAA::getShaderString):
+ (WebCore::FragmentTexClampAlphaAABinding::FragmentTexClampAlphaAABinding):
+ (WebCore::FragmentTexClampAlphaAABinding::init):
+ (WebCore::FragmentShaderRGBATexClampAlphaAA::getShaderString):
+ (WebCore::FragmentShaderRGBATexClampSwizzleAlphaAA::getShaderString):
+ (WebCore::FragmentShaderRGBATexAlphaMaskAA::FragmentShaderRGBATexAlphaMaskAA):
+ (WebCore::FragmentShaderRGBATexAlphaMaskAA::init):
+ (WebCore::FragmentShaderRGBATexAlphaMaskAA::getShaderString):
+ * platform/graphics/chromium/ShaderChromium.h:
+ (WebCore::VertexShaderQuad::matrixLocation):
+ (WebCore::VertexShaderQuad::pointLocation):
+ (WebCore::FragmentShaderRGBATexAlphaAA::alphaLocation):
+ (WebCore::FragmentShaderRGBATexAlphaAA::samplerLocation):
+ (WebCore::FragmentShaderRGBATexAlphaAA::edgeLocation):
+ (WebCore::FragmentShaderRGBATexAlphaMaskAA::alphaLocation):
+ (WebCore::FragmentShaderRGBATexAlphaMaskAA::samplerLocation):
+ (WebCore::FragmentShaderRGBATexAlphaMaskAA::maskSamplerLocation):
+ (WebCore::FragmentShaderRGBATexAlphaMaskAA::edgeLocation):
+ * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
+ (WebCore::CCCanvasLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
+ (WebCore::CCHeadsUpDisplay::draw):
+ * platform/graphics/chromium/cc/CCLayerQuad.cpp: Added.
+ (WebCore::CCLayerQuad::Edge::Edge):
+ (WebCore::CCLayerQuad::CCLayerQuad):
+ (WebCore::CCLayerQuad::floatQuad):
+ (WebCore::CCLayerQuad::toFloatArray):
+ * platform/graphics/chromium/cc/CCLayerQuad.h: Added.
+ (WebCore::CCLayerQuad::Edge::Edge):
+ (WebCore::CCLayerQuad::Edge::x):
+ (WebCore::CCLayerQuad::Edge::y):
+ (WebCore::CCLayerQuad::Edge::z):
+ (WebCore::CCLayerQuad::Edge::setX):
+ (WebCore::CCLayerQuad::Edge::setY):
+ (WebCore::CCLayerQuad::Edge::setZ):
+ (WebCore::CCLayerQuad::Edge::set):
+ (WebCore::CCLayerQuad::Edge::moveX):
+ (WebCore::CCLayerQuad::Edge::moveY):
+ (WebCore::CCLayerQuad::Edge::moveZ):
+ (WebCore::CCLayerQuad::Edge::move):
+ (WebCore::CCLayerQuad::Edge::scaleX):
+ (WebCore::CCLayerQuad::Edge::scaleY):
+ (WebCore::CCLayerQuad::Edge::scaleZ):
+ (WebCore::CCLayerQuad::Edge::scale):
+ (WebCore::CCLayerQuad::Edge::intersect):
+ (WebCore::CCLayerQuad::CCLayerQuad):
+ (WebCore::CCLayerQuad::left):
+ (WebCore::CCLayerQuad::top):
+ (WebCore::CCLayerQuad::right):
+ (WebCore::CCLayerQuad::bottom):
+ (WebCore::CCLayerQuad::inflateX):
+ (WebCore::CCLayerQuad::inflateY):
+ (WebCore::CCLayerQuad::inflate):
+ (WebCore::CCLayerQuad::inflateAntiAliasingDistance):
+ * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
+ (WebCore::CCPluginLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCRenderSurface.cpp:
+ (WebCore::CCRenderSurface::draw):
+ (WebCore::CCRenderSurface::drawLayer):
+ (WebCore::CCRenderSurface::drawSurface):
+ * platform/graphics/chromium/cc/CCRenderSurface.h:
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
+ (WebCore::CCTiledLayerImpl::draw):
+ (WebCore::CCTiledLayerImpl::drawTiles):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
+ * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
+ (WebCore::CCVideoLayerImpl::drawYUV):
+ (WebCore::CCVideoLayerImpl::drawRGBA):
+ * platform/graphics/transforms/TransformationMatrix.cpp:
+ (WebCore::TransformationMatrix::to2dTransform):
+ * platform/graphics/transforms/TransformationMatrix.h:
+
+2011-09-06 Oliver Hunt <oliver@apple.com>
+
+ Remove JSObjectWithGlobalObject
+ https://bugs.webkit.org/show_bug.cgi?id=67689
+
+ Reviewed by Geoff Garen.
+
+ Remove use of anonymous storage and JSObjectWithGlobalObject for
+ accessing a JSObject's global object now that they're available
+ on the object's structure.
+
+ * bindings/js/JSDOMWindowShell.cpp:
+ (WebCore::JSDOMWindowShell::setWindow):
+ * bindings/js/JSDOMWrapper.h:
+ (WebCore::JSDOMWrapper::globalObject):
+ (WebCore::JSDOMWrapper::JSDOMWrapper):
+ * bindings/js/WorkerScriptController.cpp:
+ (WebCore::WorkerScriptController::initScript):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (GenerateHeader):
+ (GenerateImplementation):
+ * bridge/objc/objc_runtime.h:
+ * bridge/objc/objc_runtime.mm:
+ (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
+ (JSC::Bindings::ObjcFallbackObjectImp::finishCreation):
+ * bridge/runtime_object.cpp:
+ (JSC::Bindings::RuntimeObject::RuntimeObject):
+ (JSC::Bindings::RuntimeObject::finishCreation):
+ * bridge/runtime_object.h:
+
+2011-09-07 Ryosuke Niwa <rniwa@webkit.org>
+
+ Mac build fix after r94694.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2011-09-07 Tim Horton <timothy_horton@apple.com>
+
+ FELighting is using width instead of height to determine skip for parallel(n>2) case
+ https://bugs.webkit.org/show_bug.cgi?id=67719
+ <rdar://problem/10086178>
+
+ Reviewed by Dirk Schulze.
+
+ No new tests, because the bug only exhibits under conditions which are currently
+ impossible by default (using more than 2 cores) on some platforms.
+
+ * platform/graphics/filters/FELighting.cpp:
+ (WebCore::FELighting::platformApplyGeneric):
+
+2011-09-07 W. James MacLean <wjmaclean@chromium.org>
+
+ Eliminate motion jitter in animated, blurred SVG image
+ https://bugs.webkit.org/show_bug.cgi?id=67503
+
+ Fixes filter shear-free transform applied to SVG images.
+
+ In applyResource() the shearFreeAbsoluteTransform is applied to the drawing region,
+ which is based on the object bounding box (which doesn't move). For a rotation
+ around the centre of the box, this should really just be the identity matrix,
+ since the BB should neither change size nor location. So really, we're just interested
+ in the scale change of the BB here, and not in moving it.
+
+ This impacts how slices are extracted, and affects the {x|y}Mid and {x|y}Max extractions
+ for vertical and horizontal slices, so the test verifies these.
+
+ Reviewed by Dirk Schulze.
+
+ Test: svg/W3C-SVG-1.1-SE/filters-image-05-f.svg
+
+ * rendering/svg/RenderSVGResourceFilter.cpp:
+ (WebCore::RenderSVGResourceFilter::applyResource):
+
+2011-09-03 Robert Hogan <robert@webkit.org>
+
+ Elements with position:absolute don't move to correct position after images load
+ https://bugs.webkit.org/show_bug.cgi?id=54611
+
+ Reviewed by Simon Fraser.
+
+ Test: fast/block/positioning/absolute-layout-after-image-load.html
+ fast/block/positioning/positioned-float-layout-after-image-load.html
+
+ In the test the 'label' block is an absolutely positioned child of an inline flow. So during layout,
+ this RenderBlock::layoutPositionedObjects fails to dirty it for rendering because it requires
+ the parent to be a BlockFlow. The code to do this was introduced in http://trac.webkit.org/changeset/8284.
+ There doesn't seem to be a good reason for requiring a BlockFlow, so remove the check. Do the same
+ for positioned floats in RenderBlock::positionedFloatsNeedRelayout(), although currently layoutPositionedObjects()
+ takes care of it this at least ensures no regression in future.
+
+ Note: Although the issue is encountered only on first load without a fragment identifier, it
+ happens reliably when you include the fragment identifier in the url (#Footnote_1). This is so
+ because scrolling to the fragment always happens before the image has loaded, rendering the page
+ and clearing the initial dirty bits in the positioned element's renderer. When the image finally
+ loads in this scenario, the positioned element is otherwise clean and relies on the above code to get
+ re-rendered.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutPositionedObjects): remove the check for r->parent()->isBlockFlow() when
+ deciding whether to mark children for layout
+ (WebCore::RenderBlock::positionedFloatsNeedRelayout): ditto
+
+2011-09-07 Anna Cavender <annacc@chromium.org>
+
+ Moving platform/track to html/track to avoid layering violation.
+ https://bugs.webkit.org/show_bug.cgi?id=67680
+
+ Reviewed by Adam Barth.
+
+ No new tests. No new functionality.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * GNUmakefile.list.am:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+ * WebCore.pri:
+ * WebCore.pro:
+ * html/track/CueParser.cpp: Renamed from Source/WebCore/platform/track/CueParser.cpp.
+ * html/track/CueParser.h: Renamed from Source/WebCore/platform/track/CueParser.h.
+ * html/track/CueParserPrivate.h: Renamed from Source/WebCore/platform/track/CueParserPrivate.h.
+ * html/track/WebVTTParser.cpp: Renamed from Source/WebCore/platform/track/WebVTTParser.cpp.
+ * html/track/WebVTTParser.h: Renamed from Source/WebCore/platform/track/WebVTTParser.h.
+ * html/track/WebVTTToken.h: Renamed from Source/WebCore/platform/track/WebVTTToken.h.
+ * html/track/WebVTTTokenizer.cpp: Renamed from Source/WebCore/platform/track/WebVTTTokenizer.cpp.
+ * html/track/WebVTTTokenizer.h: Renamed from Source/WebCore/platform/track/WebVTTTokenizer.h.
+
+2011-09-07 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=67286
+
+ REGRESSION: css2.1/t090204-display-change-01-b-ao.html fails after r94084.
+
+ Make sure that the trailing floats line box explicitly sets the line top with leading and line bottom with
+ leading to just be the block height.
+
+ Reviewed by Dan Bernstein.
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::linkToEndLineIfNeeded):
+
+2011-09-06 Abhishek Arya <inferno@chromium.org>
+
+ Null owningRenderer crash in RenderScrollbar::updateScrollbarParts.
+ https://bugs.webkit.org/show_bug.cgi?id=67669
+
+ Reviewed by James Robinson.
+
+ Owning renderer can be cleared for custom scrollbars in clearOwningRenderer()
+ call. We need a null check in updateScrollbarParts, so that we do not crash.
+
+ No tests since issue seen in crash reports only and I donot know a way to
+ reproduce.
+
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::updateScrollbarParts):
+
+2011-09-05 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
+
+ [Qt][WK2] Make TiledDrawingArea request tiles only in the direction the viewport is panned to.
+ https://bugs.webkit.org/show_bug.cgi?id=67606
+
+ Reviewed by Noam Rosenthal.
+
+ TiledBackingStore previously used different values for horizontal and vertial multiplication
+ to calculate the cover area.
+ This patch replaces this mechanism, used to give a bigger panning range to vertical panning,
+ with the possibility to use the motion vector of the viewport to request tiles ahead instead.
+ This allows economies on rendering resources as tiles won't be rendered beside the trajectory
+ of the viewport.
+
+ * platform/graphics/TiledBackingStore.cpp:
+ (WebCore::TiledBackingStore::TiledBackingStore):
+ (WebCore::TiledBackingStore::setKeepAndCoverAreaMultipliers):
+ (WebCore::TiledBackingStore::setCoverAreaFocusVector):
+ (WebCore::TiledBackingStore::createTiles):
+ (WebCore::TiledBackingStore::calculateKeepRect):
+ (WebCore::TiledBackingStore::calculateCoverRect):
+ * platform/graphics/TiledBackingStore.h:
+ (WebCore::TiledBackingStore::getKeepAndCoverAreaMultipliers):
+
+2011-09-01 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
+
+ [Qt] TiledBackingStore: Import the resizeEdgeTiles logic from TiledDrawindAreaProxy.
+ https://bugs.webkit.org/show_bug.cgi?id=67416
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Original code by Antti Koivisto.
+ With the current code, when the page is layouted during load, edge tiles will
+ get removed instead of continuing to show their front buffer while the tile
+ is being rendered for the new size.
+
+ * platform/graphics/Tile.h:
+ * platform/graphics/TiledBackingStore.cpp:
+ (WebCore::TiledBackingStore::createTiles):
+ (WebCore::TiledBackingStore::resizeEdgeTiles):
+ * platform/graphics/TiledBackingStore.h:
+ * platform/graphics/qt/TileQt.cpp:
+ (WebCore::TileQt::resize):
+ * platform/graphics/qt/TileQt.h:
+
+2011-09-07 Tim Horton <timothy_horton@apple.com>
+
+ Don't round-trip through TransformationMatrix in SVGImageBufferTools::clearAffineTransform2DRotation
+ https://bugs.webkit.org/show_bug.cgi?id=67242
+ <rdar://problem/10069770>
+
+ Reviewed by Dirk Schulze.
+
+ No new tests, minor performance improvement.
+
+ * platform/graphics/transforms/AffineTransform.cpp:
+ (WebCore::AffineTransform::blend):
+ (WebCore::AffineTransform::decompose):
+ (WebCore::AffineTransform::recompose):
+ * platform/graphics/transforms/AffineTransform.h:
+ * rendering/svg/SVGImageBufferTools.cpp:
+ (WebCore::SVGImageBufferTools::clear2DRotation):
+
+2011-09-06 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: do not re-create RawSourceCode when toggling pretty-print mode.
+ https://bugs.webkit.org/show_bug.cgi?id=67647
+
+ 1) Implement RawSourceCode.setFormatted that allows toggling pretty-print mode on the fly without resetting everything.
+ 2) Add RawSourceCode unit tests.
+ 3) Remove source mapping listeners and console messages from presentation model (they live in RawSourceCode now).
+
+ Reviewed by Yury Semikhatsky.
+
+ Test: inspector/debugger/raw-source-code.html
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel):
+ (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation):
+ (WebInspector.DebuggerPresentationModel.prototype._addScript):
+ (WebInspector.DebuggerPresentationModel.prototype._sourceMappingUpdated):
+ (WebInspector.DebuggerPresentationModel.prototype.setFormatSource):
+ (WebInspector.DebuggerPresentationModel.prototype._createRawSourceCodeId):
+ (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._toggleFormatSource):
+ * inspector/front-end/SourceFile.js:
+ (WebInspector.RawSourceCode):
+ (WebInspector.RawSourceCode.prototype.get uiSourceCode):
+ (WebInspector.RawSourceCode.prototype.setFormatted):
+ (WebInspector.RawSourceCode.prototype.rawLocationToUILocation):
+ (WebInspector.RawSourceCode.prototype._saveSourceMapping):
+
+2011-09-07 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: Implement circular tabbing through the Styles sidebar pane contents
+ https://bugs.webkit.org/show_bug.cgi?id=67127
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/Section.js:
+ (WebInspector.Section.prototype.get firstSibling):
+ (WebInspector.Section.prototype.get lastSibling):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertiesSection.prototype.nextEditableSibling):
+ (WebInspector.StylePropertiesSection.prototype.previousEditableSibling):
+ (WebInspector.StylePropertiesSection.prototype.startEditingSelector):
+ (WebInspector.StylePropertiesSection.prototype._moveEditorFromSelector):
+ (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted.successCallback):
+ (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
+ (WebInspector.StylePropertyTreeElement.prototype):
+ (WebInspector.StylePropertyTreeElement.prototype.element.userInput.previousContent.context.moveDirection):
+
+2011-09-02 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: [Extensions API] expose console API
+ https://bugs.webkit.org/show_bug.cgi?id=67506
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/extensions/extensions-console.html
+
+ * inspector/front-end/ConsoleMessage.js:
+ (WebInspector.ConsoleMessage.prototype.get text):
+ (WebInspector.ConsoleMessage.prototype.get parameters):
+ * inspector/front-end/ExtensionAPI.js:
+ (WebInspector.injectedExtensionAPI.InspectorExtensionAPI):
+ (WebInspector.injectedExtensionAPI):
+ (WebInspector.injectedExtensionAPI.Console.prototype.getMessages):
+ (WebInspector.injectedExtensionAPI.Console.prototype.addMessage):
+ (WebInspector.injectedExtensionAPI.Console.prototype.get MessageLevel):
+ (WebInspector.injectedExtensionAPI.Network.dispatchRequestEvent):
+ (WebInspector.injectedExtensionAPI.Network):
+ (WebInspector.injectedExtensionAPI.AuditCategoryImpl.dispatchAuditEvent):
+ (WebInspector.injectedExtensionAPI.AuditCategoryImpl):
+ (WebInspector.injectedExtensionAPI.InspectedWindow.dispatchResourceEvent):
+ (WebInspector.injectedExtensionAPI.InspectedWindow.dispatchResourceContentEvent):
+ (WebInspector.injectedExtensionAPI.InspectedWindow):
+ * inspector/front-end/ExtensionCommon.js:
+ (WebInspector.commonExtensionSymbols):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype._notifyConsoleMessageAdded):
+ (WebInspector.ExtensionServer.prototype._onGetConsoleMessages):
+ (WebInspector.ExtensionServer.prototype._onAddConsoleMessage):
+ (WebInspector.ExtensionServer.prototype._makeConsoleMessage):
+ (WebInspector.ExtensionServer.prototype._makeConsoleMessage.convertParameter):
+ (WebInspector.ExtensionServer.prototype._dispatchCallback):
+ (WebInspector.ExtensionServer.prototype.initExtensions):
+
+2011-09-05 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: disable popover when a mouse button is pressed
+ https://bugs.webkit.org/show_bug.cgi?id=67610
+
+ Reviewed by Pavel Feldman.
+
+ - disable popover when a mouse button is pressed
+ - disable popover in a SourceFrame when the source is being edited
+
+ * inspector/front-end/Popover.js:
+ (WebInspector.PopoverHelper):
+ (WebInspector.PopoverHelper.prototype._mouseUp):
+ (WebInspector.PopoverHelper.prototype._mouseDown):
+ (WebInspector.PopoverHelper.prototype._handleMouseAction):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._onHidePopover):
+ (WebInspector.SourceFrame.prototype.doubleClick):
+
+2011-09-07 Antti Koivisto <antti@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=67634
+ De-virtualize styleForRenderer()
+
+ Reviewed by Sam Weinig.
+
+ This has performance and code clarity benefits.
+
+ - move styleForRenderer from Node to Element
+ - get rid of the now unnecessary NodeRenderingContext parameter
+ - de-virtualize, add virtual customStyleForRenderer()
+
+ * dom/Element.cpp:
+ (WebCore::Element::customStyleForRenderer):
+ (WebCore::Element::styleForRenderer):
+ (WebCore::Element::recalcStyle):
+ * dom/Element.h:
+ * dom/Node.cpp:
+ * dom/Node.h:
+ (WebCore::Node::hasCustomWillOrDidRecalcStyle):
+ (WebCore::Node::setHasCustomWillOrDidRecalcStyle):
+ (WebCore::Node::hasCustomStyleForRenderer):
+ (WebCore::Node::setHasCustomStyleForRenderer):
+
+ Move styleForRenderer, add customStyleForRenderer, add a bit.
+
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::NodeRendererFactory::createRendererAndStyle):
+
+ Handle non-element case separately since styleForRenderer was moved from Node to Element.
+
+ * html/HTMLNoScriptElement.cpp:
+ (WebCore::HTMLNoScriptElement::HTMLNoScriptElement):
+ (WebCore::HTMLNoScriptElement::customStyleForRenderer):
+ * html/HTMLNoScriptElement.h:
+
+ Move a strange XHTMLMP special case to where it belongs.
+
+ * html/HTMLOptGroupElement.cpp:
+ (WebCore::HTMLOptGroupElement::attach):
+ * html/HTMLOptionElement.cpp:
+ (WebCore::HTMLOptionElement::attach):
+ * html/HTMLTitleElement.cpp:
+ (WebCore::HTMLTitleElement::textWithDirection):
+ * html/shadow/TextControlInnerElements.cpp:
+ (WebCore::TextControlInnerElement::TextControlInnerElement):
+ (WebCore::TextControlInnerElement::customStyleForRenderer):
+ (WebCore::TextControlInnerTextElement::TextControlInnerTextElement):
+ (WebCore::TextControlInnerTextElement::customStyleForRenderer):
+ * html/shadow/TextControlInnerElements.h:
+ * rendering/svg/SVGShadowTreeElements.cpp:
+ (WebCore::SVGShadowTreeContainerElement::customStyleForRenderer):
+ * rendering/svg/SVGShadowTreeElements.h:
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::SVGElement):
+ (WebCore::SVGElement::customStyleForRenderer):
+ * svg/SVGElement.h:
+
+ Adopt customStyleForRenderer().
+
+2011-09-07 Ryosuke Niwa <rniwa@webkit.org>
+
+ Change event is not fired for input[type=number] when the user reverts a change made by script
+ https://bugs.webkit.org/show_bug.cgi?id=67697
+
+ Reviewed by Kent Tamura.
+
+ The bug was caused by HTMLInputElement::setValue not calling setTextAsOfLastFormControlChangeEvent
+ for text fields other than type=text.
+
+ Also fixed a that stepUpFromRenderer does not call setTextAsOfLastFormControlChangeEvent at appropriate
+ timing due to setValueAsNumber always passing sendChangeEvent=false to setValue by propagating values
+ through setValueAsNumber and applyStep. This refactoring allows us to remove calls to dispatch* in
+ stepUpFromRenderer because they're now called in setValueAsNumber or applyStep.
+
+ Test: fast/forms/number-input-changeevent.html
+
+ * html/BaseDateAndTimeInputType.cpp:
+ (WebCore::BaseDateAndTimeInputType::setValueAsNumber):
+ * html/BaseDateAndTimeInputType.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::applyStep):
+ (WebCore::HTMLInputElement::stepUp):
+ (WebCore::HTMLInputElement::stepDown):
+ (WebCore::HTMLInputElement::setValue):
+ (WebCore::HTMLInputElement::setValueAsNumber):
+ (WebCore::HTMLInputElement::stepUpFromRenderer):
+ * html/HTMLInputElement.h:
+ * html/InputType.cpp:
+ (WebCore::InputType::setValueAsNumber):
+ * html/InputType.h:
+ * html/NumberInputType.cpp:
+ (WebCore::NumberInputType::setValueAsNumber):
+ * html/NumberInputType.h:
+ * html/RangeInputType.cpp:
+ (WebCore::RangeInputType::setValueAsNumber):
+ (WebCore::RangeInputType::handleKeydownEvent):
+ * html/RangeInputType.h:
+
+2011-09-07 Antti Koivisto <antti@apple.com>
+
+ Try to fix Qt build by moving the Qt specific include (which is not really allowed here!).
+
+ Not reviewed.
+
+ * css/CSSStyleSelector.cpp:
+ * css/SelectorChecker.cpp:
+ (WebCore::SelectorChecker::determineLinkStateSlowCase):
+
+2011-09-07 Antti Koivisto <antti@apple.com>
+
+ Move SelectorChecker out from CSSStyleSelector scope
+ https://bugs.webkit.org/show_bug.cgi?id=67648
+
+ Reviewed by Sam Weinig.
+
+ - Move SelectorChecker to SelectorChecker.h/cpp
+ - Make private functions private
+ - Make members private, add accessors
+ - Move m_sameOriginOnly to CSSStyleSelector as it is not used by SelectorChecker
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::CSSStyleSelector):
+ (WebCore::CSSStyleSelector::matchRules):
+ (WebCore::CSSStyleSelector::matchRulesForList):
+ (WebCore::CSSStyleSelector::sortMatchedRules):
+ (WebCore::CSSStyleSelector::initForStyleResolve):
+ (WebCore::CSSStyleSelector::matchUARules):
+ (WebCore::CSSStyleSelector::styleForElement):
+ (WebCore::CSSStyleSelector::pseudoStyleForElement):
+ (WebCore::CSSStyleSelector::styleForPage):
+ (WebCore::CSSStyleSelector::adjustRenderStyle):
+ (WebCore::CSSStyleSelector::pseudoStyleRulesForElement):
+ (WebCore::CSSStyleSelector::checkSelector):
+ (WebCore::RuleData::RuleData):
+ (WebCore::CSSStyleSelector::applyProperty):
+ (WebCore::CSSStyleSelector::checkForGenericFamilyChange):
+ (WebCore::CSSStyleSelector::setFontSize):
+ (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
+ * css/CSSStyleSelector.h:
+ (WebCore::CSSStyleSelector::style):
+ (WebCore::CSSStyleSelector::parentStyle):
+ (WebCore::CSSStyleSelector::rootElementStyle):
+ (WebCore::CSSStyleSelector::element):
+ (WebCore::CSSStyleSelector::fontDescription):
+ (WebCore::CSSStyleSelector::parentFontDescription):
+ (WebCore::CSSStyleSelector::setFontDescription):
+ (WebCore::CSSStyleSelector::setZoom):
+ (WebCore::CSSStyleSelector::setEffectiveZoom):
+ (WebCore::CSSStyleSelector::setTextSizeAdjust):
+ (WebCore::CSSStyleSelector::setStyle):
+ (WebCore::CSSStyleSelector::fontSelector):
+ (WebCore::CSSStyleSelector::allVisitedStateChanged):
+ (WebCore::CSSStyleSelector::visitedStateChanged):
+ (WebCore::CSSStyleSelector::usesSiblingRules):
+ (WebCore::CSSStyleSelector::usesFirstLineRules):
+ (WebCore::CSSStyleSelector::usesBeforeAfterRules):
+ (WebCore::CSSStyleSelector::usesLinkRules):
+ (WebCore::CSSStyleSelector::addMatchedRule):
+ (WebCore::CSSStyleSelector::isRightPage):
+ (WebCore::CSSStyleSelector::ParentStackFrame::ParentStackFrame):
+ (WebCore::CSSStyleSelector::styleNotYetAvailable):
+ * css/SelectorChecker.cpp: Added.
+ (WebCore::SelectorChecker::SelectorChecker):
+ (WebCore::linkAttribute):
+ (WebCore::SelectorChecker::determineLinkStateSlowCase):
+ (WebCore::SelectorChecker::checkSelector):
+ (WebCore::SelectorChecker::fastCheckSelector):
+ (WebCore::SelectorChecker::isFastCheckableSelector):
+ (WebCore::addLocalNameToSet):
+ (WebCore::createHtmlCaseInsensitiveAttributesSet):
+ (WebCore::htmlAttributeHasCaseInsensitiveValue):
+ (WebCore::attributeQualifiedNameMatches):
+ (WebCore::attributeValueMatches):
+ (WebCore::anyAttributeMatches):
+ (WebCore::SelectorChecker::checkOneSelector):
+ (WebCore::SelectorChecker::checkScrollbarPseudoClass):
+ (WebCore::SelectorChecker::allVisitedStateChanged):
+ (WebCore::SelectorChecker::visitedStateChanged):
+ * css/SelectorChecker.h: Added.
+ (WebCore::SelectorChecker::document):
+ (WebCore::SelectorChecker::strictParsing):
+ (WebCore::SelectorChecker::isCollectingRulesOnly):
+ (WebCore::SelectorChecker::setCollectingRulesOnly):
+ (WebCore::SelectorChecker::isMatchingVisitedPseudoClass):
+ (WebCore::SelectorChecker::setMatchingVisitedPseudoClass):
+ (WebCore::SelectorChecker::pseudoStyle):
+ (WebCore::SelectorChecker::setPseudoStyle):
+ (WebCore::SelectorChecker::hasUnknownPseudoElements):
+ (WebCore::SelectorChecker::clearHasUnknownPseudoElements):
+ (WebCore::SelectorChecker::determineLinkState):
+ * dom/Element.cpp:
+ (WebCore::Element::webkitMatchesSelector):
+ * dom/SelectorQuery.cpp:
+ (WebCore::SelectorQuery::SelectorQuery):
+ * dom/SelectorQuery.h:
+
+2011-09-07 Dmitry Lomov <dslomov@google.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=67413
+ [Chromium]Web Inspector: inspected page with dedicated worker crashes on refresh.
+ This patch enforces lifetime ordering between WorkerInspectorController and WorkerScriptController.
+
+ Reviewed by Yury Semikhatsky.
+
+ * workers/WorkerContext.cpp:
+ (WebCore::WorkerContext::clearInspector):
+ * workers/WorkerContext.h:
+ * workers/WorkerThread.cpp:
+ (WebCore::WorkerThreadShutdownFinishTask::performTask):
+
+2011-09-07 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r94627 and r94632.
+ http://trac.webkit.org/changeset/94627
+ http://trac.webkit.org/changeset/94632
+ https://bugs.webkit.org/show_bug.cgi?id=67698
+
+ It broke tests on GTK and Qt (Requested by Ossy on #webkit).
+
+ * WebCore.exp.in:
+ * bindings/js/JSDOMBinding.h:
+ (WebCore::DOMConstructorObject::DOMConstructorObject):
+ * bindings/js/JSDOMGlobalObject.cpp:
+ (WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
+ * bindings/js/JSDOMGlobalObject.h:
+ * bindings/js/JSDOMWindowShell.cpp:
+ (WebCore::JSDOMWindowShell::create):
+ * bindings/js/JSDOMWindowShell.h:
+ * bindings/js/JSDOMWrapper.h:
+ (WebCore::JSDOMWrapper::JSDOMWrapper):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (GenerateImplementation):
+ * bindings/scripts/test/JS/JSTestInterface.cpp:
+ (WebCore::JSTestInterface::JSTestInterface):
+ * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
+ (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
+ * bindings/scripts/test/JS/JSTestObj.cpp:
+ (WebCore::JSTestObj::JSTestObj):
+ * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
+ (WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
+ * bridge/c/CRuntimeObject.cpp:
+ (JSC::Bindings::CRuntimeObject::CRuntimeObject):
+ * bridge/c/CRuntimeObject.h:
+ * bridge/jni/jsc/JavaRuntimeObject.cpp:
+ (JSC::Bindings::JavaRuntimeObject::JavaRuntimeObject):
+ * bridge/jni/jsc/JavaRuntimeObject.h:
+ * bridge/objc/ObjCRuntimeObject.h:
+ * bridge/objc/ObjCRuntimeObject.mm:
+ (JSC::Bindings::ObjCRuntimeObject::ObjCRuntimeObject):
+ * bridge/objc/objc_runtime.h:
+ (JSC::Bindings::ObjcFallbackObjectImp::create):
+ * bridge/objc/objc_runtime.mm:
+ (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtRuntimeObject::QtRuntimeObject):
+ * bridge/qt/qt_pixmapruntime.cpp:
+ (JSC::Bindings::QtPixmapRuntimeObject::QtPixmapRuntimeObject):
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
+ * bridge/qt/qt_runtime.h:
+ * bridge/runtime_array.cpp:
+ (JSC::RuntimeArray::RuntimeArray):
+ * bridge/runtime_array.h:
+ (JSC::RuntimeArray::create):
+ * bridge/runtime_method.cpp:
+ (JSC::RuntimeMethod::RuntimeMethod):
+ * bridge/runtime_method.h:
+ * bridge/runtime_object.cpp:
+ (JSC::Bindings::RuntimeObject::RuntimeObject):
+ * bridge/runtime_object.h:
+ (JSC::Bindings::RuntimeObject::create):
+
+2011-08-31 Yury Semikhatsky <yurys@chromium.org>
+
+ fast/workers/worker-script-error.html fails on Chromium after r94061
+ https://bugs.webkit.org/show_bug.cgi?id=67206
+
+ Default action should be prevented if window.onerror returned true and stay
+ not prevented otherwise.
+
+ Reviewed by Dmitry Titov.
+
+ Tests: fast/events/window-onerror14.html
+ fast/events/window-onerror15.html
+ fast/events/window-onerror16.html
+
+ * bindings/v8/V8AbstractEventListener.cpp:
+ (WebCore::V8AbstractEventListener::invokeEventHandler):
+ (WebCore::V8AbstractEventListener::shouldPreventDefault): allow specific
+ event listeners to decide when to prevent default action based on the handler
+ return value.
+ * bindings/v8/V8AbstractEventListener.h:
+ * bindings/v8/V8WindowErrorHandler.cpp:
+ (WebCore::V8WindowErrorHandler::callListenerFunction):
+ (WebCore::V8WindowErrorHandler::shouldPreventDefault):
+ * bindings/v8/V8WindowErrorHandler.h:
+ * bindings/v8/V8WorkerContextErrorHandler.cpp:
+ (WebCore::V8WorkerContextErrorHandler::callListenerFunction):
+ (WebCore::V8WorkerContextErrorHandler::shouldPreventDefault):
+ * bindings/v8/V8WorkerContextErrorHandler.h:
+
+2011-09-06 Xianzhu Wang <wangxianzhu@chromium.org>
+
+ Replace usages of Vector<UChar> with existing StringBuilder
+ https://bugs.webkit.org/show_bug.cgi?id=67079
+
+ Reviewed by Gavin Barraclough.
+
+ No new tests. All existing unit tests and layout tests should run
+ as before.
+
+ * css/CSSOMUtils.cpp:
+ (WebCore::appendCharacter):
+ (WebCore::serializeCharacter):
+ (WebCore::serializeCharacterAsCodePoint):
+ (WebCore::serializeIdentifier):
+ (WebCore::serializeString):
+ * css/CSSOMUtils.h:
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::cssText):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::determineLinkStateSlowCase):
+ * css/CSSWrapShapes.cpp:
+ (WebCore::CSSWrapShapeRect::cssText):
+ (WebCore::CSSWrapShapeCircle::cssText):
+ (WebCore::CSSWrapShapeEllipse::cssText):
+ (WebCore::CSSWrapShapePolygon::cssText):
+ * editing/HTMLInterchange.cpp:
+ (WebCore::convertHTMLTextToInterchangeFormat):
+ * editing/MarkupAccumulator.cpp:
+ (WebCore::appendCharactersReplacingEntities):
+ (WebCore::MarkupAccumulator::serializeNodes):
+ (WebCore::MarkupAccumulator::appendStartTag):
+ (WebCore::MarkupAccumulator::appendEndTag):
+ (WebCore::MarkupAccumulator::concatenateMarkup):
+ (WebCore::MarkupAccumulator::appendAttributeValue):
+ (WebCore::MarkupAccumulator::appendCustomAttributes):
+ (WebCore::MarkupAccumulator::appendQuotedURLAttributeValue):
+ (WebCore::MarkupAccumulator::appendNodeValue):
+ (WebCore::MarkupAccumulator::appendNamespace):
+ (WebCore::MarkupAccumulator::appendText):
+ (WebCore::MarkupAccumulator::appendComment):
+ (WebCore::MarkupAccumulator::appendDocumentType):
+ (WebCore::MarkupAccumulator::appendProcessingInstruction):
+ (WebCore::MarkupAccumulator::appendElement):
+ (WebCore::MarkupAccumulator::appendOpenTag):
+ (WebCore::MarkupAccumulator::appendCloseTag):
+ (WebCore::MarkupAccumulator::appendAttribute):
+ (WebCore::MarkupAccumulator::appendCDATASection):
+ (WebCore::MarkupAccumulator::appendStartMarkup):
+ (WebCore::MarkupAccumulator::appendEndMarkup):
+ * editing/MarkupAccumulator.h:
+ * editing/markup.cpp:
+ (WebCore::StyledMarkupAccumulator::appendElement):
+ (WebCore::StyledMarkupAccumulator::wrapWithNode):
+ (WebCore::StyledMarkupAccumulator::wrapWithStyleNode):
+ (WebCore::StyledMarkupAccumulator::appendStyleNodeOpenTag):
+ (WebCore::StyledMarkupAccumulator::takeResults):
+ (WebCore::StyledMarkupAccumulator::appendText):
+ (WebCore::urlToMarkup):
+ * html/DOMTokenList.cpp:
+ (WebCore::DOMTokenList::removeToken):
+ * html/HTMLFontElement.cpp:
+ (WebCore::parseFontSize):
+ * html/HTMLTextFormControlElement.cpp:
+ (WebCore::HTMLTextFormControlElement::strippedPlaceholder):
+ * html/parser/CSSPreloadScanner.cpp:
+ (WebCore::CSSPreloadScanner::emitRule):
+ * html/parser/CSSPreloadScanner.h:
+ * html/parser/HTMLEntityParser.cpp:
+ (WebCore::consumeHTMLEntity):
+ * html/parser/HTMLEntityParser.h:
+ * html/parser/HTMLParserIdioms.cpp:
+ (WebCore::parseHTMLInteger):
+ (WebCore::parseHTMLNonNegativeInteger):
+ * html/parser/HTMLTokenizer.cpp:
+ (WebCore::HTMLTokenizer::processEntity):
+ (WebCore::HTMLTokenizer::nextToken):
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::giveRemainingTo):
+ (WebCore::HTMLTreeBuilder::defaultForInTableText):
+ * html/parser/HTMLTreeBuilder.h:
+ * inspector/InspectorValues.cpp:
+ (WebCore::InspectorValue::toJSONString):
+ (WebCore::InspectorValue::writeJSON):
+ (WebCore::InspectorBasicValue::writeJSON):
+ (WebCore::InspectorString::writeJSON):
+ (WebCore::InspectorObject::writeJSON):
+ (WebCore::InspectorArray::writeJSON):
+ * inspector/InspectorValues.h:
+ * loader/CrossOriginAccessControl.cpp:
+ (WebCore::createAccessControlPreflightRequest):
+ * loader/appcache/ApplicationCacheStorage.cpp:
+ (WebCore::ApplicationCacheStorage::store):
+ * page/Chrome.cpp:
+ (WebCore::Chrome::setToolTip):
+ * page/PageSerializer.cpp:
+ (WebCore::SerializerMarkupAccumulator::appendText):
+ (WebCore::SerializerMarkupAccumulator::appendElement):
+ (WebCore::SerializerMarkupAccumulator::appendCustomAttributes):
+ * page/SecurityOrigin.cpp:
+ (WebCore::SecurityOrigin::toString):
+ * platform/KURL.cpp:
+ (WebCore::KURL::deprecatedString):
+ (WebCore::decodeURLEscapeSequences):
+ * platform/LinkHash.cpp:
+ (WebCore::squeezeOutNullCharacters):
+ (WebCore::cleanSlashDotDotSlashes):
+ (WebCore::mergeDoubleSlashes):
+ (WebCore::cleanSlashDotSlashes):
+ (WebCore::cleanPath):
+ (WebCore::visitedURLInline):
+ (WebCore::visitedURL):
+ (WebCore::visitedLinkHash):
+ * platform/LinkHash.h:
+ * platform/gtk/DataObjectGtk.cpp:
+ (WebCore::DataObjectGtk::setURL):
+ * platform/network/HTTPParsers.cpp:
+ (WebCore::extractMIMETypeFromMediaType):
+ * platform/text/TextCodecICU.cpp:
+ (WebCore::TextCodecICU::decode):
+ * platform/text/TextStream.cpp:
+ (WebCore::TextStream::operator<<):
+ (WebCore::TextStream::release):
+ * platform/text/TextStream.h:
+ * plugins/PluginStream.cpp:
+ (WebCore::PluginStream::startStream):
+ * rendering/InlineTextBox.cpp:
+ (WebCore::adjustCharactersAndLengthForHyphen):
+ * rendering/InlineTextBox.h:
+ (WebCore::BufferForAppendingHyphen::BufferForAppendingHyphen):
+ * rendering/RenderListItem.cpp:
+ (WebCore::RenderListItem::markerTextWithSuffix):
+ * rendering/RenderListMarker.cpp:
+ (WebCore::toSymbolic):
+ (WebCore::RenderListMarker::paint):
+ (WebCore::RenderListMarker::suffix):
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::quoteAndEscapeNonPrintables):
+ * rendering/mathml/RenderMathMLFenced.cpp:
+ (WebCore::RenderMathMLFenced::updateFromElement):
+ * storage/IDBLevelDBCoding.cpp:
+ (WebCore::IDBLevelDBCoding::decodeString):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::getAllResponseHeaders):
+ * xml/XPathFunctions.cpp:
+ (WebCore::XPath::FunId::evaluate):
+ (WebCore::XPath::FunConcat::evaluate):
+ * xml/XPathUtil.cpp:
+ (WebCore::XPath::stringValue):
+ * xml/XSLTProcessorLibxslt.cpp:
+ (WebCore::writeToStringBuilder):
+ (WebCore::saveResultToString):
+ * xml/parser/CharacterReferenceParserInlineMethods.h:
+ (WebCore::unconsumeCharacters):
+ (WebCore::consumeCharacterReference):
+ * xml/parser/XMLCharacterReferenceParser.cpp:
+ (WebCore::consumeXMLCharacterReference):
+ * xml/parser/XMLCharacterReferenceParser.h:
+ * xml/parser/XMLTokenizer.cpp:
+ (WebCore::XMLTokenizer::nextToken):
+
+2011-09-05 Kent Tamura <tkent@chromium.org>
+
+ REGRESSION (Safari 5.1 - ToT): File input retains its file icon when the value is reset
+ https://bugs.webkit.org/show_bug.cgi?id=67567
+
+ Reviewed by Dimitri Glazkov.
+
+ - Introduce InputType::setValue(), which is called by HTMLInputElement::setValue().
+ - Clear m_icon in FileInputType::setValue().
+
+ Tests: fast/forms/file/file-reset-in-change-expected.html
+ fast/forms/file/file-reset-in-change.html
+
+ * html/BaseButtonInputType.cpp:
+ (WebCore::BaseButtonInputType::setValue):
+ Implemenation for the "default" mode.
+ http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#dom-input-value-default
+ * html/BaseButtonInputType.h:
+ * html/BaseCheckableInputType.cpp:
+ (WebCore::BaseCheckableInputType::setValue):
+ Implemenation for the "default/on" mode.
+ http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#dom-input-value-default-on
+ * html/BaseCheckableInputType.h:
+ * html/FileInputType.cpp:
+ (WebCore::FileInputType::setValue):
+ Implemenation for the "filename" mode, and clearing m_icon.
+ http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#dom-input-value-filename
+ * html/FileInputType.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::setValue):
+ Move some code to InputType::setValue().
+ (WebCore::HTMLInputElement::setValueInternal): A helper for InputType::setValue().
+ * html/HTMLInputElement.h:
+ * html/HiddenInputType.cpp:
+ (WebCore::HiddenInputType::setValue):
+ Implementation for the "default" mode.
+ * html/HiddenInputType.h:
+ * html/InputType.cpp:
+ (WebCore::InputType::setValue):
+ Implementation for the "value" mode.
+ http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#dom-input-value-value
+ * html/InputType.h:
+ * html/TextFieldInputType.cpp:
+ (WebCore::TextFieldInputType::setValue):
+ In addition to the "value" mode processing, updates placeholder visibililty.
+ * html/TextFieldInputType.h:
+
2011-09-06 Ryosuke Niwa <rniwa@webkit.org>
REGRESSION(r94274): The inner text value of an input element is not updated when input.value is set
« no previous file with comments | « no previous file | Source/WebCore/platform/graphics/gpu/SharedGraphicsContext3D.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698