Closed
Bug 890279
Opened 11 years ago
Closed 11 years ago
Create ScrollInfoLayers for frames we want APZC support
Categories
(Core :: Graphics: Layers, defect)
Tracking
()
RESOLVED
FIXED
mozilla25
People
(Reporter: BenWa, Assigned: BenWa)
References
Details
Attachments
(1 file, 2 obsolete files)
11.04 KB,
patch
|
BenWa
:
review+
|
Details | Diff | Splinter Review |
Follow up to bug 775459 since it didn't really fit in there.
Carrying r=kats,mattwoodrow . Patch should be ready to go once I fix the assertion in dom/indexedDB/ipc:
https://tbpl.mozilla.org/php/getParsedLog.php?id=24842027&tree=Try
Attachment #771353 -
Flags: review+
Assignee | ||
Comment 1•11 years ago
|
||
My code is trying to build a nsScrollInfoLayer to hold the scroll meta data but it's hitting this assertion. Looks like we can either:
1) Change the layer type to LAYER_ACTIVE and remove the _EMPTY part or
2) Remove this assertion: http://mxr.mozilla.org/mozilla-central/source/layout/base/FrameLayerBuilder.cpp#2099
Matt can you weight in on the implications here.
Flags: needinfo?(matt.woodrow)
Assignee | ||
Comment 2•11 years ago
|
||
We discussed this in person. We're moving the area from the layer visible region to the frame metrics.
Flags: needinfo?(matt.woodrow)
Assignee | ||
Comment 3•11 years ago
|
||
The changes to layout are the same minus two hunks that are no longer needed. Modified the tests and hit testing code.
https://tbpl.mozilla.org/?tree=Try&rev=c0512cb7f643
Assignee: nobody → bgirard
Attachment #771353 -
Attachment is obsolete: true
Status: NEW → ASSIGNED
Attachment #772480 -
Flags: review?(bugmail.mozilla)
Comment 4•11 years ago
|
||
Comment on attachment 772480 [details] [diff] [review]
Use mViewport instead
Review of attachment 772480 [details] [diff] [review]:
-----------------------------------------------------------------
::: gfx/layers/composite/ContainerLayerComposite.cpp
@@ +157,5 @@
>
> + const FrameMetrics& frame = aContainer->GetFrameMetrics();
> + CSSRect viewport = frame.mViewport;
> + CSSToLayerScale paintedScale = frame.mDevPixelsPerCSSPixel * frame.mResolution;
> + LayerRect layerViewport = viewport * paintedScale;
You can do frame.mViewport * frame.LayerPixelsPerCSSPixel() here, it's a little simpler.
::: gfx/layers/ipc/AsyncPanZoomController.cpp
@@ +1483,5 @@
> + if (aLayer.GetFrameMetrics().IsScrollable()) {
> + const FrameMetrics& frame = aLayer.GetFrameMetrics();
> + CSSRect viewport = frame.mViewport;
> + CSSToLayerScale paintedScale = frame.mDevPixelsPerCSSPixel * frame.mResolution;
> + LayerRect layerViewport = viewport * paintedScale;
Ditto here
Attachment #772480 -
Flags: review?(bugmail.mozilla) → review+
Assignee | ||
Comment 5•11 years ago
|
||
Attachment #772480 -
Attachment is obsolete: true
Attachment #772773 -
Flags: review+
Assignee | ||
Updated•11 years ago
|
Keywords: checkin-needed
Assignee | ||
Comment 6•11 years ago
|
||
Keywords: checkin-needed
Comment 7•11 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla25
You need to log in
before you can comment on or make changes to this bug.
Description
•