Bug 1708422: part 13) Factor code out to `mozInlineSpellChecker::SpellCheckerTimeSlic...
[gecko.git] / layout / generic / FrameClasses.py
blobad455e0f32ed665fa163e74536da67eb40646010
1 # This Source Code Form is subject to the terms of the Mozilla Public
2 # License, v. 2.0. If a copy of the MPL was not distributed with this
3 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
4 # Frame class definitions, used to generate FrameIdList.h and FrameTypeList.h
6 from FrameClass import Frame, AbstractFrame, LEAF, NOT_LEAF, DYNAMIC_LEAF
8 FRAME_CLASSES = [
9 Frame("BRFrame", "Br", LEAF),
10 Frame("DetailsFrame", "Details", NOT_LEAF),
11 Frame("nsBCTableCellFrame", "TableCell", NOT_LEAF),
12 Frame("nsBackdropFrame", "Backdrop", LEAF),
13 Frame("nsBlockFrame", "Block", NOT_LEAF),
14 Frame("nsBox", "None", NOT_LEAF),
15 Frame("nsBoxFrame", "Box", NOT_LEAF),
16 Frame("nsBulletFrame", "Bullet", LEAF),
17 Frame("nsButtonBoxFrame", "Box", NOT_LEAF),
18 Frame("nsCanvasFrame", "Canvas", NOT_LEAF),
19 Frame("nsCheckboxRadioFrame", "CheckboxRadio", LEAF),
20 Frame("nsColorControlFrame", "ColorControl", LEAF),
21 Frame("nsColumnSetFrame", "ColumnSet", NOT_LEAF),
22 Frame("ColumnSetWrapperFrame", "ColumnSetWrapper", NOT_LEAF),
23 Frame("nsComboboxControlFrame", "ComboboxControl", NOT_LEAF),
24 Frame("nsComboboxDisplayFrame", "ComboboxDisplay", NOT_LEAF),
25 Frame("nsContinuingTextFrame", "Text", LEAF),
26 Frame("nsDateTimeControlFrame", "DateTimeControl", NOT_LEAF),
27 Frame("nsDeckFrame", "Deck", NOT_LEAF),
28 Frame("nsDocElementBoxFrame", "DocElementBox", NOT_LEAF),
29 Frame("nsFieldSetFrame", "FieldSet", NOT_LEAF),
30 Frame("nsFileControlFrame", "Block", LEAF),
31 Frame("nsFirstLetterFrame", "Letter", NOT_LEAF),
32 Frame("nsFirstLineFrame", "Line", NOT_LEAF),
33 Frame("nsFlexContainerFrame", "FlexContainer", NOT_LEAF),
34 Frame("nsIFrame", "None", NOT_LEAF),
35 Frame("nsGfxButtonControlFrame", "GfxButtonControl", LEAF),
36 Frame("nsGridContainerFrame", "GridContainer", NOT_LEAF),
37 Frame("nsHTMLButtonControlFrame", "HTMLButtonControl", NOT_LEAF),
38 Frame("nsHTMLCanvasFrame", "HTMLCanvas", NOT_LEAF),
39 Frame("nsHTMLFramesetBlankFrame", "None", LEAF),
40 Frame("nsHTMLFramesetBorderFrame", "None", LEAF),
41 Frame("nsHTMLFramesetFrame", "FrameSet", LEAF),
42 Frame("nsHTMLScrollFrame", "Scroll", NOT_LEAF),
43 Frame("nsImageBoxFrame", "ImageBox", LEAF),
44 Frame("nsImageControlFrame", "ImageControl", LEAF),
45 Frame("nsImageFrame", "Image", LEAF),
46 Frame("nsInlineFrame", "Inline", NOT_LEAF),
47 Frame("nsLeafBoxFrame", "LeafBox", LEAF),
48 Frame("nsListControlFrame", "ListControl", NOT_LEAF),
49 Frame("nsMathMLFrame", "None", NOT_LEAF),
50 Frame("nsMathMLmactionFrame", "None", NOT_LEAF),
51 Frame("nsMathMLmathBlockFrame", "Block", NOT_LEAF),
52 Frame("nsMathMLmathInlineFrame", "Inline", NOT_LEAF),
53 Frame("nsMathMLmencloseFrame", "None", NOT_LEAF),
54 Frame("nsMathMLmfracFrame", "None", NOT_LEAF),
55 Frame("nsMathMLmmultiscriptsFrame", "None", NOT_LEAF),
56 Frame("nsMathMLmoFrame", "None", NOT_LEAF),
57 Frame("nsMathMLmpaddedFrame", "None", NOT_LEAF),
58 Frame("nsMathMLmrootFrame", "None", NOT_LEAF),
59 Frame("nsMathMLmrowFrame", "None", NOT_LEAF),
60 Frame("nsMathMLmspaceFrame", "None", LEAF),
61 Frame("nsMathMLmsqrtFrame", "None", NOT_LEAF),
62 Frame("nsMathMLmtableFrame", "Table", NOT_LEAF),
63 Frame("nsMathMLmtableWrapperFrame", "TableWrapper", NOT_LEAF),
64 Frame("nsMathMLmtdFrame", "TableCell", NOT_LEAF),
65 Frame("nsMathMLmtdInnerFrame", "Block", NOT_LEAF),
66 Frame("nsMathMLmtrFrame", "TableRow", NOT_LEAF),
67 Frame("nsMathMLmunderoverFrame", "None", NOT_LEAF),
68 Frame("nsMathMLsemanticsFrame", "None", NOT_LEAF),
69 Frame("nsMathMLTokenFrame", "None", NOT_LEAF),
70 Frame("nsMenuBarFrame", "Box", NOT_LEAF),
71 Frame("nsMenuFrame", "Menu", NOT_LEAF),
72 Frame("nsMenuPopupFrame", "MenuPopup", DYNAMIC_LEAF),
73 Frame("nsMeterFrame", "Meter", LEAF),
74 Frame("nsNumberControlFrame", "TextInput", LEAF),
75 Frame("nsPageBreakFrame", "PageBreak", LEAF),
76 Frame("nsPageContentFrame", "PageContent", NOT_LEAF),
77 Frame("nsPageFrame", "Page", NOT_LEAF),
78 Frame("nsPlaceholderFrame", "Placeholder", LEAF),
79 Frame("nsPopupSetFrame", "PopupSet", NOT_LEAF),
80 Frame("nsProgressFrame", "Progress", LEAF),
81 Frame("nsRangeFrame", "Range", LEAF),
82 Frame("nsResizerFrame", "Box", NOT_LEAF),
83 Frame("nsRootBoxFrame", "XULRoot", NOT_LEAF),
84 Frame("nsRubyBaseContainerFrame", "RubyBaseContainer", NOT_LEAF),
85 Frame("nsRubyBaseFrame", "RubyBase", NOT_LEAF),
86 Frame("nsRubyFrame", "Ruby", NOT_LEAF),
87 Frame("nsRubyTextContainerFrame", "RubyTextContainer", NOT_LEAF),
88 Frame("nsRubyTextFrame", "RubyText", NOT_LEAF),
89 Frame("nsScrollbarButtonFrame", "Box", NOT_LEAF),
90 Frame("nsScrollbarFrame", "Scrollbar", NOT_LEAF),
91 Frame("nsSearchControlFrame", "SearchControl", LEAF),
92 Frame("nsSelectsAreaFrame", "Block", NOT_LEAF),
93 Frame("nsPageSequenceFrame", "PageSequence", NOT_LEAF),
94 Frame("nsSliderFrame", "Slider", NOT_LEAF),
95 Frame("nsSplitterFrame", "Box", NOT_LEAF),
96 Frame("nsStackFrame", "Box", NOT_LEAF),
97 Frame("nsSubDocumentFrame", "SubDocument", LEAF),
98 Frame("PrintedSheetFrame", "PrintedSheet", NOT_LEAF),
99 Frame("SVGAFrame", "SVGA", NOT_LEAF),
100 Frame("SVGClipPathFrame", "SVGClipPath", NOT_LEAF),
101 Frame("SVGContainerFrame", "None", NOT_LEAF),
102 Frame("SVGFEContainerFrame", "SVGFEContainer", NOT_LEAF),
103 Frame("SVGFEImageFrame", "SVGFEImage", LEAF),
104 Frame("SVGFELeafFrame", "SVGFELeaf", LEAF),
105 Frame("SVGFEUnstyledLeafFrame", "SVGFEUnstyledLeaf", LEAF),
106 Frame("SVGFilterFrame", "SVGFilter", NOT_LEAF),
107 Frame("SVGForeignObjectFrame", "SVGForeignObject", NOT_LEAF),
108 Frame("SVGGenericContainerFrame", "SVGGenericContainer", NOT_LEAF),
109 Frame("SVGGeometryFrame", "SVGGeometry", LEAF),
110 Frame("SVGGFrame", "SVGG", NOT_LEAF),
111 Frame("SVGImageFrame", "SVGImage", LEAF),
112 Frame("SVGInnerSVGFrame", "SVGInnerSVG", NOT_LEAF),
113 Frame("SVGLinearGradientFrame", "SVGLinearGradient", NOT_LEAF),
114 Frame("SVGMarkerFrame", "SVGMarker", NOT_LEAF),
115 Frame("SVGMarkerAnonChildFrame", "SVGMarkerAnonChild", NOT_LEAF),
116 Frame("SVGMaskFrame", "SVGMask", NOT_LEAF),
117 Frame("SVGOuterSVGFrame", "SVGOuterSVG", NOT_LEAF),
118 Frame("SVGOuterSVGAnonChildFrame", "SVGOuterSVGAnonChild", NOT_LEAF),
119 Frame("SVGPatternFrame", "SVGPattern", NOT_LEAF),
120 Frame("SVGRadialGradientFrame", "SVGRadialGradient", NOT_LEAF),
121 Frame("SVGStopFrame", "SVGStop", LEAF),
122 Frame("SVGSwitchFrame", "SVGSwitch", NOT_LEAF),
123 Frame("SVGSymbolFrame", "SVGSymbol", NOT_LEAF),
124 Frame("SVGTextFrame", "SVGText", NOT_LEAF),
125 # Not a leaf, though it always has a ShadowRoot, so in practice light DOM
126 # children never render.
127 Frame("SVGUseFrame", "SVGUse", NOT_LEAF),
128 Frame("SVGViewFrame", "SVGView", LEAF),
129 Frame("nsTableCellFrame", "TableCell", NOT_LEAF),
130 Frame("nsTableColFrame", "TableCol", LEAF),
131 Frame("nsTableColGroupFrame", "TableColGroup", NOT_LEAF),
132 Frame("nsTableFrame", "Table", NOT_LEAF),
133 Frame("nsTableWrapperFrame", "TableWrapper", NOT_LEAF),
134 Frame("nsTableRowFrame", "TableRow", NOT_LEAF),
135 Frame("nsTableRowGroupFrame", "TableRowGroup", NOT_LEAF),
136 Frame("nsTextBoxFrame", "LeafBox", LEAF),
137 Frame("nsTextControlFrame", "TextInput", LEAF),
138 Frame("nsTextFrame", "Text", LEAF),
139 Frame("nsTitleBarFrame", "Box", NOT_LEAF),
140 Frame("nsTreeBodyFrame", "LeafBox", LEAF),
141 Frame("nsTreeColFrame", "Box", NOT_LEAF),
142 Frame("nsVideoFrame", "HTMLVideo", NOT_LEAF),
143 Frame("nsXULScrollFrame", "Scroll", NOT_LEAF),
144 Frame("ViewportFrame", "Viewport", NOT_LEAF),
145 Frame("WBRFrame", "Wbr", LEAF),
146 # Non-concrete classes (for FrameIID use)
147 AbstractFrame("nsContainerFrame"),
148 AbstractFrame("nsLeafFrame"),
149 AbstractFrame("nsMathMLContainerFrame"),
150 AbstractFrame("nsRubyContentFrame"),
151 AbstractFrame("nsSplittableFrame"),
152 AbstractFrame("SVGDisplayContainerFrame"),
153 AbstractFrame("SVGGradientFrame"),
154 AbstractFrame("SVGPaintServerFrame"),
155 # Interfaces (for FrameIID use)
156 AbstractFrame("nsIAnonymousContentCreator"),
157 AbstractFrame("nsIComboboxControlFrame"),
158 AbstractFrame("nsIFormControlFrame"),
159 AbstractFrame("nsIFrameFrame"),
160 AbstractFrame("nsIListControlFrame"),
161 AbstractFrame("nsIMathMLFrame"),
162 AbstractFrame("nsIMenuFrame"),
163 AbstractFrame("nsIPercentBSizeObserver"),
164 AbstractFrame("nsIPopupContainer"),
165 AbstractFrame("nsIScrollableFrame"),
166 AbstractFrame("nsIScrollbarMediator"),
167 AbstractFrame("nsISelectControlFrame"),
168 AbstractFrame("nsIStatefulFrame"),
169 AbstractFrame("ISVGDisplayableFrame"),
170 AbstractFrame("ISVGSVGFrame"),
171 AbstractFrame("nsITableCellLayout"),
172 AbstractFrame("nsITableLayout"),
173 AbstractFrame("nsITextControlFrame"),