Commit Graph

284 Commits

Author SHA1 Message Date
Chih-Yi Leu
764bc7e2e7 Bug 1371190 - Part 5: Force enable alpha channel to prevent ANGLE from using incompatible backbuffer format. r=jgilbert
MozReview-Commit-ID: JtbKebUiroM
2017-09-06 10:50:14 +08:00
Kearwood "Kip" Gilbert
e1c2b94f20 Bug 1400407 - Part 3: Remove IsMirror concept, as it is no longer used by WebVR,r=jgilbert
- This patch is the same as one from Bug 1382104 (Remove IsMirror concept
  in favor of checking forwarder).
- It is safe to uplift this patch without the rest of Bug 1382104 as long
  as the remaining Bug 1381084 is also uplifted.

MozReview-Commit-ID: 21YZObeSUa3
2017-08-28 14:50:14 -07:00
Kearwood "Kip" Gilbert
633a57e221 Bug 1400457 - Isolate VR Rendering from Compositor r=daoshengmu,jgilbert
- WebVR is no longer dependent on PTexture, TextureParent,
  TextureHost, and TextureChild.  It continues to use TextureClient
  for pooling and coordinating locks with other Gecko code.
- PreserveDrawingBuffer now behaving correctly for 2d display mirroring
- Preparation for separating to VR process
MozReview-Commit-ID: 2RGOulCInSu
2017-07-21 17:30:34 -07:00
sotaro
170dd7af42 Bug 1402767 - Enable accleleration of GLScreenBuffer when WebRender is enabled r=jgilbert 2017-09-26 13:15:36 +09:00
Jonathan Watt
e3204e3c0c Bug 1401356, part 2 - Rename nsSVGEffects to SVGObserverUtils. r=longsonr 2017-08-30 15:58:31 +01:00
Jonathan Watt
7428c44f4d Bug 1401356, part 1 - Rename nsSVGEffects.h/.cpp to SVGObserverUtils.h/.cpp. r=longsonr 2017-08-30 14:14:46 +01:00
Daosheng Mu
c3a50cf2db Bug 1398404 - Make current context when updating max draw buffers; r=jgilbert
MozReview-Commit-ID: 1OSjjMwCpBb
2017-09-11 10:30:48 +08:00
Chung-Sheng Fu
47e83a94ee Bug 1217290 - Remove WebGLContext impl members r=daoshengmu,jgilbert
MozReview-Commit-ID: DPrjaf9QHfP
2017-07-27 15:48:58 +08:00
Chung-Sheng Fu
3def62ed03 Bug 1217290 - Remove WebGLContext::MinCapabilityMode r=daoshengmu,jgilbert
MozReview-Commit-ID: 8Ggsjm8ReeR
2017-07-27 15:48:35 +08:00
Nathan Froyd
cae73c2799 Bug 1378474 - part 2 - label WebGLQuery's AvailableRunnable; r=jgilbert,billm
If we have an associated canvas element, the query should go in the
queue of the associated document.
2017-08-23 10:39:40 -04:00
Morris Tseng
16a3e2389b Bug 1391136 - Handle context lost in layers-free mode. r=jgilbert
MozReview-Commit-ID: 1J0EggRmM4i
2017-08-18 15:13:29 +08:00
Phil Ringnalda
83da625710 Backed out 7 changesets (bug 1390386) for Android crashes in testSettingsPages
Backed out changeset 22b11f9aedd3 (bug 1390386)
Backed out changeset caffdbefd427 (bug 1390386)
Backed out changeset 3364e6589731 (bug 1390386)
Backed out changeset ed6857bdc17b (bug 1390386)
Backed out changeset 1314405cf812 (bug 1390386)
Backed out changeset 9d16670edeb5 (bug 1390386)
Backed out changeset d1286d0d2c79 (bug 1390386)

MozReview-Commit-ID: 3V3ZFwrNaGE
2017-08-17 21:06:05 -07:00
Jeff Gilbert
adeca1ff11 Bug 1390386 - Add GLContext::mImplicitMakeCurrent. - r=jrmuizel
MozReview-Commit-ID: 5iyGHNzoCpd
2017-08-17 16:15:48 -07:00
Jeff Gilbert
278be00a79 Bug 1388565 - Add webgl.1.allow-core-profiles, enabled for osx. - r=daoshengmu
MozReview-Commit-ID: 2PM6jkswzRU
2017-08-15 16:52:29 -07:00
Michael Smith
08071dae27 Bug 1373739 - Disable WebGL in headless mode. r=bdahl
MozReview-Commit-ID: LWe9hRh7zXX
2017-06-22 10:13:12 -07:00
Morris Tseng
cb1ff9368d 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
Kartikaya Gupta
14424677af Bug 1384233 - Remove SizePrintfMacros.h. r=froydnj
We have a minimum requirement of VS 2015 for Windows builds, which supports
the z length modifier for format specifiers. So we don't need SizePrintfMacros.h
any more, and can just use %zu and friends directly everywhere.

MozReview-Commit-ID: 6s78RvPFMzv
2017-07-26 16:03:57 -04:00
Nicholas Nethercote
e892cd86c4 Bug 1382099 - Remove MOZ_WIDGET_GONK from several dom/ subdirectories. r=mccr8,jdm.
As well as the obvious #ifdef stuff, the patch removes
TCPSocket::SetAppIdAndBrowser(), which means
{TCPSocketParent,TCPServerSocketParent}::{GetAppId,GetInIsolatedMozBrowser}()
can also be removed.
2017-07-21 10:52:44 +10:00
Samuel Vargas
5305ab7ccd Bug 1367613 - Track and spew synchronous/blocking GL call counts. r=jgilbert 2017-07-13 14:26:00 -04:00
Sebastian Hengst
f5b3dc485b Backed out changeset 020581c23b7d (bug 1367613) for gl error during test_conformance__extensions__webgl-debug-shaders.html. r=backout on a CLOSED TREE 2017-07-14 10:11:54 +02:00
Samuel Vargas
48406c0bce Bug 1367613 - Track and spew synchronous/blocking GL call counts. r=jgilbert 2017-07-13 14:26:00 -04:00
Samuel Vargas
1095089470 Bug 1367919 - Add tracking for data allocation calls in WebGL. r=jgilbert 2017-06-22 14:32:00 -04:00
Bill McCloskey
ce42826bdf Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Carsten "Tomcat" Book
238bf154d5 Backed out changeset 4f6302a98ae4 (bug 1372405) 2017-06-21 13:59:26 +02:00
Bill McCloskey
67e8af4720 Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
Carsten "Tomcat" Book
bbe9441993 Backed out changeset 9846de3bd954 (bug 1372405) 2017-06-20 08:27:02 +02:00
Bill McCloskey
f69608368b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-19 22:25:47 -07:00
dmu@mozilla.com
f78bcf501c Bug 1366941 - Checking LayersIPCChannel type when using recycled textureClient; r=nical
MozReview-Commit-ID: 94PQA67fvoJ
2017-05-24 11:01:45 +00:00
Phil Ringnalda
c42de12476 Backed out changeset ca6881983573 (bug 1366941) for build bustage
CLOSED TREE

MozReview-Commit-ID: DgThUZ2RpU
2017-06-01 20:05:48 -07:00
Daosheng Mu
20ec31aeb2 Bug 1366941 - Checking LayersIPCChannel type when using recycled textureClient; r=nical
MozReview-Commit-ID: AJUJIC2tkHC
2017-06-01 13:34:00 +08:00
Samuel Vargas
bff7f67642 Bug 1366423 - mDepthTestEnable should be initialized in WebGLContextValidate.cpp - r=jgilbert 2017-05-24 15:53:10 -07:00
Alessio Placitelli
5b71ca8e39 Bug 1346203 - Don't use an empty key for accumulating in CANVAS_WEBGL_FAILURE_ID. r=jrmuizel
MozReview-Commit-ID: 9S2UIEeTUi7
2017-04-18 11:57:53 +02:00
Jeff Gilbert
ef8acdb9c3 Bug 1355763 - Add gfxAlphaType for specifying opaque/premult/non-premult. - r=daoshengmu
MozReview-Commit-ID: Jzr8aPYlEcO
2017-04-13 09:14:34 -07:00
Iris Hsiao
191fdd1b09 Backed out changeset f97fd860c168 (bug 1355763) 2017-04-13 14:46:43 +08:00
Jeff Gilbert
37d512e4b7 Bug 1355763 - Add gfxAlphaType for specifying opaque/premult/non-premult. - r=daoshengmu
MozReview-Commit-ID: Jzr8aPYlEcO
2017-04-12 22:03:43 -07:00
Daosheng Mu
44fddc6c71 Bug 1349102 - Making read back buffer use the default framebuffer when doing snapshot; r=jgilbert
MozReview-Commit-ID: EGaopHztAex
2017-04-10 17:45:46 +08:00
Jeff Gilbert
52c8736666 Bug 1333858 - Intersect should be fallible on overflow. - r=daoshengmu
MozReview-Commit-ID: 6lmIKKyXXah
2017-04-04 12:56:21 -07:00
Paul Bignier
0247406403 Bug 1309200 - Use GetSoftwareBackend in dom. r=nical 2017-02-26 20:38:24 +01:00
Sebastian Hengst
e1398d7ecc Backed out changeset 5f62af954609 (bug 1333858) for bustage. r=backout on a CLOSED TREE 2017-03-22 22:50:54 +01:00
Jeff Gilbert
5d78b3a6fc Bug 1333858 - Intersect should be fallible on overflow. r=daoshengmu
MozReview-Commit-ID: 6lmIKKyXXah
2017-03-22 17:07:25 -04:00
Jeff Gilbert
090f800823 Bug 1339256 - Only request robustness if requested on EGL - r=daoshengmu
MozReview-Commit-ID: GlMpalFwS2U
2017-03-09 18:57:47 -08:00
vincentliu
bb34f79d08 Bug 1343851 - Add nullptr check for SurfaceFactory in StartVRPresentation. r=mtseng 2017-03-10 09:30:49 +08:00
Milan Sreckovic
cfab62f98f Bug 1341959: Part 2. Check if WebGL2 is blocked before creating it. r=jgilbert
MozReview-Commit-ID: Div1umXOMV
2017-03-02 15:48:12 -05:00
Iris Hsiao
248efb688e Backed out changeset 87bf65872b56 (bug 1341959) for xpcshell failures 2017-03-02 11:53:44 +08:00
Milan Sreckovic
68ea9bc6cd Bug 1341959: Part 2. Check if WebGL2 is blocked before creating it. r=jgilbert
MozReview-Commit-ID: 7ZsVKpP5V6j
2017-02-24 14:14:46 -05:00
Tom Tromey
3b7c8c14e5 Bug 1060419 - make WebGLContextUtils.cpp use VsprintfLiteral, r=froydnj
MozReview-Commit-ID: JhwopeIpUMo
2016-12-09 13:48:22 -10:00
Jeff Gilbert
182a6c0469 Bug 1329815 - GeneratePerfWarning and warn on completed-FB invalidation. - r=kvark
MozReview-Commit-ID: C9J3qdnsaZF
2017-01-17 17:44:56 -08:00
kvark
53b1c8feb3 Bug 1278199 - Reset viewport offset on SetDimensions and clamp to MAX_VIEWPORT_DIMS. r=jgilbert 2017-01-10 14:15:00 -05:00
Jeff Gilbert
de3f24bacc Bug 1326159 - Update TF buffer restrictions. - r=daoshengmu
Update conformance2/buffers/bound-buffer-size-change-test.html to top-of-tree 2.0.0.

MozReview-Commit-ID: CgfP70Y0wul
2016-12-30 03:30:13 -08:00
Jeff Gilbert
beb7eae90d Bug 1325301 (flattened) - Validate attribute base types match data base types. - r=bz,daoshengmu
Flattened with:
* Clean up generic vertex attribs. - r=bz,daoshengmu
* Remove EnsureAttrib() and friends. - r=daoshengmu
* Simplify EnumName behavior and usage and add ErrorInvalidEnumArg(). - r=daoshengmu
2016-12-29 02:46:46 -08:00