Commit Graph

413 Commits

Author SHA1 Message Date
Bas Schouten
f3587ade9b Bug 555388: Part 1: Make sure we flush before clearing surfaces. r=jrmuizel 2010-05-06 23:56:34 +02:00
Jeff Muizelaar
68d76e69c6 Bug 563807: cairo: avoid unnecessary QueryInterface in cairo_d2d_surface_create_for_hwnd. r=bas
We can just use backBuf directly instead of QueryInterface()ing newSurf->surf.
This has the side effect of making firefox mostly work in PIX.
2010-05-05 12:11:33 -04:00
Jeff Muizelaar
38c2106acc Bug 562087: Update pixman to 2f4f2fb4859931bf6dc5632d8c919e7296736427
Should give some performance improvements
2010-05-05 11:23:54 -04:00
Oleg Romashin
71d93b5308 Bug 562710 - Disable -pedantic for cairo-qt code. r=jmuizelaar 2010-05-01 08:22:42 -04:00
Jeff Muizelaar
fdc5eaac33 Bug 562334. cairo: Fix checking in the broken version of 4efebc9638e7
I swapped these lines when trying to build a test case and checked in the broken version.
2010-04-30 14:10:19 -04:00
Jeff Muizelaar
347084e968 Bug 562334. cairo: Fix cairo_quartz_get_cg_context_with_clip. r=vlad
A problem happens when clip->all_clipped is set and we go to get a clipped
context. Normally backends don't see operations with clip->all_clipped and so
_cairo_surface_clipper_set_clip is designed with the assumption that
clip->all_clipped is never true. I added a work-around by manually setting the
CGContextClip with an empty rectangle, however this caused cairo to be confused
about what the actual clip was.

This patch fixes the problem by adding a new function
cairo_quartz_finish_cg_context_with_clip that is called after we're done with
the native context. It moves the CGContextSave/RestoreGState calls out of
gfxNativeDrawing into cairo and uses them to ensure that the clip remains
consistent with cairo's model of them.
2010-04-29 23:19:08 -04:00
Oleg Romashin
ef8be4ebf8 Bug 561891 - QPainter is is busted after last cairo merge. r=jmuizelaar. 2010-04-29 06:25:02 -04:00
Jeff Muizelaar
86e9f22ebc pixman: remove unused pixman-neon.patch. r=joe
This patch is obsoleted by upstream.
2010-04-27 11:08:57 -04:00
Jeff Muizelaar
2661339be3 Bug 542605. Fix empty clips with show_glyphs, DWrite and GDI. r=bas
This brings the dwrite code inline with the existing win32 code.
2010-04-26 23:54:53 -04:00
Jeff Muizelaar
b539ee4a49 Bug 561827 - Clear the clip before doing a fallback blit. r=bas
--HG--
extra : rebase_source : e70d5280da10972ffd2a9da3c31b904727f3fccf
2010-04-26 23:38:21 -04:00
Jeff Muizelaar
1ff50fe646 Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas
Reland after fixing quartz related clipping bug and a bunch of other ones
2010-04-05 22:28:54 -04:00
Bas Schouten
a3b2b8eed4 Bug 558934: Cache extended and none-extended surfaces separately. r=jrmuizel a=dholbert 2010-04-24 01:16:50 +02:00
Siddharth Agarwal
6e91448d6a Bug 558907 - VC10: pixman.h defines intN_t even though stdint.h is available. r=jrmuizel 2010-04-13 14:19:46 +05:30
Bas Schouten
2cba11e996 Bug 557390: Deal with paths consisting of a single move and a close. r=jrmuizel 2010-04-12 14:44:36 +02:00
Bas Schouten
63c94e8d32 Bug 553603: Do not let DXGI handle window changes for us. r=jrmuizel 2010-04-12 14:44:33 +02:00
Bas Schouten
0277200ab7 Bug 558557: Use a RefPtr here so that sourceBitmap creation references will be released. r=jrmuizel 2010-04-11 01:56:25 +02:00
Bas Schouten
083f212a9c Bug 550475 - Part 2: Use new RefPtr class in D2D backend. r=jrmuizel 2010-04-09 23:41:48 +02:00
Bas Schouten
9a46bc65e7 Bug 550475 - Part 1: Add a RefPtr template class to Cairo. r=jrmuizel 2010-04-09 23:41:46 +02:00
Bas Schouten
c87fd6c0e9 Bug 558161: Set bitmaps !dirty after their current contents has been updated. r=jrmuizel 2010-04-09 23:41:43 +02:00
Jeff Muizelaar
d751aaf9e3 Backed out changeset 9480726de986
Rendering/Invalidation problems showed up.
2010-04-08 09:44:28 -04:00
Jeff Muizelaar
aff371e5cb Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas
Reland after fixing quartz related clipping bug.
2010-04-05 22:28:54 -04:00
Jeff Muizelaar
a7d2620943 Bug 542605. Backed out changeset 2b9a4c865737
Reftest failures that showed up at the last minute.
2010-04-06 00:14:30 -04:00
Jeff Muizelaar
6db34ced75 Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
Bas Schouten
918838eb37 Bug 553852: D2D backend should destroy image surfaces when done with them. r=jrmuizel 2010-03-24 15:51:15 +01:00
Bas Schouten
9085adb235 Bug 548942: Addition: Add comments as agreed. r=jrmuizel 2010-03-20 18:33:30 +01:00
Bas Schouten
0c122e81fd Bug 548942: Draw in device pixels and not in DIPs. 1 device pixel per DIP always. r=jrmuizel 2010-03-20 18:25:40 +01:00
Doug Turner
4655d34ca9 Bug 553508 - Remove the define Q_WS_X11. It overlaps with existing defines that we have and is not always set by sdk. r=oleg 2010-03-18 21:48:35 -07:00
Bas Schouten
63b12a7696 Bug 550723: Properly support the CLEAR operator for D2D surfaces. r=jrmuizel 2010-03-10 13:38:21 +01:00
Bas Schouten
2fe46f4c56 Bug 550911: Properly tell cairo which part of the image has been passed. r=jrmuizel 2010-03-09 00:53:50 +01:00
Ginn Chen
f7cd5098d6 Bug 526976: SIGFPE [@ _moz_cairo_format_stride_for_width] on BGR frame buffer r=jrmuizel 2010-03-08 17:37:58 +08:00
Hanspeter Niederstrasser
1aa988def9 Bug 516029 - flags (XCFLAGS) for including fontconfig/fontconfig.h are not added to compiler command (gfx/cairo); adds XCFLAGS to OS_INCLUDES.
r=benjamin.
2010-03-05 22:00:51 +01:00
Julian Seward
98da85a059 Bug 548793. Initialize XRender version fields if XRender isn't available. r=jrmuizel 2010-03-05 13:10:42 +13:00
Bas Schouten
b2de77e13d Bug 549911: Acquire and release no longer use ->surface to store the temporary surface, release the correct object now. r=jrmuizel 2010-03-04 20:49:04 +01:00
Bas Schouten
9ba05c4318 Bug 549911: Scroll needs to make sure the clip rectangle is confined to the surface. r=jrmuizel 2010-03-04 20:49:01 +01:00
Bas Schouten
e35f7796fd Bug 549652: Fix a potential leak. r=jrmuizel 2010-03-04 20:30:10 +01:00
Bas Schouten
f6a6cbe7bb Bug 549652: Optimize SOURCE operator where possible. r=jrmuizel 2010-03-04 20:30:08 +01:00
Bas Schouten
bd3c8c2f83 Bug 549652: Properly support clearing surfaces. r=jrmuizel 2010-03-04 20:30:05 +01:00
Bas Schouten
07ee37b338 Bug 549171: Check if there's support for sufficient D3D hardware for the D2D backend to work. r=jrmuizel 2010-03-02 02:04:27 +01:00
Jeff Muizelaar
8668ef9bd2 Bug 544697. pixman: Reenable NEON support. r=vlad,bsmedberg
3f91dcac71c4 turned off NEON because of build breakage. This
turns it back on.

We also need to add a SSRCS target so that .S files get built
with gcc.
2010-02-08 23:13:12 -05:00
Jeff Muizelaar
e52c2af98f Revert 3f91dcac71c4 for breaking 'make check'. 2010-02-09 00:07:00 -05:00
Jeff Muizelaar
c631d2fce6 Bug 544697. pixman: Reenable NEON support. r=vlad,bsmedberg
3f91dcac71c4 turned off NEON because of build breakage. This
turns it back on.

We also need to add a SSRCS target so that .S files get built
with gcc.
2010-02-08 23:13:12 -05:00
Roy Frostig
84fba3ea8c Bug 536765 - Cairo Qt surface backend save()/restore() inconsistencies. r=jrmuizel 2010-02-03 23:29:30 -08:00
Bas Schouten
3ac80af6e5 Bug 543892. cairo: Fix DirectWrite backend transformations. r=jrmuizel
The DirectWrite cairo backend was incorrectly dealing with transformations. And
inconsistently dealing with them for D2D and GDI. I added a patch that fixes
that, it properly deals with the font matrix, and cleans up some of how the
matrices are treated. It also properly transforms D2D brushes on text to make
sure the pattern is correctly overlaid on the text. It also fixes the mask
handling in the transformed fallback path to look much better.

Also corrected inconsistent newlines in the license plate.
2010-02-03 13:32:49 -05:00
Bas Schouten
1cdb3dcbee Bug 527707. Cairo DirectWrite and Direct2D Backends. r=jrmuizel 2010-01-22 15:38:31 -05:00
Jeff Muizelaar
027bedcc63 Bug 530550. pixman: Fix arm gcc build.
The pixman-arm-simd-asm.c was just a copy of pixman-arm-simd.c instead
of the file it was supposed to be.
2010-01-21 11:30:07 -05:00
Jeff Muizelaar
ef56830e01 Bug 530550. Fix non-libxul build breakage caused by 0af6ca3135ca. r=ehsan
Non-libxul builds include pixman.h directly instead of having it included
by pixman-private.h which defines PIXMAN_USE_INTERNAL_API. So we ensure
PIXMAN_USE_INTERNAL_API is defined before including pixman.h
2010-01-20 20:01:00 -05:00
Jeff Muizelaar
e20cd75bd7 Bug 540464. pixman: update to 7862f9b96e8e8456cc60852790c7f244a5e3425e
This is a substantial cleanup of pixman and could break things.
2010-01-20 15:08:05 -05:00
Jeff Muizelaar
ca2d8beb78 Bug 539165. Fix single and multi-stop solid gradients by multiplying by the alpha component. r=roc
This cairo commit that caused the problem: 2d790daa957471670f4ae0d3b22da89e4ee7111f.
It was merged into mozilla-central with 1effb72d30cf
2010-01-18 10:36:43 -05:00
Benoit Girard
0ad9b22ba5 Bug 537032. cairo-quartz: Replace float pointer types with CGFloat. r=jrmuizel
CoreGraphics uses CGFloat which are float for 32-bits and double for 64-bits.
2010-01-15 11:12:31 -05:00
Dave Townsend
3f5f6023c5 Backed out changeset 4b725bb53baa from bug 539165 due to reftest failure 2010-01-12 16:27:48 -08:00
Jeff Muizelaar
5562b46b91 Bug 539165. Fix single and multi-stop solid gradients by multiplying by the alpha component. r=roc
This cairo commit that caused the problem: 2d790daa957471670f4ae0d3b22da89e4ee7111f.
It was merged into mozilla-central with 1effb72d30cf
2010-01-12 17:04:00 -05:00
Jonathan Kew
bdfe9682ba Add patch file to Cairo directory for bug 534260. (NPOTB) 2009-12-24 07:23:28 +00:00
Jonathan Kew
906e7cf4f3 Bug 534260: work around bad glyph extents returned by Core Graphics for empty glyphs in Al Bayan font. r=jmuizelaar 2009-12-23 20:45:00 +00:00
Metal Sonic
4c1b34d634 Bug 507387 - fix copyright holder; Mozilla Corporation -> Mozilla Foundation. r=gerv. 2009-12-21 21:50:30 +00:00
Karl Tomlinson
a527c04bef b=518506 make public pixman symbols available in --disable-libxul and --enable-system-cairo builds r=bsmedberg 2009-12-14 10:00:31 +13:00
Robert O'Callahan
0da6995ce3 Bug 513395: Make sure the Cairo/Quartz backend returns the first stop for negative positions on the gradient line of a nonrepeating linear gradient. r=jrmuizel
--HG--
extra : rebase_source : 2b4fbf1602dbaac5f3bba2ac0c8465236546bfe7
2009-11-02 09:20:40 -08:00
Jeff Muizelaar
abe4c1f753 Bug 500200. cairo-ddraw: Fallback if the source surface is larger than the maximum texture size. r=vlad
If the source surface is larger than the maximum texture size we fallback to software compositing
instead of drawing the wrong things.
2009-10-21 12:49:20 -04:00
Tobias Hunger
28c24755b6 Bug 518585 - Fix the cairo Qt backend to build. r=pavlov 2009-09-26 17:51:08 +02:00
Phil Ringnalda
e62c83fdc6 Bug 495228 - Remove checks for mac MOZ_WIDGET_TOOLKIT, r=ted 2009-09-18 19:59:53 -07:00
Jeff Muizelaar
7f0b0c4ec7 Bug 515192. Update cairo to 655a4dbc36d95ce4a82cbc13aa9e2002b41fa4de
This time without:
c0e01d9cd71bd958e1b31a03cea4c08a1bdf4926 (Improve GC caching efficacy)
2009-09-14 22:43:09 -04:00
Steffen Imhof
76bf54e530 Bug 498243. Make clipping reset explicit. r=vlad
--HG--
extra : rebase_source : b055dd091f5f4d8d3219d66863c71aec91e60ad3
2009-09-11 10:32:32 +12:00
Robert O'Callahan
f64d147ce2 Add cairo patches for Quartz gradient fixes
--HG--
extra : rebase_source : 7b50d07ec411410c7fda7b8fba423610018fd6cc
2009-08-26 10:05:44 -07:00
Jeff Muizelaar
15aecb7830 Backed out changeset 3d7b55f16ec5 2009-09-09 14:30:44 -04:00
Jeff Muizelaar
9106c6fb06 Bug 515192. Update cairo to 655a4dbc36d95ce4a82cbc13aa9e2002b41fa4de 2009-09-09 12:11:46 -04:00
Benjamin Smedberg
008e309c7f Bug 513032 - remove empty conditionals in our makefiles, r=ted 2009-08-27 10:48:18 -07:00
Robert O'Callahan
70eeaa8a7f Bug 508730. Don't repeat a Quartz gradient more times than necessary, to avoid Quartz quality problems when there are lots of repeated color stops. r=jmuizelaar
--HG--
extra : rebase_source : fb288f0d08fecc39f69df6157fa89ada95decb4c
2009-08-06 23:43:09 +12:00
Robert O'Callahan
782f6cc454 Bug 508730. Clean up Quartz gradient code by moving some local variables to static const globals. r=jmuizelaar
--HG--
extra : rebase_source : c853b6ab035fd80d4565438311163771bbc6fa59
2009-08-06 23:37:06 +12:00
Robert O'Callahan
7b54d43bbb Bug 508227. Don't fallback to Quartz for repeating radial gradients. r=jmuizelaar
--HG--
extra : rebase_source : 8ad7452fe67f9e67f0dd6eda02d0f0afcd4f5e00
2009-08-06 23:29:16 +12:00
Robert O'Callahan
ad0d3ca554 Backed out changeset 875c4ba4cbc8 2009-08-25 15:46:20 -07:00
Robert O'Callahan
0580caa913 Bug 508227. Don't fallback to Quartz for repeating radial gradients. r=jmuizelaar
--HG--
extra : rebase_source : fd5f578f728b0b2149ca4fcf84e1be6706cfc9d9
2009-08-06 23:29:16 +12:00
Benjamin Smedberg
2e9438fd2f Followup to bug 398573 - remove REQUIRES from the tree since it is no longer used... automatically generated patch, rs=ted 2009-08-25 08:59:31 -07:00
Robert O'Callahan
f45ce76b76 Bug 507939 - Remove erroneous clip rect fixup which caused repainting errors with repeating radial gradients on Mac. r=jmuizelaar
--HG--
extra : rebase_source : 24123ab8a6c676fa5e53e26820ac72cc575cc734
2009-08-14 11:07:37 +12:00
Jeff Muizelaar
a27974ef72 Bug 504920. Use cairo_set_can_convert_to_dib(TRUE) when creating optimized DDB image surfaces. r=vlad
This lets cairo convert and keep a DDB image into a DIB section when we paint
it to a canvas.  Avoiding the continuous conversion to an image surface
improves the performance of drawImage on to a canvas on Win32, in particular
the peacekeeper experimentalMovie benchmark.
2009-08-12 10:44:53 -04:00
Tobias Hunger
e8ade3ab9b Bug 498871 - Remove use of unnecessary QBrush pointer. r+sr=pavlov 2009-06-17 11:08:26 +02:00
Tobias Hunger
2b04096923 Bug 498873 - Remove use of unnecessary QPen pointer. r=pavlov 2009-06-17 13:21:04 +02:00
Vladimir Vukicevic
ef7dde313c b=494438; add optional OpenGL acceleration to ddraw surface for CE: enable composite accel; r=vlad 2009-07-08 16:34:02 -07:00
Vladimir Vukicevic
1499c311a9 b=494438; add optional OpenGL acceleration to ddraw surface for CE: make context current as appropriate; r=vlad 2009-07-08 16:34:02 -07:00
Vladimir Vukicevic
990145193e b=494438; add optional OpenGL acceleration to ddraw surface for CE: core code; r=vlad 2009-07-08 16:34:02 -07:00
Jeff Muizelaar
591639a8a3 Bug 498428. Try the rest of the cairo update. r=joe
This time with the suspect patch to see if we hit tSVG.
2009-06-30 11:54:50 -04:00
Steffen Imhof
2b751e300c Bug 500196: cairo/qt fails to build -- yet again, r=mfinkle 2009-06-30 09:58:29 -04:00
Jeff Muizelaar
16a322033e Bug 498428. Try to updating cairo again. r=joe
Try the update without a patch suspected of causing the Tsvg regression.
2009-06-26 15:03:00 -04:00
Tobias Hunger
183415ffd9 Bug 498843. Cleanup whitespace. r+sr=pavlov
--HG--
extra : rebase_source : ee45a9fc21a466c832f70ae43e7f77a126e4c762
2009-06-17 09:56:36 +02:00
Ginn Chen
28a4d143b9 Bug 499929 cairo-image-surface.c line 1253: void function cannot return value r=vladimir 2009-06-24 14:00:02 +08:00
Jeff Muizelaar
9ab4d687c1 Bug 498517. pixman: fix incorrect arm decompilation. r=vlad
The disassembler was producing:
  strh	r4, [r0, #2]
instead of
  strh	r4, [r0], #2
which was causing the alignment and index to go all wrong causing crashes.

Tested-by: dougt
2009-06-22 19:26:38 -04:00
Tobias Hunger
6e93a35747 Bug 498910: Add method to flush qpainter, r=mfinkle 2009-06-22 15:19:43 -04:00
Tobias Hunger
8c5980c615 Bug 498917: Fix some warnings in cairo-qpainter-surface.cpp, r=mfinkle 2009-06-22 15:19:43 -04:00
Tobias Hunger
0c05c84a6c Bug 498880: Reduce padding in cairo_qpainter_surface_t, r=mfinkle 2009-06-22 15:19:43 -04:00
Tobias Hunger
a777487dfa Bug 499135: Cairo/Qt fails to build -- yet again, r=mfinkle 2009-06-22 15:19:43 -04:00
Jeff Muizelaar
7a11cbc4a7 Bug 498689. Use scanline rasterizer on win32. r=joedrew, r=zweinberg 2009-06-22 15:01:50 -04:00
Jeff Muizelaar
019a8c6015 Bug 498428. Reverting f2ef72fbe01c because of tSVG regression 2009-06-18 16:44:02 -04:00
Jeff Muizelaar
2d221ae725 Update cairo to b71b019fe50a9188ddbecd1945606da8ba3bad53
Adrian Johnson (3):
      Fix win32 build breakage
      Ensure win32 font index_to_ucs4() sets ucs4 to -1 if lookup fails
      Correct the comment for the index_to_ucs4 font backend function

Behdad Esfahbod (2):
      Err, make gtk-doc happy again
      [user-font] Add CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED

Chris Wilson (37):
      [build] Enable shave support
      [build] Add lcov-1.7 to known list
      [image] Return FORMAT_INVALID for an error surface.
      [image] Make _cairo_image_analayze_transparency() more format agnostic
      [image] Treat A1 image surfaces as BILEVEL_ALPHA
      [test] Create a new fallback surface to exercise 16-bit paths.
      [png] Coerce FORMAT_INVALID to a known image format
      [surface] Convert FORMAT_INVALID during snapshots
      [xlib] Use a similar content surface for cloning images
      [build] Report status of gtk-doc in summary
      [build] Fix gtk-doc interoperation with shave
      [check] Quieten output during checking headers-standalone
      [cairo] Fix errors reported by check-doc
      [cairo] Convert C99 comments to /* ... */
      [cairo] Remove stray semi-colon
      [cairo] Protect typeof against -ansi
      [skiplist] Missing include for ffs()
      [script] Missing include for INT32_MAX
      [script] Pedantic violations
      [path] Define _BSD_SOURCE to enable hypot()
      [doc] Update identifiers
      [ft] Restore the ability to lazily resolve patterns.
      [xlib] Use minimal depth for similar clones.
      [test] Fix typos that excluded backend test sources
      [test] Add a note to "Getting the elusive zero failures"
      [test] Relax APPROX_EQUALS condition
      [test] Check text->path with user-fonts (twin)
      [test] Clear expected floating point exceptions
      [test] Stress the ft from-face cache
      [memfault] Update macros to avoid namescape collision with memcheck
      [debug] Check image contents using memcheck.
      [win32] Typo
      [win32] Wrap win32-font usage with CAIRO_HAS_WIN32_FONT
      [surface] Provide nil-surface for INVALID_SIZE
      [surface] Early return if the backend cannot clone an image
      [xlib] Handle too-large images gracefully.
      [in-fill] Treat on-edge queries as inside.

Jeff Muizelaar (1):
      Only include <strings.h> for ffs() when we HAVE_FFS

Karl Tomlinson (1):
      [ft] Resolve mutual referencing problems with zombie faces
2009-06-17 10:57:16 -04:00
Tobias Hunger
6c0cafef4a Bug 493726. Fix build problems with the cairo Qt backend. r=jrmuizel 2009-06-12 14:00:42 -04:00
Jeff Muizelaar
5aa1c3f88e Bug 485426. Add arm fast path for 565 to x888 conversion. r=vlad 2009-06-11 14:26:39 -04:00
Peter Weilbacher
500564266f Bug 493834: fix OS/2 build break in widget/src/os2 and make sure that all
cairo headers are installed to dist/include/cairo, r=bsmedberg
2009-05-20 08:47:08 +03:00
Hiroyuki Ikezoe
231a1be60c bug 493426 - unresolved cairo symbols related to cairo_ddraw_surface r=vlad 2009-05-19 22:27:50 -04:00
Benjamin Smedberg
bb1c33c4ea Bug 488175 - flatten dist/include and provide mechanism to install certain headers in namespaced subdirectories (e.g. #include "mozilla/XPCOM.h") r=ted
--HG--
rename : xpcom/ds/nsTimeStamp.cpp => xpcom/ds/TimeStamp.cpp
rename : xpcom/ds/nsTimeStamp.h => xpcom/ds/TimeStamp.h
2009-05-18 14:15:05 -04:00
Karl Tomlinson
d447d2ec7d b=486974 zombie ft_font_face / ft_unscaled_font mutual referencing problems. r=jdaggett
--HG--
extra : rebase_source : 8f2e3d477bbad5177a228681b9650735ec9d6817
2009-05-18 19:35:16 +12:00
Makoto Kato
334f4485f0 Backed out changeset c4b8a7e21ec9 2009-05-16 00:39:54 +09:00
Makoto Kato
01bcf5a9cd Bug 488851 - Enable SSE2 for pixman. r=jmuizelaar 2009-05-15 23:15:24 +09:00
Brad Lassey
dbde09dac9 fixing gfx build bustage in wince r=joe 2009-05-14 22:47:51 -04:00