Commit Graph

102 Commits

Author SHA1 Message Date
Alexandre Lissy
84fb517e6b Bug 1305655 - Decouple Gonk TextureForwarder and CompositableForwarder (followup bug 1281456) r=nical
MozReview-Commit-ID: 1sUiqnFEPdx
2016-09-28 07:04:13 +02:00
Matt Woodrow
2dabc216dc Bug 1281456 - Decouple TextureForwarder and CompositableForwarder. r=gw280 2016-09-27 16:22:20 +13:00
Ryan Hunt
889bd8ab44 Bug 1294586 - Remove dependency on gfxPlatform from CreateDrawTargetFromData. r=dvander
MozReview-Commit-ID: A355fBJKWP6
2016-08-11 14:54:08 -07:00
Nicolas Silva
99d9ac0ea9 Bug 1266396 - Make TextureClient more robust against racy shutdown situations. r=Bas 2016-04-22 18:05:26 +02: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
Nicolas Silva
329b5544c1 Bug 1256693 - ISurfaceAllocator cleanup. r=sotaro 2016-03-17 14:58:58 +01:00
Kan-Ru Chen
febf47d883 Bug 1249245 - Add missing header gfxPrefs.h to GrallocTextureClient.cpp. r=cyu
MozReview-Commit-ID: ILck1Eh6XGU
2016-02-18 18:59:38 +08:00
Milan Sreckovic
b48f37c5de Bug 1235613 - Make gfxCriticalError/Note strings in gfx/ unique. r=jrmuizel 2015-12-29 14:03:58 -05:00
Nicolas Silva
bfd10fbd69 Bug 1229577 - Rename NewSurfaceDescriptorGralloc into SurfaceDescriptorGralloc. r=sotaro 2015-12-04 11:23:42 +01:00
Nicolas Silva
b1de4c43fe Bug 1200595 - Another build fix on a CLOSED TREE. 2015-11-30 10:44:08 +01:00
Nicolas Silva
2a259248c6 Bug 1200595 - Build fix on a CLOSED TREE. 2015-11-30 10:40:45 +01:00
Nicolas Silva
5267fdf32a Bug 1200595 - Consolidate the TextureClient's destruction logic. r=mattwoodrow 2015-11-20 14:25:03 +01:00
Nicolas Silva
4b993ad22a Bug 1200595 - Merge TextureClient and ClientTexture back into TextureClient. r=mattwoodrow 2015-11-20 14:25:00 +01:00
Nicolas Silva
256c6f41e1 Bug 1200595 - Gralloc TextureData implementation. r=sotaro 2015-10-15 17:53:37 +02:00
Nicolas Silva
611cfab052 Bug 1200595 - Buffer TextureData implementation. r=mattwoodrow 2015-10-15 17:53:33 +02:00
Wes Kocher
76bed94f9a Backed out 12 changesets (bug 1200595) for b2g mochitest crashes in SharedBufferManagerParent CLOSED TREE
Backed out changeset cf8cf1a039dd (bug 1200595)
Backed out changeset 65da564f952c (bug 1200595)
Backed out changeset 7663208f1582 (bug 1200595)
Backed out changeset fc1fbb97c8eb (bug 1200595)
Backed out changeset 3ad5a4c457fe (bug 1200595)
Backed out changeset add3fe9afc0c (bug 1200595)
Backed out changeset 68aba6b39588 (bug 1200595)
Backed out changeset ab326c34f1cf (bug 1200595)
Backed out changeset ed34bc528a1b (bug 1200595)
Backed out changeset 0dc93424546c (bug 1200595)
Backed out changeset 8cc12f12f3d1 (bug 1200595)
Backed out changeset bb84403701b7 (bug 1200595)
2015-11-24 10:07:02 -08:00
Nicolas Silva
114bb1661a Bug 1200595 - Consolidate the TextureClient's destruction logic. r=mattwoodrow 2015-11-20 14:25:03 +01:00
Nicolas Silva
c419224832 Bug 1200595 - Merge TextureClient and ClientTexture back into TextureClient. r=mattwoodrow 2015-11-20 14:25:00 +01:00
Nicolas Silva
87c9127e1e Bug 1200595 - Gralloc TextureData implementation. r=sotaro 2015-10-15 17:53:37 +02:00
Nicolas Silva
abb5d0f407 Bug 1200595 - Buffer TextureData implementation. r=mattwoodrow 2015-10-15 17:53:33 +02:00
Carsten "Tomcat" Book
f2da327ad7 Backed out 13 changesets (bug 1200595) for possibly breaking Reftest [TC] Crashtest tc-R on a CLOSED TREE
Backed out changeset e7278af0a484 (bug 1200595)
Backed out changeset c13228f84d85 (bug 1200595)
Backed out changeset 4b88e8a3d8af (bug 1200595)
Backed out changeset e55376bd2cf8 (bug 1200595)
Backed out changeset 9c27c8e2c021 (bug 1200595)
Backed out changeset a369a2983ceb (bug 1200595)
Backed out changeset 09e71ba15ea8 (bug 1200595)
Backed out changeset b555b130d439 (bug 1200595)
Backed out changeset 6819f6d82287 (bug 1200595)
Backed out changeset a8cdfbf443d8 (bug 1200595)
Backed out changeset 0092c9d7a86b (bug 1200595)
Backed out changeset 6dc38a1e6073 (bug 1200595)
Backed out changeset fe2164aa1468 (bug 1200595)
2015-11-20 16:55:26 +01:00
Nicolas Silva
51da7ff08c Bug 1200595 - Consolidate the TextureClient's destruction logic. r=mattwoodrow
* * *
Bug 1200595 - Rebase fixes
2015-11-20 14:25:03 +01:00
Nicolas Silva
5aa757715e Bug 1200595 - Merge TextureClient and ClientTexture back into TextureClient. r=mattwoodrow 2015-11-20 14:25:00 +01:00
Nicolas Silva
bd5414e7ad Bug 1200595 - Gralloc TextureData implementation. r=sotaro 2015-10-15 17:53:37 +02:00
Nicolas Silva
75de75b2f5 Bug 1200595 - Buffer TextureData implementation. r=mattwoodrow 2015-10-15 17:53:33 +02:00
Nicholas Nethercote
7f19b68d7f Bug 1209812 (part 3) - Rename SurfaceFormat::R5G6B5 as R5G6B5_UINT16. r=Bas. 2015-10-22 23:01:31 -07: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
Bas Schouten
0fdee84c97 Bug 1190950: Check mappings and surfaces for UpdateFromSurface more robustly. r=mattwoodrow 2015-08-06 02:29:47 +00:00
Bas Schouten
dfa16d7d10 Bug 1176363 - Part 1: Stop using DrawTargets off the main thread. r=mattwoodrow 2015-07-27 15:47:29 +00:00
Ryan VanderMeulen
b4eaa459f9 Backed out changeset adbd8a7608e4 (bug 1176363) for mochitest-gl permacrashes. 2015-07-27 13:54:56 -04:00
Bas Schouten
4fb399d2b2 Bug 1176363 - Part 1: Stop using DrawTargets off the main thread. r=mattwoodrow 2015-07-27 15:47:29 +00:00
Sotaro Ikeda
8a456d76d9 Bug 1167799 part 1 - Remove size from NewSurfaceDescriptorGralloc r=nical 2015-07-19 16:02:51 -07:00
Robert O'Callahan
c4a9604528 Bug 1143575. Factor out AsyncTransactionWaiter from AsyncTransactionTracker so we'll be able to wait for multiple AsyncTransactionTrackers. r=nical,sotaro 2015-05-12 15:36:49 +12: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
Nathan Froyd
43cddcfc0d Bug 1160485 - remove implicit conversion from RefPtr<T> to TemporaryRef<T>; r=ehsan
Having this implicit conversion means that we can silently do extra
refcounting when it's completely unnecessary.  It's also an obstacle to
making RefPtr more nsRefPtr-like, so let's get rid of it.
2015-05-01 09:14:16 -04:00
Kan-Ru Chen
b8dd55656b Bug 1166649 - Fix GrallocTextureClient.cpp unified build bustage. r=nical 2015-05-20 02:40:00 -04:00
Ethan Lin
35bd667a8a Bug 1155498 - Part 4 - Use new FenceHandle to handle the fence in TextureClient. r=sotaro 2015-05-13 01:42:00 +02:00
Ethan Lin
c5cd30776e Bug 1053563 - Use a static create function to replace InitWith for TextureClient. r=nical 2015-04-29 19:34:00 +02:00
Sotaro Ikeda
cd5b2dd4d2 Bug 1125913 - Use GraphicBuffer::lockAsync() on gonk LL r=nical 2015-01-27 10:05:35 -08:00
Jeff Gilbert
e2b7d174dd Bug 1100699 - Use OriginPos instead of isInverted. - r=mattwoodrow,snorp 2014-11-17 17:02:19 -08:00
Sotaro Ikeda
a4a74b6d14 Bug 1043558 - Use gralloc for WebRTC camera preview r=jesup,nical 2014-12-16 07:11:48 -08:00
Robert O'Callahan
d08ad3915a Bug 1073252. Part 1: Track opaqueness of gralloc TextureClient/Host. r=nical 2014-10-30 15:32:40 +13:00
jdashg
bc7e26ddd9 Bug 1066280 - Review fixes. - r=kamidphish,mattwoodrow 2014-10-08 13:04:19 -07:00
jdashg
fd685b2322 Bug 1066280 - Fixes. - r=kamidphish,mattwoodrow
From 4e9f52ab105333e8b1120342e9583b2d833a4465 Mon Sep 17 00:00:00 2001
---
 dom/canvas/WebGLContext.cpp                | 10 +++++--
 gfx/gl/GLContext.cpp                       | 20 --------------
 gfx/gl/GLContext.h                         |  3 --
 gfx/gl/GLReadTexImageHelper.cpp            |  5 +++-
 gfx/gl/GLScreenBuffer.cpp                  | 13 +++++++--
 gfx/gl/GLUploadHelpers.cpp                 | 27 ++++++++++++++++++
 gfx/gl/SharedSurfaceGralloc.cpp            | 14 ++++------
 gfx/gl/SharedSurfaceGralloc.h              | 10 +++++--
 gfx/gl/SurfaceTypes.cpp                    |  2 ++
 gfx/gl/SurfaceTypes.h                      |  1 +
 gfx/layers/client/CanvasClient.cpp         | 44 ++++++++++++++++++------------
 gfx/layers/client/CanvasClient.h           |  8 +++---
 gfx/layers/client/ClientCanvasLayer.cpp    |  6 ++++
 gfx/layers/client/ClientCanvasLayer.h      |  2 +-
 gfx/layers/client/TextureClient.cpp        | 11 ++++----
 gfx/layers/client/TextureClient.h          |  6 ++--
 gfx/layers/composite/TextureHost.cpp       | 15 +++++-----
 gfx/layers/composite/TextureHost.h         | 10 +++----
 gfx/layers/d3d10/CanvasLayerD3D10.cpp      |  9 ++++--
 gfx/layers/d3d9/CanvasLayerD3D9.cpp        |  8 ++++--
 gfx/layers/ipc/LayersSurfaces.ipdlh        |  4 +--
 gfx/layers/moz.build                       |  4 ++-
 gfx/layers/opengl/GrallocTextureClient.cpp | 26 +++++++++++++++++-
 gfx/layers/opengl/GrallocTextureClient.h   |  3 ++
 24 files changed, 171 insertions(+), 90 deletions(-)
2014-10-07 21:11:54 -07:00
Nicolas Silva
469c52e3f9 Bug 1061699 - Only crash debug builds if BorrowDrawTarget is called on an unlocked TextureClient. r=Bas 2014-09-16 14:32:24 +02:00
Nicolas Silva
f8d771a884 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
Sotaro Ikeda
e9f22928b0 Bug 1039883 - release Tiled layer's gralloc when an application is background r=nical 2014-07-19 05:33:12 -07:00
Wes Kocher
a38cfddcd3 Backed out changeset 9b764e12796d (bug 1039883) for b2g m7 failures 2014-07-18 14:21:44 -07:00
Sotaro Ikeda
010ff9062f Bug 1039883 - release Tiled layer's gralloc when an application is background r=nical 2014-07-18 12:40:35 -07:00