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

Issue 638177 link

Starred by 6 users

Issue metadata

Status: Started
Owner:
Last visit > 30 days ago
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 769832



Sign in to add a comment

Failure to find offsetParent on block inside inline

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

Issue description

This fails because inline objects cannot be parents of block-level objects in Blink, and we have no special code to search harder for offsetParent in such cases.

https://www.w3.org/TR/cssom-view-1/#extensions-to-the-htmlelement-interface
 
tc.html
470 bytes View Download
Status: Available (was: Untriaged)

Comment 2 by lunalu@chromium.org, Aug 31 2016

Owner: lunalu@chromium.org

Comment 3 by lunalu@chromium.org, Aug 31 2016

Owner: ----

Comment 4 by ka...@opera.com, Oct 25 2016

Owner: ka...@opera.com
Status: Started (was: Available)

Comment 6 by e...@chromium.org, Sep 8 2017

Did you ever get around to land your fix Karl?

Comment 7 by ka...@opera.com, Sep 20 2017

This somehow got forgotten.  Removed old review from rietveld and started a new one:

https://chromium-review.googlesource.com/c/chromium/src/+/674875
Project Member

Comment 8 by bugdroid1@chromium.org, Sep 22 2017

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

commit 8adb99901d515d445cc398bf78e8b1accedc0613
Author: Karl Anders Øygard <karlo@opera.com>
Date: Fri Sep 22 10:15:42 2017

offsetParent fails to consider continuations when searching for parent.

Block-level objects can have inline parents, but this triggers the
insertion of anonymous boxes and continuations, which offsetParent()
currently doesn't understand.

This change lets offsetParent() understand continuations better.
If an anonymous continuation is encountered when finding ancestors,
it will use the split inline as the ancestor, and continue searching
from there.

BUG=638177

Change-Id: I8850f9b5dacaffaa26b5f1c414f4f351709d7088
Reviewed-on: https://chromium-review.googlesource.com/674875
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Karl Anders Øygard <karlo@opera.com>
Cr-Commit-Position: refs/heads/master@{#503704}
[add] https://crrev.com/8adb99901d515d445cc398bf78e8b1accedc0613/third_party/WebKit/LayoutTests/fast/inline/inline-offsetParent-continuation.html
[modify] https://crrev.com/8adb99901d515d445cc398bf78e8b1accedc0613/third_party/WebKit/Source/core/layout/LayoutObject.cpp

Comment 9 by ka...@opera.com, Sep 22 2017

Status: Fixed (was: Started)

Comment 10 by kbr@chromium.org, Sep 29 2017

Blocking: 769832
Project Member

Comment 11 by bugdroid1@chromium.org, Oct 2 2017

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

commit 8ae81225d69601694557e6014d0bf78fac951289
Author: Daniel Cheng <dcheng@chromium.org>
Date: Mon Oct 02 21:37:47 2017

Revert "offsetParent fails to consider continuations when searching for parent."

This reverts commit 8adb99901d515d445cc398bf78e8b1accedc0613.

Reason for revert: breaking PolyGerrit

Original change's description:
> offsetParent fails to consider continuations when searching for parent.
> 
> Block-level objects can have inline parents, but this triggers the
> insertion of anonymous boxes and continuations, which offsetParent()
> currently doesn't understand.
> 
> This change lets offsetParent() understand continuations better.
> If an anonymous continuation is encountered when finding ancestors,
> it will use the split inline as the ancestor, and continue searching
> from there.
> 
> BUG=638177
> 
> Change-Id: I8850f9b5dacaffaa26b5f1c414f4f351709d7088
> Reviewed-on: https://chromium-review.googlesource.com/674875
> Reviewed-by: Emil A Eklund <eae@chromium.org>
> Commit-Queue: Karl Anders Øygard <karlo@opera.com>
> Cr-Commit-Position: refs/heads/master@{#503704}

TBR=kochi@chromium.org,eae@chromium.org,karlo@opera.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 638177
Change-Id: I6e59c060ca0f290fbfabb7662f233424baab6564
Reviewed-on: https://chromium-review.googlesource.com/695843
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: Emil A Eklund <eae@chromium.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#505793}
[delete] https://crrev.com/5d52fe1ae2ec8e8d83eba9a5984555b6f255581e/third_party/WebKit/LayoutTests/fast/inline/inline-offsetParent-continuation.html
[modify] https://crrev.com/8ae81225d69601694557e6014d0bf78fac951289/third_party/WebKit/Source/core/layout/LayoutObject.cpp

Cc: e...@chromium.org ka...@opera.com skobes@chromium.org rbyers@chromium.org
 Issue 769832  has been merged into this issue.

Comment 13 by kbr@chromium.org, Oct 3 2017

Status: Started (was: Fixed)

Comment 14 by ka...@opera.com, Feb 28 2018

Owner: karloygard@chromium.org

Sign in to add a comment