Chris Jones
cfdff93df0
Bug 648484, part 9: Make LayerManagerD3D10 a shadow-layer manager and forwarder. r=Bas
2011-08-09 12:38:26 -07:00
Chris Jones
d5c4f07060
Bug 648484, part 8: Implement a very basic shadow thebes layer for D3D10, only enough to support the upcoming WindowLayer. r=Bas
2011-08-09 12:38:26 -07:00
Chris Jones
e119678c6c
Bug 648484, part 7: Implement a very basic shadow container layer for D3D10, only enough to support the upcoming WindowLayer. r=Bas
2011-08-09 12:38:26 -07:00
Chris Jones
c55298d9ae
Bug 648484, part 6: Add code to share D3D10 textures across processes. r=Bas
2011-08-09 12:38:26 -07:00
Chris Jones
12b80c293a
Bug 648484, part 4: Log layers transactions in the d3d10 backend. r=Bas
2011-08-09 12:38:26 -07:00
Chris Jones
a3317162ef
Bug 648484, parts 3, 3.1, and 3.2: Allow passing a "backend hint" to GetLayerManager() to request a non-default layer manager backend. Deal with failure to hook up shadow layers. sr=roc
2011-08-09 12:38:26 -07:00
Chris Jones
8786c55e3f
Bug 648484, part 2: Add various helpers, refactor ContainerLayer::SetSpecificAttributes. r=roc
2011-08-09 12:38:26 -07:00
Chris Jones
fe42f83e74
Bug 648484, part 1: Fix some warning spam. r=roc
2011-08-09 12:38:26 -07:00
Florian Haenel
c543f5d68b
Bug 669602 - Fennec/OGL: Paint Artifacts on chrome pages background after scrolling. r=joe,roc
2011-08-09 11:38:05 -04:00
Matt Woodrow
343093175d
Bug 675073 - Release OpenGL textures with the global context if the creating context has been destroyed. r=joe
2011-08-05 13:13:25 +12:00
Matt Woodrow
6b3e01d5ec
Bug 655017 - Let gfxXlibSurface track GLXPixmaps and use this for CanvasLayerOGL. r=karlt, roc
2011-08-05 13:13:25 +12:00
Matt Woodrow
cd05bbfd33
Bug 505115 - Part 7 - Layers support for 3d transforms. r=roc
2011-08-03 15:04:20 +12:00
Marco Bonardo
b818d65b85
Merge mozilla-central and mozilla-inbound
2011-07-29 13:46:15 +02:00
Benoit Jacob
2bc65bec27
Bug 674042 - WebGL: crash in getUniformLocation with too long uniform identifiers - r=jrmuizel
...
This limits the length of uniform and attrib identifiers to 4095 characters, to steer clear GL implementation bugs with too long identifiers. The 4095 is totally arbitrary, all we know is that crashes happen after 2^22 chars.
2011-07-28 17:12:31 -04:00
Jeffrey Gilbert
a50f06d79d
Bug 674731 - WebGL/ANGLE interop with D3D layers requests incorrect extension - r=bjacob
2011-07-28 16:37:58 -04:00
Scott Ruff
a1835137c8
Bug 649525 - WebGL layer compositing through the BasicCanvasLayer is very slow (desktop version). r=jmuizelaar
2011-07-27 13:00:17 +02:00
Matthew Gregan
db3428cfec
Bug 672755 - Add memory reporters for decoded video and audio queues. r=cpearce r=joe
2011-07-22 15:17:23 +12:00
Matt Woodrow
ba6834dec3
Bug 670573 - Add glTex(Sub)Image2D wrappers that correctly handle stride and alignment. r=derf
2011-07-25 19:32:56 +12:00
Matt Woodrow
071b50617b
Backed out changeset 39fef2383893
2011-07-25 13:18:23 +12:00
Matt Woodrow
0b746c54ed
Bug 670573 - Add glTex(Sub)Image2D wrappers that correctly handle stride and alignment. r=derf
2011-07-25 12:50:00 +12:00
arno renevier
5388ac92cf
Bug 669299 - Remove unneeded nsPrintfCString.h includes. r=bsmedberg
2011-07-21 04:37:31 +02:00
Oleg Romashin
7d3e811adb
Bug 671986 - ImageLayerOGL does not apply offset/transform for layer r=jrmuizel
2011-07-17 12:07:41 +02:00
Chris Jones
d8c3256765
Merge backout
2011-07-15 11:36:22 -07:00
Chris Jones
24f027292c
Back out bug 648484
2011-07-15 11:35:55 -07:00
Chris Jones
d827503aa5
Bug 648484, part E: Hook d3d9 shadow layers up to new system. r=BenWa
2011-07-06 13:29:27 -04:00
Chris Jones
935a393f3a
Bug 648484, part C: Forward a shadow-layer transaction after rendering in the D3D10 backend, if remote. r=joedrew
...
* * *
Unrot bug 648484. r=Bas. To be folded.
2011-07-13 22:43:43 -07:00
Chris Jones
bdfb401e6b
Bug 648484, part B: Implement shadowable layer goop for D3D10, just enough to allow sending a window buffer to the compositor. r=Bas
2011-07-13 22:43:43 -07:00
Chris Jones
cb2ee3417a
Bug 648484, part A: Allow D3D10 layers to render directly to a share-able texture. r=Bas
2011-07-13 22:43:43 -07:00
Chris Jones
8325aff847
Bug 648484, part 9: Make LayerManagerD3D10 a shadow-layer manager and forwarder. r=Bas
2011-07-13 22:43:43 -07:00
Chris Jones
0a936edcc7
Bug 648484, part 8: Implement a very basic shadow thebes layer for D3D10, only enough to support the upcoming WindowLayer. r=Bas
2011-07-13 22:43:43 -07:00
Chris Jones
9037e7684c
Bug 648484, part 7: Implement a very basic shadow container layer for D3D10, only enough to support the upcoming WindowLayer. r=Bas
2011-07-13 22:43:43 -07:00
Chris Jones
e77d94694c
Bug 648484, part 6: Add code to share D3D10 textures across processes. r=Bas
2011-07-13 22:43:43 -07:00
Chris Jones
46987600ab
Bug 648484, part 4: Log layers transactions in the d3d10 backend. r=Bas
2011-07-13 22:43:43 -07:00
Chris Jones
289ccdf1c6
Bug 648484, part 3 and part 3.1: Allow passing a "backend hint" to GetLayerManager() to request a non-default layer manager backend. Deal with failure to hook up shadow layers. sr=roc
2011-07-13 22:43:43 -07:00
Chris Jones
7e90855ae8
Bug 648484, part 2: Add various helpers, refactor ContainerLayer::SetSpecificAttributes. r=roc
2011-07-13 22:43:43 -07:00
Chris Jones
7a11870b91
Bug 648484, part 1: Fix some warning spam. r=roc
2011-07-13 22:43:43 -07:00
Matt Woodrow
b154d14e64
Bug 670106 - Check the surface type before attempting to create a GLXPixmap. r=joe
2011-07-15 08:45:33 +12:00
Jacek Caban
3cdbb68a2e
Bug 670913 - LayerManagerD3D10.h fails to compile on mingw (r=joe)
2011-07-13 17:58:17 +02:00
Benoit Girard
952c2f25af
Bug 663259 - Enable Mac Async plugin by default. r=cjones,mattwoodrow
...
--HG--
extra : rebase_source : 6d397273f10e659a08125b3861e1651a3994aaa0
2011-07-12 10:31:18 -04:00
Robert O'Callahan
26c67a621c
Bug 649924. Use image surfaces to implement canvases beyond the texture size limit. r=bas
2011-07-08 22:42:21 +12:00
Florian Haenel
32ba480e5b
Bug 607687 - Fennec should take care about Texture MAX size HW limitation r=jmuizelaar
2011-07-06 11:00:47 -07:00
Matt Woodrow
dbbef6ee35
Bug 656185 - Part 4 - Upload the entire image for PlanarYCbCrImageD3D10 to a texture and clip using texture coordinates. r=Bas
2011-07-05 14:52:50 +12:00
Matt Woodrow
dd264db48d
Bug 656185 - Part 3 - Upload the entire image for PlanarYCbCrImageD3D9 to a texture and clip using texture coordinates. r=Bas
2011-07-05 14:52:34 +12:00
Matt Woodrow
89e737996c
Bug 656185 - Part 2 - Upload the entire image for PlanarYCbCrImageOGL to a texture and clip using texture coordinates. r=derf
2011-07-05 14:52:00 +12:00
Matt Woodrow
7ab3748569
Bug 656185 - Part 1 - Move BindAndDrawQuadWithTextureRect into LayerManagerOGL. r=joe
2011-07-05 14:50:38 +12:00
Benoit Girard
9c46ca57c5
Bug 636707 - Check for null MacIOSurfaceImageOGL. r=mattwoodrow
2011-07-04 09:51:37 -04:00
Benoit Girard
dd61f3a2ea
Bug 648480 - Add shadow-layer support to d3d9 backend. r=cjones
2011-07-04 09:15:05 -04:00
Benoit Girard
069dc7b333
Backout 627489bb6288.
2011-07-01 18:05:54 -04:00
Benoit Girard
c83b82cbd1
Bug 648480 - Add shadow-layer support to d3d9 backend. r=cjones
2011-07-01 16:57:15 -04:00
Matt Woodrow
cc66446a05
Back out bug 656185 due to windows compile failures
2011-06-27 15:21:22 +12:00
Matt Woodrow
31412c006b
Bug 656185 - Part 4 - Fix for D3D9. r=Bas
2011-06-27 14:32:42 +12:00
Matt Woodrow
379c7e6f82
Bug 656185 - Part 3 - Fix for D3D10. r=Bas
2011-06-27 14:32:34 +12:00
Matt Woodrow
8aba398b72
Bug 656185 - Part 2 - Handle odd crop offsets correctly with OpenGl. r=derf
2011-06-27 14:32:16 +12:00
Matt Woodrow
9376e72c7e
Bug 656185 - Part 1 - Move BindAndDrawQuadWithTextureRect into LayerManagerOGL. r=joe
2011-06-27 14:32:06 +12:00
Bas Schouten
bfb8808747
Bug 651858 - Part 5: Add CanvasLayer code for azure. r=jrmuizel
2011-06-24 19:41:18 +02:00
Bas Schouten
933cae4fbb
Bug 651858 - Part 4: Implement API for creating a D3D10 compatible DrawTarget. r=roc
2011-06-24 19:41:18 +02:00
Bas Schouten
58d40df2a4
Bug 651858 - Part 3: Add layers API for creating an optimal DrawTarget. r=roc
2011-06-24 19:41:18 +02:00
Jeff Muizelaar
9c940cc534
Bug 662649. DrawFPS: Make the conversion loop easier to follow. r=joe
2011-06-22 14:53:11 -04:00
Jeff Muizelaar
d2cc193c0b
Bug 662649. DrawFPS: Add a comment about why DrawFPS is a little weird.
2011-06-22 14:49:31 -04:00
Jeff Muizelaar
f15d555c8f
Bug 662649. DrawFPS: Make sure we use a 32 bit type instead of a 64 bit one. r=joe
...
This was causing badness on platforms where unsigned long is 64 bits.
2011-06-22 14:46:27 -04:00
Jeff Muizelaar
e70b966d11
Bug 662649. DrawFPS: free leaked buffer. r=joe
...
glTexImage2D will keep a copy of this data around so we don't have to.
2011-06-22 14:43:52 -04:00
Robert O'Callahan
ae6647d4d2
Bug 637852. Part 26: Ensure that FrameMetrics coordinates are correctly stored as layer coordinates. r=tnikkel
2011-06-23 00:11:28 +12:00
Robert O'Callahan
0c48fabd49
Bug 637852. Part 18: Support computing the "residual transform" for a ThebesLayer --- the difference between its snapped transform and the ideal transform --- and use it to align ThebesLayer drawing for transforms that aren't changing. r=tnikkel
...
This fixes bug 637597 and probably other bugs.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
7f64e9bccf
Bug 637852. Part 10: Remove mX/YResolution from ThebesLayer. r=joe
...
These are the last vestiges of Layer-based resolution API.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
0cc6be313b
Bug 637852. Part 9: Remove resolution support from BasicLayers, ShadowLayers and GL layers. r=mattwoodrow
...
This is not needed anymore.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
64c5e295e0
Bug 637852. Part 8: Remove resolution support from D3D9 layers. r=mattwoodrow
...
Layer-system resolution support is no longer needed.
2011-06-23 00:11:27 +12:00
Robert O'Callahan
0041df680e
Bug 637852. Part 7: Remove resolution support from D3D10 layers. r=mattwoodrow
...
Layer-system resolution support is no longer needed.
2011-06-23 00:11:27 +12:00
Robert O'Callahan
2685eb6583
Bug 637852. Part 1: Don't snap BasicThebesLayer effective transforms when we're not retaining layers. r=tnikkel
...
The ThebesLayer contents are going to be drawn through directly without retaining, so there's no point in snapping.
2011-06-23 00:11:27 +12:00
Oleg Romashin
dea57d8792
Bug 660565 - HTML5 HW accelerated video is slow r=roc
...
--HG--
extra : rebase_source : 5a46d17c72caf5ec4afd3f59093be803008c61ec
2011-06-16 12:51:05 +02:00
Neil Rashbrook
747f874cd4
Bug 660525 Remove useless uses of PromiseFlatString (prev cset lacked the code changes) r=joedrew!
2011-06-13 19:02:35 -07:00
Masayuki Nakano
e06d6eb819
Bug 663036 part.3 gfx should use mozilla::Preferences r=roc+joe
2011-06-12 11:30:16 +09:00
Oleg Romashin
bcfe656b06
Bug 612335 - Render remote canvas directly into shared surface r=jones.chris.g
2011-06-09 21:17:02 -04:00
Kyle Huey
39d58838ba
Fix a spelling mistake on this CLOSED TREE
2011-05-31 09:14:54 -07:00
Oleg Romashin
65a70a8e4c
Bug 659768 - HTML5 video does not render anything on Maemo r=mattwoodrow
2011-05-31 09:48:47 +12:00
Mounir Lamouri
53c39f24f1
Merging cedar with mozilla-central.
2011-05-30 12:50:04 +02:00
Robert O'Callahan
a1ebcbf532
Bug 647560. Remove unused MayHaveOverlappingOrTransparentLayers. r=tnikkel
2011-05-30 15:48:34 +12:00
Robert O'Callahan
a537a15852
Bug 647560. Cache temporary backbuffer surfaces. r=karlt
2011-05-30 15:48:29 +12:00
Robert O'Callahan
89fdba6cb9
Bug 647560. Create ApplyDoubleBuffering to recursively walk layer tree and implement double-buffering by setting mUseIntermediateSurface on ContainerLayers where necessary. r=tnikkel
...
The idea here is to do double-buffering just by setting mUseIntermediateSurface on ContainerLayers when needed. When
we need to double-buffer compositing of a layer tree, ApplyDoubleBuffering examines the root container layer. If the
child layers don't overlap and together cover the window, we don't need to double-buffer in that container, instead
we can double-buffer each child layer separately --- so we recursively call ApplyDoubleBuffering on the child layers.
When a container has children that overlap or that don't cover the container's visible rect (the latter case
probably can't happen in practice), we force it to have an intermediate surface.
This change fixes this bug because in normal browser windows the Web content layer double-buffers
2011-05-30 15:48:23 +12:00
Robert O'Callahan
b49eae116d
Bug 647560. Add support for compositing BasicLayers with OPERATOR_SOURCE. r=tnikkel
...
We'll need this for the improved backbuffer code in the next patch. When a layer tree's
leaf layers don't overlap and cover the window, the next patch will avoid double-buffering
by blitting those layers directly to the window. If the window has transparent parts
(e.g. with Aero Glass), we need to draw the layers for those transparent parts using
OPERATOR_SOURCE so that the alpha values in the window are reset.
2011-05-30 15:48:13 +12:00
Robert O'Callahan
c0afe87a4e
Bug 647560. Clean up MarkLeafLayersHidden and make it set the hidden state on container layers. r=tnikkel
...
Instead of doing tricks with the cliprect to prevent layer content from adding to aOpaqueRegion, pass an explicit flag to control that.
Mark a ContainerLayer hidden if all its children are hidden. This will need to be changed if/when we add layer properties
that result in a ContainerLayer drawing content even if it has no children.
2011-05-30 15:48:08 +12:00
Robert O'Callahan
9a390fc021
Bug 647560. Use passed-in aContext instead of getting it from the layer manager. r=tnikkel
2011-05-30 15:48:01 +12:00
Robert O'Callahan
66a57a0a84
Bug 639168. Don't try to reuse a buffer if we don't have one. r=tnikkel
2011-05-30 15:29:07 +12:00
Masayuki Nakano
85c451e309
Bug 660121 Remove all pref related methods from nsContentUtils r=roc
2011-05-29 08:42:57 +09:00
Neil Rashbrook
a823051c1e
Fix DOS line endings rs=joedrew!
...
DONTBUILD
2011-05-26 20:41:33 +01:00
Oleg Romashin
d4e430f071
Bug 659217 - HW accelerated video crashing with OGL layerss enabled. r=matt.woodrow
...
--HG--
extra : rebase_source : bd3b7998f5b8193a01d927c388ee2375d2a6bacf
2011-05-25 10:09:55 +02:00
Benoit Jacob
2c0eb7e54e
Bug 657748 - Update ANGLE to r653 - a=joe
...
This ANGLE update fixes bugs, brings large performance improvements, and adds major new features that web devs are looking forward to: vertex shader texture lookup and float textures.
http://code.google.com/p/angleproject/
This update is also needed because the version we're currently using is the chrome_m10 branch and that's no longer maintained. This update will make it much easier to apply security fixes if needed.
2011-05-24 11:05:56 -04:00
Matheus Kerschbaum
35f86c76ad
Bug 648911 - Remove support for non-libxul builds. r=ted,joedrew
2011-05-23 18:54:47 +02:00
Robert O'Callahan
ea286efab6
Bug 654950. Fix scissor rect calculations for descendants of container layers with intermediate surfaces. r=bas
2011-05-23 12:27:03 +12:00
Vivien Nicolas
8b7b339cab
backout bug 647560 - Pages on Fennec desktop does not not draw anymore
2011-05-20 17:45:00 +02:00
Florian Hänel
8e0d9ab286
Bug 628566 - Implement basic tiling of ImageLayerOGL. r=joe
2011-05-19 12:53:02 +02:00
Robert O'Callahan
4ada86d2cb
Bug 647560. Remove unused MayHaveOverlappingOrTransparentLayers. r=tnikkel
2011-05-18 23:24:52 +12:00
Robert O'Callahan
77cd75a0d2
Bug 647560. Cache temporary backbuffer surfaces. r=karlt
2011-05-18 23:24:52 +12:00
Robert O'Callahan
ebe9f8f585
Bug 647560. Create ApplyDoubleBuffering to recursively walk layer tree and implement double-buffering by setting mUseIntermediateSurface on ContainerLayers where necessary. r=tnikkel
...
The idea here is to do double-buffering just by setting mUseIntermediateSurface on ContainerLayers when needed. When
we need to double-buffer compositing of a layer tree, ApplyDoubleBuffering examines the root container layer. If the
child layers don't overlap and together cover the window, we don't need to double-buffer in that container, instead
we can double-buffer each child layer separately --- so we recursively call ApplyDoubleBuffering on the child layers.
When a container has children that overlap or that don't cover the container's visible rect (the latter case
probably can't happen in practice), we force it to have an intermediate surface.
This change fixes this bug because in normal browser windows the Web content layer double-buffers
2011-05-18 23:24:52 +12:00
Robert O'Callahan
887d235ef0
Bug 647560. Add support for compositing BasicLayers with OPERATOR_SOURCE. r=tnikkel
...
We'll need this for the improved backbuffer code in the next patch. When a layer tree's
leaf layers don't overlap and cover the window, the next patch will avoid double-buffering
by blitting those layers directly to the window. If the window has transparent parts
(e.g. with Aero Glass), we need to draw the layers for those transparent parts using
OPERATOR_SOURCE so that the alpha values in the window are reset.
2011-05-18 23:24:52 +12:00
Robert O'Callahan
99936bcd94
Bug 647560. Clean up MarkLeafLayersHidden and make it set the hidden state on container layers. r=tnikkel
...
Instead of doing tricks with the cliprect to prevent layer content from adding to aOpaqueRegion, pass an explicit flag to control that.
Mark a ContainerLayer hidden if all its children are hidden. This will need to be changed if/when we add layer properties
that result in a ContainerLayer drawing content even if it has no children.
2011-05-18 23:24:52 +12:00
Robert O'Callahan
80101e2ad0
Bug 629866. Part 2: Make MarkLeafLayersHidden actually hide layers that aren't in the dirty region. Don't consider hidden layers when deciding whether double-buffering is needed. r=cjones
2011-05-18 23:24:52 +12:00
Mounir Lamouri
eceb98864c
Backout bug 629866 and bug 647560.
2011-05-17 11:44:17 +02:00
Robert O'Callahan
c5e00b2e8a
Bug 647560. Remove unused MayHaveOverlappingOrTransparentLayers. r=tnikkel
2011-05-17 11:42:19 +12:00
Robert O'Callahan
e5e28d9ac2
Bug 647560. Cache temporary backbuffer surfaces. r=karlt
2011-05-17 11:42:11 +12:00
Robert O'Callahan
03d1ea7300
Bug 647560. Create ApplyDoubleBuffering to recursively walk layer tree and implement double-buffering by setting mUseIntermediateSurface on ContainerLayers where necessary. r=tnikkel
...
The idea here is to do double-buffering just by setting mUseIntermediateSurface on ContainerLayers when needed. When
we need to double-buffer compositing of a layer tree, ApplyDoubleBuffering examines the root container layer. If the
child layers don't overlap and together cover the window, we don't need to double-buffer in that container, instead
we can double-buffer each child layer separately --- so we recursively call ApplyDoubleBuffering on the child layers.
When a container has children that overlap or that don't cover the container's visible rect (the latter case
probably can't happen in practice), we force it to have an intermediate surface.
This change fixes this bug because in normal browser windows the Web content layer double-buffers
2011-05-17 11:42:05 +12:00