Closed Bug 971395 Opened 11 years ago Closed 11 years ago

gTranslator add-on messes up the entire nav-bar by assigning bogus value to .currentSet

Categories

(WebExtensions :: General, defect)

x86
macOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: justdave, Unassigned)

References

(Blocks 1 open bug)

Details

(Whiteboard: [Australis:P-])

Attachments

(1 file)

Before upgrade I had: DownloadHelper, NoScript, Rikai-chan, and LastPass buttons in my toolbar, to the right of the URL bar and search box. After upgrading, the bookmark (star) button was gone, as well as the downloads button and all of the above-mentioned buttons. Lightbeam now *did* have a button in the toolbar (I didn't remember it having one before), and the URL bar and Lightbeam were the ONLY things in the new toolbar at all. I had to go into Customize and restore everything. MattN had be take a look at the console log, and this was the only thing relevant in it: "[CustomizableUI]" "Widget 'nav-bar-customization-target' not found, unable to move" CustomizableUI.jsm:151 "[CustomizableUI]" "Widget 'nav-bar-overflow-button' not found, unable to move" CustomizableUI.jsm:151 "[CustomizableUI]" "Widget 'PanelUI-button' not found, unable to move" CustomizableUI.jsm:151 I have backups of my profile from before upgrade in case it's useful.
Application Basics ------------------ Name: Firefox Version: 29.0a2 User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:29.0) Gecko/20100101 Firefox/29.0 Crash Reports for the Last 3 Days --------------------------------- All Crash Reports Extensions ---------- Name: Add-on Compatibility Reporter Version: 2.0.1 Enabled: true ID: compatibility@addons.mozilla.org Name: CacheViewer2 Version: 1.5 Enabled: true ID: cacheview2@scriptkitz.ml Name: ChatZilla Version: 0.9.90.1 Enabled: true ID: {59c81df5-4b7a-477b-912d-4e0fdf64e5f2} Name: Dictionary for Furigana Inserter Version: 1.2 Enabled: true ID: furiganainserter-dictionary@zorkzero.net Name: DNSSEC Validator Version: 1.1.5 Enabled: true ID: dnssec@nic.cz Name: DownloadHelper Version: 4.9.21 Enabled: true ID: {b9db16a4-6edc-47ec-a1f4-b86292ed211d} Name: DownThemAll! Version: 2.0.16 Enabled: true ID: {DDC359D1-844A-42a7-9AA1-88A850A938A8} Name: Firebug Version: 1.12.6 Enabled: true ID: firebug@software.joehewitt.com Name: Form History Control Version: 1.3.3.0 Enabled: true ID: formhistory@yahoo.com Name: Greasemonkey Version: 2014.01.30.nightly Enabled: true ID: {e4a8a97b-f2ed-450b-b12d-ee082ba24781} Name: gTranslator Version: 1.0.4 Enabled: true ID: jyboy.yy@gmail.com Name: Image Search Options Version: 2.0.2 Enabled: true ID: {4a313247-8330-4a81-948e-b79936516f78} Name: LastPass Version: 3.0.12 Enabled: true ID: support@lastpass.com Name: Lightbeam Version: 1.0.8 Enabled: true ID: jid1-F9UJ2thwoAm5gQ@jetpack Name: Live HTTP headers Version: 0.17 Enabled: true ID: {8f8fe09b-0bd3-4470-bc1b-8cad42b8203a} Name: Mass Password Reset Version: 1.05 Enabled: true ID: masspasswordreset@johnathan.nightingale Name: meta-q-override Version: 0.5 Enabled: true ID: jid1-7OsjI9sxTAYQNg@jetpack Name: NicoFox Version: 1.0b5 Enabled: true ID: nicofox@littlebtc Name: NoScript Version: 2.6.8.13 Enabled: true ID: {73a6fe31-595d-460b-a920-fcc0f8843232} Name: Password Exporter Version: 1.2.1 Enabled: true ID: {B17C1C5A-04B1-11DB-9804-B622A1EF5492} Name: Rikaichan Version: 2.07 Enabled: true ID: {0AA9101C-D3C1-4129-A9B7-D778C6A17F82} Name: Rikaichan Japanese Names Dictionary File Version: 2.01.110527 Enabled: true ID: rikaichan-jpnames@polarcloud.com Name: Rikaichan Japanese-English Dictionary File Version: 2.01.110527 Enabled: true ID: rikaichan-jpen@polarcloud.com Name: Send Tab to Device Version: 0.6 Enabled: true ID: jid1-mdjmA7if6lo8lA@jetpack Name: Session Manager Version: 0.8.0.8 Enabled: true ID: {1280606b-2510-4fe0-97ef-9b5a22eafe30} Name: User Agent Switcher Version: 0.7.3 Enabled: true ID: {e968fc70-8f95-4ab9-9e79-304de2a71ee1} Name: Web Developer Version: 1.2.5 Enabled: true ID: {c45c406e-ab73-11d8-be73-000a95be3b12} Name: Adblock Plus Version: 2.4.1 Enabled: false ID: {d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d} Name: Automatic Save Folder Version: 1.0.4 Enabled: false ID: asf@mangaheart.org Name: Furigana Inserter Version: 2.8 Enabled: false ID: furiganainserter@zorkzero.net Name: HTML Ruby Version: 6.22.3 Enabled: false ID: {e10bc159-aa26-41d8-aa24-65de9464ca5a} Name: MoCo Authorizer Version: 0.5 Enabled: false ID: authify@dactyl.googlecode.com Name: Modify Headers Version: 0.7.1.1 Enabled: false ID: {b749fc7c-e949-447f-926c-3f4eed6accfe} Name: Test Pilot Version: 1.2.3 Enabled: false ID: testpilot@labs.mozilla.com Important Modified Preferences ------------------------------ accessibility.typeaheadfind.flashBar: 0 browser.cache.disk.capacity: 358400 browser.cache.disk.smart_size_cached_value: 358400 browser.cache.disk.smart_size.first_run: false browser.cache.disk.smart_size.use_old_max: false browser.fixup.alternate.enabled: false browser.history_expire_days_min: 90 browser.history_expire_days.mirror: 180 browser.places.createdDefaultQueries: true browser.places.createdSmartBookmarks: true browser.places.importBookmarksHTML: false browser.places.importDefaults: false browser.places.leftPaneFolderId: 295 browser.places.migratePostDataAnnotations: false browser.places.smartBookmarksVersion: 6 browser.places.updateRecentTagsUri: false browser.search.useDBForOrder: true browser.sessionstore.upgradeBackup.latestBuildID: 20140207004002 browser.startup.homepage: http://www.reportez.com/ browser.startup.homepage_override.buildID: 20140207004002 browser.startup.homepage_override.mstone: 29.0a2 browser.tabs.warnOnClose: false browser.urlbar.clickSelectsAll: false dom.event.contextmenu.enabled: false dom.max_chrome_script_run_time: 0 dom.max_script_run_time: 0 dom.mozApps.used: true dom.w3c_touch_events.expose: false extensions.checkCompatibility.previous: false extensions.lastAppVersion: 29.0a2 font.internaluseonly.changed: false general.autoScroll: false layers.acceleration.force-enabled: true network.cookie.cookieBehavior: 1 network.cookie.prefsMigrated: true network.image.imageBehavior: 0 network.prefetch-next: false network.protocol-handler.external.itms: true network.protocol-handler.warn-external.itms: false network.protocol-handler.warn-external.itpc: false network.protocol-handler.warn-external.pcast: false network.security.ports.banned.override: 6000,636 places.database.lastMaintenance: 1392107959 places.history.expiration.transient_current_max_pages: 104858 places.history.expiration.transient_optimal_database_size: 167772160 places.last_vacuum: 1279659668 plugin.disable_full_page_plugin_for_types: application/pdf plugin.importedState: true plugin.state.adobepdfviewernpapi: 0 plugin.state.contentuploaderplugin: 0 plugin.state.divxbrowserplugin: 0 plugin.state.google earth web plug-in: 0 plugin.state.iphotophotocast: 0 plugin.state.java: 2 plugin.state.realplayer plugin: 0 plugin.state.shutterfly: 0 plugin.state.unity web player: 0 print.macosx.pagesetup: PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCFET0NUWVBFIHBsaXN0IFBVQkxJQyAiLS8vQXBwbGUgQ29tcHV0ZXIvL0RURCBQTElT print.macosx.pagesetup-2: PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCFET0NUWVBFIHBsaXN0IFBVQkxJQyAiLS8vQXBwbGUvL0RURCBQTElTVCAxLjAvL0VO print.print_bgcolor: false print.print_bgimages: false print.print_colorspace: print.print_command: print.print_downloadfonts: true print.print_duplex: 0 print.print_evenpages: true print.print_extra_margin: 45 print.print_footerleft: print.print_footerright: print.print_headerleft: print.print_headerright: print.print_in_color: true print.print_margin_bottom: 0.25 print.print_margin_left: 0.5 print.print_margin_right: 0.5 print.print_margin_top: 0 print.print_oddpages: true print.print_orientation: 0 print.print_page_delay: 50 print.print_pagedelay: 500 print.print_paper_data: 0 print.print_paper_height: 11.00 print.print_paper_name: print.print_paper_size: 4456492 print.print_paper_size_type: 1 print.print_paper_size_unit: 0 print.print_paper_width: 8.50 print.print_plex_name: print.print_printer: print.print_resolution: 0 print.print_resolution_name: print.print_reversed: false print.print_scaling: 1.00 print.print_shrink_to_fit: true print.print_to_file: false print.print_unwriteable_margin_bottom: 56 print.print_unwriteable_margin_left: 25 print.print_unwriteable_margin_right: 25 print.print_unwriteable_margin_top: 25 privacy.cpd.cookies: false privacy.cpd.downloads: false privacy.cpd.extensions-sessionmanager: false privacy.cpd.formdata: false privacy.cpd.history: false privacy.cpd.sessions: false privacy.donotfoolheader.enabled: true privacy.donottrackheader.enabled: true privacy.popups.firstTime: false privacy.sanitize.migrateFx3Prefs: true security.crl.autoupdate.dayCnt.Terms of use at https://www.thawte.com/cps (c)06: 1 security.crl.autoupdate.dayCnt.VeriSign Trust Network: 1 security.crl.autoupdate.dayCnt.VeriSign Trust Network SGC: 1 security.crl.autoupdate.enable.Terms of use at https://www.thawte.com/cps (c)06: true security.crl.autoupdate.enable.VeriSign Trust Network: true security.crl.autoupdate.enable.VeriSign Trust Network SGC: true security.crl.autoupdate.errCount.Terms of use at https://www.thawte.com/cps (c)06: 0 security.crl.autoupdate.errCount.VeriSign Trust Network: 0 security.crl.autoupdate.errCount.VeriSign Trust Network SGC: 0 security.crl.autoupdate.freqCnt.Terms of use at https://www.thawte.com/cps (c)06: 1 security.crl.autoupdate.freqCnt.VeriSign Trust Network: 1 security.crl.autoupdate.freqCnt.VeriSign Trust Network SGC: 1 security.crl.autoupdate.nextInstant.Terms of use at https://www.thawte.com/cps (c)06: 6/2/07 10:00:41 AM security.crl.autoupdate.nextInstant.VeriSign Trust Network: 6/2/07 10:00:40 AM security.crl.autoupdate.nextInstant.VeriSign Trust Network SGC: 6/2/07 10:00:40 AM security.crl.autoupdate.timingType.Terms of use at https://www.thawte.com/cps (c)06: 1 security.crl.autoupdate.timingType.VeriSign Trust Network: 1 security.crl.autoupdate.timingType.VeriSign Trust Network SGC: 1 security.crl.autoupdate.url.Terms of use at https://www.thawte.com/cps (c)06: security.crl.autoupdate.url.VeriSign Trust Network: security.crl.autoupdate.url.VeriSign Trust Network SGC: security.disable_button.openCertManager: false security.disable_button.openDeviceManager: false security.OCSP.signingCA: Builtin Object Token:Verisign Class 1 Public Primary OCSP Responder security.OCSP.URL: security.ssl.treat_unsafe_negotiation_as_broken: true security.tls.version.max: 2 storage.vacuum.last.index: 2 storage.vacuum.last.places.sqlite: 1390784902 storage.vacuum.last.smilefox.sqlite: 1390871377 Graphics -------- Device ID: 0x fd5 GPU Accelerated Windows: 2/2 OpenGL (OMTC) Vendor ID: 0x10de WebGL Renderer: NVIDIA Corporation -- NVIDIA GeForce GT 650M OpenGL Engine windowLayerManagerRemote: true AzureCanvasBackend: quartz AzureContentBackend: quartz AzureFallbackCanvasBackend: none AzureSkiaAccelerated: 0 JavaScript ---------- Incremental GC: true Accessibility ------------- Activated: false Prevent Accessibility: 0 Library Versions ---------------- NSPR Expected minimum version: 4.10.3 Beta Version in use: 4.10.3 Beta NSS Expected minimum version: 3.15.5 Basic ECC Beta Version in use: 3.15.5 Basic ECC Beta NSSSMIME Expected minimum version: 3.15.5 Basic ECC Beta Version in use: 3.15.5 Basic ECC Beta NSSSSL Expected minimum version: 3.15.5 Basic ECC Beta Version in use: 3.15.5 Basic ECC Beta NSSUTIL Expected minimum version: 3.15.5 Beta Version in use: 3.15.5 Beta
localstore.rdf from about 2 weeks prior to the upgrade (restored from backup)
Looking at that file, I'm noticing more buttons I lost than what I remembered. (A few of those belong to no-longer-installed stuff, but a bunch were actually there)
(In reply to Dave Miller [:justdave] (justdave@bugzilla.org) from comment #0) > "[CustomizableUI]" "Widget 'nav-bar-customization-target' not found, unable > to move" CustomizableUI.jsm:151 > "[CustomizableUI]" "Widget 'nav-bar-overflow-button' not found, unable to > move" CustomizableUI.jsm:151 > "[CustomizableUI]" "Widget 'PanelUI-button' not found, unable to move" > CustomizableUI.jsm:151 This is bizarre. It looks like it's not picking up the customizationTarget and just trying to rearrange things directly in the nav-bar element. I don't understand how the code could ever do that.
(In reply to :Gijs Kruitbosch from comment #4) > (In reply to Dave Miller [:justdave] (justdave@bugzilla.org) from comment #0) > > "[CustomizableUI]" "Widget 'nav-bar-customization-target' not found, unable > > to move" CustomizableUI.jsm:151 > > "[CustomizableUI]" "Widget 'nav-bar-overflow-button' not found, unable to > > move" CustomizableUI.jsm:151 > > "[CustomizableUI]" "Widget 'PanelUI-button' not found, unable to move" > > CustomizableUI.jsm:151 > > This is bizarre. It looks like it's not picking up the customizationTarget > and just trying to rearrange things directly in the nav-bar element. I don't > understand how the code could ever do that. Oh... unless an add-on manually fetched its hypothetical currentSet and assigned it... :-|
Hey justdave, We're pretty confused by this - what the UI ended up as, and the log indicates should really not be possible. What we _do_ agree on, however, is that this is almost certainly an add-on doing some funky stuff. Do you think you'd have time to bisect your add-ons and figure out which one is causing this? It should only take about 5 steps, and it'd really _really_ help us out. -Mike
Flags: needinfo?(justdave)
So, new information I know so far: my toolbar layout gets nuked on every app restart, whether I updated to a new version or not. The layout it changes to consists of a urlbar widget and the button for the Lightbeam extension, and that's it. I'm doing the "disable extensions one by one and restart" thing now to see if I can figure out which extension is doing it.
Flags: needinfo?(justdave)
The culprit has been found. It's the gTranslator extension. https://addons.mozilla.org/en-US/firefox/addon/gtranslator/ Last updated April 6, 2011, that update was "support Firefox 4.0" according to the changelog. The author's listed home page is now a domain reseller's parking page.
(In reply to :Gijs Kruitbosch from comment #5) > (In reply to :Gijs Kruitbosch from comment #4) > > (In reply to Dave Miller [:justdave] (justdave@bugzilla.org) from comment #0) > > > "[CustomizableUI]" "Widget 'nav-bar-customization-target' not found, unable > > > to move" CustomizableUI.jsm:151 > > > "[CustomizableUI]" "Widget 'nav-bar-overflow-button' not found, unable to > > > move" CustomizableUI.jsm:151 > > > "[CustomizableUI]" "Widget 'PanelUI-button' not found, unable to move" > > > CustomizableUI.jsm:151 > > > > This is bizarre. It looks like it's not picking up the customizationTarget > > and just trying to rearrange things directly in the nav-bar element. I don't > > understand how the code could ever do that. > > Oh... unless an add-on manually fetched its hypothetical currentSet and > assigned it... :-| I mean, that would be unfortunate, right? From the culprit's overlay.js code (executed onLoad): if(objNavBar) { for (var i = 0; i < objNavBar.childNodes.length; i++) { if(objNavBar.childNodes[i].id == "urlbar-container") { if(!bolWongPostButtonExists) { strSet += "gTranslator-toolbarbutton," } } strSet += objNavBar.childNodes[i].id + ","; } strSet = strSet.substring(0, strSet.length-1); objNavBar.currentSet = strSet; objNavBar.setAttribute("currentset", strSet); objNavBar.ownerDocument.persist(objNavBar.id, "currentset"); BrowserToolboxCustomizeDone(true); } yes, that'd tend to do what it does. That's a bit sad. I'm moving this to tech evangelism, although I'm sadly suspicious this might not go very far. In any case, at least we'll be able to disable the add-on for 29 if need be. Mike, do you think there's anything we can do here? (we can file a new bug if so) We could hardcode something into the currentset assignment thing that'll only let you change 3 things at a time or something and just throw an exception at the add-on otherwise, but that seems extraordinarily hacky.
Component: Toolbars and Customization → Add-ons
Flags: needinfo?(mconley)
Product: Firefox → Tech Evangelism
Whiteboard: [Australis:P2] → [Australis:P-]
Version: 25 Branch → unspecified
Summary: All buttons except Lightbeam gone from toolbar after upgrading to Australis on Aurora → gTranslator add-on messes up the entire nav-bar by assigning bogus value to .currentSet
(In reply to Dave Miller [:justdave] (justdave@bugzilla.org) from comment #8) > The culprit has been found. > > It's the gTranslator extension. > https://addons.mozilla.org/en-US/firefox/addon/gtranslator/ > > Last updated April 6, 2011, that update was "support Firefox 4.0" according > to the changelog. The author's listed home page is now a domain reseller's > parking page. Also (and sorry for forgetting this in my original comment, and for all the spam I'm now causing...) thanks very much for looking at this. It's good that we're staying vigilant about what things cause (add-on-related) breakage with all the new stuff we've done. When things break, it's super helpful when the fx team doesn't have to do all the bisection/digging itself. Thanks! :-)
I just marked the add-on as incompatible with 29 and above and also downgraded it to preliminary review to reduce its visibility on the site.
Gijs, So I've read through our currentSet code in toolbar.xml, and from what I can tell, it *should* allow us to support uses of currentSet like this, for better or for worse. What am I not seeing? How is the code this add-on is using clearing out the nav-bar?
Flags: needinfo?(mconley) → needinfo?(gijskruitbosch+bugs)
(In reply to Mike Conley (:mconley) from comment #12) > Gijs, > > So I've read through our currentSet code in toolbar.xml, and from what I can > tell, it *should* allow us to support uses of currentSet like this, for > better or for worse. > > What am I not seeing? How is the code this add-on is using clearing out the > nav-bar? Resolved this on IRC.
Flags: needinfo?(gijskruitbosch+bugs)
The issue that I wasn't seeing was that the add-on's code is iterating over the toolbar's childNodes, and I forgot that those nodes are the customization target, the overflow chevron, the menu panel button, etc. I've alerted the AMO-editors about this, so hopefully we can keep an eye out for this pattern. Perhaps we can automate it. Unless there's any objection, I'm going to close the book on this one.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → INVALID
Component: Add-ons → General
Product: Tech Evangelism → WebExtensions
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: