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

84 Коммитов

Автор SHA1 Сообщение Дата
Alexis Beingessner c3946e70ab Bug 1406231 - remove the TextLayer class, and all remaining traces of it. r=mattwoodrow
MozReview-Commit-ID: 5fmKfkO6hnO

--HG--
extra : rebase_source : ac74903f6929f21cd70d66a9fb756fcea120f11e
2017-12-07 17:13:05 -05:00
Milan Sreckovic 099cfc4242 Bug 1423570: Use BaseRect access methods instead of member variables in gfx/ r=bas.schouten
MozReview-Commit-ID: ZGySgc9oP3

--HG--
extra : rebase_source : 23aadc10e9885002290155684b2c495780d979ce
2017-12-19 15:48:39 -05:00
Cosmin Sabou 9937354d94 Backed out changeset 497efe3a096b (bug 1406231) for windows build bustages on build\build\src\obj-firefox\dist\include\mozilla/layers/ScrollingLayersHelper.h(48) r=backout on a CLOSED TREE 2017-12-08 13:04:05 +02:00
Alexis Beingessner 90d0f66f33 Bug 1406231 - remove the TextLayer class, and all remaining traces of it. r=mattwoodrow
MozReview-Commit-ID: 5fmKfkO6hnO

--HG--
extra : rebase_source : 4749bff0a8d799f7a81d9f6e32e40e14b9f24191
2017-12-07 17:13:05 -05:00
David Anderson 9b858fefcd Add high-res tiling support to Advanced Layers. (bug 1420674 part 5, r=mattwoodrow)
--HG--
extra : rebase_source : b5448c63830ce9e09c0602262f7664ce363e53c0
2017-11-29 21:12:26 -08:00
David Anderson 9db213330c Override PaintedLayerMLGPU::AssignToView in preparation for supporting TiledContentHost. (bug 1420674 part 4, r=mattwoodrow)
--HG--
extra : rebase_source : 8d0d97a20c470fe67ecad6f974274c897fbc7850
2017-11-29 21:12:25 -08:00
David Anderson 79f2acf874 Fix ComponentAlphaPass for painted layers with multiple textures. (bug 1420674 part 2, r=rhunt).
--HG--
extra : rebase_source : ae6624ab8b7c28d0a4c8fe2354dc5076fced04ee
2017-11-29 21:12:25 -08:00
David Anderson c9d035c90f Don't hardcode ContentHostTexture in PaintedLayerMLGPU. (bug 1420674 part 1, r=rhunt)
--HG--
extra : rebase_source : 625dbec58f01ba1f2d42fde0c048c2373b5c5674
2017-11-29 21:12:24 -08:00
Csoregi Natalia 8a2bcaea6d Backed out 5 changesets (bug 1420674) for Build Bustage. r=backout on a CLOSED TREE
Backed out changeset 89e84473d524 (bug 1420674)
Backed out changeset 22e1aa958dd2 (bug 1420674)
Backed out changeset 7f416f3bbacd (bug 1420674)
Backed out changeset 5af1da25ee57 (bug 1420674)
Backed out changeset eeb25dc98529 (bug 1420674)
2017-11-29 06:03:31 +02:00
David Anderson ce6acee07d Add high-res tiling support to Advanced Layers. (bug 1420674 part 5, r=mattwoodrow) 2017-11-28 18:34:59 -08:00
David Anderson 6bfb90d614 Override PaintedLayerMLGPU::AssignToView in preparation for supporting TiledContentHost. (bug 1420674 part 4, r=mattwoodrow) 2017-11-28 18:34:59 -08:00
David Anderson cf981e7ff0 Fix ComponentAlphaPass for painted layers with multiple textures. (bug 1420674 part 2, r=rhunt). 2017-11-28 18:34:58 -08:00
David Anderson af51bf9ed7 Don't hardcode ContentHostTexture in PaintedLayerMLGPU. (bug 1420674 part 1, r=rhunt) 2017-11-28 18:34:58 -08:00
David Anderson 32a0c40657 Don't treat resampled layers as entirely opaque. (bug 1412078, r=mattwoodrow) 2017-11-06 12:18:01 -08:00
Chris Peterson 84d577e4a4 Bug 1412048 - Remove NS_RUNTIMEABORT. r=froydnj
Use MOZ_CRASH, MOZ_CRASH_UNSAFE_OOL, or MOZ_CRASH_UNSAFE_PRINTF instead.

MozReview-Commit-ID: 1kCCHMlgbGP

--HG--
extra : rebase_source : 2f07ced16bccebf30cd3b2b5fea35e9868d32dad
extra : source : 0bf2c8425b828e71de55dd175fd0dad635b4e67d
2017-10-24 23:41:15 -07: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
Daniel Holbert ecf5ee687e Bug 1412427 part 4: Indent under-indented MPL boilerplate comments by 1 space, for consistency & alignment. (whitespace-only) r=jrmuizel
This patch was automatically generated. I found the files to be fixed in this
patch with the following command:
grep -r "^\* This Source Code" gfx

...and then I modified each of these files with the following script
(where $1 is the filename to be modified):
###
line1="\* This Source Code Form is subject to the terms of the Mozilla Public"
line2="\* License, v\. 2\.0\. If a copy of the MPL was not distributed with this"
line3="\* file, You can obtain one at http://mozilla\.org/MPL/2\.0/\. \*/"

# Insert 1 space at beginning:
sed -i s%"^$line1"%" $line1"% $1
sed -i s%"^$line2"%" $line2"% $1
sed -i s%"^$line3"%" $line3"% $1
###

MozReview-Commit-ID: HXBMrfnhlVr

--HG--
extra : rebase_source : de4c78563711f8366e2978c5199a5041875fbe38
2017-10-27 15:55:37 -07:00
David Anderson 8cd7b1c9be Cache invalidation properties after compositing, not before. (bug 1408781 part 2, r=mattwoodrow) 2017-10-20 15:09:13 -07:00
David Anderson d2ae9a5558 Store the AL render region separately from the shadow visible region. (bug 1408781 part 1, r=mattwoodrow) 2017-10-20 15:09:12 -07:00
Sebastian Hengst ad8006bcb6 Backed out changeset fd03410adaba (bug 1408781) for build bustage at gfx/layers/mlgpu/PaintedLayerMLGPU.h:62: 'SetRenderRegion' overrides a member function but is not marked 'override'. r=backout on a CLOSED TREE
--HG--
extra : amend_source : 6c4a95d8314f969e2b449381ae14378e9e6bd7a8
2017-10-20 20:52:56 +02:00
Sebastian Hengst 41d5742833 Backed out changeset 4d2c317e3936 (bug 1408781) 2017-10-20 20:52:50 +02:00
David Anderson adbf5d8b01 Cache invalidation properties after compositing, not before. (bug 1408781 part 2, r=mattwoodrow)
--HG--
extra : rebase_source : c9763856b7686253e15d9072d93ed787a79b50b0
2017-10-20 10:31:46 -07:00
David Anderson e5f304d59f Store the AL render region separately from the shadow visible region. (bug 1408781 part 1, r=mattwoodrow)
--HG--
extra : rebase_source : 14c97296ca7dbe638179476abbe3c8eada5e159a
2017-10-20 10:31:46 -07:00
David Anderson 8b7a345004 Scissor the visible region for intermediate surfaces that require redraw. (bug 1408566 part 2, r=mattwoodrow)
--HG--
extra : rebase_source : 168a5f49f127b238d386d636b3d4b1bf675d2958
2017-10-17 15:06:12 -07:00
David Anderson 60356f36f8 Fix a coordinate space bug when composing some intermediate surfaces. (bug 1408566 part 1, r=mattwoodrow)
--HG--
extra : rebase_source : 15cb14238efe834e3c5f8e150d9e13d04cd9c967
2017-10-17 15:06:12 -07:00
David Anderson ef626c4458 Support component-alpha for intermediate surfaces in Advanced Layers. (bug 1402737 part 2, r=mattwoodrow)
--HG--
extra : rebase_source : dc2121d9f479f8c75237cae8ad4ea9f751f42ab6
2017-10-10 17:39:42 -07:00
David Anderson 2b8bc13b5c Remove the ability for LayerManagers to disable complex component alpha cases. (bug 1402737 part 1, r=mattwoodrow)
--HG--
extra : rebase_source : be0a1fb30936acb12d74953b4e599b107b0a0db2
2017-10-10 17:39:41 -07:00
David Anderson cac14c2173 Fix shutdown leak in TextureSourceProviderMLGPU. (bug 1398304, r=bas) 2017-09-22 09:48:12 -07:00
David Anderson 7723f663ea Bypass DecomposeIntoNoRepeatRects when possible. (bug 1396507 part 3, r=mattwoodrow)
--HG--
extra : rebase_source : 7e251cceb9b380b3fbe090090ded085a6b83df50
2017-09-13 09:30:26 -04:00
David Anderson 43bdfcc4d2 Clean up how textured regions are added to draw calls. (bug 1396507 part 2, r=mattwoodrow)
--HG--
extra : rebase_source : 671b6887d2772cd9045359f753ab0edb95a85698
2017-09-13 09:29:50 -04:00
David Anderson e58695c682 Clamp the visible region of ImageLayers to the picture rect. (bug 1396507 part 1, r=mattwoodrow)
--HG--
extra : rebase_source : 193aeefd657c1a4066dc6dfaa35c00e34e574ef6
2017-09-13 09:29:00 -04:00
Milan Sreckovic e3cd0a3157 Bug 1387514: Upgrade BaseRect (derived classes) width and height direct member variable use to instead use Width()/SetWidth() and Height()/SetHeight() in .cpp files in gfx/*. r=milan
MozReview-Commit-ID: 1jESowJKdyp

--HG--
extra : rebase_source : 3839cdea46729a9af05c777215cffcb9f42a2018
2017-08-14 08:29:28 -04:00
JerryShih 339fc2e58c Bug 1357299 - P7: Fix unified-build build break. r=mattwoodrow
MozReview-Commit-ID: GSUxyWUfBVt
2017-08-07 18:15:23 +08:00
David Anderson 783e6ecfd6 Add diagnostics for the crash in bug 1387467. r=milan 2017-08-05 01:32:25 -07:00
Sebastian Hengst f257cde65c Backed out changeset c044d8842861 (bug 1387467) for build bustage at FrameBuilder.cpp:154 (no member GetName). r=backout on a CLOSED TREE 2017-08-05 11:54:09 +02:00
David Anderson 20c4bd2549 Add diagnostics for the crash in bug 1387467. r=milan 2017-08-05 01:32:25 -07:00
David Anderson 2cc63ceef3 Handle invalidation bounds overflow in ContainerLayerMLGPU. (bug 1345891 part 3, r=mattwoodrow) 2017-08-03 21:22:49 -07:00
David Anderson bb8c6e5f61 Handle bounds overflow in consumers of LayerTreeInvalidation. (bug 1345891 part 2, r=mattwoodrow) 2017-08-03 21:22:48 -07:00
David Anderson 79f94b4bc8 Skip over layers with degenerate transforms. (bug 1381352, r=mattwoodrow) 2017-08-02 23:48:44 -07:00
Morris Tseng f3d4ff499f Bug 1379920 - Introduce CanvasRenderer and its derived classes. r=nical,jrmuizel
This patch move common canvas interfaces out of layer. So I create a
base class CanvasRenderer which move interfaces from CanvasLayer.
CopyableCanvasRenderer from CopyableCanvasLayer, ClientCanvasRenderer
from ClientCanvasLayer and WebRenderCanvasRenderer from
WebRenderCanvasLayer. And finally, WebRenderCanvasRendererSync for the
non layers free mode and WebRenderCanvasRendererAsync for the layers
free mode.

Summary all changes in this patch.
* Move class CanvasLayer::Data to CanvasRenderer.h and rename it to
CanvasInitializeData. Because this class not only use by layer but also
* Move BasicCanvasLayer::UpdateSurface to
CopyableCanvasRenderer::ReadbackSurface.
* CanvasClient::Update now accepts ShareableCanvasRenderer as parameter.
not CanvasLayer.
use by layers-free mode. Move it out of layer's class makes more sense.
* Add InitializeCanvasRenderer in the canvas related classes to
initialize CanvasRenderer without involved layer.
* All canvas layer has function "CreateCanvasRendererInternal" that
initialize corresponding CanvasRenderer.

* Description of all CanvasRenderer classes:
** CanvasRenderer: Based classes.
** CopyableCanvasRenderer: Can readback canvas content to a
SourceSurface. Use by BasicCanvasLayer.
** ShareableCanvasRenderer: Provide IPC capabilities that allow sending
canvas content over IPC. This is pure virtual class because the IPC handling is
different in different LayerManager.
** ClientCanvasRenderer: Implement IPC handling for ClientLayerManager.
Use by ClientCanvasLayer.
** WebRenderCanvasRenderer: Implement IPC handling for
WebRenderLayerManager.
** WebRenderCanvasRendererSync: Use by WebRenderCanvasLayer.
** WebRenderCanvasRendererAsync: Use by layers-free mode in WebRender.

class diagram shows below:

                      +--------------+
                      |CanvasRenderer|
                      +-------+------+
                              ^
                              |
                  +----------------------+
                  |CopyableCanvasRenderer|
                  +----------------------+
                              ^
                              |
                  +-----------+-----------+
                  |ShareableCanvasRenderer|
                  +-----+-----------------+
                        ^      ^
          +-------------+      +-------+
          |                            |
+--------------------+       +---------+-------------+
|ClientCanvasRenderer|       |WebRenderCanvasRenderer|
+--------------------+       +--------+--+-----------+
                                      ^  ^
              +-----------------------+  +----+
              |                               |
+-------------+-------------+   +-------------+--------------+
|WebRenderCanvasRendererSync|   |WebRenderCanvasRendererAsync|
+---------------------------+   +----------------------------+

MozReview-Commit-ID: 5hqQ19W169r
2017-08-03 13:55:14 +08:00
Morris Tseng c956c9f91d Bug 1379920 - Fix unified build error. r=nical
MozReview-Commit-ID: Dx50fOh737p
2017-08-03 13:55:13 +08:00
David Anderson ba247834e2 Always visit children of container layers, in case they have asynchronous animations outside of the precomputed visible bounds. (bug 1382382, r=mattwoodrow) 2017-08-02 14:24:13 -07:00
David Anderson c5e4aacb3f Handle resampled painted layers after occlusion culling. (bug 1385961, r=mattwoodrow)
--HG--
extra : rebase_source : 239abc310f202c527f0f1cb64f5d2d01cd3be15a
2017-08-01 15:40:32 -07:00
Wes Kocher 3c2dc39278 Merge m-c to inbound, a=merge
MozReview-Commit-ID: BgPWEtPV0sy
2017-07-31 17:49:47 -07:00
David Anderson 264a0b8e7e Fix a coordinate space bug in the cached invalid region of container layers. (bug 1381666 part 3, r=mattwoodrow) 2017-07-31 12:28:54 -07:00
David Anderson 4d45c02ee0 Add helper functions for dumping MLGTextures as files. (bug 1381666 part 2, r=mattwoodrow) 2017-07-31 12:28:41 -07:00
David Anderson b05dbf58c2 Add helpers for debugging Advanced Layers with RenderDoc. (bug 1381666 part 1, r=mattwoodrow) 2017-07-31 12:28:26 -07:00
Botond Ballo 50e175b0bc Bug 1105109 - Fix unified compilation errors. r=kats
MozReview-Commit-ID: DB3JNwlE3Dw

--HG--
extra : rebase_source : 3d0a92cb9f7dd850d25d6d7b5fbe6eb3291e0d67
2017-07-28 20:17:19 -04:00
David Anderson 4ccde3c049 Silence spurious Advanced Layers warnings in the D3D11 debug layer. (bug 1383326, r=bas) 2017-07-25 22:34:29 -07:00
Ethan Lin a48f3ac6fe Bug 1378602 - Part2. Move animation data from layer to AnimationInfo. r=kats
MozReview-Commit-ID: 4gv8EfPgsii
2017-07-21 14:21:47 +08:00