Commit Graph

299 Commits

Author SHA1 Message Date
Jeff Gilbert
43811d97a3 Bug 1427668 - Assert that no-alpha backbuffers have 0xff alpha. - r=daoshengmu
MozReview-Commit-ID: 5UJdoud0f2C
2018-01-05 15:27:51 -08:00
Jeff Gilbert
07929f6e62 Bug 1427668 - Lose context if EnsureDefaultFB fails. - r=daoshengmu
MozReview-Commit-ID: 8OqXYXpUv4I
2018-01-05 15:27:48 -08:00
Jeff Gilbert
83886d1975 Bug 1427668 - ColorMask(0xf) for backbuffer resolve. - r=daoshengmu
MozReview-Commit-ID: KZJZ0Lc0vbC
2018-01-05 15:27:36 -08:00
Jeff Gilbert
683e75beaf Bug 1427668 - Move the webgl backbuffer into webgl. - r=daoshengmu
MozReview-Commit-ID: 2WpG7mfMRQ8
2018-01-05 15:27:30 -08:00
Jamie Nicol
66b580d032 Bug 1421481 - Post-review follow-up for webgl context initialization. r=jgilbert
MozReview-Commit-ID: Ja3t0gcWHZS
2018-01-04 13:38:47 +00:00
Jeff Gilbert
acda6087b5 Bug 1426280 - Remove explicit MakeCurrents from WebGL now that we use implicit MakeCurrent. - r=lenzak
MozReview-Commit-ID: HxWWPmD1Yzu
2017-12-19 22:28:49 -08:00
Jamie Nicol
4038aec0be Bug 1421481 - Increase allowed number of webgl contexts on mobile. r=snorp
This was previously limited to 2 per principal and 4 total on
mobile. Mobile GPU drivers have progressed a lot since the limit was
put in place, and the strict limit is causing webcompat issues on
google maps.

Increase to 8 per principal and 16 in total, bringing us
closer in line with Chrome. Make these limits contrallable via a pref
so that if there are any problems it is easy to change.

MozReview-Commit-ID: 8Tsbrjr4KCE
2017-11-30 11:40:57 +00:00
Jeff Gilbert
d73f054af9 Bug 1390386 - Add GLContext::mImplicitMakeCurrent. - r=jrmuizel
MozReview-Commit-ID: 5iyGHNzoCpd
2017-11-28 17:12:48 -08:00
Daosheng Mu
6e9fa6fd05 Bug 1413269 - Apply REQUIRE_COMPAT_PROFILE flag for WebGL 1 on Intel HD Grahpics 3000 on OSX. - r=jgilbert
MozReview-Commit-ID: FZzZpaU9uiv
2017-11-24 16:51:37 +08:00
Sylvestre Ledru
c240d131cb Bug 1408383 - Dead code in GetSurfaceSnapshot r=jgilbert
MozReview-Commit-ID: 2AS1OwFdiMq
2017-10-13 15:32:22 +02:00
Jeff Gilbert
8bc4b69aad Bug 1404196 - Simplify and repair vertex fetch. - r=daoshengmu
MozReview-Commit-ID: FL7uibuv4VY
2017-11-01 15:18:27 -07:00
sotaro
92141c5439 Bug 1401609 - Add UpdateWebRenderCanvasData() to handle CanvasRenderer re-creation r=jrmuizel,mstange 2017-10-28 19:07:27 +09:00
Chih-Yi Leu
50474bbb81 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
Kyle Machulis
e579fad77f Bug 1403819 - Remove nsIDOMHTMLCanvasElement; r=bz
Removes the XPCOM interface for nsIDOMHTMLCanvasElement, replacing it
with binding class usage.

MozReview-Commit-ID: DQJhqGlY8U6
2017-10-06 10:49:26 -07:00
Sebastian Hengst
8cdc6e3c20 Backed out changeset 85a3dd1433e2 (bug 1371190) 2017-10-06 15:29:34 +02:00
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