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

Unified Diff: Source/WebCore/ChangeLog

Side-by-side diff isn't available for this file because of its large size.
Issue 9689079: Merge 110499 - [Skia] Release CGImage used to apply color space conversion to SkBitmap (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/1025/
Patch Set: Created 8 years, 9 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/image-decoders/skia/ImageDecoderSkia.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 110586)
+++ Source/WebCore/ChangeLog (working copy)
@@ -1,3 +1,13757 @@
+2012-03-12 Brian Salomon <bsalomon@google.com>
+
+ [Skia] Release CGImage used to apply color space conversion to SkBitmap
+ https://bugs.webkit.org/show_bug.cgi?id=80892
+
+ Reviewed by Adam Barth.
+
+ Regressions should be covered by any test that does image decode on the mac.
+
+ * platform/image-decoders/skia/ImageDecoderSkia.cpp:
+ (WebCore::resolveColorSpace):
+
+2012-03-12 Levi Weintraub <leviw@chromium.org>
+
+ Update LayoutUnit usage in RenderMathML* classes
+ https://bugs.webkit.org/show_bug.cgi?id=77916
+
+ Reviewed by Eric Seidel.
+
+ The purpose of this patch is to ensure MathML rendering does not regress when
+ we switch to sub-pixel layout. A subsequent patch can likely improve MathML's
+ rendering when zoom is applied.
+
+ To accomplish this without changing the current heuristics for positioning,
+ we continue to use integers for sizes and locations, using pixel snapping
+ when communicating with other Rendering classes.
+
+ No new tests. No change in behavior.
+
+ * rendering/mathml/RenderMathMLBlock.cpp:
+ (WebCore::RenderMathMLBlock::paint): Cleaning up debug painting to be on
+ pixel boundaries instead of subpixel.
+ * rendering/mathml/RenderMathMLFraction.cpp:
+ (WebCore::RenderMathMLFraction::paint): Reverting to integers for determining
+ the vertical offset.
+ (WebCore::RenderMathMLFraction::baselinePosition):
+ * rendering/mathml/RenderMathMLRoot.cpp:
+ (WebCore::RenderMathMLRoot::paint): Using integers for height and width
+ and only accumulating pixel snapped values.
+ (WebCore::RenderMathMLRoot::layout): Setting padding with integers to
+ avoid inconsistent rounding based on the root's location.
+ * rendering/mathml/RenderMathMLRow.cpp:
+ (WebCore::RenderMathMLRow::layout):
+ * rendering/mathml/RenderMathMLSquareRoot.cpp:
+ (WebCore::RenderMathMLSquareRoot::paint): See RenderMathMLRoot.
+ (WebCore::RenderMathMLSquareRoot::layout): Ditto.
+ * rendering/mathml/RenderMathMLUnderOver.cpp:
+ (WebCore::getOffsetHeight):
+ (WebCore::RenderMathMLUnderOver::layout):
+
+2012-03-12 Anders Carlsson <andersca@apple.com>
+
+ Use smaller tiles for right and bottom edges
+ https://bugs.webkit.org/show_bug.cgi?id=80893
+ <rdar://problem/11032873>
+
+ Reviewed by Sam Weinig.
+
+ * platform/graphics/ca/mac/TileCache.mm:
+ (WebCore::TileCache::rectForTileIndex):
+ Intersect the rect with the tile cache bounds.
+
+ (WebCore::TileCache::revalidateTiles):
+ Resize already existing tiles if needed.
+
+ (WebCore::TileCache::createTileLayer):
+ This now takes a tile rect. Use setFrame instead of setting the bounds and position separately.
+
+2012-03-12 Enrica Casucci <enrica@apple.com>
+
+ WebKit2: remove NSPasteboard access for promised data from the WebProcess
+ https://bugs.webkit.org/show_bug.cgi?id=80073
+
+ Reviewed by Alexey Proskuryakov.
+
+ * WebCore.exp.in: Added two exported methods.
+ * platform/mac/FileSystemMac.mm:
+ (WebCore::setMetaData): Last parameter in the call to wkSetMetadataURL
+ needs to be wrapped in String before casting to NSString.
+
+2012-03-12 Alexey Proskuryakov <ap@apple.com>
+
+ clang build fix
+
+ * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::convertToLength): Reorder
+ boolean operators, so that a warning about "use of logical || with constant operand" doesn't
+ appear.
+
+2012-03-12 Abhishek Arya <inferno@chromium.org>
+
+ Crash in Text::splitText due to mutation events.
+ https://bugs.webkit.org/show_bug.cgi?id=80828
+
+ Reviewed by Ryosuke Niwa.
+
+ Test: fast/text/split-text-crash.xhtml
+
+ * dom/Range.cpp:
+ (WebCore::Range::insertNode): replace m_start.container() calls with ref protected node.
+
+2012-03-12 Kenneth Russell <kbr@google.com>
+
+ Null argument to texSubImage2D crashes
+ https://bugs.webkit.org/show_bug.cgi?id=80778
+
+ Reviewed by Dean Jackson.
+
+ Generate INVALID_VALUE OpenGL error upon receiving null argument.
+ Final behavior still being decided on public-webgl mailing list.
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore):
+ (WebCore::WebGLRenderingContext::texImage2D):
+ (WebCore::WebGLRenderingContext::texSubImage2D):
+ (WebCore::WebGLRenderingContext::validateTexFuncData):
+ * html/canvas/WebGLRenderingContext.h:
+
+2012-03-12 Luke Macpherson <macpherson@chromium.org>
+
+ Remove CSSStyleSelector's convertToLength method and use CSSPrimitiveValue's version directly.
+ https://bugs.webkit.org/show_bug.cgi?id=80484
+
+ Reviewed by Julien Chaffraix.
+
+ No new tests / code cleanup only.
+
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::convertToLength):
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::ApplyPropertyClip::convertToLength):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+
+2012-03-12 Stephen White <senorblanco@chromium.org>
+
+ [chromium] Restore canvas2D acceleration after context loss.
+ https://bugs.webkit.org/show_bug.cgi?id=80629
+
+ Reviewed by James Robinson.
+
+ Covered by existing canvas tests, and manual testing (killing the GPU
+ process).
+
+ * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
+ (WebCore::Canvas2DLayerChromium::create):
+ (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
+ (WebCore::Canvas2DLayerChromium::setNeedsDisplayRect):
+ (WebCore::Canvas2DLayerChromium::drawsContent):
+ (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
+ * platform/graphics/chromium/Canvas2DLayerChromium.h:
+ (Canvas2DLayerChromium):
+ * platform/graphics/chromium/cc/CCRenderSurface.cpp:
+ (WebCore::CCRenderSurface::applyFilters):
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (SharedGraphicsContext3DImpl):
+ (WebCore::SharedGraphicsContext3DImpl::SharedGraphicsContext3DImpl):
+ (WebCore::SharedGraphicsContext3DImpl::get):
+ (WebCore):
+ (WebCore::SharedGraphicsContext3D::get):
+ * platform/graphics/gpu/SharedGraphicsContext3D.h:
+ (SharedGraphicsContext3D):
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::createAcceleratedCanvas):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::PlatformContextSkia):
+ (WebCore):
+ * platform/graphics/skia/PlatformContextSkia.h:
+ (WebCore):
+ (WebCore::PlatformContextSkia::isAccelerated):
+ (WebCore::PlatformContextSkia::setAccelerated):
+ (PlatformContextSkia):
+
+2012-03-12 George Staikos <staikos@webkit.org>
+
+ It doesn't make sense to return const unsigned, and GCC warns about it.
+ Remove const.
+ https://bugs.webkit.org/show_bug.cgi?id=80790
+
+ Reviewed by Antonio Gomes.
+
+ * platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.h:
+ (WebCore::ComplexTextController::length):
+ (WebCore::ComplexTextController::numCodePoints):
+ (WebCore::ComplexTextController::offsetX):
+
+2012-03-12 Beth Dakin <bdakin@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=80888
+ Clear background for NSTextFieldCell is unreliable and not necessary
+ -and corresponding-
+ <rdar://problem/10663710>
+
+ Reviewed by Dan Bernstein.
+
+ With http://trac.webkit.org/changeset/104240 I thought it was necessary to
+ make NSTextFieldCells draw with a clear background in order to allow styled
+ text fields. That is not actually necessary; we just had a different bug
+ where isControlStyled() was only checking for styled borders on text fields.
+ Text fields can also be styled with backgrounds, so they need the full check.
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::isControlStyled):
+ (WebCore::RenderThemeMac::textField):
+
+2012-03-12 Scott Byer <scottbyer@chromium.org>
+
+ Cleanup obsolete files.
+ https://bugs.webkit.org/show_bug.cgi?id=80737
+
+ Reviewed by James Robinson.
+
+ No new code.
+
+ * GNUmakefile.list.am:
+ * PlatformWinCE.cmake:
+ * Target.pri:
+ * WebCore.vcproj/WebCore.vcproj:
+ * platform/ScrollAnimatorWin.cpp: Removed.
+ * platform/ScrollAnimatorWin.h: Removed.
+
+2012-03-12 Gregg Tavares <gman@google.com>
+
+ Make texImage2D error for wrong size ArrayBufferView more helpful
+ https://bugs.webkit.org/show_bug.cgi?id=80868
+
+ It took me about 30 minutes to figure out my texImage2D was failing
+ not because my ArrayBufferView was too small but because the default
+ alignment is 4. A better error message might help devs find this issue
+ faster.
+
+ Reviewed by Kenneth Russell.
+
+ No new tests as no new functionality.
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore):
+ (WebCore::WebGLRenderingContext::validateTexFuncData):
+
+2012-03-12 Tim Horton <timothy_horton@apple.com>
+
+ Infinite repaint loop with SVGImageCache and deferred repaint timers
+ https://bugs.webkit.org/show_bug.cgi?id=78315
+ <rdar://problem/10651634>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Only defer image redraw on a timer if we're in layout. This breaks
+ the repaint loop while still preventing us from drawing inside layout.
+
+ Completely disable repaint during relayout inside SVGImage::drawSVGToImageBuffer,
+ preventing deferred repaint timers from being started during that process.
+
+ No new tests, as the problem only occurs in a nonstandard configuration.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::FrameView):
+ (WebCore::FrameView::reset):
+ (WebCore::FrameView::repaintContentRectangle):
+ (WebCore::FrameView::endDeferredRepaints):
+ (WebCore::FrameView::startDeferredRepaintTimer):
+ (WebCore):
+ (WebCore::FrameView::doDeferredRepaints):
+ (WebCore::FrameView::deferredRepaintTimerFired):
+ (WebCore::FrameView::beginDisableRepaints):
+ (WebCore::FrameView::endDisableRepaints):
+ * page/FrameView.h:
+ (FrameView):
+ (WebCore::FrameView::repaintsDisabled):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::shouldRepaint):
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImage::drawSVGToImageBuffer):
+ (WebCore::SVGImage::draw):
+ (WebCore::SVGImage::frameView):
+ (WebCore):
+ * svg/graphics/SVGImage.h:
+ (WebCore):
+ * svg/graphics/SVGImageCache.cpp:
+ (WebCore::SVGImageCache::imageContentChanged):
+ (WebCore::SVGImageCache::redraw):
+ (WebCore::SVGImageCache::redrawTimerFired):
+ (WebCore):
+ * svg/graphics/SVGImageCache.h:
+ (SVGImageCache):
+
+2012-03-12 Adam Klein <adamk@chromium.org>
+
+ [MutationObservers] Enforce a consistent order of MutationRecord delivery
+ https://bugs.webkit.org/show_bug.cgi?id=80549
+
+ Reviewed by Ojan Vafai.
+
+ Mutations should be delivered in order of creation.
+
+ Tests: fast/mutation/create-during-delivery.html
+ fast/mutation/delivery-order.html
+ fast/mutation/mutate-during-delivery.html
+
+ * dom/WebKitMutationObserver.cpp:
+ (WebCore):
+ (WebCore::WebKitMutationObserver::ObserverLessThan::operator()): Functor for use with std::sort.
+ (WebCore::WebKitMutationObserver::create):
+ (WebCore::WebKitMutationObserver::WebKitMutationObserver):
+ (WebCore::WebKitMutationObserver::deliverAllMutations): Move observers into a sorted vector before delivery.
+ * dom/WebKitMutationObserver.h: Add a "priority" member which monotonically increases with each construction.
+
+2012-03-12 Nat Duca <nduca@chromium.org>
+
+ [Chromium] Force compositeAndReadback through regular scheduling flow
+ https://bugs.webkit.org/show_bug.cgi?id=77049
+
+ Reviewed by James Robinson.
+
+ * platform/graphics/chromium/cc/CCFrameRateController.cpp:
+ (WebCore::CCFrameRateController::onTimerTick):
+ * platform/graphics/chromium/cc/CCFrameRateController.h:
+ (CCFrameRateControllerClient):
+ * platform/graphics/chromium/cc/CCScheduler.cpp:
+ (WebCore::CCScheduler::setNeedsForcedCommit):
+ (WebCore):
+ (WebCore::CCScheduler::vsyncTick):
+ * platform/graphics/chromium/cc/CCScheduler.h:
+ (CCScheduler):
+ * platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
+ (WebCore::CCSchedulerStateMachine::CCSchedulerStateMachine):
+ (WebCore::CCSchedulerStateMachine::nextAction):
+ (WebCore::CCSchedulerStateMachine::updateState):
+ (WebCore::CCSchedulerStateMachine::setNeedsForcedCommit):
+ (WebCore):
+ * platform/graphics/chromium/cc/CCSchedulerStateMachine.h:
+ (CCSchedulerStateMachine):
+ * platform/graphics/chromium/cc/CCThreadProxy.cpp:
+ (WebCore::CCThreadProxy::CCThreadProxy):
+ (WebCore::CCThreadProxy::compositeAndReadback):
+ (WebCore::CCThreadProxy::requestReadbackOnImplThread):
+ (WebCore::CCThreadProxy::forceBeginFrameOnImplThread):
+ (WebCore::CCThreadProxy::scheduledActionBeginFrame):
+ (WebCore::CCThreadProxy::beginFrame):
+ * platform/graphics/chromium/cc/CCThreadProxy.h:
+ (CCThreadProxy):
+ (WebCore::CCThreadProxy::BeginFrameAndCommitState::BeginFrameAndCommitState):
+ (BeginFrameAndCommitState):
+
+2012-03-12 Joshua Bell <jsbell@chromium.org>
+
+ IndexedDB: Handle LevelDB database corruption
+ https://bugs.webkit.org/show_bug.cgi?id=79413
+
+ Add LevelDBDatabase::destroy() method so that clients can retry if open() fails.
+
+ Reviewed by Tony Chang.
+
+ Test: webkit_unit_tests --gtest_filter='LevelDBDatabaseTest.CorruptionTest'
+
+ * Modules/indexeddb/IDBLevelDBBackingStore.cpp: Implement open/destroy/open strategy.
+ (WebCore::IDBLevelDBBackingStore::open):
+ * platform/leveldb/LevelDBDatabase.cpp:
+ (WebCore::LevelDBDatabase::destroy):
+ (WebCore):
+ * platform/leveldb/LevelDBDatabase.h:
+ (LevelDBDatabase):
+
+2012-03-11 Shawn Singh <shawnsingh@chromium.org>
+
+ Fix regression on fast/table/table-row-compositing-repaint-crash.html
+ https://bugs.webkit.org/show_bug.cgi?id=80804
+
+ Reviewed by Simon Fraser.
+
+ Covered by existing tests.
+
+ http://trac.webkit.org/changeset/110401/ accidentally caused
+ fast/table/table-row-compositing-repaint-crash.html to fail.
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::updateBacking):
+
+2012-03-12 Mike Lawther <mikelawther@chromium.org>
+
+ CSS3 calc: enable mixed percent/absolute for font
+ https://bugs.webkit.org/show_bug.cgi?id=80813
+
+ Reviewed by Ojan Vafai.
+
+ Add support for mixed percent/absolute expressions to the font handling class.
+
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::ApplyPropertyFontSize::applyValue):
+
+2012-03-12 Andreas Kling <awesomekling@apple.com>
+
+ Restore Attr::style() functionality.
+ <http://webkit.org/b/80678>
+ <rdar://problem/10933904>
+
+ Reviewed by Antti Koivisto.
+
+ The neutering of Attr::style() in r106740 broke some internal clients of the Obj-C API,
+ so this was definitely premature.
+
+ Since we no longer have a per-Attribute style object, synthesize one in style() and
+ hang it off of the Attr. This grows Attr by one pointer, but it's a low-volume object
+ so it shouldn't matter much.
+
+ We recreate the StylePropertySet object on every call to style(), to avoid complicating
+ things with custom invalidation code.
+
+ * dom/Attr.cpp:
+ (WebCore::Attr::style):
+ * dom/Attr.h:
+ * dom/StyledElement.h:
+ (WebCore::StyledElement::collectStyleForAttribute):
+
+2012-03-12 Ryosuke Niwa <rniwa@webkit.org>
+
+ REGRESSION(r109285): Crash in WebCore::Document::nodeChildrenWillBeRemoved
+ https://bugs.webkit.org/show_bug.cgi?id=80578
+
+ Reviewed by Andreas Kling.
+
+ Test: svg/css/style-change-crash.html
+
+ * dom/Element.cpp:
+ (WebCore::Element::setAttribute):
+ (WebCore::Element::setAttributeInternal):
+ * dom/Element.h:
+ (Element):
+ * dom/ElementAttributeData.cpp:
+ (WebCore::ElementAttributeData::addAttribute):
+ (WebCore::ElementAttributeData::removeAttribute):
+ * dom/ElementAttributeData.h:
+ (ElementAttributeData):
+ * dom/StyledElement.cpp:
+ (WebCore::StyledElement::updateStyleAttribute):
+
+2012-03-12 Sadrul Habib Chowdhury <sadrul@chromium.org>
+
+ Touch event handler count is not updated when adding handlers to the window.
+ https://bugs.webkit.org/show_bug.cgi?id=80756
+
+ Touch event handlers added to the window needs to be included when counting the number of touch event
+ handlers. This makes touch event handler counting identical to wheel event handler counting.
+
+ Reviewed by Anders Carlsson.
+
+ Test: fast/events/touch/touch-handler-count.html
+
+ * dom/EventNames.h:
+ (EventNames):
+ (WebCore::EventNames::isTouchEventType):
+ * dom/Node.cpp:
+ (WebCore):
+ (WebCore::tryAddEventListener):
+ (WebCore::tryRemoveEventListener):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::addEventListener):
+ (WebCore::DOMWindow::removeEventListener):
+ * testing/Internals.cpp:
+ (WebCore::Internals::touchEventHandlerCount):
+ (WebCore):
+ * testing/Internals.h:
+ (Internals):
+ * testing/Internals.idl:
+
+2012-03-12 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: extract ResourceScriptMapping from MainScriptMapping.
+ https://bugs.webkit.org/show_bug.cgi?id=80834
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/ScriptMapping.js:
+ (WebInspector.ResourceScriptMapping):
+ (WebInspector.ResourceScriptMapping.prototype._uiSourceCodeListChanged):
+ (WebInspector.ResourceScriptMapping.prototype.reset):
+ (WebInspector.MainScriptMapping):
+ (WebInspector.MainScriptMapping.prototype.rawLocationToUILocation):
+ (WebInspector.MainScriptMapping.prototype.createLiveLocation):
+ (WebInspector.MainScriptMapping.prototype._registerLiveLocation):
+ (WebInspector.MainScriptMapping.prototype._unregisterLiveLocation):
+ (WebInspector.MainScriptMapping.prototype._updateLiveLocations):
+ (WebInspector.MainScriptMapping.prototype.uiSourceCodeList):
+ (WebInspector.MainScriptMapping.prototype.addScript):
+ (WebInspector.MainScriptMapping.prototype._handleUISourceCodeListChanged):
+ (WebInspector.MainScriptMapping.prototype.setFormatSource):
+ (WebInspector.MainScriptMapping.prototype.forceUpdateSourceMapping):
+ (WebInspector.MainScriptMapping.prototype.reset):
+
+2012-03-12 Pavel Feldman <pfeldman@chromium.org>
+
+ Web Inspector: recognize Float*Array and Int*Array as arrays.
+ https://bugs.webkit.org/show_bug.cgi?id=80850
+
+ Reviewed by Vsevolod Vlasov.
+
+ Test: inspector/console/console-external-array.html
+
+ * bindings/js/JSInjectedScriptHostCustom.cpp:
+ (WebCore::JSInjectedScriptHost::type):
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
+ (WebCore::V8InjectedScriptHost::typeCallback):
+
+2012-03-12 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
+
+ [TexMapGL] Pixel-align the transform of textures that fit pixel-for-pixel on the frame buffer.
+ https://bugs.webkit.org/show_bug.cgi?id=80848
+
+ Reviewed by Noam Rosenthal.
+
+ When rendering a transformed texture on the screen with a fractional
+ coordinate with linear filtering, the resulting pixel will be blended from
+ the texels around this fractional position according to their cover ratio.
+ This produces a slight blur of pixels which give no benefit when rendering
+ a texture that isn't scaled.
+
+ This patch offsets the transform by rounding the translation part of the
+ layer's transform to align the result to integer coordinates.
+ Applying the adjustment on the layer transform makes sure that all the tiles
+ get the same adjustment.
+
+ * platform/graphics/qt/GraphicsContext3DQt.cpp:
+ (WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
+ * platform/graphics/texmap/TextureMapperGL.cpp:
+ (WebCore::TextureMapperGL::drawTexture):
+ * platform/graphics/texmap/TextureMapperGL.h:
+ (WebCore::BitmapTextureGL::textureSize):
+
+2012-03-12 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
+
+ [TexMapGL] Use textures sized exactly to their contents.
+ https://bugs.webkit.org/show_bug.cgi?id=80845
+
+ Reviewed by Noam Rosenthal.
+
+ This fixes a regression introduced in r108273 as well as the bug it fixed.
+ The regressing behavior was that textures were rendered shrunk by 1 pixel
+ and thus would appear blurry on the screen.
+ The original problem was that garbage contents would appear on filtered
+ textures since we would reuse textures of different sizes by giving them
+ a slightly bigger size.
+
+ This patch will reuse the texture only if the size matches exactly to allow
+ edge clamping to work properly when redering with linear filtering.
+ Reusing textures would only saves us the allocation of graphic memory
+ anyway, which is negligeable compared to texture upload.
+
+ * platform/graphics/qt/GraphicsContext3DQt.cpp:
+ (WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
+ * platform/graphics/texmap/TextureMapperGL.cpp:
+ (WebCore::TextureMapperGL::drawTexture):
+ (WebCore::BitmapTextureGL::didReset):
+ * platform/graphics/texmap/TextureMapperGL.h:
+ (BitmapTextureGL):
+ * platform/graphics/texmap/TextureMapperShaderManager.cpp:
+ (WebCore::TextureMapperShaderProgramOpacityAndMask::TextureMapperShaderProgramOpacityAndMask):
+ (WebCore::TextureMapperShaderProgramOpacityAndMask::prepare):
+ * platform/graphics/texmap/TextureMapperShaderManager.h:
+ (TextureMapperShaderProgramOpacityAndMask):
+
+2012-03-12 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
+
+ [TexMap] Remove BitmapTexture::destroy.
+ https://bugs.webkit.org/show_bug.cgi?id=80844
+
+ Reviewed by Noam Rosenthal.
+
+ Use the destructor directly instead.
+
+ * platform/graphics/texmap/TextureMapper.h:
+ * platform/graphics/texmap/TextureMapperGL.cpp:
+ (WebCore::BitmapTextureGL::~BitmapTextureGL):
+ * platform/graphics/texmap/TextureMapperGL.h:
+ (BitmapTextureGL):
+ * platform/graphics/texmap/TextureMapperImageBuffer.h:
+ (WebCore::BitmapTextureImageBuffer::~BitmapTextureImageBuffer):
+
+2012-03-12 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: DebuggerModel.Location should have scriptId property.
+ https://bugs.webkit.org/show_bug.cgi?id=80830
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/CompilerSourceMapping.js:
+ (WebInspector.ClosureCompilerSourceMapping.prototype.sourceLocationToCompiledLocation):
+ * inspector/front-end/ConsoleMessage.js:
+ (WebInspector.ConsoleMessageImpl.prototype.location):
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel.Location):
+ (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
+ (WebInspector.DebuggerModel.prototype.createRawLocation):
+ (WebInspector.DebuggerModel.prototype.createRawLocationByURL):
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
+ (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessageToScript):
+ (WebInspector.DebuggerPresentationModel.prototype._addPendingConsoleMessagesToScript):
+ (WebInspector.DebuggerPresentationModelResourceBinding.prototype._uiSourceCodeForResource):
+ (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyLocation):
+ * inspector/front-end/RawSourceCode.js:
+ (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiLocationToRawLocation):
+ (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.rawLocationToUILocation):
+ (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
+ (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.uiLocationToRawLocation):
+ * inspector/front-end/ScriptFormatter.js:
+ (WebInspector.ScriptFormatter.locationToPosition):
+ (WebInspector.ScriptFormatter.positionToLocation):
+ (WebInspector.FormattedSourceMapping.prototype.originalToFormatted):
+ (WebInspector.FormattedSourceMapping.prototype.formattedToOriginal):
+
+2012-03-12 Dana Jansens <danakj@chromium.org>
+
+ [chromium] A couple early-outs for occlusion tracker
+ https://bugs.webkit.org/show_bug.cgi?id=80742
+
+ Reviewed by Adrienne Walker.
+
+ Covered by existing tests.
+
+ * platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
+ (WebCore::::occluded):
+ (WebCore::::unoccludedContentRect):
+
+2012-03-12 Zeno Albisser <zeno@webkit.org>
+
+ [Qt][Mac] Build fails after adding WebCoreCFAutorelease(CFTypeRef) (r110360).
+ https://bugs.webkit.org/show_bug.cgi?id=80840
+
+ CoreFoundation/CFBase.h needs to be included to define the type CFTypeRef.
+
+ Reviewed by Tor Arne Vestbø.
+
+ * platform/mac/WebCoreObjCExtras.h:
+
+2012-03-12 George Staikos <staikos@webkit.org>
+
+ Remove unused global static variable for BlackBerry.
+ https://bugs.webkit.org/show_bug.cgi?id=80790
+
+ Reviewed by Alexey Proskuryakov.
+
+ * platform/graphics/gpu/DrawingBuffer.cpp:
+ (WebCore):
+
+2012-03-12 George Staikos <staikos@webkit.org>
+
+ Correct usage of NDEBUG to fix warnings on BlackBerry.
+ https://bugs.webkit.org/show_bug.cgi?id=80790
+
+ Reviewed by Alexey Proskuryakov.
+
+ * platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.cpp:
+ (WebCore::CookieDatabaseBackingStore::sendChangesToDatabase):
+ * platform/blackberry/CookieManager.cpp:
+ (WebCore::CookieManager::initiateCookieLimitCleanUp):
+
+2012-03-12 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Re-apply the patch after v8 roll to r11000.
+
+ Web Inspector: move heap snapshot nodes data to external array.
+ https://bugs.webkit.org/show_bug.cgi?id=79911
+
+ Reviewed by Vsevolod Vlasov.
+
+ Tests:
+ heap-shapshot.html
+ heap-shapshot-loader.html
+
+ * inspector/front-end/HeapSnapshot.js:
+ (WebInspector.Int32Array):
+ (WebInspector.Int32Array.prototype.get array):
+ (WebInspector.HeapSnapshotLoader.prototype._parseNodes):
+ (WebInspector.HeapSnapshotLoader.prototype.pushJSONChunk):
+ (WebInspector.HeapSnapshot):
+ (WebInspector.HeapSnapshot.prototype._init):
+
+2012-03-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ [Qt] Fix build with newer Qt 5.
+
+ Reviewed by Tor Arne Vestbø.
+
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::fileListNameForWidth): Use DefaultCodec instead of the
+ deprecated CodecForTR.
+
+2012-03-12 Hans Wennborg <hans@chromium.org>
+
+ Speech JavaScript API: SpeechRecognitionEvent
+ https://bugs.webkit.org/show_bug.cgi?id=80513
+
+ Reviewed by Adam Barth.
+
+ Implement SpeechRecognitionEvent.
+ (Spec: http://speech-javascript-api-spec.googlecode.com/git/speechapi.html)
+
+ Test: fast/events/constructors/speech-recognition-event-constructor.html
+
+ * Modules/speech/DOMWindowSpeech.idl:
+ * Modules/speech/SpeechRecognitionEvent.cpp: Added.
+ (WebCore):
+ (WebCore::SpeechRecognitionEventInit::SpeechRecognitionEventInit):
+ (WebCore::SpeechRecognitionEvent::create):
+ (WebCore::SpeechRecognitionEvent::createResult):
+ (WebCore::SpeechRecognitionEvent::createNoMatch):
+ (WebCore::SpeechRecognitionEvent::createResultDeleted):
+ (WebCore::SpeechRecognitionEvent::createError):
+ (WebCore::SpeechRecognitionEvent::interfaceName):
+ (WebCore::SpeechRecognitionEvent::SpeechRecognitionEvent):
+ * Modules/speech/SpeechRecognitionEvent.h: Added.
+ (WebCore):
+ (SpeechRecognitionEventInit):
+ (SpeechRecognitionEvent):
+ (WebCore::SpeechRecognitionEvent::result):
+ (WebCore::SpeechRecognitionEvent::error):
+ (WebCore::SpeechRecognitionEvent::resultIndex):
+ (WebCore::SpeechRecognitionEvent::resultHistory):
+ * Modules/speech/SpeechRecognitionEvent.idl:
+ * WebCore.gypi:
+ * bindings/generic/RuntimeEnabledFeatures.h:
+ (WebCore::RuntimeEnabledFeatures::webkitSpeechRecognitionEventEnabled):
+ * bindings/v8/OptionsObject.cpp:
+ (WebCore::OptionsObject::get):
+ (WebCore):
+ * bindings/v8/OptionsObject.h:
+ (WebCore):
+ (OptionsObject):
+ * dom/EventNames.h:
+ (WebCore):
+ * dom/EventNames.in:
+
+2012-03-12 Kent Tamura <tkent@chromium.org>
+
+ Use ICU C API instead of C++ API in LocalizedNumberICU
+ https://bugs.webkit.org/show_bug.cgi?id=80815
+ https://bugs.gentoo.org/show_bug.cgi?id=407401
+
+ Reviewed by Hajime Morita.
+
+ ICU 4.8 doesn't have kNumberStyle. We had better to use ICU C API in
+ general to avoid such issues.
+
+ This patch should not make any behavior change.
+
+ * platform/text/LocalizedNumberICU.cpp:
+ (WebCore::ICULocale::ICULocale):
+ Change the argument type: icu::Locale -> const char*
+ (WebCore::ICULocale::~ICULocale): Delete m_numberFormat with unum_close().
+ (WebCore::ICULocale::create): Do not create icu::Locale.
+ (WebCore::ICULocale::createForCurrentLocale): ditto.
+ (WebCore::ICULocale::setDecimalSymbol):
+ Use unum_getSymbol() instead of DecimalFormatSymbols::getSymbol().
+ (WebCore::ICULocale::setDecimalTextAttribute):
+ Added. A utility function to store prefixes and suffixes.
+ (WebCore::ICULocale::initializeDecimalFormat):
+ - unum_open(), instead of NumberFormat::createInstance().
+ - Use C API symbols.
+ - Cache positive/negative prefixes/suffixes.
+ (WebCore::ICULocale::convertToLocalizedNumber): Use cached prefixes and suffixes.
+ (WebCore::matches): Stop using template because we don't use UString anymore.
+ (WebCore::ICULocale::detectSignAndGetDigitRange):
+ - Use cached prefixes and suffixes.
+ - Use String::startsWith() and endsWith().
+ (WebCore::ICULocale::convertFromLocalizedNumber):
+ * platform/text/LocalizedNumberICU.h:
+ (ICULocale):
+
+2012-03-11 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: decouple LiveLocation from RawSourceCode.
+ https://bugs.webkit.org/show_bug.cgi?id=80785
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.prototype.createPlacard):
+ (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
+ (WebInspector.PresentationCallFrame):
+ (WebInspector.PresentationCallFrame.prototype.uiLocation):
+ (WebInspector.DebuggerPresentationModel.CallFramePlacard):
+ * inspector/front-end/RawSourceCode.js:
+ * inspector/front-end/ScriptMapping.js:
+ (WebInspector.MainScriptMapping):
+ (WebInspector.MainScriptMapping.prototype.createLiveLocation):
+ (WebInspector.MainScriptMapping.prototype._registerLiveLocation):
+ (WebInspector.MainScriptMapping.prototype._unregisterLiveLocation):
+ (WebInspector.MainScriptMapping.prototype._updateLiveLocations):
+ (WebInspector.MainScriptMapping.prototype._uiSourceCodeListChanged):
+ (WebInspector.MainScriptMapping.prototype.reset):
+ (WebInspector.LiveLocation):
+ (WebInspector.LiveLocation.prototype.init):
+ (WebInspector.LiveLocation.prototype.dispose):
+ (WebInspector.LiveLocation.prototype._update):
+
+2012-03-11 Victor Carbune <vcarbune@adobe.com>
+
+ The main code structure for placing future text track cue rendering
+ code and main outer rendering steps.
+ https://bugs.webkit.org/show_bug.cgi?id=79746
+
+ Reviewed by Eric Carlson.
+
+ No new tests. Only refactoring, but some chromium tests require rebaselining
+ and have been marked accordingly.
+
+ * css/mediaControls.css:
+ (::-webkit-media-controls): Changed the default display to -webkit-box, as
+ captions need to always be rendered on top of the controls, if they are visible.
+ (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
+ Default position attribute is now relative, handled by the parent -webkit-box
+ (video::-webkit-media-text-track-container): The position of the container is
+ now relative, handled by -webkit-box.
+ (video::-webkit-media-text-track-display): Adjusted text color to match
+ the color required in the WebVTT spec (section 3.5.1 'color' property)
+ * css/mediaControlsChromium.css:
+ (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
+ Default position attribute is now relative, handled by the parent -webkit-box
+
+ * html/shadow/MediaControlElements.cpp:
+ (WebCore::MediaControlPanelElement::MediaControlPanelElement): Added a timer
+ for the webkit fade out transition event. This timer is required for setting
+ the display property to 'none', when the fade out transition is over. Otherwise,
+ captions would not be displayed at the bottom of the video.
+ (WebCore::MediaControlPanelElement::startTimer): Added.
+ (WebCore):
+ (WebCore::MediaControlPanelElement::stopTimer): Added.
+ (WebCore::MediaControlPanelElement::transitionTimerFired): Added. If the current
+ state of the controls is transparent, the display property is set to 'none'.
+ (WebCore::MediaControlPanelElement::makeOpaque): The inline display:'none' property
+ is removed before the fade in transition.
+ (WebCore::MediaControlPanelElement::makeTransparent): Added the timer start.
+ (WebCore::MediaControlTextTrackContainerElement::MediaControlTextTrackContainerElement):
+ Removed m_bottom as it is not needed anymore.
+ (WebCore::MediaControlTextTrackContainerElement::updateDisplay): Added. Main
+ function for the rendering rules.
+ (WebCore::MediaControlTextTrackContainerElement::updateSizes): The bottom position
+ needs not to be set anymore.
+ * html/shadow/MediaControlElements.h:
+ (MediaControlPanelElement): Added timer internals.
+ (MediaControlTextTrackContainerElement): Added updateDisplay() and removed unused
+ variables.
+
+ (WebCore):
+ * html/shadow/MediaControlRootElement.cpp: Removed m_textTrackDisplay
+ and duplicated code with MediaControlRootElementChromium (only minimum
+ function calls to the main text track container)
+ (WebCore::MediaControlRootElement::MediaControlRootElement):
+ (WebCore::MediaControlRootElement::setMediaController):
+ (WebCore::MediaControlRootElement::createTextTrackDisplay):
+ (WebCore::MediaControlRootElement::updateTextTrackDisplay):
+
+ * html/shadow/MediaControlRootElementChromium.cpp: Removed m_textTrackDisplay
+ and duplicate code with MediaControlRootElement (only minimum function calls
+ to the main text track container remained)
+ (WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):
+ (WebCore::MediaControlRootElementChromium::setMediaController):
+ (WebCore::MediaControlRootElementChromium::createTextTrackDisplay):
+ (WebCore::MediaControlRootElementChromium::updateTextTrackDisplay):
+
+ (WebCore):
+ * html/track/TextTrackCue.cpp: Enhanced structure for supporting more complex
+ rendering required by the WebVTT spec.
+ (WebCore::TextTrackCue::TextTrackCue):
+ (WebCore::TextTrackCue::cueDidChange): Mark the display tree as obsolete, so that
+ it needs to be re-computed.
+ (WebCore::TextTrackCue::setIsActive): The display tree needs to be removed as
+ soon as the cue becomes inactive. Adjusted this method to support the functionality.
+ (WebCore):
+ (WebCore::TextTrackCue::determineDisplayParameters): Added. This method will hold
+ main positioning parameter computations for a TextTrackCue
+ (WebCore):
+ (WebCore::TextTrackCue::getDisplayTree): Added. This method returns the root node
+ of the CSS boxes that need to be displayed on top of the video, for the current
+ instance.
+ * html/track/TextTrackCue.h:
+ (WebCore):
+ (TextTrackCue):
+
+2012-03-11 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r110359.
+ http://trac.webkit.org/changeset/110359
+ https://bugs.webkit.org/show_bug.cgi?id=80799
+
+ SelectPopupMenuTest.ClickItem failure (Requested by ukai on
+ #webkit).
+
+ * platform/chromium/PopupListBox.cpp:
+ (WebCore::PopupListBox::paint):
+ (WebCore::PopupListBox::paintRow):
+ (WebCore::PopupListBox::getRowHeight):
+ * platform/chromium/PopupListBox.h:
+ (PopupContainerSettings):
+ * platform/chromium/PopupMenuChromium.cpp:
+ (WebCore):
+ (WebCore::PopupMenuChromium::show):
+ * platform/chromium/PopupMenuChromium.h:
+ (PopupMenuChromium):
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::showPopup):
+
+2012-03-11 Timothy Hatcher <timothy@apple.com>
+
+ Fix a crash opening the Web Inspector in WebKit1 clients.
+
+ The call to InspectorFrontendClientLocal::setAttachedWindow is preformed really early in the process,
+ causing it to crash almost every time. It should use evaluateOnLoad instead of evaluateAsBoolean.
+
+ <rdar://problem/10951109> Crash when bringing up Web Inspector in WebKit1 client
+ https://bugs.webkit.org/show_bug.cgi?id=80796
+
+ Reviewed by Brian Weinstein.
+
+ * inspector/InspectorFrontendClientLocal.cpp:
+ (WebCore::InspectorFrontendClientLocal::setAttachedWindow): Use evaluateOnLoad instead of evaluateAsBoolean.
+
+2012-03-11 Shawn Singh <shawnsingh@chromium.org>
+
+ REGRESSION (r93614): scrolling div does not repaint
+ https://bugs.webkit.org/show_bug.cgi?id=80641
+
+ Reviewed by Simon Fraser.
+
+ Test: compositing/repaint/newly-composited-repaint-rect.html
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::updateBacking): When a layer
+ becomes newly composited and creates its backing, the repaintRect
+ may become invalid. This patch recomputes repaintRects in this
+ case.
+
+2012-03-11 George Staikos <staikos@webkit.org>
+
+ Enable JPEG encoding for BlackBerry.
+ https://bugs.webkit.org/show_bug.cgi?id=80792
+
+ Reviewed by Antonio Gomes.
+
+ * PlatformBlackBerry.cmake:
+
+2012-03-11 Pavel Feldman <pfeldman@chromium.org>
+
+ Web Inspector: console.log attempts to substitute any "%" character in the message.
+ https://bugs.webkit.org/show_bug.cgi?id=80504
+
+ Reviewed by Vsevolod Vlasov.
+
+ Test: inspector/console/console-string-format.html
+
+ * inspector/front-end/AuditRules.js:
+ (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
+ * inspector/front-end/ProfileDataGridTree.js:
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
+ * inspector/front-end/utilities.js:
+
+2012-03-11 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: use monotonically increasing time in timeline agent
+ https://bugs.webkit.org/show_bug.cgi?id=80786
+
+ Reviewed by Pavel Feldman.
+
+ * bindings/v8/ScriptGCEvent.cpp:
+ (WebCore::ScriptGCEvent::gcPrologueCallback):
+ (WebCore::ScriptGCEvent::gcEpilogueCallback):
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::pushGCEventRecords):
+ (WebCore::InspectorTimelineAgent::willSendResourceRequest):
+ (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
+ (WebCore::InspectorTimelineAgent::appendRecord):
+ (WebCore::InspectorTimelineAgent::pushCurrentRecord):
+ (WebCore::InspectorTimelineAgent::timestamp):
+ (WebCore):
+ * inspector/InspectorTimelineAgent.h:
+ (InspectorTimelineAgent):
+ (WebCore::InspectorTimelineAgent::timestamp):
+
+2012-03-11 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Network panel does not show responses for application/json data
+ https://bugs.webkit.org/show_bug.cgi?id=80684
+
+ Reviewed by Pavel Feldman.
+
+ Test: http/tests/inspector/network/async-xhr-json-mime-type.html
+
+ * inspector/InspectorPageAgent.cpp:
+ (WebCore::createXHRTextDecoder):
+ (WebCore::InspectorPageAgent::cachedResourceContent):
+ * inspector/InspectorPageAgent.h:
+ * inspector/NetworkResourcesData.cpp:
+ (WebCore::createOtherResourceTextDecoder):
+ (WebCore):
+ (WebCore::NetworkResourcesData::responseReceived):
+
+2012-03-11 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: CSS content is not shown when stylesheet is loaded with invalid mime type in quirks mode.
+ https://bugs.webkit.org/show_bug.cgi?id=80528
+
+ Reviewed by Pavel Feldman.
+
+ Test: http/tests/inspector/resource-tree/resource-tree-invalid-mime-type-css-content.html
+
+ * inspector/InspectorPageAgent.cpp:
+ (WebCore::InspectorPageAgent::cachedResourceContent):
+
+2012-03-11 Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
+
+ [Qt] [WK2] Support threaded renderer in WK2
+ https://bugs.webkit.org/show_bug.cgi?id=76661
+
+ Reviewed by Noam Rosenthal.
+
+ Add TransformationMatrix conversions from/to Qt QMatrix4x4. Used by Qt WebKit2
+ rendering and tested by Qt WebKit2 API tests.
+
+ * platform/graphics/qt/TransformationMatrixQt.cpp:
+ (WebCore::TransformationMatrix::operator QMatrix4x4):
+ (WebCore):
+ (WebCore::TransformationMatrix::TransformationMatrix):
+ * platform/graphics/transforms/TransformationMatrix.h:
+ (TransformationMatrix):
+
+2012-03-09 Jon Lee <jonlee@apple.com>
+
+ Rename NotificationPresenter to NotificationClient
+ https://bugs.webkit.org/show_bug.cgi?id=80488
+ <rdar://problem/10965558>
+
+ Reviewed by Kentaro Hara.
+
+ * notifications/NotificationCenter.h: Renamed from notifications/NotificationPresenter.h.
+
+ Refactor to use renamed WebCore::NotificationClient.
+ * GNUmakefile.list.am:
+ * Target.pri:
+ * WebCore.exp.in:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * notifications/Notification.cpp:
+ (WebCore::Notification::Notification):
+ (WebCore::Notification::show):
+ (WebCore::Notification::cancel):
+ (WebCore::Notification::contextDestroyed):
+ (WebCore::Notification::finishLoading):
+ * notifications/NotificationCenter.cpp:
+ (WebCore::NotificationCenter::create):
+ (WebCore::NotificationCenter::NotificationCenter):
+ (WebCore::NotificationCenter::checkPermission):
+ (WebCore::NotificationCenter::requestPermission):
+ (WebCore::NotificationCenter::disconnectFrame):
+ * notifications/NotificationController.cpp:
+ (WebCore::NotificationController::NotificationController):
+ (WebCore::NotificationController::create):
+ (WebCore::NotificationController::clientFrom):
+ (WebCore::provideNotification):
+ * notifications/NotificationController.h:
+ (WebCore):
+ (NotificationController):
+ (WebCore::NotificationController::client):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::webkitNotifications):
+ * page/DOMWindow.h:
+ (DOMWindow):
+ * workers/WorkerContext.cpp:
+ (WebCore::WorkerContext::webkitNotifications):
+ * workers/WorkerThread.cpp:
+ (WebCore::WorkerThread::WorkerThread):
+ * workers/WorkerThread.h:
+ (WebCore):
+ (WebCore::WorkerThread::getNotificationClient):
+ (WebCore::WorkerThread::setNotificationClient):
+ (WorkerThread):
+
+2012-03-10 Julien Chaffraix <jchaffraix@webkit.org>
+
+ RenderObject with 'resize' different from 'none' should have a RenderLayer
+ https://bugs.webkit.org/show_bug.cgi?id=80738
+
+ Reviewed by James Robinson.
+
+ Covered by fast/css/resize-single-axis.html.
+
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::requiresLayerForOverflowClip):
+ The resizer logic is tied to RenderLayer so force a RenderLayer to be allocated if resize() != RESIZE_NONE.
+
+2012-03-10 Stephen White <senorblanco@chromium.org>
+
+ Unreviewed, rolling out r110358.
+ http://trac.webkit.org/changeset/110358
+ https://bugs.webkit.org/show_bug.cgi?id=80706
+
+ No improvement on specified benchmarks.
+
+ * dom/ContainerNode.cpp:
+ (WebCore::collectNodes):
+ (WebCore::collectTargetNodes):
+
+2012-03-10 MORITA Hajime <morrita@google.com>
+
+ ShadowTree uses weak iteration patterns
+ https://bugs.webkit.org/show_bug.cgi?id=80572
+
+ Reviewed by Dimitri Glazkov.
+
+ Patch by Adam Barth.
+
+ This patch moves various ShadowTree to using a better iteration pattern
+ in which we collect all the ShadowRoots we're planning to iterate into
+ a vector and then iterate over them.
+
+ * dom/ShadowTree.cpp:
+ (ShadowRootVector):
+ (WebCore::ShadowRootVector::ShadowRootVector):
+ (WebCore):
+ (WebCore::ShadowTree::removeAllShadowRoots):
+ (WebCore::ShadowTree::insertedIntoDocument):
+ (WebCore::ShadowTree::removedFromDocument):
+ (WebCore::ShadowTree::insertedIntoTree):
+ (WebCore::ShadowTree::removedFromTree):
+ (WebCore::ShadowTree::willRemove):
+
+2012-03-10 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r110363.
+ http://trac.webkit.org/changeset/110363
+ https://bugs.webkit.org/show_bug.cgi?id=80757
+
+ link error in chromium: unresolved external symbol
+ webkit_support::CreateScopedTempDirectory(void) (Requested by
+ ukai_home on #webkit).
+
+ * Modules/indexeddb/IDBLevelDBBackingStore.cpp:
+ (WebCore::IDBLevelDBBackingStore::open):
+ * platform/leveldb/LevelDBDatabase.cpp:
+ * platform/leveldb/LevelDBDatabase.h:
+ (LevelDBDatabase):
+
+2012-03-09 Robert Kroeger <rjkroege@chromium.org>
+
+ Handle more Gesture* events by performing scrolls on the correct target ScrollableArea
+ https://bugs.webkit.org/show_bug.cgi?id=80311
+
+ Implement GestureScroll* events via re-use of WheelEvent dispatch.
+
+ Reviewed by James Robinson.
+
+ Layout tests previously submited as https://bugs.webkit.org/show_bug.cgi?id=80201 and unit
+ test added as part of this patch.
+
+ * page/EventHandler.cpp:
+ (WebCore::wheelGranularityToScrollGranularity): Refactoring.
+ (WebCore):
+ (WebCore::scrollNode):
+ (WebCore::EventHandler::EventHandler):
+ (WebCore::EventHandler::clear):
+ (WebCore::EventHandler::handleWheelEvent):
+ (WebCore::EventHandler::defaultWheelEventHandler):
+ (WebCore::EventHandler::handleGestureEvent): Added GestureScrollBegin & End.
+ (WebCore::EventHandler::handleGestureTap):
+ (WebCore::EventHandler::handleGestureScrollUpdate):
+ (WebCore::EventHandler::handleGestureScrollCore): Refactoring.
+ * page/EventHandler.h:
+ (EventHandler):
+ * platform/PlatformWheelEvent.h: Added additional scroll type.
+ * platform/ScrollAnimator.cpp:
+ (WebCore::ScrollAnimator::handleWheelEvent): Forward additional scroll type.
+ * platform/ScrollAnimator.h:
+ (WebCore):
+ * platform/ScrollAnimatorNone.cpp:
+ (WebCore::ScrollAnimatorNone::ScrollAnimatorNone): Handle additional scroll type.
+ (WebCore::ScrollAnimatorNone::fireUpAnAnimation):
+ (WebCore):
+ (WebCore::ScrollAnimatorNone::scroll):
+ * platform/ScrollAnimatorNone.h:
+ (ScrollAnimatorNone):
+ * platform/ScrollTypes.h: Added an additional scroll type.
+ * platform/ScrollableArea.cpp:
+ (WebCore::ScrollableArea::scroll):
+
+2012-03-09 Erik Arvidsson <arv@chromium.org>
+
+ [V8] Fix a fixme in v8 bindings
+ https://bugs.webkit.org/show_bug.cgi?id=80734
+
+ Reviewed by Kentaro Hara.
+
+ No new tests. Covered by existing tests.
+
+ * bindings/v8/V8Binding.cpp:
+ (WebCore::toInt32):
+ (WebCore::toUInt32):
+
+2012-03-09 Lauro Neto <lauro.neto@openbossa.org>
+
+ [Qt] WebCore/Target.pri contains obsolete FileStreamProxy.h reference.
+ https://bugs.webkit.org/show_bug.cgi?id=80730
+
+ Reviewed by Tor Arne Vestbø.
+
+ Build fix. Target.pri was still including old FileStreamProxy.h.
+
+ * Target.pri:
+
+2012-03-05 Cem Kocagil <cem.kocagil@gmail.com>
+
+ Pan scroll icon is painted at incorrect coordinates in frames
+ https://bugs.webkit.org/show_bug.cgi?id=79378
+
+ Convert client coordinates to parent ScrollView coordinates
+
+ Reviewed by Antonio Gomes
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::paintPanScrollIcon):
+
+2012-03-09 Joshua Bell <jsbell@chromium.org>
+
+ IndexedDB: Handle LevelDB database corruption
+ https://bugs.webkit.org/show_bug.cgi?id=79413
+
+ Add LevelDBDatabase::destroy() method so that clients can retry if open() fails.
+
+ Reviewed by Tony Chang.
+
+ Test: webkit_unit_tests --gtest_filter='LevelDBDatabaseTest.CorruptionTest'
+
+ * Modules/indexeddb/IDBLevelDBBackingStore.cpp: Implement open/destroy/open strategy.
+ (WebCore::IDBLevelDBBackingStore::open):
+ * platform/leveldb/LevelDBDatabase.cpp:
+ (WebCore::LevelDBDatabase::destroy):
+ (WebCore):
+ * platform/leveldb/LevelDBDatabase.h:
+ (LevelDBDatabase):
+
+2012-03-09 Jessie Berlin <jberlin@apple.com>
+
+ Fix one of the Windows build warnings.
+
+ * html/track/TextTrackCueList.idl:
+ Add a newline to the end of the file.
+
+2012-03-09 Tyler Abbott <tabbott@rim.com>
+
+ BlackBerry PlayBook doesn't sniff mime types
+ https://bugs.webkit.org/show_bug.cgi?id=73869
+
+ Reviewed by Rob Buis.
+
+ Hook up MIMESniffing for BlackBerry. Override Content-Types will
+ not be overriden. File extensions will be trusted when content
+ is loaded from disk.
+
+ No tests, BlackBerry tests are not yet present in webkit.org codebase.
+
+ * PlatformBlackBerry.cmake:
+ * platform/network/blackberry/NetworkJob.cpp:
+ (WebCore::NetworkJob::NetworkJob):
+ (WebCore::NetworkJob::initialize):
+ (WebCore::NetworkJob::handleNotifyDataReceived):
+ (WebCore::NetworkJob::sendResponseIfNeeded):
+ * platform/network/blackberry/NetworkJob.h:
+ (NetworkJob):
+
+2012-03-09 Enrica Casucci <enrica@apple.com>
+
+ Move WebNSURLExtras code down to WebCore.
+ https://bugs.webkit.org/show_bug.cgi?id=80611
+
+ Reviewed by Alexey Proskuryakov.
+
+ * WebCore.exp.in: Added new exported functions.
+ * WebCore.xcodeproj/project.pbxproj: Added WebCoreNSURLExtras.*
+ * platform/FileSystem.h: Added setMetadataURL.
+ * platform/mac/FileSystemMac.mm:
+ (WebCore::setMetaData): Added.
+ (WebCore::setMetadataURL): Added.
+ * platform/mac/WebCoreNSStringExtras.h:
+ * platform/mac/WebCoreNSStringExtras.mm:
+ (hasCaseInsensitivePrefix): Added.
+ * platform/mac/WebCoreNSURLExtras.h: Added.
+ * platform/mac/WebCoreNSURLExtras.mm: Added.
+ * platform/mac/WebCoreObjCExtras.h:
+ * platform/mac/WebCoreSystemInterface.h:
+ * platform/mac/WebCoreSystemInterface.mm:
+
+2012-03-09 Tim Dresser <tdresser@chromium.org>
+
+ [chromium] Increase size of Combo Box Options for touch and high DPI devices
+ https://bugs.webkit.org/show_bug.cgi?id=80027
+
+ Reviewed by Darin Fisher.
+
+ Scale Combo box popups by defaultDeviceScaleFactor, and add padding to
+ <option> elements when touch is enabled.
+
+ Manually tested with --default-device-scale-factor=1,2 and unset.
+ Each of these were tested with RuntimeEnabledFeatures::touchEnabled
+ set to true and false.
+
+ * platform/chromium/PopupListBox.cpp:
+ (WebCore::PopupListBox::paint):
+ (WebCore::PopupListBox::paintRow):
+ (WebCore::PopupListBox::getRowHeight):
+ * platform/chromium/PopupListBox.h:
+ (PopupContainerSettings):
+ * platform/chromium/PopupMenuChromium.cpp:
+ (WebCore):
+ (WebCore::PopupMenuChromium::show):
+ * platform/chromium/PopupMenuChromium.h:
+ (WebCore::PopupMenuChromium::optionPaddingForTouch):
+ (WebCore::PopupMenuChromium::setOptionPaddingForTouch):
+ (PopupMenuChromium):
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::showPopup):
+
+2012-03-09 Stephen White <senorblanco@chromium.org>
+
+ Improve ContainerNode collectNode() performance by reserving vector
+ capacity up front.
+ https://bugs.webkit.org/show_bug.cgi?id=80706
+
+ Reviewed by Ryosuke Niwa.
+
+ Covered by existing tests. Performance will be evaluated based on
+ Chromium's page_cycler_bloat-http, page_cycler_intl1, and
+ dromaeo_domcore suites.
+
+ * dom/ContainerNode.cpp:
+ (WebCore::collectNodes):
+
+2012-03-09 Dan Bernstein <mitz@apple.com>
+
+ <rdar://problem/11018851> Crash in DisplayRefreshMonitor::notifyClients()
+ https://bugs.webkit.org/show_bug.cgi?id=80740
+
+ Reviewed by Sam Weinig.
+
+ No test, since this race condition cannot be reproduced reliably.
+
+ * platform/graphics/mac/DisplayRefreshMonitorMac.cpp:
+ (WebCore::DisplayRefreshMonitor::~DisplayRefreshMonitor): Changed to stop the display link
+ first, then cancel any outstanding calls to refreshDisplayOnMainThread(). When doing things
+ the other way around, the display link can fire after outstanding calls have been canceled,
+ and enqueue new calls on the main thread, which will be dispatched after monitor destruction.
+
+2012-03-09 Pratik Solanki <psolanki@apple.com>
+
+ Assertion failure in ResourceHandle::setDefersLoading(): d->m_defersLoading != defers
+ https://bugs.webkit.org/show_bug.cgi?id=80543
+
+ Reviewed by Geoffrey Garen.
+
+ Reset m_defersLoading flag to the value from Page::defersCallbacks() in
+ ResourceLoader::init(). This is because the resource could have been in the pending requests
+ queue in ResourceLoadScheduler and would have missed out on state changes to this flag
+ happening from DocumentLoader::setDefersCallbacks().
+
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::init):
+
+2012-03-09 Emil A Eklund <eae@chromium.org>
+
+ Add roundedPoint to HitTestResult and change platform code to use it
+ https://bugs.webkit.org/show_bug.cgi?id=80715
+
+ Reviewed by James Robinson.
+
+ Change ports to use roundedPoint to avoid exposing subpixel types to
+ platform code.
+
+ No new tests.
+
+ * rendering/HitTestResult.h:
+ (WebCore::HitTestResult::roundedPoint):
+
+2012-03-09 Kentaro Hara <haraken@chromium.org>
+
+ [V8][Performance] Inline hot methods in V8Bindings.h
+ https://bugs.webkit.org/show_bug.cgi?id=80685
+
+ Reviewed by Adam Barth.
+
+ This patch slightly improves DOM binding performance by inlining hot
+ methods in V8Binding.cpp, e.g. isUndefinedOrNull(), v8StringOrNull(), v8Boolean().
+ For example, this patch improves div.nodeName by 5.0%, and div.nodeValue by 4.1%.
+
+ Performance tests: https://bugs.webkit.org/attachment.cgi?id=131006
+
+ The performance test results in my Mac environment are as follows:
+
+ Chromium/V8 without this patch:
+ div.nodeName : 3417.4 ms
+ div.nodeValue : 2069.6 ms
+
+ Chromium/V8 with this patch:
+ div.nodeName : 3245.6 ms
+ div.nodeValue : 1983.1 ms
+
+ No tests. No change in behavior.
+
+ * bindings/v8/V8Binding.cpp:
+ * bindings/v8/V8Binding.h:
+ (WebCore::toWebCoreString):
+ (WebCore::isUndefinedOrNull):
+ (WebCore::isHostObject):
+ (WebCore::v8Boolean):
+ (WebCore::toWebCoreStringWithNullCheck):
+ (WebCore::toAtomicWebCoreStringWithNullCheck):
+ (WebCore::toWebCoreStringWithNullOrUndefinedCheck):
+ (WebCore::v8UndetectableString):
+ (WebCore::v8StringOrNull):
+ (WebCore::v8StringOrUndefined):
+ (WebCore::v8StringOrFalse):
+ (WebCore::toWebCoreDate):
+ (WebCore::v8DateOrNull):
+
+2012-03-09 W. James MacLean <wjmaclean@chromium.org>
+
+ [chromium] Implement scroll physics architecture for impl/main thread
+ https://bugs.webkit.org/show_bug.cgi?id=79827
+
+ Reviewed by James Robinson.
+
+ Unittests added, plus follow-on patch from rjkroege will add layout tests.
+
+ PlatformGestureCurve is a framework to separate the physical simulation from for gesture
+ animation from control concerns. This allows the physics to be reused in alternate places.
+ At present, the framework will be applied in ScrollAnimatorNone and the Chrome Compositor.
+
+ * WebCore.gypi:
+ * platform/ActivePlatformGestureAnimation.cpp: Added.
+ (WebCore):
+ (WebCore::ActivePlatformGestureAnimation::create):
+ (WebCore::ActivePlatformGestureAnimation::~ActivePlatformGestureAnimation):
+ (WebCore::ActivePlatformGestureAnimation::ActivePlatformGestureAnimation):
+ (WebCore::ActivePlatformGestureAnimation::animate):
+ * platform/ActivePlatformGestureAnimation.h: Added.
+ (WebCore):
+ (ActivePlatformGestureAnimation):
+ * platform/PlatformGestureCurve.h: Added.
+ (WebCore):
+ (PlatformGestureCurve):
+ (WebCore::PlatformGestureCurve::~PlatformGestureCurve):
+ * platform/PlatformGestureCurveTarget.h: Added.
+ (WebCore):
+ (PlatformGestureCurveTarget):
+ (WebCore::PlatformGestureCurveTarget::~PlatformGestureCurveTarget):
+ * platform/TouchFlingPlatformGestureCurve.cpp: Added.
+ (WebCore):
+ (WebCore::TouchFlingPlatformGestureCurve::create):
+ (WebCore::TouchFlingPlatformGestureCurve::TouchFlingPlatformGestureCurve):
+ (WebCore::TouchFlingPlatformGestureCurve::~TouchFlingPlatformGestureCurve):
+ (WebCore::TouchFlingPlatformGestureCurve::apply):
+ * platform/TouchFlingPlatformGestureCurve.h: Added.
+ (WebCore):
+ (TouchFlingPlatformGestureCurve):
+ * platform/WheelFlingPlatformGestureCurve.cpp: Added.
+ (WebCore):
+ (WebCore::WheelFlingPlatformGestureCurve::create):
+ (WebCore::WheelFlingPlatformGestureCurve::WheelFlingPlatformGestureCurve):
+ (WebCore::WheelFlingPlatformGestureCurve::~WheelFlingPlatformGestureCurve):
+ (WebCore::WheelFlingPlatformGestureCurve::apply):
+ * platform/WheelFlingPlatformGestureCurve.h: Added.
+ (WebCore):
+ (WheelFlingPlatformGestureCurve):
+ * platform/graphics/chromium/cc/CCActiveGestureAnimation.cpp: Added.
+ (WebCore):
+ (WebCore::CCActiveGestureAnimation::create):
+ (WebCore::CCActiveGestureAnimation::CCActiveGestureAnimation):
+ (WebCore::CCActiveGestureAnimation::~CCActiveGestureAnimation):
+ (WebCore::CCActiveGestureAnimation::animate):
+ * platform/graphics/chromium/cc/CCActiveGestureAnimation.h: Added.
+ (WebCore):
+ (CCActiveGestureAnimation):
+ * platform/graphics/chromium/cc/CCGestureCurve.h: Added.
+ (WebCore):
+ (CCGestureCurveTarget):
+ (WebCore::CCGestureCurveTarget::~CCGestureCurveTarget):
+ (CCGestureCurve):
+ (WebCore::CCGestureCurve::~CCGestureCurve):
+
+2012-03-09 Alexis Menard <alexis.menard@openbossa.org>
+
+ Implement selectedOptions attribute of <select>.
+ https://bugs.webkit.org/show_bug.cgi?id=80631
+
+ Reviewed by Benjamin Poulain.
+
+ Add a new collection as a member of HTMLSelectElement which is
+ used to store the selected elements. Extend HTMLCollection to
+ support the new collection type needed by this feature.
+
+ Reference : http://www.whatwg.org/specs/web-apps/current-work/multipage/the-button-element.html#dom-select-selectedoptions
+
+ Test: fast/dom/select-selectedOptions.html
+
+ * html/CollectionType.h:
+ * html/HTMLCollection.cpp:
+ (WebCore::HTMLCollection::shouldIncludeChildren):
+ (WebCore::HTMLCollection::isAcceptableElement):
+ * html/HTMLSelectElement.cpp:
+ (WebCore::HTMLSelectElement::selectedOptions):
+ (WebCore):
+ * html/HTMLSelectElement.h:
+ (HTMLSelectElement):
+ * html/HTMLSelectElement.idl:
+
+2012-03-09 Tien-Ren Chen <trchen@chromium.org>
+
+ [chromium] ScrollbarLayerChromium/CCScrollbarLayerImpl for CC-side scrollbar painting
+ https://bugs.webkit.org/show_bug.cgi?id=78872
+
+ Reviewed by James Robinson.
+
+ New test ScrollbarLayerChromiumTest.resolveScrollLayerPointer
+
+ * WebCore.gypi:
+ * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
+ (WebCore::scrollLayerForFrameView):
+ (WebCore::scrollbarLayerDidChange):
+ (WebCore):
+ (WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
+ (WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
+ * platform/ScrollableArea.cpp:
+ (WebCore::ScrollableArea::invalidateScrollbar):
+ * platform/graphics/chromium/GraphicsLayerChromium.h:
+ (WebCore::GraphicsLayerChromium::hasContentsLayer):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore):
+ (WebCore::LayerChromium::toScrollbarLayerChromium):
+ (LayerChromium):
+ * platform/graphics/chromium/ScrollbarLayerChromium.cpp: Added.
+ (WebCore):
+ (WebCore::ScrollbarLayerChromium::createCCLayerImpl):
+ (WebCore::ScrollbarLayerChromium::create):
+ (WebCore::ScrollbarLayerChromium::ScrollbarLayerChromium):
+ (WebCore::ScrollbarLayerChromium::pushPropertiesTo):
+ * platform/graphics/chromium/ScrollbarLayerChromium.h: Added.
+ (WebCore):
+ (ScrollbarLayerChromium):
+ (WebCore::ScrollbarLayerChromium::scrollLayerId):
+ (WebCore::ScrollbarLayerChromium::toScrollbarLayerChromium):
+ * platform/graphics/chromium/TreeSynchronizer.cpp:
+ (WebCore::TreeSynchronizer::synchronizeTrees):
+ (WebCore::TreeSynchronizer::collectExistingCCLayerImplRecursive):
+ (WebCore::TreeSynchronizer::reuseOrCreateCCLayerImpl):
+ (WebCore::TreeSynchronizer::synchronizeTreeRecursive):
+ (WebCore::TreeSynchronizer::updateScrollbarLayerPointersRecursive):
+ (WebCore):
+ * platform/graphics/chromium/TreeSynchronizer.h:
+ (TreeSynchronizer):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::updateMaxScrollPosition):
+ * platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp: Added.
+ (WebCore):
+ (WebCore::CCScrollbarLayerImpl::create):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbarLayerImpl):
+ (WebCore::CCScrollbarLayerImpl::willDraw):
+ (WebCore::CCScrollbarLayerImpl::appendQuads):
+ (WebCore::CCScrollbarLayerImpl::didDraw):
+ (WebCore::CCScrollbarLayerImpl::paint):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::x):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::y):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::width):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::height):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::size):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::location):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::parent):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::root):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::setFrameRect):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::frameRect):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::invalidate):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::invalidateRect):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::scrollbarOverlayStyle):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::getTickmarks):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::isScrollableAreaActive):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::isScrollViewScrollbar):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::convertFromContainingWindow):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::isCustomScrollbar):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::orientation):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::value):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::currentPos):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::visibleSize):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::totalSize):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::maximum):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::controlSize):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::lineStep):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::pageStep):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::pressedPart):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::hoveredPart):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::styleChanged):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::enabled):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::setEnabled):
+ * platform/graphics/chromium/cc/CCScrollbarLayerImpl.h: Added.
+ (WebCore):
+ (CCScrollbarLayerImpl):
+ (WebCore::CCScrollbarLayerImpl::setScrollbarOverlayStyle):
+ (WebCore::CCScrollbarLayerImpl::setTickmarks):
+ (WebCore::CCScrollbarLayerImpl::setIsScrollableAreaActive):
+ (WebCore::CCScrollbarLayerImpl::setIsScrollViewScrollbar):
+ (WebCore::CCScrollbarLayerImpl::setOrientation):
+ (WebCore::CCScrollbarLayerImpl::setControlSize):
+ (WebCore::CCScrollbarLayerImpl::setPressedPart):
+ (WebCore::CCScrollbarLayerImpl::setHoveredPart):
+ (WebCore::CCScrollbarLayerImpl::setEnabled):
+ (WebCore::CCScrollbarLayerImpl::scrollLayer):
+ (WebCore::CCScrollbarLayerImpl::setScrollLayer):
+ (CCScrollbar):
+ (WebCore::CCScrollbarLayerImpl::CCScrollbar::CCScrollbar):
+
+2012-03-09 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Split the extra logical height distribution logic out of RenderTableSection::layoutRows
+ https://bugs.webkit.org/show_bug.cgi?id=80671
+
+ Reviewed by Adrienne Walker.
+
+ Refactoring only, no change in behavior expected.
+
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::layoutRows):
+ Split the logic from here...
+
+ (WebCore::RenderTableSection::distributeExtraLogicalHeightToPercentRows):
+ (WebCore::RenderTableSection::distributeExtraLogicalHeightToAutoRows):
+ (WebCore::RenderTableSection::distributeRemainingExtraLogicalHeight):
+ (WebCore::RenderTableSection::distributeExtraLogicalHeightToRows):
+ ... to those functions. Cleaned up the variable naming while at it and
+ made them follow the same signature as this may be useful to fix another
+ bug I have.
+
+ * rendering/RenderTableSection.h:
+ (RenderTableSection):
+ Added the previous 4 new functions.
+
+2012-03-09 Rob Buis <rbuis@rim.com>
+
+ Remove unused file FrameBlackBerry.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=80731
+
+ Reviewed by Antonio Gomes.
+
+ This is not needed anymore since there is an implementation elsewhere.
+
+ * PlatformBlackBerry.cmake:
+ * page/blackberry/FrameBlackBerry.cpp: Removed.
+
+2012-03-09 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r110309.
+ http://trac.webkit.org/changeset/110309
+ https://bugs.webkit.org/show_bug.cgi?id=80732
+
+ Seems to have caused a number of SVG crashes (thorton will
+ investigate further) (Requested by abarth|gardener on
+ #webkit).
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::FrameView):
+ (WebCore::FrameView::reset):
+ (WebCore::FrameView::repaintContentRectangle):
+ (WebCore::FrameView::deferredRepaintTimerFired):
+ * page/FrameView.h:
+ (FrameView):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::shouldRepaint):
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImage::drawSVGToImageBuffer):
+ (WebCore::SVGImage::draw):
+ * svg/graphics/SVGImage.h:
+ * svg/graphics/SVGImageCache.cpp:
+ (WebCore::SVGImageCache::imageContentChanged):
+ (WebCore::SVGImageCache::redrawTimerFired):
+ * svg/graphics/SVGImageCache.h:
+ (SVGImageCache):
+
+2012-03-09 Ken Buchanan <kenrb@chromium.org>
+
+ Crash due to inserting letter into div with first-letter
+ https://bugs.webkit.org/show_bug.cgi?id=78534
+
+ Reviewed by David Hyatt.
+
+ This fixes an issue in RenderTextFragment with setTextInternal
+ getting called with different intents. While most calls to it
+ are intended to change the underlying DOM node string, it can
+ also be called as a result of styleDidChange just for transforms
+ on the substring text fragment. This adds a mechanism for internal
+ callers to specify if the internal text is being updated without
+ a DOM node text change.
+
+ * rendering/RenderTextFragment.cpp:
+ (WebCore::RenderTextFragment::styleDidChange)
+ (WebCore::RenderTextFragment::setTextInternal)
+ * rendering/RenderTextFragment.h:
+ (WebCore::RenderTextFragment)
+
+2012-03-09 Chris Rogers <crogers@google.com>
+
+ Fix uninitialized variable in DynamicsCompressor
+ https://bugs.webkit.org/show_bug.cgi?id=80724
+
+ Reviewed by James Robinson.
+
+ * platform/audio/DynamicsCompressor.cpp:
+ (WebCore::DynamicsCompressor::DynamicsCompressor):
+
+2012-03-09 Erik Arvidsson <arv@chromium.org>
+
+ [V8] Undo text position adjustment for attribute event handlers
+ https://bugs.webkit.org/show_bug.cgi?id=80725
+
+ Reviewed by Adam Barth.
+
+ No new tests. Needs rebaseline.
+
+ * bindings/v8/V8LazyEventListener.cpp:
+ (WebCore::V8LazyEventListener::prepareListenerObject):
+
+2012-03-09 Tom Sepez <tsepez@chromium.org>
+
+ Hold cached images with a CachedResourceHandle rather than a raw pointer for CSSCrossfadeValue
+ https://bugs.webkit.org/show_bug.cgi?id=80186
+
+ Reviewed by Simon Fraser.
+
+ Test: http/tests/css/cross-fade-reload.html
+
+ * css/CSSCrossfadeValue.h:
+ (CSSCrossfadeValue):
+
+2012-03-09 Abhishek Arya <inferno@chromium.org>
+
+ Crash when splitting an anonymous block in multi-column layout.
+ https://bugs.webkit.org/show_bug.cgi?id=80432
+
+ Reviewed by David Hyatt.
+
+ Calculating currChild->nextSibling() is risky after destroying :after content
+ because it can blow away currChild if it is a left over empty anonymous block.
+ We need to calculate next sibling upfront, using the same trick, we do in
+ RenderBlock::addChildIgnoringAnonymousColumnBlock to reset beforeChild (check
+ out the line before splitFlow call).
+
+ Test: fast/multicol/anonymous-block-split-crash.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::splitBlocks):
+
+2012-03-09 Abhishek Arya <inferno@chromium.org>
+
+ Crash due to accessing removed parent lineboxes when clearing selection.
+ https://bugs.webkit.org/show_bug.cgi?id=79264
+
+ Reviewed by Dave Hyatt.
+
+ Test: editing/selection/first-letter-selection-crash.html
+
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::setSelectionState):
+ 1. No need of checking if we are being set to same selection state.
+ Now tested by setSelectionStateIfNeeded. Rename 's' with 'state' and
+ 'cb' with 'containingBlock'.
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::setSelectionState):
+ 1. Add check to canUpdateSelectionOnRootLineBoxes to make sure our
+ root line boxes are still valid before setting them.
+ 2. No need of calling setSelectionState on containing block since our base
+ class call to RenderBox::setSelectionState covers it. Added a comment to indicate that.
+ 3. Use m_inlineBoxWrapper variable directly to simplify the ifs.
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::canUpdateSelectionOnRootLineBoxes):
+ (WebCore): helper function to tell if we can update selection information
+ on our root line boxes. This returns false if our containing block is pending layout.
+ * rendering/RenderObject.h:
+ (RenderObject):
+ (WebCore::RenderObject::setSelectionStateIfNeeded):
+ (WebCore): helper to set selection state only if it is different from our
+ current selection state.
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::setSelectionState):
+ 1. Rename 's' to 'state', 'line' to 'root' and use m_inlineBoxWrapper directly
+ to simplify ifs.
+ 2. Add check to canUpdateSelectionOnRootLineBoxes to make sure our
+ root line boxes are still valid before setting them.
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::setSelectionState):
+ 1. Add check to canUpdateSelectionOnRootLineBoxes to make sure our
+ root line boxes are still valid before setting them.
+ 2. Rename 'cb' to 'containingBlock', 'line' to 'root', move InlineTextBox
+ declaration to local.
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::setSelection): Replace all calls to setSelectionState
+ with setSelectionStateIfNeeded.
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::setSelectionState):
+ 1. No need of checking if we are being set to same selection state.
+ Now tested by setSelectionStateIfNeeded.
+
+2012-03-09 Levi Weintraub <leviw@chromium.org>
+
+ Move TransformationMatrix and TransformState to LayoutUnits.
+ https://bugs.webkit.org/show_bug.cgi?id=80632
+
+ Reviewed by Simon Fraser.
+
+ When we move layout to sub-pixel precision, we want to preserve that precision through
+ transformations. This change readies TransformState and TransformationMatrix to make
+ use of this additional precision in accumulating transforms, and in returning rects that
+ preserve it.
+
+ No new tests. No change in behavior.
+
+ * platform/graphics/transforms/TransformState.cpp:
+ (WebCore::TransformState::move): Changed to pass along LayoutUnits to the contained
+ TransformationMatrix. The values of the LayoutUnits will be implicitly converted to
+ floats to be applied.
+ * platform/graphics/transforms/TransformState.h:
+ (WebCore::TransformState::move): Ditto.
+ (TransformState):
+ * platform/graphics/transforms/TransformationMatrix.cpp:
+ (WebCore::clampEdgeValue): Limiting edges to the maximum LayoutUnit value to prevent
+ overflow..
+ (WebCore::TransformationMatrix::clampedBoundsOfProjectedQuad): Same as above, but also
+ returning a LayoutRect which preserves additional precision than the previous IntRect.
+ (WebCore::TransformationMatrix::mapRect): Adding a version of this method that operates
+ specifically on FractionalLayoutRects.
+ (WebCore):
+ * platform/graphics/transforms/TransformationMatrix.h:
+ (WebCore):
+ (TransformationMatrix):
+ * rendering/LayoutTypes.h:
+ (WebCore::clampToLayoutUnit):
+ (WebCore):
+
+2012-03-09 Ryosuke Niwa <rniwa@webkit.org>
+
+ Remove a bogus assertion. This condition is no longer true for non-document tree scopes.
+
+ * dom/TreeScope.cpp:
+ (WebCore::TreeScope::activeElement):
+
+2012-03-09 Ryosuke Niwa <rniwa@webkit.org>
+
+ Cleanup incDOMTreeVersion callers
+ https://bugs.webkit.org/show_bug.cgi?id=80452
+
+ Reviewed by Andreas Kling.
+
+ Unify various calls to incDOMTreeVersion and namely remove the call inside dispatchSubtreeModifiedEvent.
+ There should be no behavioral change and therefore there is no new test.
+
+ * dom/CharacterData.cpp:
+ (WebCore::CharacterData::parserAppendData):
+ (WebCore::CharacterData::setDataAndUpdate):
+ * dom/ContainerNode.cpp:
+ (WebCore::willRemoveChild):
+ (WebCore::willRemoveChildren):
+ (WebCore::ContainerNode::removeChild):
+ (WebCore::ContainerNode::removeChildren):
+ (WebCore::ContainerNode::childrenChanged):
+ (WebCore::notifyChildInserted):
+ * dom/Element.cpp:
+ (WebCore::Element::attributeChanged):
+ (WebCore::Element::parserSetAttributes):
+ (WebCore::Element::willModifyAttribute):
+ * dom/Node.cpp:
+ (WebCore::Node::dispatchSubtreeModifiedEvent):
+ * html/HTMLOutputElement.cpp:
+ (WebCore::HTMLOutputElement::childrenChanged):
+ * html/HTMLScriptElement.cpp:
+ (WebCore::HTMLScriptElement::childrenChanged):
+ * html/HTMLStyleElement.cpp:
+ (WebCore::HTMLStyleElement::childrenChanged):
+ * html/HTMLTextAreaElement.cpp:
+ (WebCore::HTMLTextAreaElement::childrenChanged):
+ * html/HTMLTitleElement.cpp:
+ (WebCore::HTMLTitleElement::childrenChanged):
+ * svg/SVGScriptElement.cpp:
+ (WebCore::SVGScriptElement::childrenChanged):
+ * svg/SVGStyleElement.cpp:
+ (WebCore::SVGStyleElement::childrenChanged):
+
+2012-03-09 Patrick Gansterer <paroga@webkit.org>
+
+ Build fix for !ENABLE(FILTERS) after r110285.
+
+ * rendering/svg/SVGRenderingContext.h:
+ (WebCore::SVGRenderingContext::SVGRenderingContext):
+
+2012-03-09 Dana Jansens <danakj@chromium.org>
+
+ [chromium] Use opaque paints in CCOcclusionTracker
+ https://bugs.webkit.org/show_bug.cgi?id=80173
+
+ Reviewed by Adrienne Walker.
+
+ Use tracked opaque paints in the tiles when tracking occlusion in
+ CCOcclusionTracker. Moves the Tile::m_opaqueRect up to the super-
+ class in CCLayerTilingData rather than having it declared in both
+ TiledLayerChromium and CCTiledLayerImpl. This lets the CCLayerTilingData
+ class compute the opaque region for its tiles, sharing code between the
+ two tiled layer implementations.
+
+ Use of this feature is guarded behind a runtime flag and turned off for
+ paint culling. We will enable it in the future once we're comfortable
+ with the paint culling.
+
+ Unit test: CCOcclusionTrackerTest.opaqueContentsRegionEmpty
+ CCOcclusionTrackerTest.opaqueContentsRegionNonEmpty
+ TiledLayerChromiumTest.opaqueContentsRegion
+
+ All existing CCOcclusionTrackerTest.* duplicated with opaque painted
+ rects.
+
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::opaqueContentsRegion):
+ (LayerChromium):
+ * platform/graphics/chromium/TiledLayerChromium.cpp:
+ (UpdatableTile):
+ (WebCore::TiledLayerChromium::pushPropertiesTo):
+ (WebCore::TiledLayerChromium::prepareToUpdateTiles):
+ (WebCore::TiledLayerChromium::addSelfToOccludedScreenSpace):
+ (WebCore::TiledLayerChromium::opaqueContentsRegion):
+ (WebCore):
+ * platform/graphics/chromium/TiledLayerChromium.h:
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (WebCore::CCLayerImpl::opaqueContentsRegion):
+ (CCLayerImpl):
+ * platform/graphics/chromium/cc/CCLayerTilingData.cpp:
+ (WebCore::CCLayerTilingData::opaqueRegionInLayerRect):
+ (WebCore):
+ * platform/graphics/chromium/cc/CCLayerTilingData.h:
+ (WebCore):
+ (Tile):
+ (WebCore::CCLayerTilingData::Tile::opaqueRect):
+ (WebCore::CCLayerTilingData::Tile::setOpaqueRect):
+ (CCLayerTilingData):
+ * platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
+ (WebCore::::CCOcclusionTrackerBase):
+ (WebCore::computeOcclusionBehindLayer):
+ (WebCore::::markOccludedBehindLayer):
+ * platform/graphics/chromium/cc/CCOcclusionTracker.h:
+ (CCOcclusionTrackerBase):
+ (WebCore::CCOcclusionTrackerBase::setUsePaintTracking):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
+ (DrawableTile):
+ (WebCore::CCTiledLayerImpl::opaqueContentsRegion):
+ (WebCore):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
+ (CCTiledLayerImpl):
+
+2012-03-09 Antti Koivisto <antti@apple.com>
+
+ Presentation attribute cache
+ https://bugs.webkit.org/show_bug.cgi?id=80707
+
+ Reviewed by Andreas Kling.
+
+ It is common for the same presentation attribute values repeat. We should introduce a cache that uses
+ presentation attribute names and values as key. This will help to avoid repeated parsing of the
+ same attribute values, reduce memory consumption and speed up the style resolve.
+
+ This patch introduces a simple and small (128 entries) global cache. In general web browsing it seems
+ to give sharing rate of >75% (an average presentation attribute property set is shared between >4 elements).
+
+ * dom/StyledElement.cpp:
+ (WebCore::PresentationAttributeCacheKey::PresentationAttributeCacheKey):
+ (PresentationAttributeCacheKey):
+ (WebCore):
+ (WebCore::operator!=):
+ (PresentationAttributeCacheEntry):
+ (WebCore::presentationAttributeCache):
+ (WebCore::attributeNameSort):
+ (WebCore::StyledElement::makePresentationAttributeCacheKey):
+ (WebCore::computePresentationAttributeCacheHash):
+ (WebCore::StyledElement::updateAttributeStyle):
+ * dom/StyledElement.h:
+ (WebCore):
+ (StyledElement):
+
+2012-03-08 Erik Arvidsson <arv@chromium.org>
+
+ [V8] Fix object scope for inline event attribute handlers
+ https://bugs.webkit.org/show_bug.cgi?id=80329
+
+ Reviewed by Ojan Vafai.
+
+ We now create the funciton inside the with-statements with the current scope objects.
+ This is important for a few reasons:
+
+ - We need to use the real objects and not just lookup the JS properties because these might have been overridden.
+ - We need to use the node, form and document at the time of the preparation and not at the time of calling.
+ - We need to ensure that event/evt is bound closer than a property with the same name in the object environment
+ created by the with-statements.
+
+ Tests: fast/dom/inline-event-attributes-lookup-removed-form.html
+ fast/dom/inline-event-attributes-lookup-removed.html
+ fast/dom/inline-event-attributes-lookup.html
+
+ * bindings/v8/ScriptEventListener.cpp:
+ (WebCore::eventParameterName):
+ (WebCore):
+ (WebCore::createAttributeEventListener):
+ * bindings/v8/V8LazyEventListener.cpp:
+ (WebCore::V8LazyEventListener::V8LazyEventListener):
+ (WebCore):
+ (WebCore::toObjectWrapper):
+ (WebCore::V8LazyEventListener::callListenerFunction):
+ (WebCore::V8LazyEventListener::prepareListenerObject):
+ * bindings/v8/V8LazyEventListener.h:
+ (WebCore):
+ (WebCore::V8LazyEventListener::create):
+ (V8LazyEventListener):
+
+2012-03-09 Stephen Chenney <schenney@chromium.org>
+
+ Crash in WebCore::SVGUseElement::instanceForShadowTreeElement
+ https://bugs.webkit.org/show_bug.cgi?id=80406
+
+ Reviewed by Nikolas Zimmermann.
+
+ Code assumes that an object that is an SVG Element and in a shadow
+ tree must be in an SVG use shadow tree, and casts the shadow host with
+ a static_cast. It may be that an SVG element appears in a non-use
+ shadow tree, in which case bad things happen. While it appears that
+ the current code prevents such a situation from arising (checks are
+ made within the shadow tree code to prevent it) there are also
+ indications that the situation may change.
+
+ No new tests. I believe that the problem here cannot currently be
+ reproduced. That is, other code prevents SVG elements from appearing
+ in non-svg shadow trees.
+
+ * dom/EventDispatcher.cpp:
+ (WebCore::eventTargetRespectingSVGTargetRules):
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::title):
+
+2012-03-09 Jon Lee <jonlee@apple.com>
+
+ Add support for ENABLE(LEGACY_NOTIFICATIONS)
+ https://bugs.webkit.org/show_bug.cgi?id=80497
+
+ Reviewed by Adam Barth.
+
+ Prep for b80472: Update API for Web Notifications
+ * Configurations/FeatureDefines.xcconfig:
+ * GNUmakefile.am:
+
+2012-03-09 Kaustubh Atrawalkar <kaustubh@motorola.com>
+
+ ShadowRoot should implement activeElement.
+ https://bugs.webkit.org/show_bug.cgi?id=79886
+
+ Reviewed by Ryosuke Niwa.
+
+ Implement the activeElement attribute for ShadowRoot to return the
+ currently focused element in the shadow DOM subtree.
+
+ Test: fast/dom/shadow/shadow-root-activeElement.html
+
+ * dom/ShadowRoot.cpp:
+ (WebCore::ShadowRoot::activeElement):
+ (WebCore):
+ * dom/ShadowRoot.h:
+ (ShadowRoot):
+ * dom/ShadowRoot.idl:
+ * dom/TreeScope.cpp:
+ (WebCore::TreeScope::adoptIfNeeded):
+ (WebCore):
+ (WebCore::focusedFrameOwnerElement):
+ (WebCore::TreeScope::activeElement):
+ * dom/TreeScope.h:
+ (TreeScope):
+ * html/HTMLDocument.cpp:
+ (WebCore):
+ (WebCore::HTMLDocument::activeElement):
+
+2012-03-09 Tim Horton <timothy_horton@apple.com>
+
+ Infinite repaint loop with SVGImageCache and deferred repaint timers
+ https://bugs.webkit.org/show_bug.cgi?id=78315
+ <rdar://problem/10651634>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Only defer image redraw on a timer if we're in layout. This breaks
+ the repaint loop while still preventing us from drawing inside layout.
+
+ Completely disable repaint during relayout inside SVGImage::drawSVGToImageBuffer,
+ preventing deferred repaint timers from being started during that process.
+
+ No new tests, as the problem only occurs in a nonstandard configuration.
+
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImage::draw):
+ (WebCore::SVGImage::frameView):
+ (WebCore):
+ * svg/graphics/SVGImage.h:
+ (WebCore):
+ * svg/graphics/SVGImageCache.cpp:
+ (WebCore::SVGImageCache::imageContentChanged):
+ (WebCore::SVGImageCache::redraw):
+ (WebCore::SVGImageCache::redrawTimerFired):
+ (WebCore):
+ * svg/graphics/SVGImageCache.h:
+ (SVGImageCache):
+
+2012-03-09 Victor Carbune <vcarbune@adobe.com>
+
+ The method TextTrackCue::getCueAsHTML() should return different
+ fragments on different calls.
+
+ https://bugs.webkit.org/show_bug.cgi?id=80701
+
+ Reviewed by Eric Carlson.
+
+ Test: media/track/track-cue-mutable-fragment.html
+
+ * html/track/TextTrackCue.cpp: Removed setCueHTML(), since it is sufficient
+ to create apply the DOM rules only when the fragment is first requested.
+ (WebCore::TextTrackCue::getCueAsHTML): Changed the method such that a
+ a clone of the cached document fragment is returned.
+ * html/track/TextTrackCue.h: Removed setCueHTML() as the document fragment
+ of the cue should be created only within the class, from the cue text.
+ (TextTrackCue):
+ * html/track/WebVTTParser.cpp:
+ (WebCore::WebVTTParser::createNewCue): removed usage of setCueHTML()
+
+2012-03-09 Tim Horton <timothy_horton@apple.com>
+
+ Crash in SVGTextLayoutAttributesBuilder::fillCharacterDataMap
+ https://bugs.webkit.org/show_bug.cgi?id=78949
+ <rdar://problem/10889440>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Invalidate the text positioning cache when the children of an SVGAElement change,
+ so that we regenerate the list the next time it's needed instead of using stale values.
+
+ Test: svg/text/text-positioning-remove-child-crash.svg
+
+ * rendering/svg/SVGAElement.cpp:
+ (WebCore::SVGAElement::childrenChanged):
+
+2012-03-09 Ashod Nakashian <ashodnakashian@yahoo.com>
+
+ Bash scripts should support LF endings only
+ https://bugs.webkit.org/show_bug.cgi?id=79509
+
+ Reviewed by David Kilzer.
+
+ * WebCore.gyp/mac/adjust_visibility.sh: Added property svn:eol-style.
+ * WebCore.vcproj/build-generated-files.sh: Added property svn:executable.
+ * WebCore.vcproj/migrate-scripts.sh: Added property svn:executable.
+ * gyp/copy-forwarding-and-icu-headers.sh: Added property svn:eol-style.
+ * gyp/copy-inspector-resources.sh: Added property svn:eol-style.
+ * gyp/generate-derived-sources.sh: Added property svn:eol-style.
+ * gyp/generate-webcore-export-file-generator.sh: Added property svn:eol-style.
+ * gyp/run-if-exists.sh: Added property svn:eol-style.
+ * gyp/streamline-inspector-source.sh: Added property svn:eol-style.
+ * gyp/update-info-plist.sh: Added property svn:eol-style.
+
+2012-03-09 Andreas Kling <awesomekling@apple.com>
+
+ CSSParser: Use Vector for intermediate property storage.
+ <http://webkit.org/b/80653>
+
+ Reviewed by Antti Koivisto.
+
+ Remove the custom memory management for intermediate CSSProperties in CSSParser
+ and replace it by a Vector<CSSProperty, 256>.
+ This avoids heap allocations and removes a bunch of unnecessary complexity.
+
+ Remove WTF_MAKE_FAST_ALLOCATED from CSSProperty since they are only created on
+ the stack now.
+
+ * css/CSSGrammar.y:
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::CSSParser):
+ (WebCore::CSSParser::~CSSParser):
+ (WebCore::CSSParser::parseValue):
+ (WebCore::CSSParser::parseColor):
+ (WebCore::CSSParser::parseDeclaration):
+ (WebCore::CSSParser::addProperty):
+ (WebCore::CSSParser::rollbackLastProperties):
+ (WebCore::CSSParser::clearProperties):
+ (WebCore::CSSParser::parse4Values):
+ (WebCore::CSSParser::parseFlowThread):
+ (WebCore::CSSParser::createStyleRule):
+ (WebCore::CSSParser::createFontFaceRule):
+ (WebCore::CSSParser::createPageRule):
+ (WebCore::CSSParser::createMarginAtRule):
+ (WebCore::CSSParser::startDeclarationsForMarginBox):
+ (WebCore::CSSParser::endDeclarationsForMarginBox):
+ (WebCore::CSSParser::deleteFontFaceOnlyValues):
+ (WebCore::CSSParser::createKeyframeRule):
+ * css/CSSParser.h:
+ (WebCore::CSSParser::hasProperties):
+ (CSSParser):
+ * css/CSSProperty.h:
+ * css/SVGCSSParser.cpp:
+ (WebCore::CSSParser::parseSVGValue):
+ * css/StylePropertySet.cpp:
+ (WebCore::StylePropertySet::StylePropertySet):
+ (WebCore::StylePropertySet::addParsedProperties):
+ * css/StylePropertySet.h:
+ (WebCore::StylePropertySet::create):
+ (StylePropertySet):
+
+2012-03-09 Nate Chapin <japhet@chromium.org>
+
+ CachedRawResource breaks when trying to load
+ a resource with an empty response body from cache.
+
+ Reviewed by Alexey Proskuryakov.
+
+ Test: http/tests/cache/zero-length-xhr.html
+
+ * loader/cache/CachedRawResource.cpp:
+ (WebCore::CachedRawResource::didAddClient): Don't exit early
+ if m_data is empty, we may still need to notifyFinished().
+
+2012-03-09 Robin Cao <robin.cao@torchmobile.com.cn>
+
+ [BlackBerry] Upstream classes that handle layer tiling
+ https://bugs.webkit.org/show_bug.cgi?id=79875
+
+ Reviewed by Rob Buis.
+
+ Initial upstreaming, no new tests.
+
+ * platform/graphics/blackberry/LayerTile.cpp: Added.
+ (WebCore):
+ (WebCore::LayerTile::LayerTile):
+ (WebCore::LayerTile::~LayerTile):
+ (WebCore::LayerTile::setContents):
+ (WebCore::LayerTile::setContentsToColor):
+ (WebCore::LayerTile::updateContents):
+ (WebCore::LayerTile::discardContents):
+ (WebCore::LayerTile::setVisible):
+ (WebCore::LayerTile::setTexture):
+ * platform/graphics/blackberry/LayerTile.h: Added.
+ (WebCore):
+ (LayerTileData):
+ (WebCore::LayerTileData::LayerTileData):
+ (WebCore::LayerTileData::isVisible):
+ (LayerTile):
+ (WebCore::LayerTile::texture):
+ (WebCore::LayerTile::isVisible):
+ (WebCore::LayerTile::isDirty):
+ (WebCore::LayerTile::hasTexture):
+ (WebCore::LayerTile::setContentsDirty):
+ * platform/graphics/blackberry/LayerTileIndex.h: Added.
+ (WebCore):
+ (TileIndex):
+ (WebCore::TileIndex::TileIndex):
+ (WebCore::TileIndex::~TileIndex):
+ (WebCore::TileIndex::i):
+ (WebCore::TileIndex::j):
+ (WebCore::TileIndex::setIndex):
+ (WebCore::operator==):
+ (WebCore::operator!=):
+ (WTF):
+ * platform/graphics/blackberry/LayerTiler.cpp: Added.
+ (WebCore):
+ (WebCore::transformPoint):
+ (WebCore::defaultTileSize):
+ (WebCore::LayerTiler::LayerTiler):
+ (WebCore::LayerTiler::~LayerTiler):
+ (WebCore::LayerTiler::layerWebKitThreadDestroyed):
+ (WebCore::LayerTiler::layerCompositingThreadDestroyed):
+ (WebCore::LayerTiler::setNeedsDisplay):
+ (WebCore::LayerTiler::updateTextureContentsIfNeeded):
+ (WebCore::LayerTiler::shouldPerformRenderJob):
+ (WebCore::LayerTiler::addTextureJob):
+ (WebCore::LayerTiler::clearTextureJobs):
+ (WebCore::LayerTiler::commitPendingTextureUploads):
+ (WebCore::LayerTiler::layerVisibilityChanged):
+ (WebCore::LayerTiler::uploadTexturesIfNeeded):
+ (WebCore::LayerTiler::processTextureJob):
+ (WebCore::LayerTiler::addTileJob):
+ (WebCore::LayerTiler::performTileJob):
+ (WebCore::LayerTiler::drawTextures):
+ (WebCore::LayerTiler::drawMissingTextures):
+ (WebCore::LayerTiler::drawTexturesInternal):
+ (WebCore::LayerTiler::addRenderJob):
+ (WebCore::LayerTiler::removeRenderJob):
+ (WebCore::LayerTiler::deleteTextures):
+ (WebCore::LayerTiler::pruneTextures):
+ (WebCore::LayerTiler::updateTileSize):
+ (WebCore::LayerTiler::disableTiling):
+ (WebCore::LayerTiler::shouldPrefillTile):
+ (WebCore::LayerTiler::indexOfTile):
+ (WebCore::LayerTiler::originOfTile):
+ (WebCore::LayerTiler::rectForTile):
+ (WebCore::LayerTiler::hasDirtyTiles):
+ (WebCore::LayerTiler::bindContentsTexture):
+ * platform/graphics/blackberry/LayerTiler.h: Added.
+ (WebCore):
+ (LayerTiler):
+ (WebCore::LayerTiler::create):
+ (WebCore::LayerTiler::layer):
+ (WebCore::LayerTiler::hasMissingTextures):
+ (WebCore::LayerTiler::TextureJob::TextureJob):
+ (TextureJob):
+ (WebCore::LayerTiler::TextureJob::setContents):
+ (WebCore::LayerTiler::TextureJob::setContentsToColor):
+ (WebCore::LayerTiler::TextureJob::updateContents):
+ (WebCore::LayerTiler::TextureJob::discardContents):
+ (WebCore::LayerTiler::TextureJob::resizeContents):
+ (WebCore::LayerTiler::TextureJob::dirtyContents):
+ (WebCore::LayerTiler::TextureJob::isNull):
+ (WebCore::LayerTiler::tileSize):
+ (WebCore::LayerTiler::removeUpdateContentsJobs):
+
+2012-03-09 Ian Vollick <vollick@chromium.org>
+
+ [chromium] Ensure we use the correct time when notifying animation started
+ https://bugs.webkit.org/show_bug.cgi?id=79537
+
+ Reviewed by James Robinson
+
+ Tested in CCLayerTreeHostTestAddAnimation
+
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::setAnimationEvent):
+ * platform/graphics/chromium/LayerChromium.h:
+ (LayerChromium):
+ * platform/graphics/chromium/cc/CCAnimationEvents.cpp:
+ (WebCore::CCAnimationStartedEvent::create):
+ (WebCore::CCAnimationStartedEvent::CCAnimationStartedEvent):
+ * platform/graphics/chromium/cc/CCAnimationEvents.h:
+ (CCAnimationEvent):
+ (CCAnimationStartedEvent):
+ * platform/graphics/chromium/cc/CCInputHandler.h:
+ (CCInputHandler):
+ * platform/graphics/chromium/cc/CCLayerAnimationControllerImpl.cpp:
+ (WebCore::CCLayerAnimationControllerImpl::animate):
+ (WebCore::CCLayerAnimationControllerImpl::startAnimationsWaitingForNextTick):
+ (WebCore::CCLayerAnimationControllerImpl::startAnimationsWaitingForStartTime):
+ (WebCore::CCLayerAnimationControllerImpl::startAnimationsWaitingForTargetAvailability):
+ (WebCore::CCLayerAnimationControllerImpl::resolveConflicts):
+ (WebCore::CCLayerAnimationControllerImpl::tickAnimations):
+ * platform/graphics/chromium/cc/CCLayerAnimationControllerImpl.h:
+ (CCLayerAnimationControllerImpl):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::setAnimationEvents):
+ (WebCore::CCLayerTreeHost::setAnimationEventsRecursive):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ (CCLayerTreeHost):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::animate):
+ (WebCore::CCLayerTreeHostImpl::startPageScaleAnimation):
+ (WebCore::CCLayerTreeHostImpl::animateLayersRecursive):
+ (WebCore::CCLayerTreeHostImpl::animatePageScale):
+ (WebCore::CCLayerTreeHostImpl::animateLayers):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
+ (CCLayerTreeHostImplClient):
+ (CCLayerTreeHostImpl):
+ * platform/graphics/chromium/cc/CCPageScaleAnimation.cpp:
+ (WebCore::CCPageScaleAnimation::create):
+ (WebCore::CCPageScaleAnimation::CCPageScaleAnimation):
+ (WebCore::CCPageScaleAnimation::zoomTo):
+ (WebCore::CCPageScaleAnimation::zoomWithAnchor):
+ (WebCore::CCPageScaleAnimation::scrollOffsetAtTime):
+ (WebCore::CCPageScaleAnimation::pageScaleAtTime):
+ (WebCore::CCPageScaleAnimation::isAnimationCompleteAtTime):
+ (WebCore::CCPageScaleAnimation::progressRatioForTime):
+ * platform/graphics/chromium/cc/CCPageScaleAnimation.h:
+ (CCPageScaleAnimation):
+ (WebCore::CCPageScaleAnimation::startTime):
+ (WebCore::CCPageScaleAnimation::duration):
+ (WebCore::CCPageScaleAnimation::endTime):
+ * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
+ (WebCore::CCSingleThreadProxy::startPageScaleAnimation):
+ (WebCore::CCSingleThreadProxy::postAnimationEventsToMainThreadOnImplThread):
+ (WebCore::CCSingleThreadProxy::doComposite):
+ * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
+ (CCSingleThreadProxy):
+ * platform/graphics/chromium/cc/CCThreadProxy.cpp:
+ (WebCore::CCThreadProxy::startPageScaleAnimation):
+ (WebCore::CCThreadProxy::requestStartPageScaleAnimationOnImplThread):
+ (WebCore::CCThreadProxy::postAnimationEventsToMainThreadOnImplThread):
+ (WebCore::CCThreadProxy::scheduledActionDrawAndSwap):
+ (WebCore::CCThreadProxy::setAnimationEvents):
+ * platform/graphics/chromium/cc/CCThreadProxy.h:
+ (CCThreadProxy):
+
+2012-03-09 Zoltan Herczeg <zherczeg@webkit.org>
+
+ Add SVGRenderingContext and move there the context related code from SVGRenderSupport
+ https://bugs.webkit.org/show_bug.cgi?id=80413
+
+ Reviewed by Nikolas Zimmermann.
+
+ This is the first step of refactoring the rendering context for SVG. The
+ previous context was stateless before, which means the cleanup phase
+ needed to do a lot of checks to revert the initialization part and
+ was unaware of failed inititalization. Future code can also add
+ new local variables to the context.
+
+ This patch add a new SVGRenderingContext class, and moves there the context
+ initialization / cleanup code from SVGRenderSupport. All build systems were
+ updated.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * Target.pri:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * rendering/svg/RenderSVGAllInOne.cpp:
+ * rendering/svg/RenderSVGContainer.cpp:
+ (WebCore::RenderSVGContainer::paint):
+ * rendering/svg/RenderSVGForeignObject.cpp:
+ (WebCore::RenderSVGForeignObject::paint):
+ * rendering/svg/RenderSVGImage.cpp:
+ (WebCore::RenderSVGImage::paint):
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::paintReplaced):
+ * rendering/svg/RenderSVGShape.cpp:
+ (WebCore::RenderSVGShape::paint):
+ * rendering/svg/SVGInlineFlowBox.cpp:
+ (WebCore::SVGInlineFlowBox::paint):
+ * rendering/svg/SVGRenderSupport.cpp:
+ * rendering/svg/SVGRenderSupport.h:
+ * rendering/svg/SVGRenderingContext.cpp: Added.
+ (WebCore):
+ (WebCore::isRenderingMaskImage):
+ (WebCore::SVGRenderingContext::~SVGRenderingContext):
+ (WebCore::SVGRenderingContext::prepareToRenderSVGContent):
+ * rendering/svg/SVGRenderingContext.h: Added.
+ (WebCore):
+ (SVGRenderingContext):
+ (WebCore::SVGRenderingContext::SVGRenderingContext):
+ (WebCore::SVGRenderingContext::isRenderingPrepared):
+ * rendering/svg/SVGRootInlineBox.cpp:
+ (WebCore::SVGRootInlineBox::paint):
+
+2012-03-09 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r110191, r110202, and r110279.
+ http://trac.webkit.org/changeset/110191
+ http://trac.webkit.org/changeset/110202
+ http://trac.webkit.org/changeset/110279
+ https://bugs.webkit.org/show_bug.cgi?id=80694
+
+ They broke !ENABLE(INSPECTOR) builds (Requested by Ossy on
+ #webkit).
+
+ * WebCore.exp.in:
+ * testing/Internals.cpp:
+ * testing/Internals.h:
+ (WebCore):
+ (Internals):
+ * testing/Internals.idl:
+
+2012-03-09 Hans Wennborg <hans@chromium.org>
+
+ Speech JavaScript API: add SpeechGrammar and SpeechGrammarList
+ https://bugs.webkit.org/show_bug.cgi?id=80417
+
+ Reviewed by Adam Barth.
+
+ Implement SpeechGrammar and SpeechGrammarList.
+ (Spec: http://speech-javascript-api-spec.googlecode.com/git/speechapi.html)
+
+ Test: fast/speech/scripted/speechgrammar-basics.html
+
+ * Modules/speech/DOMWindowSpeech.idl:
+ * Modules/speech/SpeechGrammar.cpp:
+ (WebCore):
+ (WebCore::SpeechGrammar::create):
+ (WebCore::SpeechGrammar::SpeechGrammar):
+ * Modules/speech/SpeechGrammar.h:
+ (WebCore):
+ (SpeechGrammar):
+ (WebCore::SpeechGrammar::src):
+ (WebCore::SpeechGrammar::setSrc):
+ (WebCore::SpeechGrammar::weight):
+ (WebCore::SpeechGrammar::setWeight):
+ * Modules/speech/SpeechGrammar.idl:
+ * Modules/speech/SpeechGrammarList.cpp:
+ (WebCore):
+ (WebCore::SpeechGrammarList::create):
+ (WebCore::SpeechGrammarList::item):
+ (WebCore::SpeechGrammarList::addFromUri):
+ (WebCore::SpeechGrammarList::addFromString):
+ (WebCore::SpeechGrammarList::SpeechGrammarList):
+ * Modules/speech/SpeechGrammarList.h:
+ (WebCore):
+ (SpeechGrammarList):
+ (WebCore::SpeechGrammarList::length):
+ * Modules/speech/SpeechGrammarList.idl:
+ * WebCore.gypi:
+
+2012-03-09 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r110269.
+ http://trac.webkit.org/changeset/110269
+ https://bugs.webkit.org/show_bug.cgi?id=80688
+
+ It made inspector/elements/highlight-node.html fail everywhere
+ (Requested by Ossy on #webkit).
+
+ * testing/Internals.idl:
+
+2012-03-07 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: [Styles] Click in the first line of rule while editing property starts a new property
+ https://bugs.webkit.org/show_bug.cgi?id=80507
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertiesSection):
+ (WebInspector.StylePropertiesSection.prototype._checkWillCancelEditing):
+ (WebInspector.StylePropertiesSection.prototype._handleSelectorContainerClick):
+ (WebInspector.StylePropertiesSection.prototype._handleEmptySpaceClick):
+ (WebInspector.StylePropertyTreeElement.prototype.onattach):
+ (WebInspector.StylePropertyTreeElement.prototype):
+
+2012-03-09 Mark Rowe <mrowe@apple.com>
+
+ <rdar://problem/11012024> Fix the build by working around <rdar://problem/10710970>.
+
+ * platform/mac/RunLoopMac.mm:
+ (WebCore::RunLoop::stop):
+
+2012-03-09 Marja Hölttä <marja@google.com>
+
+ FileInputType doesn't support (save|restore)FormControlState
+ https://bugs.webkit.org/show_bug.cgi?id=80145
+
+ Reviewed by Kent Tamura.
+
+ This enables saving and restoring the state of file upload elements in
+ unsubmitted forms.
+
+ Test: fast/forms/file/recover-file-input-in-unposted-form.html
+
+ * html/BaseCheckableInputType.cpp:
+ (WebCore::BaseCheckableInputType::restoreFormControlState): non-const
+ * html/BaseCheckableInputType.h:
+ (BaseCheckableInputType): restoreFormControlState non-const
+ * html/FileInputType.cpp:
+ (WebCore::FileInputType::saveFormControlState): save chosen files
+ (WebCore):
+ (WebCore::FileInputType::restoreFormControlState): restore chosen files
+ * html/FileInputType.h:
+ (FileInputType): overwrite (save|restore)FormControlState
+ * html/HiddenInputType.cpp:
+ (WebCore::HiddenInputType::restoreFormControlState): non-const
+ * html/HiddenInputType.h:
+ (HiddenInputType): restoreFormControlState non-const
+ * html/InputType.cpp:
+ (WebCore::InputType::restoreFormControlState): non-const
+ * html/InputType.h:
+ (InputType): restoreFormControlState non-const
+ * html/PasswordInputType.cpp:
+ (WebCore::PasswordInputType::restoreFormControlState): non-const
+ * html/PasswordInputType.h:
+ (PasswordInputType): restoreFormControlState non-const
+
+2012-03-08 Benjamin Poulain <bpoulain@apple.com>
+
+ Base the access to CSSStyleDeclaration on the CSSPropertyID instead of the PropertyName
+ https://bugs.webkit.org/show_bug.cgi?id=80461
+
+ Reviewed by Geoffrey Garen.
+
+ Previously, the acces to CSS Style properties was done through a NamedGetter. This caused
+ the (slow) mapping between CSSPropertyName and CSSPropertyID to be done twice for every acess:
+ 1) canGetItemsForName() prior to the definition of the slot.
+ 2) nameGetter() called from the slot with CSSPropertyName to get the actual value.
+
+ This patch changes the access to be based on CSSPropertyID. The slot is defined with the
+ CSSPropertyID as the customIndex, and the value can be accessed directly when the slot is
+ called.
+
+ To handle the differences create by hadPixelOrPosPrefix, two nearly identical callback are defined,
+ one for hadPixelOrPosPrefix, the other for !hadPixelOrPosPrefix.
+
+ The performance gain is about 19% when accessing CSS properties.
+
+ * bindings/js/JSCSSStyleDeclarationCustom.cpp:
+ (WebCore::getPropertyValueFallback):
+ (WebCore::cssPropertyGetterPixelOrPosPrefix):
+ (WebCore):
+ (WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
+ (WebCore::cssPropertyGetter):
+ (WebCore::cssPropertyGetterCallback):
+ (WebCore::JSCSSStyleDeclaration::getOwnPropertySlotDelegate):
+ (WebCore::JSCSSStyleDeclaration::getOwnPropertyDescriptorDelegate):
+ * css/CSSStyleDeclaration.idl:
+
+2012-03-08 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
+
+ [Qt] Fix Qt minimal build
+
+ * testing/Internals.idl:
+
+2012-03-08 James Robinson <jamesr@chromium.org>
+
+ [chromium] Remove dead CoreGraphics code from chromium compositor implementation
+ https://bugs.webkit.org/show_bug.cgi?id=80470
+
+ Reviewed by Adam Barth.
+
+ We haven't supported CoreGraphics as a raster backend in chromium for a few months and do not plan to do so, so
+ it's time to remove the USE(CG) #ifdefs from our compositor and just rely on USE(SKIA) being set. This also
+ slightly simplifies how PlatformCanvas works.
+
+ * platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.cpp:
+ * platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.h:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::createTextureUpdaterIfNeeded):
+ * platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:
+ (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):
+ * platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.h:
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ * platform/graphics/chromium/LayerChromium.cpp:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::initialize):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/PlatformCanvas.cpp:
+ (WebCore::PlatformCanvas::createBackingCanvas):
+ (WebCore::PlatformCanvas::AutoLocker::AutoLocker):
+ (WebCore::PlatformCanvas::AutoLocker::~AutoLocker):
+ (WebCore):
+ (WebCore::PlatformCanvas::AutoLocker::pixels):
+ (WebCore::PlatformCanvas::Painter::Painter):
+ * platform/graphics/chromium/PlatformCanvas.h:
+ (WebCore):
+ (AutoLocker):
+ (Painter):
+ (PlatformCanvas):
+ * platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.cpp:
+ * platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.h:
+
+2012-03-08 Ryosuke Niwa <rniwa@webkit.org>
+
+ Get rid of itemTypeAttributeChanged
+ https://bugs.webkit.org/show_bug.cgi?id=80666
+
+ Reviewed by Adam Barth.
+
+ This function is unnecessay as we can invalidate m_microDataItemListCaches
+ in invalidateCachesThatDependOnAttributes as done for other node lists.
+
+ * dom/Node.cpp:
+ (WebCore::Node::invalidateNodeListsCacheAfterAttributeChanged):
+ (WebCore::NodeListsNodeData::invalidateCachesThatDependOnAttributes):
+ * dom/Node.h:
+ * dom/NodeRareData.h:
+ (NodeListsNodeData):
+ * html/HTMLElement.cpp:
+ (WebCore::HTMLElement::parseAttribute):
+
+2012-03-08 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r108616.
+ http://trac.webkit.org/changeset/108616
+ https://bugs.webkit.org/show_bug.cgi?id=80676
+
+ breaks animation on Safari welcome page (Requested by smfr on
+ #webkit).
+
+ * page/animation/AnimationController.cpp:
+ (WebCore::AnimationController::updateAnimations):
+ * page/animation/AnimationControllerPrivate.h:
+ (AnimationControllerPrivate):
+
+2012-03-08 Benjamin Poulain <benjamin@webkit.org>
+
+ Fix the build of WebKit with WTFURL following the removal of ForwardingHeaders/wtf
+ https://bugs.webkit.org/show_bug.cgi?id=80652
+
+ Reviewed by Eric Seidel.
+
+ The fowarding headers have been removed, we must now use the full path to the header.
+
+ * platform/KURLWTFURLImpl.h:
+
+2012-03-08 Emil A Eklund <eae@chromium.org>
+
+ Change calcRadiiFor to IntSize
+ https://bugs.webkit.org/show_bug.cgi?id=80655
+
+ Reviewed by Simon Fraser.
+
+ Borders and RoundedRect are both represented with pixel precision. As
+ such it doesn't make sense for calcRadiiFor to use subpixel units, it
+ just adds unnecessary type conversions.
+
+ No new tests, no new functionality.
+
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::calcRadiiFor):
+
+2012-03-08 Adrienne Walker <enne@google.com>
+
+ [chromium] Encapsulate mask layer settings in LayerChromium
+ https://bugs.webkit.org/show_bug.cgi?id=80646
+
+ Reviewed by James Robinson.
+
+ If a WebLayer sets a mask layer, the setIsMask flag will not get set
+ properly and the mask layer will not turn off tiling. This was only
+ being set through GraphicsLayerChromium. Move this flag into
+ LayerChromium so that it always gets set.
+
+ Test: LayoutTests/compositing/
+
+ * platform/graphics/chromium/GraphicsLayerChromium.cpp:
+ (WebCore::GraphicsLayerChromium::setMaskLayer):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::setMaskLayer):
+
+2012-03-08 Tony Chang <tony@chromium.org>
+
+ margins on flex-align: baseline are double counted
+ https://bugs.webkit.org/show_bug.cgi?id=80645
+
+ Reviewed by Ojan Vafai.
+
+ Fix a bug where we're counting the margins on baseline aligned
+ children twice. Also add some test cases to make sure we handle
+ wrap-reverse baseline alignment properly.
+
+ Tests: css3/flexbox/multiline-reverse-wrap-baseline-expected.html
+ css3/flexbox/multiline-reverse-wrap-baseline.html
+
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
+
+2012-03-08 Nat Duca <nduca@chromium.org>
+
+ [chromium] Pass setVisibility to CCLayerTreeHostImpl regardless of LRC initialization status
+ https://bugs.webkit.org/show_bug.cgi?id=80584
+
+ Reviewed by James Robinson.
+
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::setVisible):
+ (WebCore::CCLayerTreeHost::didBecomeInvisibleOnImplThread):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::setVisible):
+ (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
+
+2012-03-08 Ian Vollick <vollick@chromium.org>
+
+ [chromium] Ensure that the cc thread animation framework continues to tick when the tab is backgrounded
+ https://bugs.webkit.org/show_bug.cgi?id=77668
+
+ Reviewed by James Robinson.
+
+ Tested in CCLayerTreeHostTestTickAnimationWhileBackgrounded
+
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (CCLayerTreeHostImplTimeSourceAdapter):
+ (WebCore::CCLayerTreeHostImplTimeSourceAdapter::create):
+ (WebCore::CCLayerTreeHostImplTimeSourceAdapter::~CCLayerTreeHostImplTimeSourceAdapter):
+ (WebCore::CCLayerTreeHostImplTimeSourceAdapter::onTimerTick):
+ (WebCore::CCLayerTreeHostImplTimeSourceAdapter::setActive):
+ (WebCore::CCLayerTreeHostImplTimeSourceAdapter::CCLayerTreeHostImplTimeSourceAdapter):
+ (WebCore):
+ (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
+ (WebCore::CCLayerTreeHostImpl::setVisible):
+ (WebCore::CCLayerTreeHostImpl::animateLayers):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
+ (WebCore):
+ (CCLayerTreeHostImpl):
+ * platform/graphics/chromium/cc/CCProxy.cpp:
+ (WebCore::CCProxy::currentThread):
+ (WebCore):
+ (WebCore::CCProxy::isMainThread):
+ (WebCore::CCProxy::isImplThread):
+ (WebCore::CCProxy::setCurrentThreadIsImplThread):
+ * platform/graphics/chromium/cc/CCProxy.h:
+ (CCProxy):
+
+2012-03-08 Nico Weber <thakis@chromium.org>
+
+ [chromium] Only build NEON files if target_arch=="arm"
+ https://bugs.webkit.org/show_bug.cgi?id=80626
+
+ Currently, webcore_arm_neon will compile a bunch of files
+ whose contents are completely ifdef'd away on non-arm, and
+ then bundle all the generated empty .o files into a useless
+ libwebcore_arm_neon.a. Don't do this.
+
+ Reviewed by Tony Chang.
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+
+2012-03-08 Nima Ghanavatian <nghanavatian@rim.com>
+
+ [BlackBerry] Fix warning in PlatformTouchEventBlackBerry.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=80621
+
+ Fixes a warning seen when control reaches the end of a
+ non-void function. Return TouchCancel in the 'default' case.
+
+ Reviewed by Rob Buis.
+
+ * platform/blackberry/PlatformTouchEventBlackBerry.cpp:
+ (WebCore::touchEventType):
+
+2012-03-08 Dana Jansens <danakj@chromium.org>
+
+ [chromium] Using wrong scissor rect for draw culling
+ https://bugs.webkit.org/show_bug.cgi?id=80624
+
+ Reviewed by Adrienne Walker.
+
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::optimizeRenderPasses):
+
+2012-03-08 Andy Estes <aestes@apple.com>
+
+ REGRESSION (r105396): Dragging an iWork document into icloud.com opens it in the Mac app instead of uploading it to icloud.com
+ https://bugs.webkit.org/show_bug.cgi?id=79443
+
+ Reviewed by Ryosuke Niwa.
+
+ icloud.com registers a drop event handler that sets display:none on the
+ file input element receiving the drop. After dispatching the drop event,
+ DragController hit tests the position under the mouse to see if it is a
+ file input element in need of receiving files. Since the file input
+ element has lost its renderer, it cannot be found by hit testing, so
+ the dropped file is never attached to the file input element, no change
+ event fires, and no upload commences. We want these things to happen
+ even if the element is no longer visible.
+
+ Since we already keep track of the file input element under the mouse
+ via m_fileInputElementUnderMouse, this additional hit test is
+ unnecessary. Use m_fileInputElementUnderMouse in concludeEditDrag()
+ when dropping files.
+
+ Test: fast/events/file-input-hidden-in-ondrop.html
+
+ * page/DragController.cpp:
+ (WebCore::DragController::concludeEditDrag): Use
+ m_fileInputElementUnderMouse instead of the element returned by hit
+ testing. Assert that m_fileInputElementUnderMouse equals the hit tested
+ element unless m_fileInputElementUnderMouse doesn't have a renderer.
+
+2012-03-08 Ryosuke Niwa <rniwa@webkit.org>
+
+ Mac build fix for micro data API.
+
+ * Configurations/FeatureDefines.xcconfig:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/Document.cpp:
+ (WebCore::Document::removeCachedMicroDataItemList):
+ * html/HTMLElement.idl:
+
+2012-03-07 Jon Lee <jonlee@apple.com>
+
+ Support [Custom] for static functions
+ https://bugs.webkit.org/show_bug.cgi?id=80573
+
+ Reviewed by Kentaro Hara.
+
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (GenerateHeader): If the function is static, add static qualifier to cpp function.
+ (GenerateImplementation): Reorganize the function to split out based on the static
+ attribute, instead of checking for it at every line we output.
+ If the function is static and not custom, the listed code should be the code in
+ the rest of the function that did not have the static check. If it is custom, then
+ we check the number of arguments, and then call the static impl function directly.
+ If the function is not static, all of the "unless ($function->isStatic)" checks
+ are removed since it is not necessary.
+
+ * bindings/scripts/test/TestObj.idl: Added new test case.
+
+ * bindings/scripts/test/JS/JSTestObj.cpp:
+ (WebCore):
+ (WebCore::jsTestObjConstructorFunctionClassMethod2):
+ * bindings/scripts/test/JS/JSTestObj.h:
+ (JSTestObj):
+ (WebCore):
+ * bindings/scripts/test/ObjC/DOMTestObj.h:
+ * bindings/scripts/test/ObjC/DOMTestObj.mm:
+ (-[DOMTestObj classMethod2]):
+ * bindings/scripts/test/V8/V8TestObj.cpp:
+ (WebCore::ConfigureV8TestObjTemplate):
+ * bindings/scripts/test/V8/V8TestObj.h:
+ (V8TestObj):
+
+2012-03-08 Mark Pilgrim <pilgrim@chromium.org>
+
+ Collapse ENABLE(BLOB)|ENABLE(FILE_SYSTEM) to just ENABLE(BLOB)
+ https://bugs.webkit.org/show_bug.cgi?id=80592
+
+ Reviewed by Adam Barth.
+
+ In anticipation of moving FILE_SYSTEM-related code to Modules/, we
+ are collapsing combination BLOB/FILE_SYSTEM ifdefs to just
+ BLOB. In other words, it is assumed from now on that you can not
+ have FILE_SYSTEM support without BLOB support.
+
+ No new tests, all existing tests pass.
+
+ * CMakeLists.txt:
+ * dom/ScriptExecutionContext.cpp:
+ (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
+ (WebCore):
+ (WebCore::ScriptExecutionContext::fileThread):
+ * dom/ScriptExecutionContext.h:
+ (WebCore):
+ (ScriptExecutionContext):
+ * fileapi/AsyncFileStream.cpp:
+ * fileapi/AsyncFileStream.h:
+ * fileapi/FileError.h:
+ * fileapi/FileException.cpp:
+ * fileapi/FileException.h:
+ * fileapi/FileThread.cpp:
+ * fileapi/FileThread.h:
+ * fileapi/OperationNotAllowedException.cpp:
+ * fileapi/OperationNotAllowedException.h:
+ * platform/FileStream.cpp:
+ * platform/FileStream.h:
+ * platform/FileStreamClient.h:
+ * platform/SchemeRegistry.cpp:
+ (WebCore::canDisplayOnlyIfCanRequestSchemes):
+ (WebCore::CORSEnabledSchemes):
+ (WebCore::SchemeRegistry::registerURLSchemeAsNotAllowingJavascriptURLs):
+
+2012-03-08 James Robinson <jamesr@chromium.org>
+
+ Use an explicit attribute to signal that a context prefers to use a discrete GPU
+ https://bugs.webkit.org/show_bug.cgi?id=80639
+
+ Reviewed by Stephen White.
+
+ On platforms that support both integrated and discrete GPUs and can dynamically switch between the two, we
+ sometimes have a specific preference for a given context. Specifically, contexts used for WebGL and canvas 2d
+ acceleration should use the discrete GPU if available, but compositor contexts can run fine on an integrated
+ GPU. Instead of attempting to infer the intent from examining other context attributes, this adds an explicit
+ attribute to control this behavior.
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore):
+ (WebCore::WebGLRenderingContext::create):
+ * platform/graphics/GraphicsContext3D.h:
+ (WebCore::GraphicsContext3D::Attributes::Attributes):
+ (Attributes):
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::get):
+
+2012-03-08 Andy Estes <aestes@apple.com>
+
+ NULL renderer possible in WebCore::HTMLInputElement::setCanReceiveDroppedFiles()
+ https://bugs.webkit.org/show_bug.cgi?id=80648
+
+ Reviewed by Simon Fraser.
+
+ Test: fast/events/input-element-display-none-in-dragleave-crash.html
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::setCanReceiveDroppedFiles): NULL-check renderer().
+
+2012-03-08 Jer Noble <jer.noble@apple.com>
+
+ Yet another unreviewed build fix.
+
+ Remove an unneeded and Lion-defined window constant from WebCoreFullScreenWindow.
+
+ * platform/mac/WebCoreFullScreenWindow.mm:
+ (-[WebCoreFullScreenWindow initWithContentRect:styleMask:backing:defer:]):
+
+2012-03-08 Levi Weintraub <leviw@chromium.org>
+
+ Switch absoluteRects, culledInlineAbsoluteRects, absoluteBoundingBoxRect, and addFocusRingRects back to integers
+ https://bugs.webkit.org/show_bug.cgi?id=80545
+
+ Reviewed by Simon Fraser.
+
+ Converting the above functions, all of which return rects that represent on-screen rects, to IntRects from
+ LayoutRects.
+
+ addFocusRingsRects generates a vector of rects that is handed off directly to the GraphicsContext to be
+ drawn. Snapping the rects before adding them to the vector saves an extra pass through the vector.
+
+ absoluteRects and culledInlineAbsoluteRects are only used by addFocusRingRects, hasNonEmptyBoundingBox (only
+ to check if they're empty), and absoluteBoundingBoxRect, which is exposed from WebCore and thus should be an
+ IntRect anyways.
+
+ No new tests. No change in behavior.
+
+ * dom/Node.cpp:
+ (WebCore::Node::hasNonEmptyBoundingBox):
+ * dom/Range.cpp:
+ (WebCore::Range::boundingBox):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::absoluteRects):
+ (WebCore::RenderBlock::addFocusRingRects):
+ * rendering/RenderBlock.h:
+ (RenderBlock):
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::absoluteRects):
+ (WebCore::RenderInline::culledInlineAbsoluteRects):
+ (WebCore::RenderInline::addFocusRingRects):
+ * rendering/RenderInline.h:
+ (RenderInline):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::addFocusRingRects):
+ * rendering/RenderListBox.h:
+ (RenderListBox):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::paintFocusRing):
+ (WebCore::RenderObject::absoluteBoundingBoxRect):
+ (WebCore::RenderObject::absoluteFocusRingQuads):
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::absoluteRects):
+ (RenderObject):
+ (WebCore::RenderObject::absoluteBoundingBoxRectIgnoringTransforms):
+ (WebCore::RenderObject::addFocusRingRects):
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::absoluteRects):
+ (WebCore::RenderText::absoluteRectsForRange):
+ * rendering/RenderText.h:
+ (RenderText):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::addFocusRingRects):
+ * rendering/RenderTextControl.h:
+ (RenderTextControl):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::absoluteRects):
+ * rendering/RenderView.h:
+ (RenderView):
+ * rendering/svg/RenderSVGBlock.cpp:
+ (WebCore::RenderSVGBlock::absoluteRects):
+ * rendering/svg/RenderSVGBlock.h:
+ (RenderSVGBlock):
+ * rendering/svg/RenderSVGContainer.cpp:
+ (WebCore::RenderSVGContainer::addFocusRingRects):
+ * rendering/svg/RenderSVGContainer.h:
+ (RenderSVGContainer):
+ * rendering/svg/RenderSVGImage.cpp:
+ (WebCore::RenderSVGImage::addFocusRingRects):
+ * rendering/svg/RenderSVGImage.h:
+ (RenderSVGImage):
+ * rendering/svg/RenderSVGModelObject.cpp:
+ (WebCore::RenderSVGModelObject::absoluteRects):
+ * rendering/svg/RenderSVGModelObject.h:
+ (RenderSVGModelObject):
+ * rendering/svg/RenderSVGShape.cpp:
+ (WebCore::RenderSVGShape::addFocusRingRects):
+ * rendering/svg/RenderSVGShape.h:
+ (RenderSVGShape):
+
+2012-03-08 Erik Arvidsson <arv@chromium.org>
+
+ [V8] Use EventNames instead of strings
+ https://bugs.webkit.org/show_bug.cgi?id=80649
+
+ Reviewed by Ojan Vafai.
+
+ No new tests. Covered by existing tests.
+
+ * bindings/v8/V8AbstractEventListener.cpp:
+ (WebCore::V8AbstractEventListener::invokeEventHandler):
+
+2012-03-08 Tim Horton <timothy_horton@apple.com>
+
+ No-op filter changes color output because of colorspace issues
+ https://bugs.webkit.org/show_bug.cgi?id=72411
+ <rdar://problem/10588374>
+
+ Reviewed by Dean Jackson.
+
+ Redefine "linear RGB" color space on Mac to mean linearized sRGB, instead of linear
+ Generic RGB. This makes existing CG color matching equivalent to what other ports do via
+ ImageBuffer::transformColorSpace (which only adjusts gamma, as we will now). Previously,
+ we were also causing actual (non-gamma) color adjustments which were not reversible.
+
+ No new tests, covered by all existing SVG and CSS filter tests.
+
+ * Resources/linearSRGB.icc: Added.
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::linearRGBColorSpaceRef):
+
+2012-03-08 Beth Dakin <bdakin@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=80463
+ RenderImage is using the wrong origin when calling addRelevantRepaintedObject
+ -and corresponding-
+ <rdar://problem/10970221>
+
+ Reviewed by Dan Bernstein.
+
+ Use the exact same rect that we paint with instead of the
+ visualOverflowRect() which does not always have a correct x and y.
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::paintReplaced):
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::paintReplaced):
+
+2012-03-08 Jer Noble <jer.noble@apple.com>
+
+ Full Screen Refactor Part 3: Animate into Full Screen mode using new animation classes.
+ https://bugs.webkit.org/show_bug.cgi?id=78928
+
+ Reviewed by Anders Carlsson.
+
+ Move WKFullScreenWindow from WebKit2 into WebCore to be shared by WebKit2 and WebKit.
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/mac/WebCoreFullScreenWindow.h:
+ * platform/mac/WebCoreFullScreenWindow.mm:
+
+ Add symbols for the following classes and functions to the export list:
+ WebCoreFullScreenWindow
+ WebWindowScaleAnimation
+ WebWindowFadeAnimation
+ ScrollView::contentsToScreen()
+ RenderObject::localToContainerQuad()
+ Document::setAnimatingFullScreen()
+ * WebCore.exp.in:
+
+2012-03-08 Jer Noble <jer.noble@apple.com>
+
+ Full Screen Refactor Part 1: Remove special-case rendering code for Full Screen animation.
+ https://bugs.webkit.org/show_bug.cgi?id=78925
+
+ Reviewed by John Sullivan.
+
+ No new tests; no net change in functionality so covered by existing tests.
+
+ The following functions had special case code for rendering full-screen elements removed:
+ * dom/Document.cpp:
+ (WebCore::Document::webkitWillEnterFullScreenForElement):
+ (WebCore::Document::webkitDidEnterFullScreenForElement):
+ (WebCore::Document::webkitWillExitFullScreenForElement):
+ (WebCore::Document::webkitDidExitFullScreenForElement):
+ (WebCore::Document::setAnimatingFullScreen):
+ * page/FrameView.cpp:
+ (WebCore):
+ (WebCore::FrameView::updateCompositingLayers):
+ (WebCore::FrameView::syncCompositingStateForThisFrame):
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::layerOrAncestorIsTransformed):
+ (WebCore::RenderLayerBacking::updateCompositedBounds):
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
+ (WebCore::RenderLayerCompositor::requiresCompositingLayer):
+ * rendering/RenderLayerCompositor.h:
+
+2012-03-08 Matt Lilek <mrl@apple.com>
+
+ Don't enable VIDEO_TRACK on all OS X platforms
+ https://bugs.webkit.org/show_bug.cgi?id=80635
+
+ Reviewed by Eric Carlson.
+
+ * Configurations/FeatureDefines.xcconfig:
+
+2012-03-08 Tony Chang <tony@chromium.org>
+
+ implement flexbox wrap-reverse
+ https://bugs.webkit.org/show_bug.cgi?id=80552
+
+ Reviewed by Ojan Vafai.
+
+ No new tests, but additional coverage in:
+ css3/flexbox/multiline-align.html
+ css3/flexbox/multiline-pack.html
+ css3/flexbox/multiline.html
+
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::WrapReverseContext::WrapReverseContext): Helper struct to hold information needed for reversing
+ the order of lines.
+ (RenderFlexibleBox::WrapReverseContext):
+ (WebCore::RenderFlexibleBox::WrapReverseContext::addCrossAxisOffset):
+ (WebCore::RenderFlexibleBox::WrapReverseContext::addNumberOfChildrenOnLine):
+ (WebCore::RenderFlexibleBox::WrapReverseContext::lineCrossAxisDelta): Computes the number of pixels to move a line.
+ (WebCore):
+ (WebCore::RenderFlexibleBox::layoutFlexItems): Call flipForWrapReverse if needed. This happens
+ before flipForRightToLeftColumn because otherwise the crossAxisOffsets will be wrong.
+ (WebCore::flexAlignForChild):
+ (WebCore::RenderFlexibleBox::alignChildren): Flip alignment in wrap-reverse because the cross directions are flipped.
+ (WebCore::RenderFlexibleBox::flipForWrapReverse): Flip each line.
+ * rendering/RenderFlexibleBox.h:
+ (RenderFlexibleBox):
+
+2012-03-08 Adam Klein <adamk@chromium.org>
+
+ Remove InDocumentFlag manipulation methods from Node interface
+ https://bugs.webkit.org/show_bug.cgi?id=80612
+
+ Reviewed by Ryosuke Niwa.
+
+ This is a first step towards tightening up Node::inDocument() to match
+ the actual in-document-tree state (see r108152 for the sort of bug
+ resulting from those not matching).
+
+ No new tests, refactoring only.
+
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::removedFromDocument): Remove duplicate call to clearInDocument:
+ the call to Node::removedFromDocument three lines above will clear the flag.
+ * dom/Document.cpp:
+ (WebCore::Document::Document): Call ContainerNode constructor with InDocumentFlag always set
+ instead of calling setInDocument.
+ * dom/Node.cpp:
+ (WebCore::Node::insertedIntoDocument): Inline setInDocument (now the only caller).
+ (WebCore::Node::removedFromDocument): Inline clearInDocument (now the only caller).
+ * dom/Node.h: Remove setInDocument & clearInDocument, add new CreateDocument ConstructionType.
+
+2012-03-08 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
+
+ [Qt] Try to fix the Snow Leopard build
+
+ If the build is running under sh, echo -n does not empty the file.
+
+ * DerivedSources.pri:
+
+2012-03-08 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
+
+ Prospective build fix for Qt minimal after r110191
+
+ https://bugs.webkit.org/show_bug.cgi?id=80338
+
+ * testing/Internals.cpp:
+ (WebCore):
+ * testing/Internals.h:
+ (Internals):
+
+2012-03-08 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
+
+ [Qt] Prospective Windows build fix
+
+ Don't assume that windows-builds will always run inside a cmd.exe shell.
+
+ * DerivedSources.pri:
+
+2012-03-08 Vivek Galatage <vivekgalatage@gmail.com>
+
+ Web Inspector: Creating a selector for class names with trailing spaces results with two dots instead of one
+ https://bugs.webkit.org/show_bug.cgi?id=80529
+
+ Trim the className before replacing the whitespaces with dot "."
+
+ Reviewed by Pavel Feldman.
+
+ No new tests.
+
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMNode.prototype.appropriateSelectorFor):
+
+2012-03-08 Dan Bernstein <mitz@apple.com>
+
+ <rdar://problem/10981173> Dashboard regions should not be in device space
+
+ Reviewed by John Sullivan.
+
+ Test: TestWebKitAPI/Tests/mac/DeviceScaleFactorInDashboardRegions.mm
+
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::addDashboardRegions): Stop applying the device scale factor to
+ Dashboard regions.
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::addDashboardRegions): Ditto.
+
+2012-03-08 Cem Kocagil <cem.kocagil@gmail.com>
+
+ Web Inspector: Cannot insert right curly bracket on some keyboards
+ https://bugs.webkit.org/show_bug.cgi?id=80474
+
+ Make sure other modifiers are not pressed
+
+ Reviewed by Pavel Feldman
+
+ * inspector/front-end/inspector.js:
+ (WebInspector.documentKeyDown):
+
+2012-03-08 Max Vujovic <mvujovic@adobe.com>
+
+ Add a method to window.internals to enable testing of inspector highlight rects
+ https://bugs.webkit.org/show_bug.cgi?id=80338
+
+ Reviewed by Pavel Feldman.
+
+ Add window.internals.inspectorHighlightRects, a method which makes it possible to test the
+ positions and sizes of inspector highlight rects.
+
+ Test: inspector/elements/highlight-node.html
+
+ * WebCore.exp.in: Export symbols.
+ * testing/Internals.cpp:
+ (WebCore::Internals::inspectorHighlightRects): Call InspectorController::getHighlight and
+ return the highlight's quads as a ClientRectList.
+ (WebCore):
+ * testing/Internals.h:
+ (WebCore):
+ (Internals):
+ * testing/Internals.idl:
+
+ Add inspectorHighlightRects to the window.internals interface.
+
+2012-03-08 Antti Koivisto <antti@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=80370
+ Enable matched declaration caching for elements with a style attribute
+
+ Reviewed by Andreas Kling
+
+ Make the property set for style attribute immutable as long as there is no CSSOM
+ wrapper for it. If the style attribute changes we create a new property set instead
+ of recycling the old one. This way the property sets can be made cacheable as long
+ as there is no CSSOM wrapper that would allow uncontrolled modifications. Constructing
+ the wrapper disables caching.
+
+ Made StyledElement::inlineStyle() and StyledElement::ensureInlineStyle() return a const
+ StylePropertySet so making accidental modifications difficult. Also dropped *Decl from
+ the names.
+
+ Fixed two unrelated bugs that this exposed.
+
+ * css/CSSStyleSelector.cpp:
+
+ Don't allow caching of document element style if writingModeSetOnDocumentElement() bit is set.
+ Tested by fast/multicol/vertical-rl/break-properties.html.
+
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+ * css/StylePropertySet.h:
+ (StylePropertySet):
+ (WebCore::StylePropertySet::hasCSSOMWrapper):
+ * dom/Element.cpp:
+ (WebCore::Element::recalcStyle):
+
+ Invalidate the matched properties cache if the document has rem units and the root font changes.
+ Tested by fast/css/rem-dynamic-scaling.html.
+
+ * dom/ElementAttributeData.cpp:
+ (WebCore):
+ (WebCore::ElementAttributeData::ensureInlineStyle):
+ (WebCore::ElementAttributeData::ensureMutableInlineStyle):
+ (WebCore::ElementAttributeData::updateInlineStyleAvoidingMutation):
+ (WebCore::ElementAttributeData::destroyInlineStyle):
+ * dom/ElementAttributeData.h:
+ (WebCore::ElementAttributeData::inlineStyle):
+ (ElementAttributeData):
+ * dom/StyledElement.cpp:
+ (WebCore::StyledElement::updateStyleAttribute):
+ (WebCore::StyledElement::~StyledElement):
+ (WebCore):
+ (WebCore::StyledElement::style):
+ (WebCore::StyledElement::parseAttribute):
+ (WebCore::StyledElement::setInlineStyleProperty):
+ (WebCore::StyledElement::removeInlineStyleProperty):
+ (WebCore::StyledElement::addSubresourceAttributeURLs):
+ * dom/StyledElement.h:
+ (WebCore::StyledElement::inlineStyle):
+ (WebCore::StyledElement::ensureInlineStyle):
+ (StyledElement):
+ (WebCore::StyledElement::destroyInlineStyle):
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::hasNoAttributeOrOnlyStyleAttribute):
+ (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
+ (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
+ (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
+ (WebCore::ApplyStyleCommand::removeCSSStyle):
+ (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown):
+ (WebCore::ApplyStyleCommand::addBlockStyle):
+ (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
+ * editing/EditingStyle.cpp:
+ (WebCore::HTMLElementEquivalent::propertyExistsInStyle):
+ (HTMLTextDecorationEquivalent):
+ (WebCore::HTMLTextDecorationEquivalent::propertyExistsInStyle):
+ (WebCore::EditingStyle::conflictsWithInlineStyleOfElement):
+ (WebCore::EditingStyle::elementIsStyledSpanOrHTMLEquivalent):
+ (WebCore::EditingStyle::mergeInlineStyleOfElement):
+ (WebCore::elementMatchesAndPropertyIsNotInInlineStyleDecl):
+ (WebCore::EditingStyle::mergeStyle):
+ * editing/EditingStyle.h:
+ (EditingStyle):
+ * editing/RemoveCSSPropertyCommand.cpp:
+ (WebCore::RemoveCSSPropertyCommand::doApply):
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
+ (WebCore::ReplaceSelectionCommand::handleStyleSpans):
+ * editing/markup.cpp:
+ (WebCore::StyledMarkupAccumulator::appendElement):
+ (WebCore::styleFromMatchedRulesAndInlineDecl):
+ * html/HTMLElement.cpp:
+ (WebCore::StyledElement::copyNonAttributeProperties):
+ * html/canvas/CanvasStyle.cpp:
+ (WebCore::currentColor):
+ * page/PageSerializer.cpp:
+ (WebCore::PageSerializer::serializeFrame):
+ (WebCore::PageSerializer::retrieveResourcesForProperties):
+ * page/PageSerializer.h:
+ (PageSerializer):
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::isEmptyOrUnstyledAppleStyleSpan):
+
+2012-03-08 Scott Byer <scottbyer@chromium.org>
+
+ Have ScrollAnimatorNone use requestAnimationFrame
+ https://bugs.webkit.org/show_bug.cgi?id=78938
+
+ Reviewed by James Robinson.
+
+ No new tests. Passes Chromium webkit_unit_tests.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::serviceScriptedAnimations):
+ * platform/ScrollAnimator.h:
+ (WebCore::ScrollAnimator::serviceScrollAnimations):
+ * platform/ScrollAnimatorNone.cpp:
+ (WebCore::ScrollAnimatorNone::ScrollAnimatorNone):
+ (WebCore::ScrollAnimatorNone::scroll):
+ (WebCore::ScrollAnimatorNone::cancelAnimations):
+ (WebCore):
+ (WebCore::ScrollAnimatorNone::serviceScrollAnimations):
+ (WebCore::ScrollAnimatorNone::animationTimerFired):
+ (WebCore::ScrollAnimatorNone::startNextTimer):
+ (WebCore::ScrollAnimatorNone::animationTimerActive):
+ (WebCore::ScrollAnimatorNone::stopAnimationTimerIfNeeded):
+ * platform/ScrollAnimatorNone.h:
+ (ScrollAnimatorNone):
+ * platform/ScrollableArea.cpp:
+ (WebCore::ScrollableArea::serviceScrollAnimations):
+ (WebCore):
+ * platform/ScrollableArea.h:
+ (WebCore):
+ (ScrollableArea):
+ * rendering/RenderLayer.h:
+ (WebCore::RenderLayer::hostWindow):
+ (RenderLayer):
+ * rendering/RenderListBox.h:
+ (WebCore::RenderListBox::hostWindow):
+ (RenderListBox):
+
+2012-03-08 Dan Bernstein <mitz@apple.com>
+
+ REGRESSION (r109964): Assertion failure (!isUndefined()) in Length::getIntValue() when a Dashboard region is specified without offsets
+ https://bugs.webkit.org/show_bug.cgi?id=80614
+
+ Reviewed by Beth Dakin.
+
+ Test: fast/css/dashboard-regions-undefined-length-assertion.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList): Reverted to setting zero lengths,
+ rather than Undefined ones, in the RenderStyle when offsets are not given.
+
+2012-03-08 Mikkel Kruse Johnsen <mikkel@linet.dk>
+
+ WebKitGtk+ fails to build on win32 against GTK3
+ https://bugs.webkit.org/show_bug.cgi?id=63919
+
+ Reviewed by Gustavo Noronha Silva.
+
+ * plugins/gtk/PluginViewGtk.cpp: Don't use gtk_socket_new with GTK3 on Win32
+ (WebCore::PluginView::platformStart):
+
+2012-03-08 Jason Liu <jason.liu@torchmobile.com.cn>
+
+ [BlackBerry]New feature: support about:cookie for internal build.
+ https://bugs.webkit.org/show_bug.cgi?id=80367
+
+ Reviewed by Antonio Gomes.
+
+ No new tests.
+
+ * platform/blackberry/CookieManager.cpp:
+ (WebCore::CookieManager::generateHtmlFragmentForCookies):
+ (WebCore):
+ * platform/blackberry/CookieManager.h:
+ * platform/network/blackberry/NetworkJob.cpp:
+ (WebCore::NetworkJob::handleAbout):
+
+2012-03-08 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
+
+ Make elements with attributes smaller by eliminating the m_element back pointer in NamedNodeMap
+ https://bugs.webkit.org/show_bug.cgi?id=75069
+
+ Reviewed by Ryosuke Niwa.
+
+ NamedNodeMap is an exposed DOM representation of an element's attribute storage. As part of
+ its implementation it keeps a pointer to its associated Element plus all the attribute
+ storage.
+
+ This commit separate the two things: NamedNodeMap is now a wrapper to Element, containing
+ only the pointer, and the attribute storage is now owned by Element directly. Since usage
+ of NamedNodeMap is not very common, it can be stored in ElementRareData. As a result, most
+ elements with attributes now don't need to allocate memory for that extra pointer in
+ NamedNodeMap.
+
+ One consequence of this implementation is that now we explicitly don't support
+ DocumentType.notations and DocumentType.entities. They weren't supported before, a
+ NamedNodeMap was never created for those attributes -- and some NamedNodeMap functions
+ wouldn't work correctly without an associated Element.
+
+ NamedNodeMap itself was cleaned up, as well as unnecessary references to it removed in the
+ code and comments.
+
+ No new tests and should not change results for existing tests.
+
+ * dom/Attribute.h:
+ (WebCore):
+ * dom/DocumentType.h:
+ (DocumentType): Point out that we don't support does attributes yet.
+ * dom/Element.cpp:
+ (WebCore::Element::~Element): Detaching the NamedNodeMap is no longer necessary because it
+ will be destroyed. We still detach the potential Attrs inside our Attributes by using
+ clearAttributes().
+ (WebCore::Element::attributes): Looks in ElementRareData now. Note we ensure the creation
+ of the attribute storage.
+ (WebCore):
+ (WebCore::Element::getAttribute):
+ (WebCore::Element::setAttributeInternal):
+ (WebCore::Element::parserSetAttributes):
+ (WebCore::Element::hasAttributes):
+ (WebCore::Element::createAttributeData):
+ (WebCore::Element::insertedIntoDocument):
+ (WebCore::Element::removedFromDocument):
+ (WebCore::Element::getURLAttribute):
+ (WebCore::Element::getNonEmptyURLAttribute):
+ (WebCore::Element::hasNamedNodeMap): Helper function for Node::dumpStatistics().
+ * dom/Element.h:
+ (Element):
+ (WebCore::Element::attributeData):
+ (WebCore::Element::ensureAttributeData):
+ (WebCore::Element::fastHasAttribute):
+ (WebCore::Element::fastGetAttribute):
+ (WebCore::Element::hasAttributesWithoutUpdate):
+ (WebCore::Element::idForStyleResolution):
+ (WebCore::Element::attributeCount):
+ (WebCore::Element::attributeItem):
+ (WebCore::Element::getAttributeItem):
+ * dom/ElementAttributeData.h:
+ (WebCore::ElementAttributeData::create):
+ (ElementAttributeData):
+ * dom/ElementRareData.h:
+ (ElementRareData):
+ * dom/NamedNodeMap.cpp: Rewriting now that m_attributeData is not a member, using m_element
+ methods when possible.
+ (WebCore::NamedNodeMap::ref):
+ (WebCore::NamedNodeMap::deref):
+ (WebCore::NamedNodeMap::getNamedItem):
+ (WebCore::NamedNodeMap::getNamedItemNS):
+ (WebCore::NamedNodeMap::removeNamedItem):
+ (WebCore::NamedNodeMap::removeNamedItemNS):
+ (WebCore::NamedNodeMap::setNamedItem):
+ (WebCore::NamedNodeMap::item):
+ (WebCore::NamedNodeMap::length):
+ * dom/NamedNodeMap.h:
+ (WebCore):
+ (WebCore::NamedNodeMap::create):
+ (NamedNodeMap):
+ (WebCore::NamedNodeMap::NamedNodeMap): Instead of asserting m_element in every function, we
+ now assert only in the constructor.
+ * dom/Node.cpp:
+ (WebCore::Node::dumpStatistics): Add a counter for elements with rare data, this allows us
+ compare more clearly the impact of moving NamedNodeMap there.
+ (WebCore::Node::isEqualNode): Remove use of mapsEquivalent(). It was dead code, because
+ both entities and notations were always NULL.
+ (WebCore::Node::compareDocumentPosition):
+ * inspector/DOMPatchSupport.h:
+ (WebCore):
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::attributeChanged):
+
+2012-03-08 Robin Cao <robin.cao@torchmobile.com.cn>
+
+ [BlackBerry] Upstream WebGL related files from platform/graphics
+ https://bugs.webkit.org/show_bug.cgi?id=79876
+
+ Reviewed by Rob Buis.
+
+ Initial upstream, no new tests.
+
+ * platform/graphics/blackberry/DrawingBufferBlackBerry.cpp: Added.
+ (WebCore):
+ (DrawingBufferInternal):
+ (WebCore::generateColorTexture):
+ (WebCore::DrawingBuffer::DrawingBuffer):
+ (WebCore::DrawingBuffer::~DrawingBuffer):
+ (WebCore::DrawingBuffer::publishToPlatformLayer):
+ (WebCore::DrawingBuffer::reset):
+ (WebCore::DrawingBuffer::platformLayer):
+ * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp: Added.
+ (WebCore):
+ (WebCore::GraphicsContext3D::create):
+ (WebCore::GraphicsContext3D::GraphicsContext3D):
+ (WebCore::GraphicsContext3D::~GraphicsContext3D):
+ (WebCore::GraphicsContext3D::paintsIntoCanvasBuffer):
+ (WebCore::GraphicsContext3D::makeContextCurrent):
+ (WebCore::GraphicsContext3D::isGLES2Compliant):
+ (WebCore::GraphicsContext3D::isGLES2NPOTStrict):
+ (WebCore::GraphicsContext3D::isErrorGeneratedOnOutOfBoundsAccesses):
+ (WebCore::GraphicsContext3D::platformTexture):
+ (WebCore::GraphicsContext3D::platformLayer):
+ (WebCore::GraphicsContext3D::paintToCanvas):
+ (WebCore::GraphicsContext3D::setContextLostCallback):
+ * platform/graphics/blackberry/WebGLLayerWebKitThread.cpp: Added.
+ (WebCore):
+ (WebCore::WebGLLayerWebKitThread::WebGLLayerWebKitThread):
+ (WebCore::WebGLLayerWebKitThread::~WebGLLayerWebKitThread):
+ (WebCore::WebGLLayerWebKitThread::setNeedsDisplay):
+ (WebCore::WebGLLayerWebKitThread::updateTextureContentsIfNeeded):
+ * platform/graphics/blackberry/WebGLLayerWebKitThread.h: Added.
+ (WebCore):
+ (WebGLLayerWebKitThread):
+ (WebCore::WebGLLayerWebKitThread::create):
+ (WebCore::WebGLLayerWebKitThread::setWebGLContext):
+
+2012-03-08 Yong Li <yoli@rim.com>
+
+ [BlackBerry] LayerRender should turn off stencil/scissor after drawing layers
+ https://bugs.webkit.org/show_bug.cgi?id=80598
+
+ Reviewed by Rob Buis.
+
+ Turn off stencil/scissor after using them to avoid affecting later GL operation
+ accidentally.
+
+ * platform/graphics/blackberry/LayerRenderer.cpp:
+ (WebCore::LayerRenderer::drawLayers):
+
+2012-03-08 Simon Hausmann <simon.hausmann@nokia.com>
+
+ [Qt] Windows build fix.
+
+ Reviewed by Tor Arne Vestbø.
+
+ * DerivedSources.pri: Replace commandline that is too long for Windows with
+ separate lines to be executed in the Makefile for the IDL preprocessing.
+
+2012-03-08 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: The function had to return a hash but it returned just address.
+ https://bugs.webkit.org/show_bug.cgi?id=80591
+
+ Reviewed by Yury Semikhatsky.
+
+ * bindings/v8/RetainedDOMInfo.cpp:
+ (WebCore::RetainedDOMInfo::GetHash):
+
+2012-03-08 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Unreviewed single line fix. The function had to return a hash but it returned just address.
+
+ * bindings/v8/V8GCController.cpp:
+ (WebCore::UnspecifiedGroup::GetHash):
+
+2012-03-08 Shinya Kawanaka <shinyak@chromium.org>
+
+ <shadow> should be rendered correctly.
+ https://bugs.webkit.org/show_bug.cgi?id=78596
+
+ Reviewed by Hajime Morita.
+
+ This patch supports <shadow> element rendering.
+
+ When attaching <shadow> element, if it is in the oldest shadow tree, it runs a part of
+ distribution algorithm. If it is in non-oldest shadow tree, it runs tree a part of
+ tree composition algorithm to assign a older shadow root. In this patch, InsertionPonit
+ try to treat the distributed host children and the assigned shadow children similarly.
+
+ NodeRenderingContext supports rendering <shadow> element. Since the assigned shadow children
+ are treated like distributed host children, that change is to consider non-youngest shadow
+ tree basically also.
+
+ Tests: fast/dom/shadow/shadow-element-rendering-multiple.html
+ fast/dom/shadow/shadow-element-rendering-single.html
+
+ * dom/NodeRenderingContext.cpp:
+ (WebCore):
+ (WebCore::NodeRenderingContext::NodeRenderingContext):
+ Does not ignore non-youngest shadow tree.
+ * dom/ShadowRoot.cpp:
+ (WebCore::ShadowRoot::ShadowRoot):
+ * dom/ShadowRoot.h:
+ (ShadowRoot):
+ (WebCore::ShadowRoot::assignedTo):
+ (WebCore):
+ (WebCore::ShadowRoot::setAssignedTo):
+ (WebCore::ShadowRoot::isUsedForRendering):
+ Returns true if ShadowRoot is youngest or assigned to some InsertionPoint.
+ (WebCore::toShadowRoot):
+ * dom/ShadowTree.cpp:
+ (WebCore::ShadowTree::insertionPointFor):
+ Returns InsertionPoint to which node is distributed.
+ * dom/ShadowTree.h:
+ (ShadowTree):
+ * html/shadow/HTMLContentElement.h:
+ (WebCore::HTMLContentElement::doesSelectFromHostChildren):
+ (HTMLContentElement):
+ * html/shadow/HTMLShadowElement.cpp:
+ (WebCore::HTMLShadowElement::HTMLShadowElement):
+ (WebCore::HTMLShadowElement::select):
+ (WebCore::HTMLShadowElement::doesSelectFromHostChildren):
+ (WebCore):
+ * html/shadow/HTMLShadowElement.h:
+ (HTMLShadowElement):
+ * html/shadow/InsertionPoint.cpp:
+ (WebCore::InsertionPoint::attach):
+ (WebCore::InsertionPoint::detach):
+ (WebCore::InsertionPoint::assignedFrom):
+ (WebCore):
+ (WebCore::InsertionPoint::assignShadowRoot):
+ (WebCore::InsertionPoint::clearAssignment):
+ * html/shadow/InsertionPoint.h:
+ (InsertionPoint):
+
+2012-03-06 Hans Wennborg <hans@chromium.org>
+
+ Speech JavaScript API: SpeechRecognitionAlternative, Result and ResultList
+ https://bugs.webkit.org/show_bug.cgi?id=80424
+
+ Reviewed by Adam Barth.
+
+ Implement the SpeechRecognitionAlternative,
+ SpeechRecognitionResult and SpeechRecognitionResultList.
+ (Spec: http://speech-javascript-api-spec.googlecode.com/git/speechapi.html)
+
+ No new tests because these interfaces don't have constructors.
+ They will be tested as more of the API gets implemented.
+
+ * Modules/speech/SpeechRecognitionAlternative.cpp: Added.
+ (WebCore):
+ (WebCore::SpeechRecognitionAlternative::create):
+ (WebCore::SpeechRecognitionAlternative::SpeechRecognitionAlternative):
+ * Modules/speech/SpeechRecognitionAlternative.h: Added.
+ (WebCore):
+ (SpeechRecognitionAlternative):
+ (WebCore::SpeechRecognitionAlternative::transcript):
+ (WebCore::SpeechRecognitionAlternative::confidence):
+ * Modules/speech/SpeechRecognitionAlternative.idl: Added.
+ * Modules/speech/SpeechRecognitionResult.cpp: Added.
+ (WebCore):
+ (WebCore::SpeechRecognitionResult::create):
+ (WebCore::SpeechRecognitionResult::item):
+ (WebCore::SpeechRecognitionResult::SpeechRecognitionResult):
+ * Modules/speech/SpeechRecognitionResult.h: Added.
+ (WebCore):
+ (SpeechRecognitionResult):
+ (WebCore::SpeechRecognitionResult::length):
+ (WebCore::SpeechRecognitionResult::final):
+ * Modules/speech/SpeechRecognitionResult.idl: Added.
+ * Modules/speech/SpeechRecognitionResultList.cpp: Added.
+ (WebCore):
+ (WebCore::SpeechRecognitionResultList::create):
+ (WebCore::SpeechRecognitionResultList::item):
+ (WebCore::SpeechRecognitionResultList::SpeechRecognitionResultList):
+ * Modules/speech/SpeechRecognitionResultList.h: Added.
+ (WebCore):
+ (SpeechRecognitionResultList):
+ (WebCore::SpeechRecognitionResultList::length):
+ * Modules/speech/SpeechRecognitionResultList.idl: Added.
+ * WebCore.gypi:
+
+2012-03-08 Robin Cao <robin.cao@torchmobile.com.cn>
+
+ [BlackBerry] Upstream GraphicsLayerBlackBerry.{h, cpp}
+ https://bugs.webkit.org/show_bug.cgi?id=79867
+
+ Reviewed by Rob Buis.
+
+ Initial upstream, no new tests.
+
+ * platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp: Added.
+ (WebCore):
+ (WebCore::setLayerBorderColor):
+ (WebCore::clearBorderColor):
+ (WebCore::setLayerBackgroundColor):
+ (WebCore::clearLayerBackgroundColor):
+ (WebCore::GraphicsLayer::create):
+ (WebCore::GraphicsLayerBlackBerry::GraphicsLayerBlackBerry):
+ (WebCore::GraphicsLayerBlackBerry::~GraphicsLayerBlackBerry):
+ (WebCore::GraphicsLayerBlackBerry::setName):
+ (WebCore::GraphicsLayerBlackBerry::setChildren):
+ (WebCore::GraphicsLayerBlackBerry::addChild):
+ (WebCore::GraphicsLayerBlackBerry::addChildAtIndex):
+ (WebCore::GraphicsLayerBlackBerry::addChildBelow):
+ (WebCore::GraphicsLayerBlackBerry::addChildAbove):
+ (WebCore::GraphicsLayerBlackBerry::replaceChild):
+ (WebCore::GraphicsLayerBlackBerry::removeFromParent):
+ (WebCore::GraphicsLayerBlackBerry::setPosition):
+ (WebCore::GraphicsLayerBlackBerry::setAnchorPoint):
+ (WebCore::GraphicsLayerBlackBerry::setSize):
+ (WebCore::GraphicsLayerBlackBerry::setTransform):
+ (WebCore::GraphicsLayerBlackBerry::setChildrenTransform):
+ (WebCore::GraphicsLayerBlackBerry::setPreserves3D):
+ (WebCore::GraphicsLayerBlackBerry::setMasksToBounds):
+ (WebCore::GraphicsLayerBlackBerry::setDrawsContent):
+ (WebCore::GraphicsLayerBlackBerry::setContentsVisible):
+ (WebCore::GraphicsLayerBlackBerry::setMaskLayer):
+ (WebCore::GraphicsLayerBlackBerry::setReplicatedByLayer):
+ (WebCore::GraphicsLayerBlackBerry::setFixedPosition):
+ (WebCore::GraphicsLayerBlackBerry::setHasFixedContainer):
+ (WebCore::GraphicsLayerBlackBerry::setHasFixedAncestorInDOMTree):
+ (WebCore::GraphicsLayerBlackBerry::setBackgroundColor):
+ (WebCore::GraphicsLayerBlackBerry::clearBackgroundColor):
+ (WebCore::GraphicsLayerBlackBerry::setContentsOpaque):
+ (WebCore::GraphicsLayerBlackBerry::setBackfaceVisibility):
+ (WebCore::GraphicsLayerBlackBerry::setOpacity):
+ (WebCore::GraphicsLayerBlackBerry::setContentsNeedsDisplay):
+ (WebCore::GraphicsLayerBlackBerry::setNeedsDisplay):
+ (WebCore::GraphicsLayerBlackBerry::setNeedsDisplayInRect):
+ (WebCore::GraphicsLayerBlackBerry::setContentsRect):
+ (WebCore::removeAnimationByIdAndProperty):
+ (WebCore::removeAnimationByName):
+ (WebCore::GraphicsLayerBlackBerry::addAnimation):
+ (WebCore::GraphicsLayerBlackBerry::pauseAnimation):
+ (WebCore::GraphicsLayerBlackBerry::removeAnimation):
+ (WebCore::GraphicsLayerBlackBerry::suspendAnimations):
+ (WebCore::GraphicsLayerBlackBerry::resumeAnimations):
+ (WebCore::GraphicsLayerBlackBerry::setContentsToImage):
+ (WebCore::GraphicsLayerBlackBerry::updateContentsImage):
+ (WebCore::GraphicsLayerBlackBerry::setContentsToCanvas):
+ (WebCore::GraphicsLayerBlackBerry::setContentsToMedia):
+ (WebCore::GraphicsLayerBlackBerry::hostLayerForSublayers):
+ (WebCore::GraphicsLayerBlackBerry::layerForSuperlayer):
+ (WebCore::GraphicsLayerBlackBerry::platformLayer):
+ (WebCore::GraphicsLayerBlackBerry::setDebugBackgroundColor):
+ (WebCore::GraphicsLayerBlackBerry::setDebugBorder):
+ (WebCore::GraphicsLayerBlackBerry::updateSublayerList):
+ (WebCore::GraphicsLayerBlackBerry::updateLayerPosition):
+ (WebCore::GraphicsLayerBlackBerry::updateLayerSize):
+ (WebCore::GraphicsLayerBlackBerry::updateAnchorPoint):
+ (WebCore::GraphicsLayerBlackBerry::updateTransform):
+ (WebCore::GraphicsLayerBlackBerry::updateChildrenTransform):
+ (WebCore::GraphicsLayerBlackBerry::updateMasksToBounds):
+ (WebCore::GraphicsLayerBlackBerry::updateContentsOpaque):
+ (WebCore::GraphicsLayerBlackBerry::updateBackfaceVisibility):
+ (WebCore::GraphicsLayerBlackBerry::updateLayerPreserves3D):
+ (WebCore::GraphicsLayerBlackBerry::updateLayerIsDrawable):
+ (WebCore::GraphicsLayerBlackBerry::updateFixedPosition):
+ (WebCore::GraphicsLayerBlackBerry::updateHasFixedContainer):
+ (WebCore::GraphicsLayerBlackBerry::updateHasFixedAncestorInDOMTree):
+ (WebCore::GraphicsLayerBlackBerry::updateLayerBackgroundColor):
+ (WebCore::GraphicsLayerBlackBerry::updateAnimations):
+ (WebCore::GraphicsLayerBlackBerry::updateContentsVideo):
+ (WebCore::GraphicsLayerBlackBerry::updateContentsRect):
+ (WebCore::GraphicsLayerBlackBerry::setupContentsLayer):
+ (WebCore::GraphicsLayerBlackBerry::updateOpacityOnLayer):
+ (WebCore::GraphicsLayerBlackBerry::contentsVisible):
+ * platform/graphics/blackberry/GraphicsLayerBlackBerry.h: Added.
+ (WebCore):
+ (GraphicsLayerBlackBerry):
+ (WebCore::GraphicsLayerBlackBerry::notifySyncRequired):
+ (WebCore::GraphicsLayerBlackBerry::notifyAnimationStarted):
+ (WebCore::GraphicsLayerBlackBerry::primaryLayer):
+ (WebCore::GraphicsLayerBlackBerry::contentsLayer):
+
+2012-03-07 Shinya Kawanaka <shinyak@chromium.org>
+
+ Refactoring: Remove Node::isContentElement and Node::isShadowElement.
+ https://bugs.webkit.org/show_bug.cgi?id=80501
+
+ Reviewed by Hajime Morita.
+
+ Removes Node::isContentElement and Node::isShadowElement. These methods are replaced
+ by hasTagName. However the tag name of HTMLContentElement was not consistent,
+ this patch make them consistent.
+
+ No new tests. Should be covered by existing tests.
+
+ * dom/Node.h:
+ * html/HTMLElement.h:
+ (WebCore::HTMLElement::isInsertionPoint):
+ (HTMLElement):
+ * html/HTMLSummaryElement.cpp:
+ (WebCore::SummaryContentElement::SummaryContentElement):
+ It uses HTMLNames::divTag as tagname. It should use HTMLNames::webkitShadowTagName.
+ * html/shadow/HTMLContentElement.h:
+ (HTMLContentElement):
+ * html/shadow/InsertionPoint.h:
+ (InsertionPoint):
+ (WebCore::InsertionPoint::isInsertionPoint):
+ (WebCore::isInsertionPoint):
+ * testing/Internals.cpp:
+ (WebCore::Internals::isValidContentSelect):
+ * testing/Internals.h:
+ (Internals):
+
+2012-03-07 Adam Barth <abarth@webkit.org>
+
+ ContainerNode::insertedIntoDocument and removedFromDocument use weak iteration patterns
+ https://bugs.webkit.org/show_bug.cgi?id=80569
+
+ Reviewed by Ryosuke Niwa.
+
+ This patch moves ContainerNode::insertedIntoDocument and
+ removedFromDocument to using a better iteration pattern in which we
+ collect all the nodes we're planning to iterate into a vector and then
+ iterate over them.
+
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::insertedIntoDocument):
+ (WebCore::ContainerNode::removedFromDocument):
+
+2012-03-07 Ami Fischman <fischman@chromium.org>
+
+ [Chromium] Allow CCLayerTreeHost::context() to be called even with the threaded compositor enabled.
+ https://bugs.webkit.org/show_bug.cgi?id=80565
+
+ Reviewed by James Robinson.
+
+ This gets triggered by the video HW decode+render path when threaded compositor is enabled
+ (https://chromiumcodereview.appspot.com/9639005/)
+
+ No new tests.
+
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::context):
+
+2012-03-07 Mike Lawther <mikelawther@chromium.org>
+
+ CSS3 calc: mixed absolute/percentages work for width, height, margin and padding
+ https://bugs.webkit.org/show_bug.cgi?id=79621
+
+ Reviewed by Andreas Kling.
+
+ ApplyPropertyLength in CSSStyleApplyPropery now handles mixed absolute/percentage
+ length expressions. All property handlers using this template now work with
+ mixed expressions.
+
+ This patch adds a new expression evaluator in CalculationValue.cpp. This is because
+ Length.[cpp|h] (in platform) cannot refer to CSSCalculationValue.[cpp|h] (in css)
+ due to layering restrictions.
+
+ Lengths can be copied, and so the expressions are stored in a hashmap, and only their
+ ids are copied along with Length. The expressions are RefCounted, and will get
+ cleaned up when the last referring Length is destructed.
+
+ * WebCore.exp.in:
+ * css/CSSCalculationValue.cpp:
+ (WebCore::CSSCalcPrimitiveValue::toCalcValue):
+ (CSSCalcPrimitiveValue):
+ (WebCore::CSSCalcBinaryOperation::toCalcValue):
+ (CSSCalcBinaryOperation):
+ * css/CSSCalculationValue.h:
+ (WebCore):
+ (CSSCalcExpressionNode):
+ (CSSCalcValue):
+ (WebCore::CSSCalcValue::toCalcValue):
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::ApplyPropertyLength::applyValue):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+ * css/CSSStyleSelector.h:
+ (CSSStyleSelector):
+ * platform/CalculationValue.cpp:
+ (WebCore::CalcExpressionBinaryOperation::evaluate):
+ (WebCore):
+ (WebCore::CalculationValue::create):
+ (WebCore::CalculationValue::evaluate):
+ * platform/CalculationValue.h:
+ (CalcExpressionNode):
+ (WebCore::CalcExpressionNode::~CalcExpressionNode):
+ (WebCore):
+ (CalculationValue):
+ (WebCore::CalculationValue::CalculationValue):
+ (CalcExpressionNumber):
+ (WebCore::CalcExpressionNumber::CalcExpressionNumber):
+ (WebCore::CalcExpressionNumber::evaluate):
+ (CalcExpressionLength):
+ (WebCore::CalcExpressionLength::CalcExpressionLength):
+ (WebCore::CalcExpressionLength::evaluate):
+ (CalcExpressionBinaryOperation):
+ (WebCore::CalcExpressionBinaryOperation::CalcExpressionBinaryOperation):
+ * platform/Length.cpp:
+ (WebCore):
+ (WebCore::Length::~Length):
+ (CalculationValueHandleMap):
+ (WebCore::CalculationValueHandleMap::CalculationValueHandleMap):
+ (WebCore::CalculationValueHandleMap::insert):
+ (WebCore::CalculationValueHandleMap::remove):
+ (WebCore::CalculationValueHandleMap::get):
+ (WebCore::calcHandles):
+ (WebCore::Length::Length):
+ (WebCore::Length::calculationValue):
+ (WebCore::Length::calculatedValue):
+ (WebCore::Length::calculatedMinValue):
+ (WebCore::Length::calculatedFloatValue):
+ (WebCore::Length::incrementCalculatedRef):
+ (WebCore::Length::decrementCalculatedRef):
+ (WebCore::Length::nonNanCalculatedValue):
+ * platform/Length.h:
+ (Length):
+ (WebCore::Length::Length):
+ (WebCore::Length::operator=):
+ (WebCore::Length::operator*=):
+ (WebCore::Length::value):
+ (WebCore::Length::setValue):
+ (WebCore::Length::calcValue):
+ (WebCore::Length::calcMinValue):
+ (WebCore::Length::calcFloatValue):
+ (WebCore::Length::isZero):
+ (WebCore::Length::isPositive):
+ (WebCore::Length::isNegative):
+ (WebCore::Length::isPercent):
+ (WebCore::Length::isSpecified):
+ (WebCore::Length::isCalculated):
+ (WebCore::Length::initFromLength):
+ (WebCore::Length::calculationHandle):
+
+2012-03-07 Kent Tamura <tkent@chromium.org>
+
+ Do not refer to resutlsButtonElement and cancelButtonElement to compute paddings of search popups
+ https://bugs.webkit.org/show_bug.cgi?id=80564
+
+ Reviewed by Hajime Morita.
+
+ We'd like to reduce dependency of resultsButtonElement and
+ cancelButtonElement from RenderTextControlSingleLine.
+
+ No behavior change.
+
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::clientPaddingLeft):
+ Use the left position of innerBlockElement, instead of the width of resultsButtonElement.
+ They are equivalent.
+ (WebCore::RenderTextControlSingleLine::clientPaddingRight):
+ Use <the container width - right position of innerBlockElement>,
+ instead of the width of the cancelButtonElement. They are
+ equivalent.
+
+2012-03-07 Mike Lawther <mikelawther@chromium.org>
+
+ use DEFINE_STATIC_LOCAL on Lengths to avoid exit time destructors
+ https://bugs.webkit.org/show_bug.cgi?id=80561
+
+ Reviewed by Eric Seidel.
+
+ This is in preparation for http://wkb.ug/79621 where a destructor is added to Length.
+
+ No new tests as this is not a behaviour change.
+
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::ApplyPropertyPageSize::getPageSizeFromName):
+
+2012-03-07 Adam Barth <abarth@webkit.org>
+
+ ContainerNode::willRemove uses a weak iteration pattern
+ https://bugs.webkit.org/show_bug.cgi?id=80530
+
+ Reviewed by Ryosuke Niwa.
+
+ This patch moves ContainerNode::willRemove to using a better iteration
+ pattern in which we collect all the nodes we're planning to iterate
+ into a vector and then iterate over them.
+
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::willRemove):
+
+2012-03-07 Kentaro Hara <haraken@chromium.org>
+
+ [V8][Performance] Optimize V8 bindings for HTMLElement.classList,
+ Element.dataset and Node.attributes
+ https://bugs.webkit.org/show_bug.cgi?id=80376
+
+ Reviewed by Adam Barth.
+
+ This patch improves the performance of HTMLElement.classList, Element.dataset
+ and Node.attributes by 6.4 times, 7.1 times and 10.9 times, respectively.
+
+ Previously, a 'hiddenReferenceName' string was allocated on v8::Handle and
+ created every time the DOM attribute is accessed, in spite of the fact that
+ the 'hiddenReferenceName' string is static.
+
+ This patch moves the 'hiddenReferenceName' string to v8::Persistent and makes it static.
+ Also, this patch removes 'if (!elementValue.IsEmpty() && elementValue->IsObject())',
+ since if 'element' exists, it is guaranteed that 'elementValue' is not empty
+ and is an Object.
+
+ Performance tests: https://bugs.webkit.org/attachment.cgi?id=130283
+
+ AppleWebKit/JavaScriptCore:
+ div.classList : 382ms
+ div.classList.foo = 123 : 335ms
+ div.dataset : 403ms
+ div.dataset.foo = 123 : 5250ms
+ div.attributes : 183ms
+
+ Chromium/V8 (without this patch):
+ div.classList : 9140ms
+ div.classList.foo = 123 : 9086ms
+ div.dataset : 9930ms
+ div.dataset.foo = 123 : 49698ms
+ div.attributes : 13489ms
+
+ Chromium/V8 (with this patch):
+ div.classList : 1435ms
+ div.classList.foo = 123 : 1470ms
+ div.dataset : 1400ms
+ div.dataset.foo = 123 : 30396ms
+ div.attributes : 1242ms
+
+ No tests. No change in behavior.
+
+ * bindings/v8/custom/V8DOMStringMapCustom.cpp: Modified as described above.
+ (WebCore::toV8):
+ * bindings/v8/custom/V8DOMTokenListCustom.cpp: Ditto.
+ (WebCore::toV8):
+ * bindings/v8/custom/V8NamedNodeMapCustom.cpp: Ditto.
+ (WebCore::toV8):
+
+ * bindings/v8/V8HiddenPropertyName.cpp: Defined a hidden property name string statically
+ to optimize the macro.
+ (WebCore):
+ (WebCore::V8HiddenPropertyName::hiddenReferenceName):
+ * bindings/v8/V8HiddenPropertyName.h: Modified to switch two prefixes "WebCore::HiddenProperty::"
+ and "WebCore::HiddenReference::", depending on whether a given name represents a hidden property
+ or a hidden reference.
+ (WebCore):
+ (V8HiddenPropertyName):
+
+2012-03-07 Kent Tamura <tkent@chromium.org>
+
+ Add RenderBoxModelObject::marginWidth() and marginHeight()
+ https://bugs.webkit.org/show_bug.cgi?id=80556
+
+ Reviewed by Kentaro Hara.
+
+ They make some code shorter.
+
+ No behavior change.
+
+ * rendering/RenderBoxModelObject.h:
+ (WebCore::RenderBoxModelObject::marginHeight): Added.
+ (WebCore::RenderBoxModelObject::marginWidth): Added.
+ * inspector/DOMNodeHighlighter.cpp: Use marginHeight() and/or marginWidth().
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::FloatWithRect::FloatWithRect): ditto.
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::checkFloatsInCleanLine): ditto.
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::repaintLayerRectsForImage): ditto.
+ * rendering/RenderDeprecatedFlexibleBox.cpp:
+ (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox): ditto.
+ (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox): ditto.
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::crossAxisMarginExtentForChild): ditto.
+ (WebCore::RenderFlexibleBox::computeNextFlexLine): ditto.
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::culledInlineAbsoluteRects): ditto.
+ (WebCore::RenderInline::culledInlineAbsoluteQuads): ditto.
+ (WebCore::RenderInline::culledInlineBoundingBox): ditto.
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::trackPieceRectWithMargins): ditto.
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::computeLogicalHeight): ditto.
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::computeControlHeight): ditto.
+
+2012-03-07 Jessie Berlin <jberlin@apple.com>
+
+ Clean Windows build fails after r110033
+ https://bugs.webkit.org/show_bug.cgi?id=80553
+
+ Rubber-stamped by Jon Honeycutt and Eric Seidel.
+
+ * WebCore.vcproj/WebCore.vcproj:
+ Update the expected location of the copied JSC WTF string implementation files.
+
+2012-03-07 Michael Nordman <michaeln@google.com>
+
+ [Chromium] Don't be so CRASH() happy in the bindings layer.
+ https://bugs.webkit.org/show_bug.cgi?id=75111
+ - change the v8 bindings generated code to check for the 'worker is terminating'
+ condition prior to committing a suicidal CRASH()
+ - fixup custom v8 bindings accordingly
+ - simplify bindings/generic/ActiveDOMCallback, there is no need for it to support
+ destruction on a different thread
+
+ Reviewed by David Levin.
+
+ No new tests, existing tests apply.
+
+ * bindings/generic/ActiveDOMCallback.cpp: Simplified in general.
+ (WebCore):
+ (WebCore::ActiveDOMCallback::ActiveDOMCallback):
+ (WebCore::ActiveDOMCallback::~ActiveDOMCallback):
+ (WebCore::ActiveDOMCallback::canInvokeCallback):
+ (WebCore::ActiveDOMCallback::isScriptControllerTerminating): New method to avoid CRASH()ing in exceptional conditions in v8 bindings.
+ * bindings/generic/ActiveDOMCallback.h: Derive from ContextDestructionObserver.
+ * bindings/js/WorkerScriptController.cpp:
+ (WebCore::WorkerScriptController::scheduleExecutionTermination): Use a mutex to provide a memory barrier.
+ (WebCore::WorkerScriptController::isExecutionTerminating): New supporting method to avoid CRASH()ing in exceptional conditions.
+ * bindings/js/WorkerScriptController.h:
+ (WorkerScriptController):
+ * bindings/scripts/CodeGeneratorV8.pm: Generates v8 bindding code that uses isScriptControllerTerminating to avoid CRASH()ing.
+ (GenerateCallbackImplementation):
+ * bindings/scripts/test/V8/V8TestCallback.cpp: Fixup expected outputs of the modified CodeGeneratorV8.pm script.
+ (WebCore::V8TestCallback::callbackWithClass1Param):
+ (WebCore::V8TestCallback::callbackWithClass2Param):
+ (WebCore::V8TestCallback::callbackWithStringList):
+ * bindings/v8/WorkerScriptController.cpp:
+ (WebCore::WorkerScriptController::WorkerScriptController): Initialize a new data member.
+ (WebCore::WorkerScriptController::scheduleExecutionTermination): Use a mutex to provide a memory barrier.
+ (WebCore::WorkerScriptController::isExecutionTerminating): New supporting method to avoid CRASH()ing in exceptional conditions.
+ * bindings/v8/WorkerScriptController.h: Add a pair of new data members, bool + mutex.
+ (WorkerScriptController):
+ * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
+ (WebCore::V8SQLStatementErrorCallback::handleEvent):
+ * bindings/v8/custom/V8MutationCallbackCustom.cpp:
+ (WebCore::V8MutationCallback::handleEvent):
+ * dom/ScriptExecutionContext.cpp:
+ (WebCore::ScriptExecutionContext::ScriptExecutionContext): Initilaize data members.
+ (WebCore::ScriptExecutionContext::stopActiveDOMObjects): Set m_activeDOMObjectsAreStopped.
+ * dom/ScriptExecutionContext.h: Add m_activeDOMObjectsAreStopped data member.
+ (WebCore::ScriptExecutionContext::activeDOMObjectsAreStopped): Simple getter.
+ (ScriptExecutionContext):
+
+2012-03-07 Kent Tamura <tkent@chromium.org>
+
+ Remove meaningless code in RenderTextControlSingleLine::preferredContentWidth()
+ https://bugs.webkit.org/show_bug.cgi?id=80493
+
+ Reviewed by Hajime Morita.
+
+ preferredContentWidth() added border+padding widths of the search result
+ button, search cancel button, and speech input button. It makes no sense
+ to make the intrinsic width wider by only their border+padding width,
+ not their content width.
+
+ The default borders and paddings of these buttons are 0 in all
+ platforms, and adding border or padding to these elements by page
+ authors made unreasonable behavior. So we had better remove this
+ code.
+
+ Tests: fast/forms/search/intrinsic-search-width-with-decoration-border-padding.html
+ fast/speech/intrinsic-input-width-with-speech-border-padding.html
+
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::preferredContentWidth):
+ Remove the meaningless code.
+ * rendering/RenderTextControlSingleLine.h:
+ (RenderTextControlSingleLine): Remove speechButtonElement(). It's unnecessary.
+
+2012-03-07 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r110126.
+ http://trac.webkit.org/changeset/110126
+ https://bugs.webkit.org/show_bug.cgi?id=80558
+
+ compile failed on AppleMac (Requested by ukai on #webkit).
+
+ * WebCore.exp.in:
+ * css/CSSCalculationValue.cpp:
+ * css/CSSCalculationValue.h:
+ (WebCore):
+ (CSSCalcExpressionNode):
+ (CSSCalcValue):
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::ApplyPropertyLength::applyValue):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+ * css/CSSStyleSelector.h:
+ * platform/CalculationValue.cpp:
+ * platform/CalculationValue.h:
+ * platform/Length.cpp:
+ (WebCore::newLengthArray):
+ * platform/Length.h:
+ (WebCore::Length::operator*=):
+ (WebCore::Length::value):
+ (WebCore::Length::setValue):
+ (Length):
+ (WebCore::Length::calcValue):
+ (WebCore::Length::calcMinValue):
+ (WebCore::Length::calcFloatValue):
+ (WebCore::Length::isZero):
+ (WebCore::Length::isPositive):
+ (WebCore::Length::isNegative):
+ (WebCore::Length::isPercent):
+ (WebCore::Length::isSpecified):
+
+2012-03-05 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
+
+ Make Node::dumpStatistics() work again
+ https://bugs.webkit.org/show_bug.cgi?id=80327
+
+ Reviewed by Ryosuke Niwa.
+
+ Update the code in dumpStatistics() to the latest attribute storage changes. Also
+ move the DUMP_NODE_STATISTICS define here from the Node.cpp, since its also used
+ by Document.h.
+
+ * dom/Node.cpp:
+ (WebCore::Node::dumpStatistics): Use more self-describing variable names.
+ * dom/Node.h:
+
+2012-03-07 Mike Lawther <mikelawther@chromium.org>
+
+ CSS3 calc: mixed absolute/percentages work for width, height, margin and padding
+ https://bugs.webkit.org/show_bug.cgi?id=79621
+
+ Reviewed by Andreas Kling.
+
+ ApplyPropertyLength in CSSStyleApplyPropery now handles mixed absolute/percentage
+ length expressions. All property handlers using this template now work with
+ mixed expressions.
+
+ This patch adds a new expression evaluator in CalculationValue.cpp. This is because
+ Length.[cpp|h] (in platform) cannot refer to CSSCalculationValue.[cpp|h] (in css)
+ due to layering restrictions.
+
+ Lengths can be copied, and so the expressions are stored in a hashmap, and only their
+ ids are copied along with Length. The expressions are RefCounted, and will get
+ cleaned up when the last referring Length is destructed.
+
+ * WebCore.exp.in:
+ * css/CSSCalculationValue.cpp:
+ (WebCore::CSSCalcPrimitiveValue::toCalcValue):
+ (CSSCalcPrimitiveValue):
+ (WebCore::CSSCalcBinaryOperation::toCalcValue):
+ (CSSCalcBinaryOperation):
+ * css/CSSCalculationValue.h:
+ (WebCore):
+ (CSSCalcExpressionNode):
+ (CSSCalcValue):
+ (WebCore::CSSCalcValue::toCalcValue):
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::ApplyPropertyLength::applyValue):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+ * css/CSSStyleSelector.h:
+ (CSSStyleSelector):
+ * platform/CalculationValue.cpp:
+ (WebCore::CalcExpressionBinaryOperation::evaluate):
+ (WebCore):
+ (WebCore::CalculationValue::create):
+ (WebCore::CalculationValue::evaluate):
+ * platform/CalculationValue.h:
+ (CalcExpressionNode):
+ (WebCore::CalcExpressionNode::~CalcExpressionNode):
+ (WebCore):
+ (CalculationValue):
+ (WebCore::CalculationValue::CalculationValue):
+ (CalcExpressionNumber):
+ (WebCore::CalcExpressionNumber::CalcExpressionNumber):
+ (WebCore::CalcExpressionNumber::evaluate):
+ (CalcExpressionLength):
+ (WebCore::CalcExpressionLength::CalcExpressionLength):
+ (WebCore::CalcExpressionLength::evaluate):
+ (CalcExpressionBinaryOperation):
+ (WebCore::CalcExpressionBinaryOperation::CalcExpressionBinaryOperation):
+ * platform/Length.cpp:
+ (WebCore):
+ (WebCore::Length::~Length):
+ (CalculationValueHandleMap):
+ (WebCore::CalculationValueHandleMap::CalculationValueHandleMap):
+ (WebCore::CalculationValueHandleMap::insert):
+ (WebCore::CalculationValueHandleMap::remove):
+ (WebCore::CalculationValueHandleMap::get):
+ (WebCore::calcHandles):
+ (WebCore::Length::Length):
+ (WebCore::Length::calculationValue):
+ (WebCore::Length::calculatedValue):
+ (WebCore::Length::calculatedMinValue):
+ (WebCore::Length::calculatedFloatValue):
+ (WebCore::Length::incrementCalculatedRef):
+ (WebCore::Length::decrementCalculatedRef):
+ (WebCore::Length::nonNanCalculatedValue):
+ * platform/Length.h:
+ (Length):
+ (WebCore::Length::Length):
+ (WebCore::Length::operator=):
+ (WebCore::Length::operator*=):
+ (WebCore::Length::value):
+ (WebCore::Length::setValue):
+ (WebCore::Length::calcValue):
+ (WebCore::Length::calcMinValue):
+ (WebCore::Length::calcFloatValue):
+ (WebCore::Length::isZero):
+ (WebCore::Length::isPositive):
+ (WebCore::Length::isNegative):
+ (WebCore::Length::isPercent):
+ (WebCore::Length::isSpecified):
+ (WebCore::Length::isCalculated):
+ (WebCore::Length::initFromLength):
+ (WebCore::Length::calculationHandle):
+
+2012-03-07 Emil A Eklund <eae@chromium.org>
+
+ Change remaining scroll methods to integers
+ https://bugs.webkit.org/show_bug.cgi?id=80539
+
+ Reviewed by Eric Seidel.
+
+ No new tests, no new functionality.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::scrollByRecursively):
+ (WebCore::RenderLayer::scrollToOffset):
+ (WebCore::RenderLayer::scrollRectToVisible):
+ (WebCore::RenderLayer::scrollToXOffset):
+ (WebCore::RenderLayer::scrollToYOffset):
+ Change scrollTo methods to take integer x and y values as the actual
+ scrolling is done in increments of full pixels.
+
+ (WebCore::cornerStart):
+ (WebCore::RenderLayer::scrollWidth):
+ (WebCore::RenderLayer::scrollHeight):
+ Change scrollWidth/Height to return pixel snapped values and remove
+ pixelSnapped versions of same as all callers either used snapped the
+ values or used the pixelSnapped versions of these methods.
+
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::scrollWidth):
+ Change scrollWidth to return snapped client width.
+
+ * rendering/RenderListBox.h:
+ Change scrollSize, scrollPosition and setScrollOffset methods to use
+ integers in accordance with the interface defined by ScrollableArea.
+
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::write):
+
+2012-03-07 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
+
+ Implement getAttributeNode() in terms of ElementAttributeData instead of NamedNodeMap
+ https://bugs.webkit.org/show_bug.cgi?id=80541
+
+ Reviewed by Ryosuke Niwa.
+
+ DOM methods exposed in Element and NamedNodeMap are now implemented in terms of
+ ElementAttributeData. The difference between them is that Element methods can early
+ return if there's no attribute storage.
+
+ * dom/Element.cpp:
+ (WebCore::Element::getAttributeNode):
+ Removed the manual lowercasing letting our existing mechanism in
+ ElementAttributeData::getAttributeItemIndex() take care of it. I considered that
+ this could be an optimization, but testing a few Dromaeo tests (dom-attr,
+ jslib-attr-jquery, jslib-attr-prototype) the difference isn't significant. It
+ shouldn't affect correctness either.
+
+ (WebCore::Element::getAttributeNodeNS):
+ * dom/ElementAttributeData.cpp:
+ * dom/ElementAttributeData.h:
+ (ElementAttributeData):
+ (WebCore::ElementAttributeData::getAttributeNode):
+ (WebCore):
+ * dom/NamedNodeMap.cpp:
+ (WebCore::NamedNodeMap::getNamedItem):
+ (WebCore::NamedNodeMap::getNamedItemNS):
+ * dom/NamedNodeMap.h:
+ (NamedNodeMap):
+
+2012-03-07 James Robinson <jamesr@chromium.org>
+
+ [chromium] Support printing WebGL content in threaded compositor
+ https://bugs.webkit.org/show_bug.cgi?id=80464
+
+ Reviewed by Kenneth Russell.
+
+ Do the readback on the WebGL context instead of the compositor's context since we cannot use the latter from the
+ main thread. Since we're on the WebGL context, we have to be careful to restore any state we change.
+
+ Tested printing manually with threaded compositing enabled.
+
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::paintRenderedResultsToCanvas):
+ * platform/graphics/chromium/WebGLLayerChromium.h:
+ (WebGLLayerChromium):
+
+2012-03-07 Adam Barth <abarth@webkit.org>
+
+ Remove #define private public from WebCache.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=80520
+
+ Reviewed by Eric Seidel.
+
+ Add some accessors for state used by WebCache.cpp.
+
+ * loader/cache/MemoryCache.h:
+ (WebCore::MemoryCache::minDeadCapacity):
+ (WebCore::MemoryCache::maxDeadCapacity):
+ (WebCore::MemoryCache::capacity):
+ (WebCore::MemoryCache::liveSize):
+ (WebCore::MemoryCache::deadSize):
+ (MemoryCache):
+
+2012-03-07 Kentaro Hara <haraken@chromium.org>
+
+ [V8][Performance] Optimize Element.firstElementChild, Element.lastElementChild,
+ Element.previousElementSibling, Element.nextElementSibling, Node.parentElement
+ https://bugs.webkit.org/show_bug.cgi?id=80506
+
+ Reviewed by Adam Barth.
+
+ This patch improves the performance of Element.firstElementChild by 5.8 times,
+ Element.lastElementChild by 6.2 times, Element.previousElementSibling by 7.1 times,
+ Element.nextElementSibling by 7.1 times, and Node.parentElement by 6.7 times.
+
+ Previously, while toV8(Node*) caches a wrapper object on a node object
+ (i.e. node->wrapper(), node->setWrapper()), toV8(Element*) does not
+ cache a wrapper object.
+
+ This patch removes toV8(Element*), so that DOM attribute getters that return
+ Element* use toV8(Node*). This change makes these DOM attribute getters
+ cache the wrapper object on a node object. This optimization is already
+ implemented in JavaScriptCore.
+
+ Performance tests: https://bugs.webkit.org/attachment.cgi?id=130594
+
+ The test results in my local Mac environment are as follows:
+
+ AppleWebKit/JavaScriptCore:
+ div.firstElementChild : 1162ms
+ div.lastElementChild : 1016ms
+ div.previousElementSibling : 918ms
+ div.nextElementSibling : 900ms
+ div.parentElement : 901ms
+
+ Chromium/V8 (without this patch):
+ div.firstElementChild : 9515ms
+ div.lastElementChild : 9449ms
+ div.previousElementSibling : 9254ms
+ div.nextElementSibling : 9315ms
+ div.parentElement : 9380ms
+
+ Chromium/V8 (with this patch):
+ div.firstElementChild : 1628ms
+ div.lastElementChild : 1527ms
+ div.previousElementSibling : 1310ms
+ div.nextElementSibling : 1310ms
+ div.parentElement : 1410ms
+
+ No tests. No change in behavior.
+
+ * dom/Element.idl: Removed toV8(Element*)
+ * bindings/v8/custom/V8NodeCustom.cpp: Ditto.
+ (WebCore::toV8Slow):
+ * bindings/scripts/CodeGeneratorV8.pm: Ditto.
+ (GenerateHeader):
+
+ * bindings/v8/custom/V8ElementCustom.cpp: Removed.
+ * Target.pri: Removed V8ElementCustom.cpp.
+ * UseV8.cmake: Ditto.
+ * WebCore.gypi: Ditto.
+
+2012-03-07 Joshua Bell <jsbell@chromium.org>
+
+ [Chromium] IndexedDB: V8LocalContext creation in IDBKey extraction/injection is slow
+ https://bugs.webkit.org/show_bug.cgi?id=80358
+
+ Cache a re-usable context (per isolate) for cases like IDB's key/SSV extraction/injection,
+ where no user script is run. This yields a 3x-4x performance improvement in basic IDB
+ operations.
+
+ Reviewed by Tony Chang.
+
+ No new tests - no behavior changes.
+
+ * bindings/v8/IDBBindingUtilities.cpp:
+ (WebCore::createIDBKeyFromSerializedValueAndKeyPath):
+ (WebCore::injectIDBKeyIntoSerializedValue):
+ * bindings/v8/V8Binding.h:
+ (WebCore::V8BindingPerIsolateData::auxiliaryContext):
+ (V8BindingPerIsolateData):
+ * bindings/v8/V8Utilities.cpp:
+ (WebCore::V8AuxiliaryContext::V8AuxiliaryContext):
+ (WebCore::V8AuxiliaryContext::~V8AuxiliaryContext):
+ (WebCore::V8AuxiliaryContext::auxiliaryContext):
+ * bindings/v8/V8Utilities.h:
+ (V8AuxiliaryContext):
+
+2012-03-07 Nat Duca <nduca@chromium.org>
+
+ [chromium] Remove unused wasRecreate variable
+ https://bugs.webkit.org/show_bug.cgi?id=80533
+
+ Reviewed by Adrienne Walker.
+
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
+
+2012-03-07 Ryan Sleevi <rsleevi@chromium.org>
+
+ [chromium] Update GYP files to reflect file deletes/renames
+ https://bugs.webkit.org/show_bug.cgi?id=80525
+
+ Reviewed by Ryosuke Niwa.
+
+ No change in functionality, so no tests.
+
+ * WebCore.gypi:
+ Updated AppleMac private headers due to r109877
+ Updated platform/qt references due to r109542
+ Updated platform/mac references due to r109147
+ Updated platform/mac references due to r108956
+
+2012-03-07 Eric Carlson <eric.carlson@apple.com>
+
+ Html5 video element Useragent string is Quicktime
+ https://bugs.webkit.org/show_bug.cgi?id=46241
+
+ Reviewed by Daniel Bates.
+
+ Test: http/tests/media/video-useragent.html
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::mediaPlayerUserAgent): Return the UA string for the current source.
+ * html/HTMLMediaElement.h:
+
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::MediaPlayer::userAgent): New, return the client's mediaPlayerUserAgent.
+ * platform/graphics/MediaPlayer.h:
+ (WebCore::MediaPlayerClient::mediaPlayerUserAgent):
+
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
+ (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): Tell AVFoundation to set
+ the UA header.
+
+2012-03-07 Scott Byer <scottbyer@chromium.org>
+
+ Get ScrollAnimatorNone to handle the stop and reverse cases.
+ https://bugs.webkit.org/show_bug.cgi?id=80455
+
+ Reviewed by James Robinson.
+
+ Chromium webkit_unit_tests ScrollAnimatorNoneTest.ScrollStopInMiddle and
+ ScrollAnimatorNoneTest.ReverseInMiddle.
+
+ * platform/ScrollAnimatorNone.cpp:
+ (WebCore::ScrollAnimatorNone::PerAxisData::updateDataFromParameters):
+
+2012-03-07 Yong Li <yoli@rim.com>
+
+ RenderImage ignores its percent width/height when setContainerSizeForRenderer
+ https://bugs.webkit.org/show_bug.cgi?id=80431
+
+ Reviewed by George Staikos.
+
+ Not only respect fixed width/height explicitly specified in img element, but also
+ respect percent width/height when determining container size for images.
+
+ No new tests because there is no functional change but only internal buffer sizes.
+
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::computeReplacedLogicalWidth):
+
+2012-03-06 Benjamin Poulain <bpoulain@apple.com>
+
+ [Mac] Update the configuration files for iOS
+ https://bugs.webkit.org/show_bug.cgi?id=80435
+
+ Reviewed by David Kilzer.
+
+ * Configurations/WebCore.xcconfig:
+
+2012-03-07 Dana Jansens <danakj@chromium.org>
+
+ [chromium] Cull occluded tiles during paint
+ https://bugs.webkit.org/show_bug.cgi?id=76838
+
+ Reviewed by Adrienne Walker.
+
+ Using CCOcclusionTracker instead of the old custom paint occlusion
+ tracking. Stops painting tiles when the tile is not visible.
+
+ CCOcclusionTracker only uses Layer::opaque() for determining
+ occlusion so far. The Layer::addSelfToOccludedRegion is being
+ replaced by a superior method in CCOcclusionTracker that will
+ work for both threads, so removing that support here.
+
+ Unit test: TiledLayerChromiumTest.cpp
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::paintContentsIfDirty):
+ (WebCore::ContentLayerChromium::idlePaintContentsIfDirty):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ (ContentLayerChromium):
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::paintContentsIfDirty):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::idlePaintContentsIfDirty):
+ (LayerChromium):
+ * platform/graphics/chromium/TiledLayerChromium.cpp:
+ (WebCore):
+ (WebCore::contentToLayerTransform):
+ (WebCore::TiledLayerChromium::prepareToUpdateTiles):
+ (WebCore::TiledLayerChromium::prepareToUpdate):
+ (WebCore::TiledLayerChromium::prepareToUpdateIdle):
+ * platform/graphics/chromium/TiledLayerChromium.h:
+ (TiledLayerChromium):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::paintContentsIfDirty):
+ (WebCore::CCLayerTreeHost::paintLayerContents):
+
+2012-03-07 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
+
+ Implement removeAttributeNode() in terms of ElementAttributeData instead of NamedNodeMap
+ https://bugs.webkit.org/show_bug.cgi?id=80522
+
+ Reviewed by Andreas Kling.
+
+ DOM methods exposed in Element and NamedNodeMap are now implemented in terms of
+ ElementAttributeData. A helper function takeAttribute() was added to increase
+ code sharing. Also removed some unneeded methods.
+
+ * dom/Element.cpp:
+ (WebCore::Element::removeAttribute): Use ElementAttributeData function directly.
+ (WebCore::Element::removeAttributeNode): Get the index manually and use new
+ takeAttribute() directly.
+ * dom/Element.h:
+ (Element): Remove unused removeAttribute(unsigned index).
+ * dom/ElementAttributeData.cpp:
+ (WebCore::ElementAttributeData::takeAttribute): Like removeAttribute() but
+ returns a reference to old Attr.
+ (WebCore):
+ * dom/ElementAttributeData.h:
+ (ElementAttributeData):
+ * dom/NamedNodeMap.cpp:
+ (WebCore::NamedNodeMap::removeNamedItem): Avoid looking up the property twice by
+ getting the index directly from the name, instead of going through the qualified name.
+ * dom/NamedNodeMap.h: Remove now unused internal methods for removing attributes.
+
+2012-03-07 Alexey Proskuryakov <ap@apple.com>
+
+ Merge AsyncFileStream with FileStreamProxy
+ https://bugs.webkit.org/show_bug.cgi?id=80325
+
+ Build fix.
+
+ * WebCore.xcodeproj/project.pbxproj: Removed files that got mysteriously added to the project
+ with a merge.
+
+2012-03-07 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Unreviewed ASSERT failure fix.
+ https://bugs.webkit.org/show_bug.cgi?id=75568
+
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::styleDidChange):
+ Fix a bad merge of the patch, we should call updateCachedSizeForOverflowClip if we lose
+ our layer.
+
+2012-03-07 ChangSeok Oh <shivamidow@gmail.com>
+
+ [EFL] Revise PlatformKeyboardEventEfl and EflKeyboardUtilities
+ https://bugs.webkit.org/show_bug.cgi?id=80511
+
+ Reviewed by Gustavo Noronha Silva.
+
+ Added 'const' keyword in front of argument of keyIdentifiersForEvasKeyName/windowsKeyCodeForEvasKeyName.
+ Since they should not be changed while processing each function.
+ And initialized missing member variables of PlatformKeyboardEventEfl.
+
+ No new tests, since no new feature.
+
+ * platform/efl/EflKeyboardUtilities.cpp:
+ (WebCore::keyIdentifierForEvasKeyName): Added const keyword
+ (WebCore::windowsKeyCodeForEvasKeyName): Added const keyword
+ * platform/efl/EflKeyboardUtilities.h:
+ (WebCore):
+ * platform/efl/PlatformKeyboardEventEfl.cpp:
+ (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
+
+2012-03-07 Hironori Bono <hbono@chromium.org>
+
+ [Chromium] Mirror the resizer image of an RTL element when WTF_USE_RTL_SCROLLBAR is 1
+ https://bugs.webkit.org/show_bug.cgi?id=9223
+
+ Reviewed by Tony Chang.
+
+ This change mirrors a resizer image of an RTL element horizontall as Firefox
+ does. This change also mirrors its dragging behavior, i.e. draging the resizer
+ of an RTL element to the left side increases its width. (This feature is enabled
+ only when WTF_USE_RTL_SCROLLBAR is 1.)
+
+ Test: platform/chromium/scrollbars/drag-rtl-resizer.html
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::resize): Mirrored the x coordinate of mouse positions
+ when mirroring a resizer.
+ (WebCore::RenderLayer::offsetFromResizeCorner): Returned the offset from the
+ bottom-left corner when rendering a resizer there.
+ (WebCore::RenderLayer::drawPlatformResizerImage): Mirrored the resizer bitmap
+ horizontally when rendering a resizer to the bottom-left corner.
+
+2012-03-07 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Lazily allocate overflow: hidden layers if we have overflowing content
+ https://bugs.webkit.org/show_bug.cgi?id=75568
+
+ Reviewed by David Hyatt.
+
+ Change covered by the existing tests and the tons of rebaselines.
+
+ This change makes us lazily allocate our RenderLayer for overflow: hidden layers only.
+
+ Apart from saving some memory, it will also speed up the rendering as we don't need to
+ go through the layer's machinery when painting and hit testing.
+
+ On http://dglazkov.github.com/performance-tests/biggrid.html benchmark, this puts the
+ overflow: hidden case in par with the overflow: visible case when scrolling that is a
+ very-smooth scrolling vs a jerky one currently (mostly due to the painting speedup).
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::updateScrollInfoAfterLayout):
+ Changed this method to update our size cache if needed.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::paint):
+ (WebCore::RenderBlock::isPointInOverflowControl):
+ * rendering/RenderBlock.h:
+ (RenderBlock):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::willBeDestroyed):
+ (WebCore::RenderBox::styleDidChange):
+ (WebCore::RenderBox::layout):
+ (WebCore::RenderBox::scrollWidth):
+ (WebCore::RenderBox::scrollHeight):
+ (WebCore::RenderBox::scrollLeft):
+ (WebCore::RenderBox::scrollTop):
+ (WebCore::RenderBox::setScrollLeft):
+ (WebCore::RenderBox::setScrollTop):
+ (WebCore::RenderBox::includeVerticalScrollbarSize):
+ (WebCore::RenderBox::includeHorizontalScrollbarSize):
+ (WebCore::RenderBox::scrolledContentOffset):
+ (WebCore::RenderBox::pushContentsClip):
+ (WebCore::RenderBox::popContentsClip):
+ (WebCore::RenderBox::addLayoutOverflow):
+ Added layer() check to the previous call sites.
+
+ (WebCore::cachedSizeForOverflowClipMap):
+ (WebCore::RenderBox::cachedSizeForOverflowClip):
+ (WebCore::RenderBox::updateCachedSizeForOverflowClip):
+ (WebCore::RenderBox::clearCachedSizeForOverflowClip):
+ This logic stores the size information for later repainting.
+ It is in practice replicating what RenderLayer is doing.
+ I had to disable an ASSERT here as it would trigger in NRWT but
+ not under DRT. I haven't found by code inspection what was wrong.
+
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::hasOverflowClipWithLayer):
+ Helper function.
+
+ (WebCore::RenderBox::requiresLayerForOverflowClip):
+ This determines if we can survive without a RenderLayer. For the moment,
+ it is very conservative.
+
+ (WebCore::RenderBox::requiresLayer):
+ Updated to call requiresLayerForOverflowClip.
+
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::ensureLayer):
+ Added this function to create and add a new layer.
+
+ (WebCore::RenderBoxModelObject::willBeDestroyed):
+ (WebCore::RenderBoxModelObject::styleDidChange):
+ Patched those method to handle updating / removing
+ cached size entries.
+
+ * rendering/RenderBoxModelObject.h:
+ (WebCore::RenderBoxModelObject::requiresLayer):
+ Pushed the overflowClip check down to RenderBox as only RenderBoxes can have
+ overflow clips.
+
+ * rendering/RenderTableRow.h:
+ (WebCore::RenderTableRow::requiresLayer):
+ Added a comment about why we need a layout for table rows.
+
+ * rendering/RenderDeprecatedFlexibleBox.cpp:
+ (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutBlock):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::layout):
+ Updated those call sites to use RenderBlock::updateScrollInfoAfterLayout
+ or RenderBox::updateCachedSizeForOverflowClip. The current logic is really
+ not tight proof and would need to be rethought to not avoid cases.
+
+2012-03-07 Konrad Piascik <kpiascik@rim.com>
+
+ [BlackBerry] Fix warnings in CookieMap
+ https://bugs.webkit.org/show_bug.cgi?id=80512
+
+ Reviewed by Rob Buis.
+
+ No new tests. No behavioural changes.
+
+ * platform/blackberry/CookieMap.cpp:
+ (WebCore::CookieMap::addOrReplaceCookie):
+ (WebCore::CookieMap::removeCookie):
+ (WebCore::CookieMap::getAllCookies):
+ (WebCore::CookieMap::updateOldestCookie):
+
+2012-03-07 Levi Weintraub <leviw@chromium.org>
+
+ Update usage of LayoutUnits in InlineBox and InlineFlowBox
+ https://bugs.webkit.org/show_bug.cgi?id=80051
+
+ Reviewed by Eric Seidel.
+
+ Updating LayoutUnit vs Integer usage in InlineBox and InlineFlowBox. While the
+ line box tree remains floating point, margins are now subpixel, and rects from
+ the render tree use LayoutUnits. For more information, see the LayoutUnit wiki
+ page: https://trac.webkit.org/wiki/LayoutUnit
+
+ No new tests. No change in behavior.
+
+ * rendering/InlineBox.cpp:
+ (WebCore::InlineBox::flipForWritingMode): Changing over to LayoutUnits.
+ * rendering/InlineBox.h:
+ (InlineBox):
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::getFlowSpacingLogicalWidth): Returning a LayoutUnit
+ instead of an integer, as it uses margin which is a LayoutUnit.
+ (WebCore::InlineFlowBox::placeBoxesInInlineDirection): Using a LayoutUnit for
+ margin.
+ (WebCore::InlineFlowBox::placeBoxesInBlockDirection): Build fixes for when
+ LayoutUnits are subpixel.
+ (WebCore::InlineFlowBox::paintFillLayer): Ditto.
+ * rendering/InlineFlowBox.h:
+ (WebCore::InlineFlowBox::marginBorderPaddingLogicalLeft): Returning a LayoutUnit
+ instead of an integer since margin is a LayoutUnit.
+ (WebCore::InlineFlowBox::marginBorderPaddingLogicalRight): Ditto.
+ (InlineFlowBox):
+ (WebCore::InlineFlowBox::logicalLeftLayoutOverflow): Adding a static_cast that's
+ redundant now, but required when we switch to subpixel LayoutUnits.
+ (WebCore::InlineFlowBox::logicalRightLayoutOverflow): Ditto.
+ (WebCore::InlineFlowBox::logicalLeftVisualOverflow): Ditto.
+ (WebCore::InlineFlowBox::logicalRightVisualOverflow): Ditto.
+
+2012-03-07 Qi Zhang <qi.2.zhang@nokia.com>
+
+ [Qt] Unskip http/tests/websocket/tests/hixie76/long-invalid-header.html
+ https://bugs.webkit.org/show_bug.cgi?id=80516
+
+ Reviewed by Csaba Osztrogonác.
+
+ Missed some files related to websocket, take them in.
+
+ * Target.pri:
+
+2012-03-05 Alexey Proskuryakov <ap@apple.com>
+
+ Merge AsyncFileStream with FileStreamProxy
+ https://bugs.webkit.org/show_bug.cgi?id=80325
+
+ Reviewed by Filip Pizlo.
+
+ AsyncFileStream sounds like a platform concept, but the implementation is web specific.
+ Better to just keep it in one place.
+
+ This is a step toward decoupling blob scheme support from ResourceHandle, which is supposed
+ to be an interface to platform networking APIs only, and definitely shouldn't know about
+ Web concepts.
+
+ No change in functionality, so no tests.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * Target.pri:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ Updated for moved and removed files. Namely, platform/AsyncFileStream is dead, and
+ fileapi/FileStreamProxy is now fileapi/AsyncFileStream.
+
+ * fileapi/AsyncFileStream.cpp: Copied from Source/WebCore/fileapi/FileStreamProxy.cpp.
+ (WebCore::AsyncFileStream::AsyncFileStream):
+ (WebCore::AsyncFileStream::create):
+ (WebCore::AsyncFileStream::~AsyncFileStream):
+ (WebCore::AsyncFileStream::fileThread):
+ (WebCore::didStart):
+ (WebCore::AsyncFileStream::startOnFileThread):
+ (WebCore::AsyncFileStream::stop):
+ (WebCore::derefProxyOnContext):
+ (WebCore::AsyncFileStream::stopOnFileThread):
+ (WebCore::didGetSize):
+ (WebCore::AsyncFileStream::getSize):
+ (WebCore::AsyncFileStream::getSizeOnFileThread):
+ (WebCore::didOpen):
+ (WebCore::AsyncFileStream::openForRead):
+ (WebCore::AsyncFileStream::openForReadOnFileThread):
+ (WebCore::AsyncFileStream::openForWrite):
+ (WebCore::AsyncFileStream::openForWriteOnFileThread):
+ (WebCore::AsyncFileStream::close):
+ (WebCore::AsyncFileStream::closeOnFileThread):
+ (WebCore::didRead):
+ (WebCore::AsyncFileStream::read):
+ (WebCore::AsyncFileStream::readOnFileThread):
+ (WebCore::didWrite):
+ (WebCore::AsyncFileStream::write):
+ (WebCore::AsyncFileStream::writeOnFileThread):
+ (WebCore::didTruncate):
+ (WebCore::AsyncFileStream::truncate):
+ (WebCore::AsyncFileStream::truncateOnFileThread):
+ * fileapi/AsyncFileStream.h: Copied from Source/WebCore/fileapi/FileStreamProxy.h.
+ (WebCore):
+ (AsyncFileStream):
+ (WebCore::AsyncFileStream::client):
+ (WebCore::AsyncFileStream::setClient):
+ * fileapi/FileStreamProxy.cpp: Removed.
+ * fileapi/FileStreamProxy.h: Removed.
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::createAsyncFileStream):
+ * platform/AsyncFileStream.h: Removed.
+ Fewer files!
+
+ * platform/network/BlobRegistry.h: Removed createResourceHandle(). It's logically a method
+ on in-process BlobRegistryImpl only, and we no longer need to call this from platform code.
+
+ * platform/network/BlobRegistryImpl.cpp:
+ (WebCore::createResourceHandle):
+ (WebCore::registerBlobResourceHandleConstructor):
+ (WebCore::BlobRegistryImpl::registerBlobURL):
+ * platform/network/BlobRegistryImpl.h:
+ Except for chromium, "blob" is a scheme that's handled internally. Added hooks for that.
+
+ * platform/network/ResourceHandle.cpp:
+ (WebCore::builtinResourceHandleConstructorMap):
+ (WebCore::ResourceHandle::registerBuiltinConstructor):
+ (WebCore::ResourceHandle::create):
+ * platform/network/ResourceHandle.h:
+ Added a way for other code to register handlers for URL schemes. Non-Chromium platforms
+ use this for blob: now.
+
+2012-03-07 Dan Bernstein <mitz@apple.com>
+
+ <rdar://problem/10923294> REGRESSION (r100847): Entries are clipped out in Day One
+ https://bugs.webkit.org/show_bug.cgi?id=80494
+
+ Reviewed by Sam Weinig.
+
+ Test: fast/dom/HTMLDocument/width-and-height.html
+
+ * html/HTMLDocument.idl: Reverted r100847 by re-enabling the width and height properties
+ in the JavaScript bindings.
+
+2012-03-07 Philippe Normand <pnormand@igalia.com>
+
+ [GTK] media/audio-garbage-collect.html is flaky
+ https://bugs.webkit.org/show_bug.cgi?id=72698
+
+ Reviewed by Xan Lopez.
+
+ Call ::hasPendingActivity() instead of ::paused() when checking if
+ the audio element is still active. This is similar to what the
+ image element (another ActiveDOMObject implementation) does just
+ above. This contributes to fixing the audio-garbage-collect.html
+ test.
+
+ * bindings/js/JSNodeCustom.cpp:
+ (WebCore::isReachableFromDOM):
+
+2012-03-07 Adele Peterson <adele@apple.com>
+
+ REGRESSION(r96566): Cursor is I-beam upon dragging an attachment in mail
+ https://bugs.webkit.org/show_bug.cgi?id=80458
+ <rdar://problem/10873195>
+
+ Reviewed by Dan Bernstein.
+
+ No tests because we currently don't have any test machinery for cursors.
+
+ Make sure the shortcut to always use an iBeam cursor during selection isn't used during dragging.
+ Before r96566, we handled plugin cursors as a special case before calling into selectCursor, so we never hit this code path.
+
+ * page/EventHandler.cpp: (WebCore::EventHandler::selectCursor):
+
+2012-03-07 ChangSeok Oh <shivamidow@gmail.com>
+
+ [EFL] Key press event is not processed properly.
+ https://bugs.webkit.org/show_bug.cgi?id=80491
+
+ Reviewed by Gustavo Noronha Silva.
+
+ This issue is related with mutation observer feature.
+ If enter key is pressed, then a keyboard event should be processed
+ and reach to the mutation observer, but it doesn't.
+ Some special keys like Enter, Backspace and Tab key should be processed
+ and change to a single character code, but EFL port hasn't handled like that.
+
+ At least we can verify this with following two tests as I know. but they require another
+ functionality for bug79601. I'm going to submit the patch for it after this one.
+
+ Test: fast/mutation/end-of-task-delivery.html
+ fast/mutation/inline-event-listener.html
+
+ * platform/efl/EflKeyboardUtilities.cpp:
+ (WebCore::singleCharacterString):
+ (WebCore):
+ * platform/efl/EflKeyboardUtilities.h:
+ (WebCore):
+ * platform/efl/PlatformKeyboardEventEfl.cpp:
+ (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
+
+2012-03-07 Gavin Peters <gavinp@chromium.org>
+
+ Add Histograms for reporting on PageCache reject reasons
+ https://bugs.webkit.org/show_bug.cgi?id=80187
+
+ Enhance the PageCache debug mode so that it uses Histograms to
+ report on causes of failure. Turn on the debug printing path
+ even in non-debug Chromium builds, so these histograms will
+ update.
+
+ Reviewed by Brady Eidson.
+
+ No new tests, does not change behaviour.
+
+ * history/PageCache.cpp:
+ (WebCore):
+ (WebCore::logCanCacheFrameDecision):
+ (WebCore::logCanCachePageDecision):
+ (WebCore::PageCache::canCache):
+
+2012-03-07 Elliot Poger <epoger@google.com>
+
+ [Chromium] Remove use_skia option from GYP
+ https://bugs.webkit.org/show_bug.cgi?id=75811
+
+ Reviewed by Tony Chang.
+
+ * WebCore.gyp/WebCore.gyp:
+
+2012-03-07 Yoshifumi Inoue <yosin@chromium.org>
+
+ [Forms] Introduce LabelableElement to share "labels" attribute implementation
+ https://bugs.webkit.org/show_bug.cgi?id=80392
+
+ Reviewed by Kent Tamura.
+
+ This patch introduces new class LabelableElement as base class of
+ HTMLFormControlElement for sharing implementation of "labels"
+ attribute among form-associate elements, "meter" element, and
+ "progress" element.
+
+ This patch allows us to change base class of HTMLMeterElement and
+ HTMLProgressElement dervied from HTMLFormControlElement to
+ HTMLElement for remove them from HTMLFormElement::m_associatedFormElements
+ where we don't need to put "meter" and "progress" elements(bug 80381.)
+
+ This patch also changes implementation of isLabelable using virtual
+ method rather than sequence of hasTagName for execution speed and
+ better readability.
+
+ No new tests are required. No behavior changes.
+
+ * CMakeLists.txt: Add LabelableElement.cpp and .h
+ * GNUmakefile.list.am: Add LabelableElement.cpp and .h
+ * Target.pri: Add LabelableElement.cpp and .h
+ * WebCore.gypi: Add LabelableElement.cpp and .h
+ * WebCore.vcproj/WebCore.vcproj: Add LabelableElement.cpp and .h
+ * WebCore.xcodeproj/project.pbxproj: Add LabelableElement.cpp and .h
+ * html/HTMLButtonElement.h: Implement isLabelable.
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElement::HTMLFormControlElement): Change direct base class.
+ * html/HTMLFormControlElement.h:
+ (HTMLFormControlElement): Change direct base class.
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::isLabelable): Removed to use virtual method instead of hasTagName.
+ (WebCore):
+ * html/HTMLInputElement.h: Declaration of isLabelable.
+ * html/HTMLKeygenElement.h: Implement isLabelable.
+ * html/HTMLMeterElement.h: Implement isLabelable.
+ * html/HTMLProgressElement.h: Implement isLabelable.
+ * html/HTMLSelectElement.h: Implement isLabelable.
+ * html/HTMLTextAreaElement.h: Implement isLabelable.
+ * html/LabelableElement.cpp: Added.
+ (WebCore):
+ (WebCore::LabelableElement::LabelableElement):
+ (WebCore::LabelableElement::~LabelableElement):
+ (WebCore::LabelableElement::labels): Moved from HTMLFormControlElement.
+ * html/LabelableElement.h: Added.
+ (WebCore):
+ (LabelableElement):
+
+2012-03-07 Arun Patole <bmf834@motorola.com>
+
+ HTMLTrackElement.idl doesn't have default attribute.
+ https://bugs.webkit.org/show_bug.cgi?id=80116
+
+ Reviewed by Kentaro Hara.
+
+ Renamed isDefault to 'default' so that in JS, it will be track.default instead of track.isDefault.
+ * html/HTMLTrackElement.idl:
+
+2012-03-07 Zoltan Horvath <zoltan@webkit.org>
+
+ [Qt] Add qmake config tests for JPEG and PNG library
+ https://bugs.webkit.org/show_bug.cgi?id=80398
+
+ Reviewed by Tor Arne Vestbø.
+
+ Add JPEG and PNG library tests to config.tests and
+ add error() abort to WebCore.pri if tests don't work.
+
+ * WebCore.pri:
+
+2012-03-06 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: extract source mapping logic from DebuggerPresentationModel to ScriptMappingImpl.
+ https://bugs.webkit.org/show_bug.cgi?id=80412
+
+ Reviewed by Vsevolod Vlasov.
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/compile-front-end.sh:
+ * inspector/front-end/ScriptMapping.js:
+ (WebInspector.ScriptMappingImpl):
+ (WebInspector.ScriptMappingImpl.prototype.rawLocationToUILocation):
+ (WebInspector.ScriptMappingImpl.prototype.createLiveLocation):
+ (WebInspector.ScriptMappingImpl.prototype.uiSourceCodeList):
+ (WebInspector.ScriptMappingImpl.prototype._handleUISourceCodeListChanged):
+ (WebInspector.ScriptMappingImpl.prototype._uiSourceCodeListChanged):
+ (WebInspector.ScriptMappingImpl.prototype._bindScriptToRawSourceCode):
+ (WebInspector.ScriptMappingImpl.prototype.setFormatSource):
+ (WebInspector.ScriptMappingImpl.prototype.forceUpdateSourceMapping):
+ (WebInspector.ScriptMappingImpl.prototype.reset):
+
+2012-03-07 Mark Rowe <mrowe@apple.com>
+
+ Fix DerivedSources.make to not assume that WTF and WebCore build in to the same build directory.
+
+ We can't assume that wtf/Platform.h can be found inside BUILT_PRODUCTS_DIR as
+ that won't be the case if WTF and WebCore are building in to different build
+ directories. We should instead look for wtf/Platform.h in the header search path.
+
+ Unreviewed due to being a build fix.
+
+ * DerivedSources.make: Set up the header search path, and invoke the compiler in
+ such a manner that it looks for wtf/Platform.h in that search path.
+
+2012-03-07 Robin Cao <robin.cao@torchmobile.com.cn>
+
+ [BlackBerry] Upstream Texture and TextureCache
+ https://bugs.webkit.org/show_bug.cgi?id=80121
+
+ Reviewed by Rob Buis.
+
+ Initial upstream, no new tests.
+
+ * platform/graphics/blackberry/Texture.cpp: Added.
+ (WebCore):
+ (WebCore::copyImageData):
+ (WebCore::Texture::Texture):
+ (WebCore::Texture::~Texture):
+ (WebCore::Texture::updateContents):
+ (WebCore::Texture::setContentsToColor):
+ (WebCore::Texture::protect):
+ * platform/graphics/blackberry/Texture.h: Added.
+ (WebCore):
+ (Texture):
+ (WebCore::Texture::create):
+ (WebCore::Texture::textureId):
+ (WebCore::Texture::isDirty):
+ (WebCore::Texture::hasTexture):
+ (WebCore::Texture::isColor):
+ (WebCore::Texture::isOpaque):
+ (WebCore::Texture::isProtected):
+ (WebCore::Texture::protect):
+ (WebCore::Texture::unprotect):
+ (WebCore::Texture::size):
+ (WebCore::Texture::width):
+ (WebCore::Texture::height):
+ (WebCore::Texture::bytesPerPixel):
+ (WebCore::Texture::setTextureId):
+ * platform/graphics/blackberry/TextureCacheCompositingThread.cpp: Added.
+ (WebCore):
+ (TextureProtector):
+ (WebCore::TextureProtector::TextureProtector):
+ (WebCore::TextureProtector::~TextureProtector):
+ (WebCore::TextureCacheCompositingThread::TextureCacheCompositingThread):
+ (WebCore::TextureCacheCompositingThread::allocateTextureId):
+ (WebCore::TextureCacheCompositingThread::freeTextureId):
+ (WebCore::TextureCacheCompositingThread::collectGarbage):
+ (WebCore::TextureCacheCompositingThread::textureResized):
+ (WebCore::TextureCacheCompositingThread::textureDestroyed):
+ (WebCore::TextureCacheCompositingThread::install):
+ (WebCore::TextureCacheCompositingThread::evict):
+ (WebCore::TextureCacheCompositingThread::textureAccessed):
+ (WebCore::textureCacheCompositingThread):
+ (WebCore::TextureCacheCompositingThread::prune):
+ (WebCore::TextureCacheCompositingThread::clear):
+ (WebCore::TextureCacheCompositingThread::setMemoryUsage):
+ (WebCore::TextureCacheCompositingThread::textureForTiledContents):
+ (WebCore::TextureCacheCompositingThread::textureForColor):
+ (WebCore::TextureCacheCompositingThread::updateContents):
+ (WebCore::TextureCacheCompositingThread::key):
+ * platform/graphics/blackberry/TextureCacheCompositingThread.h: Added.
+ (WebCore):
+ (TextureCacheCompositingThread):
+ (WebCore::TextureCacheCompositingThread::createTexture):
+ (WebCore::TextureCacheCompositingThread::memoryUsage):
+ (WebCore::TextureCacheCompositingThread::memoryLimit):
+ (WebCore::TextureCacheCompositingThread::setMemoryLimit):
+ (WebCore::TextureCacheCompositingThread::prune):
+ (WebCore::TextureCacheCompositingThread::ZombieTexture::ZombieTexture):
+ (ZombieTexture):
+ (WebCore::TextureCacheCompositingThread::incMemoryUsage):
+ (WebCore::TextureCacheCompositingThread::decMemoryUsage):
+ (WebCore::TextureCacheCompositingThread::ColorHash::hash):
+ (WebCore::TextureCacheCompositingThread::ColorHash::equal):
+ (ColorHash):
+ (ColorHashTraits):
+ (WebCore::TextureCacheCompositingThread::ColorHashTraits::constructDeletedValue):
+ (WebCore::TextureCacheCompositingThread::ColorHashTraits::isDeletedValue):
+
+2012-03-07 Kenichi Ishibashi <bashi@chromium.org>
+
+ [WebSocket] Should raise SYNTAX_ERR when message contains unpaired surrogates
+ https://bugs.webkit.org/show_bug.cgi?id=80103
+
+ Reviewed by Kent Tamura.
+
+ Add UTF8 validation checks for WebSocket message and close reason.
+
+ Tests: http/tests/websocket/tests/hybi/unpaired-surrogates-in-close-reason.html
+ http/tests/websocket/tests/hybi/unpaired-surrogates-in-message.html
+
+ * Modules/websockets/WebSocket.cpp:
+ (WebCore::WebSocket::send): Raise SYNTAX_ERR if the message is invalid.
+ (WebCore::WebSocket::close):Raise SYNTAX_ERR if the reason is invalid.
+ * Modules/websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::send): Check whether message is a valid UTF8 string.
+
+2012-03-07 Byungwoo Lee <bw80.lee@samsung.com>
+
+ [EFL] Build warning: Fix warn_unused_result warnings.
+ https://bugs.webkit.org/show_bug.cgi?id=79194
+
+ Reviewed by Filip Pizlo.
+
+ Fixed build warning which is getting generated when not using return
+ value of a fuction, especially declared with warn_unused_result
+ attribute.
+
+ * platform/efl/SharedBufferEfl.cpp:
+ (WebCore::SharedBuffer::createWithContentsOfFile):
+
+2012-03-07 Kent Tamura <tkent@chromium.org>
+
+ Cleanup of RenderTextControl::adjustControlHeightBasedOnLineHeight()
+ https://bugs.webkit.org/show_bug.cgi?id=80480
+
+ Reviewed by Hajime Morita.
+
+ The callsite of adjustControlHeightBasedOnLineHeight() stored
+ padding+border+margin height of the inner text in height(), and
+ adjustControlHeightBasedOnLineHeight() implementations refered it. It
+ was unreasonable and hard to understand.
+
+ The purpose of adjustControlHeightBasedOnLineHeight() is to compute
+ - the maximum height of line-heights of the inner text and decorations
+ - the maximum height of padding+border+margin heights of the inner text and decorations,
+ and to sum them up. This patch rewrites the code to make it understood easily.
+
+ adjustControlHeightBasedOnLineHeight() is renamed to
+ computeControlheight(), it takes additional parameter of
+ padding+boder+margin height, and returns the sum of them.
+
+ No behavior change.
+
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::computeLogicalHeight):
+ * rendering/RenderTextControl.h:
+ (RenderTextControl):
+ * rendering/RenderTextControlMultiLine.cpp:
+ (WebCore::RenderTextControlMultiLine::computeControlHeight):
+ * rendering/RenderTextControlMultiLine.h:
+ (RenderTextControlMultiLine):
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::computeControlHeight):
+ * rendering/RenderTextControlSingleLine.h:
+ (RenderTextControlSingleLine):
+
+2012-03-06 Eric Seidel <eric@webkit.org>
+
+ Make WTF public headers use fully-qualified include paths and remove ForwardingHeaders/wtf
+ https://bugs.webkit.org/show_bug.cgi?id=80363
+
+ Reviewed by Mark Rowe.
+
+ ForwardingHeaders/wtf is no longer needed (or functional) now that
+ JavaScriptCore no longer includes the WTF headers as private headers.
+
+ * DerivedSources.make:
+ * ForwardingHeaders/wtf/ASCIICType.h: Removed.
+ * ForwardingHeaders/wtf/AVLTree.h: Removed.
+ * ForwardingHeaders/wtf/Alignment.h: Removed.
+ * ForwardingHeaders/wtf/AlwaysInline.h: Removed.
+ * ForwardingHeaders/wtf/ArrayBuffer.h: Removed.
+ * ForwardingHeaders/wtf/ArrayBufferView.h: Removed.
+ * ForwardingHeaders/wtf/Assertions.h: Removed.
+ * ForwardingHeaders/wtf/Atomics.h: Removed.
+ * ForwardingHeaders/wtf/Bitmap.h: Removed.
+ * ForwardingHeaders/wtf/BloomFilter.h: Removed.
+ * ForwardingHeaders/wtf/BumpPointerAllocator.h: Removed.
+ * ForwardingHeaders/wtf/ByteArray.h: Removed.
+ * ForwardingHeaders/wtf/CheckedArithmetic.h: Removed.
+ * ForwardingHeaders/wtf/CheckedBoolean.h: Removed.
+ * ForwardingHeaders/wtf/Compiler.h: Removed.
+ * ForwardingHeaders/wtf/Complex.h: Removed.
+ * ForwardingHeaders/wtf/CryptographicallyRandomNumber.h: Removed.
+ * ForwardingHeaders/wtf/CurrentTime.h: Removed.
+ * ForwardingHeaders/wtf/DataLog.h: Removed.
+ * ForwardingHeaders/wtf/DateInstanceCache.h: Removed.
+ * ForwardingHeaders/wtf/DateMath.h: Removed.
+ * ForwardingHeaders/wtf/DecimalNumber.h: Removed.
+ * ForwardingHeaders/wtf/Decoder.h: Removed.
+ * ForwardingHeaders/wtf/Deque.h: Removed.
+ * ForwardingHeaders/wtf/DisallowCType.h: Removed.
+ * ForwardingHeaders/wtf/DoublyLinkedList.h: Removed.
+ * ForwardingHeaders/wtf/DynamicAnnotations.h: Removed.
+ * ForwardingHeaders/wtf/Encoder.h: Removed.
+ * ForwardingHeaders/wtf/ExportMacros.h: Removed.
+ * ForwardingHeaders/wtf/FastAllocBase.h: Removed.
+ * ForwardingHeaders/wtf/FastMalloc.h: Removed.
+ * ForwardingHeaders/wtf/FixedArray.h: Removed.
+ * ForwardingHeaders/wtf/Float32Array.h: Removed.
+ * ForwardingHeaders/wtf/Float64Array.h: Removed.
+ * ForwardingHeaders/wtf/Forward.h: Removed.
+ * ForwardingHeaders/wtf/Functional.h: Removed.
+ * ForwardingHeaders/wtf/GetPtr.h: Removed.
+ * ForwardingHeaders/wtf/HashCountedSet.h: Removed.
+ * ForwardingHeaders/wtf/HashFunctions.h: Removed.
+ * ForwardingHeaders/wtf/HashMap.h: Removed.
+ * ForwardingHeaders/wtf/HashSet.h: Removed.
+ * ForwardingHeaders/wtf/HashTable.h: Removed.
+ * ForwardingHeaders/wtf/HashTraits.h: Removed.
+ * ForwardingHeaders/wtf/HexNumber.h: Removed.
+ * ForwardingHeaders/wtf/Int16Array.h: Removed.
+ * ForwardingHeaders/wtf/Int32Array.h: Removed.
+ * ForwardingHeaders/wtf/Int8Array.h: Removed.
+ * ForwardingHeaders/wtf/ListHashSet.h: Removed.
+ * ForwardingHeaders/wtf/ListRefPtr.h: Removed.
+ * ForwardingHeaders/wtf/Locker.h: Removed.
+ * ForwardingHeaders/wtf/MD5.h: Removed.
+ * ForwardingHeaders/wtf/MainThread.h: Removed.
+ * ForwardingHeaders/wtf/MathExtras.h: Removed.
+ * ForwardingHeaders/wtf/MessageQueue.h: Removed.
+ * ForwardingHeaders/wtf/MetaAllocator.h: Removed.
+ * ForwardingHeaders/wtf/MetaAllocatorHandle.h: Removed.
+ * ForwardingHeaders/wtf/NonCopyingSort.h: Removed.
+ * ForwardingHeaders/wtf/Noncopyable.h: Removed.
+ * ForwardingHeaders/wtf/NotFound.h: Removed.
+ * ForwardingHeaders/wtf/OSAllocator.h: Removed.
+ * ForwardingHeaders/wtf/OwnArrayPtr.h: Removed.
+ * ForwardingHeaders/wtf/OwnPtr.h: Removed.
+ * ForwardingHeaders/wtf/OwnPtrCommon.h: Removed.
+ * ForwardingHeaders/wtf/PageAllocation.h: Removed.
+ * ForwardingHeaders/wtf/PageAllocationAligned.h: Removed.
+ * ForwardingHeaders/wtf/PageBlock.h: Removed.
+ * ForwardingHeaders/wtf/PageReservation.h: Removed.
+ * ForwardingHeaders/wtf/ParallelJobs.h: Removed.
+ * ForwardingHeaders/wtf/PassOwnArrayPtr.h: Removed.
+ * ForwardingHeaders/wtf/PassOwnPtr.h: Removed.
+ * ForwardingHeaders/wtf/PassRefPtr.h: Removed.
+ * ForwardingHeaders/wtf/Platform.h: Removed.
+ * ForwardingHeaders/wtf/PossiblyNull.h: Removed.
+ * ForwardingHeaders/wtf/RandomNumber.h: Removed.
+ * ForwardingHeaders/wtf/RedBlackTree.h: Removed.
+ * ForwardingHeaders/wtf/RefCounted.h: Removed.
+ * ForwardingHeaders/wtf/RefCountedLeakCounter.h: Removed.
+ * ForwardingHeaders/wtf/RefPtr.h: Removed.
+ * ForwardingHeaders/wtf/RetainPtr.h: Removed.
+ * ForwardingHeaders/wtf/SHA1.h: Removed.
+ * ForwardingHeaders/wtf/SegmentedVector.h: Removed.
+ * ForwardingHeaders/wtf/SimpleStats.h: Removed.
+ * ForwardingHeaders/wtf/Spectrum.h: Removed.
+ * ForwardingHeaders/wtf/StackBounds.h: Removed.
+ * ForwardingHeaders/wtf/StaticConstructors.h: Removed.
+ * ForwardingHeaders/wtf/StdLibExtras.h: Removed.
+ * ForwardingHeaders/wtf/StringExtras.h: Removed.
+ * ForwardingHeaders/wtf/StringHasher.h: Removed.
+ * ForwardingHeaders/wtf/TemporaryChange.h: Removed.
+ * ForwardingHeaders/wtf/ThreadRestrictionVerifier.h: Removed.
+ * ForwardingHeaders/wtf/ThreadSafeRefCounted.h: Removed.
+ * ForwardingHeaders/wtf/ThreadSpecific.h: Removed.
+ * ForwardingHeaders/wtf/Threading.h: Removed.
+ * ForwardingHeaders/wtf/ThreadingPrimitives.h: Removed.
+ * ForwardingHeaders/wtf/TypeTraits.h: Removed.
+ * ForwardingHeaders/wtf/Uint16Array.h: Removed.
+ * ForwardingHeaders/wtf/Uint32Array.h: Removed.
+ * ForwardingHeaders/wtf/Uint8Array.h: Removed.
+ * ForwardingHeaders/wtf/Uint8ClampedArray.h: Removed.
+ * ForwardingHeaders/wtf/UnusedParam.h: Removed.
+ * ForwardingHeaders/wtf/VMTags.h: Removed.
+ * ForwardingHeaders/wtf/ValueCheck.h: Removed.
+ * ForwardingHeaders/wtf/Vector.h: Removed.
+ * ForwardingHeaders/wtf/VectorTraits.h: Removed.
+ * ForwardingHeaders/wtf/WTFThreadData.h: Removed.
+ * ForwardingHeaders/wtf/dtoa.h: Removed.
+ * ForwardingHeaders/wtf/dtoa/double-conversion.h: Removed.
+ * ForwardingHeaders/wtf/text/ASCIIFastPath.h: Removed.
+ * ForwardingHeaders/wtf/text/AtomicString.h: Removed.
+ * ForwardingHeaders/wtf/text/AtomicStringHash.h: Removed.
+ * ForwardingHeaders/wtf/text/AtomicStringImpl.h: Removed.
+ * ForwardingHeaders/wtf/text/CString.h: Removed.
+ * ForwardingHeaders/wtf/text/StringBuffer.h: Removed.
+ * ForwardingHeaders/wtf/text/StringBuilder.h: Removed.
+ * ForwardingHeaders/wtf/text/StringConcatenate.h: Removed.
+ * ForwardingHeaders/wtf/text/StringHash.h: Removed.
+ * ForwardingHeaders/wtf/text/StringImpl.h: Removed.
+ * ForwardingHeaders/wtf/text/TextPosition.h: Removed.
+ * ForwardingHeaders/wtf/text/WTFString.h: Removed.
+ * ForwardingHeaders/wtf/unicode/CharacterNames.h: Removed.
+ * ForwardingHeaders/wtf/unicode/Collator.h: Removed.
+ * ForwardingHeaders/wtf/unicode/UTF8.h: Removed.
+ * ForwardingHeaders/wtf/unicode/Unicode.h: Removed.
+ * ForwardingHeaders/wtf/unicode/icu/UnicodeIcu.h: Removed.
+ * ForwardingHeaders/wtf/unicode/wince/UnicodeWince.h: Removed.
+ * ForwardingHeaders/wtf/url/ParsedURL.h: Removed.
+
+2012-03-07 Yoshifumi Inoue <yosin@chromium.org>
+
+ [Forms] The "legend" element should not be a form-associated element.
+ https://bugs.webkit.org/show_bug.cgi?id=80239
+
+ Reviewed by Kent Tamura.
+
+ This patch changes base class of HTMLLegendElement to HTMLElement from
+ HTMLFormControlElement for saving memory space and iteration time of
+ extra "legend" elements in HTMLFormElement::m_formAssociatedElements
+ and matching the HTML5 specification for ease of maintenance.
+
+ Changes of TextIterator is lead by usage of isFormControlElement. This
+ changes will be replaced with more meaningful predicate as part of
+ https://bugs.webkit.org/show_bug.cgi?id=80381
+
+ No new tests are required. No behavior changes.
+
+ * editing/TextIterator.cpp:
+ (WebCore::TextIterator::advance): Check HTMLLegendElement in addition to isFormControlElement. This change is for text dump in LayoutTests implemented by document.innerText attribute.
+ * html/HTMLLegendElement.cpp:
+ (WebCore::HTMLLegendElement::HTMLLegendElement): Remove form parameter.
+ (WebCore::HTMLLegendElement::create): Remove form parameter.
+ (WebCore::HTMLLegendElement::associatedControl): Stop checking legend element, because HTMLLegendElement is no longer HTMLFormControlElement.
+ (WebCore::HTMLLegendElement::supportFocus): Removed. It called HTMLElement::supportFocus.
+ (WebCore::HTMLLegendElement::formControlType): Remove implementation of virtual method declared in HTMLFormControlElement.
+ * html/HTMLLegendElement.h:
+ (HTMLLegendElement): Change base class to HTMLElement.
+ * html/HTMLTagNames.in: Remove "constructorNeedsFormElement" for not passing "form" parameter in HTMLElementFactory.
+
+2012-03-06 Raphael Kubo da Costa <kubo@profusion.mobi>
+
+ [CMake] Make the removal of transitive library dependencies work with CMake < 2.8.7.
+ https://bugs.webkit.org/show_bug.cgi?id=80469
+
+ Reviewed by Antonio Gomes.
+
+ No new tests, this is a buildsystem change.
+
+ * CMakeLists.txt: Manually set the LINK_INTERFACE_LIBRARIES target
+ property on the library being created.
+
+2012-03-06 Lianghui Chen <liachen@rim.com>
+
+ [BlackBerry] Set correct ResourceRequest target type.
+ https://bugs.webkit.org/show_bug.cgi?id=80430
+
+ Reviewed by Rob Buis.
+
+ For loads started by AppCache, they are based on the manifest file,
+ it is not definitely sure what target it is for, so we just guess
+ based on its mimetype or file extension.
+
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::createResourceHandle):
+ * loader/cache/CachedResource.cpp:
+ (WebCore):
+ (WebCore::CachedResource::load):
+ * platform/network/blackberry/ResourceRequest.h:
+ (ResourceRequest):
+ * platform/network/blackberry/ResourceRequestBlackBerry.cpp:
+ (WebCore):
+ (WebCore::mimeTypeRequestTypeMap):
+ (WebCore::ResourceRequest::targetTypeFromMimeType):
+ * workers/DefaultSharedWorkerRepository.cpp:
+ (WebCore::SharedWorkerScriptLoader::load):
+ * workers/Worker.cpp:
+ (WebCore::Worker::create):
+ * workers/WorkerContext.cpp:
+ (WebCore::WorkerContext::importScripts):
+ * workers/WorkerScriptLoader.cpp:
+ (WebCore::WorkerScriptLoader::createResourceRequest):
+ * workers/WorkerScriptLoader.h:
+ (WorkerScriptLoader):
+
+2012-03-06 Dana Jansens <danakj@chromium.org>
+
+ [chromium] Add clipping to scissor rect to CCOcclusionTracker
+ https://bugs.webkit.org/show_bug.cgi?id=79927
+
+ Reviewed by Adrienne Walker.
+
+ Adds logic to CCOcclusionTracker to occlude anything outside of the
+ current screen and target surface scissor rects. When tracking
+ damage for partial swaps, the scissor rects are bounded by the
+ tracked damage rects.
+
+ Unit tests: CCOcclusionTrackerTest.cpp
+
+ * platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
+ (WebCore::::CCOcclusionTrackerBase):
+ (WebCore):
+ (WebCore::::markOccludedBehindLayer):
+ (WebCore::testContentRectOccluded):
+ (WebCore::::occluded):
+ (WebCore::computeUnoccludedContentRect):
+ (WebCore::::unoccludedContentRect):
+ (WebCore::::layerScissorRect):
+ * platform/graphics/chromium/cc/CCOcclusionTracker.h:
+ (WebCore):
+ (CCOcclusionTrackerDamageClientBase):
+ (CCOcclusionTrackerBase):
+
+2012-03-06 Kentaro Hara <haraken@chromium.org>
+
+ Unreviewed, rolling out r110011.
+ http://trac.webkit.org/changeset/110011
+ https://bugs.webkit.org/show_bug.cgi?id=80376
+
+ layout tests crash
+
+ * bindings/v8/V8HiddenPropertyName.cpp:
+ (WebCore):
+ (WebCore::V8HiddenPropertyName::hiddenReferenceName):
+ * bindings/v8/V8HiddenPropertyName.h:
+ (WebCore):
+ (V8HiddenPropertyName):
+ * bindings/v8/custom/V8DOMStringMapCustom.cpp:
+ (WebCore::toV8):
+ * bindings/v8/custom/V8DOMTokenListCustom.cpp:
+ (WebCore::toV8):
+ * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
+ (WebCore::toV8):
+
+2012-03-06 Kentaro Hara <haraken@chromium.org>
+
+ Unreviewed, rolling out r110016.
+ http://trac.webkit.org/changeset/110016
+
+ layout tests crash
+
+ * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
+ (WebCore::toV8):
+
+2012-03-06 Kentaro Hara <haraken@chromium.org>
+
+ Unreviewed, fixed test crashes.
+
+ * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
+ (WebCore::toV8):
+
+2012-03-06 Hajime Morrita <morrita@chromium.org>
+
+ https://bugs.webkit.org/show_bug.cgi?id=79935
+ REGRESSION: <content> element is not HTMLUnknownElement when Shadow DOM API is disabled
+
+ Reviewed by Adam Barth.
+
+ This change introduced "runtimeConditional" keyword to make_name.pl sources,
+ which allows HTMLElementFactory and HTMLElementWrapperFactory to check RuntimeEnabledFeatures
+ and treat any tag name as HTMLUnknownElement if its definition has runtimeConditional and
+ the flag given is turned off.
+
+ Test: fast/dom/shadow/content-shadow-unknown.html
+
+ * WebCore.exp.in:
+ * dom/make_names.pl:
+ (defaultTagPropertyHash):
+ (printConstructorInterior):
+ (printFactoryCppFile):
+ (printWrapperFunctions):
+ (printWrapperFactoryCppFile):
+ * html/HTMLTagNames.in:
+ * html/shadow/HTMLContentElement.cpp:
+ (WebCore::contentTagName):
+ * testing/InternalSettings.cpp:
+ (WebCore::InternalSettings::InternalSettings):
+ (WebCore::InternalSettings::restoreTo):
+ (WebCore::InternalSettings::setShadowDOMEnabled):
+ (WebCore):
+ * testing/InternalSettings.h:
+ (InternalSettings):
+ * testing/InternalSettings.idl:
+
+2012-03-06 Kenichi Ishibashi <bashi@chromium.org>
+
+ [WebSocket] Introduce ThreadableWebSocketChannel::SendResult
+ https://bugs.webkit.org/show_bug.cgi?id=80356
+
+ Reviewed by Kent Tamura.
+
+ Introduced ThreadableWebSocketChannel::SendResult type so that
+ WebSocketChannel can pass the validation result.
+
+ No new test. No changes in behavior.
+
+ * Modules/websockets/ThreadableWebSocketChannel.h: Added SendResult.
+ * Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
+ (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
+ (WebCore::ThreadableWebSocketChannelClientWrapper::sendRequestResult): Use ThreadableWebSocketChannel::SendResult instead of bool.
+ (WebCore::ThreadableWebSocketChannelClientWrapper::setSendRequestResult): Ditto.
+ * Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
+ (ThreadableWebSocketChannelClientWrapper):
+ * Modules/websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::send): Use ThreadableWebSocketChannel::SendResult instead of bool. Pass Cstring to enqueTextFrame instead of String.
+ (WebCore::WebSocketChannel::enqueueTextFrame): Ditto.
+ (WebCore::WebSocketChannel::processOutgoingFrameQueue): Ditto.
+ * Modules/websockets/WebSocketChannel.h:
+ (WebSocketChannel):
+ (QueuedFrame): Changed the type of stringData from String to CString.
+ * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
+ (WebCore::WorkerThreadableWebSocketChannel::send): Use ThreadableWebSocketChannel::SendResult instead of bool.
+ (WebCore::workerContextDidSend): Ditto.
+ (WebCore::WorkerThreadableWebSocketChannel::Peer::send): Ditto.
+ (WebCore::WorkerThreadableWebSocketChannel::Bridge::send): Ditto.
+ * Modules/websockets/WorkerThreadableWebSocketChannel.h:
+ (WorkerThreadableWebSocketChannel): ditto.
+ (Bridge): Ditto.
+
+2012-03-06 Kentaro Hara <haraken@chromium.org>
+
+ [V8][Performance] Optimize V8 bindings for HTMLElement.classList,
+ Element.dataset and Node.attributes
+ https://bugs.webkit.org/show_bug.cgi?id=80376
+
+ Reviewed by Adam Barth.
+
+ This patch improves the performance of HTMLElement.classList, Element.dataset
+ and Node.attributes by 6.4 times, 7.1 times and 10.9 times, respectively.
+
+ Previously, a 'hiddenReferenceName' string was allocated on v8::Handle and
+ created every time the DOM attribute is accessed, in spite of the fact that
+ the 'hiddenReferenceName' string is static.
+
+ This patch moves the 'hiddenReferenceName' string to v8::Persistent and makes it static.
+ Also, this patch removes 'if (!elementValue.IsEmpty() && elementValue->IsObject())',
+ since if 'element' exists, it is guaranteed that 'elementValue' is not empty
+ and is an Object.
+
+ Performance tests: https://bugs.webkit.org/attachment.cgi?id=130283
+
+ AppleWebKit/JavaScriptCore:
+ div.classList : 382ms
+ div.classList.foo = 123 : 335ms
+ div.dataset : 403ms
+ div.dataset.foo = 123 : 5250ms
+ div.attributes : 183ms
+
+ Chromium/V8 (without this patch):
+ div.classList : 9140ms
+ div.classList.foo = 123 : 9086ms
+ div.dataset : 9930ms
+ div.dataset.foo = 123 : 49698ms
+ div.attributes : 13489ms
+
+ Chromium/V8 (with this patch):
+ div.classList : 1435ms
+ div.classList.foo = 123 : 1470ms
+ div.dataset : 1400ms
+ div.dataset.foo = 123 : 30396ms
+ div.attributes : 1242ms
+
+ No tests. No change in behavior.
+
+ * bindings/v8/custom/V8DOMStringMapCustom.cpp: Modified as described above.
+ (WebCore::toV8):
+ * bindings/v8/custom/V8DOMTokenListCustom.cpp: Ditto.
+ (WebCore::toV8):
+ * bindings/v8/custom/V8NamedNodeMapCustom.cpp: Ditto.
+ (WebCore::toV8):
+
+ * bindings/v8/V8HiddenPropertyName.cpp: Defined a hidden property name string statically
+ to optimize the macro.
+ (WebCore):
+ (WebCore::V8HiddenPropertyName::hiddenReferenceName):
+ * bindings/v8/V8HiddenPropertyName.h: Modified to switch two prefixes "WebCore::HiddenProperty::"
+ and "WebCore::HiddenReference::", depending on whether a given name represents a hidden property
+ or a hidden reference.
+ (WebCore):
+ (V8HiddenPropertyName):
+
+2012-03-06 Nat Duca <nduca@chromium.org>
+
+ [chromium] CCThreadProxy context lost support
+ https://bugs.webkit.org/show_bug.cgi?id=80100
+
+ Reviewed by James Robinson.
+
+ * platform/graphics/chromium/cc/CCScheduler.cpp:
+ (WebCore::CCScheduler::didLoseContext):
+ (WebCore):
+ (WebCore::CCScheduler::didRecreateContext):
+ (WebCore::CCScheduler::processScheduledActions):
+ * platform/graphics/chromium/cc/CCScheduler.h:
+ (CCSchedulerClient):
+ (CCScheduler):
+ * platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
+ (WebCore::CCSchedulerStateMachine::CCSchedulerStateMachine):
+ (WebCore::CCSchedulerStateMachine::nextAction):
+ (WebCore::CCSchedulerStateMachine::updateState):
+ (WebCore::CCSchedulerStateMachine::vsyncCallbackNeeded):
+ (WebCore::CCSchedulerStateMachine::didLoseContext):
+ (WebCore):
+ (WebCore::CCSchedulerStateMachine::didRecreateContext):
+ * platform/graphics/chromium/cc/CCSchedulerStateMachine.h:
+ (CCSchedulerStateMachine):
+ * platform/graphics/chromium/cc/CCThreadProxy.cpp:
+ (WebCore::CCThreadProxy::recreateContext):
+ (WebCore::CCThreadProxy::loseContext):
+ (WebCore::CCThreadProxy::scheduledActionBeginContextRecreation):
+ (WebCore):
+ (WebCore::CCThreadProxy::scheduledActionDrawAndSwap):
+ (WebCore::CCThreadProxy::setAnimationEvents):
+ (WebCore::CCThreadProxy::beginContextRecreation):
+ (WebCore::CCThreadProxy::recreateContextOnImplThread):
+ (WebCore::CCThreadProxy::loseContextOnImplThread):
+ * platform/graphics/chromium/cc/CCThreadProxy.h:
+ (CCThreadProxy):
+
+2012-03-06 Tony Chang <tony@chromium.org>
+
+ refactor method names in RenderFlexibleBox to make them more consistent
+ https://bugs.webkit.org/show_bug.cgi?id=80446
+
+ Reviewed by Ojan Vafai.
+
+ No new tests, just renaming internal methods.
+
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::flowAwareBorderAfter): New, used by layoutAndPlaceChildren
+ (WebCore::RenderFlexibleBox::flowAwarePaddingAfter): New, used by layoutAndPlaceChildren
+ (WebCore::RenderFlexibleBox::marginBoxAscentForChild): Add ForChild for consistency.
+ (WebCore::RenderFlexibleBox::layoutAndPlaceChildren): We were adding the before padding+border twice (it's in the offset and
+ crossAxisBorderAndPaddingExtent() and subtracting it once. Instead, just add the after padding+border.
+ (WebCore::RenderFlexibleBox::alignChildren):
+ * rendering/RenderFlexibleBox.h:
+ (RenderFlexibleBox): Reorder methods to match the .cpp file.
+
+2012-03-06 Kentaro Hara <haraken@chromium.org>
+
+ Unreviewed, rolling out r109969.
+ http://trac.webkit.org/changeset/109969
+ https://bugs.webkit.org/show_bug.cgi?id=80376
+
+ layout tests crash
+
+ * bindings/v8/V8HiddenPropertyName.cpp:
+ (WebCore):
+ (WebCore::V8HiddenPropertyName::hiddenReferenceName):
+ * bindings/v8/V8HiddenPropertyName.h:
+ (WebCore):
+ (V8HiddenPropertyName):
+ * bindings/v8/custom/V8DOMStringMapCustom.cpp:
+ (WebCore::toV8):
+ * bindings/v8/custom/V8DOMTokenListCustom.cpp:
+ (WebCore::toV8):
+ * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
+ (WebCore::toV8):
+
+2012-03-06 Kentaro Hara <haraken@chromium.org>
+
+ Unreviewed, rolling out r109999.
+ http://trac.webkit.org/changeset/109999
+
+ layout tests crash
+
+ * bindings/v8/custom/V8DOMStringMapCustom.cpp:
+ (WebCore::toV8):
+ * bindings/v8/custom/V8DOMTokenListCustom.cpp:
+ (WebCore::toV8):
+
+2012-03-06 Kentaro Hara <haraken@chromium.org>
+
+ Unreviewed, fix crashes.
+
+ * bindings/v8/custom/V8DOMStringMapCustom.cpp:
+ (WebCore::toV8):
+ * bindings/v8/custom/V8DOMTokenListCustom.cpp:
+ (WebCore::toV8):
+
+2012-03-06 James Robinson <jamesr@chromium.org>
+
+ [chromium] Fix threaded compositing issues in WebGLLayerChromium (except for printing)
+ https://bugs.webkit.org/show_bug.cgi?id=80459
+
+ Reviewed by Kenneth Russell.
+
+ This fixes a few wrong-thread issues in WebGLLayerChromium for threaded compositing. The key requirements that
+ threaded compositing imposes on LayerChromium subclasses are that the compositor's context can only be used from
+ the compositor thread, meaning inside of updateCompositorResources() and pushPropertiesTo(), and that
+ non-compositor contexts can only be used from the main thread. This means specifically that we can't use the
+ DrawingBuffer's context in either of these two functions.
+
+ Summary of changes:
+ *) Move the publishToPlatformLayer() call and related logic inside of paintContentsIfDirty(), which is called
+ on the main thread.
+ *) Move lost context tracking outside of drawsContent(), since that function is called from both threads, to a
+ separate bool that is updated after each WebGL composite and setDrawingBuffer call.
+
+ Printing still doesn't work in threaded mode with this patch, I'll address that separately. Printing and lost
+ context recovery still work as they did in the single-threaded path.
+
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::WebGLLayerChromium):
+ (WebCore::WebGLLayerChromium::drawsContent):
+ (WebCore::WebGLLayerChromium::paintContentsIfDirty):
+ (WebCore::WebGLLayerChromium::updateCompositorResources):
+ (WebCore::WebGLLayerChromium::setDrawingBuffer):
+ * platform/graphics/chromium/WebGLLayerChromium.h:
+ (WebGLLayerChromium):
+
+2012-03-06 Anders Carlsson <andersca@apple.com>
+
+ Cracks between tiles when zoomed in
+ https://bugs.webkit.org/show_bug.cgi?id=80460
+ <rdar://problem/10996688>
+
+ Use enclosingIntRect instead of enclosedIntRect when converting from FloatRect to IntRect.
+
+ * platform/graphics/mac/WebLayer.mm:
+ (drawLayerContents):
+
+2012-03-06 Anders Carlsson <andersca@apple.com>
+
+ Tile cache layers should always be clipped to the view's bounds
+ https://bugs.webkit.org/show_bug.cgi?id=80456
+ <rdar://problem/10996174>
+
+ Reviewed by Simon Fraser.
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::shouldClipCompositedBounds):
+ Factor this code out into a separate function for better clarity. Always return true if we have a tile cache layer.
+
+ (WebCore::RenderLayerBacking::updateCompositedBounds):
+ Call shouldClipCompositedBounds directly.
+
+2012-03-06 James Robinson <jamesr@chromium.org>
+
+ [chromium] Null-check m_layerRenderer in CCLayerTreeHostImpl::finishAllRendering()
+ https://bugs.webkit.org/show_bug.cgi?id=80445
+
+ Reviewed by Adrienne Walker.
+
+ Null-check CCLayerTreeHostImpl::m_layerRenderer since it won't be set if context initialiation failed for any
+ reason.
+
+ Covered by new unit test in CCLayerTreeHostImplTest.
+
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::finishAllRendering):
+
+2012-03-06 Ryosuke Niwa <rniwa@webkit.org>
+
+ Can't select a line of RTL text on Facebook
+ https://bugs.webkit.org/show_bug.cgi?id=59435
+
+ Reviewed by Eric Seidel.
+
+ Deploy prevLeafChildIgnoringLineBreak and nextLeafChildIgnoringLineBreak
+ in RenderedPosition::leftBoundaryOfBidiRun and RenderedPosition::rightBoundaryOfBidiRun.
+
+ Without this patch, WebKit extends selection from right to left when the user selects
+ <span dir="rtl">ABC<br></span> from left to right by a mouse drag.
+
+ Test: editing/selection/select-bidi-run.html
+
+ * editing/RenderedPosition.cpp:
+ (WebCore::RenderedPosition::leftBoundaryOfBidiRun):
+ (WebCore::RenderedPosition::rightBoundaryOfBidiRun):
+
+2012-03-06 Raphael Kubo da Costa <kubo@profusion.mobi>
+
+ undefined reference to JSC::IdentifierTable::~IdentifierTable() on EFL port
+ https://bugs.webkit.org/show_bug.cgi?id=80282
+
+ Reviewed by Antonio Gomes.
+
+ No new tests, this is a buildsystem change.
+
+ Remove transitive library dependencies; they are especially
+ dangerous when one ends up linking against WTF, JSC and then WTF
+ again, since some symbols will not be defined.
+
+ Passing --no-copy-dt-needed-entries and --as-needed to the linker
+ (which some recent Linux distros do by default) makes the issue
+ even more evident.
+
+ * CMakeLists.txt: Explicitly link to WTF as WebCore uses symbols
+ from it.
+ * PlatformEfl.cmake: Explicitly link against libjpeg and libpng.
+
+2012-03-06 James Robinson <jamesr@chromium.org>
+
+ [chromium] REGRESSION(109469): WebGL printing busted
+ https://bugs.webkit.org/show_bug.cgi?id=80450
+
+ Reviewed by Kenneth Russell.
+
+ Avoid marking layers as needing display in setContentsTo...() since this breaks WebGL's damage tracking and is
+ unnecessary.
+
+ Tested WebGL printing manually.
+
+ * platform/graphics/chromium/GraphicsLayerChromium.cpp:
+ (WebCore::GraphicsLayerChromium::setContentsToCanvas):
+ (WebCore::GraphicsLayerChromium::setContentsToMedia):
+
+2012-03-06 Adrienne Walker <enne@google.com>
+
+ Overlap map for compositing should ignore empty layers
+ https://bugs.webkit.org/show_bug.cgi?id=63499
+
+ Reviewed by Simon Fraser.
+
+ Test: compositing/layer-creation/overlap-empty-layer.html
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::addToOverlapMap):
+ (WebCore::RenderLayerCompositor::computeCompositingRequirements):
+
+2012-03-06 Vangelis Kokkevis <vangelis@chromium.org>
+
+ [chromium] Increase the accelerated canvas min size to 256 * 256
+ https://bugs.webkit.org/show_bug.cgi?id=80451
+
+ Reviewed by Stephen White.
+
+ Test: Manually
+
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings):
+
+2012-03-06 Kentaro Hara <haraken@chromium.org>
+
+ [V8][Performance] Optimize V8 bindings for HTMLElement.classList,
+ Element.dataset and Node.attributes
+ https://bugs.webkit.org/show_bug.cgi?id=80376
+
+ Reviewed by Adam Barth.
+
+ This patch improves the performance of HTMLElement.classList, Element.dataset
+ and Node.attributes by 6.4 times, 7.1 times and 10.9 times, respectively.
+
+ Previously, a 'hiddenReferenceName' string was allocated on v8::Handle and
+ created every time the DOM attribute is accessed, in spite of the fact that
+ the 'hiddenReferenceName' string is static.
+
+ This patch moves the 'hiddenReferenceName' string to v8::Persistent and makes it static.
+ Also, this patch removes 'if (!elementValue.IsEmpty() && elementValue->IsObject())',
+ since if 'element' exists, it is guaranteed that 'elementValue' is not empty
+ and is an Object.
+
+ Performance tests: https://bugs.webkit.org/attachment.cgi?id=130283
+
+ AppleWebKit/JavaScriptCore:
+ div.classList : 382ms
+ div.classList.foo = 123 : 335ms
+ div.dataset : 403ms
+ div.dataset.foo = 123 : 5250ms
+ div.attributes : 183ms
+
+ Chromium/V8 (without this patch):
+ div.classList : 9140ms
+ div.classList.foo = 123 : 9086ms
+ div.dataset : 9930ms
+ div.dataset.foo = 123 : 49698ms
+ div.attributes : 13489ms
+
+ Chromium/V8 (with this patch):
+ div.classList : 1435ms
+ div.classList.foo = 123 : 1470ms
+ div.dataset : 1400ms
+ div.dataset.foo = 123 : 30396ms
+ div.attributes : 1242ms
+
+ No tests. No change in behavior.
+
+ * bindings/v8/custom/V8DOMStringMapCustom.cpp: Modified as described above.
+ (WebCore::toV8):
+ * bindings/v8/custom/V8DOMTokenListCustom.cpp: Ditto.
+ (WebCore::toV8):
+ * bindings/v8/custom/V8NamedNodeMapCustom.cpp: Ditto.
+ (WebCore::toV8):
+
+ * bindings/v8/V8HiddenPropertyName.cpp: Defined a hidden property name string statically
+ to optimize the macro.
+ (WebCore):
+ (WebCore::V8HiddenPropertyName::hiddenReferenceName):
+ * bindings/v8/V8HiddenPropertyName.h: Modified to switch two prefixes "WebCore::HiddenProperty::"
+ and "WebCore::HiddenReference::", depending on whether a given name represents a hidden property
+ or a hidden reference.
+ (WebCore):
+ (V8HiddenPropertyName):
+
+2012-03-06 Alexis Menard <alexis.menard@openbossa.org>
+
+ getComputedStyle returns incorrect values for the width and height of pseudo-elements
+ https://bugs.webkit.org/show_bug.cgi?id=37835
+
+ Reviewed by Tony Chang.
+
+ In case we are querying the computed style of an element with a pseudo-element we can't use
+ the renderer of the element as this one is not the one used to render the pseudo-element. We need
+ to use the one created to render the pseudo-element.
+
+ No new tests : Extend the existing getComputedStyle-with-pseudo-element.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+
+2012-03-06 Shawn Singh <shawnsingh@chromium.org>
+
+ [chromium] Make compositeAndReadback and damage tracking play nicely together
+ https://bugs.webkit.org/show_bug.cgi?id=80199
+
+ Reviewed by James Robinson.
+
+ Requires system-level testing (pixels on front-buffer should be
+ observed for correct behavior) that cannot be done by layout tests
+ or unit tests, have to rely on manual testing.
+
+ * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
+ (WebCore::CCSingleThreadProxy::compositeAndReadback):
+
+2012-03-06 Luke Macpherson <macpherson@chromium.org>
+
+ Make CSSStyleSelector::convertToLength() behave more like CSSPrimitiveValue::convertToLength().
+ https://bugs.webkit.org/show_bug.cgi?id=80375
+
+ Reviewed by Eric Seidel.
+
+ No new tests / cleanup only.
+
+ This patch removes the bool* ok parameter from CSSStyleSelector's convertToLength,
+ and instead uses the recently added Length(Undefined) value to indicate failure.
+ This paves the way for a future patch that will call primitiveValue->convertToLength directly.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+
+2012-03-06 Raymes Khoury <raymes@chromium.org>
+
+ Add state variable and ASSERTs to DocumentWriter to help track down
+ https://bugs.webkit.org/show_bug.cgi?id=80427 and prevent illegal usage
+ of DocumentWriter. This also makes endIfNotLoadingMainResource() private
+ as there is no external usage.
+
+ Reviewed by Adam Barth.
+
+ This only adds ASSERT/CRASH and does not change existing behaviour.
+
+ * loader/DocumentWriter.cpp:
+ (WebCore::DocumentWriter::DocumentWriter):
+ (WebCore::DocumentWriter::begin):
+ (WebCore::DocumentWriter::addData):
+ (WebCore::DocumentWriter::endIfNotLoadingMainResource):
+ (WebCore::DocumentWriter::setDocumentWasLoadedAsPartOfNavigation):
+ * loader/DocumentWriter.h:
+ (DocumentWriter):
+
+2012-03-06 Mihnea Ovidenie <mihnea@adobe.com>
+
+ [CSSRegions][CSSOM]Restrict parsing of named flow name
+ https://bugs.webkit.org/show_bug.cgi?id=80359
+
+ Reviewed by Andreas Kling.
+
+ The function that does the parsing for flow thread name should restrict the
+ number of parsed properties to 1, otherwise it would allow parsing of
+ "-webkit-flow-into: flow; color: red;" constructions.
+
+ Modified fast/regions/webkit-named-flow-invalid-name.html to include the above case.
+
+ * css/CSSParser.cpp:
+ (WebCore::validFlowName):
+ (WebCore::CSSParser::parseFlowThread):
+
+2012-03-06 Joseph Pecoraro <pecoraro@apple.com>
+
+ Unreviewed build fix for minimal build after r109939.
+
+ Guard access to page->inspectorController with ENABLE(INSPECTOR).
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::performPostLayoutTasks):
+
+2012-03-05 Dean Jackson <dino@apple.com>
+
+ Enable compositing when a CSS filter is animating
+ https://bugs.webkit.org/show_bug.cgi?id=79048
+
+ Reviewed by Simon Fraser.
+
+ Now that some systems (e.g. OS X) have both hardware accelerated
+ CSS filters, and the ability to animate them via the hardware
+ compositor, all CSS filters should be composited when animating.
+
+ Tests: css3/filters/composited-during-animation-layertree.html
+ css3/filters/composited-during-animation.html
+ css3/filters/composited-during-transition-layertree.html
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore):
+ (WebCore::supportsAcceleratedFilterAnimations):
+ new method that returns true if the platform supports
+ hardware animations of filters.
+ (WebCore::GraphicsLayerCA::addAnimation):
+ (WebCore::GraphicsLayerCA::createAnimationFromKeyframes):
+ only create layer-animations if the platform supports it.
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
+ create a compositing layer if animating a filter on a
+ supported platform.
+
+2012-03-06 Stephen White <senorblanco@chromium.org>
+
+ Unreviewed, rolling out r109825.
+ http://trac.webkit.org/changeset/109825
+ https://bugs.webkit.org/show_bug.cgi?id=79413
+
+ Broke webkit_unit_tests on Chromium Win
+
+ * Modules/indexeddb/IDBLevelDBBackingStore.cpp:
+ (WebCore::IDBLevelDBBackingStore::open):
+ * platform/leveldb/LevelDBDatabase.cpp:
+ (WebCore):
+ * platform/leveldb/LevelDBDatabase.h:
+ (LevelDBDatabase):
+
+2012-03-06 Beth Dakin <bdakin@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=80351
+ InlineTextBox is using the wrong origin when calling
+ addRelevantRepaintedObject
+ -and corresponding-
+ <rdar://problem/10970221>
+
+ Reviewed by Sam Weinig.
+
+ boxOrigin represents the actual location of the text. The adjustedPaintOffset
+ (which I was using previously) will only correspond to the first line in a
+ block of lines.
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::paint):
+
+2012-03-06 Filip Spacek <fspacek@rim.com>
+
+ [BlackBerry] Disable border radius clips (r95239) for BlackBerry
+ https://bugs.webkit.org/show_bug.cgi?id=80416
+
+ Reviewed by Antonio Gomes
+
+ The BlackBerry port suffers from the same performance
+ degradation when border radius clip is enabled as Chromium.
+
+ * rendering/RenderLayer.cpp:
+
+2012-03-06 Stephen White <senorblanco@chromium.org>
+
+ Unreviewed, rolling out r109832.
+ http://trac.webkit.org/changeset/109832
+ https://bugs.webkit.org/show_bug.cgi?id=80356
+
+ Broke WebSocket tests on Chrome Mac and Linux
+
+ * Modules/websockets/ThreadableWebSocketChannel.h:
+ (ThreadableWebSocketChannel):
+ * Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
+ (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
+ (WebCore::ThreadableWebSocketChannelClientWrapper::sendRequestResult):
+ (WebCore::ThreadableWebSocketChannelClientWrapper::setSendRequestResult):
+ * Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
+ (ThreadableWebSocketChannelClientWrapper):
+ * Modules/websockets/WebSocket.cpp:
+ (WebCore::WebSocket::send):
+ * Modules/websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::send):
+ (WebCore::WebSocketChannel::enqueueTextFrame):
+ (WebCore::WebSocketChannel::processOutgoingFrameQueue):
+ * Modules/websockets/WebSocketChannel.h:
+ (WebSocketChannel):
+ (QueuedFrame):
+ * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
+ (WebCore::WorkerThreadableWebSocketChannel::send):
+ (WebCore::workerContextDidSend):
+ (WebCore::WorkerThreadableWebSocketChannel::Peer::send):
+ (WebCore::WorkerThreadableWebSocketChannel::Bridge::send):
+ * Modules/websockets/WorkerThreadableWebSocketChannel.h:
+ (WorkerThreadableWebSocketChannel):
+ (Bridge):
+
+2012-03-06 Stephen White <senorblanco@chromium.org>
+
+ Unreviewed, rolling out r109840.
+ http://trac.webkit.org/changeset/109840
+ https://bugs.webkit.org/show_bug.cgi?id=80103
+
+ Broke WebSocket tests on Chrome Mac and Linux
+
+ * Modules/websockets/WebSocket.cpp:
+ (WebCore::WebSocket::send):
+ (WebCore::WebSocket::close):
+ * Modules/websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::send):
+
+2012-03-05 Joseph Pecoraro <pecoraro@apple.com>
+
+ <http://webkit.org/b/78575> Web Inspector: Disable dock button when not allowed to dock
+
+ There are times when an undocked inspector frontend is not allowed to
+ attach to the main window. We can disable the dock button in those cases.
+
+ Reviewed by Pavel Feldman.
+
+ No new tests. This functionality is port specific right now.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::performPostLayoutTasks):
+ When the main frame is resized we let the inspector client know,
+ so that it can react to it as needed.
+
+ * WebCore.exp.in:
+ * inspector/InspectorClient.h:
+ (WebCore::InspectorClient::didResizeMainFrame):
+ * inspector/InspectorController.cpp:
+ * inspector/InspectorController.h:
+ (WebCore::InspectorController::inspectorClient):
+ Call up to the port though to the InspectorClient.
+
+ * inspector/InspectorFrontendClientLocal.cpp:
+ (WebCore::InspectorFrontendClientLocal::frontendLoaded):
+ (WebCore::InspectorFrontendClientLocal::setDockingUnavailable):
+ * inspector/InspectorFrontendClientLocal.h:
+ On ports where the inspector frontend client is local, provide a
+ setDockingUnavailable InspectorFrontendAPI to update the docking state.
+ Automatically update availability when the frontend completes loading.
+
+ * inspector/front-end/InspectorFrontendAPI.js:
+ (InspectorFrontendAPI.setDockingUnavailable):
+ * inspector/front-end/inspector.js:
+ (WebInspector._createGlobalStatusBarItems):
+ (WebInspector.setAttachedWindow):
+ (WebInspector.setDockingUnavailable):
+ (WebInspector.updateDockToggleButton):
+ Update the dock button's enabled/disabled state when its created,
+ when the attached state changes, when get a frontend API notification
+ that we cannot attach.
+
+ * inspector/front-end/InspectorFrontendHostStub.js:
+ Remove unused canAttachWindow method.
+
+2012-03-06 Hans Wennborg <hans@chromium.org>
+
+ Speech JavaScript API: add SpeechRecognitionError
+ https://bugs.webkit.org/show_bug.cgi?id=80410
+
+ Reviewed by Adam Barth.
+
+ Add SpeechRecognitionError.
+
+ Test: fast/speech/scripted/speechrecognitionerror-basics.html
+
+ * Modules/speech/DOMWindowSpeech.idl: Added.
+ * Modules/speech/SpeechRecognitionError.cpp: Added.
+ (WebCore):
+ (WebCore::SpeechRecognitionError::create):
+ (WebCore::SpeechRecognitionError::SpeechRecognitionError):
+ * Modules/speech/SpeechRecognitionError.h: Added.
+ (WebCore):
+ (SpeechRecognitionError):
+ (WebCore::SpeechRecognitionError::code):
+ (WebCore::SpeechRecognitionError::message):
+ * Modules/speech/SpeechRecognitionError.idl: Added.
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+
+2012-03-06 David Corvoysier <david.corvoysier@orange.com>
+
+ Unreleased gst_object_reference to audio sink in MediaPlayerPrivateGStreamer
+ https://bugs.webkit.org/show_bug.cgi?id=79795
+
+ Bug fix: Used a GRefPtr to hold the reference to the audio sink instead of a GstElement*.
+ Code cleanup: Used the same pattern for webkit web source and removed explicit gst_unref in destructor.
+
+ Reviewed by Philippe Normand.
+
+ No new tests. No change in behavior.
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
+ (MediaPlayerPrivateGStreamer):
+
+2012-03-06 Patrick Gansterer <paroga@webkit.org>
+
+ [CMake] Build fix for !ENABLE(WORKERS) after r109556 and r109833.
+
+ * CMakeLists.txt:
+
+2012-03-06 Allan Sandfeld Jensen <allan.jensen@nokia.com>
+
+ [Qt][WK2] Crash in Frame.cpp when loading index.hu
+ https://bugs.webkit.org/show_bug.cgi?id=80165
+
+ Guard against possible null document, which can happen
+ when unsetting a document in a frame.
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ * page/Frame.cpp:
+ (WebCore::Frame::setDocument):
+
+2012-03-06 Lucas Forschler <lforschler@apple.com>
+
+ WebCore build exceeds address space on 32-bit Windows builds.
+ https://bugs.webkit.org/show_bug.cgi?id=80346
+
+ Reviewed by Jessie Berlin.
+
+ Patch by Lucas Forschler, landed by Jessie Berlin.
+
+ Add AllInOne.cpp files for a few projects.
+ This will only affect Production and Release builds.
+ Let VS rebuild the project file.
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * css/MediaAllInOne.cpp: Added.
+ * loader/appcache/ApplicationCacheAllInOne.cpp: Added.
+ * mathml/MathMLAllInOne.cpp: Added.
+ * platform/text/TextAllInOne.cpp: Added.
+
+2012-03-06 Pavel Feldman <pfeldman@chromium.org>
+
+ Web Inspector: add support for inspection of huge (1M elements) arrays.
+ https://bugs.webkit.org/show_bug.cgi?id=80421
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype.completionsForExpression.evaluated):
+ * inspector/front-end/ElementsPanel.js:
+ * inspector/front-end/ObjectPropertiesSection.js:
+ (WebInspector.ObjectPropertiesSection.prototype.update.callback):
+ (WebInspector.ObjectPropertiesSection.prototype.update):
+ (WebInspector.ObjectPropertiesSection.prototype.updateProperties):
+ (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate.callback):
+ (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
+ (WebInspector.ArrayGroupingTreeElement):
+ (WebInspector.ArrayGroupingTreeElement._populateArray):
+ (WebInspector.ArrayGroupingTreeElement._populateRanges):
+ (WebInspector.ArrayGroupingTreeElement._populateRanges.callback):
+ (WebInspector.ArrayGroupingTreeElement._populateAsFragment):
+ (WebInspector.ArrayGroupingTreeElement._populateAsFragment.processArrayFragment):
+ (WebInspector.ArrayGroupingTreeElement._populateAsFragment.processProperties):
+ (WebInspector.ArrayGroupingTreeElement._populateNonIndexProperties.buildObjectFragment):
+ (WebInspector.ArrayGroupingTreeElement._populateNonIndexProperties.processObjectFragment):
+ (WebInspector.ArrayGroupingTreeElement._populateNonIndexProperties.processProperties):
+ (WebInspector.ArrayGroupingTreeElement._populateNonIndexProperties):
+ (WebInspector.ArrayGroupingTreeElement.prototype.onpopulate):
+ (WebInspector.ArrayGroupingTreeElement.prototype.onattach):
+ * inspector/front-end/PropertiesSidebarPane.js:
+ (WebInspector.PropertiesSidebarPane.prototype.update.nodeResolved):
+ * inspector/front-end/RemoteObject.js:
+ (WebInspector.RemoteObject.prototype.callFunction):
+ (WebInspector.RemoteObject.prototype.callFunctionJSON):
+
+2012-03-06 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Open link in resources panel only works the second time
+ https://bugs.webkit.org/show_bug.cgi?id=80407
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/inspector.js:
+ (WebInspector.openResource):
+
+2012-03-02 Yury Semikhatsky <yurys@chromium.org>
+
+ Web Inspector: InspectorCounters mechanism should be thread-safe
+ https://bugs.webkit.org/show_bug.cgi?id=80166
+
+ Make InspectorCounters instance thread local so that it can be safely accessed
+ in workers.
+
+ Reviewed by Pavel Feldman.
+
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSEventListener::JSEventListener):
+ (WebCore::JSEventListener::~JSEventListener):
+ * bindings/v8/V8AbstractEventListener.cpp:
+ (WebCore::V8AbstractEventListener::V8AbstractEventListener):
+ (WebCore::V8AbstractEventListener::~V8AbstractEventListener):
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::~Document):
+ * dom/Document.h:
+ (WebCore::Node::Node):
+ * dom/Node.cpp:
+ (WebCore::Node::~Node):
+ * inspector/InspectorCounters.cpp:
+ (WebCore::InspectorCounters::InspectorCounters):
+ (WebCore::InspectorCounters::counterValue):
+ (WebCore):
+ (WebCore::InspectorCounters::current):
+ * inspector/InspectorCounters.h:
+ (WebCore::InspectorCounters::incrementCounter):
+ (WebCore::InspectorCounters::decrementCounter):
+ (InspectorCounters):
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
+ * platform/ThreadGlobalData.cpp:
+ (WebCore::ThreadGlobalData::ThreadGlobalData):
+ (WebCore::ThreadGlobalData::destroy):
+ * platform/ThreadGlobalData.h:
+ (WebCore):
+ (ThreadGlobalData):
+ (WebCore::ThreadGlobalData::inspectorCounters):
+
+2012-03-06 Leo Yang <leo.yang@torchmobile.com.cn>
+
+ [BlackBerry] Upstream typedef of NativeImageSourcePtr and NativeImagePtr
+ https://bugs.webkit.org/show_bug.cgi?id=80388
+
+ Reviewed by Antonio Gomes.
+
+ These are the BlackBerry typdefs of NativeImageSourcePtr and NativeImagePtr.
+
+ * platform/graphics/ImageSource.h:
+ (WebCore):
+
+2012-03-06 Hans Muller <hmuller@adobe.com>
+
+ SVG transform-origin presentation attribute
+ https://bugs.webkit.org/show_bug.cgi?id=79678
+
+ Reviewed by Nikolas Zimmermann.
+
+ Added the SVG transform-origin presentation attribute. Currently WebCore::mapAttributeToCSSProperty()
+ just maps it to -webkit-transform-origin. When the transform-origin CSS property is supported, this
+ part of the change can be removed.
+
+ Test: svg/transforms/transform-origin-presentation-attribute.xhtml
+
+ * svg/SVGStyledElement.cpp:
+ (WebCore::mapAttributeToCSSProperty):
+ (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName):
+ * svg/svgattrs.in:
+
+2012-01-26 Philippe Normand <pnormand@igalia.com>
+
+ [GStreamer] disable GStreamerGWorld when building against 0.11
+ https://bugs.webkit.org/show_bug.cgi?id=77088
+
+ Reviewed by Martin Robinson.
+
+ Don't build GStreamerGWorld and PlatformVideoWindow under
+ GStreamer 0.11. It's supposed to be removed soon anyway.
+
+ * platform/graphics/gstreamer/GStreamerGWorld.cpp:
+ * platform/graphics/gstreamer/GStreamerGWorld.h:
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::MediaPlayerPrivateGStreamer::totalBytes):
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
+ (MediaPlayerPrivateGStreamer):
+ * platform/graphics/gstreamer/PlatformVideoWindow.h:
+ * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp:
+ * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp:
+ * platform/graphics/gstreamer/PlatformVideoWindowMac.mm:
+ * platform/graphics/gstreamer/PlatformVideoWindowQt.cpp:
+
+2012-03-06 Alexander Færøy <alexander.faeroy@nokia.com>
+
+ Rename m_tileCreationTimer in the tiled backing store
+ https://bugs.webkit.org/show_bug.cgi?id=80414
+
+ Patch by Kenneth Rohde Christiansen and Alexander Færøy.
+
+ Reviewed by Tor Arne Vestbø.
+
+ The m_tileCreationTimer member is currently being used to represent a
+ timer that is fired when the backing store has been updated which is
+ confusing with its current name. This patch fixes this by renaming
+ the m_tileCreationTimer to m_backingStoreUpdateTimer.
+
+ * platform/graphics/TiledBackingStore.cpp:
+ (WebCore::TiledBackingStore::TiledBackingStore):
+ (WebCore::TiledBackingStore::setTileSize):
+ (WebCore::TiledBackingStore::coverWithTilesIfNeeded):
+ (WebCore::TiledBackingStore::createTiles):
+ (WebCore::TiledBackingStore::startBackingStoreUpdateTimer):
+ (WebCore::TiledBackingStore::backingStoreUpdateTimerFired):
+ (WebCore::TiledBackingStore::setContentsFrozen):
+ * platform/graphics/TiledBackingStore.h:
+ (TiledBackingStore):
+
+2012-03-06 Alexander Færøy <alexander.faeroy@nokia.com>
+
+ Remove TileTimer typedef from the tiled backing store
+ https://bugs.webkit.org/show_bug.cgi?id=80408
+
+ Patch by Kenneth Rohde Christiansen and Alexander Færøy.
+
+ Reviewed by Tor Arne Vestbø.
+
+ * platform/graphics/TiledBackingStore.cpp:
+ (WebCore::TiledBackingStore::tileBufferUpdateTimerFired):
+ (WebCore::TiledBackingStore::tileCreationTimerFired):
+ * platform/graphics/TiledBackingStore.h:
+ (TiledBackingStore):
+
+2012-03-06 Robin Cao <robin.cao@torchmobile.com.cn>
+
+ [BlackBerry] Upstream LayerRenderer.{h, cpp}
+ https://bugs.webkit.org/show_bug.cgi?id=79874
+
+ Reviewed by Antonio Gomes.
+
+ Initial upstream, no new tests.
+
+ * platform/graphics/blackberry/LayerRenderer.cpp: Added.
+ (WebCore):
+ (WebCore::checkGLError):
+ (WebCore::loadShader):
+ (WebCore::loadShaderProgram):
+ (WebCore::orthoMatrix):
+ (WebCore::rawPtrVectorFromRefPtrVector):
+ (WebCore::LayerRenderer::create):
+ (WebCore::LayerRenderer::LayerRenderer):
+ (WebCore::LayerRenderer::~LayerRenderer):
+ (WebCore::LayerRenderer::releaseLayerResources):
+ (WebCore::compareLayerZ):
+ (WebCore::LayerRenderer::drawLayers):
+ (WebCore::LayerRenderer::useSurface):
+ (WebCore::LayerRenderer::drawLayersOnSurfaces):
+ (WebCore::LayerRenderer::setRootLayer):
+ (WebCore::LayerRenderer::addLayer):
+ (WebCore::LayerRenderer::removeLayer):
+ (WebCore::LayerRenderer::addLayerToReleaseTextureResourcesList):
+ (WebCore::LayerRenderer::toOpenGLWindowCoordinates):
+ (WebCore::LayerRenderer::toWebKitWindowCoordinates):
+ (WebCore::LayerRenderer::toWebKitDocumentCoordinates):
+ (WebCore::LayerRenderer::drawDebugBorder):
+ (WebCore::LayerRenderer::drawHolePunchRect):
+ (WebCore::LayerRenderer::updateLayersRecursive):
+ (WebCore::hasRotationalComponent):
+ (WebCore::LayerRenderer::layerAlreadyOnSurface):
+ (WebCore::collect3DPreservingLayers):
+ (WebCore::LayerRenderer::compositeLayersRecursive):
+ (WebCore::LayerRenderer::updateScissorIfNeeded):
+ (WebCore::LayerRenderer::makeContextCurrent):
+ (WebCore::LayerRenderer::bindCommonAttribLocation):
+ (WebCore::LayerRenderer::initializeSharedGLObjects):
+ (WebCore::LayerRenderingResults::holePunchRect):
+ (WebCore::LayerRenderingResults::addHolePunchRect):
+ (WebCore::LayerRenderingResults::addDirtyRect):
+ (WebCore::LayerRenderingResults::isEmpty):
+ * platform/graphics/blackberry/LayerRenderer.h: Added.
+ (WebCore):
+ (LayerRenderingResults):
+ (WebCore::LayerRenderingResults::LayerRenderingResults):
+ (WebCore::LayerRenderingResults::holePunchRectSize):
+ (WebCore::LayerRenderingResults::dirtyRect):
+ (LayerRenderer):
+ (WebCore::LayerRenderer::rootLayer):
+ (WebCore::LayerRenderer::hardwareCompositing):
+ (WebCore::LayerRenderer::setClearSurfaceOnDrawLayers):
+ (WebCore::LayerRenderer::clearSurfaceOnDrawLayers):
+ (WebCore::LayerRenderer::context):
+ (WebCore::LayerRenderer::lastRenderingResults):
+ (WebCore::LayerRenderer::setNeedsCommit):
+
+2012-03-06 Roland Steiner <rolandsteiner@chromium.org>
+
+ r109563 caused perf regression
+ https://bugs.webkit.org/show_bug.cgi?id=80404
+
+ Add test for Element or ShadowRoot.
+
+ Reviewed by Antti Koivisto.
+
+ No new tests. (fix)
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::pushParentElement):
+
+2012-03-06 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: prepare for extracting ScriptMapping implementation from DebuggerPresentationModel.
+ https://bugs.webkit.org/show_bug.cgi?id=80396
+
+ Limit RawSourceCode usages to a subset of methods. This subset will be moved to ScriptMapping implementation in a separate change.
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel):
+ (WebInspector.DebuggerPresentationModel.prototype.createPlacard):
+ (WebInspector.DebuggerPresentationModel.prototype.createLiveLocation):
+ (WebInspector.DebuggerPresentationModel.prototype._parsedScriptSource):
+ (WebInspector.DebuggerPresentationModel.prototype._failedToParseScriptSource):
+ (WebInspector.DebuggerPresentationModel.prototype.setScriptSource.didEditScriptSource):
+ (WebInspector.DebuggerPresentationModel.prototype.setScriptSource):
+ (WebInspector.DebuggerPresentationModel.prototype._forceUpdateSourceMapping):
+ (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessageToScript):
+ (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
+ (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
+ (WebInspector.PresentationCallFrame):
+ (WebInspector.PresentationCallFrame.prototype.uiLocation):
+ (WebInspector.DebuggerPresentationModel.CallFramePlacard):
+ (WebInspector.DebuggerPresentationModelResourceBinding.prototype.canSetContent):
+ (WebInspector.DebuggerPresentationModelResourceBinding.prototype.setContent):
+ (WebInspector.DebuggerPresentationModelResourceBinding.prototype._uiSourceCodeForResource):
+ (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyRawLocation):
+
+2012-03-06 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: [Regression] Execution line is not revealed when debugger is stopped if scripts panel was not yet shown.
+ https://bugs.webkit.org/show_bug.cgi?id=80306
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/debugger/reveal-execution-line.html
+
+ * inspector/front-end/ConsoleView.js:
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
+ * inspector/front-end/JavaScriptSourceFrame.js:
+ (WebInspector.JavaScriptSourceFrame.prototype.afterTextChanged):
+ (WebInspector.JavaScriptSourceFrame.prototype.setExecutionLine):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._executionLineChanged):
+ (WebInspector.ScriptsPanel.prototype._revealExecutionLine):
+ (WebInspector.ScriptsPanel.prototype._callFrameSelected):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype.willHide):
+ (WebInspector.SourceFrame.prototype.highlightLine):
+ (WebInspector.SourceFrame.prototype.revealLine):
+ (WebInspector.SourceFrame.prototype._clearLineToReveal):
+ (WebInspector.SourceFrame.prototype.setContent):
+
+2012-03-06 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: remove reference to RawSourceCode from UISourceCode.
+ https://bugs.webkit.org/show_bug.cgi?id=80395
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/compile-front-end.sh:
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel):
+ (WebInspector.DebuggerPresentationModel.prototype._handleUISourceCodeListChanged):
+ (WebInspector.DebuggerPresentationModel.prototype._uiSourceCodeListChanged):
+ (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
+ (WebInspector.DebuggerPresentationModel.prototype.setScriptSource.didEditScriptSource):
+ (WebInspector.DebuggerPresentationModel.prototype.setScriptSource):
+ (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
+ (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
+ * inspector/front-end/RawSourceCode.js:
+ (WebInspector.RawSourceCode.prototype._createUISourceCode):
+ * inspector/front-end/UISourceCode.js:
+ (WebInspector.UISourceCode):
+
+2012-03-06 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: move timeline panel overview mode toggle buttons to overview sidebar tree
+ https://bugs.webkit.org/show_bug.cgi?id=80304
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/Images/statusbarButtonGlyphs.png:
+ * inspector/front-end/Settings.js:
+ (WebInspector.ExperimentsSettings):
+ * inspector/front-end/TimelineOverviewPane.js:
+ (WebInspector.TimelineOverviewPane):
+ (WebInspector.TimelineOverviewPane.prototype._showTimelines):
+ (WebInspector.TimelineOverviewPane.prototype._showMemoryGraph):
+ (WebInspector.TimelineOverviewPane.prototype._setVerticalOverview):
+ (WebInspector.TimelineOverviewPane.prototype._onOverviewModeChanged):
+ (WebInspector.TimelineOverviewPane.prototype.update):
+ (WebInspector.TimelineOverviewPane.prototype.reset):
+ (WebInspector.TimelineOverviewPane.prototype._onWindowChanged):
+ (WebInspector.TimelineVerticalOverview):
+ (WebInspector.TimelineOverviewModeSelector):
+ (WebInspector.TimelineOverviewModeSelector.prototype.addButton):
+ (WebInspector.TimelineOverviewModeSelector.prototype.get value):
+ (WebInspector.TimelineOverviewModeSelector.prototype._createButton):
+ (WebInspector.TimelineOverviewModeSelector.prototype._select):
+ (WebInspector.TimelineOverviewModeSelector.prototype._onClick):
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel):
+ (WebInspector.TimelinePanel.prototype.get statusBarItems):
+ (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
+ (WebInspector.TimelinePanel.prototype._updateEventDividers):
+ (WebInspector.TimelinePanel.prototype._glueParentButtonClicked):
+ (WebInspector.TimelinePanel.prototype.revealRecordAt):
+ * inspector/front-end/inspector.css:
+ * inspector/front-end/timelinePanel.css:
+ (.timeline-vertical-overview #timeline-overview-grid):
+ (.timeline-vertical-overview .timeline-overview-window):
+ (.timeline-vertical-overview .timeline-overview-dividers-background):
+ (.timeline-vertical-overview #timeline-overview-memory):
+ (.timeline-vertical-overview-status-bar-item.toggled-on .glyph):
+ (.timeline-vertical-overview-bars):
+ (.timeline-vertical-overview-bars .padding):
+ (.timeline-vertical-overview-bars .timeline-bar-vertical):
+ (.timeline.timeline-vertical-overview .resources-divider):
+ (.sidebar-tree-item .timeline-vertical-overview-status-bar-item):
+ (.timeline-overview-mode-selector):
+ (.timeline-overview-mode-selector .glyph):
+ (.timeline-overview-mode-selector button):
+ (.timeline-overview-mode-selector button.toggled):
+ (.timeline-overview-mode-selector button:active):
+ (.sidebar-tree-item:not(.selected) .timeline-overview-mode-selector button):
+ (.sidebar-tree-item:not(.selected) .timeline-overview-mode-selector button.toggled):
+ (.timeline-overview-mode-selector button:first-of-type):
+ (.timeline-overview-mode-selector button:last-of-type):
+ (.timeline-mode-vertical-bars .glyph):
+ (.timeline-mode-horizontal-bars .glyph):
+
+2012-03-05 Alexander Færøy <alexander.faeroy@nokia.com>
+
+ Make it explicit when we are allowing updates to the actual backing store or the tile buffers
+ https://bugs.webkit.org/show_bug.cgi?id=80288
+
+ Patch by Kenneth Rohde Christiansen and Alexander Færøy.
+
+ Reviewed by Noam Rosenthal.
+
+ * platform/graphics/TiledBackingStore.cpp:
+ (WebCore::TiledBackingStore::createTiles):
+ (WebCore::TiledBackingStore::isBackingStoreUpdatesSuspended):
+ (WebCore):
+ (WebCore::TiledBackingStore::isTileBufferUpdatesSuspended):
+ (WebCore::TiledBackingStore::startTileBufferUpdateTimer):
+ (WebCore::TiledBackingStore::startTileCreationTimer):
+ * platform/graphics/TiledBackingStore.h:
+ (TiledBackingStore):
+
+2012-03-06 Mark Rowe <mrowe@apple.com>
+
+ Build fix after r109877.
+
+ * WebCore.xcodeproj/project.pbxproj: Ensure that headers are copied in to WebCore.framework so that
+ WebKit can still find them.
+
+2012-03-06 Andreas Kling <awesomekling@apple.com>
+
+ Remove incorrect WTF::Vector traits for CSSProperty.
+ <http://webkit.org/b/53285>
+ <rdar://problem/10161286>
+
+ Reviewed by Antti Koivisto.
+
+ We shouldn't allow copying Vector<CSSProperty> contents around with memcpy()
+ as CSSProperty has a RefPtr member and this would muck up the refcount.
+ This was added to facilitate fast comparison of property vectors, and we no
+ longer use that, so there shouldn't be any performance concerns here.
+
+ * css/CSSProperty.h:
+
+2012-03-06 Adam Barth <abarth@webkit.org>
+
+ Attempt to fix the Qt minimal build.
+
+ * Target.pri:
+
+2012-03-06 Roland Steiner <rolandsteiner@chromium.org>
+
+ :scope should behave as :root outside scoped style sheet
+ https://bugs.webkit.org/show_bug.cgi?id=80389
+
+ Fall through to :root implementation if no scope is used.
+
+ Reviewed by Antti Koivisto.
+
+ Test: fast/css/style-scoped/scope-pseudo.html
+
+ * css/SelectorChecker.cpp:
+ (WebCore::SelectorChecker::checkOneSelector):
+
+2012-03-05 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: [Regression] Message bubbles are not removed from scripts panel source frames after console was cleared.
+ https://bugs.webkit.org/show_bug.cgi?id=80275
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._consoleMessagesCleared):
+ * inspector/front-end/utilities.js:
+
+2012-03-06 Adam Barth <abarth@webkit.org>
+
+ Move SQLDatabase code into Modules/webdatabase
+ https://bugs.webkit.org/show_bug.cgi?id=80393
+
+ Reviewed by Kentaro Hara.
+
+ There are still a couple (minor) SQLDatabase references from WebCore
+ proper, but we've gotten this code to the point where it makes sense to
+ move it into the Modules directory. (This patch just moves code---no
+ behavior change.)
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * DerivedSources.pri:
+ * GNUmakefile.am:
+ * GNUmakefile.list.am:
+ * Modules/webdatabase: Added.
+ * Modules/webdatabase/AbstractDatabase.cpp: Copied from Source/WebCore/storage/AbstractDatabase.cpp.
+ * Modules/webdatabase/AbstractDatabase.h: Copied from Source/WebCore/storage/AbstractDatabase.h.
+ * Modules/webdatabase/ChangeVersionWrapper.cpp: Copied from Source/WebCore/storage/ChangeVersionWrapper.cpp.
+ * Modules/webdatabase/ChangeVersionWrapper.h: Copied from Source/WebCore/storage/ChangeVersionWrapper.h.
+ * Modules/webdatabase/DOMWindowSQLDatabase.cpp: Copied from Source/WebCore/storage/DOMWindowSQLDatabase.cpp.
+ * Modules/webdatabase/DOMWindowSQLDatabase.h: Copied from Source/WebCore/storage/DOMWindowSQLDatabase.h.
+ * Modules/webdatabase/DOMWindowSQLDatabase.idl: Copied from Source/WebCore/storage/DOMWindowSQLDatabase.idl.
+ * Modules/webdatabase/Database.cpp: Copied from Source/WebCore/storage/Database.cpp.
+ * Modules/webdatabase/Database.h: Copied from Source/WebCore/storage/Database.h.
+ * Modules/webdatabase/Database.idl: Copied from Source/WebCore/storage/Database.idl.
+ * Modules/webdatabase/DatabaseAuthorizer.cpp: Copied from Source/WebCore/storage/DatabaseAuthorizer.cpp.
+ * Modules/webdatabase/DatabaseAuthorizer.h: Copied from Source/WebCore/storage/DatabaseAuthorizer.h.
+ * Modules/webdatabase/DatabaseCallback.h: Copied from Source/WebCore/storage/DatabaseCallback.h.
+ * Modules/webdatabase/DatabaseCallback.idl: Copied from Source/WebCore/storage/DatabaseCallback.idl.
+ * Modules/webdatabase/DatabaseContext.cpp: Copied from Source/WebCore/storage/DatabaseContext.cpp.
+ * Modules/webdatabase/DatabaseContext.h: Copied from Source/WebCore/storage/DatabaseContext.h.
+ * Modules/webdatabase/DatabaseDetails.h: Copied from Source/WebCore/storage/DatabaseDetails.h.
+ * Modules/webdatabase/DatabaseSync.cpp: Copied from Source/WebCore/storage/DatabaseSync.cpp.
+ * Modules/webdatabase/DatabaseSync.h: Copied from Source/WebCore/storage/DatabaseSync.h.
+ * Modules/webdatabase/DatabaseSync.idl: Copied from Source/WebCore/storage/DatabaseSync.idl.
+ * Modules/webdatabase/DatabaseTask.cpp: Copied from Source/WebCore/storage/DatabaseTask.cpp.
+ * Modules/webdatabase/DatabaseTask.h: Copied from Source/WebCore/storage/DatabaseTask.h.
+ * Modules/webdatabase/DatabaseThread.cpp: Copied from Source/WebCore/storage/DatabaseThread.cpp.
+ * Modules/webdatabase/DatabaseThread.h: Copied from Source/WebCore/storage/DatabaseThread.h.
+ * Modules/webdatabase/DatabaseTracker.cpp: Copied from Source/WebCore/storage/DatabaseTracker.cpp.
+ * Modules/webdatabase/DatabaseTracker.h: Copied from Source/WebCore/storage/DatabaseTracker.h.
+ * Modules/webdatabase/DatabaseTrackerClient.h: Copied from Source/WebCore/storage/DatabaseTrackerClient.h.
+ * Modules/webdatabase/OriginQuotaManager.cpp: Copied from Source/WebCore/storage/OriginQuotaManager.cpp.
+ * Modules/webdatabase/OriginQuotaManager.h: Copied from Source/WebCore/storage/OriginQuotaManager.h.
+ * Modules/webdatabase/OriginUsageRecord.cpp: Copied from Source/WebCore/storage/OriginUsageRecord.cpp.
+ * Modules/webdatabase/OriginUsageRecord.h: Copied from Source/WebCore/storage/OriginUsageRecord.h.
+ * Modules/webdatabase/SQLCallbackWrapper.h: Copied from Source/WebCore/storage/SQLCallbackWrapper.h.
+ * Modules/webdatabase/SQLError.h: Copied from Source/WebCore/storage/SQLError.h.
+ * Modules/webdatabase/SQLError.idl: Copied from Source/WebCore/storage/SQLError.idl.
+ * Modules/webdatabase/SQLException.cpp: Copied from Source/WebCore/storage/SQLException.cpp.
+ * Modules/webdatabase/SQLException.h: Copied from Source/WebCore/storage/SQLException.h.
+ * Modules/webdatabase/SQLException.idl: Copied from Source/WebCore/storage/SQLException.idl.
+ * Modules/webdatabase/SQLResultSet.cpp: Copied from Source/WebCore/storage/SQLResultSet.cpp.
+ * Modules/webdatabase/SQLResultSet.h: Copied from Source/WebCore/storage/SQLResultSet.h.
+ * Modules/webdatabase/SQLResultSet.idl: Copied from Source/WebCore/storage/SQLResultSet.idl.
+ * Modules/webdatabase/SQLResultSetRowList.cpp: Copied from Source/WebCore/storage/SQLResultSetRowList.cpp.
+ * Modules/webdatabase/SQLResultSetRowList.h: Copied from Source/WebCore/storage/SQLResultSetRowList.h.
+ * Modules/webdatabase/SQLResultSetRowList.idl: Copied from Source/WebCore/storage/SQLResultSetRowList.idl.
+ * Modules/webdatabase/SQLStatement.cpp: Copied from Source/WebCore/storage/SQLStatement.cpp.
+ * Modules/webdatabase/SQLStatement.h: Copied from Source/WebCore/storage/SQLStatement.h.
+ * Modules/webdatabase/SQLStatementCallback.h: Copied from Source/WebCore/storage/SQLStatementCallback.h.
+ * Modules/webdatabase/SQLStatementCallback.idl: Copied from Source/WebCore/storage/SQLStatementCallback.idl.
+ * Modules/webdatabase/SQLStatementErrorCallback.h: Copied from Source/WebCore/storage/SQLStatementErrorCallback.h.
+ * Modules/webdatabase/SQLStatementErrorCallback.idl: Copied from Source/WebCore/storage/SQLStatementErrorCallback.idl.
+ * Modules/webdatabase/SQLStatementSync.cpp: Copied from Source/WebCore/storage/SQLStatementSync.cpp.
+ * Modules/webdatabase/SQLStatementSync.h: Copied from Source/WebCore/storage/SQLStatementSync.h.
+ * Modules/webdatabase/SQLTransaction.cpp: Copied from Source/WebCore/storage/SQLTransaction.cpp.
+ * Modules/webdatabase/SQLTransaction.h: Copied from Source/WebCore/storage/SQLTransaction.h.
+ * Modules/webdatabase/SQLTransaction.idl: Copied from Source/WebCore/storage/SQLTransaction.idl.
+ * Modules/webdatabase/SQLTransactionCallback.h: Copied from Source/WebCore/storage/SQLTransactionCallback.h.
+ * Modules/webdatabase/SQLTransactionCallback.idl: Copied from Source/WebCore/storage/SQLTransactionCallback.idl.
+ * Modules/webdatabase/SQLTransactionClient.cpp: Copied from Source/WebCore/storage/SQLTransactionClient.cpp.
+ * Modules/webdatabase/SQLTransactionClient.h: Copied from Source/WebCore/storage/SQLTransactionClient.h.
+ * Modules/webdatabase/SQLTransactionCoordinator.cpp: Copied from Source/WebCore/storage/SQLTransactionCoordinator.cpp.
+ * Modules/webdatabase/SQLTransactionCoordinator.h: Copied from Source/WebCore/storage/SQLTransactionCoordinator.h.
+ * Modules/webdatabase/SQLTransactionErrorCallback.h: Copied from Source/WebCore/storage/SQLTransactionErrorCallback.h.
+ * Modules/webdatabase/SQLTransactionErrorCallback.idl: Copied from Source/WebCore/storage/SQLTransactionErrorCallback.idl.
+ * Modules/webdatabase/SQLTransactionSync.cpp: Copied from Source/WebCore/storage/SQLTransactionSync.cpp.
+ * Modules/webdatabase/SQLTransactionSync.h: Copied from Source/WebCore/storage/SQLTransactionSync.h.
+ * Modules/webdatabase/SQLTransactionSync.idl: Copied from Source/WebCore/storage/SQLTransactionSync.idl.
+ * Modules/webdatabase/SQLTransactionSyncCallback.h: Copied from Source/WebCore/storage/SQLTransactionSyncCallback.h.
+ * Modules/webdatabase/SQLTransactionSyncCallback.idl: Copied from Source/WebCore/storage/SQLTransactionSyncCallback.idl.
+ * Modules/webdatabase/WorkerContextSQLDatabase.cpp: Copied from Source/WebCore/storage/WorkerContextSQLDatabase.cpp.
+ * Modules/webdatabase/WorkerContextSQLDatabase.h: Copied from Source/WebCore/storage/WorkerContextSQLDatabase.h.
+ * Modules/webdatabase/WorkerContextSQLDatabase.idl: Copied from Source/WebCore/storage/WorkerContextSQLDatabase.idl.
+ * Modules/webdatabase/chromium: Added.
+ * Modules/webdatabase/chromium/DatabaseObserver.h: Copied from Source/WebCore/storage/chromium/DatabaseObserver.h.
+ * Modules/webdatabase/chromium/DatabaseTrackerChromium.cpp: Copied from Source/WebCore/storage/chromium/DatabaseTrackerChromium.cpp.
+ * Modules/webdatabase/chromium/QuotaTracker.cpp: Copied from Source/WebCore/storage/chromium/QuotaTracker.cpp.
+ * Modules/webdatabase/chromium/QuotaTracker.h: Copied from Source/WebCore/storage/chromium/QuotaTracker.h.
+ * Modules/webdatabase/chromium/SQLTransactionClientChromium.cpp: Copied from Source/WebCore/storage/chromium/SQLTransactionClientChromium.cpp.
+ * Target.pri:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+ * WebCore.pri:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.vcproj/WebCoreCommon.vsprops:
+ * WebCore.vcproj/copyForwardingHeaders.cmd:
+ * WebCore.xcodeproj/project.pbxproj:
+ * storage/AbstractDatabase.cpp: Removed.
+ * storage/AbstractDatabase.h: Removed.
+ * storage/ChangeVersionWrapper.cpp: Removed.
+ * storage/ChangeVersionWrapper.h: Removed.
+ * storage/DOMWindowSQLDatabase.cpp: Removed.
+ * storage/DOMWindowSQLDatabase.h: Removed.
+ * storage/DOMWindowSQLDatabase.idl: Removed.
+ * storage/Database.cpp: Removed.
+ * storage/Database.h: Removed.
+ * storage/Database.idl: Removed.
+ * storage/DatabaseAuthorizer.cpp: Removed.
+ * storage/DatabaseAuthorizer.h: Removed.
+ * storage/DatabaseCallback.h: Removed.
+ * storage/DatabaseCallback.idl: Removed.
+ * storage/DatabaseContext.cpp: Removed.
+ * storage/DatabaseContext.h: Removed.
+ * storage/DatabaseDetails.h: Removed.
+ * storage/DatabaseSync.cpp: Removed.
+ * storage/DatabaseSync.h: Removed.
+ * storage/DatabaseSync.idl: Removed.
+ * storage/DatabaseTask.cpp: Removed.
+ * storage/DatabaseTask.h: Removed.
+ * storage/DatabaseThread.cpp: Removed.
+ * storage/DatabaseThread.h: Removed.
+ * storage/DatabaseTracker.cpp: Removed.
+ * storage/DatabaseTracker.h: Removed.
+ * storage/DatabaseTrackerClient.h: Removed.
+ * storage/OriginQuotaManager.cpp: Removed.
+ * storage/OriginQuotaManager.h: Removed.
+ * storage/OriginUsageRecord.cpp: Removed.
+ * storage/OriginUsageRecord.h: Removed.
+ * storage/SQLCallbackWrapper.h: Removed.
+ * storage/SQLError.h: Removed.
+ * storage/SQLError.idl: Removed.
+ * storage/SQLException.cpp: Removed.
+ * storage/SQLException.h: Removed.
+ * storage/SQLException.idl: Removed.
+ * storage/SQLResultSet.cpp: Removed.
+ * storage/SQLResultSet.h: Removed.
+ * storage/SQLResultSet.idl: Removed.
+ * storage/SQLResultSetRowList.cpp: Removed.
+ * storage/SQLResultSetRowList.h: Removed.
+ * storage/SQLResultSetRowList.idl: Removed.
+ * storage/SQLStatement.cpp: Removed.
+ * storage/SQLStatement.h: Removed.
+ * storage/SQLStatementCallback.h: Removed.
+ * storage/SQLStatementCallback.idl: Removed.
+ * storage/SQLStatementErrorCallback.h: Removed.
+ * storage/SQLStatementErrorCallback.idl: Removed.
+ * storage/SQLStatementSync.cpp: Removed.
+ * storage/SQLStatementSync.h: Removed.
+ * storage/SQLTransaction.cpp: Removed.
+ * storage/SQLTransaction.h: Removed.
+ * storage/SQLTransaction.idl: Removed.
+ * storage/SQLTransactionCallback.h: Removed.
+ * storage/SQLTransactionCallback.idl: Removed.
+ * storage/SQLTransactionClient.cpp: Removed.
+ * storage/SQLTransactionClient.h: Removed.
+ * storage/SQLTransactionCoordinator.cpp: Removed.
+ * storage/SQLTransactionCoordinator.h: Removed.
+ * storage/SQLTransactionErrorCallback.h: Removed.
+ * storage/SQLTransactionErrorCallback.idl: Removed.
+ * storage/SQLTransactionSync.cpp: Removed.
+ * storage/SQLTransactionSync.h: Removed.
+ * storage/SQLTransactionSync.idl: Removed.
+ * storage/SQLTransactionSyncCallback.h: Removed.
+ * storage/SQLTransactionSyncCallback.idl: Removed.
+ * storage/WorkerContextSQLDatabase.cpp: Removed.
+ * storage/WorkerContextSQLDatabase.h: Removed.
+ * storage/WorkerContextSQLDatabase.idl: Removed.
+ * storage/chromium/DatabaseObserver.h: Removed.
+ * storage/chromium/DatabaseTrackerChromium.cpp: Removed.
+ * storage/chromium/QuotaTracker.cpp: Removed.
+ * storage/chromium/QuotaTracker.h: Removed.
+ * storage/chromium/SQLTransactionClientChromium.cpp: Removed.
+
+2012-03-05 Kent Tamura <tkent@chromium.org>
+
+ Do not reformat strings in <input type=number> on platforms using LocalizedNumberICU.
+ https://bugs.webkit.org/show_bug.cgi?id=78326
+
+ Reviewed by Hajime Morita.
+
+ We had bugs such as stripping leading zeros, dropping lower digits
+ of large numbers because we parse a user-input string to a double
+ value, and generate a string from the double value.
+
+ In order to avoid such reformatting, we converts number strings by
+ replacing standard digits to corresponding localized digits.
+
+ * WebCore.gypi: Added LocalizedNumberICU.h
+ * platform/text/LocalizedNumberICU.cpp:
+ (WebCore::ICULocale::ICULocale): Added.
+ (WebCore::ICULocale::create): A testing factory function.
+ (WebCore::ICULocale::createForCurrentLocale): A practical factory function.
+ (WebCore::ICULocale::setDecimalSymbol): Initialize a symbol table.
+ (WebCore::ICULocale::initializeDecimalFormat): Initialize ICU DecimalFormat.
+ (WebCore::ICULocale::convertToLocalizedNumber):
+ Replace characters to corresponding localized characters.
+ (WebCore::matches): A helper function for convertFromLocalizedNumber.
+ (WebCore::endsWith): ditto.
+ (WebCore::ICULocale::determineStartPosition): ditto.
+ (WebCore::ICULocale::matchedDecimalSymbolIndex): ditto.
+ (WebCore::ICULocale::convertFromLocalizedNumber):
+ Replace characters to corresponding standard characters.
+ (WebCore::currentLocale): Added.
+ (WebCore::convertToLocalizedNumber): Uses ICULocale::convertToLocalizedNumber.
+ (WebCore::convertFromLocalizedNumber): Uses ICULocale::convertFromLocalizedNumber.
+ * platform/text/LocalizedNumberICU.h: Added.
+ (ICULocale): Added. This is exposed to WebKit/chromium/tests/LocalizedNumberICUTest.cpp.
+
+2012-03-06 Adam Barth <abarth@webkit.org>
+
+ Attempt to fix the GTK minimal build
+ https://bugs.webkit.org/show_bug.cgi?id=80390
+
+ Reviewed by Csaba Osztrogonác.
+
+ Add some missing ifdefs.
+
+ * Modules/geolocation/NavigatorGeolocation.cpp:
+ * Modules/geolocation/NavigatorGeolocation.h:
+
+2012-03-05 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: stop using RawSourceCode in BreakpointManager.
+ https://bugs.webkit.org/show_bug.cgi?id=80286
+
+ Reviewed by Vsevolod Vlasov.
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager.prototype.uiSourceCodeAdded):
+ (WebInspector.BreakpointManager.prototype.setBreakpoint):
+ (WebInspector.BreakpointManager.prototype._materializeBreakpoint):
+ (WebInspector.BreakpointManager.prototype._breakpointDebuggerLocationChanged):
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel):
+ * inspector/front-end/ScriptMapping.js: Added.
+ (WebInspector.ScriptMapping):
+ (WebInspector.ScriptMapping.prototype.rawLocationToUILocation):
+ (WebInspector.ScriptMapping.prototype.uiLocationToRawLocation):
+ (WebInspector.ScriptMapping.prototype.createLiveLocation):
+ (WebInspector.ScriptMapping.prototype.uiSourceCodeList):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.html:
+
+2012-03-05 Philippe Normand <pnormand@igalia.com>
+
+ WebAudio JSC-related fixes
+ https://bugs.webkit.org/show_bug.cgi?id=80299
+
+ Reviewed by Adam Barth.
+
+ * bindings/js/JSAudioContextCustom.cpp:
+ (WebCore::JSAudioContextConstructor::constructJSAudioContext):
+ Wrap the audio context in a DOM wrapper.
+ * webaudio/AudioContext.idl: No need to protect EventTarget by V8
+ guards, I think.
+ * webaudio/JavaScriptAudioNode.idl: Ditto.
+
+2012-03-05 Kishore Bolisetty <kbolisetty@innominds.com>
+
+ Element not fully repainted after application and removal of transform
+ https://bugs.webkit.org/show_bug.cgi?id=61338
+
+ Reviewed by Simon Fraser.
+ RenderLayer is created and removed when a transform is applied and removed to element.
+ To render the element properly after removal of transform on it, preferred widths and dimensions of
+ the element and its containing block needs to be recalculated.
+
+ Test: fast/repaint/transform-rotate-and-remove.html
+
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore):
+ (WebCore::RenderBoxModelObject::styleWillChange):
+ (WebCore::RenderBoxModelObject::styleDidChange):
+ * rendering/RenderBoxModelObject.h:
+ (RenderBoxModelObject):
+
+2012-03-05 Gavin Barraclough <barraclough@apple.com>
+
+ putByIndex should throw in strict mode
+ https://bugs.webkit.org/show_bug.cgi?id=80335
+
+ Reviewed by Filip Pizlo.
+
+ Make the MethodTable PutByIndex trap take a boolean 'shouldThrow' parameter.
+
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneDeserializer::putProperty):
+ * bindings/objc/WebScriptObject.mm:
+ (-[WebScriptObject setWebScriptValueAtIndex:value:]):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (GenerateHeader):
+ (GenerateImplementation):
+ * bridge/NP_jsobject.cpp:
+ (_NPN_SetProperty):
+ * bridge/jni/jni_jsobject.mm:
+ (JavaJSObject::setSlot):
+ * bridge/runtime_array.cpp:
+ (JSC::RuntimeArray::putByIndex):
+ * bridge/runtime_array.h:
+ (RuntimeArray):
+
+2012-03-05 Shinya Kawanaka <shinyak@chromium.org>
+
+ InsertionPoint::attach should be consistent with Element.
+ https://bugs.webkit.org/show_bug.cgi?id=80373
+
+ Reviewed by Hajime Morita.
+
+ This patch is preparation for coming <shadow> patches.
+
+ InsertionPoint used to attach fallback elements before attaching distributed elements.
+ To be consistent with Element::attach behavior, attaching distributed elements first is
+ natural, because Element attaches a shadow tree first.
+
+ Also, this patch extracts a few methods form InsretionPoint::attach() and detach()
+ to keep code clean. They will become messy without this refactoring when adding
+ <shadow> patch.
+
+ No new tests. Should be covered by existing tests.
+
+ * html/shadow/InsertionPoint.cpp:
+ (WebCore::InsertionPoint::attach):
+ (WebCore::InsertionPoint::detach):
+ (WebCore::InsertionPoint::distributeHostChildren):
+ (WebCore):
+ (WebCore::InsertionPoint::clearDistribution):
+ (WebCore::InsertionPoint::attachDistributedNode):
+ * html/shadow/InsertionPoint.h:
+ (InsertionPoint):
+
+2012-03-05 Adam Barth <abarth@webkit.org>
+
+ Attempt to fix a number of GTK tests.
+
+ * GNUmakefile.list.am:
+
+2012-03-05 Joseph Pecoraro <pecoraro@apple.com>
+
+ Unreviewed rollout of r109858 for restructuring.
+
+2012-03-05 Joseph Pecoraro <pecoraro@apple.com>
+
+ <http://webkit.org/b/78575> Web Inspector: Hide dock button when not allowed to dock
+
+ There are times when an undocked inspector frontend is not allowed to
+ attach to the main window. We can remove the dock button in those cases.
+
+ Reviewed by Timothy Hatcher.
+
+ No new tests. This functionality is port specific right now.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::performPostLayoutTasks):
+ When the main frame is resized we let the inspector frontend client
+ update its docked availablility.
+
+ * WebCore.exp.in:
+ * inspector/InspectorInstrumentation.h:
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didResizeMainFrameImpl):
+ (WebCore::InspectorInstrumentation::didResizeMainFrame):
+ * inspector/InspectorClient.h:
+ (WebCore::InspectorClient::updateDockingAvailability):
+ * inspector/InspectorController.h:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::resume):
+ (WebCore::InspectorController::updateDockingAvailability):
+ When the main frame is resized call up to the InspectorClient to let
+ it update docking availability of the inspector frontend.
+
+ * inspector/InspectorFrontendClient.h:
+ * inspector/InspectorFrontendClientLocal.h:
+ * inspector/InspectorFrontendClientLocal.cpp:
+ (WebCore::InspectorFrontendClientLocal::frontendLoaded):
+ (WebCore::InspectorFrontendClientLocal::setDockingUnavailable):
+ On ports where the inspector frontend client is local, provide a
+ setDockingUnavailable InspectorFrontendAPI to update the docking state.
+ Automatically update availablity when the frontend completes loading.
+
+ * inspector/front-end/InspectorFrontendAPI.js:
+ (InspectorFrontendAPI.setDockingUnavailable):
+ * inspector/front-end/inspector.js:
+ (WebInspector._createGlobalStatusBarItems):
+ (WebInspector.setAttachedWindow):
+ (WebInspector.setDockingUnavailable):
+ (WebInspector.updateDockToggleButtonVisibility):
+ Update the dock button's visibility when its created, when the attached
+ state changes, when get a frontend API notification that we cannot attach.
+
+2012-03-05 Adrienne Walker <enne@google.com>
+
+ Compositing overlap testing can throw layers into compositing when they should not be.
+ https://bugs.webkit.org/show_bug.cgi?id=50192
+
+ Reviewed by Simon Fraser.
+
+ The previous overlap map behavior was that a non-composited query
+ layer would become composited due to overlap if and only if the query
+ layer's absolute bounds overlapped the absolute bounds of some other
+ layer which:
+ - draws before the query layer
+ - is or has a compositing ancestor
+
+ This behavior, while correct, was too permissive in throwing layers
+ into compositing, causing many layers to get their own backing when
+ they could have just gone into their compositing ancestor's backing.
+
+ The correct logic is that non-composited query layer needs to be
+ composited due to overlap if and only if the query layer's absolute
+ bounds overlap the absolute bounds of some other layer which:
+ - draws before the query layer
+ - has a different compositing ancestor than the query layer
+ - is or has a compositing ancestor that is a descendent of the
+ query layer's compositing ancestor
+
+ This patch changes the semantics of the overlap map to enable this
+ behavior.
+
+ Rather than having one global overlap map, there is now a stack of
+ overlap maps. New (empty) overlap maps are pushed onto the stack
+ whenever a layer becomes a compositing ancestor and popped after all
+ of the compositing requirements for that layer's children have been
+ computed.
+
+ The compositing ancestor and all of its non-composited children of a
+ compositing ancestor do not get considered for overlap until their
+ composited ancestor has been popped off the stack. If a compositing
+ ancestor has a compositing subtree, then any descendents of that
+ compositing ancestor that draw after that subtree will consider
+ everything in the compositing subtree for overlap.
+
+ Test: compositing/layer-creation/stacking-context-overlap.html
+
+ * platform/graphics/Region.cpp:
+ (WebCore::Region::intersects):
+ (WebCore):
+ * platform/graphics/Region.h:
+ (Region):
+ * rendering/RenderLayerCompositor.cpp:
+ (RenderLayerCompositor::OverlapMap):
+ (WebCore::RenderLayerCompositor::OverlapMap::OverlapMap):
+ (WebCore::RenderLayerCompositor::OverlapMap::add):
+ (WebCore::RenderLayerCompositor::OverlapMap::contains):
+ (WebCore::RenderLayerCompositor::OverlapMap::overlapsLayers):
+ (WebCore::RenderLayerCompositor::OverlapMap::isEmpty):
+ (WebCore::RenderLayerCompositor::OverlapMap::popCompositingContainer):
+ (WebCore::RenderLayerCompositor::OverlapMap::pushCompositingContainer):
+ (WebCore::RenderLayerCompositor::addToOverlapMapRecursive):
+ (WebCore::RenderLayerCompositor::computeCompositingRequirements):
+ * rendering/RenderLayerCompositor.h:
+ (RenderLayerCompositor):
+
+2012-03-05 Anders Carlsson <andersca@apple.com>
+
+ Address review comments from https://bugs.webkit.org/show_bug.cgi?id=80368
+
+ * platform/graphics/ca/mac/TileCache.mm:
+ (WebCore::TileCache::setNeedsDisplayInRect):
+
+2012-03-05 Yoshifumi Inoue <yosin@chromium.org>
+
+ [Forms] HTMLFieldSetForms.idl doesn't have type attribute.
+ https://bugs.webkit.org/show_bug.cgi?id=80109
+
+ Reviewed by Hajime Morita.
+
+ Test: fast/forms/fieldset/fieldset-type.html
+
+ * html/HTMLFieldSetElement.idl: Add attribute "type"
+
+2012-03-05 Anders Carlsson <andersca@apple.com>
+
+ Fix build.
+
+ * platform/graphics/ca/mac/TileCache.mm:
+ (WebCore::TileCache::setScale):
+
+2012-03-05 Anders Carlsson <andersca@apple.com>
+
+ pinch-to-zoom and double-tap flicker when using the new scrolling model
+ https://bugs.webkit.org/show_bug.cgi?id=80368
+ <rdar://problem/10866221>
+
+ Reviewed by Sam Weinig.
+
+ In order to work better with zooming, make the tile cache undo the scale transformation
+ and handle the scaling manually. This avoids creating huge tile backing stores when zoomed in.
+
+ * platform/graphics/ca/mac/TileCache.mm:
+ (WebCore::TileCache::TileCache):
+ Initialize m_scale to 1.
+
+ (WebCore::TileCache::setNeedsDisplayInRect):
+ Scale the given rect appropriately.
+
+ (WebCore::TileCache::drawLayer):
+ Apply a scale context transform.
+
+ (WebCore::TileCache::setScale):
+ No longer set the contents scale. Instead, update the scale and revalidate the tiles.
+
+ (WebCore::TileCache::revalidateTiles):
+ Return early if the bounds are empty. This avoids showing a single tile if that happens due to a race condition.
+
+ (WebCore::TileCache::getTileIndexRangeForRect):
+ Apply the scale to the bounds.
+
+ (WebCore::TileCache::createTileLayer):
+ Don't set the contents scale.
+
+ * platform/graphics/ca/mac/WebTileCacheLayer.mm:
+ (-[WebTileCacheLayer setContentsScale:]):
+ Call TileCache::setScale.
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::updateCompositedBounds):
+ Make sure to give the tile cache layer sane composited bounds, even if the page has absolutely positioned
+ elements that are outside of the page.
+
+2012-03-05 Leo Yang <leo.yang@torchmobile.com.cn>
+
+ GraphicsContext3D.h should include RefCounted.h explicitly
+ https://bugs.webkit.org/show_bug.cgi?id=80251
+
+ Reviewed by Rob Buis.
+
+ GraphicsContext3D.h was using RefCounted but including RefCounted.h indirectly
+ through GraphicsLayer.h through Animation.h. However Animation.h is included
+ by GraphicsLayer.h only when ACCELERATED_COMPOSITING is on. For some configurations
+ that don't use ACCELERATED_COMPOSITING but use GraphicsContext3D, like the
+ BlackBerry x86 configuration, the indirect inclusion will fail.
+
+ This patch is adding explicit inclusion of RefCounted.h to avoid that kind of
+ problem.
+
+ * platform/graphics/GraphicsContext3D.h:
+
+2012-03-05 Kenichi Ishibashi <bashi@chromium.org>
+
+ [WebSocket] Should raise SYNTAX_ERR when message contains unpaired surrogates
+ https://bugs.webkit.org/show_bug.cgi?id=80103
+
+ Reviewed by Kent Tamura.
+
+ Add UTF8 validation checks for WebSocket message and close reason.
+
+ Tests: http/tests/websocket/tests/hybi/unpaired-surrogates-in-close-reason.html
+ http/tests/websocket/tests/hybi/unpaired-surrogates-in-message.html
+
+ * Modules/websockets/WebSocket.cpp:
+ (WebCore::WebSocket::send): Raise SYNTAX_ERR if the message is invalid.
+ (WebCore::WebSocket::close):Raise SYNTAX_ERR if the reason is invalid.
+ * Modules/websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::send): Check whether message is a valid UTF8 string.
+
+2012-03-05 Kenneth Russell <kbr@google.com>
+
+ [chromium] Notify CCLayerImpl tree of context loss and restoration
+ https://bugs.webkit.org/show_bug.cgi?id=80339
+
+ Reviewed by James Robinson.
+
+ Tested by manually killing GPU process while playing Flash video.
+ Video continues to play after compositor restores its context.
+
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ (WebCore::CCLayerImpl::didLoseAndRecreateGraphicsContext):
+ (WebCore):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (CCLayerImpl):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::sendContextLostAndRestoredNotification):
+ (WebCore):
+ (WebCore::CCLayerTreeHostImpl::sendContextLostAndRestoredNotificationRecursive):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
+ (CCLayerTreeHostImpl):
+ * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
+ (WebCore::CCPluginLayerImpl::didLoseAndRecreateGraphicsContext):
+ (WebCore):
+ * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
+ (CCPluginLayerImpl):
+ * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
+ (WebCore::CCSingleThreadProxy::recreateContext):
+
+2012-03-05 Changhun Kang <temoochin@company100.net>
+
+ Change the argument orders to match OpenGL's in GraphicsContext3D functions
+ https://bugs.webkit.org/show_bug.cgi?id=80120
+
+ Reviewed by Kenneth Russell.
+
+ No new tests because this patch just change the order of arguments.
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore):
+ (WebCore::WebGLRenderingContext::uniform1fv):
+ (WebCore::WebGLRenderingContext::uniform1iv):
+ (WebCore::WebGLRenderingContext::uniform2fv):
+ (WebCore::WebGLRenderingContext::uniform2iv):
+ (WebCore::WebGLRenderingContext::uniform3fv):
+ (WebCore::WebGLRenderingContext::uniform3iv):
+ (WebCore::WebGLRenderingContext::uniform4fv):
+ (WebCore::WebGLRenderingContext::uniform4iv):
+ (WebCore::WebGLRenderingContext::uniformMatrix2fv):
+ (WebCore::WebGLRenderingContext::uniformMatrix3fv):
+ (WebCore::WebGLRenderingContext::uniformMatrix4fv):
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::drawDebugBorderQuad):
+ (WebCore::LayerRendererChromium::drawTileQuad):
+ (WebCore::LayerRendererChromium::drawYUV):
+ (WebCore::LayerRendererChromium::drawStreamTexture):
+ (WebCore::LayerRendererChromium::drawTexturedQuad):
+ * platform/graphics/chromium/cc/CCRenderSurface.cpp:
+ (WebCore::CCRenderSurface::drawSurface):
+ * platform/graphics/efl/GraphicsContext3DEfl.cpp:
+ (WebCore::GraphicsContext3D::uniform1fv):
+ (WebCore::GraphicsContext3D::uniform1iv):
+ (WebCore::GraphicsContext3D::uniform2fv):
+ (WebCore::GraphicsContext3D::uniform2iv):
+ (WebCore::GraphicsContext3D::uniform3fv):
+ (WebCore::GraphicsContext3D::uniform3iv):
+ (WebCore::GraphicsContext3D::uniform4fv):
+ (WebCore::GraphicsContext3D::uniform4iv):
+ (WebCore::GraphicsContext3D::uniformMatrix2fv):
+ (WebCore::GraphicsContext3D::uniformMatrix3fv):
+ (WebCore::GraphicsContext3D::uniformMatrix4fv):
+ * platform/graphics/filters/FECustomFilter.cpp:
+ (WebCore::FECustomFilter::bindProgramAndBuffers):
+ * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
+ (WebCore::GraphicsContext3D::uniform1fv):
+ (WebCore::GraphicsContext3D::uniform2fv):
+ (WebCore::GraphicsContext3D::uniform3fv):
+ (WebCore::GraphicsContext3D::uniform4fv):
+ (WebCore::GraphicsContext3D::uniform1iv):
+ (WebCore::GraphicsContext3D::uniform2iv):
+ (WebCore::GraphicsContext3D::uniform3iv):
+ (WebCore::GraphicsContext3D::uniform4iv):
+ (WebCore::GraphicsContext3D::uniformMatrix2fv):
+ (WebCore::GraphicsContext3D::uniformMatrix3fv):
+ (WebCore::GraphicsContext3D::uniformMatrix4fv):
+ * platform/graphics/qt/GraphicsContext3DQt.cpp:
+ (WebCore::GraphicsContext3D::uniform1fv):
+ (WebCore::GraphicsContext3D::uniform2fv):
+ (WebCore::GraphicsContext3D::uniform3fv):
+ (WebCore::GraphicsContext3D::uniform4fv):
+ (WebCore::GraphicsContext3D::uniform1iv):
+ (WebCore::GraphicsContext3D::uniform2iv):
+ (WebCore::GraphicsContext3D::uniform3iv):
+ (WebCore::GraphicsContext3D::uniform4iv):
+ (WebCore::GraphicsContext3D::uniformMatrix2fv):
+ (WebCore::GraphicsContext3D::uniformMatrix3fv):
+ (WebCore::GraphicsContext3D::uniformMatrix4fv):
+
+2012-03-05 Yoshifumi Inoue <yosin@chromium.org>
+
+ [Forms] HTMLFieldSetForms.idl doesn't have name attribute.
+ https://bugs.webkit.org/show_bug.cgi?id=80108
+
+ Reviewed by Hajime Morita.
+
+ Test: fast/forms/fieldset/fieldset-name.html
+
+ * html/HTMLFieldSetElement.idl: Add "name" attribute.
+
+2012-03-05 Levi Weintraub <leviw@chromium.org>
+
+ Update usage of LayoutUnits in RenderBox
+ https://bugs.webkit.org/show_bug.cgi?id=80039
+
+ Reviewed by Julien Chaffraix.
+
+ Updating the usage of integers versus LayoutUnits in RenderBox to mirror the
+ subpixellayout branch. This reverts absoluteRects, intrinsicSize, and focusRingRects
+ methods to use integers, and flipForWritingMode functions to LayoutUnits.
+
+ No new tests. No change in behavior.
+
+ * platform/graphics/FractionalLayoutRect.h:
+ (WebCore::FractionalLayoutRect::pixelSnappedX): Convenience methods that only calculate
+ the needed values. This requires less computation than pixelSnappedIntRect(r).x().
+ (WebCore::FractionalLayoutRect::pixelSnappedY): Ditto.
+ (WebCore::FractionalLayoutRect::pixelSnappedWidth): Ditto.
+ (WebCore::FractionalLayoutRect::pixelSnappedHeight): Ditto.
+ (WebCore::FractionalLayoutRect::pixelSnappedMaxX): Ditto.
+ (WebCore::FractionalLayoutRect::pixelSnappedMaxY): Ditto.
+ (FractionalLayoutRect):
+ * platform/graphics/IntRect.h:
+ (IntRect):
+ (WebCore::IntRect::pixelSnappedX): Stub methods to allow us to use IntRects like we do
+ FractionalLayoutRects.
+ (WebCore::IntRect::pixelSnappedY): Ditto.
+ (WebCore::IntRect::pixelSnappedMaxX): Ditto.
+ (WebCore::IntRect::pixelSnappedMaxY): Ditto.
+ (WebCore::IntRect::pixelSnappedWidth): Ditto.
+ (WebCore::IntRect::pixelSnappedHeight): Ditto.
+ * rendering/LayoutTypes.h:
+ (WebCore::pixelSnappedIntRect): Convenience method for building a pixelSnappedIntRect from
+ a LayoutPoint and LayoutSize without constructing an intermediate LayoutRect.
+ (WebCore):
+ (WebCore::snapSizeToPixel): Stub method for snapping a LayoutUnit representing a size to
+ its pixel value using its location.
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::pixelSnappedClientWidth): Changing to actually call snapSizeToPixel.
+ (WebCore::RenderBox::pixelSnappedClientHeight): Ditto.
+ (WebCore::RenderBox::absoluteRects): Switching to return IntRects that represent the actual
+ rendered location on screen.
+ (WebCore::RenderBox::addFocusRingRects): Ditto.
+ (WebCore::RenderBox::paintFillLayer): One-liner switching an IntSize() to LayoutSize() to
+ avoid unnecessary conversion.
+ (WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats): Preparing for the conversion by
+ replacing 0 with zeroLayoutUnit.
+ (WebCore::RenderBox::positionLineBox): Preparing for conversion by replacing lroundf
+ with roundedLayoutUnit.
+ (WebCore::RenderBox::flipForWritingMode): Switching to use LayoutUnits.
+ * rendering/RenderBox.h:
+ (RenderBox):
+ (WebCore::RenderBox::pixelSnappedBorderBoxRect): Convenience method.
+ (WebCore::RenderBox::borderBoundingBox): Converting to a pixelSnappedIntRect.
+ (WebCore::RenderBox::intrinsicSize): Intrinsic sizes should always be integers.
+
+2012-03-05 Adam Barth <abarth@webkit.org>
+
+ WorkerContext shouldn't need to know about SQLDatabase
+ https://bugs.webkit.org/show_bug.cgi?id=80352
+
+ Reviewed by Eric Seidel.
+
+ This patch removes the SQLDatabase functions from WorkerContext in
+ preparation for moving the SQLDatabase code into a module. These
+ functions don't interact with the rest of WorkerContext.
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * DerivedSources.pri:
+ * GNUmakefile.list.am:
+ * Target.pri:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * storage/DOMWindowSQLDatabase.cpp:
+ * storage/WorkerContextSQLDatabase.cpp: Added.
+ (WebCore):
+ (WebCore::WorkerContextSQLDatabase::openDatabase):
+ (WebCore::WorkerContextSQLDatabase::openDatabaseSync):
+ * storage/WorkerContextSQLDatabase.h: Added.
+ (WebCore):
+ (WorkerContextSQLDatabase):
+ (WebCore::WorkerContextSQLDatabase::WorkerContextSQLDatabase):
+ (WebCore::WorkerContextSQLDatabase::~WorkerContextSQLDatabase):
+ * storage/WorkerContextSQLDatabase.idl: Added.
+ * workers/WorkerContext.cpp:
+ (WebCore):
+ * workers/WorkerContext.h:
+ (WebCore):
+ (WorkerContext):
+ * workers/WorkerContext.idl:
+
+2012-03-05 Kenichi Ishibashi <bashi@chromium.org>
+
+ [WebSocket] Introduce ThreadableWebSocketChannel::SendResult
+ https://bugs.webkit.org/show_bug.cgi?id=80356
+
+ Reviewed by Kent Tamura.
+
+ Introduced ThreadableWebSocketChannel::SendResult type so that
+ WebSocketChannel can pass the validation result.
+
+ No new test. No changes in behavior.
+
+ * Modules/websockets/ThreadableWebSocketChannel.h: Added SendResult.
+ * Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
+ (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
+ (WebCore::ThreadableWebSocketChannelClientWrapper::sendRequestResult): Use ThreadableWebSocketChannel::SendResult instead of bool.
+ (WebCore::ThreadableWebSocketChannelClientWrapper::setSendRequestResult): Ditto.
+ * Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
+ (ThreadableWebSocketChannelClientWrapper):
+ * Modules/websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::send): Use ThreadableWebSocketChannel::SendResult instead of bool. Pass Cstring to enqueTextFrame instead of String.
+ (WebCore::WebSocketChannel::enqueueTextFrame): Ditto.
+ (WebCore::WebSocketChannel::processOutgoingFrameQueue): Ditto.
+ * Modules/websockets/WebSocketChannel.h:
+ (WebSocketChannel):
+ (QueuedFrame): Changed the type of stringData from String to CString.
+ * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
+ (WebCore::WorkerThreadableWebSocketChannel::send): Use ThreadableWebSocketChannel::SendResult instead of bool.
+ (WebCore::workerContextDidSend): Ditto.
+ (WebCore::WorkerThreadableWebSocketChannel::Peer::send): Ditto.
+ (WebCore::WorkerThreadableWebSocketChannel::Bridge::send): Ditto.
+ * Modules/websockets/WorkerThreadableWebSocketChannel.h:
+ (WorkerThreadableWebSocketChannel): ditto.
+ (Bridge): Ditto.
+
+2012-03-05 Kentaro Hara <haraken@chromium.org>
+
+ [JSC] Cache the CSSPropertyID in JSCSSStyleDeclaration
+ https://bugs.webkit.org/show_bug.cgi?id=80250
+
+ Reviewed by Benjamin Poulain.
+
+ V8CSSStyleDeclaration caches the calculated CSSPropertyID.
+ Similarly, we can implement the cache in JSCSSStyleDeclaration.
+
+ In my local Mac environment, this optimization improves the performance
+ of CSS property getters by 35%, and the performance of CSS property setters
+ by 8%.
+
+ CSS property getter: for (var i = 0; i < 1000000; i++) span.style.fontWeight;
+ CSS property setter: for (var i = 0; i < 1000000; i++) span.style.fontWeight = "bold";
+
+ Tests: fast/dom/CSSStyleDeclaration/* (No change in test results)
+
+ * bindings/js/JSCSSStyleDeclarationCustom.cpp:
+ (CSSPropertyInfo):
+ (WebCore):
+ (WebCore::cssPropertyIDForJSCSSPropertyName):
+ (WebCore::JSCSSStyleDeclaration::nameGetter):
+ (WebCore::JSCSSStyleDeclaration::putDelegate):
+
+2012-03-05 Joshua Bell <jsbell@chromium.org>
+
+ IndexedDB: Handle LevelDB database corruption
+ https://bugs.webkit.org/show_bug.cgi?id=79413
+
+ Add LevelDBDatabase::destroy() method so that clients can retry if open() fails.
+
+ Reviewed by Tony Chang.
+
+ Test: webkit_unit_tests --gtest_filter='LevelDBDatabaseTest.CorruptionTest'
+
+ * Modules/indexeddb/IDBLevelDBBackingStore.cpp: Implement open/destroy/open strategy.
+ (WebCore::IDBLevelDBBackingStore::open):
+ * platform/leveldb/LevelDBDatabase.cpp:
+ (WebCore::LevelDBDatabase::destroy):
+ (WebCore):
+ * platform/leveldb/LevelDBDatabase.h:
+ (LevelDBDatabase):
+
+2012-03-05 Stephen Chenney <schenney@chromium.org>
+
+ [Chromium] SVG Composite of Offset crashes
+ https://bugs.webkit.org/show_bug.cgi?id=77245
+
+ Reviewed by Stephen White.
+
+ The feComposite arithmetic mode filter could readily be made to
+ generate invalid pre-multiplied pixel values which would then go on to
+ pollute other filters and cause invalid final output pixels. This
+ patch checks for filters that require valid inputs, and checks that a
+ result is valid, and corrects the result if necessary. This matches
+ the behavior of FF and Opera while preventing crashes or other
+ undesirable behavior.
+
+ Test: svg/filters/feComposite-arithmetic-invalid-rgba.svg
+
+ * platform/graphics/filters/FEComposite.h: Override the default validity checks and image cleanup methods.
+ * platform/graphics/filters/FEComposite.cpp:
+ (WebCore::FEComposite::correctFilterResultIfNeeded): Force valid pixels if this is an arithmetic filter
+ * platform/graphics/filters/FilterEffect.cpp:
+ (WebCore::FilterEffect::apply): Check for validity status and correct
+ (WebCore::FilterEffect::forceValidPremultipliedPixels): Make an image valid
+ (WebCore):
+ * platform/graphics/filters/FilterEffect.h: New virtual methods for image validity.
+ (FilterEffect):
+ (WebCore::FilterEffect::requiresValidPreMulultipliedPixels):
+ (WebCore::FilterEffect::forceValidPremultipliedPixels):
+ (WebCore::FilterEffect::correctFilterResultIfNeeded):
+ * rendering/svg/RenderSVGResourceFilter.cpp:
+ (WebCore::RenderSVGResourceFilter::postApplyResource): Check that the final filter result is valid
+
+2012-03-05 Alexis Menard <alexis.menard@openbossa.org>
+
+ getComputedStyle gives incorrect information for 'height' property
+ https://bugs.webkit.org/show_bug.cgi?id=33593
+
+ Reviewed by David Hyatt.
+
+ Make sure that the contentBoxRect doesn't take into account the
+ intrinsic padding when querying it. As stated by http://www.w3.org/TR/css3-box/#the-lsquo0
+ the height is the content area which doesn't include the intrinsic padding, the border, and
+ the padding.
+
+ Test: fast/css/getComputedStyle/getComputedStyle-height.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * editing/DeleteSelectionCommand.cpp:
+ (WebCore::DeleteSelectionCommand::removeNode):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::contentBoxRect):
+ (WebCore::RenderBox::contentWidth):
+ (WebCore::RenderBox::contentHeight):
+ (WebCore::RenderBox::contentLogicalWidth):
+ (WebCore::RenderBox::contentLogicalHeight):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paddingTop):
+ (WebCore::RenderBoxModelObject::paddingBottom):
+ (WebCore::RenderBoxModelObject::paddingLeft):
+ (WebCore::RenderBoxModelObject::paddingRight):
+ (WebCore::RenderBoxModelObject::paddingBefore):
+ (WebCore::RenderBoxModelObject::paddingAfter):
+ (WebCore::RenderBoxModelObject::paddingStart):
+ (WebCore::RenderBoxModelObject::paddingEnd):
+ * rendering/RenderBoxModelObject.h:
+ (RenderBoxModelObject):
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::paddingTop):
+ (WebCore::RenderTableCell::paddingBottom):
+ (WebCore::RenderTableCell::paddingLeft):
+ (WebCore::RenderTableCell::paddingRight):
+ (WebCore::RenderTableCell::paddingBefore):
+ (WebCore::RenderTableCell::paddingAfter):
+ (WebCore::RenderTableCell::cellBaselinePosition):
+ * rendering/RenderTableCell.h:
+ (RenderTableCell):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::firstLineBoxBaseline):
+
+2012-03-05 MORITA Hajime <morrita@google.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=80257
+ Lifecycle of InternalSettings should be simplified.
+
+ Reviewed by Ryosuke Niwa.
+
+ - Moved settings update code to separate restoreTo() method.
+ - Eliminated flags which indidate the changed field.
+ Now these modifiable parameters are backed up at the initialization.
+
+ No new tests. Refactoring.
+
+ * testing/InternalSettings.cpp:
+ (WebCore::InternalSettings::create):
+ (WebCore::InternalSettings::InternalSettings):
+ (WebCore):
+ (WebCore::InternalSettings::restoreTo):
+ * testing/InternalSettings.h:
+ (InternalSettings):
+ * testing/Internals.cpp:
+ (WebCore::Internals::reset):
+
+2012-03-05 Anders Carlsson <andersca@apple.com>
+
+ Be more aggressive about repainting page overlays
+ https://bugs.webkit.org/show_bug.cgi?id=80336
+ <rdar://problem/10965943>
+
+ Reviewed by Simon Fraser.
+
+ Add a way to find out if a given GraphicsLayer is going to be repainted.
+
+ * WebCore.exp.in:
+ * platform/graphics/GraphicsLayer.h:
+ (WebCore::GraphicsLayer::needsDisplay):
+ (GraphicsLayer):
+ * platform/graphics/ca/GraphicsLayerCA.h:
+
+2012-03-05 Robin Cao <robin.cao@torchmobile.com.cn>
+
+ [BlackBerry] Upstream LayerRendererSurface.{cpp, h}
+ https://bugs.webkit.org/show_bug.cgi?id=80122
+
+ Reviewed by Rob Buis.
+
+ Initial upstream, no new tests.
+
+ * PlatformBlackBerry.cmake:
+ * platform/graphics/blackberry/LayerRendererSurface.cpp: Added.
+ (WebCore):
+ (WebCore::LayerRendererSurface::LayerRendererSurface):
+ (WebCore::LayerRendererSurface::~LayerRendererSurface):
+ (WebCore::LayerRendererSurface::setContentRect):
+ (WebCore::LayerRendererSurface::drawRect):
+ (WebCore::LayerRendererSurface::ensureTexture):
+ (WebCore::LayerRendererSurface::releaseTexture):
+ * platform/graphics/blackberry/LayerRendererSurface.h: Added.
+ (WebCore):
+ (LayerRendererSurface):
+ (WebCore::LayerRendererSurface::size):
+ (WebCore::LayerRendererSurface::contentRect):
+ (WebCore::LayerRendererSurface::clipRect):
+ (WebCore::LayerRendererSurface::setClipRect):
+ (WebCore::LayerRendererSurface::setDrawTransform):
+ (WebCore::LayerRendererSurface::drawTransform):
+ (WebCore::LayerRendererSurface::setReplicaDrawTransform):
+ (WebCore::LayerRendererSurface::replicaDrawTransform):
+ (WebCore::LayerRendererSurface::texture):
+ (WebCore::LayerRendererSurface::drawOpacity):
+ (WebCore::LayerRendererSurface::setDrawOpacity):
+
+2012-03-05 Mihnea Ovidenie <mihnea@adobe.com>
+
+ [CSSRegions][CSSOM]Prevent creation of NamedFlow object for invalid flow name
+ https://bugs.webkit.org/show_bug.cgi?id=79685
+
+ Reviewed by David Hyatt.
+
+ Asking for a named flow with an invalid flow name should return a null object.
+
+ Test: fast/regions/webkit-named-flow-invalid-name.html
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseFlowThread):
+ (WebCore):
+ * css/CSSParser.h:
+ * dom/Document.cpp:
+ (WebCore::validFlowName):
+ (WebCore):
+ (WebCore::Document::webkitGetFlowByName):
+
+2012-03-05 Ryosuke Niwa <rniwa@webkit.org>
+
+ unicode-bidi should support isolate override and override isolate
+ https://bugs.webkit.org/show_bug.cgi?id=73164
+
+ Reviewed by Eric Seidel.
+
+ Updated CSS parser and CSS style selector to support the union of bidi-override and isolate in
+ unicode-bidi property. Added OverrideIsolate to EUnicodeBidi instead of turning Override and Isolate
+ into bit flags to avoid increasing the number of bits required to store the unicodeBidi flag.
+
+ Also fixed a bug in RenderBlock::constructTextRun to actually check whether an isolated run's direction
+ is overridden or not when constructing one.
+
+ Tests: fast/css/unicode-bidi-computed-value.html
+ fast/text/bidi-override-isolate.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::renderUnicodeBidiFlagsToCSSValue): Added; Create a CSSValueList when unicode-bidi has both
+ isolate and bidi-override specified.
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Calls renderUnicodeBidiFlagsToCSSValue.
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue): Support parsing combinations of -webkit-isolate and bidi-override;
+ Create a CSSValueList in such cases.
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore):
+ * css/CSSStyleApplyProperty.cpp:
+ (ApplyPropertyUnicodeBidi):
+ (WebCore::ApplyPropertyUnicodeBidi::applyValue): Support combinations of -webkit-isolate and
+ bidi-override. Set the unicodeBidi flag to OverrideIsolate in such cases.
+ (WebCore::ApplyPropertyUnicodeBidi::createHandler):
+ (WebCore):
+ (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawTextInternal):
+ * platform/text/UnicodeBidi.h: Added OverrideIsolate. We don't use bit flags to avoid increasing the
+ number of bits required to store flags especially because isolate and bidi-override are only values
+ that can be combined.
+ (WebCore::isIsolated):
+ (WebCore):
+ (WebCore::isOverride):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::constructTextRun):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::statusWithDirection): Takes isOverride; we used to assume it's always false.
+ (WebCore::constructBidiRuns): Instantiate isolatedResolver with a proper value of isOverride.
+ (WebCore::RenderBlock::layoutRunsAndFloatsInRange):
+ (WebCore::RenderBlock::determineStartPosition):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::paintItemForeground):
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::itemStyle):
+ (WebCore::RenderMenuList::menuStyle):
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::menuStyle):
+ * rendering/svg/SVGTextMetrics.cpp:
+ (WebCore::SVGTextMetrics::constructTextRun):
+
+2012-03-05 Emil A Eklund <eae@chromium.org>
+
+ Replace uses of x(), y() and width(), height() pairs with locationOffset and size()
+ https://bugs.webkit.org/show_bug.cgi?id=80196
+
+ Reviewed by Julien Chaffraix.
+
+ Replace IntSize(x(), y()) with locationOffset()
+ Replace IntSize(width(), height()) with size()
+ Replace IntRect(0, 0, width(), height()) with IntRect(IntPoint(), size())
+ Replace IntRect::move(x(), y()) with IntRect::move(locationOffset())
+
+ No new tests.
+
+ * html/HTMLCanvasElement.cpp:
+ (WebCore::HTMLCanvasElement::createImageBuffer):
+ (WebCore::HTMLCanvasElement::baseTransform):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::simplifiedLayout):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::mapLocalToContainer):
+ (WebCore::RenderBox::computeRectForRepaint):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::borderBoxRect):
+ * rendering/RenderDeprecatedFlexibleBox.cpp:
+ (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutBlock):
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::localSelectionRect):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::localSelectionRect):
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::updateScrollbarParts):
+ (WebCore::RenderScrollbar::buttonRect):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::setCellLogicalWidths):
+ (WebCore::RenderTableSection::layoutRows):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::viewRect):
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::layout):
+
+2012-03-05 Anders Carlsson <andersca@apple.com>
+
+ Always update the scroll layer position on the main thread when we have an overlay
+ https://bugs.webkit.org/show_bug.cgi?id=80324
+
+ Reviewed by Sam Weinig.
+
+ Add a way to ensure that scroll layer position updates happen on the main thread.
+
+ * WebCore.exp.in:
+ * page/scrolling/ScrollingCoordinator.cpp:
+ (WebCore::ScrollingCoordinator::ScrollingCoordinator):
+ (WebCore::ScrollingCoordinator::updateShouldUpdateScrollLayerPositionOnMainThread):
+ (WebCore):
+ (WebCore::ScrollingCoordinator::setForceMainThreadScrollLayerPositionUpdates):
+ * page/scrolling/ScrollingCoordinator.h:
+ (ScrollingCoordinator):
+
+2012-03-05 Tony Chang <tony@chromium.org>
+
+ Implement flex-wrap: wrap
+ https://bugs.webkit.org/show_bug.cgi?id=79930
+
+ Reviewed by David Hyatt.
+
+ Tests: css3/flexbox/multiline-align.html
+ css3/flexbox/multiline.html
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::sizesToIntrinsicLogicalWidth): Don't apply column+stretch optimization to multiline.
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::FlexOrderIterator::FlexOrderIterator):
+ (WebCore::RenderFlexibleBox::FlexOrderIterator::currentChild): Expose the current child so we can pause
+ in the middle of iteration and resume later.
+ (RenderFlexibleBox::FlexOrderIterator):
+ (WebCore::RenderFlexibleBox::isMultiline):
+ (WebCore):
+ (WebCore::RenderFlexibleBox::layoutFlexItems): Loop per line.
+ (WebCore::RenderFlexibleBox::availableAlignmentSpaceForChild): Use the line space, not the whole container space.
+ (WebCore::RenderFlexibleBox::computeFlexOrder): Return true for each line.
+ (WebCore::RenderFlexibleBox::layoutAndPlaceChildren): Use the line offset. Also compute the line height as we go.
+ (WebCore::RenderFlexibleBox::layoutColumnReverse): Use the line offset.
+ (WebCore::RenderFlexibleBox::alignChildren): Align based on the line height. For multiline + column, we have to relayout
+ since the width may change (same as the row case above). We'll have to do something smarter when we implement flex-line-pack.
+ * rendering/RenderFlexibleBox.h:
+ (RenderFlexibleBox):
+
+2012-03-05 Ben Vanik <benvanik@google.com>
+
+ Implement WebGL extension EXT_texture_filter_anisotropic
+ https://bugs.webkit.org/show_bug.cgi?id=79541
+
+ This exports the EXT_texture_filter_anisotropic extension with the WEBKIT_ prefix as defined at
+ https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/extensions/proposals/EXT_texture_filter_anisotropic/index.html
+
+ Reviewed by Kenneth Russell.
+
+ Tested with the Khronos conformance test for the extension, available at https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/extensions/ext-texture-filter-anisotropic.html
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * DerivedSources.pri:
+ * GNUmakefile.list.am:
+ * Target.pri:
+ * WebCore.gypi:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSWebGLRenderingContextCustom.cpp:
+ (WebCore::toJS):
+ * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
+ (WebCore::toV8Object):
+ * html/canvas/EXTTextureFilterAnisotropic.cpp: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
+ (WebCore):
+ (WebCore::EXTTextureFilterAnisotropic::EXTTextureFilterAnisotropic):
+ (WebCore::EXTTextureFilterAnisotropic::~EXTTextureFilterAnisotropic):
+ (WebCore::EXTTextureFilterAnisotropic::getName):
+ (WebCore::EXTTextureFilterAnisotropic::create):
+ * html/canvas/EXTTextureFilterAnisotropic.h: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
+ (WebCore):
+ (EXTTextureFilterAnisotropic):
+ * html/canvas/EXTTextureFilterAnisotropic.idl: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
+ * html/canvas/WebGLExtension.h:
+ * html/canvas/WebGLObject.cpp:
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore):
+ (WebCore::WebGLRenderingContext::getExtension):
+ (WebCore::WebGLRenderingContext::getParameter):
+ (WebCore::WebGLRenderingContext::getSupportedExtensions):
+ (WebCore::WebGLRenderingContext::getTexParameter):
+ (WebCore::WebGLRenderingContext::texParameter):
+ * html/canvas/WebGLRenderingContext.h:
+ (WebCore):
+ (WebGLRenderingContext):
+ * platform/graphics/Extensions3D.h:
+ (Extensions3D):
+ * platform/graphics/opengl/Extensions3DOpenGL.cpp:
+ (WebCore::Extensions3DOpenGL::supports):
+
+2012-03-05 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r109760.
+ http://trac.webkit.org/changeset/109760
+ https://bugs.webkit.org/show_bug.cgi?id=80320
+
+ Caused many GTK+ tests to crash (Requested by mrobinson on
+ #webkit).
+
+ * platform/network/ResourceHandleClient.h:
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCoreSynchronousLoader):
+ (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
+ (WebCore):
+ (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader):
+ (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
+ (WebCore::WebCoreSynchronousLoader::didReceiveData):
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ (WebCore::WebCoreSynchronousLoader::didFail):
+ (WebCore::WebCoreSynchronousLoader::run):
+ (WebCore::closeCallback):
+ (WebCore::readCallback):
+ (WebCore::ResourceHandle::defaultSession):
+
+2012-03-05 Adam Klein <adamk@chromium.org>
+
+ Never dispatch mutation events in shadow DOM
+ https://bugs.webkit.org/show_bug.cgi?id=79278
+
+ Reviewed by Ryosuke Niwa.
+
+ Test: fast/dom/shadow/suppress-mutation-events-in-shadow.html
+
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::removeChildren): Move allowEventDispatch() call later,
+ now that childrenChanged won't trigger mutation events in shadow dom.
+ (WebCore::dispatchChildInsertionEvents): Bail out if in shadow tree.
+ (WebCore::dispatchChildRemovalEvents): ditto.
+ * dom/Node.cpp:
+ (WebCore::Node::dispatchSubtreeModifiedEvent): ditto.
+
+2012-03-05 Alexey Proskuryakov <ap@apple.com>
+
+ BlobResourceHandle should keep a reference to itself when calling client code.
+ https://bugs.webkit.org/show_bug.cgi?id=80318
+
+ Reviewed by Brady Eidson.
+
+ * platform/network/BlobResourceHandle.cpp:
+ (WebCore::BlobResourceHandle::doStart):
+ (WebCore::BlobResourceHandle::getSizeForNext):
+ (WebCore::BlobResourceHandle::readSync):
+ (WebCore::BlobResourceHandle::readDataAsync):
+ (WebCore::BlobResourceHandle::consumeData):
+ (WebCore::BlobResourceHandle::failed):
+ Added RefPtrs in functions that can result in calling client code, and use "this" object afterwards.
+
+2012-03-05 Anders Carlsson <andersca@apple.com>
+
+ Let RenderLayerCompositor set the tile cache visible rect
+ https://bugs.webkit.org/show_bug.cgi?id=80317
+
+ Reviewed by Simon Fraser.
+
+ We can't compute the visible rect from CALayers, because that breaks when we're updating
+ the scroll layer position on the main thread (since by the time visibleRectChanged() is called,
+ the CALayers won't yet have been updated).
+
+ * platform/graphics/GraphicsLayer.h:
+ (WebCore::GraphicsLayer::visibleRectChanged):
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::visibleRectChanged):
+ * platform/graphics/ca/GraphicsLayerCA.h:
+ (GraphicsLayerCA):
+ * platform/graphics/ca/PlatformCALayer.h:
+ (PlatformCALayer):
+ * platform/graphics/ca/mac/PlatformCALayerMac.mm:
+ (PlatformCALayer::visibleRectChanged):
+ * platform/graphics/ca/mac/TileCache.h:
+ (TileCache):
+ * platform/graphics/ca/mac/TileCache.mm:
+ (WebCore::TileCache::visibleRectChanged):
+ (WebCore::TileCache::revalidateTiles):
+ * platform/graphics/ca/mac/WebTileCacheLayer.h:
+ (WebCore):
+ * platform/graphics/ca/mac/WebTileCacheLayer.mm:
+ (-[WebTileCacheLayer visibleRectChanged:]):
+ * platform/graphics/ca/win/PlatformCALayerWin.cpp:
+ (PlatformCALayer::visibleRectChanged):
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::frameViewDidScroll):
+
+2012-03-05 Kangil Han <kangil.han@samsung.com>
+
+ [CMake][DRT] Add WebCoreTestSupport.
+ https://bugs.webkit.org/show_bug.cgi?id=79896
+
+ Reviewed by Daniel Bates.
+
+ Add WebCoreTestSupport library for DRT in CMake.
+ We will use internals object by linking this library on DRT.
+
+ * CMakeLists.txt:
+ * UseJSC.cmake:
+ * UseV8.cmake:
+
+2012-03-05 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r109656.
+ http://trac.webkit.org/changeset/109656
+ https://bugs.webkit.org/show_bug.cgi?id=80316
+
+ This seems to have regressed Parser/html5-full-render by about
+ 10% (Requested by anttik on #webkit).
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::getPositionOffsetValue):
+ (WebCore::getBorderRadiusCornerValues):
+ (WebCore::getBorderRadiusCornerValue):
+ (WebCore::getBorderRadiusShorthandValue):
+ (WebCore::lineHeightFromStyle):
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSGrammar.y:
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::validUnit):
+ (WebCore::CSSParser::createPrimitiveNumericValue):
+ (WebCore::unitFromString):
+ (WebCore::CSSParser::parseValidPrimitive):
+ (WebCore::CSSParser::detectNumberToken):
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::isValidCSSUnitTypeForDoubleConversion):
+ (WebCore::unitCategory):
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::canonicalUnitTypeForCategory):
+ (WebCore::CSSPrimitiveValue::customCssText):
+ * css/CSSPrimitiveValue.h:
+ (CSSPrimitiveValue):
+ * css/CSSPrimitiveValue.idl:
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::ApplyPropertyLength::applyValue):
+ (WebCore::ApplyPropertyBorderRadius::applyValue):
+ (WebCore::ApplyPropertyFontSize::applyValue):
+ (WebCore::ApplyPropertyLineHeight::applyValue):
+ (WebCore::ApplyPropertyVerticalAlign::applyValue):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+ * dom/Document.cpp:
+ (WebCore::Document::pageSizeAndMarginsInPixels):
+ (WebCore):
+ * dom/Document.h:
+ (Document):
+ * html/HTMLAreaElement.cpp:
+ (WebCore::HTMLAreaElement::getRegion):
+ * platform/Length.h:
+ (WebCore::Length::calcValue):
+ (WebCore::Length::calcMinValue):
+ (WebCore::Length::calcFloatValue):
+ (WebCore::Length::blend):
+ * rendering/RenderBR.cpp:
+ (WebCore::RenderBR::lineHeight):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::lineHeight):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::reflectionOffset):
+ (WebCore::RenderBox::paintBoxDecorations):
+ (WebCore::RenderBox::clipRect):
+ (WebCore::RenderBox::computeLogicalWidthInRegion):
+ (WebCore::RenderBox::computeLogicalWidthInRegionUsing):
+ (WebCore::RenderBox::computeInlineDirectionMargins):
+ (WebCore::RenderBox::computeLogicalHeightUsing):
+ (WebCore::RenderBox::computePercentageLogicalHeight):
+ (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
+ (WebCore::RenderBox::computeBlockDirectionMargins):
+ (WebCore::RenderBox::computePositionedLogicalWidthUsing):
+ (WebCore::RenderBox::computePositionedLogicalHeightUsing):
+ (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
+ (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::relativePositionOffsetX):
+ (WebCore::RenderBoxModelObject::relativePositionOffsetY):
+ (WebCore::RenderBoxModelObject::paddingTop):
+ (WebCore::RenderBoxModelObject::paddingBottom):
+ (WebCore::RenderBoxModelObject::paddingLeft):
+ (WebCore::RenderBoxModelObject::paddingRight):
+ (WebCore::RenderBoxModelObject::paddingBefore):
+ (WebCore::RenderBoxModelObject::paddingAfter):
+ (WebCore::RenderBoxModelObject::paddingStart):
+ (WebCore::RenderBoxModelObject::paddingEnd):
+ (WebCore::RenderBoxModelObject::getBackgroundRoundedRect):
+ (WebCore::RenderBoxModelObject::calculateFillTileSize):
+ (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
+ (WebCore::computeBorderImageSide):
+ (WebCore::RenderBoxModelObject::paintNinePieceImage):
+ (WebCore::RenderBoxModelObject::paintBorder):
+ (WebCore::RenderBoxModelObject::paintBoxShadow):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::preferredMainAxisContentExtentForChild):
+ (WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes):
+ (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithm):
+ * rendering/RenderInline.cpp:
+ (WebCore::computeMargin):
+ (WebCore::RenderInline::lineHeight):
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::updateOptionsWidth):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
+ * rendering/RenderObject.h:
+ (RenderObject):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::paint):
+ * rendering/RenderScrollbarPart.cpp:
+ (WebCore::calcScrollbarThicknessUsing):
+ (WebCore::RenderScrollbarPart::computeScrollbarWidth):
+ (WebCore::RenderScrollbarPart::computeScrollbarHeight):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::computeLogicalWidth):
+ (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::logicalHeightForRowSizing):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::calcRowLogicalHeight):
+ * rendering/RenderText.h:
+ (WebCore::RenderText::marginLeft):
+ (WebCore::RenderText::marginRight):
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::paintMenuListButtonGradients):
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::paint):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::verticalPositionForBox):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::calcRadiiFor):
+ (WebCore::RenderStyle::getRoundedBorderFor):
+ * rendering/style/RenderStyle.h:
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::resolveLengthAttributeForSVG):
+ (WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
+ (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
+
+2012-03-05 Rob Buis <rbuis@rim.com>
+
+ [BlackBerry] Add missing method to PasteboardBlackBerry.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=80326
+
+ Reviewed by Antonio Gomes.
+
+ Add missing method.
+
+ * platform/blackberry/PasteboardBlackBerry.cpp:
+ (WebCore::Pasteboard::writeClipboard):
+ (WebCore):
+
+2012-03-05 Rob Buis <rbuis@rim.com>
+
+ [BlackBerry] UTF chars printed back from cookie through php shows as ???
+ https://bugs.webkit.org/show_bug.cgi?id=80307
+
+ Reviewed by Antonio Gomes.
+
+ PR: 130055
+
+ we need to check the cookies encoding first and encode the cookie header data
+ to pass to the request.
+
+ * platform/network/blackberry/NetworkManager.cpp:
+ (WebCore::NetworkManager::startJob):
+
+2012-03-05 Dana Jansens <danakj@chromium.org>
+
+ [chromium] Remove old cleanupResources() code
+ https://bugs.webkit.org/show_bug.cgi?id=80290
+
+ Reviewed by Adrienne Walker.
+
+ cleanupResources() is only called by destructors, and adds no
+ value, any more, beyond the destructors themselves, but complicates
+ the code path.
+
+ Covered by existing tests.
+
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (CCLayerImpl):
+ * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
+ (WebCore::CCPluginLayerImpl::~CCPluginLayerImpl):
+ * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
+ * platform/graphics/chromium/cc/CCRenderSurface.cpp:
+ (WebCore::CCRenderSurface::~CCRenderSurface):
+ * platform/graphics/chromium/cc/CCRenderSurface.h:
+ (CCRenderSurface):
+ * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
+ (WebCore::CCVideoLayerImpl::~CCVideoLayerImpl):
+
+2012-03-05 Sami Kyostila <skyostil@chromium.org>
+
+ Partially loaded JPEGs should have alpha channel
+ https://bugs.webkit.org/show_bug.cgi?id=78239
+
+ Reviewed by Kenneth Russell.
+
+ While a JPEG image is loading, the area outside the decoded region
+ should be fully transparent. Since currently all JPEG frames are marked
+ as opaque, a renderer respecting this flag will draw the partially
+ loaded image with garbage outside the valid image region.
+
+ Hence, a partially loaded JPEG image should be marked as having an alpha
+ channel while decoding is in progress. For performance reasons we mark
+ the image opaque after decoding has finished.
+
+ Graphics corruption caused by this bug was recently observed on
+ Chromium (http://code.google.com/p/chromium/issues/detail?id=113171). A
+ recent Skia change (r3036) changed SkBitmap::extractSubset() to produce
+ a bitmap with the same opaqueness flag as the parent. This meant that
+ the renderer was now seeing an opaque image from the JPEG decoder, and
+ drawing it appropriately resulted in garbage outside the decoded region.
+
+ Test: http/tests/incremental/partial-jpeg.html
+
+ * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
+ (WebCore::JPEGImageDecoder::outputScanlines):
+ (WebCore::JPEGImageDecoder::jpegComplete):
+
+2012-03-05 James Robinson <jamesr@chromium.org>
+
+ [chromium] Initialize CCOverdrawCounts struct to zero
+ https://bugs.webkit.org/show_bug.cgi?id=80204
+
+ Reviewed by Adrienne Walker.
+
+ CCOverdrawCounts is stack allocated but not explicitly initialized, so the values are garbage. This adds a c'tor
+ to zero out the fields, which is the desired behavior. Bug was initially caught by valgrind, see
+ http://crbug.com/116475
+
+ * platform/graphics/chromium/cc/CCRenderPass.h:
+ (WebCore::CCOverdrawCounts::CCOverdrawCounts):
+
+2012-03-05 Min Qin <qinmin@google.com>
+
+ Add media control css for chromium on android
+ https://bugs.webkit.org/show_bug.cgi?id=79550
+
+ Reviewed by Adam Barth.
+
+ This should not change the any test results as it does not affect the any current bots. New test expectations will be added if we have a android bot on webkit.
+
+ * WebCore.gyp/WebCore.gyp:
+ * css/mediaControlsChromiumAndroid.css: Added.
+ (body:-webkit-full-page-media):
+ (audio):
+ (audio:-webkit-full-page-media, video:-webkit-full-page-media):
+ (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
+ (video:-webkit-full-page-media::-webkit-media-controls-panel):
+ (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
+ (audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
+ (audio::-webkit-media-controls-timeline-container):
+ (video::-webkit-media-controls-timeline-container):
+ (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
+ (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
+ (video::-webkit-media-controls-fullscreen-button):
+ (audio::-webkit-media-controls-fullscreen-button):
+ (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
+ (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
+ * rendering/RenderMediaControlsChromium.cpp:
+ (WebCore::paintMediaFullscreenButton):
+ (WebCore):
+ (WebCore::RenderMediaControlsChromium::paintMediaControlsPart):
+ * rendering/RenderThemeChromiumAndroid.cpp:
+ (WebCore::RenderThemeChromiumAndroid::extraMediaControlsStyleSheet):
+ (WebCore):
+ (WebCore::RenderThemeChromiumAndroid::paintMediaFullscreenButton):
+ * rendering/RenderThemeChromiumAndroid.h:
+
+2012-03-05 Anders Carlsson <andersca@apple.com>
+
+ Fix crash in ScrollingCoordinator::updateMainFrameScrollPositionAndScrollLayerPosition
+ https://bugs.webkit.org/show_bug.cgi?id=80303
+ <rdar://problem/10953682>
+
+ Reviewed by Beth Dakin.
+
+ Add the same null checks that already exist in updateMainFrameScrollPosition.
+
+ * page/scrolling/ScrollingCoordinator.cpp:
+ (WebCore::ScrollingCoordinator::updateMainFrameScrollPositionAndScrollLayerPosition):
+
+2012-03-05 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: CSS inactive property check should account for vendor prefixes
+ https://bugs.webkit.org/show_bug.cgi?id=80225
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/styles/vendor-prefixes.html
+
+ * inspector/InspectorStyleSheet.cpp:
+ (WebCore::InspectorStyle::populateObjectWithStyleProperties):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.alteredHexNumber):
+ (WebInspector.StylesSidebarPane.canonicalPropertyName):
+ (WebInspector.StylesSidebarPane.prototype._markUsedProperties):
+ (WebInspector.StylePropertiesSection.prototype.isPropertyOverloaded):
+
+2012-03-05 Adam Barth <abarth@webkit.org>
+
+ Geolocation should use a ScriptExecutionContext as its context object
+ https://bugs.webkit.org/show_bug.cgi?id=80248
+
+ Reviewed by Kentaro Hara.
+
+ This patch updates Geolocation to use some more modern WebCore
+ mechanisms. Previously, Geolocation used a Frame as a context object,
+ which required a bunch of manual integration with the PageCache as well
+ as custom signaling for Geolocation::reset(). After this patch,
+ Geolocation subclasses ActiveDOMObject, which does all this work
+ automatically.
+
+ * Modules/geolocation/Geolocation.cpp:
+ (WebCore::Geolocation::create):
+ (WebCore):
+ (WebCore::Geolocation::Geolocation):
+ (WebCore::Geolocation::~Geolocation):
+ (WebCore::Geolocation::document):
+ (WebCore::Geolocation::frame):
+ (WebCore::Geolocation::page):
+ (WebCore::Geolocation::stop):
+ (WebCore::Geolocation::getCurrentPosition):
+ (WebCore::Geolocation::watchPosition):
+ (WebCore::Geolocation::requestPermission):
+ (WebCore::Geolocation::clearWatch):
+ (WebCore::Geolocation::setIsAllowed):
+ * Modules/geolocation/Geolocation.h:
+ (WebCore):
+ (Geolocation):
+ * Modules/geolocation/NavigatorGeolocation.cpp:
+ (WebCore):
+ (WebCore::NavigatorGeolocation::geolocation):
+ * Modules/geolocation/NavigatorGeolocation.h:
+ (NavigatorGeolocation):
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ * dom/Document.h:
+ (Document):
+ * history/PageCache.cpp:
+ (WebCore::logCanCacheFrameDecision):
+ (WebCore::PageCache::canCachePageContainingThisFrame):
+
+2012-03-05 Martin Robinson <mrobinson@igalia.com>
+
+ [soup] Crash while loading http://www.jusco.cn
+ https://bugs.webkit.org/show_bug.cgi?id=68238
+
+ Reviewed by Philippe Normand.
+
+ Test: http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers.html
+
+ When running synchronous XMLHttpRequests, push a new inner thread default
+ context, so that other sources from timers and network activity do not run.
+ This will make synchronous requests truly synchronous with the rest of
+ WebCore.
+
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCoreSynchronousLoader): Clean up the method definitions a bit by writing them inline.
+ (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): Push a new thread default
+ context to prevent other sources from running.
+ (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader): Pop the inner thread default context.
+ (WebCore::closeCallback): If the client is synchronous call didFinishLoading now.
+ (WebCore::readCallback): Only call didFinishLoading if the client isn't synchronous.
+ (WebCore::ResourceHandle::defaultSession): Activate use-thread-context so that the soup session
+ respects the inner thread context.
+ (ResourceHandleClient):
+ (WebCore::ResourceHandleClient::isSynchronousClient): Added this virtual method.
+
+2012-03-05 Alexander Færøy <alexander.faeroy@nokia.com>
+
+ Remove pointer to timer and use the timers directly in the tiled backing store
+ https://bugs.webkit.org/show_bug.cgi?id=80283
+
+ Patch by Kenneth Rohde Christiansen and Alexander Færøy.
+
+ Reviewed by Simon Hausmann.
+
+ * platform/graphics/TiledBackingStore.cpp:
+ (WebCore::TiledBackingStore::TiledBackingStore):
+ (WebCore::TiledBackingStore::~TiledBackingStore):
+ (WebCore::TiledBackingStore::createTiles):
+ (WebCore::TiledBackingStore::startTileBufferUpdateTimer):
+ (WebCore::TiledBackingStore::startTileCreationTimer):
+ * platform/graphics/TiledBackingStore.h:
+ (TiledBackingStore):
+
+2012-03-05 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: [Styles] Tabbing an empty new property in the middle of style moves the editor to the next section
+ https://bugs.webkit.org/show_bug.cgi?id=80264
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertyTreeElement.prototype.element.userInput.previousContent.context.moveDirection.alreadyNew):
+ (WebInspector.StylePropertyTreeElement.prototype):
+
+2012-03-05 Rob Buis <rbuis@rim.com>
+
+ [BlackBerry] Update LocalizedStringsBlackBerry.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=80278
+
+ Reviewed by Antonio Gomes.
+
+ Update LocalizedStringsBlackBerry.cpp to current HEAD.
+
+ * platform/blackberry/LocalizedStringsBlackBerry.cpp:
+ (WebCore::inputElementAltText): fall back to "Submit".
+ (WebCore::imageTitle): choose the format "filename(widthxheight)" like Chrome does.
+ (WebCore::fileButtonNoFilesSelectedLabel): fall back to "No File Chosen" translation like Chrome does.
+ (WebCore):
+
+2012-03-05 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: [chromium] introduce HeapSnapshot performance test.
+ https://bugs.webkit.org/show_bug.cgi?id=80280
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/HeapSnapshotProxy.js:
+ (WebInspector.HeapSnapshotLoaderProxy.prototype.finishLoading.updateStaticData):
+ (WebInspector.HeapSnapshotLoaderProxy.prototype.finishLoading):
+ (WebInspector.HeapSnapshotLoaderProxy.prototype._callLoadCallbacks):
+
+2012-03-05 Pavel Feldman <pfeldman@chromium.org>
+
+ Web Inspector: cannot be launched when localStorage is disabled
+ https://bugs.webkit.org/show_bug.cgi?id=80252
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/Settings.js:
+
+2012-03-05 Pavel Feldman <pfeldman@chromium.org>
+
+ Web Inspector: check for the number of parsed css properties.
+ https://bugs.webkit.org/show_bug.cgi?id=80268
+
+ Reviewed by Vsevolod Vlasov.
+
+ Test: inspector/styles/set-property-boundaries.html
+
+ * inspector/InspectorCSSAgent.cpp:
+ (WebCore::InspectorCSSAgent::didRemoveDOMNode):
+ * inspector/InspectorStyleSheet.cpp:
+ (WebCore::InspectorStyle::setPropertyText):
+
+2012-03-05 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Tabbed pane should redraw tab elements when tab is closed.
+ https://bugs.webkit.org/show_bug.cgi?id=80273
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/TabbedPane.js:
+ (WebInspector.TabbedPane.prototype.closeTab):
+
+2012-03-05 Alexander Færøy <alexander.faeroy@nokia.com>
+
+ Improve comments in the tiled backing store
+ https://bugs.webkit.org/show_bug.cgi?id=80279
+
+ Patch by Kenneth Rohde Christiansen and Alexander Færøy.
+
+ Reviewed by Simon Hausmann.
+
+ * platform/graphics/TiledBackingStore.cpp:
+ (WebCore::TiledBackingStore::createTiles):
+
+2012-03-05 Alexander Færøy <alexander.faeroy@nokia.com>
+
+ TiledBackingStore.{h,cpp} contains unclear variable names
+ https://bugs.webkit.org/show_bug.cgi?id=80276
+
+ Patch by Kenneth Rohde Christiansen and Alexander Færøy.
+
+ Reviewed by Simon Hausmann.
+
+ This patch renames some of the variables in TiledBackingStore.cpp to
+ enhance the clearity and for consistence.
+
+ The visibleContentsRect is renamed to visibleRect as it is not in
+ contents coordinates.
+
+ The panningTrajectoryVector and m_visibleRectTrajectoryVector are
+ renamed to just *[m_]trajectoryVector, as that is descriptive enough.
+
+ The previous prefix has also been removed, as it is being used as the
+ current one in the code. This avoids confusion.
+
+ * platform/graphics/TiledBackingStore.cpp:
+ (WebCore::TiledBackingStore::coverWithTilesIfNeeded):
+ (WebCore::TiledBackingStore::visibleRect):
+ (WebCore::TiledBackingStore::visibleAreaIsCovered):
+ (WebCore::TiledBackingStore::createTiles):
+ (WebCore::TiledBackingStore::computeCoverAndKeepRect):
+ (WebCore::TiledBackingStore::removeAllNonVisibleTiles):
+ * platform/graphics/TiledBackingStore.h:
+ (TiledBackingStore):
+
+2012-03-05 Simon Hausmann <simon.hausmann@nokia.com>
+
+ [Qt] Fix build with Qt 5 and OpenGL ES 2.0
+
+ Reviewed by Noam Rosenthal.
+
+ * platform/graphics/texmap/TextureMapper.h: Since we don't do QT += opengl with Qt 5 anymore
+ here in WebCore, we cannot check for QT_OPENGL_LIB. But since this is Qt5, we know that the
+ GLES setting comes qconfig.h and we can rely on it.
+
+2012-03-05 Alexander Færøy <alexander.faeroy@nokia.com>
+
+ Whitespace clean-up of TiledBackingStore.cpp.
+
+ Rubber-stamped by Kenneth Rohde Christiansen.
+
+ Already covered by existing tests.
+
+ * platform/graphics/TiledBackingStore.cpp:
+ (WebCore):
+ (WebCore::TiledBackingStore::updateTileBuffers):
+ (WebCore::TiledBackingStore::paint):
+
+2012-03-05 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Unreviewed. Fix make distcheck.
+
+ * GNUmakefile.list.am: Add missing header file.
+
+2012-03-05 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: Incorrect appropriateSelectorFor() suggestion for when a DOMNode has more than 2 CSS classes
+ https://bugs.webkit.org/show_bug.cgi?id=80258
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMNode.prototype.appropriateSelectorFor):
+
+2012-03-02 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: [Styles] [CRASH] Handle rule addition and inline style editing failure due to Content-Security-Policy in the page
+ https://bugs.webkit.org/show_bug.cgi?id=80024
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/styles/add-new-rule-inline-style-csp.html
+
+ * inspector/InspectorCSSAgent.cpp:
+ (WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
+ * inspector/InspectorCSSAgent.h:
+ (InlineStyleOverrideScope):
+ (WebCore::InspectorCSSAgent::InlineStyleOverrideScope::InlineStyleOverrideScope):
+ (WebCore::InspectorCSSAgent::InlineStyleOverrideScope::~InlineStyleOverrideScope):
+ (InspectorCSSAgent):
+ * inspector/InspectorStyleSheet.cpp:
+ (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
+ * page/ContentSecurityPolicy.cpp:
+ (WebCore::ContentSecurityPolicy::ContentSecurityPolicy):
+ (WebCore::ContentSecurityPolicy::allowInlineStyle):
+ (WebCore::ContentSecurityPolicy::setOverrideAllowInlineStyle):
+ (WebCore):
+ * page/ContentSecurityPolicy.h:
+ (ContentSecurityPolicy):
+
+2012-03-05 Yoshifumi Inoue <yosin@chromium.org>
+
+ [Forms] The "optgroup" element should not be a form-associated element
+ https://bugs.webkit.org/show_bug.cgi?id=80234
+
+ Reviewed by Kent Tamura.
+
+ This patch changes base class of HTMLOptGroup to HTMLElement from
+ HTMLFormControlElement to avoid the "optgroup" element in form-associate
+ elements collection.
+
+ This patch doesn't affect HTMLOptionElement::disabled's static_cast. However,
+ it doesn't good at coding style. This patch also fix it.
+
+
+ No new tests. No behavior changes.
+
+ * html/HTMLOptGroupElement.cpp:
+ (WebCore::HTMLOptGroupElement::HTMLOptGroupElement): Remove "form" parameter.
+ (WebCore::HTMLOptGroupElement::create): Remove "form" parameter.
+ (WebCore::HTMLOptGroupElement::childrenChanged): Replace base method call.
+ (WebCore::HTMLOptGroupElement::parseAttribute): Replace base method call.
+ (WebCore::HTMLOptGroupElement::attach): Replace base method call.
+ (WebCore::HTMLOptGroupElement::detach): Replace base method call.
+ * html/HTMLOptGroupElement.h:
+ (HTMLOptGroupElement): Change base class to HTMLElement.
+ * html/HTMLOptionElement.cpp:
+ (WebCore::HTMLOptionElement::disabled): Replace static_cast<HTMLFormControlElement*> to static_cast<HTMLElement*> with checking isHTMLElement.
+ * html/HTMLTagNames.in: Remove "constructorNeedsFormElement" for not passing "form" parameter in HTMLElementFactory.
+
+2012-03-05 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: fix extensions-resource.html test.
+ https://bugs.webkit.org/show_bug.cgi?id=80183
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.Linkifier.prototype._updateAnchor):
+
+2012-03-02 Andrey Kosyakov <caseq@chromium.org>
+
+ Add instrumentation for frame start/end on timeline.
+
+ Web Inspector: add timeline instrumentation for frame events
+ https://bugs.webkit.org/show_bug.cgi?id=80127
+
+ Reviewed by Pavel Feldman.
+
+ - display frame boundaries when vertical overview mode is on
+ - aggregate by frame in vertical overview mode
+ - switched event filtering criteria from index to time in vertical overview mode
+
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::didBeginFrameImpl):
+ (WebCore):
+ * inspector/InspectorInstrumentation.h:
+ (InspectorInstrumentation):
+ (WebCore::InspectorInstrumentation::didBeginFrame):
+ (WebCore):
+ * inspector/InspectorTimelineAgent.cpp:
+ (TimelineRecordType):
+ (WebCore::InspectorTimelineAgent::didBeginFrame):
+ (WebCore):
+ * inspector/InspectorTimelineAgent.h:
+ (InspectorTimelineAgent):
+ * inspector/front-end/TimelineModel.js:
+ * inspector/front-end/TimelineOverviewPane.js:
+ (WebInspector.TimelineOverviewPane):
+ (WebInspector.TimelineOverviewPane.prototype._showMemoryGraph):
+ (WebInspector.TimelineOverviewPane.prototype.setStartAtZero):
+ (WebInspector.TimelineOverviewPane.prototype.updateEventDividers):
+ (WebInspector.TimelineOverviewPane.prototype.sidebarResized):
+ (WebInspector.TimelineOverviewPane.prototype.reset):
+ (WebInspector.TimelineOverviewPane.prototype.accept):
+ (WebInspector.TimelineOverviewPane.prototype.windowStartTime):
+ (WebInspector.TimelineOverviewPane.prototype.windowEndTime):
+ (WebInspector.TimelineOverviewPane.prototype._onWindowChanged):
+ (WebInspector.TimelineStartAtZeroOverview):
+ (WebInspector.TimelineStartAtZeroOverview.prototype.reset):
+ (WebInspector.TimelineStartAtZeroOverview.prototype.update):
+ (WebInspector.TimelineStartAtZeroOverview.prototype._aggregateFrames):
+ (WebInspector.TimelineStartAtZeroOverview.prototype._aggregateFrameStatistics):
+ (WebInspector.TimelineStartAtZeroOverview.prototype._aggregateRecords):
+ (WebInspector.TimelineStartAtZeroOverview.prototype._buildBar):
+ (WebInspector.TimelineStartAtZeroOverview.prototype.getWindowTimes):
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel.prototype._updateEventDividers):
+ (WebInspector.TimelinePanel.prototype._createEventDivider):
+ (WebInspector.TimelinePanel.prototype._toggleStartAtZeroButtonClicked):
+ (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline.addTimestampRecords):
+ (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
+ (WebInspector.TimelinePanel.prototype._refresh):
+ (WebInspector.TimelinePanel.prototype._refreshRecords):
+ (WebInspector.TimelineCategoryFilter.prototype.accept):
+ * inspector/front-end/TimelinePresentationModel.js:
+ (WebInspector.TimelinePresentationModel.prototype.get _recordStyles):
+ * inspector/front-end/inspectorCommon.css:
+ * inspector/front-end/timelinePanel.css:
+ (#timeline-container):
+ (.timeline .resources-event-divider):
+ (.timeline.timeline-start-at-zero .resources-divider):
+ (.timeline .resources-event-divider.timeline-frame-divider):
+
+2012-03-05 MORITA Hajime <morrita@google.com>
+
+ Unreviewed build fix for !ENABLE(SHADOW_DOM).
+
+ * html/shadow/HTMLContentElement.cpp:
+ (WebCore::contentTagName):
+
+2012-03-04 MORITA Hajime <morrita@google.com>
+
+ Internally used HTMLContentElement subclasses should have correct wrapper.
+ https://bugs.webkit.org/show_bug.cgi?id=80237
+
+ Reviewed by Kent Tamura.
+
+ DetailsContentElement and DetailsSummaryElement used to use
+ <div> as their tag name. But this means they are wrapped by
+ wrapper objects for HTMLDivElement, which is wrong. This happened
+ to work though because HTMLDivElement has no extra state or API.
+
+ This change introduces "noConstructor" keyword for make_name.pl
+ sources. This keyword allows a tag name to specify its own
+ wrapper without making the tag name visible from the parser, or
+ HTMLElementFactory in precise.
+
+ Following this addition, this change also adds a new tag name
+ "webkitShadowContent" for DetailsContentElement and DetailsSummaryElement,
+ which has no constructor, and whose wrapper type is HTMLElement.
+
+ This change isn't visible from the page author and only matters for testing.
+
+ Test: fast/dom/shadow/content-element-user-agent-shadow.html
+
+ * dom/make_names.pl:
+ (defaultTagPropertyHash):
+ (buildConstructorMap):
+ (printConstructors):
+ (printFunctionInits):
+ * html/HTMLDetailsElement.cpp:
+ (WebCore::DetailsContentElement::DetailsContentElement):
+ (WebCore::DetailsSummaryElement::DetailsSummaryElement):
+ * html/HTMLTagNames.in:
+ * html/shadow/HTMLContentElement.cpp:
+ (WebCore::contentTagName):
+
+2012-03-05 Shinya Kawanaka <shinyak@chromium.org>
+
+ Refactoring: Move HTMLContentElement::attach to InsertionPoint::attach.
+ https://bugs.webkit.org/show_bug.cgi?id=80243
+
+ Reviewed by Hajime Morita.
+
+ Since the current code in HTMLContentElement::attach() will be used for coming <shadow>
+ elements, it is natural that InsertionPoint::attach() has such code.
+
+ No new tests, no change in behavior.
+
+ * html/shadow/HTMLContentElement.cpp:
+ * html/shadow/HTMLContentElement.h:
+ (HTMLContentElement):
+ * html/shadow/InsertionPoint.cpp:
+ (WebCore::InsertionPoint::attach):
+ (WebCore):
+ (WebCore::InsertionPoint::detach):
+ * html/shadow/InsertionPoint.h:
+ (InsertionPoint):
+
+2012-03-05 Adam Barth <abarth@webkit.org>
+
+ allowDatabaseAccess and databaseExceededQuota should be part of DatabaseContext not ScriptExecutionContext
+ https://bugs.webkit.org/show_bug.cgi?id=80178
+
+ Reviewed by Eric Seidel.
+
+ These functions are only used by SQLDatabase, which means we can move
+ them to DatabaseContext, removing one more tendril of the SQLDatabase
+ code.
+
+ * dom/Document.cpp:
+ (WebCore):
+ * dom/Document.h:
+ (Document):
+ * dom/ScriptExecutionContext.h:
+ (ScriptExecutionContext):
+ * storage/DatabaseContext.cpp:
+ (WebCore::DatabaseContext::DatabaseContext):
+ (WebCore::DatabaseContext::from):
+ (WebCore::DatabaseContext::allowDatabaseAccess):
+ (WebCore):
+ (WebCore::DatabaseContext::databaseExceededQuota):
+ * storage/DatabaseContext.h:
+ (DatabaseContext):
+ * storage/DatabaseTracker.cpp:
+ (WebCore::DatabaseTracker::canEstablishDatabase):
+ * storage/SQLTransaction.cpp:
+ (WebCore::SQLTransaction::executeSQL):
+ * storage/SQLTransactionClient.cpp:
+ (WebCore::SQLTransactionClient::didExceedQuota):
+ * storage/SQLTransactionSync.cpp:
+ (WebCore::SQLTransactionSync::executeSQL):
+ * workers/WorkerContext.cpp:
+ (WebCore):
+ * workers/WorkerContext.h:
+ (WorkerContext):
+
+2012-03-04 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r107551.
+ http://trac.webkit.org/changeset/107551
+ https://bugs.webkit.org/show_bug.cgi?id=80245
+
+ caused incorrect style sharing (Requested by kling on
+ #webkit).
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+
+2012-03-04 Luke Macpherson <macpherson@chromium.org>
+
+ Remove unused macro HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE_WITH_VALUE.
+ https://bugs.webkit.org/show_bug.cgi?id=80236
+
+ Reviewed by Eric Seidel.
+
+ No new tests / unused code deletion only.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore):
+
+2012-03-04 Filip Pizlo <fpizlo@apple.com>
+
+ JIT heuristics should be hyperbolic
+ https://bugs.webkit.org/show_bug.cgi?id=80055
+ <rdar://problem/10922260>
+
+ Reviewed by Oliver Hunt.
+
+ No new tests, since there's no new functionality.
+
+ * ForwardingHeaders/wtf/SimpleStats.h: Added.
+
+2012-03-04 Shinya Kawanaka <shinyak@chromium.org>
+
+ Methods like firstRendererOf of NodeRenderingContext should be extracted.
+ https://bugs.webkit.org/show_bug.cgi?id=79902
+
+ Reviewed by Hajime Morita.
+
+ firstRendererOfInsertionPoint should return the first renderer of its child, however
+ it returns next renderer of parent. The same thing happens lastRendererOfInsertionPoint.
+
+ Test: content-element-move.html has another test case.
+
+ * dom/NodeRenderingContext.cpp:
+ (WebCore):
+ (WebCore::nextRendererOfInsertionPoint):
+ (WebCore::previousRendererOfInsertionPoint):
+ (WebCore::firstRendererOfInsertionPoint):
+ (WebCore::lastRendererOfInsertionPoint):
+ (WebCore::firstRendererOf):
+ (WebCore::lastRendererOf):
+ (WebCore::NodeRenderingContext::nextRenderer):
+ (WebCore::NodeRenderingContext::previousRenderer):
+
+2012-03-04 MORITA Hajime <morrita@google.com>
+
+ Unreviewed build fix for ENABLE(MATHML).
+
+ * mathml/MathMLElement.h:
+ (WebCore):
+
+2012-03-04 MORITA Hajime <morrita@google.com>
+
+ WebKit needs toHTMLUnknownElement() and isUnknown() for sanity check.
+ https://bugs.webkit.org/show_bug.cgi?id=80229
+
+ Reviewed by Kent Tamura.
+
+ The code generator has naked static_cast<> which could be unsafe.
+ We can turn it into toHTMLUnknownElement() and the like.
+
+ No new tests. Just added a sanity check.
+
+ * dom/make_names.pl:
+ (printWrapperFactoryCppFile):
+ * html/HTMLElement.h:
+ (HTMLElement):
+ (WebCore::HTMLElement::isHTMLUnknownElement):
+ * html/HTMLUnknownElement.h:
+ (HTMLUnknownElement):
+ (WebCore::toHTMLUnknownElement):
+ (WebCore):
+ * mathml/MathMLElement.h:
+ (toMathMLElement):
+ * svg/SVGElement.h:
+ (WebCore::toSVGElement):
+ (WebCore):
+
+2012-03-04 Luke Macpherson <macpherson@chromium.org>
+
+ Handle CSSPropertyWebkitColumnBreakAfter, CSSPropertyWebkitColumnBreakBefore and CSSPropertyWebkitColumnBreakInside in CSSStyleApplyProperty.
+ https://bugs.webkit.org/show_bug.cgi?id=80226
+
+ Reviewed by Eric Seidel.
+
+ No new tests / refactoring only.
+
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+
+2012-03-04 Jonathan Dong <jonathan.dong@torchmobile.com.cn>
+
+ [BlackBerry] Credential backing store implementation
+ https://bugs.webkit.org/show_bug.cgi?id=79650
+
+ Reviewed by Antonio Gomes.
+
+ Opened Credential database in CedentialBackingStore::instance().
+ Added never_remember table and associated sql statment
+ members to store the never remember sites.
+ Removed CredentialStorage initialize codes because that
+ won't give users a chance to re-enter the new credential
+ information for an already stored site.
+ Changed login update and has statement to support
+ autofill feature of multiple credential forms in the
+ same page; Also added url as a parameter of hasLogin() function.
+ Added calling reset() after each statement calls step(),
+ to make it work correctly next time.
+ Also fixed a macro typo in HANDLE_SQL_EXEC_FAILURE.
+
+ No new tests.
+
+ * platform/network/blackberry/CredentialBackingStore.cpp:
+ (WebCore::CredentialBackingStore::instance):
+ (WebCore::CredentialBackingStore::CredentialBackingStore):
+ (WebCore::CredentialBackingStore::open):
+ (WebCore::CredentialBackingStore::close):
+ (WebCore::CredentialBackingStore::addLogin):
+ (WebCore::CredentialBackingStore::updateLogin):
+ (WebCore::CredentialBackingStore::hasLogin):
+ (WebCore::CredentialBackingStore::getLogin):
+ (WebCore):
+ (WebCore::CredentialBackingStore::removeLogin):
+ (WebCore::CredentialBackingStore::addNeverRemember):
+ (WebCore::CredentialBackingStore::hasNeverRemember):
+ (WebCore::CredentialBackingStore::getNeverRemember):
+ (WebCore::CredentialBackingStore::removeNeverRemember):
+ (WebCore::CredentialBackingStore::clearLogins):
+ (WebCore::CredentialBackingStore::clearNeverRemember):
+ * platform/network/blackberry/CredentialBackingStore.h:
+ (CredentialBackingStore):
+
+2012-03-04 Hyowon Kim <hw1008.kim@samsung.com>
+
+ [EFL] Evas_GL initialization and destruction in GraphicsContext3DPrivate
+ https://bugs.webkit.org/show_bug.cgi?id=80211
+
+ Reviewed by Noam Rosenthal.
+
+ This patch adds initialization and destruction codes using Evas_GL APIs to GC3DPrivate.
+
+ No new tests. No behavior change.
+
+ * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
+ (WebCore::GraphicsContext3DPrivate::create):
+ (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
+ (WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
+ (WebCore::GraphicsContext3DPrivate::initialize):
+ (WebCore::GraphicsContext3DPrivate::createSurface):
+ (WebCore::GraphicsContext3DPrivate::makeContextCurrent):
+ * platform/graphics/efl/GraphicsContext3DPrivate.h:
+ (GraphicsContext3DPrivate):
+
+2012-03-04 Raphael Kubo da Costa <kubo@profusion.mobi>
+
+ [CMake] Libraries are installed to /usr/lib and not /usr/lib64 on x86_64
+ https://bugs.webkit.org/show_bug.cgi?id=71507
+
+ Reviewed by Antonio Gomes.
+
+ No new tests, buildsystem change.
+
+ * CMakeLists.txt: Use ${LIB_INSTALL_DIR} instead of hardcoding "lib".
+
+2012-03-04 Hyowon Kim <hw1008.kim@samsung.com>
+
+ [EFL] Implementation of missing functions in GraphicsContext3DPrivate
+ https://bugs.webkit.org/show_bug.cgi?id=79759
+
+ Reviewed by Noam Rosenthal.
+
+ The initial patch (Bug 62961) only contains implementations for simple functions
+ which call GL functions through Evas_GL_API.
+ This patch implements a little complicated functions such as getActiveAttrib(),
+ getShaderSource() and so on.
+
+ No new tests. No behavior change.
+
+ * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
+ (WebCore::GraphicsContext3DPrivate::getActiveAttrib):
+ (WebCore::GraphicsContext3DPrivate::getActiveUniform):
+ (WebCore::GraphicsContext3DPrivate::getError):
+ (WebCore::GraphicsContext3DPrivate::getIntegerv):
+ (WebCore::GraphicsContext3DPrivate::getProgramInfoLog):
+ (WebCore::GraphicsContext3DPrivate::getShaderInfoLog):
+ (WebCore::GraphicsContext3DPrivate::getShaderSource):
+
+2012-03-04 Kentaro Hara <haraken@chromium.org>
+
+ Revert SVG-related APIs from DOMWindowSVG.idl back to DOMWindow.idl
+ https://bugs.webkit.org/show_bug.cgi?id=80139
+
+ Reviewed by Adam Barth.
+
+ Based on the discussion on webkit-dev@
+ (http://markmail.org/message/kagvswmah67zmrry#query:+page:1+mid:h34vzbiu5suub3ld+state:results),
+ this patch reverts SVG-related APIs from DOMWindowSVG.idl back to DOMWindow.idl.
+
+ No tests. No change in behavior.
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * DerivedSources.pri:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.xcodeproj/project.pbxproj:
+ * page/DOMWindow.idl:
+ * svg/DOMWindowSVG.idl: Removed.
+
+2012-03-04 Kentaro Hara <haraken@chromium.org>
+
+ Revert WebGL-related APIs from DOMWindowWebGL.idl back to DOMWindow.idl
+ https://bugs.webkit.org/show_bug.cgi?id=80144
+
+ Reviewed by Adam Barth.
+
+ Based on the discussion on webkit-dev@
+ (http://markmail.org/message/kagvswmah67zmrry#query:+page:1+mid:h34vzbiu5suub3ld+state:results),
+ this patch reverts WebGL-related APIs from DOMWindowWebGL.idl back to DOMWindow.idl.
+
+ No tests. No change in behavior.
+
+ * DerivedSources.make:
+ * DerivedSources.pri:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/canvas/DOMWindowWebGL.idl: Removed.
+ * page/DOMWindow.idl:
+
+2012-03-04 MORITA Hajime <morrita@google.com>
+
+ Unreviewed build fix.
+
+ * rendering/RenderButton.cpp:
+ (WebCore::RenderButton::canHaveGeneratedChildren):
+
+2012-03-01 MORITA Hajime <morrita@google.com>
+
+ REGRESSION(r108758): Assertion failure in WebCore::RenderMenuList::addChild
+ https://bugs.webkit.org/show_bug.cgi?id=80096
+
+ Reviewed by Dimitri Glazkov.
+
+ After r108758 RenderBlock allowed <select> to have generated
+ contents. But it shouldn't. This change stops allowing it again by
+ replacing some canHaveChildren() invocations with
+ less permissive canHaveGeneratedChildren().
+
+ This change also pulls back original canHaveChildren() logic to
+ RenderButton to allow <button> to have generated contents.
+
+ Then RenderDeprecatedFlexibleBox::buttonText() is morphed to
+ more intention revealing canHaveGeneratedChildren().
+
+ Test: fast/forms/select-generated-content.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore):
+ (WebCore::canHaveGeneratedChildren):
+ (WebCore::RenderBlock::styleDidChange):
+ (WebCore::findFirstLetterBlock):
+ (WebCore::RenderBlock::updateFirstLetter):
+ * rendering/RenderButton.cpp:
+ * rendering/RenderButton.h:
+ (RenderButton):
+ * rendering/RenderDeprecatedFlexibleBox.h:
+ (WebCore::RenderDeprecatedFlexibleBox::canHaveGeneratedChildren):
+ * rendering/RenderMenuList.h:
+
+2012-03-04 Robin Cao <robin.cao@torchmobile.com.cn>
+
+ [BlackBerry] Upstream two helper files from platform/graphics/blackberry
+ https://bugs.webkit.org/show_bug.cgi?id=80125
+
+ Reviewed by Antonio Gomes.
+
+ Initial upstream, no new tests.
+
+ * platform/graphics/blackberry/InstrumentedPlatformCanvas.h: Added.
+ (WebCore):
+ (InstrumentedPlatformCanvas):
+ (WebCore::InstrumentedPlatformCanvas::InstrumentedPlatformCanvas):
+ (WebCore::InstrumentedPlatformCanvas::~InstrumentedPlatformCanvas):
+ (WebCore::InstrumentedPlatformCanvas::isSolidColor):
+ (WebCore::InstrumentedPlatformCanvas::solidColor):
+ (WebCore::InstrumentedPlatformCanvas::save):
+ (WebCore::InstrumentedPlatformCanvas::saveLayer):
+ (WebCore::InstrumentedPlatformCanvas::restore):
+ (WebCore::InstrumentedPlatformCanvas::translate):
+ (WebCore::InstrumentedPlatformCanvas::scale):
+ (WebCore::InstrumentedPlatformCanvas::rotate):
+ (WebCore::InstrumentedPlatformCanvas::skew):
+ (WebCore::InstrumentedPlatformCanvas::concat):
+ (WebCore::InstrumentedPlatformCanvas::setMatrix):
+ (WebCore::InstrumentedPlatformCanvas::clipRect):
+ (WebCore::InstrumentedPlatformCanvas::clipPath):
+ (WebCore::InstrumentedPlatformCanvas::clipRegion):
+ (WebCore::InstrumentedPlatformCanvas::clear):
+ (WebCore::InstrumentedPlatformCanvas::drawPaint):
+ (WebCore::InstrumentedPlatformCanvas::drawPoints):
+ (WebCore::InstrumentedPlatformCanvas::drawRect):
+ (WebCore::InstrumentedPlatformCanvas::drawPath):
+ (WebCore::InstrumentedPlatformCanvas::drawBitmap):
+ (WebCore::InstrumentedPlatformCanvas::drawBitmapRect):
+ (WebCore::InstrumentedPlatformCanvas::drawBitmapMatrix):
+ (WebCore::InstrumentedPlatformCanvas::drawSprite):
+ (WebCore::InstrumentedPlatformCanvas::drawText):
+ (WebCore::InstrumentedPlatformCanvas::drawPosText):
+ (WebCore::InstrumentedPlatformCanvas::drawPosTextH):
+ (WebCore::InstrumentedPlatformCanvas::drawTextOnPath):
+ (WebCore::InstrumentedPlatformCanvas::drawPicture):
+ (WebCore::InstrumentedPlatformCanvas::drawVertices):
+ (WebCore::InstrumentedPlatformCanvas::drawData):
+ * platform/graphics/blackberry/LayerMessage.h: Added.
+ (WebCore):
+ (WebCore::isCompositingThread):
+ (WebCore::compositingThread):
+ (WebCore::isWebKitThread):
+ (WebCore::webKitThread):
+ (WebCore::dispatchCompositingMessage):
+ (WebCore::dispatchSyncCompositingMessage):
+ (WebCore::dispatchWebKitMessage):
+
+2012-03-04 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Introduce SMIL overrideStyle, to make SVG stop mutating CSS styles directly
+ https://bugs.webkit.org/show_bug.cgi?id=79790
+
+ Reviewed by Dirk Schulze.
+
+ Restore SMIL animation behavior back to pre-r109342.
+ 1) Always animate presentation attributes as CSS properties, regardless of the
+ attributeTypes value. Matches Opera/FF, and makes the attribute optional again
+ as specified in both SMIL & SVG.
+
+ Extend existing svg/animations/attributesTypes.html to verify this.
+
+ 2) Switch setInstancesUpdatesBlocked calls to the right locations again, to
+ avoid chromium assertions (and/or extra work being done). Fixing that reveals another
+ problem: in the instance updating code path, we always called setTargetAttributeAnimatedCSSValue
+ even for XML animations.
+
+ * svg/SVGAnimationElement.cpp:
+ (WebCore::SVGAnimationElement::shouldApplyAnimation): Restore old logic.
+ (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue): Fix typo, move setInstancesUpdatesBlocked calls.
+
+2012-03-04 Jonathan Dong <jonathan.dong@torchmobile.com.cn>
+
+ [BlackBerry] upstream MediaPlayerPrivateBlackBerry.[cpp|h]
+ https://bugs.webkit.org/show_bug.cgi?id=79729
+
+ Reviewed by Rob Buis and Antonio Gomes.
+
+ Implementation of MediaPlayerPrivate for BlackBerry porting.
+ Initial upstream, No new tests.
+
+ * PlatformBlackBerry.cmake:
+ * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp: Added.
+ (WebCore):
+ (WebCore::MediaPlayerPrivate::create):
+ (WebCore::MediaPlayerPrivate::registerMediaEngine):
+ (WebCore::MediaPlayerPrivate::getSupportedTypes):
+ (WebCore::MediaPlayerPrivate::supportsType):
+ (WebCore::MediaPlayerPrivate::notifyAppActivatedEvent):
+ (WebCore::MediaPlayerPrivate::setCertificatePath):
+ (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
+ (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
+ (WebCore::MediaPlayerPrivate::load):
+ (WebCore::MediaPlayerPrivate::cancelLoad):
+ (WebCore::MediaPlayerPrivate::prepareToPlay):
+ (WebCore::MediaPlayerPrivate::play):
+ (WebCore::MediaPlayerPrivate::pause):
+ (WebCore::MediaPlayerPrivate::supportsFullscreen):
+ (WebCore::MediaPlayerPrivate::naturalSize):
+ (WebCore::MediaPlayerPrivate::hasVideo):
+ (WebCore::MediaPlayerPrivate::hasAudio):
+ (WebCore::MediaPlayerPrivate::setVisible):
+ (WebCore::MediaPlayerPrivate::duration):
+ (WebCore::MediaPlayerPrivate::currentTime):
+ (WebCore::MediaPlayerPrivate::seek):
+ (WebCore::MediaPlayerPrivate::userDrivenSeekTimerFired):
+ (WebCore::MediaPlayerPrivate::seeking):
+ (WebCore::MediaPlayerPrivate::setRate):
+ (WebCore::MediaPlayerPrivate::paused):
+ (WebCore::MediaPlayerPrivate::setVolume):
+ (WebCore::MediaPlayerPrivate::networkState):
+ (WebCore::MediaPlayerPrivate::readyState):
+ (WebCore::MediaPlayerPrivate::maxTimeSeekable):
+ (WebCore::MediaPlayerPrivate::buffered):
+ (WebCore::MediaPlayerPrivate::bytesLoaded):
+ (WebCore::MediaPlayerPrivate::setSize):
+ (WebCore::MediaPlayerPrivate::paint):
+ (WebCore::MediaPlayerPrivate::hasAvailableVideoFrame):
+ (WebCore::MediaPlayerPrivate::hasSingleSecurityOrigin):
+ (WebCore::MediaPlayerPrivate::movieLoadType):
+ (WebCore::MediaPlayerPrivate::userAgent):
+ (WebCore::MediaPlayerPrivate::resizeSourceDimensions):
+ (WebCore::MediaPlayerPrivate::setFullscreenWebPageClient):
+ (WebCore::MediaPlayerPrivate::getWindow):
+ (WebCore::MediaPlayerPrivate::getPeerWindow):
+ (WebCore::MediaPlayerPrivate::getWindowPosition):
+ (WebCore::MediaPlayerPrivate::mmrContextName):
+ (WebCore::MediaPlayerPrivate::percentLoaded):
+ (WebCore::MediaPlayerPrivate::sourceWidth):
+ (WebCore::MediaPlayerPrivate::sourceHeight):
+ (WebCore::MediaPlayerPrivate::setAllowPPSVolumeUpdates):
+ (WebCore::MediaPlayerPrivate::updateStates):
+ (WebCore::MediaPlayerPrivate::onStateChanged):
+ (WebCore::MediaPlayerPrivate::onMediaStatusChanged):
+ (WebCore::MediaPlayerPrivate::onError):
+ (WebCore::MediaPlayerPrivate::onDurationChanged):
+ (WebCore::MediaPlayerPrivate::onTimeChanged):
+ (WebCore::MediaPlayerPrivate::onPauseStateChanged):
+ (WebCore::MediaPlayerPrivate::onRateChanged):
+ (WebCore::MediaPlayerPrivate::onVolumeChanged):
+ (WebCore::MediaPlayerPrivate::onRepaint):
+ (WebCore::MediaPlayerPrivate::onSizeChanged):
+ (WebCore::MediaPlayerPrivate::onPlayNotified):
+ (WebCore::MediaPlayerPrivate::onPauseNotified):
+ (WebCore::MediaPlayerPrivate::onBuffering):
+ (WebCore::MediaPlayerPrivate::showErrorDialog):
+ (WebCore::MediaPlayerPrivate::frameView):
+ (WebCore::MediaPlayerPrivate::platformWindow):
+ (WebCore::MediaPlayerPrivate::isFullscreen):
+ (WebCore::MediaPlayerPrivate::platformMedia):
+ (WebCore::MediaPlayerPrivate::platformLayer):
+ (WebCore::loadBufferingImageData):
+ (WebCore::MediaPlayerPrivate::bufferingTimerFired):
+ (WebCore::MediaPlayerPrivate::setBuffering):
+ (WebCore::allocateTextureId):
+ (WebCore::MediaPlayerPrivate::drawBufferingAnimation):
+ * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h: Added.
+ (WebKit):
+ (WebCore):
+ (MediaPlayerPrivate):
+ (WebCore::MediaPlayerPrivate::supportsAcceleratedRendering):
+ (WebCore::MediaPlayerPrivate::acceleratedRenderingStateChanged):
+
+2012-03-03 Benjamin Poulain <benjamin@webkit.org>
+
+ Remove the unused function WebCore::protocolIsInHTTPFamily()
+ https://bugs.webkit.org/show_bug.cgi?id=80218
+
+ Reviewed by Anders Carlsson.
+
+ * WebCore.order:
+ * platform/KURL.cpp:
+ * platform/KURL.h:
+ (WebCore):
+
+2012-03-03 Benjamin Poulain <benjamin@webkit.org>
+
+ Implement the basis of KURLWTFURL
+ https://bugs.webkit.org/show_bug.cgi?id=79600
+
+ Reviewed by Adam Barth.
+
+ Add a simple, non-optimized, implementation for the main methods of KURL based
+ on ParsedURL.
+
+ * platform/KURLWTFURL.cpp:
+ (WebCore):
+ (WebCore::detach):
+ (WebCore::KURL::KURL):
+ (WebCore::KURL::copy):
+ (WebCore::KURL::isEmpty):
+ (WebCore::KURL::isValid):
+ (WebCore::KURL::string):
+ (WebCore::KURL::protocol):
+ (WebCore::KURL::host):
+ (WebCore::KURL::hasPort):
+ (WebCore::KURL::port):
+ (WebCore::KURL::user):
+ (WebCore::KURL::pass):
+ (WebCore::KURL::hasPath):
+ (WebCore::KURL::path):
+ (WebCore::KURL::lastPathComponent):
+ (WebCore::KURL::query):
+ (WebCore::KURL::hasFragmentIdentifier):
+ (WebCore::KURL::fragmentIdentifier):
+ (WebCore::KURL::baseAsString):
+ (WebCore::KURL::fileSystemPath):
+ (WebCore::KURL::protocolIs):
+ (WebCore::KURL::protocolIsInHTTPFamily):
+ (WebCore::KURL::setProtocol):
+ (WebCore::KURL::setHost):
+ (WebCore::KURL::removePort):
+ (WebCore::KURL::setPort):
+ (WebCore::KURL::setHostAndPort):
+ (WebCore::KURL::setUser):
+ (WebCore::KURL::setPass):
+ (WebCore::KURL::setPath):
+ (WebCore::KURL::setQuery):
+ (WebCore::KURL::setFragmentIdentifier):
+ (WebCore::KURL::removeFragmentIdentifier):
+ (WebCore::protocolHostAndPortAreEqual):
+ * platform/KURLWTFURLImpl.h:
+ (KURLWTFURLImpl):
+ (WebCore::KURLWTFURLImpl::copy):
+ (WebCore):
+
+2012-03-03 Benjamin Poulain <benjamin@webkit.org>
+
+ Remove the redundant method KURL::protocolInHTTPFamily()
+ https://bugs.webkit.org/show_bug.cgi?id=80216
+
+ Reviewed by Anders Carlsson.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::open):
+ (WebCore::FrameLoader::addExtraFieldsToRequest):
+ * loader/ResourceLoadScheduler.cpp:
+ (WebCore::ResourceLoadScheduler::hostForURL):
+ (WebCore::ResourceLoadScheduler::scheduleLoad):
+ * loader/appcache/ApplicationCache.cpp:
+ (WebCore::ApplicationCache::requestIsHTTPOrHTTPSGet):
+ * loader/cache/CachedResource.cpp:
+ (WebCore::CachedResource::freshnessLifetime):
+ * loader/cache/MemoryCache.cpp:
+ (WebCore::MemoryCache::removeFragmentIdentifierIfNeeded):
+ * loader/icon/IconController.cpp:
+ (WebCore::IconController::defaultURL):
+ * platform/KURL.h:
+ (KURL):
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ * platform/network/CredentialStorage.cpp:
+ (WebCore::CredentialStorage::set):
+ (WebCore::findDefaultProtectionSpaceForURL):
+ * platform/network/ResourceRequestBase.cpp:
+ (WebCore::ResourceRequestBase::setCachePolicy):
+ (WebCore::ResourceRequestBase::setTimeoutInterval):
+ (WebCore::ResourceRequestBase::setHTTPMethod):
+ (WebCore::ResourceRequestBase::setHTTPHeaderField):
+ (WebCore::ResourceRequestBase::clearHTTPAuthorization):
+ (WebCore::ResourceRequestBase::clearHTTPReferrer):
+ (WebCore::ResourceRequestBase::clearHTTPOrigin):
+ (WebCore::ResourceRequestBase::setResponseContentDispositionEncodingFallbackArray):
+ (WebCore::ResourceRequestBase::setHTTPBody):
+ (WebCore::ResourceRequestBase::setAllowCookies):
+ (WebCore::ResourceRequestBase::setPriority):
+ (WebCore::ResourceRequestBase::addHTTPHeaderField):
+ * platform/network/blackberry/NetworkManager.cpp:
+ (WebCore::NetworkManager::startJob):
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::ResourceHandle::createCFURLConnection):
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::ResourceHandle::createNSURLConnection):
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::send):
+
+2012-03-03 Robin Cao <robin.cao@torchmobile.com.cn>
+
+ [BlackBerry] Upstream LayerWebKitThread and its derived classes
+ https://bugs.webkit.org/show_bug.cgi?id=79871
+
+ Reviewed by Antonio Gomes.
+
+ Initial upstream, no new tests.
+
+ * platform/graphics/blackberry/CanvasLayerWebKitThread.cpp: Added.
+ (WebCore):
+ (WebCore::CanvasLayerWebKitThread::CanvasLayerWebKitThread):
+ (WebCore::CanvasLayerWebKitThread::~CanvasLayerWebKitThread):
+ (WebCore::CanvasLayerWebKitThread::setCanvas):
+ (WebCore::CanvasLayerWebKitThread::setNeedsDisplay):
+ (WebCore::CanvasLayerWebKitThread::updateTextureContentsIfNeeded):
+ * platform/graphics/blackberry/CanvasLayerWebKitThread.h: Added.
+ (WebCore):
+ (CanvasLayerWebKitThread):
+ (WebCore::CanvasLayerWebKitThread::create):
+ * platform/graphics/blackberry/LayerData.h: Added.
+ (WebCore):
+ (LayerData):
+ (WebCore::LayerData::LayerData):
+ (WebCore::LayerData::~LayerData):
+ (WebCore::LayerData::anchorPoint):
+ (WebCore::LayerData::anchorPointZ):
+ (WebCore::LayerData::backgroundColor):
+ (WebCore::LayerData::borderColor):
+ (WebCore::LayerData::borderWidth):
+ (WebCore::LayerData::bounds):
+ (WebCore::LayerData::doubleSided):
+ (WebCore::LayerData::frame):
+ (WebCore::LayerData::masksToBounds):
+ (WebCore::LayerData::opacity):
+ (WebCore::LayerData::opaque):
+ (WebCore::LayerData::position):
+ (WebCore::LayerData::sublayerTransform):
+ (WebCore::LayerData::transform):
+ (WebCore::LayerData::preserves3D):
+ (WebCore::LayerData::getTextureID):
+ (WebCore::LayerData::setTextureID):
+ (WebCore::LayerData::needsTexture):
+ (WebCore::LayerData::layerProgramShader):
+ (WebCore::LayerData::isFixedPosition):
+ (WebCore::LayerData::hasFixedContainer):
+ (WebCore::LayerData::hasFixedAncestorInDOMTree):
+ (WebCore::LayerData::pluginView):
+ (WebCore::LayerData::holePunchRect):
+ (WebCore::LayerData::hasHolePunchRect):
+ (WebCore::LayerData::mediaPlayer):
+ (WebCore::LayerData::canvas):
+ (WebCore::LayerData::replicate):
+ (WebCore::LayerData::layerType):
+ (WebCore::LayerData::includeVisibility):
+ * platform/graphics/blackberry/LayerWebKitThread.cpp: Added.
+ (WebCore):
+ (WebCore::LayerWebKitThread::create):
+ (WebCore::LayerWebKitThread::LayerWebKitThread):
+ (WebCore::LayerWebKitThread::~LayerWebKitThread):
+ (WebCore::LayerWebKitThread::paintContents):
+ (WebCore::LayerWebKitThread::contentsVisible):
+ (WebCore::LayerWebKitThread::createFrontBufferLock):
+ (WebCore::LayerWebKitThread::updateTextureContentsIfNeeded):
+ (WebCore::LayerWebKitThread::setContents):
+ (WebCore::LayerWebKitThread::setDrawable):
+ (WebCore::LayerWebKitThread::setNeedsCommit):
+ (WebCore::LayerWebKitThread::notifyAnimationStarted):
+ (WebCore::LayerWebKitThread::commitOnWebKitThread):
+ (WebCore::LayerWebKitThread::startAnimations):
+ (WebCore::LayerWebKitThread::updateTextureContents):
+ (WebCore::LayerWebKitThread::commitOnCompositingThread):
+ (WebCore::LayerWebKitThread::addSublayer):
+ (WebCore::LayerWebKitThread::insertSublayer):
+ (WebCore::LayerWebKitThread::removeFromSuperlayer):
+ (WebCore::LayerWebKitThread::removeSublayer):
+ (WebCore::LayerWebKitThread::replaceSublayer):
+ (WebCore::LayerWebKitThread::indexOfSublayer):
+ (WebCore::LayerWebKitThread::setBounds):
+ (WebCore::LayerWebKitThread::setFrame):
+ (WebCore::LayerWebKitThread::rootLayer):
+ (WebCore::LayerWebKitThread::removeAllSublayers):
+ (WebCore::LayerWebKitThread::setSublayers):
+ (WebCore::LayerWebKitThread::setNeedsDisplayInRect):
+ (WebCore::LayerWebKitThread::setNeedsDisplay):
+ (WebCore::LayerWebKitThread::updateLayerHierarchy):
+ (WebCore::LayerWebKitThread::setIsMask):
+ * platform/graphics/blackberry/LayerWebKitThread.h: Added.
+ (WebCore):
+ (LayerWebKitThread):
+ (WebCore::LayerWebKitThread::setAnchorPoint):
+ (WebCore::LayerWebKitThread::setAnchorPointZ):
+ (WebCore::LayerWebKitThread::setBackgroundColor):
+ (WebCore::LayerWebKitThread::setBorderColor):
+ (WebCore::LayerWebKitThread::setBorderWidth):
+ (WebCore::LayerWebKitThread::setDoubleSided):
+ (WebCore::LayerWebKitThread::setMasksToBounds):
+ (WebCore::LayerWebKitThread::setMaskLayer):
+ (WebCore::LayerWebKitThread::maskLayer):
+ (WebCore::LayerWebKitThread::setReplicaLayer):
+ (WebCore::LayerWebKitThread::replicaLayer):
+ (WebCore::LayerWebKitThread::setNeedsDisplayOnBoundsChange):
+ (WebCore::LayerWebKitThread::setOpacity):
+ (WebCore::LayerWebKitThread::setOpaque):
+ (WebCore::LayerWebKitThread::setPosition):
+ (WebCore::LayerWebKitThread::getSublayers):
+ (WebCore::LayerWebKitThread::setSublayerTransform):
+ (WebCore::LayerWebKitThread::superlayer):
+ (WebCore::LayerWebKitThread::setTransform):
+ (WebCore::LayerWebKitThread::setPreserves3D):
+ (WebCore::LayerWebKitThread::setFixedPosition):
+ (WebCore::LayerWebKitThread::setHasFixedContainer):
+ (WebCore::LayerWebKitThread::setHasFixedAncestorInDOMTree):
+ (WebCore::LayerWebKitThread::contents):
+ (WebCore::LayerWebKitThread::setOwner):
+ (WebCore::LayerWebKitThread::drawsContent):
+ (WebCore::LayerWebKitThread::layerCompositingThread):
+ (WebCore::LayerWebKitThread::setAbsoluteOffset):
+ (WebCore::LayerWebKitThread::contentsScale):
+ (WebCore::LayerWebKitThread::setRunningAnimations):
+ (WebCore::LayerWebKitThread::setSuspendedAnimations):
+ (WebCore::LayerWebKitThread::setNeedsTexture):
+ (WebCore::LayerWebKitThread::setLayerProgramShader):
+ (WebCore::LayerWebKitThread::isDrawable):
+ (WebCore::LayerWebKitThread::boundsChanged):
+ (WebCore::LayerWebKitThread::setSuperlayer):
+ (WebCore::LayerWebKitThread::numSublayers):
+ * platform/graphics/blackberry/PluginLayerWebKitThread.cpp: Added.
+ (WebCore):
+ (WebCore::PluginLayerWebKitThread::PluginLayerWebKitThread):
+ (WebCore::PluginLayerWebKitThread::~PluginLayerWebKitThread):
+ (WebCore::PluginLayerWebKitThread::setPluginView):
+ (WebCore::PluginLayerWebKitThread::setHolePunchRect):
+ (WebCore::PluginLayerWebKitThread::setNeedsDisplay):
+ (WebCore::PluginLayerWebKitThread::updateTextureContentsIfNeeded):
+ * platform/graphics/blackberry/PluginLayerWebKitThread.h: Added.
+ (WebCore):
+ (PluginLayerWebKitThread):
+ (WebCore::PluginLayerWebKitThread::create):
+ * platform/graphics/blackberry/VideoLayerWebKitThread.cpp: Added.
+ (WebCore):
+ (WebCore::VideoLayerWebKitThread::VideoLayerWebKitThread):
+ (WebCore::VideoLayerWebKitThread::~VideoLayerWebKitThread):
+ (WebCore::VideoLayerWebKitThread::setMediaPlayer):
+ (WebCore::VideoLayerWebKitThread::setHolePunchRect):
+ (WebCore::VideoLayerWebKitThread::setNeedsDisplay):
+ (WebCore::VideoLayerWebKitThread::boundsChanged):
+ (WebCore::VideoLayerWebKitThread::updateTextureContentsIfNeeded):
+ * platform/graphics/blackberry/VideoLayerWebKitThread.h: Added.
+ (WebCore):
+ (VideoLayerWebKitThread):
+ (WebCore::VideoLayerWebKitThread::create):
+
+2012-03-03 Hans Wennborg <hans@chromium.org>
+
+ Implement Speech JavaScript API
+ https://bugs.webkit.org/show_bug.cgi?id=80019
+
+ Reviewed by Adam Barth.
+
+ Add ENABLE_SCRIPTED_SPEECH and runtime flag.
+
+ No functionality yet, so no new tests.
+
+ * Configurations/FeatureDefines.xcconfig:
+ * GNUmakefile.am:
+ * Target.pri:
+ * bindings/generic/RuntimeEnabledFeatures.cpp:
+ (WebCore):
+ * bindings/generic/RuntimeEnabledFeatures.h:
+ (RuntimeEnabledFeatures):
+ (WebCore::RuntimeEnabledFeatures::setScriptedSpeechEnabled):
+ (WebCore::RuntimeEnabledFeatures::scriptedSpeechEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitSpeechRecognitionEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitSpeechRecognitionErrorEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitSpeechGrammarEnabled):
+ (WebCore::RuntimeEnabledFeatures::webkitSpeechGrammarListEnabled):
+
+2012-03-03 Raymond Toy <rtoy@google.com>
+
+ DelayNode has a fixed one second max delay time
+ https://bugs.webkit.org/show_bug.cgi?id=78758
+
+ Change DelayNode to accept an optional parameter to specify the
+ maximum delay allowed. If not specified, the default is 1 sec.
+
+ Reviewed by Chris Rogers.
+
+ Test: webaudio/delaynode-maxdelay.html
+ webaudio/delaynode-maxdelay-expected.txt
+
+ * webaudio/AudioContext.cpp:
+ (WebCore::AudioContext::createDelayNode): Allow maxDelayTime
+ parameter to specify max delay.
+ * webaudio/AudioContext.h: Allow maxDelayTime
+ parameter to specify max delay but default to 1.
+ (AudioContext):
+ * webaudio/AudioContext.idl: createDelayNode takes optional max
+ delay time parameter.
+ * webaudio/DelayDSPKernel.cpp:
+ (WebCore::DelayDSPKernel::DelayDSPKernel): Remove unused
+ DefaultMaxDelayTime. Set m_maxDelayTime from processor
+ maxDelayTime.
+ * webaudio/DelayNode.cpp:
+ (WebCore::DelayNode::DelayNode): Add maxDelayTime parameter.
+ * webaudio/DelayNode.h:
+ (WebCore::DelayNode::create): Add maxDelayTime parameter.
+ (DelayNode): Add maxDelayTime parameter.
+ * webaudio/DelayProcessor.cpp:
+ (WebCore::DelayProcessor::DelayProcessor): Add maxDelayTime
+ parameter.
+ * webaudio/DelayProcessor.h:
+ (DelayProcessor): Add maxDelayTime parameter.
+ (WebCore::DelayProcessor::maxDelayTime): New slot to hold
+ maxDelayTime.
+
+2012-03-03 Raymond Toy <rtoy@google.com>
+
+ Simplified discreteTimeConstantForSampleRate
+ https://bugs.webkit.org/show_bug.cgi?id=78051
+
+ Remove hardcoded constant and simplify computation of discrete
+ time constant.
+
+ Reviewed by Chris Rogers.
+
+ No new tests needed. Covered by existing AudioParam tests.
+
+ * platform/audio/AudioUtilities.cpp:
+ (WebCore::AudioUtilities::discreteTimeConstantForSampleRate):
+ Simplify formula.
+ * platform/audio/AudioUtilities.h:
+ (AudioUtilities): Update function signature.
+ * platform/audio/DynamicsCompressorKernel.cpp:
+ (WebCore::DynamicsCompressorKernel::DynamicsCompressorKernel):
+ cast to float to avoid warnings.
+ * webaudio/AudioParamTimeline.cpp:
+ (WebCore::AudioParamTimeline::valuesForTimeRangeImpl): cast to
+ float to avoid warnings.
+
+2012-03-03 Anders Carlsson <andersca@apple.com>
+
+ Fix build with newer versions of clang.
+
+ * bindings/objc/DOM.mm:
+ (-[DOMNode description]):
+ Remove an unused parameter.
+
+ * bridge/objc/objc_instance.mm:
+ (ObjcInstance::getClass):
+ Use object_getClass instead of accessing isa directly.
+
+ * platform/LocalizedStrings.cpp:
+ (WebCore::formatLocalizedString):
+ Disable the -Wformat-nonliteral warning around the call to CFStringCreateWithFormatAndArguments.
+
+ * platform/graphics/mac/WebLayer.mm:
+ (-[CALayer _descriptionWithPrefix:]):
+ Use %p for the CALayer pointer, and use %lu for the number of sublayers.
+
+ * platform/mac/HTMLConverter.mm:
+ (-[WebHTMLConverter _addAttachmentForElement:URL:needsParagraph:usePlaceholder:]):
+ Cast the NSAttachmentCharacte enum to unichar.
+
+2012-03-03 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r109343.
+ http://trac.webkit.org/changeset/109343
+ https://bugs.webkit.org/show_bug.cgi?id=80212
+
+ Int32array can't handle values for native nodes because they
+ have int64 ids (Requested by loislo1 on #webkit).
+
+ * inspector/front-end/HeapSnapshot.js:
+ (WebInspector.HeapSnapshotLoader.prototype._parseNodes):
+ (WebInspector.HeapSnapshotLoader.prototype.pushJSONChunk):
+ (WebInspector.HeapSnapshot):
+ (WebInspector.HeapSnapshot.prototype._init):
+
+2012-03-03 Andreas Kling <awesomekling@apple.com>
+
+ Free up a bit in RenderObject.
+ http://webkit.org/b/80208
+
+ Reviewed by Anders Carlsson.
+
+ Move m_hasMarkupTruncation to RenderBlock, stealing one bit from m_lineHeight.
+ This flag is only used by RenderBlock.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::RenderBlock):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::setHasMarkupTruncation):
+ (WebCore::RenderBlock::hasMarkupTruncation):
+ (RenderBlock):
+ * rendering/RenderObject.h:
+ (RenderObject):
+ (WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
+ (RenderObjectBitfields):
+
+2012-03-03 Joe Thomas <joethomas@motorola.com>
+
+ Implement vw/vh/vmin (viewport sizes) from CSS 3 Values and Units
+ https://bugs.webkit.org/show_bug.cgi?id=27160
+
+ The specification related to this implementation is located at http://dev.w3.org/csswg/css3-values/#viewport-relative-lengths.
+ vw/vh/vmin are implemented as primitive length units. Added the parsing logic for these new units and creation of primitive values.
+
+ Added new Length types such as ViewportRelativeWidth, ViewportRelativeHeight and ViewportRelativeMin for viewport-relative lengths
+ and included the support for fetching the value of these relative length units based on the current viewport size.
+
+ Reviewed by Antti Koivisto.
+
+ Tests: css3/viewport-relative-lengths/css3-viewport-relative-lengths-getStyle.html
+ css3/viewport-relative-lengths/css3-viewport-relative-lengths-vh-absolute.html
+ css3/viewport-relative-lengths/css3-viewport-relative-lengths-vh.html
+ css3/viewport-relative-lengths/css3-viewport-relative-lengths-vmin-absolute.html
+ css3/viewport-relative-lengths/css3-viewport-relative-lengths-vmin.html
+ css3/viewport-relative-lengths/css3-viewport-relative-lengths-vw-absolute.html
+ css3/viewport-relative-lengths/css3-viewport-relative-lengths-vw.html
+
+ * css/CSSComputedStyleDeclaration.cpp: Modified to support viewport relative Length types.
+ (WebCore::getPositionOffsetValue): Ditto.
+ (WebCore::getBorderRadiusCornerValues): Ditto.
+ (WebCore::getBorderRadiusCornerValue): Ditto.
+ (WebCore::getBorderRadiusShorthandValue): Ditto.
+ (WebCore::lineHeightFromStyle): Ditto.
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Ditto.
+ * css/CSSGrammar.y: Added vw/vh/vmin support.
+ * css/CSSParser.cpp: Parsing of relative units and creation of CSSPrimitiveValue.
+ (WebCore::CSSParser::validUnit): Added vw/vh/vmin to the valid units.
+ (WebCore::CSSParser::createPrimitiveNumericValue): Added vw/vh/vmin as valid primitive units.
+ (WebCore::unitFromString):
+ (WebCore::CSSParser::parseValidPrimitive): Creation of CSSPrimitiveValue for vw/vh/vmin.
+ (WebCore::CSSParser::detectNumberToken): Parsing the vw/vh/vmin tokens.
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::isValidCSSUnitTypeForDoubleConversion): Added support for vw/vh/vmin.
+ (WebCore::unitCategory): Ditto.
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::canonicalUnitTypeForCategory): Added support for vw/vh/vmin.
+ (WebCore::CSSPrimitiveValue::customCssText): Ditto.
+ (WebCore::CSSPrimitiveValue::viewportRelativeLength): Function to create the Length structure for the viewport-relative unit types.
+ (WebCore):
+ * css/CSSPrimitiveValue.h:
+ (WebCore::CSSPrimitiveValue::isViewportRelativeLength): Checks whether the primitive value is ViewportRelative Lengths.
+ (CSSPrimitiveValue):
+ * css/CSSPrimitiveValue.idl: Added support for vw/vh/vmin.
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::ApplyPropertyLength::applyValue): Applying relative viewport length units to the specific CSS property.
+ (WebCore::ApplyPropertyBorderRadius::applyValue): Ditto.
+ (WebCore::ApplyPropertyFontSize::applyValue): Ditto.
+ (WebCore::ApplyPropertyLineHeight::applyValue): Ditto.
+ (WebCore::ApplyPropertyVerticalAlign::applyValue): Ditto.
+ * css/CSSStyleSelector.cpp:
+ (WebCore::convertToLength): Added support for viewport relative units.
+ (WebCore::createGridTrackBreadth): Ditto.
+ (WebCore::CSSStyleSelector::mapFillSize): Ditto.
+ (WebCore::CSSStyleSelector::mapFillXPosition): Ditto.
+ (WebCore::CSSStyleSelector::mapFillYPosition): Ditto.
+ * dom/Document.cpp:
+ (WebCore::Document::pageSizeAndMarginsInPixels): Modified to support viewport relative Length types.
+ (WebCore::Document::viewportSize): New function to fetch the current viewport size.
+ (WebCore):
+ * dom/Document.h: Ditto.
+ (Document):
+ * html/HTMLAreaElement.cpp:
+ (WebCore::HTMLAreaElement::getRegion): Modified to support viewport relative Length types.
+ * platform/Length.h: New LengthTypes such as ViewportRelativeWidth, ViewportRelativeHeight and ViewportRelativeMin added.
+ (WebCore::Length::calcValue): Modified to support viewport relative Length types.
+ (WebCore::Length::calcMinValue): Ditto.
+ (WebCore::Length::calcFloatValue): Ditto.
+ (Length):
+ (WebCore::Length::isViewportRelative): To check the Length is of type ViewportRelative.
+ (WebCore::Length::viewportRelativeLength): To get the relative value.
+ * rendering/RenderBR.cpp:
+ (WebCore::RenderBR::lineHeight): Modified to support viewport relative Length types.
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::lineHeight): Ditto.
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::reflectionOffset): Ditto.
+ (WebCore::RenderBox::paintBoxDecorations): Ditto.
+ (WebCore::RenderBox::clipRect): Ditto.
+ (WebCore::RenderBox::computeLogicalWidthInRegion): Ditto.
+ (WebCore::RenderBox::computeLogicalWidthInRegionUsing): Ditto.
+ (WebCore::RenderBox::computeInlineDirectionMargins): Ditto.
+ (WebCore::RenderBox::computeLogicalHeightUsing): Ditto.
+ (WebCore::RenderBox::computePercentageLogicalHeight): Ditto.
+ (WebCore::RenderBox::computeReplacedLogicalHeightUsing): Ditto.
+ (WebCore::RenderBox::computeBlockDirectionMargins): Ditto.
+ (WebCore::RenderBox::computePositionedLogicalWidthUsing): Ditto.
+ (WebCore::RenderBox::computePositionedLogicalHeightUsing): Ditto.
+ (WebCore::RenderBox::computePositionedLogicalWidthReplaced): Ditto.
+ (WebCore::RenderBox::computePositionedLogicalHeightReplaced): Ditto.
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::relativePositionOffsetX): Ditto.
+ (WebCore::RenderBoxModelObject::relativePositionOffsetY): Ditto.
+ (WebCore::RenderBoxModelObject::paddingTop): Ditto.
+ (WebCore::RenderBoxModelObject::paddingBottom): Ditto.
+ (WebCore::RenderBoxModelObject::paddingLeft): Ditto.
+ (WebCore::RenderBoxModelObject::paddingRight): Ditto.
+ (WebCore::RenderBoxModelObject::paddingBefore): Ditto.
+ (WebCore::RenderBoxModelObject::paddingAfter): Ditto.
+ (WebCore::RenderBoxModelObject::paddingStart): Ditto.
+ (WebCore::RenderBoxModelObject::paddingEnd): Ditto.
+ (WebCore::RenderBoxModelObject::getBackgroundRoundedRect): Ditto.
+ (WebCore::RenderBoxModelObject::calculateFillTileSize): Ditto.
+ (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry): Ditto.
+ (WebCore::computeBorderImageSide): Ditto.
+ (WebCore::RenderBoxModelObject::paintNinePieceImage): Ditto.
+ (WebCore::RenderBoxModelObject::paintBorder): Ditto.
+ (WebCore::RenderBoxModelObject::paintBoxShadow): Ditto.
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::preferredMainAxisContentExtentForChild): Ditto.
+ (WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes): Ditto.
+ (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithm): Ditto.
+ * rendering/RenderInline.cpp:
+ (WebCore::computeMargin): Ditto.
+ (WebCore::RenderInline::lineHeight): Ditto.
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::updateOptionsWidth): Ditto.
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::repaintAfterLayoutIfNeeded): Ditto.
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::viewportSize): New function to fetch the current viewport size.
+ (RenderObject):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::paint): Modified to support viewport relative Length types.
+ * rendering/RenderScrollbarPart.cpp:
+ (WebCore::calcScrollbarThicknessUsing): Ditto.
+ (WebCore::RenderScrollbarPart::computeScrollbarWidth): Ditto.
+ (WebCore::RenderScrollbarPart::computeScrollbarHeight): Ditto.
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::computeLogicalWidth): Ditto.
+ (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth): Ditto.
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::logicalHeightForRowSizing): Ditto.
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::calcRowLogicalHeight): Ditto.
+ * rendering/RenderText.h:
+ (WebCore::RenderText::marginLeft): Ditto.
+ (WebCore::RenderText::marginRight): Ditto.
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::paintMenuListButtonGradients): Ditto.
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::paint): Ditto.
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::verticalPositionForBox): Ditto.
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::calcRadiiFor): Ditto.
+ (WebCore::RenderStyle::getRoundedBorderFor): Ditto.
+ * rendering/style/RenderStyle.h: Ditto.
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::resolveLengthAttributeForSVG): Ditto.
+ (WebCore::RenderSVGRoot::computeReplacedLogicalWidth): Ditto.
+ (WebCore::RenderSVGRoot::computeReplacedLogicalHeight): Ditto.
+
+2012-03-02 Pablo Flouret <pablof@motorola.com>
+
+ Editor's default paragraph separator is not reset when a frame's document is changed
+ https://bugs.webkit.org/show_bug.cgi?id=80065
+
+ Reviewed by Ryosuke Niwa.
+
+ Test: editing/execCommand/reset-values-after-navigation.html
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::clear):
+
+2012-03-02 Alexey Proskuryakov <ap@apple.com>
+
+ Have a copy of plug-in sandboxing API header in WebCore
+ https://bugs.webkit.org/show_bug.cgi?id=80185
+ <rdar://problem/8242128>
+
+ Reviewed by Anders Carlsson.
+
+ * plugins/npapi-sandbox.h: Added.
+
+ * WebCore.xcodeproj/project.pbxproj: Added as unused file.
+
+2012-03-02 Emil A Eklund <eae@chromium.org>
+
+ Revert borders to integers for subpixel layout
+ https://bugs.webkit.org/show_bug.cgi?id=80175
+
+ Reviewed by Eric Seidel.
+
+ Change border representation and calculation back to integers to ensure
+ that borders given the same width are rendered with the same actual width.
+
+ This will also avoid unnecessary type conversions when we switch over
+ to subpixel precision.
+
+ No new tests.
+
+ * rendering/LayoutTypes.h:
+ (WebCore::pixelSnappedIntRect):
+ (WebCore):
+ * rendering/RenderBoxModelObject.h:
+ (WebCore::RenderBoxModelObject::borderTop):
+ (WebCore::RenderBoxModelObject::borderBottom):
+ (WebCore::RenderBoxModelObject::borderLeft):
+ (WebCore::RenderBoxModelObject::borderRight):
+ (WebCore::RenderBoxModelObject::borderBefore):
+ (WebCore::RenderBoxModelObject::borderAfter):
+ (WebCore::RenderBoxModelObject::borderStart):
+ (WebCore::RenderBoxModelObject::borderEnd):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
+ (WebCore::RenderTable::calcBorderStart):
+ (WebCore::RenderTable::calcBorderEnd):
+ (WebCore::RenderTable::borderBefore):
+ (WebCore::RenderTable::borderAfter):
+ (WebCore::RenderTable::outerBorderBefore):
+ (WebCore::RenderTable::outerBorderAfter):
+ (WebCore::RenderTable::outerBorderStart):
+ (WebCore::RenderTable::outerBorderEnd):
+ * rendering/RenderTable.h:
+ (WebCore::RenderTable::borderStart):
+ (WebCore::RenderTable::borderEnd):
+ (RenderTable):
+ (WebCore::RenderTable::borderLeft):
+ (WebCore::RenderTable::borderRight):
+ (WebCore::RenderTable::borderTop):
+ (WebCore::RenderTable::borderBottom):
+ (WebCore::RenderTable::outerBorderLeft):
+ (WebCore::RenderTable::outerBorderRight):
+ (WebCore::RenderTable::outerBorderTop):
+ (WebCore::RenderTable::outerBorderBottom):
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::clippedOverflowRectForRepaint):
+ (WebCore::RenderTableCell::borderLeft):
+ (WebCore::RenderTableCell::borderRight):
+ (WebCore::RenderTableCell::borderTop):
+ (WebCore::RenderTableCell::borderBottom):
+ (WebCore::RenderTableCell::borderStart):
+ (WebCore::RenderTableCell::borderEnd):
+ (WebCore::RenderTableCell::borderBefore):
+ (WebCore::RenderTableCell::borderAfter):
+ (WebCore::RenderTableCell::borderHalfLeft):
+ (WebCore::RenderTableCell::borderHalfRight):
+ (WebCore::RenderTableCell::borderHalfTop):
+ (WebCore::RenderTableCell::borderHalfBottom):
+ (WebCore::RenderTableCell::borderHalfStart):
+ (WebCore::RenderTableCell::borderHalfEnd):
+ (WebCore::RenderTableCell::borderHalfBefore):
+ (WebCore::RenderTableCell::borderHalfAfter):
+ (WebCore::RenderTableCell::paintCollapsedBorders):
+ * rendering/RenderTableCell.h:
+ (RenderTableCell):
+
+2012-03-01 Eric Seidel <eric@webkit.org>
+
+ Chrome 18 fails html5test.com XHR Blob response test
+ https://bugs.webkit.org/show_bug.cgi?id=76760
+
+ Reviewed by Adam Barth.
+
+ Most of the code was already there, this just fixes the FIXME
+ which was causing this feature not to work. Chromium already
+ had this #ifdef enabled, but other ports (at least Mac) do not.
+
+ Test: fast/files/xhr-response-blob.html
+
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::didFinishLoading):
+
+2012-03-02 Kentaro Hara <haraken@chromium.org>
+
+ Revert Worker-related APIs from DOMWindowWorker.idl back to DOMWindow.idl
+ https://bugs.webkit.org/show_bug.cgi?id=80151
+
+ Reviewed by Adam Barth.
+
+ Based on the discussion on webkit-dev@
+ (http://markmail.org/message/kagvswmah67zmrry#query:+page:1+mid:h34vzbiu5suub3ld+state:results),
+ this patch reverts Worker-related APIs from DOMWindowWorker.idl back to DOMWindow.idl.
+
+ No tests. No change in behavior.
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * DerivedSources.pri:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * page/DOMWindow.idl:
+ * workers/DOMWindowWorker.idl: Removed.
+
+2012-03-02 Kentaro Hara <haraken@chromium.org>
+
+ Revert HTML-related APIs from DOMWindowHTML.idl back to DOMWindow.idl
+ https://bugs.webkit.org/show_bug.cgi?id=80140
+
+ Reviewed by Adam Barth.
+
+ Based on the discussion on webkit-dev@
+ (http://markmail.org/message/kagvswmah67zmrry#query:+page:1+mid:h34vzbiu5suub3ld+state:results),
+ we should revert HTML-related APIs from DOMWindowHTML.idl back to DOMWindow.idl.
+
+ No tests. No change in behavior.
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * DerivedSources.pri:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/DOMWindowHTML.idl: Removed.
+ * page/DOMWindow.idl:
+
+2012-03-02 Kentaro Hara <haraken@chromium.org>
+
+ Revert XML-related APIs from DOMWindowXML.idl back to DOMWindow.idl
+ https://bugs.webkit.org/show_bug.cgi?id=80148
+
+ Reviewed by Adam Barth.
+
+ Based on the discussion on webkit-dev@
+ (http://markmail.org/message/kagvswmah67zmrry#query:+page:1+mid:h34vzbiu5suub3ld+state:results),
+ this patch reverts XML-related APIs from DOMWindowXML.idl back to DOMWindow.idl.
+
+ No tests. No change in behavior.
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * DerivedSources.pri:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.xcodeproj/project.pbxproj:
+ * page/DOMWindow.idl:
+ * xml/DOMWindowXML.idl: Removed.
+
+2012-03-02 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
+
+ Implement NamedNodeMap::setNamedItem() in terms of Element::setAttributeNode() instead of the other way round
+ https://bugs.webkit.org/show_bug.cgi?id=80188
+
+ Reviewed by Ryosuke Niwa.
+
+ Using setNamedItem() in setAttributeNode() implementation made us do unnecessary
+ checks like whether the element existed or whether the given node was an
+ attribute. So now setAttributeNode() do less work.
+
+ No new tests were added, functionality should be unchanged.
+
+ * dom/Element.cpp:
+ (WebCore::Element::setAttributeNode):
+ (WebCore::Element::setAttributeNodeNS):
+ * dom/Element.h:
+ (Element):
+ (WebCore::Element::attributes): We got rid of ensureUpdatedAttributes(), next in
+ line will be updatedAttributes().
+ * dom/NamedNodeMap.cpp:
+ (WebCore::NamedNodeMap::setNamedItem):
+
+2012-03-02 SravanKumar Sandela <ssandela@innominds.com>
+
+ Layout issue with fieldset legend element
+ https://bugs.webkit.org/show_bug.cgi?id=78684
+
+ Reviewed by Dirk Pranke.
+
+ The clipping logic for legend element was incorrect and now it has been corrected by taking correct offset in to consideration.
+
+ Test: fast/forms/fieldset-legend-padding-unclipped-fieldset-border.html
+
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::paintBoxDecorations):
+
+2012-03-02 Erik Arvidsson <arv@chromium.org>
+
+ [V8] Bindings for node always check if they are a Document.
+ https://bugs.webkit.org/show_bug.cgi?id=79947
+
+ Reviewed by Adam Barth.
+
+ This changes the generated bindings code to only generate the Document code for the Document wrappers.
+
+ No new tests. Covered by existing tests.
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateToV8Converters):
+ * bindings/scripts/test/V8/V8Float64Array.cpp:
+ (WebCore::V8Float64Array::wrapSlow):
+ * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
+ (WebCore::V8TestActiveDOMObject::wrapSlow):
+ * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
+ (WebCore::V8TestCustomNamedGetter::wrapSlow):
+ * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
+ (WebCore::V8TestEventConstructor::wrapSlow):
+ * bindings/scripts/test/V8/V8TestEventTarget.cpp:
+ (WebCore::V8TestEventTarget::wrapSlow):
+ * bindings/scripts/test/V8/V8TestInterface.cpp:
+ (WebCore::V8TestInterface::wrapSlow):
+ * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
+ (WebCore::V8TestMediaQueryListListener::wrapSlow):
+ * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
+ (WebCore::V8TestNamedConstructor::wrapSlow):
+ * bindings/scripts/test/V8/V8TestObj.cpp:
+ (WebCore::V8TestObj::wrapSlow):
+ * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
+ (WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
+
+2012-03-02 Igor Oliveira <igor.o@sisa.samsung.com>
+
+ animation-timing-function falls back to ease when overriding animation-name
+ https://bugs.webkit.org/show_bug.cgi?id=71623
+
+ In this patch the animation name needs to be the first value declared, if
+ a different value is found, we do not check for the animation name again.
+
+ Reviewed by Dean Jackson.
+
+ Test: animations/animation-shorthand-overriding.html
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseAnimationShorthand):
+
+2012-03-02 Martin Robinson <mrobinson@igalia.com>
+
+ [GTK] [AC] Connect WebGL to the TextureMapperGL code
+ https://bugs.webkit.org/show_bug.cgi?id=78968
+
+ Reviewed by Gustavo Noronha Silva.
+
+ No new tests. This is covered by existing accelerated compositing and
+ WebGL tests.
+
+ Rely on the shared version of GL acquisition from GLContext. This reduces
+ a lot of code and now allows us to connect WebGL into the accelerated compositing
+ rendering path.
+
+ * GNUmakefile.list.am: GLContext should be included for all X11 builds now.
+ There are no longer GTK+ specific versions of GraphicsContext3D.
+ * platform/graphics/GraphicsContext3D.h: Add a default argument for
+ resolveMultisamplingIfNecessary. This will resolve the entire texture.
+ * platform/graphics/cairo/GraphicsContext3DCairo.cpp: GraphicsContext3D is
+ now responsible for creating GraphicsContext3DPrivate in the constructor.
+ (WebCore::GraphicsContext3D::platformLayer): Now return m_private.
+ * platform/graphics/cairo/GraphicsContext3DPrivate.cpp: Added.
+ * platform/graphics/cairo/GraphicsContext3DPrivate.h: Renamed from Source/WebCore/platform/graphics/glx/GraphicsContext3DPrivate.h.
+ * platform/graphics/glx/GraphicsContext3DPrivate.cpp: Removed.
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+ (WebCore::GraphicsContext3D::resolveMultisamplingIfNecessary): Properly
+ handle the default argument.
+ * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
+ (WebCore::GraphicsContext3D::prepareTexture): Use the new default argument now.
+ (WebCore::GraphicsContext3D::readRenderingResults): Ditto.
+
+2012-02-18 Martin Robinson <mrobinson@igalia.com>
+
+ [GTK] [AC] Generalize WindowContextGL
+ https://bugs.webkit.org/show_bug.cgi?id=78969
+
+ Reviewed by Gustavo Noronha Silva.
+
+ No new tests. This should not change functionality.
+
+ * GNUmakefile.list.am: Added new files to source list.
+ * platform/graphics/cairo/GLContext.h: Added. An abstraction for all GL contexts.
+ * platform/graphics/glx/GLContextGLX.cpp: Added. This file is composed of very little
+ new code, as the logic for instantiating offscreen GL contexts is copied from
+ GraphicsContext3DPrivate. The code duplication will be removed in a followup patch.
+ (WebCore::GLContext::platformContext):
+ * platform/graphics/gtk/GLContextGtk.cpp: Added. This includes some helper factories
+ for creating and caching GL contexts for GTK+ widgets.
+
+2012-03-02 W. James MacLean <wjmaclean@chromium.org>
+
+ [chromium] Remove TRACE_EVENT from CCQuadCuller::cullOccludedQuads.
+ https://bugs.webkit.org/show_bug.cgi?id=80174
+
+ Reviewed by James Robinson.
+
+ Covered by existing chromium unit tests.
+
+ Firing TRACE_EVENT once per draw quad is overwhelming.
+
+ * platform/graphics/chromium/cc/CCQuadCuller.cpp:
+ (WebCore::CCQuadCuller::cullOccludedQuads):
+
+2012-03-02 Erik Arvidsson <arv@chromium.org>
+
+ [V8] Make inline event attributes use evt for SVG and event otherwise
+ https://bugs.webkit.org/show_bug.cgi?id=80167
+
+ Reviewed by Ojan Vafai.
+
+ Test: fast/dom/inline-event-attributes-event-param-name.html
+
+ * bindings/v8/V8LazyEventListener.cpp:
+ (WebCore::V8LazyEventListener::prepareListenerObject):
+
+2012-03-02 Gavin Peters <gavinp@chromium.org>
+
+ Sync PageCache debugging with PageCache behaviour
+ https://bugs.webkit.org/show_bug.cgi?id=79943
+
+ Sync up the debug printing code in PageCache with the actual logic,
+ and clean up the debug printing at the same time.
+
+ Reviewed by Brady Eidson.
+
+ No new tests, as this is a refactor of debug only code.
+
+ * history/PageCache.cpp:
+ (WebCore):
+ (WebCore::logCanCacheFrameDecision):
+ (WebCore::logCanCachePageDecision):
+
+2012-03-02 Maciej Stachowiak <mjs@apple.com>
+
+ REGRESSION(r97353): Crash when accessing location or history properties inside a navigated window
+ https://bugs.webkit.org/show_bug.cgi?id=80133
+ <rdar://problem/10432233>
+
+ Reviewed by Antti Koivisto.
+
+ Test: fast/dom/Window/navigated-window-properties.html
+
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore): Remove custom getters for window.location and window.history; they
+ were unnecessary and did the wrong thing when DOMWindow returned null values
+ for these.
+ * page/DOMWindow.idl: ditto
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::reportException): Remove assert about null values and update comment,
+ since this is now an expected state for navigated inner windows.
+
+2012-03-02 Ryosuke Niwa <rniwa@webkit.org>
+
+ REGRESSION(r74971): Can't select a line of RTL text on Facebook
+ https://bugs.webkit.org/show_bug.cgi?id=59435
+
+ Reviewed by Eric Seidel.
+
+ The bug was caused by inline text boxes created by BRs being placed at the end of the line
+ according to the block's direction regardless of its unicode bidi-level. e.g. if we have
+ <div dir="rtl"><span dir="ltr">hello<br>world</span></div>
+ the inline box generated by the br has the bidi-level of 2 like the rest of text in the span.
+ This inline text box gives an illusion of having text on the left of "hello" to hit testing
+ and editing code and causes all sorts of problems.
+
+ Fixed the bug by replacing calls to nextLeafChild and prevLeafChild by newly introduced
+ nextLeafChildIgnoringLineBreak and prevLeafChildIgnoringLineBreak. These two functions will
+ return 0 when they hit the end of a line or inline text box that's a line break. In effect,
+ hit testing and editing code can ignore inline boxes generated by br's.
+
+ In the long term, we should move these two functions into RenderedPosition along with the rest
+ of code that converts a Position and an inline box, offset pair.
+
+ Test: editing/selection/select-line-break-with-opposite-directionality.html
+
+ * dom/Position.cpp:
+ (WebCore::Position::getInlineBoxAndOffset):
+ * editing/RenderedPosition.cpp:
+ (WebCore::RenderedPosition::prevLeafChild):
+ (WebCore::RenderedPosition::nextLeafChild):
+ * rendering/InlineBox.cpp:
+ (WebCore::InlineBox::nextLeafChildIgnoringLineBreak):
+ (WebCore::InlineBox::prevLeafChildIgnoringLineBreak):
+ * rendering/InlineBox.h:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::positionForPointWithInlineChildren):
+ * rendering/RenderText.cpp:
+ (WebCore::lineDirectionPointFitsInBox): If we're on the left of a RTL line, we should stay at
+ upstream position since we're at the end of a line.
+ (WebCore::createVisiblePositionAfterAdjustingOffsetForBiDi): Merge the two special cases into
+ the general loop as the comment suggests. Skip an inline text box for a line break at the left
+ edge when there are more line boxes on the line.
+ (WebCore::RenderText::positionForPoint):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::closestLeafChildForLogicalLeftPosition): Ignore line boxes created for
+ line boxes when there are other boxes on the line.
+
+2012-03-02 Adam Treat <atreat@rim.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=80161
+ PR: 141157
+
+ BlackBerryPlatformScreen.h API has been updated. Reflect those
+ changes in our usage.
+
+ Reviewed by Antonio Gomes.
+ Internally reviewed by Jakob Petsovits
+
+ * platform/blackberry/PlatformScreenBlackBerry.cpp:
+ (WebCore::screenAvailableRect):
+ (WebCore::screenRect):
+
+2012-03-02 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Move the 'overflow' event dispatching logic out of RenderLayer
+ https://bugs.webkit.org/show_bug.cgi?id=80090
+
+ Unreviewed build fix.
+
+ * rendering/RenderBlock.cpp:
+ (OverflowEventDispatcher): Removed the unused function.
+
+2012-03-02 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Move the 'overflow' event dispatching logic out of RenderLayer
+ https://bugs.webkit.org/show_bug.cgi?id=80090
+
+ Reviewed by Simon Fraser.
+
+ Test: fast/events/overflow-events-writing-mode.html
+
+ This moves the 'overflow' event dispatch from RenderLayer to an helper class
+ OverflowEventDispatcher. For now, the class lives in RenderBlock as it matches
+ the existing code but it may be moved later to its own class as FrameView could
+ benefit from it too or if we need to support 'overflow' events on RenderBoxes.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore):
+ (OverflowEventDispatcher):
+ (WebCore::OverflowEventDispatcher::OverflowEventDispatcher):
+ (WebCore::OverflowEventDispatcher::~OverflowEventDispatcher):
+ (WebCore::OverflowEventDispatcher::computeOverflowStatus):
+ RAII dispatcher class that stores the information before layout and compare
+ them after to dispatch the right information.
+
+ (WebCore::RenderBlock::layout): Added an instance of OverflowEventDispatcher.
+
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::hasHorizontalLayoutOverflow):
+ (WebCore::RenderBox::hasVerticalLayoutOverflow):
+ Helper method to know if we have an horizontal / vertical layout overflow.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::RenderLayer):
+ (WebCore::RenderLayer::updateScrollInfoAfterLayout):
+ * rendering/RenderLayer.h:
+ Removed the scroll tracking logic as we don't need it anymore. This removes
+ 3 booleans from RenderLayer.
+
+2012-03-02 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
+
+ Create a method in Element to compare attributes with other Element
+ https://bugs.webkit.org/show_bug.cgi?id=80169
+
+ Reviewed by Ryosuke Niwa.
+
+ Avoid manually peeking at attribute storage to get this information. This
+ simplify the callsites. The actual implementation of comparison was moved to
+ ElementAttributeData. The mapsEquivalent() function still exists for the sake
+ of DocumentType nodes.
+
+ * dom/Element.cpp:
+ (WebCore::Element::hasEquivalentAttributes):
+ (WebCore):
+ * dom/Element.h:
+ (Element):
+ * dom/ElementAttributeData.cpp:
+ (WebCore::ElementAttributeData::isEquivalent):
+ (WebCore):
+ * dom/ElementAttributeData.h:
+ (ElementAttributeData):
+ * dom/NamedNodeMap.cpp:
+ (WebCore::NamedNodeMap::mapsEquivalent):
+ * dom/Node.cpp:
+ (WebCore::Node::isEqualNode):
+ * editing/htmlediting.cpp:
+ (WebCore::areIdenticalElements): Use Element::hasTagName() instead of matching
+ directly to make code a bit clearer.
+
+2012-03-02 Zan Dobersek <zandobersek@gmail.com>
+
+ [GTK] Smooth scrolling support
+ https://bugs.webkit.org/show_bug.cgi?id=16123
+
+ Reviewed by Martin Robinson.
+
+ No new tests - no new functionality.
+
+ Add the ScrollAnimatorNone class to compilation and enable
+ the smooth scrolling feature by default at compilation time.
+
+ * GNUmakefile.am:
+ * GNUmakefile.list.am:
+
+2012-03-02 Philippe Normand <pnormand@igalia.com>
+
+ [GStreamer] media/media-can-play-flac-audio.html fails
+ https://bugs.webkit.org/show_bug.cgi?id=80124
+
+ Reviewed by Martin Robinson.
+
+ Handle audio/x-flac in the mimeTypeCache() function so that we
+ advertize both audio/flac and audio/x-flac.
+
+ No new tests, this is covered already by media/media-can-play-flac-audio.html.
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+
+2012-03-02 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: fix fronted compilation.
+ https://bugs.webkit.org/show_bug.cgi?id=80154
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel.prototype.scriptForSourceID):
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyLocation):
+ * inspector/front-end/ScriptsSearchScope.js:
+ (WebInspector.ScriptsSearchResultsPane.prototype.createAnchor):
+
+2012-03-02 Kaustubh Atrawalkar <kaustubh@motorola.com>
+
+ Rename DOMURL to URL in the bindings
+ https://bugs.webkit.org/show_bug.cgi?id=78214
+
+ Reviewed by Kentaro Hara.
+
+ No new tests. Interface name change.
+
+ * html/DOMURL.idl: Added InterfaceName attribute to DOMURL.
+
+2012-03-02 Roland Steiner <rolandsteiner@chromium.org>
+
+ Add :scope pseudo-class
+ https://bugs.webkit.org/show_bug.cgi?id=79077
+
+ Add :scope pseudo class name & pseudoId
+ Add selector check for the new pseudo-class
+
+ Reviewed by Antti Koivisto.
+
+ Test: fast/css/style-scoped/scope-pseudo.html
+
+ * css/CSSSelector.cpp:
+ (WebCore::CSSSelector::pseudoId):
+ (WebCore::nameToPseudoTypeMap):
+ (WebCore::CSSSelector::extractPseudoType):
+ * css/CSSSelector.h:
+ * css/SelectorChecker.cpp:
+ (WebCore::SelectorChecker::checkOneSelector):
+
+2012-03-01 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
+
+ Make parser code not depend on NamedNodeMap
+ https://bugs.webkit.org/show_bug.cgi?id=79963
+
+ Reviewed by Adam Barth.
+
+ Instead of creating Element-less NamedNodeMaps, the parsing code now creates
+ AttributeVectors, that are used to fill Element via the parserSetAttributes()
+ method. This allows us to remove even more methods from the NamedNodeMap.
+
+ The AttributeVector class contains convenience methods that take the attribute's
+ QualifiedName as parameter. This class is also used inside ElementAttributeData.
+
+ * dom/Attr.h:
+ (Attr):
+ * dom/Element.cpp:
+ (WebCore::Element::getAttribute):
+ (WebCore::Element::parserSetAttributes): Now we have to create the attribute
+ storage, and fill it (by Vector::swap()) with the passed attributes. Also use an
+ early return to reduce indentation.
+ (WebCore::Element::insertedIntoDocument):
+ (WebCore::Element::removedFromDocument):
+ (WebCore::Element::getURLAttribute):
+ (WebCore::Element::getNonEmptyURLAttribute):
+ * dom/Element.h:
+ (Element):
+ (WebCore::Element::fastHasAttribute):
+ (WebCore::Element::fastGetAttribute):
+ (WebCore::Element::hasAttributesWithoutUpdate):
+ (WebCore::Element::attributeItem):
+ (WebCore::Element::getAttributeItem):
+ * dom/ElementAttributeData.cpp:
+ (WebCore::AttributeVector::removeAttribute):
+ (WebCore):
+ * dom/ElementAttributeData.h:
+ (AttributeVector):
+ (WebCore::AttributeVector::create):
+ (WebCore::AttributeVector::attributeItem):
+ (WebCore::AttributeVector::AttributeVector):
+ (WebCore):
+ (WebCore::AttributeVector::getAttributeItem):
+ (WebCore::AttributeVector::getAttributeItemIndex):
+ (WebCore::AttributeVector::insertAttribute): Boolean parameter isn't necessary
+ since all the callers used 'false', indicating that duplicates were not allowed.
+ (WebCore::ElementAttributeData::attributeItem):
+ (WebCore::ElementAttributeData::getAttributeItem):
+ (WebCore::ElementAttributeData::getAttributeItemIndex):
+ (ElementAttributeData):
+ * dom/NamedNodeMap.cpp:
+ (WebCore::NamedNodeMap::getNamedItem):
+ (WebCore::NamedNodeMap::setNamedItem):
+ (WebCore::NamedNodeMap::removeNamedItem):
+ (WebCore::NamedNodeMap::mapsEquivalent):
+ * dom/NamedNodeMap.h:
+ * html/parser/HTMLConstructionSite.cpp:
+ (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
+ (WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement):
+ (WebCore::HTMLConstructionSite::insertScriptElement):
+ (WebCore::HTMLConstructionSite::createElement):
+ (WebCore::HTMLConstructionSite::createHTMLElement):
+ (WebCore):
+ * html/parser/HTMLToken.h:
+ (WebCore::AtomicHTMLToken::AtomicHTMLToken):
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processFakeStartTag):
+ (WebCore::HTMLTreeBuilder::attributesForIsindexInput):
+ (WebCore):
+ * html/parser/HTMLTreeBuilder.h:
+ * html/parser/TextDocumentParser.cpp:
+ (WebCore::TextDocumentParser::insertFakePreElement):
+ * xml/parser/MarkupTokenBase.h:
+ (WebCore::AtomicMarkupTokenBase::AtomicMarkupTokenBase):
+ (WebCore::AtomicMarkupTokenBase::attributes):
+ (WebCore::AtomicMarkupTokenBase::takeAttributes):
+ (AtomicMarkupTokenBase):
+ (WebCore::::initializeAttributes):
+ * xml/parser/XMLToken.h:
+ (WebCore::AtomicXMLToken::AtomicXMLToken):
+ * xml/parser/XMLTreeBuilder.cpp:
+ (WebCore::XMLTreeBuilder::processNamespaces):
+ (WebCore::XMLTreeBuilder::processAttributes):
+
+2012-03-02 Yury Semikhatsky <yurys@chromium.org>
+
+ Web Inspector: assertion failure in JSMainThreadExecState::instrumentedCall
+ https://bugs.webkit.org/show_bug.cgi?id=80152
+
+ Extracted common code of JS call instrumentation into instrumentFunctionCall method
+ and call it directly where the instrumentation is needed instead of calling
+ JSMainThreadExecState::instrumentedCall which works on the main thread only.
+
+ Reviewed by Pavel Feldman.
+
+ * bindings/js/JSCallbackData.cpp:
+ (WebCore::JSCallbackData::invokeCallback):
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSEventListener::handleEvent):
+ * bindings/js/JSMainThreadExecState.h:
+ (WebCore::JSMainThreadExecState::instrumentFunctionCall):
+
+2012-03-02 Yoshifumi Inoue <yosin@chromium.org>
+
+ [Forms] Make order of attribute/method in HTMLTextAreaElement.idl as same as specification
+ https://bugs.webkit.org/show_bug.cgi?id=80101
+
+ Reviewed by Kent Tamura.
+
+ No new tests. No behavior changes.
+
+ * html/HTMLTextAreaElement.idl: Reorder attribute/method position.
+
+2012-03-02 Patrick Gansterer <paroga@webkit.org>
+
+ Build fix after r109538.
+
+ * CMakeLists.txt:
+ * Modules/websockets/WebSocketDeflater.cpp:
+
+2012-03-02 Roland Steiner <rolandsteiner@chromium.org>
+
+ Scoped stylesheets don't appear to work in Shadow DOM
+ https://bugs.webkit.org/show_bug.cgi?id=79549
+
+ Make the scope stack in CSSStyleSelector use ContainerNode* instead of Element*.
+ Adapt using sites accordingly.
+ Push the ShadowRoot to the scope stack in the same way that elements are pushed.
+ Fix an issue with removedFromDocument() on destruction.
+
+ Reviewed by Antti Koivisto.
+
+ Test: fast/css/style-scoped/style-scoped-in-shadow.html
+
+ * css/CSSStyleSelector.cpp:
+ (RuleSet):
+ (WebCore::CSSStyleSelector::CSSStyleSelector):
+ (WebCore::CSSStyleSelector::determineScope):
+ (WebCore::CSSStyleSelector::ruleSetForScope):
+ (WebCore::CSSStyleSelector::appendAuthorStylesheets):
+ (WebCore::CSSStyleSelector::setupScopeStack):
+ (WebCore::CSSStyleSelector::pushScope):
+ (WebCore):
+ (WebCore::CSSStyleSelector::popScope):
+ (WebCore::CSSStyleSelector::pushParentElement):
+ (WebCore::CSSStyleSelector::popParentElement):
+ (WebCore::CSSStyleSelector::pushParentShadowRoot):
+ (WebCore::CSSStyleSelector::popParentShadowRoot):
+ (WebCore::CSSStyleSelector::matchScopedAuthorRules):
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+ * css/CSSStyleSelector.h:
+ (CSSStyleSelector):
+ (WebCore::CSSStyleSelector::pushScope):
+ (WebCore::CSSStyleSelector::popScope):
+ (WebCore::CSSStyleSelector::MatchOptions::MatchOptions):
+ (MatchOptions):
+ (WebCore::CSSStyleSelector::scopeStackIsConsistent):
+ (WebCore::CSSStyleSelector::ScopeStackFrame::ScopeStackFrame):
+ (ScopeStackFrame):
+ * css/SelectorChecker.h:
+ (SelectorCheckingContext):
+ * dom/Element.cpp:
+ (WebCore::StyleSelectorParentPusher::push):
+ (WebCore::StyleSelectorParentPusher::~StyleSelectorParentPusher):
+ (WebCore::Element::beginParsingChildren):
+ (WebCore::Element::finishParsingChildren):
+ * dom/ShadowRoot.cpp:
+ (WebCore::ShadowRoot::attach):
+ (WebCore):
+ * dom/ShadowRoot.h:
+ (ShadowRoot):
+ * dom/ShadowTree.cpp:
+ (WebCore::ShadowTree::recalcShadowTreeStyle):
+ * html/HTMLStyleElement.cpp:
+ (WebCore::HTMLStyleElement::removedFromDocument):
+
+2012-03-02 Yoshifumi Inoue <yosin@chromium.org>
+
+ [Forms] Make order of attribute/method in HTMLSelectElement.idl as same as specification
+ https://bugs.webkit.org/show_bug.cgi?id=80097
+
+ Reviewed by Kent Tamura.
+
+ No new tests. No behavior changes.
+
+ * html/HTMLSelectElement.idl: Reorder attribute/method position.
+
+2012-03-02 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: limit RawSourceCode usages to DebuggerPresentationModel.
+ https://bugs.webkit.org/show_bug.cgi?id=80146
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.prototype.uiLocationToRawLocation):
+ (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyLocation):
+ (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyRawLocation):
+ * inspector/front-end/ObjectPopoverHelper.js:
+ (WebInspector.ObjectPopoverHelper.prototype._showObjectPopover.showObjectPopover.):
+ (WebInspector.ObjectPopoverHelper.prototype._showObjectPopover):
+ * inspector/front-end/ScriptsSearchScope.js:
+ (WebInspector.ScriptsSearchResultsPane.prototype.createAnchor):
+
+2012-03-02 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: update execution line using LiveLocation.
+ https://bugs.webkit.org/show_bug.cgi?id=80143
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.prototype._uiSourceCodeListChanged):
+ (WebInspector.DebuggerPresentationModel.prototype._debuggerResumed):
+ (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame.updateExecutionLine):
+ (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
+
+2012-03-02 Leo Yang <leo.yang@torchmobile.com.cn>
+
+ [BlackBerry] Build fix for LocalizedStringsBlackBerry.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=80099
+
+ Unreviewed build fix.
+
+ * platform/blackberry/LocalizedStringsBlackBerry.cpp:
+
+2012-03-02 Allan Sandfeld Jensen <allan.jensen@nokia.com>
+
+ Fix build on AppleWebKit after 109548.
+
+ * WebCore.exp.in:
+
+2012-03-02 Yoshifumi Inoue <yosin@chromium.org>
+
+ [Forms] Make order of attribute/method in HTMLOptionElement.idl as same as specification
+ https://bugs.webkit.org/show_bug.cgi?id=80095
+
+ Reviewed by Kentaro Hara.
+
+ No new tests. No behavior changes.
+
+ * html/HTMLOptionElement.idl: Reorder attribute/method position.
+
+2012-03-02 Adam Barth <abarth@webkit.org>
+
+ WorkerContext shouldn't know about IndexedDB
+ https://bugs.webkit.org/show_bug.cgi?id=80094
+
+ Reviewed by Kentaro Hara.
+
+ There are still a couple IndexedDB stragglers we should clean up in
+ WebCore proper. This patch moves some IndexedDB logic from
+ WorkerContext into the indexeddb module.
+
+ In the process of writing this patch, I noticed that some IndexedDB
+ files were missing from various build systems, so I added them. I
+ suspect that means IndexedDB is only enabled by default on Chromium.
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * DerivedSources.pri:
+ * GNUmakefile.list.am:
+ * Modules/indexeddb/WorkerContextIndexedDatabase.cpp: Added.
+ (WebCore):
+ (WebCore::WorkerContextIndexedDatabase::WorkerContextIndexedDatabase):
+ (WebCore::WorkerContextIndexedDatabase::~WorkerContextIndexedDatabase):
+ (WebCore::WorkerContextIndexedDatabase::from):
+ (WebCore::WorkerContextIndexedDatabase::webkitIndexedDB):
+ * Modules/indexeddb/WorkerContextIndexedDatabase.h: Added.
+ (WebCore):
+ (WorkerContextIndexedDatabase):
+ * Modules/indexeddb/WorkerContextIndexedDatabase.idl: Added.
+ * Target.pri:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * workers/WorkerContext.cpp:
+ (WebCore):
+ * workers/WorkerContext.h:
+ (WebCore):
+ (WorkerContext):
+ * workers/WorkerContext.idl:
+
+2012-03-02 Simon Hausmann <simon.hausmann@nokia.com>
+
+ [Qt] Compile WebCore without QtWidgets
+ https://bugs.webkit.org/show_bug.cgi?id=80141
+
+ Reviewed by Tor Arne Vestbø.
+
+ * Target.pri: Don't add widgets to QT.
+ * WebCore.pri: Use QT += opengl only with Qt 4, because it has an implicit QtWidgets
+ dependency. With Qt 5 all necessary OpenGL API is part of QtGui (with a QOpenGL* prefix).
+
+2012-03-02 Yoshifumi Inoue <yosin@chromium.org>
+
+ [Forms] Make order of attribute/method in HTMLFormElement.idl as same as specification
+ https://bugs.webkit.org/show_bug.cgi?id=80093
+
+ Reviewed by Kentaro Hara.
+
+ No new tests. No behavior changes
+
+ * html/HTMLFormElement.idl: Reorder attribute/method position.
+
+2012-03-02 Yoshifumi Inoue <yosin@chromium.org>
+
+ [Forms] Make order of attribute/method in HTMLButtonElement.idl as same as specification
+ https://bugs.webkit.org/show_bug.cgi?id=80091
+
+ Reviewed by Kentaro Hara.
+
+ No new tests. No behavior changes.
+
+ * html/HTMLButtonElement.idl: Reorder attribute/method position.
+
+2012-03-02 Allan Sandfeld Jensen <allan.jensen@nokia.com>
+
+ Suspend/Resume API for pausing timers and animations.
+ https://bugs.webkit.org/show_bug.cgi?id=76063
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ * dom/ActiveDOMObject.h:
+ New ReasonForSuspension: PageWillBePaused.
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::suspend): Handle new ReasonForSuspension.
+ * page/Frame.cpp:
+ (WebCore::Frame::Frame):
+ (WebCore::Frame::setDocument):
+ (WebCore::Frame::suspendActiveDOMObjectsAndAnimations):
+ (WebCore::Frame::resumeActiveDOMObjectsAndAnimations):
+ * page/Frame.h:
+ (WebCore::Frame::activeDOMObjectsAndAnimationsSuspended):
+ Frame now maintains a state of suspending animation and ActiveDOMObjects,
+ which is inherited to all child-frames.
+ * page/Page.cpp:
+ (WebCore::Page::suspendActiveDOMObjectsAndAnimations):
+ (WebCore::Page::resumeActiveDOMObjectsAndAnimations):
+ * page/Page.h:
+ Functions for suspending and resuming active DOM objects and animations in all frames.
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::willRenderImage):
+ WillRenderImage now checks for suspension. This causes animated images to pause
+ together with all other types of animations.
+
+2012-03-02 Yoshifumi Inoue <yosin@chromium.org>
+
+ [Forms] Make order of attribute/method in HTMLFieldSetElement.idl as same as specification
+ https://bugs.webkit.org/show_bug.cgi?id=80092
+
+ Reviewed by Kentaro Hara.
+
+ No new tests. No behavior changes.
+
+ * html/HTMLFieldSetElement.idl: Reorder attribute/method position.
+
+2012-03-02 Antti Koivisto <antti@apple.com>
+
+ possible regression: r104060 maybe causing crashes
+ https://bugs.webkit.org/show_bug.cgi?id=75676
+
+ Rubber-stamped by Simon Hausmann.
+
+ Remove the speculative fix (the problem was elsewhere, http://trac.webkit.org/changeset/104845).
+
+ Also remove the debugging code added for this bug.
+
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::clearStyleSelector):
+ (WebCore::Document::updateActiveStylesheets):
+ * dom/Document.h:
+ (Document):
+
+2012-03-01 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: Implement suggestions in Watch Expressions
+ https://bugs.webkit.org/show_bug.cgi?id=79912
+
+ Drive-by: make subproperties in ObjectPropertySections editable
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView):
+ (WebInspector.ConsoleView.prototype.completionsForTextPrompt):
+ * inspector/front-end/DatabaseQueryView.js:
+ * inspector/front-end/ObjectPropertiesSection.js:
+ (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate.callback):
+ (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
+ (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick):
+ (WebInspector.ObjectPropertyTreeElement.prototype.renderPromptAsBlock):
+ (WebInspector.ObjectPropertyTreeElement.prototype.elementAndValueToEdit):
+ (WebInspector.ObjectPropertyTreeElement.prototype.startEditing.blurListener):
+ (WebInspector.ObjectPropertyTreeElement.prototype.startEditing):
+ (WebInspector.ObjectPropertyTreeElement.prototype.editingEnded):
+ (WebInspector.ObjectPropertyTreeElement.prototype.editingCancelled):
+ (WebInspector.ObjectPropertyTreeElement.prototype.editingCommitted):
+ (WebInspector.ObjectPropertyTreeElement.prototype._promptKeyDown):
+ (WebInspector.ObjectPropertyPrompt):
+ * inspector/front-end/StylesSidebarPane.js:
+ * inspector/front-end/TextPrompt.js:
+ (WebInspector.TextPrompt.prototype.complete):
+ * inspector/front-end/WatchExpressionsSidebarPane.js:
+ (WebInspector.WatchExpressionTreeElement.prototype.renderPromptAsBlock):
+ (WebInspector.WatchExpressionTreeElement.prototype.elementAndValueToEdit):
+ (WebInspector.WatchExpressionTreeElement.prototype.editingCancelled):
+ * inspector/front-end/inspector.css:
+ (.watch-expressions > li.editing-sub-part .text-prompt):
+
+2012-03-02 Antti Koivisto <antti@apple.com>
+
+ REGRESSION (r104060): Page contents not painted if inserting a new stylesheet and temporary body node
+ https://bugs.webkit.org/show_bug.cgi?id=76590
+
+ Reviewed by Maciej Stachowiak.
+
+ Test: fast/css/pending-stylesheet-repaint.html
+
+ If there has been a style recalc with a pending stylesheet, the forced repaint will need to be triggered even
+ if the stylesheet doesn't affect the rendering. Otherwise we may end up never painting at all.
+
+ * dom/Document.cpp:
+ (WebCore::Document::styleSelectorChanged):
+
+2012-03-02 Simon Hausmann <simon.hausmann@nokia.com>
+
+ [Qt] Move QStyle theming code out of WebCore into WebKit1
+ https://bugs.webkit.org/show_bug.cgi?id=80128
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Moved QStyle dependant code into WebKit1, where it's okay to depend on
+ QtWidgets/QStyle. Added factory hooks into RenderThemeQt to allow changing
+ the default "mobile" style to QStyle on start-up.
+
+ * Target.pri:
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore):
+ (WebCore::RenderThemeQt::setCustomTheme):
+ (WebCore::RenderThemeQt::customScrollbarTheme):
+ (WebCore::createTheme):
+ (WebCore::RenderTheme::themeForPage):
+ (WebCore::RenderThemeQt::extraDefaultStyleSheet):
+ * platform/qt/RenderThemeQt.h:
+ (WebCore):
+ (RenderThemeQt):
+ * platform/qt/RenderThemeQtMobile.cpp:
+ * platform/qt/ScrollbarThemeQt.cpp:
+ (WebCore::ScrollbarTheme::nativeTheme):
+
+2012-03-02 Luke Macpherson <macpherson@chromium.org>
+
+ Handle CSSPropertyWebkitColumnRuleStyle in CSSStyleApplyProperty.
+ https://bugs.webkit.org/show_bug.cgi?id=80085
+
+ Reviewed by Eric Seidel.
+
+ No new tests / refactoring only.
+
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+
+2012-03-02 Yury Semikhatsky <yurys@chromium.org>
+
+ Web Inspector: enable Timeline panel for workers
+ https://bugs.webkit.org/show_bug.cgi?id=80130
+
+ Enabled Timeline panel for worker inspector. Refactored
+ JS function calls instrumentation to work for both
+ worker contexts and documents.
+
+ Reviewed by Pavel Feldman.
+
+ * bindings/js/JSCallbackData.cpp:
+ (WebCore::JSCallbackData::invokeCallback):
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSEventListener::handleEvent):
+ * bindings/js/JSMainThreadExecState.h:
+ (WebCore):
+ (WebCore::JSMainThreadExecState::instrumentedCall):
+ * bindings/js/ScriptState.cpp:
+ (WebCore::scriptExecutionContextFromScriptState):
+ (WebCore):
+ * bindings/js/ScriptState.h:
+ (WebCore):
+ * bindings/v8/ScriptState.cpp:
+ (WebCore::ScriptState::scriptExecutionContext):
+ (WebCore):
+ (WebCore::scriptExecutionContextFromScriptState):
+ * bindings/v8/ScriptState.h:
+ (WebCore):
+ (ScriptState):
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::instrumentedCallFunction):
+ * bindings/v8/V8WorkerContextEventListener.cpp:
+ (WebCore::V8WorkerContextEventListener::callListenerFunction):
+ * inspector/InjectedScript.cpp:
+ (WebCore::InjectedScript::callFunctionWithEvalEnabled):
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore):
+ (WebCore::InspectorInstrumentation::instrumentingAgentsForNonDocumentContext):
+ * inspector/InspectorInstrumentation.h:
+ (InspectorInstrumentation):
+ (WebCore::InspectorInstrumentation::willCallFunction):
+ (WebCore):
+ (WebCore::InspectorInstrumentation::instrumentingAgentsForContext):
+ * inspector/WorkerInspectorController.cpp:
+ (WebCore::WorkerInspectorController::WorkerInspectorController):
+ (WebCore::WorkerInspectorController::connectFrontend):
+ (WebCore::WorkerInspectorController::disconnectFrontend):
+ (WebCore::WorkerInspectorController::restoreInspectorStateFromCookie):
+ * inspector/WorkerInspectorController.h:
+ (WebCore):
+ (WorkerInspectorController):
+ * inspector/front-end/inspector.js:
+ (WebInspector._createPanels):
+
+2012-03-02 Kenichi Ishibashi <bashi@chromium.org>
+
+ Adding WebSocket per-frame DEFLATE extension
+ https://bugs.webkit.org/show_bug.cgi?id=77522
+
+ Add WebSocketDeflateFramer class which handles deflate-frame extension.
+ This class encapsulates WebSocketDeflater and WebSocketInflater classes,
+ which depend on zlib, so that WebSocketChannel is not necessary to aware
+ zlib dependency.
+
+ Reviewed by Kent Tamura.
+
+ Tests: http/tests/websocket/tests/hybi/compressed-control-frame.html
+ http/tests/websocket/tests/hybi/deflate-frame-comp-bit-onoff.html
+ http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter.html
+ http/tests/websocket/tests/hybi/deflate-frame-parameter.html
+
+ * CMakeLists.txt: Added WebSocketDeflateFramer.(cpp|h)
+ * GNUmakefile.list.am: Ditto.
+ * Target.pri: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.gyp/WebCore.gyp: Added zlib dependency.
+ * WebCore.vcproj/WebCore.vcproj: Added WebSocketDeflateFramer.(cpp|h)
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * websockets/WebSocket.cpp:
+ (WebCore::WebSocket::didConnect): Set m_extensions.
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::connect): Add deflate-frame extension processor to WebSocketHanshake if deflate can use.
+ (WebCore::WebSocketChannel::fail): Call m_deflateFramer.didFail().
+ (WebCore::WebSocketChannel::processFrame): Decompress frames if needed.
+ (WebCore::WebSocketChannel::sendFrame): Compress frames if possible.
+ * websockets/WebSocketChannel.h:
+ * websockets/WebSocketDeflateFramer.cpp: Added.
+ (WebCore):
+ (WebSocketExtensionDeflateFrame):
+ (WebCore::WebSocketExtensionDeflateFrame::create):
+ (WebCore::WebSocketExtensionDeflateFrame::~WebSocketExtensionDeflateFrame):
+ (WebCore::WebSocketExtensionDeflateFrame::WebSocketExtensionDeflateFrame):
+ (WebCore::WebSocketExtensionDeflateFrame::handshakeString):
+ (WebCore::WebSocketExtensionDeflateFrame::processResponse):
+ (WebCore::DeflateResultHolder::DeflateResultHolder):
+ (WebCore::DeflateResultHolder::~DeflateResultHolder):
+ (WebCore::DeflateResultHolder::fail):
+ (WebCore::InflateResultHolder::InflateResultHolder):
+ (WebCore::InflateResultHolder::~InflateResultHolder):
+ (WebCore::InflateResultHolder::fail):
+ (WebCore::WebSocketDeflateFramer::WebSocketDeflateFramer):
+ (WebCore::WebSocketDeflateFramer::createExtensionProcessor):
+ (WebCore::WebSocketDeflateFramer::canDeflate):
+ (WebCore::WebSocketDeflateFramer::enableDeflate):
+ (WebCore::WebSocketDeflateFramer::deflate):
+ (WebCore::WebSocketDeflateFramer::resetDeflateContext):
+ (WebCore::WebSocketDeflateFramer::inflate):
+ (WebCore::WebSocketDeflateFramer::resetInflateContext):
+ (WebCore::WebSocketDeflateFramer::didFail):
+ * websockets/WebSocketDeflateFramer.h: Added.
+ (WebCore):
+ (DeflateResultHolder):
+ (WebCore::DeflateResultHolder::succeeded):
+ (WebCore::DeflateResultHolder::failureReason):
+ (InflateResultHolder):
+ (WebCore::InflateResultHolder::succeeded):
+ (WebCore::InflateResultHolder::failureReason):
+ (WebSocketDeflateFramer):
+ (WebCore::WebSocketDeflateFramer::enabled):
+
+2012-03-01 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: [InspectorIndexedDB] Show meaningful description for object store items values.
+ https://bugs.webkit.org/show_bug.cgi?id=79691
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/IndexedDBModel.js:
+ (WebInspector.IndexedDBModel.idbKeyFromKey):
+ * inspector/front-end/IndexedDBViews.js:
+ (WebInspector.IDBDataView.prototype._updateData.callback):
+ (WebInspector.IDBDataView.prototype._updateData):
+ (WebInspector.IDBDataGridNode.prototype.createCell):
+ (WebInspector.IDBDataGridNode.prototype._formatValue):
+ * inspector/front-end/ObjectPropertiesSection.js:
+ (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate.callback):
+ (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
+ * inspector/front-end/RemoteObject.js:
+ (WebInspector.LocalJSONObject.prototype.get subtype):
+ * inspector/front-end/indexedDBViews.css:
+ (.indexed-db-data-view .data-grid .data-container td):
+ (.indexed-db-data-view .data-grid .data-container td.primaryKey-column):
+ (.indexed-db-data-view .data-grid .data-container td.primaryKey-column div.primitive-value):
+ (.indexed-db-data-view .data-grid .data-container td .section .header .title):
+
+2012-03-02 Wei James <james.wei@intel.com>
+
+ [Chromium] Layout Test webaudio/audiobuffersource-channels.html is failing
+ https://bugs.webkit.org/show_bug.cgi?id=79765
+
+ Reviewed by Chris Rogers.
+
+ * webaudio/AudioBuffer.cpp:
+ (WebCore::AudioBuffer::create):
+ * webaudio/AudioBufferSourceNode.cpp:
+ (WebCore::AudioBufferSourceNode::setBuffer):
+ * webaudio/AudioContext.h:
+ (WebCore):
+ (AudioContext):
+ (WebCore::AudioContext::maxNumberOfChannels):
+ * webaudio/AudioNodeOutput.cpp:
+ (WebCore::AudioNodeOutput::AudioNodeOutput):
+ (WebCore::AudioNodeOutput::setNumberOfChannels):
+
+2012-03-02 Luke Macpherson <macpherson@chromium.org>
+
+ Handle CSSPropertyWebkitRegionBreakAfter, CSSPropertyWebkitRegionBreakBefore and CSSPropertyWebkitRegionBreakInside in CSSStyleApplyProperty.
+ https://bugs.webkit.org/show_bug.cgi?id=80066
+
+ Reviewed by Eric Seidel.
+
+ No new tests / refactoring only.
+
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+
+2012-03-02 Pablo Flouret <pablof@motorola.com>
+
+ Implement DefaultParagraphSeparator execCommand, to let authors choose the default block element
+ https://bugs.webkit.org/show_bug.cgi?id=59961
+
+ Reviewed by Ryosuke Niwa.
+
+ http://dvcs.w3.org/hg/editing/raw-file/tip/editing.html#the-defaultparagraphseparator-command
+
+ Test: editing/execCommand/default-paragraph-separator.html
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::Editor):
+ * editing/Editor.h:
+ (WebCore::Editor::defaultParagraphSeparator):
+ (WebCore::Editor::setDefaultParagraphSeparator):
+ (Editor):
+ * editing/EditorCommand.cpp:
+ (WebCore::executeDefaultParagraphSeparator):
+ (WebCore):
+ (WebCore::valueDefaultParagraphSeparator):
+ (WebCore::createCommandMap):
+ * editing/htmlediting.cpp:
+ (WebCore::createDefaultParagraphElement):
+
+ * html/HTMLParagraphElement.cpp:
+ (WebCore::HTMLParagraphElement::create):
+ (WebCore):
+ * html/HTMLParagraphElement.h:
+ (HTMLParagraphElement):
+ Added create(Document*) method that defaults to pTag as the QualifiedName.
+
+2012-03-02 Kenneth Russell <kbr@google.com>
+
+ [chromium] Fix errors in LayerRendererChromium cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=80064
+
+ Reviewed by James Robinson.
+
+ Tested manually by forcing lost context while rendering Flash on
+ Mac OS in a Debug build.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+
+2012-03-02 Andy Estes <aestes@apple.com>
+
+ Fix errors found when building the Mac port with ICONDATABASE disabled.
+ https://bugs.webkit.org/show_bug.cgi?id=80059
+
+ Reviewed by Brady Eidson.
+
+ * WebCore.exp.in: Only export IconDatabase symbols when the feature is
+ enabled.
+ * loader/icon/IconDatabase.h:
+ (WebCore::IconDatabase::create): WebKit calls this static method, so it
+ should be defined on the stub class.
+ (WebCore::IconDatabase::allowDatabaseCleanup): Ditto.
+ (WebCore::IconDatabase::checkIntegrityBeforeOpening): Ditto.
+
+2012-03-02 Luke Macpherson <macpherson@chromium.org>
+
+ Handle CSSPropertyWebkitColorCorrection in CSSStyleApplyProperty.
+ https://bugs.webkit.org/show_bug.cgi?id=80056
+
+ Reviewed by Eric Seidel.
+
+ No new tests / refactoring only.
+
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+
+2012-03-02 John Bauman <jbauman@chromium.org>
+
+ [chromium] Send didCommitAndDrawFrame after swap
+ https://bugs.webkit.org/show_bug.cgi?id=80052
+
+ Reviewed by James Robinson.
+
+ Sending didCommitAndDrawFrame before the swap was causing plugins to
+ redraw themselves between compositing and the swap, which reduces
+ opportunities for optimization.
+
+ * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
+ (WebCore::CCSingleThreadProxy::compositeAndReadback):
+ (WebCore::CCSingleThreadProxy::compositeImmediately):
+ (WebCore::CCSingleThreadProxy::doComposite):
+ (WebCore):
+ (WebCore::CCSingleThreadProxy::didSwapFrame):
+ * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
+ (CCSingleThreadProxy):
+
+2012-03-02 Raymond Toy <rtoy@google.com>
+
+ AudioParam needs tests for the parameter automation routines.
+ https://bugs.webkit.org/show_bug.cgi?id=77666
+
+ Reviewed by Chris Rogers.
+
+ Tests: webaudio/audioparam-linearRampToValueAtTime.html
+ webaudio/audioparam-setTargetValueAtTime.html
+ webaudio/audioparam-setValueAtTime.html
+ webaudio/audioparam-setValueCurveAtTime.html
+
+ * webaudio/AudioParamTimeline.cpp:
+ (WebCore::AudioParamTimeline::valuesForTimeRangeImpl): Round the
+ curveIndex to fix timing issue in setValueCurveAtTime.
+
+2012-03-01 Pablo Flouret <pablof@motorola.com>
+
+ Fix code generators to correctly guard header declarations that have a [Conditional] attribute.
+ https://bugs.webkit.org/show_bug.cgi?id=79375
+
+ Reviewed by Kentaro Hara.
+
+ In most cases code generators weren't checking the Conditional attribute
+ when generating code in headers for function/attribute/constants, they
+ were just guarding against the Conditional for the whole interface.
+
+ * bindings/scripts/CodeGeneratorCPP.pm:
+ (GenerateHeader):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ (GenerateHeader):
+ * bindings/scripts/CodeGeneratorObjC.pm:
+ (GenerateHeader):
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (GenerateHeader):
+ * bindings/scripts/test/CPP/WebDOMTestInterface.h:
+ * bindings/scripts/test/CPP/WebDOMTestObj.h:
+ * bindings/scripts/test/JS/JSTestInterface.h:
+ (JSTestInterface):
+ (WebCore):
+ * bindings/scripts/test/JS/JSTestObj.h:
+ (WebCore):
+ * bindings/scripts/test/ObjC/DOMTestInterface.h:
+ * bindings/scripts/test/ObjC/DOMTestObj.h:
+
+
+2012-03-01 Dana Jansens <danakj@chromium.org>
+
+ [chromium] Make opaque paint tracker aware of SkCanvas layers
+ https://bugs.webkit.org/show_bug.cgi?id=79145
+
+ Reviewed by Stephen White.
+
+ The current opaque paint tracker ignored SkCanvas layers entirely. But
+ SkCanvas layers can be used to apply things like alpha. So we make it
+ know about layers, and apply any clipping and SkPaint objects for layers
+ when tracking a paint.
+
+ Image clipping is done via a layer, so we can now also remove the
+ special-case code around image clipping in PlatformContextSkia and
+ OpaqueRegionSkia.
+
+ Unit test: PlatformContextSkiaTest.contextTransparencyLayerTest
+
+ Test: compositing/culling/clear-fixed-iframe.html
+
+ * platform/graphics/skia/OpaqueRegionSkia.cpp:
+ (WebCore::OpaqueRegionSkia::didDrawRect):
+ (WebCore::OpaqueRegionSkia::didDrawPath):
+ (WebCore::OpaqueRegionSkia::didDrawPoints):
+ (WebCore::OpaqueRegionSkia::didDrawBounded):
+ (WebCore::OpaqueRegionSkia::didDraw):
+ (WebCore):
+ * platform/graphics/skia/OpaqueRegionSkia.h:
+ (OpaqueRegionSkia):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ * platform/graphics/skia/PlatformContextSkia.h:
+ (PlatformContextSkia):
+
+2012-03-02 Kent Tamura <tkent@chromium.org>
+
+ Add HTML-capable popup API to ChromeClient
+ https://bugs.webkit.org/show_bug.cgi?id=79078
+
+ Reviewed by Dimitri Glazkov.
+
+ This API will be used to implement a calendar picker of <input type=date>.
+ The code is enclosed with ENABLE_PAGE_POPUP, and doesn't change any
+ behavior for now.
+
+ * page/ChromeClient.h: Added declarations of openPagePopup() and closePagePopup().
+ * loader/EmptyClients.h:
+ (EmptyChromeClient): Add empty implementations of new ChromeClient functions.
+ * page/PagePopup.h: Added.
+ (PagePopup): Define an empty interface
+ * page/PagePopupClient.h: Added.
+ (PagePopupClient): Define an interface to provide various information to HTMLPopup.
+
+2012-03-01 Hironori Bono <hbono@chromium.org>
+
+ Render overflow controls of an RTL element to its left-side.
+ https://bugs.webkit.org/show_bug.cgi?id=54623
+
+ This change adds a new flag WTF_USE_RTL_SCROLLBAR and render the
+ vertical scrollbars and resizers of RTL elements to their left side if
+ this new flag is enabled.
+
+ Reviewed by Ryosuke Niwa.
+
+ Test: platform/chromium/fast/events/rtl-scrollbar.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::addOverflowFromPositionedObjects): Move child elements right.
+ (WebCore::RenderBlock::determineLogicalLeftPositionForChild): ditto.
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::overflowClipRect): Move the content rectangle right.
+ * rendering/RenderLayer.cpp:
+ (WebCore::cornerStart): Added a function that calculates the X position of a resizer.
+ (WebCore):
+ (WebCore::cornerRect): Use cornerStart to move a resizer.
+ (WebCore::RenderLayer::verticalScrollbarStart): Added a function that calculates
+ the X position of a vertical scrollbar.
+ (WebCore::RenderLayer::horizontalScrollbarStart): Added a function that calculates
+ the X position of a horizontal scrollbar.
+ (WebCore::RenderLayer::scrollbarOffset): Render a vertical scrollbar to the left side
+ and move a horizontal scrollbar right by the width of the vertical scrollbar.
+ (WebCore::RenderLayer::invalidateScrollbarRect): ditto.
+ (WebCore::RenderLayer::positionOverflowControls): ditto.
+ (WebCore::RenderLayer::hitTestOverflowControls): ditto.
+ * rendering/RenderLayer.h:
+ (RenderLayer):
+ * rendering/style/RenderStyle.h: Added shouldPlaceBlockDirectionScrollbarOnLogicalLeft,
+ which returns if we need to move a left scrollbar to its right side.
+
+2012-03-01 Kent Tamura <tkent@chromium.org>
+
+ REGRESSION(90089): Input type='search' text shakes up and down when the style is changed.
+ https://bugs.webkit.org/show_bug.cgi?id=79445
+
+ Reviewed by Dimitri Glazkov.
+
+ If the inner text height of a search field is smaller than the
+ content box height of the <input>, the height of the container
+ element should be same as the content box height.
+
+ When the element style is changed, the RenderStyle height of the
+ container element is cleared, but the renderer height of the
+ container element remains. We had a bug that layout() didn't set
+ the RenderStyle height in a case that the renderer height was the
+ desired height. It shrunk the renderer height as the result of
+ layout for children.
+
+ Tests: fast/forms/search/search-shaking-text.html
+
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::layout):
+ Always set the RenderStyle height explicitly.
+
+2012-03-01 Kentaro Hara <haraken@chromium.org>
+
+ Unreviewed, rebaselined run-bindings-tests results.
+
+ * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
+ * bindings/scripts/test/CPP/WebDOMTestObj.h:
+
+2012-03-01 Dan Bernstein <mitz@apple.com>
+
+ <rdar://problem/10942540> REGRESSION (r108956): Safari Webpage Preview Fetcher crashes in WebCore::localizedString() when using a WebKit nightly build
+ https://bugs.webkit.org/show_bug.cgi?id=80034
+
+ Reviewed by Benjamin Poulain.
+
+ Safari Webpage Preview Fetcher can’t access the WebCore framework when launched from a WebKit
+ nightly build. After r108956, this causes it to crash.
+
+ * platform/mac/LocalizedStringsMac.cpp:
+ (WebCore::localizedString): Added a null-check for the value returned from
+ CFBundleGetBundleWithIdentifier(CFSTR("com.apple.WebCore")).
+
+2012-03-01 Jason Liu <jason.liu@torchmobile.com.cn>
+
+ [BlackBerry]Array of Cookies in HTTP request header are not in order.
+ https://bugs.webkit.org/show_bug.cgi?id=79870
+
+ Std::sort and HashMap are not stable. So cookies with the same creating
+ time sometimes are sent disorder.
+ Change std::sort with std::stable-sort.
+ We don't need using HashMap to save so few cookies for one domain.
+ It is a wast of time to create HashMap, too.
+ So change it with vector.
+
+ Reviewed by George Staikos.
+
+ Test: http/tests/cookies/resources/setArraycookies.php
+
+ * platform/blackberry/CookieManager.cpp:
+ (WebCore::cookieSorter):
+ (WebCore::CookieManager::getRawCookies):
+ (WebCore::CookieManager::checkAndTreatCookie):
+ (WebCore::CookieManager::addCookieToMap):
+ * platform/blackberry/CookieManager.h:
+ * platform/blackberry/CookieMap.cpp:
+ (WebCore::CookieMap::addOrReplaceCookie):
+ (WebCore::CookieMap::removeCookieAtIndex):
+ (WebCore::CookieMap::removeCookie):
+ (WebCore):
+ (WebCore::CookieMap::getAllCookies):
+ (WebCore::CookieMap::updateOldestCookie):
+ (WebCore::CookieMap::deleteAllCookiesAndDomains):
+ * platform/blackberry/CookieMap.h:
+ (WebCore::CookieMap::count):
+ (CookieMap):
+
+2012-03-01 Adam Barth <abarth@webkit.org>
+
+ Move WebCore/storage/IDB* files into WebCore/Modules/indexeddb
+ https://bugs.webkit.org/show_bug.cgi?id=80071
+
+ Reviewed by Kentaro Hara.
+
+ Now that we've removed all the ENABLE(INDEXED_DATABASE) ifdefs from
+ WebCore proper, we can move IndexedDB into its own module.
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * DerivedSources.pri:
+ * GNUmakefile.list.am:
+ * Modules/indexeddb/IDBAny.cpp: Copied from Source/WebCore/storage/IDBAny.cpp.
+ * Modules/indexeddb/IDBAny.h: Copied from Source/WebCore/storage/IDBAny.h.
+ * Modules/indexeddb/IDBAny.idl: Copied from Source/WebCore/storage/IDBAny.idl.
+ * Modules/indexeddb/IDBBackingStore.h: Copied from Source/WebCore/storage/IDBBackingStore.h.
+ * Modules/indexeddb/IDBCallbacks.h: Copied from Source/WebCore/storage/IDBCallbacks.h.
+ * Modules/indexeddb/IDBCursor.cpp: Copied from Source/WebCore/storage/IDBCursor.cpp.
+ * Modules/indexeddb/IDBCursor.h: Copied from Source/WebCore/storage/IDBCursor.h.
+ * Modules/indexeddb/IDBCursor.idl: Copied from Source/WebCore/storage/IDBCursor.idl.
+ * Modules/indexeddb/IDBCursorBackendImpl.cpp: Copied from Source/WebCore/storage/IDBCursorBackendImpl.cpp.
+ * Modules/indexeddb/IDBCursorBackendImpl.h: Copied from Source/WebCore/storage/IDBCursorBackendImpl.h.
+ * Modules/indexeddb/IDBCursorBackendInterface.h: Copied from Source/WebCore/storage/IDBCursorBackendInterface.h.
+ * Modules/indexeddb/IDBCursorWithValue.cpp: Copied from Source/WebCore/storage/IDBCursorWithValue.cpp.
+ * Modules/indexeddb/IDBCursorWithValue.h: Copied from Source/WebCore/storage/IDBCursorWithValue.h.
+ * Modules/indexeddb/IDBCursorWithValue.idl: Copied from Source/WebCore/storage/IDBCursorWithValue.idl.
+ * Modules/indexeddb/IDBDatabase.cpp: Copied from Source/WebCore/storage/IDBDatabase.cpp.
+ * Modules/indexeddb/IDBDatabase.h: Copied from Source/WebCore/storage/IDBDatabase.h.
+ * Modules/indexeddb/IDBDatabase.idl: Copied from Source/WebCore/storage/IDBDatabase.idl.
+ * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: Copied from Source/WebCore/storage/IDBDatabaseBackendImpl.cpp.
+ * Modules/indexeddb/IDBDatabaseBackendImpl.h: Copied from Source/WebCore/storage/IDBDatabaseBackendImpl.h.
+ * Modules/indexeddb/IDBDatabaseBackendInterface.h: Copied from Source/WebCore/storage/IDBDatabaseBackendInterface.h.
+ * Modules/indexeddb/IDBDatabaseCallbacks.h: Copied from Source/WebCore/storage/IDBDatabaseCallbacks.h.
+ * Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp: Copied from Source/WebCore/storage/IDBDatabaseCallbacksImpl.cpp.
+ * Modules/indexeddb/IDBDatabaseCallbacksImpl.h: Copied from Source/WebCore/storage/IDBDatabaseCallbacksImpl.h.
+ * Modules/indexeddb/IDBDatabaseError.h: Copied from Source/WebCore/storage/IDBDatabaseError.h.
+ * Modules/indexeddb/IDBDatabaseError.idl: Copied from Source/WebCore/storage/IDBDatabaseError.idl.
+ * Modules/indexeddb/IDBDatabaseException.cpp: Copied from Source/WebCore/storage/IDBDatabaseException.cpp.
+ * Modules/indexeddb/IDBDatabaseException.h: Copied from Source/WebCore/storage/IDBDatabaseException.h.
+ * Modules/indexeddb/IDBDatabaseException.idl: Copied from Source/WebCore/storage/IDBDatabaseException.idl.
+ * Modules/indexeddb/IDBEventDispatcher.cpp: Copied from Source/WebCore/storage/IDBEventDispatcher.cpp.
+ * Modules/indexeddb/IDBEventDispatcher.h: Copied from Source/WebCore/storage/IDBEventDispatcher.h.
+ * Modules/indexeddb/IDBFactory.cpp: Copied from Source/WebCore/storage/IDBFactory.cpp.
+ * Modules/indexeddb/IDBFactory.h: Copied from Source/WebCore/storage/IDBFactory.h.
+ * Modules/indexeddb/IDBFactory.idl: Copied from Source/WebCore/storage/IDBFactory.idl.
+ * Modules/indexeddb/IDBFactoryBackendImpl.cpp: Copied from Source/WebCore/storage/IDBFactoryBackendImpl.cpp.
+ * Modules/indexeddb/IDBFactoryBackendImpl.h: Copied from Source/WebCore/storage/IDBFactoryBackendImpl.h.
+ * Modules/indexeddb/IDBFactoryBackendInterface.cpp: Copied from Source/WebCore/storage/IDBFactoryBackendInterface.cpp.
+ * Modules/indexeddb/IDBFactoryBackendInterface.h: Copied from Source/WebCore/storage/IDBFactoryBackendInterface.h.
+ * Modules/indexeddb/IDBIndex.cpp: Copied from Source/WebCore/storage/IDBIndex.cpp.
+ * Modules/indexeddb/IDBIndex.h: Copied from Source/WebCore/storage/IDBIndex.h.
+ * Modules/indexeddb/IDBIndex.idl: Copied from Source/WebCore/storage/IDBIndex.idl.
+ * Modules/indexeddb/IDBIndexBackendImpl.cpp: Copied from Source/WebCore/storage/IDBIndexBackendImpl.cpp.
+ * Modules/indexeddb/IDBIndexBackendImpl.h: Copied from Source/WebCore/storage/IDBIndexBackendImpl.h.
+ * Modules/indexeddb/IDBIndexBackendInterface.h: Copied from Source/WebCore/storage/IDBIndexBackendInterface.h.
+ * Modules/indexeddb/IDBKey.cpp: Copied from Source/WebCore/storage/IDBKey.cpp.
+ * Modules/indexeddb/IDBKey.h: Copied from Source/WebCore/storage/IDBKey.h.
+ * Modules/indexeddb/IDBKey.idl: Copied from Source/WebCore/storage/IDBKey.idl.
+ * Modules/indexeddb/IDBKeyPath.cpp: Copied from Source/WebCore/storage/IDBKeyPath.cpp.
+ * Modules/indexeddb/IDBKeyPath.h: Copied from Source/WebCore/storage/IDBKeyPath.h.
+ * Modules/indexeddb/IDBKeyPathBackendImpl.cpp: Copied from Source/WebCore/storage/IDBKeyPathBackendImpl.cpp.
+ * Modules/indexeddb/IDBKeyPathBackendImpl.h: Copied from Source/WebCore/storage/IDBKeyPathBackendImpl.h.
+ * Modules/indexeddb/IDBKeyRange.cpp: Copied from Source/WebCore/storage/IDBKeyRange.cpp.
+ * Modules/indexeddb/IDBKeyRange.h: Copied from Source/WebCore/storage/IDBKeyRange.h.
+ * Modules/indexeddb/IDBKeyRange.idl: Copied from Source/WebCore/storage/IDBKeyRange.idl.
+ * Modules/indexeddb/IDBLevelDBBackingStore.cpp: Copied from Source/WebCore/storage/IDBLevelDBBackingStore.cpp.
+ * Modules/indexeddb/IDBLevelDBBackingStore.h: Copied from Source/WebCore/storage/IDBLevelDBBackingStore.h.
+ * Modules/indexeddb/IDBLevelDBCoding.cpp: Copied from Source/WebCore/storage/IDBLevelDBCoding.cpp.
+ * Modules/indexeddb/IDBLevelDBCoding.h: Copied from Source/WebCore/storage/IDBLevelDBCoding.h.
+ * Modules/indexeddb/IDBObjectStore.cpp: Copied from Source/WebCore/storage/IDBObjectStore.cpp.
+ * Modules/indexeddb/IDBObjectStore.h: Copied from Source/WebCore/storage/IDBObjectStore.h.
+ * Modules/indexeddb/IDBObjectStore.idl: Copied from Source/WebCore/storage/IDBObjectStore.idl.
+ * Modules/indexeddb/IDBObjectStoreBackendImpl.cpp: Copied from Source/WebCore/storage/IDBObjectStoreBackendImpl.cpp.
+ * Modules/indexeddb/IDBObjectStoreBackendImpl.h: Copied from Source/WebCore/storage/IDBObjectStoreBackendImpl.h.
+ * Modules/indexeddb/IDBObjectStoreBackendInterface.h: Copied from Source/WebCore/storage/IDBObjectStoreBackendInterface.h.
+ * Modules/indexeddb/IDBPendingTransactionMonitor.cpp: Copied from Source/WebCore/storage/IDBPendingTransactionMonitor.cpp.
+ * Modules/indexeddb/IDBPendingTransactionMonitor.h: Copied from Source/WebCore/storage/IDBPendingTransactionMonitor.h.
+ * Modules/indexeddb/IDBRequest.cpp: Copied from Source/WebCore/storage/IDBRequest.cpp.
+ * Modules/indexeddb/IDBRequest.h: Copied from Source/WebCore/storage/IDBRequest.h.
+ * Modules/indexeddb/IDBRequest.idl: Copied from Source/WebCore/storage/IDBRequest.idl.
+ * Modules/indexeddb/IDBTracing.h: Copied from Source/WebCore/storage/IDBTracing.h.
+ * Modules/indexeddb/IDBTransaction.cpp: Copied from Source/WebCore/storage/IDBTransaction.cpp.
+ * Modules/indexeddb/IDBTransaction.h: Copied from Source/WebCore/storage/IDBTransaction.h.
+ * Modules/indexeddb/IDBTransaction.idl: Copied from Source/WebCore/storage/IDBTransaction.idl.
+ * Modules/indexeddb/IDBTransactionBackendImpl.cpp: Copied from Source/WebCore/storage/IDBTransactionBackendImpl.cpp.
+ * Modules/indexeddb/IDBTransactionBackendImpl.h: Copied from Source/WebCore/storage/IDBTransactionBackendImpl.h.
+ * Modules/indexeddb/IDBTransactionBackendInterface.h: Copied from Source/WebCore/storage/IDBTransactionBackendInterface.h.
+ * Modules/indexeddb/IDBTransactionCallbacks.h: Copied from Source/WebCore/storage/IDBTransactionCallbacks.h.
+ * Modules/indexeddb/IDBTransactionCoordinator.cpp: Copied from Source/WebCore/storage/IDBTransactionCoordinator.cpp.
+ * Modules/indexeddb/IDBTransactionCoordinator.h: Copied from Source/WebCore/storage/IDBTransactionCoordinator.h.
+ * Modules/indexeddb/IDBVersionChangeEvent.cpp: Copied from Source/WebCore/storage/IDBVersionChangeEvent.cpp.
+ * Modules/indexeddb/IDBVersionChangeEvent.h: Copied from Source/WebCore/storage/IDBVersionChangeEvent.h.
+ * Modules/indexeddb/IDBVersionChangeEvent.idl: Copied from Source/WebCore/storage/IDBVersionChangeEvent.idl.
+ * Modules/indexeddb/IDBVersionChangeRequest.cpp: Copied from Source/WebCore/storage/IDBVersionChangeRequest.cpp.
+ * Modules/indexeddb/IDBVersionChangeRequest.h: Copied from Source/WebCore/storage/IDBVersionChangeRequest.h.
+ * Modules/indexeddb/IDBVersionChangeRequest.idl: Copied from Source/WebCore/storage/IDBVersionChangeRequest.idl.
+ * Target.pri:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * storage/IDBAny.cpp: Removed.
+ * storage/IDBAny.h: Removed.
+ * storage/IDBAny.idl: Removed.
+ * storage/IDBBackingStore.h: Removed.
+ * storage/IDBCallbacks.h: Removed.
+ * storage/IDBCursor.cpp: Removed.
+ * storage/IDBCursor.h: Removed.
+ * storage/IDBCursor.idl: Removed.
+ * storage/IDBCursorBackendImpl.cpp: Removed.
+ * storage/IDBCursorBackendImpl.h: Removed.
+ * storage/IDBCursorBackendInterface.h: Removed.
+ * storage/IDBCursorWithValue.cpp: Removed.
+ * storage/IDBCursorWithValue.h: Removed.
+ * storage/IDBCursorWithValue.idl: Removed.
+ * storage/IDBDatabase.cpp: Removed.
+ * storage/IDBDatabase.h: Removed.
+ * storage/IDBDatabase.idl: Removed.
+ * storage/IDBDatabaseBackendImpl.cpp: Removed.
+ * storage/IDBDatabaseBackendImpl.h: Removed.
+ * storage/IDBDatabaseBackendInterface.h: Removed.
+ * storage/IDBDatabaseCallbacks.h: Removed.
+ * storage/IDBDatabaseCallbacksImpl.cpp: Removed.
+ * storage/IDBDatabaseCallbacksImpl.h: Removed.
+ * storage/IDBDatabaseError.h: Removed.
+ * storage/IDBDatabaseError.idl: Removed.
+ * storage/IDBDatabaseException.cpp: Removed.
+ * storage/IDBDatabaseException.h: Removed.
+ * storage/IDBDatabaseException.idl: Removed.
+ * storage/IDBEventDispatcher.cpp: Removed.
+ * storage/IDBEventDispatcher.h: Removed.
+ * storage/IDBFactory.cpp: Removed.
+ * storage/IDBFactory.h: Removed.
+ * storage/IDBFactory.idl: Removed.
+ * storage/IDBFactoryBackendImpl.cpp: Removed.
+ * storage/IDBFactoryBackendImpl.h: Removed.
+ * storage/IDBFactoryBackendInterface.cpp: Removed.
+ * storage/IDBFactoryBackendInterface.h: Removed.
+ * storage/IDBIndex.cpp: Removed.
+ * storage/IDBIndex.h: Removed.
+ * storage/IDBIndex.idl: Removed.
+ * storage/IDBIndexBackendImpl.cpp: Removed.
+ * storage/IDBIndexBackendImpl.h: Removed.
+ * storage/IDBIndexBackendInterface.h: Removed.
+ * storage/IDBKey.cpp: Removed.
+ * storage/IDBKey.h: Removed.
+ * storage/IDBKey.idl: Removed.
+ * storage/IDBKeyPath.cpp: Removed.
+ * storage/IDBKeyPath.h: Removed.
+ * storage/IDBKeyPathBackendImpl.cpp: Removed.
+ * storage/IDBKeyPathBackendImpl.h: Removed.
+ * storage/IDBKeyRange.cpp: Removed.
+ * storage/IDBKeyRange.h: Removed.
+ * storage/IDBKeyRange.idl: Removed.
+ * storage/IDBLevelDBBackingStore.cpp: Removed.
+ * storage/IDBLevelDBBackingStore.h: Removed.
+ * storage/IDBLevelDBCoding.cpp: Removed.
+ * storage/IDBLevelDBCoding.h: Removed.
+ * storage/IDBObjectStore.cpp: Removed.
+ * storage/IDBObjectStore.h: Removed.
+ * storage/IDBObjectStore.idl: Removed.
+ * storage/IDBObjectStoreBackendImpl.cpp: Removed.
+ * storage/IDBObjectStoreBackendImpl.h: Removed.
+ * storage/IDBObjectStoreBackendInterface.h: Removed.
+ * storage/IDBPendingTransactionMonitor.cpp: Removed.
+ * storage/IDBPendingTransactionMonitor.h: Removed.
+ * storage/IDBRequest.cpp: Removed.
+ * storage/IDBRequest.h: Removed.
+ * storage/IDBRequest.idl: Removed.
+ * storage/IDBTracing.h: Removed.
+ * storage/IDBTransaction.cpp: Removed.
+ * storage/IDBTransaction.h: Removed.
+ * storage/IDBTransaction.idl: Removed.
+ * storage/IDBTransactionBackendImpl.cpp: Removed.
+ * storage/IDBTransactionBackendImpl.h: Removed.
+ * storage/IDBTransactionBackendInterface.h: Removed.
+ * storage/IDBTransactionCallbacks.h: Removed.
+ * storage/IDBTransactionCoordinator.cpp: Removed.
+ * storage/IDBTransactionCoordinator.h: Removed.
+ * storage/IDBVersionChangeEvent.cpp: Removed.
+ * storage/IDBVersionChangeEvent.h: Removed.
+ * storage/IDBVersionChangeEvent.idl: Removed.
+ * storage/IDBVersionChangeRequest.cpp: Removed.
+ * storage/IDBVersionChangeRequest.h: Removed.
+ * storage/IDBVersionChangeRequest.idl: Removed.
+
+2012-03-01 Luke Macpherson <macpherson@chromium.org>
+
+ Handle CSSPropertyWebkitBorderFit in CSSStyleApplyProperty.
+ https://bugs.webkit.org/show_bug.cgi?id=79998
+
+ Reviewed by Andreas Kling.
+
+ No new tests / refactoring only.
+
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+
+2012-03-01 Anders Carlsson <andersca@apple.com>
+
+ Crash when doing repeated double-tap-to-zoom gesture on apple startpage
+ https://bugs.webkit.org/show_bug.cgi?id=80081
+ <rdar://problem/10966391>
+
+ Reviewed by Sam Weinig.
+
+ Setting the contents scale on the tile cache layer was creating a WebTileCacheLayer presentation layer copy with a null _tileCache.
+
+ Implement -[WebTileCacheLayer actionForKey:] and have it always return nil so we'll avoid implicit animations, and thus creating presentation layers.
+
+ * platform/graphics/ca/mac/WebTileCacheLayer.mm:
+ (-[WebTileCacheLayer initWithLayer:]):
+ Implement this and assert that it's never reached. We should never create presentation layers since we don't animate this layer.
+
+ (-[WebTileCacheLayer actionForKey:]):
+ Implement this and always return nil.
+
+2012-03-01 Hajime Morrita <morrita@chromium.org>
+
+ Custom scrollbars do not support transparency
+ https://bugs.webkit.org/show_bug.cgi?id=50547
+
+ Reviewed by James Robinson.
+
+ RenderScrollbar, which is used even for outermost frame when
+ -webkit-scrollbar is specified, assumes that its background is
+ painted by the enclosing container. But there is no such container
+ for outermost frame. This causes visual glitches when the
+ scrollbar has transparency.
+
+ This change clears background region for custom
+ outermostscrollbars to erase such glitches.
+
+ Test: fast/frames/transparent-scrollbar.html
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::paintScrollbar): The background is cleared here.
+ (WebCore):
+ * page/FrameView.h:
+ (FrameView):
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::paintScrollbar): Added to hook in FrameView
+ (WebCore):
+ (WebCore::ScrollView::paintScrollbars):
+ * platform/ScrollView.h:
+ (ScrollView):
+
+2012-03-01 Kent Tamura <tkent@chromium.org>
+
+ REGRESSION(r106388): Form state is restored to a wrong document.
+ https://bugs.webkit.org/show_bug.cgi?id=79206
+
+ Reviewed by Brady Eidson.
+
+ In some cases, the URL of the current HistoryItem and the document
+ URL are mismatched.
+ A form state should be restored only if the document was loaded
+ with a HistoryItem and the document is not loaded as a
+ redirection.
+
+ Test: fast/loader/form-state-restore-with-locked-back-forward-list.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::checkCompleted): Clear m_requestedHistoryItem.
+ (WebCore::FrameLoader::loadItem):
+ Save the requested HistoryItem for didLoadWithLodItem().
+ * loader/FrameLoader.h:
+ (WebCore::FrameLoader::requestedHistoryItem):
+ Added. Accessor for m_requestedHistoryItem.
+ * loader/HistoryController.cpp:
+ (WebCore::HistoryController::restoreDocumentState):
+ Restore a form state only if the current document was loaded with
+ FrameLoader::loadItem() and not redirection.
+
+2012-03-01 Xingnan Wang <xingnan.wang@intel.com>
+
+ SSE optimization for vsvesq and vmaxmgv
+ https://bugs.webkit.org/show_bug.cgi?id=77950
+
+ Reviewed by Chris Rogers.
+
+ Achieved the performance of 3.7x on vsvesq and 4.1x on vmaxmgv.
+
+ * platform/audio/VectorMath.cpp:
+ (WebCore::VectorMath::vsvesq):
+ (WebCore::VectorMath::vmaxmgv):
+
+2012-03-01 Luke Macpherson <macpherson@chromium.org>
+
+ Handle CSSPropertyBoxSizing in CSSStyleApplyProperty.
+ https://bugs.webkit.org/show_bug.cgi?id=80001
+
+ Reviewed by Andreas Kling.
+
+ No new tests / refactoring only.
+
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+
+2012-03-01 James Robinson <jamesr@chromium.org>
+
+ [chromium] LayerChromium::contentChanged is redundant with setNeedsDisplay
+ https://bugs.webkit.org/show_bug.cgi?id=79708
+
+ Reviewed by Adrienne Walker.
+
+ Some layer types need special handling when they receive damage. WebGL layers need to know if their texture is
+ updated for clear-on-swap behavior and both WebGL and canvas 2d layers have rate limiting mechanisms tied to
+ receiving invalidations. This mechanism was implemented by LayerChromium::contentChanged(), but this is
+ redundant with setNeedsDisplay().
+
+ Covered by existing tests.
+
+ * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
+ (WebCore::Canvas2DLayerChromium::setNeedsDisplay):
+ * platform/graphics/chromium/Canvas2DLayerChromium.h:
+ (Canvas2DLayerChromium):
+ * platform/graphics/chromium/GraphicsLayerChromium.cpp:
+ (WebCore::GraphicsLayerChromium::setContentsNeedsDisplay):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::setNeedsDisplay):
+ * platform/graphics/chromium/LayerChromium.h:
+ (LayerChromium):
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::setNeedsDisplay):
+ * platform/graphics/chromium/VideoLayerChromium.h:
+ (VideoLayerChromium):
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::setNeedsDisplay):
+ * platform/graphics/chromium/WebGLLayerChromium.h:
+ (WebGLLayerChromium):
+
+2012-03-01 James Robinson <jamesr@chromium.org>
+
+ [chromium] Rename LayerChromium::name to debugName to be more consistent with other debug properties, make threadsafe
+ https://bugs.webkit.org/show_bug.cgi?id=79723
+
+ Reviewed by Adrienne Walker.
+
+ * platform/graphics/chromium/GraphicsLayerChromium.cpp:
+ (WebCore::GraphicsLayerChromium::updateNames):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::pushPropertiesTo):
+ (WebCore::LayerChromium::setDebugName):
+ (WebCore):
+ * platform/graphics/chromium/LayerChromium.h:
+ (LayerChromium):
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ (WebCore::CCLayerImpl::dumpLayer):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (CCLayerImpl):
+ (WebCore::CCLayerImpl::setDebugName):
+ (WebCore::CCLayerImpl::debugName):
+ * platform/graphics/chromium/cc/CCRenderSurface.cpp:
+ (WebCore::CCRenderSurface::name):
+
+2012-03-01 Adam Barth <abarth@webkit.org>
+
+ Remove last ENABLED(INDEXED_DATABASE) ifdef from WebCore proper
+ https://bugs.webkit.org/show_bug.cgi?id=80061
+
+ Reviewed by Dimitri Glazkov.
+
+ This patch removes the last ENABLED(INDEXED_DATABASE) ifdef from
+ WebCore proper by moving the backend factory out of PageGroup and into
+ a supplement for PageGroup. After this patch, we're ready to move the
+ IDB code into Modules.
+
+ * Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
+ (WebCore::DOMWindowIndexedDatabase::webkitIndexedDB):
+ * WebCore.gypi:
+ * inspector/InspectorIndexedDBAgent.cpp:
+ (WebCore::assertIDBFactory):
+ * page/PageGroup.cpp:
+ (WebCore):
+ * page/PageGroup.h:
+ (PageGroup):
+
+2012-03-01 Dale Curtis <dalecurtis@chromium.org>
+
+ Remove deprecated FFmpeg build directories.
+ https://bugs.webkit.org/show_bug.cgi?id=79282
+
+ We've switched the layout of the FFmpeg repo in Chrome and these paths
+ are no longer needed or valid.
+
+ Reviewed by Dirk Pranke.
+
+ No new tests. It either compiles or not.
+
+ * WebCore.gyp/WebCore.gyp:
+
+2012-03-01 Xingnan Wang <xingnan.wang@intel.com>
+
+ Enable IPP for Biquad filter
+ https://bugs.webkit.org/show_bug.cgi?id=77509
+
+ Reviewed by Chris Rogers.
+
+ Use IIR filter in IPP and improve ~27% performance in linux.
+ Changes are covered by current tests.
+
+ * platform/audio/Biquad.cpp:
+ (WebCore::Biquad::Biquad):
+ (WebCore::Biquad::~Biquad):
+ (WebCore):
+ (WebCore::Biquad::process):
+ (WebCore::Biquad::reset):
+ (WebCore::Biquad::setLowpassParams):
+ (WebCore::Biquad::setHighpassParams):
+ (WebCore::Biquad::setNormalizedCoefficients):
+ (WebCore::Biquad::setZeroPolePairs):
+ * platform/audio/Biquad.h:
+ (Biquad):
+
+2012-03-01 Peter Kotwicz <pkotwicz@google.com>
+
+ Decouple scrollbar painting from Scrollbar object
+ https://bugs.webkit.org/show_bug.cgi?id=78028
+
+ Reviewed by James Robinson.
+
+ Added interface ScrollbarThemeClient which Scrollbar inherits from.
+ This allows painting via ScrollbarTheme with a proxy to a Scrollbar
+ object.
+
+ * GNUmakefile.list.am:
+ * Target.pri:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::scrollbarOverlayStyle):
+ (WebCore):
+ (WebCore::Scrollbar::getTickmarks):
+ (WebCore::Scrollbar::isScrollableAreaActive):
+ (WebCore::Scrollbar::isScrollViewScrollbar):
+ (WebCore::Scrollbar::setFrameRect):
+ * platform/Scrollbar.h:
+ (Scrollbar):
+ (WebCore::Scrollbar::x):
+ (WebCore::Scrollbar::y):
+ (WebCore::Scrollbar::width):
+ (WebCore::Scrollbar::height):
+ (WebCore::Scrollbar::size):
+ (WebCore::Scrollbar::location):
+ (WebCore::Scrollbar::parent):
+ (WebCore::Scrollbar::root):
+ (WebCore::Scrollbar::frameRect):
+ (WebCore::Scrollbar::invalidate):
+ (WebCore::Scrollbar::convertFromContainingWindow):
+ (WebCore::Scrollbar::isCustomScrollbar):
+ (WebCore::Scrollbar::orientation):
+ (WebCore::Scrollbar::value):
+ (WebCore::Scrollbar::currentPos):
+ (WebCore::Scrollbar::visibleSize):
+ (WebCore::Scrollbar::totalSize):
+ (WebCore::Scrollbar::maximum):
+ (WebCore::Scrollbar::controlSize):
+ (WebCore::Scrollbar::lineStep):
+ (WebCore::Scrollbar::pageStep):
+ (WebCore::Scrollbar::pressedPart):
+ (WebCore::Scrollbar::hoveredPart):
+ (WebCore::Scrollbar::styleChanged):
+ (WebCore::Scrollbar::enabled):
+ * platform/ScrollbarTheme.h:
+ (WebCore):
+ (WebCore::ScrollbarTheme::updateEnabledState):
+ (WebCore::ScrollbarTheme::paint):
+ (WebCore::ScrollbarTheme::hitTest):
+ (WebCore::ScrollbarTheme::updateScrollbarOverlayStyle):
+ (WebCore::ScrollbarTheme::invalidateParts):
+ (WebCore::ScrollbarTheme::invalidatePart):
+ (WebCore::ScrollbarTheme::shouldCenterOnThumb):
+ (WebCore::ScrollbarTheme::shouldSnapBackToDragOrigin):
+ (WebCore::ScrollbarTheme::shouldDragDocumentInsteadOfThumb):
+ (WebCore::ScrollbarTheme::thumbPosition):
+ (WebCore::ScrollbarTheme::thumbLength):
+ (WebCore::ScrollbarTheme::trackPosition):
+ (WebCore::ScrollbarTheme::trackLength):
+ (WebCore::ScrollbarTheme::registerScrollbar):
+ (WebCore::ScrollbarTheme::unregisterScrollbar):
+ * platform/ScrollbarThemeClient.h: Added.
+ (WebCore):
+ (ScrollbarThemeClient):
+ (WebCore::ScrollbarThemeClient::~ScrollbarThemeClient):
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paint):
+ (WebCore::ScrollbarThemeComposite::hitTest):
+ (WebCore::ScrollbarThemeComposite::invalidatePart):
+ (WebCore::ScrollbarThemeComposite::splitTrack):
+ (WebCore::usedTotalSize):
+ (WebCore::ScrollbarThemeComposite::thumbPosition):
+ (WebCore::ScrollbarThemeComposite::thumbLength):
+ (WebCore::ScrollbarThemeComposite::minimumThumbLength):
+ (WebCore::ScrollbarThemeComposite::trackPosition):
+ (WebCore::ScrollbarThemeComposite::trackLength):
+ * platform/ScrollbarThemeComposite.h:
+ (ScrollbarThemeComposite):
+ (WebCore::ScrollbarThemeComposite::paintScrollbarBackground):
+ (WebCore::ScrollbarThemeComposite::paintTrackBackground):
+ (WebCore::ScrollbarThemeComposite::paintTrackPiece):
+ (WebCore::ScrollbarThemeComposite::paintButton):
+ (WebCore::ScrollbarThemeComposite::paintThumb):
+ (WebCore::ScrollbarThemeComposite::paintTickmarks):
+ (WebCore::ScrollbarThemeComposite::constrainTrackRectToTrackPieces):
+ * platform/chromium/ScrollbarThemeChromium.cpp:
+ (WebCore::ScrollbarThemeChromium::hasThumb):
+ (WebCore::ScrollbarThemeChromium::backButtonRect):
+ (WebCore::ScrollbarThemeChromium::forwardButtonRect):
+ (WebCore::ScrollbarThemeChromium::trackRect):
+ (WebCore::ScrollbarThemeChromium::paintTrackBackground):
+ (WebCore::ScrollbarThemeChromium::paintTickmarks):
+ * platform/chromium/ScrollbarThemeChromium.h:
+ (WebCore::ScrollbarThemeChromium::hasButtons):
+ (ScrollbarThemeChromium):
+ * platform/chromium/ScrollbarThemeChromiumAndroid.cpp:
+ (WebCore::ScrollbarThemeChromiumAndroid::paintScrollbarBackground):
+ (WebCore::ScrollbarThemeChromiumAndroid::shouldCenterOnThumb):
+ (WebCore::ScrollbarThemeChromiumAndroid::buttonSize):
+ (WebCore::ScrollbarThemeChromiumAndroid::minimumThumbLength):
+ * platform/chromium/ScrollbarThemeChromiumAndroid.h:
+ (ScrollbarThemeChromiumAndroid):
+ * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
+ (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece):
+ (WebCore::ScrollbarThemeChromiumLinux::paintButton):
+ (WebCore::ScrollbarThemeChromiumLinux::paintThumb):
+ (WebCore::ScrollbarThemeChromiumLinux::shouldCenterOnThumb):
+ (WebCore::ScrollbarThemeChromiumLinux::buttonSize):
+ (WebCore::ScrollbarThemeChromiumLinux::minimumThumbLength):
+ * platform/chromium/ScrollbarThemeChromiumLinux.h:
+ (ScrollbarThemeChromiumLinux):
+ * platform/chromium/ScrollbarThemeChromiumMac.h:
+ (ScrollbarThemeChromiumMac):
+ * platform/chromium/ScrollbarThemeChromiumMac.mm:
+ (WebCore::scrollbarStateToThemeState):
+ (WebCore::ScrollbarThemeChromiumMac::paint):
+ (WebCore::ScrollbarThemeChromiumMac::paintGivenTickmarks):
+ * platform/chromium/ScrollbarThemeChromiumWin.cpp:
+ (WebCore::ScrollbarThemeChromiumWin::shouldSnapBackToDragOrigin):
+ (WebCore::ScrollbarThemeChromiumWin::paintTrackPiece):
+ (WebCore::ScrollbarThemeChromiumWin::paintButton):
+ (WebCore::ScrollbarThemeChromiumWin::paintThumb):
+ (WebCore::ScrollbarThemeChromiumWin::getThemeState):
+ (WebCore::ScrollbarThemeChromiumWin::getThemeArrowState):
+ (WebCore::ScrollbarThemeChromiumWin::getClassicThemeState):
+ (WebCore::ScrollbarThemeChromiumWin::shouldCenterOnThumb):
+ (WebCore::ScrollbarThemeChromiumWin::buttonSize):
+ * platform/chromium/ScrollbarThemeChromiumWin.h:
+ (ScrollbarThemeChromiumWin):
+ * platform/efl/ScrollbarThemeEfl.cpp:
+ (WebCore::ScrollbarThemeEfl::registerScrollbar):
+ (WebCore::ScrollbarThemeEfl::unregisterScrollbar):
+ * platform/efl/ScrollbarThemeEfl.h:
+ (ScrollbarThemeEfl):
+ * platform/gtk/ScrollbarThemeGtk.cpp:
+ (WebCore):
+ (WebCore::ScrollbarThemeGtk::registerScrollbar):
+ (WebCore::ScrollbarThemeGtk::unregisterScrollbar):
+ (WebCore::ScrollbarThemeGtk::updateScrollbarsFrameThickness):
+ (WebCore::ScrollbarThemeGtk::hasThumb):
+ (WebCore::ScrollbarThemeGtk::backButtonRect):
+ (WebCore::ScrollbarThemeGtk::forwardButtonRect):
+ (WebCore::ScrollbarThemeGtk::trackRect):
+ (WebCore::ScrollbarThemeGtk::thumbRect):
+ (WebCore::ScrollbarThemeGtk::paint):
+ (WebCore::ScrollbarThemeGtk::shouldCenterOnThumb):
+ (WebCore::ScrollbarThemeGtk::buttonSize):
+ (WebCore::ScrollbarThemeGtk::minimumThumbLength):
+ * platform/gtk/ScrollbarThemeGtk.h:
+ (WebCore::ScrollbarThemeGtk::hasButtons):
+ (ScrollbarThemeGtk):
+ * platform/gtk/ScrollbarThemeGtk2.cpp:
+ (WebCore::getWidgetForScrollbar):
+ (WebCore::ScrollbarThemeGtk::paintTrackBackground):
+ (WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
+ (WebCore::ScrollbarThemeGtk::paintThumb):
+ (WebCore::ScrollbarThemeGtk::paintButton):
+ * platform/gtk/ScrollbarThemeGtk3.cpp:
+ (WebCore::ScrollbarThemeGtk::paintTrackBackground):
+ (WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
+ (WebCore::ScrollbarThemeGtk::paintThumb):
+ (WebCore::ScrollbarThemeGtk::paintButton):
+ * platform/mac/ScrollbarThemeMac.h:
+ (ScrollbarThemeMac):
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore):
+ (WebCore::ScrollbarThemeMac::registerScrollbar):
+ (WebCore::ScrollbarThemeMac::unregisterScrollbar):
+ (WebCore::ScrollbarThemeMac::setNewPainterForScrollbar):
+ (WebCore::ScrollbarThemeMac::painterForScrollbar):
+ (WebCore::ScrollbarThemeMac::updateScrollbarOverlayStyle):
+ (WebCore::ScrollbarThemeMac::hasButtons):
+ (WebCore::ScrollbarThemeMac::hasThumb):
+ (WebCore::ScrollbarThemeMac::backButtonRect):
+ (WebCore::ScrollbarThemeMac::forwardButtonRect):
+ (WebCore::ScrollbarThemeMac::trackRect):
+ (WebCore::ScrollbarThemeMac::minimumThumbLength):
+ (WebCore::ScrollbarThemeMac::shouldCenterOnThumb):
+ (WebCore::ScrollbarThemeMac::shouldDragDocumentInsteadOfThumb):
+ (WebCore::ScrollbarThemeMac::updateEnabledState):
+ (WebCore::ScrollbarThemeMac::paint):
+ * platform/mock/ScrollbarThemeMock.cpp:
+ (WebCore::ScrollbarThemeMock::trackRect):
+ (WebCore::ScrollbarThemeMock::paintTrackBackground):
+ (WebCore::ScrollbarThemeMock::paintThumb):
+ * platform/mock/ScrollbarThemeMock.h:
+ (WebCore::ScrollbarThemeMock::hasButtons):
+ (WebCore::ScrollbarThemeMock::hasThumb):
+ (WebCore::ScrollbarThemeMock::backButtonRect):
+ (WebCore::ScrollbarThemeMock::forwardButtonRect):
+ (ScrollbarThemeMock):
+ * platform/qt/ScrollbarThemeQt.cpp:
+ (WebCore::styleOptionSlider):
+ (WebCore::ScrollbarThemeQt::paint):
+ (WebCore::ScrollbarThemeQt::hitTest):
+ (WebCore::ScrollbarThemeQt::shouldCenterOnThumb):
+ (WebCore::ScrollbarThemeQt::invalidatePart):
+ (WebCore::ScrollbarThemeQt::thumbPosition):
+ (WebCore::ScrollbarThemeQt::thumbLength):
+ (WebCore::ScrollbarThemeQt::trackPosition):
+ (WebCore::ScrollbarThemeQt::trackLength):
+ * platform/qt/ScrollbarThemeQt.h:
+ (ScrollbarThemeQt):
+ * platform/win/ScrollbarThemeSafari.cpp:
+ (WebCore::ScrollbarThemeSafari::hasButtons):
+ (WebCore::ScrollbarThemeSafari::hasThumb):
+ (WebCore::ScrollbarThemeSafari::backButtonRect):
+ (WebCore::ScrollbarThemeSafari::forwardButtonRect):
+ (WebCore::ScrollbarThemeSafari::trackRect):
+ (WebCore::ScrollbarThemeSafari::minimumThumbLength):
+ (WebCore::ScrollbarThemeSafari::shouldCenterOnThumb):
+ (WebCore::ScrollbarThemeSafari::paintTrackBackground):
+ (WebCore::ScrollbarThemeSafari::paintButton):
+ (WebCore::ScrollbarThemeSafari::paintThumb):
+ * platform/win/ScrollbarThemeSafari.h:
+ (ScrollbarThemeSafari):
+ * platform/win/ScrollbarThemeWin.cpp:
+ (WebCore::ScrollbarThemeWin::hasThumb):
+ (WebCore::ScrollbarThemeWin::backButtonRect):
+ (WebCore::ScrollbarThemeWin::forwardButtonRect):
+ (WebCore::ScrollbarThemeWin::trackRect):
+ (WebCore::ScrollbarThemeWin::shouldCenterOnThumb):
+ (WebCore::ScrollbarThemeWin::shouldSnapBackToDragOrigin):
+ (WebCore::ScrollbarThemeWin::paintTrackBackground):
+ (WebCore::ScrollbarThemeWin::paintTrackPiece):
+ (WebCore::ScrollbarThemeWin::paintButton):
+ (WebCore::paintGripper):
+ (WebCore::ScrollbarThemeWin::paintThumb):
+ * platform/win/ScrollbarThemeWin.h:
+ (WebCore::ScrollbarThemeWin::hasButtons):
+ (ScrollbarThemeWin):
+ * platform/wx/ScrollbarThemeWx.cpp:
+ (WebCore::ScrollbarThemeWx::hasThumb):
+ (WebCore::ScrollbarThemeWx::minimumThumbLength):
+ (WebCore::ScrollbarThemeWx::buttonSize):
+ (WebCore::ScrollbarThemeWx::splitTrack):
+ (WebCore::ScrollbarThemeWx::backButtonRect):
+ (WebCore::ScrollbarThemeWx::forwardButtonRect):
+ (WebCore::ScrollbarThemeWx::trackRect):
+ (WebCore::ScrollbarThemeWx::paint):
+ * platform/wx/ScrollbarThemeWx.h:
+ (ScrollbarThemeWx):
+ (WebCore::ScrollbarThemeWx::hasButtons):
+ * rendering/RenderScrollbar.h:
+ (WebCore::toRenderScrollbar):
+ * rendering/RenderScrollbarTheme.cpp:
+ (WebCore::RenderScrollbarTheme::buttonSizesAlongTrackAxis):
+ (WebCore::RenderScrollbarTheme::hasButtons):
+ (WebCore::RenderScrollbarTheme::hasThumb):
+ (WebCore::RenderScrollbarTheme::minimumThumbLength):
+ (WebCore::RenderScrollbarTheme::backButtonRect):
+ (WebCore::RenderScrollbarTheme::forwardButtonRect):
+ (WebCore::RenderScrollbarTheme::trackRect):
+ (WebCore::RenderScrollbarTheme::constrainTrackRectToTrackPieces):
+ (WebCore::RenderScrollbarTheme::paintScrollbarBackground):
+ (WebCore::RenderScrollbarTheme::paintTrackBackground):
+ (WebCore::RenderScrollbarTheme::paintTrackPiece):
+ (WebCore::RenderScrollbarTheme::paintButton):
+ (WebCore::RenderScrollbarTheme::paintThumb):
+ * rendering/RenderScrollbarTheme.h:
+ (WebCore::RenderScrollbarTheme::shouldCenterOnThumb):
+ (WebCore::RenderScrollbarTheme::registerScrollbar):
+ (WebCore::RenderScrollbarTheme::unregisterScrollbar):
+ (RenderScrollbarTheme):
+
+2012-03-01 Luke Macpherson <macpherson@chromium.org>
+
+ Implement CSSPropertyImageRendering in CSSStyleApplyProperty.
+ https://bugs.webkit.org/show_bug.cgi?id=79855
+
+ Reviewed by Eric Seidel.
+
+ No new tests / refactoring only.
+
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+
+2012-03-01 Alok Priyadarshi <alokp@chromium.org>
+
+ [chromium] Partial texture updates not happening with accelerated painting path
+ https://bugs.webkit.org/show_bug.cgi?id=80040
+
+ Reviewed by James Robinson.
+
+ The order of y-flip and clip-rect was opposite of what it should be.
+ The clip rect was not properly transformed to account for y-flip and hence clipping everything.
+
+ * platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:
+ (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):
+
+2012-03-01 Alexey Proskuryakov <ap@apple.com>
+
+ FileReader read speed is way too low
+ https://bugs.webkit.org/show_bug.cgi?id=77272
+
+ Reviewed by Oliver Hunt.
+
+ This brings performance to reasonable range, but certainly doesn't exhaust improvement opportunities.
+
+ * platform/network/BlobResourceHandle.cpp: Use a more appropriate block size. Performing
+ cross-thread messaging for every 1024 bytes is slow.
+
+2012-03-01 Dan Bernstein <mitz@apple.com>
+
+ ScrollView::setFrameRect() calls contentsResized() even when the frame size is unchanged
+ https://bugs.webkit.org/show_bug.cgi?id=80047
+
+ Reviewed by Anders Carlsson.
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::setFrameRect): Added a check that the new frame size differs from the
+ old one before calling contentsResized().
+
+2012-03-01 James Robinson <jamesr@chromium.org>
+
+ [chromium] Move pageScaleDirty logic from LayerChromium to GraphicsLayerChromium
+ https://bugs.webkit.org/show_bug.cgi?id=79714
+
+ Reviewed by Adrienne Walker.
+
+ When the page scale changes on a composited layer we need to invalidate all of the contents on the layer in
+ order to repaint them at the new scale. The sequence of calls we get make this a bit tricky, since we first
+ receive a page scale changed notification and then receive the new layer bounds. The solution is to defer the
+ invalidation until we have the new layer bounds, which landed in r99774.
+
+ This moves that logic from LayerChromium into GraphicsLayerChromium since IMO this is pretty particular to the
+ way WebCore is passing us invalidations and not something fundamental to the compositor.
+
+ * platform/graphics/chromium/GraphicsLayerChromium.cpp:
+ (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
+ (WebCore::GraphicsLayerChromium::setSize):
+ (WebCore::GraphicsLayerChromium::deviceOrPageScaleFactorChanged):
+ * platform/graphics/chromium/GraphicsLayerChromium.h:
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::LayerChromium):
+ (WebCore::LayerChromium::setBounds):
+ * platform/graphics/chromium/LayerChromium.h:
+ (LayerChromium):
+
+2012-03-01 Joe Thomas <joethomas@motorola.com>
+
+ :empty still applies to elements made non-empty via page dynamics.
+ https://bugs.webkit.org/show_bug.cgi?id=79734
+
+ Check for :empty style change should be made even if the RenderStyle for the element is NULL
+ as changes to the element's children can trigger a change in :empty state of the parent element.
+
+ Reviewed by Antti Koivisto.
+
+ Test: fast/selectors/empty-element-made-non-empty.html
+
+ * dom/Element.cpp:
+ (WebCore::checkForSiblingStyleChanges):
+
+2012-02-29 Nat Duca <nduca@chromium.org>
+
+ [chromium] Move context lost control code from CCSingleThreadProxy to CCLayerTreeHost
+ https://bugs.webkit.org/show_bug.cgi?id=79964
+
+ Reviewed by James Robinson.
+
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::initializeLayerRenderer):
+ (WebCore::CCLayerTreeHost::recreateContext):
+ (WebCore::CCLayerTreeHost::createContext):
+ (WebCore::CCLayerTreeHost::didLoseContext):
+ (WebCore::CCLayerTreeHost::compositeAndReadback):
+ (WebCore::CCLayerTreeHost::loseContext):
+ (WebCore::CCLayerTreeHost::updateLayers):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ (CCLayerTreeHostClient):
+ (CCLayerTreeHost):
+ * platform/graphics/chromium/cc/CCProxy.h:
+ (CCProxy):
+ * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
+ (WebCore::CCSingleThreadProxy::CCSingleThreadProxy):
+ (WebCore::CCSingleThreadProxy::compositeAndReadback):
+ (WebCore::CCSingleThreadProxy::initializeContext):
+ (WebCore::CCSingleThreadProxy::recreateContext):
+ (WebCore):
+ (WebCore::CCSingleThreadProxy::loseContext):
+ (WebCore::CCSingleThreadProxy::compositeImmediately):
+ (WebCore::CCSingleThreadProxy::doComposite):
+ * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
+ (CCSingleThreadProxy):
+ * platform/graphics/chromium/cc/CCThreadProxy.cpp:
+ (WebCore::CCThreadProxy::initializeContext):
+ (WebCore::CCThreadProxy::recreateContext):
+ (WebCore):
+ (WebCore::CCThreadProxy::loseContext):
+ * platform/graphics/chromium/cc/CCThreadProxy.h:
+ (CCThreadProxy):
+
+2012-03-01 Abhishek Arya <inferno@chromium.org>
+
+ Prevent layout root to remain set on renderers getting destroyed.
+ https://bugs.webkit.org/show_bug.cgi?id=79953
+
+ Reviewed by Eric Seidel.
+
+ Implement Julien Chaffraix's idea.
+
+ * page/FrameView.h:
+ (WebCore::FrameView::clearLayoutRoot): helper to clear layout root.
+ * rendering/RenderObject.cpp:
+ (WebCore::clearLayoutRootIfNeeded): if we know we are going
+ away and we are the view's layout root, then we need to reset the layout
+ root to prevent being used.
+ (WebCore):
+ (WebCore::RenderObject::willBeDestroyed): call clearLayoutRootIfNeeded at end.
+
+2012-03-01 Kangil Han <kangil.han@samsung.com>
+
+ [DRT] Remove all PlainTextController usages in existing tests by adding internal API
+ https://bugs.webkit.org/show_bug.cgi?id=78570
+
+ Reviewed by Hajime Morita.
+
+ This patch will remove all PlainTextController usages
+ in existing DRT tests by adding internal API to WebCore/testing/Internals
+
+ Changed editing/text-iterator/script-tests/basic-iteration.js to use internals.rangeAsText
+
+ * testing/Internals.cpp:
+ (WebCore::Internals::rangeAsText):
+ (WebCore):
+ * testing/Internals.h:
+ (Internals):
+ * testing/Internals.idl:
+
+2012-03-01 Adam Barth <abarth@webkit.org>
+
+ DOMWindow shouldn't have any INDEXED_DATABASE ifdefs
+ https://bugs.webkit.org/show_bug.cgi?id=80013
+
+ Reviewed by Kentaro Hara.
+
+ Before this patch, DOMWindow still knew about IDB because of the
+ database factory. This patch moves the factory to
+ DOMWindowIndexedDatabase.
+
+ * Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
+ (WebCore::DOMWindowIndexedDatabase::DOMWindowIndexedDatabase):
+ (WebCore::DOMWindowIndexedDatabase::from):
+ (WebCore):
+ (WebCore::DOMWindowIndexedDatabase::disconnectFrame):
+ (WebCore::DOMWindowIndexedDatabase::webkitIndexedDB):
+ * Modules/indexeddb/DOMWindowIndexedDatabase.h:
+ (DOMWindowIndexedDatabase):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::~DOMWindow):
+ (WebCore::DOMWindow::clear):
+ (WebCore):
+ * page/DOMWindow.h:
+ (DOMWindow):
+
+2012-03-01 Anders Carlsson <andersca@apple.com>
+
+ Glitchy scrolling on pages where the scroll layer needs to be updated on the main thread
+ https://bugs.webkit.org/show_bug.cgi?id=80038
+ <rdar://problem/10933831>
+
+ Reviewed by Simon Fraser.
+
+ When we need to update the scroll layer position on the main thread, we need to cache the
+ scroll position we sent to the main thread and assume that that's the correct scroll position.
+
+ * page/scrolling/mac/ScrollingTreeNodeMac.h:
+ (ScrollingTreeNodeMac):
+ * page/scrolling/mac/ScrollingTreeNodeMac.mm:
+ (WebCore::ScrollingTreeNodeMac::update):
+ (WebCore::ScrollingTreeNodeMac::setScrollPosition):
+ (WebCore::ScrollingTreeNodeMac::scrollPosition):
+
+2012-03-01 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Unreviewed, rolling out r109367.
+ http://trac.webkit.org/changeset/109367
+ https://bugs.webkit.org/show_bug.cgi?id=75568
+
+ Some tests started to fail in a non obvious way.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::updateScrollInfoAfterLayout):
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::paint):
+ (WebCore::RenderBlock::isPointInOverflowControl):
+ * rendering/RenderBlock.h:
+ (RenderBlock):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::willBeDestroyed):
+ (WebCore::RenderBox::styleDidChange):
+ (WebCore::RenderBox::scrollWidth):
+ (WebCore::RenderBox::scrollHeight):
+ (WebCore::RenderBox::scrollLeft):
+ (WebCore::RenderBox::scrollTop):
+ (WebCore::RenderBox::setScrollLeft):
+ (WebCore::RenderBox::setScrollTop):
+ (WebCore::RenderBox::includeVerticalScrollbarSize):
+ (WebCore::RenderBox::includeHorizontalScrollbarSize):
+ (WebCore::RenderBox::scrolledContentOffset):
+ (WebCore::RenderBox::cachedSizeForOverflowClip):
+ (WebCore::RenderBox::pushContentsClip):
+ (WebCore::RenderBox::popContentsClip):
+ (WebCore::RenderBox::addLayoutOverflow):
+ * rendering/RenderBox.h:
+ (RenderBox):
+ (WebCore):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore):
+ (WebCore::RenderBoxModelObject::styleDidChange):
+ * rendering/RenderBoxModelObject.h:
+ (WebCore::RenderBoxModelObject::requiresLayer):
+ (RenderBoxModelObject):
+ * rendering/RenderDeprecatedFlexibleBox.cpp:
+ (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
+ * rendering/RenderTableRow.h:
+ (WebCore::RenderTableRow::requiresLayer):
+
+2012-03-01 Kenichi Ishibashi <bashi@chromium.org>
+
+ REGRESSION: Outlook 2007 doesn't display fonts correctly on emails composed by WebKit
+ https://bugs.webkit.org/show_bug.cgi?id=79448
+
+ Reviewed by Ryosuke Niwa.
+
+ Don't produce single quotes around face attribute of font elements.
+
+ Test: editing/style/font-face-unquote.html
+
+ * editing/EditingStyle.cpp:
+ (WebCore::StyleChange::extractTextStyles): Remove single quotes from m_applyFontFace.
+
+2012-03-01 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Kevin Decker.
+
+ Part of https://bugs.webkit.org/show_bug.cgi?id=79705
+
+ Here's some of that tweaking promised in the comment. Adjusting
+ gMaximumUnpaintedAreaRatio down a bit.
+ * page/Page.cpp:
+ (WebCore):
+
+2012-03-01 Levi Weintraub <leviw@chromium.org>
+
+ Add roundToInt method for LayoutUnits
+ https://bugs.webkit.org/show_bug.cgi?id=79283
+
+ Reviewed by Eric Seidel.
+
+ Adding a roundToInt method that rounds a LayoutUnit to the nearest integer. This
+ only has an effect once we switch to sub-pixel positioning. Points and offsets
+ are rounded for painting and hit testing.
+
+ No new tests. No change in behavior.
+
+ * dom/MouseRelatedEvent.cpp:
+ (WebCore::MouseRelatedEvent::offsetX):
+ (WebCore::MouseRelatedEvent::offsetY):
+ * html/shadow/MediaControlElements.cpp:
+ (WebCore::MediaControlTextTrackContainerElement::updateSizes):
+ * rendering/LayoutState.cpp:
+ (WebCore::LayoutState::computeLineGridPaginationOrigin):
+ * rendering/LayoutTypes.h:
+ (WebCore::roundToInt): Stub until we switch to sub-pixel LayoutUnits.
+ (WebCore):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::pageLogicalTopForOffset):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::pixelSnappedLogicalLeftOffsetForLine): Correcting to use the
+ pixel snapped methods on FloatingObjects and removing the fixme.
+ (WebCore::RenderBlock::pixelSnappedLogicalTopForFloat): Ditto.
+ (WebCore::RenderBlock::pixelSnappedLogicalBottomForFloat): Ditto.
+ (WebCore::RenderBlock::pixelSnappedLogicalLeftForFloat): Ditto.
+ (WebCore::RenderBlock::pixelSnappedLogicalRightForFloat): Ditto.
+ (WebCore::RenderBlock::pixelSnappedLogicalWidthForFloat): Ditto.
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::LineWidth::updateAvailableWidth):
+ (WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Using
+ pixelSnappedLogicalLeft/RightOffsetForLine convenience methods for line layout. When
+ we switch to sub-pixel positioning, we still pixel snap blocks before painting them,
+ but text is rendered using floats. We need to ensure the text is laid out using the
+ actual pixel width of the containing block to avoid bleeding out of the block.
+ * rendering/RenderBoxModelObject.h: Moving the fixme to pixelSnappedWidth/Height and
+ adding the necessary rounding for Left/Top.
+ (WebCore::RenderBoxModelObject::pixelSnappedOffsetLeft):
+ (WebCore::RenderBoxModelObject::pixelSnappedOffsetTop):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::scrollRectToVisible):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::scrollHeight): Rounding the height for scrollHeight. Scrolling
+ always uses rounded values.
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::localToParentTransform): Similar to the line box tree, since
+ SVG renders using floats, we need to start with pixel snapped values from the render
+ tree or we'll end up with the contents not properly aligned to the rest of the page.
+ * rendering/svg/SVGRenderSupport.cpp:
+ (WebCore::SVGRenderSupport::prepareToRenderSVGContent):
+
+2012-03-01 Pavel Feldman <pfeldman@chromium.org>
+
+ Web Inspector: arrays in object properties sections do not scale.
+ https://bugs.webkit.org/show_bug.cgi?id=64596
+
+ Reviewed by Vsevolod Vlasov.
+
+ Test: inspector/console/console-big-array.html
+
+ * inspector/front-end/ConsoleMessage.js:
+ (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsArray):
+ (WebInspector.ConsoleMessageImpl.prototype._printArray):
+ * inspector/front-end/ObjectPropertiesSection.js:
+ (WebInspector.ObjectPropertiesSection.prototype.updateProperties):
+ (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate.callback):
+ (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
+ (WebInspector.ObjectPropertyTreeElement.prototype.startEditing):
+ (WebInspector.ArrayGroupingTreeElement):
+ (WebInspector.ArrayGroupingTreeElement.populateAsArray):
+ (WebInspector.ArrayGroupingTreeElement._populate.appendElement):
+ (WebInspector.ArrayGroupingTreeElement._populate):
+ (WebInspector.ArrayGroupingTreeElement.prototype.onpopulate):
+ * inspector/front-end/RemoteObject.js:
+ (WebInspector.RemoteObject.prototype.release):
+ (WebInspector.RemoteObject.prototype.arrayLength):
+ (WebInspector.LocalJSONObject.prototype.isError):
+ (WebInspector.LocalJSONObject.prototype.arrayLength):
+ * inspector/front-end/ScopeChainSidebarPane.js:
+ (WebInspector.ScopeVariableTreeElement.prototype.get propertyPath):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertyTreeElement.prototype._mouseDown):
+ * inspector/front-end/inspector.css:
+ (.console-formatted-object, .console-formatted-node, .console-formatted-array):
+ (.console-formatted-object .section, .console-formatted-node .section, .console-formatted-array .section):
+
+2012-03-01 Adam Barth <abarth@webkit.org>
+
+ Unreviewed, rolling out r109336.
+ http://trac.webkit.org/changeset/109336
+ https://bugs.webkit.org/show_bug.cgi?id=80013
+
+ It's causing some crashes
+
+ * Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
+ (WebCore::DOMWindowIndexedDatabase::DOMWindowIndexedDatabase):
+ (WebCore::DOMWindowIndexedDatabase::webkitIndexedDB):
+ * Modules/indexeddb/DOMWindowIndexedDatabase.h:
+ (DOMWindowIndexedDatabase):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::~DOMWindow):
+ (WebCore::DOMWindow::clear):
+ (WebCore):
+ (WebCore::DOMWindow::setIDBFactory):
+ * page/DOMWindow.h:
+ (DOMWindow):
+ (WebCore::DOMWindow::idbFactory):
+
+2012-03-01 Tom Sepez <tsepez@chromium.org>
+
+ Move m_frame protector from FrameLoader::changeLocation to FrameLoader::urlSelected
+ https://bugs.webkit.org/show_bug.cgi?id=79882
+
+ Reviewed by Adam Barth.
+
+ Test: fast/frames/url-selected-crash.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::changeLocation):
+ (WebCore::FrameLoader::urlSelected):
+
+2012-03-01 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Lazily allocate overflow: hidden layers if we have overflowing content
+ https://bugs.webkit.org/show_bug.cgi?id=75568
+
+ Reviewed by David Hyatt.
+
+ Change covered by the existing tests and the tons of rebaselines.
+
+ This change makes us lazily allocate our RenderLayer for overflow: hidden layers only.
+
+ Apart from saving some memory, it will also speed up the rendering as we don't need to
+ go through the layer's machinery when painting and hit testing.
+
+ On http://dglazkov.github.com/performance-tests/biggrid.html benchmark, this puts the
+ overflow: hidden case in par with the overflow: visible case when scrolling that is a
+ very-smooth scrolling vs a jerky one currently (mostly due to the painting speedup).
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::updateScrollInfoAfterLayout):
+ Changed this method to update our size cache if needed.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::paint):
+ (WebCore::RenderBlock::isPointInOverflowControl):
+ * rendering/RenderBlock.h:
+ (RenderBlock):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::styleDidChange):
+ (WebCore::RenderBox::scrollWidth):
+ (WebCore::RenderBox::scrollHeight):
+ (WebCore::RenderBox::scrollLeft):
+ (WebCore::RenderBox::scrollTop):
+ (WebCore::RenderBox::setScrollLeft):
+ (WebCore::RenderBox::setScrollTop):
+ (WebCore::RenderBox::includeVerticalScrollbarSize):
+ (WebCore::RenderBox::includeHorizontalScrollbarSize):
+ (WebCore::RenderBox::pushContentsClip):
+ (WebCore::RenderBox::popContentsClip):
+ (WebCore::RenderBox::addLayoutOverflow):
+ Added layer() check to the previous call sites.
+
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::ensureLayer):
+ Added this function to create and add a new layer.
+
+ (WebCore::RenderBoxModelObject::willBeDestroyed):
+ (WebCore):
+ (WebCore::RenderBoxModelObject::styleDidChange):
+ Patched those method to handle updating / removing
+ cached size entries.
+
+ (WebCore::cachedSizeForOverflowClipMap):
+ (WebCore::RenderBoxModelObject::cachedSizeForOverflowClip):
+ (WebCore::RenderBoxModelObject::updateCachedSizeForOverflowClip):
+ (WebCore::RenderBoxModelObject::clearCachedSizeForOverflowClip):
+ This logic stores the size information for later repainting.
+ It is in practice replicating what RenderLayer is doing.
+
+ * rendering/RenderBoxModelObject.h:
+ (WebCore::RenderBoxModelObject::requiresLayer):
+ Updated to call requiresLayerForOverflowClip.
+
+ (WebCore::RenderBoxModelObject::requiresLayerForOverflowClip):
+ Added this method to check if we can lazily allocate the layer.
+
+ * rendering/RenderDeprecatedFlexibleBox.cpp:
+ (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
+ Removed some checks as they are part of updateScrollInfoAfterLayout.
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::scrolledContentOffset):
+ Added a layer() check.
+
+ * rendering/RenderTableRow.h:
+ (RenderTableRow):
+ Added a comment about why we need a layout for table rows.
+
+2012-03-01 Abhishek Arya <inferno@chromium.org>
+
+ Protect functions using two container node function, each of which can fire mutation events.
+ https://bugs.webkit.org/show_bug.cgi?id=78397
+
+ Reviewed by Ryosuke Niwa.
+
+ Tests: fast/dom/document-set-title-mutation-crash.html
+ fast/dom/option-text-mutation-crash.html
+
+ * dom/Node.cpp:
+ (WebCore::Node::setTextContent):
+ * dom/Text.cpp:
+ (WebCore::Text::replaceWholeText):
+ * editing/markup.cpp:
+ (WebCore::trimFragment):
+ (WebCore::replaceChildrenWithFragment):
+ (WebCore::replaceChildrenWithText):
+ * html/HTMLOptionElement.cpp:
+ (WebCore::HTMLOptionElement::setText):
+ * html/HTMLScriptElement.cpp:
+ (WebCore::HTMLScriptElement::setText):
+ * html/HTMLTableElement.cpp:
+ (WebCore::HTMLTableElement::insertRow):
+ * html/HTMLTextAreaElement.cpp:
+ (WebCore::HTMLTextAreaElement::setDefaultValue):
+ * html/HTMLTitleElement.cpp:
+ (WebCore::HTMLTitleElement::setText):
+
+2012-03-01 Alexey Proskuryakov <ap@apple.com>
+
+ Some trivial file stream cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=79955
+
+ Reviewed by Sam Weinig.
+
+ No change in functionality.
+
+ * fileapi/FileStreamProxy.cpp: Tweaked comment, and added copyright for earlier changes.
+
+ * fileapi/FileStreamProxy.h: Added a FIXME telling that this should be in platform.
+
+ * platform/AsyncFileStream.h: Tweaked includes and added a FIXME about this to stop being
+ a subclass.
+
+ * platform/FileStreamClient.h: Removed obvious comments, and added ones explaing in-band
+ error signals.
+
+ * platform/network/BlobResourceHandle.cpp: Removed an include outside of platform, and an
+ unused constant.
+
+2012-03-01 Shinya Kawanaka <shinyak@chromium.org>
+
+ Appending ShadowRoot into an element should not cause crash.
+ https://bugs.webkit.org/show_bug.cgi?id=79620
+
+ Reviewed by Dimitri Glazkov.
+
+ We should treat ShadowRoot as a document fragment.
+
+ Test: fast/dom/shadow/shadow-root-append.html
+
+ * dom/ContainerNode.cpp:
+ (WebCore::collectTargetNodes):
+
+2012-03-01 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: use live location to update console message bubbles.
+ https://bugs.webkit.org/show_bug.cgi?id=80023
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel):
+ (WebInspector.DebuggerPresentationModel.prototype._uiSourceCodeListChanged):
+ (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
+ (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessageToScript.updateLocation):
+ (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessageToScript):
+ (WebInspector.DebuggerPresentationModel.prototype._addPendingConsoleMessage):
+ (WebInspector.DebuggerPresentationModel.prototype._addPendingConsoleMessagesToScript):
+ (WebInspector.DebuggerPresentationModel.prototype._consoleCleared):
+ (WebInspector.DebuggerPresentationModel.prototype.messagesForUISourceCode):
+ (WebInspector.DebuggerPresentationModel.prototype._scriptForURLAndLocation):
+ (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
+ * inspector/front-end/RawSourceCode.js:
+ (WebInspector.RawSourceCode):
+
+2012-03-01 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: [InspectorIndexedDB] Show tooltips with IndexedDB objects meta information
+ https://bugs.webkit.org/show_bug.cgi?id=80022
+
+ Reviewed by Pavel Feldman.
+
+ Added tooltips with meta information for IndexedDB databases, object stores and indexes.
+ Added keyPath: prefix to key columns in IndexedDB data grid.
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/IndexedDBViews.js:
+ (WebInspector.IDBDataView.prototype._createDataGrid):
+ (WebInspector.IDBDataView.prototype._keyPathHeader):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.IDBDatabaseTreeElement.prototype.update):
+ (WebInspector.IDBDatabaseTreeElement.prototype._updateTooltip):
+ (WebInspector.IDBObjectStoreTreeElement.prototype.update):
+ (WebInspector.IDBObjectStoreTreeElement.prototype._updateTooltip):
+ (WebInspector.IDBIndexTreeElement.prototype.update):
+ (WebInspector.IDBIndexTreeElement.prototype._updateTooltip):
+
+2012-03-01 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: hide color picker on Esc and Enter.
+ https://bugs.webkit.org/show_bug.cgi?id=79915
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/Spectrum.js:
+ (WebInspector.Spectrum.prototype.reposition):
+ (WebInspector.Spectrum.prototype.hide):
+ (WebInspector.Spectrum.prototype._onKeyDown):
+
+2012-03-01 Huang Dongsung <luxtella@company100.net>
+
+ [Qt] Fixed incorrect size pixmap creation for a new transparency layer.
+ https://bugs.webkit.org/show_bug.cgi?id=79658
+
+ If QPainter does not have clipping, beginPlatformTransparencyLayer can create
+ wrong size pixmap, so it causes incorrect rendering.
+
+ Reviewed by Simon Hausmann.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::beginPlatformTransparencyLayer):
+
+2012-03-01 Simon Hausmann <simon.hausmann@nokia.com>
+
+ [Qt] Remove dead style option code.
+ https://bugs.webkit.org/show_bug.cgi?id=80017
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ QtStyleOptionWebComboBox provides functionality (bool multiple()) that
+ is not called from anywhere (and the base class does not have it as a
+ virtual function).
+
+ * Target.pri:
+ * platform/qt/QtStyleOptionWebComboBox.h: Removed.
+ * platform/qt/RenderThemeQStyle.cpp:
+ (WebCore::RenderThemeQStyle::paintMenuList):
+ (WebCore::RenderThemeQStyle::paintMenuListButton):
+
+2012-03-01 Stephen Chenney <schenney@chromium.org>
+
+ Crash in WebCore::SVGDocumentExtensions::removeAnimationElementFromTarget
+ https://bugs.webkit.org/show_bug.cgi?id=79831
+
+ Reviewed by Eric Seidel.
+
+ Out-of-order operations in the SVGSMILElement::removedFromDocument
+ method caused its target to be removed and then re-added due to a
+ later call. This led to the target being set on the animation while
+ the target element itself was unaware. At deletion time, this caused a
+ crash (or assert in debug builds). Thanks to Abhishek Arya for help
+ with the layout test.
+
+ Test: svg/animations/smil-element-target-crash-main.html
+
+ * svg/animation/SVGSMILElement.cpp:
+ (WebCore::SVGSMILElement::removedFromDocument):
+
+2012-03-01 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: move heap snapshot nodes data to external array.
+ https://bugs.webkit.org/show_bug.cgi?id=79911
+
+ Reviewed by Vsevolod Vlasov.
+
+ Tests:
+ heap-shapshot.html
+ heap-shapshot-loader.html
+
+ * inspector/front-end/HeapSnapshot.js:
+ (WebInspector.Int32Array):
+ (WebInspector.Int32Array.prototype.get array):
+ (WebInspector.HeapSnapshotLoader.prototype._parseNodes):
+ (WebInspector.HeapSnapshotLoader.prototype.pushJSONChunk):
+ (WebInspector.HeapSnapshot):
+ (WebInspector.HeapSnapshot.prototype._init):
+
+2012-03-01 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Introduce SMIL overrideStyle, to make SVG stop mutating CSS styles directly
+ https://bugs.webkit.org/show_bug.cgi?id=79790
+
+ Reviewed by Zoltan Herczeg.
+
+ Next step towards enabling animVal support for XML attribute animations.
+ When SVG CSS properties are animated using SMIL, we currently mutate
+ the target elements style, and have to keep a baseValue around as String
+ to be able to recover from the DOM mutations at the end, if fill!="freeze".
+
+ The approach required by SMIL is to keep around an override style declaration
+ set and apply it right after the inline style declarations. Implement that
+ finally, to avoid mutating styles directly.
+
+ Test: svg/animations/attributeTypes.html
+
+ * css/CSSStyleSelector.cpp: Model "SMIL animation style" applying just like "inline style" declarations.
+ (WebCore::CSSStyleSelector::addElementStyleProperties): Refactored common code from matchAllRules().
+ (WebCore::CSSStyleSelector::matchAllRules): Apply "SMIL animation style" after "inline style" declarations, as specified in SMIL2.
+ * css/CSSStyleSelector.h: Add new addElementStyleProperties() helper.
+ * svg/SVGAnimateElement.cpp: Keep track of animation state, if it's about to end, clear "SMIL animation style" upon next applyResultToTarget() call.
+ (WebCore::SVGAnimateElement::SVGAnimateElement):
+ (WebCore::SVGAnimateElement::applyResultsToTarget): Reset the CSS property we're animating int the "SMIL animation style", after animation ends.
+ (Instead of resetting target->style() properties to the old baseValue, as we used to do).
+ (WebCore::SVGAnimateElement::endedActiveInterval): Set m_aboutToStopAnimation to true, so next call to applyResultsToTarget() knows the animation ends.
+ * svg/SVGAnimateElement.h: Store bool m_aboutToSTopAnimation;
+ * svg/SVGAnimationElement.cpp:
+ (WebCore::setTargetAttributeAnimatedCSSValue):
+ (WebCore::setTargetAttributeAnimatedXMLValue):
+ Refactored both of these methods from setTargetAttributeAnimatedValue().
+ Changed the CSS part, to apply property changes to the "SMIL animation style" instead of the regular StylePropertySet.
+ (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue): Refactored code, use shouldApplyAnimation() to determine whether this animation should run.
+ (WebCore::SVGAnimationElement::resetAnimationState): New helper calling setTargetAttributeAnimatedValue with a null-string for CSS attributes, when the animation ends.
+ This is used to detect that the CSS property should be removed from the "SMIL animation style".
+ (WebCore::SVGAnimationElement::shouldApplyAnimation): Refactored from existing code, and make it more obvious how attributeType influences the animation, all according to SVG 1.1/SMIL2.
+ * svg/SVGAnimationElement.h:
+ * svg/SVGElement.cpp: Manage the "SMIL animation style", in SVGElementRareData, if needed. Only gets created if SMIL animations on CSS properties run.
+ (WebCore::SVGElement::~SVGElement): Destroy SMIL animation style, upon destruction.
+ (WebCore::SVGElement::animatedSMILStyleProperties): Returns the StylePropertySet for the "SMIL animation style", if it's available.
+ (WebCore::SVGElement::ensureAnimatedSMILStyleProperties): Enforces creating the StylePropertySet for the "SMIL animation style".
+ * svg/SVGElement.h: Expose new methods.
+ * svg/SVGElementRareData.h: Stores the "SMIL animation style", actual managment is done by SVGElement, if needed.
+ (WebCore::SVGElementRareData::animatedSMILStyleProperties): Retrieve it.
+ (WebCore::SVGElementRareData::ensureAnimatedSMILStyleProperties): Create it.
+ (WebCore::SVGElementRareData::destroyAnimatedSMILStyleProperties): Destroy it.
+ * svg/animation/SVGSMILElement.h: Make endedActiveInterval() virtual again, its needed by SVGAnimateElement now.
+
+2012-03-01 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Unreviewed, rolling out r109255.
+ http://trac.webkit.org/changeset/109255
+ https://bugs.webkit.org/show_bug.cgi?id=79932
+
+ Breaks rounded rects with dashed strokes in SVG
+
+ * WebCore.exp.in:
+ * platform/graphics/Path.cpp:
+ (WebCore::Path::addRoundedRect):
+ * platform/graphics/Path.h:
+ (Path):
+ * platform/graphics/cg/PathCG.cpp:
+ * platform/mac/WebCoreSystemInterface.h:
+ * platform/mac/WebCoreSystemInterface.mm:
+
+2012-03-01 Adam Barth <abarth@webkit.org>
+
+ DOMWindow shouldn't have any INDEXED_DATABASE ifdefs
+ https://bugs.webkit.org/show_bug.cgi?id=80013
+
+ Reviewed by Kentaro Hara.
+
+ Before this patch, DOMWindow still knew about IDB because of the
+ database factory. This patch moves the factory to
+ DOMWindowIndexedDatabase.
+
+ * Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
+ (WebCore::DOMWindowIndexedDatabase::DOMWindowIndexedDatabase):
+ (WebCore::DOMWindowIndexedDatabase::from):
+ (WebCore):
+ (WebCore::DOMWindowIndexedDatabase::disconnectFrame):
+ (WebCore::DOMWindowIndexedDatabase::webkitIndexedDB):
+ * Modules/indexeddb/DOMWindowIndexedDatabase.h:
+ (DOMWindowIndexedDatabase):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::~DOMWindow):
+ (WebCore::DOMWindow::clear):
+ (WebCore):
+ * page/DOMWindow.h:
+ (DOMWindow):
+
+2012-03-01 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ SVG <use> element allows invalid contents
+ https://bugs.webkit.org/show_bug.cgi?id=77764
+
+ Reviewed by Zoltan Herczeg.
+
+ Unbreak the world after r109299 - dozens of SVGUseElement tests fail in trunk because:
+ - text nodes weren't allowed in SVG shadow subtrees
+ - tagName matching ignores any prefixes, thus svg:circle fails to identify as SVGCircleElement
+
+ * svg/SVGUseElement.cpp:
+ (WebCore::isDisallowedElement):
+
+2012-03-01 Luke Macpherson <macpherson@chromium.org>
+
+ Handle CSSPropertyWebkitHyphens in CSSStyleApplyProperty.
+ https://bugs.webkit.org/show_bug.cgi?id=80004
+
+ Reviewed by Eric Seidel.
+
+ No new tests / refactoring only.
+
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+
+2012-02-29 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: abstract out the common pattern of creating auto-updated locations.
+ https://bugs.webkit.org/show_bug.cgi?id=79906
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.PresentationCallFrame.prototype.uiLocation):
+ (WebInspector.DebuggerPresentationModel.CallFramePlacard):
+ (WebInspector.DebuggerPresentationModel.CallFramePlacard.prototype.discard):
+ (WebInspector.DebuggerPresentationModel.CallFramePlacard.prototype._update):
+ (WebInspector.DebuggerPresentationModel.LinkifierFormatter.prototype.formatRawSourceCodeAnchor):
+ (WebInspector.DebuggerPresentationModel.DefaultLinkifierFormatter.prototype.formatRawSourceCodeAnchor):
+ (WebInspector.DebuggerPresentationModel.Linkifier):
+ (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyRawSourceCode):
+ (WebInspector.DebuggerPresentationModel.Linkifier.prototype.reset):
+ (WebInspector.DebuggerPresentationModel.Linkifier.prototype._updateAnchor):
+ * inspector/front-end/RawSourceCode.js:
+ (WebInspector.RawSourceCode.prototype.createLiveLocation):
+ (WebInspector.RawSourceCode.LiveLocation):
+ (WebInspector.RawSourceCode.LiveLocation.prototype.init):
+ (WebInspector.RawSourceCode.LiveLocation.prototype.dispose):
+ (WebInspector.RawSourceCode.LiveLocation.prototype._update):
+
+2012-03-01 Kenneth Rohde Christiansen <kenneth@webkit.org>
+
+ Make the tiling code slightly smarter
+ https://bugs.webkit.org/show_bug.cgi?id=80015
+
+ Reviewed by Simon Hausmann.
+
+ Avoid doing the same tranformations all over in each call to
+ tileRectForCoordinate.
+
+ Do not resize tiles and then drop them because they are not out of
+ the keep rect; instead drop before resizing.
+
+ Rename dropTilesOutsideRect to setKeepRect as it now stored the keep
+ rect. This is used to avoid unneeded iteration of all tiles for
+ invalidates outside the keep rect.
+
+ * platform/graphics/TiledBackingStore.cpp:
+ (WebCore::TiledBackingStore::invalidate):
+ (WebCore):
+ (WebCore::TiledBackingStore::commitScaleChange):
+ (WebCore::TiledBackingStore::coverageRatio):
+ (WebCore::TiledBackingStore::createTiles):
+ (WebCore::TiledBackingStore::adjustForContentsRect):
+ (WebCore::TiledBackingStore::resizeEdgeTiles):
+ (WebCore::TiledBackingStore::setKeepRect):
+ (WebCore::TiledBackingStore::removeAllNonVisibleTiles):
+ (WebCore::TiledBackingStore::tileRectForCoordinate):
+ (WebCore::TiledBackingStore::setSupportsAlpha):
+ * platform/graphics/TiledBackingStore.h:
+ (TiledBackingStore):
+
+2012-02-29 Kinuko Yasuda <kinuko@chromium.org>
+
+ Use the new createSnapshotFileAndReadMetadata API for FileEntry.file()
+ https://bugs.webkit.org/show_bug.cgi?id=79928
+
+ Reviewed by David Levin.
+
+ No new tests: no functionality changes.
+ fast/filesystem/ tests should use the new code (they should pass once
+ the corresponding chromium change is rolled in).
+
+ * fileapi/DOMFileSystem.cpp:
+ (WebCore::DOMFileSystem::createFile): Updated to use the new API.
+ * fileapi/DOMFileSystemSync.cpp:
+ (WebCore::DOMFileSystemSync::createFile): Updated to use the new API.
+ * fileapi/FileSystemCallbacks.cpp:
+ * fileapi/FileSystemCallbacks.h:
+ (FileSystemCallbacksBase):
+ * platform/AsyncFileSystem.h:
+ (AsyncFileSystem):
+ * platform/AsyncFileSystemCallbacks.h: Added default implementation (which just calls ASSERT_NOTREACHED()) so that subclasses can focus only on the callback methods that they're interested in.
+
+2012-02-29 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: add UISourceCode.isEditable property.
+ https://bugs.webkit.org/show_bug.cgi?id=79909
+
+ Reviewed by Vsevolod Vlasov.
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.prototype.canEditScriptSource):
+ * inspector/front-end/RawSourceCode.js:
+ (WebInspector.RawSourceCode.prototype._createUISourceCode):
+ * inspector/front-end/UISourceCode.js:
+ (WebInspector.UISourceCode):
+
+2012-02-29 Shinya Kawanaka <shinyak@chromium.org>
+
+ Fallback elements in non-youngest shadow tree should not be rendered.
+ https://bugs.webkit.org/show_bug.cgi?id=80002
+
+ Reviewed by Hajime Morita.
+
+ Fallback elements in non-youngest shadow tree should not be rendered, so its phase should be
+ AttachingNotDistributed instead of AttachingFallbacked.
+
+ Tests: multiple-shadowroot-rendering.html covers this patch.
+
+ * dom/NodeRenderingContext.cpp:
+ (WebCore::NodeRenderingContext::NodeRenderingContext):
+
+2012-02-29 Adam Barth <abarth@webkit.org>
+
+ ScriptExecutionContext has too many ifdef ENABLE(SQL_DATABASE)
+ https://bugs.webkit.org/show_bug.cgi?id=79633
+
+ Reviewed by Eric Seidel.
+
+ This class creates a DatabaseContext object to supplement the
+ ScriptExecutionContext with database-specific information. This new
+ object lets us remove a bunch of database-specific (and ifdefed) logic
+ from ScriptExecutionContext.(cpp|h).
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * Target.pri:
+ * WebCore.exp.in:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/ScriptExecutionContext.cpp:
+ (WebCore::ScriptExecutionContext::ScriptExecutionContext):
+ (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
+ (WebCore):
+ * dom/ScriptExecutionContext.h:
+ (WebCore):
+ (ScriptExecutionContext):
+ * history/PageCache.cpp:
+ (WebCore::logCanCacheFrameDecision):
+ (WebCore::PageCache::canCachePageContainingThisFrame):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::stopLoading):
+ * platform/Supplementable.h:
+ (WebCore::Supplementable::provideSupplement):
+ (WebCore::Supplementable::requireSupplement):
+ (Supplementable):
+ * storage/AbstractDatabase.cpp:
+ (WebCore::AbstractDatabase::AbstractDatabase):
+ * storage/AbstractDatabase.h:
+ (WebCore):
+ (WebCore::AbstractDatabase::databaseContext):
+ (AbstractDatabase):
+ * storage/Database.cpp:
+ (WebCore::Database::openDatabase):
+ (WebCore::Database::Database):
+ (WebCore::Database::openAndVerifyVersion):
+ (WebCore::Database::markAsDeletedAndClose):
+ (WebCore::Database::close):
+ (WebCore::Database::closeImmediately):
+ (WebCore::Database::performOpenAndVerify):
+ (WebCore::Database::scheduleTransaction):
+ (WebCore::Database::scheduleTransactionStep):
+ (WebCore::Database::transactionClient):
+ (WebCore::Database::transactionCoordinator):
+ (WebCore::Database::tableNames):
+ (WebCore::Database::securityOrigin):
+ * storage/DatabaseContext.cpp: Added.
+ (WebCore):
+ (WebCore::existingDatabaseContextFrom):
+ (WebCore::DatabaseContext::DatabaseContext):
+ (WebCore::DatabaseContext::~DatabaseContext):
+ (WebCore::DatabaseContext::from):
+ (WebCore::DatabaseContext::databaseThread):
+ (WebCore::DatabaseContext::hasOpenDatabases):
+ (WebCore::DatabaseContext::stopDatabases):
+ * storage/DatabaseContext.h: Added.
+ (WebCore):
+ (DatabaseContext):
+ (WebCore::DatabaseContext::setHasOpenDatabases):
+ * storage/SQLTransaction.cpp:
+ (WebCore::SQLTransaction::checkAndHandleClosedOrInterruptedDatabase):
+ (WebCore::SQLTransaction::notifyDatabaseThreadIsShuttingDown):
+ * workers/WorkerThread.cpp:
+ (WebCore::WorkerThreadShutdownStartTask::performTask):
+
+2012-02-29 Shinya Kawanaka <shinyak@chromium.org>
+
+ Refactoring: HTMLContentSelector should be InsertionPoint-aware.
+ https://bugs.webkit.org/show_bug.cgi?id=79901
+
+ Reviewed by Hajime Morita.
+
+ ContentSelectorQuery took HTMLContentElement as argument, but patch changes it to take InsertionPoint instead.
+ If InsertionPoint is not HTMLContentElement, ContentSelectorQuery will selects the rest of light children.
+
+ Now InsertionPoint has pure virtual method 'select'. <shadow> will implement this as a method returning empty string.
+
+ * dom/ShadowRoot.cpp:
+ (WebCore::ShadowRoot::hasInsertionPoint):
+ * dom/ShadowRoot.h:
+ (ShadowRoot):
+ * dom/ShadowTree.cpp:
+ (WebCore::ShadowTree::needsReattachHostChildrenAndShadow):
+ (WebCore::ShadowTree::hostChildrenChanged):
+ * html/shadow/ContentSelectorQuery.cpp:
+ (WebCore::ContentSelectorQuery::ContentSelectorQuery):
+ (WebCore::ContentSelectorQuery::matches):
+ * html/shadow/ContentSelectorQuery.h:
+ (WebCore):
+ (ContentSelectorQuery):
+ * html/shadow/HTMLContentElement.cpp:
+ (WebCore::HTMLContentElement::detach):
+ * html/shadow/HTMLContentElement.h:
+ (WebCore::toHTMLContentElement):
+ (WebCore):
+ * html/shadow/HTMLContentSelector.cpp:
+ (WebCore::HTMLContentSelector::select):
+ * html/shadow/HTMLContentSelector.h:
+ (HTMLContentSelector):
+ * html/shadow/InsertionPoint.h:
+ (InsertionPoint):
+
+2012-02-29 Luke Macpherson <macpherson@chromium.org>
+
+ Handle CSSPropertySpeak in CSSStyleApplyProperty.
+ https://bugs.webkit.org/show_bug.cgi?id=79879
+
+ Reviewed by Eric Seidel.
+
+ No new tests / refactoring only.
+
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+ * rendering/style/RenderStyle.h:
+
+2012-02-29 Luke Macpherson <macpherson@chromium.org>
+
+ Handle CSSPropertyWebkitColumnAxis in CSSStyleApplyProperty.
+ https://bugs.webkit.org/show_bug.cgi?id=79869
+
+ Reviewed by Eric Seidel.
+
+ No new tests / refactoring only.
+
+ * css/CSSStyleApplyProperty.cpp:
+ (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList):
+
+2012-02-29 Erik Arvidsson <arv@chromium.org>
+
+ Rename DOMSelection to Selection
+ https://bugs.webkit.org/show_bug.cgi?id=79688
+
+ Reviewed by Adam Barth.
+
+ No new tests. Existing tests have been updated to cover this.
+
+ * page/DOMSelection.idl:
+ * page/DOMWindow.idl:
+
+2012-02-29 Joshua Bell <jsbell@chromium.org>
+
+ IndexedDB: IDBDatabase.objectStoreNames and IDObjectStore.indexNames results should be sorted
+ https://bugs.webkit.org/show_bug.cgi?id=79950
+
+ Reviewed by Tony Chang.
+
+ Test: storage/indexeddb/list-ordering.html
+
+ * dom/DOMStringList.cpp: Added sort method, not exposed via IDL.
+ (WebCore::DOMStringList::sort):
+ (WebCore):
+ * dom/DOMStringList.h:
+ (DOMStringList):
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::objectStoreNames):
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::indexNames):
+
+2012-02-29 W. James MacLean <wjmaclean@chromium.org>
+
+ [chromium] Estimate pixel count for frame rate control
+ https://bugs.webkit.org/show_bug.cgi?id=74982
+
+ Reviewed by James Robinson.
+
+ Value checks added to unit tests.
+
+ Adds mechanism to compute and collect statistics on pixel overdraw for selected frames.
+
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::optimizeRenderPasses):
+ * platform/graphics/chromium/cc/CCQuadCuller.cpp:
+ (WebCore::wedgeProduct):
+ (WebCore):
+ (WebCore::quadArea):
+ (WebCore::CCQuadCuller::cullOccludedQuads):
+ * platform/graphics/chromium/cc/CCQuadCuller.h:
+ (CCQuadCuller):
+ * platform/graphics/chromium/cc/CCRenderPass.cpp:
+ (WebCore::CCRenderPass::optimizeQuads):
+ * platform/graphics/chromium/cc/CCRenderPass.h:
+ (CCOverdrawCounts):
+ (WebCore):
+ (CCRenderPass):
+
+2012-02-29 Jason Liu <jason.liu@torchmobile.com.cn>
+
+ [BlackBerry]Make about:cache feature available in release version.
+ https://bugs.webkit.org/show_bug.cgi?id=79866
+
+ Reviewed by Antonio Gomes.
+
+ No tests.
+ * platform/network/blackberry/NetworkJob.cpp:
+ (WebCore::NetworkJob::handleAbout):
+
+2012-02-29 James Simonsen <simonjam@chromium.org>
+
+ [chromium] Fix navigation start time on cross-renderer navigation
+ https://bugs.webkit.org/show_bug.cgi?id=75922
+
+ Reviewed by Darin Fisher.
+
+ * loader/DocumentLoadTiming.cpp:
+ (WebCore::DocumentLoadTiming::setNavigationStart): Added.
+ * loader/DocumentLoadTiming.h:
+
+2012-02-29 Stephen Chenney <schenney@chromium.org>
+
+ SVG <use> element allows invalid contents
+ https://bugs.webkit.org/show_bug.cgi?id=77764
+
+ Reviewed by Nikolas Zimmermann.
+
+ Modify the isDisallowedElement method to disallow all of the
+ disallowed elements, instead of just a few. It is now a whitelist
+ implementation.
+
+ This also fixes bugs 78807, 78838 and 79798 related to memory
+ corruption issues.
+
+ Tests: svg/custom/bug78807.svg
+ svg/custom/bug78838.html
+ svg/custom/bug79798.html
+
+ * svg/SVGUseElement.cpp:
+ (WebCore::isDisallowedElement):
+
+2012-02-29 Ami Fischman <fischman@chromium.org>
+
+ Continue the search for playable mime types among <source> children of <video> even when using data: URLs
+ https://bugs.webkit.org/show_bug.cgi?id=79934
+
+ Reviewed by Eric Carlson.
+
+ Test: media/sources-fallback-codecs.html
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::selectNextSourceChild):
+
+2012-02-29 Ian Vollick <vollick@chromium.org>
+
+ [chromium] Add impl-thread support for animation-timing-function
+ https://bugs.webkit.org/show_bug.cgi?id=79819
+
+ Reviewed by James Robinson.
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/cc/CCKeyframedAnimationCurve.cpp:
+ (WebCore::CCKeyframe::CCKeyframe):
+ (WebCore):
+ (WebCore::CCKeyframe::~CCKeyframe):
+ (WebCore::CCKeyframe::time):
+ (WebCore::CCKeyframe::timingFunction):
+ (WebCore::CCFloatKeyframe::create):
+ (WebCore::CCFloatKeyframe::CCFloatKeyframe):
+ (WebCore::CCFloatKeyframe::~CCFloatKeyframe):
+ (WebCore::CCFloatKeyframe::value):
+ (WebCore::CCFloatKeyframe::clone):
+ (WebCore::CCTransformKeyframe::create):
+ (WebCore::CCTransformKeyframe::CCTransformKeyframe):
+ (WebCore::CCTransformKeyframe::~CCTransformKeyframe):
+ (WebCore::CCTransformKeyframe::value):
+ (WebCore::CCTransformKeyframe::clone):
+ (WebCore::CCKeyframedFloatAnimationCurve::create):
+ (WebCore::CCKeyframedFloatAnimationCurve::CCKeyframedFloatAnimationCurve):
+ (WebCore::CCKeyframedFloatAnimationCurve::addKeyframe):
+ (WebCore::CCKeyframedFloatAnimationCurve::duration):
+ (WebCore::CCKeyframedFloatAnimationCurve::clone):
+ (WebCore::CCKeyframedFloatAnimationCurve::getValue):
+ (WebCore::CCKeyframedTransformAnimationCurve::create):
+ (WebCore::CCKeyframedTransformAnimationCurve::CCKeyframedTransformAnimationCurve):
+ (WebCore::CCKeyframedTransformAnimationCurve::~CCKeyframedTransformAnimationCurve):
+ (WebCore::CCKeyframedTransformAnimationCurve::addKeyframe):
+ (WebCore::CCKeyframedTransformAnimationCurve::duration):
+ (WebCore::CCKeyframedTransformAnimationCurve::clone):
+ (WebCore::CCKeyframedTransformAnimationCurve::getValue):
+ * platform/graphics/chromium/cc/CCKeyframedAnimationCurve.h:
+ (CCKeyframe):
+ (CCFloatKeyframe):
+ (WebCore):
+ (CCTransformKeyframe):
+ (CCKeyframedFloatAnimationCurve):
+ (CCKeyframedTransformAnimationCurve):
+ * platform/graphics/chromium/cc/CCLayerAnimationController.cpp:
+ * platform/graphics/chromium/cc/CCTimingFunction.cpp: Added.
+ (WebCore):
+ (WebCore::CCTimingFunction::CCTimingFunction):
+ (WebCore::CCTimingFunction::~CCTimingFunction):
+ (WebCore::CCTimingFunction::duration):
+ (WebCore::CCCubicBezierTimingFunction::create):
+ (WebCore::CCCubicBezierTimingFunction::CCCubicBezierTimingFunction):
+ (WebCore::CCCubicBezierTimingFunction::~CCCubicBezierTimingFunction):
+ (WebCore::CCCubicBezierTimingFunction::getValue):
+ (WebCore::CCCubicBezierTimingFunction::clone):
+ (WebCore::CCEaseTimingFunction::create):
+ (WebCore::CCEaseInTimingFunction::create):
+ (WebCore::CCEaseOutTimingFunction::create):
+ (WebCore::CCEaseInOutTimingFunction::create):
+ * platform/graphics/chromium/cc/CCTimingFunction.h: Added.
+ (WebCore):
+ (CCTimingFunction):
+ (CCCubicBezierTimingFunction):
+ (CCEaseTimingFunction):
+ (CCEaseInTimingFunction):
+ (CCEaseOutTimingFunction):
+ (CCEaseInOutTimingFunction):
+
+2012-02-29 Shinya Kawanaka <shinyak@chromium.org>
+
+ Methods in ShadowTree and TreeScopeAdopter should be multiple shadow roots aware.
+ https://bugs.webkit.org/show_bug.cgi?id=79768
+
+ Reviewed by Hajime Morita.
+
+ Some methods in ShadowTree and TreeScopeAdopter were not multiple shadow roots aware.
+ They should consider multiple shadow roots.
+
+ Test: fast/dom/shadow/multiple-shadowroot-adopt.html
+
+ * dom/ShadowTree.cpp:
+ (WebCore::ShadowTree::setParentTreeScope):
+ (WebCore):
+ (WebCore::ShadowTree::childNeedsStyleRecalc):
+ (WebCore::ShadowTree::needsStyleRecalc):
+ * dom/ShadowTree.h:
+ (WebCore):
+ (ShadowTree):
+ * dom/TreeScopeAdopter.cpp:
+ (WebCore::shadowTreeFor):
+ (WebCore::TreeScopeAdopter::moveTreeToNewScope):
+ (WebCore::TreeScopeAdopter::moveTreeToNewDocument):
+ (WebCore::TreeScopeAdopter::moveShadowTreeToNewDocument):
+ (WebCore):
+ * dom/TreeScopeAdopter.h:
+ (TreeScopeAdopter):
+
+2012-02-29 David Levin <levin@chromium.org>
+
+ [chromium] Add the ability to turn off autoresize.
+ https://bugs.webkit.org/show_bug.cgi?id=77452
+
+ Reviewed by Darin Fisher.
+
+ Test: fast/autoresize/turn-off-autoresize.html
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::enableAutoSizeMode): Fix the code
+ path for turning off autoresize to set the scrollbars to auto.
+
+2012-02-29 David Barton <dbarton@mathscribe.com>
+
+ <msubsup> setNeedsLayout() correction
+ https://bugs.webkit.org/show_bug.cgi?id=79856
+
+ Reviewed by Julien Chaffraix.
+
+ m_scripts->setNeedsLayout(true, false); needs to be added to the fix for bug 79274.
+
+ No new tests. It's actually difficult to test the need for this with the current code,
+ because there are a lot of extra setNeedsLayout() calls right now. I caught this after
+ removing some of those calls that should be redundant, for a future patch. Actually
+ removing those calls now changes other behavior, due to other bugs, so I'll save all
+ that for future patches. We should land this fix now though I think, as it could
+ possibly matter in some cases.
+
+ * rendering/mathml/RenderMathMLSubSup.cpp:
+ (WebCore::RenderMathMLSubSup::layout):
+
+2012-02-29 Andreas Kling <awesomekling@apple.com>
+
+ IsSynchronizingStyleAttributeFlag could be purged.
+ <http://webkit.org/b/79313>
+
+ Reviewed by Anders Carlsson.
+
+ We were using IsSynchronizingStyleAttributeFlag to prevent various things from
+ happening below setAttribute() when serializing the "style" attribute based on
+ an element's inline style.
+
+ Simplify the whole thing by adding a way to set an attribute without triggering
+ any callbacks (a 'notifyChanged' argument to Element::setAttribute().)
+ This removes the need for IsSynchronizingStyleAttributeFlag in the first place
+ and makes StyledElement::updateStyleAttribute() a bit cheaper to boot.
+
+ * dom/Element.cpp:
+ (WebCore::Element::setAttribute):
+ (WebCore::Element::setAttributeInternal):
+ (WebCore::Element::willModifyAttribute):
+ (WebCore::Element::didModifyAttribute):
+ (WebCore::Element::didRemoveAttribute):
+ * dom/Element.h:
+ * dom/Node.h:
+ * dom/StyledElement.cpp:
+ (WebCore::StyledElement::updateStyleAttribute):
+ (WebCore::StyledElement::attributeChanged):
+ * html/HTMLElement.cpp:
+ (WebCore::StyledElement::copyNonAttributeProperties):
+
+2012-02-29 Daniel Cheng <dcheng@chromium.org>
+
+ [chromium] REGRESSION: Cannot drag a file out
+ https://bugs.webkit.org/show_bug.cgi?id=79817
+
+ Reviewed by Ryosuke Niwa.
+
+ Temporary fix for file drag out. This change won't be needed once DataTransferItemList
+ support is better implemented.
+
+ Test: platform/chromium/fast/events/drag-downloadURL.html
+
+ * platform/chromium/ChromiumDataObject.cpp:
+ (WebCore::ChromiumDataObject::types):
+
+2012-02-29 Luke Macpherson <macpherson@chromium.org>
+
+ Clean up CSSPrimitiveValue::computeLengthDouble().
+ https://bugs.webkit.org/show_bug.cgi?id=77065
+
+ Reviewed by Eric Seidel.
+
+ Refactoring only / no behavioral change.
+
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::computeLengthDouble):
+
+2012-02-29 Beth Dakin <bdakin@apple.com>
+
+ Speculative build-fix.
+
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::paintReplaced):
+
+2012-02-29 Beth Dakin <bdakin@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=79705
+ didNewFirstVisuallyNonEmptyLayout should be enhanced to look at size instead
+ of a raw tally
+ -and corresponding-
+ <rdar://problem/10821314>
+
+ Reviewed by Dave Hyatt.
+
+ Instead of firing didNewFirstVisuallyNonEmptyLayout() when a raw tally of
+ relevant painted objects has reached a port-defined threshold, this patch
+ looks at the size of those objects with respect to the view area. The patch
+ also looks at relevant objects that cannot yet be fully painted, such as
+ incrementally loading images.
+
+ We no longer need a HashSet for the relevant painted objects since Region can
+ do all of the heavy lifting. We now have a Region for the painted and
+ unpainted regions. We do need a HashSet for the unpainted objects though,
+ because we need to know if a painted object needs to be subtracted from the
+ unpainted region before being added to the painted region.
+ * page/Page.cpp:
+ (WebCore):
+ (WebCore::Page::isCountingRelevantRepaintedObjects):
+ (WebCore::Page::startCountingRelevantRepaintedObjects):
+ (WebCore::Page::resetRelevantPaintedObjectCounter):
+ (WebCore::Page::addRelevantRepaintedObject):
+ (WebCore::Page::addRelevantUnpaintedObject):
+ * page/Page.h:
+ (Page):
+
+ New function on Region iterates through the rects and calculates the total
+ area.
+ * platform/graphics/Region.cpp:
+ (WebCore::Region::totalArea):
+ (WebCore):
+ * platform/graphics/Region.h:
+ (Region):
+
+ Remove code from these classes since they are not actually relevant objects.
+ * rendering/InlineBox.cpp:
+ (WebCore::InlineBox::paint):
+ * rendering/RenderRegion.cpp:
+ (WebCore::RenderRegion::paintReplaced):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::paint):
+
+ All of these other callers send a rect that actually represents their size
+ (usually the visualOverflowRect) instead of the paintInfo's paintRect, and
+ they call addRelevantUnpaintedObject when appropriate.
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::paint):
+ * rendering/RenderEmbeddedObject.cpp:
+ (WebCore::RenderEmbeddedObject::paint):
+ (WebCore::RenderEmbeddedObject::paintReplaced):
+ * rendering/RenderHTMLCanvas.cpp:
+ (WebCore::RenderHTMLCanvas::paintReplaced):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::paintReplaced):
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::paintReplaced):
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::paintReplaced):
+
+2012-02-29 Joshua Bell <jsbell@chromium.org>
+
+ IndexedDB: Resource leak with IDBObjectStore.openCursor
+ https://bugs.webkit.org/show_bug.cgi?id=79835
+
+ IDBCursor object that were never continue()'d to the end would leak due to a
+ reference cycle with IDBRequest. In addition, the IDBRequest would never be
+ marked "finished" which would prevent GC from reclaiming it. IDBTransactions
+ now track and notify IDBCursors to break these references when the transaction
+ can no longer not process requests.
+
+ Reviewed by Tony Chang.
+
+ Tests: storage/indexeddb/cursor-continue.html
+
+ * storage/IDBCursor.cpp:
+ (WebCore::IDBCursor::IDBCursor): Register with IDBTransaction bookkeeping.
+ (WebCore::IDBCursor::continueFunction): Early error if transaction has finished.
+ (WebCore::IDBCursor::close): Break the reference cycle with IDBRequest, and notify it
+ that the cursor is finished.
+ (WebCore):
+ * storage/IDBCursor.h:
+ (WebCore):
+ (IDBCursor):
+ * storage/IDBRequest.cpp:
+ (WebCore::IDBRequest::IDBRequest):
+ (WebCore::IDBRequest::finishCursor): If there is no request in flight, mark itself as
+ finished to allow GC.
+ (WebCore):
+ (WebCore::IDBRequest::dispatchEvent): Once an in-flight request has been processed,
+ mark the request as finished if the cursor is finished, to allow GC.
+ * storage/IDBRequest.h:
+ (IDBRequest):
+ * storage/IDBTransaction.cpp: Track open cursors, close them when finished.
+ (WebCore::IDBTransaction::OpenCursorNotifier::OpenCursorNotifier):
+ (WebCore):
+ (WebCore::IDBTransaction::OpenCursorNotifier::~OpenCursorNotifier):
+ (WebCore::IDBTransaction::registerOpenCursor):
+ (WebCore::IDBTransaction::unregisterOpenCursor):
+ (WebCore::IDBTransaction::closeOpenCursors):
+ (WebCore::IDBTransaction::onAbort):
+ (WebCore::IDBTransaction::onComplete):
+ * storage/IDBTransaction.h:
+ (WebCore):
+ (OpenCursorNotifier):
+ (IDBTransaction):
+
+2012-02-29 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=79940
+ <rdar://problem/10080189>
+
+ Add support in WebKit for an intra-line character grid for Japanese text layout.
+
+ Patch logicalLeftOffsetForLine and logicalRightOffsetForLine in order to get the
+ basic edge snapping grid functionality up and running. See all the FIXMEs in the function for
+ some of the issues that still have to be dealt with for it to really work well.
+
+ Reviewed by Dan Bernstein.
+
+ Added new tests in fast/line-grid.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::logicalLeftOffsetForLine):
+ (WebCore::RenderBlock::logicalRightOffsetForLine):
+
+2012-02-29 Anders Carlsson <andersca@apple.com>
+
+ [Chromium] Some Layout Tests in platform/chromium/rubberbanding and platform/chromium/compositing/rubberbanding are failing
+ https://bugs.webkit.org/show_bug.cgi?id=79878
+
+ Reviewed by James Robinson.
+
+ Make sure that ScrollableArea::setScrollOffsetFromAnimation doesn't end up
+ setting the ScrollAnimator's current scroll position by making a new function, scrollPositionChanged,
+ that both notifyScrollPositionChanged and setScrollOffsetFromAnimation call and move the call to update
+ the position to notifyScrollPositionChanged.
+
+ * platform/ScrollableArea.cpp:
+ (WebCore::ScrollableArea::notifyScrollPositionChanged):
+ (WebCore):
+ (WebCore::ScrollableArea::scrollPositionChanged):
+ (WebCore::ScrollableArea::setScrollOffsetFromAnimation):
+ * platform/ScrollableArea.h:
+ (ScrollableArea):
+
2012-02-29 Dana Jansens <danakj@chromium.org>
[chromium] Don't let invalidation for next frame prevent tile upload
@@ -8062,7 +21816,6 @@
(WebCore::ContainerNode::insertBefore):
(WebCore::ContainerNode::replaceChild):
(WebCore::ContainerNode::removeChild):
-
2012-02-22 Dmitry Lomov <dslomov@google.com>
[JSC] Implement ArrayBuffer and typed array cloning in JSC
« no previous file with comments | « no previous file | Source/WebCore/platform/image-decoders/skia/ImageDecoderSkia.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698