Jeff Muizelaar
9c940cc534
Bug 662649. DrawFPS: Make the conversion loop easier to follow. r=joe
2011-06-22 14:53:11 -04:00
Jeff Muizelaar
d2cc193c0b
Bug 662649. DrawFPS: Add a comment about why DrawFPS is a little weird.
2011-06-22 14:49:31 -04:00
Jeff Muizelaar
f15d555c8f
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
e70b966d11
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
5db1ac6018
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
6905c5d4c5
Merge the last green changeset of mozilla-inbound to mozilla-central
2011-06-22 19:17:32 -04:00
Mats Palmgren
0efe54035d
Bug 312156 - Make gfxFont::HasCharacter work for Pango fonts. r=roc
2011-06-22 20:11:47 +02:00
Robert O'Callahan
ae6647d4d2
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
70312fec05
Bug 637852. Part 25: Add nsSize ScaleToNearestPixels. r=tnikkel
2011-06-23 00:11:28 +12:00
Robert O'Callahan
779fca303f
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
0c48fabd49
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
9c74d507a9
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
7f64e9bccf
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
0cc6be313b
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
64c5e295e0
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
0041df680e
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
fcf2510a5d
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
3cbadba941
Bug 637852. Part 4: Add nsRegion::ScaleInverseRoundOut and nsRegion::ScaleToOutsidePixels APIs. r=joe
2011-06-23 00:11:27 +12:00
Robert O'Callahan
c58a20de4e
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
06e6b72a58
Bug 637852. Part 2: Add BaseRect::ScaleInverseRoundOut API. r=joe
2011-06-23 00:11:27 +12:00
Robert O'Callahan
2685eb6583
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
006b4e90d7
Merge the last green changeset of mozilla-inbound to mozilla-central
2011-06-22 15:50:44 -04:00
Jonathan Kew
8cbce74327
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
f3ed02ab79
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
cf03bf9786
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
3eb91dc88f
Bug 572571 - Abort Core Animation rendering for windows that are too large. r=josh
2010-08-01 19:15:25 -04:00
Mounir Lamouri
3be4c39ecb
Merging mozilla-inbound with mozilla-central.
2011-06-18 18:29:10 +02:00
Jacek Caban
7144aad2b8
Bug 663784 - Don't use using statement before includes r=masayuki
2011-06-17 14:55:51 +02:00
Jonathan Kew
4e89d25c0d
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
3c21113890
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
c8157ac7e6
Bug 664311 - Remove WinCE code from gfx/; r=jmuizelaar
2011-06-18 11:04:30 +02:00
Benoit Jacob
4285792db3
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
8dbe82a76f
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
dea57d8792
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
f9cb8da613
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
a7411a0c9d
bug 467669 - pt 5 - expose WOFF metadata (if present) for downloaded fonts. r=roc
2011-06-16 07:31:37 +01:00
Jonathan Kew
a8e92df002
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
b0ae7172d2
bug 467669 - pt 4 - expose additional attributes for downloaded fonts. r=roc
2011-06-16 07:31:37 +01:00
Jonathan Kew
0bc82a4ba2
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
7292ce81d9
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
13d84f740f
Backout bug 467669 and bug 660088
2011-06-15 16:52:48 -04:00
Jonathan Kew
84a84cc118
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
be3ae9b1a0
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
ba1202c246
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
0696341392
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
d5411cefc7
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
eacb2d87b0
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
68973a00a6
Bug 663784 - gfxWindowsPlatform.cpp doesn't compile without D2D r=masayuki
2011-06-15 12:22:57 +02:00
Neil Rashbrook
747f874cd4
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
a88f0715f0
merge m-c and b-s
2011-06-13 09:09:43 -04:00