1 2009-02-13 Darin Adler <darin@apple.com>
5 Fix broken tokenizer regression test that reflected a lifetime bug
6 in the document.write optimization. The test failure was trivial to
7 reproduce in COLLECT_ON_EVERY_ALLOCATION mode.
9 * bindings/js/JSHTMLDocumentCustom.cpp:
10 (WebCore::documentWrite): Convert strings to String rather than passing
11 the pointer and length to SegmentedString. The optimization is thus
12 mostly gone. However, there are two ways to bring it back: 1) Apply
13 the patch that makes UString and String share the same buffers.
14 2) Add a UString feature to SegmentedString; simple to do but might
15 risk slowing down normal document parsing.
17 2009-02-13 Adam Treat <adam.treat@torchmobile.com>
19 Caught by Darin Adler.
21 No reason to check m_tokenizer twice for 0 in a row.
24 (WebCore::Document::write):
26 2009-02-13 Lyon Chen <lyon.chen@torchmobile.com>
28 Reviewed by Dave Hyatt.
30 Take into account y() + height() when calculating getLowerRightCorner.
32 * dom/ContainerNode.cpp:
33 (WebCore::ContainerNode::getLowerRightCorner):
35 2009-02-13 Antti Koivisto <antti@apple.com>
37 Reviewed by Dave Hyatt.
39 Most of this code was in RenderBox, restore the copyright lines.
41 * rendering/RenderBoxModelObject.cpp:
42 * rendering/RenderBoxModelObject.h:
44 2009-02-13 David Hyatt <hyatt@apple.com>
46 Get rid of printBoxDecorations, since it is dead code.
48 Reviewed by Dan Bernstein
50 * rendering/RenderObject.h:
52 2009-02-13 Adam Treat <adam.treat@torchmobile.com>
54 Reviewed by Darin Adler.
56 https://bugs.webkit.org/show_bug.cgi?id=23952
57 Add Document::write overload which takes a SegmentedString since this
58 is what the tokenizer expects anyway. Modified JSHTMLDocument so it once
59 again calls Document::write instead of injecting the string directly into
60 the tokenizer. This ensures that all document.write's are funneled through
61 one method again, but should still be just as fast for JSHTMLDocumentCustom.
63 * bindings/js/JSHTMLDocumentCustom.cpp:
64 (WebCore::documentWrite):
66 (WebCore::Document::write):
69 2009-02-13 David Hyatt <hyatt@apple.com>
71 Reviewed by Simon Fraser
73 Remove updateWidgetPosition on RenderObject. Change RenderView's set of widgets
74 to have a tighter type: RenderWidget instead of RenderObject. Devirtualize
75 updateWidgetPosition, since all RenderWidgets (except for applets) are now
78 * rendering/RenderObject.cpp:
79 * rendering/RenderObject.h:
80 * rendering/RenderPart.cpp:
81 * rendering/RenderPart.h:
82 * rendering/RenderView.cpp:
83 (WebCore::RenderView::updateWidgetPositions):
84 (WebCore::RenderView::addWidget):
85 (WebCore::RenderView::removeWidget):
86 * rendering/RenderView.h:
87 * rendering/RenderWidget.cpp:
88 (WebCore::RenderWidget::updateWidgetPosition):
89 * rendering/RenderWidget.h:
91 2009-02-13 David Hyatt <hyatt@apple.com>
93 Reviewed by Eric Seidel
95 Remove isEditable() on RenderObject. It is dead code.
97 * rendering/RenderObject.cpp:
98 * rendering/RenderObject.h:
100 2009-02-13 David Hyatt <hyatt@apple.com>
102 Reviewed by Eric Seidel
104 Add isTextControl() to RenderObject. Patch call sites thats asked isTextField() || isTextArea() to just use
105 isTextControl() instead.
107 Add a toRenderTextControl converter for doing checked casting to RenderTextControls.
110 (WebCore::Document::setFocusedNode):
111 * dom/InputElement.cpp:
112 (WebCore::InputElement::updateSelectionRange):
113 * editing/ReplaceSelectionCommand.cpp:
114 (WebCore::ReplacementFragment::ReplacementFragment):
115 * editing/TextIterator.cpp:
116 (WebCore::TextIterator::handleReplacedElement):
117 * html/HTMLInputElement.cpp:
118 (WebCore::HTMLInputElement::selectionStart):
119 (WebCore::HTMLInputElement::selectionEnd):
120 (WebCore::HTMLInputElement::setSelectionStart):
121 (WebCore::HTMLInputElement::setSelectionEnd):
122 (WebCore::HTMLInputElement::select):
123 (WebCore::HTMLInputElement::defaultEventHandler):
124 (WebCore::HTMLInputElement::selection):
125 * html/HTMLTextAreaElement.cpp:
126 (WebCore::HTMLTextAreaElement::selectionStart):
127 (WebCore::HTMLTextAreaElement::selectionEnd):
128 (WebCore::HTMLTextAreaElement::setSelectionStart):
129 (WebCore::HTMLTextAreaElement::setSelectionEnd):
130 (WebCore::HTMLTextAreaElement::select):
131 (WebCore::HTMLTextAreaElement::setSelectionRange):
132 (WebCore::HTMLTextAreaElement::appendFormData):
133 (WebCore::HTMLTextAreaElement::updateValue):
134 (WebCore::HTMLTextAreaElement::selection):
135 * page/AccessibilityRenderObject.cpp:
136 (WebCore::AccessibilityRenderObject::isNativeTextControl):
137 (WebCore::AccessibilityRenderObject::text):
138 (WebCore::AccessibilityRenderObject::selectedText):
139 (WebCore::AccessibilityRenderObject::selectedTextRange):
140 (WebCore::AccessibilityRenderObject::setSelectedTextRange):
141 (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
142 (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
143 (WebCore::AccessibilityRenderObject::observableObject):
145 (WebCore::Frame::notifyRendererOfSelectionChange):
146 * rendering/RenderObject.h:
147 (WebCore::RenderObject::isTextControl):
148 (WebCore::objectIsRelayoutBoundary):
149 * rendering/RenderTextControl.h:
150 (WebCore::RenderTextControl::isTextControl):
151 (WebCore::toRenderTextControl):
152 * rendering/TextControlInnerElements.cpp:
153 (WebCore::TextControlInnerTextElement::defaultEventHandler):
154 * wml/WMLInputElement.cpp:
155 (WebCore::WMLInputElement::select):
156 (WebCore::WMLInputElement::defaultEventHandler):
157 (WebCore::WMLInputElement::isConformedToInputMask):
159 2009-02-13 David Hyatt <hyatt@apple.com>
161 Get rid of isEdited/setEdited on RenderObject. Devirtualize isEdited/setEdited on RenderTextControl.
162 Callers were already asking if the renderer was a text field (or a text area), so it was especially
163 pointless to waste a second virtual function call after making one just to determine the object type.
165 Reviewed by Simon Fraser
168 (WebCore::Document::setFocusedNode):
169 * html/HTMLInputElement.cpp:
170 (WebCore::HTMLInputElement::defaultEventHandler):
171 * rendering/RenderObject.h:
172 * rendering/RenderTextControl.h:
173 (WebCore::RenderTextControl::isEdited):
174 (WebCore::RenderTextControl::setEdited):
176 2009-02-13 Scott Violet <sky@google.com>
178 Reviewed by Eric Seidel.
180 https://bugs.webkit.org/show_bug.cgi?id=23934
181 Skia platform doesn't render text decoration shadows.
183 Makes Skia render text decoration shadows correctly. We weren't
184 preparing the SkPaint correctly and didn't have a couple of checks
185 CG has. Additionally makes the fillColor/strokeColor methods
188 This behavior is covered by existing layout tests (see bug for list).
190 * platform/graphics/chromium/FontChromiumWin.cpp:
191 (WebCore::Font::drawGlyphs):
192 (WebCore::Font::drawComplexText):
193 * platform/graphics/skia/GraphicsContextSkia.cpp:
194 (WebCore::GraphicsContext::drawLineForText):
195 * platform/graphics/skia/PlatformContextSkia.cpp:
196 (PlatformContextSkia::effectiveFillColor):
197 (PlatformContextSkia::effectiveStrokeColor):
198 * platform/graphics/skia/PlatformContextSkia.h:
200 2009-02-12 Darin Fisher <darin@chromium.org>
202 Reviewed by Eric Seidel.
204 https://bugs.webkit.org/show_bug.cgi?id=23944
205 KURLGoogle's pre-parsed canonicalSpec constructor should take a CString
208 * platform/KURLGoogle.cpp:
209 (WebCore::KURLGooglePrivate::setUtf8):
210 (WebCore::KURLGooglePrivate::setAscii):
211 (WebCore::KURLGooglePrivate::init):
212 (WebCore::KURLGooglePrivate::replaceComponents):
213 (WebCore::KURL::KURL):
214 * platform/KURLGooglePrivate.h:
216 2009-02-13 David Hyatt <hyatt@apple.com>
218 Remove leftmost/rightmost/lowestPosition from RenderObject. They only need to be called on boxes.
220 Reviewed by Dan Bernstein
222 * rendering/RenderBlock.cpp:
223 (WebCore::RenderBlock::lowestPosition):
224 (WebCore::RenderBlock::rightmostPosition):
225 (WebCore::RenderBlock::leftmostPosition):
226 * rendering/RenderLayer.cpp:
227 (WebCore::RenderLayer::computeScrollDimensions):
228 * rendering/RenderMedia.cpp:
229 (WebCore::RenderMedia::lowestPosition):
230 (WebCore::RenderMedia::rightmostPosition):
231 (WebCore::RenderMedia::leftmostPosition):
232 * rendering/RenderObject.h:
233 * rendering/RenderTableSection.cpp:
234 (WebCore::RenderTableSection::lowestPosition):
235 (WebCore::RenderTableSection::rightmostPosition):
236 (WebCore::RenderTableSection::leftmostPosition):
238 2009-02-12 Simon Fraser <simon.fraser@apple.com>
240 Fix build with ACCELERATED_COMPOSITING turned on.
242 toRenderBox()->x() asserts for a layer on an inline; use
243 m_owningLayer->renderBoxX() instead.
245 * rendering/RenderLayerBacking.cpp:
246 (WebCore::RenderLayerBacking::paintIntoLayer):
248 2009-02-12 Darin Adler <darin@apple.com>
250 Reviewed by Oliver Hunt.
252 Speed up document.write a bit.
254 * bindings/js/JSHTMLDocumentCustom.cpp:
255 (WebCore::documentWrite): Added. Uses SegmentedString to avoid conversion from
256 UString to String and to avoid appending strings. Also added code to handle
257 newlines efficiently.
258 (WebCore::JSHTMLDocument::write): Changed to use documentWrite.
259 (WebCore::JSHTMLDocument::writeln): Ditto.
262 (WebCore::Document::prepareToWrite): Added. Refactored the initialization part
263 of write into a separate function for use in the JavaScript binding.
264 (WebCore::Document::write): Changed to call prepareToWrite.
266 * dom/Document.h: Added declaration for prepareToWrite.
268 2009-02-13 Prasanth Ullattil <pullatti@trolltech.com>
270 Reviewed by Simon Hausmann.
272 Fixes crash in the Qt port on Windows with comboboxes
274 The focusWidget in the input context is not reset properly.
275 The QApplication::setFocusWidget() wont reset the IC if the reason is
276 PopupFocusReason, this is not ideal. For the time being we are going
277 to do this from webkit itself.
279 * platform/qt/QWebPopup.cpp:
280 (WebCore::QWebPopup::hidePopup):
282 2009-02-12 Kevin Ollivier <kevino@theolliviers.com>
284 wx build fix, typo while tweaking last patch for commit.
286 * platform/wx/wxcode/gtk/fontprops.cpp:
289 2009-02-12 miggilin <mr.diggilin@gmail.com>
291 Reviewed by Kevin Ollivier.
293 Use Cairo/PANGO to fix text measurements and implement proper
294 non-kerned text drawing on wxGTK.
296 https://bugs.webkit.org/show_bug.cgi?id=17727
298 * platform/graphics/GlyphBuffer.h:
299 * platform/graphics/wx/FontPlatformDataWx.cpp:
300 (WebCore::fontWeightToWxFontWeight):
301 * platform/graphics/wx/SimpleFontDataWx.cpp:
302 (WebCore::SimpleFontData::platformWidthForGlyph):
303 * platform/wx/wxcode/fontprops.h:
304 * platform/wx/wxcode/gtk/fontprops.cpp:
305 (wxFontProperties::wxFontProperties):
307 * platform/wx/wxcode/gtk/non-kerned-drawing.cpp:
308 (WebCore::pangoFontMap):
309 (WebCore::createPangoFontForFont):
310 (WebCore::createScaledFontForFont):
311 (WebCore::pango_font_get_glyph):
312 (WebCore::drawTextWithSpacing):
313 * platform/wx/wxcode/non-kerned-drawing.h:
315 2009-02-12 Chris Marrin <cmarrin@apple.com>
317 Reviewed by Simon Fraser
319 https://bugs.webkit.org/show_bug.cgi?id=23942
321 Hook up 3D CSS transforms to the accelerated compositor backend.
322 Not enabled by default.
324 * page/animation/AnimationBase.cpp:
325 (WebCore::blendFunc):
326 (WebCore::ensurePropertyMap):
327 * page/animation/CompositeAnimation.cpp:
328 (WebCore::CompositeAnimationPrivate::updateTransitions):
329 * page/animation/ImplicitAnimation.cpp:
330 (WebCore::ImplicitAnimation::willNeedService):
331 * page/animation/KeyframeAnimation.cpp:
332 (WebCore::KeyframeAnimation::willNeedService):
333 * platform/graphics/GraphicsLayer.cpp:
334 (WebCore::GraphicsLayer::TransformValueList::makeFunctionList):
335 (WebCore::GraphicsLayer::dumpProperties):
336 * platform/graphics/mac/GraphicsLayerCA.mm:
337 (WebCore::copyTransform):
338 (WebCore::getValueFunctionNameForTransformOperation):
339 (WebCore::GraphicsLayerCA::animateTransform):
340 * rendering/RenderBox.cpp:
341 (WebCore::RenderBox::updateBoxModelInfoFromStyle):
342 * rendering/RenderLayer.cpp:
343 (WebCore::RenderLayer::updateTransform):
344 (WebCore::RenderLayer::hasTransformStyle3D):
345 (WebCore::RenderLayer::hasPerspective):
346 (WebCore::RenderLayer::perspectiveTransform):
347 * rendering/RenderLayer.h:
348 * rendering/RenderLayerBacking.cpp:
349 (WebCore::RenderLayerBacking::updateGraphicsLayers):
350 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
351 (WebCore::RenderLayerBacking::computeTransformOrigin):
352 (WebCore::RenderLayerBacking::computePerspectiveOrigin):
353 * rendering/RenderLayerBacking.h:
354 * rendering/RenderLayerCompositor.cpp:
355 (WebCore::RenderLayerCompositor::has3DContent):
356 (WebCore::requiresCompositingLayerForTransform):
357 (WebCore::RenderLayerCompositor::requiresCompositingLayer):
358 (WebCore::RenderLayerCompositor::layerHas3DContent):
359 * rendering/RenderLayerCompositor.h:
361 2009-02-12 David Hyatt <hyatt@apple.com>
363 Reviewed by Eric Seidel
365 Get rid of containingBlockHeight(), since it had only one implementation (despite being virtual) and just returned
366 containingBlock()->availableHeight(). The latter reads better anyway. Rename containingBlockWidth() to
367 containingBlockWidthForContent() and move it to RenderBoxModelObject.
369 * rendering/RenderBlock.cpp:
370 (WebCore::RenderBlock::localCaretRect):
371 * rendering/RenderBox.cpp:
372 (WebCore::RenderBox::containingBlockWidthForContent):
373 (WebCore::RenderBox::calcWidth):
374 (WebCore::RenderBox::calcReplacedWidthUsing):
375 * rendering/RenderBox.h:
376 * rendering/RenderBoxModelObject.cpp:
377 (WebCore::RenderBoxModelObject::relativePositionOffsetX):
378 (WebCore::RenderBoxModelObject::relativePositionOffsetY):
379 (WebCore::RenderBoxModelObject::containingBlockWidthForContent):
380 * rendering/RenderBoxModelObject.h:
381 * rendering/RenderInline.cpp:
382 (WebCore::RenderInline::marginLeft):
383 (WebCore::RenderInline::marginRight):
384 * rendering/RenderObject.cpp:
385 * rendering/RenderObject.h:
386 * rendering/RenderSVGContainer.cpp:
387 (WebCore::RenderSVGContainer::calcReplacedWidth):
389 2009-02-12 Simon Fraser <simon.fraser@apple.com>
391 Fix non-Mac builds by adding Matrix3DTransformOperation.* and
392 PerspectiveTransformOperation.*. Cleaned out some cruft in
393 the WebCore.vcproj fle.
398 * WebCore.vcproj/WebCore.vcproj:
400 2009-02-12 David Smith <catfish.man@gmail.com>
402 Reviewed by Dave Hyatt.
404 Fix https://bugs.webkit.org/show_bug.cgi?id=23935
405 Nested :not() and non-simple selectors in :not() should be invalid
407 * css/CSSGrammar.y: Reject nested :not()
408 * css/CSSStyleSelector.cpp:
409 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): ASSERT() rather than checking, since the parser enforces it now
411 2009-02-12 Kevin Ollivier <kevino@theolliviers.com>
415 * WebCoreSources.bkl:
417 2009-02-12 Simon Fraser <simon.fraser@apple.com>
419 Fix build with ACCELERATED_COMPOSITING turned on.
421 Need to cast toRenderBox() in order to call overflowClipRect().
423 * rendering/RenderLayerBacking.cpp:
424 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
426 2009-02-12 Oliver Hunt <oliver@apple.com>
428 Reviewed by NOBODY (Build fix).
434 2009-02-12 David Hyatt <hyatt@apple.com>
436 Rename getOverflowClipRect and getClipRect to overflowClipRect and clipRect. Move them to RenderBox, since these methods
437 only apply to boxes. Devirtualize clipRect, since it was not subclassed. Move controlClip stuff to RenderBox also.
439 Reviewed by Simon Fraser
441 * editing/Editor.cpp:
442 (WebCore::Editor::insideVisibleArea):
443 * rendering/RenderBox.cpp:
444 (WebCore::RenderBox::overflowClipRect):
445 (WebCore::RenderBox::clipRect):
446 * rendering/RenderBox.h:
447 (WebCore::RenderBox::hasControlClip):
448 (WebCore::RenderBox::controlClipRect):
449 * rendering/RenderForeignObject.cpp:
450 (WebCore::RenderForeignObject::paint):
451 * rendering/RenderLayer.cpp:
452 (WebCore::RenderLayer::calculateClipRects):
453 (WebCore::RenderLayer::calculateRects):
454 * rendering/RenderLayerBacking.cpp:
455 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
456 * rendering/RenderObject.h:
457 (WebCore::RenderObject::hasClip):
458 (WebCore::RenderObject::hasOverflowClip):
459 * rendering/RenderTable.cpp:
460 (WebCore::RenderTable::overflowClipRect):
461 * rendering/RenderTable.h:
463 2009-02-12 Simon Fraser <simon.fraser@apple.com>
465 Fix build with ACCELERATED_COMPOSITING turned on (simple copy/paste error)
467 * platform/graphics/mac/GraphicsLayerCA.mm:
468 (WebCore::GraphicsLayerCA::setBasicAnimation):
470 2009-02-12 Julien Chaffraix <jchaffraix@webkit.org>
474 Release build fix when VIDEO is disabled (it should also
475 help the builds with WORKERS or XSLT disabled).
477 * bindings/js/JSDOMWindowBase.cpp:
478 (jsDOMWindowBaseAudio): Added an UNUSED_PARAM for exec and slot when
480 (jsDOMWindowBaseWorker): Ditto for WORKERS.
481 (jsDOMWindowBaseXSLTProcessor): Ditto for XSLT.
483 2009-02-12 Eric Carlson <eric.carlson@apple.com>
485 Reviewed by Simon Fraser.
487 https://bugs.webkit.org/show_bug.cgi?id=23923
488 Implement mediaPlayerVolumeChanged so a media engine can report autonomous volume changes.
489 Supporting this requires that we know when we are processing a media engine callback so
490 we don't turn around and tell the media player to change the volume when it is reporting
493 * html/HTMLMediaElement.cpp:
494 (WebCore::HTMLMediaElement::HTMLMediaElement): initialize m_processingMediaPlayerCallback
495 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): call begin/endProcessingMediaPlayerCallback
496 (WebCore::HTMLMediaElement::setNetworkState): logic split out of mediaPlayerNetworkStateChanged
497 to make it easier to maintain m_processingMediaPlayerCallback.
498 (WebCore::HTMLMediaElement::mediaPlayerReadyStateChanged): call begin/endProcessingMediaPlayerCallback
499 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Ditto.
500 (WebCore::HTMLMediaElement::mediaPlayerRepaint): Ditto.
501 (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged): New
502 (WebCore::HTMLMediaElement::updateVolume): Don't change media engine volume if we are processing
503 a callback from the engine.
504 * html/HTMLMediaElement.h:
505 (WebCore::HTMLMediaElement::processingMediaPlayerCallback): New, return true if (m_processingMediaPlayerCallback>0)
506 (WebCore::HTMLMediaElement::beginProcessingMediaPlayerCallback): New, increment m_processingMediaPlayerCallback
507 (WebCore::HTMLMediaElement::endProcessingMediaPlayerCallback): New, decrement m_processingMediaPlayerCallback
509 2009-02-12 Eric Carlson <eric.carlson@apple.com>
511 Reviewed by Simon Fraser.
513 Support MPEG content on Mac and Windows.
514 <rdar://problem/5917509>
515 https://bugs.webkit.org/show_bug.cgi?id=23495
517 Test: media/audio-mpeg-supported.html
519 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
520 (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
522 * platform/graphics/win/QTMovieWin.cpp:
523 (QTMovieWin::disableUnsupportedTracks):
525 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: fix typo added in r40925
527 2009-02-12 David Hyatt <hyatt@apple.com>
529 Reviewed by Sam Weinig
531 Move containsFloats, hasOverhangingFloats, shrinkToAvoidFloats and avoidsFloats down to
532 RenderBox, since these methods only apply to boxes.
534 * rendering/RenderBlock.cpp:
535 (WebCore::RenderBlock::collapseMargins):
536 (WebCore::RenderBlock::clearFloatsIfNeeded):
537 (WebCore::RenderBlock::layoutBlockChildren):
538 (WebCore::RenderBlock::clearFloats):
539 (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
540 (WebCore::RenderBlock::calcBlockPrefWidths):
541 * rendering/RenderBlock.h:
542 (WebCore::RenderBlock::containsFloats):
543 (WebCore::RenderBlock::hasOverhangingFloats):
544 * rendering/RenderBox.cpp:
545 (WebCore::RenderBox::shrinkToAvoidFloats):
546 (WebCore::RenderBox::avoidsFloats):
547 * rendering/RenderBox.h:
548 * rendering/RenderObject.cpp:
549 * rendering/RenderObject.h:
550 (WebCore::RenderObject::isFloatingOrPositioned):
551 * rendering/RenderView.h:
553 2009-02-12 Chris Marrin <cmarrin@apple.com>
555 Reviewed by Dave Hyatt
557 https://bugs.webkit.org/show_bug.cgi?id=23908
559 Added parsing of 3d transform functions and properties
560 (perspective, perspective-origin, transform-style-3d,
561 and backface-visibility).
563 Test: transforms/3d/cssmatrix-3d-interface.xhtml
565 * css/CSSComputedStyleDeclaration.cpp:
567 (WebCore::computedTransform):
568 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
569 * css/CSSMutableStyleDeclaration.cpp:
570 (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
572 (WebCore::CSSParser::parseValue):
573 (WebCore::CSSParser::parseFillProperty):
574 (WebCore::CSSParser::parseTransformOriginShorthand):
575 (WebCore::TransformOperationInfo::TransformOperationInfo):
576 (WebCore::CSSParser::parseTransform):
577 (WebCore::CSSParser::parseTransformOrigin):
578 (WebCore::CSSParser::parsePerspectiveOrigin):
580 * css/CSSPrimitiveValue.h:
581 (WebCore::CSSPrimitiveValue::isUnitTypeLength):
582 * css/CSSPropertyNames.in:
583 * css/CSSStyleSelector.cpp:
584 (WebCore::CSSStyleSelector::adjustRenderStyle):
585 (WebCore::convertToLength):
586 (WebCore::CSSStyleSelector::applyProperty):
587 (WebCore::CSSStyleSelector::mapFillSize):
588 (WebCore::CSSStyleSelector::mapFillXPosition):
589 (WebCore::CSSStyleSelector::mapFillYPosition):
590 (WebCore::getTransformOperationType):
591 (WebCore::CSSStyleSelector::createTransformOperations):
592 * css/CSSValueKeywords.in:
593 * css/WebKitCSSTransformValue.cpp:
594 (WebCore::WebKitCSSTransformValue::cssText):
595 * css/WebKitCSSTransformValue.h:
596 (WebCore::WebKitCSSTransformValue::):
597 * css/WebKitCSSTransformValue.idl:
598 * platform/graphics/transforms/Matrix3DTransformOperation.cpp:
599 * platform/graphics/transforms/Matrix3DTransformOperation.h:
600 * platform/graphics/transforms/PerspectiveTransformOperation.cpp:
601 * platform/graphics/transforms/PerspectiveTransformOperation.h:
602 * platform/graphics/transforms/RotateTransformOperation.cpp:
603 (WebCore::RotateTransformOperation::blend):
604 * platform/graphics/transforms/RotateTransformOperation.h:
605 (WebCore::RotateTransformOperation::RotateTransformOperation):
606 * platform/graphics/transforms/ScaleTransformOperation.h:
607 (WebCore::ScaleTransformOperation::ScaleTransformOperation):
608 * platform/graphics/transforms/TransformOperation.h:
609 (WebCore::TransformOperation::is3DOperation):
610 * platform/graphics/transforms/TransformOperations.h:
611 (WebCore::TransformOperations::has3DOperation):
612 * platform/graphics/transforms/TranslateTransformOperation.h:
613 (WebCore::TranslateTransformOperation::TranslateTransformOperation):
615 2009-02-12 Kevin Ollivier <kevino@theolliviers.com>
621 2009-02-12 Brady Eidson <beidson@apple.com>
623 Reviewed by Darin Adler
625 Fix potential ref-count or null-deref problems with C++ objects as Obj-C members.
627 * platform/mac/SharedBufferMac.mm: Change to use RefPtr<> instead of ref()/deref().
628 (-[WebCoreSharedBufferData dealloc]):
629 (-[WebCoreSharedBufferData finalize]):
630 (-[WebCoreSharedBufferData initWithSharedBuffer:]):
632 2009-02-12 David Hyatt <hyatt@apple.com>
634 Remove calcWidth from RenderObject. Nobody ever called it on RenderObjects.
636 Reviewed by Sam Weinig
638 * rendering/RenderObject.h:
640 2009-02-12 David Hyatt <hyatt@apple.com>
642 Reviewed by Mark Rowe
644 Fix for regression where form controls would paint yellow highlights. The containsComposition check needs to
645 null check node() now.
647 * rendering/InlineTextBox.cpp:
648 (WebCore::InlineTextBox::paint):
650 2009-02-12 Simon Fraser <simon.fraser@apple.com>
654 Change Animation::setDirection() to take the new enum value, and fix
657 Fix build error in MediaPlayerPrivateQTKit.h.
659 * css/CSSStyleSelector.cpp:
660 (WebCore::CSSStyleSelector::mapAnimationDirection):
661 * platform/animation/Animation.h:
662 (WebCore::Animation::setDirection):
663 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
665 2009-02-12 David Hyatt <hyatt@apple.com>
667 Reviewed by Simon Fraser
669 Remove the overrideSize methods from RenderObject. Devirtualize all of the accessors on RenderBox.
671 * rendering/RenderBox.h:
672 * rendering/RenderObject.h:
674 2009-02-12 Eric Carlson <eric.carlson@apple.com>
676 Darin Adler, Antti Koivisto, Holger Hans Peter Freyther
678 Bug 23797: A platform should be able to use more than one media engine for <video> and <audio>
679 https://bugs.webkit.org/show_bug.cgi?id=23797
681 * WebCore.xcodeproj/project.pbxproj: add MediaPlayerPrivate.h
683 * html/HTMLMediaElement.cpp:
684 (WebCore::HTMLMediaElement::load): selectMediaURL now also returns a MIME type, pass it to
685 MediaPlayer::load so it can choose the right media engine
686 (WebCore::HTMLMediaElement::selectMediaURL): renamed from pickMedia. use MIMETypeRegistry
687 functions to strip params from the url and extract the codecs parameter. call
688 MediaPlayer::supportsType to see if we can open the file since only a media engine can
689 answer questions about supported type+codecs.
690 * html/HTMLMediaElement.h:
692 * platform/MIMETypeRegistry.cpp:
693 (WebCore::MIMETypeRegistry::getParameterFromMIMEType): New, find and return a MIME type parameter
694 (WebCore::MIMETypeRegistry::stripParametersFromMIMEType): New, strip all parameters from a MIME type
695 * platform/MIMETypeRegistry.h:
697 * platform/graphics/MediaPlayer.cpp:
698 (WebCore::NullMediaPlayerPrivate::NullMediaPlayerPrivate):
699 (WebCore::NullMediaPlayerPrivate::load):
700 (WebCore::NullMediaPlayerPrivate::cancelLoad):
701 (WebCore::NullMediaPlayerPrivate::play):
702 (WebCore::NullMediaPlayerPrivate::pause):
703 (WebCore::NullMediaPlayerPrivate::naturalSize):
704 (WebCore::NullMediaPlayerPrivate::hasVideo):
705 (WebCore::NullMediaPlayerPrivate::setVisible):
706 (WebCore::NullMediaPlayerPrivate::duration):
707 (WebCore::NullMediaPlayerPrivate::currentTime):
708 (WebCore::NullMediaPlayerPrivate::seek):
709 (WebCore::NullMediaPlayerPrivate::seeking):
710 (WebCore::NullMediaPlayerPrivate::setEndTime):
711 (WebCore::NullMediaPlayerPrivate::setRate):
712 (WebCore::NullMediaPlayerPrivate::paused):
713 (WebCore::NullMediaPlayerPrivate::setVolume):
714 (WebCore::NullMediaPlayerPrivate::networkState):
715 (WebCore::NullMediaPlayerPrivate::readyState):
716 (WebCore::NullMediaPlayerPrivate::maxTimeSeekable):
717 (WebCore::NullMediaPlayerPrivate::maxTimeBuffered):
718 (WebCore::NullMediaPlayerPrivate::dataRate):
719 (WebCore::NullMediaPlayerPrivate::totalBytesKnown):
720 (WebCore::NullMediaPlayerPrivate::totalBytes):
721 (WebCore::NullMediaPlayerPrivate::bytesLoaded):
722 (WebCore::NullMediaPlayerPrivate::setRect):
723 (WebCore::NullMediaPlayerPrivate::paint):
724 (WebCore::createNullMediaPlayer):
725 Do nothing media player so MediaPlayer doesn't have to NULL check before calling current engine.
727 (WebCore::MediaPlayerFactory::MediaPlayerFactory): New, factory constructor.
728 (WebCore::installedMediaEngines): New, returns vector of all installed engines.
729 (WebCore::addMediaEngine): New, add a media engine to the cache.
730 (WebCore::chooseBestEngineForTypeAndCodecs): New, return an engine that might support a MIME type.
731 (WebCore::MediaPlayer::MediaPlayer): create NULL media player so we have a default. Initialize m_currentMediaEngine.
732 (WebCore::MediaPlayer::~MediaPlayer): don't need to delete m_private, it is now an OwnPtr.
733 (WebCore::MediaPlayer::load): Take MIME type as well as url, since we need it to find the right
734 media engine. If no MIME type is provided, try to devine one from the url. Choose a media engine
735 based on the MIME type and codecs parameter.
736 (WebCore::MediaPlayer::currentTime): Remove excess white space.
737 (WebCore::MediaPlayer::supportsType): Take codecs param as well as MIME type. Return enum so we can
738 indicate "maybe" condition.
739 (WebCore::MediaPlayer::getSupportedTypes): Build up list of MIME types by consulting all engines.
740 (WebCore::MediaPlayer::isAvailable): return true if any media engine is installed.
742 * platform/graphics/MediaPlayer.h:
743 (WebCore::MediaPlayer::):
744 (WebCore::MediaPlayer::frameView): accessor function.
746 * platform/graphics/MediaPlayerPrivate.h: New, declares abstract interface for media engines.
747 (WebCore::MediaPlayerPrivateInterface::~MediaPlayerPrivateInterface):
748 (WebCore::MediaPlayerPrivateInterface::totalBytesKnown):
750 * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Add support for engine factory
752 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
753 (WebCore::MediaPlayerPrivate::create): New, media engine factory function
754 (WebCore::MediaPlayerPrivate::registerMediaEngine): Register engine with MediaPlayer factory
755 (WebCore::MediaPlayerPrivate::load): URL is a const String.
756 (WebCore::MediaPlayerPrivate::duration): Declare const.
757 (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
758 (WebCore::MediaPlayerPrivate::hasVideo): Ditto.
759 (WebCore::MediaPlayerPrivate::networkState): Ditto.
760 (WebCore::MediaPlayerPrivate::readyState): Ditto.
761 (WebCore::MediaPlayerPrivate::maxTimeBuffered): Ditto.
762 (WebCore::MediaPlayerPrivate::maxTimeSeekable): Ditto.
763 (WebCore::MediaPlayerPrivate::maxTimeLoaded): Ditto.
764 (WebCore::MediaPlayerPrivate::bytesLoaded): Ditto.
765 (WebCore::MediaPlayerPrivate::totalBytesKnown): Ditto.
766 (WebCore::MediaPlayerPrivate::totalBytes): Ditto.
767 (WebCore::MediaPlayerPrivate::supportsType): Return MediaPlayer::SupportsType enum instead of bool.
768 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
769 (WebCore::MediaPlayerPrivate::isAvailable):
771 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
772 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
773 (WebCore::MediaPlayerPrivateQTKit::create): New, media engine factory function
774 (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): Register engine with MediaPlayer factory
775 (WebCore::MediaPlayerPrivate::createQTMovieView): don't access MediaPlayer->m_frameView directly,
776 use accessor function.
777 (WebCore::MediaPlayerPrivate::setUpVideoRendering): Ditto.
778 (WebCore::MediaPlayerPrivate::paint): Ditto.
779 (WebCore::mimeTypeCache): New.
780 (WebCore::MediaPlayerPrivate::getSupportedTypes): New, media engine factory function.
781 (WebCore::MediaPlayerPrivate::supportsType): return MediaPlayer::SupportsType enum instead of bool
782 (-[WebCoreMovieObserver initWithCallback:]): fix formatting
784 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
785 (WebCore::MediaPlayerPrivate::create):
786 (WebCore::MediaPlayerPrivate::registerMediaEngine):
787 (WebCore::MediaPlayerPrivate::supportsType):
788 (WebCore::MediaPlayerPrivate::load): URL is a const String.
789 * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
790 (WebCore::MediaPlayerPrivate::isAvailable):
792 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
793 (WebCore::MediaPlayerPrivate::create): New, media engine factory function
794 (WebCore::MediaPlayerPrivate::registerMediaEngine): New, register engine with MediaPlayer factory
795 (WebCore::MediaPlayerPrivate::load): URL is a const String.
796 (WebCore::MediaPlayerPrivate::paint): don't access MediaPlayer->m_frameView directly,
797 use accessor function.
798 (WebCore::mimeTypeCache): New.
799 (WebCore::MediaPlayerPrivateQTWin::getSupportedTypes): New, media engine factory function.
800 (WebCore::MediaPlayerPrivateQTWin::supportsType): return MediaPlayer::SupportsType enum instead of bool
801 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
803 2009-02-12 Julien Chaffraix <jchaffraix@webkit.org>
805 Reviewed by Darin Adler.
807 Test: fast/dom/prefixed-image-tag.xhtml
809 Bug 23915: Remove setPrefix work-around in Document::createElement(QualifiedName, bool)
811 Instead we now directly propage the QualifiedName inside the generated Factory.
813 Test: fast/dom/prefixed-image-tag.xhtml
816 (WebCore::Document::createElement): Removed the setPrefix work-around
817 and replaced it with an ASSERT to catch mistakes inside the Factory code.
818 Remove the unneeded ExceptionCode argument.
820 (WebCore::Document::createElementNS): Removed ExceptionCode argument.
821 * dom/Document.h: Updated the signature.
822 * dom/XMLTokenizerLibxml2.cpp:
823 (WebCore::XMLTokenizer::startElementNs): Removed ExceptionCode argument.
824 * dom/XMLTokenizerQt.cpp: Ditto.
825 (WebCore::XMLTokenizer::parseStartElement): Ditto.
827 * dom/make_names.pl: Implemented the QualifiedName propogation logic
830 2009-02-12 Simon Fraser <simon.fraser@apple.com>
832 Reviewed by Dave Hyatt
834 https://bugs.webkit.org/show_bug.cgi?id=23188
836 Define enum values for Animation::direction(), and one for
837 IterationCountInfinite to make the code more self-documenting.
839 Order the member vars of Animation to optimize packing.
841 * css/CSSComputedStyleDeclaration.cpp:
842 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
843 * platform/animation/Animation.cpp:
844 (WebCore::Animation::Animation):
845 (WebCore::Animation::operator=):
846 (WebCore::Animation::animationsMatch):
847 * platform/animation/Animation.h:
848 (WebCore::Animation::):
849 (WebCore::Animation::direction):
850 (WebCore::Animation::initialAnimationDirection):
851 * platform/graphics/mac/GraphicsLayerCA.mm:
852 (WebCore::GraphicsLayerCA::setBasicAnimation):
853 (WebCore::GraphicsLayerCA::setKeyframeAnimation):
855 2009-02-12 Christian Dywan <christian@twotoasts.de>
857 Reviewed by Holger Freyther.
859 * platform/network/soup/ResourceHandleSoup.cpp:
860 (WebCore::ResourceHandle::startHttp): Don't use O_CLOEXEC for now.
862 2009-02-12 Julien Chaffraix <jchaffraix@webkit.org>
864 Reviewed by Darin Adler.
866 Bug 23826: Potential bug with before/after rule while moving element from one document to another
868 Moved the document before/after toggle from the constructor to insertedIntoDocument.
870 Test: fast/css-generated-content/beforeAfter-interdocument.html
872 * html/HTMLQuoteElement.cpp:
873 (WebCore::HTMLQuoteElement::HTMLQuoteElement):
874 (WebCore::HTMLQuoteElement::insertedIntoDocument):
875 * html/HTMLQuoteElement.h:
877 2009-02-12 David Hyatt <hyatt@apple.com>
879 Reviewed by Simon Fraser
881 Fix for https://bugs.webkit.org/show_bug.cgi?id=23912
883 I have no idea why this broke. As far as I can tell the old code never should have worked in
884 the first place. Add code to handleWheelEvent that will find an enclosing renderer for a node
885 in order to attempt a wheel scroll.
887 * page/EventHandler.cpp:
888 (WebCore::EventHandler::handleWheelEvent):
890 2009-02-12 David Hyatt <hyatt@apple.com>
892 Move the functions that paint borders, box shadows and border images into RenderBoxModelObject. drawBorder and drawBorderArc, because they are used
893 for outlines as well as borders, need to stay in RenderObject. Rename them to drawLineForBoxSide and drawArcForBoxSide in order to reflect their
894 more generic use. Rename the BorderSide struct to BoxSide, since the concept of "side" is just a rectangle concept and not a border concept.
896 Reviewed by Simon Fraser
898 * rendering/InlineFlowBox.cpp:
899 (WebCore::InlineFlowBox::paintFillLayer):
900 (WebCore::InlineFlowBox::paintBoxShadow):
901 (WebCore::InlineFlowBox::paintBoxDecorations):
902 (WebCore::InlineFlowBox::paintMask):
903 * rendering/RenderBlock.cpp:
904 (WebCore::RenderBlock::paintColumns):
905 * rendering/RenderBoxModelObject.cpp:
906 (WebCore::RenderBoxModelObject::paintNinePieceImage):
907 (WebCore::RenderBoxModelObject::paintBorder):
908 (WebCore::RenderBoxModelObject::paintBoxShadow):
909 * rendering/RenderBoxModelObject.h:
910 * rendering/RenderFieldset.cpp:
911 (WebCore::RenderFieldset::paintBorderMinusLegend):
912 * rendering/RenderInline.cpp:
913 (WebCore::RenderInline::paintOutlineForLine):
914 * rendering/RenderObject.cpp:
915 (WebCore::RenderObject::drawLineForBoxSide):
916 (WebCore::RenderObject::drawArcForBoxSide):
917 (WebCore::RenderObject::paintOutline):
918 * rendering/RenderObject.h:
920 (WebCore::RenderObject::hasBoxDecorations):
921 * rendering/RenderTableCell.cpp:
922 (WebCore::CollapsedBorders::addBorder):
923 (WebCore::RenderTableCell::paintCollapsedBorder):
925 2009-02-12 Eric Carlson <eric.carlson@apple.com>
927 Reviewed by Simon Fraser
929 Bug 18322: video element should have ui when scripting is disabled
930 https://bugs.webkit.org/show_bug.cgi?id=18322
932 * html/HTMLMediaElement.cpp:
933 (WebCore::HTMLMediaElement::controls): always return 'true' when JavaScript is disabled.
934 * manual-tests/media-controls-when-javascript-disabled.html: Added.
936 2009-02-12 Dimitri Glazkov <dglazkov@chromium.org>
938 Reviewed by Eric Seidel.
940 https://bugs.webkit.org/show_bug.cgi?id=23906
941 Add custom V8 bindings for HTMLPlugInElement.
943 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp: Added.
944 (WebCore::NAMED_PROPERTY_GETTER):
945 (WebCore::NAMED_PROPERTY_SETTER):
946 (WebCore::CALLBACK_FUNC_DECL):
947 (WebCore::INDEXED_PROPERTY_GETTER):
948 (WebCore::INDEXED_PROPERTY_SETTER):
950 2009-02-12 Gustavo Noronha Silva <gns@gnome.org>
952 Reviewed by Mark Rowe.
954 [GTK] Soup backend must handle upload of multiple files
955 https://bugs.webkit.org/show_bug.cgi?id=18343
957 * platform/network/soup/ResourceHandleSoup.cpp:
959 (WebCore::freeFileMapping):
960 (WebCore::ResourceHandle::startHttp): Support multipart request bodies
961 mmap'ing files to be uploaded.
963 2009-02-12 Adam Treat <adam.treat@torchmobile.com>
965 Fix the Qt build following r40871 which changed RenderObject::element()
966 into RenderObject::node().
968 * platform/qt/RenderThemeQt.cpp:
969 (WebCore::RenderThemeQt::getMediaElementFromRenderObject):
970 (WebCore::RenderThemeQt::getMediaControlForegroundColor):
972 2009-02-12 Alexey Proskuryakov <ap@webkit.org>
976 * platform/graphics/transforms/RotateTransformOperation.cpp: Include <algorithm>.
978 2009-02-12 Jian Li <jianli@chromium.org>
980 Reviewed by Alexey Proskuryakov.
982 Change worker code to use different proxy class pointers.
983 https://bugs.webkit.org/show_bug.cgi?id=23859
985 This is a step towards using separate proxies in multi-process implementation.
987 * bindings/js/WorkerScriptController.cpp:
988 (WebCore::WorkerScriptController::evaluate):
990 (WebCore::Worker::Worker):
991 (WebCore::Worker::~Worker):
992 (WebCore::Worker::postMessage):
993 (WebCore::Worker::terminate):
994 (WebCore::Worker::hasPendingActivity):
995 (WebCore::Worker::notifyFinished):
996 (WebCore::Worker::dispatchMessage):
998 * dom/WorkerContext.cpp:
999 (WebCore::WorkerContext::~WorkerContext):
1000 (WebCore::WorkerContext::reportException):
1001 (WebCore::WorkerContext::addMessage):
1002 (WebCore::WorkerContext::postMessage):
1003 (WebCore::WorkerContext::dispatchMessage):
1004 * dom/WorkerContext.h:
1005 * dom/WorkerContextProxy.h:
1006 * dom/WorkerMessagingProxy.cpp:
1007 (WebCore::MessageWorkerContextTask::performTask):
1008 (WebCore::MessageWorkerTask::performTask):
1009 (WebCore::WorkerContextProxy::create):
1010 (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
1011 (WebCore::WorkerMessagingProxy::~WorkerMessagingProxy):
1012 (WebCore::WorkerMessagingProxy::startWorkerContext):
1013 (WebCore::postConsoleMessageTask):
1014 (WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
1015 (WebCore::WorkerMessagingProxy::workerThreadCreated):
1016 * dom/WorkerMessagingProxy.h:
1017 * dom/WorkerObjectProxy.h:
1018 * dom/WorkerThread.cpp:
1019 (WebCore::WorkerThread::create):
1020 (WebCore::WorkerThread::WorkerThread):
1021 (WebCore::WorkerThread::workerThread):
1022 * dom/WorkerThread.h:
1023 (WebCore::WorkerThread::workerObjectProxy):
1024 * loader/WorkerThreadableLoader.cpp:
1025 (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
1027 2009-02-12 David Levin <levin@chromium.org>
1029 Reviewed by Alexey Proskuryakov.
1031 Bug 23688: ThreadableLoader needs a sync implementation for Workers.
1032 <https://bugs.webkit.org/show_bug.cgi?id=23688>
1034 Add ResourceError to ThreadableLoaderClient.
1036 No observable change in behavior, so no test.
1038 * loader/DocumentThreadableLoader.cpp:
1039 (WebCore::DocumentThreadableLoader::create):
1040 (WebCore::DocumentThreadableLoader::willSendRequest):
1041 (WebCore::DocumentThreadableLoader::didFail):
1042 * loader/ThreadableLoaderClient.h:
1043 (WebCore::ThreadableLoaderClient::didFail):
1044 (WebCore::ThreadableLoaderClient::didFailWillSendRequestCheck):
1045 * loader/ThreadableLoaderClientWrapper.h:
1046 (WebCore::ThreadableLoaderClientWrapper::didFail):
1047 * loader/WorkerThreadableLoader.cpp:
1048 (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
1049 (WebCore::workerContextDidFail):
1050 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
1051 * loader/WorkerThreadableLoader.h:
1052 * xml/XMLHttpRequest.cpp:
1053 (WebCore::XMLHttpRequest::didFail):
1054 (WebCore::XMLHttpRequest::didFailWillSendRequestCheck):
1055 * xml/XMLHttpRequest.h:
1057 2009-02-11 Simon Fraser <simon.fraser@apple.com>
1059 Reviewed by Dave Hyatt
1061 Fix the build on Leopard with ACCELERATED_COMPOSITING turned on.
1063 * WebCore.xcodeproj/project.pbxproj:
1064 FloatPoint3D needs to be a private header, since it's included by GraphicsLayer.h
1065 * platform/graphics/mac/GraphicsLayerCA.mm:
1066 (WebCore::getTransformFunctionValue):
1067 (WebCore::caValueFunctionSupported):
1068 (WebCore::GraphicsLayerCA::setAnchorPoint):
1069 (WebCore::GraphicsLayerCA::setPreserves3D):
1070 (WebCore::GraphicsLayerCA::setContentsToImage):
1071 (WebCore::GraphicsLayerCA::setBasicAnimation):
1072 (WebCore::GraphicsLayerCA::setKeyframeAnimation):
1073 * rendering/RenderLayer.h:
1074 (WebCore::RenderLayer::isRootLayer):
1075 Fix isRootLayer to return true for the renderView's layer, not the root
1078 2009-02-11 Adele Peterson <adele@apple.com>
1080 Reviewed by Oliver Hunt.
1082 Fix for https://bugs.webkit.org/show_bug.cgi?id=23910
1083 <rdar://problem/6160546> REGRESSION: In Full page mode, movie controller hides when I drag the knob if movie is playing
1085 * rendering/RenderMedia.cpp: (WebCore::RenderMedia::forwardEvent):
1086 When we get a mouseOut event, consider the mouse as still within the RenderMedia if the relatedTarget is a descendant.
1088 2009-02-11 David Hyatt <hyatt@apple.com>
1090 Remove all of the inline box wrapper functions from RenderObject, since they only apply to RenderBox. Devirtualize the functions.
1091 Patch all of the call sites to convert to a RenderBox.
1093 Reviewed by Simon Fraser
1096 (WebCore::nextRenderedEditable):
1097 (WebCore::previousRenderedEditable):
1098 (WebCore::Position::getInlineBoxAndOffset):
1099 * rendering/InlineBox.cpp:
1100 (WebCore::InlineBox::deleteLine):
1101 (WebCore::InlineBox::extractLine):
1102 (WebCore::InlineBox::attachLine):
1103 * rendering/RenderLineBoxList.cpp:
1104 (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
1105 * rendering/RenderObject.cpp:
1106 * rendering/RenderObject.h:
1107 * rendering/RenderObjectChildList.cpp:
1108 (WebCore::RenderObjectChildList::removeChildNode):
1109 * rendering/RenderTextControl.cpp:
1110 (WebCore::RenderTextControl::textWithHardLineBreaks):
1112 2009-02-11 David Hyatt <hyatt@apple.com>
1114 Eliminate createInlineBox and dirtyLineBoxes from RenderObject. These functions have been devirtualized.
1115 The single call site now calls a helper function that just bit checks and casts before calling the correct
1116 type. RenderBlock's dirtyLineBoxes function was dead code (caused by the RenderFlow deletion), so it has
1119 Reviewed by Eric Seidel
1121 * rendering/RenderBR.cpp:
1122 * rendering/RenderBR.h:
1123 * rendering/RenderBlock.cpp:
1124 (WebCore::RenderBlock::createRootInlineBox):
1125 * rendering/RenderBlock.h:
1126 * rendering/RenderBox.cpp:
1127 (WebCore::RenderBox::createInlineBox):
1128 * rendering/RenderBox.h:
1129 * rendering/RenderCounter.cpp:
1130 * rendering/RenderCounter.h:
1131 * rendering/RenderInline.cpp:
1132 (WebCore::RenderInline::createInlineFlowBox):
1133 * rendering/RenderInline.h:
1134 * rendering/RenderObject.cpp:
1135 * rendering/RenderObject.h:
1136 * rendering/RenderSVGInlineText.cpp:
1137 (WebCore::RenderSVGInlineText::createTextBox):
1138 * rendering/RenderSVGInlineText.h:
1139 (WebCore::RenderSVGInlineText::isSVGText):
1140 * rendering/RenderText.cpp:
1141 (WebCore::RenderText::createTextBox):
1142 (WebCore::RenderText::createInlineTextBox):
1143 * rendering/RenderText.h:
1144 * rendering/bidi.cpp:
1145 (WebCore::createInlineBoxForRenderer):
1146 (WebCore::RenderBlock::createLineBoxes):
1147 (WebCore::RenderBlock::constructLine):
1148 (WebCore::RenderBlock::layoutInlineChildren):
1150 2009-02-11 Chris Marrin <cmarrin@apple.com>
1152 Reviewed by Dave Hyatt.
1154 https://bugs.webkit.org/show_bug.cgi?id=23905
1156 Adds support for 3D CSS properties (transform-style-3d, perspective,
1157 perspective-origin, and backface-visibility) to RenderStyle and friends
1159 * platform/graphics/transforms/TransformOperation.h
1160 * rendering/style/RenderStyle.cpp:
1161 (WebCore::RenderStyle::diff):
1162 (WebCore::RenderStyle::applyTransform):
1163 * rendering/style/RenderStyle.h:
1164 (WebCore::InheritedFlags::transformOriginZ):
1165 (WebCore::InheritedFlags::hasTransformRelatedProperty):
1166 (WebCore::InheritedFlags::transformStyle3D):
1167 (WebCore::InheritedFlags::backfaceVisibility):
1168 (WebCore::InheritedFlags::perspective):
1169 (WebCore::InheritedFlags::perspectiveOriginX):
1170 (WebCore::InheritedFlags::perspectiveOriginY):
1171 (WebCore::InheritedFlags::setTransformOriginZ):
1172 (WebCore::InheritedFlags::setTransformStyle3D):
1173 (WebCore::InheritedFlags::setBackfaceVisibility):
1174 (WebCore::InheritedFlags::setPerspective):
1175 (WebCore::InheritedFlags::setPerspectiveOriginX):
1176 (WebCore::InheritedFlags::setPerspectiveOriginY):
1177 (WebCore::InheritedFlags::initialTransformOriginZ):
1178 (WebCore::InheritedFlags::initialTransformStyle3D):
1179 (WebCore::InheritedFlags::initialBackfaceVisibility):
1180 (WebCore::InheritedFlags::initialPerspective):
1181 (WebCore::InheritedFlags::initialPerspectiveOriginX):
1182 (WebCore::InheritedFlags::initialPerspectiveOriginY):
1183 * rendering/style/RenderStyleConstants.h:
1185 * rendering/style/StyleRareNonInheritedData.cpp:
1186 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1187 (WebCore::StyleRareNonInheritedData::operator==):
1188 * rendering/style/StyleRareNonInheritedData.h:
1189 * rendering/style/StyleTransformData.cpp:
1190 (WebCore::StyleTransformData::StyleTransformData):
1191 (WebCore::StyleTransformData::operator==):
1192 * rendering/style/StyleTransformData.h:
1194 2009-02-11 Simon Fraser <simon.fraser@apple.com>
1198 Fix ACCELERATED_COMPOSITING build.
1200 * rendering/RenderLayerBacking.cpp:
1201 (WebCore::RenderLayerBacking::createGraphicsLayer):
1202 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1203 * rendering/RenderLayerCompositor.cpp:
1204 (WebCore::RenderLayerCompositor::updateLayerCompositingState):
1206 2009-02-11 Simon Fraser <simon.fraser@apple.com>
1208 Reviewed by Dave Hyatt
1210 https://bugs.webkit.org/show_bug.cgi?id=23862
1212 Add a bit on RenderStyle that gets set when running accelerated
1213 transitions of transform or opacity. These ensure that styles
1214 compare as different during the transition, so that interruption
1215 can be detected reliably.
1217 * page/animation/ImplicitAnimation.cpp:
1218 (WebCore::ImplicitAnimation::animate):
1219 * rendering/style/RenderStyle.h:
1220 (WebCore::InheritedFlags::isRunningAcceleratedAnimation):
1221 (WebCore::InheritedFlags::setIsRunningAcceleratedAnimation):
1222 * rendering/style/StyleRareNonInheritedData.cpp:
1223 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1224 (WebCore::StyleRareNonInheritedData::operator==):
1225 * rendering/style/StyleRareNonInheritedData.h:
1227 2009-02-11 David Hyatt <hyatt@apple.com>
1229 Eliminate the virtual position() function from RenderObject. Rename the position() overrides
1230 in RenderText and RenderBox to positionLineBox and devirtualize them.
1232 Patch the one call site to just check for isText() and isBox() and call the methods directly.
1234 Remove some unnecessary overrides of position() on table sections and rows.
1236 Reviewed by Simon Fraser
1238 * rendering/RenderBox.cpp:
1239 (WebCore::RenderBox::positionLineBox):
1240 * rendering/RenderBox.h:
1241 * rendering/RenderObject.h:
1242 * rendering/RenderSVGRoot.cpp:
1243 * rendering/RenderSVGRoot.h:
1244 * rendering/RenderTableRow.h:
1245 (WebCore::RenderTableRow::lineHeight):
1246 * rendering/RenderTableSection.h:
1247 (WebCore::RenderTableSection::lineHeight):
1248 * rendering/RenderText.cpp:
1249 (WebCore::RenderText::positionLineBox):
1250 * rendering/RenderText.h:
1251 * rendering/bidi.cpp:
1252 (WebCore::RenderBlock::computeVerticalPositionsForLine):
1254 2009-02-11 Dimitri Glazkov <dglazkov@chromium.org>
1256 Reviewed by Eric Seidel.
1258 https://bugs.webkit.org/show_bug.cgi?id=23901
1259 Add HTML options/collections V8 custom bindings.
1261 * bindings/v8/custom/V8HTMLCollectionCustom.cpp: Added.
1262 (WebCore::getNamedItems):
1264 (WebCore::NAMED_PROPERTY_GETTER):
1265 (WebCore::CALLBACK_FUNC_DECL):
1266 * bindings/v8/custom/V8HTMLFormElementCustom.cpp: Added.
1267 (WebCore::NAMED_PROPERTY_GETTER):
1268 * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
1269 (WebCore::ACCESSOR_GETTER):
1270 (WebCore::ACCESSOR_SETTER):
1271 (WebCore::CALLBACK_FUNC_DECL):
1272 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
1273 (WebCore::CALLBACK_FUNC_DECL):
1274 (WebCore::ACCESSOR_SETTER):
1275 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: Added.
1276 (WebCore::CALLBACK_FUNC_DECL):
1277 (WebCore::removeElement):
1278 * bindings/v8/custom/V8HTMLSelectElementCustom.h: Added.
1279 * bindings/v8/custom/V8NamedNodesCollection.cpp: Added.
1280 (WebCore::V8NamedNodesCollection::item):
1281 (WebCore::V8NamedNodesCollection::itemWithName):
1282 * bindings/v8/custom/V8NamedNodesCollection.h: Added.
1283 (WebCore::V8NamedNodesCollection::V8NamedNodesCollection):
1284 (WebCore::V8NamedNodesCollection::length):
1286 2009-02-11 Dimitri Dupuis-latour <dupuislatour@apple.com>
1288 Added a preference to disable some Inspector's panels (rdar://6419624, rdar://6419645).
1289 This is controlled via the 'WebKitInspectorHiddenPanels' key; if nothing is specified, all panels are shown.
1291 Reviewed by Timothy Hatcher.
1293 * inspector/InspectorClient.h:
1294 * inspector/InspectorController.cpp:
1295 (WebCore::hiddenPanels):
1296 (WebCore::InspectorController::hiddenPanels):
1297 (WebCore::InspectorController::windowScriptObjectAvailable):
1298 * inspector/InspectorController.h:
1299 * inspector/front-end/inspector.js:
1300 (WebInspector.loaded):
1301 * loader/EmptyClients.h:
1302 (WebCore::EmptyInspectorClient::hiddenPanels):
1304 2009-02-11 David Hyatt <hyatt@apple.com>
1306 Combine RenderObject::element() and RenderObject::node() into a single function.
1307 node() now has the "anonymous bit" checking behavior of element() and will
1308 return 0 for anonymous content. This patch switches all callers of element()
1309 to node() and patches old callers of node() to deal with situations where they
1310 did not expect node() to be 0. A bunch of node() calls were calling stuff on
1311 Document that they clearly didn't intend, so overall this is a nice improvement.
1313 Reviewed by Sam Weinig
1315 * dom/ContainerNode.cpp:
1316 (WebCore::ContainerNode::getUpperLeftCorner):
1318 (WebCore::Element::offsetParent):
1320 (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
1321 * editing/ModifySelectionListLevel.cpp:
1322 (WebCore::getStartEndListChildren):
1323 (WebCore::IncreaseSelectionListLevelCommand::doApply):
1324 (WebCore::DecreaseSelectionListLevelCommand::doApply):
1325 * editing/TextIterator.cpp:
1326 (WebCore::TextIterator::advance):
1327 * editing/VisiblePosition.cpp:
1328 (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
1329 (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
1330 * editing/visible_units.cpp:
1331 (WebCore::startPositionForLine):
1332 (WebCore::endPositionForLine):
1333 * page/AXObjectCache.cpp:
1334 (WebCore::AXObjectCache::get):
1335 * page/AccessibilityList.cpp:
1336 (WebCore::AccessibilityList::isUnorderedList):
1337 (WebCore::AccessibilityList::isOrderedList):
1338 (WebCore::AccessibilityList::isDefinitionList):
1339 * page/AccessibilityListBox.cpp:
1340 (WebCore::AccessibilityListBox::doAccessibilityHitTest):
1341 * page/AccessibilityRenderObject.cpp:
1342 (WebCore::AccessibilityRenderObject::isPasswordField):
1343 (WebCore::AccessibilityRenderObject::isFileUploadButton):
1344 (WebCore::AccessibilityRenderObject::isInputImage):
1345 (WebCore::AccessibilityRenderObject::isMultiSelect):
1346 (WebCore::AccessibilityRenderObject::isControl):
1347 (WebCore::AccessibilityRenderObject::getAttribute):
1348 (WebCore::AccessibilityRenderObject::anchorElement):
1349 (WebCore::AccessibilityRenderObject::actionElement):
1350 (WebCore::AccessibilityRenderObject::mouseButtonListener):
1351 (WebCore::AccessibilityRenderObject::helpText):
1352 (WebCore::AccessibilityRenderObject::textUnderElement):
1353 (WebCore::AccessibilityRenderObject::hasIntValue):
1354 (WebCore::AccessibilityRenderObject::intValue):
1355 (WebCore::AccessibilityRenderObject::labelElementContainer):
1356 (WebCore::AccessibilityRenderObject::title):
1357 (WebCore::AccessibilityRenderObject::accessibilityDescription):
1358 (WebCore::AccessibilityRenderObject::boundingBoxRect):
1359 (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
1360 (WebCore::AccessibilityRenderObject::titleUIElement):
1361 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1362 (WebCore::AccessibilityRenderObject::text):
1363 (WebCore::AccessibilityRenderObject::ariaSelectedTextDOMRange):
1364 (WebCore::AccessibilityRenderObject::accessKey):
1365 (WebCore::AccessibilityRenderObject::setSelectedTextRange):
1366 (WebCore::AccessibilityRenderObject::url):
1367 (WebCore::AccessibilityRenderObject::isFocused):
1368 (WebCore::AccessibilityRenderObject::setFocused):
1369 (WebCore::AccessibilityRenderObject::setValue):
1370 (WebCore::AccessibilityRenderObject::isEnabled):
1371 (WebCore::AccessibilityRenderObject::visiblePositionRange):
1372 (WebCore::AccessibilityRenderObject::index):
1373 (WebCore::AccessibilityRenderObject::activeDescendant):
1374 (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
1375 (WebCore::AccessibilityRenderObject::observableObject):
1376 (WebCore::AccessibilityRenderObject::roleValue):
1377 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
1378 (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
1379 * page/AccessibilityTable.cpp:
1380 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
1381 (WebCore::AccessibilityTable::title):
1382 * page/AccessibilityTableCell.cpp:
1383 (WebCore::AccessibilityTableCell::titleUIElement):
1384 * page/AccessibilityTableColumn.cpp:
1385 (WebCore::AccessibilityTableColumn::headerObjectForSection):
1386 * page/AccessibilityTableRow.cpp:
1387 (WebCore::AccessibilityTableRow::headerObject):
1388 * page/EventHandler.cpp:
1389 (WebCore::EventHandler::dispatchMouseEvent):
1390 (WebCore::EventHandler::canMouseDownStartSelect):
1391 (WebCore::EventHandler::canMouseDragExtendSelect):
1392 (WebCore::EventHandler::shouldDragAutoNode):
1394 (WebCore::Frame::searchForLabelsAboveCell):
1395 (WebCore::Frame::setFocusedNodeIfNeeded):
1396 * page/FrameView.cpp:
1397 (WebCore::FrameView::updateOverflowStatus):
1398 * page/animation/AnimationBase.cpp:
1399 (WebCore::AnimationBase::updateStateMachine):
1400 * page/animation/AnimationController.cpp:
1401 (WebCore::AnimationControllerPrivate::updateAnimationTimer):
1402 (WebCore::AnimationController::cancelAnimations):
1403 (WebCore::AnimationController::updateAnimations):
1404 * page/animation/KeyframeAnimation.cpp:
1405 (WebCore::KeyframeAnimation::KeyframeAnimation):
1406 (WebCore::KeyframeAnimation::endAnimation):
1407 * page/mac/AccessibilityObjectWrapper.mm:
1409 (AXAttributeStringSetHeadingLevel):
1410 * page/mac/FrameMac.mm:
1411 (WebCore::Frame::searchForNSLabelsAboveCell):
1412 * rendering/InlineFlowBox.cpp:
1413 (WebCore::InlineFlowBox::verticallyAlignBoxes):
1414 (WebCore::InlineFlowBox::paint):
1415 (WebCore::shouldDrawTextDecoration):
1416 * rendering/InlineTextBox.cpp:
1417 (WebCore::InlineTextBox::paintDocumentMarkers):
1418 * rendering/RenderBR.cpp:
1419 (WebCore::RenderBR::positionForCoordinates):
1420 * rendering/RenderBlock.cpp:
1421 (WebCore::RenderBlock::layoutBlock):
1422 (WebCore::RenderBlock::handleRunInChild):
1423 (WebCore::RenderBlock::paintObject):
1424 (WebCore::RenderBlock::isSelectionRoot):
1425 (WebCore::RenderBlock::rightmostPosition):
1426 (WebCore::RenderBlock::positionForBox):
1427 (WebCore::RenderBlock::positionForRenderer):
1428 (WebCore::RenderBlock::positionForCoordinates):
1429 (WebCore::RenderBlock::hasLineIfEmpty):
1430 (WebCore::RenderBlock::updateFirstLetter):
1431 (WebCore::RenderBlock::updateHitTestResult):
1432 (WebCore::RenderBlock::addFocusRingRects):
1433 * rendering/RenderBox.cpp:
1434 (WebCore::RenderBox::styleWillChange):
1435 (WebCore::RenderBox::updateBoxModelInfoFromStyle):
1436 (WebCore::RenderBox::paintRootBoxDecorations):
1437 (WebCore::RenderBox::positionForCoordinates):
1438 * rendering/RenderButton.cpp:
1439 (WebCore::RenderButton::updateFromElement):
1440 (WebCore::RenderButton::canHaveChildren):
1441 * rendering/RenderCounter.cpp:
1442 (WebCore::planCounter):
1443 * rendering/RenderFieldset.cpp:
1444 (WebCore::RenderFieldset::findLegend):
1445 * rendering/RenderFlexibleBox.cpp:
1446 (WebCore::RenderFlexibleBox::layoutVerticalBox):
1447 * rendering/RenderForeignObject.cpp:
1448 (WebCore::RenderForeignObject::translationForAttributes):
1449 (WebCore::RenderForeignObject::calculateLocalTransform):
1450 * rendering/RenderFrame.h:
1451 (WebCore::RenderFrame::element):
1452 * rendering/RenderImage.cpp:
1453 (WebCore::RenderImage::paintReplaced):
1454 (WebCore::RenderImage::imageMap):
1455 (WebCore::RenderImage::nodeAtPoint):
1456 (WebCore::RenderImage::updateAltText):
1457 * rendering/RenderInline.cpp:
1458 (WebCore::RenderInline::cloneInline):
1459 (WebCore::RenderInline::updateHitTestResult):
1460 * rendering/RenderLayer.cpp:
1461 (WebCore::RenderLayer::isTransparent):
1462 (WebCore::RenderLayer::scrollToOffset):
1463 (WebCore::RenderLayer::resize):
1464 (WebCore::RenderLayer::createScrollbar):
1465 (WebCore::RenderLayer::updateOverflowStatus):
1466 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
1467 (WebCore::RenderLayer::enclosingElement):
1468 (WebCore::RenderLayer::updateHoverActiveState):
1469 (WebCore::RenderLayer::updateScrollCornerStyle):
1470 (WebCore::RenderLayer::updateResizerStyle):
1471 * rendering/RenderLayer.h:
1472 (WebCore::RenderLayer::isRootLayer):
1473 * rendering/RenderListItem.cpp:
1474 (WebCore::getParentOfFirstLineBox):
1475 * rendering/RenderMarquee.cpp:
1476 (WebCore::RenderMarquee::marqueeSpeed):
1477 * rendering/RenderObject.cpp:
1478 (WebCore::RenderObject::RenderObject):
1479 (WebCore::RenderObject::isBody):
1480 (WebCore::RenderObject::isHR):
1481 (WebCore::RenderObject::isHTMLMarquee):
1482 (WebCore::RenderObject::isEditable):
1483 (WebCore::RenderObject::addPDFURLRect):
1484 (WebCore::RenderObject::showTreeForThis):
1485 (WebCore::RenderObject::draggableNode):
1486 (WebCore::RenderObject::hasOutlineAnnotation):
1487 (WebCore::RenderObject::positionForCoordinates):
1488 (WebCore::RenderObject::updateDragState):
1489 (WebCore::RenderObject::updateHitTestResult):
1490 (WebCore::RenderObject::getUncachedPseudoStyle):
1491 (WebCore::RenderObject::getTextDecorationColors):
1492 (WebCore::RenderObject::caretMaxOffset):
1493 (WebCore::RenderObject::offsetParent):
1494 * rendering/RenderObject.h:
1495 (WebCore::RenderObject::isRoot):
1496 (WebCore::RenderObject::isInlineContinuation):
1497 (WebCore::RenderObject::node):
1498 (WebCore::RenderObject::setNode):
1499 * rendering/RenderObjectChildList.cpp:
1500 (WebCore::RenderObjectChildList::destroyLeftoverChildren):
1501 * rendering/RenderPart.cpp:
1502 (WebCore::RenderPart::updateWidgetPosition):
1503 * rendering/RenderPartObject.cpp:
1504 (WebCore::RenderPartObject::updateWidget):
1505 (WebCore::RenderPartObject::viewCleared):
1506 * rendering/RenderPath.cpp:
1507 (WebCore::RenderPath::calculateLocalTransform):
1508 (WebCore::RenderPath::layout):
1509 (WebCore::RenderPath::paint):
1510 (WebCore::RenderPath::drawMarkersIfNeeded):
1511 * rendering/RenderReplaced.cpp:
1512 (WebCore::RenderReplaced::positionForCoordinates):
1513 (WebCore::RenderReplaced::isSelected):
1514 * rendering/RenderSVGGradientStop.cpp:
1515 (WebCore::RenderSVGGradientStop::gradientElement):
1516 * rendering/RenderSVGImage.cpp:
1517 (WebCore::RenderSVGImage::calculateLocalTransform):
1518 * rendering/RenderSVGInlineText.cpp:
1519 (WebCore::RenderSVGInlineText::positionForCoordinates):
1520 * rendering/RenderSVGRoot.cpp:
1521 (WebCore::RenderSVGRoot::layout):
1522 (WebCore::RenderSVGRoot::applyContentTransforms):
1523 (WebCore::RenderSVGRoot::paint):
1524 (WebCore::RenderSVGRoot::calcViewport):
1525 (WebCore::RenderSVGRoot::absoluteTransform):
1526 * rendering/RenderSVGText.cpp:
1527 (WebCore::RenderSVGText::calculateLocalTransform):
1528 (WebCore::RenderSVGText::layout):
1529 * rendering/RenderSVGTextPath.cpp:
1530 (WebCore::RenderSVGTextPath::layoutPath):
1531 (WebCore::RenderSVGTextPath::startOffset):
1532 (WebCore::RenderSVGTextPath::exactAlignment):
1533 (WebCore::RenderSVGTextPath::stretchMethod):
1534 * rendering/RenderSVGTransformableContainer.cpp:
1535 (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
1536 * rendering/RenderSVGViewportContainer.cpp:
1537 (WebCore::RenderSVGViewportContainer::calcViewport):
1538 (WebCore::RenderSVGViewportContainer::viewportTransform):
1539 (WebCore::RenderSVGViewportContainer::nodeAtPoint):
1540 * rendering/RenderTable.cpp:
1541 (WebCore::RenderTable::addChild):
1542 * rendering/RenderTableCell.cpp:
1543 (WebCore::RenderTableCell::updateFromElement):
1544 (WebCore::RenderTableCell::calcPrefWidths):
1545 * rendering/RenderTableCol.cpp:
1546 (WebCore::RenderTableCol::updateFromElement):
1547 * rendering/RenderTableRow.cpp:
1548 (WebCore::RenderTableRow::addChild):
1549 * rendering/RenderTableSection.cpp:
1550 (WebCore::RenderTableSection::addChild):
1551 * rendering/RenderText.cpp:
1552 (WebCore::RenderText::originalText):
1553 (WebCore::RenderText::positionForCoordinates):
1554 * rendering/RenderTextControlMultiLine.cpp:
1555 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
1556 * rendering/RenderTextControlSingleLine.cpp:
1557 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
1558 * rendering/RenderTextFragment.cpp:
1559 (WebCore::RenderTextFragment::originalText):
1560 (WebCore::RenderTextFragment::previousCharacter):
1561 * rendering/RenderTheme.cpp:
1562 (WebCore::RenderTheme::isActive):
1563 (WebCore::RenderTheme::isChecked):
1564 (WebCore::RenderTheme::isIndeterminate):
1565 (WebCore::RenderTheme::isEnabled):
1566 (WebCore::RenderTheme::isFocused):
1567 (WebCore::RenderTheme::isPressed):
1568 (WebCore::RenderTheme::isReadOnlyControl):
1569 (WebCore::RenderTheme::isHovered):
1570 * rendering/RenderThemeMac.mm:
1571 (WebCore::RenderThemeMac::updatePressedState):
1572 (WebCore::RenderThemeMac::paintMediaFullscreenButton):
1573 (WebCore::RenderThemeMac::paintMediaMuteButton):
1574 (WebCore::RenderThemeMac::paintMediaPlayButton):
1575 (WebCore::RenderThemeMac::paintMediaSeekBackButton):
1576 (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
1577 (WebCore::RenderThemeMac::paintMediaSliderTrack):
1578 (WebCore::RenderThemeMac::paintMediaSliderThumb):
1579 (WebCore::RenderThemeMac::paintMediaTimelineContainer):
1580 (WebCore::RenderThemeMac::paintMediaCurrentTime):
1581 (WebCore::RenderThemeMac::paintMediaTimeRemaining):
1582 * rendering/RenderThemeSafari.cpp:
1583 (WebCore::RenderThemeSafari::paintMediaMuteButton):
1584 (WebCore::RenderThemeSafari::paintMediaPlayButton):
1585 (WebCore::RenderThemeSafari::paintMediaSliderTrack):
1586 * rendering/RenderTreeAsText.cpp:
1587 (WebCore::operator<<):
1588 (WebCore::writeSelection):
1589 * rendering/RenderWidget.cpp:
1590 (WebCore::RenderWidget::setWidgetGeometry):
1591 (WebCore::RenderWidget::updateWidgetPosition):
1592 (WebCore::RenderWidget::nodeAtPoint):
1593 * rendering/RootInlineBox.cpp:
1594 (WebCore::isEditableLeaf):
1595 * rendering/SVGRenderSupport.cpp:
1596 (WebCore::prepareToRenderSVGContent):
1597 * rendering/SVGRenderTreeAsText.cpp:
1599 * rendering/SVGRootInlineBox.cpp:
1600 (WebCore::SVGRootInlineBox::buildLayoutInformation):
1601 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
1602 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
1603 (WebCore::SVGRootInlineBox::buildTextChunks):
1604 * rendering/style/SVGRenderStyle.cpp:
1605 (WebCore::SVGRenderStyle::cssPrimitiveToLength):
1607 (WebCore::SVGTextRunWalker::walk):
1608 (WebCore::floatWidthOfSubStringUsingSVGFont):
1609 (WebCore::Font::drawTextUsingSVGFont):
1610 * svg/SVGTextContentElement.cpp:
1611 (WebCore::findInlineTextBoxInTextChunks):
1612 * svg/graphics/SVGPaintServer.cpp:
1613 (WebCore::SVGPaintServer::fillPaintServer):
1614 (WebCore::SVGPaintServer::strokePaintServer):
1616 2009-02-11 Brady Eidson <beidson@apple.com>
1618 Reviewed by Darin Adler
1620 <rdar://problem/3541409> - Further FrameLoader and page cache cleanup
1622 * history/CachedFrame.cpp:
1623 (WebCore::CachedFrame::restore): Moved updatePlatformScriptObjects() here.
1625 * loader/FrameLoader.cpp:
1626 (WebCore::FrameLoader::commitProvisionalLoad): Rolled opened() into this method. This method was
1627 the only caller and - in the future - will benefit from doing parts of opened()'s work differently.
1628 (WebCore::FrameLoader::open): Split off per-frame logic into open(CachedFrame&) method.
1629 (WebCore::FrameLoader::closeAndRemoveChild): Added. Do the non-tree related cleanup that
1630 FrameTree::removeChild() used to do.
1631 (WebCore::FrameLoader::detachFromParent): Call ::closeAndRemoveChild() instead.
1632 (WebCore::FrameLoader::cachePageForHistoryItem): Perform the "can cache page" check here.
1633 * loader/FrameLoader.h:
1635 * page/FrameTree.cpp:
1636 (WebCore::FrameTree::removeChild): Just remove the Frame from the tree. Closing it and other
1637 cleanup is the responsibility of the FrameLoader.
1639 (WebCore::FrameTree::detachFromParent): Added to just clear a Frame's parent pointer
1641 2009-02-11 Scott Violet <sky@google.com>
1643 Reviewed by Eric Seidel.
1645 https://bugs.webkit.org/show_bug.cgi?id=23882
1646 GraphicsContextSkia draws round rects as solid rects
1648 Fixes two bugs in Skia's GraphicsContext::fillRoundedRect:
1649 . fillRoundedRect had an extra call to fillRect, resulting in always
1650 drawing a solid rectangle.
1651 . if the total radius along a given axis is greater than the size of
1652 the axis to draw, a solid rect should be drawn.
1654 The layout tests LayoutTests/fast/css/shadow-multiple.html and
1655 LayoutTests/fast/box-shadow/basic-shadows.html cover this.
1657 * platform/graphics/skia/GraphicsContextSkia.cpp:
1658 (WebCore::GraphicsContext::fillRoundedRect):
1660 2009-02-11 Julien Chaffraix <jchaffraix@webkit.org>
1662 Reviewed by Eric Seidel.
1664 Bug 23536: Auto-generate HTMLElementFactory
1666 Remove the HTMLElementFactory files. Farewell.
1668 * html/HTMLElementFactory.cpp: Removed.
1669 * html/HTMLElementFactory.h: Removed.
1671 2009-02-11 Julien Chaffraix <jchaffraix@webkit.org>
1673 Reviewed by Eric Seidel.
1675 Bug 23536: Auto-generate HTMLElementFactory
1677 Make the platform auto-generate the HTMLElementFactory.
1679 * DerivedSources.make:
1683 * WebCore.vcproj/WebCore.vcproj:
1684 * WebCore.xcodeproj/project.pbxproj:
1685 * WebCoreSources.bkl:
1688 2009-02-11 Sam Weinig <sam@webkit.org>
1690 Reviewed by David Hyatt.
1692 Remove unneeded ASSERTS.
1694 * rendering/RenderBox.h:
1695 (WebCore::RenderBox::width):
1696 (WebCore::RenderBox::height):
1697 (WebCore::RenderBox::size):
1698 (WebCore::RenderBox::frameRect):
1700 2009-02-11 Simon Fraser <simon.fraser@apple.com>
1702 Reviewed by Dave Hyatt
1704 Add function to RenderStyle to ask whether a background image has been specified.
1706 * rendering/style/RenderStyle.h:
1707 (WebCore::InheritedFlags::hasBackgroundImage):
1709 2009-02-11 Simon Fraser <simon.fraser@apple.com>
1711 Reviewed by Dave Hyatt
1713 https://bugs.webkit.org/show_bug.cgi?id=23548
1715 When opacity or transform change on an object which has a compositing layer,
1716 avoid repainting the layer.
1718 Added a new StyleDifference value, StyleDifferenceRecompositeLayer, which indicates
1719 that the only thing styleChanged() has to do is to update composited properties of
1720 the layer. RenderStyle::diff() now has an out param for a bitmask of "context sensitive"
1721 properties, currently for opacity and transform. When one of these changes, we need
1722 to see if we have a compositing layer before we decide whether to layout/repaint,
1723 or just update the composited layer, via adjustStyleDifference().
1725 * rendering/RenderObject.cpp:
1726 (WebCore::RenderObject::adjustStyleDifference):
1727 (WebCore::RenderObject::setStyle):
1728 (WebCore::RenderObject::styleDidChange):
1729 * rendering/RenderObject.h:
1730 * rendering/style/RenderStyle.cpp:
1731 (WebCore::RenderStyle::diff):
1732 * rendering/style/RenderStyle.h:
1733 * rendering/style/RenderStyleConstants.h:
1736 2009-02-11 Alexey Proskuryakov <ap@webkit.org>
1738 Reviewed by Darin Adler.
1740 <rdar://problem/6562920> Pasted text should be normalized to NFC
1742 Testing requires putting non-HTML content in pasteboard, so it cannot be done with WebKit alone.
1744 * platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::plainText): Route the text through
1745 -[NSString precomposedStringWithCanonicalMapping].
1747 2009-02-10 Chris Marrin <cmarrin@apple.com>
1749 Reviewed by Simon Fraser.
1751 https://bugs.webkit.org/show_bug.cgi?id=23883
1753 Added new TransformOperation subclasses and methods to existing ones
1756 * WebCore.xcodeproj/project.pbxproj:
1757 * platform/graphics/transforms/IdentityTransformOperation.h:
1758 (WebCore::IdentityTransformOperation::isAffine):
1759 * platform/graphics/transforms/Matrix3DTransformOperation.cpp: Added.
1760 (WebCore::Matrix3DTransformOperation::blend):
1761 * platform/graphics/transforms/Matrix3DTransformOperation.h: Added.
1762 (WebCore::Matrix3DTransformOperation::create):
1763 (WebCore::Matrix3DTransformOperation::isIdentity):
1764 (WebCore::Matrix3DTransformOperation::isAffine):
1765 (WebCore::Matrix3DTransformOperation::getOperationType):
1766 (WebCore::Matrix3DTransformOperation::isSameType):
1767 (WebCore::Matrix3DTransformOperation::operator==):
1768 (WebCore::Matrix3DTransformOperation::apply):
1769 (WebCore::Matrix3DTransformOperation::Matrix3DTransformOperation):
1770 * platform/graphics/transforms/MatrixTransformOperation.h:
1771 (WebCore::MatrixTransformOperation::isAffine):
1772 (WebCore::MatrixTransformOperation::apply):
1773 * platform/graphics/transforms/PerspectiveTransformOperation.cpp: Added.
1774 (WebCore::PerspectiveTransformOperation::blend):
1775 * platform/graphics/transforms/PerspectiveTransformOperation.h: Added.
1776 (WebCore::PerspectiveTransformOperation::create):
1777 (WebCore::PerspectiveTransformOperation::isIdentity):
1778 (WebCore::PerspectiveTransformOperation::isAffine):
1779 (WebCore::PerspectiveTransformOperation::getOperationType):
1780 (WebCore::PerspectiveTransformOperation::isSameType):
1781 (WebCore::PerspectiveTransformOperation::operator==):
1782 (WebCore::PerspectiveTransformOperation::apply):
1783 (WebCore::PerspectiveTransformOperation::PerspectiveTransformOperation):
1784 * platform/graphics/transforms/RotateTransformOperation.cpp:
1785 (WebCore::RotateTransformOperation::blend):
1786 * platform/graphics/transforms/RotateTransformOperation.h:
1787 (WebCore::RotateTransformOperation::create):
1788 (WebCore::RotateTransformOperation::angle):
1789 (WebCore::RotateTransformOperation::isAffine):
1790 (WebCore::RotateTransformOperation::operator==):
1791 (WebCore::RotateTransformOperation::apply):
1792 (WebCore::RotateTransformOperation::RotateTransformOperation):
1793 * platform/graphics/transforms/ScaleTransformOperation.cpp:
1794 (WebCore::ScaleTransformOperation::blend):
1795 * platform/graphics/transforms/ScaleTransformOperation.h:
1796 (WebCore::ScaleTransformOperation::create):
1797 (WebCore::ScaleTransformOperation::z):
1798 (WebCore::ScaleTransformOperation::isIdentity):
1799 (WebCore::ScaleTransformOperation::isAffine):
1800 (WebCore::ScaleTransformOperation::operator==):
1801 (WebCore::ScaleTransformOperation::apply):
1802 (WebCore::ScaleTransformOperation::ScaleTransformOperation):
1803 * platform/graphics/transforms/SkewTransformOperation.h:
1804 (WebCore::SkewTransformOperation::isAffine):
1805 * platform/graphics/transforms/TransformOperation.h:
1806 (WebCore::TransformOperation::):
1807 (WebCore::TransformOperation::is3DOperation):
1808 * platform/graphics/transforms/TransformOperations.h:
1809 (WebCore::TransformOperations::isAffine):
1810 (WebCore::TransformOperations::has3DOperation):
1811 * platform/graphics/transforms/TranslateTransformOperation.cpp:
1812 (WebCore::TranslateTransformOperation::blend):
1813 * platform/graphics/transforms/TranslateTransformOperation.h:
1814 (WebCore::TranslateTransformOperation::create):
1815 (WebCore::TranslateTransformOperation::z):
1816 (WebCore::TranslateTransformOperation::isIdentity):
1817 (WebCore::TranslateTransformOperation::isAffine):
1818 (WebCore::TranslateTransformOperation::operator==):
1819 (WebCore::TranslateTransformOperation::apply):
1820 (WebCore::TranslateTransformOperation::TranslateTransformOperation):
1822 2009-02-11 David Hyatt <hyatt@apple.com>
1824 Move createAnonymousBlock() to RenderBlock. Since anonymous blocks are always parented to some other block,
1825 we can move this function to RenderBlock. Fix a couple of call sites as a result of this restriction.
1827 Reviewed by Simon Fraser
1829 * rendering/RenderBlock.cpp:
1830 (WebCore::RenderBlock::createAnonymousBlock):
1831 * rendering/RenderBlock.h:
1832 * rendering/RenderInline.cpp:
1833 (WebCore::RenderInline::childBecameNonInline):
1834 * rendering/RenderObject.cpp:
1835 (WebCore::RenderObject::handleDynamicFloatPositionChange):
1836 * rendering/RenderObject.h:
1838 2009-02-11 David Hyatt <hyatt@apple.com>
1840 https://bugs.webkit.org/show_bug.cgi?id=23895
1842 Remove two complete nonsense lines that I accidentally added from a cut and paste error. This
1843 restores the original logic.
1845 Reviewed by Simon Fraser
1847 * rendering/RenderBox.cpp:
1848 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
1850 2009-02-11 David Hyatt <hyatt@apple.com>
1852 Rename getBaselineOfFirstLineBox to firstLineBoxBaseline. Rename getBaselineOfLastLineBox to
1853 lastLineBoxBaseline. Remove the functions from RenderObject and add them to RenderBox instead.
1855 Reviewed by Eric Seidel
1857 * rendering/RenderBlock.cpp:
1858 (WebCore::RenderBlock::baselinePosition):
1859 (WebCore::RenderBlock::firstLineBoxBaseline):
1860 (WebCore::RenderBlock::lastLineBoxBaseline):
1861 * rendering/RenderBlock.h:
1862 * rendering/RenderBox.h:
1863 (WebCore::RenderBox::firstLineBoxBaseline):
1864 (WebCore::RenderBox::lastLineBoxBaseline):
1865 * rendering/RenderFlexibleBox.cpp:
1866 (WebCore::RenderFlexibleBox::layoutHorizontalBox):
1867 * rendering/RenderObject.h:
1868 * rendering/RenderTable.cpp:
1869 (WebCore::RenderTable::firstLineBoxBaseline):
1870 * rendering/RenderTable.h:
1871 * rendering/RenderTableCell.cpp:
1872 (WebCore::RenderTableCell::baselinePosition):
1873 * rendering/RenderTableSection.cpp:
1874 (WebCore::RenderTableSection::firstLineBoxBaseline):
1875 * rendering/RenderTableSection.h:
1877 2009-02-11 Eric Carlson <eric.carlson@apple.com>
1879 Reviewed by Simon Fraser
1881 https://bugs.webkit.org/show_bug.cgi?id=23877
1882 Allow port to disable progress events from <video> and <audio> elements
1884 * html/HTMLMediaElement.cpp: Initialize m_sendProgressEvents.
1885 (WebCore::HTMLMediaElement::HTMLMediaElement): Don't post progress events if m_sendProgressEvents is false.
1886 (WebCore::HTMLMediaElement::initAndDispatchProgressEvent): Ditto.
1887 (WebCore::HTMLMediaElement::load): Ditto.
1888 * html/HTMLMediaElement.h: Add m_sendProgressEvents
1890 2009-02-11 Adam Roben <aroben@apple.com>
1894 * DerivedSources.cpp: Removed SVGElementFactory.cpp, since including
1895 it leads to ambiguities for symbols like "aTag", which exist in both
1896 the HTMLNames and SVGNames namespaces.
1898 * WebCore.vcproj/WebCore.vcproj: Added SVGElementFactory.cpp to the
1899 project directly. VS also decided to reformat this file a little bit.
1901 2009-02-10 Julien Chaffraix <jchaffraix@webkit.org>
1903 Reviewed by Eric Seidel.
1905 Bug 23536: Auto-generate HTMLElementFactory
1907 Those are the last auto-generation bits needed to have a working generated HTMLElementFactory:
1909 - Added a new option mapToTagName that enables a tag to use another's options and tagName (<image>
1910 uses imgTag for example) and wired the code generation to be consistent with the current factory.
1912 - Disabled dashboard compatibility check for HTMLElementFactory as it would make at least one test case fail.
1914 - Pass the QualifiedName down to the Element constructor for shared constructors to make the generated code as
1915 close as possible to the current one. We will pass the QualifiedName for all Element in a forthcoming patch.
1917 * dom/make_names.pl: Did all the above points and tweaked the code generation to match the current HTMLElementFactory
1918 as closely as possible.
1920 * html/HTMLElementFactory.cpp:
1921 (WebCore::quoteConstructor):
1922 * html/HTMLQuoteElement.cpp:
1923 (WebCore::HTMLQuoteElement::HTMLQuoteElement): Moved setUsesBeforeAfterRules to HTMLQuoteElement' constructor because some
1924 part of the code creates elements without using the HTMLElementFactory. Also added a FIXME as it is not the right place.
1926 * html/HTMLTagNames.in: Corrected <image> parameters.
1928 2009-02-10 David Hyatt <hyatt@apple.com>
1930 Fix for pixel test regression in fast/text. Make sure not to add in
1931 the borderTop and paddingTop of the block to the baseline when painting
1932 strict mode text decorations.
1934 Reviewed by Mark Rowe
1936 * rendering/InlineFlowBox.cpp:
1937 (WebCore::InlineFlowBox::paintTextDecorations):
1938 * rendering/InlineFlowBox.h:
1940 2009-02-10 Jon Honeycutt <jhoneycutt@apple.com>
1942 Windows build fix after r40837.
1946 * DerivedSources.cpp:
1948 2009-02-10 Jon Honeycutt <jhoneycutt@apple.com>
1950 <rdar://6349412> REGRESSION(r37204): Page is not repainted during and
1953 Reviewed by Steve Falkenburg.
1955 * platform/ScrollView.cpp:
1956 (WebCore::ScrollView::scrollContents): Don't repaint the pan scroll
1957 icon rect immediately; we will paint after the view has been scrolled.
1959 2009-02-10 Oliver Hunt <oliver@apple.com>
1961 Reviewed by Adele Peterson.
1963 <rdar://problem/6156755> onMouseOver events do not fire properly for cross frame drag and drop
1965 This problem was caused by incorrectly ignoring whether or not the
1966 default behaviour of the mousedown event was suppressed. If a
1967 mousedown handler in a frame prevents default handling then the
1968 subsequent mousemove events fired for the drag should not be
1969 captured by that frame, should the mouse move out of its bounds.
1971 Test: fast/events/mouse-drag-from-frame.html
1973 * page/EventHandler.cpp:
1974 (WebCore::EventHandler::EventHandler):
1975 (WebCore::EventHandler::clear):
1976 (WebCore::EventHandler::handleMouseReleaseEvent):
1977 Reset new m_capturesDragging flag
1979 (WebCore::EventHandler::handleMousePressEvent):
1980 Respect the m_capturesDragging flag when we propagate
1981 a mousedown event to a subframe.
1983 * page/EventHandler.h:
1984 (WebCore::EventHandler::capturesDragging):
1986 2009-02-10 Kevin Ollivier <kevino@theolliviers.com>
1988 wx build fixes for recent changes to TransformationMatrix and DOMElement.
1990 * WebCoreSources.bkl:
1992 * platform/graphics/transforms/TransformationMatrix.h:
1993 * platform/graphics/wx/TransformationMatrixWx.cpp:
1994 (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
1996 2009-02-10 David Hyatt <hyatt@apple.com>
1998 Some renames on line boxes. xPos()/yPos() -> x()/y(). setXPos()/setYPos() -> setX()/setY(). m_object/object() -> m_renderer/renderer(). textObject() -> textRenderer().
2000 Reviewed by Sam Weinig
2003 (WebCore::Position::upstream):
2004 (WebCore::Position::downstream):
2005 * editing/VisiblePosition.cpp:
2006 (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
2007 (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
2008 (WebCore::VisiblePosition::localCaretRect):
2009 * editing/visible_units.cpp:
2010 (WebCore::startPositionForLine):
2011 (WebCore::endPositionForLine):
2012 (WebCore::previousLinePosition):
2013 (WebCore::nextLinePosition):
2014 * rendering/EllipsisBox.cpp:
2015 (WebCore::EllipsisBox::paint):
2016 (WebCore::EllipsisBox::nodeAtPoint):
2017 * rendering/InlineBox.cpp:
2018 (WebCore::InlineBox::showTreeForThis):
2019 (WebCore::InlineBox::height):
2020 (WebCore::InlineBox::caretMinOffset):
2021 (WebCore::InlineBox::caretMaxOffset):
2022 (WebCore::InlineBox::deleteLine):
2023 (WebCore::InlineBox::extractLine):
2024 (WebCore::InlineBox::attachLine):
2025 (WebCore::InlineBox::adjustPosition):
2026 (WebCore::InlineBox::paint):
2027 (WebCore::InlineBox::nodeAtPoint):
2028 (WebCore::InlineBox::selectionState):
2029 (WebCore::InlineBox::canAccommodateEllipsis):
2030 * rendering/InlineBox.h:
2031 (WebCore::InlineBox::InlineBox):
2032 (WebCore::InlineBox::renderer):
2033 (WebCore::InlineBox::setX):
2034 (WebCore::InlineBox::x):
2035 (WebCore::InlineBox::setY):
2036 (WebCore::InlineBox::y):
2037 (WebCore::InlineBox::topOverflow):
2038 (WebCore::InlineBox::bottomOverflow):
2039 (WebCore::InlineBox::leftOverflow):
2040 (WebCore::InlineBox::rightOverflow):
2041 (WebCore::InlineBox::visibleToHitTesting):
2042 (WebCore::InlineBox::boxModelObject):
2043 * rendering/InlineFlowBox.cpp:
2044 (WebCore::InlineFlowBox::height):
2045 (WebCore::InlineFlowBox::addToLine):
2046 (WebCore::InlineFlowBox::removeLineBoxFromRenderObject):
2047 (WebCore::InlineFlowBox::extractLineBoxFromRenderObject):
2048 (WebCore::InlineFlowBox::attachLineBoxToRenderObject):
2049 (WebCore::InlineFlowBox::rendererLineBoxes):
2050 (WebCore::InlineFlowBox::onEndChain):
2051 (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
2052 (WebCore::InlineFlowBox::placeBoxesHorizontally):
2053 (WebCore::InlineFlowBox::verticallyAlignBoxes):
2054 (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
2055 (WebCore::verticalPositionForBox):
2056 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2057 (WebCore::InlineFlowBox::placeBoxesVertically):
2058 (WebCore::InlineFlowBox::nodeAtPoint):
2059 (WebCore::InlineFlowBox::paint):
2060 (WebCore::InlineFlowBox::paintFillLayer):
2061 (WebCore::InlineFlowBox::paintBoxShadow):
2062 (WebCore::InlineFlowBox::paintBoxDecorations):
2063 (WebCore::InlineFlowBox::paintMask):
2064 (WebCore::InlineFlowBox::paintTextDecorations):
2065 * rendering/InlineFlowBox.h:
2066 (WebCore::InlineFlowBox::borderLeft):
2067 (WebCore::InlineFlowBox::borderRight):
2068 (WebCore::InlineFlowBox::borderTop):
2069 (WebCore::InlineFlowBox::borderBottom):
2070 (WebCore::InlineFlowBox::baseline):
2071 * rendering/InlineTextBox.cpp:
2072 (WebCore::InlineTextBox::height):
2073 (WebCore::InlineTextBox::selectionState):
2074 (WebCore::InlineTextBox::selectionRect):
2075 (WebCore::InlineTextBox::deleteLine):
2076 (WebCore::InlineTextBox::extractLine):
2077 (WebCore::InlineTextBox::attachLine):
2078 (WebCore::InlineTextBox::placeEllipsisBox):
2079 (WebCore::InlineTextBox::isLineBreak):
2080 (WebCore::InlineTextBox::nodeAtPoint):
2081 (WebCore::InlineTextBox::paint):
2082 (WebCore::InlineTextBox::selectionStartEnd):
2083 (WebCore::InlineTextBox::paintSelection):
2084 (WebCore::InlineTextBox::paintCompositionBackground):
2085 (WebCore::InlineTextBox::paintCustomHighlight):
2086 (WebCore::InlineTextBox::paintDecoration):
2087 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
2088 (WebCore::InlineTextBox::paintTextMatchMarker):
2089 (WebCore::InlineTextBox::paintDocumentMarkers):
2090 (WebCore::InlineTextBox::paintCompositionUnderline):
2091 (WebCore::InlineTextBox::textPos):
2092 (WebCore::InlineTextBox::offsetForPosition):
2093 (WebCore::InlineTextBox::positionForOffset):
2094 * rendering/InlineTextBox.h:
2095 (WebCore::InlineTextBox::textRenderer):
2096 * rendering/ListMarkerBox.cpp:
2097 (WebCore::ListMarkerBox::isText):
2098 * rendering/RenderBlock.cpp:
2099 (WebCore::RenderBlock::paintEllipsisBoxes):
2100 (WebCore::RenderBlock::lowestPosition):
2101 (WebCore::RenderBlock::rightmostPosition):
2102 (WebCore::RenderBlock::leftmostPosition):
2103 (WebCore::RenderBlock::positionForBox):
2104 (WebCore::RenderBlock::positionForCoordinates):
2105 (WebCore::RenderBlock::getBaselineOfFirstLineBox):
2106 (WebCore::RenderBlock::getBaselineOfLastLineBox):
2107 (WebCore::RenderBlock::adjustForBorderFit):
2108 (WebCore::RenderBlock::addFocusRingRects):
2109 * rendering/RenderBox.cpp:
2110 (WebCore::RenderBox::paintCustomHighlight):
2111 (WebCore::RenderBox::position):
2112 (WebCore::RenderBox::containingBlockWidthForPositioned):
2113 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
2114 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
2115 * rendering/RenderBoxModelObject.cpp:
2116 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
2117 * rendering/RenderFlexibleBox.cpp:
2118 (WebCore::RenderFlexibleBox::layoutVerticalBox):
2119 * rendering/RenderInline.cpp:
2120 (WebCore::RenderInline::absoluteRects):
2121 (WebCore::RenderInline::absoluteQuads):
2122 (WebCore::RenderInline::offsetLeft):
2123 (WebCore::RenderInline::offsetTop):
2124 (WebCore::RenderInline::linesBoundingBox):
2125 (WebCore::RenderInline::relativePositionedInlineOffset):
2126 (WebCore::RenderInline::addFocusRingRects):
2127 (WebCore::RenderInline::paintOutline):
2128 * rendering/RenderLayer.cpp:
2129 (WebCore::RenderLayer::localBoundingBox):
2130 * rendering/RenderSVGTSpan.cpp:
2131 (WebCore::RenderSVGTSpan::absoluteRects):
2132 (WebCore::RenderSVGTSpan::absoluteQuads):
2133 * rendering/RenderSVGText.cpp:
2134 (WebCore::RenderSVGText::absoluteRects):
2135 (WebCore::RenderSVGText::absoluteQuads):
2136 (WebCore::RenderSVGText::relativeBBox):
2137 * rendering/RenderSVGTextPath.cpp:
2138 (WebCore::RenderSVGTextPath::absoluteRects):
2139 (WebCore::RenderSVGTextPath::absoluteQuads):
2140 * rendering/RenderText.cpp:
2141 (WebCore::RenderText::absoluteRects):
2142 (WebCore::RenderText::absoluteRectsForRange):
2143 (WebCore::RenderText::absoluteQuads):
2144 (WebCore::RenderText::absoluteQuadsForRange):
2145 (WebCore::RenderText::localCaretRect):
2146 (WebCore::RenderText::linesBoundingBox):
2147 * rendering/RootInlineBox.cpp:
2148 (WebCore::RootInlineBox::height):
2149 (WebCore::RootInlineBox::clearTruncation):
2150 (WebCore::RootInlineBox::placeEllipsis):
2151 (WebCore::RootInlineBox::paintEllipsisBox):
2152 (WebCore::RootInlineBox::addHighlightOverflow):
2153 (WebCore::RootInlineBox::paintCustomHighlight):
2154 (WebCore::RootInlineBox::paint):
2155 (WebCore::RootInlineBox::nodeAtPoint):
2156 (WebCore::RootInlineBox::childRemoved):
2157 (WebCore::RootInlineBox::fillLineSelectionGap):
2158 (WebCore::RootInlineBox::block):
2159 (WebCore::isEditableLeaf):
2160 (WebCore::RootInlineBox::closestLeafChildForXPos):
2161 (WebCore::RootInlineBox::setVerticalOverflowPositions):
2162 * rendering/RootInlineBox.h:
2163 (WebCore::RootInlineBox::bottomOverflow):
2164 (WebCore::RootInlineBox::floats):
2165 (WebCore::RootInlineBox::setHorizontalOverflowPositions):
2166 (WebCore::RootInlineBox::setVerticalSelectionPositions):
2167 * rendering/SVGCharacterLayoutInfo.cpp:
2168 (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
2169 * rendering/SVGInlineTextBox.cpp:
2170 (WebCore::SVGInlineTextBox::calculateGlyphWidth):
2171 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
2172 (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
2173 (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
2174 (WebCore::SVGInlineTextBox::nodeAtPoint):
2175 (WebCore::SVGInlineTextBox::paintCharacters):
2176 (WebCore::SVGInlineTextBox::paintSelection):
2177 (WebCore::SVGInlineTextBox::paintDecoration):
2178 * rendering/SVGRenderTreeAsText.cpp:
2179 (WebCore::writeSVGInlineTextBox):
2180 * rendering/SVGRootInlineBox.cpp:
2181 (WebCore::SVGRootInlineBoxPaintWalker::SVGRootInlineBoxPaintWalker):
2182 (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback):
2183 (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback):
2184 (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupFillCallback):
2185 (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupStrokeCallback):
2186 (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
2187 (WebCore::SVGRootInlineBox::paint):
2188 (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
2189 (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
2190 (WebCore::svgTextRunForInlineTextBox):
2191 (WebCore::cummulatedWidthOrHeightOfTextChunk):
2192 (WebCore::applyTextAnchorToTextChunk):
2193 (WebCore::SVGRootInlineBox::buildLayoutInformation):
2194 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
2195 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
2196 (WebCore::SVGRootInlineBox::buildTextChunks):
2197 * rendering/bidi.cpp:
2198 (WebCore::RenderBlock::constructLine):
2199 (WebCore::RenderBlock::computeVerticalPositionsForLine):
2200 (WebCore::RenderBlock::layoutInlineChildren):
2201 (WebCore::RenderBlock::checkLinesForTextOverflow):
2202 * svg/SVGTextContentElement.cpp:
2203 (WebCore::cumulativeCharacterRangeLength):
2204 (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
2205 (WebCore::findInlineTextBoxInTextChunks):
2207 2009-02-10 Simon Fraser <simon.fraser@apple.com>
2209 Reviewed by Dave Hyatt
2211 Clean up "fallbackAnimating" logic in AnimationBase. This flag indicates
2212 that animation of an accelerated property must run in software for some reason.
2214 Also remove use of private headers in GraphicsLayerCA related to a case
2215 where we may have to fall back on software animation of transform.
2217 * page/animation/AnimationBase.cpp:
2218 (WebCore::AnimationBase::blendProperties):
2219 * page/animation/AnimationBase.h:
2220 * page/animation/ImplicitAnimation.cpp:
2221 (WebCore::ImplicitAnimation::animate):
2222 * page/animation/KeyframeAnimation.cpp:
2223 (WebCore::KeyframeAnimation::animate):
2224 * platform/graphics/mac/GraphicsLayerCA.h:
2225 * platform/graphics/mac/GraphicsLayerCA.mm:
2226 (WebCore::getValueFunctionNameForTransformOperation):
2227 (WebCore::caValueFunctionSupported):
2228 (WebCore::GraphicsLayerCA::setBackgroundColor):
2229 (WebCore::GraphicsLayerCA::setOpacity):
2230 (WebCore::GraphicsLayerCA::animateTransform):
2231 (WebCore::GraphicsLayerCA::animateFloat):
2232 (WebCore::GraphicsLayerCA::setBasicAnimation):
2233 (WebCore::GraphicsLayerCA::setKeyframeAnimation):
2235 2009-02-10 Simon Fraser <simon.fraser@apple.com>
2237 Reviewed by Dave Hyatt
2239 Move enclosingCompositingLayer() from RenderObject to RenderLayer, since it
2240 relates to the RenderLayer z-order/overflow structure, rather than the render tree
2241 parent chain. Add a convenience method, ancestorCompositingLayer(), which finds
2242 the enclosing layer excluding self.
2244 Fix enclosingCompositingLayer() to correctly look at stacking context and overflow
2247 Check for documentBeingDestroyed() in a few places to avoid work on document
2250 * rendering/RenderLayer.cpp:
2251 (WebCore::RenderLayer::enclosingCompositingLayer):
2252 (WebCore::RenderLayer::setParent):
2253 (WebCore::RenderLayer::dirtyZOrderLists):
2254 (WebCore::RenderLayer::dirtyOverflowList):
2255 * rendering/RenderLayer.h:
2256 (WebCore::RenderLayer::ancestorCompositingLayer):
2257 * rendering/RenderLayerBacking.cpp:
2258 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2259 * rendering/RenderLayerCompositor.cpp:
2260 (WebCore::RenderLayerCompositor::updateLayerCompositingState):
2261 (WebCore::RenderLayerCompositor::calculateCompositedBounds):
2262 (WebCore::RenderLayerCompositor::layerWillBeRemoved):
2263 (WebCore::RenderLayerCompositor::clippedByAncestor):
2264 * rendering/RenderLayerCompositor.h:
2265 * rendering/RenderObject.cpp:
2266 (WebCore::RenderObject::containerForRepaint):
2267 * rendering/RenderObject.h:
2269 2009-02-10 David Hyatt <hyatt@apple.com>
2271 Rename xPos() and yPos() on RenderLayer to x() and y() to match RenderBox. Rename setPos to setLocation.
2273 Reviewed by Simon Fraser
2275 * dom/MouseRelatedEvent.cpp:
2276 (WebCore::MouseRelatedEvent::receivedTarget):
2277 * rendering/RenderLayer.cpp:
2278 (WebCore::RenderLayer::updateLayerPosition):
2279 (WebCore::RenderLayer::convertToLayerCoords):
2280 * rendering/RenderLayer.h:
2281 (WebCore::RenderLayer::x):
2282 (WebCore::RenderLayer::y):
2283 (WebCore::RenderLayer::setLocation):
2284 * rendering/RenderTreeAsText.cpp:
2286 (WebCore::externalRepresentation):
2288 2009-02-10 Darin Fisher <darin@chromium.org>
2290 Reviewed by Eric Seidel.
2292 https://bugs.webkit.org/show_bug.cgi?id=23879
2293 Add missing PLATFORM(SKIA) changes to TransformationMatrix.h
2295 * platform/graphics/transforms/TransformationMatrix.h:
2297 2009-02-10 Sam Weinig <sam@webkit.org>
2299 Reviewed by David Hyatt.
2301 Fix for https://bugs.webkit.org/show_bug.cgi?id=15897
2302 Please implement getBoundingClientRect and getClientRects
2303 <rdar://problem/6139669>
2305 Cursory implementation of Element.getBoundingClientRect and
2306 Element.getClientRects. Adds necessary infrastructure classes
2307 ClientRect and ClientRectList.
2309 Tests: fast/dom/getBoundingClientRect.html
2310 fast/dom/getClientRects.html
2312 * DerivedSources.make:
2315 * WebCore.vcproj/WebCore.vcproj:
2316 * WebCore.xcodeproj/project.pbxproj:
2317 * WebCoreSources.bkl:
2318 * dom/ClientRect.cpp: Added.
2319 (WebCore::ClientRect::ClientRect):
2320 * dom/ClientRect.h: Added.
2321 (WebCore::ClientRect::create):
2322 (WebCore::ClientRect::top):
2323 (WebCore::ClientRect::right):
2324 (WebCore::ClientRect::bottom):
2325 (WebCore::ClientRect::left):
2326 (WebCore::ClientRect::width):
2327 (WebCore::ClientRect::height):
2328 * dom/ClientRect.idl: Added.
2329 * dom/ClientRectList.cpp: Added.
2330 (WebCore::ClientRectList::ClientRectList):
2331 (WebCore::ClientRectList::~ClientRectList):
2332 (WebCore::ClientRectList::length):
2333 (WebCore::ClientRectList::item):
2334 * dom/ClientRectList.h: Added.
2335 (WebCore::ClientRectList::create):
2336 * dom/ClientRectList.idl: Added.
2338 (WebCore::Element::getClientRects):
2339 (WebCore::Element::getBoundingClientRect):
2342 * page/DOMWindow.idl:
2343 * rendering/RenderInline.cpp:
2344 (WebCore::RenderInline::absoluteRects):
2345 (WebCore::RenderInline::absoluteQuads):
2347 2009-02-10 David Hyatt <hyatt@apple.com>
2349 Get rid of capsLockStateMayHaveChanged on RenderObject. It is only implemented by one class (text fields),
2350 so devirtualize and just query at the single call site.
2352 Reviewed by Eric Seidel
2354 * page/EventHandler.cpp:
2355 (WebCore::EventHandler::capsLockStateMayHaveChanged):
2356 * rendering/RenderObject.h:
2357 * rendering/RenderTextControlSingleLine.h:
2359 2009-02-10 David Hyatt <hyatt@apple.com>
2361 Shrink the size of all RenderObjects (except for RenderInlines) by 4 bytes. This patch moves the cached vertical position member to RenderInlines,
2362 since they were the only objects being queried across multiple lines.
2364 Reviewed by Sam Weinig
2366 * rendering/InlineFlowBox.cpp:
2367 (WebCore::verticalPositionForBox):
2368 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2369 * rendering/RenderBoxModelObject.cpp:
2370 (WebCore::RenderBoxModelObject::verticalPosition):
2371 * rendering/RenderBoxModelObject.h:
2372 * rendering/RenderInline.cpp:
2373 (WebCore::RenderInline::RenderInline):
2374 (WebCore::RenderInline::verticalPositionFromCache):
2375 * rendering/RenderInline.h:
2376 (WebCore::RenderInline::invalidateVerticalPosition):
2377 * rendering/RenderObject.cpp:
2378 (WebCore::RenderObject::RenderObject):
2379 * rendering/RenderObject.h:
2380 * rendering/RenderText.cpp:
2381 * rendering/RenderText.h:
2382 * rendering/bidi.cpp:
2383 (WebCore::RenderBlock::layoutInlineChildren):
2385 2009-02-10 Dimitri Glazkov <dglazkov@chromium.org>
2387 Reviewed by Mark Rowe.
2389 https://bugs.webkit.org/show_bug.cgi?id=23868
2390 Fix code style issues: removed 80-col wrapping, incorrect include style, if statement body on same line.
2392 * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
2393 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
2395 2009-02-10 Dimitri Glazkov <dglazkov@chromium.org>
2397 Reviewed by Eric Seidel.
2399 https://bugs.webkit.org/show_bug.cgi?id=23868
2400 Add HTMLInputElement and HTMLOptionsCollection V8 custom bindings.
2402 * bindings/v8/custom/V8HTMLInputElementCustom.cpp: Added.
2403 (WebCore::ACCESSOR_GETTER):
2404 (WebCore::ACCESSOR_SETTER):
2405 (WebCore::CALLBACK_FUNC_DECL):
2406 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp: Added.
2407 (WebCore::ACCESSOR_GETTER):
2408 (WebCore::ACCESSOR_SETTER):
2410 2009-02-10 Adam Roben <aroben@apple.com>
2412 Fix Bug 23871: Assertion failure beneath WebCore::openFunc when
2413 running http/tests/security/xss-DENIED-xsl-document-redirect.xml
2415 <https://bugs.webkit.org/show_bug.cgi?id=23871>
2417 Reviewed by Alexey Proskuryakov.
2419 Covered by existing tests.
2421 * dom/XMLTokenizerLibxml2.cpp:
2422 (WebCore::openFunc): Use the two-parameter KURL constructor so that
2423 the string will be parsed. libxml2 gives us a UTF-8-encoded string
2424 that needs to be parsed.
2426 2009-02-10 David Hyatt <hyatt@apple.com>
2428 Shrink the size of all replaced elements (images, form controls, plugins) by 4 bytes by packing the
2429 overflow boolean into the RenderObject base class.
2431 Reviewed by Sam Weinig
2433 * rendering/RenderObject.cpp:
2434 (WebCore::RenderObject::RenderObject):
2435 * rendering/RenderObject.h:
2436 (WebCore::RenderObject::replacedHasOverflow):
2437 (WebCore::RenderObject::setReplacedHasOverflow):
2438 * rendering/RenderReplaced.cpp:
2439 (WebCore::RenderReplaced::RenderReplaced):
2440 (WebCore::RenderReplaced::~RenderReplaced):
2441 (WebCore::RenderReplaced::adjustOverflowForBoxShadow):
2442 (WebCore::RenderReplaced::overflowHeight):
2443 (WebCore::RenderReplaced::overflowWidth):
2444 (WebCore::RenderReplaced::overflowLeft):
2445 (WebCore::RenderReplaced::overflowTop):
2446 (WebCore::RenderReplaced::overflowRect):
2447 * rendering/RenderReplaced.h:
2449 2009-02-10 Eric Carlson <eric.carlson@apple.com>
2451 Reviewed by Simon Fraser.
2453 https://bugs.webkit.org/show_bug.cgi?id=23870
2454 Make it possible for a port to require a user gesture for an <audio> or <video> element
2457 * html/HTMLMediaElement.cpp:
2458 (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_loadRestrictions.
2459 (WebCore::HTMLMediaElement::attributeChanged): Only one attribute can change so put an "else" between tests.
2460 (WebCore::HTMLMediaElement::load): Return INVALID_STATE_ERR if RequireUserGestureLoadRestriction is set
2461 and we are not preocessing a user gesture.
2462 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): Remove unnecessary white space.
2463 (WebCore::HTMLMediaElement::play): Ditto.
2464 (WebCore::HTMLMediaElement::endScrubbing): Remove unnecessary braces added in r40789.
2465 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Cache currentTime() in a local instead of calling it
2467 (WebCore::HTMLMediaElement::processingUserGesture): New.
2468 * html/HTMLMediaElement.h:
2469 (WebCore::HTMLMediaElement::): Define LoadRestrictions, add m_loadRestrictions.
2471 2009-02-10 Holger Hans Peter Freyther <zecke@selfish.org>
2473 Reviewed by Sam Weinig.
2475 Remove the SVG checks from FloatPoint3D as it is used
2476 by TransformationMatrix.
2478 * platform/graphics/FloatPoint3D.cpp:
2479 * platform/graphics/FloatPoint3D.h:
2481 2009-02-10 David Hyatt <hyatt@apple.com>
2483 Remove the m_baseline member variable from all line boxes, since it can easily be computed when needed and did not need to be cached.
2485 Reviewed by Sam Weinig
2487 * rendering/EllipsisBox.cpp:
2488 (WebCore::EllipsisBox::paint):
2489 (WebCore::EllipsisBox::nodeAtPoint):
2490 * rendering/EllipsisBox.h:
2491 (WebCore::EllipsisBox::EllipsisBox):
2492 * rendering/InlineBox.h:
2493 (WebCore::InlineBox::InlineBox):
2494 * rendering/InlineFlowBox.cpp:
2495 (WebCore::InlineFlowBox::verticallyAlignBoxes):
2496 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2497 (WebCore::InlineFlowBox::placeBoxesVertically):
2498 (WebCore::InlineFlowBox::paintTextDecorations):
2499 * rendering/InlineFlowBox.h:
2500 (WebCore::InlineFlowBox::marginBorderPaddingLeft):
2501 (WebCore::InlineFlowBox::marginBorderPaddingRight):
2502 (WebCore::InlineFlowBox::marginLeft):
2503 (WebCore::InlineFlowBox::marginRight):
2504 (WebCore::InlineFlowBox::borderLeft):
2505 (WebCore::InlineFlowBox::borderRight):
2506 (WebCore::InlineFlowBox::borderTop):
2507 (WebCore::InlineFlowBox::borderBottom):
2508 (WebCore::InlineFlowBox::paddingLeft):
2509 (WebCore::InlineFlowBox::paddingRight):
2510 (WebCore::InlineFlowBox::paddingTop):
2511 (WebCore::InlineFlowBox::paddingBottom):
2512 (WebCore::InlineFlowBox::includeLeftEdge):
2513 (WebCore::InlineFlowBox::includeRightEdge):
2514 (WebCore::InlineFlowBox::baseline):
2515 * rendering/InlineTextBox.cpp:
2516 (WebCore::InlineTextBox::paint):
2517 (WebCore::InlineTextBox::paintDecoration):
2518 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
2519 (WebCore::InlineTextBox::paintCompositionUnderline):
2520 * rendering/RenderBlock.cpp:
2521 (WebCore::RenderBlock::getBaselineOfFirstLineBox):
2522 (WebCore::RenderBlock::getBaselineOfLastLineBox):
2523 * rendering/RenderTableCell.cpp:
2524 (WebCore::RenderTableCell::baselinePosition):
2525 * rendering/RootInlineBox.cpp:
2526 (WebCore::RootInlineBox::placeEllipsis):
2527 * rendering/SVGInlineTextBox.cpp:
2528 (WebCore::SVGInlineTextBox::paintDecoration):
2529 * rendering/SVGRootInlineBox.cpp:
2530 (WebCore::applyTextAnchorToTextChunk):
2531 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
2533 2009-02-10 Alexey Proskuryakov <ap@webkit.org>
2535 Reviewed by Darin Adler.
2537 https://bugs.webkit.org/show_bug.cgi?id=23867
2538 Eliminate obsolete frame->document() checks
2540 * page/FrameView.cpp: (WebCore::FrameView::paintContents): Apparently due to a typo
2541 (document vs. !document), fillWithRed was always set to false, and other branches were
2542 never taken. Removing the check for document restores debug-only red color filling.
2544 * loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): Only call dispatchWindowObjectAvailable()
2545 after a document is created. A client can do anything in its delegate method, so we'd need
2546 to have frame->document() checks otherwise. DumpRenderTree uses this delegate to add its
2547 custom property, and it was crashing due to null document in JSDOMWindowBase::getOwnPropertySlot().
2549 * bindings/js/JSDOMWindowBase.cpp:
2550 (WebCore::JSDOMWindowBase::getOwnPropertySlot):
2551 * bindings/js/JSDOMWindowCustom.cpp:
2552 (WebCore::JSDOMWindow::addEventListener):
2553 (WebCore::JSDOMWindow::removeEventListener):
2554 * bindings/js/JSNavigatorCustom.cpp:
2555 (WebCore::needsYouTubeQuirk):
2556 * bindings/js/ScheduledAction.cpp:
2557 (WebCore::ScheduledAction::execute):
2558 * bindings/js/ScriptControllerMac.mm:
2559 (WebCore::updateRenderingForBindings):
2561 (WebCore::Document::initSecurityContext):
2562 * editing/Editor.cpp:
2563 (WebCore::Editor::deleteWithDirection):
2564 (WebCore::Editor::dispatchCPPEvent):
2565 (WebCore::Editor::applyStyle):
2566 (WebCore::Editor::applyParagraphStyle):
2567 * editing/EditorCommand.cpp:
2568 (WebCore::Editor::Command::execute):
2569 (WebCore::Editor::Command::isEnabled):
2570 (WebCore::Editor::Command::state):
2571 (WebCore::Editor::Command::value):
2572 * editing/SelectionController.cpp:
2573 (WebCore::SelectionController::recomputeCaretRect):
2574 (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
2575 (WebCore::SelectionController::selectAll):
2576 (WebCore::SelectionController::setFocused):
2577 * inspector/InspectorController.cpp:
2578 (WebCore::getResourceDocumentNode):
2579 * inspector/JavaScriptDebugServer.cpp:
2580 (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
2581 * loader/DocumentLoader.cpp:
2582 (WebCore::canonicalizedTitle):
2583 (WebCore::DocumentLoader::stopLoading):
2584 (WebCore::DocumentLoader::isLoadingInAPISense):
2585 (WebCore::DocumentLoader::subresource):
2586 (WebCore::DocumentLoader::getSubresources):
2587 * loader/FrameLoader.cpp:
2588 (WebCore::FrameLoader::urlSelected):
2589 (WebCore::FrameLoader::stop):
2590 (WebCore::FrameLoader::iconURL):
2591 (WebCore::FrameLoader::executeIfJavaScriptURL):
2592 (WebCore::FrameLoader::clear):
2593 (WebCore::FrameLoader::endIfNotLoadingMainResource):
2594 (WebCore::FrameLoader::restoreDocumentState):
2595 (WebCore::FrameLoader::gotoAnchor):
2596 (WebCore::FrameLoader::loadDone):
2597 (WebCore::FrameLoader::checkCompleted):
2598 (WebCore::FrameLoader::checkCallImplicitClose):
2599 (WebCore::FrameLoader::scheduleRefresh):
2600 (WebCore::FrameLoader::outgoingOrigin):
2601 (WebCore::FrameLoader::canCachePageContainingThisFrame):
2602 (WebCore::FrameLoader::logCanCacheFrameDecision):
2603 (WebCore::FrameLoader::updatePolicyBaseURL):
2604 (WebCore::FrameLoader::setPolicyBaseURL):
2605 (WebCore::FrameLoader::frameDetached):
2606 (WebCore::FrameLoader::shouldScrollToAnchor):
2607 (WebCore::FrameLoader::saveDocumentState):
2608 * loader/archive/cf/LegacyWebArchive.cpp:
2609 (WebCore::LegacyWebArchive::create):
2610 * loader/icon/IconFetcher.cpp:
2611 (WebCore::IconFetcher::create):
2612 * loader/icon/IconLoader.cpp:
2613 (WebCore::IconLoader::startLoading):
2614 * page/AccessibilityRenderObject.cpp:
2615 (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
2617 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
2618 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
2619 * page/DOMWindow.cpp:
2620 (WebCore::DOMWindow::sessionStorage):
2621 (WebCore::DOMWindow::alert):
2622 (WebCore::DOMWindow::confirm):
2623 (WebCore::DOMWindow::prompt):
2624 (WebCore::DOMWindow::scrollX):
2625 (WebCore::DOMWindow::scrollY):
2626 (WebCore::DOMWindow::getMatchedCSSRules):
2627 (WebCore::DOMWindow::openDatabase):
2628 (WebCore::DOMWindow::scrollBy):
2629 (WebCore::DOMWindow::scrollTo):
2630 * page/EventHandler.cpp:
2631 (WebCore::EventHandler::allowDHTMLDrag):
2632 (WebCore::EventHandler::scrollOverflow):
2633 (WebCore::EventHandler::handleMousePressEvent):
2634 (WebCore::EventHandler::handleMouseDoubleClickEvent):
2635 (WebCore::EventHandler::handleMouseMoveEvent):
2636 (WebCore::EventHandler::handleMouseReleaseEvent):
2637 (WebCore::EventHandler::updateDragAndDrop):
2638 (WebCore::EventHandler::handleWheelEvent):
2639 (WebCore::EventHandler::sendContextMenuEvent):
2640 (WebCore::EventHandler::capsLockStateMayHaveChanged):
2641 (WebCore::EventHandler::sendResizeEvent):
2642 (WebCore::EventHandler::sendScrollEvent):
2643 * page/FocusController.cpp:
2644 (WebCore::deepFocusableNode):
2645 (WebCore::FocusController::advanceFocus):
2647 (WebCore::Frame::setFocusedNodeIfNeeded):
2648 (WebCore::Frame::shouldApplyTextZoom):
2649 (WebCore::Frame::shouldApplyPageZoom):
2650 (WebCore::Frame::setZoomFactor):
2651 (WebCore::Frame::setPrinting):
2652 (WebCore::Frame::reapplyStyles):
2653 (WebCore::Frame::isContentEditable):
2654 (WebCore::Frame::computeAndSetTypingStyle):
2655 (WebCore::Frame::selectionComputedStyle):
2656 (WebCore::Frame::applyEditingStyleToBodyElement):
2657 (WebCore::Frame::removeEditingStyleFromBodyElement):
2658 (WebCore::Frame::contentRenderer):
2659 (WebCore::Frame::styleForSelectionStart):
2660 (WebCore::Frame::setSelectionFromNone):
2661 (WebCore::Frame::findString):
2662 (WebCore::Frame::markAllMatchesForText):
2663 (WebCore::Frame::setMarkedTextMatchesAreHighlighted):
2664 (WebCore::Frame::documentTypeString):
2665 (WebCore::Frame::shouldClose):
2666 (WebCore::Frame::respondToChangedSelection):
2667 * page/FrameView.cpp:
2668 (WebCore::FrameView::~FrameView):
2669 (WebCore::FrameView::createScrollbar):
2670 (WebCore::FrameView::layout):
2671 (WebCore::FrameView::layoutTimerFired):
2672 (WebCore::FrameView::scheduleRelayout):
2673 (WebCore::FrameView::needsLayout):
2674 (WebCore::FrameView::unscheduleRelayout):
2675 (WebCore::FrameView::windowClipRect):
2676 * page/Geolocation.cpp:
2677 (WebCore::Geolocation::disconnectFrame):
2679 (WebCore::networkStateChanged):
2680 (WebCore::Page::~Page):
2681 (WebCore::Page::unmarkAllTextMatches):
2682 (WebCore::Page::setMediaVolume):
2683 * page/animation/AnimationController.cpp:
2684 (WebCore::AnimationControllerPrivate::updateRenderingDispatcherFired):
2685 * page/mac/EventHandlerMac.mm:
2686 (WebCore::EventHandler::currentKeyboardEvent):
2687 (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
2688 * page/mac/FrameMac.mm:
2689 (WebCore::Frame::dashboardRegionsDictionary):
2690 (WebCore::Frame::setUserStyleSheetLocation):
2691 (WebCore::Frame::setUserStyleSheet):
2692 * storage/LocalStorageArea.cpp:
2693 (WebCore::LocalStorageArea::dispatchStorageEvent):
2694 * storage/SessionStorageArea.cpp:
2695 (WebCore::SessionStorageArea::dispatchStorageEvent):
2696 * svg/graphics/SVGImage.cpp:
2697 (WebCore::SVGImage::setContainerSize):
2698 (WebCore::SVGImage::usesContainerSize):
2699 (WebCore::SVGImage::size):
2700 (WebCore::SVGImage::hasRelativeWidth):
2701 (WebCore::SVGImage::hasRelativeHeight):
2702 Removed frame->document() checks.
2704 2009-02-10 Adam Treat <adam.treat@torchmobile.com>
2706 Reviewed by George Staikos.
2708 Attempt to fix the Qt build after r40791.
2710 * rendering/RenderSVGRoot.cpp:
2712 2009-02-10 Adam Treat <adam.treat@torchmobile.com>
2714 Reviewed by George Staikos.
2718 * dom/ContainerNode.cpp:
2719 (WebCore::ContainerNode::replaceChild):
2721 2009-02-10 Adam Treat <adam.treat@torchmobile.com>
2723 Fix Qt build following r40793.
2725 * editing/qt/EditorQt.cpp:
2727 2009-02-10 Feng Qian <feng@chromium.org>
2729 Reviewed by Alexey Proskuryakov.
2731 Fix crashes when accessing navigator object of a deleted frame.
2732 https://bugs.webkit.org/show_bug.cgi?id=23626
2733 A layout test is added: fast/dom/navigator-detached-no-crash.html
2735 * page/Navigator.cpp:
2736 (WebCore::Navigator::cookieEnabled):
2737 (WebCore::Navigator::javaEnabled):
2739 2009-02-10 Sverrir Berg <sverrir@chromium.org>
2741 Reviewed by Eric Seidel.
2743 https://bugs.webkit.org/show_bug.cgi?id=23630
2744 Add complex font rendering using Skia instead of Windows ScriptTextOut.
2745 This adds support for enhanced webkit styles when drawing complex
2748 * platform/graphics/chromium/FontChromiumWin.cpp:
2749 (WebCore::Font::drawGlyphs):
2750 (WebCore::Font::drawComplexText):
2751 * platform/graphics/chromium/UniscribeHelper.cpp:
2752 (WebCore::containsMissingGlyphs):
2753 (WebCore::UniscribeHelper::draw):
2754 (WebCore::UniscribeHelper::shape):
2755 * platform/graphics/chromium/UniscribeHelper.h:
2756 * platform/graphics/skia/SkiaFontWin.cpp:
2757 (WebCore::windowsCanHandleTextDrawing):
2758 (WebCore::skiaDrawText):
2759 (WebCore::paintSkiaText):
2760 * platform/graphics/skia/SkiaFontWin.h:
2762 2009-02-10 Darin Fisher <darin@chromium.org>
2764 Revert r40797 as requested by Sam Weinig.
2766 https://bugs.webkit.org/show_bug.cgi?id=23809
2768 * bindings/scripts/CodeGeneratorJS.pm:
2770 * html/HTMLCanvasElement.idl:
2772 2009-02-09 Darin Fisher <darin@chromium.org>
2774 Reviewed by Eric Seidel.
2776 https://bugs.webkit.org/show_bug.cgi?id=23855
2777 Fix TransformationMatrixSkia.cpp and GraphicsContextSkia.cpp bustage
2779 * platform/graphics/skia/GraphicsContextSkia.cpp:
2780 (WebCore::GraphicsContext::getCTM):
2781 * platform/graphics/skia/TransformationMatrixSkia.cpp:
2782 (WebCore::TransformationMatrix::operator SkMatrix):
2784 2009-02-09 Dan Bernstein <mitz@apple.com>
2786 Reviewed by Dave Hyatt.
2788 - fix <rdar://problem/6568942> REGRESSION: Font rendering in Wikipedia input field is incorrect (default GDI text mode)
2790 * platform/graphics/win/SimpleFontDataWin.cpp:
2791 (WebCore::SimpleFontData::widthForGDIGlyph): Make sure that the DC is
2792 in the advanced graphics mode before calling GetCharWidthI(), because
2793 otherwise that function returns incorrect results for the default UI
2794 font at a certain size.
2796 2009-02-09 Chris Marrin <cmarrin@apple.com>
2798 Reviewed by Simon Fraser
2800 https://bugs.webkit.org/show_bug.cgi?id=23689
2802 Added 3D functions to WebKitCSSMatrix. This depends on the 3D functions
2803 added to TransformationMatrix in https://bugs.webkit.org/show_bug.cgi?id=6868
2805 Test: transforms/3d/cssmatrix-3d-interface.xhtml
2807 * css/WebKitCSSMatrix.cpp:
2808 * css/WebKitCSSMatrix.h:
2809 * css/WebKitCSSMatrix.idl:
2811 2009-02-09 Mark Rowe <mrowe@apple.com>
2813 Reviewed by Darin Adler.
2815 Fix <https://bugs.webkit.org/show_bug.cgi?id=23858>
2816 Bug 23858: Crash when removing a HTMLSelectElement from the document from inside its focus event handler
2818 * html/HTMLSelectElement.cpp:
2819 (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Don't store the renderer in a local variable
2820 as it can be invalidated by any of the calls to focus() within the function. Instead, retrieve it and
2821 null-check it when it is needed.
2823 2009-02-09 David Hyatt <hyatt@apple.com>
2825 Remove the m_height member from InlineBox. This shaves 4 bytes off of all inline boxes. Unfortunately SVG
2826 sets heights that are independent of the renderer or of the font, and so all SVG boxes have to retain m_height
2829 height() on InlineBox is now a virtual function that does a dynamic computation (including shrinking boxes
2830 with no text children). For SVG boxes there is also a non-virtual setHeight function for updating the
2831 m_height member variable like before.
2833 Reviewed by Darin Adler
2835 * rendering/EllipsisBox.cpp:
2836 (WebCore::EllipsisBox::nodeAtPoint):
2837 * rendering/EllipsisBox.h:
2838 (WebCore::EllipsisBox::EllipsisBox):
2839 * rendering/InlineBox.cpp:
2840 (WebCore::InlineBox::height):
2841 (WebCore::InlineBox::root):
2842 * rendering/InlineBox.h:
2843 (WebCore::InlineBox::InlineBox):
2844 (WebCore::InlineBox::isInlineFlowBox):
2845 (WebCore::InlineBox::isRootInlineBox):
2846 (WebCore::InlineBox::topOverflow):
2847 (WebCore::InlineBox::bottomOverflow):
2848 (WebCore::InlineBox::leftOverflow):
2849 (WebCore::InlineBox::rightOverflow):
2850 * rendering/InlineFlowBox.cpp:
2851 (WebCore::InlineFlowBox::height):
2852 (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
2853 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2854 (WebCore::InlineFlowBox::placeBoxesVertically):
2855 (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
2856 (WebCore::InlineFlowBox::nodeAtPoint):
2857 * rendering/InlineFlowBox.h:
2858 (WebCore::InlineFlowBox::isInlineFlowBox):
2859 * rendering/InlineTextBox.cpp:
2860 (WebCore::InlineTextBox::height):
2861 (WebCore::InlineTextBox::nodeAtPoint):
2862 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
2863 (WebCore::InlineTextBox::paintCompositionUnderline):
2864 * rendering/InlineTextBox.h:
2865 * rendering/RootInlineBox.cpp:
2866 (WebCore::RootInlineBox::height):
2867 (WebCore::RootInlineBox::placeEllipsis):
2868 (WebCore::RootInlineBox::setVerticalOverflowPositions):
2869 * rendering/RootInlineBox.h:
2870 (WebCore::RootInlineBox::isRootInlineBox):
2871 (WebCore::RootInlineBox::topOverflow):
2872 (WebCore::RootInlineBox::bottomOverflow):
2873 (WebCore::RootInlineBox::leftOverflow):
2874 (WebCore::RootInlineBox::rightOverflow):
2875 (WebCore::RootInlineBox::selectionBottom):
2876 (WebCore::RootInlineBox::Overflow::Overflow):
2877 (WebCore::RootInlineBox::setVerticalSelectionPositions):
2878 * rendering/SVGInlineFlowBox.h:
2879 (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
2880 (WebCore::SVGInlineFlowBox::height):
2881 (WebCore::SVGInlineFlowBox::setHeight):
2882 * rendering/SVGInlineTextBox.cpp:
2883 (WebCore::SVGInlineTextBox::SVGInlineTextBox):
2884 * rendering/SVGInlineTextBox.h:
2885 (WebCore::SVGInlineTextBox::height):
2886 (WebCore::SVGInlineTextBox::setHeight):
2887 * rendering/SVGRootInlineBox.cpp:
2888 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
2889 * rendering/SVGRootInlineBox.h:
2890 (WebCore::SVGRootInlineBox::SVGRootInlineBox):
2891 (WebCore::SVGRootInlineBox::height):
2892 (WebCore::SVGRootInlineBox::setHeight):
2894 2009-02-09 Eric Seidel <eric@webkit.org>
2896 Reviewed by Sam Weinig.
2898 Document our Selection DOM extensions
2899 (in preparation for re-writing Selection to work with ranges)
2901 * page/DOMSelection.cpp:
2902 (WebCore::DOMSelection::type):
2903 * page/DOMSelection.h:
2904 * page/DOMSelection.idl:
2906 2009-02-09 Eric Seidel <eric@webkit.org>
2908 Attempt to fix wx build
2910 * WebCoreSources.bkl: change Selection to VisibleSelection
2912 2009-02-06 Darin Fisher <darin@chromium.org>
2914 Reviewed by Eric Seidel.
2916 https://bugs.webkit.org/show_bug.cgi?id=23809
2917 Return CanvasRenderingContext2D instead of DOMObject in IDL to avoid V8 #ifdefs
2919 * bindings/scripts/CodeGeneratorJS.pm:
2921 * html/HTMLCanvasElement.idl:
2923 2009-02-09 Dirk Schulze <krit@webkit.org>
2925 Reviewed by Eric Seidel.
2927 Transform the gradient instead of the context for most platforms and
2928 transform the context after CGContextReplacePathWithStrokedPath for CG.
2930 REGRESSION: SVG gradient transformation/BoundingBox can cause ugly stroke thickness
2931 https://bugs.webkit.org/show_bug.cgi?id=23547
2933 * platform/graphics/Gradient.h:
2934 (WebCore::Gradient::setGradientSpaceTransform):
2935 (WebCore::Gradient::gradientSpaceTransform):
2936 * platform/graphics/cairo/GradientCairo.cpp:
2937 (WebCore::Gradient::platformGradient):
2938 * platform/graphics/cg/GraphicsContextCG.cpp:
2939 (WebCore::GraphicsContext::fillPath):
2940 (WebCore::GraphicsContext::strokePath):
2941 (WebCore::GraphicsContext::fillRect):
2942 * platform/graphics/qt/GraphicsContextQt.cpp:
2943 (WebCore::GraphicsContext::fillPath):
2944 (WebCore::GraphicsContext::strokePath):
2945 (WebCore::GraphicsContext::fillRect):
2946 * platform/graphics/skia/GradientSkia.cpp:
2947 (WebCore::Gradient::platformGradient):
2948 * svg/graphics/SVGPaintServerGradient.cpp:
2949 (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
2950 (WebCore::clipToTextMask):
2951 (WebCore::SVGPaintServerGradient::setup):
2952 (WebCore::SVGPaintServerGradient::teardown):
2954 2009-02-09 Sam Weinig <sam@webkit.org>
2956 Reviewed by David Hyatt.
2958 Fix the highlight when inspecting inline elements.
2960 * inspector/InspectorController.cpp:
2961 (WebCore::drawHighlightForBox):
2962 (WebCore::drawHighlightForLineBoxes):
2963 (WebCore::InspectorController::drawNodeHighlight):
2965 2009-02-09 Eric Seidel <eric@webkit.org>
2967 Fix the gtk build by adding VisibleSelection and removing Selection.
2971 2009-02-09 Eric Seidel <eric@webkit.org>
2973 Reviewed by Dave Hyatt.
2975 Rename Selection to VisibleSelection to allow us to separate
2976 the selections the user works with from the ones used by
2977 the JS editing APIs.
2978 https://bugs.webkit.org/show_bug.cgi?id=23852
2980 No functional changes, thus no tests.
2985 * WebCore.vcproj/WebCore.vcproj:
2986 * WebCore.xcodeproj/project.pbxproj:
2988 (WebCore::Element::updateFocusAppearance):
2989 * editing/ApplyStyleCommand.cpp:
2990 (WebCore::ApplyStyleCommand::updateStartEnd):
2991 (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
2992 * editing/BreakBlockquoteCommand.cpp:
2993 (WebCore::BreakBlockquoteCommand::doApply):
2994 * editing/CompositeEditCommand.cpp:
2995 (WebCore::CompositeEditCommand::inputText):
2996 (WebCore::CompositeEditCommand::deleteSelection):
2997 (WebCore::CompositeEditCommand::rebalanceWhitespace):
2998 (WebCore::CompositeEditCommand::pushAnchorElementDown):
2999 (WebCore::CompositeEditCommand::pushPartiallySelectedAnchorElementsDown):
3000 (WebCore::CompositeEditCommand::moveParagraphs):
3001 (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
3002 (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
3003 * editing/CompositeEditCommand.h:
3004 * editing/CreateLinkCommand.cpp:
3005 (WebCore::CreateLinkCommand::doApply):
3006 * editing/DeleteButtonController.cpp:
3007 (WebCore::enclosingDeletableElement):
3008 (WebCore::DeleteButtonController::respondToChangedSelection):
3009 * editing/DeleteButtonController.h:
3010 * editing/DeleteSelectionCommand.cpp:
3011 (WebCore::DeleteSelectionCommand::DeleteSelectionCommand):
3012 (WebCore::DeleteSelectionCommand::clearTransientState):
3013 (WebCore::DeleteSelectionCommand::doApply):
3014 * editing/DeleteSelectionCommand.h:
3015 (WebCore::DeleteSelectionCommand::create):
3016 * editing/EditCommand.cpp:
3017 (WebCore::EditCommand::setStartingSelection):
3018 (WebCore::EditCommand::setEndingSelection):
3019 * editing/EditCommand.h:
3020 (WebCore::EditCommand::startingSelection):
3021 (WebCore::EditCommand::endingSelection):
3022 * editing/Editor.cpp:
3023 (WebCore::Editor::selectionForCommand):
3024 (WebCore::Editor::respondToChangedSelection):
3025 (WebCore::Editor::respondToChangedContents):
3026 (WebCore::Editor::applyStyle):
3027 (WebCore::Editor::applyParagraphStyle):
3028 (WebCore::Editor::appliedEditing):
3029 (WebCore::Editor::unappliedEditing):
3030 (WebCore::Editor::reappliedEditing):
3031 (WebCore::Editor::insertTextWithoutSendingTextEvent):
3032 (WebCore::Editor::selectComposition):
3033 (WebCore::Editor::confirmComposition):
3034 (WebCore::Editor::advanceToNextMisspelling):
3035 (WebCore::Editor::markMisspellingsAfterTypingToPosition):
3036 (WebCore::markMisspellingsOrBadGrammar):
3037 (WebCore::Editor::markMisspellings):
3038 (WebCore::Editor::markBadGrammar):
3039 (WebCore::Editor::rangeForPoint):
3040 (WebCore::Editor::transpose):
3042 * editing/EditorCommand.cpp:
3043 (WebCore::expandSelectionToGranularity):
3044 (WebCore::executeSwapWithMark):
3045 (WebCore::enabledVisibleSelection):
3046 (WebCore::enabledVisibleSelectionAndMark):
3047 (WebCore::enableCaretInEditableText):
3048 * editing/FormatBlockCommand.cpp:
3049 (WebCore::FormatBlockCommand::modifyRange):
3050 (WebCore::FormatBlockCommand::doApply):
3051 * editing/IndentOutdentCommand.cpp:
3052 (WebCore::IndentOutdentCommand::indentRegion):
3053 (WebCore::IndentOutdentCommand::outdentRegion):
3054 (WebCore::IndentOutdentCommand::doApply):
3055 * editing/InsertLineBreakCommand.cpp:
3056 (WebCore::InsertLineBreakCommand::doApply):
3057 * editing/InsertListCommand.cpp:
3058 (WebCore::InsertListCommand::modifyRange):
3059 (WebCore::InsertListCommand::doApply):
3060 * editing/InsertParagraphSeparatorCommand.cpp:
3061 (WebCore::InsertParagraphSeparatorCommand::doApply):
3062 * editing/InsertTextCommand.cpp:
3063 (WebCore::InsertTextCommand::performTrivialReplace):
3064 (WebCore::InsertTextCommand::input):
3065 * editing/ModifySelectionListLevel.cpp:
3066 (WebCore::getStartEndListChildren):
3067 (WebCore::canIncreaseListLevel):
3068 (WebCore::canDecreaseListLevel):
3069 * editing/MoveSelectionCommand.cpp:
3070 (WebCore::MoveSelectionCommand::doApply):
3071 * editing/RemoveFormatCommand.cpp:
3072 * editing/ReplaceSelectionCommand.cpp:
3073 (WebCore::ReplacementFragment::ReplacementFragment):
3074 (WebCore::ReplaceSelectionCommand::doApply):
3075 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
3076 * editing/Selection.cpp: Removed.
3077 * editing/Selection.h: Removed.
3078 * editing/SelectionController.cpp:
3079 (WebCore::SelectionController::moveTo):
3080 (WebCore::SelectionController::setSelection):
3081 (WebCore::SelectionController::nodeWillBeRemoved):
3082 (WebCore::SelectionController::clear):
3083 (WebCore::SelectionController::setBase):
3084 (WebCore::SelectionController::setExtent):
3085 (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
3086 (WebCore::SelectionController::selectAll):
3087 (WebCore::SelectionController::setSelectedRange):
3088 * editing/SelectionController.h:
3089 (WebCore::SelectionController::selection):
3090 (WebCore::SelectionController::selectionType):
3091 * editing/TypingCommand.cpp:
3092 (WebCore::TypingCommand::insertText):
3093 (WebCore::TypingCommand::deleteKeyPressed):
3094 (WebCore::TypingCommand::forwardDeleteKeyPressed):
3095 * editing/TypingCommand.h:
3096 * editing/VisiblePosition.cpp:
3097 (WebCore::VisiblePosition::honorEditableBoundaryAtOrBefore):
3098 (WebCore::VisiblePosition::honorEditableBoundaryAtOrAfter):
3099 * editing/VisibleSelection.cpp: Added.
3100 (WebCore::VisibleSelection::VisibleSelection):
3101 (WebCore::VisibleSelection::selectionFromContentsOfNode):
3102 (WebCore::VisibleSelection::setBase):
3103 (WebCore::VisibleSelection::setExtent):
3104 (WebCore::VisibleSelection::firstRange):
3105 (WebCore::VisibleSelection::toNormalizedRange):
3106 (WebCore::VisibleSelection::expandUsingGranularity):
3107 (WebCore::makeSearchRange):
3108 (WebCore::VisibleSelection::appendTrailingWhitespace):
3109 (WebCore::VisibleSelection::setBaseAndExtentToDeepEquivalents):
3110 (WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity):
3111 (WebCore::VisibleSelection::updateSelectionType):
3112 (WebCore::VisibleSelection::validate):
3113 (WebCore::VisibleSelection::setWithoutValidation):
3114 (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries):
3115 (WebCore::VisibleSelection::isContentEditable):
3116 (WebCore::VisibleSelection::isContentRichlyEditable):
3117 (WebCore::VisibleSelection::rootEditableElement):
3118 (WebCore::VisibleSelection::shadowTreeRootNode):
3119 (WebCore::VisibleSelection::debugPosition):
3120 (WebCore::VisibleSelection::formatForDebugger):
3121 (WebCore::VisibleSelection::showTreeForThis):
3123 * editing/VisibleSelection.h: Added.
3124 (WebCore::VisibleSelection::):
3125 (WebCore::VisibleSelection::selectionType):
3126 (WebCore::VisibleSelection::setAffinity):
3127 (WebCore::VisibleSelection::affinity):
3128 (WebCore::VisibleSelection::base):
3129 (WebCore::VisibleSelection::extent):
3130 (WebCore::VisibleSelection::start):
3131 (WebCore::VisibleSelection::end):
3132 (WebCore::VisibleSelection::visibleStart):
3133 (WebCore::VisibleSelection::visibleEnd):
3134 (WebCore::VisibleSelection::isNone):
3135 (WebCore::VisibleSelection::isCaret):
3136 (WebCore::VisibleSelection::isRange):
3137 (WebCore::VisibleSelection::isCaretOrRange):
3138 (WebCore::VisibleSelection::isBaseFirst):
3139 (WebCore::VisibleSelection::granularity):
3140 (WebCore::operator==):
3141 (WebCore::operator!=):
3142 * editing/htmlediting.cpp:
3143 (WebCore::selectionForParagraphIteration):
3144 (WebCore::avoidIntersectionWithNode):
3145 * editing/htmlediting.h:
3146 * editing/markup.cpp:
3147 (WebCore::createMarkup):
3148 * html/HTMLInputElement.cpp:
3149 (WebCore::HTMLInputElement::selection):
3150 * html/HTMLInputElement.h:
3151 * html/HTMLTextAreaElement.cpp:
3152 (WebCore::HTMLTextAreaElement::selection):
3153 * html/HTMLTextAreaElement.h:
3154 * page/AccessibilityObject.cpp:
3155 (WebCore::AccessibilityObject::selection):
3156 (WebCore::AccessibilityObject::visiblePositionRangeForUnorderedPositions):
3157 * page/AccessibilityObject.h:
3158 * page/AccessibilityRenderObject.cpp:
3159 (WebCore::AccessibilityRenderObject::selection):
3160 (WebCore::AccessibilityRenderObject::setSelectedTextRange):
3161 (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine):
3162 (WebCore::AccessibilityRenderObject::setSelectedVisiblePositionRange):
3163 (WebCore::AccessibilityRenderObject::doAXRangeForLine):
3164 * page/AccessibilityRenderObject.h:
3165 * page/DOMSelection.cpp:
3166 (WebCore::DOMSelection::anchorNode):
3167 (WebCore::DOMSelection::anchorOffset):
3168 (WebCore::DOMSelection::focusNode):
3169 (WebCore::DOMSelection::focusOffset):
3170 (WebCore::DOMSelection::collapseToEnd):
3171 (WebCore::DOMSelection::collapseToStart):
3172 (WebCore::DOMSelection::getRangeAt):
3173 (WebCore::DOMSelection::addRange):
3174 * page/DOMSelection.h:
3175 * page/DragController.cpp:
3176 (WebCore::DragController::tryDocumentDrag):
3177 (WebCore::setSelectionToDragCaret):
3178 (WebCore::DragController::concludeEditDrag):
3179 (WebCore::prepareClipboardForImageDrag):
3180 (WebCore::DragController::startDrag):
3181 (WebCore::DragController::placeDragCaret):
3182 * page/EditorClient.h:
3183 * page/EventHandler.cpp:
3184 (WebCore::EventHandler::selectClosestWordFromMouseEvent):
3185 (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
3186 (WebCore::EventHandler::handleMousePressEventTripleClick):
3187 (WebCore::EventHandler::handleMousePressEventSingleClick):
3188 (WebCore::EventHandler::updateSelectionForMouseDrag):
3189 (WebCore::EventHandler::handleMouseReleaseEvent):
3191 (WebCore::Frame::mark):
3192 (WebCore::Frame::setMark):
3193 (WebCore::Frame::selectionLayoutChanged):
3194 (WebCore::Frame::shouldChangeSelection):
3195 (WebCore::Frame::shouldDeleteSelection):
3196 (WebCore::Frame::revealSelection):
3197 (WebCore::Frame::setSelectionFromNone):
3198 (WebCore::Frame::findString):
3199 (WebCore::Frame::respondToChangedSelection):
3202 (WebCore::Page::selection):
3204 * page/mac/AccessibilityObjectWrapper.mm:
3205 (-[AccessibilityObjectWrapper textMarkerRangeForSelection]):
3206 * rendering/RenderBlock.cpp:
3207 (WebCore::RenderBlock::fillInlineSelectionGaps):
3208 * rendering/RenderTextControl.cpp:
3209 (WebCore::RenderTextControl::setSelectionRange):
3210 (WebCore::RenderTextControl::selection):
3211 * rendering/RenderTextControl.h:
3212 * rendering/RenderTreeAsText.cpp:
3213 (WebCore::writeSelection):
3214 * rendering/RootInlineBox.cpp:
3215 (WebCore::RootInlineBox::fillLineSelectionGap):
3216 * svg/SVGTextContentElement.cpp:
3217 (WebCore::SVGTextContentElement::selectSubString):
3219 2009-02-09 Dimitri Glazkov <dglazkov@chromium.org>
3221 Reviewed by Dave Hyatt.
3223 https://bugs.webkit.org/show_bug.cgi?id=23806
3224 Fix a regression crash where an empty src value and a "text/html" type
3225 on an EMBED element did not finish ResourceRequest initialization due to
3228 Test: fast/loader/empty-embed-src-attribute.html
3230 * loader/FrameLoader.cpp:
3231 (WebCore::FrameLoader::addExtraFieldsToRequest):
3233 2009-02-09 Rob Buis <rwlbuis@gmail.com>
3235 Reviewed by Eric Seidel.
3237 https://bugs.webkit.org/show_bug.cgi?id=23816
3238 Clean up RenderSVGRoot.cpp
3240 Clean up RenderSVGRoot.cpp.
3242 * rendering/RenderSVGRoot.cpp:
3243 (WebCore::RenderSVGRoot::paint):
3244 (WebCore::RenderSVGRoot::calcViewport):
3246 2009-02-09 Eric Carlson <eric.carlson@apple.com>
3248 Reviewed by Antti Koivisto
3250 https://bugs.webkit.org/show_bug.cgi?id=23737
3251 Make it possible to control media element playback without knowing so many
3252 internal implementation details.
3254 * html/HTMLMediaElement.cpp:
3255 (WebCore::HTMLMediaElement::togglePlayState): New, toggle between playing and paused state.
3256 (WebCore::HTMLMediaElement::beginScrubbing): New, pause as necessary for scrubbing mode.
3257 (WebCore::HTMLMediaElement::endScrubbing): New, resume playback if paused for scrubbing mode.
3258 * html/HTMLMediaElement.h:
3260 (WebCore::HTMLMediaElement::hasVideo): New, added so clients don't need to access MediaPlayer directly.
3261 * html/HTMLVideoElement.h:
3263 (WebCore::HTMLVideoElement::hasVideo): New.
3265 * rendering/MediaControlElements.cpp:
3266 (WebCore::MediaControlPlayButtonElement::defaultEventHandler): Use new media element
3267 togglePlayState method.
3268 (WebCore::MediaControlTimelineElement::defaultEventHandler): Tell media element when scrubbing
3269 begins and ends so it can deal with pausing logic. Don't call setCurrentTime unless the time
3272 * rendering/RenderMedia.cpp:
3273 (WebCore::RenderMedia::updateControls): Ask media element if it is able to play instead of including
3274 internal logic here.
3275 (WebCore::RenderMedia::updateControlVisibility): Ditto.
3277 2009-02-09 Eric Carlson <eric.carlson@apple.com>
3279 Reviewed by Antti Koivisto
3281 Change RenderPart and RenderPartObject constructors to take a Node*
3282 instead of a HTMLFrameOwnerElement* since that is all then need.
3284 * rendering/RenderPart.cpp:
3285 (WebCore::RenderPart::RenderPart): take Node* instead of HTMLFrameOwnerElement*
3286 * rendering/RenderPart.h:
3287 * rendering/RenderPartObject.cpp:
3288 (WebCore::RenderPartObject::RenderPartObject): take Node* instead of HTMLFrameOwnerElement*
3289 * rendering/RenderPartObject.h:
3291 2009-02-09 Dan Bernstein <mitz@apple.com>
3293 - fix -Wmissing-prototypes builds
3295 * editing/ReplaceSelectionCommand.cpp:
3296 (WebCore::isHeaderElement): Marked this function static.
3297 (WebCore::haveSameTagName): Ditto.
3298 * editing/markup.cpp:
3299 (WebCore::isSpecialAncestorBlock): Ditto.
3300 * platform/graphics/transforms/TransformationMatrix.cpp:
3301 (WebCore::makeMapBetweenRects): Removed unused function.
3302 * platform/graphics/transforms/TransformationMatrix.h: Removed unused
3303 declaration of private member makeMapBetweenRects().
3305 2009-02-09 Adam Treat <adam.treat@torchmobile.com>
3307 Reviewed by Sam Weinig.
3309 https://bugs.webkit.org/show_bug.cgi?id=23850
3310 Code cleanup of HTMLParser class which was using a mix of m_* and bare
3311 class member variable names which helps to obfuscate the code. Also
3312 changed a few of the static helper functions to take a const pointer type
3313 as they should not be modifying the node.
3315 * html/HTMLParser.cpp:
3316 (WebCore::HTMLParser::HTMLParser):
3317 (WebCore::HTMLParser::~HTMLParser):
3318 (WebCore::HTMLParser::reset):
3319 (WebCore::HTMLParser::setCurrent):
3320 (WebCore::HTMLParser::parseToken):
3321 (WebCore::HTMLParser::parseDoctypeToken):
3322 (WebCore::isTableSection):
3323 (WebCore::isTablePart):
3324 (WebCore::isTableRelated):
3325 (WebCore::HTMLParser::insertNode):
3326 (WebCore::HTMLParser::handleError):
3327 (WebCore::HTMLParser::textCreateErrorCheck):
3328 (WebCore::HTMLParser::commentCreateErrorCheck):
3329 (WebCore::HTMLParser::headCreateErrorCheck):
3330 (WebCore::HTMLParser::bodyCreateErrorCheck):
3331 (WebCore::HTMLParser::framesetCreateErrorCheck):
3332 (WebCore::HTMLParser::formCreateErrorCheck):
3333 (WebCore::HTMLParser::isindexCreateErrorCheck):
3334 (WebCore::HTMLParser::noscriptCreateErrorCheck):
3335 (WebCore::HTMLParser::pCloserStrictCreateErrorCheck):
3336 (WebCore::HTMLParser::mapCreateErrorCheck):
3337 (WebCore::HTMLParser::getNode):
3338 (WebCore::HTMLParser::allowNestedRedundantTag):
3339 (WebCore::HTMLParser::processCloseTag):
3340 (WebCore::HTMLParser::isInline):
3341 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
3342 (WebCore::HTMLParser::reopenResidualStyleTags):
3343 (WebCore::HTMLParser::pushBlock):
3344 (WebCore::HTMLParser::popBlock):
3345 (WebCore::HTMLParser::popOneBlockCommon):
3346 (WebCore::HTMLParser::popOneBlock):
3347 (WebCore::HTMLParser::moveOneBlockToStack):
3348 (WebCore::HTMLParser::checkIfHasPElementInScope):
3349 (WebCore::HTMLParser::popInlineBlocks):
3350 (WebCore::HTMLParser::freeBlock):
3351 (WebCore::HTMLParser::createHead):
3352 (WebCore::HTMLParser::handleIsindex):
3353 (WebCore::HTMLParser::startBody):
3354 (WebCore::HTMLParser::finished):
3355 (WebCore::HTMLParser::reportErrorToConsole):
3356 * html/HTMLParser.h:
3358 2009-02-09 Alexey Proskuryakov <ap@webkit.org>
3360 Applying review comment on a second location.
3362 * rendering/RenderText.cpp: (WebCore::RenderText::nextOffset):
3363 Use "ifdef BUILDING_ON_TIGER".
3365 2009-02-09 Alexey Proskuryakov <ap@webkit.org>
3367 Reviewed by Darin Adler.
3369 https://bugs.webkit.org/show_bug.cgi?id=23845
3370 editing/deleting/backward-deletion.html fails on Tiger
3372 * rendering/RenderText.cpp:
3373 (WebCore::RenderText::previousOffset):
3374 (WebCore::RenderText::nextOffset):
3375 Work around a bug in older ICU versions by hardcoding narrow voiced marks.
3377 2009-02-09 Adam Roben <aroben@apple.com>
3381 * WebCore.vcproj/WebCore.vcproj: Fix the XML syntax.
3383 2009-02-09 Jian Li <jianli@chromium.org>
3385 Reviewed by Alexey Proskuryakov.
3387 Make WorkerMessagingProxy derive from two base proxy classes.
3388 https://bugs.webkit.org/show_bug.cgi?id=23777
3390 * bindings/js/WorkerScriptController.cpp:
3391 (WebCore::WorkerScriptController::evaluate):
3393 (WebCore::Worker::terminate):
3394 (WebCore::Worker::hasPendingActivity):
3395 * dom/WorkerContext.cpp:
3396 (WebCore::WorkerContext::reportException):
3397 * dom/WorkerMessagingProxy.cpp:
3398 (WebCore::WorkerThreadActivityReportTask::performTask):
3399 (WebCore::WorkerMessagingProxy::postExceptionToWorkerObject):
3400 (WebCore::WorkerMessagingProxy::workerObjectDestroyed):
3401 (WebCore::WorkerMessagingProxy::terminateWorkerContext):
3402 (WebCore::WorkerMessagingProxy::confirmWorkerThreadMessage):
3403 (WebCore::WorkerMessagingProxy::reportPendingActivity):
3404 (WebCore::WorkerMessagingProxy::reportPendingActivityInternal):
3405 (WebCore::WorkerMessagingProxy::hasPendingActivity):
3406 * dom/WorkerMessagingProxy.h:
3408 2009-02-09 Jian Li <jianli@chromium.org>
3410 Reviewed by Alexey Proskuryakov.
3412 Introduce 2 base classes to split WorkerMessagingProxy.
3413 https://bugs.webkit.org/show_bug.cgi?id=23776
3416 * WebCore.vcproj/WebCore.vcproj:
3417 * WebCore.xcodeproj/project.pbxproj:
3418 * dom/WorkerContextProxy.h: Added.
3419 (WebCore::WorkerContextProxy::~WorkerContextProxy):
3420 * dom/WorkerObjectProxy.h: Added.
3421 (WebCore::WorkerObjectProxy::~WorkerObjectProxy):
3423 2009-02-08 David Hyatt <hyatt@apple.com>
3425 Fix for https://bugs.webkit.org/show_bug.cgi?id=23839
3427 Make sure that generated content is properly handled when content is moved from a block run-in
3428 to an inline run-in.
3430 Reviewed by Sam Weinig
3432 Added fast/runin/002.html
3434 * rendering/RenderBlock.cpp:
3435 (WebCore::RenderBlock::handleRunInChild):
3437 2009-02-08 David Hyatt <hyatt@apple.com>
3439 Fix for https://bugs.webkit.org/show_bug.cgi?id=23832, crash when inspecting an image using the
3442 Reviewed by Mark Rowe
3444 * rendering/RenderObject.cpp:
3445 (WebCore::RenderObject::absoluteRectsForRange):
3446 (WebCore::RenderObject::absoluteQuadsForRange):
3448 2009-02-08 Dirk Schulze <krit@webkit.org>
3450 Unreviewed Qt build fix.
3452 TransformationMatrix changes in r40761 broke QT build.
3454 * platform/graphics/qt/GraphicsContextQt.cpp:
3455 (WebCore::GraphicsContext::getCTM):
3456 (WebCore::GraphicsContext::scale):
3458 2009-02-08 Dirk Schulze <krit@webkit.org>
3460 Reviewed by Holger Freyther.
3462 This is a follow up of the last commit. It cleans up TransformationMatrix.h
3463 and convert to a series of #elif.
3465 * platform/graphics/transforms/TransformationMatrix.h:
3467 2009-02-08 Gustavo Noronha Silva <gns@gnome.org>
3469 Reviewed by Simon Fraser.
3471 [CAIRO] build broken by TransformationMatrix rework
3472 https://bugs.webkit.org/show_bug.cgi?id=23831
3474 Fixed cairo build after the TransformationMatrix rework done in
3477 * platform/graphics/cairo/GraphicsContextCairo.cpp:
3478 (WebCore::GraphicsContext::getCTM):
3479 (WebCore::GraphicsContext::concatCTM):
3480 * platform/graphics/cairo/TransformationMatrixCairo.cpp:
3481 (WebCore::TransformationMatrix::operator cairo_matrix_t):
3482 * platform/graphics/transforms/TransformationMatrix.h:
3484 2009-02-07 David Hyatt <hyatt@apple.com>
3486 Shrink the size of all InlineTextBoxes and all InlineBoxes (for images and replaced elements) by four bytes.
3487 Change the overflow variable on InlineFlowBoxes into a short and move the bits for InlineFlowBoxes out of the
3488 base InlineBox class. Since the number of bits in the base class was 35, shoving the 3 bits for InlineFlowBoxes
3489 back down into that class (into the 16 bits exposed by making the overflow variable into a short), all text
3490 boxes and image boxes shrink by 4 bytes.
3494 * rendering/InlineBox.h:
3495 (WebCore::InlineBox::InlineBox):
3496 * rendering/InlineFlowBox.cpp:
3497 (WebCore::InlineFlowBox::placeBoxesHorizontally):
3498 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3499 (WebCore::InlineFlowBox::placeBoxesVertically):
3500 * rendering/InlineFlowBox.h:
3501 (WebCore::InlineFlowBox::InlineFlowBox):
3502 (WebCore::InlineFlowBox::maxHorizontalVisualOverflow):
3503 (WebCore::InlineFlowBox::hasTextChildren):
3505 2009-02-07 Dean Jackson <dino@apple.com>
3507 Attempted build fix for Qt. Not reviewed.
3509 TransformationMatrix changes in r40761 broke non-Apple builds.
3511 * platform/graphics/qt/TransformationMatrixQt.cpp:
3512 (WebCore::TransformationMatrix::operator QMatrix):
3513 * platform/graphics/transforms/TransformationMatrix.h:
3515 2009-02-07 David Hyatt <hyatt@apple.com>
3517 This patch changes the base class of RenderInline from RenderBox to RenderBoxModelObject. This shift
3518 in base class knocks 32 bytes off the size of every RenderInline. All of the necessary functions
3519 for both RenderInline and RenderBox have either been pulled up into RenderBoxModelObject for sharing
3520 or split into two functions (one in each derived class).
3522 Reviewed by Anders and Antti
3525 (WebCore::Element::offsetLeft):
3526 (WebCore::Element::offsetTop):
3527 (WebCore::Element::offsetWidth):
3528 (WebCore::Element::offsetHeight):
3529 (WebCore::Element::offsetParent):
3530 (WebCore::Element::clientWidth):
3531 (WebCore::Element::clientHeight):
3532 (WebCore::Element::scrollWidth):
3533 (WebCore::Element::scrollHeight):
3535 (WebCore::Node::renderBox):
3536 (WebCore::Node::renderBoxModelObject):
3538 * html/HTMLAnchorElement.cpp:
3539 (WebCore::HTMLAnchorElement::isKeyboardFocusable):
3540 * rendering/InlineBox.h:
3541 (WebCore::InlineBox::boxModelObject):
3542 * rendering/InlineFlowBox.cpp:
3543 (WebCore::InlineFlowBox::marginLeft):
3544 (WebCore::InlineFlowBox::marginRight):
3545 (WebCore::InlineFlowBox::placeBoxesHorizontally):
3546 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3547 (WebCore::InlineFlowBox::placeBoxesVertically):
3548 (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
3549 * rendering/InlineFlowBox.h:
3550 (WebCore::InlineFlowBox::borderLeft):
3551 (WebCore::InlineFlowBox::borderRight):
3552 (WebCore::InlineFlowBox::paddingLeft):
3553 (WebCore::InlineFlowBox::paddingRight):
3554 * rendering/RenderBlock.cpp:
3555 (WebCore::getBorderPaddingMargin):
3556 (WebCore::RenderBlock::calcInlinePrefWidths):
3557 * rendering/RenderBox.cpp:
3558 (WebCore::RenderBox::imageChanged):
3559 (WebCore::RenderBox::calcReplacedWidthUsing):
3560 (WebCore::RenderBox::calcReplacedHeightUsing):
3561 (WebCore::RenderBox::containingBlockWidthForPositioned):
3562 (WebCore::RenderBox::containingBlockHeightForPositioned):
3563 (WebCore::RenderBox::calcAbsoluteHorizontal):
3564 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
3565 (WebCore::RenderBox::calcAbsoluteVertical):
3566 (WebCore::RenderBox::calcAbsoluteVerticalValues):
3567 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
3568 (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
3569 (WebCore::RenderBox::positionForCoordinates):
3570 * rendering/RenderBox.h:
3571 (WebCore::RenderBox::borderBoundingBox):
3572 (WebCore::RenderBox::offsetHeight):
3573 (WebCore::RenderBox::marginTop):