| Index: Source/WebCore/ChangeLog
|
| ===================================================================
|
| --- Source/WebCore/ChangeLog (revision 122537)
|
| +++ Source/WebCore/ChangeLog (working copy)
|
| @@ -1,3 +1,4249 @@
|
| +2012-07-12 MORITA Hajime <morrita@google.com>
|
| +
|
| + [Shadow DOM] <video> with <shadow> crashes
|
| + https://bugs.webkit.org/show_bug.cgi?id=91055
|
| +
|
| + Reviewed by Kent Tamura.
|
| +
|
| + This is similar to Bug 90480, where an undesired renderer is created by
|
| + locating an insertion point on the shadow boundary.
|
| +
|
| + This change adds a guard for such case by cheking whether the
|
| + source node of each to-be-created renderer comes from the UA shadow
|
| + tree, which is allowed to have a renderer.
|
| +
|
| + Test: fast/dom/shadow/insertion-point-video-crash.html
|
| +
|
| + * html/HTMLMediaElement.cpp:
|
| + (WebCore::HTMLMediaElement::childShouldCreateRenderer): Added a check.
|
| + (WebCore::HTMLMediaElement::mediaControls): Added const.
|
| + (WebCore::HTMLMediaElement::hasMediaControls): Added const.
|
| + * html/HTMLMediaElement.h:
|
| + (HTMLMediaElement):
|
| +
|
| +2012-07-12 Yoshifumi Inoue <yosin@chromium.org>
|
| +
|
| + REGRESSION(r122184): LocaleMac::currentLocale should use current locale rather than newly create locale object.
|
| + https://bugs.webkit.org/show_bug.cgi?id=91057
|
| +
|
| + Reviewed by Kent Tamura.
|
| +
|
| + This patch changes NSLocale object of LocaleMac::m_locale variable to
|
| + current NSLocale object rather than newly created NSLocale object from
|
| + locale identifier.
|
| +
|
| + No new tests. We don't have way to change system preferences from
|
| + test scripts and restoring them. To test this patch, we need to do so.
|
| +
|
| + * platform/text/mac/LocaleMac.h:
|
| + (LocaleMac): Added a constructor which takes NSLocale object.
|
| + * platform/text/mac/LocaleMac.mm:
|
| + (WebCore::LocaleMac::LocaleMac): Added a constructor which takes NSLocale object.
|
| + (WebCore::LocaleMac::currentLocale): Changed to construct LocaleMac object from NSLocale object rather than locale identifier.
|
| +
|
| +2012-07-11 Carlos Garcia Campos <cgarcia@igalia.com>
|
| +
|
| + [GTK] Add webkit_cookie_manager_set_persistent_storage() to WebKit2 GTK+ API
|
| + https://bugs.webkit.org/show_bug.cgi?id=83016
|
| +
|
| + Reviewed by Martin Robinson.
|
| +
|
| + * platform/network/soup/CookieStorageSoup.cpp:
|
| + (WebCore::soupCookiesChanged): Do not notify about changes in
|
| + other cookie jars than the current one.
|
| +
|
| +2012-07-12 Philip Rogers <pdr@google.com>
|
| +
|
| + Refactor RenderSVGShape bounding box code
|
| + https://bugs.webkit.org/show_bug.cgi?id=90655
|
| +
|
| + Reviewed by Nikolas Zimmermann.
|
| +
|
| + RenderSVGShape::objectBoundingBox worked differently than RenderSVGShape::strokeBoundingBox by
|
| + not caching the object bounding box and instead computing it on each call. For consistency and
|
| + performance objectBoundingBox has been refactored to return a cached value.
|
| +
|
| + createShape has been renamed updateShapeFromElement for understandability. updateShapeFromElement
|
| + now updates the internal state of the shape (bounding boxes, etc) from the associated element.
|
| + RenderSVGShape::inflateWithStrokeAndMarkerBounds has been merged into
|
| + RenderSVGShape::calculateStrokeBoundingBox which is called from updateShapeFromElement.
|
| +
|
| + After this change all bounding box computation is now handled in updateShapeFromElement. Because
|
| + subclasses override updateShapeFromElement it will be easy for them to have custom bounding box
|
| + code there (as will happen for RenderSVGPath in a followup patch).
|
| +
|
| + strokeBoundingBox and objectBoundingBox are now able to return their cached values immediately
|
| + in RenderSVGRect and RenderSVGEllipse instead of checking their fallback state on each call.
|
| +
|
| + Additionally, to save space RenderSVGEllipse and RenderSVGRect now use the m_fillBoundingBox and
|
| + m_strokeBoundingBox of RenderSVGShape instead of having their own.
|
| +
|
| + This patch also removes setStrokeAndMarkerBoundingBox that was previously dead code.
|
| +
|
| + No new tests, just a refactoring.
|
| +
|
| + * rendering/svg/RenderSVGEllipse.cpp:
|
| + (WebCore::RenderSVGEllipse::updateShapeFromElement):
|
| + (WebCore):
|
| + (WebCore::RenderSVGEllipse::fillShape):
|
| + (WebCore::RenderSVGEllipse::strokeShape):
|
| + (WebCore::RenderSVGEllipse::shapeDependentStrokeContains):
|
| + * rendering/svg/RenderSVGEllipse.h:
|
| + (RenderSVGEllipse):
|
| + (WebCore::RenderSVGEllipse::isEmpty):
|
| + * rendering/svg/RenderSVGRect.cpp:
|
| + (WebCore::RenderSVGRect::updateShapeFromElement):
|
| + (WebCore):
|
| + (WebCore::RenderSVGRect::fillShape):
|
| + (WebCore::RenderSVGRect::strokeShape):
|
| + (WebCore::RenderSVGRect::shapeDependentStrokeContains):
|
| + (WebCore::RenderSVGRect::shapeDependentFillContains):
|
| + * rendering/svg/RenderSVGRect.h:
|
| + (RenderSVGRect):
|
| + (WebCore::RenderSVGRect::isEmpty):
|
| + * rendering/svg/RenderSVGShape.cpp:
|
| + (WebCore::RenderSVGShape::updateShapeFromElement):
|
| + (WebCore):
|
| + (WebCore::RenderSVGShape::layout):
|
| + (WebCore::RenderSVGShape::calculateObjectBoundingBox):
|
| + (WebCore::RenderSVGShape::calculateStrokeBoundingBox):
|
| + (WebCore::RenderSVGShape::updateRepaintBoundingBox):
|
| + * rendering/svg/RenderSVGShape.h:
|
| + (RenderSVGShape):
|
| + (WebCore::RenderSVGShape::objectBoundingBox):
|
| + (WebCore::RenderSVGShape::strokeBoundingBox):
|
| +
|
| +2012-07-12 Kent Tamura <tkent@chromium.org>
|
| +
|
| + Do not save the form state signature if nothing is saved
|
| + https://bugs.webkit.org/show_bug.cgi?id=91050
|
| +
|
| + Reviewed by Hajime Morita.
|
| +
|
| + This change will reduce the size of HistoyItem.
|
| +
|
| + Test: fast/forms/state-restore-empty-state.html
|
| +
|
| + * html/FormController.cpp:
|
| + (WebCore::FormController::formElementsState):
|
| + If stateVector has only the signature string, clear it.
|
| +
|
| +2012-07-11 Mark Rowe <mrowe@apple.com>
|
| +
|
| + <http://webkit.org/b/91051> Fix the Qt Mac build after r122400.
|
| +
|
| + Qt on Mac builds with a deployment target of OS X 10.5. However, it was not been setting
|
| + BUILDING_ON_LEOPARD / TARGETING_LEOPARD and thus was falling down code paths in DisplaySleepDisabler.cpp
|
| + that were specific to Snow Leopard and newer. After the removal of BUILDING_ON_LEOPARD
|
| + and TARGETING_LEOPARD it ended up falling down the correct Leopard-compatible code path,
|
| + which revealed that the code made assumptions about which headers had already been included.
|
| +
|
| + * platform/mac/DisplaySleepDisabler.cpp: Include CoreServices/CoreServices.h to pull in
|
| + a declaration of UpdateSystemActivity when targeting Leopard.
|
| +
|
| +2012-07-11 Matt Falkenhagen <falken@chromium.org>
|
| +
|
| + Add dialog element feature toggle to InternalSettings
|
| + https://bugs.webkit.org/show_bug.cgi?id=90934
|
| +
|
| + Reviewed by Hajime Morita.
|
| +
|
| + This enables layout tests to be written for dialog although the feature is disabled by default.
|
| +
|
| + Tests: fast/dom/HTMLDialogElement/dialog-disabled.html
|
| + fast/dom/HTMLDialogElement/dialog-enabled.html
|
| +
|
| + * WebCore.exp.in: Added newly exported symbol.
|
| + * testing/InternalSettings.cpp:
|
| + (WebCore::InternalSettings::Backup::Backup): Backup dialog feature flag.
|
| + (WebCore::InternalSettings::Backup::restoreTo): Restore dialog feature flag.
|
| + (WebCore::InternalSettings::setDialogElementEnabled): Added.
|
| + (WebCore):
|
| + * testing/InternalSettings.h: Added support for dialog.
|
| + (Backup):
|
| + (InternalSettings):
|
| + * testing/InternalSettings.idl: Added support for dialog.
|
| +
|
| +2012-07-11 Kent Tamura <tkent@chromium.org>
|
| +
|
| + Accessing width or height of a detached image input element causes crash
|
| + https://bugs.webkit.org/show_bug.cgi?id=90885
|
| +
|
| + Reviewed by Kentaro Hara.
|
| +
|
| + Test: fast/forms/image/width-and-height-of-detached-input.html
|
| +
|
| + * html/ImageInputType.cpp:
|
| + (WebCore::ImageInputType::height): Add null check for m_imageLoader.
|
| + (WebCore::ImageInputType::width): ditto.
|
| +
|
| +2012-07-11 Kent Tamura <tkent@chromium.org>
|
| +
|
| + Do not save state of stateless form controls
|
| + https://bugs.webkit.org/show_bug.cgi?id=90964
|
| +
|
| + Reviewed by Hajime Morita.
|
| +
|
| + By Bug 89409, we started to store unmodified form control
|
| + state. However we don't need to make such state for the following
|
| + types.
|
| + - password
|
| + - submit
|
| + - reset
|
| + - button
|
| + - keygen
|
| +
|
| + Test: fast/forms/state-restore-skip-stateless.html
|
| +
|
| + * html/BaseButtonInputType.cpp:
|
| + (WebCore::BaseButtonInputType::shouldSaveAndRestoreFormControlState):
|
| + Added. Disable saving state for submit, reset, and button types.
|
| + * html/BaseButtonInputType.h:
|
| + (BaseButtonInputType): Add shouldSaveAndRestoreFormControlState.
|
| + * html/HTMLFormControlElementWithState.h:
|
| + (HTMLFormControlElementWithState): Make shouldSaveAndRestoreFormControlState virtual.
|
| + * html/HTMLInputElement.cpp:
|
| + (WebCore::HTMLInputElement::shouldSaveAndRestoreFormControlState):
|
| + Added. Checks InputType::shouldSaveAndRestoreFormControlState first.
|
| + * html/HTMLInputElement.h:
|
| + (HTMLInputElement): Override shouldSaveAndRestoreFormControlState.
|
| + * html/HTMLKeygenElement.cpp:
|
| + (WebCore::HTMLKeygenElement::shouldSaveAndRestoreFormControlState)
|
| + Added. Disable saving state for <keygen>.:
|
| + * html/HTMLKeygenElement.h: Override shouldSaveAndRestoreFormControlState.
|
| + * html/InputType.cpp:
|
| + (WebCore::InputType::shouldSaveAndRestoreFormControlState):
|
| + Added. Enable saving state for all types by default.
|
| + * html/InputType.h:
|
| + (InputType): Add shouldSaveAndRestoreFormControlState.
|
| + * html/PasswordInputType.cpp:
|
| + (WebCore::PasswordInputType::shouldSaveAndRestoreFormControlState):
|
| + Added. Disabled saving state.
|
| + (WebCore::PasswordInputType::saveFormControlState):
|
| + Because shouldSaveAndRestoreFormControlState() returns false,
|
| + saveFormControlState should be never called.
|
| + * html/PasswordInputType.h:
|
| + (PasswordInputType): Override shouldSaveAndRestoreFormControlState.
|
| +
|
| +2012-07-11 No'am Rosenthal <noam.rosenthal@nokia.com>
|
| +
|
| + Compilation error with GLES2 when using gl2ext.h from ANGLE.
|
| + https://bugs.webkit.org/show_bug.cgi?id=91030
|
| +
|
| + Reviewed by Kenneth Russell.
|
| +
|
| + gl2ext.h defines PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMG and not
|
| + PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC. This is a bug in the original Khronos header,
|
| + but we should work around it until fixed headers are integrated.
|
| +
|
| +
|
| + * platform/graphics/opengl/Extensions3DOpenGLES.h:
|
| + (Extensions3DOpenGLES):
|
| + Removed the "PROC" suffix to work around the header bug.
|
| +
|
| +2012-07-11 Mark Rowe <mrowe@apple.com>
|
| +
|
| + Attempt to fix the Chromium Mac build after r122400.
|
| +
|
| + * platform/text/cf/HyphenationCF.cpp: Ensure that Chromium only compiles the body of this file if
|
| + building for a new enough version of OS X.
|
| +
|
| +2012-07-11 Kent Tamura <tkent@chromium.org>
|
| +
|
| + [Mac] Sort project.pbxproj
|
| +
|
| + * WebCore.xcodeproj/project.pbxproj: Apply Tools/Scripts/sort-Xcode-project-file
|
| +
|
| +2012-07-11 Dan Bernstein <mitz@apple.com>
|
| +
|
| + When a table row height grows because of pagination, not all cells’ heights are adjusted
|
| + https://bugs.webkit.org/show_bug.cgi?id=91043
|
| +
|
| + Reviewed by Sam Weinig.
|
| +
|
| + The fix for in bug <http://webkit.org/b/83595> in <http://trac.webkit.org/r113738> made table
|
| + rows grow as necessary to fit cells that grow as a result of pagination. But it had two bad
|
| + side effects: earlier cells on the row would not grow by the same amount, and later cells on
|
| + the row would factor the existing growth into their intrinsic padding.
|
| +
|
| + Test: fast/multicol/table-row-height-increase.html
|
| +
|
| + * rendering/RenderTableSection.cpp:
|
| + (WebCore::RenderTableSection::layoutRows): Now when a cell becomes taller than the row height,
|
| + the additional height needed is recorded, and the cell is shrunk back to row height. Then
|
| + after finishing the row, all cells occurring on the row (including cells spanning it but not
|
| + starting on it) are grown by the same amount.
|
| +
|
| +2012-07-11 Mark Rowe <mrowe@apple.com>
|
| +
|
| + <http://webkit.org/b/91024> Build against the latest SDK when targeting older OS X versions.
|
| +
|
| + Reviewed by Dan Bernstein.
|
| +
|
| + The deployment target is already set to the version that we're targeting, and it's that setting
|
| + which determines which functionality from the SDK is available to us.
|
| +
|
| + * Configurations/Base.xcconfig:
|
| +
|
| +2012-07-11 Mark Rowe <mrowe@apple.com>
|
| +
|
| + Switch a few cases that care about the SDK over to checking __MAC_OS_X_VERSION_MAX_ALLOWED so that things build.
|
| +
|
| + Part of <http://webkit.org/b/91015> Remove BUILDING_ON / TARGETING macros in favor of system availability macros
|
| +
|
| + Reviewed by Filip Pizlo.
|
| +
|
| + * platform/graphics/cg/GraphicsContextCG.cpp: The SDK we're building against determines whether the constant is available.
|
| + * platform/mac/EmptyProtocolDefinitions.h: The SDK we're building against determines whether the protocols are declared.
|
| + * platform/mac/NSScrollerImpDetails.h: The SDK we're building against determines whether the constants and method are
|
| + available.
|
| + * platform/mac/SharedTimerMac.mm: The SDK we're building against determines whether the function has already been declared.
|
| +
|
| +2012-07-11 Mark Rowe <mrowe@apple.com>
|
| +
|
| + <http://webkit.org/b/91015> Remove BUILDING_ON / TARGETING macros in favor of system availability macros
|
| +
|
| + This removal was handled by a script that translates the relevant macros in to the equivalent checks
|
| + using the system availability macros.
|
| +
|
| + Reviewed by Filip Pizlo.
|
| +
|
| + * WebCore.exp.in:
|
| + * accessibility/AccessibilityList.h:
|
| + * accessibility/AccessibilityTable.h:
|
| + * accessibility/mac/AXObjectCacheMac.mm:
|
| + * editing/mac/EditorMac.mm:
|
| + * loader/MainResourceLoader.cpp:
|
| + * loader/MainResourceLoader.h:
|
| + * page/AlternativeTextClient.h:
|
| + * page/ContextMenuController.cpp:
|
| + * page/mac/SettingsMac.mm:
|
| + * platform/LocalizedStrings.cpp:
|
| + * platform/MemoryPressureHandler.cpp:
|
| + * platform/audio/mac/AudioBusMac.mm:
|
| + * platform/graphics/Gradient.h:
|
| + * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
|
| + * platform/graphics/ca/GraphicsLayerCA.cpp:
|
| + * platform/graphics/ca/PlatformCALayer.h:
|
| + * platform/graphics/ca/mac/PlatformCALayerMac.mm:
|
| + * platform/graphics/ca/mac/TileCache.mm:
|
| + * platform/graphics/cg/GraphicsContextCG.cpp:
|
| + * platform/graphics/cg/ImageBufferCG.cpp:
|
| + * platform/graphics/cg/ImageBufferDataCG.cpp:
|
| + * platform/graphics/cg/ImageBufferDataCG.h:
|
| + * platform/graphics/cg/ImageCG.cpp:
|
| + * platform/graphics/cg/ImageSourceCG.cpp:
|
| + * platform/graphics/cg/PathCG.cpp:
|
| + * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
|
| + * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
|
| + * platform/graphics/mac/ComplexTextController.cpp:
|
| + * platform/graphics/mac/ComplexTextControllerCoreText.mm:
|
| + * platform/graphics/mac/FontCacheMac.mm:
|
| + * platform/graphics/mac/FontCustomPlatformData.cpp:
|
| + * platform/graphics/mac/FontMac.mm:
|
| + * platform/graphics/mac/GraphicsContextMac.mm:
|
| + * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
|
| + * platform/graphics/mac/SimpleFontDataMac.mm:
|
| + * platform/graphics/mac/WebLayer.h:
|
| + * platform/graphics/mac/WebLayer.mm:
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
|
| + * platform/mac/CursorMac.mm:
|
| + * platform/mac/DisplaySleepDisabler.cpp:
|
| + * platform/mac/DisplaySleepDisabler.h:
|
| + * platform/mac/EmptyProtocolDefinitions.h:
|
| + * platform/mac/HTMLConverter.h:
|
| + * platform/mac/HTMLConverter.mm:
|
| + * platform/mac/MemoryPressureHandlerMac.mm:
|
| + * platform/mac/NSScrollerImpDetails.h:
|
| + * platform/mac/PlatformEventFactoryMac.mm:
|
| + * platform/mac/PopupMenuMac.mm:
|
| + * platform/mac/ScrollAnimatorMac.mm:
|
| + * platform/mac/ScrollElasticityController.mm:
|
| + * platform/mac/SharedTimerMac.mm:
|
| + * platform/mac/SuddenTermination.mm:
|
| + * platform/mac/WebCoreFullScreenWindow.mm:
|
| + * platform/mac/WebCoreNSCellExtras.h:
|
| + * platform/mac/WebCoreSystemInterface.h:
|
| + * platform/mac/WebCoreSystemInterface.mm:
|
| + * platform/mac/WebFontCache.mm:
|
| + * platform/mac/WebVideoFullscreenController.mm:
|
| + * platform/mac/WebVideoFullscreenHUDWindowController.mm:
|
| + * platform/network/Credential.h:
|
| + * platform/network/ResourceHandle.h:
|
| + * platform/network/cf/DNSCFNet.cpp:
|
| + * platform/network/cf/ProxyServerCFNet.cpp:
|
| + * platform/network/cf/ResourceRequest.h:
|
| + * platform/network/cf/ResourceRequestCFNet.cpp:
|
| + * platform/network/cf/SocketStreamHandleCFNet.cpp:
|
| + * platform/network/mac/AuthenticationMac.mm:
|
| + * platform/network/mac/CookieStorageMac.mm:
|
| + * platform/network/mac/ResourceHandleMac.mm:
|
| + * platform/network/mac/ResourceRequestMac.mm:
|
| + * platform/network/mac/WebCoreURLResponse.mm:
|
| + * platform/text/TextChecking.h:
|
| + * platform/text/cf/HyphenationCF.cpp:
|
| + * platform/text/mac/HyphenationMac.mm:
|
| + * rendering/RenderLayerBacking.cpp:
|
| + * rendering/RenderLayerCompositor.cpp:
|
| + * rendering/RenderThemeMac.mm:
|
| +
|
| +2012-07-11 Robert Kroeger <rjkroege@chromium.org>
|
| +
|
| + Suppress horizontal conversion of PlatformWheelEvents when hasPreciseScrollingDeltas is true
|
| + https://bugs.webkit.org/show_bug.cgi?id=89580
|
| +
|
| + WebKit GTK and Chromium Linux force vertical wheel events to
|
| + scroll horizontally when over horizontal scroll bars. This is
|
| + undesirable for touchpad scrolling with
|
| + hasPreciseScrollingDeltas() == true. Modified shouldTurnVerticalTicksIntoHorizontal
|
| + to not perform this conversion for PlatformWheelEvents with preciseScrollingDeltas.
|
| +
|
| + Reviewed by Adam Barth.
|
| +
|
| + Tests: fast/events/touch/gesture/touch-gesture-scroll-sideways.html
|
| +
|
| + * page/EventHandler.cpp:
|
| + (WebCore::EventHandler::shouldTurnVerticalTicksIntoHorizontal):
|
| + (WebCore::EventHandler::handleWheelEvent):
|
| + * page/EventHandler.h:
|
| + (EventHandler):
|
| + * page/chromium/EventHandlerChromium.cpp:
|
| + (WebCore::EventHandler::shouldTurnVerticalTicksIntoHorizontal):
|
| + * page/gtk/EventHandlerGtk.cpp:
|
| + (WebCore::EventHandler::shouldTurnVerticalTicksIntoHorizontal):
|
| +
|
| +2012-07-11 Hayato Ito <hayato@chromium.org>
|
| +
|
| + Unreviewed gardening.
|
| + Build fix for r122373.
|
| +
|
| + * platform/chromium/support/WebCompositorSharedQuadState.cpp:
|
| + (WebKit::WebCompositorSharedQuadState::WebCompositorSharedQuadState):
|
| +
|
| +2012-07-11 Shinya Kawanaka <shinyak@chromium.org>
|
| +
|
| + SVGUseElement should not use Element::ensureShadowRoot().
|
| + https://bugs.webkit.org/show_bug.cgi?id=90938
|
| +
|
| + Reviewed by Hajime Morita.
|
| +
|
| + We would like to remove Element::ensureShadowRoot() because we would like to stabilize the lifecycle of Shadow DOM.
|
| + This patch rewrites SVGUseElement::create() not to use Element::ensureShadowRoot(). Since our convention to create
|
| + a shadow subtree is to create a method createShadowSubtree(), I obeyed it.
|
| +
|
| + No new tests. Simple refactoring.
|
| +
|
| + * svg/SVGUseElement.cpp:
|
| + (WebCore::SVGUseElement::create):
|
| + (WebCore::SVGUseElement::createShadowSubtree):
|
| + (WebCore):
|
| + * svg/SVGUseElement.h:
|
| + (SVGUseElement):
|
| +
|
| +2012-07-11 Alexandre Elias <aelias@google.com>
|
| +
|
| + [chromium] Move compositor quads to Platform/chromium/public
|
| + https://bugs.webkit.org/show_bug.cgi?id=90582
|
| +
|
| + Reviewed by Adrienne Walker.
|
| +
|
| + This moves CCSharedQuadState, CCDrawQuad, and all but two CC*DrawQuad
|
| + classes to the WebKit namespace, as a first step to pushing them
|
| + across the process boundary for the ubercompositor.
|
| +
|
| + - The intent is to serialize the class hierarchy using the same
|
| + mechanism as WebInputEvent. In order to do this, there are three
|
| + requirements: pure POD data, a method returning size, and a packing
|
| + pragma.
|
| +
|
| + - Private data members are fine with this kind of serializer, and a
|
| + default constructor is not needed. Because of that, we can maintain
|
| + the same encapsulation and convenient APIs (behind
|
| + WEBKIT_IMPLEMENTATION) as the original classes. To ease the
|
| + transition, the original WebCore headers still exist and typedef to
|
| + the new classes.
|
| +
|
| + - However, SharedQuadState will be serialized using the normal
|
| + IPC_STRUCT_TRAITS macro, so I made its members public. A custom
|
| + serializer (on quad lists) will maintain the pointers from quads to
|
| + SharedQuadStates.
|
| +
|
| + - I converted the Material casting mechanism to materialCast() methods
|
| + living in the derived classes. That way, the WebCompositorQuad header
|
| + doesn't need to know about all its derived classes.
|
| +
|
| + - Quad classes not yet transitioned can still be used in
|
| + non-ubercompositor mode. CCRenderPassDrawQuad and CCYUVVideoDrawQuad
|
| + are currently non-POD and I left them in their original files.
|
| +
|
| + This approach is the best I've found so far, since it preserves all
|
| + WebCore-facing APIs and avoids unnecessary code duplication (new quad
|
| + types or members can be added by modifying only one place). There
|
| + also should not be an unreasonable amount of custom serializer code
|
| + required.
|
| +
|
| + No new tests. (No-op refactoring.)
|
| +
|
| + * WebCore.gypi:
|
| + * platform/chromium/support/WebCompositorQuad.cpp: Added.
|
| + (WebKit):
|
| + (WebKit::WebCompositorQuad::WebCompositorQuad):
|
| + (WebKit::WebCompositorQuad::opaqueRect):
|
| + (WebKit::WebCompositorQuad::setQuadVisibleRect):
|
| + (WebKit::WebCompositorQuad::size):
|
| + * platform/chromium/support/WebCompositorSharedQuadState.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCSharedQuadState.cpp.
|
| + (WebKit):
|
| + (WebKit::WebCompositorSharedQuadState::WebCompositorSharedQuadState):
|
| + (WebKit::WebCompositorSharedQuadState::create):
|
| + (WebKit::WebCompositorSharedQuadState::isLayerAxisAlignedIntRect):
|
| + * platform/chromium/support/WebCompositorSolidColorQuad.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCSolidColorDrawQuad.cpp.
|
| + (WebKit):
|
| + (WebKit::WebCompositorSolidColorQuad::create):
|
| + (WebKit::WebCompositorSolidColorQuad::WebCompositorSolidColorQuad):
|
| + (WebKit::WebCompositorSolidColorQuad::materialCast):
|
| + * platform/chromium/support/WebCompositorTextureQuad.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCTextureDrawQuad.cpp.
|
| + (WebKit):
|
| + (WebKit::WebCompositorTextureQuad::create):
|
| + (WebKit::WebCompositorTextureQuad::WebCompositorTextureQuad):
|
| + (WebKit::WebCompositorTextureQuad::setNeedsBlending):
|
| + (WebKit::WebCompositorTextureQuad::materialCast):
|
| + * platform/graphics/chromium/LayerRendererChromium.cpp:
|
| + (WebCore::LayerRendererChromium::drawQuad):
|
| + * platform/graphics/chromium/LayerRendererChromium.h:
|
| + * platform/graphics/chromium/cc/CCCheckerboardDrawQuad.cpp:
|
| + (WebCore::CCCheckerboardDrawQuad::create):
|
| + (WebCore::CCCheckerboardDrawQuad::CCCheckerboardDrawQuad):
|
| + (WebCore::CCCheckerboardDrawQuad::materialCast):
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCCheckerboardDrawQuad.h:
|
| + (CCCheckerboardDrawQuad):
|
| + * platform/graphics/chromium/cc/CCDebugBorderDrawQuad.cpp:
|
| + (WebCore::CCDebugBorderDrawQuad::create):
|
| + (WebCore::CCDebugBorderDrawQuad::CCDebugBorderDrawQuad):
|
| + (WebCore::CCDebugBorderDrawQuad::materialCast):
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCDebugBorderDrawQuad.h:
|
| + (CCDebugBorderDrawQuad):
|
| + * platform/graphics/chromium/cc/CCDrawQuad.cpp: Removed.
|
| + * platform/graphics/chromium/cc/CCDrawQuad.h:
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCIOSurfaceDrawQuad.cpp:
|
| + (WebCore::CCIOSurfaceDrawQuad::create):
|
| + (WebCore::CCIOSurfaceDrawQuad::CCIOSurfaceDrawQuad):
|
| + (WebCore::CCIOSurfaceDrawQuad::materialCast):
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCIOSurfaceDrawQuad.h:
|
| + (CCIOSurfaceDrawQuad):
|
| + * platform/graphics/chromium/cc/CCLayerImpl.h:
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCRenderPass.h:
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCRenderPassDrawQuad.cpp:
|
| + (WebCore::CCRenderPassDrawQuad::create):
|
| + (WebCore::CCRenderPassDrawQuad::CCRenderPassDrawQuad):
|
| + (WebCore::CCRenderPassDrawQuad::materialCast):
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCRenderPassDrawQuad.h:
|
| + (CCRenderPassDrawQuad):
|
| + * platform/graphics/chromium/cc/CCRenderSurface.h:
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCSharedQuadState.h:
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCSolidColorDrawQuad.h:
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCStreamVideoDrawQuad.cpp:
|
| + (WebCore::CCStreamVideoDrawQuad::create):
|
| + (WebCore::CCStreamVideoDrawQuad::CCStreamVideoDrawQuad):
|
| + (WebCore::CCStreamVideoDrawQuad::materialCast):
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCStreamVideoDrawQuad.h:
|
| + (CCStreamVideoDrawQuad):
|
| + * platform/graphics/chromium/cc/CCTextureDrawQuad.h:
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCTileDrawQuad.cpp:
|
| + (WebCore::CCTileDrawQuad::create):
|
| + (WebCore::CCTileDrawQuad::CCTileDrawQuad):
|
| + (WebCore::CCTileDrawQuad::materialCast):
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCTileDrawQuad.h:
|
| + (CCTileDrawQuad):
|
| + * platform/graphics/chromium/cc/CCYUVVideoDrawQuad.cpp:
|
| + (WebCore::CCYUVVideoDrawQuad::create):
|
| + (WebCore::CCYUVVideoDrawQuad::CCYUVVideoDrawQuad):
|
| + (WebCore::CCYUVVideoDrawQuad::materialCast):
|
| + (WebCore):
|
| + * platform/graphics/chromium/cc/CCYUVVideoDrawQuad.h:
|
| + (CCYUVVideoDrawQuad):
|
| +
|
| +2012-07-11 Robert Kroeger <rjkroege@chromium.org>
|
| +
|
| + [chromium] [regression] Don't use ScrollByPrecisePixels on Chromium Mac.
|
| + https://bugs.webkit.org/show_bug.cgi?id=91020
|
| +
|
| + Reviewed by Adam Barth.
|
| +
|
| + A change in https://bugs.webkit.org/show_bug.cgi?id=87535 to
|
| + improve the operation of smooth scrolling incorrectly caused
|
| + Chromium Mac to use the wrong scroll granularity on
|
| + hasPreciseScrollingDeltas() == true wheelevent scrolls.
|
| + Exclude the change on the Chromium Mac platform.
|
| +
|
| + * platform/ScrollAnimator.cpp:
|
| + (WebCore::ScrollAnimator::handleWheelEvent): Adjusted #ifdef to exclude Chromium
|
| + Mac from ScrollByPrecisePixels change.
|
| +
|
| +2012-07-11 Jia Pu <jpu@apple.com>
|
| +
|
| + On Mac, autocorrection sometimes fails to take place in Safari.
|
| + https://bugs.webkit.org/show_bug.cgi?id=89982
|
| +
|
| + Reviewed by Ryosuke Niwa.
|
| +
|
| + We should check the value of shouldCheckForCorrection, not shouldShowCorrectionPanel, to determine if we should
|
| + early return in markAndReplaceFor(). Also, since we don't want autocorrection to happen when we only change selection,
|
| + not the content, so we shouldn't set TextCheckingTypeCorrection flag in markMisspellingsAndBadGrammar() as this function
|
| + is triggered only by selection change.
|
| +
|
| + * editing/Editor.cpp:
|
| + (WebCore::Editor::markAndReplaceFor):
|
| + (WebCore::Editor::markMisspellingsAndBadGrammar):
|
| +
|
| +2012-07-11 Sheriff Bot <webkit.review.bot@gmail.com>
|
| +
|
| + Unreviewed, rolling out r122361.
|
| + http://trac.webkit.org/changeset/122361
|
| + https://bugs.webkit.org/show_bug.cgi?id=91027
|
| +
|
| + Broke Windows build and fast/forms/state-restore-broken-
|
| + state.html (Requested by rniwa on #webkit).
|
| +
|
| + * testing/Internals.idl:
|
| +
|
| +2012-07-10 Simon Fraser <simon.fraser@apple.com>
|
| +
|
| + Assertion ASSERTION FAILED: enclosingIntRect(rendererMappedResult) == enclosingIntRect(FloatQuad(result).boundingBox()) when compositing in paginated mode
|
| + https://bugs.webkit.org/show_bug.cgi?id=90919
|
| +
|
| + Reviewed by Antti Koivisto.
|
| +
|
| + r121124 added a fast path for geometry mapping that goes via layers
|
| + when possible. However, this broke paginated pages, which put
|
| + the root (RenderView) layer into column mode, because it failed
|
| + to check for columns on the ancestor layer.
|
| +
|
| + Rather than make a risky change to convertToLayerCoords(), add a local
|
| + function canMapViaLayer(), which is like RenderLayer::canUseConvertToLayerCoords(),
|
| + but doesn't check for compositing (compositing itself is not a reason
|
| + to avoid convertToLayerCoords). Call canMapViaLayer() with the ancestorLayer
|
| + to check whether the ancestor has columns, which fixes the bug.
|
| +
|
| + Test: compositing/columns/geometry-map-paginated-assert.html
|
| +
|
| + * rendering/RenderGeometryMap.cpp:
|
| + (WebCore::canMapViaLayer):
|
| + (WebCore::RenderGeometryMap::pushMappingsToAncestor):
|
| +
|
| +2012-07-11 Dana Jansens <danakj@chromium.org>
|
| +
|
| + [chromium] Rename layerRect to contentRect for rects that live in content space
|
| + https://bugs.webkit.org/show_bug.cgi?id=90843
|
| +
|
| + Reviewed by Adrienne Walker.
|
| +
|
| + Dropped the layerTransform() from CCSharedQuadState, as nothing should be
|
| + using it to draw with. RenderPasses need a weird drawTransform right now
|
| + which was stored in layerTransform, so moved this to the RenderPass quad.
|
| +
|
| + No new tests. No change in behaviour.
|
| +
|
| + * platform/graphics/chromium/CanvasLayerTextureUpdater.cpp:
|
| + (WebCore::CanvasLayerTextureUpdater::paintContents):
|
| + * platform/graphics/chromium/ContentLayerChromium.cpp:
|
| + (WebCore::ContentLayerChromium::update):
|
| + (WebCore::ContentLayerChromium::needMoreUpdates):
|
| + * platform/graphics/chromium/ImageLayerChromium.cpp:
|
| + (WebCore::ImageLayerChromium::update):
|
| + * platform/graphics/chromium/LayerChromium.cpp:
|
| + (WebCore::LayerChromium::visibleContentOpaqueRegion):
|
| + * platform/graphics/chromium/LayerChromium.h:
|
| + (WebCore::LayerChromium::visibleContentRect):
|
| + (WebCore::LayerChromium::setVisibleContentRect):
|
| + (LayerChromium):
|
| + * platform/graphics/chromium/LayerRendererChromium.cpp:
|
| + (WebCore::LayerRendererChromium::drawRenderPassQuad):
|
| + (WebCore::LayerRendererChromium::drawTileQuad):
|
| + (WebCore::LayerRendererChromium::drawYUVVideoQuad):
|
| + (WebCore::LayerRendererChromium::drawStreamVideoQuad):
|
| + (WebCore::LayerRendererChromium::drawIOSurfaceQuad):
|
| + * platform/graphics/chromium/TiledLayerChromium.cpp:
|
| + (WebCore::TiledLayerChromium::updateBounds):
|
| + (WebCore::TiledLayerChromium::setNeedsDisplayRect):
|
| + (WebCore::TiledLayerChromium::invalidateContentRect):
|
| + (WebCore::TiledLayerChromium::updateTiles):
|
| + (WebCore::TiledLayerChromium::setTexturePriorities):
|
| + (WebCore::TiledLayerChromium::setTexturePrioritiesInRect):
|
| + (WebCore::TiledLayerChromium::visibleContentOpaqueRegion):
|
| + (WebCore::TiledLayerChromium::updateContentRect):
|
| + (WebCore::TiledLayerChromium::needsIdlePaint):
|
| + (WebCore::TiledLayerChromium::idlePaintRect):
|
| + * platform/graphics/chromium/TiledLayerChromium.h:
|
| + (TiledLayerChromium):
|
| + * platform/graphics/chromium/cc/CCDrawQuad.h:
|
| + (WebCore::CCDrawQuad::visibleContentRect):
|
| + * platform/graphics/chromium/cc/CCLayerImpl.cpp:
|
| + (WebCore::CCLayerImpl::createSharedQuadState):
|
| + (WebCore::CCLayerImpl::appendDebugBorderQuad):
|
| + (WebCore::CCLayerImpl::visibleContentOpaqueRegion):
|
| + * platform/graphics/chromium/cc/CCLayerImpl.h:
|
| + (WebCore::CCLayerImpl::visibleContentRect):
|
| + (WebCore::CCLayerImpl::setVisibleContentRect):
|
| + (CCLayerImpl):
|
| + * platform/graphics/chromium/cc/CCLayerTilingData.cpp:
|
| + (WebCore::CCLayerTilingData::contentRectToTileIndices):
|
| + (WebCore::CCLayerTilingData::opaqueRegionInContentRect):
|
| + (WebCore::CCLayerTilingData::setBounds):
|
| + * platform/graphics/chromium/cc/CCLayerTilingData.h:
|
| + (CCLayerTilingData):
|
| + * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
|
| + (WebCore::calculateVisibleContentRect):
|
| + (WebCore::layerShouldBeSkipped):
|
| + (WebCore):
|
| + (WebCore::calculateVisibleAndScissorRectsInternal):
|
| + * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
|
| + (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
|
| + * platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
|
| + (WebCore::addOcclusionBehindLayer):
|
| + * platform/graphics/chromium/cc/CCRenderPassDrawQuad.cpp:
|
| + (WebCore::CCRenderPassDrawQuad::create):
|
| + (WebCore::CCRenderPassDrawQuad::CCRenderPassDrawQuad):
|
| + * platform/graphics/chromium/cc/CCRenderPassDrawQuad.h:
|
| + (CCRenderPassDrawQuad):
|
| + (WebCore::CCRenderPassDrawQuad::drawTransform):
|
| + * platform/graphics/chromium/cc/CCRenderSurface.cpp:
|
| + (WebCore::CCRenderSurface::createSharedQuadState):
|
| + (WebCore::CCRenderSurface::createReplicaSharedQuadState):
|
| + (WebCore::CCRenderSurface::appendQuads):
|
| + * platform/graphics/chromium/cc/CCSharedQuadState.cpp:
|
| + (WebCore::CCSharedQuadState::create):
|
| + (WebCore::CCSharedQuadState::CCSharedQuadState):
|
| + (WebCore::CCSharedQuadState::isLayerAxisAlignedIntRect):
|
| + * platform/graphics/chromium/cc/CCSharedQuadState.h:
|
| + (CCSharedQuadState):
|
| + (WebCore::CCSharedQuadState::visibleContentRect):
|
| + * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
|
| + (WebCore::CCTiledLayerImpl::appendQuads):
|
| + (WebCore::CCTiledLayerImpl::visibleContentOpaqueRegion):
|
| +
|
| +2012-07-11 Chris Fleizach <cfleizach@apple.com>
|
| +
|
| + ARIA spinbutton role incorrectly mapped to ProgressIndicatorRole
|
| + https://bugs.webkit.org/show_bug.cgi?id=77298
|
| +
|
| + Reviewed by Anders Carlsson.
|
| +
|
| + * accessibility/AccessibilityObject.cpp:
|
| + (WebCore::createARIARoleMap):
|
| +
|
| +2012-07-11 Huang Dongsung <luxtella@company100.net>
|
| +
|
| + BitmapImage::frameIsCompleteAtIndex() must return false if ImageDecoder is not initialized.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90757
|
| +
|
| + Reviewed by Simon Fraser.
|
| +
|
| + The current code fortunately has worked so far because only
|
| + BitmapImage::startAnimation calls frameIsCompleteAtIndex, and startAnimation
|
| + cannot call frameIsCompleteAtIndex if ImageDecoder is not yet initialized.
|
| + startAnimation returns at the first line becase shouldAnimate() always return
|
| + false in this case.
|
| +
|
| + if (m_frameTimer || !shouldAnimate() || frameCount() <= 1)
|
| + return;
|
| +
|
| + This change is needed because parallel image decoders call
|
| + BitmapImage::frameIsCompleteAtIndex in other places too.
|
| +
|
| + No new tests, manually tested whether the caller exists or not that
|
| + calls BitmapImage::frameIsCompleteAtIndex() before ImageDecoder is
|
| + initialized.
|
| +
|
| + * platform/graphics/BitmapImage.cpp:
|
| + (WebCore::BitmapImage::frameIsCompleteAtIndex):
|
| +
|
| +2012-07-11 Kevin Ollivier <kevino@theolliviers.com>
|
| +
|
| + [wx] Unreviewed build fix. Update code to use the new constant name.
|
| +
|
| + * platform/wx/PasteboardWx.cpp:
|
| + (WebCore::Pasteboard::documentFragment):
|
| +
|
| +2012-07-11 Kevin Ollivier <kevino@theolliviers.com>
|
| +
|
| + [wx] Unreviewed build fix. Ignore array and sequence types for attributes as well
|
| + as functions since the CPP bindings do not yet support them.
|
| +
|
| + * bindings/scripts/CodeGeneratorCPP.pm:
|
| + (SkipAttribute):
|
| +
|
| +2012-07-11 Kevin Ollivier <kevino@theolliviers.com>
|
| +
|
| + [wx] Unreviewed build fix. Use DOMStringList instead of DOMString[] for in / out type.
|
| +
|
| + * testing/Internals.idl:
|
| +
|
| +2012-07-11 Dana Jansens <danakj@chromium.org>
|
| +
|
| + [chromium] Minimum size used for occlusion tracking should be a setting on CCLayerTreeHost
|
| + https://bugs.webkit.org/show_bug.cgi?id=90993
|
| +
|
| + Reviewed by Adrienne Walker.
|
| +
|
| + Move the default minimum size used for occlusion tracking from the
|
| + CCOcclusionTracker class into CCLayerTreeSettings. This value is then
|
| + used on both threads as the lower limit for any occlusion to be
|
| + remembered.
|
| +
|
| + This allows us to use (0, 0) as the minimum size for tests, allowing all
|
| + occlusion to be tracked.
|
| +
|
| + * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
|
| + (WebCore::CCLayerTreeHost::paintLayerContents):
|
| + * platform/graphics/chromium/cc/CCLayerTreeHost.h:
|
| + (WebCore::CCLayerTreeSettings::CCLayerTreeSettings):
|
| + (CCLayerTreeSettings):
|
| + * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
|
| + (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
|
| + * platform/graphics/chromium/cc/CCOcclusionTracker.h:
|
| +
|
| +2012-07-11 Anders Carlsson <andersca@apple.com>
|
| +
|
| + Add -Wtautological-compare and -Wsign-compare warning flags
|
| + https://bugs.webkit.org/show_bug.cgi?id=90994
|
| +
|
| + Reviewed by Mark Rowe.
|
| +
|
| + * Configurations/Base.xcconfig:
|
| +
|
| +2012-07-11 Dean Jackson <dino@apple.com>
|
| +
|
| + TileCache layers have wrong border debug color
|
| + https://bugs.webkit.org/show_bug.cgi?id=90922
|
| +
|
| + Reviewed by Simon Fraser.
|
| +
|
| + Commit r122152 updated the layer hierarchy when a tile
|
| + cache is being used by the view. As part of that, GraphicsLayerClient::shouldUseTileCache()
|
| + was changed to return false in some situations (the idea was that it
|
| + should only be called from the createGraphicsLayer method). However
|
| + there were two other call points: one that sets the debug colors on
|
| + borders, the other was a call that keeps the document background in sync.
|
| +
|
| + Add a new method usingTileCache() that returns the current state. Also fix
|
| + a FIXME where the debug code always called into the client rather than
|
| + caching the value on the GraphicsLayer.
|
| +
|
| + Test: compositing/document-background-color.html
|
| +
|
| + * platform/graphics/GraphicsLayer.cpp:
|
| + (WebCore::GraphicsLayer::GraphicsLayer):
|
| + (WebCore::GraphicsLayer::updateDebugIndicators): check the local variable when
|
| + setting the debug colors.
|
| + * platform/graphics/GraphicsLayer.h:
|
| + (GraphicsLayer): new bool member variable m_usingTileCache.
|
| + * platform/graphics/GraphicsLayerClient.h:
|
| + (WebCore::GraphicsLayerClient::usingTileCache): new virtual method to query if
|
| + this client is actually using the tile cache.
|
| + * platform/graphics/ca/GraphicsLayerCA.cpp:
|
| + (WebCore::GraphicsLayerCA::GraphicsLayerCA): set the member variable m_usingTileCache
|
| + if the GraphicsLayerClient says we are.
|
| + * rendering/RenderLayerBacking.h:
|
| + (WebCore::RenderLayerBacking::usingTileCache):
|
| + * rendering/RenderLayerCompositor.cpp:
|
| + (WebCore::RenderLayerCompositor::documentBackgroundColorDidChange): call usingTileCache()
|
| + rather than shouldUseTileCache(), because the latter's value might not always reflect
|
| + the existence of a cache.
|
| +
|
| +2012-07-11 Ryosuke Niwa <rniwa@webkit.org>
|
| +
|
| + Clang build fix after r122345.
|
| + Also let XCode do its own thing.
|
| +
|
| + * WebCore.xcodeproj/project.pbxproj:
|
| + * html/HTMLCollection.cpp:
|
| + (WebCore::HTMLCollectionWithArrayStorage::item):
|
| + * html/HTMLCollection.h:
|
| + (HTMLCollectionWithArrayStorage):
|
| + * html/HTMLFormCollection.cpp:
|
| + (WebCore::HTMLFormCollection::itemInArrayAfter):
|
| + * html/HTMLFormCollection.h:
|
| + (HTMLFormCollection):
|
| + * html/HTMLPropertiesCollection.cpp:
|
| + (WebCore::HTMLPropertiesCollection::itemInArrayAfter):
|
| + * html/HTMLPropertiesCollection.h:
|
| + (HTMLPropertiesCollection):
|
| +
|
| +2012-07-11 Arnaud Renevier <a.renevier@sisa.samsung.com>
|
| +
|
| + [Gtk] allow building with css-filters
|
| + https://bugs.webkit.org/show_bug.cgi?id=90908
|
| +
|
| + Reviewed by Eric Seidel.
|
| +
|
| + Add support for css-filters in Source/WebCore/GNUmakefile.am
|
| + configure.ac
|
| +
|
| + No functional change, so no new tests.
|
| +
|
| + * GNUmakefile.am:
|
| +
|
| +2012-07-10 Ryosuke Niwa <rniwa@webkit.org>
|
| +
|
| + HTMLFormCollection::item and HTMLPropertiesCollection::item should share code
|
| + https://bugs.webkit.org/show_bug.cgi?id=90932
|
| +
|
| + Reviewed by Anders Carlsson.
|
| +
|
| + Merged HTMLFormCollection::item and HTMLPropertiesCollection::item as HTMLCollectionWithArrayStorage::item,
|
| + which can be merged into HTMLCollection::item in a follow up patch.
|
| +
|
| + Also moved the call to invalidateCacheIfNeeded into HTMLCollection::updateNameCache() as done in
|
| + HTMLPropertiesCollection.
|
| +
|
| + In addition, moved the early bail out for when the base element doesn't have itemscope attribute from individual
|
| + functions to updateRefElements so that HTMLCollectionWithArrayStorage::item doesn't need to have this check.
|
| +
|
| + * html/HTMLCollection.cpp:
|
| + (WebCore::HTMLCollectionWithArrayStorage::item): Added. It's based on HTMLPropertiesCollection::item but it only
|
| + has the single loop (as supposed to nested loops) as HTMLFormCollection doesn't have multiple items per element
|
| + in the array unlike HTMLPropertiesCollection. In addition, offsetInArray (was i in HTMLPropertiesCollection::item) is
|
| + incremented in each itemAfter due to this semantic difference in each itemAfter.
|
| + (WebCore::HTMLCollection::updateNameCache):
|
| + (WebCore::HTMLCollection::hasNamedItem):
|
| + (WebCore::HTMLCollection::namedItems):
|
| + * html/HTMLCollection.h:
|
| + (HTMLCollectionWithArrayStorage):
|
| + (WebCore::HTMLCollectionWithArrayStorage::HTMLCollectionWithArrayStorage):
|
| + * html/HTMLFormCollection.cpp:
|
| + (WebCore::HTMLFormCollection::HTMLFormCollection):
|
| + (WebCore::HTMLFormCollection::calcLength): Merged numberOfFormControlElements since it was only called here.
|
| + (WebCore::HTMLFormCollection::itemAfter): Added. HTMLFormCollection has exactly one item per element in the array
|
| + so we increment the offset in each iteration. Note that when we're continuing a search, we need to increment
|
| + the offset in order to avoid returning the same item.
|
| + (WebCore::HTMLFormCollection::updateNameCache):
|
| + * html/HTMLFormCollection.h:
|
| + (HTMLFormCollection):
|
| + * html/HTMLPropertiesCollection.cpp:
|
| + (WebCore::HTMLPropertiesCollection::HTMLPropertiesCollection):
|
| + (WebCore::HTMLPropertiesCollection::updateRefElements): Set m_hasItemRefElements true upfront since we never fail to
|
| + update ref elements. Bail out as soon as we cleared the m_itemRefElements when the base element doesn't have itemscope
|
| + content attribute.
|
| + (WebCore::HTMLPropertiesCollection::itemAfter): Added. We reset previousItem to null because the existing itemAfter
|
| + requires previousItem be null when we're moving to a new entry in m_itemRefElements.
|
| + (WebCore::HTMLPropertiesCollection::calcLength):
|
| + (WebCore::HTMLPropertiesCollection::cacheFirstItem):
|
| + (WebCore::HTMLPropertiesCollection::updateNameCache): Merged findProperties since this was the only caller.
|
| + (WebCore::HTMLPropertiesCollection::names):
|
| + (WebCore::HTMLPropertiesCollection::namedItem):
|
| + (WebCore::HTMLPropertiesCollection::hasNamedItem):
|
| + * html/HTMLPropertiesCollection.h:
|
| + (HTMLPropertiesCollection): Made updateRefElements public as it's called in HTMLCollectionWithArrayStorage::item.
|
| +
|
| +2012-07-11 Sami Kyostila <skyostil@chromium.org>
|
| +
|
| + RenderView layer is marked as fixed position container in the scrolling tree if page scale != 1
|
| + https://bugs.webkit.org/show_bug.cgi?id=89216
|
| +
|
| + Reviewed by Simon Fraser.
|
| +
|
| + Render layers with CSS transforms should become containers for any fixed
|
| + positioned descendants. However, because this check is done with
|
| + RenderLayer::hasTransform(), we also end up marking the RenderLayer for the
|
| + RenderView as fixed position container if a non-identity page scale factor is
|
| + used. This is because page scale is applied as a transform for that layer.
|
| +
|
| + This breaks fixed position layers, because they become fixed relative to the
|
| + RenderView layer instead of outer scroll clip layer.
|
| +
|
| + The fix is to avoid marking any root layers as fixed position containers.
|
| +
|
| + No new test because the scrolling tree isn't currently testable.
|
| +
|
| + * rendering/RenderLayerBacking.cpp:
|
| + (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
|
| +
|
| +2012-07-11 Julien Chaffraix <jchaffraix@webkit.org>
|
| +
|
| + REGRESSION (r116203): overflow sections don't have scrollbars
|
| + https://bugs.webkit.org/show_bug.cgi?id=90052
|
| +
|
| + Reviewed by Simon Fraser.
|
| +
|
| + This issue stems from RenderLayers with overlay scrollbars not being considered
|
| + self-painting.
|
| +
|
| + After r120395 (follow-up of r116203), we ignore subtrees that have no self-painting layer for
|
| + painting. Normal scrollbars are painted by their renderer so they were properly painted. However
|
| + overlay scrollbars need to be painted by their RenderLayer as a separate phase (see bug 57057) so
|
| + they were not painted anymore. The fix is simple: make RenderLayer with overlay scrollbars
|
| + self-painting as they should have been in the first place.
|
| +
|
| + Unfortunately no tests as I don't think we have a good way of testing overlay
|
| + scrollbars. Tested manually though on the super simple test case from the bug.
|
| +
|
| + * rendering/RenderLayer.cpp:
|
| + (WebCore::RenderLayer::shouldBeSelfPaintingLayer):
|
| + Overlay scrollbars make the layer self-painting.
|
| +
|
| + (WebCore::RenderLayer::updateScrollbarsAfterLayout):
|
| + Added a call to updateSelfPaintingLayer.
|
| +
|
| + (WebCore::RenderLayer::styleChanged):
|
| + Moved the call to updateSelfPaintingLayer after recomputing the scrollbars to ensure proper behavior.
|
| + Added a comment underlining the reason.
|
| +
|
| + (WebCore::RenderLayer::updateSelfPaintingLayer):
|
| + Renamed as it is now called during layout too.
|
| +
|
| + * rendering/RenderLayer.h:
|
| + (RenderLayer): Updated after updateSelfPaintingLayer rename.
|
| +
|
| +2012-07-11 Allan Sandfeld Jensen <allan.jensen@nokia.com>
|
| +
|
| + NodesFromRect doesn't work on SVG root elements.
|
| + https://bugs.webkit.org/show_bug.cgi?id=89990
|
| +
|
| + Reviewed by Antonio Gomes.
|
| +
|
| + Adds support for rect-based hit-testing on the SVG root element.
|
| + This means that while rect-based hit-testing is still not supported
|
| + within SVG elements, that at least it works on SVG root elements as
|
| + it would on any other replaced element.
|
| +
|
| + Test: fast/dom/nodesFromRect-svg.html
|
| +
|
| + * rendering/svg/RenderSVGRoot.cpp:
|
| + (WebCore::RenderSVGRoot::nodeAtPoint):
|
| +
|
| +2012-07-11 Joshua Netterfield <jnetterfield@rim.com>
|
| +
|
| + [Qt] REGRESSION(r122250): It broke USE(3D_GRAPHICS)=1 and ENABLE(WEBGL)=0 builds
|
| + https://bugs.webkit.org/show_bug.cgi?id=90943
|
| +
|
| + Reviewed by Csaba Osztrogonác.
|
| +
|
| + Uses proper guarding in Extensions3DOpenGLCommon and Extensions3DOpenGLES as per https://bugs.webkit.org/show_bug.cgi?id=90506.
|
| +
|
| + No new tests, becasue there is no new functionality.
|
| +
|
| + * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: Use proper guarding.
|
| + * platform/graphics/opengl/Extensions3DOpenGLES.cpp: Use proper guarding.
|
| +
|
| +2012-07-10 Pavel Feldman <pfeldman@chromium.org>
|
| +
|
| + Web Inspector: migrate from background images to CSS for statusbar rendering.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90902
|
| +
|
| + Reviewed by Vsevolod Vlasov.
|
| +
|
| + This change removes statusbar* images and uses gradients and borders to re-create original inspector look.
|
| +
|
| + * WebCore.gypi:
|
| + * inspector/front-end/Images/statusbarBackground.png: Removed.
|
| + * inspector/front-end/Images/statusbarBottomBackground.png: Removed.
|
| + * inspector/front-end/Images/statusbarButtons.png: Removed.
|
| + * inspector/front-end/Images/statusbarMenuButton.png: Removed.
|
| + * inspector/front-end/Images/statusbarMenuButtonSelected.png: Removed.
|
| + * inspector/front-end/StatusBarButton.js:
|
| + * inspector/front-end/WebKit.qrc:
|
| + * inspector/front-end/inspector.css:
|
| + (body.drawer-visible #main-status-bar):
|
| + (body.drawer-visible #main-status-bar::after):
|
| + (.status-bar-background):
|
| + (.status-bar > div):
|
| + (.glyph):
|
| + (button.status-bar-item):
|
| + (.status-bar button.status-bar-item:active):
|
| + (select.status-bar-item):
|
| + (select.status-bar-item, select.status-bar-item:hover):
|
| + (body.detached .alternate-status-bar-buttons-bar):
|
| + (.alternate-status-bar-buttons-bar):
|
| + (.alternate-status-bar-buttons-bar .status-bar-item):
|
| + (.alternate-status-bar-buttons-bar .status-bar-item.emulate-active):
|
| + (#drawer):
|
| + (body.drawer-visible #drawer-contents):
|
| + (#drawer-status-bar):
|
| + * inspector/front-end/inspector.html:
|
| + * inspector/front-end/scriptsPanel.css:
|
| + (button.status-bar-item.scripts-navigator-show-hide-button):
|
| + (button.status-bar-item.scripts-navigator-show-hide-button:active):
|
| + (button.status-bar-item.scripts-debugger-show-hide-button):
|
| + (button.status-bar-item.scripts-debugger-show-hide-button:active):
|
| +
|
| +2012-07-11 Jason Liu <jason.liu@torchmobile.com.cn>
|
| +
|
| + [BlackBerry] crash in CookieDatabaseBackingStore.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90270
|
| +
|
| + Reviewed by George Staikos.
|
| +
|
| + There is one case for this crash.
|
| + 1. A browser crashes and locks cookies' database for a while.
|
| + 2. Open a new browser when the old one doesn't finish crashing.
|
| + 3. The new one writes the cookies' database and receives a SQLITE_BUSY error
|
| + in CookieDatabaseBackingStore's invokeOpen. So this database isn't opened.
|
| + 4. invokeGetCookiesWithLimit returns 0.
|
| + 5. Crash happens when using a null pointer.
|
| +
|
| + Add function setBusyTimeout(1000) and a guard for cookies' pointer.
|
| + setBusyTimeout will call sqlite3_busy_timeout.
|
| +
|
| + When the SQLite database is accessed for reading it is locked for writing
|
| + until the reading access is finished. Another process cannot access the database
|
| + while it is locked. The timeout time sets a limit while this process tries to access
|
| + the locked database. If the database is unlocked within the timeout time it can be
|
| + accessed, otherwise an access fails.
|
| +
|
| + No new tests. This crash is hard to reproduce, and it happens only on our platform.
|
| +
|
| + * platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.cpp:
|
| + (WebCore::CookieDatabaseBackingStore::getCookiesFromDatabase):
|
| +
|
| +2012-07-11 Vsevolod Vlasov <vsevik@chromium.org>
|
| +
|
| + Web Inspector: Move revisions support to UISourceCode.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90888
|
| +
|
| + Reviewed by Pavel Feldman.
|
| +
|
| + Moved revisions support to UISourceCode.
|
| + Revision management code is moved unchanged where possible and should be refactored later.
|
| +
|
| + * inspector/front-end/CSSStyleModel.js:
|
| + (WebInspector.CSSStyleModelResourceBinding.prototype._innerStyleSheetChanged): revision is now added to uiSourceCode, not resource.
|
| + * inspector/front-end/ExtensionServer.js:
|
| + (WebInspector.ExtensionServer.prototype._notifyUISourceCodeContentCommitted):
|
| + Extension server is now listening for Workspace.UISourceCodeContentCommitted event instead of ResourceTreeModel.ResourceContentCommitted.
|
| + * inspector/front-end/Resource.js:
|
| + * inspector/front-end/ResourceTreeModel.js: ResourceTreeModel.ResourceContentCommitted renamed to Workspace.UISourceCodeContentCommitted.
|
| + * inspector/front-end/ResourceView.js:
|
| + (WebInspector.ResourceSourceFrame): ResourceSourceFrame is not update when revisions are added anymore as resource conenten is considered immutable now
|
| + * inspector/front-end/RevisionHistoryView.js:
|
| + (WebInspector.RevisionHistoryView.populateRevisions):
|
| + (WebInspector.RevisionHistoryView):
|
| + (WebInspector.RevisionHistoryView.showHistory):
|
| + (WebInspector.RevisionHistoryView.prototype._createUISourceCodeItem):
|
| + (WebInspector.RevisionHistoryView.prototype._revisionAdded.get if):
|
| + (WebInspector.RevisionHistoryView.prototype._revisionAdded):
|
| + (WebInspector.RevisionHistoryView.prototype._revealUISourceCode.get if):
|
| + (WebInspector.RevisionHistoryView.prototype._revealUISourceCode):
|
| + (WebInspector.RevisionHistoryView.prototype._reset):
|
| + * inspector/front-end/ScriptSnippetModel.js: Snippets are not loaded before ResourceTreeModel.mainFrame is available anymore.
|
| + (WebInspector.ScriptSnippetModel):
|
| + (WebInspector.ScriptSnippetModel.prototype._setScriptSnippetContent):
|
| + * inspector/front-end/UISourceCode.js:
|
| + (WebInspector.UISourceCode):
|
| + (WebInspector.UISourceCode.prototype.requestOriginalContent):
|
| + (WebInspector.UISourceCode.prototype._setContent):
|
| + (WebInspector.UISourceCode.prototype.addRevision):
|
| + (WebInspector.UISourceCode.prototype._restoreRevisionHistory):
|
| + (WebInspector.UISourceCode.prototype._clearRevisionHistory):
|
| + (WebInspector.UISourceCode.prototype.revertToOriginal):
|
| + (WebInspector.UISourceCode.prototype.revertAndClearHistory):
|
| + (WebInspector.UISourceCode.prototype.revertAndClearHistory.clearHistory):
|
| + (WebInspector.UISourceCode.prototype.commitWorkingCopy):
|
| + (WebInspector.UISourceCode.prototype.canonicalMimeType):
|
| + (WebInspector.Revision):
|
| + (WebInspector.Revision._revisionHistoryRegistry):
|
| + (WebInspector.Revision._ensureStaleRevisionsFileteredOut.persist):
|
| + (WebInspector.Revision._ensureStaleRevisionsFileteredOut):
|
| + (WebInspector.Revision.prototype.get uiSourceCode):
|
| + (WebInspector.Revision.prototype.get timestamp):
|
| + (WebInspector.Revision.prototype.get content):
|
| + (WebInspector.Revision.prototype.revertToThis):
|
| + (WebInspector.Revision.prototype.contentURL):
|
| + (WebInspector.Revision.prototype.contentType):
|
| + (WebInspector.Revision.prototype.requestContent):
|
| + (WebInspector.Revision.prototype.searchInContent):
|
| + (WebInspector.Revision.prototype._persist):
|
| + * inspector/front-end/UserAgentSupport.js: Drive-by closure compilation fix.
|
| + * inspector/front-end/Workspace.js:
|
| + * inspector/front-end/inspector.js: ScriptSnippetModel is now created after ResourceTreeModel.
|
| +
|
| +2012-07-11 MORITA Hajime <morrita@google.com>
|
| +
|
| + WebCoreSupport needs objects each of which follows major WebCore objects
|
| + https://bugs.webkit.org/show_bug.cgi?id=88499
|
| +
|
| + Reviewed by Alexey Proskuryakov.
|
| +
|
| + This change
|
| +
|
| + - Makes Internals rough lifetime to follow Document.
|
| + Note that Internals can survive longer than Document in same case.
|
| + Internals::m_document is cleared when the document destruction is notified.
|
| + - Makes InternalSettings rough lifetime to follow the Page.
|
| + This is done by making InternalSettings a supplement of the page.
|
| + Now InternalSettings object is created per Page instead of per Frame.
|
| +
|
| + Per-test setting clearance is done by newly introduced InternalSettings::Backup,
|
| + which recovers the modified settings and refreshes it for each time a test starts.
|
| +
|
| + * WebCore.exp.in:
|
| + * testing/InternalSettings.cpp:
|
| + (WebCore::InternalSettings::Backup::Backup):
|
| + (WebCore):
|
| + (WebCore::InternalSettings::Backup::restoreTo):
|
| + (WebCore::InternalSettings::from):
|
| + (WebCore::InternalSettings::~InternalSettings):
|
| + (WebCore::InternalSettings::InternalSettings):
|
| + (WebCore::InternalSettings::reset):
|
| + (WebCore::InternalSettings::settings):
|
| + (WebCore::InternalSettings::setFixedElementsLayoutRelativeToFrame):
|
| + (WebCore::InternalSettings::setFixedPositionCreatesStackingContext):
|
| + (WebCore::InternalSettings::allowRoundingHacks):
|
| + (WebCore::InternalSettings::userPreferredLanguages):
|
| + (WebCore::InternalSettings::setUserPreferredLanguages):
|
| + (WebCore::InternalSettings::setShouldDisplayTrackKind):
|
| + (WebCore::InternalSettings::shouldDisplayTrackKind):
|
| + (WebCore::InternalSettings::setPagination):
|
| + * testing/InternalSettings.h:
|
| + (Backup):
|
| + (InternalSettings):
|
| + (WebCore::InternalSettings::page):
|
| + * testing/InternalSettings.idl:
|
| + * testing/Internals.cpp:
|
| + (WebCore::Internals::Internals):
|
| + (WebCore):
|
| + (WebCore::Internals::contextDocument):
|
| + (WebCore::Internals::frame):
|
| + (WebCore::Internals::settings):
|
| + (WebCore::Internals::setPagination): Replaced as an alias.
|
| + (WebCore::Internals::userPreferredLanguages): Replaced as an alias.
|
| + (WebCore::Internals::setUserPreferredLanguages): Replaced as an alias.
|
| + (WebCore::Internals::setShouldDisplayTrackKind): Replaced as an alias.
|
| + (WebCore::Internals::shouldDisplayTrackKind): Replaced as an alias.
|
| + (WebCore::Internals::emitInspectorDidBeginFrame):
|
| + (WebCore::Internals::emitInspectorDidCancelFrame):
|
| + (WebCore::Internals::allowRoundingHacks): Replaced as an alias.
|
| + * testing/Internals.h:
|
| + (WebCore):
|
| + (Internals):
|
| + * testing/js/WebCoreTestSupport.cpp:
|
| + (WebCoreTestSupport::injectInternalsObject):
|
| + (WebCoreTestSupport::resetInternalsObject):
|
| + * testing/v8/WebCoreTestSupport.cpp:
|
| + (WebCoreTestSupport::injectInternalsObject):
|
| + (WebCoreTestSupport::resetInternalsObject):
|
| +
|
| +2012-07-11 Yoshifumi Inoue <yosin@chromium.org>
|
| +
|
| + [Mac] Expose time format related functions
|
| + https://bugs.webkit.org/show_bug.cgi?id=90956
|
| +
|
| + Reviewed by Kent Tamura.
|
| +
|
| + This patch introduces localizedTimeFormatText, localizedShortTimeFormatText
|
| + and timeAMPMLabels for Mac within feature flag ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.
|
| +
|
| + See also:
|
| + ICU version: https://bugs.webkit.org/show_bug.cgi?id=89965
|
| + Win version: https://bugs.webkit.org/show_bug.cgi?id=90236
|
| +
|
| + No new tests. This patch doesn't change behavior.
|
| +
|
| + * platform/text/mac/LocalizedDateMac.cpp:
|
| + (WebCore::localizedTimeFormatText): Added.
|
| + (WebCore::localizedShortTimeFormatText): Added.
|
| + (WebCore::timeAMPMLabels): Added.
|
| +
|
| +2012-07-11 Kenichi Ishibashi <bashi@chromium.org>
|
| +
|
| + [Chromium] Adding HarfBuzz-ng for Linux
|
| + https://bugs.webkit.org/show_bug.cgi?id=90362
|
| +
|
| + Reviewed by Tony Chang.
|
| +
|
| + This patch adds harfbuzz-ng support for Chromium Linux port as a part of
|
| + transition from old harfbuzz. HarfBuzzFaceSkia.cpp implements harfbuzz-ng
|
| + callbacks by using Skia APIs. For now, the feature is enabled only when
|
| + WTF_USE_HARFBUZZ_NG is defined.
|
| +
|
| + No new tests. No change in behavior now.
|
| +
|
| + * WebCore.gyp/WebCore.gyp: Added use_harfbuzz_ng variable and related files.
|
| + * WebCore.gypi: Added HarfBuzzFaceSkia.cpp
|
| + * platform/graphics/harfbuzz/FontHarfBuzz.cpp: Added USE(HARFBUZZ_NG).
|
| + (WebCore::Font::drawComplexText):
|
| + (WebCore::Font::floatWidthForComplexText):
|
| + (WebCore::Font::offsetForPositionForComplexText):
|
| + (WebCore::Font::selectionRectForComplexText):
|
| + * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp: Ditto.
|
| + (WebCore):
|
| + (WebCore::FontPlatformData::harfbuzzFace):
|
| + * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h: Ditto.
|
| + (FontPlatformData):
|
| + * platform/graphics/harfbuzz/ng/HarfBuzzFaceSkia.cpp: Added.
|
| + (WebCore):
|
| + (WebCore::SkiaScalarToHarfbuzzPosition):
|
| + (WebCore::SkiaGetGlyphWidthAndExtents):
|
| + (WebCore::harfbuzzGetGlyph):
|
| + (WebCore::harfbuzzGetGlyphHorizontalAdvance):
|
| + (WebCore::harfbuzzGetGlyphHorizontalOrigin):
|
| + (WebCore::harfbuzzGetGlyphExtents):
|
| + (WebCore::harfbuzzSkiaGetFontFuncs):
|
| + (WebCore::harfbuzzSkiaGetTable):
|
| + (WebCore::destroyPaint):
|
| + (WebCore::HarfBuzzFace::createFace):
|
| + (WebCore::HarfBuzzFace::createFont):
|
| + (WebCore::HarfBuzzShaper::createGlyphBufferAdvance):
|
| + * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Added USE(HARFBUZZ_NG).
|
| + (WebCore::substituteWithVerticalGlyphs):
|
| +
|
| +2012-07-11 Taiju Tsuiki <tzik@chromium.org>
|
| +
|
| + Web Inspector: Clean up FileSystem related code
|
| + https://bugs.webkit.org/show_bug.cgi?id=90592
|
| +
|
| + Reviewed by Vsevolod Vlasov.
|
| +
|
| + Clean up FileSystem related code in Inspector as follows:
|
| + - Clean up layout tests and add test case for error case,
|
| + - Fix error handling on request,
|
| + - s/GetFileSystemRootTask/FileSystemRootRequest/g
|
| + - s/ReadDirectoryTask/DirectoryContentRequest/g
|
| + - s/ReadFileTask/FileContentRequest/g
|
| +
|
| + Tests: http/tests/inspector/filesystem/request-directory-content.html
|
| + http/tests/inspector/filesystem/request-file-content.html
|
| + http/tests/inspector/filesystem/request-filesystem-root.html
|
| + http/tests/inspector/filesystem/request-metadata.html
|
| +
|
| + * inspector/InspectorFileSystemAgent.cpp:
|
| + (WebCore):
|
| + (WebCore::InspectorFileSystemAgent::requestFileSystemRoot): Add early error handling.
|
| + (WebCore::InspectorFileSystemAgent::requestDirectoryContent): Add early error handling.
|
| + (WebCore::InspectorFileSystemAgent::requestMetadata): Add early error handling.
|
| + (WebCore::InspectorFileSystemAgent::requestFileContent): Add early error handling.
|
| + * inspector/InspectorFileSystemAgent.h: Remove unused forward declaration and unused header.
|
| + (WebCore):
|
| + (InspectorFileSystemAgent):
|
| + * inspector/front-end/FileSystemModel.js:
|
| + (WebInspector.FileSystemRequestManager.prototype.requestFileSystemRoot.requestAccepted):
|
| + (WebInspector.FileSystemRequestManager.prototype.requestFileSystemRoot): Add early error handling.
|
| + (WebInspector.FileSystemRequestManager.prototype.requestDirectoryContent.requestAccepted):
|
| + (WebInspector.FileSystemRequestManager.prototype.requestDirectoryContent): Add early error handling.
|
| + (WebInspector.FileSystemRequestManager.prototype.requestMetadata.requestAccepted):
|
| + (WebInspector.FileSystemRequestManager.prototype.requestMetadata): Add early error handling.
|
| + (WebInspector.FileSystemRequestManager.prototype.requestFileContent.requestAccepted):
|
| + (WebInspector.FileSystemRequestManager.prototype.requestFileContent): Add early error handling.
|
| +
|
| +2012-07-09 Eugene Klyuchnikov <eustas.bug@gmail.com>
|
| +
|
| + Web Inspector: Forward message loop instrumentation data to frontend.
|
| + https://bugs.webkit.org/show_bug.cgi?id=89584
|
| +
|
| + Reviewed by Yury Semikhatsky.
|
| +
|
| + Transmit collected message loop tasks to inspector frontend.
|
| + Now "Program" should be a top-level event on browsers that
|
| + support message loop instrumentation.
|
| + Frontend was changed so that user will not see any changes.
|
| +
|
| + * inspector/InspectorTimelineAgent.cpp:
|
| + (TimelineRecordType):
|
| + Added new event type - "Program"
|
| + (WebCore::InspectorTimelineAgent::willProcessTask):
|
| + Begin "Program" event.
|
| + (WebCore::InspectorTimelineAgent::didProcessTask):
|
| + Finish "Program" event.
|
| + (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
|
| + Do not add counters to "Program" events.
|
| + (WebCore):
|
| + (WebCore::InspectorTimelineAgent::innerSetHeapSizeStatistic):
|
| + Renamed from "setHeapSizeStatistic"
|
| + * inspector/InspectorTimelineAgent.h:
|
| + (InspectorTimelineAgent):
|
| + * inspector/front-end/MemoryStatistics.js:
|
| + (WebInspector.MemoryStatistics.prototype._onRecordAdded):
|
| + Unwraps "Program" events.
|
| + (WebInspector.MemoryStatistics.prototype._innerRecordAdded):
|
| + Renamed from "_onRecordAdded"
|
| + * inspector/front-end/TimelineFrameController.js:
|
| + (WebInspector.TimelineFrameController.prototype._addRecord):
|
| + Unwraps "Program" events.
|
| + (WebInspector.TimelineFrameController.prototype._innerAddRecord):
|
| + Renamed from "_addRecord"
|
| + * inspector/front-end/TimelineModel.js:
|
| + * inspector/front-end/TimelineOverviewPane.js:
|
| + (WebInspector.TimelineCategoryStrips.prototype.update.appendRecord):
|
| + Filter out "Program" category.
|
| + (WebInspector.TimelineCategoryStrips.prototype.update):
|
| + * inspector/front-end/TimelinePanel.js:
|
| + (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
|
| + Filter out "Program" category.
|
| + (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
|
| + Unwraps "Program" events.
|
| + * inspector/front-end/TimelinePresentationModel.js:
|
| + (WebInspector.TimelinePresentationModel.categories):
|
| + Added "Program" category.
|
| + (WebInspector.TimelinePresentationModel.recordStyle):
|
| + Ditto.
|
| + (WebInspector.TimelinePresentationModel.prototype.addRecord):
|
| + Unwraps "Program" events.
|
| + (WebInspector.TimelinePresentationModel.prototype._addRecord):
|
| + Renamed from "addRecord"
|
| +
|
| +2012-07-11 Kenichi Ishibashi <bashi@chromium.org>
|
| +
|
| + [Chromium] Adding HarfBuzz-ng for Linux
|
| + https://bugs.webkit.org/show_bug.cgi?id=90362
|
| +
|
| + Reviewed by Tony Chang.
|
| +
|
| + This patch adds harfbuzz-ng support for Chromium Linux port as a part of
|
| + transition from old harfbuzz. HarfBuzzFaceSkia.cpp implements harfbuzz-ng
|
| + callbacks by using Skia APIs. For now, the feature is enabled only when
|
| + WTF_USE_HARFBUZZ_NG is defined.
|
| +
|
| + No new tests. No change in behavior now.
|
| +
|
| + * WebCore.gyp/WebCore.gyp: Added use_harfbuzz_ng variable and related files.
|
| + * WebCore.gypi: Added HarfBuzzFaceSkia.cpp
|
| + * platform/graphics/harfbuzz/FontHarfBuzz.cpp: Added USE(HARFBUZZ_NG).
|
| + (WebCore::Font::drawComplexText):
|
| + (WebCore::Font::floatWidthForComplexText):
|
| + (WebCore::Font::offsetForPositionForComplexText):
|
| + (WebCore::Font::selectionRectForComplexText):
|
| + * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp: Ditto.
|
| + (WebCore):
|
| + (WebCore::FontPlatformData::harfbuzzFace):
|
| + * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h: Ditto.
|
| + (FontPlatformData):
|
| + * platform/graphics/harfbuzz/ng/HarfBuzzFaceSkia.cpp: Added.
|
| + (WebCore):
|
| + (WebCore::SkiaScalarToHarfbuzzPosition):
|
| + (WebCore::SkiaGetGlyphWidthAndExtents):
|
| + (WebCore::harfbuzzGetGlyph):
|
| + (WebCore::harfbuzzGetGlyphHorizontalAdvance):
|
| + (WebCore::harfbuzzGetGlyphHorizontalOrigin):
|
| + (WebCore::harfbuzzGetGlyphExtents):
|
| + (WebCore::harfbuzzSkiaGetFontFuncs):
|
| + (WebCore::harfbuzzSkiaGetTable):
|
| + (WebCore::destroyPaint):
|
| + (WebCore::HarfBuzzFace::createFace):
|
| + (WebCore::HarfBuzzFace::createFont):
|
| + (WebCore::HarfBuzzShaper::createGlyphBufferAdvance):
|
| + * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Added USE(HARFBUZZ_NG).
|
| + (WebCore::substituteWithVerticalGlyphs):
|
| +
|
| +2012-07-11 Kenneth Russell <kbr@google.com>
|
| +
|
| + compositing/webgl/webgl-nonpremultiplied-blend.html is flaky on Lion
|
| + https://bugs.webkit.org/show_bug.cgi?id=82412
|
| +
|
| + Reviewed by Adrienne Walker.
|
| +
|
| + When compositing premultipliedAlpha=false WebGL canvases, use a separate
|
| + blend function for the alpha channel to avoid writing alpha < 1. This
|
| + makes the behavior more consistent with all other compositing results
|
| + and avoids situations where the alpha channel is preserved on some
|
| + platforms and discarded on others.
|
| +
|
| + Covered by existing tests.
|
| +
|
| + * platform/graphics/chromium/LayerRendererChromium.cpp:
|
| + (WebCore::LayerRendererChromium::drawTextureQuad):
|
| + Use separate alpha blend function when compositing premultipliedAlpha=false WebGL canvases.
|
| +
|
| +2012-07-10 Yoshifumi Inoue <yosin@chromium.org>
|
| +
|
| + [Chromium-Windows] Implement functions for localized time format information
|
| + https://bugs.webkit.org/show_bug.cgi?id=90236
|
| +
|
| + Reviewed by Kent Tamura.
|
| +
|
| + This patch introduces following localized time format related
|
| + functions:
|
| + - localizedTimeFormatText
|
| + - localizeShortTimeFormatText()
|
| + - timeAMPMLabels
|
| + for Windows in feature flag: ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.
|
| +
|
| + See also:
|
| + ICU version: https://bugs.webkit.org/show_bug.cgi?id=89965
|
| + Mac version: https://bugs.webkit.org/show_bug.cgi?id=90237
|
| +
|
| + Tests: WebKit/chromium/tests/LocalWinTest.cpp
|
| +
|
| + * platform/text/LocaleWin.cpp:
|
| + (WebCore::mapCharacterToDateTimeFieldType): Added.
|
| + (WebCore::convertWindowsTimeFormatToLDML): Added.
|
| + (WebCore::LocaleWin::timeFormatText): Added.
|
| + (WebCore::LocaleWin::shortTimeFormatText): Added.
|
| + (WebCore::LocaleWin::timeAMPMLabels): Added.
|
| + * platform/text/LocaleWin.h:
|
| + (LocaleWin): Added time format related functions and variables.
|
| + * platform/text/LocalizedDateWin.cpp:
|
| + (WebCore::localizedTimeFormatText): Added.
|
| + (WebCore::localizedShortTimeFormatText): Added.
|
| + (WebCore::timeAMPMLabels): Added.
|
| +
|
| +2012-07-10 Douglas Stockwell <dstockwell@chromium.org>
|
| +
|
| + Style not updated for element with display:none becoming first/last-child
|
| + https://bugs.webkit.org/show_bug.cgi?id=90356
|
| +
|
| + Reviewed by Kent Tamura.
|
| +
|
| + Always trigger style recalc when an element without a renderer becomes the first/last-child.
|
| +
|
| + Tests: fast/css/first-child-display-change.html
|
| + fast/css/last-child-display-change.html
|
| +
|
| + * dom/Element.cpp:
|
| + (WebCore::checkForSiblingStyleChanges):
|
| +
|
| +2012-07-10 Shinya Kawanaka <shinyak@chromium.org>
|
| +
|
| + ShadowRoot should know its type in debug build.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90933
|
| +
|
| + Reviewed by Hajime Morita.
|
| +
|
| + For assertion, ShadowRoot should know its type is UserAgentShadowRoot or AuthorShadowRoot.
|
| +
|
| + This patch also renames ShadowRootCreationPurpose to ShadowRootType, since it is suitable
|
| + name for ShadowRoot to have.
|
| +
|
| + No new tests, since it is used only for assertion.
|
| +
|
| + * dom/Element.cpp:
|
| + (WebCore::Element::ensureShadowRoot):
|
| + * dom/ShadowRoot.cpp:
|
| + (WebCore::ShadowRoot::create):
|
| + * dom/ShadowRoot.h:
|
| + (ShadowRoot):
|
| + (WebCore::ShadowRoot::type):
|
| + * html/HTMLDetailsElement.cpp:
|
| + (WebCore::HTMLDetailsElement::createShadowSubtree):
|
| + * html/HTMLInputElement.cpp:
|
| + (WebCore::HTMLInputElement::createShadowSubtree):
|
| + * html/HTMLKeygenElement.cpp:
|
| + (WebCore::HTMLKeygenElement::HTMLKeygenElement):
|
| + * html/HTMLMeterElement.cpp:
|
| + (WebCore::HTMLMeterElement::createShadowSubtree):
|
| + * html/HTMLProgressElement.cpp:
|
| + (WebCore::HTMLProgressElement::createShadowSubtree):
|
| + * html/HTMLSummaryElement.cpp:
|
| + (WebCore::HTMLSummaryElement::createShadowSubtree):
|
| + * html/HTMLTextAreaElement.cpp:
|
| + (WebCore::HTMLTextAreaElement::createShadowSubtree):
|
| + * html/InputType.cpp:
|
| + (WebCore::InputType::destroyShadowSubtree): Asserts that ShadowRoot type is UserAgentShadowRoot.
|
| + * html/shadow/TextFieldDecorationElement.cpp:
|
| + (WebCore::getDecorationRootAndDecoratedRoot):
|
| + * svg/SVGTRefElement.cpp:
|
| + (WebCore::SVGTRefElement::createShadowSubtree):
|
| +
|
| +2012-07-10 George Staikos <staikos@webkit.org>
|
| +
|
| + Add missing binding type String for IndexedDB.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90351
|
| +
|
| + Reviewed by Nikolas Zimmermann.
|
| +
|
| + No new tests because it's already covered by IDB tests.
|
| +
|
| + * bindings/js/JSIDBAnyCustom.cpp:
|
| + (WebCore::toJS):
|
| +
|
| +2012-07-10 Brian Anderson <brianderson@chromium.org>
|
| +
|
| + [chromium] Make full texture updates explicit
|
| + https://bugs.webkit.org/show_bug.cgi?id=90507
|
| +
|
| + Reviewed by Adrienne Walker.
|
| +
|
| + Covered by existing tests.
|
| +
|
| + * platform/graphics/chromium/ScrollbarLayerChromium.cpp:
|
| + (WebCore::ScrollbarLayerChromium::updatePart):
|
| + * platform/graphics/chromium/TiledLayerChromium.cpp:
|
| + (WebCore::TiledLayerChromium::updateTiles):
|
| + * platform/graphics/chromium/cc/CCTextureUpdater.cpp:
|
| + (WebCore::CCTextureUpdater::appendFullUpdate):
|
| + (WebCore::CCTextureUpdater::hasMoreUpdates):
|
| + (WebCore::CCTextureUpdater::update):
|
| + (WebCore::CCTextureUpdater::clear):
|
| + * platform/graphics/chromium/cc/CCTextureUpdater.h:
|
| + (CCTextureUpdater):
|
| +
|
| +2012-07-10 Shinya Kawanaka <shinyak@chromium.org>
|
| +
|
| + Crash in nextLinePosition() due to accessing a removed root line box.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90484
|
| +
|
| + Reviewed by Abhishek Arya.
|
| +
|
| + When <object> element is reattached, the 'content' style is compared to the old style.
|
| + If it is not the same, a flag to recalc style is enabled. Because of this, the recalc style flag
|
| + is not cleared in updateLayoutIgnorePendingStyleSheets() in nextLinePosition(), and it causes
|
| + the second layout in isEditablePosition(p). Then 'RootInlineBox root' is invalidated, but
|
| + it's used after that.
|
| +
|
| + When the content of the same <object> elements are compared, they should be the same.
|
| + However, operator== for ContentData is not implemented correctly (it compares a pointer instead of
|
| + content). So operator== does not hold for the content of the same <object> elements.
|
| +
|
| + Test: editing/execCommand/crash-extend-selection-forward.html
|
| +
|
| + * rendering/style/ContentData.cpp:
|
| + (WebCore::operator==): Compares the instance of data instead of pointer.
|
| +
|
| +2012-07-10 Joshua Bell <jsbell@chromium.org>
|
| +
|
| + IndexedDB: Ensure transaction abort events are deterministic in multiprocess ports
|
| + https://bugs.webkit.org/show_bug.cgi?id=90412
|
| +
|
| + Reviewed by Tony Chang.
|
| +
|
| + In multi-process ports (e.g. Chromium), transaction aborts triggered on the front-end could
|
| + be initiated while a "success" event was in-flight from the back end. This would lead to
|
| + apparently flaky behavior when requests would sometimes report success and sometimes report
|
| + an error. Address this by having front-end triggered aborts do the abort steps immediately,
|
| + then send the async abort request to the back end.
|
| +
|
| + No new tests - behavior in single process ports (and DRT) covered by existing
|
| + tests. Will enable currently disabled Chromium tests to be enabled (crbug.com/83226).
|
| +
|
| + * Modules/indexeddb/IDBRequest.cpp:
|
| + (WebCore::IDBRequest::IDBRequest): Initialize a new m_requestAborted flag, used to prevent
|
| + dispatching if an in-flight request comes in after the abort.
|
| + (WebCore::IDBRequest::abort): Set flag to prevent double dispatching.
|
| + (WebCore::IDBRequest::onError): Handle aborted-then-received-event case.
|
| + (WebCore::IDBRequest::onSuccess): Ditto.
|
| + (WebCore::IDBRequest::onSuccessWithContinuation): Ditto.
|
| + (WebCore::IDBRequest::dispatchEvent): On uncaught error, trigger abort on transaction front-end.
|
| + * Modules/indexeddb/IDBRequest.h:
|
| + (IDBRequest):
|
| + * Modules/indexeddb/IDBTransaction.cpp:
|
| + (WebCore::IDBTransaction::abort): Do abort steps locally first, then notify back-end.
|
| + (WebCore::IDBTransaction::onAbort): If abort wasn't triggered locally, clean up is still necessary.
|
| +
|
| +2012-07-10 Julien Chaffraix <jchaffraix@webkit.org>
|
| +
|
| + REGRESSION(r112113): absolutely positioned INPUT boxes with a table cell containing block have a 0px height
|
| + https://bugs.webkit.org/show_bug.cgi?id=89209
|
| +
|
| + Reviewed by Ojan Vafai.
|
| +
|
| + Test: fast/forms/input-in-table-cell-no-value.html
|
| +
|
| + The issue comes from the layout code not properly resetting the overriden heigth between layouts.
|
| +
|
| + The test case relies on a table cell as it requires a 2 pass layout. Between the 2 passes, different
|
| + code paths would be taken, leading to previous values being used to over-constrain the inner content.
|
| +
|
| + * rendering/RenderTextControlSingleLine.cpp:
|
| + (WebCore::RenderTextControlSingleLine::layout):
|
| + Ensure consistent layout by resetting any overriden conditional height.
|
| +
|
| +2012-07-10 Kevin Ellis <kevers@chromium.org>
|
| +
|
| + Input elements with type=range do not have default touch handlers.
|
| + https://bugs.webkit.org/show_bug.cgi?id=88807
|
| +
|
| + Reviewed by Antonio Gomes.
|
| +
|
| + This patch adds support for touch event handling on input elements
|
| + and dragging a slider with touch start and move events. Previously,
|
| + manipulating a slider on a touch screen required generation of
|
| + synthetic mouse events.
|
| +
|
| + Tests: fast/events/touch/touch-slider-no-js-touch-listener.html
|
| + fast/events/touch/touch-slider.html
|
| +
|
| + * dom/Event.cpp:
|
| + (WebCore::Event::isTouchEvent):
|
| + (WebCore):
|
| + * dom/Event.h:
|
| + (Event):
|
| + * dom/Touch.cpp:
|
| + (WebCore::Touch::Touch):
|
| + * dom/Touch.h:
|
| + (WebCore::Touch::absoluteLocation):
|
| + (Touch):
|
| + * dom/TouchEvent.cpp:
|
| + (WebCore::TouchEvent::isTouchEvent):
|
| + (WebCore):
|
| + * dom/TouchEvent.h:
|
| + (TouchEvent):
|
| + * html/HTMLInputElement.cpp:
|
| + (WebCore::HTMLInputElement::HTMLInputElement):
|
| + (WebCore::HTMLInputElement::~HTMLInputElement):
|
| + (WebCore::HTMLInputElement::updateType):
|
| + (WebCore::HTMLInputElement::defaultEventHandler):
|
| + * html/HTMLInputElement.h:
|
| + (HTMLInputElement):
|
| + * html/InputType.cpp:
|
| + (WebCore):
|
| + (WebCore::InputType::handleTouchEvent):
|
| + (WebCore::InputType::hasTouchEventHandler):
|
| + * html/InputType.h:
|
| + (WebCore):
|
| + (ClickHandlingState):
|
| + (InputType):
|
| + * html/RangeInputType.cpp:
|
| + (WebCore):
|
| + (WebCore::RangeInputType::handleTouchEvent):
|
| + (WebCore::RangeInputType::hasTouchEventHandler):
|
| + * html/RangeInputType.h:
|
| + (RangeInputType):
|
| + * html/shadow/SliderThumbElement.h:
|
| + (SliderThumbElement):
|
| +
|
| +2012-07-10 Pravin D <pravind.2k4@gmail.com>
|
| +
|
| + Re-factoring recalcColumn in AutoTableLayout.cpp for readability
|
| + https://bugs.webkit.org/show_bug.cgi?id=89636
|
| +
|
| + Reviewed by Julien Chaffraix.
|
| +
|
| + No test case required. Code re-factoring.
|
| +
|
| + * rendering/AutoTableLayout.cpp:
|
| + Added a const integer place holder for 32760.
|
| +
|
| + (WebCore::AutoTableLayout::recalcColumn):
|
| + Changes :
|
| + 1) Moved the continue statement above the bool cellHasContent for an early return.
|
| + 2) Replaced the constant 32760 by a placeholder.
|
| + 3) Initialization of columnLayout max and min logical widths is made common for both cells having col span == 1 and span > 1.
|
| + 4) Removed redundant check for cell logical width type.
|
| +
|
| +2012-07-10 Adam Barth <abarth@webkit.org>
|
| +
|
| + WebCore::Settings for Hixie76 WebSocket protocol doesn't do anything and should be removed
|
| + https://bugs.webkit.org/show_bug.cgi?id=90910
|
| +
|
| + Reviewed by Eric Seidel.
|
| +
|
| + We've already removed the code that implements Hixie76 WebSockets. This
|
| + patch just removes the WebCore::Setting that used to control which
|
| + WebSocket protocol version we'd use.
|
| +
|
| + I've left the WebKit-layer APIs in place, but they now don't do
|
| + anything. I'll remove all the Chromium callers shortly.
|
| +
|
| + * page/Settings.cpp:
|
| + (WebCore::Settings::Settings):
|
| + * page/Settings.h:
|
| + (Settings):
|
| +
|
| +2012-07-10 Philip Rogers <pdr@google.com>
|
| +
|
| + Crash due to SVG animation element not removed from target (before reset)
|
| + https://bugs.webkit.org/show_bug.cgi?id=90750
|
| +
|
| + Reviewed by Abhishek Arya.
|
| +
|
| + Previously we were not removing an animation element from
|
| + SVGDocumentExtensions::m_animatedElements which led to a crash.
|
| + This change properly removes animation elements in resetTargetElement
|
| + which both fixes this bug and will prevent others from hitting it in
|
| + the future.
|
| +
|
| + Test: svg/animations/dynamic-modify-attributename-crash2.svg
|
| +
|
| + * svg/SVGDocumentExtensions.cpp:
|
| + (WebCore::SVGDocumentExtensions::removeAllAnimationElementsFromTarget):
|
| +
|
| + removeAllAnimationElementsFromTarget now adds all the animation elements
|
| + to a vector and iterates over it because the changes to resetTargetElement
|
| + would have caused us to modify the underlying hashset as we iterated. Note that
|
| + before we deleted animationElementsForTarget in removeAllAnimationElementsFromTarget
|
| + but that logic is now handled in removeAnimationElementFromTarget which is called
|
| + during resetTargetElement.
|
| +
|
| + * svg/animation/SVGSMILElement.cpp:
|
| + (WebCore::SVGSMILElement::removedFrom):
|
| +
|
| + Because of the changes in resetTargetElement, removedFrom was able to be
|
| + refactored. This patch changes removedFrom to call resetTargetElement rather
|
| + than have duplicated logic. There is a very small change in logic here:
|
| + animationAttributeChanged() is now called in removedFrom().
|
| +
|
| + (WebCore::SVGSMILElement::resetTargetElement):
|
| +
|
| + resetTargetElement now fully resets the target, including removing it from
|
| + m_animatedElements. This will prevent future instances of this bug.
|
| +
|
| +2012-07-10 Helder Correia <helder.correia@nokia.com>
|
| +
|
| + [Qt] Repaint counter for accelerated compositing
|
| + https://bugs.webkit.org/show_bug.cgi?id=90116
|
| +
|
| + Reviewed by Noam Rosenthal.
|
| +
|
| + No new tests, just introducing a debug feature.
|
| +
|
| + For this feature to be enabled, the environment variable
|
| + QT_WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS must be set to 1. Once enabled,
|
| + both repaint counters and tile borders will be painted.
|
| +
|
| + Important notes:
|
| + - Only WebKit2 is targetted for now.
|
| + - There is no integration with Preferences. That aproach was
|
| + taken initially but revealed complex and overkill for such a
|
| + debugging-only functionality. Thus, to disable it simply restart with
|
| + the environment variable unset or set to some other value.
|
| +
|
| + A Qt-specific drawRepaintCounter() function was added to
|
| + TextureMapperGL. A QImage is used as scratch buffer to paint borders and
|
| + counters. It is then uploaded to a BitmapTexture acquired from the pool
|
| + and finally draw by TextureMapper. The actual compositing happens inside
|
| + LayerBackingStore::paintToTextureMapper(). Each LayerBackingStoreTile
|
| + now has a repaint counter which gets incremented in
|
| + LayerBackingStore::updateTile().
|
| +
|
| + * platform/graphics/texmap/TextureMapper.h:
|
| + * platform/graphics/texmap/TextureMapperGL.cpp:
|
| + (WebCore):
|
| + (WebCore::TextureMapperGL::drawRepaintCounter):
|
| + * platform/graphics/texmap/TextureMapperGL.h:
|
| + * platform/graphics/texmap/TextureMapperImageBuffer.h:
|
| +
|
| +2012-07-09 Dana Jansens <danakj@chromium.org>
|
| +
|
| + [chromium] Replace use of ManagedTexture with CCScopedTexture for impl thread and remove implTextureManager from LayerRendererChromium
|
| + https://bugs.webkit.org/show_bug.cgi?id=90841
|
| +
|
| + Reviewed by Adrienne Walker.
|
| +
|
| + Remove the TextureManager from LayerRendererChromium, which was the last
|
| + instance of the class in the compositor. Instead of using ManagedTexture
|
| + objects for RenderPass textures, use instances of CCScopedTexture, which
|
| + manage the lifetime of the allocated texture ids. TextureManager will be
|
| + removed entirely once all callers of memoryUseBytes() have been removed.
|
| +
|
| + No new tests. No change in behaviour.
|
| +
|
| + * platform/graphics/chromium/LayerRendererChromium.cpp:
|
| + (WebCore::LayerRendererChromium::LayerRendererChromium):
|
| + (WebCore::LayerRendererChromium::releaseRenderPassTextures):
|
| + (WebCore):
|
| + (WebCore::LayerRendererChromium::renderPassTextureSize):
|
| + (WebCore::LayerRendererChromium::renderPassTextureFormat):
|
| + (WebCore::LayerRendererChromium::decideRenderPassAllocationsForFrame):
|
| + (WebCore::LayerRendererChromium::haveCachedResourcesForRenderPassId):
|
| + (WebCore::LayerRendererChromium::drawQuad):
|
| + (WebCore::applyFilters):
|
| + (WebCore::LayerRendererChromium::drawBackgroundFilters):
|
| + (WebCore::LayerRendererChromium::drawRenderPassQuad):
|
| + (WebCore::LayerRendererChromium::drawHeadsUpDisplay):
|
| + (WebCore::LayerRendererChromium::getFramebufferTexture):
|
| + (WebCore::LayerRendererChromium::isCurrentRenderPass):
|
| + (WebCore::LayerRendererChromium::useRenderPass):
|
| + (WebCore::LayerRendererChromium::useScopedTexture):
|
| + (WebCore::LayerRendererChromium::bindFramebufferToTexture):
|
| + (WebCore::LayerRendererChromium::initializeSharedObjects):
|
| + * platform/graphics/chromium/LayerRendererChromium.h:
|
| + (WebCore):
|
| + (LayerRendererChromium):
|
| + * platform/graphics/chromium/TrackingTextureAllocator.cpp:
|
| + (WebCore::TrackingTextureAllocator::TrackingTextureAllocator):
|
| + (WebCore::TrackingTextureAllocator::createTexture):
|
| + * platform/graphics/chromium/TrackingTextureAllocator.h:
|
| + (WebCore::TrackingTextureAllocator::create):
|
| + (TrackingTextureAllocator):
|
| + * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
|
| + (WebCore::CCHeadsUpDisplay::draw):
|
| + * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
|
| + (WebCore):
|
| + (CCHeadsUpDisplay):
|
| + * platform/graphics/chromium/cc/CCRenderer.h:
|
| + (WebCore):
|
| + (CCRenderer):
|
| +
|
| +2012-07-10 Dean Jackson <dino@apple.com>
|
| +
|
| + REGRESSION (r109610): Order of values in shorthand animation makes a difference
|
| + https://bugs.webkit.org/show_bug.cgi?id=84533
|
| + <rdar://problem/11831924>
|
| + <rdar://problem/11815787>
|
| +
|
| + Reviewed by Simon Fraser.
|
| +
|
| + A previous revision (r109610) updated the parsing of the animation shorthand
|
| + to make sure that animation-name wouldn't clobber other styles. The side effect
|
| + of this was that we'd no longer find animation-name if it wasn't first in the
|
| + list. This commit reverts the change and fixes it in a different way, by always
|
| + parsing animation-name as the last property in the shorthand. This means that
|
| + keywords for timing functions, fill modes and iteration will match before
|
| + animation name. In other words, if you want an animation called "forwards"
|
| + you should use the longhand property, because the shorthand will first match
|
| + that against animation-fill-mode.
|
| +
|
| + Test: animations/animation-shorthand-name-order.html
|
| +
|
| + * css/CSSParser.cpp:
|
| + (WebCore::CSSParser::parseAnimationShorthand): make a new array of longhand
|
| + properties to check for, with name as the last entry rather than the first.
|
| + Use this array to test the properties in the shorthand.
|
| +
|
| +2012-07-10 Huang Dongsung <luxtella@company100.net>
|
| +
|
| + Fix a potential bug of BitmapImage::frameCount().
|
| + https://bugs.webkit.org/show_bug.cgi?id=90756
|
| +
|
| + Reviewed by Simon Fraser.
|
| +
|
| + If an ImageDecoder is not yet initialized, m_source.frameCount() returns 0. This
|
| + does not mean that the frame count is actually 0. So we must set
|
| + m_haveFrameCount to true only when m_frameCount is not 0.
|
| +
|
| + The current code is okay because BitmapImage::frameCount() is never called
|
| + before the decoder is initialized. However, this no longer holds true once we
|
| + introduce parallel image decoders.
|
| +
|
| + No new tests, no behavior change.
|
| +
|
| + * platform/graphics/BitmapImage.cpp:
|
| + (WebCore::BitmapImage::frameCount):
|
| +
|
| +2012-07-10 Ojan Vafai <ojan@chromium.org>
|
| +
|
| + Build fix. Removing unused variable from http://trac.webkit.org/changeset/122264.
|
| + * rendering/RenderBox.cpp:
|
| + (WebCore::RenderBox::computeContentLogicalHeightUsing):
|
| +
|
| +2012-07-10 Ryosuke Niwa <rniwa@webkit.org>
|
| +
|
| + HTMLPropertiesCollection should share more code with HTMLCollection
|
| + https://bugs.webkit.org/show_bug.cgi?id=90842
|
| +
|
| + Reviewed by Anders Carlsson.
|
| +
|
| + Got rid of HTMLPropertiesCollection::m_cache, and added m_itemRefElements, m_propertyNames, m_propertyCache,
|
| + m_hasPropertyNameCache, and m_hasItemRefElements to HTMLPropertiesCollection itself. These are caches specific
|
| + to HTMLPropertiesCollection. Note that hasNameCache has been renamed to m_hasPropertyNameCache and itemRefElementPosition
|
| + has been replaced by cachedElementsArrayOffset() in HTMLCollectionCacheBase (also used in HTMLFormCollection).
|
| +
|
| + Also deleted all methods on m_cache except updatePropertyCache since caches can be accessed directly from
|
| + HTMLPropertiesCollection.
|
| +
|
| + * html/HTMLCollection.cpp:
|
| + (WebCore::HTMLCollection::invalidateCacheIfNeeded):
|
| + (WebCore::HTMLCollection::invalidateCache):
|
| + * html/HTMLCollection.h:
|
| + (HTMLCollection):
|
| + * html/HTMLPropertiesCollection.cpp:
|
| + (WebCore::HTMLPropertiesCollection::HTMLPropertiesCollection):
|
| + (WebCore):
|
| + (WebCore::HTMLPropertiesCollection::updateRefElements):
|
| + (WebCore::HTMLPropertiesCollection::itemAfter):
|
| + (WebCore::HTMLPropertiesCollection::calcLength):
|
| + (WebCore::HTMLPropertiesCollection::cacheFirstItem):
|
| + (WebCore::HTMLPropertiesCollection::item):
|
| + (WebCore::HTMLPropertiesCollection::findProperties):
|
| + (WebCore::HTMLPropertiesCollection::updateNameCache):
|
| + (WebCore::HTMLPropertiesCollection::names):
|
| + (WebCore::HTMLPropertiesCollection::namedItem):
|
| + (WebCore::HTMLPropertiesCollection::hasNamedItem):
|
| + * html/HTMLPropertiesCollection.h:
|
| + (HTMLPropertiesCollection):
|
| + (WebCore::HTMLPropertiesCollection::clearCache):
|
| + (WebCore::HTMLPropertiesCollection::updatePropertyCache):
|
| +
|
| +2012-07-10 Ojan Vafai <ojan@chromium.org>
|
| +
|
| + Add support for min-height:auto and min-width:auto
|
| + https://bugs.webkit.org/show_bug.cgi?id=88437
|
| +
|
| + Reviewed by Tony Chang.
|
| +
|
| + Right now auto does the same thing as min-height/min-width:0.
|
| + For flex-items it should be the same as min-content (followup patch).
|
| + http://dev.w3.org/csswg/css3-flexbox/#min-size-auto
|
| +
|
| + Tests: fast/css/auto-min-size.html
|
| + fast/css/deprecated-flexbox-auto-min-size.html
|
| +
|
| + * WebCore.order:
|
| + * css/CSSComputedStyleDeclaration.cpp:
|
| + (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
|
| + Return 0px for the computed value of auto.
|
| +
|
| + * css/CSSParser.cpp:
|
| + (WebCore::CSSParser::validWidth):
|
| + (WebCore):
|
| + (WebCore::CSSParser::validHeight):
|
| + (WebCore::CSSParser::parseValue):
|
| + * css/CSSParser.h:
|
| + (CSSParser):
|
| + Restructure width/height parsing to reduce code duplication and make it easier
|
| + to add auto as a valid min value.
|
| +
|
| + * platform/efl/RenderThemeEfl.cpp:
|
| + (WebCore::RenderThemeEfl::adjustSizeConstraints):
|
| + This code was unnecessarily checking intrinsicOrAuto since auto was previously
|
| + not an allowed value for minWidth/minHeight.
|
| +
|
| + * rendering/RenderBox.cpp:
|
| + (WebCore::RenderBox::computeLogicalWidthInRegion):
|
| + (WebCore::RenderBox::computeLogicalWidthInRegionUsing):
|
| + (WebCore::RenderBox::sizesLogicalWidthToFitContent):
|
| + (WebCore::RenderBox::computeLogicalHeight):
|
| + (WebCore::RenderBox::computeLogicalHeightUsing):
|
| + (WebCore::RenderBox::computeContentLogicalHeightUsing):
|
| + (WebCore::RenderBox::computeReplacedLogicalWidth):
|
| + (WebCore::RenderBox::computeReplacedLogicalWidthRespectingMinMaxWidth):
|
| + (WebCore::RenderBox::computeReplacedLogicalWidthUsing):
|
| + (WebCore::RenderBox::computeReplacedLogicalHeight):
|
| + (WebCore::RenderBox::computeReplacedLogicalHeightRespectingMinMaxHeight):
|
| + (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
|
| + (WebCore::RenderBox::computePositionedLogicalWidth):
|
| + (WebCore::RenderBox::computePositionedLogicalWidthUsing):
|
| + (WebCore::RenderBox::computePositionedLogicalHeight):
|
| + (WebCore::RenderBox::computePositionedLogicalHeightUsing):
|
| + Need to pass a SizeType to all these methods so that we know if the Length
|
| + we're working with is a min length since auto has a different meaning now
|
| + for min lengths.
|
| +
|
| + * rendering/RenderBox.h:
|
| + (RenderBox):
|
| + * rendering/RenderDeprecatedFlexibleBox.cpp:
|
| + (WebCore::RenderDeprecatedFlexibleBox::allowedChildFlex):
|
| + * rendering/RenderFlexibleBox.cpp:
|
| + (WebCore::RenderFlexibleBox::computePreferredLogicalWidths):
|
| + (WebCore::RenderFlexibleBox::computeAvailableFreeSpace):
|
| + (WebCore::RenderFlexibleBox::lineBreakLength):
|
| + (WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax):
|
| + * rendering/RenderReplaced.cpp:
|
| + (WebCore::RenderReplaced::computeReplacedLogicalWidth):
|
| + (WebCore::RenderReplaced::computeReplacedLogicalHeight):
|
| + * rendering/RenderScrollbarPart.cpp:
|
| + (WebCore::calcScrollbarThicknessUsing):
|
| + (WebCore::RenderScrollbarPart::computeScrollbarWidth):
|
| + (WebCore::RenderScrollbarPart::computeScrollbarHeight):
|
| + * rendering/style/RenderStyle.h:
|
| + Default minHeight/minWidth to auto instead of 0px.
|
| +
|
| +2012-07-10 Xianzhu Wang <wangxianzhu@chromium.org>
|
| +
|
| + [Chromium-Android] Use default font rendering styles in FontPlatformData::querySystemForRenderStyle()
|
| + https://bugs.webkit.org/show_bug.cgi?id=90826
|
| +
|
| + Reviewed by Adam Barth.
|
| +
|
| + No new tests. The change to this file is refactoring only.
|
| +
|
| + * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp:
|
| + (WebCore::FontPlatformData::querySystemForRenderStyle): Moved the "NoPreference" initialization into PlatformSupport::PlatformSupport::getRenderStyleForStrike().
|
| +
|
| +2012-07-10 Raymond Toy <rtoy@google.com>
|
| +
|
| + AudioFIFO not correctly wrapping the write index on push
|
| + https://bugs.webkit.org/show_bug.cgi?id=90901
|
| +
|
| + Reviewed by Chris Rogers.
|
| +
|
| + No new tests
|
| +
|
| + * platform/audio/AudioFIFO.cpp:
|
| + (WebCore::AudioFIFO::push): Wrap the write index, not read index!
|
| +
|
| +2012-07-10 Dana Jansens <danakj@chromium.org>
|
| +
|
| + [chromium] Avoid allocating render pass textures that have no content
|
| + https://bugs.webkit.org/show_bug.cgi?id=90702
|
| +
|
| + Reviewed by Adrienne Walker.
|
| +
|
| + When OOM conditions are hit, textures are not allocated for some layers
|
| + which can prevent any quads from being present for a render surface.
|
| + This is used as a signal to prevent the RenderPass from allocating a
|
| + texture.
|
| +
|
| + Replace the CCLayerTreeHostImpl::removePassesWithCachedTextures() method
|
| + with a general removeRenderPasses() which takes a culling control object
|
| + and will remove passes based on the inputs from the control object.
|
| +
|
| + This new method is used for the old purpose of removing passes with cached
|
| + textures, as well as to remove passes that do not have any quad inputs.
|
| +
|
| + Test: CCLayerTreeHostTestSurfaceNotAllocatedForLayersOutsideMemoryLimit
|
| +
|
| + * platform/graphics/chromium/LayerRendererChromium.cpp:
|
| + (WebCore::LayerRendererChromium::drawRenderPassQuad):
|
| + * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
|
| + (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
|
| + (WebCore):
|
| + (WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::shouldRemoveRenderPass):
|
| + (WebCore::CCLayerTreeHostImpl::CullRenderPassesWithNoQuads::shouldRemoveRenderPass):
|
| + (WebCore::CCLayerTreeHostImpl::removeRenderPasses):
|
| + * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
|
| + (WebCore):
|
| + (CullRenderPassesWithCachedTextures):
|
| + (WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::renderPassListBegin):
|
| + (WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::renderPassListEnd):
|
| + (WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::renderPassListNext):
|
| + (WebCore::CCLayerTreeHostImpl::CullRenderPassesWithCachedTextures::CullRenderPassesWithCachedTextures):
|
| + (CCLayerTreeHostImpl):
|
| + (CullRenderPassesWithNoQuads):
|
| + (WebCore::CCLayerTreeHostImpl::CullRenderPassesWithNoQuads::renderPassListBegin):
|
| + (WebCore::CCLayerTreeHostImpl::CullRenderPassesWithNoQuads::renderPassListEnd):
|
| + (WebCore::CCLayerTreeHostImpl::CullRenderPassesWithNoQuads::renderPassListNext):
|
| +
|
| +2012-07-10 Joshua Netterfield <jnetterfield@rim.com>
|
| + Make GC3D and E3D more maintainable for GLES platforms
|
| + https://bugs.webkit.org/show_bug.cgi?id=90567
|
| +
|
| + Reviewed by Rob Buis.
|
| +
|
| + This patch cleans up code for WebGL on OpenGLES platforms which use
|
| + GraphicsContext3DOpenGL* and Extensions3DOpenGL*. Although
|
| + GraphicsContext3DOpenGL was already split into GraphicsContext3DOpenGL,
|
| + GraphicsContext3DOpenGLCommon, and GraphicsContext3DOpenGLES, this patch
|
| + is an attempt to refactor this code in a way that will help BlackBerry and
|
| + other teams support WebGL on mobile platforms with as little use of
|
| + "#IF USE(OPENGL_ES_2)" in common code as possible. Also included is the
|
| + separation of Extensions3DOpenGL into Extensions3DOpenGLCommon,
|
| + Extensions3DOpenGL, and Extensions3DOpenGLES as well as the introduction
|
| + of OpenGLESShims.
|
| +
|
| + This patch is created in large part by Jonathan Feldstein.
|
| +
|
| + No new tests: no new behaviour.
|
| +
|
| + * PlatformBlackBerry.cmake: Recognize BlackBerry as OPENGL ES, add new files to build
|
| + * Target.pri: Add new Extensions3DOpenGL* to WebGL builds
|
| + * platform/graphics/GraphicsContext3D.h: Add validateDepthStencil, make systemAllowsMultisamplingOnATICards a a member function.
|
| + (WebCore):
|
| + * platform/graphics/OpenGLESShims.h: Added.
|
| + * platform/graphics/opengl/Extensions3DOpenGL.cpp: Move code to Extensions3DOpenGLCommon where possible
|
| + (WebCore::Extensions3DOpenGL::Extensions3DOpenGL): Reflect that it is now inherits Extensions3DCommon
|
| + (WebCore::Extensions3DOpenGL::supportsExtension): Contains OpenGL specific code from supports
|
| + (WebCore):
|
| + (WebCore::Extensions3DOpenGL::getExtensions): Returns a list of extensions
|
| + * platform/graphics/opengl/Extensions3DOpenGL.h: Remove functions now in Extensions3DOpenGLCommon
|
| + (WebCore):
|
| + (Extensions3DOpenGL):
|
| + * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: Added.
|
| + (WebCore):
|
| + (WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon):
|
| + (WebCore::Extensions3DOpenGLCommon::~Extensions3DOpenGLCommon):
|
| + (WebCore::Extensions3DOpenGLCommon::supports):
|
| + (WebCore::Extensions3DOpenGLCommon::ensureEnabled):
|
| + (WebCore::Extensions3DOpenGLCommon::isEnabled):
|
| + (WebCore::Extensions3DOpenGLCommon::getGraphicsResetStatusARB):
|
| + (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE): Existed before, but did nothing. Now does what is says it does.
|
| + (WebCore::Extensions3DOpenGLCommon::initializeAvailableExtensions): Moved from Extensions3DOpenGL::supports
|
| + * platform/graphics/opengl/Extensions3DOpenGLCommon.h: Copied from Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.h.
|
| + (WebCore):
|
| + (Extensions3DOpenGLCommon):
|
| + * platform/graphics/opengl/Extensions3DOpenGLES.cpp: Added.
|
| + (WebCore):
|
| + (WebCore::Extensions3DOpenGLES::Extensions3DOpenGLES):
|
| + (WebCore::Extensions3DOpenGLES::~Extensions3DOpenGLES):
|
| + (WebCore::Extensions3DOpenGLES::framebufferTexture2DMultisampleIMG):
|
| + (WebCore::Extensions3DOpenGLES::renderbufferStorageMultisampleIMG):
|
| + (WebCore::Extensions3DOpenGLES::createVertexArrayOES):
|
| + (WebCore::Extensions3DOpenGLES::deleteVertexArrayOES):
|
| + (WebCore::Extensions3DOpenGLES::isVertexArrayOES):
|
| + (WebCore::Extensions3DOpenGLES::bindVertexArrayOES):
|
| + (WebCore::Extensions3DOpenGLES::supportsExtension): Contains OpenGLES specific code from supports
|
| + (WebCore::Extensions3DOpenGLES::getExtensions):
|
| + * platform/graphics/opengl/Extensions3DOpenGLES.h: Copied from Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.h.
|
| + (WebCore):
|
| + (Extensions3DOpenGLES):
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
|
| + (WebCore::GraphicsContext3D::validateAttributes):
|
| + (WebCore):
|
| + (WebCore::GraphicsContext3D::renderbufferStorage):
|
| + (WebCore::GraphicsContext3D::texImage2D):
|
| + (WebCore::GraphicsContext3D::systemAllowsMultisamplingOnATICards): Now a member function.
|
| + (WebCore::GraphicsContext3D::getExtensions):
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
|
| + (WebCore::GraphicsContext3D::validateDepthStencil):
|
| + (WebCore::GraphicsContext3D::clear):
|
| + (WebCore::GraphicsContext3D::isTexture):
|
| + (WebCore):
|
| + (WebCore::GraphicsContext3D::lineWidth):
|
| + (WebCore::GraphicsContext3D::linkProgram):
|
| + (WebCore::GraphicsContext3D::pixelStorei):
|
| + (WebCore::GraphicsContext3D::polygonOffset):
|
| + (WebCore::GraphicsContext3D::readPixels):
|
| + (WebCore::GraphicsContext3D::deleteBuffer):
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
|
| + (WebCore::GraphicsContext3D::releaseShaderCompiler):
|
| + (WebCore::GraphicsContext3D::readPixelsAndConvertToBGRAIfNecessary):
|
| + (WebCore::GraphicsContext3D::validateAttributes):
|
| + (WebCore):
|
| + (WebCore::GraphicsContext3D::getExtensions):
|
| + (WebCore::GraphicsContext3D::systemAllowsMultisamplingOnATICards): Now a member function.
|
| + * platform/graphics/qt/GraphicsContext3DQt.cpp:
|
| + (WebCore):
|
| + (WebCore::GraphicsContext3D::releaseShaderCompiler):
|
| +
|
| +2012-07-06 David Hyatt <hyatt@apple.com>
|
| +
|
| + https://bugs.webkit.org/show_bug.cgi?id=90646
|
| + <rdar://problem/11648478> 3-pass pagination slows down pagination
|
| +
|
| + Improve the logical top estimate function for margin collapsing to be more accurate. In particular
|
| + make the basic case of <body><p> or <body><h1> no longer be wrong. This estimate being incorrect
|
| + is not a big deal most of the time, but when paginating it is a very big deal, since you have to
|
| + relayout everything whenever your vertical placement is wrong.
|
| +
|
| + Improving the estimation exposed a bug in an existing layout test. I had to clean up the buggy
|
| + code written for negative margin-related float detection and fix an invalid layout test to
|
| + actually be correct.
|
| +
|
| + Reviewed by Simon Fraser.
|
| +
|
| + * rendering/RenderBlock.cpp:
|
| + (WebCore::RenderBlock::collapseMargins):
|
| + (WebCore::RenderBlock::marginBeforeEstimateForChild):
|
| + (WebCore):
|
| + (WebCore::RenderBlock::estimateLogicalTopPosition):
|
| + (WebCore::RenderBlock::marginValuesForChild):
|
| + * rendering/RenderBlock.h:
|
| + (RenderBlock):
|
| + * rendering/RenderBox.cpp:
|
| + (WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats):
|
| + (WebCore::RenderBox::computeLogicalWidthInRegionUsing):
|
| +
|
| +2012-07-10 Alexei Filippov <alexeif@chromium.org>
|
| +
|
| + Web Inspector: Count inspector memory used to traverse DOM in native memory snapshots.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90456
|
| +
|
| + Inspector may take significant amount of memory when traversing DOM structure.
|
| + Take it into account and report under inspector memory.
|
| +
|
| + Reviewed by Pavel Feldman.
|
| +
|
| + * dom/MemoryInstrumentation.h:
|
| + (MemoryInstrumentation):
|
| + (WebCore::MemoryInstrumentation::calculateContainerSize):
|
| + (WebCore::MemoryInstrumentation::reportHashMap):
|
| + (WebCore::MemoryInstrumentation::reportHashSet):
|
| + (WebCore::MemoryInstrumentation::reportVector):
|
| + * inspector/InspectorMemoryAgent.cpp:
|
| + (MemoryBlockName):
|
| + (WebCore):
|
| + (WebCore::domTreeInfo):
|
| + (WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):
|
| +
|
| +2012-07-10 Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com>
|
| +
|
| + [GTK] Fix memory leaks by adopting allocation of GdkPixbuf
|
| + https://bugs.webkit.org/show_bug.cgi?id=90790
|
| +
|
| + Reviewed by Carlos Garcia Campos.
|
| +
|
| + Fixed a memory leak in paintGdkPixbuf by adopting an allocation
|
| + of GdkPixbuf.
|
| +
|
| + No new tests. No change in behavior.
|
| +
|
| + * platform/gtk/RenderThemeGtk.cpp:
|
| + (WebCore::paintGdkPixbuf):
|
| +
|
| +2012-07-10 Konrad Piascik <kpiascik@rim.com>
|
| +
|
| + Web Inspector: Geolocation override
|
| + https://bugs.webkit.org/show_bug.cgi?id=89365
|
| +
|
| + Reviewed by Yong Li.
|
| +
|
| + Added a way to override the geoloation of a client using Web
|
| + Inspector.
|
| +
|
| + New tests added.
|
| + * LayoutTests/inspector/geolocation-success.html:
|
| + * LayoutTests/inspector/getlocation-error.html:
|
| +
|
| + * Modules/geolocation/GeolocationController.cpp:
|
| + (WebCore::GeolocationController::GeolocationController): Now store and
|
| + save the Page in m_page.
|
| + (WebCore::GeolocationController::positionChanged): Check if position
|
| + is overriden in Web Inspector.
|
| + * Modules/geolocation/GeolocationController.h:
|
| + (GeolocationController): Add member variable m_page for Page*.
|
| + * inspector/Inspector.json: Add new methods for setting and clearing
|
| + the GeoloationPosition and GeolocationError objects in InspectorPageAgent.
|
| + * inspector/InspectorInstrumentation.cpp:
|
| + (WebCore):
|
| + (WebCore::InspectorInstrumentation::checkGeolocationPositionOrErrorImpl):
|
| + Add methods to check whether GeolocationPosition or GeolocationError
|
| + are set in InspectorPageAgent.
|
| + * inspector/InspectorInstrumentation.h:
|
| + (WebCore):
|
| + (InspectorInstrumentation):
|
| + (WebCore::InspectorInstrumentation::checkGeolocationPositionOrError):
|
| + * inspector/InspectorPageAgent.cpp:
|
| + (WebCore::InspectorPageAgent::InspectorPageAgent): Initialize new
|
| + member variables of GeolocationPosition and GeolocationError.
|
| + (WebCore::InspectorPageAgent::setGeolocationData): Set Position and
|
| + Error data and call appropriate GeolocaitonController methods.
|
| + (WebCore):
|
| + (WebCore::InspectorPageAgent::clearGeolocationData):
|
| + (WebCore::InspectorPageAgent::sendGeolocationError):
|
| + * inspector/InspectorPageAgent.h:
|
| + (WebCore::InspectorPageAgent::geolocationPosition): Getter for
|
| + GeolocationPosition.
|
| + (InspectorPageAgent):
|
| + * inspector/front-end/Settings.js: Added new settings for
|
| + GeolocationPosition and GeolocationError
|
| + * inspector/front-end/SettingsScreen.js: Added new control for
|
| + Geolocaiton.
|
| + (WebInspector.UserAgentSettingsTab):
|
| + (WebInspector.UserAgentSettingsTab.prototype._createDeviceMetricsElement):
|
| + (WebInspector.UserAgentSettingsTab.prototype._onGeolocationOverrideCheckboxClicked):
|
| + (WebInspector.UserAgentSettingsTab.prototype._applyGeolocationUserInput):
|
| + (WebInspector.UserAgentSettingsTab.prototype._setGeolocationPosition.set if):
|
| + (WebInspector.UserAgentSettingsTab.prototype._setGeolocationPosition):
|
| + (WebInspector.UserAgentSettingsTab.prototype._createGeolocationOverrideElement.createInput):
|
| + (WebInspector.UserAgentSettingsTab.prototype._createGeolocationOverrideElement):
|
| + * inspector/front-end/UserAgentSupport.js: New GeolocationPosition
|
| + Object added along with setting helper methods. Added new setting
|
| + changed handlers for Position and Error.
|
| + (WebInspector.UserAgentSupport.GeolocationPosition):
|
| + (WebInspector.UserAgentSupport.GeolocationPosition.prototype.toSetting):
|
| + (WebInspector.UserAgentSupport.GeolocationPosition.parseSetting):
|
| + (WebInspector.UserAgentSupport.GeolocationPosition.parseUserInput):
|
| + (WebInspector.UserAgentSupport.prototype.get _onGeolocationErrorChanged):
|
| +
|
| +2012-07-10 Vsevolod Vlasov <vsevik@chromium.org>
|
| +
|
| + Web Inspector: Refactor resource revisions before moving to UISourceCode.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90855
|
| +
|
| + Reviewed by Pavel Feldman.
|
| +
|
| + Revisions are now persisted based on mainFrame.loaderId, not resource.loaderId which makes filtering out stale persisted revisions easier.
|
| + Restoring revisions from local storage is separated from filtering out stale persisted revisions.
|
| + Resource._clearRevisionHistory and Resource._restoreRevisions are not static anymore.
|
| + Renamed localStorage field for persisting revisions: "resource-history" -> "revision-history"
|
| +
|
| + * inspector/front-end/Resource.js:
|
| + (WebInspector.Resource):
|
| + (WebInspector.Resource.prototype.addRevision):
|
| + (WebInspector.Resource.prototype._restoreRevisionHistory):
|
| + (WebInspector.Resource.prototype._clearRevisionHistory):
|
| + (WebInspector.Resource.prototype.revertAndClearHistory.clearHistory):
|
| + (WebInspector.Resource.prototype.revertAndClearHistory):
|
| + (WebInspector.Revision):
|
| + (WebInspector.Revision._revisionHistoryRegistry):
|
| + (WebInspector.Revision._ensureStaleRevisionsFileteredOut.persist):
|
| + (WebInspector.Revision._ensureStaleRevisionsFileteredOut):
|
| + (WebInspector.Revision.prototype._persist):
|
| + * inspector/front-end/ResourceTreeModel.js:
|
| + (WebInspector.ResourceTreeModel.prototype._processCachedResources):
|
| + (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
|
| + * inspector/front-end/RevisionHistoryView.js:
|
| + * inspector/front-end/UISourceCode.js:
|
| + (WebInspector.UISourceCode.prototype._revisionAdded):
|
| +
|
| +2012-07-10 Alice Cheng <alice_cheng@apple.com>
|
| +
|
| + Editing: Reproducible crasher when pasting a 0x0 image into Mail
|
| + https://bugs.webkit.org/show_bug.cgi?id=90640
|
| + <rdar://problem/11141920>
|
| +
|
| + Reviewed by Brady Eidson.
|
| +
|
| + 0x0 images don't get a resource representation in the WebArchive, so we need a null check
|
| +
|
| + Test: TestWebKitAPI/Tests/mac/0.png
|
| + TestWebKitAPI/Tests/mac/WebViewCanPasteZeroPng.mm
|
| +
|
| + * platform/mac/PasteboardMac.mm:
|
| + (WebCore::documentFragmentWithImageResource):
|
| +
|
| +2012-07-10 Nikita Vasilyev <me@elv1s.ru>
|
| +
|
| + Web Inspector: Make the Tab character 4 spaces width
|
| + https://bugs.webkit.org/show_bug.cgi?id=90172
|
| +
|
| + Reviewed by Pavel Feldman.
|
| +
|
| + Do it to match most code editors' behavior.
|
| +
|
| + * inspector/front-end/inspectorCommon.css:
|
| + (body):
|
| +
|
| +2012-07-10 Eric Seidel <eric@webkit.org>
|
| +
|
| + REGRESSION (r122168): Layout Test http/tests/misc/script-defer.html is failing
|
| + https://bugs.webkit.org/show_bug.cgi?id=90845
|
| +
|
| + Reviewed by Alexey Proskuryakov.
|
| +
|
| + I was a bit overzealous in removing bool returns. This one still makes sense.
|
| + This just reverts the wrong part of my previous change.
|
| +
|
| + * html/parser/HTMLDocumentParser.cpp:
|
| + (WebCore::HTMLDocumentParser::attemptToRunDeferredScriptsAndEnd):
|
| + * html/parser/HTMLScriptRunner.cpp:
|
| + (WebCore::HTMLScriptRunner::executeScriptsWaitingForParsing):
|
| + * html/parser/HTMLScriptRunner.h:
|
| + (HTMLScriptRunner):
|
| +
|
| +2012-07-10 Kevin Ellis <kevers@chromium.org>
|
| +
|
| + Input type=range issue with events not being raised when value set in js
|
| + https://bugs.webkit.org/show_bug.cgi?id=84674
|
| +
|
| + Fix dispatching of change and click events for the input slider.
|
| + Prior to the fix, change events were not fired if the new value
|
| + matched the value at last change notification based on expected
|
| + behavior for text fields. Clicks were not fired if the thumb
|
| + element was repositioned under the cursor on mouse down.
|
| +
|
| + Reviewed by Kent Tamura.
|
| +
|
| + Tests: fast/events/click-range-slider.html
|
| + fast/events/onchange-range-slider.html
|
| +
|
| + * html/shadow/SliderThumbElement.cpp:
|
| + (WebCore::SliderThumbElement::setPositionFromPoint):
|
| + * page/EventHandler.cpp:
|
| + (WebCore::EventHandler::handleMouseReleaseEvent):
|
| +
|
| +2012-07-10 Huang Dongsung <luxtella@company100.net>
|
| +
|
| + Don't destroy the decoded data of an image if WebKit is about to render the image.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90721
|
| +
|
| + Reviewed by Antti Koivisto.
|
| +
|
| + When the cache capacity of the MemoryCache is exceeded, the decoded data of all
|
| + the CachedImages are destroyed. Even the images inside the viewport are
|
| + destroyed. However, if the images need to be rendered again due to scoll events
|
| + or animation, they must be decoded again. As an extreme case, if there is an
|
| + animation with an image when MemoryCache is almost full, the image must be
|
| + decoded every frame. This slows down animation and needlessly consumes CPU
|
| + cycles.
|
| +
|
| + Therefore, it is better to not destory the decoded data of an image if the image
|
| + is inside the viewport because there is high chance that the image needs to be
|
| + rendered again soon. This patch reduces the unnecessary repetition of image decoding
|
| + on low memory, and also relieves the memory fragmentation because it avoids reallocation
|
| + of image frames.
|
| +
|
| + In addition, there is another positive side effect. Currently,
|
| + CachedImageClient::willRenderImage() is used only to determine if GIF animation needs
|
| + to be paused or not in CachedImage::shouldPauseAnimation(). This patch makes
|
| + GIF animation outside the viewort be paused.
|
| +
|
| + This is also a prerequisite for parallel image decoders. Because parallel image
|
| + decoders decode an image asynchronously, clients cannot render the image at the time
|
| + when the request is made. Clients can draw the image later after receiving image
|
| + decoding complete notification. However, there is a problem because MemoryCache can
|
| + destroy the decoded data before clients actually render the image. So parallel image decoders
|
| + must prevent the decoded data from being destroyed if the image will be rendered
|
| + soon.
|
| +
|
| + This patch may consume a little more memory, but furtunately the peak memory usage
|
| + is almost the same.
|
| +
|
| + No new tests - no new testable functionality.
|
| +
|
| + * loader/cache/CachedImage.cpp:
|
| + (WebCore::CachedImage::likelyToBeUsedSoon):
|
| + (WebCore):
|
| + (WebCore::CachedImage::shouldPauseAnimation):
|
| + * loader/cache/CachedImage.h:
|
| + (CachedImage):
|
| + * loader/cache/CachedResource.h:
|
| + (CachedResource):
|
| + (WebCore::CachedResource::likelyToBeUsedSoon):
|
| + * loader/cache/MemoryCache.cpp:
|
| + (WebCore::MemoryCache::pruneLiveResourcesToSize):
|
| + * rendering/RenderObject.cpp:
|
| + (WebCore::RenderObject::willRenderImage):
|
| +
|
| +2012-07-10 Kent Tamura <tkent@chromium.org>
|
| +
|
| + RTL calendar picker for <input type=date> is too narrow and clipped
|
| + https://bugs.webkit.org/show_bug.cgi?id=90864
|
| +
|
| + Reviewed by Kentaro Hara.
|
| +
|
| + Tests: ManualTests/forms/calendar-picker.html
|
| +
|
| + * Resources/calendarPicker.js:
|
| + (fixWindowSize):
|
| + Checks the left edge of elemenets in RTL.
|
| + (layout): Add dir=ltr for the manual test, which re-uses the document.
|
| +
|
| +2012-07-10 Sheriff Bot <webkit.review.bot@gmail.com>
|
| +
|
| + Unreviewed, rolling out r122178.
|
| + http://trac.webkit.org/changeset/122178
|
| + https://bugs.webkit.org/show_bug.cgi?id=90857
|
| +
|
| + browser tests, PrerenderBrowserTest.PrerenderFavicon and other
|
| + tests, started to fail (Requested by hayato on #webkit).
|
| +
|
| + * WebCore.exp.in:
|
| + * dom/Document.cpp:
|
| + (WebCore::Document::iconURLs):
|
| + (WebCore::Document::addIconURL):
|
| + (WebCore::Document::setUseSecureKeyboardEntryWhenActive):
|
| + * dom/Document.h:
|
| + (Document):
|
| + * html/HTMLLinkElement.cpp:
|
| + * html/HTMLLinkElement.h:
|
| + (HTMLLinkElement):
|
| + * testing/Internals.cpp:
|
| + * testing/Internals.h:
|
| + (Internals):
|
| + * testing/Internals.idl:
|
| +
|
| +2012-07-10 Adam Barth <abarth@webkit.org>
|
| +
|
| + LayoutTestController.dumpConfigurationForViewport should move to Internals
|
| + https://bugs.webkit.org/show_bug.cgi?id=45652
|
| +
|
| + Reviewed by Eric Seidel.
|
| +
|
| + This patch replaces LayoutTestController.dumpConfigurationForViewport
|
| + with Internals.configurationForViewport. The old
|
| + dumpConfigurationForViewport function just ended up calling WebCore
|
| + functions anyway, so there's no benefit in implementing the API in the
|
| + LayoutTestController.
|
| +
|
| + As a result, these tests can now run on every port.
|
| +
|
| + * testing/Internals.cpp:
|
| + (WebCore::Internals::configurationForViewport):
|
| + (WebCore):
|
| + * testing/Internals.h:
|
| + (Internals):
|
| + * testing/Internals.idl:
|
| +
|
| +2012-07-10 Carlos Garcia Campos <cgarcia@igalia.com>
|
| +
|
| + Unreviewed. Fix GTK+ build after r122175.
|
| +
|
| + * platform/graphics/texmap/TextureMapperLayer.cpp: Include
|
| + CString.h when using cairo.
|
| +
|
| +2012-07-10 Yoshifumi Inoue <yosin@chromium.org>
|
| +
|
| + [Chromium-Mac] Form related layout tests cause timeout
|
| + https://bugs.webkit.org/show_bug.cgi?id=90851
|
| +
|
| + Reviewed by Kent Tamura.
|
| +
|
| + This patch changed to pass a valid argument to LocaleMac
|
| + constructor.
|
| +
|
| + No new tests. No more timeout in tests listed in the bug.
|
| +
|
| + * platform/text/mac/LocaleMac.mm:
|
| + (WebCore::LocaleMac::currentLocale): Changed to pass local identifier string
|
| + instead of NSLocale object.
|
| +
|
| +2012-07-10 Yuta Kitamura <yutak@chromium.org>
|
| +
|
| + WebSocket: Remove hixie76 protocol implementation
|
| + https://bugs.webkit.org/show_bug.cgi?id=88620
|
| +
|
| + Reviewed by Adam Barth.
|
| +
|
| + This change removes code that implements the old hixie-76 WebSocket protocol which
|
| + isn't used anymore.
|
| +
|
| + No new tests are added, because the code using the current protocol should not be
|
| + affected. Tests for hixie-76 protocol are skipped (these tests will be removed
|
| + eventually).
|
| +
|
| + * Modules/websockets/ThreadableWebSocketChannel.h:
|
| + * Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
|
| + (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
|
| + (WebCore::ThreadableWebSocketChannelClientWrapper::didCreateWebSocketChannel):
|
| + * Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
|
| + (ThreadableWebSocketChannelClientWrapper):
|
| + * Modules/websockets/WebSocket.cpp:
|
| + (WebCore::WebSocket::WebSocket):
|
| + (WebCore::WebSocket::connect):
|
| + (WebCore::WebSocket::send):
|
| + (WebCore::WebSocket::protocol):
|
| + (WebCore::WebSocket::extensions):
|
| + (WebCore::WebSocket::binaryType):
|
| + (WebCore::WebSocket::setBinaryType):
|
| + (WebCore::WebSocket::didReceiveMessageError):
|
| + (WebCore::WebSocket::didClose):
|
| + (WebCore::WebSocket::getFramingOverhead):
|
| + * Modules/websockets/WebSocket.h:
|
| + * Modules/websockets/WebSocketChannel.cpp:
|
| + (WebCore::WebSocketChannel::WebSocketChannel):
|
| + (WebCore::WebSocketChannel::connect):
|
| + (WebCore::WebSocketChannel::send):
|
| + (WebCore::WebSocketChannel::fail):
|
| + (WebCore::WebSocketChannel::didCloseSocketStream):
|
| + (WebCore::WebSocketChannel::processBuffer):
|
| + (WebCore::WebSocketChannel::startClosingHandshake):
|
| + (WebCore::WebSocketChannel::enqueueTextFrame):
|
| + (WebCore::WebSocketChannel::enqueueRawFrame):
|
| + (WebCore::WebSocketChannel::enqueueBlobFrame):
|
| + (WebCore::WebSocketChannel::processOutgoingFrameQueue):
|
| + (WebCore::WebSocketChannel::abortOutgoingFrameQueue):
|
| + * Modules/websockets/WebSocketChannel.h:
|
| + (WebSocketChannel):
|
| + * Modules/websockets/WebSocketHandshake.cpp:
|
| + (WebCore::WebSocketHandshake::WebSocketHandshake):
|
| + (WebCore::WebSocketHandshake::clientHandshakeMessage):
|
| + (WebCore::WebSocketHandshake::clientHandshakeRequest):
|
| + (WebCore::WebSocketHandshake::readServerHandshake):
|
| + (WebCore::WebSocketHandshake::checkResponseHeaders):
|
| + * Modules/websockets/WebSocketHandshake.h:
|
| + * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
|
| + (WebCore::WorkerThreadableWebSocketChannel::WorkerContextDidInitializeTask::create):
|
| + (WebCore::WorkerThreadableWebSocketChannel::WorkerContextDidInitializeTask::WorkerContextDidInitializeTask):
|
| + (WorkerThreadableWebSocketChannel::WorkerContextDidInitializeTask):
|
| + (WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadInitialize):
|
| + * Modules/websockets/WorkerThreadableWebSocketChannel.h:
|
| + (WorkerThreadableWebSocketChannel):
|
| + (Peer):
|
| + (Bridge):
|
| +
|
| +2012-07-09 Gavin Barraclough <barraclough@apple.com>
|
| +
|
| + Threadsafety issues in WebScriptObject
|
| + https://bugs.webkit.org/show_bug.cgi?id=90849
|
| +
|
| + Reviewed by Filip Pizlo.
|
| +
|
| + WebScriptObject maintains a NSMap of wrapper objects. A race condition exists
|
| + between a wrapper being retrieved from the map, and being released - if the
|
| + final release on an object is called between a call to getJSWrapper and the
|
| + subsequent retain, we may end up with a stale object reference.
|
| +
|
| + We can make this safe by hoisting the removal from the map from delloc up into
|
| + release (if the retainCount is 1), and locking release against retrieval from
|
| + the map. Since release may be called from another thread, and NSMap is not
|
| + threadsafe, we'd better lock around all access to the map (this fix already
|
| + necessitates get & remove to be locked, so this just adds 'add', too).
|
| +
|
| + * bindings/objc/WebScriptObject.mm:
|
| + (WebCore::createJSWrapper):
|
| + - lock around getJSWrapper, retain.
|
| + (-[WebScriptObject _setImp:originRootObject:rootObject:]):
|
| + - lock around addJSWrapper.
|
| + (-[WebScriptObject release]):
|
| + - Added; removeJSWrapper for last release, lock & synchronized vs. getJSWrapper.
|
| + (-[WebScriptObject dealloc]):
|
| + - removeJSWrapper call hoisted into release.
|
| +
|
| +2012-07-09 Christophe Dumez <christophe.dumez@intel.com>
|
| +
|
| + [EFL] Battery status code needs refactoring to be reused in WebKit2
|
| + https://bugs.webkit.org/show_bug.cgi?id=90760
|
| +
|
| + Reviewed by Hajime Morita.
|
| +
|
| + Rename BatteryClientEfl to BatteryProviderEfl and remove dependency
|
| + on BatteryController by introducing the BatteryProviderEflClient
|
| + interface. This will allow reusing the BatteryProviderEfl class
|
| + in WebKit2.
|
| +
|
| + No new tests. Already tested by batterystatus/*.
|
| +
|
| + * PlatformEfl.cmake:
|
| + * platform/efl/BatteryProviderEfl.cpp: Renamed from Source/WebCore/platform/efl/BatteryClientEfl.cpp.
|
| + (WebCore):
|
| + (WebCore::BatteryProviderEfl::BatteryProviderEfl):
|
| + (WebCore::BatteryProviderEfl::batteryStatus):
|
| + (WebCore::BatteryProviderEfl::startUpdating):
|
| + (WebCore::BatteryProviderEfl::stopUpdating):
|
| + (WebCore::BatteryProviderEfl::setBatteryStatus):
|
| + (WebCore::BatteryProviderEfl::timerFired):
|
| + (WebCore::BatteryProviderEfl::getBatteryStatus):
|
| + (WebCore::BatteryProviderEfl::setBatteryClient):
|
| + * platform/efl/BatteryProviderEfl.h: Copied from Source/WebCore/platform/efl/BatteryClientEfl.h.
|
| + (WebCore):
|
| + (BatteryProviderEfl):
|
| + (WebCore::BatteryProviderEfl::~BatteryProviderEfl):
|
| + * platform/efl/BatteryProviderEflClient.h: Added.
|
| + (WebCore):
|
| + (BatteryProviderEflClient):
|
| +
|
| +2012-07-09 Hayato Ito <hayato@chromium.org>
|
| +
|
| + Unreviewed gardening.
|
| + Fix a wrong fix of r122194.
|
| +
|
| + * platform/graphics/chromium/LayerRendererChromium.cpp:
|
| + (WebCore::LayerRendererChromium::decideRenderPassAllocationsForFrame):
|
| +
|
| +2012-07-09 Matt Falkenhagen <falken@chromium.org>
|
| +
|
| + Add ENABLE_DIALOG_ELEMENT and skeleton files
|
| + https://bugs.webkit.org/show_bug.cgi?id=90521
|
| +
|
| + Reviewed by Kent Tamura.
|
| +
|
| + This adds the ENABLE_DIALOG_ELEMENT feature flag and dummy implementation files for <dialog>. In addition, a runtime feature flag is added.
|
| + The feature is diabled by default.
|
| +
|
| + No new tests, as there is no behavior change.
|
| +
|
| + * CMakeLists.txt:
|
| + * Configurations/FeatureDefines.xcconfig:
|
| + * DerivedSources.cpp:
|
| + * DerivedSources.make:
|
| + * DerivedSources.pri:
|
| + * Target.pri:
|
| + * WebCore.gypi:
|
| + * WebCore.xcodeproj/project.pbxproj:
|
| + * bindings/generic/RuntimeEnabledFeatures.cpp:
|
| + (WebCore):
|
| + * bindings/generic/RuntimeEnabledFeatures.h: Added a runtime feature flag for dialog.
|
| + (RuntimeEnabledFeatures):
|
| + (WebCore::RuntimeEnabledFeatures::dialogElementEnabled):
|
| + (WebCore::RuntimeEnabledFeatures::setDialogElementEnabled):
|
| + * dom/ContextFeatures.cpp:
|
| + (WebCore::ContextFeatures::dialogElementEnabled):
|
| + (WebCore):
|
| + * dom/ContextFeatures.h: Added a per-context flag for dialog so that dialog can be disabled in HTMLTagNames.in and DOMWindow.idl when the dialog runtime feature flag is off.
|
| + * html/HTMLDialogElement.cpp: Added.
|
| + (WebCore):
|
| + (WebCore::HTMLDialogElement::HTMLDialogElement):
|
| + (WebCore::HTMLDialogElement::create):
|
| + (WebCore::HTMLDialogElement::close):
|
| + (WebCore::HTMLDialogElement::show):
|
| + * html/HTMLDialogElement.h: Added.
|
| + (WebCore):
|
| + (HTMLDialogElement):
|
| + * html/HTMLDialogElement.idl: Added.
|
| + * html/HTMLElementsAllInOne.cpp:
|
| + * html/HTMLTagNames.in:
|
| + * page/DOMWindow.idl:
|
| +
|
| +2012-07-09 Hayato Ito <hayato@chromium.org>
|
| +
|
| + Unreviewed gardening.
|
| + Remove an assertion starting to fail on interactive_ui_tests on Chromium OS.
|
| +
|
| + * platform/graphics/chromium/LayerRendererChromium.cpp:
|
| + (WebCore::LayerRendererChromium::decideRenderPassAllocationsForFrame):
|
| +
|
| +2012-07-09 Hayato Ito <hayato@chromium.org>
|
| +
|
| + Unreviewed gardening.
|
| + Build fix after r122175
|
| +
|
| + * WebCore.gypi: Remove Source/WebCore/platform/graphics/qt/Extensions3DQt.{cpp,h}
|
| +
|
| +2012-07-09 Kiran Muppala <cmuppala@apple.com>
|
| +
|
| + Improve performance of RenderInline::absoluteQuads for deeply nested inlines.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90715
|
| +
|
| + Reviewed by Maciej Stachowiak.
|
| +
|
| + No new tests: functionality unchanged.
|
| +
|
| + * rendering/RenderInline.cpp: Cache transformation from local to absolute coordinates using a
|
| + RenderGeometryMap and use it for subsequent mappings.
|
| + (WebCore::(anonymous namespace)::AbsoluteQuadsGeneratorContext::AbsoluteQuadsGeneratorContext):
|
| + (WebCore::(anonymous namespace)::AbsoluteQuadsGeneratorContext::operator()):
|
| +
|
| +2012-07-09 Yoshifumi Inoue <yosin@chromium.org>
|
| +
|
| + [Chromium-Mac] Implement functions for localized time format information
|
| + https://bugs.webkit.org/show_bug.cgi?id=90237
|
| +
|
| + Reviewed by Kent Tamura.
|
| +
|
| + This patch introduces following localized time format related
|
| + functions:
|
| + - localizeTimeFormatText()
|
| + - localizeShortTimeFormatText()
|
| + - timeAMPMLabels
|
| + for Mac OSX in feature flag: ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.
|
| +
|
| + These function will be used by input type "time" with multiple input
|
| + fields UI.
|
| +
|
| + Note: ICU version of localized time format functions are implemented
|
| + in https://bugs.webkit.org/show_bug.cgi?id=89965
|
| +
|
| + Tests: WebKit/chromium/tests/LocaleMacTest.cpp
|
| +
|
| + * platform/text/mac/LocaleMac.h:
|
| + (LocaleMac): Added time format related functions and variables.
|
| + * platform/text/mac/LocaleMac.mm:
|
| + (WebCore::createDateTimeFormatter): Added. A helper function for creating date time formatter.
|
| + (WebCore::LocaleMac::createShortDateFormatter): Changed to use createDateTimeFormatter.
|
| + (WebCore::LocaleMac::createTimeFormatter): Added.
|
| + (WebCore::LocaleMac::createShortTimeFormatter): Added.
|
| + (WebCore::LocaleMac::timeFormatText): Added.
|
| + (WebCore::LocaleMac::shortTimeFormatText): Added.
|
| + (WebCore::LocaleMac::timeAMPMLabels): Added.
|
| +
|
| +2012-07-09 Alexandru Chiculita <achicu@adobe.com>
|
| +
|
| + [CSS Shaders] The FECustomFilter is not making the GL context active
|
| + https://bugs.webkit.org/show_bug.cgi?id=90840
|
| +
|
| + Reviewed by Dean Jackson.
|
| +
|
| + I've added a couple of makeContextCurrent() in the FECustomFilter related classes.
|
| + Also, removed the assumption that GraphicsContext3D::create() never returns 0.
|
| +
|
| + No new tests, this was crashing on existing tests.
|
| +
|
| + * platform/graphics/filters/CustomFilterCompiledProgram.cpp:
|
| + (WebCore::CustomFilterCompiledProgram::CustomFilterCompiledProgram):
|
| + (WebCore::CustomFilterCompiledProgram::~CustomFilterCompiledProgram):
|
| + * platform/graphics/filters/CustomFilterGlobalContext.cpp:
|
| + (WebCore::CustomFilterGlobalContext::prepareContextIfNeeded):
|
| + * platform/graphics/filters/CustomFilterMesh.cpp:
|
| + (WebCore::CustomFilterMesh::CustomFilterMesh):
|
| + (WebCore::CustomFilterMesh::~CustomFilterMesh):
|
| + * platform/graphics/filters/FECustomFilter.cpp:
|
| + (WebCore::FECustomFilter::deleteRenderBuffers):
|
| + (WebCore::FECustomFilter::platformApplySoftware):
|
| + (WebCore::FECustomFilter::initializeContext):
|
| + * platform/graphics/filters/FECustomFilter.h:
|
| + (FECustomFilter):
|
| +
|
| +2012-07-09 Kent Tamura <tkent@chromium.org>
|
| +
|
| + REGRESSION(r114862-r114886): Fix a crash by switching the input type to hidden.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90774
|
| +
|
| + Reviewed by Andreas Kling.
|
| +
|
| + Test: fast/forms/hidden/change-type-to-hidden-after-updating-value.html
|
| +
|
| + * dom/Element.cpp:
|
| + (WebCore::Element::setAttributeInternal):
|
| + Pass a copy of the existing Attribute object.
|
| +
|
| +2012-07-07 Philippe Normand <pnormand@igalia.com>
|
| +
|
| + [GStreamer] cache video dimensions
|
| + https://bugs.webkit.org/show_bug.cgi?id=90733
|
| +
|
| + Reviewed by Martin Robinson.
|
| +
|
| + Invalidate the cached video dimensions whenever the video-sink sink pad caps
|
| + change and let ::naturalSize() lazily recalculate them.
|
| +
|
| + * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
|
| + (WebCore::MediaPlayerPrivateGStreamer::naturalSize):
|
| + (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideo):
|
| + * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
|
| + (MediaPlayerPrivateGStreamer):
|
| +
|
| +2012-07-09 Eric Penner <epenner@google.com>
|
| +
|
| + [chromium] Merge updates and idle updates into one pass
|
| + https://bugs.webkit.org/show_bug.cgi?id=90324
|
| +
|
| + Reviewed by Adrienne Walker.
|
| +
|
| + We no longer need to do painting is passes in order
|
| + to allocate memory in the right order. So this merges
|
| + updates and idle updates into one pass.
|
| +
|
| + Covered by existing unit tests (some of which are
|
| + updated with this patch).
|
| +
|
| + * platform/graphics/chromium/ContentLayerChromium.cpp:
|
| + (WebCore::ContentLayerChromium::needMoreUpdates):
|
| + * platform/graphics/chromium/ContentLayerChromium.h:
|
| + (ContentLayerChromium):
|
| + * platform/graphics/chromium/LayerChromium.h:
|
| + (WebCore::LayerChromium::needMoreUpdates):
|
| + * platform/graphics/chromium/TiledLayerChromium.cpp:
|
| + (WebCore::TiledLayerChromium::updateTiles):
|
| + (WebCore::TiledLayerChromium::updateLayerRect):
|
| + * platform/graphics/chromium/TiledLayerChromium.h:
|
| + (TiledLayerChromium):
|
| + * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
|
| + (WebCore::CCLayerTreeHost::CCLayerTreeHost):
|
| + (WebCore::CCLayerTreeHost::compositeAndReadback):
|
| + (WebCore::CCLayerTreeHost::updateLayers):
|
| + (WebCore::CCLayerTreeHost::paintMasksForRenderSurface):
|
| + (WebCore::CCLayerTreeHost::paintLayerContents):
|
| + * platform/graphics/chromium/cc/CCLayerTreeHost.h:
|
| + (CCLayerTreeHost):
|
| +
|
| +2012-07-09 Yoshifumi Inoue <yosin@chromium.org>
|
| +
|
| + [Platform] Introduce LocaleMac class
|
| + https://bugs.webkit.org/show_bug.cgi?id=90248
|
| +
|
| + Reviewed by Kent Tamura.
|
| +
|
| + This patch moves implementation of localized date format related
|
| + functions into LocaleMac class as of LocaleWin class for ease of
|
| + maintain and using specific locale in testing rather than system
|
| + default locale.
|
| +
|
| + Tests: WebKit/chromium/tests/LocaleMacTest.cpp
|
| +
|
| + * WebCore.gyp/WebCore.gyp: Include LocaleMac.mm
|
| + * WebCore.gypi:
|
| + * platform/text/mac/LocaleMac.h: Replace LocaleWin to LocaleMac.
|
| + * platform/text/mac/LocaleMac.mm:
|
| + (WebCore::LocaleMac::LocaleMac):
|
| + (WebCore::LocaleMac::~LocaleMac):
|
| + (WebCore::LocaleMac::create):
|
| + (WebCore::LocaleMac::currentLocale):
|
| + (WebCore::LocaleMac::createShortDateFormatter):
|
| + (WebCore::LocaleMac::parseDate):
|
| + (WebCore::LocaleMac::formatDate):
|
| + (WebCore::LocaleMac::dateFormatText):
|
| + (WebCore::LocaleMac::monthLabels):
|
| + (WebCore::LocaleMac::weekDayShortLabels):
|
| + (WebCore::LocaleMac::firstDayOfWeek):
|
| + * platform/text/mac/LocalizedDateMac.cpp:
|
| + (WebCore::parseLocalizedDate):
|
| + (WebCore::formatLocalizedDate):
|
| + (WebCore::localizedDateFormatText):
|
| + (WebCore::monthLabels):
|
| + (WebCore::weekDayShortLabels):
|
| + (WebCore::firstDayOfWeek):
|
| + * platform/text/mac/LocalizedDateMac.mm: Removed.
|
| +
|
| +2012-07-09 Dana Jansens <danakj@chromium.org>
|
| +
|
| + [chromium] Create CCScopedTexture class for creating/freeing textures
|
| + https://bugs.webkit.org/show_bug.cgi?id=89485
|
| +
|
| + Reviewed by Adrienne Walker.
|
| +
|
| + This class provides a standard way to create texture ids in a way that
|
| + ensures they will be freed later.
|
| +
|
| + Also includes a CCTexture base class that holds textureId, size, and
|
| + format together in a struct that can be used in place of storing an
|
| + unsigned textureId in other classes.
|
| +
|
| + Unit tests: CCScopedTexureTest.NewScopedTexture
|
| + CCScopedTexureTest.CreateScopedTexture
|
| + CCScopedTexureTest.ScopedTextureIsDeleted
|
| + CCScopedTexureTest.LoseScopedTexture
|
| +
|
| + * WebCore.gypi:
|
| + * platform/graphics/chromium/cc/CCScopedTexture.cpp: Added.
|
| + (WebCore):
|
| + (WebCore::CCScopedTexture::CCScopedTexture):
|
| + (WebCore::CCScopedTexture::~CCScopedTexture):
|
| + (WebCore::CCScopedTexture::allocate):
|
| + (WebCore::CCScopedTexture::free):
|
| + (WebCore::CCScopedTexture::leak):
|
| + * platform/graphics/chromium/cc/CCScopedTexture.h: Added.
|
| + (WebCore):
|
| + (CCScopedTexture):
|
| + (WebCore::CCScopedTexture::create):
|
| + * platform/graphics/chromium/cc/CCTexture.cpp: Added.
|
| + (WebCore):
|
| + (WebCore::CCTexture::setDimensions):
|
| + (WebCore::CCTexture::bytes):
|
| + (WebCore::CCTexture::memorySizeBytes):
|
| + * platform/graphics/chromium/cc/CCTexture.h: Added.
|
| + (WebCore):
|
| + (CCTexture):
|
| + (WebCore::CCTexture::CCTexture):
|
| + (WebCore::CCTexture::id):
|
| + (WebCore::CCTexture::size):
|
| + (WebCore::CCTexture::format):
|
| + (WebCore::CCTexture::setId):
|
| +
|
| +2012-07-09 Joshua Bell <jsbell@chromium.org>
|
| +
|
| + IndexedDB: deleteDatabase fails if transaction running in other database
|
| + https://bugs.webkit.org/show_bug.cgi?id=90822
|
| +
|
| + Reviewed by Tony Chang.
|
| +
|
| + The IDBLevelDBBackingStore was preventing a deleteDatabase() from running
|
| + if any other database was running a transaction. Fix by just creating a scratch
|
| + LevelDBTransaction for the delete steps.
|
| +
|
| + Test: storage/indexeddb/deletedatabase-transaction.html
|
| +
|
| + * Modules/indexeddb/IDBLevelDBBackingStore.cpp:
|
| + (WebCore::IDBLevelDBBackingStore::deleteDatabase): Use a LevelDBTransaction
|
| + directly.
|
| +
|
| +2012-07-09 Pete Williamson <petewil@google.com>
|
| +
|
| + Changed the behavior of iconURLs to always recalculate the list.
|
| + https://bugs.webkit.org/show_bug.cgi?id=88665
|
| +
|
| + Reviewed by Kent Tamura..
|
| +
|
| + As it turns out, it can contain stale URLs in the case that some script
|
| + manipulates the DOM, which breaks scripts trying to reset the favicon
|
| + URL. Also added a method in Internals to allow tests to get the list of
|
| + icon
|
| +
|
| + Tests: fast/dom/icon-url-change.html
|
| + fast/dom/icon-url-list.html
|
| +
|
| + * WebCore.exp.in: export Document::iconURLs on the mac for the Internals class
|
| + * dom/Document.cpp:
|
| + (WebCore::Document::iconURLs): Changed the method to recalculate the iconURL list every time
|
| + (WebCore::Document::addIconURL): we no longer need to add to the internal list since we recalculate it
|
| + (WebCore::Document::setUseSecureKeyboardEntryWhenActive): removed extra whitespace
|
| + * dom/Document.h:
|
| + (Document): removed the addIconURL method which is no longer used
|
| + * html/HTMLLinkElement.cpp:
|
| + (WebCore::HTMLLinkElement::iconType): exposed the icon type with an accessor
|
| + (WebCore):
|
| + (WebCore::HTMLLinkElement::iconSizes): exposed the icon sizes with an accessor
|
| + * html/HTMLLinkElement.h:
|
| + (HTMLLinkElement): declared the icon type and size accessors
|
| + * testing/Internals.cpp:
|
| + (WebCore::Internals::iconURLs): made a method to be used by unit tests for inspecting the icon URL list
|
| + (WebCore):
|
| + * testing/Internals.h:
|
| + (Internals): declared the method for unit testing the icon URL list
|
| + * testing/Internals.idl: exported the Document::iconURLs function
|
| +
|
| +2012-07-09 Ryosuke Niwa <rniwa@webkit.org>
|
| +
|
| + Gcc build fix after r122174.
|
| +
|
| + * storage/StorageAreaImpl.cpp:
|
| + (WebCore::StorageAreaImpl::decrementAccessCount):
|
| +
|
| +2012-07-09 Alice Cheng <alice_cheng@apple.com>
|
| +
|
| + Editing: Autocorrection in blockquotes causes text to break out of quote
|
| + https://bugs.webkit.org/show_bug.cgi?id=90487
|
| + <rdar://problem/11769020>
|
| +
|
| + Reviewed by Enrica Casucci.
|
| +
|
| + Test: platform/mac/editing/spelling/autocorrection-blockquote-crash.html
|
| +
|
| + SpellingCorrectionCommand uses ReplaceSelectionCommand to replace the misspelled word with the auto-corrected word. Specifically, ReplaceSelectionCommand does a smart copy, where it breaks out of blockquotes. Thus, the fix is to substitute ReplaceSelectionCommand with InserTextCommand.
|
| +
|
| + * editing/SpellingCorrectionCommand.cpp:
|
| + (WebCore::SpellingCorrectionCommand::doApply):
|
| +
|
| +2012-07-09 No'am Rosenthal <noam.rosenthal@nokia.com>
|
| +
|
| + Shared code that is guarded with ENABLE(WEBGL) should be guarded with USE()
|
| + https://bugs.webkit.org/show_bug.cgi?id=90506
|
| +
|
| + Reviewed by Martin Robinson.
|
| +
|
| + GraphicsContext3D, ANGLEWebKitBridge and Extensions3D are now guarded with USE(3D_GRAPHICS)
|
| + instead of ENABLE(WEBGL).
|
| +
|
| + No new tests, build changes only.
|
| +
|
| + * Target.pri:
|
| + Removed references to unused files.
|
| +
|
| + * WebCore.pri:
|
| + Updated the Qt build so that the basic 3D-graphics sources can be compiled even when
|
| + WebGL is disabled.
|
| +
|
| + * platform/graphics/ANGLEWebKitBridge.cpp:
|
| + * platform/graphics/GraphicsContext3D.cpp:
|
| + * platform/graphics/opengl/Extensions3DOpenGL.cpp:
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
|
| + * platform/graphics/qt/GraphicsContext3DQt.cpp:
|
| + * platform/qt/QWebPageClient.h:
|
| + * platform/graphics/OpenGLShims.cpp:
|
| + * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
|
| + * platform/graphics/cairo/DrawingBufferCairo.cpp:
|
| + * platform/graphics/cairo/GLContext.h:
|
| + (GLContext):
|
| + * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
|
| + * platform/graphics/cairo/GraphicsContext3DPrivate.cpp:
|
| + * platform/graphics/cg/GraphicsContext3DCG.cpp:
|
| + * platform/graphics/clutter/DrawingBufferClutter.cpp:
|
| + * platform/graphics/clutter/GraphicsContext3DClutter.cpp:
|
| + * platform/graphics/clutter/GraphicsContext3DPrivate.cpp:
|
| + * platform/graphics/efl/GraphicsContext3DEfl.cpp:
|
| + * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
|
| + * platform/graphics/filters/CustomFilterCompiledProgram.cpp:
|
| + * platform/graphics/filters/CustomFilterCompiledProgram.h:
|
| + * platform/graphics/filters/CustomFilterGlobalContext.cpp:
|
| + * platform/graphics/filters/CustomFilterGlobalContext.h:
|
| + * platform/graphics/filters/CustomFilterMesh.cpp:
|
| + * platform/graphics/filters/CustomFilterMesh.h:
|
| + * platform/graphics/filters/CustomFilterProgram.cpp:
|
| + (WebCore):
|
| + * platform/graphics/filters/CustomFilterProgram.h:
|
| + * platform/graphics/filters/FECustomFilter.cpp:
|
| + * platform/graphics/filters/FECustomFilter.h:
|
| + * platform/graphics/glx/GLContextGLX.cpp:
|
| + (WebCore):
|
| + * platform/graphics/glx/GLContextGLX.h:
|
| + (GLContextGLX):
|
| + * platform/graphics/gpu/DrawingBuffer.cpp:
|
| + * platform/graphics/gpu/mac/DrawingBufferMac.mm:
|
| + * platform/graphics/gpu/qt/DrawingBufferQt.cpp:
|
| + * platform/graphics/mac/GraphicsContext3DMac.mm:
|
| + * platform/graphics/qt/Extensions3DQt.cpp: Removed.
|
| + * platform/graphics/qt/Extensions3DQt.h: Removed.
|
| + * platform/graphics/skia/GraphicsContext3DSkia.cpp:
|
| + * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
|
| + Chaned ENABLE(WEBGL) to USE(3D_GRAPHICS)
|
| +
|
| +2012-07-09 Yongjun Zhang <yongjun_zhang@apple.com>
|
| +
|
| + Consider closing unused localStorage database after a timeout.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90713
|
| +
|
| + For a localStorage, if there is no active document referencing to it for certain amount of time (300 seconds),
|
| + we can close the underlying sqlite database.
|
| +
|
| + Reviewed by Brady Eidson.
|
| +
|
| + Test: storage/domstorage/storage-close-database-on-idle.html
|
| +
|
| + * storage/Storage.cpp:
|
| + (WebCore::Storage::Storage): increment storageArea access count when a DOMWindow is referencing it.
|
| + (WebCore::Storage::~Storage): decrement storageArea access count when DOMWindow is done with it.
|
| + * storage/StorageArea.h:
|
| + (StorageArea):
|
| + * storage/StorageAreaImpl.cpp:
|
| + (WebCore::StorageAreaImpl::StorageAreaImpl):
|
| + (WebCore::StorageAreaImpl::incrementAccessCount):
|
| + (WebCore):
|
| + (WebCore::StorageAreaImpl::decrementAccessCount): schedule closeDatabaseTimer if there is no active document
|
| + referencing to this storageArea.
|
| + (WebCore::StorageAreaImpl::closeDatabaseTimerFired): close the underlying sqlite database.
|
| + * storage/StorageAreaImpl.h:
|
| + (StorageAreaImpl):
|
| + * storage/StorageAreaSync.cpp:
|
| + (WebCore::StorageAreaSync::sync): if m_syncCloseDatabase flag is set and the database is not opened, bail out.
|
| + * storage/StorageTracker.cpp:
|
| + (WebCore):
|
| + (WebCore::StorageTracker::StorageTracker):
|
| + * storage/StorageTracker.h:
|
| + (WebCore::StorageTracker::storageDatabaseIdleInterval):
|
| + (WebCore::StorageTracker::setStorageDatabaseIdleInterval): set the timeout value that we will wait before closing the
|
| + database. This is currently used by DumpRenderTree only.
|
| + (StorageTracker):
|
| +
|
| +2012-07-09 Joshua Bell <jsbell@chromium.org>
|
| +
|
| + IndexedDB: A null or undefined storeNames argument to IDBDatabase::transaction() should be coerced to string
|
| + https://bugs.webkit.org/show_bug.cgi?id=90474
|
| +
|
| + Reviewed by Tony Chang.
|
| +
|
| + Test: storage/indexeddb/transaction-basics.html
|
| +
|
| + * Modules/indexeddb/IDBDatabase.cpp:
|
| + (WebCore::IDBDatabase::transaction):
|
| + * Modules/indexeddb/IDBDatabase.idl:
|
| +
|
| +2012-07-09 Joshua Bell <jsbell@chromium.org>
|
| +
|
| + IndexedDB: Remove obsolete accessor plumbing
|
| + https://bugs.webkit.org/show_bug.cgi?id=90812
|
| +
|
| + Reviewed by Tony Chang.
|
| +
|
| + No new tests - just deleting code.
|
| +
|
| + * Modules/indexeddb/IDBTransaction.cpp:
|
| + (WebCore::IDBTransaction::IDBTransaction): Since backend mode() is disconnected, can no
|
| + longer assert that front-end/back-end modes match; not worth it to keeping the plumbing.
|
| +
|
| +2012-07-09 Dana Jansens <danakj@chromium.org>
|
| +
|
| + [chromium] Remove HashMap workaround for layers with id=0 in CCDamageTracker
|
| + https://bugs.webkit.org/show_bug.cgi?id=90825
|
| +
|
| + Reviewed by Adrienne Walker.
|
| +
|
| + Layer ids are no longer allowed to be 0, and the behaviour is guarded
|
| + with asserts, so this workaround is not needed any longer.
|
| +
|
| + * platform/graphics/chromium/cc/CCDamageTracker.h:
|
| + (CCDamageTracker):
|
| +
|
| +2012-07-09 Vincent Scheib <scheib@chromium.org>
|
| +
|
| + Pointer Lock requestPointerLock rejects locking an element not in a document.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90821
|
| +
|
| + Reviewed by Adrienne Walker.
|
| +
|
| + Test: pointer-lock/lock-element-not-in-dom.html
|
| +
|
| + * page/PointerLockController.cpp:
|
| + (WebCore::PointerLockController::requestPointerLock):
|
| +
|
| +2012-07-09 Eric Seidel <eric@webkit.org>
|
| +
|
| + document.write of scripts that also document.write sometimes writes async
|
| + https://bugs.webkit.org/show_bug.cgi?id=89102
|
| +
|
| + Reviewed by Adam Barth.
|
| +
|
| + When a script tag is first encountered, the TreeBuilder holds the element and returns
|
| + out to the outer HTMLDocumentParser parse loop. The HTMLDocumentParser then takes
|
| + the script element and passes it to the HTMLScriptRunner for execution. However, if the
|
| + script is an "external script" the HTMLScriptRunner may have to wait for that parser
|
| + blocking script to load, and may store the script in its own m_parserBlockingScript member.
|
| +
|
| + While the HTMLScriptRunner has this not-yet-loaded-script the parser is also blocked.
|
| + Because the "paused" state of the parser was held as a separate bool on the TreeBuilder
|
| + we'd have to be careful to update it to reflect the current state of this pending script
|
| + on the HTMLScriptRunner.
|
| +
|
| + This patch removes this separate "paused" bool and makes the HTMLDocumentParser responsible
|
| + for the "paused" state of the parser through the isWaitingForScripts() function which
|
| + knows how to check both the TreeBuilder and the ScriptRunner for possible parser-blocking scripts.
|
| +
|
| + I suspect this change may actually fix a bunch of edge cases where we were not
|
| + checking for the HTMLScriptRunner's parser blocking script and thus incorrectly ending
|
| + the parser, or not starting the pre-load scanner, etc.
|
| +
|
| + As part of this change I also renamed m_haveParsingBlockingScript in HTMLScriptRunner to match
|
| + the naming style used elsewhere in the parser, as well as removed all the "bool" return values
|
| + for these parse/execute functions as they are no longer useful (or correct). The correct way
|
| + is always to check HTMLDocumentParser::isWaitingForScripts().
|
| +
|
| + Test: fast/parser/cached-script-document-write.html
|
| +
|
| + * html/parser/HTMLDocumentParser.cpp:
|
| + (WebCore::HTMLDocumentParser::pumpTokenizerIfPossible):
|
| + (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
|
| + (WebCore::HTMLDocumentParser::canTakeNextToken):
|
| + (WebCore::HTMLDocumentParser::isWaitingForScripts):
|
| + (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
|
| + (WebCore::HTMLDocumentParser::notifyFinished):
|
| + (WebCore::HTMLDocumentParser::executeScriptsWaitingForStylesheets):
|
| + * html/parser/HTMLScriptRunner.cpp:
|
| + (WebCore::HTMLScriptRunner::~HTMLScriptRunner):
|
| + (WebCore::HTMLScriptRunner::executeParsingBlockingScript):
|
| + (WebCore::HTMLScriptRunner::execute):
|
| + (WebCore::HTMLScriptRunner::hasParserBlockingScript):
|
| + (WebCore::HTMLScriptRunner::executeParsingBlockingScripts):
|
| + (WebCore::HTMLScriptRunner::executeScriptsWaitingForLoad):
|
| + (WebCore::HTMLScriptRunner::executeScriptsWaitingForParsing):
|
| + (WebCore::HTMLScriptRunner::requestParsingBlockingScript):
|
| + (WebCore::HTMLScriptRunner::runScript):
|
| + * html/parser/HTMLScriptRunner.h:
|
| + (HTMLScriptRunner):
|
| + * html/parser/HTMLTreeBuilder.cpp:
|
| + (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
|
| + (WebCore::HTMLTreeBuilder::takeScriptToProcess):
|
| + (WebCore::HTMLTreeBuilder::processEndTag):
|
| + (WebCore::HTMLTreeBuilder::processTokenInForeignContent):
|
| + * html/parser/HTMLTreeBuilder.h:
|
| + (HTMLTreeBuilder):
|
| + (WebCore::HTMLTreeBuilder::hasParserBlockingScript):
|
| +
|
| +2012-07-09 Ryosuke Niwa <rniwa@webkit.org>
|
| +
|
| + Microdata tests are flaky
|
| + https://bugs.webkit.org/show_bug.cgi?id=90830
|
| +
|
| + Reviewed by Antti Koivisto.
|
| +
|
| + The bug was caused by SpaceSplitString's not copying on write properly.
|
| + Even if there was exactly one owner of the SpaceSplitString, we should still not modify
|
| + m_data since m_data is associated with a particular m_keyString in sharedDataMap().
|
| +
|
| + The only situation in which we can safely modify m_data is when m_data's m_keyString is null
|
| + meaning that it had been unique'ed. Furthermore, this optimization had not been used for
|
| + class lists because class list's refCount is always zero as its ref and deref are forwarded
|
| + to the associated Element's ref and deref. This fix re-enables the optimization for class lists.
|
| +
|
| + This behavior change is tested by existing microdata API tests. Without this patch,
|
| + some tests such as properties-collection-add-remove-property.html fail on the first run
|
| + when several tests were ran in the same WebKit instance.
|
| +
|
| + * dom/SpaceSplitString.h:
|
| + (WebCore::SpaceSplitStringData::isUnique):
|
| + (WebCore::SpaceSplitString::ensureUnique):
|
| +
|
| +2012-07-09 Dana Jansens <danakj@chromium.org>
|
| +
|
| + [chromium] Decouple RenderPass drawing from CCRenderSurface
|
| + https://bugs.webkit.org/show_bug.cgi?id=90573
|
| +
|
| + Reviewed by Adrienne Walker.
|
| +
|
| + Removes the managed textures from CCRenderSurface and stores them in a
|
| + HashMap in LayerRendererChromium.
|
| +
|
| + At the start of a frame, all textures for the frame are reserved, and
|
| + unneeded textures are deleted. After each quad is drawn, evicted textures
|
| + (ie temporary textures used for background filters) are deleted to keep
|
| + within memory limits. At the end of the frame, all surface contents
|
| + textures are kept reserved and thus not deleted.
|
| +
|
| + We add a numeric identifier to CCRenderPass which can be used to
|
| + identify the pass across serialization in the future, and is used
|
| + in the interface to LayerRendererChromium. Also we add to the
|
| + CCRenderPass a contentsChangedSinceLastFrame() flag so that the
|
| + value does not need to be retrieved from the CCRenderSurface.
|
| +
|
| + The pointer from CCRenderPass to CCRenderSurface remains for some
|
| + code in the CCLayerTreeHostImpl, and will be addressed in the future, but
|
| + the pointer is no longer used at all while drawing a frame inside
|
| + LayerRendererChromium.
|
| +
|
| + Covered by existing tests, no intended change in behaviour.
|
| +
|
| + * platform/graphics/chromium/LayerRendererChromium.cpp:
|
| + (WebCore::LayerRendererChromium::releaseRenderPassTextures):
|
| + (WebCore::LayerRendererChromium::decideRenderPassAllocationsForFrame):
|
| + (WebCore):
|
| + (WebCore::LayerRendererChromium::haveCachedResourcesForRenderPassId):
|
| + (WebCore::LayerRendererChromium::drawQuad):
|
| + (WebCore::LayerRendererChromium::drawBackgroundFilters):
|
| + (WebCore::LayerRendererChromium::drawRenderPassQuad):
|
| + (WebCore::LayerRendererChromium::finishDrawingFrame):
|
| + (WebCore::LayerRendererChromium::useRenderPass):
|
| + (WebCore::LayerRendererChromium::initializeSharedObjects):
|
| + * platform/graphics/chromium/LayerRendererChromium.h:
|
| + (LayerRendererChromium):
|
| + * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
|
| + (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
|
| + (WebCore::CCLayerTreeHostImpl::removePassesWithCachedTextures):
|
| + * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
|
| + (CCLayerTreeHostImpl):
|
| + * platform/graphics/chromium/cc/CCRenderPass.cpp:
|
| + (WebCore::CCRenderPass::create):
|
| + (WebCore::CCRenderPass::CCRenderPass):
|
| + * platform/graphics/chromium/cc/CCRenderPass.h:
|
| + (CCRenderPass):
|
| + (WebCore::CCRenderPass::id):
|
| + (WebCore::CCRenderPass::setFramebufferOutputRect):
|
| + * platform/graphics/chromium/cc/CCRenderPassDrawQuad.cpp:
|
| + (WebCore::CCRenderPassDrawQuad::create):
|
| + (WebCore::CCRenderPassDrawQuad::CCRenderPassDrawQuad):
|
| + * platform/graphics/chromium/cc/CCRenderPassDrawQuad.h:
|
| + (CCRenderPassDrawQuad):
|
| + (WebCore::CCRenderPassDrawQuad::renderPassId):
|
| + (WebCore::CCRenderPassDrawQuad::contentsChangedSinceLastFrame):
|
| + * platform/graphics/chromium/cc/CCRenderSurface.cpp:
|
| + (WebCore::CCRenderSurface::appendQuads):
|
| + * platform/graphics/chromium/cc/CCRenderSurface.h:
|
| + (WebCore):
|
| + (CCRenderSurface):
|
| + * platform/graphics/chromium/cc/CCRenderer.h:
|
| + (CCRenderer):
|
| + * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
|
| + (WebCore::CCTiledLayerImpl::pushTileProperties):
|
| + * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
|
| + (CCTiledLayerImpl):
|
| +
|
| +2012-07-09 Adam Klein <adamk@chromium.org>
|
| +
|
| + Rename WebCore::WebKitMutationObserver to WebCore::MutationObserver
|
| + https://bugs.webkit.org/show_bug.cgi?id=90810
|
| +
|
| + Reviewed by Ojan Vafai.
|
| +
|
| + This is in preparation for removing the vendor prefix from the
|
| + MutationObserver constructor on Window (currently it's called
|
| + WebKitMutationObserver). Doing the WebCore-internal rename first
|
| + makes that change a much smaller one, which is especially useful
|
| + because there's ongoing discussion of when the prefix should be
|
| + removed from the web-facing API.
|
| +
|
| + * CMakeLists.txt:
|
| + * DerivedSources.cpp:
|
| + * DerivedSources.make:
|
| + * GNUmakefile.list.am:
|
| + * Target.pri:
|
| + * UseJSC.cmake:
|
| + * UseV8.cmake:
|
| + * WebCore.gypi:
|
| + * WebCore.vcproj/WebCore.vcproj:
|
| + * WebCore.xcodeproj/project.pbxproj:
|
| + * bindings/js/JSBindingsAllInOne.cpp:
|
| + * bindings/js/JSMainThreadExecState.cpp:
|
| + (WebCore::JSMainThreadExecState::didLeaveScriptContext):
|
| + * bindings/js/JSMutationCallbackCustom.cpp:
|
| + (WebCore::JSMutationCallback::handleEvent):
|
| + * bindings/js/JSMutationObserverCustom.cpp: Renamed from Source/WebCore/bindings/js/JSWebKitMutationObserverCustom.cpp.
|
| + (WebCore):
|
| + (WebCore::JSMutationObserverConstructor::constructJSMutationObserver):
|
| + * bindings/v8/V8RecursionScope.cpp:
|
| + (WebCore::V8RecursionScope::didLeaveScriptContext):
|
| + * bindings/v8/custom/V8MutationCallbackCustom.cpp:
|
| + (WebCore::V8MutationCallback::handleEvent):
|
| + * bindings/v8/custom/V8MutationObserverCustom.cpp: Renamed from Source/WebCore/bindings/v8/custom/V8WebKitMutationObserverCustom.cpp.
|
| + (WebCore):
|
| + (WebCore::V8MutationObserver::constructorCallback):
|
| + * dom/CharacterData.cpp:
|
| + * dom/ChildListMutationScope.h:
|
| + (WebCore::ChildListMutationScope::ChildListMutationScope):
|
| + * dom/DOMAllInOne.cpp:
|
| + * dom/Document.h:
|
| + (WebCore::Document::hasMutationObserversOfType):
|
| + * dom/Element.cpp:
|
| + * dom/MutationCallback.h:
|
| + (WebCore):
|
| + (MutationCallback):
|
| + * dom/MutationCallback.idl:
|
| + * dom/MutationObserver.cpp: Renamed from Source/WebCore/dom/WebKitMutationObserver.cpp.
|
| + (WebCore):
|
| + (WebCore::MutationObserver::ObserverLessThan::operator()):
|
| + (WebCore::MutationObserver::create):
|
| + (WebCore::MutationObserver::MutationObserver):
|
| + (WebCore::MutationObserver::~MutationObserver):
|
| + (WebCore::MutationObserver::validateOptions):
|
| + (WebCore::MutationObserver::observe):
|
| + (WebCore::MutationObserver::takeRecords):
|
| + (WebCore::MutationObserver::disconnect):
|
| + (WebCore::MutationObserver::observationStarted):
|
| + (WebCore::MutationObserver::observationEnded):
|
| + (WebCore::activeMutationObservers):
|
| + (WebCore::MutationObserver::enqueueMutationRecord):
|
| + (WebCore::MutationObserver::setHasTransientRegistration):
|
| + (WebCore::MutationObserver::deliver):
|
| + (WebCore::MutationObserver::deliverAllMutations):
|
| + * dom/MutationObserver.h: Renamed from Source/WebCore/dom/WebKitMutationObserver.h.
|
| + (WebCore):
|
| + (MutationObserver):
|
| + * dom/MutationObserver.idl: Renamed from Source/WebCore/dom/WebKitMutationObserver.idl.
|
| + * dom/MutationObserverInterestGroup.cpp:
|
| + (WebCore::MutationObserverInterestGroup::createIfNeeded):
|
| + (WebCore::MutationObserverInterestGroup::MutationObserverInterestGroup):
|
| + (WebCore::MutationObserverInterestGroup::isOldValueRequested):
|
| + (WebCore::MutationObserverInterestGroup::enqueueMutationRecord):
|
| + * dom/MutationObserverInterestGroup.h:
|
| + (WebCore::MutationObserverInterestGroup::createForChildListMutation):
|
| + (WebCore::MutationObserverInterestGroup::createForCharacterDataMutation):
|
| + (WebCore::MutationObserverInterestGroup::createForAttributesMutation):
|
| + (MutationObserverInterestGroup):
|
| + * dom/MutationObserverRegistration.cpp:
|
| + (WebCore::MutationObserverRegistration::create):
|
| + (WebCore::MutationObserverRegistration::MutationObserverRegistration):
|
| + (WebCore::MutationObserverRegistration::shouldReceiveMutationFrom):
|
| + * dom/MutationObserverRegistration.h:
|
| + (MutationObserverRegistration):
|
| + (WebCore::MutationObserverRegistration::isSubtree):
|
| + (WebCore::MutationObserverRegistration::observer):
|
| + (WebCore::MutationObserverRegistration::deliveryOptions):
|
| + (WebCore::MutationObserverRegistration::mutationTypes):
|
| + * dom/Node.cpp:
|
| + (WebCore::Node::collectMatchingObserversForMutation):
|
| + (WebCore::Node::getRegisteredMutationObserversOfType):
|
| + (WebCore::Node::registerMutationObserver):
|
| + * dom/Node.h:
|
| + (Node):
|
| + * dom/NodeRareData.h:
|
| + * page/DOMWindow.idl:
|
| +
|
| +2012-07-09 Filip Pizlo <fpizlo@apple.com>
|
| +
|
| + Unreviewed, rolling out http://trac.webkit.org/changeset/122116 and http://trac.webkit.org/changeset/122119
|
| +
|
| + * GNUmakefile.list.am:
|
| + * PlatformBlackBerry.cmake:
|
| + * Target.pri:
|
| + * WebCore.gypi:
|
| + * WebCore.xcodeproj/project.pbxproj:
|
| + * platform/graphics/GraphicsContext3D.h:
|
| + (WebCore):
|
| + * platform/graphics/OpenGLESShims.h:
|
| + * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
|
| + (WebCore):
|
| + * platform/graphics/clutter/GraphicsContext3DClutter.cpp:
|
| + (WebCore):
|
| + * platform/graphics/mac/GraphicsContext3DMac.mm:
|
| + (WebCore):
|
| + * platform/graphics/opengl/Extensions3DOpenGL.cpp:
|
| + (WebCore::Extensions3DOpenGL::Extensions3DOpenGL):
|
| + (WebCore::Extensions3DOpenGL::supports):
|
| + (WebCore):
|
| + (WebCore::Extensions3DOpenGL::ensureEnabled):
|
| + (WebCore::Extensions3DOpenGL::isEnabled):
|
| + (WebCore::Extensions3DOpenGL::getGraphicsResetStatusARB):
|
| + (WebCore::Extensions3DOpenGL::getTranslatedShaderSourceANGLE):
|
| + (WebCore::Extensions3DOpenGL::copyTextureCHROMIUM):
|
| + * platform/graphics/opengl/Extensions3DOpenGL.h:
|
| + (Extensions3DOpenGL):
|
| + * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
|
| + * platform/graphics/opengl/Extensions3DOpenGLCommon.h:
|
| + * platform/graphics/opengl/Extensions3DOpenGLES.cpp:
|
| + * platform/graphics/opengl/Extensions3DOpenGLES.h:
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
|
| + (WebCore):
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
|
| + (WebCore::systemAllowsMultisamplingOnATICards):
|
| + (WebCore):
|
| + (WebCore::GraphicsContext3D::validateAttributes):
|
| + (WebCore::GraphicsContext3D::compileShader):
|
| + (WebCore::GraphicsContext3D::readPixels):
|
| + (WebCore::GraphicsContext3D::releaseShaderCompiler):
|
| + (WebCore::GraphicsContext3D::getExtensions):
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
|
| + (WebCore::GraphicsContext3D::readPixelsAndConvertToBGRAIfNecessary):
|
| + (WebCore::GraphicsContext3D::reshapeFBOs):
|
| + (WebCore):
|
| + * platform/graphics/qt/GraphicsContext3DQt.cpp:
|
| + (WebCore):
|
| +
|
| +2012-07-09 Ryosuke Niwa <rniwa@webkit.org>
|
| +
|
| + Build fix after r122115 and some cleanups.
|
| +
|
| + * html/HTMLCollection.h:
|
| + (HTMLCollection):
|
| + * html/HTMLElement.cpp:
|
| + (WebCore::HTMLElement::properties):
|
| + * html/HTMLElement.h:
|
| + (HTMLElement):
|
| + * html/HTMLPropertiesCollection.cpp:
|
| + (WebCore::HTMLPropertiesCollection::HTMLPropertiesCollection):
|
| + * html/HTMLPropertiesCollection.h:
|
| + (HTMLPropertiesCollection):
|
| +
|
| +2012-07-09 Dean Jackson <dino@apple.com>
|
| +
|
| + Tiled drawing means some elements can disappear behind the page
|
| + https://bugs.webkit.org/show_bug.cgi?id=88906
|
| +
|
| + Reviewed by Simon Fraser.
|
| +
|
| + The compositing layers in the tile cache could become siblings
|
| + of the compositing layers for page elements. This meant that in
|
| + some 3d transforms, the elements could disappear behind the
|
| + page background (which is rendered into the tile cache) or intersect
|
| + with the tile cache tiles.
|
| +
|
| + Fix this by inserting a flattening layer between the tile cache
|
| + and the page, ensuring that the cache will always be rendered
|
| + first. I was able to reuse the clipping layer for this, because
|
| + the tile cache is attached to the RenderView, so there should never
|
| + be a case where we have both a clipping layer and tiles.
|
| +
|
| + The unfortunate part of this code is the temporary state variable
|
| + that wraps the call to GraphicsLayer::create. Because that method
|
| + calls back into the object, we need to make sure we don't create
|
| + another tile cache.
|
| +
|
| + Also added some obvious names to the tile cache layers to
|
| + help with debugging.
|
| +
|
| + Test: compositing/tile-cache-must-flatten.html
|
| +
|
| + * platform/graphics/ca/mac/TileCache.mm:
|
| + (WebCore::TileCache::TileCache): give the tile host layer a name.
|
| + (WebCore::TileCache::createTileLayer):
|
| + * platform/graphics/ca/mac/WebTileCacheLayer.mm:
|
| + (WebCore): give each tile layer a name.
|
| + * rendering/RenderLayerBacking.cpp:
|
| + (WebCore):
|
| + (WebCore::RenderLayerBacking::shouldUseTileCache): check if we're in the middle
|
| + of creating the primary graphics layer before answering.
|
| + (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer): wrap our call to
|
| + createGraphicsLayer with a message to indicate we are making the layer that should
|
| + get a tile cache.
|
| + (WebCore::RenderLayerBacking::destroyGraphicsLayers):
|
| + (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): needs to make
|
| + sure the flattening layer is in the tree.
|
| + (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
|
| + (WebCore::RenderLayerBacking::updateInternalHierarchy):
|
| + (WebCore::RenderLayerBacking::updateClippingLayers):
|
| + (WebCore::RenderLayerBacking::backingStoreMemoryEstimate):
|
| + * rendering/RenderLayerBacking.h: rename m_clippingLayer to m_containmentLayer
|
| + because it can now either be the clip or the tile cache flattener. Also
|
| + a new state property used when creating the main graphics layer.
|
| + (WebCore::RenderLayerBacking::hasClippingLayer):
|
| + (WebCore::RenderLayerBacking::clippingLayer):
|
| + (WebCore::RenderLayerBacking::parentForSublayers):
|
| + (WebCore::RenderLayerBacking::hasTileCacheFlatteningLayer):
|
| + (WebCore::RenderLayerBacking::tileCacheFlatteningLayer):
|
| + (RenderLayerBacking):
|
| +
|
| +2012-07-09 Christophe Dumez <christophe.dumez@intel.com>
|
| +
|
| + [EFL] Log significant Gamepad API-related events
|
| + https://bugs.webkit.org/show_bug.cgi?id=90595
|
| +
|
| + Reviewed by Antonio Gomes.
|
| +
|
| + Log significant Gamepad API-related events in
|
| + GamepadsEfl.
|
| +
|
| + No new tests, no behavior change.
|
| +
|
| + * platform/efl/GamepadsEfl.cpp:
|
| + (WebCore::GamepadDeviceEfl::deviceFile):
|
| + (GamepadDeviceEfl):
|
| + (WebCore::GamepadDeviceEfl::GamepadDeviceEfl):
|
| + (WebCore::GamepadDeviceEfl::readCallback):
|
| + (WebCore::GamepadsEfl::registerDevice):
|
| + (WebCore::GamepadsEfl::unregisterDevice):
|
| +
|
| +2012-07-09 Simon Fraser <simon.fraser@apple.com>
|
| +
|
| + Reduce the amount of flashing when falling into tiled layers
|
| + https://bugs.webkit.org/show_bug.cgi?id=90808
|
| +
|
| + Reviewed by Dean Jackson.
|
| +
|
| + Implement +prefetchedTiles so that CATiledLayer renders more
|
| + tiles at a time, reducing the appearance of flashing.
|
| +
|
| + * platform/graphics/mac/WebTiledLayer.mm:
|
| + (+[WebTiledLayer prefetchedTiles]):
|
| +
|
| +2012-07-09 Leandro Gracia Gil <leandrogracia@chromium.org>
|
| +
|
| + SurroundingText should not advance character iterators if they are at end.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90560
|
| +
|
| + Reviewed by Ryosuke Niwa.
|
| +
|
| + CharacterIterator and BackwardsCharacterIterator try to advance their
|
| + internal TextIterator without checking if they already are at end.
|
| + This can cause crashes in TextIterator::advance.
|
| +
|
| + Test: platform/chromium/editing/surrounding-text/surrounding-text.html
|
| +
|
| + * editing/SurroundingText.cpp:
|
| + (WebCore::SurroundingText::SurroundingText):
|
| + (WebCore::SurroundingText::rangeFromContentOffsets):
|
| +
|
| +2012-07-09 Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com>
|
| +
|
| + [EFL] [WK2] Ecore errors from ecore_evas_screen_geometry_get()
|
| + https://bugs.webkit.org/show_bug.cgi?id=90609
|
| +
|
| + Reviewed by Daniel Bates.
|
| +
|
| + Do not call ecore_evas_screen_geometry_get() if ecoreEvas is null.
|
| +
|
| + No new tests. This patch doesn't change behavior.
|
| +
|
| + * platform/efl/PlatformScreenEfl.cpp:
|
| + (WebCore::screenRect): Early return if Evas is null.
|
| +
|
| +2012-07-09 Alexandru Chiculita <achicu@adobe.com>
|
| +
|
| + [CSS Filters] Blur filter is not repainted correctly when applied on a parent of a fixed element
|
| + https://bugs.webkit.org/show_bug.cgi?id=90087
|
| +
|
| + Reviewed by Simon Fraser.
|
| +
|
| + Added a new method, RenderLayer::hasAncestorWithFilterOutsets, to check that there's no filter with outsets (ie. blur)
|
| + applied on top level fixed positioned elements, nor any of its parent layers. In the event of a blur filter we need to
|
| + disable the fast scrolling optimization, otherwise the outsets of the filter will be carried around the page and
|
| + repainting will not work correctly.
|
| +
|
| + Tests: css3/filters/blur-filter-page-scroll-parents.html
|
| + css3/filters/blur-filter-page-scroll-self.html
|
| +
|
| + * page/FrameView.cpp:
|
| + (WebCore::FrameView::scrollContentsFastPath):
|
| + * rendering/RenderLayer.cpp:
|
| + (WebCore):
|
| + (WebCore::RenderLayer::hasAncestorWithFilterOutsets):
|
| + * rendering/RenderLayer.h:
|
| + (RenderLayer):
|
| +
|
| +2012-07-09 Joshua Bell <jsbell@chromium.org>
|
| +
|
| + IndexedDB: Empty arrays shouldn't be valid key paths
|
| + https://bugs.webkit.org/show_bug.cgi?id=90798
|
| +
|
| + Reviewed by Tony Chang.
|
| +
|
| + Other IDB implementations already enforce this although it is not yet in
|
| + the spec (see https://www.w3.org/Bugs/Public/show_bug.cgi?id=17657). If an
|
| + empty array is passed as the key path arg to IDBDatabase.createObjectStore()
|
| + or IDBObjectStore.createIndex(), a SYNTAX_ERR DOMException is now thrown.
|
| +
|
| + Test: storage/indexeddb/keypath-arrays.html
|
| + storage/indexeddb/keypath-basics.html
|
| +
|
| + * Modules/indexeddb/IDBKeyPath.cpp:
|
| + (WebCore::IDBKeyPath::isValid): Test for empty array.
|
| +
|
| +2012-07-09 Dana Jansens <danakj@chromium.org>
|
| +
|
| + [chromium] Create render surfaces on main thread only for the current frame
|
| + https://bugs.webkit.org/show_bug.cgi?id=89793
|
| +
|
| + Reviewed by Adrienne Walker.
|
| +
|
| + Previously we would create render surfaces for animating layers
|
| + in the main thread since these layers might have a surface on impl,
|
| + in order to assist culling. This makes it very difficult to estimate
|
| + how much texture memory is needed for RenderSurfaces on the main
|
| + thread, in order to keep contents+surface memory below our limit.
|
| +
|
| + Here we stop doing this, and create RenderSurfaces on both threads
|
| + under the same conditions, so main thread has surfaces only if the
|
| + layers in its current frame demand them. While this may reduce
|
| + paint culling within an animating subtree, this seems like an edge
|
| + case and knowing the amount of surface memory needed for the frame
|
| + is important.
|
| +
|
| + Animation tests in CCLayerTreeHostCommonTest used to verify that these
|
| + layers got surfaces, so now no longer do. Creation of surfaces under
|
| + other conditions is covered by other CCLayerTreeHostCommonTests.
|
| +
|
| + * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
|
| + (WebCore::subtreeShouldRenderToSeparateSurface):
|
| +
|
| +2012-07-09 Ryosuke Niwa <rniwa@webkit.org>
|
| +
|
| + Mac build fix after r122116.
|
| +
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
|
| +
|
| +2012-07-09 Ryosuke Niwa <rniwa@webkit.org>
|
| +
|
| + EFL build fix after r122115.
|
| +
|
| + * html/HTMLPropertiesCollection.cpp:
|
| + (WebCore::HTMLPropertiesCollection::create):
|
| +
|
| +2012-07-09 Joshua Netterfield <jnetterfield@rim.com>
|
| + Make GC3D and E3D more maintainable for GLES platforms
|
| + https://bugs.webkit.org/show_bug.cgi?id=90567
|
| +
|
| + Reviewed by Rob Buis.
|
| +
|
| + This patch cleans up code for WebGL on OpenGLES platforms which use
|
| + GraphicsContext3DOpenGL* and Extensions3DOpenGL*. Although
|
| + GraphicsContext3DOpenGL was already split into GraphicsContext3DOpenGL,
|
| + GraphicsContext3DOpenGLCommon, and GraphicsContext3DOpenGLES, this patch
|
| + is an attempt to refactor this code in a way that will help BlackBerry and
|
| + other teams support WebGL on mobile platforms with as little use of
|
| + "#IF USE(OPENGL_ES_2)" in common code as possible. Also included is the
|
| + separation of Extensions3DOpenGL into Extensions3DOpenGLCommon,
|
| + Extensions3DOpenGL, and Extensions3DOpenGLES as well as the introduction
|
| + of OpenGLESShims.
|
| +
|
| + This patch is created in large part by Jonathan Feldstein.
|
| +
|
| + No new tests: no new behaviour.
|
| +
|
| + * PlatformBlackBerry.cmake: Recognize BlackBerry as OPENGL ES, add new files to build
|
| + * Target.pri: Add new Extensions3DOpenGL* to WebGL builds
|
| + * platform/graphics/GraphicsContext3D.h: Add validateDepthStencil, make systemAllowsMultisamplingOnATICards a a member function.
|
| + (WebCore):
|
| + * platform/graphics/OpenGLESShims.h: Added.
|
| + * platform/graphics/opengl/Extensions3DOpenGL.cpp: Move code to Extensions3DOpenGLCommon where possible
|
| + (WebCore::Extensions3DOpenGL::Extensions3DOpenGL): Reflect that it is now inherits Extensions3DCommon
|
| + (WebCore::Extensions3DOpenGL::supportsExtension): Contains OpenGL specific code from supports
|
| + (WebCore):
|
| + (WebCore::Extensions3DOpenGL::getExtensions): Returns a list of extensions
|
| + * platform/graphics/opengl/Extensions3DOpenGL.h: Remove functions now in Extensions3DOpenGLCommon
|
| + (WebCore):
|
| + (Extensions3DOpenGL):
|
| + * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: Added.
|
| + (WebCore):
|
| + (WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon):
|
| + (WebCore::Extensions3DOpenGLCommon::~Extensions3DOpenGLCommon):
|
| + (WebCore::Extensions3DOpenGLCommon::supports):
|
| + (WebCore::Extensions3DOpenGLCommon::ensureEnabled):
|
| + (WebCore::Extensions3DOpenGLCommon::isEnabled):
|
| + (WebCore::Extensions3DOpenGLCommon::getGraphicsResetStatusARB):
|
| + (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE): Existed before, but did nothing. Now does what is says it does.
|
| + (WebCore::Extensions3DOpenGLCommon::initializeAvailableExtensions): Moved from Extensions3DOpenGL::supports
|
| + * platform/graphics/opengl/Extensions3DOpenGLCommon.h: Copied from Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.h.
|
| + (WebCore):
|
| + (Extensions3DOpenGLCommon):
|
| + * platform/graphics/opengl/Extensions3DOpenGLES.cpp: Added.
|
| + (WebCore):
|
| + (WebCore::Extensions3DOpenGLES::Extensions3DOpenGLES):
|
| + (WebCore::Extensions3DOpenGLES::~Extensions3DOpenGLES):
|
| + (WebCore::Extensions3DOpenGLES::framebufferTexture2DMultisampleIMG):
|
| + (WebCore::Extensions3DOpenGLES::renderbufferStorageMultisampleIMG):
|
| + (WebCore::Extensions3DOpenGLES::createVertexArrayOES):
|
| + (WebCore::Extensions3DOpenGLES::deleteVertexArrayOES):
|
| + (WebCore::Extensions3DOpenGLES::isVertexArrayOES):
|
| + (WebCore::Extensions3DOpenGLES::bindVertexArrayOES):
|
| + (WebCore::Extensions3DOpenGLES::supportsExtension): Contains OpenGLES specific code from supports
|
| + (WebCore::Extensions3DOpenGLES::getExtensions):
|
| + * platform/graphics/opengl/Extensions3DOpenGLES.h: Copied from Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.h.
|
| + (WebCore):
|
| + (Extensions3DOpenGLES):
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
|
| + (WebCore::GraphicsContext3D::validateAttributes):
|
| + (WebCore):
|
| + (WebCore::GraphicsContext3D::renderbufferStorage):
|
| + (WebCore::GraphicsContext3D::texImage2D):
|
| + (WebCore::GraphicsContext3D::systemAllowsMultisamplingOnATICards): Now a member function.
|
| + (WebCore::GraphicsContext3D::getExtensions):
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
|
| + (WebCore::GraphicsContext3D::validateDepthStencil):
|
| + (WebCore::GraphicsContext3D::clear):
|
| + (WebCore::GraphicsContext3D::isTexture):
|
| + (WebCore):
|
| + (WebCore::GraphicsContext3D::lineWidth):
|
| + (WebCore::GraphicsContext3D::linkProgram):
|
| + (WebCore::GraphicsContext3D::pixelStorei):
|
| + (WebCore::GraphicsContext3D::polygonOffset):
|
| + (WebCore::GraphicsContext3D::readPixels):
|
| + (WebCore::GraphicsContext3D::deleteBuffer):
|
| + * platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
|
| + (WebCore::GraphicsContext3D::releaseShaderCompiler):
|
| + (WebCore::GraphicsContext3D::readPixelsAndConvertToBGRAIfNecessary):
|
| + (WebCore::GraphicsContext3D::validateAttributes):
|
| + (WebCore):
|
| + (WebCore::GraphicsContext3D::getExtensions):
|
| + (WebCore::GraphicsContext3D::systemAllowsMultisamplingOnATICards): Now a member function.
|
| + * platform/graphics/qt/GraphicsContext3DQt.cpp:
|
| + (WebCore):
|
| + (WebCore::GraphicsContext3D::releaseShaderCompiler):
|
| +
|
| +2012-07-02 Ryosuke Niwa <rniwa@webkit.org>
|
| +
|
| + Make HTMLCollection RefCounted
|
| + https://bugs.webkit.org/show_bug.cgi?id=90414
|
| +
|
| + Reviewed by Sam Weinig.
|
| +
|
| + Make HTMLCollection ref counted and stop forwarding ref and deref to its owner (m_base)
|
| + so as to align its life time management to that of DynamicNodeList.
|
| +
|
| + After this patch, each HTMLCollection is owned by JSC/V8 and m_cachedCollections in ElementRareData
|
| + and m_collection in Document merely hold raw pointers for the caching purpose. These raw pointers
|
| + are cleared when each HTMLCollection is destructed via corresponding removeCachedHTMLCollection's.
|
| +
|
| + In the destructor of HTMLCollection, we use the CollectionType to decide whether base() is an element
|
| + or an document, and call the appropriate removeCachedHTMLCollection except for WindowNamedItems and
|
| + DocumentNamedItems. For those two types, we need to know the atomic string name associated with
|
| + the collection just like many DynamicNodeList to remove the cache, so we let HTMLNameCollection
|
| + directly call removeWindowNamedItemCache and removeDocumentNamedItemCache. We'll cleanup this mess in
|
| + a follow up patch using a nice class hierarchy and virtual destructors.
|
| +
|
| + * accessibility/AccessibilityRenderObject.cpp:
|
| + (WebCore::AccessibilityRenderObject::getDocumentLinks):
|
| + * bindings/js/JSDOMWindowCustom.cpp:
|
| + (WebCore::namedItemGetter):
|
| + * bindings/js/JSHTMLDocumentCustom.cpp:
|
| + (WebCore::JSHTMLDocument::nameGetter):
|
| + * bindings/v8/custom/V8DOMWindowCustom.cpp:
|
| + (WebCore::V8DOMWindow::namedPropertyGetter):
|
| + * dom/Document.cpp:
|
| + (WebCore::Document::Document):
|
| + (WebCore::Document::openSearchDescriptionURL):
|
| + (WebCore):
|
| + (WebCore::Document::cachedCollection):
|
| + (WebCore::Document::removeCachedHTMLCollection):
|
| + (WebCore::Document::images):
|
| + (WebCore::Document::applets):
|
| + (WebCore::Document::embeds):
|
| + (WebCore::Document::plugins):
|
| + (WebCore::Document::objects):
|
| + (WebCore::Document::scripts):
|
| + (WebCore::Document::links):
|
| + (WebCore::Document::forms):
|
| + (WebCore::Document::anchors):
|
| + (WebCore::Document::all):
|
| + (WebCore::Document::windowNamedItems):
|
| + (WebCore::Document::documentNamedItems):
|
| + (WebCore::Document::removeWindowNamedItemCache):
|
| + (WebCore::Document::removeDocumentNamedItemCache):
|
| + * dom/Document.h:
|
| + (Document):
|
| + * dom/Element.cpp:
|
| + (WebCore::Element::ensureCachedHTMLCollection):
|
| + (WebCore::ElementRareData::ensureCachedHTMLCollection):
|
| + (WebCore::Element::removeCachedHTMLCollection):
|
| + (WebCore):
|
| + * dom/Element.h:
|
| + (Element):
|
| + * dom/ElementRareData.h:
|
| + (ElementRareData):
|
| + (WebCore::ElementRareData::cachedHTMLCollection):
|
| + (WebCore::ElementRareData::removeCachedHTMLCollection):
|
| + * html/CollectionType.h:
|
| + (WebCore): Since WindowNamedItems is not a part of UnnamedDocumentCachedType, we shouldn't addd 1.
|
| + (WebCore::isUnnamedDocumentCachedType):
|
| + (WebCore::isNodeCollectionType):
|
| + * html/HTMLAllCollection.cpp:
|
| + (WebCore::HTMLAllCollection::create):
|
| + * html/HTMLAllCollection.h:
|
| + (HTMLAllCollection):
|
| + * html/HTMLCollection.cpp:
|
| + (WebCore::HTMLCollection::create):
|
| + (WebCore::HTMLCollection::~HTMLCollection):
|
| + (WebCore::HTMLCollection::itemAfter):
|
| + * html/HTMLCollection.h:
|
| + (WebCore::HTMLCollectionCacheBase::HTMLCollectionCacheBase):
|
| + (HTMLCollection):
|
| + (WebCore::HTMLCollection::base):
|
| + * html/HTMLDataListElement.cpp:
|
| + (WebCore::HTMLDataListElement::options):
|
| + * html/HTMLDataListElement.h:
|
| + (HTMLDataListElement):
|
| + * html/HTMLElement.cpp:
|
| + (WebCore::HTMLElement::children):
|
| + (WebCore::HTMLElement::properties):
|
| + * html/HTMLElement.h:
|
| + (HTMLElement):
|
| + * html/HTMLFieldSetElement.cpp:
|
| + (WebCore::HTMLFieldSetElement::elements):
|
| + * html/HTMLFieldSetElement.h:
|
| + (HTMLFieldSetElement):
|
| + * html/HTMLFormCollection.cpp:
|
| + (WebCore::HTMLFormCollection::create):
|
| + * html/HTMLFormCollection.h:
|
| + (HTMLFormCollection):
|
| + * html/HTMLFormElement.cpp:
|
| + (WebCore::HTMLFormElement::elements):
|
| + * html/HTMLFormElement.h:
|
| + (HTMLFormElement):
|
| + * html/HTMLMapElement.cpp:
|
| + (WebCore::HTMLMapElement::imageElement):
|
| + (WebCore::HTMLMapElement::areas):
|
| + * html/HTMLMapElement.h:
|
| + (HTMLMapElement):
|
| + * html/HTMLNameCollection.cpp:
|
| + (WebCore::HTMLNameCollection::HTMLNameCollection):
|
| + (WebCore::HTMLNameCollection::~HTMLNameCollection):
|
| + (WebCore):
|
| + * html/HTMLNameCollection.h:
|
| + (WebCore::HTMLNameCollection::create):
|
| + (HTMLNameCollection):
|
| + * html/HTMLOptionsCollection.cpp:
|
| + (WebCore::HTMLOptionsCollection::create):
|
| + * html/HTMLOptionsCollection.h:
|
| + (HTMLOptionsCollection):
|
| + * html/HTMLPropertiesCollection.h:
|
| + (HTMLPropertiesCollection):
|
| + * html/HTMLSelectElement.cpp:
|
| + (WebCore::HTMLSelectElement::selectedOptions):
|
| + (WebCore::HTMLSelectElement::options):
|
| + * html/HTMLSelectElement.h:
|
| + (HTMLSelectElement):
|
| + * html/HTMLTableElement.cpp:
|
| + (WebCore::HTMLTableElement::rows):
|
| + (WebCore::HTMLTableElement::tBodies):
|
| + * html/HTMLTableElement.h:
|
| + (HTMLTableElement):
|
| + * html/HTMLTableRowElement.cpp:
|
| + (WebCore::HTMLTableRowElement::insertCell):
|
| + (WebCore::HTMLTableRowElement::deleteCell):
|
| + (WebCore::HTMLTableRowElement::cells):
|
| + * html/HTMLTableRowElement.h:
|
| + (HTMLTableRowElement):
|
| + * html/HTMLTableRowsCollection.cpp:
|
| + (WebCore::HTMLTableRowsCollection::create):
|
| + * html/HTMLTableRowsCollection.h:
|
| + (HTMLTableRowsCollection):
|
| + * html/HTMLTableSectionElement.cpp:
|
| + (WebCore::HTMLTableSectionElement::insertRow):
|
| + (WebCore::HTMLTableSectionElement::deleteRow):
|
| + (WebCore::HTMLTableSectionElement::rows):
|
| + * html/HTMLTableSectionElement.h:
|
| + (HTMLTableSectionElement):
|
| +
|
| +2012-07-09 Pavel Feldman <pfeldman@chromium.org>
|
| +
|
| + Web Inspector: unindent line ending block upon { hit.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90795
|
| +
|
| + Reviewed by Vsevolod Vlasov.
|
| +
|
| + Added block-start / block-end markup into the highlighter.
|
| +
|
| + * inspector/front-end/SourceCSSTokenizer.js:
|
| + (WebInspector.SourceCSSTokenizer.prototype.nextToken):
|
| + * inspector/front-end/SourceCSSTokenizer.re2js:
|
| + * inspector/front-end/SourceJavaScriptTokenizer.js:
|
| + (WebInspector.SourceJavaScriptTokenizer.prototype.nextToken):
|
| + * inspector/front-end/SourceJavaScriptTokenizer.re2js:
|
| + * inspector/front-end/TextEditor.js:
|
| + (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
|
| + (WebInspector.TextEditorMainPanel.prototype._unindentAfterBlock):
|
| +
|
| +2012-07-09 Sheriff Bot <webkit.review.bot@gmail.com>
|
| +
|
| + Unreviewed, rolling out r122107.
|
| + http://trac.webkit.org/changeset/122107
|
| + https://bugs.webkit.org/show_bug.cgi?id=90794
|
| +
|
| + Build failure on Mac debug bots (Requested by falken_ on
|
| + #webkit).
|
| +
|
| + * CMakeLists.txt:
|
| + * Configurations/FeatureDefines.xcconfig:
|
| + * DerivedSources.cpp:
|
| + * DerivedSources.make:
|
| + * DerivedSources.pri:
|
| + * Target.pri:
|
| + * WebCore.gypi:
|
| + * WebCore.xcodeproj/project.pbxproj:
|
| + * bindings/generic/RuntimeEnabledFeatures.cpp:
|
| + (WebCore):
|
| + * bindings/generic/RuntimeEnabledFeatures.h:
|
| + (RuntimeEnabledFeatures):
|
| + * dom/ContextFeatures.cpp:
|
| + * dom/ContextFeatures.h:
|
| + * html/HTMLDialogElement.cpp: Removed.
|
| + * html/HTMLDialogElement.h: Removed.
|
| + * html/HTMLDialogElement.idl: Removed.
|
| + * html/HTMLElementsAllInOne.cpp:
|
| + * html/HTMLTagNames.in:
|
| + * page/DOMWindow.idl:
|
| +
|
| +2012-07-09 Andrei Onea <onea@adobe.com>
|
| +
|
| + [CSSRegions] Rename NamedFlow::getRegionsByContentNode to NamedFlow::getRegionsByContent
|
| + https://bugs.webkit.org/show_bug.cgi?id=90759
|
| +
|
| + Reviewed by Andreas Kling.
|
| +
|
| + Renamed NamedFlow::getRegionsByContentNode to NamedFlow::getRegionsByContent as per CSS Regions spec:
|
| + http://www.w3.org/TR/css3-regions/#dom-named-flow
|
| +
|
| + Tests: fast/regions/get-regions-by-content-horiz-bt.html
|
| + fast/regions/get-regions-by-content-horiz-tb.html
|
| + fast/regions/get-regions-by-content-vert-lr.html
|
| + fast/regions/get-regions-by-content-vert-rl.html
|
| + fast/regions/get-regions-by-content.html
|
| + fast/regions/get-regions-by-content2.html
|
| +
|
| + * dom/WebKitNamedFlow.cpp:
|
| + (WebCore::WebKitNamedFlow::getRegionsByContent):
|
| + * dom/WebKitNamedFlow.h:
|
| + (WebKitNamedFlow):
|
| + * dom/WebKitNamedFlow.idl:
|
| +
|
| +2012-07-09 Matt Falkenhagen <falken@chromium.org>
|
| +
|
| + Add ENABLE_DIALOG_ELEMENT and skeleton files
|
| + https://bugs.webkit.org/show_bug.cgi?id=90521
|
| +
|
| + Reviewed by Kent Tamura.
|
| +
|
| + This adds the ENABLE_DIALOG_ELEMENT feature flag and dummy implementation files for <dialog>. In addition, a runtime feature flag is added.
|
| + The feature is diabled by default.
|
| +
|
| + No new tests, as there is no behavior change.
|
| +
|
| + * CMakeLists.txt:
|
| + * Configurations/FeatureDefines.xcconfig:
|
| + * DerivedSources.cpp:
|
| + * DerivedSources.make:
|
| + * DerivedSources.pri:
|
| + * Target.pri:
|
| + * WebCore.gypi:
|
| + * WebCore.xcodeproj/project.pbxproj:
|
| + * bindings/generic/RuntimeEnabledFeatures.cpp:
|
| + (WebCore):
|
| + * bindings/generic/RuntimeEnabledFeatures.h: Added a runtime feature flag for dialog.
|
| + (RuntimeEnabledFeatures):
|
| + (WebCore::RuntimeEnabledFeatures::dialogElementEnabled):
|
| + (WebCore::RuntimeEnabledFeatures::setDialogElementEnabled):
|
| + * dom/ContextFeatures.cpp:
|
| + (WebCore::ContextFeatures::dialogElementEnabled):
|
| + (WebCore):
|
| + * dom/ContextFeatures.h: Added a per-context flag for dialog so that dialog can be disabled in HTMLTagNames.in and DOMWindow.idl when the dialog runtime feature flag is off.
|
| + * html/HTMLDialogElement.cpp: Added.
|
| + (WebCore):
|
| + (WebCore::HTMLDialogElement::HTMLDialogElement):
|
| + (WebCore::HTMLDialogElement::create):
|
| + (WebCore::HTMLDialogElement::close):
|
| + (WebCore::HTMLDialogElement::show):
|
| + * html/HTMLDialogElement.h: Added.
|
| + (WebCore):
|
| + (HTMLDialogElement):
|
| + * html/HTMLDialogElement.idl: Added.
|
| + * html/HTMLElementsAllInOne.cpp:
|
| + * html/HTMLTagNames.in:
|
| + * page/DOMWindow.idl:
|
| +
|
| +2012-07-09 Pavel Feldman <pfeldman@chromium.org>
|
| +
|
| + Web Inspector: inspector does not reflect newly created text nodes from contenteditable
|
| + https://bugs.webkit.org/show_bug.cgi?id=90779
|
| +
|
| + Reviewed by Vsevolod Vlasov.
|
| +
|
| + We need to report first text node as inserted, otherwise we fail to report character data modified on it.
|
| +
|
| + * inspector/InspectorDOMAgent.cpp:
|
| + (WebCore::InspectorDOMAgent::characterDataModified):
|
| +
|
| +2012-07-09 Andrey Kosyakov <caseq@chromium.org>
|
| +
|
| + REGRESSION(r121980) Layout Test inspector/timeline/timeline-frames.html started to crash.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90747
|
| +
|
| + Reviewed by Pavel Feldman.
|
| +
|
| + - consider didCancelFrame() call normal if there is no pending frame, remove assertion;
|
| + - always set empty data object for frame records;
|
| +
|
| + * inspector/InspectorTimelineAgent.cpp:
|
| + (WebCore::InspectorTimelineAgent::didCancelFrame):
|
| + (WebCore::InspectorTimelineAgent::commitFrameRecord):
|
| +
|
| +2012-07-09 Taiju Tsuiki <tzik@chromium.org>
|
| +
|
| + Web Inspector: Add FileContentView for FileSystemView
|
| + https://bugs.webkit.org/show_bug.cgi?id=90529
|
| +
|
| + Adding FileContentView to Inspector.
|
| + This class provides preview of text files in FileSystem.
|
| +
|
| + Reviewed by Vsevolod Vlasov.
|
| +
|
| + * WebCore.gypi:
|
| + * WebCore.vcproj/WebCore.vcproj:
|
| + * inspector/compile-front-end.py:
|
| + * inspector/front-end/FileContentView.js: Added.
|
| + * inspector/front-end/FileSystemView.js:
|
| + (WebInspector.FileSystemView.prototype.get visibleView):
|
| + (WebInspector.FileSystemView.EntryTreeElement.prototype.onselect):
|
| + (WebInspector.FileSystemView.EntryTreeElement.prototype._directoryContentReceived):
|
| + (WebInspector.FileSystemView.EntryTreeElement.prototype.refresh):
|
| + * inspector/front-end/WebKit.qrc:
|
| + * inspector/front-end/inspector.html:
|
| +
|
| +2012-07-09 Carlos Garcia Campos <cgarcia@igalia.com>
|
| +
|
| + [SOUP] Use soup_cookie_jar_is_persistent() to set whether cookie is a session one or not
|
| + https://bugs.webkit.org/show_bug.cgi?id=90769
|
| +
|
| + Reviewed by Gustavo Noronha Silva.
|
| +
|
| + It's currently set to false, because there were no API to know
|
| + whether cookies were persistent or not. Now that we bumped libsoup
|
| + requirements, we can use soup_cookie_jar_is_persistent().
|
| +
|
| + * platform/network/soup/CookieJarSoup.cpp:
|
| + (WebCore::getRawCookies):
|
| +
|
| +2012-07-09 Taiju Tsuiki <tzik@chromium.org>
|
| +
|
| + Web Inspector: Add text file support for FileSystemAgent::requestFileContent
|
| + https://bugs.webkit.org/show_bug.cgi?id=90439
|
| +
|
| + Reviewed by Vsevolod Vlasov.
|
| +
|
| + * inspector/Inspector.json:
|
| + * inspector/InspectorFileSystemAgent.cpp:
|
| + (WebCore):
|
| + (WebCore::InspectorFileSystemAgent::requestFileContent):
|
| + * inspector/InspectorFileSystemAgent.h:
|
| + (InspectorFileSystemAgent):
|
| + * inspector/front-end/FileSystemModel.js:
|
| + (WebInspector.FileSystemModel.prototype.requestFileContent):
|
| + (WebInspector.FileSystemModel.File.prototype.requestFileContent):
|
| + (WebInspector.FileSystemRequestManager.prototype._fileContentReceived):
|
| + (WebInspector.FileSystemDispatcher.prototype.fileContentReceived):
|
| +
|
| +2012-07-09 MORITA Hajime <morrita@google.com>
|
| +
|
| + [Chromium] ContextFeaturesClient::isEnabled is slow
|
| + https://bugs.webkit.org/show_bug.cgi?id=90367
|
| +
|
| + Reviewed by Kent Tamura.
|
| +
|
| + * dom/ContextFeatures.h:
|
| + (WebCore::ContextFeaturesClient::urlDidChange): Added.
|
| + (WebCore::ContextFeatures::urlDidChange): Added.
|
| + (WebCore):
|
| + * dom/Document.cpp:
|
| + (WebCore::Document::setURL): Added an urlDidChange() call.
|
| +
|
| +2012-07-09 Andrei Onea <onea@adobe.com>
|
| +
|
| + [CSSRegions] Implement NamedFlow::firstEmptyRegionIndex attribute
|
| + https://bugs.webkit.org/show_bug.cgi?id=90608
|
| +
|
| + Reviewed by Andreas Kling.
|
| +
|
| + Implemented NamedFlow::firstEmptyRegionIndex as per spec: http://www.w3.org/TR/css3-regions/#dom-named-flow
|
| +
|
| + Test: fast/regions/webkit-named-flow-first-empty-region-index.html
|
| +
|
| + * dom/WebKitNamedFlow.cpp:
|
| + (WebCore::WebKitNamedFlow::firstEmptyRegionIndex):
|
| + (WebCore):
|
| + * dom/WebKitNamedFlow.h:
|
| + (WebKitNamedFlow):
|
| + * dom/WebKitNamedFlow.idl:
|
| +
|
| +2012-07-08 Yoshifumi Inoue <yosin@chromium.org>
|
| +
|
| + [Platform-Mac] Derive LocaleMac.{cpp,h} and LocalizedDateMac.cpp from LocaleWin
|
| + https://bugs.webkit.org/show_bug.cgi?id=90752
|
| +
|
| + Reviewed by Kent Tamura.
|
| +
|
| + This patch is preparation of introducing LocaleMac class for localize date form.
|
| + This patch copies LocaleWin and LocalizedDateWin.cpp as below:
|
| + - LocaleMac.h from LocaleWin.h
|
| + - LocaleMac.mm from LocaliedDateMac.mm
|
| + - LocaliedDateMac.cpp from LocalizedDateWin.cpp
|
| +
|
| + Due by git, diffs are appeared as new thing. I'll do svn copy at landing time.
|
| +
|
| + No new tests. This patch doesn't change behavior.
|
| +
|
| + * platform/text/mac/LocaleMac.h: Copied from platform/text/LocaleWin.h
|
| + * platform/text/mac/LocaleMac.mm: Copied from platform/text/mac/LocalizedDateMac.mm
|
| + * platform/text/mac/LocalizedDateMac.cpp: Copied from platform/text/LocalizedDateWin.cpp
|
| +
|
| +2012-07-08 Laszlo Gombos <laszlo.1.gombos@nokia.com>
|
| +
|
| + Introduce a build flag for low quality JPEG images
|
| + https://bugs.webkit.org/show_bug.cgi?id=90748
|
| +
|
| + Reviewed by Adam Barth.
|
| +
|
| + Introduce build options for no JPEG dithering (USE(LOW_QUALITY_IMAGE_NO_JPEG_DITHERING))
|
| + and no JPEG fancy upsampling (USE(LOW_QUALITY_IMAGE_NO_JPEG_FANCY_UPSAMPLING)).
|
| +
|
| + No new tests as there is no change in functionality.
|
| +
|
| + * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
|
| + (ditherMode):
|
| + (doFancyUpsampling):
|
| +
|
| +2012-07-08 Sheriff Bot <webkit.review.bot@gmail.com>
|
| +
|
| + Unreviewed, rolling out r121968.
|
| + http://trac.webkit.org/changeset/121968
|
| + https://bugs.webkit.org/show_bug.cgi?id=90749
|
| +
|
| + Caused a link error on chromium Win dbg. (Requested by hayato
|
| + on #webkit).
|
| +
|
| + * inspector/InspectorMemoryAgent.cpp:
|
| + (WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):
|
| + * inspector/front-end/NativeMemorySnapshotView.js:
|
| + (WebInspector.MemoryBlockViewProperties._initialize):
|
| + * platform/MemoryUsageSupport.cpp:
|
| + * platform/MemoryUsageSupport.h:
|
| + (MemoryUsageSupport):
|
| + * platform/chromium/MemoryUsageSupportChromium.cpp:
|
| +
|
| +2012-07-08 Mary Wu <mary.wu@torchmobile.com.cn>
|
| +
|
| + [BlackBerry] Make setForceDownload a setter method.
|
| + https://bugs.webkit.org/show_bug.cgi?id=90591
|
| +
|
| + Reviewed by Rob Buis.
|
| +
|
| + * platform/network/blackberry/ResourceRequest.h:
|
| + (WebCore::ResourceRequest::setForceDownload):
|
| +
|
| 2012-07-05 MORITA Hajime <morrita@google.com>
|
|
|
| Heap-use-after-free in WebCore::RenderObject::destroyAndCleanupAnonymousWrappers
|
|
|