Changeset 150881 in webkit


Ignore:
Timestamp:
May 29, 2013 3:57:07 AM (11 years ago)
Author:
commit-queue@webkit.org
Message:

[CSS Regions] Content that has overflow: scroll cannot be scrolled by dragging the scroll thumbs with the mouse
https://bugs.webkit.org/show_bug.cgi?id=113703

Patch by Mihai Maerean <Mihai Maerean> on 2013-05-29
Reviewed by Darin Adler.

Source/WebCore:

The point inside a box that's inside a region has its coordinates relative to the region, not the FlowThread
that is its container in the RenderObject tree.

Previously, the coordinates were computed relatively to the FlowThread which doesn't really have a location in
the page.

Tests: fast/regions/drag-scrollbars-of-content.html

fast/regions/hover-in-second-region.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::offsetFromContainer):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::mapAbsoluteToLocalPoint):

LayoutTests:

  • fast/regions/drag-scrollbars-of-content-expected.html: Added.
  • fast/regions/drag-scrollbars-of-content.html: Added.
  • fast/regions/hover-in-second-region-expected.html: Added.
  • fast/regions/hover-in-second-region.html: Added.
Location:
trunk
Files:
4 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r150876 r150881  
     12013-05-29  Mihai Maerean  <mmaerean@adobe.com>
     2
     3        [CSS Regions] Content that has overflow: scroll cannot be scrolled by dragging the scroll thumbs with the mouse
     4        https://bugs.webkit.org/show_bug.cgi?id=113703
     5
     6        Reviewed by Darin Adler.
     7
     8        * fast/regions/drag-scrollbars-of-content-expected.html: Added.
     9        * fast/regions/drag-scrollbars-of-content.html: Added.
     10        * fast/regions/hover-in-second-region-expected.html: Added.
     11        * fast/regions/hover-in-second-region.html: Added.
     12
    1132013-05-29  Kent Tamura  <tkent@chromium.org>
    214
  • trunk/Source/WebCore/ChangeLog

    r150880 r150881  
     12013-05-29  Mihai Maerean  <mmaerean@adobe.com>
     2
     3        [CSS Regions] Content that has overflow: scroll cannot be scrolled by dragging the scroll thumbs with the mouse
     4        https://bugs.webkit.org/show_bug.cgi?id=113703
     5
     6        Reviewed by Darin Adler.
     7
     8        The point inside a box that's inside a region has its coordinates relative to the region, not the FlowThread
     9        that is its container in the RenderObject tree.
     10
     11        Previously, the coordinates were computed relatively to the FlowThread which doesn't really have a location in
     12        the page.
     13
     14        Tests: fast/regions/drag-scrollbars-of-content.html
     15               fast/regions/hover-in-second-region.html
     16
     17        * rendering/RenderBox.cpp:
     18        (WebCore::RenderBox::offsetFromContainer):
     19        * rendering/RenderBoxModelObject.cpp:
     20        (WebCore::RenderBoxModelObject::mapAbsoluteToLocalPoint):
     21
    1222013-05-29  Andreas Kling  <akling@apple.com>
    223
  • trunk/Source/WebCore/rendering/RenderBox.cpp

    r150743 r150881  
    18271827LayoutSize RenderBox::offsetFromContainer(RenderObject* o, const LayoutPoint& point, bool* offsetDependsOnPoint) const
    18281828{
    1829     ASSERT(o == container());
     1829    // A region "has" boxes inside it without being their container.
     1830    ASSERT(o == container() || o->isRenderRegion());
    18301831
    18311832    LayoutSize offset;   
  • trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp

    r150503 r150881  
    28542854        return;
    28552855
     2856    // The point inside a box that's inside a region has its coordinates relative to the region,
     2857    // not the FlowThread that is its container in the RenderObject tree.
     2858    if (o->isRenderFlowThread() && isRenderBlock()) {
     2859        // FIXME (CSSREGIONS): switch to Box instead of Block when we'll have range information
     2860        // for boxes as well, not just for blocks.
     2861        RenderRegion* startRegion;
     2862        RenderRegion* endRegion;
     2863        toRenderFlowThread(o)->getRegionRangeForBox(toRenderBlock(this), startRegion, endRegion);
     2864        if (startRegion)
     2865            o = startRegion;
     2866    }
     2867
    28562868    o->mapAbsoluteToLocalPoint(mode, transformState);
    28572869
Note: See TracChangeset for help on using the changeset viewer.