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

59 Коммитов

Автор SHA1 Сообщение Дата
Jean-Yves Avenard 1dc7e8e498 Bug 1540581 - P11. Handle colorspace correctly with D3D11 images. r=mattwoodrow,nical
Differential Revision: https://phabricator.services.mozilla.com/D26466

--HG--
extra : moz-landing-system : lando
2019-04-11 12:38:49 +00:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Milan Sreckovic 099cfc4242 Bug 1423570: Use BaseRect access methods instead of member variables in gfx/ r=bas.schouten
MozReview-Commit-ID: ZGySgc9oP3

--HG--
extra : rebase_source : 23aadc10e9885002290155684b2c495780d979ce
2017-12-19 15:48:39 -05:00
Jean-Yves Avenard c41e0fce24 Bug 1404997 - P5. Fix constness and remove redundant virtual keyword. r=mattwoodrow
Additionally, various C++ code and style cleanup

MozReview-Commit-ID: 7BCtQzFGaOc

--HG--
extra : rebase_source : 77598165c0f6ad9f04c8a09985c79df82f2732e4
2017-11-30 19:03:02 +01:00
Daniel Holbert 126bd9e1a4 Bug 1412427 part 8: (automated patch) Switch a bunch of C++ files in gfx to use our standard mode lines. r=jrmuizel
This patch was generated automatically by the "modeline.py" script, available
here: https://github.com/amccreight/moz-source-tools/blob/master/modeline.py

For every file that is modified in this patch, the changes are as follows:
 (1) The patch changes the file to use the exact C++ mode lines from the
     Mozilla coding style guide, available here:
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Coding_Style#Mode_Line

 (2) The patch deletes any blank lines between the mode line & the MPL
     boilerplate comment.

 (3) If the file previously had the mode lines and MPL boilerplate in a
     single contiguous C++ comment, then the patch splits them into
     separate C++ comments, to match the boilerplate in the coding style.

MozReview-Commit-ID: 77D61xpSmIl

--HG--
extra : rebase_source : c6162fa3cf539a07177a19838324bf368faa162b
2017-10-27 16:10:06 -07:00
Milan Sreckovic e3cd0a3157 Bug 1387514: Upgrade BaseRect (derived classes) width and height direct member variable use to instead use Width()/SetWidth() and Height()/SetHeight() in .cpp files in gfx/*. r=milan
MozReview-Commit-ID: 1jESowJKdyp

--HG--
extra : rebase_source : 3839cdea46729a9af05c777215cffcb9f42a2018
2017-08-14 08:29:28 -04:00
Nicholas Nethercote 58786e1ea7 Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.

--HG--
extra : rebase_source : 318d1bc6fc1425a94aacbf489dd46e4f83211de4
2017-06-22 17:08:53 +10:00
David Anderson 8082fe14ae Remove references to the Direct3D9 compositor. (bug 1318558 part 1, r=mattwoodrow) 2017-03-08 00:17:36 -08:00
Matt Woodrow 55f506db9f Bug 1281456 - Decouple TextureForwarder and CompositableForwarder. r=gw280 2016-09-27 16:22:20 +13:00
Matt Woodrow f8671565f8 Bug 1303897 - Part 1: Use TextureForwarder for Image::GetTextureClient. r=nical 2016-09-23 09:43:11 +12:00
Matt Woodrow fb5b16533d Bug 1288618 - Part 2: Allow allocating D3D9/11 Images when we don't have a recycling allocator available. r=nical 2016-09-21 21:24:43 +12:00
Carsten "Tomcat" Book f918af64da Backed out 16 changesets (bug 1288618) for bustage on a CLOSED TREE
Backed out changeset 06187d250f7a (bug 1288618)
Backed out changeset 2a47f8ea1d89 (bug 1288618)
Backed out changeset e179c8e8265d (bug 1288618)
Backed out changeset 25396a1af922 (bug 1288618)
Backed out changeset e98f835c6ee5 (bug 1288618)
Backed out changeset 24df0e89b273 (bug 1288618)
Backed out changeset f8bbdabdb6da (bug 1288618)
Backed out changeset 8b0adeab93df (bug 1288618)
Backed out changeset 95f23366de82 (bug 1288618)
Backed out changeset 63a9c689e1d5 (bug 1288618)
Backed out changeset 8f67443dccb8 (bug 1288618)
Backed out changeset 4e7fe69d5f45 (bug 1288618)
Backed out changeset 53b113acee42 (bug 1288618)
Backed out changeset 2583ae4e2e3b (bug 1288618)
Backed out changeset 75a61d0e71b7 (bug 1288618)
Backed out changeset da740b4fd484 (bug 1288618)
2016-09-21 08:44:11 +02:00
Matt Woodrow 30d2768a45 Bug 1288618 - Part 2: Allow allocating D3D9/11 Images when we don't have a recycling allocator available. r=nical
--HG--
extra : rebase_source : 23db70f7fed43217f8e8a27b0ab73435cdd3b895
2016-09-21 15:36:09 +12:00
Carsten "Tomcat" Book cceb9976fc Backed out changeset 1d9978f82efc (bug 1288618) 2016-09-15 16:34:16 +02:00
Matt Woodrow 61e84987aa Bug 1288618 - Part 2: Allow allocating D3D9/11 Images when we don't have a recycling allocator available. r=nical 2016-09-15 23:17:58 +12:00
Mason Chang 259933fb0b Bug 1279063. Part 2: Use RGBA instead of RGBX surface format for DXVA video. r=bas 2016-07-25 16:36:36 -07:00
Matt Woodrow 49c3c58a6c Bug 1257013 - Part 1: Use readback to synchronize d3d9 video. r=cpearce,Bas
--HG--
extra : rebase_source : 104b692bb1f732ec86113506ebac8961ac8fb5b8
2016-03-21 18:49:43 +13:00
Matt Woodrow 60b2f060b1 Bug 1236112 - Block on d3d9 video frames to complete before returning them from the decoder. r=cpearce 2016-03-09 10:34:49 +13:00
Nicolas Silva ce2636044e Bug 1200595 - Merge TextureClient and ClientTexture back into TextureClient. r=mattwoodrow 2015-11-20 14:25:00 +01:00
Nicolas Silva df6e210dc0 Bug 1200595 - D3D9 TextureData implementation. r=Bas 2015-10-19 14:46:17 +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 c1b94d01e8 Bug 1200595 - Merge TextureClient and ClientTexture back into TextureClient. r=mattwoodrow 2015-11-20 14:25:00 +01:00
Nicolas Silva 51dd6c34c2 Bug 1200595 - D3D9 TextureData implementation. r=Bas 2015-10-19 14:46:17 +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 25167273f1 Bug 1200595 - Merge TextureClient and ClientTexture back into TextureClient. r=mattwoodrow 2015-11-20 14:25:00 +01:00
Nicolas Silva 24e78db7d5 Bug 1200595 - D3D9 TextureData implementation. r=Bas 2015-10-19 14:46:17 +02:00
David Anderson c92530b253 Decouple D3D9SurfaceImage from ImageContainer. (bug 1222910, r=mattwoodrow) 2015-11-17 00:09:00 -08: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 d021a58868 Bug 1194753 - Wait longer when decoding the first frame of D3D9 DXVA video before deciding it is invalid. r=cpearce 2015-08-18 14:19:45 -04:00
Matt Woodrow 8e52bedb94 Bug 1135935 - Part 5: Add D3D9 texture recycler. r=jrmuizel
--HG--
extra : rebase_source : e80d662d9e70ff1fea89c385b5babc6cac53cf9e
2015-08-11 10:15:44 -04:00
Matt Woodrow b6b2040427 Bug 1135935 - Part 4: Move IDirect3DTexture9 allocations and ownership into the TextureClient. r=jrmuizel
--HG--
extra : rebase_source : 3ef1a94532980c91b850d65047493b208b1b09ce
2015-08-11 10:15:34 -04: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
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
Thibaud Backenstrass 5e604392a5 Bug 1158122 - Remove some occurences of nsIntRect in gfx/layers/. r=nical 2015-05-07 11:07:35 +02: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 def55ce594 Bug 1131638 - Discard video frames that fail to sync. r=cpearce 2015-03-12 22:13:23 +13:00
Matt Woodrow 3154f0f851 Back out bug 1131638 (changesets 78b34d0e414a and 1b55b99dc432) for causing various video regressions 2015-03-09 16:18:32 +13:00
Anthony Jones b8da0abf2f Bug 1131638 - Discard DXVA frames that don't complete YUV->RGB conversion. r=cpearce 2015-02-20 16:27:42 +13:00
Matt Woodrow 523dd220d2 Bug 1128765 - Add more more reporters to break down D3D9 texture usage. r=jrmuizel 2015-02-05 16:20:14 +13:00
Jeff Muizelaar c05b6e84f8 Bug 1128765 - Add memory reporter for D3D9 shared texture usage. r=mattwoodrow
--HG--
extra : rebase_source : 41a1bf52382ea1a8aff3360b35158c6836f2d129
2015-02-03 21:34:33 +13:00
Ethan Lin 945540c527 Bug 1042696 - Set allocator to TextureClient from constructor. r=nical 2014-12-22 03:49:00 -05:00
Andreas Pehrson ebcef0c606 Bug 1089214 - Avoid using null query in D3D9SurfaceImage::EnsureSynchronized. r=nical 2014-11-27 17:56:00 -08:00
Milan Sreckovic 4455d895e8 Bug 1033310: Handle CreateDataSourceSurface* returning nullptr. f=nsilva, r=bschouten 2014-08-27 11:57:43 -04:00
Benoit Jacob dd9a0850b3 Bug 987311 - 2/6 - Make TextureFlags a typed enum, auto regex changes - r=nical
find gfx/layers -type f | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)TEXTURE_\(USE_NEAREST_FILTER\|NEEDS_Y_FLIP\|DISALLOW_BIGIMAGE\|ALLOW_REPEAT\|NEW_TILE\|COMPONENT_ALPHA\|RB_SWAPPED\|FRONT\|ON_WHITE\|ON_BLACK\|TILE\|RECYCLE\|COPY_PREVIOUS\|DEALLOCATE_CLIENT\|IMMUTABLE\|IMMEDIATE_UPLOAD\|DOUBLE_BUFFERED\|ALLOC_FALLBACK\)\($\|[^A-Za-z0-9_]\)/\1TextureFlags::\2\3/g'
find gfx/layers -type f | xargs sed -i 's/TEXTURE_FLAGS_DEFAULT/TextureFlags::DEFAULT/g'
2014-04-25 22:34:05 -04:00
Blair McBride 24b74a2af7 Backed out 9 changesets (bug 987311, bug 989027, bug 989144). r=sheriff
Backed out changeset 046c061d91c2 (bug 989144)
Backed out changeset 3f1b41adeaef (bug 987311)
Backed out changeset 8d5a171564bd (bug 987311)
Backed out changeset dcc0d016de7a (bug 987311)
Backed out changeset 27f338fbc835 (bug 989027)
Backed out changeset 4a67f5144ea4 (bug 989027)
Backed out changeset 62ba0a377450 (bug 987311)
Backed out changeset 6a2542a5c865 (bug 987311)
Backed out changeset 1dfd9a457f34 (bug 987311)
2014-04-27 19:45:08 +12:00
Benoit Jacob 45875b18ee Bug 987311 - 2/6 - Make TextureFlags a typed enum, auto regex changes - r=nical 2014-04-25 22:34:05 -04:00
Jonathan Watt 200e95e9eb Bug 996901 - Remove lots of gfxASurface.h and gfxImageSurface.h includes and forward declarations that are no longer needed. r=mattwoodrow 2014-04-16 01:41:40 +01:00
Jonathan Watt d54d6a8047 Bug 960524 - Get rid of Image::DeprecatedGetAsSurface (Moz2D migration). r=mattwoodrow 2014-04-10 09:49:53 +01:00