Closed
Bug 679733
Opened 13 years ago
Closed 13 years ago
Widget Qt should send system notifications (display, taskswitcher, flight modes)
Categories
(Core Graveyard :: Widget: Qt, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
mozilla9
People
(Reporter: romaxa, Assigned: romaxa)
References
Details
Attachments
(2 files, 3 obsolete files)
8.27 KB,
patch
|
dougt
:
review+
azakai
:
feedback+
jbos
:
feedback+
|
Details | Diff | Splinter Review |
9.39 KB,
patch
|
mfinkle
:
approval-mozilla-aurora-
|
Details | Diff | Splinter Review |
We need to listen qmsystem2 (in future QtMobility API) for displayState, Activity, device mode notifications and generate related observer notifications.
Assignee | ||
Comment 1•13 years ago
|
||
I've reused old notification states from maemo5, and added ts-background, ts-foreground notifications which notify us when browser goes into taskswitcher mode (in that case we should make last active tab/docshell inactive)
Assignee | ||
Comment 2•13 years ago
|
||
Comment on attachment 553792 [details] [diff] [review] Listen device system states and send observe notifications if you have better observe name than "ts-background", otherwise it good to go as system part
Attachment #553792 -
Flags: review?(doug.turner)
Comment 3•13 years ago
|
||
Who for example would be listening to these notifications?
Assignee | ||
Comment 4•13 years ago
|
||
1) ts-background/foreground - right now when fennec moved to background, top fennec docshell is staying active, and we should add listener possibly in fennec UI or in DocShell and set current visible tab as inactive (that should cause animations suspend et.c.) 2) As an option we can completely suspend child process when fennec goes to taskswitcher in order to suspend all possible JS activity on page. 3) system-active/inactive - practically fennec child process should be suspended 2-3) suspension can be canceled in case if there are some audio activity on the page...
Assignee | ||
Comment 5•13 years ago
|
||
Here is example which is deactivating last selected tab when fennec goes into background or system go to locked/inactive state or when display is off...
Attachment #553942 -
Flags: feedback?(azakai)
Assignee | ||
Comment 6•13 years ago
|
||
Comment on attachment 553942 [details] [diff] [review] Deactivate last visible tab when fennec go into bg, or system inactive new bug created for this implementation
Attachment #553942 -
Flags: feedback?(azakai)
Assignee | ||
Comment 7•13 years ago
|
||
Another example is suspend child process by hard (SIGSTOP) but only if it is not playing any audio stuff (case with lastfm et.c.) And feedback on this?
Attachment #553942 -
Attachment is obsolete: true
Attachment #553973 -
Flags: feedback?
Updated•13 years ago
|
Attachment #553792 -
Flags: feedback+
Updated•13 years ago
|
Attachment #553792 -
Flags: feedback?(azakai) → feedback+
Comment 8•13 years ago
|
||
(In reply to Oleg Romashin (:romaxa) from comment #7) > Created attachment 553973 [details] [diff] [review] > Child process suspend/resume API (SIGSTOP/SIGCONT) > > Another example is suspend child process by hard (SIGSTOP) but only if it is > not playing any audio stuff (case with lastfm et.c.) > > And feedback on this? There was opposition to this when we considered it last year, due to a lot of potential problems with it. It can probably be done, but is risky - probably better to figure out why we need to suspend the child and fix that problem (are there unnecessary timers, etc.).
Assignee | ||
Comment 9•13 years ago
|
||
> There was opposition to this when we considered it last year, due to a lot
> of potential problems with it. It can probably be done, but is risky -
> probably better to figure out why we need to suspend the child and fix that
> problem (are there unnecessary timers, etc.).
Practically this is short term fix for all timers in content process (Page JS mostly).
Possibly more elegant fix for that is to call Window->Suspend/Resume timeouts, that suspend all JS timers.
For me both ways are having + and -
SIGSTOP:
+ will not cause some conflicts in content process caused by components which are trying to use/create JS timers and those are not working.
- May cause some undiscovered problems of Fenenc which is trying to interact with STOPPED child process
JS Suspend/Resume timeouts:
+ Keep child process in alive state, helps to catch other timers for long term fixing
+ problem described in SIGSTOP as "+" here is minus... such pages like gmail intentionally broken after such suspend..
Comment 10•13 years ago
|
||
Comment on attachment 553792 [details] [diff] [review] Listen device system states and send observe notifications please adjust the copyright date.
Attachment #553792 -
Flags: review?(doug.turner) → review+
Comment 11•13 years ago
|
||
Comment on attachment 553973 [details] [diff] [review] Child process suspend/resume API (SIGSTOP/SIGCONT) please put this in a different bug (one fix per bug).
Attachment #553973 -
Flags: feedback? → feedback-
Assignee | ||
Comment 12•13 years ago
|
||
this was example of possible usage
> please put this in a different bug (one fix per bug).
will do that next
Assignee | ||
Updated•13 years ago
|
Attachment #553973 -
Attachment is obsolete: true
Assignee | ||
Updated•13 years ago
|
Keywords: checkin-needed
Assignee | ||
Comment 13•13 years ago
|
||
Comment 14•13 years ago
|
||
http://hg.mozilla.org/integration/mozilla-inbound/rev/fb72354db342
Flags: in-testsuite-
Target Milestone: --- → mozilla9
Updated•13 years ago
|
Keywords: checkin-needed
Comment 15•13 years ago
|
||
And backed out for Qt bustage: http://tbpl.allizom.org/php/getParsedLog.php?id=6029466 http://hg.mozilla.org/integration/mozilla-inbound/rev/1cf660434af7 http://hg.mozilla.org/integration/mozilla-inbound/rev/87e7c8dbba63
Target Milestone: mozilla9 → ---
Assignee | ||
Comment 16•13 years ago
|
||
Ok, this compiles fine on other Qt builds http://tbpl.allizom.org/?tree=Try&usebuildbot=1&rev=86f78f470d87
Attachment #554274 -
Attachment is obsolete: true
Assignee | ||
Updated•13 years ago
|
Keywords: checkin-needed
Comment 17•13 years ago
|
||
http://hg.mozilla.org/integration/mozilla-inbound/rev/b51e7241dd13
Keywords: checkin-needed
Target Milestone: --- → mozilla9
http://hg.mozilla.org/mozilla-central/rev/b51e7241dd13
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Assignee | ||
Comment 19•13 years ago
|
||
This patch does not make big sense without 679923
Depends on: 679923
Assignee | ||
Comment 20•13 years ago
|
||
Comment on attachment 554737 [details] [diff] [review] [TOPUSH] Listen device system states and send observe notifications, fixed copyright This patch is needed as backend for bug 679923, affecting only Qt Maemo6 port, more details about whole change is in https://bugzilla.mozilla.org/show_bug.cgi?id=679923#c37
Attachment #554737 -
Flags: approval-mozilla-aurora?
Comment 21•13 years ago
|
||
Comment on attachment 554737 [details] [diff] [review] [TOPUSH] Listen device system states and send observe notifications, fixed copyright Leaving in fx9.
Attachment #554737 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora-
Updated•8 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•