Граф коммитов

58 Коммитов

Автор SHA1 Сообщение Дата
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Kartikaya Gupta 9a0b69bfb3 Bug 1503616 - Propagate the zoom animation id over to the APZ code. r=botond
Depends on D11180

Differential Revision: https://phabricator.services.mozilla.com/D11181

--HG--
extra : moz-landing-system : lando
2018-11-09 21:13:10 +00:00
Ryan Hunt 2226bcc8a3 Bug 1504220 - Move ScrollableLayerGuid, ViewID, ZoomConstraints from FrameMetrics.h r=botond
This commit attempts to lower the pain of modifying FrameMetrics.h.

It looks like most includes really only want ViewID or
ScrollableLayerGuid, so this commit factors them out into a separate
header. In the process FrameMetrics::ViewID is changed to
ScrollableLayerGuid::ViewID, which personally seems like a better
place for it now that we have RepaintRequest. Unfortunately that
requires a lot of places to be updated.

After this commit there are still a couple of major places that
FrameMetrics is included.
 * nsDisplayList.h
 * nsIScrollableFrame.h
 * Layers.h

Those are going to be more tricky or impossible to fix so they're
not in this commit.

Differential Revision: https://phabricator.services.mozilla.com/D10722

--HG--
rename : gfx/layers/FrameMetrics.h => gfx/layers/ScrollableLayerGuid.h
rename : gfx/layers/FrameMetrics.h => gfx/layers/ZoomConstraints.h
extra : rebase_source : 29ac79f91460a181bf7437af5c371207e22858e2
extra : source : c2e70e531075493fc6e374dcec862827f0bc6e77
2018-11-01 15:15:46 -05:00
Kartikaya Gupta abcf2e229e Bug 1454485 - Stop passing around the scroll view and container direction since it's already in the scrollbar data. r=botond
MozReview-Commit-ID: 3t4uLBQZSAi
2018-04-17 15:04:34 -04:00
Daniel Zielas 471ef50beb Bug 1420512 - Try unifying data structures for scrollbar container and scrollbar thumb info. r=botond
MozReview-Commit-ID: 9zPkrA3CwsN

--HG--
extra : rebase_source : b52bef52576558f03afc65120a40a5312ae7eba3
2018-03-02 19:00:03 +01:00
Botond Ballo 3552e7b87f Bug 1447131 - Handle backface-visibility:hidden in compositor hit testing. r=kats
MozReview-Commit-ID: EZhhSk3EZAL

--HG--
extra : rebase_source : be2e6a1e3fc651cb26bf90b77077ca0a5de8d80a
2018-03-28 14:22:30 -04:00
Kartikaya Gupta 395eaf8c66 Bug 1448490 - Make the layers id a struct instead of a uint64_t. r=mattwoodrow
The new struct is in LayersTypes.h, all the rest of the changes are just
replacing existing uint64_t instances with the new LayersId struct.

Note that there is one functional change, in
CompositorBridgeParent::DeallocPWebRenderBridgeParent, where we now
correctly convert the PipelineId to a LayersId before using it to index
into sIndirectLayerTrees, whereas before we were incorrectly just using
the mHandle part of the PipelineId.

MozReview-Commit-ID: GFHZSZiwMrP

--HG--
extra : rebase_source : d2b274f63aaee2ee9bba030297e0a37a19af0d6c
2018-03-24 19:06:01 -04:00
Kartikaya Gupta 0fab36e756 Bug 1418387 - Propagate scrollbar direction for scrollbar containers to APZ. r=botond
Most of this patch is just mechanical changes, but note that this patch
now makes the mFlags in scrollbar-container nsDisplayOwnLayer instances
have one of the direction bits set. As a result, this requires changing
the implementation of nsDisplayOwnLayer::IsScrollThumbLayer().

MozReview-Commit-ID: 2BLdbpz5Sa8

--HG--
extra : rebase_source : 27e7d90ce60c7f702fe77d8a3a0f7e3ae3e4a4ff
2017-11-24 16:23:05 -05:00
Kartikaya Gupta 3c76c8128a Bug 1415225 - Move the EventRegionsOverride field to be on RefLayers only. r=botond
We now set EventRegionsOverride flags on ref layers only, so
there's no need to have the APIs to set it on container layers in
general.

MozReview-Commit-ID: JKU4UXvdR2e

--HG--
extra : rebase_source : 77f49787e8953520dc56ea4a8f9286b35d6942b8
2017-11-09 09:03:52 -05:00
Sebastian Hengst 8916884b22 Backed out 6 changesets (bug 1415225) for frequently failing own gfx/layers/apz/test/mochitest/test_group_overrides.html on Windows. r=backout
Backed out changeset 27403a9dec13 (bug 1415225)
Backed out changeset 9e6710586531 (bug 1415225)
Backed out changeset 8cfef302b710 (bug 1415225)
Backed out changeset 8ae80d7421d5 (bug 1415225)
Backed out changeset 5f14fc545115 (bug 1415225)
Backed out changeset 4704645d4e81 (bug 1415225)
2017-11-09 11:59:04 +02:00
Kartikaya Gupta f07bd076ed Bug 1415225 - Move the EventRegionsOverride field to be on RefLayers only. r=botond
We now set EventRegionsOverride flags on ref layers only, so
there's no need to have the APIs to set it on container layers in
general.

MozReview-Commit-ID: EX57VvaZv8A

--HG--
extra : rebase_source : 7ea4c8bb2716821bf7069158fdf9729fb6137a35
2017-11-08 20:47:19 -05:00
Daniel Holbert 126bd9e1a4 Bug 1412427 part 8: (automated patch) Switch a bunch of C++ files in gfx to use our standard mode lines. r=jrmuizel
This patch was generated automatically by the "modeline.py" script, available
here: https://github.com/amccreight/moz-source-tools/blob/master/modeline.py

For every file that is modified in this patch, the changes are as follows:
 (1) The patch changes the file to use the exact C++ mode lines from the
     Mozilla coding style guide, available here:
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Coding_Style#Mode_Line

 (2) The patch deletes any blank lines between the mode line & the MPL
     boilerplate comment.

 (3) If the file previously had the mode lines and MPL boilerplate in a
     single contiguous C++ comment, then the patch splits them into
     separate C++ comments, to match the boilerplate in the coding style.

MozReview-Commit-ID: 77D61xpSmIl

--HG--
extra : rebase_source : c6162fa3cf539a07177a19838324bf368faa162b
2017-10-27 16:10:06 -07:00
Kartikaya Gupta 78a69a5578 Bug 1382200 - Eliminate LayerMetricsWrapper::IsScrollInfoLayer entirely by inlining it. r=botond
MozReview-Commit-ID: KX35cjOAQw7

--HG--
extra : rebase_source : 2e451ce0250ec17fc7f1a642e5a8a341c073105d
2017-07-19 09:24:28 -04:00
Kartikaya Gupta 4dfe8eadc0 Bug 1382200 - Change implementation of the LayerMetricsWrapper IsScrollInfoLayer to use the metrics flag. r=botond
This also updates the WebRenderScrollDataWrapper function as it is meant
to be semantically equivalent to the LayerMetricsWrapper one, which
allows removal of a flag propagation.

MozReview-Commit-ID: 9DBx4qbhq5A

--HG--
extra : rebase_source : 3201d8a4bb7192ecdbe95983b605ac53b1a28c50
2017-07-19 09:24:24 -04:00
Botond Ballo 2d97e2ab3c Bug 1352863 - Propagate the visible region from Layer to HitTestingTreeNode. r=kats
The propagation happens via LayerMetricsWrapper or WebRenderScrollDataWrapper.

MozReview-Commit-ID: GBZUnNn3zjN

--HG--
extra : rebase_source : 4c63269480154a95d5faedf1b4972f7d3373cb5a
2017-05-24 15:47:14 -04:00
Kartikaya Gupta 8902dc4885 Bug 1364525 - Send the animation id for scrollbar thumbs over to the parent in the scroll data. r=botond
This propagates the animation id for a scroll thumb's stacking context over to
the APZ code, and stores it in the HitTestingTreeNode.

MozReview-Commit-ID: 5O13Xko2Bph
2017-05-23 10:50:41 -04:00
Botond Ballo 2029f1cf93 Bug 1349750 - Store the entire ScrollThumbData in HitTestingTreeNode. r=kats
This is preparation for future changes that will add fields to ScrollThumbData
that will be accessed via HitTestingTreeNode.

To accomplish this, this patch also exposes the entire ScrollThumbData via
LayerMetricsWrapper and WebRenderScrollDataWrapper.

MozReview-Commit-ID: 1Ed8Z80Wk1V

--HG--
extra : rebase_source : 86cce84eab0cd8bcd2998f1682137e9514bb1fb5
2017-05-03 20:25:09 -04:00
Botond Ballo 6c0eea50b3 Bug 1349750 - Group scroll thumb-related information in Layer into a ScrollThumbData structure. r=kats
The patch also renames Layer::SetScrollbarData() to Layer::SetScrollThumbData()
for clarity.

MozReview-Commit-ID: DVwJ3DMl3Zs

--HG--
extra : rebase_source : 7b2bfccf1351c82bb16296635e69d5488c87a50f
2017-05-10 14:02:15 -04:00
Kartikaya Gupta b21511b7c0 Merge m-c to graphics
MozReview-Commit-ID: GdyXEYZsVuX
2017-04-25 08:32:48 -04:00
Kartikaya Gupta f566883468 Bug 1357754 - Replace LayerMetricsWrapper::AsRefLayer with GetReferentId. r=botond
This further abstracts away the direct dependence on particular layer
types. This is needed in particular for the APZCTreeManager call site
since it will need to operate on non-layer-tree data which is hard if it
relies specifically on RefLayer.

MozReview-Commit-ID: zbK3oTNHJc
2017-04-20 10:38:05 -04:00
Botond Ballo db703a3ed0 Bug 1355374 - Remove the no-longer-used LayerMetricsWrapper::GetScrollThumbLength() and HitTestingTreeNode::mScrollThumbLength. r=kats
MozReview-Commit-ID: ICm2Q1hnKD6

--HG--
extra : rebase_source : 3152714a349ce134d30dc48c94b40b59053ab195
2017-04-21 13:59:32 -04:00
Kartikaya Gupta 5590927943 Bug 1357530 - Remove unused code in LayerMetricsWrapper.h. r=botond
MozReview-Commit-ID: EkZsUapSqWO

--HG--
extra : rebase_source : 3fb544cbdcf30afa4a15136a2e9f5463b9d30f7f
2017-04-18 16:09:37 -04:00
David Anderson baf1f78d98 Move ScrollDirection to LayersTypes.h and make it a proper enum. (bug 1332567 part 1, r=kats) 2017-01-24 16:41:17 -08:00
Kevin Wern e4d8f7fbe8 bug 1249162 - Fix unwanted thumb shifts when starting APZ drag r=botond
Fix thumb position determination in these places:
- nsSliderFrame::StartAPZDrag() -- Constrain sliderTrack using
  GetXULClientRect() to match dimensions used in
  SetCurrentThumbPosition() and DoXULLayout(). This is what caused
  the scaling/offset mismatch.
- nsSliderFrame::StartAPZDrag() -- Adjust nonsensical calculation of
  cssSliderTrack. Should be sliderFrame + scrollbarFramePosition -
  compositionBoundsPosition, to get coordinates relative to the same
  region as that of APZ event coordinates.
- AsyncDragMetrics -- Make mScrollTrack and mScrollbarDragOffset float
  instead of int coordinates.
- AsyncPanZoomController::HandleDragEvent() -- Use
  GetAxisLength(scrollTrack) instead of GetAxisEnd(scrollTrack) in
  calculation of scrollMax.
- AsyncPanZoomController::HandleDragEvent() -- Only change position on
  MOUSE_MOVE.

Additional refactors:
- Rename HitTestingTreeNode::GetScrollSize() to GetScrollThumbLength(),
  along with related functions/variables.
- Rename AsyncPanZoomController::GetAxisSize() to GetAxisLength().
- Rename cf to scrollFrame in nsSliderFrame::StartAPZDrag().

MozReview-Commit-ID: CIsU8Pj6qfa

--HG--
extra : rebase_source : 29548fb95ec3e958d903d964753857ee949753ba
2016-11-27 20:48:08 -05:00
Kartikaya Gupta a5b8dc0091 Bug 1219296 - Followup to fix stale code comments. r=me and DONTBUILD
MozReview-Commit-ID: 65hNR0nUQP
2016-10-24 13:07:01 -04:00
Michelangelo De Simone 0b2d2c0e55 Bug 1120059 - Remove unnecessary MOZ_EXPLICIT_CONVERSION macros. r=jwalden
MozReview-Commit-ID: 7CX1VnBRDpk

--HG--
extra : rebase_source : 36be7e6c91d2767c5a610a2806f89efa69ff1c74
2016-07-13 15:07:52 -07:00
Botond Ballo 29ef36444d Bug 1267438 - Use the layer's scrolled clip during compositor hit testing. r=mstange
MozReview-Commit-ID: 2nodwaZHeWZ

--HG--
extra : rebase_source : 4a61e20fa5ea6de457132aa7e06c27e48286f28c
extra : source : 6618e805fce8e1b45241783d8ba3b5bec5ad182a
extra : histedit_source : 4b27d55d0f26de7a13ef741feef9df6f8e6c4f13
2016-05-04 17:30:26 -04:00
Kartikaya Gupta 4e803a8887 Bug 1270955 - When hit-testing on fixed-pos layers, find the root APZC for the scroll container rather than the layers id. r=botond
MozReview-Commit-ID: IvcMbpINOBI
2016-05-11 17:28:04 -04:00
Botond Ballo 54e53e75c4 Bug 1257288 - Have APZ hit testing respect scroll clips. r=kats
MozReview-Commit-ID: AZU5TEMvySG

--HG--
extra : rebase_source : f435fa574a52bdf90690c1ede739f248d2f0d99f
2016-04-20 18:38:25 -04:00
Kartikaya Gupta 0b2d4ef75f Bug 1258851 - Update HitTestingTreeNode::IsScrollbarNode to include the scrollbar track layers. r=rbarker
MozReview-Commit-ID: CmyeeEPPYAq

--HG--
extra : rebase_source : f6b01531e45881409b6c4796a8b5ecff135217d4
2016-04-14 16:42:24 -04:00
Botond Ballo 77cebd9dd2 Bug 1219296 - Make ScrollMetadata::sNullMetadata a StaticAutoPtr so that ScrollMetadata can admit nsTArray members. r=kats
MozReview-Commit-ID: LOZdnAhL5xH

--HG--
extra : rebase_source : 39b619a7945e9f3c867dbe67e700e8b83d7c3699
2016-03-30 17:04:10 -04:00
Botond Ballo a74ec8c79b Bug 1219296 - Split fields not needed for repaints out from FrameMetrics. r=kats
MozReview-Commit-ID: DymHOSI6yYK

--HG--
extra : rebase_source : 1996bcb7f005c02b94031fe1c73d5136814b0296
2016-03-28 19:14:52 -04:00
Botond Ballo b22e5adb20 Bug 1236750 - Add typed getters for layer transform matrices. r=kats
--HG--
extra : source : bf19963d10d6cc021092662176845192764f9cf0
2016-01-06 18:56:58 -05:00
Kartikaya Gupta 7df84c3309 Bug 1228602 - Ensure that we pick up the presShell resolution from the layer if there isn't a metrics. r=botond
--HG--
extra : commitid : BXooH3Gj0wh
2015-12-09 17:29:03 -05:00
Sunny Sidhu cfa8942015 Bug 1220873 - Make Layer::mVisibleRegion a LayerIntRegion. r=botond
--HG--
extra : source : dc46048f7a9e9cc008c97e2d9e0a100944743055
extra : amend_source : 63783bc076e5969ebacdc8c74f9b5194a1891d9e
2015-11-29 02:07:55 -05:00
Botond Ballo 136d0a9d64 Bug 1168263 - Exclude perspective transforms from the transform used to convert from screen coordinates to an APZC's coordinate space. r=kats 2015-11-02 15:08:01 -05:00
Benoit Girard eb3b891bbc Bug 1199885 - Part 4: Let the hit testing tree know about the scroll thumb. r=kats
--HG--
extra : commitid : 2sY04WntME0
extra : rebase_source : 98008b1dcc3236ef65e1809fd849fae6c31c76f7
2015-09-28 14:44:36 -04:00
Kearwood (Kip) Gilbert 5b2ac66a0c Bug 1181240 - Part 3: Replace gfx3DMatrix with Matrix4x4 in gfx,r=vlad
- Refactored code to use Matrix4x4 instead of gfx3DMatrix.
- There is not expected to be any functional effect.
2015-07-10 17:06:35 -07:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Ying-Ruei Liang (KK) f17daf9c2a Bug 1143522 - Convert Layer::mClipRect to ParentLayerIntRect. r=botond
Change interface of getter/setter for mClipRect,
also necessary modification for codes that use these resources.

* * *
Bundle mUseClipRect and mClipRect as Maybe<ParentLayerIntRect> mClipRect

--HG--
extra : rebase_source : ca0c60404a28b7418df88104b863760033289910
2015-04-11 22:03:00 -04:00
Kartikaya Gupta 5116d7c5a8 Bug 1130982 - Ensure the clip rect on a multi-metrics layer belongs to the bottommost layer. r=botond
--HG--
extra : rebase_source : e4ccf248d3bd4ef4084e0077dc36a90cde4122a6
2015-03-11 13:36:12 -04:00
Kartikaya Gupta 80cdf96476 Bug 1137203 - Ignore the critical displayport when a layer is subject to OMTA relative to the scrolling ancestor. r=BenWa 2015-02-26 17:45:37 -05:00
Ryan VanderMeulen 3b9c7e5d7f Backed out changesets ddf965a90c07 and 305e676779f8 (bug 1137203) for being the likely cause of bug 1137952.
CLOSED TREE
2015-03-02 12:34:39 -05:00
Kartikaya Gupta 33c914a549 Bug 1137203 - Ignore the critical displayport when a layer is subject to OMTA relative to the scrolling ancestor. r=BenWa 2015-02-26 17:45:37 -05:00
Kartikaya Gupta 7fd26daa4a Bug 1131840 - Replace the shouldForceDispatchToContent flag with a bitset enum. r=roc,botond 2015-02-16 21:30:02 -05:00
Kartikaya Gupta e060658784 Bug 1125422 - Read the force-dispatch-to-content flag from the layer tree and use it in the APZ code. r=botond 2015-02-10 16:28:07 -05:00
Ehsan Akhgari 47c67459e2 Backed out changeset 11aebde6e809 (bug 1120059) because of build bustage on Windows 2015-01-13 00:26:16 -05:00
Birunthan Mohanathas 3bbc9f5d8f Bug 1120059 - Remove MOZ_{HAVE_,}EXPLICIT_CONVERSION. r=Waldo 2015-01-13 06:41:15 +02:00
Kartikaya Gupta a4e48972ee Bug 1090398 - Add support for using the layer event regions for hit testing. r=botond
When the event-regions are provided by layout, use them to populate the APZ-side
hit testing regions. The existing code is still used when event-regions are not
provided by layout.
2014-11-14 07:40:14 -05:00
Markus Stange 7d5a3be591 Bug 1073103 - Rename ThebesLayer to PaintedLayer. r=roc
--HG--
rename : gfx/layers/basic/BasicThebesLayer.cpp => gfx/layers/basic/BasicPaintedLayer.cpp
rename : gfx/layers/basic/BasicThebesLayer.h => gfx/layers/basic/BasicPaintedLayer.h
rename : gfx/layers/client/ClientThebesLayer.cpp => gfx/layers/client/ClientPaintedLayer.cpp
rename : gfx/layers/client/ClientThebesLayer.h => gfx/layers/client/ClientPaintedLayer.h
rename : gfx/layers/client/ClientTiledThebesLayer.cpp => gfx/layers/client/ClientTiledPaintedLayer.cpp
rename : gfx/layers/client/ClientTiledThebesLayer.h => gfx/layers/client/ClientTiledPaintedLayer.h
rename : gfx/layers/composite/ThebesLayerComposite.cpp => gfx/layers/composite/PaintedLayerComposite.cpp
rename : gfx/layers/composite/ThebesLayerComposite.h => gfx/layers/composite/PaintedLayerComposite.h
rename : gfx/layers/d3d10/ThebesLayerD3D10.cpp => gfx/layers/d3d10/PaintedLayerD3D10.cpp
rename : gfx/layers/d3d10/ThebesLayerD3D10.h => gfx/layers/d3d10/PaintedLayerD3D10.h
rename : gfx/layers/d3d9/ThebesLayerD3D9.cpp => gfx/layers/d3d9/PaintedLayerD3D9.cpp
rename : gfx/layers/d3d9/ThebesLayerD3D9.h => gfx/layers/d3d9/PaintedLayerD3D9.h
2014-09-26 13:06:08 -04:00