Create the new UI for the minimal popup/doorhanger
Categories
(DevTools :: Performance Tools (Profiler/Timeline), enhancement, P2)
Tracking
(firefox75 fixed)
Tracking | Status | |
---|---|---|
firefox75 | --- | fixed |
People
(Reporter: gregtatum, Assigned: gregtatum)
References
(Blocks 1 open bug)
Details
Attachments
(4 files, 1 obsolete file)
The new UX is much more simplified. In this bug, we can have a preffed off "hard break" in the codebase, and create a new popup/doorhanger that will interact nicely with the about:profiling page. It will not include the presets, nor the overhead information. However, it will support the profiler buttons, a link to the new about:profiler page.
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 1•5 years ago
|
||
Assignee | ||
Comment 2•5 years ago
|
||
The presets in recording-utils.js couldn't be shared via the ChromeUtils.import
mechanism. When they were in recording-utils.js they could only be loaded in
via the DevTools require() loader. This commit changes it so that they are
stored in a jsm, and are also injected to each UI interface where the
ChromeUtils.import function is available (only in the initializers).
Depends on D62911
Assignee | ||
Comment 3•5 years ago
|
||
This commit removes the old popup implementation, but does not implement the new one
yet. This is in a follow-up commit. The client is in a bit of an awkard state where
it is mid-transition to a new architecture. Some of the code comments and documentation
were updated to reflect the changes coming up.
Depends on D62912
Assignee | ||
Comment 4•5 years ago
|
||
This commit implements the actual UI changes. A follow-up commit adds the
tests for the changes. The CSS is a little bit awkard since it uses lots of
ID selectors rather than class selectors. I wanted to be able to write quick
selects, since it's selecting across the entire browser document. I feel
a little conflicted with the approach, as I would prefer to use classes in
general.
The panel.jsm.js file collects all of the UI handling changes rather than
having everything in menu-button.jsm.js, as the latter can get loaded
at startup. I'm not sure if it's completely worth the trouble of having
two files, as most of it should be pretty light.
This commit does not handle localization for the panel, as we should be moving
to Fluent. Rather than solve that here, I will follow-up with it in Bug 1599774.
Depends on D62913
Assignee | ||
Comment 5•5 years ago
|
||
This commit adds tests for the profiler popup, and migrates some of the
older ones to use about:profiling instead.
Depends on D62914
Updated•5 years ago
|
Comment 7•5 years ago
|
||
Backed out 6 changesets (bug 1144438, bug 1617208, bug 1597378) for causing mochitest failures on test_perf-settings-entries.html.
Backout revision Backed out 6 changesets (bug 1144438, bug 1617208, bug 1597378) for causing mochitest failures on test_perf-settings-entries.html.
Failure log https://treeherder.mozilla.org/logviewer.html#?job_id=290411296&repo=autoland
Greg can you please take a look?
Assignee | ||
Updated•5 years ago
|
Comment 9•5 years ago
|
||
Backed out 6 changesets (bug 1144438, bug 1617208, bug 1597378) for causing devtools failures on browser_all_files_referenced.js
Backout revision https://hg.mozilla.org/integration/autoland/rev/1c55bc6e995ada5e4b6a61f0ab0ce325a5988692
Failure log https://treeherder.mozilla.org/logviewer.html#?job_id=290471398&repo=autoland
Greg can you please take a look?
Assignee | ||
Updated•5 years ago
|
Comment 10•5 years ago
|
||
Comment 11•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/41f2f089537d
https://hg.mozilla.org/mozilla-central/rev/bee9d5fc55aa
https://hg.mozilla.org/mozilla-central/rev/2f59a08c4bef
https://hg.mozilla.org/mozilla-central/rev/c6e4d7a385cc
Comment 12•5 years ago
|
||
Is there a bug tracking making all this UI localizable? I was a bit surprised to find hardcoded English in the tree for this.
Assignee | ||
Comment 13•5 years ago
|
||
Yes, it's: https://bugzilla.mozilla.org/show_bug.cgi?id=1599774 which has a WIP patch attached to it.
For background, I started doing the localization in the initial patches, but the CustomizableUI didn't have Fluent in place as far as I could tell, and someone commented that I shouldn't be touching old localization files. I filed it as a follow-up, and still plan on doing the work. I spent a lot of time on this UI so far, so I'm catching up on some other projects before coming back to it. We still haven't opened up this UI path to a broader audience yet, and will have localization in place before we do. My approach was to achieve parity first with existing UI this was replacing, which also was not localized. It's definitely on my to-do list though.
Description
•