Closed Bug 1006579 Opened 11 years ago Closed 11 years ago

The AboutToCheckerboard code for progressive updates often returns true instead of false

Categories

(Core :: Graphics: Layers, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla32

People

(Reporter: kats, Assigned: kats)

References

Details

Attachments

(2 files)

The implementation of AboutToCheckerboard doesn't really make sense to me, and needs to be fixed.
Comment on attachment 8418082 [details] [diff] [review] Part 1 - refactor some code Review of attachment 8418082 [details] [diff] [review]: ----------------------------------------------------------------- It might be worth introducing min() and max() overloads for BaseSize.
Attachment #8418082 - Flags: review?(botond) → review+
Comment on attachment 8418083 [details] [diff] [review] Part 2 - Fix AboutToCheckerboard Review of attachment 8418083 [details] [diff] [review]: ----------------------------------------------------------------- r+ with the comment addressed. In Java, do we have a threshold? This actually is an 'IsCheckerboarding' check rather than an 'AboutToCheckerboard' check. This issue shouldn't hold up getting this fix landed though. ::: gfx/layers/client/TiledContentClient.cpp @@ +241,5 @@ > bool > SharedFrameMetricsHelper::AboutToCheckerboard(const FrameMetrics& aContentMetrics, > const FrameMetrics& aCompositorMetrics) > { > + CSSRect painted = aContentMetrics.mCriticalDisplayPort + aContentMetrics.GetScrollOffset(); This should check if mCriticalDisplayPort is empty and use mDisplayPort in that case.
Attachment #8418083 - Flags: review?(chrislord.net) → review+
(In reply to Chris Lord [:cwiiis] from comment #5) > Comment on attachment 8418083 [details] [diff] [review] > Part 2 - Fix AboutToCheckerboard > > Review of attachment 8418083 [details] [diff] [review]: > ----------------------------------------------------------------- > > r+ with the comment addressed. In Java, do we have a threshold? This > actually is an 'IsCheckerboarding' check rather than an > 'AboutToCheckerboard' check. This issue shouldn't hold up getting this fix > landed though. You're right that in Java we have a threshold, there's the "danger zone" prefs and such that control the threshold. We can add that stuff here too if it's needed but as you said that can be deferred to a later bug. > > + CSSRect painted = aContentMetrics.mCriticalDisplayPort + aContentMetrics.GetScrollOffset(); > > This should check if mCriticalDisplayPort is empty and use mDisplayPort in > that case. Good point, fixed locally.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla32
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: