Commit Graph

190 Commits

Author SHA1 Message Date
Benoit Girard
aa69b47387 Bug 1135857 - Remove ContentClientIncremental. r=mattwoodrow 2015-02-23 18:22:06 -05:00
Nicholas Nethercote
242708cf72 Bug 1127201 (attempt 2, part 1) - Replace most NS_ABORT_IF_FALSE calls with MOZ_ASSERT. r=Waldo.
--HG--
extra : rebase_source : 488e401ff87e31a2074c4108c4df0572d9536667
2015-02-09 14:34:50 -08:00
Andrew McCreight
d3826daa16 Back out Bug 1127201 (part 2) for various problems. 2015-02-06 15:04:32 -08:00
Nicholas Nethercote
d34f0301b8 Bug 1127201 (part 2) - Convert all NS_ABORT_IF_FALSE calls to MOZ_ASSERT. r=Waldo.
--HG--
extra : rebase_source : 99182e70335d2b5ff95f8c528ae992d37294be3a
2015-02-04 20:05:36 -08:00
David Anderson
495039e5d4 Make debugging whole-layer invalidation slightly easier. (bug 1128752, r=mattwoodrow) 2015-02-03 14:18:44 -08:00
Benoit Girard
285f3407fa Bug 1119570 - Support dumping textures on windows. r=bas 2015-01-12 16:51:02 -05:00
Benoit Girard
d74cb4fa05 Bug 1112476 - Support dumping texture data on the ClientLayerManager. r=mstange
--HG--
extra : rebase_source : 5d5cf3372993ca4af78e12236fc64836a56eff4b
2014-12-18 13:32:45 -05:00
Bas Schouten
0618d254cc Bug 1088414: Use a single synchronization texture for D3D11. r=jrmuizel
This patch adds a cross platform 'sync object' that is used to synchronize the drawing of individual textures. For the D3D11 implementation all textures that are written to will have one pixel copied into the D3D11 sync texture while holding its lock. The compositor will then, before composition acquire and release sync once, this should ensure all drawing on the content side has completed.
2014-12-13 01:50:47 +00:00
Wes Kocher
c38e376cd3 Backed out changeset 2cd43e5ae2c1 (bug 1088414) for breaking non-Windows builds on a CLOSED TREE 2014-12-12 18:11:59 -08:00
Bas Schouten
b339c72f57 Bug 1088414: Use a single synchronization texture for D3D11. r=jrmuizel
This patch adds a cross platform 'sync object' that is used to synchronize the drawing of individual textures. For the D3D11 implementation all textures that are written to will have one pixel copied into the D3D11 sync texture while holding its lock. The compositor will then, before composition acquire and release sync once, this should ensure all drawing on the content side has completed.
2014-12-13 01:50:47 +00:00
Nicolas Silva
49d7294bfb Bug 1102917 - Remove the TextureInfo member from client compositables. r=sotaro 2014-11-25 20:19:13 +01:00
Nicolas Silva
a491a3acfe Bug 1102895 - Remove unused TextureFlags. r=sotaro 2014-11-25 20:19:04 +01:00
Ehsan Akhgari
55f0b72a28 Bug 1088838 - Don't export CompositorChild.h, CompositorParent.h and ShadowLayersManager.h twice; r=BenWa 2014-10-27 08:57:36 -04:00
Markus Stange
7d5a3be591 Bug 1073103 - Rename ThebesLayer to PaintedLayer. r=roc
--HG--
rename : gfx/layers/basic/BasicThebesLayer.cpp => gfx/layers/basic/BasicPaintedLayer.cpp
rename : gfx/layers/basic/BasicThebesLayer.h => gfx/layers/basic/BasicPaintedLayer.h
rename : gfx/layers/client/ClientThebesLayer.cpp => gfx/layers/client/ClientPaintedLayer.cpp
rename : gfx/layers/client/ClientThebesLayer.h => gfx/layers/client/ClientPaintedLayer.h
rename : gfx/layers/client/ClientTiledThebesLayer.cpp => gfx/layers/client/ClientTiledPaintedLayer.cpp
rename : gfx/layers/client/ClientTiledThebesLayer.h => gfx/layers/client/ClientTiledPaintedLayer.h
rename : gfx/layers/composite/ThebesLayerComposite.cpp => gfx/layers/composite/PaintedLayerComposite.cpp
rename : gfx/layers/composite/ThebesLayerComposite.h => gfx/layers/composite/PaintedLayerComposite.h
rename : gfx/layers/d3d10/ThebesLayerD3D10.cpp => gfx/layers/d3d10/PaintedLayerD3D10.cpp
rename : gfx/layers/d3d10/ThebesLayerD3D10.h => gfx/layers/d3d10/PaintedLayerD3D10.h
rename : gfx/layers/d3d9/ThebesLayerD3D9.cpp => gfx/layers/d3d9/PaintedLayerD3D9.cpp
rename : gfx/layers/d3d9/ThebesLayerD3D9.h => gfx/layers/d3d9/PaintedLayerD3D9.h
2014-09-26 13:06:08 -04:00
Jonathan Watt
423fda249a Bug 1065031, part 2 - Changes to Moz2D consuming code to update callers of Moz2D Matrix's Translate, Scale and Rotate methods to use these methods' new names. r=Bas 2014-09-10 18:29:35 +01:00
Bas Schouten
8425203458 Bug 947781 - Part 4: Add ReadbackLayer functionality to ClientLayerManager. r=mattwoodrow 2014-07-30 15:38:47 +02:00
Bas Schouten
ea68147759 Bug 947781 - Part 1: Refactor RotatedBuffer to easily be re-usable for any rotated buffer drawing. r=mattwoodrow 2014-07-30 15:38:46 +02:00
Ed Morley
aa8e34c9db Backed out changeset 6bc1a62eb443 (bug 947781) for build failures 2014-07-30 14:54:28 +01:00
Ed Morley
c622453bed Backed out changeset 96379f178485 (bug 947781) 2014-07-30 14:54:01 +01:00
Bas Schouten
c38da1b056 Bug 947781 - Part 4: Add ReadbackLayer functionality to ClientLayerManager. r=mattwoodrow 2014-07-30 15:38:47 +02:00
Bas Schouten
0e8d1581fa Bug 947781 - Part 1: Refactor RotatedBuffer to easily be re-usable for any rotated buffer drawing. r=mattwoodrow 2014-07-30 15:38:46 +02:00
Nicolas Silva
317306ba9d Bug 1043389 - Remove TextureFlags::ALLOC_FALLBACK and handle fallback in the creation function directly. r=sotaro 2014-07-29 13:16:57 +02:00
Nicolas Silva
afef7c0a5e Bug 1042052 - Add TextureClient::CreateSimilar and have component alpha buffer be of the same type. r=sotaro 2014-07-25 11:24:46 +02:00
Frederic Plourde
ebac609549 b=1015218 Buffer image content layers on server-side xlib surfaces with OMTC basic r=karlt
With image offscreen surfaces enabled for content layers on GTK3, our Basic
compositor needs a way to deal with image layers buffering and compositing in
a performant way.  This patch subclasses BasicCompositor into a new
X11BasicCompositor and makes use of a new TextureSource
(X11DataTextureSourceBasic) in order to buffer TextureHost's data into
gfxXlibSurface on compositor side so that we can use XRender when available to
composite layer contents directly to the Window.

When this buffering will occur, switch to ContentClientSingleBuffered.

--HG--
extra : rebase_source : adad6b1c05dcf516a1ea84c6a529df5f141c198f
2014-07-23 11:02:25 +12:00
Nicolas Silva
ec570d76c4 Bug 1027601 - Create and allocate TextureClient in a single step in some of the cases. r=sotaro 2014-07-10 13:45:40 +02:00
Carsten "Tomcat" Book
474efeb4f5 Backed out changeset e072a46f0b6a (bug 1027601) for test bustages on a CLOSED TREE 2014-07-09 13:23:08 +02:00
Nicolas Silva
bf02837448 Bug 1027601 - Create and allocate TextureClients in a single step in some cases. r=sotaro 2014-07-09 11:59:49 +02:00
Sotaro Ikeda
51abb035b1 Bug 1022167 - Ensure fence delivery of thebes layer in b2g process r=nical 2014-06-18 12:13:27 -07:00
Bas Schouten
482211a863 Bug 1019909: Properly initialize white buffer to white. r=nical 2014-06-18 00:55:31 +02:00
Nicolas Silva
81fe3788ce Bug 1023350 - Rename TextureClient::GetAsDrawTarget into TextureClient::BorrowDrawTarget and fix TextureClientX11. r=bjacob 2014-06-11 14:57:58 -04:00
Nicolas Silva
0f65b4eb76 Bug 1000103 - Fix intermittent OSX crash in TextureImageTextureSourceOGL::GetFormat. r=mattwoodrow 2014-06-09 17:30:53 -04:00
Sotaro Ikeda
32932f714a Bug 1019877 - fix deadlock at AsyncTransactionTrackersHolder r=nical 2014-06-05 07:24:05 -07:00
Sotaro Ikeda
d681c02d13 Bug 1016677 - Add pointer check to ContentClientRemoteBuffer::DestroyBuffers() r=nical 2014-06-04 10:45:00 -07:00
Sotaro Ikeda
69d675b67c Bug 1019057 - Add pointer check to ContentClientDoubleBuffered::FinalizeFrame() r=nical 2014-06-04 08:21:50 -07:00
Bas Schouten
cdf842daf9 Bug 1015820: Update the back buffer rect when ensuring a back buffer client exists. r=mattwoodrow 2014-05-31 02:16:35 +02:00
Sotaro Ikeda
afdf8e01dd Bug 1006957 - Handle buffer ownership between SurfaceStream and CanvasClient r=nical 2014-05-24 09:14:45 -07:00
Steve Fink
12ba3a7a2a Backed out changeset 171edffe0641 (bug 1006957) for crash at BaseAutoLock<mozilla::Mutex>::BaseAutoLock(mozilla::Mutex&) from layers::AsyncTransactionTrackersHolder::ClearAllAsyncTransactionTrackers on a CLOSED TREE 2014-05-23 21:16:02 -07:00
Sotaro Ikeda
ac5d74bdb6 Bug 1006957 - Handle buffer ownership between SurfaceStream and CanvasClient r=nical 2014-05-23 17:52:43 -07:00
Bas Schouten
53afa56f9e Bug 1012213: Let the BufferRect be managed and cleared by the callers like before. r=mattwoodrow 2014-05-23 06:01:05 +02:00
Matt Woodrow
a209bb45ac Bug 1013759 - Simplify invalid region for Direct2D when using OMTC to avoid hitting expensive drawing paths for complex regions. r=jrmuizel 2014-05-23 09:08:21 +12:00
Bas Schouten
01f63d0b72 Bug 1002300: Only lazily create the backbuffer for ContentClientDoubleBuffered. r=nical 2014-05-15 00:31:22 +02:00
Markus Stange
53a78142c8 Bug 1000875 - Add invalidation debugging annotations for layer content type changes. r=roc 2014-05-05 10:24:56 +02:00
Benoit Jacob
5004258047 Bug 987311 - 6/6 - Convert the rest of CompositorTypes.h to typed enums, final manual changes - r=nical 2014-04-25 22:34:06 -04:00
Benoit Jacob
2cf9a19eef Bug 987311 - 5/6 - Convert the rest of CompositorTypes.h to typed enums, auto regex changes - r=nical
find gfx/layers -type f | grep -v CompositorTypes.h | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)DIAGNOSTIC_\(NONE\|TILE_BORDERS\|LAYER_BORDERS\|BIGIMAGE_BORDERS\|FLASH_BORDERS\)\($\|[^A-Za-z0-9_]\)/\1DiagnosticTypes::\2\3/g'
find gfx/layers -type f | grep -v CompositorTypes.h | xargs sed -i 's/DiagnosticTypes\:\:NONE/DiagosticTypes::NO_DIAGNOSTIC/g'
find gfx/layers -type f | grep -v CompositorTypes.h | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)DIAGNOSTIC_\(IMAGE\|CONTENT\|CANVAS\|COLOR\|CONTAINER\|TILE\|BIGIMAGE\|COMPONENT_ALPHA\|REGION_RECT\)\($\|[^A-Za-z0-9_]\)/\1DiagnosticFlags::\2\3/g'
find gfx/layers -type f | grep -v CompositorTypes.h | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)EFFECT_\(MASK\|MAX_SECONDARY\|RGB\|YCBCR\|COMPONENT_ALPHA\|SOLID_COLOR\|RENDER_TARGET\|MAX\)\($\|[^A-Za-z0-9_]\)/\1EffectTypes::\2\3/g'
find gfx/layers -type f | grep -v CompositorTypes.h | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)TEXTURE_\(CONTENT\|SHMEM\|YCBCR\|SHARED_GL\|SHARED_GL_EXTERNAL\|STREAM_GL\|FALLBACK\)\($\|[^A-Za-z0-9_]\)/\1DeprecatedTextureClientType::\2\3/g'
find gfx/layers -type f | grep -v CompositorTypes.h | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)\(BUFFER_UNKNOWN\|BUFFER_IMAGE_SINGLE\|BUFFER_IMAGE_BUFFERED\|BUFFER_BRIDGE\|BUFFER_CONTENT\|BUFFER_CONTENT_DIRECT\|BUFFER_CONTENT_INC\|BUFFER_TILED\|BUFFER_SIMPLE_TILED\|COMPOSITABLE_IMAGE\|COMPOSITABLE_CONTENT_SINGLE\|COMPOSITABLE_CONTENT_DOUBLE\|BUFFER_COUNT\)\($\|[^A-Za-z0-9_]\)/\1CompositableType::\2\3/g'
find gfx/layers -type f | grep -v CompositorTypes.h | xargs sed -i 's/CompositableType\:\:COMPOSITABLE_/CompositableType::/g'
find gfx/layers -type f | grep -v CompositorTypes.h | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)TEXTURE_HOST_\(DEFAULT\|TILED\|COPY_PREVIOUS\)\($\|[^A-Za-z0-9_]\)/\1DeprecatedTextureHostFlags::\2\3/g'
find gfx/layers -type f | grep -v CompositorTypes.h | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)Texture\(Front\|Back\|OnWhiteFront\|OnWhiteBack\)\($\|[^A-Za-z0-9_]\)/\1TextureIdentifier::\2\3/g'
find gfx/layers -type f | grep -v CompositorTypes.h | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)\(OPEN_NONE\|OPEN_READ\|OPEN_WRITE\|OPEN_READ_WRITE\|OPEN_READ_ONLY\|OPEN_WRITE_ONLY\)\($\|[^A-Za-z0-9_]\)/\1OpenMode::\2\3/g'
find gfx/layers -type f | grep -v CompositorTypes.h | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)\(MaskNone\|Mask2d\|Mask3d\|NumMaskTypes\)\($\|[^A-Za-z0-9_]\)/\1MaskType::\2\3/g'
find gfx -type f | xargs sed -i 's/Diagostic/Diagnostic/g'
2014-04-25 22:34:06 -04:00
Benoit Jacob
3b123f8333 Bug 987311 - 3/6 - Make TextureFlags a typed enum, final manual changes - r=nical 2014-04-25 22:34:05 -04:00
Benoit Jacob
dd9a0850b3 Bug 987311 - 2/6 - Make TextureFlags a typed enum, auto regex changes - r=nical
find gfx/layers -type f | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)TEXTURE_\(USE_NEAREST_FILTER\|NEEDS_Y_FLIP\|DISALLOW_BIGIMAGE\|ALLOW_REPEAT\|NEW_TILE\|COMPONENT_ALPHA\|RB_SWAPPED\|FRONT\|ON_WHITE\|ON_BLACK\|TILE\|RECYCLE\|COPY_PREVIOUS\|DEALLOCATE_CLIENT\|IMMUTABLE\|IMMEDIATE_UPLOAD\|DOUBLE_BUFFERED\|ALLOC_FALLBACK\)\($\|[^A-Za-z0-9_]\)/\1TextureFlags::\2\3/g'
find gfx/layers -type f | xargs sed -i 's/TEXTURE_FLAGS_DEFAULT/TextureFlags::DEFAULT/g'
2014-04-25 22:34:05 -04:00
Blair McBride
24b74a2af7 Backed out 9 changesets (bug 987311, bug 989027, bug 989144). r=sheriff
Backed out changeset 046c061d91c2 (bug 989144)
Backed out changeset 3f1b41adeaef (bug 987311)
Backed out changeset 8d5a171564bd (bug 987311)
Backed out changeset dcc0d016de7a (bug 987311)
Backed out changeset 27f338fbc835 (bug 989027)
Backed out changeset 4a67f5144ea4 (bug 989027)
Backed out changeset 62ba0a377450 (bug 987311)
Backed out changeset 6a2542a5c865 (bug 987311)
Backed out changeset 1dfd9a457f34 (bug 987311)
2014-04-27 19:45:08 +12:00
Benoit Jacob
a53edd3151 Bug 987311 - 6/6 - Convert the rest of CompositorTypes.h to typed enums, final manual changes - r=nical 2014-04-25 22:34:06 -04:00
Benoit Jacob
dc0b0c8367 Bug 987311 - 5/6 - Convert the rest of CompositorTypes.h to typed enums, auto regex changes - r=nical 2014-04-25 22:34:06 -04:00
Benoit Jacob
49dd7d0c3f Bug 987311 - 3/6 - Make TextureFlags a typed enum, final manual changes - r=nical 2014-04-25 22:34:05 -04:00