New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 638187 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Email to this user bounced
Closed: Nov 2016
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

offsetLeft and offsetTop wrong inside inline continuations

Reported by msten...@opera.com, Aug 16 2016

Issue description

Inline continuations confuse offsetLeft and offsetTop calculation, because we depend on always finding the first layout object in the continuation chain when walking from the element to its offsetParent. For continuations, an element may create multiple layout objects.
 
tc.html
447 bytes View Download
Status: Available (was: Untriaged)
Edge and Firefox pass

Comment 2 by ka...@opera.com, Oct 26 2016

Owner: ka...@opera.com
Status: Started (was: Available)
Review in https://codereview.chromium.org/2454693003
Project Member

Comment 3 by bugdroid1@chromium.org, Nov 3 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c3485960aedb34468b06c02f7d132501a26c0d2d

commit c3485960aedb34468b06c02f7d132501a26c0d2d
Author: karlo <karlo@opera.com>
Date: Thu Nov 03 09:41:46 2016

adjustedPositionRelativeTo() couldn't find offsetParent.

LayoutBoxModelObject::adjustedPositionRelativeTo() could get confused
by inline continuations, and could fail if offsetParent itself was a split
continuation.  If the child belongs to the second part of the continuation,
we'll instead race to the root of the tree.  By comparing with the node instead,
we correctly identify the offsetParent and stop the search.

BUG= 638187 

Review-Url: https://codereview.chromium.org/2454693003
Cr-Commit-Position: refs/heads/master@{#429541}

[add] https://crrev.com/c3485960aedb34468b06c02f7d132501a26c0d2d/third_party/WebKit/LayoutTests/fast/inline/inline-offsetLeft-continuation-expected.txt
[add] https://crrev.com/c3485960aedb34468b06c02f7d132501a26c0d2d/third_party/WebKit/LayoutTests/fast/inline/inline-offsetLeft-continuation.html
[modify] https://crrev.com/c3485960aedb34468b06c02f7d132501a26c0d2d/third_party/WebKit/Source/core/layout/LayoutBoxModelObject.cpp

Comment 4 by ka...@opera.com, Nov 3 2016

Status: Fixed (was: Started)

Sign in to add a comment