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

Unified Diff: Source/WebCore/ChangeLog

Issue 7664004: Merge 92908 - Readback composited webgl results for printing (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/835/
Patch Set: Created 9 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
Download patch
« no previous file with comments | « no previous file | Source/WebCore/html/canvas/WebGLRenderingContext.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/WebCore/ChangeLog
===================================================================
--- Source/WebCore/ChangeLog (revision 93076)
+++ Source/WebCore/ChangeLog (working copy)
@@ -1,20 +1,439 @@
-2011-08-12 Denis Lagno <dilmah@chromium.org>
+2011-08-11 John Bauman <jbauman@chromium.org>
- Need a way to selectively use hixie-76 for websocket connections depending on destination and/or origin
- https://bugs.webkit.org/show_bug.cgi?id=65835
+ Readback composited webgl results for printing
+ https://bugs.webkit.org/show_bug.cgi?id=65658
- Reviewed by Alexey Proskuryakov and Yuta Kitamura.
+ Reviewed by James Robinson.
- No new tests. (because it is temporary solution for transient period between hixie-76 and hybi-NN).
+ The real composited results may be locked inside the compositor
+ context's version of a texture because the drawing buffer was
+ automatically cleared, so read from there to get the actual presented
+ version to draw.
- * page/Settings.cpp:
- (WebCore::Settings::addHixie76WebSocketProtocolException):
- (WebCore::Settings::useHixie76WebSocketProtocol):
- * page/Settings.h:
- (WebCore::Settings::setUseHixie76WebSocketProtocol):
- * websockets/WebSocketChannel.cpp:
- (WebCore::WebSocketChannel::WebSocketChannel):
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas):
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/chromium/Extensions3DChromium.h:
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::paintRenderedResultsToCanvas):
+ * platform/graphics/chromium/WebGLLayerChromium.h:
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+ (WebCore::GraphicsContext3D::paintCompositedResultsToCanvas):
+2011-08-11 Andrew Wason <rectalogic@rectalogic.com>
+
+ REGRESSION: Qt JavaScript bridge signal connection fails
+ https://bugs.webkit.org/show_bug.cgi?id=66097
+
+ Reviewed by Gavin Barraclough.
+
+ Tests in WebKit/qt/tests/qwebframe
+
+ Call toThisObject() on exec->lexicalGlobalObject() so the correct
+ object is passed to the JS signal handler.
+
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtRuntimeConnectionMethod::call):
+
+2011-08-11 Nico Weber <thakis@chromium.org>
+
+ Remove incorrect comment about m_wheelEventHandlerCount
+ https://bugs.webkit.org/show_bug.cgi?id=66117
+
+ Reviewed by Simon Fraser.
+
+ From what I can tell, this number is changed only in
+ Frame::notifyChromeClientWheelEventHandlerCountChanged(),
+ and there it just reads the number modified in
+ Document::didAdd/RemoveWheelEventHandler(). So this is just the number
+ of event handlers (and not related to horizontal scrollbars), and the
+ variable name expresses that already.
+
+ * dom/Document.h:
+
+2011-08-11 James Robinson <jamesr@chromium.org>
+
+ [chromium] Defer managed texture creation and destruction until updateCompositorResources
+ https://bugs.webkit.org/show_bug.cgi?id=64772
+
+ Reviewed by Kenneth Russell.
+
+ This adds support for deferring GraphicsContext3D calls for texture creation and destruction for managed
+ textures and defers these calls until updateCompositorResources() for contents textures. The primary benefit of
+ this change is that it decouples managing the texture budget for the next frame (which has to happen before
+ painting layer contents) from the actual GL calls that create/destroy textures. That way, in the threaded
+ compositing world we can continue to use textures from the previous frame while software painting contents for
+ the next frame into software buffers or SkPictures.
+
+ Also renames LayerTexture to ManagedTexture to better reflect what it is. Not all ManagedTextures we create are
+ necessarily associated with layers, but they are all managed by a TextureManager.
+
+ Covered by compositing/ layout tests.
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerTextureUpdater::updateTextureRect):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::releaseTextures):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::getOffscreenLayerTexture):
+ (WebCore::LayerRendererChromium::useRenderSurface):
+ (WebCore::LayerRendererChromium::initializeSharedObjects):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/LayerTextureUpdater.h:
+ * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
+ (WebCore::LayerTextureUpdaterBitmap::updateTextureRect):
+ (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
+ * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::getSingleTexture):
+ (WebCore::LayerTilerChromium::createTile):
+ (WebCore::LayerTilerChromium::updateRect):
+ (WebCore::LayerTilerChromium::drawTiles):
+ * platform/graphics/chromium/LayerTilerChromium.h:
+ (WebCore::LayerTilerChromium::Tile::Tile):
+ (WebCore::LayerTilerChromium::Tile::texture):
+ * platform/graphics/chromium/ManagedTexture.cpp: Renamed from Source/WebCore/platform/graphics/chromium/LayerTexture.cpp.
+ (WebCore::ManagedTexture::ManagedTexture):
+ (WebCore::ManagedTexture::~ManagedTexture):
+ (WebCore::ManagedTexture::isValid):
+ (WebCore::ManagedTexture::reserve):
+ (WebCore::ManagedTexture::unreserve):
+ (WebCore::ManagedTexture::bindTexture):
+ (WebCore::ManagedTexture::framebufferTexture2D):
+ * platform/graphics/chromium/ManagedTexture.h: Renamed from Source/WebCore/platform/graphics/chromium/LayerTexture.h.
+ (WebCore::ManagedTexture::create):
+ (WebCore::ManagedTexture::format):
+ (WebCore::ManagedTexture::isReserved):
+ * platform/graphics/chromium/RenderSurfaceChromium.h:
+ * platform/graphics/chromium/TextureManager.cpp:
+ (WebCore::TextureManager::TextureManager):
+ (WebCore::TextureManager::deleteEvictedTextures):
+ (WebCore::TextureManager::removeTexture):
+ (WebCore::TextureManager::allocateTexture):
+ (WebCore::TextureManager::requestTexture):
+ * platform/graphics/chromium/TextureManager.h:
+ (WebCore::TextureManager::create):
+ (WebCore::TextureManager::setAssociatedContextDebugOnly):
+ (WebCore::TextureManager::associatedContextDebugOnly):
+ * platform/graphics/chromium/TiledLayerChromium.h:
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
+ (WebCore::CCHeadsUpDisplay::draw):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
+ * platform/graphics/chromium/cc/CCRenderSurface.cpp:
+ (WebCore::CCRenderSurface::prepareContentsTexture):
+ (WebCore::CCRenderSurface::drawSurface):
+ * platform/graphics/chromium/cc/CCRenderSurface.h:
+ (WebCore::CCRenderSurface::contentsTexture):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
+ (WebCore::CCTiledLayerImpl::bindContentsTexture):
+
+2011-08-11 David Kilzer <ddkilzer@apple.com>
+
+ <http://webkit.org/b/66113> [CFNetwork] willCacheResponse() leaks CFCachedURLResponseRef if delegate changes CacheStoragePolicy
+
+ Reviewed by Joseph Pecoraro.
+
+ This first appeared in ToT WebKit r23462 (Windows merge).
+
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::willCacheResponse): Only retain cachedResponse if we
+ are returning the same object passed into the method, otherwise
+ we end up double-retaining the new object created.
+
+2011-08-05 Nat Duca <nduca@chromium.org>
+
+ [chromium] Make WebViewImpl point at CCLayerTreeHost and related separation
+ https://bugs.webkit.org/show_bug.cgi?id=65791
+
+ With this patch, LayerRendererChromium becomes increasingly responsible
+ for rendering, while render scheduling and tree hosting moves into the
+ CCLayerTreeHost.
+
+ Reviewed by James Robinson.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::createTextureUpdaterIfNeeded):
+ * platform/graphics/chromium/LayerChromium.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::create):
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::initialize):
+ (WebCore::LayerRendererChromium::releaseTextures):
+ (WebCore::LayerRendererChromium::updateRootLayerContents):
+ (WebCore::LayerRendererChromium::drawRootLayer):
+ (WebCore::LayerRendererChromium::invalidateRootLayerRect):
+ (WebCore::LayerRendererChromium::rootLayerChanged):
+ (WebCore::LayerRendererChromium::viewportChanged):
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::drawLayersInternal):
+ (WebCore::LayerRendererChromium::getFramebufferPixels):
+ (WebCore::LayerRendererChromium::getOffscreenLayerTexture):
+ (WebCore::LayerRendererChromium::copyOffscreenTextureToDisplay):
+ (WebCore::LayerRendererChromium::useRenderSurface):
+ (WebCore::LayerRendererChromium::setScissorToRect):
+ (WebCore::LayerRendererChromium::layerTreeAsText):
+ (WebCore::LayerRendererChromium::dumpRenderSurfaces):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::settings):
+ (WebCore::LayerRendererChromium::owner):
+ (WebCore::LayerRendererChromium::rootLayer):
+ (WebCore::LayerRendererChromium::skiaContext):
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::setTextureUpdated):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
+ (WebCore::CCHeadsUpDisplay::draw):
+ (WebCore::CCHeadsUpDisplay::enabled):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::create):
+ (WebCore::CCLayerTreeHost::CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::initialize):
+ (WebCore::CCLayerTreeHost::animateAndLayout):
+ (WebCore::CCLayerTreeHost::createLayerTreeHostCommitter):
+ (WebCore::CCLayerTreeHost::createLayerTreeHostImpl):
+ (WebCore::CCLayerTreeHost::context):
+ (WebCore::CCLayerTreeHost::compositeAndReadback):
+ (WebCore::CCLayerTreeHost::createRootLayerPainter):
+ (WebCore::CCLayerTreeHost::finishAllRendering):
+ (WebCore::CCLayerTreeHost::invalidateRootLayerRect):
+ (WebCore::CCLayerTreeHost::setNeedsCommitAndRedraw):
+ (WebCore::CCLayerTreeHost::setNeedsRedraw):
+ (WebCore::CCLayerTreeHost::setRootLayer):
+ (WebCore::CCLayerTreeHost::setViewport):
+ (WebCore::CCLayerTreeHost::setVisible):
+ (WebCore::CCLayerTreeHost::doComposite):
+ (WebCore::CCLayerTreeHost::composite):
+ (WebCore::CCLayerTreeHost::reallocateRenderer):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ (WebCore::CCLayerTreeHost::animating):
+ (WebCore::CCLayerTreeHost::setAnimating):
+ (WebCore::CCLayerTreeHost::rootLayer):
+ (WebCore::CCLayerTreeHost::settings):
+ (WebCore::CCLayerTreeHost::viewportContentRect):
+ (WebCore::CCLayerTreeHost::viewportScrollPosition):
+ (WebCore::CCLayerTreeHost::viewportVisibleRect):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::create):
+ (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
+ (WebCore::CCLayerTreeHostImpl::drawLayers):
+ (WebCore::CCLayerTreeHostImpl::drawLayersOnMainThread):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp:
+ (WebCore::CCLayerTreeHostImplProxy::initImplOnCCThread):
+
+2011-08-11 Jeff Miller <jeffm@apple.com>
+
+ WebCore::AVFWrapper fails to remove observer for kCACFContextNeedsFlushNotification
+ https://bugs.webkit.org/show_bug.cgi?id=66116
+
+ We need to pass 0 as the object parameter to CFNotificationCenterRemoveObserver() when removing
+ kCACFContextNeedsFlushNotification to match what we do when we registered for the same
+ notification with CFNotificationCenterAddObserver().
+
+ Reviewed by John Sullivan.
+
+ No new tests, uses existing media tests.
+
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationCF.cpp:
+ (WebCore::AVFWrapper::disconnectAndDeleteAVFWrapper): Pass 0 as the object parameter to CFNotificationCenterRemoveObserver().
+ (WebCore::AVFWrapper::notificationCallback): Remove obsolete FIXME comment.
+
+2011-08-11 Ryosuke Niwa <rniwa@webkit.org>
+
+ Share code between isStyleSpanOrSpanWithOnlyStyleAttribute, isUnstyledStyleSpan,
+ isSpanWithoutAttributesOrUnstyleStyleSpan and replaceWithSpanOrRemoveIfWithoutAttributes
+ https://bugs.webkit.org/show_bug.cgi?id=66091
+
+ Reviewed by Tony Chang.
+
+ Extracted common code as hasNoAttributeOrOnlyStyleAttribute. The only behavioral difference is that
+ replaceWithSpanOrRemoveIfWithoutAttributes will now remove elements with class="Apple-style-span",
+ for which I'm adding a test.
+
+ Test: editing/style/remove-styled-element-with-style-span.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::hasNoAttributeOrOnlyStyleAttribute):
+ (WebCore::isStyleSpanOrSpanWithOnlyStyleAttribute):
+ (WebCore::isUnstyledStyleSpan):
+ (WebCore::isSpanWithoutAttributesOrUnstyleStyleSpan):
+ (WebCore::ApplyStyleCommand::replaceWithSpanOrRemoveIfWithoutAttributes):
+
+2011-08-11 Tom Zakrajsek <tomz@codeaurora.org>
+
+ Add HTMLUnknownElement interface as defined in
+ http://www.w3.org/TR/html5/elements.html#elements-in-the-dom.
+ https://bugs.webkit.org/show_bug.cgi?id=41841
+
+ Reviewed by Adam Barth.
+
+ Test: fast/html/unknown-tag.html
+
+ * CMakeLists.txt:
+ * CodeGenerators.pri:
+ * DerivedSources.cpp:
+ * DerivedSources.make:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (IsDOMNodeType):
+ * dom/make_names.pl:
+ (defaultParametersHash):
+ (buildConstructorMap):
+ (printJSElementIncludes):
+ (printElementIncludes):
+ (printWrapperFunctions):
+ (printWrapperFactoryCppFile):
+ * html/HTMLTagNames.in:
+ * html/HTMLUnknownElement.h: Added.
+ (WebCore::HTMLUnknownElement::create):
+ (WebCore::HTMLUnknownElement::HTMLUnknownElement):
+ * html/HTMLUnknownElement.idl: Added.
+ * mathml/mathtags.in:
+ * page/DOMWindow.idl:
+ * svg/svgtags.in:
+
+2011-08-11 Levi Weintraub <leviw@chromium.org>
+
+ Remove dead code: borderInnerRect
+ https://bugs.webkit.org/show_bug.cgi?id=66087
+
+ Reviewed by Adam Barth.
+
+ Removing an old and currently unused function: RenderObject::borderInnerRect.
+
+ No new tests since I'm just pruning dead code.
+
+ * rendering/RenderObject.cpp:
+ * rendering/RenderObject.h:
+
+2011-08-11 Simon Fraser <simon.fraser@apple.com>
+
+ Avoid adding the visible wash layer twice
+ https://bugs.webkit.org/show_bug.cgi?id=66098
+
+ Reviewed by Chris Marrin.
+
+ Fix two issues; only create a m_visibleTileWashLayer if we don't have one
+ already, and avoid adding multiple m_visibleTileWashLayers to the sublayers
+ array when flipping between tiled and non-tiled.
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
+
+2011-08-11 Benjamin Poulain <benjamin@webkit.org>
+
+ The PageSerializer should always use absolute URL
+ https://bugs.webkit.org/show_bug.cgi?id=66006
+
+ Reviewed by Adam Barth.
+
+ Page serializer resolves every URL for storing the resources.
+ The MarkupAccumulator used there should use the same rules in order to
+ create a valid file.
+
+ No new tests because the test infrastructure for this
+ does not exist with layout tests and the Chromium unit test for
+ the serializer are disabled.
+
+ * page/PageSerializer.cpp:
+ (WebCore::SerializerMarkupAccumulator::SerializerMarkupAccumulator):
+
+2011-08-01 Adrienne Walker <enne@google.com>
+
+ Enable fast path scrolling for composited iframes
+ https://bugs.webkit.org/show_bug.cgi?id=65056
+
+ Reviewed by James Robinson.
+
+ iframes with composited layers for content should be able to do fast
+ path scrolling because they draw into their own backing. To enable
+ this, useSlowRepaints is modified to return true only for the cases
+ that apply to composited layers. The fast path scrolling function is
+ modified to send the invalidation to the backing itself rather than to
+ the window.
+
+ Renamed a number of "slow repaint" functions to be the more accurate
+ "cannot blit to window" as it will not always force slow path
+ scrolling.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::reset):
+ (WebCore::FrameView::useSlowRepaints):
+ (WebCore::FrameView::useSlowRepaintsIfNotOverlapped):
+ (WebCore::FrameView::contentsInCompositedLayer):
+ (WebCore::FrameView::setCannotBlitToWindow):
+ (WebCore::FrameView::scrollContentsFastPath):
+ (WebCore::FrameView::scrollContentsSlowPath):
+ * page/FrameView.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::cannotBlitToWindow):
+ * rendering/RenderLayer.h:
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::paintBoxDecorations):
+
+2011-08-10 Adrienne Walker <enne@google.com>
+
+ Support creating compositing layers for scrollable frames and iframes
+ https://bugs.webkit.org/show_bug.cgi?id=55257
+
+ Reviewed by James Robinson.
+
+ When force compositing mode is turned on, iframes with overflow will
+ become composited (in order to enable faster scrolling).
+
+ This patch was originally by Daniel Sievers <sievers@chromium.org>.
+
+ Tests: platform/chromium/compositing/force-compositing-mode/no-overflow-iframe-layer.html
+ platform/chromium/compositing/force-compositing-mode/overflow-hidden-iframe-layer.html
+ platform/chromium/compositing/force-compositing-mode/overflow-iframe-enter-compositing.html
+ platform/chromium/compositing/force-compositing-mode/overflow-iframe-layer.html
+ platform/chromium/compositing/force-compositing-mode/overflow-iframe-leave-compositing.html
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags):
+ (WebCore::RenderLayerCompositor::requiresCompositingForScrollableFrame):
+ * rendering/RenderLayerCompositor.h:
+
+2011-08-11 Yong Li <yoli@rim.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=65944
+ Replace QuotesData::operator==() with QuotesData::equal(const QuotesData*
+ , const QuotesData*) because QuotesData::operator==() were using non-standard
+ C++ code that is not supported by all compilers.
+
+ Reviewed by Alexey Proskuryakov.
+
+ No new tests because some existing test cases can show the issue,
+ for example, fast/css/content/content-quotes-01.html.
+
+ * rendering/RenderQuote.cpp:
+ (WebCore::RenderQuote::styleDidChange):
+ * rendering/style/QuotesData.cpp:
+ (WebCore::QuotesData::equal):
+ * rendering/style/QuotesData.h:
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::setQuotes):
+ * rendering/style/StyleRareInheritedData.cpp:
+ (WebCore::StyleRareInheritedData::operator==):
+
+2011-08-11 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=66075
+
+ Turn on regions and exclusions by default. Fix one stray ifdef that I missed.
+
+ Reviewed by James Robinson.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::contentToCSSValue):
+
2011-08-11 David Reveman <reveman@chromium.org>
[Chromium] Temporarily disable layer anti-aliasing on ChromeOS.
« no previous file with comments | « no previous file | Source/WebCore/html/canvas/WebGLRenderingContext.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698