Closed Bug 1136971 Opened 9 years ago Closed 9 years ago

With multi-FrameMetrics, layer border for inner scrollable frame lags while outer frame is async-scrolled

Categories

(Core :: Panning and Zooming, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla39
Tracking Status
firefox39 --- fixed

People

(Reporter: botond, Assigned: botond)

Details

Attachments

(1 file, 1 obsolete file)

STR:
  1. Turn on layer borders in the developer settings.
  2. Load http://people.mozilla.org/~bballo/clip.html in the B2G browser.
  3. Scroll the inner (purple) frame to layerize it.
  4. Scroll the outer frame.

Expected results:
  As the outer frame is scrolled, the purple layer border around the
  inner frame moves in sync with the inner frame.

Actual results:
  The layer border lags behind the inner frame.

The issue here is basically the same as in bug 1130982: with multi-FrameMetrics, the composition bounds of scroll frames lower in the metrics stack need to be transformed by the async transform of scroll frames higher in the metrics stack. In bug 1130982, this caused a rendering problem due to the composition bounds being used as the clip rect. Here, it's causing a problem due to the composition bounds being used as the layer border.
Assignee: nobody → botond
Attached patch Fix (obsolete) — Splinter Review
Attachment #8569503 - Flags: review?(bugmail.mozilla)
Comment on attachment 8569503 [details] [diff] [review]
Fix

Review of attachment 8569503 [details] [diff] [review]:
-----------------------------------------------------------------

Nice catch!
Attachment #8569503 - Flags: review?(bugmail.mozilla) → review+
Doh - Layer::GetAsyncPanZoomController() will be null on Android.
Flags: needinfo?(botond)
Attached patch FixSplinter Review
Updated to add null check. Carrying r+.

Will wait for a Try push this time. Here's one that includes this patch, and includes Android tests:

https://treeherder.mozilla.org/#/jobs?repo=try&revision=866de5c9fcdc
Attachment #8569503 - Attachment is obsolete: true
Attachment #8570726 - Flags: review+
(In reply to Botond Ballo [:botond] from comment #6)
> https://treeherder.mozilla.org/#/jobs?repo=try&revision=866de5c9fcdc

Try push is green. Setting checkin-needed as m-i is closed.
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/e04b01edb944
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla39
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: