1 2007-11-11 Alexey Proskuryakov <ap@nypop.com>
5 http://bugs.webkit.org/show_bug.cgi?id=15896
8 No functionality changes.
10 * dom/Node.h: Moved several editing-related methods elsewhere.
11 * dom/Node.cpp: (WebCore::Node::maxCharacterOffset): Renamed from maxOffset()
12 to highlight that it is a match to offsetInCharacters(), and much different from other
13 offset-related methods. Added ASSERT_NOT_REACHED(), as callers are supposed to check
14 offsetInCharacters() before calling this.
16 * dom/CharacterData.cpp: (WebCore::CharacterData::maxCharacterOffset):
17 * dom/CharacterData.h: (WebCore::CharacterData::isCharacterDataNode):
18 Updated for above renamings.
20 * dom/Comment.{h,cpp}: Removed an override for offsetInCharacters(), which is already present in CharacterData.
22 * dom/Document.{h,cpp}: Folded updateSelection() into Frame::selectionLayoutChanged().
26 (WebCore::Position::uncheckedPreviousOffset): Moved from Node::previousOffset().
27 (WebCore::Position::uncheckedNextOffset): Moved from Node::NextOffset().
28 (WebCore::Position::previous): Adapted to the above move.
29 (WebCore::Position::next): Ditto.
30 (WebCore::Position::upstream): Removed an isBR() check, since a non-BR element cannot have a BR renderer (I think),
31 and BR elements are covered by editingIgnoresContent().
32 (WebCore::Position::downstream): Ditto.
33 (WebCore::caretMaxRenderedOffset): Moved from Node::caretMaxRenderedOffset().
34 (WebCore::Position::rendersInDifferentPosition): Updated for the above moves.
36 * dom/PositionIterator.h: Added a comment describing this class from the original check-in.
37 * dom/PositionIterator.cpp:
38 (WebCore::PositionIterator::increment): Updated for the above moves.
39 (WebCore::PositionIterator::decrement): Ditto.
41 * dom/ProcessingInstruction.h:
42 * dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::maxCharacterOffset):
43 ProcessingInstruction was already returning true from offsetInCharacters(), but didn't override maxCharacterOffset().
44 I think that implementing it has no actual effect, as PIs are not rendered, but it looks cleaner this way.
47 (WebCore::Range::selectNodeContents):
48 * editing/ApplyStyleCommand.cpp:
49 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
50 (WebCore::ApplyStyleCommand::applyInlineStyle):
51 (WebCore::maxRangeOffset):
52 (WebCore::ApplyStyleCommand::removeInlineStyle):
53 (WebCore::ApplyStyleCommand::splitTextAtStartIfNeeded):
54 (WebCore::ApplyStyleCommand::splitTextAtEndIfNeeded):
55 (WebCore::ApplyStyleCommand::splitTextElementAtStartIfNeeded):
56 (WebCore::ApplyStyleCommand::splitTextElementAtEndIfNeeded):
57 (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
58 * editing/CompositeEditCommand.cpp:
59 (WebCore::CompositeEditCommand::insertNodeAt):
60 (WebCore::CompositeEditCommand::positionOutsideTabSpan):
61 * editing/DeleteSelectionCommand.cpp:
62 (WebCore::DeleteSelectionCommand::handleGeneralDelete):
63 * editing/InsertLineBreakCommand.cpp:
64 (WebCore::InsertLineBreakCommand::doApply):
65 * editing/InsertParagraphSeparatorCommand.cpp:
66 (WebCore::InsertParagraphSeparatorCommand::doApply):
67 * editing/InsertTextCommand.cpp:
68 (WebCore::InsertTextCommand::insertTab):
69 * editing/visible_units.cpp:
70 (WebCore::previousLinePosition):
71 (WebCore::nextLinePosition):
72 Updated for the above moves.
75 (WebCore::Editor::advanceToNextMisspelling): Added a missing rangeCompliantEquivalent() call.
77 * editing/TextIterator.cpp:
78 (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): Changed the condition to obviously
79 match a maxCharacterOffset() call made after it; hopefully, this doesn't break any border cases.
80 (WebCore::SimplifiedBackwardsTextIterator::advance): Updated for the above moves.
82 * editing/htmlediting.h:
83 * editing/htmlediting.cpp:
84 (WebCore::canHaveChildrenForEditing): Removed a bogus comment: I don't thin BRs have a special ability to accept
85 child nodes, other than via DOM manipulation, which is not specific to BRs.
86 (WebCore::rangeCompliantEquivalent): Removed a check for BR, which is already covered by editingIgnoresContent().
87 (WebCore::maxDeepOffset): Ditto.
88 (WebCore::caretMinOffset): Moved from Node. Changed some runtime checks that seemingly cannot fail into assertions.
89 (WebCore::caretMaxOffset): Ditto.
91 * page/EventHandler.cpp:
92 (WebCore::EventHandler::handleMousePressEventSingleClick): Pass 0 to VisiblePosition constructor instead of
93 caretMinOffset. I didn't want to include htmlediting.h here, and I think that VisiblePosition constructor
94 will take care of adjusting the offset.
96 * page/Frame.cpp: (WebCore::Frame::selectionLayoutChanged): Folded Document::updateSelection() here.
97 * page/mac/WebCoreFrameBridge.mm:
98 (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]): Added missing rangeCompliantEquivalent() calls.
99 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForRenderer): Changed to not round-trip via editing.
100 Changed some runtime checks that seemingly cannot fail into assertions.
102 2007-11-11 Darin Adler <darin@apple.com>
106 - updated for JSRegExp function changes
108 * platform/RegularExpression.cpp:
109 (WebCore::RegularExpression::Private::compile):
110 (WebCore::RegularExpression::match):
112 2007-11-10 Mark Rowe <mrowe@apple.com>
116 * platform/UnicodeRange.h:
118 2007-11-10 Mark Rowe <mrowe@apple.com>
120 Qt Windows build fix.
122 * platform/UnicodeRange.h:
124 2007-11-10 Nikolas Zimmermann <zimmermann@kde.org>
128 Fixes: http://bugs.webkit.org/show_bug.cgi?id=15937 (Add glyph-orientation-horizontal/vertical support)
129 Fixes: http://bugs.webkit.org/show_bug.cgi?id=13971 (text-anchor support on vertical text seems slightly off)
131 Add glyph-orientation-* support for text & textPath. (90/180/270 and 'auto')
132 Also fix all vertical text handling - for text & textPath! (especially latin1 characters auto orientation in vertical writing modes)
134 * WebCore.pro: Add platform/UnicodeRange.cpp to build
135 * WebCore.xcodeproj/project.pbxproj: Dito.
136 * rendering/SVGCharacterLayoutInfo.cpp: Respect orientationShiftX/Y & angle in characterTransform()
137 (WebCore::SVGChar::characterTransform):
138 * rendering/SVGCharacterLayoutInfo.h: New variables.
139 (WebCore::SVGCharOnPath::SVGCharOnPath):
140 (WebCore::SVGChar::SVGChar):
141 * rendering/SVGRootInlineBox.cpp: Added glyph-orientation-* handling.
142 (WebCore::glyphOrientationToAngle):
143 (WebCore::glyphOrientationIsMultiplyOf180Degrees):
144 (WebCore::calculateGlyphAdvanceAndShiftRespectingOrientation):
145 (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
146 (WebCore::cummulatedWidthOrHeightOfTextChunk):
147 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
149 2007-11-10 Timothy Hatcher <timothy@apple.com>
151 Reviewed by Sam Weinig.
153 * page/inspector/StylesSidebarPane.js: Fix the wording of a comment
154 and switch over to use getUniqueProperties in another place.
156 2007-11-10 John Sullivan <sullivan@apple.com>
158 Reviewed by Sam Weinig
160 Rest of fix for 5394877
162 * bindings/js/kjs_window.cpp:
163 (KJS::Window::isSafeScript):
164 Don't log unsafe JavaScript attempts in the other version of isSafeScript() if in
165 private browsing mode either.
167 2007-11-10 Nikolas Zimmermann <zimmermann@kde.org>
171 Fix function name difference - header said 'unicodeRangeForCharacter', actually
172 implemented function is 'findCharUnicodeRange'. They are not compiled yet.
174 * platform/UnicodeRange.h:
176 2007-11-10 Dan Bernstein <mitz@apple.com>
178 Reviewed by Darin Adler.
180 - fix <rdar://problem/5450655> Control-clicking text in a link can surprisingly select only part of the link, should select entire link
182 No test because context menu events cannot be tested in DumpRenderTree.
184 * page/EventHandler.cpp:
185 (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent): Added.
186 If the click occurred in an active link, selects the entire link
187 element. Otherwise selects the closest word.
188 (WebCore::EventHandler::sendContextMenuEvent): Call
189 selectClosestWordOrLinkFromMouseEvent().
190 * page/EventHandler.h:
192 2007-11-10 John Sullivan <sullivan@apple.com>
194 Reviewed by Tim Hatcher
196 - fixed <rdar://problem/5394877> Safari should not log unsafe JavaScript attempts when
197 in private browsing mode (only an issue if Log JavaScript Exceptions is turned on)
199 * bindings/js/kjs_window.cpp:
200 (KJS::Window::isSafeScript):
201 Don't log unsafe JavaScript attempts to console or chromeClient if in private browsing mode
203 2007-11-10 Alexey Proskuryakov <ap@webkit.org>
207 http://bugs.webkit.org/show_bug.cgi?id=15922
208 Implement more of Mozilla Selection API
210 Tests: editing/selection/containsNode.html
211 editing/selection/deleteFromDocument.html
212 editing/selection/extend.html
213 editing/selection/selectAllChildren.html
215 * editing/SelectionController.cpp:
216 (WebCore::SelectionController::deleteFromDocument):
217 (WebCore::SelectionController::containsNode):
218 (WebCore::SelectionController::selectAllChildren):
219 (WebCore::SelectionController::extend):
220 * editing/SelectionController.h:
221 Added deleteFromDocument(), containsNode(), and selectAllChildren(). Reimplemented extend(),
222 which existed, but didn't match Firefox behavior and wasn't exposed via bindings.
223 Removed a comment mentioning removeRange(), as this method makes no sense without multiple
224 selection range support.
226 * page/DOMSelection.cpp:
227 (WebCore::DOMSelection::extend):
228 (WebCore::DOMSelection::deleteFromDocument):
229 (WebCore::DOMSelection::containsNode):
230 (WebCore::DOMSelection::selectAllChildren):
231 * page/DOMSelection.h:
232 * page/DOMSelection.idl:
233 Exposed the new methods.
235 2007-11-10 Alexey Proskuryakov <ap@webkit.org>
239 http://bugs.webkit.org/show_bug.cgi?id=15892
240 DOM Range operations are not implemented for ProcessingInstruction nodes
242 Test: fast/dom/Range/range-processing-instructions.html
245 (WebCore::Range::processContents): Implemented ProcessingInstruction cases.
246 (WebCore::Range::checkNodeWOffset): Removed a FIXME - yes, I think that we are supposed
247 to use ProcessingInstruction.data.
249 2007-11-09 Timothy Hatcher <timothy@apple.com>
251 Reviewed by Mark Rowe.
253 Bug 12054: Ability to serialize an element subtree (into clipboard?) from the DOM inspector
254 http://bugs.webkit.org/show_bug.cgi?id=12054
256 - Add support code for routing copy events to the focused element.
257 - Implement copying the currently selected DOM node. The node
258 and it's subtree is copied to the clipboard. If the node has no
259 outerHTML, the nodeValue is copied (text nodes, etc.)
260 - Implement copy for the resource sidebar. The URL is copied for the
261 currently selected resource.
263 * page/inspector/DocumentPanel.js:
264 * page/inspector/inspector.js:
266 2007-11-09 Antti Koivisto <antti@apple.com>
270 Fix occasional blank video with poster attribute.
273 * html/HTMLMediaElement.cpp:
274 (WebCore::HTMLMediaElement::load):
275 (WebCore::HTMLMediaElement::didRestoreFromCache):
276 Just calling updateFromElement() does the right thing for both poster image and video.
278 2007-11-04 Sam Weinig <sam@webkit.org>
280 Reviewed by Adam Roben.
282 <rdar://problem/5435940>
283 The COM bindings for the DOM should be autogenerated like the other DOM bindings
285 Initial commit of the autogeneration of the COM DOM Bindings. No behavior change
286 is being introduced in this patch and to insure that no conflicts arise, a temporary
287 prefix of "GEN_" has been used for all the new classes.
289 The build architecture for these bindings differs slightly from the other autogenerated
290 bindings. Instead of building in WebCore and migrating the resuting code to WebKit (as
291 is done for the Objective-C bindigs currently), the IDLs and generation scripts are
292 migrated to WebKit and built there. This is done with a series of scripts and Makefiles.
294 This commit includes:
295 - Hand rolled root class/Interface GEN_DOMObject used to facilated object creation
297 - Generating all of the Core DOM and most of HTML and CSS
298 - Generating Event, EventTarget, and EventListener
300 * WebCore.vcproj/MigrateIDLAndScripts.make: Added.
301 * WebCore.vcproj/WebCore.vcproj:
302 * WebCore.vcproj/migrate-idls.sh: Added.
303 * bindings/scripts/CodeGenerator.pm:
304 * bindings/scripts/CodeGeneratorCOM.pm: Added.
305 * dom/EventListener.h: Make the isWindowEvent parameter default to false
306 to allow autogeneration based on the IDL.
308 2007-11-09 Tristan O'Tierney <tristan@apple.com>
310 Reviewed by Timothy Hatcher.
312 This patch is for the WebKit side of <rdar://problem/5591115>.
313 We need a way to tell context menu navigations, such as "Open in New Window"
314 to override any sort of browser preference for tab based navigation.
316 * bridge/WindowFeatures.h:
317 (WebCore::WindowFeatures::WindowFeatures):
318 Added a new struct member var, preferredType
319 and an accompanying enum type PreferredType
320 to send a window type recommendation up to the Chrome.
322 * page/ContextMenuController.cpp:
323 (WebCore::openNewWindow):
324 Set the window features to recommend a new Window for
325 "Open in New Window" context menu action.
327 2007-11-08 Adam Roben <aroben@apple.com>
329 Fix <rdar://5483519> Pressing Enter on selected buttons should fire onclick
331 We now match the behavior of Firefox and IE, which is to always just
332 send a click event to the focused button when the Enter key is pressed
333 (previously we were submitting forms directly in some cases).
337 Test: fast/forms/enter-clicks-buttons.html
339 * html/HTMLButtonElement.cpp:
340 (WebCore::HTMLButtonElement::defaultEventHandler): Don't do anything
341 fancy when Enter is pressed on a <button type=button> -- just send a
342 click event like we do for other button types.
343 * html/HTMLInputElement.cpp:
344 (WebCore::HTMLInputElement::defaultEventHandler): Treat type=button
345 the same way we treat type=submit and type=reset: just send a click
346 event when Enter is pressed.
348 2007-11-09 Dan Bernstein <mitz@apple.com>
350 Reviewed by Antti Koivisto.
352 - fix a bug in invisible layer culling: dynamically changing a
353 descendant of an invisible layer to be visible did not work
355 Test: fast/layers/layer-content-visibility-change.html
357 * rendering/RenderLayer.cpp:
358 (WebCore::RenderLayer::setHasVisibleContent): If we got visible content,
359 make sure that our stacking context rebuilds its z-order lists to
362 2007-11-09 David Hyatt <hyatt@apple.com>
364 Clean up matrix() parsing. Make sure the first four arguments can be lengths or numbers. The last two
365 args can be lengths or numbers or percents.
369 * WebCore.xcodeproj/project.pbxproj:
371 (WebCore::TransformOperationInfo::TransformOperationInfo):
372 (WebCore::CSSParser::parseTransform):
373 * rendering/RenderStyle.h:
374 (WebCore::MatrixTransformOperation::apply):
376 2007-11-09 Beth Dakin <bdakin@apple.com>
380 Fix for <rdar://problem/5586370> CSS Transform - incorrect matrix
381 math leads to crazy problems
383 Transform matrices accept the first four parameters as CSS lengths.
384 CSS lengths get mapped into WebCore::Lengths as percents by
385 WebCore::convertToLength(). Percent lengths cannot call value(). It
386 does not yield a correct result and it asserts on Debug builds.
388 * rendering/RenderStyle.h:
389 (WebCore::MatrixTransformOperation::apply): Instead of calling
390 value() on the lengths, call calcValue. This fixes the assert and
393 2007-11-09 Simon Hausmann <hausmann@kde.org>
395 Reviewed by nobody, build/link fix for Qt/Windows.
397 userIdleTime() is stubbed in win/SystemTimeWin.cpp, so don't
400 * platform/qt/TemporaryLinkStubs.cpp:
402 2007-11-09 Simon Hausmann <hausmann@kde.org>
406 Fix ContextMenu allocation in the Qt port.
408 Store all items and submenus value based in ContextMenu and ContextMenuItem.
409 That fixes the crashes when the context menu was populated with sub-menus because
410 of the use of temporary ContextMenu objects like this:
412 ContextMenu subMenu(...);
413 subMenu.appendItem(...);
414 subMenu.appendItem(...);
416 subMenuItem.setSubMenu(&subMenu); // temporary pointer, need to _copy_ contents
418 * platform/ContextMenu.h:
419 * platform/ContextMenuItem.h:
420 * platform/PlatformMenuDescription.h:
421 * platform/qt/ContextMenuItemQt.cpp:
422 (WebCore::ContextMenuItem::ContextMenuItem):
423 (WebCore::ContextMenuItem::platformSubMenu):
424 * platform/qt/ContextMenuQt.cpp:
425 (WebCore::ContextMenu::ContextMenu):
426 (WebCore::ContextMenu::~ContextMenu):
427 (WebCore::ContextMenu::appendItem):
428 (WebCore::ContextMenu::itemCount):
430 2007-11-09 Peter Kasting <zerodpx@gmail.com>
432 Reviewed by Mark Rowe.
434 http://bugs.webkit.org/show_bug.cgi?id=15909
435 Malformed GIFs should not result in memory corruption.
437 * platform/image-decoders/gif/GIFImageDecoder.cpp:
438 (WebCore::GIFImageDecoder::haveDecodedRow):
440 2007-11-08 Timothy Hatcher <timothy@apple.com>
442 Reviewed by Sam Weinig.
444 Some Web Inspector CSS editing changes.
445 - Only delete the property if all the text is delete or the new user input correctly parses.
446 This prevents deleting the existing property if the new text is invalid.
447 - Intercept the Escape key and cancel editing, not saving any changes.
449 * page/inspector/StylesSidebarPane.js:
451 2007-11-08 Kevin Ollivier <kevino@theolliviers.com>
453 Bakefiles for building WebCore, needed by wx port.
455 Reviewed by Mark Rowe.
457 * WebCoreSources.bkl: Added.
458 * webcore-base.bkl: Added.
459 * webcore-wx.bkl: Added.
461 2007-11-08 Justin Haygood <jhaygood@reaktix.com>
463 Reviewed by Mark Rowe.
465 http://bugs.webkit.org/show_bug.cgi?id=15905
467 Fix builds with HTML 5 Storage support disabled.
468 ENABLE(DATABASE) needs to be added in a few places.
470 * page/InspectorController.cpp:
471 * storage/Database.h:
473 2007-11-08 Steve Falkenburg <sfalken@apple.com>
475 <rdar://problem/5524082> Allow images to be dragged out directly into other apps
477 We weren't including CF_HDROP in our image drops. This broke drag of
478 images out of the browser window directly into other apps (examples
479 include notepad, mspaint, msword).
481 Reviewed by Oliver, Ada.
483 * platform/win/ClipboardWin.cpp:
484 (WebCore::createGlobalImageFileContent): Removed unused variable.
485 (WebCore::createGlobalHDropContent): Added
486 (WebCore::writeFileToDataObject): Write HDROP data if available.
487 (WebCore::writeImageToDataObject): Write HDROP for dragged images.
488 (WebCore::ClipboardWin::writeURL): Don't write HDROP for dragged URLs.
490 2007-11-08 Xan Lopez <xan@gnome.org>
494 http://bugs.webkit.org/show_bug.cgi?id=15908
495 Use g_object_ref_sink when available
497 * platform/gtk/PopupMenuGtk.cpp:
498 (WebCore::PopupMenu::show):
499 * platform/gtk/ScrollViewGtk.cpp:
500 (WebCore::ScrollView::setGtkAdjustments):
502 2007-11-08 Dan Bernstein <mitz@apple.com>
504 Reviewed by Beth Dakin.
506 - fix <rdar://problem/5491922> REGRESSION (Safari 2-3): Flash-based "Cash Optimizer" on etrade.com does not draw completely
508 Test: fast/dom/length-attribute-mapping.html
510 * dom/StyledElement.cpp:
511 (WebCore::StyledElement::addCSSLength): Changed the garbage-stripping
512 logic to stop after the first "%" or "*" in the string. This allows for
513 "100%25" to be mapped to "100%" like it is in Firefox and WinIE.
515 2007-11-08 Kevin McCullough <kmccullough@apple.com>
519 * loader/FrameLoaderClient.h:
520 * platform/graphics/svg/SVGImageEmptyClients.h:
521 (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
523 2007-11-08 Kevin McCullough <kmccullough@apple.com>
527 - windowObjectCleared() is no longer const. It needs to setup the
528 script debugger and cannot be const to do so.
530 * loader/FrameLoaderClient.h:
531 * platform/graphics/svg/SVGImageEmptyClients.h:
532 (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
534 2007-11-08 Adam Roben <aroben@apple.com>
536 Hopeful Windows build fix
538 * rendering/RenderObject.cpp: Touch this file to make it recompile.
540 2007-11-08 Sam Weinig <sam@webkit.org>
544 Convert JavaScript internal function objects to use one class per
545 function. This avoids a switch statement inside what used to be
546 the shared function classes and will allow Shark to better analyze
549 To make this switch, the value property of the HashEntry was changed
550 to a union of an intptr_t (which is used to continue handle valueGetters)
551 and function pointer which points to a static constructor for the
552 individual new function objects.
554 SunSpider claims this is a 1.0% speedup.
556 - On the WebCore side, I updated CodeGeneratorJS.pm to generate the
557 new classes and hand updated the remain non-generated (groan) classes.
559 * bindings/js/JSDOMWindowCustom.cpp:
560 (WebCore::JSDOMWindow::customGetOwnPropertySlot):
561 * bindings/js/JSEventTargetNode.cpp:
562 (WebCore::JSEventTargetNodePrototypeFunctionAddEventListener::callAsFunction):
563 (WebCore::JSEventTargetNodePrototypeFunctionRemoveEventListener::callAsFunction):
564 (WebCore::JSEventTargetNodePrototypeFunctionDispatchEvent::callAsFunction):
565 * bindings/js/JSEventTargetNode.h:
566 * bindings/js/JSHTMLInputElementBase.cpp:
567 (WebCore::JSHTMLInputElementBaseFunctionSetSelectionRange::callAsFunction):
568 (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
569 * bindings/js/JSHTMLInputElementBase.h:
570 (WebCore::JSHTMLInputElementBase::):
571 * bindings/js/JSXMLHttpRequest.cpp:
572 (KJS::JSXMLHttpRequestPrototypeFunctionAbort::callAsFunction):
573 (KJS::JSXMLHttpRequestPrototypeFunctionGetAllResponseHeaders::callAsFunction):
574 (KJS::JSXMLHttpRequestPrototypeFunctionGetResponseHeader::callAsFunction):
575 (KJS::JSXMLHttpRequestPrototypeFunctionOpen::callAsFunction):
576 (KJS::JSXMLHttpRequestPrototypeFunctionSend::callAsFunction):
577 (KJS::JSXMLHttpRequestPrototypeFunctionSetRequestHeader::callAsFunction):
578 (KJS::JSXMLHttpRequestPrototypeFunctionOverrideMIMEType::callAsFunction):
579 (KJS::JSXMLHttpRequestPrototypeFunctionAddEventListener::callAsFunction):
580 (KJS::JSXMLHttpRequestPrototypeFunctionRemoveEventListener::callAsFunction):
581 (KJS::JSXMLHttpRequestPrototypeFunctionDispatchEvent::callAsFunction):
582 * bindings/js/JSXMLHttpRequest.h:
583 (KJS::JSXMLHttpRequest::impl):
584 * bindings/js/JSXSLTProcessor.cpp:
585 (KJS::JSXSLTProcessorPrototypeFunctionImportStylesheet::callAsFunction):
586 (KJS::JSXSLTProcessorPrototypeFunctionTransformToFragment::callAsFunction):
587 (KJS::JSXSLTProcessorPrototypeFunctionTransformToDocument::callAsFunction):
588 (KJS::JSXSLTProcessorPrototypeFunctionSetParameter::callAsFunction):
589 (KJS::JSXSLTProcessorPrototypeFunctionGetParameter::callAsFunction):
590 (KJS::JSXSLTProcessorPrototypeFunctionRemoveParameter::callAsFunction):
591 (KJS::JSXSLTProcessorPrototypeFunctionClearParameters::callAsFunction):
592 (KJS::JSXSLTProcessorPrototypeFunctionReset::callAsFunction):
593 * bindings/js/JSXSLTProcessor.h:
594 * bindings/js/kjs_events.cpp:
595 (WebCore::JSClipboardPrototypeFunctionClearData::callAsFunction):
596 (WebCore::JSClipboardPrototypeFunctionGetData::callAsFunction):
597 (WebCore::JSClipboardPrototypeFunctionSetData::callAsFunction):
598 (WebCore::JSClipboardPrototypeFunctionSetDragImage::callAsFunction):
599 * bindings/js/kjs_events.h:
600 * bindings/js/kjs_navigator.cpp:
602 (KJS::Navigator::getOwnPropertySlot):
603 (KJS::Plugins::getOwnPropertySlot):
604 (KJS::PluginsFunctionRefresh::callAsFunction):
605 (KJS::NavigatorProtoFuncJavaEnabled::callAsFunction):
606 * bindings/js/kjs_navigator.h:
608 * bindings/js/kjs_window.cpp:
609 (KJS::Window::getOwnPropertySlot):
611 (KJS::WindowProtoFuncAToB::callAsFunction):
612 (KJS::WindowProtoFuncBToA::callAsFunction):
613 (KJS::WindowProtoFuncOpen::callAsFunction):
614 (KJS::WindowProtoFuncScrollBy::callAsFunction):
615 (KJS::WindowProtoFuncScrollTo::callAsFunction):
616 (KJS::WindowProtoFuncMoveBy::callAsFunction):
617 (KJS::WindowProtoFuncMoveTo::callAsFunction):
618 (KJS::WindowProtoFuncResizeBy::callAsFunction):
619 (KJS::WindowProtoFuncResizeTo::callAsFunction):
620 (KJS::WindowProtoFuncSetTimeout::callAsFunction):
621 (KJS::WindowProtoFuncClearTimeout::callAsFunction):
622 (KJS::WindowProtoFuncSetInterval::callAsFunction):
623 (KJS::WindowProtoFuncAddEventListener::callAsFunction):
624 (KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
625 (KJS::WindowProtoFuncShowModalDialog::callAsFunction):
626 (KJS::WindowProtoFuncNotImplemented::callAsFunction):
627 (KJS::Location::getOwnPropertySlot):
628 (KJS::Location::put):
629 (KJS::LocationProtoFuncReplace::callAsFunction):
630 (KJS::LocationProtoFuncReload::callAsFunction):
631 (KJS::LocationProtoFuncAssign::callAsFunction):
632 (KJS::LocationProtoFuncToString::callAsFunction):
633 * bindings/js/kjs_window.h:
635 * bindings/scripts/CodeGeneratorJS.pm:
637 2007-11-08 Mark Rowe <mrowe@apple.com>
639 Fix the Gtk, Qt and Wx builds.
641 * platform/gtk/TemporaryLinkStubs.cpp:
642 * platform/qt/TemporaryLinkStubs.cpp:
643 * platform/wx/TemporaryLinkStubs.cpp:
645 2007-11-08 Mark Rowe <mrowe@apple.com>
647 Not reviewed. Fix two instances of includes using the wrong case in the filename.
649 * platform/graphics/mac/MoviePrivateQTKit.mm:
650 * platform/wx/MimeTypeRegistryWx.cpp:
652 2007-11-08 Darin Adler <darin@apple.com>
656 - fix <rdar://problem/5552943> accesskey does not focus <button> elements
658 Test: fast/forms/access-key.html
660 * html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::accessKeyAction):
661 Added a call to focus.
663 2007-11-07 Darin Adler <darin@apple.com>
667 - cut down on notImplemented() functions on Windows
669 * bridge/AXObjectCache.h: Put #if around the accessibility
672 * bridge/win/FrameWin.cpp: (WebCore::Frame::setNeedsReapplyStyles):
673 Moved here from TemporaryLinkStubs.
675 * dom/Document.cpp: (WebCore::Document::lastModified): Re-implemented
676 using the ResourceResponse that's now available from the DocumentLoader.
678 * editing/JSEditor.cpp: (execTranspose): Changed to call transpose() on
679 the Editor instead of the obsolete one on the Frame.
681 * loader/DocumentLoader.h: Removed getResponseModifiedHeader.
682 * loader/FrameLoader.h: Removed overrideMediaType.
684 * loader/gtk/DocumentLoaderGtk.cpp: Removed.
685 * loader/mac/DocumentLoaderMac.mm: Removed.
686 * loader/qt/DocumentLoaderQt.cpp: Removed.
688 * page/Frame.cpp: Removed transpose.
689 * page/Frame.h: Ditto.
690 * page/FrameView.h: Removed updateBorder.
691 * page/gtk/FrameGtk.cpp: Removed issueTransposeCommand.
692 * page/mac/FrameMac.mm: Ditto.
693 * page/mac/WebCoreFrameBridge.h: Removed issueTransposeCommand and
695 * page/qt/FrameQt.cpp: Removed issueTransposeCommand.
697 * platform/gtk/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled.
698 * platform/qt/TemporaryLinkStubs.cpp: Ditto.
699 * platform/win/TemporaryLinkStubs.cpp: Removed or moved all but 3 of the stubs.
700 * platform/wx/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled,
701 issueTransposeCommand, and overrideMediaType.
703 * platform/network/cf/ResourceHandleCFNet.cpp:
704 (WebCore::ResourceHandle::loadsBlocked): Moved here from TemporaryLinkStubs.
705 (WebCore::ResourceHandle::willLoadFromCache): Ditto.
706 * platform/win/GraphicsContextWin.cpp:
707 (WebCore::GraphicsContextPlatformPrivate::clip): Ditto.
708 * platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::inWindow): Ditto.
709 * platform/win/SystemTimeWin.cpp: (WebCore::userIdleTime): Ditto.
710 * platform/win/WidgetWin.cpp: (WebCore::Widget::setIsSelected): Ditto.
712 * WebCore.pro: Updated for removed files.
713 * WebCore.xcodeproj/project.pbxproj: Updated for removed file.
715 2007-11-08 Mark Rowe <mrowe@apple.com>
717 Build fix for case-sensitive file systems. Fix case of file names
720 * html/HTMLMediaElement.cpp:
721 * platform/graphics/Movie.cpp:
723 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
725 Reviewed by Lars Knoll <lars@trolltech.com>.
727 Remove some warnings about not implemented methods.
729 * ResourceHandle::loadsBlocked and ResourceHandle::supportsBufferedData are
730 specific to the NS API and won't be implemented on Qt.
731 * ResourceHandle::bufferedData can not be reached as we return false in
732 ResourceHandle::supportsBufferedData.
735 * platform/network/qt/ResourceHandleQt.cpp:
736 (WebCore::ResourceHandle::supportsBufferedData):
738 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
740 Reviewed by Lars Knoll <lars@trolltech.com>.
742 Cleanup checking for the request method.
744 * Check the request method only in QWebNetworkManager::add.
745 * Currently HEAD, GET, POST are allowed and for everything else
746 QWebNetworkManager::add returns false.
747 * Returning false is compatible with ResourceHandle::start and it
748 can be used in ResourceHandle::loadResourceSynchronously to generate
752 * platform/network/qt/ResourceHandleQt.cpp:
753 (WebCore::ResourceHandle::start):
754 (WebCore::ResourceHandle::loadResourceSynchronously):
756 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
758 Reviewed by Lars Knoll <lars@trolltech.com>.
760 Implement WebCore::callOnMainThread
762 Implemented using a global QObject, that is moved to the main thread
763 and then sending a custom event to it.
764 Picked a number below QEvent::User but above any other documented value.
767 * platform/qt/ThreadingQt.cpp:
768 (WebCore::PerformFunctionEvent::PerformFunctionEvent):
769 (WebCore::MainThreadInvoker::MainThreadInvoker):
770 (WebCore::MainThreadInvoker::event):
771 (WebCore::callOnMainThread):
773 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
775 Reviewed by Lars Knoll <lars@trolltech.com>.
777 Avoid problems with calling QPainter::begin() on an already active paintdevice
779 * Partial pick from 6200e04c3e0a77873c3b3f3969b65bc701020326 to avoid getting
780 crashes on Qt/Mac 4.4 with QPainter::begin to fail because we already draw.
781 * If we are in a layout or need one do not paint. This can happen for the PlatformScrollBar
782 used by the ScrollView on a layout triggered by QWebPage::paintEvent.
785 * platform/qt/WidgetQt.cpp:
786 (WebCore::Widget::invalidateRect):
788 2007-11-08 Eric Seidel <eric@webkit.org>
792 * ksvg2/svg/SVGPathElement.h: remove old comment
794 2007-11-07 Antti Koivisto <antti@apple.com>
798 Ensure video renderer has correct size if video has already been loaded
799 when it is constructed.
801 * rendering/RenderVideo.cpp:
802 (WebCore::RenderVideo::RenderVideo):
804 2007-11-07 Antti Koivisto <antti@apple.com>
808 Ensure video is visible when it should be.
810 * rendering/RenderVideo.cpp:
811 (WebCore::RenderVideo::updateMovie):
813 2007-11-07 Dan Bernstein <mitz@apple.com>
815 Reviewed by Darin Adler.
817 - fix <rdar://problem/5523503> Safari crashes clicking scroll bar in FaceBook 'Trips'
819 Layers and listboxes are two kinds of ScrollBarClient that can be
820 removed while the scrollbar is tracking the mouse. The scrollbar is not
821 destroyed until later, and meanwhile it can try to call the client,
822 which results in a crash.
824 * manual-tests/stale-scrollbar-client-crash.html: Added.
825 * platform/ScrollBar.h:
826 (WebCore::Scrollbar::setClient): Added.
827 * rendering/RenderLayer.cpp:
828 (WebCore::RenderLayer::destroyScrollbar): Call Scrollbar::setClient().
829 * rendering/RenderListBox.cpp:
830 (WebCore::RenderListBox::~RenderListBox): Ditto.
832 2007-11-07 Adam Roben <aroben@apple.com>
834 Fix <rdar://5569268> Crash when opening any FTP site in second tab/window
840 * platform/win/SharedBufferWin.cpp:
841 (WebCore::SharedBuffer::createWithContentsOfFile): Bail if we get an
842 empty path, because _wfopen_s will crash if we pass it a null pointer.
844 2007-11-07 David Kilzer <ddkilzer@apple.com>
846 WebKit confuses width/height for Media Queries device-aspect-ratio evaluation
847 <http://bugs.webkit.org/show_bug.cgi?id=14893>
848 <rdar://problem/5380295>
852 Tests: fast/css/device-aspect-ratio.html
853 fast/css/max-device-aspect-ratio.html
854 fast/css/min-device-aspect-ratio.html
856 * css/MediaQueryEvaluator.cpp:
857 (WebCore::parseAspectRatio): Renamed method parameters from a/b to h/v.
858 (WebCore::device_aspect_ratioMediaFeatureEval): Renamed local variables from
859 a/b to h/v. Switched first two arguments of the call to cmpvalue() to fix
862 2007-11-07 Dan Bernstein <mitz@apple.com>
864 Reviewed by Dave Hyatt.
866 - fix http://bugs.webkit.org/show_bug.cgi?id=15887
867 REGRESSION (r27576): Crash in RenderStyle::affectedByHoverRules clicking link on Digg
869 Test: fast/css/display-none-inline-style-change-crash.html
872 (WebCore::Element::recalcStyle): Fixed the crash by null-checking
873 the current style and removed other checks that are not strictly
876 2007-11-07 Brady Eidson <beidson@apple.com>
880 Remove FrameLoaderClient methods from SVG that were pruned awhile ago
882 * platform/graphics/svg/SVGImageEmptyClients.h:
884 2007-11-07 Dan Bernstein <mitz@apple.com>
886 Reviewed by Darin Adler.
888 - fix a bug where CSS rules with :hover in the ancestor chain stopped
889 working after changing the inline style declaration of the ancestor
891 Test: fast/css/affected-by-hover-after-style-change.html
894 (WebCore::Element::recalcStyle): If we are not forcing style
895 recalculation for all descendants, preserve any "affected by
896 {hover|active|drag} bits that we may have acquired from them.
897 Also renamed _style to currentStyle.
899 2007-11-06 Timothy Hatcher <timothy@apple.com>
903 Bug 11920: Web Inspector should have Firebug-like CSS editing
904 http://bugs.webkit.org/show_bug.cgi?id=11920
906 * css/CSSComputedStyleDeclaration.h:
907 (WebCore::CSSComputedStyleDeclaration::isPropertyImplicit): Return false. I'm not sure why
908 this was true, but computed style has no concept of implicit. So false makes more sense
909 and makes the code simpler in the inspector. This function was added for the inspector,
910 so this isn't a compatibility change.
911 * page/inspector/PropertiesSection.js: Add a getter/setter to reset populated status.
912 * page/inspector/StylesSidebarPane.js: Some refactoring along with the main support for
914 * page/inspector/inspector.css: Style changes for propery editing and focus correctness.
915 * page/inspector/inspector.js: Look for a handleKeyEvent function of the focus element before
916 trying to call a function based on the element's id. Call focused and blurred on the focused
917 element when currentFocusElement is changed. Use the new listItemElement getter instead of
918 the private property.
919 * page/inspector/treeoutline.js: No longer expand on double click if ondblclick is implemented.
920 Shrink the toggle zone to 10px to better match the size of the arrow. Add an onattach call
921 to allow generation of the title using the DOM element. Add listItemElement and
922 childrenListElement getters.
923 * page/inspector/utilities.js: Add new helper prototype methods on CSSStyleDeclaration.
924 * page/inspector/DocumentPanel.js: Use the new listItemElement getter instead of the private
925 property. Also expand the DOM node on double click now that the TreeOutline dosen't do it.
926 * page/inspector/Resource.js: Use the new listItemElement and childrenListElement getters
927 instead of the private properties.
929 2007-11-07 Simon Hausmann <hausmann@kde.org>
931 Reviewed by Alexey Proskuryakov.
933 Coding style fix, don't use inline explicitly.
935 * bridge/WindowFeatures.h:
937 2007-11-07 Simon Hausmann <hausmann@kde.org>
941 For safety provide a default constructor for WindowFeatures().
942 ContextMenuController.cpp: createNewWindow as well as QWebPage need to
943 create a default initialized WindowFeatures object on the fly.
945 * bridge/WindowFeatures.h:
946 (WebCore::WindowFeatures::WindowFeatures):
948 2007-11-07 Simon Hausmann <shausman@trolltech.com>
952 Fix "nmake clean" for the Qt/Windows build by replacing tmp/ with a variable that ends with the correct type of slash/backslash depending on the choice of compiler/make tool.
956 2007-11-07 Simon Hausmann <hausmann@kde.org>
960 Made the QWebSettings::webGraphic functions static. The implementation was using QWebSettings::global() anyway.
962 * platform/graphics/qt/ImageQt.cpp:
963 (loadResourcePixmap):
965 2007-11-07 Simon Hausmann <hausmann@kde.org>
969 Moved the WebCore::Image specific function loadResourcePixmap from qwebsettings.cpp to ImageQt.cpp and made it static.
971 * platform/graphics/qt/ImageQt.cpp:
972 (loadResourcePixmap):
974 2007-11-07 Simon Hausmann <hausmann@kde.org>
978 Restructure the context menu classes for the Qt port. ContextMenu and ContextMenuItem don't store
979 QActions/QMenus anymore but just store the action type, tag, title and optionally submenu as created
980 in ContextMenu::populate().
981 For the actual Qt context menu we traverse this structure after sendContextMenuEvent and create a QMenu
982 out of it. That menu is currently not functional anymore though.
984 * platform/ContextMenu.h:
985 * platform/ContextMenuItem.h:
986 (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription):
987 * platform/PlatformMenuDescription.h:
988 * platform/qt/ContextMenuItemQt.cpp:
989 (WebCore::ContextMenuItem::ContextMenuItem):
990 (WebCore::ContextMenuItem::type):
991 (WebCore::ContextMenuItem::setType):
992 (WebCore::ContextMenuItem::action):
993 (WebCore::ContextMenuItem::setAction):
994 (WebCore::ContextMenuItem::title):
995 (WebCore::ContextMenuItem::setTitle):
996 (WebCore::ContextMenuItem::platformSubMenu):
997 (WebCore::ContextMenuItem::setSubMenu):
998 (WebCore::ContextMenuItem::setChecked):
999 (WebCore::ContextMenuItem::setEnabled):
1000 * platform/qt/ContextMenuQt.cpp:
1001 (WebCore::ContextMenu::ContextMenu):
1002 (WebCore::ContextMenu::~ContextMenu):
1003 (WebCore::ContextMenu::appendItem):
1004 (WebCore::ContextMenu::itemCount):
1005 (WebCore::ContextMenu::insertItem):
1006 (WebCore::ContextMenu::setPlatformDescription):
1007 (WebCore::ContextMenu::platformDescription):
1009 2007-11-07 Simon Hausmann <hausmann@kde.org>
1013 Changed ContextMenu::setPlatformDescription for the Qt port to not show the qmenu right away
1014 but instead just behave as a normal setter that takes ownership of the platform menu description (the qmenu).
1015 Instead now QWebPage::contextMenuEvent() retrieves the QMenu after calling sendContextMenuEvent and calls exec()
1018 * platform/qt/ContextMenuQt.cpp:
1020 2007-11-07 Simon Hausmann <hausmann@kde.org>
1024 Changed to PlatformMouseEvent constructor to allow construction from a QContextMenuEvent.
1025 Call sendContextMenuEvent on the event handler from a QWidget::contextMenuEvent re-implementation instead of in mousePressEvent.
1027 * platform/PlatformMouseEvent.h:
1028 * platform/qt/PlatformMouseEventQt.cpp:
1029 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1031 2007-11-07 Lars Knoll <lars@trolltech.com>
1035 don't put nbsp's into the plan text paste
1037 Fix both ClipboardQt and PasteboardQt to replace
1038 nbsp's with spaces before putting the text onto the
1039 native clipboard. This is consistent with Mac and Win
1040 and fixes at least editing/pasteboard/4076267-3.html
1042 * platform/qt/ClipboardQt.cpp:
1043 (WebCore::ClipboardQt::writeRange):
1044 * platform/qt/PasteboardQt.cpp:
1045 (WebCore::Pasteboard::writeSelection):
1047 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
1049 Reviewed by Lars Knoll <lars@trolltech.com>.
1051 Implement Pasteboard::writeImage()
1053 * Pasteboard is now fully implemented. Copying of Images into the Clipboard
1055 * As with URLs we only copy into the Clipboard (and not additionally to the
1059 WARNING: NO TEST CASES ADDED OR CHANGED
1061 * platform/qt/PasteboardQt.cpp:
1062 (WebCore::Pasteboard::writeImage):
1064 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
1066 Reviewed by Lars Knoll <lars@trolltech.com>.
1068 Apple CodingStyle fixes
1071 WARNING: NO TEST CASES ADDED OR CHANGED
1073 * platform/qt/PasteboardQt.cpp:
1074 (WebCore::Pasteboard::documentFragment):
1076 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
1078 Reviewed by Lars Knoll <lars@trolltech.com>.
1080 Implement Pasteboard::writeURL()
1081 * The URL currently gets written as text/plain and text/uri-list.
1082 The win and mac port have some more types which we currently do
1083 not support. When supporting them we can use the 'titleString'
1085 * As with writeSelection we only copy into the Clipboard. We could
1086 consider copying into the Selection as well.
1089 WARNING: NO TEST CASES ADDED OR CHANGED
1091 * platform/qt/PasteboardQt.cpp:
1092 (WebCore::Pasteboard::writeURL):
1094 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
1096 Reviewed by Lars Knoll <lars@trolltech.com>.
1101 WARNING: NO TEST CASES ADDED OR CHANGED
1103 * platform/qt/PasteboardQt.cpp:
1104 (WebCore::Pasteboard::documentFragment):
1106 2007-11-07 Lars Knoll <lars@trolltech.com>
1110 Use the correct function calls to convert a selection to
1113 WARNING: NO TEST CASES ADDED OR CHANGED
1115 * platform/qt/ClipboardQt.cpp:
1116 (WebCore::ClipboardQt::setData):
1117 (WebCore::ClipboardQt::writeRange):
1118 * platform/qt/PasteboardQt.cpp:
1119 (WebCore::Pasteboard::writeSelection):
1121 2007-11-07 Lars Knoll <lars@trolltech.com>
1125 Some more clipboard fixes.
1127 We have to set things immediately on the QClipBoard if the
1128 Clipboard object is not for dragging.
1130 This is due to the fact that the Clipboard object might be
1131 rather long lived if accessed through javascript (it'll only
1132 get deleted by JS garbage collection). We have to transfer
1133 the data over to the QClipboard before that to make things work.
1135 Fixes editing/execCommand/copy-without-selection.html
1137 * platform/qt/ClipboardQt.cpp:
1138 (WebCore::ClipboardQt::ClipboardQt):
1139 (WebCore::ClipboardQt::~ClipboardQt):
1140 (WebCore::ClipboardQt::clearData):
1141 (WebCore::ClipboardQt::clearAllData):
1142 (WebCore::ClipboardQt::getData):
1143 (WebCore::ClipboardQt::setData):
1144 (WebCore::ClipboardQt::declareAndWriteDragImage):
1145 (WebCore::ClipboardQt::writeURL):
1146 (WebCore::ClipboardQt::writeRange):
1148 2007-11-07 Simon Hausmann <hausmann@kde.org>
1152 Fix compilation on Windows with non-cygwin perl. open FILE, "|-" is
1153 not supported due to implicit forks, use IPC::Open2 instead.
1155 * bindings/scripts/IDLParser.pm:
1157 2007-11-07 Dan Bernstein <mitz@apple.com>
1159 Reviewed by Brady Eidson.
1161 - fix http://bugs.webkit.org/show_bug.cgi?id=15877
1162 REGRESSION: r27486 caused a layout regression at my bank's website
1164 Test: fast/block/float/overhanging-after-height-decrease-offsets.html
1166 * rendering/RenderBlock.cpp:
1167 (WebCore::RenderBlock::layoutBlock):
1169 2007-11-06 Beth Dakin <bdakin@apple.com>
1173 <rdar://problem/5575812> REGRESSION:When using absolute positioning
1174 with overflow:auto div, WebKit seems to add an additional 15px
1176 * rendering/RenderBox.cpp:
1177 (WebCore::RenderBox::containingBlockWidthForPositioned): We need to
1178 subtract off the vertical scrollbar width too.
1180 2007-11-06 Justin Garcia <justin.garcia@apple.com>
1182 Reviewed by Dan Bernstein.
1184 <rdar://problem/5583387> ASSERTION FAILED: !refChild->hasTagName(bodyTag) when pasting newline in plain text into rich text Mail
1185 <rdar://problem/5583362> REGRESSION (5523.10.3-TOT): Newlines stripped when pasting plain text in Mail
1187 * editing/markup.cpp:
1188 (WebCore::createFragmentFromText): Put paragraphs of text into clones of the block
1189 that encloses the input context, unless that block is the body, which shouldn't
1190 be cloned. In that case, use regular divs, as we did before r27369.
1192 2007-11-06 Christian Dywan <christian@twotoasts.de>
1196 Fix http://bugs.webkit.org/show_bug.cgi?id=15828
1197 Bug 15828: WebKit GTK include and lib directory is installed in qt4-named directory
1199 * WebCore.pro: Use sane default install paths for the gtk port.
1201 2007-11-06 Justin Garcia <justin.garcia@apple.com>
1203 Reviewed by Darin Adler.
1205 <rdar://problem/5576619>
1206 REGRESSION: Caret disappears after deleting the last character in inline hole (15714)
1208 * editing/TypingCommand.cpp:
1209 (WebCore::TypingCommand::deleteSelection): Like the other TypingCommands, including
1210 both of the other deletion commands, call typingAddedToOpenCommand(), which takes
1211 the command's endingSelection and sets it as selection.
1213 2007-11-06 Dan Bernstein <mitz@apple.com>
1215 Reviewed by Antti Koivisto and Dave Hyatt.
1217 - fix <rdar://problem/5582961> Incorrect layout and floating object list corruption when CSS decreases a block's height
1219 Test: fast/block/float/overhanging-after-height-decrease.html
1221 * rendering/RenderBlock.cpp:
1222 (WebCore::RenderBlock::layoutBlock): If after calculating the height
1223 it turns out that there are overhanging floats that were not overhanging
1224 before, rescan children with overhanging floats and add them.
1225 (WebCore::RenderBlock::layoutBlockChildren): Added a parameter that
1226 returns the lowest float bottom of any of the children.
1227 (WebCore::RenderBlock::addOverhangingFloats): Changed to return the
1228 lowest float bottom.
1229 * rendering/RenderBlock.h:
1231 2007-11-06 Adele Peterson <adele@apple.com>
1235 Switched all uses of HTMLImageLoader to use OwnPtrs.
1237 * html/HTMLInputElement.h:
1238 * html/HTMLInputElement.cpp:
1239 (WebCore::HTMLInputElement::init):
1240 (WebCore::HTMLInputElement::~HTMLInputElement):
1241 (WebCore::HTMLInputElement::setInputType):
1242 (WebCore::HTMLInputElement::parseMappedAttribute):
1243 (WebCore::HTMLInputElement::attach):
1244 * html/HTMLObjectElement.h:
1245 * html/HTMLObjectElement.cpp:
1246 (WebCore::HTMLObjectElement::HTMLObjectElement):
1247 (WebCore::HTMLObjectElement::~HTMLObjectElement):
1248 (WebCore::HTMLObjectElement::parseMappedAttribute):
1249 (WebCore::HTMLObjectElement::attach):
1250 * html/HTMLVideoElement.h:
1251 * html/HTMLVideoElement.cpp:
1252 (WebCore::HTMLVideoElement::HTMLVideoElement):
1253 (WebCore::HTMLVideoElement::attach):
1254 (WebCore::HTMLVideoElement::detach):
1255 (WebCore::HTMLVideoElement::parseMappedAttribute):
1257 2007-11-06 Antti Koivisto <antti@apple.com>
1261 Trigger media load on on src attribute changes as specified in new HTML5 draft.
1263 Tests: media/video-src-change.html
1264 media/video-src-remove.html
1265 media/video-src-set.html
1267 * html/HTMLMediaElement.cpp:
1268 (WebCore::HTMLMediaElement::attributeChanged):
1269 * html/HTMLMediaElement.h:
1271 2007-11-06 Dan Bernstein <mitz@apple.com>
1273 Reviewed by Darin Adler.
1275 - fix http://bugs.webkit.org/show_bug.cgi?id=15838
1276 Incomplete repaint toggling "How you know this person" on Facebook
1278 Test: fast/repaint/make-children-non-inline.html
1280 * rendering/RenderBlock.cpp:
1281 (WebCore::RenderBlock::makeChildrenNonInline): Repaint the block. This
1282 is needed because the inline children may be repositioned as they move
1283 into new anonymous blocks, but those blocks have no knowledge of where
1284 their children used to be, so they cannot invalidate those areas.
1286 2007-11-06 Alexey Proskuryakov <ap@webkit.org>
1290 http://bugs.webkit.org/show_bug.cgi?id=15847
1291 Some editing cleanup
1293 No change in functionality.
1295 * editing/TextIterator.cpp:
1296 (WebCore::plainText):
1297 * editing/TextIterator.h:
1298 Made WebCore::plainText() return String instead of DeprecatedString.
1300 * bridge/mac/WebCoreAXObject.mm:
1301 (-[WebCoreAXObject textUnderElement]):
1302 (-[WebCoreAXObject value]):
1303 (-[WebCoreAXObject doAXBoundsForTextMarkerRange:]):
1304 (-[WebCoreAXObject doAXNextSentenceEndTextMarkerForTextMarker:]):
1305 (-[WebCoreAXObject doAXPreviousSentenceStartTextMarkerForTextMarker:]):
1306 Updated for the above change. There is no need to explicitly convert to NSString now.
1308 * editing/EditCommand.cpp:
1309 (WebCore::EditCommand::EditCommand): m_startingSelection and m_endingSelection are actually
1310 initialized in constructor body, so the work done in initializer list was wasted.
1312 (WebCore::EditCommand::apply): Moved some stars.
1313 (WebCore::EditCommand::unapply): Ditto.
1314 (WebCore::EditCommand::reapply): Ditto.
1315 (WebCore::EditCommand::setStartingSelection): The loop exit condition was evaluated twice,
1316 removed one of the checks.
1318 * editing/SelectionController.cpp:
1319 (WebCore::SelectionController::toString): plainText() result type now matches what we need here.
1321 * page/mac/WebCoreFrameBridge.h:
1322 * page/mac/WebCoreFrameBridge.mm:
1323 Removed unused -[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:] and
1324 -[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:].
1326 2007-11-05 Mark Rowe <mrowe@apple.com>
1330 * bindings/js/JSHTMLDocumentCustom.cpp:
1331 (WebCore::writeHelper):
1333 2007-11-05 Adam Roben <aroben@apple.com>
1335 Don't crash if SafariTheme can't be loaded
1337 PlatformScrollBarSafari and RenderThemeSafari were not checking
1338 whether SafariTheme was successfully loaded. All other uses of
1339 SafariTheme already check this.
1343 * platform/win/PlatformScrollBarSafari.cpp: Don't paint if SafariTheme
1345 (WebCore::PlatformScrollbar::paintButton):
1346 (WebCore::PlatformScrollbar::paintTrack):
1347 (WebCore::PlatformScrollbar::paintThumb):
1348 * rendering/RenderThemeSafari.cpp:
1349 (WebCore::RenderThemeSafari::isControlStyled): Always return true if
1350 we couldn't load SafariTheme. This way we should never try to paint
1351 themed controls (and we assert as such in the paint functions).
1352 (WebCore::RenderThemeSafari::paintCheckbox):
1353 (WebCore::RenderThemeSafari::paintRadio):
1354 (WebCore::RenderThemeSafari::paintButton):
1355 (WebCore::RenderThemeSafari::paintTextField):
1356 (WebCore::RenderThemeSafari::paintCapsLockIndicator):
1357 (WebCore::RenderThemeSafari::paintTextArea):
1358 (WebCore::RenderThemeSafari::paintMenuList):
1359 (WebCore::RenderThemeSafari::paintSliderThumb):
1360 (WebCore::RenderThemeSafari::paintSearchField):
1361 (WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
1362 (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration):
1363 (WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
1365 2007-11-05 Kevin Ollivier <kevino@theolliviers.com>
1367 Adding the rest of wx port's graphics impl.
1369 Rubber-stamped by Maciej Stachowiak.
1371 * platform/graphics/wx/AffineTransformWx.cpp: Added.
1372 * platform/graphics/wx/GraphicsContextWx.cpp: Added.
1373 * platform/graphics/wx/ImageBufferWx.cpp: Added.
1374 * platform/graphics/wx/ImageSourceWx.cpp: Added.
1375 * platform/graphics/wx/ImageWx.cpp: Added.
1376 * platform/graphics/wx/PathWx.cpp: Added.
1378 2007-11-05 Kevin Ollivier <kevino@theolliviers.com>
1380 wx port bug fixes and new files to get platform/wx building on trunk.
1382 Rubber-stamped by Maciej Stachowiak.
1384 * platform/wx/CursorWx.cpp:
1385 * platform/wx/FileSystemWx.cpp: Added.
1386 * platform/wx/FontCacheWx.cpp:
1387 * platform/wx/FontPlatformDataWx.cpp:
1388 * platform/wx/FontWx.cpp:
1389 * platform/wx/KeyboardEventWx.cpp:
1390 * platform/wx/LocalizedStringsWx.cpp: Added.
1391 * platform/wx/LoggingWx.cpp: Added.
1392 * platform/wx/RenderThemeWx.cpp:
1393 * platform/wx/ScrollViewWx.cpp:
1394 * platform/wx/SharedTimerWx.cpp:
1395 * platform/wx/StringWx.cpp:
1396 * platform/wx/ThreadingWx.cpp: Added.
1397 * platform/wx/WidgetWx.cpp:
1399 2007-11-05 Adele Peterson <adele@apple.com>
1403 Fix for <rdar://problem/5579999> Add poster attribute for video element
1405 * html/HTMLAttributeNames.in: Added poster attribute.
1407 * html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::updateFromElement):
1408 Calls imageSourceAttributeName instead of having special cases for the different kinds of elements.
1409 * dom/Element.cpp: (WebCore::Element::imageSourceAttributeName): Added.
1411 * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::imageSourceAttributeName): Added.
1412 * html/HTMLObjectElement.h:
1414 * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::movieNetworkStateChanged):
1415 Calls updatePosterImage when the network state is empty and when the first frame has been loaded.
1416 * html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::rendererIsNeeded): Made this inline. HTMLVideoElement now also implements this.
1418 * html/HTMLVideoElement.idl: Added case for poster attribute.
1419 * html/HTMLVideoElement.h: Added image loader and flag to keep track of whether or not the poster image should be shown.
1420 * html/HTMLVideoElement.cpp:
1421 (WebCore::HTMLVideoElement::HTMLVideoElement): Initialize m_imageLoader and m_shouldShowPosterImage.
1422 (WebCore::HTMLVideoElement::rendererIsNeeded): Calls HTMLElement::rendererIsNeeded since HTMLMediaElements have renderer by default.
1423 (WebCore::HTMLVideoElement::createRenderer): Create a RenderImage or RenderVideo depending on whether or not the poster image should be shown.
1424 (WebCore::HTMLVideoElement::attach): Set up image loader and RenderImage if necessary.
1425 (WebCore::HTMLVideoElement::detach): Delete image loader if its no longer needed.
1426 (WebCore::HTMLVideoElement::parseMappedAttribute): Added case to process poster attribute.
1427 (WebCore::HTMLVideoElement::poster): Added getter for poster attribute.
1428 (WebCore::HTMLVideoElement::setPoster): Added setter for poster attribute.
1429 (WebCore::HTMLVideoElement::isURLAttribute): Added.
1430 (WebCore::HTMLVideoElement::imageSourceAttributeName): Added.
1431 (WebCore::HTMLVideoElement::updatePosterImage): Added. Updates m_shouldShowPosterImage and if its changed, detaches and attaches so the renderer is correct.
1433 2007-11-05 Adam Roben <aroben@apple.com>
1435 Fix <rdar://5563572> SVG image support is turned off
1437 Turned on SVG images for all platforms.
1441 * WebCore.vcproj/WebCore.vcproj: Added SVGImage.{cpp,h}
1442 * loader/CachedImage.cpp:
1443 (WebCore::CachedImage::createImage): Removed platform checks for
1446 2007-11-05 Antti Koivisto <antti@apple.com>
1450 QTMovieView can generate callbacks during paint. This can lead to crashes.
1452 Delay callbacks so they get handled after painting is completed. No test case,
1453 I don't know how to reliably reproduce this.
1455 * platform/graphics/mac/MoviePrivateQTKit.mm:
1456 (WebCore::MoviePrivate::MoviePrivate):
1457 (WebCore::MoviePrivate::~MoviePrivate):
1458 (WebCore::MoviePrivate::paint):
1459 (-[WebCoreMovieObserver initWithCallback:WebCore::]):
1460 (-[WebCoreMovieObserver disconnect]):
1461 (-[WebCoreMovieObserver loadStateChanged:]):
1462 (-[WebCoreMovieObserver rateChanged:]):
1463 (-[WebCoreMovieObserver sizeChanged:]):
1464 (-[WebCoreMovieObserver timeChanged:]):
1465 (-[WebCoreMovieObserver volumeChanged:]):
1466 (-[WebCoreMovieObserver didEnd:]):
1467 (-[WebCoreMovieObserver setDelayCallbacks:]):
1469 2007-11-05 Antti Koivisto <antti@apple.com>
1473 Add some missing WebCore* prefixes to ObjC classes
1475 * platform/mac/FileChooserMac.mm:
1476 (WebCore::FileChooser::FileChooser):
1477 * platform/mac/SharedBufferMac.mm:
1478 (WebCore::SharedBuffer::createNSData):
1479 (WebCore::SharedBuffer::createCFData):
1480 * platform/mac/SharedTimerMac.cpp:
1481 (WebCore::setSharedTimerFireTime):
1483 2007-11-05 Ada Chan <adachan@apple.com>
1485 <rdar://problem/5579772> Regression: AltGr does not work
1486 We now store the system key event info in PlatforkKeyboardEvent().
1490 * platform/PlatformKeyboardEvent.h:
1491 (WebCore::PlatformKeyboardEvent::isSystemKey):
1492 * platform/win/KeyEventWin.cpp:
1493 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1495 2007-11-02 Tristan O'Tierney <tristan@apple.com>
1497 Reviewed by Darin Adler.
1499 * WebCore.xcodeproj/project.pbxproj:
1500 Set WindowFeatures.h as a Private header.
1502 * loader/FrameLoader.cpp:
1503 (WebCore::FrameLoader::createWindow):
1504 Revised to use a single createWindow function instead of
1505 two createWindow functions and one createModalDialog function.
1506 The logic for this is now addressed in WebKit in an effort
1507 to make this easier to follow.
1510 (WebCore::Chrome::createWindow):
1512 * page/ChromeClient.h:
1513 * page/ContextMenuController.cpp:
1514 (WebCore::openNewWindow):
1515 * platform/graphics/svg/SVGImageEmptyClients.h:
1516 (WebCore::SVGEmptyChromeClient::createWindow):
1517 Revised to take new additional windowFeatures parameter.
1519 2007-11-04 Geoffrey Garen <ggaren@apple.com>
1521 Reviewed by Darin Adler.
1523 http://bugs.webkit.org/show_bug.cgi?id=15835
1525 Small adaptations to new KJS::List class.
1527 * bindings/js/kjs_window.cpp:
1528 (KJS::WindowFunc::callAsFunction):
1529 (KJS::ScheduledAction::ScheduledAction):
1531 2007-11-05 Adam Roben <aroben@apple.com>
1533 Allow passing a base class pointer to COMPtr::copyRefTo
1537 * platform/win/COMPtr.h:
1539 2007-11-05 Dan Bernstein <mitz@apple.com>
1541 Reviewed by Oliver Hunt.
1543 - fix ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key) when a class attribute is all-whitespace
1545 Test: fast/dom/class-all-whitespace.html
1547 * dom/StyledElement.cpp:
1548 (WebCore::StyledElement::parseMappedAttribute): Check if there is any
1549 non-whitespace character in the class attribute.
1551 2007-11-05 Brady Eidson <beidson@apple.com>
1555 Add transaction blocking to the DatabaseAuthorizer in preparation for the new version
1556 of the sql storage API
1558 * storage/DatabaseAuthorizer.cpp:
1559 (WebCore::DatabaseAuthorizer::allowTransaction):
1560 * storage/DatabaseAuthorizer.h:
1562 2007-11-05 Mark Rowe <mrowe@apple.com>
1564 Reviewed by Alp Toker.
1566 Have getMIMETypeForExtension return a null string when no MIME type is known
1567 for the extension rather than returning "text/plain". This prevents plugin data
1568 being dumped into object elements when plugins are disabled.
1570 * platform/gtk/MIMETypeRegistryGtk.cpp:
1571 (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
1573 2007-11-04 Sam Weinig <sam@webkit.org>
1575 Rubber-stamped by Adam Roben.
1577 Rename SecurityOrigin::allowsAccessFrom to SecurityOrigin::canAccess to
1580 * bindings/js/kjs_window.cpp:
1581 (KJS::Window::isSafeScript):
1582 * platform/SecurityOrigin.cpp:
1583 (WebCore::SecurityOrigin::canAccess):
1584 * platform/SecurityOrigin.h:
1586 2007-11-04 Timothy Hatcher <timothy@apple.com>
1590 Bug 15834: There are many subtle bugs in the Styles pane of the Web Inspector
1591 http://bugs.webkit.org/show_bug.cgi?id=15834
1593 - Broke up DocumentPanel and added three SidebarPane sub-classes.
1594 - Fixed many Style pane bugs, including:
1595 * Poor handling of duplicate properties in the same rule. Some of this can't be
1596 fixed since we can't only get the "winning" value for duplicate properties.
1597 So we should only show one entry per unique property name.
1598 * Computed style does not show font shorthand sub-properties if 'font' was used.
1599 * Property priority was broken, the wrong properties were crossed out.
1600 * The 'border' shorthand shows null for the shorthand value.
1601 * Shorthands didn't show their priority (e.g. !important).
1602 * HSL and HTML hex colors didn't have preview swatch blocks.
1603 * Code refactoring, making it easier to reuse for console.log later.
1605 * page/inspector/DocumentPanel.js: Move sidebar pane code to three seperate
1606 classes in new files.
1607 * page/inspector/MetricsSidebarPane.js: Added.
1608 * page/inspector/Panel.js: Remove an InspectorController.log() call.
1609 * page/inspector/PropertiesSection.js: Add the section to the TreeOutline.
1610 So TreeElements can access properties on their section.
1611 * page/inspector/PropertiesSidebarPane.js: Added.
1612 * page/inspector/SidebarPane.js: Remove the explicit asignment of the
1613 onexpand and oncollapse to null. These were hiding prototypes.
1614 * page/inspector/StylesSidebarPane.js: Added.
1615 * page/inspector/inspector.html: Include the new script files.
1616 * page/inspector/treeoutline.js: If a null representedObject is passed
1617 in just use a empty object.
1619 2007-11-04 David D. Kilzer <ddkilzer@webkit.org>
1621 Fix build when spaces appear in the WebKit source path.
1623 Reviewed by Mark Rowe.
1625 * bindings/scripts/IDLParser.pm: Use safer open() method which lists
1626 arguments individually and prevents the need to work around spaces
1629 2007-11-04 Alp Toker <alp@atoker.com>
1631 Reviewed by Alexey Proskuryakov.
1633 Fix a crash when no clipboard text is available
1635 * platform/gtk/PasteboardGtk.cpp:
1636 (WebCore::Pasteboard::plainText):
1638 2007-11-03 Darin Adler <darin@apple.com>
1642 - WebCore part of http://bugs.webkit.org/show_bug.cgi?id=15821
1643 remove unused PCRE features for speed
1645 * page/Frame.cpp: (WebCore::Frame::matchLabelsAgainstElement):
1646 * page/mac/FrameMac.mm: (WebCore::Frame::matchLabelsAgainstElement):
1647 Remove use of "[[:digit:]]" syntax. This hasn't worked for some time.
1650 * platform/RegularExpression.h: Remove the unused cap function. We can
1651 add it back later if we find we need it.
1652 * platform/RegularExpression.cpp:
1653 (WebCore::RegularExpression::Private::compile): Update for JavaScriptCore
1654 regular expression entry point changes.
1655 (WebCore::RegularExpression::Private::~Private): Ditto.
1656 (WebCore::RegularExpression::match): Remove the code to set PCRE_NOTBOL.
1657 This means that regular expressions with metacharactesr like ^ in them
1658 won't work any more with non-whole-string searches, but we don't use
1659 any regular expressions like that.
1661 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1663 Update the link stubs to match the current build,
1664 and fix coding style issues.
1666 Reviewed by Mark Rowe.
1668 * platform/wx/TemporaryLinkStubs.cpp:
1669 (loadResourceIntoArray):
1670 (findNextSentenceFromIndex):
1671 (findSentenceBoundary):
1672 (Frame::dashboardRegionsChanged):
1673 (WebCore::historyContains):
1674 (CachedPage::close):
1675 (Editor::showStylesPanel):
1676 (EventHandler::passSubframeEventToSubframe):
1677 (EventHandler::passWheelEventToWidget):
1678 (WebCore::currentTextBreakLocaleID):
1680 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1682 wx <-> WebKit conversions for IntPoint, IntRect and FloatRect
1684 Reviewed by Mark Rowe.
1686 * platform/graphics/wx/FloatRectWx.cpp: Added.
1687 * platform/graphics/wx/IntPointWx.cpp: Added.
1688 * platform/graphics/wx/IntRectWx.cpp: Added.
1690 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1692 wx <-> WebKit data type conversions for Pen and Color.
1694 Reviewed by Darin Adler.
1696 * platform/graphics/wx: Added.
1697 * platform/graphics/wx/ColorWx.cpp: Added.
1698 * platform/graphics/wx/PenWx.cpp: Added.
1700 2007-11-03 Sam Weinig <sam@webkit.org>
1704 Remove dummy variable from ClassInfo reducing the size of the struct by 1 word.
1705 The variable had been kept around for binary compatibility, but since nothing
1706 else is there is no point in continuing to keep it around.
1708 * bindings/js/JSDOMExceptionConstructor.cpp:
1710 * bindings/js/JSHTMLInputElementBase.cpp:
1712 * bindings/js/JSNamedNodesCollection.cpp:
1714 * bindings/js/JSXMLHttpRequest.cpp:
1716 * bindings/js/JSXSLTProcessor.cpp:
1718 * bindings/js/kjs_css.cpp:
1720 * bindings/js/kjs_events.cpp:
1722 * bindings/js/kjs_navigator.cpp:
1724 * bindings/js/kjs_window.cpp:
1726 * bindings/scripts/CodeGeneratorJS.pm:
1728 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1730 Build fixes to get wx impls. building on trunk.
1732 Reviewed by Mark Rowe.
1734 * platform/wx/DragDataWx.cpp:
1735 (WebCore::DragData::containsFiles):
1736 (WebCore::DragData::asFilenames):
1737 * platform/wx/DragImageWx.cpp:
1738 (WebCore::scaleDragImage):
1739 * platform/wx/MimeTypeRegistryWx.cpp:
1740 (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
1741 * platform/wx/MouseEventWx.cpp:
1742 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1743 * platform/wx/MouseWheelEventWx.cpp:
1744 * platform/wx/PasteboardWx.cpp:
1745 (WebCore::Pasteboard::writeImage):
1746 * platform/wx/WidgetWx.cpp:
1747 (WebCore::Widget::setCursor):
1749 2007-11-03 David D. Kilzer <ddkilzer@webkit.org>
1751 Sort files(...); sections of Xcode project files.
1753 Rubber-stamped by Darin.
1755 * WebCore.xcodeproj/project.pbxproj:
1756 * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
1758 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1760 Coding style fixes for platform/wx files.
1762 Reviewed by Mark Rowe.
1764 * platform/wx/ClipboardWx.cpp:
1765 * platform/wx/GlyphMapWx.cpp:
1766 * platform/wx/ScreenWx.cpp:
1768 2007-11-03 Alp Toker <alp@atoker.com>
1770 Reviewed by Mark Rowe.
1772 Implement platform scrollbar static width/height getters
1774 * platform/gtk/PlatformScrollBar.h:
1775 * platform/gtk/PlatformScrollBarGtk.cpp:
1777 (PlatformScrollbar::horizontalScrollbarHeight):
1779 2007-11-03 Alp Toker <alp@atoker.com>
1781 Reviewed by Mark Rowe.
1783 Cast function pointers to gpointer.
1785 * platform/gtk/PlatformScrollBarGtk.cpp:
1786 (PlatformScrollbar::~PlatformScrollbar):
1788 2007-11-03 Alp Toker <alp@atoker.com>
1790 Reviewed by Adam Roben.
1792 RenderThemeGtk implementation based on Mozilla's GTK+ style code
1794 There is still work needed to complete this feature.
1797 * platform/gtk/RenderThemeGtk.cpp:
1799 (WebCore::RenderThemeGtk::RenderThemeGtk):
1800 (WebCore::supportsFocus):
1801 (WebCore::RenderThemeGtk::supportsFocusRing):
1802 (WebCore::RenderThemeGtk::controlSupportsTints):
1803 (WebCore::RenderThemeGtk::baselinePosition):
1804 (WebCore::adjustMozStyle):
1805 (WebCore::setMozState):
1806 (WebCore::paintMozWidget):
1807 (WebCore::setButtonPadding):
1808 (WebCore::setToggleSize):
1809 (WebCore::RenderThemeGtk::setCheckboxSize):
1810 (WebCore::RenderThemeGtk::paintCheckbox):
1811 (WebCore::RenderThemeGtk::setRadioSize):
1812 (WebCore::RenderThemeGtk::paintRadio):
1813 (WebCore::RenderThemeGtk::adjustButtonStyle):
1814 (WebCore::RenderThemeGtk::paintButton):
1815 (WebCore::RenderThemeGtk::adjustMenuListStyle):
1816 (WebCore::RenderThemeGtk::paintMenuList):
1817 (WebCore::RenderThemeGtk::adjustTextFieldStyle):
1818 (WebCore::RenderThemeGtk::paintTextField):
1819 (WebCore::RenderThemeGtk::adjustSearchFieldResultsButtonStyle):
1820 (WebCore::RenderThemeGtk::paintSearchFieldResultsButton):
1821 (WebCore::RenderThemeGtk::adjustSearchFieldResultsDecorationStyle):
1822 (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
1823 (WebCore::RenderThemeGtk::adjustSearchFieldCancelButtonStyle):
1824 (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
1825 (WebCore::RenderThemeGtk::adjustSearchFieldStyle):
1826 (WebCore::RenderThemeGtk::paintSearchField):
1827 (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
1828 (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
1829 (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
1830 (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
1831 (WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor):
1832 (WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor):
1833 (WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor):
1834 (WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor):
1835 (WebCore::RenderThemeGtk::caretBlinkFrequency):
1836 (WebCore::RenderThemeGtk::systemFont):
1837 (WebCore::gtkStyleSetCallback):
1838 (WebCore::RenderThemeGtk::gtkContainer):
1839 (WebCore::RenderThemeGtk::gtkEntry):
1840 (WebCore::RenderThemeGtk::gtkTreeView):
1841 * platform/gtk/RenderThemeGtk.h:
1842 * platform/gtk/gtk2drawing.c: Added.
1843 (moz_gtk_enable_style_props):
1844 (ensure_window_widget):
1845 (setup_widget_prototype):
1846 (ensure_button_widget):
1847 (ensure_checkbox_widget):
1848 (ensure_radiobutton_widget):
1849 (ensure_scrollbar_widget):
1850 (ensure_spin_widget):
1851 (ensure_scale_widget):
1852 (ensure_entry_widget):
1853 (ensure_option_menu_widget):
1854 (ensure_arrow_widget):
1855 (ensure_handlebox_widget):
1856 (ensure_toolbar_widget):
1857 (ensure_tooltip_widget):
1858 (ensure_tab_widget):
1859 (ensure_progress_widget):
1860 (ensure_frame_widget):
1861 (ensure_menu_bar_widget):
1862 (ensure_menu_bar_item_widget):
1863 (ensure_menu_popup_widget):
1864 (ensure_menu_item_widget):
1865 (ensure_check_menu_item_widget):
1867 (TSOffsetStyleGCArray):
1869 (moz_gtk_button_paint):
1871 (moz_gtk_checkbox_get_metrics):
1872 (moz_gtk_radio_get_metrics):
1873 (moz_gtk_checkbox_get_focus):
1874 (moz_gtk_radio_get_focus):
1875 (moz_gtk_button_get_focus):
1876 (moz_gtk_option_menu_get_metrics):
1877 (moz_gtk_toggle_paint):
1878 (calculate_arrow_dimensions):
1879 (moz_gtk_scrollbar_button_paint):
1880 (moz_gtk_scrollbar_trough_paint):
1881 (moz_gtk_scrollbar_thumb_paint):
1882 (moz_gtk_spin_paint):
1883 (moz_gtk_scale_paint):
1884 (moz_gtk_scale_thumb_paint):
1885 (moz_gtk_gripper_paint):
1886 (moz_gtk_entry_paint):
1887 (moz_gtk_option_menu_paint):
1888 (moz_gtk_dropdown_arrow_paint):
1889 (moz_gtk_container_paint):
1890 (moz_gtk_toggle_label_paint):
1891 (moz_gtk_toolbar_paint):
1892 (moz_gtk_tooltip_paint):
1893 (moz_gtk_frame_paint):
1894 (moz_gtk_progressbar_paint):
1895 (moz_gtk_progress_chunk_paint):
1896 (moz_gtk_tab_paint):
1897 (moz_gtk_tabpanels_paint):
1898 (moz_gtk_menu_bar_paint):
1899 (moz_gtk_menu_popup_paint):
1900 (moz_gtk_menu_item_paint):
1901 (moz_gtk_check_menu_item_paint):
1902 (moz_gtk_window_paint):
1903 (moz_gtk_get_widget_border):
1904 (moz_gtk_get_dropdown_arrow_size):
1905 (moz_gtk_get_scalethumb_metrics):
1906 (moz_gtk_get_scrollbar_metrics):
1907 (moz_gtk_widget_paint):
1908 (moz_gtk_get_scrollbar_widget):
1910 * platform/gtk/gtkdrawing.h: Added.
1912 2007-11-03 Alp Toker <alp@atoker.com>
1914 Reviewed by Mark Rowe.
1916 Do not allow scrollbars to handle wheel events
1918 We bubble the wheel event up so the parent can handle it instead.
1920 * platform/gtk/PlatformScrollBarGtk.cpp:
1921 (gtkScrollEventCallback):
1922 (PlatformScrollbar::PlatformScrollbar):
1923 (PlatformScrollbar::~PlatformScrollbar):
1925 2007-11-03 Alp Toker <alp@atoker.com>
1927 Reviewed by Mark Rowe.
1929 Frame scrolling and invalidation fixes
1931 Make upward scroll events have a positive delta to match other ports.
1933 Fix the invalidation rect offset for frames so that scrolling works properly.
1935 Avoid allocating negative sizes to widgets to avoid GTK+ warnings.
1937 Allow tabbing to all widgets and links.
1939 Fix event returns, improving the focus situation and correcting scroll wheel
1942 * page/gtk/EventHandlerGtk.cpp:
1943 (WebCore::EventHandler::tabsToAllControls):
1944 (WebCore::EventHandler::passWheelEventToWidget):
1945 * platform/gtk/ScrollViewGtk.cpp:
1946 (WebCore::ScrollViewScrollbar::geometryChanged):
1947 (WebCore::ScrollView::updateContents):
1948 (WebCore::ScrollView::update):
1949 (WebCore::ScrollView::wheelEvent):
1950 (WebCore::ScrollView::updateScrollbars):
1951 * platform/gtk/WheelEventGtk.cpp:
1952 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1954 2007-11-03 David D. Kilzer <ddkilzer@webkit.org>
1956 LGPL'ed files contain incorrect FSF address
1957 <http://bugs.webkit.org/show_bug.cgi?id=14885>
1959 Reviewed by NOBODY (follow-up fix).
1961 * bindings/js/JSSVGTransformListCustom.cpp:
1962 * ksvg2/svg/SVGException.idl:
1963 * ksvg2/svg/SVGTextPathElement.cpp:
1964 * ksvg2/svg/SVGTextPathElement.h:
1965 * ksvg2/svg/SVGViewSpec.cpp:
1966 * ksvg2/svg/SVGViewSpec.h:
1967 * platform/mac/FontCustomPlatformData.cpp:
1968 * platform/mac/FontCustomPlatformData.h:
1969 * platform/mac/FontPlatformDataMac.mm:
1970 * platform/win/FontCustomPlatformData.cpp:
1971 * platform/win/FontCustomPlatformData.h:
1972 * rendering/RenderSVGRoot.cpp:
1973 * rendering/RenderSVGRoot.h:
1974 * rendering/RenderSVGTextPath.cpp:
1975 * rendering/RenderSVGTextPath.h:
1976 * rendering/RenderSVGTransformableContainer.h:
1977 * rendering/RenderSVGViewportContainer.cpp:
1978 * rendering/RenderSVGViewportContainer.h:
1979 * rendering/SVGCharacterLayoutInfo.cpp:
1980 * rendering/SVGCharacterLayoutInfo.h:
1981 * rendering/SVGRenderSupport.cpp:
1982 * rendering/SVGRenderSupport.h:
1984 2007-11-02 Antti Koivisto <antti@apple.com>
1988 Add video width/height DOM and content attributes from latest HTML5 draft.
1990 Test: media/video-width-height.html
1992 * html/HTMLVideoElement.cpp:
1993 (WebCore::HTMLVideoElement::parseMappedAttribute):
1994 (WebCore::HTMLVideoElement::width):
1995 (WebCore::HTMLVideoElement::setWidth):
1996 (WebCore::HTMLVideoElement::height):
1997 (WebCore::HTMLVideoElement::setHeight):
1998 * html/HTMLVideoElement.h:
1999 * html/HTMLVideoElement.idl:
2001 2007-11-02 Darin Adler <darin@apple.com>
2005 * DerivedSources.make: Remove a few explicit filenames from some rules by using
2006 make variables a little more.
2007 * WebCore.LP64.exp: Fix typo, grammar.
2009 2007-11-02 Darin Adler <darin@apple.com>
2013 - use the new HashMap::take function where appropriate
2015 * bindings/js/kjs_binding.cpp:
2016 (KJS::addWrapper): Made an inline rather than a macro; inlines good, macros bad.
2017 (KJS::removeWrapper): Ditto.
2018 (KJS::removeWrappers): Ditto.
2019 (KJS::ScriptInterpreter::putDOMObject): Use the inline instead of the macro.
2020 (KJS::ScriptInterpreter::forgetDOMObject): Ditto. This involves using take instead
2021 of remove -- in theory ever so slightly less efficient, but I think it's fine.
2022 (KJS::ScriptInterpreter::forgetDOMNodeForDocument): Ditto.
2023 (KJS::ScriptInterpreter::putDOMNodeForDocument): Use the inline instead of the macro.
2024 (KJS::ScriptInterpreter::forgetAllDOMNodesForDocument): Use take instead of find/remove.
2025 (KJS::ScriptInterpreter::updateDOMNodeDocument): Use the inlines instead of the macros.
2027 * bindings/js/kjs_window.cpp: (KJS::Window::clearTimeout): Use take instead of find/remove.
2028 * bridge/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::remove): Ditto.
2029 * page/AnimationController.cpp: (WebCore::AnimationControllerPrivate::clear): Ditto.
2030 * rendering/RenderBlock.cpp:
2031 (WebCore::RenderBlock::~RenderBlock): Ditto.
2032 (WebCore::RenderBlock::setDesiredColumnCountAndWidth): Ditto.
2033 * rendering/RootInlineBox.cpp: Ditto.(WebCore::RootInlineBox::detachEllipsisBox): Ditto.
2035 2007-11-02 Antti Koivisto <antti@apple.com>
2039 Enable video composition.
2042 * platform/graphics/mac/MoviePrivateQTKit.mm:
2043 (WebCore::MoviePrivate::createQTMovieView):
2044 * platform/mac/WebCoreSystemInterface.h:
2045 * platform/mac/WebCoreSystemInterface.mm:
2047 2007-11-02 Darin Adler <darin@apple.com>
2051 - fix http://bugs.webkit.org/show_bug.cgi?id=15806
2052 <rdar://problem/5561626> ASSERT(element->isRadioButton()) fires destroying form elements
2054 Test: fast/forms/remove-radio-button-assert.html
2056 * html/HTMLGenericFormElement.cpp: (WebCore::HTMLGenericFormElement::removeFromForm):
2057 Added protected function to be used by derived classes that need to do the same sort
2058 of removal from form that's automatically done by the base class in certain circumstances.
2059 * html/HTMLGenericFormElement.h: Added removeFromForm.
2061 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::~HTMLInputElement):
2062 Call removeFromForm here so the element is removed before we destroy the HTMLInputElement
2063 part of this object. By the time we get to the base class's destructor it's too late.
2064 The problem is specific to radio buttons so we don't have to worry about other classes
2065 derived from HTMLGenericFormElement.
2067 2007-11-02 Darin Adler <darin@apple.com>
2071 - speculative fix for http://bugs.webkit.org/show_bug.cgi?id=15805
2072 <rdar://problem/5510779> crashes in isLoadingMultipartContent
2074 * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::isLoadingMultipartContent):
2075 Instead of asserting the frame loader is non-0, return false if it is 0.
2077 2007-11-02 Darin Adler <darin@apple.com>
2081 - fix <rdar://problem/5530185> WebKit does not show <object> fallback content when both
2082 URL and MIME type is omitted
2084 Already covered by existing tests (that had incorrect results).
2086 * loader/FrameLoader.cpp: (WebCore::FrameLoader::requestObject): Return false to indicate
2087 failure when both URL and MIME type are empty. The old code would not attempt a load, but
2088 it would indicate success.
2090 * rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::updateWidget): Remove
2091 non-helpful early exit for the case where there is no URL and no type. Returning early
2092 prevents the fallback code from running.
2094 2007-11-02 Alp Toker <alp@atoker.com>
2098 Include Cairo headers properly
2100 * platform/graphics/AffineTransform.h:
2101 * platform/graphics/ImageBuffer.h:
2102 * platform/graphics/cairo/AffineTransformCairo.cpp:
2103 * platform/gtk/FontPlatformDataGtk.cpp:
2105 2007-11-01 Oliver Hunt <oliver@apple.com>
2109 Make sure we send the correct events for Capslock, Shift, Ctrl, Alt and the Windows key
2111 * platform/win/KeyEventWin.cpp:
2112 (WebCore::keyIdentifierForWindowsKeyCode):
2113 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2115 2007-11-01 Geoffrey Garen <ggaren@apple.com>
2117 Reviewed by Maciej Stachowiak.
2119 In preparation for making List a simple stack-allocated Vector:
2121 Removed all instances of List copying, assignment, and/or storage.
2123 Layout tests and JS tests pass.
2125 * bindings/js/kjs_window.cpp:
2126 (KJS::WindowFunc::callAsFunction): Stores a Vector of protected
2127 JSValue*'s instead of a List now. Converts to List on the fly when
2128 calling the timer function. This is slightly less efficient, but the
2129 common case is 0-2 arguments, so it's no biggie.
2131 (HTML iBench shows no regression. PLT does not use JS timers.)
2133 (KJS::ScheduledAction::execute): Uses the more efficient and non-copying
2135 (KJS::ScheduledAction::ScheduledAction): ditto
2137 * bindings/objc/WebScriptObject.mm:
2138 (getListFromNSArray): Takes a List out parameter now, to avoid copying.
2140 2007-11-01 Oliver Hunt <oliver@apple.com>
2144 Correct event behaviour on certain control keys
2146 Make sure we send the correct keyDown and keyUp events for the
2147 control keys CapsLock, Shift, Ctrl, Alt, and Meta/Command, and
2148 uses Windows key codes for the event keyCode.
2151 * page/EventHandler.cpp:
2152 (WebCore::EventHandler::keyEvent):
2153 * platform/PlatformKeyboardEvent.h:
2154 * platform/gtk/KeyEventGtk.cpp:
2155 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2156 * platform/mac/KeyEventMac.mm:
2157 (WebCore::keyIdentifierForKeyEvent):
2158 (WebCore::WindowsKeyCodeForKeyEvent):
2159 (WebCore::isKeyUpEvent):
2160 (WebCore::textFromEvent):
2161 (WebCore::unmodifiedTextFromEvent):
2162 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2163 * platform/win/KeyEventWin.cpp:
2164 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2165 * platform/wx/KeyEventWin.cpp:
2166 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2168 2007-11-01 Timothy Hatcher <timothy@apple.com>
2172 * page/inspector/inspector.css: Use the white disclosure triangles
2173 when a parent DOM element is sepected.
2175 2007-11-01 Justin Garcia <justin.garcia@apple.com>
2177 Reviewed by Oliver Hunt.
2179 <rdar://problem/5195056> Huge plain text pastes are slow, time spent in ApplyStyleCommand::doApply
2181 * editing/ReplaceSelectionCommand.cpp:
2182 (WebCore::ReplaceSelectionCommand::doApply): No need to match style when pasting
2183 into a plaintext-only region, since when we build the fragment to insert from
2184 plain text, we don't put any style information on it, so it will automatically
2185 match style with no intervention.
2186 * editing/markup.cpp:
2187 (WebCore::createFragmentFromText): Place paragraphs into clones of the
2188 block being inserted into, instead of default paragraph elements,
2189 so that when inserted content will match the surrounding paragraph style.
2190 This was broken before, but I haven't added a layout test yet because
2191 there currently isn't a way to get only plain text onto the pasteboard
2194 2007-11-01 Sam Weinig <sam@webkit.org>
2196 Reviewed by Adam Roben.
2198 Add a releaseRef method to COMPtr which matches the behavior
2199 of the method by the same name in PassRefPtr. This is in
2200 preparation of adding autogenerated COM DOM bindings.
2202 * platform/win/COMPtr.h:
2203 (COMPtr::releaseRef):
2205 2007-11-01 Kevin Ollivier <kevino@theolliviers.com>
2207 wx impl. for DragController and EventHandler interfaces.
2209 Reviewed by Adam Roben.
2212 * page/wx/DragControllerWx.cpp: Added.
2213 (WebCore::DragController::isCopyKeyDown):
2214 (WebCore::DragController::dragOperation):
2215 (WebCore::DragController::maxDragImageSize):
2216 * page/wx/EventHandlerWx.cpp: Added.
2217 (WebCore::EventHandler::passMousePressEventToSubframe):
2218 (WebCore::EventHandler::passMouseMoveEventToSubframe):
2219 (WebCore::EventHandler::passMouseReleaseEventToSubframe):
2220 (WebCore::EventHandler::passMousePressEventToScrollbar):
2221 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
2222 (WebCore::EventHandler::focusDocumentView):
2223 (WebCore::EventHandler::eventActivatedView):
2224 (WebCore::EventHandler::createDraggingClipboard):
2226 2007-11-01 Kevin Ollivier <kevino@theolliviers.com>
2228 Adding files for wx impl. of editing interfaces.
2230 Reviewed by Adam Roben.
2232 * editing/wx: Added.
2233 * editing/wx/EditorWx.cpp: Added.
2234 (WebCore::Editor::newGeneralClipboard):
2236 2007-11-01 Sam Weinig <sam@webkit.org>
2238 Reviewed by Adam Roben.
2240 Make implicit conversions from LPCSTRs and BSTRs to WebCore string
2241 types possible in preparation of adding autogenerated COM DOM bindings.
2243 * platform/AtomicString.cpp:
2244 (WebCore::AtomicString::add):
2245 * platform/AtomicString.h:
2246 (WebCore::AtomicString::AtomicString):
2247 * platform/PlatformString.h:
2248 * platform/win/BString.cpp:
2249 (WebCore::BString::BString):
2250 * platform/win/BString.h:
2252 2007-11-01 Brady Eidson <beidson@apple.com>
2256 Renamed a flag inside of SQLiteTransaction and added an accessor (for future work)
2258 * platform/sql/SQLiteTransaction.cpp:
2259 (WebCore::SQLiteTransaction::SQLiteTransaction):
2260 (WebCore::SQLiteTransaction::~SQLiteTransaction):
2261 (WebCore::SQLiteTransaction::begin):
2262 (WebCore::SQLiteTransaction::commit):
2263 (WebCore::SQLiteTransaction::rollback):
2264 * platform/sql/SQLiteTransaction.h:
2265 (WebCore::SQLiteTransaction::inProgress):
2267 2007-11-01 Adam Roben <aroben@apple.com>
2269 Remove all duplicate xcopy commands from WebCore's post-build step
2271 Also add the /d option to the copy of platform/sql.
2273 Rubberstamped by Sam.
2275 * WebCore.vcproj/WebCore.vcproj:
2277 2007-11-01 Adele Peterson <adele@apple.com>
2281 Add support for the animation of the -webkit-border-raduis properties.
2283 * page/AnimationController.cpp:
2284 (WebCore::blendFunc): Added for IntSize.
2285 (WebCore::ImplicitAnimation::animate): Added cases for border radius properties.
2287 2007-11-01 Alp Toker <alp@atoker.com>
2289 Reviewed by Mitz Pettel.
2291 Fix an unbalanced save/restore.
2293 * platform/graphics/cg/ImageCG.cpp:
2294 (WebCore::BitmapImage::draw):
2296 2007-11-01 David Hyatt <hyatt@apple.com>
2298 Add support for the animation of the visibility property.
2300 Reviewed by oliver, aroben
2302 * page/AnimationController.cpp:
2303 (WebCore::blendFunc):
2304 (WebCore::ImplicitAnimation::animate):
2306 2007-11-01 Kevin McCullough <kmccullough@apple.com>
2310 - Made COMPtr be able to be used by certain other templates,
2311 specifically HashSet.
2313 * platform/win/COMPtr.h:
2316 2007-11-01 Dan Bernstein <mitz@apple.com>
2318 Reviewed by Dave Hyatt.
2320 - fix http://bugs.webkit.org/show_bug.cgi?id=15015
2321 <rdar://problem/5420308> Most of www.aol.com redraws unnecessarily when headline/photo section changes
2323 Test: fast/repaint/overflow-clip-subtree-layout.html
2325 This patch does not address the bigger issue of doing a full relayout
2326 of inline flows containing floats, but it addresses the problem on
2327 aol.com, where the changes that trigger layout are confined to an
2328 overflow area inside the float.
2330 * page/FrameView.cpp:
2331 (WebCore::FrameView::scheduleRelayoutOfSubtree): If the new and old
2332 layout roots are different but one descends from the other, make (or
2333 keep) the ancestor as the layout root.
2334 * rendering/RenderObject.cpp:
2335 (WebCore::objectIsRelayoutBoundary): Made boxes with overflow
2336 clipping and non-auto width and height relayout boundaries.
2338 2007-11-01 Alexey Proskuryakov <ap@webkit.org>
2340 Reviewed by Mark Rowe.
2342 Fixed line endings that got confused in this file somehow.
2344 * platform/network/ResourceResponse.cpp:
2345 (WebCore::ResourceResponse::isAttachment):
2347 2007-11-01 Peter Kasting <zerodpx@gmail.com>
2349 Reviewed by Dave Hyatt.
2351 http://bugs.webkit.org/show_bug.cgi?id=15778
2352 Malformed GIFs should not result in memory corruption.
2354 * platform/image-decoders/gif/GIFImageDecoder.cpp:
2355 (WebCore::GIFImageDecoder::haveDecodedRow):
2356 * platform/image-decoders/gif/GIFImageReader.cpp:
2357 (GIFImageReader::output_row):
2358 (GIFImageReader::read):
2360 2007-10-31 Adam Roben <aroben@apple.com>
2362 Fix a crash when parsing a cubic-bezier function
2366 Test: fast/css/parse-timing-function-crash.html
2368 * WebCore.vcproj/WebCore.vcproj:
2369 * css/CSSParser.cpp:
2370 (WebCore::CSSParser::parseTimingFunctionValue): Don't walk off the end
2373 2007-10-31 David Hyatt <hyatt@apple.com>
2375 Fix a merge error from when I applied my patch to ToT. A couple of lines should be part of an if.
2377 * rendering/RenderStyle.cpp:
2378 (WebCore::RenderStyle::adjustTransitions):
2380 2007-10-31 Anders Carlsson <andersca@apple.com>
2384 Add new SQL callback interfaces and JS implementations of them.
2386 * DerivedSources.make:
2387 * WebCore.xcodeproj/project.pbxproj:
2388 * bindings/js/JSCustomSQLStatementCallback.cpp: Added.
2389 (WebCore::JSCustomSQLStatementCallback::JSCustomSQLStatementCallback):
2390 (WebCore::JSCustomSQLStatementCallback::handleEvent):
2391 * bindings/js/JSCustomSQLStatementCallback.h: Added.
2392 * bindings/js/JSCustomSQLStatementErrorCallback.cpp: Added.
2393 (WebCore::JSCustomSQLStatementErrorCallback::JSCustomSQLStatementErrorCallback):
2394 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
2395 * bindings/js/JSCustomSQLStatementErrorCallback.h: Added.
2396 * bindings/js/JSCustomSQLTransactionCallback.cpp: Added.
2397 (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback):
2398 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
2399 * bindings/js/JSCustomSQLTransactionCallback.h: Added.
2400 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp: Added.
2401 (WebCore::JSCustomSQLTransactionErrorCallback::JSCustomSQLTransactionErrorCallback):
2402 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
2403 * bindings/js/JSCustomSQLTransactionErrorCallback.h: Added.
2404 * storage/JSCustomSQLStatementCallback.h: Added.
2405 * storage/JSCustomSQLStatementErrorCallback.h: Added.
2406 * storage/JSCustomSQLTransactionCallback.h: Added.
2407 * storage/JSCustomSQLTransactionErrorCallback.h: Added.
2408 * storage/SQLStatementCallback.h: Added.
2409 (WebCore::SQLStatementCallback::~SQLStatementCallback):
2410 * storage/SQLStatementCallback.idl: Added.
2411 * storage/SQLStatementErrorCallback.h: Added.
2412 (WebCore::SQLStatementErrorCallback::~SQLStatementErrorCallback):
2413 * storage/SQLStatementErrorCallback.idl: Added.
2414 * storage/SQLTransaction.h: Added.
2415 * storage/SQLTransaction.idl: Added.
2416 * storage/SQLTransactionCallback.h: Added.
2417 (WebCore::SQLTransactionCallback::~SQLTransactionCallback):
2418 * storage/SQLTransactionCallback.idl: Added.
2419 * storage/SQLTransactionErrorCallback.h: Added.
2420 (WebCore::SQLTransactionErrorCallback::~SQLTransactionErrorCallback):
2421 * storage/SQLTransactionErrorCallback.idl: Added.
2423 2007-10-31 Justin Garcia <justin.garcia@apple.com>
2425 Reviewed by Dave Harrison.
2427 <rdar://problem/5569741> Pasting content with a line break into a list can remove the list
2429 * editing/htmlediting.cpp:
2430 (WebCore::enclosingEmptyListItem): A single list item can contain multiple
2431 paragraphs, so if the incoming VisiblePosition is in an empty paragraph in a
2432 list item, that list item isn't necessarily empty.
2434 2007-10-31 David Hyatt <hyatt@apple.com>
2436 Disable style sharing for animating styles.
2438 Reviewed by mitzpettel
2440 * css/CSSStyleSelector.cpp:
2441 (WebCore::CSSStyleSelector::canShareStyleWithElement):
2443 2007-10-31 Dan Bernstein <mitz@apple.com>
2445 Reviewed by Darin Adler.
2447 - fix intermediate length calculation
2449 * rendering/Length.h:
2450 (WebCore::Length::blend):
2452 2007-10-31 Anders Carlsson <andersca@apple.com>
2456 Add new SQLError implementation.
2458 * DerivedSources.make:
2459 * WebCore.vcproj/WebCore.vcproj:
2460 * WebCore.xcodeproj/project.pbxproj:
2461 * storage/SQLError.h: Added.
2462 (WebCore::SQLError::SQLError):
2463 (WebCore::SQLError::code):
2464 (WebCore::SQLError::message):
2465 * storage/SQLError.idl: Added.
2467 2007-10-31 David Hyatt <hyatt@apple.com>
2469 Change the initial value of transition-property to all. Change the initial value of
2470 transition-duration to 0.
2474 * rendering/RenderStyle.h:
2475 (WebCore::RenderStyle::initialTransitionDuration):
2476 (WebCore::RenderStyle::initialTransitionProperty):
2478 2007-10-31 Alp Toker <alp@atoker.com>
2480 Reviewed by Mark Rowe.
2482 The new Color must be marked valid.
2484 * platform/graphics/gtk/ColorGtk.cpp:
2486 2007-10-31 Simon Hausmann <hausmann@kde.org>
2490 Build fix for non-Qt builds.
2492 * dom/XMLTokenizer.cpp:
2493 (WebCore::XMLTokenizer::XMLTokenizer):
2495 2007-10-31 Simon Hausmann <hausmann@kde.org>
2499 Fix dependency path to header files of the public API of the Qt port.
2503 2007-10-31 Holger Freyther <zecke@selfish.org>
2507 * QXmlStreamNamespaceDeclaration doesn't have the constructor we
2508 want to use for Qt4.3. Reenable the old code path which is likely
2509 to be dead as I have not checked if m_prefixToNamespaceMap is actually
2511 * Guard the entity resolver with the QT_VERSION as well.
2512 * Partially reverts 369506279abdaa863e15efed649ca19e062f2c30 and
2513 d2b54d0fc1b07a2480f4f7a1417abd7a636b0107 for Qt4.3.
2515 * dom/XMLTokenizer.cpp:
2516 (WebCore::XMLTokenizer::XMLTokenizer):
2517 * dom/XMLTokenizer.h:
2519 2007-10-31 Holger Freyther <zecke@selfish.org>
2521 Reviewed by Lars Knoll <lars@trolltech.com>.
2523 * QMimeData::removeData will be new in Qt4.4, don't use it for Qt4.3
2524 * Provide a bad fallback implementation to filter the format list.
2526 * platform/qt/ClipboardQt.cpp:
2527 (WebCore::ClipboardQt::clearData):
2529 2007-10-31 Lars Knoll <lars@trolltech.com>
2533 add an entitiy resolver to QXmlStream.
2534 Fixes fast/parser/entities-in-attributes.xhtml.
2536 * dom/XMLTokenizer.cpp:
2537 (WebCore::EntityResolver::resolveUndeclaredEntity):
2538 (WebCore::XMLTokenizer::XMLTokenizer):
2539 (WebCore::XMLTokenizer::~XMLTokenizer):
2541 2007-10-31 Lars Knoll <lars@trolltech.com>
2545 Fixes in the XML tokenizer when using QXmlStream.
2547 Use new functionality of QXmlStream in Qt 4.4 to simplify
2548 the code (but keep the old code for now to still support Qt 4.3).
2550 Add proper support for namespace handling when parsing into
2551 a document fragment.
2553 * dom/XMLTokenizer.cpp:
2554 (WebCore::XMLTokenizer::XMLTokenizer):
2555 (WebCore::XMLTokenizer::write):
2556 (WebCore::XMLTokenizer::startElementNs):
2558 * dom/XMLTokenizer.h:
2560 2007-10-31 Lars Knoll <lars@trolltech.com>
2564 add support for dragging images.
2566 * platform/DragImage.h:
2567 * platform/qt/ClipboardQt.cpp:
2568 (WebCore::ClipboardQt::clearData):
2569 (WebCore::ClipboardQt::setDragImage):
2570 (WebCore::ClipboardQt::setDragImageElement):
2571 (WebCore::ClipboardQt::createDragImage):
2572 (WebCore::getCachedImage):
2573 (WebCore::ClipboardQt::declareAndWriteDragImage):
2574 * platform/qt/ClipboardQt.h:
2576 2007-10-31 Lars Knoll <lars@trolltech.com>
2580 fix most of the issues I found with Clipboard and DnD.
2582 * editing/qt/EditorQt.cpp:
2583 * platform/qt/ClipboardQt.cpp:
2584 (WebCore::ClipboardQt::ClipboardQt):
2585 (WebCore::ClipboardQt::~ClipboardQt):
2586 (WebCore::ClipboardQt::clearData):
2587 (WebCore::ClipboardQt::clearAllData):
2588 (WebCore::ClipboardQt::getData):
2589 (WebCore::ClipboardQt::setData):
2590 (WebCore::ClipboardQt::types):
2591 (WebCore::ClipboardQt::setDragImage):
2592 (WebCore::ClipboardQt::setDragImageElement):
2593 (WebCore::ClipboardQt::declareAndWriteDragImage):
2594 (WebCore::ClipboardQt::writeURL):
2595 (WebCore::ClipboardQt::writeRange):
2596 (WebCore::ClipboardQt::hasData):
2597 * platform/qt/ClipboardQt.h:
2598 * platform/qt/DragDataQt.cpp:
2599 (WebCore::DragData::asURL):
2601 2007-10-30 Mark Rowe <mrowe@apple.com>
2603 Fix the Gtk and Qt builds by stubbing out PlatformKeyboardEvent::currentCapsLockState.
2605 * platform/gtk/KeyEventGtk.cpp:
2606 (WebCore::PlatformKeyboardEvent::currentCapsLockState):
2607 * platform/qt/PlatformKeyboardEventQt.cpp:
2608 (WebCore::PlatformKeyboardEvent::currentCapsLockState):
2610 2007-10-31 Alexey Proskuryakov <ap@webkit.org>
2614 http://bugs.webkit.org/show_bug.cgi?id=15762
2615 XSLStylesheet loads subresources from a wrong URL
2617 Covered by corrected existing tests.
2619 * xml/XSLStyleSheet.cpp:
2620 (WebCore::XSLStyleSheet::parseString): Pass stylesheet URL, not
2623 2007-10-31 Alexey Proskuryakov <ap@webkit.org>
2627 http://bugs.webkit.org/show_bug.cgi?id=10818
2628 String::append does 2 full copies instead of 1 (or zero!)
2630 No change in functionality, thus no test.
2632 * platform/String.cpp:
2633 (WebCore::String::append): Rewrote to copy once. Also removed an ancient
2634 FIXME that doesn't seem to make any sense. Note that append() behavior doesn't
2635 match documented String behavior ("modifications to one instance will
2636 also modify all others"), but there are a lot of methods that don't.
2638 2007-10-31 Adam Roben <aroben@apple.com>
2642 * WebCore.vcproj/WebCore.vcproj: Add [JS]ProgressEvent.{cpp,h} files.
2644 2007-10-30 Adam Roben <aroben@apple.com>
2648 I'm not completely sure why these const issues weren't caught by GCC,
2649 but MSVC was certainly not happy with them.
2651 * editing/IndentOutdentCommand.cpp:
2652 (WebCore::isIndentBlockquote):
2653 * editing/markup.cpp:
2654 (WebCore::styleFromMatchedRulesAndInlineDecl):
2656 2007-10-30 David Hyatt <hyatt@apple.com>
2658 transition-property was defaulting to all when it should default to none.
2660 It was taking a string type. I figured out how to make it take an ident instead, so you can write:
2662 transition-property: opacity
2666 transition-property: "opacity"
2668 Transition layers also weren't properly repeating patterns the way they were supposed to. I fixed that.
2670 Finally, I fixed a bug in the code to fix up transition layers where something was misplaced that should have been inside a null check.
2675 * css/CSSParser.cpp:
2676 (WebCore::CSSParser::parseTransitionProperty):
2677 * css/CSSStyleSelector.cpp:
2678 (WebCore::CSSStyleSelector::adjustRenderStyle):
2679 * page/AnimationController.cpp:
2680 (WebCore::ImplicitAnimation::animate):
2681 * rendering/RenderStyle.cpp:
2682 (WebCore::RenderStyle::adjustTransitions):
2683 * rendering/RenderStyle.h:
2684 (WebCore::RenderStyle::initialTransitionProperty):
2686 2007-10-30 Antti Koivisto <antti@apple.com>
2692 * platform/graphics/mac/MoviePrivateQTKit.mm:
2693 (WebCore::MoviePrivate::getSupportedTypes):
2695 2007-10-30 Dan Bernstein <mitz@apple.com>
2697 Reviewed by Stephanie Lewis.
2699 - fix <rdar://problem/5547237> REGRESSION (304-ToT): Repro font-related crash in fontdatawin.cpp Line 93 (many sites)
2701 * platform/win/FontDataWin.cpp:
2702 (WebCore::FontData::platformInit): Handle the case where the font has no
2703 glyphs on page zero.
2705 2007-10-30 David Hyatt <hyatt@apple.com>
2707 Make sure CSS transforms can be animated using the CSS transition property.
2709 Reviewed by Dan and Antti
2711 * css/CSSStyleSelector.cpp:
2712 (WebCore::CSSStyleSelector::applyProperty):
2713 * page/AnimationController.cpp:
2714 (WebCore::blendFunc):
2715 (WebCore::ImplicitAnimation::animate):
2716 * rendering/Length.h:
2717 (WebCore::Length::blend):
2718 * rendering/RenderStyle.cpp:
2719 (WebCore::StyleTransformData::operator==):
2720 (WebCore::TransformOperations::operator==):
2721 (WebCore::blendLengths):
2722 (WebCore::ScaleTransformOperation::blend):
2723 (WebCore::RotateTransformOperation::blend):
2724 (WebCore::SkewTransformOperation::blend):
2725 (WebCore::TranslateTransformOperation::blend):
2726 (WebCore::MatrixTransformOperation::blend):
2727 * rendering/RenderStyle.h:
2728 (WebCore::TransformOperations::operator!=):
2729 (WebCore::TransformOperations::isEmpty):
2730 (WebCore::TransformOperations::size):
2731 (WebCore::TransformOperations::operator[]):
2732 (WebCore::TransformOperations::append):
2733 (WebCore::RenderStyle::transform):
2734 (WebCore::RenderStyle::setTransform):
2735 (WebCore::RenderStyle::initialTransform):
2737 2007-10-30 Antti Koivisto <antti@apple.com>
2739 Another Qt/GTK build fix.
2741 * bindings/js/JSHTMLElementWrapperFactory.cpp:
2743 2007-10-30 Antti Koivisto <antti@apple.com>
2745 Attempt to fix Qt/GTK build.
2749 2007-10-30 Justin Garcia <justin.garcia@apple.com>
2751 Reviewed by Darin Adler.
2753 <rdar://problem/5549929> CrashTracer: [USER] 35 crashes at WebCore::CharacterData::insertData
2755 We were trying to insert a tab into a br, after the br incorrectly ended up inside
2758 * editing/DeleteButtonController.cpp:
2759 (WebCore::isDeletableElement): Changed to take in a const Node* instead of a Node*.
2760 * editing/DeleteSelectionCommand.cpp:
2761 (WebCore::isTableRow): Ditto.
2762 * editing/IndentOutdentCommand.cpp:
2763 (WebCore::isIndentBlockquote): Ditto.
2764 (WebCore::isListOrIndentBlockquote): Ditto.
2765 * editing/InsertLineBreakCommand.cpp:
2766 (WebCore::InsertLineBreakCommand::shouldUseBreakElement): Added, moved code from
2768 (WebCore::InsertLineBreakCommand::doApply):
2769 Don't upstream() the insertion position. upstream()ing it will only have an effect
2770 when the insertion position is the first in its paragraph (since we canonicalize
2771 VisiblePositions to the upstream() candidate). In this start of paragraph case,
2772 upstream() can move outside inline elements like tab spans or elements that might
2773 have a different whitespace mode (added two test cases to cover these).
2774 Moved code to decide whether to insert a br or a '\n' to its own method.
2775 Removed special case code for inserting at a position inside a tab span. We instead
2776 adjust the insertion position before insertion if it is inside a tab span and
2777 handle insertion in the appropriate if-block. This fixes a bug where we would
2778 only insert one line break when two were needed (added a testcase).
2779 Removed special case code for inserting before and after tables and horizontal
2780 rules. We handle these insertions in the appropriate if-block.
2781 * editing/InsertLineBreakCommand.h:
2782 * editing/ReplaceSelectionCommand.cpp:
2783 (WebCore::isMailPasteAsQuotationNode): Change to take in a const Node*.
2784 * editing/htmlediting.cpp:
2785 (WebCore::isContentEditable): Ditto.
2786 (WebCore::isBlock): Ditto.
2787 (WebCore::enclosingNodeOfType): Changed to take a function pointer to a function
2788 that takes in a const Node*.
2789 (WebCore::isTabSpanTextNode): Check to see that the node actually a text node,
2791 * editing/htmlediting.h:
2792 * editing/markup.cpp:
2793 (WebCore::styleFromMatchedRulesAndInlineDecl): Changed to take in a const Node*.
2794 (WebCore::elementHasTextDecorationProperty): Ditto.
2796 2007-10-30 Antti Koivisto <antti@apple.com>
2802 * html/VoidCallback.cpp: Added.
2803 (VoidCallback::VoidCallback):
2804 (VoidCallback::~VoidCallback):
2805 (VoidCallback::handleEvent):
2806 (VoidCallback::execute):
2807 (VoidCallback::operator==):
2808 (WebCore::toVoidCallback):
2809 * html/VoidCallback.h: Added.
2810 * html/VoidCallback.idl: Added.
2812 2007-10-30 David Kilzer <ddkilzer@webkit.org>
2814 Generated files missing from WebCore's Xcode project file
2815 <http://bugs.webkit.org/show_bug.cgi?id=15406>
2819 Added the following files to the Xcode project file (note that
2820 JSHTMLInputElementBaseTable.cpp is used as a header file):
2822 - DOMCSSStyleSheetPrivate.h
2824 - DOMHTMLCollectionPrivate.h
2825 - DOMHTMLEmbedElementPrivate.h
2826 - DOMHTMLIFrameElementPrivate.h
2827 - DOMHTMLObjectElementPrivate.h
2828 - DOMHTMLSelectElementPrivate.h
2829 - DOMTextEventInternal.h
2830 - JSHTMLInputElementBaseTable.cpp
2832 * DerivedSources.make: Removed DOMSVGException.h and JSSVGAnimatedPoints.h
2833 since their generated code was not used.
2834 * WebCore.xcodeproj/project.pbxproj: Added missing header files.
2836 2007-10-29 Antti Koivisto <antti@apple.com>
2838 Rubber stamped by Adele.
2840 Initial media (<video> and <audio>) support from feature branch and
2841 QTKit based platform implementation.
2843 This will need to be updated to match current draft specification.
2845 * Configurations/WebCore.xcconfig:
2846 * DerivedSources.make:
2848 * WebCore.xcodeproj/project.pbxproj:
2849 * bindings/js/JSEventCustom.cpp:
2851 * bindings/js/JSHTMLAudioElementConstructor.cpp: Added.
2852 (WebCore::JSHTMLAudioElementConstructor::JSHTMLAudioElementConstructor):
2853 (WebCore::JSHTMLAudioElementConstructor::implementsConstruct):
2854 (WebCore::JSHTMLAudioElementConstructor::construct):
2855 * bindings/js/JSHTMLAudioElementConstructor.h: Added.
2856 * bindings/js/JSHTMLElementWrapperFactory.cpp:
2857 (WebCore::createJSHTMLWrapper):
2858 * bindings/js/kjs_window.cpp:
2859 (KJS::Window::getValueProperty):
2860 * bindings/js/kjs_window.h:
2862 * bindings/scripts/CodeGeneratorJS.pm:
2864 (WebCore::Document::createEvent):
2865 (WebCore::Document::willSaveToCache):
2866 (WebCore::Document::didRestoreFromCache):
2867 (WebCore::Document::registerForCacheCallbacks):
2868 (WebCore::Document::unregisterForCacheCallbacks):
2871 (WebCore::Element::setBooleanAttribute):
2873 (WebCore::Element::willSaveToCache):
2875 (WebCore::Event::isProgressEvent):
2878 * dom/EventTargetNode.cpp:
2879 (WebCore::EventTargetNode::dispatchProgressEvent):
2880 * dom/EventTargetNode.h:
2881 * dom/ProgressEvent.cpp: Added.
2882 (WebCore::ProgressEvent::ProgressEvent):
2883 (WebCore::ProgressEvent::initProgressEvent):
2884 (WebCore::ProgressEvent::initProgressEventNS):
2885 * dom/ProgressEvent.h: Added.
2886 (WebCore::ProgressEvent::lengthComputable):
2887 (WebCore::ProgressEvent::loaded):
2888 (WebCore::ProgressEvent::total):
2889 (WebCore::ProgressEvent::isProgressEvent):
2890 * dom/ProgressEvent.idl: Added.
2891 * history/CachedPage.cpp:
2892 (WebCore::CachedPage::CachedPage):
2893 * html/HTMLAttributeNames.in:
2894 * html/HTMLAudioElement.cpp: Added.
2895 (WebCore::HTMLAudioElement::HTMLAudioElement):
2896 * html/HTMLAudioElement.h: Added.
2897 (WebCore::HTMLAudioElement::tagPriority):
2898 * html/HTMLAudioElement.idl: Added.
2899 * html/HTMLElement.cpp:
2900 (WebCore::inlineTagList):
2901 * html/HTMLElementFactory.cpp:
2902 (WebCore::audioConstructor):
2903 (WebCore::videoConstructor):
2904 (WebCore::sourceConstructor):
2905 (WebCore::createFunctionMap):
2906 * html/HTMLInputElement.cpp:
2907 (WebCore::HTMLInputElement::~HTMLInputElement):
2908 (WebCore::HTMLInputElement::setInputType):
2909 (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
2910 (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
2911 * html/HTMLMediaElement.cpp: Added.
2912 (WebCore::HTMLMediaElement::HTMLMediaElement):
2913 (WebCore::HTMLMediaElement::~HTMLMediaElement):
2914 (WebCore::HTMLMediaElement::checkDTD):
2915 (WebCore::HTMLMediaElement::rendererIsNeeded):
2916 (WebCore::HTMLMediaElement::createRenderer):
2917 (WebCore::HTMLMediaElement::insertedIntoDocument):
2918 (WebCore::HTMLMediaElement::removedFromDocument):
2919 (WebCore::HTMLMediaElement::scheduleLoad):
2920 (WebCore::HTMLMediaElement::initAndDispatchProgressEvent):
2921 (WebCore::HTMLMediaElement::dispatchEventAsync):
2922 (WebCore::HTMLMediaElement::loadTimerFired):
2923 (WebCore::HTMLMediaElement::asyncEventTimerFired):
2924 (WebCore::serializeTimeOffset):
2925 (WebCore::parseTimeOffset):
2926 (WebCore::HTMLMediaElement::getTimeOffsetAttribute):
2927 (WebCore::HTMLMediaElement::setTimeOffsetAttribute):
2928 (WebCore::HTMLMediaElement::error):
2929 (WebCore::HTMLMediaElement::src):
2930 (WebCore::HTMLMediaElement::HTMLMediaElement::setSrc):
2931 (WebCore::HTMLMediaElement::currentSrc):
2932 (WebCore::HTMLMediaElement::networkState):
2933 (WebCore::HTMLMediaElement::bufferingRate):
2934 (WebCore::HTMLMediaElement::load):
2935 (WebCore::HTMLMediaElement::movieNetworkStateChanged):
2936 (WebCore::HTMLMediaElement::movieReadyStateChanged):
2937 (WebCore::HTMLMediaElement::setReadyState):
2938 (WebCore::HTMLMediaElement::progressEventTimerFired):
2939 (WebCore::HTMLMediaElement::seek):
2940 (WebCore::HTMLMediaElement::readyState):
2941 (WebCore::HTMLMediaElement::seeking):
2942 (WebCore::HTMLMediaElement::currentTime):
2943 (WebCore::HTMLMediaElement::setCurrentTime):
2944 (WebCore::HTMLMediaElement::duration):
2945 (WebCore::HTMLMediaElement::paused):
2946 (WebCore::HTMLMediaElement::defaultPlaybackRate):
2947 (WebCore::HTMLMediaElement::setDefaultPlaybackRate):
2948 (WebCore::HTMLMediaElement::playbackRate):
2949 (WebCore::HTMLMediaElement::setPlaybackRate):
2950 (WebCore::HTMLMediaElement::ended):
2951 (WebCore::HTMLMediaElement::autoplay):
2952 (WebCore::HTMLMediaElement::setAutoplay):
2953 (WebCore::HTMLMediaElement::play):
2954 (WebCore::HTMLMediaElement::pause):
2955 (WebCore::HTMLMediaElement::loopCount):
2956 (WebCore::HTMLMediaElement::setLoopCount):
2957 (WebCore::HTMLMediaElement::start):
2958 (WebCore::HTMLMediaElement::setStart):
2959 (WebCore::HTMLMediaElement::end):
2960 (WebCore::HTMLMediaElement::setEnd):
2961 (WebCore::HTMLMediaElement::loopStart):
2962 (WebCore::HTMLMediaElement::setLoopStart):
2963 (WebCore::HTMLMediaElement::loopEnd):
2964 (WebCore::HTMLMediaElement::setLoopEnd):
2965 (WebCore::HTMLMediaElement::currentLoop):
2966 (WebCore::HTMLMediaElement::setCurrentLoop):
2967 (WebCore::HTMLMediaElement::controls):
2968 (WebCore::HTMLMediaElement::setControls):
2969 (WebCore::HTMLMediaElement::volume):
2970 (WebCore::HTMLMediaElement::setVolume):
2971 (WebCore::HTMLMediaElement::muted):
2972 (WebCore::HTMLMediaElement::setMuted):
2973 (WebCore::HTMLMediaElement::pickMedia):
2974 (WebCore::HTMLMediaElement::checkIfSeekNeeded):
2975 (WebCore::HTMLMediaElement::movieVolumeChanged):
2976 (WebCore::HTMLMediaElement::movieDidEnd):
2977 (WebCore::HTMLMediaElement::movieCuePointReached):
2978 (WebCore::HTMLMediaElement::addCuePoint):
2979 (WebCore::HTMLMediaElement::removeCuePoint):
2980 (WebCore::HTMLMediaElement::buffered):
2981 (WebCore::HTMLMediaElement::played):
2982 (WebCore::HTMLMediaElement::seekable):
2983 (WebCore::HTMLMediaElement::effectiveStart):
2984 (WebCore::HTMLMediaElement::effectiveEnd):
2985 (WebCore::HTMLMediaElement::effectiveLoopStart):
2986 (WebCore::HTMLMediaElement::effectiveLoopEnd):
2987 (WebCore::HTMLMediaElement::activelyPlaying):
2988 (WebCore::HTMLMediaElement::endedPlayback):
2989 (WebCore::HTMLMediaElement::willSaveToCache):
2990 (WebCore::HTMLMediaElement::didRestoreFromCache):
2991 * html/HTMLMediaElement.h: Added.
2992 (WebCore::HTMLMediaElement::movie):
2993 (WebCore::HTMLMediaElement::isVideo):
2994 (WebCore::HTMLMediaElement::):
2995 (WebCore::HTMLMediaElement::CallbackEntry::CallbackEntry):
2996 * html/HTMLMediaElement.idl: Added.
2997 * html/HTMLSourceElement.cpp: Added.
2998 (WebCore::HTMLSourceElement::HTMLSourceElement):
2999 (WebCore::HTMLSourceElement::~HTMLSourceElement):
3000 (WebCore::HTMLSourceElement::insertedIntoDocument):
3001 (WebCore::HTMLSourceElement::src):
3002 (WebCore::HTMLSourceElement::setSrc):
3003 (WebCore::HTMLSourceElement::media):
3004 (WebCore::HTMLSourceElement::setMedia):
3005 (WebCore::HTMLSourceElement::type):
3006 (WebCore::HTMLSourceElement::setType):
3007 * html/HTMLSourceElement.h: Added.
3008 (WebCore::HTMLSourceElement::endTagRequirement):
3009 (WebCore::HTMLSourceElement::tagPriority):
3010 * html/HTMLSourceElement.idl: Added.
3011 * html/HTMLTagNames.in:
3012 * html/HTMLVideoElement.cpp: Added.
3013 (WebCore::HTMLVideoElement::HTMLVideoElement):
3014 (WebCore::HTMLVideoElement::videoWidth):
3015 (WebCore::HTMLVideoElement::videoHeight):
3016 * html/HTMLVideoElement.h: Added.
3017 (WebCore::HTMLVideoElement::tagPriority):
3018 (WebCore::HTMLVideoElement::isVideo):
3019 * html/HTMLVideoElement.idl: Added.
3020 * html/MediaError.h: Added.
3021 (WebCore::MediaError::):
3022 (WebCore::MediaError::MediaError):
3023 (WebCore::MediaError::code):
3024 * html/MediaError.idl: Added.
3025 * html/TimeRanges.cpp: Added.
3026 (TimeRanges::TimeRanges):
3027 (TimeRanges::start):
3030 (TimeRanges::contain):
3031 * html/TimeRanges.h: Added.
3032 (WebCore::TimeRanges::TimeRanges):
3033 (WebCore::TimeRanges::length):
3034 (WebCore::TimeRanges::Range::Range):
3035 * html/TimeRanges.idl: Added.
3036 * page/DOMWindow.idl:
3037 * platform/MIMETypeRegistry.cpp:
3038 (WebCore::initialiseSupportedMovieMIMETypes):
3039 (WebCore::initialiseMIMETypeRegistry):
3040 (WebCore::MIMETypeRegistry::isSupportedMovieMIMEType):
3041 (WebCore::MIMETypeRegistry::getSupportedMovieMIMETypes):
3042 * platform/MIMETypeRegistry.h:
3043 * platform/graphics/Movie.cpp: Added.
3044 (WebCore::Movie::Movie):
3045 (WebCore::Movie::~Movie):
3046 (WebCore::Movie::load):
3047 (WebCore::Movie::cancelLoad):
3048 (WebCore::Movie::play):
3049 (WebCore::Movie::pause):
3050 (WebCore::Movie::duration):
3051 (WebCore::Movie::currentTime):
3052 (WebCore::Movie::seek):
3053 (WebCore::Movie::paused):
3054 (WebCore::Movie::seeking):
3055 (WebCore::Movie::naturalSize):
3056 (WebCore::Movie::hasVideo):
3057 (WebCore::Movie::networkState):
3058 (WebCore::Movie::readyState):
3059 (WebCore::Movie::volume):
3060 (WebCore::Movie::setVolume):
3061 (WebCore::Movie::rate):
3062 (WebCore::Movie::setRate):
3063 (WebCore::Movie::muted):
3064 (WebCore::Movie::setMuted):
3065 (WebCore::Movie::dataRate):
3066 (WebCore::Movie::setEndTime):
3067 (WebCore::Movie::addCuePoint):
3068 (WebCore::Movie::removeCuePoint):
3069 (WebCore::Movie::clearCuePoints):
3070 (WebCore::Movie::maxTimeBuffered):
3071 (WebCore::Movie::maxTimeSeekable):
3072 (WebCore::Movie::bytesLoaded):
3073 (WebCore::Movie::totalBytesKnown):
3074 (WebCore::Movie::totalBytes):
3075 (WebCore::Movie::setRect):
3076 (WebCore::Movie::visible):
3077 (WebCore::Movie::setVisible):
3078 (WebCore::Movie::paint):
3079 (WebCore::Movie::getSupportedTypes):
3080 (WebCore::Movie::networkStateChanged):
3081 (WebCore::Movie::readyStateChanged):
3082 (WebCore::Movie::volumeChanged):
3083 (WebCore::Movie::didEnd):
3084 (WebCore::Movie::cuePointReached):
3085 * platform/graphics/Movie.h: Added.
3086 (WebCore::MovieClient::~MovieClient):
3087 (WebCore::MovieClient::movieNetworkStateChanged):
3088 (WebCore::MovieClient::movieReadyStateChanged):
3089 (WebCore::MovieClient::movieVolumeChanged):
3090 (WebCore::MovieClient::movieDidEnd):
3091 (WebCore::MovieClient::movieCuePointReached):
3092 (WebCore::Movie::parentWidget):
3093 (WebCore::Movie::setParentWidget):
3094 (WebCore::Movie::rect):
3096 * platform/graphics/mac/MoviePrivateQTKit.h: Added.
3097 * platform/graphics/mac/MoviePrivateQTKit.mm: Added.
3098 (WebCore::MoviePrivate::MoviePrivate):
3099 (WebCore::MoviePrivate::~MoviePrivate):
3100 (WebCore::MoviePrivate::createQTMovie):
3101 (WebCore::MoviePrivate::createQTMovieView):
3102 (WebCore::MoviePrivate::createQTTime):
3103 (WebCore::MoviePrivate::load):
3104 (WebCore::MoviePrivate::play):
3105 (WebCore::MoviePrivate::pause):
3106 (WebCore::MoviePrivate::duration):
3107 (WebCore::MoviePrivate::currentTime):
3108 (WebCore::MoviePrivate::seek):
3109 (WebCore::MoviePrivate::setEndTime):
3110 (WebCore::MoviePrivate::addCuePoint):
3111 (WebCore::MoviePrivate::removeCuePoint):
3112 (WebCore::MoviePrivate::clearCuePoints):
3113 (WebCore::MoviePrivate::startCuePointTimerIfNeeded):
3114 (WebCore::MoviePrivate::cancelSeek):
3115 (WebCore::MoviePrivate::seekTimerFired):
3116 (WebCore::MoviePrivate::cuePointTimerFired):
3117 (WebCore::MoviePrivate::paused):
3118 (WebCore::MoviePrivate::seeking):
3119 (WebCore::MoviePrivate::naturalSize):
3120 (WebCore::MoviePrivate::hasVideo):
3121 (WebCore::MoviePrivate::setVolume):
3122 (WebCore::MoviePrivate::setMuted):
3123 (WebCore::MoviePrivate::setRate):
3124 (WebCore::MoviePrivate::dataRate):
3125 (WebCore::MoviePrivate::networkState):
3126 (WebCore::MoviePrivate::readyState):
3127 (WebCore::MoviePrivate::maxTimeBuffered):
3128 (WebCore::MoviePrivate::maxTimeSeekable):
3129 (WebCore::MoviePrivate::maxTimeLoaded):
3130 (WebCore::MoviePrivate::bytesLoaded):
3131 (WebCore::MoviePrivate::totalBytesKnown):
3132 (WebCore::MoviePrivate::totalBytes):
3133 (WebCore::MoviePrivate::cancelLoad):
3134 (WebCore::MoviePrivate::updateStates):
3135 (WebCore::MoviePrivate::loadStateChanged):
3136 (WebCore::MoviePrivate::rateChanged):
3137 (WebCore::MoviePrivate::sizeChanged):
3138 (WebCore::MoviePrivate::timeChanged):
3139 (WebCore::MoviePrivate::volumeChanged):
3140 (WebCore::MoviePrivate::didEnd):
3141 (WebCore::MoviePrivate::setRect):
3142 (WebCore::MoviePrivate::setVisible):
3143 (WebCore::MoviePrivate::paint):
3144 (WebCore::MoviePrivate::getSupportedTypes):
3145 (-[WebCoreMovieObserver loadStateChanged:]):
3146 (-[WebCoreMovieObserver rateChanged:]):
3147 (-[WebCoreMovieObserver sizeChanged:]):
3148 (-[WebCoreMovieObserver timeChanged:]):
3149 (-[WebCoreMovieObserver volumeChanged:]):
3150 (-[WebCoreMovieObserver didEnd:]):
3151 (-[WebCoreMovieObserver setCallback:WebCore::]):
3152 * platform/mac/WebCoreSystemInterface.h:
3153 * platform/mac/WebCoreSystemInterface.mm:
3154 * rendering/RenderLayer.cpp:
3155 (WebCore::RenderLayer::collectLayers):
3156 * rendering/RenderVideo.cpp: Added.
3157 (WebCore::RenderVideo::RenderVideo):
3158 (WebCore::RenderVideo::~RenderVideo):
3159 (WebCore::RenderVideo::movie):
3160 (WebCore::RenderVideo::videoSizeChanged):
3161 (WebCore::RenderVideo::paint):
3162 (WebCore::RenderVideo::layout):
3163 (WebCore::RenderVideo::updateFromElement):
3164 (WebCore::RenderVideo::updateMovie):
3165 (WebCore::RenderVideo::isWidthSpecified):
3166 (WebCore::RenderVideo::isHeightSpecified):
3167 (WebCore::RenderVideo::calcReplacedWidth):
3168 (WebCore::RenderVideo::calcReplacedHeight):
3169 (WebCore::RenderVideo::calcAspectRatioWidth):
3170 (WebCore::RenderVideo::calcAspectRatioHeight):
3171 (WebCore::RenderVideo::calcPrefWidths):
3172 * rendering/RenderVideo.h: Added.
3173 (WebCore::RenderVideo::renderName):
3175 2007-10-30 Sam Weinig <sam@webkit.org>
3177 Reviewed by Adam Roben.
3179 Add Interface and Class UUIDs to the IDLs in preparation of adding
3180 autogeneration of the COM DOM bindings.
3182 * bindings/scripts/IDLParser.pm: Relax parsing rules to allow newlines as whitespace.
3183 * css/CSSCharsetRule.idl:
3184 * css/CSSFontFaceRule.idl:
3185 * css/CSSImportRule.idl:
3186 * css/CSSMediaRule.idl:
3187 * css/CSSPageRule.idl:
3188 * css/CSSPrimitiveValue.idl:
3190 * css/CSSRuleList.idl:
3191 * css/CSSStyleDeclaration.idl:
3192 * css/CSSStyleRule.idl:
3193 * css/CSSStyleSheet.idl:
3194 * css/CSSUnknownRule.idl:
3196 * css/CSSValueList.idl:
3198 * css/MediaList.idl:
3201 * css/StyleSheet.idl:
3202 * css/StyleSheetList.idl:
3204 * dom/CDATASection.idl:
3205 * dom/CharacterData.idl:
3207 * dom/DOMImplementation.idl:
3209 * dom/DocumentFragment.idl:
3210 * dom/DocumentType.idl:
3213 * dom/EntityReference.idl:
3215 * dom/EventListener.idl:
3216 * dom/EventTarget.idl:
3217 * dom/NamedNodeMap.idl:
3221 * dom/ProcessingInstruction.idl:
3223 * html/CanvasGradient.idl:
3224 * html/CanvasPattern.idl:
3225 * html/CanvasRenderingContext2D.idl:
3226 * html/HTMLAnchorElement.idl:
3227 * html/HTMLAppletElement.idl:
3228 * html/HTMLAreaElement.idl:
3229 * html/HTMLBRElement.idl:
3230 * html/HTMLBaseElement.idl:
3231 * html/HTMLBaseFontElement.idl:
3232 * html/HTMLBlockquoteElement.idl:
3233 * html/HTMLBodyElement.idl:
3234 * html/HTMLButtonElement.idl:
3235 * html/HTMLCanvasElement.idl:
3236 * html/HTMLCollection.idl:
3237 * html/HTMLDListElement.idl:
3238 * html/HTMLDirectoryElement.idl:
3239 * html/HTMLDivElement.idl:
3240 * html/HTMLDocument.idl:
3241 * html/HTMLElement.idl:
3242 * html/HTMLEmbedElement.idl:
3243 * html/HTMLFieldSetElement.idl:
3244 * html/HTMLFontElement.idl:
3245 * html/HTMLFormElement.idl:
3246 * html/HTMLFrameElement.idl:
3247 * html/HTMLFrameSetElement.idl:
3248 * html/HTMLHRElement.idl:
3249 * html/HTMLHeadElement.idl:
3250 * html/HTMLHeadingElement.idl:
3251 * html/HTMLHtmlElement.idl:
3252 * html/HTMLIFrameElement.idl:
3253 * html/HTMLImageElement.idl:
3254 * html/HTMLInputElement.idl:
3255 * html/HTMLIsIndexElement.idl:
3256 * html/HTMLLIElement.idl:
3257 * html/HTMLLabelElement.idl:
3258 * html/HTMLLegendElement.idl:
3259 * html/HTMLLinkElement.idl:
3260 * html/HTMLMapElement.idl:
3261 * html/HTMLMarqueeElement.idl:
3262 * html/HTMLMenuElement.idl:
3263 * html/HTMLMetaElement.idl:
3264 * html/HTMLModElement.idl:
3265 * html/HTMLOListElement.idl:
3266 * html/HTMLObjectElement.idl:
3267 * html/HTMLOptGroupElement.idl:
3268 * html/HTMLOptionElement.idl:
3269 * html/HTMLOptionsCollection.idl:
3270 * html/HTMLParagraphElement.idl:
3271 * html/HTMLParamElement.idl:
3272 * html/HTMLPreElement.idl:
3273 * html/HTMLQuoteElement.idl:
3274 * html/HTMLScriptElement.idl:
3275 * html/HTMLSelectElement.idl:
3276 * html/HTMLStyleElement.idl:
3277 * html/HTMLTableCaptionElement.idl:
3278 * html/HTMLTableCellElement.idl:
3279 * html/HTMLTableColElement.idl:
3280 * html/HTMLTableElement.idl:
3281 * html/HTMLTableRowElement.idl:
3282 * html/HTMLTableSectionElement.idl:
3283 * html/HTMLTextAreaElement.idl:
3284 * html/HTMLTitleElement.idl:
3285 * html/HTMLUListElement.idl:
3287 2007-10-30 Adele Peterson <adele@apple.com>
3291 * page/AnimationController.cpp: (WebCore::blendFunc): Use lround instead of round.
3293 2007-10-29 Timothy Hatcher <timothy@apple.com>
3295 Reviewed by John Sullivan.
3297 - Allow showing and closing the inspector programatically.
3298 - Add showConsole() and showTimeline() methods.
3300 * WebCore.base.exp: Add exports for WebKit.
3301 * page/InspectorController.cpp:
3302 (WebCore::callSimpleFunction): Renamed from callClearFunction().
3303 (WebCore::unloading): Renamed to close().
3304 (WebCore::InspectorController::InspectorController):
3305 (WebCore::InspectorController::inspect): Moved showing code to show().
3306 (WebCore::InspectorController::setWindowVisible): Show the timeline or console if needed.
3307 (WebCore::InspectorController::show): Code factored out of inspect().
3308 (WebCore::InspectorController::showConsole): Call show() and the JS showConsole().
3309 (WebCore::InspectorController::showTimeline): Call show() and the JS showTimeline().
3310 (WebCore::InspectorController::close):
3311 (WebCore::InspectorController::clearScriptResources): Call the new callSimpleFunction.
3312 (WebCore::InspectorController::clearDatabaseScriptResources): Ditto.
3313 (WebCore::InspectorController::clearScriptConsoleMessages): Ditto.
3314 (WebCore::InspectorController::clearNetworkTimeline): Ditto.
3315 * page/InspectorController.h: Add and rename methods.
3316 * page/inspector/inspector.js: Add showConsole() and showTimeline().
3318 2007-10-30 Adele Peterson <adele@apple.com>
3324 * page/AnimationController.cpp: (WebCore::blendFunc):
3326 2007-10-30 Adele Peterson <adele@apple.com>
3330 WebCore part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
3331 <rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields
3333 Test: manual-tests/password-caps-lock.html
3335 * WebCore.base.exp: Added symbol for capsLockStateMayHaveChanged.
3337 * page/Frame.cpp: (WebCore::Frame::setIsActive): Calls capsLockStateMayHaveChanged.
3338 * page/EventHandler.cpp: (WebCore::EventHandler::capsLockStateMayHaveChanged): Added. Tells the focused node's renderer that the capsLockStateMayHaveChanged.
3339 * page/EventHandler.h:
3341 * platform/PlatformKeyboardEvent.h:
3342 * platform/mac/KeyEventMac.mm: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
3343 * platform/win/KeyEventWin.cpp: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
3345 * rendering/RenderTextControl.cpp:
3346 (WebCore::RenderTextControl::RenderTextControl):
3347 (WebCore::RenderTextControl::paint): Added. If m_shouldDrawCapsLockIndicator is true, paints the caps lock indicator after the background.
3348 (WebCore::RenderTextControl::forwardEvent): When the control gets and loses focus, update the caps lock state.
3349 (WebCore::RenderTextControl::capsLockStateMayHaveChanged): Added. Updates m_shouldDrawCapsLockIndicator, which is true if the field is a password field,
3350 and the frame is active, and the element is focused, and the caps lock is on. Causes a repaint when m_shouldDrawCapsLockIndicator changes state.
3351 * rendering/RenderTextControl.h: Added m_shouldDrawCapsLockIndicator.
3352 * rendering/RenderObject.h: (WebCore::RenderObject::capsLockStateMayHaveChanged): Added.
3354 * rendering/RenderTheme.h: (WebCore::RenderTheme::paintCapsLockIndicator): Added.
3355 * rendering/RenderThemeMac.h:
3356 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintCapsLockIndicator): Added. Calls wkDrawCapsLockIndicator.
3357 * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintCapsLockIndicator): Added. Calls paintThemePart for the CapsLockPart.
3358 * rendering/RenderThemeSafari.h:
3360 2007-10-30 David Hyatt <hyatt@apple.com>
3362 Land support for implicit animation in CSS.
3364 Reviewed by mitz, darin
3366 * css/CSSParser.cpp:
3367 (WebCore::CSSParser::parseTimingFunctionValue):
3368 (WebCore::CSSParser::parseTransitionTimingFunction):
3369 (WebCore::CSSParser::parseTransitionProperty):
3370 * css/CSSStyleSelector.cpp:
3371 (WebCore::CSSStyleSelector::mapTransitionDuration):
3372 (WebCore::CSSStyleSelector::mapTransitionRepeatCount):
3373 (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
3374 (WebCore::CSSStyleSelector::mapTransitionProperty):
3375 * css/CSSTimingFunctionValue.h:
3376 (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
3377 (WebCore::CSSTimingFunctionValue::x1):
3378 (WebCore::CSSTimingFunctionValue::y1):
3379 (WebCore::CSSTimingFunctionValue::x2):
3380 (WebCore::CSSTimingFunctionValue::y2):
3382 (WebCore::Element::styleForRenderer):
3383 (WebCore::Element::createRenderer):
3385 (WebCore::Node::createRendererIfNeeded):
3386 (WebCore::Node::setRenderStyle):
3387 * page/AnimationController.cpp:
3388 (WebCore::CurveData::CurveData):
3389 (WebCore::CurveData::sampleCurveX):
3390 (WebCore::CurveData::sampleCurveY):
3391 (WebCore::CurveData::sampleCurveDerivativeX):
3392 (WebCore::CurveData::solveCurveX):
3393 (WebCore::solveEpsilon):
3394 (WebCore::solveCubicBezierFunction):
3395 (WebCore::ImplicitAnimation::finished):
3396 (WebCore::CompositeImplicitAnimation::~CompositeImplicitAnimation):
3397 (WebCore::CompositeImplicitAnimation::hasAnimationForProperty):
3398 (WebCore::ImplicitAnimation::ImplicitAnimation):
3399 (WebCore::ImplicitAnimation::~ImplicitAnimation):
3400 (WebCore::ImplicitAnimation::reset):
3401 (WebCore::ImplicitAnimation::progress):
3402 (WebCore::blendFunc):
3403 (WebCore::ImplicitAnimation::animate):
3404 (WebCore::CompositeImplicitAnimation::animate):
3405 (WebCore::CompositeImplicitAnimation::animating):
3406 (WebCore::CompositeImplicitAnimation::reset):
3407 (WebCore::AnimationControllerPrivate::hasImplicitAnimations):
3408 (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
3409 (WebCore::AnimationControllerPrivate::~AnimationControllerPrivate):
3410 (WebCore::AnimationControllerPrivate::get):
3411 (WebCore::AnimationControllerPrivate::clear):
3412 (WebCore::AnimationControllerPrivate::updateTimer):
3413 (WebCore::AnimationControllerPrivate::timerFired):
3415 (WebCore::AnimationController::~AnimationController):
3416 (WebCore::AnimationController::cancelImplicitAnimations):
3417 (WebCore::AnimationController::updateImplicitAnimations):
3418 (WebCore::AnimationController::suspendAnimations):
3419 (WebCore::AnimationController::resumeAnimations):
3420 * page/AnimationController.h:
3422 (WebCore::FramePrivate::FramePrivate):
3423 * rendering/RenderBox.cpp:
3424 (WebCore::RenderBox::setStyle):
3425 (WebCore::RenderBox::destroy):
3426 * rendering/RenderObject.cpp:
3427 (WebCore::RenderObject::setAnimatableStyle):
3428 (WebCore::RenderObject::destroy):
3429 * rendering/RenderObject.h:
3430 * rendering/RenderStyle.h:
3431 (WebCore::TimingFunction::TimingFunction):
3432 (WebCore::TimingFunction::operator==):
3433 (WebCore::TimingFunction::x1):
3434 (WebCore::TimingFunction::y1):
3435 (WebCore::TimingFunction::x2):
3436 (WebCore::TimingFunction::y2):
3437 (WebCore::TimingFunction::type):
3438 (WebCore::Transition::transitionProperty):
3439 (WebCore::Transition::setTransitionProperty):
3440 (WebCore::RenderStyle::initialTransitionProperty):
3441 * rendering/RenderWidget.cpp:
3442 (WebCore::RenderWidget::destroy):
3444 2007-10-29 Beth Dakin <bdakin@apple.com>
3448 Fix for <rdar://problem/5399614> anchor tag is not rendered without
3449 text content, works in Firefox with CSS background-image (13237)
3451 This patch allows empty inlines that have box decorations or width
3452 from border/padding/margin to have line boxes.
3454 * rendering/bidi.cpp:
3455 (WebCore::inlineFlowAllowsLineBox): Convenience function that
3456 defines when we allow an inline flow to have a line box.
3457 (WebCore::requiresLineBox): Call inlineFlowAllowsLineBox.
3458 (WebCore::shouldSkipWhitespaceAfterStartObject): New function to
3459 merge some shared code between list markers and empty inline flows
3460 that fall at the beginning of a line.
3461 (WebCore::RenderBlock::findNextLineBreak): Make flows more like
3464 One interesting side effect of this bug appeared in our xhtml/svg
3465 tests that generate parser error tags. The tag we generate was
3466 actually an empty inline with box decorations. This patch causes
3467 those inlines to draw now, and the parser errors looked strange. So
3468 I changed it so that the parsererror tag is display:block. This
3469 matches Firefox, and I think was the original intent of the tag
3470 since that causes its red background and border to show up.
3471 * dom/XMLTokenizer.cpp:
3472 (WebCore::createXHTMLParserErrorHeader):
3474 2007-10-29 Dan Bernstein <mitz@apple.com>
3476 Reviewed by Dave Hyatt.
3478 - fix crashing tests fast/frames/inline-object-inside-frameset.html and
3479 fast/forms/form-hides-table.html
3481 * rendering/RenderBox.cpp:
3482 (WebCore::RenderBox::destroy):
3483 * rendering/RenderWidget.cpp:
3484 (WebCore::RenderWidget::destroy):
3486 2007-10-29 Dan Bernstein <mitz@apple.com>
3488 Reviewed by Adam Roben.
3490 - fix http://bugs.webkit.org/show_bug.cgi?id=15750
3491 REGRESSION(r27173): Web Inspector freezes beneath Image::drawPattern()
3493 Test: fast/backgrounds/size/zero.html
3495 * platform/graphics/cg/ImageCG.cpp:
3496 (WebCore::Image::drawPattern): Added an ASSERT and an early return
3497 to guard against singular pattern transforms.
3498 * rendering/RenderBox.cpp:
3499 (WebCore::cacluateBackgroundSize): Changed to ensure a minimum tile
3502 2007-10-29 Alp Toker <alp@atoker.com>
3506 Add GTK+ convenience conversions for various primitives
3509 * platform/graphics/Color.h:
3510 * platform/graphics/IntPoint.h:
3511 * platform/graphics/IntRect.h:
3512 * platform/graphics/gtk/ColorGtk.cpp: Added.
3513 (WebCore::Color::Color):
3514 * platform/graphics/gtk/IntPointGtk.cpp: Added.
3515 (WebCore::IntPoint::IntPoint):
3516 (WebCore::IntPoint::operator GdkPoint):
3517 * platform/graphics/gtk/IntRectGtk.cpp: Added.
3518 (WebCore::IntRect::IntRect):
3519 (WebCore::IntRect::operator GdkRectangle):
3521 2007-10-29 Jon Honeycutt <jhoneycutt@apple.com>
3525 Speculative fix for <rdar://5538489> Safari 3.0.4 seed hangs at
3526 http://tgmonline.futuregamer.it/ (works fine on Safari 2.0.4 and Safari
3529 I cannot reproduce this hang, but it is likely due to our not limiting
3530 WM_USER+1 messages or InvalidateRect calls for a plugin with initially-
3531 unknown MIME type. The embed tag on the page is missing a type
3532 attribute, so as fallback, we choose to load the Flash plugin based on
3533 the file extension of "swf." However, we do not record this determined
3534 MIME type, and so our quirks cannot be established.
3536 Changed findPlugin() so that, if it fails to find a plugin for the
3537 given MIME type, it will lookup the MIME type for the file extension -
3538 overwriting its passed MIME type parameter - and search for a plugin
3541 * plugins/win/PluginDatabaseWin.cpp:
3542 (WebCore::PluginDatabaseWin::pluginForMIMEType): Added an early return
3543 if the MIME type is empty
3544 (WebCore::PluginDatabaseWin::MIMETypeForExtension): Added to replace
3545 pluginForExtension. Returns a String with the MIME type for the file
3546 extension. Also, changed to use case-insensitive compares
3547 (WebCore::PluginDatabaseWin::findPlugin): If we fail to find a plugin
3548 for the given extension, overwrite the incoming MIME type parameter
3549 with the MIME type for the file extension, and search for a plugin for
3550 that MIME type. Also, changed the way that the extension is determined
3551 (WebCore::PluginDatabaseWin::createPluginView): Pass a mutable String
3552 to findPlugin() so that it can be updated if necessary
3553 * plugins/win/PluginDatabaseWin.h: Changed findPlugin() to take a non-
3554 const String, removed definition of pluginForExtension, added
3555 definition for MIMETypeForExtension
3556 * plugins/win/PluginPackageWin.cpp:
3557 (WebCore::PluginPackageWin::fetchInfo): Store the MIME type in
3558 lowercase for easier compares
3560 2007-10-29 Andrew Wellington <proton@wiretapped.net>
3562 Not reviewed - build fix
3566 WebKit/WebCore/xml/XSLTProcessor.cpp:79: warning: 'level' may be used uninitialized
3569 * xml/XSLTProcessor.cpp:
3570 (WebCore::XSLTProcessor::parseErrorFunc):
3572 2007-10-29 Alp Toker <alp@atoker.com>
3574 Reviewed by Adam Roben.
3576 http://bugs.webkit.org/show_bug.cgi?id=15725
3577 [GTK] WebCore.pro header dependencies are incorrect
3579 Fix header dependencies in the build system
3581 INCLUDEPATH and DEPENDPATH are now up to date.
3585 2007-10-29 Beth Dakin <bdakin@apple.com>
3589 * css/CSSParser.cpp:
3590 (WebCore::CSSParser::parseTimingFunctionValue):
3591 * css/CSSStyleSelector.cpp:
3592 (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
3594 2007-10-29 David Hyatt <hyatt@apple.com>
3596 Land the back end for CSS animated property transitions. I am landing this in stages, so the AnimationController
3597 class is deliberately left empty.
3599 Reviewed by darin/aroben
3602 * WebCore.vcproj/WebCore.vcproj:
3603 * WebCore.xcodeproj/project.pbxproj:
3604 * css/CSSComputedStyleDeclaration.cpp:
3605 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3606 * css/CSSPropertyNames.in:
3607 * css/CSSTimingFunctionValue.cpp: Added.
3608 (WebCore::CSSTimingFunctionValue::cssText):