1 2006-10-05 Adam Roben <aroben@apple.com>
3 Reviewed by Maciej and Tim H.
5 Copy some WebKit frame lifetime logic into WebCore -- just a step
6 along the path to frame lifetime being handled completely in WebCore.
8 * bridge/mac/FrameMac.mm:
9 (WebCore::FrameMac::setView): Move platform-independent parts of this
12 (WebCore::Frame::setView): Adding platform-independent parts of
14 (WebCore::Frame::detachChildren): New method to accomplish what
15 -[WebFrameBridge _detachChildren] currently does.
16 (WebCore::Frame::clear): Call detachChildren
17 * page/Frame.h: Add declaration for detachChildren
19 2006-10-04 Alice Liu <alice.liu@apple.com>
23 Fixed <rdar://problem/4758577> REGRESSION: Business and People widgets fails to complete search query
25 * xml/xmlhttprequest.cpp:
26 (WebCore::XMLHttpRequest::setRequestHeader):
27 removed exception set when the request is not open yet
29 2006-10-04 Anders Carlsson <acarlsson@apple.com>
31 Reviewed by John Sullivan.
33 <rdar://problem/4654328>
34 Safari Crashes in WebCore::PluginTokenizer::writeRawData If I Try to Open a SWF File With Plug-ins Turned Off
36 * loader/PluginDocument.cpp:
37 (WebCore::PluginTokenizer::writeRawData):
38 Only send the data to the plug-in if plug-ins are enabled, otherwise just silently eat it.
40 2006-10-03 Alexey Proskuryakov <ap@nypop.com>
44 http://bugs.webkit.org/show_bug.cgi?id=11130
45 Convert "undefined" to AE missing value
47 * bridge/mac/WebCoreFrameBridge.mm:
48 (aeDescFromJSValue): return missing value for UndefinedType.
50 2006-10-03 Dave Hyatt <hyatt@apple.com>
52 Scrolling work. Eliminate convertTo/FromContainingWindow as cross-platform functions. Add back in
53 the windowToContents/contentsToWindow functions.
57 * bridge/mac/FrameMac.mm:
58 (WebCore::FrameMac::eventMayStartDrag):
59 (WebCore::FrameMac::dragHysteresisExceeded):
60 (WebCore::FrameMac::mouseDown):
61 (WebCore::FrameMac::shouldDragAutoNode):
62 (WebCore::FrameMac::sendContextMenuEvent):
63 * bridge/mac/FrameViewMac.mm:
64 (WebCore::FrameView::passMousePressEventToScrollbar):
65 * bridge/mac/WebCoreFrameBridge.mm:
66 (-[WebCoreFrameBridge _visiblePositionForPoint:]):
67 * dom/EventTargetNode.cpp:
68 (WebCore::EventTargetNode::dispatchMouseEvent):
69 (WebCore::EventTargetNode::dispatchWheelEvent):
71 (WebCore::Frame::selectClosestWordFromMouseEvent):
72 (WebCore::Frame::handleMousePressEventTripleClick):
73 (WebCore::Frame::handleMousePressEventSingleClick):
74 (WebCore::Frame::handleMouseMoveEvent):
75 (WebCore::Frame::handleMouseReleaseEvent):
77 (WebCore::FrameView::handleMousePressEvent):
78 (WebCore::FrameView::handleMouseDoubleClickEvent):
79 (WebCore::selectCursor):
80 (WebCore::FrameView::handleMouseMoveEvent):
81 (WebCore::FrameView::handleMouseReleaseEvent):
82 (WebCore::FrameView::dispatchDragEvent):
83 (WebCore::FrameView::prepareMouseEvent):
84 (WebCore::FrameView::handleWheelEvent):
86 * platform/ScrollBar.cpp:
87 (WebCore::ScrollBar::setValue):
88 * platform/ScrollView.h:
90 (WebCore::Widget::scrolled):
91 * platform/mac/ScrollViewMac.mm:
92 (WebCore::ScrollView::contentsToWindow):
93 (WebCore::ScrollView::windowToContents):
94 (WebCore::ScrollView::scrollbarUnderMouse):
95 * platform/mac/WidgetMac.mm:
96 * rendering/RenderLayer.cpp:
97 (WebCore::RenderLayer::resize):
98 (WebCore::RenderLayer::positionScrollbars):
99 * rendering/RenderReplaced.cpp:
100 (WebCore::RenderReplaced::shouldPaint):
101 * rendering/RenderView.cpp:
102 * rendering/RenderView.h:
103 * rendering/RenderWidget.cpp:
104 (WebCore::RenderWidget::setWidget):
106 2006-09-26 David Smith <catfish.man@gmail.com>
110 http://bugs.webkit.org/show_bug.cgi?id=3723
111 Add -scrollDOMRangeToVisible:
113 No automated tests are possible as this code path isn't reachable from JavaScript.
115 * bridge/mac/WebCoreFrameBridge.h:
116 * bridge/mac/WebCoreFrameBridge.mm:
117 (-[WebCoreFrameBridge scrollDOMRangeToVisible:]):
119 2006-10-03 Graham Dennis <graham.dennis@gmail.com>
123 <http://bugs.webkit.org/show_bug.cgi?id=10338>
124 When contentEditable, cursor doesn't change to hand
126 Allow the behaviour of editable links to be specified by a WebPreference
127 The preference WebKitEditableLinkBehavior has four options:
128 - AlwaysLive: Safari 2.0 behaviour
129 - OnlyLiveWithShiftKey: Firefox/WinIE behaviour (and prior WebKit-ToT behaviour)
130 - LiveWhenNotFocused: Editable links are live only when their editable block is not
131 focused, or when the shift key is pressed
132 - DefaultBehavior: This is the same as OnlyLiveWithShiftKey.
134 No layout tests, just a modification of a manual-test as it isn't possible to test
137 * bridge/mac/WebCoreSettings.h:
138 * bridge/mac/WebCoreSettings.mm:
139 (-[WebCoreSettings setEditableLinkBehavior:]):
140 (-[WebCoreSettings editableLinkBehavior]):
141 * html/HTMLAnchorElement.cpp:
142 (WebCore::HTMLAnchorElement::HTMLAnchorElement):
143 (WebCore::HTMLAnchorElement::defaultEventHandler):
144 (WebCore::HTMLAnchorElement::setActive):
145 * html/HTMLAnchorElement.h:
146 * manual-tests/contenteditable-link.html:
147 * page/FrameView.cpp:
148 (WebCore::nodeIsNotBeingEdited):
149 (WebCore::selectCursor):
151 (WebCore::Settings::):
152 (WebCore::Settings::Settings):
153 (WebCore::Settings::editableLinkBehavior):
154 (WebCore::Settings::setEditableLinkBehavior):
156 2006-10-03 Beth Dakin <bdakin@apple.com>
160 No test cases needed.
162 Implemented a version of StringImpl::append that takes a UChar* and
165 * platform/StringImpl.cpp:
166 (WebCore::StringImpl::append):
167 (WebCore::StringImpl::insert): Call new append instead of making a
169 * platform/StringImpl.h:
171 2006-10-03 MorganL <morganl.webkit@yahoo.com>
175 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11099
176 HttpSendRequestEx results in ERROR_HTTP_HEADER_NOT_FOUND
178 * platform/win/ResourceLoaderWin.cpp:
179 (WebCore::ResourceLoader::onHandleCreated):
181 2006-10-02 Geoffrey Garen <ggaren@apple.com>
183 Feared, loathed, reviewed by Darin.
185 More frame/iframe merging. Merged IFRAME::willRemove and IFRAME::detach
186 into FRAME, plus other cleanup.
188 No new behavior, so no new test. Layout tests pass. Basic browsing and
189 Mail editing seem to work.
192 (WebCore::Node::detach): Removed random commented-out code.
193 * html/HTMLFrameElement.cpp:
194 (WebCore::HTMLFrameElement::isURLAllowed):
195 (1) Removed reference to FrameView, to dissociate frame loading from rendering.
196 (2) Renamed newURL to completeURL because the difference between newURL
197 and URLString is that newURL is a KURL that is the complete version of URLString,
199 (WebCore::HTMLFrameElement::willRemove):
200 (1) Removed close() call and moved close() code into willRemove(), also removing
201 close() call from detach(), since willRemove is the well-defined place
202 from DOM tear-down, not detach().
203 (2) Removed manual renderer detach code because the DOM is not responsible
204 for managing the render tree. I confirmed that this change not
205 regress <rdar://problem/4132581>.
206 (3) Removed questionable ASSERT. The ASSERT assumed that iframe elements
207 lost their content frames after being removed from the DOM. That's our
208 current behavior, but it's going to change in future rounds of refactoring.
209 This also fixes <rdar://problem/4750835>.
210 (WebCore::HTMLFrameElement::setLocation): Removed wacky manual calls to
211 attach/detach, because the render tree should not be in charge of deciding
213 * html/HTMLFrameElement.h:
214 * html/HTMLIFrameElement.cpp:
215 (WebCore::HTMLIFrameElement::attach): Renamed renderPart to renderPartObject,
216 because the renderer is a renderPartObject, not a renderPart.
217 * html/HTMLIFrameElement.h:
219 2006-10-03 Mark Rowe <bdash@webkit.org>
223 http://bugs.webkit.org/show_bug.cgi?id=11137
224 Bug 11137: GdkLauncher dies with "pure virtual method called" if
225 window is closed while page still loading
227 * platform/gdk/FrameGdk.cpp:
228 (WebCore::FrameGdk::~FrameGdk): Call cancelAndClear to allow virtual
229 methods to be called before the FrameGdk portion of "this" is torn down.
231 2006-10-03 Adam Roben <aroben@apple.com>
235 Handle tab key presses in the DOM.
237 * dom/EventTargetNode.cpp:
238 (WebCore::EventTargetNode::defaultEventHandler): Add tab key handling.
239 * page/FrameView.cpp:
240 (WebCore::FrameView::advanceFocus): Rename and reimplement
241 focusNextPrevNode. Now we just call Element::focus().
242 * page/FrameView.h: Rename focusNextPrevNode to advanceFocus and make
245 2006-10-03 Justin Garcia <justin.garcia@apple.com>
249 <rdar://problem/4760612>
250 TOT REGRESSION: Repro assertion failure when forwarding draft in Range::compareBoundaryPoints
252 No layout test possible, attributedStringFrom:(DOMNode*)...etc isn't available to DRT.
255 (WebCore::Range::boundaryPointsValid): compareBoundaryPoints asserts that the incoming
256 positions are non-null since most of it's callers would be in a bad state if the positions
257 were null. boundaryPointsValid, which calls compareBoundaryPoints, is an exception.
258 Instead of removing the assert I've added nil checks in boundaryPointsValid, to keep it
259 from entering compareBoundaryPoints and hitting the assert.
261 2006-10-03 Adele Peterson <adele@apple.com>
265 Make code for turning off new listbox implementation mac-only, since there's no implementation on other platforms.
267 * html/HTMLSelectElement.cpp:
268 (WebCore::HTMLSelectElement::recalcStyle):
269 (WebCore::HTMLSelectElement::isKeyboardFocusable):
270 (WebCore::HTMLSelectElement::isMouseFocusable):
271 (WebCore::HTMLSelectElement::createRenderer):
272 (WebCore::HTMLSelectElement::setRecalcListItems):
273 (WebCore::HTMLSelectElement::notifyOptionSelected):
274 (WebCore::HTMLSelectElement::defaultEventHandler):
276 2006-10-04 Darin Adler <darin@apple.com>
280 - fix http://bugs.webkit.org/show_bug.cgi?id=11132
281 Caret disappears when you're typing
283 * editing/SelectionController.cpp:
284 (WebCore::SelectionController::setSelection): Remove unnecessary call to
285 clearCaretRectIfNeeded. The recomputeCaretRect now takes care of this.
286 (WebCore::SelectionController::recomputeCaretRect): Explicitly set m_needsLayout
287 to false so we can get the old caret repaint rect. Later we need to change the
288 design so getting the rect doesn't have a side effect of causing a layout without
291 2006-10-03 David Harrison <harrison@apple.com>
295 <rdar://problem/4671286> Candidate Window isn't displayed and only first candidate is displayed at typing location.
298 * fast/text/justified-text-rect.html
300 * bridge/mac/WebCoreFrameBridge.mm:
301 (-[WebCoreFrameBridge convertToNSRange:]):
302 (-[WebCoreFrameBridge convertToDOMRange:]):
303 Make the selection's root editable element (or the document itself) be
304 the basis for NSRange conversions. This supports "shadow DOM" like
305 that for text fields and text areas.
307 * editing/CompositeEditCommand.cpp:
308 (WebCore::CompositeEditCommand::moveParagraphs):
309 Pass the document element as the scope.
311 * editing/TextIterator.cpp:
312 (WebCore::TextIterator::rangeFromLocationAndLength):
313 Make the first parameter the scope.
315 * editing/TextIterator.h:
316 Make the first parameter of rangeFromLocationAndLength() the scope.
318 2006-10-03 Nikolas Zimmermann <zimmermann@kde.org>
324 * CMakeLists.txt: Add counter related files.
326 2006-10-03 Mark Rowe <bdash@webkit.org>
330 http://bugs.webkit.org/show_bug.cgi?id=10981
331 Linux/GDK build fixes
333 Based on a patch by Krzysztof Kowalczyk.
335 * WebCoreSources.bkl:
336 * platform/gdk/FrameGdk.cpp:
338 (WebCore::FrameGdk::handleGdkEvent):
339 * platform/gdk/PlatformScrollBar.h: Added.
340 (WebCore::PlatformScrollBar::isWidget):
341 * platform/gdk/ScrollViewGdk.cpp:
342 * platform/gdk/TemporaryLinkStubs.cpp:
343 (FrameView::passMousePressEventToScrollbar):
344 (FrameView::passMousePressEventToSubframe):
345 (FrameView::passMouseReleaseEventToSubframe):
346 (FrameView::passMouseMoveEventToSubframe):
347 (FrameView::passWheelEventToSubframe):
349 (Widget::invalidate):
350 (Widget::invalidateRect):
351 (ScrollView::wheelEvent):
352 (ScrollView::convertToContainingWindow):
353 (ScrollView::convertFromContainingWindow):
354 (GraphicsContext::clip):
355 (PlatformScrollBar::PlatformScrollBar):
356 (PlatformScrollBar::updateThumbPosition):
357 (PlatformScrollBar::updateThumbProportion):
358 (ScrollBar::ScrollBar):
359 (ScrollBar::setProportion):
360 (WebCore::supportedKeySizes):
361 (WebCore::signedPublicKeyAndChallengeString):
362 * platform/gdk/WheelEventGdk.cpp:
363 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
364 * platform/gdk/WidgetGdk.cpp:
365 (WebCore::Widget::convertToContainingWindow):
366 (WebCore::Widget::convertFromContainingWindow):
368 2006-10-02 Adam Roben <aroben@apple.com>
372 Let Windows determine which mouse button is pressed.
374 * platform/PlatformMouseEvent.h: Add message parameter to constructor.
375 * platform/win/MouseEventWin.cpp:
376 (WebCore::PlatformMouseEvent::PlatformMouseEvent): Use message
377 parameter to determine which mouse button is pressed.
379 2006-10-02 Justin Garcia <justin.garcia@apple.com>
385 * editing/SelectionController.cpp:
386 (WebCore::SelectionController::empty):
387 * editing/SelectionController.h:
389 2006-10-02 Justin Garcia <justin.garcia@apple.com>
393 <rdar://problem/4755287>
394 Writely Editor: Crash occurs at WebCore::maxDeepOffset(WebCore::Node const*) when attempting to create a OL/UL following a HR element
396 * editing/markup.cpp:
397 (WebCore::createMarkup): Migrate to isBlock (isBlockFlow is true for inline replaced
398 elements). Don't skip blocks that aren't containers (like horizontal rules).
400 2006-10-03 Darin Adler <darin@apple.com>
402 Reviewed by Justin Garcia.
404 - correct mistaken code that would restart blinking every
405 time "invalidateSelection" is called even if the caret
408 * editing/SelectionController.h:
409 * editing/SelectionController.cpp:
410 (WebCore::SelectionController::setSelection): Update for name change.
411 (WebCore::SelectionController::recomputeCaretRect): New function.
412 Computes caret rect and does any necessary invalidation if the rect
414 (WebCore::SelectionController::invalidateCaretRect): Renamed from
415 needsCaretRepaint. Invalidates the caret rect unconditionally. Also
416 calls recomputeCaretRect as a side effect.
419 (WebCore::Frame::invalidateSelection): Remove unneeded call to
420 clearCaretRectIfNeeded.
421 (WebCore::Frame::clearCaretRectIfNeeded): Updated for name change.
422 (WebCore::Frame::selectionLayoutChanged): Restructured to use the new
423 recomputeCaretRect function and not restart blinking if caret has
424 not changed position.
425 (WebCore::Frame::caretBlinkTimerFired): Removed some checks that
426 are not needed since selectionLayoutChanged already checks these.
428 * page/FramePrivate.h: Removed unused m_blinkCaret.
430 2006-10-02 Beth Dakin <bdakin@apple.com>
434 Build fix. Add counters to vcproj.
436 * WebCore.vcproj/WebCore/WebCore.vcproj:
438 2006-10-02 Brady Eidson <beidson@apple.com>
442 If the Icon DB schema changes underneath you, the latest ToT can crash and burn when writing
443 icon data out because we don't correctly check SQL error conditions.
445 * loader/icon/IconDataCache.cpp:
446 (WebCore::IconDataCache::writeToDatabase):
448 2006-10-02 Steve Falkenburg <sfalken@apple.com>
452 Added method to find out whether a layout has occurred.
454 * page/FrameView.cpp:
455 (WebCore::FrameView::didFirstLayout):
458 2006-10-02 Beth Dakin <bdakin@apple.com>
462 Initial implementation of CSS2 counters. See http://
463 bugs.webkit.org/show_bug.cgi?id=4980 for more details.
465 * WebCore.xcodeproj/project.pbxproj:
466 * css/CSSComputedStyleDeclaration.cpp:
467 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Return
468 the increment/reset list now that this is implemented.
469 * css/CSSPrimitiveValue.cpp:
470 (WebCore::CSSPrimitiveValue::cssText):
472 (WebCore::Counter::Counter):
473 (WebCore::Counter::~Counter):
474 (WebCore::Counter::identifier):
475 (WebCore::Counter::listStyle):
476 (WebCore::Counter::separator):
477 (WebCore::Counter::listStyleNumber):
478 (WebCore::Counter::setIdentifier):
479 (WebCore::Counter::setListStyle):
480 (WebCore::Counter::setSeparator):
482 (WebCore::CSSParser::addProperty): Take care of reset/increment
483 (WebCore::CSSParser::parseValue):
484 (WebCore::CSSParser::parseContent): content can now take counters
485 (WebCore::CSSParser::parseCounterContent): Parse counter() and
487 (WebCore::CSSParser::parseCounter): Parse counter-reset and
490 * css/cssstyleselector.cpp:
491 (WebCore::CSSStyleSelector::matchUARules):
492 (WebCore::CSSStyleSelector::applyProperty):
493 * platform/PlatformString.h:
494 * platform/String.cpp:
495 (WebCore::String::insert): Implemented a version of insert that
496 accepts a UChar* and a length.
497 * platform/StringImpl.cpp:
498 (WebCore::StringImpl::insert): Same as above.
499 * platform/StringImpl.h:
500 * rendering/CounterListItem.h: Added.
501 * rendering/CounterNode.cpp: Added.
502 (WebCore::CounterNode::CounterNode):
503 (WebCore::CounterNode::insertAfter):
504 (WebCore::CounterNode::removeChild):
505 (WebCore::CounterNode::remove):
506 (WebCore::CounterNode::setUsesSeparator):
507 (WebCore::CounterNode::recountAndGetNext):
508 (WebCore::CounterNode::recountTree):
509 (WebCore::CounterNode::setSelfDirty):
510 (WebCore::CounterNode::setParentDirty):
511 * rendering/CounterNode.h: Added.
512 (WebCore::CounterNode::~CounterNode):
513 (WebCore::CounterNode::parent):
514 (WebCore::CounterNode::previousSibling):
515 (WebCore::CounterNode::nextSibling):
516 (WebCore::CounterNode::firstChild):
517 (WebCore::CounterNode::lastChild):
518 (WebCore::CounterNode::value):
519 (WebCore::CounterNode::setValue):
520 (WebCore::CounterNode::count):
521 (WebCore::CounterNode::setCount):
522 (WebCore::CounterNode::setHasSeparator):
523 (WebCore::CounterNode::isReset):
524 (WebCore::CounterNode::hasSeparator):
525 (WebCore::CounterNode::willNeedLayout):
526 (WebCore::CounterNode::setWillNeedLayout):
527 (WebCore::CounterNode::isRoot):
528 (WebCore::CounterNode::setRenderer):
529 (WebCore::CounterNode::renderer):
530 * rendering/CounterResetNode.cpp: Added.
531 (WebCore::CounterResetNode::CounterResetNode):
532 (WebCore::CounterResetNode::insertAfter):
533 (WebCore::CounterResetNode::removeChild):
534 (WebCore::CounterResetNode::recountAndGetNext):
535 (WebCore::CounterResetNode::setParentDirty):
536 (WebCore::CounterResetNode::updateTotal):
537 * rendering/CounterResetNode.h: Added.
538 (WebCore::CounterResetNode::firstChild):
539 (WebCore::CounterResetNode::lastChild):
540 (WebCore::CounterResetNode::isReset):
541 (WebCore::CounterResetNode::total):
542 * rendering/RenderContainer.cpp:
543 (WebCore::RenderContainer::updatePseudoChildForObject): Account for
545 * rendering/RenderCounter.cpp: Added.
546 (WebCore::RenderCounter::RenderCounter):
547 (WebCore::RenderCounter::layout):
549 (WebCore::toLetterString):
551 (WebCore::RenderCounter::convertValueToType):
552 (WebCore::RenderCounter::calcMinMaxWidth):
553 * rendering/RenderCounter.h: Added.
554 (WebCore::RenderCounter::renderName):
555 (WebCore::RenderCounter::isCounter):
556 * rendering/RenderObject.cpp:
557 (WebCore::getRenderObjectsToCounterNodeMaps): Maps RenderObjects to
559 (WebCore::RenderObject::RenderObject):
560 (WebCore::RenderObject::destroy): Destroy the maps.
561 (WebCore::RenderObject::findCounter): Finds/creates counters.
562 * rendering/RenderObject.h:
563 (WebCore::RenderObject::isCounter):
564 * rendering/RenderStyle.cpp:
565 (WebCore::StyleVisualData::StyleVisualData):
566 (WebCore::RenderStyle::arenaDelete):
567 (WebCore::RenderStyle::RenderStyle):
568 (WebCore::RenderStyle::diff):
569 (WebCore::RenderStyle::setContent):
570 (WebCore::ContentData::clearContent):
571 (WebCore::RenderStyle::counterDataEquivalent):
572 (WebCore::hasCounter):
573 (WebCore::RenderStyle::hasCounterReset):
574 (WebCore::RenderStyle::hasCounterIncrement):
575 (WebCore::readCounter):
576 (WebCore::RenderStyle::counterReset):
577 (WebCore::RenderStyle::counterIncrement):
578 * rendering/RenderStyle.h:
579 (WebCore::StyleVisualData::operator==):
580 (WebCore::CounterData::CounterData):
581 (WebCore::CounterData::identifier):
582 (WebCore::CounterData::listStyle):
583 (WebCore::CounterData::separator):
584 (WebCore::ContentData::contentCounter):
585 (WebCore::ContentData::):
586 (WebCore::RenderStyle::counterIncrement):
587 (WebCore::RenderStyle::counterReset):
588 (WebCore::RenderStyle::setCounterIncrement):
589 (WebCore::RenderStyle::setCounterReset):
590 (WebCore::RenderStyle::setCounterResetList):
591 (WebCore::RenderStyle::setCounterIncrementList):
592 (WebCore::RenderStyle::counterResetValueList):
593 (WebCore::RenderStyle::counterIncrementValueList):
595 2006-10-02 Adele Peterson <adele@apple.com>
599 - Fix for <rdar://problem/4463841> Switch to use new list box implementation for <select multiple>
601 There are a few outstanding issues, so I've left the old code in for now. So you can use the old-style listboxes
602 by using "-webkit-appearance:none".
606 2006-10-02 David Harrison <harrison@apple.com>
608 Reverted the code part of r16696, my patch for <rdar://problem/4641262>, because the problem was
609 addressed at a deeper level by r16696, the patch for <http://bugs.webkit.org/show_bug.cgi?id=10842>.
610 Left the layout test.
612 * rendering/bidi.cpp:
613 (WebCore::checkMidpoints):
615 2006-10-02 Nikolas Zimmermann <zimmermann@kde.org>
617 Reviewed by eseidel. Landed by eseidel.
621 * platform/qt/TemporaryLinkStubs.cpp: s/DeprecatedStringList/Vector<String>/
622 (WebCore::supportedKeySizes):
624 2006-10-02 Nikolas Zimmermann <zimmermann@kde.org>
626 Reviewed by eseidel & mjs. Landed by eseidel.
628 Fix Qt/Linux build with older gcc 3.3.4.
629 http://bugs.webkit.org/show_bug.cgi?id=11116
631 As discussed with Maciej, the GCC_ROOT_NS_HACK
632 can be completely removed, as well as the friendship
633 between cacheGlobalObject & the JS* objects.
635 * bindings/scripts/CodeGeneratorJS.pm: Remove friendship.
636 * platform/image-decoders/png/pnggccrd.c: Fix comments for gcc3.
637 (png_read_filter_row_mmx_avg):
638 * platform/image-decoders/png/pngvcrd.c: Ditto.
640 (png_read_filter_row_mmx_avg):
642 2006-10-01 Maciej Stachowiak <mjs@apple.com>
644 Rubber stamped by Alexey.
646 - reverted fix for http://bugs.webkit.org/show_bug.cgi?id=10893 since it led to layout test crashes
650 2006-10-01 Eric Seidel <eric@webkit.org>
654 Eliminate a few more hotspots in SVG drawing code.
656 No test cases were harmed in the making of this patch. (And SVG has no perf tests.)
658 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
659 (WebCore::KRenderingPaintServerSolidQuartz::setup): use a single shared colorspace, avoid a few mallocs
660 * platform/mac/ColorMac.mm:
661 (+[WebCoreControlTintObserver WebCore]): store a single shared colorspace instance
663 2006-10-01 Geoffrey Garen <ggaren@apple.com>
667 More frame/iframe merging.
669 - Removed needWidgetUpdate and related code. needWidgetUpdate is always
670 false, so this was dead code.
671 - Removed FIXME about setInViewSourceMode inside openURL(). openURL(), rather
672 than attach(), is the correct place for setInViewSourceMode, because
673 openURL() is the function that creates our frame.
674 - Moved IFRAME insertedIntoDocument() code into FRAME, and removed FRAME
675 code that did the same thing in other places.
676 - Made FRAME's attach() method suffuciently generic so that IFRAME could
677 call up to it, rather than skipping its superclass and calling up directly
679 - Changed a few IFRAME up-calls to ELEMENT into up-calls to FRAME.
680 - Replaced ad hoc frame loading code in FRAME::attach() with call to
681 openURL(), the designated frame loading function.
683 Layout tests pass. I added a layout test for viewsource mode, since I
684 broke it in the course of writing this patch.
686 2006-10-01 Anders Carlsson <acarlsson@apple.com>
691 (WebCore::Document::recalcStyleSelector):
693 Get rid of availableStyleSheets() and remove DeprecatedStringList.h include.
696 Remove DeprecatedStringList class forward declaration.
698 * editing/markup.cpp:
699 Include DeprecatedStringList.h here since it's not included by Document.h anymore.
701 * kcanvas/KCanvasTreeDebug.cpp:
702 * kcanvas/KCanvasTreeDebug.h:
703 Remove unused functions.
709 Fixup DeprecatedStringList.h includes.
711 2006-09-30 David Harrison <harrison@apple.com>
713 Reviewed by John Sullivan.
715 <rdar://problem/4641262> REGRESSION: Japanese text corrupts on wrapping point
717 Problem was that the decision to trim was based only on whether the character
718 is a soft hyphen, which caused pretty much any Japanese character to go.
719 Changed to decide based on whether the character is ignorable whitespace.
722 * fast/text/international/wrap-CJK-001.html
724 * rendering/bidi.cpp:
725 (WebCore::isTrimmableChar):
726 New. Checks whether character is whitespace that can be ignored
727 according to the text node's style.
728 trimmed from the end of wrapped line.
729 (WebCore::checkMidpoints):
730 Call isTrimmable() rather than checking for char != SOFT_HYPHEN.
732 2006-10-01 Anders Carlsson <acarlsson@apple.com>
734 Reviewed by Mitz Pettel.
736 Convert the SVG code to use Vector<String> instead of DeprecatedStringList.
738 * ksvg2/svg/SVGColor.cpp:
739 (WebCore::SVGColor::setRGBColor):
740 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
741 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
742 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
743 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
744 (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
745 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
746 (SVGFESpecularLightingElement::parseMappedAttribute):
747 * ksvg2/svg/SVGFETurbulenceElement.cpp:
748 (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
749 * ksvg2/svg/SVGLengthList.cpp:
750 * ksvg2/svg/SVGNumberList.cpp:
751 (SVGNumberList::parse):
752 * ksvg2/svg/SVGNumberList.h:
753 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
754 (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
755 * ksvg2/svg/SVGStringList.cpp:
756 (WebCore::SVGStringList::reset):
757 * ksvg2/svg/SVGStringList.h:
758 * ksvg2/svg/SVGTransformable.cpp:
759 (SVGTransformable::parseTransformAttribute):
761 2006-10-01 Nikolas Zimmermann <zimmermann@kde.org>
763 Reviewed by Eric, tweaked and landed by ap.
768 * platform/qt/PlatformScrollBar.h:
769 * platform/qt/TemporaryLinkStubs.cpp:
770 (WebCore::ScrollBar::ScrollBar):
771 (WebCore::PlatformScrollBar::PlatformScrollBar):
772 (FrameView::passMousePressEventToSubframe):
773 (FrameView::passMouseMoveEventToSubframe):
774 (FrameView::passMouseReleaseEventToSubframe):
775 (FrameView::passWheelEventToSubframe):
776 (FrameView::passMousePressEventToScrollbar):
777 * ksvg2/svg/SVGDocument.h:
779 2006-10-01 Mitz Pettel <opendarwin.org@mitzpettel.com>
783 Fix for http://bugs.webkit.org/show_bug.cgi?id=10190
784 REGRESSION: Repro crash when navigating away from an image document that hasn't finished loading
786 No test case added (probably requires new DumpRenderTree functionality)
788 * rendering/RenderImage.cpp:
789 (WebCore::RenderImage::imageChanged): Added early return if the document is
792 2006-10-01 Graham Dennis <graham.dennis@gmail.com>
796 Fix for http://bugs.webkit.org/show_bug.cgi?id=10842
797 REGRESSION (r15418): contenteditable div truncates rightmost Japanese character
799 Make sure we only break after a space (and not any other valid line-break) if
800 the style is -webkit-line-break: after-white-space (e.g. for a contentEditable div).
801 I also did a logic shuffle at Mitz's request to prevent doing an if on the same expression
802 twice in quick succession.
804 * rendering/bidi.cpp:
805 (WebCore::RenderBlock::findNextLineBreak):
807 2006-10-01 Alexey Proskuryakov <ap@nypop.com>
809 Reviewed by Maciej and Darin.
811 http://bugs.webkit.org/show_bug.cgi?id=4372
812 JavaScript document.write page form does not submit in Safari
814 Test: fast/forms/document-write.html
817 (WebCore::Frame::submitForm): Don't check for parsing().
819 2006-10-01 Alexey Proskuryakov <ap@nypop.com>
823 * bridge/mac/FrameViewMac.mm: Add missing #imports.
825 2006-10-01 Dave Hyatt <hyatt@apple.com>
827 Refactor the code that passes mouse presses to the Mac scrollbar and make it cross-platform.
831 * bridge/mac/FrameMac.mm:
832 (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
833 * bridge/mac/FrameViewMac.mm:
834 (WebCore::FrameView::passMousePressEventToScrollbar):
835 * page/FrameView.cpp:
836 (WebCore::FrameView::handleMousePressEvent):
837 (WebCore::FrameView::setMousePressed):
839 * platform/win/TemporaryLinkStubs.cpp:
840 (FrameView::passMousePressEventToScrollbar):
842 2006-09-30 Sam Weinig <sam.weinig@gmail.com>
846 Patch for http://bugs.webkit.org/show_bug.cgi?id=11102
847 Add more SVG Objective-C DOM bindings
849 - Auto-generate Objective-C DOM bindings for DOMSVGAElement,
850 DOMSVGAnimateColorElement, DOMSVGAnimateElement, DOMSVGAnimateTransformElement,
851 DOMSVGAnimatedPathData, DOMSVGAnimatedPoints, DOMSVGAnimatedPreserveAspectRatio,
852 DOMSVGAnimationElement, DOMSVGCircleElement, DOMSVGClipPathElement, DOMSVGColor,
853 DOMSVGCursorElement, DOMSVGDefsElement, DOMSVGDescElement, DOMSVGDocument,
854 DOMSVGEllipseElement, DOMSVGPreserveAspectRatio, and DOMSVGURIReference.
856 * DerivedSources.make:
857 * WebCore.xcodeproj/project.pbxproj:
858 * bindings/objc/DOMInternal.h:
859 * bindings/objc/DOMSVG.h:
860 * bindings/scripts/CodeGeneratorObjC.pm:
861 * ksvg2/svg/SVGAElement.idl:
862 * ksvg2/svg/SVGAnimateColorElement.idl:
863 * ksvg2/svg/SVGAnimateElement.idl:
864 * ksvg2/svg/SVGAnimateTransformElement.idl:
865 * ksvg2/svg/SVGAnimatedPathData.idl:
866 * ksvg2/svg/SVGAnimatedPoints.idl:
867 * ksvg2/svg/SVGAnimatedPreserveAspectRatio.idl:
868 * ksvg2/svg/SVGAnimationElement.idl:
869 * ksvg2/svg/SVGCircleElement.idl:
870 * ksvg2/svg/SVGClipPathElement.idl:
871 * ksvg2/svg/SVGColor.idl:
872 * ksvg2/svg/SVGCursorElement.idl:
873 * ksvg2/svg/SVGDefsElement.idl:
874 * ksvg2/svg/SVGDescElement.idl:
875 * ksvg2/svg/SVGDocument.idl:
876 * ksvg2/svg/SVGEllipseElement.idl:
877 * ksvg2/svg/SVGPointList.idl:
878 * ksvg2/svg/SVGPreserveAspectRatio.idl:
879 * ksvg2/svg/SVGRect.idl:
880 * ksvg2/svg/SVGSVGElement.idl:
882 2006-09-30 Maciej Stachowiak <mjs@apple.com>
888 * platform/FloatRect.h:
889 (WebCore::FloatRect::contains): Added; not exactly the same semantic as IntRect containment
890 but more appropriate for path-type stuff.
891 * platform/cg/PathCG.cpp:
892 (WebCore::Path::contains): Don't use enclosingIntRect, just use FloatRect::contains.
894 2006-09-30 Alexey Proskuryakov <ap@nypop.com>
898 http://bugs.webkit.org/show_bug.cgi?id=11011
899 External CSS is parsed as iso-8859-1 even though the main document is utf-8
901 Test: fast/encoding/css-charset-default.xhtml
903 * loader/CachedResourceClient.h:
904 (WebCore::CachedResourceClient::setCSSStyleSheet):
905 (WebCore::CachedResourceClient::setXSLStyleSheet):
906 Divided setStyleSheet into setCSSStyleSheet and setXSLStyleSheet. The former
907 takes an additional charset parameter, to be passed to CSSStyleSheet constructor.
909 * css/CSSImportRule.cpp:
910 (WebCore::CSSImportRule::setCSSStyleSheet):
911 (WebCore::CSSImportRule::insertedIntoParent): Default to parent stylesheet's charset.
912 * css/CSSImportRule.h:
914 * css/CSSStyleSheet.cpp:
915 (WebCore::CSSStyleSheet::CSSStyleSheet):
916 * css/CSSStyleSheet.h:
917 Added an m_charset member to be used when loading child stylesheets. Removed an unused m_implicit
918 member. Changed some String parameters to const String&.
920 * css/StyleSheet.cpp:
921 (WebCore::StyleSheet::StyleSheet):
923 Changed some String parameters to const String&. Removed an unused (even unimplemented) constructor.
925 * css/StyleSheetList.cpp:
926 (WebCore::StyleSheetList::length):
927 (WebCore::StyleSheetList::item):
928 * css/StyleSheetList.h:
929 Special-casing implicit stylesheets seemed to be dead code, removed.
932 (WebCore::Document::setCSSStyleSheet):
933 (WebCore::Document::recalcStyleSelector):
935 Renamed setStyleSheet() to setCSSStyleSheet().
937 * dom/ProcessingInstruction.cpp:
938 (WebCore::ProcessingInstruction::checkStyleSheet): Pass a correct charset to requestCSSStyleSheet().
939 (WebCore::ProcessingInstruction::setCSSStyleSheet):
940 (WebCore::ProcessingInstruction::setXSLStyleSheet):
941 (WebCore::ProcessingInstruction::parseStyleSheet):
942 * dom/ProcessingInstruction.h:
944 * html/HTMLLinkElement.cpp:
945 (WebCore::HTMLLinkElement::process): Default to document encoding if a charset attribute
947 (WebCore::HTMLLinkElement::setCSSStyleSheet):
948 * html/HTMLLinkElement.h:
950 * html/HTMLStyleElement.cpp:
951 (WebCore::HTMLStyleElement::childrenChanged):
952 * ksvg2/svg/SVGStyleElement.cpp:
953 (WebCore::SVGStyleElement::childrenChanged):
954 Inherit URL and charset from the document.
957 (WebCore::Cache::requestCSSStyleSheet):
959 Adjust for setStyleSheet() renaming.
961 * loader/CachedCSSStyleSheet.h: Removed an unused constructor.
962 * loader/CachedCSSStyleSheet.cpp:
963 (WebCore::CachedCSSStyleSheet::ref):
964 (WebCore::CachedCSSStyleSheet::deref):
965 (WebCore::CachedCSSStyleSheet::checkNotify):
966 Pass the encoding to setCSSStyleSheet().
968 * loader/CachedXSLStyleSheet.cpp:
969 (WebCore::CachedXSLStyleSheet::ref):
970 (WebCore::CachedXSLStyleSheet::checkNotify):
971 * loader/DocLoader.cpp:
972 (WebCore::DocLoader::requestCSSStyleSheet):
973 * loader/DocLoader.h:
975 (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
976 (WebCore::UserStyleSheetLoader::setCSSStyleSheet):
977 * xml/XSLImportRule.cpp:
978 (WebCore::XSLImportRule::setXSLStyleSheet):
979 (WebCore::XSLImportRule::loadSheet):
980 * xml/XSLImportRule.h:
981 Adjust for setStyleSheet() renaming.
983 2006-09-30 Rob Buis <buis@kde.org>
987 http://bugs.webkit.org/show_bug.cgi?id=11096
988 Hit testing for polylines fails
990 Fix Path::contains so it handles filled, non-closed paths too.
992 * platform/cg/PathCG.cpp:
993 (WebCore::Path::contains):
995 2006-09-30 Dave Hyatt <hyatt@apple.com>
997 Refactor subframe event handling to hide more of the Mac-specific logic from the cross-platform code.
998 Stub out a capturing API that mimics the way Web browsers capture events and route them to specific
999 subframes while the mouse is down.
1001 Reviewed by mitzpettel
1003 * bridge/mac/FrameMac.h:
1004 * bridge/mac/FrameMac.mm:
1005 (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
1006 (WebCore::FrameMac::passWheelEventToWidget):
1007 * bridge/mac/FrameViewMac.mm:
1008 (WebCore::FrameView::passMousePressEventToSubframe):
1009 (WebCore::FrameView::passMouseMoveEventToSubframe):
1010 (WebCore::FrameView::passMouseReleaseEventToSubframe):
1011 (WebCore::FrameView::passWheelEventToSubframe):
1014 * page/FrameView.cpp:
1015 (WebCore::subframeForTargetNode):
1016 (WebCore::FrameView::handleMousePressEvent):
1017 (WebCore::FrameView::handleMouseDoubleClickEvent):
1018 (WebCore::FrameView::handleMouseMoveEvent):
1019 (WebCore::FrameView::handleMouseReleaseEvent):
1020 (WebCore::FrameView::handleWheelEvent):
1022 * platform/ScrollBar.h:
1023 (WebCore::ScrollBar::handleMouseMoveEvent):
1024 (WebCore::ScrollBar::handleMouseOutEvent):
1025 * platform/Widget.h:
1026 (WebCore::Widget::handleMouseMoveEvent):
1027 (WebCore::Widget::handleMouseReleaseEvent):
1028 * platform/win/TemporaryLinkStubs.cpp:
1029 (FrameView::passMousePressEventToSubframe):
1030 (FrameView::passMouseMoveEventToSubframe):
1031 (FrameView::passMouseReleaseEventToSubframe):
1032 (FrameView::passWheelEventToSubframe):
1033 (Widget::capturingMouse):
1034 (Widget::setCapturingMouse):
1035 (Widget::capturingTarget):
1036 (Widget::capturingChild):
1037 (Widget::setCapturingChild):
1038 * rendering/RenderView.cpp:
1039 (WebCore::RenderView::paintBoxDecorations):
1041 2006-09-29 MorganL <morganl.webkit@yahoo.com>
1045 Fixes windows bustage:
1046 http://bugs.webkit.org/show_bug.cgi?id=11093
1048 * platform/win/PlatformScrollBar.h:
1049 * platform/win/TemporaryLinkStubs.cpp:
1050 (PlatformScrollBar::PlatformScrollBar):
1051 (ScrollBar::ScrollBar):
1053 2006-09-29 David Hyatt <hyatt@apple.com>
1055 Eliminate RenderLayer::gScrollBar in favor of caching the scrollbar hit
1056 in RenderObject::NodeInfo (and then propagating that Widget to
1057 MouseEventWithHitTestResults).
1059 This allows RenderListBox and RenderBlock to do the same thing when the
1060 mouse is over the scrollbar.
1062 Also land fix to support font-size: 0.
1064 Reviewed by mjs (scrollbar), eric (font-size)
1067 (WebCore::Document::prepareMouseEvent):
1069 (WebCore::Frame::passWidgetMouseDownEventToWidget):
1070 * page/FrameView.cpp:
1071 (WebCore::selectCursor):
1072 (WebCore::FrameView::handleMouseMoveEvent):
1073 (WebCore::FrameView::dispatchMouseEvent):
1074 * page/MouseEventWithHitTestResults.cpp:
1075 (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
1076 * page/MouseEventWithHitTestResults.h:
1077 (WebCore::MouseEventWithHitTestResults::scrollbar):
1078 * rendering/RenderBlock.cpp:
1079 (WebCore::RenderBlock::isPointInScrollbar):
1080 (WebCore::RenderBlock::nodeAtPoint):
1081 * rendering/RenderBlock.h:
1082 * rendering/RenderLayer.cpp:
1083 (WebCore::RenderLayer::hitTest):
1084 * rendering/RenderLayer.h:
1085 (WebCore::RenderLayer::getHiddenBehavior):
1086 * rendering/RenderListBox.cpp:
1087 (WebCore::RenderListBox::RenderListBox):
1088 (WebCore::RenderListBox::~RenderListBox):
1089 (WebCore::RenderListBox::isPointInScrollbar):
1090 * rendering/RenderListBox.h:
1091 * rendering/RenderObject.h:
1092 (WebCore::RenderObject::NodeInfo::NodeInfo):
1093 (WebCore::RenderObject::NodeInfo::scrollbar):
1094 (WebCore::RenderObject::NodeInfo::setScrollbar):
1096 2006-09-29 MorganL <morganl.webkit@yahoo.com>
1100 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11092
1102 * platform/win/ScrollViewWin.cpp:
1103 (WebCore::ScrollView::convertToContainingWindow):
1104 (WebCore::ScrollView::convertFromContainingWindow):
1105 * platform/win/WidgetWin.cpp:
1106 (WebCore::Widget::convertToContainingWindow):
1107 (WebCore::Widget::convertFromContainingWindow):
1109 2006-09-29 Adele Peterson <adele@apple.com>
1111 Updated with new argument for PlatformScrollBar.
1113 * platform/win/TemporaryLinkStubs.cpp:
1114 (PlatformScrollBar::PlatformScrollBar):
1116 2006-09-29 Adele Peterson <adele@apple.com>
1120 Fixing build bustage with cast to int.
1122 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::lastSelectedListIndex):
1124 2006-09-29 Adele Peterson <adele@apple.com>
1126 Fixing accidental include.
1128 * rendering/RenderListBox.cpp:
1130 2006-09-29 Adele Peterson <adele@apple.com>
1132 Adding RenderListBox files.
1134 * WebCore.vcproj/WebCore/WebCore.vcproj:
1136 2006-09-29 Adele Peterson <adele@apple.com>
1140 Initial implementation of engine-based list box control.
1142 * WebCore.xcodeproj/project.pbxproj: Added RenderListBox.h and RenderListBox.cpp
1144 * bridge/mac/FrameMac.h: Added _mouseDownMayStartAutoscroll.
1145 * bridge/mac/FrameMac.mm: Updated autoscroll code to use renderers instead of layers, so any renderer that implements autoscroll will work.
1146 (WebCore::FrameMac::FrameMac):
1147 (WebCore::FrameMac::handleMousePressEvent):
1148 (WebCore::FrameMac::handleMouseMoveEvent):
1149 (WebCore::FrameMac::mouseDown):
1152 (WebCore::Frame::handleMouseMoveEvent):
1153 (WebCore::Frame::scrollOverflow): Don't scroll list box here- this would cause arrow keys to scroll instead of select.
1154 (WebCore::Frame::handleAutoscroll): Updated to use a renderer instead of a layer when setting up autoscroll.
1155 (WebCore::Frame::autoscrollTimerFired): ditto.
1156 (WebCore::Frame::stopAutoscrollTimer): ditto.
1157 (WebCore::Frame::passWidgetMouseDownEventToWidget): Updated to check for list box's scroll bar.
1159 * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): Updated to use renderer unstead of layer for autoscroll.
1161 * page/FrameView.cpp: Keep track of current mouse position so this can be used for list box autoscroll.
1162 (WebCore::FrameViewPrivate::reset):
1163 (WebCore::FrameView::currentMousePosition):
1164 (WebCore::FrameView::handleMousePressEvent):
1165 (WebCore::FrameView::handleMouseDoubleClickEvent):
1166 (WebCore::selectCursor):
1167 (WebCore::FrameView::handleMouseMoveEvent):
1168 (WebCore::FrameView::handleMouseReleaseEvent):
1171 * platform/ScrollBar.cpp: (WebCore::ScrollBar::ScrollBar): Added controlSize argument. The list box will use a smaller scroll bar size.
1172 * platform/ScrollBar.h:
1174 (WebCore::ScrollBar::controlSize):
1175 * platform/mac/PlatformScrollBar.h:
1176 * platform/mac/PlatformScrollBarMac.mm:
1177 (NSControlSizeForScrollBarControlSize):
1178 (-[WebCoreScrollBar initWithPlatformScrollBar:]):
1179 (WebCore::PlatformScrollBar::PlatformScrollBar):
1181 * rendering/RenderBlock.h:
1182 * rendering/RenderLayer.cpp: (WebCore::RenderLayer::createScrollbar): Updated to pass regular control size to scrollbar constructor.
1183 * rendering/RenderLayer.h:
1184 * rendering/RenderObject.cpp:
1185 (WebCore::RenderObject::shouldAutoscroll):
1186 (WebCore::RenderObject::autoscroll):
1187 * rendering/RenderObject.h: (WebCore::RenderObject::isListBox):
1189 * css/html4.css: Added properties for new list boxes.
1191 * html/HTMLOptionElement.cpp:
1192 (WebCore::HTMLOptionElement::setSelected): Doesn't allow selection to be changed here if the option is disabled.
1193 (WebCore::HTMLOptionElement::disabled): Added. Checks the parent's disabled status.
1194 * html/HTMLOptionElement.h: Added disabled method.
1196 * html/HTMLSelectElement.cpp: Added appearance switch for new list box implementation.
1197 (WebCore::HTMLSelectElement::recalcStyle):
1198 (WebCore::HTMLSelectElement::lastSelectedListIndex):
1199 (WebCore::HTMLSelectElement::deselectItems):
1200 (WebCore::HTMLSelectElement::setSelectedIndex):
1201 (WebCore::HTMLSelectElement::isKeyboardFocusable):
1202 (WebCore::HTMLSelectElement::isMouseFocusable):
1203 (WebCore::HTMLSelectElement::createRenderer):
1204 (WebCore::HTMLSelectElement::recalcListItems):
1205 (WebCore::HTMLSelectElement::setRecalcListItems):
1206 (WebCore::HTMLSelectElement::reset):
1207 (WebCore::HTMLSelectElement::notifyOptionSelected):
1208 (WebCore::HTMLSelectElement::defaultEventHandler): Added code to select options for list box when clicking and using arrow keys.
1209 (WebCore::HTMLSelectElement::nextSelectableListIndex):
1210 (WebCore::HTMLSelectElement::previousSelectableListIndex):
1211 * html/HTMLSelectElement.h:
1213 * rendering/RenderTheme.cpp: Added support for ListBoxAppearance
1214 (WebCore::RenderTheme::paint):
1215 (WebCore::RenderTheme::paintBorderOnly):
1216 (WebCore::RenderTheme::paintDecorations):
1217 (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
1218 (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
1219 (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
1220 (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
1221 (WebCore::RenderTheme::isControlStyled):
1222 (WebCore::RenderTheme::supportsFocusRing):
1223 * rendering/RenderTheme.h:
1224 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::isControlStyled):
1226 * rendering/RenderListBox.cpp: Added.
1227 (WebCore::RenderListBox::RenderListBox):
1228 (WebCore::RenderListBox::~RenderListBox):
1229 (WebCore::RenderListBox::setStyle):
1230 (WebCore::RenderListBox::updateFromElement):
1231 (WebCore::RenderListBox::calcMinMaxWidth):
1232 (WebCore::RenderListBox::size):
1233 (WebCore::RenderListBox::numItems):
1234 (WebCore::RenderListBox::calcHeight):
1235 (WebCore::RenderListBox::baselinePosition):
1236 (WebCore::RenderListBox::itemBoundingBoxRect):
1237 (WebCore::RenderListBox::paintObject):
1238 (WebCore::RenderListBox::paintScrollbar):
1239 (WebCore::RenderListBox::paintItemForeground):
1240 (WebCore::RenderListBox::paintItemBackground):
1241 (WebCore::RenderListBox::scrollBarTarget):
1242 (WebCore::RenderListBox::isPointInScrollbar):
1243 (WebCore::RenderListBox::optionAtPoint):
1244 (WebCore::RenderListBox::autoscroll):
1245 (WebCore::RenderListBox::scrollToRevealElementAtListIndex):
1246 (WebCore::RenderListBox::scroll):
1247 (WebCore::RenderListBox::valueChanged):
1248 * rendering/RenderListBox.h: Added.
1249 (WebCore::RenderListBox::isListBox):
1250 (WebCore::RenderListBox::selectionChanged):
1251 (WebCore::RenderListBox::setSelectionChanged):
1252 (WebCore::RenderListBox::canHaveChildren):
1253 (WebCore::RenderListBox::renderName):
1254 (WebCore::RenderListBox::setOptionsChanged):
1255 (WebCore::RenderListBox::shouldAutoscroll):
1256 (WebCore::RenderListBox::listIndexIsVisible):
1258 2006-09-29 Beth Dakin <bdakin@apple.com>
1262 We had a bug where html4.css was ignoring Media Queries. In the end
1263 the problem was that we were trying to send a char* to the
1264 MediaQueryEvaluator constructor that expects a String, but the
1265 char* got interpreted as a bool, the wrong constructor was called,
1266 and the media type was never set.
1268 No test case possible since this only affects html4.css
1270 * css/MediaQueryEvaluator.cpp: New constructor that expects takes a
1272 (WebCore::MediaQueryEvaluator):
1273 * css/MediaQueryEvaluator.h: Same.
1275 2006-09-29 Geoffrey Garen <ggaren@apple.com>
1277 Reviewed by John, Maciej.
1279 Integrated some frame and iframe code. I'm trying to fix up frame ownership
1280 and loading. Reducing the number of different code paths involved
1281 seemed like a good first step.
1283 As a side effect, I fixed a bug where FRAME elements would report their
1284 src attributes as relative, rather than compelete, URLs. (IFRAME elements
1285 had the correct complete URL behavior.)
1287 * html/HTMLFrameElement.cpp:
1288 (WebCore::HTMLFrameElement::isURLAllowed): Fixed comment typo
1289 (WebCore::HTMLFrameElement::openURL):
1290 (1) Removed checks that requestFrame does for us
1291 (2) Added isURLAllowed check, to have one clear bottleneck for it
1292 (3) Added viewsource check, to have one clear bottleneck for it
1293 (WebCore::HTMLFrameElement::close): Changed to use the common contentFrame()
1294 method, instead of finding our content frame in our own unique way.
1295 (WebCore::HTMLFrameElement::setLocation): Removed isURLAllowed check,
1296 since openURL does this for us now.
1297 (WebCore::HTMLFrameElement::src): Return complete URL instead of relative.
1298 This is what FF does, and it made no sense to have different behaviors
1299 for FRAME and IFRAME elements.
1300 * html/HTMLIFrameElement.cpp:
1301 (WebCore::HTMLIFrameElement::HTMLIFrameElement): Removed duplicate init
1303 * html/HTMLIFrameElement.h: Removed src() and openURL() methods, since
1304 HTMLFrameElement now does everything we need.
1306 2006-09-30 Nikolas Zimmermann <zimmermann@kde.org>
1313 * platform/qt/ScrollViewQt.cpp:
1314 (WebCore::ScrollView::convertToContainingWindow):
1315 (WebCore::ScrollView::convertFromContainingWindow):
1316 * platform/qt/TemporaryLinkStubs.cpp:
1317 (WebCore::signedPublicKeyAndChallengeString):
1318 * platform/qt/WidgetQt.cpp:
1319 (WebCore::Widget::convertToContainingWindow):
1320 (WebCore::Widget::convertFromContainingWindow):
1322 2006-09-29 Sam Weinig <sam.weinig@gmail.com>
1326 Patch for http://bugs.webkit.org/show_bug.cgi?id=11082
1327 Simplify Internal methods for the auto-generated Objective-C DOM code
1329 - Auto-generate the internal methods for more Objective-C classes.
1331 * WebCore.xcodeproj/project.pbxproj:
1332 * bindings/objc/DOM.mm:
1333 * bindings/objc/DOMCSS.mm:
1334 (-[DOMStyleSheet WebCore::]):
1335 (+[DOMStyleSheet _styleSheetWith:WebCore::]):
1336 (-[DOMCSSRule WebCore::]):
1337 (-[DOMCSSRule _initWithCSSRule:WebCore::]):
1338 (+[DOMCSSRule _CSSRuleWith:WebCore::]):
1339 (-[DOMCSSValue WebCore::]):
1340 (-[DOMCSSValue _initWithCSSValue:WebCore::]):
1341 (+[DOMCSSValue _CSSValueWith:WebCore::]):
1342 * bindings/objc/DOMHTMLAppletElement.mm:
1343 (-[DOMHTMLAppletElement WebCore::]):
1344 (+[DOMHTMLAppletElement _HTMLOptionElementWith:WebCore::]):
1345 * bindings/objc/DOMHTMLEmbedElement.mm:
1346 (-[DOMHTMLEmbedElement WebCore::]):
1347 (+[DOMHTMLEmbedElement _HTMLEmbedElementWith:WebCore::]):
1348 * bindings/objc/DOMInternal.h:
1349 * bindings/objc/DOMInternal.mm:
1350 * bindings/scripts/CodeGeneratorObjC.pm:
1351 * css/CSSCharsetRule.idl:
1352 * css/CSSFontFaceRule.idl:
1353 * css/CSSImportRule.idl:
1354 * css/CSSMediaRule.idl:
1355 * css/CSSPageRule.idl:
1356 * css/CSSPrimitiveValue.idl:
1357 * css/CSSStyleRule.idl:
1358 * css/CSSStyleSheet.idl:
1359 * css/CSSUnknownRule.idl:
1360 * css/CSSValueList.idl:
1361 * dom/KeyboardEvent.idl:
1362 * dom/MouseEvent.idl:
1363 * dom/MutationEvent.idl:
1364 * dom/NodeIterator.idl:
1365 * dom/OverflowEvent.idl:
1367 * dom/WheelEvent.idl:
1369 2006-09-29 David Harrison <harrison@apple.com>
1371 Reviewed by John Sullivan.
1373 <rdar://problem/4663772> REGRESSION: Cannot type in Japanese after replying to a particular message
1374 <rdar://problem/4673293> REGRESSION: Can't enter the Japanese characters in Mail or Blot
1377 * fast/text/attributed-substring-from-range-001.html
1379 * bridge/mac/FrameMac.mm:
1380 (WebCore::FrameMac::attributedString):
1381 Handle non-zero offsets when start and/or end node is a container. Offset used to be ignored in this case.
1382 Also, add validation of the range.
1384 2006-09-29 Rob Buis <buis@kde.org>
1388 http://bugs.webkit.org/show_bug.cgi?id=10893
1389 InsertRule can not handle @import statements
1391 Allow @import as part of a css rule.
1395 2006-09-28 David Hyatt <hyatt@apple.com>
1397 Switch over the Mac-specific uses of viewportToContents/contentsToViewport.
1399 * bridge/mac/FrameMac.mm:
1400 (WebCore::FrameMac::eventMayStartDrag):
1401 (WebCore::FrameMac::dragHysteresisExceeded):
1402 (WebCore::FrameMac::mouseDown):
1403 (WebCore::FrameMac::shouldDragAutoNode):
1404 (WebCore::FrameMac::sendContextMenuEvent):
1405 * bridge/mac/WebCoreFrameBridge.mm:
1406 (-[WebCoreFrameBridge _visiblePositionForPoint:]):
1408 2006-09-28 Dave Hyatt <hyatt@apple.com>
1410 This patch eliminates viewportToContents/contentsToViewport in favor of convertTo/FromContainingWindow.
1411 ScrollView now subclasses these methods to factor in its scrollOffset and to deal with the document
1414 Reviewed by mjs (the convertTo/From changes), (I added the elimination of viewportToContents to
1415 the patch after review, once I realized that these new functions essentially do the same thing.)
1417 * dom/EventTargetNode.cpp:
1418 (WebCore::EventTargetNode::dispatchMouseEvent):
1419 (WebCore::EventTargetNode::dispatchWheelEvent):
1421 (WebCore::Frame::selectClosestWordFromMouseEvent):
1422 (WebCore::Frame::handleMousePressEventTripleClick):
1423 (WebCore::Frame::handleMousePressEventSingleClick):
1424 (WebCore::Frame::handleMouseMoveEvent):
1425 (WebCore::Frame::handleMouseReleaseEvent):
1426 * page/FrameView.cpp:
1427 (WebCore::FrameView::handleMousePressEvent):
1428 (WebCore::selectCursor):
1429 (WebCore::FrameView::dispatchDragEvent):
1430 (WebCore::FrameView::prepareMouseEvent):
1431 (WebCore::FrameView::handleWheelEvent):
1432 * platform/ScrollView.h:
1433 * platform/Widget.cpp:
1434 (WebCore::Widget::convertToContainingWindow):
1435 * platform/Widget.h:
1436 * platform/mac/ScrollViewMac.mm:
1437 (WebCore::ScrollView::convertToContainingWindow):
1438 (WebCore::ScrollView::convertFromContainingWindow):
1439 * platform/mac/WidgetMac.mm:
1440 (WebCore::Widget::convertToContainingWindow):
1441 (WebCore::Widget::convertFromContainingWindow):
1442 * platform/win/ScrollViewWin.cpp:
1443 (WebCore::ScrollView::convertToContainingWindow):
1444 (WebCore::ScrollView::convertFromContainingWindow):
1445 * rendering/RenderLayer.cpp:
1446 (WebCore::RenderLayer::resize):
1448 2006-09-28 Alice Liu <alice.liu@apple.com>
1450 Build fix by adding missing files for CommandByName
1452 * WebCore.xcodeproj/project.pbxproj:
1454 2006-09-28 Alice Liu <alice.liu@apple.com>
1456 Adding CommandByName files to the vcproj
1458 * WebCore.vcproj/WebCore/WebCore.vcproj:
1460 2006-09-28 Alice Liu <alice.liu@apple.com>
1462 Reviewed by Adam Roben.
1464 This patch adds a command class that is attached to the frame so the frame can more easily execute commands such as copy, paste, select, etc.
1465 This patch also exposes some UBRK-related utilities so that they can be used elsewhere.
1466 This patch also changes windows PlatformMouseEvent so that we can detect multiple-click mouse events
1468 * editing/CommandByName.cpp: Added.
1469 Added a command class that hangs off the frame so the frame can call commands more easily.
1470 (WebCore::Frame::commandImp):
1471 (WebCore::Frame::execCopy):
1472 (WebCore::Frame::execCut):
1473 (WebCore::Frame::execDelete):
1474 (WebCore::Frame::execForwardDelete):
1475 (WebCore::Frame::execPaste):
1476 (WebCore::Frame::execMoveLeft):
1477 (WebCore::Frame::execMoveRight):
1478 (WebCore::Frame::execMoveUp):
1479 (WebCore::Frame::execMoveDown):
1480 (WebCore::Frame::execSelectAll):
1481 (WebCore::Frame::execSelectLeft):
1482 (WebCore::Frame::execSelectRight):
1483 (WebCore::Frame::execSelectUp):
1484 (WebCore::Frame::execSelectDown):
1485 (WebCore::Frame::enabled):
1486 (WebCore::Frame::enabledAnySelection):
1487 (WebCore::Frame::enabledAnyEditableSelection):
1488 (WebCore::Frame::enabledPaste):
1489 (WebCore::Frame::enabledAnyRangeSelection):
1490 (WebCore::Frame::enabledAnyEditableRangeSelection):
1491 (WebCore::Frame::createCommandDictionary):
1492 (WebCore::Frame::Command::):
1493 (WebCore:::m_frame):
1494 (WebCore::CommandByName::execCommand):
1495 * editing/CommandByName.h: Added.
1497 Added implementation of accessor for CommandByName member
1498 (WebCore::Frame::command):
1500 Added accessor for CommandByName member
1501 * page/FramePrivate.h:
1502 Added a CommandByName member
1503 (WebCore::FramePrivate::FramePrivate):
1504 * platform/PlatformMouseEvent.h:
1505 Changed constructor prototype
1506 * platform/StringImpl.cpp:
1507 Exposing getWordBreakIterator to be used elsewhere
1508 (WebCore::getWordBreakIterator):
1509 * platform/StringImpl.h:
1510 Exposing getWordBreakIterator to be used elsewhere
1511 * platform/win/MouseEventWin.cpp:
1512 Changed the PlatformMouseEvent on windows so that we "roll our own" multi-click mouse events instead of relying on the system to tell us, enabling us to detect triple-clicks
1513 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1515 2006-09-28 Adam Roben <aroben@apple.com>
1519 Remove no-longer-used PopUpButton.
1521 * WebCore.vcproj/WebCore/WebCore.vcproj: Remove PopUpButton.h
1522 * WebCore.xcodeproj/project.pbxproj: Remove PopUpButton.h,
1524 * platform/PopUpButton.h: Removed.
1525 * platform/mac/PopUpButtonMac.mm: Removed.
1526 * platform/win/TemporaryLinkStubs.cpp: Remove PopUpButton:: methods
1527 * rendering/DeprecatedRenderSelect.cpp: Change #include of
1528 PopUpButton.h to ListBox.h
1530 2006-09-28 Darin Adler <darin@apple.com>
1534 - change that should fix <rdar://problem/4733044> REGRESSION: XML iBench shows
1535 10% perf. regression (copying strings while decoding)
1537 Use Vector<UChar> instead of String when building up the decoded string in
1538 the ICU and Mac decoders. Using String leads to O(n^2) behavior because
1539 String grows the buffer every single time that append is called. Using
1540 Vector::append instead of String::append also avoids constructing a string
1541 each time just to append and a questionable copy that is done inside the
1542 String::append function which also contributed to the slowness.
1544 * platform/PlatformString.h:
1545 * platform/String.cpp: (WebCore::String::adopt): Added. Makes a String from a
1546 Vector<UChar>, adopting the buffer from the vector to avoid copying and memory
1548 * platform/StringImpl.h:
1549 * platform/StringImpl.cpp: (WebCore::StringImpl::adopt): Ditto.
1551 * platform/StreamingTextDecoder.h:
1552 * platform/StreamingTextDecoder.cpp: (WebCore::TextCodec::appendOmittingBOM):
1553 Change to use a Vector<UChar> instead of a String, since vectors have better
1554 resizing performance (they store a separate capacity).
1556 * platform/StreamingTextDecoderICU.cpp: (WebCore::TextCodecICU::decode):
1557 * platform/mac/StreamingTextDecoderMac.cpp: (WebCore::TextCodecMac::decode):
1558 Change to use Vector<UChar> instead of String and then create a string at
1559 the end of the process using the new adopt function.
1561 2006-09-28 Sam Weinig <sam.weinig@gmail.com>
1565 Patch for http://bugs.webkit.org/show_bug.cgi?id=11057
1566 Auto-generate more SVG Objective-C bindings
1568 - Auto-generates DOMSVGAnimatedAngle, DOMSVGAnimatedBoolean,
1569 DOMSVGAnimatedEnumeration, DOMSVGAnimatedInteger, DOMSVGAnimatedLength,
1570 DOMSVGAnimatedLengthList, DOMSVGAnimatedNumber, DOMSVGAnimatedString,
1571 DOMSVGAnimatedTransformList, DOMSVGExternalResourcesRequired,
1572 DOMSVGLangSpace, DOMSVGLocatable, DOMSVGMetadataElement, DOMSVGRectElement,
1573 DOMSVGStringList, DOMSVGStylable, DOMSVGStyleElement, DOMSVGTests,
1574 and DOMSVGTransformable.
1576 - Adds ability to CodeGeneratorObjC.pm to handle interfaces with mulitple
1577 parent interfaces and the SVG animated classes.
1579 - Corrects CodeGenerator.pm to only skip the first parent for the main
1582 * DerivedSources.make:
1583 * WebCore.xcodeproj/project.pbxproj:
1584 * bindings/objc/DOMInternal.h:
1585 * bindings/objc/DOMSVG.h:
1586 * bindings/scripts/CodeGenerator.pm:
1587 * bindings/scripts/CodeGeneratorObjC.pm:
1588 * ksvg2/svg/SVGAnimatedAngle.idl:
1589 * ksvg2/svg/SVGAnimatedBoolean.idl:
1590 * ksvg2/svg/SVGAnimatedEnumeration.idl:
1591 * ksvg2/svg/SVGAnimatedInteger.idl:
1592 * ksvg2/svg/SVGAnimatedLength.idl:
1593 * ksvg2/svg/SVGAnimatedLengthList.idl:
1594 * ksvg2/svg/SVGAnimatedNumber.idl:
1595 * ksvg2/svg/SVGAnimatedPathData.idl:
1596 * ksvg2/svg/SVGAnimatedString.idl:
1597 * ksvg2/svg/SVGAnimatedTransformList.idl:
1598 * ksvg2/svg/SVGExternalResourcesRequired.idl:
1599 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.idl:
1600 * ksvg2/svg/SVGFitToViewBox.idl:
1601 * ksvg2/svg/SVGLangSpace.idl:
1602 * ksvg2/svg/SVGLocatable.idl:
1603 * ksvg2/svg/SVGMetadataElement.idl:
1604 * ksvg2/svg/SVGStringList.idl:
1605 * ksvg2/svg/SVGStylable.idl:
1606 * ksvg2/svg/SVGStyleElement.idl:
1607 * ksvg2/svg/SVGTests.idl:
1608 * ksvg2/svg/SVGTransformable.idl:
1609 * ksvg2/svg/SVGURIReference.idl:
1610 * ksvg2/svg/SVGUnitTypes.idl:
1611 * ksvg2/svg/SVGZoomAndPan.idl:
1613 2006-09-28 Brady Eidson <beidson@apple.com>
1615 Reviewed by Mitz Pettel!!!
1617 Change the error code check for common functions from SQLResultOk to SQLResultDone
1619 * loader/icon/IconDatabase.cpp:
1620 (WebCore::IconDatabase::forgetPageURLQuery):
1621 (WebCore::IconDatabase::setIconIDForPageURLQuery):
1622 (WebCore::IconDatabase::addIconForIconURLQuery):
1624 2006-09-28 Dave Hyatt <hyatt@apple.com>
1626 Just eliminate MapWindowPoints usage and use the HWND as
1629 * platform/win/MouseEventWin.cpp:
1630 (WebCore::positionForEvent):
1631 * platform/win/ScrollViewWin.cpp:
1632 (WebCore::ScrollView::viewportToContents):
1633 (WebCore::ScrollView::contentsToViewport):
1635 2006-09-27 David Hyatt <hyatt@apple.com>
1637 Fix for bug 9222, cursor is wrong when mousing over overflow scrollbars in textareas. Make sure
1638 selectCursor checks for whether or not a scrollbar was hit. Also stub out a mouseMoved method for
1639 scrollbars to provide hover feedback if needed.
1643 * page/FrameView.cpp:
1644 (WebCore::selectCursor):
1645 (WebCore::FrameView::handleMouseMoveEvent):
1646 * platform/ScrollBar.h:
1647 (WebCore::ScrollBar::mouseMoved):
1649 2006-09-27 MorganL <morganl.webkit@yahoo.com>
1651 Reviewed by Maciej and Adam, landed by Adam
1653 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11072
1654 Windows build is busted
1656 * platform/win/TemporaryLinkStubs.cpp:
1657 (ScrollView::paint):
1658 (ScrollView::themeChanged):
1660 2006-09-27 Eric Seidel <eric@eseidel.com>
1664 paths with no fill specified default to black but do not recieve paint-related mouse events
1665 http://bugs.webkit.org/show_bug.cgi?id=11069
1666 The default fill was being applied at the wrong place in the rendering chain, causing this problem.
1668 Test: svg/custom/hover-default-fill.svg
1670 * kcanvas/RenderPath.cpp:
1671 (WebCore::RenderPath::nodeAtPoint): use isFilled and isStroked
1672 * ksvg2/css/SVGRenderStyle.h: use defaultFill() and defaultStroke()
1673 * ksvg2/misc/KCanvasRenderingStyle.cpp:
1674 (WebCore::KSVGPainterFactory::isFilled): remove null check
1675 (WebCore::KSVGPainterFactory::fillPaintServer): remove null check
1676 (WebCore::KSVGPainterFactory::isStroked): remove null check
1677 (WebCore::KSVGPainterFactory::strokePaintServer): remove null check
1678 * ksvg2/svg/SVGPaint.cpp:
1679 (WebCore::SVGPaint::defaultFill): added.
1680 (WebCore::SVGPaint::defaultStroke): added.
1681 * ksvg2/svg/SVGPaint.h:
1683 2006-09-27 Rob Buis <buis@kde.org>
1685 Reviewed by eseidel.
1687 http://bugs.webkit.org/show_bug.cgi?id=11015
1688 SVG handles em units incorrectly
1690 Calculate viewport coordinates at layout time, since
1691 at this point the font size is known and lengths depending
1692 on font sizes can be calculated correctly.
1694 * kcanvas/RenderSVGContainer.cpp:
1695 (WebCore::RenderSVGContainer::layout):
1696 (WebCore::RenderSVGContainer::viewport):
1697 (WebCore::RenderSVGContainer::calcViewport):
1698 * kcanvas/RenderSVGContainer.h:
1699 * ksvg2/svg/SVGLength.cpp:
1700 (WebCore::SVGLength::updateValue):
1701 * ksvg2/svg/SVGMarkerElement.cpp:
1702 (WebCore::SVGMarkerElement::createRenderer):
1703 * ksvg2/svg/SVGSVGElement.cpp:
1704 (WebCore::SVGSVGElement::createRenderer):
1705 (WebCore::SVGSVGElement::attributeChanged):
1706 * ksvg2/svg/SVGSVGElement.h:
1708 2006-09-27 Eric Seidel <eric@eseidel.com>
1712 Change our invalid-fill error behavior to match Opera (and soon Firefox)
1713 http://bugs.webkit.org/show_bug.cgi?id=11017
1715 * ksvg2/misc/KCanvasRenderingStyle.cpp:
1716 (WebCore::KSVGPainterFactory::isFilled):
1717 (WebCore::KSVGPainterFactory::fillPaintServer):
1718 (WebCore::KSVGPainterFactory::isStroked):
1719 (WebCore::KSVGPainterFactory::strokePaintServer):
1721 2006-09-27 Brady Eidson <beidson@apple.com>
1725 * loader/icon/IconDatabase.cpp:
1726 (WebCore::readySQLStatement):
1728 2006-09-27 Brady Eidson <beidson@apple.com>
1732 In very specific circumstances, prepared SQLStatements can become invalid without
1733 any warning. This checks for that state and re-prepares the statement and also
1734 adds more aggressive error-checking everywhere these statements are used.
1736 * loader/icon/IconDatabase.cpp:
1737 (WebCore::readySQLStatement): Check if the statement is expired - reprepare it
1738 (WebCore::IconDatabase::imageDataForIconURLQuery): More thoroughly catch error cases
1739 (WebCore::IconDatabase::timeStampForIconURLQuery): Ditto
1740 (WebCore::IconDatabase::iconURLForPageURLQuery): Ditto
1741 (WebCore::IconDatabase::forgetPageURLQuery): Ditto
1742 (WebCore::IconDatabase::setIconIDForPageURLQuery): Ditto
1743 (WebCore::IconDatabase::getIconIDForIconURLQuery): Ditto
1744 (WebCore::IconDatabase::addIconForIconURLQuery): Ditto
1745 (WebCore::IconDatabase::hasIconForIconURLQuery): Ditto
1746 * loader/icon/SQLStatement.cpp:
1747 (WebCore::SQLStatement::isExpired): Added (accessor to sqlite3_expired())
1748 * loader/icon/SQLStatement.h:
1750 2006-09-26 Darin Adler <darin@apple.com>
1754 - clean up options for font code path
1757 * platform/Font.cpp:
1758 (WebCore::Font::setCodePath): Added. Replaces boolean version.
1759 (WebCore::Font::canUseGlyphCache): Update to handle "never use complex" case too.
1761 * platform/mac/WebCoreTextRenderer.mm:
1762 (WebCoreSetAlwaysUseATSU): Change to call setCodePath.
1764 2006-09-26 John Sullivan <sullivan@apple.com>
1768 * bridge/mac/WebCoreFrameBridge.h:
1769 * bridge/mac/WebCoreFrameBridge.mm:
1770 (-[WebCoreFrameBridge markAllMatchesForText:caseSensitive:limit:]):
1771 Added limit parameter, passed down to Frame
1775 (WebCore::Frame::markAllMatchesForText):
1776 Added limit parameter. Stop the search if it hits limit.
1778 2006-09-26 Sean Gies <seangies@apple.com>
1780 Reviewed by Brady Eidson.
1782 * platform/cg/ImageCG.cpp: Removed #if's -- Darin said we don't need these.
1784 2006-09-26 Justin Garcia <justin.garcia@apple.com>
1788 <rdar://problem/4747695>
1789 Gmail Editor: Crash at WebCore::Range::startPosition() when decreasing a indent
1791 * editing/DeleteSelectionCommand.cpp:
1792 (WebCore::DeleteSelectionCommand::initializeStartEnd): Stop expanding
1793 to select special elements that are fully selected after expansion
1794 moves to positions that are visually distinct from the originals.
1795 * editing/InsertListCommand.cpp:
1796 (WebCore::InsertListCommand::doApply): If the content of the list
1797 item will be moved into another list, put it in a list item.
1799 2006-09-26 Geoffrey Garen <ggaren@apple.com>
1803 Temporary work-around for frame lifetime issue.
1806 (WebCore::Frame::clear):
1807 (WebCore::Frame::disconnectOwnerElement):
1809 2006-09-26 Sam Weinig <sam.weinig@gmail.com>
1813 Patch for http://bugs.webkit.org/show_bug.cgi?id=11038
1814 Auto-generate DOMSVGElement for the Objective-C bindings
1816 - Auto-generates DOMSVGElement.
1818 - Make SVGExceptions work like all the other ExceptionCode
1819 extensions (Range, XPath, etc.) by adding SVGExceptionOffset
1820 and SVGExceptionMax.
1822 * DerivedSources.make:
1823 * WebCore.xcodeproj/project.pbxproj:
1824 * bindings/js/kjs_binding.cpp:
1826 (KJS::setDOMException):
1827 * bindings/objc/DOMInternal.h:
1828 * bindings/objc/DOMInternal.mm:
1829 (raiseDOMException):
1830 * bindings/objc/DOMSVG.h:
1831 * bindings/objc/DOMSVGExecption.h: Added.
1833 * ksvg2/svg/SVGElement.cpp:
1834 (WebCore::SVGElement::setId):
1835 (WebCore::SVGElement::setXmlbase):
1836 * ksvg2/svg/SVGElement.h:
1837 * ksvg2/svg/SVGElement.idl:
1838 * ksvg2/svg/SVGException.h: Added.
1841 2006-09-26 Eric Seidel <eric@eseidel.com>
1845 viewbox parser does not allow <tab> as a delimiter
1846 http://bugs.webkit.org/show_bug.cgi?id=11014
1848 Test: svg/hixie/viewbox/003.xml
1850 * ksvg2/svg/svgpathparser.cpp:
1851 (WebCore::isWhitespace): new function
1852 (WebCore::skipOptionalSpaces):
1853 (WebCore::skipOptionalSpacesOrComma):
1855 2006-09-26 Eric Seidel <eric@eseidel.com>
1859 SVGDocument::createElement does not create elements in the SVG namespace
1860 http://bugs.webkit.org/show_bug.cgi?id=10932
1862 Test: svg/custom/createelement.svg
1864 * ksvg2/svg/SVGDocument.cpp:
1865 (WebCore::SVGDocument::createElement):
1866 * ksvg2/svg/SVGDocument.h:
1868 2006-09-26 Eric Seidel <eric@eseidel.com>
1872 RenderPath::nodeAtPoint does not respect stroke width
1873 http://bugs.webkit.org/show_bug.cgi?id=10829
1875 Test: svg/custom/stroke-width-click.svg
1877 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
1878 (WebCore::RenderPath::strokeContains):
1879 * kcanvas/device/quartz/QuartzSupport.h:
1880 * kcanvas/device/quartz/QuartzSupport.mm:
1882 2006-09-26 Eric Seidel <eric@eseidel.com>
1886 Bring animation back to life
1887 http://bugs.webkit.org/show_bug.cgi?id=11021
1889 Register/unregister SVGSVGElements as time containers on insertion/removal.
1890 Replace uses of DeprecatedString with String in SVGAnimationElement
1891 Various whitespace clean-up.
1893 * ksvg2/misc/KSVGTimeScheduler.cpp:
1894 (WebCore::SVGTimer::notifyAll):
1895 * ksvg2/misc/SVGDocumentExtensions.cpp:
1896 (WebCore::SVGDocumentExtensions::startAnimations):
1897 (WebCore::SVGDocumentExtensions::pauseAnimations):
1898 (WebCore::SVGDocumentExtensions::unpauseAnimations):
1899 * ksvg2/svg/SVGAnimateTransformElement.cpp:
1900 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
1901 (WebCore::SVGAnimateTransformElement::parseTransformValue):
1902 * ksvg2/svg/SVGAnimateTransformElement.h:
1903 * ksvg2/svg/SVGAnimationElement.cpp:
1904 (WebCore::SVGAnimationElement::SVGAnimationElement):
1905 (WebCore::SVGAnimationElement::parseMappedAttribute):
1906 (WebCore::SVGAnimationElement::parseClockValue):
1907 (WebCore::SVGAnimationElement::targetAttribute):
1908 (WebCore::SVGAnimationElement::setTargetAttribute):
1909 (WebCore::SVGAnimationElement::attributeName):
1910 * ksvg2/svg/SVGAnimationElement.h:
1911 (WebCore::SVGAnimationElement::rendererIsNeeded):
1912 * ksvg2/svg/SVGSVGElement.cpp:
1913 (WebCore::SVGSVGElement::getScreenCTM):
1914 (WebCore::SVGSVGElement::createRenderer):
1915 (WebCore::SVGSVGElement::insertedIntoDocument): added, calls addTimeContainer(this)
1916 (WebCore::SVGSVGElement::removedFromDocument): added, calls removeTimeContainer(this)
1917 * ksvg2/svg/SVGSVGElement.h:
1918 * ksvg2/svg/SVGSetElement.cpp:
1919 (WebCore::SVGSetElement::handleTimerEvent):
1920 * ksvg2/svg/SVGURIReference.cpp:
1921 (WebCore::SVGURIReference::getTarget):
1922 * ksvg2/svg/SVGURIReference.h:
1924 2006-09-26 Graham Dennis <graham.dennis@gmail.com>
1926 Reviewed by mitzpettel.
1928 - fix http://bugs.webkit.org/show_bug.cgi?id=11020
1929 No-SVG build broken since r16549
1931 Change #if SVG_SUPPORT to #ifdef SVG_SUPPORT
1933 * css/cssparser.cpp:
1934 (WebCore::CSSParser::parseValue):
1935 * css/cssstyleselector.cpp:
1936 (WebCore::CSSStyleSelector::applyProperty):
1937 * page/FrameView.cpp:
1938 (WebCore::selectCursor):
1939 * platform/qt/GraphicsContextQt.cpp:
1941 2006-09-26 Anders Carlsson <acarlsson@apple.com>
1945 http://bugs.webkit.org/show_bug.cgi?id=10820
1946 Add StringImpl::toDouble() and remove uses of .deprecatedString().toDouble()
1948 (Originally written by Eric Seidel).
1950 * bindings/js/kjs_window.cpp:
1951 (KJS::floatFeature):
1952 * ksvg2/svg/SVGAngle.cpp:
1953 (SVGAngle::setValueAsString):
1954 * ksvg2/svg/SVGAnimationElement.cpp:
1955 (SVGAnimationElement::parseMappedAttribute):
1956 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
1957 (SVGComponentTransferFunctionElement::parseMappedAttribute):
1958 * ksvg2/svg/SVGFECompositeElement.cpp:
1959 (WebCore::SVGFECompositeElement::parseMappedAttribute):
1960 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
1961 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
1962 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
1963 (SVGFEDisplacementMapElement::parseMappedAttribute):
1964 * ksvg2/svg/SVGFELightElement.cpp:
1965 (SVGFELightElement::parseMappedAttribute):
1966 * ksvg2/svg/SVGFEOffsetElement.cpp:
1967 (WebCore::SVGFEOffsetElement::parseMappedAttribute):
1968 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
1969 (SVGFESpecularLightingElement::parseMappedAttribute):
1970 * ksvg2/svg/SVGFETurbulenceElement.cpp:
1971 (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
1972 * ksvg2/svg/SVGStopElement.cpp:
1973 (SVGStopElement::parseMappedAttribute):
1974 * platform/AtomicString.h:
1975 (WebCore::AtomicString::toDouble):
1976 * platform/PlatformString.h:
1977 * platform/String.cpp:
1978 (WebCore::String::toDouble):
1979 * platform/StringImpl.cpp:
1980 (WebCore::StringImpl::toDouble):
1981 * platform/StringImpl.h:
1982 * rendering/DeprecatedSlider.cpp:
1983 (WebCore::DeprecatedSlider::updateFromElement):
1984 * xml/XPathGrammar.y:
1986 2006-09-25 David Harrison <harrison@apple.com>
1988 Reviewed by Tim Omernick and Tim Hatcher.
1990 <rdar://problem/4717965> Text Field text parameterized attributes should work
1991 <rdar://problem/4712111> Support NSAccessibilityInsertionPointLineNumberAttribute for AXTextArea elements
1993 * bridge/mac/WebCoreAXObject.mm:
1994 (-[WebCoreAXObject accessibilityAttributeValue:]):
1995 Use new line number support to implement NSAccessibilityInsertionPointLineNumberAttribute.
1997 (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
1998 Cleaned up. Added text field and text area parameterzed attributes.
2000 (-[WebCoreAXObject doAXLineForTextMarker:]):
2001 Fixed to be zero-based and to deal with the first position properly.
2003 (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
2006 (-[WebCoreAXObject textMarkerForIndex:lastIndexOK:]):
2007 (-[WebCoreAXObject indexForTextMarker:]):
2008 (-[WebCoreAXObject textMarkerRangeForRange:]):
2009 (-[WebCoreAXObject rangeForTextMarkerRange:]):
2010 New utility methods.
2012 (-[WebCoreAXObject doAXLineForIndex:]):
2013 (-[WebCoreAXObject doAXRangeForLine:]):
2014 (-[WebCoreAXObject doAXStringForRange:]):
2015 (-[WebCoreAXObject doAXRangeForPosition:]):
2016 (-[WebCoreAXObject doAXRangeForIndex:]):
2017 (-[WebCoreAXObject doAXBoundsForRange:]):
2018 (-[WebCoreAXObject doAXAttributedStringForRange:]):
2019 (-[WebCoreAXObject doAXRTFForRange:]):
2020 (-[WebCoreAXObject doAXStyleRangeForIndex:]):
2021 Implement text field and text area parameterized attributes.
2023 (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
2024 Added text field and text area parameterzed attributes.
2026 * rendering/RenderTextControl.h:
2027 Made indexForVisiblePosition() and visiblePositionForIndex() public.
2029 2006-09-25 Adam Roben <aroben@apple.com>
2035 * WebCore.vcproj/WebCore/WebCore.vcproj: Fix malformed XML.
2036 * platform/ResourceLoader.h: Store whether a particular job
2037 has received a response within the ResourceLoader object itself, since
2038 it's possible that we will enter the InternetReadFileExA while loop
2039 twice for the same job.
2040 * platform/ResourceLoaderInternal.h: Add private instance variable to
2041 store whether we've received a response.
2042 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
2043 * platform/win/GraphicsContextWin.cpp: Fix order of preprocessor
2045 * platform/win/ResourceLoaderWin.cpp:
2046 (WebCore::ResourceLoader::onRequestComplete): Ask the ResourceLoader
2047 whether it has received a response instead of assuming it hasn't.
2048 (WebCore::ResourceLoader::setHasReceivedResponse): Added.
2049 (WebCore::ResourceLoader::hasReceivedResponse): Added.
2050 * platform/win/TemporaryLinkStubs.cpp: Rename setKnobProportion to
2052 (ScrollBar::setProportion):
2054 2006-09-25 Brady Eidson <beidson@apple.com>
2058 Disabled IconDatabase logging by default
2060 * platform/Logging.cpp:
2063 2006-09-25 Steve Falkenburg <sfalken@apple.com>
2067 * platform/cf/ResourceLoaderCFNet.cpp:
2068 (WebCore::willCacheResponse):
2070 2006-09-25 Justin Garcia <justin.garcia@apple.com>
2074 <http://bugs.webkit.org/show_bug.cgi?id=11002>
2075 Gmail Editor: Crash at WebCore::SplitElementCommand::doApply() when attempting to indent in a new message
2077 * editing/IndentOutdentCommand.cpp:
2078 (WebCore::IndentOutdentCommand::indentRegion): Special case
2079 an empty root editable element.
2081 2006-09-25 Brady Eidson <beidson@apple.com>
2085 Math error in SystemTimeWin
2087 * platform/win/SystemTimeWin.cpp:
2088 (WebCore::currentTime):
2090 2006-09-25 Alexey Proskuryakov <ap@nypop.com>
2094 Whitespace cleanup; rename *job variables to *loader.
2096 * bindings/js/JSXMLHttpRequest.cpp:
2097 (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
2098 (KJS::JSXMLHttpRequestConstructorImp::implementsConstruct):
2099 (KJS::JSXMLHttpRequestConstructorImp::construct):
2100 (KJS::JSXMLHttpRequest::getOwnPropertySlot):
2101 (KJS::JSXMLHttpRequest::getValueProperty):
2102 (KJS::JSXMLHttpRequest::put):
2103 (KJS::JSXMLHttpRequest::putValueProperty):
2104 (KJS::JSXMLHttpRequest::mark):
2105 (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
2106 (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
2107 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
2108 * bindings/js/JSXMLHttpRequest.h:
2109 (KJS::JSXMLHttpRequest::toBoolean):
2110 * xml/xmlhttprequest.cpp:
2111 (WebCore::XMLHttpRequest::XMLHttpRequest):
2112 (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
2113 (WebCore::XMLHttpRequest::send):
2114 (WebCore::XMLHttpRequest::abort):
2115 (WebCore::XMLHttpRequest::receivedAllData):
2116 (WebCore::XMLHttpRequest::receivedData):
2117 * xml/xmlhttprequest.h:
2120 2006-09-25 Timothy Hatcher <timothy@apple.com>
2124 - Deprecate the rest of the old-style methods that are not generated.
2125 - Add @property syntax to DOMRange.
2127 * WebCore.xcodeproj/project.pbxproj:
2128 * bindings/objc/DOM.mm:
2129 (-[DOMRange setStart:offset:]):
2130 (-[DOMRange setEnd:offset:]):
2131 (-[DOMRange compareBoundaryPoints:sourceRange:]):
2132 (-[DOMRange setStart::]):
2133 (-[DOMRange setEnd::]):
2134 (-[DOMRange compareBoundaryPoints::]):
2135 (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
2136 (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
2137 (-[DOMDocument createNodeIterator::::]):
2138 (-[DOMDocument createTreeWalker::::]):
2139 * bindings/objc/DOMCSS.h:
2140 * bindings/objc/DOMCSS.mm:
2141 (-[DOMDocument getComputedStyle:pseudoElement:]):
2142 (-[DOMDocument getComputedStyle::]):
2143 (-[DOMDocument getMatchedCSSRules:pseudoElement:]):
2144 * bindings/objc/DOMExtensions.h:
2145 * bindings/objc/DOMHTML.h:
2146 * bindings/objc/DOMRange.h:
2147 * bindings/objc/DOMTraversal.h:
2149 2006-09-25 Eric Seidel <eric@eseidel.com>
2153 Outermost <svg> element should clip to viewport
2154 http://bugs.webkit.org/show_bug.cgi?id=11007
2156 Test: svg/custom/viewport-clip.svg
2158 * css/svg.css: change svg:root overflow: from 'visible' to 'hidden'
2160 2006-09-25 Anders Carlsson <acarlsson@apple.com>
2164 * css/MediaList.cpp:
2165 Remove unused header.
2168 (WebCore::Document::clear):
2169 Use clear instead of iterating through the list of event listeners, removing each one.
2170 (Doing that causes a crash when running the layout tests with GuardMalloc turned on)
2172 * html/HTMLKeygenElement.cpp:
2173 (WebCore::HTMLKeygenElement::HTMLKeygenElement):
2174 (WebCore::HTMLKeygenElement::appendFormData):
2175 Update due to changes in the SSL key generator.
2177 * ksvg2/svg/SVGAngle.cpp:
2178 Remove unused header.
2180 * ksvg2/svg/SVGAnimationElement.cpp:
2181 (SVGAnimationElement::parseMappedAttribute):
2182 Rename methods and pass Strings instead of DeprecatedStrings to
2185 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
2186 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
2187 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
2188 * ksvg2/svg/SVGFEMergeElement.cpp:
2189 * ksvg2/svg/SVGFEOffsetElement.cpp:
2190 Remove unused headers.
2192 * ksvg2/svg/SVGHelper.cpp:
2193 (WebCore::SVGHelper::parseSeparatedList):
2194 * ksvg2/svg/SVGHelper.h:
2195 Rename ParseSeperatedList to parseSeparatedList, make it take a String instead of a
2196 DeprecatedString and have it use Vector<String> instead of DeprecatedStringList.
2198 * ksvg2/svg/SVGLengthList.cpp:
2199 (WebCore::SVGLengthList::parse):
2200 * ksvg2/svg/SVGLengthList.h:
2201 Use Vector<String> instead of DeprecatedStringList.
2204 (WebCore::Cache::requestImage):
2205 (WebCore::Cache::requestStyleSheet):
2206 (WebCore::Cache::requestScript):
2207 (WebCore::Cache::requestXSLStyleSheet):
2208 (WebCore::Cache::requestXBLDocument):
2209 (WebCore::Cache::remove):
2210 (WebCore::Cache::get):
2211 Use a String as the key in the cache set instead of a RefPtr<StringImpl>.
2213 * loader/DocLoader.cpp:
2214 (WebCore::DocLoader::needReload):
2215 * loader/DocLoader.h:
2216 Use a HashSet instead of DeprecatedStringList.
2219 Remove declarations that have no functions.
2221 * platform/SSLKeyGenerator.h:
2222 * platform/mac/SSLKeyGeneratorMac.mm:
2223 (WebCore::supportedKeySizes):
2224 (WebCore::signedPublicKeyAndChallengeString):
2225 Convert to use Vector<String> instead of DeprecatedStringList, and String instead of
2228 2006-09-25 Dave Hyatt <hyatt@apple.com>
2230 Shunt the RenderTheme world transform adoption between
2231 Cairo and Windows into getWindowsContext and move the method
2232 out of GraphicsContextCairo and into GraphicsContextWin.
2235 * WebCore.vcproj/WebCore/WebCore.vcproj:
2236 * platform/cairo/GraphicsContextCairo.cpp:
2237 * platform/win/GraphicsContextWin.cpp: Added.
2238 (WebCore::GraphicsContext::getWindowsContext):
2239 (WebCore::GraphicsContext::releaseWindowsContext):
2240 * rendering/RenderThemeWin.cpp:
2241 (WebCore::prepareForDrawing):
2243 2006-09-24 Eric Seidel <eric@eseidel.com>
2247 <svg:a> cannot be styled with a:hover
2248 http://bugs.webkit.org/show_bug.cgi?id=11005
2250 Test: svg/hixie/cascade/002.xml
2252 * css/cssstyleselector.cpp:
2253 (WebCore::checkPseudoState):
2255 2006-09-24 Sam Weinig <sam.weinig@gmail.com>
2259 Patch for http://bugs.webkit.org/show_bug.cgi?id=10882
2260 SVG needs Obj-C DOM bindings
2262 - Auto-generate the first 8 Objective-C SVG DOM bindings. The
2263 auto-generated classes are DOMSVGAngle, DOMSVGLength, DOMSVGLengthList,
2264 DOMSVGMatrix, DOMSVGPathSeg, DOMSVGPathSegList, DOMSVGTransform, and
2265 DOMSVGTransformList.
2267 * DerivedSources.make:
2268 * WebCore.xcodeproj/project.pbxproj:
2269 * bindings/objc/DOMInternal.h:
2270 * bindings/objc/DOMSVG.h: Added.
2271 * ksvg2/svg/SVGAngle.idl:
2272 * ksvg2/svg/SVGLength.idl:
2273 * ksvg2/svg/SVGLengthList.idl:
2274 * ksvg2/svg/SVGMatrix.idl:
2275 * ksvg2/svg/SVGPathSeg.idl:
2276 * ksvg2/svg/SVGPathSegList.idl:
2277 * ksvg2/svg/SVGTransform.idl:
2278 * ksvg2/svg/SVGTransformList.idl:
2280 2006-09-24 Rob Buis <buis@kde.org>
2282 Reviewed by eseidel.
2284 Fix for http://bugs.webkit.org/show_bug.cgi?id=6001
2285 WebKit does not handle fallback custom cursors
2286 Fix for http://bugs.webkit.org/show_bug.cgi?id=6002
2287 WebKit does not properly handle SVG <cursor> element
2289 Add support for svg cursor images. Also make sure hotspot
2290 settings are handled correctly. Add tests for handling of css3
2291 cursor syntax with hotspots in strict and quirks mode. Finally
2294 * WebCore.xcodeproj/project.pbxproj:
2295 * css/CSSComputedStyleDeclaration.cpp:
2296 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2297 * css/CSSCursorImageValue.cpp: Added.
2298 (WebCore::CSSCursorImageValue::CSSCursorImageValue):
2299 (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
2300 * css/CSSCursorImageValue.h: Added.
2301 (WebCore::CSSCursorImageValue::hotspot):
2302 * css/cssparser.cpp:
2303 (WebCore::CSSParser::parseValue):
2304 * css/cssstyleselector.cpp:
2305 (WebCore::CSSStyleSelector::applyProperty):
2306 * ksvg2/svg/SVGCursorElement.cpp:
2307 * manual-tests/css3-cursor-fallback-quirks.html: Added.
2308 * manual-tests/css3-cursor-fallback-strict.html: Added.
2309 * manual-tests/cursorfallback.xml: Added.
2310 * page/FrameView.cpp:
2311 (WebCore::selectCursor):
2312 * platform/Cursor.h:
2313 * platform/mac/CursorMac.mm:
2314 (WebCore::createCustomCursor):
2315 (WebCore::Cursor::Cursor):
2316 * platform/qt/CursorQt.cpp:
2317 (WebCore::Cursor::Cursor):
2318 * rendering/RenderStyle.cpp:
2319 (WebCore::StyleInheritedData::StyleInheritedData):
2320 (WebCore::StyleInheritedData::operator==):
2321 (WebCore::RenderStyle::diff):
2322 (WebCore::RenderStyle::addCursor):
2323 (WebCore::RenderStyle::addSVGCursor):
2324 (WebCore::RenderStyle::setCursorList):
2325 (WebCore::RenderStyle::clearCursorList):
2326 * rendering/RenderStyle.h:
2327 (WebCore::CursorData::CursorData):
2328 (WebCore::CursorList::operator[]):
2329 (WebCore::CursorList::size):
2330 (WebCore::CursorList::append):
2331 (WebCore::RenderStyle::cursors):
2333 2006-09-24 Sam Weinig <sam.weinig@gmail.com>
2337 Patch for http://bugs.webkit.org/show_bug.cgi?id=11009
2338 Auto-generate the internal methods interfaces for the Objective-C bindings
2340 - Auto-generate the internal method declarations into their own files
2341 named in the form DOMFooBarInternal.h for class DOMFooBar.
2343 - Remove all use of DOM_cast from code.
2345 - Assorted cleanups.
2347 * WebCore.xcodeproj/project.pbxproj:
2348 * bindings/objc/DOM.mm:
2349 (-[DOMNode _initWithNode:WebCore::]):
2350 (-[DOMNode WebCore::]):
2351 (-[DOMRange dealloc]):
2352 (-[DOMRange finalize]):
2353 (-[DOMRange _initWithRange:WebCore::]):
2354 (-[DOMRange WebCore::]):
2355 (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
2356 (-[DOMNodeFilter WebCore::]):
2357 (-[DOMNodeFilter dealloc]):
2358 (-[DOMNodeFilter finalize]):
2359 (-[DOMNodeIterator _initWithNodeIterator:WebCore::filter:]):
2360 (-[DOMNodeIterator WebCore::]):
2361 (-[DOMTreeWalker _initWithTreeWalker:WebCore::filter:]):
2362 (-[DOMTreeWalker WebCore::]):
2363 * bindings/objc/DOMAbstractView.mm:
2364 (-[DOMAbstractView _initWithAbstractView:WebCore::]):
2365 * bindings/objc/DOMCSS.mm:
2366 (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
2367 (-[DOMCSSRule _initWithRule:WebCore::]):
2368 (-[DOMCSSValue _initWithValue:WebCore::]):
2369 * bindings/objc/DOMEvents.mm:
2370 (-[DOMEvent _initWithEvent:WebCore::]):
2371 * bindings/objc/DOMHTMLAppletElement.mm:
2372 (-[DOMHTMLAppletElement align]):
2373 (-[DOMHTMLAppletElement setAlign:]):
2374 (-[DOMHTMLAppletElement alt]):
2375 (-[DOMHTMLAppletElement setAlt:]):
2376 (-[DOMHTMLAppletElement archive]):
2377 (-[DOMHTMLAppletElement setArchive:]):
2378 (-[DOMHTMLAppletElement code]):
2379 (-[DOMHTMLAppletElement setCode:]):
2380 (-[DOMHTMLAppletElement codeBase]):
2381 (-[DOMHTMLAppletElement setCodeBase:]):
2382 (-[DOMHTMLAppletElement height]):
2383 (-[DOMHTMLAppletElement setHeight:]):
2384 (-[DOMHTMLAppletElement hspace]):
2385 (-[DOMHTMLAppletElement setHspace:]):
2386 (-[DOMHTMLAppletElement name]):
2387 (-[DOMHTMLAppletElement setName:]):
2388 (-[DOMHTMLAppletElement object]):
2389 (-[DOMHTMLAppletElement setObject:]):
2390 (-[DOMHTMLAppletElement vspace]):
2391 (-[DOMHTMLAppletElement setVspace:]):
2392 (-[DOMHTMLAppletElement width]):
2393 (-[DOMHTMLAppletElement setWidth:]):
2394 * bindings/objc/DOMInternal.h:
2398 * bindings/objc/DOMXPath.mm:
2399 (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:WebCore::]):
2400 * bindings/scripts/CodeGeneratorObjC.pm:
2402 2006-09-24 Nikolas Zimmermann <zimmermann@kde.org>
2404 Reviewed by eseidel.
2406 Fix Qt/Linux build after Dave's Scrollbar changes.
2408 * platform/qt/PlatformScrollBar.h: (Somehow this contained the file twice! Removed one instance!)
2409 * platform/qt/TemporaryLinkStubs.cpp:
2410 (WebCore::ScrollBar::setProportion):
2411 (WebCore::PlatformScrollBar::updateThumbPosition):
2412 (WebCore::PlatformScrollBar::updateThumbProportion):
2414 2006-09-24 Nikolas Zimmermann <zimmermann@kde.org>
2416 Reviewed by eseidel.
2418 Qt/Linux build system changes: enable xpath/xslt by default.
2419 Offer possibility to change all of these using 'ccmake'.
2423 2006-09-24 Dave Hyatt <hyatt@apple.com>
2425 Cleanup of Scrollbar APIs. Rename setKnobProportion to setProportion. Rename setScrollbarValue to updateThumbPosition.
2426 Give setProportion a base class implementation and implement it using the same pattern as setValue/updateThumbPosition (so that
2427 the base calls a protected virtual function, updateThumbProportion, implemented by the derived class to update the actual scrollbar itself).
2429 * platform/ScrollBar.cpp:
2430 (WebCore::ScrollBar::setValue):
2431 (WebCore::ScrollBar::setProportion):
2432 * platform/ScrollBar.h:
2433 (WebCore::ScrollBar::value):
2434 * platform/mac/PlatformScrollBar.h:
2435 * platform/mac/PlatformScrollBarMac.mm:
2436 (WebCore::PlatformScrollBar::updateThumbPosition):
2437 (WebCore::PlatformScrollBar::updateThumbProportion):
2438 * platform/win/PlatformScrollBar.h:
2439 * platform/win/TemporaryLinkStubs.cpp:
2440 (PlatformScrollBar::updateThumbPosition):
2441 (PlatformScrollBar::updateThumbProportion):
2442 * rendering/RenderLayer.cpp:
2443 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
2445 2006-09-23 Alexey Proskuryakov <ap@nypop.com>
2449 http://bugs.webkit.org/show_bug.cgi?id=4872
2450 XMLHttpRequest fails to throw an exception when there is a security violation
2451 (mismatching domains)
2453 Raise an exception if there is a security violation, and also in cases required by
2454 the current draft of XHR specification.
2456 * bindings/js/JSXMLHttpRequest.cpp:
2457 (KJS::JSXMLHttpRequest::getValueProperty): Raise an exception if a DOM method reports one.
2458 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction): Raise an exception if a DOM method
2459 reports one, and also if there were too few arguments passed.
2461 * bindings/js/kjs_binding.cpp:
2462 (KJS::setDOMException): Added support for custom XHR exceptions.
2464 * xml/xmlhttprequest.h: Changed state names to match the current spec. Defined an
2465 exception code range for XHR exceptions.
2467 * xml/xmlhttprequest.cpp:
2468 (WebCore::XMLHttpRequest::open): Removed a check for m_aborted that could never succeed.
2469 (WebCore::XMLHttpRequest::send):
2470 (WebCore::XMLHttpRequest::setRequestHeader):
2471 (WebCore::XMLHttpRequest::getStatus):
2472 (WebCore::XMLHttpRequest::getStatusText):
2473 (WebCore::XMLHttpRequest::processSyncLoadResults):
2474 (WebCore::XMLHttpRequest::receivedAllData):
2475 (WebCore::XMLHttpRequest::receivedData):
2477 2006-09-22 Steve Falkenburg <sfalken@apple.com>
2479 Reviewed by Jeff Jenkins.
2483 * platform/cf/ResourceLoaderCFNet.cpp:
2484 (WebCore::willCacheResponse):
2486 2006-09-22 Justin Garcia <justin.garcia@apple.com>
2490 <http://bugs.webkit.org/show_bug.cgi?id=8029>
2491 Rename Node::isAncestor and RenderObject::hasAncestor to isDescendantOf
2494 (WebCore::Document::clearSelectionIfNeeded):
2496 (WebCore::Element::contains):
2498 (WebCore::Node::traverseNextNode):
2499 (WebCore::Node::traverseNextSibling):
2500 (WebCore::Node::traversePreviousNodePostOrder):
2501 (WebCore::Node::checkAddChild):
2502 (WebCore::Node::isDescendantOf):
2504 * dom/NodeIterator.cpp:
2505 (WebCore::NodeIterator::notifyBeforeNodeRemoval):
2506 * editing/ApplyStyleCommand.cpp:
2507 (WebCore::ApplyStyleCommand::applyBlockStyle):
2508 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
2509 (WebCore::ApplyStyleCommand::applyInlineStyle):
2510 (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAroundNode):
2511 * editing/CompositeEditCommand.cpp:
2512 (WebCore::CompositeEditCommand::mergeIdenticalElements):
2513 (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
2514 * editing/DeleteSelectionCommand.cpp:
2515 (WebCore::updatePositionForNodeRemoval):
2516 (WebCore::DeleteSelectionCommand::handleGeneralDelete):
2517 (WebCore::DeleteSelectionCommand::mergeParagraphs):
2518 * editing/FormatBlockCommand.cpp:
2519 (WebCore::FormatBlockCommand::doApply):
2520 * editing/IndentOutdentCommand.cpp:
2521 (WebCore::enclosingListOrBlockquote):
2522 * editing/Selection.cpp:
2523 (WebCore::Selection::validate):
2524 * editing/SelectionController.cpp:
2525 (WebCore::SelectionController::nodeWillBeRemoved):
2526 * editing/TextIterator.cpp:
2527 (WebCore::SimplifiedBackwardsTextIterator::advance):
2528 * editing/VisiblePosition.cpp:
2529 (WebCore::VisiblePosition::next):
2530 (WebCore::VisiblePosition::previous):
2531 (WebCore::VisiblePosition::canonicalPosition):
2532 (WebCore::isFirstVisiblePositionInNode):
2533 (WebCore::isLastVisiblePositionInNode):
2534 * editing/htmlediting.cpp:
2535 (WebCore::firstEditablePositionAfterPositionInRoot):
2536 (WebCore::lastEditablePositionBeforePositionInRoot):
2537 (WebCore::enclosingNodeWithTag):
2538 (WebCore::enclosingList):
2539 (WebCore::enclosingListChild):
2540 * editing/markup.cpp:
2541 (WebCore::createMarkup):
2543 2006-09-22 Timothy Hatcher <timothy@apple.com>
2547 - Added @property syntax to non-generated headers
2548 inside #ifndef BUILDING_ON_TIGER.
2549 - Changed the DOMEventTarget protocol to have have new versions
2550 of addEventListener and removeEventListener with named parameters.
2551 These old style methods can be removed once Mail changes to use
2552 the new methods <rdar://problem/4746649>.
2554 * WebCorePrefix.h: define BUILDING_ON_TIGER when Tiger is the target
2555 * bindings/objc/DOM.mm:
2556 (-[DOMNode addEventListener:listener:useCapture:]):
2557 (-[DOMNode addEventListener:::]): call the new method
2558 (-[DOMNode removeEventListener:listener:useCapture:]):
2559 (-[DOMNode removeEventListener:::]): call the new method
2560 * bindings/objc/DOMAbstractView.h:
2561 * bindings/objc/DOMEventTarget.h:
2562 * bindings/objc/DOMHTMLAppletElement.h:
2563 * bindings/objc/DOMHTMLEmbedElement.h:
2564 * bindings/objc/DOMHTMLOptionElement.h:
2565 * bindings/objc/DOMObject.h:
2566 * bindings/objc/DOMRGBColor.h:
2568 2006-09-22 Nikolas Zimmermann <zimmermann@kde.org>
2572 Fix Qt/Linux build and a really stupid mixup in GraphicsContextQt.
2574 * platform/qt/FrameQt.cpp:
2575 * platform/qt/GraphicsContextQt.cpp:
2576 (WebCore::GraphicsContext::translate): Make it actually translate, not scale! :-)
2577 (WebCore::GraphicsContext::origin):
2578 * platform/qt/PlatformScrollBar.h: Added.
2579 (WebCore::PlatformScrollBar::isWidget):
2580 * platform/qt/WidgetQt.cpp:
2581 (WebCore::Widget::invalidate):
2582 (WebCore::Widget::invalidateRect):
2584 2006-09-22 Dave Hyatt <hyatt@apple.com>
2586 Super-minor tweaks to the systemFont function on Mac.
2587 Set the generic family to None rather than to Serif, and
2588 don't waste time setting the computed size, since that is
2589 set from the specified size over in CSSStyleSelector anyway.
2591 * rendering/RenderThemeMac.mm:
2592 (WebCore::RenderThemeMac::systemFont):
2594 2006-09-22 Timothy Hatcher <timothy@apple.com>
2598 Build fix for Xcode 2.3. Convert GraphicsContext::translate() to
2599 take floats. There was already an implicit conversion to float/double
2600 when calling CGContextTranslateCTM or cairo_translate.
2602 * platform/GraphicsContext.h:
2603 * platform/cairo/GraphicsContextCairo.cpp:
2604 (WebCore::GraphicsContext::translate):
2605 * platform/cg/GraphicsContextCG.cpp:
2606 (WebCore::GraphicsContext::translate):
2608 2006-09-22 Brady Eidson <beidson@apple.com>
2612 Add redirect and other cleanup to ResourceLoaderWin.cpp
2613 Fixes bug http://bugs.webkit.org/show_bug.cgi?id=10927
2614 Fixes bug http://bugs.webkit.org/show_bug.cgi?id=10744
2616 * WebCore.xcodeproj/project.pbxproj:
2617 * platform/ResourceLoader.h:
2618 * platform/win/ResourceLoaderWin.cpp:
2619 (WebCore::ResourceLoaderWndProc):
2620 (WebCore::initializeOffScreenResourceLoaderWindow):
2621 (WebCore::ResourceLoader::onHandleCreated):
2622 (WebCore::ResourceLoader::onRequestRedirected):
2623 (WebCore::ResourceLoader::onRequestComplete):
2624 (WebCore::transferJobStatusCallback):
2626 2006-09-22 Alexey Proskuryakov <ap@nypop.com>
2630 http://bugs.webkit.org/show_bug.cgi?id=10803
2631 REGRESSION (r15536-r15544): manual-tests/bugzilla-6821.html failing
2633 * page/FrameView.cpp:
2634 (WebCore::FrameView::hoverTimerFired): Use the current event.
2636 2006-09-22 Nikolas Zimmermann <zimmermann@kde.org>
2640 Fix (last) svg memory leak.
2642 * ksvg2/svg/SVGTransformable.cpp: delete 't' in error case.
2643 (SVGTransformable::parseTransformAttribute):
2645 2006-09-22 Eric Seidel <eric@eseidel.com>
2647 No review necessary, just removing a dead file.
2649 Remove unused file (added previously by mistake) to make room for real implementation.
2651 * platform/mac/BitmapImageMac.mm: Removed.
2653 2006-09-22 Dave Hyatt <hyatt@apple.com>
2655 Move PlatformScrollBar.h down into the platforms.
2657 Reviewed by andersca
2659 * platform/PlatformScrollBar.h: Removed.
2660 * platform/win/PlatformScrollBar.h: Added.
2661 * platform/mac/PlatformScrollBar.h: Added.
2663 2006-09-22 Dave Hyatt <hyatt@apple.com>
2665 Add support for invalidation of widgets. This will be needed for the Win32 widget subsystem (and for
2666 any widget subsystems that don't have any underlying native objects backing the widgets.
2670 * platform/Widget.h:
2671 * platform/mac/WidgetMac.mm:
2672 (WebCore::Widget::invalidate):
2673 (WebCore::Widget::invalidateRect):
2674 * platform/win/TemporaryLinkStubs.cpp:
2675 (Widget::invalidate):
2676 (Widget::invalidateRect):
2678 2006-09-22 Rob Buis <buis@kd.org>
2680 Reviewed by eseidel.
2682 http://bugs.webkit.org/show_bug.cgi?id=10901
2683 Merge build fixes from unity
2687 2006-09-21 Nikolas Zimmermann <zimmermann@kde.org>
2689 Reviewed by eseidel.
2691 http://bugs.webkit.org/show_bug.cgi?id=10977
2692 SVGDocument does not expose 'rootElement' property
2694 Enable 'rootElement' property.
2696 * ksvg2/svg/SVGDocument.idl:
2698 2006-09-21 Steve Falkenburg <sfalken@apple.com>
2702 * platform/ResourceLoaderInternal.h:
2704 2006-09-21 Geoffrey Garen <ggaren@apple.com>
2706 build fixed. band happy.
2708 * platform/cg/GraphicsContextCG.cpp:
2709 (WebCore::GraphicsContext::translate):
2710 * platform/mac/WidgetMac.mm:
2712 2006-09-21 Geoffrey Garen <ggaren@apple.com>
2716 Some Widget refactoring.
2718 * WebCore.vcproj/WebCore/WebCore.vcproj:
2719 * bridge/mac/FrameMac.mm:
2720 * bridge/win/FrameWin.cpp:
2721 (WebCore::FrameWin::runJavaScriptAlert):
2722 (WebCore::FrameWin::runJavaScriptConfirm):
2723 * bridge/win/PageWin.cpp:
2724 (WebCore::Page::Page):
2725 (WebCore::rootWindowForFrame):
2726 * html/CanvasRenderingContext2D.cpp:
2727 (WebCore::CanvasRenderingContext2D::translate):
2728 * page/FrameView.cpp:
2729 (WebCore::FrameView::isFrameView):
2731 (WebCore::Page::setInstanceHandle):
2732 (WebCore::Page::instanceHandle):
2733 * platform/GraphicsContext.h:
2734 * platform/ScrollView.h:
2735 * platform/Widget.h:
2736 * platform/cairo/GraphicsContextCairo.cpp:
2737 (WebCore::GraphicsContext::translate):
2738 (WebCore::GraphicsContext::origin):
2739 * platform/mac/WidgetMac.mm:
2740 (WebCore::Widget::clearFocus):
2741 * platform/win/ResourceLoaderWin.cpp:
2742 (WebCore::initializeOffScreenResourceLoaderWindow):
2743 * platform/win/ScreenWin.cpp:
2744 (WebCore::monitorInfo):
2745 * platform/win/ScrollViewWin.cpp:
2746 (WebCore::ScrollView::updateContents):
2747 (WebCore::ScrollView::visibleWidth):
2748 (WebCore::ScrollView::visibleHeight):
2749 (WebCore::ScrollView::visibleContentRect):
2750 (WebCore::ScrollView::viewportToContents):
2751 (WebCore::ScrollView::contentsToViewport):
2752 (WebCore::ScrollView::scrollBy):
2753 (WebCore::ScrollView::updateScrollInfo):
2754 (WebCore::ScrollView::updateScrollBars):
2755 * platform/win/SharedTimerWin.cpp:
2756 (WebCore::initializeOffScreenTimerWindow):
2757 * platform/win/TemporaryLinkStubs.cpp:
2758 (FrameView::updateBorder):
2759 (ScrollView::paint):
2760 (GraphicsContext::clip):
2761 * platform/win/WidgetWin.cpp:
2762 (WebCore::Widget::Widget):
2763 (WebCore::Widget::parentWindow):
2764 (WebCore::Widget::setParentWindow):
2765 (WebCore::Widget::frameGeometry):
2766 (WebCore::Widget::hasFocus):
2767 (WebCore::Widget::setFocus):
2768 (WebCore::Widget::show):
2769 (WebCore::Widget::hide):
2770 (WebCore::Widget::setFrameGeometry):
2772 2006-09-22 Anders Carlsson <acarlsson@apple.com>
2776 * platform/TextEncoding.cpp:
2777 (WebCore::TextEncoding::backslashAsCurrencySymbol):
2778 Add comment clarifying why backslashAsCurrencySymbol is needed.
2780 2006-09-21 Sean Gies <seangies@apple.com>
2782 Reviewed by Adam Roben.
2784 Add utility functions to get and release HDC from GraphicsContext.
2786 * platform/GraphicsContext.h: Add utilities to get and release HDC.
2787 * platform/cairo/GraphicsContextCairo.cpp: Implement new utilities.
2788 * rendering/RenderThemeWin.cpp: Switch to new utilities.
2790 2006-09-21 Justin Garcia <justin.garcia@apple.com>
2794 <rdar://problem/4426622>
2795 Plain text paste slow. Time spent mostly in WebCore::rebalanceWhitespaceInTextNode(...)
2797 * editing/htmlediting.cpp:
2798 (WebCore::rebalanceWhitespaceInTextNode): We no longer need to use a RegExp replace because we
2799 aren't producing complicated sequences here. Use multiple UChar -> UChar replaces instead for speed.
2800 Got rid of uses of DepricatedString.
2802 2006-09-21 Nikolas Zimmermann <zimmermann@kde.org>
2804 Reviewed by eseidel.
2806 Don't crash if no IconDatabase is available (ie. on Qt/Gdk)
2809 (WebCore::Frame::endIfNotLoading):
2811 2006-09-21 Nikolas Zimmermann <zimmermann@kde.org>
2813 Reviewed by eseidel.
2818 * kcanvas/device/qt/KCanvasClipperQt.h:
2819 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
2820 * platform/qt/FrameQt.cpp:
2821 (WebCore::FrameQt::isLoadTypeReload):
2822 (WebCore::FrameQt::originalRequestURL):
2823 * platform/qt/FrameQt.h:
2824 * platform/qt/GraphicsContextQt.cpp:
2825 (WebCore::GraphicsContext::concatCTM):
2826 * platform/qt/ScrollViewQt.cpp:
2827 (WebCore::ScrollView::wheelEvent):
2828 * platform/qt/TemporaryLinkStubs.cpp:
2829 (WebCore::IconDatabase::setIconURLForPageURL):
2831 2006-09-20 Justin Garcia <justin.garcia@apple.com>
2835 <http://bugs.webkit.org/show_bug.cgi?id=7165>
2836 TinyMCE: Dragging & dropping content always leaves a copy when editing inside a subframe
2838 * editing/MoveSelectionCommand.cpp:
2839 (WebCore::MoveSelectionCommand::MoveSelectionCommand): Set the document
2840 to the position-to-move-to's document, not the fragment's document. The
2841 fragment's document is the document used to create the fragment and is irrelavant.
2843 === Safari-521.27 ===
2845 2006-09-21 Brady Eidson <beidson@apple.com>
2849 When your assumption is "IconDatabase::sharedIconDatabase()" will never fail but it does, you're in trouble
2850 This fixes Spinneret so it won't crash on its first load!
2853 (WebCore::Frame::endIfNotLoading):
2855 2006-09-21 Brady Eidson <beidson@apple.com>
2859 * platform/win/TemporaryLinkStubs.cpp:
2860 (ScrollView::wheelEvent):
2862 2006-09-20 Rob Buis <buis@kde.org>
2864 Reviewed by eseidel.
2866 http://bugs.webkit.org/show_bug.cgi?id=10946
2867 new marker code draws end-marker in wrong place
2869 Keep track of the start of the subpath so we can handle
2870 closeTo/moveTo correctly.
2872 * kcanvas/RenderPath.cpp:
2873 (WebCore::DrawMarkersData::DrawMarkersData):
2874 (WebCore::updateMarkerDataForElement):
2876 2006-09-21 David Hyatt <hyatt@apple.com>
2878 Wheel scrolling prep for Win32.
2880 WARNING: NO TEST CASES ADDED OR CHANGED
2882 * platform/PlatformWheelEvent.h:
2883 * platform/ScrollBar.h:
2884 * platform/ScrollView.h:
2885 * platform/mac/ScrollViewMac.mm:
2886 (WebCore::ScrollView::wheelEvent):
2887 * rendering/RenderLayer.cpp:
2889 2006-09-20 Timothy Hatcher <timothy@apple.com>
2893 Bug 10917: REGRESSION (r16027): iFrame transparency broken
2894 http://bugs.webkit.org/show_bug.cgi?id=10917
2896 Don't paint the base background color if we transparent.
2898 * rendering/RenderBox.cpp:
2899 (WebCore::RenderBox::paintBackgroundExtended):
2901 2006-09-20 Adam Roben <aroben@apple.com>
2903 Reviewed by andersca.
2905 * platform/FileChooser.h: Remove no-longer-necessary namespace std
2907 2006-09-20 Eric Seidel <eric@eseidel.com>
2911 Cleanup style in KCanvas.
2912 Remove extra white-space, unneeded arguments, etc.
2914 * WebCore.xcodeproj/project.pbxproj:
2915 * kcanvas/KCanvasClipper.cpp:
2916 (WebCore::operator<<):
2917 (WebCore::KCanvasClipper::externalRepresentation):
2918 * kcanvas/KCanvasClipper.h:
2919 * kcanvas/KCanvasFilters.cpp:
2920 (WebCore::KCanvasFilter::externalRepresentation):
2921 (WebCore::operator<<):
2922 (WebCore::KCanvasFilterEffect::externalRepresentation):
2923 (WebCore::KCPointLightSource::externalRepresentation):
2924 (WebCore::KCSpotLightSource::externalRepresentation):
2925 (WebCore::KCDistantLightSource::externalRepresentation):
2926 (WebCore::KCanvasFEBlend::externalRepresentation):
2927 (WebCore::KCanvasFEColorMatrix::externalRepresentation):
2928 (WebCore::KCanvasFEComponentTransfer::externalRepresentation):
2929 (WebCore::KCanvasFEComposite::externalRepresentation):
2930 (WebCore::KCanvasFEConvolveMatrix::externalRepresentation):
2931 (WebCore::KCanvasFEDiffuseLighting::externalRepresentation):
2932 (WebCore::KCanvasFEDisplacementMap::externalRepresentation):
2933 (WebCore::KCanvasFEFlood::externalRepresentation):
2934 (WebCore::KCanvasFEGaussianBlur::externalRepresentation):
2935 (WebCore::KCanvasFEImage::externalRepresentation):
2936 (WebCore::KCanvasFEMerge::externalRepresentation):
2937 (WebCore::KCanvasFEMorphology::externalRepresentation):
2938 (WebCore::KCanvasFEOffset::externalRepresentation):
2939 (WebCore::KCanvasFESpecularLighting::externalRepresentation):
2940 (WebCore::KCanvasFETile::externalRepresentation):
2941 (WebCore::KCanvasFETurbulence::externalRepresentation):
2942 * kcanvas/KCanvasFilters.h:
2943 (WebCore::KCanvasFEDiffuseLighting::lightSource):
2944 (WebCore::KCanvasFESpecularLighting::lightSource):
2945 * kcanvas/KCanvasImage.h:
2946 * kcanvas/KCanvasMarker.cpp:
2947 (WebCore::KCanvasMarker::externalRepresentation):
2948 * kcanvas/KCanvasMarker.h:
2949 * kcanvas/KCanvasResource.cpp:
2950 (WebCore::operator<<):
2951 * kcanvas/KCanvasResource.h:
2952 * kcanvas/KCanvasTreeDebug.cpp:
2953 (WebCore::operator<<):
2954 (WebCore::writeIndent):
2955 (WebCore::writeStyle):
2957 (WebCore::writeRenderResources):
2958 * kcanvas/KCanvasTreeDebug.h:
2959 (WebCore::operator<<):
2960 * kcanvas/RenderForeignObject.cpp:
2961 (WebCore::RenderForeignObject::paint):
2962 * kcanvas/RenderPath.cpp:
2963 (WebCore::RenderPath::paint):
2964 (WebCore::drawStartAndMidMarkers):
2965 * kcanvas/RenderSVGContainer.cpp:
2966 (WebCore::RenderSVGContainer::paint):
2967 * kcanvas/RenderSVGImage.cpp:
2968 (WebCore::RenderSVGImage::translateForAttributes):
2969 * kcanvas/RenderSVGImage.h:
2970 * kcanvas/device/KRenderingDevice.cpp:
2971 (WebCore::KRenderingDevice::currentContext):
2972 (WebCore::KRenderingDevice::popContext):
2973 (WebCore::KRenderingDevice::pushContext):
2974 * kcanvas/device/KRenderingDevice.h:
2975 * kcanvas/device/KRenderingFillPainter.h:
2976 * kcanvas/device/KRenderingPaintServer.h:
2977 (WebCore::KRenderingPaintServer::KRenderingPaintServer):
2978 (WebCore::KRenderingPaintServer::activeClient):
2979 (WebCore::KRenderingPaintServer::setActiveClient):
2980 * kcanvas/device/KRenderingPaintServerGradient.cpp:
2981 (WebCore::operator<<):
2982 (WebCore::KRenderingPaintServerGradient::externalRepresentation):
2983 (WebCore::KRenderingPaintServerLinearGradient::externalRepresentation):
2984 (WebCore::KRenderingPaintServerGradient::listener):
2985 (WebCore::KRenderingPaintServerGradient::setListener):
2986 (WebCore::KRenderingPaintServerRadialGradient::externalRepresentation):
2987 * kcanvas/device/KRenderingPaintServerGradient.h:
2988 * kcanvas/device/KRenderingPaintServerPattern.cpp:
2989 (WebCore::KRenderingPaintServerPattern::tile):
2990 (WebCore::KRenderingPaintServerPattern::setTile):
2991 (WebCore::KRenderingPaintServerPattern::listener):
2992 (WebCore::KRenderingPaintServerPattern::setListener):
2993 (WebCore::KRenderingPaintServerPattern::externalRepresentation):
2994 * kcanvas/device/KRenderingPaintServerPattern.h:
2995 * kcanvas/device/KRenderingPaintServerSolid.cpp:
2996 (WebCore::KRenderingPaintServerSolid::externalRepresentation):
2997 * kcanvas/device/KRenderingPaintServerSolid.h:
2998 * kcanvas/device/KRenderingStrokePainter.cpp:
2999 (WebCore::KRenderingStrokePainter::strokeMiterLimit):
3000 (WebCore::KRenderingStrokePainter::setStrokeMiterLimit):
3001 * kcanvas/device/KRenderingStrokePainter.h:
3002 * kcanvas/device/quartz/KCanvasFilterQuartz.h:
3003 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
3004 (WebCore::KCanvasFilterQuartz::prepareFilter):
3005 * kcanvas/device/quartz/KCanvasItemQuartz.h: Removed.
3006 * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
3007 (WebCore::KCanvasMaskerQuartz::applyMask):
3008 * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
3009 (WebCore::KCanvasImageQuartz::init):
3010 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
3011 (WebCore::KCanvasClipperQuartz::applyClip):
3012 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
3013 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
3014 (WebCore::KRenderingDeviceQuartz::quartzContext):
3015 (WebCore::KRenderingDeviceQuartz::contextForImage):
3016 (WebCore::KRenderingDeviceQuartz::createPaintServer):
3017 (WebCore::KRenderingDeviceQuartz::createResource):
3018 (WebCore::KRenderingDeviceQuartz::createFilterEffect):
3019 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
3020 (WebCore::CGShadingRefForLinearGradient):
3021 (WebCore::CGShadingRefForRadialGradient):
3022 (WebCore::KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
3023 (WebCore::KRenderingPaintServerGradientQuartz::teardown):
3024 * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
3025 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
3026 (WebCore::KRenderingPaintServerQuartzHelper::strokePath):
3027 (WebCore::KRenderingPaintServerQuartzHelper::clipToStrokePath):
3028 (WebCore::KRenderingPaintServerQuartzHelper::fillPath):
3029 (WebCore::KRenderingPaintServerQuartzHelper::clipToFillPath):
3030 (WebCore::KRenderingPaintServerSolidQuartz::draw):
3031 (WebCore::KRenderingPaintServerSolidQuartz::setup):
3032 (WebCore::KRenderingPaintServerSolidQuartz::renderPath):
3033 (WebCore::KRenderingPaintServerPatternQuartz::setup):
3034 (WebCore::KRenderingPaintServerPatternQuartz::renderPath):
3035 (WebCore::KRenderingPaintServerPatternQuartz::teardown):
3036 * kcanvas/device/quartz/QuartzSupport.h:
3037 * kcanvas/device/quartz/QuartzSupport.mm:
3038 (WebCore::applyStrokeStyleToContext):
3040 2006-09-20 Anders Carlsson <acarlsson@apple.com>
3042 Reviewed by Dave Hyatt.
3044 * dom/WheelEvent.cpp:
3045 (WebCore::WheelEvent::WheelEvent):
3046 Use lroundf instead of lround since deltas are floats.
3048 2006-09-20 Julien Palmas <julien.palmas@gmail.com>
3050 Reviewed by eseidel. Landed by eseidel.
3052 Test: svg/custom/pattern-y-offset.svg
3054 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
3055 (WebCore::KRenderingPaintServerPatternQuartz::setup):
3057 2006-09-20 David Hyatt <hyatt@apple.com>
3059 Add a new wheelEvent method to ScrollView. Platforms that wish
3060 to handle the wheel event for the scroll view themselves can then
3061 do so there. (Mac lets the underlying NSScrollView do it for now.)
3063 * page/FrameView.cpp:
3064 (WebCore::FrameView::handleWheelEvent):
3065 * platform/ScrollView.h:
3066 (WebCore::ScrollView::wheelEvent):
3068 2006-09-20 Brady Eidson <beidson@apple.com>
3070 Reviewed by Tim Omernick
3072 Part of fixing a crash Tim O showed me that I missed in a release build.
3073 WebKit should be able to call through the bridge to WebCore no matter what -
3074 Replace the _iconDB member with calls to IconDatabase::sharedIconDatabase()
3076 * bridge/mac/WebCoreIconDatabaseBridge.h:
3077 * bridge/mac/WebCoreIconDatabaseBridge.mm:
3078 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
3079 (-[WebCoreIconDatabaseBridge isOpen]):
3080 (-[WebCoreIconDatabaseBridge removeAllIcons]):
3081 (-[WebCoreIconDatabaseBridge _isEmpty]):
3082 (-[WebCoreIconDatabaseBridge isIconExpiredForIconURL:]):
3083 (-[WebCoreIconDatabaseBridge setPrivateBrowsingEnabled:]):
3084 (-[WebCoreIconDatabaseBridge privateBrowsingEnabled]):
3085 (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
3086 (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
3087 (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
3088 (-[WebCoreIconDatabaseBridge retainIconForURL:]):
3089 (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
3090 (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
3091 (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
3092 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
3093 (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]):
3094 (-[WebCoreIconDatabaseBridge _setEnabled:]):
3095 (-[WebCoreIconDatabaseBridge _isEnabled]):
3097 2006-09-20 Anders Carlsson <acarlsson@apple.com>
3101 Add String::split which returns a Vector of Strings and use it instead of
3102 DeprecatedStringList.
3104 * bindings/js/kjs_events.cpp:
3105 (KJS::Clipboard::getValueProperty):
3106 * bindings/js/kjs_window.cpp:
3107 (KJS::parseModalDialogFeatures):
3108 * css/MediaList.cpp:
3109 (WebCore::MediaList::setMediaText):
3111 * html/HTMLFormElement.cpp:
3112 (WebCore::HTMLFormElement::formData):
3113 * html/HTMLLinkElement.cpp:
3114 (WebCore::HTMLLinkElement::tokenizeRelAttribute):
3115 * platform/PlatformString.h:
3116 * platform/String.cpp:
3117 (WebCore::String::split):
3118 * platform/StringImpl.cpp:
3119 * platform/StringImpl.h:
3120 * platform/mac/ClipboardMac.h:
3121 * platform/mac/ClipboardMac.mm:
3122 (WebCore::ClipboardMac::types):
3124 2006-09-20 Justin Garcia <justin.garcia@apple.com>
3126 Reviewed by harrison
3128 * css/cssstyleselector.cpp:
3129 (WebCore::CSSStyleSelector::adjustRenderStyle): Don't call
3130 HTMLElement::isContentEditable just to check the Frame's editability, since
3131 it calls updateRenderering, which can get us into infinite recursion.
3133 2006-09-20 Brady Eidson <beidson@apple.com>
3137 Cleaned up my last patch alot, and made the WebCore icon database disabled by default
3139 * loader/icon/IconDatabase.cpp:
3140 (WebCore::IconDatabase::IconDatabase): Disabled by default
3141 (WebCore::IconDatabase::removeAllIcons): Respect just isOpen() (disabled database will always be closed)
3142 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ditto
3143 (WebCore::IconDatabase::iconForPageURL): Ditto
3144 (WebCore::IconDatabase::isIconExpiredForIconURL): Ditto
3145 (WebCore::IconDatabase::iconURLForPageURL): Ditto
3146 (WebCore::IconDatabase::retainIconForPageURL): Ditto
3147 (WebCore::IconDatabase::releaseIconForPageURL): Ditto
3148 (WebCore::IconDatabase::setIconDataForIconURL): Ditto
3149 (WebCore::IconDatabase::setIconURLForPageURL): Ditto
3150 (WebCore::IconDatabase::hasEntryForIconURL): Ditto
3151 (WebCore::IconDatabase::setEnabled): Fixed a big bug here!
3153 2006-09-20 Adam Roben <aroben@apple.com>
3157 Fixes http://bugs.webkit.org/show_bug.cgi?id=10935
3158 REGRESSION: file upload control with direction:rtl or text-align:right
3159 draws button on top of filename/icon
3161 * rendering/RenderFileUploadControl.cpp:
3162 (WebCore::RenderFileUploadControl::setStyle): Force text-align to
3164 (WebCore::RenderFileUploadControl::paintObject): Fix positioning of
3165 the filename and icon in RTL
3167 2006-09-20 Alice Liu <alice.liu@apple.com>
3169 Reviewed by Adam Roben.
3173 * dom/WheelEvent.cpp:
3174 (WebCore::WheelEvent::WheelEvent):
3175 changed lrint to lround
3177 2006-09-20 Sam Weinig <sam.weinig@gmail.com>
3179 Build Fix. Adds isHorizontal attribute back to WheelEvent
3180 for the Objective-C bindings. If it is found that isHorizontal
3181 is not used, we should remove it again but also remove it's
3182 declaration from PublicDOMInterfaces.h
3185 (WebCore::WheelEvent::isHorizontal):
3186 * dom/WheelEvent.idl:
3188 2006-09-20 David Hyatt <hyatt@apple.com>
3190 Fix for 10945, WheelEvent should support two dimensions at once, since
3191 MacBooks allow for diagonal scrolling. Also enhance the PlatformWheelEvent
3192 to allow for diagonal scrolling.
3196 * dom/EventTargetNode.cpp:
3197 (WebCore::EventTargetNode::dispatchWheelEvent):
3198 * dom/WheelEvent.cpp:
3199 (WebCore::WheelEvent::WheelEvent):
3200 (WebCore::WheelEvent::initWheelEvent):
3202 (WebCore::WheelEvent::wheelDelta):
3203 (WebCore::WheelEvent::wheelDeltaX):
3204 (WebCore::WheelEvent::wheelDeltaY):
3205 * dom/WheelEvent.idl:
3206 * page/FrameView.cpp:
3207 (WebCore::FrameView::handleWheelEvent):
3208 * platform/PlatformWheelEvent.h:
3209 (WebCore::PlatformWheelEvent::deltaX):
3210 (WebCore::PlatformWheelEvent::deltaY):
3211 (WebCore::PlatformWheelEvent::normalize):
3212 * platform/mac/WheelEventMac.mm:
3213 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3215 2006-09-19 Eric Seidel <eric@eseidel.com>
3219 Split KCanvasResources.* into multiple files (and some other minor spacing changes).
3221 No tests were harmed in the making of this patch.
3223 * WebCore.xcodeproj/project.pbxproj:
3224 * kcanvas/KCanvasClipper.cpp: Added.
3225 (WebCore::operator<<):
3226 * kcanvas/KCanvasClipper.h: Added.
3227 * kcanvas/KCanvasFilters.h:
3228 * kcanvas/KCanvasImage.h:
3229 * kcanvas/KCanvasMarker.cpp: Added.
3230 * kcanvas/KCanvasMarker.h: Added.
3231 * kcanvas/KCanvasMasker.cpp: Added.
3232 (WebCore::KCanvasMasker::KCanvasMasker):
3233 (WebCore::KCanvasMasker::setMask):
3234 (WebCore::KCanvasMasker::externalRepresentation):
3235 (WebCore::getMaskerById):
3236 * kcanvas/KCanvasMasker.h: Added.
3237 * kcanvas/KCanvasResource.cpp: Added.
3238 (WebCore::KCanvasResource::invalidate):
3239 (WebCore::KCanvasResource::externalRepresentation):
3240 (WebCore::getResourceById):
3241 (WebCore::getPaintServerById):
3242 * kcanvas/KCanvasResource.h: Added.
3243 * kcanvas/KCanvasResources.cpp: Removed.
3244 * kcanvas/KCanvasResources.h: Removed.
3245 * kcanvas/RenderPath.cpp:
3246 * kcanvas/RenderSVGContainer.cpp:
3247 * kcanvas/RenderSVGImage.cpp:
3248 * kcanvas/RenderSVGText.cpp:
3249 * kcanvas/device/KRenderingPaintServer.h:
3250 * kcanvas/device/quartz/KCanvasMaskerQuartz.h:
3251 * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
3252 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
3253 * ksvg2/svg/SVGClipPathElement.h:
3254 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
3255 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
3256 * ksvg2/svg/SVGFECompositeElement.cpp:
3257 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
3258 * ksvg2/svg/SVGFELightElement.cpp:
3259 * ksvg2/svg/SVGFEOffsetElement.cpp:
3260 * ksvg2/svg/SVGFETurbulenceElement.cpp:
3261 * ksvg2/svg/SVGFilterElement.cpp:
3262 * ksvg2/svg/SVGLinearGradientElement.cpp:
3263 * ksvg2/svg/SVGMarkerElement.h:
3264 * ksvg2/svg/SVGMaskElement.h:
3266 2006-09-19 Brady Eidson <beidson@apple.com>
3268 Reviewed by Sarge Decker
3270 <rdar://problem/4739892> and <rdar://problem/4729797>
3271 - WebCore::IconDatabase needs to have and respect an enabled() flag
3272 - Mail on ToT WebKit crashes in IconDatabase code when mailing a page from Safari
3274 * bridge/mac/WebCoreIconDatabaseBridge.h:
3275 * bridge/mac/WebCoreIconDatabaseBridge.mm:
3276 (-[WebCoreIconDatabaseBridge _setEnabled:]): Added
3277 (-[WebCoreIconDatabaseBridge _isEnabled]): Added
3278 * loader/icon/IconDatabase.cpp:
3279 (WebCore::IconDatabase::IconDatabase):
3280 (WebCore::IconDatabase::open): Don't open if disabled
3281 (WebCore::IconDatabase::removeAllIcons): Ignore if disabled/closed
3282 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ignore if disabled/closed
3283 (WebCore::IconDatabase::iconForPageURL): Default Icon if disabled/closed
3284 (WebCore::IconDatabase::isIconExpiredForIconURL): Default return if disabled/closed
3285 (WebCore::IconDatabase::iconURLForPageURL): Default return if disabled/closed
3286 (WebCore::IconDatabase::retainIconForPageURL): Ignore if disabled/closed
3287 (WebCore::IconDatabase::releaseIconForPageURL): Ignore if disabled/closed
3288 (WebCore::IconDatabase::releaseIconURL):
3289 (WebCore::IconDatabase::setIconDataForIconURL): Ignore if disabled/closed
3290 (WebCore::IconDatabase::setIconURLForPageURL): Ignore if disabled/closed
3291 (WebCore::IconDatabase::hasEntryForIconURL): Default return if disabled/closed
3292 (WebCore::IconDatabase::setEnabled): Added
3293 * loader/icon/IconDatabase.h:
3294 (WebCore::IconDatabase::enabled): Added
3296 (WebCore::Frame::endIfNotLoading): do an IconDatabase::enabled() check before bothering to load the icon
3297 * platform/mac/ResourceLoaderMac.mm: Removed extraneous #include
3299 2006-09-20 David Hyatt <hyatt@apple.com>
3301 Massage mouse wheel handling so that it is more cross-platform. Make
3302 all the work happen in handleWheelEvent on the FrameView.
3304 Reviewed by bradee-oh
3306 * bridge/mac/FrameMac.mm:
3307 (WebCore::FrameMac::wheelEvent):
3308 * page/FrameView.cpp:
3309 (WebCore::FrameView::handleWheelEvent):
3310 * platform/PlatformWheelEvent.h:
3311 (WebCore::PlatformWheelEvent::platformDelta):
3312 (WebCore::PlatformWheelEvent::delta):
3313 * platform/mac/WheelEventMac.mm:
3314 (WebCore::platformDeltaForEvent):
3315 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3316 * rendering/RenderLayer.cpp:
3317 (WebCore::RenderLayer::scroll):
3318 * rendering/RenderObject.cpp:
3319 (WebCore::RenderObject::scroll):
3321 2006-09-19 Eric Seidel <eric@eseidel.com>
3325 Improve test output for filters with bounding-box relative sizes.
3326 http://bugs.webkit.org/show_bug.cgi?id=8585
3328 Many test results updated.
3330 * kcanvas/KCanvasFilters.cpp:
3331 (WebCore::KCanvasFilter::externalRepresentation):
3333 2006-09-19 Eric Seidel <eric@eseidel.com>
3337 Markers should clip to their viewport.
3338 http://bugs.webkit.org/show_bug.cgi?id=5967
3340 Test: svg/custom/marker-overflow-clip.svg
3342 * kcanvas/KCanvasResources.cpp:
3343 (WebCore::KCanvasMarker::KCanvasMarker):
3344 (WebCore::KCanvasMarker::setMarker):
3345 (WebCore::KCanvasMarker::draw):
3346 * kcanvas/KCanvasResources.h:
3347 (WebCore::KCanvasMasker::mask):
3348 * ksvg2/svg/SVGMarkerElement.cpp:
3349 (WebCore::SVGMarkerElement::SVGMarkerElement):
3350 (WebCore::SVGMarkerElement::parseMappedAttribute):
3351 (WebCore::SVGMarkerElement::canvasResource):
3352 (WebCore::SVGMarkerElement::createRenderer):
3354 2006-09-19 Justin Garcia <justin.garcia@apple.com>
3358 Backing out my recent change.
3360 * css/cssstyleselector.cpp:
3361 (WebCore::CSSStyleSelector::adjustRenderStyle):
3363 2006-09-19 Brady Eidson <beidson@apple.com>
3365 Reviewed by Kevin McCullough
3367 http://bugs.webkit.org/show_bug.cgi?id=10940
3368 Opening a PDF in a new tab/window creates a documentless-frame
3369 and we deref the document without checking its validity
3372 (WebCore::Frame::iconURL):
3374 2006-09-19 Justin Garcia <justin.garcia@apple.com>
3376 Reviewed by harrison
3378 <rdar://problem/4735272>
3379 Can not click into link in programmatically editable content
3381 * css/cssstyleselector.cpp:
3382 (WebCore::CSSStyleSelector::adjustRenderStyle): We stopped using
3383 userModify to implement document wide editability.
3385 2006-09-19 MorganL <morlmor@yahoo.com>
3387 Reviewed by Darin and landed by Brady
3389 Fixes http://bugs.webkit.org/show_bug.cgi?id=10939
3390 Build broken when SVG is not enabled.
3392 * dom/XMLTokenizer.cpp:
3393 (WebCore::XMLTokenizer::startElementNs):
3395 2006-09-19 Justin Garcia <justin.garcia@apple.com>
3397 Reviewed by harrison
3399 <rdar://problem/4727383> REGRESSION: Pasting plain text with tabs into Blot converts the tabs to single spaces
3401 Pasting plain text results in a match style paste, and the insertion
3402 position is whitespace normal, which clobbers the whitespace:pre on
3403 tab spans. Skip changes to the whitespace mode when computing a style
3404 change for tab spans or the text nodes inside tab spans.
3406 * editing/ApplyStyleCommand.cpp:
3407 (WebCore::StyleChange::init): Don't change the whitespace mode inside
3410 2006-09-19 David Hyatt <hyatt@apple.com>
3412 Fix for bug 5298, shape=default not supported for image maps. Implement
3417 * html/HTMLAreaElement.cpp:
3418 (WebCore::HTMLAreaElement::getRegion):
3419 * html/HTMLMapElement.cpp:
3420 (WebCore::HTMLMapElement::mapMouseEvent):
3422 2006-09-19 Adam Roben <aroben@apple.com>
3426 Fixes http://bugs.webkit.org/show_bug.cgi?id=10824
3427 "no file selected" placeholder text missing from file upload control
3429 * WebCore.xcodeproj/project.pbxproj:
3430 * rendering/RenderFileUploadControl.cpp: Remove class
3431 RenderFileUploadInnerFileBox, rename defaultFilenameNumChars to
3432 defaultWidthNumChars
3433 (WebCore::RenderFileUploadControl::RenderFileUploadControl): Call
3434 RenderBlock constructor instead of RenderFlexibleBox,
3435 (WebCore::RenderFileUploadControl::setStyle): Remove references to
3437 (WebCore::RenderFileUploadControl::valueChanged): Call repaint()
3438 instead of updateIconAndFileName() (which has been removed)
3439 (WebCore::RenderFileUploadControl::updateFromElement): Remove
3440 references to m_fileBox, don't call updateIconAndFilename()
3441 (WebCore::RenderFileUploadControl::maxFilenameWidth): Calculate width
3442 without using m_fileBox
3443 (WebCore::RenderFileUploadControl::createButtonStyle): Remove
3444 now-unnecessary display:box rule.
3445 (WebCore::RenderFileUploadControl::paintObject): Remove redundant call
3446 to paintingDisabled() now that Icon::paint() does it, and add code to
3447 paint the filename directly.
3448 (WebCore::RenderFileUploadControl::calcMinMaxWidth): Move this method
3449 out of RenderFileUploadInnerFileBox and into RenderFileUploadControl
3450 * rendering/RenderFileUploadControl.h: Make RenderFileUploadControl a
3451 subclass of RenderBlock instead of RenderFlexibleBox, remove
3452 updateIconAndFilename() method, remove m_fileBox instance variable.
3454 2006-09-19 Eric Seidel <eric@eseidel.com>
3458 Exceptions thrown from <script> tags in XHTML/SVG docs show the wrong line numbers
3459 http://bugs.webkit.org/show_bug.cgi?id=10846
3461 No automated test case possible until http://bugs.webkit.org/show_bug.cgi?id=10905 is resolved.
3463 * dom/XMLTokenizer.cpp:
3464 (WebCore::XMLTokenizer::XMLTokenizer):
3465 (WebCore::XMLTokenizer::startElementNs):
3466 (WebCore::XMLTokenizer::endElementNs):
3468 2006-09-19 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
3470 Reviewed by eseidel. Landed by eseidel.
3472 Build fix only, no tests affected.
3474 * platform/gdk/FontPlatformDataGdk.cpp:
3475 (WebCore::FontPlatformData::FontPlatformData):
3476 (WebCore::FontPlatformData::~FontPlatformData):
3477 * platform/gdk/FrameGdk.h:
3478 * platform/gdk/TemporaryLinkStubs.cpp:
3479 (FrameGdk::isLoadTypeReload):
3480 (FrameGdk::originalRequestURL):
3481 (IconDatabase::setIconURLForPageURL):
3483 2006-09-19 David Hyatt <hyatt@apple.com>
3485 Refine the fix for 9805 to really get all the complex cases right.
3489 * rendering/RenderBlock.cpp:
3490 (WebCore::RenderBlock::clearFloatsIfNeeded):
3491 (WebCore::RenderBlock::handleBottomOfBlock):
3493 2006-09-18 David Hyatt <hyatt@apple.com>
3495 Fix for 9805, <hr> not positioned properly following a previous empty sibling
3496 that had clear:both set on it. Update self-collapsing block clearance
3497 behavior to match what is specified in the latest draft of CSS2.1.
3501 Added fast/block/margin-collapse/empty-clear-blocks.html
3503 * rendering/RenderBlock.cpp:
3504 (WebCore::RenderBlock::clearFloatsIfNeeded):
3505 (WebCore::RenderBlock::handleBottomOfBlock):
3507 2006-09-18 MorganL <morlmor@yahoo.com>
3509 Reviewed by Brady, landed by Brady
3511 Send receivedResponse callback to ResourceLoaderClient when loading
3514 See http://bugs.webkit.org/show_bug.cgi?id=10845
3516 * platform/win/ResourceLoaderWin.cpp:
3517 (WebCore::ResourceLoader::fileLoadTimer):
3519 2006-09-18 Brady Eidson <beidson@apple.com>
3523 <rdar://problem/3028061> - WebKit never updates favicon
3524 The WebKit enforced expiration date for icons has worked for some time, but the
3525 move to the new Icon Loader broke the "always get the icon if the user refreshes the page"
3526 functionality. This patch fixes that up, along with some other architectural improvements,
3527 the main one being that WebCore::Document now contains an iconURL for the Frame to query if needed.
3529 * bridge/mac/FrameMac.h: Added isLoadTypeReload()
3530 * bridge/mac/FrameMac.mm:
3531 (WebCore::FrameMac::isLoadTypeReload): Implementation, calls into the bridge
3532 * bridge/mac/WebCoreFrameBridge.h: Added isLoadTypeReload:
3533 * bridge/win/FrameWin.h: Added isLoadTypeReload() for temporary link stub
3534 * dom/Document.h: Added m_iconURL
3535 (WebCore::Document::iconURL): Added
3536 (WebCore::Document::setIconURL): Ditto
3537 * html/HTMLLinkElement.cpp:
3538 (WebCore::HTMLLinkElement::process): Sets the iconURL in the Document instead of the Frame
3540 (WebCore::Frame::iconURL): Calculates the iconURL based on the document, then the default favicon.ico url
3541 (WebCore::Frame::endIfNotLoading): Checks for the load type - always loads icon on Reload
3542 * page/Frame.h: Nuked setIconURL(), added isLoadTypeReload()
3543 * page/FramePrivate.h: Nuked IconURL
3544 * platform/win/TemporaryLinkStubs.cpp:
3545 (FrameWin::isLoadTypeReload):
3547 2006-09-18 Sam Weinig <sam.weinig@gmail.com>
3551 - Re-add private method [DOMRGBColor _color] to DOMPrivate.h as
3552 it is it turns out that AppKit uses it.
3554 * bindings/objc/DOMPrivate.h:
3555 * bindings/objc/DOMRGBColor.mm:
3556 (-[DOMRGBColor _color]):
3558 2006-09-18 Sam Weinig <sam.weinig@gmail.com>
3562 Patch for http://bugs.webkit.org/show_bug.cgi?id=10903
3563 Yet Another Objective-C Bindings Patch
3565 - Whitespace cleanup for IDLParser.pm
3567 - Split DOMException, DOMRangeException, DOMXPathException, DOMEventsException
3568 and DOMAbstractView into their own files.
3570 - Remove private method [DOMRGBColor _color] from DOMPrivate.h as
3571 it is not used and a public method is available now.
3573 - Remove internal method [DOMDocument _ownerElement] from DOMInternal.h
3576 - Auto-generate method isContentEditable for DOMNode.
3578 - General cleanup of bindings code including removing unneeded #imports
3579 and whitespace cleanup
3581 * WebCore.xcodeproj/project.pbxproj:
3582 * bindings/objc/DOM.mm:
3585 (-[DOMNode _initWithNode:WebCore::]):
3586 (+[DOMNode _nodeWith:WebCore::]):
3587 (-[DOMNode WebCore::]):
3588 (-[DOMNode KJS::Bindings::]):
3589 (-[DOMNode addEventListener:::]):
3590 (-[DOMNode removeEventListener:::]):
3591 (-[DOMNode dispatchEvent:]):
3592 (-[DOMElement image]):
3593 (-[DOMElement _font]):
3594 (-[DOMElement _imageTIFFRepresentation]):
3595 (-[DOMElement _getURLAttribute:]):
3596 (-[DOMElement _NPObject]):
3597 (-[DOMElement isFocused]):
3598 (-[DOMRange dealloc]):
3599 (-[DOMRange finalize]):
3600 (-[DOMRange description]):
3601 (-[DOMRange startContainer]):
3602 (-[DOMRange startOffset]):
3603 (-[DOMRange endContainer]):
3604 (-[DOMRange endOffset]):
3605 (-[DOMRange collapsed]):
3606 (-[DOMRange commonAncestorContainer]):
3607 (-[DOMRange setStart::]):
3608 (-[DOMRange setEnd::]):
3609 (-[DOMRange setStartBefore:]):
3610 (-[DOMRange setStartAfter:]):
3611 (-[DOMRange setEndBefore:]):
3612 (-[DOMRange setEndAfter:]):
3613 (-[DOMRange collapse:]):
3614 (-[DOMRange selectNode:]):
3615 (-[DOMRange selectNodeContents:]):
3616 (-[DOMRange compareBoundaryPoints::]):
3617 (-[DOMRange deleteContents]):
3618 (-[DOMRange extractContents]):
3619 (-[DOMRange cloneContents]):
3620 (-[DOMRange insertNode:]):
3621 (-[DOMRange surroundContents:]):
3622 (-[DOMRange cloneRange]):
3623 (-[DOMRange toString]):
3624 (-[DOMRange detach]):
3625 (-[DOMRange _initWithRange:WebCore::]):
3626 (+[DOMRange _rangeWith:WebCore::]):
3627 (-[DOMRange WebCore::]):
3628 (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
3629 (+[DOMNodeFilter _nodeFilterWith:WebCore::]):
3630 (-[DOMNodeFilter WebCore::]):
3631 (-[DOMNodeFilter dealloc]):
3632 (-[DOMNodeFilter finalize]):
3633 (-[DOMNodeIterator _initWithNodeIterator:WebCore::filter:]):
3634 (-[DOMNodeIterator WebCore::]):
3635 (+[DOMNodeIterator _nodeIteratorWith:WebCore::filter:]):
3636 (-[DOMTreeWalker _initWithTreeWalker:WebCore::filter:]):
3637 (-[DOMTreeWalker WebCore::]):
3638 (+[DOMTreeWalker _treeWalkerWith:WebCore::filter:]):
3639 (ObjCNodeFilterCondition::acceptNode):
3640 (-[DOMDocument createNodeIterator::::]):
3641 (-[DOMDocument createTreeWalker::::]):
3642 (ObjCEventListener::find):
3643 (ObjCEventListener::create):
3644 (ObjCEventListener::handleEvent):
3645 * bindings/objc/DOMAbstractView.h: Added.
3646 * bindings/objc/DOMAbstractView.mm: Added.
3647 (-[DOMAbstractView document]):
3648 (-[DOMAbstractView WebCore::]):
3649 (-[DOMAbstractView _initWithAbstractView:WebCore::]):
3650 (+[DOMAbstractView _abstractViewWith:WebCore::]):
3651 * bindings/objc/DOMCSS.mm:
3652 (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
3653 (+[DOMStyleSheet _styleSheetWith:WebCore::]):
3654 (+[DOMCSSStyleSheet _CSSStyleSheetWith:WebCore::]):
3655 (-[DOMCSSRule _initWithRule:WebCore::]):
3656 (+[DOMCSSRule _CSSRuleWith:WebCore::]):
3657 (-[DOMCSSValue _initWithValue:WebCore::]):
3658 (+[DOMCSSValue _CSSValueWith:WebCore::]):
3659 (+[DOMCSSPrimitiveValue _CSSPrimitiveValueWith:WebCore::]):
3660 (-[DOMDocument getComputedStyle::]):
3661 (-[DOMDocument getMatchedCSSRules::]):
3662 * bindings/objc/DOMCore.h:
3663 * bindings/objc/DOMEventException.h: Added.
3664 * bindings/objc/DOMEvents.h:
3665 * bindings/objc/DOMEvents.mm:
3666 * bindings/objc/DOMException.h: Added.
3667 * bindings/objc/DOMHTML.mm:
3668 (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
3670 (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]):
3671 (-[DOMHTMLInputElement _selectedRange]):
3672 (-[DOMHTMLInputElement _setAutofilled:]):
3673 * bindings/objc/DOMInternal.h:
3674 * bindings/objc/DOMObject.h:
3675 * bindings/objc/DOMPrivate.h:
3676 * bindings/objc/DOMRange.h:
3677 * bindings/objc/DOMRangeException.h: Added.
3678 * bindings/objc/DOMViews.h:
3679 * bindings/objc/DOMViews.mm: Removed.
3680 * bindings/objc/DOMXPath.h:
3681 * bindings/objc/DOMXPathException.h: Added.
3682 * bindings/scripts/IDLParser.pm:
3685 2006-09-18 Brady Eidson <beidson@apple.com>
3689 * platform/win/TemporaryLinkStubs.cpp:
3690 (IconDatabase::setIconURLForPageURL):
3692 2006-09-18 David Hyatt <hyatt@apple.com>
3694 Fix for bug 3969, hr width doesn't update when it clears a float. This
3695 was also a problem with tables and overflow sections.
3699 Added fast/block/float/width-update-after-clear.html
3701 * rendering/RenderBlock.cpp:
3702 (WebCore::RenderBlock::collapseMargins):
3703 (WebCore::RenderBlock::clearFloatsIfNeeded):
3705 2006-09-18 Brady Eidson <beidson@apple.com>
3709 http://bugs.webkit.org/show_bug.cgi?id=10907
3710 REGRESSION: New Icon Loaders don't handle certain non-server-root URLs correctly
3712 * bridge/mac/FrameMac.h: Changed originalRequestURL() to virtual
3713 * bridge/win/FrameWin.h: Added originalRequestURL()
3714 * loader/icon/IconLoader.cpp:
3715 (IconLoader::receivedAllData): Moved the "pageURL to iconURL mapping logic" to Frame::commitIconURLToIconDatabase()
3717 (WebCore::Frame::iconURL): Construct the icon URL from *only* the protocol and host of the frame's url.
3718 (WebCore::Frame::endIfNotLoading): Call commitIconURLToIconDatabase() if we're not kicking off an icon load
3719 (WebCore::Frame::commitIconURLToIconDatabase): Map the completed doc's pageURL to the iconURL
3720 * page/Frame.h: Added pure virtual originalRequestURL()
3721 * platform/win/TemporaryLinkStubs.cpp:
3722 (FrameWin::originalRequestURL): Added
3724 2006-09-18 Rob Buis <buis@kde.org>
3728 http://bugs.webkit.org/show_bug.cgi?id=10807
3729 REGRESSION (r16259): Repro crash on manual-tests/svg-repaint-image.svg
3731 Make sure the paint method is not exited without popping
3732 context and transparency layer.
3734 WARNING: NO TEST CASES ADDED OR CHANGED
3736 * kcanvas/RenderSVGImage.cpp:
3737 (WebCore::RenderSVGImage::paint):
3739 2006-09-18 Graham Dennis <graham.dennis@gmail.com>
3743 - fix for http://bugs.webkit.org/show_bug.cgi?id=10896
3744 REGRESSION: WebKit can't be built with SVG disabled
3746 * bindings/scripts/CodeGeneratorObjC.pm:
3747 For each file generated add a #ifdef <something>_SUPPORT / #endif
3748 pair if the idl file has a Conditional extended attribute
3750 2006-09-17 Eric Seidel <eric@eseidel.com>
3754 REGRESSION (r16245): double-clicking on javascript exceptions fails to show source
3755 http://bugs.webkit.org/show_bug.cgi?id=10813
3757 * bridge/mac/WebCoreFrameBridge.mm:
3758 (+[WebCoreFrameBridge stringWithData:textEncodingName:]):
3760 2006-09-17 Alexey Proskuryakov <ap@nypop.com>
3764 http://bugs.webkit.org/show_bug.cgi?id=10779
3765 REGRESSION: Animated GIF ignores frame intervals and loops infinitely
3769 * platform/Image.cpp:
3770 (WebCore::Image::shouldAnimate): Don't check that there is more than one frame,
3771 maybe the rest just hasn't been loaded yet.
3772 (WebCore::Image::startAnimation): Move the frame count check here - there is no need
3773 to start animating before we get at least two frames.
3775 2006-09-17 Brady Eidson <beidson@apple.com>
3779 IconLoader now gracefully handles the condition where there's no document in the frame
3782 * loader/icon/IconLoader.cpp:
3783 (IconLoader::startLoading):
3785 2006-09-17 David Hyatt <hyatt@apple.com>
3787 Fix for bug 10899, rework how CSS keywords work to be smarter about
3788 using the correct size when generic families change (e.g., monospace to
3789 serif and vice versa).
3793 Added fast/text/basic/generic-family-changes.html
3795 * css/cssstyleselector.cpp:
3796 (WebCore::CSSStyleSelector::applyProperty):
3797 (WebCore::CSSStyleSelector::checkForGenericFamilyChange):
3798 (WebCore::CSSStyleSelector::fontSizeForKeyword):
3799 * css/cssstyleselector.h:
3801 (WebCore::Document::recalcStyle):
3802 * platform/FontDescription.h:
3803 (WebCore::FontDescription::FontDescription):
3804 (WebCore::FontDescription::keywordSize):
3805 (WebCore::FontDescription::setKeywordSize):
3806 (WebCore::FontDescription::operator==):
3808 2006-09-17 Alexey Proskuryakov <ap@nypop.com>
3812 http://bugs.webkit.org/show_bug.cgi?id=10852
3813 REGRESSION: Reproducible crash in XMLHttpRequest::abort()
3815 Test: http/tests/xmlhttprequest/xhr-onunload.html
3817 * xml/xmlhttprequest.cpp:
3818 (WebCore::XMLHttpRequest::send): Check the return value of ResourceLoader::start().
3820 * loader/icon/IconLoader.cpp:
3821 (IconLoader::startLoading): Fix a similar latent bug here.
3823 2006-09-17 Adam Roben <aroben@apple.com>
3827 * loader/icon/IconDatabase.cpp:
3829 2006-09-17 Anders Carlsson <acarlsson@apple.com>
3833 Add simplifyWhiteSpace and stripWhiteSpace to the String class.
3834 Change the XSLT Parameter Map to use Strings instead of StringImpls.
3837 * bindings/js/JSXSLTProcessor.cpp:
3838 (KJS::XSLTProcessorProtoFunc::callAsFunction):
3839 * bindings/js/kjs_events.cpp:
3840 (KJS::JSAbstractEventListener::handleEvent):
3841 * bindings/js/kjs_window.cpp:
3842 (KJS::ScheduledAction::execute):
3843 * css/MediaList.cpp:
3844 (WebCore::MediaList::setMediaText):
3846 (WebCore::Document::processHttpEquiv):
3847 * editing/ApplyStyleCommand.cpp:
3848 (WebCore::StyleChange::init):
3849 * html/HTMLDocument.cpp:
3850 (WebCore::parseDocTypeDeclaration):
3851 * html/HTMLLinkElement.cpp:
3852 (WebCore::HTMLLinkElement::parseMappedAttribute):
3853 * html/HTMLObjectElement.cpp:
3854 (WebCore::HTMLObjectElement::HTMLObjectElement):
3855 (WebCore::HTMLObjectElement::parseMappedAttribute):
3856 (WebCore::HTMLObjectElement::attach):
3857 (WebCore::HTMLObjectElement::setComplete):
3858 (WebCore::HTMLObjectElement::detach):
3859 (WebCore::HTMLObjectElement::recalcStyle):
3860 (WebCore::HTMLObjectElement::childrenChanged):
3861 (WebCore::HTMLObjectElement::isImageType):
3862 * html/HTMLObjectElement.h:
3863 * html/HTMLOptionElement.cpp:
3864 (WebCore::HTMLOptionElement::value):
3865 * html/HTMLSelectElement.cpp:
3866 (WebCore::HTMLSelectElement::appendFormData):
3867 * html/HTMLTokenizer.cpp:
3868 (WebCore::HTMLTokenizer::parseTag):
3869 * ksvg2/svg/SVGColor.cpp:
3870 (WebCore::SVGColor::setRGBColor):
3871 * ksvg2/svg/SVGDescElement.cpp:
3872 (WebCore::SVGDescElement::description):
3873 * platform/PlatformString.h:
3874 * platform/String.cpp:
3875 (WebCore::String::stripWhiteSpace):
3876 (WebCore::String::simplifyWhiteSpace):
3877 * platform/StringImpl.cpp:
3879 (WebCore::parseLength):
3880 (WebCore::StringImpl::stripWhiteSpace):
3881 (WebCore::StringImpl::simplifyWhiteSpace):
3882 (WebCore::StringImpl::toInt):
3883 * platform/StringImpl.h:
3884 * platform/mac/ClipboardMac.mm:
3885 (WebCore::cocoaTypeFromMIMEType):
3886 * rendering/RenderPartObject.cpp:
3887 (WebCore::RenderPartObject::updateWidget):
3888 * xml/XPathFunctions.cpp:
3889 (WebCore::XPath::FunNormalizeSpace::doEvaluate):
3890 * xml/XPathGrammar.y:
3891 * xml/XPathStep.cpp:
3892 (WebCore::XPath::Step::nodeTestMatches):
3893 * xml/XSLStyleSheet.cpp:
3894 (WebCore::XSLStyleSheet::loadChildSheets):
3895 (WebCore::XSLStyleSheet::locateStylesheetSubResource):
3896 * xml/XSLTProcessor.cpp:
3897 (WebCore::xsltParamArrayFromParameterMap):
3898 (WebCore::XSLTProcessor::setParameter):
3899 (WebCore::XSLTProcessor::getParameter):
3900 (WebCore::XSLTProcessor::removeParameter):
3901 * xml/XSLTProcessor.h:
3902 * xml/xmlhttprequest.cpp:
3903 (WebCore::XMLHttpRequest::getStatusText):
3905 2006-09-17 David Hyatt <hyatt@apple.com>
3907 Fix for bugzilla bugs 10895 and 6336, fieldsets misbehaving when floats
3908 are declared right before the fieldsets. It turns out fieldsets in other
3909 browsers avoid floats (like overflow:auto/hidden/scroll sections do), so
3910 adding that behavior to fieldset fixes the bug.
3912 Made avoidsFloats virtual and did some refactoring to make tables, flexboxes
3913 and fieldsets all subclass.
3917 Added fast/forms/float-before-fieldset.html
3919 * rendering/RenderFieldset.h:
3920 (WebCore::RenderFieldset::avoidsFloats):
3921 * rendering/RenderFlexibleBox.h:
3922 (WebCore::RenderFlexibleBox::avoidsFloats):
3923 * rendering/RenderObject.cpp:
3924 (WebCore::RenderObject::avoidsFloats):
3925 * rendering/RenderObject.h:
3926 * rendering/RenderTable.h:
3927 (WebCore::RenderTable::avoidsFloats):
3929 2006-09-17 David Hyatt <hyatt@apple.com>
3931 Fix for bugzilla bug 3240, implement support for the HTML4 "frame" and
3932 "rules" attributes on tables.
3934 Reviewed by bradee-oh
3936 Well-covered by existing layout tests.
3938 * html/HTMLTableCellElement.cpp:
3939 (WebCore::HTMLTableCellElement::additionalAttributeStyleDecl):
3940 * html/HTMLTableColElement.cpp:
3941 (WebCore::HTMLTableColElement::additionalAttributeStyleDecl):
3942 * html/HTMLTableColElement.h:
3943 * html/HTMLTableElement.cpp:
3944 (WebCore::HTMLTableElement::HTMLTableElement):
3945 (WebCore::HTMLTableElement::~HTMLTableElement):
3946 (WebCore::HTMLTableElement::setCaption):
3947 (WebCore::HTMLTableElement::setTHead):
3948 (WebCore::HTMLTableElement::setTFoot):
3949 (WebCore::HTMLTableElement::setTBody):
3950 (WebCore::HTMLTableElement::createTHead):
3951 (WebCore::HTMLTableElement::deleteTHead):
3952 (WebCore::HTMLTableElement::createTFoot):
3953 (WebCore::HTMLTableElement::deleteTFoot):
3954 (WebCore::HTMLTableElement::createCaption):
3955 (WebCore::HTMLTableElement::deleteCaption):
3956 (WebCore::HTMLTableElement::insertRow):
3957 (WebCore::HTMLTableElement::deleteRow):
3958 (WebCore::HTMLTableElement::addChild):
3959 (WebCore::HTMLTableElement::childrenChanged):
3960 (WebCore::HTMLTableElement::mapToEntry):
3961 (WebCore::HTMLTableElement::parseMappedAttribute):
3962 (WebCore::HTMLTableElement::additionalAttributeStyleDecl):
3963 (WebCore::HTMLTableElement::getSharedCellDecl):
3964 (WebCore::HTMLTableElement::getSharedGroupDecl):
3965 (WebCore::HTMLTableElement::attach):
3966 * html/HTMLTableElement.h:
3967 (WebCore::HTMLTableElement::caption):
3968 (WebCore::HTMLTableElement::tHead):
3969 (WebCore::HTMLTableElement::tFoot):
3970 (WebCore::HTMLTableElement::):
3971 * html/HTMLTableRowElement.h:
3972 * html/HTMLTableSectionElement.cpp:
3973 (WebCore::HTMLTableSectionElement::additionalAttributeStyleDecl):
3974 * html/HTMLTableSectionElement.h:
3976 2006-09-17 David Hyatt <hyatt@apple.com>
3978 Fix for bugzilla bug 4192, font size wrong for <tt> elements that
3979 specify their own new font-family list. Make sure to always
3980 reset the generic family along with the family list when mapping in
3981 new font-family values.
3983 Reviewed by bradee-oh
3985 fast/text/basic/generic-family-reset.html
3987 * css/cssstyleselector.cpp:
3988 (WebCore::CSSStyleSelector::applyProperty):
3990 2006-09-16 Brady Eidson <beidson@apple.com>
3994 Pruning code relating to WebKit's icon loader
3996 * bridge/mac/WebCoreIconDatabaseBridge.h:
3997 * bridge/mac/WebCoreIconDatabaseBridge.mm:
3998 * loader/icon/IconDatabase.h:
4000 (WebCore::Frame::endIfNotLoading): Moved a FIXME in from WebKit's IconLoader to
4003 2006-09-16 Sam Weinig <sam.weinig@gmail.com>
4007 Patch for http://bugs.webkit.org/show_bug.cgi?id=10885
4008 Auto-generate DOMHTMLDocument for the Objective-C bindings
4010 * DerivedSources.make:
4011 * WebCore.xcodeproj/project.pbxproj:
4012 * bindings/objc/DOMExtensions.h:
4013 * bindings/objc/DOMHTML.mm:
4014 (-[DOMHTMLDocument createDocumentFragmentWithText:]):
4015 * bindings/objc/DOMHTMLDocument.h: Removed.
4016 * bindings/objc/DOMHTMLDocument.mm: Removed.
4017 * bindings/objc/PublicDOMInterfaces.h:
4018 * bindings/scripts/CodeGeneratorObjC.pm:
4019 * html/HTMLDocument.idl:
4020 * platform/DeprecatedString.h:
4021 (WebCore::DeprecatedString::operator NSString*):
4023 2006-09-16 Rob Buis <buis@kde.org>
4027 http://bugs.webkit.org/show_bug.cgi?id=10866
4028 Code in kcanvas/ should not use Private
4030 Remove Private classes and tweak coding style.
4032 WARNING: NO TEST CASES ADDED OR CHANGED
4034 * kcanvas/RenderPath.cpp:
4035 (WebCore::RenderPath::RenderPath):
4036 (WebCore::RenderPath::~RenderPath):
4037 (WebCore::RenderPath::localTransform):
4038 (WebCore::RenderPath::setLocalTransform):
4039 (WebCore::RenderPath::fillContains):
4040 (WebCore::RenderPath::relativeBBox):
4041 (WebCore::RenderPath::setPath):
4042 (WebCore::RenderPath::path):
4043 (WebCore::RenderPath::layout):
4044 * kcanvas/RenderPath.h:
4045 * kcanvas/RenderSVGContainer.cpp:
4046 (WebCore::RenderSVGContainer::RenderSVGContainer):
4047 (WebCore::RenderSVGContainer::~RenderSVGContainer):
4048 (WebCore::RenderSVGContainer::drawsContents):
4049 (WebCore::RenderSVGContainer::setDrawsContents):
4050 (WebCore::RenderSVGContainer::localTransform):
4051 (WebCore::RenderSVGContainer::setLocalTransform):
4052 (WebCore::RenderSVGContainer::layout):
4053 (WebCore::RenderSVGContainer::paint):
4054 (WebCore::RenderSVGContainer::setViewport):
4055 (WebCore::RenderSVGContainer::viewport):
4056 (WebCore::RenderSVGContainer::setViewBox):
4057 (WebCore::RenderSVGContainer::viewBox):
4058 (WebCore::RenderSVGContainer::setAlign):
4059 (WebCore::RenderSVGContainer::align):
4060 (WebCore::RenderSVGContainer::fillContains):
4061 (WebCore::RenderSVGContainer::strokeContains):
4062 (WebCore::RenderSVGContainer::setSlice):
4063 (WebCore::RenderSVGContainer::slice):
4064 * kcanvas/RenderSVGContainer.h:
4065 * kcanvas/device/KRenderingFillPainter.cpp:
4066 (WebCore::KRenderingFillPainter::KRenderingFillPainter):
4067 (WebCore::KRenderingFillPainter::~KRenderingFillPainter):
4068 (WebCore::KRenderingFillPainter::fillRule):
4069 (WebCore::KRenderingFillPainter::setFillRule):
4070 (WebCore::KRenderingFillPainter::opacity):
4071 (WebCore::KRenderingFillPainter::setOpacity):
4072 * kcanvas/device/KRenderingFillPainter.h:
4073 * kcanvas/device/KRenderingPaintServerGradient.cpp:
4074 (WebCore::KRenderingPaintServerGradient::KRenderingPaintServerGradient):
4075 (WebCore::KRenderingPaintServerGradient::~KRenderingPaintServerGradient):
4076 (WebCore::KRenderingPaintServerGradient::gradientStops):
4077 (WebCore::KRenderingPaintServerGradient::setGradientStops):
4078 (WebCore::KRenderingPaintServerGradient::spreadMethod):
4079 (WebCore::KRenderingPaintServerGradient::setGradientSpreadMethod):
4080 (WebCore::KRenderingPaintServerGradient::boundingBoxMode):
4081 (WebCore::KRenderingPaintServerGradient::setBoundingBoxMode):
4082 (WebCore::KRenderingPaintServerGradient::gradientTransform):
4083 (WebCore::KRenderingPaintServerGradient::setGradientTransform):
4084 (WebCore::KRenderingPaintServerLinearGradient::KRenderingPaintServerLinearGradient):
4085 (WebCore::KRenderingPaintServerLinearGradient::~KRenderingPaintServerLinearGradient):
4086 (WebCore::KRenderingPaintServerLinearGradient::gradientStart):
4087 (WebCore::KRenderingPaintServerLinearGradient::setGradientStart):
4088 (WebCore::KRenderingPaintServerLinearGradient::gradientEnd):
4089 (WebCore::KRenderingPaintServerLinearGradient::setGradientEnd):
4090 (WebCore::KRenderingPaintServerRadialGradient::KRenderingPaintServerRadialGradient):
4091 (WebCore::KRenderingPaintServerRadialGradient::~KRenderingPaintServerRadialGradient):
4092 (WebCore::KRenderingPaintServerRadialGradient::gradientCenter):
4093 (WebCore::KRenderingPaintServerRadialGradient::setGradientCenter):
4094 (WebCore::KRenderingPaintServerRadialGradient::gradientFocal):
4095 (WebCore::KRenderingPaintServerRadialGradient::setGradientFocal):
4096 (WebCore::KRenderingPaintServerRadialGradient::gradientRadius):
4097 (WebCore::KRenderingPaintServerRadialGradient::setGradientRadius):
4098 (WebCore::KRenderingPaintServerGradient::listener):
4099 (WebCore::KRenderingPaintServerGradient::setListener):
4100 * kcanvas/device/KRenderingPaintServerGradient.h:
4101 * kcanvas/device/KRenderingPaintServerPattern.cpp:
4102 (WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
4103 (WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
4104 (WebCore::KRenderingPaintServerPattern::setBbox):
4105 (WebCore::KRenderingPaintServerPattern::bbox):
4106 (WebCore::KRenderingPaintServerPattern::boundingBoxMode):
4107 (WebCore::KRenderingPaintServerPattern::setBoundingBoxMode):
4108 (WebCore::KRenderingPaintServerPattern::tile):
4109 (WebCore::KRenderingPaintServerPattern::setTile):
4110 (WebCore::KRenderingPaintServerPattern::patternTransform):
4111 (WebCore::KRenderingPaintServerPattern::setPatternTransform):
4112 (WebCore::KRenderingPaintServerPattern::listener):
4113 (WebCore::KRenderingPaintServerPattern::setListener):
4114 * kcanvas/device/KRenderingPaintServerPattern.h:
4115 * kcanvas/device/KRenderingPaintServerSolid.cpp:
4116 (WebCore::KRenderingPaintServerSolid::KRenderingPaintServerSolid):
4117 (WebCore::KRenderingPaintServerSolid::~KRenderingPaintServerSolid):
4118 (WebCore::KRenderingPaintServerSolid::color):
4119 (WebCore::KRenderingPaintServerSolid::setColor):
4120 * kcanvas/device/KRenderingPaintServerSolid.h:
4121 * kcanvas/device/KRenderingStrokePainter.cpp:
4122 (WebCore::KRenderingStrokePainter::KRenderingStrokePainter):
4123 (WebCore::KRenderingStrokePainter::~KRenderingStrokePainter):
4124 (WebCore::KRenderingStrokePainter::strokeWidth):
4125 (WebCore::KRenderingStrokePainter::setStrokeWidth):
4126 (WebCore::KRenderingStrokePainter::strokeMiterLimit):
4127 (WebCore::KRenderingStrokePainter::setStrokeMiterLimit):
4128 (WebCore::KRenderingStrokePainter::strokeCapStyle):
4129 (WebCore::KRenderingStrokePainter::setStrokeCapStyle):
4130 (WebCore::KRenderingStrokePainter::strokeJoinStyle):
4131 (WebCore::KRenderingStrokePainter::setStrokeJoinStyle):
4132 (WebCore::KRenderingStrokePainter::dashOffset):
4133 (WebCore::KRenderingStrokePainter::setDashOffset):
4134 (WebCore::KRenderingStrokePainter::dashArray):
4135 (WebCore::KRenderingStrokePainter::setDashArray):
4136 (WebCore::KRenderingStrokePainter::opacity):
4137 (WebCore::KRenderingStrokePainter::setOpacity):
4138 (WebCore::KRenderingStrokePainter::dirty):
4139 (WebCore::KRenderingStrokePainter::setDirty):
4140 * kcanvas/device/KRenderingStrokePainter.h:
4142 2006-09-16 Mark Rowe <opendarwin.org@bdash.net.nz>
4146 http://bugs.webkit.org/show_bug.cgi?id=10887
4149 * bindings/objc/DOMPrivate.h: Remove reference to DOMEventPrivate.h.
4151 2006-09-16 Sam Weinig <sam.weinig@gmail.com>
4155 Fix for http://bugs.webkit.org/show_bug.cgi?id=10886
4156 REGRESSION (r16387): Reproducible crash when mousing over HTML document
4158 - Special case method [DOMNode ownerDocument] to call document() instead
4159 or ownerDocument() to return to the old behavior.
4161 * WebCore.xcodeproj/project.pbxproj:
4162 * bindings/scripts/CodeGeneratorObjC.pm:
4164 2006-09-15 Brady Eidson <beidson@apple.com>
4166 Reviewed by Tim Hatcher
4168 <rdar://problem/4730811> - New IconDatabase needs to attempt to create its path.
4169 Otherwise new installs and new user accounts won't have any icons because the icon.db cannot be created
4171 * loader/icon/IconDatabase.cpp: Removed a now obsolete FIXME
4172 (WebCore::makeAllDirectories): Added - candidate to be in a header for "platform neutral file utilities"
4173 (WebCore::IconDatabase::open): Make sure the directory exists
4175 2006-09-15 Timothy Hatcher <timothy@apple.com>
4179 Make new style ObjC methods public API.
4181 * WebCore.xcodeproj/project.pbxproj:
4182 * bindings/objc/DOMPrivate.h:
4183 * bindings/objc/PublicDOMInterfaces.h:
4185 2006-09-15 Sam Weinig <sam.weinig@gmail.com>
4189 Patch for http://bugs.webkit.org/show_bug.cgi?id=10870
4190 Auto-generate DOMNode for the Objective-C bindings
4192 * DerivedSources.make:
4193 * WebCore.xcodeproj/project.pbxproj:
4194 * bindings/objc/DOM.mm:
4195 (-[DOMNode boundingBox]):
4196 (-[DOMNode lineBoxRects]):
4197 * bindings/objc/DOMEvents.h:
4198 * bindings/objc/DOMExtensions.h:
4199 * bindings/objc/DOMNode.h: Removed.
4200 * bindings/objc/DOMNode.mm: Removed.
4201 * bindings/objc/PublicDOMInterfaces.h:
4202 * bindings/scripts/CodeGeneratorObjC.pm:
4205 2006-09-15 Timothy Hatcher <timothy@apple.com>
4209 Removed alter selection logic from WebCoreFrameBridge and moved to SelectionController.
4211 * bridge/mac/WebCoreFrameBridge.h:
4212 * bridge/mac/WebCoreFrameBridge.mm:
4213 (-[WebCoreFrameBridge centerSelectionInVisibleArea]):
4214 (-[WebCoreFrameBridge rangeByExpandingSelectionWithGranularity:]):
4215 (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:direction:granularity:]):
4216 (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]):
4217 (-[WebCoreFrameBridge alterCurrentSelection:verticalDistance:]):
4218 (-[WebCoreFrameBridge replaceMarkedTextWithText:]):
4219 (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
4220 (-[WebCoreFrameBridge increaseSelectionListLevel]):
4221 (-[WebCoreFrameBridge increaseSelectionListLevelOrdered]):
4222 (-[WebCoreFrameBridge increaseSelectionListLevelUnordered]):
4223 (-[WebCoreFrameBridge decreaseSelectionListLevel]):
4224 (-[WebCoreFrameBridge insertLineBreak]):
4225 (-[WebCoreFrameBridge insertParagraphSeparator]):
4226 (-[WebCoreFrameBridge insertParagraphSeparatorInQuotedContent]):
4227 (-[WebCoreFrameBridge insertText:selectInsertedText:]):
4228 (-[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:]):
4229 (-[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:]):
4230 (createMouseEventFromDraggingInfo):
4231 * editing/SelectionController.cpp:
4232 (WebCore::SelectionController::moveTo):
4233 (WebCore::SelectionController::setSelection):
4234 (WebCore::SelectionController::modify):
4235 (WebCore::SelectionController::setBase):
4236 (WebCore::SelectionController::setExtent):
4237 * editing/SelectionController.h:
4239 (WebCore::Frame::revealSelection):
4240 (WebCore::Frame::revealCaret):
4243 2006-09-15 Brady Eidson <beidson@apple.com>
4247 Added the ability to get a mutable char* from a CString, which will copy the internal
4248 buffer if the ref count is greater than 1 so your mutable char* won't affect any other
4249 referrer of that buffer.
4251 * platform/CString.cpp:
4252 (WebCore::CString::mutableData):
4253 (WebCore::CString::copyBufferIfNeeded):
4254 * platform/CString.h:
4256 2006-09-15 Justin Garcia <justin.garcia@apple.com>
4258 Reviewed by harrison
4260 <rdar://problem/4674869>
4261 REGRESSION: selecting text to write over results in cursor jumping to middle of next line