Overflow badge not shown for Document node
Categories
(DevTools :: Inspector, defect, P3)
Tracking
(firefox82 fixed)
Tracking | Status | |
---|---|---|
firefox82 | --- | fixed |
People
(Reporter: bradwerth, Assigned: bradwerth)
References
(Blocks 1 open bug)
Details
Attachments
(7 files, 1 obsolete file)
186 bytes,
text/html
|
Details | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
Steps to Reproduce:
- Ensure the pref "devtools.overflow.debugging.enabled" is true.
- Load the attached overflow-document.html file. Note that the page has a vertical scrollbar.
- Open the devtools Inspector and select the body tag.
Expected Results:
The body tag should have a "scroll" badge.
Assignee | ||
Comment 1•4 years ago
|
||
The fix will likely involve a change to InspectorUtils::GetOverflowingChildrenOfElement
.
Assignee | ||
Comment 2•4 years ago
|
||
(In reply to Brad Werth [:bradwerth] from comment #1)
The fix will likely involve a change to
InspectorUtils::GetOverflowingChildrenOfElement
.
Nope, the problem is that NodeActor.initialize
for a HTMLBodyElement
checks isScrollable
and decides that the body is not scrollable, even if a scrollbar is present. I'm now checking DocumentWalker
to see why it fails in this case.
Assignee | ||
Comment 3•4 years ago
|
||
This will be used to support the display of "scroll" badges in devtools.
Assignee | ||
Comment 4•4 years ago
|
||
This requires using the same Element::GetScrollFrame logic used in the new
Element::HasVisibleScrollbars method. This also makes GetScrollFrame public,
so that InspectorUtils can use it.
Depends on D88504
Assignee | ||
Comment 5•4 years ago
|
||
This removes the need for the document/dom walk.
Depends on D88505
Assignee | ||
Comment 6•4 years ago
|
||
This also reuses a cached result of isScrollable, to avoid a second call.
Depends on D88506
Assignee | ||
Comment 7•4 years ago
|
||
(In reply to Brad Werth [:bradwerth] from comment #2)
(In reply to Brad Werth [:bradwerth] from comment #1)
The fix will likely involve a change to
InspectorUtils::GetOverflowingChildrenOfElement
.Nope, the problem is that
NodeActor.initialize
for aHTMLBodyElement
checksisScrollable
and decides that the body is not scrollable, even if a scrollbar is present. I'm now checkingDocumentWalker
to see why it fails in this case.
Both the isScrollable
logic and the GetOverflowingChildrenOfElement
needed an update to handle the body element case. This has the pleasant effect of eliminating the possibly-slow DocumentWalker call in isScrollable
.
Updated•4 years ago
|
Assignee | ||
Comment 8•4 years ago
|
||
Depends on D88507
Assignee | ||
Comment 9•4 years ago
|
||
Depends on D88682
Assignee | ||
Comment 10•4 years ago
|
||
Assignee | ||
Comment 11•4 years ago
|
||
Depends on D88683
Assignee | ||
Comment 12•4 years ago
|
||
Updated•4 years ago
|
Updated•4 years ago
|
Comment 13•4 years ago
|
||
Comment 14•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/986ef17f0fe4
https://hg.mozilla.org/mozilla-central/rev/87c6bbff43c5
https://hg.mozilla.org/mozilla-central/rev/8b32a0860985
https://hg.mozilla.org/mozilla-central/rev/236068f7e724
https://hg.mozilla.org/mozilla-central/rev/62d68911ba94
https://hg.mozilla.org/mozilla-central/rev/2d040d38476f
Description
•