Commit Graph

325 Commits

Author SHA1 Message Date
Alexis Beingessner
c6fbc5e17e Bug 1088760 - Remove nsRenderingContext, replacing all of its uses with gfxContext. r=jwatt,jrmuizel
MozReview-Commit-ID: K1WUIOnvazF
2017-06-12 17:32:48 -04:00
Mats Palmgren
6a8fbc8c30 Bug 1364805 part 4 - Remove the now unused LayoutFrameType values from the ctors. r=jfkthame
MozReview-Commit-ID: 1RSDoc3pQXf
2017-05-26 12:11:11 +02:00
Mats Palmgren
450c7ae245 Bug 1364805 part 2 - Add a nsIFrame::mClass field and propagate the concrete class' value up the ctor chain. r=jfkthame
nsIFrame::mClass is of type enum class nsQueryFrame::ClassID which is
a strict subset of the nsQueryFrame::FrameIID values.  For a concrete
frame class, its FrameIID is the same numeric value as its ClassID.

MozReview-Commit-ID: 1N0AkCGo1ol
2017-05-26 12:11:11 +02:00
Emilio Cobos Álvarez
643f3f8618 Bug 1361051: rename mozilla::FrameType to mozilla::LayoutFrameType. r=xidorn
This avoids conflicts with mozilla::dom::FrameType.

MozReview-Commit-ID: 7aEMbHRaTFk
2017-05-01 19:32:52 +02:00
Emilio Cobos Álvarez
3731858edf Bug 1360241: Devirtualize nsIFrame::GetType. r=heycam
MozReview-Commit-ID: 5Nzhyta5Hle
2017-04-30 17:30:08 +02:00
Boris Zbarsky
ffbc5b982b Bug 1347411 part 3. Fix stylo to properly update styles for the content container frame of <fieldset>. r=heycam
MozReview-Commit-ID: D9D2xtjRldF
2017-03-15 14:00:43 -04:00
Ting-Yu Lin
e6769617e9 Bug 775624 Part 22 - Remove NS_FRAME_COMPLETE. r=dholbert
This patch is written by the following script with some manual adjustment to
the comment in nsRubyTextContainerFrame.cpp and nsRubyFrame.cpp, and
nsColumnSetFrame's constructor.

function rename() {
find layout\
     -type f\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -r "s/$1/$2/g" "{}" \;
}

rename "nsReflowStatus *([a-zA-Z0-9]*) = NS_FRAME_COMPLETE" "nsReflowStatus \1"
rename "([a-zA-Z0-9.*]*) *= NS_FRAME_COMPLETE;" "\1.Reset();"
rename "([a-zA-Z0-9.*]*) == NS_FRAME_COMPLETE" "\1.IsEmpty()"

MozReview-Commit-ID: 9tqQAHvdQex
2017-02-14 17:55:48 +08:00
Ting-Yu Lin
e65c098cfb Bug 775624 Part 11 - Convert NS_MergeReflowStatusInto() to a method. r=dholbert
Also, remove NS_FRAME_TRUNCATED and NS_FRAME_REFLOW_NEXTINFLOW because both
are used only by NS_MergeReflowStatusInto().

MozReview-Commit-ID: LsPOji9j2e
2017-02-13 17:15:01 +08:00
Mats Palmgren
f82db27ff7 Bug 1330962 part 4 - Cleanup some #includes and make nsLegendFrame 'final'. r=dholbert 2017-01-28 02:34:14 +01:00
Mats Palmgren
c0759aee63 Bug 1330962 part 3 - Add baseline methods to nsFieldSetFrame. r=dholbert 2017-01-28 02:34:14 +01:00
Boris Zbarsky
97a52b4099 Bug 1326163 part 3. Rename nsDisplayFieldSetBorderBackground to nsDisplayFieldSetBorder, since that's what it does ever since bug 1227327 was fixed in <https://hg.mozilla.org/mozilla-central/rev/5453b1ce4e85e98d358c12c8dc168a9f484b7491>. r=dbaron 2016-12-29 18:10:26 -08:00
Boris Zbarsky
6362ba32b8 Bug 1326163 part 1. The fieldset's border drawing display item shouldn't participate in hit-testing. That's handled by its background item already. r=dbaron 2016-12-29 18:10:22 -08:00
Boris Zbarsky
7c35133c49 Bug 504622 part 2. Allow fieldsets to shrink below their intrinsic min-width and below the width of their legend if their min-width is explicitly overridden. r=dbaron 2016-11-29 15:52:55 -05:00
Boris Zbarsky
ee28adce90 Bug 504622 part 1. Rewrite fieldset border drawing to just clip to the area outside the legend instead of doing it in pieces with different clip rects. r=mattwoodrow,dbaron
This change will allow the border drawing code to deal with the following
changes, which will make us no longer force the fieldset to be wider than the
legend.  Without this patch, allowing the fieldset to be narrower than the
legend causes the vertical inline-start-side and inline-end-side borders of the
fieldset to paint under the legend, because the current code only modifies the
painting of the block-start-side border (the one the legend is positioned on).

This does change behavior in one situation, which the new tests test.  For
relatively positioned legends, we used to use the original vertical location but
the positioned horizontal location of the legend to decide which parts of the
border to not paint.  In the new setup, we use the original location for both.
I did check that this new behavior matches Chrome and Safari.  Edge seems to
have our old behavior.
2016-11-29 15:52:30 -05:00
Wes Kocher
c44d10a005 Backed out 2 changesets (bug 504622) for android reftest failures a=backout
Backed out changeset c024721d9b03 (bug 504622)
Backed out changeset 056f728704e7 (bug 504622)
2016-11-29 14:04:40 -08:00
Boris Zbarsky
da2ababc5a Bug 504622 part 2. Allow fieldsets to shrink below their intrinsic min-width and below the width of their legend if their min-width is explicitly overridden. r=dbaron 2016-11-29 15:52:55 -05:00
Boris Zbarsky
0f9915799f Bug 504622 part 1. Rewrite fieldset border drawing to just clip to the area outside the legend instead of doing it in pieces with different clip rects. r=mattwoodrow,dbaron
This change will allow the border drawing code to deal with the following
changes, which will make us no longer force the fieldset to be wider than the
legend.  Without this patch, allowing the fieldset to be narrower than the
legend causes the vertical inline-start-side and inline-end-side borders of the
fieldset to paint under the legend, because the current code only modifies the
painting of the block-start-side border (the one the legend is positioned on).

This does change behavior in one situation, which the new tests test.  For
relatively positioned legends, we used to use the original vertical location but
the positioned horizontal location of the legend to decide which parts of the
border to not paint.  In the new setup, we use the original location for both.
I did check that this new behavior matches Chrome and Safari.  Edge seems to
have our old behavior.
2016-11-29 15:52:30 -05:00
Ting-Yu Lin
03d0c3c4c4 Bug 1317588 Part 2 - Remove mozilla::css::Side typedef. r=mats
This patch is written with the help of the following script.

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename "css::Side" "Side"

MozReview-Commit-ID: DPV6vivpPUp
2016-11-18 16:28:38 +08:00
Ting-Yu Lin
d3e8cf1818 Bug 1277129 Part 7b - Rename various ReflowState variables to ReflowInput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -r "s/$1/$2/g" "{}" \;
}

rename "([[:alpha:]]*)([rR])eflowState(s?)" "\1\2eflowInput\3"

MozReview-Commit-ID: ITFO7uMTkSb
2016-07-21 18:36:39 +08:00
Ting-Yu Lin
3b9a7090d9 Bug 1277129 Part 6b - Rename rendContext to mRenderingContext in SizeComputationInput. r=dbaron
MozReview-Commit-ID: LczLJDtDncy
2016-07-21 18:36:38 +08:00
Ting-Yu Lin
bb0825b5c7 Bug 1277129 Part 5c - Rename nsHTMLReflowMetrics to ReflowOutput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename "nsHTMLReflowMetrics" "ReflowOutput"

MozReview-Commit-ID: 2HBb7DkooH5
2016-07-21 18:36:38 +08:00
Ting-Yu Lin
10912a51e3 Bug 1277129 Part 1c - Rename nsHTMLReflowState to ReflowInput. r=dbaron
This patch is generated by the following script:

function rename() {
find .\
     -type f\
     ! -path "./obj*"\
     ! -path "./.git"\
     ! -path "./.hg"\
     \( -name "*.cpp" -or\
        -name "*.h" \)\
        -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename nsHTMLReflowState ReflowInput

MozReview-Commit-ID: 9r9vdVv1pXc
2016-07-21 18:36:35 +08:00
Mats Palmgren
dd112296db Bug 1273433 part 1 - Make <legend align=right> work again. r=jfkthame 2016-05-18 13:49:33 +02:00
Cameron McCormack
3bb5936996 Bug 1271869 - Rename NS_STYLE_TEXT_ALIGN_DEFAULT to NS_STYLE_TEXT_ALIGN_START. r=dholbert 2016-05-11 14:03:34 +10:00
Markus Stange
0560a12833 Bug 1227327 - Make fieldset frames build nsDisplayBackgroundImage items. r=mattwoodrow
Fieldsets break up their border so we need to disable the willPaintBorder optimization for them.

MozReview-Commit-ID: 2zmlxVRLIqe
***
2016-04-28 14:09:06 -04:00
Phil Ringnalda
a821e6f3f5 Back out 6 changesets (bug 1227327) for Android reftest failures in 942672-1.html, background-position-2b.html and background-position-2c.html
CLOSED TREE

Backed out changeset c9b0ba301426 (bug 1227327)
Backed out changeset c857ad1fa01c (bug 1227327)
Backed out changeset 4ba58cd94310 (bug 1227327)
Backed out changeset 30e394faeb23 (bug 1227327)
Backed out changeset ce7fd04cc749 (bug 1227327)
Backed out changeset e0fe45294034 (bug 1227327)
2016-05-03 21:49:07 -07:00
Markus Stange
8e07cf1036 Bug 1227327 - Make fieldset frames build nsDisplayBackgroundImage items. r=mattwoodrow
Fieldsets break up their border so we need to disable the willPaintBorder optimization for them.

MozReview-Commit-ID: 2zmlxVRLIqe
***
2016-04-28 14:09:06 -04:00
Phil Ringnalda
65d27cf8fc Back out 6 changesets (bug 1227327) for failures in est_fixed_bg_scrolling_repaints.html
Backed out changeset 529ff32ced48 (bug 1227327)
Backed out changeset b726c30c4290 (bug 1227327)
Backed out changeset 5453b1ce4e85 (bug 1227327)
Backed out changeset 462dc0904d05 (bug 1227327)
Backed out changeset 1515512d3731 (bug 1227327)
Backed out changeset 2276fc059bf7 (bug 1227327)
2016-05-02 22:23:10 -07:00
Markus Stange
b50b87276f Bug 1227327 - Make fieldset frames build nsDisplayBackgroundImage items. r=mattwoodrow
Fieldsets break up their border so we need to disable the willPaintBorder optimization for them.

MozReview-Commit-ID: 2zmlxVRLIqe
***
2016-04-28 14:09:06 -04:00
Cameron McCormack
4496226b12 Bug 1261754 - Part 8: Move box-shadow from nsStyleBorder to a new nsStyleEffects struct. r=dholbert 2016-04-12 15:52:42 +10:00
Cameron McCormack
471cf640eb Bug 1248864 - Part 1: Move RestyleManager.h to EXPORTS.mozilla. r=dholbert 2016-02-24 18:01:12 +11:00
Xidorn Quan
0f1150d793 Bug 1064843 part 5 - Ensure frames behave properly for unknown child list id passed into SetInitialChildList. r=dholbert
Note that nsMathMLContainerFrame and its subclasses are unchanged since
they are not target of fullscreen (and thus no backdrop frame), and they
have an assertion to ensure we really don't pass any unexpected list in.
2016-01-28 10:11:00 +11:00
Nicholas Nethercote
bb5a4f7dc2 Bug 1232852 (part 4) - Remove some unused parameters in and around layout/base/. r=heycam. 2016-01-05 16:08:17 -08:00
Seth Fowler
2e383fe378 Bug 1209765 (Part 4) - Support sync decoding and track draw results when drawing borders in nsFieldSetFrame. r=tn 2015-10-22 19:54:49 -07:00
Jonathan Kew
7e8bda5a72 Bug 1131451 part 1 - Replace containerWidth with containerSize in logical-coordinate classes and APIs, frame classes, etc. r=dholbert 2015-07-16 10:07:57 +01:00
Simon Montagu
e6de936024 Bug 1147834: Use abstract coordinates in nsHTMLReflowState, r=jfkthame 2015-06-04 03:43:02 -07:00
Mats Palmgren
3f92be8fe8 Bug 1148833 part 3 - Remove nsIFrame::WillReflow and add a non-virtual MarkInReflow method instead that sets NS_FRAME_IN_REFLOW. Call it at the start of Reflow(). r=roc 2015-03-29 22:38:40 +00:00
Ehsan Akhgari
ea41d8de48 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Jonathan Kew
51d27c2e05 Bug 1134534 - Convert writing mode if necessary before applying positioning to fieldset legend. r=smontagu 2015-02-22 21:48:28 +00:00
Simon Montagu
b740322335 Bug 1124636 patch 2: use logical ReflowChild, FinishReflowChild and ApplyRelativePositioning in nsFieldSetFrame. r=jfkthame 2015-02-11 01:43:03 -08:00
Seth Fowler
3b0f34aba9 Bug 1128769 (Part 5) - Record the last draw result for various less common frame types and use it to decide whether to sync decode. r=tn 2015-02-09 23:27:40 -08:00
Simon Montagu
32b8ed6861 Bug 1124636: use min/maxBSize instead of Height in nsFieldSetFrame, r=jfkthame 2015-01-25 01:56:36 -08:00
Jonathan Kew
22aa45f95f Bug 1123133 - Vertical writing-mode support in nsFieldSetFrame. r=smontagu 2015-01-19 11:43:58 +00:00
Jonathan Kew
443f1d371f Bug 1113216 - Avoid assertions/crashes by treating enumerated block-size values as auto, pending proper implementation of all the values. r=dbaron 2015-01-15 11:56:51 +00:00
Jonathan Kew
b15e11bc92 Bug 1096260 - Convert flags parameter of nsIFrame::ComputeSize from uint32_t to a typed enum, and update callers accordingly. r=dholbert 2014-11-11 11:02:41 +00:00
Jonathan Watt
3b52cf43ad Bug 1086708 - Rename the snapping variant of NSRectToRect to NSRectToSnappedRect. r=mattwoodrow 2014-10-22 12:29:06 +01:00
Jonathan Watt
89de4a6cbe Bug 1085160 - Port the code that uses nsRenderingContext::IntersectClip() to Moz2D. r=mattwoodrow 2014-10-20 10:55:48 +01:00
Jonathan Watt
b4f1c21e73 Bug 1064082 - Get rid of nsRenderingContext's PushState and PopState methods. r=Bas 2014-09-11 07:48:10 +01:00
Jonathan Kew
670778f5d9 bug 1046950 pt 2 - convert ComputeSize to use logical-coordinate parameters. r=smontagu 2014-08-24 15:34:44 +01:00
Seth Fowler
0d38e30bcc Bug 913586 (Part 7) - Update Maybe users in layout. r=dbaron 2014-08-13 15:42:15 -07:00