Commit Graph

196 Commits

Author SHA1 Message Date
Zack Weinberg
c68dd8b7ce Bug 479156. Fix unit scale factors in border-image drawing. r+sr=roc
--HG--
extra : rebase_source : 06899c9162b0b30f890385fd4caa3f4cd22ecf48
2009-02-24 21:31:22 +13:00
L. David Baron
fa9a21c33d Implement multiple background layers, implement fallback background color, and make -moz-background-inline-policy no longer be part of the background shorthand. (Bug 322475) r+sr=roc,bzbarsky 2009-02-19 21:29:21 -08:00
Zack Weinberg
e4ff56e04c Bug 477732: fix scaling of border-image side tiles with 'repeat'. r+sr=roc 2009-02-20 16:33:30 +13:00
L. David Baron
2eb748571c Backed out changeset fde0b361f25e (bug 322475, main patch) due to Mac talos startup failures and hitting the NS_ABORT_IF_FALSE in SetupBackgroundClip, which may be related. 2009-02-19 13:51:46 -08:00
L. David Baron
d9ac02ed8c Implement multiple background layers, implement fallback background color, and make -moz-background-inline-policy no longer be part of the background shorthand. (Bug 322475) r+sr=roc,bzbarsky 2009-02-19 12:33:09 -08:00
L. David Baron
db9e9b7806 Construct all our image loaders when we create frames so that we can allow arbitrary numbers of image loaders per frame (for multiple background images). (Bug 322475) r+sr=bzbarsky 2009-02-19 11:03:28 -08:00
L. David Baron
a91aa25ab0 Back out all 8 changesets that I just landed (bugs 477959, 477961, 322475, 478899, 475215, 478156) again, because Talos Try server builds lie about which changesets they're testing. 2009-02-19 09:06:18 -08:00
L. David Baron
51ef1de194 Implement multiple background layers, implement fallback background color, and make -moz-background-inline-policy no longer be part of the background shorthand. (Bug 322475) r+sr=roc,bzbarsky 2009-02-19 07:29:28 -08:00
L. David Baron
a5c13ba6b5 Construct all our image loaders when we create frames so that we can allow arbitrary numbers of image loaders per frame (for multiple background images). (Bug 322475) r+sr=bzbarsky 2009-02-19 07:29:27 -08:00
L. David Baron
8b207bcc51 Revert (back out) the previous 11 changesets (bugs 477959, 477961, 477963, 477962, 322475, 478899, 475215, 478156), due to Mac talos orange with (as usual) no useful diagnostic. 2009-02-18 18:59:47 -08:00
L. David Baron
366992262c Implement multiple background layers, implement fallback background color, and make -moz-background-inline-policy no longer be part of the background shorthand. (Bug 322475) r+sr=roc,bzbarsky 2009-02-18 17:13:25 -08:00
L. David Baron
29c43121c7 Construct all our image loaders when we create frames so that we can allow arbitrary numbers of image loaders per frame (for multiple background images). (Bug 322475) r+sr=bzbarsky 2009-02-18 17:13:24 -08:00
Zack Weinberg
bea9955522 Bug 476557. Update view manager cache of page background color in PresShell::Paint, not nsCSSRendering::PaintBackground; permits a small API cleanup. r+sr=roc
--HG--
extra : rebase_source : dcf1475dd8b695eb18513e97ca35b08a4affd19f
2009-02-16 14:11:34 +13:00
Zack Weinberg
174bffdc75 Bug 455364. Use nsLayoutUtils::DrawImage helpers to draw border-images, fixing rounding issues. r+sr=roc
--HG--
extra : rebase_source : 6e65e6265d1e3c8b1f2c90af4b78535c31aa0551
2009-02-16 14:04:03 +13:00
Michael Ventnor
b480b09ba3 Bug 476738. Implement 'inset' box-shadows. r+sr=roc,r=dbaron 2009-02-10 21:45:13 +13:00
Bernd
bb7273a63c fix a pence post error in painting of dotted border collapse borders r/sr=roc bug 126540 2009-02-08 17:42:01 +01:00
Robert O'Callahan
c651fddc26 Backed out changeset a142df653655 2009-02-07 23:37:23 +13:00
Zack Weinberg
7529ae2887 Bug 455364. Make border-image drawing use nsLayoutUtils::DrawImage and friends so we get the right pixel-snapping behaviour. r+sr=roc 2009-02-07 21:35:54 +13:00
Daniel Holbert
2033e78825 Bug 472769: Use snapToPixels when redrawing dirty background rectangles, to fix painting error in widgets at fractional positions. r+sr=roc 2009-02-05 17:39:25 -08:00
Jim Mathies
269a1439a7 Bug 450322 - Fix broken windows animation in Vista Aero. r+sr=roc. 2009-02-04 21:05:48 -06:00
Zack Weinberg
60807b61c4 Bug 475548. Don't let the view manager's DefaultBackgroundColor be translucent. r+sr=roc
--HG--
extra : rebase_source : 1a8a5b29e8bc726affd4a97850e4c8f2c962ed1f
2009-01-30 20:07:30 +13:00
Michael Ventnor
c81d455553 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
5ec5e3b886 Bug 474201: always set the view manager's default background in nsCSSRendering::PaintBackground, use only the prescontext's default background in PresShell::Paint. r+sr=roc
--HG--
extra : rebase_source : 585e5e1803e98d25163fdcdf7f0aa758177e932c
2009-01-22 17:18:59 +13:00
Zack Weinberg
7da71decb2 Bug 473398. nsCSSRendering::PaintBackground should not try to fix up the canvas background color to be opaque. r+sr=roc
--HG--
extra : rebase_source : f2883c704bee9a4ba70c57598704ed7ba30628dc
2009-01-16 21:15:29 +13:00
Jeremy Lea
1800930122 Bug 448830. Make nsIntRect/nsIntMargin/nsIntSize/nsIntPoint different types from nsRect/nsMargin/nsSize/nsPoint different types for better compile-type unit checking. r+sr=roc
--HG--
extra : rebase_source : a331a9e49fbc5931f546919281fcca7f008ab615
2009-01-15 16:27:09 +13:00
Benjamin Smedberg
24e7cb1f78 Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports:
* we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID)
* eliminate all vestiges of refcounting, since frames aren't refcounted

Some frames (SVG frames in particular) still implement nsISupports-derived interfaces, for example nsISVGValue. There is a FrameIID for nsISVGValue that lets you go from a frame to the XPCOM interface, but you can't query back.

r+sr=roc

nsITextControlFrame didn't have an IID the first time around, but this wasn't a compile error because nsITextControlFrame::kFrameIID inherited from nsIFormControlFrame::kFrameIID. I've added a static analysis pass to verify the correct behavior, since I can't figure out a way to make the compiler do it.

--HG--
extra : rebase_source : 4894a2ca0278e2ab92f27459db77165f8348cf41
2009-01-12 14:20:59 -05:00
L. David Baron
f493486819 Address my own review comment: Restore IsTransparent() check, which should restore old behavior for background-images when printing backgrounds is disabled. (Bug 456219) r=zwol 2009-01-10 08:37:01 -08:00
Benjamin Smedberg
50621e4f9f Backed out changeset 4c4df6ed1b41 - Bug 396185 - Make nsIFrame not inherit from nsISupports due to mochitest failures... these appear to be crashes in nsGenericHTMLElement::GetEditorInternal. 2009-01-09 11:35:24 -05:00
Benjamin Smedberg
d0b948876f Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports:
* we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID)
* eliminate all vestiges of refcounting, since frames aren't refcounted

Some frames (SVG frames in particular) still implement nsISupports-derived interfaces, for example nsISVGValue. There is a FrameIID for nsISVGValue that lets you go from a frame to the XPCOM interface, but you can't query back.

r+sr=roc

This patch locally causes two REFTEST-UNEXPECTED-PASS for Bidi stuff. It's possible that I accidentally fixed a bug, but I'm not sure, so I'm going to wait for the tinderboxes to confirm my local results.
2008-11-05 14:25:30 -05:00
Michael Ventnor
318cfd2e10 Bug 472410. Don't adjust selection colors if the background is a -moz-appearance that we can't know anything about. r+sr=roc 2009-01-09 13:29:38 +13:00
Zack Weinberg
dacf4ab104 Bug 456219. Fix clipping to padding-rect with rounded corners. r+sr=roc 2009-01-09 13:28:32 +13:00
Robert O'Callahan
6b943be957 Backed out changeset 5041ce453104 2009-01-08 23:19:21 +13:00
Zack Weinberg
25f522098f Bug 456219. Fix clipping to padding-rect with rounded corners. r+sr=roc
--HG--
extra : rebase_source : ec710fd6f83332fcecaa926b1f0ec07e4d2e3635
2009-01-08 21:10:21 +13:00
Michael Ventnor
2d49b62ed7 Bug 445741. Round rects consistently to avoid a gap between an element and its shadow. r+sr=roc
--HG--
extra : rebase_source : dbb4ae33812db8167650dcc218f0bd4a3e0f3dc2
2009-01-05 13:41:01 +13:00
Michael Ventnor
e758b80cd9 Bug 468018 - Optimize box-shadow rendering even further by doing more intersections; r=vladimir 2008-12-06 19:54:36 +01:00
Michael Ventnor
e02630a781 Bug 458031. Take dirty rect into account to limit box-shadow computation. r+sr=roc 2008-12-03 10:16:22 +13:00
Robert O'Callahan
54b396e60b Bug 463952. Expand destArea according to CSS background-repeat *before* intersecting with bgClipArea, instead of after. r+sr=dbaron 2008-11-26 11:19:34 +13:00
Robert O'Callahan
0d380f02a0 Bug 458487 - 'Rework image snapping logic'. r=vlad+joedrew, sr=dbaron 2008-11-04 14:01:21 -08:00
Zack Weinberg
679447bf82 Bug 455105 - IsSolidBorderEdge in nsCSSRendering.cpp ignores foreground borders; r=vladimir, sr=roc 2008-10-30 12:54:58 +03:30
L. David Baron
8878bc85e1 Merge backout of changeset 23eebebb8b48 (from bug 322475, which made us construct all our image loaders at frame construction time) because of issues with propagation of backgrounds to the canvas (bug 460796). 2008-10-28 14:36:44 -07:00
L. David Baron
65cadd7c29 Backed out changeset 23eebebb8b48 (from bug 322475, which made us construct all our image loaders at frame construction time) because of issues with propagation of backgrounds to the canvas (bug 460796). 2008-10-28 14:36:17 -07:00
Masayuki Nakano
2a195344de Bug 461512 nsCSSColorUtils doesn't support alpha color (border color is always solid color if the border-style is groove, ridge, inset, outset) r+sr=roc 2008-10-28 11:05:38 +09:00
L. David Baron
10bd0bbfe0 Construct all our image loaders when we create frames so that we can allow arbitrary numbers of image loaders per frame (for multiple background images). (Bug 322475) r+sr=bzbarsky 2008-10-11 20:49:42 -04:00
L. David Baron
8da1c2fa2e Fix glitches in border-image drawing. (Bug 449647) r=robarnold, sr=vlad 2008-10-07 15:10:19 -07:00
Zack Weinberg
1b9f5190da Bug 450652 – Style system changes to support CSS3 border-radius – data structures for elliptical borders (part 1) [r+sr=dbaron] 2008-10-01 00:50:52 -05:00
Zack Weinberg
18bd325a4c Bug 457617 - Remove one unused function and one vestigial function declaration from nsCSSRendering.cpp [r+sr=roc] 2008-10-01 00:43:02 -05:00
Robert O'Callahan
279af36fc7 Backing out bug 448830 2008-09-28 23:13:58 +13:00
Jeremy Lea
92e7030a42 Bug 448830. Make nsIntRect/nsIntMargin/nsIntSize/nsIntPoint their own types so that we can catch errors by distinguishing pixels from appunits. r+sr=roc 2008-09-28 20:38:34 +13:00
Taras Glek
0b7b27f27b bug 457119: nuke nsCSSRendering::FillPolygon. r+sr=roc 2008-09-25 18:46:06 -07:00
Robert O'Callahan
6a45b282aa Backing out bug 448830 2008-09-26 13:10:26 +12:00
Jeremy Lea
67f3afd13b Bug 448830. Make nsIntRect/nsIntSize/nsIntPoint/nsIntMargin separate types so we get appunit vs pixel typechecking. r+sr=roc 2008-09-26 10:42:19 +12:00
Vladimir Vukicevic
1ce4d80f1b b=450178; add generic 8-bit alpha box blur in thebes (patch from Eric Bulter); r=vlad 2008-09-25 12:53:09 -07:00
Vladimir Vukicevic
e9929e8a33 b=455976; wrong extend mode used for macosx for border-image 2008-09-25 12:49:55 -07:00
Zack Weinberg
af1a57fea4 Bug 456792 - Two more API cleanups for nsCSSRendering; patch 2; r+sr=roc 2008-09-25 18:03:15 +02:00
Zack Weinberg
a64209d05b Bug 456792 - Two more API cleanups for nsCSSRendering; patch 1; r+sr=roc 2008-09-25 17:53:27 +02:00
Zack Weinberg
7687ccc76b Bug 456152 - slight API cleanup for nsCSSRendering::PaintBackground; r+sr=roc 2008-09-24 06:07:22 +02:00
Zack Weinberg
20636c2fb4 Bug 455217 - Selection colors for plain text files is wrong (white background, blue text instead of blue background, white text); "code" part; r+sr=dbaron 2008-09-19 19:06:46 +02:00
L. David Baron
a56edce6be Convert text-shadow and box-shadow storage from nsStyleCoord to nscoord. (Bug 443057) r+sr=bzbarsky 2008-09-12 20:45:37 -07:00
L. David Baron
b9c298d240 Convert outline offset storage from nsStyleCoord to nscoord. (Bug 443057) r+sr=bzbarsky 2008-09-12 20:45:37 -07:00
Zack Weinberg
fb1dadd8fe Bug 453566 - HTML element with rgba(0,0,0,0) background produces garbage on screen. r+sr=roc 2008-09-12 08:36:53 -07:00
Zack Weinberg
0f68a207ca Bug 453916: treat transparency strictly as a special case of color alpha. r+sr=dbaron 2008-09-12 08:35:53 -07:00
Robert O'Callahan
539a029252 Bug 450340. Support SVG mask/clip-path/filter CSS properties applied to non-SVG content. r=longsonr,sr=mats 2008-09-11 12:24:16 +12:00
Robert O'Callahan
dfd507db5c Bug 450350. Don't let the tiled vs single-image drawing path choice depend on the dirty area, since the rendering results can differ. r+sr=dbaron 2008-08-25 21:05:15 +12:00
Michael Ventnor
ce145ee61f Bug 447044 – First -moz-box-shadow not drawn when second one has large blur value. r=roc 2008-08-13 08:27:47 +02:00
Robert O'Callahan
c93b3201af Bug 449324. When an element has a solid border, clip background painting to the padding-rect so we don't bother trying to tile a repeating background under the border area. r+sr=vlad 2008-08-13 15:11:35 +12:00
Rob Arnold
f6bda8fda0 Implement Aero Glass effect support - bug 418454 r=vlad r=roc 2008-08-12 17:44:14 -07:00
Robert O'Callahan
412609685e Bug 438987. Propagate background color correctly when the root element is a table. Relanding with a crash fix. r+sr=dbaron 2008-08-08 20:21:13 +12:00
Robert O'Callahan
18e74a0f2d Bug 438987, backing out 2008-08-08 15:34:43 +12:00
Robert O'Callahan
d75aff2db8 Bug 438987. Propagate background color correctly when the root element is a table. r+sr=dbaron 2008-08-08 13:52:41 +12:00
Zack Weinberg
c9153c98a8 Bug 446498 – use new border rendering for focus rectangles, and strip dead code. r+sr=vlad 2008-08-06 12:33:18 +02:00
Michael Ventnor
f7783e7a9b Bug 448903. Fix bounds checking in blur code. r+sr=roc 2008-08-04 14:18:46 +12:00
Markus Stange
0666167109 Bug 446463 - DrawWidgetBackground can't snap to pixels properly, remove translation. r+sr=roc. 2008-07-27 18:08:51 +02:00
Vladimir Vukicevic
249ff0de3c b=424423, border rendering is slow: Part 1; r+sr=roc 2008-07-23 10:25:23 -07:00
Andrew Smith ext:(%2C%20Rob%20Arnold%20%3Ctellrob%40gmail.com%3E%2C%20L.%20David%20Baron%20%3Cdbaron%40dbaron.org%3E)
49c9b3d67e Implement css3 border-image property. (Bug 378217) r=vlad,dbaron,robarnold 2008-07-16 23:30:25 -07:00
L. David Baron
9e4ceade8e 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)
bb4be48531 Implement css3 border-image property. (Bug 378217) r=vlad,dbaron,robarnold 2008-07-16 22:18:38 -07:00
Michael Ventnor
71040cae9a Bug 444925 – Crash [@ nsContextBoxBlur::BoxBlurHorizontal] with mathml:munderover and text-shadow. r+sr=roc 2008-07-14 12:35:15 +02:00
Michael Ventnor
321e39670e Bug 439343 - "Crash [@ _moz_cairo_surface_set_device_offset ] with text-shadow, large text-indent, font-size and letter-spacing" [p=ventnor.bugzilla@gmail.com (Michael Ventnor) r+sr=roc] 2008-07-08 00:43:00 -05:00
Michael Ventnor
8d8eda2eae Bug 212633 - "Add support for CSS3 box-shadow" (rendering support) [p=ventnor.bugzilla@gmail.com (Michael Ventnor) r+sr=roc] 2008-07-07 19:57:47 -05:00
Michael Ventnor
7e868a56e1 Implement text-shadow rendering (bug 10713). r+sr=roc. Relanding with fixes to make tests pass on Mac 2008-06-13 10:02:32 +12:00
Robert O'Callahan
6382ad7c40 Backing out text-shadow due to Mac issues 2008-06-12 17:32:31 +12:00
Michael Ventnor
480a40574d Implement text-shadow rendering. 2008-06-12 14:34:40 +12:00
L. David Baron
89077a365d Snap background origin and clip areas to device pixels to prevent tiling from varying for subpixel position changes that don't change the box's visible position at all. Tests by roc (433640-*) and me (background-image-tiling-*). b=433640 r+sr=roc 2008-06-03 15:25:31 -07:00
L. David Baron
6ce40d4252 Eliminate unnecessary reference counting of gfxContext objects. b=433640 r+sr=roc 2008-06-03 15:25:31 -07:00
L. David Baron
8a92bdecfb Make outlines on inlines containing blocks outline the blocks. b=424236,270191 r+sr=roc 2008-06-02 15:52:25 -07:00
vladimir@pobox.com
904ec4aa1c Back out patch for bug 397303 due to serious perf regressions; r/sr=roc 2008-04-19 22:31:30 -07:00
roc+@cs.cmu.edu
005cb0775b Bug 399258. nsCSSRendering::PaintBorder should not try to optimize away the case where the dirty rectangle is inside the element's padding-rect, because border-radius can make the border appear inside the padding-rect. nsDisplayBorder::OptimizeVisibility does this optimization correctly already so just remove it from PaintBorder. r+sr=vlad, a=damon 2008-04-14 18:41:12 -07:00
masayuki@d-toybox.com
e725702581 Bug 427420 selection decoration lines (spell checker's underline and IME composing string underline) are not displayed r+sr+b1.9=roc 2008-04-07 16:57:13 -07:00
smontagu@smontagu.org
974b8dbc2f Correct the coordinates for selection decoration in right-to-left text. Bug 421042, r+sr=roc, a=beltzner 2008-04-06 01:12:09 -07:00
roc+@cs.cmu.edu
14c8d05caf Bug 421885. Make tiled image drawing sample only the correct subimage by manually padding if necessary. r=vlad 2008-03-31 02:40:53 -07:00
reed@reedloden.com
601e529c06 Back out Robert O'Callahan's patch from bug 421885 due to reftest failure. 2008-03-28 02:32:03 -07:00
reed@reedloden.com
7ffca204c7 Bug 421885 - "Google reader search results have strange red line and broken border around them" [p=roc@ocallahan.org (Robert O'Callahan [roc]) r=vlad a=blocking1.9+] 2008-03-28 01:40:02 -07:00
roc+@cs.cmu.edu
11aa232422 Bug 403181. Pass the desired source rectangle for background images down into nsThebesImage and ensure we don't sample outside it. Back out a bad pixman patch that caused regressions, and adjust image encoding tests so they don't depend on the regression. Also switchs some reftests to quirks mode so that the 1-appunit width of <br>s doesn't bite us. r=vlad,sr=dbaron 2008-03-09 14:55:05 -07:00
roc+@cs.cmu.edu
72bddc7c36 Backing out Bug 403181. JPEG encoding test failure :-( 2008-03-07 01:28:34 -08:00
roc+@cs.cmu.edu
18b5f6db55 Bug 403181. Various fixes to image rendering. Most importantly, we track the desired subimage of a CSS background image and ensure we don't sample outside it. r=vlad,sr=dbaron 2008-03-07 00:34:12 -08:00
vladimir@pobox.com
26262aaee9 b=417246, wrong border size rendering in some cases ; r=roc 2008-03-05 23:58:58 -08:00
dbaron@dbaron.org
7003061847 Fix the weird Get* API on nsStyleSides in favor of returning structs by value, to avoid further occurrences of bug 420069. b=420069 r+sr=roc a=beltzner 2008-03-05 16:05:26 -08:00
masayuki@d-toybox.com
2533703600 Bug 405308 [text-decoration] Link underline disappears (or is misaligned 1px) when scrolling r+sr=roc, a1.9=beltzner 2008-03-05 11:24:44 -08:00
roc+@cs.cmu.edu
4815c48c47 Backing out 403181 again 2008-03-04 01:36:07 -08:00
roc+@cs.cmu.edu
d8ef70bf14 Bug 403181. Track which subimage of an image we want to draw and copy it to a temporary surface if necessary to prevent sampling of pixels outside the subimage when zooming. Also, enable EXTEND_PAD or SetFilter(0) if the context has a transformation that's not a simple translation, since that might induce cairo to sample pixels outside the source (sub)image. r=vlad,sr=dbaron 2008-03-04 00:21:34 -08:00