Commit Graph

203 Commits

Author SHA1 Message Date
Birunthan Mohanathas
bfee0fb40c Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Phil Ringnalda
d871b9515f Back out 7 changesets (bug 1235261) for cpptest failures in TestTArray
CLOSED TREE

Backed out changeset d66c3f19a210 (bug 1235261)
Backed out changeset 467d945426bb (bug 1235261)
Backed out changeset 32b61df13142 (bug 1235261)
Backed out changeset c50bb8ed4196 (bug 1235261)
Backed out changeset 0ff0fa6fe81f (bug 1235261)
Backed out changeset df70e89669da (bug 1235261)
Backed out changeset 064969357fc9 (bug 1235261)
2016-01-31 10:10:57 -08:00
Birunthan Mohanathas
245cd6a02f Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Nicolas Silva
77a019ae9e Bug 1240708 - Various trivial coverity warning fixes. r=kats 2016-01-19 20:14:22 +01:00
Nicholas Nethercote
f16ab43ac3 Bug 1209812 (part 6) - Convert all gfxImageFormat values to SurfaceFormat equivalents. r=jrmuizel.
This patch:

- Makes the following substitutions (plus necessary namespace qualifiers:

    gfxImageFormat::ARGB32      --> SurfaceFormat::A8R8G8B8_UINT32
    gfxImageFormat::RGB24       --> SurfaceFormat::X8R8G8B8_UINT32
    gfxImageFormat::A8          --> SurfaceFormat::A8
    gfxImageFormat::RGB16_565   --> SurfaceFormat::R5G6B5_UINT16
    gfxImageFormat::Unknown     --> SurfaceFormat::UNKNOWN

- Changes gfxImageFormat to be a typedef to gfx::SurfaceFormat. This will be
  removed soon.

- Removes gfxCairoFormatToImageFormat() and gfxImageFormatToCairoFormat() and
  replace calls to them with CairoFormatToGfxFormat() and
  GfxFormatToCairoFormat().

- Removes ParamTraits<gfxImageFormat>.

- Add namespace qualifiers to SurfaceFormat instances where necessary.
2016-01-07 20:57:38 -08:00
Sotaro Ikeda
67ee026f82 Bug 1205713 - Merge ImageHostOverlay/ImageClientOverlay to ImageHost/ImageClient r=nical 2015-12-29 01:07:33 -08:00
Morris Tseng
a5b2dadb41 Bug 1215438 - Part 4: Rename CairoImage to SourceSurfaceImage. r=roc 2015-12-18 14:52:16 +08:00
David Anderson
d02579864a Remove CreateImage() from ImageContainer, ImageFactory, and ImageClient. (bug 1222910, r=roc) 2015-11-17 00:09:01 -08:00
David Anderson
0b40b8cdc2 Remove Gonk usage of ImageContainer::CreateImage. (bug 1222910, r=sotaro) 2015-11-17 00:09:01 -08:00
David Anderson
5f92d035c0 Decouple SharedRGBImage and PlanarYCbCrImage from ImageContainer. (bug 1222910, r=mattwoodrow) 2015-11-17 00:09:01 -08:00
David Anderson
4b2059b489 Decouple MacIOSurfaceImage from ImageContainer. (bug 1222910, r=mstange) 2015-11-17 00:09:00 -08:00
David Anderson
177a33f0f5 Decouple SurfaceTextureImage from ImageContainer. (bug 1222910, r=snorp) 2015-11-17 00:09:00 -08:00
David Anderson
1a51373570 Decouple EGLImageImage from ImageContainer. (bug 1222910, r=snorp) 2015-11-17 00:09:00 -08:00
David Anderson
ab3363bc60 Decouple D3D9SurfaceImage from ImageContainer. (bug 1222910, r=mattwoodrow) 2015-11-17 00:09:00 -08:00
David Anderson
19b24cff53 Decouple D3D11ShareHandleImage from ImageContainer. (bug 1222910, r=mattwoodrow) 2015-11-17 00:09:00 -08:00
David Anderson
94c51e6a9a Decouple CairoImage from ImageContainer. (bug 1222910, r=roc) 2015-11-17 00:09:00 -08:00
Nathan Froyd
cb6febd904 Bug 1216644 - part 3 - make BufferRecycleBin store UniquePtrs; r=jrmuizel
Changing mRecycledBuffers to store UniquePtrs instead of nsAutoArrayPtrs
opens up the possibility of a reasonable facsimile of ownership in
function signatures.
2015-10-20 13:16:04 -04:00
David Anderson
20d7da52cc Add an RAII class to lock and unlock textures. (bug 1222863 part 1, r=nical) 2015-11-10 23:58:21 -08:00
Robert O'Callahan
9cf8eae9a6 Bug 1222308. Assume frames that are very old will never be composited. r=nical
This also makes NotifyCompositeInternal take O(N) time in the length of
mFrameIDsNotYetComposited instead of O(N^2).
2015-11-06 16:56:34 +13:00
Jeff Muizelaar
b1a5f2f67c 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
c96690bed9 Backed out changeset 722e121f6ce6 (bug 1217080) for b2g build failures 2015-11-04 15:39:35 -08:00
Jeff Muizelaar
e71ffed1a7 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
Nicolas Silva
bc4d189d05 Bug 1219330 - Handle PlanaYCbCrImage::SetData failure. r=jya, jesup 2015-11-03 12:24: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
Sebastian Hengst
0e74b673c3 Bug 1212288 - Make ImageContainer::AllocateProducerID callable on all threads; r=roc 2015-10-11 18:13:10 +02:00
Carsten "Tomcat" Book
1e76f40db9 Backed out changeset 446055bf8ee4 (bug 1199371) 2015-09-03 08:38:28 +02:00
Matt Woodrow
a91f95030c Bug 1199371 - Don't create TextureClients for video when the video isn't visible. r=nical 2015-09-01 15:35:55 -04:00
Matt Woodrow
23509adaac Bug 1135935 - Part 3: Allow overriding of allocations for texture client recycling. r=sotaro 2015-08-10 16:04:38 -04:00
David Anderson
be559736b8 Remove the backend flag to TextureClient::CreateForDrawing. (bug 1183910 part 9, r=mattwoodrow) 2015-08-06 17:27:36 -07:00
Carsten "Tomcat" Book
55da5176e9 Backed out 2 changesets (bug 1183910) for bustage on a CLOSED TREE
Backed out changeset 9617a34de78f (bug 1183910)
Backed out changeset d8f79432c768 (bug 1183910)
2015-08-06 12:09:52 +02:00
David Anderson
062db27417 Remove the backend flag to TextureClient::CreateForDrawing. (bug 1183910 part 9, r=mattwoodrow) 2015-08-06 02:41:07 -07: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
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
Robert O'Callahan
897a238498 Bug 1143575. Let ImageContainer::SetCurrentImages accept multiple images. r=nical 2015-05-25 14:33:35 +12:00
Robert O'Callahan
e436ca0770 Bug 1143575. Let callers of ImageContainer::SetCurrentImages specify frame IDs. r=nical 2015-07-03 22:13:48 +12:00
Robert O'Callahan
7950d92d73 Bug 1143575. Reimplement ImageContainer::GetPaintCount to be composition-aware. r=nical 2015-06-15 14:45:59 +12:00
Robert O'Callahan
8fe711c06f Bug 1143575. Implement ImageContainer::GetDroppedCount. r=nical 2015-05-11 14:07:07 +12:00
Robert O'Callahan
8411bf79f8 Bug 1143575. Clarify code by renaming method to ClearCurrentImageFromImageBridge. r=nical
We need to make it clear that ClearCurrentImage is really an internal method
of the ImageContainer implementation, not a method that ImageContainer users
should call.
2015-03-26 14:17:13 +13:00
Robert O'Callahan
e99994b418 Bug 1143575. Remove ClearAllImagesExceptFront because it doesn't do anything. r=nical
ImageBridgeChild::FlushAllImages with aExceptFront==true does absolutely
nothing, so remove the parameter and remove all callers which pass true.
2015-03-26 14:08:30 +13:00
Robert O'Callahan
1ae2eab6e3 Bug 1143575. Implement ImageContainer::GetPaintDelay. r=nical 2015-07-03 19:39:09 +12:00
Robert O'Callahan
fd1108d2e0 Bug 1143575. Pass a list of timestamped images to ImageContainer::SetCurrentImages. r=nical 2015-07-07 09:58:18 +12:00
Robert O'Callahan
1bebcba55f Bug 1143575. Route ImageCompositeNotifications to ImageContainers. r=nical
For frame statistics to work properly, we have to notify an ImageContainer
when it has been composited. This requires a few changes, which have
been lumped together in this patch:
-- Create PImageContainer and ImageContainerParent/ImageContainerChild.
-- Add mFrameID and mProducerID everywhere we're passing around images.
-- Route composition notifications from the compositor back to
ImageContainerChild.
2015-07-06 15:02:26 +12:00
Robert O'Callahan
a4faa1ea5e Bug 1143575. Replace ImageClientSingle::UpdateImage's use of Image serial numbers with ImageContainer state generation counters, and switch it to use ImageContainer::GetCurrentImages. r=nical
When ImageContainer and ImageClient are managing a list of images, the
individual Image serial numbers are no longer enough to detect whether the
state has changed.
2015-05-12 12:56:09 +12:00
Robert O'Callahan
74bf60da8a Bug 1143575. Replace ImageContainer Lock methods with simplified AutoLockImage. r=nical 2015-03-27 12:07:53 +13:00
Robert O'Callahan
d085fde4ce Bug 1143575. Remove unused CompositionNotifySink. r=nical 2015-03-22 01:02:25 +13:00
Lee Salzman
fb18b36da6 Bug 1180246 - Part 1 - remove dependencies on gfxD2DSurface. r=bas 2015-07-02 08:02:51 -04:00