Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(353)

Issue 16240007: Fix hit testing to be aware of inert inlines. (Closed)

Created:
7 years, 6 months ago by falken
Modified:
7 years, 6 months ago
CC:
blink-reviews, eae+blinkwatch, leviw+renderwatch, jchaffraix+rendering, ojan, esprehn
Visibility:
Public.

Description

Fix hit testing to be aware of inert inlines. This patch does the following. - Makes InlineBox::visibleToHitTestRequest use RenderObject::visibleToHitTestRequest, so that inertness is checked. Otherwise, hit testing succeeds on an InlineFlowBox inside an inert renderer testing its line boxes in RenderBlock::hitTestContents, for example, a TEXT node inside a DIV. - Makes RenderObject::isInert find the first element node ancestor and check its inertness. Otherwise, an anonymous renderer or a renderer for a non-element node like RenderText is always considered non-inert and hit testing succeeds on it. BUG=241699 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=151797

Patch Set 1 #

Patch Set 2 : testing style #

Total comments: 6

Patch Set 3 : de-dupe visibleToHitTesting #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+117 lines, -2 lines) Patch
A LayoutTests/fast/dom/HTMLDialogElement/inert-inlines.html View 1 1 chunk +80 lines, -0 lines 0 comments Download
A LayoutTests/fast/dom/HTMLDialogElement/inert-inlines-expected.txt View 1 1 chunk +24 lines, -0 lines 0 comments Download
M Source/core/rendering/InlineBox.h View 1 2 1 chunk +1 line, -1 line 1 comment Download
M Source/core/rendering/RenderObject.h View 1 chunk +1 line, -1 line 0 comments Download
M Source/core/rendering/RenderObject.cpp View 1 chunk +11 lines, -0 lines 0 comments Download

Messages

Total messages: 19 (0 generated)
falken
Julien or Morita-san, could you review this patch please? It's a continuation of https://src.chromium.org/viewvc/blink?view=rev&revision=151223
7 years, 6 months ago (2013-05-31 12:58:44 UTC) #1
Hajime Morrita
https://codereview.chromium.org/16240007/diff/2001/Source/core/rendering/InlineBox.h File Source/core/rendering/InlineBox.h (right): https://codereview.chromium.org/16240007/diff/2001/Source/core/rendering/InlineBox.h#newcode280 Source/core/rendering/InlineBox.h:280: bool visibleToHitTestRequest(const HitTestRequest& request) const { return renderer()->style()->visibility() == ...
7 years, 6 months ago (2013-06-03 03:28:35 UTC) #2
falken
Thanks. https://codereview.chromium.org/16240007/diff/2001/Source/core/rendering/InlineBox.h File Source/core/rendering/InlineBox.h (right): https://codereview.chromium.org/16240007/diff/2001/Source/core/rendering/InlineBox.h#newcode280 Source/core/rendering/InlineBox.h:280: bool visibleToHitTestRequest(const HitTestRequest& request) const { return renderer()->style()->visibility() ...
7 years, 6 months ago (2013-06-03 03:47:55 UTC) #3
falken
Morita-san, PTAL. https://codereview.chromium.org/16240007/diff/2001/Source/core/rendering/InlineBox.h File Source/core/rendering/InlineBox.h (right): https://codereview.chromium.org/16240007/diff/2001/Source/core/rendering/InlineBox.h#newcode280 Source/core/rendering/InlineBox.h:280: bool visibleToHitTestRequest(const HitTestRequest& request) const { return ...
7 years, 6 months ago (2013-06-04 04:33:26 UTC) #4
Hajime Morrita
lgtm
7 years, 6 months ago (2013-06-04 04:42:40 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/falken@chromium.org/16240007/10001
7 years, 6 months ago (2013-06-04 05:30:15 UTC) #6
commit-bot: I haz the power
Retried try job too often on mac_layout_rel for step(s) webkit_tests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=mac_layout_rel&number=8494
7 years, 6 months ago (2013-06-04 06:50:47 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/falken@chromium.org/16240007/10001
7 years, 6 months ago (2013-06-04 07:19:12 UTC) #8
eseidel
I find the concept of "inert" elements confusing. I guess these are non-interactive wrt editing?
7 years, 6 months ago (2013-06-04 07:24:55 UTC) #9
falken
On 2013/06/04 07:24:55, eseidel wrote: > I find the concept of "inert" elements confusing. I ...
7 years, 6 months ago (2013-06-04 07:30:54 UTC) #10
eseidel
Hmmm... This is an inherited property of the DOM element. Feels a bit like rare ...
7 years, 6 months ago (2013-06-04 07:43:01 UTC) #11
eseidel
https://codereview.chromium.org/16240007/diff/10001/Source/core/rendering/InlineBox.h File Source/core/rendering/InlineBox.h (right): https://codereview.chromium.org/16240007/diff/10001/Source/core/rendering/InlineBox.h#newcode280 Source/core/rendering/InlineBox.h:280: bool visibleToHitTestRequest(const HitTestRequest& request) const { return renderer()->visibleToHitTestRequest(request); } ...
7 years, 6 months ago (2013-06-04 07:44:45 UTC) #12
falken
On 2013/06/04 07:44:45, eseidel wrote: > https://codereview.chromium.org/16240007/diff/10001/Source/core/rendering/InlineBox.h > File Source/core/rendering/InlineBox.h (right): > > https://codereview.chromium.org/16240007/diff/10001/Source/core/rendering/InlineBox.h#newcode280 > ...
7 years, 6 months ago (2013-06-04 07:57:37 UTC) #13
commit-bot: I haz the power
Retried try job too often on mac_layout_rel for step(s) webkit_tests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=mac_layout_rel&number=8523
7 years, 6 months ago (2013-06-04 08:33:27 UTC) #14
eseidel
How does it short-circuit out in the no-open-dialog case?
7 years, 6 months ago (2013-06-04 08:50:48 UTC) #15
eseidel
I think the naive approach is fine, so long as the non-dialog case is fast.
7 years, 6 months ago (2013-06-04 08:51:06 UTC) #16
falken
On 2013/06/04 08:51:06, eseidel wrote: > I think the naive approach is fine, so long ...
7 years, 6 months ago (2013-06-05 01:51:51 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/falken@chromium.org/16240007/10001
7 years, 6 months ago (2013-06-05 01:56:10 UTC) #18
commit-bot: I haz the power
7 years, 6 months ago (2013-06-05 02:20:45 UTC) #19
Message was sent while issue was closed.
Change committed as 151797

Powered by Google App Engine
This is Rietveld 408576698