[Webkit-unassigned] [Bug 116994] Setting overflow:hidden on position:absolute does not repaint hidden content
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Jun 6 17:29:00 PDT 2013
https://bugs.webkit.org/show_bug.cgi?id=116994
Simon Fraser (smfr) <simon.fraser at apple.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #203661|review? |review+
Flag| |
--- Comment #13 from Simon Fraser (smfr) <simon.fraser at apple.com> 2013-06-06 17:27:33 PST ---
(From update of attachment 203661)
View in context: https://bugs.webkit.org/attachment.cgi?id=203661&action=review
> Source/WebCore/ChangeLog:18
> + In the reproduced content, overflow:hidden parent(called P) has display:none replaced child(called C).
> + If we hover a element, P becomes overflow:visible, and C becomes display:block.
> + If we mouse out from the element, P becomes hidden, and C becomes none, and part of C is not repainted.
> +
> + When we mouse out from the element, P and C request repaint.
> + Before requesting repaint, P becomes overflow: hidden, and it makes hasOverflowClip() true.
> + Requesting repaint from C is clipped by P at RenderBox::computeRectForRepaint().
> + The rect which P requests repaint is content rect of P, so the rect which is overflowed from P is not requested.
> +
> + If C is not relative, visual overflow rect of P has the rect of C, so we can repaint well.
> + If C doesn't become display:none, layouting C requests repaint the rect of C, so we can repaint well.
I don't think this long explanation is necessary.
> Source/WebCore/rendering/RenderLayerModelObject.cpp:82
> + return !hasSelfPaintingLayer() && container->hasOverflowClip();
You should ASSERT that o is the container.
> LayoutTests/fast/repaint/change-overflow-and-display-of-relative-expected.html:2
> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
Don't need the <meta> tag.
> LayoutTests/fast/repaint/change-overflow-and-display-of-relative.html:32
> + }, 50);
Can this be < 50ms?
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list