Closed
Bug 1055050
Opened 11 years ago
Closed 11 years ago
Add visual warning if the transaction latency is > 100 ms
Categories
(Core :: Graphics, defect)
Tracking
()
RESOLVED
FIXED
mozilla34
People
(Reporter: BenWa, Assigned: BenWa)
References
(Blocks 1 open bug)
Details
Attachments
(1 file, 2 obsolete files)
22.29 KB,
patch
|
BenWa
:
review+
|
Details | Diff | Splinter Review |
With OMTC it's becoming harder to know that a main thread transaction is delayed. Keeping the main thread transaction snappy is still important however.
We calculate an expected competition time for transaction and/or the start time. If we're above our wanted numbers by a certain threshold, like 100ms, we give some visual feedback like flashing the screen.
Assignee | ||
Updated•11 years ago
|
Assignee | ||
Comment 1•11 years ago
|
||
Assignee | ||
Comment 2•11 years ago
|
||
Comment 3•11 years ago
|
||
Comment on attachment 8474817 [details] [diff] [review]
patch
Review of attachment 8474817 [details] [diff] [review]:
-----------------------------------------------------------------
::: gfx/layers/ipc/LayerTransactionParent.cpp
@@ +231,5 @@
> + if (severity > 1.f) {
> + severity = 1.f;
> + }
> + mLayerManager->VisualFrameWarning(severity);
> + }
Don't we want to check this after we've finished processing the update? It should be a fairly small amount of time, but it's part of the 'transaction' and worth measuring.
::: layout/base/nsRefreshDriver.cpp
@@ +1106,5 @@
> AutoRestore<bool> restoreInRefresh(mInRefresh);
> mInRefresh = true;
>
> + AutoRestore<TimeStamp> restoreTickStart(mTickStart);
> + mTickStart = TimeStamp::Now();
Doesn't this just duplicate mMostRecentRefresh?
Updated•11 years ago
|
Attachment #8474817 -
Flags: review?(matt.woodrow) → review+
Assignee | ||
Comment 4•11 years ago
|
||
(In reply to Matt Woodrow (:mattwoodrow) from comment #3)
> Comment on attachment 8474817 [details] [diff] [review]
> patch
>
> Review of attachment 8474817 [details] [diff] [review]:
> -----------------------------------------------------------------
>
> ::: gfx/layers/ipc/LayerTransactionParent.cpp
> @@ +231,5 @@
> > + if (severity > 1.f) {
> > + severity = 1.f;
> > + }
> > + mLayerManager->VisualFrameWarning(severity);
> > + }
>
> Don't we want to check this after we've finished processing the update? It
> should be a fairly small amount of time, but it's part of the 'transaction'
> and worth measuring.
Right, I was going to move it but forgot, nice catch.
>
> ::: layout/base/nsRefreshDriver.cpp
> @@ +1106,5 @@
> > AutoRestore<bool> restoreInRefresh(mInRefresh);
> > mInRefresh = true;
> >
> > + AutoRestore<TimeStamp> restoreTickStart(mTickStart);
> > + mTickStart = TimeStamp::Now();
>
> Doesn't this just duplicate mMostRecentRefresh?
Ahh, maybe. I'll check that out.
Assignee | ||
Comment 5•11 years ago
|
||
I'm going to make the overlay mobile only for now.
Assignee | ||
Comment 6•11 years ago
|
||
I've made minor changes to the fade out, added a border and made this mobile only. I don't think this warrants a new review but I'll accept drive-by comments.
https://tbpl.mozilla.org/?tree=Try&rev=ec4e79145321
Attachment #8474817 -
Attachment is obsolete: true
Attachment #8480798 -
Flags: review+
Assignee | ||
Comment 7•11 years ago
|
||
Attachment #8480798 -
Attachment is obsolete: true
Attachment #8480839 -
Flags: review+
Assignee | ||
Comment 8•11 years ago
|
||
Comment 9•11 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla34
You need to log in
before you can comment on or make changes to this bug.
Description
•