Closed Bug 1437332 Opened 5 years ago Closed 5 years ago

Narrator audio continues with LastPass installed when Reader Mode is exited

Categories

(Toolkit :: Reader Mode, defect)

60 Branch
defect
Not set
normal

Tracking

()

VERIFIED FIXED
mozilla60
Tracking Status
firefox60 --- verified
firefox61 --- verified

People

(Reporter: justinnoah, Assigned: eeejay)

Details

Attachments

(2 files)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0
Build ID: 20180209102946

Steps to reproduce:

- Install LastPass and make sure the addon is enabled
-- logged in or not does not matter
- Enter reader mode for any page
-- Discovered bug while at http://philosophyofbrains.com/2015/08/04/lucid-dreaming-or-dreaming-that-youre-dreaming.aspx
- Start Narrator and skip to a long paragraph
- Exit Reader Mode


Actual results:

 Audio kept playing until end of paragraph or reader mode was re-opened.


Expected results:

Audio should stop once Reader Mode is exited to be consistent with Firefox without LastPass installed and enabled.
Eitan, any idea how a webextension would be able to interfere with this given bug 1371786 is unfixed ie webextensions shouldn't be able to run script here?
Flags: needinfo?(eitan)
Looks like an addon could keep a window alive for just a little bit longer. This messes with how narrate is currently shut down.
Attachment #8954231 - Flags: review?(gijskruitbosch+bugs)
Since SpeechSynthesis can outlive the windows inner window(?) we need to make sure the speak() won't work on it once it is destroyed.
Attachment #8954232 - Flags: review?(bugs)
Flags: needinfo?(eitan)
Attachment #8954231 - Flags: review?(gijskruitbosch+bugs) → review+
Comment on attachment 8954232 [details] [diff] [review]
Don't speak after inner window was destroyed. r?smaug

I guess this is fine.
(I wonder if exception should be thrown or error event dispatched or something.)
Attachment #8954232 - Flags: review?(bugs) → review+
(In reply to Olli Pettay [:smaug] from comment #4)
> Comment on attachment 8954232 [details] [diff] [review]
> Don't speak after inner window was destroyed. r?smaug
> 
> I guess this is fine.
> (I wonder if exception should be thrown or error event dispatched or
> something.)

Maybe an exception? It would mean changing speak() to 'Throws' in the webidl. It would then not match the spec. Since this happens in a relatively obscure race I don't know if it's worth it.

In error event would be bad because the event's owner would be the recently destroyed window.

I can follow up on this if needed.
Keywords: checkin-needed
Pushed by btara@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/c394578ac667
Stop narration on unload. r=Gijs
https://hg.mozilla.org/integration/mozilla-inbound/rev/8a60cb3337c1
Don't speak after inner window was destroyed. r=smaug
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/c394578ac667
https://hg.mozilla.org/mozilla-central/rev/8a60cb3337c1
Status: UNCONFIRMED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla60
Flags: qe-verify+
I observed this issue's behavior on Ubuntu 16.04 x32, with Firefox 60.0a1 (2018-02-10) with the LastPass Password Manager or RoboForm Password Manager add-ons installed.
This is no longer reproducible on Firefox 61.0a1 (2018-03-22) and Firefox 60.0b5 (20180319175655) under Ubuntu 16.04 (both on x32 and x64), Windows 10 x64 and macOS 10.13.
Status: RESOLVED → VERIFIED
Flags: qe-verify+
Assignee: nobody → eitan
You need to log in before you can comment on or make changes to this bug.