Commit Graph

8737 Commits

Author SHA1 Message Date
Chris Jones
7f04c5ba64 Bug 648484, part 6: Add code to share D3D10 textures across processes. r=Bas 2011-07-13 22:43:43 -07:00
Chris Jones
d2060002c1 Bug 648484, part 5: Create our D3D10 device so as to allow cross-process resource sharing. r=Bas 2011-07-13 22:43:43 -07:00
Chris Jones
726c115d22 Bug 648484, part 4: Log layers transactions in the d3d10 backend. r=Bas 2011-07-13 22:43:43 -07:00
Chris Jones
f536ed7edf Bug 648484, part 3 and part 3.1: Allow passing a "backend hint" to GetLayerManager() to request a non-default layer manager backend. Deal with failure to hook up shadow layers. sr=roc 2011-07-13 22:43:43 -07:00
Chris Jones
fcb0f65051 Bug 648484, part 2: Add various helpers, refactor ContainerLayer::SetSpecificAttributes. r=roc 2011-07-13 22:43:43 -07:00
Chris Jones
0369ff5024 Bug 648484, part 1: Fix some warning spam. r=roc 2011-07-13 22:43:43 -07:00
Matt Woodrow
d76b381d9f Bug 670106 - Check the surface type before attempting to create a GLXPixmap. r=joe 2011-07-15 08:45:33 +12:00
Rob Bradford
f27ff56d6f Bug 670645 - Lookup texture_from_pixmap symbols using glXGetProcAddress. r=mattwoodrow 2011-07-11 14:07:49 +01:00
Adrian Johnson
a8a9a3744c Bug 624699. Fix some landscape printing bugs. r=roc
Specifically:
1) Only rotate print output for PostScript, not PDF.
2) Rotate in the correct direction for PostScript.
3) Set the %%Orientation comment correctly.
2011-07-14 13:02:20 -04:00
Jacek Caban
99f37a11db Bug 670913 - LayerManagerD3D10.h fails to compile on mingw (r=joe) 2011-07-13 17:58:17 +02:00
Ehsan Akhgari
0823e559de Merge mozilla-central and mozilla-inbound 2011-07-13 11:51:33 -04:00
Ehsan Akhgari
3e4044476c Merge the last green changeset on mozilla-inbound to mozilla-central 2011-07-13 11:40:03 -04:00
Jonathan Kew
9911ba235d bug 668758 - don't look up prefs font families in the user font set. r=jdaggett 2011-07-13 09:40:32 +01:00
Jonathan Kew
7945b12f01 Backed out changeset 51b49a7cf2e4 (bug 668758) because of android bustage 2011-07-13 10:50:37 +01:00
Jonathan Kew
2ef267be9d bug 668758 - don't look up prefs font families in the user font set. r=jdaggett 2011-07-13 09:40:32 +01:00
Bas Schouten
8367a2ca66 Bug 666452 - Part 3: Create a minimal size temp surface for canvas shadow drawing. r=roc 2011-07-13 02:36:28 +02:00
Bas Schouten
e72bf56f22 Bug 666452 - Part 2: Minimize drawing done with shadow in the Azure D2D backend. r=BenWa 2011-07-13 02:34:43 +02:00
Bas Schouten
9c36d75cba Bug 666452 - Part 1: Expose functions to get the (stroked) bounds of a path. r=BenWa sr=roc 2011-07-13 02:34:40 +02:00
Benoit Girard
2ab0d12f09 Bug 663259 - Enable Mac Async plugin by default. r=cjones,mattwoodrow
--HG--
extra : rebase_source : 6d397273f10e659a08125b3861e1651a3994aaa0
2011-07-12 10:31:18 -04:00
Jonathan Kew
8d6d499d91 bug 494130 - log downloadable font errors to console. r=jdaggett 2011-07-12 12:24:36 +01:00
Daniel Holbert
6a8e68ad73 Bug 670025: Use more fine-grained checks to pick depth in GLContext::ResizeOffscreenFBO. r=vlad 2011-07-12 00:11:20 -07:00
Daniel Holbert
6dcbfef97d backout 36b64e9837f5 (Bug 668764) due to reftest orange on Win7 2011-07-11 18:24:03 -07:00
Jeff Gilbert
5163c2d02a Bug 669522: Removed unused function bool IsFloatInteger(float) r=joe 2011-07-11 12:24:21 -07:00
Bas Schouten
05d344302f Bug 668764: Properly specify stroke offset in Direct2D cairo backend. r=jrmuizel 2011-07-11 16:37:01 +02:00
Ed Morley
380667f6fa Bug 631155 - undefined return value in function '_cairo_surface_wrapper_flush'; r=jrmuizel 2011-07-11 09:14:12 -04:00
Ed Morley
bbcadd9496 Bug 670111 - Add double overloads to NSToCoord(Round|Floor|Ceil|Clamped) to stop numerous build warnings; r=roc 2011-07-11 09:14:12 -04:00
Ed Morley
2732bc62de Bug 670338 - Add double overload to NSToIntRound to stop build warnings; r=roc 2011-07-11 09:14:12 -04:00
Bas Schouten
371b57bace Bug 666097 - Fix radial gradient drawing in Azure. r=jrmuizel
* * *
Part 2: Adjust tests to properly confirm passing. r=jrmuizel
2011-07-08 18:49:35 +00:00
Robert O'Callahan
d4259656be Bug 649924. Use image surfaces to implement canvases beyond the texture size limit. r=bas 2011-07-08 22:42:21 +12:00
Marco Bonardo
77013a6607 Merge mozilla-inbound and mozilla-central 2011-07-08 11:53:56 +02:00
Nicholas Nethercote
14e0e78adc Bug 653627 - Don't use char** in nsIMemoryReporter. r=khuey, sr=bz. 2011-07-08 12:45:16 +10:00
Benoit Jacob
225de6a36d Bug 665070 - part 1: implement GLContext::GetAndClearError - r=jrmuizel 2011-07-07 20:01:16 -04:00
Marco Bonardo
5b0aa644a2 Merge mozilla-inbound and mozilla-central 2011-07-07 12:02:38 +02:00
Justin Lebar
b17feeb414 Backing out bug Bug 648484 (csets 9fcd404d97aa through 2bfa7417504d) due to orange. 2011-07-06 20:27:35 -04:00
Florian Haenel
a0b30fbce6 Bug 607687 - Fennec should take care about Texture MAX size HW limitation r=jmuizelaar 2011-07-06 11:00:47 -07:00
Chris Jones
6a84167e1b Bug 648484, part E: Hook d3d9 shadow layers up to new system. r=BenWa 2011-07-06 13:29:27 -04:00
Chris Jones
154d42025d Bug 648484, part C: Forward a shadow-layer transaction after rendering in the D3D10 backend, if remote. r=joedrew
* * *
Unrot bug 648484. r=Bas. To be folded.
2011-07-06 13:29:27 -04:00
Chris Jones
d800ece14d Bug 648484, part B: Implement shadowable layer goop for D3D10, just enough to allow sending a window buffer to the compositor. r=Bas 2011-07-06 13:29:27 -04:00
Chris Jones
45d4ecff84 Bug 648484, part A: Allow D3D10 layers to render directly to a share-able texture. r=Bas 2011-07-06 13:29:27 -04:00
Chris Jones
b5f3d7f6c7 Bug 648484, part 9: Make LayerManagerD3D10 a shadow-layer manager and forwarder. r=Bas 2011-07-06 13:29:27 -04:00
Chris Jones
065d10e894 Bug 648484, part 8: Implement a very basic shadow thebes layer for D3D10, only enough to support the upcoming WindowLayer. r=Bas 2011-07-06 13:29:27 -04:00
Chris Jones
22f7db5a6c Bug 648484, part 7: Implement a very basic shadow container layer for D3D10, only enough to support the upcoming WindowLayer. r=Bas 2011-07-06 13:29:27 -04:00
Chris Jones
d501a4a634 Bug 648484, part 6: Add code to share D3D10 textures across processes. r=Bas 2011-07-06 13:29:27 -04:00
Chris Jones
d4463e8330 Bug 648484, part 5: Create our D3D10 device so as to allow cross-process resource sharing. r=Bas 2011-07-06 13:29:26 -04:00
Chris Jones
5639c8d598 Bug 648484, part 4: Log layers transactions in the d3d10 backend. r=Bas 2011-07-06 13:29:26 -04:00
Chris Jones
c462de96d4 Bug 648484, part 2: Add various helpers, refactor ContainerLayer::SetSpecificAttributes. r=roc 2011-07-06 13:29:26 -04:00
Chris Jones
cac704ffe4 Bug 648484, part 1: Fix some warning spam. r=roc 2011-07-06 13:29:26 -04:00
Mounir Lamouri
4c9de5f9e9 Merge mozilla-central into mozilla-inbound. 2011-07-06 14:49:29 +02:00
L. David Baron
1b49ece84f Only apply overflow area reported by native theme to the visual overflow, and not to the scrollable overflow. (Bug 669284) r=bzbarsky 2011-07-06 12:03:23 +02:00
Jonathan Kew
117a28457f bug 669175 - [harfbuzz] fix indexing in reverse_range() to avoid pathological perf & incorrect results. r=behdad 2011-07-06 08:01:41 +01:00
Jacob Bramley
9a97cc1996 Bug 666918: Allow some routines to omit the frame pointer even with --enable-profiling. This will break call-graphs for these functions, but an --enable-profiling build won't work without it. [r=cjones] 2011-07-05 09:48:40 +01:00
Bas Schouten
300196ee5f Bug 668801 - Followup: Properly address review comments. 2011-07-05 08:52:48 +00:00
Bas Schouten
aa0a80ced3 Bug 668801 - Part 3: Adjust dealing with clipped shadows to be accurate. r=jrmuizel 2011-07-05 06:28:20 +00:00
Bas Schouten
c17281a505 Bug 668801 - Part 2: Fix small bug in Azure shadow drawing. r=jrmuizel 2011-07-05 06:28:17 +00:00
Bas Schouten
ab39deeadf Bug 668801 - Part 1: Adjust Azure for traditional shadow drawing style. r=jrmuizel 2011-07-05 06:28:14 +00:00
Matt Woodrow
ef4adc6afb Bug 656185 - Part 4 - Upload the entire image for PlanarYCbCrImageD3D10 to a texture and clip using texture coordinates. r=Bas 2011-07-05 14:52:50 +12:00
Matt Woodrow
a1491697a0 Bug 656185 - Part 3 - Upload the entire image for PlanarYCbCrImageD3D9 to a texture and clip using texture coordinates. r=Bas 2011-07-05 14:52:34 +12:00
Matt Woodrow
e64b02f01a Bug 656185 - Part 2 - Upload the entire image for PlanarYCbCrImageOGL to a texture and clip using texture coordinates. r=derf 2011-07-05 14:52:00 +12:00
Matt Woodrow
9879aa7837 Bug 656185 - Part 1 - Move BindAndDrawQuadWithTextureRect into LayerManagerOGL. r=joe 2011-07-05 14:50:38 +12:00
Benoit Girard
2f27b1192a Bug 636707 - Check for null MacIOSurfaceImageOGL. r=mattwoodrow 2011-07-04 09:51:37 -04:00
Benoit Girard
5b3036138c Bug 648480 - Add shadow-layer support to d3d9 backend. r=cjones 2011-07-04 09:15:05 -04:00
Ed Morley
acfd91cd49 Bug 661584 - Substitute final PR_(MAX|MIN|ABS|ROUNDUP) macro calls; r=roc 2011-07-03 11:53:40 +02:00
Benoit Girard
3a51e1fdfa Backout 627489bb6288. 2011-07-01 18:05:54 -04:00
Marco Bonardo
e1de548d00 Merge last green changeset from mozilla-central to mozilla-inbound 2011-07-01 23:56:44 +02:00
Benoit Girard
4ec96c8c7f Bug 648480 - Add shadow-layer support to d3d9 backend. r=cjones 2011-07-01 16:57:15 -04:00
Jonathan Kew
53962f854b bug 666893 - add padding pixels to DWrite text bounds because of ClearType bleed when using GDI Classic mode. r=roc 2011-07-01 07:38:17 +01:00
Jonathan Kew
ca191217c7 bug 553571 - try to avoid breaking font runs at ZWNJ when using font fallback, because Indic scripts require shaping across the ZWNJ character. r=roc 2011-07-01 07:38:14 +01:00
Makoto Kato
e16e58937a Bug 413019 - Remove PGO workaround for some modules. r=ted 2011-07-01 12:46:02 +09:00
Steven Michaud
36d54eefdb Bug 659851 - Firefox and Lion disagree on GLintptr. f=bas.schouten r=bjacob 2011-06-30 14:06:25 -05:00
Benoit Girard
1e93785b55 Bug 663259 - Part 1: Mac Async rendering fixes. r=josh 2011-06-30 12:46:25 -04:00
Ryan VanderMeulen
7676326719 Bug 667663 - Silence MSVC warning by returning NULL if DWrite is disabled. r=bas 2011-06-30 14:35:46 +02:00
Ehsan Akhgari
86da6932d3 Merge mozilla-central and mozilla-inbound 2011-06-30 05:08:20 -04:00
Oleg Romashin
37e4c451c1 Bug 668368 - Logging.h compile fail due to missing stdio.h r=bas.schouten 2011-06-29 15:13:21 -07:00
Jonathan Kew
e9e59d071d bug 663688 - back out changeset c4b84b05c46c to revert the workaround that disabled downloadable fonts on Lion. r=jdaggett 2011-06-29 14:16:12 +01:00
Justin Lebar
5daed65b45 Bug 664486 - Add page fault counts to about:memory on Linux and Mac. r=njn, sr=bz
--HG--
extra : rebase_source : 47dd7501dea7ae69e01828a5c730e8853739dc71
2011-06-16 14:34:09 -04:00
Jeff Muizelaar
12139c87c5 2D: Add a comment about why we need to know the fill mode early. r=bas 2011-07-07 12:57:52 -04:00
Mike Hommey
73e9c2d6c7 Bug 676252 part 1 - Don't use $(OBJ_SUFFIX) before including config.mk. r=ted 2011-08-29 07:34:02 +02:00
Matt Brubeck
539e6ce545 Merge mozilla-central and mozilla-inbound 2011-08-12 07:08:33 -07:00
Jeff Muizelaar
1f4cd33169 Bug 660662. Eliminate NS_(ceil|floor). r=roc
These just called the system versions.
2011-05-30 15:08:55 -04:00
Jonathan Kew
d05c5c7fd5 bug 667166 - apply 'locl' feature early along with 'ccmp', before Arabic-specific shaping features. r=jdaggett 2011-08-12 11:49:36 +01:00
Chris Jones
e0d217fcaa Bug 662038, part 3: Implement dashing for d2d. r=Bas 2011-06-29 14:34:58 -07:00
Chris Jones
952bc1a668 Bug 662038, part 2: Add dashing API to Azure. r=Bas sr=roc 2011-06-29 14:34:58 -07:00
Chris Jones
d27b646301 Bug 662038, part 0: Add gfxContext::CurrentDash(). r=jrmuizel 2011-06-29 14:34:58 -07:00
Marco Bonardo
97e50f4bc9 Merge last green changeset from mozilla-inbound to mozilla-central 2011-06-28 11:17:15 +02:00
Bas Schouten
e768a19cf6 Bug 667290: Properly clear the downsampled destination before blending to it. r=jrmuizel 2011-06-28 02:10:06 +02:00
Benoit Jacob
9884944aa7 Bug 665934 - fix bug: arev was meant instead of amap - r=upstream
This patch has been taken in ANGLE upstream as r699.
2011-06-27 13:27:04 -04:00
Mounir Lamouri
00c9c62df5 Backout changeset 4e87265b9c11 (bug 663259) due to Talos regression. 2011-06-27 14:52:57 +02:00
Matt Woodrow
f47d6dca8b Back out bug 656185 due to windows compile failures 2011-06-27 15:21:22 +12:00
Matt Woodrow
efa3bcd4b7 Bug 656185 - Part 4 - Fix for D3D9. r=Bas 2011-06-27 14:32:42 +12:00
Matt Woodrow
63f8b0a243 Bug 656185 - Part 3 - Fix for D3D10. r=Bas 2011-06-27 14:32:34 +12:00
Matt Woodrow
6e295129f3 Bug 656185 - Part 2 - Handle odd crop offsets correctly with OpenGl. r=derf 2011-06-27 14:32:16 +12:00
Matt Woodrow
fe8fe23d3c Bug 656185 - Part 1 - Move BindAndDrawQuadWithTextureRect into LayerManagerOGL. r=joe 2011-06-27 14:32:06 +12:00
Benoit Girard
e717beef93 Enabled Mac Async plugin by default + Fixes. b=663259 r=josh 2011-06-25 15:12:59 -04:00
Benoit Girard
c9729f2d7f Bug 577224 - Fix nsCARenderer warnings; r=smichaud 2011-06-24 10:49:42 -04:00
Takanori MATSUURA
4041dc2544 Bug 667286 - Include cairo.h as "cairo.h" instead of "cairo/cairo.h"; r=bas 2011-06-26 23:10:35 +09:00
Ed Morley
3f49fdcb2a Bug 661584 - Code cleanup, substitute more PR_(MAX|MIN|ABS|ROUNDUP) macro calls; r=roc,ted 2011-06-25 16:06:02 +02:00
Jonathan Kew
5c01379b6a bug 663688 - prefer CGFont APIs to older ATS APIs on 10.6 or later. r=smichaud,roc 2011-06-24 18:55:27 +01:00
Bas Schouten
662596f4fb Bug 651858 - Part 5: Add CanvasLayer code for azure. r=jrmuizel 2011-06-24 19:41:18 +02:00
Bas Schouten
c504745112 Bug 651858 - Part 4: Implement API for creating a D3D10 compatible DrawTarget. r=roc 2011-06-24 19:41:18 +02:00
Bas Schouten
bc37e50310 Bug 651858 - Part 3: Add layers API for creating an optimal DrawTarget. r=roc 2011-06-24 19:41:18 +02:00
Bas Schouten
208c771f07 Bug 651858 - Part 2: Add glue code in gfx for thebes-azure interop. r=jrmuizel 2011-06-24 19:41:18 +02:00
Bas Schouten
189472e8c9 Bug 651858 - Part 1: Add the Azure API and Direct2D backend. r=jrmuizel sr=roc
--HG--
rename : gfx/src/BaseMargin.h => gfx/2d/BaseMargin.h
rename : gfx/src/BasePoint.h => gfx/2d/BasePoint.h
rename : gfx/src/BaseRect.h => gfx/2d/BaseRect.h
rename : gfx/src/BaseSize.h => gfx/2d/BaseSize.h
2011-06-24 19:41:16 +02:00
Marco Bonardo
8d56f5c0e0 Merge last green changeset in mozilla-inbound to mozilla-central 2011-06-24 11:32:12 +02:00
Ed Morley
8e9e496bf0 Bug 665622 - Fix unused variable warnings in GLContext.cpp & GLContextProviderEGL.cpp; r=joedrew 2011-06-23 19:01:17 -07:00
Daniel Holbert
b646a615bc Bug 661969: If no delay is passed to gfxFontInfoLoader::StartLoader, use the interval as delay. r=jdaggett 2011-06-23 19:01:17 -07:00
Jeff Muizelaar
4b67acc2d6 Bug 662649. DrawFPS: Make the conversion loop easier to follow. r=joe 2011-06-22 14:53:11 -04:00
Jeff Muizelaar
ad8a1fabad Bug 662649. DrawFPS: Add a comment about why DrawFPS is a little weird. 2011-06-22 14:49:31 -04:00
Jeff Muizelaar
3e64a3274a Bug 662649. DrawFPS: Make sure we use a 32 bit type instead of a 64 bit one. r=joe
This was causing badness on platforms where unsigned long is 64 bits.
2011-06-22 14:46:27 -04:00
Jeff Muizelaar
7cfa60fc62 Bug 662649. DrawFPS: free leaked buffer. r=joe
glTexImage2D will keep a copy of this data around so we don't have to.
2011-06-22 14:43:52 -04:00
Jeff Muizelaar
e68edc37a9 Bug 661658. Fix pointer as int size problem on Win64. r=joedrew
The glyph cache uses a pointer for a hash value, and uses
that hash value as a pointer. We need to ensure that the
hash type is large enough to fit a pointer.
2011-06-22 14:38:25 -04:00
Ehsan Akhgari
752a7fe810 Merge the last green changeset of mozilla-inbound to mozilla-central 2011-06-22 19:17:32 -04:00
Mats Palmgren
5b08cd1f9d Bug 312156 - Make gfxFont::HasCharacter work for Pango fonts. r=roc 2011-06-22 20:11:47 +02:00
Robert O'Callahan
82eb2f46ce Bug 637852. Part 26: Ensure that FrameMetrics coordinates are correctly stored as layer coordinates. r=tnikkel 2011-06-23 00:11:28 +12:00
Robert O'Callahan
9e63608c26 Bug 637852. Part 25: Add nsSize ScaleToNearestPixels. r=tnikkel 2011-06-23 00:11:28 +12:00
Robert O'Callahan
612c9f5ad3 Bug 637852. Part 21: Skip invalidation if aRegionToInvalidateIsEmpty (note that ScaleRoundOut on an empty bounds rect can return a non-empty rect). r=tnikkel 2011-06-23 00:11:28 +12:00
Robert O'Callahan
9f092ece3e Bug 637852. Part 18: Support computing the "residual transform" for a ThebesLayer --- the difference between its snapped transform and the ideal transform --- and use it to align ThebesLayer drawing for transforms that aren't changing. r=tnikkel
This fixes bug 637597 and probably other bugs.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
ce7be9d494 Bug 637852. Part 11: Remove ExtendForScaling from nsRect and nsRegion. r=joe
This is good because the semantics of this method always sucked.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
8b4e1a91a8 Bug 637852. Part 10: Remove mX/YResolution from ThebesLayer. r=joe
These are the last vestiges of Layer-based resolution API.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
a97f0fea4e Bug 637852. Part 9: Remove resolution support from BasicLayers, ShadowLayers and GL layers. r=mattwoodrow
This is not needed anymore.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
829914f298 Bug 637852. Part 8: Remove resolution support from D3D9 layers. r=mattwoodrow
Layer-system resolution support is no longer needed.
2011-06-23 00:11:27 +12:00
Robert O'Callahan
783029e208 Bug 637852. Part 7: Remove resolution support from D3D10 layers. r=mattwoodrow
Layer-system resolution support is no longer needed.
2011-06-23 00:11:27 +12:00
Robert O'Callahan
9ddbfbb285 Bug 637852. Part 6: Implement resolution scaling in FrameLayerBuilder. r=tnikkel
FrameLayerBuilder::BuildContainerLayerFor takes responsibility for resolution scaling. The ContainerParameters
passed in are added to any transform requested. Then we extract the scale part of the transform, round the scale
up to the nearest power of two if the transform may be actively animated (so we don't have to redraw layer contents
constantly), pass that scale down to be applied by each child and set the residual transform on the ContainerLayer.

For child layers built via BuildLayer, we just pass the requested scale factor in via the ContainerParameters.
If the returned layer is a ContainerLayer then BuildLayer is guaranteed to have already done necessary scaling.
If the returned layer is not a ContainerLayer then we apply the scale ourselves by adding the scale to the
child layer's transform.

For child ThebesLayers containing non-layer display items, we scale the drawing of those display items so that
the child ThebesLayers are simply larger or smaller (larger or smaller visible regions).

We have to scale all visible rects, clip rects etc that are in the coordinates of ThebesLayers or the parent
ContainerLayer. To keep things simple we do this whenever we convert from appunits to integer layer coordinates.

When a ThebesLayer's resolution changes we need to rerender the whole thing.

nsDisplayList::PaintForFrame needs to respect the presshell's resolution setting. We do that by building a layer tree
with a ContainerParameters requesting a scale up by the presshell resolution; once that layer tree is built, we
adjust the root layer transform to scale back down by the resolution.
2011-06-23 00:11:27 +12:00
Robert O'Callahan
91a72cf57f Bug 637852. Part 4: Add nsRegion::ScaleInverseRoundOut and nsRegion::ScaleToOutsidePixels APIs. r=joe 2011-06-23 00:11:27 +12:00
Robert O'Callahan
c2827bc133 Bug 637852. Part 3: Add nsPoint::ScaleToNearestPixels, nsRect::ScaleToNearestPixels, nsRect::ScaleToInsidePixels and nsRect::ScaleToOutsidePixels APIs. r=joe 2011-06-23 00:11:27 +12:00
Robert O'Callahan
ac135884a6 Bug 637852. Part 2: Add BaseRect::ScaleInverseRoundOut API. r=joe 2011-06-23 00:11:27 +12:00
Robert O'Callahan
29044a8c64 Bug 637852. Part 1: Don't snap BasicThebesLayer effective transforms when we're not retaining layers. r=tnikkel
The ThebesLayer contents are going to be drawn through directly without retaining, so there's no point in snapping.
2011-06-23 00:11:27 +12:00
Ehsan Akhgari
0f617c2905 Merge the last green changeset of mozilla-inbound to mozilla-central 2011-06-22 15:50:44 -04:00
Jonathan Kew
47ba59f255 bug 476927 - add padding to text bounds on OS X to allow for possible antialiasing pixels. r=roc 2011-06-22 09:49:57 +01:00
Jonathan Kew
fbae01af17 bug 475968 - add padding pixels to loose ink bounds on Windows because of ClearType pixel bleed. r=roc 2011-06-22 09:49:53 +01:00
Steven Michaud
f495493687 Bug 663688 - Temporarily default to turning off downloadable fonts on OS X Lion. r=jdaggett,jfkthame 2011-06-20 10:42:39 -05:00
Benoit Girard
8ad86f24a1 Bug 572571 - Abort Core Animation rendering for windows that are too large. r=josh 2010-08-01 19:15:25 -04:00
Mounir Lamouri
124a708eb4 Merging mozilla-inbound with mozilla-central. 2011-06-18 18:29:10 +02:00
Jacek Caban
0bf4b97dfb Bug 663784 - Don't use using statement before includes r=masayuki 2011-06-17 14:55:51 +02:00
Jonathan Kew
85a01c345d bug 647560 followup - put the color components in the right order. a=test-bustage 2011-06-17 09:14:09 +01:00
Robert O'Callahan
47384ede10 Bug 647560. Implement non-fallbacky behavior for _cairo_win32_surface_fill_rectangles on an ARGB surface, using StretchDIBits. r=jrmuizel 2011-06-17 15:36:37 +12:00
Ed Morley
5e7764d4ab Bug 664311 - Remove WinCE code from gfx/; r=jmuizelaar 2011-06-18 11:04:30 +02:00
Benoit Jacob
1727f110cb Bug 659842 comment 86 - accidentally removed a glXDestroyContext call + fix a warning in opt build - r=trivial-fix 2011-06-17 21:42:31 -04:00
Benoit Jacob
4500b8e8dc Bug 659842 - [topcrash] release the GL context before calling glXDestroyContext - r=karlt
See the glXDestroyContext man page:

  If GLX rendering context ctx is not current to any thread,
  glXDestroyContext  destroys it immediately.  Otherwise, ctx is destroyed
  when it becomes not current to any thread.  In either case, the resource ID
  referenced by ctx is freed immediately.

In other words, if we want glXDestroyContext to have the well-defined semantics
of destroying the context before future X commands take effect, we must first
release the GL context before calling it. We were failing to do that, but we
were destroying the drawable immediately after that call, and as a result, the
context was outliving its underlying drawable. This eventually resulted in
X_GLXMakeCurrent: GLXBadContextTag X errors on subsequent glXMakeCurrent calls.
2011-06-17 11:49:27 -04:00
Oleg Romashin
96777818e6 Bug 660565 - HTML5 HW accelerated video is slow r=roc
--HG--
extra : rebase_source : 5a46d17c72caf5ec4afd3f59093be803008c61ec
2011-06-16 12:51:05 +02:00
Jonathan Kew
a3761c531a bug 467669 - pt 6 - provide the real font name rather than our internal identifier. r=roc 2011-06-16 07:31:37 +01:00
Jonathan Kew
57163eeca3 bug 467669 - pt 5 - expose WOFF metadata (if present) for downloaded fonts. r=roc 2011-06-16 07:31:37 +01:00
Jonathan Kew
ecc53f421e bug 467669 - pt 4.1 - fix Mac font backend to mark local user fonts properly. r=roc 2011-06-16 07:31:37 +01:00
Jonathan Kew
edc3700f8f bug 467669 - pt 4 - expose additional attributes for downloaded fonts. r=roc 2011-06-16 07:31:37 +01:00
Jonathan Kew
182daf38b3 bug 467669 - pt 3 - track which stage of font matching led to selection of a particular face. r=roc 2011-06-16 07:31:37 +01:00
Jonathan Kew
252bbe4c42 bug 660088 - [OTS] parse and serialize the 'name' table instead of discarding it and using fake names. r=jdaggett 2011-06-16 07:31:36 +01:00
Ehsan Akhgari
f92823ac1a Backout bug 467669 and bug 660088 2011-06-15 16:52:48 -04:00
Jonathan Kew
66c70413dc bug 660088 - [OTS] parse and serialize the 'name' table instead of discarding it and using fake names. r=jdaggett
--HG--
extra : rebase_source : 3f3672c4cac5d1dfe7911c0f603032c33c205b42
2011-06-15 20:17:54 +01:00
Jonathan Kew
34ebc89623 bug 467669 - pt 6 - provide the real font name rather than our internal identifier. r=roc
--HG--
extra : rebase_source : d548ab2be329058bde101b142607abf14dce7191
2011-06-15 20:17:54 +01:00
Jonathan Kew
08274c4304 bug 467669 - pt 5 - expose WOFF metadata (if present) for downloaded fonts. r=roc
--HG--
extra : rebase_source : 91e7f231b281e1949997996d7308aceb4935247b
2011-06-15 20:17:52 +01:00
Jonathan Kew
42b0ff4b45 bug 467669 - pt 4.1 - fix Mac font backend to mark local user fonts properly. r=roc
--HG--
extra : rebase_source : 9ef420cb21d14276e766e1acea5d93364d48b87f
2011-06-15 20:17:52 +01:00
Jonathan Kew
eef61e1a09 bug 467669 - pt 4 - expose additional attributes for downloaded fonts. r=roc
--HG--
extra : rebase_source : f3d41348ab01a21ac6b6a1713b1e5e7274cf7fbf
2011-06-15 20:17:52 +01:00
Jonathan Kew
4d2e90c28b bug 467669 - pt 3 - track which stage of font matching led to selection of a particular face. r=roc
--HG--
extra : rebase_source : 89e65a1d612dcee7872a18a5e4bb9b3591c3a63d
2011-06-15 20:17:51 +01:00
Jacek Caban
8883918756 Bug 663784 - gfxWindowsPlatform.cpp doesn't compile without D2D r=masayuki 2011-06-15 12:22:57 +02:00
Neil Rashbrook
fc981395e8 Bug 660525 Remove useless uses of PromiseFlatString (prev cset lacked the code changes) r=joedrew! 2011-06-13 19:02:35 -07:00
Ted Mielczarek
b9712b1eab merge m-c and b-s 2011-06-13 09:09:43 -04:00
Ed Morley
8aaddd0334 Bug 659621 - Remove EXTRA_DSO_LIBS, EXTRA_DSO_LDOPTS, OS_LIBS from makefiles containing LIBXUL_LIBRARY = 1, now that libxul is always built; r=ted 2011-06-12 03:49:00 -04:00
Makoto Kato
6635f50f90 Bug 662726 - Remove unused ANGLE source. r=bjacob 2011-06-13 10:32:34 +09:00
Masayuki Nakano
9b0bdf62e1 Bug 663036 part.3 gfx should use mozilla::Preferences r=roc+joe 2011-06-12 11:30:16 +09:00
Joe Drew
b978ce8e35 Bug 660448 - look up FT_Library_SetLcdFilter via dlsym at runtime to fix terrible subpixel rendering on up-to-date Linux systems. r=karlt,bjacob
This will need to be reverted once our build systems are upgraded to a newer
version of FreeType. In the long run, we need to increase our runtime
dependency to this newer version.
2011-06-10 21:06:23 -04:00
Ehsan Akhgari
77db392f64 Merge mozilla-central and mozilla-inbound 2011-06-10 16:07:54 -04:00
Benoit Jacob
3404a86446 Bug 663162 - Update ANGLE to r686 - r=joedrew
Just an ANGLE update, plus updating the list of failed tests on WinXP, also now properly reporting on unexpeced success (using todo(true) instead of ok(false))
2011-06-10 14:59:08 -04:00
Matheus Kerschbaum
265aca5175 Bug 614721 - Remove some DirectDraw left overs. r=joedrew,jrmuizel 2011-06-10 18:27:01 +02:00
Mounir Lamouri
dd5b8ba075 Merginig mozilla-inbound with mozilla-central. 2011-06-10 09:58:03 +02:00
Oleg Romashin
4c2383b5c0 Bug 659832 - Make WebGL working on Maemo r=joe 2011-06-09 21:18:43 -04:00
Oleg Romashin
977fc29345 Bug 612335 - Render remote canvas directly into shared surface r=jones.chris.g 2011-06-09 21:17:02 -04:00
Bas Schouten
496e39c64c Bug 655836: Flush surface A when B changes and A has a pending drawing command depending on B. r=jrmuizel 2011-06-09 17:28:12 -04:00
Jonathan Kew
61a25173b3 Bug 661471. Part 7: Only force GDI_CLASSIC rendering for specified fonts if a rendering mode has not been explicitly chosen in prefs. r=roc 2011-06-09 08:17:20 +01:00
Jonathan Kew
0883aa5a11 Bug 661471. Part 6.3: Only force DW to use specific ClearType modes if ClearType is actually enabled. r=roc 2011-06-09 08:13:13 +01:00
Robert O'Callahan
b7d0fa0010 Bug 661471. Part 6.1: Expose cairo_win32_get_system_text_quality. r=jfkthame 2011-06-09 08:13:02 +01:00
Oleg Romashin
c78a0ad45c Bug 594418 - GLDefs.h GLsizeiptr, GLintptr gl types definition conflicts with khronos gl types r=bjacob 2011-06-07 11:42:22 -07:00
Nicholas Nethercote
a7a6e77911 Bug 658814 - move gfx/surface/* reporters out of the "explicit" group to avoid double-counting of some meomry bytes and subsequent negative values in about:memory. r=jmuizelaar. 2011-06-07 12:17:01 +10:00
Nicholas Nethercote
df04be1f66 Bug 656773 - Separate the process and the path in nsIMemoryReporter so that about:memory works in private browsing mode. r=sdwilsh, sr=roc. 2011-06-06 11:22:45 +10:00
Mounir Lamouri
8d38f1695a Merging cedar with mozilla-central. 2011-06-03 12:06:08 +02:00
Robert O'Callahan
be47844603 Bug 661471. Part 3: Apply 'GDI Classic' prefs to @font-face local(). r=jdaggett,jfkthame 2011-06-03 16:31:08 +12:00
Robert O'Callahan
e6a174ce46 Bug 661471. Part 2: Add a pref to limit the forcing of 'GDI Classic' to a maximum font size. r=jdaggett,jfkthame 2011-06-03 16:31:08 +12:00
Robert O'Callahan
3cb40b372b Bug 661471. Part 1: Create preference to force particular font families to use 'GDI Classic' rendering with DirectWrite. r=jdaggett,jfkthame 2011-06-03 16:31:07 +12:00
Matheus Kerschbaum
c0decf640b Bug 660762 - Remove --disable-mathml support. r=roc 2011-06-02 13:11:33 +02:00
Kyle Huey
ecde4fa4e4 Fix a spelling mistake on this CLOSED TREE 2011-05-31 09:14:54 -07:00
Mounir Lamouri
526da227fb Merging cedar with mozilla-central. 2011-05-31 12:17:48 +02:00
Makoto Kato
53cc49df1a Bug 660584 - nsILanguageAtomService.LookupLanguage should use nsACString instead of nsAString. r=smontagu 2011-05-31 14:09:05 +09:00
Karl Tomlinson
6cae4de3fc mark new reftest as failing on Android b=660740 2011-05-31 16:30:00 +12:00
Ehsan Akhgari
e6f37de195 Bug 660676 - Remove the copy constructor for nsSize and nsIntSize; r=roc 2011-05-30 19:07:35 -04:00
Zack Weinberg
1d4222af32 extend_pad tests for bug 468496
--HG--
extra : transplant_source : %1A%F9%8E%1F%29%23%E4%9EE%BA%20%A7%18%B0%FE%5B%A3A%28%E4
2011-05-31 09:53:41 +12:00
Oleg Romashin
f447171c32 Bug 659768 - HTML5 video does not render anything on Maemo r=mattwoodrow 2011-05-31 09:48:47 +12:00
Karl Tomlinson
0926a6ea58 b=468496 use RepeatPad on newer X servers even when downscaling r=joe
--HG--
extra : transplant_source : %8DY%BB%96%10%93%5C%E7%60%04h%5C%400%F8%1Dx%CCq%FC
2011-05-31 09:38:50 +12:00
Dominic Fandrey
968bf5196a Bug 645398 - Substitute PR_(MAX|MIN|ABS|ROUNDUP) macro calls; r=roc 2011-06-02 14:56:50 +02:00
Mounir Lamouri
0e0d00b02e Merging cedar with mozilla-central. 2011-05-30 12:50:04 +02:00
Ed Morley
f50fecd45b Bug 624748 - Remove unused nsITheme::RegisterWidgetGeometry. r=roc 2011-05-30 09:31:42 +02:00
Robert O'Callahan
51fbcbb34a Bug 647560. Remove unused MayHaveOverlappingOrTransparentLayers. r=tnikkel 2011-05-30 15:48:34 +12:00
Robert O'Callahan
2e0298a19f Bug 647560. Cache temporary backbuffer surfaces. r=karlt 2011-05-30 15:48:29 +12:00
Robert O'Callahan
9accec318f Bug 647560. Create ApplyDoubleBuffering to recursively walk layer tree and implement double-buffering by setting mUseIntermediateSurface on ContainerLayers where necessary. r=tnikkel
The idea here is to do double-buffering just by setting mUseIntermediateSurface on ContainerLayers when needed. When
we need to double-buffer compositing of a layer tree, ApplyDoubleBuffering examines the root container layer. If the
child layers don't overlap and together cover the window, we don't need to double-buffer in that container, instead
we can double-buffer each child layer separately --- so we recursively call ApplyDoubleBuffering on the child layers.
When a container has children that overlap or that don't cover the container's visible rect (the latter case
probably can't happen in practice), we force it to have an intermediate surface.

This change fixes this bug because in normal browser windows the Web content layer double-buffers
2011-05-30 15:48:23 +12:00
Robert O'Callahan
b951f3597d Bug 647560. Add support for compositing BasicLayers with OPERATOR_SOURCE. r=tnikkel
We'll need this for the improved backbuffer code in the next patch. When a layer tree's
leaf layers don't overlap and cover the window, the next patch will avoid double-buffering
by blitting those layers directly to the window. If the window has transparent parts
(e.g. with Aero Glass), we need to draw the layers for those transparent parts using
OPERATOR_SOURCE so that the alpha values in the window are reset.
2011-05-30 15:48:13 +12:00
Robert O'Callahan
c69b69915a Bug 647560. Clean up MarkLeafLayersHidden and make it set the hidden state on container layers. r=tnikkel
Instead of doing tricks with the cliprect to prevent layer content from adding to aOpaqueRegion, pass an explicit flag to control that.
Mark a ContainerLayer hidden if all its children are hidden. This will need to be changed if/when we add layer properties
that result in a ContainerLayer drawing content even if it has no children.
2011-05-30 15:48:08 +12:00
Robert O'Callahan
96787d1aa7 Bug 647560. Use passed-in aContext instead of getting it from the layer manager. r=tnikkel 2011-05-30 15:48:01 +12:00
Robert O'Callahan
73527b85f3 Bug 639168. Don't try to reuse a buffer if we don't have one. r=tnikkel 2011-05-30 15:29:07 +12:00
Masayuki Nakano
4a5030c91a Bug 660121 Remove all pref related methods from nsContentUtils r=roc 2011-05-29 08:42:57 +09:00
Jeff Muizelaar
852e188f76 Bug 659676 - remove debugging code that snuck in. r=khuey 2011-05-26 09:29:25 +02:00
Jeff Muizelaar
f30c726d3a Bug 562746. Update cairo to 1.10.
A lot of changes from upstream here that will hopefully be smoothed
out a bit soon.
2011-03-10 14:52:15 -05:00
Jeff Muizelaar
5adbc61fa6 Bug 562746. Remove use of EXTEND_NONE on quartz. r=roc
The updated quartz backend actually supports extend none properly.
We currently (and in the update) patch extend_pad to behave like the old
extend_none instead of a real extend_pad, so this change shouldn't have any
rendering differences now and fixes the reftest when we update.
2011-05-18 15:41:45 -04:00
Mounir Lamouri
5dbe0fcb94 Merging cedar with mozilla-central. 2011-05-27 09:57:51 +02:00
Daniel Holbert
d82fe3627c Bug 659466: Fix remaining data URI "#" --> "%23" conversions in testcases. r=bz 2011-05-26 01:20:08 -07:00
Neil Rashbrook
3678727236 Fix DOS line endings rs=joedrew!
DONTBUILD
2011-05-26 20:41:33 +01:00
Ehsan Akhgari
1cf1f06794 Backout bug 562746 (Cairo update to version 1.10) because of the possible Dromaeo regression on Mac OS X 10.5) 2011-05-26 14:57:50 -04:00
Ehsan Akhgari
502bf1e201 Backout changeset ecbe9bb3433f (bug 659676) because of the backout of bug 562746, which introduced the removed line here 2011-05-26 14:52:54 -04:00
Benoit Jacob
35a3781d38 Bug 659349 - WebGL allows access to uninitialised graphics memory - r=jrmuizel
GLContext::ClearSafely() wasn't really safe, it was making naive assumptions about GL state and as a result, a WebGL script could obtain an uninitialized backbuffer.
2011-05-26 14:24:48 -04:00
Jeff Muizelaar
a49d7ff7a9 Bug 659676 - remove debugging code that snuck in. r=khuey 2011-05-26 09:29:25 +02:00
Jeff Muizelaar
8eb40c43cb Bug 562746. Update cairo to 1.10.
A lot of changes from upstream here that will hopefully be smoothed
out a bit soon.
2011-03-10 14:52:15 -05:00
Jeff Muizelaar
a3b506816d Bug 562746. Remove use of EXTEND_NONE on quartz. r=roc
The updated quartz backend actually supports extend none properly.
We currently (and in the update) patch extend_pad to behave like the old
extend_none instead of a real extend_pad, so this change shouldn't have any
rendering differences now and fixes the reftest when we update.
2011-05-18 15:41:45 -04:00
Oleg Romashin
9bc8e8bac5 Bug 659217 - HW accelerated video crashing with OGL layerss enabled. r=matt.woodrow
--HG--
extra : rebase_source : bd3b7998f5b8193a01d927c388ee2375d2a6bacf
2011-05-25 10:09:55 +02:00
Matt Brubeck
8349139224 Merge cedar to mozilla-central 2011-05-24 14:55:37 -07:00
Benoit Jacob
9ebd896e48 Bug 657748 - Update ANGLE to r653 - a=joe
This ANGLE update fixes bugs, brings large performance improvements, and adds major new features that web devs are looking forward to: vertex shader texture lookup and float textures.

http://code.google.com/p/angleproject/

This update is also needed because the version we're currently using is the chrome_m10 branch and that's no longer maintained. This update will make it much easier to apply security fixes if needed.
2011-05-24 11:05:56 -04:00
John Daggett
cea2a0c551 Bug 659182. Null-check bundle ID's before releasing.
r=roc
2011-05-23 22:14:16 -07:00
Matheus Kerschbaum
6eb93f7dd3 Bug 648911 - Remove support for non-libxul builds. r=ted,joedrew 2011-05-23 18:54:47 +02:00
Matt Brubeck
4d5eb3b9f7 Merge cedar and mozilla-central 2011-05-23 07:39:21 -07:00
Robert O'Callahan
ab1023ee7a Bug 654950. Fix scissor rect calculations for descendants of container layers with intermediate surfaces. r=bas 2011-05-23 12:27:03 +12:00
Benjamin Peterson
77408a88a6 Bug 658314 - UserToDevice uses the transform matrix. r=roc
--HG--
extra : rebase_source : 642b8d2ec5c5a523c74d44c4285731810f28e7ba
2011-05-21 22:06:24 +02:00
Benoit Jacob
7e05c500e7 Bug 656215 - check max size for textures and renderbuffers - r=joedrew
This is needed to correctly handle exceedingly large canvases, for example.
2011-05-20 15:53:53 -04:00
Vladimir Vukicevic
b52de06579 Bug 630672 - implement WebGL OES_texture_float extension - r=bjacob
This implements floating-point textures in WebGL
2011-05-20 15:53:53 -04:00
Joel Maher
193c66083d Bug 616999. Xpcshell manifest support; manifest files. r=ted, a=test-only 2011-05-20 11:54:01 -04:00
Vivien Nicolas
d7877250d0 backout bug 647560 - Pages on Fennec desktop does not not draw anymore 2011-05-20 17:45:00 +02:00
John Daggett
6a19da366e Bug 652754. Eliminate unnecessary font data enumerations at startup. r=jkew 2011-05-20 15:09:30 +09:00
John Daggett
4e65ac9cf3 Backout 2e0e36b0feae due to odd Linux bustage 2011-05-20 16:13:01 +09:00
John Daggett
de4233ccc7 Bug 652754. Eliminate unnecessary font data enumerations at startup. r=jkew 2011-05-20 15:09:30 +09:00
Jeff Muizelaar
bc110d668a Bug 658249. Update pixman to 0f6a4d45886d64b244d57403609f0377b58cc7fb.
Andrea Canciani (1):
      test: Fix compilation on win32

Dave Yeo (1):
      Check for working mmap()

Gilles Espinasse (2):
      Fix missing AC_MSG_RESULT value from Werror test
      Fix OpenMP not supported case

Siarhei Siamashka (7):
      ARM: tweaked horizontal weights update in NEON bilinear scaling code
      ARM: use aligned memory writes in NEON bilinear scaling code
      ARM: support for software pipelining in bilinear macros
      ARM: use less ARM instructions in NEON bilinear scaling code
      ARM: support different levels of loop unrolling in bilinear scaler
      ARM: pipelined NEON implementation of bilinear scaled 'src_8888_8888'
      ARM: pipelined NEON implementation of bilinear scaled 'src_8888_0565'

Søren Sandmann Pedersen (8):
      Makefile.am: Put development releases in "snapshots" directory
      ARM: Tiny improvement in over_n_8888_8888_ca_process_pixblock_head
      ARM: Add 'neon_composite_over_n_8888_0565_ca' fast path
      Offset rendering in pixman_composite_trapezoids() by (x_dst, y_dst)
      Pre-release version bump to 0.21.8
      Post-release version bump to 0.21.9
      Pre-release version bump to 0.22.0
      Post-release version bump to 0.23.1

Taekyun Kim (3):
      ARM: Common macro for scaled bilinear scanline function with A8 mask
      ARM: NEON scanline functions for bilinear scaling
      ARM: Enable bilinear fast paths using scanline functions in pixman-arm-neon-asm-bilinear.S

--HG--
extra : rebase_source : aff729718af3e7d25577603241d204bf02ecfb90
2011-05-18 13:43:30 -04:00
Florian Hänel
9b0ef26bc8 Bug 628566 - Implement basic tiling of ImageLayerOGL. r=joe 2011-05-19 12:53:02 +02:00
Robert O'Callahan
47ede5b8e2 Bug 647560. Remove unused MayHaveOverlappingOrTransparentLayers. r=tnikkel 2011-05-18 23:24:52 +12:00
Robert O'Callahan
b3d6e4d026 Bug 647560. Cache temporary backbuffer surfaces. r=karlt 2011-05-18 23:24:52 +12:00
Robert O'Callahan
66c2bd79f5 Bug 647560. Create ApplyDoubleBuffering to recursively walk layer tree and implement double-buffering by setting mUseIntermediateSurface on ContainerLayers where necessary. r=tnikkel
The idea here is to do double-buffering just by setting mUseIntermediateSurface on ContainerLayers when needed. When
we need to double-buffer compositing of a layer tree, ApplyDoubleBuffering examines the root container layer. If the
child layers don't overlap and together cover the window, we don't need to double-buffer in that container, instead
we can double-buffer each child layer separately --- so we recursively call ApplyDoubleBuffering on the child layers.
When a container has children that overlap or that don't cover the container's visible rect (the latter case
probably can't happen in practice), we force it to have an intermediate surface.

This change fixes this bug because in normal browser windows the Web content layer double-buffers
2011-05-18 23:24:52 +12:00
Robert O'Callahan
c768bea25e Bug 647560. Add support for compositing BasicLayers with OPERATOR_SOURCE. r=tnikkel
We'll need this for the improved backbuffer code in the next patch. When a layer tree's
leaf layers don't overlap and cover the window, the next patch will avoid double-buffering
by blitting those layers directly to the window. If the window has transparent parts
(e.g. with Aero Glass), we need to draw the layers for those transparent parts using
OPERATOR_SOURCE so that the alpha values in the window are reset.
2011-05-18 23:24:52 +12:00
Robert O'Callahan
f243295b25 Bug 647560. Clean up MarkLeafLayersHidden and make it set the hidden state on container layers. r=tnikkel
Instead of doing tricks with the cliprect to prevent layer content from adding to aOpaqueRegion, pass an explicit flag to control that.
Mark a ContainerLayer hidden if all its children are hidden. This will need to be changed if/when we add layer properties
that result in a ContainerLayer drawing content even if it has no children.
2011-05-18 23:24:52 +12:00
Robert O'Callahan
211b76b78d Bug 629866. Part 2: Make MarkLeafLayersHidden actually hide layers that aren't in the dirty region. Don't consider hidden layers when deciding whether double-buffering is needed. r=cjones 2011-05-18 23:24:52 +12:00
Mounir Lamouri
513d0ca1d6 Merging cedar with mozilla-central. 2011-05-18 11:42:37 +02:00
Ed Morley
91238e76b1 Bug 316661 - Part A - Remove null-checks before delete. r=bsmedberg 2011-05-17 16:01:36 +02:00
Mounir Lamouri
127ecf5ea3 Backout bug 629866 and bug 647560. 2011-05-17 11:44:17 +02:00
Robert O'Callahan
bfdfab0931 Bug 647560. Remove unused MayHaveOverlappingOrTransparentLayers. r=tnikkel 2011-05-17 11:42:19 +12:00
Robert O'Callahan
5649b24aa6 Bug 647560. Cache temporary backbuffer surfaces. r=karlt 2011-05-17 11:42:11 +12:00
Robert O'Callahan
b021c0ce1b Bug 647560. Create ApplyDoubleBuffering to recursively walk layer tree and implement double-buffering by setting mUseIntermediateSurface on ContainerLayers where necessary. r=tnikkel
The idea here is to do double-buffering just by setting mUseIntermediateSurface on ContainerLayers when needed. When
we need to double-buffer compositing of a layer tree, ApplyDoubleBuffering examines the root container layer. If the
child layers don't overlap and together cover the window, we don't need to double-buffer in that container, instead
we can double-buffer each child layer separately --- so we recursively call ApplyDoubleBuffering on the child layers.
When a container has children that overlap or that don't cover the container's visible rect (the latter case
probably can't happen in practice), we force it to have an intermediate surface.

This change fixes this bug because in normal browser windows the Web content layer double-buffers
2011-05-17 11:42:05 +12:00
Robert O'Callahan
4005a3a447 Bug 647560. Add support for compositing BasicLayers with OPERATOR_SOURCE. r=tnikkel
We'll need this for the improved backbuffer code in the next patch. When a layer tree's
leaf layers don't overlap and cover the window, the next patch will avoid double-buffering
by blitting those layers directly to the window. If the window has transparent parts
(e.g. with Aero Glass), we need to draw the layers for those transparent parts using
OPERATOR_SOURCE so that the alpha values in the window are reset.
2011-05-17 11:41:57 +12:00
Robert O'Callahan
6f33d6ea53 Bug 647560. Clean up MarkLeafLayersHidden and make it set the hidden state on container layers. r=tnikkel
Instead of doing tricks with the cliprect to prevent layer content from adding to aOpaqueRegion, pass an explicit flag to control that.
Mark a ContainerLayer hidden if all its children are hidden. This will need to be changed if/when we add layer properties
that result in a ContainerLayer drawing content even if it has no children.
2011-05-17 11:41:48 +12:00
Robert O'Callahan
e8c9f1c8a5 Bug 629866. Part 2: Make MarkLeafLayersHidden actually hide layers that aren't in the dirty region. Don't consider hidden layers when deciding whether double-buffering is needed. r=cjones 2011-05-17 11:41:39 +12:00
Siarhei Siamashka
9b7557a335 Bug 656782 - Runtime CPU features detection does not work for pixman in Android [r=jmuizelaar]
Pixman upgrade from bug 640250 resulted in ARM cpu features
not being detected properly in Android. As a result, NEON
optimizations were not used at all.
2011-05-12 15:26:00 -04:00
Matt Brubeck
d4862ec52d Bug 598736 - Use bilinear image scaling when NEON is available [r=jrmuizel] 2011-04-08 10:15:37 -07:00
Nicholas Nethercote
e942f8f50a Bug 657327 - about:memory: merge the "mapped" and "heap used" trees, and make the resulting tree flatter. r=sdwilsh,Jesse, sr=roc. 2011-05-22 19:49:56 -07:00
Matt Woodrow
d9c40bb751 Bug 606855 - Re-enable checking of GLX extensions. r=bjacob 2011-05-23 11:04:22 +12:00
Bas Schouten
4bfbb86634 Bug 657141: Avoid excessive clipping by only popping to the common ancestor. r=jrmuizel 2011-05-17 21:27:05 +02:00
Florian Hänel
23532cf3fb Bug 643793 - Convert OpenGL scissor rects to world space in ContainerLayerOGL. r=joe 2011-05-14 12:11:37 +12:00
Jim Mathies
87cc72d4a4 Bug 633282 - Add ToNearestPixels to nsRegion. r=roc. 2011-05-13 11:40:46 -05:00
Jim Mathies
4a2e304d12 Bug 633282 - Add support for -moz-appearance: -moz-win-exclude-glass. r=roc. 2011-05-13 11:40:46 -05:00
Oleg Romashin
e221d29887 Bug 656167 - Temorarily disable or back out fixed layers. r=jones.chris.g 2011-05-12 09:49:33 -07:00
Matt Woodrow
dc7c7a8cc1 Bug 649417 - Check if BasicShadowableImageLayer has a current image before attempting to use it. r=cjones 2011-05-13 12:38:44 +12:00