1 2006-10-05 Alexey Proskuryakov <ap@nypop.com>
5 http://bugs.webkit.org/show_bug.cgi?id=11054
6 REGRESSION: Traditional Chinese encoding in login authentication
8 1. Treat GB2312 encoding as GBK (its more modern superset), to match other browsers.
9 2. On the Web, GB2312 is encoded as EUC-CN or HZ, while ICU provides a native encoding
10 for encoding GB_2312-80 and several others. So, we need to override this behavior, too.
12 * platform/StreamingTextDecoderICU.cpp:
13 (WebCore::TextCodecICU::registerEncodingNames):
15 2006-10-05 Eric Seidel <eric@eseidel.com>
20 Filed http://bugs.webkit.org/show_bug.cgi?id=11167 to for followup on removed FIXMEs
22 * WebCore.xcodeproj/project.pbxproj:
23 * ksvg2/ecma/GlobalObject.cpp: Removed.
24 * ksvg2/ecma/GlobalObject.h: Removed.
26 2006-10-05 Adam Roben <aroben@apple.com>
30 Small ResourceLoaderInternal tweak.
32 * platform/ResourceLoaderInternal.h:
33 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
35 2006-10-05 Eric Seidel <eric@eseidel.com>
39 More incremental KCanvas cleanup and optimization.
40 Added SVGRenderStyle::hasFill() and hasStroke() removed more KSVGPainterFactory methods.
41 Optimized dash array usage to not malloc.
42 Also removed un-needed KSVGRenderingStyle includes.
44 * kcanvas/KCanvasTreeDebug.cpp:
45 (WebCore::operator<<):
46 * kcanvas/RenderPath.cpp:
47 (WebCore::RenderPath::nodeAtPoint):
48 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
49 (WebCore::RenderPath::strokeBBox):
50 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
51 (WebCore::KRenderingPaintServerGradientQuartz::setup):
52 (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
53 (WebCore::KRenderingPaintServerGradientQuartz::teardown):
54 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
55 (WebCore::KRenderingPaintServerSolidQuartz::setup):
56 (WebCore::KRenderingPaintServerSolidQuartz::renderPath):
57 (WebCore::KRenderingPaintServerPatternQuartz::setup):
58 (WebCore::KRenderingPaintServerPatternQuartz::renderPath):
59 * kcanvas/device/quartz/QuartzSupport.mm:
60 (WebCore::applyStrokeStyleToContext):
61 * ksvg2/css/SVGRenderStyle.h:
62 (WebCore::SVGRenderStyle::hasStroke):
63 (WebCore::SVGRenderStyle::hasFill):
64 * ksvg2/misc/KCanvasRenderingStyle.cpp:
65 (WebCore::KSVGPainterFactory::fillPaintServer):
66 (WebCore::KSVGPainterFactory::strokePaintServer):
67 * ksvg2/misc/KCanvasRenderingStyle.h:
69 2006-10-05 Maciej Stachowiak <mjs@apple.com>
73 - changed ResourceLoader to be refcounted
75 It keeps a ref on itself while loading as well. This makes
76 for a much saner memory management model than the previous.
78 * bridge/mac/WebCoreResourceLoaderImp.mm:
79 (-[WebCoreResourceLoaderImp finishJobAndHandle:]):
80 * dom/XMLTokenizer.cpp:
82 * loader/icon/IconLoader.cpp:
83 (IconLoader::IconLoader):
84 (IconLoader::~IconLoader):
85 (IconLoader::startLoading):
86 (IconLoader::stopLoading):
87 (IconLoader::receivedData):
88 * loader/icon/IconLoader.h:
90 (WebCore::Loader::servePendingRequests):
91 * platform/ResourceLoader.cpp:
92 (WebCore::ResourceLoader::create):
93 (WebCore::ResourceLoader::kill):
94 * platform/ResourceLoader.h:
95 * platform/ResourceLoaderInternal.h:
96 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
97 * platform/mac/ResourceLoaderMac.mm:
98 (WebCore::ResourceLoader::start):
99 * xml/XSLTProcessor.cpp:
100 (WebCore::docLoaderFunc):
101 * xml/xmlhttprequest.cpp:
102 (WebCore::XMLHttpRequest::send):
103 * xml/xmlhttprequest.h:
105 2006-10-05 Eric Seidel <eric@eseidel.com>
109 Improve SVG opacity performance by clipping to the object bbox before starting a new opacity layer.
110 http://bugs.webkit.org/show_bug.cgi?id=11163
112 No SVG performance tests yet.
114 * kcanvas/RenderForeignObject.cpp:
115 (WebCore::RenderForeignObject::paint):
116 * kcanvas/RenderSVGContainer.cpp:
117 (WebCore::RenderSVGContainer::paint):
118 * kcanvas/RenderSVGImage.cpp:
119 (WebCore::RenderSVGImage::paint):
120 * kcanvas/RenderSVGText.cpp:
121 (WebCore::RenderSVGText::paint):
123 2006-10-05 Dave Hyatt <hyatt@apple.com>
125 Stub out some stuff for widget focusability.
129 * page/FrameView.cpp:
130 (WebCore::FrameView::dispatchMouseEvent):
131 * platform/ScrollView.h:
134 2006-10-05 Adam Roben <aroben@apple.com>
136 Reviewed by Maciej and Tim H.
138 Copy some WebKit frame lifetime logic into WebCore -- just a step
139 along the path to frame lifetime being handled completely in WebCore.
141 * bridge/mac/FrameMac.mm:
142 (WebCore::FrameMac::setView): Move platform-independent parts of this
145 (WebCore::Frame::setView): Adding platform-independent parts of
147 (WebCore::Frame::detachChildren): New method to accomplish what
148 -[WebFrameBridge _detachChildren] currently does.
149 (WebCore::Frame::clear): Call detachChildren
150 * page/Frame.h: Add declaration for detachChildren
152 2006-10-04 Alice Liu <alice.liu@apple.com>
156 Fixed <rdar://problem/4758577> REGRESSION: Business and People widgets fails to complete search query
158 * xml/xmlhttprequest.cpp:
159 (WebCore::XMLHttpRequest::setRequestHeader):
160 removed exception set when the request is not open yet
162 2006-10-04 Anders Carlsson <acarlsson@apple.com>
164 Reviewed by John Sullivan.
166 <rdar://problem/4654328>
167 Safari Crashes in WebCore::PluginTokenizer::writeRawData If I Try to Open a SWF File With Plug-ins Turned Off
169 * loader/PluginDocument.cpp:
170 (WebCore::PluginTokenizer::writeRawData):
171 Only send the data to the plug-in if plug-ins are enabled, otherwise just silently eat it.
173 2006-10-03 Alexey Proskuryakov <ap@nypop.com>
177 http://bugs.webkit.org/show_bug.cgi?id=11130
178 Convert "undefined" to AE missing value
180 * bridge/mac/WebCoreFrameBridge.mm:
181 (aeDescFromJSValue): return missing value for UndefinedType.
183 2006-10-03 Dave Hyatt <hyatt@apple.com>
185 Scrolling work. Eliminate convertTo/FromContainingWindow as cross-platform functions. Add back in
186 the windowToContents/contentsToWindow functions.
190 * bridge/mac/FrameMac.mm:
191 (WebCore::FrameMac::eventMayStartDrag):
192 (WebCore::FrameMac::dragHysteresisExceeded):
193 (WebCore::FrameMac::mouseDown):
194 (WebCore::FrameMac::shouldDragAutoNode):
195 (WebCore::FrameMac::sendContextMenuEvent):
196 * bridge/mac/FrameViewMac.mm:
197 (WebCore::FrameView::passMousePressEventToScrollbar):
198 * bridge/mac/WebCoreFrameBridge.mm:
199 (-[WebCoreFrameBridge _visiblePositionForPoint:]):
200 * dom/EventTargetNode.cpp:
201 (WebCore::EventTargetNode::dispatchMouseEvent):
202 (WebCore::EventTargetNode::dispatchWheelEvent):
204 (WebCore::Frame::selectClosestWordFromMouseEvent):
205 (WebCore::Frame::handleMousePressEventTripleClick):
206 (WebCore::Frame::handleMousePressEventSingleClick):
207 (WebCore::Frame::handleMouseMoveEvent):
208 (WebCore::Frame::handleMouseReleaseEvent):
209 * page/FrameView.cpp:
210 (WebCore::FrameView::handleMousePressEvent):
211 (WebCore::FrameView::handleMouseDoubleClickEvent):
212 (WebCore::selectCursor):
213 (WebCore::FrameView::handleMouseMoveEvent):
214 (WebCore::FrameView::handleMouseReleaseEvent):
215 (WebCore::FrameView::dispatchDragEvent):
216 (WebCore::FrameView::prepareMouseEvent):
217 (WebCore::FrameView::handleWheelEvent):
219 * platform/ScrollBar.cpp:
220 (WebCore::ScrollBar::setValue):
221 * platform/ScrollView.h:
223 (WebCore::Widget::scrolled):
224 * platform/mac/ScrollViewMac.mm:
225 (WebCore::ScrollView::contentsToWindow):
226 (WebCore::ScrollView::windowToContents):
227 (WebCore::ScrollView::scrollbarUnderMouse):
228 * platform/mac/WidgetMac.mm:
229 * rendering/RenderLayer.cpp:
230 (WebCore::RenderLayer::resize):
231 (WebCore::RenderLayer::positionScrollbars):
232 * rendering/RenderReplaced.cpp:
233 (WebCore::RenderReplaced::shouldPaint):
234 * rendering/RenderView.cpp:
235 * rendering/RenderView.h:
236 * rendering/RenderWidget.cpp:
237 (WebCore::RenderWidget::setWidget):
239 2006-09-26 David Smith <catfish.man@gmail.com>
243 http://bugs.webkit.org/show_bug.cgi?id=3723
244 Add -scrollDOMRangeToVisible:
246 No automated tests are possible as this code path isn't reachable from JavaScript.
248 * bridge/mac/WebCoreFrameBridge.h:
249 * bridge/mac/WebCoreFrameBridge.mm:
250 (-[WebCoreFrameBridge scrollDOMRangeToVisible:]):
252 2006-10-03 Graham Dennis <graham.dennis@gmail.com>
256 <http://bugs.webkit.org/show_bug.cgi?id=10338>
257 When contentEditable, cursor doesn't change to hand
259 Allow the behaviour of editable links to be specified by a WebPreference
260 The preference WebKitEditableLinkBehavior has four options:
261 - AlwaysLive: Safari 2.0 behaviour
262 - OnlyLiveWithShiftKey: Firefox/WinIE behaviour (and prior WebKit-ToT behaviour)
263 - LiveWhenNotFocused: Editable links are live only when their editable block is not
264 focused, or when the shift key is pressed
265 - DefaultBehavior: This is the same as OnlyLiveWithShiftKey.
267 No layout tests, just a modification of a manual-test as it isn't possible to test
270 * bridge/mac/WebCoreSettings.h:
271 * bridge/mac/WebCoreSettings.mm:
272 (-[WebCoreSettings setEditableLinkBehavior:]):
273 (-[WebCoreSettings editableLinkBehavior]):
274 * html/HTMLAnchorElement.cpp:
275 (WebCore::HTMLAnchorElement::HTMLAnchorElement):
276 (WebCore::HTMLAnchorElement::defaultEventHandler):
277 (WebCore::HTMLAnchorElement::setActive):
278 * html/HTMLAnchorElement.h:
279 * manual-tests/contenteditable-link.html:
280 * page/FrameView.cpp:
281 (WebCore::nodeIsNotBeingEdited):
282 (WebCore::selectCursor):
284 (WebCore::Settings::):
285 (WebCore::Settings::Settings):
286 (WebCore::Settings::editableLinkBehavior):
287 (WebCore::Settings::setEditableLinkBehavior):
289 2006-10-03 Beth Dakin <bdakin@apple.com>
293 No test cases needed.
295 Implemented a version of StringImpl::append that takes a UChar* and
298 * platform/StringImpl.cpp:
299 (WebCore::StringImpl::append):
300 (WebCore::StringImpl::insert): Call new append instead of making a
302 * platform/StringImpl.h:
304 2006-10-03 MorganL <morganl.webkit@yahoo.com>
308 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11099
309 HttpSendRequestEx results in ERROR_HTTP_HEADER_NOT_FOUND
311 * platform/win/ResourceLoaderWin.cpp:
312 (WebCore::ResourceLoader::onHandleCreated):
314 2006-10-02 Geoffrey Garen <ggaren@apple.com>
316 Feared, loathed, reviewed by Darin.
318 More frame/iframe merging. Merged IFRAME::willRemove and IFRAME::detach
319 into FRAME, plus other cleanup.
321 No new behavior, so no new test. Layout tests pass. Basic browsing and
322 Mail editing seem to work.
325 (WebCore::Node::detach): Removed random commented-out code.
326 * html/HTMLFrameElement.cpp:
327 (WebCore::HTMLFrameElement::isURLAllowed):
328 (1) Removed reference to FrameView, to dissociate frame loading from rendering.
329 (2) Renamed newURL to completeURL because the difference between newURL
330 and URLString is that newURL is a KURL that is the complete version of URLString,
332 (WebCore::HTMLFrameElement::willRemove):
333 (1) Removed close() call and moved close() code into willRemove(), also removing
334 close() call from detach(), since willRemove is the well-defined place
335 from DOM tear-down, not detach().
336 (2) Removed manual renderer detach code because the DOM is not responsible
337 for managing the render tree. I confirmed that this change not
338 regress <rdar://problem/4132581>.
339 (3) Removed questionable ASSERT. The ASSERT assumed that iframe elements
340 lost their content frames after being removed from the DOM. That's our
341 current behavior, but it's going to change in future rounds of refactoring.
342 This also fixes <rdar://problem/4750835>.
343 (WebCore::HTMLFrameElement::setLocation): Removed wacky manual calls to
344 attach/detach, because the render tree should not be in charge of deciding
346 * html/HTMLFrameElement.h:
347 * html/HTMLIFrameElement.cpp:
348 (WebCore::HTMLIFrameElement::attach): Renamed renderPart to renderPartObject,
349 because the renderer is a renderPartObject, not a renderPart.
350 * html/HTMLIFrameElement.h:
352 2006-10-03 Mark Rowe <bdash@webkit.org>
356 http://bugs.webkit.org/show_bug.cgi?id=11137
357 Bug 11137: GdkLauncher dies with "pure virtual method called" if
358 window is closed while page still loading
360 * platform/gdk/FrameGdk.cpp:
361 (WebCore::FrameGdk::~FrameGdk): Call cancelAndClear to allow virtual
362 methods to be called before the FrameGdk portion of "this" is torn down.
364 2006-10-03 Adam Roben <aroben@apple.com>
368 Handle tab key presses in the DOM.
370 * dom/EventTargetNode.cpp:
371 (WebCore::EventTargetNode::defaultEventHandler): Add tab key handling.
372 * page/FrameView.cpp:
373 (WebCore::FrameView::advanceFocus): Rename and reimplement
374 focusNextPrevNode. Now we just call Element::focus().
375 * page/FrameView.h: Rename focusNextPrevNode to advanceFocus and make
378 2006-10-03 Justin Garcia <justin.garcia@apple.com>
382 <rdar://problem/4760612>
383 TOT REGRESSION: Repro assertion failure when forwarding draft in Range::compareBoundaryPoints
385 No layout test possible, attributedStringFrom:(DOMNode*)...etc isn't available to DRT.
388 (WebCore::Range::boundaryPointsValid): compareBoundaryPoints asserts that the incoming
389 positions are non-null since most of it's callers would be in a bad state if the positions
390 were null. boundaryPointsValid, which calls compareBoundaryPoints, is an exception.
391 Instead of removing the assert I've added nil checks in boundaryPointsValid, to keep it
392 from entering compareBoundaryPoints and hitting the assert.
394 2006-10-03 Adele Peterson <adele@apple.com>
398 Make code for turning off new listbox implementation mac-only, since there's no implementation on other platforms.
400 * html/HTMLSelectElement.cpp:
401 (WebCore::HTMLSelectElement::recalcStyle):
402 (WebCore::HTMLSelectElement::isKeyboardFocusable):
403 (WebCore::HTMLSelectElement::isMouseFocusable):
404 (WebCore::HTMLSelectElement::createRenderer):
405 (WebCore::HTMLSelectElement::setRecalcListItems):
406 (WebCore::HTMLSelectElement::notifyOptionSelected):
407 (WebCore::HTMLSelectElement::defaultEventHandler):
409 2006-10-04 Darin Adler <darin@apple.com>
413 - fix http://bugs.webkit.org/show_bug.cgi?id=11132
414 Caret disappears when you're typing
416 * editing/SelectionController.cpp:
417 (WebCore::SelectionController::setSelection): Remove unnecessary call to
418 clearCaretRectIfNeeded. The recomputeCaretRect now takes care of this.
419 (WebCore::SelectionController::recomputeCaretRect): Explicitly set m_needsLayout
420 to false so we can get the old caret repaint rect. Later we need to change the
421 design so getting the rect doesn't have a side effect of causing a layout without
424 2006-10-03 David Harrison <harrison@apple.com>
428 <rdar://problem/4671286> Candidate Window isn't displayed and only first candidate is displayed at typing location.
431 * fast/text/justified-text-rect.html
433 * bridge/mac/WebCoreFrameBridge.mm:
434 (-[WebCoreFrameBridge convertToNSRange:]):
435 (-[WebCoreFrameBridge convertToDOMRange:]):
436 Make the selection's root editable element (or the document itself) be
437 the basis for NSRange conversions. This supports "shadow DOM" like
438 that for text fields and text areas.
440 * editing/CompositeEditCommand.cpp:
441 (WebCore::CompositeEditCommand::moveParagraphs):
442 Pass the document element as the scope.
444 * editing/TextIterator.cpp:
445 (WebCore::TextIterator::rangeFromLocationAndLength):
446 Make the first parameter the scope.
448 * editing/TextIterator.h:
449 Make the first parameter of rangeFromLocationAndLength() the scope.
451 2006-10-03 Nikolas Zimmermann <zimmermann@kde.org>
457 * CMakeLists.txt: Add counter related files.
459 2006-10-03 Mark Rowe <bdash@webkit.org>
463 http://bugs.webkit.org/show_bug.cgi?id=10981
464 Linux/GDK build fixes
466 Based on a patch by Krzysztof Kowalczyk.
468 * WebCoreSources.bkl:
469 * platform/gdk/FrameGdk.cpp:
471 (WebCore::FrameGdk::handleGdkEvent):
472 * platform/gdk/PlatformScrollBar.h: Added.
473 (WebCore::PlatformScrollBar::isWidget):
474 * platform/gdk/ScrollViewGdk.cpp:
475 * platform/gdk/TemporaryLinkStubs.cpp:
476 (FrameView::passMousePressEventToScrollbar):
477 (FrameView::passMousePressEventToSubframe):
478 (FrameView::passMouseReleaseEventToSubframe):
479 (FrameView::passMouseMoveEventToSubframe):
480 (FrameView::passWheelEventToSubframe):
482 (Widget::invalidate):
483 (Widget::invalidateRect):
484 (ScrollView::wheelEvent):
485 (ScrollView::convertToContainingWindow):
486 (ScrollView::convertFromContainingWindow):
487 (GraphicsContext::clip):
488 (PlatformScrollBar::PlatformScrollBar):
489 (PlatformScrollBar::updateThumbPosition):
490 (PlatformScrollBar::updateThumbProportion):
491 (ScrollBar::ScrollBar):
492 (ScrollBar::setProportion):
493 (WebCore::supportedKeySizes):
494 (WebCore::signedPublicKeyAndChallengeString):
495 * platform/gdk/WheelEventGdk.cpp:
496 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
497 * platform/gdk/WidgetGdk.cpp:
498 (WebCore::Widget::convertToContainingWindow):
499 (WebCore::Widget::convertFromContainingWindow):
501 2006-10-02 Adam Roben <aroben@apple.com>
505 Let Windows determine which mouse button is pressed.
507 * platform/PlatformMouseEvent.h: Add message parameter to constructor.
508 * platform/win/MouseEventWin.cpp:
509 (WebCore::PlatformMouseEvent::PlatformMouseEvent): Use message
510 parameter to determine which mouse button is pressed.
512 2006-10-02 Justin Garcia <justin.garcia@apple.com>
518 * editing/SelectionController.cpp:
519 (WebCore::SelectionController::empty):
520 * editing/SelectionController.h:
522 2006-10-02 Justin Garcia <justin.garcia@apple.com>
526 <rdar://problem/4755287>
527 Writely Editor: Crash occurs at WebCore::maxDeepOffset(WebCore::Node const*) when attempting to create a OL/UL following a HR element
529 * editing/markup.cpp:
530 (WebCore::createMarkup): Migrate to isBlock (isBlockFlow is true for inline replaced
531 elements). Don't skip blocks that aren't containers (like horizontal rules).
533 2006-10-03 Darin Adler <darin@apple.com>
535 Reviewed by Justin Garcia.
537 - correct mistaken code that would restart blinking every
538 time "invalidateSelection" is called even if the caret
541 * editing/SelectionController.h:
542 * editing/SelectionController.cpp:
543 (WebCore::SelectionController::setSelection): Update for name change.
544 (WebCore::SelectionController::recomputeCaretRect): New function.
545 Computes caret rect and does any necessary invalidation if the rect
547 (WebCore::SelectionController::invalidateCaretRect): Renamed from
548 needsCaretRepaint. Invalidates the caret rect unconditionally. Also
549 calls recomputeCaretRect as a side effect.
552 (WebCore::Frame::invalidateSelection): Remove unneeded call to
553 clearCaretRectIfNeeded.
554 (WebCore::Frame::clearCaretRectIfNeeded): Updated for name change.
555 (WebCore::Frame::selectionLayoutChanged): Restructured to use the new
556 recomputeCaretRect function and not restart blinking if caret has
557 not changed position.
558 (WebCore::Frame::caretBlinkTimerFired): Removed some checks that
559 are not needed since selectionLayoutChanged already checks these.
561 * page/FramePrivate.h: Removed unused m_blinkCaret.
563 2006-10-02 Beth Dakin <bdakin@apple.com>
567 Build fix. Add counters to vcproj.
569 * WebCore.vcproj/WebCore/WebCore.vcproj:
571 2006-10-02 Brady Eidson <beidson@apple.com>
575 If the Icon DB schema changes underneath you, the latest ToT can crash and burn when writing
576 icon data out because we don't correctly check SQL error conditions.
578 * loader/icon/IconDataCache.cpp:
579 (WebCore::IconDataCache::writeToDatabase):
581 2006-10-02 Steve Falkenburg <sfalken@apple.com>
585 Added method to find out whether a layout has occurred.
587 * page/FrameView.cpp:
588 (WebCore::FrameView::didFirstLayout):
591 2006-10-02 Beth Dakin <bdakin@apple.com>
595 Initial implementation of CSS2 counters. See http://
596 bugs.webkit.org/show_bug.cgi?id=4980 for more details.
598 * WebCore.xcodeproj/project.pbxproj:
599 * css/CSSComputedStyleDeclaration.cpp:
600 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Return
601 the increment/reset list now that this is implemented.
602 * css/CSSPrimitiveValue.cpp:
603 (WebCore::CSSPrimitiveValue::cssText):
605 (WebCore::Counter::Counter):
606 (WebCore::Counter::~Counter):
607 (WebCore::Counter::identifier):
608 (WebCore::Counter::listStyle):
609 (WebCore::Counter::separator):
610 (WebCore::Counter::listStyleNumber):
611 (WebCore::Counter::setIdentifier):
612 (WebCore::Counter::setListStyle):
613 (WebCore::Counter::setSeparator):
615 (WebCore::CSSParser::addProperty): Take care of reset/increment
616 (WebCore::CSSParser::parseValue):
617 (WebCore::CSSParser::parseContent): content can now take counters
618 (WebCore::CSSParser::parseCounterContent): Parse counter() and
620 (WebCore::CSSParser::parseCounter): Parse counter-reset and
623 * css/cssstyleselector.cpp:
624 (WebCore::CSSStyleSelector::matchUARules):
625 (WebCore::CSSStyleSelector::applyProperty):
626 * platform/PlatformString.h:
627 * platform/String.cpp:
628 (WebCore::String::insert): Implemented a version of insert that
629 accepts a UChar* and a length.
630 * platform/StringImpl.cpp:
631 (WebCore::StringImpl::insert): Same as above.
632 * platform/StringImpl.h:
633 * rendering/CounterListItem.h: Added.
634 * rendering/CounterNode.cpp: Added.
635 (WebCore::CounterNode::CounterNode):
636 (WebCore::CounterNode::insertAfter):
637 (WebCore::CounterNode::removeChild):
638 (WebCore::CounterNode::remove):
639 (WebCore::CounterNode::setUsesSeparator):
640 (WebCore::CounterNode::recountAndGetNext):
641 (WebCore::CounterNode::recountTree):
642 (WebCore::CounterNode::setSelfDirty):
643 (WebCore::CounterNode::setParentDirty):
644 * rendering/CounterNode.h: Added.
645 (WebCore::CounterNode::~CounterNode):
646 (WebCore::CounterNode::parent):
647 (WebCore::CounterNode::previousSibling):
648 (WebCore::CounterNode::nextSibling):
649 (WebCore::CounterNode::firstChild):
650 (WebCore::CounterNode::lastChild):
651 (WebCore::CounterNode::value):
652 (WebCore::CounterNode::setValue):
653 (WebCore::CounterNode::count):
654 (WebCore::CounterNode::setCount):
655 (WebCore::CounterNode::setHasSeparator):
656 (WebCore::CounterNode::isReset):
657 (WebCore::CounterNode::hasSeparator):
658 (WebCore::CounterNode::willNeedLayout):
659 (WebCore::CounterNode::setWillNeedLayout):
660 (WebCore::CounterNode::isRoot):
661 (WebCore::CounterNode::setRenderer):
662 (WebCore::CounterNode::renderer):
663 * rendering/CounterResetNode.cpp: Added.
664 (WebCore::CounterResetNode::CounterResetNode):
665 (WebCore::CounterResetNode::insertAfter):
666 (WebCore::CounterResetNode::removeChild):
667 (WebCore::CounterResetNode::recountAndGetNext):
668 (WebCore::CounterResetNode::setParentDirty):
669 (WebCore::CounterResetNode::updateTotal):
670 * rendering/CounterResetNode.h: Added.
671 (WebCore::CounterResetNode::firstChild):
672 (WebCore::CounterResetNode::lastChild):
673 (WebCore::CounterResetNode::isReset):
674 (WebCore::CounterResetNode::total):
675 * rendering/RenderContainer.cpp:
676 (WebCore::RenderContainer::updatePseudoChildForObject): Account for
678 * rendering/RenderCounter.cpp: Added.
679 (WebCore::RenderCounter::RenderCounter):
680 (WebCore::RenderCounter::layout):
682 (WebCore::toLetterString):
684 (WebCore::RenderCounter::convertValueToType):
685 (WebCore::RenderCounter::calcMinMaxWidth):
686 * rendering/RenderCounter.h: Added.
687 (WebCore::RenderCounter::renderName):
688 (WebCore::RenderCounter::isCounter):
689 * rendering/RenderObject.cpp:
690 (WebCore::getRenderObjectsToCounterNodeMaps): Maps RenderObjects to
692 (WebCore::RenderObject::RenderObject):
693 (WebCore::RenderObject::destroy): Destroy the maps.
694 (WebCore::RenderObject::findCounter): Finds/creates counters.
695 * rendering/RenderObject.h:
696 (WebCore::RenderObject::isCounter):
697 * rendering/RenderStyle.cpp:
698 (WebCore::StyleVisualData::StyleVisualData):
699 (WebCore::RenderStyle::arenaDelete):
700 (WebCore::RenderStyle::RenderStyle):
701 (WebCore::RenderStyle::diff):
702 (WebCore::RenderStyle::setContent):
703 (WebCore::ContentData::clearContent):
704 (WebCore::RenderStyle::counterDataEquivalent):
705 (WebCore::hasCounter):
706 (WebCore::RenderStyle::hasCounterReset):
707 (WebCore::RenderStyle::hasCounterIncrement):
708 (WebCore::readCounter):
709 (WebCore::RenderStyle::counterReset):
710 (WebCore::RenderStyle::counterIncrement):
711 * rendering/RenderStyle.h:
712 (WebCore::StyleVisualData::operator==):
713 (WebCore::CounterData::CounterData):
714 (WebCore::CounterData::identifier):
715 (WebCore::CounterData::listStyle):
716 (WebCore::CounterData::separator):
717 (WebCore::ContentData::contentCounter):
718 (WebCore::ContentData::):
719 (WebCore::RenderStyle::counterIncrement):
720 (WebCore::RenderStyle::counterReset):
721 (WebCore::RenderStyle::setCounterIncrement):
722 (WebCore::RenderStyle::setCounterReset):
723 (WebCore::RenderStyle::setCounterResetList):
724 (WebCore::RenderStyle::setCounterIncrementList):
725 (WebCore::RenderStyle::counterResetValueList):
726 (WebCore::RenderStyle::counterIncrementValueList):
728 2006-10-02 Adele Peterson <adele@apple.com>
732 - Fix for <rdar://problem/4463841> Switch to use new list box implementation for <select multiple>
734 There are a few outstanding issues, so I've left the old code in for now. So you can use the old-style listboxes
735 by using "-webkit-appearance:none".
739 2006-10-02 David Harrison <harrison@apple.com>
741 Reverted the code part of r16696, my patch for <rdar://problem/4641262>, because the problem was
742 addressed at a deeper level by r16696, the patch for <http://bugs.webkit.org/show_bug.cgi?id=10842>.
743 Left the layout test.
745 * rendering/bidi.cpp:
746 (WebCore::checkMidpoints):
748 2006-10-02 Nikolas Zimmermann <zimmermann@kde.org>
750 Reviewed by eseidel. Landed by eseidel.
754 * platform/qt/TemporaryLinkStubs.cpp: s/DeprecatedStringList/Vector<String>/
755 (WebCore::supportedKeySizes):
757 2006-10-02 Nikolas Zimmermann <zimmermann@kde.org>
759 Reviewed by eseidel & mjs. Landed by eseidel.
761 Fix Qt/Linux build with older gcc 3.3.4.
762 http://bugs.webkit.org/show_bug.cgi?id=11116
764 As discussed with Maciej, the GCC_ROOT_NS_HACK
765 can be completely removed, as well as the friendship
766 between cacheGlobalObject & the JS* objects.
768 * bindings/scripts/CodeGeneratorJS.pm: Remove friendship.
769 * platform/image-decoders/png/pnggccrd.c: Fix comments for gcc3.
770 (png_read_filter_row_mmx_avg):
771 * platform/image-decoders/png/pngvcrd.c: Ditto.
773 (png_read_filter_row_mmx_avg):
775 2006-10-01 Maciej Stachowiak <mjs@apple.com>
777 Rubber stamped by Alexey.
779 - reverted fix for http://bugs.webkit.org/show_bug.cgi?id=10893 since it led to layout test crashes
783 2006-10-01 Eric Seidel <eric@webkit.org>
787 Eliminate a few more hotspots in SVG drawing code.
789 No test cases were harmed in the making of this patch. (And SVG has no perf tests.)
791 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
792 (WebCore::KRenderingPaintServerSolidQuartz::setup): use a single shared colorspace, avoid a few mallocs
793 * platform/mac/ColorMac.mm:
794 (+[WebCoreControlTintObserver WebCore]): store a single shared colorspace instance
796 2006-10-01 Geoffrey Garen <ggaren@apple.com>
800 More frame/iframe merging.
802 - Removed needWidgetUpdate and related code. needWidgetUpdate is always
803 false, so this was dead code.
804 - Removed FIXME about setInViewSourceMode inside openURL(). openURL(), rather
805 than attach(), is the correct place for setInViewSourceMode, because
806 openURL() is the function that creates our frame.
807 - Moved IFRAME insertedIntoDocument() code into FRAME, and removed FRAME
808 code that did the same thing in other places.
809 - Made FRAME's attach() method suffuciently generic so that IFRAME could
810 call up to it, rather than skipping its superclass and calling up directly
812 - Changed a few IFRAME up-calls to ELEMENT into up-calls to FRAME.
813 - Replaced ad hoc frame loading code in FRAME::attach() with call to
814 openURL(), the designated frame loading function.
816 Layout tests pass. I added a layout test for viewsource mode, since I
817 broke it in the course of writing this patch.
819 2006-10-01 Anders Carlsson <acarlsson@apple.com>
824 (WebCore::Document::recalcStyleSelector):
826 Get rid of availableStyleSheets() and remove DeprecatedStringList.h include.
829 Remove DeprecatedStringList class forward declaration.
831 * editing/markup.cpp:
832 Include DeprecatedStringList.h here since it's not included by Document.h anymore.
834 * kcanvas/KCanvasTreeDebug.cpp:
835 * kcanvas/KCanvasTreeDebug.h:
836 Remove unused functions.
842 Fixup DeprecatedStringList.h includes.
844 2006-09-30 David Harrison <harrison@apple.com>
846 Reviewed by John Sullivan.
848 <rdar://problem/4641262> REGRESSION: Japanese text corrupts on wrapping point
850 Problem was that the decision to trim was based only on whether the character
851 is a soft hyphen, which caused pretty much any Japanese character to go.
852 Changed to decide based on whether the character is ignorable whitespace.
855 * fast/text/international/wrap-CJK-001.html
857 * rendering/bidi.cpp:
858 (WebCore::isTrimmableChar):
859 New. Checks whether character is whitespace that can be ignored
860 according to the text node's style.
861 trimmed from the end of wrapped line.
862 (WebCore::checkMidpoints):
863 Call isTrimmable() rather than checking for char != SOFT_HYPHEN.
865 2006-10-01 Anders Carlsson <acarlsson@apple.com>
867 Reviewed by Mitz Pettel.
869 Convert the SVG code to use Vector<String> instead of DeprecatedStringList.
871 * ksvg2/svg/SVGColor.cpp:
872 (WebCore::SVGColor::setRGBColor):
873 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
874 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
875 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
876 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
877 (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
878 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
879 (SVGFESpecularLightingElement::parseMappedAttribute):
880 * ksvg2/svg/SVGFETurbulenceElement.cpp:
881 (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
882 * ksvg2/svg/SVGLengthList.cpp:
883 * ksvg2/svg/SVGNumberList.cpp:
884 (SVGNumberList::parse):
885 * ksvg2/svg/SVGNumberList.h:
886 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
887 (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
888 * ksvg2/svg/SVGStringList.cpp:
889 (WebCore::SVGStringList::reset):
890 * ksvg2/svg/SVGStringList.h:
891 * ksvg2/svg/SVGTransformable.cpp:
892 (SVGTransformable::parseTransformAttribute):
894 2006-10-01 Nikolas Zimmermann <zimmermann@kde.org>
896 Reviewed by Eric, tweaked and landed by ap.
901 * platform/qt/PlatformScrollBar.h:
902 * platform/qt/TemporaryLinkStubs.cpp:
903 (WebCore::ScrollBar::ScrollBar):
904 (WebCore::PlatformScrollBar::PlatformScrollBar):
905 (FrameView::passMousePressEventToSubframe):
906 (FrameView::passMouseMoveEventToSubframe):
907 (FrameView::passMouseReleaseEventToSubframe):
908 (FrameView::passWheelEventToSubframe):
909 (FrameView::passMousePressEventToScrollbar):
910 * ksvg2/svg/SVGDocument.h:
912 2006-10-01 Mitz Pettel <opendarwin.org@mitzpettel.com>
916 Fix for http://bugs.webkit.org/show_bug.cgi?id=10190
917 REGRESSION: Repro crash when navigating away from an image document that hasn't finished loading
919 No test case added (probably requires new DumpRenderTree functionality)
921 * rendering/RenderImage.cpp:
922 (WebCore::RenderImage::imageChanged): Added early return if the document is
925 2006-10-01 Graham Dennis <graham.dennis@gmail.com>
929 Fix for http://bugs.webkit.org/show_bug.cgi?id=10842
930 REGRESSION (r15418): contenteditable div truncates rightmost Japanese character
932 Make sure we only break after a space (and not any other valid line-break) if
933 the style is -webkit-line-break: after-white-space (e.g. for a contentEditable div).
934 I also did a logic shuffle at Mitz's request to prevent doing an if on the same expression
935 twice in quick succession.
937 * rendering/bidi.cpp:
938 (WebCore::RenderBlock::findNextLineBreak):
940 2006-10-01 Alexey Proskuryakov <ap@nypop.com>
942 Reviewed by Maciej and Darin.
944 http://bugs.webkit.org/show_bug.cgi?id=4372
945 JavaScript document.write page form does not submit in Safari
947 Test: fast/forms/document-write.html
950 (WebCore::Frame::submitForm): Don't check for parsing().
952 2006-10-01 Alexey Proskuryakov <ap@nypop.com>
956 * bridge/mac/FrameViewMac.mm: Add missing #imports.
958 2006-10-01 Dave Hyatt <hyatt@apple.com>
960 Refactor the code that passes mouse presses to the Mac scrollbar and make it cross-platform.
964 * bridge/mac/FrameMac.mm:
965 (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
966 * bridge/mac/FrameViewMac.mm:
967 (WebCore::FrameView::passMousePressEventToScrollbar):
968 * page/FrameView.cpp:
969 (WebCore::FrameView::handleMousePressEvent):
970 (WebCore::FrameView::setMousePressed):
972 * platform/win/TemporaryLinkStubs.cpp:
973 (FrameView::passMousePressEventToScrollbar):
975 2006-09-30 Sam Weinig <sam.weinig@gmail.com>
979 Patch for http://bugs.webkit.org/show_bug.cgi?id=11102
980 Add more SVG Objective-C DOM bindings
982 - Auto-generate Objective-C DOM bindings for DOMSVGAElement,
983 DOMSVGAnimateColorElement, DOMSVGAnimateElement, DOMSVGAnimateTransformElement,
984 DOMSVGAnimatedPathData, DOMSVGAnimatedPoints, DOMSVGAnimatedPreserveAspectRatio,
985 DOMSVGAnimationElement, DOMSVGCircleElement, DOMSVGClipPathElement, DOMSVGColor,
986 DOMSVGCursorElement, DOMSVGDefsElement, DOMSVGDescElement, DOMSVGDocument,
987 DOMSVGEllipseElement, DOMSVGPreserveAspectRatio, and DOMSVGURIReference.
989 * DerivedSources.make:
990 * WebCore.xcodeproj/project.pbxproj:
991 * bindings/objc/DOMInternal.h:
992 * bindings/objc/DOMSVG.h:
993 * bindings/scripts/CodeGeneratorObjC.pm:
994 * ksvg2/svg/SVGAElement.idl:
995 * ksvg2/svg/SVGAnimateColorElement.idl:
996 * ksvg2/svg/SVGAnimateElement.idl:
997 * ksvg2/svg/SVGAnimateTransformElement.idl:
998 * ksvg2/svg/SVGAnimatedPathData.idl:
999 * ksvg2/svg/SVGAnimatedPoints.idl:
1000 * ksvg2/svg/SVGAnimatedPreserveAspectRatio.idl:
1001 * ksvg2/svg/SVGAnimationElement.idl:
1002 * ksvg2/svg/SVGCircleElement.idl:
1003 * ksvg2/svg/SVGClipPathElement.idl:
1004 * ksvg2/svg/SVGColor.idl:
1005 * ksvg2/svg/SVGCursorElement.idl:
1006 * ksvg2/svg/SVGDefsElement.idl:
1007 * ksvg2/svg/SVGDescElement.idl:
1008 * ksvg2/svg/SVGDocument.idl:
1009 * ksvg2/svg/SVGEllipseElement.idl:
1010 * ksvg2/svg/SVGPointList.idl:
1011 * ksvg2/svg/SVGPreserveAspectRatio.idl:
1012 * ksvg2/svg/SVGRect.idl:
1013 * ksvg2/svg/SVGSVGElement.idl:
1015 2006-09-30 Maciej Stachowiak <mjs@apple.com>
1021 * platform/FloatRect.h:
1022 (WebCore::FloatRect::contains): Added; not exactly the same semantic as IntRect containment
1023 but more appropriate for path-type stuff.
1024 * platform/cg/PathCG.cpp:
1025 (WebCore::Path::contains): Don't use enclosingIntRect, just use FloatRect::contains.
1027 2006-09-30 Alexey Proskuryakov <ap@nypop.com>
1031 http://bugs.webkit.org/show_bug.cgi?id=11011
1032 External CSS is parsed as iso-8859-1 even though the main document is utf-8
1034 Test: fast/encoding/css-charset-default.xhtml
1036 * loader/CachedResourceClient.h:
1037 (WebCore::CachedResourceClient::setCSSStyleSheet):
1038 (WebCore::CachedResourceClient::setXSLStyleSheet):
1039 Divided setStyleSheet into setCSSStyleSheet and setXSLStyleSheet. The former
1040 takes an additional charset parameter, to be passed to CSSStyleSheet constructor.
1042 * css/CSSImportRule.cpp:
1043 (WebCore::CSSImportRule::setCSSStyleSheet):
1044 (WebCore::CSSImportRule::insertedIntoParent): Default to parent stylesheet's charset.
1045 * css/CSSImportRule.h:
1047 * css/CSSStyleSheet.cpp:
1048 (WebCore::CSSStyleSheet::CSSStyleSheet):
1049 * css/CSSStyleSheet.h:
1050 Added an m_charset member to be used when loading child stylesheets. Removed an unused m_implicit
1051 member. Changed some String parameters to const String&.
1053 * css/StyleSheet.cpp:
1054 (WebCore::StyleSheet::StyleSheet):
1056 Changed some String parameters to const String&. Removed an unused (even unimplemented) constructor.
1058 * css/StyleSheetList.cpp:
1059 (WebCore::StyleSheetList::length):
1060 (WebCore::StyleSheetList::item):
1061 * css/StyleSheetList.h:
1062 Special-casing implicit stylesheets seemed to be dead code, removed.
1065 (WebCore::Document::setCSSStyleSheet):
1066 (WebCore::Document::recalcStyleSelector):
1068 Renamed setStyleSheet() to setCSSStyleSheet().
1070 * dom/ProcessingInstruction.cpp:
1071 (WebCore::ProcessingInstruction::checkStyleSheet): Pass a correct charset to requestCSSStyleSheet().
1072 (WebCore::ProcessingInstruction::setCSSStyleSheet):
1073 (WebCore::ProcessingInstruction::setXSLStyleSheet):
1074 (WebCore::ProcessingInstruction::parseStyleSheet):
1075 * dom/ProcessingInstruction.h:
1077 * html/HTMLLinkElement.cpp:
1078 (WebCore::HTMLLinkElement::process): Default to document encoding if a charset attribute
1080 (WebCore::HTMLLinkElement::setCSSStyleSheet):
1081 * html/HTMLLinkElement.h:
1083 * html/HTMLStyleElement.cpp:
1084 (WebCore::HTMLStyleElement::childrenChanged):
1085 * ksvg2/svg/SVGStyleElement.cpp:
1086 (WebCore::SVGStyleElement::childrenChanged):
1087 Inherit URL and charset from the document.
1090 (WebCore::Cache::requestCSSStyleSheet):
1092 Adjust for setStyleSheet() renaming.
1094 * loader/CachedCSSStyleSheet.h: Removed an unused constructor.
1095 * loader/CachedCSSStyleSheet.cpp:
1096 (WebCore::CachedCSSStyleSheet::ref):
1097 (WebCore::CachedCSSStyleSheet::deref):
1098 (WebCore::CachedCSSStyleSheet::checkNotify):
1099 Pass the encoding to setCSSStyleSheet().
1101 * loader/CachedXSLStyleSheet.cpp:
1102 (WebCore::CachedXSLStyleSheet::ref):
1103 (WebCore::CachedXSLStyleSheet::checkNotify):
1104 * loader/DocLoader.cpp:
1105 (WebCore::DocLoader::requestCSSStyleSheet):
1106 * loader/DocLoader.h:
1108 (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
1109 (WebCore::UserStyleSheetLoader::setCSSStyleSheet):
1110 * xml/XSLImportRule.cpp:
1111 (WebCore::XSLImportRule::setXSLStyleSheet):
1112 (WebCore::XSLImportRule::loadSheet):
1113 * xml/XSLImportRule.h:
1114 Adjust for setStyleSheet() renaming.
1116 2006-09-30 Rob Buis <buis@kde.org>
1118 Reviewed by eseidel.
1120 http://bugs.webkit.org/show_bug.cgi?id=11096
1121 Hit testing for polylines fails
1123 Fix Path::contains so it handles filled, non-closed paths too.
1125 * platform/cg/PathCG.cpp:
1126 (WebCore::Path::contains):
1128 2006-09-30 Dave Hyatt <hyatt@apple.com>
1130 Refactor subframe event handling to hide more of the Mac-specific logic from the cross-platform code.
1131 Stub out a capturing API that mimics the way Web browsers capture events and route them to specific
1132 subframes while the mouse is down.
1134 Reviewed by mitzpettel
1136 * bridge/mac/FrameMac.h:
1137 * bridge/mac/FrameMac.mm:
1138 (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
1139 (WebCore::FrameMac::passWheelEventToWidget):
1140 * bridge/mac/FrameViewMac.mm:
1141 (WebCore::FrameView::passMousePressEventToSubframe):
1142 (WebCore::FrameView::passMouseMoveEventToSubframe):
1143 (WebCore::FrameView::passMouseReleaseEventToSubframe):
1144 (WebCore::FrameView::passWheelEventToSubframe):
1147 * page/FrameView.cpp:
1148 (WebCore::subframeForTargetNode):
1149 (WebCore::FrameView::handleMousePressEvent):
1150 (WebCore::FrameView::handleMouseDoubleClickEvent):
1151 (WebCore::FrameView::handleMouseMoveEvent):
1152 (WebCore::FrameView::handleMouseReleaseEvent):
1153 (WebCore::FrameView::handleWheelEvent):
1155 * platform/ScrollBar.h:
1156 (WebCore::ScrollBar::handleMouseMoveEvent):
1157 (WebCore::ScrollBar::handleMouseOutEvent):
1158 * platform/Widget.h:
1159 (WebCore::Widget::handleMouseMoveEvent):
1160 (WebCore::Widget::handleMouseReleaseEvent):
1161 * platform/win/TemporaryLinkStubs.cpp:
1162 (FrameView::passMousePressEventToSubframe):
1163 (FrameView::passMouseMoveEventToSubframe):
1164 (FrameView::passMouseReleaseEventToSubframe):
1165 (FrameView::passWheelEventToSubframe):
1166 (Widget::capturingMouse):
1167 (Widget::setCapturingMouse):
1168 (Widget::capturingTarget):
1169 (Widget::capturingChild):
1170 (Widget::setCapturingChild):
1171 * rendering/RenderView.cpp:
1172 (WebCore::RenderView::paintBoxDecorations):
1174 2006-09-29 MorganL <morganl.webkit@yahoo.com>
1178 Fixes windows bustage:
1179 http://bugs.webkit.org/show_bug.cgi?id=11093
1181 * platform/win/PlatformScrollBar.h:
1182 * platform/win/TemporaryLinkStubs.cpp:
1183 (PlatformScrollBar::PlatformScrollBar):
1184 (ScrollBar::ScrollBar):
1186 2006-09-29 David Hyatt <hyatt@apple.com>
1188 Eliminate RenderLayer::gScrollBar in favor of caching the scrollbar hit
1189 in RenderObject::NodeInfo (and then propagating that Widget to
1190 MouseEventWithHitTestResults).
1192 This allows RenderListBox and RenderBlock to do the same thing when the
1193 mouse is over the scrollbar.
1195 Also land fix to support font-size: 0.
1197 Reviewed by mjs (scrollbar), eric (font-size)
1200 (WebCore::Document::prepareMouseEvent):
1202 (WebCore::Frame::passWidgetMouseDownEventToWidget):
1203 * page/FrameView.cpp:
1204 (WebCore::selectCursor):
1205 (WebCore::FrameView::handleMouseMoveEvent):
1206 (WebCore::FrameView::dispatchMouseEvent):
1207 * page/MouseEventWithHitTestResults.cpp:
1208 (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
1209 * page/MouseEventWithHitTestResults.h:
1210 (WebCore::MouseEventWithHitTestResults::scrollbar):
1211 * rendering/RenderBlock.cpp:
1212 (WebCore::RenderBlock::isPointInScrollbar):
1213 (WebCore::RenderBlock::nodeAtPoint):
1214 * rendering/RenderBlock.h:
1215 * rendering/RenderLayer.cpp:
1216 (WebCore::RenderLayer::hitTest):
1217 * rendering/RenderLayer.h:
1218 (WebCore::RenderLayer::getHiddenBehavior):
1219 * rendering/RenderListBox.cpp:
1220 (WebCore::RenderListBox::RenderListBox):
1221 (WebCore::RenderListBox::~RenderListBox):
1222 (WebCore::RenderListBox::isPointInScrollbar):
1223 * rendering/RenderListBox.h:
1224 * rendering/RenderObject.h:
1225 (WebCore::RenderObject::NodeInfo::NodeInfo):
1226 (WebCore::RenderObject::NodeInfo::scrollbar):
1227 (WebCore::RenderObject::NodeInfo::setScrollbar):
1229 2006-09-29 MorganL <morganl.webkit@yahoo.com>
1233 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11092
1235 * platform/win/ScrollViewWin.cpp:
1236 (WebCore::ScrollView::convertToContainingWindow):
1237 (WebCore::ScrollView::convertFromContainingWindow):
1238 * platform/win/WidgetWin.cpp:
1239 (WebCore::Widget::convertToContainingWindow):
1240 (WebCore::Widget::convertFromContainingWindow):
1242 2006-09-29 Adele Peterson <adele@apple.com>
1244 Updated with new argument for PlatformScrollBar.
1246 * platform/win/TemporaryLinkStubs.cpp:
1247 (PlatformScrollBar::PlatformScrollBar):
1249 2006-09-29 Adele Peterson <adele@apple.com>
1253 Fixing build bustage with cast to int.
1255 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::lastSelectedListIndex):
1257 2006-09-29 Adele Peterson <adele@apple.com>
1259 Fixing accidental include.
1261 * rendering/RenderListBox.cpp:
1263 2006-09-29 Adele Peterson <adele@apple.com>
1265 Adding RenderListBox files.
1267 * WebCore.vcproj/WebCore/WebCore.vcproj:
1269 2006-09-29 Adele Peterson <adele@apple.com>
1273 Initial implementation of engine-based list box control.
1275 * WebCore.xcodeproj/project.pbxproj: Added RenderListBox.h and RenderListBox.cpp
1277 * bridge/mac/FrameMac.h: Added _mouseDownMayStartAutoscroll.
1278 * bridge/mac/FrameMac.mm: Updated autoscroll code to use renderers instead of layers, so any renderer that implements autoscroll will work.
1279 (WebCore::FrameMac::FrameMac):
1280 (WebCore::FrameMac::handleMousePressEvent):
1281 (WebCore::FrameMac::handleMouseMoveEvent):
1282 (WebCore::FrameMac::mouseDown):
1285 (WebCore::Frame::handleMouseMoveEvent):
1286 (WebCore::Frame::scrollOverflow): Don't scroll list box here- this would cause arrow keys to scroll instead of select.
1287 (WebCore::Frame::handleAutoscroll): Updated to use a renderer instead of a layer when setting up autoscroll.
1288 (WebCore::Frame::autoscrollTimerFired): ditto.
1289 (WebCore::Frame::stopAutoscrollTimer): ditto.
1290 (WebCore::Frame::passWidgetMouseDownEventToWidget): Updated to check for list box's scroll bar.
1292 * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): Updated to use renderer unstead of layer for autoscroll.
1294 * page/FrameView.cpp: Keep track of current mouse position so this can be used for list box autoscroll.
1295 (WebCore::FrameViewPrivate::reset):
1296 (WebCore::FrameView::currentMousePosition):
1297 (WebCore::FrameView::handleMousePressEvent):
1298 (WebCore::FrameView::handleMouseDoubleClickEvent):
1299 (WebCore::selectCursor):
1300 (WebCore::FrameView::handleMouseMoveEvent):
1301 (WebCore::FrameView::handleMouseReleaseEvent):
1304 * platform/ScrollBar.cpp: (WebCore::ScrollBar::ScrollBar): Added controlSize argument. The list box will use a smaller scroll bar size.
1305 * platform/ScrollBar.h:
1307 (WebCore::ScrollBar::controlSize):
1308 * platform/mac/PlatformScrollBar.h:
1309 * platform/mac/PlatformScrollBarMac.mm:
1310 (NSControlSizeForScrollBarControlSize):
1311 (-[WebCoreScrollBar initWithPlatformScrollBar:]):
1312 (WebCore::PlatformScrollBar::PlatformScrollBar):
1314 * rendering/RenderBlock.h:
1315 * rendering/RenderLayer.cpp: (WebCore::RenderLayer::createScrollbar): Updated to pass regular control size to scrollbar constructor.
1316 * rendering/RenderLayer.h:
1317 * rendering/RenderObject.cpp:
1318 (WebCore::RenderObject::shouldAutoscroll):
1319 (WebCore::RenderObject::autoscroll):
1320 * rendering/RenderObject.h: (WebCore::RenderObject::isListBox):
1322 * css/html4.css: Added properties for new list boxes.
1324 * html/HTMLOptionElement.cpp:
1325 (WebCore::HTMLOptionElement::setSelected): Doesn't allow selection to be changed here if the option is disabled.
1326 (WebCore::HTMLOptionElement::disabled): Added. Checks the parent's disabled status.
1327 * html/HTMLOptionElement.h: Added disabled method.
1329 * html/HTMLSelectElement.cpp: Added appearance switch for new list box implementation.
1330 (WebCore::HTMLSelectElement::recalcStyle):
1331 (WebCore::HTMLSelectElement::lastSelectedListIndex):
1332 (WebCore::HTMLSelectElement::deselectItems):
1333 (WebCore::HTMLSelectElement::setSelectedIndex):
1334 (WebCore::HTMLSelectElement::isKeyboardFocusable):
1335 (WebCore::HTMLSelectElement::isMouseFocusable):
1336 (WebCore::HTMLSelectElement::createRenderer):
1337 (WebCore::HTMLSelectElement::recalcListItems):
1338 (WebCore::HTMLSelectElement::setRecalcListItems):
1339 (WebCore::HTMLSelectElement::reset):
1340 (WebCore::HTMLSelectElement::notifyOptionSelected):
1341 (WebCore::HTMLSelectElement::defaultEventHandler): Added code to select options for list box when clicking and using arrow keys.
1342 (WebCore::HTMLSelectElement::nextSelectableListIndex):
1343 (WebCore::HTMLSelectElement::previousSelectableListIndex):
1344 * html/HTMLSelectElement.h:
1346 * rendering/RenderTheme.cpp: Added support for ListBoxAppearance
1347 (WebCore::RenderTheme::paint):
1348 (WebCore::RenderTheme::paintBorderOnly):
1349 (WebCore::RenderTheme::paintDecorations):
1350 (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
1351 (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
1352 (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
1353 (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
1354 (WebCore::RenderTheme::isControlStyled):
1355 (WebCore::RenderTheme::supportsFocusRing):
1356 * rendering/RenderTheme.h:
1357 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::isControlStyled):
1359 * rendering/RenderListBox.cpp: Added.
1360 (WebCore::RenderListBox::RenderListBox):
1361 (WebCore::RenderListBox::~RenderListBox):
1362 (WebCore::RenderListBox::setStyle):
1363 (WebCore::RenderListBox::updateFromElement):
1364 (WebCore::RenderListBox::calcMinMaxWidth):
1365 (WebCore::RenderListBox::size):
1366 (WebCore::RenderListBox::numItems):
1367 (WebCore::RenderListBox::calcHeight):
1368 (WebCore::RenderListBox::baselinePosition):
1369 (WebCore::RenderListBox::itemBoundingBoxRect):
1370 (WebCore::RenderListBox::paintObject):
1371 (WebCore::RenderListBox::paintScrollbar):
1372 (WebCore::RenderListBox::paintItemForeground):
1373 (WebCore::RenderListBox::paintItemBackground):
1374 (WebCore::RenderListBox::scrollBarTarget):
1375 (WebCore::RenderListBox::isPointInScrollbar):
1376 (WebCore::RenderListBox::optionAtPoint):
1377 (WebCore::RenderListBox::autoscroll):
1378 (WebCore::RenderListBox::scrollToRevealElementAtListIndex):
1379 (WebCore::RenderListBox::scroll):
1380 (WebCore::RenderListBox::valueChanged):
1381 * rendering/RenderListBox.h: Added.
1382 (WebCore::RenderListBox::isListBox):
1383 (WebCore::RenderListBox::selectionChanged):
1384 (WebCore::RenderListBox::setSelectionChanged):
1385 (WebCore::RenderListBox::canHaveChildren):
1386 (WebCore::RenderListBox::renderName):
1387 (WebCore::RenderListBox::setOptionsChanged):
1388 (WebCore::RenderListBox::shouldAutoscroll):
1389 (WebCore::RenderListBox::listIndexIsVisible):
1391 2006-09-29 Beth Dakin <bdakin@apple.com>
1395 We had a bug where html4.css was ignoring Media Queries. In the end
1396 the problem was that we were trying to send a char* to the
1397 MediaQueryEvaluator constructor that expects a String, but the
1398 char* got interpreted as a bool, the wrong constructor was called,
1399 and the media type was never set.
1401 No test case possible since this only affects html4.css
1403 * css/MediaQueryEvaluator.cpp: New constructor that expects takes a
1405 (WebCore::MediaQueryEvaluator):
1406 * css/MediaQueryEvaluator.h: Same.
1408 2006-09-29 Geoffrey Garen <ggaren@apple.com>
1410 Reviewed by John, Maciej.
1412 Integrated some frame and iframe code. I'm trying to fix up frame ownership
1413 and loading. Reducing the number of different code paths involved
1414 seemed like a good first step.
1416 As a side effect, I fixed a bug where FRAME elements would report their
1417 src attributes as relative, rather than compelete, URLs. (IFRAME elements
1418 had the correct complete URL behavior.)
1420 * html/HTMLFrameElement.cpp:
1421 (WebCore::HTMLFrameElement::isURLAllowed): Fixed comment typo
1422 (WebCore::HTMLFrameElement::openURL):
1423 (1) Removed checks that requestFrame does for us
1424 (2) Added isURLAllowed check, to have one clear bottleneck for it
1425 (3) Added viewsource check, to have one clear bottleneck for it
1426 (WebCore::HTMLFrameElement::close): Changed to use the common contentFrame()
1427 method, instead of finding our content frame in our own unique way.
1428 (WebCore::HTMLFrameElement::setLocation): Removed isURLAllowed check,
1429 since openURL does this for us now.
1430 (WebCore::HTMLFrameElement::src): Return complete URL instead of relative.
1431 This is what FF does, and it made no sense to have different behaviors
1432 for FRAME and IFRAME elements.
1433 * html/HTMLIFrameElement.cpp:
1434 (WebCore::HTMLIFrameElement::HTMLIFrameElement): Removed duplicate init
1436 * html/HTMLIFrameElement.h: Removed src() and openURL() methods, since
1437 HTMLFrameElement now does everything we need.
1439 2006-09-30 Nikolas Zimmermann <zimmermann@kde.org>
1446 * platform/qt/ScrollViewQt.cpp:
1447 (WebCore::ScrollView::convertToContainingWindow):
1448 (WebCore::ScrollView::convertFromContainingWindow):
1449 * platform/qt/TemporaryLinkStubs.cpp:
1450 (WebCore::signedPublicKeyAndChallengeString):
1451 * platform/qt/WidgetQt.cpp:
1452 (WebCore::Widget::convertToContainingWindow):
1453 (WebCore::Widget::convertFromContainingWindow):
1455 2006-09-29 Sam Weinig <sam.weinig@gmail.com>
1459 Patch for http://bugs.webkit.org/show_bug.cgi?id=11082
1460 Simplify Internal methods for the auto-generated Objective-C DOM code
1462 - Auto-generate the internal methods for more Objective-C classes.
1464 * WebCore.xcodeproj/project.pbxproj:
1465 * bindings/objc/DOM.mm:
1466 * bindings/objc/DOMCSS.mm:
1467 (-[DOMStyleSheet WebCore::]):
1468 (+[DOMStyleSheet _styleSheetWith:WebCore::]):
1469 (-[DOMCSSRule WebCore::]):
1470 (-[DOMCSSRule _initWithCSSRule:WebCore::]):
1471 (+[DOMCSSRule _CSSRuleWith:WebCore::]):
1472 (-[DOMCSSValue WebCore::]):
1473 (-[DOMCSSValue _initWithCSSValue:WebCore::]):
1474 (+[DOMCSSValue _CSSValueWith:WebCore::]):
1475 * bindings/objc/DOMHTMLAppletElement.mm:
1476 (-[DOMHTMLAppletElement WebCore::]):
1477 (+[DOMHTMLAppletElement _HTMLOptionElementWith:WebCore::]):
1478 * bindings/objc/DOMHTMLEmbedElement.mm:
1479 (-[DOMHTMLEmbedElement WebCore::]):
1480 (+[DOMHTMLEmbedElement _HTMLEmbedElementWith:WebCore::]):
1481 * bindings/objc/DOMInternal.h:
1482 * bindings/objc/DOMInternal.mm:
1483 * bindings/scripts/CodeGeneratorObjC.pm:
1484 * css/CSSCharsetRule.idl:
1485 * css/CSSFontFaceRule.idl:
1486 * css/CSSImportRule.idl:
1487 * css/CSSMediaRule.idl:
1488 * css/CSSPageRule.idl:
1489 * css/CSSPrimitiveValue.idl:
1490 * css/CSSStyleRule.idl:
1491 * css/CSSStyleSheet.idl:
1492 * css/CSSUnknownRule.idl:
1493 * css/CSSValueList.idl:
1494 * dom/KeyboardEvent.idl:
1495 * dom/MouseEvent.idl:
1496 * dom/MutationEvent.idl:
1497 * dom/NodeIterator.idl:
1498 * dom/OverflowEvent.idl:
1500 * dom/WheelEvent.idl:
1502 2006-09-29 David Harrison <harrison@apple.com>
1504 Reviewed by John Sullivan.
1506 <rdar://problem/4663772> REGRESSION: Cannot type in Japanese after replying to a particular message
1507 <rdar://problem/4673293> REGRESSION: Can't enter the Japanese characters in Mail or Blot
1510 * fast/text/attributed-substring-from-range-001.html
1512 * bridge/mac/FrameMac.mm:
1513 (WebCore::FrameMac::attributedString):
1514 Handle non-zero offsets when start and/or end node is a container. Offset used to be ignored in this case.
1515 Also, add validation of the range.
1517 2006-09-29 Rob Buis <buis@kde.org>
1521 http://bugs.webkit.org/show_bug.cgi?id=10893
1522 InsertRule can not handle @import statements
1524 Allow @import as part of a css rule.
1528 2006-09-28 David Hyatt <hyatt@apple.com>
1530 Switch over the Mac-specific uses of viewportToContents/contentsToViewport.
1532 * bridge/mac/FrameMac.mm:
1533 (WebCore::FrameMac::eventMayStartDrag):
1534 (WebCore::FrameMac::dragHysteresisExceeded):
1535 (WebCore::FrameMac::mouseDown):
1536 (WebCore::FrameMac::shouldDragAutoNode):
1537 (WebCore::FrameMac::sendContextMenuEvent):
1538 * bridge/mac/WebCoreFrameBridge.mm:
1539 (-[WebCoreFrameBridge _visiblePositionForPoint:]):
1541 2006-09-28 Dave Hyatt <hyatt@apple.com>
1543 This patch eliminates viewportToContents/contentsToViewport in favor of convertTo/FromContainingWindow.
1544 ScrollView now subclasses these methods to factor in its scrollOffset and to deal with the document
1547 Reviewed by mjs (the convertTo/From changes), (I added the elimination of viewportToContents to
1548 the patch after review, once I realized that these new functions essentially do the same thing.)
1550 * dom/EventTargetNode.cpp:
1551 (WebCore::EventTargetNode::dispatchMouseEvent):
1552 (WebCore::EventTargetNode::dispatchWheelEvent):
1554 (WebCore::Frame::selectClosestWordFromMouseEvent):
1555 (WebCore::Frame::handleMousePressEventTripleClick):
1556 (WebCore::Frame::handleMousePressEventSingleClick):
1557 (WebCore::Frame::handleMouseMoveEvent):
1558 (WebCore::Frame::handleMouseReleaseEvent):
1559 * page/FrameView.cpp:
1560 (WebCore::FrameView::handleMousePressEvent):
1561 (WebCore::selectCursor):
1562 (WebCore::FrameView::dispatchDragEvent):
1563 (WebCore::FrameView::prepareMouseEvent):
1564 (WebCore::FrameView::handleWheelEvent):
1565 * platform/ScrollView.h:
1566 * platform/Widget.cpp:
1567 (WebCore::Widget::convertToContainingWindow):
1568 * platform/Widget.h:
1569 * platform/mac/ScrollViewMac.mm:
1570 (WebCore::ScrollView::convertToContainingWindow):
1571 (WebCore::ScrollView::convertFromContainingWindow):
1572 * platform/mac/WidgetMac.mm:
1573 (WebCore::Widget::convertToContainingWindow):
1574 (WebCore::Widget::convertFromContainingWindow):
1575 * platform/win/ScrollViewWin.cpp:
1576 (WebCore::ScrollView::convertToContainingWindow):
1577 (WebCore::ScrollView::convertFromContainingWindow):
1578 * rendering/RenderLayer.cpp:
1579 (WebCore::RenderLayer::resize):
1581 2006-09-28 Alice Liu <alice.liu@apple.com>
1583 Build fix by adding missing files for CommandByName
1585 * WebCore.xcodeproj/project.pbxproj:
1587 2006-09-28 Alice Liu <alice.liu@apple.com>
1589 Adding CommandByName files to the vcproj
1591 * WebCore.vcproj/WebCore/WebCore.vcproj:
1593 2006-09-28 Alice Liu <alice.liu@apple.com>
1595 Reviewed by Adam Roben.
1597 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.
1598 This patch also exposes some UBRK-related utilities so that they can be used elsewhere.
1599 This patch also changes windows PlatformMouseEvent so that we can detect multiple-click mouse events
1601 * editing/CommandByName.cpp: Added.
1602 Added a command class that hangs off the frame so the frame can call commands more easily.
1603 (WebCore::Frame::commandImp):
1604 (WebCore::Frame::execCopy):
1605 (WebCore::Frame::execCut):
1606 (WebCore::Frame::execDelete):
1607 (WebCore::Frame::execForwardDelete):
1608 (WebCore::Frame::execPaste):
1609 (WebCore::Frame::execMoveLeft):
1610 (WebCore::Frame::execMoveRight):
1611 (WebCore::Frame::execMoveUp):
1612 (WebCore::Frame::execMoveDown):
1613 (WebCore::Frame::execSelectAll):
1614 (WebCore::Frame::execSelectLeft):
1615 (WebCore::Frame::execSelectRight):
1616 (WebCore::Frame::execSelectUp):
1617 (WebCore::Frame::execSelectDown):
1618 (WebCore::Frame::enabled):
1619 (WebCore::Frame::enabledAnySelection):
1620 (WebCore::Frame::enabledAnyEditableSelection):
1621 (WebCore::Frame::enabledPaste):
1622 (WebCore::Frame::enabledAnyRangeSelection):
1623 (WebCore::Frame::enabledAnyEditableRangeSelection):
1624 (WebCore::Frame::createCommandDictionary):
1625 (WebCore::Frame::Command::):
1626 (WebCore:::m_frame):
1627 (WebCore::CommandByName::execCommand):
1628 * editing/CommandByName.h: Added.
1630 Added implementation of accessor for CommandByName member
1631 (WebCore::Frame::command):
1633 Added accessor for CommandByName member
1634 * page/FramePrivate.h:
1635 Added a CommandByName member
1636 (WebCore::FramePrivate::FramePrivate):
1637 * platform/PlatformMouseEvent.h:
1638 Changed constructor prototype
1639 * platform/StringImpl.cpp:
1640 Exposing getWordBreakIterator to be used elsewhere
1641 (WebCore::getWordBreakIterator):
1642 * platform/StringImpl.h:
1643 Exposing getWordBreakIterator to be used elsewhere
1644 * platform/win/MouseEventWin.cpp:
1645 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
1646 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1648 2006-09-28 Adam Roben <aroben@apple.com>
1652 Remove no-longer-used PopUpButton.
1654 * WebCore.vcproj/WebCore/WebCore.vcproj: Remove PopUpButton.h
1655 * WebCore.xcodeproj/project.pbxproj: Remove PopUpButton.h,
1657 * platform/PopUpButton.h: Removed.
1658 * platform/mac/PopUpButtonMac.mm: Removed.
1659 * platform/win/TemporaryLinkStubs.cpp: Remove PopUpButton:: methods
1660 * rendering/DeprecatedRenderSelect.cpp: Change #include of
1661 PopUpButton.h to ListBox.h
1663 2006-09-28 Darin Adler <darin@apple.com>
1667 - change that should fix <rdar://problem/4733044> REGRESSION: XML iBench shows
1668 10% perf. regression (copying strings while decoding)
1670 Use Vector<UChar> instead of String when building up the decoded string in
1671 the ICU and Mac decoders. Using String leads to O(n^2) behavior because
1672 String grows the buffer every single time that append is called. Using
1673 Vector::append instead of String::append also avoids constructing a string
1674 each time just to append and a questionable copy that is done inside the
1675 String::append function which also contributed to the slowness.
1677 * platform/PlatformString.h:
1678 * platform/String.cpp: (WebCore::String::adopt): Added. Makes a String from a
1679 Vector<UChar>, adopting the buffer from the vector to avoid copying and memory
1681 * platform/StringImpl.h:
1682 * platform/StringImpl.cpp: (WebCore::StringImpl::adopt): Ditto.
1684 * platform/StreamingTextDecoder.h:
1685 * platform/StreamingTextDecoder.cpp: (WebCore::TextCodec::appendOmittingBOM):
1686 Change to use a Vector<UChar> instead of a String, since vectors have better
1687 resizing performance (they store a separate capacity).
1689 * platform/StreamingTextDecoderICU.cpp: (WebCore::TextCodecICU::decode):
1690 * platform/mac/StreamingTextDecoderMac.cpp: (WebCore::TextCodecMac::decode):
1691 Change to use Vector<UChar> instead of String and then create a string at
1692 the end of the process using the new adopt function.
1694 2006-09-28 Sam Weinig <sam.weinig@gmail.com>
1698 Patch for http://bugs.webkit.org/show_bug.cgi?id=11057
1699 Auto-generate more SVG Objective-C bindings
1701 - Auto-generates DOMSVGAnimatedAngle, DOMSVGAnimatedBoolean,
1702 DOMSVGAnimatedEnumeration, DOMSVGAnimatedInteger, DOMSVGAnimatedLength,
1703 DOMSVGAnimatedLengthList, DOMSVGAnimatedNumber, DOMSVGAnimatedString,
1704 DOMSVGAnimatedTransformList, DOMSVGExternalResourcesRequired,
1705 DOMSVGLangSpace, DOMSVGLocatable, DOMSVGMetadataElement, DOMSVGRectElement,
1706 DOMSVGStringList, DOMSVGStylable, DOMSVGStyleElement, DOMSVGTests,
1707 and DOMSVGTransformable.
1709 - Adds ability to CodeGeneratorObjC.pm to handle interfaces with mulitple
1710 parent interfaces and the SVG animated classes.
1712 - Corrects CodeGenerator.pm to only skip the first parent for the main
1715 * DerivedSources.make:
1716 * WebCore.xcodeproj/project.pbxproj:
1717 * bindings/objc/DOMInternal.h:
1718 * bindings/objc/DOMSVG.h:
1719 * bindings/scripts/CodeGenerator.pm:
1720 * bindings/scripts/CodeGeneratorObjC.pm:
1721 * ksvg2/svg/SVGAnimatedAngle.idl:
1722 * ksvg2/svg/SVGAnimatedBoolean.idl:
1723 * ksvg2/svg/SVGAnimatedEnumeration.idl:
1724 * ksvg2/svg/SVGAnimatedInteger.idl:
1725 * ksvg2/svg/SVGAnimatedLength.idl:
1726 * ksvg2/svg/SVGAnimatedLengthList.idl:
1727 * ksvg2/svg/SVGAnimatedNumber.idl:
1728 * ksvg2/svg/SVGAnimatedPathData.idl:
1729 * ksvg2/svg/SVGAnimatedString.idl:
1730 * ksvg2/svg/SVGAnimatedTransformList.idl:
1731 * ksvg2/svg/SVGExternalResourcesRequired.idl:
1732 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.idl:
1733 * ksvg2/svg/SVGFitToViewBox.idl:
1734 * ksvg2/svg/SVGLangSpace.idl:
1735 * ksvg2/svg/SVGLocatable.idl:
1736 * ksvg2/svg/SVGMetadataElement.idl:
1737 * ksvg2/svg/SVGStringList.idl:
1738 * ksvg2/svg/SVGStylable.idl:
1739 * ksvg2/svg/SVGStyleElement.idl:
1740 * ksvg2/svg/SVGTests.idl:
1741 * ksvg2/svg/SVGTransformable.idl:
1742 * ksvg2/svg/SVGURIReference.idl:
1743 * ksvg2/svg/SVGUnitTypes.idl:
1744 * ksvg2/svg/SVGZoomAndPan.idl:
1746 2006-09-28 Brady Eidson <beidson@apple.com>
1748 Reviewed by Mitz Pettel!!!
1750 Change the error code check for common functions from SQLResultOk to SQLResultDone
1752 * loader/icon/IconDatabase.cpp:
1753 (WebCore::IconDatabase::forgetPageURLQuery):
1754 (WebCore::IconDatabase::setIconIDForPageURLQuery):
1755 (WebCore::IconDatabase::addIconForIconURLQuery):
1757 2006-09-28 Dave Hyatt <hyatt@apple.com>
1759 Just eliminate MapWindowPoints usage and use the HWND as
1762 * platform/win/MouseEventWin.cpp:
1763 (WebCore::positionForEvent):
1764 * platform/win/ScrollViewWin.cpp:
1765 (WebCore::ScrollView::viewportToContents):
1766 (WebCore::ScrollView::contentsToViewport):
1768 2006-09-27 David Hyatt <hyatt@apple.com>
1770 Fix for bug 9222, cursor is wrong when mousing over overflow scrollbars in textareas. Make sure
1771 selectCursor checks for whether or not a scrollbar was hit. Also stub out a mouseMoved method for
1772 scrollbars to provide hover feedback if needed.
1776 * page/FrameView.cpp:
1777 (WebCore::selectCursor):
1778 (WebCore::FrameView::handleMouseMoveEvent):
1779 * platform/ScrollBar.h:
1780 (WebCore::ScrollBar::mouseMoved):
1782 2006-09-27 MorganL <morganl.webkit@yahoo.com>
1784 Reviewed by Maciej and Adam, landed by Adam
1786 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11072
1787 Windows build is busted
1789 * platform/win/TemporaryLinkStubs.cpp:
1790 (ScrollView::paint):
1791 (ScrollView::themeChanged):
1793 2006-09-27 Eric Seidel <eric@eseidel.com>
1797 paths with no fill specified default to black but do not recieve paint-related mouse events
1798 http://bugs.webkit.org/show_bug.cgi?id=11069
1799 The default fill was being applied at the wrong place in the rendering chain, causing this problem.
1801 Test: svg/custom/hover-default-fill.svg
1803 * kcanvas/RenderPath.cpp:
1804 (WebCore::RenderPath::nodeAtPoint): use isFilled and isStroked
1805 * ksvg2/css/SVGRenderStyle.h: use defaultFill() and defaultStroke()
1806 * ksvg2/misc/KCanvasRenderingStyle.cpp:
1807 (WebCore::KSVGPainterFactory::isFilled): remove null check
1808 (WebCore::KSVGPainterFactory::fillPaintServer): remove null check
1809 (WebCore::KSVGPainterFactory::isStroked): remove null check
1810 (WebCore::KSVGPainterFactory::strokePaintServer): remove null check
1811 * ksvg2/svg/SVGPaint.cpp:
1812 (WebCore::SVGPaint::defaultFill): added.
1813 (WebCore::SVGPaint::defaultStroke): added.
1814 * ksvg2/svg/SVGPaint.h:
1816 2006-09-27 Rob Buis <buis@kde.org>
1818 Reviewed by eseidel.
1820 http://bugs.webkit.org/show_bug.cgi?id=11015
1821 SVG handles em units incorrectly
1823 Calculate viewport coordinates at layout time, since
1824 at this point the font size is known and lengths depending
1825 on font sizes can be calculated correctly.
1827 * kcanvas/RenderSVGContainer.cpp:
1828 (WebCore::RenderSVGContainer::layout):
1829 (WebCore::RenderSVGContainer::viewport):
1830 (WebCore::RenderSVGContainer::calcViewport):
1831 * kcanvas/RenderSVGContainer.h:
1832 * ksvg2/svg/SVGLength.cpp:
1833 (WebCore::SVGLength::updateValue):
1834 * ksvg2/svg/SVGMarkerElement.cpp:
1835 (WebCore::SVGMarkerElement::createRenderer):
1836 * ksvg2/svg/SVGSVGElement.cpp:
1837 (WebCore::SVGSVGElement::createRenderer):
1838 (WebCore::SVGSVGElement::attributeChanged):
1839 * ksvg2/svg/SVGSVGElement.h:
1841 2006-09-27 Eric Seidel <eric@eseidel.com>
1845 Change our invalid-fill error behavior to match Opera (and soon Firefox)
1846 http://bugs.webkit.org/show_bug.cgi?id=11017
1848 * ksvg2/misc/KCanvasRenderingStyle.cpp:
1849 (WebCore::KSVGPainterFactory::isFilled):
1850 (WebCore::KSVGPainterFactory::fillPaintServer):
1851 (WebCore::KSVGPainterFactory::isStroked):
1852 (WebCore::KSVGPainterFactory::strokePaintServer):
1854 2006-09-27 Brady Eidson <beidson@apple.com>
1858 * loader/icon/IconDatabase.cpp:
1859 (WebCore::readySQLStatement):
1861 2006-09-27 Brady Eidson <beidson@apple.com>
1865 In very specific circumstances, prepared SQLStatements can become invalid without
1866 any warning. This checks for that state and re-prepares the statement and also
1867 adds more aggressive error-checking everywhere these statements are used.
1869 * loader/icon/IconDatabase.cpp:
1870 (WebCore::readySQLStatement): Check if the statement is expired - reprepare it
1871 (WebCore::IconDatabase::imageDataForIconURLQuery): More thoroughly catch error cases
1872 (WebCore::IconDatabase::timeStampForIconURLQuery): Ditto
1873 (WebCore::IconDatabase::iconURLForPageURLQuery): Ditto
1874 (WebCore::IconDatabase::forgetPageURLQuery): Ditto
1875 (WebCore::IconDatabase::setIconIDForPageURLQuery): Ditto
1876 (WebCore::IconDatabase::getIconIDForIconURLQuery): Ditto
1877 (WebCore::IconDatabase::addIconForIconURLQuery): Ditto
1878 (WebCore::IconDatabase::hasIconForIconURLQuery): Ditto
1879 * loader/icon/SQLStatement.cpp:
1880 (WebCore::SQLStatement::isExpired): Added (accessor to sqlite3_expired())
1881 * loader/icon/SQLStatement.h:
1883 2006-09-26 Darin Adler <darin@apple.com>
1887 - clean up options for font code path
1890 * platform/Font.cpp:
1891 (WebCore::Font::setCodePath): Added. Replaces boolean version.
1892 (WebCore::Font::canUseGlyphCache): Update to handle "never use complex" case too.
1894 * platform/mac/WebCoreTextRenderer.mm:
1895 (WebCoreSetAlwaysUseATSU): Change to call setCodePath.
1897 2006-09-26 John Sullivan <sullivan@apple.com>
1901 * bridge/mac/WebCoreFrameBridge.h:
1902 * bridge/mac/WebCoreFrameBridge.mm:
1903 (-[WebCoreFrameBridge markAllMatchesForText:caseSensitive:limit:]):
1904 Added limit parameter, passed down to Frame
1908 (WebCore::Frame::markAllMatchesForText):
1909 Added limit parameter. Stop the search if it hits limit.
1911 2006-09-26 Sean Gies <seangies@apple.com>
1913 Reviewed by Brady Eidson.
1915 * platform/cg/ImageCG.cpp: Removed #if's -- Darin said we don't need these.
1917 2006-09-26 Justin Garcia <justin.garcia@apple.com>
1921 <rdar://problem/4747695>
1922 Gmail Editor: Crash at WebCore::Range::startPosition() when decreasing a indent
1924 * editing/DeleteSelectionCommand.cpp:
1925 (WebCore::DeleteSelectionCommand::initializeStartEnd): Stop expanding
1926 to select special elements that are fully selected after expansion
1927 moves to positions that are visually distinct from the originals.
1928 * editing/InsertListCommand.cpp:
1929 (WebCore::InsertListCommand::doApply): If the content of the list
1930 item will be moved into another list, put it in a list item.
1932 2006-09-26 Geoffrey Garen <ggaren@apple.com>
1936 Temporary work-around for frame lifetime issue.
1939 (WebCore::Frame::clear):
1940 (WebCore::Frame::disconnectOwnerElement):
1942 2006-09-26 Sam Weinig <sam.weinig@gmail.com>
1946 Patch for http://bugs.webkit.org/show_bug.cgi?id=11038
1947 Auto-generate DOMSVGElement for the Objective-C bindings
1949 - Auto-generates DOMSVGElement.
1951 - Make SVGExceptions work like all the other ExceptionCode
1952 extensions (Range, XPath, etc.) by adding SVGExceptionOffset
1953 and SVGExceptionMax.
1955 * DerivedSources.make:
1956 * WebCore.xcodeproj/project.pbxproj:
1957 * bindings/js/kjs_binding.cpp:
1959 (KJS::setDOMException):
1960 * bindings/objc/DOMInternal.h:
1961 * bindings/objc/DOMInternal.mm:
1962 (raiseDOMException):
1963 * bindings/objc/DOMSVG.h:
1964 * bindings/objc/DOMSVGExecption.h: Added.
1966 * ksvg2/svg/SVGElement.cpp:
1967 (WebCore::SVGElement::setId):
1968 (WebCore::SVGElement::setXmlbase):
1969 * ksvg2/svg/SVGElement.h:
1970 * ksvg2/svg/SVGElement.idl:
1971 * ksvg2/svg/SVGException.h: Added.
1974 2006-09-26 Eric Seidel <eric@eseidel.com>
1978 viewbox parser does not allow <tab> as a delimiter
1979 http://bugs.webkit.org/show_bug.cgi?id=11014
1981 Test: svg/hixie/viewbox/003.xml
1983 * ksvg2/svg/svgpathparser.cpp:
1984 (WebCore::isWhitespace): new function
1985 (WebCore::skipOptionalSpaces):
1986 (WebCore::skipOptionalSpacesOrComma):
1988 2006-09-26 Eric Seidel <eric@eseidel.com>
1992 SVGDocument::createElement does not create elements in the SVG namespace
1993 http://bugs.webkit.org/show_bug.cgi?id=10932
1995 Test: svg/custom/createelement.svg
1997 * ksvg2/svg/SVGDocument.cpp:
1998 (WebCore::SVGDocument::createElement):
1999 * ksvg2/svg/SVGDocument.h:
2001 2006-09-26 Eric Seidel <eric@eseidel.com>
2005 RenderPath::nodeAtPoint does not respect stroke width
2006 http://bugs.webkit.org/show_bug.cgi?id=10829
2008 Test: svg/custom/stroke-width-click.svg
2010 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
2011 (WebCore::RenderPath::strokeContains):
2012 * kcanvas/device/quartz/QuartzSupport.h:
2013 * kcanvas/device/quartz/QuartzSupport.mm:
2015 2006-09-26 Eric Seidel <eric@eseidel.com>
2019 Bring animation back to life
2020 http://bugs.webkit.org/show_bug.cgi?id=11021
2022 Register/unregister SVGSVGElements as time containers on insertion/removal.
2023 Replace uses of DeprecatedString with String in SVGAnimationElement
2024 Various whitespace clean-up.
2026 * ksvg2/misc/KSVGTimeScheduler.cpp:
2027 (WebCore::SVGTimer::notifyAll):
2028 * ksvg2/misc/SVGDocumentExtensions.cpp:
2029 (WebCore::SVGDocumentExtensions::startAnimations):
2030 (WebCore::SVGDocumentExtensions::pauseAnimations):
2031 (WebCore::SVGDocumentExtensions::unpauseAnimations):
2032 * ksvg2/svg/SVGAnimateTransformElement.cpp:
2033 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
2034 (WebCore::SVGAnimateTransformElement::parseTransformValue):
2035 * ksvg2/svg/SVGAnimateTransformElement.h:
2036 * ksvg2/svg/SVGAnimationElement.cpp:
2037 (WebCore::SVGAnimationElement::SVGAnimationElement):
2038 (WebCore::SVGAnimationElement::parseMappedAttribute):
2039 (WebCore::SVGAnimationElement::parseClockValue):
2040 (WebCore::SVGAnimationElement::targetAttribute):
2041 (WebCore::SVGAnimationElement::setTargetAttribute):
2042 (WebCore::SVGAnimationElement::attributeName):
2043 * ksvg2/svg/SVGAnimationElement.h:
2044 (WebCore::SVGAnimationElement::rendererIsNeeded):
2045 * ksvg2/svg/SVGSVGElement.cpp:
2046 (WebCore::SVGSVGElement::getScreenCTM):
2047 (WebCore::SVGSVGElement::createRenderer):
2048 (WebCore::SVGSVGElement::insertedIntoDocument): added, calls addTimeContainer(this)
2049 (WebCore::SVGSVGElement::removedFromDocument): added, calls removeTimeContainer(this)
2050 * ksvg2/svg/SVGSVGElement.h:
2051 * ksvg2/svg/SVGSetElement.cpp:
2052 (WebCore::SVGSetElement::handleTimerEvent):
2053 * ksvg2/svg/SVGURIReference.cpp:
2054 (WebCore::SVGURIReference::getTarget):
2055 * ksvg2/svg/SVGURIReference.h:
2057 2006-09-26 Graham Dennis <graham.dennis@gmail.com>
2059 Reviewed by mitzpettel.
2061 - fix http://bugs.webkit.org/show_bug.cgi?id=11020
2062 No-SVG build broken since r16549
2064 Change #if SVG_SUPPORT to #ifdef SVG_SUPPORT
2066 * css/cssparser.cpp:
2067 (WebCore::CSSParser::parseValue):
2068 * css/cssstyleselector.cpp:
2069 (WebCore::CSSStyleSelector::applyProperty):
2070 * page/FrameView.cpp:
2071 (WebCore::selectCursor):
2072 * platform/qt/GraphicsContextQt.cpp:
2074 2006-09-26 Anders Carlsson <acarlsson@apple.com>
2078 http://bugs.webkit.org/show_bug.cgi?id=10820
2079 Add StringImpl::toDouble() and remove uses of .deprecatedString().toDouble()
2081 (Originally written by Eric Seidel).
2083 * bindings/js/kjs_window.cpp:
2084 (KJS::floatFeature):
2085 * ksvg2/svg/SVGAngle.cpp:
2086 (SVGAngle::setValueAsString):
2087 * ksvg2/svg/SVGAnimationElement.cpp:
2088 (SVGAnimationElement::parseMappedAttribute):
2089 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
2090 (SVGComponentTransferFunctionElement::parseMappedAttribute):
2091 * ksvg2/svg/SVGFECompositeElement.cpp:
2092 (WebCore::SVGFECompositeElement::parseMappedAttribute):
2093 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
2094 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
2095 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
2096 (SVGFEDisplacementMapElement::parseMappedAttribute):
2097 * ksvg2/svg/SVGFELightElement.cpp:
2098 (SVGFELightElement::parseMappedAttribute):
2099 * ksvg2/svg/SVGFEOffsetElement.cpp:
2100 (WebCore::SVGFEOffsetElement::parseMappedAttribute):
2101 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
2102 (SVGFESpecularLightingElement::parseMappedAttribute):
2103 * ksvg2/svg/SVGFETurbulenceElement.cpp:
2104 (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
2105 * ksvg2/svg/SVGStopElement.cpp:
2106 (SVGStopElement::parseMappedAttribute):
2107 * platform/AtomicString.h:
2108 (WebCore::AtomicString::toDouble):
2109 * platform/PlatformString.h:
2110 * platform/String.cpp:
2111 (WebCore::String::toDouble):
2112 * platform/StringImpl.cpp:
2113 (WebCore::StringImpl::toDouble):
2114 * platform/StringImpl.h:
2115 * rendering/DeprecatedSlider.cpp:
2116 (WebCore::DeprecatedSlider::updateFromElement):
2117 * xml/XPathGrammar.y:
2119 2006-09-25 David Harrison <harrison@apple.com>
2121 Reviewed by Tim Omernick and Tim Hatcher.
2123 <rdar://problem/4717965> Text Field text parameterized attributes should work
2124 <rdar://problem/4712111> Support NSAccessibilityInsertionPointLineNumberAttribute for AXTextArea elements
2126 * bridge/mac/WebCoreAXObject.mm:
2127 (-[WebCoreAXObject accessibilityAttributeValue:]):
2128 Use new line number support to implement NSAccessibilityInsertionPointLineNumberAttribute.
2130 (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
2131 Cleaned up. Added text field and text area parameterzed attributes.
2133 (-[WebCoreAXObject doAXLineForTextMarker:]):
2134 Fixed to be zero-based and to deal with the first position properly.
2136 (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
2139 (-[WebCoreAXObject textMarkerForIndex:lastIndexOK:]):
2140 (-[WebCoreAXObject indexForTextMarker:]):
2141 (-[WebCoreAXObject textMarkerRangeForRange:]):
2142 (-[WebCoreAXObject rangeForTextMarkerRange:]):
2143 New utility methods.
2145 (-[WebCoreAXObject doAXLineForIndex:]):
2146 (-[WebCoreAXObject doAXRangeForLine:]):
2147 (-[WebCoreAXObject doAXStringForRange:]):
2148 (-[WebCoreAXObject doAXRangeForPosition:]):
2149 (-[WebCoreAXObject doAXRangeForIndex:]):
2150 (-[WebCoreAXObject doAXBoundsForRange:]):
2151 (-[WebCoreAXObject doAXAttributedStringForRange:]):
2152 (-[WebCoreAXObject doAXRTFForRange:]):
2153 (-[WebCoreAXObject doAXStyleRangeForIndex:]):
2154 Implement text field and text area parameterized attributes.
2156 (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
2157 Added text field and text area parameterzed attributes.
2159 * rendering/RenderTextControl.h:
2160 Made indexForVisiblePosition() and visiblePositionForIndex() public.
2162 2006-09-25 Adam Roben <aroben@apple.com>
2168 * WebCore.vcproj/WebCore/WebCore.vcproj: Fix malformed XML.
2169 * platform/ResourceLoader.h: Store whether a particular job
2170 has received a response within the ResourceLoader object itself, since
2171 it's possible that we will enter the InternetReadFileExA while loop
2172 twice for the same job.
2173 * platform/ResourceLoaderInternal.h: Add private instance variable to
2174 store whether we've received a response.
2175 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
2176 * platform/win/GraphicsContextWin.cpp: Fix order of preprocessor
2178 * platform/win/ResourceLoaderWin.cpp:
2179 (WebCore::ResourceLoader::onRequestComplete): Ask the ResourceLoader
2180 whether it has received a response instead of assuming it hasn't.
2181 (WebCore::ResourceLoader::setHasReceivedResponse): Added.
2182 (WebCore::ResourceLoader::hasReceivedResponse): Added.
2183 * platform/win/TemporaryLinkStubs.cpp: Rename setKnobProportion to
2185 (ScrollBar::setProportion):
2187 2006-09-25 Brady Eidson <beidson@apple.com>
2191 Disabled IconDatabase logging by default
2193 * platform/Logging.cpp:
2196 2006-09-25 Steve Falkenburg <sfalken@apple.com>
2200 * platform/cf/ResourceLoaderCFNet.cpp:
2201 (WebCore::willCacheResponse):
2203 2006-09-25 Justin Garcia <justin.garcia@apple.com>
2207 <http://bugs.webkit.org/show_bug.cgi?id=11002>
2208 Gmail Editor: Crash at WebCore::SplitElementCommand::doApply() when attempting to indent in a new message
2210 * editing/IndentOutdentCommand.cpp:
2211 (WebCore::IndentOutdentCommand::indentRegion): Special case
2212 an empty root editable element.
2214 2006-09-25 Brady Eidson <beidson@apple.com>
2218 Math error in SystemTimeWin
2220 * platform/win/SystemTimeWin.cpp:
2221 (WebCore::currentTime):
2223 2006-09-25 Alexey Proskuryakov <ap@nypop.com>
2227 Whitespace cleanup; rename *job variables to *loader.
2229 * bindings/js/JSXMLHttpRequest.cpp:
2230 (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
2231 (KJS::JSXMLHttpRequestConstructorImp::implementsConstruct):
2232 (KJS::JSXMLHttpRequestConstructorImp::construct):
2233 (KJS::JSXMLHttpRequest::getOwnPropertySlot):
2234 (KJS::JSXMLHttpRequest::getValueProperty):
2235 (KJS::JSXMLHttpRequest::put):
2236 (KJS::JSXMLHttpRequest::putValueProperty):
2237 (KJS::JSXMLHttpRequest::mark):
2238 (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
2239 (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
2240 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
2241 * bindings/js/JSXMLHttpRequest.h:
2242 (KJS::JSXMLHttpRequest::toBoolean):
2243 * xml/xmlhttprequest.cpp:
2244 (WebCore::XMLHttpRequest::XMLHttpRequest):
2245 (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
2246 (WebCore::XMLHttpRequest::send):
2247 (WebCore::XMLHttpRequest::abort):
2248 (WebCore::XMLHttpRequest::receivedAllData):
2249 (WebCore::XMLHttpRequest::receivedData):
2250 * xml/xmlhttprequest.h:
2253 2006-09-25 Timothy Hatcher <timothy@apple.com>
2257 - Deprecate the rest of the old-style methods that are not generated.
2258 - Add @property syntax to DOMRange.
2260 * WebCore.xcodeproj/project.pbxproj:
2261 * bindings/objc/DOM.mm:
2262 (-[DOMRange setStart:offset:]):
2263 (-[DOMRange setEnd:offset:]):
2264 (-[DOMRange compareBoundaryPoints:sourceRange:]):
2265 (-[DOMRange setStart::]):
2266 (-[DOMRange setEnd::]):
2267 (-[DOMRange compareBoundaryPoints::]):
2268 (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
2269 (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
2270 (-[DOMDocument createNodeIterator::::]):
2271 (-[DOMDocument createTreeWalker::::]):
2272 * bindings/objc/DOMCSS.h:
2273 * bindings/objc/DOMCSS.mm:
2274 (-[DOMDocument getComputedStyle:pseudoElement:]):
2275 (-[DOMDocument getComputedStyle::]):
2276 (-[DOMDocument getMatchedCSSRules:pseudoElement:]):
2277 * bindings/objc/DOMExtensions.h:
2278 * bindings/objc/DOMHTML.h:
2279 * bindings/objc/DOMRange.h:
2280 * bindings/objc/DOMTraversal.h:
2282 2006-09-25 Eric Seidel <eric@eseidel.com>
2286 Outermost <svg> element should clip to viewport
2287 http://bugs.webkit.org/show_bug.cgi?id=11007
2289 Test: svg/custom/viewport-clip.svg
2291 * css/svg.css: change svg:root overflow: from 'visible' to 'hidden'
2293 2006-09-25 Anders Carlsson <acarlsson@apple.com>
2297 * css/MediaList.cpp:
2298 Remove unused header.
2301 (WebCore::Document::clear):
2302 Use clear instead of iterating through the list of event listeners, removing each one.
2303 (Doing that causes a crash when running the layout tests with GuardMalloc turned on)
2305 * html/HTMLKeygenElement.cpp:
2306 (WebCore::HTMLKeygenElement::HTMLKeygenElement):
2307 (WebCore::HTMLKeygenElement::appendFormData):
2308 Update due to changes in the SSL key generator.
2310 * ksvg2/svg/SVGAngle.cpp:
2311 Remove unused header.
2313 * ksvg2/svg/SVGAnimationElement.cpp:
2314 (SVGAnimationElement::parseMappedAttribute):
2315 Rename methods and pass Strings instead of DeprecatedStrings to
2318 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
2319 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
2320 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
2321 * ksvg2/svg/SVGFEMergeElement.cpp:
2322 * ksvg2/svg/SVGFEOffsetElement.cpp:
2323 Remove unused headers.
2325 * ksvg2/svg/SVGHelper.cpp:
2326 (WebCore::SVGHelper::parseSeparatedList):
2327 * ksvg2/svg/SVGHelper.h:
2328 Rename ParseSeperatedList to parseSeparatedList, make it take a String instead of a
2329 DeprecatedString and have it use Vector<String> instead of DeprecatedStringList.
2331 * ksvg2/svg/SVGLengthList.cpp:
2332 (WebCore::SVGLengthList::parse):
2333 * ksvg2/svg/SVGLengthList.h:
2334 Use Vector<String> instead of DeprecatedStringList.
2337 (WebCore::Cache::requestImage):
2338 (WebCore::Cache::requestStyleSheet):
2339 (WebCore::Cache::requestScript):
2340 (WebCore::Cache::requestXSLStyleSheet):
2341 (WebCore::Cache::requestXBLDocument):
2342 (WebCore::Cache::remove):
2343 (WebCore::Cache::get):
2344 Use a String as the key in the cache set instead of a RefPtr<StringImpl>.
2346 * loader/DocLoader.cpp:
2347 (WebCore::DocLoader::needReload):
2348 * loader/DocLoader.h:
2349 Use a HashSet instead of DeprecatedStringList.
2352 Remove declarations that have no functions.
2354 * platform/SSLKeyGenerator.h:
2355 * platform/mac/SSLKeyGeneratorMac.mm:
2356 (WebCore::supportedKeySizes):
2357 (WebCore::signedPublicKeyAndChallengeString):
2358 Convert to use Vector<String> instead of DeprecatedStringList, and String instead of
2361 2006-09-25 Dave Hyatt <hyatt@apple.com>
2363 Shunt the RenderTheme world transform adoption between
2364 Cairo and Windows into getWindowsContext and move the method
2365 out of GraphicsContextCairo and into GraphicsContextWin.
2368 * WebCore.vcproj/WebCore/WebCore.vcproj:
2369 * platform/cairo/GraphicsContextCairo.cpp:
2370 * platform/win/GraphicsContextWin.cpp: Added.
2371 (WebCore::GraphicsContext::getWindowsContext):
2372 (WebCore::GraphicsContext::releaseWindowsContext):
2373 * rendering/RenderThemeWin.cpp:
2374 (WebCore::prepareForDrawing):
2376 2006-09-24 Eric Seidel <eric@eseidel.com>
2380 <svg:a> cannot be styled with a:hover
2381 http://bugs.webkit.org/show_bug.cgi?id=11005
2383 Test: svg/hixie/cascade/002.xml
2385 * css/cssstyleselector.cpp:
2386 (WebCore::checkPseudoState):
2388 2006-09-24 Sam Weinig <sam.weinig@gmail.com>
2392 Patch for http://bugs.webkit.org/show_bug.cgi?id=10882
2393 SVG needs Obj-C DOM bindings
2395 - Auto-generate the first 8 Objective-C SVG DOM bindings. The
2396 auto-generated classes are DOMSVGAngle, DOMSVGLength, DOMSVGLengthList,
2397 DOMSVGMatrix, DOMSVGPathSeg, DOMSVGPathSegList, DOMSVGTransform, and
2398 DOMSVGTransformList.
2400 * DerivedSources.make:
2401 * WebCore.xcodeproj/project.pbxproj:
2402 * bindings/objc/DOMInternal.h:
2403 * bindings/objc/DOMSVG.h: Added.
2404 * ksvg2/svg/SVGAngle.idl:
2405 * ksvg2/svg/SVGLength.idl:
2406 * ksvg2/svg/SVGLengthList.idl:
2407 * ksvg2/svg/SVGMatrix.idl:
2408 * ksvg2/svg/SVGPathSeg.idl:
2409 * ksvg2/svg/SVGPathSegList.idl:
2410 * ksvg2/svg/SVGTransform.idl:
2411 * ksvg2/svg/SVGTransformList.idl:
2413 2006-09-24 Rob Buis <buis@kde.org>
2415 Reviewed by eseidel.
2417 Fix for http://bugs.webkit.org/show_bug.cgi?id=6001
2418 WebKit does not handle fallback custom cursors
2419 Fix for http://bugs.webkit.org/show_bug.cgi?id=6002
2420 WebKit does not properly handle SVG <cursor> element
2422 Add support for svg cursor images. Also make sure hotspot
2423 settings are handled correctly. Add tests for handling of css3
2424 cursor syntax with hotspots in strict and quirks mode. Finally
2427 * WebCore.xcodeproj/project.pbxproj:
2428 * css/CSSComputedStyleDeclaration.cpp:
2429 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2430 * css/CSSCursorImageValue.cpp: Added.
2431 (WebCore::CSSCursorImageValue::CSSCursorImageValue):
2432 (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
2433 * css/CSSCursorImageValue.h: Added.
2434 (WebCore::CSSCursorImageValue::hotspot):
2435 * css/cssparser.cpp:
2436 (WebCore::CSSParser::parseValue):
2437 * css/cssstyleselector.cpp:
2438 (WebCore::CSSStyleSelector::applyProperty):
2439 * ksvg2/svg/SVGCursorElement.cpp:
2440 * manual-tests/css3-cursor-fallback-quirks.html: Added.
2441 * manual-tests/css3-cursor-fallback-strict.html: Added.
2442 * manual-tests/cursorfallback.xml: Added.
2443 * page/FrameView.cpp:
2444 (WebCore::selectCursor):
2445 * platform/Cursor.h:
2446 * platform/mac/CursorMac.mm:
2447 (WebCore::createCustomCursor):
2448 (WebCore::Cursor::Cursor):
2449 * platform/qt/CursorQt.cpp:
2450 (WebCore::Cursor::Cursor):
2451 * rendering/RenderStyle.cpp:
2452 (WebCore::StyleInheritedData::StyleInheritedData):
2453 (WebCore::StyleInheritedData::operator==):
2454 (WebCore::RenderStyle::diff):
2455 (WebCore::RenderStyle::addCursor):
2456 (WebCore::RenderStyle::addSVGCursor):
2457 (WebCore::RenderStyle::setCursorList):
2458 (WebCore::RenderStyle::clearCursorList):
2459 * rendering/RenderStyle.h:
2460 (WebCore::CursorData::CursorData):
2461 (WebCore::CursorList::operator[]):
2462 (WebCore::CursorList::size):
2463 (WebCore::CursorList::append):
2464 (WebCore::RenderStyle::cursors):
2466 2006-09-24 Sam Weinig <sam.weinig@gmail.com>
2470 Patch for http://bugs.webkit.org/show_bug.cgi?id=11009
2471 Auto-generate the internal methods interfaces for the Objective-C bindings
2473 - Auto-generate the internal method declarations into their own files
2474 named in the form DOMFooBarInternal.h for class DOMFooBar.
2476 - Remove all use of DOM_cast from code.
2478 - Assorted cleanups.
2480 * WebCore.xcodeproj/project.pbxproj:
2481 * bindings/objc/DOM.mm:
2482 (-[DOMNode _initWithNode:WebCore::]):
2483 (-[DOMNode WebCore::]):
2484 (-[DOMRange dealloc]):
2485 (-[DOMRange finalize]):
2486 (-[DOMRange _initWithRange:WebCore::]):
2487 (-[DOMRange WebCore::]):
2488 (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
2489 (-[DOMNodeFilter WebCore::]):
2490 (-[DOMNodeFilter dealloc]):
2491 (-[DOMNodeFilter finalize]):
2492 (-[DOMNodeIterator _initWithNodeIterator:WebCore::filter:]):
2493 (-[DOMNodeIterator WebCore::]):
2494 (-[DOMTreeWalker _initWithTreeWalker:WebCore::filter:]):
2495 (-[DOMTreeWalker WebCore::]):
2496 * bindings/objc/DOMAbstractView.mm:
2497 (-[DOMAbstractView _initWithAbstractView:WebCore::]):
2498 * bindings/objc/DOMCSS.mm:
2499 (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
2500 (-[DOMCSSRule _initWithRule:WebCore::]):
2501 (-[DOMCSSValue _initWithValue:WebCore::]):
2502 * bindings/objc/DOMEvents.mm:
2503 (-[DOMEvent _initWithEvent:WebCore::]):
2504 * bindings/objc/DOMHTMLAppletElement.mm:
2505 (-[DOMHTMLAppletElement align]):
2506 (-[DOMHTMLAppletElement setAlign:]):
2507 (-[DOMHTMLAppletElement alt]):
2508 (-[DOMHTMLAppletElement setAlt:]):
2509 (-[DOMHTMLAppletElement archive]):
2510 (-[DOMHTMLAppletElement setArchive:]):
2511 (-[DOMHTMLAppletElement code]):
2512 (-[DOMHTMLAppletElement setCode:]):
2513 (-[DOMHTMLAppletElement codeBase]):
2514 (-[DOMHTMLAppletElement setCodeBase:]):
2515 (-[DOMHTMLAppletElement height]):
2516 (-[DOMHTMLAppletElement setHeight:]):
2517 (-[DOMHTMLAppletElement hspace]):
2518 (-[DOMHTMLAppletElement setHspace:]):
2519 (-[DOMHTMLAppletElement name]):
2520 (-[DOMHTMLAppletElement setName:]):
2521 (-[DOMHTMLAppletElement object]):
2522 (-[DOMHTMLAppletElement setObject:]):
2523 (-[DOMHTMLAppletElement vspace]):
2524 (-[DOMHTMLAppletElement setVspace:]):
2525 (-[DOMHTMLAppletElement width]):
2526 (-[DOMHTMLAppletElement setWidth:]):
2527 * bindings/objc/DOMInternal.h:
2531 * bindings/objc/DOMXPath.mm:
2532 (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:WebCore::]):
2533 * bindings/scripts/CodeGeneratorObjC.pm:
2535 2006-09-24 Nikolas Zimmermann <zimmermann@kde.org>
2537 Reviewed by eseidel.
2539 Fix Qt/Linux build after Dave's Scrollbar changes.
2541 * platform/qt/PlatformScrollBar.h: (Somehow this contained the file twice! Removed one instance!)
2542 * platform/qt/TemporaryLinkStubs.cpp:
2543 (WebCore::ScrollBar::setProportion):
2544 (WebCore::PlatformScrollBar::updateThumbPosition):
2545 (WebCore::PlatformScrollBar::updateThumbProportion):
2547 2006-09-24 Nikolas Zimmermann <zimmermann@kde.org>
2549 Reviewed by eseidel.
2551 Qt/Linux build system changes: enable xpath/xslt by default.
2552 Offer possibility to change all of these using 'ccmake'.
2556 2006-09-24 Dave Hyatt <hyatt@apple.com>
2558 Cleanup of Scrollbar APIs. Rename setKnobProportion to setProportion. Rename setScrollbarValue to updateThumbPosition.
2559 Give setProportion a base class implementation and implement it using the same pattern as setValue/updateThumbPosition (so that
2560 the base calls a protected virtual function, updateThumbProportion, implemented by the derived class to update the actual scrollbar itself).
2562 * platform/ScrollBar.cpp:
2563 (WebCore::ScrollBar::setValue):
2564 (WebCore::ScrollBar::setProportion):
2565 * platform/ScrollBar.h:
2566 (WebCore::ScrollBar::value):
2567 * platform/mac/PlatformScrollBar.h:
2568 * platform/mac/PlatformScrollBarMac.mm:
2569 (WebCore::PlatformScrollBar::updateThumbPosition):
2570 (WebCore::PlatformScrollBar::updateThumbProportion):
2571 * platform/win/PlatformScrollBar.h:
2572 * platform/win/TemporaryLinkStubs.cpp:
2573 (PlatformScrollBar::updateThumbPosition):
2574 (PlatformScrollBar::updateThumbProportion):
2575 * rendering/RenderLayer.cpp:
2576 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
2578 2006-09-23 Alexey Proskuryakov <ap@nypop.com>
2582 http://bugs.webkit.org/show_bug.cgi?id=4872
2583 XMLHttpRequest fails to throw an exception when there is a security violation
2584 (mismatching domains)
2586 Raise an exception if there is a security violation, and also in cases required by
2587 the current draft of XHR specification.
2589 * bindings/js/JSXMLHttpRequest.cpp:
2590 (KJS::JSXMLHttpRequest::getValueProperty): Raise an exception if a DOM method reports one.
2591 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction): Raise an exception if a DOM method
2592 reports one, and also if there were too few arguments passed.
2594 * bindings/js/kjs_binding.cpp:
2595 (KJS::setDOMException): Added support for custom XHR exceptions.
2597 * xml/xmlhttprequest.h: Changed state names to match the current spec. Defined an
2598 exception code range for XHR exceptions.
2600 * xml/xmlhttprequest.cpp:
2601 (WebCore::XMLHttpRequest::open): Removed a check for m_aborted that could never succeed.
2602 (WebCore::XMLHttpRequest::send):
2603 (WebCore::XMLHttpRequest::setRequestHeader):
2604 (WebCore::XMLHttpRequest::getStatus):
2605 (WebCore::XMLHttpRequest::getStatusText):
2606 (WebCore::XMLHttpRequest::processSyncLoadResults):
2607 (WebCore::XMLHttpRequest::receivedAllData):
2608 (WebCore::XMLHttpRequest::receivedData):
2610 2006-09-22 Steve Falkenburg <sfalken@apple.com>
2612 Reviewed by Jeff Jenkins.
2616 * platform/cf/ResourceLoaderCFNet.cpp:
2617 (WebCore::willCacheResponse):
2619 2006-09-22 Justin Garcia <justin.garcia@apple.com>
2623 <http://bugs.webkit.org/show_bug.cgi?id=8029>
2624 Rename Node::isAncestor and RenderObject::hasAncestor to isDescendantOf
2627 (WebCore::Document::clearSelectionIfNeeded):
2629 (WebCore::Element::contains):
2631 (WebCore::Node::traverseNextNode):
2632 (WebCore::Node::traverseNextSibling):
2633 (WebCore::Node::traversePreviousNodePostOrder):
2634 (WebCore::Node::checkAddChild):
2635 (WebCore::Node::isDescendantOf):
2637 * dom/NodeIterator.cpp:
2638 (WebCore::NodeIterator::notifyBeforeNodeRemoval):
2639 * editing/ApplyStyleCommand.cpp:
2640 (WebCore::ApplyStyleCommand::applyBlockStyle):
2641 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
2642 (WebCore::ApplyStyleCommand::applyInlineStyle):
2643 (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAroundNode):
2644 * editing/CompositeEditCommand.cpp:
2645 (WebCore::CompositeEditCommand::mergeIdenticalElements):
2646 (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
2647 * editing/DeleteSelectionCommand.cpp:
2648 (WebCore::updatePositionForNodeRemoval):
2649 (WebCore::DeleteSelectionCommand::handleGeneralDelete):
2650 (WebCore::DeleteSelectionCommand::mergeParagraphs):
2651 * editing/FormatBlockCommand.cpp:
2652 (WebCore::FormatBlockCommand::doApply):
2653 * editing/IndentOutdentCommand.cpp:
2654 (WebCore::enclosingListOrBlockquote):
2655 * editing/Selection.cpp:
2656 (WebCore::Selection::validate):
2657 * editing/SelectionController.cpp:
2658 (WebCore::SelectionController::nodeWillBeRemoved):
2659 * editing/TextIterator.cpp:
2660 (WebCore::SimplifiedBackwardsTextIterator::advance):
2661 * editing/VisiblePosition.cpp:
2662 (WebCore::VisiblePosition::next):
2663 (WebCore::VisiblePosition::previous):
2664 (WebCore::VisiblePosition::canonicalPosition):
2665 (WebCore::isFirstVisiblePositionInNode):
2666 (WebCore::isLastVisiblePositionInNode):
2667 * editing/htmlediting.cpp:
2668 (WebCore::firstEditablePositionAfterPositionInRoot):
2669 (WebCore::lastEditablePositionBeforePositionInRoot):
2670 (WebCore::enclosingNodeWithTag):
2671 (WebCore::enclosingList):
2672 (WebCore::enclosingListChild):
2673 * editing/markup.cpp:
2674 (WebCore::createMarkup):
2676 2006-09-22 Timothy Hatcher <timothy@apple.com>
2680 - Added @property syntax to non-generated headers
2681 inside #ifndef BUILDING_ON_TIGER.
2682 - Changed the DOMEventTarget protocol to have have new versions
2683 of addEventListener and removeEventListener with named parameters.
2684 These old style methods can be removed once Mail changes to use
2685 the new methods <rdar://problem/4746649>.
2687 * WebCorePrefix.h: define BUILDING_ON_TIGER when Tiger is the target
2688 * bindings/objc/DOM.mm:
2689 (-[DOMNode addEventListener:listener:useCapture:]):
2690 (-[DOMNode addEventListener:::]): call the new method
2691 (-[DOMNode removeEventListener:listener:useCapture:]):
2692 (-[DOMNode removeEventListener:::]): call the new method
2693 * bindings/objc/DOMAbstractView.h:
2694 * bindings/objc/DOMEventTarget.h:
2695 * bindings/objc/DOMHTMLAppletElement.h:
2696 * bindings/objc/DOMHTMLEmbedElement.h:
2697 * bindings/objc/DOMHTMLOptionElement.h:
2698 * bindings/objc/DOMObject.h:
2699 * bindings/objc/DOMRGBColor.h:
2701 2006-09-22 Nikolas Zimmermann <zimmermann@kde.org>
2705 Fix Qt/Linux build and a really stupid mixup in GraphicsContextQt.
2707 * platform/qt/FrameQt.cpp:
2708 * platform/qt/GraphicsContextQt.cpp:
2709 (WebCore::GraphicsContext::translate): Make it actually translate, not scale! :-)
2710 (WebCore::GraphicsContext::origin):
2711 * platform/qt/PlatformScrollBar.h: Added.
2712 (WebCore::PlatformScrollBar::isWidget):
2713 * platform/qt/WidgetQt.cpp:
2714 (WebCore::Widget::invalidate):
2715 (WebCore::Widget::invalidateRect):
2717 2006-09-22 Dave Hyatt <hyatt@apple.com>
2719 Super-minor tweaks to the systemFont function on Mac.
2720 Set the generic family to None rather than to Serif, and
2721 don't waste time setting the computed size, since that is
2722 set from the specified size over in CSSStyleSelector anyway.
2724 * rendering/RenderThemeMac.mm:
2725 (WebCore::RenderThemeMac::systemFont):
2727 2006-09-22 Timothy Hatcher <timothy@apple.com>
2731 Build fix for Xcode 2.3. Convert GraphicsContext::translate() to
2732 take floats. There was already an implicit conversion to float/double
2733 when calling CGContextTranslateCTM or cairo_translate.
2735 * platform/GraphicsContext.h:
2736 * platform/cairo/GraphicsContextCairo.cpp:
2737 (WebCore::GraphicsContext::translate):
2738 * platform/cg/GraphicsContextCG.cpp:
2739 (WebCore::GraphicsContext::translate):
2741 2006-09-22 Brady Eidson <beidson@apple.com>
2745 Add redirect and other cleanup to ResourceLoaderWin.cpp
2746 Fixes bug http://bugs.webkit.org/show_bug.cgi?id=10927
2747 Fixes bug http://bugs.webkit.org/show_bug.cgi?id=10744
2749 * WebCore.xcodeproj/project.pbxproj:
2750 * platform/ResourceLoader.h:
2751 * platform/win/ResourceLoaderWin.cpp:
2752 (WebCore::ResourceLoaderWndProc):
2753 (WebCore::initializeOffScreenResourceLoaderWindow):
2754 (WebCore::ResourceLoader::onHandleCreated):
2755 (WebCore::ResourceLoader::onRequestRedirected):
2756 (WebCore::ResourceLoader::onRequestComplete):
2757 (WebCore::transferJobStatusCallback):
2759 2006-09-22 Alexey Proskuryakov <ap@nypop.com>
2763 http://bugs.webkit.org/show_bug.cgi?id=10803
2764 REGRESSION (r15536-r15544): manual-tests/bugzilla-6821.html failing
2766 * page/FrameView.cpp:
2767 (WebCore::FrameView::hoverTimerFired): Use the current event.
2769 2006-09-22 Nikolas Zimmermann <zimmermann@kde.org>
2773 Fix (last) svg memory leak.
2775 * ksvg2/svg/SVGTransformable.cpp: delete 't' in error case.
2776 (SVGTransformable::parseTransformAttribute):
2778 2006-09-22 Eric Seidel <eric@eseidel.com>
2780 No review necessary, just removing a dead file.
2782 Remove unused file (added previously by mistake) to make room for real implementation.
2784 * platform/mac/BitmapImageMac.mm: Removed.
2786 2006-09-22 Dave Hyatt <hyatt@apple.com>
2788 Move PlatformScrollBar.h down into the platforms.
2790 Reviewed by andersca
2792 * platform/PlatformScrollBar.h: Removed.
2793 * platform/win/PlatformScrollBar.h: Added.
2794 * platform/mac/PlatformScrollBar.h: Added.
2796 2006-09-22 Dave Hyatt <hyatt@apple.com>
2798 Add support for invalidation of widgets. This will be needed for the Win32 widget subsystem (and for
2799 any widget subsystems that don't have any underlying native objects backing the widgets.
2803 * platform/Widget.h:
2804 * platform/mac/WidgetMac.mm:
2805 (WebCore::Widget::invalidate):
2806 (WebCore::Widget::invalidateRect):
2807 * platform/win/TemporaryLinkStubs.cpp:
2808 (Widget::invalidate):
2809 (Widget::invalidateRect):
2811 2006-09-22 Rob Buis <buis@kd.org>
2813 Reviewed by eseidel.
2815 http://bugs.webkit.org/show_bug.cgi?id=10901
2816 Merge build fixes from unity
2820 2006-09-21 Nikolas Zimmermann <zimmermann@kde.org>
2822 Reviewed by eseidel.
2824 http://bugs.webkit.org/show_bug.cgi?id=10977
2825 SVGDocument does not expose 'rootElement' property
2827 Enable 'rootElement' property.
2829 * ksvg2/svg/SVGDocument.idl:
2831 2006-09-21 Steve Falkenburg <sfalken@apple.com>
2835 * platform/ResourceLoaderInternal.h:
2837 2006-09-21 Geoffrey Garen <ggaren@apple.com>
2839 build fixed. band happy.
2841 * platform/cg/GraphicsContextCG.cpp:
2842 (WebCore::GraphicsContext::translate):
2843 * platform/mac/WidgetMac.mm:
2845 2006-09-21 Geoffrey Garen <ggaren@apple.com>
2849 Some Widget refactoring.
2851 * WebCore.vcproj/WebCore/WebCore.vcproj:
2852 * bridge/mac/FrameMac.mm:
2853 * bridge/win/FrameWin.cpp:
2854 (WebCore::FrameWin::runJavaScriptAlert):
2855 (WebCore::FrameWin::runJavaScriptConfirm):
2856 * bridge/win/PageWin.cpp:
2857 (WebCore::Page::Page):
2858 (WebCore::rootWindowForFrame):
2859 * html/CanvasRenderingContext2D.cpp:
2860 (WebCore::CanvasRenderingContext2D::translate):
2861 * page/FrameView.cpp:
2862 (WebCore::FrameView::isFrameView):
2864 (WebCore::Page::setInstanceHandle):
2865 (WebCore::Page::instanceHandle):
2866 * platform/GraphicsContext.h:
2867 * platform/ScrollView.h:
2868 * platform/Widget.h:
2869 * platform/cairo/GraphicsContextCairo.cpp:
2870 (WebCore::GraphicsContext::translate):
2871 (WebCore::GraphicsContext::origin):
2872 * platform/mac/WidgetMac.mm:
2873 (WebCore::Widget::clearFocus):
2874 * platform/win/ResourceLoaderWin.cpp:
2875 (WebCore::initializeOffScreenResourceLoaderWindow):
2876 * platform/win/ScreenWin.cpp:
2877 (WebCore::monitorInfo):
2878 * platform/win/ScrollViewWin.cpp:
2879 (WebCore::ScrollView::updateContents):
2880 (WebCore::ScrollView::visibleWidth):
2881 (WebCore::ScrollView::visibleHeight):
2882 (WebCore::ScrollView::visibleContentRect):
2883 (WebCore::ScrollView::viewportToContents):
2884 (WebCore::ScrollView::contentsToViewport):
2885 (WebCore::ScrollView::scrollBy):
2886 (WebCore::ScrollView::updateScrollInfo):
2887 (WebCore::ScrollView::updateScrollBars):
2888 * platform/win/SharedTimerWin.cpp:
2889 (WebCore::initializeOffScreenTimerWindow):
2890 * platform/win/TemporaryLinkStubs.cpp:
2891 (FrameView::updateBorder):
2892 (ScrollView::paint):
2893 (GraphicsContext::clip):
2894 * platform/win/WidgetWin.cpp:
2895 (WebCore::Widget::Widget):
2896 (WebCore::Widget::parentWindow):
2897 (WebCore::Widget::setParentWindow):
2898 (WebCore::Widget::frameGeometry):
2899 (WebCore::Widget::hasFocus):
2900 (WebCore::Widget::setFocus):
2901 (WebCore::Widget::show):
2902 (WebCore::Widget::hide):
2903 (WebCore::Widget::setFrameGeometry):
2905 2006-09-22 Anders Carlsson <acarlsson@apple.com>
2909 * platform/TextEncoding.cpp:
2910 (WebCore::TextEncoding::backslashAsCurrencySymbol):
2911 Add comment clarifying why backslashAsCurrencySymbol is needed.
2913 2006-09-21 Sean Gies <seangies@apple.com>
2915 Reviewed by Adam Roben.
2917 Add utility functions to get and release HDC from GraphicsContext.
2919 * platform/GraphicsContext.h: Add utilities to get and release HDC.
2920 * platform/cairo/GraphicsContextCairo.cpp: Implement new utilities.
2921 * rendering/RenderThemeWin.cpp: Switch to new utilities.
2923 2006-09-21 Justin Garcia <justin.garcia@apple.com>
2927 <rdar://problem/4426622>
2928 Plain text paste slow. Time spent mostly in WebCore::rebalanceWhitespaceInTextNode(...)
2930 * editing/htmlediting.cpp:
2931 (WebCore::rebalanceWhitespaceInTextNode): We no longer need to use a RegExp replace because we
2932 aren't producing complicated sequences here. Use multiple UChar -> UChar replaces instead for speed.
2933 Got rid of uses of DepricatedString.
2935 2006-09-21 Nikolas Zimmermann <zimmermann@kde.org>
2937 Reviewed by eseidel.
2939 Don't crash if no IconDatabase is available (ie. on Qt/Gdk)
2942 (WebCore::Frame::endIfNotLoading):
2944 2006-09-21 Nikolas Zimmermann <zimmermann@kde.org>
2946 Reviewed by eseidel.
2951 * kcanvas/device/qt/KCanvasClipperQt.h:
2952 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
2953 * platform/qt/FrameQt.cpp:
2954 (WebCore::FrameQt::isLoadTypeReload):
2955 (WebCore::FrameQt::originalRequestURL):
2956 * platform/qt/FrameQt.h:
2957 * platform/qt/GraphicsContextQt.cpp:
2958 (WebCore::GraphicsContext::concatCTM):
2959 * platform/qt/ScrollViewQt.cpp:
2960 (WebCore::ScrollView::wheelEvent):
2961 * platform/qt/TemporaryLinkStubs.cpp:
2962 (WebCore::IconDatabase::setIconURLForPageURL):
2964 2006-09-20 Justin Garcia <justin.garcia@apple.com>
2968 <http://bugs.webkit.org/show_bug.cgi?id=7165>
2969 TinyMCE: Dragging & dropping content always leaves a copy when editing inside a subframe
2971 * editing/MoveSelectionCommand.cpp:
2972 (WebCore::MoveSelectionCommand::MoveSelectionCommand): Set the document
2973 to the position-to-move-to's document, not the fragment's document. The
2974 fragment's document is the document used to create the fragment and is irrelavant.
2976 === Safari-521.27 ===
2978 2006-09-21 Brady Eidson <beidson@apple.com>
2982 When your assumption is "IconDatabase::sharedIconDatabase()" will never fail but it does, you're in trouble
2983 This fixes Spinneret so it won't crash on its first load!
2986 (WebCore::Frame::endIfNotLoading):
2988 2006-09-21 Brady Eidson <beidson@apple.com>
2992 * platform/win/TemporaryLinkStubs.cpp:
2993 (ScrollView::wheelEvent):
2995 2006-09-20 Rob Buis <buis@kde.org>
2997 Reviewed by eseidel.
2999 http://bugs.webkit.org/show_bug.cgi?id=10946
3000 new marker code draws end-marker in wrong place
3002 Keep track of the start of the subpath so we can handle
3003 closeTo/moveTo correctly.
3005 * kcanvas/RenderPath.cpp:
3006 (WebCore::DrawMarkersData::DrawMarkersData):
3007 (WebCore::updateMarkerDataForElement):
3009 2006-09-21 David Hyatt <hyatt@apple.com>
3011 Wheel scrolling prep for Win32.
3013 WARNING: NO TEST CASES ADDED OR CHANGED
3015 * platform/PlatformWheelEvent.h:
3016 * platform/ScrollBar.h:
3017 * platform/ScrollView.h:
3018 * platform/mac/ScrollViewMac.mm:
3019 (WebCore::ScrollView::wheelEvent):
3020 * rendering/RenderLayer.cpp:
3022 2006-09-20 Timothy Hatcher <timothy@apple.com>
3026 Bug 10917: REGRESSION (r16027): iFrame transparency broken
3027 http://bugs.webkit.org/show_bug.cgi?id=10917
3029 Don't paint the base background color if we transparent.
3031 * rendering/RenderBox.cpp:
3032 (WebCore::RenderBox::paintBackgroundExtended):
3034 2006-09-20 Adam Roben <aroben@apple.com>
3036 Reviewed by andersca.
3038 * platform/FileChooser.h: Remove no-longer-necessary namespace std
3040 2006-09-20 Eric Seidel <eric@eseidel.com>
3044 Cleanup style in KCanvas.
3045 Remove extra white-space, unneeded arguments, etc.
3047 * WebCore.xcodeproj/project.pbxproj:
3048 * kcanvas/KCanvasClipper.cpp:
3049 (WebCore::operator<<):
3050 (WebCore::KCanvasClipper::externalRepresentation):
3051 * kcanvas/KCanvasClipper.h:
3052 * kcanvas/KCanvasFilters.cpp:
3053 (WebCore::KCanvasFilter::externalRepresentation):
3054 (WebCore::operator<<):
3055 (WebCore::KCanvasFilterEffect::externalRepresentation):
3056 (WebCore::KCPointLightSource::externalRepresentation):
3057 (WebCore::KCSpotLightSource::externalRepresentation):
3058 (WebCore::KCDistantLightSource::externalRepresentation):
3059 (WebCore::KCanvasFEBlend::externalRepresentation):
3060 (WebCore::KCanvasFEColorMatrix::externalRepresentation):
3061 (WebCore::KCanvasFEComponentTransfer::externalRepresentation):
3062 (WebCore::KCanvasFEComposite::externalRepresentation):
3063 (WebCore::KCanvasFEConvolveMatrix::externalRepresentation):
3064 (WebCore::KCanvasFEDiffuseLighting::externalRepresentation):
3065 (WebCore::KCanvasFEDisplacementMap::externalRepresentation):
3066 (WebCore::KCanvasFEFlood::externalRepresentation):
3067 (WebCore::KCanvasFEGaussianBlur::externalRepresentation):
3068 (WebCore::KCanvasFEImage::externalRepresentation):
3069 (WebCore::KCanvasFEMerge::externalRepresentation):
3070 (WebCore::KCanvasFEMorphology::externalRepresentation):
3071 (WebCore::KCanvasFEOffset::externalRepresentation):
3072 (WebCore::KCanvasFESpecularLighting::externalRepresentation):
3073 (WebCore::KCanvasFETile::externalRepresentation):
3074 (WebCore::KCanvasFETurbulence::externalRepresentation):
3075 * kcanvas/KCanvasFilters.h:
3076 (WebCore::KCanvasFEDiffuseLighting::lightSource):
3077 (WebCore::KCanvasFESpecularLighting::lightSource):
3078 * kcanvas/KCanvasImage.h:
3079 * kcanvas/KCanvasMarker.cpp:
3080 (WebCore::KCanvasMarker::externalRepresentation):
3081 * kcanvas/KCanvasMarker.h:
3082 * kcanvas/KCanvasResource.cpp:
3083 (WebCore::operator<<):
3084 * kcanvas/KCanvasResource.h:
3085 * kcanvas/KCanvasTreeDebug.cpp:
3086 (WebCore::operator<<):
3087 (WebCore::writeIndent):
3088 (WebCore::writeStyle):
3090 (WebCore::writeRenderResources):
3091 * kcanvas/KCanvasTreeDebug.h:
3092 (WebCore::operator<<):
3093 * kcanvas/RenderForeignObject.cpp:
3094 (WebCore::RenderForeignObject::paint):
3095 * kcanvas/RenderPath.cpp:
3096 (WebCore::RenderPath::paint):
3097 (WebCore::drawStartAndMidMarkers):
3098 * kcanvas/RenderSVGContainer.cpp:
3099 (WebCore::RenderSVGContainer::paint):
3100 * kcanvas/RenderSVGImage.cpp:
3101 (WebCore::RenderSVGImage::translateForAttributes):
3102 * kcanvas/RenderSVGImage.h:
3103 * kcanvas/device/KRenderingDevice.cpp:
3104 (WebCore::KRenderingDevice::currentContext):
3105 (WebCore::KRenderingDevice::popContext):
3106 (WebCore::KRenderingDevice::pushContext):
3107 * kcanvas/device/KRenderingDevice.h:
3108 * kcanvas/device/KRenderingFillPainter.h:
3109 * kcanvas/device/KRenderingPaintServer.h:
3110 (WebCore::KRenderingPaintServer::KRenderingPaintServer):
3111 (WebCore::KRenderingPaintServer::activeClient):
3112 (WebCore::KRenderingPaintServer::setActiveClient):
3113 * kcanvas/device/KRenderingPaintServerGradient.cpp:
3114 (WebCore::operator<<):
3115 (WebCore::KRenderingPaintServerGradient::externalRepresentation):
3116 (WebCore::KRenderingPaintServerLinearGradient::externalRepresentation):
3117 (WebCore::KRenderingPaintServerGradient::listener):
3118 (WebCore::KRenderingPaintServerGradient::setListener):
3119 (WebCore::KRenderingPaintServerRadialGradient::externalRepresentation):
3120 * kcanvas/device/KRenderingPaintServerGradient.h:
3121 * kcanvas/device/KRenderingPaintServerPattern.cpp:
3122 (WebCore::KRenderingPaintServerPattern::tile):
3123 (WebCore::KRenderingPaintServerPattern::setTile):
3124 (WebCore::KRenderingPaintServerPattern::listener):
3125 (WebCore::KRenderingPaintServerPattern::setListener):
3126 (WebCore::KRenderingPaintServerPattern::externalRepresentation):
3127 * kcanvas/device/KRenderingPaintServerPattern.h:
3128 * kcanvas/device/KRenderingPaintServerSolid.cpp:
3129 (WebCore::KRenderingPaintServerSolid::externalRepresentation):
3130 * kcanvas/device/KRenderingPaintServerSolid.h:
3131 * kcanvas/device/KRenderingStrokePainter.cpp:
3132 (WebCore::KRenderingStrokePainter::strokeMiterLimit):
3133 (WebCore::KRenderingStrokePainter::setStrokeMiterLimit):
3134 * kcanvas/device/KRenderingStrokePainter.h:
3135 * kcanvas/device/quartz/KCanvasFilterQuartz.h:
3136 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
3137 (WebCore::KCanvasFilterQuartz::prepareFilter):
3138 * kcanvas/device/quartz/KCanvasItemQuartz.h: Removed.
3139 * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
3140 (WebCore::KCanvasMaskerQuartz::applyMask):
3141 * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
3142 (WebCore::KCanvasImageQuartz::init):
3143 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
3144 (WebCore::KCanvasClipperQuartz::applyClip):
3145 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
3146 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
3147 (WebCore::KRenderingDeviceQuartz::quartzContext):
3148 (WebCore::KRenderingDeviceQuartz::contextForImage):
3149 (WebCore::KRenderingDeviceQuartz::createPaintServer):
3150 (WebCore::KRenderingDeviceQuartz::createResource):
3151 (WebCore::KRenderingDeviceQuartz::createFilterEffect):
3152 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
3153 (WebCore::CGShadingRefForLinearGradient):
3154 (WebCore::CGShadingRefForRadialGradient):
3155 (WebCore::KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
3156 (WebCore::KRenderingPaintServerGradientQuartz::teardown):
3157 * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
3158 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
3159 (WebCore::KRenderingPaintServerQuartzHelper::strokePath):
3160 (WebCore::KRenderingPaintServerQuartzHelper::clipToStrokePath):
3161 (WebCore::KRenderingPaintServerQuartzHelper::fillPath):
3162 (WebCore::KRenderingPaintServerQuartzHelper::clipToFillPath):
3163 (WebCore::KRenderingPaintServerSolidQuartz::draw):
3164 (WebCore::KRenderingPaintServerSolidQuartz::setup):
3165 (WebCore::KRenderingPaintServerSolidQuartz::renderPath):
3166 (WebCore::KRenderingPaintServerPatternQuartz::setup):
3167 (WebCore::KRenderingPaintServerPatternQuartz::renderPath):
3168 (WebCore::KRenderingPaintServerPatternQuartz::teardown):
3169 * kcanvas/device/quartz/QuartzSupport.h:
3170 * kcanvas/device/quartz/QuartzSupport.mm:
3171 (WebCore::applyStrokeStyleToContext):
3173 2006-09-20 Anders Carlsson <acarlsson@apple.com>
3175 Reviewed by Dave Hyatt.
3177 * dom/WheelEvent.cpp:
3178 (WebCore::WheelEvent::WheelEvent):
3179 Use lroundf instead of lround since deltas are floats.
3181 2006-09-20 Julien Palmas <julien.palmas@gmail.com>
3183 Reviewed by eseidel. Landed by eseidel.
3185 Test: svg/custom/pattern-y-offset.svg
3187 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
3188 (WebCore::KRenderingPaintServerPatternQuartz::setup):
3190 2006-09-20 David Hyatt <hyatt@apple.com>
3192 Add a new wheelEvent method to ScrollView. Platforms that wish
3193 to handle the wheel event for the scroll view themselves can then
3194 do so there. (Mac lets the underlying NSScrollView do it for now.)
3196 * page/FrameView.cpp:
3197 (WebCore::FrameView::handleWheelEvent):
3198 * platform/ScrollView.h:
3199 (WebCore::ScrollView::wheelEvent):
3201 2006-09-20 Brady Eidson <beidson@apple.com>
3203 Reviewed by Tim Omernick
3205 Part of fixing a crash Tim O showed me that I missed in a release build.
3206 WebKit should be able to call through the bridge to WebCore no matter what -
3207 Replace the _iconDB member with calls to IconDatabase::sharedIconDatabase()
3209 * bridge/mac/WebCoreIconDatabaseBridge.h:
3210 * bridge/mac/WebCoreIconDatabaseBridge.mm:
3211 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
3212 (-[WebCoreIconDatabaseBridge isOpen]):
3213 (-[WebCoreIconDatabaseBridge removeAllIcons]):
3214 (-[WebCoreIconDatabaseBridge _isEmpty]):
3215 (-[WebCoreIconDatabaseBridge isIconExpiredForIconURL:]):
3216 (-[WebCoreIconDatabaseBridge setPrivateBrowsingEnabled:]):
3217 (-[WebCoreIconDatabaseBridge privateBrowsingEnabled]):
3218 (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
3219 (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
3220 (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
3221 (-[WebCoreIconDatabaseBridge retainIconForURL:]):
3222 (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
3223 (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
3224 (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
3225 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
3226 (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]):
3227 (-[WebCoreIconDatabaseBridge _setEnabled:]):
3228 (-[WebCoreIconDatabaseBridge _isEnabled]):
3230 2006-09-20 Anders Carlsson <acarlsson@apple.com>
3234 Add String::split which returns a Vector of Strings and use it instead of
3235 DeprecatedStringList.
3237 * bindings/js/kjs_events.cpp:
3238 (KJS::Clipboard::getValueProperty):
3239 * bindings/js/kjs_window.cpp:
3240 (KJS::parseModalDialogFeatures):
3241 * css/MediaList.cpp:
3242 (WebCore::MediaList::setMediaText):
3244 * html/HTMLFormElement.cpp:
3245 (WebCore::HTMLFormElement::formData):
3246 * html/HTMLLinkElement.cpp:
3247 (WebCore::HTMLLinkElement::tokenizeRelAttribute):
3248 * platform/PlatformString.h:
3249 * platform/String.cpp:
3250 (WebCore::String::split):
3251 * platform/StringImpl.cpp:
3252 * platform/StringImpl.h:
3253 * platform/mac/ClipboardMac.h:
3254 * platform/mac/ClipboardMac.mm:
3255 (WebCore::ClipboardMac::types):
3257 2006-09-20 Justin Garcia <justin.garcia@apple.com>
3259 Reviewed by harrison
3261 * css/cssstyleselector.cpp:
3262 (WebCore::CSSStyleSelector::adjustRenderStyle): Don't call
3263 HTMLElement::isContentEditable just to check the Frame's editability, since
3264 it calls updateRenderering, which can get us into infinite recursion.
3266 2006-09-20 Brady Eidson <beidson@apple.com>
3270 Cleaned up my last patch alot, and made the WebCore icon database disabled by default
3272 * loader/icon/IconDatabase.cpp:
3273 (WebCore::IconDatabase::IconDatabase): Disabled by default
3274 (WebCore::IconDatabase::removeAllIcons): Respect just isOpen() (disabled database will always be closed)
3275 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ditto
3276 (WebCore::IconDatabase::iconForPageURL): Ditto
3277 (WebCore::IconDatabase::isIconExpiredForIconURL): Ditto
3278 (WebCore::IconDatabase::iconURLForPageURL): Ditto
3279 (WebCore::IconDatabase::retainIconForPageURL): Ditto
3280 (WebCore::IconDatabase::releaseIconForPageURL): Ditto
3281 (WebCore::IconDatabase::setIconDataForIconURL): Ditto
3282 (WebCore::IconDatabase::setIconURLForPageURL): Ditto
3283 (WebCore::IconDatabase::hasEntryForIconURL): Ditto
3284 (WebCore::IconDatabase::setEnabled): Fixed a big bug here!
3286 2006-09-20 Adam Roben <aroben@apple.com>
3290 Fixes http://bugs.webkit.org/show_bug.cgi?id=10935
3291 REGRESSION: file upload control with direction:rtl or text-align:right
3292 draws button on top of filename/icon
3294 * rendering/RenderFileUploadControl.cpp:
3295 (WebCore::RenderFileUploadControl::setStyle): Force text-align to
3297 (WebCore::RenderFileUploadControl::paintObject): Fix positioning of
3298 the filename and icon in RTL
3300 2006-09-20 Alice Liu <alice.liu@apple.com>
3302 Reviewed by Adam Roben.
3306 * dom/WheelEvent.cpp:
3307 (WebCore::WheelEvent::WheelEvent):
3308 changed lrint to lround
3310 2006-09-20 Sam Weinig <sam.weinig@gmail.com>
3312 Build Fix. Adds isHorizontal attribute back to WheelEvent
3313 for the Objective-C bindings. If it is found that isHorizontal
3314 is not used, we should remove it again but also remove it's
3315 declaration from PublicDOMInterfaces.h
3318 (WebCore::WheelEvent::isHorizontal):
3319 * dom/WheelEvent.idl:
3321 2006-09-20 David Hyatt <hyatt@apple.com>
3323 Fix for 10945, WheelEvent should support two dimensions at once, since
3324 MacBooks allow for diagonal scrolling. Also enhance the PlatformWheelEvent
3325 to allow for diagonal scrolling.
3329 * dom/EventTargetNode.cpp:
3330 (WebCore::EventTargetNode::dispatchWheelEvent):
3331 * dom/WheelEvent.cpp:
3332 (WebCore::WheelEvent::WheelEvent):
3333 (WebCore::WheelEvent::initWheelEvent):
3335 (WebCore::WheelEvent::wheelDelta):
3336 (WebCore::WheelEvent::wheelDeltaX):
3337 (WebCore::WheelEvent::wheelDeltaY):
3338 * dom/WheelEvent.idl:
3339 * page/FrameView.cpp:
3340 (WebCore::FrameView::handleWheelEvent):
3341 * platform/PlatformWheelEvent.h:
3342 (WebCore::PlatformWheelEvent::deltaX):
3343 (WebCore::PlatformWheelEvent::deltaY):
3344 (WebCore::PlatformWheelEvent::normalize):
3345 * platform/mac/WheelEventMac.mm:
3346 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3348 2006-09-19 Eric Seidel <eric@eseidel.com>
3352 Split KCanvasResources.* into multiple files (and some other minor spacing changes).
3354 No tests were harmed in the making of this patch.
3356 * WebCore.xcodeproj/project.pbxproj:
3357 * kcanvas/KCanvasClipper.cpp: Added.
3358 (WebCore::operator<<):
3359 * kcanvas/KCanvasClipper.h: Added.
3360 * kcanvas/KCanvasFilters.h:
3361 * kcanvas/KCanvasImage.h:
3362 * kcanvas/KCanvasMarker.cpp: Added.
3363 * kcanvas/KCanvasMarker.h: Added.
3364 * kcanvas/KCanvasMasker.cpp: Added.
3365 (WebCore::KCanvasMasker::KCanvasMasker):
3366 (WebCore::KCanvasMasker::setMask):
3367 (WebCore::KCanvasMasker::externalRepresentation):
3368 (WebCore::getMaskerById):
3369 * kcanvas/KCanvasMasker.h: Added.
3370 * kcanvas/KCanvasResource.cpp: Added.
3371 (WebCore::KCanvasResource::invalidate):
3372 (WebCore::KCanvasResource::externalRepresentation):
3373 (WebCore::getResourceById):
3374 (WebCore::getPaintServerById):
3375 * kcanvas/KCanvasResource.h: Added.
3376 * kcanvas/KCanvasResources.cpp: Removed.
3377 * kcanvas/KCanvasResources.h: Removed.
3378 * kcanvas/RenderPath.cpp:
3379 * kcanvas/RenderSVGContainer.cpp:
3380 * kcanvas/RenderSVGImage.cpp:
3381 * kcanvas/RenderSVGText.cpp:
3382 * kcanvas/device/KRenderingPaintServer.h:
3383 * kcanvas/device/quartz/KCanvasMaskerQuartz.h:
3384 * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
3385 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
3386 * ksvg2/svg/SVGClipPathElement.h:
3387 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
3388 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
3389 * ksvg2/svg/SVGFECompositeElement.cpp:
3390 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
3391 * ksvg2/svg/SVGFELightElement.cpp:
3392 * ksvg2/svg/SVGFEOffsetElement.cpp:
3393 * ksvg2/svg/SVGFETurbulenceElement.cpp:
3394 * ksvg2/svg/SVGFilterElement.cpp:
3395 * ksvg2/svg/SVGLinearGradientElement.cpp:
3396 * ksvg2/svg/SVGMarkerElement.h:
3397 * ksvg2/svg/SVGMaskElement.h:
3399 2006-09-19 Brady Eidson <beidson@apple.com>
3401 Reviewed by Sarge Decker
3403 <rdar://problem/4739892> and <rdar://problem/4729797>
3404 - WebCore::IconDatabase needs to have and respect an enabled() flag
3405 - Mail on ToT WebKit crashes in IconDatabase code when mailing a page from Safari
3407 * bridge/mac/WebCoreIconDatabaseBridge.h:
3408 * bridge/mac/WebCoreIconDatabaseBridge.mm:
3409 (-[WebCoreIconDatabaseBridge _setEnabled:]): Added
3410 (-[WebCoreIconDatabaseBridge _isEnabled]): Added
3411 * loader/icon/IconDatabase.cpp:
3412 (WebCore::IconDatabase::IconDatabase):
3413 (WebCore::IconDatabase::open): Don't open if disabled
3414 (WebCore::IconDatabase::removeAllIcons): Ignore if disabled/closed
3415 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ignore if disabled/closed
3416 (WebCore::IconDatabase::iconForPageURL): Default Icon if disabled/closed
3417 (WebCore::IconDatabase::isIconExpiredForIconURL): Default return if disabled/closed
3418 (WebCore::IconDatabase::iconURLForPageURL): Default return if disabled/closed
3419 (WebCore::IconDatabase::retainIconForPageURL): Ignore if disabled/closed
3420 (WebCore::IconDatabase::releaseIconForPageURL): Ignore if disabled/closed
3421 (WebCore::IconDatabase::releaseIconURL):
3422 (WebCore::IconDatabase::setIconDataForIconURL): Ignore if disabled/closed
3423 (WebCore::IconDatabase::setIconURLForPageURL): Ignore if disabled/closed
3424 (WebCore::IconDatabase::hasEntryForIconURL): Default return if disabled/closed
3425 (WebCore::IconDatabase::setEnabled): Added
3426 * loader/icon/IconDatabase.h:
3427 (WebCore::IconDatabase::enabled): Added
3429 (WebCore::Frame::endIfNotLoading): do an IconDatabase::enabled() check before bothering to load the icon
3430 * platform/mac/ResourceLoaderMac.mm: Removed extraneous #include
3432 2006-09-20 David Hyatt <hyatt@apple.com>
3434 Massage mouse wheel handling so that it is more cross-platform. Make
3435 all the work happen in handleWheelEvent on the FrameView.
3437 Reviewed by bradee-oh
3439 * bridge/mac/FrameMac.mm:
3440 (WebCore::FrameMac::wheelEvent):
3441 * page/FrameView.cpp:
3442 (WebCore::FrameView::handleWheelEvent):
3443 * platform/PlatformWheelEvent.h:
3444 (WebCore::PlatformWheelEvent::platformDelta):
3445 (WebCore::PlatformWheelEvent::delta):
3446 * platform/mac/WheelEventMac.mm:
3447 (WebCore::platformDeltaForEvent):
3448 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3449 * rendering/RenderLayer.cpp:
3450 (WebCore::RenderLayer::scroll):
3451 * rendering/RenderObject.cpp:
3452 (WebCore::RenderObject::scroll):
3454 2006-09-19 Eric Seidel <eric@eseidel.com>
3458 Improve test output for filters with bounding-box relative sizes.
3459 http://bugs.webkit.org/show_bug.cgi?id=8585
3461 Many test results updated.
3463 * kcanvas/KCanvasFilters.cpp:
3464 (WebCore::KCanvasFilter::externalRepresentation):
3466 2006-09-19 Eric Seidel <eric@eseidel.com>
3470 Markers should clip to their viewport.
3471 http://bugs.webkit.org/show_bug.cgi?id=5967
3473 Test: svg/custom/marker-overflow-clip.svg
3475 * kcanvas/KCanvasResources.cpp:
3476 (WebCore::KCanvasMarker::KCanvasMarker):
3477 (WebCore::KCanvasMarker::setMarker):
3478 (WebCore::KCanvasMarker::draw):
3479 * kcanvas/KCanvasResources.h:
3480 (WebCore::KCanvasMasker::mask):
3481 * ksvg2/svg/SVGMarkerElement.cpp:
3482 (WebCore::SVGMarkerElement::SVGMarkerElement):
3483 (WebCore::SVGMarkerElement::parseMappedAttribute):
3484 (WebCore::SVGMarkerElement::canvasResource):
3485 (WebCore::SVGMarkerElement::createRenderer):
3487 2006-09-19 Justin Garcia <justin.garcia@apple.com>
3491 Backing out my recent change.
3493 * css/cssstyleselector.cpp:
3494 (WebCore::CSSStyleSelector::adjustRenderStyle):
3496 2006-09-19 Brady Eidson <beidson@apple.com>
3498 Reviewed by Kevin McCullough
3500 http://bugs.webkit.org/show_bug.cgi?id=10940
3501 Opening a PDF in a new tab/window creates a documentless-frame
3502 and we deref the document without checking its validity
3505 (WebCore::Frame::iconURL):
3507 2006-09-19 Justin Garcia <justin.garcia@apple.com>
3509 Reviewed by harrison
3511 <rdar://problem/4735272>
3512 Can not click into link in programmatically editable content
3514 * css/cssstyleselector.cpp:
3515 (WebCore::CSSStyleSelector::adjustRenderStyle): We stopped using
3516 userModify to implement document wide editability.
3518 2006-09-19 MorganL <morlmor@yahoo.com>
3520 Reviewed by Darin and landed by Brady
3522 Fixes http://bugs.webkit.org/show_bug.cgi?id=10939
3523 Build broken when SVG is not enabled.
3525 * dom/XMLTokenizer.cpp:
3526 (WebCore::XMLTokenizer::startElementNs):
3528 2006-09-19 Justin Garcia <justin.garcia@apple.com>
3530 Reviewed by harrison
3532 <rdar://problem/4727383> REGRESSION: Pasting plain text with tabs into Blot converts the tabs to single spaces
3534 Pasting plain text results in a match style paste, and the insertion
3535 position is whitespace normal, which clobbers the whitespace:pre on
3536 tab spans. Skip changes to the whitespace mode when computing a style
3537 change for tab spans or the text nodes inside tab spans.
3539 * editing/ApplyStyleCommand.cpp:
3540 (WebCore::StyleChange::init): Don't change the whitespace mode inside
3543 2006-09-19 David Hyatt <hyatt@apple.com>
3545 Fix for bug 5298, shape=default not supported for image maps. Implement
3550 * html/HTMLAreaElement.cpp:
3551 (WebCore::HTMLAreaElement::getRegion):
3552 * html/HTMLMapElement.cpp:
3553 (WebCore::HTMLMapElement::mapMouseEvent):
3555 2006-09-19 Adam Roben <aroben@apple.com>
3559 Fixes http://bugs.webkit.org/show_bug.cgi?id=10824
3560 "no file selected" placeholder text missing from file upload control
3562 * WebCore.xcodeproj/project.pbxproj:
3563 * rendering/RenderFileUploadControl.cpp: Remove class
3564 RenderFileUploadInnerFileBox, rename defaultFilenameNumChars to
3565 defaultWidthNumChars
3566 (WebCore::RenderFileUploadControl::RenderFileUploadControl): Call
3567 RenderBlock constructor instead of RenderFlexibleBox,
3568 (WebCore::RenderFileUploadControl::setStyle): Remove references to
3570 (WebCore::RenderFileUploadControl::valueChanged): Call repaint()
3571 instead of updateIconAndFileName() (which has been removed)
3572 (WebCore::RenderFileUploadControl::updateFromElement): Remove
3573 references to m_fileBox, don't call updateIconAndFilename()
3574 (WebCore::RenderFileUploadControl::maxFilenameWidth): Calculate width
3575 without using m_fileBox
3576 (WebCore::RenderFileUploadControl::createButtonStyle): Remove
3577 now-unnecessary display:box rule.
3578 (WebCore::RenderFileUploadControl::paintObject): Remove redundant call
3579 to paintingDisabled() now that Icon::paint() does it, and add code to
3580 paint the filename directly.
3581 (WebCore::RenderFileUploadControl::calcMinMaxWidth): Move this method
3582 out of RenderFileUploadInnerFileBox and into RenderFileUploadControl
3583 * rendering/RenderFileUploadControl.h: Make RenderFileUploadControl a
3584 subclass of RenderBlock instead of RenderFlexibleBox, remove
3585 updateIconAndFilename() method, remove m_fileBox instance variable.
3587 2006-09-19 Eric Seidel <eric@eseidel.com>
3591 Exceptions thrown from <script> tags in XHTML/SVG docs show the wrong line numbers
3592 http://bugs.webkit.org/show_bug.cgi?id=10846
3594 No automated test case possible until http://bugs.webkit.org/show_bug.cgi?id=10905 is resolved.
3596 * dom/XMLTokenizer.cpp:
3597 (WebCore::XMLTokenizer::XMLTokenizer):
3598 (WebCore::XMLTokenizer::startElementNs):
3599 (WebCore::XMLTokenizer::endElementNs):
3601 2006-09-19 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
3603 Reviewed by eseidel. Landed by eseidel.
3605 Build fix only, no tests affected.
3607 * platform/gdk/FontPlatformDataGdk.cpp:
3608 (WebCore::FontPlatformData::FontPlatformData):
3609 (WebCore::FontPlatformData::~FontPlatformData):
3610 * platform/gdk/FrameGdk.h:
3611 * platform/gdk/TemporaryLinkStubs.cpp:
3612 (FrameGdk::isLoadTypeReload):
3613 (FrameGdk::originalRequestURL):
3614 (IconDatabase::setIconURLForPageURL):
3616 2006-09-19 David Hyatt <hyatt@apple.com>
3618 Refine the fix for 9805 to really get all the complex cases right.
3622 * rendering/RenderBlock.cpp:
3623 (WebCore::RenderBlock::clearFloatsIfNeeded):
3624 (WebCore::RenderBlock::handleBottomOfBlock):
3626 2006-09-18 David Hyatt <hyatt@apple.com>
3628 Fix for 9805, <hr> not positioned properly following a previous empty sibling
3629 that had clear:both set on it. Update self-collapsing block clearance
3630 behavior to match what is specified in the latest draft of CSS2.1.
3634 Added fast/block/margin-collapse/empty-clear-blocks.html
3636 * rendering/RenderBlock.cpp:
3637 (WebCore::RenderBlock::clearFloatsIfNeeded):
3638 (WebCore::RenderBlock::handleBottomOfBlock):
3640 2006-09-18 MorganL <morlmor@yahoo.com>
3642 Reviewed by Brady, landed by Brady
3644 Send receivedResponse callback to ResourceLoaderClient when loading
3647 See http://bugs.webkit.org/show_bug.cgi?id=10845
3649 * platform/win/ResourceLoaderWin.cpp:
3650 (WebCore::ResourceLoader::fileLoadTimer):
3652 2006-09-18 Brady Eidson <beidson@apple.com>
3656 <rdar://problem/3028061> - WebKit never updates favicon
3657 The WebKit enforced expiration date for icons has worked for some time, but the
3658 move to the new Icon Loader broke the "always get the icon if the user refreshes the page"
3659 functionality. This patch fixes that up, along with some other architectural improvements,
3660 the main one being that WebCore::Document now contains an iconURL for the Frame to query if needed.
3662 * bridge/mac/FrameMac.h: Added isLoadTypeReload()
3663 * bridge/mac/FrameMac.mm:
3664 (WebCore::FrameMac::isLoadTypeReload): Implementation, calls into the bridge
3665 * bridge/mac/WebCoreFrameBridge.h: Added isLoadTypeReload:
3666 * bridge/win/FrameWin.h: Added isLoadTypeReload() for temporary link stub
3667 * dom/Document.h: Added m_iconURL
3668 (WebCore::Document::iconURL): Added
3669 (WebCore::Document::setIconURL): Ditto
3670 * html/HTMLLinkElement.cpp:
3671 (WebCore::HTMLLinkElement::process): Sets the iconURL in the Document instead of the Frame
3673 (WebCore::Frame::iconURL): Calculates the iconURL based on the document, then the default favicon.ico url
3674 (WebCore::Frame::endIfNotLoading): Checks for the load type - always loads icon on Reload
3675 * page/Frame.h: Nuked setIconURL(), added isLoadTypeReload()
3676 * page/FramePrivate.h: Nuked IconURL
3677 * platform/win/TemporaryLinkStubs.cpp:
3678 (FrameWin::isLoadTypeReload):
3680 2006-09-18 Sam Weinig <sam.weinig@gmail.com>
3684 - Re-add private method [DOMRGBColor _color] to DOMPrivate.h as
3685 it is it turns out that AppKit uses it.
3687 * bindings/objc/DOMPrivate.h:
3688 * bindings/objc/DOMRGBColor.mm:
3689 (-[DOMRGBColor _color]):
3691 2006-09-18 Sam Weinig <sam.weinig@gmail.com>
3695 Patch for http://bugs.webkit.org/show_bug.cgi?id=10903
3696 Yet Another Objective-C Bindings Patch
3698 - Whitespace cleanup for IDLParser.pm
3700 - Split DOMException, DOMRangeException, DOMXPathException, DOMEventsException
3701 and DOMAbstractView into their own files.
3703 - Remove private method [DOMRGBColor _color] from DOMPrivate.h as
3704 it is not used and a public method is available now.
3706 - Remove internal method [DOMDocument _ownerElement] from DOMInternal.h
3709 - Auto-generate method isContentEditable for DOMNode.
3711 - General cleanup of bindings code including removing unneeded #imports
3712 and whitespace cleanup
3714 * WebCore.xcodeproj/project.pbxproj:
3715 * bindings/objc/DOM.mm:
3718 (-[DOMNode _initWithNode:WebCore::]):
3719 (+[DOMNode _nodeWith:WebCore::]):
3720 (-[DOMNode WebCore::]):
3721 (-[DOMNode KJS::Bindings::]):
3722 (-[DOMNode addEventListener:::]):
3723 (-[DOMNode removeEventListener:::]):
3724 (-[DOMNode dispatchEvent:]):
3725 (-[DOMElement image]):
3726 (-[DOMElement _font]):
3727 (-[DOMElement _imageTIFFRepresentation]):
3728 (-[DOMElement _getURLAttribute:]):
3729 (-[DOMElement _NPObject]):
3730 (-[DOMElement isFocused]):
3731 (-[DOMRange dealloc]):
3732 (-[DOMRange finalize]):
3733 (-[DOMRange description]):
3734 (-[DOMRange startContainer]):
3735 (-[DOMRange startOffset]):
3736 (-[DOMRange endContainer]):
3737 (-[DOMRange endOffset]):
3738 (-[DOMRange collapsed]):
3739 (-[DOMRange commonAncestorContainer]):
3740 (-[DOMRange setStart::]):
3741 (-[DOMRange setEnd::]):
3742 (-[DOMRange setStartBefore:]):
3743 (-[DOMRange setStartAfter:]):
3744 (-[DOMRange setEndBefore:]):
3745 (-[DOMRange setEndAfter:]):
3746 (-[DOMRange collapse:]):
3747 (-[DOMRange selectNode:]):
3748 (-[DOMRange selectNodeContents:]):
3749 (-[DOMRange compareBoundaryPoints::]):
3750 (-[DOMRange deleteContents]):
3751 (-[DOMRange extractContents]):
3752 (-[DOMRange cloneContents]):
3753 (-[DOMRange insertNode:]):
3754 (-[DOMRange surroundContents:]):
3755 (-[DOMRange cloneRange]):
3756 (-[DOMRange toString]):
3757 (-[DOMRange detach]):
3758 (-[DOMRange _initWithRange:WebCore::]):
3759 (+[DOMRange _rangeWith:WebCore::]):
3760 (-[DOMRange WebCore::]):
3761 (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
3762 (+[DOMNodeFilter _nodeFilterWith:WebCore::]):
3763 (-[DOMNodeFilter WebCore::]):
3764 (-[DOMNodeFilter dealloc]):
3765 (-[DOMNodeFilter finalize]):
3766 (-[DOMNodeIterator _initWithNodeIterator:WebCore::filter:]):
3767 (-[DOMNodeIterator WebCore::]):
3768 (+[DOMNodeIterator _nodeIteratorWith:WebCore::filter:]):
3769 (-[DOMTreeWalker _initWithTreeWalker:WebCore::filter:]):
3770 (-[DOMTreeWalker WebCore::]):
3771 (+[DOMTreeWalker _treeWalkerWith:WebCore::filter:]):
3772 (ObjCNodeFilterCondition::acceptNode):
3773 (-[DOMDocument createNodeIterator::::]):
3774 (-[DOMDocument createTreeWalker::::]):
3775 (ObjCEventListener::find):
3776 (ObjCEventListener::create):
3777 (ObjCEventListener::handleEvent):
3778 * bindings/objc/DOMAbstractView.h: Added.
3779 * bindings/objc/DOMAbstractView.mm: Added.
3780 (-[DOMAbstractView document]):
3781 (-[DOMAbstractView WebCore::]):
3782 (-[DOMAbstractView _initWithAbstractView:WebCore::]):
3783 (+[DOMAbstractView _abstractViewWith:WebCore::]):
3784 * bindings/objc/DOMCSS.mm:
3785 (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
3786 (+[DOMStyleSheet _styleSheetWith:WebCore::]):
3787 (+[DOMCSSStyleSheet _CSSStyleSheetWith:WebCore::]):
3788 (-[DOMCSSRule _initWithRule:WebCore::]):
3789 (+[DOMCSSRule _CSSRuleWith:WebCore::]):
3790 (-[DOMCSSValue _initWithValue:WebCore::]):
3791 (+[DOMCSSValue _CSSValueWith:WebCore::]):
3792 (+[DOMCSSPrimitiveValue _CSSPrimitiveValueWith:WebCore::]):
3793 (-[DOMDocument getComputedStyle::]):
3794 (-[DOMDocument getMatchedCSSRules::]):
3795 * bindings/objc/DOMCore.h:
3796 * bindings/objc/DOMEventException.h: Added.
3797 * bindings/objc/DOMEvents.h:
3798 * bindings/objc/DOMEvents.mm:
3799 * bindings/objc/DOMException.h: Added.
3800 * bindings/objc/DOMHTML.mm:
3801 (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
3803 (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]):
3804 (-[DOMHTMLInputElement _selectedRange]):
3805 (-[DOMHTMLInputElement _setAutofilled:]):
3806 * bindings/objc/DOMInternal.h:
3807 * bindings/objc/DOMObject.h:
3808 * bindings/objc/DOMPrivate.h:
3809 * bindings/objc/DOMRange.h:
3810 * bindings/objc/DOMRangeException.h: Added.
3811 * bindings/objc/DOMViews.h:
3812 * bindings/objc/DOMViews.mm: Removed.
3813 * bindings/objc/DOMXPath.h:
3814 * bindings/objc/DOMXPathException.h: Added.
3815 * bindings/scripts/IDLParser.pm:
3818 2006-09-18 Brady Eidson <beidson@apple.com>
3822 * platform/win/TemporaryLinkStubs.cpp:
3823 (IconDatabase::setIconURLForPageURL):
3825 2006-09-18 David Hyatt <hyatt@apple.com>
3827 Fix for bug 3969, hr width doesn't update when it clears a float. This
3828 was also a problem with tables and overflow sections.
3832 Added fast/block/float/width-update-after-clear.html
3834 * rendering/RenderBlock.cpp:
3835 (WebCore::RenderBlock::collapseMargins):
3836 (WebCore::RenderBlock::clearFloatsIfNeeded):
3838 2006-09-18 Brady Eidson <beidson@apple.com>
3842 http://bugs.webkit.org/show_bug.cgi?id=10907
3843 REGRESSION: New Icon Loaders don't handle certain non-server-root URLs correctly
3845 * bridge/mac/FrameMac.h: Changed originalRequestURL() to virtual
3846 * bridge/win/FrameWin.h: Added originalRequestURL()
3847 * loader/icon/IconLoader.cpp:
3848 (IconLoader::receivedAllData): Moved the "pageURL to iconURL mapping logic" to Frame::commitIconURLToIconDatabase()
3850 (WebCore::Frame::iconURL): Construct the icon URL from *only* the protocol and host of the frame's url.
3851 (WebCore::Frame::endIfNotLoading): Call commitIconURLToIconDatabase() if we're not kicking off an icon load
3852 (WebCore::Frame::commitIconURLToIconDatabase): Map the completed doc's pageURL to the iconURL
3853 * page/Frame.h: Added pure virtual originalRequestURL()
3854 * platform/win/TemporaryLinkStubs.cpp:
3855 (FrameWin::originalRequestURL): Added
3857 2006-09-18 Rob Buis <buis@kde.org>
3861 http://bugs.webkit.org/show_bug.cgi?id=10807
3862 REGRESSION (r16259): Repro crash on manual-tests/svg-repaint-image.svg
3864 Make sure the paint method is not exited without popping
3865 context and transparency layer.
3867 WARNING: NO TEST CASES ADDED OR CHANGED
3869 * kcanvas/RenderSVGImage.cpp:
3870 (WebCore::RenderSVGImage::paint):
3872 2006-09-18 Graham Dennis <graham.dennis@gmail.com>
3876 - fix for http://bugs.webkit.org/show_bug.cgi?id=10896
3877 REGRESSION: WebKit can't be built with SVG disabled
3879 * bindings/scripts/CodeGeneratorObjC.pm:
3880 For each file generated add a #ifdef <something>_SUPPORT / #endif
3881 pair if the idl file has a Conditional extended attribute
3883 2006-09-17 Eric Seidel <eric@eseidel.com>
3887 REGRESSION (r16245): double-clicking on javascript exceptions fails to show source
3888 http://bugs.webkit.org/show_bug.cgi?id=10813
3890 * bridge/mac/WebCoreFrameBridge.mm:
3891 (+[WebCoreFrameBridge stringWithData:textEncodingName:]):
3893 2006-09-17 Alexey Proskuryakov <ap@nypop.com>
3897 http://bugs.webkit.org/show_bug.cgi?id=10779
3898 REGRESSION: Animated GIF ignores frame intervals and loops infinitely
3902 * platform/Image.cpp:
3903 (WebCore::Image::shouldAnimate): Don't check that there is more than one frame,
3904 maybe the rest just hasn't been loaded yet.
3905 (WebCore::Image::startAnimation): Move the frame count check here - there is no need
3906 to start animating before we get at least two frames.
3908 2006-09-17 Brady Eidson <beidson@apple.com>
3912 IconLoader now gracefully handles the condition where there's no document in the frame
3915 * loader/icon/IconLoader.cpp:
3916 (IconLoader::startLoading):
3918 2006-09-17 David Hyatt <hyatt@apple.com>
3920 Fix for bug 10899, rework how CSS keywords work to be smarter about
3921 using the correct size when generic families change (e.g., monospace to
3922 serif and vice versa).
3926 Added fast/text/basic/generic-family-changes.html
3928 * css/cssstyleselector.cpp:
3929 (WebCore::CSSStyleSelector::applyProperty):
3930 (WebCore::CSSStyleSelector::checkForGenericFamilyChange):
3931 (WebCore::CSSStyleSelector::fontSizeForKeyword):
3932 * css/cssstyleselector.h:
3934 (WebCore::Document::recalcStyle):
3935 * platform/FontDescription.h:
3936 (WebCore::FontDescription::FontDescription):
3937 (WebCore::FontDescription::keywordSize):
3938 (WebCore::FontDescription::setKeywordSize):
3939 (WebCore::FontDescription::operator==):
3941 2006-09-17 Alexey Proskuryakov <ap@nypop.com>
3945 http://bugs.webkit.org/show_bug.cgi?id=10852
3946 REGRESSION: Reproducible crash in XMLHttpRequest::abort()
3948 Test: http/tests/xmlhttprequest/xhr-onunload.html
3950 * xml/xmlhttprequest.cpp:
3951 (WebCore::XMLHttpRequest::send): Check the return value of ResourceLoader::start().
3953 * loader/icon/IconLoader.cpp:
3954 (IconLoader::startLoading): Fix a similar latent bug here.
3956 2006-09-17 Adam Roben <aroben@apple.com>
3960 * loader/icon/IconDatabase.cpp:
3962 2006-09-17 Anders Carlsson <acarlsson@apple.com>
3966 Add simplifyWhiteSpace and stripWhiteSpace to the String class.
3967 Change the XSLT Parameter Map to use Strings instead of StringImpls.
3970 * bindings/js/JSXSLTProcessor.cpp:
3971 (KJS::XSLTProcessorProtoFunc::callAsFunction):
3972 * bindings/js/kjs_events.cpp:
3973 (KJS::JSAbstractEventListener::handleEvent):
3974 * bindings/js/kjs_window.cpp:
3975 (KJS::ScheduledAction::execute):
3976 * css/MediaList.cpp:
3977 (WebCore::MediaList::setMediaText):
3979 (WebCore::Document::processHttpEquiv):
3980 * editing/ApplyStyleCommand.cpp:
3981 (WebCore::StyleChange::init):
3982 * html/HTMLDocument.cpp:
3983 (WebCore::parseDocTypeDeclaration):
3984 * html/HTMLLinkElement.cpp:
3985 (WebCore::HTMLLinkElement::parseMappedAttribute):
3986 * html/HTMLObjectElement.cpp:
3987 (WebCore::HTMLObjectElement::HTMLObjectElement):
3988 (WebCore::HTMLObjectElement::parseMappedAttribute):
3989 (WebCore::HTMLObjectElement::attach):
3990 (WebCore::HTMLObjectElement::setComplete):
3991 (WebCore::HTMLObjectElement::detach):
3992 (WebCore::HTMLObjectElement::recalcStyle):
3993 (WebCore::HTMLObjectElement::childrenChanged):
3994 (WebCore::HTMLObjectElement::isImageType):
3995 * html/HTMLObjectElement.h:
3996 * html/HTMLOptionElement.cpp:
3997 (WebCore::HTMLOptionElement::value):
3998 * html/HTMLSelectElement.cpp:
3999 (WebCore::HTMLSelectElement::appendFormData):
4000 * html/HTMLTokenizer.cpp:
4001 (WebCore::HTMLTokenizer::parseTag):
4002 * ksvg2/svg/SVGColor.cpp:
4003 (WebCore::SVGColor::setRGBColor):
4004 * ksvg2/svg/SVGDescElement.cpp:
4005 (WebCore::SVGDescElement::description):
4006 * platform/PlatformString.h:
4007 * platform/String.cpp:
4008 (WebCore::String::stripWhiteSpace):
4009 (WebCore::String::simplifyWhiteSpace):
4010 * platform/StringImpl.cpp:
4012 (WebCore::parseLength):
4013 (WebCore::StringImpl::stripWhiteSpace):
4014 (WebCore::StringImpl::simplifyWhiteSpace):
4015 (WebCore::StringImpl::toInt):
4016 * platform/StringImpl.h:
4017 * platform/mac/ClipboardMac.mm:
4018 (WebCore::cocoaTypeFromMIMEType):
4019 * rendering/RenderPartObject.cpp:
4020 (WebCore::RenderPartObject::updateWidget):
4021 * xml/XPathFunctions.cpp:
4022 (WebCore::XPath::FunNormalizeSpace::doEvaluate):
4023 * xml/XPathGrammar.y:
4024 * xml/XPathStep.cpp:
4025 (WebCore::XPath::Step::nodeTestMatches):
4026 * xml/XSLStyleSheet.cpp:
4027 (WebCore::XSLStyleSheet::loadChildSheets):
4028 (WebCore::XSLStyleSheet::locateStylesheetSubResource):
4029 * xml/XSLTProcessor.cpp:
4030 (WebCore::xsltParamArrayFromParameterMap):
4031 (WebCore::XSLTProcessor::setParameter):
4032 (WebCore::XSLTProcessor::getParameter):
4033 (WebCore::XSLTProcessor::removeParameter):
4034 * xml/XSLTProcessor.h:
4035 * xml/xmlhttprequest.cpp:
4036 (WebCore::XMLHttpRequest::getStatusText):
4038 2006-09-17 David Hyatt <hyatt@apple.com>
4040 Fix for bugzilla bugs 10895 and 6336, fieldsets misbehaving when floats
4041 are declared right before the fieldsets. It turns out fieldsets in other
4042 browsers avoid floats (like overflow:auto/hidden/scroll sections do), so
4043 adding that behavior to fieldset fixes the bug.
4045 Made avoidsFloats virtual and did some refactoring to make tables, flexboxes
4046 and fieldsets all subclass.
4050 Added fast/forms/float-before-fieldset.html
4052 * rendering/RenderFieldset.h:
4053 (WebCore::RenderFieldset::avoidsFloats):
4054 * rendering/RenderFlexibleBox.h:
4055 (WebCore::RenderFlexibleBox::avoidsFloats):
4056 * rendering/RenderObject.cpp:
4057 (WebCore::RenderObject::avoidsFloats):
4058 * rendering/RenderObject.h:
4059 * rendering/RenderTable.h:
4060 (WebCore::RenderTable::avoidsFloats):
4062 2006-09-17 David Hyatt <hyatt@apple.com>
4064 Fix for bugzilla bug 3240, implement support for the HTML4 "frame" and
4065 "rules" attributes on tables.
4067 Reviewed by bradee-oh
4069 Well-covered by existing layout tests.
4071 * html/HTMLTableCellElement.cpp:
4072 (WebCore::HTMLTableCellElement::additionalAttributeStyleDecl):
4073 * html/HTMLTableColElement.cpp:
4074 (WebCore::HTMLTableColElement::additionalAttributeStyleDecl):
4075 * html/HTMLTableColElement.h:
4076 * html/HTMLTableElement.cpp:
4077 (WebCore::HTMLTableElement::HTMLTableElement):
4078 (WebCore::HTMLTableElement::~HTMLTableElement):
4079 (WebCore::HTMLTableElement::setCaption):
4080 (WebCore::HTMLTableElement::setTHead):
4081 (WebCore::HTMLTableElement::setTFoot):
4082 (WebCore::HTMLTableElement::setTBody):
4083 (WebCore::HTMLTableElement::createTHead):
4084 (WebCore::HTMLTableElement::deleteTHead):
4085 (WebCore::HTMLTableElement::createTFoot):
4086 (WebCore::HTMLTableElement::deleteTFoot):
4087 (WebCore::HTMLTableElement::createCaption):
4088 (WebCore::HTMLTableElement::deleteCaption):
4089 (WebCore::HTMLTableElement::insertRow):
4090 (WebCore::HTMLTableElement::deleteRow):
4091 (WebCore::HTMLTableElement::addChild):
4092 (WebCore::HTMLTableElement::childrenChanged):
4093 (WebCore::HTMLTableElement::mapToEntry):
4094 (WebCore::HTMLTableElement::parseMappedAttribute):
4095 (WebCore::HTMLTableElement::additionalAttributeStyleDecl):
4096 (WebCore::HTMLTableElement::getSharedCellDecl):
4097 (WebCore::HTMLTableElement::getSharedGroupDecl):
4098 (WebCore::HTMLTableElement::attach):
4099 * html/HTMLTableElement.h:
4100 (WebCore::HTMLTableElement::caption):
4101 (WebCore::HTMLTableElement::tHead):
4102 (WebCore::HTMLTableElement::tFoot):
4103 (WebCore::HTMLTableElement::):
4104 * html/HTMLTableRowElement.h:
4105 * html/HTMLTableSectionElement.cpp:
4106 (WebCore::HTMLTableSectionElement::additionalAttributeStyleDecl):
4107 * html/HTMLTableSectionElement.h:
4109 2006-09-17 David Hyatt <hyatt@apple.com>
4111 Fix for bugzilla bug 4192, font size wrong for <tt> elements that
4112 specify their own new font-family list. Make sure to always
4113 reset the generic family along with the family list when mapping in
4114 new font-family values.
4116 Reviewed by bradee-oh
4118 fast/text/basic/generic-family-reset.html
4120 * css/cssstyleselector.cpp:
4121 (WebCore::CSSStyleSelector::applyProperty):
4123 2006-09-16 Brady Eidson <beidson@apple.com>
4127 Pruning code relating to WebKit's icon loader
4129 * bridge/mac/WebCoreIconDatabaseBridge.h:
4130 * bridge/mac/WebCoreIconDatabaseBridge.mm:
4131 * loader/icon/IconDatabase.h:
4133 (WebCore::Frame::endIfNotLoading): Moved a FIXME in from WebKit's IconLoader to
4136 2006-09-16 Sam Weinig <sam.weinig@gmail.com>
4140 Patch for http://bugs.webkit.org/show_bug.cgi?id=10885
4141 Auto-generate DOMHTMLDocument for the Objective-C bindings
4143 * DerivedSources.make:
4144 * WebCore.xcodeproj/project.pbxproj:
4145 * bindings/objc/DOMExtensions.h:
4146 * bindings/objc/DOMHTML.mm:
4147 (-[DOMHTMLDocument createDocumentFragmentWithText:]):
4148 * bindings/objc/DOMHTMLDocument.h: Removed.
4149 * bindings/objc/DOMHTMLDocument.mm: Removed.
4150 * bindings/objc/PublicDOMInterfaces.h:
4151 * bindings/scripts/CodeGeneratorObjC.pm:
4152 * html/HTMLDocument.idl:
4153 * platform/DeprecatedString.h:
4154 (WebCore::DeprecatedString::operator NSString*):
4156 2006-09-16 Rob Buis <buis@kde.org>
4160 http://bugs.webkit.org/show_bug.cgi?id=10866
4161 Code in kcanvas/ should not use Private
4163 Remove Private classes and tweak coding style.
4165 WARNING: NO TEST CASES ADDED OR CHANGED
4167 * kcanvas/RenderPath.cpp:
4168 (WebCore::RenderPath::RenderPath):
4169 (WebCore::RenderPath::~RenderPath):
4170 (WebCore::RenderPath::localTransform):
4171 (WebCore::RenderPath::setLocalTransform):
4172 (WebCore::RenderPath::fillContains):
4173 (WebCore::RenderPath::relativeBBox):
4174 (WebCore::RenderPath::setPath):
4175 (WebCore::RenderPath::path):
4176 (WebCore::RenderPath::layout):
4177 * kcanvas/RenderPath.h:
4178 * kcanvas/RenderSVGContainer.cpp:
4179 (WebCore::RenderSVGContainer::RenderSVGContainer):
4180 (WebCore::RenderSVGContainer::~RenderSVGContainer):
4181 (WebCore::RenderSVGContainer::drawsContents):
4182 (WebCore::RenderSVGContainer::setDrawsContents):
4183 (WebCore::RenderSVGContainer::localTransform):
4184 (WebCore::RenderSVGContainer::setLocalTransform):
4185 (WebCore::RenderSVGContainer::layout):
4186 (WebCore::RenderSVGContainer::paint):
4187 (WebCore::RenderSVGContainer::setViewport):
4188 (WebCore::RenderSVGContainer::viewport):
4189 (WebCore::RenderSVGContainer::setViewBox):
4190 (WebCore::RenderSVGContainer::viewBox):
4191 (WebCore::RenderSVGContainer::setAlign):
4192 (WebCore::RenderSVGContainer::align):
4193 (WebCore::RenderSVGContainer::fillContains):
4194 (WebCore::RenderSVGContainer::strokeContains):
4195 (WebCore::RenderSVGContainer::setSlice):
4196 (WebCore::RenderSVGContainer::slice):
4197 * kcanvas/RenderSVGContainer.h:
4198 * kcanvas/device/KRenderingFillPainter.cpp:
4199 (WebCore::KRenderingFillPainter::KRenderingFillPainter):
4200 (WebCore::KRenderingFillPainter::~KRenderingFillPainter):
4201 (WebCore::KRenderingFillPainter::fillRule):
4202 (WebCore::KRenderingFillPainter::setFillRule):
4203 (WebCore::KRenderingFillPainter::opacity):
4204 (WebCore::KRenderingFillPainter::setOpacity):
4205 * kcanvas/device/KRenderingFillPainter.h:
4206 * kcanvas/device/KRenderingPaintServerGradient.cpp:
4207 (WebCore::KRenderingPaintServerGradient::KRenderingPaintServerGradient):
4208 (WebCore::KRenderingPaintServerGradient::~KRenderingPaintServerGradient):
4209 (WebCore::KRenderingPaintServerGradient::gradientStops):
4210 (WebCore::KRenderingPaintServerGradient::setGradientStops):
4211 (WebCore::KRenderingPaintServerGradient::spreadMethod):
4212 (WebCore::KRenderingPaintServerGradient::setGradientSpreadMethod):
4213 (WebCore::KRenderingPaintServerGradient::boundingBoxMode):
4214 (WebCore::KRenderingPaintServerGradient::setBoundingBoxMode):
4215 (WebCore::KRenderingPaintServerGradient::gradientTransform):
4216 (WebCore::KRenderingPaintServerGradient::setGradientTransform):
4217 (WebCore::KRenderingPaintServerLinearGradient::KRenderingPaintServerLinearGradient):
4218 (WebCore::KRenderingPaintServerLinearGradient::~KRenderingPaintServerLinearGradient):
4219 (WebCore::KRenderingPaintServerLinearGradient::gradientStart):
4220 (WebCore::KRenderingPaintServerLinearGradient::setGradientStart):
4221 (WebCore::KRenderingPaintServerLinearGradient::gradientEnd):
4222 (WebCore::KRenderingPaintServerLinearGradient::setGradientEnd):
4223 (WebCore::KRenderingPaintServerRadialGradient::KRenderingPaintServerRadialGradient):
4224 (WebCore::KRenderingPaintServerRadialGradient::~KRenderingPaintServerRadialGradient):
4225 (WebCore::KRenderingPaintServerRadialGradient::gradientCenter):
4226 (WebCore::KRenderingPaintServerRadialGradient::setGradientCenter):
4227 (WebCore::KRenderingPaintServerRadialGradient::gradientFocal):
4228 (WebCore::KRenderingPaintServerRadialGradient::setGradientFocal):
4229 (WebCore::KRenderingPaintServerRadialGradient::gradientRadius):
4230 (WebCore::KRenderingPaintServerRadialGradient::setGradientRadius):
4231 (WebCore::KRenderingPaintServerGradient::listener):
4232 (WebCore::KRenderingPaintServerGradient::setListener):
4233 * kcanvas/device/KRenderingPaintServerGradient.h:
4234 * kcanvas/device/KRenderingPaintServerPattern.cpp:
4235 (WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
4236 (WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
4237 (WebCore::KRenderingPaintServerPattern::setBbox):
4238 (WebCore::KRenderingPaintServerPattern::bbox):
4239 (WebCore::KRenderingPaintServerPattern::boundingBoxMode):
4240 (WebCore::KRenderingPaintServerPattern::setBoundingBoxMode):
4241 (WebCore::KRenderingPaintServerPattern::tile):
4242 (WebCore::KRenderingPaintServerPattern::setTile):
4243 (WebCore::KRenderingPaintServerPattern::patternTransform):
4244 (WebCore::KRenderingPaintServerPattern::setPatternTransform):
4245 (WebCore::KRenderingPaintServerPattern::listener):
4246 (WebCore::KRenderingPaintServerPattern::setListener):
4247 * kcanvas/device/KRenderingPaintServerPattern.h:
4248 * kcanvas/device/KRenderingPaintServerSolid.cpp:
4249 (WebCore::KRenderingPaintServerSolid::KRenderingPaintServerSolid):
4250 (WebCore::KRenderingPaintServerSolid::~KRenderingPaintServerSolid):
4251 (WebCore::KRenderingPaintServerSolid::color):
4252 (WebCore::KRenderingPaintServerSolid::setColor):
4253 * kcanvas/device/KRenderingPaintServerSolid.h:
4254 * kcanvas/device/KRenderingStrokePainter.cpp:
4255 (WebCore::KRenderingStrokePainter::KRenderingStrokePainter):
4256 (WebCore::KRenderingStrokePainter::~KRenderingStrokePainter):
4257 (WebCore::KRenderingStrokePainter::strokeWidth):
4258 (WebCore::KRenderingStrokePainter::setStrokeWidth):
4259 (WebCore::KRenderingStrokePainter::strokeMiterLimit):
4260 (WebCore::KRenderingStrokePainter::setStrokeMiterLimit):
4261 (WebCore::KRenderingStrokePainter::strokeCapStyle):
4262 (WebCore::KRenderingStrokePainter::setStrokeCapStyle):
4263 (WebCore::KRenderingStrokePainter::strokeJoinStyle):
4264 (WebCore::KRenderingStrokePainter::setStrokeJoinStyle):
4265 (WebCore::KRenderingS