d8ae83ffbc229bb4334c87279089d67697820025
[WebKit-https.git] / WebCore / ChangeLog
1 2007-01-18  David Kilzer  <ddkilzer@kilzer.net>
2
3         Reviewed by Darin and Mitz.
4
5         - fix http://bugs.webkit.org/show_bug.cgi?id=12305
6           REGRESSION: Images do not load in video sections on CNN.com homepage
7
8         <rdar://problem/4931480> REGRESSION: Images do not load in video sections on CNN.com homepage (12305)
9
10         Test: fast/dom/HTMLImageElement/image-lowsrc-getset.html
11
12         * html/HTMLAttributeNames.in: Added lowsrc.
13         * html/HTMLImageElement.cpp:
14         (WebCore::HTMLImageElement::isURLAttribute): Added lowsrc.
15         (WebCore::HTMLImageElement::lowsrc): Added.
16         (WebCore::HTMLImageElement::setLowsrc): Added.
17         * html/HTMLImageElement.h: Added lowsrc and setLowsrc.
18         * html/HTMLImageElement.idl: Added lowsrc.
19
20 2007-01-18  Simon Hausmann  <hausmann@kde.org>
21
22         Reviewed by Zack.
23
24         * WebCore.pro: Remove generated files on make clean.
25
26 2007-01-17  Alice Liu  <alice.liu@apple.com>
27
28         Reviewed by Harrison.
29
30         Fix for <rdar://problem/4894155> REGRESSION: Extra line break is pasted with content into message body after choosing File - Paste
31
32         Migration of some editing code from WebHTMView to WebCore::Editor
33         resulted in not calling pasteboardTypesForSelection, which Mail was
34         overriding for the special purpose of adding a type to the
35         pasteboard after WebKit did.  This patch adds 2 separate code paths
36         for Tiger and Leopard.  On Tiger we give in and call the WebView's
37         pasteboardTypesForSelection.  On Leopard we call a delegate after
38         the pasteboard types are set. 
39
40         * bridge/EditorClient.h:
41         * editing/Editor.h:
42         * platform/Pasteboard.h:
43         * platform/graphics/svg/SVGImageEmptyClients.h:
44         (WebCore::SVGEmptyEditorClient::didSetSelectionTypesForPasteboard):
45         (WebCore::SVGEmptyEditorClient::pasteboardTypesForSelection):
46         * platform/mac/PasteboardMac.mm:
47         (WebCore::Pasteboard::Pasteboard):
48         (WebCore::Pasteboard::clear):
49         (WebCore::Pasteboard::writeSelection):
50         (WebCore::Pasteboard::writeURL):
51         (WebCore::Pasteboard::plainText):
52         (WebCore::Pasteboard::documentFragment):
53
54 2007-01-17  John Sullivan  <sullivan@apple.com>
55
56         Reviewed by Darin
57
58         - WebCore part of fix for <rdar://problem/4462420> REGRESSION: Mail hangs during 
59           Replace All if the replacement string contains the search string
60         
61         * page/Frame.h:
62         * page/Frame.cpp:
63         (WebCore::Frame::findString):
64         new startInSelection parameter -- if true, search starts looking in selection; if false,
65         search starts looking after the selection
66         
67         * page/mac/WebCoreFrameBridge.h:
68         * page/mac/WebCoreFrameBridge.mm:
69         (-[WebCoreFrameBridge searchFor:direction:caseSensitive:wrap:startInSelection:]):
70         new startInSelection parameter, passed through to Frame::findString()
71
72         * editing/JSEditor.cpp:
73         pass false for new findString parameter, to match old behavior
74
75 2007-01-17  Beth Dakin  <bdakin@apple.com>
76
77         Rubber stamped by Darin.
78
79         * rendering/HitTestResult.cpp: Just added a comment.
80
81 2007-01-17  Justin Garcia  <justin.garcia@apple.com>
82
83         Reviewed by darin
84         
85         <rdar://problem/4920488>
86         REGRESSION: A crash occurs at WebCore::Range::processContents () when removing formatting from selected text (that contains a link)
87
88         * dom/Range.cpp:
89         (WebCore::Range::commonAncestorContainer): Return null if the nodes
90         don't have a common ancestor.  As a side effect, the public 
91         commonAncestorContainer now sets an exception if the Range starts
92         in one document and ends in another, or starts or ends in a tree
93         that's been removed from the document.  The spec doesn't cover
94         this and there is no precedent in other browsers for this case because
95         they don't allow invalid Ranges (you can create one with WebCore
96         by removing a node that contains the start/end of a Range).
97         (WebCore::Range::compareBoundaryPoints): If the the two positions
98         are in nodes that have no common ancestor, return null.  This doesn't
99         change the behavior of the public compareBoundaryPoints: it already
100         throws an exception if the two positions are in nodes that don't have
101         a common ancestor.  This follows the spec.
102
103 2007-01-17  John Sullivan  <sullivan@apple.com>
104
105         The one word was typed by me, but only after debugging for a long time with Darin.
106
107         - fixed <rdar://problem/4912002> REGRESSION: Series of words marked as a single misspelled word
108
109         * editing/TextIterator.cpp:
110         (WebCore::WordAwareIterator::WordAwareIterator):
111         We were creating a TextIterator with the default kind, but WordAwareIterator is designed to work
112         in concert with CharacterIterator, so they need to use the same kind. CharacterIterator uses
113         kind RUNFINDER, so WordAwareIterator needs to do so also.
114
115 2007-01-17  Adele Peterson  <adele@apple.com>
116
117         Reviewed by Brady.
118
119         Fix for <rdar://problem/4900895> REGRESSION: onChange doesn't always fire for popups that have had value changed by JS
120
121         No test case since you need to open up the menu to fire onChange.
122
123         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::setSelectedIndex):
124           Keep track of m_lastOnChangeIndex even when we're not firing onChange.  Since
125           the selected index has changed, we still want the m_lastOnChangeIndex to be up to date when we compare
126           it later.  This matches our behavior in Safari 2.0.
127
128 2007-01-17  Adele Peterson  <adele@apple.com>
129
130         Reviewed by Darin and John.
131
132         - Fix for <rdar://problem/4816550> REGRESSION: autoscrolling doesn't work after double-click
133
134         * page/EventHandler.cpp: (WebCore::EventHandler::handleMousePressEvent): Set swallowEvent bool instead
135           of returning early for double and triple clicks.
136
137 2007-01-17  Darin Adler  <darin@apple.com>
138
139         Reviewed by Hyatt.
140
141         * rendering/RenderObject.h: Removed unused nextEditable and previousEditable.
142         * rendering/RenderObject.cpp: Ditto.
143
144 2007-01-17  Darin Adler  <darin@apple.com>
145
146         Reviewed by Maciej.
147
148         - fix http://bugs.webkit.org/show_bug.cgi?id=12278
149           <rdar://problem/4928705> REGRESSION(r13070): Dragged image size includes padding (12278)
150
151         * WebCore.exp: Added HitTestResult::imageRect,
152         removed HitTestResult::boundingBox.
153
154         * rendering/HitTestResult.h:
155         * rendering/HitTestResult.cpp: (WebCore::HitTestResult::imageRect):
156         Added. Returns the content rectangle of the image.
157
158         * rendering/RenderObject.h:
159         * rendering/RenderObject.cpp:
160         (WebCore::RenderObject::absolutePosition): Made const.
161         (WebCore::RenderObject::contentBox): Added.
162         (WebCore::RenderObject::absoluteContentBox): Added.
163
164         * rendering/RenderBox.h:
165         * rendering/RenderBox.cpp:
166         (WebCore::RenderBox::absolutePosition): Made const.
167
168         * rendering/RenderTableCell.h:
169         * rendering/RenderTableCell.cpp:
170         (WebCore::RenderTableCell::absolutePosition): Made const.
171
172         * rendering/RenderView.h:
173         * rendering/RenderView.cpp:
174         (WebCore::RenderView::absolutePosition): Made const.
175
176 2007-01-17  Adele Peterson  <adele@apple.com>
177
178         Reviewed by Beth.
179
180         Fix for  http://bugs.webkit.org/show_bug.cgi?id=10139
181         <rdar://problem/4823028> REGRESSION: Reproducible crash when selecting a popup/button with ::selection pseudostyle
182
183         Test: fast/css/pseudostyle-anonymous-text.html
184
185         * rendering/RenderObject.cpp: (WebCore::RenderObject::getPseudoStyle): Nil check the node.
186
187 2007-01-17  Adele Peterson  <adele@apple.com>
188
189         Reviewed by Anders and John.
190
191         Fix for http://bugs.webkit.org/show_bug.cgi?id=11278
192         <rdar://problem/4826875> REGRESSION: Popup width doesn't change to accommodate dynamic changes to options
193
194         Test: fast/forms/menulist-width-change.html
195
196         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::updateFromElement):
197           When the options change, call setNeedsLayoutAndMinMaxRecalc.
198
199 2007-01-16  Alexey Proskuryakov  <ap@webkit.org>
200
201         Reviewed by Maciej.
202
203         http://bugs.webkit.org/show_bug.cgi?id=12268
204         Give object prototypes their own names
205
206         * bindings/js/kjs_html.cpp: Changed the names of KJS:HTMLElement and KJS::HTMLElement to 
207         not match the names of their WebCore counterparts. The "DOM" prefix I gave them doesn't 
208         seem to carry much sense, but matches some other kjs_html object names.
209
210         * bindings/scripts/CodeGeneratorJS.pm: Append "Proto" to interface name for the prototype's ClassInfo.
211
212         * bindings/js/JSHTMLInputElementBase.cpp:
213         (WebCore::JSHTMLInputElementBasePrototypeFunction::callAsFunction):
214         (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
215         * bindings/js/JSHTMLInputElementBase.h:
216         * bindings/js/JSXMLHttpRequest.cpp:
217         (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
218         (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
219         (KJS::JSXMLHttpRequestPrototypeFunction::callAsFunction):
220         * bindings/js/JSXMLHttpRequest.h:
221         * bindings/js/JSXSLTProcessor.cpp:
222         (KJS::JSXSLTProcessor::JSXSLTProcessor):
223         (KJS::XSLTProcessorPrototypeFunction::callAsFunction):
224         (KJS::XSLTProcessorConstructorImp::XSLTProcessorConstructorImp):
225         * bindings/js/kjs_css.cpp:
226         (KJS::DOMCSSStyleDeclaration::DOMCSSStyleDeclaration):
227         (KJS::DOMCSSStyleDeclarationPrototypeFunction::callAsFunction):
228         (KJS::DOMMediaList::DOMMediaList):
229         (KJS::KJS::DOMMediaListPrototypeFunction::callAsFunction):
230         (KJS::DOMCSSStyleSheet::DOMCSSStyleSheet):
231         (KJS::DOMCSSStyleSheetPrototypeFunction::callAsFunction):
232         (KJS::DOMCSSValue::DOMCSSValue):
233         (KJS::DOMCSSValuePrototypeFunction::callAsFunction):
234         * bindings/js/kjs_css.h:
235         * bindings/js/kjs_dom.cpp:
236         (KJS::DOMNode::DOMNode):
237         (KJS::DOMNodePrototypeFunction::callAsFunction):
238         (KJS::DOMEventTargetNode::DOMEventTargetNode):
239         (KJS::DOMEventTargetNodePrototypeFunction::callAsFunction):
240         (KJS::DOMNamedNodeMap::DOMNamedNodeMap):
241         (KJS::DOMNamedNodeMapPrototypeFunction::callAsFunction):
242         * bindings/js/kjs_dom.h:
243         * bindings/js/kjs_domnode.h:
244         * bindings/js/kjs_events.cpp:
245         (KJS::DOMEvent::DOMEvent):
246         (KJS::DOMEventPrototypeFunction::callAsFunction):
247         (KJS::Clipboard::Clipboard):
248         (KJS::ClipboardPrototypeFunction::callAsFunction):
249         * bindings/js/kjs_events.h:
250         * bindings/js/kjs_html.cpp:
251         (KJS::JSHTMLDocumentPrototypeFunction::callAsFunction):
252         (KJS::):
253         (KJS::JSHTMLDocument::JSHTMLDocument):
254         (KJS::JSHTMLElementPrototypeFunction::callAsFunction):
255         (KJS::JSHTMLElement::JSHTMLElement):
256         (KJS::JSHTMLCollection::JSHTMLCollection):
257         (KJS::JSHTMLCollectionPrototypeFunction::callAsFunction):
258         * bindings/js/kjs_html.h:
259         * bindings/js/kjs_navigator.cpp:
260         * bindings/js/kjs_traversal.cpp:
261         (KJS::DOMNodeFilter::DOMNodeFilter):
262         (KJS::DOMNodeFilterPrototypeFunction::callAsFunction):
263         * bindings/js/kjs_window.cpp:
264         (KJS::Window::clear):
265         Changed Proto to Prototype, and ProtoFunc to PrototypeFunction.
266
267 2007-01-17  Lars Knoll <lars@trolltech.com>
268
269         Reviewed by Zack and Darin
270
271         Fix the Qt build again after the latest Image changes.
272         Also make some of the methods implemented in ImageCG 
273         crossplatform.
274
275         * platform/graphics/BitmapImage.h:
276         * platform/graphics/Image.cpp:
277         (WebCore::Image::fillWithSolidColor):
278         (WebCore::calculatePatternScale):
279         (WebCore::Image::drawTiled):
280         * platform/graphics/Image.h:
281         * platform/graphics/cg/ImageCG.cpp:
282         (WebCore::BitmapImage::draw):
283         * platform/graphics/qt/ImageQt.cpp:
284         (WebCore::Image::loadPlatformResource):
285         (WebCore::Image::drawPattern):
286         (WebCore::BitmapImage::initPlatformData):
287         (WebCore::BitmapImage::invalidatePlatformData):
288         (WebCore::BitmapImage::draw):
289         (WebCore::BitmapImage::drawPattern):
290         * platform/qt/TemporaryLinkStubs.cpp:
291
292 2007-01-17  Darin Adler  <darin@apple.com>
293
294         - quick attempt to fix the Qt build
295
296         * platform/graphics/qt/ImageQt.cpp: (WebCore::BitmapImage::drawTiled):
297         Remove obsolete parameters from this stub.
298
299 2007-01-17  Eric Seidel  <eric@webkit.org>
300
301         Reviewed by rwlbuis.
302
303         Test: svg/custom/inner-svg-hit-test.svg
304
305         * rendering/RenderSVGContainer.cpp:
306         (WebCore::RenderSVGContainer::nodeAtPoint): never allow containers to be hit.
307
308 2007-01-17  Lars Knoll <lars@trolltech.com>
309
310         Reviewed by Zack
311
312         Don't call receivedResponse twice for file: URLs.
313         Never call back into the ResourceHandleClient once
314         cancel() has been called on the ResourceHandle.
315
316         * WebCore.pro:
317         * platform/network/qt/ResourceHandleManagerQt.cpp:
318         (WebCore::ResourceHandleManager::cancel):
319         (WebCore::ResourceHandleManager::receivedResponse):
320         (WebCore::ResourceHandleManager::receivedData):
321         (WebCore::ResourceHandleManager::receivedFinished):
322         (WebCore::FileLoader::request):
323         (WebCore::FileLoader::parseDataUrl):
324         (WebCore::WebCoreHttp::scheduleNextRequest):
325         * platform/network/qt/ResourceHandleManagerQt.h:
326
327 2007-01-17  Eric Seidel  <eric@webkit.org>
328
329         No review, build fix only.
330
331         * platform/graphics/cg/ImageCG.cpp: correct drawPatternCombined to drawPattern
332         (WebCore::Image::drawPattern):
333         (WebCore::Image::drawTiled):
334
335 2007-01-17  Eric Seidel  <eric@webkit.org>
336
337         Reviewed by mitz and rwlbuis.
338         
339         SVGs do not work as background images:
340         http://bugs.webkit.org/show_bug.cgi?id=12096
341
342         Tests updated:
343         - fast/images/svg-as-background.svg: now passes
344         - fast/images/svg-as-tiled-background.svg: now passes
345
346         * platform/graphics/BitmapImage.h:
347         (WebCore::BitmapImage::nativeImageForCurrentFrame):
348         (WebCore::BitmapImage::mayFillWithSolidColor):
349         (WebCore::BitmapImage::solidColor):
350         * platform/graphics/Image.h:
351         (WebCore::Image::mayFillWithSolidColor):
352         (WebCore::Image::solidColor):
353         (WebCore::Image::nativeImageForCurrentFrame):
354         (WebCore::Image::startAnimation):
355         * platform/graphics/cg/ImageCG.cpp:
356         (WebCore::Image::drawPatternCallback):
357         (WebCore::Image::drawPatternCombined):
358         (WebCore::caculatePatternScale):
359         (WebCore::Image::drawTiled):
360         * platform/graphics/cg/PDFDocumentImage.cpp:
361         * platform/graphics/cg/PDFDocumentImage.h:
362         * platform/graphics/svg/SVGImage.cpp:
363         (WebCore::SVGImage::nativeImageForCurrentFrame):
364         * platform/graphics/svg/SVGImage.h:
365
366 2007-01-17  Rob Buis  <buis@kde.org>
367
368         Reviewed by Eric
369
370         Add proper condition for rx attribute negative check.
371
372         * ksvg2/svg/SVGRectElement.cpp:
373         (WebCore::SVGRectElement::parseMappedAttribute):
374
375 2007-01-17  Lars Knoll <lars@trolltech.com>
376
377         Reviewed by Zack
378
379         change all notImplemented() macros to use qDebug
380         instead of fprintf(stder, ...)
381
382         * loader/qt/DocumentLoaderQt.cpp:
383         * loader/qt/FrameLoaderQt.cpp:
384         * page/qt/EventHandlerQt.cpp:
385         * page/qt/FrameQt.cpp:
386         * platform/graphics/qt/GraphicsContextQt.cpp:
387         * platform/graphics/qt/IconQt.cpp:
388         * platform/network/qt/ResourceHandleManagerQt.cpp:
389         * platform/network/qt/ResourceHandleQt.cpp:
390         * platform/qt/CursorQt.cpp:
391         * platform/qt/FileChooserQt.cpp:
392         * platform/qt/MimeTypeRegistryQt.cpp:
393         * platform/qt/PageQt.cpp: Removed.
394         * platform/qt/PopupMenuQt.cpp:
395         * platform/qt/ScrollViewQt.cpp:
396         * platform/qt/TemporaryLinkStubs.cpp:
397         * platform/qt/TextBoundaries.cpp:
398         * platform/qt/WidgetQt.cpp:
399
400 2007-01-16  Brady Eidson  <beidson@apple.com>
401
402         Reviewed by Oliver
403
404         A few enhancements to the HTTP Auth architecture
405
406         * platform/network/ProtectionSpace.cpp:
407         (WebCore::ProtectionSpace::isProxy):
408         (WebCore::ProtectionSpace::receivesCredentialSecurely):
409         * platform/network/ProtectionSpace.h:
410
411 2007-01-16  Alice Liu  <alice.liu@apple.com>
412
413         Reviewed by harrison.
414
415         Fixed <rdar://problem/4921134> WebKit needs extensible cut/copy to allow additional types to be written to pasteboard
416
417         * WebCore.xcodeproj/project.pbxproj:
418         * bridge/EditorClient.h:
419         * editing/Editor.cpp:
420         (WebCore::Editor::copy):
421         (WebCore::Editor::didWriteSelectionToPasteboard):
422         * editing/Editor.h:
423         * platform/graphics/svg/SVGImageEmptyClients.h:
424         (WebCore::SVGEmptyEditorClient::didWriteSelectionToPasteboard):
425
426 2007-01-16  Justin Garcia  <justin.garcia@apple.com>
427
428         Reviewed by harrison
429         
430         <rdar://problem/4747450>
431         Gmail Editor: Caret doesn't always position itself after list marker
432         <rdar://problem/4917055>
433         GMail Editor: A hang can occur when attempting to apply list styling to selected indented text
434
435         * editing/TextIterator.cpp:
436         (WebCore::TextIterator::rangeFromLocationAndLength): Use VisiblePositions
437         to compute the end of a run for emitted '\n's, because it's often wrong
438         in that case.
439
440 2007-01-16  Darin Adler  <darin@apple.com>
441
442         - quick lame attempt to get Qt compiling again
443
444         * platform/qt/ContextMenuQt.cpp: Removed show() function.
445
446 2007-01-17  Nicholas Shanks  <contact@nickshanks.com>
447
448         Reviewed by Darin.
449
450         * platform/network/ResourceRequest.h:
451         (WebCore::ResourceRequest::setHTTPAccept): Correct argument name.
452
453 2007-01-16  Beth Dakin  <bdakin@apple.com>
454
455         Reviewed by Adam.
456
457         Get rid of show() and hide() since they don't do anything.
458
459         * page/ContextMenuController.cpp:
460         (WebCore::ContextMenuController::handleContextMenuEvent):
461         * platform/ContextMenu.h:
462         * platform/mac/ContextMenuMac.mm:
463
464 2007-01-16  Lars Knoll <lars@trolltech.com>
465
466         Reviewed by Zack
467
468         Cleaned up the way we create native widgets. They are
469         now not created in WebCore anymore, but in the new
470         Qt API to WebKit.
471
472         Fix a compile issue in the ResourceHandleManager.
473
474         * WebCore.pro:
475         * platform/ScrollView.h:
476         * platform/Widget.h:
477         (WebCore::ResourceHandleManager::cancel):
478         * platform/qt/ScrollViewCanvasQt.cpp:
479         (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
480         (WebCore::ScrollViewCanvasQt::paintEvent):
481         (WebCore::ScrollViewCanvasQt::mouseMoveEvent):
482         (WebCore::ScrollViewCanvasQt::mousePressEvent):
483         (WebCore::ScrollViewCanvasQt::mouseReleaseEvent):
484         (WebCore::ScrollViewCanvasQt::handleKeyEvent):
485         * platform/qt/ScrollViewCanvasQt.h:
486         * platform/qt/ScrollViewQt.cpp:
487         (WebCore::ScrollView::ScrollView):
488         (WebCore::ScrollView::setScrollArea):
489         (WebCore::ScrollView::addChild):
490         * platform/qt/WidgetQt.cpp:
491         * platform/network/qt/ResourceHandleManagerQt.cpp:
492
493 2007-01-16  Lars Knoll <lars@trolltech.com>
494
495         Reviewed by Zack
496
497         Looks like ResourceHandle _has_ to do everything
498         asynchronously if we don't want to run into
499         lots of trouble in the loader.
500
501         Implement support data: URLs.
502
503         Remove some unused Qt only code in ResourceHandleClient.h
504
505         * platform/network/ResourceHandleClient.h:
506         * platform/network/qt/ResourceHandleManagerQt.cpp:
507         (WebCore::RequestQt::setURL):
508         (WebCore::ResourceHandleManager::add):
509         (WebCore::ResourceHandleManager::cancel):
510         (WebCore::ResourceHandleManager::receivedFinished):
511         (WebCore::LoaderThread::run):
512         (WebCore::FileLoader::request):
513         (WebCore::FileLoader::sendData):
514         (WebCore::FileLoader::parseDataUrl):
515         * platform/network/qt/ResourceHandleManagerQt.h:
516
517 2007-01-16  Eric Seidel  <eric@webkit.org>
518
519         Reviewed by mitz.
520
521         Refactor drawTiled implementations in preparation for combining them.
522         Removed unused RoundTile code path.
523
524         * platform/graphics/cg/ImageCG.cpp:
525         (WebCore::drawPattern):
526         (WebCore::BitmapImage::drawTiled):
527         (WebCore::caculatePatternScale):
528
529 2007-01-16  Darin Adler  <darin@apple.com>
530
531         Reviewed by Mark Rowe.
532
533         - removed unused field from loader
534
535         * loader/loader.cpp:
536         (WebCore::Loader::numRequests):
537         (WebCore::Loader::cancelRequests):
538         * loader/loader.h:
539
540 2007-01-15  Rob Buis  <buis@kde.org>
541
542         Reviewed by Eric.
543
544         http://bugs.webkit.org/show_bug.cgi?id=12272
545         SVG picture is clipped (edges not visible)
546
547         Expose css dpi constant and use it for svg, making
548         1in amount to 96 pixels like for html.
549
550         * css/CSSPrimitiveValue.cpp:
551         (WebCore::CSSPrimitiveValue::computeLengthFloat):
552         (WebCore::scaleFactorForConversion):
553         * css/csshelper.h:
554         * ksvg2/svg/SVGLength.cpp:
555         (WebCore::SVGLength::value):
556         (WebCore::SVGLength::setValue):
557         * ksvg2/svg/SVGLength.h:
558
559 2007-01-15  Brady Eidson  <beidson@apple.com>
560
561         Reviewed by Adam
562         
563         CFNet additions
564
565         * platform/network/AuthenticationChallenge.cpp:
566         (WebCore::operator==):
567         * platform/network/AuthenticationChallenge.h:
568         (WebCore::AuthenticationChallenge::sourceHandle):
569         (WebCore::AuthenticationChallenge::cfURLAuthChallengeRef):
570         * platform/network/ResourceError.h:
571         * platform/network/ResourceHandle.h:
572         * platform/network/ResourceHandleInternal.h:
573         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
574
575 2007-01-15  Eric Seidel  <eric@webkit.org>
576
577         Reviewed by hyatt.
578
579         Don't map attributes in namespaces other than null to CSS properties.
580         
581         Test: svg/custom/attribute-namespace-check.svg
582
583         * ksvg2/svg/SVGStyledElement.cpp:
584         (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName):
585
586 2007-01-15  Lars Naesbye Christensen  <larsnaesbye@stud.ku.dk>
587
588         Reviewed by Darin.
589
590         - http://bugs.webkit.org/show_bug.cgi?id=11112
591           add a drop shadow to the hand cursor used for links
592
593         * Resources/linkCursor.png: Added a drop shadow.
594
595 2007-01-15  Darin Adler  <darin@apple.com>
596
597         Reviewed by Adam.
598
599         - fix http://bugs.webkit.org/show_bug.cgi?id=12190
600           REGRESSION: Placeholder text does not reflect dynamic updates
601
602         Test: fast/forms/placeholder-set-attribute.html
603
604         * html/HTMLTextFieldInnerElement.cpp:
605         (WebCore::HTMLSearchFieldCancelButtonElement::defaultEventHandler):
606         Call onSearch on the element since I removed it from the renderer.
607
608         * rendering/RenderTextControl.h: Added explicit virtual keywords for overrides
609         of virtual functions. Removed the unneeded onSearch function. Made the inheritance
610         from PopupMenuClient be private, and made the overrides all private. Replaced the
611         showPlaceholderIfNeeded and hidePlaceholderIfNeeded functions with updatePlaceholder.
612         * rendering/RenderTextControl.cpp:
613         (WebCore::RenderTextControl::createResultsButtonStyle): Added an assertion.
614         (WebCore::RenderTextControl::updatePlaceholder): Added. Replaces the two
615         functions, showPlaceholderIfNeeded and hidePlaceholderIfNeeded.
616         (WebCore::RenderTextControl::updateFromElement): Added call to
617         updatePlaceholder before updating the value. Also improved the structure
618         of the function and corrected incorrect use of copy and replace.
619         (WebCore::RenderTextControl::updateCancelButtonVisibility): Added an
620         assertion and removed an unneeded local variable.
621         (WebCore::RenderTextControl::subtreeHasChanged): Removed an unneeded
622         null check and virtual function calls.
623         (WebCore::RenderTextControl::forwardEvent): Replaced calls to the old
624         functions with calls to updatePlaceholder.
625         (WebCore::RenderTextControl::selectionChanged): Changed code to dispatch
626         the select event directly -- I plan to remove the onSelect function, which
627         was only called here.
628         (WebCore::RenderTextControl::autosaveName): Removed too-specific cast and
629         local variable.
630         (WebCore::RenderTextControl::addSearchResult): Added assertion and changed
631         variable name for clarity.
632         (WebCore::RenderTextControl::valueChanged): Changed code to check for empty
633         autosave name instead of null for consistency with other call sites that
634         manage the autosave name. Also changed the code that dispatches an event
635         to call onSearch on the input element so we don't need our own function.
636
637 2007-01-15  Eric Seidel  <eric@webkit.org>
638
639         Reviewed by hyatt.
640
641         Fix SVGStyledElement::parseMappedAttribute to only map SVG-allowed CSS properties
642         (i.e. width is no longer mapped to CSS for SVG)
643         Add SVGStyledElement::mapToEntry to allow RenderStyle-sharing
644         http://bugs.webkit.org/show_bug.cgi?id=12060
645
646         * dom/MappedAttributeEntry.h:
647         (WebCore::):
648         * ksvg2/svg/SVGStyledElement.cpp:
649         (WebCore::cssPropertyIdForName): new helper
650         (WebCore::mapAttributeToCSSProperty): new helper
651         (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName): new helper
652         (WebCore::SVGStyledElement::mapToEntry): added.
653         (WebCore::SVGStyledElement::parseMappedAttribute): use cssPropertyIdForSVGAttributeName
654         * ksvg2/svg/SVGStyledElement.h:
655
656 2007-01-15  Eric Seidel  <eric@webkit.org>
657
658         Reviewed by bdash.
659
660         Update header guards to follow new style guidelines using new clean-header-guards script.
661
662         * bindings/js/JSHTMLElementWrapperFactory.h:
663         * bindings/js/JSHTMLInputElementBase.h:
664         * bindings/js/JSHTMLOptionElementConstructor.h:
665         * bindings/js/JSSVGElementWrapperFactory.h:
666         * bindings/js/JSSVGPODTypeWrapper.h:
667         * bindings/js/JSXMLHttpRequest.h:
668         * bindings/js/JSXSLTProcessor.h:
669         * bindings/js/kjs_binding.h:
670         * bindings/js/kjs_css.h:
671         * bindings/js/kjs_dom.h:
672         * bindings/js/kjs_domnode.h:
673         * bindings/js/kjs_events.h:
674         * bindings/js/kjs_html.h:
675         * bindings/js/kjs_navigator.h:
676         * bindings/js/kjs_proxy.h:
677         * bindings/js/kjs_traversal.h:
678         * bindings/js/kjs_window.h:
679         * bridge/EditorClient.h:
680         * bridge/History.h:
681         * css/CSSStyleSheet.h:
682         * css/CSSValue.h:
683         * css/CSSValueList.h:
684         * css/DashboardRegion.h:
685         * css/FontFamilyValue.h:
686         * css/FontValue.h:
687         * css/MediaFeatureNames.h:
688         * css/MediaList.h:
689         * css/Pair.h:
690         * css/RectImpl.h:
691         * css/ShadowValue.h:
692         * css/StyleBase.h:
693         * css/StyleList.h:
694         * css/StyleSheet.h:
695         * css/StyleSheetList.h:
696         * css/cssstyleselector.h:
697         * dom/BeforeTextInsertedEvent.h:
698         * dom/CDATASection.h:
699         * dom/CharacterData.h:
700         * dom/ChildNodeList.h:
701         * dom/Comment.h:
702         * dom/DOMImplementation.h:
703         * dom/DocPtr.h:
704         * dom/Document.h:
705         * dom/DocumentFragment.h:
706         * dom/DocumentMarker.h:
707         * dom/DocumentType.h:
708         * dom/EditingText.h:
709         * dom/Entity.h:
710         * dom/EntityReference.h:
711         * dom/EventNames.h:
712         * dom/EventTargetNode.h:
713         * dom/NameNodeList.h:
714         * dom/NamedNodeMap.h:
715         * dom/Node.h:
716         * dom/NodeList.h:
717         * dom/Notation.h:
718         * dom/Position.h:
719         * dom/ProcessingInstruction.h:
720         * dom/Range.h:
721         * dom/StyleElement.h:
722         * dom/Text.h:
723         * editing/AppendNodeCommand.h:
724         * editing/ApplyStyleCommand.h:
725         * editing/BreakBlockquoteCommand.h:
726         * editing/CommandByName.h:
727         * editing/CompositeEditCommand.h:
728         * editing/DeleteButton.h:
729         * editing/DeleteButtonController.h:
730         * editing/DeleteFromTextNodeCommand.h:
731         * editing/DeleteSelectionCommand.h:
732         * editing/InsertIntoTextNodeCommand.h:
733         * editing/InsertLineBreakCommand.h:
734         * editing/InsertNodeBeforeCommand.h:
735         * editing/InsertParagraphSeparatorCommand.h:
736         * editing/InsertTextCommand.h:
737         * editing/JoinTextNodesCommand.h:
738         * editing/MergeIdenticalElementsCommand.h:
739         * editing/ModifySelectionListLevel.h:
740         * editing/MoveSelectionCommand.h:
741         * editing/RemoveCSSPropertyCommand.h:
742         * editing/RemoveNodeAttributeCommand.h:
743         * editing/RemoveNodeCommand.h:
744         * editing/RemoveNodePreservingChildrenCommand.h:
745         * editing/ReplaceSelectionCommand.h:
746         * editing/SetNodeAttributeCommand.h:
747         * editing/SplitElementCommand.h:
748         * editing/SplitTextNodeCommand.h:
749         * editing/SplitTextNodeContainingElementCommand.h:
750         * editing/TextGranularity.h:
751         * editing/TypingCommand.h:
752         * editing/WrapContentsInDummySpanCommand.h:
753         * history/BackForwardList.h:
754         * history/HistoryItem.h:
755         * history/HistoryItemTimer.h:
756         * history/PageCache.h:
757         * html/CanvasGradient.h:
758         * html/CanvasPattern.h:
759         * html/CanvasRenderingContext2D.h:
760         * html/CanvasStyle.h:
761         * html/FormDataList.h:
762         * html/HTMLAnchorElement.h:
763         * html/HTMLAppletElement.h:
764         * html/HTMLAreaElement.h:
765         * html/HTMLBRElement.h:
766         * html/HTMLBaseElement.h:
767         * html/HTMLBaseFontElement.h:
768         * html/HTMLBlockquoteElement.h:
769         * html/HTMLBodyElement.h:
770         * html/HTMLButtonElement.h:
771         * html/HTMLCanvasElement.h:
772         * html/HTMLCollection.h:
773         * html/HTMLDListElement.h:
774         * html/HTMLDirectoryElement.h:
775         * html/HTMLDivElement.h:
776         * html/HTMLElement.h:
777         * html/HTMLElementFactory.h:
778         * html/HTMLEmbedElement.h:
779         * html/HTMLFieldSetElement.h:
780         * html/HTMLFontElement.h:
781         * html/HTMLFormCollection.h:
782         * html/HTMLFormElement.h:
783         * html/HTMLFrameSetElement.h:
784         * html/HTMLGenericFormElement.h:
785         * html/HTMLHRElement.h:
786         * html/HTMLHeadElement.h:
787         * html/HTMLHeadingElement.h:
788         * html/HTMLHtmlElement.h:
789         * html/HTMLImageElement.h:
790         * html/HTMLImageLoader.h:
791         * html/HTMLInputElement.h:
792         * html/HTMLIsIndexElement.h:
793         * html/HTMLKeygenElement.h:
794         * html/HTMLLIElement.h:
795         * html/HTMLLabelElement.h:
796         * html/HTMLLegendElement.h:
797         * html/HTMLLinkElement.h:
798         * html/HTMLMapElement.h:
799         * html/HTMLMarqueeElement.h:
800         * html/HTMLMenuElement.h:
801         * html/HTMLMetaElement.h:
802         * html/HTMLModElement.h:
803         * html/HTMLNameCollection.h:
804         * html/HTMLOListElement.h:
805         * html/HTMLObjectElement.h:
806         * html/HTMLOptGroupElement.h:
807         * html/HTMLOptionElement.h:
808         * html/HTMLOptionsCollection.h:
809         * html/HTMLParagraphElement.h:
810         * html/HTMLParamElement.h:
811         * html/HTMLParser.h:
812         * html/HTMLPlugInElement.h:
813         * html/HTMLPreElement.h:
814         * html/HTMLQuoteElement.h:
815         * html/HTMLScriptElement.h:
816         * html/HTMLSelectElement.h:
817         * html/HTMLStyleElement.h:
818         * html/HTMLTableCaptionElement.h:
819         * html/HTMLTableCellElement.h:
820         * html/HTMLTableColElement.h:
821         * html/HTMLTableElement.h:
822         * html/HTMLTablePartElement.h:
823         * html/HTMLTableRowElement.h:
824         * html/HTMLTableSectionElement.h:
825         * html/HTMLTextAreaElement.h:
826         * html/HTMLTextFieldInnerElement.h:
827         * html/HTMLTitleElement.h:
828         * html/HTMLUListElement.h:
829         * ksvg2/css/SVGRenderStyle.h:
830         * ksvg2/css/SVGRenderStyleDefs.h:
831         * ksvg2/events/JSSVGLazyEventListener.h:
832         * ksvg2/events/SVGZoomEvent.h:
833         * ksvg2/misc/KCanvasRenderingStyle.h:
834         * ksvg2/misc/PointerEventsHitRules.h:
835         * ksvg2/misc/SVGDocumentExtensions.h:
836         * ksvg2/misc/SVGImageLoader.h:
837         * ksvg2/misc/TimeScheduler.h:
838         * ksvg2/svg/GradientAttributes.h:
839         * ksvg2/svg/LinearGradientAttributes.h:
840         * ksvg2/svg/PatternAttributes.h:
841         * ksvg2/svg/RadialGradientAttributes.h:
842         * ksvg2/svg/SVGAElement.h:
843         * ksvg2/svg/SVGAngle.h:
844         * ksvg2/svg/SVGAnimateColorElement.h:
845         * ksvg2/svg/SVGAnimateElement.h:
846         * ksvg2/svg/SVGAnimateMotionElement.h:
847         * ksvg2/svg/SVGAnimateTransformElement.h:
848         * ksvg2/svg/SVGAnimatedPathData.h:
849         * ksvg2/svg/SVGAnimatedPoints.h:
850         * ksvg2/svg/SVGAnimatedTemplate.h:
851         * ksvg2/svg/SVGAnimationElement.h:
852         * ksvg2/svg/SVGCircleElement.h:
853         * ksvg2/svg/SVGClipPathElement.h:
854         * ksvg2/svg/SVGColor.h:
855         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
856         * ksvg2/svg/SVGCursorElement.h:
857         * ksvg2/svg/SVGDOMImplementation.h:
858         * ksvg2/svg/SVGDefsElement.h:
859         * ksvg2/svg/SVGDescElement.h:
860         * ksvg2/svg/SVGDocument.h:
861         * ksvg2/svg/SVGElement.h:
862         * ksvg2/svg/SVGElementInstance.h:
863         * ksvg2/svg/SVGElementInstanceList.h:
864         * ksvg2/svg/SVGEllipseElement.h:
865         * ksvg2/svg/SVGExternalResourcesRequired.h:
866         * ksvg2/svg/SVGFEBlendElement.h:
867         * ksvg2/svg/SVGFEColorMatrixElement.h:
868         * ksvg2/svg/SVGFEComponentTransferElement.h:
869         * ksvg2/svg/SVGFECompositeElement.h:
870         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
871         * ksvg2/svg/SVGFEDisplacementMapElement.h:
872         * ksvg2/svg/SVGFEDistantLightElement.h:
873         * ksvg2/svg/SVGFEFloodElement.h:
874         * ksvg2/svg/SVGFEFuncAElement.h:
875         * ksvg2/svg/SVGFEFuncBElement.h:
876         * ksvg2/svg/SVGFEFuncGElement.h:
877         * ksvg2/svg/SVGFEFuncRElement.h:
878         * ksvg2/svg/SVGFEGaussianBlurElement.h:
879         * ksvg2/svg/SVGFEImageElement.h:
880         * ksvg2/svg/SVGFELightElement.h:
881         * ksvg2/svg/SVGFEMergeElement.h:
882         * ksvg2/svg/SVGFEMergeNodeElement.h:
883         * ksvg2/svg/SVGFEOffsetElement.h:
884         * ksvg2/svg/SVGFEPointLightElement.h:
885         * ksvg2/svg/SVGFESpecularLightingElement.h:
886         * ksvg2/svg/SVGFESpotLightElement.h:
887         * ksvg2/svg/SVGFETileElement.h:
888         * ksvg2/svg/SVGFETurbulenceElement.h:
889         * ksvg2/svg/SVGFilterElement.h:
890         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
891         * ksvg2/svg/SVGFitToViewBox.h:
892         * ksvg2/svg/SVGForeignObjectElement.h:
893         * ksvg2/svg/SVGGElement.h:
894         * ksvg2/svg/SVGGradientElement.h:
895         * ksvg2/svg/SVGImageElement.h:
896         * ksvg2/svg/SVGLangSpace.h:
897         * ksvg2/svg/SVGLength.h:
898         * ksvg2/svg/SVGLengthList.h:
899         * ksvg2/svg/SVGLineElement.h:
900         * ksvg2/svg/SVGLinearGradientElement.h:
901         * ksvg2/svg/SVGList.h:
902         * ksvg2/svg/SVGListTraits.h:
903         * ksvg2/svg/SVGLocatable.h:
904         * ksvg2/svg/SVGMarkerElement.h:
905         * ksvg2/svg/SVGMaskElement.h:
906         * ksvg2/svg/SVGMetadataElement.h:
907         * ksvg2/svg/SVGNumberList.h:
908         * ksvg2/svg/SVGPaint.h:
909         * ksvg2/svg/SVGParserUtilities.h:
910         * ksvg2/svg/SVGPathElement.h:
911         * ksvg2/svg/SVGPathSeg.h:
912         * ksvg2/svg/SVGPathSegArc.h:
913         * ksvg2/svg/SVGPathSegClosePath.h:
914         * ksvg2/svg/SVGPathSegCurvetoCubic.h:
915         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
916         * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
917         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
918         * ksvg2/svg/SVGPathSegLineto.h:
919         * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
920         * ksvg2/svg/SVGPathSegLinetoVertical.h:
921         * ksvg2/svg/SVGPathSegList.h:
922         * ksvg2/svg/SVGPathSegMoveto.h:
923         * ksvg2/svg/SVGPatternElement.h:
924         * ksvg2/svg/SVGPointList.h:
925         * ksvg2/svg/SVGPolyElement.h:
926         * ksvg2/svg/SVGPolygonElement.h:
927         * ksvg2/svg/SVGPolylineElement.h:
928         * ksvg2/svg/SVGPreserveAspectRatio.h:
929         * ksvg2/svg/SVGRadialGradientElement.h:
930         * ksvg2/svg/SVGRectElement.h:
931         * ksvg2/svg/SVGRenderingIntent.h:
932         * ksvg2/svg/SVGSVGElement.h:
933         * ksvg2/svg/SVGScriptElement.h:
934         * ksvg2/svg/SVGSetElement.h:
935         * ksvg2/svg/SVGStopElement.h:
936         * ksvg2/svg/SVGStringList.h:
937         * ksvg2/svg/SVGStylable.h:
938         * ksvg2/svg/SVGStyleElement.h:
939         * ksvg2/svg/SVGStyledElement.h:
940         * ksvg2/svg/SVGStyledLocatableElement.h:
941         * ksvg2/svg/SVGStyledTransformableElement.h:
942         * ksvg2/svg/SVGSwitchElement.h:
943         * ksvg2/svg/SVGSymbolElement.h:
944         * ksvg2/svg/SVGTRefElement.h:
945         * ksvg2/svg/SVGTSpanElement.h:
946         * ksvg2/svg/SVGTests.h:
947         * ksvg2/svg/SVGTextContentElement.h:
948         * ksvg2/svg/SVGTextElement.h:
949         * ksvg2/svg/SVGTextPositioningElement.h:
950         * ksvg2/svg/SVGTitleElement.h:
951         * ksvg2/svg/SVGTransform.h:
952         * ksvg2/svg/SVGTransformList.h:
953         * ksvg2/svg/SVGTransformable.h:
954         * ksvg2/svg/SVGURIReference.h:
955         * ksvg2/svg/SVGUnitTypes.h:
956         * ksvg2/svg/SVGUseElement.h:
957         * ksvg2/svg/SVGViewElement.h:
958         * ksvg2/svg/SVGZoomAndPan.h:
959         * loader/CachedCSSStyleSheet.h:
960         * loader/CachedImage.h:
961         * loader/CachedXSLStyleSheet.h:
962         * loader/DocumentLoader.h:
963         * loader/Request.h:
964         * loader/SubresourceLoader.h:
965         * loader/icon/IconDataCache.h:
966         * loader/icon/IconDatabase.h:
967         * loader/icon/IconLoader.h:
968         * loader/icon/SQLDatabase.h:
969         * loader/icon/SQLStatement.h:
970         * loader/icon/SQLTransaction.h:
971         * page/Frame.h:
972         * page/FrameLoadRequest.h:
973         * page/FrameTree.h:
974         * page/FrameView.h:
975         * page/PageState.h:
976         * page/Plugin.h:
977         * page/qt/FrameQt.h:
978         * page/qt/FrameQtClient.h:
979         * platform/Arena.h:
980         * platform/ArrayImpl.h:
981         * platform/Cursor.h:
982         * platform/DeprecatedArray.h:
983         * platform/DeprecatedCString.h:
984         * platform/FileChooser.h:
985         * platform/Font.h:
986         * platform/FontCache.h:
987         * platform/FontData.h:
988         * platform/FontDescription.h:
989         * platform/FontFamily.h:
990         * platform/GlyphBuffer.h:
991         * platform/GlyphMap.h:
992         * platform/GlyphWidthMap.h:
993         * platform/Logging.h:
994         * platform/Pasteboard.h:
995         * platform/PlatformString.h:
996         * platform/PlugInInfoStore.h:
997         * platform/PopupMenu.h:
998         * platform/PopupMenuClient.h:
999         * platform/ScrollBar.h:
1000         * platform/ScrollView.h:
1001         * platform/SearchPopupMenu.h:
1002         * platform/Shared.h:
1003         * platform/Sound.h:
1004         * platform/SystemTime.h:
1005         * platform/Timer.h:
1006         * platform/Widget.h:
1007         * platform/cf/RetainPtr.h:
1008         * platform/gdk/ChromeClientGdk.h:
1009         * platform/gdk/FontPlatformData.h:
1010         * platform/gdk/FrameGdk.h:
1011         * platform/gdk/KeyboardCodes.h:
1012         * platform/gdk/RenderPopupMenuGdk.h:
1013         * platform/gdk/RenderThemeGdk.h:
1014         * platform/graphics/BitmapImage.h:
1015         * platform/graphics/Color.h:
1016         * platform/graphics/FloatPoint.h:
1017         * platform/graphics/FloatPoint3D.h:
1018         * platform/graphics/FloatRect.h:
1019         * platform/graphics/Icon.h:
1020         * platform/graphics/Image.h:
1021         * platform/graphics/ImageAnimationObserver.h:
1022         * platform/graphics/ImageBuffer.h:
1023         * platform/graphics/ImageSource.h:
1024         * platform/graphics/IntPoint.h:
1025         * platform/graphics/IntRect.h:
1026         * platform/graphics/IntSize.h:
1027         * platform/graphics/IntSizeHash.h:
1028         * platform/graphics/PathTraversalState.h:
1029         * platform/graphics/Pen.h:
1030         * platform/graphics/qt/ImageDecoderQt.h:
1031         * platform/graphics/svg/SVGImage.h:
1032         * platform/graphics/svg/SVGImageEmptyClients.h:
1033         * platform/graphics/svg/SVGPaintServer.h:
1034         * platform/graphics/svg/SVGPaintServerGradient.h:
1035         * platform/graphics/svg/SVGPaintServerLinearGradient.h:
1036         * platform/graphics/svg/SVGPaintServerPattern.h:
1037         * platform/graphics/svg/SVGPaintServerRadialGradient.h:
1038         * platform/graphics/svg/SVGPaintServerSolid.h:
1039         * platform/graphics/svg/SVGResource.h:
1040         * platform/graphics/svg/SVGResourceClipper.h:
1041         * platform/graphics/svg/SVGResourceFilter.h:
1042         * platform/graphics/svg/SVGResourceMarker.h:
1043         * platform/graphics/svg/SVGResourceMasker.h:
1044         * platform/graphics/svg/cg/CgSupport.h:
1045         * platform/graphics/svg/filters/SVGDistantLightSource.h:
1046         * platform/graphics/svg/filters/SVGFEBlend.h:
1047         * platform/graphics/svg/filters/SVGFEColorMatrix.h:
1048         * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
1049         * platform/graphics/svg/filters/SVGFEComposite.h:
1050         * platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
1051         * platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
1052         * platform/graphics/svg/filters/SVGFEDisplacementMap.h:
1053         * platform/graphics/svg/filters/SVGFEFlood.h:
1054         * platform/graphics/svg/filters/SVGFEGaussianBlur.h:
1055         * platform/graphics/svg/filters/SVGFEImage.h:
1056         * platform/graphics/svg/filters/SVGFEMerge.h:
1057         * platform/graphics/svg/filters/SVGFEMorphology.h:
1058         * platform/graphics/svg/filters/SVGFEOffset.h:
1059         * platform/graphics/svg/filters/SVGFESpecularLighting.h:
1060         * platform/graphics/svg/filters/SVGFETile.h:
1061         * platform/graphics/svg/filters/SVGFETurbulence.h:
1062         * platform/graphics/svg/filters/SVGFilterEffect.h:
1063         * platform/graphics/svg/filters/SVGLightSource.h:
1064         * platform/graphics/svg/filters/SVGPointLightSource.h:
1065         * platform/graphics/svg/filters/SVGSpotLightSource.h:
1066         * platform/mac/FontPlatformData.h:
1067         * platform/mac/PlatformScrollBar.h:
1068         * platform/network/AuthenticationChallenge.h:
1069         * platform/network/Credential.h:
1070         * platform/network/HTTPHeaderMap.h:
1071         * platform/network/ProtectionSpace.h:
1072         * platform/network/ResourceError.h:
1073         * platform/network/ResourceRequest.h:
1074         * platform/network/ResourceResponse.h:
1075         * platform/network/cf/FormDataStreamCFNet.h:
1076         * platform/network/cf/ResourceRequestCFNet.h:
1077         * platform/network/cf/ResourceResponseCFNet.h:
1078         * platform/network/gdk/ResourceHandleManager.h:
1079         * platform/network/mac/AuthenticationMac.h:
1080         * platform/network/mac/FormDataStreamMac.h:
1081         * platform/network/qt/ResourceHandleManagerKDE.h:
1082         * platform/network/qt/ResourceHandleManagerQt.h:
1083         * platform/network/win/ResourceHandleWin.h:
1084         * platform/qt/FontPlatformData.h:
1085         * platform/qt/KeyboardCodes.h:
1086         * platform/qt/PlatformScrollBar.h:
1087         * platform/qt/ScrollViewCanvasQt.h:
1088         * platform/qt/SharedTimerQt.h:
1089         * platform/win/FontPlatformData.h:
1090         * platform/win/PlatformScrollBar.h:
1091         * rendering/AutoTableLayout.h:
1092         * rendering/HitTestRequest.h:
1093         * rendering/HitTestResult.h:
1094         * rendering/InlineBox.h:
1095         * rendering/InlineFlowBox.h:
1096         * rendering/Length.h:
1097         * rendering/ListMarkerBox.h:
1098         * rendering/RenderBox.h:
1099         * rendering/RenderMenuList.h:
1100         * rendering/RenderPart.h:
1101         * rendering/RenderPartObject.h:
1102         * rendering/RenderPath.h:
1103         * rendering/RenderReplaced.h:
1104         * rendering/RenderSVGContainer.h:
1105         * rendering/RenderSVGImage.h:
1106         * rendering/RenderSVGInline.h:
1107         * rendering/RenderSVGInlineText.h:
1108         * rendering/RenderSVGTSpan.h:
1109         * rendering/RenderSVGText.h:
1110         * rendering/RenderStyle.h:
1111         * rendering/RenderTableCol.h:
1112         * rendering/RenderThemeWin.h:
1113         * rendering/bidi.h:
1114         * xml/DOMParser.h:
1115         * xml/XPathEvaluator.h:
1116         * xml/XPathExpression.h:
1117         * xml/XPathExpressionNode.h:
1118         * xml/XPathFunctions.h:
1119         * xml/XPathNSResolver.h:
1120         * xml/XPathNamespace.h:
1121         * xml/XPathParser.h:
1122         * xml/XPathPath.h:
1123         * xml/XPathPredicate.h:
1124         * xml/XPathResult.h:
1125         * xml/XPathStep.h:
1126         * xml/XPathUtil.h:
1127         * xml/XPathValue.h:
1128         * xml/XPathVariableReference.h:
1129         * xml/XSLImportRule.h:
1130         * xml/XSLStyleSheet.h:
1131         * xml/XSLTProcessor.h:
1132         * xml/xmlhttprequest.h:
1133
1134 2007-01-15  Anders Carlsson  <acarlsson@apple.com>
1135
1136         Build fix.
1137         
1138         * loader/ProgressTracker.cpp:
1139
1140 2007-01-15  Lars Knoll <lars@trolltech.com>
1141
1142         Fix the Qt build
1143
1144         * WebCore.pro:
1145
1146 2007-01-15  Anders Carlsson  <acarlsson@apple.com>
1147
1148         Reviewed by Darin.
1149
1150         * loader/ProgressTracker.cpp:
1151         Set finalProgressValue to its value explicitly instead of calculating it 
1152         (which causes a global initializer to be generated).
1153
1154 2007-01-15  Anders Carlsson  <acarlsson@apple.com>
1155
1156         Reviewed by Darin and Adam.
1157
1158         Move progress tracking down to WebCore.
1159         
1160         * WebCore.exp:
1161         Add ProgressTracker::estimatedProgress() to be used by WebKit.
1162         
1163         * WebCore.xcodeproj/project.pbxproj:
1164         Add ProgressTracker.[cpp|h]
1165         
1166         * loader/FrameLoader.cpp:
1167         (WebCore::FrameLoader::prepareForLoadStart):
1168         (WebCore::FrameLoader::clearProvisionalLoad):
1169         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
1170         (WebCore::FrameLoader::startLoading):
1171         (WebCore::FrameLoader::didReceiveResponse):
1172         (WebCore::FrameLoader::didReceiveData):
1173         (WebCore::FrameLoader::didFailToLoad):
1174         (WebCore::FrameLoader::requestFromDelegate):
1175         (WebCore::FrameLoader::didFinishLoad):
1176         Call directly to the progress tracker instead of through the frame loader client.
1177         
1178         * loader/FrameLoaderClient.h:
1179         Get rid of the old methods and add new methods for tracking progress.
1180         
1181         * loader/ProgressTracker.cpp: Added.
1182         (WebCore::ProgressItem::ProgressItem):
1183         (WebCore::ProgressTracker::ProgressTracker):
1184         (WebCore::ProgressTracker::~ProgressTracker):
1185         (WebCore::ProgressTracker::estimatedProgress):
1186         (WebCore::ProgressTracker::reset):
1187         (WebCore::ProgressTracker::progressStarted):
1188         (WebCore::ProgressTracker::progressCompleted):
1189         (WebCore::ProgressTracker::finalProgressComplete):
1190         (WebCore::ProgressTracker::incrementProgress):
1191         (WebCore::ProgressTracker::completeProgress):
1192         (WebCore::ProgressTracker::createUniqueIdentifier):
1193         * loader/ProgressTracker.h: Added.
1194         New per page class which tracks progress.
1195         
1196         * loader/ResourceLoader.cpp:
1197         (WebCore::ResourceLoader::willSendRequest):
1198         * page/Page.cpp:
1199         (WebCore::Page::Page):
1200         * page/Page.h:
1201         (WebCore::Page::progress):
1202         Move createUniqueIdentifier to ProgressTracker, add ProgressTracker object to Page.
1203         
1204         * platform/graphics/svg/SVGImageEmptyClients.h:
1205         (WebCore::SVGEmptyFrameLoaderClient::willChangeEstimatedProgress):
1206         (WebCore::SVGEmptyFrameLoaderClient::didChangeEstimatedProgress):
1207         (WebCore::SVGEmptyFrameLoaderClient::postProgressStartedNotification):
1208         (WebCore::SVGEmptyFrameLoaderClient::postProgressEstimateChangedNotification):
1209         (WebCore::SVGEmptyFrameLoaderClient::postProgressFinishedNotification):
1210         Add new methods, get rid of the old ones.
1211
1212 2007-01-15  Adam Roben  <aroben@apple.com>
1213
1214         Reviewed by Anders.
1215
1216         Fix comment.
1217
1218         * html/HTMLScriptElement.cpp:
1219         (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
1220
1221 2007-01-15  John Sullivan  <sullivan@apple.com>
1222
1223         * platform/ContextMenu.cpp:
1224         (WebCore::ContextMenu::checkOrEnableIfNeeded):
1225         Leopard build fix; don't declare one of the case values twice
1226
1227 2007-01-15  Mitz Pettel  <mitz@webkit.org>
1228
1229         Reviewed by Darin.
1230
1231         - fix http://bugs.webkit.org/show_bug.cgi?id=8604
1232           rowspan does not work when set through javascript
1233
1234         Covered by existing tests.
1235
1236         * rendering/RenderTableCell.cpp:
1237         (WebCore::RenderTableCell::updateFromElement): Mark the section for grid recalc
1238         if row span or column span change.
1239
1240 2007-01-15  Adam Roben  <aroben@apple.com>
1241
1242         Reviewed by Darin.
1243
1244         Small context menu fixes.
1245
1246         * platform/ContextMenu.cpp:
1247         (WebCore::ContextMenu::populate): Fix typo.
1248         (WebCore::ContextMenu::checkOrEnableIfNeeded): Disabled "No Guesses
1249         Found", and added all enum values explicitly.
1250
1251 2007-01-15  Alexey Proskuryakov  <ap@webkit.org>
1252
1253         Reviewed by Darin.
1254
1255         http://bugs.webkit.org/show_bug.cgi?id=6272
1256         XMLHttpRequest freezes on getting a missing document with overridden Content-Length
1257
1258         http://bugs.webkit.org/show_bug.cgi?id=6212
1259         Investigate disallowing some XMLHttpRequest headers from being set via setRequestHeader.
1260
1261         Tests:
1262         - http/tests/xmlhttprequest/connection-error-sync.html
1263         - http/tests/xmlhttprequest/set-dangerous-headers.html
1264
1265         * bindings/js/kjs_binding.cpp:
1266         (KJS::):
1267         (KJS::setDOMException): Added support for NETWORK_ERR. Changed the temporary 
1268         PERMISSION_DENIED error into a special case.
1269
1270         * loader/FrameLoader.cpp:
1271         (WebCore::FrameLoader::loadResourceSynchronously):
1272         * loader/FrameLoader.h:
1273         Return the error object to the caller. Removed an extra local variable for error, 
1274         which shadowed the one from enclosing block.
1275
1276         * dom/XMLTokenizer.cpp:
1277         (WebCore::openFunc): 
1278         * xml/XSLTProcessor.cpp:
1279         (WebCore::docLoaderFunc): 
1280         Updated to pass an error object (currently ignored).
1281
1282         * xml/xmlhttprequest.cpp:
1283         (WebCore::canSetRequestHeader): Added. The headers to block include the ones from 
1284         the current XMLHttpRequest draft plus "Via", which is blocked by Firefox.
1285         (WebCore::XMLHttpRequest::send): Raise an exception if a sync request results in 
1286         an error.
1287         (WebCore::XMLHttpRequest::setRequestHeader): Call canSetRequestHeader().
1288         * xml/xmlhttprequest.h:
1289         (WebCore::): Added NETWORK_ERR and a comment about PERMISSION_DENIED.
1290
1291 2007-01-15  Zack Rusin  <zack@kde.org>
1292
1293         Optimizing rendering on the Qt platform. Mainly
1294         switching from client side QImage to QPixmap's.
1295         Also cleaning the the ScrollViewCanvasQt code
1296         quite a bit.
1297
1298         * platform/graphics/ImageSource.h: use QPixmap
1299         * platform/graphics/qt/GraphicsContextQt.cpp:
1300         (WebCore::TransparencyLayer::TransparencyLayer):
1301         (WebCore::GraphicsContext::clip): clip rects when you can
1302         * platform/graphics/qt/ImageDecoderQt.cpp:
1303         (WebCore::ImageDecoderQt::ImageData::ImageData):
1304         (WebCore::ImageDecoderQt::ReadContext::read):
1305         (WebCore::ImageDecoderQt::ReadContext::readImageLines):
1306         (WebCore::ImageDecoderQt::imageAtIndex):
1307         * platform/graphics/qt/ImageDecoderQt.h: use QPixmap
1308         * platform/graphics/qt/ImageQt.cpp: QPixmap instead of QImage
1309         (WebCore::BitmapImage::draw):
1310         (WebCore::BitmapImage::drawTiled):
1311         * platform/graphics/qt/ImageSourceQt.cpp:
1312         (WebCore::):
1313         (WebCore::ImageSource::createFrameAtIndex):
1314         (WebCore::ImageSource::frameHasAlphaAtIndex):
1315         * platform/qt/ScrollViewCanvasQt.cpp: clean up
1316         (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
1317         (WebCore::ScrollViewCanvasQt::updateFrameView):
1318         (WebCore::ScrollViewCanvasQt::paintEvent):
1319         (WebCore::ScrollViewCanvasQt::mouseMoveEvent):
1320         (WebCore::ScrollViewCanvasQt::mousePressEvent):
1321         (WebCore::ScrollViewCanvasQt::mouseReleaseEvent):
1322         (WebCore::ScrollViewCanvasQt::handleKeyEvent):
1323         * platform/qt/ScrollViewCanvasQt.h:
1324         * platform/qt/ScrollViewQt.cpp: remove hacks
1325         (WebCore::ScrollView::ScrollView):
1326         (WebCore::ScrollView::setParentWidget):
1327         (WebCore::ScrollView::updateContents):
1328
1329 2007-01-15  Lars Knoll <lars@trolltech.com>
1330
1331         Reviewed by Zack
1332
1333         Fix weird crashes when running the layout tests. The
1334         reason was that I used KURL (and thus DeprecatedString)
1335         in a thread. Unfortunately that class is not threadsafe
1336         at all.
1337
1338         * platform/network/qt/ResourceHandleManagerQt.cpp:
1339         (WebCore::RequestQt::RequestQt):
1340         (WebCore::RequestQt::setURL):
1341         (WebCore::ResourceHandleManager::add):
1342         (WebCore::ResourceHandleManager::cancel):
1343         (WebCore::ResourceHandleManager::receivedResponse):
1344         (WebCore::FileLoader::request):
1345         (WebCore::HostInfo::HostInfo):
1346         (WebCore::NetworkLoader::request):
1347         (WebCore::NetworkLoader::cancel):
1348         * platform/network/qt/ResourceHandleManagerQt.h:
1349         (WebCore::HostInfo::HostInfo):
1350         (WebCore::HostInfo::isLocalFile):
1351
1352 2007-01-15  Eric Seidel  <eric@webkit.org>
1353
1354         Reviewed by rwlbuis.
1355
1356         Make isValid check not malloc 3 SVGStringLists for every element.
1357         
1358         No test possible, performance fix only.
1359
1360         * ksvg2/svg/SVGTests.cpp:
1361         (WebCore::SVGTests::isValid):
1362
1363 2007-01-15  Rob Buis  <buis@kde.org>
1364
1365         Reviewed by Eric.
1366
1367         Remove unused member var.
1368
1369         * ksvg2/svg/SVGStyledElement.h:
1370
1371 2007-01-15  Rob Buis  <buis@kde.org>
1372
1373         Reviewed by Eric.
1374
1375         http://bugs.webkit.org/show_bug.cgi?id=12069
1376         Hit detection fails under some viewbox constraints
1377
1378         Do not take viewBox into account when hit testing svg container.
1379
1380         * rendering/RenderSVGContainer.cpp:
1381         (WebCore::RenderSVGContainer::nodeAtPoint):
1382
1383 2007-01-15  David Hyatt  <hyatt@apple.com>
1384
1385         Fix  for 12275, negative margins confuse page breaks.
1386
1387         Reviewed by Eric
1388
1389         * rendering/RenderBlock.cpp:
1390         (WebCore::RenderBlock::paintChildren):
1391
1392 2007-01-15  Eric Seidel  <eric@webkit.org>
1393
1394         Reviewed by mjs.
1395         
1396         SVG gradients do not notice stop additions
1397         http://bugs.webkit.org/show_bug.cgi?id=12192
1398
1399         Test: svg/custom/gradient-add-stops.svg
1400
1401         * ksvg2/svg/SVGGradientElement.cpp:
1402         (WebCore::SVGGradientElement::childrenChanged):
1403         * ksvg2/svg/SVGGradientElement.h:
1404
1405 2007-01-14  David Hyatt  <hyatt@apple.com>
1406
1407         Fix for bug 10356, positioning doesn't work with <svg> elements in XHTML.  Change the requiresLayer
1408         check to use the DOM, since the old check would fail if the parent block had no element.
1409
1410         Reviewed by Eric
1411
1412         Added svg/custom/relative-positioning.html (absolute/fixed too)
1413
1414         * rendering/RenderSVGContainer.cpp:
1415         (WebCore::RenderSVGContainer::requiresLayer):
1416
1417 2007-01-14  Eric Seidel  <eric@webkit.org>
1418
1419         Reviewed by hyatt.
1420         
1421         SVG does not correctly handle float: left
1422         http://bugs.webkit.org/show_bug.cgi?id=12210
1423
1424         Test: svg/custom/svg-float-border-padding.xml
1425
1426         * rendering/RenderSVGContainer.cpp:
1427         (WebCore::RenderSVGContainer::paint):
1428
1429 2007-01-14  David Hyatt  <hyatt@apple.com>
1430
1431         More work to fix 10145, regression where form elements don't break properly.  Make sure to really use
1432         the parent of the replaced element's whitespace value everywhere.
1433
1434         Reviewed by olliej
1435
1436         fast/replaced/three-selects-break.html
1437
1438         * rendering/bidi.cpp:
1439         (WebCore::RenderBlock::findNextLineBreak):
1440
1441 2007-01-14  Sam Weinig  <sam@webkit.org>
1442
1443         Reviewed by Darin and then by Mitz.
1444
1445         Patch for http://bugs.webkit.org/show_bug.cgi?id=12228
1446         Cleanup assorted CSS classes
1447
1448         * css/CSSBorderImageValue.cpp:
1449         (WebCore::CSSBorderImageValue::CSSBorderImageValue):
1450         (WebCore::CSSBorderImageValue::cssText):
1451         * css/CSSBorderImageValue.h:
1452         * css/CSSComputedStyleDeclaration.cpp:
1453         (WebCore::valueForLength):
1454         (WebCore::valueForBorderStyle):
1455         (WebCore::valueForTextAlign):
1456         (WebCore::valueForShadow):
1457         (WebCore::getPositionOffsetValue):
1458         (WebCore::CSSComputedStyleDeclaration::cssText):
1459         (WebCore::primitiveValueFromLength):
1460         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1461         (WebCore::CSSComputedStyleDeclaration::getPropertyPriority):
1462         (WebCore::CSSComputedStyleDeclaration::removeProperty):
1463         (WebCore::CSSComputedStyleDeclaration::setProperty):
1464         (WebCore::CSSComputedStyleDeclaration::length):
1465         (WebCore::CSSComputedStyleDeclaration::item):
1466         * css/CSSComputedStyleDeclaration.h:
1467         * css/CSSCursorImageValue.cpp:
1468         (WebCore::CSSCursorImageValue::CSSCursorImageValue):
1469         * css/CSSCursorImageValue.h:
1470         * css/CSSGrammar.y:
1471         * css/CSSImageValue.cpp:
1472         * css/CSSImageValue.h:
1473         * css/CSSInheritedValue.cpp:
1474         * css/CSSInheritedValue.h:
1475         * css/CSSInitialValue.cpp:
1476         * css/CSSInitialValue.h:
1477         * css/CSSMutableStyleDeclaration.cpp:
1478         (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
1479         (WebCore::CSSMutableStyleDeclaration::operator=):
1480         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
1481         (WebCore::CSSMutableStyleDeclaration::get4Values):
1482         (WebCore::CSSMutableStyleDeclaration::getShorthandValue):
1483         (WebCore::CSSMutableStyleDeclaration::getPropertyCSSValue):
1484         (WebCore::CSSMutableStyleDeclaration::removeProperty):
1485         (WebCore::CSSMutableStyleDeclaration::setChanged):
1486         (WebCore::CSSMutableStyleDeclaration::getPropertyPriority):
1487         (WebCore::CSSMutableStyleDeclaration::getPropertyShorthand):
1488         (WebCore::CSSMutableStyleDeclaration::isPropertyImplicit):
1489         (WebCore::CSSMutableStyleDeclaration::setProperty):
1490         (WebCore::CSSMutableStyleDeclaration::setImageProperty):
1491         (WebCore::CSSMutableStyleDeclaration::parseDeclaration):
1492         (WebCore::CSSMutableStyleDeclaration::addParsedProperties):
1493         (WebCore::CSSMutableStyleDeclaration::setLengthProperty):
1494         (WebCore::CSSMutableStyleDeclaration::cssText):
1495         (WebCore::CSSMutableStyleDeclaration::merge):
1496         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
1497         * css/CSSMutableStyleDeclaration.h:
1498         (WebCore::CSSMutableStyleDeclaration::setProperty):
1499         (WebCore::CSSMutableStyleDeclaration::removeProperty):
1500         * css/CSSNamespace.h:
1501         (WebCore::CSSNamespace::CSSNamespace):
1502         * css/CSSPrimitiveValue.cpp:
1503         (WebCore::isCSSTokenizerIdentifier):
1504         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1505         (WebCore::CSSPrimitiveValue::cleanup):
1506         (WebCore::CSSPrimitiveValue::computeLengthInt):
1507         (WebCore::CSSPrimitiveValue::computeLengthIntForLength):
1508         (WebCore::CSSPrimitiveValue::computeLengthShort):
1509         (WebCore::CSSPrimitiveValue::computeLengthFloat):
1510         (WebCore::CSSPrimitiveValue::setFloatValue):
1511         (WebCore::scaleFactorForConversion):
1512         (WebCore::CSSPrimitiveValue::getFloatValue):
1513         (WebCore::CSSPrimitiveValue::setStringValue):
1514         (WebCore::CSSPrimitiveValue::getStringValue):
1515         (WebCore::CSSPrimitiveValue::parseString):
1516         (WebCore::CSSPrimitiveValue::getIdent):
1517         (WebCore::CSSPrimitiveValue::cssText):
1518         * css/CSSPrimitiveValue.h:
1519         (WebCore::CSSPrimitiveValue::getCounterValue):
1520         (WebCore::CSSPrimitiveValue::getRectValue):
1521         (WebCore::CSSPrimitiveValue::getRGBColorValue):
1522         (WebCore::CSSPrimitiveValue::getPairValue):
1523         (WebCore::CSSPrimitiveValue::getDashboardRegionValue):
1524         * css/CSSProperty.cpp:
1525         (WebCore::operator==):
1526         * css/CSSProperty.h:
1527         (WebCore::CSSProperty::operator=):
1528         * css/CSSQuirkPrimitiveValue.h:
1529         (WebCore::CSSQuirkPrimitiveValue::CSSQuirkPrimitiveValue):
1530         * css/CSSRuleList.cpp:
1531         (WebCore::CSSRuleList::CSSRuleList):
1532         (WebCore::CSSRuleList::deleteRule):
1533         (WebCore::CSSRuleList::insertRule):
1534         * css/CSSRuleList.h:
1535         (WebCore::CSSRuleList::item):
1536         * css/CSSSelector.cpp:
1537         (WebCore::CSSSelector::print):
1538         (WebCore::CSSSelector::specificity):
1539         (WebCore::CSSSelector::extractPseudoType):
1540         (WebCore::CSSSelector::operator==):
1541         (WebCore::CSSSelector::selectorText):
1542         * css/CSSSelector.h:
1543         (WebCore::CSSSelector::CSSSelector):
1544         (WebCore::CSSSelector::~CSSSelector):
1545         (WebCore::CSSSelector::append):
1546         (WebCore::CSSSelector::next):
1547         (WebCore::CSSSelector::pseudoType):
1548         (WebCore::CSSSelector::hasTag):
1549         (WebCore::CSSSelector::hasAttribute):
1550         * css/CSSStyleDeclaration.cpp:
1551         (WebCore::propertyID):
1552         (WebCore::CSSStyleDeclaration::getPropertyPriority):
1553         (WebCore::CSSStyleDeclaration::getPropertyShorthand):
1554         (WebCore::CSSStyleDeclaration::isPropertyImplicit):
1555         (WebCore::CSSStyleDeclaration::setProperty):
1556         (WebCore::CSSStyleDeclaration::isPropertyName):
1557         (WebCore::CSSStyleDeclaration::parentRule):
1558         (WebCore::CSSStyleDeclaration::diff):
1559         (WebCore::CSSStyleDeclaration::copyPropertiesInSet):
1560         * css/CSSStyleDeclaration.h:
1561         * css/Counter.h:
1562         (WebCore::Counter::Counter):
1563         (WebCore::Counter::listStyleNumber):
1564         * css/csshelper.cpp:
1565         (WebCore::parseURL):
1566         * css/csshelper.h:
1567         * css/cssparser.h:
1568         (WebCore::domString):
1569         (WebCore::atomicString):
1570         (WebCore::CSSParser::operator|):
1571         * css/cssstyleselector.cpp:
1572         (WebCore::CSSStyleSelector::matchRulesForList):
1573         (WebCore::CSSStyleSelector::checkSelector):
1574         (WebCore::CSSStyleSelector::checkOneSelector):
1575         (WebCore::CSSRuleSet::addRule):
1576
1577 2007-01-14  Mitz Pettel  <mitz@webkit.org>
1578
1579         Reviewed by Adam.
1580
1581         - fix http://bugs.webkit.org/show_bug.cgi?id=12264
1582           REGRESSION (r18843): Webkit crashes on 43Folders.com home page
1583
1584         Test: fast/tokenizer/ignore-tags-in-iframe.html
1585
1586         * html/HTMLParser.cpp:
1587         (WebCore::HTMLParser::reset): Removed unused inSelect member variable.
1588         (WebCore::HTMLParser::selectCreateErrorCheck): Ditto.
1589         (WebCore::HTMLParser::processCloseTag): Ditto.
1590         * html/HTMLParser.h: Ditto.
1591         * html/HTMLTokenizer.cpp:
1592         (WebCore::HTMLTokenizer::parseTag): Changed not to process <pre>, <listing>,
1593         <script>, <style>, <title>, <textarea> and <xmp> if the parser is in skip mode
1594         (waiting for a close tag of an element whose contents are not parsed,
1595         such as iframe).
1596         * html/HTMLTokenizer.h:
1597         (WebCore::HTMLTokenizer::State::setInStyle): Removed unused bit.
1598         (WebCore::HTMLTokenizer::State::): Ditto.
1599
1600 2007-01-14  Alexey Proskuryakov  <ap@webkit.org>
1601
1602         Reviewed by Darin.
1603
1604         http://bugs.webkit.org/show_bug.cgi?id=12258
1605         fast/tokenizer/002 test broken
1606
1607         * loader/FrameLoader.h: Added a flush parameter to write().
1608         * loader/FrameLoader.cpp:
1609         (WebCore::FrameLoader::write): Ditto.
1610         (WebCore::FrameLoader::endIfNotLoading): Instead of poorly duplicating the logic in write(),
1611         call it directly.
1612
1613 2007-01-14  Adam Roben  <aroben@apple.com>
1614
1615         Reviewed by Maciej.
1616
1617         Make sure our whitelisting of the type and language attributes of the
1618         <script> element is enforced in all HTMLTokenizer/HTMLScriptElement
1619         code paths.
1620
1621         All layout tests pass.
1622
1623         * html/HTMLScriptElement.cpp:
1624         (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript): New method to
1625         determine whether the script should be executed, given its type and
1626         language attributes.
1627         (WebCore::HTMLScriptElement::evaluateScript): Check type/language
1628         before executing.
1629         * html/HTMLScriptElement.h: Added new declarations.
1630         * html/HTMLTokenizer.cpp:
1631         (WebCore::HTMLTokenizer::begin): Made scriptSrc a String. 
1632         (WebCore::HTMLTokenizer::scriptHandler): Check
1633         shouldExecuteAsJavaScript before executing.
1634         (WebCore::HTMLTokenizer::notifyFinished): Ditto.
1635         (WebCore::HTMLTokenizer::parseTag): Moved type/language checking from
1636         here to HTMLScriptElement::shouldExecuteAsJavaScript.
1637         * html/HTMLTokenizer.h: Made scriptSrc a String, and removed the
1638         javascript member.
1639
1640 2007-01-14  David Hyatt  <hyatt@apple.com>
1641
1642         Make sure floats are avoided if you have non-auto column property values.  Fixes the crazy layout
1643         on http://weblogs.mozillazine.org/roc.
1644
1645         Reviewed by mitz
1646
1647         Added fast/multicol/float-avoidance.html
1648
1649         * rendering/RenderBlock.cpp:
1650         (WebCore::RenderBlock::avoidsFloats):
1651
1652 2007-01-14  David Hyatt  <hyatt@apple.com>
1653
1654         Fix for 10145, regression where line breaks are not being honored between adjacent replaced elements.
1655         When checking for break opportunities where replaced elements are involved, we ignore their white-space
1656         values and use their parents' instead.  The assumption/idea behind this change is that because the element
1657         is replaced, its white-space value is irrelevant except as a means of applying style to its interior.
1658
1659         The CSS spec does not cover this situation, so we're implementing this based off what other browsers seem to
1660         do.
1661
1662         Reviewed by aroben
1663
1664         * css/CSSComputedStyleDeclaration.cpp:
1665         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1666         * css/CSSValueKeywords.in:
1667         * css/cssparser.cpp:
1668         (WebCore::CSSParser::parseValue):
1669         * css/cssstyleselector.cpp:
1670         (WebCore::CSSStyleSelector::applyProperty):
1671         * page/EventHandler.cpp:
1672         (WebCore::EventHandler::EventHandler):
1673         (WebCore::EventHandler::clear):
1674         (WebCore::EventHandler::handleWheelEvent):
1675         * page/EventHandler.h:
1676         * rendering/RenderBox.cpp:
1677         (WebCore::RenderBox::calcHeight):
1678         * rendering/RenderLayer.cpp:
1679         (WebCore::Marquee::Marquee):
1680         (WebCore::Marquee::start):
1681         (WebCore::Marquee::updateMarqueePosition):
1682         (WebCore::Marquee::updateMarqueeStyle):
1683         (WebCore::Marquee::timerFired):
1684         * rendering/RenderLayer.h:
1685         * rendering/RenderPartObject.cpp:
1686         (WebCore::RenderPartObject::viewCleared):
1687         * rendering/RenderStyle.h:
1688         (WebCore::):
1689         * rendering/bidi.cpp:
1690         (WebCore::RenderBlock::findNextLineBreak):
1691
1692 2007-01-13  David Hyatt  <hyatt@apple.com>
1693
1694         While optimizing form controls and fixing their clipping, I caused this text zoom regression.  The layout
1695         of text is necessary because it needs to recalc minmaxwidth.  This is still a really unfortunate
1696         bit of code... since a lot of properties don't apply to text (e.g., borders), we're marking text renderers
1697         as dirty when we don't have to.
1698
1699         Reviewed by mitz
1700
1701         * rendering/RenderObject.cpp:
1702         (WebCore::RenderObject::setStyle):
1703
1704 2007-01-13  Lars Knoll <lars@trolltech.com>
1705
1706         Reviewed by Alexey
1707
1708         String::format() was relying on undefined behaviour, which
1709         happened to work on lots of systems (Mac and 32bit Linux at least)
1710         but broke badly on 64bit Linux.
1711         
1712         * platform/String.cpp:
1713         (WebCore::String::format):
1714
1715 2007-01-13  Martin Reddy  <reddy@pixar.com>
1716
1717         Fix for bug 11924: WebCore would crash on any HTML content
1718         with a non-empty <table> tag in it on a 64-bit machine. The
1719         size_t (64bit) vs int (32bit) cast is now fixed in ensureRows,
1720         and the clients of this function have been updated to check
1721         for a false return code.
1722
1723         Reviewed by Darin, landed by Lars
1724
1725         * rendering/RenderTableSection.cpp:
1726         (WebCore::RenderTableSection::addChild):
1727         (WebCore::RenderTableSection::ensureRows):
1728         (WebCore::RenderTableSection::recalcCells):
1729
1730 2007-01-13  Alexey Proskuryakov  <ap@webkit.org>
1731
1732         Reviewed by Darin.
1733
1734         http://bugs.webkit.org/show_bug.cgi?id=12165
1735         REGRESSION: text encoding problem at jn.sapo.pt
1736
1737         Test: fast/encoding/script-in-head.html
1738
1739         * loader/TextResourceDecoder.cpp:
1740         (WebCore::TextResourceDecoder::checkForHeadCharset):
1741         Ignore tags within <script> elements in head, just like we do for <title>.
1742
1743 2007-01-13  Lars Knoll <lars@trolltech.com>
1744
1745         Reviewed by Maciej
1746
1747         Don't crash when constructing a GraphicsContext with a 0
1748         PlatformGraphicsContext and don't do anything if painting
1749         is disabled.
1750
1751         * platform/graphics/qt/GraphicsContextQt.cpp:
1752         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
1753         (WebCore::GraphicsContext::origin):
1754         (WebCore::GraphicsContext::setPlatformFont):
1755         (WebCore::GraphicsContext::setPlatformStrokeColor):
1756         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1757         (WebCore::GraphicsContext::setPlatformStrokeThickness):
1758         (WebCore::GraphicsContext::setPlatformFillColor):
1759
1760 2007-01-13  Eric Seidel  <eric@webkit.org>
1761
1762         Reviewed by hyatt.
1763
1764         RichDraw demo does not live-update in Safari
1765         (SVG elements should ignore CSS position)
1766         http://bugs.webkit.org/show_bug.cgi?id=10364
1767
1768         * css/cssstyleselector.cpp:
1769         (WebCore::CSSStyleSelector::adjustRenderStyle): ignore position for everything but <svg>
1770         * ksvg2/svg/SVGStyledElement.cpp:
1771         (WebCore::SVGStyledElement::rebuildRenderer): move path generation into layout()
1772         * rendering/RenderContainer.cpp:
1773         (WebCore::RenderContainer::layout): ASSERT kids marked as having completed layout
1774         * rendering/RenderPath.cpp:
1775         (WebCore::RenderPath::layout): move path generation into layout()
1776         * rendering/RenderSVGContainer.cpp:
1777         (WebCore::RenderSVGContainer::layout): ASSERT kids marked as having completed layout
1778
1779 2007-01-12  David Hyatt  <hyatt@apple.com>
1780
1781         Add support for column rules.
1782
1783         Reviewed by bdash
1784
1785         fast/multicol/column-rules.html
1786
1787         * rendering/RenderBlock.cpp:
1788         (WebCore::RenderBlock::paintColumns):
1789         * rendering/RenderStyle.h:
1790         (WebCore::RenderStyle::columnRuleIsTransparent):
1791
1792 2007-01-12  David Hyatt  <hyatt@apple.com>
1793
1794         Make multicolumn layout work with floats.
1795
1796         Reviewed by andersca
1797
1798         Added fast/multicol/float-multicol.html
1799
1800         * rendering/RenderBlock.cpp:
1801         (WebCore::RenderBlock::layoutBlock):
1802         (WebCore::RenderBlock::paintColumns):
1803         (WebCore::RenderBlock::paintObject):
1804         * rendering/RenderBlock.h:
1805
1806 2007-01-12  David Kilzer  <ddkilzer@kilzer.net>
1807
1808         Reviewed by Maciej.
1809
1810         - fix http://bugs.webkit.org/show_bug.cgi?id=12239
1811           REGRESSION (r18816-r18818): Assertion failure in 
1812           WebCore::Length::Length[in-charge](int, WebCore::LengthType, bool)
1813
1814         Test: fast/css/line-height.html
1815
1816         * rendering/RenderTextControl.cpp:
1817         (WebCore::RenderTextControl::createInnerTextStyle): Use a float to create a percent Length.
1818
1819 2007-01-12  Anders Carlsson  <acarlsson@apple.com>
1820
1821         Reviewed by Darin.
1822
1823         Use unsigned long for identifiers instead of Objective-C objects.
1824         
1825         * loader/FrameLoader.cpp:
1826         (WebCore::FrameLoader::loadResourceSynchronously):
1827         (WebCore::FrameLoader::startLoadingMainResource):
1828         (WebCore::FrameLoader::startLoading):
1829         (WebCore::FrameLoader::assignIdentifierToInitialRequest):
1830         (WebCore::FrameLoader::opened):
1831         (WebCore::FrameLoader::sendRemainingDelegateMessages):
1832         (WebCore::FrameLoader::requestFromDelegate):
1833         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
1834         * loader/FrameLoader.h:
1835         * loader/FrameLoaderClient.h:
1836         * loader/ResourceLoader.cpp:
1837         (WebCore::ResourceLoader::ResourceLoader):
1838         (WebCore::ResourceLoader::willSendRequest):
1839         * loader/ResourceLoader.h:
1840         (WebCore::ResourceLoader::setIdentifier):
1841         (WebCore::ResourceLoader::identifier):
1842         * page/Page.cpp:
1843         (WebCore::Page::Page):
1844         (WebCore::Page::createUniqueIdentifier):
1845         * page/Page.h:
1846         * platform/graphics/svg/SVGImageEmptyClients.h:
1847         (WebCore::SVGEmptyFrameLoaderClient::assignIdentifierToInitialRequest):
1848         (WebCore::SVGEmptyFrameLoaderClient::dispatchWillSendRequest):
1849         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
1850         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
1851         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveResponse):
1852         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveContentLength):
1853         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidFinishLoading):
1854         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidFailLoading):
1855         (WebCore::SVGEmptyFrameLoaderClient::incrementProgress):
1856         (WebCore::SVGEmptyFrameLoaderClient::completeProgress):
1857
1858 2007-01-12  Mitz Pettel  <mitz@webkit.org>
1859
1860         Reviewed by Darin.
1861
1862         - fix http://bugs.webkit.org/show_bug.cgi?id=12235
1863           REGRESSION (r18815): Marquees do not scroll
1864
1865         * css/cssstyleselector.cpp:
1866         (WebCore::CSSStyleSelector::applyProperty): Apply the '-webkit-marquee' value
1867         of 'overflow-x' and 'overflow-y'.
1868
1869 2007-01-12  Justin Garcia  <justin.garcia@apple.com>
1870
1871         Reviewed by hyatt
1872         
1873         <rdar://problem/4875425>
1874         EBay, GMail, and GoogleDocs RTEs font size popups don't work
1875
1876         Changed execCommand("FontSize", ...) to match the spec 
1877         and the behavior of other browsers.  It expects a number, 
1878         n, which, the spec says can be 1 through 7.  Other browsers 
1879         perform the font size change by creating a font element 
1880         wrapper with size="n".  We convert n into one of the absolute 
1881         size CSS keywords (x-small, medium, etc.).
1882
1883         * editing/JSEditor.cpp: Call cssValueFromFontSizeNumber.  If
1884         successful, perform the style change.
1885         * html/HTMLFontElement.cpp:
1886         (WebCore::HTMLFontElement::cssValueFromFontSizeNumber):  Added.
1887         Moved this code from parsedMappedAttribute so that it could be
1888         called from the Editor.
1889         (WebCore::HTMLFontElement::parseMappedAttribute): Moved code into
1890         cssValueFromFontSizeNumber.
1891         * html/HTMLFontElement.h:
1892
1893 2007-01-12  David Hyatt  <hyatt@apple.com>
1894
1895         Fix for bug 11598, implement lightweight control clipping mechanism for
1896         buttons, list boxes, and dropdown lists.  Make sure list box respects
1897         scrollLeft/Top/Width/Height as well as clientWidth/Height.
1898
1899         Fix bugs in RenderStyle::diff.  CursorData was not being compared properly.
1900         vertical-align had a non-inline display check that was wrong (preventing
1901         dynamic changes to keyword-based vertical-align from working).
1902
1903         Reviewed by mitz
1904
1905         * page/EventHandler.cpp:
1906         (WebCore::EventHandler::selectClosestWordFromMouseEvent):
1907         * rendering/RenderBlock.cpp:
1908         (WebCore::RenderBlock::layout):
1909         (WebCore::RenderBlock::layoutBlock):
1910         (WebCore::RenderBlock::determineHorizontalPosition):
1911         (WebCore::RenderBlock::layoutBlockChildren):
1912         (WebCore::RenderBlock::paint):
1913         (WebCore::RenderBlock::fillHorizontalSelectionGap):
1914         (WebCore::RenderBlock::nodeAtPoint):
1915         (WebCore::RenderBlock::layoutColumns):
1916         * rendering/RenderBox.cpp:
1917         (WebCore::RenderBox::computeAbsoluteRepaintRect):
1918         * rendering/RenderBox.h:
1919         * rendering/RenderButton.cpp:
1920         (WebCore::RenderButton::setStyle):
1921         (WebCore::RenderButton::controlClipRect):
1922         * rendering/RenderButton.h:
1923         (WebCore::RenderButton::hasControlClip):
1924         * rendering/RenderFlexibleBox.cpp:
1925         (WebCore::RenderFlexibleBox::layoutBlock):
1926         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
1927         (WebCore::RenderFlexibleBox::layoutVerticalBox):
1928         * rendering/RenderFlow.cpp:
1929         (WebCore::RenderFlow::addFocusRingRects):
1930         * rendering/RenderListBox.cpp:
1931         (WebCore::RenderListBox::itemBoundingBoxRect):
1932         (WebCore::RenderListBox::paintObject):
1933         (WebCore::RenderListBox::itemHeight):
1934         (WebCore::RenderListBox::verticalScrollbarWidth):
1935         (WebCore::RenderListBox::scrollWidth):
1936         (WebCore::RenderListBox::scrollHeight):
1937         (WebCore::RenderListBox::scrollLeft):
1938         (WebCore::RenderListBox::setScrollLeft):
1939         (WebCore::RenderListBox::scrollTop):
1940         (WebCore::RenderListBox::setScrollTop):
1941         (WebCore::RenderListBox::controlClipRect):
1942         * rendering/RenderListBox.h:
1943         (WebCore::RenderListBox::hasControlClip):
1944         * rendering/RenderMenuList.cpp:
1945         (WebCore::RenderMenuList::setStyle):
1946         (WebCore::RenderMenuList::controlClipRect):
1947         * rendering/RenderMenuList.h:
1948         (WebCore::RenderMenuList::hasControlClip):
1949         * rendering/RenderObject.cpp:
1950         (WebCore::RenderObject::verticalScrollbarWidth):
1951         (WebCore::RenderObject::horizontalScrollbarHeight):
1952         (WebCore::RenderObject::clientWidth):
1953         (WebCore::RenderObject::clientHeight):
1954         (WebCore::RenderObject::setStyle):
1955         * rendering/RenderObject.h:
1956         (WebCore::RenderObject::hasControlClip):
1957         (WebCore::RenderObject::controlClipRect):
1958         (WebCore::RenderObject::contentWidth):
1959         (WebCore::RenderObject::contentHeight):
1960         * rendering/RenderStyle.cpp:
1961         (WebCore::StyleVisualData::StyleVisualData):
1962         (WebCore::cursorDataEqvuialent):
1963         (WebCore::StyleInheritedData::operator==):
1964         (WebCore::CursorList::operator==):
1965         (WebCore::RenderStyle::diff):
1966         * rendering/RenderStyle.h:
1967         (WebCore::LengthBox::operator!=):
1968         (WebCore::StyleVisualData::operator==):
1969         (WebCore::CursorData::operator==):
1970         (WebCore::CursorData::operator!=):
1971         (WebCore::CursorList::operator!=):
1972         (WebCore::RenderStyle::setTableLayout):
1973         * rendering/bidi.cpp:
1974         (WebCore::RenderBlock::layoutInlineChildren):
1975
1976 2007-01-12  David Hyatt  <hyatt@apple.com>
1977
1978         Fix for bug 9934, smaller line heights should not be allowed on
1979         text fields.
1980
1981         Reviewed by darin
1982
1983         * rendering/RenderTextControl.cpp:
1984         (WebCore::RenderTextControl::createInnerTextStyle):
1985
1986 2007-01-12  Mitz Pettel  <mitz@webkit.org>
1987
1988         Reviewed by Hyatt.
1989
1990         - http://bugs.webkit.org/show_bug.cgi?id=12215
1991           Treat 'overflow' and '-webkit-border-radius' as shorthands when parsing and
1992           when removing.
1993
1994         Test: fast/css/remove-shorthand.html (updated)
1995
1996         * css/CSSMutableStyleDeclaration.cpp:
1997         (WebCore::initShorthandMap):
1998         * css/cssparser.cpp:
1999         (WebCore::CSSParser::parseValue):
2000
2001 2007-01-12  Rob Buis  <buis@kde.org>
2002
2003         Reviewed by Mitz.
2004
2005         Do not mix up JSSVGPolygonElement and JSSVGPolylineElement.
2006
2007         * bindings/js/JSSVGElementWrapperFactory.cpp:
2008
2009 2007-01-12  Kevin Decker <kdecker@apple.com>
2010
2011         Reviewed by andersca.
2012
2013         Fixed: <rdar://problem/4701326>21.2 ms launch time regression spent in +[WebPluginDatabase installedPlugins]
2014
2015         * dom/DOMImplementation.cpp:
2016         (WebCore::DOMImplementation::createDocument): Added a guard clause for text/html which used to be in WebKit before a lot of the 
2017         loader plumbing was moved to WebCore.  Pinging the plug-in database to ask it if it supports a given mime type has the side 
2018         effect of reading from disk on first call, therefore such a check should be a last resort.  
2019
2020 2007-01-12  Mitz Pettel  <mitz@webkit.org>
2021
2022         Reviewed by Darin.
2023
2024         - fix http://bugs.webkit.org/show_bug.cgi?id=12223
2025           REGRESSION: Leaks under CSSStyleSelector::applyProperty
2026
2027         No test possible (no change to functionality).
2028
2029         * rendering/RenderObject.h: Removed unused forward declaration.
2030         * rendering/RenderStyle.cpp:
2031         (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData):
2032         Delete shadow data.
2033
2034 2007-01-12  Anders Carlsson  <acarlsson@apple.com>
2035
2036         Build fix.
2037         
2038         * WebCore.xcodeproj/project.pbxproj:
2039         Remove SubresourceLoaderMac.mm.
2040         
2041 2007-01-12  Lars Knoll <lars@trolltech.com>
2042
2043         Reviewed by Darin and Anders.
2044
2045         Make some more of the loader code platform independent.
2046
2047         * loader/FrameLoader.cpp:
2048         (WebCore::FrameLoader::clear):
2049         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
2050         (WebCore::FrameLoader::urlSelected):
2051         (WebCore::FrameLoader::createEmptyDocument):
2052         (WebCore::FrameLoader::setTitle):
2053         (WebCore::FrameLoader::originalRequestURL):
2054         (WebCore::FrameLoader::referrer):
2055         * loader/SubresourceLoader.cpp:
2056         (WebCore::SubresourceLoader::SubresourceLoader):
2057         (WebCore::SubresourceLoader::load):
2058         (WebCore::SubresourceLoader::create):
2059         (WebCore::SubresourceLoader::willSendRequest):
2060         (WebCore::SubresourceLoader::didReceiveResponse):
2061         (WebCore::SubresourceLoader::didReceiveData):
2062         (WebCore::SubresourceLoader::didFinishLoading):
2063         (WebCore::SubresourceLoader::didFail):
2064         (WebCore::SubresourceLoader::didCancel):
2065         (WebCore::SubresourceLoader::stopLoading):
2066         * loader/SubresourceLoader.h:
2067         * loader/mac/FrameLoaderMac.mm:
2068         * loader/mac/SubresourceLoaderMac.mm: Removed.
2069         * loader/qt/FrameLoaderQt.cpp:
2070
2071 2007-01-12  Lars Knoll <lars@trolltech.com>
2072
2073         Reviewed by Zack
2074
2075         Valgrind reported uninitialized variable.
2076
2077         * platform/network/qt/ResourceHandleManagerQt.cpp:
2078         (WebCore::FileLoader::request):
2079
2080 2007-01-12  Mitz Pettel  <mitz@webkit.org>
2081
2082         Reviewed by rwlbuis.
2083
2084         - add missing null check in new fixed table layout code
2085
2086         * rendering/FixedTableLayout.cpp:
2087         (WebCore::FixedTableLayout::calcWidthArray):
2088
2089 2007-01-12  Lars Knoll <lars@trolltech.com>
2090
2091         Fix the Qt build after the Authenitcation changes.
2092
2093         * WebCore.pro:
2094         * platform/network/ResourceHandleInternal.h:
2095
2096 2007-01-12  David Hyatt  <hyatt@apple.com>
2097
2098         Fix for bug 9569.  Make sure the selection offset for selection roots excludes border and padding.
2099
2100         Reviewed by Eric
2101
2102         * rendering/RenderBlock.cpp:
2103         (WebCore::RenderBlock::leftSelectionOffset):
2104         (WebCore::RenderBlock::rightSelectionOffset):
2105
2106 2007-01-11  David Hyatt  <hyatt@apple.com>
2107
2108         Fix for bug 8705, readonly text fields should not get focus rings.  Add a rule to that effect to
2109         html4.css and then also add readonly as a special case for style sharing so that we can retain the
2110         performance boost from sharing styles on inputs.
2111
2112         Reviewed by bdash
2113
2114         * css/cssstyleselector.cpp:
2115         (WebCore::CSSStyleSelector::canShareStyleWithElement):
2116         (WebCore::CSSStyleSelector::checkOneSelector):
2117         * css/html4.css:
2118
2119 2007-01-11  David Hyatt  <hyatt@apple.com>
2120
2121         Fix for bug 11595.  Autoscrolling of layers didn't really work at all unless the layer was coincidentally
2122         in the root layer's coordinate space.  The event point was an absolute position within the document, but
2123         the layer's rect was only local coords.  This patch makes sure to use absolute bounds for the layer
2124         when comparing it with the point.
2125
2126         This is covered by the scrollRevealButton test case already in the tree... the results change to be more
2127         correct.
2128
2129         Reviewed by ggaren
2130
2131         * rendering/RenderLayer.cpp:
2132         (WebCore::RenderLayer::scrollRectToVisible):
2133
2134 2007-01-11  Brady Eidson  <beidson@apple.com>
2135
2136         Reviewed by Oliver
2137
2138         -Move more HTTP Auth handling towards ResourceHandle, away from ResourceHandleClient
2139         -Make more of ResourceLoader cross-platform
2140
2141         * loader/ResourceLoader.cpp:
2142         (WebCore::ResourceLoader::ResourceLoader):
2143         (WebCore::ResourceLoader::releaseResources):
2144         (WebCore::ResourceLoader::didCancel):
2145         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
2146         (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
2147         (WebCore::ResourceLoader::receivedCancellation):
2148         * loader/ResourceLoader.h:
2149         (WebCore::ResourceLoader::willStopBufferingData):
2150         (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
2151         (WebCore::ResourceLoader::willCacheResponse):
2152         * loader/mac/ResourceLoaderMac.mm:
2153         * platform/network/ResourceHandle.h:
2154         * platform/network/ResourceHandleClient.h:
2155         (WebCore::ResourceHandleClient::willStopBufferingData):
2156         * platform/network/ResourceHandleInternal.h:
2157         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2158         * platform/network/mac/ResourceHandleMac.mm:
2159         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
2160         (WebCore::ResourceHandle::didCancelAuthenticationChallenge):
2161         (WebCore::ResourceHandle::receivedCredential):
2162         (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
2163         (WebCore::ResourceHandle::receivedCancellation):
2164         (WebCore::ResourceHandle::clearAuthentication):
2165         (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]):
2166         (-[WebCoreResourceHandleAsDelegate connection:didCancelAuthenticationChallenge:]):
2167         (-[WebCoreResourceHandleAsDelegate useCredential:forAuthenticationChallenge:]):
2168         (-[WebCoreResourceHandleAsDelegate continueWithoutCredentialForAuthenticationChallenge:]):
2169         (-[WebCoreResourceHandleAsDelegate cancelAuthenticationChallenge:]):
2170
2171 2007-01-11  David Hyatt  <hyatt@apple.com>
2172
2173         A hit test is returning a null renderer.  Make sure to null-check it in the autoscroll code.
2174         This really shouldn't happen, but I'm just going to bullet proof for now given that it's happening
2175         on the front page of yahoo.com!
2176
2177         Reviewed by mark
2178
2179         * rendering/RenderLayer.cpp:
2180         (WebCore::RenderLayer::autoscroll):
2181
2182 2007-01-11  David Hyatt  <hyatt@apple.com>
2183
2184         Force column-width to parse in strict mode so that there is no confusion when it is used in the columns
2185         shorthand (it can be mistaken for column-count otherwise).
2186
2187         Reviewed by Mark
2188
2189         fast/multicol/columns-shorthand-parsing.html
2190
2191         * css/cssparser.cpp:
2192         (WebCore::CSSParser::parseValue):
2193
2194 2007-01-11  Mitz Pettel  <mitz@webkit.org>
2195
2196         Reviewed by Hyatt.
2197
2198         - fix http://bugs.webkit.org/show_bug.cgi?id=12124
2199           RenderTable::section{Above,Below}() can return the wrong answer for the {footer,header}
2200
2201         * rendering/RenderTable.cpp:
2202         (WebCore::resetSectionPointerIfNotBefore): Added this function to help with
2203         checking if a section being inserted is the going to be the first of its kind.
2204         (WebCore::RenderTable::addChild): Changed to maintain the pointers to the
2205         header, the footer, the caption and the first table body properly when objects
2206         are inserted in the middle. Also changed to make the first caption win over
2207         any other captions. This matches Firefox and what already used to happen when a
2208         section recalc took place.
2209         (WebCore::RenderTable::layout): Changed to use sectionBelow() for iterating
2210         over the sections from top to bottom.
2211         (WebCore::RenderTable::calcBorderLeft): Changed to really find the section
2212         containing the first row.
2213         (WebCore::RenderTable::calcBorderRight): Ditto.
2214         (WebCore::RenderTable::sectionAbove): Fixed a bug when the last section was
2215         skipped if the input was the footer.
2216         (WebCore::RenderTable::sectionBelow): Ditto for "first" and "header"
2217         respectively.
2218
2219 2007-01-11  Mitz Pettel  <mitz@webkit.org>
2220
2221         Reviewed by Hyatt.
2222
2223         - fix http://bugs.webkit.org/show_bug.cgi?id=12115
2224           RTL text is jumbled on display
2225
2226         Fixed fixed table layout. Implemented an algorithm that matches the behavior
2227         of Firefox, up to rounding errors.
2228
2229         Fixes three existing table tests.
2230
2231         * rendering/FixedTableLayout.cpp:
2232         Undid accidental search-and-replace of "width" to "m_width" in the comments.
2233         Removed an outdated comment, since WebKit no longer honors table-layout:fixed
2234         for variable-width tables.
2235         (WebCore::FixedTableLayout::calcWidthArray): Fixed the logic that finds the
2236         first row. Changed to divide the width specified for a cell that spans multiple
2237         columns between the columns rather than assign its entire width to each column.
2238         (WebCore::FixedTableLayout::calcMinMaxWidth):
2239         (WebCore::FixedTableLayout::layout): Implemented the behavior observed in
2240         Firefox.
2241         * rendering/FixedTableLayout.h:
2242
2243 2007-01-11  Mitz Pettel  <mitz@webkit.org>
2244
2245         Reviewed by Hyatt.
2246
2247         - fix http://bugs.webkit.org/show_bug.cgi?id=8438
2248           iExploder(#460): Assertion failure in RenderObject::drawBorder()
2249
2250         Test: fast/block/basic/fieldset-stretch-to-legend.html
2251
2252         * rendering/RenderBox.cpp:
2253         (WebCore::RenderBox::calcWidth): Stretch to the minimum intrinsic
2254         width if the object requires it.
2255         (WebCore::RenderBox::calcHorizontalMargins): Some style cleanup.
2256         (WebCore::RenderBox::calcAbsoluteHorizontal): Stretch to the minimum
2257         intrinsic width if the object requires it.
2258         * rendering/RenderBox.h:
2259         (WebCore::RenderBox::stretchesToMinIntrinsicWidth): Added. Returns false.
2260         * rendering/RenderFieldset.cpp:
2261         (WebCore::RenderFieldset::calcMinMaxWidth): Overloaded RenderBlock's
2262         implementation to ensure that the legend's will fit in the fieldset's
2263         minimum intrinsic width.
2264         (WebCore::RenderFieldset::findLegend): Made const.
2265         (WebCore::RenderFieldset::paintBoxDecorations):
2266         (WebCore::RenderFieldset::paintBorderMinusLegend): Fixed the behavior when
2267         the legend does overflow the fieldset. This is the part of the fix that
2268         prevents the assertion failure. If the legend intersects with a corner of
2269         the fieldset's border, that corner will not be painted, even if it is not
2270         completely occluded. This edge case can be improved with clipping in the
2271         future. Added FIXME to implement border-radius.
2272         * rendering/RenderFieldset.h:
2273         (WebCore::RenderFieldset::stretchesToMinIntrinsicWidth): Overloaded to
2274         return true.
2275
2276 2007-01-11  Brady Eidson  <beidson@apple.com>
2277
2278         Reviewed by Build Fix Karma
2279
2280         I broke the release build (debug build passed)
2281
2282         * platform/network/mac/AuthenticationMac.mm:
2283         (WebCore::core):
2284
2285 2007-01-11  Brady Eidson  <beidson@apple.com>
2286
2287         Reviewed by Anders
2288
2289         Rewrites HTTP Authentication setting up a more platform-independent structure
2290
2291         * WebCore.exp:
2292         * WebCore.xcodeproj/project.pbxproj:
2293         * loader/FrameLoader.cpp:
2294         (WebCore::FrameLoader::didReceiveAuthenticationChallenge):
2295         (WebCore::FrameLoader::didCancelAuthenticationChallenge):
2296         * loader/FrameLoader.h:
2297         * loader/FrameLoaderClient.h:
2298         * loader/ResourceLoader.cpp:
2299         (WebCore::ResourceLoader::ResourceLoader):
2300         (WebCore::ResourceLoader::didCancel):
2301         * loader/ResourceLoader.h:
2302         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
2303         (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
2304         (WebCore::ResourceLoader::receivedCredential):
2305         (WebCore::ResourceLoader::receivedRequestToContinueWithoutCredential):
2306         (WebCore::ResourceLoader::receivedCancellation):
2307         * loader/mac/FrameLoaderMac.mm:
2308         * loader/mac/ResourceLoaderMac.mm:
2309         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
2310         (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
2311         (WebCore::ResourceLoader::receivedCredential):
2312         (WebCore::ResourceLoader::receivedRequestToContinueWithoutCredential):
2313         (WebCore::ResourceLoader::receivedCancellation):
2314         * platform/graphics/svg/SVGImageEmptyClients.h:
2315         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
2316         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
2317         * platform/network/ResourceHandleClient.h:
2318         (WebCore::ResourceHandleClient::willSendRequest):
2319         (WebCore::ResourceHandleClient::didReceiveAuthenticationChallenge):
2320         (WebCore::ResourceHandleClient::didCancelAuthenticationChallenge):
2321         (WebCore::ResourceHandleClient::receivedCredential):
2322         (WebCore::ResourceHandleClient::receivedRequestToContinueWithoutCredential):
2323         (WebCore::ResourceHandleClient::receivedCancellation):
2324         (WebCore::ResourceHandleClient::willCacheResponse):
2325         * platform/network/ResourceResponse.h:
2326         (WebCore::operator!=):
2327         * platform/network/URLAuthenticationChallenge.cpp: Added.
2328         (WebCore::URLAuthenticationChallenge::URLAuthenticationChallenge):
2329         (WebCore::URLAuthenticationChallenge::previousFailureCount):
2330         (WebCore::URLAuthenticationChallenge::proposedCredential):
2331         (WebCore::URLAuthenticationChallenge::protectionSpace):
2332         (WebCore::URLAuthenticationChallenge::failureResponse):
2333         (WebCore::URLAuthenticationChallenge::error):
2334         (WebCore::URLAuthenticationChallenge::isNull):
2335         (WebCore::URLAuthenticationChallenge::nullify):
2336         (WebCore::operator==):
2337         (WebCore::operator!=):
2338         * platform/network/URLAuthenticationChallenge.h: Added.
2339         (WebCore::URLAuthenticationChallenge::sender):
2340         (WebCore::URLAuthenticationChallenge::nsURLAuthenticationChallenge):
2341         * platform/network/URLCredential.cpp: Added.
2342         (WebCore::URLCredential::URLCredential):
2343         (WebCore::URLCredential::user):
2344         (WebCore::URLCredential::password):
2345         (WebCore::URLCredential::hasPassword):
2346         (WebCore::URLCredential::persistence):
2347         (WebCore::operator==):
2348         * platform/network/URLCredential.h: Added.
2349         (WebCore::):
2350         (WebCore::operator!=):
2351         * platform/network/URLProtectionSpace.cpp: Added.
2352         (WebCore::URLProtectionSpace::URLProtectionSpace):
2353         (WebCore::URLProtectionSpace::host):
2354         (WebCore::URLProtectionSpace::port):
2355         (WebCore::URLProtectionSpace::serverType):
2356         (WebCore::URLProtectionSpace::realm):
2357         (WebCore::URLProtectionSpace::authenticationScheme):
2358         (WebCore::operator==):
2359         * platform/network/URLProtectionSpace.h: Added.
2360         (WebCore::):
2361         (WebCore::operator!=):
2362         * platform/network/mac/AuthenticationMac.h: Added.
2363         * platform/network/mac/AuthenticationMac.mm: Added.
2364         (WebCore::URLAuthenticationChallenge::URLAuthenticationChallenge):
2365         (WebCore::mac):
2366         (WebCore::core):
2367         * platform/network/mac/ResourceHandleMac.mm:
2368         (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]):
2369         (-[WebCoreResourceHandleAsDelegate connection:didCancelAuthenticationChallenge:]):
2370         (-[WebCoreResourceHandleAsDelegate useCredential:forAuthenticationChallenge:]):
2371         (-[WebCoreResourceHandleAsDelegate continueWithoutCredentialForAuthenticationChallenge:]):
2372         (-[WebCoreResourceHandleAsDelegate cancelAuthenticationChallenge:]):
2373         * platform/network/mac/ResourceResponseMac.mm:
2374         (WebCore::operator==):
2375
2376 2007-01-11  Geoffrey Garen  <ggaren@apple.com>
2377
2378         Reviewed by Anders Carlsson.
2379         
2380         Even more cleanup in preparation for fixing <rdar://problem/4608404> 
2381         WebScriptObject's _executionContext lack of ownership policy causes 
2382         crashes (e.g., in Dashcode)
2383         
2384         Layout tests pass.
2385         
2386         Renames:
2387             findRootObjectForNativeHandleFunction => createRootObject
2388             FindRootObjectForNativeHandleFunctionPtr => createRootObjectFunction
2389             rootForView => createRootObject
2390             getInstanceForView => getPluginInstanceForWidget
2391
2392         * page/mac/FrameMac.mm:
2393         (WebCore::FrameMac::getAppletInstanceForWidget): Put the NSView * in a void*
2394         variable named "nativeHandle" to be more explicit about the fact that JavaScript's
2395         "nativeHandle" is just an NSView *.
2396
2397         (WebCore::getPluginInstanceForWidget): This function now does the NSView *
2398         fetching that its callers used to do.
2399         (WebCore::FrameMac::getEmbedInstanceForWidget): Updated for rename.
2400         (WebCore::FrameMac::getObjectInstanceForWidget): ditto
2401
2402         * page/mac/WebCoreFrameBridge.mm: Killed the WebCoreBridgeInternal category,
2403         which was really more of a shmategory.
2404         (createRootObject): Removed rootObjectForView, folding it into its only
2405         caller, the similarly named rootForView. Renamed the pair to "createRootObject"
2406         because that's what they do.
2407
2408         (-[WebCoreFrameBridge init]): Updated for renames
2409
2410 2007-01-11  Anders Carlsson  <acarlsson@apple.com>
2411
2412         Reviewed by Darin.
2413
2414         Fix crash on platforms that don't use the new loader yet.
2415         
2416         * loader/DocLoader.cpp:
2417         (WebCore::DocLoader::requestResource):
2418
2419 2007-01-11  Mitz Pettel  <mitz@webkit.org>
2420
2421         Reviewed by Adam.
2422
2423         - fix http://bugs.webkit.org/show_bug.cgi?id=11449
2424           Type-to-select in unopened popups doesn't work with Hebrew
2425
2426         Test: fast/forms/select-type-ahead-non-latin.html
2427
2428         * html/HTMLSelectElement.cpp:
2429         (WebCore::HTMLSelectElement::defaultEventHandler): Changed locale-specific
2430         isprint() condition to a Unicode isPrintableChar().
2431
2432 2007-01-09  Justin Garcia  <justin.garcia@apple.com>
2433
2434         Reviewed by geoff
2435         
2436         <rdar://problem/4889140>
2437         GMail Editor: List creation fails in new message
2438
2439         * editing/InsertListCommand.cpp:
2440         (WebCore::InsertListCommand::doApply): Inserting the list
2441         into an empty paragraph not held open by a br or a '\n', 
2442         will invalidate start and end.  Insert a placeholder and 
2443         then recompute start and end.
2444
2445 2007-01-11  Lars Knoll <lars@trolltech.com>
2446
2447         Rubberstamped by Anders
2448
2449         This one is not needed any longer neither.
2450
2451         * ChangeLog:
2452         * WebCore.pro:
2453         * loader/qt/NavigationActionQt.cpp: Removed.
2454
2455 2007-01-11  Lars Knoll <lars@trolltech.com>
2456
2457         Reviewed by Anders
2458
2459         Remove now unused file
2460
2461         * WebCore.pro:
2462         * loader/qt/LoaderFunctionsQt.cpp: Removed.
2463
2464 2007-01-11  David Kilzer  <ddkilzer@webkit.org>
2465
2466         Reviewed by NOBODY (build fix).
2467
2468         * loader/mac/FrameLoaderMac.mm:  Removed import of LoaderNSURLRequestExtras.h.
2469         * loader/mac/SubresourceLoaderMac.mm:  Ditto.
2470
2471 2007-01-11  George Staikos  <staikos@kde.org>
2472
2473         Fix compile.
2474
2475         * page/qt/FrameQtClient.cpp:
2476
2477 2007-01-11  Anders Carlsson  <acarlsson@apple.com>
2478
2479         Fix build.
2480         
2481         * dom/XMLTokenizer.cpp:
2482         * loader/CachedCSSStyleSheet.cpp:
2483         * loader/CachedImage.cpp:
2484         * loader/DocLoader.cpp:
2485         * loader/loader.cpp:
2486         * xml/XSLTProcessor.cpp:
2487         * xml/xmlhttprequest.cpp:
2488
2489 2007-01-11  Anders Carlsson  <acarlsson@apple.com>
2490
2491         Reviewed by Adam.
2492
2493         Loader cleanup, get rid of unused code.
2494         
2495         * WebCore.xcodeproj/project.pbxproj:
2496         * loader/CachedResource.h:
2497         * loader/DocLoader.cpp:
2498         (WebCore::DocLoader::requestResource):
2499         (WebCore::DocLoader::checkCacheObjectStatus):
2500         * loader/DocLoader.h:
2501         * loader/LoaderFunctions.h: Removed.
2502         * loader/mac/CachedResourceMac.mm: Removed.
2503         * loader/mac/LoaderFunctionsMac.mm: Removed.
2504         * loader/mac/LoaderNSURLRequestExtras.h: Removed.
2505         * loader/mac/LoaderNSURLRequestExtras.m: Removed.
2506         * loader/mac/SubresourceLoaderMac.mm:
2507         * page/mac/WebCoreFrameBridge.mm:
2508         * platform/network/ResourceHandle.cpp:
2509
2510 2007-01-11  Beth Dakin  <bdakin@apple.com>
2511
2512         Reviewed by Adam.
2513
2514         Fix for http://bugs.webkit.org/show_bug.cgi?id=12135 REGRESSION: 
2515         <input> and <textarea> not focused on right click (4908884 in 
2516         Radar)
2517
2518         * page/EventHandler.cpp:
2519         (WebCore::EventHandler::sendContextMenuEvent): Since WebcCore now 
2520         handles the context menu event, we want to ask if we *have* 
2521         swallowed the event instead of if we *haven't* when deciding to 
2522         perform a selection. In the past, WebKit handled the event, so 
2523         swallowEvent was false in the case where we want to pop up a menu. 
2524
2525 2007-01-11  Darin Adler  <darin@apple.com>
2526
2527         Reviewed by Anders.
2528
2529         - fix http://bugs.webkit.org/show_bug.cgi?id=12189
2530           REGRESSION(r18614-18640): Crash in WebCore::SharedBuffer::hasPlatformData()
2531
2532         * loader/mac/LoaderFunctionsMac.mm: (WebCore::CheckCacheObjectStatus):
2533         Added null check.
2534
2535 2007-01-11  Darin Adler  <darin@apple.com>
2536
2537         * platform/CharacterNames.h: Oops! horizontalEllipsis != zeroWidthSpace!
2538
2539 2007-01-11  Lars Knoll <lars@trolltech.com>
2540
2541         Reviewed by Darin.
2542
2543         Start using the loader in the Qt port.
2544
2545         * loader/FrameLoader.cpp:
2546         (WebCore::FrameLoader::clear):
2547         (WebCore::FrameLoader::URL):
2548         (WebCore::FrameLoader::createEmptyDocument):
2549         * loader/qt/FrameLoaderQt.cpp:
2550         (WebCore::FrameLoader::setTitle):
2551         (WebCore::FrameLoader::originalRequestURL):
2552         (WebCore::FrameLoader::referrer):
2553         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
2554         * page/qt/FrameQtClient.cpp:
2555         (WebCore::FrameQtClient::openURL):
2556
2557 2007-01-11  Darin Adler  <darin@apple.com>
2558
2559         Reviewed by Hyatt.
2560
2561         - removed a couple Mac bridging classes; put the code in WebKit instead
2562
2563         * WebCore.exp: Updated for new WebKit uses.
2564
2565         * WebCore.xcodeproj/project.pbxproj: Removed files.
2566         * bridge/mac/WebCoreEncodings.h: Removed.
2567         * bridge/mac/WebCoreEncodings.mm: Removed.
2568         * bridge/mac/WebMimeTypeRegistryBridge.h: Removed.
2569         * bridge/mac/WebMimeTypeRegistryBridge.mm: Removed.
2570         * platform/mac/WebNSAttributedStringExtras.h: Removed.
2571         * platform/mac/WebNSAttributedStringExtras.mm: Removed.
2572
2573         * platform/mac/PasteboardMac.mm:
2574         (WebCore::stripAttachmentCharacters): Added. Moved code from
2575         WebNSAttributedStringExtras.mm, and fixed a garbage collection problem
2576         (a global with a plain old retain rather than HardRetain).
2577         (WebCore::Pasteboard::writeSelection): Updated to use stripAttachmentCharacters.
2578
2579         - removed some DeprecatedCString use
2580
2581         * loader/FrameLoader.cpp: Changed to use String more to eliminate use of
2582         DeprecatedCString here in the mailto form support. But maybe we can remove
2583         this entirely. Do we really care about mailto forms any more?
2584
2585         * platform/Pasteboard.h: Removed unneeded DeprecatedCString declaration.
2586
2587         * platform/PlatformString.h: Added replace that takes two strings.
2588         * platform/StringImpl.h: Ditto.
2589         * platform/StringImpl.cpp: (WebCore::StringImpl::replace): Ditto.
2590
2591         * platform/TextStream.h: Remove DeprecatedCString case.
2592         * platform/TextStream.cpp: Ditto.
2593
2594         - made a few more files use CharacterNames.h
2595
2596         * platform/CharacterNames.h: Added some more character names and
2597         sorted alphabetically.
2598
2599         * bridge/mac/WebCoreStringTruncator.mm:
2600         (centerTruncateToBuffer): Use character name from CharacterNames.h.
2601         (rightTruncateToBuffer): Ditto.
2602         (truncateString): Ditto.
2603         * platform/mac/FontMac.mm: (WebCore::addDirectionalOverride): Ditto.
2604         * rendering/RenderFlexibleBox.cpp:
2605         (WebCore::RenderFlexibleBox::layoutVerticalBox): Ditto.
2606         * rendering/bidi.cpp:
2607         (WebCore::RenderBlock::checkLinesForTextOverflow): Ditto.
2608
2609 2007-01-11  David Hyatt  <hyatt@apple.com>
2610
2611         Fix two bugs in positionForCoordinates.  (Make it work when you have a margin in between your border and
2612         your first child block.)
2613
2614         Rewrite column rebalancing to have two modes: constrained and unconstrained.  In unconstrained mode,
2615         the system will dynamically rebalance as it loses space to breaks and compute a final intrinsic height
2616         for the overall block.  In constrained mode, columns flow into the fixed height block, and extra columns
2617         spill out horizontally in the appropriate direction (RTL/LTR).
2618
2619         Make columns work properly with both LTR and RTL overflow blocks.
2620
2621         Initial column test suite coming soon now that the basic layout is right.
2622
2623         Reviewed by darin
2624
2625         * rendering/RenderBlock.cpp:
2626         (WebCore:::RenderFlow):
2627         (WebCore::RenderBlock::layoutBlock):
2628         (WebCore::RenderBlock::paintColumns):
2629         (WebCore::RenderBlock::lowestPosition):
2630         (WebCore::RenderBlock::rightmostPosition):
2631         (WebCore::RenderBlock::leftmostPosition):
2632         (WebCore::RenderBlock::hitTestColumns):
2633         (WebCore::RenderBlock::positionForCoordinates):
2634         (WebCore::RenderBlock::availableWidth):
2635         (WebCore::RenderBlock::calcColumnWidth):
2636         (WebCore::RenderBlock::layoutColumns):
2637         (WebCore::RenderBlock::adjustPointToColumnContents):
2638         * rendering/RenderBlock.h:
2639         (WebCore::RenderBlock::hasColumns):
2640
2641 2007-01-10  Rob Buis  <buis@kde.org>
2642
2643         Reviewed by Eric.
2644
2645         http://bugs.webkit.org/show_bug.cgi?id=12201
2646         Fix image dragging issues with http://www.carto.net/papers/svg/gui/scrollbar/index.svg
2647
2648         Fix calculation of absolute transform so that viewport x,y
2649         translation is always done, also when viewBox is set.     
2650
2651         * rendering/RenderSVGContainer.cpp:
2652         (WebCore::RenderSVGContainer::paint):
2653         (WebCore::RenderSVGContainer::viewportTransform):
2654         (WebCore::RenderSVGContainer::absoluteTransform):
2655
2656 2007-01-10  David Hyatt  <hyatt@apple.com>
2657
2658         Rework positionForCoordinates to be more efficient and to handle multi-column content.  This entailed
2659         adding a new field to HitTestResult called localPoint that cached the mouse coordinate in the coordinate
2660         space of the renderer.
2661
2662         positionForCoordinates now takes local coordinates and so no longer needs to waste time recomputing
2663         absolute positions over and over again.
2664
2665         Reviewed by darin
2666
2667         * bridge/mac/WebCoreAXObject.mm:
2668         (-[WebCoreAXObject value]):
2669         (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
2670         (-[WebCoreAXObject doAXTextMarkerForPosition:]):
2671         * dom/Document.cpp:
2672         (WebCore::Document::prepareMouseEvent):
2673         * editing/SelectionController.cpp:
2674         (WebCore::SelectionController::contains):
2675         * editing/visible_units.cpp:
2676         (WebCore::previousLinePosition):
2677         (WebCore::nextLinePosition):
2678         * page/EventHandler.cpp:
2679         (WebCore::EventHandler::selectClosestWordFromMouseEvent):
2680         (WebCore::EventHandler::handleMousePressEventDoubleClick):
2681         (WebCore::EventHandler::handleMousePressEventTripleClick):
2682         (WebCore::EventHandler::handleMousePressEventSingleClick):
2683         (WebCore::EventHandler::handleMouseMoveEvent):
2684         (WebCore::EventHandler::handleMouseReleaseEvent):
2685         (WebCore::EventHandler::sendContextMenuEvent):
2686         * page/EventHandler.h:
2687         * page/MouseEventWithHitTestResults.cpp:
2688         (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
2689         * page/MouseEventWithHitTestResults.h:
2690         (WebCore::MouseEventWithHitTestResults::localPoint):
2691         * page/mac/WebCoreFrameBridge.mm:
2692         (-[WebCoreFrameBridge _visiblePositionForPoint:]):
2693         * rendering/EllipsisBox.cpp:
2694         (WebCore::EllipsisBox::nodeAtPoint):
2695         * rendering/HitTestResult.h:
2696         (WebCore::HitTestResult::localPoint):
2697         (WebCore::HitTestResult::setLocalPoint):
2698         * rendering/InlineFlowBox.cpp:
2699         (WebCore::InlineFlowBox::nodeAtPoint):
2700         * rendering/InlineTextBox.cpp:
2701         (WebCore::InlineTextBox::nodeAtPoint):
2702         * rendering/RenderBlock.cpp:
2703         (WebCore::RenderBlock::nodeAtPoint):
2704         (WebCore::RenderBlock::hitTestContents):
2705         (WebCore::RenderBlock::positionForCoordinates):
2706         * rendering/RenderBox.cpp:
2707         (WebCore::RenderBox::nodeAtPoint):
2708         * rendering/RenderContainer.cpp:
2709         (WebCore::RenderContainer::positionForCoordinates):
2710         * rendering/RenderFlow.cpp:
2711         (WebCore::RenderFlow::hitTestLines):
2712         * rendering/RenderInline.cpp:
2713         (WebCore::RenderInline::positionForCoordinates):
2714         * rendering/RenderLayer.cpp:
2715         (WebCore::RenderLayer::autoscroll):
2716         (WebCore::RenderLayer::hitTestLayer):
2717         * rendering/RenderObject.cpp:
2718         (WebCore::RenderObject::updateHitTestResult):
2719         * rendering/RenderObject.h:
2720         * rendering/RenderPath.cpp:
2721         (WebCore::RenderPath::nodeAtPoint):
2722         * rendering/RenderReplaced.cpp:
2723         (WebCore::RenderReplaced::positionForCoordinates):
2724         * rendering/RenderTableRow.cpp:
2725         (WebCore::RenderTableRow::nodeAtPoint):
2726         * rendering/RenderTableSection.cpp:
2727         (WebCore::RenderTableSection::nodeAtPoint):
2728         * rendering/RenderText.cpp:
2729         (WebCore::RenderText::positionForCoordinates):
2730         * rendering/RootInlineBox.cpp:
2731         (WebCore::RootInlineBox::nodeAtPoint):
2732         (WebCore::RootInlineBox::closestLeafChildForXPos):
2733         * rendering/RootInlineBox.h:
2734
2735 2007-01-11  George Staikos  <staikos@kde.org>
2736
2737         Reviewed by Maciej.
2738
2739         Fix Qt Build.
2740
2741         * loader/qt/DocumentLoaderQt.cpp:
2742         (WebCore::DocumentLoader::getResponseModifiedHeader):
2743
2744 2007-01-10  Kirby White  <KWhiteRight@gmail.com>
2745
2746         Reviewed by Darin.
2747
2748         Fixes for http://bugs.webkit.org/show_bug.cgi?id=11841
2749
2750         Set image size to fit alt text when image or input-image element
2751         has no src attribute, so that those images show their alt text instead
2752         of showing nothing at all.
2753
2754         * html/HTMLImageElement.cpp:
2755         (WebCore::HTMLImageElement::attach):
2756         * html/HTMLInputElement.cpp:
2757         (WebCore::HTMLInputElement::attach):
2758         * rendering/RenderImage.cpp:
2759         (WebCore::RenderImage::setImageSizeForAltText):
2760         (WebCore::RenderImage::imageChanged):
2761         * rendering/RenderImage.h:
2762
2763 2007-01-11  Mark Rowe  <mrowe@apple.com>
2764
2765         Build fix.
2766
2767         * rendering/RenderView.cpp:
2768         (WebCore::RenderView::printing):
2769
2770 2007-01-10  Mitz Pettel  <mitz@webkit.org>
2771
2772         Reviewed by Darin.
2773
2774         - fix http://bugs.webkit.org/show_bug.cgi?id=9284
2775           Quirksmode (CSS1): Removing inline border styles is impossible
2776
2777         Test: fast/css/remove-shorthand.html
2778
2779         * css/CSSMutableStyleDeclaration.cpp:
2780         (WebCore::PropertyLonghand::PropertyLonghand): Added this structure
2781         containing a pointer to an array if properties and the array's length.
2782         (WebCore::PropertyLonghand::properties):
2783         (WebCore::PropertyLonghand::length):
2784         (WebCore::initShorthandMap): Initialize the mapping from shorthand
2785         properties to their dependent properties.
2786         (WebCore::CSSMutableStyleDeclaration::removeProperty): Changed to check
2787         if the property being removed is a shorthand, and if so, to remove all
2788         of its dependent properties.
2789         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet): Added a
2790         'notifyChanged' boolean parameter which controls whether this method
2791         calls setChanged() if it actually removes any property.
2792         * css/CSSMutableStyleDeclaration.h:
2793
2794 2007-01-10  Steve Falkenburg  <sfalken@apple.com>
2795
2796         Reviewed by Kevin.
2797
2798         Removed unnecessary printing state
2799
2800         * page/FrameView.cpp:
2801         (WebCore::FrameView::layout):
2802         * page/mac/WebCoreFrameBridge.mm:
2803         (-[WebCoreFrameBridge forceLayoutAdjustingViewSize:]):
2804         (-[WebCoreFrameBridge forceLayoutWithMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):
2805         (-[WebCoreFrameBridge drawRect:]):
2806         (-[WebCoreFrameBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]):
2807         (-[WebCoreFrameBridge adjustPageHeightNew:top:bottom:limit:]):
2808         * rendering/RenderLayer.cpp:
2809         (WebCore::RenderLayer::updateLayerPositions):
2810         * rendering/RenderObject.cpp:
2811         (WebCore::RenderObject::repaint):
2812         (WebCore::RenderObject::repaintRectangle):
2813         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
2814         * rendering/RenderView.cpp:
2815         (WebCore::RenderView::RenderView):
2816         (WebCore::RenderView::calcHeight):
2817         (WebCore::RenderView::calcWidth):
2818         (WebCore::RenderView::layout):
2819         (WebCore::RenderView::paint):
2820         (WebCore::RenderView::repaintViewRectangle):
2821         (WebCore::RenderView::computeAbsoluteRepaintRect):
2822         (WebCore::RenderView::printing):
2823         (WebCore::RenderView::viewRect):
2824         (WebCore::RenderView::docHeight):
2825         (WebCore::RenderView::docWidth):
2826         * rendering/RenderView.h:
2827         * rendering/RenderWidget.cpp:
2828         (WebCore::RenderWidget::updateWidgetPosition):
2829         * rendering/bidi.cpp:
2830         (WebCore::RenderBlock::layoutInlineChildren):
2831
2832 2007-01-10  Anders Carlsson  <acarlsson@apple.com>
2833
2834         Reviewed by Maciej.
2835
2836         Get the Refresh header directly from the ResourceResponse.
2837         
2838         * loader/DocumentLoader.h:
2839         * loader/FrameLoader.cpp:
2840         (WebCore::FrameLoader::commitProvisionalLoad):
2841         * loader/mac/DocumentLoaderMac.mm:
2842         (WebCore::DocumentLoader::getResponseModifiedHeader):
2843
2844 2007-01-10  Beth Dakin  <bdakin@apple.com>
2845
2846         Reviewed by John.
2847
2848         Fix for <rdar://problem/4914258> REGRESSION: Search in Google now 
2849         operates on the current WebView instead of invoking Safari's 
2850         service
2851
2852         * page/ContextMenuClient.h: New call to the client to search in 
2853         google.
2854         * page/ContextMenuController.cpp:
2855         (WebCore::ContextMenuController::contextMenuItemSelected): Call 
2856         into the client instead of forming a new url string and loading it.
2857         * platform/graphics/svg/SVGImageEmptyClients.h:
2858         (WebCore::SVGEmptyContextMenuClient::searchWithGoogle): New call.
2859
2860 2007-01-10  Adam Roben  <aroben@apple.com>
2861
2862         Rubberstamped by Darin.
2863
2864         * page/ContextMenuController.cpp:
2865         (WebCore::ContextMenuController::contextMenuItemSelected): Pass 0
2866         instead of an empty Event to FrameLoader::load and
2867         FrameLoader::urlSelected.
2868
2869 2007-01-10  Anders Carlsson  <acarlsson@apple.com>
2870
2871         * loader/ResourceLoader.cpp:
2872         (WebCore::ResourceLoader::~ResourceLoader):
2873         Disable assertion (I forgot to do this even though I added the comment!)
2874
2875 2007-01-10  Ross Burton  <ross@burtonini.com>
2876
2877         Reviewed and landed by Anders.
2878
2879         Fix case in vcproj file (the GTK+ port uses the vcproj file).
2880
2881         * WebCore.vcproj/WebCore/WebCore.vcproj:
2882
2883 2007-01-10  Lars Knoll  <lars@trolltech.com>
2884
2885         Make the Qt build compile again after 
2886         the ResourceLoader was made platform
2887         independent. 
2888
2889         * WebCore.pro:
2890         * loader/FrameLoader.cpp:
2891         (WebCore::FrameLoader::didFirstLayout):
2892         * loader/qt/FrameLoaderQt.cpp:
2893         * loader/qt/MainResourceLoaderQt.cpp: Removed.
2894         * loader/qt/ResourceLoaderQt.cpp: Removed.
2895         * page/qt/FrameQtClient.cpp:
2896         (WebCore::FrameQtClient::openURL):
2897         * platform/network/qt/ResourceHandleQt.cpp:
2898         (WebCore::ResourceHandle::setDefersLoading):
2899
2900 2007-01-10  Anders Carlsson  <acarlsson@apple.com>
2901
2902         Rubber-stamped by Maciej.
2903         
2904         Move most of ResourceLoader and MainResourceLoader into the platform-independent files.
2905         
2906         * WebCore.xcodeproj/project.pbxproj:
2907         * loader/FrameLoader.cpp:
2908         (WebCore::FrameLoader::didFinishLoad):
2909         * loader/MainResourceLoader.cpp:
2910         (WebCore::MainResourceLoader::MainResourceLoader):
2911         (WebCore::MainResourceLoader::~MainResourceLoader):
2912         (WebCore::MainResourceLoader::create):
2913         (WebCore::MainResourceLoader::receivedError):
2914         (WebCore::MainResourceLoader::didCancel):
2915         (WebCore::MainResourceLoader::interruptionForPolicyChangeError):
2916         (WebCore::MainResourceLoader::stopLoadingForPolicyChange):
2917         (WebCore::MainResourceLoader::callContinueAfterNavigationPolicy):
2918         (WebCore::MainResourceLoader::continueAfterNavigationPolicy):
2919         (WebCore::MainResourceLoader::isPostOrRedirectAfterPost):
2920         (WebCore::MainResourceLoader::addData):
2921         (WebCore::MainResourceLoader::willSendRequest):
2922         (WebCore::shouldLoadAsEmptyDocument):
2923         (WebCore::MainResourceLoader::continueAfterContentPolicy):
2924         (WebCore::MainResourceLoader::callContinueAfterContentPolicy):
2925         (WebCore::MainResourceLoader::didReceiveResponse):
2926         (WebCore::MainResourceLoader::didReceiveData):
2927         (WebCore::MainResourceLoader::didFinishLoading):
2928         (WebCore::MainResourceLoader::didFail):
2929         (WebCore::MainResourceLoader::loadNow):
2930         (WebCore::MainResourceLoader::load):
2931         (WebCore::MainResourceLoader::setDefersLoading):
2932         * loader/MainResourceLoader.h:
2933         * loader/ResourceLoader.cpp:
2934         (WebCore::ResourceLoader::ResourceLoader):
2935         (WebCore::ResourceLoader::~ResourceLoader):
2936         (WebCore::ResourceLoader::releaseResources):
2937         (WebCore::ResourceLoader::load):
2938         (WebCore::ResourceLoader::setDefersLoading):
2939         (WebCore::ResourceLoader::frameLoader):
2940         (WebCore::ResourceLoader::addData):
2941         (WebCore::ResourceLoader::clearResourceData):
2942         (WebCore::ResourceLoader::willSendRequest):
2943         (WebCore::ResourceLoader::didReceiveResponse):
2944         (WebCore::ResourceLoader::didReceiveData):
2945         (WebCore::ResourceLoader::willStopBufferingData):
2946         (WebCore::ResourceLoader::didFinishLoading):
2947         (WebCore::ResourceLoader::didFinishLoadingOnePart):
2948         (WebCore::ResourceLoader::didFail):
2949         (WebCore::ResourceLoader::didCancel):
2950         (WebCore::ResourceLoader::cancel):
2951         (WebCore::ResourceLoader::response):
2952         (WebCore::ResourceLoader::cancelledError):
2953         * loader/ResourceLoader.h:
2954         (WebCore::ResourceLoader::willStopBufferingData):
2955         (WebCore::ResourceLoader::setRequest):
2956         * loader/mac/FrameLoaderMac.mm:
2957         * loader/mac/MainResourceLoaderMac.mm: Removed.
2958         * loader/mac/ResourceLoaderMac.mm:
2959
2960 2007-01-10  Lars Knoll <lars@trolltech.com>
2961
2962         Move files to the correct location,
2963         and remove a few unused methods from 
2964         LoaderFunctionsQt.cpp
2965
2966         * WebCore.pro:
2967         * loader/qt/LoaderFunctionsQt.cpp: Added.
2968         (WebCore::CheckCacheObjectStatus):
2969         * page/qt/FrameQt.cpp: Added.
2970         (WebCore::doScroll):
2971         (WebCore::FrameQt::FrameQt):
2972         (WebCore::FrameQt::~FrameQt):
2973         (WebCore::FrameQt::passMouseDownEventToWidget):
2974         (WebCore::FrameQt::isLoadTypeReload):
2975         (WebCore::FrameQt::markedTextRange):
2976         (WebCore::FrameQt::mimeTypeForFileName):
2977         (WebCore::FrameQt::unfocusWindow):
2978         (WebCore::FrameQt::focusWindow):
2979         (WebCore::FrameQt::getEmbedInstanceForWidget):
2980         (WebCore::FrameQt::getObjectInstanceForWidget):
2981         (WebCore::FrameQt::getAppletInstanceForWidget):
2982         (WebCore::FrameQt::issueCutCommand):
2983         (WebCore::FrameQt::issueCopyCommand):
2984         (WebCore::FrameQt::issuePasteCommand):
2985         (WebCore::FrameQt::issuePasteAndMatchStyleCommand):
2986         (WebCore::FrameQt::issueTransposeCommand):
2987         (WebCore::FrameQt::respondToChangedSelection):
2988         (WebCore::FrameQt::shouldChangeSelection):
2989         (WebCore::FrameQt::print):
2990         (WebCore::FrameQt::shouldInterruptJavaScript):
2991         (WebCore::FrameQt::keyEvent):
2992         (WebCore::FrameQt::setFrameGeometry):
2993         (WebCore::FrameQt::client):
2994         (WebCore::FrameQt::createNewWindow):
2995         (WebCore::FrameQt::goBackOrForward):
2996         (WebCore::FrameQt::historyURL):
2997         (WebCore::FrameQt::runJavaScriptAlert):
2998         (WebCore::FrameQt::runJavaScriptConfirm):
2999         (WebCore::FrameQt::runJavaScriptPrompt):
3000         (WebCore::FrameQt::bindingRootObject):
3001         (WebCore::FrameQt::addPluginRootObject):
3002         * page/qt/FrameQt.h: Added.
3003         (WebCore::QtFrame):
3004         * page/qt/FrameQtClient.cpp: Added.
3005         (WebCore::FrameQtClient::FrameQtClient):
3006         (WebCore::FrameQtClient::~FrameQtClient):
3007         (WebCore::FrameQtClient::setFrame):
3008         (WebCore::FrameQtClient::openURL):
3009         (WebCore::FrameQtClient::submitForm):
3010         (WebCore::FrameQtClient::didReceiveResponse):
3011         (WebCore::FrameQtClient::didFinishLoading):
3012         (WebCore::FrameQtClient::didFail):
3013         (WebCore::FrameQtClient::didReceiveData):
3014         (WebCore::FrameQtClient::traverseNextFrameStayWithin):
3015         (WebCore::numRequests):
3016         (WebCore::FrameQtClient::numPendingOrLoadingRequests):
3017         * page/qt/FrameQtClient.h: Added.
3018         * platform/qt/FrameQt.cpp: Removed.
3019         * platform/qt/FrameQt.h: Removed.
3020         * platform/qt/FrameQtClient.cpp: Removed.
3021         * platform/qt/FrameQtClient.h: Removed.
3022         * platform/qt/LoaderFunctionsQt.cpp: Removed.
3023
3024 2007-01-10  Adam Roben  <aroben@apple.com>
3025
3026         Reviewed by Geoff.
3027
3028         Fix: <rdar://problem/4917054> ContextMenuController leaks Events
3029
3030         No layout tests possible.
3031
3032         * page/ContextMenuController.cpp:
3033         (WebCore::ContextMenuController::contextMenuItemSelected): Use RefPtr
3034         to manage the lifetime of Shared objects.
3035
3036 2007-01-10  Rob Buis  <buis@kde.org>
3037
3038         Reviewed by Sam.
3039
3040         http://bugs.webkit.org/show_bug.cgi?id=12196
3041         SVGPatternElement should not be locatable
3042
3043         Replace SVGStyledLocatableElement derivation with
3044         SVGStyledElement.
3045
3046         * ksvg2/svg/SVGPatternElement.cpp:
3047         (WebCore::SVGPatternElement::SVGPatternElement):
3048         * ksvg2/svg/SVGPatternElement.h:
3049
3050 2007-01-10  Nikolas Zimmermann  <zimmermann@kde.org>
3051
3052         Build fix, not reviewed.
3053
3054         * rendering/RenderSVGText.cpp: Use correct method name.
3055         (WebCore::RenderSVGText::relativeBBox):
3056
3057 2007-01-10  Nikolas Zimmermann  <zimmermann@kde.org>
3058
3059         Reviewed by Eric.
3060
3061         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10262 (SVG fails to redraw top 20 pixels)
3062         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10263 (SVG seems to repaint way too many times during load)
3063         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10404 (Invalidation issues with text skew)
3064         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10407 (bad SVG text invalidation issues on mouseover/mouseout)
3065         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10806 (failing manual-tests/svg-repaint-group.svg)
3066         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10913 (SVG charts from plotkit fail to render unless you scroll them offscreen)
3067         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10964 (inclusion of svg into svg leave a ghost invisible rectangle)
3068         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11680 (DojoKit SVG test chart fails to render (clipping issue?))
3069         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11883 (SVG Text has updating/repainting issues)
3070         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11907 (RenderSVGContainer does not mark itself for repaint after setting viewBox, slice or align) 
3071         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11913 (Invalidation issues in SVG javascript-based animation example)
3072         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11979 (SVG text does not respect font-size scaling in bbox calculation)
3073         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11984 (SVG <text> does not calculate the correct absoluteRepaintRect)
3074         Partly fixes: http://bugs.webkit.org/show_bug.cgi?id=10745 (SVG layout needs to move out of DOM and into rendering tree during layout() call)
3075
3076         Fixes text redrawing issues seen in svg/carto.net (when actually playing with those files, manually)
3077         Fixes svg/carto.net/window.svg (moving "Navigation Window" caused artefacts)
3078         Fixes svg/W3C-SVG-1.1/types-basicDOM-01-b.svg (bbox calculations had one pixel offset)
3079
3080         Large SVG dynamic update rework/optimization. Also fixes SVG printing.
3081
3082         Rename updateCanvasItem() to rebuildRenderer(), as this is what it really does.
3083
3084         Do NOT call rebuildRenderer() in notifyAttributeChange() anymore,
3085         but override notifyAttributeChange() in SVGPathElement/SVGCircleElement/etc..
3086         (as only primitives using RenderPath as rendering object need this logic!)
3087
3088         This should clarify what really happens, as discussed with Eric.
3089
3090         Remove the invocations of notifyAttributeChange() in SVGLength. It's already
3091         handled by the JS bindings, and we do double updating work. Fixed.
3092
3093         Because SVG dynamic updates have been flaky in the past, there was a hack introduced
3094         in RenderPath causing the updateCanvasItem() function to be called _on every layout_ (!!!).
3095         Finally this hack is gone. Offer RenderSVGContainer::absoluteRects() function to be able
3096         to use WebInspector for <g> elements (very handy!).
3097
3098         Remove the unneeded "m_updateVectorial" bool from SVGStyledElement.
3099         Remove computeAbsoluteRepaintRect() from RenderSVGContainer/RenderSVGImage/RenderSVGText,
3100         as dicussed with David (we only need to reimplement getAbsoluteRepaintRect there).
3101
3102         Make RenderSVGText::absoluteRects just use the getAbsoluteRepaintRect() function, instead of
3103         code duplication. Remove unneeded RenderSVGImage::layout() function (RenderImage does the same).
3104
3105         Add new function SVGStyledElement::renderStyleForElement, which centralizes the manual style
3106         resolving needed for gradient stops.
3107
3108         * ksvg2/svg/SVGCircleElement.cpp:
3109         (WebCore::SVGCircleElement::notifyAttributeChange):
3110         (WebCore::SVGCircleElement::hasRelativeValues):
3111         * ksvg2/svg/SVGCircleElement.h:
3112         * ksvg2/svg/SVGEllipseElement.cpp:
3113         (WebCore::SVGEllipseElement::notifyAttributeChange):
3114         (WebCore::SVGEllipseElement::hasRelativeValues):
3115         * ksvg2/svg/SVGEllipseElement.h:
3116         * ksvg2/svg/SVGImageElement.cpp:
3117         (WebCore::SVGImageElement::notifyAttributeChange):
3118         * ksvg2/svg/SVGImageElement.h:
3119         * ksvg2/svg/SVGLength.cpp:
3120         (WebCore::SVGLength::setValue):
3121         (WebCore::SVGLength::setValueInSpecifiedUnits):
3122         * ksvg2/svg/SVGLength.h:
3123         (WebCore::SVGLength::isRelative):
3124         * ksvg2/svg/SVGLineElement.cpp:
3125         (WebCore::SVGLineElement::notifyAttributeChange):
3126         (WebCore::SVGLineElement::hasRelativeValues):
3127         * ksvg2/svg/SVGLineElement.h:
3128         * ksvg2/svg/SVGLocatable.cpp:
3129         (WebCore::SVGLocatable::getBBox):
3130         * ksvg2/svg/SVGPathElement.cpp:
3131         (WebCore::SVGPathElement::notifyAttributeChange):
3132         * ksvg2/svg/SVGPathElement.h:
3133         * ksvg2/svg/SVGPolyElement.cpp:
3134         (WebCore::SVGPolyElement::notifyAttributeChange):
3135         * ksvg2/svg/SVGPolyElement.h:
3136         (WebCore::SVGPolyElement::rendererIsNeeded):
3137         * ksvg2/svg/SVGRectElement.cpp:
3138         (WebCore::SVGRectElement::notifyAttributeChange):
3139         (WebCore::SVGRectElement::hasRelativeValues):
3140         * ksvg2/svg/SVGRectElement.h:
3141         * ksvg2/svg/SVGSVGElement.cpp:
3142         (WebCore::SVGSVGElement::hasRelativeValues):
3143         * ksvg2/svg/SVGSVGElement.h:
3144         * ksvg2/svg/SVGStyledElement.cpp:
3145         (WebCore::SVGStyledElement::SVGStyledElement):
3146         (WebCore::SVGStyledElement::createRenderer):
3147         (WebCore::SVGStyledElement::notifyAttributeChange):
3148         (WebCore::SVGStyledElement::rebuildRenderer):
3149         * ksvg2/svg/SVGStyledElement.h:
3150         (WebCore::SVGStyledElement::hasRelativeValues):
3151         * rendering/RenderPath.cpp:
3152         (WebCore::RenderPath::setLocalTransform):
3153         (WebCore::RenderPath::fillContains):
3154         (WebCore::RenderPath::relativeBBox):
3155         (WebCore::RenderPath::layout):
3156         (WebCore::RenderPath::getAbsoluteRepaintRect):
3157         (WebCore::RenderPath::paint):
3158         (WebCore::RenderPath::nodeAtPoint):
3159         (WebCore::drawMarkerWithData):
3160         (WebCore::updateMarkerDataForElement):
3161         (WebCore::drawStartAndMidMarkers):
3162         (WebCore::RenderPath::drawMarkersIfNeeded):
3163         (WebCore::RenderPath::hasRelativeValues):
3164         * rendering/RenderPath.h:
3165         * rendering/RenderSVGContainer.cpp:
3166         (WebCore::RenderSVGContainer::layout):
3167         (WebCore::RenderSVGContainer::paint):
3168         (WebCore::RenderSVGContainer::calcViewport):
3169         (WebCore::RenderSVGContainer::setViewBox):
3170         (WebCore::RenderSVGContainer::setAlign):
3171         (WebCore::RenderSVGContainer::viewportTransform):
3172         (WebCore::RenderSVGContainer::getAbsoluteRepaintRect):
3173         (WebCore::RenderSVGContainer::absoluteRects):
3174         (WebCore::RenderSVGContainer::fillContains):
3175         (WebCore::RenderSVGContainer::strokeContains):
3176         (WebCore::RenderSVGContainer::relativeBBox):
3177         (WebCore::RenderSVGContainer::setSlice):
3178         * rendering/RenderSVGContainer.h:
3179         * rendering/RenderSVGImage.cpp:
3180         (WebCore::RenderSVGImage::RenderSVGImage):
3181         (WebCore::RenderSVGImage::adjustRectsForAspectRatio):
3182         (WebCore::RenderSVGImage::relativeBBox):
3183         (WebCore::RenderSVGImage::imageChanged):
3184         (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
3185         (WebCore::RenderSVGImage::absoluteRects):
3186         * rendering/RenderSVGImage.h:
3187         * rendering/RenderSVGText.cpp:
3188         (WebCore::RenderSVGText::getAbsoluteRepaintRect):
3189         (WebCore::RenderSVGText::layout):
3190         (WebCore::RenderSVGText::createInlineBox):
3191         (WebCore::RenderSVGText::absoluteRects):
3192         (WebCore::RenderSVGText::relativeBBox):
3193         * rendering/RenderSVGText.h:
3194         * rendering/SVGInlineFlowBox.cpp:
3195         (WebCore::placePositionedBoxesHorizontally):
3196
3197 2007-01-10  David Hyatt  <hyatt@apple.com>
3198
3199         Make the selectionRect() method of RenderText better by reusing computeAbsoluteRepaintRect.  This enables
3200         the method to be multi-column aware and also to understand when the selection is clipped out by overflow.
3201
3202         Reviewed by bdash
3203
3204         * rendering/RenderText.cpp:
3205         (WebCore::RenderText::selectionRect):
3206
3207 2007-01-10  David Hyatt  <hyatt@apple.com>
3208
3209         Make the absolutePosition method multi-column aware.  Note that there is now a real problem with the
3210         absoluteRects method, since an object can split across multiple columns and break into multiple rects.
3211         absolutePosition just returns the top-left corner of the element's box in the first column in which it
3212         appears.
3213
3214         Reviewed by bdash
3215
3216         * rendering/RenderBlock.cpp:
3217         (WebCore::RenderBlock::adjustRectForColumns):
3218         * rendering/RenderBlock.h:
3219         * rendering/RenderBox.cpp:
3220         (WebCore::RenderBox::absolutePosition):
3221         (WebCore::RenderBox::computeAbsoluteRepaintRect):
3222         * rendering/RenderFlow.cpp:
3223         (WebCore::RenderFlow::getAbsoluteRepaintRect):
3224
3225 2007-01-09  David Hyatt  <hyatt@apple.com>
3226
3227         Avoid crashing when repainting multiple columns... make sure to use the current vector's size and
3228         not the newly-computed column count.
3229
3230         * rendering/RenderBlock.cpp:
3231         (WebCore::RenderBlock::layoutColumns):
3232         (WebCore::RenderBlock::adjustRepaintRectForColumns):
3233
3234 2007-01-09  David Hyatt  <hyatt@apple.com>
3235
3236         Break up painting and hit testing of children into helper methods and add multi-column versions for both.
3237         
3238         Make incremental repainting able to invalidate the right spot in multiple column layouts so that e.g., link
3239         hover works.
3240
3241         Turn off selection gap filling in columns for now until it can be made to work correctly.
3242
3243         Improve the column balancing heuristic by adding in the block's lineHeight/2 to each column initially to
3244         account for column break adjustments that shrink the columns slightly.  Avoid clipping of the last column's
3245         contents by ensuring it gets all the remaining available height.
3246
3247         Reviewed by mitz
3248
3249         * rendering/RenderBlock.cpp:
3250         (WebCore::RenderBlock::paintColumns):
3251         (WebCore::RenderBlock::paintContents):
3252         (WebCore::RenderBlock::paintObject):
3253         (WebCore::RenderBlock::fillSelectionGaps):
3254         (WebCore::RenderBlock::nodeAtPoint):
3255         (WebCore::RenderBlock::hitTestColumns):
3256         (WebCore::RenderBlock::layoutColumns):
3257         (WebCore::RenderBlock::adjustRepaintRectForColumns):
3258         * rendering/RenderBlock.h:
3259         * rendering/RenderBox.cpp:
3260         (WebCore::RenderBox::computeAbsoluteRepaintRect):
3261         * rendering/RenderFlow.cpp:
3262         (WebCore::RenderFlow::getAbsoluteRepaintRect):
3263
3264 2007-01-09  Remi Zara  <remi_zara@mac.com>
3265
3266         Reviewed by Darin and Eric.
3267
3268         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12150
3269
3270         Don't use memset to set float to 0
3271
3272         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
3273         (WebCore::cgGradientCallback):
3274
3275 2007-01-09  Anders Carlsson  <acarlsson@apple.com>
3276
3277         Reviewed by Brady.
3278
3279         Add default constructor to SharedBuffer.
3280
3281         * platform/SharedBuffer.cpp:
3282         (WebCore::SharedBuffer::SharedBuffer):
3283         * platform/SharedBuffer.h:
3284
3285 2007-01-09  David Hyatt  <hyatt@apple.com>
3286
3287         This patch gets rudimentary column layout working.  Normal flow content only gets laid out into
3288         columns properly and painted correctly initially.  What doesn't work: hit testing, incremental repainting,
3289         column rule painting, child layers.
3290
3291         Some work needs to be done on the render tree dumper before column tests will be
3292         meaningful.
3293
3294         Also reworked overflow and fixed a bunch of bugs with the computation of overflow.  These include an error
3295         in the height calculations caused by not adding in the horizontal scrollbar height and other errors caused
3296         by not checking overflow in lowest/rightmostPosition.  Existing tests improve their rendering to match
3297         Firefox with this change.
3298
3299         Fixed a bug where a table cell incorrectly expanded to encompass floats inside an overflow:auto block.
3300         This should not have happened.  Covered by new test fast/overflow/table-overflow-float.html.
3301
3302         Reviewed by mitz
3303
3304         * page/Frame.cpp:
3305         * rendering/RenderBlock.cpp:
3306         (WebCore:::RenderFlow):
3307         (WebCore::RenderBlock::layoutBlock):
3308         (WebCore::RenderBlock::paintContents):
3309         (WebCore::RenderBlock::paintChildren):
3310         (WebCore::RenderBlock::paintObject):
3311         (WebCore::RenderBlock::lowestPosition):
3312         (WebCore::RenderBlock::rightmostPosition):
3313         (WebCore::RenderBlock::leftmostPosition):
3314         (WebCore::RenderBlock::avoidsFloats):
3315         (WebCore::RenderBlock::nodeAtPoint):
3316         (WebCore::RenderBlock::hitTestContents):
3317         (WebCore::RenderBlock::layoutColumns):
3318         * rendering/RenderBlock.h:
3319         (WebCore::RenderBlock::hasOverhangingFloats):
3320         (WebCore::RenderBlock::hasColumns):
3321         * rendering/RenderFlexibleBox.cpp:
3322         (WebCore::RenderFlexibleBox::layoutBlock):
3323         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
3324         (WebCore::RenderFlexibleBox::layoutVerticalBox):
3325         * rendering/RenderFlow.cpp:
3326         (WebCore::RenderFlow::paintLines):
3327         (WebCore::RenderFlow::lowestPosition):
3328         (WebCore::RenderFlow::rightmostPosition):
3329         (WebCore::RenderFlow::leftmostPosition):
3330         * rendering/RenderFlow.h:
3331         (WebCore::RenderFlow::hasColumns):
3332         * rendering/RenderListMarker.cpp:
3333         (WebCore::RenderListMarker::paint):
3334         * rendering/RenderObject.h:
3335         (WebCore::RenderObject::expandsToEncloseOverflow):
3336         * rendering/RenderTableCell.h:
3337         (WebCore::RenderTableCell::expandsToEncloseOverflow):
3338         * rendering/RenderView.cpp:
3339         (WebCore::RenderView::paint):
3340
3341 2007-01-09  Darin Adler  <darin@apple.com>
3342
3343         - update all 2007 Apple copyrights for the new company name
3344
3345         * css/cssstyleselector.cpp:
3346         * html/HTMLLIElement.cpp:
3347         * platform/CharacterNames.h:
3348         * platform/TextBreakIterator.h:
3349         * platform/TextBreakIteratorICU.cpp:
3350         * platform/graphics/ImageBuffer.h:
3351         * rendering/CounterNode.cpp:
3352         * rendering/CounterNode.h:
3353         * rendering/RenderBox.h:
3354         * rendering/RenderContainer.cpp:
3355         * rendering/RenderCounter.cpp:
3356         * rendering/RenderCounter.h:
3357         * rendering/RenderImage.h:
3358         * rendering/RenderListItem.h:
3359         * rendering/RenderListMarker.h:
3360         * rendering/RenderObject.cpp:
3361         * rendering/RenderObject.h:
3362         * rendering/RenderStyle.cpp:
3363         * rendering/RenderStyle.h:
3364         * rendering/RenderTable.cpp:
3365         * rendering/RenderTableCell.cpp:
3366         * rendering/RenderTableCell.h:
3367         * rendering/RenderText.cpp:
3368         * rendering/RenderText.h:
3369         * rendering/RenderTreeAsText.cpp:
3370         * rendering/SVGRenderTreeAsText.cpp:
3371         * rendering/break_lines.cpp:
3372
3373 2007-01-09  Justin Garcia  <justin.garcia@apple.com>
3374
3375         Reviewed by john
3376
3377         <rdar://problem/4840662>
3378         REGRESSION: Mail crash when dragging text into a link
3379         
3380         moveParagraphs fails to move content into a display:block 
3381         anchor because of code in positionAvoidingSpecialElementBoundary,
3382         and so it infinitely recurs.
3383         
3384         * editing/htmlediting.cpp:
3385         (WebCore::positionAvoidingSpecialElementBoundary): Don't avoid anchors
3386         that have display:block so that content is inserted in the expected
3387         paragraph.  This fixes the bug and weird behavior when typing before/after
3388         anchors with display:block.
3389
3390 2007-01-09  Rob Buis  <buis@kde.org>
3391
3392         Reviewed by Darin.
3393
3394         http://bugs.webkit.org/show_bug.cgi?id=12145
3395         Color parsing is too relaxed in strict mode
3396         http://bugs.webkit.org/show_bug.cgi?id=12166
3397         REGRESSION (r18480): "336633" is not parsed as a color
3398
3399         Fix a regression by using String::format return value.
3400         Also make strict mode more strict for cases where hexcolors
3401         lack a #.
3402
3403         * css/cssparser.cpp:
3404         (WebCore::CSSParser::parseColor):
3405         (WebCore::CSSParser::parseColorFromValue):
3406         * css/cssparser.h:
3407
3408 2007-01-09  Darin Adler  <darin@apple.com>
3409
3410         Reviewed by Maciej.
3411
3412         - fixed regression where redirects did not have user-agent any more
3413
3414         Showed up as a failure in one of the http tests, so no new test needed.
3415
3416         * loader/mac/ResourceLoaderMac.mm: (WebCore::ResourceLoader::willSendRequest):
3417         Don't use a copy of the ResourceRequest; pass the original so it can be modified.
3418
3419 2007-01-09  Mitz Pettel  <mitz@webkit.org>
3420
3421         Reviewed by Darin.
3422
3423         - fix http://bugs.webkit.org/show_bug.cgi?id=11078
3424           Forms Don't Submit (ASP Pages)
3425
3426         Test: fast/dom/collection-namedItem-via-item.html
3427
3428         * bindings/js/kjs_html.cpp:
3429         (KJS::JSHTMLCollectionProtoFunc::callAsFunction): Changed item() to fall back
3430         to namedItem() if its argument does not convert to a number.
3431
3432 2007-01-09  Darin Adler  <darin@apple.com>
3433
3434         Reviewed by Maciej.
3435
3436         - fix http://bugs.webkit.org/show_bug.cgi?id=12174
3437           improve Unicode use (less WTF::Unicode:: prefix, centralized character names)
3438
3439         - got rid of namespace prefixes from most uses of WTF::Unicode
3440
3441         - updated for removal of WTF::Unicode::memcmp
3442         - updated for renaming of WTF::Unicode::strcasecmp to umemcasecmp.
3443
3444         - unified constants for special Unicode characters in a new
3445           CharacterNames.h header
3446
3447         * WebCore.xcodeproj/project.pbxproj:
3448         * css/cssparser.cpp:
3449         (WebCore::ParseString::lower):
3450         * dom/Document.cpp:
3451         (WebCore::isValidNameStart):
3452         (WebCore::isValidNamePart):
3453         * dom/Position.cpp:
3454         (WebCore::Position::leadingWhitespacePosition):
3455         (WebCore::Position::trailingWhitespacePosition):
3456         * editing/CompositeEditCommand.cpp:
3457         (WebCore::isWhitespace):
3458         * editing/HTMLInterchange.cpp:
3459         * editing/TextIterator.cpp:
3460         (WebCore::CircularSearchBuffer::CircularSearchBuffer):
3461         (WebCore::CircularSearchBuffer::append):
3462         * editing/htmlediting.cpp:
3463         (WebCore::stringWithRebalancedWhitespace):
3464         (WebCore::nonBreakingSpaceString):
3465         * editing/htmlediting.h:
3466         * html/HTMLFontElement.cpp:
3467         (WebCore::parseFontSizeNumber):
3468         * html/HTMLParser.cpp:
3469         (WebCore::HTMLParser::handleError):
3470         * html/HTMLSelectElement.cpp:
3471         (WebCore::stripLeadingWhiteSpace):
3472         * platform/Font.cpp:
3473         (WebCore::WidthIterator::advance):
3474         (WebCore::WidthIterator::normalizeVoicingMarks):
3475         * platform/GlyphMap.cpp:
3476         (WebCore::GlyphMap::locatePage):
3477         * platform/MimeTypeRegistry.h:
3478         * platform/StringHash.h:
3479         * platform/StringImpl.cpp:
3480         (WebCore::isSpace):
3481         (WebCore::StringImpl::append):
3482         (WebCore::StringImpl::insert):
3483         (WebCore::StringImpl::truncate):
3484         (WebCore::StringImpl::remove):
3485         (WebCore::parseLength):
3486         (WebCore::StringImpl::isLower):
3487         (WebCore::StringImpl::lower):
3488         (WebCore::StringImpl::upper):
3489         (WebCore::StringImpl::secure):
3490         (WebCore::StringImpl::foldCase):
3491         (WebCore::StringImpl::capitalize):t
3492         (WebCore::StringImpl::toInt):
3493         (WebCore::equalIgnoringCase):
3494         (WebCore::StringImpl::find):
3495         * platform/TextBoundaries.h:
3496         * platform/TextCodec.h:
3497         * platform/TextCodecLatin1.cpp:
3498         * platform/TextEncoding.h:
3499         * platform/TextEncodingRegistry.h:
3500         * platform/mac/PasteboardMac.mm:
3501         (WebCore::Pasteboard::writeSelection):
3502         * platform/mac/TextCodecMac.cpp:
3503         (WebCore::TextCodecMac::decode):
3504         * rendering/RenderBlock.cpp:
3505         (WebCore::RenderBlock::updateFirstLetter):
3506         * rendering/RenderListMarker.cpp:
3507         (WebCore::listMarkerText):
3508         (WebCore::RenderListMarker::paint):
3509         * rendering/RenderText.cpp:
3510         (WebCore::RenderText::widthFromCache):
3511         (WebCore::isSpaceAccordingToStyle):
3512         (WebCore::RenderText::setInternalString):
3513         * rendering/RenderTreeAsText.cpp:
3514         (WebCore::quoteAndEscapeNonPrintables):
3515         (WebCore::operator<<):
3516         * rendering/bidi.cpp:
3517         (WebCore::BidiState::BidiState):
3518         (WebCore::BidiContext::BidiContext):
3519         (WebCore::bidiNext):
3520         (WebCore::bidiFirst):
3521         (WebCore::BidiIterator::direction):
3522         (WebCore::appendRun):
3523         (WebCore::embed):
3524         (WebCore::RenderBlock::bidiReorderLine):
3525         (WebCore::RenderBlock::layoutInlineChildren):
3526         (WebCore::skipNonBreakingSpace):
3527         (WebCore::RenderBlock::findNextLineBreak):
3528         * rendering/break_lines.cpp:
3529         (WebCore::nextBreakablePosition):
3530         * rendering/break_lines.h:
3531         * xml/XPathParser.cpp:
3532         (WebCore::XPath::charCat):
3533
3534 2007-01-09  Dex Deacon  <occupant4@gmail.com>
3535
3536         Reviewed by Darin.
3537
3538         - fix http://bugs.webkit.org/show_bug.cgi?id=12170
3539           RenderView holds dangling reference to RenderObjects as selection markers
3540
3541         This fixes the crash seen on Windows -- the underlying problem
3542         may still exist.
3543
3544         * rendering/RenderText.h:
3545         (WebCore::RenderText::selectionState):
3546         Change the m_selectionState enum-bitfield to an unsigned-bitfield,
3547         because enums on Windows are signed, which caused it to become
3548         negative (whereas the valid values are all positive).
3549
3550 2007-01-09  Darin Adler  <darin@apple.com>
3551
3552         Reviewed by Hyatt.
3553
3554         - http://bugs.webkit.org/show_bug.cgi?id=12175
3555           port break_lines.cpp to be platform independent
3556
3557         * platform/TextBreakIterator.h: Added lineBreakIterator.
3558         Removed ICU-specific stuff from the header.
3559
3560         * platform/TextBreakIteratorICU.cpp:
3561         (WebCore::setUpIterator): Added helper to be shared by the three different
3562         creation functions.
3563         (WebCore::characterBreakIterator): Changed to use setUpIterator.
3564         (WebCore::wordBreakIterator): Ditto.
3565         (WebCore::lineBreakIterator): Added.
3566
3567         * platform/qt/TextBreakIteratorQt.cpp:
3568         (WebCore::lineBreakIterator): Added a stub.
3569
3570         * rendering/break_lines.cpp:
3571         (WebCore::isBreakableSpace): Added.
3572         (WebCore::shouldBreakAfter): Added.
3573         (WebCore::needsAdvancedBreakAnalysis): Added.
3574         (WebCore::nextBreakablePosition): Changed to use TextBreakIterator on platforms
3575         other than Mac.
3576
3577 2007-01-09  Maciej Stachowiak  <mjs@apple.com>
3578
3579         Reviewed by Darin.
3580
3581         - move WebDataProtocol load handling from ResourceLoader to MainResourceLoader
3582         
3583         (it's only ever used for main resources)
3584
3585         * loader/ResourceLoader.h:
3586         (WebCore::ResourceLoader::setRequest):
3587         * loader/mac/MainResourceLoaderMac.mm:
3588         (WebCore::MainResourceLoader::willSendRequest):
3589         (WebCore::MainResourceLoader::continueAfterContentPolicy):
3590         * loader/mac/ResourceLoaderMac.mm:
3591         (WebCore::ResourceLoader::willSendRequest):
3592         (WebCore::ResourceLoader::didReceiveResponse):
3593
3594 2007-01-09  Rob Buis  <buis@kde.org>
3595
3596         Reviewed by Eric.
3597
3598         http://bugs.webkit.org/show_bug.cgi?id=12129
3599         repaint issue after setting viewBox attribute with ECMAScript
3600
3601         Make sure RenderSVGContainer updates after setting viewBox from js.
3602
3603         * ksvg2/svg/SVGSVGElement.cpp:
3604         (WebCore::SVGSVGElement::parseMappedAttribute):
3605         * rendering/RenderSVGContainer.cpp:
3606         (WebCore::RenderSVGContainer::setViewBox):
3607
3608 2007-01-09  Lars Knoll <lars@trolltech.com>
3609
3610         Make the Qt build compile... again!
3611
3612         * WebCore.pro:
3613         * loader/qt/FrameLoaderQt.cpp:
3614         * platform/graphics/qt/GraphicsContextQt.cpp:
3615         * platform/graphics/qt/ImageBufferQt.cpp:
3616         (WebCore::ImageBuffer::create):
3617         * platform/qt/WidgetQt.cpp:
3618         (WebCore::Widget::focusPolicy):
3619
3620 2007-01-09  David Hyatt  <hyatt@apple.com>
3621
3622         Fix for background: inherit bug where background-color wasn't getting properly overridden.  This was a
3623         regression from Safari 1.3 to 2.0.
3624
3625         Reviewed by bdash
3626
3627         fast/backgrounds/background-color-inherit-bug.html
3628
3629         * css/cssstyleselector.cpp:
3630         (WebCore::CSSStyleSelector::applyProperty):
3631
3632 2007-01-08  Brady Eidson <beidson@apple.com>
3633
3634         Reviewed by Brian Dash
3635
3636         <rdar://problem/4895178> 
3637         WebCore::BackForwardList vector should be backed by a HashSet to remove
3638         the potential expense in frequently calling BackForwardList::containsItem()
3639
3640         * history/BackForwardList.cpp:
3641         (WebCore::BackForwardList::addItem): Maintain HashSet as well as Vector
3642         (WebCore::BackForwardList::setCapacity): Ditto
3643         (WebCore::BackForwardList::close): Ditto
3644         (WebCore::BackForwardList::removeItem): Ditto
3645         (WebCore::BackForwardList::containsItem): Make a hash lookup instead of iterate 
3646         through the Vector
3647         * history/BackForwardList.h:
3648
3649 2007-01-08  David Hyatt  <hyatt@apple.com>
3650
3651         Fix a regression where layout is triggering on all recalcStyles, due to a bad comparison
3652         in the multicol assignment operator.
3653
3654         * rendering/RenderStyle.cpp:
3655         (WebCore::StyleMultiColData::operator==):
3656
3657 2007-01-08  Darin Adler  <darin@apple.com>
3658
3659         - rolled out Beth's RenderFlow::destroy change, which broke 5 editing tests
3660
3661         * rendering/InlineBox.cpp: (WebCore::InlineBox::root):
3662         * rendering/RenderFlow.cpp: (WebCore::RenderFlow::destroy):
3663         Used svn merge to roll the change out.
3664
3665 2007-01-09  Mark Rowe  <mrowe@apple.com>
3666
3667         Reviewed by Tim H.
3668
3669         Build fix for 64-bit platforms.
3670
3671         * platform/graphics/svg/SVGPaintServerGradient.h:
3672         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
3673         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
3674
3675 2007-01-08  Anders Carlsson  <acarlsson@apple.com>
3676
3677         Reviewed by Brady.
3678
3679         Move some history related functions off the bridge and into FrameLoader directly.
3680
3681         * loader/FrameLoader.cpp:
3682         (WebCore::FrameLoader::canGoBackOrForward):
3683         (WebCore::FrameLoader::getHistoryLength):
3684         (WebCore::FrameLoader::historyURL):
3685         * loader/mac/FrameLoaderMac.mm:
3686         * page/mac/WebCoreFrameBridge.h:
3687
3688 2007-01-08  Sam Weinig  <sam@webkit.org>
3689
3690         Reviewed by Mark.
3691
3692         Adds outline-color to list of computable styles.
3693
3694         * css/CSSComputedStyleDeclaration.cpp:
3695         (WebCore::):
3696
3697 2007-01-08  Beth Dakin  <bdakin@apple.com>
3698
3699         Reviewed by Hyatt.
3700
3701         Fix for a bug that Adam, Hyatt, and I noticed when debugging 
3702         another problem.
3703
3704         * rendering/InlineBox.cpp:
3705         (WebCore::InlineBox::root): Added assertion. If we are casting to a 
3706         root, we should make sure we are root.
3707         * rendering/RenderFlow.cpp:
3708         (WebCore::RenderFlow::destroy): It is not enough to remove the 
3709         child boxes for anonymous blocks. We need to be more thorough when 
3710         cleaning these up. Adam's test case illustrates the problem well.
3711
3712 2007-01-08  John Sullivan  <sullivan@apple.com>
3713
3714         Tweak to previous checkin
3715
3716         * page/ContextMenuController.cpp:
3717         (WebCore::ContextMenuController::contextMenuItemSelected):
3718         Adam suggested I should nil-check frame->page()
3719
3720 2007-01-08  John Sullivan  <sullivan@apple.com>
3721
3722         Reviewed by Brady and Beth
3723         
3724         - fixed <rdar://problem/4912541> GMAIL: With selected text in a rich text message, choosing 
3725         "Search in Google" displays search results in the message body field
3726
3727         * page/ContextMenuController.cpp:
3728         (WebCore::ContextMenuController::contextMenuItemSelected):
3729         Visit google URL in main frame rather than in current frame
3730
3731 2007-01-08  David Hyatt  <hyatt@apple.com>
3732
3733         Fix computed style errors for color properties that had invalid colors.
3734         They should return the value of the 'color' property when their colors
3735         are not valid.
3736
3737         Fixed the computed style value for border-top-color (a typo was causing it to
3738         use border-left-color instead).
3739
3740         Implement outline-color computed style.
3741
3742         Reviewed by harrison
3743
3744         * css/CSSComputedStyleDeclaration.cpp:
3745         (WebCore::currentColorOrValidColor):
3746         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3747
3748 2007-01-08  Remi Zara  <remi_zara@mac.com>
3749
3750         Reviewed by Darin and Eric.
3751
3752         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12150
3753         Handle correctly cases where no stops are defined, cases where a
3754         stop offset value is less than previous stops offset value, and cases
3755         where a stop offset value is greater than 1.0.
3756         
3757         * platform/graphics/svg/SVGPaintServerGradient.cpp:
3758         (WebCore::SVGPaintServerGradient::setGradientStops): Don't sort stops
3759         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
3760         (WebCore::cgGradientCallback): When there are no stops, use a transparent
3761         fill
3762         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
3763         a stop offset must always be considered at greater or equal to all
3764         preceding stop offsets, but no more than 1.0
3765
3766 2007-01-08  Timothy Hatcher  <timothy@apple.com>
3767
3768         Reviewed by Geoff.
3769
3770         <rdar://problem/4865325> please re-add auto font activation support in WebKit
3771
3772         * platform/mac/WebFontCache.mm:
3773         (+[WebFontCache fontWithFamily:traits:size:]):
3774
3775 2007-01-08  Darin Adler  <darin@apple.com>
3776
3777         Reviewed by Adam.
3778
3779         - http://bugs.webkit.org/show_bug.cgi?id=12143
3780           remove Widget code unneeded now that form elements do not use Widget
3781
3782         * bindings/objc/DOMHTML.mm: (-[DOMHTMLSelectElement _activateItemAtIndex:]):
3783         Removed useless implementation that would only work with NSView-based
3784         <select> elements, and added a FIXME about the fact that this function
3785         doesn't do anything any more. I think it's used by Safari forms auto-fill.
3786
3787         * bridge/mac/WebCoreAXObject.mm: (-[WebCoreAXObject rendererForView:]):
3788         Removed code that depends on elementForView:, since that always returns
3789         nil now.
3790
3791         * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::~HTMLFormElement):
3792         Use a formDestroyed() function rather than clearing m_form directly so that
3793         this class doesn't have to be a friend of HTMLGenericFormElement.
3794
3795         * html/HTMLGenericFormElement.h: Removed now-unneeded friend declaration
3796         for HTMLFormElement. Moved definition of supportsFocus into the .cpp file.
3797         Added a public formDestroyed function for use by HTMLFormElement.
3798         * html/HTMLGenericFormElement.cpp:
3799         (WebCore::HTMLGenericFormElement::attach): Removed widget-specific code.
3800         (WebCore::HTMLGenericFormElement::isKeyboardFocusable): Ditto.
3801         (WebCore::HTMLGenericFormElement::isMouseFocusable): Ditto.
3802         (WebCore::HTMLGenericFormElement::supportsFocus): Added this here; it was
3803         in the header file before, for no good reason.
3804
3805         * page/EventHandler.h: Removed unused Mac-specific
3806         currentEventIsMouseDownInWidget.
3807         * page/mac/EventHandlerMac.mm: Ditto.
3808
3809         * page/Frame.cpp: (WebCore::Frame::frameForWidget): Changed to use
3810         RenderWidget to find the frame rather than the WigetClient element()
3811         function.
3812
3813         * page/mac/FrameMac.h: Removed unused bridgeForWidget.
3814         * page/mac/FrameMac.mm: Ditto.
3815
3816         * page/mac/WebCoreFrameBridge.h: Removed elementForView.
3817         * page/mac/WebCoreFrameBridge.mm: Ditto. While the scroll bar still did
3818         implement WebCoreWidgetHolder, it does not correspond to a DOM element,
3819         so this method was always returning nil.
3820
3821         * platform/Widget.h: Moved unused types and functions that are still
3822         in the platform-specific implementations into a "to be deleted" section:
3823         FocusPolicy, NoFocus, TabFocus, ClickFocus, StrongFocus, WheelFocus,
3824         lockDrawingFocus, font, focusPolicy, hasFocus, clearFocus, setFont,
3825         disableFlushDrawing, enableFlushDrawing, unlockDrawingFocus.
3826         Removed unused functions that are not in platform-specific implementations:
3827         sizeHint, baselinePosition, checksDescendantsForFocus.
3828         * platform/Widget.cpp: Removed functions.
3829
3830         * platform/WidgetClient.h: Emptied out the class. Soon we can delete it.
3831
3832         * platform/mac/PlatformScrollBarMac.mm: (-[WebCoreScrollBar mouseDown:]):
3833         Got rid of unneeded includes, removed use of the WebCoreWidgetHolder
3834         protocol and the one method in it, and changed the calls to beforeMouseDown
3835         and afterMouseDown to pass the widget pointer in.
3836
3837         * platform/mac/WebCoreWidgetHolder.h: Emptied out the file -- to be deleted
3838         later.
3839
3840         * platform/mac/WidgetMac.mm:
3841         (WebCore::Widget::~Widget): Removed code to manage deferredFirstResponder.
3842         (WebCore::Widget::hasFocus): Removed body of function and replaced with
3843         an assertion that it's never called. Later we'll remove it.
3844         (WebCore::Widget::setFocus): Tweaked a bit to work given changes to the
3845         FrameMac class. Also added a FIXME. Given how this works, it does not
3846         belong in the platform layer.
3847         (WebCore::Widget::clearFocus): Removed body of function and replaced with
3848         an assertion that it's never called. Later we'll remove it.
3849         (WebCore::Widget::focusPolicy): Ditto.
3850         (WebCore::Widget::font): Ditto.
3851         (WebCore::Widget::setFont): Ditto.
3852         (WebCore::Widget::lockDrawingFocus): Ditto.
3853         (WebCore::Widget::unlockDrawingFocus): Ditto.
3854         (WebCore::Widget::disableFlushDrawing): Ditto.
3855         (WebCore::Widget::enableFlushDrawing): Ditto.
3856         (WebCore::Widget::paint): Removed obsolete comment.
3857         (WebCore::Widget::sendConsumedMouseUp): Removed body of function and replaced with
3858         an assertion that it's never called. Later we'll remove it.
3859         (WebCore::Widget::setIsSelected): Tweaked a bit to work given changes to the
3860         FrameMac class. Also added a FIXME. Given how this works, it does not
3861         belong in the platform layer.
3862         (WebCore::Widget::beforeMouseDown): Changed to take an explicit Widget parameter.
3863         (WebCore::Widget::afterMouseDown): Ditto.
3864
3865         * rendering/RenderApplet.cpp:
3866         (WebCore::RenderApplet::intrinsicWidth): Changed to not call sizeHint() any more.
3867         I didn't change the values returned by the function, but they make no sense and
3868         this should probably be fixed later.
3869         (WebCore::RenderApplet::intrinsicHeight): Ditto.
3870
3871         * rendering/RenderWidget.h: Removed unneeded WidgetClient.h include. Changed
3872         RenderWidget to no longer inherit from WidgetClient. Added a find function to find
3873         a RenderWidget given a Widget. Removed all the virtual functions that override
3874         WidgetClient hooks.
3875         * rendering/RenderWidget.cpp: Removed all the WidgetClient functions.
3876         (WebCore::widgetRendererMap): Added. Map that gives the RenderWidget for each
3877         Widget that is owned by a RenderWidget.
3878         (WebCore::RenderWidget::destroy): Removed the setClient call and added a call to
3879         remove the widget from the widgetRendererMap.
3880         (WebCore::RenderWidget::setWidget): Ditto.
3881         (WebCore::RenderWidget::setStyle): Removed the call to Widget::setFont.
3882         (WebCore::RenderWidget::find): Added. Returns the RenderWidget for a Widget, if any.
3883
3884         - other changes
3885
3886         * dom/Node.cpp:
3887         (WebCore::Node::dump): Removed unnecessary use of DeprecatedString.
3888         (WebCore::appendAttributeDesc): Ditto.
3889         (WebCore::Node::showNode): Ditto.
3890         (WebCore::Node::formatForDebugger): Ditto.
3891
3892         * loader/CachedImage.cpp: (WebCore::CachedImage::createImage): Cleaned up
3893         conditional compilation so adding more MIME types here doesn't make the
3894         function more and more difficult to read.
3895
3896         * page/Frame.h: Removed unneeded includes and declarations.
3897         Tweaked formatting.
3898         * page/Page.h: Removed unneeded declarations.
3899         * platform/ScrollView.h: Removed unneeded includes.
3900
3901         * rendering/RenderBlock.cpp: (WebCore::RenderBlock::renderName): Tweaked formatting.
3902
3903 2007-01-08  Mitz Pettel  <mitz@webkit.org>
3904
3905         Reviewed by Darin.
3906
3907         - fix http://bugs.webkit.org/show_bug.cgi?id=12162
3908           The inheritableProperties array is duplicated
3909
3910         No test possible (no change to functionality).
3911
3912         * css/CSSComputedStyleDeclaration.cpp:
3913         (WebCore::CSSComputedStyleDeclaration::removeComputedInheritablePropertiesFrom): Added.
3914         Removes the inheritable properties that CSSComputedStyleDeclaration knows how to compute
3915         from the given mutable declaration.
3916         * css/CSSComputedStyleDeclaration.h:
3917         * css/CSSMutableStyleDeclaration.cpp: Removed one copy of the inheritableProperties array.
3918         * css/CSSMutableStyleDeclaration.h:
3919         * editing/ReplaceSelectionCommand.cpp:
3920         (WebCore::ReplaceSelectionCommand::removeRedundantStyles): Changed to call
3921         CSSComputedStyleDeclaration::removeComputedInheritablePropertiesFrom.
3922
3923 2007-01-08  Alexey Proskuryakov  <ap@webkit.org>
3924
3925         Reviewed by Darin.
3926
3927         http://bugs.webkit.org/show_bug.cgi?id=12099
3928         XMLHttpRequest shouldn't honor a charset specified via setRequestHeader
3929
3930         Test: http/tests/xmlhttprequest/request-encoding.html
3931
3932         * xml/xmlhttprequest.cpp:
3933         (WebCore::XMLHttpRequest::send): Don't try to get the charset from Content-Type. Keep checking 
3934         for unknown charsets, because that will be needed again when we start using document.xmlEncoding.
3935
3936 2007-01-08  Alexey Proskuryakov  <ap@webkit.org>
3937
3938         Reviewed by Darin.
3939
3940         http://bugs.webkit.org/show_bug.cgi?id=7640
3941         Menu items are displayed as "undefined"
3942
3943         * bindings/js/kjs_dom.cpp:
3944         (KJS::DOMNodeProtoFunc::callAsFunction):
3945         * bindings/js/kjs_domnode.h:
3946         (KJS::DOMNode::):
3947         Removed Node::item. No idea why it was there in the first place.
3948
3949         * bindings/js/kjs_html.cpp:
3950         (KJS::HTMLElementFunction::callAsFunction):
3951         * bindings/js/kjs_html.h:
3952         (KJS::JSHTMLElement::):
3953         Added HTMLSelectElement::item. It is not in DOM2 IDL, but the spec seems to mentions it anyway:
3954         "The contained options can be directly accessed through the select element as a collection."
3955
3956         * html/HTMLSelectElement.cpp:
3957         (WebCore::HTMLSelectElement::namedItem):
3958         (WebCore::HTMLSelectElement::item):
3959         * html/HTMLSelectElement.h:
3960         * html/HTMLSelectElement.idl:
3961         Added this method to DOM and IDL, too. Made namedItem() non-virtual.
3962
3963 2007-01-08  Beth Dakin  <bdakin@apple.com>
3964
3965         Reviewed by Maciej.
3966
3967         Fix for <rdar://problem/4912254> REGRESSION: After copying text to 
3968         the clipboard, the paste contextual remains dimmed when it should
3969         be active
3970
3971         No layout test for context menu problems.
3972
3973         * platform/ContextMenu.cpp:
3974         (WebCore::ContextMenu::checkOrEnableIfNeeded): Remove check to see 
3975         if the content is richly editable; it only has to be regular 
3976         editable and the call to canPaste() takes care of that.
3977
3978 2007-01-08  Sam Weinig  <sam@webkit.org>
3979
3980         Reviewed by Mitz.
3981
3982         Attempt to fix build for buildbots.
3983
3984         * rendering/RenderBlock.cpp:
3985         (WebCore::RenderBlock::columnGap):
3986         (WebCore::RenderBlock::calcColumnWidth):
3987
3988 2007-01-08  Darin Adler  <darin@apple.com>
3989
3990         Reviewed by Maciej.
3991
3992         - fix http://bugs.webkit.org/show_bug.cgi?id=3232
3993           CSS2: Web Kit does not support all list style types
3994
3995         Test case showed problems in cjk-ideographic and hebrew
3996         Test: fast/lists/w3-list-styles.html
3997
3998         * rendering/RenderListMarker.cpp:
3999         (WebCore::toCJKIdeographic): Fix the algorithm so it doesn't include leading zeroes.
4000         I had misread the part that says you start with the decimal form of the number.
4001         Fix an assertion that was too stringent. Fix the code to collapse consecutive zeroes
4002         so that it doesn't get confused by intervening "noChar" characters.
4003         (WebCore::RenderListMarker::paint): Reverse the text before painting if the first character's
4004         direction is right to left.
4005
4006 2007-01-08  Darin Adler  <darin@apple.com>
4007
4008         Reviewed by Beth.
4009
4010         - http://bugs.webkit.org/show_bug.cgi?id=12142
4011           render tree dump for test results should include the value of list markers
4012
4013         * rendering/RenderTreeAsText.cpp:
4014         (WebCore::getTagName): Changed to use String instead of DeprecatedString.
4015         (WebCore::quoteAndEscapeNonPrintables): Ditto. Also moved up so it can be used
4016         in the operator below.
4017         (WebCore::operator<<): Added clause for RenderListMarker that dumps the value
4018         of the list marker's text.
4019         (WebCore::nodePosition): Changed to use String instead of DeprecatedString.
4020         * rendering/SVGRenderTreeAsText.cpp:
4021         (WebCore::TextStreamSeparator::TextStreamSeparator): Changed to use String
4022         instead of DeprecatedString.
4023         (WebCore::getTagName): Ditto.
4024         (WebCore::write): Ditto.
4025
4026 2007-01-08  Sam Weinig  <sam@webkit.org>
4027
4028         Reviewed by ap and the rubber stamp of Maciej.
4029
4030         Patch for http://bugs.webkit.org/show_bug.cgi?id=12164
4031         Cleanup Tokenizers
4032
4033         - Moves Tokenizer class into its own file.
4034         - Move XMLTokenizer declaration from XMLTokenizer.cpp to XMLTokenizer.h
4035         - Fixup #includes.
4036
4037         * WebCore.xcodeproj/project.pbxproj:
4038         * dom/Document.cpp:
4039         (WebCore::Document::createTokenizer):
4040         * dom/Tokenizer.h: Added.
4041         (WebCore::Tokenizer::Tokenizer):
4042         (WebCore::Tokenizer::~Tokenizer):
4043         (WebCore::Tokenizer::stopParsing):
4044         (WebCore::Tokenizer::processingData):
4045         (WebCore::Tokenizer::executingScript):
4046         (WebCore::Tokenizer::wantsRawData):
4047         (WebCore::Tokenizer::writeRawData):
4048         (WebCore::Tokenizer::inViewSourceMode):
4049         (WebCore::Tokenizer::setInViewSourceMode):
4050         (WebCore::Tokenizer::wellFormed):
4051         (WebCore::Tokenizer::lineNumber):
4052         (WebCore::Tokenizer::columnNumber):
4053         * dom/XMLTokenizer.cpp:
4054         * dom/XMLTokenizer.h:
4055         (WebCore::XMLTokenizer::):
4056         (WebCore::XMLTokenizer::setIsXHTMLDocument):
4057         (WebCore::XMLTokenizer::isXHTMLDocument):
4058         (WebCore::XMLTokenizer::wellFormed):
4059         * html/HTMLElement.cpp:
4060         * html/HTMLTokenizer.h:
4061         (WebCore::Token::reset):
4062         (WebCore::HTMLTokenizer::checkBuffer):
4063         (WebCore::HTMLTokenizer::checkScriptBuffer):
4064         (WebCore::HTMLTokenizer::State::State):
4065         (WebCore::HTMLTokenizer::State::setBit):
4066         * xml/XSLTProcessor.cpp:
4067
4068 2007-01-08  Sam Weinig  <sam@webkit.org>
4069
4070         Reviewed by Tim H.
4071
4072         Adds -webkit-box-shadow to list of computable styles.
4073
4074         * css/CSSComputedStyleDeclaration.cpp:
4075         (WebCore::):
4076
4077 2007-01-08  Rob Buis  <buis@kde.org>
4078
4079         Reviewed by bdash.
4080
4081         Initialize the member vars, fixes testcases
4082         pointer-events-path.svg and pointer-events-text.svg
4083         on the PPC build.
4084
4085         * ksvg2/misc/PointerEventsHitRules.cpp:
4086         (WebCore::PointerEventsHitRules::PointerEventsHitRules):
4087
4088 2007-01-08  David Hyatt  <hyatt@apple.com>
4089
4090         This patch computes the correct column width and column count.  It ensures that content lays out constrained
4091         to the column width in one long strip.  It does not yet balance the long strip into multiple columns.
4092
4093         Reviewed by Mark
4094
4095         * rendering/RenderBlock.cpp:
4096         (WebCore:::RenderFlow):
4097         (WebCore::RenderBlock::layoutBlock):
4098         (WebCore::RenderBlock::rightOffset):
4099         (WebCore::RenderBlock::availableWidth):
4100         (WebCore::RenderBlock::columnGap):
4101         (WebCore::RenderBlock::calcColumnWidth):
4102         * rendering/RenderBlock.h:
4103         * rendering/RenderStyle.h:
4104         (WebCore::RenderStyle::setColumnWidth):
4105
4106 2007-01-08  David Hyatt  <hyatt@apple.com>
4107
4108         Fix column-count so that it supports auto just like column-width does.
4109
4110         Add a new function, availableWidth(), that will be used to return the width available to content placed inside
4111         a block.  For now it still returns contentWidth(), so no behavioral change has occurred yet.
4112
4113         Subclass calcWidth() in RenderBlock, but don't change anything yet.  This is where RenderBlock will calc the
4114         correct column width.
4115
4116         Reviewed by mark
4117
4118         * css/CSSComputedStyleDeclaration.cpp:
4119         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
4120         * css/cssstyleselector.cpp:
4121         (WebCore::CSSStyleSelector::applyProperty):
4122         * rendering/RenderBlock.cpp:
4123         (WebCore::RenderBlock::leftRelOffset):
4124         (WebCore::RenderBlock::rightRelOffset):
4125         (WebCore::RenderBlock::getClearDelta):
4126         (WebCore::RenderBlock::availableWidth):
4127         (WebCore::RenderBlock::calcWidth):
4128         * rendering/RenderBlock.h:
4129         * rendering/RenderBox.cpp:
4130         (WebCore::RenderBox::containingBlockWidth):
4131         * rendering/RenderObject.cpp:
4132         (WebCore::RenderObject::containingBlockWidth):
4133         (WebCore::RenderObject::paddingTop):
4134         (WebCore::RenderObject::paddingBottom):
4135         (WebCore::RenderObject::paddingLeft):
4136         (WebCore::RenderObject::paddingRight):
4137         * rendering/RenderObject.h:
4138         (WebCore::RenderObject::availableWidth):
4139         * rendering/RenderStyle.cpp:
4140         (WebCore::StyleMultiColData::StyleMultiColData):
4141         (WebCore::StyleMultiColData::operator==):
4142         * rendering/RenderStyle.h:
4143         (WebCore::RenderStyle::hasAutoColumnCount):
4144         (WebCore::RenderStyle::setColumnCount):
4145         (WebCore::RenderStyle::setHasAutoColumnCount):
4146         * rendering/RenderTable.cpp:
4147         (WebCore::RenderTable::calcWidth):
4148
4149 2007-01-08  David Hyatt  <hyatt@apple.com>
4150
4151         Fix z-index:inherit so that it works properly when inheriting from z-index:auto.
4152
4153         Reviewed by eric
4154
4155         fast/layers/zindex-inherit.html
4156
4157         * css/cssstyleselector.cpp:
4158         (WebCore::CSSStyleSelector::applyProperty):
4159
4160 2007-01-08  David Hyatt  <hyatt@apple.com>
4161
4162         Add support for all of the CSS3 multi-column properties in preparation for implementing the
4163         feature.
4164
4165         Reviewed by eric
4166
4167         * css/CSSComputedStyleDeclaration.cpp:
4168         (WebCore::):
4169         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
4170         * css/CSSMutableStyleDeclaration.cpp:
4171         (WebCore::):
4172         * css/CSSPropertyNames.in:
4173         * css/cssparser.cpp:
4174         (WebCore::CSSParser::parseValue):
4175         * css/cssstyleselector.cpp:
4176         (WebCore::CSSStyleSelector::applyProperty):
4177         * rendering/RenderStyle.cpp:
4178         (WebCore::StyleMultiColData::StyleMultiColData):
4179         (WebCore::StyleMultiColData::operator==):
4180         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
4181         (WebCore::StyleRareNonInheritedData::operator==):
4182         (WebCore::RenderStyle::RenderStyle):
4183         (WebCore::RenderStyle::diff):
4184         * rendering/RenderStyle.h:
4185         (WebCore::StyleMultiColData::operator!=):
4186         (WebCore::StyleMultiColData::ruleWidth):
4187         (WebCore::RenderStyle::columnWidth):
4188         (WebCore::RenderStyle::hasAutoColumnWidth):
4189         (WebCore::RenderStyle::columnCount):
4190         (WebCore::RenderStyle::columnGap):
4191         (WebCore::RenderStyle::hasAutoColumnGap):
4192         (WebCore::RenderStyle::columnRuleColor):
4193         (WebCore::RenderStyle::columnRuleStyle):
4194         (WebCore::RenderStyle::columnRuleWidth):
4195         (WebCore::RenderStyle::columnBreakBefore):
4196         (WebCore::RenderStyle::columnBreakInside):
4197         (WebCore::RenderStyle::columnBreakAfter):
4198         (WebCore::RenderStyle::setColumnWidth):
4199         (WebCore::RenderStyle::setHasAutoColumnWidth):
4200         (WebCore::RenderStyle::setColumnCount):
4201         (WebCore::RenderStyle::setColumnGap):
4202         (WebCore::RenderStyle::setHasAutoColumnGap):
4203         (WebCore::RenderStyle::setColumnRuleColor):
4204         (WebCore::RenderStyle::setColumnRuleStyle):
4205         (WebCore::RenderStyle::setColumnRuleWidth):
4206         (WebCore::RenderStyle::resetColumnRule):
4207         (WebCore::RenderStyle::setColumnBreakBefore):
4208         (WebCore::RenderStyle::setColumnBreakInside):
4209         (WebCore::RenderStyle::setColumnBreakAfter):
4210         (WebCore::RenderStyle::initialColumnCount):
4211         (WebCore::RenderStyle::initialColumnWidth):
4212
4213 2007-01-07  Rob Buis  <buis@kde.org>
4214
4215         Reviewed by Eric.
4216
4217         http://bugzilla.opendarwin.org/show_bug.cgi?id=10587
4218         pointer-events is not implemented for RenderSVGImage or RenderSVGText
4219
4220         Implement pointer-events for raster images and svg text.
4221
4222         * WebCore.xcodeproj/project.pbxproj:
4223         * ksvg2/misc/PointerEventsHitRules.cpp: Added.
4224         (WebCore::PointerEventsHitRules::PointerEventsHitRules):
4225         * ksvg2/misc/PointerEventsHitRules.h: Added.
4226         (WebCore::PointerEventsHitRules::):
4227         * rendering/RenderPath.cpp:
4228         (WebCore::RenderPath::nodeAtPoint):
4229         * rendering/RenderPath.h:
4230         * rendering/RenderSVGImage.cpp:
4231         (WebCore::RenderSVGImage::nodeAtPoint):
4232         * rendering/RenderSVGImage.h:
4233         * rendering/RenderSVGText.cpp:
4234         (WebCore::RenderSVGText::nodeAtPoint):
4235         * rendering/RenderSVGText.h:
4236
4237 2007-01-07  David Hyatt  <hyatt@apple.com>
4238
4239         Fix a regression where border-radius was not clipping the background when border was set to none.
4240         Fix multi-line inline flow painting to properly apply border-radius to the background only at the
4241