1 2006-05-13 Alexey Proskuryakov <ap@nypop.com>
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.
11 2006-05-13 Alexey Proskuryakov <ap@nypop.com>
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.
16 * rendering/RootInlineBox.cpp:
17 (WebCore::RootInlineBox::adjustPosition): Adjust m_selectionTop
18 and m_selectionBottom.
19 * rendering/render_line.cpp: Removed.
21 2006-05-13 Rob Buis <buis@kde.org>
23 Reviewed by Darin, landed by ap.
25 Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8132
26 CSS parser sometimes accepts real number as integer
28 Add a boolean variable per css value to catch whether values
29 are specified as floats or integers.
31 Test: fast/css/rgb-float.html
35 (WebCore::CSSParser::validUnit):
36 (WebCore::CSSParser::lex):
40 2006-05-13 Sam Weinig <sam.weinig@gmail.com>
42 Reviewed by Hyatt, landed by ap.
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()
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.
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
60 (WebCore::RenderBox::calcAbsoluteVerticalReplaced): ditto.
61 * rendering/RenderBox.h:
63 2006-05-12 David Hyatt <hyatt@apple.com>
65 Bug 8880, remove the remaining drawing/hit testing code from
71 (WebCore::m_finalRoundingWidth):
72 (WebCore::WidthIterator::advanceOneCharacter):
73 (WebCore::Font::selectionRectForText):
74 (WebCore::Font::selectionRectForSimpleText):
75 (WebCore::Font::offsetForPosition):
76 (WebCore::Font::offsetForPositionForSimpleText):
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):
87 2006-05-12 Kevin M. Ollivier <kevino@theolliviers.com>
93 * dom/Node.h: Add missing include for DeprecatedString.
95 2006-05-12 Mitz Pettel <opendarwin.org@mitzpettel.com>
99 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8835
100 REGRESSION: Line moves but selection highlight stays behind
102 Test: fast/dynamic/selection-highlight-adjust.html
104 * rendering/render_line.cpp:
105 (WebCore::RootInlineBox::adjustPosition): Adjust m_selectionTop
106 and m_selectionBottom.
108 2006-05-12 Timothy Hatcher <timothy@apple.com>
112 http://bugzilla.opendarwin.org/show_bug.cgi?id=7156
113 Bug 7156: TinyMCE: Links are actually activated in editable area, not editable.
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.
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):
129 2006-05-12 Eric Seidel <eseidel@apple.com>
133 Split out html_inlineimpl.* into separate files (one per class).
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:
163 2006-05-12 Eric Seidel <eseidel@apple.com>
169 * rendering/InlineFlowBox.cpp:
170 * rendering/RootInlineBox.cpp:
172 2006-05-12 Eric Seidel <eseidel@apple.com>
176 Split out render_line.* into separate files (one per class).
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.
205 2006-05-12 Eric Seidel <eseidel@apple.com>
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.
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.
237 2006-05-12 David Hyatt <hyatt@apple.com>
239 Bug 8877. Change form controls and the bridge entry points from the
240 Safari UI to use Font instead of FontData.
244 * bridge/mac/WebCoreStringTruncator.mm:
247 (+[WebCoreStringTruncator widthOfString:font:]):
248 (+[WebCoreStringTruncator clear]):
249 * kwq/KWQComboBox.mm:
250 (QComboBox::sizeHint):
251 * kwq/KWQLineEdit.mm:
252 (QLineEdit::sizeForCharacterWidth):
255 (groupLabelTextRenderer):
256 (QListBox::sizeForNumberOfLines):
257 (QListBox::clearCachedTextRenderers):
258 (-[KWQTableView drawRow:clipRect:]):
260 (WebCore::Font::drawSimpleText):
261 (WebCore::Font::drawText):
263 (WebCore::TextStyle::disableRoundingHacks):
264 (WebCore::TextStyle::setRTL):
265 * platform/FontData.h:
266 * platform/FontFallbackList.h:
267 * platform/FontPlatformData.h:
268 (WebCore::FontPlatformData::syntheticOblique):
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):
285 2006-05-12 Eric Seidel <eseidel@apple.com>
289 Move render_button to RenderButton.
290 Various small style cleanup.
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):
327 2006-05-12 Eric Seidel <eseidel@apple.com>
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
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):
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:]):
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:
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.
459 2006-05-12 Eric Seidel <eseidel@apple.com>
463 Split html_headimpl.* into separate files (one per class)
464 http://bugzilla.opendarwin.org/show_bug.cgi?id=8875
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]):
511 (removeWrapperForRGB):
512 (-[DOMRGBColor _initWithRGB:]):
513 (-[DOMRect dealloc]):
514 (-[DOMRect finalize]):
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]):
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):
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):
652 2006-05-12 Eric Seidel <eseidel@apple.com>
656 Split out html_tableimpl.* into multiple files (one per class)
657 http://bugzilla.opendarwin.org/show_bug.cgi?id=8873
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.
703 2006-05-10 Eric Seidel <eseidel@apple.com>
705 Reviewed by mjs & adele.
707 Split html_objectimpl.* into multiple files (one per class)
708 http://bugzilla.opendarwin.org/show_bug.cgi?id=8836
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.
742 (WebCore::Frame::handleFallbackContent):
743 * rendering/RenderApplet.cpp:
744 * rendering/render_frames.cpp:
745 (WebCore::RenderPartObject::updateWidget):
747 2006-05-12 Darin Adler <darin@apple.com>
751 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8521
752 crash bringing up context menu with CSS generated content
754 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::sendContextMenuEvent):
757 * manual-tests/context-click-generated-content.html: Added.
759 2006-05-12 Darin Adler <darin@apple.com>
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.
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.
769 * manual-tests/caret-image.html: Added.
771 2006-05-12 Mitz Pettel <opendarwin.org@mitzpettel.com>
773 Reviewed and landed by Anders.
775 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8866
776 REGRESSION: Incorrect caret position in RTL text
778 Test: fast/text/international/rtl-caret.html
780 * rendering/InlineTextBox.cpp:
781 (WebCore::InlineTextBox::positionForOffset): Added missing m_toAdd argument.
783 2006-05-12 David Hyatt <hyatt@apple.com>
785 Bug 8864. Lift WebCoreTextStyle up into the API (as TextStyle).
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):
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):
837 2006-05-11 Alexey Proskuryakov <ap@nypop.com>
841 - http://bugzilla.opendarwin.org/show_bug.cgi?id=8770
842 XMLHttpRequest should strip CR/LF characters from the URL
844 Test: fast/loader/url-strip-cr-lf-tab.html
847 (appendEscapingBadChars): Strip CR, LF and TAB, as Firefox and IE do.
849 2006-05-11 David Hyatt <hyatt@apple.com>
851 Remove the misspelling drawing code from Font and FontData. Implement it
852 natively in GraphicContext instead.
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):
869 2006-05-11 David Hyatt <hyatt@apple.com>
871 Remove drawLineForText from the Font API. Implement it natively in
872 the two GraphicsContexts (CG and Cairo) instead.
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):
894 2006-05-11 Steve Falkenburg <sfalken@apple.com>
900 * dom/QualifiedName.h:
901 (WebCore::QualifiedName::QualifiedName):
903 2006-05-11 Steve Falkenburg <sfalken@apple.com>
907 Fix crash on static constructors builds at exit due to qualified name default constructor not
910 * dom/QualifiedName.cpp:
911 (WebCore::QualifiedName::deref):
913 2006-05-11 Mitz Pettel <opendarwin.org@mitzpettel.com>
917 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8851
918 REGRESSION: RTL text shifted to the right
920 Already covered by several tests in fast/text
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.
937 2006-05-11 David Hyatt <hyatt@apple.com>
939 Fix a regression from the TextRun landing. Delete the characters in
940 the adjustedRun, not the ones in the original run!
944 * platform/mac/FontMac.mm:
945 (WebCore::Font::drawComplexText):
947 2006-05-10 Justin Garcia <justin.garcia@apple.com>
949 Reviewed by thatcher, levi
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.
957 2006-05-11 David Hyatt <hyatt@apple.com>
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.
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
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
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.
984 * platform/mac/FontData.mm:
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
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.
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
1004 2006-05-11 Darin Adler <darin@apple.com>
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)
1012 Test: fast/forms/double-focus.html
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.
1019 2006-05-11 Darin Adler <darin@apple.com>
1021 Reviewed by Tim Hatcher (earlier version).
1023 - http://bugzilla.opendarwin.org/show_bug.cgi?id=8821
1024 use the preprocessor for IDL files
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.
1033 2006-05-11 Anders Carlsson <acarlsson@apple.com>
1037 http://bugzilla.opendarwin.org/show_bug.cgi?id=7838
1038 Add support for mozilla-style node constructors as properties of the window object
1040 * DerivedSources.make:
1041 * WebCore.xcodeproj/project.pbxproj:
1042 Add new generated files.
1044 * bindings/js/JSCanvasRenderingContext2DBase.cpp:
1045 (WebCore::JSCanvasRenderingContext2DBaseProtoFunc::callAsFunction):
1046 * bindings/js/JSHTMLElementWrapperFactory.cpp:
1047 (WebCore::createJSWrapper):
1048 Specify the KJS namespace for JSHTMLElmement.
1050 * bindings/js/kjs_dom.cpp:
1052 Create a WebCore::JSHTMLDocument for document nodes. Also, create
1053 JSDocumentFragments for document fragments (instead of plain node objects).
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.
1061 (KJS::JSHTMLElement::JSHTMLElement):
1062 (KJS::JSHTMLElement::getOwnPropertySlot):
1063 Update since JSHTMLElement now inherits from WebCore::JSHTMLElement.
1065 (KJS::JSHTMLElement::getValueProperty):
1066 (KJS::JSHTMLElement::putValueProperty):
1067 Remove title setter and getter. Those are autogenerated now.
1069 * bindings/js/kjs_html.h:
1070 (KJS::JSHTMLElement::):
1071 Inherit from WebCore::JSHTMLElement. Clarify the inheritance chain.
1073 * bindings/scripts/CodeGeneratorJS.pm:
1074 Always generate a prototype object, regardless of whether the object has any functions or
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.
1080 * dom/DocumentFragment.idl: Added.
1081 * html/HTMLDocument.idl: Added.
1082 * html/HTMLElement.idl: Added.
1084 * page/DOMWindow.idl:
1085 Add constructors for DocumentFragment, HTMLElement, HTMLDocument and XMLDocument. XMLDocument is just
1086 an alias for the Document constructor.
1088 2006-05-11 David Hyatt <hyatt@apple.com>
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
1094 Reviewed by andersca
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):
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):
1169 2006-05-10 Justin Garcia <justin.garcia@apple.com>
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
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.
1190 2006-05-10 David Hyatt <hyatt@apple.com>
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.
1199 * platform/Font.cpp:
1201 (WebCore::m_finalRoundingWidth):
1202 (WebCore::WidthIterator::advance):
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):
1215 2006-05-10 Darin Adler <darin@apple.com>
1217 * WebCore: Removed an extra WebCore subtree that somehow got checked in.
1219 2006-05-10 David Carson <dacarson@gmail.com>
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
1226 Reviewed by Darin, landed by Timothy.
1228 * platform/Font.cpp:
1230 * platform/mac/FontData.mm:
1231 (WebCore::widthForGlyph):
1232 (WebCore::isRoundingHackCharacter):
1233 (WebCore::glyphForCharacter):
1235 2006-05-10 Mitz Pettel <opendarwin.org@mitzpettel.com>
1237 Reviewed and landed by Anders.
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
1242 Already covered by several pixel tests in fast/text
1244 * platform/Font.cpp:
1245 (WebCore::Font::drawSimpleText):
1247 2006-05-10 David Hyatt <hyatt@apple.com>
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.
1256 * WebCore.xcodeproj/project.pbxproj:
1257 * platform/Font.cpp:
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):
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:
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):
1317 2006-05-10 Darin Adler <darin@apple.com>
1319 - another try at fixing the Windows build
1321 * platform/win/FontWin.cpp: (WebCore::getFontData): Use characters()
1322 instead of unicode().
1324 == Rolled over to ChangeLog-2006-05-10 ==