Commit Graph

963 Commits

Author SHA1 Message Date
Oleg Romashin
4ed618f111 Bug 618765 - unbind VBO required in order to share GL context with toolkit. r=jrmuizel 2011-11-18 14:01:35 +01:00
Marco Castelluccio
2f7388d5b7 Bug 699258 - Get skia backend compiling and running on Windows. r=mattwoodrow 2011-11-18 17:00:37 +13:00
Jeff Walden
a48ad2fca3 Bug 702437 - Implement MOZ_OVERRIDE to encapsulate support for the contextual override keyword on virtual member functions. r=cjones 2011-11-14 10:31:46 -08:00
Chris Pearce
bbc6317677 Bug 701259 - Restrict BasicPlanarYCbCrImage scaling destination size. r=roc 2011-11-15 09:35:46 +13:00
Robert O'Callahan
587cc2c570 Bug 701528. Fix component alpha shader so correct destination alpha values are produced. r=bas 2011-11-14 17:42:08 +13:00
Matt Brubeck
65a5f3ea90 Back out 5ddda2b25e28 and 3abfdb807a4f (bug 699258) for crashes in WinXP tests 2011-11-11 17:49:47 -08:00
Marco Castelluccio
d303f502ae Bug 699258 - Part 2: [Skia] Get Skia backend working on Windows. 2011-11-11 15:51:00 -05:00
Jeff Gilbert
69c7308a1d Bug 571507 - Add checks for texture creation failure to ContainerLayerD3D* - r=bas.schouten 2011-11-03 12:10:10 -07:00
Matt Woodrow
ba3ebc26fb Bug 688342 - Make nsCanvasRenderingContext2D support Azure backends other than Direct2D. r=Bas 2011-11-03 08:55:03 +13:00
Ali Juma
b8a8bd086c Bug 696768 - Abort when framebuffer completeness check fails. r=jrmuizel 2011-11-02 09:40:14 -04:00
Matt Woodrow
da408a739b Bug 698212 - Let UploadSurfaceToTexture create the texture for CairoImageOGL. r=BenWa 2011-10-31 14:03:00 +13:00
Andrew Quartey
6fe0fd072a Bug 706010 - Remove NS_SPECIALIZE_TEMPLATE and HAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX; r=khuey a=cleanup/removal 2011-12-13 14:17:59 +00:00
Benoit Girard
15ac338ecd Bug 698137 - Set texture unit before binding FPS texture. r=ajuma
--HG--
extra : rebase_source : 5ea49b85e0ba0d2b5eabc4477a0e692d0a531faf
2011-10-31 15:04:09 -04:00
Benoit Jacob
8a7cb1453a Bug 697845 - only call glFinish in RenderLayer, not in UpdateSurface - r=mattwoodrow
This could make WebGL a bit faster.
2011-10-29 19:15:52 -04:00
Benoit Girard
c3254938fb Bug 680082 - Add GetMaxTextureImageSize to correct size support for TiledTextureImage. r=matt.woodrow
--HG--
extra : rebase_source : e121a8718fa68e602794957bae278d7351d7d585
2011-10-26 14:36:18 -07:00
Benoit Girard
76c3511501 Bug 680082 - [backout] Add GetMaxTextureImageSize to correct size support for TiledTextureImage. 2011-10-27 10:17:40 -04:00
Benoit Girard
e2c3feec1b Bug 680082 - Add GetMaxTextureImageSize to correct size support for TiledTextureImage. r=matt.woodrow 2011-10-26 14:36:18 -07:00
Oleg Romashin
9d7343f504 Bug 696013 - Nightly crashes @ mozilla::layers::BasicShadowCanvasLayer::DestroyFrontBuffer. r=cjones 2011-10-27 13:30:43 +02:00
Jeff Gilbert
adc55de3c1 Bug 615976 - Post-patch cleanup for WebGL antialiasing - r=bjacob 2011-10-26 16:00:44 -04:00
Matt Woodrow
39227dda84 Bug 695275 - Fix crashtest failures with BasicShadowableImageLayer. r=roc 2011-10-26 16:25:42 +13:00
Matt Woodrow
1843dab839 Bug 696517 - Make sure our temporary surface allocation succeeded. r=roc 2011-10-26 16:15:53 +13:00
Oleg Romashin ext:(%2C%20Matt%20Woodrow%20%3Cmwoodrow%40mozilla.com%3E)
888c49fd78 Bug 695406 - Reset IPC double buffers if the ContentType has changed. r=cjones 2011-10-21 14:29:09 +13:00
Marco Bonardo
3b5b6dc0f5 Backout 73dc291f8974 (Bug 695406) to investigate Android Crashtests permaorange 2011-10-21 12:07:32 +02:00
Oleg Romashin ext:(%2C%20Matt%20Woodrow%20%3Cmwoodrow%40mozilla.com%3E)
8689f6028a Bug 695406 - Reset IPC double buffers if the ContentType has changed. r=cjones 2011-10-21 14:29:09 +13:00
Jeff Gilbert
86edb0e7e4 Bug 615976 - Fixes layer compositing with AA on Mac - r=bjacob 2011-10-19 15:09:57 -04:00
Jeff Gilbert
4ef6c241ac Bug 615976 - Adds support for multisampled GLContexts, esp. EGL, WGL paths - r=bjacob 2011-10-19 15:09:57 -04:00
Benoit Jacob
20d36842ee Back out Jeff's patches because they lack a Bug number and/or a r= field. Sorry, should have checked that. Re-landing. 2011-10-19 15:31:33 -04:00
Jeff Gilbert
17f1b76695 Fixes layer compositing with AA on Mac 2011-10-19 15:09:57 -04:00
Jeff Gilbert
ef36f1acc5 Adds support for multisampled GLContexts, esp. EGL, WGL paths 2011-10-19 15:09:57 -04:00
Ehsan Akhgari
92064e6d3f Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Benoit Girard
a3ac1dfb24 Bug 691354 - Restore CanvasLayerOGL::RenderLayer apply filter. r=bustage 2011-10-16 22:31:15 -04:00
Benoit Girard
a8dc3a5bac Bug 691354 - Use NEAREST filter when OGL layers have no 3d transform/scaling. r=jmuizelaar 2011-10-14 13:16:19 -07:00
Jeff Walden
b5e57820bf Bug 693469 - Implement mozilla::ArrayLength and mozilla::ArrayEnd, and replace uses of NS_ARRAY_LENGTH whenever possible. (Exceptions: assigning to static initializers, use in static assertions, as template parameters, etc. These will go away when the relevant compilers have C++11 constexpr support.) r=cjones
--HG--
extra : rebase_source : b4bae9a0f85abf2feb828609b50e756916b99a6f
2011-10-10 22:50:08 -07:00
Oleg Romashin
ddc349e787 Bug 694140 - With GL layers, panning/zooming causes corruption and wrong colours on Fennec. r=ajuma 2011-10-15 21:07:10 +01:00
Matt Woodrow
434481b476 Bug 693521 - Improve preserve-3d sorting behaviour by using line intersection points. r=roc 2011-10-15 09:45:01 +13:00
Matt Woodrow
c4f7adf6f1 Bug 692968 - Check the return value of CreateTexture2D in ContainerLayerD3D10. r=Bas 2011-10-13 14:01:30 +13:00
Jeff Walden
d0532c3e95 Back out everything since 5435ee09cf7b. Tinderbox compilers hate me. r=epic-fail 2011-10-12 12:21:53 -07:00
Jeff Walden
0f30b277bf Bug 639469 - Implement mozilla::ArrayLength and mozilla::ArrayEnd, and replace uses of NS_ARRAY_LENGTH whenever possible. r=cjones
--HG--
extra : rebase_source : 860a8271bf7e51cde358f2a4185c410de1fc2960
2011-10-10 22:50:08 -07:00
Benoit Girard
a5cbfecf3e Bug 626694 - Remove unused TextureImage::IsRGB(). r=mattwoodrow 2011-10-11 21:11:03 -04:00
Oleg Romashin
acaf80d64a Bug 693282 - BasicShadowableThebesLayer leaking backBuffers. r=cjones 2011-10-10 16:43:56 -07:00
Matt Brubeck
605f836e6c Back out f7bf7ac18a79 (bug 684826), 3a910924c50c (bug 687367), and 524a6bb8744b (bug 693086) because of Android bustage on a CLOSED TREE 2011-10-10 09:47:27 -07:00
Ehsan Akhgari
33b859a0b7 Merge mozilla-central into mozilla-inbound 2011-10-10 11:30:21 -04:00
Brad Lassey
6f3a6d8c7b merge 2011-10-10 11:01:34 -04:00
Brad Lassey
1dbd9c50c8 Backed out changeset 703df62e855b due to crashes reported in bug 693086 2011-10-10 11:00:16 -04:00
Oleg Romashin
0ee3091dc8 Bug 690469 - ShadowThebesLayer Init/Swap API rework. r=cjones
--HG--
extra : rebase_source : 92daf535bc48e1fa2a80d3ef1a6ed20855135eb4
2011-10-02 17:19:32 -04:00
timeless@mozdev.org
cff8381083 Bug 620171 - [@ ImageContainerOGL::GetCurrentAsSurface] if GetFormat() can return anything other than PLANAR_YCBCR or CAIRO_SURFACE
r=bgirard
2011-10-10 15:27:05 +01:00
Benoit Girard
639e3cffcd Bug 692548 - Properly print OGL Shader compile errors on Android. r=jmuizelaar 2011-10-06 12:12:51 -07:00
Jeff Gilbert
2b770669a8 Bug 692458 - Fix for GLContext currency error - r=bjacob 2011-10-07 15:16:48 -04:00
Matt Woodrow
d281b3df0b Bug 689416 - Stop using intermediate layers to render 3d transforms. r=roc 2011-10-07 10:29:07 +13:00
Matt Woodrow
0d0c9a720e Bug 684759 - Part 4 - Add layer sorting support to the LayerManagers. r=roc 2011-10-07 10:24:32 +13:00
Matt Woodrow
6e3aac5fe5 Bug 684759 - Part 3a - Sort preserve-3d layers using their z depth at points where they intersect in 2d space. r=roc 2011-10-07 10:23:18 +13:00
Matt Woodrow
cda9499280 Bug 684759 - Part 2 - Add DirectedGraph and gfxQuad classes. r=roc 2011-10-07 10:22:18 +13:00
Ali Juma
d5b538c932 Bug 690566 - Associate filters with texture images. r=jrmuizel 2011-10-05 14:20:33 -04:00
Matt Woodrow
ed02009f86 Bug 689501 - Use an offscreen surface for rendering 3d transformed content instead of PushGroup in BasicLayers. r=roc 2011-09-30 14:13:50 +13:00
Michael Wu
d2b70213ac Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Oleg Romashin
131092869e Bug 689045 - Canvas Shadow swap/Init API rework r=cjones
--HG--
extra : rebase_source : 7b2acb0ffededb54815d7222d79999d32506bee5
2011-09-27 15:19:28 -07:00
Oleg Romashin
12f1dcd5d4 Bug 687372 - ImageLayerOGL should not destroy surface given as argument. r=cjones
--HG--
extra : rebase_source : 00d0c49f320c0969570917a321b8a95a3357a943
2011-09-27 15:19:26 -07:00
Oleg Romashin
5cecc378f2 Bug 686742 - Move YUV conversion code into gfxUtil functions. r=derf
--HG--
extra : rebase_source : 0993d4fc7558c40fd6df97278919c01fc8e92918
2011-09-27 15:19:24 -07:00
Ali Juma
9af282920f Bug 681033 - Prevent ShadowLayers::RecvUpdate from triggering an immediate repaint. r=cjones 2011-09-26 09:20:42 -04:00
Benoit Jacob
60e32d2ae0 Bug 662258 - GCC warning about BasicThebesLayerBuffer::CreateBuffer getting hidden by ShadowThebesLayerBuffer::CreateBuffer. r=roc 2011-09-24 21:01:18 +02:00
Florian Hänel
ff2bea3fed Bug 687458 - TimeStamp in FPSState uninitialized, leads to crash; r=romaxa 2011-09-22 00:16:12 -04:00
Oleg Romashin
ef21dc1526 Bug 687373 - Provide mozilla::layers::SurfaceDescriptorX11 non xlib surface ctor. r=cjones 2011-09-20 17:20:51 +01:00
Oleg Romashin
6595d59ea9 Bug 685082 - Transparent plugins not cleared on Maemo; r=cjones 2011-09-14 08:51:24 +01:00
Benoit Girard
f1a5d4dee8 Bug 685694 - Don't use glDrawBuffer in GLES2. r=matt.woodrow 2011-09-08 14:21:36 -07:00
Benoit Girard
19ed51c454 Bug 683745 - Fix OGL FPS Counter on Android; r=jrmuizel 2011-08-31 15:58:19 -07:00
Matt Woodrow
f440cab612 Bug 682615 - Use fallible new for BasicPlanarYCbCrImage. r=roc 2011-08-31 14:03:34 +12:00
Joshua Cranmer
60b24c98f0 Bug 681634 - Get m-c to build with static checking; NS_OVERRIDE failure in gfx. r=cjones 2011-08-29 12:29:51 -07:00
Benjamin Stover
5977e20a52 Bug 634759 Allow buffer rotation for mobile r=roc 2011-08-29 10:56:50 -07:00
Matt Woodrow
7e10034edd Bug 675837 - Add 3D transforms support to BasicLayers. r=roc 2011-08-27 12:04:06 +12:00
Alfred Kayser ext:(%2C%20Ms2ger%20%3Cms2ger%40gmail.com%3E)
40a50219ea Bug 537223 - Cleanup gfxColor.h; r=jrmuizel 2011-08-25 10:46:01 +02:00
Chris Lord
2aa06762af Bug 611315 - Fix handling of rotated ShadowBufferOGL
Although we currently have buffer rotation disabled for shadow buffers when
using the GL layer manager, if you re-enable it, it will be broken. This is
because we don't take into account the rotation when handling updates.

This fixes that handling by offsetting the updated region by the rotation,
and if that new region crosses texture boundaries, splitting it into
multiple uploads.
2011-08-24 15:10:03 +01:00
Chris Lord
42d612afd7 Fix drawing of GL Thebes layers with rotation when using tiled textures
Drawing of rotated buffers relies on texture-wrapping, but in the case of
tiled textures, this would cause each individual tile to wrap instead of
wrapping the compound texture.

Add a special case for tiled textures that manually does the wrapping.
2011-08-24 15:09:59 +01:00
Benoit Girard
a6b3246fd0 Backout changeset 07d34812bdee, b879d413ce2d, 0c59eeb18700 due to android opengl regression on chrome pages; r=backout 2011-08-23 17:12:15 -04:00
Justin Wood
fec71e5e8b Backout Bug 594876, Bug 675474, and Bug 675532, to fix OSX64 Reftest orange, and Linux perf regression. rs+=edmorly
changeset 0a920411e64c, changeset 58147380793b, and changeset 96e052b3e845
2011-08-20 15:07:06 -04:00
Matt Woodrow
1a18fc5567 Bug 675474 - Draw all ThebesLayer content before compositing and synchronize with glXWaitX on GLX. r=bjacob,roc 2011-08-20 14:04:24 +12:00
Chris Lord
db10ec99c6 Bug 611315 - Fix handling of rotated ShadowBufferOGL. r=mattwoodrow
Although we currently have buffer rotation disabled for shadow buffers when
using the GL layer manager, if you re-enable it, it will be broken. This is
because we don't take into account the rotation when handling uploads.

This fixes that handling by offsetting the updated region by the rotation and
adds an assertion if the updated region crosses a rotation boundary (which
should never happen).
2011-08-19 09:36:18 +01:00
Chris Lord
ee19435552 Bug 611315 - Fix drawing of tiled GL Thebes layers with rotation. r=mattwoodrow
Drawing of rotated buffers relies on texture-wrapping, but in the case of
tiled textures, this would cause each individual tile to wrap instead of
wrapping the compound texture.

Add a special case for tiled textures that manually does the wrapping.
2011-08-19 09:36:08 +01:00
Chris Lord
d1551ab7c6 Bug 674494 - Uninitialised variable in ThebesLayerBuffer::BeginPaint. r=mattwoodrow 2011-08-18 09:52:48 +12:00
Marco Bonardo
e9f12aebfc Backout changeset 3db901280232, (Bug 666385) to investigate Mac Tdhtml regression. 2011-08-17 22:55:14 +02:00
Benoit Girard
5d8b20a8b9 Bug 666385 - Fix tiled scrolling on Android; r=roc
--HG--
extra : rebase_source : 8a4660808501e8dfc9c58f7769b6c05db6519e83
2011-08-10 08:47:23 -07:00
Robert O'Callahan
79a9fa270a Bug 657401. Ensure that when our double-buffering logic expects layers to clip to their visible regions, we actually do. r=tnikkel
--HG--
extra : rebase_source : 16ea17d5a6a0177a26a3d38ae587290e194234b1
2011-08-12 10:44:50 +12:00
Robert O'Callahan
3e3f6096a0 Bug 677095. Compute reasonable destination alpha values with component-alpha blending in D3D10. r=bas
--HG--
extra : rebase_source : b0264c52df9a37334d9524e1fdd1f15e4e4df866
2011-08-12 10:40:39 +12:00
Chris Jones
2bffd8531c Bug 648484, part E: Hook d3d9 shadow layers up to new system. r=BenWa 2011-07-06 13:29:27 -04:00
Chris Jones
b68c4f2655 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-08-09 12:38:26 -07:00
Chris Jones
f4ee161e4c Bug 648484, part B: Implement shadowable layer goop for D3D10, just enough to allow sending a window buffer to the compositor. r=Bas 2011-08-09 12:38:26 -07:00
Chris Jones
02a198c215 Bug 648484, part A: Allow D3D10 layers to render directly to a share-able texture. r=Bas 2011-08-09 12:38:26 -07:00
Chris Jones
7b5e718dab Bug 648484, part 9: Make LayerManagerD3D10 a shadow-layer manager and forwarder. r=Bas 2011-08-09 12:38:26 -07:00
Chris Jones
a09724480f 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
543953a6d6 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
573d4a32c6 Bug 648484, part 6: Add code to share D3D10 textures across processes. r=Bas 2011-08-09 12:38:26 -07:00
Chris Jones
5d49f97f4c Bug 648484, part 4: Log layers transactions in the d3d10 backend. r=Bas 2011-08-09 12:38:26 -07:00
Chris Jones
adc6292af8 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
ae2bfc746f Bug 648484, part 2: Add various helpers, refactor ContainerLayer::SetSpecificAttributes. r=roc 2011-08-09 12:38:26 -07:00
Chris Jones
6033ee3875 Bug 648484, part 1: Fix some warning spam. r=roc 2011-08-09 12:38:26 -07:00
Florian Haenel
fedb6459d8 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
fac88d4499 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
1332468008 Bug 655017 - Let gfxXlibSurface track GLXPixmaps and use this for CanvasLayerOGL. r=karlt, roc 2011-08-05 13:13:25 +12:00
Matt Woodrow
a58142bb2a Bug 505115 - Part 7 - Layers support for 3d transforms. r=roc 2011-08-03 15:04:20 +12:00
Marco Bonardo
506125133a Merge mozilla-central and mozilla-inbound 2011-07-29 13:46:15 +02:00
Benoit Jacob
46b893fa86 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
c77b88d953 Bug 674731 - WebGL/ANGLE interop with D3D layers requests incorrect extension - r=bjacob 2011-07-28 16:37:58 -04:00
Scott Ruff
4e4c1347d5 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
2f39e6408b 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
e2113eb4db 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
22504be7f5 Backed out changeset 39fef2383893 2011-07-25 13:18:23 +12:00
Matt Woodrow
c9c57295d3 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
8ed39834bd Bug 669299 - Remove unneeded nsPrintfCString.h includes. r=bsmedberg 2011-07-21 04:37:31 +02:00
Oleg Romashin
02c7078314 Bug 671986 - ImageLayerOGL does not apply offset/transform for layer r=jrmuizel 2011-07-17 12:07:41 +02:00
Chris Jones
0c9abec3e2 Merge backout 2011-07-15 11:36:22 -07:00
Chris Jones
bd33e7e43e Back out bug 648484 2011-07-15 11:35:55 -07:00
Chris Jones
e53cec2813 Bug 648484, part E: Hook d3d9 shadow layers up to new system. r=BenWa 2011-07-06 13:29:27 -04:00
Chris Jones
6e20d62d53 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
24d9e755e6 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
712fac36c8 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
28e0de0333 Bug 648484, part 9: Make LayerManagerD3D10 a shadow-layer manager and forwarder. r=Bas 2011-07-13 22:43:43 -07:00
Chris Jones
c1c168aa40 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
18ad2a3d0c 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
7f04c5ba64 Bug 648484, part 6: Add code to share D3D10 textures across processes. r=Bas 2011-07-13 22:43:43 -07:00
Chris Jones
726c115d22 Bug 648484, part 4: Log layers transactions in the d3d10 backend. r=Bas 2011-07-13 22:43:43 -07:00
Chris Jones
f536ed7edf 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
fcb0f65051 Bug 648484, part 2: Add various helpers, refactor ContainerLayer::SetSpecificAttributes. r=roc 2011-07-13 22:43:43 -07:00
Chris Jones
0369ff5024 Bug 648484, part 1: Fix some warning spam. r=roc 2011-07-13 22:43:43 -07:00
Matt Woodrow
d76b381d9f Bug 670106 - Check the surface type before attempting to create a GLXPixmap. r=joe 2011-07-15 08:45:33 +12:00
Jacek Caban
99f37a11db Bug 670913 - LayerManagerD3D10.h fails to compile on mingw (r=joe) 2011-07-13 17:58:17 +02:00
Benoit Girard
2ab0d12f09 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
d4259656be 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
a0b30fbce6 Bug 607687 - Fennec should take care about Texture MAX size HW limitation r=jmuizelaar 2011-07-06 11:00:47 -07:00
Matt Woodrow
ef4adc6afb 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
a1491697a0 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
e64b02f01a 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
9879aa7837 Bug 656185 - Part 1 - Move BindAndDrawQuadWithTextureRect into LayerManagerOGL. r=joe 2011-07-05 14:50:38 +12:00
Benoit Girard
2f27b1192a Bug 636707 - Check for null MacIOSurfaceImageOGL. r=mattwoodrow 2011-07-04 09:51:37 -04:00
Benoit Girard
5b3036138c Bug 648480 - Add shadow-layer support to d3d9 backend. r=cjones 2011-07-04 09:15:05 -04:00
Benoit Girard
3a51e1fdfa Backout 627489bb6288. 2011-07-01 18:05:54 -04:00
Benoit Girard
4ec96c8c7f Bug 648480 - Add shadow-layer support to d3d9 backend. r=cjones 2011-07-01 16:57:15 -04:00
Rafael Ávila de Espíndola
8718fb81ab Bug 708051 - Avoid IPC x ipc confusion on case insensitive filesystems. r=joe. 2012-01-03 14:36:00 -05:00
Matt Woodrow
f47d6dca8b Back out bug 656185 due to windows compile failures 2011-06-27 15:21:22 +12:00
Matt Woodrow
efa3bcd4b7 Bug 656185 - Part 4 - Fix for D3D9. r=Bas 2011-06-27 14:32:42 +12:00
Matt Woodrow
63f8b0a243 Bug 656185 - Part 3 - Fix for D3D10. r=Bas 2011-06-27 14:32:34 +12:00
Matt Woodrow
6e295129f3 Bug 656185 - Part 2 - Handle odd crop offsets correctly with OpenGl. r=derf 2011-06-27 14:32:16 +12:00
Matt Woodrow
fe8fe23d3c Bug 656185 - Part 1 - Move BindAndDrawQuadWithTextureRect into LayerManagerOGL. r=joe 2011-06-27 14:32:06 +12:00
Matt Woodrow
a93dfad7db Bug 724025 - Correctly flatten transform-style:flat with BasicLayers. r=roc 2012-02-15 22:28:22 +13:00
Matt Woodrow
131b3ab55f Bug 725209 - Mark TextureImage as valid when self copying, and correctly mark the region needing to be redrawn. r=joe 2012-02-15 22:28:21 +13:00
Robert O'Callahan
3bf55cada3 Bug 708116. Factor out logic for updating the current frame of a video element into a helper object. r=doublec 2012-02-15 17:35:01 +13:00
Jonathan Kew
3ef83bcb61 bug 726962 - remove stray instances of PRBool in gfx. r=joe 2012-02-14 16:17:19 +00:00
Oleg Romashin
0feadfea5c Bug 725925 - ShadowableThebesLayer does useless extra composite into 1x1 fake surface. r=cjones 2012-02-10 11:22:21 -08:00
Ed Morley
07729f9d3d Backout b43f4d9f38da (bug 725925) for reftest failures 2012-02-10 23:23:16 +00:00
Oleg Romashin
6da5005271 Bug 725925 - ShadowableThebesLayer does useless extra composite into 1x1 fake surface. r=cjones
--HG--
extra : rebase_source : 517e8624b3da7f83fbb786c10acb45e02f7b5be9
2012-02-10 11:22:21 -08:00
Ed Morley
4c5dbc9136 Backout 76dcfabe0a2a, d8004eb22252, 86e91202ef51 & f9a5736cd6bc (bug 695845) for build failures on windows 2011-12-19 20:27:59 +00:00
Matt Woodrow
e182b786ae Bug 695845 - Part 4: Move BasicShadowableLayer into ImageLayers.h. r=cjones 2011-12-19 14:49:45 -05:00
Matt Woodrow
07b7ef5e7f Bug 695845 - Part 3: Add Flush() and Disconnect() methods to ImageContainer. r=cjones 2011-12-19 14:49:45 -05:00
Matt Woodrow
181244b996 Bug 695845 - Part 2: Add ShadowImplData. r=cjones 2011-12-19 14:49:45 -05:00
Matt Woodrow
cdc243832c Bug 695845 - Part 1: Add ImplData to ImageContainer. r=roc 2011-12-19 14:49:45 -05:00
Jeff Gilbert
746e397ca9 Bug 711649 - Resolve OGL canvas layer in UpdateSurface - r=mattwoodrow 2011-12-19 11:21:56 -08:00
Bas Schouten
662596f4fb Bug 651858 - Part 5: Add CanvasLayer code for azure. r=jrmuizel 2011-06-24 19:41:18 +02:00
Bas Schouten
c504745112 Bug 651858 - Part 4: Implement API for creating a D3D10 compatible DrawTarget. r=roc 2011-06-24 19:41:18 +02:00
Bas Schouten
bc37e50310 Bug 651858 - Part 3: Add layers API for creating an optimal DrawTarget. r=roc 2011-06-24 19:41:18 +02:00
Jeff Muizelaar
4b67acc2d6 Bug 662649. DrawFPS: Make the conversion loop easier to follow. r=joe 2011-06-22 14:53:11 -04:00
Jeff Muizelaar
ad8a1fabad Bug 662649. DrawFPS: Add a comment about why DrawFPS is a little weird. 2011-06-22 14:49:31 -04:00
Jeff Muizelaar
3e64a3274a 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
7cfa60fc62 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
82eb2f46ce 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
9f092ece3e 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
8b4e1a91a8 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
a97f0fea4e 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
829914f298 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
783029e208 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
29044a8c64 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
96777818e6 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
fc981395e8 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
9b0bdf62e1 Bug 663036 part.3 gfx should use mozilla::Preferences r=roc+joe 2011-06-12 11:30:16 +09:00
Oleg Romashin
977fc29345 Bug 612335 - Render remote canvas directly into shared surface r=jones.chris.g 2011-06-09 21:17:02 -04:00
Kyle Huey
ecde4fa4e4 Fix a spelling mistake on this CLOSED TREE 2011-05-31 09:14:54 -07:00
Oleg Romashin
f447171c32 Bug 659768 - HTML5 video does not render anything on Maemo r=mattwoodrow 2011-05-31 09:48:47 +12:00
Mounir Lamouri
0e0d00b02e Merging cedar with mozilla-central. 2011-05-30 12:50:04 +02:00
Robert O'Callahan
51fbcbb34a Bug 647560. Remove unused MayHaveOverlappingOrTransparentLayers. r=tnikkel 2011-05-30 15:48:34 +12:00
Robert O'Callahan
2e0298a19f Bug 647560. Cache temporary backbuffer surfaces. r=karlt 2011-05-30 15:48:29 +12:00
Robert O'Callahan
9accec318f 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
b951f3597d 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
c69b69915a 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
96787d1aa7 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
73527b85f3 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
4a5030c91a Bug 660121 Remove all pref related methods from nsContentUtils r=roc 2011-05-29 08:42:57 +09:00
Neil Rashbrook
3678727236 Fix DOS line endings rs=joedrew!
DONTBUILD
2011-05-26 20:41:33 +01:00
Oleg Romashin
9bc8e8bac5 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
9ebd896e48 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
6eb93f7dd3 Bug 648911 - Remove support for non-libxul builds. r=ted,joedrew 2011-05-23 18:54:47 +02:00
Robert O'Callahan
ab1023ee7a 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
d7877250d0 backout bug 647560 - Pages on Fennec desktop does not not draw anymore 2011-05-20 17:45:00 +02:00
Florian Hänel
9b0ef26bc8 Bug 628566 - Implement basic tiling of ImageLayerOGL. r=joe 2011-05-19 12:53:02 +02:00
Robert O'Callahan
47ede5b8e2 Bug 647560. Remove unused MayHaveOverlappingOrTransparentLayers. r=tnikkel 2011-05-18 23:24:52 +12:00
Robert O'Callahan
b3d6e4d026 Bug 647560. Cache temporary backbuffer surfaces. r=karlt 2011-05-18 23:24:52 +12:00
Robert O'Callahan
66c2bd79f5 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
c768bea25e 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
f243295b25 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
211b76b78d 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
127ecf5ea3 Backout bug 629866 and bug 647560. 2011-05-17 11:44:17 +02:00
Robert O'Callahan
bfdfab0931 Bug 647560. Remove unused MayHaveOverlappingOrTransparentLayers. r=tnikkel 2011-05-17 11:42:19 +12:00
Robert O'Callahan
5649b24aa6 Bug 647560. Cache temporary backbuffer surfaces. r=karlt 2011-05-17 11:42:11 +12:00
Robert O'Callahan
b021c0ce1b 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