Commit Graph

44 Commits

Author SHA1 Message Date
Robert O'Callahan
2632a625e0 Bug 1048752. Part 19: Create nsCaret::GetPaintGeometry to call during painting. r=tn
This is the start of the changes to caret-drawing proper.

The idea is to combine GetCaretFrame and GetCaretRect into a method
GetPaintGeometry which looks like GetGeometry but returns values
needed for painting (i.e. including bidi decorations, and returning
a null frame if we're not supposed to paint due to specific caret
state, e.g. in the "off" phase of the blink cycle).

Mostly a straightforward refactoring but there are a few interesting changes:
-- nsDisplayCaret stores its bounds instead of getting them from nsCaret on
demand. Eventually those bounds will not be stored in nsCaret at all.
-- nsDisplayCaret::GetBounds returns true for aSnap. nsCaret draws snapped
rects, so why not.
-- I removed "if (caretRect.Intersects(aDirtyRect))" in EnterPresShell.
As far as I can tell, this check is incorrect because it doesn't take
transforms into account. Since there's at most one drawn caret per window,
hence we do this at most once per paint, I don't think there's any real
performance advantage to having this check.
2014-08-06 17:19:28 +12:00
Robert O'Callahan
bed9de9439 Bug 1048752. Part 17: Rename Get/SetCaretDOMSelection to Get/SetSelection. r=tn
The forward declaration of Selection in nsCaret.h will be used in later patches.
2014-08-06 17:19:27 +12:00
Robert O'Callahan
6fb18233c7 Bug 1048752. Part 16: Move nsFrameSelection::HINT to CaretAssociationHint.h. r=tn
This patch started an attempt to remove nsFrameSelection.h from nsCaret.h
and metastasized into a rather large refactoring patch that removed it
from some other header files as well, and changed nsFrameSelection::HINT
into a global-scope enum with better names. I also converted bools
into CaretAssociationHint in a few places where that was appropriate,
but there are still some more places (GetChildFrameContainingOffset)
where bools need to be converted. I figured this patch was big enough already.
2014-08-06 17:19:27 +12:00
Jonathan Watt
f6095ddf73 Bug 1049256, part 2 - Get rid of nsISVGChildFrame::FOR_HIT_TESTING. r=longsonr 2014-08-07 08:09:34 +01:00
Jonathan Watt
edca66335f Bug 1049256, part 1 - Convert SVG hit-testing to act on an SVG user space point instead of calling nsSVGUtils::GetCanvasTM(). r=longsonr 2014-08-07 08:09:31 +01:00
Jonathan Watt
be1fde1249 Bug 1049242 - Avoid hit-testing against the same clip-path for every SVG text frame that hits. r=heycam 2014-08-07 06:24:54 +01:00
Jonathan Kew
fe8090d7de bug 1031241 pt 3 - Also rename Intrinsic{Width,Height} to Intrinsic{I,B}Size. r=smontagu 2014-07-24 18:03:26 +01:00
Jonathan Kew
c7e5b8d9dc bug 1031241 pt 1 - Rename Get{Min,Pref}Width to Get{Min,Pref}ISize throughout layout. r=dbaron,smontagu 2014-07-24 18:03:25 +01:00
Simon Montagu
659c93475e Bug 789096 patch 10: make Reflow set nsHTMLReflowMetrics.ISize and BSize instead of Width and Height. r=jfkthame 2014-07-24 01:30:07 -07:00
Simon Montagu
0132cc9646 Bug 789096 patch 9: use logical coordinates in nsHTMLReflowState available size. r=jfkthame 2014-07-24 01:28:46 -07:00
Jonathan Watt
2b76c610a0 Bug 1025553, part 6 - Remove gfxMatrix::Multiply(). r=Bas 2014-07-11 08:07:07 +01:00
Jonathan Watt
31639cea0a Bug 1025553, part 3 - Give gfxMatrix::Invert() the same semantics as Moz2D's Matrix::Invert(). r=Bas 2014-07-11 08:06:39 +01:00
Anuj Agarwal
0b62e951dd Bug 1029141 - Refactor SVGTextFrame::MutationObserver, de-virtualizing & privatizing its public destructor. r=dholbert 2014-07-02 12:09:00 +02:00
Jonathan Watt
45e707ce2a Bug 1034115 - Stop creating CSS-px-to-dev-pixel matrices when doing SVG hit-testing. r=longsonr 2014-07-05 19:19:13 +01:00
Jonathan Watt
552df6e47a Bug 1034574 - Remove SVGContentUtils::CoordToFloat's aPresContext argument. r=longsonr 2014-07-05 19:19:13 +01:00
Simon Montagu
614fa9614f Replace GetBaseline with GetLogicalBaseline and use logical coordinates in the line position and baseline getters in nsLayoutUtils. Bug 789096, r=jfkthame 2014-06-17 05:19:38 -07:00
Mats Palmgren
81f3a21c91 Bug 508665 - part 15, s/mParent/GetParent()/ in a bunch of nsIFrame sub-classes. r=roc 2014-05-24 22:20:41 +00:00
Mats Palmgren
bebbaf8351 Bug 508665 - part 5, Make nsIFrame::Init require a nsContainerFrame* for the parent frame param. r=roc 2014-05-24 22:20:40 +00:00
Birunthan Mohanathas
eeb9aaaa94 Bug 900908 - Part 3: Change uses of numbered macros in nsIClassInfoImpl.h/nsISupportsImpl.h to the variadic variants. r=froydnj 2014-04-27 03:06:00 -04:00
Daniel Holbert
58e4797429 Bug 996351: Rename nsPresShell::GetReferenceRenderingContext() to CreateReferenceRenderingContext(), to reduce implication of fallibility. r=roc 2014-04-14 21:30:25 -07:00
John Daggett
461e1f37bd Bug 950526 - don't dump textruns within nsTextFrame::DidSetStyleContext. r=dbaron 2014-04-08 14:13:28 +09:00
Carsten "Tomcat" Book
da78b8123a Backed out changeset 1d12ab8bf5fe (bug 950526) for android reftest failures on a CLOSED TREE 2014-03-20 10:00:24 +01:00
John Daggett
72cbd29d79 Bug 950526 - don't dump textruns within nsTextFrame::DidSetStyleContext. r=dbaron 2014-03-20 14:43:29 +08:00
Jonathan Watt
3b4659d3cb Bug 984280 - Convert DOMSVGPoint from Thebes to Moz2d. r=heycam 2014-03-19 09:13:18 +08:00
Jonathan Kew
3487faa35b bug 735577 - followup 1 (v2) - allow reflow-state to be passed to the reflow-metrics constructor to get the writing mode. r=roc 2013-12-31 13:50:31 +00:00
Matt Woodrow
adaccdda6f Bug 976812 - Mark nsDisplaySVGText as using component alpha. r=heycam 2014-02-27 15:57:45 +13:00
Arnaud Sourioux
a7fb7f5ece Bug 974687 - Part 2: Fix more than 80cols issues caused by MOZ_OVERRIDE annotation. r=dholbert 2014-02-24 09:41:56 -05:00
Arnaud Sourioux
fe6152ac7a Bug 974687 - Part 1: Add about 300 MOZ_OVERRIDE in layout/. r=dholbert 2014-02-24 09:41:56 -05:00
Arnaud Sourioux
fdf311f38d Bug 974135: Get rid of NS_IMETHOD in nsISVGChildFrame.h and its implementations r=dholbert 2014-02-19 14:34:31 -08:00
Robert Longson
7be10829c1 Bug 970356 - neither getSubStringLength, nor selectSubString should throw if nchars is too large. r=cam 2014-02-18 14:29:27 +00:00
Arnaud Sourioux
c55abda61c Bug 919806: Get rid of NS_IMETHOD in nsIFrame.h and its implementations r=dholbert 2014-02-17 23:47:48 -08:00
Benoit Jacob
aeb3bee922 Bug 959380 - 4/5 - Make gfxContentType a typed enum - r=jrmuizel
find . -type f | grep -v '\./obj' | grep -v '\.hg' | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)GFX_CONTENT_\(COLOR\|ALPHA\|COLOR_ALPHA\|SENTINEL\)\($\|[^A-Za-z0-9_]\)/\1gfxContentType::\2\3/g'
2014-01-23 13:26:40 -05:00
Robert Longson
155ea1d445 Bug 889235 - Make text-shadow work on SVG text. r=cam 2014-01-13 12:21:42 +00:00
Robert Longson
4397d9721e Bug 812795 (Part 2) - Disable subpixel AA on SVG text when requested to. r=jwatt 2014-01-09 13:40:00 +00:00
Cameron McCormack
d5b80553f8 Bug 956513 - Have anchored chunk boundaries at both ends of a <textPath>. 2014-01-05 20:59:50 +11:00
Robert Longson
66c733ae57 Bug 955917 (Part 2b) - Use nsSVGUtils::SetupContextPaint in SVGTextFrame. r=dholbert 2014-01-03 11:39:44 +00:00
David Zbarsky
1b2bfec3ce Bug 952977: Switch GetBBoxContribution to gfx::Matrix r=nical 2013-12-30 01:50:07 -05:00
Jonathan Kew
cef04e128a backout changeset 8b6f20bda157 (bug 735577 followup 1) for build failure 2013-12-29 22:48:13 +00:00
Jonathan Kew
d44aaf1e5a bug 735577 - followup 1 - allow reflow-state to be passed to the reflow-metrics constructor to get the writing mode. r=roc 2013-12-29 22:04:02 +00:00
Jonathan Kew
279981cdc3 bug 735577 - pt 4.1 - use accessor functions for some physical-coordinate fields in nsHTMLReflowMetrics, in preparation for logicalization. r=smontagu 2013-12-27 17:59:52 +00:00
Jonathan Kew
4796e463bc bug 735577 - pt 3.2 - update the rest of layout code to use the new accessors on nsHTMLReflowState. r=smontagu 2013-12-27 17:59:21 +00:00
David Zbarsky
c09f7abbbc Backout b04bd18e5692 for reftest failure 2013-12-26 15:13:57 -05:00
David Zbarsky
5d7caff1f5 Bug 952977: Switch PrependSVGTransform to gfx::Matrix r=nical 2013-12-26 13:06:54 -05:00
Robert Longson
c032670925 Bug 940193 - rename nsSVGTextFrame2 to SVGTextFrame. r=dholbert 2013-12-20 16:38:51 +00:00