1. 02 Apr, 2014 9 commits
    • jsbell@chromium.org's avatar
      AppCache error details tests · 7250cc4a
      jsbell@chromium.org authored
      Follows Blink (crrev.com/164873003) and Chromium (crrev.com/164933002)
      
      BUG=342555
      
      Review URL: https://codereview.chromium.org/217133002
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@170621 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      7250cc4a
    • esprehn@chromium.org's avatar
      MediaQueryList::evaluate should return a bool · 093e11ef
      esprehn@chromium.org authored
      Instead of passing a boolean by reference we should just return one.
      
      Review URL: https://codereview.chromium.org/221663002
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@170620 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      093e11ef
    • haraken@chromium.org's avatar
      Revert r170531 · d5256ba4
      haraken@chromium.org authored
      r170531 copied files to make the diff of r170536 saner.
      Now that r170536 was reverted, we need to revert r170531 at the same time.
      Otherwise, we'll leave meaningless files in the code base.
      
      TBR=tkent
      
      Review URL: https://codereview.chromium.org/221663003
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@170619 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      d5256ba4
    • senorblanco@chromium.org's avatar
      This is a merge of http://trac.webkit.org/changeset/151623 by Simon Fraser... · 60695405
      senorblanco@chromium.org authored
      This is a merge of http://trac.webkit.org/changeset/151623 by Simon Fraser <simon.fraser@apple.com>.
      
      It was a mostly-mechanical merge. The reftest fixed-backgrounds.html required some tweaking,
      since it relied on composited and non-composited output being identical. This required changing
      the shadow from a soft shadow to a hard shadow.
      
      BUG=330852
      
      --
      
      Source/WebCore: Painting of fixed background images is wrong in composited layers
      ​https://bugs.webkit.org/show_bug.cgi?id=65793
      Reviewed by Sam Weinig.
      The code that computed background image geometry for background-attachment:fixed
      images was unaware of compositing, so often painting the image at the wrong location.
      Fix by having RenderBoxModelObject::calculateBackgroundImageGeometry() do the correct
      math for fixed backgrounds in composited layer by offsetting the viewport rect by
      the paint container's absolute position.
      Tests: compositing/backgrounds/fixed-background-on-descendant.html
      compositing/backgrounds/fixed-backgrounds.html
      rendering/RenderBox.cpp:
      (WebCore::RenderBox::getBackgroundPaintedExtent): Now returns a bool indicating
      whether it is returning a reliable extent rect. It can return false in the case where
      a background is fixed, since computing the correct extent would require finding
      the appropriate composited ancestor to pass to calculateBackgroundImageGeometry().
      This is OK since this function is used for "background opaque" optimizations.
      (WebCore::RenderBox::computeBackgroundIsKnownToBeObscured): If getBackgroundPaintedExtent()
      returns false, return false.
      (WebCore::RenderBox::maskClipRect): We removed mask-attachment, so we never need to
      compute the composited ancestor here and can pass null.
      (WebCore::RenderBox::repaintLayerRectsForImage): Unwrap a comment.
      If the changed image is related to a fixed background, geometry.hasNonLocalGeometry()
      will be true. In that cause, just repaint the entire renderer rather than groveling
      around for a composited ancestor.
      rendering/RenderBox.h: Changed name and signature of backgroundPaintedExtent.
      rendering/RenderBoxModelObject.cpp:
      (WebCore::RenderBoxModelObject::paintFillLayerExtended): calculateBackgroundImageGeometry()
      now needs to know the painting container.
      (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry): Now takes a painting
      container, that is required to correctly compute the viewport-relative offset for fixed
      backgrounds. geometry.setHasNonLocalGeometry() is set for fixed backgrounds to indicate
      to callers that, if they didn't pass a paint container, the destRect is not accurate.
      The main bug fix is also here: we move the viewportRect by the absolute location of
      paint container, which is equivalent to the composited layer offset.
      (WebCore::RenderBoxModelObject::getGeometryForBackgroundImage): calculateBackgroundImageGeometry()
      takes a paint container.
      rendering/RenderBoxModelObject.h:
      (WebCore::RenderBoxModelObject::BackgroundImageGeometry::BackgroundImageGeometry):
      (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setHasNonLocalGeometry):
      (WebCore::RenderBoxModelObject::BackgroundImageGeometry::hasNonLocalGeometry):
      rendering/RenderImage.cpp:
      (WebCore::RenderImage::computeBackgroundIsKnownToBeObscured): If getBackgroundPaintedExtent()
      can't cheaply give an accurate answer, return false.
      rendering/RenderLayerBacking.cpp:
      (WebCore::RenderLayerBacking::updateDirectlyCompositedBackgroundImage): Pass the paint container,
      which is our own renderer.
      LayoutTests: Fixed background images behave strangely with webkit transitions
      ​https://bugs.webkit.org/show_bug.cgi?id=65793
      Reviewed by Sam Weinig.
      Ref tests that compare fixed background rendering after a scroll, with and
      without compositing, with a couple of layer configurations.
      compositing/backgrounds/fixed-background-on-descendant-expected.html: Added.
      compositing/backgrounds/fixed-background-on-descendant.html: Added.
      compositing/backgrounds/fixed-backgrounds-expected.html: Added.
      compositing/backgrounds/fixed-backgrounds.html: Added.
      
      Review URL: https://codereview.chromium.org/102123013
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@170618 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      60695405
    • abarth@chromium.org's avatar
      This test times out on other platforms too · fd21418c
      abarth@chromium.org authored
      TBR=dpranke@chromium.org
      NOTRY=true
      
      Review URL: https://codereview.chromium.org/219963018
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@170617 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      fd21418c
    • dpranke@chromium.org's avatar
      Revert r170536 - "Rename DatabaseTaskSynchronizer to TaskSynchronizer ..." · f01a704b
      dpranke@chromium.org authored
      This is a speculative revert to see if causes the WebKit Android N4 bot
      to stop crashing.
      
      TBR=haraken@chromium.org, rafaelw@chromium.org, tkent@chromium.org
      BUG=
      
      Review URL: https://codereview.chromium.org/219963019
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@170616 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      f01a704b
    • skobes@chromium.org's avatar
      Reset multipliers when FTA is disabled. · 73327d3d
      skobes@chromium.org authored
      Fix assertion in beginLayout on resize.
      
      BUG=353309
      
      Review URL: https://codereview.chromium.org/221193004
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@170615 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      73327d3d
    • pdr@chromium.org's avatar
      Allow <use> inside author shadow roots · 5acae092
      pdr@chromium.org authored
      This patch fixes a bug where <use> elements did not work in author shadow
      trees due to a restriction that <use> trees are not expanded inside
      shadow trees. This restriction was in place so that we don't nest <use>
      shadow trees but instead expand nested <use> elements manually using
      the top-level <use> element.
      
      For example:
      <defs>
      __<use id="a">
      ____<rect>
      __<use id="b" xlink:href="#a">
      </defs>
      <use id="c" xlink:href="#b">
      
      When creating the "c" shadow tree, "b" is first added:
      <use id="c">
      __#user-agent-shadow-root
      ____<use id="b">
      
      And then "b" is "expanded" (see: expandUseElementsInShadowTree):
      <use id="c">
      __#user-agent-shadow-root
      ____<g id="b">
      ______<use id="a">
      
      Finally "a" is "expanded":
      <use id="c">
      __#user-agent-shadow-root
      ____<g id="b">
      ______<g id="a">
      ________<rect>
      
      The checks preventing <use> tree expansion in shadow trees were
      intended to prevent the nested <use> elements (or <symbol>) from
      creating nested shadow roots--notice there is only one shadow root
      in the above example.
      
      This patch switches the isInShadowTree checks with isInUserAgentShadowTree
      which will prevent <use> elements from cloning their targets when nested
      inside another <use> shadow tree, but allow <use> elements with author
      shadow roots.
      
      BUG=356891
      
      Review URL: https://codereview.chromium.org/216463003
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@170614 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      5acae092
    • esprehn@chromium.org's avatar
      Remove some checks from SharedStyleFinder · f8c6bc46
      esprehn@chromium.org authored
      Element::supportsStyleSharing() always returns false for elements that
      are hovered, focused or active or are the :target so we don't need to
      check those in the SharedStyleFinder.
      
      Review URL: https://codereview.chromium.org/221463004
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@170613 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      f8c6bc46
  2. 01 Apr, 2014 31 commits