33ccb633f261401fa59037e9cde96af84d420b4e
[WebKit-https.git] / WebCore / ChangeLog
1 2006-05-13  Alexey Proskuryakov  <ap@nypop.com>
2
3         Fix release build.
4
5         * rendering/RenderBox.cpp:
6         (WebCore::RenderBox::calcAbsoluteHorizontalValues): Initialize leftValue. 
7         This value will never be used, because 'left' and 'right' cannot both be 'auto'.
8         (WebCore::RenderBox::calcAbsoluteVerticalValues): Initialize topValue. 
9         (WebCore::RenderBox::calcAbsoluteVerticalReplaced): Same changes as above. 
10
11 2006-05-13  Alexey Proskuryakov  <ap@nypop.com>
12
13         Re-applied the fix for bug 8835 (REGRESSION: Line moves but selection
14         highlight stays behind) to a correct file; removed the stale one.
15
16         * rendering/RootInlineBox.cpp:
17         (WebCore::RootInlineBox::adjustPosition): Adjust m_selectionTop
18         and m_selectionBottom.
19         * rendering/render_line.cpp: Removed.
20
21 2006-05-13  Rob Buis  <buis@kde.org>
22
23         Reviewed by Darin, landed by ap.
24
25         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8132
26         CSS parser sometimes accepts real number as integer
27
28         Add a boolean variable per css value to catch whether values
29         are specified as floats or integers.
30
31         Test: fast/css/rgb-float.html
32
33         * css/CSSGrammar.y:
34         * css/cssparser.cpp:
35         (WebCore::CSSParser::validUnit):
36         (WebCore::CSSParser::lex):
37         * css/cssparser.h:
38         * css/tokenizer.flex:
39
40 2006-05-13  Sam Weinig  <sam.weinig@gmail.com>
41
42         Reviewed by Hyatt, landed by ap.
43
44         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=7604
45         calcAbsoluteHorizontalValues() is being getting passed arguments
46         in the wrong order in calcAbsoluteHorizontal()
47
48         Cleans up the RenderBox code for absolutely positioned elements
49         and adds new functions for replaced absolutely positioned 
50         elements. Now uses Length so that magic number -666666 for 
51         auto lengths is no longer used.
52
53         * rendering/RenderBox.cpp:
54         (WebCore::RenderBox::calcAbsoluteHorizontal):
55         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
56         (WebCore::RenderBox::calcAbsoluteVertical):
57         (WebCore::RenderBox::calcAbsoluteVerticalValues): 
58         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): Handle replaced
59         case separately.
60         (WebCore::RenderBox::calcAbsoluteVerticalReplaced): ditto.
61         * rendering/RenderBox.h:
62
63 2006-05-12  David Hyatt  <hyatt@apple.com>
64
65         Bug 8880, remove the remaining drawing/hit testing code from
66         FontData.
67
68         Reviewed by tim h
69
70         * platform/Font.cpp:
71         (WebCore::m_finalRoundingWidth):
72         (WebCore::WidthIterator::advanceOneCharacter):
73         (WebCore::Font::selectionRectForText):
74         (WebCore::Font::selectionRectForSimpleText):
75         (WebCore::Font::offsetForPosition):
76         (WebCore::Font::offsetForPositionForSimpleText):
77         * platform/Font.h:
78         (WebCore::TextRun::makeComplete):
79         * platform/FontData.h:
80         * platform/GlyphBuffer.h:
81         (WebCore::GlyphBuffer::clear):
82         * platform/mac/FontData.mm:
83         * platform/mac/FontMac.mm:
84         (WebCore::Font::selectionRectForComplexText):
85         (WebCore::Font::offsetForPositionForComplexText):
86
87 2006-05-12  Kevin M. Ollivier  <kevino@theolliviers.com>
88
89         Reviewed by Maciej.
90
91         Add missing include.
92         
93         * dom/Node.h: Add missing include for DeprecatedString.
94
95 2006-05-12  Mitz Pettel  <opendarwin.org@mitzpettel.com>
96
97         Reviewed by Darin.
98
99         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8835
100           REGRESSION: Line moves but selection highlight stays behind
101
102         Test: fast/dynamic/selection-highlight-adjust.html
103
104         * rendering/render_line.cpp:
105         (WebCore::RootInlineBox::adjustPosition): Adjust m_selectionTop
106         and m_selectionBottom.
107
108 2006-05-12  Timothy Hatcher  <timothy@apple.com>
109
110         Reviewed by Darin.
111
112         http://bugzilla.opendarwin.org/show_bug.cgi?id=7156
113         Bug 7156: TinyMCE: Links are actually activated in editable area, not editable.
114         
115         Links in editable areas will not activate or perform a navigation
116         change (on par with WinIE and Firefox.) To visit the link
117         you can shift-click. Manual test added.
118
119         * css/cssstyleselector.cpp:
120         (WebCore::CSSStyleSelector::adjustRenderStyle):
121         * html/HTMLAnchorElement.cpp:
122         (WebCore::HTMLAnchorElement::defaultEventHandler):
123         (WebCore::HTMLAnchorElement::setActive):
124         * html/HTMLAnchorElement.h:
125         * manual-tests/contenteditable-link.html: Added.
126         * page/FrameView.cpp:
127         (WebCore::selectCursor):
128
129 2006-05-12  Eric Seidel  <eseidel@apple.com>
130
131         Reviewed by timo.
132
133         Split out html_inlineimpl.* into separate files (one per class).
134
135         * WebCore.xcodeproj/project.pbxproj:
136         * bindings/js/kjs_html.cpp:
137         * bindings/objc/DOMHTML.mm:
138         * editing/CreateLinkCommand.cpp:
139         * editing/UnlinkCommand.cpp:
140         * html/HTMLAnchorElement.cpp: Added.
141         (WebCore::HTMLAnchorElement::HTMLAnchorElement):
142         * html/HTMLAnchorElement.h: Added.
143         * html/HTMLBRElement.cpp: Added.
144         * html/HTMLBRElement.h: Added.
145         * html/HTMLElementFactory.cpp:
146         * html/HTMLFontElement.cpp: Added.
147         (WebCore::HTMLFontElement::HTMLFontElement):
148         (WebCore::HTMLFontElement::setColor):
149         (WebCore::HTMLFontElement::setFace):
150         (WebCore::HTMLFontElement::setSize):
151         * html/HTMLFontElement.h: Added.
152         * html/HTMLModElement.cpp: Added.
153         (WebCore::HTMLModElement::setCite):
154         (WebCore::HTMLModElement::setDateTime):
155         * html/HTMLModElement.h: Added.
156         * html/HTMLQuoteElement.cpp: Added.
157         * html/HTMLQuoteElement.h: Added.
158         * html/html_imageimpl.h:
159         * html/html_inlineimpl.cpp: Removed.
160         * html/html_inlineimpl.h: Removed.
161         * page/FrameView.cpp:
162
163 2006-05-12  Eric Seidel  <eseidel@apple.com>
164
165         Reviewed by beth.
166
167         Fix build error.
168
169         * rendering/InlineFlowBox.cpp:
170         * rendering/RootInlineBox.cpp:
171
172 2006-05-12  Eric Seidel  <eseidel@apple.com>
173
174         Reviewed by beth.
175
176         Split out render_line.* into separate files (one per class).
177
178         * WebCore.xcodeproj/project.pbxproj:
179         * dom/ContainerNode.cpp:
180         * rendering/EllipsisBox.cpp: Added.
181         * rendering/EllipsisBox.h: Added.
182         (WebCore::EllipsisBox::EllipsisBox):
183         * rendering/InlineBox.cpp: Added.
184         * rendering/InlineBox.h: Added.
185         (WebCore::InlineBox::InlineBox):
186         (WebCore::InlineBox::~InlineBox):
187         (WebCore::InlineBox::bottomOverflow):
188         (WebCore::InlineBox::rightOverflow):
189         * rendering/InlineFlowBox.cpp: Added.
190         (WebCore::InlineFlowBox::placeBoxesHorizontally):
191         * rendering/InlineFlowBox.h: Added.
192         * rendering/InlineRunBox.h: Added.
193         (WebCore::InlineRunBox::InlineRunBox):
194         (WebCore::InlineRunBox::paintBackgroundAndBorder):
195         (WebCore::InlineRunBox::paintDecorations):
196         * rendering/InlineTextBox.h:
197         * rendering/RenderBlock.h:
198         * rendering/RenderFlow.h:
199         * rendering/RenderReplaced.cpp:
200         * rendering/RootInlineBox.cpp: Added.
201         * rendering/RootInlineBox.h: Added.
202         (WebCore::RootInlineBox::RootInlineBox):
203         * rendering/render_line.h: Removed.
204
205 2006-05-12  Eric Seidel  <eseidel@apple.com>
206
207         Reviewed by hyatt.
208
209         Split out table_layout.* into separate files (one per class).
210         Search replace instance variables "foo" with "m_foo" to comply with modern style.
211
212         * WebCore.xcodeproj/project.pbxproj:
213         * rendering/AutoTableLayout.cpp: Added.
214         (WebCore::AutoTableLayout::AutoTableLayout):
215         (WebCore::AutoTableLayout::recalcColumn):
216         (WebCore::AutoTableLayout::fullRecalc):
217         (WebCore::AutoTableLayout::calcMinMaxWidth):
218         (WebCore::AutoTableLayout::calcEffectiveWidth):
219         (WebCore::AutoTableLayout::insertSpanCell):
220         (WebCore::AutoTableLayout::layout):
221         (WebCore::AutoTableLayout::calcPercentages):
222         * rendering/AutoTableLayout.h: Added.
223         (WebCore::AutoTableLayout::totalPercent):
224         (WebCore::AutoTableLayout::Layout::Layout):
225         * rendering/FixedTableLayout.cpp: Added.
226         (WebCore::FixedTableLayout::FixedTableLayout):
227         (WebCore::FixedTableLayout::calcWidthArray):
228         (WebCore::FixedTableLayout::calcMinMaxWidth):
229         (WebCore::FixedTableLayout::layout):
230         * rendering/FixedTableLayout.h: Added.
231         * rendering/RenderTable.cpp:
232         * rendering/TableLayout.h: Added.
233         (WebCore::TableLayout::TableLayout):
234         * rendering/table_layout.cpp: Removed.
235         * rendering/table_layout.h: Removed.
236
237 2006-05-12  David Hyatt  <hyatt@apple.com>
238
239         Bug 8877.  Change form controls and the bridge entry points from the
240         Safari UI to use Font instead of FontData.
241
242         Reviewed by mjs
243
244         * bridge/mac/WebCoreStringTruncator.mm:
245         (stringWidth):
246         (truncateString):
247         (+[WebCoreStringTruncator widthOfString:font:]):
248         (+[WebCoreStringTruncator clear]):
249         * kwq/KWQComboBox.mm:
250         (QComboBox::sizeHint):
251         * kwq/KWQLineEdit.mm:
252         (QLineEdit::sizeForCharacterWidth):
253         * kwq/KWQListBox.mm:
254         (itemTextRenderer):
255         (groupLabelTextRenderer):
256         (QListBox::sizeForNumberOfLines):
257         (QListBox::clearCachedTextRenderers):
258         (-[KWQTableView drawRow:clipRect:]):
259         * platform/Font.cpp:
260         (WebCore::Font::drawSimpleText):
261         (WebCore::Font::drawText):
262         * platform/Font.h:
263         (WebCore::TextStyle::disableRoundingHacks):
264         (WebCore::TextStyle::setRTL):
265         * platform/FontData.h:
266         * platform/FontFallbackList.h:
267         * platform/FontPlatformData.h:
268         (WebCore::FontPlatformData::syntheticOblique):
269         * platform/Pen.h:
270         * platform/mac/FontData.mm:
271         (WebCore::FontData::smallCapsFontData):
272         (WebCore::findSubstituteRenderer):
273         * platform/mac/FontMac.mm:
274         (WebCore::FontFallbackList::setPlatformFont):
275         (WebCore::m_wordSpacing):
276         (WebCore::Font::drawComplexText):
277         * platform/mac/WebCoreTextRenderer.mm:
278         (WebCoreDrawTextAtPoint):
279         (WebCoreTextFloatWidth):
280         * platform/win/FontWin.cpp:
281         (WebCore::Font::drawText):
282         * rendering/InlineTextBox.cpp:
283         (WebCore::InlineTextBox::positionForOffset):
284
285 2006-05-12  Eric Seidel  <eseidel@apple.com>
286
287         Reviewed by kevin.
288
289         Move render_button to RenderButton.
290         Various small style cleanup.
291
292         * WebCore.xcodeproj/project.pbxproj:
293         * html/HTMLButtonElement.cpp:
294         * html/HTMLElement.cpp:
295         * html/HTMLGenericFormElement.cpp:
296         * html/HTMLInputElement.cpp:
297         * platform/mac/WebCoreTextArea.mm:
298         * rendering/RenderApplet.h:
299         * rendering/RenderBox.cpp:
300         * rendering/RenderButton.cpp: Added.
301         (WebCore::RenderButton::RenderButton):
302         (WebCore::RenderButton::addChild):
303         (WebCore::RenderButton::removeChild):
304         * rendering/RenderButton.h: Added.
305         * rendering/RenderEmptyApplet.h:
306         * rendering/RenderHTMLCanvas.h:
307         * rendering/RenderTreeAsText.cpp:
308         * rendering/render_button.cpp: Removed.
309         * rendering/render_button.h: Removed.
310         * rendering/table_layout.cpp:
311         (WebCore::FixedTableLayout::FixedTableLayout):
312         (WebCore::FixedTableLayout::calcWidthArray):
313         (WebCore::FixedTableLayout::calcMinMaxWidth):
314         (WebCore::FixedTableLayout::layout):
315         (WebCore::AutoTableLayout::AutoTableLayout):
316         (WebCore::AutoTableLayout::recalcColumn):
317         (WebCore::AutoTableLayout::fullRecalc):
318         (WebCore::AutoTableLayout::calcMinMaxWidth):
319         (WebCore::AutoTableLayout::calcEffectiveWidth):
320         (WebCore::AutoTableLayout::insertSpanCell):
321         (WebCore::AutoTableLayout::layout):
322         * rendering/table_layout.h:
323         (WebCore::TableLayout::TableLayout):
324         (WebCore::AutoTableLayout::totalPercent):
325         (WebCore::AutoTableLayout::Layout::Layout):
326
327 2006-05-12  Eric Seidel  <eseidel@apple.com>
328
329         Reviewed by mjs.
330
331         Split render_frames.* render_replaced.* and html_baseimpl.* into separate files (one class per file).
332         http://bugzilla.opendarwin.org/show_bug.cgi?id=8878
333
334         * WebCore.xcodeproj/project.pbxproj:
335         * bindings/js/kjs_html.cpp:
336         (KJS::JSHTMLDocumentProtoFunc::callAsFunction):
337         (KJS::JSHTMLDocument::namedItemGetter):
338         (KJS::JSHTMLDocument::getValueProperty):
339         (KJS::JSHTMLDocument::getOwnPropertySlot):
340         (KJS::JSHTMLDocument::putValueProperty):
341         (KJS::JSHTMLElement::formIndexGetter):
342         (KJS::JSHTMLElement::formNameGetter):
343         (KJS::JSHTMLElement::selectIndexGetter):
344         (KJS::JSHTMLElement::framesetNameGetter):
345         (KJS::JSHTMLElement::runtimeObjectGetter):
346         (KJS::JSHTMLElement::runtimeObjectPropertyGetter):
347         (KJS::JSHTMLElement::getOwnPropertySlot):
348         (KJS::JSHTMLElement::implementsCall):
349         (KJS::JSHTMLElement::callAsFunction):
350         (KJS::JSHTMLElement::getValueProperty):
351         (KJS::JSHTMLElement::toString):
352         (KJS::getForm):
353         (KJS::JSHTMLElement::pushEventHandlerScope):
354         (KJS::HTMLElementFunction::callAsFunction):
355         (KJS::JSHTMLElement::put):
356         (KJS::JSHTMLElement::selectSetter):
357         (KJS::JSHTMLElement::putValueProperty):
358         (KJS::toHTMLElement):
359         (KJS::toHTMLTableCaptionElement):
360         (KJS::toHTMLTableSectionElement):
361         (KJS::JSHTMLCollection::lengthGetter):
362         (KJS::JSHTMLCollection::indexGetter):
363         (KJS::JSHTMLCollection::nameGetter):
364         (KJS::JSHTMLCollection::getOwnPropertySlot):
365         (KJS::HTMLCollectionProtoFunc::callAsFunction):
366         (KJS::JSHTMLSelectCollection::selectedIndexGetter):
367         (KJS::JSHTMLSelectCollection::put):
368         (KJS::OptionConstructorImp::construct):
369         (KJS::getSelectHTMLCollection):
370         * bindings/objc/DOMHTML.mm:
371         * bridge/mac/FrameMac.mm:
372         (WebCore::FrameMac::createFrame):
373         * bridge/mac/WebCoreFrameBridge.mm:
374         (-[WebCoreFrameBridge copyRenderNode:copier:]):
375         * dom/Document.cpp:
376         (WebCore::widgetForNode):
377         * html/HTMLBodyElement.cpp: Added.
378         (WebCore::HTMLBodyElement::HTMLBodyElement):
379         (WebCore::HTMLBodyElement::parseMappedAttribute):
380         * html/HTMLBodyElement.h: Added.
381         * html/HTMLDocument.cpp:
382         * html/HTMLElementFactory.cpp:
383         * html/HTMLEmbedElement.cpp:
384         * html/HTMLFrameElement.cpp: Added.
385         (WebCore::HTMLFrameElement::isURLAllowed):
386         (WebCore::HTMLFrameElement::parseMappedAttribute):
387         (WebCore::HTMLFrameElement::setLocation):
388         * html/HTMLFrameElement.h: Added.
389         * html/HTMLFrameSetElement.cpp: Added.
390         (WebCore::HTMLFrameSetElement::HTMLFrameSetElement):
391         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
392         (WebCore::HTMLFrameSetElement::attach):
393         (WebCore::HTMLFrameSetElement::defaultEventHandler):
394         (WebCore::HTMLFrameSetElement::recalcStyle):
395         * html/HTMLFrameSetElement.h: Added.
396         * html/HTMLHeadElement.cpp: Added.
397         (WebCore::HTMLHeadElement::HTMLHeadElement):
398         * html/HTMLHeadElement.h: Added.
399         * html/HTMLHtmlElement.cpp: Added.
400         (WebCore::HTMLHtmlElement::HTMLHtmlElement):
401         * html/HTMLHtmlElement.h: Added.
402         * html/HTMLIFrameElement.cpp: Added.
403         (WebCore::HTMLIFrameElement::HTMLIFrameElement):
404         * html/HTMLIFrameElement.h: Added.
405         * html/HTMLObjectElement.cpp:
406         * html/HTMLParser.cpp:
407         * html/html_baseimpl.cpp: Removed.
408         * html/html_baseimpl.h: Removed.
409         * kwq/WebCoreAXObject.mm:
410         * page/Frame.cpp:
411         (WebCore::isFrameElement):
412         (WebCore::Frame::applyEditingStyleToBodyElement):
413         (WebCore::Frame::removeEditingStyleFromBodyElement):
414         (WebCore::Frame::applyEditingStyleToElement):
415         (WebCore::Frame::removeEditingStyleFromElement):
416         (WebCore::Frame::selectionRect):
417         (WebCore::Frame::isFrameSet):
418         (WebCore::scanForForm):
419         (WebCore::Frame::currentForm):
420         (WebCore::Frame::nodeInfoAtPoint):
421         (WebCore::Frame::adjustPageHeight):
422         (WebCore::Frame::frameForWidget):
423         (WebCore::Frame::forceLayoutWithPageWidthRange):
424         (WebCore::Frame::passWidgetMouseDownEventToWidget):
425         * page/FrameView.cpp:
426         * rendering/RenderFrame.cpp: Added.
427         (WebCore::RenderFrame::viewCleared):
428         * rendering/RenderFrame.h: Added.
429         * rendering/RenderFrameSet.cpp: Added.
430         (WebCore::RenderFrameSet::RenderFrameSet):
431         (WebCore::RenderFrameSet::~RenderFrameSet):
432         (WebCore::RenderFrameSet::layout):
433         (WebCore::RenderFrameSet::positionFrames):
434         (WebCore::RenderFrameSet::userResize):
435         (WebCore::RenderFrameSet::canResize):
436         (WebCore::RenderFrameSet::dump):
437         * rendering/RenderFrameSet.h: Added.
438         * rendering/RenderImage.h:
439         * rendering/RenderPart.cpp: Added.
440         (WebCore::RenderPart::RenderPart):
441         * rendering/RenderPart.h: Added.
442         * rendering/RenderPartObject.cpp: Added.
443         (WebCore::isURLAllowed):
444         (WebCore::RenderPartObject::updateWidget):
445         (WebCore::RenderPartObject::viewCleared):
446         * rendering/RenderPartObject.h: Added.
447         * rendering/RenderReplaced.cpp: Added.
448         (WebCore::RenderReplaced::selectionColor):
449         * rendering/RenderReplaced.h: Added.
450         * rendering/RenderWidget.cpp: Added.
451         (WebCore::RenderWidget::deleteWidget):
452         * rendering/RenderWidget.h: Added.
453         * rendering/render_form.h:
454         * rendering/render_frames.cpp: Removed.
455         * rendering/render_frames.h: Removed.
456         * rendering/render_replaced.cpp: Removed.
457         * rendering/render_replaced.h: Removed.
458
459 2006-05-12  Eric Seidel  <eseidel@apple.com>
460
461         Reviewed by beth.
462
463         Split html_headimpl.* into separate files (one per class)
464         http://bugzilla.opendarwin.org/show_bug.cgi?id=8875
465
466         * WebCore.xcodeproj/project.pbxproj:
467         * bindings/js/kjs_css.cpp:
468         * bindings/js/kjs_html.cpp:
469         (KJS::JSHTMLElement::headGetter):
470         (KJS::JSHTMLElement::linkGetter):
471         * bindings/objc/DOMCSS.mm:
472         (+[DOMCounter _counterWith:]):
473         (-[DOMCounter finalize]):
474         (-[DOMCounter _DOMStyleSheet]):
475         (-[DOMStyleSheet _initWithStyleSheet:]):
476         (-[DOMStyleSheetList dealloc]):
477         (-[DOMStyleSheetList finalize]):
478         (-[DOMStyleSheetList _styleSheetList]):
479         (-[DOMStyleSheetList _initWithStyleSheetList:]):
480         (-[DOMCSSStyleSheet _CSSStyleSheet]):
481         (-[DOMMediaList dealloc]):
482         (-[DOMMediaList finalize]):
483         (-[DOMMediaList _mediaList]):
484         (-[DOMMediaList _initWithMediaList:]):
485         (-[DOMCSSRuleList dealloc]):
486         (-[DOMCSSRuleList finalize]):
487         (-[DOMCSSRuleList _ruleList]):
488         (-[DOMCSSRuleList _initWithRuleList:]):
489         (-[DOMCSSRule dealloc]):
490         (-[DOMCSSRule finalize]):
491         (-[DOMCSSRule _rule]):
492         (-[DOMCSSRule _initWithRule:]):
493         (-[DOMCSSStyleRule _styleRule]):
494         (-[DOMCSSMediaRule _mediaRule]):
495         (-[DOMCSSFontFaceRule _fontFaceRule]):
496         (-[DOMCSSPageRule _pageRule]):
497         (-[DOMCSSImportRule _importRule]):
498         (-[DOMCSSCharsetRule _importRule]):
499         (-[DOMCSSStyleDeclaration dealloc]):
500         (-[DOMCSSStyleDeclaration finalize]):
501         (-[DOMCSSStyleDeclaration _initWithStyleDeclaration:]):
502         (-[DOMCSSStyleDeclaration _styleDeclaration]):
503         (-[DOMCSSValue dealloc]):
504         (-[DOMCSSValue finalize]):
505         (-[DOMCSSValue _value]):
506         (-[DOMCSSValue _initWithValue:]):
507         (-[DOMCSSPrimitiveValue _primitiveValue]):
508         (-[DOMCSSValueList _valueList]):
509         (getWrapperForRGB):
510         (setWrapperForRGB):
511         (removeWrapperForRGB):
512         (-[DOMRGBColor _initWithRGB:]):
513         (-[DOMRect dealloc]):
514         (-[DOMRect finalize]):
515         (-[DOMRect _rect]):
516         (-[DOMRect _initWithRect:]):
517         (-[DOMCounter dealloc]):
518         (-[DOMCounter _counter]):
519         (-[DOMCounter _initWithCounter:]):
520         (-[DOMObject sheet]):
521         * bindings/objc/DOMHTML.mm:
522         (-[DOMHTMLCollection dealloc]):
523         (-[DOMHTMLCollection finalize]):
524         (-[DOMHTMLCollection _collection]):
525         (-[DOMHTMLCollection _initWithCollection:]):
526         (-[DOMHTMLOptionsCollection dealloc]):
527         (-[DOMHTMLOptionsCollection finalize]):
528         (-[DOMHTMLOptionsCollection _initWithOptionsCollection:]):
529         (-[DOMHTMLOptionsCollection _optionsCollection]):
530         (+[DOMHTMLElement _elementWith:]):
531         (-[DOMHTMLElement _HTMLElement]):
532         (-[DOMHTMLDocument _HTMLDocument]):
533         (-[DOMHTMLHtmlElement _HTMLHtmlElement]):
534         (-[DOMHTMLHeadElement _headElement]):
535         (-[DOMHTMLLinkElement _linkElement]):
536         (-[DOMHTMLTitleElement _titleElement]):
537         (-[DOMHTMLMetaElement _metaElement]):
538         (-[DOMHTMLBaseElement _baseElement]):
539         (-[DOMHTMLStyleElement _styleElement]):
540         (-[DOMHTMLBodyElement _bodyElement]):
541         (-[DOMHTMLFormElement _formElement]):
542         (+[DOMHTMLFormElement _formElementWith:]):
543         (-[DOMHTMLIsIndexElement _isIndexElement]):
544         (-[DOMHTMLSelectElement _selectElement]):
545         (-[DOMHTMLOptGroupElement _optGroupElement]):
546         (-[DOMHTMLOptionElement _optionElement]):
547         (-[DOMHTMLInputElement _inputElement]):
548         (-[DOMHTMLTextAreaElement _textAreaElement]):
549         (-[DOMHTMLButtonElement _buttonElement]):
550         (-[DOMHTMLLabelElement _labelElement]):
551         (-[DOMHTMLLabelElement form]):
552         (-[DOMHTMLFieldSetElement _fieldSetElement]):
553         (-[DOMHTMLLegendElement _legendElement]):
554         (-[DOMHTMLUListElement _uListElement]):
555         (-[DOMHTMLOListElement _oListElement]):
556         (-[DOMHTMLDListElement _dListElement]):
557         (-[DOMHTMLDirectoryElement _directoryListElement]):
558         (-[DOMHTMLMenuElement _menuListElement]):
559         (-[DOMHTMLLIElement _liElement]):
560         (-[DOMHTMLQuoteElement _quoteElement]):
561         (-[DOMHTMLDivElement _divElement]):
562         (-[DOMHTMLParagraphElement _paragraphElement]):
563         (-[DOMHTMLHeadingElement _headingElement]):
564         (-[DOMHTMLPreElement _preElement]):
565         (-[DOMHTMLBRElement _BRElement]):
566         (-[DOMHTMLBaseFontElement _baseFontElement]):
567         (-[DOMHTMLFontElement _fontElement]):
568         (-[DOMHTMLHRElement _HRElement]):
569         (-[DOMHTMLModElement _modElement]):
570         (-[DOMHTMLAnchorElement _anchorElement]):
571         (-[DOMHTMLImageElement _imageElement]):
572         (-[DOMHTMLObjectElement _objectElement]):
573         (-[DOMHTMLParamElement _paramElement]):
574         (-[DOMHTMLMapElement _mapElement]):
575         (-[DOMHTMLAreaElement _areaElement]):
576         (-[DOMHTMLScriptElement _scriptElement]):
577         (+[DOMHTMLTableCaptionElement _tableCaptionElementWith:]):
578         (-[DOMHTMLTableCaptionElement _tableCaptionElement]):
579         (+[DOMHTMLTableSectionElement _tableSectionElementWith:]):
580         (-[DOMHTMLTableSectionElement _tableSectionElement]):
581         (-[DOMHTMLTableElement createTHead]):
582         (-[DOMHTMLTableElement createTFoot]):
583         (-[DOMHTMLTableElement createCaption]):
584         (-[DOMHTMLTableElement insertRow:]):
585         (+[DOMHTMLTableElement _tableElementWith:]):
586         (-[DOMHTMLTableElement _tableElement]):
587         (-[DOMHTMLTableColElement _tableColElement]):
588         (-[DOMHTMLTableRowElement _tableRowElement]):
589         (-[DOMHTMLTableRowElement insertCell:]):
590         (+[DOMHTMLTableCellElement _tableCellElementWith:]):
591         (-[DOMHTMLTableCellElement _tableCellElement]):
592         (-[DOMHTMLFrameSetElement _frameSetElement]):
593         (-[DOMHTMLFrameElement _frameElement]):
594         (-[DOMHTMLIFrameElement _IFrameElement]):
595         (-[DOMHTMLEmbedElement _embedElement]):
596         (viewForElement):
597         * bridge/mac/FrameMac.mm:
598         (WebCore::FrameMac::searchForLabelsAboveCell):
599         (WebCore::FrameMac::searchForLabelsBeforeElement):
600         (WebCore::FrameMac::createFrame):
601         (WebCore::FrameMac::passMouseDownEventToWidget):
602         (WebCore::FrameMac::passSubframeEventToSubframe):
603         (WebCore::FrameMac::passWheelEventToChildWidget):
604         (WebCore::FrameMac::fileWrapperForElement):
605         (WebCore::listParent):
606         (WebCore::FrameMac::attributedString):
607         (WebCore::FrameMac::shouldBeginEditing):
608         (WebCore::FrameMac::shouldEndEditing):
609         (WebCore::FrameMac::setMarkedTextRange):
610         * dom/Document.cpp:
611         * dom/xml_tokenizer.cpp:
612         * html/HTMLBaseElement.cpp: Added.
613         (WebCore::HTMLBaseElement::removedFromDocument):
614         (WebCore::HTMLBaseElement::process):
615         * html/HTMLBaseElement.h: Added.
616         * html/HTMLDocument.cpp:
617         * html/HTMLElementFactory.cpp:
618         * html/HTMLLinkElement.cpp: Added.
619         (WebCore::HTMLLinkElement::HTMLLinkElement):
620         (WebCore::HTMLLinkElement::process):
621         * html/HTMLLinkElement.h: Added.
622         * html/HTMLMetaElement.cpp: Added.
623         (WebCore::HTMLMetaElement::HTMLMetaElement):
624         (WebCore::HTMLMetaElement::parseMappedAttribute):
625         (WebCore::HTMLMetaElement::process):
626         (WebCore::HTMLMetaElement::setContent):
627         (WebCore::HTMLMetaElement::setHttpEquiv):
628         (WebCore::HTMLMetaElement::setName):
629         * html/HTMLMetaElement.h: Added.
630         * html/HTMLParser.cpp:
631         * html/HTMLScriptElement.cpp: Added.
632         (WebCore::HTMLScriptElement::HTMLScriptElement):
633         (WebCore::HTMLScriptElement::parseMappedAttribute):
634         (WebCore::HTMLScriptElement::evaluateScript):
635         * html/HTMLScriptElement.h: Added.
636         * html/HTMLStyleElement.cpp: Added.
637         (WebCore::HTMLStyleElement::HTMLStyleElement):
638         * html/HTMLStyleElement.h: Added.
639         * html/HTMLTitleElement.cpp: Added.
640         (WebCore::HTMLTitleElement::HTMLTitleElement):
641         (WebCore::HTMLTitleElement::text):
642         (WebCore::HTMLTitleElement::setText):
643         * html/HTMLTitleElement.h: Added.
644         * html/html_headimpl.cpp: Removed.
645         * html/html_headimpl.h: Removed.
646         * loader/CachedCSSStyleSheet.h:
647         * rendering/RenderTableCell.cpp:
648         (WebCore::RenderTableCell::updateFromElement):
649         * rendering/RenderTableCol.cpp:
650         (WebCore::RenderTableCol::updateFromElement):
651
652 2006-05-12  Eric Seidel  <eseidel@apple.com>
653
654         Reviewed by beth.
655
656         Split out html_tableimpl.* into multiple files (one per class)
657         http://bugzilla.opendarwin.org/show_bug.cgi?id=8873
658
659         * WebCore.xcodeproj/project.pbxproj:
660         * html/HTMLTableCaptionElement.cpp: Added.
661         (WebCore::HTMLTableCaptionElement::HTMLTableCaptionElement):
662         * html/HTMLTableCaptionElement.h: Added.
663         * html/HTMLTableCellElement.cpp: Added.
664         (WebCore::HTMLTableCellElement::HTMLTableCellElement):
665         * html/HTMLTableCellElement.h: Added.
666         * html/HTMLTableColElement.cpp: Added.
667         (WebCore::HTMLTableColElement::HTMLTableColElement):
668         (WebCore::HTMLTableColElement::endTagRequirement):
669         (WebCore::HTMLTableColElement::tagPriority):
670         (WebCore::HTMLTableColElement::checkDTD):
671         * html/HTMLTableColElement.h: Added.
672         * html/HTMLTableElement.cpp: Added.
673         (WebCore::HTMLTableElement::HTMLTableElement):
674         (WebCore::HTMLTableElement::setCaption):
675         (WebCore::HTMLTableElement::setTHead):
676         (WebCore::HTMLTableElement::setTFoot):
677         (WebCore::HTMLTableElement::setTBody):
678         (WebCore::HTMLTableElement::createTHead):
679         (WebCore::HTMLTableElement::deleteTHead):
680         (WebCore::HTMLTableElement::createTFoot):
681         (WebCore::HTMLTableElement::deleteTFoot):
682         (WebCore::HTMLTableElement::createCaption):
683         (WebCore::HTMLTableElement::deleteCaption):
684         (WebCore::HTMLTableElement::insertRow):
685         (WebCore::HTMLTableElement::deleteRow):
686         (WebCore::HTMLTableElement::addChild):
687         (WebCore::HTMLTableElement::parseMappedAttribute):
688         (WebCore::HTMLTableElement::attach):
689         * html/HTMLTableElement.h: Added.
690         * html/HTMLTablePartElement.cpp: Added.
691         (WebCore::HTMLTablePartElement::parseMappedAttribute):
692         * html/HTMLTablePartElement.h: Added.
693         * html/HTMLTableRowElement.cpp: Added.
694         (WebCore::HTMLTableRowElement::HTMLTableRowElement):
695         (WebCore::HTMLTableRowElement::rowIndex):
696         * html/HTMLTableRowElement.h: Added.
697         * html/HTMLTableSectionElement.cpp: Added.
698         (WebCore::HTMLTableSectionElement::insertRow):
699         * html/HTMLTableSectionElement.h: Added.
700         * html/html_tableimpl.cpp: Removed.
701         * html/html_tableimpl.h: Removed.
702
703 2006-05-10  Eric Seidel  <eseidel@apple.com>
704
705         Reviewed by mjs & adele.
706
707         Split html_objectimpl.* into multiple files (one per class)
708         http://bugzilla.opendarwin.org/show_bug.cgi?id=8836
709
710         * WebCore.xcodeproj/project.pbxproj:
711         * bindings/js/kjs_dom.cpp:
712         (KJS::DOMNamedNodeMap::lengthGetter):
713         (KJS::DOMNamedNodeMap::indexGetter):
714         (KJS::DOMNamedNodeMap::nameGetter):
715         (KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
716         (KJS::getRuntimeObject):
717         * bindings/js/kjs_html.cpp:
718         * html/HTMLAppletElement.cpp: Added.
719         * html/HTMLAppletElement.h: Added.
720         * html/HTMLElementFactory.cpp:
721         * html/HTMLEmbedElement.cpp: Added.
722         (WebCore::HTMLEmbedElement::HTMLEmbedElement):
723         (WebCore::HTMLEmbedElement::getInstance):
724         (WebCore::HTMLEmbedElement::parseMappedAttribute):
725         * html/HTMLEmbedElement.h: Added.
726         * html/HTMLNameCollection.cpp:
727         (WebCore::HTMLNameCollection::traverseNextItem):
728         * html/HTMLObjectElement.cpp: Added.
729         (WebCore::HTMLObjectElement::getInstance):
730         (WebCore::HTMLObjectElement::form):
731         (WebCore::HTMLObjectElement::parseMappedAttribute):
732         (WebCore::HTMLObjectElement::updateDocNamedItem):
733         * html/HTMLObjectElement.h: Added.
734         * html/HTMLParamElement.cpp: Added.
735         * html/HTMLParamElement.h: Added.
736         * html/HTMLParser.cpp:
737         * html/HTMLPlugInElement.cpp: Added.
738         * html/HTMLPlugInElement.h: Added.
739         * html/html_objectimpl.cpp: Removed.
740         * html/html_objectimpl.h: Removed.
741         * page/Frame.cpp:
742         (WebCore::Frame::handleFallbackContent):
743         * rendering/RenderApplet.cpp:
744         * rendering/render_frames.cpp:
745         (WebCore::RenderPartObject::updateWidget):
746
747 2006-05-12  Darin Adler  <darin@apple.com>
748
749         Reviewed by Adele.
750
751         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8521
752           crash bringing up context menu with CSS generated content
753
754         * bridge/mac/FrameMac.mm: (WebCore::FrameMac::sendContextMenuEvent):
755         Added a null check.
756
757         * manual-tests/context-click-generated-content.html: Added.
758
759 2006-05-12  Darin Adler  <darin@apple.com>
760
761         Reviewed by Adele.
762
763         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8715
764           REGRESSION: Caret to the right of an image is a big black rectangle.
765
766         * rendering/RenderBox.cpp: (WebCore::RenderBox::caretRect): Move caret to the
767         right side of the rect when the offset is non-zero, rather than expanding it.
768
769         * manual-tests/caret-image.html: Added.
770
771 2006-05-12  Mitz Pettel  <opendarwin.org@mitzpettel.com>
772
773         Reviewed and landed by Anders.
774         
775         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8866
776           REGRESSION: Incorrect caret position in RTL text
777
778         Test: fast/text/international/rtl-caret.html
779
780         * rendering/InlineTextBox.cpp:
781         (WebCore::InlineTextBox::positionForOffset): Added missing m_toAdd argument.
782
783 2006-05-12  David Hyatt  <hyatt@apple.com>
784
785         Bug 8864. Lift WebCoreTextStyle up into the API (as TextStyle).
786
787         Reviewed by mjs
788
789         * platform/Font.cpp:
790         (WebCore::m_finalRoundingWidth):
791         (WebCore::WidthIterator::advance):
792         (WebCore::Font::width):
793         (WebCore::Font::drawSimpleText):
794         (WebCore::Font::drawText):
795         (WebCore::Font::floatWidth):
796         (WebCore::Font::floatWidthForSimpleText):
797         * platform/Font.h:
798         (WebCore::TextStyle::m_attemptFontSubstitution):
799         (WebCore::TextStyle::tabWidth):
800         (WebCore::TextStyle::xPos):
801         (WebCore::TextStyle::padding):
802         (WebCore::TextStyle::rtl):
803         (WebCore::TextStyle::ltr):
804         (WebCore::TextStyle::directionalOverride):
805         (WebCore::TextStyle::applyRunRounding):
806         (WebCore::TextStyle::applyWordRounding):
807         (WebCore::TextStyle::attemptFontSubstitution):
808         (WebCore::Font::operator==):
809         * platform/GraphicsContext.cpp:
810         (WebCore::GraphicsContext::drawText):
811         (WebCore::GraphicsContext::drawHighlightForText):
812         * platform/GraphicsContext.h:
813         * platform/mac/FontMac.mm:
814         (WebCore::overrideLayoutOperation):
815         (WebCore::ATSULayoutParameters::initialize):
816         (WebCore::Font::selectionRectForText):
817         (WebCore::Font::drawComplexText):
818         (WebCore::Font::floatWidthForComplexText):
819         (WebCore::Font::offsetForPosition):
820         * rendering/InlineTextBox.cpp:
821         (WebCore::InlineTextBox::selectionRect):
822         (WebCore::InlineTextBox::paint):
823         (WebCore::InlineTextBox::paintSelection):
824         (WebCore::InlineTextBox::paintMarkedTextBackground):
825         (WebCore::InlineTextBox::paintTextMatchMarker):
826         (WebCore::InlineTextBox::offsetForPosition):
827         (WebCore::InlineTextBox::positionForOffset):
828         * rendering/RenderText.cpp:
829         (WebCore::RenderText::widthFromCache):
830         (WebCore::RenderText::calcMinMaxWidth):
831         (WebCore::RenderText::width):
832         * rendering/RenderTextField.cpp:
833         (WebCore::RenderTextField::calcMinMaxWidth):
834         * rendering/render_line.cpp:
835         (WebCore::EllipsisBox::paint):
836
837 2006-05-11  Alexey Proskuryakov  <ap@nypop.com>
838
839         Reviewed by Darin.
840
841         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8770
842           XMLHttpRequest should strip CR/LF characters from the URL
843
844         Test: fast/loader/url-strip-cr-lf-tab.html
845
846         * platform/KURL.cpp:
847         (appendEscapingBadChars): Strip CR, LF and TAB, as Firefox and IE do.
848
849 2006-05-11  David Hyatt  <hyatt@apple.com>
850
851         Remove the misspelling drawing code from Font and FontData.  Implement it
852         natively in GraphicContext instead.
853
854         Reviewed by maciej
855
856         * platform/FontData.h:
857         * platform/GraphicsContext.cpp:
858         * platform/GraphicsContext.h:
859         * platform/cairo/GraphicsContextCairo.cpp:
860         (WebCore::GraphicsContext::drawLineForMisspelling):
861         * platform/mac/FontData.mm:
862         * platform/mac/FontMac.mm:
863         * platform/mac/GraphicsContextMac.mm:
864         (WebCore::GraphicsContext::drawLineForMisspelling):
865         * platform/win/FontWin.cpp:
866         * rendering/InlineTextBox.cpp:
867         (WebCore::InlineTextBox::paintSpellingMarker):
868
869 2006-05-11  David Hyatt  <hyatt@apple.com>
870
871         Remove drawLineForText from the Font API.  Implement it natively in
872         the two GraphicsContexts (CG and Cairo) instead.
873
874         Reviewed by maciej
875
876         * platform/Font.h:
877         * platform/FontData.h:
878         * platform/GraphicsContext.cpp:
879         * platform/GraphicsContext.h:
880         * platform/cairo/GraphicsContextCairo.cpp:
881         (WebCore::GraphicsContext::drawLineForText):
882         * platform/cg/GraphicsContextCG.cpp:
883         (WebCore::GraphicsContext::drawLineForText):
884         * platform/mac/FontData.mm:
885         * platform/mac/FontMac.mm:
886         * platform/win/FontWin.cpp:
887         (WebCore::Font::drawLineForText):
888         * rendering/InlineTextBox.cpp:
889         (WebCore::InlineTextBox::paintDecoration):
890         (WebCore::InlineTextBox::paintMarkedTextUnderline):
891         * rendering/render_line.cpp:
892         (WebCore::InlineFlowBox::paintDecorations):
893
894 2006-05-11  Steve Falkenburg  <sfalken@apple.com>
895
896         Reviewed by eric.
897
898         Fix last fix.
899
900         * dom/QualifiedName.h:
901         (WebCore::QualifiedName::QualifiedName):
902
903 2006-05-11  Steve Falkenburg  <sfalken@apple.com>
904
905         Reviewed by eric.
906
907         Fix crash on static constructors builds at exit due to qualified name default constructor not
908         initializing m_impl.
909
910         * dom/QualifiedName.cpp:
911         (WebCore::QualifiedName::deref):
912
913 2006-05-11  Mitz Pettel  <opendarwin.org@mitzpettel.com>
914
915         Reviewed by hyatt
916
917         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8851
918           REGRESSION: RTL text shifted to the right
919
920         Already covered by several tests in fast/text
921
922         * platform/Font.h:
923         (WebCore::TextRun::TextRun): Added length parameter.
924         * rendering/InlineTextBox.cpp: Pass the length to the TextRun constructor.
925         (WebCore::InlineTextBox::selectionRect):
926         (WebCore::InlineTextBox::paint):
927         (WebCore::InlineTextBox::paintSelection):
928         (WebCore::InlineTextBox::paintMarkedTextBackground):
929         (WebCore::InlineTextBox::paintTextMatchMarker):
930         (WebCore::InlineTextBox::offsetForPosition):
931         (WebCore::InlineTextBox::positionForOffset):
932         * rendering/RenderText.cpp:
933         (WebCore::RenderText::widthFromCache): Pass length and from instead of from and to
934         to the TextRun constructor.
935         (WebCore::RenderText::width): Ditto.
936
937 2006-05-11  David Hyatt  <hyatt@apple.com>
938
939         Fix a regression from the TextRun landing.  Delete the characters in
940         the adjustedRun, not the ones in the original run!
941
942         Reviewed by beth
943
944         * platform/mac/FontMac.mm:
945         (WebCore::Font::drawComplexText):
946
947 2006-05-10  Justin Garcia  <justin.garcia@apple.com>
948
949         Reviewed by thatcher, levi
950
951         * editing/ReplaceSelectionCommand.cpp:
952         (WebCore::ReplaceSelectionCommand::doApply):
953         Removed a use fragment.hasMoreThanOneBlock to decide if the paragraph containing the
954         position pasted into must be split to avoid block nesting.  We now split unnecessarily
955         some times, but the end merge cleans up for us.
956
957 2006-05-11  David Hyatt  <hyatt@apple.com>
958
959         This patch makes drawHighlightForText a completely cross-platform method
960         implemented by the GraphicsContext.  The platform-specific implementations
961         of the method in the Font class have been eliminated.
962
963         Reviewed by andersca
964
965         * platform/Font.h:
966         * platform/FontData.h:
967         Remove the drawHighlight methods.  Change the selectionRect method in
968         Font to return a FloatRect so that the GraphicsContext can do an accurate
969         fill.
970
971         * platform/GraphicsContext.cpp:
972         (WebCore::GraphicsContext::drawHighlightForText):
973         Implement the drawHighlightFunction in terms of the cross-platform
974         Font selectionRect functions and a new float-based fillRect graphics context
975         function.
976
977         * platform/GraphicsContext.h:
978         * platform/cairo/GraphicsContextCairo.cpp:
979         (WebCore::GraphicsContext::fillRect):
980         * platform/cg/GraphicsContextCG.cpp:
981         (WebCore::GraphicsContext::fillRect):
982         Add the new float-based fillRect function for Cairo and CG.
983
984         * platform/mac/FontData.mm:
985         (WebCore::CG_draw):
986         (WebCore::ATSU_draw):
987         Removed the CG and ATSU drawHighlight methods.  Remove the drawing of
988         the background from the deprecated draw methods (they'll be removed
989         soon).
990
991         * platform/mac/FontMac.mm:
992         (WebCore::Font::selectionRectForText):
993         * platform/win/FontWin.cpp:
994         (WebCore::Font::selectionRectForText):
995         Change selectionRectForText to return a FloatRect instead of an IntRect,
996         so that the GraphicsContext can do a precise fill.
997
998         * rendering/InlineTextBox.cpp:
999         (WebCore::InlineTextBox::selectionRect):
1000         (WebCore::InlineTextBox::positionForOffset):
1001         Modify the callers who expect an int-based selection rect so that they call
1002         enclosingIntRect.
1003
1004 2006-05-11  Darin Adler  <darin@apple.com>
1005
1006         Reviewed by Adele.
1007
1008         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8743
1009           REGRESSION: focus() on input field selects all text within it
1010           (was: cannot select cities on British Rail reservation site)
1011
1012         Test: fast/forms/double-focus.html
1013
1014         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::focus):
1015         Changed to only call setFocusNode, select, and revealSelection
1016         if the element is not already focused. Also changed to use return
1017         a bit more rather than else.
1018
1019 2006-05-11  Darin Adler  <darin@apple.com>
1020
1021         Reviewed by Tim Hatcher (earlier version).
1022
1023         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8821
1024           use the preprocessor for IDL files
1025
1026         * bindings/scripts/IDLParser.pm: Invoke the preprocessor via the "gcc"
1027         driver script, passing "-E" so we only preprocess, "-P" so we don't get
1028         "#line" directives, and "-x c++" so we handle both C and C++ comments.
1029         Removed the code to eliminate comments since the preprocessor handles that.
1030         * css/make-css-file-arrays.pl: This already invoked the preprocessor, but
1031         updated it to do the same way as above.
1032
1033 2006-05-11  Anders Carlsson  <acarlsson@apple.com>
1034
1035         Reviewed by Darin.
1036
1037         http://bugzilla.opendarwin.org/show_bug.cgi?id=7838
1038         Add support for mozilla-style node constructors as properties of the window object
1039         
1040         * DerivedSources.make:
1041         * WebCore.xcodeproj/project.pbxproj:
1042         Add new generated files.
1043         
1044         * bindings/js/JSCanvasRenderingContext2DBase.cpp:
1045         (WebCore::JSCanvasRenderingContext2DBaseProtoFunc::callAsFunction):
1046         * bindings/js/JSHTMLElementWrapperFactory.cpp:
1047         (WebCore::createJSWrapper):
1048         Specify the KJS namespace for JSHTMLElmement.
1049                 
1050         * bindings/js/kjs_dom.cpp:
1051         (KJS::toJS):
1052         Create a WebCore::JSHTMLDocument for document nodes. Also, create
1053         JSDocumentFragments for document fragments (instead of plain node objects).
1054         
1055         * bindings/js/kjs_html.cpp:
1056         (KJS::JSHTMLDocumentProtoFunc::callAsFunction):
1057         (KJS::JSHTMLDocument::JSHTMLDocument):
1058         (KJS::JSHTMLDocument::getOwnPropertySlot):
1059         Add a prototype for JSHTMLDocument and move all functions there.
1060         
1061         (KJS::JSHTMLElement::JSHTMLElement):
1062         (KJS::JSHTMLElement::getOwnPropertySlot):
1063         Update since JSHTMLElement now inherits from WebCore::JSHTMLElement.
1064         
1065         (KJS::JSHTMLElement::getValueProperty):
1066         (KJS::JSHTMLElement::putValueProperty):
1067         Remove title setter and getter. Those are autogenerated now.
1068         
1069         * bindings/js/kjs_html.h:
1070         (KJS::JSHTMLElement::):
1071         Inherit from WebCore::JSHTMLElement. Clarify the inheritance chain.
1072         
1073         * bindings/scripts/CodeGeneratorJS.pm:
1074         Always generate a prototype object, regardless of whether the object has any functions or
1075         constants.
1076         
1077         Use the type of generator attributes to determine what constructor to use. This is useful for
1078         the XMLDocument property in DOMWindow.idl, since that's just an alias for the Document constructor.
1079         
1080         * dom/DocumentFragment.idl: Added.        
1081         * html/HTMLDocument.idl: Added.
1082         * html/HTMLElement.idl: Added.
1083         
1084         * page/DOMWindow.idl:
1085         Add constructors for DocumentFragment, HTMLElement, HTMLDocument and XMLDocument. XMLDocument is just
1086         an alias for the Document constructor.
1087         
1088 2006-05-11  David Hyatt  <hyatt@apple.com>
1089
1090         Bug 8845.  Define a TextRun (similar to the old WebCoreTextRun) and
1091         make it the new API for Font and GraphicsContext when drawing/measuring
1092         text.
1093
1094         Reviewed by andersca
1095
1096         * platform/Font.cpp:
1097         (WebCore::m_finalRoundingWidth):
1098         (WebCore::WidthIterator::advance):
1099         (WebCore::WidthIterator::normalizeVoicingMarks):
1100         (WebCore::Font::width):
1101         (WebCore::Font::canUseGlyphCache):
1102         (WebCore::Font::drawSimpleText):
1103         (WebCore::Font::drawText):
1104         (WebCore::Font::floatWidth):
1105         (WebCore::Font::floatWidthForSimpleText):
1106         * platform/Font.h:
1107         (WebCore::TextRun::m_to):
1108         (WebCore::TextRun::operator[]):
1109         (WebCore::TextRun::data):
1110         (WebCore::TextRun::adjustFrom):
1111         (WebCore::TextRun::adjustTo):
1112         (WebCore::TextRun::characters):
1113         (WebCore::TextRun::length):
1114         (WebCore::TextRun::from):
1115         (WebCore::TextRun::to):
1116         * platform/GraphicsContext.cpp:
1117         (WebCore::GraphicsContext::drawText):
1118         (WebCore::GraphicsContext::drawHighlightForText):
1119         * platform/GraphicsContext.h:
1120         * platform/mac/FontMac.mm:
1121         (WebCore::addDirectionalOverride):
1122         (WebCore::overrideLayoutOperation):
1123         (WebCore::ATSULayoutParameters::initialize):
1124         (WebCore::Font::selectionRectForText):
1125         (WebCore::Font::drawComplexText):
1126         (WebCore::Font::drawHighlightForText):
1127         (WebCore::Font::floatWidthForComplexText):
1128         (WebCore::Font::checkSelectionPoint):
1129         * platform/win/FontWin.cpp:
1130         (WebCore::hackishExtentForString):
1131         (WebCore::Font::floatWidth):
1132         (WebCore::Font::drawText):
1133         (WebCore::Font::drawHighlightForText):
1134         (WebCore::Font::selectionRectForText):
1135         (WebCore::Font::checkSelectionPoint):
1136         * rendering/InlineTextBox.cpp:
1137         (WebCore::InlineTextBox::selectionRect):
1138         (WebCore::InlineTextBox::paint):
1139         (WebCore::InlineTextBox::paintSelection):
1140         (WebCore::InlineTextBox::paintMarkedTextBackground):
1141         (WebCore::InlineTextBox::paintTextMatchMarker):
1142         (WebCore::InlineTextBox::offsetForPosition):
1143         (WebCore::InlineTextBox::positionForOffset):
1144         * rendering/RenderBlock.cpp:
1145         (WebCore::stripTrailingSpace):
1146         * rendering/RenderFlexibleBox.cpp:
1147         (WebCore::RenderFlexibleBox::layoutVerticalBox):
1148         * rendering/RenderImage.cpp:
1149         (WebCore::RenderImage::imageChanged):
1150         (WebCore::RenderImage::paint):
1151         * rendering/RenderText.cpp:
1152         (WebCore::RenderText::cacheWidths):
1153         (WebCore::RenderText::widthFromCache):
1154         (WebCore::RenderText::trimmedMinMaxWidth):
1155         (WebCore::RenderText::calcMinMaxWidth):
1156         (WebCore::RenderText::width):
1157         * rendering/RenderTextField.cpp:
1158         (WebCore::RenderTextField::calcMinMaxWidth):
1159         * rendering/bidi.cpp:
1160         (WebCore::RenderBlock::tabWidth):
1161         (WebCore::RenderBlock::checkLinesForTextOverflow):
1162         * rendering/render_line.cpp:
1163         (WebCore::EllipsisBox::paint):
1164         * rendering/render_list.cpp:
1165         (WebCore::RenderListMarker::paint):
1166         (WebCore::RenderListMarker::calcMinMaxWidth):
1167         (WebCore::RenderListMarker::getRelativeMarkerRect):
1168
1169 2006-05-10  Justin Garcia  <justin.garcia@apple.com>
1170
1171         Reviewed by darin
1172
1173         * editing/ReplaceSelectionCommand.cpp:
1174         (WebCore::ReplaceSelectionCommand::doApply):
1175         Removed the code to find out if we must later add smart replace whitespace.  We can 
1176         wait until we've done the insertion to figure it out, and the position sampled (startPos)
1177         to make the decision about trailing whitespace was wrong.
1178         Changed the order that work is done during a paste: 1) Insert everything 2) Do one of
1179         the following: a) handle a trailing interchange newline, b) uncollapse the last incoming
1180         br if it has been collapsed because of quirks mode, c) do an end merge 3) Add smart replace
1181         whitespace (2 and 3 were reversed because the end merge must happen before we can know
1182         whether or not we need to add a trailing space).
1183         Don't do an end merge if the last node inserted was a br because the end merge will 
1184         clobber it.
1185         
1186         (WebCore::ReplaceSelectionCommand::removeEndBRIfNeeded):
1187         brs where [br, 0] is at the end of a block and not at the start of a paragraph
1188         are the ones that are collapsed because of quirks mode.
1189
1190 2006-05-10  David Hyatt  <hyatt@apple.com>
1191
1192         Rename isSpace to treatAsSpace.  Move it and the rounding hack function into
1193         Font and make them static methods (inlined in the header).  Make the rounding
1194         hack character table a static member as well.  Remove the redundant space/rounding
1195         functions from FontData.mm.
1196
1197         Reviewed by darin
1198
1199         * platform/Font.cpp:
1200         (WebCore::):
1201         (WebCore::m_finalRoundingWidth):
1202         (WebCore::WidthIterator::advance):
1203         * platform/Font.h:
1204         (WebCore::Font::treatAsSpace):
1205         (WebCore::Font::isRoundingHackCharacter):
1206         * platform/mac/FontData.mm:
1207         (WebCore::overrideLayoutOperation):
1208         (WebCore::createATSULayoutParameters):
1209         (WebCore::initializeWidthIterator):
1210         (WebCore::advanceWidthIterator):
1211         * platform/mac/FontMac.mm:
1212         (WebCore::overrideLayoutOperation):
1213         (WebCore::ATSULayoutParameters::initialize):
1214
1215 2006-05-10  Darin Adler  <darin@apple.com>
1216
1217         * WebCore: Removed an extra WebCore subtree that somehow got checked in.
1218
1219 2006-05-10  David Carson <dacarson@gmail.com>
1220
1221         - Fix for bug 8833. Removed inline keyword from functions declared
1222         in .mm and .cpp files. inline function code needs to reside in the
1223         header file for the linker to find the code. 
1224         http://www.parashift.com/c++-faq-lite/inline-functions.html#faq-9.7
1225
1226         Reviewed by Darin, landed by Timothy.
1227
1228         * platform/Font.cpp:
1229         (WebCore::isSpace):
1230         * platform/mac/FontData.mm:
1231         (WebCore::widthForGlyph):
1232         (WebCore::isRoundingHackCharacter):
1233         (WebCore::glyphForCharacter):
1234
1235 2006-05-10  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1236
1237         Reviewed and landed by Anders.
1238
1239         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8830
1240           REGRESSION: Words render on top of each other when fallback font is used
1241
1242         Already covered by several pixel tests in fast/text
1243
1244         * platform/Font.cpp:
1245         (WebCore::Font::drawSimpleText):
1246
1247 2006-05-10  David Hyatt  <hyatt@apple.com>
1248
1249         Fix for bug 8809, lift the Mac-specific WebTextRenderer code for
1250         drawing and measuring of runs up into the Font class.  The fast code
1251         path is in Font.cpp and is designed to be mostly cross-platform.  The
1252         slow code path is in FontMac.cpp and is Mac-specific.
1253
1254         Reviewed by darin
1255
1256         * WebCore.xcodeproj/project.pbxproj:
1257         * platform/Font.cpp:
1258         (WebCore::isSpace):
1259         (WebCore::):
1260         (WebCore::isRoundingHackCharacter):
1261         (WebCore::m_finalRoundingWidth):
1262         (WebCore::WidthIterator::advance):
1263         (WebCore::WidthIterator::normalizeVoicingMarks):
1264         (WebCore::Font::primaryFont):
1265         (WebCore::Font::setAlwaysUseComplexPath):
1266         (WebCore::Font::canUseGlyphCache):
1267         (WebCore::Font::drawSimpleText):
1268         (WebCore::Font::drawText):
1269         (WebCore::Font::floatWidth):
1270         (WebCore::Font::floatWidthForSimpleText):
1271         * platform/Font.h:
1272         * platform/FontData.h:
1273         (WebCore::FontData::platformData):
1274         * platform/GlyphBuffer.h: Added.
1275         (WebCore::GlyphBuffer::GlyphBuffer):
1276         (WebCore::GlyphBuffer::isEmpty):
1277         (WebCore::GlyphBuffer::size):
1278         (WebCore::GlyphBuffer::glyphs):
1279         (WebCore::GlyphBuffer::advances):
1280         (WebCore::GlyphBuffer::fontDataAt):
1281         (WebCore::GlyphBuffer::swap):
1282         (WebCore::GlyphBuffer::glyphAt):
1283         (WebCore::GlyphBuffer::advanceAt):
1284         (WebCore::GlyphBuffer::add):
1285         * platform/mac/FontData.mm:
1286         (WebCore::isSpace):
1287         (WebCore::isRoundingHackCharacter):
1288         (WebCore::FontData::widthForGlyph):
1289         (WebCore::m_ATSUMirrors):
1290         (WebCore::FontData::xHeight):
1291         (WebCore::FontData::smallCapsFontData):
1292         (WebCore::findSubstituteFont):
1293         (WebCore::rendererForAlternateFont):
1294         (WebCore::findSubstituteRenderer):
1295         (WebCore::FontData::findSubstituteFontData):
1296         (WebCore::computeWidthForSpace):
1297         (WebCore::FontData::updateGlyphMapEntry):
1298         (WebCore::extendGlyphMap):
1299         (WebCore::extendWidthMap):
1300         (WebCore::createATSULayoutParameters):
1301         (WebCore::FontData::glyphForCharacter):
1302         (WebCore::advanceWidthIterator):
1303         (WebCore::shouldUseATSU):
1304         * platform/mac/FontMac.mm:
1305         (WebCore::ATSULayoutParameters::m_padPerSpace):
1306         (WebCore::addDirectionalOverride):
1307         (WebCore::initializeATSUStyle):
1308         (WebCore::overrideLayoutOperation):
1309         (WebCore::ATSULayoutParameters::initialize):
1310         (WebCore::disposeATSULayoutParameters):
1311         (WebCore::Font::drawComplexText):
1312         (WebCore::Font::floatWidthForComplexText):
1313         (WebCore::Font::drawGlyphs):
1314         * platform/mac/WebCoreTextRenderer.mm:
1315         (WebCoreSetAlwaysUseATSU):
1316
1317 2006-05-10  Darin Adler  <darin@apple.com>
1318
1319         - another try at fixing the Windows build
1320
1321         * platform/win/FontWin.cpp: (WebCore::getFontData): Use characters()
1322         instead of unicode().
1323
1324 == Rolled over to ChangeLog-2006-05-10 ==