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

144 Коммитов

Автор SHA1 Сообщение Дата
Mason Chang 787d48e2aa Bug 1268502 - Use a CGContext around a Skia Canvas to draw subpixel AA text on popup menus. r=mstange 2016-05-17 11:41:38 -07:00
Milan Sreckovic e0f647f55d Bug 1270180: More instances of MOZ_CRASH converted to gfxDevCrash and getting GFX prefix. r=jgilbert
MozReview-Commit-ID: BFUu2JG9Tk2

--HG--
extra : rebase_source : 146e8b8dc49dce7735f961df3ddfa3c9130fee32
2016-05-06 10:19:31 -04:00
Chris Peterson b94d12b3b4 Bug 1236323 - Part 1: Annotate intentional switch fallthroughs to suppress -Wimplicit-fallthrough warnings in gfx/. r=nical
gfx/thebes/gfxFcPlatformFontList.cpp:706:9: warning: unannotated fall-through between switch labels [-Wimplicit-fallthrough]
gfx/thebes/gfxFontconfigFonts.cpp:2183:9: warning: unannotated fall-through between switch labels [-Wimplicit-fallthrough]
gfx/2d/DrawTargetCG.cpp:812:5: warning: unannotated fall-through between switch labels [-Wimplicit-fallthrough]
gfx/2d/DrawTargetCairo.cpp:636:5: warning: unannotated fall-through between switch labels [-Wimplicit-fallthrough]
2015-11-24 09:39:04 -08:00
Milan Sreckovic bf9a6ffcc5 Bug 1219494 - Part 2. gfx/2d and gfxCrash. r=milan
* * *
Bug 1219494: Part 3. gfx/thebes, gfx/src and gfxCrash
2015-11-26 08:38:00 +01:00
Mason Chang e74c79f0e3 Bug 1221840. Support repeating images in 1 axis. r=seth 2015-11-23 08:17:35 -08:00
Jeff Muizelaar 4378d52fe9 Bug 1220673 - Make DrawTargetCG::Mask() MOZ_CRASH
It's not completely implemented so we should crash early rather than have
people use it by mistake.

--HG--
extra : rebase_source : c28b5ea6126d2c68e40272b8e4267671ec4e5830
2015-11-02 10:13:09 -05:00
Ted Mielczarek fc136257e3 bug 1170987 - Fix gfx/2d to build on iOS. r=jrmuizel 2015-10-28 14:10:24 -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
Milan Sreckovic 2ef858355b Bug 1182209 - Additional info with some critical errors. r=mchang
CLOSED TREE
2015-07-14 15:22:29 -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
Jeff Muizelaar e78c6f3884 Bug 1175286. Remove unnecessary CGContextSave/Restore pair from ClearRect.
--HG--
extra : rebase_source : a4bbc99cbab0d7afacc9056eafd541c5f17c48da
2015-06-16 17:11:42 -04:00
Andreas Pehrson d3659f3dbd Bug 1169126 - Part 1: Make DrawTargetCG::CopySurface able to handle all SourceSurface types. r=gw280
--HG--
extra : rebase_source : b8288de3b9731249205203e5bca2abc356b8eb78
2015-06-11 10:57:29 +08:00
Jeff Muizelaar 15772d6387 Bug 1160335. Make DrawTargetCG's transform handling better. r=mstange
This let's us avoid depending on Save() and Restore() to have the
right transform at the right time.

--HG--
extra : rebase_source : 81a64c70683d4b91b519fcb5eb8296ffa3e61e2a
2015-04-30 17:53:25 -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
Nathan Froyd c24f5f4e7c Bug 1116905 - part 3 - remove dependence on implicit conversion from T* to TemporaryRef<T>, gfx changes; r=jrmuizel 2015-04-30 15:20:30 -04:00
Ehsan Akhgari 6532f9f013 Bug 1156084 - Disallow AddRef() and Release() calls on the return value of methods returning XPCOM objects; r=jrmuizel
When a method returns type D derived from RefCounted type B, there is an
ImplicitCastExpr (or an ExplicitCastExpr, if there is an explicit cast
to the base type in the code) in the AST between the CallExpr and
MemberExpr, which we didn't take into account before.  This caused the
analysis to not work on common patterns such as
nsCOMPtr<nsIXPCOMInterface>.
2015-05-15 08:39:55 -04:00
Markus Stange b0398aca4b Bug 1151145 - Add assertions to detect unbalanced calls to CGContextSaveGState / CGContextRestoreGState. r=jrmuizel
--HG--
extra : rebase_source : d5f12fa26ec4524ec798704f3851c47215a79f31
2015-04-04 18:12:12 -04:00
Markus Stange 4355f36a4c Bug 1151145 - Make sure we don't call CGContextSaveGState without calling CGContextRestoreGState in DrawTargetCG::StrokeRect. r=jrmuizel
--HG--
extra : rebase_source : 53f0bda2090715492c8f0a55fa83d21e47f5b41a
2015-04-04 18:06:35 -04:00
Markus Stange 0699b9a185 Bug 1123019 - Actually use the clipped rect variable. r=jrmuizel 2015-03-06 13:04:05 -05:00
David Anderson ad69b19ecc Fix build bustage on CLOSED TREE. No bug 2015-02-24 14:16:27 -08:00
David Anderson 6d2ea830bf Implement GetMaxTextureSize in the basic compositor. (bug 1135883, r=mattwoodrow)
--HG--
extra : rebase_source : 2185c8fd0b891d5ef296b92b3af7009b2f6fa72e
2015-02-24 13:39:01 -08:00
Markus Stange 5e45b83a2c Bug 1123019 - Shrink clipped stroked rectangles and stroked lines. r=jrmuizel 2015-02-23 18:15:14 -05:00
Jonathan Watt fc78f23587 Bug 1122578, part 1 - Make DrawTargetCG::StrokeRect stroke from the same corner and in the same direction as older OS X and other Moz2D backends. r=Bas 2015-01-18 11:30:32 +00:00
Nicholas Nethercote d5ae4983a3 Bug 1113037 - Use stack allocation in DrawTargetCG::FillGlyphs() in the common case. r=mattwoodrow.
When viewing about:memory in verbose mode this reduces the number of heap
allocations by over 10%.

--HG--
extra : rebase_source : 954962295dcd90d66d0e02f782998884de879f17
2014-12-18 21:23:30 -08:00
Milan Sreckovic b951b0fbf8 Bug 946069 - Assert/critical error if the CG contexts are invalid. Also, deal with the empty path when asking for the current point. r=mstange 2014-12-12 15:35:48 -05:00
Jeff Muizelaar 76435865a2 Bug 1105015. Make the UnboundnessFixer more readable. r=milan
--HG--
extra : rebase_source : f584762adbf2afbbdccc563f2a198ac069ef0106
2014-11-25 17:20:33 -05:00
Robert O'Callahan 98a7a56835 Bug 1097437. Work around Quartz bug where corners of stroked rects don't get a solid color when they should. r=jrmuizel
--HG--
extra : rebase_source : deb88329b8948686119df73122032db999006cae
2014-11-12 20:52:57 +13:00
Lioncash a274c19e07 Bug 1085051 - Fix mismatched new[]/delete in DrawTargetCG::FillGlyphs. r=jrmuizel 2014-11-11 11:02:43 +00:00
Markus Stange 326a66b75b Bug 1055622 - Add support for specifying the font smoothing background color to Moz2D. r=Bas, r=jrmuizel 2014-10-24 18:32:23 +02:00
Markus Stange 9d0fbfa02c Bug 1074842 - Let SourceSurfaceCGBitmapContext take ownership of the data when DrawTargetCG is destroyed. r=jrmuizel 2014-10-24 18:32:22 +02:00
Matt Woodrow 8a4adcbe04 Bug 1070722 - Remove DrawTargetCG::OptimizeSourceSurface since we don't get any benefit without quartz high-quality downscaling enabled. r=jrmuizel 2014-10-02 21:14:46 +13:00
Matt Woodrow fcd996d937 Bug 1070722 - Use the imagelib high quality downscaler on OSX instead of the quartz one. r=jrmuizel 2014-09-26 15:05:14 -04:00
Wes Kocher e0a5dea92a Backed out changeset b5705fbed44f (bug 1070722) for reftest orange on a CLOSED TREE 2014-09-26 14:29:46 -07:00
Matt Woodrow 09911289a1 Bug 1070722 - Use the imagelib high quality downscaler on OSX instead of the quartz one. r=jrmuizel
--HG--
extra : rebase_source : 53c205cfc8af95be28d0878248b04e9872910651
2014-09-26 15:05:14 -04:00
Matt Woodrow 9e7a8395ba Bug 1062723 - Part 3: Implement source clipping for DrawTargetCG. r=jrmuizel
--HG--
extra : rebase_source : 679e0a97bdc31bb4b98b375618f70fb04a74b2cb
2014-09-12 17:18:22 +12:00
Michael Wu 4079a1f9ad Bug 1063733 - Optimize DataSourceSurface allocation, r=bas,seth 2014-09-10 17:54:16 -04:00
Matt Woodrow 6a86816b2b Bug 1059033 - Part 5: Implement OptimizeSourceSurface for DrawTargetCG. r=Bas
--HG--
extra : rebase_source : dac51f66400d5810b9662cf6cf48ce60bf1aa4d1
2014-09-03 09:21:14 +12:00
Phil Ringnalda e63feb3849 Backed out 8 changesets (bug 982338, bug 1057212, bug 1059033) for build bustage
CLOSED TREE

Backed out changeset 4df1bd30364d (bug 982338)
Backed out changeset b68664a02904 (bug 1057212)
Backed out changeset 07b3695aa02f (bug 1059033)
Backed out changeset bb3885b57d48 (bug 1059033)
Backed out changeset 76897f52ac2c (bug 1059033)
Backed out changeset 31e89a2a409f (bug 1059033)
Backed out changeset 8e81f6f74182 (bug 1059033)
Backed out changeset c5bbf22f2f28 (bug 1059033)
2014-09-01 18:07:57 -07:00
Matt Woodrow b7df98adc1 Bug 1059033 - Part 5: Implement OptimizeSourceSurface for DrawTargetCG. r=Bas
--HG--
extra : rebase_source : 2046ee6e625b8869c7da5b401cb7fe1135f4966a
2014-09-02 12:35:32 +12:00
Phil Ringnalda 7769dc074d Backed out 8 changesets (bug 1057212, bug 1059033) for Windows build bustage
CLOSED TREE

Backed out changeset a54dbdca597b (bug 1059033)
Backed out changeset d8d79e4fbfc4 (bug 1059033)
Backed out changeset 87494588e493 (bug 1057212)
Backed out changeset 3e4105ea0a73 (bug 1059033)
Backed out changeset e59430ea4256 (bug 1059033)
Backed out changeset 301fdfea8fbf (bug 1059033)
Backed out changeset 1ef5a3a9bb06 (bug 1059033)
Backed out changeset a7eaac164c36 (bug 1059033)
2014-08-31 23:55:31 -07:00
Matt Woodrow 9eb54ea973 Bug 1059033 - Part 5: Implement OptimizeSourceSurface for DrawTargetCG. r=Bas 2014-09-01 15:23:21 +12:00
Matt Woodrow afc9ab44bc Bug 1057216 - Make DrawTargetCG hold a reference to DataSourceSurface when we're wrapping their data. r=jrmuizel
--HG--
extra : rebase_source : ad610592f69294caedcbca5d61c1644120cbec66
2014-08-27 10:20:18 +12:00
Markus Stange a75558e0b2 Bug 1049499 - Choose the correct number of gradient repetitions if a non-identity pattern matrix is involved. r=jrmuizel 2014-08-07 13:23:53 +02:00
Nicolas Silva 5cfb339954 Bug 1025138 - Integrate DrawTargetTiled preffed off. r=mattwoodrow 2014-08-06 14:40:03 +02:00
Milan Sreckovic cfdd5f5058 Bug 1042259 - Manage color spaces in DrawTargetCG, without re-creating them as often as before. Use std::vector for gradient stops, sorting them in the process. r=mstange 2014-07-23 12:12:59 -04:00
Milan Sreckovic ab6a7f7909 Bug 1031525 - Support DrawTargetCG::DrawWindow and non-CG types. r=gw280,mattwoodrow 2014-07-14 13:24:01 -04:00
Jonathan Watt 11950fdff5 Bug 1027763, part 4 - Add a new DrawTarget::GetType() method and three generic type enum values for it to return. r=Bas, r=jrmuizel 2014-06-27 10:17:49 +01:00
Jonathan Watt 28a408b329 Bug 1027763, part 1 - Rename DrawTarget::GetType() to DrawTarget::GetBackendType() in Moz2D code. r=Bas 2014-06-19 21:35:33 +01:00