Closed Bug 806959 Opened 8 years ago Closed 8 years ago

Apps that are not OOP get notified for system messages (n) times with n = number of launches

Categories

(Core :: DOM: Core & HTML, defect)

defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 802564
blocking-basecamp +

People

(Reporter: etienne, Unassigned)

Details

Attachments

(1 file)

When a oop app dies, we get a child-process-shutdown and cleanup the system message listeners.

When an in-process app dies we don't, so if the app is killed then launched n times, the message handler will get triggered n times.

STR:
- checkout this branch where the SMS app uses system messages instead of a background service: https://github.com/etiennesegonzac/gaia/tree/sms-minus-bg-service
- send an SMS to the phone, you get 1 notification
- kill the sms app and relaunch it 2 or 3 times
- send an SMS to the phone, you'll get 3 or 4 notifications

On a related note if this gets fixed we can remove the SMS background service :)
(Don't know how close we are to get the SMS app OOP)
blocking-basecamp: --- → ?
I think we should be getting some kind of "iframe closed" notification.  I'm pretty sure that mozbrowser relies on this.

jlebar/philikon do you know more?
We use the inner-window-destroyed notification for some APIs.
(In reply to Fabrice Desré [:fabrice] from comment #2)
> We use the inner-window-destroyed notification for some APIs.

I think you want outer-window-destroyed, if you want to know when the iframe goes away.  But yes, that is probably the thing to do here...
Attached patch patchSplinter Review
totally untested because I messed up my gaia setup importing etienne's branch...
(In reply to Fabrice Desré [:fabrice] from comment #4)
> Created attachment 676841 [details] [diff] [review]
> patch
> 
> totally untested because I messed up my gaia setup importing etienne's
> branch...

Small typo with "Sevirces" instead of "Services", but even with that fixed doesn't seem to work (still getting n notifications).
Rebased my branch on gaia master by the way.
blocking-basecamp: ? → +
I think this is a dup of Bug 802564, where the solution looks more simplified. ;)
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 802564
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.