Commit Graph

59 Commits

Author SHA1 Message Date
Jeff Gilbert
6d7820531a Bug 1356540 - Remove unused TextureGarbageBin. - r=daoshengmu
MozReview-Commit-ID: 3EON2kNdEBh
2017-04-19 17:03:03 -07:00
Edwin Flores
e3b8ebc46e Bug 925645 - Turn SharedSurface::mGL into a WeakPtr<> - r=jgilbert 2016-10-24 16:35:31 +01:00
Matt Woodrow
2dabc216dc Bug 1281456 - Decouple TextureForwarder and CompositableForwarder. r=gw280 2016-09-27 16:22:20 +13: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
Edwin Flores
82da44b40b Bug 1264505 - Remove unused method SharedSurface_EGLImage::AcquireConsumerTexture - r=jgilbert 2016-07-13 11:16:54 +01:00
eyim
e2c2b0b56c Bug 1277027 - fix MOZ_CRASH to have GFX prefix in webGL code r=BenWa,milan
MozReview-Commit-ID: FjLA9xNH3zD
2016-06-06 11:17:23 -04:00
Jeff Gilbert
ad8d28d3f0 Bug 1224199 - Destroy SharedSurfaces before ~GLContext(). - r=jrmuizel 2016-04-14 13:50:04 -07:00
Jeff Gilbert
318ddca7b6 Bug 1256492 - Cast to proper width to avoid C4312 on VS2015; r=jrmuizel
MozReview-Commit-ID: GTwoVyCVwOc
2016-03-21 10:49:23 -07:00
Nicolas Silva
000ef2da39 Bug 1256693 - Refer to ClientIPCAllocator instead of ISurfaceAllocator where it makes sense. r=sotaro 2016-03-21 15:18:20 +01:00
James Willcox
25af73d272 Bug 1238541 - Don't die in SharedSurface_EGLImage::ProducerReadReleaseImpl() if there is an existing fence r=jgilbert 2016-02-01 10:53:25 -06:00
Jeff Gilbert
1fdaa97a04 Bug 1236762 - Simplify locking APIs for SharedSurface. - r=jrmuizel 2016-01-05 15:57:44 -08:00
Jamie Nicol
c57c13ae0b Bug 1210444 - Set DEALLOCATE_CLIENT flag for EGLImage SharedSurfaceTextureClients. r=nical
SharedSurface_EGLImages are deallocated on the client side and are
unable to be recycled. This led to a race condition where CanvasClient
would free a TextureClient, destroying its underlying data, but
ImageHost might attempt to composite the corresponding TextureHost
before receiving a replacement to use instead.

Give SharedSurface an interface for its backends to specify any texture
flags that they require a TextureClient to set, and ensure that
DEALLOCATE_CLIENT is set for SharedSurface_EGLImage
SharedSurfaceTextureClients. This ensures that texture data is destroyed
synchronously and, importantly, after any outstanding ipdl messages have
been delivered. This guarantees that ImageHost has received a new
TextureHost to composite before the previous TextureHost's data is
destroyed.
2015-10-19 17:26:26 +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
Morris Tseng
07bba8f130 Bug 709490 - Part 9: Readback without blocking main thread. r=jgilbert 2015-10-12 11:21:03 +08:00
Wes Kocher
bbd458236d Backed out 11 changesets (bug 709490) for webgl-color-test.html failures a=backout
Backed out changeset fc04c5d43550 (bug 709490)
Backed out changeset cd8f9410d335 (bug 709490)
Backed out changeset 6e687c9143c1 (bug 709490)
Backed out changeset 9b20f2c833c4 (bug 709490)
Backed out changeset f9d130aea88e (bug 709490)
Backed out changeset fc513b410949 (bug 709490)
Backed out changeset acf6220b431a (bug 709490)
Backed out changeset 9bceaf913791 (bug 709490)
Backed out changeset 37fba20111e2 (bug 709490)
Backed out changeset 2285ce1596b8 (bug 709490)
Backed out changeset fb4e09920569 (bug 709490)
2015-10-05 08:28:25 -07:00
Morris Tseng
1e04cd9230 Bug 709490 - Part 9: Readback without blocking main thread. r=jgilbert 2015-10-05 10:50:16 +08:00
Wes Kocher
20f2b1dd4d Backed out 13 changesets (bug 709490) for android webgl-color-test.html failures
Backed out changeset 5be7514914b6 (bug 709490)
Backed out changeset 04b6f94fbe8a (bug 709490)
Backed out changeset 00c0e85dd8cd (bug 709490)
Backed out changeset 221385b7b81a (bug 709490)
Backed out changeset ecc38c18734f (bug 709490)
Backed out changeset 22878c936384 (bug 709490)
Backed out changeset 0edcbb60eee3 (bug 709490)
Backed out changeset 5feceec2014b (bug 709490)
Backed out changeset 835b655cb873 (bug 709490)
Backed out changeset 6fbb4a3f8cf7 (bug 709490)
Backed out changeset a5f8646fa156 (bug 709490)
Backed out changeset 2ae1386916b3 (bug 709490)
Backed out changeset 6b29a2a0a8fb (bug 709490)
2015-09-29 08:57:36 -07:00
Morris Tseng
26711ddcad Bug 709490 - Part 9: Readback without blocking main thread, r=jgilbert 2015-09-29 11:51:25 +01:00
Jeff Gilbert
f5e35d3064 Bug 1191042 - Use CreateOffscreen for WebGL instead of CreateHeadless. - r=jrmuizel 2015-09-24 12:21:05 -07:00
Phil Ringnalda
978242ee5b Back out f84aedf7a62d (bug 1191042) for b2g emulator test failures
CLOSED TREE
2015-09-22 19:26:13 -07:00
Jeff Gilbert
87aac68e44 Bug 1191042 - Use CreateOffscreen for WebGL instead of CreateHeadless. - r=jrmuizel 2015-09-22 16:49:25 -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
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
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
Jeff Gilbert
6e2d7da82f Bug 1053635 - Expose SharedSurfaceEGL::mImage. r=romaxa 2014-08-14 15:07:00 -04:00
Jeff Gilbert
95893bc0ca Bug 1049957 - Fix compilation errors. - r=kamidphish 2014-08-15 17:38:08 -07:00
Jeff Gilbert
4237c2e5cb Bug 1049957 - Use UniquePtr for SharedSurface, SurfaceFactory. - r=kamidphish 2014-08-15 17:38:08 -07:00
Jeff Gilbert
b20709372d Bug 1037704 - Add polling support to ShSurf. - r=mattwoodrow 2014-08-04 22:10:47 -07:00
Jeff Gilbert
e9a9e7bc3d Bug 1037151 - Merge SharedSurface_GL into SharedSurface. - r=mattwoodrow 2014-07-11 15:10:49 -07:00
James Willcox
7e66101e39 Bug 956993 - Rely on OES_EGL_image_external for SharedSurface_EGLImage r=jgilbert 2014-03-05 15:48:58 -06:00
Bas Schouten
e12bfacb46 Bug 960254 - Part 2: Update some callers that write to DataSourceSurface. r=jrmuizel 2014-01-16 13:17:23 +01:00
Bas Schouten
b8d550e3c7 Backed out 5 changesets (bug 960254, bug 960354)
Backed out changeset 4441c32c724c (bug 960254)
Backed out changeset 4aecc5ca2a19 (bug 960254)
Backed out changeset 9f499e5f7954 (bug 960354)
Backed out changeset fd9b6b044a5a (bug 960354)
Backed out changeset c1f6fbc397bd (bug 960354)
2014-01-16 14:36:53 +01:00
Bas Schouten
805c5c39cd Bug 960354 - Part 2: Update some callers that write to DataSourceSurfaces. r=jrmuizel 2014-01-16 13:17:23 +01:00
Benoit Jacob
f634d4797a Bug 958375 - 4/9 - Make SurfaceFormat a typed enum - r=Bas
Specifically:
  r=Bas for manual changes
  f=Bas for automatic changes
See attachments on the bug for the specific breakdown.
2014-01-10 14:06:16 -05:00
Benoit Jacob
91642bcc6c Bug 950903 - 6/8 - Remove GLContext::GetNativeData - r=jgilbert 2014-01-07 15:02:18 -05:00
Benoit Jacob
221d75d7c4 Bug 949819 - Move remaining ReadPixels and GetTexImage helpers out of GLContext - r=jgilbert 2014-01-02 10:17:29 -05:00
Benoit Jacob
0b5c655bb5 Bug 949814 - Remove GetEGLContext and GetLibraryEGL from GLContext - r=jgilbert 2014-01-02 10:17:25 -05:00
Andreas Pehrson
9949bec312 Bug 877115 - [Moz2Dify] Part 6. Moz2Dify SharedSurface_EGLImage::GetPixels. r=nical 2013-12-16 15:50:53 -05:00
Andreas Pehrson
b35ece092c Bug 877115 - [Moz2Dify] Part 3. Change gfxIntSize to gfx::IntSize in GLContext::OffscreenSize and dependendent classes. r=nical 2013-12-10 17:11:58 +01:00
Wes Kocher
c9c46b9443 Backed out 6 changesets (bug 877115) for mochitest-1 and reftest orange on this CLOSED TREE
Backed out changeset 65ad9d8860d6 (bug 877115)
Backed out changeset bf8095c168fb (bug 877115)
Backed out changeset 290ad5863615 (bug 877115)
Backed out changeset 4488ec28910e (bug 877115)
Backed out changeset 45f8859c6fd6 (bug 877115)
Backed out changeset 111cc426fa9e (bug 877115)
2013-12-16 16:33:07 -08:00
Andreas Pehrson
ec0e8d345a Bug 877115 - [Moz2Dify] Part 6. Moz2Dify SharedSurface_EGLImage::GetPixels. r=nical 2013-12-16 15:50:53 -05:00
Andreas Pehrson
4742dd76e3 Bug 877115 - [Moz2Dify] Part 3. Change gfxIntSize to gfx::IntSize in GLContext::OffscreenSize and dependendent classes. r=nical 2013-12-10 17:11:58 +01:00
Dan Glastonbury
b5527bab54 Bug 945023 - Extract CreateTextureXXX and CreateRenderbufferXXX from GLContext. r=bjacob 2013-12-06 10:36:13 -05:00
Ryan VanderMeulen
3c7236e99f Backed out changeset 9d673e562fa6 (bug 945023) for OSX bustage. 2013-12-04 20:42:55 -05:00
Dan Glastonbury
ac2c958b95 Bug 945023 - Extract CreateTextureXXX and friends from GLContext. r=bjacob 2013-12-04 15:41:22 +10:00
Dan Glastonbury
72cbeb29d0 Bug 942492 - Move ScopedGL* RAII helpers out of GLContext.* - r=bjacob 2013-11-26 13:25:25 +10:00