Граф коммитов

53 Коммитов

Автор SHA1 Сообщение Дата
Jeff Gilbert ef930cf580 Bug 1224199 - Destroy SharedSurfaces before ~GLContext(). - r=jrmuizel 2016-04-14 13:50:04 -07:00
Jeff Gilbert 8393e592aa Bug 1256492 - Cast to proper width to avoid C4312 on VS2015; r=jrmuizel
MozReview-Commit-ID: GTwoVyCVwOc

--HG--
extra : rebase_source : 5e1879ae64cc4542dde6b8dadfd4df309ee9c917
extra : histedit_source : 0551819f17c764ad50df5b1ff918f6ec037f015c
2016-03-21 10:49:23 -07:00
Nicolas Silva 644321f6b6 Bug 1256693 - Refer to ClientIPCAllocator instead of ISurfaceAllocator where it makes sense. r=sotaro 2016-03-21 15:18:20 +01:00
James Willcox ec95f4bf71 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 b66e705f39 Bug 1236762 - Simplify locking APIs for SharedSurface. - r=jrmuizel 2016-01-05 15:57:44 -08:00
Jamie Nicol 65912b35e8 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 01583602a9 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

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Nathan Froyd 583afa0965 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 dd98b66ab0 Bug 709490 - Part 9: Readback without blocking main thread. r=jgilbert
--HG--
extra : rebase_source : 83fe8ec524c061622465221f51e15747e30420fa
2015-10-12 11:21:03 +08:00
Wes Kocher c1750b75c7 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 27bcae10e8 Bug 709490 - Part 9: Readback without blocking main thread. r=jgilbert
--HG--
extra : rebase_source : a8fc936aa9a9096f70f5e58b3b0450943f7215ba
2015-10-05 10:50:16 +08:00
Wes Kocher 8631de9c2b 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 7c548ee466 Bug 709490 - Part 9: Readback without blocking main thread, r=jgilbert 2015-09-29 11:51:25 +01:00
Jeff Gilbert 187dfafc29 Bug 1191042 - Use CreateOffscreen for WebGL instead of CreateHeadless. - r=jrmuizel 2015-09-24 12:21:05 -07:00
Phil Ringnalda 449e9119b4 Back out f84aedf7a62d (bug 1191042) for b2g emulator test failures
CLOSED TREE
2015-09-22 19:26:13 -07:00
Jeff Gilbert 8d443901df Bug 1191042 - Use CreateOffscreen for WebGL instead of CreateHeadless. - r=jrmuizel 2015-09-22 16:49:25 -07:00
Birunthan Mohanathas a8939590de 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 ee12c03986 Bug 1144906 - Add accel E10S backend for WebGL compositing. - r=jrmuizel,mattwoodrow,nical,sotaro 2015-06-04 17:15:38 -07:00
Wes Kocher 77bc735a23 Backed out changeset c4d1692d88ee (bug 1144906) for OSX m(gl) permaorange 2015-06-04 16:50:59 -07:00
Jeff Gilbert 891a5c7f86 Bug 1144906 - Add accel E10S backend for WebGL compositing. - r=jrmuizel,mattwoodrow,nical,sotaro 2015-06-04 14:21:32 -07:00
Wes Kocher 5ee1a8327e Backed out changeset 29bd04fc57f0 (bug 1144906) for b2g m12 orange
--HG--
extra : amend_source : 79faafb4230715cf6af79b452d121d1e7b58e665
2015-05-28 17:08:53 -07:00
Jeff Gilbert ec631286de Bug 1144906 - Fast WebGL compositing on E10S. - r=jrmuizel,mattwoodrow,nical 2015-05-28 14:51:39 -07:00
Jeff Gilbert 1397909531 Bug 1053635 - Expose SharedSurfaceEGL::mImage. r=romaxa 2014-08-14 15:07:00 -04:00
Jeff Gilbert 462da9f9df Bug 1049957 - Fix compilation errors. - r=kamidphish 2014-08-15 17:38:08 -07:00
Jeff Gilbert ebe1200d76 Bug 1049957 - Use UniquePtr for SharedSurface, SurfaceFactory. - r=kamidphish 2014-08-15 17:38:08 -07:00
Jeff Gilbert 11ccb72d46 Bug 1037704 - Add polling support to ShSurf. - r=mattwoodrow 2014-08-04 22:10:47 -07:00
Jeff Gilbert f032a2a672 Bug 1037151 - Merge SharedSurface_GL into SharedSurface. - r=mattwoodrow 2014-07-11 15:10:49 -07:00
James Willcox 1fd761ef37 Bug 956993 - Rely on OES_EGL_image_external for SharedSurface_EGLImage r=jgilbert 2014-03-05 15:48:58 -06:00
Bas Schouten fdb4be9e33 Bug 960254 - Part 2: Update some callers that write to DataSourceSurface. r=jrmuizel 2014-01-16 13:17:23 +01:00
Bas Schouten 6a885186bb 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 faa7d6f7e2 Bug 960354 - Part 2: Update some callers that write to DataSourceSurfaces. r=jrmuizel 2014-01-16 13:17:23 +01:00
Benoit Jacob a1e7c32630 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 ba93ad0ec2 Bug 950903 - 6/8 - Remove GLContext::GetNativeData - r=jgilbert 2014-01-07 15:02:18 -05:00
Benoit Jacob 1c4c105204 Bug 949819 - Move remaining ReadPixels and GetTexImage helpers out of GLContext - r=jgilbert 2014-01-02 10:17:29 -05:00
Benoit Jacob 62c75299c9 Bug 949814 - Remove GetEGLContext and GetLibraryEGL from GLContext - r=jgilbert 2014-01-02 10:17:25 -05:00
Andreas Pehrson 5cfa83a3e4 Bug 877115 - [Moz2Dify] Part 6. Moz2Dify SharedSurface_EGLImage::GetPixels. r=nical 2013-12-16 15:50:53 -05:00
Andreas Pehrson bbf9fe777c 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 df8b1437b6 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 2d0ad0d42d Bug 877115 - [Moz2Dify] Part 6. Moz2Dify SharedSurface_EGLImage::GetPixels. r=nical 2013-12-16 15:50:53 -05:00
Andreas Pehrson 2fdd39a52c 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 aef4e1d147 Bug 945023 - Extract CreateTextureXXX and CreateRenderbufferXXX from GLContext. r=bjacob 2013-12-06 10:36:13 -05:00
Ryan VanderMeulen 8648eb6908 Backed out changeset 9d673e562fa6 (bug 945023) for OSX bustage. 2013-12-04 20:42:55 -05:00
Dan Glastonbury 6377363d81 Bug 945023 - Extract CreateTextureXXX and friends from GLContext. r=bjacob 2013-12-04 15:41:22 +10:00
Dan Glastonbury 47033c5692 Bug 942492 - Move ScopedGL* RAII helpers out of GLContext.* - r=bjacob 2013-11-26 13:25:25 +10:00
Benoit Jacob cbc3e900a8 Bug 942503 - Move Blit* functions out of GLContext, except for BlitTextureImage - r=jgilbert 2013-11-28 15:57:19 -05:00
Benoit Jacob 55d6cf1e20 Bug 913872 - Take nested enums out of gfxASurface - 1/3 : automatic changes - r=jrmuizel
Generated by these regexes:

find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/gfx[A-Za-z0-9_]*Surface\:\:[a-z]*\(\(ImageFormat\|SurfaceType\|ContentType\|MemoryLocation\)[0-9A-Za-z_]*\)/gfx\1/g'

find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/gfx[A-Za-z0-9_]*Surface\:\:[a-z]*\(\(CONTENT_\|MEMORY_\)[0-9A-Za-z_]*\)/GFX_\1/g'

find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)\(CONTENT_COLOR\|CONTENT_ALPHA\|CONTENT_COLOR_ALPHA\|CONTENT_SENTINEL\|MEMORY_IN_PROCESS_HEAP\|MEMORY_IN_PROCESS_NONHEAP\|MEMORY_OUT_OF_PROCESS\)\($\|[^A-Za-z0-9_]\)/\1GFX_\2\3/g'

find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)\(ImageFormatARGB32\|ImageFormatRGB24\|ImageFormatA8\|ImageFormatA1\|ImageFormatRGB16_565\|ImageFormatUnknown\|SurfaceTypeImage\|SurfaceTypePDF\|SurfaceTypePS\|SurfaceTypeXlib\|SurfaceTypeXcb\|SurfaceTypeGlitz\|SurfaceTypeQuartz\|SurfaceTypeWin32\|SurfaceTypeBeOS\|SurfaceTypeDirectFB\|SurfaceTypeSVG\|SurfaceTypeOS2\|SurfaceTypeWin32Printing\|SurfaceTypeQuartzImage\|SurfaceTypeScript\|SurfaceTypeQPainter\|SurfaceTypeRecording\|SurfaceTypeVG\|SurfaceTypeGL\|SurfaceTypeDRM\|SurfaceTypeTee\|SurfaceTypeXML\|SurfaceTypeSkia\|SurfaceTypeSubsurface\|SurfaceTypeD2D\|SurfaceTypeMax\)\($\|[^A-Za-z0-9_]\)/\1gfx\2\3/g'
2013-09-24 16:45:13 -04:00
Benoit Jacob a653be5aa4 Bug 912974 - Split two classes out of GLContext.h, and remove many #includes in GLContext.h - r=jrmuizel 2013-09-06 22:13:37 -04:00
Benoit Jacob ba8d97426a Bug 848481 - ♫ Don't say ClientWaitSync unless FOREVER ♫ - r=jgilbert
This fixes a flickering bug with some NVIDIA drivers. From the comment:

Wait FOREVER, primarily because some NVIDIA (at least Tegra) drivers
have ClientWaitSync returning immediately if the timeout delay is anything
else than FOREVER.

FIXME: should we try to use a finite timeout delay where possible?
2013-05-07 16:09:09 -04:00
Jeff Gilbert 3c4c057a91 Bug 716859 - Streaming GLContext buffers (doublebuffering, etc) - r=bjacob,jrmuizel,vlad
--HG--
extra : rebase_source : 3fb4230127df8a265d930fb779bdc93e05626c8b
2013-02-13 15:26:24 -08:00
Ed Morley 2f50db2b9c Backed out changeset 82747d694e7a (bug 716859) for android reftest-2 timeouts 2013-02-21 19:54:25 +00:00