Reviewed by Maciej
[WebKit-https.git] / WebCore / ChangeLog
1 2006-06-27  Brady Eidson  <beidson@apple.com>
2
3         Reviewed by Maciej
4
5         Added functionality to WebCore::Image to get multiple representations/sizes into TIFF data
6
7         * platform/mac/ImageMac.mm:
8         (WebCore::Image::getTIFFRepresentation):
9
10 2006-06-26  David Hyatt  <hyatt@apple.com>
11
12         Fix for 9538, support syntax highlighted HTML source.  Lots of loose
13         ends still (script/style/comments/doctype/entities/accurate whitespace).
14
15         Reviewed by darin
16
17         * DerivedSources.make:
18         * WebCore.xcodeproj/project.pbxproj:
19         * bridge/mac/WebCoreFrameBridge.h:
20         * bridge/mac/WebCoreFrameBridge.mm:
21         (-[WebCoreFrameBridge setInViewSourceMode:]):
22         (-[WebCoreFrameBridge inViewSourceMode]):
23         * css/cssstyleselector.cpp:
24         (WebCore::CSSStyleSelector::loadDefaultStyle):
25         (WebCore::CSSStyleSelector::matchUARules):
26         * css/cssstyleselector.h:
27         * css/view-source.css: Added.
28         * dom/Document.cpp:
29         (WebCore::Document::implicitClose):
30         * dom/xml_tokenizer.h:
31         (WebCore::Tokenizer::Tokenizer):
32         (WebCore::Tokenizer::~Tokenizer):
33         (WebCore::Tokenizer::inViewSourceMode):
34         (WebCore::Tokenizer::setInViewSourceMode):
35         * html/HTMLAttributeNames.in:
36         * html/HTMLFrameElement.cpp:
37         (WebCore::HTMLFrameElement::init):
38         (WebCore::HTMLFrameElement::parseMappedAttribute):
39         (WebCore::HTMLFrameElement::attach):
40         * html/HTMLFrameElement.h:
41         (WebCore::HTMLFrameElement::viewSourceMode):
42         * html/HTMLTokenizer.cpp:
43         (WebCore::HTMLTokenizer::HTMLTokenizer):
44         (WebCore::HTMLTokenizer::scriptHandler):
45         (WebCore::HTMLTokenizer::scriptExecution):
46         (WebCore::HTMLTokenizer::parseTag):
47         (WebCore::HTMLTokenizer::continueProcessing):
48         (WebCore::HTMLTokenizer::write):
49         (WebCore::HTMLTokenizer::timerFired):
50         (WebCore::HTMLTokenizer::end):
51         (WebCore::HTMLTokenizer::processToken):
52         (WebCore::HTMLTokenizer::notifyFinished):
53         * html/HTMLTokenizer.h:
54         * html/HTMLViewSourceDocument.cpp: Added.
55         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
56         (WebCore::HTMLViewSourceDocument::createTokenizer):
57         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
58         (WebCore::HTMLViewSourceDocument::addViewSourceAttribute):
59         (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
60         * html/HTMLViewSourceDocument.h: Added.
61         * page/Frame.cpp:
62         (WebCore::Frame::begin):
63         (WebCore::Frame::inViewSourceMode):
64         (WebCore::Frame::setInViewSourceMode):
65         * page/Frame.h:
66         * page/FramePrivate.h:
67         (WebCore::FramePrivate::FramePrivate):
68         * rendering/RenderPartObject.cpp:
69         (WebCore::RenderPartObject::updateWidget):
70
71 2006-06-26  Anders Carlsson  <acarlsson@apple.com>
72
73         Reviewed by Darin.
74
75         http://bugzilla.opendarwin.org/show_bug.cgi?id=9031
76         REGRESSION: Crash when closing tabs on newegg.com
77         
78         * page/Frame.cpp:
79         (WebCore::Frame::pageDestroyed):        
80         * page/Frame.h:
81         Add new method which is invoked when the frame's page has been destroyed.
82         Currently this function disassociates the JS Window object with the frame, 
83         stopping any running JS timers.
84         
85         * page/Page.cpp:
86         (WebCore::Page::~Page):
87         Call pageDestroyed on all frames.
88
89 2006-06-26  Rob Buis  <buis@kde.org>
90
91         Reviewed and reworked by Darin.
92
93         Code cleanup, calculate clientX/clientY in one central place.
94
95         * dom/EventTargetNode.h:
96         * dom/EventTargetNode.cpp: (WebCore::EventTargetNode::dispatchMouseEvent):
97         Renamed parameters to pageX/Y since they aren't clientX/Y values.
98         Removed code to compute clientX/Y (was a bit confused in naming before),
99         because that's now done inside MouseEvent.
100
101         * dom/MouseEvent.h:
102         * dom/MouseEvent.cpp:
103         (WebCore::MouseEvent::MouseEvent): Removed clientX/Y parameters.
104         (WebCore::MouseEvent::initMouseEvent): Added comments about problems I noticed.
105         (WebCore::MouseEvent::which): Fixed comment that confusingly mentioned KHTML,
106         when it was talking about the DOM standard.
107
108         * dom/MouseRelatedEvent.h:
109         * dom/MouseRelatedEvent.cpp:
110         (WebCore::contentsX): Added helper function.
111         (WebCore::contentsY): Ditto.
112         (WebCore::MouseRelatedEvent::MouseRelatedEvent): Removed clientX/Y parameter,
113         and added code to compute clientX/Y based on pageX/Y.
114         (WebCore::MouseRelatedEvent::receivedTarget): Fixed comments.
115
116         * dom/WheelEvent.h:
117         * dom/WheelEvent.cpp: (WebCore::WheelEvent::WheelEvent): Removed clientX/Y
118         parameter.
119
120         * page/FrameView.cpp: (WebCore::FrameView::dispatchDragEvent): Removed the code
121         to compute coordinates, and renamed the confusingly named clientPos (which was
122         a page-relative position) to contentsPos.
123
124 2006-06-25  David Carson  <dacarson@gmail.com>
125
126         Reviewed and tweaked by Darin.
127
128         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9185
129         REGRESSION: UserID field appears with an incorrect height 
130         on americanexpresslogin page
131         - Height and Width attribute only applies to IMAGE and HIDDEN
132         types.
133
134         * dom/NamedMappedAttrMap.h:
135         (WebCore::NamedMappedAttrMap::getAttributeItem):
136         Added to static_cast method.
137
138         * html/HTMLInputElement.cpp:
139         (WebCore::HTMLInputElement::setInputType):
140         Update the style decl if input type has changed.
141         (WebCore::HTMLInputElement::mapToEntry):
142         Only Cache height and width if it is an IMAGE or HIDDEN
143         (WebCore::HTMLInputElement::parseMappedAttribute):
144         Check type before adding height and width style.
145         (WebCore::HTMLInputElement::attach):
146         Remove code for discarding width.
147
148         * html/HTMLInputElement.h:
149         (WebCore::HTMLInputElement::respectHeightAndWidthAttrs):
150         New method added to report if this input type uses height & width.
151
152 2006-06-25  David Kilzer  <ddkilzer@kilzer.net>
153
154         Reviewed by Darin.
155
156         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9537
157           REGRESSION: Reproducible crash in WebCore::RenderTextField::textWithHardLineBreaks()
158
159         Test: fast/forms/textarea-hard-linewrap-empty.html
160
161         * rendering/RenderTextField.cpp:
162         (WebCore::RenderTextField::textWithHardLineBreaks): Added null check for
163         m_div->firstChild()->renderer().
164
165 2006-06-25  Mitz Pettel  <opendarwin.org@mitzpettel.com>
166
167         Reviewed by Darin.
168
169         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9388
170           REGRESSION: outlines don't get erased when removed in some cases
171
172         Test: fast/repaint/outline-shrinking.html
173
174         * rendering/RenderObject.cpp:
175         (WebCore::RenderObject::setStyle): Always repaint with the old style if the outline is
176         becoming narrower, even if we are going to relayout.
177
178 2006-06-25  Rob Buis  <buis@kde.org>
179
180         Reviewed by Darin.
181
182         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8707:
183         event.clientX and event.clientY should be relative to the viewport, not the canvas
184
185         Make sure clientX and clientY take into account the scroll offsets
186         of the view.
187
188         * dom/EventTargetNode.cpp:
189         (WebCore::EventTargetNode::dispatchMouseEvent):
190         * dom/MouseEvent.cpp:
191         (WebCore::MouseEvent::MouseEvent):
192         * dom/MouseEvent.h:
193         * dom/MouseRelatedEvent.cpp:
194         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
195         (WebCore::MouseRelatedEvent::initCoordinates):
196         * dom/MouseRelatedEvent.h:
197         * dom/WheelEvent.cpp:
198         (WebCore::WheelEvent::WheelEvent):
199         * page/FrameView.cpp:
200         (WebCore::FrameView::dispatchDragEvent):
201
202 2006-06-25  Timothy Hatcher  <timothy@apple.com>
203
204         Reviewed by Darin.
205
206         Bug 9574: Drosera should show inline scripts within the original HTML
207         http://bugzilla.opendarwin.org/show_bug.cgi?id=9574
208
209         * Pass the starting line number and error message to the debugger.
210         * Call parsedSource even if there was a script parse error so the
211           debugger can show the parse error.
212         * Pass NSURL objects to the ObjC delegate for the script URLs.
213
214         * bridge/mac/WebCoreScriptDebugger.h:
215         * bridge/mac/WebCoreScriptDebugger.mm:
216         (toNSURL):
217         (WebCoreScriptDebuggerImp::sourceParsed):
218
219 2006-06-24  David Kilzer  <ddkilzer@kilzer.net>
220
221         Build fix.  Reviewed by NOBODY.
222
223         - Backed out patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=8707
224           event.clientX and event.clientY should be relative to the viewport, not the canvas
225
226         * dom/EventTargetNode.cpp:
227         (WebCore::EventTargetNode::dispatchMouseEvent):
228         * dom/MouseEvent.cpp:
229         (WebCore::MouseEvent::MouseEvent):
230         * dom/MouseEvent.h:
231         * dom/MouseRelatedEvent.cpp:
232         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
233         (WebCore::MouseRelatedEvent::initCoordinates):
234         * dom/MouseRelatedEvent.h:
235         * dom/WheelEvent.cpp:
236         (WebCore::WheelEvent::WheelEvent):
237
238 2006-06-24  Rob Buis  <buis@kde.org>
239
240         Reviewed by Darin.
241
242         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8707:
243         event.clientX and event.clientY should be relative to the viewport, not the canvas
244
245         Make sure clientX and clientY take into account the scroll offsets
246         of the view.
247
248         Test: fast/dom/window-xy-properties.html
249
250         * dom/EventTargetNode.cpp:
251         (WebCore::EventTargetNode::dispatchMouseEvent):
252         * dom/MouseEvent.cpp:
253         (WebCore::MouseEvent::MouseEvent):
254         * dom/MouseEvent.h:
255         * dom/MouseRelatedEvent.cpp:
256         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
257         (WebCore::MouseRelatedEvent::initCoordinates):
258         * dom/MouseRelatedEvent.h:
259         * dom/WheelEvent.cpp:
260         (WebCore::WheelEvent::WheelEvent):
261
262 2006-06-24  Rob Buis  <buis@kde.org>
263
264         Reviewed by Darin.
265
266         http://bugzilla.opendarwin.org/show_bug.cgi?id=9352
267         Webkit doesn't respect stroke-width in SVG for smaller <circle>s
268
269         Make sure the stroke path is set before applying gradient transforms.
270
271         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
272         (WebCore::KRenderingPaintServerGradientQuartz::setup):
273         (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
274
275 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
276
277         Rubber-stamped by Eric.
278
279         Add a -h (do not follow symlinks) option to ln in derived sources build script (without it,
280         a symlink was created inside the source directory on second build).
281
282         * WebCore.xcodeproj/project.pbxproj:
283
284 2006-06-24  James G. Speth  <speth@end.com>
285
286         Reviewed by Darin.  Copyrights tweaked by ddkilzer.
287         
288         Bug 8331: DOMNodeLists returned to Objective-C are not properly wrapped
289         http://bugzilla.opendarwin.org/show_bug.cgi?id=8331
290         
291         DOMNodes were the only objects handled by createObjcInstanceForValue.
292         now it handles all of these: DOMNode, DOMNodeList, DOMNamedNodeMap, DOMStyleSheetList,
293         DOMStyleSheet, DOMMediaList, DOMCSSRuleList, DOMCSSRule, DOMCSSStyleDeclaration, and DOMCSSValue
294         
295         * WebCore.xcodeproj/project.pbxproj: added file DOMCSSInternal.h to project
296         * bindings/js/kjs_css.cpp:
297         (KJS::): changed ClassInfo for DOMCSSStyleSheet to have DOMStyleSheet as its parent class
298         * bindings/objc/DOM.mm:
299         (-[DOMDocumentType :]):  moved DOMNamedNodeMap (WebCoreInternal) interface to DOMInternal.h
300         * bindings/objc/DOMCSS.mm: moved WebCoreInternal interfaces to DOMCSSInternal.h
301         * bindings/objc/DOMCSSInternal.h: Added file, contains WebCoreInternal interface for CSS classes
302         * bindings/objc/DOMInternal.h: added DOMNamedNodeMap (WebCoreInternal) interface
303         * bindings/objc/DOMUtility.mm:
304         (KJS::ScriptInterpreter::createObjcInstanceForValue): support for more classes
305
306 2006-06-24  David Kilzer  <ddkilzer@kilzer.net>
307
308         Reviewed by Timothy.
309
310         * Info.plist: Fixed copyright to include 2003-2006.
311         * manual-tests/NPN_Invoke/Info.plist: Added copyright statement.
312
313 2006-06-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
314
315         Reviewed by Darin, landed by ap.
316
317         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9547
318           Resize corner does not track the mouse accurately
319
320         Test: fast/css/resize-corner-tracking.html
321
322         * page/FrameView.cpp:
323         (WebCore::FrameView::handleMousePressEvent): Store the offset from the layer's
324         resizing corner where dragging has started.
325         (WebCore::FrameView::handleMouseMoveEvent): Pass the stored offset to the
326         layer's resize method.
327         * rendering/RenderLayer.cpp:
328         (WebCore::RenderLayer::resize): Added an offset parameter, which is added to
329         the mouse location.
330         For objects that may have intrinsic margins applied to them,
331         added code to lift the margins into the object's style in order to keep them
332         constant.
333         Changed to take the content size as the base size if the box-sizing property
334         is content-box.
335         (WebCore::RenderLayer::offsetFromResizeCorner): Added. Returns the offset of the
336         given point from the corner that tracks the mouse when resizing.
337         * rendering/RenderLayer.h:
338
339 2006-06-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
340
341         Reviewed by Darin, landed by ap.
342
343         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9316
344           REGRESSION: text field width shrinks on first keystroke
345
346         Test: fast/forms/floating-textfield-relayout.html
347
348         * page/FrameView.cpp:
349         (WebCore::FrameView::layoutRoot): Added. During subtree relayout, returns
350         the subtree root. Otherwise returns 0.
351         (WebCore::FrameView::layoutPending): Made const.
352         * page/FrameView.h:
353         * rendering/RenderBox.cpp:
354         (WebCore::RenderBox::calcWidth): Added early return if this is the root
355         of a subtree being laid out. 
356
357 2006-06-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
358
359         Reviewed by Hyatt.
360
361         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9531
362           Pages that need only a horizontal scroll bar get a vertical one as well
363
364         The change affects many existing tests.
365
366         * page/FrameView.cpp:
367         (WebCore::FrameView::layout): Mark the body renderer as needing layout if
368         the view's height has changed and the body stretches to the view's height.
369         * rendering/RenderBox.cpp:
370         (WebCore::RenderBox::calcHeight):
371         * rendering/RenderBox.h:
372         (WebCore::RenderBox::stretchesToViewHeight): Added. Moved the logic for when
373         the HTML block needs to stretch to the view's height from calcHeight() here.
374
375 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
376
377         Reviewed by Darin.
378
379         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7461
380           Always encode the path part of an URI as UTF-8
381
382         Test: http/tests/uri/utf8-path.html
383
384         * platform/KURL.cpp:
385         (encodeRelativeString): Always set pathEncoding to UTF-8.
386
387 2006-06-24  Graham Dennis  <Graham.Dennis@gmail.com>
388
389         Reviewed by Darin, landed by ap.
390         
391         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9467
392           TreeWalker/NodeIterator do not restrict the traversal
393         
394         Test: traversal/stay-within-root.html
395
396         * dom/Node.cpp:
397         (WebCore::Node::traversePreviousNode):
398         * dom/Node.h:
399         Add a stayWithin argument to traversePreviousNode just like the other
400         traversal functions
401         * dom/NodeIterator.cpp:
402         (WebCore::NodeIterator::findNextNode):
403         (WebCore::NodeIterator::findPreviousNode):
404         Ensure that when moving forward or backward that the root node is not
405         exited
406         * dom/TreeWalker.cpp:
407         (WebCore::TreeWalker::previousNode):
408         (WebCore::TreeWalker::nextNode):
409         Ditto
410         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
411
412 2006-06-24  Jonas Witt <jonas.witt@gmail.com>
413
414         Reviewed by ggaren, landed by ap.
415
416         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9181
417           Complete DOMUIEvent Obj-C API to reflect UIEvent
418
419         * WebCore.exp: add new classes DOMKeyboardEvent and DOMWheelEvent to the exported 
420           symbols list of WebCore.framework
421
422         Updated DOMUIEvent to include all DOM Level 2 properties
423         Added DOMKeyboardEvent (DOM Level 3)
424         Added two non-W3C accessors (keyCode, charCode) of DOMKeyboardEvent to a separate file (DOMEventsNonstandard)
425         Added DOMWheelEvent (non-W3C) in separate file (DOMEventsNonstandard)
426         Added this file (DOMEventsNonstandard) to the build process
427
428         * WebCore.xcodeproj/project.pbxproj:
429         * bindings/objc/DOM.h:
430         * bindings/objc/DOMEvents.h:
431         * bindings/objc/DOMEvents.mm:
432         (+[DOMEvent _eventWith:]):
433         (-[DOMUIEvent _UIEvent]):
434         (-[DOMUIEvent view]):
435         (-[DOMUIEvent detail]):
436         (-[DOMUIEvent initUIEvent:::::]):
437         (-[DOMKeyboardEvent _keyboardEvent]):
438         (-[DOMKeyboardEvent keyIdentifier]):
439         (-[DOMKeyboardEvent keyLocation]):
440         (-[DOMKeyboardEvent ctrlKey]):
441         (-[DOMKeyboardEvent shiftKey]):
442         (-[DOMKeyboardEvent altKey]):
443         (-[DOMKeyboardEvent metaKey]):
444         (-[DOMKeyboardEvent getModifierState:]):
445         (-[DOMMouseEvent button]):
446         * bindings/objc/DOMEventsNonstandard.mm: Added.
447         (-[DOMWheelEvent _wheelEvent]):
448         (-[DOMWheelEvent screenX]):
449         (-[DOMWheelEvent screenY]):
450         (-[DOMWheelEvent clientX]):
451         (-[DOMWheelEvent clientY]):
452         (-[DOMWheelEvent ctrlKey]):
453         (-[DOMWheelEvent shiftKey]):
454         (-[DOMWheelEvent altKey]):
455         (-[DOMWheelEvent metaKey]):
456         (-[DOMWheelEvent isHorizontal]):
457         (-[DOMWheelEvent wheelDelta]):
458         (-[DOMKeyboardEvent _keyboardEvent]):
459         (-[DOMKeyboardEvent keyCode]):
460         (-[DOMKeyboardEvent charCode]):
461         * bindings/objc/DOMPrivate.h:
462
463 2006-06-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
464
465         Reviewed and landed by ap.
466
467         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9563
468           Remove unused layoutSuppressed field and inLayout() method
469
470         No test added because there is no change in functionality.
471
472         * page/FrameView.cpp:
473         (WebCore::FrameViewPrivate::reset):
474         (WebCore::FrameView::layout):
475         * page/FrameView.h:
476         * rendering/RenderView.cpp:
477         (WebCore::RenderView::layout):
478
479 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
480
481         Reviewed by Darin.
482
483         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8177
484         Javascript search incredibly slow
485
486         No change in functionality, thus no test.
487
488         Use info sharing for named collections, too. Moved shared HTMLCollection infos from HTMLDocument 
489         to Document.  Renamed collection types to use the preferred WebKit style. Replaced direct
490         HTMLCollection creation with using accessors from Document in a few places.
491
492         * bindings/objc/DOMHTML.mm:
493         (-[DOMHTMLElement children]):
494         (-[DOMHTMLDocument images]):
495         (-[DOMHTMLDocument applets]):
496         (-[DOMHTMLDocument links]):
497         (-[DOMHTMLDocument forms]):
498         (-[DOMHTMLDocument anchors]):
499         (-[DOMHTMLMapElement areas]):
500         (-[DOMHTMLTableSectionElement rows]):
501         (-[DOMHTMLTableElement rows]):
502         (-[DOMHTMLTableElement tBodies]):
503         (-[DOMHTMLTableRowElement cells]):
504         * dom/Document.cpp:
505         (WebCore::Document::images):
506         (WebCore::Document::applets):
507         (WebCore::Document::embeds):
508         (WebCore::Document::objects):
509         (WebCore::Document::scripts):
510         (WebCore::Document::links):
511         (WebCore::Document::forms):
512         (WebCore::Document::anchors):
513         (WebCore::Document::all):
514         (WebCore::Document::windowNamedItems):
515         (WebCore::Document::documentNamedItems):
516         (WebCore::Document::nameCollectionInfo):
517         * dom/Document.h:
518         (WebCore::Document::collectionInfo):
519         * html/HTMLCollection.cpp:
520         (WebCore::HTMLCollection::HTMLCollection):
521         (WebCore::HTMLCollection::traverseNextItem):
522         (WebCore::HTMLCollection::checkForNameMatch):
523         (WebCore::HTMLCollection::updateNameCache):
524         * html/HTMLCollection.h:
525         (WebCore::HTMLCollection::):
526         * html/HTMLDocument.h:
527         * html/HTMLElement.cpp:
528         (WebCore::HTMLElement::children):
529         * html/HTMLMapElement.cpp:
530         (WebCore::HTMLMapElement::areas):
531         * html/HTMLNameCollection.h:
532         * html/HTMLNameCollection.cpp:
533         (WebCore::HTMLNameCollection::HTMLNameCollection):
534         (WebCore::HTMLNameCollection::traverseNextItem):
535         * html/HTMLFormCollection.cpp:
536         * html/HTMLOptionsCollection.cpp:
537         (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
538         * html/HTMLSelectElement.h:
539         (WebCore::HTMLSelectElement::collectionInfo):
540         * html/HTMLTableElement.cpp:
541         (WebCore::HTMLTableElement::rows):
542         (WebCore::HTMLTableElement::tBodies):
543         * html/HTMLTableRowElement.cpp:
544         (WebCore::HTMLTableRowElement::cells):
545         * html/HTMLTableSectionElement.cpp:
546         (WebCore::HTMLTableSectionElement::rows):
547         * kwq/WebCoreAXObject.mm:
548         (-[WebCoreAXObject accessibilityAttributeValue:]):
549         * page/Frame.cpp:
550         (WebCore::Frame::gotoAnchor):
551
552 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
553
554         Reviewed by Darin.
555
556         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9418
557         WebKit will not build when Space exists in path
558
559         * WebCore.xcodeproj/project.pbxproj: Enclose search paths in quotes; create symlinks to 
560         avoid passing paths with spaces to make.
561
562 2006-06-23  Tim Omernick  <timo@apple.com>
563
564         Reviewed by Tim Hatcher.
565
566         <rdar://problem/4560947> Leopard REGRESSION: Dragging to TileGame Widget is broken
567
568         * page/FrameView.cpp:
569         (WebCore::FrameView::updateDragAndDrop):
570         Use the passed mouse event, instead of the "current" event.  There is no such thing as
571         a "drag event".  Asking for the current event during a drag returns a weird system-
572         internal event with an invalid mouse location.
573
574 2006-06-23  Timothy Hatcher  <timothy@apple.com>
575
576         Reviewed by Eric.
577
578         Manual test added: cursor.html
579
580         Bug 9560: should support new CSS3 cursor types to get more resizing directions
581         http://bugzilla.opendarwin.org/show_bug.cgi?id=9560
582
583         Adds support for ew-resize, ns-resize, nesw-resize, nwse-resize,
584         col-resize and row-resize CSS3 cursor values.
585
586         Also converted some of the cursor images to grayscale tiffs,
587         some were RGB but had no color data.
588
589         * Resources/eastResizeCursor.tiff:
590         * Resources/eastWestResizeCursor.tiff: Added.
591         * Resources/helpCursor.tiff:
592         * Resources/moveCursor.tiff:
593         * Resources/northEastResizeCursor.tiff:
594         * Resources/northEastSouthWestResizeCursor.tiff: Added.
595         * Resources/northResizeCursor.tiff:
596         * Resources/northSouthResizeCursor.tiff: Added.
597         * Resources/northWestResizeCursor.tiff:
598         * Resources/northWestSouthEastResizeCursor.tiff: Added.
599         * Resources/southEastResizeCursor.tiff:
600         * Resources/southResizeCursor.tiff:
601         * Resources/southWestResizeCursor.tiff:
602         * Resources/textAreaResizeCorner.tiff:
603         * Resources/waitCursor.tiff:
604         * Resources/westResizeCursor.tiff:
605         * WebCore.xcodeproj/project.pbxproj:
606         * css/CSSComputedStyleDeclaration.cpp:
607         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
608         * css/CSSValueKeywords.in:
609         * css/cssparser.cpp:
610         (WebCore::CSSParser::parseValue):
611         * manual-tests/cursor.html: Added.
612         * page/FrameView.cpp:
613         (WebCore::selectCursor):
614         * platform/Cursor.h:
615         * platform/mac/CursorMac.mm:
616         (WebCore::northSouthResizeCursor):
617         (WebCore::eastWestResizeCursor):
618         (WebCore::northEastSouthWestResizeCursor):
619         (WebCore::northWestSouthEastResizeCursor):
620         (WebCore::columnResizeCursor):
621         (WebCore::rowResizeCursor):
622         * platform/win/CursorWin.cpp:
623         (WebCore::northSouthResizeCursor):
624         (WebCore::eastWestResizeCursor):
625         (WebCore::northEastSouthWestResizeCursor):
626         (WebCore::northWestSouthEastResizeCursor):
627         (WebCore::columnResizeCursor):
628         (WebCore::rowResizeCursor):
629         * rendering/render_style.h: cursor needs 5 bits now
630
631 2006-06-23  John Sullivan  <sullivan@apple.com>
632
633         Reviewed by Tim Omernick
634         
635         - fixed <rdar://problem/4597685> stale rects for document markers can be left behind in certain cases
636
637         * dom/Document.h:
638         * dom/Document.cpp:
639         (WebCore::Document::setRenderedRectForMarker):
640         changed parameter from IntRect to const IntRect& at Darin's request
641         (WebCore::Document::invalidateRenderedRectsForMarkersInRect):
642         new method, tests whether the rendered rect for each marker intersects the
643         passed rect. If so, sets the rendered rect back to the placeholder rect that
644         means that the rect for this marker isn't known.
645         
646         * page/Frame.cpp:
647         (WebCore::Frame::paint):
648         call invalidateRenderedRectsForMarkersInRect on the rect we're about to paint.
649         This ensures that old stale rects won't be preserved if the associated marker
650         has moved such that it is out of the painted area.
651
652 2006-06-23  Justin Garcia  <justin.garcia@apple.com>
653
654         Reviewed by levi
655
656         <rdar://problem/4527702>
657         REGRESSION: Quote bars go away on first paragraph when I delete reply text
658
659         * editing/DeleteSelectionCommand.cpp:
660         (WebCore::DeleteSelectionCommand::mergeParagraphs):
661         Add a rule for when to merge into empty blocks.
662
663 === WebCore-521.13 ===
664
665 2006-06-23  Patrick Beard  <beard@apple.com>
666
667         Reviewed by Tim Hatcher.
668
669         <rdar://problem/4223619> Safari crashed in -[NSFont __isSystemFont]
670         CFRetain and CFRelease NSFont's when FontPlatformData has a reference.
671         We only do this when GC is enabled for performance reasons.
672         No tests possible.
673
674         * platform/mac/FontPlatformData.h:
675         (WebCore::FontPlatformData::FontPlatformData):
676         (WebCore::FontPlatformData::~FontPlatformData):
677
678 2006-06-23  Justin Garcia  <justin.garcia@apple.com>
679
680         Reviewed by levi
681         
682         <http://bugzilla.opendarwin.org/show_bug.cgi?id=8074>
683         Caret before/after block tables is too small
684         <rdar://problem/4598331>
685         right arrow out of a table shows cursor in a weird place
686
687         * rendering/RenderBox.cpp:
688         (WebCore::RenderBox::caretRect): Don't propagate to children, 
689         VisiblePositions inside containers don't refer to children.
690         Don't use the font height for tables.
691
692 2006-06-23  Brady Eidson  <beidson@apple.com>
693
694         Reviewed by Kevin.
695
696         Added 64-bit String::number() functions
697
698         * platform/PlatformString.h:
699         * platform/String.cpp:
700         (WebCore::String::number):
701
702 2006-06-22  Mitz Pettel  <opendarwin.org@mitzpettel.com>
703
704         Reviewed by Hyatt.
705
706         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9497
707           REGRESSION: Incomplete repainting when scrolling thumbnails on Flickr
708
709         Test: fast/repaint/clipped-relative.html
710
711         * page/FrameView.cpp:
712         (WebCore::FrameView::layout):
713         * rendering/RenderBlock.cpp:
714         (WebCore::RenderBlock::removePositionedObjects): Removed call to computeRepaintRects().
715         Previously, it was needed to update the cached rects before RenderBox::setStyle()
716         called updateLayerPositions().
717         * rendering/RenderBox.cpp:
718         (WebCore::RenderBox::setStyle): Changed to call updateLayerPositions() for a newly-
719         created layer only if it does not need layout. Otherwise,  updateLayerPositions() will
720         be called after layout. This saves a repaint in some cases.
721         * rendering/RenderLayer.cpp:
722         (WebCore::RenderLayer::checkForRepaintOnResize): Renamed computeRepaintRects() to
723         this and deleted the code that cached the absolute position and repaint rects.
724         (WebCore::RenderLayer::updateLayerPositions): Added code to cache the absolute
725         position and repaint rects right after updating the layer's position.
726         * rendering/RenderLayer.h:
727
728 2006-06-22  Beth Dakin  <bdakin@apple.com>
729
730         Reviewed by Maciej.
731
732         Fix for <rdar://problem/4599015> REGRESSION: Hand on clock widget 
733         don't appear at all
734
735         This regression was caused by <rdar://problem/4567520> HIDPI: pixel 
736         cracks in weather widget at 1.83 scaling
737
738         * html/CanvasRenderingContext2D.cpp:
739         (WebCore::CanvasRenderingContext2D::drawImage): Do the contains 
740         check before rounding to integral device pixels.
741
742 2006-06-22  Anders Carlsson  <acarlsson@apple.com>
743
744         Reviewed by John.
745
746         <rdar://problem/4529334> REGRESSION: Can't configure RadarInMotion widget for U.S. locations on Leopard (Javascript errors)
747         
748         * dom/Document.cpp:
749         (WebCore::Document::completeURL):
750         Check if both the URL and base URL are empty instead of using URL() which returns "about:blank" if the URL is empty.
751         
752 2006-06-22  Anders Carlsson  <acarlsson@apple.com>
753
754         Reviewed by Maciej.
755
756         <rdar://problem/4499675> Package Tracker widget always crashes in WebCore::Frame::jScriptEnabled() const + 0
757
758         * html/HTMLParser.cpp:
759         (WebCore::HTMLParser::noscriptCreateErrorCheck):
760         (WebCore::HTMLParser::canvasCreateErrorCheck):
761         (WebCore::HTMLParser::isInline):
762         Add null-checks for document->frame() since it can be 0 for documents created using createHTMLDocument.
763
764 2006-06-22  Anders Carlsson  <acarlsson@apple.com>
765
766         Reviewed by Maciej.
767
768         <rdar://problem/4524840> Entities contained in DOCTYPE referenced DTD in XSLT source document are unknown
769         
770         * dom/xml_tokenizer.cpp:
771         (WebCore::shouldAllowExternalLoad):
772         Use correct path for the catalog.
773         
774         (WebCore::errorFunc):
775         Add error function to keep parser errors from going to the console.
776         
777         (WebCore::XMLTokenizer::write):
778         Remove if (0 &&)
779         
780         (WebCore::XMLTokenizer::end):
781         Pass DocLoader to xmlDocPtrForString.
782         
783         (WebCore::xmlDocPtrForString):        
784         * dom/xml_tokenizer.h:
785         Add DocLoader argument to xmlDocPtrForString so external DTDs and entities can be loaded.
786         
787         * xml/XSLTProcessor.cpp:
788         (WebCore::xmlDocPtrFromNode):
789         Pass DocLoader to xmlDocPtrForString
790         
791 >>>>>>> .r15049
792 2006-06-21  David Hyatt  <hyatt@apple.com>
793
794         Back out -webkit-overlay and just rename it back to overlay.
795
796         Reviewed by darin
797
798         * css/CSSComputedStyleDeclaration.cpp:
799         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
800         * css/CSSValueKeywords.in:
801         * css/cssparser.cpp:
802         (WebCore::CSSParser::parseValue):
803         * css/cssstyleselector.cpp:
804         (WebCore::CSSStyleSelector::applyProperty):
805
806 2006-06-21  Justin Garcia  <justin.garcia@apple.com>
807
808         Reviewed by levi
809
810         * editing/DeleteSelectionCommand.cpp:
811         (WebCore::DeleteSelectionCommand::initializePositionData): Fix a bug in the code
812         to stop merges across table cells.
813         (WebCore::DeleteSelectionCommand::mergeParagraphs): Move the code to stop merges
814         across table cells to initializePositionData so that its changes to 
815         m_mergeBlocksAfterDelete can take effect on the endingPosition.
816         * editing/InsertParagraphSeparatorCommand.cpp:
817         (WebCore::InsertParagraphSeparatorCommand::doApply): Turn into an InsertLineBreak
818         instead of splitting/cloning a table cell.
819
820 2006-06-21  Beth Dakin  <bdakin@apple.com>
821
822         Reviewed by John.
823
824         Fix for <rdar://problem/3914965> Misspelled text underline doesn't 
825         look right at non-standard scale factors
826
827         * platform/mac/GraphicsContextMac.mm:
828         (WebCore::GraphicsContext::drawLineForMisspelling): We need to call  
829         into our previously-created SPI for pattern-drawing so that the 
830         phase is right at all scale factors.
831
832 2006-06-21  David Hyatt  <hyatt@apple.com>
833
834         Fix for 7362, implement the CSS3 overflow-x and overflow-y properties.
835
836         Reviewed by adele
837
838         * WebCore.xcodeproj/project.pbxproj:
839         * css/CSSComputedStyleDeclaration.cpp:
840         (WebCore::):
841         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
842         * css/CSSPropertyNames.in:
843         * css/cssparser.cpp:
844         (WebCore::CSSParser::parseValue):
845         * css/cssstyleselector.cpp:
846         (WebCore::CSSStyleSelector::adjustRenderStyle):
847         (WebCore::CSSStyleSelector::applyProperty):
848         * page/FrameView.cpp:
849         (WebCore::FrameView::applyOverflowToViewport):
850         (WebCore::FrameView::layout):
851         * rendering/RenderBlock.cpp:
852         (WebCore::RenderBlock::layoutBlock):
853         (WebCore::RenderBlock::determineHorizontalPosition):
854         (WebCore::RenderBlock::layoutBlockChildren):
855         (WebCore::RenderBlock::rightOffset):
856         (WebCore::RenderBlock::rightmostPosition):
857         (WebCore::RenderBlock::calcMinMaxWidth):
858         * rendering/RenderBox.cpp:
859         (WebCore::RenderBox::setStyle):
860         (WebCore::RenderBox::contentWidth):
861         (WebCore::RenderBox::contentHeight):
862         (WebCore::RenderBox::sizesToIntrinsicWidth):
863         (WebCore::RenderBox::calcHeight):
864         (WebCore::RenderBox::calcPercentageHeight):
865         * rendering/RenderFlexibleBox.cpp:
866         (WebCore::RenderFlexibleBox::layoutBlock):
867         * rendering/RenderLayer.cpp:
868         (WebCore::RenderLayer::scrollToOffset):
869         (WebCore::RenderLayer::shouldAutoscroll):
870         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
871         (WebCore::RenderLayer::styleChanged):
872         * rendering/RenderLayer.h:
873         * rendering/RenderObject.cpp:
874         (WebCore::RenderObject::clientWidth):
875         (WebCore::RenderObject::clientHeight):
876         * rendering/RenderObject.h:
877         (WebCore::RenderObject::hasAutoVerticalScrollbar):
878         (WebCore::RenderObject::hasAutoHorizontalScrollbar):
879         (WebCore::RenderObject::scrollsOverflow):
880         (WebCore::RenderObject::scrollsOverflowX):
881         (WebCore::RenderObject::scrollsOverflowY):
882         (WebCore::RenderObject::includeVerticalScrollbarSize):
883         (WebCore::RenderObject::includeHorizontalScrollbarSize):
884         * rendering/RenderTextArea.cpp:
885         (WebCore::RenderTextArea::setStyle):
886         * rendering/RenderTextField.cpp:
887         (WebCore::RenderTextField::createDivStyle):
888         (WebCore::RenderTextField::calcHeight):
889         (WebCore::RenderTextField::calcMinMaxWidth):
890         * rendering/bidi.cpp:
891         (WebCore::RenderBlock::layoutInlineChildren):
892         * rendering/render_style.cpp:
893         (WebCore::RenderStyle::diff):
894         * rendering/render_style.h:
895         (WebCore::):
896         (WebCore::RenderStyle::NonInheritedFlags::operator==):
897         (WebCore::RenderStyle::setBitDefaults):
898         (WebCore::RenderStyle::overflowX):
899         (WebCore::RenderStyle::overflowY):
900         (WebCore::RenderStyle::setOverflowX):
901         (WebCore::RenderStyle::setOverflowY):
902         (WebCore::RenderStyle::initialOverflowX):
903         (WebCore::RenderStyle::initialOverflowY):
904
905 2006-06-21  Justin Garcia  <justin.garcia@apple.com>
906
907         Reviewed by levi
908         
909         <rdar://problem/4590366>
910         REGRESSION: Selection incorrectly paints gaps on TOT
911
912         * dom/Document.cpp:
913         (WebCore::Document::updateSelection): Use the leftmost candidate for the end of the
914         selection and the rightmost candidate for the start of the selection.
915         * dom/Position.cpp:
916         (WebCore::Position::upstream): Cross line wraps so that we can use upstream/downstream
917         to get to candidates before/after linewraps.
918         (WebCore::Position::downstream):
919         (WebCore::Position::inRenderedContent):
920         * editing/DeleteSelectionCommand.cpp:
921         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
922         (WebCore::DeleteSelectionCommand::mergeParagraphs):
923         * editing/InsertParagraphSeparatorCommand.cpp:
924         (WebCore::InsertParagraphSeparatorCommand::doApply): 
925         Ensure that the leftmost candidate is used.  We should sample the style from that one.
926         When the block to insert is after a br, a br should be inserted even in strict mode.
927         * editing/InsertTextCommand.cpp:
928         (WebCore::InsertTextCommand::input): 
929         Insert at the leftmost candidate, get rid of a use of trailingWhitespacePosition.
930         Don't apply a style if its unnecessary.
931         * editing/ReplaceSelectionCommand.cpp:
932         (WebCore::ReplaceSelectionCommand::doApply): "pos" can be invalidated, don't use it.
933         * editing/VisiblePosition.cpp:
934         Renamed initDeepPosition and made it return the canonical position.
935         (WebCore::VisiblePosition::init):
936         (WebCore::VisiblePosition::canonicalPosition):
937         * editing/VisiblePosition.h: 
938         (WebCore::VisiblePosition::characterBefore): Added.
939         * editing/visible_units.cpp:
940         (WebCore::startOfParagraph):
941         * rendering/InlineTextBox.cpp:
942         (WebCore::InlineTextBox::selectionState): When a selection ends at a line wrap, it shouldn't extend
943         onto the next line.
944
945 2006-06-21  David Hyatt  <hyatt@apple.com>
946
947         Reviewed and committed by Beth.
948
949         Fix for <rdar://problem/4595337> Resizing a containing block 
950         strictly vertically does not cause contained height:100% element to 
951         also be resized.
952
953         * rendering/RenderBlock.cpp:
954         (WebCore::RenderBlock::layoutBlockChildren): Also layout if the 
955         child's min or max height is a percent.
956
957 2006-06-21  Anders Carlsson  <acarlsson@apple.com>
958
959         Reviewed by Geoff.
960
961         http://bugzilla.opendarwin.org/show_bug.cgi?id=6058
962         XMLTokenizer runs all <script> tags at once instead of as they're encountered
963         
964         * dom/xml_tokenizer.cpp:
965         (WebCore::XMLTokenizer::XMLTokenizer):
966         Initialize new members.
967         
968         (WebCore::XMLTokenizer::endElementNs):
969         If we've encountered a script tag, execute the script here. If the script
970         tag refers to an external resource, pause the parser while loading it.
971         
972         (WebCore::XMLTokenizer::end):
973         Move code from finish() to here
974         
975         (WebCore::XMLTokenizer::finish):
976         Only call end() if the parser isn't paused.
977         
978         (WebCore::XMLTokenizer::notifyFinished):
979         Evaluate the script here and resume the parser.
980         
981         (WebCore::XMLTokenizer::resumeParsing):
982         If finish() was called, call end() after writing all data.
983
984 2006-06-21  Steve Falkenburg  <sfalken@apple.com>
985
986         Fix build break
987
988         * platform/win/TemporaryLinkStubs.cpp:
989         (FrameWin::shouldInterruptJavaScript):
990
991 2006-06-21  Anders Carlsson  <acarlsson@apple.com>
992
993         Move FrameWin::shouldInterruptJavaScript to TemporaryLinkStubs.cpp
994         
995         * bridge/win/FrameWin.cpp:
996         * platform/win/TemporaryLinkStubs.cpp:
997         (FrameWin::shouldInterruptJavaScript):
998
999 2006-06-21  Ben Goodger <bengoodger@gmail.com>
1000
1001         Reviewed by Maciej. 
1002
1003         Fix for: http://bugzilla.opendarwin.org/show_bug.cgi?id=9523
1004         More Win32 build bustage.
1005  
1006         * WebCore.vcproj/WebCore/WebCore.vcproj:
1007         * bridge/win/FrameWin.cpp:
1008         (WebCore::FrameWin::shouldInterruptJavaScript):
1009         * bridge/win/FrameWin.h:
1010
1011 2006-06-20  Adele Peterson  <adele@apple.com>
1012
1013         Reviewed by Anders.
1014
1015         Fix for: http://bugzilla.opendarwin.org/show_bug.cgi?id=8948
1016         Switch to use new text field implementation for <textarea>
1017
1018         * css/html4.css:
1019         * html/HTMLTextAreaElement.cpp:
1020         (WebCore::HTMLTextAreaElement::selectionStart):
1021         (WebCore::HTMLTextAreaElement::selectionEnd):
1022         (WebCore::HTMLTextAreaElement::setSelectionStart):
1023         (WebCore::HTMLTextAreaElement::setSelectionEnd):
1024         (WebCore::HTMLTextAreaElement::select):
1025         (WebCore::HTMLTextAreaElement::setSelectionRange):
1026         (WebCore::HTMLTextAreaElement::createRenderer):
1027         (WebCore::HTMLTextAreaElement::appendFormData):
1028         (WebCore::HTMLTextAreaElement::isKeyboardFocusable):
1029         (WebCore::HTMLTextAreaElement::isMouseFocusable):
1030         (WebCore::HTMLTextAreaElement::focus):
1031         (WebCore::HTMLTextAreaElement::defaultEventHandler):
1032         (WebCore::HTMLTextAreaElement::updateValue):
1033         (WebCore::HTMLTextAreaElement::setValue):
1034
1035 2006-06-20  Brady Eidson  <beidson@apple.com>
1036
1037         Reviewed by Maciej
1038
1039         Fixed capitalization mistake that I made, someone else fixed, then I accidentally made it go back to the old way
1040
1041         * icon/SQLStatement.cpp:
1042
1043 2006-06-20  Brady Eidson  <beidson@apple.com>
1044
1045         Reviewed by Maciej.
1046
1047         More changes/additions setting the stage for the major IconDatabase hookup.
1048
1049         * WebCore.xcodeproj/project.pbxproj:  Added SQLTransaction.cpp
1050
1051         * bridge/mac/WebCoreIconDatabaseBridge.h: Added call-throughs and translations to pass WebKit DB to WebCore DB
1052         * bridge/mac/WebCoreIconDatabaseBridge.mm:
1053         (+[WebCoreIconDatabaseBridge sharedBridgeInstance]):
1054         (-[WebCoreIconDatabaseBridge setPrivateBrowsingEnabled:]):
1055         (-[WebCoreIconDatabaseBridge iconForURL:withSize:]):
1056         (-[WebCoreIconDatabaseBridge iconURLForURL:]):
1057         (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
1058         (-[WebCoreIconDatabaseBridge retainIconForURL:]):
1059         (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
1060         (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
1061         (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
1062         (-[WebCoreIconDatabaseBridge _setIconURL:forURL:]):
1063         (-[WebCoreIconDatabaseBridge _hasIconForIconURL:]):
1064
1065         * bridge/mac/WebCorePageBridge.mm: Added WebCore's IconDatabase logging channel to the user-prefs check
1066         (initializeLoggingChannelsIfNecessary):
1067
1068         * icon/IconDatabase.cpp:  Added stubs and basic SQL usage to create the sqlite DB and respond to WebKit calls
1069         (WebCore::IconDatabase::IconDatabase):
1070         (WebCore::IconDatabase::open):
1071         (WebCore::IconDatabase::close):
1072         (WebCore::IconDatabase::isValidDatabase):
1073         (WebCore::IconDatabase::recreateDatabase):
1074         (WebCore::IconDatabase::setPrivateBrowsingEnabled):
1075         (WebCore::IconDatabase::iconForURL):
1076         (WebCore::IconDatabase::iconURLForURL):
1077         (WebCore::IconDatabase::defaultIcon):
1078         (WebCore::IconDatabase::retainIconForURL):
1079         (WebCore::IconDatabase::releaseIconForURL):
1080         (WebCore::IconDatabase::setIconForIconURL):
1081         (WebCore::IconDatabase::setHaveNoIconForIconURL):
1082         (WebCore::IconDatabase::setIconURLForPageURL):
1083         (WebCore::IconDatabase::hasIconForIconURL):
1084
1085         * icon/IconDatabase.h:  WebIcon will be an internal class used in IconDatabase but is not complete yet
1086         (WebCore::WebIcon::getExpiration):
1087         (WebCore::WebIcon::getTouch):
1088
1089         * icon/SQLDatabase.cpp:  Added more SQLite convenience methods
1090         (SQLDatabase::setFullsync):
1091         (SQLDatabase::setBusyTimeout):
1092         (SQLDatabase::setBusyHandler):
1093         * icon/SQLDatabase.h:
1094         * icon/SQLStatement.cpp:
1095         (WebCore::SQLStatement::returnsAtLeastOneResult):
1096
1097         * icon/SQLTransaction.cpp: Added basic commit/rollback support with this simple class
1098         (SQLTransaction::SQLTransaction):
1099         (SQLTransaction::~SQLTransaction):
1100         (SQLTransaction::begin):
1101         (SQLTransaction::commit):
1102         (SQLTransaction::rollback):
1103
1104 2006-06-20  Adele Peterson  <adele@apple.com>
1105
1106         Reviewed by Maciej.
1107
1108         Fixes for:
1109         http://bugzilla.opendarwin.org/show_bug.cgi?id=8724
1110         REGRESSION: onSelect handler doesn't work for text fields
1111
1112         http://bugzilla.opendarwin.org/show_bug.cgi?id=7676
1113         REGRESSION: Selection methods on new text fields don't work if text field is hidden
1114
1115         http://bugzilla.opendarwin.org/show_bug.cgi?id=8867
1116         REGRESSION: selectionStart/End return 0 for input element once it no longer has focus
1117
1118         Implemented onSelect for new text fields and textareas.  Also fixed selection restore
1119         behavior to better match other browsers and Safari 2.0 behavior.
1120
1121         Tests:
1122         * fast/forms/input-selection-restore.html
1123         * fast/forms/input-selection-hidden.html
1124         * fast/forms/onselect-textarea.html
1125         * fast/forms/onselect-textfield.html
1126
1127         * html/HTMLInputElement.h: (WebCore::HTMLInputElement::cacheSelection): Added.
1128         * html/HTMLInputElement.cpp:
1129         (WebCore::HTMLInputElement::init): Initializes cached selection.
1130         (WebCore::HTMLInputElement::selectionStart): If this element doesn't have focus, return the cached selection value.
1131         (WebCore::HTMLInputElement::selectionEnd): ditto.
1132         (WebCore::HTMLInputElement::setValue): Restore a caret at the starting point of the old selection.  Matches Safari 2.0 behavior.
1133
1134         * html/HTMLTextAreaElement.h: (WebCore::HTMLTextAreaElement::cacheSelection): Added.
1135         * html/HTMLTextAreaElement.cpp:
1136         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement): Initializes cached selection.
1137         (WebCore::HTMLTextAreaElement::selectionStart): If this element doesn't have focus, return the cached selection value.
1138         (WebCore::HTMLTextAreaElement::selectionEnd): ditto.
1139         (WebCore::HTMLTextAreaElement::focus): If this is the first focus, set a caret at the end of the text.  Otherwise,
1140         restore the cached selection.  This matches other browsers' behavior.
1141         (WebCore::HTMLTextAreaElement::setValue): Restore a caret at the starting point of the old selection.  Matches Safari 2.0 behavior.
1142
1143         * page/Frame.h: Added notifyRendererOfSelectionChange method. 
1144         * page/Frame.cpp:
1145         (WebCore::Frame::notifyRendererOfSelectionChange): Added.  Calls selectionChanged for text fields and textareas.  Forwards a userTriggered
1146         argument so selectionChanged knows whether or not to fire onSelect.
1147         (WebCore::Frame::setSelection): Calls notifyRendererOfSelectionChange(false).  This gets called for all selection changes, so the renderer
1148         can always update its cached selection values.
1149         (WebCore::Frame::handleMouseReleaseEvent): Calls notifyRendererOfSelectionChange(true) so onSelect will get fired when the user is done
1150         making a selection with the mouse.
1151         * bridge/mac/WebCoreFrameBridge.mm:
1152         (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]): Calls notifyRendererOfSelectionChange(true) so onSelect gets
1153         fired when the user makes a selection with the keyboard.
1154         (-[WebCoreFrameBridge alterCurrentSelection:verticalDistance:]): ditto.
1155
1156         * rendering/RenderTextField.h: Add userTriggered parameter to selectionChanged.
1157         * rendering/RenderTextField.cpp:
1158         (WebCore::RenderTextField::setSelectionRange): For visibility:hidden, cache the selection and 
1159         return early since we won't be able to actually set the selection.
1160         (WebCore::RenderTextField::selectionChanged): Caches the selection.  
1161         If the selection is a range, and its triggered by user action, then fire the onSelect event.
1162
1163 2006-06-21  Anders Carlsson  <acarlsson@apple.com>
1164
1165         * bridge/win/FrameWin.cpp:
1166         (WebCore::shouldInterruptJavaScript):
1167         * bridge/win/FrameWin.h:
1168         Try fixing the Windows build.
1169
1170 2006-06-20  Adele Peterson  <adele@apple.com>
1171
1172         RS by Tim Hatcher.
1173
1174         Renamed RenderSelect to DeprecatedRenderSelect to prepare for new popup menu and list menu implementations.
1175        
1176         * WebCore.xcodeproj/project.pbxproj:
1177         * html/HTMLOptionElement.h:
1178         * html/HTMLSelectElement.cpp:
1179         (WebCore::HTMLSelectElement::recalcStyle):
1180         (WebCore::HTMLSelectElement::createRenderer):
1181         (WebCore::HTMLSelectElement::setRecalcListItems):
1182         (WebCore::HTMLSelectElement::reset):
1183         (WebCore::HTMLSelectElement::notifyOptionSelected):
1184         * html/HTMLSelectElement.h:
1185         * rendering/DeprecatedRenderSelect.cpp: Added.
1186         (WebCore::DeprecatedRenderSelect::DeprecatedRenderSelect):
1187         (WebCore::DeprecatedRenderSelect::setWidgetWritingDirection):
1188         (WebCore::DeprecatedRenderSelect::setStyle):
1189         (WebCore::DeprecatedRenderSelect::updateFromElement):
1190         (WebCore::DeprecatedRenderSelect::baselinePosition):
1191         (WebCore::DeprecatedRenderSelect::calcMinMaxWidth):
1192         (WebCore::DeprecatedRenderSelect::layout):
1193         (WebCore::DeprecatedRenderSelect::valueChanged):
1194         (WebCore::DeprecatedRenderSelect::selectionChanged):
1195         (WebCore::DeprecatedRenderSelect::setOptionsChanged):
1196         (WebCore::DeprecatedRenderSelect::createListBox):
1197         (WebCore::DeprecatedRenderSelect::updateSelection):
1198         * rendering/DeprecatedRenderSelect.h: Added.
1199         (WebCore::DeprecatedRenderSelect::renderName):
1200         * rendering/RenderSelect.cpp: Removed.
1201         * rendering/RenderSelect.h: Removed.
1202
1203 2006-06-20  Anders Carlsson  <acarlsson@apple.com>
1204
1205         Reviewed by Geoff.
1206
1207         http://bugzilla.opendarwin.org/show_bug.cgi?id=9509
1208         Would like a way to pause/resume XML parsing
1209
1210         * dom/xml_tokenizer.cpp:
1211         (WebCore::PendingCallbacks::PendingCallbacks):
1212         (WebCore::PendingCallbacks::appendStartElementNSCallback):
1213         (WebCore::PendingCallbacks::appendEndElementNSCallback):
1214         (WebCore::PendingCallbacks::appendCharactersCallback):
1215         (WebCore::PendingCallbacks::appendProcessingInstructionCallback):
1216         (WebCore::PendingCallbacks::appendCDATABlockCallback):
1217         (WebCore::PendingCallbacks::appendCommentCallback):
1218         (WebCore::PendingCallbacks::appendInternalSubsetCallback):
1219         (WebCore::PendingCallbacks::appendErrorCallback):
1220         (WebCore::PendingCallbacks::callAndRemoveFirstCallback):
1221         (WebCore::PendingCallbacks::isEmpty):
1222         (WebCore::PendingCallbacks::PendingCallback::~PendingCallback):
1223         (WebCore::PendingCallbacks::PendingStartElementNSCallback::~PendingStartElementNSCallback):
1224         (WebCore::PendingCallbacks::PendingStartElementNSCallback::call):
1225         (WebCore::PendingCallbacks::PendingEndElementNSCallback::call):
1226         (WebCore::PendingCallbacks::PendingCharactersCallback::~PendingCharactersCallback):
1227         (WebCore::PendingCallbacks::PendingCharactersCallback::call):
1228         (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::~PendingProcessingInstructionCallback):
1229         (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::call):
1230         (WebCore::PendingCallbacks::PendingCDATABlockCallback::~PendingCDATABlockCallback):
1231         (WebCore::PendingCallbacks::PendingCDATABlockCallback::call):
1232         (WebCore::PendingCallbacks::PendingCommentCallback::~PendingCommentCallback):
1233         (WebCore::PendingCallbacks::PendingCommentCallback::call):
1234         (WebCore::PendingCallbacks::PendingInternalSubsetCallback::~PendingInternalSubsetCallback):
1235         (WebCore::PendingCallbacks::PendingInternalSubsetCallback::call):
1236         (WebCore::PendingCallbacks::):
1237         New classes which manage a list of pending SAX callbacks that have not yet
1238         been sent to the tokenizer.
1239         
1240         (WebCore::XMLTokenizer::XMLTokenizer):
1241         Initialize new member variables.
1242         
1243         (WebCore::XMLTokenizer::~XMLTokenizer):
1244         Delete PendingCallbacks object.
1245         
1246         (WebCore::XMLTokenizer::write):
1247         If the parser is paused, queue the data to be written.
1248         
1249         (WebCore::XMLTokenizer::startElementNs):
1250         (WebCore::XMLTokenizer::endElementNs):
1251         (WebCore::XMLTokenizer::characters):
1252         (WebCore::XMLTokenizer::error):
1253         (WebCore::XMLTokenizer::processingInstruction):
1254         (WebCore::XMLTokenizer::cdataBlock):
1255         (WebCore::XMLTokenizer::comment):
1256         (WebCore::XMLTokenizer::internalSubset):
1257         If the parser has been paused, queue the callbacks instead.
1258
1259         (WebCore::XMLTokenizer::handleError):
1260         New function, called by both ::error and :PendingCallbacks::callAndRemoveFirstCallback
1261         
1262         (WebCore::XMLTokenizer::finish):
1263         (WebCore::XMLTokenizer::pauseParsing):
1264          Set m_parserPaused to true.
1265         
1266         (WebCore::XMLTokenizer::resumeParsing):
1267         Call the pending callbacks and then parse the pending source.
1268         
1269 2006-06-20  David Hyatt  <hyatt@apple.com>
1270
1271         Don't send the custom highlighter callback when painting is disabled.
1272
1273         Reviewed by harrison
1274
1275         * WebCore.xcodeproj/project.pbxproj:
1276         * rendering/InlineTextBox.cpp:
1277         (WebCore::InlineTextBox::paint):
1278
1279 2006-06-20  Anders Carlsson  <acarlsson@apple.com>
1280
1281         Reviewed by John
1282
1283         <rdar://problem/4592244> REGRESSION (417.9.3 - 420+): (some?) plain text files have all lines concatenated into one line
1284         
1285         * loader/TextDocument.cpp:
1286         (WebCore::TextTokenizer::checkBuffer):
1287         (WebCore::TextTokenizer::TextTokenizer):
1288         (WebCore::TextTokenizer::write):        
1289         (WebCore::TextTokenizer::finish):
1290         Add a text buffer which is used for translation of CR and CRLF to plain LF, 
1291         like the HTML tokenizer does.
1292
1293 2006-06-20  Maciej Stachowiak  <mjs@apple.com>
1294
1295         Reviewed by Eric.
1296
1297         - fix crasher on one of the layout tests caused by my recent checkin
1298
1299         * kcanvas/RenderSVGText.cpp:
1300         (WebCore::RenderSVGText::paint):
1301
1302 2006-06-19  Alexey Proskuryakov  <ap@nypop.com>
1303
1304         Reviewed by Darin.
1305
1306         - http://bugzilla.opendarwin.org/show_bug.cgi?id=5499
1307         Page reload does not send any cache control headers
1308
1309         Test: http/tests/misc/refresh-headers.php
1310
1311         * bindings/js/kjs_window.cpp:
1312         (KJS::LocationFunc::callAsFunction): Call scheduleRefresh() for Location::Reload.
1313
1314         * page/Frame.h: Add scheduleRefresh(). Don't derive from TransferJob or implement its methods - that was
1315         used only for storing response HTTP headers, which was an overkill.
1316
1317         * page/FramePrivate.h: Replace TransferJob with a HashMap for storing response headers.
1318
1319         * page/Frame.cpp:
1320         (WebCore::Frame::didOpenURL): Don't needlessly change d->m_cachePolicy. Don't create a TransferJob.
1321         (WebCore::Frame::stopLoading): Directly access the metadata map, instead of going through a TransferJob.
1322         (WebCore::Frame::receivedFirstData): Ditto.
1323         (WebCore::Frame::addMetaData): Ditto.
1324         (WebCore::Frame::scheduleRefresh): A new function that schedules a refresh, similarly to what
1325         scheduleRedirection() does.
1326         (WebCore::Frame::changeLocation): Set request.reload attribute based on the current cache policy.
1327
1328 2006-06-19  Ben Goodger  <bengoodger@gmail.com>
1329
1330         Reviewed by Darin.
1331
1332         http://bugzilla.opendarwin.org/show_bug.cgi?id=9501
1333         Windows build fails with link error CharsetTable not defined
1334
1335         * platform/make-charset-table.pl:
1336         (process_iana_charsets): Move test for equality to alias "None" until after
1337         normalization steps to ensure escape characters in the input data don't
1338         interfere with processing.  Convert nearby tabs to 4 spaces in this function.
1339
1340 2006-06-18  Maciej Stachowiak  <mjs@apple.com>
1341
1342         Reviewed by Darin.
1343
1344         - fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=9488
1345         "Animated GIFs do not respect transforms in SVG"
1346         
1347         http://bugzilla.opendarwin.org/show_bug.cgi?id=6946
1348         "SVG shows invalidation issues in WebKit"
1349         
1350         http://www.treebuilder.de/default.asp?file=441875.xml
1351         "Invalidation issues with "SVG 3d" demo"
1352         
1353         http://code.google.com/webstats/2005-12/pages.html
1354         "SVG text doesn't repaint correctly"
1355
1356         * kcanvas/KCanvasContainer.cpp:
1357         (WebCore::KCanvasContainer::computeAbsoluteRepaintRect): Override base class, and apply
1358         appropriate transforms, so damage rects in transformed SVG content get propagated up properly.
1359         (WebCore::KCanvasContainer::getAbsoluteRepaintRect): note a FIXME; this method
1360         seems wrong.
1361         * kcanvas/KCanvasContainer.h: Prototype new method.
1362
1363         * css/svg.css: Don't apply overflow:hidden to foreignObject, since that makes it a RenderLayer
1364         so it paints twice.
1365         * kcanvas/RenderForeignObject.cpp:
1366         (WebCore::RenderForeignObject::paint): Transform the damage rect before passing it down to HTML content,
1367         so everything paints that is supposed to. Also handle opacity here since we won't get layers.
1368         (WebCore::RenderForeignObject::computeAbsoluteRepaintRect): Override base class, and apply
1369         appropriate transforms, so damage rects in HTML embedded in SVG get propagated up properly.
1370         (WebCore::RenderForeignObject::requiresLayer): Never use a RenderLayer.
1371         (WebCore::RenderForeignObject::layout): Make sure to dirty our previous bounds when layout
1372         changes, as by transform.
1373         * kcanvas/RenderForeignObject.h:
1374
1375         * kcanvas/RenderSVGImage.cpp:
1376         (WebCore::RenderSVGImage::paint): Transform the damage rect when painting. Also handle opacity 
1377         here since we won't get layers.
1378         (WebCore::RenderForeignObject::computeAbsoluteRepaintRect): Override base class, and apply
1379         appropriate transforms, so damage rects in SVG images  get propagated up properly.
1380         (WebCore::RenderSVGImage::translationForAttributes): New helper method, factored out of below.
1381         (WebCore::RenderSVGImage::translateForAttributes): Use above.
1382         (WebCore::RenderSVGImage::requiresLayer): Never use a RenderLayer.
1383         (WebCore::RenderSVGImage::layout): Make sure to properly dirty the old bounds, accounting
1384         for transforms.
1385         (WebCore::RenderSVGImage::relativeBBox): Correct bbox computation.
1386         * kcanvas/RenderSVGImage.h:
1387
1388         * kcanvas/RenderSVGText.cpp:
1389         (WebCore::RenderSVGText::paint): Transform incoming damage rect. Handle opacity here since we
1390         won't get a layer.
1391         (WebCore::RenderSVGText::computeAbsoluteRepaintRect): Apply transforms.
1392         (WebCore::RenderSVGText::requiresLayer): Never use a RenderLayer.
1393         (WebCore::RenderSVGText::layout): Make sure to dirty the old bounds.
1394
1395         * platform/cg/GraphicsContextCG.cpp:
1396         (WebCore::GraphicsContext::roundToDevicePixels): Instead of transforming rect to device space
1397         and back to user space, do this for the origin and lower right corner of the rect. Otherwise the
1398         rect will get inflated if user space is rotated or skewed.
1399
1400         * kcanvas/RenderPath.cpp:
1401         (WebCore::RenderPath::layout): Make sure to dirty the old bounds.
1402         (WebCore::RenderPath::paint): Hhandle opacity here.
1403         
1404         Bonus fix:
1405         
1406         * kcanvas/RenderSVGImage.cpp:
1407         (WebCore::RenderSVGImage::nodeAtPoint): Fix hit testing. Wasn't applying the x/y
1408         attribute transform.
1409
1410 2006-06-19  Sam Weinig  <sam.weinig@gmail.com>
1411
1412         Reviewed by Darin.
1413
1414         - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9500
1415           Split dom2_eventsimpl.* into separate files (one class per file).
1416
1417         * WebCore.xcodeproj/project.pbxproj:
1418         * bindings/js/kjs_binding.cpp:
1419         * bindings/js/kjs_dom.cpp:
1420         * bindings/js/kjs_events.cpp:
1421         * bindings/js/kjs_html.cpp:
1422         * bindings/js/kjs_window.cpp:
1423         * bindings/objc/DOM.mm:
1424         * bindings/objc/DOMEvents.mm:
1425         * bindings/objc/DOMInternal.mm:
1426         * bindings/scripts/CodeGeneratorJS.pm:
1427         * bridge/mac/FrameMac.mm:
1428         * dom/BeforeTextInsertedEvent.h:
1429         * dom/BeforeUnloadEvent.cpp: Added.
1430         * dom/BeforeUnloadEvent.h: Added.
1431         (WebCore::BeforeUnloadEvent::result):
1432         * dom/CharacterData.cpp:
1433         * dom/Clipboard.h: Added.
1434         (WebCore::Clipboard::~Clipboard):
1435         * dom/ClipboardEvent.cpp: Added.
1436         (WebCore::ClipboardEvent::ClipboardEvent):
1437         * dom/ClipboardEvent.h: Added.
1438         (WebCore::ClipboardEvent::clipboard):
1439         * dom/ContainerNode.cpp:
1440         * dom/Document.cpp:
1441         * dom/Event.cpp: Added.
1442         (WebCore::Event::Event):
1443         (WebCore::Event::initEvent):
1444         * dom/Event.h: Added.
1445         (WebCore::):
1446         (WebCore::Event::):
1447         (WebCore::Event::type):
1448         (WebCore::Event::target):
1449         (WebCore::Event::currentTarget):
1450         (WebCore::Event::setCurrentTarget):
1451         (WebCore::Event::eventPhase):
1452         (WebCore::Event::setEventPhase):
1453         (WebCore::Event::bubbles):
1454         (WebCore::Event::cancelable):
1455         (WebCore::Event::timeStamp):
1456         (WebCore::Event::stopPropagation):
1457         (WebCore::Event::propagationStopped):
1458         (WebCore::Event::defaultPrevented):
1459         (WebCore::Event::setDefaultHandled):
1460         (WebCore::Event::defaultHandled):
1461         (WebCore::Event::preventDefault):
1462         (WebCore::Event::setDefaultPrevented):
1463         (WebCore::Event::setCancelBubble):
1464         (WebCore::Event::getCancelBubble):
1465         (WebCore::Event::dispatched):
1466         * dom/EventTargetNode.cpp:
1467         * dom/KeyboardEvent.cpp: Added.
1468         (WebCore::KeyboardEvent::KeyboardEvent):
1469         (WebCore::KeyboardEvent::initKeyboardEvent):
1470         * dom/KeyboardEvent.h: Added.
1471         (WebCore::KeyboardEvent::):
1472         (WebCore::KeyboardEvent::keyIdentifier):
1473         (WebCore::KeyboardEvent::keyLocation):
1474         (WebCore::KeyboardEvent::altGraphKey):
1475         (WebCore::KeyboardEvent::keyEvent):
1476         * dom/MouseEvent.cpp: Added.
1477         (WebCore::MouseEvent::MouseEvent):
1478         (WebCore::MouseEvent::initMouseEvent):
1479         (WebCore::MouseEvent::isDragEvent):
1480         (WebCore::MouseEvent::toElement):
1481         (WebCore::MouseEvent::fromElement):
1482         * dom/MouseEvent.h: Added.
1483         (WebCore::MouseEvent::button):
1484         (WebCore::MouseEvent::relatedTarget):
1485         (WebCore::MouseEvent::clipboard):
1486         * dom/MouseRelatedEvent.cpp: Added.
1487         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
1488         * dom/MouseRelatedEvent.h: Added.
1489         (WebCore::MouseRelatedEvent::screenX):
1490         (WebCore::MouseRelatedEvent::screenY):
1491         (WebCore::MouseRelatedEvent::clientX):
1492         (WebCore::MouseRelatedEvent::clientY):
1493         (WebCore::MouseRelatedEvent::layerX):
1494         (WebCore::MouseRelatedEvent::layerY):
1495         (WebCore::MouseRelatedEvent::offsetX):
1496         (WebCore::MouseRelatedEvent::offsetY):
1497         (WebCore::MouseRelatedEvent::isSimulated):
1498         * dom/MutationEvent.cpp: Added.
1499         (WebCore::MutationEvent::MutationEvent):
1500         (WebCore::MutationEvent::initMutationEvent):
1501         * dom/MutationEvent.h: Added.
1502         (WebCore::MutationEvent::):
1503         (WebCore::MutationEvent::relatedNode):
1504         (WebCore::MutationEvent::prevValue):
1505         (WebCore::MutationEvent::newValue):
1506         (WebCore::MutationEvent::attrName):
1507         (WebCore::MutationEvent::attrChange):
1508         * dom/RegisteredEventListener.cpp: Added.
1509         (WebCore::RegisteredEventListener::RegisteredEventListener):
1510         (WebCore::operator==):
1511         * dom/RegisteredEventListener.h: Added.
1512         (WebCore::RegisteredEventListener::eventType):
1513         (WebCore::RegisteredEventListener::listener):
1514         (WebCore::RegisteredEventListener::useCapture):
1515         (WebCore::RegisteredEventListener::removed):
1516         (WebCore::RegisteredEventListener::setRemoved):
1517         (WebCore::operator!=):
1518         * dom/UIEvent.cpp: Added.
1519         (WebCore::UIEvent::UIEvent):
1520         (WebCore::UIEvent::initUIEvent):
1521         * dom/UIEvent.h: Added.
1522         (WebCore::UIEvent::view):
1523         (WebCore::UIEvent::detail):
1524         * dom/UIEventWithKeyState.h: Added.
1525         (WebCore::UIEventWithKeyState::UIEventWithKeyState):
1526         (WebCore::UIEventWithKeyState::ctrlKey):
1527         (WebCore::UIEventWithKeyState::shiftKey):
1528         (WebCore::UIEventWithKeyState::altKey):
1529         (WebCore::UIEventWithKeyState::metaKey):
1530         * dom/WheelEvent.cpp: Added.
1531         (WebCore::WheelEvent::WheelEvent):
1532         * dom/WheelEvent.h: Added.
1533         (WebCore::WheelEvent::isHorizontal):
1534         (WebCore::WheelEvent::wheelDelta):
1535         * dom/dom2_eventsimpl.cpp: Removed.
1536         * dom/dom2_eventsimpl.h: Removed.
1537         * editing/EditCommand.cpp:
1538         * editing/SelectionController.cpp:
1539         * html/HTMLAnchorElement.cpp:
1540         * html/HTMLButtonElement.cpp:
1541         * html/HTMLDocument.cpp:
1542         * html/HTMLElement.cpp:
1543         * html/HTMLFrameSetElement.cpp:
1544         * html/HTMLInputElement.cpp:
1545         * html/HTMLSelectElement.cpp:
1546         * html/HTMLTextAreaElement.cpp:
1547         * ksvg2/events/SVGZoomEvent.h:
1548         * ksvg2/svg/SVGAElement.cpp:
1549         * page/Frame.cpp:
1550         * page/FrameView.cpp:
1551         * platform/PlatformKeyboardEvent.h:
1552         * platform/PlatformMouseEvent.h:
1553         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1554         * platform/PlatformWheelEvent.h:
1555         * platform/mac/ClipboardMac.h:
1556         * rendering/RenderFrameSet.cpp:
1557         * rendering/RenderLayer.cpp:
1558         * rendering/RenderObject.cpp:
1559         * rendering/RenderTextField.cpp:
1560         * xml/xmlhttprequest.cpp:
1561
1562 2006-06-19  Darin Adler  <darin@apple.com>
1563
1564         Reviewed by Brady.
1565
1566         - removed a few empty/unused files Brady found by tracking down the nm error message
1567
1568         * editing/VisibleRange.cpp: Removed.
1569         * editing/VisibleRange.h: Removed.
1570         * kcanvas/KCanvasImage.cpp: Removed.
1571
1572         * WebCore.vcproj/WebCore/WebCore.vcproj: Removed VisibleRange.cpp/h.
1573         * WebCore.xcodeproj/project.pbxproj: Removed VisibleRange.cpp/h and KCanvasImage.cpp.
1574         * WebCoreSources.bkl: Removed VisibleRange.cpp.
1575
1576 2006-06-19  Alexey Proskuryakov  <ap@nypop.com>
1577
1578         Reviewed by Darin.
1579
1580         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9492
1581         Fix or remove window.debug.
1582
1583         It was only available in newly created windows, and became undefined after changing the URL
1584         or reloading. Let's try removing it; hopefully, no-one will notice.
1585
1586         * bindings/js/kjs_proxy.cpp:
1587         (WebCore::KJSProxy::initScriptIfNeeded): Don't add window.debug.
1588
1589 2006-06-19  Alexey Proskuryakov  <ap@nypop.com>
1590
1591         Reviewed by Darin.
1592
1593         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8972
1594         REGRESSION: invalid UTF-8 sequences are not displayed
1595
1596         Test: LayoutTests/fast/encoding/invalid-UTF-8.html
1597
1598         * dom/xml_tokenizer.cpp:
1599         (WebCore::getXHTMLEntity): Properly null-terminate the result. This didn't matter
1600         before, because the garbage at the end was guaranteed to be invalid UTF-8, and was 
1601         omitted in appendOmittingUnwanted();
1602
1603         * platform/StreamingTextDecoder.cpp:
1604         (WebCore::StreamingTextDecoder::appendOmittingBOM): Only omit BOM characters.
1605         Renamed back from appendOmittingUnwanted();
1606
1607         (WebCore::StreamingTextDecoder::convertUsingICU):
1608         * platform/StreamingTextDecoder.h:
1609         Update for the above function renaming.
1610
1611 2006-06-18  David Kilzer  <ddkilzer@kilzer.net>
1612
1613         Reviewed by darin.
1614
1615         http://bugzilla.opendarwin.org/show_bug.cgi?id=9498
1616         Remove dead code left in JSHTMLDocument::getOwnPropertySlot() from r14298 (Bug 7838)
1617
1618         * bindings/js/kjs_html.cpp:
1619         (KJS::JSHTMLDocument::getOwnPropertySlot): Remove dead code.
1620
1621 2006-06-18  David Kilzer  <ddkilzer@kilzer.net>
1622
1623         Reviewed by ggaren.
1624
1625         * manual-tests/redraw-page-cache-visited-links.html: Changed to use DOM mouse event.
1626
1627 2006-06-18  David Kilzer  <ddkilzer@kilzer.net>
1628
1629         Reviewed by ggaren.
1630
1631         - Update a manual test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9150
1632           DumpRenderTree should be able to keep URL history during runs
1633
1634         * manual-tests/redraw-page-cache-visited-links.html: Added note about window.history hack.
1635         Fixed coordinates for mouse events.  Added call to keepWebHistory().
1636         * manual-tests/resources/redraw-page-cache-visited-links-2.html: Added note about
1637         window.history hack.
1638
1639 2006-06-17  Anders Carlsson  <acarlsson@apple.com>
1640
1641         Reviewed by Geoff.
1642
1643         * bindings/js/kjs_binding.cpp:
1644         (KJS::ScriptInterpreter::ScriptInterpreter):
1645         Set the default script timeout.
1646         
1647         (KJS::ScriptInterpreter::shouldInterruptScript):
1648         New function which asks the frame if the script should be interrupted.
1649         
1650         * bindings/js/kjs_binding.h:
1651                 
1652         * bindings/js/kjs_events.cpp:
1653         (KJS::JSAbstractEventListener::handleEvent):
1654         * bindings/js/kjs_proxy.cpp:
1655         (WebCore::KJSProxy::evaluate):
1656         Add calls to startTimeoutCheck/stopTimeoutCheck
1657         
1658         * bindings/js/kjs_window.cpp:
1659         (KJS::WindowFunc::callAsFunction):
1660         Add calls to pauseTimeoutCheck/unpauseTimeoutCheck 
1661         
1662         (KJS::ScheduledAction::execute):
1663         Add calls to startTimeoutCheck/stopTimeoutCheck
1664         
1665         * bridge/mac/FrameMac.h:
1666         * bridge/mac/FrameMac.mm:
1667         (WebCore::FrameMac::shouldInterruptJavaScript):
1668         New function which asks the bridge if the script should be interrupted.
1669         
1670         * bridge/mac/WebCoreFrameBridge.h:
1671         * page/Frame.h:
1672         Add function declarations.
1673         
1674 2006-06-17  Alexey Proskuryakov  <ap@nypop.com>
1675
1676         Reviewed by ggaren.
1677
1678         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8131
1679         Some properties and methods of window and document objects cannot be converted to a string
1680
1681         Most of the properties were already fixed, this just adds adds a prototype to window.debug.
1682
1683         Test: fast/dom/everything-to-string.html
1684
1685         * bindings/js/kjs_proxy.cpp:
1686         (WebCore::TestFunctionImp::TestFunctionImp): 
1687         (WebCore::KJSProxy::initScriptIfNeeded):
1688
1689 2006-06-17  David Kilzer  <ddkilzer@kilzer.net>
1690
1691         Reviewed by Maciej.
1692
1693         - Fix capitalization issue for case-sensitive filesystems.
1694
1695         * icon/SQLStatement.cpp: Change assertions.h to Assertions.h.
1696
1697 2006-06-17  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1698
1699         Reviewed by Hyatt.
1700
1701         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7395
1702           Table not properly re-flowed when floated div removed from layout
1703
1704         Test: fast/block/float/table-relayout.html
1705
1706         * rendering/RenderBlock.cpp:
1707         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout): Added marking
1708         of children that use lineWidth.
1709         * rendering/RenderBlock.h: Added a FIXME.
1710
1711 2006-06-17  Rob Buis  <buis@kde.org>
1712
1713         Reviewed by Darin.
1714
1715         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6282:
1716         Adding new Option with new Option(text, value, defaultSelected, selected) fails to update selectedIndex
1717
1718         Update selectedIndex when a new option is added using javascript.
1719
1720         * bindings/js/kjs_html.cpp:
1721         (KJS::JSHTMLSelectCollection::put):
1722         * html/HTMLSelectElement.cpp:
1723         (WebCore::HTMLSelectElement::setSelectedIndex):
1724         (WebCore::HTMLSelectElement::setOption):
1725         (WebCore::HTMLSelectElement::setLength):
1726         * html/HTMLSelectElement.h:
1727
1728 2006-06-17  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1729
1730         Reviewed by Darin.
1731
1732         - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9466
1733           Assertion failure when dragging an image from the document into Safari's address bar
1734
1735         * manual-tests/reset-initiatedDrag.html: Added.
1736
1737 2006-06-16  David Kilzer  <ddkilzer@kilzer.net>
1738
1739         Reviewed by darin.
1740
1741         http://bugzilla.opendarwin.org/show_bug.cgi?id=9463
1742         REGRESSION (r14879): Assertion failure in CSSParser::sinkFloatingSelector()
1743         (m_floatingSelectors.contains(selector)) in some CSS tests
1744
1745         * css/CSSGrammar.y: Create CSSSelector for FUNCTION using CSSParser::createFloatingSelector()
1746         instead of the bare constructor.
1747
1748 2006-06-16  David Harrison  <harrison@apple.com>
1749
1750         Reviewed by Hatcher.
1751
1752         <rdar://problem/4565312> Mail has a weird drawing artifact with dotted red lines running across the window
1753
1754         Problem was that revision lost a check to not draw the markers
1755         when paintingDisabled().   This led the markers to be drawn when
1756         the window deactivated, at which time the view happens to be flipped.
1757
1758         It is similar but not the same as the Mail ToDo highlighting
1759         issue, which is due to the custom highlight method
1760         drawing when the focusView is nil.  Mail team knows this
1761         and has tested the fix.
1762
1763         * platform/mac/GraphicsContextMac.mm:
1764         (WebCore::GraphicsContext::drawLineForMisspelling):
1765         Early return if paintingDisabled().
1766
1767 2006-06-16  Adele Peterson  <adele@apple.com>
1768
1769         Reviewed by Hyatt.
1770
1771         Adjust padding of inner div so text lines up with text fields.
1772         Adjust height of textarea so it only leaves room for the horizontal
1773         scrollbar if overflow is set to scroll, or if overflow is set to
1774         auto and there's no word wrap.
1775
1776         These changes will be tested by current layout tests when the
1777         new textarea implementation takes effect.
1778
1779         * rendering/RenderTextField.cpp:
1780         (WebCore::RenderTextField::createDivStyle):
1781         (WebCore::RenderTextField::calcHeight):
1782
1783 2006-06-16  John Sullivan  <sullivan@apple.com>
1784
1785         Reviewed by Darin
1786         
1787         - fixed <rdar://problem/4590062> crash in marker code with particular set of steps on daringfireball.net
1788
1789         * dom/Document.cpp:
1790         (WebCore::Document::addMarker):
1791         Store [it - markers.begin()] in a local variable before modifying markers, since modifying markers can
1792         change value of [it - markers.begin()].
1793
1794 2006-06-16  Adele Peterson  <adele@apple.com>
1795
1796         Reviewed by Alice.
1797
1798         Added code to draw Cocoa-like border for textareas instead of just using CSS.
1799
1800         * WebCore.exp:
1801         * css/html4.css: Sets a 1px solid border.
1802         * platform/mac/WebCoreSystemInterface.h:
1803         * platform/mac/WebCoreSystemInterface.mm:
1804         * rendering/RenderThemeMac.h: Formatting changes.
1805         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintTextArea):
1806         Uses new wkDrawBezeledTextArea to draw border.
1807
1808 2006-06-16  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1809
1810         Reviewed by hyatt.
1811
1812         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9432
1813           REGRESSION: crash in capitalization code due to empty-string generated content
1814
1815         Test: fast/text/capitalize-empty-generated-string.html
1816
1817         * rendering/RenderText.cpp:
1818         (WebCore::RenderText::setText): Skip empty-string text renderers when
1819         looking for the previous character.
1820
1821 2006-06-15  Justin Garcia  <justin.garcia@apple.com>
1822
1823         Reviewed by levi
1824
1825         <http://bugzilla.opendarwin.org/show_bug.cgi?id=8637>
1826         REGRESSION (11-16-05): Selection gaps left behind after delete
1827
1828         * editing/SelectionController.cpp:
1829         (WebCore::SelectionController::nodeWillBeRemoved): Invalidate the selection so that 
1830         selection gaps are invalidated.
1831
1832 2006-06-15  Timothy Hatcher  <timothy@apple.com>
1833
1834         Reviewed by Geoff and Darin.
1835         
1836         Prefer the DWARF debugging symbols format for use in Xcode 2.3.
1837
1838         * WebCore.xcodeproj/project.pbxproj:
1839
1840 2006-06-15  Justin Garcia  <justin.garcia@apple.com>
1841
1842         Reviewed by harrison
1843         
1844         * editing/CompositeEditCommand.cpp:
1845         (WebCore::hasARenderedDescendant):
1846         (WebCore::CompositeEditCommand::prune): Ascend using the DOM
1847         (WebCore::CompositeEditCommand::moveParagraphs): Placeholder insertion
1848         during deletion is fixed, removing the fall back.
1849
1850 2006-06-15  Nicholas Shanks  <contact@nickshanks.com>
1851
1852         Reviewed by Hyatt, landed by Joost de Valk.
1853
1854         Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3233
1855
1856         Add support for the :lang pseudo-class.
1857
1858         * css/CSSGrammar.y:
1859         * css/CSSSelector.cpp:
1860         (WebCore::CSSSelector::operator == ):
1861         * css/CSSSelector.h:
1862         (WebCore::CSSSelector::CSSSelector):
1863         * css/cssparser.cpp:
1864         (WebCore::CSSParser::lex):
1865         * css/cssstyleselector.cpp:
1866         (WebCore::CSSStyleSelector::checkOneSelector):
1867         * css/tokenizer.flex:
1868
1869 2006-06-15  Justin Garcia  <justin.garcia@apple.com>
1870
1871         Reviewed by harrison
1872         
1873         <http://bugzilla.opendarwin.org/show_bug.cgi?id=9456>
1874         REGRESSION (417.9.2-420+): Cmd-G doesn't work in Safari after double-click and Cmd-E
1875         
1876         * page/Frame.cpp:
1877         (WebCore::Frame::findString): When comparing the found range with
1878         what's currently selected a) build a selection with the found
1879         range to remove collapsed whitespace and b) compare ranges 
1880         instead of selection objects to ignore the way that the 
1881         current selection was made (to ignore the base and extent).
1882
1883 2006-06-15  David Kilzer  <ddkilzer@kilzer.net>
1884
1885         Reviewed by mjs.
1886
1887         http://bugzilla.opendarwin.org/show_bug.cgi?id=9382
1888         IDL files missing copyright/license headers
1889
1890         Add Apple BSD license and copyright to IDL files.
1891
1892         * ksvg2/bindings/idl/svg/GetSVGDocument.idl:
1893         * ksvg2/bindings/idl/svg/SVGAElement.idl:
1894         * ksvg2/bindings/idl/svg/SVGAnimateColorElement.idl:
1895         * ksvg2/bindings/idl/svg/SVGAnimateElement.idl:
1896         * ksvg2/bindings/idl/svg/SVGAnimateTransformElement.idl:
1897         * ksvg2/bindings/idl/svg/SVGAnimatedAngle.idl:
1898         * ksvg2/bindings/idl/svg/SVGAnimatedBoolean.idl:
1899         * ksvg2/bindings/idl/svg/SVGAnimatedEnumeration.idl:
1900         * ksvg2/bindings/idl/svg/SVGAnimatedInteger.idl:
1901         * ksvg2/bindings/idl/svg/SVGAnimatedLengthList.idl:
1902         * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl:
1903         * ksvg2/bindings/idl/svg/SVGAnimatedNumberList.idl:
1904         * ksvg2/bindings/idl/svg/SVGAnimatedPathData.idl:
1905         * ksvg2/bindings/idl/svg/SVGAnimatedPoints.idl:
1906         * ksvg2/bindings/idl/svg/SVGAnimatedPreserveAspectRatio.idl:
1907         * ksvg2/bindings/idl/svg/SVGAnimatedRect.idl:
1908         * ksvg2/bindings/idl/svg/SVGAnimatedString.idl:
1909         * ksvg2/bindings/idl/svg/SVGAnimatedTransformList.idl:
1910         * ksvg2/bindings/idl/svg/SVGAnimationElement.idl:
1911         * ksvg2/bindings/idl/svg/SVGCircleElement.idl:
1912         * ksvg2/bindings/idl/svg/SVGClipPathElement.idl:
1913         * ksvg2/bindings/idl/svg/SVGComponentTransferFunctionElement.idl:
1914         * ksvg2/bindings/idl/svg/SVGCursorElement.idl:
1915         * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl:
1916         * ksvg2/bindings/idl/svg/SVGDefsElement.idl:
1917         * ksvg2/bindings/idl/svg/SVGDescElement.idl:
1918         * ksvg2/bindings/idl/svg/SVGElementInstance.idl:
1919         * ksvg2/bindings/idl/svg/SVGElementInstanceList.idl:
1920         * ksvg2/bindings/idl/svg/SVGEllipseElement.idl:
1921         * ksvg2/bindings/idl/svg/SVGEvent.idl:
1922         * ksvg2/bindings/idl/svg/SVGException.idl:
1923         * ksvg2/bindings/idl/svg/SVGExternalResourcesRequired.idl:
1924         * ksvg2/bindings/idl/svg/SVGFEBlendElement.idl:
1925         * ksvg2/bindings/idl/svg/SVGFEColorMatrixElement.idl:
1926         * ksvg2/bindings/idl/svg/SVGFEComponentTransferElement.idl:
1927         * ksvg2/bindings/idl/svg/SVGFECompositeElement.idl:
1928         * ksvg2/bindings/idl/svg/SVGFEFloodElement.idl:
1929         * ksvg2/bindings/idl/svg/SVGFEFuncAElement.idl:
1930         * ksvg2/bindings/idl/svg/SVGFEFuncBElement.idl:
1931         * ksvg2/bindings/idl/svg/SVGFEFuncGElement.idl:
1932         * ksvg2/bindings/idl/svg/SVGFEFuncRElement.idl:
1933         * ksvg2/bindings/idl/svg/SVGFEGaussianBlurElement.idl:
1934         * ksvg2/bindings/idl/svg/SVGFEImageElement.idl:
1935         * ksvg2/bindings/idl/svg/SVGFEMergeElement.idl:
1936         * ksvg2/bindings/idl/svg/SVGFEMergeNodeElement.idl:
1937         * ksvg2/bindings/idl/svg/SVGFEOffsetElement.idl:
1938         * ksvg2/bindings/idl/svg/SVGFETileElement.idl:
1939         * ksvg2/bindings/idl/svg/SVGFETurbulenceElement.idl:
1940         * ksvg2/bindings/idl/svg/SVGFilterElement.idl:
1941         * ksvg2/bindings/idl/svg/SVGFilterPrimitiveStandardAttributes.idl:
1942         * ksvg2/bindings/idl/svg/SVGFitToViewBox.idl:
1943         * ksvg2/bindings/idl/svg/SVGGElement.idl:
1944         * ksvg2/bindings/idl/svg/SVGGradientElement.idl:
1945         * ksvg2/bindings/idl/svg/SVGICCColor.idl:
1946         * ksvg2/bindings/idl/svg/SVGImageElement.idl:
1947         * ksvg2/bindings/idl/svg/SVGLangSpace.idl:
1948         * ksvg2/bindings/idl/svg/SVGLengthList.idl:
1949         * ksvg2/bindings/idl/svg/SVGLineElement.idl:
1950         * ksvg2/bindings/idl/svg/SVGLinearGradientElement.idl:
1951         * ksvg2/bindings/idl/svg/SVGLocatable.idl:
1952         * ksvg2/bindings/idl/svg/SVGMarkerElement.idl:
1953         * ksvg2/bindings/idl/svg/SVGNumberList.idl:
1954         * ksvg2/bindings/idl/svg/SVGPaint.idl:
1955         * ksvg2/bindings/idl/svg/SVGPathElement.idl:
1956         * ksvg2/bindings/idl/svg/SVGPathSeg.idl:
1957         * ksvg2/bindings/idl/svg/SVGPathSegArc.idl:
1958         * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl:
1959         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl:
1960         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl:
1961         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl:
1962         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl:
1963         * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl:
1964         * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl:
1965         * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl:
1966         * ksvg2/bindings/idl/svg/SVGPathSegList.idl:
1967         * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl:
1968         * ksvg2/bindings/idl/svg/SVGPatternElement.idl:
1969         * ksvg2/bindings/idl/svg/SVGPointList.idl:
1970         * ksvg2/bindings/idl/svg/SVGPolygonElement.idl:
1971         * ksvg2/bindings/idl/svg/SVGPolylineElement.idl:
1972         * ksvg2/bindings/idl/svg/SVGPreserveAspectRatio.idl:
1973         * ksvg2/bindings/idl/svg/SVGRadialGradientElement.idl:
1974         * ksvg2/bindings/idl/svg/SVGRectElement.idl:
1975         * ksvg2/bindings/idl/svg/SVGRenderingIntent.idl:
1976         * ksvg2/bindings/idl/svg/SVGScriptElement.idl:
1977         * ksvg2/bindings/idl/svg/SVGSetElement.idl:
1978         * ksvg2/bindings/idl/svg/SVGStopElement.idl:
1979         * ksvg2/bindings/idl/svg/SVGStringList.idl:
1980         * ksvg2/bindings/idl/svg/SVGStylable.idl:
1981         * ksvg2/bindings/idl/svg/SVGStyleElement.idl:
1982         * ksvg2/bindings/idl/svg/SVGSwitchElement.idl:
1983         * ksvg2/bindings/idl/svg/SVGSymbolElement.idl:
1984         * ksvg2/bindings/idl/svg/SVGTSpanElement.idl:
1985         * ksvg2/bindings/idl/svg/SVGTests.idl:
1986         * ksvg2/bindings/idl/svg/SVGTextContentElement.idl:
1987         * ksvg2/bindings/idl/svg/SVGTextElement.idl:
1988         * ksvg2/bindings/idl/svg/SVGTextPositioningElement.idl:
1989         * ksvg2/bindings/idl/svg/SVGTitleElement.idl:
1990         * ksvg2/bindings/idl/svg/SVGTransformList.idl:
1991         * ksvg2/bindings/idl/svg/SVGTransformable.idl:
1992         * ksvg2/bindings/idl/svg/SVGURIReference.idl:
1993         * ksvg2/bindings/idl/svg/SVGUnitTypes.idl:
1994         * ksvg2/bindings/idl/svg/SVGUseElement.idl:
1995         * ksvg2/bindings/idl/svg/SVGViewElement.idl:
1996         * ksvg2/bindings/idl/svg/SVGZoomAndPan.idl:
1997         * ksvg2/bindings/idl/svg/SVGZoomEvent.idl:
1998         * ksvg2/svg/SVGAnimatedLength.idl:
1999
2000 2006-06-14  Justin Garcia  <justin.garcia@apple.com>
2001
2002         Reviewed by levi
2003
2004         <rdar://problem/4439248>
2005         REGRESSION(412-417): [RTL] Serious problem with RTL signatures in Mail.app in 10.4.4 (7766)
2006
2007         * editing/markup.cpp:
2008         (WebCore::renderedText): Use plainText so that we'll pull rendered text but in DOM order.
2009
2010 2006-06-14  Levi Weintraub  <lweintraub@apple.com>
2011
2012         Reviewed by justin
2013
2014         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7580>
2015         TinyMCE: Implement execCommand(formatBlock, ...)
2016
2017         * WebCore.xcodeproj/project.pbxproj: Added FormatBlock.{h,cpp} to the project.
2018         * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
2019         * bridge/mac/WebCoreFrameBridge.h: Added WebUndoActions
2020         * editing/CompositeEditCommand.cpp:
2021         (WebCore::CompositeEditCommand::moveParagraph): Added a preserveStyle bool.
2022         (WebCore::CompositeEditCommand::moveParagraphs): Ditto.  downstream() the start
2023         or else we'll move collapsed whitespace and uncollapse it.
2024         * editing/CompositeEditCommand.h:
2025         * editing/DeleteSelectionCommand.cpp:
2026         (WebCore::DeleteSelectionCommand::initializePositionData):
2027         (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete): Don't update m_endingPosition
2028         because that's removeNode's responsibility.
2029         (WebCore::updatePositionForNodeRemoval): Added.
2030         (WebCore::DeleteSelectionCommand::removeNode): Turned removeFullySelectedNode into a virtual
2031         overload of removeNode so that we can update positions as we remove nodes.
2032         (WebCore::updatePositionForTextRemoval): Added.
2033         (WebCore::DeleteSelectionCommand::deleteTextFromNode):
2034         (WebCore::DeleteSelectionCommand::handleGeneralDelete): 
2035         (WebCore::DeleteSelectionCommand::fixupWhitespace): Got rid of m_trailingWhitespaceValid
2036         since m_trailingWhitespace is always valid (we update it as we remove nodes).
2037         (WebCore::DeleteSelectionCommand::mergeParagraphs):
2038         (WebCore::DeleteSelectionCommand::doApply): Leading and trailing spaces should
2039         be fixed if they have collapsed before merging paragraphs.
2040         * editing/DeleteSelectionCommand.h:
2041         * editing/EditAction.h:
2042         (WebCore::):
2043         * editing/FormatBlockCommand.cpp: Added.
2044         (WebCore::FormatBlockCommand::FormatBlockCommand):
2045         (WebCore::FormatBlockCommand::modifyRange): Similar to InsertListCommand::modifyRange().
2046         (WebCore::FormatBlockCommand::doApply):
2047         * editing/FormatBlockCommand.h: Added.
2048         (WebCore::FormatBlockCommand::editingAction):
2049         * editing/InsertListCommand.h:
2050         (WebCore::InsertListCommand::editingAction):
2051         * editing/JSEditor.cpp:
2052         * editing/MergeIdenticalElementsCommand.cpp:
2053         (WebCore::MergeIdenticalElementsCommand::doApply):
2054         * editing/htmlediting.cpp:
2055         (WebCore::validBlockTag):
2056         (WebCore::createElement):
2057         * editing/htmlediting.h:
2058
2059 2006-06-14  Maciej Stachowiak  <mjs@apple.com>
2060
2061         Reviewed by Anders.
2062
2063         - fixed <rdar://problem/4586051> 10.4.7 regression: 'Saved and recent' button on mapquest.com does not work
2064
2065         * dom/EventTargetNode.cpp:
2066         (WebCore::EventTargetNode::dispatchWindowEvent):
2067
2068 2006-06-14  David Hyatt  <hyatt@apple.com>
2069
2070         Rename RenderSlider to DeprecatedSlider, so that I can start work on
2071         the new NSView-less slider.
2072
2073         Reviewed by john
2074
2075         * WebCore.vcproj/WebCore/WebCore.vcproj:
2076         * WebCore.xcodeproj/project.pbxproj:
2077         * html/HTMLInputElement.cpp:
2078         (WebCore::HTMLInputElement::createRenderer):
2079         * rendering/DeprecatedSlider.cpp: Added.
2080         (WebCore::DeprecatedSlider::DeprecatedSlider):
2081         (WebCore::DeprecatedSlider::calcMinMaxWidth):
2082         (WebCore::DeprecatedSlider::updateFromElement):
2083         (WebCore::DeprecatedSlider::valueChanged):
2084         * rendering/DeprecatedSlider.h: Added.
2085         (WebCore::DeprecatedSlider::renderName):
2086         * rendering/RenderSlider.cpp: Removed.
2087         * rendering/RenderSlider.h: Removed.
2088
2089 2006-06-13  Geoffrey Garen  <ggaren@apple.com>
2090
2091         Reviewed by Maciej.
2092         
2093         - Fixed <rdar://problem/4562192> Creating a new DOMHTMLDocument 
2094         appears challenging.
2095         
2096         - Added createHTMLDocument to Objc bindings, fixed up implementation
2097         to comply with the DOM 2 Candidate Recommendation in which is was defined.
2098         (It never made the final spec.) Also removed use of deprecatedString,
2099         to avoid unnecessary killing of puppies.
2100
2101         * WebCore.xcodeproj/project.pbxproj:
2102         * bindings/objc/DOM.mm:
2103         (-[DOMImplementation createHTMLDocument:]):
2104         * bindings/objc/DOMPrivate.h:
2105         * dom/DOMImplementation.cpp:
2106         (WebCore::DOMImplementation::createDocument):
2107         (WebCore::DOMImplementation::createHTMLDocument):
2108
2109 2006-06-13  Alice Liu  <alice.liu@apple.com>
2110
2111         Reviewed by Adele.
2112
2113         fixed <rdar://problem/4457902> HTMLSelectElement.remove() can't handle an option obj being passed to it, results in hang on http://www.ibc-solar.de/www_ibc/fst_solarmonitoring.jsp
2114
2115         * bindings/js/kjs_html.cpp:
2116         (KJS::HTMLElementFunction::callAsFunction):
2117         support this by converting the argument to an options object
2118         before passing to remove()
2119
2120 2006-06-13  Darin Adler  <darin@apple.com>
2121
2122         Reviewed by Geoff.
2123
2124         - fix <rdar://problem/4585333> Changing location for weather on yahoo.com home page redirects to another page
2125
2126         This patch fixes a bug where the event listener cache does not distinguish
2127         HTML and non-HTML listeners. Incorrect behavior where stopPropagation also
2128         prevented default masked a case of this bug on the yahoo.com home page until
2129         we fixed bug 5180 on 2005-10-03.
2130
2131         Test: fast/events/event-listener-html-non-html-confusion.html
2132
2133         * bindings/js/kjs_window.h: Add additional listener maps for HTML event listeners.
2134
2135         * bindings/js/kjs_window.cpp:
2136         (KJS::Window::~Window): Go through the additional maps when clearing the window object
2137         pointer in event listeners.
2138         (KJS::Window::getJSEventListener): Look in the HTML or non-HTML map depending on the
2139         argument passed.
2140         (KJS::Window::getJSUnprotectedEventListener): Ditto.
2141
2142         * bindings/js/kjs_events.cpp:
2143         (KJS::JSUnprotectedEventListener::JSUnprotectedEventListener): Add to either the HTML
2144         or non-HTML map depending on the argument passed.
2145         (KJS::JSUnprotectedEventListener::~JSUnprotectedEventListener): Remove from either the
2146         HTML or non-HTML map depending on whether the HTML flag is set.
2147         (KJS::JSEventListener::JSEventListener): More of the same.
2148         (KJS::JSEventListener::~JSEventListener): Ditto.
2149         (KJS::JSLazyEventListener::parseCode): Same thing here. In a lazy event listener there
2150         is not a listener at construction time, thus the code here to put the listener into a
2151         map needs the HTML vs. non-HTML logic.
2152
2153 2006-06-13  Maciej Stachowiak  <mjs@apple.com>
2154
2155         Reviewed by Darin.
2156         
2157         <rdar://problem/4583892> 10.4.7 regression: Hang occurs when attempting to load search results at mapquest.com
2158
2159         * dom/EventTargetNode.cpp:
2160         (WebCore::EventTargetNode::dispatchGenericEvent): Don't allow
2161         "load" events to propagate up to the window. We need this quirk to
2162         avoid site hangs, because they depend on an old Mozilla bug.
2163
2164 2006-06-13  Antti Koivisto  <koivisto@iki.fi>
2165
2166         Reviewed by Hyatt.
2167
2168         http://bugzilla.opendarwin.org/show_bug.cgi?id=9314
2169         Relative positioned block size doesnt update root layer size
2170
2171         - take relative positioning into account in leftmost/rightmost/lowestPosition()
2172         - ignore zero width/height boxes in leftmost/rightmost/lowestPosition()
2173         - split relativePositionOffset() to x and y functions
2174         
2175         * rendering/RenderBox.cpp:
2176         (WebCore::RenderBox::absolutePosition):
2177         (WebCore::RenderBox::relativePositionOffsetX):
2178         (WebCore::RenderBox::relativePositionOffsetY):
2179         (WebCore::RenderBox::lowestPosition):
2180         (WebCore::RenderBox::rightmostPosition):
2181         (WebCore::RenderBox::leftmostPosition):
2182         * rendering/RenderBox.h:
2183         * rendering/RenderFlow.cpp:
2184         (WebCore::RenderFlow::lowestPosition):
2185         (WebCore::RenderFlow::rightmostPosition):
2186         (WebCore::RenderFlow::leftmostPosition):
2187         * rendering/RenderLayer.cpp:
2188         (WebCore::RenderLayer::updateLayerPosition):
2189         * rendering/RenderObject.cpp:
2190         (WebCore::RenderObject::offsetLeft):
2191         (WebCore::RenderObject::offsetTop):
2192
2193 2006-06-13  Anders Carlsson  <acarlsson@apple.com>
2194
2195         Reviewed by Dave Hyatt.
2196
2197         http://bugzilla.opendarwin.org/show_bug.cgi?id=9427
2198         xml-stylesheet processing instructions outside of the prolog should have no effect.
2199
2200         * dom/ProcessingInstruction.cpp:
2201         (WebCore::ProcessingInstruction::checkStyleSheet):
2202         Remove todo comment.
2203         
2204         * dom/xml_tokenizer.cpp:
2205         (WebCore::XMLTokenizer::processingInstruction):
2206         Only check for style sheet if the root element hasn't yet been encountered.
2207
2208 2006-06-13  Anders Carlsson  <acarlsson@apple.com>
2209
2210         Reviewed by Geoff.
2211
2212         http://bugzilla.opendarwin.org/show_bug.cgi?id=9406
2213         REGRESSION: fix for bug 9390 broke two layout tests
2214         
2215         * loader/PluginDocument.cpp:
2216         (WebCore::PluginTokenizer::writeRawData):
2217         Call finished() after setting up the document structure so we'll emit onload events.
2218
2219 2006-06-12  Geoffrey Garen  <ggaren@apple.com>
2220
2221         build fix -- forgot to svn add this file
2222         
2223         * ForwardingHeaders/kjs/SavedBuiltins.h: Added.
2224
2225 2006-06-12  Brady Eidson  <beidson@apple.com>
2226
2227         Reviewed by Maciej.
2228
2229         Fixed a bug in append(char) and append(UChar) where our intended copy-on-write semantics was ignored!
2230
2231         * platform/String.cpp:
2232         (WebCore::String::append):
2233
2234 2006-06-12  Geoffrey Garen  <ggaren@apple.com>
2235
2236         Reviewed by TimO, Maciej.
2237
2238         - WebCore part of merging InterpreterImp into Interpreter. No test
2239         because there's no behavior change.
2240         
2241         A substantive change here is that ScriptInterpreter::mark must now chain to
2242         Interpreter::mark, since Interpreter needs to mark the things that
2243         InterpreterImp used to mark.
2244         
2245         * WebCore.xcodeproj/project.pbxproj:
2246         * bindings/js/kjs_binding.cpp:
2247         * bindings/js/kjs_window.cpp:
2248         (KJS::Window::put):
2249         * bridge/mac/WebCoreFrameBridge.mm:
2250         * bridge/mac/WebCoreScriptDebugger.mm:
2251         (-[WebCoreScriptCallFrame evaluateWebScript:]):
2252         * kwq/KWQPageState.mm:
2253
2254 2006-06-12  Brady Eidson <beidson@apple.com>
2255
2256         Reviewed by Maciej.
2257
2258         Changed String::ascii() to return a Vector<char> instead of const char*
2259         This allows us to use it "regularly" as the returned vector will destruct
2260         and not leak memory like the previous approach.
2261         We can now do a String.ascii().data() to get a char* buffer instead of 
2262         String.deprecatedString().ascii().  It doesn't improve the style much but
2263         dumping the memory-leak issue is a plus.
2264
2265         * icon/IconDatabase.cpp:
2266         (WebCore::IconDatabase::open):
2267         (WebCore::IconDatabase::clearDatabase):
2268         * icon/SQLDatabase.cpp:
2269         (SQLDatabase::open):
2270         * icon/SQLStatement.cpp:
2271         (WebCore::SQLStatement::prepare):
2272         (WebCore::SQLStatement::step):
2273         (WebCore::SQLStatement::returnTextResults):
2274         (WebCore::SQLStatement::returnTextResults16):
2275         (WebCore::SQLStatement::returnIntResults):
2276         (WebCore::SQLStatement::returnInt64Results):
2277         (WebCore::SQLStatement::returnDoubleResults):
2278         In addition to the changes to the string classes, changed my database code over to the new
2279         preferred method.
2280
2281         * platform/PlatformString.h:
2282         * platform/String.cpp:
2283         (WebCore::String::ascii):
2284         * platform/StringImpl.cpp:
2285         (WebCore::StringImpl::ascii):
2286         * platform/StringImpl.h:
2287
2288 2006-06-12  Dave Hyatt <hyatt@apple.com>
2289
2290         Add the notion of a selection foreground color to the engine for
2291         Win32.  Rename existing selectionColor methods to be
2292         selectionBackgroundColor instead.
2293
2294         Change the 60% alpha blend rule for transparent selection to
2295         instead be a range from 60-80%, with less transparency being
2296         used as needed to ensure the transformed color more closely
2297         approximates the original operating system color when blended
2298         with a white background.
2299
2300         Reviewed by mjs
2301
2302         * platform/Color.cpp:
2303         (WebCore::blend):
2304         (WebCore::Color::blendWithWhite):
2305         * platform/Color.h:
2306         * rendering/InlineTextBox.cpp:
2307         (WebCore::InlineTextBox::paint):
2308         (WebCore::InlineTextBox::paintSelection):
2309         * rendering/RenderBlock.cpp:
2310         (WebCore::RenderBlock::fillHorizontalSelectionGap):
2311         (WebCore::RenderBlock::fillVerticalSelectionGap):
2312         (WebCore::RenderBlock::fillLeftSelectionGap):
2313         (WebCore::RenderBlock::fillRightSelectionGap):
2314         * rendering/RenderHTMLCanvas.cpp:
2315         (WebCore::RenderHTMLCanvas::paint):
2316         * rendering/RenderImage.cpp:
2317         (WebCore::RenderImage::paint):
2318         * rendering/RenderListMarker.cpp:
2319         (WebCore::RenderListMarker::paint):
2320         * rendering/RenderObject.cpp:
2321         (WebCore::RenderObject::selectionBackgroundColor):
2322         (WebCore::RenderObject::selectionForegroundColor):
2323         * rendering/RenderObject.h:
2324         * rendering/RenderTheme.cpp:
2325         (WebCore::RenderTheme::activeSelectionBackgroundColor):
2326         (WebCore::RenderTheme::inactiveSelectionBackgroundColor):
2327         (WebCore::RenderTheme::platformActiveSelectionBackgroundColor):
2328         (WebCore::RenderTheme::platformInactiveSelectionBackgroundColor):
2329         (WebCore::RenderTheme::platformActiveSelectionForegroundColor):
2330         (WebCore::RenderTheme::platformInactiveSelectionForegroundColor):
2331         * rendering/RenderTheme.h:
2332         * rendering/RenderThemeMac.h:
2333         * rendering/RenderThemeMac.mm:
2334         (WebCore::RenderThemeMac::platformActiveSelectionBackgroundColor):
2335         (WebCore::RenderThemeMac::platformInactiveSelectionBackgroundColor):
2336         * rendering/RenderThemeWin.cpp:
2337         (WebCore::RenderThemeWin::platformActiveSelectionBackgroundColor):
2338         (WebCore::RenderThemeWin::platformInactiveSelectionBackgroundColor):
2339         (WebCore::RenderThemeWin::platformActiveSelectionForegroundColor):
2340         (WebCore::RenderThemeWin::platformInactiveSelectionForegroundColor):
2341         * rendering/RenderThemeWin.h:
2342         * rendering/RenderWidget.cpp:
2343         (WebCore::RenderWidget::paint):
2344
2345 2006-06-12  John Sullivan  <sullivan@apple.com>
2346
2347         Reviewed by Darin Adler.
2348         
2349         * page/Frame.cpp:
2350         (WebCore::Frame::markAllMatchesForText):
2351         Do a "fake" paint here so that the rectangles for the text matches will have been
2352         computed by the time this method returns.
2353
2354 2006-06-12  Brady Eidson  <beidson@apple.com>
2355
2356         Reviewed by Levi and Tim Omernick.
2357
2358         -Added a skeleton sqlite3 icon database file to IconDatabase
2359         -Added functionality to validate and recreate this icon.db file
2360         -Fixed some buggys in SQLDatabase.cpp
2361
2362         * icon/IconDatabase.cpp:
2363         (WebCore::IconDatabase::open):
2364         (WebCore::IconDatabase::isValidDatabase):
2365         (WebCore::IconDatabase::clearDatabase):
2366         (WebCore::IconDatabase::recreateDatabase):
2367         * icon/IconDatabase.h:
2368
2369         * icon/SQLStatement.cpp:
2370         (WebCore::SQLStatement::columnCount):
2371         (WebCore::SQLStatement::getColumnName):
2372         (WebCore::SQLStatement::getColumnName16):
2373         (WebCore::SQLStatement::getColumnText):
2374         (WebCore::SQLStatement::getColumnText16):
2375         (WebCore::SQLStatement::getColumnDouble):
2376         (WebCore::SQLStatement::getColumnInt):
2377         (WebCore::SQLStatement::getColumnInt64):
2378         (WebCore::SQLStatement::getColumnBlob):
2379         -Added checks to make sure we had a valid working sqlite3_statement as the sqlite3_*
2380         function calls weren't as error-tolerant as documentation advertised
2381         (maybe differences between the 3.3 docs I looked at and the 3.1.3 version installed on OSX)
2382
2383 2006-06-12  Brady Eidson  <beidson@apple.com>
2384
2385         Reviewed by Levi.
2386
2387         -Added SQLite helper wrappers to ease use of SQLite in the IconDatabase.  
2388         -Changed the base IconDatabase over to this new framework.
2389
2390         * WebCore.xcodeproj/project.pbxproj:
2391         * bridge/mac/WebCoreIconDatabaseBridge.mm:
2392         (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
2393             -By popular request, removed an annoying log message I'd accidentally left in
2394
2395         * icon/IconDatabase.cpp:
2396         (WebCore::IconDatabase::IconDatabase):
2397         (WebCore::IconDatabase::open):
2398         (WebCore::IconDatabase::close):
2399         (WebCore::IconDatabase::~IconDatabase):
2400         * icon/IconDatabase.h:
2401         (WebCore::IconDatabase::isOpen):
2402             -Changed over IconDatabase from direct sqlite3_* calls to the new SQLDatabase calls
2403
2404         * icon/SQLDatabase.cpp: Added.
2405         (SQLDatabase::SQLDatabase):
2406         (SQLDatabase::open):
2407         (SQLDatabase::close):
2408         (SQLDatabase::executeCommand):
2409         (SQLDatabase::tableExists):
2410         * icon/SQLDatabase.h: Added.
2411         (WebCore::SQLDatabase::isOpen):
2412         (WebCore::SQLDatabase::getPath):
2413         (WebCore::SQLDatabase::lastError):
2414         (WebCore::SQLDatabase::lastErrorMsg):
2415         (WebCore::SQLStatement::isPrepared):
2416         (WebCore::SQLStatement::lastError):
2417         (WebCore::SQLStatement::lastErrorMsg):
2418         * icon/SQLStatement.cpp: Added.
2419         (WebCore::SQLStatement::SQLStatement):
2420         (WebCore::SQLStatement::~SQLStatement):
2421         (WebCore::SQLStatement::prepare):
2422         (WebCore::SQLStatement::step):
2423         (WebCore::SQLStatement::finalize):
2424         (WebCore::SQLStatement::reset):
2425         (WebCore::SQLStatement::executeCommand):
2426         (WebCore::SQLStatement::bindBlob):
2427         (WebCore::SQLStatement::bindText):
2428         (WebCore::SQLStatement::columnCount):
2429         (WebCore::SQLStatement::getColumnName):
2430         (WebCore::SQLStatement::getColumnName16):
2431         (WebCore::SQLStatement::getColumnText):
2432         (WebCore::SQLStatement::getColumnText16):
2433         (WebCore::SQLStatement::getColumnDouble):
2434         (WebCore::SQLStatement::getColumnInt):
2435         (WebCore::SQLStatement::getColumnInt64):
2436         (WebCore::SQLStatement::getColumnBlob):
2437         (WebCore::SQLStatement::returnTextResults):
2438         (WebCore::SQLStatement::returnTextResults16):
2439         (WebCore::SQLStatement::returnIntResults):
2440         (WebCore::SQLStatement::returnInt64Results):
2441         (WebCore::SQLStatement::returnDoubleResults):
2442             -Initial checking of SQLDatabase framework
2443
2444         * platform/PlatformString.h:
2445         * platform/String.cpp:
2446         (WebCore::String::String):
2447             -Added an explicit UChar* constructor to our string class as much of sqlite3's UTF16 handling is based on 
2448             null-terminated UTF16 which we didn't yet support.
2449
2450 2006-06-11  David Kilzer  <ddkilzer@kilzer.net>
2451
2452         Reviewed by Maciej.
2453
2454         http://bugzilla.opendarwin.org/show_bug.cgi?id=9408
2455         Clean build fails with "make: *** No rule to make target `SVGElementFactory.cpp', needed by `all'. Stop"
2456
2457         * DerivedSources.make: Fix clean builds.
2458
2459 2006-06-11  Darin Adler  <darin@apple.com>
2460
2461         - another try at fixing Windows
2462
2463         * loader/CachedResource.h:
2464         * platform/cairo/GraphicsContextCairo.cpp:
2465         * platform/image-decoders/ImageDecoder.h:
2466         (WebCore::ImageDecoder::setData):
2467         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2468         (WebCore::GIFImageDecoderPrivate::decode):
2469         (WebCore::GIFImageDecoder::setData):
2470         * platform/image-decoders/gif/GIFImageDecoder.h:
2471         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2472         (WebCore::JPEGImageReader::decode):
2473         (WebCore::JPEGImageDecoder::setData):
2474         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
2475         * platform/image-decoders/png/PNGImageDecoder.cpp:
2476         (WebCore::PNGImageReader::decode):
2477         (WebCore::PNGImageDecoder::setData):
2478         * platform/image-decoders/png/PNGImageDecoder.h:
2479         s/DeprecatedByteArray/Vector<char>/
2480
2481 2006-06-11  Darin Adler  <darin@apple.com>
2482
2483         - try to fix Windows build
2484
2485         * platform/cairo/ImageCairo.cpp: (WebCore::Image::loadResource):
2486         Use Vector<char> instead of DeprecatedByteArray.
2487
2488         * platform/win/TemporaryLinkStubs.cpp: (KWQServeSynchronousRequest):
2489         Don't try to return 0 from a function that returns a Vector<char>.
2490
2491 2006-06-11  Sam Weinig  <sam.weinig@gmail.com>
2492
2493         Reviewed by Hyatt, tweaked quite a bit and landed by Darin.
2494
2495         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8039
2496           Remove use of DeprecatedArray in favor of new Vector class
2497
2498         This removes most of the uses of DeprecatedArray and 
2499         DeprecatedByteArray, with the exception of DeprecatedCString.
2500
2501         No test cases added because there is no change in
2502         functionality.
2503
2504         * loader/CachedCSSStyleSheet.cpp:
2505         (WebCore::CachedCSSStyleSheet::data):
2506         * loader/CachedCSSStyleSheet.h:
2507         * loader/CachedImage.cpp:
2508         (WebCore::CachedImage::bufferData):
2509         (WebCore::CachedImage::data):
2510         (WebCore::CachedImage::checkNotify):
2511         (WebCore::CachedImage::shouldStopAnimation):
2512         * loader/CachedImage.h:
2513         * loader/CachedObject.cpp:
2514         (WebCore::CachedObject::bufferData):
2515         (WebCore::CachedObject::setExpireDate):
2516         * loader/CachedObject.h:
2517         (WebCore::CachedObject::setCharset):
2518         * loader/CachedScript.cpp:
2519         (WebCore::CachedScript::data):
2520         * loader/CachedScript.h:
2521         * loader/CachedXBLDocument.cpp:
2522         (WebCore::CachedXBLDocument::data):
2523         (WebCore::CachedXBLDocument::checkNotify):
2524         * loader/CachedXBLDocument.h:
2525         * loader/CachedXSLStyleSheet.cpp:
2526         (WebCore::CachedXSLStyleSheet::data):
2527         * loader/CachedXSLStyleSheet.h:
2528         * loader/Request.cpp:
2529         (WebCore::Request::Request):
2530         (WebCore::Request::~Request):
2531         * loader/Request.h:
2532         (WebCore::Request::buffer):
2533         (WebCore::Request::cachedObject):
2534         (WebCore::Request::docLoader):
2535         (WebCore::Request::isIncremental):
2536         (WebCore::Request::setIsIncremental):
2537         (WebCore::Request::isMultipart):
2538         (WebCore::Request::setIsMultipart):
2539         * loader/loader.cpp:
2540         (WebCore::crossDomain):
2541         (WebCore::Loader::Loader):
2542         (WebCore::Loader::load):
2543         (WebCore::Loader::servePendingRequests):
2544         (WebCore::Loader::receivedAllData):
2545         (WebCore::Loader::receivedResponse):
2546         (WebCore::Loader::receivedData):
2547         (WebCore::Loader::numRequests):
2548         (WebCore::Loader::cancelRequests):
2549         (WebCore::Loader::removeBackgroundDecodingRequest):
2550         (WebCore::Loader::jobForRequest):
2551         * platform/Image.cpp:
2552         (WebCore::Image::setData):
2553         * platform/Image.h:
2554         (WebCore::Image::dataBuffer):
2555
2556         * css/cssstyleselector.cpp:
2557         (WebCore::CSSStyleSelector::init):
2558         (WebCore::CSSStyleSelector::matchRules):
2559         (WebCore::CSSStyleSelector::matchRulesForList):
2560         (WebCore::CSSStyleSelector::sortMatchedRules):
2561         (WebCore::CSSStyleSelector::initForStyleResolve):
2562         (WebCore::CSSStyleSelector::createStyleForElement):
2563         (WebCore::CSSStyleSelector::createPseudoStyleForElement):
2564         * css/cssstyleselector.h:
2565         (WebCore::CSSStyleSelector::addMatchedRule):
2566         (WebCore::CSSStyleSelector::addMatchedDeclaration):
2567         * dom/xml_tokenizer.cpp:
2568         (WebCore::OffsetBuffer::OffsetBuffer):
2569         (WebCore::openFunc):
2570         * html/HTMLOptionElement.cpp:
2571         (WebCore::HTMLOptionElement::index):
2572         * html/HTMLSelectElement.cpp:
2573         (WebCore::HTMLSelectElement::selectedIndex):
2574         (WebCore::HTMLSelectElement::setSelectedIndex):
2575         (WebCore::HTMLSelectElement::length):
2576         (WebCore::HTMLSelectElement::remove):
2577         (WebCore::HTMLSelectElement::value):
2578         (WebCore::HTMLSelectElement::setValue):
2579         (WebCore::HTMLSelectElement::state):
2580         (WebCore::HTMLSelectElement::restoreState):
2581         (WebCore::HTMLSelectElement::appendFormData):
2582         (WebCore::HTMLSelectElement::optionToListIndex):
2583         (WebCore::HTMLSelectElement::listToOptionIndex):
2584         (WebCore::HTMLSelectElement::recalcListItems):
2585         (WebCore::HTMLSelectElement::reset):
2586         (WebCore::HTMLSelectElement::notifyOptionSelected):
2587         * html/HTMLSelectElement.h:
2588         (WebCore::HTMLSelectElement::listItems):
2589         * kwq/KWQLoader.h:
2590         * kwq/KWQLoader.mm:
2591         (KWQServeSynchronousRequest):
2592         * kwq/KWQTextStream.cpp:
2593         (QTextStream::operator<<):
2594         * kwq/KWQTextStream.h:
2595         * loader/FormData.cpp:
2596         (WebCore::FormData::flatten):
2597         (WebCore::FormData::flattenToString):
2598         * loader/FormData.h:
2599         (WebCore::FormDataElement::FormDataElement):
2600         * platform/DeprecatedString.cpp:
2601         * platform/DeprecatedString.h:
2602         * platform/IntPointArray.cpp: Removed.
2603         * platform/IntPointArray.h: Removed.
2604         * platform/TextEncoding.cpp:
2605         (WebCore::TextEncoding::toUnicode):
2606         * platform/TextEncoding.h:
2607         * platform/cairo/pixman/src/pixregion.c:
2608         * platform/cg/PathCG.cpp:
2609         (WebCore::Path::Path):
2610         * rendering/RenderObject.cpp:
2611         (WebCore::RenderObject::drawBorder):
2612         * rendering/RenderTable.h:
2613         (WebCore::RenderTable::colToEffCol):
2614         (WebCore::RenderTable::effColToCol):
2615         * rendering/RenderTableSection.cpp:
2616         (WebCore::RenderTableSection::ensureRows):
2617         (WebCore::RenderTableSection::addCell):
2618         (WebCore::RenderTableSection::setCellWidths):
2619         * rendering/RenderTableSection.h:
2620         * rendering/bidi.cpp:
2621         (WebCore::addMidpoint):
2622         (WebCore::RenderBlock::layoutInlineChildren):
2623         * rendering/render_form.cpp:
2624         (WebCore::RenderSelect::updateFromElement):
2625         (WebCore::RenderSelect::layout):
2626         (WebCore::RenderSelect::valueChanged):
2627         (WebCore::RenderSelect::selectionChanged):
2628         (WebCore::RenderSelect::updateSelection):
2629         * rendering/table_layout.cpp:
2630         (WebCore::FixedTableLayout::layout):
2631         * rendering/table_layout.h:
2632         * xml/XSLTProcessor.cpp:
2633         (WebCore::docLoaderFunc):
2634         * xml/xmlhttprequest.cpp:
2635         (WebCore::XMLHttpRequest::send):
2636         (WebCore::XMLHttpRequest::processSyncLoadResults):
2637         * xml/xmlhttprequest.h:
2638
2639 2006-06-11  David Kilzer  <ddkilzer@kilzer.net>
2640
2641         Reviewed by darin.
2642
2643         http://bugzilla.opendarwin.org/show_bug.cgi?id=9394
2644         Fix no-SVG build
2645
2646         * DerivedSources.make: Removed tabs. Create empty SVGElementFactory.cpp on no-svg build.
2647         * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp: Added #if SVG_SUPPORT/#endif.
2648         * ksvg2/bindings/js/JSSVGElementWrapperFactory.h: Ditto.
2649         * ksvg2/bindings/idl/svg/SVGAElement.idl: Add "Conditional=SVG" to all interfaces.
2650         * ksvg2/bindings/idl/svg/SVGAnimateColorElement.idl: Ditto.
2651         * ksvg2/bindings/idl/svg/SVGAnimateElement.idl: Ditto.
2652         * ksvg2/bindings/idl/svg/SVGAnimateTransformElement.idl: Ditto.
2653         * ksvg2/bindings/idl/svg/SVGAnimatedAngle.idl: Ditto.
2654         * ksvg2/bindings/idl/svg/SVGAnimatedBoolean.idl: Ditto.
2655         * ksvg2/bindings/idl/svg/SVGAnimatedEnumeration.idl: Ditto.
2656         * ksvg2/bindings/idl/svg/SVGAnimatedInteger.idl: Ditto.
2657         * ksvg2/bindings/idl/svg/SVGAnimatedLengthList.idl: Ditto.
2658         * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl: Ditto.
2659         * ksvg2/bindings/idl/svg/SVGAnimatedNumberList.idl: Ditto.
2660         * ksvg2/bindings/idl/svg/SVGAnimatedPathData.idl: Ditto.
2661         * ksvg2/bindings/idl/svg/SVGAnimatedPoints.idl: Ditto.
2662         * ksvg2/bindings/idl/svg/SVGAnimatedPreserveAspectRatio.idl: Ditto.
2663         * ksvg2/bindings/idl/svg/SVGAnimatedRect.idl: Ditto.
2664         * ksvg2/bindings/idl/svg/SVGAnimatedString.idl: Ditto.
2665         * ksvg2/bindings/idl/svg/SVGAnimatedTransformList.idl: Ditto.
2666         * ksvg2/bindings/idl/svg/SVGAnimationElement.idl: Ditto.
2667         * ksvg2/bindings/idl/svg/SVGCircleElement.idl: Ditto.
2668         * ksvg2/bindings/idl/svg/SVGClipPathElement.idl: Ditto.
2669         * ksvg2/bindings/idl/svg/SVGComponentTransferFunctionElement.idl: Ditto.
2670         * ksvg2/bindings/idl/svg/SVGCursorElement.idl: Ditto.
2671         * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl: Ditto.
2672         * ksvg2/bindings/idl/svg/SVGDefsElement.idl: Ditto.
2673         * ksvg2/bindings/idl/svg/SVGDescElement.idl: Ditto.
2674         * ksvg2/bindings/idl/svg/SVGElementInstance.idl: Ditto.
2675         * ksvg2/bindings/idl/svg/SVGElementInstanceList.idl: Ditto.
2676         * ksvg2/bindings/idl/svg/SVGEllipseElement.idl: Ditto.
2677         * ksvg2/bindings/idl/svg/SVGEvent.idl: Ditto.
2678         * ksvg2/bindings/idl/svg/SVGException.idl: Ditto.
2679         * ksvg2/bindings/idl/svg/SVGExternalResourcesRequired.idl: Ditto.
2680         * ksvg2/bindings/idl/svg/SVGFEBlendElement.idl: Ditto.
2681         * ksvg2/bindings/idl/svg/SVGFEColorMatrixElement.idl: Ditto.
2682         * ksvg2/bindings/idl/svg/SVGFEComponentTransferElement.idl: Ditto.
2683         * ksvg2/bindings/idl/svg/SVGFECompositeElement.idl: Ditto.
2684         * ksvg2/bindings/idl/svg/SVGFEFloodElement.idl: Ditto.
2685         * ksvg2/bindings/idl/svg/SVGFEFuncAElement.idl: Ditto.
2686         * ksvg2/bindings/idl/svg/SVGFEFuncBElement.idl: Ditto.
2687         * ksvg2/bindings/idl/svg/SVGFEFuncGElement.idl: Ditto.
2688         * ksvg2/bindings/idl/svg/SVGFEFuncRElement.idl: Ditto.
2689         * ksvg2/bindings/idl/svg/SVGFEGaussianBlurElement.idl: Ditto.
2690         * ksvg2/bindings/idl/svg/SVGFEImageElement.idl: Ditto.
2691         * ksvg2/bindings/idl/svg/SVGFEMergeElement.idl: Ditto.
2692         * ksvg2/bindings/idl/svg/SVGFEMergeNodeElement.idl: Ditto.
2693         * ksvg2/bindings/idl/svg/SVGFEOffsetElement.idl: Ditto.
2694         * ksvg2/bindings/idl/svg/SVGFETileElement.idl: Ditto.
2695         * ksvg2/bindings/idl/svg/SVGFETurbulenceElement.idl: Ditto.
2696         * ksvg2/bindings/idl/svg/SVGFilterElement.idl: Ditto.
2697         * ksvg2/bindings/idl/svg/SVGFilterPrimitiveStandardAttributes.idl: Ditto.
2698         * ksvg2/bindings/idl/svg/SVGFitToViewBox.idl: Ditto.
2699         * ksvg2/bindings/idl/svg/SVGGElement.idl: Ditto.
2700         * ksvg2/bindings/idl/svg/SVGGradientElement.idl: Ditto.
2701         * ksvg2/bindings/idl/svg/SVGICCColor.idl: Ditto.
2702         * ksvg2/bindings/idl/svg/SVGImageElement.idl: Ditto.
2703         * ksvg2/bindings/idl/svg/SVGLangSpace.idl: Ditto.
2704         * ksvg2/bindings/idl/svg/SVGLengthList.idl: Ditto.
2705         * ksvg2/bindings/idl/svg/SVGLineElement.idl: Ditto.
2706         * ksvg2/bindings/idl/svg/SVGLinearGradientElement.idl: Ditto.
2707         * ksvg2/bindings/idl/svg/SVGLocatable.idl: Ditto.
2708         * ksvg2/bindings/idl/svg/SVGMarkerElement.idl: Ditto.
2709         * ksvg2/bindings/idl/svg/SVGNumberList.idl: Ditto.
2710         * ksvg2/bindings/idl/svg/SVGPaint.idl: Ditto.
2711         * ksvg2/bindings/idl/svg/SVGPathElement.idl: Ditto.
2712         * ksvg2/bindings/idl/svg/SVGPathSeg.idl: Ditto.
2713         * ksvg2/bindings/idl/svg/SVGPathSegArc.idl: Ditto.
2714         * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl: Ditto.
2715         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl: Ditto.
2716         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl: Ditto.
2717         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl: Ditto.
2718         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl: Ditto.
2719         * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl: Ditto.
2720         * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl: Ditto.
2721         * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl: Ditto.
2722         * ksvg2/bindings/idl/svg/SVGPathSegList.idl: Ditto.
2723         * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl: Ditto.
2724         * ksvg2/bindings/idl/svg/SVGPatternElement.idl: Ditto.
2725         * ksvg2/bindings/idl/svg/SVGPointList.idl: Ditto.
2726         * ksvg2/bindings/idl/svg/SVGPolygonElement.idl: Ditto.
2727         * ksvg2/bindings/idl/svg/SVGPolylineElement.idl: Ditto.
2728         * ksvg2/bindings/idl/svg/SVGPreserveAspectRatio.idl: Ditto.
2729         * ksvg2/bindings/idl/svg/SVGRadialGradientElement.idl: Ditto.
2730         * ksvg2/bindings/idl/svg/SVGRectElement.idl: Ditto.
2731         * ksvg2/bindings/idl/svg/SVGRenderingIntent.idl: Ditto.
2732         * ksvg2/bindings/idl/svg/SVGScriptElement.idl: Ditto.
2733         * ksvg2/bindings/idl/svg/SVGSetElement.idl: Ditto.
2734         * ksvg2/bindings/idl/svg/SVGStopElement.idl: Ditto.
2735         * ksvg2/bindings/idl/svg/SVGStringList.idl: Ditto.
2736         * ksvg2/bindings/idl/svg/SVGStylable.idl: Ditto.
2737         * ksvg2/bindings/idl/svg/SVGStyleElement.idl: Ditto.
2738         * ksvg2/bindings/idl/svg/SVGSwitchElement.idl: Ditto.
2739         * ksvg2/bindings/idl/svg/SVGSymbolElement.idl: Ditto.
2740         * ksvg2/bindings/idl/svg/SVGTSpanElement.idl: Ditto.
2741         * ksvg2/bindings/idl/svg/SVGTests.idl: Ditto.
2742         * ksvg2/bindings/idl/svg/SVGTextContentElement.idl: Ditto.
2743         * ksvg2/bindings/idl/svg/SVGTextElement.idl: Ditto.
2744         * ksvg2/bindings/idl/svg/SVGTextPositioningElement.idl: Ditto.
2745         * ksvg2/bindings/idl/svg/SVGTitleElement.idl: Ditto.
2746         * ksvg2/bindings/idl/svg/SVGTransformList.idl: Ditto.
2747         * ksvg2/bindings/idl/svg/SVGTransformable.idl: Ditto.
2748         * ksvg2/bindings/idl/svg/SVGURIReference.idl: Ditto.
2749         * ksvg2/bindings/idl/svg/SVGUnitTypes.idl: Ditto.
2750         * ksvg2/bindings/idl/svg/SVGUseElement.idl: Ditto.
2751         * ksvg2/bindings/idl/svg/SVGViewElement.idl: Ditto.
2752         * ksvg2/bindings/idl/svg/SVGZoomAndPan.idl: Ditto.
2753         * ksvg2/bindings/idl/svg/SVGZoomEvent.idl: Ditto.
2754         * ksvg2/svg/SVGAngle.idl: Ditto.
2755         * ksvg2/svg/SVGAnimatedLength.idl: Ditto.
2756         * ksvg2/svg/SVGColor.idl: Ditto.
2757         * ksvg2/svg/SVGDocument.idl: Ditto.
2758         * ksvg2/svg/SVGElement.idl: Ditto.
2759         * ksvg2/svg/SVGEvent.idl: Ditto.
2760         * ksvg2/svg/SVGLength.idl: Ditto.
2761         * ksvg2/svg/SVGMatrix.idl: Ditto.
2762         * ksvg2/svg/SVGNumber.idl: Ditto.
2763         * ksvg2/svg/SVGPoint.idl: Ditto.
2764         * ksvg2/svg/SVGRect.idl: Ditto.
2765         * ksvg2/svg/SVGSVGElement.idl: Ditto.
2766         * ksvg2/svg/SVGTransform.idl: Ditto.
2767
2768 2006-06-11  Anders Carlsson  <acarlsson@apple.com>
2769
2770         Reviewed by Geoff.
2771
2772         http://bugzilla.opendarwin.org/show_bug.cgi?id=9390
2773         Move full-frame plugins to WebCore
2774         
2775         * WebCore.vcproj/WebCore/WebCore.vcproj:
2776         * WebCore.xcodeproj/project.pbxproj:
2777         Add PluginDocument
2778         
2779         * bridge/mac/FrameMac.h:
2780         * bridge/mac/FrameMac.mm:
2781         (WebCore::FrameMac::redirectDataToPlugin):
2782         Call the bridge.
2783         
2784         * bridge/mac/WebCoreFrameBridge.h:
2785         * bridge/mac/WebCoreFrameBridge.mm:
2786         Add redirectDataToPlugin which is used to redirect incoming data
2787         to a plugin.
2788         
2789         * bridge/mac/WebCoreViewFactory.h:
2790         Add pluginSupportsMIMEType which returns whether any plugins support a given MIME type.
2791         
2792         * dom/DOMImplementation.cpp:
2793         * dom/DOMImplementation.h:
2794         Get rid of createTextDocument and just create a text document explicitly when needed.
2795         
2796         * dom/Document.h:
2797         (WebCore::Document::isPluginDocument):
2798         * loader/PluginDocument.cpp: Added.
2799         (WebCore::PluginTokenizer::PluginTokenizer):
2800         (WebCore::PluginTokenizer::wantsRawData):
2801         (WebCore::PluginTokenizer::write):
2802         (WebCore::PluginTokenizer::createDocumentStructure):
2803         (WebCore::PluginTokenizer::writeRawData):
2804         (WebCore::PluginTokenizer::stopParsing):
2805         (WebCore::PluginTokenizer::finish):
2806         (WebCore::PluginTokenizer::isWaitingForScripts):
2807         (WebCore::PluginDocument::PluginDocument):
2808         (WebCore::PluginDocument::createTokenizer):
2809         * loader/PluginDocument.h: Added.
2810         (WebCore::PluginDocument::isPluginDocument):
2811         Add PluginDocument.
2812         
2813         * page/Frame.cpp:
2814         (WebCore::Frame::begin):
2815         Possibly create a plugin document.
2816         
2817         * page/Frame.h:
2818         (WebCore::Frame::redirectDataToPlugin):
2819         Add declaration.
2820         
2821         * platform/PlugInInfoStore.h:
2822         * platform/mac/PlugInInfoStoreMac.mm:
2823         (WebCore::PlugInInfoStore::supportsMIMEType):
2824         Ask WebCoreViewFactory if the MIME type is supported.
2825
2826 2006-06-10  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2827
2828         Reviewed by hyatt.
2829
2830         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9334
2831           Incomplete repaint when changing block from non-positioned to positioned
2832
2833         Test: fast/repaint/static-to-positioned.html
2834
2835         * rendering/RenderObject.cpp:
2836         (WebCore::RenderObject::setStyle): If changing from static to positioned, repaint
2837         as static.
2838
2839 2006-06-10  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2840
2841         Reviewed by hyatt.
2842
2843         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9193
2844           REGRESSION: setting an opacity on an element with an outline causes the outline to disappear completely
2845
2846         Test: fast/layers/opacity-outline.html
2847
2848         - fix repainting of layer children's outlines that extend beyond the layer
2849
2850         Test: fast/repaint/layer-child-outline.html
2851
2852         * rendering/RenderLayer.cpp:
2853         (WebCore::RenderLayer::intersectsDamageRect): Account for outlines.
2854         (WebCore::RenderLayer::absoluteBoundingBox): Ditto.
2855         * rendering/RenderObject.cpp:
2856         (WebCore::RenderObject::maximalOutlineSize): Changed to return the view's maximal
2857         outline size rather than 0 for PaintPhaseChildOutlines.
2858
2859 2006-06-10  Steve Falkenburg  <sfalken@apple.com>
2860
2861         Fix build break
2862
2863         * platform/cairo/GraphicsContextCairo.cpp:
2864         * platform/win/TemporaryLinkStubs.cpp:
2865         (GraphicsContext::scale):
2866
2867 2006-06-10  Geoffrey Garen  <ggaren@apple.com>
2868
2869         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8515
2870         Linux porting compile bug
2871         
2872         Fix by Mike Emmel, Reviewed by Darin.
2873
2874         * Projects/gdk/webcore-gdk.bkl:
2875         * WebCoreSources.bkl:
2876         * css/maketokenizer:
2877         * html/HTMLCanvasElement.cpp:
2878         * html/HTMLImageElement.h:
2879         * icon/IconDatabase.cpp:
2880         * make-generated-sources.sh:
2881         * page/Frame.h:
2882         * page/FramePrivate.h:
2883         * platform/Cursor.h:
2884         * platform/FontData.h:
2885         (WebCore::FontData::getGlyphIndex):
2886         * platform/GlyphBuffer.h:
2887         (WebCore::GlyphBuffer::glyphAt):
2888         (WebCore::GlyphBuffer::advanceAt):
2889         (WebCore::GlyphBuffer::add):
2890         * platform/GraphicsContext.h:
2891         * platform/PlatformKeyboardEvent.h:
2892         * platform/PlatformMouseEvent.h:
2893         * platform/PlatformWheelEvent.h:
2894         * platform/ScrollView.h:
2895         * platform/TransferJob.h:
2896         (WebCore::TransferJob::getInternal):
2897         * platform/TransferJobInternal.h:
2898         (WebCore::TransferJobInternal::TransferJobInternal):
2899         * platform/Widget.h:
2900         * platform/cairo/GraphicsContextCairo.cpp:
2901         (WebCore::GraphicsContext::GraphicsContext):
2902         (WebCore::GraphicsContext::roundToDevicePixels):
2903         * webcore-base.bkl:
2904         * xpath/impl/XPathValue.cpp:
2905
2906 2006-06-09  John Sullivan  <sullivan@apple.com>
2907
2908         Reviewed by Tim Omernick and Dave Hyatt.
2909
2910         WebCore support for computing but not highlighting rects for text matches.
2911
2912         * dom/Document.h:
2913         added setRenderedRectForMarker() and renderedRectsForMarkers(), and redefined
2914         MarkerMap to be a hashtable of node -> (pair of vectors), one vector of markers
2915         and one vector of rects
2916         
2917         * dom/Document.cpp:
2918         (placeholderRectForMarker()):
2919         new function, returns a recognizable degenerate rect used until a real rect has been set
2920         (WebCore::Document::addMarker):
2921         Reworked for new MarkerMap data structure; now adds parallel placeholder rect
2922         along with marker
2923         (WebCore::Document::copyMarkers):
2924         Reworked for new MarkerMap data structure
2925         (WebCore::Document::removeMarkers):
2926         Reworked for new MarkerMap data structure; now removed corresponding rect along
2927         with marker
2928         (WebCore::Document::markersForNode):
2929         Reworked for new MarkerMap data structure
2930         (WebCore::Document::renderedRectsForMarkers):
2931         New method, returns an array of all non-placeholder rects for the given marker type
2932         (WebCore::Document::repaintMarkers):
2933         Reworked for new MarkerMap data structure
2934         (WebCore::Document::setRenderedRectForMarker):
2935         New method, sets the rendered rect for a given marker
2936         (WebCore::Document::shiftMarkers):
2937         Reworked for new MarkerMap data structure; resets rendered rects to placeholders.
2938         
2939         * rendering/InlineTextBox.cpp:
2940         (WebCore::InlineTextBox::paint):
2941         removed markedTextMatchesAreHighlighted guard; we always want to call paintTextMatchMarker
2942         now, but sometimes we will end up only computing the rect, not actually highlighting it.
2943         (Maybe some names should be improved here?)
2944         (WebCore::InlineTextBox::paintTextMatchMarker):
2945         Reorganized to move all the code that actually draws into a block that's guarded by
2946         markedTextMatchesAreHighlighted. The rest of the code computes where the highlight will
2947         go, and now we always use that computation in order to call setRenderedRectForMarker.
2948
2949         * bridge/mac/WebCoreFrameBridge.h:
2950         * bridge/mac/WebCoreFrameBridge.mm:
2951         (-[WebCoreFrameBridge rectsForTextMatches]):
2952         New method, returns an array of NSValues representing NSRects. Gets them
2953         from Document::renderedRectsForMarkers
2954         
2955 2006-06-10  Anders Carlsson  <acarlsson@apple.com>
2956
2957         Reviewed by Eric.
2958
2959         * bindings/js/kjs_html.cpp:
2960         (KJS::JSHTMLElement::put):
2961         Call WebCore::JSHTMLElement::put so that autogenerated setters will work 
2962         for HTMLElement.
2963
2964 2006-06-09  Geoffrey Garen  <ggaren@apple.com>
2965
2966         - Build fix after last JSC check-in (oops!)
2967         
2968         * bridge/mac/WebCoreScriptDebugger.mm:
2969         (-[WebCoreScriptCallFrame scopeChain]):
2970         (-[WebCoreScriptCallFrame functionName]):
2971         (-[WebCoreScriptCallFrame evaluateWebScript:]):
2972
2973 2006-06-09  David Hyatt  <hyatt@apple.com>
2974
2975         Rename m_isFocused on the frame to m_isActive, since it isn't really
2976         about focus but is instead about whether or not the top-level window is
2977         active.
2978
2979         Pull code that was incorrectly factored into Mac-only code out of FrameMac
2980         and back up into Frame.
2981
2982         Reviewed by andersca
2983
2984         * bridge/mac/FrameMac.h:
2985         * bridge/mac/FrameMac.mm:
2986         * page/Frame.cpp:
2987         (WebCore::Frame::setFocusNodeIfNeeded):
2988         (WebCore::Frame::isActive):
2989         (WebCore::Frame::setIsActive):
2990         * page/FramePrivate.h:
2991         (WebCore::FramePrivate::FramePrivate):
2992
2993 2006-06-09  David Hyatt  <hyatt@apple.com>
2994
2995         Rework selection coloring.  Rename displaysWithFocusAttributes
2996         to isActive.  Move the white-blending code onto the Color API to make
2997         it more convenient to mutate colors for selection blending.  Eliminate all
2998         the selection state from the GraphicsContext and move it to the RenderTheme.
2999         Implement both Win32 and Mac theme selection colors.
3000
3001         Reviewed by sfalken
3002
3003         * bridge/mac/FrameMac.h:
3004         * bridge/mac/FrameMac.mm:
3005         (WebCore::FrameMac::setIsActive):
3006         * bridge/mac/WebCoreFrameBridge.h:
3007         * bridge/mac/WebCoreFrameBridge.mm:
3008         (-[WebCoreFrameBridge drawRect:]):
3009         (-[WebCoreFrameBridge setIsActive:]):
3010         (-[WebCoreFrameBridge selectionColor]):
3011         * css/cssstyleselector.cpp:
3012         (WebCore::CSSStyleSelector::checkOneSelector):
3013         * page/Frame.cpp:
3014         (WebCore::Frame::isActive):
3015         (WebCore::Frame::setIsActive):
3016         * page/Frame.h:
3017         * platform/Color.cpp:
3018         (WebCore::blend):
3019         (WebCore::Color::blendWithWhite):
3020         * platform/Color.h:
3021         (WebCore::Color::hasAlpha):
3022         * platform/GraphicsContext.cpp:
3023         (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
3024         * platform/GraphicsContext.h:
3025         * platform/mac/GraphicsContextMac.mm:
3026         * platform/win/TemporaryLinkStubs.cpp:
3027         (GraphicsContext::endTransparencyLayer):
3028         * rendering/InlineTextBox.cpp:
3029         (WebCore::InlineTextBox::paintSelection):
3030         * rendering/RenderBlock.cpp:
3031         (WebCore::RenderBlock::fillHorizontalSelectionGap):
3032         (WebCore::RenderBlock::fillVerticalSelectionGap):
3033         (WebCore::RenderBlock::fillLeftSelectionGap):
3034         (WebCore::RenderBlock::fillRightSelectionGap):
3035         * rendering/RenderHTMLCanvas.cpp:
3036         (WebCore::RenderHTMLCanvas::paint):
3037         * rendering/RenderImage.cpp:
3038         (WebCore::RenderImage::paint):
3039         * rendering/RenderListMarker.cpp:
3040         (WebCore::RenderListMarker::paint):
3041         * rendering/RenderListMarker.h:
3042         * rendering/RenderObject.cpp:
3043         (WebCore::RenderObject::selectionColor):
3044         * rendering/RenderObject.h:
3045         * rendering/RenderReplaced.cpp:
3046         * rendering/RenderReplaced.h:
3047         * rendering/RenderTheme.cpp:
3048         (WebCore::RenderTheme::activeSelectionColor):
3049         (WebCore::RenderTheme::inactiveSelectionColor):
3050         (WebCore::RenderTheme::platformActiveSelectionColor):
3051         (WebCore::RenderTheme::platformInactiveSelectionColor):
3052         * rendering/RenderTheme.h:
3053         * rendering/RenderThemeMac.h:
3054         * rendering/RenderThemeMac.mm:
3055         (WebCore::RenderThemeMac::platformActiveSelectionColor):
3056         (WebCore::RenderThemeMac::platformInactiveSelectionColor):
3057         * rendering/RenderThemeWin.cpp:
3058         (WebCore::RenderThemeWin::platformActiveSelectionColor):
3059         (WebCore::RenderThemeWin::platformInactiveSelectionColor):
3060         * rendering/RenderThemeWin.h:
3061         * rendering/RenderWidget.cpp:
3062         (WebCore::RenderWidget::paint):
3063
3064 2006-06-09  Justin Garcia  <justin.garcia@apple.com>
3065
3066         Reviewed by levi
3067         
3068         <rdar://problem/4549980>
3069         REGRESSION: "Find Again" can get stuck when searching for string with a trailing space
3070
3071         * bridge/mac/FrameMac.h: Moved findString to Frame.
3072         * bridge/mac/FrameMac.mm: Ditto.
3073         * bridge/mac/WebCoreFrameBridge.mm:
3074         (-[WebCoreFrameBridge searchFor:direction:caseSensitive:wrap:]): 
3075         Convert the NSString to a String.
3076         * editing/JSEditor.cpp: Added execCommand(FindString, ...)
3077         * editing/Selection.cpp: Added a constructor for Ranges
3078         (WebCore::Selection::Selection): 
3079         * editing/Selection.h:
3080         * page/Frame.cpp:
3081         (WebCore::Frame::findString): Moved from FrameMac.  Compare a selection created 
3082         using the found range with the current selection in case the current selection is
3083         the found range minus some collapsed whitespace on the edges.
3084         * page/Frame.h:
3085
3086 2006-06-09  Steve Falkenburg  <sfalken@apple.com>
3087
3088         Fix build break
3089
3090         * WebCore.vcproj/WebCore/WebCore.vcproj:
3091         * css/MediaQueryEvaluator.cpp:
3092         * platform/win/TemporaryLinkStubs.cpp:
3093         (GraphicsContext::addRoundedRectClip):
3094         (GraphicsContext::addInnerRoundedRectClip):
3095         (WebCore::screenDepthPerComponent):
3096         (WebCore::screenIsMonochrome):
3097
3098 2006-06-09  Kimmo Kinnunen  <kimmo.t.kinnunen@nokia.com>
3099
3100         Reviewed by Hyatt. Tweaked by Maciej. Tweaks reviewed by Beth. 
3101         Landed by Beth.
3102
3103         CSS3 Media Queries implementation.
3104         <http://bugzilla.opendarwin.org/show_bug.cgi?id=4127>
3105
3106         * WebCore.xcodeproj/project.pbxproj:
3107         * bindings/js/kjs_css.cpp:
3108         (KJS::DOMMediaList::put):
3109         (KJS::KJS::DOMMediaListProtoFunc::callAsFunction):
3110         * bindings/objc/DOMCSS.mm:
3111         (-[DOMMediaList setMediaText:]):
3112         (-[DOMMediaList deleteMedium:]):
3113         (-[DOMMediaList appendMedium:]):
3114         * css/CSSGrammar.y:
3115         * css/MediaFeatureNames.cpp: Added.
3116         (WebCore::MediaFeatureNames::init):
3117         * css/MediaFeatureNames.h: Added.
3118         * css/MediaList.cpp:
3119         (WebCore::MediaList::MediaList):
3120         (WebCore::MediaList::~MediaList):
3121         (WebCore::parseMediaDescriptor):
3122         (WebCore::MediaList::deleteMedium):
3123         (WebCore::MediaList::mediaText):
3124         (WebCore::MediaList::setMediaText):
3125         (WebCore::MediaList::item):
3126         (WebCore::MediaList::appendMedium):
3127         (WebCore::MediaList::appendMediaQuery):
3128         * css/MediaList.h:
3129         (WebCore::MediaList::MediaList):
3130         (WebCore::MediaList::length):
3131         (WebCore::MediaList::mediaQueries):
3132         * css/MediaQuery.cpp: Added.
3133         (WebCore::MediaQuery::MediaQuery):
3134         (WebCore::MediaQuery::~MediaQuery):
3135         (WebCore::MediaQuery::operator==):
3136         (WebCore::MediaQuery::cssText):
3137         * css/MediaQuery.h: Added.
3138         (WebCore::MediaQuery::):
3139         (WebCore::MediaQuery::restrictor):
3140         (WebCore::MediaQuery::expressions):
3141         (WebCore::MediaQuery::mediaType):
3142         (WebCore::MediaQuery::append):
3143         * css/MediaQueryEvaluator.cpp: Added.
3144         (WebCore::):
3145         (WebCore::MediaQueryEvaluator):
3146         (WebCore::MediaQueryEvaluator::~MediaQueryEvaluator):
3147         (WebCore::MediaQueryEvaluator::mediaTypeMatch):
3148         (WebCore::applyRestrictor):
3149         (WebCore::MediaQueryEvaluator::eval):
3150         (WebCore::parseAspectRatio):
3151         (WebCore::cmpvalue):
3152         (WebCore::numberValue):
3153         (WebCore::colorMediaFeatureEval):
3154         (WebCore::monochromeMediaFeatureEval):
3155         (WebCore::device_aspect_ratioMediaFeatureEval):
3156         (WebCore::gridMediaFeatureEval):
3157         (WebCore::device_heightMediaFeatureEval):
3158         (WebCore::device_widthMediaFeatureEval):
3159         (WebCore::heightMediaFeatureEval):
3160         (WebCore::widthMediaFeatureEval):
3161         (WebCore::min_colorMediaFeatureEval):
3162         (WebCore::max_colorMediaFeatureEval):
3163         (WebCore::min_monochromeMediaFeatureEval):
3164         (WebCore::max_monochromeMediaFeatureEval):
3165         (WebCore::min_device_aspect_ratioMediaFeatureEval):
3166         (WebCore::max_device_aspect_ratioMediaFeatureEval):
3167         (WebCore::min_heightMediaFeatureEval):
3168         (WebCore::max_heightMediaFeatureEval):
3169         (WebCore::min_widthMediaFeatureEval):
3170         (WebCore::max_widthMediaFeatureEval):
3171         (WebCore::min_device_heightMediaFeatureEval):
3172         (WebCore::max_device_heightMediaFeatureEval):
3173         (WebCore::min_device_widthMediaFeatureEval):
3174         (WebCore::max_device_widthMediaFeatureEval):
3175         (WebCore::createFunctionMap):
3176         * css/MediaQueryEvaluator.h: Added.
3177         * css/MediaQueryExp.cpp: Added.
3178         (WebCore::MediaQueryExp::MediaQueryExp):
3179         (WebCore::MediaQueryExp::~MediaQueryExp):
3180         * css/MediaQueryExp.h: Added.
3181         (WebCore::MediaQueryExp::mediaFeature):
3182         (WebCore::MediaQueryExp::value):
3183         (WebCore::MediaQueryExp::operator==):
3184         * css/StyleSheet.cpp:
3185         (WebCore::StyleSheet::setMedia):
3186         * css/cssparser.cpp:
3187         (WebCore::CSSParser::CSSParser):
3188         (WebCore::CSSParser::~CSSParser):
3189         (WebCore::CSSParser::setupParser):
3190         (WebCore::CSSParser::parseMediaQuery):
3191         (WebCore::CSSParser::createFloatingMediaQueryExp):
3192         (WebCore::CSSParser::sinkFloatingMediaQueryExp):
3193         (WebCore::CSSParser::createFloatingMediaQueryExpList):
3194         (WebCore::CSSParser::sinkFloatingMediaQueryExpList):
3195         (WebCore::CSSParser::createFloatingMediaQuery):
3196         (WebCore::CSSParser::sinkFloatingMediaQuery):
3197         * css/cssparser.h:
3198         * css/cssstyleselector.cpp:
3199         (WebCore::CSSStyleSelector::CSSStyleSelector):
3200         (WebCore::CSSStyleSelector::init):
3201         (WebCore::CSSStyleSelector::~CSSStyleSelector):
3202         (WebCore::CSSStyleSelector::loadDefaultStyle):
3203         (WebCore::CSSStyleSelector::matchUARules):
3204         (WebCore::CSSStyleSelector::styleForElement):
3205         (WebCore::CSSStyleSelector::pseudoStyleForElement):
3206         (WebCore::CSSStyleSelector::updateFont):
3207         (WebCore::CSSStyleSelector::cacheBorderAndBackground):
3208         (WebCore::CSSStyleSelector::styleRulesForElement):
3209         (WebCore::CSSRuleSet::addRulesFromSheet):
3210         * css/cssstyleselector.h:
3211         * css/maketokenizer:
3212         * css/tokenizer.flex:
3213         * dom/DOMImplementation.cpp:
3214         (WebCore::DOMImplementation::createCSSStyleSheet):
3215         * html/HTMLLinkElement.cpp:
3216         (WebCore::HTMLLinkElement::process):
3217         (WebCore::HTMLLinkElement::setStyleSheet):
3218         * html/HTMLStyleElement.cpp:
3219         (WebCore::HTMLStyleElement::childrenChanged):
3220         * ksvg2/svg/SVGDOMImplementation.cpp:
3221         (SVGDOMImplementation::createCSSStyleSheet):
3222         * ksvg2/svg/SVGStyleElement.cpp:
3223         (WebCore::SVGStyleElement::childrenChanged):
3224         * page/Frame.cpp:
3225         (WebCore::Frame::Frame):
3226         * platform/Screen.h:
3227         * platform/mac/ScreenMac.mm:
3228         (WebCore::screenDepthPerComponent):
3229         (WebCore::screenIsMonochrome):
3230
3231 2006-06-08  Levi Weintraub  <lweintraub@apple.com>
3232
3233         Reviewed by justin
3234         
3235         <http://bugzilla.opendarwin.org/show_bug.cgi?id=4468>
3236         Implement execCommand(Insert{Un}OrderedList)
3237
3238         * WebCore.xcodeproj/project.pbxproj: Added InsertListCommand.{h,cpp} to the project.
3239         * dom/Position.cpp:
3240         (WebCore::hasRenderedNonAnonymousDescendantsWithHeight): 
3241         Added. A block with height is only a candidate if this is false.  This should fix the problems
3242         getting carets into empty blocks.
3243         (WebCore::Position::inRenderedContent):
3244         * editing/AppendNodeCommand.cpp:
3245         (WebCore::AppendNodeCommand::doApply):
3246         * editing/CompositeEditCommand.cpp:
3247         (WebCore::hasARenderedDescendant):
3248         (WebCore::CompositeEditCommand::prune): A node can have DOM descendants that are rendered, yet
3249         have a renderer with no descendants.  Fixed the pruning rule to avoid removing a node like this.
3250         (WebCore::CompositeEditCommand::mergeIdenticalElements): Put the two elements next to
3251         each other if they aren't already, as a convenience.
3252         (WebCore::CompositeEditCommand::moveParagraph): Added code to preserve the current selection.
3253         (WebCore::CompositeEditCommand::moveParagraphs): Ditto. 
3254         * editing/CompositeEditCommand.h:
3255         * editing/DeleteSelectionCommand.cpp:
3256         (WebCore::DeleteSelectionCommand::initializeStartEnd): Expansion for special elements should
3257         continue to happen until it is no longer possible.
3258         (WebCore::DeleteSelectionCommand::handleGeneralDelete): The code to adjust the start node
3259         wouldn't always avoid removing the start block.
3260         * editing/InsertListCommand.cpp: Added.
3261         (WebCore::InsertListCommand::fixOrphanedListChild): Puts a list item that isn't inside a list
3262         into a list.
3263         (WebCore::InsertListCommand::InsertListCommand):
3264         (WebCore::InsertListCommand::modifyRange):
3265         (WebCore::InsertListCommand::doApply):
3266         * editing/InsertListCommand.h: Added.
3267         (WebCore::InsertListCommand::):
3268         * editing/InsertNodeBeforeCommand.cpp:
3269         (WebCore::InsertNodeBeforeCommand::doApply):
3270         * editing/InsertParagraphSeparatorCommand.cpp:
3271         * editing/JSEditor.cpp:
3272         * editing/TextIterator.cpp:
3273         (WebCore::TextIterator::advance): Don't handle a node if the end of the range used to create the 
3274         iterator ends at the start of that node.
3275         * editing/VisiblePosition.cpp:
3276         (WebCore::VisiblePosition::next):
3277         (WebCore::VisiblePosition::previous):
3278         * editing/VisiblePosition.h: 
3279         Added a parameter to next/previous that can prevent them from leaving the current editable region.
3280         * editing/htmlediting.cpp:
3281         (WebCore::highestAncestor):
3282         (WebCore::enclosingList):
3283         (WebCore::enclosingListChild):
3284         (WebCore::outermostEnclosingList):
3285         (WebCore::createListItemElement):
3286         * editing/htmlediting.h:
3287         * page/Frame.cpp:
3288         (WebCore::Frame::selectionListState): Added.
3289         * page/Frame.h:
3290
3291 2006-06-08  David Harrison  <harrison@apple.com>
3292
3293         Reviewed by Geoff and John.
3294
3295         <rdar://problem/4558879> -[DOMCSSPrimitiveValue setStringValue:] throws an exception (12)
3296         
3297         Problem was the primitive value was getting reset to a generic state before the parameter
3298         check that relies on that state.
3299
3300         Test: fast/dom/setPrimitiveValue.html
3301
3302         * css/CSSPrimitiveValue.cpp:
3303         (WebCore::CSSPrimitiveValue::setFloatValue):
3304         (WebCore::CSSPrimitiveValue::setStringValue):
3305         Move parameter checks ahead of call to cleanup().
3306
3307 2006-06-08  Alice Liu  <alice.liu@apple.com>
3308
3309         Reviewed by justin.
3310
3311         - fixed <rdar://problem/4578115> support Range.isPointInRange
3312         - fixed <rdar://problem/4578123> support Range.comparePoint
3313
3314         * dom/Range.cpp:
3315         (WebCore::Range::isPointInRange):
3316         added implementation
3317         (WebCore::Range::comparePoint):
3318         added implementation
3319         * dom/Range.h:
3320         added prototypes
3321         * dom/Range.idl:
3322         added bindings
3323
3324 2006-06-08  Darin Adler  <darin@apple.com>
3325
3326         Reviewed by justin.
3327
3328         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8616
3329           REGRESSION: TinyMCE: Crash on Undo
3330
3331         * bridge/mac/WebCoreFrameBridge.mm:
3332         (-[WebCoreFrameBridge getInnerNonSharedNode:innerNode:URLElement:atPoint:allowShadowContent:]):
3333         Changed to call nodeInfoAtPoint directly.
3334         (-[WebCoreFrameBridge _visiblePositionForPoint:]): Changed to call nodeInfoAtPoint directly.
3335         Also added code to convert coordinates so it works for points that are in nodes in subframes.
3336
3337         * page/Frame.cpp:
3338         (WebCore::Frame::setMark): Added assertions to catch if we attempt to set selection
3339         endpoints in another document.
3340         (WebCore::Frame::setSelection): Ditto.
3341
3342 2006-06-07  Justin Garcia  <justin.garcia@apple.com>
3343
3344         Reviewed by levi
3345         
3346         Fixed some comments and removed an unused variable.
3347
3348         * editing/CompositeEditCommand.cpp:
3349         (WebCore::CompositeEditCommand::removeBlockPlaceholder):
3350         Don't remove a br if it isn't at the start of a block, since
3351         it isn't really a "block placeholder".
3352         * editing/DeleteSelectionCommand.cpp:
3353         (WebCore::DeleteSelectionCommand::initializePositionData):
3354         (WebCore::DeleteSelectionCommand::mergeParagraphs):
3355         (WebCore::DeleteSelectionCommand::doApply):
3356         * editing/InsertLineBreakCommand.cpp:
3357         (WebCore::InsertLineBreakCommand::doApply):
3358         * editing/ReplaceSelectionCommand.cpp:
3359         (WebCore::ReplaceSelectionCommand::doApply):
3360         (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
3361         * editing/htmlediting.cpp:
3362
3363 2006-06-07  David Hyatt  <hyatt@apple.com>
3364
3365         Add support for custom highlighting.  This is all ifdefed to be Mac-only.
3366
3367         Reviewed by justin
3368
3369         * WebCore.xcodeproj/project.pbxproj:
3370         * bridge/mac/FrameMac.h:
3371         * bridge/mac/FrameMac.mm:
3372         (WebCore::FrameMac::paintCustomHighlight):
3373         * bridge/mac/WebCoreFrameBridge.h:
3374         * platform/mac/ClipboardMac.h:
3375         * rendering/InlineTextBox.cpp:
3376         (WebCore::InlineTextBox::paint):
3377         (WebCore::InlineTextBox::paintCustomHighlight):
3378         * rendering/InlineTextBox.h:
3379
3380 2006-06-07  Adele Peterson  <adele@apple.com>
3381
3382         Reviewed by Hyatt 
3383
3384         Added support for cross-platform resize property.
3385
3386         * platform/PlatformMouseEvent.h: Removed isMouseButtonDown, since we
3387         already cache this info when we handle mouse down and mouse up.
3388         * platform/mac/MouseEventMac.mm: ditto.
3389         * platform/win/TemporaryLinkStubs.cpp: ditto.
3390
3391         * page/Frame.cpp:
3392         (WebCore::Frame::autoscrollTimerFired): Use d->m_bMousePressed instead of isMouseButtonDown.
3393         * page/FrameView.cpp:
3394         (WebCore::FrameView::handleMouseMoveEvent): Passes event to layer resize method.
3395         (WebCore::FrameView::mousePressed): Added.
3396         * page/FrameView.h: Added mousePressed.
3397
3398         * rendering/RenderTheme.h: Removed paintResizeControl.
3399         Since its not dependent on the theme, the layer can just paint this.
3400         * rendering/RenderTheme.cpp: ditto.
3401         * rendering/RenderLayer.cpp:
3402         (WebCore::RenderLayer::RenderLayer): Initializes m_resizeCornerImage.
3403         (WebCore::RenderLayer::~RenderLayer): Deletes m_resizeCornerImage.
3404         (WebCore::RenderLayer::resize): Uses passed in event instead of creating a new one.
3405         (WebCore::RenderLayer::paintResizeControl): Now loads and paints the resize image.
3406         * rendering/RenderLayer.h: Added m_resizeCornerImage.  Important to have one per-layer for when we allow
3407         more customization.
3408
3409         * platform/cairo/ImageCairo.cpp:
3410         (WebCore::Image::loadResource): Loads image resources.
3411
3412 2006-06-07  David Hyatt  <hyatt@apple.com>
3413
3414         Add support for a new property for custom highlighting.  This patch just
3415         adds support for the parsing of the property.  It doesn't do anything yet.
3416
3417         Reviewed by beth
3418
3419         * css/CSSComputedStyleDeclaration.cpp:
3420         (WebCore::):
3421         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3422         * css/CSSPropertyNames.in:
3423         * css/cssparser.cpp:
3424         (WebCore::CSSParser::parseValue):
3425         * css/cssstyleselector.cpp:
3426         (WebCore::CSSStyleSelector::applyProperty):
3427         * rendering/render_style.cpp:
3428         (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData):
3429         (WebCore::StyleCSS3InheritedData::operator==):
3430         (WebCore::RenderStyle::diff):
3431         * rendering/render_style.h:
3432         (WebCore::RenderStyle::highlight):
3433         (WebCore::RenderStyle::setHighlight):
3434         (WebCore::RenderStyle::initialHighlight):
3435
3436 2006-06-07  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3437
3438         Fix suggested by Rob Buis. Reviewed by Darin.
3439
3440         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9341
3441           REGRESSION: Repro crash caused by style="font:bold"
3442
3443         Test: fast/css/font-shorthand-weight-only.html
3444
3445         * css/cssparser.cpp: (WebCore::CSSParser::parseFont): Revert part of the change
3446         made to fix bug 5564.
3447
3448 2006-06-07  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3449
3450         Reviewed by Hyatt.
3451
3452         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9122
3453           REGRESSION: Incorrect vertical position for text fields in a "display: table" block
3454
3455         Test: fast/table/text-field-baseline.html
3456
3457         * rendering/RenderTableCell.cpp:
3458         (WebCore::RenderTableCell::baselinePosition): Do not descend into replaced objects, just
3459         use their baseline.
3460
3461 2006-06-07  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3462
3463         Reviewed by Hyatt (concept) and Darin (some coding details).
3464
3465         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4334
3466           REGRESSION: Flickering when css-hover should change opacity on floating elements
3467
3468         Pixel test: fast/block/float/nopaint-after-layer-destruction.html
3469
3470         * rendering/RenderBlock.cpp:
3471         (WebCore::RenderBlock::setPaintsFloatingObject): Added. Changes the noPaint flag
3472         in the block's FloatingObject for the given float and calls setChildNeedsLayout.
3473         * rendering/RenderBlock.h:
3474         * rendering/RenderBox.cpp:
3475         (WebCore::blockThatPaintsFloat): Added this helper function.
3476         (WebCore::RenderBox::setStyle): Added. Calls to setPaintsFloatingObject when a float
3477         gains or loses its layer.
3478
3479 2006-06-06  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3480
3481         Reviewed by Hyatt.
3482
3483         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9121
3484           REGRESSION: [Incremental Repaint] DHTML movement test failures
3485
3486         Test (repaint): fast/repaint/containing-block-position-change.html
3487
3488         * manual-tests/containing-block-position-chage.html: Added.
3489         * rendering/RenderBlock.cpp:
3490         (WebCore::RenderBlock::layoutBlock): Unrelated change: fixed typo from
3491         the RenderCanvas to RenderView rename.
3492         (WebCore::RenderBlock::removePositionedObject): Added a return immediately
3493         after removing the object.
3494         (WebCore::RenderBlock::removePositionedObjects): Added.
3495         * rendering/RenderBlock.h:
3496         * rendering/RenderObject.cpp:
3497         (WebCore::RenderObject::setStyle): Added code to remove absolutely positioned
3498         descendants from the positioned objects list of their current containing block
3499         when they are going to have a new one as a result of this block's position
3500         property changing. 
3501         * rendering/RenderObject.h:
3502         (WebCore::RenderObject::removePositionedObjects):
3503
3504 2006-06-06  Justin Garcia  <justin.garcia@apple.com>
3505
3506         Reviewed by levi
3507
3508         * dom/Node.cpp:
3509         (WebCore::Node::firstDescendant): Added.
3510         * dom/Node.h:
3511         * dom/Range.cpp: Added a constructor that takes in Positions.
3512         (WebCore::Range::Range):
3513         * dom/Range.h:
3514         * editing/CompositeEditCommand.cpp:
3515         (WebCore::CompositeEditCommand::insertNodeAt): 
3516         Let this function insert children into empty containers.  
3517         Calls canHaveChildrenForEditing.
3518         (WebCore::CompositeEditCommand::appendNode): Assert that the parent canHaveChildrenForEditing.
3519         (WebCore::CompositeEditCommand::moveParagraph): Tell ReplaceSelectionCommand to select the 
3520         replacement so that moveParagraph's callers have a valid destination after the move.
3521         * editing/CompositeEditCommand.h: Moved removeFullySelectedNode to DeleteSelectionCommand,
3522         made deleteTextFromNode virtual so that DeleteSelectionCommand can update it's endingPosition.
3523         * editing/DeleteSelectionCommand.cpp:
3524         (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): 
3525         Removed m_startNode, used a local variable.
3526         (WebCore::DeleteSelectionCommand::initializeStartEnd): Fixed special element expansion.
3527         (WebCore::DeleteSelectionCommand::initializePositionData): Compute the endingPosition up
3528         front and keep track of it as nodes and text are removed.
3529         (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete): Removed use of m_startNode.
3530         (WebCore::DeleteSelectionCommand::removeFullySelectedNode): Moved from CompositeEditCommand.
3531         Update m_endingPosition as we remove nodes.
3532         (WebCore::DeleteSelectionCommand::deleteTextFromNode): 
3533         Update m_endingPosition as we delete text.
3534         (WebCore::DeleteSelectionCommand::handleGeneralDelete): Retain the start block.  Cleaned up.
3535         (WebCore::DeleteSelectionCommand::mergeParagraphs): Recompute m_endingPosition since moveParagraph
3536         clobbers the old one.
3537         (WebCore::DeleteSelectionCommand::doApply): Fixed the logic for placeholder insertion after 
3538         deletion. Make the placeholder decision before we do special element expansion.
3539         * editing/DeleteSelectionCommand.h:
3540         * editing/InsertLineBreakCommand.cpp:
3541         (WebCore::InsertLineBreakCommand::doApply): Fixed a bug where an extra br was inserted and cleaned 
3542         up the code.
3543         * editing/InsertParagraphSeparatorCommand.cpp:
3544         (WebCore::InsertParagraphSeparatorCommand::doApply): Deletion of the current selection should do
3545         a merge (added a testcase).
3546         * editing/RebalanceWhitespaceCommand.cpp:
3547         (WebCore::RebalanceWhitespaceCommand::doUnapply): Remove/insert in a way that will trigger a layout.