Closed Bug 1042965 Opened 10 years ago Closed 7 years ago

"It's all text" add-on doesn't work (I don't get the button) when e10s is enabled

Categories

(Firefox :: Extension Compatibility, defect)

34 Branch
x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED WONTFIX
Tracking Status
e10s + ---

People

(Reporter: mcepl, Unassigned)

References

Details

(Keywords: addon-compat)

When I enable e10s, I don't get the blue button for activation of the text editor via It's all text addon (https://addons.mozilla.org/cs/firefox/addon/its-all-text/?src=search)

I have create a plain profile just with this addons and I get on stderr:

(process:6825): GLib-CRITICAL **: g_slice_set_config: assertion `sys_page_size == 0' failed

(process:6825): GLib-CRITICAL **: g_slice_set_config: assertion `sys_page_size == 0' failed

###!!! [Child][DispatchAsyncMessage] Error: Route error: message sent to unknown actor ID


###!!! [Child][DispatchAsyncMessage] Error: Route error: message sent to unknown actor ID

(BTW, pasting via middle-click from selection in X Window doesn't work as well)
Summary: It's all text doesn't work (I don't get the button) → It's all text doesn't work (I don't get the button) in e10s builds
tracking-e10s: --- → +
Summary: It's all text doesn't work (I don't get the button) in e10s builds → "It's all text" add-on doesn't work (I don't get the button) in e10s builds
hi there, if you have any questions about add-on support for multiprocess Firefox (e10s), just drop by the #e10s IRC channel on irc.mozilla.org. MDN also has a good introduction:

https://developer.mozilla.org/en-US/Add-ons/Working_with_multiprocess_Firefox
Summary: "It's all text" add-on doesn't work (I don't get the button) in e10s builds → "It's all text" add-on doesn't work (I don't get the button) when e10s is enabled
Update: It's All Text is now kind of working. 

When you mouse over a text box, the small "edit" button is supposed to appear, and it disappears again when you move the cursor away.

With e10s enabled, this doesn't happen. However, if I switch to another tab and then switch back, it *does* happen. And you can click on it and edit the text in a separate text editor, as expected.

So the extension is usable, but the behaviour is confusing and annoying. (In fact, it's possible that this behaviour has been present since the bug was filed, but nobody realised because it's so surprising.)
The developer has been contacted through AMO.
I haven't had time to look into this.  IAT uses various mechanisms to look through the DOM and add what it hopes are unique ids, buttons, etc.

I imagine an event somewhere isn't being fired or is being fired before the DOM is ready to be changed? Not sure.

The source is at https://github.com/docwhat/itsalltext if anyone has time to look at it. I haven't lately.
Christian, I see you have submitted a couple of new versions to AMO and they have been approved. Have any of those changes been related to this bug?
Flags: needinfo?(docwhat)
I have not made specific changes for e10.  I have filed a bug for myself at https://github.com/docwhat/itsalltext/issues/70

I find the symptom described above weird... It should be triggered on `window.onload` in addition to `gBrowser.load` but it sounds like only `gBrowser.onload` is being triggered.  Is there a different event I should listen for?

I'm guessing the `window.onload` event is already been triggered by the time my code is executed? e.g. the download is done, but no execution has happened?  Is there a way to see if it has already been fired?
Flags: needinfo?(docwhat)
gBrowser.onload is fired when a document is loaded in any of the tabs, right? How would that relate to tab switching, which appears to have some effect on the buggy behavior?
You know, I'm not sure... I think I'll have to download this e10 thing and try it out.
I have tested and confirmed that this bug works the same way on Windows 8.1.  So it's a cross-platform bug.

Dear Mr. Höltje:

Electrolysis ("e10s") is a feature which has been in development.  It makes Firefox run as two processes instead of one.  The goals are twofold:  better performance (the idea is to take better advantage of multi-core processors) and better security.

The main disadvantage is that not all add-ons work with Electrolysis yet.

If you want to try Electrolysis, simply install Firefox Nightly.

Firefox Nightly is a bleeding-edge form of Firefox.  It allows you to try new features before they're released to the general public.  Yet I find it stable enough for everyday use, even though I put unusual demands on the web browsers I use.

To install Firefox Nightly alongside your existing Firefox installation:

1.  Visit https://nightly.mozilla.org/
2.  Download and install Firefox Nightly.  I've tried it on both Windows and Linux.  It installs alongside your usual Firefox installation.
3.  Quit Firefox Stable.  (This step is important.  If you skip this step, Firefox Nightly won't use your usual profile.)
4.  Start Firefox Nightly.

If you decide you don't like Electrolysis, you have three options.

*  Option one is to go to "Tools > Options" and to uncheck the "multi-process" checkbox.
*  Option two is to press Alt+F to open the browser's File menu.  From this menu, you can open a new window, and you can always choose whether or not each new window will use Electrolysis.
*  Option three is to quit Firefox Nightly and to start Firefox Stable.

Have you tried Firefox Nightly?  How did you like it?
Flags: needinfo?(docwhat)
Still broken in Aurora 41.0a2
Component: General → Extension Compatibility
Product: Core → Firefox
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WONTFIX
Reopening because the problem still occurs.
Status: RESOLVED → REOPENED
Resolution: WONTFIX → ---
Only works after switching from a second tab and back in Nightly 49.0a1 64bit as well.
Also affects me:
- Linux 64bits
- Firefox 48b5
I can reproduce this in Firefox 52.1.0 packaged in Debian stretch (Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0), with forced electrolysis (because this is the only extension that doesn't support it here).
I would love some help on this.

I don't use Firefox very much anymore and therefore don't use IAT.

I also don't understand what needs to change for e10, either.

The source is at https://github.com/docwhat/itsalltext — I'd be happy to make anyone interested a contributor, too.
Flags: needinfo?(docwhat)
Given that Firefox 57 is going to disallow all extensions other than Web Extensions, this will need to be rewritten as a Web Extension.
(In reply to Nicholas Nethercote [:njn] from comment #18)
> Given that Firefox 57 is going to disallow all extensions other than Web
> Extensions, this will need to be rewritten as a Web Extension.

What is "Web extension" compared to "normal extension"?
It's the new extensions API: https://developer.mozilla.org/en-US/Add-ons/WebExtensions

I don't think we need to track this bug anymore. If the developer or a contributor wants to port the add-on to use WebExtensions, there's enough information in the comments of this bug.
Status: REOPENED → RESOLVED
Closed: 9 years ago7 years ago
Resolution: --- → WONTFIX
FWIW, there are alternatives for "It's all text!" now. The Emacs Chrome extension is being ported to Firefox:

https://github.com/stsquad/emacs_chrome/pull/130

And the GhostText extension, which features two-way sync, already works in FF:

https://github.com/GhostText/GhostText/

So yeah, nothing else to do but teach people about the alternatives now. The downside, of course, is those extensions require editor-side plugin and configuration. But that's basically inevitable with the new extensions API...
You need to log in before you can comment on or make changes to this bug.