Commit Graph

509 Commits

Author SHA1 Message Date
Robert O'Callahan
ee8caeaedc Bug 591718. Make nsLayoutUtils::GetAllInFlowRectsUnion support taking transforms into account when converting coordinates. r=mats 2011-12-28 16:24:29 +13:00
Robert O'Callahan
43a174c5c8 Bug 591718. Part 1: rename some poorly-named methods, rework global-transform methods to avoid computing bounding-boxes more than once when there are are multiple transformed ancestors, make sure nsIFrame::GetTransformMatrix can stop at any desired ancestor. r=mats 2011-12-28 16:24:18 +13:00
L. David Baron
e1d5da065e Fix font size inflation assertion when XUL is in native-anonymous content by making XUL always be a container for font size inflation. (Bug 708036) r=bzbarsky 2011-12-27 10:02:44 -05:00
Phil Ringnalda
1109394b97 Back out dc7c7734ec7c, f793f9cfa72c, 10ea92a6a850 (bug 591718) for Android b-c orange in mobile/chrome/tests/browser_scrollbar.js 2011-12-27 20:34:08 -08:00
Robert O'Callahan
771dc8b0e9 Bug 591718. Make nsLayoutUtils::GetAllInFlowRectsUnion support taking transforms into account when converting coordinates. r=mats 2011-12-28 16:24:29 +13:00
Robert O'Callahan
a9b6ce2e9e Bug 591718. Part 1: rename some poorly-named methods, rework global-transform methods to avoid computing bounding-boxes more than once when there are are multiple transformed ancestors, make sure nsIFrame::GetTransformMatrix can stop at any desired ancestor. r=mats 2011-12-28 16:24:18 +13:00
Nicholas Nethercote
c8d93dc02b Bug 711908 - Fix a bunch of GCC warnings in layout. r=dbaron. 2011-12-19 19:46:39 -08:00
Scott Johnson
a647b786d7 Bug 707855 - Clamp container size to device width to make font inflation less likely to cause problems on small screens. [r=dbaron] 2011-12-20 16:34:54 -06:00
Scott Johnson
72b95319b5 Backout changeset 602d2761e409. 2011-12-20 00:02:01 -06:00
Scott Johnson
b9cc184427 Bug 707855 - Clamp container size to device width to make font inflation less likely to cause problems on small screens. [r=dbaron] 2011-12-19 23:11:43 -06:00
Scott Johnson
fe7839e277 Backed out ab701cac6af8. 2011-12-19 23:11:09 -06:00
Scott Johnson
2aa2e980bf Bug 707855 - Clamp container size to device width to make font inflation less likely to cause problems on small screens. [r=dbaron] 2011-12-19 22:25:16 -06:00
Robert O'Callahan
d411c98263 Bug 672013. Drawing an SVG image to a canvas need not clear its origin-clean flag. r=dholbert,sr=bzbarsky 2011-12-19 10:57:41 +13:00
Matt Brubeck
e08921e659 Back out bug 710521, bug 672013, bug 702739 because of Mac reftest failures 2011-12-18 08:15:09 -08:00
Robert O'Callahan
f14461333b Bug 672013. Drawing an SVG image to a canvas need not clear its origin-clean flag. r=dholbert,sr=bzbarsky 2011-12-18 21:47:20 +13:00
Ms2ger
dff333b2a0 Bug 704088 - Pass dom::Element to nsLayoutUtils::SurfaceFromElement; r=bz 2011-12-03 22:50:16 +01:00
Nicholas Nethercote
c0681f567c Bug 698968 - Add mallocSizeOf functions and start using them. r=jlebar,bhackett,jfkthame, sr=bz. 2011-11-27 19:03:14 -08:00
L. David Baron
cdb3e251bb Apply font size inflation to list bullets. (Bug 627842, patch 13) r=roc
Note that this doesn't do anything about the indentation of the list, so
for large inflation there may end up being overlap as a result.
2011-11-23 18:48:23 -08:00
L. David Baron
31b2fc485d Apply font size inflation to text. (Bug 627842, patch 9) r=roc
This applies the font size inflation to reflow and painting of text
frames.  However, it does not (by design) apply to intrinsic width
computation, since the inflation is itself a function of the containers
width, which can depend on the intrinsic width.
2011-11-23 18:48:23 -08:00
L. David Baron
db344ddc00 Add inflation parameter to nsLayoutUtils::GetFontMetricsFor* methods. (Bug 627842, patch 6) r=roc 2011-11-23 18:48:23 -08:00
L. David Baron
3235995ea2 Implement computation of font size inflation for improved readibility of text on mobile devices. (Bug 627842, patch 4) r=roc
This implements computation of the font size inflation factor for a
given frame.  Since Fennec does layout using a fake viewport whose width
represents a typical viewport width on the desktop and then allows users
to pan and zoom, fonts are not always readable even when zoomed.  The
goal of this font size inflation is to ensure that when a block of text
is zoomed to fill the width of the device, the fonts are large enough to
read.  We do this by increasing the font sizes in the page.  Since this
increase is a function of the width of the text's container, the
inflation must be performed (in later patches in this series) after
style data computation and after intrinsic width computation.

The font size inflation factor does not vary *within* a block.

Since sync uses a whitelist (the services.sync.prefs.sync.* prefs) for
preferences (i.e., preferences are not synced by default), this patch
does not make any changes relating to sync, since we do not want the
inflation preferences synced across devices (since preferred settings
are likely to be device-specific).
2011-11-23 18:48:23 -08:00
Neil Deakin
025a0b680d Bug 703260, part 1, remove view from eventstatemanager and presshell event handling, r=smaug,sr=roc 2011-11-21 12:53:20 -05:00
Matt Woodrow
a894703f8b Bug 700240 - Make display list debugging independent of DEBUG. r=khuey,roc 2011-11-17 16:44:16 +13:00
Phil Ringnalda
ca35acf2cc Backout changesets c9abc8ef4626, d62512892555, 69f89ee5d08f, c511af7d8f58, 6a6a560a1492, ac0ec1183d19, 46669afabd15, 74f32abaa8c0, f197554cf989, 0a2405eb5b90, b48954598d7d, e0a82577259c, 0235d1541e58, 450f2557d3a2, e24d196602bf, 03c2ea0eeba3, 7aca4ef8e538, 11ec362e780b, 4b92a3b96446 (bug 627842) for Windows crashtest assertions and Android reftest failures 2011-11-14 22:12:31 -08:00
L. David Baron
a8a71a236e Apply font size inflation to list bullets. (Bug 627842, patch 13) r=roc
Note that this doesn't do anything about the indentation of the list, so
for large inflation there may end up being overlap as a result.
2011-11-15 17:02:01 +13:00
L. David Baron
16729c8883 Apply font size inflation to text. (Bug 627842, patch 9) r=roc
This applies the font size inflation to reflow and painting of text
frames.  However, it does not (by design) apply to intrinsic width
computation, since the inflation is itself a function of the containers
width, which can depend on the intrinsic width.
2011-11-15 17:02:01 +13:00
L. David Baron
e9317ce2e7 Add inflation parameter to nsLayoutUtils::GetFontMetricsFor* methods. (Bug 627842, patch 6) r=roc 2011-11-15 17:02:00 +13:00
L. David Baron
aef31f1e3c Implement computation of font size inflation for improved readibility of text on mobile devices. (Bug 627842, patch 4) r=roc
This implements computation of the font size inflation factor for a
given frame.  Since Fennec does layout using a fake viewport whose width
represents a typical viewport width on the desktop and then allows users
to pan and zoom, fonts are not always readable even when zoomed.  The
goal of this font size inflation is to ensure that when a block of text
is zoomed to fill the width of the device, the fonts are large enough to
read.  We do this by increasing the font sizes in the page.  Since this
increase is a function of the width of the text's container, the
inflation must be performed (in later patches in this series) after
style data computation and after intrinsic width computation.

The font size inflation factor does not vary *within* a block.

Since sync uses a whitelist (the services.sync.prefs.sync.* prefs) for
preferences (i.e., preferences are not synced by default), this patch
does not make any changes relating to sync, since we do not want the
inflation preferences synced across devices (since preferred settings
are likely to be device-specific).
2011-11-15 17:02:00 +13:00
Scott Johnson
8d3b6ecccd Bug 666446, Part 3/10 - Create hook functions in nsLayoutUtils to coalesce some of the new code for frame-like objects and avoid code duplication. [r=roc] 2011-11-09 13:39:16 -08:00
Justin Lebar
fd2f694139 Back out bug 666446 due to Talos regression. 2011-11-02 20:11:01 -04:00
Scott Johnson
9a33ca1002 Bug 666446, Part 3/10 - Create hook functions in nsLayoutUtils to coalesce some of the new code for frame-like objects and avoid code duplication. [r=roc] 2011-11-01 11:06:53 -04:00
Jonathan Kew
5c7c2a3b4e bug 695639 - use the proper iterator to convert offsets into the textrun in GetFontFacesForText. r=roc 2011-10-21 08:13:51 +01:00
Oleg Romashin
e676c8bf84 Bug 693930 - Fennec keeps viewport ThebesLayers alive for background tabs. r=roc 2011-10-18 15:28:20 -04:00
Ehsan Akhgari
478ad1a412 Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Jeff Walden
7d613942b0 Bug 693469 - Implement mozilla::ArrayLength and mozilla::ArrayEnd, and replace uses of NS_ARRAY_LENGTH whenever possible. (Exceptions: assigning to static initializers, use in static assertions, as template parameters, etc. These will go away when the relevant compilers have C++11 constexpr support.) r=cjones 2011-10-10 22:50:08 -07:00
Jonathan Kew
8ea4547259 bug 671297 - add memory reporting for textRuns. r=roc,jlebar 2011-10-14 08:06:35 +01:00
Jeff Walden
c5e5f873d1 Back out everything since 5435ee09cf7b. Tinderbox compilers hate me. r=epic-fail 2011-10-12 12:21:53 -07:00
Jeff Walden
946f2ae0e3 Bug 639469 - Implement mozilla::ArrayLength and mozilla::ArrayEnd, and replace uses of NS_ARRAY_LENGTH whenever possible. r=cjones 2011-10-10 22:50:08 -07:00
Scott Johnson
007805b37d Backout cset a476b7988f63 from bug 666446 while we sort out regressions 2011-10-07 00:25:48 -07:00
Scott Johnson
639273b6cc Bug 666446, Part 3/18 - Create hook functions in nsLayoutUtils to coalesce some of the new code for frame-like objects and avoid code duplication. [r=roc] 2011-10-03 13:39:05 -07:00
Ehsan Akhgari
de3e3fd8ee Bug 10209 - Part 6: Implement the CSS "containing block" concept correctly as a binary relation, as opposed to a unary relation; r=bzbarsky 2011-05-12 00:04:30 -04:00
Michael Wu
0fe7772ece Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
Boris Zbarsky
88ac1e818d Bug 444641 part 4. Remove the data: special-casing for images in canvas, since we now set the right principal for data: images. r=roc 2011-09-20 17:00:42 -04:00
Boris Zbarsky
d8fa13275b Bug 685518 part 1. Look at the image CORS mode for drawImage into a canvas 2d context. r=roc 2011-09-09 17:58:35 -04:00
Robert O'Callahan
3ebb8ae6a6 Bug 685404. Make callers of nsDisplayList::HitTest use nsAutoTArrays to reduce allocations. r=tnikkel 2011-09-08 17:29:54 -04:00
Matt Woodrow
ad6e83d2d4 Bug 681858 - Improve performance of gfx3DMatrix multiplication by reverting to 2d operations where possible. r=derf 2011-08-27 12:07:05 +12:00
Mats Palmgren
4e2a044a66 Bug 653649 - New way of getting child lists from frames. (part 4/5) r=roc
Remove the nsIAtom* child list names and use child list ID enum instead.
2011-08-24 22:54:30 +02:00
Mats Palmgren
1bfd788e19 Bug 653649 - New way of getting child lists from frames. (part 3/5) r=roc
Update GetAdditionalChildListName consumers to use the new
child list iterator instead.
2011-08-24 22:54:29 +02:00
L. David Baron
8edbaa2d41 Fix nsLayoutUtils::ComputeSizeWithIntrinsicDimensions to produce correct results when one of the tentative height/width (i.e., the intrinsic height/width) is 0. (Bug 677091) r=roc
When either the intrinsic width or the intrinsic height is 0, the
element does not have an intrinsic ratio, and thus the table that
ComputeAutoSizeWithIntrinsicDimensions is implementing technically
doesn't apply.  However, it can quite straightforwardly produce the
correct results despite that, if we correctly apply the
min/max-width/height properties.
2011-08-17 17:54:59 -07:00
L. David Baron
d6fd817fc7 Replace all uses of nsLayoutUtils::SetFontFromStyle with GetFontMetricsForFrame or GetFontMetricsForStyleContext and remove SetFontFromStyle. (Bug 678671, patch 2) r=roc
There was nothing wrong with SetFontFromStyle, except that it's just one
more API to think about (and one more API to audit and modify for font
inflation work to happen in bug 627842).
2011-08-14 10:08:04 -07:00