Open Bug 541959 Opened 14 years ago Updated 2 years ago

Extension's preferences window behaves incorrectly after "browser.preferences.instantApply" change

Categories

(Toolkit :: Preferences, defect)

defect

Tracking

()

People

(Reporter: zbynek.michl, Unassigned)

References

Details

User-Agent:       Mozilla/5.0 (X11; U; Linux x86_64; cs-CZ; rv:1.9.1.6) Gecko/20091216 Iceweasel/3.5.6 (like Firefox/3.5.6; Debian-3.5.6-1)
Build Identifier: Mozilla/5.0 (X11; U; Linux x86_64; cs-CZ; rv:1.9.1.6) Gecko/20091216 Iceweasel/3.5.6 (like Firefox/3.5.6; Debian-3.5.6-1)

My extension has a simple preferences window with checkbox as follows:

<prefwindow ...>
  <prefpane ...>
    <preferences>
      <preference id="flag" name="extensions.name.flag" type="bool"/>
    </preferences>
    <checkbox preference="flag" label="flag"/>
  </prefpane>
</prefwindow>

1. When "browser.preferences.instantApply" is set to true, then I open pref window and click checkbox, "extensions.name.flag" changes its value immediately. -> It is correct.
When I change "browser.preferences.instantApply" to false and then click checkbox again (pref window is still opened and has not been reopened), "extensions.name.flag" changes its value immediately again. -> It is correct again (ok, I changed instantApply, but window should has the same behaviour until is reopened).

But opposite case:

2. When "browser.preferences.instantApply" is set to false, then I open pref window and click checkbox, "extensions.name.flag" does not change its value immediately. -> It is correct.
When I change "browser.preferences.instantApply" to true and then click checkbox again (pref windows is still opened and has not been reopened), "extensions.name.flag" changes its value immediately. -> It should not do it until ondialogaccept is called (window should has the same behaviour until is reopened).


Reproducible: Always

Steps to Reproduce:
1. Set "browser.preferences.instantApply" to false in "about:config".
2. Open extension's pref window, "instantApply" is false, thus window contains OK and Cancel buttons.
3. Change "instantApply" to true in "about:config" (while pref window is still opened).

Actual Results:  
Preferences in that window immediately change its behaviour according
to "instantApply" change.


Expected Results:  
Preferences in that window should not immediately change its behaviour according
to "instantApply" change, because window still has OK and Cancel buttons, so the same behaviour should be preserved until pref window is reopened.


It is Firefox 3.5 and higher issue, version 3.0 handles above situation correctly.
pretty sure this was broken by 451025, we really need to make that property get set on startup, but that's not how the code appears to handle it.
Blocks: 451025
Status: UNCONFIRMED → NEW
Component: Extension Compatibility → Preferences
Ever confirmed: true
Product: Firefox → Toolkit
QA Contact: extension.compatibility → preferences
Version: 3.5 Branch → unspecified
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.