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

635 Коммитов

Автор SHA1 Сообщение Дата
Bas Schouten c763b37157 Bug 583033: We should allow the function to continue for OPERATOR_CLEAR. r=jrmuizel a=blocking-betaN 2010-07-29 21:26:32 +02:00
Bas Schouten d9fafdc2c7 Bug 581089: Make linear gradients work properly for zero length and different extend modes. r=jrmuizel a=blocking-betaN 2010-07-29 18:18:36 +02:00
Bas Schouten c6425a3e67 Bug 581089: Part 1: Fix radial gradient pattern handling when not using EXTEND_PAD. r=jrmuizel a=blocking-betaN 2010-07-28 18:53:20 +02:00
Bas Schouten 79b907273a Bug 581083: Use Direct2D geometry to inverse transform which will preserve the required precision. r=jrmuizel a=blocking-betaN 2010-07-28 18:53:17 +02:00
Karl Tomlinson 44ee4169cd b=562574 fixes for cairo_copy_clip_rectangle_list and empty cairo_clip_extents r=jrmuizel
--HG--
extra : rebase_source : 7559cb07311c0328d62a625c631a6ab822934b0d
2010-07-23 10:22:51 +12:00
Jeff Muizelaar 9fc42c3101 Bug 578124. D2D: Don't create an A8 surface with GDI compatible flags. r=bas
CreateTexture2D doesn't support creating FORMAT_A8 textures with GDI_COMPATIBLE
so we avoid doing so.
2010-07-21 16:37:24 -04:00
Bas Schouten fe90876f5f Whitespace fix from changeset 2f270a9da778. 2010-07-19 18:53:47 +02:00
Bas Schouten 34290715c4 Bug 579215: Direct2D does not know how to deal with self-copy. Fallback. r=jrmuizel 2010-07-19 18:48:02 +02:00
Oleg Romashin 571ff20b60 Bug 550673 - Fix glyphs rendering for cairo-qpainter-surface. r=jmuizelaar
--HG--
extra : rebase_source : efbaa01f0716eafb3cf53a2e21eed49c9e88e54a
2010-07-17 09:52:35 +03:00
Bas Schouten 7b063ed632 Bug 577200. Part 1: Add cairo API to set up a Win32 surface for an HDC with an alpha channel. r=jrmuizel 2010-07-16 09:07:44 +12:00
Daniel Holbert 0a2d04e6df Bug 503279: disable spammy 'missing initializer' warning in imported code within gfx. r=jrmuizel 2010-07-13 11:50:18 -07:00
Vladimir Vukicevic 4cd467403f b=?; fix make-makefile and cairo-features.h.in hack; r=ted 2010-07-02 11:20:29 -07:00
Oleg Romashin 9f4fd5ba19 Bug 567065 - Try to create offscreen Xlib surface from existing visual if possible. r=jmuizelaar. 2010-06-16 04:32:26 -04:00
jrmuizel@ironman.ca.mozilla.com e1a193f8d7 Bug 567295. d2d: Support antialiased clipping. r=bas
This switches from using CombineGeometry() to accumulate
clip paths to using a stack of Layers each with a
geometric mask. This avoids any imprecision that occurs
when using CombineGeometry().

There maybe some performance regressions but we need the
correctness and may be able to get some of the performance
back.
2010-06-30 14:55:21 -04:00
Bas Schouten 7aca9947fd Bug 558467: Expose the image surface cache memory usage for Direct2D. r=jrmuizel 2010-06-30 15:52:00 +02:00
Jacek Caban 83597e8444 Bug 508905 - /Zc:wchar_t- is no longer required (cairo-dwrite part) r=jmuizelaar
--HG--
extra : rebase_source : 2a283b99932cb9891e63f56670e8ce8762514385
2010-06-27 01:31:01 +02:00
Benjamin Otte e7991868dc b=571448 In the XCopyArea region code, don't modify src_x/y when they are later used in the unbounded fixup code r=jrmuizel 2010-06-27 20:03:16 +12:00
Oleg Romashin 691d4249e9 Backout changeset 850ff2cf2868, ba88e35da4e7 due to crash on SVG test 2010-06-22 21:44:03 -04:00
Oleg Romashin 434cbae70d Bug 567065 - Try to create offscreen Xlib surface from existing visual if possible. r=jmuizelaar.
--HG--
extra : rebase_source : 8dce785274ca66f36c46f960ca29bde0d3faff18
2010-06-22 19:59:42 -04:00
Bas Schouten 9990d5a369 Bug 573506: Expose GetDC/ReleaseDC on D2D surfaces. r=jrmuizel 2010-06-22 03:10:34 +02:00
Bas Schouten fee8140b17 Bug 565120: Deal with the case where a source lies outside of a destination surface. r=jrmuizel 2010-06-19 16:32:50 +02:00
Bas Schouten fdc01fa365 Bug 565120: Do not upload partially when not required. r=jrmuizel 2010-06-19 16:32:48 +02:00
Robert O'Callahan 8c0f73eb30 Bug 572912. Fix surface type passed to cairo_quartz_surface_create during fallback for CGLayers. r=jrmuizel 2010-06-18 21:24:15 +12:00
Oleg Romashin d6ff5034c5 Backed out changeset 598c5f8d295c, due Gdk-CRITICAL **: gdk_x11_visual_get_xvisual 2010-06-18 07:14:57 -04:00
Oleg Romashin 67dfc086ac Bug 567065 - Try to create offscreen Xlib surface from existing visual if possible. r=jmuizelaar.
--HG--
extra : rebase_source : 6f5c766cab5a4f552c8e9911f80da560205d5ab2
2010-06-16 04:32:26 -04:00
Bas Schouten 0013def21c Bug 557372: Don't create a SharedBitmap for A8_UNORM surfaces. This will fail. r=jrmuizel 2010-06-16 01:08:26 +02:00
Jeff Muizelaar 8c323b55b2 Bug 563255. cairo: PDF-operators: ensure text operations flushed before emitting clip 2010-06-15 15:34:09 -04:00
Jeff Muizelaar a75006878d Bug 563255. cairo: PS: Add missing 'q' when resetting clip path 2010-06-15 15:15:01 -04:00
Oleg Romashin 24c1ccd37c Bug 545632 - Add 16bpp format support for cairo image surface type. r=jmuizelaar 2010-06-11 04:23:59 -04:00
Oleg Romashin fcdfc8be57 Backed out changeset 85335f212ac3, attempt to fix oranges 2010-06-11 08:36:08 -04:00
Oleg Romashin 6b0371fa82 Bug 545632 - Add 16bpp format support for cairo image surface type. r=jmuizelaar
--HG--
extra : rebase_source : b1d605a29da2e965cd480e51fa72e1bc10ed4d11
2010-06-11 04:23:59 -04:00
Jonathan Kew 81697b7f24 bug 568191 followup - add patch file to gfx/cairo directory, and note in README. (NPOTB) 2010-06-10 19:20:37 +01:00
Jonathan Kew ef07dca7a9 bug 568191 - add padding to glyph extents in cairo dwrite backend to allow for antialiasing. r=bas 2010-06-10 19:19:51 +01:00
Justin Wood 7404e635db Bug 467051 - Introduce GLOBAL_DEPS to build system (gfx/cairo) r=vlad, feedback+=ted
--HG--
extra : rebase_source : 3dee9c67387cb9b72dd81da6d52ad996afa2bfae
2010-05-30 22:49:32 -04:00
Bas Schouten 8e5fc45701 Some whitespace fixes. 2010-06-09 17:50:05 +02:00
Bas Schouten ddffa23d17 Bug 568495: Do not push cleartype for transparent window surfaces. r=jrmuizel 2010-06-09 17:50:03 +02:00
Benoit Girard 79f2567099 Replace float by CGFloat to fix BoxShadows on 64-bit OS X + added reftest. b=562616 r=jmuizelaar 2010-06-09 00:11:38 -04:00
Brad Lassey c1ec9bcb32 [android] read /proc/cpuinfo for cpu info 2010-05-07 16:48:33 -04:00
Robert O'Callahan 002224fae6 Bug 568189. Add patches to list. 2010-06-01 14:09:44 +12:00
Robert O'Callahan 6eb537adf9 Bug 552537. Add patch to list. 2010-06-01 14:05:55 +12:00
Robert O'Callahan 6e3efde342 Bug 568189. Implement CGLayer-backed cairo-quartz surfaces. r=jrmuizel 2010-06-01 11:33:23 +12:00
Robert O'Callahan 8409392d05 Bug 568189. Part 3: Remove snapshot backend function since it doesn't work and we may as well just fall back. r=jrmuizel 2010-06-01 11:33:05 +12:00
Robert O'Callahan bdc8fa4076 Bug 552537. Cache the CGImageRef that we create for a CGBitmapContext so that we can take advantage of Quartz caching optimizations. r=jrmuizel 2010-06-01 11:19:45 +12:00
Bas Schouten 3add880ead Bug 568719: Clear D2D surfaces before use to clear any re-used VRAM. r=jrmuizel 2010-05-29 03:16:24 +02:00
Michael Wu dc3db854dc Bug 565089 - Allow cairo to build on Android. r=jmuizelaar,ted 2010-05-25 15:21:18 -07:00
Robert O'Callahan 021650f32f Bug 552859. Fix cairo patch to relfect what I actually landed. Not part of the build. 2010-05-21 20:48:55 +12:00
Robert O'Callahan 5c52a93154 Bug 522859. Refactor cairo-quartz-surface so that state local to a drawing operation is stored in a cairo_quartz_drawing_state_t instead of the surface. r=jrmuizel 2010-05-19 15:04:33 +12:00
Robert O'Callahan e38c7ebe25 Backed out changeset b50002597112
--HG--
extra : rebase_source : f22f069a398bc8b3071fe8faaeb4770b0eb7847b
2010-05-19 17:44:58 +12:00
Robert O'Callahan 15295424fd Bug 522859. Refactor cairo-quartz-surface so that state local to a drawing operation is stored in a cairo_quartz_drawing_state_t instead of the surface. r=jrmuizel 2010-05-19 15:04:33 +12:00
Makoto Kato f2f0dd1545 Bug 540999 - Enable SSE2 for pixman on Windows x64 build. r=jmuizelaar 2010-05-12 17:07:19 +09:00
Bas Schouten 3edb2022a7 Bug 551350: Part 2: Remove no longer used multiple-run code from D2D backend. r=jrmuizel a=Mossop 2010-05-11 01:16:39 +02:00
Bas Schouten 48dbf06561 Bug 551350: Part 1: Add proper handling of large image surfaces. r=jrmuizel a=Mossop 2010-05-11 01:16:35 +02:00
Bas Schouten 6f9f453435 Bug 555388: Part 1: Make sure we flush before clearing surfaces. r=jrmuizel 2010-05-06 23:56:34 +02:00
Jeff Muizelaar 900ce1a92b 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 4c9f01242c Bug 562087: Update pixman to 2f4f2fb4859931bf6dc5632d8c919e7296736427
Should give some performance improvements
2010-05-05 11:23:54 -04:00
Oleg Romashin 49da3f5fd6 Bug 562710 - Disable -pedantic for cairo-qt code. r=jmuizelaar 2010-05-01 08:22:42 -04:00
Jeff Muizelaar c1e8abd08d 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 c6adb55bed 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 b150d375c8 Bug 561891 - QPainter is is busted after last cairo merge. r=jmuizelaar. 2010-04-29 06:25:02 -04:00
Jeff Muizelaar fdd42ea0c2 pixman: remove unused pixman-neon.patch. r=joe
This patch is obsoleted by upstream.
2010-04-27 11:08:57 -04:00
Jeff Muizelaar e034e858a4 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 031624fd56 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 d49e64c791 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 f931ccc5a1 Bug 558934: Cache extended and none-extended surfaces separately. r=jrmuizel a=dholbert 2010-04-24 01:16:50 +02:00
Siddharth Agarwal 7490702f1e 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 ad507ecf2d 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 471bcfaf75 Bug 553603: Do not let DXGI handle window changes for us. r=jrmuizel 2010-04-12 14:44:33 +02:00
Bas Schouten 7cbf4c2131 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 a0ccb694f5 Bug 550475 - Part 2: Use new RefPtr class in D2D backend. r=jrmuizel 2010-04-09 23:41:48 +02:00
Bas Schouten 92357da7cb Bug 550475 - Part 1: Add a RefPtr template class to Cairo. r=jrmuizel 2010-04-09 23:41:46 +02:00
Bas Schouten 6847004f63 Bug 558161: Set bitmaps !dirty after their current contents has been updated. r=jrmuizel 2010-04-09 23:41:43 +02:00
Jeff Muizelaar 9a26138ae4 Backed out changeset 9480726de986
Rendering/Invalidation problems showed up.
2010-04-08 09:44:28 -04:00
Jeff Muizelaar a6ac7bede6 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 208a821de1 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 46e4fa2d5a Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
Bas Schouten b3ea7e8d58 Bug 553852: D2D backend should destroy image surfaces when done with them. r=jrmuizel 2010-03-24 15:51:15 +01:00
Bas Schouten 106f010172 Bug 548942: Addition: Add comments as agreed. r=jrmuizel 2010-03-20 18:33:30 +01:00
Bas Schouten a7c58234d7 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 c36d5ea27d 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 c8f8bd30e6 Bug 550723: Properly support the CLEAR operator for D2D surfaces. r=jrmuizel 2010-03-10 13:38:21 +01:00
Bas Schouten 6b0b9783ec 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 4ebbd2bd03 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 eaba789900 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 22aee9c460 Bug 548793. Initialize XRender version fields if XRender isn't available. r=jrmuizel 2010-03-05 13:10:42 +13:00
Bas Schouten e5b4c3d9df 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 14c3996022 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 9d12e48a85 Bug 549652: Fix a potential leak. r=jrmuizel 2010-03-04 20:30:10 +01:00
Bas Schouten 47f7718049 Bug 549652: Optimize SOURCE operator where possible. r=jrmuizel 2010-03-04 20:30:08 +01:00
Bas Schouten 28ef613184 Bug 549652: Properly support clearing surfaces. r=jrmuizel 2010-03-04 20:30:05 +01:00
Bas Schouten 3734f540df 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 1ba8851c67 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 654903b9ea Revert 3f91dcac71c4 for breaking 'make check'. 2010-02-09 00:07:00 -05:00
Jeff Muizelaar f3a650563d 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 6689c25b48 Bug 536765 - Cairo Qt surface backend save()/restore() inconsistencies. r=jrmuizel 2010-02-03 23:29:30 -08:00
Bas Schouten 4f49aefd7d 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 ae94615170 Bug 527707. Cairo DirectWrite and Direct2D Backends. r=jrmuizel 2010-01-22 15:38:31 -05:00
Jeff Muizelaar 361e631de2 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 e687ca2971 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 f0593f27a4 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 308dbbc556 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