Commit Graph

232 Commits

Author SHA1 Message Date
David Anderson
dd9507885a Fix not deallocating device data after changing OGL compositors. (bug 1350259, r=mattwoodrow) 2017-03-27 14:03:59 -07:00
David Anderson
b346f548c2 Material changes for TextureHost TextureSourceProvider support. (bug 1343814 part 3.2, 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
sotaro
e4aa155f04 Bug 1343764 - Add ExternalBuffer handling r=nical 2017-03-07 19:37:28 +09:00
Matt Woodrow
16f8a8bdeb Bug 1308363 - Remove GONK specific code from gfx/. r=jrmuizel,sotaro 2016-10-27 13:17:10 +13:00
Jamie Nicol
3a2786f6bf Bug 1311642 - Remove BeginUpdate and EndUpdate from GLTextureImage. r=nical
Only DirectUpdate was actually being used, so remove the dead
code. TextureImageCGL does't do anything over BasicTextureImage any more
so remove it too.

MozReview-Commit-ID: D7jpC9M7aTT
2016-10-20 17:11:00 +01:00
Edwin Flores
a99d10788a Bug 1264505 - Target EGLImage to GL_TEXTURE_2D if OES_EGL_image_external extension is not available - r=jgilbert 2016-07-13 11:16:54 +01:00
Jonathan Watt
356d59cd2f Bug 1277862, part 2 - Rename Moz2D's Filter to SamplingFilter in the rest of gfx/. r=Bas 2016-05-25 17:01:18 +01:00
Jeff Muizelaar
fc9a34c98c Bug 1265960 - Remove gfxReusable* r=Bas
These aren't used anymore.
2016-04-20 11:39:15 -04:00
Nicolas Silva
1784835c04 Bug 1258768 - Check compositor backends before casting. r=dvander 2016-04-14 12:38:38 +02:00
Sotaro Ikeda
0fc240ed8d Bug 1262601 - Handle video content as opaque in PostProcessLayers() r=mattwoodrow 2016-04-10 19:51:21 -07:00
David Anderson
c9dd0eb7b5 Recreate GLTextureSources after changing compositors on Mac. (bug 1247611, r=mattwoodrow) 2016-03-30 09:33:24 -04:00
Nicolas Silva
653be51b55 Bug 1245813 - Fix a trivial inverted null check in TextureHostOGL.cpp. r=me 2016-03-23 15:31:21 +01:00
Paul Adenot
9d70eba0a8 Bug 1245813 - Add a missing parenthesis on NS_SUCCEEDED, on a CLOSED TREE. 2016-03-23 12:48:41 +01:00
Nicolas Silva
8a95dce6b6 Bug 1245813 - Make TextureHost bullet-proof against changing its compositor. r=dvander 2016-03-22 15:28:27 +01:00
Carsten "Tomcat" Book
3151649f4b Backed out changeset 38aa13f30b92 (bug 1245813) for bc7 crashes on a CLOSED TREE 2016-03-22 17:11:21 +01:00
Nicolas Silva
425f016193 Bug 1245813 - Make TextureHost bullet-proof against changing its compositor. r=dvander 2016-03-22 15:28:27 +01:00
peter chang
fb8ae2cef0 Bug 1251163 - Clear android surface texture before widget shutdown, r=nical
MozReview-Commit-ID: B68vVjR41OF
2016-02-25 16:48:55 +08:00
Nicholas Nethercote
cb3257ada4 Bug 1239225 - Remove unused args from TextureImage's constructor and related functions. r=mattwoodrow. 2016-01-12 23:10:56 -08: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
Nicolas Silva
bfd10fbd69 Bug 1229577 - Rename NewSurfaceDescriptorGralloc into SurfaceDescriptorGralloc. r=sotaro 2015-12-04 11:23:42 +01:00
James Willcox
c59d06cbd9 Bug 1208513 - Resurrect SharedSurface_GLTexture for use on iOS r=jgilbert 2015-10-28 14:10:25 -05: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
Matt Woodrow
9949478058 Bug 1192571 - Make sure we reparent all TextureSources when dragging a tab between windows. r=jrmuizel 2015-08-13 15:59:07 -04:00
Andrew Comminos
0d5c44c2c1 Bug 1187440 - Fix curly brace bustage in TextureHostOGL. CLOSED TREE 2015-07-30 10:13:00 -04:00
Andrew Comminos
f8f6e8f2c8 Bug 1187440 - Implement GLX shared surfaces on the OpenGL compositor. r=jgilbert,nical 2015-07-30 12:40:56 -04: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
Jeff Gilbert
f857abecd5 Bug 1144906 - Add accel E10S backend for WebGL compositing. - r=jrmuizel,mattwoodrow,nical,sotaro 2015-06-04 14:21:32 -07:00
Amanda Sambath
f89f621f37 Bug 1158120 - Replace nsIntSize by mozilla::gfx::IntSize in gfx/layers. r=nical 2015-06-03 13:45:24 +02:00
Wes Kocher
e3c99b1002 Backed out changeset 29bd04fc57f0 (bug 1144906) for b2g m12 orange 2015-05-28 17:08:53 -07:00
Jeff Gilbert
1e6d621331 Bug 1144906 - Fast WebGL compositing on E10S. - r=jrmuizel,mattwoodrow,nical 2015-05-28 14:51:39 -07:00
Jeremy Chen
9b9e69cd0f Bug 1155495 - Part 1: Remove TextureHostOGL and integrate the platform specific API into TextureHost. r=nical, r=sotaro 2015-05-22 02:25:00 -04:00
Ethan Lin
02d4c66440 Bug 1155498 - Part 2 - Use new FenceHandle to handle the fence in TextureHost. r=sotaro 2015-05-13 00:36:00 +02:00
Nicolas Silva
ea494e1155 Bug 1155621 - Remove no-op gfx2DGlue conversion helpers. r=Bas 2015-04-21 17:22:30 +02:00
Nicolas Silva
d73f54cb00 Bug 1155621 - Make nsIntRect and nsIntPoint typedefs of mozilla::gfx::IntRect and mozilla::gfx::IntPoint. r=Bas 2015-04-21 17:04:57 +02:00
Nicolas Silva
13344864c0 Bug 1132854 - Make nsIntSize a typedef of gfx::IntSize. r=Bas, roc 2015-03-29 16:59:08 +02:00
Nicolas Silva
d88ccba361 Bug 1147894 - Only use non-null compositors with TextureHost::SetCompositor. r=sotaro 2015-03-27 11:16:18 +01:00
Jeff Gilbert
e2b7d174dd Bug 1100699 - Use OriginPos instead of isInverted. - r=mattwoodrow,snorp 2014-11-17 17:02:19 -08:00
Milan Sreckovic
06cb5bf264 Bug 1110528 - Check for invalid surface before calling update. r=nical
CLOSED TREE
2014-12-12 14:56:06 -05:00
James Willcox
7fcdaf7a42 Bug 1097116 - Add fencing and better lifetime management for EGLImage Images r=jgilbert 2014-11-26 15:16:07 -06:00
Jeff Muizelaar
60181dcf0a Bug 1097877. Move GLBlitTextureImageHelper from gfx/gl to gfx/layers/opengl. r=nical
The only user is in layers/opengl. This is needed to do better state tracking
in the compositor.
2014-11-10 14:49:05 -05:00
James Willcox
4da97db54f Bug 1086693 - Part 6: Use generated bindings for AndroidMediaCodec and AndroidSurfaceTexture r=blassey,gcp 2014-11-13 12:47:24 -06:00
Jeff Gilbert
e18e91b197 Bug 1088345 - Improve glGetError handling. - r=kamidphish 2014-10-24 16:52:35 -07:00
Nicolas Silva
6ea204e520 Bug 1077301 - Simplify the gralloc texture code. r=sotaro 2014-10-16 19:08:32 +02:00
Ryan VanderMeulen
2211ee6ae4 Backed out changeset 5ff4c7dded93 (bug 1077301) for making bug 1084118 return with a near perma-fail vengeance. 2014-10-24 14:25:25 -04:00
Nicolas Silva
0de37868e9 Bug 1077301 - Simplify the gralloc texture code. r=sotaro 2014-10-16 19:08:32 +02:00