WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED WONTFIX
113042
Web Inspector: expose nodes with pointer-events: none to node search tool.
https://bugs.webkit.org/show_bug.cgi?id=113042
Summary
Web Inspector: expose nodes with pointer-events: none to node search tool.
Dmitry Gozman
Reported
2013-03-22 04:40:40 PDT
Currently, hovering over element with pointer-events:none does not highlight it while in node search inspector mode.
Attachments
Patch
(25.44 KB, patch)
2013-03-22 05:37 PDT
,
Dmitry Gozman
no flags
Details
Formatted Diff
Diff
Patch
(21.11 KB, patch)
2013-03-26 08:25 PDT
,
Dmitry Gozman
no flags
Details
Formatted Diff
Diff
Patch
(21.09 KB, patch)
2013-03-27 01:47 PDT
,
Dmitry Gozman
no flags
Details
Formatted Diff
Diff
Patch
(24.25 KB, patch)
2013-04-02 04:04 PDT
,
Dmitry Gozman
pfeldman
: review-
Details
Formatted Diff
Diff
Show Obsolete
(3)
View All
Add attachment
proposed patch, testcase, etc.
Dmitry Gozman
Comment 1
2013-03-22 05:37:28 PDT
Created
attachment 194521
[details]
Patch
Pavel Feldman
Comment 2
2013-03-22 08:29:54 PDT
Comment on
attachment 194521
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=194521&action=review
Before it gets reviewed, does it work in accelerated compositing mode? That mode might do its own hit testing.
> Source/WebCore/inspector/InspectorDOMAgent.cpp:1050 > + return m_searchingForNode;
What does it mean?
> Source/WebCore/page/EventHandler.cpp:1662 > + if (m_frame->document()->renderer() && InspectorInstrumentation::willHandleMouseMove(m_frame->page())) {
Can you move mouseDidMoveOverElement call here and do the rest in it? Pass whatever you need into it.
> Source/WebCore/rendering/RenderObject.h:977 > + bool visibleToRegularHitTesting() const { return style()->visibility() == VISIBLE && style()->pointerEvents() != PE_NONE; }
I would leave this name and introduce visibleToHitTestingIgnoringPointerEvents
PhistucK
Comment 3
2013-03-24 11:16:00 PDT
I would highlight pointer-events: none elements with a slightly different color (maybe just a lighter/less opaque version of the current color), because up until now, the current behavior was equally annoying (I could not select these elements) and useful (I immediately knew they have pointer-events: none). What do you think?
Pavel Feldman
Comment 4
2013-03-24 12:15:43 PDT
That's a very good point. But I'd rather paint a border around the node that captures pointer events in case it is different.
Dmitry Gozman
Comment 5
2013-03-26 08:18:51 PDT
Comment on
attachment 194521
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=194521&action=review
>> Before it gets reviewed, does it work in accelerated compositing mode? That mode might do its own hit testing.
Compositing mode does its own hit testing to choose the layer which receives the event. Then WebCore hit testing kicks in. No need to change anything in compositing.
>> Source/WebCore/inspector/InspectorDOMAgent.cpp:1050 >> + return m_searchingForNode; > > What does it mean?
Removed.
>> Source/WebCore/page/EventHandler.cpp:1662 >> + if (m_frame->document()->renderer() && InspectorInstrumentation::willHandleMouseMove(m_frame->page())) { > > Can you move mouseDidMoveOverElement call here and do the rest in it? Pass whatever you need into it.
Done.
>> Source/WebCore/rendering/RenderObject.h:977 >> + bool visibleToRegularHitTesting() const { return style()->visibility() == VISIBLE && style()->pointerEvents() != PE_NONE; } > > I would leave this name and introduce visibleToHitTestingIgnoringPointerEvents
I left this name as is, and added visibleToHitTestRequest instead.
Dmitry Gozman
Comment 6
2013-03-26 08:25:28 PDT
Created
attachment 195092
[details]
Patch
Pavel Feldman
Comment 7
2013-03-26 09:31:24 PDT
Comment on
attachment 195092
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=195092&action=review
Overall looks good, couple of nits inside. Please add someone familiar with hit testing code in render object to review for blessing.
> Source/WebCore/page/EventHandler.cpp:1662 > + if (m_frame->contentRenderer()) {
These two lines should be a part of inspector instrumentation.
> Source/WebCore/rendering/HitTestRequest.h:42 > + IgnorePointerEvents = 1 << 12
IgnorePointerEventsNone
Dmitry Gozman
Comment 8
2013-03-27 01:47:12 PDT
Created
attachment 195246
[details]
Patch
Dmitry Gozman
Comment 9
2013-03-27 01:49:07 PDT
Comment on
attachment 195092
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=195092&action=review
>> Source/WebCore/page/EventHandler.cpp:1662 >> + if (m_frame->contentRenderer()) { > > These two lines should be a part of inspector instrumentation.
Moved.
>> Source/WebCore/rendering/HitTestRequest.h:42 >> + IgnorePointerEvents = 1 << 12 > > IgnorePointerEventsNone
Done.
Dmitry Gozman
Comment 10
2013-03-27 02:05:36 PDT
Allan, could you please take a look at hit testing change?
Dmitry Gozman
Comment 11
2013-04-02 04:04:20 PDT
Created
attachment 196118
[details]
Patch
Pavel Feldman
Comment 12
2013-04-02 07:19:24 PDT
Comment on
attachment 196118
[details]
Patch This change looks good to me, but we still need to show the element that gets mouse events. Otherwise, it will regress the "searching for the glass pane" scenario.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug