1 2009-02-17 David Levin <levin@chromium.org>
3 Reviewed by Alexey Proskuryakov.
5 Bug 23977: Unnecessary timer related headers in files.
6 <https://bugs.webkit.org/show_bug.cgi?id=23977>
8 No observable change in behavior, so no test.
11 * dom/WorkerRunLoop.cpp:
12 * dom/WorkerRunLoop.h:
14 2009-02-17 Peter Abrahamsen <rainhead@gmail.com>
16 Reviewed by Sam Weinig.
18 https://bugs.webkit.org/show_bug.cgi?id=23958
19 <rdar://problem/6587815>
21 Updated XMLHttpRequest with new header names from the latest Access
22 Control draft: http://www.w3.org/TR/access-control/
23 - Access-Control-Origin becomes Access-Control-Allow-Origin
24 - Access-Control-Credentials becomes Access-Control-Allow-Credentials
26 * xml/XMLHttpRequest.cpp:
27 (WebCore::XMLHttpRequest::accessControlCheck):
29 2009-02-17 Kevin Ollivier <kevino@theolliviers.com>
31 wx build fix. Add missing constructor used for empty values.
33 * platform/graphics/wx/FontPlatformData.h:
34 (WebCore::FontPlatformData::FontPlatformData):
36 2009-02-17 Antti Koivisto <antti@apple.com>
38 Reviewed by Dave Kilzer.
40 <rdar://problem/6592446> dynamically updating page doesn't seem to draw when updated
42 Need update after callback.
44 * bindings/js/JSCustomPositionCallback.cpp:
45 (WebCore::JSCustomPositionCallback::handleEvent):
46 * bindings/js/JSCustomPositionErrorCallback.cpp:
47 (WebCore::JSCustomPositionErrorCallback::handleEvent):
49 2009-02-17 Eric Carlson <eric.carlson@apple.com>
51 Reviewed by Antti Koivisto.
53 https://bugs.webkit.org/show_bug.cgi?id=23917
54 Allow a WebKit plug-in to act as a proxy for the <audio> and <video>
57 * DerivedSources.make: add media element proxy exports to .exp file when feature is defined.
59 * WebCore.VideoProxy.exp: New, define the informal protocol exported by a media element proxy.
61 * WebCore.xcodeproj/project.pbxproj: Add MediaPlayerProxy.h.
63 * html/HTMLMediaElement.cpp:
64 (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_needWidgetUpdate.
65 (WebCore::HTMLMediaElement::attributeChanged): Don't detach+attach when PLUGIN_PROXY_FOR_VIDEO, the
66 proxy plug-in handles the poster frame.
67 (WebCore::HTMLMediaElement::rendererIsNeeded): New logic for PLUGIN_PROXY_FOR_VIDEO.
68 (WebCore::HTMLMediaElement::createRenderer): Create RenderPartObject when PLUGIN_PROXY_FOR_VIDEO.
69 (WebCore::HTMLMediaElement::attach): Set m_needWidgetUpdate when PLUGIN_PROXY_FOR_VIDEO
70 (WebCore::HTMLMediaElement::load): Don't reallocate MediaPlayer when PLUGIN_PROXY_FOR_VIDEO, we keep the
71 same plug-in for the life of the element.
72 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): update m_networkState when media player
73 network state changes to EMPTY, otherwise we can get out of sync with engine.
74 (WebCore::HTMLMediaElement::defaultEventHandler): pass event to widget when PLUGIN_PROXY_FOR_VIDEO
75 (WebCore::HTMLMediaElement::deliverNotification): New, deliver notification from proxy plug-in to
77 (WebCore::HTMLMediaElement::setMediaPlayerProxy): New, pass proxy object to media player.
78 (WebCore::HTMLMediaElement::initialURL): New, return the url from the "src" attr or the appropriate
79 <source> element to be used as the initial url for the proxy.
80 (WebCore::HTMLMediaElement::finishParsingChildren): New, allocate MediaPlayer and update widget.
81 * html/HTMLMediaElement.h: Declare new methods for proxy, add m_needWidgetUpdate.
82 (WebCore::HTMLMediaElement::setNeedWidgetUpdate):
84 * html/HTMLVideoElement.cpp:
85 (WebCore::HTMLVideoElement::attach): Poster image is handled by proxy when PLUGIN_PROXY_FOR_VIDEO.
86 (WebCore::HTMLVideoElement::parseMappedAttribute): Ditto.
87 * html/HTMLVideoElement.h:
89 * loader/FrameLoader.cpp:
90 (WebCore::toPlugInElement): Allow cast if element is <video> or <audio>
92 * platform/graphics/MediaPlayer.cpp:
93 (WebCore::MediaPlayer::MediaPlayer): Remove white space.
94 (WebCore::MediaPlayer::setPoster): New, forward call to private player.
95 (WebCore::MediaPlayer::deliverNotification): Ditto.
96 (WebCore::MediaPlayer::setMediaPlayerProxy): Ditto.
97 * platform/graphics/MediaPlayer.h:
98 (WebCore::MediaPlayer::mediaPlayerClient):
100 * platform/graphics/mac/MediaPlayerProxy.h: New, defines media player proxy interface.
102 * rendering/RenderPart.cpp:
103 (WebCore::RenderPart::RenderPart): Change constructor to take Element* instead of Node* as a
104 non-element node doesn't need a renderer
105 * rendering/RenderPart.h: Ditto.
107 * rendering/RenderPartObject.cpp:
108 (WebCore::RenderPartObject::RenderPartObject): Ditto.
109 (WebCore::RenderPartObject::updateWidget): Package params for proxy plug-in when element is
111 * rendering/RenderPartObject.h:
113 2009-02-17 David Hyatt <hyatt@apple.com>
115 Reviewed by Eric Seidel
117 Fix for https://bugs.webkit.org/show_bug.cgi?id=23985
119 Don't allow legends to be anything but display:block.
121 Added fast/forms/inline-ignored-on-legend.html
125 * WebCore.vcproj/WebCore.vcproj:
126 * WebCore.xcodeproj/project.pbxproj:
127 * WebCoreSources.bkl:
129 * html/HTMLLegendElement.cpp:
130 * html/HTMLLegendElement.h:
131 * rendering/RenderLegend.cpp: Removed.
132 * rendering/RenderLegend.h: Removed.
133 * wml/WMLInsertedLegendElement.cpp:
134 * wml/WMLInsertedLegendElement.h:
136 2009-02-13 Brett Wilson <brettw@dhcp-172-22-71-167.mtv.corp.google.com>
138 Reviewed by Simon Fraser.
140 https://bugs.webkit.org/attachment.cgi?id=27666
141 Fix Chromium build build: forgotten include in RenderObject, sync
142 RenderTheme to the recent changes in RenderObject.
144 * rendering/RenderObject.cpp:
145 * rendering/RenderThemeChromiumMac.mm:
146 (WebCore::RenderThemeChromiumMac::updatePressedState):
148 2009-02-17 Gustavo Noronha Silva <gns@gnome.org>
150 Reviewed by Darin Adler.
152 https://bugs.webkit.org/show_bug.cgi?id=22966
153 crash when destroying a webview that opened a page containing <script>
156 Fix m_group being set to 0 instead of to m_singlePageGroup when
157 GroupName is set to empty
160 (WebCore::Page::setGroupName):
162 2009-02-16 Beth Dakin <bdakin@apple.com>
164 Reviewed by Sam Weinig.
166 Fix for <rdar://problem/6386623>
168 I made m_numParsedProperties and m_maxParsedProperties unsigned
169 instead of int, and then added an early return from addPropery() if
170 m_maxParsedProperties exceeds the max value.
173 (WebCore::CSSParser::addProperty):
174 (WebCore::CSSParser::rollbackLastProperties):
175 (WebCore::CSSParser::clearProperties):
176 (WebCore::CSSParser::createFontFaceRule):
177 (WebCore::CSSParser::deleteFontFaceOnlyValues):
180 2009-02-16 Justin Garcia <justin.garcia@apple.com>
182 Reviewed by Mark Rowe.
184 https://bugs.webkit.org/show_bug.cgi?id=16309
185 HTML5: The third execCommand argument for insert{un}orderedlist should be ignored
187 When we originally implemented this command, MSDN documentation said that IE set the
188 id attribute of inserted lists to the third argument to execCommand, but IE doesn't
189 do this nor do any other browsers.
191 * editing/EditorCommand.cpp:
192 (WebCore::executeInsertOrderedList):
193 (WebCore::executeInsertUnorderedList):
194 * editing/IndentOutdentCommand.cpp:
195 (WebCore::IndentOutdentCommand::outdentParagraph):
196 * editing/InsertListCommand.cpp:
197 (WebCore::InsertListCommand::insertList):
198 (WebCore::InsertListCommand::InsertListCommand):
199 (WebCore::InsertListCommand::doApply):
200 * editing/InsertListCommand.h:
201 (WebCore::InsertListCommand::create):
203 2009-02-16 Dan Bernstein <mitz@apple.com>
205 Reviewed by Geoffrey Garen.
207 - fix <rdar://problem/6561077> REGRESSION (r39634): Unable to select an item in stocks widget with the mouse
209 Test: platform/mac/fast/events/pointer-events-dashboard.html
211 * css/CSSStyleSelector.cpp:
212 (WebCore::CSSStyleSelector::applyProperty): Do not apply the
213 pointer-events property in Dashboard backwards compatibility mode,
214 in order to work around misuse of that property by the Stocks widget.
216 2009-02-16 Justin Garcia <justin.garcia@apple.com>
218 Reviewed by Eric Seidel.
220 https://bugs.webkit.org/show_bug.cgi?id=15381
221 execCommand justify modifies the contentEditable node
223 * editing/CompositeEditCommand.cpp:
224 (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): Avoid modifying not just
225 the body element, but any root editable element.
227 2009-02-16 Chris Fleizach <cfleizach@apple.com>
229 Reviewed by Adele Peterson.
231 Bug 23979: AX: alt tag not returned for <input type="image">
232 https://bugs.webkit.org/show_bug.cgi?id=23979
234 Test: accessibility/input-image-alt.html
236 * page/AccessibilityRenderObject.cpp:
237 (WebCore::AccessibilityRenderObject::accessibilityDescription):
239 2009-02-16 Kevin Watters <kevinwatters@gmail.com>
241 Reviewed by Kevin Ollivier.
243 The ref data is not properly set unless we use the CreateMatrix function.
245 https://bugs.webkit.org/show_bug.cgi?id=23978
247 * platform/graphics/wx/TransformationMatrixWx.cpp:
248 (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
250 2009-02-16 Dan Bernstein <mitz@apple.com>
252 Reviewed by John Sullivan.
254 - fix <rdar://problem/6516829> FontPlatformData constructor passes NULL to CTFontCopyGraphicsFont and CTFontGetPlatformFont
256 * platform/graphics/FontCache.cpp:
257 (WebCore::FontDataCacheKeyTraits::emptyValue): Changed to use the
258 FontPlatformData(float, bool, bool) constructor.
259 * platform/graphics/mac/FontCacheMac.mm:
260 (WebCore::FontCache::createFontPlatformData): Changed to pass a valid
261 NSFont to the FontPlatformData constructor, instead of implicitly
262 passing 0 and then calling setFont().
263 * platform/graphics/mac/FontPlatformData.h: Made the NSFont parameter
264 of the constructor mandatory.
266 2009-02-15 David Kilzer <ddkilzer@apple.com>
268 Move duplicate caretWidth constants to RenderObject.h
270 Reviewed by Dan Bernstein.
272 No test since no change in behavior.
274 * rendering/RenderBlock.cpp:
275 (WebCore::RenderBlock::localCaretRect): Removed caretWidth.
276 * rendering/RenderBox.cpp:
277 (WebCore::RenderBox::localCaretRect): Ditto.
278 * rendering/RenderObject.h: Added caretWidth definition.
279 * rendering/RenderText.cpp:
280 (WebCore::RenderText::localCaretRect): Removed caretWidth.
282 2009-02-13 Dimitri Glazkov <dglazkov@chromium.org>
284 Reviewed by Eric Seidel.
286 https://bugs.webkit.org/show_bug.cgi?id=23955
287 V8HTMLPlugInCustom returns undefined, which fools interceptors.
289 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
290 (WebCore::NAMED_PROPERTY_GETTER): Use deferToInterceptor() return value.
291 (WebCore::NAMED_PROPERTY_SETTER): Ditto.
292 (WebCore::INDEXED_PROPERTY_GETTER): Ditto.
293 (WebCore::INDEXED_PROPERTY_SETTER): Ditto.
295 2009-02-13 Dimitri Glazkov <dglazkov@chromium.org>
297 Reviewed by Eric Seidel.
299 https://bugs.webkit.org/show_bug.cgi?id=23954
300 Add V8 custom bindings for CanvasRenderingContext2D.
302 * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: Added.
304 (WebCore::toCanvasStyle):
305 (WebCore::ACCESSOR_GETTER):
306 (WebCore::ACCESSOR_SETTER):
308 2009-02-13 Anders Carlsson <andersca@apple.com>
310 Reviewed by Darin Adler and Dan Bernstein.
312 <rdar://problem/6583187>
314 * page/NavigatorBase.cpp:
315 Handle PPC64 and X86_64 as well.
317 2009-02-13 Darin Adler <darin@apple.com>
319 Reviewed by Mark Rowe.
321 Fix broken tokenizer regression test that reflected a lifetime bug
322 in the document.write optimization. The test failure was trivial to
323 reproduce in COLLECT_ON_EVERY_ALLOCATION mode.
325 * bindings/js/JSHTMLDocumentCustom.cpp:
326 (WebCore::documentWrite): Convert strings to String rather than passing
327 the pointer and length to SegmentedString. The optimization is thus
328 mostly gone. However, there are two ways to bring it back: 1) Apply
329 the patch that makes UString and String share the same buffers.
330 2) Add a UString feature to SegmentedString; simple to do but might
331 risk slowing down normal document parsing.
333 2009-02-13 Adam Treat <adam.treat@torchmobile.com>
335 Caught by Darin Adler.
337 No reason to check m_tokenizer twice for 0 in a row.
340 (WebCore::Document::write):
342 2009-02-13 Lyon Chen <lyon.chen@torchmobile.com>
344 Reviewed by Dave Hyatt.
346 Take into account y() + height() when calculating getLowerRightCorner.
348 * dom/ContainerNode.cpp:
349 (WebCore::ContainerNode::getLowerRightCorner):
351 2009-02-13 Antti Koivisto <antti@apple.com>
353 Reviewed by Dave Hyatt.
355 Most of this code was in RenderBox, restore the copyright lines.
357 * rendering/RenderBoxModelObject.cpp:
358 * rendering/RenderBoxModelObject.h:
360 2009-02-13 David Hyatt <hyatt@apple.com>
362 Get rid of printBoxDecorations, since it is dead code.
364 Reviewed by Dan Bernstein
366 * rendering/RenderObject.h:
368 2009-02-13 Adam Treat <adam.treat@torchmobile.com>
370 Reviewed by Darin Adler.
372 https://bugs.webkit.org/show_bug.cgi?id=23952
373 Add Document::write overload which takes a SegmentedString since this
374 is what the tokenizer expects anyway. Modified JSHTMLDocument so it once
375 again calls Document::write instead of injecting the string directly into
376 the tokenizer. This ensures that all document.write's are funneled through
377 one method again, but should still be just as fast for JSHTMLDocumentCustom.
379 * bindings/js/JSHTMLDocumentCustom.cpp:
380 (WebCore::documentWrite):
382 (WebCore::Document::write):
385 2009-02-13 David Hyatt <hyatt@apple.com>
387 Reviewed by Simon Fraser
389 Remove updateWidgetPosition on RenderObject. Change RenderView's set of widgets
390 to have a tighter type: RenderWidget instead of RenderObject. Devirtualize
391 updateWidgetPosition, since all RenderWidgets (except for applets) are now
394 * rendering/RenderObject.cpp:
395 * rendering/RenderObject.h:
396 * rendering/RenderPart.cpp:
397 * rendering/RenderPart.h:
398 * rendering/RenderView.cpp:
399 (WebCore::RenderView::updateWidgetPositions):
400 (WebCore::RenderView::addWidget):
401 (WebCore::RenderView::removeWidget):
402 * rendering/RenderView.h:
403 * rendering/RenderWidget.cpp:
404 (WebCore::RenderWidget::updateWidgetPosition):
405 * rendering/RenderWidget.h:
407 2009-02-13 David Hyatt <hyatt@apple.com>
409 Reviewed by Eric Seidel
411 Remove isEditable() on RenderObject. It is dead code.
413 * rendering/RenderObject.cpp:
414 * rendering/RenderObject.h:
416 2009-02-13 David Hyatt <hyatt@apple.com>
418 Reviewed by Eric Seidel
420 Add isTextControl() to RenderObject. Patch call sites thats asked isTextField() || isTextArea() to just use
421 isTextControl() instead.
423 Add a toRenderTextControl converter for doing checked casting to RenderTextControls.
426 (WebCore::Document::setFocusedNode):
427 * dom/InputElement.cpp:
428 (WebCore::InputElement::updateSelectionRange):
429 * editing/ReplaceSelectionCommand.cpp:
430 (WebCore::ReplacementFragment::ReplacementFragment):
431 * editing/TextIterator.cpp:
432 (WebCore::TextIterator::handleReplacedElement):
433 * html/HTMLInputElement.cpp:
434 (WebCore::HTMLInputElement::selectionStart):
435 (WebCore::HTMLInputElement::selectionEnd):
436 (WebCore::HTMLInputElement::setSelectionStart):
437 (WebCore::HTMLInputElement::setSelectionEnd):
438 (WebCore::HTMLInputElement::select):
439 (WebCore::HTMLInputElement::defaultEventHandler):
440 (WebCore::HTMLInputElement::selection):
441 * html/HTMLTextAreaElement.cpp:
442 (WebCore::HTMLTextAreaElement::selectionStart):
443 (WebCore::HTMLTextAreaElement::selectionEnd):
444 (WebCore::HTMLTextAreaElement::setSelectionStart):
445 (WebCore::HTMLTextAreaElement::setSelectionEnd):
446 (WebCore::HTMLTextAreaElement::select):
447 (WebCore::HTMLTextAreaElement::setSelectionRange):
448 (WebCore::HTMLTextAreaElement::appendFormData):
449 (WebCore::HTMLTextAreaElement::updateValue):
450 (WebCore::HTMLTextAreaElement::selection):
451 * page/AccessibilityRenderObject.cpp:
452 (WebCore::AccessibilityRenderObject::isNativeTextControl):
453 (WebCore::AccessibilityRenderObject::text):
454 (WebCore::AccessibilityRenderObject::selectedText):
455 (WebCore::AccessibilityRenderObject::selectedTextRange):
456 (WebCore::AccessibilityRenderObject::setSelectedTextRange):
457 (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
458 (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
459 (WebCore::AccessibilityRenderObject::observableObject):
461 (WebCore::Frame::notifyRendererOfSelectionChange):
462 * rendering/RenderObject.h:
463 (WebCore::RenderObject::isTextControl):
464 (WebCore::objectIsRelayoutBoundary):
465 * rendering/RenderTextControl.h:
466 (WebCore::RenderTextControl::isTextControl):
467 (WebCore::toRenderTextControl):
468 * rendering/TextControlInnerElements.cpp:
469 (WebCore::TextControlInnerTextElement::defaultEventHandler):
470 * wml/WMLInputElement.cpp:
471 (WebCore::WMLInputElement::select):
472 (WebCore::WMLInputElement::defaultEventHandler):
473 (WebCore::WMLInputElement::isConformedToInputMask):
475 2009-02-13 David Hyatt <hyatt@apple.com>
477 Get rid of isEdited/setEdited on RenderObject. Devirtualize isEdited/setEdited on RenderTextControl.
478 Callers were already asking if the renderer was a text field (or a text area), so it was especially
479 pointless to waste a second virtual function call after making one just to determine the object type.
481 Reviewed by Simon Fraser
484 (WebCore::Document::setFocusedNode):
485 * html/HTMLInputElement.cpp:
486 (WebCore::HTMLInputElement::defaultEventHandler):
487 * rendering/RenderObject.h:
488 * rendering/RenderTextControl.h:
489 (WebCore::RenderTextControl::isEdited):
490 (WebCore::RenderTextControl::setEdited):
492 2009-02-13 Scott Violet <sky@google.com>
494 Reviewed by Eric Seidel.
496 https://bugs.webkit.org/show_bug.cgi?id=23934
497 Skia platform doesn't render text decoration shadows.
499 Makes Skia render text decoration shadows correctly. We weren't
500 preparing the SkPaint correctly and didn't have a couple of checks
501 CG has. Additionally makes the fillColor/strokeColor methods
504 This behavior is covered by existing layout tests (see bug for list).
506 * platform/graphics/chromium/FontChromiumWin.cpp:
507 (WebCore::Font::drawGlyphs):
508 (WebCore::Font::drawComplexText):
509 * platform/graphics/skia/GraphicsContextSkia.cpp:
510 (WebCore::GraphicsContext::drawLineForText):
511 * platform/graphics/skia/PlatformContextSkia.cpp:
512 (PlatformContextSkia::effectiveFillColor):
513 (PlatformContextSkia::effectiveStrokeColor):
514 * platform/graphics/skia/PlatformContextSkia.h:
516 2009-02-12 Darin Fisher <darin@chromium.org>
518 Reviewed by Eric Seidel.
520 https://bugs.webkit.org/show_bug.cgi?id=23944
521 KURLGoogle's pre-parsed canonicalSpec constructor should take a CString
524 * platform/KURLGoogle.cpp:
525 (WebCore::KURLGooglePrivate::setUtf8):
526 (WebCore::KURLGooglePrivate::setAscii):
527 (WebCore::KURLGooglePrivate::init):
528 (WebCore::KURLGooglePrivate::replaceComponents):
529 (WebCore::KURL::KURL):
530 * platform/KURLGooglePrivate.h:
532 2009-02-13 David Hyatt <hyatt@apple.com>
534 Remove leftmost/rightmost/lowestPosition from RenderObject. They only need to be called on boxes.
536 Reviewed by Dan Bernstein
538 * rendering/RenderBlock.cpp:
539 (WebCore::RenderBlock::lowestPosition):
540 (WebCore::RenderBlock::rightmostPosition):
541 (WebCore::RenderBlock::leftmostPosition):
542 * rendering/RenderLayer.cpp:
543 (WebCore::RenderLayer::computeScrollDimensions):
544 * rendering/RenderMedia.cpp:
545 (WebCore::RenderMedia::lowestPosition):
546 (WebCore::RenderMedia::rightmostPosition):
547 (WebCore::RenderMedia::leftmostPosition):
548 * rendering/RenderObject.h:
549 * rendering/RenderTableSection.cpp:
550 (WebCore::RenderTableSection::lowestPosition):
551 (WebCore::RenderTableSection::rightmostPosition):
552 (WebCore::RenderTableSection::leftmostPosition):
554 2009-02-12 Simon Fraser <simon.fraser@apple.com>
556 Fix build with ACCELERATED_COMPOSITING turned on.
558 toRenderBox()->x() asserts for a layer on an inline; use
559 m_owningLayer->renderBoxX() instead.
561 * rendering/RenderLayerBacking.cpp:
562 (WebCore::RenderLayerBacking::paintIntoLayer):
564 2009-02-12 Darin Adler <darin@apple.com>
566 Reviewed by Oliver Hunt.
568 Speed up document.write a bit.
570 * bindings/js/JSHTMLDocumentCustom.cpp:
571 (WebCore::documentWrite): Added. Uses SegmentedString to avoid conversion from
572 UString to String and to avoid appending strings. Also added code to handle
573 newlines efficiently.
574 (WebCore::JSHTMLDocument::write): Changed to use documentWrite.
575 (WebCore::JSHTMLDocument::writeln): Ditto.
578 (WebCore::Document::prepareToWrite): Added. Refactored the initialization part
579 of write into a separate function for use in the JavaScript binding.
580 (WebCore::Document::write): Changed to call prepareToWrite.
582 * dom/Document.h: Added declaration for prepareToWrite.
584 2009-02-13 Prasanth Ullattil <pullatti@trolltech.com>
586 Reviewed by Simon Hausmann.
588 Fixes crash in the Qt port on Windows with comboboxes
590 The focusWidget in the input context is not reset properly.
591 The QApplication::setFocusWidget() wont reset the IC if the reason is
592 PopupFocusReason, this is not ideal. For the time being we are going
593 to do this from webkit itself.
595 * platform/qt/QWebPopup.cpp:
596 (WebCore::QWebPopup::hidePopup):
598 2009-02-12 Kevin Ollivier <kevino@theolliviers.com>
600 wx build fix, typo while tweaking last patch for commit.
602 * platform/wx/wxcode/gtk/fontprops.cpp:
605 2009-02-12 miggilin <mr.diggilin@gmail.com>
607 Reviewed by Kevin Ollivier.
609 Use Cairo/PANGO to fix text measurements and implement proper
610 non-kerned text drawing on wxGTK.
612 https://bugs.webkit.org/show_bug.cgi?id=17727
614 * platform/graphics/GlyphBuffer.h:
615 * platform/graphics/wx/FontPlatformDataWx.cpp:
616 (WebCore::fontWeightToWxFontWeight):
617 * platform/graphics/wx/SimpleFontDataWx.cpp:
618 (WebCore::SimpleFontData::platformWidthForGlyph):
619 * platform/wx/wxcode/fontprops.h:
620 * platform/wx/wxcode/gtk/fontprops.cpp:
621 (wxFontProperties::wxFontProperties):
623 * platform/wx/wxcode/gtk/non-kerned-drawing.cpp:
624 (WebCore::pangoFontMap):
625 (WebCore::createPangoFontForFont):
626 (WebCore::createScaledFontForFont):
627 (WebCore::pango_font_get_glyph):
628 (WebCore::drawTextWithSpacing):
629 * platform/wx/wxcode/non-kerned-drawing.h:
631 2009-02-12 Chris Marrin <cmarrin@apple.com>
633 Reviewed by Simon Fraser
635 https://bugs.webkit.org/show_bug.cgi?id=23942
637 Hook up 3D CSS transforms to the accelerated compositor backend.
638 Not enabled by default.
640 * page/animation/AnimationBase.cpp:
641 (WebCore::blendFunc):
642 (WebCore::ensurePropertyMap):
643 * page/animation/CompositeAnimation.cpp:
644 (WebCore::CompositeAnimationPrivate::updateTransitions):
645 * page/animation/ImplicitAnimation.cpp:
646 (WebCore::ImplicitAnimation::willNeedService):
647 * page/animation/KeyframeAnimation.cpp:
648 (WebCore::KeyframeAnimation::willNeedService):
649 * platform/graphics/GraphicsLayer.cpp:
650 (WebCore::GraphicsLayer::TransformValueList::makeFunctionList):
651 (WebCore::GraphicsLayer::dumpProperties):
652 * platform/graphics/mac/GraphicsLayerCA.mm:
653 (WebCore::copyTransform):
654 (WebCore::getValueFunctionNameForTransformOperation):
655 (WebCore::GraphicsLayerCA::animateTransform):
656 * rendering/RenderBox.cpp:
657 (WebCore::RenderBox::updateBoxModelInfoFromStyle):
658 * rendering/RenderLayer.cpp:
659 (WebCore::RenderLayer::updateTransform):
660 (WebCore::RenderLayer::hasTransformStyle3D):
661 (WebCore::RenderLayer::hasPerspective):
662 (WebCore::RenderLayer::perspectiveTransform):
663 * rendering/RenderLayer.h:
664 * rendering/RenderLayerBacking.cpp:
665 (WebCore::RenderLayerBacking::updateGraphicsLayers):
666 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
667 (WebCore::RenderLayerBacking::computeTransformOrigin):
668 (WebCore::RenderLayerBacking::computePerspectiveOrigin):
669 * rendering/RenderLayerBacking.h:
670 * rendering/RenderLayerCompositor.cpp:
671 (WebCore::RenderLayerCompositor::has3DContent):
672 (WebCore::requiresCompositingLayerForTransform):
673 (WebCore::RenderLayerCompositor::requiresCompositingLayer):
674 (WebCore::RenderLayerCompositor::layerHas3DContent):
675 * rendering/RenderLayerCompositor.h:
677 2009-02-12 David Hyatt <hyatt@apple.com>
679 Reviewed by Eric Seidel
681 Get rid of containingBlockHeight(), since it had only one implementation (despite being virtual) and just returned
682 containingBlock()->availableHeight(). The latter reads better anyway. Rename containingBlockWidth() to
683 containingBlockWidthForContent() and move it to RenderBoxModelObject.
685 * rendering/RenderBlock.cpp:
686 (WebCore::RenderBlock::localCaretRect):
687 * rendering/RenderBox.cpp:
688 (WebCore::RenderBox::containingBlockWidthForContent):
689 (WebCore::RenderBox::calcWidth):
690 (WebCore::RenderBox::calcReplacedWidthUsing):
691 * rendering/RenderBox.h:
692 * rendering/RenderBoxModelObject.cpp:
693 (WebCore::RenderBoxModelObject::relativePositionOffsetX):
694 (WebCore::RenderBoxModelObject::relativePositionOffsetY):
695 (WebCore::RenderBoxModelObject::containingBlockWidthForContent):
696 * rendering/RenderBoxModelObject.h:
697 * rendering/RenderInline.cpp:
698 (WebCore::RenderInline::marginLeft):
699 (WebCore::RenderInline::marginRight):
700 * rendering/RenderObject.cpp:
701 * rendering/RenderObject.h:
702 * rendering/RenderSVGContainer.cpp:
703 (WebCore::RenderSVGContainer::calcReplacedWidth):
705 2009-02-12 Simon Fraser <simon.fraser@apple.com>
707 Fix non-Mac builds by adding Matrix3DTransformOperation.* and
708 PerspectiveTransformOperation.*. Cleaned out some cruft in
709 the WebCore.vcproj fle.
714 * WebCore.vcproj/WebCore.vcproj:
716 2009-02-12 David Smith <catfish.man@gmail.com>
718 Reviewed by Dave Hyatt.
720 Fix https://bugs.webkit.org/show_bug.cgi?id=23935
721 Nested :not() and non-simple selectors in :not() should be invalid
723 * css/CSSGrammar.y: Reject nested :not()
724 * css/CSSStyleSelector.cpp:
725 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): ASSERT() rather than checking, since the parser enforces it now
727 2009-02-12 Kevin Ollivier <kevino@theolliviers.com>
731 * WebCoreSources.bkl:
733 2009-02-12 Simon Fraser <simon.fraser@apple.com>
735 Fix build with ACCELERATED_COMPOSITING turned on.
737 Need to cast toRenderBox() in order to call overflowClipRect().
739 * rendering/RenderLayerBacking.cpp:
740 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
742 2009-02-12 Oliver Hunt <oliver@apple.com>
744 Reviewed by NOBODY (Build fix).
750 2009-02-12 David Hyatt <hyatt@apple.com>
752 Rename getOverflowClipRect and getClipRect to overflowClipRect and clipRect. Move them to RenderBox, since these methods
753 only apply to boxes. Devirtualize clipRect, since it was not subclassed. Move controlClip stuff to RenderBox also.
755 Reviewed by Simon Fraser
757 * editing/Editor.cpp:
758 (WebCore::Editor::insideVisibleArea):
759 * rendering/RenderBox.cpp:
760 (WebCore::RenderBox::overflowClipRect):
761 (WebCore::RenderBox::clipRect):
762 * rendering/RenderBox.h:
763 (WebCore::RenderBox::hasControlClip):
764 (WebCore::RenderBox::controlClipRect):
765 * rendering/RenderForeignObject.cpp:
766 (WebCore::RenderForeignObject::paint):
767 * rendering/RenderLayer.cpp:
768 (WebCore::RenderLayer::calculateClipRects):
769 (WebCore::RenderLayer::calculateRects):
770 * rendering/RenderLayerBacking.cpp:
771 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
772 * rendering/RenderObject.h:
773 (WebCore::RenderObject::hasClip):
774 (WebCore::RenderObject::hasOverflowClip):
775 * rendering/RenderTable.cpp:
776 (WebCore::RenderTable::overflowClipRect):
777 * rendering/RenderTable.h:
779 2009-02-12 Simon Fraser <simon.fraser@apple.com>
781 Fix build with ACCELERATED_COMPOSITING turned on (simple copy/paste error)
783 * platform/graphics/mac/GraphicsLayerCA.mm:
784 (WebCore::GraphicsLayerCA::setBasicAnimation):
786 2009-02-12 Julien Chaffraix <jchaffraix@webkit.org>
790 Release build fix when VIDEO is disabled (it should also
791 help the builds with WORKERS or XSLT disabled).
793 * bindings/js/JSDOMWindowBase.cpp:
794 (jsDOMWindowBaseAudio): Added an UNUSED_PARAM for exec and slot when
796 (jsDOMWindowBaseWorker): Ditto for WORKERS.
797 (jsDOMWindowBaseXSLTProcessor): Ditto for XSLT.
799 2009-02-12 Eric Carlson <eric.carlson@apple.com>
801 Reviewed by Simon Fraser.
803 https://bugs.webkit.org/show_bug.cgi?id=23923
804 Implement mediaPlayerVolumeChanged so a media engine can report autonomous volume changes.
805 Supporting this requires that we know when we are processing a media engine callback so
806 we don't turn around and tell the media player to change the volume when it is reporting
809 * html/HTMLMediaElement.cpp:
810 (WebCore::HTMLMediaElement::HTMLMediaElement): initialize m_processingMediaPlayerCallback
811 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): call begin/endProcessingMediaPlayerCallback
812 (WebCore::HTMLMediaElement::setNetworkState): logic split out of mediaPlayerNetworkStateChanged
813 to make it easier to maintain m_processingMediaPlayerCallback.
814 (WebCore::HTMLMediaElement::mediaPlayerReadyStateChanged): call begin/endProcessingMediaPlayerCallback
815 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Ditto.
816 (WebCore::HTMLMediaElement::mediaPlayerRepaint): Ditto.
817 (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged): New
818 (WebCore::HTMLMediaElement::updateVolume): Don't change media engine volume if we are processing
819 a callback from the engine.
820 * html/HTMLMediaElement.h:
821 (WebCore::HTMLMediaElement::processingMediaPlayerCallback): New, return true if (m_processingMediaPlayerCallback>0)
822 (WebCore::HTMLMediaElement::beginProcessingMediaPlayerCallback): New, increment m_processingMediaPlayerCallback
823 (WebCore::HTMLMediaElement::endProcessingMediaPlayerCallback): New, decrement m_processingMediaPlayerCallback
825 2009-02-12 Eric Carlson <eric.carlson@apple.com>
827 Reviewed by Simon Fraser.
829 Support MPEG content on Mac and Windows.
830 <rdar://problem/5917509>
831 https://bugs.webkit.org/show_bug.cgi?id=23495
833 Test: media/audio-mpeg-supported.html
835 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
836 (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
838 * platform/graphics/win/QTMovieWin.cpp:
839 (QTMovieWin::disableUnsupportedTracks):
841 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: fix typo added in r40925
843 2009-02-12 David Hyatt <hyatt@apple.com>
845 Reviewed by Sam Weinig
847 Move containsFloats, hasOverhangingFloats, shrinkToAvoidFloats and avoidsFloats down to
848 RenderBox, since these methods only apply to boxes.
850 * rendering/RenderBlock.cpp:
851 (WebCore::RenderBlock::collapseMargins):
852 (WebCore::RenderBlock::clearFloatsIfNeeded):
853 (WebCore::RenderBlock::layoutBlockChildren):
854 (WebCore::RenderBlock::clearFloats):
855 (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
856 (WebCore::RenderBlock::calcBlockPrefWidths):
857 * rendering/RenderBlock.h:
858 (WebCore::RenderBlock::containsFloats):
859 (WebCore::RenderBlock::hasOverhangingFloats):
860 * rendering/RenderBox.cpp:
861 (WebCore::RenderBox::shrinkToAvoidFloats):
862 (WebCore::RenderBox::avoidsFloats):
863 * rendering/RenderBox.h:
864 * rendering/RenderObject.cpp:
865 * rendering/RenderObject.h:
866 (WebCore::RenderObject::isFloatingOrPositioned):
867 * rendering/RenderView.h:
869 2009-02-12 Chris Marrin <cmarrin@apple.com>
871 Reviewed by Dave Hyatt
873 https://bugs.webkit.org/show_bug.cgi?id=23908
875 Added parsing of 3d transform functions and properties
876 (perspective, perspective-origin, transform-style-3d,
877 and backface-visibility).
879 Test: transforms/3d/cssmatrix-3d-interface.xhtml
881 * css/CSSComputedStyleDeclaration.cpp:
883 (WebCore::computedTransform):
884 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
885 * css/CSSMutableStyleDeclaration.cpp:
886 (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
888 (WebCore::CSSParser::parseValue):
889 (WebCore::CSSParser::parseFillProperty):
890 (WebCore::CSSParser::parseTransformOriginShorthand):
891 (WebCore::TransformOperationInfo::TransformOperationInfo):
892 (WebCore::CSSParser::parseTransform):
893 (WebCore::CSSParser::parseTransformOrigin):
894 (WebCore::CSSParser::parsePerspectiveOrigin):
896 * css/CSSPrimitiveValue.h:
897 (WebCore::CSSPrimitiveValue::isUnitTypeLength):
898 * css/CSSPropertyNames.in:
899 * css/CSSStyleSelector.cpp:
900 (WebCore::CSSStyleSelector::adjustRenderStyle):
901 (WebCore::convertToLength):
902 (WebCore::CSSStyleSelector::applyProperty):
903 (WebCore::CSSStyleSelector::mapFillSize):
904 (WebCore::CSSStyleSelector::mapFillXPosition):
905 (WebCore::CSSStyleSelector::mapFillYPosition):
906 (WebCore::getTransformOperationType):
907 (WebCore::CSSStyleSelector::createTransformOperations):
908 * css/CSSValueKeywords.in:
909 * css/WebKitCSSTransformValue.cpp:
910 (WebCore::WebKitCSSTransformValue::cssText):
911 * css/WebKitCSSTransformValue.h:
912 (WebCore::WebKitCSSTransformValue::):
913 * css/WebKitCSSTransformValue.idl:
914 * platform/graphics/transforms/Matrix3DTransformOperation.cpp:
915 * platform/graphics/transforms/Matrix3DTransformOperation.h:
916 * platform/graphics/transforms/PerspectiveTransformOperation.cpp:
917 * platform/graphics/transforms/PerspectiveTransformOperation.h:
918 * platform/graphics/transforms/RotateTransformOperation.cpp:
919 (WebCore::RotateTransformOperation::blend):
920 * platform/graphics/transforms/RotateTransformOperation.h:
921 (WebCore::RotateTransformOperation::RotateTransformOperation):
922 * platform/graphics/transforms/ScaleTransformOperation.h:
923 (WebCore::ScaleTransformOperation::ScaleTransformOperation):
924 * platform/graphics/transforms/TransformOperation.h:
925 (WebCore::TransformOperation::is3DOperation):
926 * platform/graphics/transforms/TransformOperations.h:
927 (WebCore::TransformOperations::has3DOperation):
928 * platform/graphics/transforms/TranslateTransformOperation.h:
929 (WebCore::TranslateTransformOperation::TranslateTransformOperation):
931 2009-02-12 Kevin Ollivier <kevino@theolliviers.com>
937 2009-02-12 Brady Eidson <beidson@apple.com>
939 Reviewed by Darin Adler
941 Fix potential ref-count or null-deref problems with C++ objects as Obj-C members.
943 * platform/mac/SharedBufferMac.mm: Change to use RefPtr<> instead of ref()/deref().
944 (-[WebCoreSharedBufferData dealloc]):
945 (-[WebCoreSharedBufferData finalize]):
946 (-[WebCoreSharedBufferData initWithSharedBuffer:]):
948 2009-02-12 David Hyatt <hyatt@apple.com>
950 Remove calcWidth from RenderObject. Nobody ever called it on RenderObjects.
952 Reviewed by Sam Weinig
954 * rendering/RenderObject.h:
956 2009-02-12 David Hyatt <hyatt@apple.com>
958 Reviewed by Mark Rowe
960 Fix for regression where form controls would paint yellow highlights. The containsComposition check needs to
961 null check node() now.
963 * rendering/InlineTextBox.cpp:
964 (WebCore::InlineTextBox::paint):
966 2009-02-12 Simon Fraser <simon.fraser@apple.com>
970 Change Animation::setDirection() to take the new enum value, and fix
973 Fix build error in MediaPlayerPrivateQTKit.h.
975 * css/CSSStyleSelector.cpp:
976 (WebCore::CSSStyleSelector::mapAnimationDirection):
977 * platform/animation/Animation.h:
978 (WebCore::Animation::setDirection):
979 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
981 2009-02-12 David Hyatt <hyatt@apple.com>
983 Reviewed by Simon Fraser
985 Remove the overrideSize methods from RenderObject. Devirtualize all of the accessors on RenderBox.
987 * rendering/RenderBox.h:
988 * rendering/RenderObject.h:
990 2009-02-12 Eric Carlson <eric.carlson@apple.com>
992 Darin Adler, Antti Koivisto, Holger Hans Peter Freyther
994 Bug 23797: A platform should be able to use more than one media engine for <video> and <audio>
995 https://bugs.webkit.org/show_bug.cgi?id=23797
997 * WebCore.xcodeproj/project.pbxproj: add MediaPlayerPrivate.h
999 * html/HTMLMediaElement.cpp:
1000 (WebCore::HTMLMediaElement::load): selectMediaURL now also returns a MIME type, pass it to
1001 MediaPlayer::load so it can choose the right media engine
1002 (WebCore::HTMLMediaElement::selectMediaURL): renamed from pickMedia. use MIMETypeRegistry
1003 functions to strip params from the url and extract the codecs parameter. call
1004 MediaPlayer::supportsType to see if we can open the file since only a media engine can
1005 answer questions about supported type+codecs.
1006 * html/HTMLMediaElement.h:
1008 * platform/MIMETypeRegistry.cpp:
1009 (WebCore::MIMETypeRegistry::getParameterFromMIMEType): New, find and return a MIME type parameter
1010 (WebCore::MIMETypeRegistry::stripParametersFromMIMEType): New, strip all parameters from a MIME type
1011 * platform/MIMETypeRegistry.h:
1013 * platform/graphics/MediaPlayer.cpp:
1014 (WebCore::NullMediaPlayerPrivate::NullMediaPlayerPrivate):
1015 (WebCore::NullMediaPlayerPrivate::load):
1016 (WebCore::NullMediaPlayerPrivate::cancelLoad):
1017 (WebCore::NullMediaPlayerPrivate::play):
1018 (WebCore::NullMediaPlayerPrivate::pause):
1019 (WebCore::NullMediaPlayerPrivate::naturalSize):
1020 (WebCore::NullMediaPlayerPrivate::hasVideo):
1021 (WebCore::NullMediaPlayerPrivate::setVisible):
1022 (WebCore::NullMediaPlayerPrivate::duration):
1023 (WebCore::NullMediaPlayerPrivate::currentTime):
1024 (WebCore::NullMediaPlayerPrivate::seek):
1025 (WebCore::NullMediaPlayerPrivate::seeking):
1026 (WebCore::NullMediaPlayerPrivate::setEndTime):
1027 (WebCore::NullMediaPlayerPrivate::setRate):
1028 (WebCore::NullMediaPlayerPrivate::paused):
1029 (WebCore::NullMediaPlayerPrivate::setVolume):
1030 (WebCore::NullMediaPlayerPrivate::networkState):
1031 (WebCore::NullMediaPlayerPrivate::readyState):
1032 (WebCore::NullMediaPlayerPrivate::maxTimeSeekable):
1033 (WebCore::NullMediaPlayerPrivate::maxTimeBuffered):
1034 (WebCore::NullMediaPlayerPrivate::dataRate):
1035 (WebCore::NullMediaPlayerPrivate::totalBytesKnown):
1036 (WebCore::NullMediaPlayerPrivate::totalBytes):
1037 (WebCore::NullMediaPlayerPrivate::bytesLoaded):
1038 (WebCore::NullMediaPlayerPrivate::setRect):
1039 (WebCore::NullMediaPlayerPrivate::paint):
1040 (WebCore::createNullMediaPlayer):
1041 Do nothing media player so MediaPlayer doesn't have to NULL check before calling current engine.
1043 (WebCore::MediaPlayerFactory::MediaPlayerFactory): New, factory constructor.
1044 (WebCore::installedMediaEngines): New, returns vector of all installed engines.
1045 (WebCore::addMediaEngine): New, add a media engine to the cache.
1046 (WebCore::chooseBestEngineForTypeAndCodecs): New, return an engine that might support a MIME type.
1047 (WebCore::MediaPlayer::MediaPlayer): create NULL media player so we have a default. Initialize m_currentMediaEngine.
1048 (WebCore::MediaPlayer::~MediaPlayer): don't need to delete m_private, it is now an OwnPtr.
1049 (WebCore::MediaPlayer::load): Take MIME type as well as url, since we need it to find the right
1050 media engine. If no MIME type is provided, try to devine one from the url. Choose a media engine
1051 based on the MIME type and codecs parameter.
1052 (WebCore::MediaPlayer::currentTime): Remove excess white space.
1053 (WebCore::MediaPlayer::supportsType): Take codecs param as well as MIME type. Return enum so we can
1054 indicate "maybe" condition.
1055 (WebCore::MediaPlayer::getSupportedTypes): Build up list of MIME types by consulting all engines.
1056 (WebCore::MediaPlayer::isAvailable): return true if any media engine is installed.
1058 * platform/graphics/MediaPlayer.h:
1059 (WebCore::MediaPlayer::):
1060 (WebCore::MediaPlayer::frameView): accessor function.
1062 * platform/graphics/MediaPlayerPrivate.h: New, declares abstract interface for media engines.
1063 (WebCore::MediaPlayerPrivateInterface::~MediaPlayerPrivateInterface):
1064 (WebCore::MediaPlayerPrivateInterface::totalBytesKnown):
1066 * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Add support for engine factory
1068 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
1069 (WebCore::MediaPlayerPrivate::create): New, media engine factory function
1070 (WebCore::MediaPlayerPrivate::registerMediaEngine): Register engine with MediaPlayer factory
1071 (WebCore::MediaPlayerPrivate::load): URL is a const String.
1072 (WebCore::MediaPlayerPrivate::duration): Declare const.
1073 (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
1074 (WebCore::MediaPlayerPrivate::hasVideo): Ditto.
1075 (WebCore::MediaPlayerPrivate::networkState): Ditto.
1076 (WebCore::MediaPlayerPrivate::readyState): Ditto.
1077 (WebCore::MediaPlayerPrivate::maxTimeBuffered): Ditto.
1078 (WebCore::MediaPlayerPrivate::maxTimeSeekable): Ditto.
1079 (WebCore::MediaPlayerPrivate::maxTimeLoaded): Ditto.
1080 (WebCore::MediaPlayerPrivate::bytesLoaded): Ditto.
1081 (WebCore::MediaPlayerPrivate::totalBytesKnown): Ditto.
1082 (WebCore::MediaPlayerPrivate::totalBytes): Ditto.
1083 (WebCore::MediaPlayerPrivate::supportsType): Return MediaPlayer::SupportsType enum instead of bool.
1084 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
1085 (WebCore::MediaPlayerPrivate::isAvailable):
1087 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1088 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1089 (WebCore::MediaPlayerPrivateQTKit::create): New, media engine factory function
1090 (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): Register engine with MediaPlayer factory
1091 (WebCore::MediaPlayerPrivate::createQTMovieView): don't access MediaPlayer->m_frameView directly,
1092 use accessor function.
1093 (WebCore::MediaPlayerPrivate::setUpVideoRendering): Ditto.
1094 (WebCore::MediaPlayerPrivate::paint): Ditto.
1095 (WebCore::mimeTypeCache): New.
1096 (WebCore::MediaPlayerPrivate::getSupportedTypes): New, media engine factory function.
1097 (WebCore::MediaPlayerPrivate::supportsType): return MediaPlayer::SupportsType enum instead of bool
1098 (-[WebCoreMovieObserver initWithCallback:]): fix formatting
1100 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
1101 (WebCore::MediaPlayerPrivate::create):
1102 (WebCore::MediaPlayerPrivate::registerMediaEngine):
1103 (WebCore::MediaPlayerPrivate::supportsType):
1104 (WebCore::MediaPlayerPrivate::load): URL is a const String.
1105 * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
1106 (WebCore::MediaPlayerPrivate::isAvailable):
1108 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
1109 (WebCore::MediaPlayerPrivate::create): New, media engine factory function
1110 (WebCore::MediaPlayerPrivate::registerMediaEngine): New, register engine with MediaPlayer factory
1111 (WebCore::MediaPlayerPrivate::load): URL is a const String.
1112 (WebCore::MediaPlayerPrivate::paint): don't access MediaPlayer->m_frameView directly,
1113 use accessor function.
1114 (WebCore::mimeTypeCache): New.
1115 (WebCore::MediaPlayerPrivateQTWin::getSupportedTypes): New, media engine factory function.
1116 (WebCore::MediaPlayerPrivateQTWin::supportsType): return MediaPlayer::SupportsType enum instead of bool
1117 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
1119 2009-02-12 Julien Chaffraix <jchaffraix@webkit.org>
1121 Reviewed by Darin Adler.
1123 Test: fast/dom/prefixed-image-tag.xhtml
1125 Bug 23915: Remove setPrefix work-around in Document::createElement(QualifiedName, bool)
1127 Instead we now directly propage the QualifiedName inside the generated Factory.
1129 Test: fast/dom/prefixed-image-tag.xhtml
1132 (WebCore::Document::createElement): Removed the setPrefix work-around
1133 and replaced it with an ASSERT to catch mistakes inside the Factory code.
1134 Remove the unneeded ExceptionCode argument.
1136 (WebCore::Document::createElementNS): Removed ExceptionCode argument.
1137 * dom/Document.h: Updated the signature.
1138 * dom/XMLTokenizerLibxml2.cpp:
1139 (WebCore::XMLTokenizer::startElementNs): Removed ExceptionCode argument.
1140 * dom/XMLTokenizerQt.cpp: Ditto.
1141 (WebCore::XMLTokenizer::parseStartElement): Ditto.
1143 * dom/make_names.pl: Implemented the QualifiedName propogation logic
1146 2009-02-12 Simon Fraser <simon.fraser@apple.com>
1148 Reviewed by Dave Hyatt
1150 https://bugs.webkit.org/show_bug.cgi?id=23188
1152 Define enum values for Animation::direction(), and one for
1153 IterationCountInfinite to make the code more self-documenting.
1155 Order the member vars of Animation to optimize packing.
1157 * css/CSSComputedStyleDeclaration.cpp:
1158 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1159 * platform/animation/Animation.cpp:
1160 (WebCore::Animation::Animation):
1161 (WebCore::Animation::operator=):
1162 (WebCore::Animation::animationsMatch):
1163 * platform/animation/Animation.h:
1164 (WebCore::Animation::):
1165 (WebCore::Animation::direction):
1166 (WebCore::Animation::initialAnimationDirection):
1167 * platform/graphics/mac/GraphicsLayerCA.mm:
1168 (WebCore::GraphicsLayerCA::setBasicAnimation):
1169 (WebCore::GraphicsLayerCA::setKeyframeAnimation):
1171 2009-02-12 Christian Dywan <christian@twotoasts.de>
1173 Reviewed by Holger Freyther.
1175 * platform/network/soup/ResourceHandleSoup.cpp:
1176 (WebCore::ResourceHandle::startHttp): Don't use O_CLOEXEC for now.
1178 2009-02-12 Julien Chaffraix <jchaffraix@webkit.org>
1180 Reviewed by Darin Adler.
1182 Bug 23826: Potential bug with before/after rule while moving element from one document to another
1184 Moved the document before/after toggle from the constructor to insertedIntoDocument.
1186 Test: fast/css-generated-content/beforeAfter-interdocument.html
1188 * html/HTMLQuoteElement.cpp:
1189 (WebCore::HTMLQuoteElement::HTMLQuoteElement):
1190 (WebCore::HTMLQuoteElement::insertedIntoDocument):
1191 * html/HTMLQuoteElement.h:
1193 2009-02-12 David Hyatt <hyatt@apple.com>
1195 Reviewed by Simon Fraser
1197 Fix for https://bugs.webkit.org/show_bug.cgi?id=23912
1199 I have no idea why this broke. As far as I can tell the old code never should have worked in
1200 the first place. Add code to handleWheelEvent that will find an enclosing renderer for a node
1201 in order to attempt a wheel scroll.
1203 * page/EventHandler.cpp:
1204 (WebCore::EventHandler::handleWheelEvent):
1206 2009-02-12 David Hyatt <hyatt@apple.com>
1208 Move the functions that paint borders, box shadows and border images into RenderBoxModelObject. drawBorder and drawBorderArc, because they are used
1209 for outlines as well as borders, need to stay in RenderObject. Rename them to drawLineForBoxSide and drawArcForBoxSide in order to reflect their
1210 more generic use. Rename the BorderSide struct to BoxSide, since the concept of "side" is just a rectangle concept and not a border concept.
1212 Reviewed by Simon Fraser
1214 * rendering/InlineFlowBox.cpp:
1215 (WebCore::InlineFlowBox::paintFillLayer):
1216 (WebCore::InlineFlowBox::paintBoxShadow):
1217 (WebCore::InlineFlowBox::paintBoxDecorations):
1218 (WebCore::InlineFlowBox::paintMask):
1219 * rendering/RenderBlock.cpp:
1220 (WebCore::RenderBlock::paintColumns):
1221 * rendering/RenderBoxModelObject.cpp:
1222 (WebCore::RenderBoxModelObject::paintNinePieceImage):
1223 (WebCore::RenderBoxModelObject::paintBorder):
1224 (WebCore::RenderBoxModelObject::paintBoxShadow):
1225 * rendering/RenderBoxModelObject.h:
1226 * rendering/RenderFieldset.cpp:
1227 (WebCore::RenderFieldset::paintBorderMinusLegend):
1228 * rendering/RenderInline.cpp:
1229 (WebCore::RenderInline::paintOutlineForLine):
1230 * rendering/RenderObject.cpp:
1231 (WebCore::RenderObject::drawLineForBoxSide):
1232 (WebCore::RenderObject::drawArcForBoxSide):
1233 (WebCore::RenderObject::paintOutline):
1234 * rendering/RenderObject.h:
1236 (WebCore::RenderObject::hasBoxDecorations):
1237 * rendering/RenderTableCell.cpp:
1238 (WebCore::CollapsedBorders::addBorder):
1239 (WebCore::RenderTableCell::paintCollapsedBorder):
1241 2009-02-12 Eric Carlson <eric.carlson@apple.com>
1243 Reviewed by Simon Fraser
1245 Bug 18322: video element should have ui when scripting is disabled
1246 https://bugs.webkit.org/show_bug.cgi?id=18322
1248 * html/HTMLMediaElement.cpp:
1249 (WebCore::HTMLMediaElement::controls): always return 'true' when JavaScript is disabled.
1250 * manual-tests/media-controls-when-javascript-disabled.html: Added.
1252 2009-02-12 Dimitri Glazkov <dglazkov@chromium.org>
1254 Reviewed by Eric Seidel.
1256 https://bugs.webkit.org/show_bug.cgi?id=23906
1257 Add custom V8 bindings for HTMLPlugInElement.
1259 * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp: Added.
1260 (WebCore::NAMED_PROPERTY_GETTER):
1261 (WebCore::NAMED_PROPERTY_SETTER):
1262 (WebCore::CALLBACK_FUNC_DECL):
1263 (WebCore::INDEXED_PROPERTY_GETTER):
1264 (WebCore::INDEXED_PROPERTY_SETTER):
1266 2009-02-12 Gustavo Noronha Silva <gns@gnome.org>
1268 Reviewed by Mark Rowe.
1270 [GTK] Soup backend must handle upload of multiple files
1271 https://bugs.webkit.org/show_bug.cgi?id=18343
1273 * platform/network/soup/ResourceHandleSoup.cpp:
1275 (WebCore::freeFileMapping):
1276 (WebCore::ResourceHandle::startHttp): Support multipart request bodies
1277 mmap'ing files to be uploaded.
1279 2009-02-12 Adam Treat <adam.treat@torchmobile.com>
1281 Fix the Qt build following r40871 which changed RenderObject::element()
1282 into RenderObject::node().
1284 * platform/qt/RenderThemeQt.cpp:
1285 (WebCore::RenderThemeQt::getMediaElementFromRenderObject):
1286 (WebCore::RenderThemeQt::getMediaControlForegroundColor):
1288 2009-02-12 Alexey Proskuryakov <ap@webkit.org>
1292 * platform/graphics/transforms/RotateTransformOperation.cpp: Include <algorithm>.
1294 2009-02-12 Jian Li <jianli@chromium.org>
1296 Reviewed by Alexey Proskuryakov.
1298 Change worker code to use different proxy class pointers.
1299 https://bugs.webkit.org/show_bug.cgi?id=23859
1301 This is a step towards using separate proxies in multi-process implementation.
1303 * bindings/js/WorkerScriptController.cpp:
1304 (WebCore::WorkerScriptController::evaluate):
1306 (WebCore::Worker::Worker):
1307 (WebCore::Worker::~Worker):
1308 (WebCore::Worker::postMessage):
1309 (WebCore::Worker::terminate):
1310 (WebCore::Worker::hasPendingActivity):
1311 (WebCore::Worker::notifyFinished):
1312 (WebCore::Worker::dispatchMessage):
1314 * dom/WorkerContext.cpp:
1315 (WebCore::WorkerContext::~WorkerContext):
1316 (WebCore::WorkerContext::reportException):
1317 (WebCore::WorkerContext::addMessage):
1318 (WebCore::WorkerContext::postMessage):
1319 (WebCore::WorkerContext::dispatchMessage):
1320 * dom/WorkerContext.h:
1321 * dom/WorkerContextProxy.h:
1322 * dom/WorkerMessagingProxy.cpp:
1323 (WebCore::MessageWorkerContextTask::performTask):
1324 (WebCore::MessageWorkerTask::performTask):
1325 (WebCore::WorkerContextProxy::create):
1326 (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
1327 (WebCore::WorkerMessagingProxy::~WorkerMessagingProxy):
1328 (WebCore::WorkerMessagingProxy::startWorkerContext):
1329 (WebCore::postConsoleMessageTask):
1330 (WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
1331 (WebCore::WorkerMessagingProxy::workerThreadCreated):
1332 * dom/WorkerMessagingProxy.h:
1333 * dom/WorkerObjectProxy.h:
1334 * dom/WorkerThread.cpp:
1335 (WebCore::WorkerThread::create):
1336 (WebCore::WorkerThread::WorkerThread):
1337 (WebCore::WorkerThread::workerThread):
1338 * dom/WorkerThread.h:
1339 (WebCore::WorkerThread::workerObjectProxy):
1340 * loader/WorkerThreadableLoader.cpp:
1341 (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
1343 2009-02-12 David Levin <levin@chromium.org>
1345 Reviewed by Alexey Proskuryakov.
1347 Bug 23688: ThreadableLoader needs a sync implementation for Workers.
1348 <https://bugs.webkit.org/show_bug.cgi?id=23688>
1350 Add ResourceError to ThreadableLoaderClient.
1352 No observable change in behavior, so no test.
1354 * loader/DocumentThreadableLoader.cpp:
1355 (WebCore::DocumentThreadableLoader::create):
1356 (WebCore::DocumentThreadableLoader::willSendRequest):
1357 (WebCore::DocumentThreadableLoader::didFail):
1358 * loader/ThreadableLoaderClient.h:
1359 (WebCore::ThreadableLoaderClient::didFail):
1360 (WebCore::ThreadableLoaderClient::didFailWillSendRequestCheck):
1361 * loader/ThreadableLoaderClientWrapper.h:
1362 (WebCore::ThreadableLoaderClientWrapper::didFail):
1363 * loader/WorkerThreadableLoader.cpp:
1364 (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
1365 (WebCore::workerContextDidFail):
1366 (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
1367 * loader/WorkerThreadableLoader.h:
1368 * xml/XMLHttpRequest.cpp:
1369 (WebCore::XMLHttpRequest::didFail):
1370 (WebCore::XMLHttpRequest::didFailWillSendRequestCheck):
1371 * xml/XMLHttpRequest.h:
1373 2009-02-11 Simon Fraser <simon.fraser@apple.com>
1375 Reviewed by Dave Hyatt
1377 Fix the build on Leopard with ACCELERATED_COMPOSITING turned on.
1379 * WebCore.xcodeproj/project.pbxproj:
1380 FloatPoint3D needs to be a private header, since it's included by GraphicsLayer.h
1381 * platform/graphics/mac/GraphicsLayerCA.mm:
1382 (WebCore::getTransformFunctionValue):
1383 (WebCore::caValueFunctionSupported):
1384 (WebCore::GraphicsLayerCA::setAnchorPoint):
1385 (WebCore::GraphicsLayerCA::setPreserves3D):
1386 (WebCore::GraphicsLayerCA::setContentsToImage):
1387 (WebCore::GraphicsLayerCA::setBasicAnimation):
1388 (WebCore::GraphicsLayerCA::setKeyframeAnimation):
1389 * rendering/RenderLayer.h:
1390 (WebCore::RenderLayer::isRootLayer):
1391 Fix isRootLayer to return true for the renderView's layer, not the root
1394 2009-02-11 Adele Peterson <adele@apple.com>
1396 Reviewed by Oliver Hunt.
1398 Fix for https://bugs.webkit.org/show_bug.cgi?id=23910
1399 <rdar://problem/6160546> REGRESSION: In Full page mode, movie controller hides when I drag the knob if movie is playing
1401 * rendering/RenderMedia.cpp: (WebCore::RenderMedia::forwardEvent):
1402 When we get a mouseOut event, consider the mouse as still within the RenderMedia if the relatedTarget is a descendant.
1404 2009-02-11 David Hyatt <hyatt@apple.com>
1406 Remove all of the inline box wrapper functions from RenderObject, since they only apply to RenderBox. Devirtualize the functions.
1407 Patch all of the call sites to convert to a RenderBox.
1409 Reviewed by Simon Fraser
1412 (WebCore::nextRenderedEditable):
1413 (WebCore::previousRenderedEditable):
1414 (WebCore::Position::getInlineBoxAndOffset):
1415 * rendering/InlineBox.cpp:
1416 (WebCore::InlineBox::deleteLine):
1417 (WebCore::InlineBox::extractLine):
1418 (WebCore::InlineBox::attachLine):
1419 * rendering/RenderLineBoxList.cpp:
1420 (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
1421 * rendering/RenderObject.cpp:
1422 * rendering/RenderObject.h:
1423 * rendering/RenderObjectChildList.cpp:
1424 (WebCore::RenderObjectChildList::removeChildNode):
1425 * rendering/RenderTextControl.cpp:
1426 (WebCore::RenderTextControl::textWithHardLineBreaks):
1428 2009-02-11 David Hyatt <hyatt@apple.com>
1430 Eliminate createInlineBox and dirtyLineBoxes from RenderObject. These functions have been devirtualized.
1431 The single call site now calls a helper function that just bit checks and casts before calling the correct
1432 type. RenderBlock's dirtyLineBoxes function was dead code (caused by the RenderFlow deletion), so it has
1435 Reviewed by Eric Seidel
1437 * rendering/RenderBR.cpp:
1438 * rendering/RenderBR.h:
1439 * rendering/RenderBlock.cpp:
1440 (WebCore::RenderBlock::createRootInlineBox):
1441 * rendering/RenderBlock.h:
1442 * rendering/RenderBox.cpp:
1443 (WebCore::RenderBox::createInlineBox):
1444 * rendering/RenderBox.h:
1445 * rendering/RenderCounter.cpp:
1446 * rendering/RenderCounter.h:
1447 * rendering/RenderInline.cpp:
1448 (WebCore::RenderInline::createInlineFlowBox):
1449 * rendering/RenderInline.h:
1450 * rendering/RenderObject.cpp:
1451 * rendering/RenderObject.h:
1452 * rendering/RenderSVGInlineText.cpp:
1453 (WebCore::RenderSVGInlineText::createTextBox):
1454 * rendering/RenderSVGInlineText.h:
1455 (WebCore::RenderSVGInlineText::isSVGText):
1456 * rendering/RenderText.cpp:
1457 (WebCore::RenderText::createTextBox):
1458 (WebCore::RenderText::createInlineTextBox):
1459 * rendering/RenderText.h:
1460 * rendering/bidi.cpp:
1461 (WebCore::createInlineBoxForRenderer):
1462 (WebCore::RenderBlock::createLineBoxes):
1463 (WebCore::RenderBlock::constructLine):
1464 (WebCore::RenderBlock::layoutInlineChildren):
1466 2009-02-11 Chris Marrin <cmarrin@apple.com>
1468 Reviewed by Dave Hyatt.
1470 https://bugs.webkit.org/show_bug.cgi?id=23905
1472 Adds support for 3D CSS properties (transform-style-3d, perspective,
1473 perspective-origin, and backface-visibility) to RenderStyle and friends
1475 * platform/graphics/transforms/TransformOperation.h
1476 * rendering/style/RenderStyle.cpp:
1477 (WebCore::RenderStyle::diff):
1478 (WebCore::RenderStyle::applyTransform):
1479 * rendering/style/RenderStyle.h:
1480 (WebCore::InheritedFlags::transformOriginZ):
1481 (WebCore::InheritedFlags::hasTransformRelatedProperty):
1482 (WebCore::InheritedFlags::transformStyle3D):
1483 (WebCore::InheritedFlags::backfaceVisibility):
1484 (WebCore::InheritedFlags::perspective):
1485 (WebCore::InheritedFlags::perspectiveOriginX):
1486 (WebCore::InheritedFlags::perspectiveOriginY):
1487 (WebCore::InheritedFlags::setTransformOriginZ):
1488 (WebCore::InheritedFlags::setTransformStyle3D):
1489 (WebCore::InheritedFlags::setBackfaceVisibility):
1490 (WebCore::InheritedFlags::setPerspective):
1491 (WebCore::InheritedFlags::setPerspectiveOriginX):
1492 (WebCore::InheritedFlags::setPerspectiveOriginY):
1493 (WebCore::InheritedFlags::initialTransformOriginZ):
1494 (WebCore::InheritedFlags::initialTransformStyle3D):
1495 (WebCore::InheritedFlags::initialBackfaceVisibility):
1496 (WebCore::InheritedFlags::initialPerspective):
1497 (WebCore::InheritedFlags::initialPerspectiveOriginX):
1498 (WebCore::InheritedFlags::initialPerspectiveOriginY):
1499 * rendering/style/RenderStyleConstants.h:
1501 * rendering/style/StyleRareNonInheritedData.cpp:
1502 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1503 (WebCore::StyleRareNonInheritedData::operator==):
1504 * rendering/style/StyleRareNonInheritedData.h:
1505 * rendering/style/StyleTransformData.cpp:
1506 (WebCore::StyleTransformData::StyleTransformData):
1507 (WebCore::StyleTransformData::operator==):
1508 * rendering/style/StyleTransformData.h:
1510 2009-02-11 Simon Fraser <simon.fraser@apple.com>
1514 Fix ACCELERATED_COMPOSITING build.
1516 * rendering/RenderLayerBacking.cpp:
1517 (WebCore::RenderLayerBacking::createGraphicsLayer):
1518 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1519 * rendering/RenderLayerCompositor.cpp:
1520 (WebCore::RenderLayerCompositor::updateLayerCompositingState):
1522 2009-02-11 Simon Fraser <simon.fraser@apple.com>
1524 Reviewed by Dave Hyatt
1526 https://bugs.webkit.org/show_bug.cgi?id=23862
1528 Add a bit on RenderStyle that gets set when running accelerated
1529 transitions of transform or opacity. These ensure that styles
1530 compare as different during the transition, so that interruption
1531 can be detected reliably.
1533 * page/animation/ImplicitAnimation.cpp:
1534 (WebCore::ImplicitAnimation::animate):
1535 * rendering/style/RenderStyle.h:
1536 (WebCore::InheritedFlags::isRunningAcceleratedAnimation):
1537 (WebCore::InheritedFlags::setIsRunningAcceleratedAnimation):
1538 * rendering/style/StyleRareNonInheritedData.cpp:
1539 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1540 (WebCore::StyleRareNonInheritedData::operator==):
1541 * rendering/style/StyleRareNonInheritedData.h:
1543 2009-02-11 David Hyatt <hyatt@apple.com>
1545 Eliminate the virtual position() function from RenderObject. Rename the position() overrides
1546 in RenderText and RenderBox to positionLineBox and devirtualize them.
1548 Patch the one call site to just check for isText() and isBox() and call the methods directly.
1550 Remove some unnecessary overrides of position() on table sections and rows.
1552 Reviewed by Simon Fraser
1554 * rendering/RenderBox.cpp:
1555 (WebCore::RenderBox::positionLineBox):
1556 * rendering/RenderBox.h:
1557 * rendering/RenderObject.h:
1558 * rendering/RenderSVGRoot.cpp:
1559 * rendering/RenderSVGRoot.h:
1560 * rendering/RenderTableRow.h:
1561 (WebCore::RenderTableRow::lineHeight):
1562 * rendering/RenderTableSection.h:
1563 (WebCore::RenderTableSection::lineHeight):
1564 * rendering/RenderText.cpp:
1565 (WebCore::RenderText::positionLineBox):
1566 * rendering/RenderText.h:
1567 * rendering/bidi.cpp:
1568 (WebCore::RenderBlock::computeVerticalPositionsForLine):
1570 2009-02-11 Dimitri Glazkov <dglazkov@chromium.org>
1572 Reviewed by Eric Seidel.
1574 https://bugs.webkit.org/show_bug.cgi?id=23901
1575 Add HTML options/collections V8 custom bindings.
1577 * bindings/v8/custom/V8HTMLCollectionCustom.cpp: Added.
1578 (WebCore::getNamedItems):
1580 (WebCore::NAMED_PROPERTY_GETTER):
1581 (WebCore::CALLBACK_FUNC_DECL):
1582 * bindings/v8/custom/V8HTMLFormElementCustom.cpp: Added.
1583 (WebCore::NAMED_PROPERTY_GETTER):
1584 * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
1585 (WebCore::ACCESSOR_GETTER):
1586 (WebCore::ACCESSOR_SETTER):
1587 (WebCore::CALLBACK_FUNC_DECL):
1588 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
1589 (WebCore::CALLBACK_FUNC_DECL):
1590 (WebCore::ACCESSOR_SETTER):
1591 * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: Added.
1592 (WebCore::CALLBACK_FUNC_DECL):
1593 (WebCore::removeElement):
1594 * bindings/v8/custom/V8HTMLSelectElementCustom.h: Added.
1595 * bindings/v8/custom/V8NamedNodesCollection.cpp: Added.
1596 (WebCore::V8NamedNodesCollection::item):
1597 (WebCore::V8NamedNodesCollection::itemWithName):
1598 * bindings/v8/custom/V8NamedNodesCollection.h: Added.
1599 (WebCore::V8NamedNodesCollection::V8NamedNodesCollection):
1600 (WebCore::V8NamedNodesCollection::length):
1602 2009-02-11 Dimitri Dupuis-latour <dupuislatour@apple.com>
1604 Added a preference to disable some Inspector's panels (rdar://6419624, rdar://6419645).
1605 This is controlled via the 'WebKitInspectorHiddenPanels' key; if nothing is specified, all panels are shown.
1607 Reviewed by Timothy Hatcher.
1609 * inspector/InspectorClient.h:
1610 * inspector/InspectorController.cpp:
1611 (WebCore::hiddenPanels):
1612 (WebCore::InspectorController::hiddenPanels):
1613 (WebCore::InspectorController::windowScriptObjectAvailable):
1614 * inspector/InspectorController.h:
1615 * inspector/front-end/inspector.js:
1616 (WebInspector.loaded):
1617 * loader/EmptyClients.h:
1618 (WebCore::EmptyInspectorClient::hiddenPanels):
1620 2009-02-11 David Hyatt <hyatt@apple.com>
1622 Combine RenderObject::element() and RenderObject::node() into a single function.
1623 node() now has the "anonymous bit" checking behavior of element() and will
1624 return 0 for anonymous content. This patch switches all callers of element()
1625 to node() and patches old callers of node() to deal with situations where they
1626 did not expect node() to be 0. A bunch of node() calls were calling stuff on
1627 Document that they clearly didn't intend, so overall this is a nice improvement.
1629 Reviewed by Sam Weinig
1631 * dom/ContainerNode.cpp:
1632 (WebCore::ContainerNode::getUpperLeftCorner):
1634 (WebCore::Element::offsetParent):
1636 (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
1637 * editing/ModifySelectionListLevel.cpp:
1638 (WebCore::getStartEndListChildren):
1639 (WebCore::IncreaseSelectionListLevelCommand::doApply):
1640 (WebCore::DecreaseSelectionListLevelCommand::doApply):
1641 * editing/TextIterator.cpp:
1642 (WebCore::TextIterator::advance):
1643 * editing/VisiblePosition.cpp:
1644 (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
1645 (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
1646 * editing/visible_units.cpp:
1647 (WebCore::startPositionForLine):
1648 (WebCore::endPositionForLine):
1649 * page/AXObjectCache.cpp:
1650 (WebCore::AXObjectCache::get):
1651 * page/AccessibilityList.cpp:
1652 (WebCore::AccessibilityList::isUnorderedList):
1653 (WebCore::AccessibilityList::isOrderedList):
1654 (WebCore::AccessibilityList::isDefinitionList):
1655 * page/AccessibilityListBox.cpp:
1656 (WebCore::AccessibilityListBox::doAccessibilityHitTest):
1657 * page/AccessibilityRenderObject.cpp:
1658 (WebCore::AccessibilityRenderObject::isPasswordField):
1659 (WebCore::AccessibilityRenderObject::isFileUploadButton):
1660 (WebCore::AccessibilityRenderObject::isInputImage):
1661 (WebCore::AccessibilityRenderObject::isMultiSelect):
1662 (WebCore::AccessibilityRenderObject::isControl):
1663 (WebCore::AccessibilityRenderObject::getAttribute):
1664 (WebCore::AccessibilityRenderObject::anchorElement):
1665 (WebCore::AccessibilityRenderObject::actionElement):
1666 (WebCore::AccessibilityRenderObject::mouseButtonListener):
1667 (WebCore::AccessibilityRenderObject::helpText):
1668 (WebCore::AccessibilityRenderObject::textUnderElement):
1669 (WebCore::AccessibilityRenderObject::hasIntValue):
1670 (WebCore::AccessibilityRenderObject::intValue):
1671 (WebCore::AccessibilityRenderObject::labelElementContainer):
1672 (WebCore::AccessibilityRenderObject::title):
1673 (WebCore::AccessibilityRenderObject::accessibilityDescription):
1674 (WebCore::AccessibilityRenderObject::boundingBoxRect):
1675 (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
1676 (WebCore::AccessibilityRenderObject::titleUIElement):
1677 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1678 (WebCore::AccessibilityRenderObject::text):
1679 (WebCore::AccessibilityRenderObject::ariaSelectedTextDOMRange):
1680 (WebCore::AccessibilityRenderObject::accessKey):
1681 (WebCore::AccessibilityRenderObject::setSelectedTextRange):
1682 (WebCore::AccessibilityRenderObject::url):
1683 (WebCore::AccessibilityRenderObject::isFocused):
1684 (WebCore::AccessibilityRenderObject::setFocused):
1685 (WebCore::AccessibilityRenderObject::setValue):
1686 (WebCore::AccessibilityRenderObject::isEnabled):
1687 (WebCore::AccessibilityRenderObject::visiblePositionRange):
1688 (WebCore::AccessibilityRenderObject::index):
1689 (WebCore::AccessibilityRenderObject::activeDescendant):
1690 (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
1691 (WebCore::AccessibilityRenderObject::observableObject):
1692 (WebCore::AccessibilityRenderObject::roleValue):
1693 (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
1694 (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
1695 * page/AccessibilityTable.cpp:
1696 (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
1697 (WebCore::AccessibilityTable::title):
1698 * page/AccessibilityTableCell.cpp:
1699 (WebCore::AccessibilityTableCell::titleUIElement):
1700 * page/AccessibilityTableColumn.cpp:
1701 (WebCore::AccessibilityTableColumn::headerObjectForSection):
1702 * page/AccessibilityTableRow.cpp:
1703 (WebCore::AccessibilityTableRow::headerObject):
1704 * page/EventHandler.cpp:
1705 (WebCore::EventHandler::dispatchMouseEvent):
1706 (WebCore::EventHandler::canMouseDownStartSelect):
1707 (WebCore::EventHandler::canMouseDragExtendSelect):
1708 (WebCore::EventHandler::shouldDragAutoNode):
1710 (WebCore::Frame::searchForLabelsAboveCell):
1711 (WebCore::Frame::setFocusedNodeIfNeeded):
1712 * page/FrameView.cpp:
1713 (WebCore::FrameView::updateOverflowStatus):
1714 * page/animation/AnimationBase.cpp:
1715 (WebCore::AnimationBase::updateStateMachine):
1716 * page/animation/AnimationController.cpp:
1717 (WebCore::AnimationControllerPrivate::updateAnimationTimer):
1718 (WebCore::AnimationController::cancelAnimations):
1719 (WebCore::AnimationController::updateAnimations):
1720 * page/animation/KeyframeAnimation.cpp:
1721 (WebCore::KeyframeAnimation::KeyframeAnimation):
1722 (WebCore::KeyframeAnimation::endAnimation):
1723 * page/mac/AccessibilityObjectWrapper.mm:
1725 (AXAttributeStringSetHeadingLevel):
1726 * page/mac/FrameMac.mm:
1727 (WebCore::Frame::searchForNSLabelsAboveCell):
1728 * rendering/InlineFlowBox.cpp:
1729 (WebCore::InlineFlowBox::verticallyAlignBoxes):
1730 (WebCore::InlineFlowBox::paint):
1731 (WebCore::shouldDrawTextDecoration):
1732 * rendering/InlineTextBox.cpp:
1733 (WebCore::InlineTextBox::paintDocumentMarkers):
1734 * rendering/RenderBR.cpp:
1735 (WebCore::RenderBR::positionForCoordinates):
1736 * rendering/RenderBlock.cpp:
1737 (WebCore::RenderBlock::layoutBlock):
1738 (WebCore::RenderBlock::handleRunInChild):
1739 (WebCore::RenderBlock::paintObject):
1740 (WebCore::RenderBlock::isSelectionRoot):
1741 (WebCore::RenderBlock::rightmostPosition):
1742 (WebCore::RenderBlock::positionForBox):
1743 (WebCore::RenderBlock::positionForRenderer):
1744 (WebCore::RenderBlock::positionForCoordinates):
1745 (WebCore::RenderBlock::hasLineIfEmpty):
1746 (WebCore::RenderBlock::updateFirstLetter):
1747 (WebCore::RenderBlock::updateHitTestResult):
1748 (WebCore::RenderBlock::addFocusRingRects):
1749 * rendering/RenderBox.cpp:
1750 (WebCore::RenderBox::styleWillChange):
1751 (WebCore::RenderBox::updateBoxModelInfoFromStyle):
1752 (WebCore::RenderBox::paintRootBoxDecorations):
1753 (WebCore::RenderBox::positionForCoordinates):
1754 * rendering/RenderButton.cpp:
1755 (WebCore::RenderButton::updateFromElement):
1756 (WebCore::RenderButton::canHaveChildren):
1757 * rendering/RenderCounter.cpp:
1758 (WebCore::planCounter):
1759 * rendering/RenderFieldset.cpp:
1760 (WebCore::RenderFieldset::findLegend):
1761 * rendering/RenderFlexibleBox.cpp:
1762 (WebCore::RenderFlexibleBox::layoutVerticalBox):
1763 * rendering/RenderForeignObject.cpp:
1764 (WebCore::RenderForeignObject::translationForAttributes):
1765 (WebCore::RenderForeignObject::calculateLocalTransform):
1766 * rendering/RenderFrame.h:
1767 (WebCore::RenderFrame::element):
1768 * rendering/RenderImage.cpp:
1769 (WebCore::RenderImage::paintReplaced):
1770 (WebCore::RenderImage::imageMap):
1771 (WebCore::RenderImage::nodeAtPoint):
1772 (WebCore::RenderImage::updateAltText):
1773 * rendering/RenderInline.cpp:
1774 (WebCore::RenderInline::cloneInline):
1775 (WebCore::RenderInline::updateHitTestResult):
1776 * rendering/RenderLayer.cpp:
1777 (WebCore::RenderLayer::isTransparent):
1778 (WebCore::RenderLayer::scrollToOffset):
1779 (WebCore::RenderLayer::resize):
1780 (WebCore::RenderLayer::createScrollbar):
1781 (WebCore::RenderLayer::updateOverflowStatus):
1782 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
1783 (WebCore::RenderLayer::enclosingElement):
1784 (WebCore::RenderLayer::updateHoverActiveState):
1785 (WebCore::RenderLayer::updateScrollCornerStyle):
1786 (WebCore::RenderLayer::updateResizerStyle):
1787 * rendering/RenderLayer.h:
1788 (WebCore::RenderLayer::isRootLayer):
1789 * rendering/RenderListItem.cpp:
1790 (WebCore::getParentOfFirstLineBox):
1791 * rendering/RenderMarquee.cpp:
1792 (WebCore::RenderMarquee::marqueeSpeed):
1793 * rendering/RenderObject.cpp:
1794 (WebCore::RenderObject::RenderObject):
1795 (WebCore::RenderObject::isBody):
1796 (WebCore::RenderObject::isHR):
1797 (WebCore::RenderObject::isHTMLMarquee):
1798 (WebCore::RenderObject::isEditable):
1799 (WebCore::RenderObject::addPDFURLRect):
1800 (WebCore::RenderObject::showTreeForThis):
1801 (WebCore::RenderObject::draggableNode):
1802 (WebCore::RenderObject::hasOutlineAnnotation):
1803 (WebCore::RenderObject::positionForCoordinates):
1804 (WebCore::RenderObject::updateDragState):
1805 (WebCore::RenderObject::updateHitTestResult):
1806 (WebCore::RenderObject::getUncachedPseudoStyle):
1807 (WebCore::RenderObject::getTextDecorationColors):
1808 (WebCore::RenderObject::caretMaxOffset):
1809 (WebCore::RenderObject::offsetParent):
1810 * rendering/RenderObject.h:
1811 (WebCore::RenderObject::isRoot):
1812 (WebCore::RenderObject::isInlineContinuation):
1813 (WebCore::RenderObject::node):
1814 (WebCore::RenderObject::setNode):
1815 * rendering/RenderObjectChildList.cpp:
1816 (WebCore::RenderObjectChildList::destroyLeftoverChildren):
1817 * rendering/RenderPart.cpp:
1818 (WebCore::RenderPart::updateWidgetPosition):
1819 * rendering/RenderPartObject.cpp:
1820 (WebCore::RenderPartObject::updateWidget):
1821 (WebCore::RenderPartObject::viewCleared):
1822 * rendering/RenderPath.cpp:
1823 (WebCore::RenderPath::calculateLocalTransform):
1824 (WebCore::RenderPath::layout):
1825 (WebCore::RenderPath::paint):
1826 (WebCore::RenderPath::drawMarkersIfNeeded):
1827 * rendering/RenderReplaced.cpp:
1828 (WebCore::RenderReplaced::positionForCoordinates):
1829 (WebCore::RenderReplaced::isSelected):
1830 * rendering/RenderSVGGradientStop.cpp:
1831 (WebCore::RenderSVGGradientStop::gradientElement):
1832 * rendering/RenderSVGImage.cpp:
1833 (WebCore::RenderSVGImage::calculateLocalTransform):
1834 * rendering/RenderSVGInlineText.cpp:
1835 (WebCore::RenderSVGInlineText::positionForCoordinates):
1836 * rendering/RenderSVGRoot.cpp:
1837 (WebCore::RenderSVGRoot::layout):
1838 (WebCore::RenderSVGRoot::applyContentTransforms):
1839 (WebCore::RenderSVGRoot::paint):
1840 (WebCore::RenderSVGRoot::calcViewport):
1841 (WebCore::RenderSVGRoot::absoluteTransform):
1842 * rendering/RenderSVGText.cpp:
1843 (WebCore::RenderSVGText::calculateLocalTransform):
1844 (WebCore::RenderSVGText::layout):
1845 * rendering/RenderSVGTextPath.cpp:
1846 (WebCore::RenderSVGTextPath::layoutPath):
1847 (WebCore::RenderSVGTextPath::startOffset):
1848 (WebCore::RenderSVGTextPath::exactAlignment):
1849 (WebCore::RenderSVGTextPath::stretchMethod):
1850 * rendering/RenderSVGTransformableContainer.cpp:
1851 (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
1852 * rendering/RenderSVGViewportContainer.cpp:
1853 (WebCore::RenderSVGViewportContainer::calcViewport):
1854 (WebCore::RenderSVGViewportContainer::viewportTransform):
1855 (WebCore::RenderSVGViewportContainer::nodeAtPoint):
1856 * rendering/RenderTable.cpp:
1857 (WebCore::RenderTable::addChild):
1858 * rendering/RenderTableCell.cpp:
1859 (WebCore::RenderTableCell::updateFromElement):
1860 (WebCore::RenderTableCell::calcPrefWidths):
1861 * rendering/RenderTableCol.cpp:
1862 (WebCore::RenderTableCol::updateFromElement):
1863 * rendering/RenderTableRow.cpp:
1864 (WebCore::RenderTableRow::addChild):
1865 * rendering/RenderTableSection.cpp:
1866 (WebCore::RenderTableSection::addChild):
1867 * rendering/RenderText.cpp:
1868 (WebCore::RenderText::originalText):
1869 (WebCore::RenderText::positionForCoordinates):
1870 * rendering/RenderTextControlMultiLine.cpp:
1871 (WebCore::RenderTextControlMultiLine::nodeAtPoint):
1872 * rendering/RenderTextControlSingleLine.cpp:
1873 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
1874 * rendering/RenderTextFragment.cpp:
1875 (WebCore::RenderTextFragment::originalText):
1876 (WebCore::RenderTextFragment::previousCharacter):
1877 * rendering/RenderTheme.cpp:
1878 (WebCore::RenderTheme::isActive):
1879 (WebCore::RenderTheme::isChecked):
1880 (WebCore::RenderTheme::isIndeterminate):
1881 (WebCore::RenderTheme::isEnabled):
1882 (WebCore::RenderTheme::isFocused):
1883 (WebCore::RenderTheme::isPressed):
1884 (WebCore::RenderTheme::isReadOnlyControl):
1885 (WebCore::RenderTheme::isHovered):
1886 * rendering/RenderThemeMac.mm:
1887 (WebCore::RenderThemeMac::updatePressedState):
1888 (WebCore::RenderThemeMac::paintMediaFullscreenButton):
1889 (WebCore::RenderThemeMac::paintMediaMuteButton):
1890 (WebCore::RenderThemeMac::paintMediaPlayButton):
1891 (WebCore::RenderThemeMac::paintMediaSeekBackButton):
1892 (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
1893 (WebCore::RenderThemeMac::paintMediaSliderTrack):
1894 (WebCore::RenderThemeMac::paintMediaSliderThumb):
1895 (WebCore::RenderThemeMac::paintMediaTimelineContainer):
1896 (WebCore::RenderThemeMac::paintMediaCurrentTime):
1897 (WebCore::RenderThemeMac::paintMediaTimeRemaining):
1898 * rendering/RenderThemeSafari.cpp:
1899 (WebCore::RenderThemeSafari::paintMediaMuteButton):
1900 (WebCore::RenderThemeSafari::paintMediaPlayButton):
1901 (WebCore::RenderThemeSafari::paintMediaSliderTrack):
1902 * rendering/RenderTreeAsText.cpp:
1903 (WebCore::operator<<):
1904 (WebCore::writeSelection):
1905 * rendering/RenderWidget.cpp:
1906 (WebCore::RenderWidget::setWidgetGeometry):
1907 (WebCore::RenderWidget::updateWidgetPosition):
1908 (WebCore::RenderWidget::nodeAtPoint):
1909 * rendering/RootInlineBox.cpp:
1910 (WebCore::isEditableLeaf):
1911 * rendering/SVGRenderSupport.cpp:
1912 (WebCore::prepareToRenderSVGContent):
1913 * rendering/SVGRenderTreeAsText.cpp:
1915 * rendering/SVGRootInlineBox.cpp:
1916 (WebCore::SVGRootInlineBox::buildLayoutInformation):
1917 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
1918 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
1919 (WebCore::SVGRootInlineBox::buildTextChunks):
1920 * rendering/style/SVGRenderStyle.cpp:
1921 (WebCore::SVGRenderStyle::cssPrimitiveToLength):
1923 (WebCore::SVGTextRunWalker::walk):
1924 (WebCore::floatWidthOfSubStringUsingSVGFont):
1925 (WebCore::Font::drawTextUsingSVGFont):
1926 * svg/SVGTextContentElement.cpp:
1927 (WebCore::findInlineTextBoxInTextChunks):
1928 * svg/graphics/SVGPaintServer.cpp:
1929 (WebCore::SVGPaintServer::fillPaintServer):
1930 (WebCore::SVGPaintServer::strokePaintServer):
1932 2009-02-11 Brady Eidson <beidson@apple.com>
1934 Reviewed by Darin Adler
1936 <rdar://problem/3541409> - Further FrameLoader and page cache cleanup
1938 * history/CachedFrame.cpp:
1939 (WebCore::CachedFrame::restore): Moved updatePlatformScriptObjects() here.
1941 * loader/FrameLoader.cpp:
1942 (WebCore::FrameLoader::commitProvisionalLoad): Rolled opened() into this method. This method was
1943 the only caller and - in the future - will benefit from doing parts of opened()'s work differently.
1944 (WebCore::FrameLoader::open): Split off per-frame logic into open(CachedFrame&) method.
1945 (WebCore::FrameLoader::closeAndRemoveChild): Added. Do the non-tree related cleanup that
1946 FrameTree::removeChild() used to do.
1947 (WebCore::FrameLoader::detachFromParent): Call ::closeAndRemoveChild() instead.
1948 (WebCore::FrameLoader::cachePageForHistoryItem): Perform the "can cache page" check here.
1949 * loader/FrameLoader.h:
1951 * page/FrameTree.cpp:
1952 (WebCore::FrameTree::removeChild): Just remove the Frame from the tree. Closing it and other
1953 cleanup is the responsibility of the FrameLoader.
1955 (WebCore::FrameTree::detachFromParent): Added to just clear a Frame's parent pointer
1957 2009-02-11 Scott Violet <sky@google.com>
1959 Reviewed by Eric Seidel.
1961 https://bugs.webkit.org/show_bug.cgi?id=23882
1962 GraphicsContextSkia draws round rects as solid rects
1964 Fixes two bugs in Skia's GraphicsContext::fillRoundedRect:
1965 . fillRoundedRect had an extra call to fillRect, resulting in always
1966 drawing a solid rectangle.
1967 . if the total radius along a given axis is greater than the size of
1968 the axis to draw, a solid rect should be drawn.
1970 The layout tests LayoutTests/fast/css/shadow-multiple.html and
1971 LayoutTests/fast/box-shadow/basic-shadows.html cover this.
1973 * platform/graphics/skia/GraphicsContextSkia.cpp:
1974 (WebCore::GraphicsContext::fillRoundedRect):
1976 2009-02-11 Julien Chaffraix <jchaffraix@webkit.org>
1978 Reviewed by Eric Seidel.
1980 Bug 23536: Auto-generate HTMLElementFactory
1982 Remove the HTMLElementFactory files. Farewell.
1984 * html/HTMLElementFactory.cpp: Removed.
1985 * html/HTMLElementFactory.h: Removed.
1987 2009-02-11 Julien Chaffraix <jchaffraix@webkit.org>
1989 Reviewed by Eric Seidel.
1991 Bug 23536: Auto-generate HTMLElementFactory
1993 Make the platform auto-generate the HTMLElementFactory.
1995 * DerivedSources.make:
1999 * WebCore.vcproj/WebCore.vcproj:
2000 * WebCore.xcodeproj/project.pbxproj:
2001 * WebCoreSources.bkl:
2004 2009-02-11 Sam Weinig <sam@webkit.org>
2006 Reviewed by David Hyatt.
2008 Remove unneeded ASSERTS.
2010 * rendering/RenderBox.h:
2011 (WebCore::RenderBox::width):
2012 (WebCore::RenderBox::height):
2013 (WebCore::RenderBox::size):
2014 (WebCore::RenderBox::frameRect):
2016 2009-02-11 Simon Fraser <simon.fraser@apple.com>
2018 Reviewed by Dave Hyatt
2020 Add function to RenderStyle to ask whether a background image has been specified.
2022 * rendering/style/RenderStyle.h:
2023 (WebCore::InheritedFlags::hasBackgroundImage):
2025 2009-02-11 Simon Fraser <simon.fraser@apple.com>
2027 Reviewed by Dave Hyatt
2029 https://bugs.webkit.org/show_bug.cgi?id=23548
2031 When opacity or transform change on an object which has a compositing layer,
2032 avoid repainting the layer.
2034 Added a new StyleDifference value, StyleDifferenceRecompositeLayer, which indicates
2035 that the only thing styleChanged() has to do is to update composited properties of
2036 the layer. RenderStyle::diff() now has an out param for a bitmask of "context sensitive"
2037 properties, currently for opacity and transform. When one of these changes, we need
2038 to see if we have a compositing layer before we decide whether to layout/repaint,
2039 or just update the composited layer, via adjustStyleDifference().
2041 * rendering/RenderObject.cpp:
2042 (WebCore::RenderObject::adjustStyleDifference):
2043 (WebCore::RenderObject::setStyle):
2044 (WebCore::RenderObject::styleDidChange):
2045 * rendering/RenderObject.h:
2046 * rendering/style/RenderStyle.cpp:
2047 (WebCore::RenderStyle::diff):
2048 * rendering/style/RenderStyle.h:
2049 * rendering/style/RenderStyleConstants.h:
2052 2009-02-11 Alexey Proskuryakov <ap@webkit.org>
2054 Reviewed by Darin Adler.
2056 <rdar://problem/6562920> Pasted text should be normalized to NFC
2058 Testing requires putting non-HTML content in pasteboard, so it cannot be done with WebKit alone.
2060 * platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::plainText): Route the text through
2061 -[NSString precomposedStringWithCanonicalMapping].
2063 2009-02-10 Chris Marrin <cmarrin@apple.com>
2065 Reviewed by Simon Fraser.
2067 https://bugs.webkit.org/show_bug.cgi?id=23883
2069 Added new TransformOperation subclasses and methods to existing ones
2072 * WebCore.xcodeproj/project.pbxproj:
2073 * platform/graphics/transforms/IdentityTransformOperation.h:
2074 (WebCore::IdentityTransformOperation::isAffine):
2075 * platform/graphics/transforms/Matrix3DTransformOperation.cpp: Added.
2076 (WebCore::Matrix3DTransformOperation::blend):
2077 * platform/graphics/transforms/Matrix3DTransformOperation.h: Added.
2078 (WebCore::Matrix3DTransformOperation::create):
2079 (WebCore::Matrix3DTransformOperation::isIdentity):
2080 (WebCore::Matrix3DTransformOperation::isAffine):
2081 (WebCore::Matrix3DTransformOperation::getOperationType):
2082 (WebCore::Matrix3DTransformOperation::isSameType):
2083 (WebCore::Matrix3DTransformOperation::operator==):
2084 (WebCore::Matrix3DTransformOperation::apply):
2085 (WebCore::Matrix3DTransformOperation::Matrix3DTransformOperation):
2086 * platform/graphics/transforms/MatrixTransformOperation.h:
2087 (WebCore::MatrixTransformOperation::isAffine):
2088 (WebCore::MatrixTransformOperation::apply):
2089 * platform/graphics/transforms/PerspectiveTransformOperation.cpp: Added.
2090 (WebCore::PerspectiveTransformOperation::blend):
2091 * platform/graphics/transforms/PerspectiveTransformOperation.h: Added.
2092 (WebCore::PerspectiveTransformOperation::create):
2093 (WebCore::PerspectiveTransformOperation::isIdentity):
2094 (WebCore::PerspectiveTransformOperation::isAffine):
2095 (WebCore::PerspectiveTransformOperation::getOperationType):
2096 (WebCore::PerspectiveTransformOperation::isSameType):
2097 (WebCore::PerspectiveTransformOperation::operator==):
2098 (WebCore::PerspectiveTransformOperation::apply):
2099 (WebCore::PerspectiveTransformOperation::PerspectiveTransformOperation):
2100 * platform/graphics/transforms/RotateTransformOperation.cpp:
2101 (WebCore::RotateTransformOperation::blend):
2102 * platform/graphics/transforms/RotateTransformOperation.h:
2103 (WebCore::RotateTransformOperation::create):
2104 (WebCore::RotateTransformOperation::angle):
2105 (WebCore::RotateTransformOperation::isAffine):
2106 (WebCore::RotateTransformOperation::operator==):
2107 (WebCore::RotateTransformOperation::apply):
2108 (WebCore::RotateTransformOperation::RotateTransformOperation):
2109 * platform/graphics/transforms/ScaleTransformOperation.cpp:
2110 (WebCore::ScaleTransformOperation::blend):
2111 * platform/graphics/transforms/ScaleTransformOperation.h:
2112 (WebCore::ScaleTransformOperation::create):
2113 (WebCore::ScaleTransformOperation::z):
2114 (WebCore::ScaleTransformOperation::isIdentity):
2115 (WebCore::ScaleTransformOperation::isAffine):
2116 (WebCore::ScaleTransformOperation::operator==):
2117 (WebCore::ScaleTransformOperation::apply):
2118 (WebCore::ScaleTransformOperation::ScaleTransformOperation):
2119 * platform/graphics/transforms/SkewTransformOperation.h:
2120 (WebCore::SkewTransformOperation::isAffine):
2121 * platform/graphics/transforms/TransformOperation.h:
2122 (WebCore::TransformOperation::):
2123 (WebCore::TransformOperation::is3DOperation):
2124 * platform/graphics/transforms/TransformOperations.h:
2125 (WebCore::TransformOperations::isAffine):
2126 (WebCore::TransformOperations::has3DOperation):
2127 * platform/graphics/transforms/TranslateTransformOperation.cpp:
2128 (WebCore::TranslateTransformOperation::blend):
2129 * platform/graphics/transforms/TranslateTransformOperation.h:
2130 (WebCore::TranslateTransformOperation::create):
2131 (WebCore::TranslateTransformOperation::z):
2132 (WebCore::TranslateTransformOperation::isIdentity):
2133 (WebCore::TranslateTransformOperation::isAffine):
2134 (WebCore::TranslateTransformOperation::operator==):
2135 (WebCore::TranslateTransformOperation::apply):
2136 (WebCore::TranslateTransformOperation::TranslateTransformOperation):
2138 2009-02-11 David Hyatt <hyatt@apple.com>
2140 Move createAnonymousBlock() to RenderBlock. Since anonymous blocks are always parented to some other block,
2141 we can move this function to RenderBlock. Fix a couple of call sites as a result of this restriction.
2143 Reviewed by Simon Fraser
2145 * rendering/RenderBlock.cpp:
2146 (WebCore::RenderBlock::createAnonymousBlock):
2147 * rendering/RenderBlock.h:
2148 * rendering/RenderInline.cpp:
2149 (WebCore::RenderInline::childBecameNonInline):
2150 * rendering/RenderObject.cpp:
2151 (WebCore::RenderObject::handleDynamicFloatPositionChange):
2152 * rendering/RenderObject.h:
2154 2009-02-11 David Hyatt <hyatt@apple.com>
2156 https://bugs.webkit.org/show_bug.cgi?id=23895
2158 Remove two complete nonsense lines that I accidentally added from a cut and paste error. This
2159 restores the original logic.
2161 Reviewed by Simon Fraser
2163 * rendering/RenderBox.cpp:
2164 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
2166 2009-02-11 David Hyatt <hyatt@apple.com>
2168 Rename getBaselineOfFirstLineBox to firstLineBoxBaseline. Rename getBaselineOfLastLineBox to
2169 lastLineBoxBaseline. Remove the functions from RenderObject and add them to RenderBox instead.
2171 Reviewed by Eric Seidel
2173 * rendering/RenderBlock.cpp:
2174 (WebCore::RenderBlock::baselinePosition):
2175 (WebCore::RenderBlock::firstLineBoxBaseline):
2176 (WebCore::RenderBlock::lastLineBoxBaseline):
2177 * rendering/RenderBlock.h:
2178 * rendering/RenderBox.h:
2179 (WebCore::RenderBox::firstLineBoxBaseline):
2180 (WebCore::RenderBox::lastLineBoxBaseline):
2181 * rendering/RenderFlexibleBox.cpp:
2182 (WebCore::RenderFlexibleBox::layoutHorizontalBox):
2183 * rendering/RenderObject.h:
2184 * rendering/RenderTable.cpp:
2185 (WebCore::RenderTable::firstLineBoxBaseline):
2186 * rendering/RenderTable.h:
2187 * rendering/RenderTableCell.cpp:
2188 (WebCore::RenderTableCell::baselinePosition):
2189 * rendering/RenderTableSection.cpp:
2190 (WebCore::RenderTableSection::firstLineBoxBaseline):
2191 * rendering/RenderTableSection.h:
2193 2009-02-11 Eric Carlson <eric.carlson@apple.com>
2195 Reviewed by Simon Fraser
2197 https://bugs.webkit.org/show_bug.cgi?id=23877
2198 Allow port to disable progress events from <video> and <audio> elements
2200 * html/HTMLMediaElement.cpp: Initialize m_sendProgressEvents.
2201 (WebCore::HTMLMediaElement::HTMLMediaElement): Don't post progress events if m_sendProgressEvents is false.
2202 (WebCore::HTMLMediaElement::initAndDispatchProgressEvent): Ditto.
2203 (WebCore::HTMLMediaElement::load): Ditto.
2204 * html/HTMLMediaElement.h: Add m_sendProgressEvents
2206 2009-02-11 Adam Roben <aroben@apple.com>
2210 * DerivedSources.cpp: Removed SVGElementFactory.cpp, since including
2211 it leads to ambiguities for symbols like "aTag", which exist in both
2212 the HTMLNames and SVGNames namespaces.
2214 * WebCore.vcproj/WebCore.vcproj: Added SVGElementFactory.cpp to the
2215 project directly. VS also decided to reformat this file a little bit.
2217 2009-02-10 Julien Chaffraix <jchaffraix@webkit.org>
2219 Reviewed by Eric Seidel.
2221 Bug 23536: Auto-generate HTMLElementFactory
2223 Those are the last auto-generation bits needed to have a working generated HTMLElementFactory:
2225 - Added a new option mapToTagName that enables a tag to use another's options and tagName (<image>
2226 uses imgTag for example) and wired the code generation to be consistent with the current factory.
2228 - Disabled dashboard compatibility check for HTMLElementFactory as it would make at least one test case fail.
2230 - Pass the QualifiedName down to the Element constructor for shared constructors to make the generated code as
2231 close as possible to the current one. We will pass the QualifiedName for all Element in a forthcoming patch.
2233 * dom/make_names.pl: Did all the above points and tweaked the code generation to match the current HTMLElementFactory
2234 as closely as possible.
2236 * html/HTMLElementFactory.cpp:
2237 (WebCore::quoteConstructor):
2238 * html/HTMLQuoteElement.cpp:
2239 (WebCore::HTMLQuoteElement::HTMLQuoteElement): Moved setUsesBeforeAfterRules to HTMLQuoteElement' constructor because some
2240 part of the code creates elements without using the HTMLElementFactory. Also added a FIXME as it is not the right place.
2242 * html/HTMLTagNames.in: Corrected <image> parameters.
2244 2009-02-10 David Hyatt <hyatt@apple.com>
2246 Fix for pixel test regression in fast/text. Make sure not to add in
2247 the borderTop and paddingTop of the block to the baseline when painting
2248 strict mode text decorations.
2250 Reviewed by Mark Rowe
2252 * rendering/InlineFlowBox.cpp:
2253 (WebCore::InlineFlowBox::paintTextDecorations):
2254 * rendering/InlineFlowBox.h:
2256 2009-02-10 Jon Honeycutt <jhoneycutt@apple.com>
2258 Windows build fix after r40837.
2262 * DerivedSources.cpp:
2264 2009-02-10 Jon Honeycutt <jhoneycutt@apple.com>
2266 <rdar://6349412> REGRESSION(r37204): Page is not repainted during and
2269 Reviewed by Steve Falkenburg.
2271 * platform/ScrollView.cpp:
2272 (WebCore::ScrollView::scrollContents): Don't repaint the pan scroll
2273 icon rect immediately; we will paint after the view has been scrolled.
2275 2009-02-10 Oliver Hunt <oliver@apple.com>
2277 Reviewed by Adele Peterson.
2279 <rdar://problem/6156755> onMouseOver events do not fire properly for cross frame drag and drop
2281 This problem was caused by incorrectly ignoring whether or not the
2282 default behaviour of the mousedown event was suppressed. If a
2283 mousedown handler in a frame prevents default handling then the
2284 subsequent mousemove events fired for the drag should not be
2285 captured by that frame, should the mouse move out of its bounds.
2287 Test: fast/events/mouse-drag-from-frame.html
2289 * page/EventHandler.cpp:
2290 (WebCore::EventHandler::EventHandler):
2291 (WebCore::EventHandler::clear):
2292 (WebCore::EventHandler::handleMouseReleaseEvent):
2293 Reset new m_capturesDragging flag
2295 (WebCore::EventHandler::handleMousePressEvent):
2296 Respect the m_capturesDragging flag when we propagate
2297 a mousedown event to a subframe.
2299 * page/EventHandler.h:
2300 (WebCore::EventHandler::capturesDragging):
2302 2009-02-10 Kevin Ollivier <kevino@theolliviers.com>
2304 wx build fixes for recent changes to TransformationMatrix and DOMElement.
2306 * WebCoreSources.bkl:
2308 * platform/graphics/transforms/TransformationMatrix.h:
2309 * platform/graphics/wx/TransformationMatrixWx.cpp:
2310 (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
2312 2009-02-10 David Hyatt <hyatt@apple.com>
2314 Some renames on line boxes. xPos()/yPos() -> x()/y(). setXPos()/setYPos() -> setX()/setY(). m_object/object() -> m_renderer/renderer(). textObject() -> textRenderer().
2316 Reviewed by Sam Weinig
2319 (WebCore::Position::upstream):
2320 (WebCore::Position::downstream):
2321 * editing/VisiblePosition.cpp:
2322 (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
2323 (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
2324 (WebCore::VisiblePosition::localCaretRect):
2325 * editing/visible_units.cpp:
2326 (WebCore::startPositionForLine):
2327 (WebCore::endPositionForLine):
2328 (WebCore::previousLinePosition):
2329 (WebCore::nextLinePosition):
2330 * rendering/EllipsisBox.cpp:
2331 (WebCore::EllipsisBox::paint):
2332 (WebCore::EllipsisBox::nodeAtPoint):
2333 * rendering/InlineBox.cpp:
2334 (WebCore::InlineBox::showTreeForThis):
2335 (WebCore::InlineBox::height):
2336 (WebCore::InlineBox::caretMinOffset):
2337 (WebCore::InlineBox::caretMaxOffset):
2338 (WebCore::InlineBox::deleteLine):
2339 (WebCore::InlineBox::extractLine):
2340 (WebCore::InlineBox::attachLine):
2341 (WebCore::InlineBox::adjustPosition):
2342 (WebCore::InlineBox::paint):
2343 (WebCore::InlineBox::nodeAtPoint):
2344 (WebCore::InlineBox::selectionState):
2345 (WebCore::InlineBox::canAccommodateEllipsis):
2346 * rendering/InlineBox.h:
2347 (WebCore::InlineBox::InlineBox):
2348 (WebCore::InlineBox::renderer):
2349 (WebCore::InlineBox::setX):
2350 (WebCore::InlineBox::x):
2351 (WebCore::InlineBox::setY):
2352 (WebCore::InlineBox::y):
2353 (WebCore::InlineBox::topOverflow):
2354 (WebCore::InlineBox::bottomOverflow):
2355 (WebCore::InlineBox::leftOverflow):
2356 (WebCore::InlineBox::rightOverflow):
2357 (WebCore::InlineBox::visibleToHitTesting):
2358 (WebCore::InlineBox::boxModelObject):
2359 * rendering/InlineFlowBox.cpp:
2360 (WebCore::InlineFlowBox::height):
2361 (WebCore::InlineFlowBox::addToLine):
2362 (WebCore::InlineFlowBox::removeLineBoxFromRenderObject):
2363 (WebCore::InlineFlowBox::extractLineBoxFromRenderObject):
2364 (WebCore::InlineFlowBox::attachLineBoxToRenderObject):
2365 (WebCore::InlineFlowBox::rendererLineBoxes):
2366 (WebCore::InlineFlowBox::onEndChain):
2367 (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
2368 (WebCore::InlineFlowBox::placeBoxesHorizontally):
2369 (WebCore::InlineFlowBox::verticallyAlignBoxes):
2370 (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
2371 (WebCore::verticalPositionForBox):
2372 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2373 (WebCore::InlineFlowBox::placeBoxesVertically):
2374 (WebCore::InlineFlowBox::nodeAtPoint):
2375 (WebCore::InlineFlowBox::paint):
2376 (WebCore::InlineFlowBox::paintFillLayer):
2377 (WebCore::InlineFlowBox::paintBoxShadow):
2378 (WebCore::InlineFlowBox::paintBoxDecorations):
2379 (WebCore::InlineFlowBox::paintMask):
2380 (WebCore::InlineFlowBox::paintTextDecorations):
2381 * rendering/InlineFlowBox.h:
2382 (WebCore::InlineFlowBox::borderLeft):
2383 (WebCore::InlineFlowBox::borderRight):
2384 (WebCore::InlineFlowBox::borderTop):
2385 (WebCore::InlineFlowBox::borderBottom):
2386 (WebCore::InlineFlowBox::baseline):
2387 * rendering/InlineTextBox.cpp:
2388 (WebCore::InlineTextBox::height):
2389 (WebCore::InlineTextBox::selectionState):
2390 (WebCore::InlineTextBox::selectionRect):
2391 (WebCore::InlineTextBox::deleteLine):
2392 (WebCore::InlineTextBox::extractLine):
2393 (WebCore::InlineTextBox::attachLine):
2394 (WebCore::InlineTextBox::placeEllipsisBox):
2395 (WebCore::InlineTextBox::isLineBreak):
2396 (WebCore::InlineTextBox::nodeAtPoint):
2397 (WebCore::InlineTextBox::paint):
2398 (WebCore::InlineTextBox::selectionStartEnd):
2399 (WebCore::InlineTextBox::paintSelection):
2400 (WebCore::InlineTextBox::paintCompositionBackground):
2401 (WebCore::InlineTextBox::paintCustomHighlight):
2402 (WebCore::InlineTextBox::paintDecoration):
2403 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
2404 (WebCore::InlineTextBox::paintTextMatchMarker):
2405 (WebCore::InlineTextBox::paintDocumentMarkers):
2406 (WebCore::InlineTextBox::paintCompositionUnderline):
2407 (WebCore::InlineTextBox::textPos):
2408 (WebCore::InlineTextBox::offsetForPosition):
2409 (WebCore::InlineTextBox::positionForOffset):
2410 * rendering/InlineTextBox.h:
2411 (WebCore::InlineTextBox::textRenderer):
2412 * rendering/ListMarkerBox.cpp:
2413 (WebCore::ListMarkerBox::isText):
2414 * rendering/RenderBlock.cpp:
2415 (WebCore::RenderBlock::paintEllipsisBoxes):
2416 (WebCore::RenderBlock::lowestPosition):
2417 (WebCore::RenderBlock::rightmostPosition):
2418 (WebCore::RenderBlock::leftmostPosition):
2419 (WebCore::RenderBlock::positionForBox):
2420 (WebCore::RenderBlock::positionForCoordinates):
2421 (WebCore::RenderBlock::getBaselineOfFirstLineBox):
2422 (WebCore::RenderBlock::getBaselineOfLastLineBox):
2423 (WebCore::RenderBlock::adjustForBorderFit):
2424 (WebCore::RenderBlock::addFocusRingRects):
2425 * rendering/RenderBox.cpp:
2426 (WebCore::RenderBox::paintCustomHighlight):
2427 (WebCore::RenderBox::position):
2428 (WebCore::RenderBox::containingBlockWidthForPositioned):
2429 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
2430 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
2431 * rendering/RenderBoxModelObject.cpp:
2432 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
2433 * rendering/RenderFlexibleBox.cpp:
2434 (WebCore::RenderFlexibleBox::layoutVerticalBox):
2435 * rendering/RenderInline.cpp:
2436 (WebCore::RenderInline::absoluteRects):
2437 (WebCore::RenderInline::absoluteQuads):
2438 (WebCore::RenderInline::offsetLeft):
2439 (WebCore::RenderInline::offsetTop):
2440 (WebCore::RenderInline::linesBoundingBox):
2441 (WebCore::RenderInline::relativePositionedInlineOffset):
2442 (WebCore::RenderInline::addFocusRingRects):
2443 (WebCore::RenderInline::paintOutline):
2444 * rendering/RenderLayer.cpp:
2445 (WebCore::RenderLayer::localBoundingBox):
2446 * rendering/RenderSVGTSpan.cpp:
2447 (WebCore::RenderSVGTSpan::absoluteRects):
2448 (WebCore::RenderSVGTSpan::absoluteQuads):
2449 * rendering/RenderSVGText.cpp:
2450 (WebCore::RenderSVGText::absoluteRects):
2451 (WebCore::RenderSVGText::absoluteQuads):
2452 (WebCore::RenderSVGText::relativeBBox):
2453 * rendering/RenderSVGTextPath.cpp:
2454 (WebCore::RenderSVGTextPath::absoluteRects):
2455 (WebCore::RenderSVGTextPath::absoluteQuads):
2456 * rendering/RenderText.cpp:
2457 (WebCore::RenderText::absoluteRects):
2458 (WebCore::RenderText::absoluteRectsForRange):
2459 (WebCore::RenderText::absoluteQuads):
2460 (WebCore::RenderText::absoluteQuadsForRange):
2461 (WebCore::RenderText::localCaretRect):
2462 (WebCore::RenderText::linesBoundingBox):
2463 * rendering/RootInlineBox.cpp:
2464 (WebCore::RootInlineBox::height):
2465 (WebCore::RootInlineBox::clearTruncation):
2466 (WebCore::RootInlineBox::placeEllipsis):
2467 (WebCore::RootInlineBox::paintEllipsisBox):
2468 (WebCore::RootInlineBox::addHighlightOverflow):
2469 (WebCore::RootInlineBox::paintCustomHighlight):
2470 (WebCore::RootInlineBox::paint):
2471 (WebCore::RootInlineBox::nodeAtPoint):
2472 (WebCore::RootInlineBox::childRemoved):
2473 (WebCore::RootInlineBox::fillLineSelectionGap):
2474 (WebCore::RootInlineBox::block):
2475 (WebCore::isEditableLeaf):
2476 (WebCore::RootInlineBox::closestLeafChildForXPos):
2477 (WebCore::RootInlineBox::setVerticalOverflowPositions):
2478 * rendering/RootInlineBox.h:
2479 (WebCore::RootInlineBox::bottomOverflow):
2480 (WebCore::RootInlineBox::floats):
2481 (WebCore::RootInlineBox::setHorizontalOverflowPositions):
2482 (WebCore::RootInlineBox::setVerticalSelectionPositions):
2483 * rendering/SVGCharacterLayoutInfo.cpp:
2484 (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
2485 * rendering/SVGInlineTextBox.cpp:
2486 (WebCore::SVGInlineTextBox::calculateGlyphWidth):
2487 (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
2488 (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
2489 (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
2490 (WebCore::SVGInlineTextBox::nodeAtPoint):
2491 (WebCore::SVGInlineTextBox::paintCharacters):
2492 (WebCore::SVGInlineTextBox::paintSelection):
2493 (WebCore::SVGInlineTextBox::paintDecoration):
2494 * rendering/SVGRenderTreeAsText.cpp:
2495 (WebCore::writeSVGInlineTextBox):
2496 * rendering/SVGRootInlineBox.cpp:
2497 (WebCore::SVGRootInlineBoxPaintWalker::SVGRootInlineBoxPaintWalker):
2498 (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback):
2499 (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback):
2500 (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupFillCallback):
2501 (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupStrokeCallback):
2502 (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
2503 (WebCore::SVGRootInlineBox::paint):
2504 (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
2505 (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
2506 (WebCore::svgTextRunForInlineTextBox):
2507 (WebCore::cummulatedWidthOrHeightOfTextChunk):
2508 (WebCore::applyTextAnchorToTextChunk):
2509 (WebCore::SVGRootInlineBox::buildLayoutInformation):
2510 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
2511 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
2512 (WebCore::SVGRootInlineBox::buildTextChunks):
2513 * rendering/bidi.cpp:
2514 (WebCore::RenderBlock::constructLine):
2515 (WebCore::RenderBlock::computeVerticalPositionsForLine):
2516 (WebCore::RenderBlock::layoutInlineChildren):
2517 (WebCore::RenderBlock::checkLinesForTextOverflow):
2518 * svg/SVGTextContentElement.cpp:
2519 (WebCore::cumulativeCharacterRangeLength):
2520 (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
2521 (WebCore::findInlineTextBoxInTextChunks):
2523 2009-02-10 Simon Fraser <simon.fraser@apple.com>
2525 Reviewed by Dave Hyatt
2527 Clean up "fallbackAnimating" logic in AnimationBase. This flag indicates
2528 that animation of an accelerated property must run in software for some reason.
2530 Also remove use of private headers in GraphicsLayerCA related to a case
2531 where we may have to fall back on software animation of transform.
2533 * page/animation/AnimationBase.cpp:
2534 (WebCore::AnimationBase::blendProperties):
2535 * page/animation/AnimationBase.h:
2536 * page/animation/ImplicitAnimation.cpp:
2537 (WebCore::ImplicitAnimation::animate):
2538 * page/animation/KeyframeAnimation.cpp:
2539 (WebCore::KeyframeAnimation::animate):
2540 * platform/graphics/mac/GraphicsLayerCA.h:
2541 * platform/graphics/mac/GraphicsLayerCA.mm:
2542 (WebCore::getValueFunctionNameForTransformOperation):
2543 (WebCore::caValueFunctionSupported):
2544 (WebCore::GraphicsLayerCA::setBackgroundColor):
2545 (WebCore::GraphicsLayerCA::setOpacity):
2546 (WebCore::GraphicsLayerCA::animateTransform):
2547 (WebCore::GraphicsLayerCA::animateFloat):
2548 (WebCore::GraphicsLayerCA::setBasicAnimation):
2549 (WebCore::GraphicsLayerCA::setKeyframeAnimation):
2551 2009-02-10 Simon Fraser <simon.fraser@apple.com>
2553 Reviewed by Dave Hyatt
2555 Move enclosingCompositingLayer() from RenderObject to RenderLayer, since it
2556 relates to the RenderLayer z-order/overflow structure, rather than the render tree
2557 parent chain. Add a convenience method, ancestorCompositingLayer(), which finds
2558 the enclosing layer excluding self.
2560 Fix enclosingCompositingLayer() to correctly look at stacking context and overflow
2563 Check for documentBeingDestroyed() in a few places to avoid work on document
2566 * rendering/RenderLayer.cpp:
2567 (WebCore::RenderLayer::enclosingCompositingLayer):
2568 (WebCore::RenderLayer::setParent):
2569 (WebCore::RenderLayer::dirtyZOrderLists):
2570 (WebCore::RenderLayer::dirtyOverflowList):
2571 * rendering/RenderLayer.h:
2572 (WebCore::RenderLayer::ancestorCompositingLayer):
2573 * rendering/RenderLayerBacking.cpp:
2574 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2575 * rendering/RenderLayerCompositor.cpp:
2576 (WebCore::RenderLayerCompositor::updateLayerCompositingState):
2577 (WebCore::RenderLayerCompositor::calculateCompositedBounds):
2578 (WebCore::RenderLayerCompositor::layerWillBeRemoved):
2579 (WebCore::RenderLayerCompositor::clippedByAncestor):
2580 * rendering/RenderLayerCompositor.h:
2581 * rendering/RenderObject.cpp:
2582 (WebCore::RenderObject::containerForRepaint):
2583 * rendering/RenderObject.h:
2585 2009-02-10 David Hyatt <hyatt@apple.com>
2587 Rename xPos() and yPos() on RenderLayer to x() and y() to match RenderBox. Rename setPos to setLocation.
2589 Reviewed by Simon Fraser
2591 * dom/MouseRelatedEvent.cpp:
2592 (WebCore::MouseRelatedEvent::receivedTarget):
2593 * rendering/RenderLayer.cpp:
2594 (WebCore::RenderLayer::updateLayerPosition):
2595 (WebCore::RenderLayer::convertToLayerCoords):
2596 * rendering/RenderLayer.h:
2597 (WebCore::RenderLayer::x):
2598 (WebCore::RenderLayer::y):
2599 (WebCore::RenderLayer::setLocation):
2600 * rendering/RenderTreeAsText.cpp:
2602 (WebCore::externalRepresentation):
2604 2009-02-10 Darin Fisher <darin@chromium.org>
2606 Reviewed by Eric Seidel.
2608 https://bugs.webkit.org/show_bug.cgi?id=23879
2609 Add missing PLATFORM(SKIA) changes to TransformationMatrix.h
2611 * platform/graphics/transforms/TransformationMatrix.h:
2613 2009-02-10 Sam Weinig <sam@webkit.org>
2615 Reviewed by David Hyatt.
2617 Fix for https://bugs.webkit.org/show_bug.cgi?id=15897
2618 Please implement getBoundingClientRect and getClientRects
2619 <rdar://problem/6139669>
2621 Cursory implementation of Element.getBoundingClientRect and
2622 Element.getClientRects. Adds necessary infrastructure classes
2623 ClientRect and ClientRectList.
2625 Tests: fast/dom/getBoundingClientRect.html
2626 fast/dom/getClientRects.html
2628 * DerivedSources.make:
2631 * WebCore.vcproj/WebCore.vcproj:
2632 * WebCore.xcodeproj/project.pbxproj:
2633 * WebCoreSources.bkl:
2634 * dom/ClientRect.cpp: Added.
2635 (WebCore::ClientRect::ClientRect):
2636 * dom/ClientRect.h: Added.
2637 (WebCore::ClientRect::create):
2638 (WebCore::ClientRect::top):
2639 (WebCore::ClientRect::right):
2640 (WebCore::ClientRect::bottom):
2641 (WebCore::ClientRect::left):
2642 (WebCore::ClientRect::width):
2643 (WebCore::ClientRect::height):
2644 * dom/ClientRect.idl: Added.
2645 * dom/ClientRectList.cpp: Added.
2646 (WebCore::ClientRectList::ClientRectList):
2647 (WebCore::ClientRectList::~ClientRectList):
2648 (WebCore::ClientRectList::length):
2649 (WebCore::ClientRectList::item):
2650 * dom/ClientRectList.h: Added.
2651 (WebCore::ClientRectList::create):
2652 * dom/ClientRectList.idl: Added.
2654 (WebCore::Element::getClientRects):
2655 (WebCore::Element::getBoundingClientRect):
2658 * page/DOMWindow.idl:
2659 * rendering/RenderInline.cpp:
2660 (WebCore::RenderInline::absoluteRects):
2661 (WebCore::RenderInline::absoluteQuads):
2663 2009-02-10 David Hyatt <hyatt@apple.com>
2665 Get rid of capsLockStateMayHaveChanged on RenderObject. It is only implemented by one class (text fields),
2666 so devirtualize and just query at the single call site.
2668 Reviewed by Eric Seidel
2670 * page/EventHandler.cpp:
2671 (WebCore::EventHandler::capsLockStateMayHaveChanged):
2672 * rendering/RenderObject.h:
2673 * rendering/RenderTextControlSingleLine.h:
2675 2009-02-10 David Hyatt <hyatt@apple.com>
2677 Shrink the size of all RenderObjects (except for RenderInlines) by 4 bytes. This patch moves the cached vertical position member to RenderInlines,
2678 since they were the only objects being queried across multiple lines.
2680 Reviewed by Sam Weinig
2682 * rendering/InlineFlowBox.cpp:
2683 (WebCore::verticalPositionForBox):
2684 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2685 * rendering/RenderBoxModelObject.cpp:
2686 (WebCore::RenderBoxModelObject::verticalPosition):
2687 * rendering/RenderBoxModelObject.h:
2688 * rendering/RenderInline.cpp:
2689 (WebCore::RenderInline::RenderInline):
2690 (WebCore::RenderInline::verticalPositionFromCache):
2691 * rendering/RenderInline.h:
2692 (WebCore::RenderInline::invalidateVerticalPosition):
2693 * rendering/RenderObject.cpp:
2694 (WebCore::RenderObject::RenderObject):
2695 * rendering/RenderObject.h:
2696 * rendering/RenderText.cpp:
2697 * rendering/RenderText.h:
2698 * rendering/bidi.cpp:
2699 (WebCore::RenderBlock::layoutInlineChildren):
2701 2009-02-10 Dimitri Glazkov <dglazkov@chromium.org>
2703 Reviewed by Mark Rowe.
2705 https://bugs.webkit.org/show_bug.cgi?id=23868
2706 Fix code style issues: removed 80-col wrapping, incorrect include style, if statement body on same line.
2708 * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
2709 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
2711 2009-02-10 Dimitri Glazkov <dglazkov@chromium.org>
2713 Reviewed by Eric Seidel.
2715 https://bugs.webkit.org/show_bug.cgi?id=23868
2716 Add HTMLInputElement and HTMLOptionsCollection V8 custom bindings.
2718 * bindings/v8/custom/V8HTMLInputElementCustom.cpp: Added.
2719 (WebCore::ACCESSOR_GETTER):
2720 (WebCore::ACCESSOR_SETTER):
2721 (WebCore::CALLBACK_FUNC_DECL):
2722 * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp: Added.
2723 (WebCore::ACCESSOR_GETTER):
2724 (WebCore::ACCESSOR_SETTER):
2726 2009-02-10 Adam Roben <aroben@apple.com>
2728 Fix Bug 23871: Assertion failure beneath WebCore::openFunc when
2729 running http/tests/security/xss-DENIED-xsl-document-redirect.xml
2731 <https://bugs.webkit.org/show_bug.cgi?id=23871>
2733 Reviewed by Alexey Proskuryakov.
2735 Covered by existing tests.
2737 * dom/XMLTokenizerLibxml2.cpp:
2738 (WebCore::openFunc): Use the two-parameter KURL constructor so that
2739 the string will be parsed. libxml2 gives us a UTF-8-encoded string
2740 that needs to be parsed.
2742 2009-02-10 David Hyatt <hyatt@apple.com>
2744 Shrink the size of all replaced elements (images, form controls, plugins) by 4 bytes by packing the
2745 overflow boolean into the RenderObject base class.
2747 Reviewed by Sam Weinig
2749 * rendering/RenderObject.cpp:
2750 (WebCore::RenderObject::RenderObject):
2751 * rendering/RenderObject.h:
2752 (WebCore::RenderObject::replacedHasOverflow):
2753 (WebCore::RenderObject::setReplacedHasOverflow):
2754 * rendering/RenderReplaced.cpp:
2755 (WebCore::RenderReplaced::RenderReplaced):
2756 (WebCore::RenderReplaced::~RenderReplaced):
2757 (WebCore::RenderReplaced::adjustOverflowForBoxShadow):
2758 (WebCore::RenderReplaced::overflowHeight):
2759 (WebCore::RenderReplaced::overflowWidth):
2760 (WebCore::RenderReplaced::overflowLeft):
2761 (WebCore::RenderReplaced::overflowTop):
2762 (WebCore::RenderReplaced::overflowRect):
2763 * rendering/RenderReplaced.h:
2765 2009-02-10 Eric Carlson <eric.carlson@apple.com>
2767 Reviewed by Simon Fraser.
2769 https://bugs.webkit.org/show_bug.cgi?id=23870
2770 Make it possible for a port to require a user gesture for an <audio> or <video> element
2773 * html/HTMLMediaElement.cpp:
2774 (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_loadRestrictions.
2775 (WebCore::HTMLMediaElement::attributeChanged): Only one attribute can change so put an "else" between tests.
2776 (WebCore::HTMLMediaElement::load): Return INVALID_STATE_ERR if RequireUserGestureLoadRestriction is set
2777 and we are not preocessing a user gesture.
2778 (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): Remove unnecessary white space.
2779 (WebCore::HTMLMediaElement::play): Ditto.
2780 (WebCore::HTMLMediaElement::endScrubbing): Remove unnecessary braces added in r40789.
2781 (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Cache currentTime() in a local instead of calling it
2783 (WebCore::HTMLMediaElement::processingUserGesture): New.
2784 * html/HTMLMediaElement.h:
2785 (WebCore::HTMLMediaElement::): Define LoadRestrictions, add m_loadRestrictions.
2787 2009-02-10 Holger Hans Peter Freyther <zecke@selfish.org>
2789 Reviewed by Sam Weinig.
2791 Remove the SVG checks from FloatPoint3D as it is used
2792 by TransformationMatrix.
2794 * platform/graphics/FloatPoint3D.cpp:
2795 * platform/graphics/FloatPoint3D.h:
2797 2009-02-10 David Hyatt <hyatt@apple.com>
2799 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.
2801 Reviewed by Sam Weinig
2803 * rendering/EllipsisBox.cpp:
2804 (WebCore::EllipsisBox::paint):
2805 (WebCore::EllipsisBox::nodeAtPoint):
2806 * rendering/EllipsisBox.h:
2807 (WebCore::EllipsisBox::EllipsisBox):
2808 * rendering/InlineBox.h:
2809 (WebCore::InlineBox::InlineBox):
2810 * rendering/InlineFlowBox.cpp:
2811 (WebCore::InlineFlowBox::verticallyAlignBoxes):
2812 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2813 (WebCore::InlineFlowBox::placeBoxesVertically):
2814 (WebCore::InlineFlowBox::paintTextDecorations):
2815 * rendering/InlineFlowBox.h:
2816 (WebCore::InlineFlowBox::marginBorderPaddingLeft):
2817 (WebCore::InlineFlowBox::marginBorderPaddingRight):
2818 (WebCore::InlineFlowBox::marginLeft):
2819 (WebCore::InlineFlowBox::marginRight):
2820 (WebCore::InlineFlowBox::borderLeft):
2821 (WebCore::InlineFlowBox::borderRight):
2822 (WebCore::InlineFlowBox::borderTop):
2823 (WebCore::InlineFlowBox::borderBottom):
2824 (WebCore::InlineFlowBox::paddingLeft):
2825 (WebCore::InlineFlowBox::paddingRight):
2826 (WebCore::InlineFlowBox::paddingTop):
2827 (WebCore::InlineFlowBox::paddingBottom):
2828 (WebCore::InlineFlowBox::includeLeftEdge):
2829 (WebCore::InlineFlowBox::includeRightEdge):
2830 (WebCore::InlineFlowBox::baseline):
2831 * rendering/InlineTextBox.cpp:
2832 (WebCore::InlineTextBox::paint):
2833 (WebCore::InlineTextBox::paintDecoration):
2834 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
2835 (WebCore::InlineTextBox::paintCompositionUnderline):
2836 * rendering/RenderBlock.cpp:
2837 (WebCore::RenderBlock::getBaselineOfFirstLineBox):
2838 (WebCore::RenderBlock::getBaselineOfLastLineBox):
2839 * rendering/RenderTableCell.cpp:
2840 (WebCore::RenderTableCell::baselinePosition):
2841 * rendering/RootInlineBox.cpp:
2842 (WebCore::RootInlineBox::placeEllipsis):
2843 * rendering/SVGInlineTextBox.cpp:
2844 (WebCore::SVGInlineTextBox::paintDecoration):
2845 * rendering/SVGRootInlineBox.cpp:
2846 (WebCore::applyTextAnchorToTextChunk):
2847 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
2849 2009-02-10 Alexey Proskuryakov <ap@webkit.org>
2851 Reviewed by Darin Adler.
2853 https://bugs.webkit.org/show_bug.cgi?id=23867
2854 Eliminate obsolete frame->document() checks
2856 * page/FrameView.cpp: (WebCore::FrameView::paintContents): Apparently due to a typo
2857 (document vs. !document), fillWithRed was always set to false, and other branches were
2858 never taken. Removing the check for document restores debug-only red color filling.
2860 * loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): Only call dispatchWindowObjectAvailable()
2861 after a document is created. A client can do anything in its delegate method, so we'd need
2862 to have frame->document() checks otherwise. DumpRenderTree uses this delegate to add its
2863 custom property, and it was crashing due to null document in JSDOMWindowBase::getOwnPropertySlot().
2865 * bindings/js/JSDOMWindowBase.cpp:
2866 (WebCore::JSDOMWindowBase::getOwnPropertySlot):
2867 * bindings/js/JSDOMWindowCustom.cpp:
2868 (WebCore::JSDOMWindow::addEventListener):
2869 (WebCore::JSDOMWindow::removeEventListener):
2870 * bindings/js/JSNavigatorCustom.cpp:
2871 (WebCore::needsYouTubeQuirk):
2872 * bindings/js/ScheduledAction.cpp:
2873 (WebCore::ScheduledAction::execute):
2874 * bindings/js/ScriptControllerMac.mm:
2875 (WebCore::updateRenderingForBindings):
2877 (WebCore::Document::initSecurityContext):
2878 * editing/Editor.cpp:
2879 (WebCore::Editor::deleteWithDirection):
2880 (WebCore::Editor::dispatchCPPEvent):
2881 (WebCore::Editor::applyStyle):
2882 (WebCore::Editor::applyParagraphStyle):
2883 * editing/EditorCommand.cpp:
2884 (WebCore::Editor::Command::execute):
2885 (WebCore::Editor::Command::isEnabled):
2886 (WebCore::Editor::Command::state):
2887 (WebCore::Editor::Command::value):
2888 * editing/SelectionController.cpp:
2889 (WebCore::SelectionController::recomputeCaretRect):
2890 (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
2891 (WebCore::SelectionController::selectAll):
2892 (WebCore::SelectionController::setFocused):
2893 * inspector/InspectorController.cpp:
2894 (WebCore::getResourceDocumentNode):
2895 * inspector/JavaScriptDebugServer.cpp:
2896 (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
2897 * loader/DocumentLoader.cpp:
2898 (WebCore::canonicalizedTitle):
2899 (WebCore::DocumentLoader::stopLoading):
2900 (WebCore::DocumentLoader::isLoadingInAPISense):
2901 (WebCore::DocumentLoader::subresource):
2902 (WebCore::DocumentLoader::getSubresources):
2903 * loader/FrameLoader.cpp:
2904 (WebCore::FrameLoader::urlSelected):
2905 (WebCore::FrameLoader::stop):
2906 (WebCore::FrameLoader::iconURL):
2907 (WebCore::FrameLoader::executeIfJavaScriptURL):
2908 (WebCore::FrameLoader::clear):
2909 (WebCore::FrameLoader::endIfNotLoadingMainResource):
2910 (WebCore::FrameLoader::restoreDocumentState):
2911 (WebCore::FrameLoader::gotoAnchor):
2912 (WebCore::FrameLoader::loadDone):
2913 (WebCore::FrameLoader::checkCompleted):
2914 (WebCore::FrameLoader::checkCallImplicitClose):
2915 (WebCore::FrameLoader::scheduleRefresh):
2916 (WebCore::FrameLoader::outgoingOrigin):
2917 (WebCore::FrameLoader::canCachePageContainingThisFrame):
2918 (WebCore::FrameLoader::logCanCacheFrameDecision):
2919 (WebCore::FrameLoader::updatePolicyBaseURL):
2920 (WebCore::FrameLoader::setPolicyBaseURL):
2921 (WebCore::FrameLoader::frameDetached):
2922 (WebCore::FrameLoader::shouldScrollToAnchor):
2923 (WebCore::FrameLoader::saveDocumentState):
2924 * loader/archive/cf/LegacyWebArchive.cpp:
2925 (WebCore::LegacyWebArchive::create):
2926 * loader/icon/IconFetcher.cpp:
2927 (WebCore::IconFetcher::create):
2928 * loader/icon/IconLoader.cpp:
2929 (WebCore::IconLoader::startLoading):
2930 * page/AccessibilityRenderObject.cpp:
2931 (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
2933 (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
2934 (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
2935 * page/DOMWindow.cpp:
2936 (WebCore::DOMWindow::sessionStorage):
2937 (WebCore::DOMWindow::alert):
2938 (WebCore::DOMWindow::confirm):
2939 (WebCore::DOMWindow::prompt):
2940 (WebCore::DOMWindow::scrollX):
2941 (WebCore::DOMWindow::scrollY):
2942 (WebCore::DOMWindow::getMatchedCSSRules):
2943 (WebCore::DOMWindow::openDatabase):
2944 (WebCore::DOMWindow::scrollBy):
2945 (WebCore::DOMWindow::scrollTo):
2946 * page/EventHandler.cpp:
2947 (WebCore::EventHandler::allowDHTMLDrag):
2948 (WebCore::EventHandler::scrollOverflow):
2949 (WebCore::EventHandler::handleMousePressEvent):
2950 (WebCore::EventHandler::handleMouseDoubleClickEvent):
2951 (WebCore::EventHandler::handleMouseMoveEvent):
2952 (WebCore::EventHandler::handleMouseReleaseEvent):
2953 (WebCore::EventHandler::updateDragAndDrop):
2954 (WebCore::EventHandler::handleWheelEvent):
2955 (WebCore::EventHandler::sendContextMenuEvent):
2956 (WebCore::EventHandler::capsLockStateMayHaveChanged):
2957 (WebCore::EventHandler::sendResizeEvent):
2958 (WebCore::EventHandler::sendScrollEvent):
2959 * page/FocusController.cpp:
2960 (WebCore::deepFocusableNode):
2961 (WebCore::FocusController::advanceFocus):
2963 (WebCore::Frame::setFocusedNodeIfNeeded):
2964 (WebCore::Frame::shouldApplyTextZoom):
2965 (WebCore::Frame::shouldApplyPageZoom):
2966 (WebCore::Frame::setZoomFactor):
2967 (WebCore::Frame::setPrinting):
2968 (WebCore::Frame::reapplyStyles):
2969 (WebCore::Frame::isContentEditable):
2970 (WebCore::Frame::computeAndSetTypingStyle):
2971 (WebCore::Frame::selectionComputedStyle):
2972 (WebCore::Frame::applyEditingStyleToBodyElement):
2973 (WebCore::Frame::removeEditingStyleFromBodyElement):
2974 (WebCore::Frame::contentRenderer):
2975 (WebCore::Frame::styleForSelectionStart):
2976 (WebCore::Frame::setSelectionFromNone):
2977 (WebCore::Frame::findString):
2978 (WebCore::Frame::markAllMatchesForText):
2979 (WebCore::Frame::setMarkedTextMatchesAreHighlighted):
2980 (WebCore::Frame::documentTypeString):
2981 (WebCore::Frame::shouldClose):
2982 (WebCore::Frame::respondToChangedSelection):
2983 * page/FrameView.cpp:
2984 (WebCore::FrameView::~FrameView):
2985 (WebCore::FrameView::createScrollbar):
2986 (WebCore::FrameView::layout):
2987 (WebCore::FrameView::layoutTimerFired):
2988 (WebCore::FrameView::scheduleRelayout):
2989 (WebCore::FrameView::needsLayout):
2990 (WebCore::FrameView::unscheduleRelayout):
2991 (WebCore::FrameView::windowClipRect):
2992 * page/Geolocation.cpp:
2993 (WebCore::Geolocation::disconnectFrame):
2995 (WebCore::networkStateChanged):
2996 (WebCore::Page::~Page):
2997 (WebCore::Page::unmarkAllTextMatches):
2998 (WebCore::Page::setMediaVolume):
2999 * page/animation/AnimationController.cpp:
3000 (WebCore::AnimationControllerPrivate::updateRenderingDispatcherFired):
3001 * page/mac/EventHandlerMac.mm:
3002 (WebCore::EventHandler::currentKeyboardEvent):
3003 (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
3004 * page/mac/FrameMac.mm:
3005 (WebCore::Frame::dashboardRegionsDictionary):
3006 (WebCore::Frame::setUserStyleSheetLocation):
3007 (WebCore::Frame::setUserStyleSheet):
3008 * storage/LocalStorageArea.cpp:
3009 (WebCore::LocalStorageArea::dispatchStorageEvent):
3010 * storage/SessionStorageArea.cpp:
3011 (WebCore::SessionStorageArea::dispatchStorageEvent):
3012 * svg/graphics/SVGImage.cpp:
3013 (WebCore::SVGImage::setContainerSize):
3014 (WebCore::SVGImage::usesContainerSize):
3015 (WebCore::SVGImage::size):
3016 (WebCore::SVGImage::hasRelativeWidth):
3017 (WebCore::SVGImage::hasRelativeHeight):
3018 Removed frame->document() checks.
3020 2009-02-10 Adam Treat <adam.treat@torchmobile.com>
3022 Reviewed by George Staikos.
3024 Attempt to fix the Qt build after r40791.
3026 * rendering/RenderSVGRoot.cpp:
3028 2009-02-10 Adam Treat <adam.treat@torchmobile.com>
3030 Reviewed by George Staikos.
3034 * dom/ContainerNode.cpp:
3035 (WebCore::ContainerNode::replaceChild):
3037 2009-02-10 Adam Treat <adam.treat@torchmobile.com>
3039 Fix Qt build following r40793.
3041 * editing/qt/EditorQt.cpp:
3043 2009-02-10 Feng Qian <feng@chromium.org>
3045 Reviewed by Alexey Proskuryakov.
3047 Fix crashes when accessing navigator object of a deleted frame.
3048 https://bugs.webkit.org/show_bug.cgi?id=23626
3049 A layout test is added: fast/dom/navigator-detached-no-crash.html
3051 * page/Navigator.cpp:
3052 (WebCore::Navigator::cookieEnabled):
3053 (WebCore::Navigator::javaEnabled):
3055 2009-02-10 Sverrir Berg <sverrir@chromium.org>
3057 Reviewed by Eric Seidel.
3059 https://bugs.webkit.org/show_bug.cgi?id=23630
3060 Add complex font rendering using Skia instead of Windows ScriptTextOut.
3061 This adds support for enhanced webkit styles when drawing complex
3064 * platform/graphics/chromium/FontChromiumWin.cpp:
3065 (WebCore::Font::drawGlyphs):
3066 (WebCore::Font::drawComplexText):
3067 * platform/graphics/chromium/UniscribeHelper.cpp:
3068 (WebCore::containsMissingGlyphs):
3069 (WebCore::UniscribeHelper::draw):
3070 (WebCore::UniscribeHelper::shape):
3071 * platform/graphics/chromium/UniscribeHelper.h:
3072 * platform/graphics/skia/SkiaFontWin.cpp:
3073 (WebCore::windowsCanHandleTextDrawing):
3074 (WebCore::skiaDrawText):
3075 (WebCore::paintSkiaText):
3076 * platform/graphics/skia/SkiaFontWin.h:
3078 2009-02-10 Darin Fisher <darin@chromium.org>
3080 Revert r40797 as requested by Sam Weinig.
3082 https://bugs.webkit.org/show_bug.cgi?id=23809
3084 * bindings/scripts/CodeGeneratorJS.pm:
3086 * html/HTMLCanvasElement.idl:
3088 2009-02-09 Darin Fisher <darin@chromium.org>
3090 Reviewed by Eric Seidel.
3092 https://bugs.webkit.org/show_bug.cgi?id=23855
3093 Fix TransformationMatrixSkia.cpp and GraphicsContextSkia.cpp bustage
3095 * platform/graphics/skia/GraphicsContextSkia.cpp:
3096 (WebCore::GraphicsContext::getCTM):
3097 * platform/graphics/skia/TransformationMatrixSkia.cpp:
3098 (WebCore::TransformationMatrix::operator SkMatrix):
3100 2009-02-09 Dan Bernstein <mitz@apple.com>
3102 Reviewed by Dave Hyatt.
3104 - fix <rdar://problem/6568942> REGRESSION: Font rendering in Wikipedia input field is incorrect (default GDI text mode)
3106 * platform/graphics/win/SimpleFontDataWin.cpp:
3107 (WebCore::SimpleFontData::widthForGDIGlyph): Make sure that the DC is
3108 in the advanced graphics mode before calling GetCharWidthI(), because
3109 otherwise that function returns incorrect results for the default UI
3110 font at a certain size.
3112 2009-02-09 Chris Marrin <cmarrin@apple.com>
3114 Reviewed by Simon Fraser
3116 https://bugs.webkit.org/show_bug.cgi?id=23689
3118 Added 3D functions to WebKitCSSMatrix. This depends on the 3D functions
3119 added to TransformationMatrix in https://bugs.webkit.org/show_bug.cgi?id=6868
3121 Test: transforms/3d/cssmatrix-3d-interface.xhtml
3123 * css/WebKitCSSMatrix.cpp:
3124 * css/WebKitCSSMatrix.h:
3125 * css/WebKitCSSMatrix.idl:
3127 2009-02-09 Mark Rowe <mrowe@apple.com>
3129 Reviewed by Darin Adler.
3131 Fix <https://bugs.webkit.org/show_bug.cgi?id=23858>
3132 Bug 23858: Crash when removing a HTMLSelectElement from the document from inside its focus event handler
3134 * html/HTMLSelectElement.cpp:
3135 (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Don't store the renderer in a local variable
3136 as it can be invalidated by any of the calls to focus() within the function. Instead, retrieve it and
3137 null-check it when it is needed.
3139 2009-02-09 David Hyatt <hyatt@apple.com>
3141 Remove the m_height member from InlineBox. This shaves 4 bytes off of all inline boxes. Unfortunately SVG
3142 sets heights that are independent of the renderer or of the font, and so all SVG boxes have to retain m_height
3145 height() on InlineBox is now a virtual function that does a dynamic computation (including shrinking boxes
3146 with no text children). For SVG boxes there is also a non-virtual setHeight function for updating the
3147 m_height member variable like before.
3149 Reviewed by Darin Adler
3151 * rendering/EllipsisBox.cpp:
3152 (WebCore::EllipsisBox::nodeAtPoint):
3153 * rendering/EllipsisBox.h:
3154 (WebCore::EllipsisBox::EllipsisBox):
3155 * rendering/InlineBox.cpp:
3156 (WebCore::InlineBox::height):
3157 (WebCore::InlineBox::root):
3158 * rendering/InlineBox.h:
3159 (WebCore::InlineBox::InlineBox):
3160 (WebCore::InlineBox::isInlineFlowBox):
3161 (WebCore::InlineBox::isRootInlineBox):
3162 (WebCore::InlineBox::topOverflow):
3163 (WebCore::InlineBox::bottomOverflow):
3164 (WebCore::InlineBox::leftOverflow):
3165 (WebCore::InlineBox::rightOverflow):
3166 * rendering/InlineFlowBox.cpp:
3167 (WebCore::InlineFlowBox::height):
3168 (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
3169 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3170 (WebCore::InlineFlowBox::placeBoxesVertically):
3171 (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
3172 (WebCore::InlineFlowBox::nodeAtPoint):
3173 * rendering/InlineFlowBox.h:
3174 (WebCore::InlineFlowBox::isInlineFlowBox):
3175 * rendering/InlineTextBox.cpp:
3176 (WebCore::InlineTextBox::height):
3177 (WebCore::InlineTextBox::nodeAtPoint):
3178 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
3179 (WebCore::InlineTextBox::paintCompositionUnderline):
3180 * rendering/InlineTextBox.h:
3181 * rendering/RootInlineBox.cpp:
3182 (WebCore::RootInlineBox::height):
3183 (WebCore::RootInlineBox::placeEllipsis):
3184 (WebCore::RootInlineBox::setVerticalOverflowPositions):
3185 * rendering/RootInlineBox.h:
3186 (WebCore::RootInlineBox::isRootInlineBox):
3187 (WebCore::RootInlineBox::topOverflow):
3188 (WebCore::RootInlineBox::bottomOverflow):
3189 (WebCore::RootInlineBox::leftOverflow):
3190 (WebCore::RootInlineBox::rightOverflow):
3191 (WebCore::RootInlineBox::selectionBottom):
3192 (WebCore::RootInlineBox::Overflow::Overflow):
3193 (WebCore::RootInlineBox::setVerticalSelectionPositions):
3194 * rendering/SVGInlineFlowBox.h:
3195 (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
3196 (WebCore::SVGInlineFlowBox::height):
3197 (WebCore::SVGInlineFlowBox::setHeight):
3198 * rendering/SVGInlineTextBox.cpp:
3199 (WebCore::SVGInlineTextBox::SVGInlineTextBox):
3200 * rendering/SVGInlineTextBox.h:
3201 (WebCore::SVGInlineTextBox::height):
3202 (WebCore::SVGInlineTextBox::setHeight):
3203 * rendering/SVGRootInlineBox.cpp:
3204 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
3205 * rendering/SVGRootInlineBox.h:
3206 (WebCore::SVGRootInlineBox::SVGRootInlineBox):
3207 (WebCore::SVGRootInlineBox::height):
3208 (WebCore::SVGRootInlineBox::setHeight):
3210 2009-02-09 Eric Seidel <eric@webkit.org>
3212 Reviewed by Sam Weinig.
3214 Document our Selection DOM extensions
3215 (in preparation for re-writing Selection to work with ranges)
3217 * page/DOMSelection.cpp:
3218 (WebCore::DOMSelection::type):
3219 * page/DOMSelection.h:
3220 * page/DOMSelection.idl:
3222 2009-02-09 Eric Seidel <eric@webkit.org>
3224 Attempt to fix wx build
3226 * WebCoreSources.bkl: change Selection to VisibleSelection
3228 2009-02-06 Darin Fisher <darin@chromium.org>
3230 Reviewed by Eric Seidel.
3232 https://bugs.webkit.org/show_bug.cgi?id=23809
3233 Return CanvasRenderingContext2D instead of DOMObject in IDL to avoid V8 #ifdefs
3235 * bindings/scripts/CodeGeneratorJS.pm:
3237 * html/HTMLCanvasElement.idl:
3239 2009-02-09 Dirk Schulze <krit@webkit.org>
3241 Reviewed by Eric Seidel.
3243 Transform the gradient instead of the context for most platforms and
3244 transform the context after CGContextReplacePathWithStrokedPath for CG.
3246 REGRESSION: SVG gradient transformation/BoundingBox can cause ugly stroke thickness
3247 https://bugs.webkit.org/show_bug.cgi?id=23547
3249 * platform/graphics/Gradient.h:
3250 (WebCore::Gradient::setGradientSpaceTransform):
3251 (WebCore::Gradient::gradientSpaceTransform):
3252 * platform/graphics/cairo/GradientCairo.cpp:
3253 (WebCore::Gradient::platformGradient):
3254 * platform/graphics/cg/GraphicsContextCG.cpp:
3255 (WebCore::GraphicsContext::fillPath):
3256 (WebCore::GraphicsContext::strokePath):
3257 (WebCore::GraphicsContext::fillRect):
3258 * platform/graphics/qt/GraphicsContextQt.cpp:
3259 (WebCore::GraphicsContext::fillPath):
3260 (WebCore::GraphicsContext::strokePath):
3261 (WebCore::GraphicsContext::fillRect):
3262 * platform/graphics/skia/GradientSkia.cpp:
3263 (WebCore::Gradient::platformGradient):
3264 * svg/graphics/SVGPaintServerGradient.cpp:
3265 (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
3266 (WebCore::clipToTextMask):
3267 (WebCore::SVGPaintServerGradient::setup):
3268 (WebCore::SVGPaintServerGradient::teardown):
3270 2009-02-09 Sam Weinig <sam@webkit.org>
3272 Reviewed by David Hyatt.
3274 Fix the highlight when inspecting inline elements.
3276 * inspector/InspectorController.cpp:
3277 (WebCore::drawHighlightForBox):
3278 (WebCore::drawHighlightForLineBoxes):
3279 (WebCore::InspectorController::drawNodeHighlight):
3281 2009-02-09 Eric Seidel <eric@webkit.org>
3283 Fix the gtk build by adding VisibleSelection and removing Selection.
3287 2009-02-09 Eric Seidel <eric@webkit.org>
3289 Reviewed by Dave Hyatt.
3291 Rename Selection to VisibleSelection to allow us to separate
3292 the selections the user works with from the ones used by
3293 the JS editing APIs.
3294 https://bugs.webkit.org/show_bug.cgi?id=23852
3296 No functional changes, thus no tests.
3301 * WebCore.vcproj/WebCore.vcproj:
3302 * WebCore.xcodeproj/project.pbxproj:
3304 (WebCore::Element::updateFocusAppearance):
3305 * editing/ApplyStyleCommand.cpp:
3306 (WebCore::ApplyStyleCommand::updateStartEnd):
3307 (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
3308 * editing/BreakBlockquoteCommand.cpp:
3309 (WebCore::BreakBlockquoteCommand::doApply):
3310 * editing/CompositeEditCommand.cpp:
3311 (WebCore::CompositeEditCommand::inputText):
3312 (WebCore::CompositeEditCommand::deleteSelection):
3313 (WebCore::CompositeEditCommand::rebalanceWhitespace):
3314 (WebCore::CompositeEditCommand::pushAnchorElementDown):
3315 (WebCore::CompositeEditCommand::pushPartiallySelectedAnchorElementsDown):
3316 (WebCore::CompositeEditCommand::moveParagraphs):
3317 (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
3318 (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
3319 * editing/CompositeEditCommand.h:
3320 * editing/CreateLinkCommand.cpp:
3321 (WebCore::CreateLinkCommand::doApply):
3322 * editing/DeleteButtonController.cpp:
3323 (WebCore::enclosingDeletableElement):
3324 (WebCore::DeleteButtonController::respondToChangedSelection):
3325 * editing/DeleteButtonController.h:
3326 * editing/DeleteSelectionCommand.cpp:
3327 (WebCore::DeleteSelectionCommand::DeleteSelectionCommand):
3328 (WebCore::DeleteSelectionCommand::clearTransientState):
3329 (WebCore::DeleteSelectionCommand::doApply):
3330 * editing/DeleteSelectionCommand.h:
3331 (WebCore::DeleteSelectionCommand::create):
3332 * editing/EditCommand.cpp:
3333 (WebCore::EditCommand::setStartingSelection):
3334 (WebCore::EditCommand::setEndingSelection):
3335 * editing/EditCommand.h:
3336 (WebCore::EditCommand::startingSelection):
3337 (WebCore::EditCommand::endingSelection):
3338 * editing/Editor.cpp:
3339 (WebCore::Editor::selectionForCommand):
3340 (WebCore::Editor::respondToChangedSelection):
3341 (WebCore::Editor::respondToChangedContents):
3342 (WebCore::Editor::applyStyle):
3343 (WebCore::Editor::applyParagraphStyle):
3344 (WebCore::Editor::appliedEditing):
3345 (WebCore::Editor::unappliedEditing):
3346 (WebCore::Editor::reappliedEditing):
3347 (WebCore::Editor::insertTextWithoutSendingTextEvent):
3348 (WebCore::Editor::selectComposition):
3349 (WebCore::Editor::confirmComposition):
3350 (WebCore::Editor::advanceToNextMisspelling):
3351 (WebCore::Editor::markMisspellingsAfterTypingToPosition):
3352 (WebCore::markMisspellingsOrBadGrammar):
3353 (WebCore::Editor::markMisspellings):
3354 (WebCore::Editor::markBadGrammar):
3355 (WebCore::Editor::rangeForPoint):
3356 (WebCore::Editor::transpose):
3358 * editing/EditorCommand.cpp:
3359 (WebCore::expandSelectionToGranularity):
3360 (WebCore::executeSwapWithMark):
3361 (WebCore::enabledVisibleSelection):
3362 (WebCore::enabledVisibleSelectionAndMark):
3363 (WebCore::enableCaretInEditableText):
3364 * editing/FormatBlockCommand.cpp:
3365 (WebCore::FormatBlockCommand::modifyRange):
3366 (WebCore::FormatBlockCommand::doApply):
3367 * editing/IndentOutdentCommand.cpp:
3368 (WebCore::IndentOutdentCommand::indentRegion):
3369 (WebCore::IndentOutdentCommand::outdentRegion):
3370 (WebCore::IndentOutdentCommand::doApply):
3371 * editing/InsertLineBreakCommand.cpp:
3372 (WebCore::InsertLineBreakCommand::doApply):
3373 * editing/InsertListCommand.cpp:
3374 (WebCore::InsertListCommand::modifyRange):
3375 (WebCore::InsertListCommand::doApply):
3376 * editing/InsertParagraphSeparatorCommand.cpp:
3377 (WebCore::InsertParagraphSeparatorCommand::doApply):
3378 * editing/InsertTextCommand.cpp:
3379 (WebCore::InsertTextCommand::performTrivialReplace):
3380 (WebCore::InsertTextCommand::input):
3381 * editing/ModifySelectionListLevel.cpp:
3382 (WebCore::getStartEndListChildren):
3383 (WebCore::canIncreaseListLevel):
3384 (WebCore::canDecreaseListLevel):
3385 * editing/MoveSelectionCommand.cpp:
3386 (WebCore::MoveSelectionCommand::doApply):
3387 * editing/RemoveFormatCommand.cpp:
3388 * editing/ReplaceSelectionCommand.cpp:
3389 (WebCore::ReplacementFragment::ReplacementFragment):
3390 (WebCore::ReplaceSelectionCommand::doApply):
3391 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
3392 * editing/Selection.cpp: Removed.
3393 * editing/Selection.h: Removed.
3394 * editing/SelectionController.cpp:
3395 (WebCore::SelectionController::moveTo):
3396 (WebCore::SelectionController::setSelection):
3397 (WebCore::SelectionController::nodeWillBeRemoved):
3398 (WebCore::SelectionController::clear):
3399 (WebCore::SelectionController::setBase):
3400 (WebCore::SelectionController::setExtent):
3401 (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
3402 (WebCore::SelectionController::selectAll):
3403 (WebCore::SelectionController::setSelectedRange):
3404 * editing/SelectionController.h:
3405 (WebCore::SelectionController::selection):
3406 (WebCore::SelectionController::selectionType):
3407 * editing/TypingCommand.cpp:
3408 (WebCore::TypingCommand::insertText):
3409 (WebCore::TypingCommand::deleteKeyPressed):
3410 (WebCore::TypingCommand::forwardDeleteKeyPressed):
3411 * editing/TypingCommand.h:
3412 * editing/VisiblePosition.cpp:
3413 (WebCore::VisiblePosition::honorEditableBoundaryAtOrBefore):
3414 (WebCore::VisiblePosition::honorEditableBoundaryAtOrAfter):
3415 * editing/VisibleSelection.cpp: Added.
3416 (WebCore::VisibleSelection::VisibleSelection):
3417 (WebCore::VisibleSelection::selectionFromContentsOfNode):
3418 (WebCore::VisibleSelection::setBase):
3419 (WebCore::VisibleSelection::setExtent):
3420 (WebCore::VisibleSelection::firstRange):
3421 (WebCore::VisibleSelection::toNormalizedRange):
3422 (WebCore::VisibleSelection::expandUsingGranularity):
3423 (WebCore::makeSearchRange):
3424 (WebCore::VisibleSelection::appendTrailingWhitespace):
3425 (WebCore::VisibleSelection::setBaseAndExtentToDeepEquivalents):
3426 (WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity):
3427 (WebCore::VisibleSelection::updateSelectionType):
3428 (WebCore::VisibleSelection::validate):
3429 (WebCore::VisibleSelection::setWithoutValidation):
3430 (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries):
3431 (WebCore::VisibleSelection::isContentEditable):
3432 (WebCore::VisibleSelection::isContentRichlyEditable):
3433 (WebCore::VisibleSelection::rootEditableElement):
3434 (WebCore::VisibleSelection::shadowTreeRootNode):
3435 (WebCore::VisibleSelection::debugPosition):
3436 (WebCore::VisibleSelection::formatForDebugger):
3437 (WebCore::VisibleSelection::showTreeForThis):
3439 * editing/VisibleSelection.h: Added.
3440 (WebCore::VisibleSelection::):
3441 (WebCore::VisibleSelection::selectionType):
3442 (WebCore::VisibleSelection::setAffinity):
3443 (WebCore::VisibleSelection::affinity):
3444 (WebCore::VisibleSelection::base):
3445 (WebCore::VisibleSelection::extent):
3446 (WebCore::VisibleSelection::start):
3447 (WebCore::VisibleSelection::end):
3448 (WebCore::VisibleSelection::visibleStart):
3449 (WebCore::VisibleSelection::visibleEnd):
3450 (WebCore::VisibleSelection::isNone):
3451 (WebCore::VisibleSelection::isCaret):
3452 (WebCore::VisibleSelection::isRange):
3453 (WebCore::VisibleSelection::isCaretOrRange):
3454 (WebCore::VisibleSelection::isBaseFirst):
3455 (WebCore::VisibleSelection::granularity):
3456 (WebCore::operator==):
3457 (WebCore::operator!=):
3458 * editing/htmlediting.cpp:
3459 (WebCore::selectionForParagraphIteration):
3460 (WebCore::avoidIntersectionWithNode):
3461 * editing/htmlediting.h:
3462 * editing/markup.cpp:
3463 (WebCore::createMarkup):
3464 * html/HTMLInputElement.cpp:
3465 (WebCore::HTMLInputElement::selection):
3466 * html/HTMLInputElement.h:
3467 * html/HTMLTextAreaElement.cpp:
3468 (WebCore::HTMLTextAreaElement::selection):
3469 * html/HTMLTextAreaElement.h:
3470 * page/AccessibilityObject.cpp:
3471 (WebCore::AccessibilityObject::selection):
3472 (WebCore::AccessibilityObject::visiblePositionRangeForUnorderedPositions):
3473 * page/AccessibilityObject.h:
3474 * page/AccessibilityRenderObject.cpp:
3475 (WebCore::AccessibilityRenderObject::selection):
3476 (WebCore::AccessibilityRenderObject::setSelectedTextRange):
3477 (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine):
3478 (WebCore::AccessibilityRenderObject::setSelectedVisiblePositionRange):
3479 (WebCore::AccessibilityRenderObject::doAXRangeForLine):
3480 * page/AccessibilityRenderObject.h:
3481 * page/DOMSelection.cpp:
3482 (WebCore::DOMSelection::anchorNode):
3483 (WebCore::DOMSelection::anchorOffset):
3484 (WebCore::DOMSelection::focusNode):
3485 (WebCore::DOMSelection::focusOffset):
3486 (WebCore::DOMSelection::collapseToEnd):
3487 (WebCore::DOMSelection::collapseToStart):
3488 (WebCore::DOMSelection::getRangeAt):
3489 (WebCore::DOMSelection::addRange):
3490 * page/DOMSelection.h:
3491 * page/DragController.cpp:
3492 (WebCore::DragController::tryDocumentDrag):
3493 (WebCore::setSelectionToDragCaret):
3494 (WebCore::DragController::concludeEditDrag):
3495 (WebCore::prepareClipboardForImageDrag):
3496 (WebCore::DragController::startDrag):
3497 (WebCore::DragController::placeDragCaret):
3498 * page/EditorClient.h:
3499 * page/EventHandler.cpp:
3500 (WebCore::EventHandler::selectClosestWordFromMouseEvent):
3501 (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
3502 (WebCore::EventHandler::handleMousePressEventTripleClick):
3503 (WebCore::EventHandler::handleMousePressEventSingleClick):
3504 (WebCore::EventHandler::updateSelectionForMouseDrag):
3505 (WebCore::EventHandler::handleMouseReleaseEvent):
3507 (WebCore::Frame::mark):
3508 (WebCore::Frame::setMark):
3509 (WebCore::Frame::selectionLayoutChanged):
3510 (WebCore::Frame::shouldChangeSelection):
3511 (WebCore::Frame::shouldDeleteSelection):
3512 (WebCore::Frame::revealSelection):
3513 (WebCore::Frame::setSelectionFromNone):
3514 (WebCore::Frame::findString):
3515 (WebCore::Frame::respondToChangedSelection):
3518 (WebCore::Page::selection):
3520 * page/mac/AccessibilityObjectWrapper.mm:
3521 (-[AccessibilityObjectWrapper textMarkerRangeForSelection]):
3522 * rendering/RenderBlock.cpp:
3523 (WebCore::RenderBlock::fillInlineSelectionGaps):
3524 * rendering/RenderTextControl.cpp:
3525 (WebCore::RenderTextControl::setSelectionRange):
3526 (WebCore::RenderTextControl::selection):
3527 * rendering/RenderTextControl.h:
3528 * rendering/RenderTreeAsText.cpp:
3529 (WebCore::writeSelection):
3530 * rendering/RootInlineBox.cpp:
3531 (WebCore::RootInlineBox::fillLineSelectionGap):
3532 * svg/SVGTextContentElement.cpp:
3533 (WebCore::SVGTextContentElement::selectSubString):
3535 2009-02-09 Dimitri Glazkov <dglazkov@chromium.org>
3537 Reviewed by Dave Hyatt.
3539 https://bugs.webkit.org/show_bug.cgi?id=23806
3540 Fix a regression crash where an empty src value and a "text/html" type
3541 on an EMBED element did not finish ResourceRequest initialization due to
3544 Test: fast/loader/empty-embed-src-attribute.html
3546 * loader/FrameLoader.cpp:
3547 (WebCore::FrameLoader::addExtraFieldsToRequest):
3549 2009-02-09 Rob Buis <rwlbuis@gmail.com>
3551 Reviewed by Eric Seidel.
3553 https://bugs.webkit.org/show_bug.cgi?id=23816
3554 Clean up RenderSVGRoot.cpp
3556 Clean up RenderSVGRoot.cpp.
3558 * rendering/RenderSVGRoot.cpp:
3559 (WebCore::RenderSVGRoot::paint):
3560 (WebCore::RenderSVGRoot::calcViewport):
3562 2009-02-09 Eric Carlson <eric.carlson@apple.com>
3564 Reviewed by Antti Koivisto
3566 https://bugs.webkit.org/show_bug.cgi?id=23737
3567 Make it possible to control media element playback without knowing so many
3568 internal implementation details.
3570 * html/HTMLMediaElement.cpp:
3571 (WebCore::HTMLMediaElement::togglePlayState): New, toggle between playing and paused state.
3572 (WebCore::HTMLMediaElement::beginScrubbing): New, pause as necessary for scrubbing mode.
3573 (WebCore::HTMLMediaElement::endScrubbing): New, resume playback if paused for scrubbing mode.
3574 * html/HTMLMediaElement.h:
3576 (WebCore::HTMLMediaElement::hasVideo): New, added so clients don't need to access MediaPlayer directly.