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

49 Коммитов

Автор SHA1 Сообщение Дата
Robert O'Callahan 7c34e38876 Bug 733607. Restructure logic to compute snapped bounds of display items in layer coordinates. Moves responsibility for computing snapped bounds from within the display items to callers of GetBounds/GetOpaqueRegion. r=tnikkel
Previously we snapped the results of nsDisplayItem::GetBounds and
nsDisplayItem::GetOpaqueRegion internally. By tracking which display items were
inside transforms, we disabled snapping quite conservatively whenever an ancestor
had a transform, which is undesirable.

With this patch, we don't snap inside GetBounds or GetOpaqueRegion, but just return
a boolean flag indicating whether the item will draw with snapping or not. This flag
is conservative so that "true" means we will snap (if the graphics context has a transform
that allows snapping), but "false" means we might or might not snap (so it's always safe
to return false).

FrameLayerBuilder takes over responsibility for snapping item bounds. When it converts
display item bounds to layer pixel coordinates, it checks the snap flag returned from
the display item and checks whether the transform when we draw into the layer will be
a known scale (the ContainerParameters scale factors) plus integer translation. If both
are true, we snap the item bounds when converting to layer pixel coordinates. With
this approach, we can snap item bounds even when the items have ancestors with active
transforms.
2012-04-10 23:24:18 +12:00
Jonathan Watt f36738d918 Bug 416581, part 1 - Move mLanguage from nsStyleVisibility to nsStyleFont. r=dbaron. 2012-01-24 13:09:55 +00:00
Frédéric Wang 630d4a18be Mirroring of operators for arabic math (Bug 208309) - part 1. r=karlt 2011-12-21 17:22:00 -05:00
Boris Zbarsky 19437ca0c9 Bug 667576. Handle visited colors correctly in MathML. r=dbaron 2011-10-29 03:04:20 -04:00
Ehsan Akhgari 92064e6d3f 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
Michael Wu d2b70213ac Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Masayuki Nakano 6c3d3da0c3 Bug 669028 part.13 layout should use mozilla::LookAndFeel rather than nsILookAndFeel r=roc 2011-09-09 11:27:13 +09:00
L. David Baron b3f49b92ba Remove the multiple-parameter versions of nsRenderingContext::SetFont. (Bug 678671, patch 5) r=roc
This changes the only remaining callers (in nsMathMLChar) to pass the
correct language, which they were not previously doing, which should
improve the correctness of font selection and also reduce the number of
unique font metrics objects requested (which helps nsFontCache
effectiveness).  Those callers, however, remain the odd font users
within all of layout.
2011-08-14 10:08:04 -07:00
Frédéric Wang 8b6c701ead support drawing non-BMP characters for stretchy operators (bug 407439). r=karlt
--HG--
extra : rebase_source : 8a0351a8a0b45de4e783050608e513582b8a345c
2011-06-22 11:49:11 -04:00
Frédéric Wang 9188cd4d18 Always start the lookup of largeop variants at size=1 (bug 584332). r=karlt
--HG--
extra : rebase_source : 05bc57d2c0b0989f887e42d0d52a7a993e27972a
2011-06-22 11:48:56 -04:00
Masayuki Nakano 29305dc449 Bug 663041 layout should use mozilla::Preferences r=roc 2011-06-12 11:30:16 +09:00
Dominic Fandrey 968bf5196a Bug 645398 - Substitute PR_(MAX|MIN|ABS|ROUNDUP) macro calls; r=roc 2011-06-02 14:56:50 +02:00
Ed Morley 91238e76b1 Bug 316661 - Part A - Remove null-checks before delete. r=bsmedberg 2011-05-17 16:01:36 +02:00
Zack Weinberg 8648dcc368 Bug 651017, part 1: minimize inclusion of ns*DeviceContext.h; move the printing error codes to nsIDeviceContextSpec.h; os2 small widget cleanup.
--HG--
extra : rebase_source : 5b7cebe68f71a760463e3522b159c7cde8a72f5e
2011-04-16 18:22:41 -07:00
Zack Weinberg 5731d401c8 Bug 174055, part 5: prune unused and unimplemented methods. 2011-04-07 20:07:27 -07:00
Zack Weinberg 9f143f420f Bug 174055, part 1: minimize inclusion of nsI(Thebes)FontMetrics.h. 2011-04-07 18:04:41 -07:00
Zack Weinberg 642f35826e Bug 648197 (1/2): remove the #ifdef ALERT_MISSING_FONTS blocks in nsMathMLChar.cpp. 2011-04-07 14:47:04 -07:00
Zack Weinberg f8eccd9ec7 Bug 266236 part 7: Simplify calling convention of SetClipRect and SetClipRegion.
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
rename : gfx/src/nsThebesRenderingContext.h => gfx/src/nsRenderingContext.h
extra : rebase_source : b1c68e23a4fa67cdc09b151ad39d7560cdd8baf7
2011-04-07 18:04:40 -07:00
Zack Weinberg ab24450ef1 Bug 266236 part 6: Change out-parameters to return values and remove a bunch of default parameters that were never called with non-default values.
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
rename : gfx/src/nsThebesRenderingContext.h => gfx/src/nsRenderingContext.h
extra : rebase_source : 0511852e51c2ad4d4833d6f8f2f61d46130a7151
2011-04-07 18:04:40 -07:00
Zack Weinberg 4e540ce52f Bug 266236 part 4: Aggressively prune unused methods and dead #ifdefs from nsRenderingContext.
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
rename : gfx/src/nsThebesRenderingContext.h => gfx/src/nsRenderingContext.h
extra : rebase_source : b2911406bbe1b5995d1a501c59e02b5fffefa390
2011-04-07 18:04:40 -07:00
Jan Küchler c510bc3046 Bug 266236 part 3: Mechanical rename of nsIRenderingContext and nsThebesRenderingContext to nsRenderingContext. Mechanical substitution of nsRefPtr<nsRenderingContext> for nsCOMPtr<nsRenderingContext>.
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
extra : rebase_source : 34884bfcafd885feaf73300bc7246cd192062a48
2011-04-07 18:04:40 -07:00
Jan Küchler ebb2f0c7ec Bug 266236 part 1: Preliminary API cleanup on nsIRenderingContext.
--HG--
extra : rebase_source : a21ffad484f47103e403b8316eae5fdfd815c2cb
2011-04-07 18:04:39 -07:00
Frédéric Wang e14021d292 b=605605 Uninitialised value used in nsMathMLChar r=karlt
--HG--
extra : transplant_source : _G%B6%C6%C6q%C0a%F0f-%CD%AF%FB%FE%F0%BAYc%D5
2011-03-25 16:38:59 +13:00
Robert O'Callahan f38f22f331 Bug 602757. Part 5: Change HasText to GetComponentAlphaBounds. r=tnikkel,sr=dbaron,a=blocking 2011-01-03 14:48:09 +13:00
Matt Woodrow 8a60164429 Bug 594983. Look inside display sublists to determine whether there is text for the layer. r=roc,a=blocking 2010-10-11 13:58:20 +13:00
Robert O'Callahan 7be62af7f1 Bug 584282. Use nsDisplayItem::ToReferenceFrame() instead of calling nsDisplayListBuilder::ToReferenceFrame, wherever possible. r=tnikkel,a=dbaron
--HG--
extra : rebase_source : 730ba8640cb37bd8484ff069b5d6fd46d9bc3e84
2010-08-13 22:01:58 +12:00
Robert O'Callahan 33a0aec926 Bug 584282. Add nsDisplayItem::mToReferenceFrame and initialize it in the constructor. r=tnikkel,a=dbaron
--HG--
extra : rebase_source : 496cbde7c495eb8872c3d0ffc0ca4c57c2a6a777
2010-08-13 22:01:13 +12:00
Frédéric Wang 2534d3f9fc Bug 414277 - scale stretchy operators when there is no glyph of suitable size. r=karlt a=dbaron
--HG--
extra : rebase_source : 325e318cbb27537229c9c14015133ba9222f4d29
2010-08-20 15:44:07 +12:00
Frédéric Wang b40094b647 Bug 524275 - Make nsStretchDirection available for any operators. r=karlt a=dbaron
--HG--
extra : rebase_source : 0df9e11112d215ce4158574622e1b67faf668b08
2009-11-21 22:11:05 +01:00
Robert O'Callahan 3133bff6c6 Bug 537890. Part 10: Fix nsPresContext and nsIDeviceContext unit-conversion methods to be explicit about using CSS logical units instead of physical units. r=dbaron 2010-08-13 21:58:04 +12:00
Michael Ventnor 56ba116210 Bug 564991. Part 3: Create unique nsDisplayItem types for every single display item. r=tnikkel 2010-07-16 09:07:49 +12:00
Michael Kohler 10548f19c5 Bug 506041 - Correct misspellings in source code (Patch 3)
r=timeless

--HG--
extra : rebase_source : 1917c999a5865676ffb7ec3c2834c3e091bb64dc
2010-07-07 15:33:52 +02:00
Mitchell Field 0fd15d94da Bug 564950 - Make more use of mozilla::services, r=surkov, jst, neil, smontagu, roc, joshmoz, gavin, shaver 2010-05-14 18:24:41 +09:00
Michael Kohler 6c0f59f4a6 Bug 506041 Part 2: Correct misspellings in source code
r=timeless
2010-05-13 14:19:50 +02:00
Justin Dolske e4b6d4e7a3 Bug 563114 - Remove nsINonBlockingAlertService. r=karlt, r=bsmedberg, sr=roc 2010-05-04 17:41:07 -07:00
timeless@mozdev.org e11069426e Bug 562420 - unused variable border in nsDisplayMathMLCharDebug::Paint, r=karlt 2010-04-28 12:36:00 -07:00
Mitchell Field f544d71a9d Bug 560095 - Use mozilla::services::GetObserverService(). r=biesi,dveditz,gavin,josh,jst,mrbkap,roc,sdwilsh,shaver,sicking,smontagu,surkov 2010-04-29 18:59:13 +02:00
L. David Baron e4ae9159cc Use the appropriate color based on visitedness for 'outline-color'. (Bug 147777) r=zweinberg 2010-04-02 18:58:26 -07:00
L. David Baron 712030c86e Use the appropriate color based on visitedness for nsCSSRendering::PaintBorder users of the 'border-*-color' properties. (Bug 147777) r=zweinberg 2010-04-02 18:58:26 -07:00
L. David Baron 109a546aaa Make PaintBackgroundWithSC and related methods operate on nsStyleContext* rather than const nsStyleBackground*. (Bug 147777) r=zweinberg 2010-04-02 18:58:26 -07:00
Jonathan Kew 365fbafa0d Bug 524107 - part 1 - pass original value of 'lang' to gfx text code rather than only a 'langGroup' value, to allow language-specific font rendering. r=roc sr=mats 2010-02-24 09:57:44 -08:00
Frédéric Wang cfe6666e8d b=536438 Fix creation of keys in GetFontExtensionPref r=karlt 2010-02-18 13:51:33 +13:00
Ehren Metcalfe f51debd939 b=536438 add missing breaks to switch statement r=fred.wang 2010-02-18 13:49:56 +13:00
Daniel Holbert 1ac2adcf94 bug 522779: use nsTArray::Contains() instead of checking nsTArray::IndexOf() against various sentinel values, in three places in layout. r=dbaron 2009-10-16 15:49:30 -07:00
Robert O'Callahan c2f7a1e950 Bug 513082. Instead of passing aDirtyRect to nsDisplayItem::Paint, have nsDisplayList::OptimizeVisibility (renamed to ComputeVisibility) compute the intersection of the visible region with the bounds of each display item and store the result in the item's mVisibleRect. This lets us do less work to paint display items which have a small intersection with the visible region but a large intersection with the bounding-box of the visible region. r=dbaron
--HG--
extra : rebase_source : 76db4b87ef9e5a6e9de7677edc08c26e2cbc462e
2009-09-07 12:35:14 +12:00
Mats Palmgren dea07412a1 Replace PR_MIN/PR_MAX with NS_MIN/NS_MAX. b=512106 r=roc 2009-09-16 17:01:36 +02:00
Bobby Holley 0b8080d9b5 Bug 435296 - Sync decode handling for decode-on-draw. r=roc 2009-09-12 16:44:18 -06:00
Robert O'Callahan 5843f756df Bug 494667. Don't apply optimization to shrink drawn background area to exclude solid borders, if we're not going to draw those borders (e.g. in tables with collapsing borders). r+sr=dbaron,a=beltzner 2009-05-28 17:01:42 +12:00
Robert O'Callahan beac740c0f Bug 484766. Clean up MathML directory structure. r=karlt,ted
--HG--
extra : rebase_source : 1c88ebe3a41dee12a982442ad2e711aa287ed55f
2009-03-30 13:48:52 +13:00