Commit Graph

193 Commits

Author SHA1 Message Date
sotaro
8305f0b97e Bug 1356944 - Fix external image id allocation of WebRenderTextureHost r=nical 2017-04-20 10:24:13 +09:00
JerryShih
c4868e40ce Bug 1347062 - P4: create RenderBufferTextureHost and RenderMacIOSurfaceTextureHostOGL. r=nical,sotaro
1) make RenderTextureHost into a abstract base class for all RenderXXXTextureHost.
2) create a base class RenderTextureHostOGL for all texture handle base texture.
3) create RenderBufferTextureHost for buffer texture at render thread.
4) create RenderMacIOSurfaceTextureHostOGL for MacIOSurface at render thread.
2017-03-31 22:29:14 +08:00
David Anderson
f9963c08b4 Replace TextureHost compositor access with TextureSourceProvider. (bug 1343814 part 3.1, r=mattwoodrow) 2017-03-21 20:32:54 -07:00
David Anderson
6e57f3f879 Change TextureSource::SetCompositor to use TextureSourceProvider. (bug 1343814 part 2, r=mattwoodrow) 2017-03-21 20:32:53 -07:00
David Anderson
7989aa5d01 Factor texture methods out of Compositor into a TextureSourceProvider class. (bug 1343814 part 1, r=mattwoodrow) 2017-03-21 20:32:53 -07:00
Kartikaya Gupta
fc7c5d7c88 Merge m-c to graphics
MozReview-Commit-ID: QN682uyISF
2017-03-09 10:42:57 -05:00
sotaro
e4aa155f04 Bug 1343764 - Add ExternalBuffer handling r=nical 2017-03-07 19:37:28 +09:00
Matt Woodrow
f8409228f1 Bug 1340117 - Batch ReadLock intializer into a separate IDPL message to avoid hitting the file descriptor limit. r=dvander 2017-02-27 16:12:12 +13:00
David Anderson
315fd708c8 Remove the Direct3D9 compositor. (bug 1318558 part 2, r=mattwoodrow) 2017-03-08 00:17:36 -08:00
David Anderson
f66c19353f Remove Composer2D remnants. (bug 1339353, r=kats) 2017-02-14 12:29:39 -08:00
Matt Woodrow
3d05c8f3a5 Bug 1313281 - Part 6: Remove FenceHandle. r=sotaro 2016-10-27 21:02:12 +13:00
Matt Woodrow
dc1055bb91 Bug 1313281 - Part 5: Remove NeedsFenceHandle. r=sotaro 2016-10-27 21:02:12 +13:00
Matt Woodrow
3c78aeff18 Bug 1313281 - Part 3: Remove Fence from TimedTexture. r=sotaro 2016-10-27 21:00:20 +13:00
Matt Woodrow
b4e0f72e10 Bug 1313281 - Part 2: Remove DeliverFence. r=sotaro 2016-10-27 20:59:50 +13:00
Matt Woodrow
16f8a8bdeb Bug 1308363 - Remove GONK specific code from gfx/. r=jrmuizel,sotaro 2016-10-27 13:17:10 +13:00
Sotaro Ikeda
1e67b0bbc2 Bug 1210357 - Handle VP9 colorspace BT.709 r=mattwoodrow,bas.schouten 2016-10-18 10:09:00 -07:00
Sebastian Hengst
156046f00e Backed out changeset c544bfb79ca0 (bug 1210357) for unexpected pass of layout/reftests/ogg-video/encoded-aspect-ratio-1.html on Windows XP. r=backout a=backout
MozReview-Commit-ID: 4s31c2d2fv1
2016-10-15 11:07:47 +02:00
Sotaro Ikeda
f0f1842ef8 Bug 1210357 - Handle VP9 colorspace BT.709 r=mattwoodrow,bas.schouten 2016-10-13 23:48:39 -07:00
JerryShih
799634a9d9 Bug 1298058 - Use different lock/unlock function for WebVR composition path. r=milan 2016-09-05 01:17:00 -04:00
Sotaro Ikeda
51ac1827bf Bug 1254011 - Avoid allocating RGB buffer for YUV data everytime r=nical 2016-07-08 18:59:59 -07:00
Nicolas Silva
32b1cabd0b Bug 1280762 - ReadUnlock the TextureHost when its IPDL actor dies. r=sotaro 2016-06-21 18:06:34 +02:00
Sotaro Ikeda
cc18201e0b Bug 1252835 - Make TextureHost recycling implicit r=nical 2016-06-15 04:28:10 -07:00
Nicolas Silva
ea1a0f7cc4 Bug 1272600 - Part 7 - Add some documentation to TextureReadLock. r=sotaro 2016-06-02 11:00:33 +02:00
Nicolas Silva
64d4500cb3 Bug 1272600 - Part 6 - ReadUnlock BufferTextureHost as soon as its data is available. r=sotaro 2016-06-02 11:00:29 +02:00
Nicolas Silva
24337b0bf5 Bug 1272600 - Part 3 - Move the ReadUnlock logic from compositable to texture. r=sotaro 2016-06-02 11:00:21 +02:00
Nicolas Silva
6596fe57e0 Bug 1272600 - Part 2 - Store TextureReadLock into TextureClient/Host. r=sotaro 2016-06-02 11:00:17 +02:00
Sotaro Ikeda
2fd574c62e Bug 1274145 - Add HostIPCAllocator r=nical 2016-05-19 06:04:14 -07:00
peter chang
495f016677 Bug 1269892 - Dump the name of TextureSource when fails to cast it as TextureSourceOGL, r=nical
MozReview-Commit-ID: IAW98qk3987
2016-05-16 17:29:57 +08:00
George Wright
a71c0ca8cc Bug 1264764 - Move PTexture under PCompositorBridge r=nical,dvander 2016-05-13 12:52:19 -04:00
Sotaro Ikeda
47024e3634 Bug 1253489 - Update SendFenceHandleIfPresent() r=nical 2016-03-07 19:16:40 -08:00
Nicolas Silva
822c4cb165 Bug 1250873 - Rename HasInternalBuffer into HasIntermediateBuffer in layers. r=sotaro 2016-02-25 14:15:58 +01:00
Nicolas Silva
b32137e3d8 Bug 1250500 - Avoid copying BufferTextureHost when possible. r=sotaro 2016-02-25 14:15:52 +01:00
Nicolas Silva
b6c61dd9a5 Bug 1249273 - Enable BufferTextureHost to recycle a TextureSource that is not marked as owned. r=sotaro 2016-02-25 14:15:34 +01:00
Jean-Yves Avenard
a656136a5c Bug 1248323: P1. Add support for YUV422 IOSurface. r=nical
Those are really UYVY 16bpp surface.

MozReview-Commit-ID: DWkqrF6Norj
2016-02-23 13:26:27 +11:00
Milan Sreckovic
b873f75eaf Bug 1187464 - Part 2. RTTI for TextureSource debug purposes. Carry r=botond 2016-02-08 11:57:00 +01:00
Carsten "Tomcat" Book
d6a39e4f80 Backed out changeset 0cee3cdcce99 (bug 1187464) 2016-02-03 15:04:21 +01:00
Milan Sreckovic
18f168cc1b Bug 1187464 - Part 2. RTTI for TextureSource debug purposes. r=botond 2016-02-02 11:06:00 +01:00
Nicolas Silva
0061e505e2 Bug 1221056 - Make the destroy messages for PTexture and PCompositable part of the current transaction when applicable. r=sotaro 2016-01-07 11:17:40 +01:00
Johan Lorenzo
d74e322301 Backout Bug 1221056 - make the destroy messages for PTexture and PCompositable part of the current transaction when applicable. r=sotaro
For breaking Firefox OS boot startup (see bug 1237197)
2016-01-06 14:59:35 +01:00
Nicolas Silva
6d9176802f Bug 1221056 - make the destroy messages for PTexture and PCompositable part of the current transaction when applicable. r=sotaro 2016-01-05 14:03:26 +01:00
Nicolas Silva
360f6becaa Bug 1228952 - Move texture metadata out of the BufferTextureClient/Host's buffer. r=Sotaro 2015-12-16 19:50:58 +01:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Nathan Froyd
bf7f6dda03 Bug 1207245 - part 3 - switch all uses of mozilla::RefPtr<T> to nsRefPtr<T>; r=ehsan
This commit was generated using the following script, executed at the
top level of a typical source code checkout.

 # Don't modify select files in mfbt/ because it's not worth trying to
 # tease out the dependencies currently.
 #
 # Don't modify anything in media/gmp-clearkey/0.1/ because those files
 # use their own RefPtr, defined in their own RefCounted.h.
find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    grep -v 'mfbt/RefPtr.h' | \
    grep -v 'mfbt/nsRefPtr.h' | \
    grep -v 'mfbt/RefCounted.h' | \
    grep -v 'media/gmp-clearkey/0.1/' | \
    xargs perl -p -i -e '
 s/mozilla::RefPtr/nsRefPtr/g; # handle declarations in headers
 s/\bRefPtr</nsRefPtr</g; # handle local variables in functions
 s#mozilla/RefPtr.h#mozilla/nsRefPtr.h#; # handle #includes
 s#mfbt/RefPtr.h#mfbt/nsRefPtr.h#;       # handle strange #includes
'

 # |using mozilla::RefPtr;| is OK; |using nsRefPtr;| is invalid syntax.
find . -name '*.cpp' -o -name '*.mm' | xargs sed -i -e '/using nsRefPtr/d'

 # RefPtr.h used |byRef| for dealing with COM-style outparams.
 # nsRefPtr.h uses |getter_AddRefs|.
 # Fixup that mismatch.
find . -name '*.cpp' -o -name '*.h'| \
    xargs perl -p -i -e 's/byRef/getter_AddRefs/g'
2015-10-18 00:40:10 -04:00
David Anderson
89329365b2 Remove the static compositor backend variable. (bug 1211109 part 2, r=mattwoodrow) 2015-10-05 23:39:00 -07:00
Vladimir Vukicevic
b32faccead Bug 1179935, introduce complex viewport projections to Compositor, remove PrepareViewport; r=mstange
---
 gfx/layers/Compositor.h                          |  10 ---
 gfx/layers/basic/BasicCompositor.h               |   2 -
 gfx/layers/composite/TextureHost.h               |  34 +++++++-
 gfx/layers/d3d11/CompositorD3D11.cpp             |  47 +++++++---
 gfx/layers/d3d11/CompositorD3D11.h               |   4 +-
 gfx/layers/d3d9/CompositorD3D9.h                 |   2 +-
 gfx/layers/opengl/CompositingRenderTargetOGL.cpp |  23 +++--
 gfx/layers/opengl/CompositingRenderTargetOGL.h   |   2 +
 gfx/layers/opengl/CompositorOGL.cpp              | 104 +++++++++++++----------
 gfx/layers/opengl/CompositorOGL.h                |   6 +-
 10 files changed, 145 insertions(+), 89 deletions(-)
2015-05-19 13:51:26 -04:00
Sotaro Ikeda
aceac53520 Bug 1167799 part 2 - Add EGL_ANDROID_image_crop support r=nical,jgilbert 2015-07-19 16:03:10 -07:00
Birunthan Mohanathas
a29151dc87 Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Nathan Froyd
92a8124fef Bug 1161627 - part 2 - machine-convert TemporaryRef<T> to already_AddRefed<T>; r=ehsan
This conversion was done with the script:

  find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl' | \
    egrep -v 'cairo-win32-refptr.h|RefPtr.h|TestRefPtr.cpp' | \
    xargs sed -i -e 's/mozilla::TemporaryRef</already_AddRefed</g' \
                 -e 's/TemporaryRef</already_AddRefed</g'

Manual fixups were performed in the following instances:

- We handled mfbt/RefPtr.h manually so as to not convert TemporaryRef itself
  into already_AddRefed.

- The following files had explicit Move() calls added to make up for the lack
  of a copy constructor on already_AddRefed:

  dom/base/ImageEncoder.cpp
  dom/media/MediaTaskQueue.{h,cpp}
  dom/media/webaudio/PannerNode.cpp

- A redundant overload for MediaTaskQueue::Dispatch was deleted.

- A few manual fixups were required in mfbt/tests/TestRefPtr.cpp.

- Comments, using declarations, and forward declarations relating to
  TemporaryRef in dom/canvas/ and gfx/layers/ were changed to refer to
  already_AddRefed.
2015-06-17 10:00:52 -04:00
Jeff Gilbert
b9ee920350 Bug 1144906 - Add accel E10S backend for WebGL compositing. - r=jrmuizel,mattwoodrow,nical,sotaro 2015-06-04 17:15:38 -07:00
Wes Kocher
c801883c90 Backed out changeset c4d1692d88ee (bug 1144906) for OSX m(gl) permaorange 2015-06-04 16:50:59 -07:00