Closed Bug 1603361 Opened 5 years ago Closed 5 years ago

Ensure that turning OBT preference on by default would enable it for users who already opened the Browser Toolbox once

Categories

(DevTools :: Framework, enhancement, P1)

enhancement

Tracking

(firefox73 fixed)

RESOLVED FIXED
Firefox 73
Tracking Status
firefox73 --- fixed

People

(Reporter: ochameau, Assigned: jdescottes)

References

(Blocks 2 open bugs)

Details

(Whiteboard: dt-fission-m1)

Attachments

(1 file)

If we turn the preference ON by default:
https://searchfox.org/mozilla-central/rev/62a130ba0ac80f75175e4b65536290b52391f116/browser/app/profile/firefox.js#1926

Users who already opened the browser toolbox once won't be impacted by this change.
That's because we copy Firefox preference only once, the first time the browser toolbox is opened.

We were discussing about this on slack last week with :asurkov, who logged the following bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1602053 It is about preferences management between regular and BT profile, but the initial confusion was coming from the devtools.browsertoolbox.fission pref.

For the pressing concern here I think we should indeed copy the preference to the BT profile every time we open the Browser Toolbox.

  • it will work nicely for people used to fiddle in about:config
  • it will apply simultaneously for the Browser Toolbox and the Browser Console

I think this fine now because most of the code checking this preference also checks we are debugging the main process (and if not we should fix it).

We should also change the code for the Settings checkbox so that it is displayed in regular toolboxes as well.
But (!) I think it should be disabled when opening the Settings panel of the Browser Toolbox, with a title such as "This setting can only be set from a regular toolbox" or something. The reason is that I don't think we want to update the regular profile when the BT profile is updated. If the regular profile is supposed to be the reference for this preference, let's just make it very unlikely for users to touch this preference from the BT profile.

(In reply to Julian Descottes [:jdescottes] from comment #1)

We should also change the code for the Settings checkbox so that it is displayed in regular toolboxes as well.
But (!) I think it should be disabled when opening the Settings panel of the Browser Toolbox, with a title such as "This setting can only be set from a regular toolbox" or something. The reason is that I don't think we want to update the regular profile when the BT profile is updated. If the regular profile is supposed to be the reference for this preference, let's just make it very unlikely for users to touch this preference from the BT profile.

Nice catch! This makes me think that copying all preferences from Firefox everytime we open the BT would be complex because of that.
All client side preferences would be facing the same issue and I'm wondering if toolbox window size is being saved via preference?

Otherwise, I was wondering if we could use reconfigure in order to update the pref in the original firefox profile, via RDP? Like the Disable Javascript setting I imagine.

Assignee: nobody → jdescottes
Status: NEW → ASSIGNED

Otherwise, I was wondering if we could use reconfigure in order to update the pref in the original firefox profile, via RDP? Like the Disable Javascript setting I imagine.

That's the other option, not sure which one is better.

What needs to happen when we click on this checkbox:

  • from a regular "local tab" toolbox, we want to set the pref on the current profile (but using Services.prefs or reconfigure would both target the same profile)
  • from a remote debugging toolbox, we also want to target the current profile (because this is a client preference). Here only Services.prefs would work.
  • from a Browser Toolbox, we want to target both profiles (because the pref will be synchronized from this profile next time the toolbox opens). Actually updating the BT profile might not be a must here, but I guess it's easier if the state of the checkbox reflects the value of the pref on the current profile.

Disabling the checkbox in the "Browser Toolbox" will also disable it for the "Main process" toolboxes of about:debugging. So maybe disabling is not a good option? I'll try to cope with all those use cases, I just hope it won't be too convoluted.

Priority: -- → P1
Whiteboard: dt-fission-m1
Blocks: 1604491
Pushed by jdescottes@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/254626310b0b Synchronize the browsertoolbox.fission preference when the Browser Toolbox starts r=ochameau
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 73
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: