Commit Graph

118 Commits

Author SHA1 Message Date
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
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
Timothy Nikkel
5fd981457f Bug 694213. Make various display items return bounds in the correct coordinate space. r=roc 2011-10-21 12:45:32 -05:00
Timothy Nikkel
f92f70e856 Backout 18f70ede04b0 (bug 694213). 2011-10-20 20:59:47 -05:00
Timothy Nikkel
b6640cbaf7 Bug 694213. Make various display items return bounds in the correct coordinate space. r=roc 2011-10-20 12:44:28 -05:00
Timothy Nikkel
677526acd7 Backout 8db8c9ce92c5 (bug 694213). 2011-10-18 00:41:10 -05:00
Timothy Nikkel
3b73722e00 Bug 694213. Make various display items return bounds in the correct coordinate space. r=roc 2011-10-17 19:56:03 -05: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
Mounir Lamouri
57fe0a2e82 Bug 669310 - Fixes various includes and forward declarations. f=Ms2ger r=jst 2011-07-20 12:18:54 -07:00
Ehsan Akhgari
8aa36b3b5c Revert to changeset e0ce7821fce1 because the latest push broke all of the builds DONTBUILD 2011-07-19 16:25:54 -04:00
Mounir Lamouri
b6d655dff0 Bug 669310 - Fixes various includes and forward declarations. f=Ms2ger r=jst 2011-07-19 11:22:43 -07:00
Mounir Lamouri
58e2fd59fd Backed out bug 669310, bug 668013, bug 667887 and bug 669886 due to build bustage. 2011-07-19 10:49:48 -07:00
Mounir Lamouri
8ae6e80c16 Bug 669310 - Fixes various includes and forward declarations. f=Ms2ger r=jst 2011-07-18 17:05:10 -07:00
Boris Zbarsky
b5bc3817ce Bug 598833 part 7. Make IntrinsicState protected. r=smaug 2011-05-31 21:46:57 -04:00
Boris Zbarsky
f137314503 Bug 598833 part 1. Move IntrinsicState from nsIContent to Element. r=smaug 2011-05-31 21:46:56 -04:00
David Zbarsky
a0b813679f Bug 610305: decom nsEventStateManager r=smaug 2011-04-21 19:35:52 +02:00
Mounir Lamouri
2af4853be5 Backed out changeset c1a7c1bc1aeb due to busted build. 2011-04-20 22:26:06 +02:00
David Zbarsky
732897cc3f Bug 610305: decom nsEventStateManager r=smaug 2011-04-20 21:42:33 +02:00
Zack Weinberg
1628ea1551 Bug 266236 part 9: Move nsBoundingMetrics to its own header and prune inclusions of nsRenderingContext.h.
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
rename : gfx/src/nsThebesRenderingContext.h => gfx/src/nsRenderingContext.h
extra : rebase_source : 92660748436f03475e011184e2828f1db0ad63e0
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
Mounir Lamouri
06426cc202 Bug 595036 (2/2) - Introduce nsEventStates class to represent event states. r+a=bz 2010-10-20 13:26:32 +02:00
L. David Baron
86a617e692 Change callers to use new nsIFrame overflow APIs. (Bug 542595, patch 20) r=roc a2.0=blocking2.0:beta8 2010-10-06 21:25:47 -07:00
Mounir Lamouri
80505c82b2 Bug 557087 (3/6) - Make layout aware of the new disabled state rule. r=dbaron a=sicking
--HG--
extra : rebase_source : 9e7d0a515c3f1bcacdcccc906c611849654ab484
2010-09-19 03:43:15 +02: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
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
Boris Zbarsky
b2fa9fd079 Bug 562688 part 12. Eliminate eELEMENT usage in the rest of layout except layout/style. r=dbaron 2010-04-30 09:12:06 -04:00
Felipe Gomes
e4fb76d330 Bug 489127 - nodesFromRect required for better usability on mobile devices (part 1+2) [r=roc] 2010-04-07 20:31:26 -04:00
Ehren Metcalfe
a791e19cc4 Bug 556446: Remove dead code in layout. r=roc,bz 2010-04-03 07:36:19 -04: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
Boris Zbarsky
5132d64872 Bug 525608 part 3. Change all style set consumers that ask for a pseudo style context to indicate what they're actually asking for (pseudo-element, anonymous box, or xul tree thing). r=dbaron 2009-12-11 02:37:40 -05:00
Boris Zbarsky
8202b90f61 Backing out bug 525608 and bug 525952 2009-12-10 18:28:08 -08:00
Boris Zbarsky
6eb3c28de7 Bug 525608 part 3. Change all style set consumers that ask for a pseudo style context to indicate what they're actually asking for (pseudo-element, anonymous box, or xul tree thing). r=dbaron 2009-12-10 14:36:05 -08: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
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
Michael Ventnor
1afd316abf Bug 476738. Implement 'inset' box-shadows. r+sr=roc,r=dbaron 2009-02-10 21:45:13 +13:00
Michael Ventnor
58cd642235 Bug 476308. Box-shadows for buttons should not capture events. r+sr=roc 2009-02-05 21:22:02 +13:00
Michael Ventnor
c3c3f9d0be Bug 475197. -moz-box-shadow needs to be hooked up to buttons and fieldsets since they have custom background painting code. r+sr=roc 2009-01-28 22:28:14 +13:00
Zack Weinberg
97bef90839 Bug 456152 - slight API cleanup for nsCSSRendering::PaintBackground; r+sr=roc 2008-09-24 06:07:22 +02:00
Zack Weinberg
300f48fbd4 Bug 446498 – use new border rendering for focus rectangles, and strip dead code. r+sr=vlad 2008-08-06 12:33:18 +02:00
Andrew Smith ext:(%2C%20Rob%20Arnold%20%3Ctellrob%40gmail.com%3E%2C%20L.%20David%20Baron%20%3Cdbaron%40dbaron.org%3E)
7d3343e0fa Implement css3 border-image property. (Bug 378217) r=vlad,dbaron,robarnold 2008-07-16 23:30:25 -07:00
L. David Baron
86c186dbd8 Backed out changeset 9b0b2391485c due to linker errors related to nsStyleStructInlines.h not being included enough. 2008-07-16 22:59:14 -07:00
Andrew Smith ext:(%2C%20Rob%20Arnold%20%3Ctellrob%40gmail.com%3E%2C%20L.%20David%20Baron%20%3Cdbaron%40dbaron.org%3E)
269c2d355a Implement css3 border-image property. (Bug 378217) r=vlad,dbaron,robarnold 2008-07-16 22:18:38 -07:00
roc+@cs.cmu.edu
f8b25558e4 Bug 407889. Reduce dynamic memory allocations during event handling by having nested invocations of HitTest share a single buffer for reordering display items; this buffer is an nsAutoTArray so it's mostly stack-allocated. r+sr=mats 2008-01-03 18:08:29 -08:00
joshmoz@gmail.com
37c5a30cdd clean up unused methods and virualized methods in nsButtonFrameRenderer. Patch by Rob Arnold. b=315347 r/sr=roc 2007-05-23 13:32:56 -07:00
bzbarsky@mit.edu
eeaa1a101b Rename nsIFrame::GetPresContext to nsIFrame::PresContext. Bug 376042, patch byTaras Glek <tglek@mozilla.com>, rs=roc. 2007-03-30 14:11:41 -07:00
joshmoz%gmail.com
ad35697de6 extend nsITheme to support native focus drawing. b=370549 r=dbaron sr=roc 2007-02-16 01:53:43 +00:00
sharparrow1%yahoo.com
db47d007bc Bug 370303: Cleanup in layout/forms. r+sr=roc. 2007-02-15 10:58:31 +00:00
timeless%mozdev.org
4e651390ef Bug 355300 There should be only one nsGkAtoms creature
r=dbaron
2006-12-26 17:47:52 +00:00