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 |