Commit Graph

38 Commits

Author SHA1 Message Date
Sotaro Ikeda
1ff245b181 Bug 1259571 - Reduce tearing with basic layers on Windows r=dvander
--HG--
rename : gfx/thebes/DeviceManagerD3D11.cpp => gfx/thebes/DeviceManagerDx.cpp
rename : gfx/thebes/DeviceManagerD3D11.h => gfx/thebes/DeviceManagerDx.h
2016-08-23 15:18:55 -07:00
David Anderson
2b23d07c29 Move the DeviceManagerD3D9 singleton out of gfxPlatform. (bug 1297182 part 1, r=mattwoodrow)
--HG--
extra : rebase_source : 2ddbac1ce59cad17b9074a85d7ab11862d9b805d
2016-08-22 17:23:38 -07:00
Carsten "Tomcat" Book
90f6c2d3fd Backed out changeset 02d76f158f3d (bug 1259571) for talos xperf regressions
--HG--
rename : gfx/thebes/DeviceManagerDx.cpp => gfx/thebes/DeviceManagerD3D11.cpp
rename : gfx/thebes/DeviceManagerDx.h => gfx/thebes/DeviceManagerD3D11.h
2016-08-08 11:53:51 +02:00
Sotaro Ikeda
41a9daf725 Bug 1259571 - Try tearing-free drawing with GDI r=dvander,mattwoodrow
--HG--
rename : gfx/thebes/DeviceManagerD3D11.cpp => gfx/thebes/DeviceManagerDx.cpp
rename : gfx/thebes/DeviceManagerD3D11.h => gfx/thebes/DeviceManagerDx.h
2016-08-07 23:54:12 -07:00
Matt Woodrow
7b18f355cb Bug 1289640 - Part 2: Stop using the D3D11 immediate context to upload texture data in IMFYCbCrImage and stick to threadsafe APIs so that we can use the content device. r=Bas
--HG--
extra : rebase_source : 1186b758656f07ef786f7d182a6474b050b9367e
2016-08-02 17:53:06 +12:00
Iris Hsiao
c9e5c33bd4 Backed out changeset d303f553f817 (bug 1289640) 2016-08-02 16:51:36 +08:00
Matt Woodrow
a9cb9eb75a Bug 1289640 - Part 2: Stop using the D3D11 immediate context to upload texture data in IMFYCbCrImage and stick to threadsafe APIs so that we can use the content device. r=Bas 2016-08-02 17:53:06 +12:00
David Anderson
b7855c4ee9 Add DeviceManagerD3D11 as a wrapper around gfxWindowsPlatform. (bug 1282364 part 1, r=mattwoodrow)
--HG--
extra : rebase_source : 3ea710ffdaabf737374958e80f6235c1c8861237
2016-07-26 12:50:30 -07:00
David Anderson
5827fd8527 Make access to gfxWindowsPlatform D3D11 devices thread-safe. (bug 1258174, r=bas) 2016-03-21 00:14:05 -07:00
Matt Woodrow
2bfff9fd80 Bug 1234047 - Always reuse an existing TextureClient in IMFYCbCrImage if one exist. r=Bas 2016-01-12 18:08:21 +13:00
Milan Sreckovic
06d79c4606 Bug 1219494 - Part 4. gfx/layers and gfxCrash. r=mchang 2015-12-10 13:01:00 +01:00
Nicolas Silva
a3f38d948e Bug 1200595 - D3D11 TextureData implementation. r=Bas 2015-10-15 17:53:37 +02:00
Wes Kocher
72261b4523 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)

--HG--
extra : commitid : AMC6i05xyTh
2015-11-24 10:07:02 -08:00
Nicolas Silva
2eea103a37 Bug 1200595 - D3D11 TextureData implementation. r=Bas 2015-10-15 17:53:37 +02:00
Carsten "Tomcat" Book
1a584aca79 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
943fe8686e Bug 1200595 - D3D11 TextureData implementation. r=Bas 2015-10-15 17:53:37 +02:00
Jeff Muizelaar
bcf6317ef4 Bug 1217080. Move recycling functionality into RecyclingPlanarYCbCrImage. r=nical
This makes PlanarYCbCrImage abstract and moves the recycling functionality
into RecyclingPlanarYCbCrImage. This decreases the size of
SharedPlanarYCbCrImage and makes it possible for us to do part 3 of bug
1216644.
2015-11-06 13:55:31 -05:00
Wes Kocher
a6029c8941 Backed out changeset 722e121f6ce6 (bug 1217080) for b2g build failures
--HG--
extra : commitid : HdV0UNFbTFn
2015-11-04 15:39:35 -08:00
Jeff Muizelaar
83d63902a7 Bug 1217080. Move recycling functionality into RecyclingPlanarYCbCrImage. r=nical
This makes PlanarYCbCrImage abstract and moves the recycling functionality
into RecyclingPlanarYCbCrImage. This decreases the size of
SharedPlanarYCbCrImage and makes it possible for us to do part 3 of bug
1216644.
2015-11-04 17:40:02 -05: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
Matt Woodrow
fb01190fe1 Bug 1199361 - Add texture memory reporters for YCbCr TextureClients. r=jrmuizel
--HG--
extra : rebase_source : 56c1ec34c1d4285117fef854aebaf2bbf8b1a93a
2015-09-01 15:33:40 -04:00
Matt Woodrow
284d1f503c Bug 1202700 - Use d3d9 device to upload YCbCr surfaces on the client side if possible. r=Bas
--HG--
extra : rebase_source : ec496595f871e2e3fc54aae14ef01b25e6a4f9ff
2015-09-10 13:21:43 -04:00
Carsten "Tomcat" Book
12570b009b Backed out changeset edc0db4368a0 (bug 1199361) for suspicion of making OS X 10.6 reftest failing very frequently 2015-09-03 08:39:48 +02:00
Matt Woodrow
16d971851f Bug 1199361 - Add texture memory reporters for YCbCr TextureClients. r=jrmuizel
--HG--
extra : rebase_source : d3646e8481e0767d707f2e7e1bfdad84fd58550f
2015-09-01 15:33:40 -04:00
Andrea Marchesini
da64d8ff8f Bug 1186725 - InitTextures should check if LockRect() returns an error, r=mattwoodrow 2015-08-10 14:47:22 +01: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
Nathan Froyd
974d8120f2 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
Matt Woodrow
5925a945d1 Bug 1173983 - Use R8 textures for d3d11 alpha textures since it appears to be better supported. r=Bas 2015-06-15 12:30:34 -04:00
Nicolas Silva
650d0702ad Bug 1170143 - Build fix. r=me 2015-06-05 16:56:06 +02:00
Nicolas Silva
e845d9219c Bug 1170143 - Add some error checks around the creation of dxgi ycbcr video frames. r=Bas 2015-06-05 16:19:11 +02:00
Matt Woodrow
648b0834c4 Bug 1153123 - Don't upload in the ImageBridge thread if A8 texture sharing is broken. r=Bas 2015-05-13 23:42:32 +12:00
Nathan Froyd
db188ea282 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
Phil Ringnalda
d8e6f914f4 Back out 75502ee740e0 (bug 1153123) for w-p-t bustage
CLOSED TREE
2015-05-15 20:37:24 -07:00
Matt Woodrow
4ca85adc7e Bug 1153123 - Don't upload in the ImageBridge thread if A8 texture sharing is broken. r=Bas 2015-05-13 23:42:32 +12:00
Ethan Lin
b6a9cb595a Bug 1053563 - Use a static create function to replace InitWith for TextureClient. r=nical 2015-04-29 19:34:00 +02:00
Matt Woodrow
28fe00ec0c Bug 1145513 - Upload YCbCr image data on the client side when using d3d9 layers. r=nical
--HG--
extra : rebase_source : be290c542566bc5650b45bfc2f892c8edf5fd14a
2015-03-23 15:13:56 +13:00
Matt Woodrow
67c8f780b6 Bug 1138967 - Part 3: Add D3D11 YCbCr texture clients and upload on the client side. r=nical
--HG--
extra : rebase_source : 90d0afdc61332b36032c8ccbf28294f77dd48a8b
2015-03-19 10:17:13 +13:00