Commit Graph

485 Commits

Author SHA1 Message Date
Matt Woodrow
ec36c050ca Bug 893824 - Don't allow 0 sized SourceSurfaces with Moz2D. r=jrmuizel
--HG--
extra : rebase_source : dc5e18fe96966a86cbb3b2fbaa508247cbe73142
2013-07-15 13:28:04 -04:00
Ehsan Akhgari
5ee21d6d3f Bug 895322 - Part 1: Replace the usages of MOZ_STATIC_ASSERT with C++11 static_assert; r=Waldo
This patch was mostly generated by running the following scripts on the codebase, with some
manual changes made afterwards:

# static_assert.sh
#!/bin/bash
# Command to convert an NSPR integer type to the equivalent standard integer type

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.cc" \
         -o -iname "*.mm" \) | \
    xargs -n 1 `dirname $0`/assert_replacer.py #sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_STATIC_ASSERT static_assert
hg rev --no-backup mfbt/Assertions.h \
                   media/webrtc/signaling/src/sipcc/core/includes/ccapi.h \
                   modules/libmar/src/mar_private.h \
                   modules/libmar/src/mar.h


# assert_replacer.py
#!/usr/bin/python

import sys
import re

pattern = re.compile(r"\bMOZ_STATIC_ASSERT\b")

def replaceInPlace(fname):
  print fname
  f = open(fname, "rw+")
  lines = f.readlines()
  for i in range(0, len(lines)):
    while True:
      index = re.search(pattern, lines[i])
      if index != None:
        index = index.start()
        lines[i] = lines[i][0:index] + "static_assert" + lines[i][index+len("MOZ_STATIC_ASSERT"):]
        for j in range(i + 1, len(lines)):
          if lines[j].find("                 ", index) == index:
            lines[j] = lines[j][0:index] + lines[j][index+4:]
          else:
            break
      else:
        break
  f.seek(0, 0)
  f.truncate()
  f.write("".join(lines))
  f.close()

argc = len(sys.argv)
for i in range(1, argc):
  replaceInPlace(sys.argv[i])

--HG--
extra : rebase_source : 4b4a4047d82f2c205b9fad8d56dfc3f1afc0b045
2013-07-18 13:59:53 -04:00
Ehsan Akhgari
9854ac6166 Bug 872127 - Part 2: Replace mozilla/StandardInteger.h with stdint.h; r=Waldo,ted 2013-07-30 10:25:31 -04:00
Jeff Muizelaar
aca5a086d7 Bug 898803. Add support for different surface formats to DrawTargetCG. r=joe
This causes us to get cleartype when drawing with alpha with CG.

--HG--
extra : rebase_source : 611c5b76ce0ea926ea8e1e26501ca3d8d9a6b452
2013-07-29 15:01:29 -04:00
John Daggett
852023e695 Bug 898267 - support font smoothing in Azure CG backend. r=jrmuizel 2013-07-30 05:00:53 +09:00
Nicolas Silva
a86c11b476 Bug 892505 - Implement gfx::Factory::CreateDataSourceSurface. r=bas 2013-07-17 16:07:44 +02:00
Joshua Cranmer
7b9a04da79 Bug 884061 - Part 4: Remove nsAtomicRefcnt.h, r=jlebar
--HG--
extra : rebase_source : ce24ab345baa48104328e3c101b7266a31e81870
2013-07-11 15:21:45 -05:00
Birunthan Mohanathas
6e206a8696 Bug 784739 - Switch from NULL to nullptr in gfx/2d/; r=Bas
--HG--
extra : rebase_source : 340bb0ff65c56c23bf2a4c8e24d082e938997831
2013-07-20 11:48:55 +03:00
Chris Lord
3404ab9f9d Bug 886298 - Add a typed-units Margin. r=kats 2013-07-22 09:50:11 +01:00
Jeff Muizelaar
b4d1d2039a Bug 896129. Use CGContextDrawImage when appropriate in FillRect(). r=mattwoodrow
This fixes the element-paint-paintserversize-rounding-02.html reftest.
2013-07-19 20:39:31 -04:00
Jeff Muizelaar
c12f4d9523 Bug 896290. Support drawing with antialaising in DrawTargetCG. r=mattwoodrow 2013-07-19 08:18:18 -04:00
Jacek Caban
657a4ffbc0 Bug 883004 - GCC bustage fix 2013-07-20 12:37:04 +02:00
Jeff Muizelaar
ab926abff4 Bug 895646. Use the pattern transform when drawing gradients with DrawTargetCG. r=mattwoodrow 2013-07-16 11:27:12 -04:00
Jeff Muizelaar
f42d9b353e Bug 893977. Support repeating gradients in the CoreGraphics backend. r=mattwoordow
CoreGraphics doesn't support repeating gradients natively so we have to
manually repeat them. This change missing support for interpolating a
stop for the center if it doesn't line up correctly. That will come later.
2013-07-18 20:08:51 -04:00
Wes Kocher
aecc20ef97 Backout df425bca5665 (bug 893977) for breaking the build on a CLOSED TREE 2013-07-18 21:16:20 -07:00
Wes Kocher
f131bbbf4f Backout 7c2fd5db93b2 (bug bug 895646) for breaking the build on a CLOSED TREE 2013-07-18 21:15:29 -07:00
Jeff Muizelaar
6f514fa9fe Bug 895646. Use the pattern transform when drawing gradients with DrawTargetCG. r=mattwoodrow 2013-07-16 11:27:12 -04:00
Jeff Muizelaar
893fc26d2b Bug 893977. Support repeating gradients in the CoreGraphics backend. r=mattwoordow
CoreGraphics doesn't support repeating gradients natively so we have to
manually repeat them. This change missing support for interpolating a
stop for the center if it doesn't line up correctly. That will come later.
2013-07-18 20:08:51 -04:00
James Willcox
15f9e70cea Bug 895036 - Lower the SkiaGL texture cache size r=gwright 2013-07-09 16:12:49 -04:00
James Willcox
0b17330d44 Bug 885632 - Always use soft clipping with SkiaGL r=mattwoodrow 2013-06-21 15:28:10 -04:00
Jeff Muizelaar
390cefe9d9 Bug 895078. Implement ScaledFontMac::CopyGlyphsToBuilder. r=mattwoodrow
--HG--
extra : rebase_source : e18c584de856676b84c9aac50021f255185a677a
2013-07-16 11:25:49 -04:00
Matt Woodrow
749d37fb57 Bug 875232 - Make alpha channel optional for MacIOSurface. r=BenWa 2013-07-17 23:24:14 -04:00
Bas Schouten
7c1ee02372 Bug 883004 - Part 3: Add Direct2D 1.1 backend to Moz2D. r=jrmuizel 2013-07-17 14:12:22 +02:00
Bas Schouten
1ab8695848 Bug 883004 - Part 2: Move Direct2D 1.1 detection to configure.in r=glandium 2013-07-17 14:12:05 +02:00
Matt Woodrow
9da84efe22 Bug 892966 - Make gfxQuartzNativeDrawing support Moz2D surfaces. r=jrmuizel 2013-07-12 17:19:29 -04:00
Matt Woodrow
ec01e9d892 Bug 892966 - Setup dashing correctly in DrawTargetCG::StrokeRect. r=jrmuizel 2013-07-12 17:19:28 -04:00
Matt Woodrow
1a968529e7 Bug 892966 - Take a reference to the CGContext when constructing a DrawTargetCG from one. r=jrmuizel 2013-07-12 17:19:27 -04:00
Phil Ringnalda
8dcbf36c38 Back out 7160624804ff:69062da26093 (bug 892966) on suspicion of mochitest-4 test_bug767779.html bustage
CLOSED TREE
2013-07-12 16:39:36 -07:00
Jeff Muizelaar
aa9399ea9f Bug 892968. Implement POINT filtering properly in DrawTargetCG. r=mattwoodrow
--HG--
extra : rebase_source : 13528e2c21f96d9c5d5dba6f44593869033479f2
2013-07-12 10:01:58 -04:00
Matt Woodrow
386a557051 Bug 892966 - Make gfxQuartzNativeDrawing support Moz2D surfaces. r=jrmuizel 2013-07-12 17:19:29 -04:00
Matt Woodrow
125c1ad96b Bug 892966 - Implement CreateSourceSurfaceFromNativeSurface for DrawTargetCG and use it instead of copying pixel data. r=jrmuizel 2013-07-12 17:19:28 -04:00
Matt Woodrow
a452904bad Bug 892966 - Setup dashing correctly in DrawTargetCG::StrokeRect. r=jrmuizel 2013-07-12 17:19:28 -04:00
Matt Woodrow
704e428266 Bug 892966 - Take a reference to the CGContext when constructing a DrawTargetCG from one. r=jrmuizel 2013-07-12 17:19:27 -04:00
Jeff Muizelaar
d2982ae47f Bug 892964. Rewrite DrawTargetCG::MaskSurface to avoid using FillRect(). r=mattwoodrow
With FillRect we were setting the transform twice.

The patch looks really bad because I needed to move the implementation of
MaskSurface so that it was below the helper methods.

The actual change is:

-  FillRect(Rect(aOffset.x, aOffset.y, size.width, size.height), aSource, aDrawOptions);
-
+  if (isGradient(aSource)) {
+    // we shouldn't need to clip to an additional rectangle
+    // as the cliping to the mask should be sufficient.
+    DrawGradient(cg, aSource);
+  } else {
+    SetFillFromPattern(cg, mColorSpace, aSource);
+    CGContextFillRect(cg, CGRectMake(aOffset.x, aOffset.y, size.width, size.height));
+  }

This also avoids setting up other state like alpha and the unboundness fixer twice.

--HG--
extra : rebase_source : 762f2d94ddaff129d584aab1e1f429ddfea99277
2013-07-08 17:35:56 -04:00
James Kolb
19692ba689 Bug 889693 - Implement MaskSurface in DrawTargetCairo. r=Bas 2013-07-11 10:43:34 -04:00
Jeff Muizelaar
9000441a55 Bug 891660. Add support for Azure on Mac with OMTC. r=mattwoodrow
This is not the best approach but it works for now.  We basically pull the cg
context from gfxASurface and wrap a DrawTarget around it. In the end we'll need
to plumb the DrawTarget through more.

--HG--
rename : dom/ipc/PTabContext.ipdlh => dom/ipc/PContent.ipdl
extra : rebase_source : 49eac0354864ae9f2e7434b8b1efacc37d69fc23
2013-07-09 21:02:41 -04:00
Jeff Muizelaar
dfb3ac3543 Bug 891388. Implement Arc() in PathCG. r=joe
--HG--
extra : rebase_source : 3ebc541ce7407eba02165366bcc754484f65fcaa
2013-07-08 14:28:21 -04:00
Jeff Muizelaar
273bf40ece Bug 790673. Add BorrowedCGContext. r=bas
This can be used to safely get at the underlying CGContext.
2013-07-09 18:55:02 -04:00
Markus Stange
30c87eb8a8 Bug 888288 - Fix some typos in GFX header comments. r=nrc 2013-07-08 21:21:06 -07:00
Emanuel Hoogeveen
a278970cd3 Bug 890714 - Fix mixed line endings. r=joe, r=jesup 2013-07-08 16:33:15 -04:00
Joey Armstrong
a6b9800cfb bug 870407: cleanup bug. r=mshal 2013-07-08 11:53:00 -04:00
Benoit Girard
bc2d13d376 Bug 775459 - Implement hit testing on layer tree + tests. r=kats
--HG--
extra : rebase_source : c596cc4c4dd9810319830ec8105a5e251e9b0ddb
2013-07-02 12:27:17 -04:00
James Willcox
8891401313 Bug 887927 - Hold a ref to DrawTargetSkia within SourceSurfaceSkia r=mattwoodrow 2013-06-28 22:59:19 -04:00
Benoit Jacob
16c6979f6b Bug 875218 - Fix all the Skia leaks! By avoiding addref'ing a second time the GrGLInterface and GrContext r=mattwoodrow 2013-06-17 13:45:04 -04:00
Benoit Jacob
019e7f80e4 Bug 875218 - Refactor the ownership model under DrawTargetSkia, so that DrawTargetSkia now owns a GLContext, and the only reference that the Skia GrGLInterface gets to the non-Skia world is a pointer back to the DrawTargetSkia r=mattwoodrow 2013-06-16 22:07:18 -04:00
Benoit Jacob
d6d404c2d3 Bug 882561 - Add a GenericRefCounted base class to moz2d, will allow moz2d to hold strong references to external objects without adding a dependency r=jwalden 2013-06-16 22:05:14 -04:00
George Wright
deca695bd7 Bug 869178 - Use SkCanvas::drawBitmapRect instead of a bitmap SkShader; it's slightly faster r=snorp 2012-11-15 19:57:40 -05:00
George Wright
d2b4508586 Bug 736276 - Ensure we can never double addref a cairo scaled font in ScaledFontBase r=mattwoodrow 2013-06-28 22:50:59 -04:00
George Wright
050d2d58af Bug 736276 - Only create the SkTypeface in ScaledFontCairo when necessary r=jrmuizel 2013-06-28 22:50:09 -04:00
George Wright
3cc9485feb Bug 736276 - Rename ScaledFontFreeType to ScaledFontCairo, and use Skia's API to create an SkTypeface from a cairo_scaled_font_t r=jrmuizel 2013-06-05 13:48:59 -04:00