Closed Bug 400872 Opened 14 years ago Closed 14 years ago
dragging Location Bar to palette breaks toolbox after restart
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a9pre) Gecko/2007102205 Minefield/3.0a9pre Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a9pre) Gecko/2007102205 Minefield/3.0a9pre If you customize toolbars by dragging the Location Bar off the toolbar and onto the palette, then the menubar goes into a disabled state the next time you open the Customize Toolbars window after a restar Reproducible: Always Steps to Reproduce: 1. Start Minefield with default theme. 2. Right-click toolbar, pick customize. 3. Drag Location Bar onto open Customize Toolbars window. 4. Close Customize window. 5. Exit Minefield, wait for it to finish. 6. Launch Minefield. 7. Verify that Location Bar is not shown on toolbar. 8. Right-click toolbar, opening the Customize window. 9. Close the Customize window (without doing anything else - just close it). 10. Note the menubar in disabled state.
Verified with fresh profile.
Version: unspecified → Trunk
Also the bookmarks toolbar items disappear after restarting. Due to Larry. Regression range for this is http://bonsai.mozilla.org/cvsquery.cgi?module=PhoenixTinderbox&date=explicit&mindate=1193023080&maxdate=1193024039
onSecurityChange is called on startup by nsBrowserStatusHandler.init, and onSecurityChange calls checkIdentity, which doesn't deal with a missing location bar. I'm not sure whether or not that covers steps 8,9,10 of the original STR, but certainly is something we should fix either way.
OS: Windows XP → All
Hardware: PC → All
Assignee: nobody → johnath
Flags: blocking-firefox3? → blocking-firefox3+
Target Milestone: --- → Firefox 3 M10
This patch extracts out the element caching code from the IdentityHandler constructor into a function that is now also called from BrowserToolboxCustomizeDone. It also tweaks init() in nsBrowserStatusHandler to deal with the caching in onSecurityChange, and tweaks identityhandler's setMode to return quickly/cleanly if the identity UI isn't present. In tracking this bug down, I also found and filed a crasher on Mac, bug 403662.
Attachment #288683 - Flags: review?(gavin.sharp)
Comment on attachment 288683 [details] [diff] [review] re-cache, re-init post-customize >Index: browser/base/content/browser.js > // Initialize the security button's state and tooltip text > var securityUI = getBrowser().securityUI; >+ this._hostChanged = true; > this.onSecurityChange(null, null, securityUI.state); Could add a comment here explaining why _hostChanged needs to be reset.
Attachment #288683 - Flags: review?(gavin.sharp) → review+
Added comment. I'll land it once the tree re-opens.
Attachment #288683 - Attachment is obsolete: true
Checking in browser/base/content/browser.js; /cvsroot/mozilla/browser/base/content/browser.js,v <-- browser.js new revision: 1.892; previous revision: 1.891
Status: ASSIGNED → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Verified FIXED using Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9b2pre) Gecko/2007120705 Minefield/3.0b2pre and Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9b2pre) Gecko/2007120704 Minefield/3.0b2pre
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.