1 2006-10-05 Don Gibson <dgibson77@gmail.com>
5 http://bugs.webkit.org/show_bug.cgi?id=11138
6 Incorrect mouse event generation on Windows
8 * platform/win/MouseEventWin.cpp:
9 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
10 (1) Set mouse button even for non-click-related messages.
11 (2) Track clicks correctly for all buttons, not just the left button.
13 2006-10-05 Nikolas Zimmermann <zimmermann@kde.org>
15 Reviewed and landed by ap.
17 Fix Qt/Linux build, adapt to Eric's quartz changes and to Maciej's ResourceLoader changes.
19 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
20 (WebCore::KRenderingPaintServerLinearGradientQt::renderPath):
21 (WebCore::KRenderingPaintServerLinearGradientQt::setup):
22 (WebCore::KRenderingPaintServerRadialGradientQt::setup):
23 (WebCore::KRenderingPaintServerRadialGradientQt::renderPath):
24 * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
25 (WebCore::KRenderingPaintServerPatternQt::renderPath):
26 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
27 (WebCore::KRenderingPaintServerQt::setPenProperties):
28 * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
29 (WebCore::KRenderingPaintServerSolidQt::setup):
30 (WebCore::KRenderingPaintServerSolidQt::renderPath):
31 * kcanvas/device/qt/RenderPathQt.cpp:
32 (WebCore::getPathStroke):
34 2006-10-05 Alexey Proskuryakov <ap@nypop.com>
38 http://bugs.webkit.org/show_bug.cgi?id=11054
39 REGRESSION: Traditional Chinese encoding in login authentication
41 1. Treat GB2312 encoding as GBK (its more modern superset), to match other browsers.
42 2. On the Web, GB2312 is encoded as EUC-CN or HZ, while ICU provides a native encoding
43 for encoding GB_2312-80 and several others. So, we need to override this behavior, too.
45 * platform/StreamingTextDecoderICU.cpp:
46 (WebCore::TextCodecICU::registerEncodingNames):
48 2006-10-05 Eric Seidel <eric@eseidel.com>
53 Filed http://bugs.webkit.org/show_bug.cgi?id=11167 to for followup on removed FIXMEs
55 * WebCore.xcodeproj/project.pbxproj:
56 * ksvg2/ecma/GlobalObject.cpp: Removed.
57 * ksvg2/ecma/GlobalObject.h: Removed.
59 2006-10-05 Adam Roben <aroben@apple.com>
63 Small ResourceLoaderInternal tweak.
65 * platform/ResourceLoaderInternal.h:
66 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
68 2006-10-05 Eric Seidel <eric@eseidel.com>
72 More incremental KCanvas cleanup and optimization.
73 Added SVGRenderStyle::hasFill() and hasStroke() removed more KSVGPainterFactory methods.
74 Optimized dash array usage to not malloc.
75 Also removed un-needed KSVGRenderingStyle includes.
77 * kcanvas/KCanvasTreeDebug.cpp:
78 (WebCore::operator<<):
79 * kcanvas/RenderPath.cpp:
80 (WebCore::RenderPath::nodeAtPoint):
81 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
82 (WebCore::RenderPath::strokeBBox):
83 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
84 (WebCore::KRenderingPaintServerGradientQuartz::setup):
85 (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
86 (WebCore::KRenderingPaintServerGradientQuartz::teardown):
87 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
88 (WebCore::KRenderingPaintServerSolidQuartz::setup):
89 (WebCore::KRenderingPaintServerSolidQuartz::renderPath):
90 (WebCore::KRenderingPaintServerPatternQuartz::setup):
91 (WebCore::KRenderingPaintServerPatternQuartz::renderPath):
92 * kcanvas/device/quartz/QuartzSupport.mm:
93 (WebCore::applyStrokeStyleToContext):
94 * ksvg2/css/SVGRenderStyle.h:
95 (WebCore::SVGRenderStyle::hasStroke):
96 (WebCore::SVGRenderStyle::hasFill):
97 * ksvg2/misc/KCanvasRenderingStyle.cpp:
98 (WebCore::KSVGPainterFactory::fillPaintServer):
99 (WebCore::KSVGPainterFactory::strokePaintServer):
100 * ksvg2/misc/KCanvasRenderingStyle.h:
102 2006-10-05 Maciej Stachowiak <mjs@apple.com>
106 - changed ResourceLoader to be refcounted
108 It keeps a ref on itself while loading as well. This makes
109 for a much saner memory management model than the previous.
111 * bridge/mac/WebCoreResourceLoaderImp.mm:
112 (-[WebCoreResourceLoaderImp finishJobAndHandle:]):
113 * dom/XMLTokenizer.cpp:
115 * loader/icon/IconLoader.cpp:
116 (IconLoader::IconLoader):
117 (IconLoader::~IconLoader):
118 (IconLoader::startLoading):
119 (IconLoader::stopLoading):
120 (IconLoader::receivedData):
121 * loader/icon/IconLoader.h:
123 (WebCore::Loader::servePendingRequests):
124 * platform/ResourceLoader.cpp:
125 (WebCore::ResourceLoader::create):
126 (WebCore::ResourceLoader::kill):
127 * platform/ResourceLoader.h:
128 * platform/ResourceLoaderInternal.h:
129 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
130 * platform/mac/ResourceLoaderMac.mm:
131 (WebCore::ResourceLoader::start):
132 * xml/XSLTProcessor.cpp:
133 (WebCore::docLoaderFunc):
134 * xml/xmlhttprequest.cpp:
135 (WebCore::XMLHttpRequest::send):
136 * xml/xmlhttprequest.h:
138 2006-10-05 Eric Seidel <eric@eseidel.com>
142 Improve SVG opacity performance by clipping to the object bbox before starting a new opacity layer.
143 http://bugs.webkit.org/show_bug.cgi?id=11163
145 No SVG performance tests yet.
147 * kcanvas/RenderForeignObject.cpp:
148 (WebCore::RenderForeignObject::paint):
149 * kcanvas/RenderSVGContainer.cpp:
150 (WebCore::RenderSVGContainer::paint):
151 * kcanvas/RenderSVGImage.cpp:
152 (WebCore::RenderSVGImage::paint):
153 * kcanvas/RenderSVGText.cpp:
154 (WebCore::RenderSVGText::paint):
156 2006-10-05 Dave Hyatt <hyatt@apple.com>
158 Stub out some stuff for widget focusability.
162 * page/FrameView.cpp:
163 (WebCore::FrameView::dispatchMouseEvent):
164 * platform/ScrollView.h:
167 2006-10-05 Adam Roben <aroben@apple.com>
169 Reviewed by Maciej and Tim H.
171 Copy some WebKit frame lifetime logic into WebCore -- just a step
172 along the path to frame lifetime being handled completely in WebCore.
174 * bridge/mac/FrameMac.mm:
175 (WebCore::FrameMac::setView): Move platform-independent parts of this
178 (WebCore::Frame::setView): Adding platform-independent parts of
180 (WebCore::Frame::detachChildren): New method to accomplish what
181 -[WebFrameBridge _detachChildren] currently does.
182 (WebCore::Frame::clear): Call detachChildren
183 * page/Frame.h: Add declaration for detachChildren
185 2006-10-04 Alice Liu <alice.liu@apple.com>
189 Fixed <rdar://problem/4758577> REGRESSION: Business and People widgets fails to complete search query
191 * xml/xmlhttprequest.cpp:
192 (WebCore::XMLHttpRequest::setRequestHeader):
193 removed exception set when the request is not open yet
195 2006-10-04 Anders Carlsson <acarlsson@apple.com>
197 Reviewed by John Sullivan.
199 <rdar://problem/4654328>
200 Safari Crashes in WebCore::PluginTokenizer::writeRawData If I Try to Open a SWF File With Plug-ins Turned Off
202 * loader/PluginDocument.cpp:
203 (WebCore::PluginTokenizer::writeRawData):
204 Only send the data to the plug-in if plug-ins are enabled, otherwise just silently eat it.
206 2006-10-03 Alexey Proskuryakov <ap@nypop.com>
210 http://bugs.webkit.org/show_bug.cgi?id=11130
211 Convert "undefined" to AE missing value
213 * bridge/mac/WebCoreFrameBridge.mm:
214 (aeDescFromJSValue): return missing value for UndefinedType.
216 2006-10-03 Dave Hyatt <hyatt@apple.com>
218 Scrolling work. Eliminate convertTo/FromContainingWindow as cross-platform functions. Add back in
219 the windowToContents/contentsToWindow functions.
223 * bridge/mac/FrameMac.mm:
224 (WebCore::FrameMac::eventMayStartDrag):
225 (WebCore::FrameMac::dragHysteresisExceeded):
226 (WebCore::FrameMac::mouseDown):
227 (WebCore::FrameMac::shouldDragAutoNode):
228 (WebCore::FrameMac::sendContextMenuEvent):
229 * bridge/mac/FrameViewMac.mm:
230 (WebCore::FrameView::passMousePressEventToScrollbar):
231 * bridge/mac/WebCoreFrameBridge.mm:
232 (-[WebCoreFrameBridge _visiblePositionForPoint:]):
233 * dom/EventTargetNode.cpp:
234 (WebCore::EventTargetNode::dispatchMouseEvent):
235 (WebCore::EventTargetNode::dispatchWheelEvent):
237 (WebCore::Frame::selectClosestWordFromMouseEvent):
238 (WebCore::Frame::handleMousePressEventTripleClick):
239 (WebCore::Frame::handleMousePressEventSingleClick):
240 (WebCore::Frame::handleMouseMoveEvent):
241 (WebCore::Frame::handleMouseReleaseEvent):
242 * page/FrameView.cpp:
243 (WebCore::FrameView::handleMousePressEvent):
244 (WebCore::FrameView::handleMouseDoubleClickEvent):
245 (WebCore::selectCursor):
246 (WebCore::FrameView::handleMouseMoveEvent):
247 (WebCore::FrameView::handleMouseReleaseEvent):
248 (WebCore::FrameView::dispatchDragEvent):
249 (WebCore::FrameView::prepareMouseEvent):
250 (WebCore::FrameView::handleWheelEvent):
252 * platform/ScrollBar.cpp:
253 (WebCore::ScrollBar::setValue):
254 * platform/ScrollView.h:
256 (WebCore::Widget::scrolled):
257 * platform/mac/ScrollViewMac.mm:
258 (WebCore::ScrollView::contentsToWindow):
259 (WebCore::ScrollView::windowToContents):
260 (WebCore::ScrollView::scrollbarUnderMouse):
261 * platform/mac/WidgetMac.mm:
262 * rendering/RenderLayer.cpp:
263 (WebCore::RenderLayer::resize):
264 (WebCore::RenderLayer::positionScrollbars):
265 * rendering/RenderReplaced.cpp:
266 (WebCore::RenderReplaced::shouldPaint):
267 * rendering/RenderView.cpp:
268 * rendering/RenderView.h:
269 * rendering/RenderWidget.cpp:
270 (WebCore::RenderWidget::setWidget):
272 2006-09-26 David Smith <catfish.man@gmail.com>
276 http://bugs.webkit.org/show_bug.cgi?id=3723
277 Add -scrollDOMRangeToVisible:
279 No automated tests are possible as this code path isn't reachable from JavaScript.
281 * bridge/mac/WebCoreFrameBridge.h:
282 * bridge/mac/WebCoreFrameBridge.mm:
283 (-[WebCoreFrameBridge scrollDOMRangeToVisible:]):
285 2006-10-03 Graham Dennis <graham.dennis@gmail.com>
289 <http://bugs.webkit.org/show_bug.cgi?id=10338>
290 When contentEditable, cursor doesn't change to hand
292 Allow the behaviour of editable links to be specified by a WebPreference
293 The preference WebKitEditableLinkBehavior has four options:
294 - AlwaysLive: Safari 2.0 behaviour
295 - OnlyLiveWithShiftKey: Firefox/WinIE behaviour (and prior WebKit-ToT behaviour)
296 - LiveWhenNotFocused: Editable links are live only when their editable block is not
297 focused, or when the shift key is pressed
298 - DefaultBehavior: This is the same as OnlyLiveWithShiftKey.
300 No layout tests, just a modification of a manual-test as it isn't possible to test
303 * bridge/mac/WebCoreSettings.h:
304 * bridge/mac/WebCoreSettings.mm:
305 (-[WebCoreSettings setEditableLinkBehavior:]):
306 (-[WebCoreSettings editableLinkBehavior]):
307 * html/HTMLAnchorElement.cpp:
308 (WebCore::HTMLAnchorElement::HTMLAnchorElement):
309 (WebCore::HTMLAnchorElement::defaultEventHandler):
310 (WebCore::HTMLAnchorElement::setActive):
311 * html/HTMLAnchorElement.h:
312 * manual-tests/contenteditable-link.html:
313 * page/FrameView.cpp:
314 (WebCore::nodeIsNotBeingEdited):
315 (WebCore::selectCursor):
317 (WebCore::Settings::):
318 (WebCore::Settings::Settings):
319 (WebCore::Settings::editableLinkBehavior):
320 (WebCore::Settings::setEditableLinkBehavior):
322 2006-10-03 Beth Dakin <bdakin@apple.com>
326 No test cases needed.
328 Implemented a version of StringImpl::append that takes a UChar* and
331 * platform/StringImpl.cpp:
332 (WebCore::StringImpl::append):
333 (WebCore::StringImpl::insert): Call new append instead of making a
335 * platform/StringImpl.h:
337 2006-10-03 MorganL <morganl.webkit@yahoo.com>
341 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11099
342 HttpSendRequestEx results in ERROR_HTTP_HEADER_NOT_FOUND
344 * platform/win/ResourceLoaderWin.cpp:
345 (WebCore::ResourceLoader::onHandleCreated):
347 2006-10-02 Geoffrey Garen <ggaren@apple.com>
349 Feared, loathed, reviewed by Darin.
351 More frame/iframe merging. Merged IFRAME::willRemove and IFRAME::detach
352 into FRAME, plus other cleanup.
354 No new behavior, so no new test. Layout tests pass. Basic browsing and
355 Mail editing seem to work.
358 (WebCore::Node::detach): Removed random commented-out code.
359 * html/HTMLFrameElement.cpp:
360 (WebCore::HTMLFrameElement::isURLAllowed):
361 (1) Removed reference to FrameView, to dissociate frame loading from rendering.
362 (2) Renamed newURL to completeURL because the difference between newURL
363 and URLString is that newURL is a KURL that is the complete version of URLString,
365 (WebCore::HTMLFrameElement::willRemove):
366 (1) Removed close() call and moved close() code into willRemove(), also removing
367 close() call from detach(), since willRemove is the well-defined place
368 from DOM tear-down, not detach().
369 (2) Removed manual renderer detach code because the DOM is not responsible
370 for managing the render tree. I confirmed that this change not
371 regress <rdar://problem/4132581>.
372 (3) Removed questionable ASSERT. The ASSERT assumed that iframe elements
373 lost their content frames after being removed from the DOM. That's our
374 current behavior, but it's going to change in future rounds of refactoring.
375 This also fixes <rdar://problem/4750835>.
376 (WebCore::HTMLFrameElement::setLocation): Removed wacky manual calls to
377 attach/detach, because the render tree should not be in charge of deciding
379 * html/HTMLFrameElement.h:
380 * html/HTMLIFrameElement.cpp:
381 (WebCore::HTMLIFrameElement::attach): Renamed renderPart to renderPartObject,
382 because the renderer is a renderPartObject, not a renderPart.
383 * html/HTMLIFrameElement.h:
385 2006-10-03 Mark Rowe <bdash@webkit.org>
389 http://bugs.webkit.org/show_bug.cgi?id=11137
390 Bug 11137: GdkLauncher dies with "pure virtual method called" if
391 window is closed while page still loading
393 * platform/gdk/FrameGdk.cpp:
394 (WebCore::FrameGdk::~FrameGdk): Call cancelAndClear to allow virtual
395 methods to be called before the FrameGdk portion of "this" is torn down.
397 2006-10-03 Adam Roben <aroben@apple.com>
401 Handle tab key presses in the DOM.
403 * dom/EventTargetNode.cpp:
404 (WebCore::EventTargetNode::defaultEventHandler): Add tab key handling.
405 * page/FrameView.cpp:
406 (WebCore::FrameView::advanceFocus): Rename and reimplement
407 focusNextPrevNode. Now we just call Element::focus().
408 * page/FrameView.h: Rename focusNextPrevNode to advanceFocus and make
411 2006-10-03 Justin Garcia <justin.garcia@apple.com>
415 <rdar://problem/4760612>
416 TOT REGRESSION: Repro assertion failure when forwarding draft in Range::compareBoundaryPoints
418 No layout test possible, attributedStringFrom:(DOMNode*)...etc isn't available to DRT.
421 (WebCore::Range::boundaryPointsValid): compareBoundaryPoints asserts that the incoming
422 positions are non-null since most of it's callers would be in a bad state if the positions
423 were null. boundaryPointsValid, which calls compareBoundaryPoints, is an exception.
424 Instead of removing the assert I've added nil checks in boundaryPointsValid, to keep it
425 from entering compareBoundaryPoints and hitting the assert.
427 2006-10-03 Adele Peterson <adele@apple.com>
431 Make code for turning off new listbox implementation mac-only, since there's no implementation on other platforms.
433 * html/HTMLSelectElement.cpp:
434 (WebCore::HTMLSelectElement::recalcStyle):
435 (WebCore::HTMLSelectElement::isKeyboardFocusable):
436 (WebCore::HTMLSelectElement::isMouseFocusable):
437 (WebCore::HTMLSelectElement::createRenderer):
438 (WebCore::HTMLSelectElement::setRecalcListItems):
439 (WebCore::HTMLSelectElement::notifyOptionSelected):
440 (WebCore::HTMLSelectElement::defaultEventHandler):
442 2006-10-04 Darin Adler <darin@apple.com>
446 - fix http://bugs.webkit.org/show_bug.cgi?id=11132
447 Caret disappears when you're typing
449 * editing/SelectionController.cpp:
450 (WebCore::SelectionController::setSelection): Remove unnecessary call to
451 clearCaretRectIfNeeded. The recomputeCaretRect now takes care of this.
452 (WebCore::SelectionController::recomputeCaretRect): Explicitly set m_needsLayout
453 to false so we can get the old caret repaint rect. Later we need to change the
454 design so getting the rect doesn't have a side effect of causing a layout without
457 2006-10-03 David Harrison <harrison@apple.com>
461 <rdar://problem/4671286> Candidate Window isn't displayed and only first candidate is displayed at typing location.
464 * fast/text/justified-text-rect.html
466 * bridge/mac/WebCoreFrameBridge.mm:
467 (-[WebCoreFrameBridge convertToNSRange:]):
468 (-[WebCoreFrameBridge convertToDOMRange:]):
469 Make the selection's root editable element (or the document itself) be
470 the basis for NSRange conversions. This supports "shadow DOM" like
471 that for text fields and text areas.
473 * editing/CompositeEditCommand.cpp:
474 (WebCore::CompositeEditCommand::moveParagraphs):
475 Pass the document element as the scope.
477 * editing/TextIterator.cpp:
478 (WebCore::TextIterator::rangeFromLocationAndLength):
479 Make the first parameter the scope.
481 * editing/TextIterator.h:
482 Make the first parameter of rangeFromLocationAndLength() the scope.
484 2006-10-03 Nikolas Zimmermann <zimmermann@kde.org>
490 * CMakeLists.txt: Add counter related files.
492 2006-10-03 Mark Rowe <bdash@webkit.org>
496 http://bugs.webkit.org/show_bug.cgi?id=10981
497 Linux/GDK build fixes
499 Based on a patch by Krzysztof Kowalczyk.
501 * WebCoreSources.bkl:
502 * platform/gdk/FrameGdk.cpp:
504 (WebCore::FrameGdk::handleGdkEvent):
505 * platform/gdk/PlatformScrollBar.h: Added.
506 (WebCore::PlatformScrollBar::isWidget):
507 * platform/gdk/ScrollViewGdk.cpp:
508 * platform/gdk/TemporaryLinkStubs.cpp:
509 (FrameView::passMousePressEventToScrollbar):
510 (FrameView::passMousePressEventToSubframe):
511 (FrameView::passMouseReleaseEventToSubframe):
512 (FrameView::passMouseMoveEventToSubframe):
513 (FrameView::passWheelEventToSubframe):
515 (Widget::invalidate):
516 (Widget::invalidateRect):
517 (ScrollView::wheelEvent):
518 (ScrollView::convertToContainingWindow):
519 (ScrollView::convertFromContainingWindow):
520 (GraphicsContext::clip):
521 (PlatformScrollBar::PlatformScrollBar):
522 (PlatformScrollBar::updateThumbPosition):
523 (PlatformScrollBar::updateThumbProportion):
524 (ScrollBar::ScrollBar):
525 (ScrollBar::setProportion):
526 (WebCore::supportedKeySizes):
527 (WebCore::signedPublicKeyAndChallengeString):
528 * platform/gdk/WheelEventGdk.cpp:
529 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
530 * platform/gdk/WidgetGdk.cpp:
531 (WebCore::Widget::convertToContainingWindow):
532 (WebCore::Widget::convertFromContainingWindow):
534 2006-10-02 Adam Roben <aroben@apple.com>
538 Let Windows determine which mouse button is pressed.
540 * platform/PlatformMouseEvent.h: Add message parameter to constructor.
541 * platform/win/MouseEventWin.cpp:
542 (WebCore::PlatformMouseEvent::PlatformMouseEvent): Use message
543 parameter to determine which mouse button is pressed.
545 2006-10-02 Justin Garcia <justin.garcia@apple.com>
551 * editing/SelectionController.cpp:
552 (WebCore::SelectionController::empty):
553 * editing/SelectionController.h:
555 2006-10-02 Justin Garcia <justin.garcia@apple.com>
559 <rdar://problem/4755287>
560 Writely Editor: Crash occurs at WebCore::maxDeepOffset(WebCore::Node const*) when attempting to create a OL/UL following a HR element
562 * editing/markup.cpp:
563 (WebCore::createMarkup): Migrate to isBlock (isBlockFlow is true for inline replaced
564 elements). Don't skip blocks that aren't containers (like horizontal rules).
566 2006-10-03 Darin Adler <darin@apple.com>
568 Reviewed by Justin Garcia.
570 - correct mistaken code that would restart blinking every
571 time "invalidateSelection" is called even if the caret
574 * editing/SelectionController.h:
575 * editing/SelectionController.cpp:
576 (WebCore::SelectionController::setSelection): Update for name change.
577 (WebCore::SelectionController::recomputeCaretRect): New function.
578 Computes caret rect and does any necessary invalidation if the rect
580 (WebCore::SelectionController::invalidateCaretRect): Renamed from
581 needsCaretRepaint. Invalidates the caret rect unconditionally. Also
582 calls recomputeCaretRect as a side effect.
585 (WebCore::Frame::invalidateSelection): Remove unneeded call to
586 clearCaretRectIfNeeded.
587 (WebCore::Frame::clearCaretRectIfNeeded): Updated for name change.
588 (WebCore::Frame::selectionLayoutChanged): Restructured to use the new
589 recomputeCaretRect function and not restart blinking if caret has
590 not changed position.
591 (WebCore::Frame::caretBlinkTimerFired): Removed some checks that
592 are not needed since selectionLayoutChanged already checks these.
594 * page/FramePrivate.h: Removed unused m_blinkCaret.
596 2006-10-02 Beth Dakin <bdakin@apple.com>
600 Build fix. Add counters to vcproj.
602 * WebCore.vcproj/WebCore/WebCore.vcproj:
604 2006-10-02 Brady Eidson <beidson@apple.com>
608 If the Icon DB schema changes underneath you, the latest ToT can crash and burn when writing
609 icon data out because we don't correctly check SQL error conditions.
611 * loader/icon/IconDataCache.cpp:
612 (WebCore::IconDataCache::writeToDatabase):
614 2006-10-02 Steve Falkenburg <sfalken@apple.com>
618 Added method to find out whether a layout has occurred.
620 * page/FrameView.cpp:
621 (WebCore::FrameView::didFirstLayout):
624 2006-10-02 Beth Dakin <bdakin@apple.com>
628 Initial implementation of CSS2 counters. See http://
629 bugs.webkit.org/show_bug.cgi?id=4980 for more details.
631 * WebCore.xcodeproj/project.pbxproj:
632 * css/CSSComputedStyleDeclaration.cpp:
633 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Return
634 the increment/reset list now that this is implemented.
635 * css/CSSPrimitiveValue.cpp:
636 (WebCore::CSSPrimitiveValue::cssText):
638 (WebCore::Counter::Counter):
639 (WebCore::Counter::~Counter):
640 (WebCore::Counter::identifier):
641 (WebCore::Counter::listStyle):
642 (WebCore::Counter::separator):
643 (WebCore::Counter::listStyleNumber):
644 (WebCore::Counter::setIdentifier):
645 (WebCore::Counter::setListStyle):
646 (WebCore::Counter::setSeparator):
648 (WebCore::CSSParser::addProperty): Take care of reset/increment
649 (WebCore::CSSParser::parseValue):
650 (WebCore::CSSParser::parseContent): content can now take counters
651 (WebCore::CSSParser::parseCounterContent): Parse counter() and
653 (WebCore::CSSParser::parseCounter): Parse counter-reset and
656 * css/cssstyleselector.cpp:
657 (WebCore::CSSStyleSelector::matchUARules):
658 (WebCore::CSSStyleSelector::applyProperty):
659 * platform/PlatformString.h:
660 * platform/String.cpp:
661 (WebCore::String::insert): Implemented a version of insert that
662 accepts a UChar* and a length.
663 * platform/StringImpl.cpp:
664 (WebCore::StringImpl::insert): Same as above.
665 * platform/StringImpl.h:
666 * rendering/CounterListItem.h: Added.
667 * rendering/CounterNode.cpp: Added.
668 (WebCore::CounterNode::CounterNode):
669 (WebCore::CounterNode::insertAfter):
670 (WebCore::CounterNode::removeChild):
671 (WebCore::CounterNode::remove):
672 (WebCore::CounterNode::setUsesSeparator):
673 (WebCore::CounterNode::recountAndGetNext):
674 (WebCore::CounterNode::recountTree):
675 (WebCore::CounterNode::setSelfDirty):
676 (WebCore::CounterNode::setParentDirty):
677 * rendering/CounterNode.h: Added.
678 (WebCore::CounterNode::~CounterNode):
679 (WebCore::CounterNode::parent):
680 (WebCore::CounterNode::previousSibling):
681 (WebCore::CounterNode::nextSibling):
682 (WebCore::CounterNode::firstChild):
683 (WebCore::CounterNode::lastChild):
684 (WebCore::CounterNode::value):
685 (WebCore::CounterNode::setValue):
686 (WebCore::CounterNode::count):
687 (WebCore::CounterNode::setCount):
688 (WebCore::CounterNode::setHasSeparator):
689 (WebCore::CounterNode::isReset):
690 (WebCore::CounterNode::hasSeparator):
691 (WebCore::CounterNode::willNeedLayout):
692 (WebCore::CounterNode::setWillNeedLayout):
693 (WebCore::CounterNode::isRoot):
694 (WebCore::CounterNode::setRenderer):
695 (WebCore::CounterNode::renderer):
696 * rendering/CounterResetNode.cpp: Added.
697 (WebCore::CounterResetNode::CounterResetNode):
698 (WebCore::CounterResetNode::insertAfter):
699 (WebCore::CounterResetNode::removeChild):
700 (WebCore::CounterResetNode::recountAndGetNext):
701 (WebCore::CounterResetNode::setParentDirty):
702 (WebCore::CounterResetNode::updateTotal):
703 * rendering/CounterResetNode.h: Added.
704 (WebCore::CounterResetNode::firstChild):
705 (WebCore::CounterResetNode::lastChild):
706 (WebCore::CounterResetNode::isReset):
707 (WebCore::CounterResetNode::total):
708 * rendering/RenderContainer.cpp:
709 (WebCore::RenderContainer::updatePseudoChildForObject): Account for
711 * rendering/RenderCounter.cpp: Added.
712 (WebCore::RenderCounter::RenderCounter):
713 (WebCore::RenderCounter::layout):
715 (WebCore::toLetterString):
717 (WebCore::RenderCounter::convertValueToType):
718 (WebCore::RenderCounter::calcMinMaxWidth):
719 * rendering/RenderCounter.h: Added.
720 (WebCore::RenderCounter::renderName):
721 (WebCore::RenderCounter::isCounter):
722 * rendering/RenderObject.cpp:
723 (WebCore::getRenderObjectsToCounterNodeMaps): Maps RenderObjects to
725 (WebCore::RenderObject::RenderObject):
726 (WebCore::RenderObject::destroy): Destroy the maps.
727 (WebCore::RenderObject::findCounter): Finds/creates counters.
728 * rendering/RenderObject.h:
729 (WebCore::RenderObject::isCounter):
730 * rendering/RenderStyle.cpp:
731 (WebCore::StyleVisualData::StyleVisualData):
732 (WebCore::RenderStyle::arenaDelete):
733 (WebCore::RenderStyle::RenderStyle):
734 (WebCore::RenderStyle::diff):
735 (WebCore::RenderStyle::setContent):
736 (WebCore::ContentData::clearContent):
737 (WebCore::RenderStyle::counterDataEquivalent):
738 (WebCore::hasCounter):
739 (WebCore::RenderStyle::hasCounterReset):
740 (WebCore::RenderStyle::hasCounterIncrement):
741 (WebCore::readCounter):
742 (WebCore::RenderStyle::counterReset):
743 (WebCore::RenderStyle::counterIncrement):
744 * rendering/RenderStyle.h:
745 (WebCore::StyleVisualData::operator==):
746 (WebCore::CounterData::CounterData):
747 (WebCore::CounterData::identifier):
748 (WebCore::CounterData::listStyle):
749 (WebCore::CounterData::separator):
750 (WebCore::ContentData::contentCounter):
751 (WebCore::ContentData::):
752 (WebCore::RenderStyle::counterIncrement):
753 (WebCore::RenderStyle::counterReset):
754 (WebCore::RenderStyle::setCounterIncrement):
755 (WebCore::RenderStyle::setCounterReset):
756 (WebCore::RenderStyle::setCounterResetList):
757 (WebCore::RenderStyle::setCounterIncrementList):
758 (WebCore::RenderStyle::counterResetValueList):
759 (WebCore::RenderStyle::counterIncrementValueList):
761 2006-10-02 Adele Peterson <adele@apple.com>
765 - Fix for <rdar://problem/4463841> Switch to use new list box implementation for <select multiple>
767 There are a few outstanding issues, so I've left the old code in for now. So you can use the old-style listboxes
768 by using "-webkit-appearance:none".
772 2006-10-02 David Harrison <harrison@apple.com>
774 Reverted the code part of r16696, my patch for <rdar://problem/4641262>, because the problem was
775 addressed at a deeper level by r16696, the patch for <http://bugs.webkit.org/show_bug.cgi?id=10842>.
776 Left the layout test.
778 * rendering/bidi.cpp:
779 (WebCore::checkMidpoints):
781 2006-10-02 Nikolas Zimmermann <zimmermann@kde.org>
783 Reviewed by eseidel. Landed by eseidel.
787 * platform/qt/TemporaryLinkStubs.cpp: s/DeprecatedStringList/Vector<String>/
788 (WebCore::supportedKeySizes):
790 2006-10-02 Nikolas Zimmermann <zimmermann@kde.org>
792 Reviewed by eseidel & mjs. Landed by eseidel.
794 Fix Qt/Linux build with older gcc 3.3.4.
795 http://bugs.webkit.org/show_bug.cgi?id=11116
797 As discussed with Maciej, the GCC_ROOT_NS_HACK
798 can be completely removed, as well as the friendship
799 between cacheGlobalObject & the JS* objects.
801 * bindings/scripts/CodeGeneratorJS.pm: Remove friendship.
802 * platform/image-decoders/png/pnggccrd.c: Fix comments for gcc3.
803 (png_read_filter_row_mmx_avg):
804 * platform/image-decoders/png/pngvcrd.c: Ditto.
806 (png_read_filter_row_mmx_avg):
808 2006-10-01 Maciej Stachowiak <mjs@apple.com>
810 Rubber stamped by Alexey.
812 - reverted fix for http://bugs.webkit.org/show_bug.cgi?id=10893 since it led to layout test crashes
816 2006-10-01 Eric Seidel <eric@webkit.org>
820 Eliminate a few more hotspots in SVG drawing code.
822 No test cases were harmed in the making of this patch. (And SVG has no perf tests.)
824 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
825 (WebCore::KRenderingPaintServerSolidQuartz::setup): use a single shared colorspace, avoid a few mallocs
826 * platform/mac/ColorMac.mm:
827 (+[WebCoreControlTintObserver WebCore]): store a single shared colorspace instance
829 2006-10-01 Geoffrey Garen <ggaren@apple.com>
833 More frame/iframe merging.
835 - Removed needWidgetUpdate and related code. needWidgetUpdate is always
836 false, so this was dead code.
837 - Removed FIXME about setInViewSourceMode inside openURL(). openURL(), rather
838 than attach(), is the correct place for setInViewSourceMode, because
839 openURL() is the function that creates our frame.
840 - Moved IFRAME insertedIntoDocument() code into FRAME, and removed FRAME
841 code that did the same thing in other places.
842 - Made FRAME's attach() method suffuciently generic so that IFRAME could
843 call up to it, rather than skipping its superclass and calling up directly
845 - Changed a few IFRAME up-calls to ELEMENT into up-calls to FRAME.
846 - Replaced ad hoc frame loading code in FRAME::attach() with call to
847 openURL(), the designated frame loading function.
849 Layout tests pass. I added a layout test for viewsource mode, since I
850 broke it in the course of writing this patch.
852 2006-10-01 Anders Carlsson <acarlsson@apple.com>
857 (WebCore::Document::recalcStyleSelector):
859 Get rid of availableStyleSheets() and remove DeprecatedStringList.h include.
862 Remove DeprecatedStringList class forward declaration.
864 * editing/markup.cpp:
865 Include DeprecatedStringList.h here since it's not included by Document.h anymore.
867 * kcanvas/KCanvasTreeDebug.cpp:
868 * kcanvas/KCanvasTreeDebug.h:
869 Remove unused functions.
875 Fixup DeprecatedStringList.h includes.
877 2006-09-30 David Harrison <harrison@apple.com>
879 Reviewed by John Sullivan.
881 <rdar://problem/4641262> REGRESSION: Japanese text corrupts on wrapping point
883 Problem was that the decision to trim was based only on whether the character
884 is a soft hyphen, which caused pretty much any Japanese character to go.
885 Changed to decide based on whether the character is ignorable whitespace.
888 * fast/text/international/wrap-CJK-001.html
890 * rendering/bidi.cpp:
891 (WebCore::isTrimmableChar):
892 New. Checks whether character is whitespace that can be ignored
893 according to the text node's style.
894 trimmed from the end of wrapped line.
895 (WebCore::checkMidpoints):
896 Call isTrimmable() rather than checking for char != SOFT_HYPHEN.
898 2006-10-01 Anders Carlsson <acarlsson@apple.com>
900 Reviewed by Mitz Pettel.
902 Convert the SVG code to use Vector<String> instead of DeprecatedStringList.
904 * ksvg2/svg/SVGColor.cpp:
905 (WebCore::SVGColor::setRGBColor):
906 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
907 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
908 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
909 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
910 (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
911 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
912 (SVGFESpecularLightingElement::parseMappedAttribute):
913 * ksvg2/svg/SVGFETurbulenceElement.cpp:
914 (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
915 * ksvg2/svg/SVGLengthList.cpp:
916 * ksvg2/svg/SVGNumberList.cpp:
917 (SVGNumberList::parse):
918 * ksvg2/svg/SVGNumberList.h:
919 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
920 (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
921 * ksvg2/svg/SVGStringList.cpp:
922 (WebCore::SVGStringList::reset):
923 * ksvg2/svg/SVGStringList.h:
924 * ksvg2/svg/SVGTransformable.cpp:
925 (SVGTransformable::parseTransformAttribute):
927 2006-10-01 Nikolas Zimmermann <zimmermann@kde.org>
929 Reviewed by Eric, tweaked and landed by ap.
934 * platform/qt/PlatformScrollBar.h:
935 * platform/qt/TemporaryLinkStubs.cpp:
936 (WebCore::ScrollBar::ScrollBar):
937 (WebCore::PlatformScrollBar::PlatformScrollBar):
938 (FrameView::passMousePressEventToSubframe):
939 (FrameView::passMouseMoveEventToSubframe):
940 (FrameView::passMouseReleaseEventToSubframe):
941 (FrameView::passWheelEventToSubframe):
942 (FrameView::passMousePressEventToScrollbar):
943 * ksvg2/svg/SVGDocument.h:
945 2006-10-01 Mitz Pettel <opendarwin.org@mitzpettel.com>
949 Fix for http://bugs.webkit.org/show_bug.cgi?id=10190
950 REGRESSION: Repro crash when navigating away from an image document that hasn't finished loading
952 No test case added (probably requires new DumpRenderTree functionality)
954 * rendering/RenderImage.cpp:
955 (WebCore::RenderImage::imageChanged): Added early return if the document is
958 2006-10-01 Graham Dennis <graham.dennis@gmail.com>
962 Fix for http://bugs.webkit.org/show_bug.cgi?id=10842
963 REGRESSION (r15418): contenteditable div truncates rightmost Japanese character
965 Make sure we only break after a space (and not any other valid line-break) if
966 the style is -webkit-line-break: after-white-space (e.g. for a contentEditable div).
967 I also did a logic shuffle at Mitz's request to prevent doing an if on the same expression
968 twice in quick succession.
970 * rendering/bidi.cpp:
971 (WebCore::RenderBlock::findNextLineBreak):
973 2006-10-01 Alexey Proskuryakov <ap@nypop.com>
975 Reviewed by Maciej and Darin.
977 http://bugs.webkit.org/show_bug.cgi?id=4372
978 JavaScript document.write page form does not submit in Safari
980 Test: fast/forms/document-write.html
983 (WebCore::Frame::submitForm): Don't check for parsing().
985 2006-10-01 Alexey Proskuryakov <ap@nypop.com>
989 * bridge/mac/FrameViewMac.mm: Add missing #imports.
991 2006-10-01 Dave Hyatt <hyatt@apple.com>
993 Refactor the code that passes mouse presses to the Mac scrollbar and make it cross-platform.
997 * bridge/mac/FrameMac.mm:
998 (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
999 * bridge/mac/FrameViewMac.mm:
1000 (WebCore::FrameView::passMousePressEventToScrollbar):
1001 * page/FrameView.cpp:
1002 (WebCore::FrameView::handleMousePressEvent):
1003 (WebCore::FrameView::setMousePressed):
1005 * platform/win/TemporaryLinkStubs.cpp:
1006 (FrameView::passMousePressEventToScrollbar):
1008 2006-09-30 Sam Weinig <sam.weinig@gmail.com>
1012 Patch for http://bugs.webkit.org/show_bug.cgi?id=11102
1013 Add more SVG Objective-C DOM bindings
1015 - Auto-generate Objective-C DOM bindings for DOMSVGAElement,
1016 DOMSVGAnimateColorElement, DOMSVGAnimateElement, DOMSVGAnimateTransformElement,
1017 DOMSVGAnimatedPathData, DOMSVGAnimatedPoints, DOMSVGAnimatedPreserveAspectRatio,
1018 DOMSVGAnimationElement, DOMSVGCircleElement, DOMSVGClipPathElement, DOMSVGColor,
1019 DOMSVGCursorElement, DOMSVGDefsElement, DOMSVGDescElement, DOMSVGDocument,
1020 DOMSVGEllipseElement, DOMSVGPreserveAspectRatio, and DOMSVGURIReference.
1022 * DerivedSources.make:
1023 * WebCore.xcodeproj/project.pbxproj:
1024 * bindings/objc/DOMInternal.h:
1025 * bindings/objc/DOMSVG.h:
1026 * bindings/scripts/CodeGeneratorObjC.pm:
1027 * ksvg2/svg/SVGAElement.idl:
1028 * ksvg2/svg/SVGAnimateColorElement.idl:
1029 * ksvg2/svg/SVGAnimateElement.idl:
1030 * ksvg2/svg/SVGAnimateTransformElement.idl:
1031 * ksvg2/svg/SVGAnimatedPathData.idl:
1032 * ksvg2/svg/SVGAnimatedPoints.idl:
1033 * ksvg2/svg/SVGAnimatedPreserveAspectRatio.idl:
1034 * ksvg2/svg/SVGAnimationElement.idl:
1035 * ksvg2/svg/SVGCircleElement.idl:
1036 * ksvg2/svg/SVGClipPathElement.idl:
1037 * ksvg2/svg/SVGColor.idl:
1038 * ksvg2/svg/SVGCursorElement.idl:
1039 * ksvg2/svg/SVGDefsElement.idl:
1040 * ksvg2/svg/SVGDescElement.idl:
1041 * ksvg2/svg/SVGDocument.idl:
1042 * ksvg2/svg/SVGEllipseElement.idl:
1043 * ksvg2/svg/SVGPointList.idl:
1044 * ksvg2/svg/SVGPreserveAspectRatio.idl:
1045 * ksvg2/svg/SVGRect.idl:
1046 * ksvg2/svg/SVGSVGElement.idl:
1048 2006-09-30 Maciej Stachowiak <mjs@apple.com>
1054 * platform/FloatRect.h:
1055 (WebCore::FloatRect::contains): Added; not exactly the same semantic as IntRect containment
1056 but more appropriate for path-type stuff.
1057 * platform/cg/PathCG.cpp:
1058 (WebCore::Path::contains): Don't use enclosingIntRect, just use FloatRect::contains.
1060 2006-09-30 Alexey Proskuryakov <ap@nypop.com>
1064 http://bugs.webkit.org/show_bug.cgi?id=11011
1065 External CSS is parsed as iso-8859-1 even though the main document is utf-8
1067 Test: fast/encoding/css-charset-default.xhtml
1069 * loader/CachedResourceClient.h:
1070 (WebCore::CachedResourceClient::setCSSStyleSheet):
1071 (WebCore::CachedResourceClient::setXSLStyleSheet):
1072 Divided setStyleSheet into setCSSStyleSheet and setXSLStyleSheet. The former
1073 takes an additional charset parameter, to be passed to CSSStyleSheet constructor.
1075 * css/CSSImportRule.cpp:
1076 (WebCore::CSSImportRule::setCSSStyleSheet):
1077 (WebCore::CSSImportRule::insertedIntoParent): Default to parent stylesheet's charset.
1078 * css/CSSImportRule.h:
1080 * css/CSSStyleSheet.cpp:
1081 (WebCore::CSSStyleSheet::CSSStyleSheet):
1082 * css/CSSStyleSheet.h:
1083 Added an m_charset member to be used when loading child stylesheets. Removed an unused m_implicit
1084 member. Changed some String parameters to const String&.
1086 * css/StyleSheet.cpp:
1087 (WebCore::StyleSheet::StyleSheet):
1089 Changed some String parameters to const String&. Removed an unused (even unimplemented) constructor.
1091 * css/StyleSheetList.cpp:
1092 (WebCore::StyleSheetList::length):
1093 (WebCore::StyleSheetList::item):
1094 * css/StyleSheetList.h:
1095 Special-casing implicit stylesheets seemed to be dead code, removed.
1098 (WebCore::Document::setCSSStyleSheet):
1099 (WebCore::Document::recalcStyleSelector):
1101 Renamed setStyleSheet() to setCSSStyleSheet().
1103 * dom/ProcessingInstruction.cpp:
1104 (WebCore::ProcessingInstruction::checkStyleSheet): Pass a correct charset to requestCSSStyleSheet().
1105 (WebCore::ProcessingInstruction::setCSSStyleSheet):
1106 (WebCore::ProcessingInstruction::setXSLStyleSheet):
1107 (WebCore::ProcessingInstruction::parseStyleSheet):
1108 * dom/ProcessingInstruction.h:
1110 * html/HTMLLinkElement.cpp:
1111 (WebCore::HTMLLinkElement::process): Default to document encoding if a charset attribute
1113 (WebCore::HTMLLinkElement::setCSSStyleSheet):
1114 * html/HTMLLinkElement.h:
1116 * html/HTMLStyleElement.cpp:
1117 (WebCore::HTMLStyleElement::childrenChanged):
1118 * ksvg2/svg/SVGStyleElement.cpp:
1119 (WebCore::SVGStyleElement::childrenChanged):
1120 Inherit URL and charset from the document.
1123 (WebCore::Cache::requestCSSStyleSheet):
1125 Adjust for setStyleSheet() renaming.
1127 * loader/CachedCSSStyleSheet.h: Removed an unused constructor.
1128 * loader/CachedCSSStyleSheet.cpp:
1129 (WebCore::CachedCSSStyleSheet::ref):
1130 (WebCore::CachedCSSStyleSheet::deref):
1131 (WebCore::CachedCSSStyleSheet::checkNotify):
1132 Pass the encoding to setCSSStyleSheet().
1134 * loader/CachedXSLStyleSheet.cpp:
1135 (WebCore::CachedXSLStyleSheet::ref):
1136 (WebCore::CachedXSLStyleSheet::checkNotify):
1137 * loader/DocLoader.cpp:
1138 (WebCore::DocLoader::requestCSSStyleSheet):
1139 * loader/DocLoader.h:
1141 (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
1142 (WebCore::UserStyleSheetLoader::setCSSStyleSheet):
1143 * xml/XSLImportRule.cpp:
1144 (WebCore::XSLImportRule::setXSLStyleSheet):
1145 (WebCore::XSLImportRule::loadSheet):
1146 * xml/XSLImportRule.h:
1147 Adjust for setStyleSheet() renaming.
1149 2006-09-30 Rob Buis <buis@kde.org>
1151 Reviewed by eseidel.
1153 http://bugs.webkit.org/show_bug.cgi?id=11096
1154 Hit testing for polylines fails
1156 Fix Path::contains so it handles filled, non-closed paths too.
1158 * platform/cg/PathCG.cpp:
1159 (WebCore::Path::contains):
1161 2006-09-30 Dave Hyatt <hyatt@apple.com>
1163 Refactor subframe event handling to hide more of the Mac-specific logic from the cross-platform code.
1164 Stub out a capturing API that mimics the way Web browsers capture events and route them to specific
1165 subframes while the mouse is down.
1167 Reviewed by mitzpettel
1169 * bridge/mac/FrameMac.h:
1170 * bridge/mac/FrameMac.mm:
1171 (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
1172 (WebCore::FrameMac::passWheelEventToWidget):
1173 * bridge/mac/FrameViewMac.mm:
1174 (WebCore::FrameView::passMousePressEventToSubframe):
1175 (WebCore::FrameView::passMouseMoveEventToSubframe):
1176 (WebCore::FrameView::passMouseReleaseEventToSubframe):
1177 (WebCore::FrameView::passWheelEventToSubframe):
1180 * page/FrameView.cpp:
1181 (WebCore::subframeForTargetNode):
1182 (WebCore::FrameView::handleMousePressEvent):
1183 (WebCore::FrameView::handleMouseDoubleClickEvent):
1184 (WebCore::FrameView::handleMouseMoveEvent):
1185 (WebCore::FrameView::handleMouseReleaseEvent):
1186 (WebCore::FrameView::handleWheelEvent):
1188 * platform/ScrollBar.h:
1189 (WebCore::ScrollBar::handleMouseMoveEvent):
1190 (WebCore::ScrollBar::handleMouseOutEvent):
1191 * platform/Widget.h:
1192 (WebCore::Widget::handleMouseMoveEvent):
1193 (WebCore::Widget::handleMouseReleaseEvent):
1194 * platform/win/TemporaryLinkStubs.cpp:
1195 (FrameView::passMousePressEventToSubframe):
1196 (FrameView::passMouseMoveEventToSubframe):
1197 (FrameView::passMouseReleaseEventToSubframe):
1198 (FrameView::passWheelEventToSubframe):
1199 (Widget::capturingMouse):
1200 (Widget::setCapturingMouse):
1201 (Widget::capturingTarget):
1202 (Widget::capturingChild):
1203 (Widget::setCapturingChild):
1204 * rendering/RenderView.cpp:
1205 (WebCore::RenderView::paintBoxDecorations):
1207 2006-09-29 MorganL <morganl.webkit@yahoo.com>
1211 Fixes windows bustage:
1212 http://bugs.webkit.org/show_bug.cgi?id=11093
1214 * platform/win/PlatformScrollBar.h:
1215 * platform/win/TemporaryLinkStubs.cpp:
1216 (PlatformScrollBar::PlatformScrollBar):
1217 (ScrollBar::ScrollBar):
1219 2006-09-29 David Hyatt <hyatt@apple.com>
1221 Eliminate RenderLayer::gScrollBar in favor of caching the scrollbar hit
1222 in RenderObject::NodeInfo (and then propagating that Widget to
1223 MouseEventWithHitTestResults).
1225 This allows RenderListBox and RenderBlock to do the same thing when the
1226 mouse is over the scrollbar.
1228 Also land fix to support font-size: 0.
1230 Reviewed by mjs (scrollbar), eric (font-size)
1233 (WebCore::Document::prepareMouseEvent):
1235 (WebCore::Frame::passWidgetMouseDownEventToWidget):
1236 * page/FrameView.cpp:
1237 (WebCore::selectCursor):
1238 (WebCore::FrameView::handleMouseMoveEvent):
1239 (WebCore::FrameView::dispatchMouseEvent):
1240 * page/MouseEventWithHitTestResults.cpp:
1241 (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
1242 * page/MouseEventWithHitTestResults.h:
1243 (WebCore::MouseEventWithHitTestResults::scrollbar):
1244 * rendering/RenderBlock.cpp:
1245 (WebCore::RenderBlock::isPointInScrollbar):
1246 (WebCore::RenderBlock::nodeAtPoint):
1247 * rendering/RenderBlock.h:
1248 * rendering/RenderLayer.cpp:
1249 (WebCore::RenderLayer::hitTest):
1250 * rendering/RenderLayer.h:
1251 (WebCore::RenderLayer::getHiddenBehavior):
1252 * rendering/RenderListBox.cpp:
1253 (WebCore::RenderListBox::RenderListBox):
1254 (WebCore::RenderListBox::~RenderListBox):
1255 (WebCore::RenderListBox::isPointInScrollbar):
1256 * rendering/RenderListBox.h:
1257 * rendering/RenderObject.h:
1258 (WebCore::RenderObject::NodeInfo::NodeInfo):
1259 (WebCore::RenderObject::NodeInfo::scrollbar):
1260 (WebCore::RenderObject::NodeInfo::setScrollbar):
1262 2006-09-29 MorganL <morganl.webkit@yahoo.com>
1266 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11092
1268 * platform/win/ScrollViewWin.cpp:
1269 (WebCore::ScrollView::convertToContainingWindow):
1270 (WebCore::ScrollView::convertFromContainingWindow):
1271 * platform/win/WidgetWin.cpp:
1272 (WebCore::Widget::convertToContainingWindow):
1273 (WebCore::Widget::convertFromContainingWindow):
1275 2006-09-29 Adele Peterson <adele@apple.com>
1277 Updated with new argument for PlatformScrollBar.
1279 * platform/win/TemporaryLinkStubs.cpp:
1280 (PlatformScrollBar::PlatformScrollBar):
1282 2006-09-29 Adele Peterson <adele@apple.com>
1286 Fixing build bustage with cast to int.
1288 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::lastSelectedListIndex):
1290 2006-09-29 Adele Peterson <adele@apple.com>
1292 Fixing accidental include.
1294 * rendering/RenderListBox.cpp:
1296 2006-09-29 Adele Peterson <adele@apple.com>
1298 Adding RenderListBox files.
1300 * WebCore.vcproj/WebCore/WebCore.vcproj:
1302 2006-09-29 Adele Peterson <adele@apple.com>
1306 Initial implementation of engine-based list box control.
1308 * WebCore.xcodeproj/project.pbxproj: Added RenderListBox.h and RenderListBox.cpp
1310 * bridge/mac/FrameMac.h: Added _mouseDownMayStartAutoscroll.
1311 * bridge/mac/FrameMac.mm: Updated autoscroll code to use renderers instead of layers, so any renderer that implements autoscroll will work.
1312 (WebCore::FrameMac::FrameMac):
1313 (WebCore::FrameMac::handleMousePressEvent):
1314 (WebCore::FrameMac::handleMouseMoveEvent):
1315 (WebCore::FrameMac::mouseDown):
1318 (WebCore::Frame::handleMouseMoveEvent):
1319 (WebCore::Frame::scrollOverflow): Don't scroll list box here- this would cause arrow keys to scroll instead of select.
1320 (WebCore::Frame::handleAutoscroll): Updated to use a renderer instead of a layer when setting up autoscroll.
1321 (WebCore::Frame::autoscrollTimerFired): ditto.
1322 (WebCore::Frame::stopAutoscrollTimer): ditto.
1323 (WebCore::Frame::passWidgetMouseDownEventToWidget): Updated to check for list box's scroll bar.
1325 * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): Updated to use renderer unstead of layer for autoscroll.
1327 * page/FrameView.cpp: Keep track of current mouse position so this can be used for list box autoscroll.
1328 (WebCore::FrameViewPrivate::reset):
1329 (WebCore::FrameView::currentMousePosition):
1330 (WebCore::FrameView::handleMousePressEvent):
1331 (WebCore::FrameView::handleMouseDoubleClickEvent):
1332 (WebCore::selectCursor):
1333 (WebCore::FrameView::handleMouseMoveEvent):
1334 (WebCore::FrameView::handleMouseReleaseEvent):
1337 * platform/ScrollBar.cpp: (WebCore::ScrollBar::ScrollBar): Added controlSize argument. The list box will use a smaller scroll bar size.
1338 * platform/ScrollBar.h:
1340 (WebCore::ScrollBar::controlSize):
1341 * platform/mac/PlatformScrollBar.h:
1342 * platform/mac/PlatformScrollBarMac.mm:
1343 (NSControlSizeForScrollBarControlSize):
1344 (-[WebCoreScrollBar initWithPlatformScrollBar:]):
1345 (WebCore::PlatformScrollBar::PlatformScrollBar):
1347 * rendering/RenderBlock.h:
1348 * rendering/RenderLayer.cpp: (WebCore::RenderLayer::createScrollbar): Updated to pass regular control size to scrollbar constructor.
1349 * rendering/RenderLayer.h:
1350 * rendering/RenderObject.cpp:
1351 (WebCore::RenderObject::shouldAutoscroll):
1352 (WebCore::RenderObject::autoscroll):
1353 * rendering/RenderObject.h: (WebCore::RenderObject::isListBox):
1355 * css/html4.css: Added properties for new list boxes.
1357 * html/HTMLOptionElement.cpp:
1358 (WebCore::HTMLOptionElement::setSelected): Doesn't allow selection to be changed here if the option is disabled.
1359 (WebCore::HTMLOptionElement::disabled): Added. Checks the parent's disabled status.
1360 * html/HTMLOptionElement.h: Added disabled method.
1362 * html/HTMLSelectElement.cpp: Added appearance switch for new list box implementation.
1363 (WebCore::HTMLSelectElement::recalcStyle):
1364 (WebCore::HTMLSelectElement::lastSelectedListIndex):
1365 (WebCore::HTMLSelectElement::deselectItems):
1366 (WebCore::HTMLSelectElement::setSelectedIndex):
1367 (WebCore::HTMLSelectElement::isKeyboardFocusable):
1368 (WebCore::HTMLSelectElement::isMouseFocusable):
1369 (WebCore::HTMLSelectElement::createRenderer):
1370 (WebCore::HTMLSelectElement::recalcListItems):
1371 (WebCore::HTMLSelectElement::setRecalcListItems):
1372 (WebCore::HTMLSelectElement::reset):
1373 (WebCore::HTMLSelectElement::notifyOptionSelected):
1374 (WebCore::HTMLSelectElement::defaultEventHandler): Added code to select options for list box when clicking and using arrow keys.
1375 (WebCore::HTMLSelectElement::nextSelectableListIndex):
1376 (WebCore::HTMLSelectElement::previousSelectableListIndex):
1377 * html/HTMLSelectElement.h:
1379 * rendering/RenderTheme.cpp: Added support for ListBoxAppearance
1380 (WebCore::RenderTheme::paint):
1381 (WebCore::RenderTheme::paintBorderOnly):
1382 (WebCore::RenderTheme::paintDecorations):
1383 (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
1384 (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
1385 (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
1386 (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
1387 (WebCore::RenderTheme::isControlStyled):
1388 (WebCore::RenderTheme::supportsFocusRing):
1389 * rendering/RenderTheme.h:
1390 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::isControlStyled):
1392 * rendering/RenderListBox.cpp: Added.
1393 (WebCore::RenderListBox::RenderListBox):
1394 (WebCore::RenderListBox::~RenderListBox):
1395 (WebCore::RenderListBox::setStyle):
1396 (WebCore::RenderListBox::updateFromElement):
1397 (WebCore::RenderListBox::calcMinMaxWidth):
1398 (WebCore::RenderListBox::size):
1399 (WebCore::RenderListBox::numItems):
1400 (WebCore::RenderListBox::calcHeight):
1401 (WebCore::RenderListBox::baselinePosition):
1402 (WebCore::RenderListBox::itemBoundingBoxRect):
1403 (WebCore::RenderListBox::paintObject):
1404 (WebCore::RenderListBox::paintScrollbar):
1405 (WebCore::RenderListBox::paintItemForeground):
1406 (WebCore::RenderListBox::paintItemBackground):
1407 (WebCore::RenderListBox::scrollBarTarget):
1408 (WebCore::RenderListBox::isPointInScrollbar):
1409 (WebCore::RenderListBox::optionAtPoint):
1410 (WebCore::RenderListBox::autoscroll):
1411 (WebCore::RenderListBox::scrollToRevealElementAtListIndex):
1412 (WebCore::RenderListBox::scroll):
1413 (WebCore::RenderListBox::valueChanged):
1414 * rendering/RenderListBox.h: Added.
1415 (WebCore::RenderListBox::isListBox):
1416 (WebCore::RenderListBox::selectionChanged):
1417 (WebCore::RenderListBox::setSelectionChanged):
1418 (WebCore::RenderListBox::canHaveChildren):
1419 (WebCore::RenderListBox::renderName):
1420 (WebCore::RenderListBox::setOptionsChanged):
1421 (WebCore::RenderListBox::shouldAutoscroll):
1422 (WebCore::RenderListBox::listIndexIsVisible):
1424 2006-09-29 Beth Dakin <bdakin@apple.com>
1428 We had a bug where html4.css was ignoring Media Queries. In the end
1429 the problem was that we were trying to send a char* to the
1430 MediaQueryEvaluator constructor that expects a String, but the
1431 char* got interpreted as a bool, the wrong constructor was called,
1432 and the media type was never set.
1434 No test case possible since this only affects html4.css
1436 * css/MediaQueryEvaluator.cpp: New constructor that expects takes a
1438 (WebCore::MediaQueryEvaluator):
1439 * css/MediaQueryEvaluator.h: Same.
1441 2006-09-29 Geoffrey Garen <ggaren@apple.com>
1443 Reviewed by John, Maciej.
1445 Integrated some frame and iframe code. I'm trying to fix up frame ownership
1446 and loading. Reducing the number of different code paths involved
1447 seemed like a good first step.
1449 As a side effect, I fixed a bug where FRAME elements would report their
1450 src attributes as relative, rather than compelete, URLs. (IFRAME elements
1451 had the correct complete URL behavior.)
1453 * html/HTMLFrameElement.cpp:
1454 (WebCore::HTMLFrameElement::isURLAllowed): Fixed comment typo
1455 (WebCore::HTMLFrameElement::openURL):
1456 (1) Removed checks that requestFrame does for us
1457 (2) Added isURLAllowed check, to have one clear bottleneck for it
1458 (3) Added viewsource check, to have one clear bottleneck for it
1459 (WebCore::HTMLFrameElement::close): Changed to use the common contentFrame()
1460 method, instead of finding our content frame in our own unique way.
1461 (WebCore::HTMLFrameElement::setLocation): Removed isURLAllowed check,
1462 since openURL does this for us now.
1463 (WebCore::HTMLFrameElement::src): Return complete URL instead of relative.
1464 This is what FF does, and it made no sense to have different behaviors
1465 for FRAME and IFRAME elements.
1466 * html/HTMLIFrameElement.cpp:
1467 (WebCore::HTMLIFrameElement::HTMLIFrameElement): Removed duplicate init
1469 * html/HTMLIFrameElement.h: Removed src() and openURL() methods, since
1470 HTMLFrameElement now does everything we need.
1472 2006-09-30 Nikolas Zimmermann <zimmermann@kde.org>
1479 * platform/qt/ScrollViewQt.cpp:
1480 (WebCore::ScrollView::convertToContainingWindow):
1481 (WebCore::ScrollView::convertFromContainingWindow):
1482 * platform/qt/TemporaryLinkStubs.cpp:
1483 (WebCore::signedPublicKeyAndChallengeString):
1484 * platform/qt/WidgetQt.cpp:
1485 (WebCore::Widget::convertToContainingWindow):
1486 (WebCore::Widget::convertFromContainingWindow):
1488 2006-09-29 Sam Weinig <sam.weinig@gmail.com>
1492 Patch for http://bugs.webkit.org/show_bug.cgi?id=11082
1493 Simplify Internal methods for the auto-generated Objective-C DOM code
1495 - Auto-generate the internal methods for more Objective-C classes.
1497 * WebCore.xcodeproj/project.pbxproj:
1498 * bindings/objc/DOM.mm:
1499 * bindings/objc/DOMCSS.mm:
1500 (-[DOMStyleSheet WebCore::]):
1501 (+[DOMStyleSheet _styleSheetWith:WebCore::]):
1502 (-[DOMCSSRule WebCore::]):
1503 (-[DOMCSSRule _initWithCSSRule:WebCore::]):
1504 (+[DOMCSSRule _CSSRuleWith:WebCore::]):
1505 (-[DOMCSSValue WebCore::]):
1506 (-[DOMCSSValue _initWithCSSValue:WebCore::]):
1507 (+[DOMCSSValue _CSSValueWith:WebCore::]):
1508 * bindings/objc/DOMHTMLAppletElement.mm:
1509 (-[DOMHTMLAppletElement WebCore::]):
1510 (+[DOMHTMLAppletElement _HTMLOptionElementWith:WebCore::]):
1511 * bindings/objc/DOMHTMLEmbedElement.mm:
1512 (-[DOMHTMLEmbedElement WebCore::]):
1513 (+[DOMHTMLEmbedElement _HTMLEmbedElementWith:WebCore::]):
1514 * bindings/objc/DOMInternal.h:
1515 * bindings/objc/DOMInternal.mm:
1516 * bindings/scripts/CodeGeneratorObjC.pm:
1517 * css/CSSCharsetRule.idl:
1518 * css/CSSFontFaceRule.idl:
1519 * css/CSSImportRule.idl:
1520 * css/CSSMediaRule.idl:
1521 * css/CSSPageRule.idl:
1522 * css/CSSPrimitiveValue.idl:
1523 * css/CSSStyleRule.idl:
1524 * css/CSSStyleSheet.idl:
1525 * css/CSSUnknownRule.idl:
1526 * css/CSSValueList.idl:
1527 * dom/KeyboardEvent.idl:
1528 * dom/MouseEvent.idl:
1529 * dom/MutationEvent.idl:
1530 * dom/NodeIterator.idl:
1531 * dom/OverflowEvent.idl:
1533 * dom/WheelEvent.idl:
1535 2006-09-29 David Harrison <harrison@apple.com>
1537 Reviewed by John Sullivan.
1539 <rdar://problem/4663772> REGRESSION: Cannot type in Japanese after replying to a particular message
1540 <rdar://problem/4673293> REGRESSION: Can't enter the Japanese characters in Mail or Blot
1543 * fast/text/attributed-substring-from-range-001.html
1545 * bridge/mac/FrameMac.mm:
1546 (WebCore::FrameMac::attributedString):
1547 Handle non-zero offsets when start and/or end node is a container. Offset used to be ignored in this case.
1548 Also, add validation of the range.
1550 2006-09-29 Rob Buis <buis@kde.org>
1554 http://bugs.webkit.org/show_bug.cgi?id=10893
1555 InsertRule can not handle @import statements
1557 Allow @import as part of a css rule.
1561 2006-09-28 David Hyatt <hyatt@apple.com>
1563 Switch over the Mac-specific uses of viewportToContents/contentsToViewport.
1565 * bridge/mac/FrameMac.mm:
1566 (WebCore::FrameMac::eventMayStartDrag):
1567 (WebCore::FrameMac::dragHysteresisExceeded):
1568 (WebCore::FrameMac::mouseDown):
1569 (WebCore::FrameMac::shouldDragAutoNode):
1570 (WebCore::FrameMac::sendContextMenuEvent):
1571 * bridge/mac/WebCoreFrameBridge.mm:
1572 (-[WebCoreFrameBridge _visiblePositionForPoint:]):
1574 2006-09-28 Dave Hyatt <hyatt@apple.com>
1576 This patch eliminates viewportToContents/contentsToViewport in favor of convertTo/FromContainingWindow.
1577 ScrollView now subclasses these methods to factor in its scrollOffset and to deal with the document
1580 Reviewed by mjs (the convertTo/From changes), (I added the elimination of viewportToContents to
1581 the patch after review, once I realized that these new functions essentially do the same thing.)
1583 * dom/EventTargetNode.cpp:
1584 (WebCore::EventTargetNode::dispatchMouseEvent):
1585 (WebCore::EventTargetNode::dispatchWheelEvent):
1587 (WebCore::Frame::selectClosestWordFromMouseEvent):
1588 (WebCore::Frame::handleMousePressEventTripleClick):
1589 (WebCore::Frame::handleMousePressEventSingleClick):
1590 (WebCore::Frame::handleMouseMoveEvent):
1591 (WebCore::Frame::handleMouseReleaseEvent):
1592 * page/FrameView.cpp:
1593 (WebCore::FrameView::handleMousePressEvent):
1594 (WebCore::selectCursor):
1595 (WebCore::FrameView::dispatchDragEvent):
1596 (WebCore::FrameView::prepareMouseEvent):
1597 (WebCore::FrameView::handleWheelEvent):
1598 * platform/ScrollView.h:
1599 * platform/Widget.cpp:
1600 (WebCore::Widget::convertToContainingWindow):
1601 * platform/Widget.h:
1602 * platform/mac/ScrollViewMac.mm:
1603 (WebCore::ScrollView::convertToContainingWindow):
1604 (WebCore::ScrollView::convertFromContainingWindow):
1605 * platform/mac/WidgetMac.mm:
1606 (WebCore::Widget::convertToContainingWindow):
1607 (WebCore::Widget::convertFromContainingWindow):
1608 * platform/win/ScrollViewWin.cpp:
1609 (WebCore::ScrollView::convertToContainingWindow):
1610 (WebCore::ScrollView::convertFromContainingWindow):
1611 * rendering/RenderLayer.cpp:
1612 (WebCore::RenderLayer::resize):
1614 2006-09-28 Alice Liu <alice.liu@apple.com>
1616 Build fix by adding missing files for CommandByName
1618 * WebCore.xcodeproj/project.pbxproj:
1620 2006-09-28 Alice Liu <alice.liu@apple.com>
1622 Adding CommandByName files to the vcproj
1624 * WebCore.vcproj/WebCore/WebCore.vcproj:
1626 2006-09-28 Alice Liu <alice.liu@apple.com>
1628 Reviewed by Adam Roben.
1630 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.
1631 This patch also exposes some UBRK-related utilities so that they can be used elsewhere.
1632 This patch also changes windows PlatformMouseEvent so that we can detect multiple-click mouse events
1634 * editing/CommandByName.cpp: Added.
1635 Added a command class that hangs off the frame so the frame can call commands more easily.
1636 (WebCore::Frame::commandImp):
1637 (WebCore::Frame::execCopy):
1638 (WebCore::Frame::execCut):
1639 (WebCore::Frame::execDelete):
1640 (WebCore::Frame::execForwardDelete):
1641 (WebCore::Frame::execPaste):
1642 (WebCore::Frame::execMoveLeft):
1643 (WebCore::Frame::execMoveRight):
1644 (WebCore::Frame::execMoveUp):
1645 (WebCore::Frame::execMoveDown):
1646 (WebCore::Frame::execSelectAll):
1647 (WebCore::Frame::execSelectLeft):
1648 (WebCore::Frame::execSelectRight):
1649 (WebCore::Frame::execSelectUp):
1650 (WebCore::Frame::execSelectDown):
1651 (WebCore::Frame::enabled):
1652 (WebCore::Frame::enabledAnySelection):
1653 (WebCore::Frame::enabledAnyEditableSelection):
1654 (WebCore::Frame::enabledPaste):
1655 (WebCore::Frame::enabledAnyRangeSelection):
1656 (WebCore::Frame::enabledAnyEditableRangeSelection):
1657 (WebCore::Frame::createCommandDictionary):
1658 (WebCore::Frame::Command::):
1659 (WebCore:::m_frame):
1660 (WebCore::CommandByName::execCommand):
1661 * editing/CommandByName.h: Added.
1663 Added implementation of accessor for CommandByName member
1664 (WebCore::Frame::command):
1666 Added accessor for CommandByName member
1667 * page/FramePrivate.h:
1668 Added a CommandByName member
1669 (WebCore::FramePrivate::FramePrivate):
1670 * platform/PlatformMouseEvent.h:
1671 Changed constructor prototype
1672 * platform/StringImpl.cpp:
1673 Exposing getWordBreakIterator to be used elsewhere
1674 (WebCore::getWordBreakIterator):
1675 * platform/StringImpl.h:
1676 Exposing getWordBreakIterator to be used elsewhere
1677 * platform/win/MouseEventWin.cpp:
1678 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
1679 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1681 2006-09-28 Adam Roben <aroben@apple.com>
1685 Remove no-longer-used PopUpButton.
1687 * WebCore.vcproj/WebCore/WebCore.vcproj: Remove PopUpButton.h
1688 * WebCore.xcodeproj/project.pbxproj: Remove PopUpButton.h,
1690 * platform/PopUpButton.h: Removed.
1691 * platform/mac/PopUpButtonMac.mm: Removed.
1692 * platform/win/TemporaryLinkStubs.cpp: Remove PopUpButton:: methods
1693 * rendering/DeprecatedRenderSelect.cpp: Change #include of
1694 PopUpButton.h to ListBox.h
1696 2006-09-28 Darin Adler <darin@apple.com>
1700 - change that should fix <rdar://problem/4733044> REGRESSION: XML iBench shows
1701 10% perf. regression (copying strings while decoding)
1703 Use Vector<UChar> instead of String when building up the decoded string in
1704 the ICU and Mac decoders. Using String leads to O(n^2) behavior because
1705 String grows the buffer every single time that append is called. Using
1706 Vector::append instead of String::append also avoids constructing a string
1707 each time just to append and a questionable copy that is done inside the
1708 String::append function which also contributed to the slowness.
1710 * platform/PlatformString.h:
1711 * platform/String.cpp: (WebCore::String::adopt): Added. Makes a String from a
1712 Vector<UChar>, adopting the buffer from the vector to avoid copying and memory
1714 * platform/StringImpl.h:
1715 * platform/StringImpl.cpp: (WebCore::StringImpl::adopt): Ditto.
1717 * platform/StreamingTextDecoder.h:
1718 * platform/StreamingTextDecoder.cpp: (WebCore::TextCodec::appendOmittingBOM):
1719 Change to use a Vector<UChar> instead of a String, since vectors have better
1720 resizing performance (they store a separate capacity).
1722 * platform/StreamingTextDecoderICU.cpp: (WebCore::TextCodecICU::decode):
1723 * platform/mac/StreamingTextDecoderMac.cpp: (WebCore::TextCodecMac::decode):
1724 Change to use Vector<UChar> instead of String and then create a string at
1725 the end of the process using the new adopt function.
1727 2006-09-28 Sam Weinig <sam.weinig@gmail.com>
1731 Patch for http://bugs.webkit.org/show_bug.cgi?id=11057
1732 Auto-generate more SVG Objective-C bindings
1734 - Auto-generates DOMSVGAnimatedAngle, DOMSVGAnimatedBoolean,
1735 DOMSVGAnimatedEnumeration, DOMSVGAnimatedInteger, DOMSVGAnimatedLength,
1736 DOMSVGAnimatedLengthList, DOMSVGAnimatedNumber, DOMSVGAnimatedString,
1737 DOMSVGAnimatedTransformList, DOMSVGExternalResourcesRequired,
1738 DOMSVGLangSpace, DOMSVGLocatable, DOMSVGMetadataElement, DOMSVGRectElement,
1739 DOMSVGStringList, DOMSVGStylable, DOMSVGStyleElement, DOMSVGTests,
1740 and DOMSVGTransformable.
1742 - Adds ability to CodeGeneratorObjC.pm to handle interfaces with mulitple
1743 parent interfaces and the SVG animated classes.
1745 - Corrects CodeGenerator.pm to only skip the first parent for the main
1748 * DerivedSources.make:
1749 * WebCore.xcodeproj/project.pbxproj:
1750 * bindings/objc/DOMInternal.h:
1751 * bindings/objc/DOMSVG.h:
1752 * bindings/scripts/CodeGenerator.pm:
1753 * bindings/scripts/CodeGeneratorObjC.pm:
1754 * ksvg2/svg/SVGAnimatedAngle.idl:
1755 * ksvg2/svg/SVGAnimatedBoolean.idl:
1756 * ksvg2/svg/SVGAnimatedEnumeration.idl:
1757 * ksvg2/svg/SVGAnimatedInteger.idl:
1758 * ksvg2/svg/SVGAnimatedLength.idl:
1759 * ksvg2/svg/SVGAnimatedLengthList.idl:
1760 * ksvg2/svg/SVGAnimatedNumber.idl:
1761 * ksvg2/svg/SVGAnimatedPathData.idl:
1762 * ksvg2/svg/SVGAnimatedString.idl:
1763 * ksvg2/svg/SVGAnimatedTransformList.idl:
1764 * ksvg2/svg/SVGExternalResourcesRequired.idl:
1765 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.idl:
1766 * ksvg2/svg/SVGFitToViewBox.idl:
1767 * ksvg2/svg/SVGLangSpace.idl:
1768 * ksvg2/svg/SVGLocatable.idl:
1769 * ksvg2/svg/SVGMetadataElement.idl:
1770 * ksvg2/svg/SVGStringList.idl:
1771 * ksvg2/svg/SVGStylable.idl:
1772 * ksvg2/svg/SVGStyleElement.idl:
1773 * ksvg2/svg/SVGTests.idl:
1774 * ksvg2/svg/SVGTransformable.idl:
1775 * ksvg2/svg/SVGURIReference.idl:
1776 * ksvg2/svg/SVGUnitTypes.idl:
1777 * ksvg2/svg/SVGZoomAndPan.idl:
1779 2006-09-28 Brady Eidson <beidson@apple.com>
1781 Reviewed by Mitz Pettel!!!
1783 Change the error code check for common functions from SQLResultOk to SQLResultDone
1785 * loader/icon/IconDatabase.cpp:
1786 (WebCore::IconDatabase::forgetPageURLQuery):
1787 (WebCore::IconDatabase::setIconIDForPageURLQuery):
1788 (WebCore::IconDatabase::addIconForIconURLQuery):
1790 2006-09-28 Dave Hyatt <hyatt@apple.com>
1792 Just eliminate MapWindowPoints usage and use the HWND as
1795 * platform/win/MouseEventWin.cpp:
1796 (WebCore::positionForEvent):
1797 * platform/win/ScrollViewWin.cpp:
1798 (WebCore::ScrollView::viewportToContents):
1799 (WebCore::ScrollView::contentsToViewport):
1801 2006-09-27 David Hyatt <hyatt@apple.com>
1803 Fix for bug 9222, cursor is wrong when mousing over overflow scrollbars in textareas. Make sure
1804 selectCursor checks for whether or not a scrollbar was hit. Also stub out a mouseMoved method for
1805 scrollbars to provide hover feedback if needed.
1809 * page/FrameView.cpp:
1810 (WebCore::selectCursor):
1811 (WebCore::FrameView::handleMouseMoveEvent):
1812 * platform/ScrollBar.h:
1813 (WebCore::ScrollBar::mouseMoved):
1815 2006-09-27 MorganL <morganl.webkit@yahoo.com>
1817 Reviewed by Maciej and Adam, landed by Adam
1819 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11072
1820 Windows build is busted
1822 * platform/win/TemporaryLinkStubs.cpp:
1823 (ScrollView::paint):
1824 (ScrollView::themeChanged):
1826 2006-09-27 Eric Seidel <eric@eseidel.com>
1830 paths with no fill specified default to black but do not recieve paint-related mouse events
1831 http://bugs.webkit.org/show_bug.cgi?id=11069
1832 The default fill was being applied at the wrong place in the rendering chain, causing this problem.
1834 Test: svg/custom/hover-default-fill.svg
1836 * kcanvas/RenderPath.cpp:
1837 (WebCore::RenderPath::nodeAtPoint): use isFilled and isStroked
1838 * ksvg2/css/SVGRenderStyle.h: use defaultFill() and defaultStroke()
1839 * ksvg2/misc/KCanvasRenderingStyle.cpp:
1840 (WebCore::KSVGPainterFactory::isFilled): remove null check
1841 (WebCore::KSVGPainterFactory::fillPaintServer): remove null check
1842 (WebCore::KSVGPainterFactory::isStroked): remove null check
1843 (WebCore::KSVGPainterFactory::strokePaintServer): remove null check
1844 * ksvg2/svg/SVGPaint.cpp:
1845 (WebCore::SVGPaint::defaultFill): added.
1846 (WebCore::SVGPaint::defaultStroke): added.
1847 * ksvg2/svg/SVGPaint.h:
1849 2006-09-27 Rob Buis <buis@kde.org>
1851 Reviewed by eseidel.
1853 http://bugs.webkit.org/show_bug.cgi?id=11015
1854 SVG handles em units incorrectly
1856 Calculate viewport coordinates at layout time, since
1857 at this point the font size is known and lengths depending
1858 on font sizes can be calculated correctly.
1860 * kcanvas/RenderSVGContainer.cpp:
1861 (WebCore::RenderSVGContainer::layout):
1862 (WebCore::RenderSVGContainer::viewport):
1863 (WebCore::RenderSVGContainer::calcViewport):
1864 * kcanvas/RenderSVGContainer.h:
1865 * ksvg2/svg/SVGLength.cpp:
1866 (WebCore::SVGLength::updateValue):
1867 * ksvg2/svg/SVGMarkerElement.cpp:
1868 (WebCore::SVGMarkerElement::createRenderer):
1869 * ksvg2/svg/SVGSVGElement.cpp:
1870 (WebCore::SVGSVGElement::createRenderer):
1871 (WebCore::SVGSVGElement::attributeChanged):
1872 * ksvg2/svg/SVGSVGElement.h:
1874 2006-09-27 Eric Seidel <eric@eseidel.com>
1878 Change our invalid-fill error behavior to match Opera (and soon Firefox)
1879 http://bugs.webkit.org/show_bug.cgi?id=11017
1881 * ksvg2/misc/KCanvasRenderingStyle.cpp:
1882 (WebCore::KSVGPainterFactory::isFilled):
1883 (WebCore::KSVGPainterFactory::fillPaintServer):
1884 (WebCore::KSVGPainterFactory::isStroked):
1885 (WebCore::KSVGPainterFactory::strokePaintServer):
1887 2006-09-27 Brady Eidson <beidson@apple.com>
1891 * loader/icon/IconDatabase.cpp:
1892 (WebCore::readySQLStatement):
1894 2006-09-27 Brady Eidson <beidson@apple.com>
1898 In very specific circumstances, prepared SQLStatements can become invalid without
1899 any warning. This checks for that state and re-prepares the statement and also
1900 adds more aggressive error-checking everywhere these statements are used.
1902 * loader/icon/IconDatabase.cpp:
1903 (WebCore::readySQLStatement): Check if the statement is expired - reprepare it
1904 (WebCore::IconDatabase::imageDataForIconURLQuery): More thoroughly catch error cases
1905 (WebCore::IconDatabase::timeStampForIconURLQuery): Ditto
1906 (WebCore::IconDatabase::iconURLForPageURLQuery): Ditto
1907 (WebCore::IconDatabase::forgetPageURLQuery): Ditto
1908 (WebCore::IconDatabase::setIconIDForPageURLQuery): Ditto
1909 (WebCore::IconDatabase::getIconIDForIconURLQuery): Ditto
1910 (WebCore::IconDatabase::addIconForIconURLQuery): Ditto
1911 (WebCore::IconDatabase::hasIconForIconURLQuery): Ditto
1912 * loader/icon/SQLStatement.cpp:
1913 (WebCore::SQLStatement::isExpired): Added (accessor to sqlite3_expired())
1914 * loader/icon/SQLStatement.h:
1916 2006-09-26 Darin Adler <darin@apple.com>
1920 - clean up options for font code path
1923 * platform/Font.cpp:
1924 (WebCore::Font::setCodePath): Added. Replaces boolean version.
1925 (WebCore::Font::canUseGlyphCache): Update to handle "never use complex" case too.
1927 * platform/mac/WebCoreTextRenderer.mm:
1928 (WebCoreSetAlwaysUseATSU): Change to call setCodePath.
1930 2006-09-26 John Sullivan <sullivan@apple.com>
1934 * bridge/mac/WebCoreFrameBridge.h:
1935 * bridge/mac/WebCoreFrameBridge.mm:
1936 (-[WebCoreFrameBridge markAllMatchesForText:caseSensitive:limit:]):
1937 Added limit parameter, passed down to Frame
1941 (WebCore::Frame::markAllMatchesForText):
1942 Added limit parameter. Stop the search if it hits limit.
1944 2006-09-26 Sean Gies <seangies@apple.com>
1946 Reviewed by Brady Eidson.
1948 * platform/cg/ImageCG.cpp: Removed #if's -- Darin said we don't need these.
1950 2006-09-26 Justin Garcia <justin.garcia@apple.com>
1954 <rdar://problem/4747695>
1955 Gmail Editor: Crash at WebCore::Range::startPosition() when decreasing a indent
1957 * editing/DeleteSelectionCommand.cpp:
1958 (WebCore::DeleteSelectionCommand::initializeStartEnd): Stop expanding
1959 to select special elements that are fully selected after expansion
1960 moves to positions that are visually distinct from the originals.
1961 * editing/InsertListCommand.cpp:
1962 (WebCore::InsertListCommand::doApply): If the content of the list
1963 item will be moved into another list, put it in a list item.
1965 2006-09-26 Geoffrey Garen <ggaren@apple.com>
1969 Temporary work-around for frame lifetime issue.
1972 (WebCore::Frame::clear):
1973 (WebCore::Frame::disconnectOwnerElement):
1975 2006-09-26 Sam Weinig <sam.weinig@gmail.com>
1979 Patch for http://bugs.webkit.org/show_bug.cgi?id=11038
1980 Auto-generate DOMSVGElement for the Objective-C bindings
1982 - Auto-generates DOMSVGElement.
1984 - Make SVGExceptions work like all the other ExceptionCode
1985 extensions (Range, XPath, etc.) by adding SVGExceptionOffset
1986 and SVGExceptionMax.
1988 * DerivedSources.make:
1989 * WebCore.xcodeproj/project.pbxproj:
1990 * bindings/js/kjs_binding.cpp:
1992 (KJS::setDOMException):
1993 * bindings/objc/DOMInternal.h:
1994 * bindings/objc/DOMInternal.mm:
1995 (raiseDOMException):
1996 * bindings/objc/DOMSVG.h:
1997 * bindings/objc/DOMSVGExecption.h: Added.
1999 * ksvg2/svg/SVGElement.cpp:
2000 (WebCore::SVGElement::setId):
2001 (WebCore::SVGElement::setXmlbase):
2002 * ksvg2/svg/SVGElement.h:
2003 * ksvg2/svg/SVGElement.idl:
2004 * ksvg2/svg/SVGException.h: Added.
2007 2006-09-26 Eric Seidel <eric@eseidel.com>
2011 viewbox parser does not allow <tab> as a delimiter
2012 http://bugs.webkit.org/show_bug.cgi?id=11014
2014 Test: svg/hixie/viewbox/003.xml
2016 * ksvg2/svg/svgpathparser.cpp:
2017 (WebCore::isWhitespace): new function
2018 (WebCore::skipOptionalSpaces):
2019 (WebCore::skipOptionalSpacesOrComma):
2021 2006-09-26 Eric Seidel <eric@eseidel.com>
2025 SVGDocument::createElement does not create elements in the SVG namespace
2026 http://bugs.webkit.org/show_bug.cgi?id=10932
2028 Test: svg/custom/createelement.svg
2030 * ksvg2/svg/SVGDocument.cpp:
2031 (WebCore::SVGDocument::createElement):
2032 * ksvg2/svg/SVGDocument.h:
2034 2006-09-26 Eric Seidel <eric@eseidel.com>
2038 RenderPath::nodeAtPoint does not respect stroke width
2039 http://bugs.webkit.org/show_bug.cgi?id=10829
2041 Test: svg/custom/stroke-width-click.svg
2043 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
2044 (WebCore::RenderPath::strokeContains):
2045 * kcanvas/device/quartz/QuartzSupport.h:
2046 * kcanvas/device/quartz/QuartzSupport.mm:
2048 2006-09-26 Eric Seidel <eric@eseidel.com>
2052 Bring animation back to life
2053 http://bugs.webkit.org/show_bug.cgi?id=11021
2055 Register/unregister SVGSVGElements as time containers on insertion/removal.
2056 Replace uses of DeprecatedString with String in SVGAnimationElement
2057 Various whitespace clean-up.
2059 * ksvg2/misc/KSVGTimeScheduler.cpp:
2060 (WebCore::SVGTimer::notifyAll):
2061 * ksvg2/misc/SVGDocumentExtensions.cpp:
2062 (WebCore::SVGDocumentExtensions::startAnimations):
2063 (WebCore::SVGDocumentExtensions::pauseAnimations):
2064 (WebCore::SVGDocumentExtensions::unpauseAnimations):
2065 * ksvg2/svg/SVGAnimateTransformElement.cpp:
2066 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
2067 (WebCore::SVGAnimateTransformElement::parseTransformValue):
2068 * ksvg2/svg/SVGAnimateTransformElement.h:
2069 * ksvg2/svg/SVGAnimationElement.cpp:
2070 (WebCore::SVGAnimationElement::SVGAnimationElement):
2071 (WebCore::SVGAnimationElement::parseMappedAttribute):
2072 (WebCore::SVGAnimationElement::parseClockValue):
2073 (WebCore::SVGAnimationElement::targetAttribute):
2074 (WebCore::SVGAnimationElement::setTargetAttribute):
2075 (WebCore::SVGAnimationElement::attributeName):
2076 * ksvg2/svg/SVGAnimationElement.h:
2077 (WebCore::SVGAnimationElement::rendererIsNeeded):
2078 * ksvg2/svg/SVGSVGElement.cpp:
2079 (WebCore::SVGSVGElement::getScreenCTM):
2080 (WebCore::SVGSVGElement::createRenderer):
2081 (WebCore::SVGSVGElement::insertedIntoDocument): added, calls addTimeContainer(this)
2082 (WebCore::SVGSVGElement::removedFromDocument): added, calls removeTimeContainer(this)
2083 * ksvg2/svg/SVGSVGElement.h:
2084 * ksvg2/svg/SVGSetElement.cpp:
2085 (WebCore::SVGSetElement::handleTimerEvent):
2086 * ksvg2/svg/SVGURIReference.cpp:
2087 (WebCore::SVGURIReference::getTarget):
2088 * ksvg2/svg/SVGURIReference.h:
2090 2006-09-26 Graham Dennis <graham.dennis@gmail.com>
2092 Reviewed by mitzpettel.
2094 - fix http://bugs.webkit.org/show_bug.cgi?id=11020
2095 No-SVG build broken since r16549
2097 Change #if SVG_SUPPORT to #ifdef SVG_SUPPORT
2099 * css/cssparser.cpp:
2100 (WebCore::CSSParser::parseValue):
2101 * css/cssstyleselector.cpp:
2102 (WebCore::CSSStyleSelector::applyProperty):
2103 * page/FrameView.cpp:
2104 (WebCore::selectCursor):
2105 * platform/qt/GraphicsContextQt.cpp:
2107 2006-09-26 Anders Carlsson <acarlsson@apple.com>
2111 http://bugs.webkit.org/show_bug.cgi?id=10820
2112 Add StringImpl::toDouble() and remove uses of .deprecatedString().toDouble()
2114 (Originally written by Eric Seidel).
2116 * bindings/js/kjs_window.cpp:
2117 (KJS::floatFeature):
2118 * ksvg2/svg/SVGAngle.cpp:
2119 (SVGAngle::setValueAsString):
2120 * ksvg2/svg/SVGAnimationElement.cpp:
2121 (SVGAnimationElement::parseMappedAttribute):
2122 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
2123 (SVGComponentTransferFunctionElement::parseMappedAttribute):
2124 * ksvg2/svg/SVGFECompositeElement.cpp:
2125 (WebCore::SVGFECompositeElement::parseMappedAttribute):
2126 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
2127 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
2128 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
2129 (SVGFEDisplacementMapElement::parseMappedAttribute):
2130 * ksvg2/svg/SVGFELightElement.cpp:
2131 (SVGFELightElement::parseMappedAttribute):
2132 * ksvg2/svg/SVGFEOffsetElement.cpp:
2133 (WebCore::SVGFEOffsetElement::parseMappedAttribute):
2134 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
2135 (SVGFESpecularLightingElement::parseMappedAttribute):
2136 * ksvg2/svg/SVGFETurbulenceElement.cpp:
2137 (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
2138 * ksvg2/svg/SVGStopElement.cpp:
2139 (SVGStopElement::parseMappedAttribute):
2140 * platform/AtomicString.h:
2141 (WebCore::AtomicString::toDouble):
2142 * platform/PlatformString.h:
2143 * platform/String.cpp:
2144 (WebCore::String::toDouble):
2145 * platform/StringImpl.cpp:
2146 (WebCore::StringImpl::toDouble):
2147 * platform/StringImpl.h:
2148 * rendering/DeprecatedSlider.cpp:
2149 (WebCore::DeprecatedSlider::updateFromElement):
2150 * xml/XPathGrammar.y:
2152 2006-09-25 David Harrison <harrison@apple.com>
2154 Reviewed by Tim Omernick and Tim Hatcher.
2156 <rdar://problem/4717965> Text Field text parameterized attributes should work
2157 <rdar://problem/4712111> Support NSAccessibilityInsertionPointLineNumberAttribute for AXTextArea elements
2159 * bridge/mac/WebCoreAXObject.mm:
2160 (-[WebCoreAXObject accessibilityAttributeValue:]):
2161 Use new line number support to implement NSAccessibilityInsertionPointLineNumberAttribute.
2163 (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
2164 Cleaned up. Added text field and text area parameterzed attributes.
2166 (-[WebCoreAXObject doAXLineForTextMarker:]):
2167 Fixed to be zero-based and to deal with the first position properly.
2169 (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
2172 (-[WebCoreAXObject textMarkerForIndex:lastIndexOK:]):
2173 (-[WebCoreAXObject indexForTextMarker:]):
2174 (-[WebCoreAXObject textMarkerRangeForRange:]):
2175 (-[WebCoreAXObject rangeForTextMarkerRange:]):
2176 New utility methods.
2178 (-[WebCoreAXObject doAXLineForIndex:]):
2179 (-[WebCoreAXObject doAXRangeForLine:]):
2180 (-[WebCoreAXObject doAXStringForRange:]):
2181 (-[WebCoreAXObject doAXRangeForPosition:]):
2182 (-[WebCoreAXObject doAXRangeForIndex:]):
2183 (-[WebCoreAXObject doAXBoundsForRange:]):
2184 (-[WebCoreAXObject doAXAttributedStringForRange:]):
2185 (-[WebCoreAXObject doAXRTFForRange:]):
2186 (-[WebCoreAXObject doAXStyleRangeForIndex:]):
2187 Implement text field and text area parameterized attributes.
2189 (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
2190 Added text field and text area parameterzed attributes.
2192 * rendering/RenderTextControl.h:
2193 Made indexForVisiblePosition() and visiblePositionForIndex() public.
2195 2006-09-25 Adam Roben <aroben@apple.com>
2201 * WebCore.vcproj/WebCore/WebCore.vcproj: Fix malformed XML.
2202 * platform/ResourceLoader.h: Store whether a particular job
2203 has received a response within the ResourceLoader object itself, since
2204 it's possible that we will enter the InternetReadFileExA while loop
2205 twice for the same job.
2206 * platform/ResourceLoaderInternal.h: Add private instance variable to
2207 store whether we've received a response.
2208 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
2209 * platform/win/GraphicsContextWin.cpp: Fix order of preprocessor
2211 * platform/win/ResourceLoaderWin.cpp:
2212 (WebCore::ResourceLoader::onRequestComplete): Ask the ResourceLoader
2213 whether it has received a response instead of assuming it hasn't.
2214 (WebCore::ResourceLoader::setHasReceivedResponse): Added.
2215 (WebCore::ResourceLoader::hasReceivedResponse): Added.
2216 * platform/win/TemporaryLinkStubs.cpp: Rename setKnobProportion to
2218 (ScrollBar::setProportion):
2220 2006-09-25 Brady Eidson <beidson@apple.com>
2224 Disabled IconDatabase logging by default
2226 * platform/Logging.cpp:
2229 2006-09-25 Steve Falkenburg <sfalken@apple.com>
2233 * platform/cf/ResourceLoaderCFNet.cpp:
2234 (WebCore::willCacheResponse):
2236 2006-09-25 Justin Garcia <justin.garcia@apple.com>
2240 <http://bugs.webkit.org/show_bug.cgi?id=11002>
2241 Gmail Editor: Crash at WebCore::SplitElementCommand::doApply() when attempting to indent in a new message
2243 * editing/IndentOutdentCommand.cpp:
2244 (WebCore::IndentOutdentCommand::indentRegion): Special case
2245 an empty root editable element.
2247 2006-09-25 Brady Eidson <beidson@apple.com>
2251 Math error in SystemTimeWin
2253 * platform/win/SystemTimeWin.cpp:
2254 (WebCore::currentTime):
2256 2006-09-25 Alexey Proskuryakov <ap@nypop.com>
2260 Whitespace cleanup; rename *job variables to *loader.
2262 * bindings/js/JSXMLHttpRequest.cpp:
2263 (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
2264 (KJS::JSXMLHttpRequestConstructorImp::implementsConstruct):
2265 (KJS::JSXMLHttpRequestConstructorImp::construct):
2266 (KJS::JSXMLHttpRequest::getOwnPropertySlot):
2267 (KJS::JSXMLHttpRequest::getValueProperty):
2268 (KJS::JSXMLHttpRequest::put):
2269 (KJS::JSXMLHttpRequest::putValueProperty):
2270 (KJS::JSXMLHttpRequest::mark):
2271 (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
2272 (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
2273 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
2274 * bindings/js/JSXMLHttpRequest.h:
2275 (KJS::JSXMLHttpRequest::toBoolean):
2276 * xml/xmlhttprequest.cpp:
2277 (WebCore::XMLHttpRequest::XMLHttpRequest):
2278 (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
2279 (WebCore::XMLHttpRequest::send):
2280 (WebCore::XMLHttpRequest::abort):
2281 (WebCore::XMLHttpRequest::receivedAllData):
2282 (WebCore::XMLHttpRequest::receivedData):
2283 * xml/xmlhttprequest.h:
2286 2006-09-25 Timothy Hatcher <timothy@apple.com>
2290 - Deprecate the rest of the old-style methods that are not generated.
2291 - Add @property syntax to DOMRange.
2293 * WebCore.xcodeproj/project.pbxproj:
2294 * bindings/objc/DOM.mm:
2295 (-[DOMRange setStart:offset:]):
2296 (-[DOMRange setEnd:offset:]):
2297 (-[DOMRange compareBoundaryPoints:sourceRange:]):
2298 (-[DOMRange setStart::]):
2299 (-[DOMRange setEnd::]):
2300 (-[DOMRange compareBoundaryPoints::]):
2301 (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
2302 (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
2303 (-[DOMDocument createNodeIterator::::]):
2304 (-[DOMDocument createTreeWalker::::]):
2305 * bindings/objc/DOMCSS.h:
2306 * bindings/objc/DOMCSS.mm:
2307 (-[DOMDocument getComputedStyle:pseudoElement:]):
2308 (-[DOMDocument getComputedStyle::]):
2309 (-[DOMDocument getMatchedCSSRules:pseudoElement:]):
2310 * bindings/objc/DOMExtensions.h:
2311 * bindings/objc/DOMHTML.h:
2312 * bindings/objc/DOMRange.h:
2313 * bindings/objc/DOMTraversal.h:
2315 2006-09-25 Eric Seidel <eric@eseidel.com>
2319 Outermost <svg> element should clip to viewport
2320 http://bugs.webkit.org/show_bug.cgi?id=11007
2322 Test: svg/custom/viewport-clip.svg
2324 * css/svg.css: change svg:root overflow: from 'visible' to 'hidden'
2326 2006-09-25 Anders Carlsson <acarlsson@apple.com>
2330 * css/MediaList.cpp:
2331 Remove unused header.
2334 (WebCore::Document::clear):
2335 Use clear instead of iterating through the list of event listeners, removing each one.
2336 (Doing that causes a crash when running the layout tests with GuardMalloc turned on)
2338 * html/HTMLKeygenElement.cpp:
2339 (WebCore::HTMLKeygenElement::HTMLKeygenElement):
2340 (WebCore::HTMLKeygenElement::appendFormData):
2341 Update due to changes in the SSL key generator.
2343 * ksvg2/svg/SVGAngle.cpp:
2344 Remove unused header.
2346 * ksvg2/svg/SVGAnimationElement.cpp:
2347 (SVGAnimationElement::parseMappedAttribute):
2348 Rename methods and pass Strings instead of DeprecatedStrings to
2351 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
2352 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
2353 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
2354 * ksvg2/svg/SVGFEMergeElement.cpp:
2355 * ksvg2/svg/SVGFEOffsetElement.cpp:
2356 Remove unused headers.
2358 * ksvg2/svg/SVGHelper.cpp:
2359 (WebCore::SVGHelper::parseSeparatedList):
2360 * ksvg2/svg/SVGHelper.h:
2361 Rename ParseSeperatedList to parseSeparatedList, make it take a String instead of a
2362 DeprecatedString and have it use Vector<String> instead of DeprecatedStringList.
2364 * ksvg2/svg/SVGLengthList.cpp:
2365 (WebCore::SVGLengthList::parse):
2366 * ksvg2/svg/SVGLengthList.h:
2367 Use Vector<String> instead of DeprecatedStringList.
2370 (WebCore::Cache::requestImage):
2371 (WebCore::Cache::requestStyleSheet):
2372 (WebCore::Cache::requestScript):
2373 (WebCore::Cache::requestXSLStyleSheet):
2374 (WebCore::Cache::requestXBLDocument):
2375 (WebCore::Cache::remove):
2376 (WebCore::Cache::get):
2377 Use a String as the key in the cache set instead of a RefPtr<StringImpl>.
2379 * loader/DocLoader.cpp:
2380 (WebCore::DocLoader::needReload):
2381 * loader/DocLoader.h:
2382 Use a HashSet instead of DeprecatedStringList.
2385 Remove declarations that have no functions.
2387 * platform/SSLKeyGenerator.h:
2388 * platform/mac/SSLKeyGeneratorMac.mm:
2389 (WebCore::supportedKeySizes):
2390 (WebCore::signedPublicKeyAndChallengeString):
2391 Convert to use Vector<String> instead of DeprecatedStringList, and String instead of
2394 2006-09-25 Dave Hyatt <hyatt@apple.com>
2396 Shunt the RenderTheme world transform adoption between
2397 Cairo and Windows into getWindowsContext and move the method
2398 out of GraphicsContextCairo and into GraphicsContextWin.
2401 * WebCore.vcproj/WebCore/WebCore.vcproj:
2402 * platform/cairo/GraphicsContextCairo.cpp:
2403 * platform/win/GraphicsContextWin.cpp: Added.
2404 (WebCore::GraphicsContext::getWindowsContext):
2405 (WebCore::GraphicsContext::releaseWindowsContext):
2406 * rendering/RenderThemeWin.cpp:
2407 (WebCore::prepareForDrawing):
2409 2006-09-24 Eric Seidel <eric@eseidel.com>
2413 <svg:a> cannot be styled with a:hover
2414 http://bugs.webkit.org/show_bug.cgi?id=11005
2416 Test: svg/hixie/cascade/002.xml
2418 * css/cssstyleselector.cpp:
2419 (WebCore::checkPseudoState):
2421 2006-09-24 Sam Weinig <sam.weinig@gmail.com>
2425 Patch for http://bugs.webkit.org/show_bug.cgi?id=10882
2426 SVG needs Obj-C DOM bindings
2428 - Auto-generate the first 8 Objective-C SVG DOM bindings. The
2429 auto-generated classes are DOMSVGAngle, DOMSVGLength, DOMSVGLengthList,
2430 DOMSVGMatrix, DOMSVGPathSeg, DOMSVGPathSegList, DOMSVGTransform, and
2431 DOMSVGTransformList.
2433 * DerivedSources.make:
2434 * WebCore.xcodeproj/project.pbxproj:
2435 * bindings/objc/DOMInternal.h:
2436 * bindings/objc/DOMSVG.h: Added.
2437 * ksvg2/svg/SVGAngle.idl:
2438 * ksvg2/svg/SVGLength.idl:
2439 * ksvg2/svg/SVGLengthList.idl:
2440 * ksvg2/svg/SVGMatrix.idl:
2441 * ksvg2/svg/SVGPathSeg.idl:
2442 * ksvg2/svg/SVGPathSegList.idl:
2443 * ksvg2/svg/SVGTransform.idl:
2444 * ksvg2/svg/SVGTransformList.idl:
2446 2006-09-24 Rob Buis <buis@kde.org>
2448 Reviewed by eseidel.
2450 Fix for http://bugs.webkit.org/show_bug.cgi?id=6001
2451 WebKit does not handle fallback custom cursors
2452 Fix for http://bugs.webkit.org/show_bug.cgi?id=6002
2453 WebKit does not properly handle SVG <cursor> element
2455 Add support for svg cursor images. Also make sure hotspot
2456 settings are handled correctly. Add tests for handling of css3
2457 cursor syntax with hotspots in strict and quirks mode. Finally
2460 * WebCore.xcodeproj/project.pbxproj:
2461 * css/CSSComputedStyleDeclaration.cpp:
2462 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2463 * css/CSSCursorImageValue.cpp: Added.
2464 (WebCore::CSSCursorImageValue::CSSCursorImageValue):
2465 (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
2466 * css/CSSCursorImageValue.h: Added.
2467 (WebCore::CSSCursorImageValue::hotspot):
2468 * css/cssparser.cpp:
2469 (WebCore::CSSParser::parseValue):
2470 * css/cssstyleselector.cpp:
2471 (WebCore::CSSStyleSelector::applyProperty):
2472 * ksvg2/svg/SVGCursorElement.cpp:
2473 * manual-tests/css3-cursor-fallback-quirks.html: Added.
2474 * manual-tests/css3-cursor-fallback-strict.html: Added.
2475 * manual-tests/cursorfallback.xml: Added.
2476 * page/FrameView.cpp:
2477 (WebCore::selectCursor):
2478 * platform/Cursor.h:
2479 * platform/mac/CursorMac.mm:
2480 (WebCore::createCustomCursor):
2481 (WebCore::Cursor::Cursor):
2482 * platform/qt/CursorQt.cpp:
2483 (WebCore::Cursor::Cursor):
2484 * rendering/RenderStyle.cpp:
2485 (WebCore::StyleInheritedData::StyleInheritedData):
2486 (WebCore::StyleInheritedData::operator==):
2487 (WebCore::RenderStyle::diff):
2488 (WebCore::RenderStyle::addCursor):
2489 (WebCore::RenderStyle::addSVGCursor):
2490 (WebCore::RenderStyle::setCursorList):
2491 (WebCore::RenderStyle::clearCursorList):
2492 * rendering/RenderStyle.h:
2493 (WebCore::CursorData::CursorData):
2494 (WebCore::CursorList::operator[]):
2495 (WebCore::CursorList::size):
2496 (WebCore::CursorList::append):
2497 (WebCore::RenderStyle::cursors):
2499 2006-09-24 Sam Weinig <sam.weinig@gmail.com>
2503 Patch for http://bugs.webkit.org/show_bug.cgi?id=11009
2504 Auto-generate the internal methods interfaces for the Objective-C bindings
2506 - Auto-generate the internal method declarations into their own files
2507 named in the form DOMFooBarInternal.h for class DOMFooBar.
2509 - Remove all use of DOM_cast from code.
2511 - Assorted cleanups.
2513 * WebCore.xcodeproj/project.pbxproj:
2514 * bindings/objc/DOM.mm:
2515 (-[DOMNode _initWithNode:WebCore::]):
2516 (-[DOMNode WebCore::]):
2517 (-[DOMRange dealloc]):
2518 (-[DOMRange finalize]):
2519 (-[DOMRange _initWithRange:WebCore::]):
2520 (-[DOMRange WebCore::]):
2521 (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
2522 (-[DOMNodeFilter WebCore::]):
2523 (-[DOMNodeFilter dealloc]):
2524 (-[DOMNodeFilter finalize]):
2525 (-[DOMNodeIterator _initWithNodeIterator:WebCore::filter:]):
2526 (-[DOMNodeIterator WebCore::]):
2527 (-[DOMTreeWalker _initWithTreeWalker:WebCore::filter:]):
2528 (-[DOMTreeWalker WebCore::]):
2529 * bindings/objc/DOMAbstractView.mm:
2530 (-[DOMAbstractView _initWithAbstractView:WebCore::]):
2531 * bindings/objc/DOMCSS.mm:
2532 (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
2533 (-[DOMCSSRule _initWithRule:WebCore::]):
2534 (-[DOMCSSValue _initWithValue:WebCore::]):
2535 * bindings/objc/DOMEvents.mm:
2536 (-[DOMEvent _initWithEvent:WebCore::]):
2537 * bindings/objc/DOMHTMLAppletElement.mm:
2538 (-[DOMHTMLAppletElement align]):
2539 (-[DOMHTMLAppletElement setAlign:]):
2540 (-[DOMHTMLAppletElement alt]):
2541 (-[DOMHTMLAppletElement setAlt:]):
2542 (-[DOMHTMLAppletElement archive]):
2543 (-[DOMHTMLAppletElement setArchive:]):
2544 (-[DOMHTMLAppletElement code]):
2545 (-[DOMHTMLAppletElement setCode:]):
2546 (-[DOMHTMLAppletElement codeBase]):
2547 (-[DOMHTMLAppletElement setCodeBase:]):
2548 (-[DOMHTMLAppletElement height]):
2549 (-[DOMHTMLAppletElement setHeight:]):
2550 (-[DOMHTMLAppletElement hspace]):
2551 (-[DOMHTMLAppletElement setHspace:]):
2552 (-[DOMHTMLAppletElement name]):
2553 (-[DOMHTMLAppletElement setName:]):
2554 (-[DOMHTMLAppletElement object]):
2555 (-[DOMHTMLAppletElement setObject:]):
2556 (-[DOMHTMLAppletElement vspace]):
2557 (-[DOMHTMLAppletElement setVspace:]):
2558 (-[DOMHTMLAppletElement width]):
2559 (-[DOMHTMLAppletElement setWidth:]):
2560 * bindings/objc/DOMInternal.h:
2564 * bindings/objc/DOMXPath.mm:
2565 (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:WebCore::]):
2566 * bindings/scripts/CodeGeneratorObjC.pm:
2568 2006-09-24 Nikolas Zimmermann <zimmermann@kde.org>
2570 Reviewed by eseidel.
2572 Fix Qt/Linux build after Dave's Scrollbar changes.
2574 * platform/qt/PlatformScrollBar.h: (Somehow this contained the file twice! Removed one instance!)
2575 * platform/qt/TemporaryLinkStubs.cpp:
2576 (WebCore::ScrollBar::setProportion):
2577 (WebCore::PlatformScrollBar::updateThumbPosition):
2578 (WebCore::PlatformScrollBar::updateThumbProportion):
2580 2006-09-24 Nikolas Zimmermann <zimmermann@kde.org>
2582 Reviewed by eseidel.
2584 Qt/Linux build system changes: enable xpath/xslt by default.
2585 Offer possibility to change all of these using 'ccmake'.
2589 2006-09-24 Dave Hyatt <hyatt@apple.com>
2591 Cleanup of Scrollbar APIs. Rename setKnobProportion to setProportion. Rename setScrollbarValue to updateThumbPosition.
2592 Give setProportion a base class implementation and implement it using the same pattern as setValue/updateThumbPosition (so that
2593 the base calls a protected virtual function, updateThumbProportion, implemented by the derived class to update the actual scrollbar itself).
2595 * platform/ScrollBar.cpp:
2596 (WebCore::ScrollBar::setValue):
2597 (WebCore::ScrollBar::setProportion):
2598 * platform/ScrollBar.h:
2599 (WebCore::ScrollBar::value):
2600 * platform/mac/PlatformScrollBar.h:
2601 * platform/mac/PlatformScrollBarMac.mm:
2602 (WebCore::PlatformScrollBar::updateThumbPosition):
2603 (WebCore::PlatformScrollBar::updateThumbProportion):
2604 * platform/win/PlatformScrollBar.h:
2605 * platform/win/TemporaryLinkStubs.cpp:
2606 (PlatformScrollBar::updateThumbPosition):
2607 (PlatformScrollBar::updateThumbProportion):
2608 * rendering/RenderLayer.cpp:
2609 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
2611 2006-09-23 Alexey Proskuryakov <ap@nypop.com>
2615 http://bugs.webkit.org/show_bug.cgi?id=4872
2616 XMLHttpRequest fails to throw an exception when there is a security violation
2617 (mismatching domains)
2619 Raise an exception if there is a security violation, and also in cases required by
2620 the current draft of XHR specification.
2622 * bindings/js/JSXMLHttpRequest.cpp:
2623 (KJS::JSXMLHttpRequest::getValueProperty): Raise an exception if a DOM method reports one.
2624 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction): Raise an exception if a DOM method
2625 reports one, and also if there were too few arguments passed.
2627 * bindings/js/kjs_binding.cpp:
2628 (KJS::setDOMException): Added support for custom XHR exceptions.
2630 * xml/xmlhttprequest.h: Changed state names to match the current spec. Defined an
2631 exception code range for XHR exceptions.
2633 * xml/xmlhttprequest.cpp:
2634 (WebCore::XMLHttpRequest::open): Removed a check for m_aborted that could never succeed.
2635 (WebCore::XMLHttpRequest::send):
2636 (WebCore::XMLHttpRequest::setRequestHeader):
2637 (WebCore::XMLHttpRequest::getStatus):
2638 (WebCore::XMLHttpRequest::getStatusText):
2639 (WebCore::XMLHttpRequest::processSyncLoadResults):
2640 (WebCore::XMLHttpRequest::receivedAllData):
2641 (WebCore::XMLHttpRequest::receivedData):
2643 2006-09-22 Steve Falkenburg <sfalken@apple.com>
2645 Reviewed by Jeff Jenkins.
2649 * platform/cf/ResourceLoaderCFNet.cpp:
2650 (WebCore::willCacheResponse):
2652 2006-09-22 Justin Garcia <justin.garcia@apple.com>
2656 <http://bugs.webkit.org/show_bug.cgi?id=8029>
2657 Rename Node::isAncestor and RenderObject::hasAncestor to isDescendantOf
2660 (WebCore::Document::clearSelectionIfNeeded):
2662 (WebCore::Element::contains):
2664 (WebCore::Node::traverseNextNode):
2665 (WebCore::Node::traverseNextSibling):
2666 (WebCore::Node::traversePreviousNodePostOrder):
2667 (WebCore::Node::checkAddChild):
2668 (WebCore::Node::isDescendantOf):
2670 * dom/NodeIterator.cpp:
2671 (WebCore::NodeIterator::notifyBeforeNodeRemoval):
2672 * editing/ApplyStyleCommand.cpp:
2673 (WebCore::ApplyStyleCommand::applyBlockStyle):
2674 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
2675 (WebCore::ApplyStyleCommand::applyInlineStyle):
2676 (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAroundNode):
2677 * editing/CompositeEditCommand.cpp:
2678 (WebCore::CompositeEditCommand::mergeIdenticalElements):
2679 (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
2680 * editing/DeleteSelectionCommand.cpp:
2681 (WebCore::updatePositionForNodeRemoval):
2682 (WebCore::DeleteSelectionCommand::handleGeneralDelete):
2683 (WebCore::DeleteSelectionCommand::mergeParagraphs):
2684 * editing/FormatBlockCommand.cpp:
2685 (WebCore::FormatBlockCommand::doApply):
2686 * editing/IndentOutdentCommand.cpp:
2687 (WebCore::enclosingListOrBlockquote):
2688 * editing/Selection.cpp:
2689 (WebCore::Selection::validate):
2690 * editing/SelectionController.cpp:
2691 (WebCore::SelectionController::nodeWillBeRemoved):
2692 * editing/TextIterator.cpp:
2693 (WebCore::SimplifiedBackwardsTextIterator::advance):
2694 * editing/VisiblePosition.cpp:
2695 (WebCore::VisiblePosition::next):
2696 (WebCore::VisiblePosition::previous):
2697 (WebCore::VisiblePosition::canonicalPosition):
2698 (WebCore::isFirstVisiblePositionInNode):
2699 (WebCore::isLastVisiblePositionInNode):
2700 * editing/htmlediting.cpp:
2701 (WebCore::firstEditablePositionAfterPositionInRoot):
2702 (WebCore::lastEditablePositionBeforePositionInRoot):
2703 (WebCore::enclosingNodeWithTag):
2704 (WebCore::enclosingList):
2705 (WebCore::enclosingListChild):
2706 * editing/markup.cpp:
2707 (WebCore::createMarkup):
2709 2006-09-22 Timothy Hatcher <timothy@apple.com>
2713 - Added @property syntax to non-generated headers
2714 inside #ifndef BUILDING_ON_TIGER.
2715 - Changed the DOMEventTarget protocol to have have new versions
2716 of addEventListener and removeEventListener with named parameters.
2717 These old style methods can be removed once Mail changes to use
2718 the new methods <rdar://problem/4746649>.
2720 * WebCorePrefix.h: define BUILDING_ON_TIGER when Tiger is the target
2721 * bindings/objc/DOM.mm:
2722 (-[DOMNode addEventListener:listener:useCapture:]):
2723 (-[DOMNode addEventListener:::]): call the new method
2724 (-[DOMNode removeEventListener:listener:useCapture:]):
2725 (-[DOMNode removeEventListener:::]): call the new method
2726 * bindings/objc/DOMAbstractView.h:
2727 * bindings/objc/DOMEventTarget.h:
2728 * bindings/objc/DOMHTMLAppletElement.h:
2729 * bindings/objc/DOMHTMLEmbedElement.h:
2730 * bindings/objc/DOMHTMLOptionElement.h:
2731 * bindings/objc/DOMObject.h:
2732 * bindings/objc/DOMRGBColor.h:
2734 2006-09-22 Nikolas Zimmermann <zimmermann@kde.org>
2738 Fix Qt/Linux build and a really stupid mixup in GraphicsContextQt.
2740 * platform/qt/FrameQt.cpp:
2741 * platform/qt/GraphicsContextQt.cpp:
2742 (WebCore::GraphicsContext::translate): Make it actually translate, not scale! :-)
2743 (WebCore::GraphicsContext::origin):
2744 * platform/qt/PlatformScrollBar.h: Added.
2745 (WebCore::PlatformScrollBar::isWidget):
2746 * platform/qt/WidgetQt.cpp:
2747 (WebCore::Widget::invalidate):
2748 (WebCore::Widget::invalidateRect):
2750 2006-09-22 Dave Hyatt <hyatt@apple.com>
2752 Super-minor tweaks to the systemFont function on Mac.
2753 Set the generic family to None rather than to Serif, and
2754 don't waste time setting the computed size, since that is
2755 set from the specified size over in CSSStyleSelector anyway.
2757 * rendering/RenderThemeMac.mm:
2758 (WebCore::RenderThemeMac::systemFont):
2760 2006-09-22 Timothy Hatcher <timothy@apple.com>
2764 Build fix for Xcode 2.3. Convert GraphicsContext::translate() to
2765 take floats. There was already an implicit conversion to float/double
2766 when calling CGContextTranslateCTM or cairo_translate.
2768 * platform/GraphicsContext.h:
2769 * platform/cairo/GraphicsContextCairo.cpp:
2770 (WebCore::GraphicsContext::translate):
2771 * platform/cg/GraphicsContextCG.cpp:
2772 (WebCore::GraphicsContext::translate):
2774 2006-09-22 Brady Eidson <beidson@apple.com>
2778 Add redirect and other cleanup to ResourceLoaderWin.cpp
2779 Fixes bug http://bugs.webkit.org/show_bug.cgi?id=10927
2780 Fixes bug http://bugs.webkit.org/show_bug.cgi?id=10744
2782 * WebCore.xcodeproj/project.pbxproj:
2783 * platform/ResourceLoader.h:
2784 * platform/win/ResourceLoaderWin.cpp:
2785 (WebCore::ResourceLoaderWndProc):
2786 (WebCore::initializeOffScreenResourceLoaderWindow):
2787 (WebCore::ResourceLoader::onHandleCreated):
2788 (WebCore::ResourceLoader::onRequestRedirected):
2789 (WebCore::ResourceLoader::onRequestComplete):
2790 (WebCore::transferJobStatusCallback):
2792 2006-09-22 Alexey Proskuryakov <ap@nypop.com>
2796 http://bugs.webkit.org/show_bug.cgi?id=10803
2797 REGRESSION (r15536-r15544): manual-tests/bugzilla-6821.html failing
2799 * page/FrameView.cpp:
2800 (WebCore::FrameView::hoverTimerFired): Use the current event.
2802 2006-09-22 Nikolas Zimmermann <zimmermann@kde.org>
2806 Fix (last) svg memory leak.
2808 * ksvg2/svg/SVGTransformable.cpp: delete 't' in error case.
2809 (SVGTransformable::parseTransformAttribute):
2811 2006-09-22 Eric Seidel <eric@eseidel.com>
2813 No review necessary, just removing a dead file.
2815 Remove unused file (added previously by mistake) to make room for real implementation.
2817 * platform/mac/BitmapImageMac.mm: Removed.
2819 2006-09-22 Dave Hyatt <hyatt@apple.com>
2821 Move PlatformScrollBar.h down into the platforms.
2823 Reviewed by andersca
2825 * platform/PlatformScrollBar.h: Removed.
2826 * platform/win/PlatformScrollBar.h: Added.
2827 * platform/mac/PlatformScrollBar.h: Added.
2829 2006-09-22 Dave Hyatt <hyatt@apple.com>
2831 Add support for invalidation of widgets. This will be needed for the Win32 widget subsystem (and for
2832 any widget subsystems that don't have any underlying native objects backing the widgets.
2836 * platform/Widget.h:
2837 * platform/mac/WidgetMac.mm:
2838 (WebCore::Widget::invalidate):
2839 (WebCore::Widget::invalidateRect):
2840 * platform/win/TemporaryLinkStubs.cpp:
2841 (Widget::invalidate):
2842 (Widget::invalidateRect):
2844 2006-09-22 Rob Buis <buis@kd.org>
2846 Reviewed by eseidel.
2848 http://bugs.webkit.org/show_bug.cgi?id=10901
2849 Merge build fixes from unity
2853 2006-09-21 Nikolas Zimmermann <zimmermann@kde.org>
2855 Reviewed by eseidel.
2857 http://bugs.webkit.org/show_bug.cgi?id=10977
2858 SVGDocument does not expose 'rootElement' property
2860 Enable 'rootElement' property.
2862 * ksvg2/svg/SVGDocument.idl:
2864 2006-09-21 Steve Falkenburg <sfalken@apple.com>
2868 * platform/ResourceLoaderInternal.h:
2870 2006-09-21 Geoffrey Garen <ggaren@apple.com>
2872 build fixed. band happy.
2874 * platform/cg/GraphicsContextCG.cpp:
2875 (WebCore::GraphicsContext::translate):
2876 * platform/mac/WidgetMac.mm:
2878 2006-09-21 Geoffrey Garen <ggaren@apple.com>
2882 Some Widget refactoring.
2884 * WebCore.vcproj/WebCore/WebCore.vcproj:
2885 * bridge/mac/FrameMac.mm:
2886 * bridge/win/FrameWin.cpp:
2887 (WebCore::FrameWin::runJavaScriptAlert):
2888 (WebCore::FrameWin::runJavaScriptConfirm):
2889 * bridge/win/PageWin.cpp:
2890 (WebCore::Page::Page):
2891 (WebCore::rootWindowForFrame):
2892 * html/CanvasRenderingContext2D.cpp:
2893 (WebCore::CanvasRenderingContext2D::translate):
2894 * page/FrameView.cpp:
2895 (WebCore::FrameView::isFrameView):
2897 (WebCore::Page::setInstanceHandle):
2898 (WebCore::Page::instanceHandle):
2899 * platform/GraphicsContext.h:
2900 * platform/ScrollView.h:
2901 * platform/Widget.h:
2902 * platform/cairo/GraphicsContextCairo.cpp:
2903 (WebCore::GraphicsContext::translate):
2904 (WebCore::GraphicsContext::origin):
2905 * platform/mac/WidgetMac.mm:
2906 (WebCore::Widget::clearFocus):
2907 * platform/win/ResourceLoaderWin.cpp:
2908 (WebCore::initializeOffScreenResourceLoaderWindow):
2909 * platform/win/ScreenWin.cpp:
2910 (WebCore::monitorInfo):
2911 * platform/win/ScrollViewWin.cpp:
2912 (WebCore::ScrollView::updateContents):
2913 (WebCore::ScrollView::visibleWidth):
2914 (WebCore::ScrollView::visibleHeight):
2915 (WebCore::ScrollView::visibleContentRect):
2916 (WebCore::ScrollView::viewportToContents):
2917 (WebCore::ScrollView::contentsToViewport):
2918 (WebCore::ScrollView::scrollBy):
2919 (WebCore::ScrollView::updateScrollInfo):
2920 (WebCore::ScrollView::updateScrollBars):
2921 * platform/win/SharedTimerWin.cpp:
2922 (WebCore::initializeOffScreenTimerWindow):
2923 * platform/win/TemporaryLinkStubs.cpp:
2924 (FrameView::updateBorder):
2925 (ScrollView::paint):
2926 (GraphicsContext::clip):
2927 * platform/win/WidgetWin.cpp:
2928 (WebCore::Widget::Widget):
2929 (WebCore::Widget::parentWindow):
2930 (WebCore::Widget::setParentWindow):
2931 (WebCore::Widget::frameGeometry):
2932 (WebCore::Widget::hasFocus):
2933 (WebCore::Widget::setFocus):
2934 (WebCore::Widget::show):
2935 (WebCore::Widget::hide):
2936 (WebCore::Widget::setFrameGeometry):
2938 2006-09-22 Anders Carlsson <acarlsson@apple.com>
2942 * platform/TextEncoding.cpp:
2943 (WebCore::TextEncoding::backslashAsCurrencySymbol):
2944 Add comment clarifying why backslashAsCurrencySymbol is needed.
2946 2006-09-21 Sean Gies <seangies@apple.com>
2948 Reviewed by Adam Roben.
2950 Add utility functions to get and release HDC from GraphicsContext.
2952 * platform/GraphicsContext.h: Add utilities to get and release HDC.
2953 * platform/cairo/GraphicsContextCairo.cpp: Implement new utilities.
2954 * rendering/RenderThemeWin.cpp: Switch to new utilities.
2956 2006-09-21 Justin Garcia <justin.garcia@apple.com>
2960 <rdar://problem/4426622>
2961 Plain text paste slow. Time spent mostly in WebCore::rebalanceWhitespaceInTextNode(...)
2963 * editing/htmlediting.cpp:
2964 (WebCore::rebalanceWhitespaceInTextNode): We no longer need to use a RegExp replace because we
2965 aren't producing complicated sequences here. Use multiple UChar -> UChar replaces instead for speed.
2966 Got rid of uses of DepricatedString.
2968 2006-09-21 Nikolas Zimmermann <zimmermann@kde.org>
2970 Reviewed by eseidel.
2972 Don't crash if no IconDatabase is available (ie. on Qt/Gdk)
2975 (WebCore::Frame::endIfNotLoading):
2977 2006-09-21 Nikolas Zimmermann <zimmermann@kde.org>
2979 Reviewed by eseidel.
2984 * kcanvas/device/qt/KCanvasClipperQt.h:
2985 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
2986 * platform/qt/FrameQt.cpp:
2987 (WebCore::FrameQt::isLoadTypeReload):
2988 (WebCore::FrameQt::originalRequestURL):
2989 * platform/qt/FrameQt.h:
2990 * platform/qt/GraphicsContextQt.cpp:
2991 (WebCore::GraphicsContext::concatCTM):
2992 * platform/qt/ScrollViewQt.cpp:
2993 (WebCore::ScrollView::wheelEvent):
2994 * platform/qt/TemporaryLinkStubs.cpp:
2995 (WebCore::IconDatabase::setIconURLForPageURL):
2997 2006-09-20 Justin Garcia <justin.garcia@apple.com>
3001 <http://bugs.webkit.org/show_bug.cgi?id=7165>
3002 TinyMCE: Dragging & dropping content always leaves a copy when editing inside a subframe
3004 * editing/MoveSelectionCommand.cpp:
3005 (WebCore::MoveSelectionCommand::MoveSelectionCommand): Set the document
3006 to the position-to-move-to's document, not the fragment's document. The
3007 fragment's document is the document used to create the fragment and is irrelavant.
3009 === Safari-521.27 ===
3011 2006-09-21 Brady Eidson <beidson@apple.com>
3015 When your assumption is "IconDatabase::sharedIconDatabase()" will never fail but it does, you're in trouble
3016 This fixes Spinneret so it won't crash on its first load!
3019 (WebCore::Frame::endIfNotLoading):
3021 2006-09-21 Brady Eidson <beidson@apple.com>
3025 * platform/win/TemporaryLinkStubs.cpp:
3026 (ScrollView::wheelEvent):
3028 2006-09-20 Rob Buis <buis@kde.org>
3030 Reviewed by eseidel.
3032 http://bugs.webkit.org/show_bug.cgi?id=10946
3033 new marker code draws end-marker in wrong place
3035 Keep track of the start of the subpath so we can handle
3036 closeTo/moveTo correctly.
3038 * kcanvas/RenderPath.cpp:
3039 (WebCore::DrawMarkersData::DrawMarkersData):
3040 (WebCore::updateMarkerDataForElement):
3042 2006-09-21 David Hyatt <hyatt@apple.com>
3044 Wheel scrolling prep for Win32.
3046 WARNING: NO TEST CASES ADDED OR CHANGED
3048 * platform/PlatformWheelEvent.h:
3049 * platform/ScrollBar.h:
3050 * platform/ScrollView.h:
3051 * platform/mac/ScrollViewMac.mm:
3052 (WebCore::ScrollView::wheelEvent):
3053 * rendering/RenderLayer.cpp:
3055 2006-09-20 Timothy Hatcher <timothy@apple.com>
3059 Bug 10917: REGRESSION (r16027): iFrame transparency broken
3060 http://bugs.webkit.org/show_bug.cgi?id=10917
3062 Don't paint the base background color if we transparent.
3064 * rendering/RenderBox.cpp:
3065 (WebCore::RenderBox::paintBackgroundExtended):
3067 2006-09-20 Adam Roben <aroben@apple.com>
3069 Reviewed by andersca.
3071 * platform/FileChooser.h: Remove no-longer-necessary namespace std
3073 2006-09-20 Eric Seidel <eric@eseidel.com>
3077 Cleanup style in KCanvas.
3078 Remove extra white-space, unneeded arguments, etc.
3080 * WebCore.xcodeproj/project.pbxproj:
3081 * kcanvas/KCanvasClipper.cpp:
3082 (WebCore::operator<<):
3083 (WebCore::KCanvasClipper::externalRepresentation):
3084 * kcanvas/KCanvasClipper.h:
3085 * kcanvas/KCanvasFilters.cpp:
3086 (WebCore::KCanvasFilter::externalRepresentation):
3087 (WebCore::operator<<):
3088 (WebCore::KCanvasFilterEffect::externalRepresentation):
3089 (WebCore::KCPointLightSource::externalRepresentation):
3090 (WebCore::KCSpotLightSource::externalRepresentation):
3091 (WebCore::KCDistantLightSource::externalRepresentation):
3092 (WebCore::KCanvasFEBlend::externalRepresentation):
3093 (WebCore::KCanvasFEColorMatrix::externalRepresentation):
3094 (WebCore::KCanvasFEComponentTransfer::externalRepresentation):
3095 (WebCore::KCanvasFEComposite::externalRepresentation):
3096 (WebCore::KCanvasFEConvolveMatrix::externalRepresentation):
3097 (WebCore::KCanvasFEDiffuseLighting::externalRepresentation):
3098 (WebCore::KCanvasFEDisplacementMap::externalRepresentation):
3099 (WebCore::KCanvasFEFlood::externalRepresentation):
3100 (WebCore::KCanvasFEGaussianBlur::externalRepresentation):
3101 (WebCore::KCanvasFEImage::externalRepresentation):
3102 (WebCore::KCanvasFEMerge::externalRepresentation):
3103 (WebCore::KCanvasFEMorphology::externalRepresentation):
3104 (WebCore::KCanvasFEOffset::externalRepresentation):
3105 (WebCore::KCanvasFESpecularLighting::externalRepresentation):
3106 (WebCore::KCanvasFETile::externalRepresentation):
3107 (WebCore::KCanvasFETurbulence::externalRepresentation):
3108 * kcanvas/KCanvasFilters.h:
3109 (WebCore::KCanvasFEDiffuseLighting::lightSource):
3110 (WebCore::KCanvasFESpecularLighting::lightSource):
3111 * kcanvas/KCanvasImage.h:
3112 * kcanvas/KCanvasMarker.cpp:
3113 (WebCore::KCanvasMarker::externalRepresentation):
3114 * kcanvas/KCanvasMarker.h:
3115 * kcanvas/KCanvasResource.cpp:
3116 (WebCore::operator<<):
3117 * kcanvas/KCanvasResource.h:
3118 * kcanvas/KCanvasTreeDebug.cpp:
3119 (WebCore::operator<<):
3120 (WebCore::writeIndent):
3121 (WebCore::writeStyle):
3123 (WebCore::writeRenderResources):
3124 * kcanvas/KCanvasTreeDebug.h:
3125 (WebCore::operator<<):
3126 * kcanvas/RenderForeignObject.cpp:
3127 (WebCore::RenderForeignObject::paint):
3128 * kcanvas/RenderPath.cpp:
3129 (WebCore::RenderPath::paint):
3130 (WebCore::drawStartAndMidMarkers):
3131 * kcanvas/RenderSVGContainer.cpp:
3132 (WebCore::RenderSVGContainer::paint):
3133 * kcanvas/RenderSVGImage.cpp:
3134 (WebCore::RenderSVGImage::translateForAttributes):
3135 * kcanvas/RenderSVGImage.h:
3136 * kcanvas/device/KRenderingDevice.cpp:
3137 (WebCore::KRenderingDevice::currentContext):
3138 (WebCore::KRenderingDevice::popContext):
3139 (WebCore::KRenderingDevice::pushContext):
3140 * kcanvas/device/KRenderingDevice.h:
3141 * kcanvas/device/KRenderingFillPainter.h:
3142 * kcanvas/device/KRenderingPaintServer.h:
3143 (WebCore::KRenderingPaintServer::KRenderingPaintServer):
3144 (WebCore::KRenderingPaintServer::activeClient):
3145 (WebCore::KRenderingPaintServer::setActiveClient):
3146 * kcanvas/device/KRenderingPaintServerGradient.cpp:
3147 (WebCore::operator<<):
3148 (WebCore::KRenderingPaintServerGradient::externalRepresentation):
3149 (WebCore::KRenderingPaintServerLinearGradient::externalRepresentation):
3150 (WebCore::KRenderingPaintServerGradient::listener):
3151 (WebCore::KRenderingPaintServerGradient::setListener):
3152 (WebCore::KRenderingPaintServerRadialGradient::externalRepresentation):
3153 * kcanvas/device/KRenderingPaintServerGradient.h:
3154 * kcanvas/device/KRenderingPaintServerPattern.cpp:
3155 (WebCore::KRenderingPaintServerPattern::tile):
3156 (WebCore::KRenderingPaintServerPattern::setTile):
3157 (WebCore::KRenderingPaintServerPattern::listener):
3158 (WebCore::KRenderingPaintServerPattern::setListener):
3159 (WebCore::KRenderingPaintServerPattern::externalRepresentation):
3160 * kcanvas/device/KRenderingPaintServerPattern.h:
3161 * kcanvas/device/KRenderingPaintServerSolid.cpp:
3162 (WebCore::KRenderingPaintServerSolid::externalRepresentation):
3163 * kcanvas/device/KRenderingPaintServerSolid.h:
3164 * kcanvas/device/KRenderingStrokePainter.cpp:
3165 (WebCore::KRenderingStrokePainter::strokeMiterLimit):
3166 (WebCore::KRenderingStrokePainter::setStrokeMiterLimit):
3167 * kcanvas/device/KRenderingStrokePainter.h:
3168 * kcanvas/device/quartz/KCanvasFilterQuartz.h:
3169 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
3170 (WebCore::KCanvasFilterQuartz::prepareFilter):
3171 * kcanvas/device/quartz/KCanvasItemQuartz.h: Removed.
3172 * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
3173 (WebCore::KCanvasMaskerQuartz::applyMask):
3174 * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
3175 (WebCore::KCanvasImageQuartz::init):
3176 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
3177 (WebCore::KCanvasClipperQuartz::applyClip):
3178 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
3179 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
3180 (WebCore::KRenderingDeviceQuartz::quartzContext):
3181 (WebCore::KRenderingDeviceQuartz::contextForImage):
3182 (WebCore::KRenderingDeviceQuartz::createPaintServer):
3183 (WebCore::KRenderingDeviceQuartz::createResource):
3184 (WebCore::KRenderingDeviceQuartz::createFilterEffect):
3185 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
3186 (WebCore::CGShadingRefForLinearGradient):
3187 (WebCore::CGShadingRefForRadialGradient):
3188 (WebCore::KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
3189 (WebCore::KRenderingPaintServerGradientQuartz::teardown):
3190 * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
3191 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
3192 (WebCore::KRenderingPaintServerQuartzHelper::strokePath):
3193 (WebCore::KRenderingPaintServerQuartzHelper::clipToStrokePath):
3194 (WebCore::KRenderingPaintServerQuartzHelper::fillPath):
3195 (WebCore::KRenderingPaintServerQuartzHelper::clipToFillPath):
3196 (WebCore::KRenderingPaintServerSolidQuartz::draw):
3197 (WebCore::KRenderingPaintServerSolidQuartz::setup):
3198 (WebCore::KRenderingPaintServerSolidQuartz::renderPath):
3199 (WebCore::KRenderingPaintServerPatternQuartz::setup):
3200 (WebCore::KRenderingPaintServerPatternQuartz::renderPath):
3201 (WebCore::KRenderingPaintServerPatternQuartz::teardown):
3202 * kcanvas/device/quartz/QuartzSupport.h:
3203 * kcanvas/device/quartz/QuartzSupport.mm:
3204 (WebCore::applyStrokeStyleToContext):
3206 2006-09-20 Anders Carlsson <acarlsson@apple.com>
3208 Reviewed by Dave Hyatt.
3210 * dom/WheelEvent.cpp:
3211 (WebCore::WheelEvent::WheelEvent):
3212 Use lroundf instead of lround since deltas are floats.
3214 2006-09-20 Julien Palmas <julien.palmas@gmail.com>
3216 Reviewed by eseidel. Landed by eseidel.
3218 Test: svg/custom/pattern-y-offset.svg
3220 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
3221 (WebCore::KRenderingPaintServerPatternQuartz::setup):
3223 2006-09-20 David Hyatt <hyatt@apple.com>
3225 Add a new wheelEvent method to ScrollView. Platforms that wish
3226 to handle the wheel event for the scroll view themselves can then
3227 do so there. (Mac lets the underlying NSScrollView do it for now.)
3229 * page/FrameView.cpp:
3230 (WebCore::FrameView::handleWheelEvent):
3231 * platform/ScrollView.h:
3232 (WebCore::ScrollView::wheelEvent):
3234 2006-09-20 Brady Eidson <beidson@apple.com>
3236 Reviewed by Tim Omernick
3238 Part of fixing a crash Tim O showed me that I missed in a release build.
3239 WebKit should be able to call through the bridge to WebCore no matter what -
3240 Replace the _iconDB member with calls to IconDatabase::sharedIconDatabase()
3242 * bridge/mac/WebCoreIconDatabaseBridge.h:
3243 * bridge/mac/WebCoreIconDatabaseBridge.mm:
3244 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
3245 (-[WebCoreIconDatabaseBridge isOpen]):
3246 (-[WebCoreIconDatabaseBridge removeAllIcons]):
3247 (-[WebCoreIconDatabaseBridge _isEmpty]):
3248 (-[WebCoreIconDatabaseBridge isIconExpiredForIconURL:]):
3249 (-[WebCoreIconDatabaseBridge setPrivateBrowsingEnabled:]):
3250 (-[WebCoreIconDatabaseBridge privateBrowsingEnabled]):
3251 (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
3252 (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
3253 (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
3254 (-[WebCoreIconDatabaseBridge retainIconForURL:]):
3255 (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
3256 (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
3257 (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
3258 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
3259 (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]):
3260 (-[WebCoreIconDatabaseBridge _setEnabled:]):
3261 (-[WebCoreIconDatabaseBridge _isEnabled]):
3263 2006-09-20 Anders Carlsson <acarlsson@apple.com>
3267 Add String::split which returns a Vector of Strings and use it instead of
3268 DeprecatedStringList.
3270 * bindings/js/kjs_events.cpp:
3271 (KJS::Clipboard::getValueProperty):
3272 * bindings/js/kjs_window.cpp:
3273 (KJS::parseModalDialogFeatures):
3274 * css/MediaList.cpp:
3275 (WebCore::MediaList::setMediaText):
3277 * html/HTMLFormElement.cpp:
3278 (WebCore::HTMLFormElement::formData):
3279 * html/HTMLLinkElement.cpp:
3280 (WebCore::HTMLLinkElement::tokenizeRelAttribute):
3281 * platform/PlatformString.h:
3282 * platform/String.cpp:
3283 (WebCore::String::split):
3284 * platform/StringImpl.cpp:
3285 * platform/StringImpl.h:
3286 * platform/mac/ClipboardMac.h:
3287 * platform/mac/ClipboardMac.mm:
3288 (WebCore::ClipboardMac::types):
3290 2006-09-20 Justin Garcia <justin.garcia@apple.com>
3292 Reviewed by harrison
3294 * css/cssstyleselector.cpp:
3295 (WebCore::CSSStyleSelector::adjustRenderStyle): Don't call
3296 HTMLElement::isContentEditable just to check the Frame's editability, since
3297 it calls updateRenderering, which can get us into infinite recursion.
3299 2006-09-20 Brady Eidson <beidson@apple.com>
3303 Cleaned up my last patch alot, and made the WebCore icon database disabled by default
3305 * loader/icon/IconDatabase.cpp:
3306 (WebCore::IconDatabase::IconDatabase): Disabled by default
3307 (WebCore::IconDatabase::removeAllIcons): Respect just isOpen() (disabled database will always be closed)
3308 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ditto
3309 (WebCore::IconDatabase::iconForPageURL): Ditto
3310 (WebCore::IconDatabase::isIconExpiredForIconURL): Ditto
3311 (WebCore::IconDatabase::iconURLForPageURL): Ditto
3312 (WebCore::IconDatabase::retainIconForPageURL): Ditto
3313 (WebCore::IconDatabase::releaseIconForPageURL): Ditto
3314 (WebCore::IconDatabase::setIconDataForIconURL): Ditto
3315 (WebCore::IconDatabase::setIconURLForPageURL): Ditto
3316 (WebCore::IconDatabase::hasEntryForIconURL): Ditto
3317 (WebCore::IconDatabase::setEnabled): Fixed a big bug here!
3319 2006-09-20 Adam Roben <aroben@apple.com>
3323 Fixes http://bugs.webkit.org/show_bug.cgi?id=10935
3324 REGRESSION: file upload control with direction:rtl or text-align:right
3325 draws button on top of filename/icon
3327 * rendering/RenderFileUploadControl.cpp:
3328 (WebCore::RenderFileUploadControl::setStyle): Force text-align to
3330 (WebCore::RenderFileUploadControl::paintObject): Fix positioning of
3331 the filename and icon in RTL
3333 2006-09-20 Alice Liu <alice.liu@apple.com>
3335 Reviewed by Adam Roben.
3339 * dom/WheelEvent.cpp:
3340 (WebCore::WheelEvent::WheelEvent):
3341 changed lrint to lround
3343 2006-09-20 Sam Weinig <sam.weinig@gmail.com>
3345 Build Fix. Adds isHorizontal attribute back to WheelEvent
3346 for the Objective-C bindings. If it is found that isHorizontal
3347 is not used, we should remove it again but also remove it's
3348 declaration from PublicDOMInterfaces.h
3351 (WebCore::WheelEvent::isHorizontal):
3352 * dom/WheelEvent.idl:
3354 2006-09-20 David Hyatt <hyatt@apple.com>
3356 Fix for 10945, WheelEvent should support two dimensions at once, since
3357 MacBooks allow for diagonal scrolling. Also enhance the PlatformWheelEvent
3358 to allow for diagonal scrolling.
3362 * dom/EventTargetNode.cpp:
3363 (WebCore::EventTargetNode::dispatchWheelEvent):
3364 * dom/WheelEvent.cpp:
3365 (WebCore::WheelEvent::WheelEvent):
3366 (WebCore::WheelEvent::initWheelEvent):
3368 (WebCore::WheelEvent::wheelDelta):
3369 (WebCore::WheelEvent::wheelDeltaX):
3370 (WebCore::WheelEvent::wheelDeltaY):
3371 * dom/WheelEvent.idl:
3372 * page/FrameView.cpp:
3373 (WebCore::FrameView::handleWheelEvent):
3374 * platform/PlatformWheelEvent.h:
3375 (WebCore::PlatformWheelEvent::deltaX):
3376 (WebCore::PlatformWheelEvent::deltaY):
3377 (WebCore::PlatformWheelEvent::normalize):
3378 * platform/mac/WheelEventMac.mm:
3379 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3381 2006-09-19 Eric Seidel <eric@eseidel.com>
3385 Split KCanvasResources.* into multiple files (and some other minor spacing changes).
3387 No tests were harmed in the making of this patch.
3389 * WebCore.xcodeproj/project.pbxproj:
3390 * kcanvas/KCanvasClipper.cpp: Added.
3391 (WebCore::operator<<):
3392 * kcanvas/KCanvasClipper.h: Added.
3393 * kcanvas/KCanvasFilters.h:
3394 * kcanvas/KCanvasImage.h:
3395 * kcanvas/KCanvasMarker.cpp: Added.
3396 * kcanvas/KCanvasMarker.h: Added.
3397 * kcanvas/KCanvasMasker.cpp: Added.
3398 (WebCore::KCanvasMasker::KCanvasMasker):
3399 (WebCore::KCanvasMasker::setMask):
3400 (WebCore::KCanvasMasker::externalRepresentation):
3401 (WebCore::getMaskerById):
3402 * kcanvas/KCanvasMasker.h: Added.
3403 * kcanvas/KCanvasResource.cpp: Added.
3404 (WebCore::KCanvasResource::invalidate):
3405 (WebCore::KCanvasResource::externalRepresentation):
3406 (WebCore::getResourceById):
3407 (WebCore::getPaintServerById):
3408 * kcanvas/KCanvasResource.h: Added.
3409 * kcanvas/KCanvasResources.cpp: Removed.
3410 * kcanvas/KCanvasResources.h: Removed.
3411 * kcanvas/RenderPath.cpp:
3412 * kcanvas/RenderSVGContainer.cpp:
3413 * kcanvas/RenderSVGImage.cpp:
3414 * kcanvas/RenderSVGText.cpp:
3415 * kcanvas/device/KRenderingPaintServer.h:
3416 * kcanvas/device/quartz/KCanvasMaskerQuartz.h:
3417 * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
3418 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
3419 * ksvg2/svg/SVGClipPathElement.h:
3420 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
3421 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
3422 * ksvg2/svg/SVGFECompositeElement.cpp:
3423 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
3424 * ksvg2/svg/SVGFELightElement.cpp:
3425 * ksvg2/svg/SVGFEOffsetElement.cpp:
3426 * ksvg2/svg/SVGFETurbulenceElement.cpp:
3427 * ksvg2/svg/SVGFilterElement.cpp:
3428 * ksvg2/svg/SVGLinearGradientElement.cpp:
3429 * ksvg2/svg/SVGMarkerElement.h:
3430 * ksvg2/svg/SVGMaskElement.h:
3432 2006-09-19 Brady Eidson <beidson@apple.com>
3434 Reviewed by Sarge Decker
3436 <rdar://problem/4739892> and <rdar://problem/4729797>
3437 - WebCore::IconDatabase needs to have and respect an enabled() flag
3438 - Mail on ToT WebKit crashes in IconDatabase code when mailing a page from Safari
3440 * bridge/mac/WebCoreIconDatabaseBridge.h:
3441 * bridge/mac/WebCoreIconDatabaseBridge.mm:
3442 (-[WebCoreIconDatabaseBridge _setEnabled:]): Added
3443 (-[WebCoreIconDatabaseBridge _isEnabled]): Added
3444 * loader/icon/IconDatabase.cpp:
3445 (WebCore::IconDatabase::IconDatabase):
3446 (WebCore::IconDatabase::open): Don't open if disabled
3447 (WebCore::IconDatabase::removeAllIcons): Ignore if disabled/closed
3448 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ignore if disabled/closed
3449 (WebCore::IconDatabase::iconForPageURL): Default Icon if disabled/closed
3450 (WebCore::IconDatabase::isIconExpiredForIconURL): Default return if disabled/closed
3451 (WebCore::IconDatabase::iconURLForPageURL): Default return if disabled/closed
3452 (WebCore::IconDatabase::retainIconForPageURL): Ignore if disabled/closed
3453 (WebCore::IconDatabase::releaseIconForPageURL): Ignore if disabled/closed
3454 (WebCore::IconDatabase::releaseIconURL):
3455 (WebCore::IconDatabase::setIconDataForIconURL): Ignore if disabled/closed
3456 (WebCore::IconDatabase::setIconURLForPageURL): Ignore if disabled/closed
3457 (WebCore::IconDatabase::hasEntryForIconURL): Default return if disabled/closed
3458 (WebCore::IconDatabase::setEnabled): Added
3459 * loader/icon/IconDatabase.h:
3460 (WebCore::IconDatabase::enabled): Added
3462 (WebCore::Frame::endIfNotLoading): do an IconDatabase::enabled() check before bothering to load the icon
3463 * platform/mac/ResourceLoaderMac.mm: Removed extraneous #include
3465 2006-09-20 David Hyatt <hyatt@apple.com>
3467 Massage mouse wheel handling so that it is more cross-platform. Make
3468 all the work happen in handleWheelEvent on the FrameView.
3470 Reviewed by bradee-oh
3472 * bridge/mac/FrameMac.mm:
3473 (WebCore::FrameMac::wheelEvent):
3474 * page/FrameView.cpp:
3475 (WebCore::FrameView::handleWheelEvent):
3476 * platform/PlatformWheelEvent.h:
3477 (WebCore::PlatformWheelEvent::platformDelta):
3478 (WebCore::PlatformWheelEvent::delta):
3479 * platform/mac/WheelEventMac.mm:
3480 (WebCore::platformDeltaForEvent):
3481 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3482 * rendering/RenderLayer.cpp:
3483 (WebCore::RenderLayer::scroll):
3484 * rendering/RenderObject.cpp:
3485 (WebCore::RenderObject::scroll):
3487 2006-09-19 Eric Seidel <eric@eseidel.com>
3491 Improve test output for filters with bounding-box relative sizes.
3492 http://bugs.webkit.org/show_bug.cgi?id=8585
3494 Many test results updated.
3496 * kcanvas/KCanvasFilters.cpp:
3497 (WebCore::KCanvasFilter::externalRepresentation):
3499 2006-09-19 Eric Seidel <eric@eseidel.com>
3503 Markers should clip to their viewport.
3504 http://bugs.webkit.org/show_bug.cgi?id=5967
3506 Test: svg/custom/marker-overflow-clip.svg
3508 * kcanvas/KCanvasResources.cpp:
3509 (WebCore::KCanvasMarker::KCanvasMarker):
3510 (WebCore::KCanvasMarker::setMarker):
3511 (WebCore::KCanvasMarker::draw):
3512 * kcanvas/KCanvasResources.h:
3513 (WebCore::KCanvasMasker::mask):
3514 * ksvg2/svg/SVGMarkerElement.cpp:
3515 (WebCore::SVGMarkerElement::SVGMarkerElement):
3516 (WebCore::SVGMarkerElement::parseMappedAttribute):
3517 (WebCore::SVGMarkerElement::canvasResource):
3518 (WebCore::SVGMarkerElement::createRenderer):
3520 2006-09-19 Justin Garcia <justin.garcia@apple.com>
3524 Backing out my recent change.
3526 * css/cssstyleselector.cpp:
3527 (WebCore::CSSStyleSelector::adjustRenderStyle):
3529 2006-09-19 Brady Eidson <beidson@apple.com>
3531 Reviewed by Kevin McCullough
3533 http://bugs.webkit.org/show_bug.cgi?id=10940
3534 Opening a PDF in a new tab/window creates a documentless-frame
3535 and we deref the document without checking its validity
3538 (WebCore::Frame::iconURL):
3540 2006-09-19 Justin Garcia <justin.garcia@apple.com>
3542 Reviewed by harrison
3544 <rdar://problem/4735272>
3545 Can not click into link in programmatically editable content
3547 * css/cssstyleselector.cpp:
3548 (WebCore::CSSStyleSelector::adjustRenderStyle): We stopped using
3549 userModify to implement document wide editability.
3551 2006-09-19 MorganL <morlmor@yahoo.com>
3553 Reviewed by Darin and landed by Brady
3555 Fixes http://bugs.webkit.org/show_bug.cgi?id=10939
3556 Build broken when SVG is not enabled.
3558 * dom/XMLTokenizer.cpp:
3559 (WebCore::XMLTokenizer::startElementNs):
3561 2006-09-19 Justin Garcia <justin.garcia@apple.com>
3563 Reviewed by harrison
3565 <rdar://problem/4727383> REGRESSION: Pasting plain text with tabs into Blot converts the tabs to single spaces
3567 Pasting plain text results in a match style paste, and the insertion
3568 position is whitespace normal, which clobbers the whitespace:pre on
3569 tab spans. Skip changes to the whitespace mode when computing a style
3570 change for tab spans or the text nodes inside tab spans.
3572 * editing/ApplyStyleCommand.cpp:
3573 (WebCore::StyleChange::init): Don't change the whitespace mode inside
3576 2006-09-19 David Hyatt <hyatt@apple.com>
3578 Fix for bug 5298, shape=default not supported for image maps. Implement
3583 * html/HTMLAreaElement.cpp:
3584 (WebCore::HTMLAreaElement::getRegion):
3585 * html/HTMLMapElement.cpp:
3586 (WebCore::HTMLMapElement::mapMouseEvent):
3588 2006-09-19 Adam Roben <aroben@apple.com>
3592 Fixes http://bugs.webkit.org/show_bug.cgi?id=10824
3593 "no file selected" placeholder text missing from file upload control
3595 * WebCore.xcodeproj/project.pbxproj:
3596 * rendering/RenderFileUploadControl.cpp: Remove class
3597 RenderFileUploadInnerFileBox, rename defaultFilenameNumChars to
3598 defaultWidthNumChars
3599 (WebCore::RenderFileUploadControl::RenderFileUploadControl): Call
3600 RenderBlock constructor instead of RenderFlexibleBox,
3601 (WebCore::RenderFileUploadControl::setStyle): Remove references to
3603 (WebCore::RenderFileUploadControl::valueChanged): Call repaint()
3604 instead of updateIconAndFileName() (which has been removed)
3605 (WebCore::RenderFileUploadControl::updateFromElement): Remove
3606 references to m_fileBox, don't call updateIconAndFilename()
3607 (WebCore::RenderFileUploadControl::maxFilenameWidth): Calculate width
3608 without using m_fileBox
3609 (WebCore::RenderFileUploadControl::createButtonStyle): Remove
3610 now-unnecessary display:box rule.
3611 (WebCore::RenderFileUploadControl::paintObject): Remove redundant call
3612 to paintingDisabled() now that Icon::paint() does it, and add code to
3613 paint the filename directly.
3614 (WebCore::RenderFileUploadControl::calcMinMaxWidth): Move this method
3615 out of RenderFileUploadInnerFileBox and into RenderFileUploadControl