At bug 59109, I forgot to fix the overflow computation of floating first letter.
Created attachment 649063 [details] [diff] [review]
Comment on attachment 649063 [details] [diff] [review]
I'm not sure if we check whether the frame has decoration lines actually.
If you have some idea to write automated tests for this, let me know it.
Does nsStyleTextReset::CalcDifference cause a reflow style hint in all the cases where the result of this calculation could change?
(In reply to David Baron [:dbaron] from comment #4)
> Does nsStyleTextReset::CalcDifference cause a reflow style hint in all the
> cases where the result of this calculation could change?
Ah, it's good point. Currently, if the line style is changed to/from double or wavy, it returns NS_STYLE_HINT_REFLOW because solid/dotted/dashed are always same thickness. However, there is "-moz-none". I think that nsStyleTextReset::CalcDifference() should returns NS_STYLE_HINT_REFLOW for it or we should include solid underline rect to the overflow rect even if the style is none.
I like the former better because the latter is hacky. We may be able to take same mistake in the future. Do you agree?
I think in general we've been taking the opposite approach -- trying to include the underline in the overflow rect (at least for common underline styles) so that we don't have to reflow.
Then again, I think Mats was working on supporting a stronger variant of UpdateOverflowArea that might be sufficient here (in addition to repaint).
Created attachment 649949 [details] [diff] [review]
So, do you think that this is right approach?
Comment on attachment 649949 [details] [diff] [review]
I filed bug 812143 for this.