Breakpoints panel expands when clicking on a frame in the call stack panel
Categories
(DevTools :: Debugger, defect, P3)
Tracking
(firefox105 fixed)
Tracking | Status | |
---|---|---|
firefox105 | --- | fixed |
People
(Reporter: nchevobbe, Assigned: luke.swiderski)
References
(Blocks 2 open bugs)
Details
(Keywords: good-first-bug)
Attachments
(3 files, 2 obsolete files)
Steps to reproduce
- Open the attached file
- Open DevTools
- Select the debugger
- Open
dbg_breakpoint_panel.html
and add a breakpoint in thec
function (line 30) - Click on "Click me" button below
- Once the debugger pauses, collapse the breakpoint panel
- In the callstack panel, click on the
a
frame
Expected results
The breakpoints panel stays collapsed
Actual results
The breakpoints panel expands
Comment 1•4 years ago
|
||
Thank you for the report Nicolas, I can easily reproduce it on my machine (Win10, Fx Nightly).
Honza
Comment 2•4 years ago
|
||
Note that other side panels stay collapsed.
Here is the place where we expand/collapse the panel
https://searchfox.org/mozilla-central/rev/002023eb262be9db3479142355e1675645d52d52/devtools/client/debugger/src/components/SecondaryPanes/index.js#334-337
The opened
prop should be set to false if the panel should be collapsed. Perhaps something is wrong with the logic or the condition?
This could be a good first bug...
Honza
Comment 4•4 years ago
|
||
(In reply to Jan Honza Odvarko [:Honza] (always need-info? me) from comment #2)
Note that other side panels stay collapsed.
Here is the place where we expand/collapse the panel
https://searchfox.org/mozilla-central/rev/002023eb262be9db3479142355e1675645d52d52/devtools/client/debugger/src/components/SecondaryPanes/index.js#334-337The
opened
prop should be set to false if the panel should be collapsed. Perhaps something is wrong with the logic or the condition?This could be a good first bug...
Honza
Here,
opened:
prefs.breakpointsVisible ||
pauseReason === "breakpoint" ||
pauseReason === "resumeLimit",
While i logged pauseReason
to console, it outputs breakpoint
.Hence opened
prop is always true
because of OR condition.
opened:
prefs.breakpointsVisible &&
pauseReason === "breakpoint" ||
pauseReason === "resumeLimit",
This condition works fine and breakpoint panel remains collapsed.
Reporter | ||
Comment 5•4 years ago
|
||
(In reply to RAHUL SAWRA[:rsawra] from comment #3)
Hi,
I would look to work on this issue!
Thanks! I assigned you the bug
Comment 7•4 years ago
|
||
This bug fixes the breakpoint panel that expands.
Depends on D107222
Comment 8•4 years ago
|
||
Updated•4 years ago
|
Comment 9•3 years ago
|
||
This good-first-bug hasn't had any activity for 2 months, it is automatically unassigned.
For more information, please visit auto_nag documentation.
Comment 10•3 years ago
|
||
(In reply to Jan Honza Odvarko [:Honza] (always need-info? me) from comment #6)
Hello! Can I work on this bug?
Comment 11•3 years ago
|
||
Very glad to find others are interested in this (well, one or two, anyway), and very much looking forward to the problem going away. Had I a clue as to how to go about helping to fix it, I would. Also glad to see recognition that the list is supposed to stay un-expanded exactly as the other lists. I was beginning to think there was something extra-special about Breakpoints.
I would like to add that it was difficult to find NIcholas' original complaint (or any similar). 99.99% of hits alluded to variations on the problem of phantom breakpoints, even searches for quoted string "breakpoints list". And there are a lot of that sort of hit.
Comment 12•3 years ago
•
|
||
(In reply to Angelina from comment #10)
(In reply to Jan Honza Odvarko [:Honza] (always need-info? me) from comment #6)
Hello! Can I work on this bug?
Assigned to you, thank you for the help.
Comment 13•3 years ago
|
||
This good-first-bug hasn't had any activity for 2 months, it is automatically unassigned.
For more information, please visit auto_nag documentation.
Comment 14•3 years ago
|
||
irwp has expressed an interest in hacking on this, so assigning!
Updated•3 years ago
|
Comment 15•3 years ago
|
||
Hi Honza! The fix suggested by :rsawra seemed to fix the unexpected behavior (changing the condition from || to && above). Another bit of unexpected behavior that was fixed by this change is that when the Log checkbox on the Event Listener Breakpoints panel is checked, the Breakpoints panel would opens. I am an outreachy applicant and hope that I have submitted the patch correctly (still getting used to mercurial; moz-phab returned some confusing output).
Finally, I think there might be followup bug lurking in this code, since even after the fix there are times when the variable prefs.breakpointsVisible
can sometimes be false
when the panel is opened and true
when the panel is closed. The about:config setting for devtools.debugger.breakpoints-visible
tracks this variable so the mismatch can be seen with that. I don't fully understand what causes this mismatch but would be happy to do some further testing on it.
Comment 16•3 years ago
|
||
Comment 17•3 years ago
|
||
Thank you for the patch irwp!
The bug is fixed, but now state of the "Breakpoints" side panel isn't properly persisted. It's always collapsed when opening the Debugger panel
STRs:
- Load any page e.g. google.com
- Open DevTool and select the Debugger panel, the Breakpoints side panel is collapsed
- Expand the Breakpoints side panel
- Close and Open the DevTools Toolbox
- Check out the Breakpoints side panel, it's closed => BUG
I don't fully understand what causes this mismatch but would be happy to do some further testing on it.
Perfect, this would be great, thank you!
Honza
Comment 18•2 years ago
|
||
This good-first-bug hasn't had any activity for 2 months, it is automatically unassigned.
For more information, please visit auto_nag documentation.
Assignee | ||
Comment 19•2 years ago
|
||
Previously when closing the breakpoints panel in secondary panes,
if an unselected call stack frame was selected, the breakpoints
panel would unexpectedly open. This patch makes sure it remains
closed when a user has closed it and then clicks other elements
in the secondary panes. The same issue was happening when
clicking the event listener breakpoint log checkbox, and or step
in, step out, and step over. This patch should also fix
Bug 1755337.
Updated•2 years ago
|
Updated•2 years ago
|
Comment hidden (off-topic) |
Comment 21•2 years ago
|
||
Sorry, there was a problem with the detection of inactive users. I'm reverting the change.
Comment 22•2 years ago
|
||
Comment 23•2 years ago
|
||
bugherder |
Description
•