Closed
Bug 1014254
Opened 12 years ago
Closed 12 years ago
Back button becomes disabled (and back/forward functionality breaks), after activating a share provider & customizing Share button away
Categories
(Firefox :: Toolbars and Customization, defect)
Firefox
Toolbars and Customization
Tracking
()
VERIFIED
FIXED
Firefox 33
| Tracking | Status | |
|---|---|---|
| firefox30 | --- | unaffected |
| firefox31 | --- | unaffected |
| firefox32 | + | verified |
| firefox33 | --- | verified |
People
(Reporter: dholbert, Assigned: mixedpuppy)
References
Details
(Whiteboard: STR in comment 11)
Attachments
(3 files, 1 obsolete file)
|
2.72 KB,
application/javascript
|
Details | |
|
84.56 KB,
image/png
|
Details | |
|
2.07 KB,
patch
|
Gijs
:
review+
Gijs
:
feedback+
lmandel
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
I don't know exactly what got me into this state, but this afternoon I noticed that my "forward" button was never showing up. Still happened with safe mode.
When I hacked away at my prefs.js file, I ended up in a state where back/forward functionality became completely broken.
I'm attaching the reduced prefs.js file, which just contains 3 entries:
browser.uiCustomization.state
social.activeProviders
social.manifest.getpocket-com
which I've left at their values from my normal browsing profile. (Unlike in bug 1014238, I haven't intentionally messed with any of these prefs.)
STR:
1. Run firefox (nightly) with a fresh profile, using the attached prefs.js file.
2. Visit mozilla.org, and click through some links, to establish some history.
3. Try to go back.
4. Try to enter Customize mode. (e.g. by right-clicking toolbar and picking "Customize")
ACTUAL RESULTS:
- Back button is non-functional (grayed out). If you right-click the page, the "Back"/"Forward" context-menu entries are also disabled.
- Customize mode renders as a blank page.
NOTE: The symptoms here are slightly different from those in bug 1014238. In particular, the hamburger menu works here, and the "customize" toolbar-contextmenu-option does have an effect here, though it just ends up opening a blank page.
| Reporter | ||
Comment 1•12 years ago
|
||
(It's possible that this is the same underlying issue as bug 1014238, but I've filed it separately for now, since the symptoms are slightly different, and since I actually ran into this with my real browsing profile whereas I'm kind of cheating in triggering bug 1014238.)
| Reporter | ||
Comment 2•12 years ago
|
||
Here's a screenshot of the error console, after I start Firefox with this prefs.js file.
Comment 3•12 years ago
|
||
Per screenshot, this looks like it's related to the recent share button stuff. That's not good, because AIUI we were considering uplifting that...
Shane, got ideas here?
Blocks: 1003523
Flags: needinfo?(mixedpuppy)
| Reporter | ||
Comment 4•12 years ago
|
||
Most-relevant-looking parts of the error console, from that screenshot:
{
TypeError: shareButton is null
SocialShare.update@chrome://browser/content/browser.js:5600:34
SocialUI._providersChanged@chrome://browser/content/browser.js:5222:5
SocialUI_observe@chrome://browser/content/browser.js:5185:11
this.Social._updateProviderCache@resource://app/modules/Social.jsm:146:5
Social_init/<@resource://app/modules/Social.jsm:97:9
SocialServiceInternal.orderedProviders/<@resource://gre/modules/SocialService.jsm:82:9
browser.js:5211
shareButton is null
browser.js:5600
}
| Reporter | ||
Comment 5•12 years ago
|
||
First error is linking to this "real" line of source:
http://mxr.mozilla.org/mozilla-central/source/browser/base/content/browser-social.js?rev=324ce72cc5e3#167
Second error is linking to this "real" line of source:
http://mxr.mozilla.org/mozilla-central/source/browser/base/content/browser-social.js?rev=324ce72cc5e3#556
| Reporter | ||
Comment 6•12 years ago
|
||
For completeness, I'm testing with today's nightly:
Mozilla/5.0 (X11; Linux x86_64; rv:32.0) Gecko/20100101 Firefox/32.0
32.0a1 (2014-05-21)
Built from https://hg.mozilla.org/mozilla-central/rev/9d8d16695f6a
| Reporter | ||
Comment 7•12 years ago
|
||
In my normal browsing profile, I get the second error (for browser.js:5600, real url at the end of comment 5) every time I click a link or type in a URL to navigate to a new page.
| Reporter | ||
Comment 8•12 years ago
|
||
Also, if I disable the Pocket social plugin [which fixes the bug] and then re-enable it [which brings the bug back], this appears in my error console:
{
docShell.QueryInterface(...).sessionHistory is null
content-sessionStore.js:228
}
...which points to this line of source:
http://mxr.mozilla.org/mozilla-central/source/browser/components/sessionstore/content/content-sessionStore.js?rev=a7e3d4484692#228
(I'm only mentioning that since "sessionHistory" seems back/forward-navigation-related, and hence maybe part of this bug.)
| Reporter | ||
Comment 9•12 years ago
|
||
| Reporter | ||
Comment 10•12 years ago
|
||
I can repro in a 32-bit Nightly on Windows, too, FWIW. Exact same ACTUAL RESULTS as in comment 0.
Mozilla/5.0 (Windows NT 6.3; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0
32.0a1 (2014-05-21)
I believe mixedpuppy just repro'd on Mac, too. --> Setting Platform to All/All
OS: Linux → All
Hardware: x86_64 → All
| Assignee | ||
Comment 11•12 years ago
|
||
ok, full STR is:
- start fx with clean profile
- activate a share provider (e.g. facebook) from activations.cdn.mozilla.net
- customize the share button into the palette
- restart firefox
expecting:
- back/forward buttons work
- share button is visible in the customization palette
current results:
- back/foward buttons are broken
- cannot enter customization
Once fixing the above, the share button does appear in the palette, but without an icon. This is because the default state of the button is hidden. Verifying this fix should verify that the icon is visible if the share button is in the palette at startup.
The fix I'll do for this right now will intentionally only get past the broken issues explained above. More changes in the handling of the button will land with bug 1014332
Flags: needinfo?(mixedpuppy)
| Assignee | ||
Updated•12 years ago
|
Assignee: nobody → mixedpuppy
| Reporter | ||
Updated•12 years ago
|
Summary: Back button becomes disabled (and back/forward functionality breaks), with my particular prefs.js file, with customized UI & Pocket & Social API → Back button becomes disabled (and back/forward functionality breaks), after activating a share provider & customizing Share button away
| Assignee | ||
Comment 12•12 years ago
|
||
I haven't had time to look into new tests on this, but this patch fixes the problems, and current tests pass locally. I'm actually not entirely certain how to write the test since this is a startup w/share in palette issue, though I just didn't get the time to think it through either.
Attachment #8426820 -
Flags: feedback?(gijskruitbosch+bugs)
| Assignee | ||
Comment 13•12 years ago
|
||
How about I actually attach a good patch file.
Attachment #8426820 -
Attachment is obsolete: true
Attachment #8426820 -
Flags: feedback?(gijskruitbosch+bugs)
Attachment #8426821 -
Flags: feedback?(gijskruitbosch+bugs)
Comment 14•12 years ago
|
||
Comment on attachment 8426821 [details] [diff] [review]
fix button state when share is in customization palette
Hrm. Why aren't we just updating the button when it's in the palette? That would also take care of the hidden state... we'd just need to adjust the shareButton getter to use CUI instead of doc.getElementById...
Attachment #8426821 -
Flags: feedback?(gijskruitbosch+bugs) → feedback+
Comment 15•12 years ago
|
||
The "make share button customizable" stuff is heading off to aurora with 32. I don't think we should ship it with this bug still present, so requesting tracking for 32 so we don't forget.
status-firefox32:
--- → affected
tracking-firefox32:
--- → ?
| Assignee | ||
Comment 16•12 years ago
|
||
(In reply to :Gijs Kruitbosch from comment #14)
> Comment on attachment 8426821 [details] [diff] [review]
> fix button state when share is in customization palette
>
> Hrm. Why aren't we just updating the button when it's in the palette? That
> would also take care of the hidden state... we'd just need to adjust the
> shareButton getter to use CUI instead of doc.getElementById...
I'm not clear on what you're saying here. The getter does use CUI.
status-firefox32:
affected → ---
tracking-firefox32:
? → ---
| Assignee | ||
Comment 17•12 years ago
|
||
(In reply to :Gijs Kruitbosch from comment #15)
> The "make share button customizable" stuff is heading off to aurora with 32.
> I don't think we should ship it with this bug still present, so requesting
> tracking for 32 so we don't forget.
I looked at doing this a couple different ways, ultimately I think the right place to spend time is to refactor this into a full widget. That cannot be done and uplifted since it changes the strings (from dtd to properties). I'd like to move forward with this patch for 32 and deal with that refactoring on nightly later.
Flags: needinfo?(gijskruitbosch+bugs)
Comment 18•12 years ago
|
||
(In reply to Shane Caraveo (:mixedpuppy) from comment #16)
> (In reply to :Gijs Kruitbosch from comment #14)
> > Comment on attachment 8426821 [details] [diff] [review]
> > fix button state when share is in customization palette
> >
> > Hrm. Why aren't we just updating the button when it's in the palette? That
> > would also take care of the hidden state... we'd just need to adjust the
> > shareButton getter to use CUI instead of doc.getElementById...
>
> I'm not clear on what you're saying here. The getter does use CUI.
Huh. So it does. Then the question is why it's null - it's a XUL widget, if it's in the palette we should be able to find the node.
Comment 19•12 years ago
|
||
Oh. Right. So the shareButton getter bails out if !widget.areaType. Why does it do that?
Flags: needinfo?(gijskruitbosch+bugs)
Comment 20•12 years ago
|
||
(FWIW, I think this is broken enough that we should still fix it for 32, although I can live with non-ideal fixes rather than, as you suggest, rewriting the widget to be a 'new style' CUI widget)
| Assignee | ||
Comment 21•12 years ago
|
||
(In reply to :Gijs Kruitbosch from comment #19)
> Oh. Right. So the shareButton getter bails out if !widget.areaType. Why does
> it do that?
I was purposely not allowing code to act on the button if it is in the palette. IMO it doesn't make sense to hide/show/disable the button in the palette. Even removing that though, I still should to protect against the first null return.
rewriting is a bigger change, so lets get this into 32 and schedule the rewrite (bug 1030317)
| Assignee | ||
Updated•12 years ago
|
Attachment #8426821 -
Flags: review?(gijskruitbosch+bugs)
| Assignee | ||
Comment 22•12 years ago
|
||
Comment 23•12 years ago
|
||
Comment on attachment 8426821 [details] [diff] [review]
fix button state when share is in customization palette
Review of attachment 8426821 [details] [diff] [review]:
-----------------------------------------------------------------
WFM. Sorry for the delay here.
Attachment #8426821 -
Flags: review?(gijskruitbosch+bugs) → review+
| Assignee | ||
Comment 24•12 years ago
|
||
Comment 25•12 years ago
|
||
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 33
| Assignee | ||
Comment 26•12 years ago
|
||
Comment on attachment 8426821 [details] [diff] [review]
fix button state when share is in customization palette
Approval Request Comment
[Feature/regressing bug #]:1003523
[User impact if declined]: Moving share button into customization palette breaks further access to palette as well as back/forward buttons
[Describe test coverage new/current, TBPL]: no new tests, manual testing is currently necessary
[Risks and why]: low
[String/UUID change made/needed]: none
Attachment #8426821 -
Flags: approval-mozilla-aurora?
Updated•12 years ago
|
status-firefox30:
--- → unaffected
tracking-firefox32:
--- → +
Comment 27•12 years ago
|
||
Comment on attachment 8426821 [details] [diff] [review]
fix button state when share is in customization palette
Aurora approval granted.
Attachment #8426821 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Comment 28•12 years ago
|
||
Comment 29•12 years ago
|
||
Verified fixed FF 33.0a1 (2014-07-21) Win 7 x64.
Whiteboard: STR in comment 11
Comment 30•12 years ago
|
||
Reproduced using Nightly 32.0a1 2014-05-22.
Verified as fixed using Firefox 32.0b1 under Win 7 64-bit, Ubuntu 12.10 32-bit, Mac OSX 10.9.4.
You need to log in
before you can comment on or make changes to this bug.
Description
•