Reviewed by Anders and Tim Hatcher
[WebKit-https.git] / WebCore / ChangeLog
1 2006-07-07  Brady Eidson  <beidson@apple.com>
2
3         Reviewed by Anders and Tim Hatcher
4
5         Added an accessor to a SQLite config option to change its disk-syncing behavior.
6         Used this accessor to significantly speed up writes to the Icon DB.
7
8         * icon/IconDatabase.cpp:
9         (WebCore::IconDatabase::open):  Disable full syncing to the SQLite db to speed up writes to the icondb
10
11         * icon/SQLDatabase.cpp:
12         (SQLDatabase::setFullsync):
13         (SQLDatabase::setSynchronous):
14         * icon/SQLDatabase.h:
15         (WebCore::SQLDatabase::):  Added accessor to the SQLite config pragma "synchronous"
16
17 2006-07-07  Darin Adler  <darin@apple.com>
18
19         Reviewed by Maciej.
20
21         - fixed a storage leak noticed by the buildbot
22
23         * dom/Document.cpp: (WebCore::Document::removedLastRef):
24         Call delete on the markers before clearing the map containing them.
25
26 2006-07-08  Anders Carlsson  <acarlsson@apple.com>
27
28         Reviewed by Brady.
29
30         http://bugzilla.opendarwin.org/show_bug.cgi?id=9777
31         Reproducible crash in Loading/Frames in ToT.
32         
33         The problem was that the renderpart destructor resets the frame's 
34         owner element. For iframes, this should only be done when the element is 
35         going to be removed from the document.
36         
37         * html/HTMLIFrameElement.cpp:
38         (WebCore::HTMLIFrameElement::~HTMLIFrameElement):
39         (WebCore::HTMLIFrameElement::willRemove):
40         (WebCore::HTMLIFrameElement::removedFromDocument):
41         (WebCore::HTMLIFrameElement::detach):        
42         * html/HTMLIFrameElement.h:
43         Remove the frame in willRemove instead.
44         
45         * rendering/RenderPart.cpp:
46         (WebCore::RenderPart::RenderPart):
47         (WebCore::RenderPart::~RenderPart):
48         * rendering/RenderPart.h:
49         Don't call setFrame(0) in the destructor when the element is an iframe element.
50
51 2006-07-07  Darin Adler  <darin@apple.com>
52
53         Reviewed by Anders.
54
55         - fixed a storage leak noticed by the buildbot
56
57         * page/FrameView.cpp: (WebCore::FrameViewPrivate::~FrameViewPrivate):
58         Delete m_scheduledEvents.
59
60 2006-07-07  Darin Adler  <darin@apple.com>
61
62         Reviewed by Adele.
63
64         - fixed a couple of storage leaks noticed by the buildbot
65
66         * html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::attach):
67         Call deref on the style after calling setRenderStyle, since styleForRenderer
68         returns us a "ref'd" RenderStyle object.
69         * html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::attach): Ditto.
70
71 2006-07-07  Darin Adler  <darin@apple.com>
72
73         Reviewed by Adele.
74
75         - fix some license mistakes
76
77         * LICENSE-APPLE: Added more years of publication to the copyright here.
78
79         * html/CanvasGradient.idl: Corrected license on this file. It had the wrong one.
80         * html/CanvasPattern.idl: Ditto.
81         * html/CanvasRenderingContext2D.idl: Ditto.
82         * html/HTMLCanvasElement.idl: Ditto.
83
84 2006-07-06  Levi Weintraub  <lweintraub@apple.com>
85
86         Reviewed by justin
87
88         Improved table editing: pressing delete directly before or after a table will now select
89         the table first, then delete it, instead of just deleting it. Useful for when the table's
90         existence is non-obvious.
91
92         * bridge/mac/FrameMac.h: Added shouldDeleteSelection, which allows WebCore to trigger
93         deletion editing deligates
94         * bridge/mac/FrameMac.mm: ditto
95         (WebCore::FrameMac::shouldDeleteSelection):
96         * bridge/mac/WebCoreFrameBridge.h: ditto
97         * editing/TypingCommand.cpp: Implemented check for a caret position next to a table, and
98         subsequent selection (as opposed to removal)
99         (WebCore::TypingCommand::deleteKeyPressed):
100         (WebCore::TypingCommand::forwardDeleteKeyPressed):
101         * page/Frame.cpp: shouldDeleteSelection added
102         (WebCore::Frame::shouldDeleteSelection):
103         * page/Frame.h: ditto
104
105 2006-07-07  Sam Weinig  <sam.weinig@gmail.com>
106
107         Reviewed by Eric.
108
109         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9768
110           Split XSLImportRule out of XSLStyleSheet.* into separate 
111           files (one class per file).
112
113         * WebCore.xcodeproj/project.pbxproj:
114         * xml/XSLImportRule.cpp: Added.
115         (WebCore::XSLImportRule::XSLImportRule):
116         (WebCore::XSLImportRule::parentStyleSheet):
117         (WebCore::XSLImportRule::loadSheet):
118         * xml/XSLImportRule.h: Added.
119         * xml/XSLStyleSheet.cpp:
120         * xml/XSLStyleSheet.h:
121
122 2006-07-07  Anders Carlsson  <acarlsson@apple.com>
123
124         Reviewed by Darin.
125
126         http://bugzilla.opendarwin.org/show_bug.cgi?id=8300
127         REGRESSION: First mouse click is randomly ignored when clicking on checkbox and radio buttons
128         
129         * css/html4.css:
130         Set "-webkit-user-select: ignore" on radio buttons and check boxes .
131         
132 2006-07-07  Maciej Stachowiak  <mjs@apple.com>
133
134         Reviewed by Tim Hatcher.
135
136         - fix 20 Node leaks on fast/events tests - these should be the last ones
137
138         * bindings/objc/DOMEvents.mm:
139         (-[DOMEvent dealloc]): implement - deref the event!
140         (-[DOMEvent finalize]): ditto
141
142 2006-07-06  Maciej Stachowiak  <mjs@apple.com>
143
144         Reviewed by Tim Hatcher.
145
146         - fix 26 Node leaks on fast/dom tests
147
148         * dom/Document.cpp:
149         (WebCore::Document::removedLastRef): delete tokenizer - if we are still parsing at this point, we don't
150         want nodes held by the parser to keep the document alive.
151         * html/HTMLParser.cpp:
152         (WebCore::RefNonDocNodePtr::RefNonDocNodePtr): Smart pointer that acts like RefPtr for Node,
153         but avoids refing document nodes to avoid cycles.
154         (WebCore::RefNonDocNodePtr::~RefNonDocNodePtr):
155         (WebCore::RefNonDocNodePtr::get):
156         (WebCore::RefNonDocNodePtr::operator*):
157         (WebCore::RefNonDocNodePtr::operator->):
158         (WebCore::RefNonDocNodePtr::operator!):
159         (WebCore::RefNonDocNodePtr::operator UnspecifiedBoolType):
160         (WebCore::RefNonDocNodePtr::operator=):
161         (WebCore::operator==):
162         (WebCore::operator!=):
163         (WebCore::HTMLStackElem): Use a RefNonDocNodePtr instead of RefPtr<Node>
164         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Use a RefPtr here to avoid crashing
165
166 2006-07-06  Adele Peterson  <adele@apple.com>
167
168         Reviewed by Maciej.
169
170         Fixed new popup control to open up when the spacebar and the up and down arrows are pressed.
171
172         - Fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=9762
173         [Native pop up] Highlighted item text is black instead of white
174
175         * html/HTMLSelectElement.cpp:
176         (WebCore::HTMLSelectElement::isKeyboardFocusable): Added.
177         (WebCore::HTMLSelectElement::isMouseFocusable): Added.
178         (WebCore::HTMLSelectElement::defaultEventHandler): Updated to showPopup for up and down arrow keys and spacebar.
179         * html/HTMLSelectElement.h: (WebCore::HTMLSelectElement::shouldUseMenuList): Made this const.
180         * rendering/RenderPopupMenu.cpp: (WebCore::RenderPopupMenu::populate): Added FIXME.
181         * rendering/RenderPopupMenuMac.mm:
182         (WebCore::RenderPopupMenuMac::showPopup): Updated to save the NSEvent that triggers the popup, so we can send
183         fake mouseUp and keyUp events when the NSMenu returns.
184         (WebCore::RenderPopupMenuMac::addGroupLabel): Only set the NSForegroundColorAttributeName attribute if the text isn't black.
185         Follow-up bug about other colors: http://bugzilla.opendarwin.org/show_bug.cgi?id=9769
186         (WebCore::RenderPopupMenuMac::addOption): ditto.
187         * bridge/mac/FrameMac.h: (WebCore::FrameMac::currentEvent): Returns the current NSEvent.
188
189 2006-07-06  Justin Garcia  <justin.garcia@apple.com>
190
191         Reviewed by levi
192         
193         <rdar://problem/4609184>
194         Mail crashes at WebCore::Selection::adjustForEditableContent
195         <rdar://problem/4609140>
196         Crash at WebCore::Range::compareBoundaryPoints
197         
198         * editing/Selection.cpp:
199         (WebCore::Selection::adjustForEditableContent):
200         * editing/VisiblePosition.cpp:
201         (WebCore::VisiblePosition::next): Moved code into a helper function.
202         (WebCore::VisiblePosition::previous): Ditto.
203         * editing/htmlediting.cpp:
204         (WebCore::comparePositions): Moved from Selection.cpp.
205         (WebCore::lowestEditableAncestor): Added.  Returns rootEditableElement
206         for a node in editable content and the rootEditableElement for the first
207         ancestor that's editable for a node in non-editable content.
208         (WebCore::firstEditablePositionAfterPositionInRoot): 
209         (WebCore::lastEditablePositionBeforePositionInRoot):
210         * editing/htmlediting.h:
211
212 2006-07-06  Anders Carlsson  <acarlsson@apple.com>
213
214         Reviewed by Adele.
215
216         http://bugzilla.opendarwin.org/show_bug.cgi?id=9528
217         REGRESSION: arrow key skips '>' in Bugzilla replies due to '\n' in text nodes
218         
219         Patch by Darin, tweaked by Anders.
220         
221         * html/HTMLElement.cpp:
222         (WebCore::HTMLElement::setInnerText):
223         Convert newline characters to <br> elements. I've verified that what's done here is what WinIE does when setting innerText.
224         
225         (WebCore::HTMLElement::setOuterText):
226         Fix comment.
227
228         * rendering/RenderTextField.cpp:
229         (WebCore::RenderTextField::textWithHardLineBreaks):
230         Remove assert. m_div->firstChild() can be null now because setInnerText doesn't create
231         text nodes for empty strings anymore.
232
233 2006-07-06  Adele Peterson  <adele@apple.com>
234
235         Reviewed by Tim Hatcher.
236
237         - Speculative fix for <rdar://problem/4605532> unrepro crash at cnn.com after upgrading to 10.4.7 (but happening with 10.4.6 too)
238
239         * page/FrameView.cpp: (WebCore::FrameView::layout): Ref's the view during layout, since a recalcStyle could cause the view to be deleted.
240         If we get back from recalcStyle, and there's only one ref, return early since the the view will be deleted when we exit layout.
241         * page/FrameView.h: (WebCore::FrameView::hasOneRef): Added.
242
243 2006-07-06  Anders Carlsson  <acarlsson@apple.com>
244
245         Reviewed by Maciej.
246
247         <rdar://problem/4610891> Support overflow events
248         
249         * DerivedSources.make:
250         Add generated sources.
251         
252         * WebCore.xcodeproj/project.pbxproj:
253         Add new files.
254         
255         * bindings/js/kjs_events.cpp:
256         (KJS::toJS):
257         Support creating wrappers for overflow events..
258         
259         * bindings/objc/DOMEvents.h:
260         * bindings/objc/DOMEvents.mm:
261         (+[DOMEvent _eventWith:]):
262         (-[DOMOverflowEvent _overflowEvent]):
263         (-[DOMOverflowEvent orient]):
264         (-[DOMOverflowEvent horizontalOverflow]):
265         (-[DOMOverflowEvent verticalOverflow]):
266         Add Objective-C wrapper for overflow events.
267         
268         * dom/Event.cpp:
269         (WebCore::Event::isOverflowEvent):        
270         * dom/Event.h:
271         * dom/EventNames.h:
272         * dom/OverflowEvent.cpp: Added.
273         (WebCore::OverflowEvent::OverflowEvent):
274         (WebCore::OverflowEvent::isOverflowEvent):
275         * dom/OverflowEvent.h: Added.
276         (WebCore::OverflowEvent::):
277         (WebCore::OverflowEvent::orient):
278         (WebCore::OverflowEvent::horizontalOverflow):
279         (WebCore::OverflowEvent::verticalOverflow):
280         * dom/OverflowEvent.idl: Added.
281         Add overflow events.
282         
283         * page/FrameView.cpp:
284         (WebCore::FrameViewPrivate::FrameViewPrivate):
285         (WebCore::FrameView::applyOverflowToViewport):        
286         (WebCore::FrameView::layout):
287         Dispatch any scheduled events when layout is done.
288         
289         (WebCore::FrameView::scheduleEvent):
290         New function which schedules an event.
291         
292         (WebCore::FrameView::updateOverflowStatus):
293         Update overflow status for the viewport.
294         
295         (WebCore::FrameView::dispatchScheduledEvents):
296         New function which dispatches all scheduled events.
297         
298         * page/FrameView.h:
299         Add declarations.
300         
301         * rendering/RenderLayer.cpp:
302         (WebCore::RenderLayer::RenderLayer):
303         (WebCore::RenderLayer::updateOverflowStatus):
304         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
305         * rendering/RenderLayer.h:
306         Schedule overflow events when overflow status changes.
307
308 2006-07-06  Timothy Hatcher  <timothy@apple.com>
309
310         Reviewed by Geoff.
311
312         <rdar://problem/4610881> Expose scroll-related JS properties to ObjC DOM interface
313         <rdar://problem/4519675> offsetLeft, offsetTop, offsetHeight, and offsetWidth
314         properties are not exposed to ObjC
315
316         * bindings/objc/DOMPrivate.h:
317         * bindings/objc/DOMHTML.mm:
318         (-[DOMHTMLElement offsetLeft]):
319         (-[DOMHTMLElement offsetTop]):
320         (-[DOMHTMLElement offsetWidth]):
321         (-[DOMHTMLElement offsetHeight]):
322         (-[DOMHTMLElement offsetParent]):
323         (-[DOMHTMLElement clientWidth]):
324         (-[DOMHTMLElement clientHeight]):
325         (-[DOMHTMLElement scrollLeft]):
326         (-[DOMHTMLElement setScrollLeft:]):
327         (-[DOMHTMLElement scrollTop]):
328         (-[DOMHTMLElement setScrollTop:]):
329         (-[DOMHTMLElement scrollWidth]):
330         (-[DOMHTMLElement scrollHeight]):
331
332 2006-07-06  Maciej Stachowiak  <mjs@apple.com>
333
334         Reviewed by Adele.
335
336         - fix 435 more layout tests Node leaks
337
338         * editing/CompositeEditCommand.cpp:
339         (WebCore::CompositeEditCommand::moveParagraphs): fix more instances of leaked DOM ranges
340
341 2006-07-06  David Harrison  <harrison@apple.com>
342
343         Reviewed by Geoff
344
345         <rdar://problem/4565031> innerHTML of XMP tag returns special characters like '&gt;' instead of '>'
346  
347         Test: fast/innerHTML/006.html
348        
349         * editing/markup.cpp:
350         (WebCore::startMarkup):
351         (WebCore::createMarkup):
352         Do not special quote content of XMP nodes.
353
354 2006-07-06  Maciej Stachowiak  <mjs@apple.com>
355
356         Not reviewed - build fix.
357
358         - back out earlier leak fix, as it caused a crash on one of the fast/invalid layout tests
359
360         * dom/Document.cpp:
361         (WebCore::Document::removedLastRef):
362         * html/HTMLParser.cpp:
363         (WebCore::HTMLStackElem::HTMLStackElem):
364         (WebCore::HTMLParser::popNestedHeaderTag):
365         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
366         (WebCore::HTMLParser::reopenResidualStyleTags):
367         (WebCore::HTMLParser::popBlock):
368         (WebCore::HTMLParser::popOneBlock):
369
370 2006-07-06  Maciej Stachowiak  <mjs@apple.com>
371
372         Reviewed by Anders.
373
374         - fix ~3000 Node leaks on the editing tests
375
376         * editing/CompositeEditCommand.cpp:
377         (WebCore::CompositeEditCommand::moveParagraphs): put a newly created Range in a RefPtr
378         to avoid leaking it, as this leaks the whole document.
379
380 2006-07-06  Maciej Stachowiak  <mjs@apple.com>
381
382         Reviewed by Anders.
383
384         - fix 26 Node leaks on various fast/dom tests
385
386         * dom/Document.cpp:
387         (WebCore::Document::removedLastRef): Delete the tokenizer here, since if we are in mid-parse,
388         the parser might hold refs on some of our children that have self-only refs.
389         * html/HTMLParser.cpp:
390         (WebCore::HTMLStackElem::HTMLStackElem): don't ref the node if it is a document to avoid ref cycles
391         (WebCore::HTMLStackElem::~HTMLStackElem): ditto
392         (WebCore::HTMLStackElem::node): changed interface a bit to support the above
393         (WebCore::HTMLStackElem::setNode): ditto
394         (WebCore::HTMLParser::popNestedHeaderTag): use new interface to HTMLStackElem
395         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): ditto
396         (WebCore::HTMLParser::reopenResidualStyleTags): ditto
397         (WebCore::HTMLParser::popBlock): ditto
398         (WebCore::HTMLParser::popOneBlock): ditto
399
400 2006-07-06  Mitz Pettel  <opendarwin.org@mitzpettel.com>
401
402         Reviewed by Adele.
403         
404         * rendering/RenderMenuList.h:
405         (WebCore::RenderMenuList::createsAnonymousWrapper): This method replaces
406         allowsReusingAnonymousChild() and has the opposite meaning.
407         
408 2006-07-05  Adele Peterson  <adele@apple.com>
409
410         Build fixes.
411
412         * WebCore.vcproj/WebCore/WebCore.vcproj:
413         * platform/win/TemporaryLinkStubs.cpp:
414         * rendering/RenderMenuList.cpp:
415         (WebCore::RenderMenuList::calcMinMaxWidth):
416         * rendering/RenderPopupMenuWin.h:
417         (WebCore::RenderPopupMenuWin::RenderPopupMenuWin):
418         * rendering/RenderThemeWin.cpp:
419
420 2006-07-05  Maciej Stachowiak  <mjs@apple.com>
421
422         Reviewed by Adele.
423
424         - fix 308 Node leaks on the editing layout tests
425
426         * dom/Document.cpp: (WebCore::Document::removedLastRef): Clear the markers once there
427         are no real refs on the document, otherwise a self-only reference cycle w/ the document
428         can occur.
429
430 2006-07-05  Adele Peterson  <adele@apple.com>
431
432         Reviewed by Maciej and Hyatt.
433
434         Initial implementation of popup menu control.  This can be turned on by setting -webkit-appearance: menulist on a select element.
435
436         * WebCore.xcodeproj/project.pbxproj: Added RenderMenuList.h, RenderMenuList.cpp, RenderPopupMenu.h, RenderPopupMenu.cpp, 
437         RenderPopupMenuWin.h, RenderPopupMenuMac.h, RenderPopupMenuMac.mm, 
438     
439         * dom/Node.cpp:
440         (WebCore::Node::renderStyle): Added. Returns the renderer's style.  If there's no renderer, returns's a RenderStyle that's kept by the node.
441         This is important for HTMLOptGroupElement and HTMLOptionElement, which don't have renderers.
442         (WebCore::Node::setRenderStyle): Added.
443         * dom/Node.h:
444         * dom/Element.cpp: (WebCore::Element::recalcStyle): Updated to use renderStyle so recalcStyle will work for HTMLOptionElements and HTMLOptGroupElements.
445            
446         * css/cssstyleselector.cpp: Updated to call renderStyle method on the node, so resolving style works on elements w/o renderers that cache style. 
447         (WebCore::CSSStyleSelector::initForStyleResolve):
448         (WebCore::CSSStyleSelector::locateCousinList):
449         (WebCore::CSSStyleSelector::canShareStyleWithElement):
450         (WebCore::CSSStyleSelector::locateSharedStyle):
451         (WebCore::CSSStyleSelector::checkOneSelector):
452
453         * css/html4.css: Removed display:none from options and optgroups, since we're now caching style for these elements.
454         Added font-weight styles for option and optgroup.
455         
456         * html/HTMLOptGroupElement.h: Added m_style to keep track of a RenderStyle for the element, even though we aren't creating a renderer.
457         This will allow us to honor style for optgroups and options for popup menus (and eventually list boxes too).
458         (WebCore::HTMLOptGroupElement::rendererIsNeeded): Added.
459         (WebCore::HTMLOptGroupElement::renderStyle): Added.
460         * html/HTMLOptionElement.h: ditto.
461         (WebCore::HTMLOptionElement::rendererIsNeeded): Added.
462         (WebCore::HTMLOptionElement::renderStyle): Added.
463         
464         * html/HTMLOptGroupElement.cpp:
465         (WebCore::HTMLOptGroupElement::HTMLOptGroupElement): Initialize m_style.
466         (WebCore::HTMLOptGroupElement::attach): Set the renderStyle.
467         (WebCore::HTMLOptGroupElement::detach): Clear m_style.
468         (WebCore::HTMLOptGroupElement::setRenderStyle): Added.
469         (WebCore::HTMLOptGroupElement::groupLabelText): Added.
470         * html/HTMLOptionElement.cpp: ditto.
471         (WebCore::HTMLOptionElement::HTMLOptionElement):
472         (WebCore::HTMLOptionElement::attach):
473         (WebCore::HTMLOptionElement::detach):
474         (WebCore::HTMLOptionElement::setRenderStyle):
475         (WebCore::HTMLOptionElement::optionText):
476
477         * html/HTMLSelectElement.cpp: Added code to use the new RenderMenuList if the appearance is set to MenuListAppearance, 
478         and if we're not creating a list box renderer.
479         (WebCore::HTMLSelectElement::recalcStyle):
480         (WebCore::HTMLSelectElement::createRenderer):
481         (WebCore::HTMLSelectElement::setRecalcListItems):
482         (WebCore::HTMLSelectElement::reset):
483         (WebCore::HTMLSelectElement::notifyOptionSelected):
484         (WebCore::HTMLSelectElement::defaultEventHandler):
485         * html/HTMLSelectElement.h:
486
487         * WebCore.exp: Added _wkPopupMenu.
488         * platform/mac/WebCoreSystemInterface.h: Added wkPopupMenu to get the NSMenu to pop up.
489         * platform/mac/WebCoreSystemInterface.mm:
490
491         * platform/win/TemporaryLinkStubs.cpp: Added stubs for RenderPopupMenuWin.
492         (RenderPopupMenuWin::RenderPopupMenuWin):
493         (RenderPopupMenuWin::~RenderPopupMenuWin):
494         (RenderPopupMenuWin::clear):
495         (RenderPopupMenuWin::populate):
496         (RenderPopupMenuWin::showPopup):
497         (RenderPopupMenuWin::addSeparator):
498         (RenderPopupMenuWin::addGroupLabel):
499         (RenderPopupMenuWin::addOption):
500         * rendering/RenderPopupMenuWin.h: Added.
501
502         * rendering/RenderPopupMenu.cpp: Added.
503         (WebCore::RenderPopupMenu::RenderPopupMenu):
504         (WebCore::RenderPopupMenu::~RenderPopupMenu):
505         (WebCore::RenderPopupMenu::clear):
506         (WebCore::RenderPopupMenu::populate): Walks the DOM tree, and adds separators, options, and group labels to the RenderPopupMenu.
507         (WebCore::RenderPopupMenu::showPopup):
508         (WebCore::RenderPopupMenu::addSeparator):
509         (WebCore::RenderPopupMenu::addGroupLabel):
510         (WebCore::RenderPopupMenu::addOption):
511         * rendering/RenderPopupMenu.h: Added.
512         (WebCore::RenderPopupMenu::renderName):
513         (WebCore::RenderPopupMenu::getRenderMenuList):
514         * rendering/RenderPopupMenuMac.h: Added.
515         * rendering/RenderPopupMenuMac.mm: Added.
516         (WebCore::RenderPopupMenuMac::RenderPopupMenuMac):
517         (WebCore::RenderPopupMenuMac::~RenderPopupMenuMac):
518         (WebCore::RenderPopupMenuMac::clear): Removes all items from the menu.
519         (WebCore::RenderPopupMenuMac::populate): Disables menuChangedMessages before populating the menu.
520         (WebCore::RenderPopupMenuMac::showPopup): Calculates the right position, and calls wkPopupMenu.
521         (WebCore::RenderPopupMenuMac::addSeparator):
522         (WebCore::RenderPopupMenuMac::addGroupLabel):
523         (WebCore::RenderPopupMenuMac::addOption):
524         
525         * rendering/RenderMenuList.cpp: Added.
526         (WebCore::RenderMenuList::RenderMenuList):
527         (WebCore::RenderMenuList::addChild):
528         (WebCore::RenderMenuList::removeChild):
529         (WebCore::RenderMenuList::setStyle):
530         (WebCore::RenderMenuList::updateFromElement): If the options have changed, iterate through the children to find the menu item with the widest text.
531         Set the button text to the selected item's text.
532         (WebCore::RenderMenuList::setText):
533         (WebCore::RenderMenuList::paintObject):
534         (WebCore::RenderMenuList::baselinePosition):
535         (WebCore::RenderMenuList::calcMinMaxWidth):
536         (WebCore::RenderMenuList::showPopup):
537         (WebCore::RenderMenuList::layout):
538         (WebCore::RenderMenuList::updateSelection):
539         (WebCore::RenderMenuList::valueChanged):
540         * rendering/RenderMenuList.h: Added.
541         (WebCore::RenderMenuList::removeLeftoverAnonymousBoxes):
542         (WebCore::RenderMenuList::allowsReusingAnonymousChild):
543         (WebCore::RenderMenuList::canHaveChildren):
544         (WebCore::RenderMenuList::renderName):
545         (WebCore::RenderMenuList::setOptionsChanged):
546         (WebCore::RenderMenuList::selectionChanged):
547         (WebCore::RenderMenuList::setSelectionChanged):
548         (WebCore::RenderMenuList::hasPopupMenu):
549
550         * rendering/RenderTheme.cpp: Added cases for MenuListAppearance.
551         (WebCore::RenderTheme::adjustStyle):
552         (WebCore::RenderTheme::paint):
553         (WebCore::RenderTheme::paintBorderOnly):
554         (WebCore::RenderTheme::isControlStyled):
555         (WebCore::RenderTheme::adjustMenuListStyle):
556         (WebCore::RenderTheme::createPopupMenu): creates platform-specific RenderPopupMenu.
557         * rendering/RenderTheme.h:
558         (WebCore::RenderTheme::sizeOfArrowControl): Added. 
559         (WebCore::RenderTheme::paintMenuList): Added.
560         * rendering/RenderThemeMac.h:
561         * rendering/RenderThemeMac.mm:
562         (WebCore::RenderThemeMac::adjustRepaintRect):
563         (WebCore::RenderThemeMac::paintMenuList):
564         (WebCore::RenderThemeMac::adjustMenuListStyle):
565         (WebCore::RenderThemeMac::setPopupButtonCellState):
566         (WebCore::RenderThemeMac::createPopupMenu):
567         (WebCore::RenderThemeMac::sizeOfArrowControl):
568         * rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::createPopupMenu):
569         * rendering/RenderThemeWin.h:
570
571 2006-07-05  Brady Eidson  <beidson@apple.com>
572
573         Reviewed by Tim Omernick.
574
575         IconDatabase now respects private browsing via the use of in memory, temporary tables
576
577         * bridge/mac/WebCoreIconDatabaseBridge.mm:
578         (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
579         (-[WebCoreIconDatabaseBridge iconURLForPageURL:]): Renamed WebCore::IconDatabase methods, changes reflected here
580
581         * icon/IconDatabase.cpp:
582         (WebCore::IconDatabase::clearDatabase):
583         (WebCore::IconDatabase::deletePrivateTables):
584         (WebCore::IconDatabase::imageDataForIconID):
585         (WebCore::IconDatabase::imageDataForIconURL):
586         (WebCore::IconDatabase::imageDataForPageURL):
587         (WebCore::IconDatabase::setPrivateBrowsingEnabled):
588         (WebCore::IconDatabase::iconForPageURL):
589         (WebCore::IconDatabase::iconURLForPageURL):
590         (WebCore::IconDatabase::setIconDataForIconURL):
591         (WebCore::IconDatabase::performSetIconDataForIconID):
592         (WebCore::IconDatabase::establishTemporaryIconIDForEscapedIconURL):
593         (WebCore::IconDatabase::establishIconIDForEscapedIconURL):
594         (WebCore::IconDatabase::setHaveNoIconForIconURL):
595         (WebCore::IconDatabase::setIconURLForPageURL):
596         (WebCore::IconDatabase::performSetIconURLForPageURL):
597         (WebCore::IconDatabase::hasIconForIconURL):
598         -Some style/comment cleanups, but mainly putting private browsing handling in place
599
600         * icon/IconDatabase.h:  Some methods added, others renamed, some comments added
601
602         * icon/SQLStatement.cpp:
603         (WebCore::SQLStatement::getColumnName):
604         (WebCore::SQLStatement::getColumnName16):
605         (WebCore::SQLStatement::getColumnText):
606         (WebCore::SQLStatement::getColumnText16):
607         -The above 4 had changes to return String() for empty results instead of "" as it's less expensive;
608
609 2006-07-05  John Sullivan  <sullivan@apple.com>
610
611         Reviewed by Darin and Adele.
612         
613         - fixed <rdar://problem/4609162> REGRESSION: When tabbing between links on a page, 
614         the window doesn't scroll to link that's not in view
615
616         * html/HTMLAnchorElement.cpp:
617         * html/HTMLAnchorElement.h:
618         removed HTMLAnchorElement::focus and HTMLAnchorElement::blur. 
619         
620         HTMLAnchorElement::focus just called document()->setFocusNode(). The scroll-to-reveal
621         code used to be inside document()->setFocusNode(), but now it's in Element::focus, and this override
622         was preventing that code from running.
623         
624         HTMLAnchorElement::blur was exactly the same implementation as Element::blur (and there aren't any
625         other implementations of ::blur in the class hierarchy in between). This change has no practical
626         effect, other than removing duplicate code.
627         
628         Adele and I think that it was an oversight not to remove these two methods on 12/20/05
629         these methods were removed from HTMLButtonElementImpl and HTMLInputElementImpl.
630
631 2006-07-05  Anders Carlsson  <acarlsson@apple.com>
632
633         * bridge/win/FrameWin.cpp:
634         (WebCore::FrameWin::FrameWin):
635         * bridge/win/FrameWin.h:
636         * platform/win/TemporaryLinkStubs.cpp:
637         (FrameWin::createFrame):
638         Fix Win32 build.
639
640 2006-07-05  Anders Carlsson  <acarlsson@apple.com>
641
642         * WebCore.xcodeproj/project.pbxproj:
643         Revert accidental change of debug format to DWARF.
644
645 2006-07-05  Anders Carlsson  <acarlsson@apple.com>
646
647         Reviewed by Maciej.
648
649         http://bugzilla.opendarwin.org/show_bug.cgi?id=3581
650         iFrames set to display:none are Missing from frames array
651
652         * bridge/mac/FrameMac.h:
653         * bridge/mac/FrameMac.mm:
654         (WebCore::FrameMac::FrameMac):
655         (WebCore::FrameMac::createFrame):
656         * bridge/mac/WebCoreFrameBridge.h:
657         * bridge/mac/WebCoreFrameBridge.mm:
658         (-[WebCoreFrameBridge initSubframeWithOwnerElement:]):
659         (-[WebCoreFrameBridge installInFrame:]):
660         Modify to pass the owner element instead of the owner renderer.        
661
662         * dom/ContainerNode.cpp:
663         (WebCore::ContainerNode::insertBefore):
664         (WebCore::ContainerNode::replaceChild):
665         (WebCore::ContainerNode::appendChild):
666         Dispatch the node inserted events before attaching the nodes. This is what the
667         tokenizer does.
668         
669         * html/HTMLFrameElement.cpp:
670         (WebCore::HTMLFrameElement::openURL):
671         (WebCore::HTMLFrameElement::attach):
672         Pass the element to requestFrame.
673         
674         (WebCore::HTMLFrameElement::setLocation):
675         Don't call attach/detach on an iframe.
676
677         * html/HTMLIFrameElement.cpp:
678         (WebCore::HTMLIFrameElement::insertedIntoDocument):
679         Load the frame here (using openURL).
680         
681         (WebCore::HTMLIFrameElement::removedFromDocument):
682         Call frameDetached.
683         
684         (WebCore::HTMLIFrameElement::attach):
685         If there's a renderer, attach the content frame to it.
686         
687         (WebCore::HTMLIFrameElement::detach):
688         Reset the renderer's frame.
689         
690         (WebCore::HTMLIFrameElement::openURL):
691         Modify to request the frame.
692         
693         * html/HTMLIFrameElement.h:
694         Add detach.
695         
696         * page/Frame.cpp:
697         (WebCore::parentFromOwnerElement):
698         (WebCore::Frame::Frame):
699         (WebCore::Frame::~Frame):
700         (WebCore::Frame::requestFrame):
701         (WebCore::Frame::requestObject):
702         (WebCore::Frame::loadSubframe):
703         (WebCore::Frame::ownerElement):
704         (WebCore::Frame::ownerRenderer):
705         (WebCore::Frame::disconnectOwnerElement):
706         * page/Frame.h:
707         * page/FramePrivate.h:
708         (WebCore::FramePrivate::FramePrivate):        
709         * rendering/RenderPart.cpp:
710         (WebCore::RenderPart::setFrame):
711         Modify to keep an owner element around instead of the renderer. 
712         
713         * rendering/RenderPartObject.cpp:
714         (WebCore::RenderPartObject::updateWidget):
715         Don't do anything for iframes.
716
717 2006-07-04  Kevin Ollivier  <kevino@theolliviers.com>
718
719         Reviewed by Maciej, reworked a bit by Darin.
720
721         Compile fixes for wx port / gcc 4.0.2
722         
723         * platform/PlatformString.h:
724         * platform/StringImpl.h:
725         Include CoreFoundation for CF-specific code.
726         
727         * dom/DocPtr.h:
728         * doc/EventTargetNode.h:
729         Silence warnings about 'extra tokens' after #endif on gcc 4.0.2.
730         (Not an error but warnings appear frequently.)
731         
732         * WebCoreSources.bkl:
733         * webcore-base.bkl:
734         Synching ports sources file with TOT. Also, making sure SRCDIR variable
735         overrides any previous values.
736         
737         * loader/ImageDocument.cpp:
738         Use PLATFORM(MAC) for the parts that are specific to the Macintosh version,
739         and move the Objective-C parts to another file.
740
741         * loader/mac/ImageDocumentMac.h: Added.
742         * loader/mac/ImageDocumentMac.mm: Added.
743
744 2006-07-04  Sam Weinig  <sam.weinig@gmail.com>
745
746         Build fix.
747
748         * platform/Color.cpp:
749         (WebCore::makeRGBAFromHSLA):
750
751 2006-07-02  David Carson  <dacarson@gmail.com>
752
753         Reviewed by Darin.
754   
755         - Added HSL color support as specified in CSS3 spec.
756         http://bugzilla.opendarwin.org/show_bug.cgi?id=9506
757         Added parsing support of hsl(h,s,l) and hsla(h,s,l,a)
758         Added converting code to convert HSL to RGB
759
760         * css/cssparser.cpp:
761         (WebCore::CSSParser::parseColorParameters):
762         Moved common code to parse RGB/RGBA values into it's
763         own function. This code was duplicated in the parseColorFromValue()
764         method.
765         (WebCore::CSSParser::parseHSLParameters):
766         Common code to parse HSL/HSLA values.
767         (WebCore::CSSParser::parseColorFromValue):
768         Moved RGB/RGBA parsing out to seperate function as the code was
769         duplicated. 
770         Added parsing support for hsl( and hsla(
771         * css/cssparser.h:
772         Added two new functions parseColorParameters() and 
773         parseHSLParameters().
774         * platform/Color.cpp:
775         (WebCore::calcHue):
776         Added Hue parameter to RGB color.
777         (WebCore::makeRGBAFromHSLA):
778         New function to convert HSLA to RGBA.
779         * platform/Color.h:
780         Added new functions makeRGBAFromHSLA() and calcHue().
781
782 2006-07-02  Mike Emmel  <mike.emmel@gmail.com>
783
784         Reviewed and landed by ggaren.
785
786         * platform/gdk/TransferJobManager.cpp
787         Fixed broken dowload logic
788         * platform/gdk/ScrollViewGdk.cpp 
789         Add comment that scrollbarSize is a temporary variable
790         * Projects/gdk/webcore-gdk.bkl
791         Defined NDEBUG build executable is miscompiled otherwise
792         * WebCoreSources.bkl
793         added icon/SiteIcon.cpp editing/IndentOutdentCommand.cpp 
794         html/HTMLViewSourceDocument.cpp
795
796 2006-07-02  Shawn Stricker  <kb1ibt@gmail.com>
797
798         Reviewed by Timothy Hatcher.  Build fix for Linux.
799
800         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9684
801           [GDK] multiple little fixes and a few new things for Templinkstubs
802
803         * platform/gdk/ScrollViewGdk.cpp:
804         (WebCore::ScrollView::setDrawable): Changed SCROLLBAR_SIZE to scrollbarSize.
805         * platform/gdk/TemporaryLinkStubs.cpp:
806         (Image::drawTiled): Added missing parameter to argument list.
807         * platform/gdk/TransferJobManager.cpp:
808         (WebCore::writeCallback): Added missing parenthesis to static_cast.
809
810 2006-07-02  Mitz Pettel  <opendarwin.org@mitzpettel.com>
811
812         Reviewed by Darin.
813
814         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9674
815           REGRESSION (r15075): Blank or incomplete pages on digg.com
816
817         Replaced the requestingScript state bit added in the fix for bug 9317
818         with a m_requestingScript bool that is set before and restored
819         after calling ref() on a CachedScript.
820         
821         Test: fast/tokenizer/nested-cached-scripts.html
822
823         * html/HTMLTokenizer.cpp:
824         (WebCore::HTMLTokenizer::HTMLTokenizer):
825         (WebCore::HTMLTokenizer::begin):
826         (WebCore::HTMLTokenizer::scriptHandler):
827         (WebCore::HTMLTokenizer::notifyFinished):
828         * html/HTMLTokenizer.h:
829         (WebCore::HTMLTokenizer::State::):
830
831 2006-07-01  David Kilzer  <ddkilzer@kilzer.net>
832
833         Reviewed by NOBODY (build fix).
834
835         * platform/gdk/TransferJobManager.cpp:
836         (WebCore::writeCallback): Changed 'static_cat' to 'static_cast'.
837
838 2006-06-30  Mike Emmel  <mike.emmel@gmail.com>
839
840         Reviewed and worked over a lot by Darin.
841
842         - check in first set of GDK-specific sources
843
844         * platform/gdk/BrowserExtensionGdk.h: Added.
845         * platform/gdk/CookieJarGdk.cpp: Added.
846         * platform/gdk/CursorGdk.cpp: Added.
847         * platform/gdk/FontCacheGdk.cpp: Added.
848         * platform/gdk/FontDataGdk.cpp: Added.
849         * platform/gdk/FontGdk.cpp: Added.
850         * platform/gdk/FontPlatformData.h: Added.
851         * platform/gdk/FontPlatformDataGdk.cpp: Added.
852         * platform/gdk/FrameGdk.cpp: Added.
853         * platform/gdk/FrameGdk.h: Added.
854         * platform/gdk/GlyphMapGdk.cpp: Added.
855         * platform/gdk/KeyEventGdk.cpp: Added.
856         * platform/gdk/KeyboardCodes.h: Added.
857         * platform/gdk/MouseEventGdk.cpp: Added.
858         * platform/gdk/PageGdk.cpp: Added.
859         * platform/gdk/RenderThemeGdk.cpp: Added.
860         * platform/gdk/RenderThemeGdk.h: Added.
861         * platform/gdk/ScreenGdk.cpp: Added.
862         * platform/gdk/ScrollViewGdk.cpp: Added.
863         * platform/gdk/SharedTimerLinux.cpp: Added.
864         * platform/gdk/SystemTimeLinux.cpp: Added.
865         * platform/gdk/TemporaryLinkStubs.cpp: Added.
866         * platform/gdk/TransferJobCurl.cpp: Added.
867         * platform/gdk/TransferJobManager.cpp: Added.
868         * platform/gdk/TransferJobManager.h: Added.
869         * platform/gdk/WheelEventGdk.cpp: Added.
870         * platform/gdk/WidgetGdk.cpp: Added.
871         * platform/gdk/gdk-encodings.txt: Added.
872
873 2006-06-30  Mike Emmel  <mike.emmel@gmail.com>
874
875         Reviewed by Darin.
876
877         * WebCoreSources.bkl: Updated for recent file changes.
878
879 2006-06-30  Mike Emmel  <mike.emmel@gmail.com>
880
881         Reviewed and enhanced by Darin.
882
883         Compilation fixes for Linux/Gdk.
884
885         * WebCore/platform/FontData.h: Added forward declaration of a class.
886         * WebCore/platform/cairo/GraphicsContextCairo.cpp: Fixed case on include.
887         * WebCore/bindings/js/kjs_html.cpp: Added <math.h> include.
888
889         * WebCore/css/maketokenizer: Fixed incorrect check for Linux that was
890         already true even on Mac OS X. Added some additional includes and
891         defines to the Linux extra generated code.
892
893 2006-06-30  Mitz Pettel  <opendarwin.org@mitzpettel.com>
894
895         Reviewed by Hyatt.
896
897         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7204
898           float inserted in fixed height block via DOM not repainted
899
900         Test: fast/repaint/float-move-during-layout.html
901
902         * rendering/RenderBlock.cpp:
903         (WebCore::RenderBlock::layoutBlockChildren):
904         (WebCore::RenderBlock::repaintOverhangingFloats): Renamed repaintFloatingDescendants()
905         to this and limited it to repainting overhanging floats. Added a boolean parameter that forces
906         all descendant overhanging floats (that don't have their own layer) to paint.
907         * rendering/RenderBlock.h:
908         * rendering/RenderBox.cpp:
909         (WebCore::RenderBox::repaintDuringLayoutIfMoved): Changed to paint all descendant
910         floats.
911         * rendering/RenderObject.cpp:
912         (WebCore::RenderObject::repaintOverhangingFloats):
913         * rendering/RenderObject.h:
914
915 2006-06-30  Levi Weintraub  <lweintraub@apple.com>
916
917         Reviewed by justin
918
919         * editing/VisiblePosition.cpp: Removed is[Not]EqualIgnoringAffinity and made operator== use the logic that ignores affinity.
920         * editing/VisiblePosition.h: Ditto.
921         (WebCore::operator==):
922         * editing/visible_units.cpp:
923         (WebCore::isStartOfParagraph): Changed to compare VisiblePositions using ==.
924         (WebCore::isEndOfParagraph): Ditto.
925         (WebCore::isStartOfBlock): Ditto.
926         (WebCore::isEndOfBlock): Ditto.
927
928 === Safari-521.14 ===
929
930 2006-06-30  Justin Garcia  <justin.garcia@apple.com>
931
932         Reviewed by levi
933
934         * editing/htmlediting.cpp:
935         (WebCore::canHaveChildrenForEditing): Don't insert children into
936         object tags while editing.
937
938 2006-06-30  Justin Garcia  <justin.garcia@apple.com>
939
940         Reviewed by harrison
941         
942         <rdar://problem/4598309
943         Caret gets stuck when it hits non editable content within an editable body
944         <http://bugzilla.opendarwin.org/show_bug.cgi?id=9510>
945         Caret will jump out of an editable region
946         
947         * dom/Position.cpp:
948         (WebCore::Position::upstream): Don't move into a new editable region so that 
949         candidates that that straddle an editable/non-editable boundary will 
950         correspond to different VisiblePositions.
951         (WebCore::Position::downstream): Ditto.
952         * editing/SelectionController.cpp:
953         (WebCore::SelectionController::modifyMovingRightForward): Use VisiblePosition::next(true)
954         (WebCore::SelectionController::modifyMovingLeftBackward): Use VisiblePosition::previous(true)
955         * editing/VisiblePosition.cpp:
956         (WebCore::VisiblePosition::next): Added code to jump to the next editable region as long
957         as it has the same highest editable root.
958         (WebCore::VisiblePosition::previous): Ditto.
959         * editing/VisiblePosition.h:
960         * editing/htmlediting.cpp:
961         (WebCore::highestEditableRoot): Added, returns the highest editable root of a node if that
962         node is in editable content, otherwise 0.
963         * editing/htmlediting.h:
964
965 2006-06-30  David Kilzer  <ddkilzer@kilzer.net>
966
967         Reviewed by Darin.
968
969         - Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9358
970           REGRESSION: Assertion failure in HTMLInputElement::setValueFromRenderer
971           (value == constrainValue(value)) when deleting all text
972
973         Test: editing/deleting/delete-all-text-in-text-field-assertion.html
974
975         Bug 9661 filed to fix the follow-up issue:
976         http://bugzilla.opendarwin.org/show_bug.cgi?id=9661
977         textContent returns "\n" for a <br> even if it is collapsed
978
979         * html/HTMLInputElement.cpp:
980         (WebCore::HTMLInputElement::setValueFromRenderer): Work around "\n" value
981         when all characters are deleted from a text field.
982
983 2006-06-30  David Harrison  <harrison@apple.com>
984
985         Reviewed by Tim Omernick
986
987         <rdar://problem/4609481> Crash calling -[WebScriptObject valueForKey:] when JS disabled
988         
989         * bridge/mac/FrameMac.mm:
990         (WebCore::FrameMac::executionContextForDOM):
991         Early return if JS is not enabled.
992
993 2006-06-30  Mitz Pettel  <opendarwin.org@mitzpettel.com>
994
995         Reviewed by Tim H.
996
997         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9664
998           REGRESSION (r15106): Crash in fast/events/mouseover-mouseout2.html
999
1000         * page/FrameView.cpp:
1001         (WebCore::FrameView::handleMouseMoveEvent): Added a check that oldSubframe is
1002         still a subframe of the view's frame before passing the event to it.
1003
1004 2006-06-29  Timothy Hatcher  <timothy@apple.com>
1005
1006         Reviewed by Darin.
1007
1008         <rdar://problem/3694163> -[KWQPageState finalize] is incorrect; design change needed
1009         <rdar://problem/3694165> -[WebCoreFrameBridge finalize] is incorrect; design change needed
1010
1011         Added close methods that need to be called before these
1012         objects can be released. This ensures proper tear-down under GC.
1013
1014         * WebCore.xcodeproj/project.pbxproj:
1015         * bridge/mac/WebCoreFrameBridge.h:
1016         * bridge/mac/WebCoreFrameBridge.mm:
1017         (-[WebCoreFrameBridge dealloc]):
1018         (-[WebCoreFrameBridge finalize]):
1019         (-[WebCoreFrameBridge close]):
1020         * bridge/mac/WebCorePageBridge.h:
1021         * bridge/mac/WebCorePageBridge.mm:
1022         (-[WebCorePageBridge setMainFrame:]):
1023         (-[WebCorePageBridge dealloc]):
1024         (-[WebCorePageBridge finalize]):
1025         (-[WebCorePageBridge close]):
1026         (-[WebCorePageBridge mainFrame]):
1027         (-[WebCorePageBridge setGroupName:]):
1028         (-[WebCorePageBridge groupName]):
1029         * kwq/KWQPageState.h:
1030         * kwq/KWQPageState.mm:
1031         (-[KWQPageState dealloc]):
1032         (-[KWQPageState finalize]):
1033         (-[KWQPageState close]):
1034
1035 2006-06-29  Sam Weinig  <sam.weinig@gmail.com>
1036
1037         Reviewed by Hyatt.
1038
1039         - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=4874
1040         Table with absolute bottom positioning is positioned incorrectly
1041
1042         Note: patch originally from Mitz, spruced up by Weinig.
1043
1044         * rendering/RenderBox.cpp:
1045         (WebCore::RenderBox::calcAbsoluteVerticalValues):
1046         * rendering/RenderTable.cpp:
1047         (WebCore::RenderTable::layout):
1048
1049 2006-06-29  Graham Dennis  <Graham.Dennis@gmail.com>
1050
1051         Reviewed by Justin.
1052
1053         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9505
1054           moveParagraphContentsToNewBlockIfNecessary creates a new block outside the current position
1055
1056         * editing/CompositeEditCommand.cpp:
1057         Added sanity checking to prevent modifying nodes outside of 
1058         where we should be
1059         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
1060
1061 2006-06-29  Brady Eidson  <beidson@apple.com>
1062
1063         Reviewed by Levi.
1064
1065         In addition to a few small details, logging changes, and style cleanups, this is a stop-gap hack
1066         for a problem in SQLite's blob handling.  Querying for a blob in a void* form is reproducibly
1067         returning a corrupt buffer.  The temporary solution is to query for the blob as "quoted text" and
1068         manually convert the return string into a character buffer.
1069
1070         * icon/IconDatabase.cpp:
1071         (WebCore::IconDatabase::recreateDatabase):
1072         (WebCore::IconDatabase::createPrivateTables):
1073
1074         (WebCore::hexToUnsignedChar): These two functions are the text-to-character-data converters for the time being
1075         (WebCore::hexStringToVector):
1076
1077         (WebCore::IconDatabase::imageDataForIconID):
1078         (WebCore::IconDatabase::imageDataForIconURL):
1079         (WebCore::IconDatabase::imageDataForPageURL):
1080         (WebCore::IconDatabase::iconForPageURL):
1081         (WebCore::IconDatabase::hasIconForIconURL):
1082         * icon/IconDatabase.h:  changes the icon data accessors to return a Vector<unsigned char> instead of void*
1083
1084         * icon/SQLStatement.cpp:
1085         (WebCore::SQLStatement::columnCount):
1086         (WebCore::SQLStatement::getColumnBlob):
1087         * icon/SiteIcon.cpp:
1088         (SiteIcon::getImage):
1089
1090 2006-06-29  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1091
1092         Reviewed by Darin.
1093
1094         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9652
1095           Assertion failure when changing an RTL table cell to display:none
1096
1097         Test: fast/table/rtl-cell-display-none-assert.html
1098
1099         * rendering/RenderTableSection.cpp:
1100         (WebCore::RenderTableSection::layoutRows): Corrected the index used as
1101         the last index in the columnPos vector.
1102
1103 2006-06-29  Darin Adler  <darin@apple.com>
1104
1105         Reviewed by Anders.
1106
1107         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9622
1108           showModalDialog returnValue ignored, function result is always "undefined"
1109
1110         * manual-tests/modal-dialog.html: Added.
1111         * manual-tests/show-modal-dialog-test.html: Added.
1112
1113         * page/Frame.cpp: (WebCore::Frame::clear): Call KJSProxy::clear with the
1114         clearWindowProperties parameter instead of not calling it at all when
1115         clearWindowProperties is false.
1116
1117         * bindings/js/kjs_proxy.h: Add boolean clearWindowProperties parameter.
1118         * bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::clear): Pass clearWindowProperties
1119         variable through to Window::clear instead of not calling it at all.
1120
1121         * bindings/js/kjs_window.h: Add boolean clearWindowProperties parameter.
1122         * bindings/js/kjs_window.cpp: (KJS::Window::clear): If clearWindowProperties
1123         is false, do only the returnValue work, not the rest of the work.
1124
1125         * manual-tests/modal-dialog.html: Added.
1126         * manual-tests/show-modal-dialog-test.html: Added.
1127
1128 2006-06-29  Beth Dakin  <bdakin@apple.com>
1129
1130         Reviewed by Hyatt.
1131
1132         Fix for <rdar://problem/4450615> Add composite mode to background 
1133         styles
1134
1135         -webkit-background-composite will set a composite mode on a 
1136         background image.
1137
1138         * css/CSSComputedStyleDeclaration.cpp:
1139         (WebCore::):
1140         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1141         * css/CSSPropertyNames.in: Add -webkit-background-composite
1142         * css/CSSValueKeywords.in: Add all possible values (clear, copy, 
1143         source-over, source-in, source-out, source-atop, destination-over, 
1144         destination-in, destination-out, destination-atop, xor, plus-
1145         darker, highlight, and plus-lighter)
1146         * css/cssparser.cpp:
1147         (WebCore::CSSParser::parseValue):
1148         (WebCore::CSSParser::parseBackgroundProperty):
1149         * css/cssstyleselector.cpp:
1150         (WebCore::CSSStyleSelector::applyProperty):
1151         (WebCore::CSSStyleSelector::mapBackgroundComposite):
1152         * css/cssstyleselector.h:
1153         * platform/GraphicsContext.cpp:
1154         (WebCore::GraphicsContext::drawTiledImage):
1155         * platform/GraphicsContext.h: drawTiledImage() now takes a 
1156         composite operator.
1157         * platform/Image.h: drawTiled() now takes a composite operator.
1158         * platform/cairo/ImageCairo.cpp:
1159         (WebCore::Image::drawTiled): Set the composite operator.
1160         * platform/mac/ImageMac.mm:
1161         (WebCore::Image::drawTiled): Set the composite operator.
1162         * platform/win/TemporaryLinkStubs.cpp:
1163         (Image::drawTiled):
1164         * rendering/RenderBox.cpp:
1165         (WebCore::RenderBox::paintBackgroundExtended): Send the composite 
1166         operator in the render style over to the graphics context.
1167         * rendering/render_style.cpp:
1168         (WebCore::BackgroundLayer::BackgroundLayer):
1169         (WebCore::BackgroundLayer::operator=):
1170         (WebCore::BackgroundLayer::operator==):
1171         (WebCore::BackgroundLayer::fillUnsetProperties):
1172         (WebCore::BackgroundLayer::cullEmptyLayers):
1173         * rendering/render_style.h:
1174         (WebCore::BackgroundLayer::backgroundComposite):
1175         (WebCore::BackgroundLayer::isBackgroundCompositeSet):
1176         (WebCore::BackgroundLayer::setBackgroundComposite):
1177         (WebCore::BackgroundLayer::clearBackgroundComposite):
1178         (WebCore::RenderStyle::backgroundComposite):
1179         (WebCore::RenderStyle::initialBackgroundComposite):
1180
1181 2006-06-29  David Kilzer  <ddkilzer@kilzer.net>
1182
1183         Reviewed by Darin.
1184
1185         http://bugzilla.opendarwin.org/show_bug.cgi?id=9649
1186         The no-svg build broke after r15091
1187
1188         * bindings/objc/DOMInternal.h: Added #if XPATH_SUPPORT/#endif.
1189         * bindings/objc/DOMInternal.mm: Ditto.
1190         (raiseDOMException):
1191         * bindings/objc/DOMXPath.h: Ditto.
1192         * bindings/objc/DOMXPath.mm: Ditto.
1193         * bindings/objc/DOMXPathInternal.h: Ditto.
1194
1195 2006-06-29  Anders Carlsson  <acarlsson@apple.com>
1196
1197         Reviewed by Tim O.
1198
1199         <rdar://problem/4599760> Objective-C XPath support
1200         
1201         * WebCore.xcodeproj/project.pbxproj:
1202         Add files.
1203         
1204         * bindings/objc/DOMInternal.h:
1205         * bindings/objc/DOMInternal.mm:
1206         (raiseDOMException):
1207         Handle XPath exceptions
1208         
1209         * bindings/objc/DOMXPath.h: Added.
1210         (-[DOMXPathNSResolver lookupNamespaceURI:]):
1211         * bindings/objc/DOMXPath.mm: Added.
1212         (-[DOMNativeXPathNSResolver dealloc]):
1213         (-[DOMNativeXPathNSResolver finalize]):
1214         (-[DOMNativeXPathNSResolver _xpathNSResolver]):
1215         (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:]):
1216         (+[DOMNativeXPathNSResolver _xpathNSResolverWith:]):
1217         (-[DOMNativeXPathNSResolver lookupNamespaceURI:]):
1218         (-[DOMXPathResult dealloc]):
1219         (-[DOMXPathResult finalize]):
1220         (-[DOMXPathResult resultType]):
1221         (-[DOMXPathResult numberValue]):
1222         (-[DOMXPathResult stringValue]):
1223         (-[DOMXPathResult booleanValue]):
1224         (-[DOMXPathResult singleNodeValue]):
1225         (-[DOMXPathResult invalidIteratorState]):
1226         (-[DOMXPathResult snapshotLength]):
1227         (-[DOMXPathResult iterateNext]):
1228         (-[DOMXPathResult snapshotItem:]):
1229         (-[DOMXPathResult _xpathResult]):
1230         (-[DOMXPathResult _initWithXPathResult:]):
1231         (+[DOMXPathResult _xpathResultWith:]):
1232         (-[DOMXPathExpression evaluate:::]):
1233         (-[DOMXPathExpression _xpathExpression]):
1234         (-[DOMXPathExpression _initWithXPathExpression:]):
1235         (+[DOMXPathExpression _xpathExpressionWith:]):
1236         (-[DOMDocument createExpression::]):
1237         (-[DOMDocument createNSResolver:]):
1238         (-[DOMDocument evaluate:::::]):
1239         * bindings/objc/DOMXPathInternal.h: Added.
1240         Add Objective-C XPath API.
1241
1242 2006-06-28  David Hyatt  <hyatt@apple.com>
1243
1244         Add support for custom highlighting to paint at the root line box level
1245         (and to inflate the box it uses so that it can go outside the bounds of
1246         the line if necessary).
1247
1248         Reviewed by harrison
1249
1250         * bridge/mac/FrameMac.h:
1251         * bridge/mac/FrameMac.mm:
1252         (WebCore::FrameMac::customHighlightLineRect):
1253         (WebCore::FrameMac::paintCustomHighlight):
1254         * bridge/mac/WebCoreFrameBridge.h:
1255         * rendering/InlineTextBox.cpp:
1256         (WebCore::InlineTextBox::paintCustomHighlight):
1257         * rendering/RootInlineBox.cpp:
1258         (WebCore::RootInlineBox::paintCustomHighlight):
1259         (WebCore::RootInlineBox::paint):
1260         * rendering/RootInlineBox.h:
1261
1262 2006-06-28  Levi Weintraub  <lweintraub@apple.com>
1263
1264         Reviewed by justin
1265
1266         <rdar://problem/4592005> FormatBlock inserts in the wrong place, disregarding editable content
1267         <rdar://problem/4590763> FormatBlock for paragraph style doesn't work
1268
1269         * dom/Node.cpp:
1270         (WebCore::Node::rootEditableElement): Return inline nodes
1271         * editing/FormatBlockCommand.cpp:
1272         (WebCore::FormatBlockCommand::doApply): Keep from inserting before editable content
1273         * editing/JSEditor.cpp: Support html braces (<>) around tag names
1274
1275 2006-06-28  Justin Garcia  <justin.garcia@apple.com>
1276
1277         Reviewed by levi
1278         
1279         svg/custom/text-hit-test.svg was failing
1280
1281         * rendering/RenderContainer.cpp:
1282         (WebCore::RenderContainer::positionForCoordinates): Don't skip child
1283         renderers that have a height of 0 when looking for the closest child
1284         renderer, they may contain content that overflows.
1285         * rendering/RenderText.cpp:
1286         (WebCore::RenderText::positionForCoordinates): Fixed typos.
1287
1288 2006-06-28  David Hyatt  <hyatt@apple.com>
1289
1290         Make the view source document properly handle <script>.  We don't syntax
1291         highlight the JS yet, but it shows up properly now.
1292
1293         Reviewed by john
1294
1295         * WebCore.xcodeproj/project.pbxproj:
1296         * html/HTMLTokenizer.cpp:
1297         (WebCore::HTMLTokenizer::scriptHandler):
1298
1299 2006-06-28  Timothy Hatcher  <timothy@apple.com>
1300
1301         Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
1302
1303         * WebCore.xcodeproj/project.pbxproj:
1304
1305 2006-06-28  Justin Garcia  <justin.garcia@apple.com>
1306
1307         Reviewed by levi
1308         
1309         Fixed EditActions for InsertHorizontalRule and RemoveFormat.
1310         
1311         * editing/JSEditor.cpp:
1312         * editing/ReplaceSelectionCommand.cpp:
1313         (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand):
1314         (WebCore::ReplaceSelectionCommand::editingAction):
1315         * editing/ReplaceSelectionCommand.h:
1316
1317 2006-06-28  Levi Weintraub  <lweintraub@apple.com>
1318
1319          Build Fix. Reviewed by NOBODY
1320
1321         * editing/IndentOutdentCommand.cpp:
1322         (WebCore::IndentOutdentCommand::indentRegion):
1323
1324 2006-06-28  Levi Weintraub  <lweintraub@apple.com>
1325
1326         Reviewed by justin
1327
1328         http://bugzilla.opendarwin.org/show_bug.cgi?id=7568
1329         Bug 7568: Implement Indent/Outdent
1330
1331         * WebCore.vcproj/WebCore/WebCore.vcproj: Added IndentOutdentCommand.h/cpp
1332         * WebCore.xcodeproj/project.pbxproj: Ditto.
1333         * editing/IndentOutdentCommand.cpp: Added.
1334         (WebCore::IndentOutdentCommand::IndentOutdentCommand):
1335         (WebCore::enclosingListOrBlockquote):
1336         (WebCore::IndentOutdentCommand::splitTreeToNode): Splits the DOM tree from a
1337         descendent node to an ending ancestor, duplicating nodes when necessary. Returns
1338         the last node split. Used to insert blockquotes at the topmost level.
1339         (WebCore::IndentOutdentCommand::indentRegion):
1340         (WebCore::IndentOutdentCommand::outdentParagraph):
1341         (WebCore::IndentOutdentCommand::outdentRegion):
1342         (WebCore::IndentOutdentCommand::doApply):
1343         * editing/IndentOutdentCommand.h: Added.
1344         (WebCore::IndentOutdentCommand::):
1345         * editing/JSEditor.cpp: Added the execCommands Indent and Outdent
1346         * editing/htmlediting.cpp:
1347         (WebCore::enclosingNodeWithTag): Finds the enclosing node with any specified tag.
1348         (WebCore::enclosingListChild): Added checks for nill and editable boundaries.
1349         (WebCore::outermostEnclosingListChild): Returns the highest ancestor list child.
1350         (WebCore::highestAncestor): Added.
1351         (WebCore::createElement): Changed the passed in string to a const reference.
1352         * editing/htmlediting.h:
1353
1354 2006-06-28  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1355
1356         Reviewed by Darin and Hyatt.
1357
1358         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9561
1359           REGRESSION: Content property on :before of button causes hang on click or hover
1360
1361         Test: fast/forms/button-generated-content.html
1362
1363         * rendering/RenderBlock.cpp:
1364         (WebCore::RenderBlock::setStyle):
1365         * rendering/RenderButton.cpp:
1366         (WebCore::RenderButton::updatePseudoChild): Added. Calls updatePseudoChildForObject()
1367         on the button itself or on its inner div, if it has one.
1368         * rendering/RenderButton.h:
1369         (WebCore::RenderButton::createsAnonymousWrapper): Added. Returns true.
1370         * rendering/RenderContainer.cpp:
1371         (WebCore::RenderContainer::pseudoChild): Added. Returns the child containing
1372         generated content of the requested type if there is one, or otherwise the
1373         child before/after which such generated content should come.
1374         (WebCore::RenderContainer::updatePseudoChild): Removed the child parameter and moved the guts
1375         of this method into updatePseudoChildForObject, which this method calls unless the object
1376         is an anonymous wrapper.
1377         (WebCore::RenderContainer::updatePseudoChildForObject): Added. Does the what
1378         updatePseudoChildForObject did previously, but fetches the pseudo style from
1379         the styledObject parameter.
1380         * rendering/RenderContainer.h:
1381         * rendering/RenderInline.cpp:
1382         (WebCore::RenderInline::setStyle):
1383         (WebCore::RenderInline::addChildToFlow):
1384         (WebCore::RenderInline::splitInlines):
1385         (WebCore::RenderInline::splitFlow):
1386         * rendering/RenderObject.h:
1387         (WebCore::RenderObject::createsAnonymousWrapper): Added. This method replaces
1388         allowsReusingAnonymousChild and returns the opposite of what that method used to
1389         return. Returns true if the object creates an anonymous child to contain all its
1390         other children.
1391
1392 2006-06-27  Brady Eidson  <beidson@apple.com>
1393
1394         Reviewed by Maciej
1395
1396         Hookup the new semi-functional SQLite icon database.
1397         For now, it is living side-by-side with the old DB so one can compare the
1398         two for debugging purposes.  Also, it is disabled (in WebKit) by default unless you
1399         compile with ICONDEBUG #defined.
1400
1401         * WebCore.xcodeproj/project.pbxproj:  Added file SiteIcon.cpp
1402
1403         * bridge/mac/WebCoreIconDatabaseBridge.h:
1404         * bridge/mac/WebCoreIconDatabaseBridge.mm:
1405         (-[WebCoreIconDatabaseBridge privateBrowsingEnabled]):
1406         (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
1407         (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
1408         (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
1409
1410         * icon/IconDatabase.cpp:
1411         (WebCore::IconDatabase::isValidDatabase):
1412         (WebCore::IconDatabase::recreateDatabase):
1413         (WebCore::IconDatabase::createPrivateTables):
1414         (WebCore::IconDatabase::deletePrivateTables):
1415         (WebCore::IconDatabase::imageDataForIconID):
1416         (WebCore::IconDatabase::imageDataForIconURL):
1417         (WebCore::IconDatabase::imageDataForPageURL):
1418         (WebCore::IconDatabase::setPrivateBrowsingEnabled):
1419         (WebCore::IconDatabase::iconForPageURL):
1420         (WebCore::IconDatabase::iconURLForURL):
1421         (WebCore::IconDatabase::setIconDataForIconURL):
1422         (WebCore::IconDatabase::establishIconIDForEscapedIconURL):
1423         (WebCore::IconDatabase::setHaveNoIconForIconURL):
1424         (WebCore::IconDatabase::setIconURLForPageURL):
1425         (WebCore::IconDatabase::hasIconForIconURL):
1426         * icon/IconDatabase.h:
1427         (WebCore::SiteIcon::getIconURL):
1428         (WebCore::IconDatabase::getPrivateBrowsingEnabled):
1429         
1430         * icon/SiteIcon.cpp: Added.
1431         (SiteIcon::SiteIcon):
1432         (SiteIcon::~SiteIcon):
1433         (SiteIcon::getImage):
1434         (SiteIcon::resetExpiration):
1435         (SiteIcon::getExpiration):
1436
1437 2006-06-27  Rob Buis  <buis@kde.org>
1438
1439         Reviewed by Darin.
1440
1441         http://bugzilla.opendarwin.org/show_bug.cgi?id=9605
1442         REGRESSION: pageX and pageY are both 0 for events created with initMouseEvent
1443
1444         Calculate pageX/pageY and clientX/clientY values when using initMouseEvent.
1445
1446         * dom/MouseEvent.cpp:
1447         (WebCore::MouseEvent::initMouseEvent):
1448         * dom/MouseRelatedEvent.cpp:
1449         (WebCore::MouseRelatedEvent::initCoordinates):
1450         * dom/MouseRelatedEvent.h:
1451
1452 2006-06-27  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1453
1454         Reviewed by Maciej and Darin.
1455
1456         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9317
1457           REGRESSION: crash in HTML tokenizer at Japanese Apple support page
1458
1459         Test: fast/tokenizer/write-unclosed-script.html
1460
1461         * html/HTMLTokenizer.cpp:
1462         (WebCore::HTMLTokenizer::scriptHandler): Changed to reset the inScript flag
1463         and scriptCodeSize before possible script execution, but not afterwards.
1464         This way, if script execution write()s a <script> tag without closing it,
1465         the tokenizer is left in inScript state. Added code to set the requestingScript
1466         flag around the request for the cached script, to let notifiyFinished() know
1467         that it's being called under scriptHandler().
1468         (WebCore::HTMLTokenizer::scriptExecution): Removed code that saved and restored
1469         the inScript flag. This function is always entered now with inScript being false.
1470         (WebCore::HTMLTokenizer::notifyFinished): Changed to use the new requestingScript
1471         state flag instead of the inScript flag, which is always false now when entering
1472         this function.
1473         * html/HTMLTokenizer.h:
1474         Added the requestingScript state bit, used to tell notifyFinished() that it
1475         is being called under scriptHandler() (which happens when the script is already
1476         in cache).
1477
1478 2006-06-27  Justin Garcia  <justin.garcia@apple.com>
1479
1480         Reviewed by levi
1481
1482         * editing/JSEditor.cpp: Added RemoveFormat.
1483
1484 2006-06-27  Kevin Decker    <kdecker@apple.com>
1485
1486         Reviewed by brady.
1487
1488         Fixed: <rdar://problem/4597679> TOT REGRESSION: popup blocker DOA
1489         
1490         Need to add window.open() support to DumpRenderTree before landing an actual layout test.
1491
1492         * bindings/js/kjs_window.cpp: 
1493         (KJS::WindowFunc::callAsFunction): Because FrameTree::find() returns true for empty strings, 
1494         we must check for empty framenames. Otherwise, illegitimate window.open() calls with no name
1495         will pass right through the popup blocker.
1496
1497 2006-06-28  Anders Carlsson  <acarlsson@apple.com>
1498
1499         Reviewed by Darin.
1500
1501         * css/CSSComputedStyleDeclaration.cpp:
1502         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1503         Move FIXME comment here.
1504         
1505         * page/DOMWindow.cpp:
1506         (WebCore::DOMWindow::getComputedStyle):
1507         Don't do a null check on the renderer here. Everything's handled by 
1508         CSSComputedStyleDeclaration anyway.
1509
1510 2006-06-27  Justin Garcia  <justin.garcia@apple.com>
1511
1512         Reviewed by darin
1513
1514         * rendering/RenderContainer.cpp: Fixed #include formatting.
1515
1516 2006-06-27  Justin Garcia  <justin.garcia@apple.com>
1517
1518         Reviewed by levi
1519         
1520         <rdar://problem/4599735> Clicking out of a table at the extremes of an editable document doesn't appear to work
1521
1522         * rendering/RenderBlock.cpp:
1523         (WebCore::RenderBlock::positionForCoordinates): In the fall through case,
1524         where we can't find a child block that contains (x, y), pass to RenderFlow
1525         instead of the last visible child block.
1526         * rendering/RenderContainer.cpp:
1527         (WebCore::RenderContainer::positionForCoordinates): Don't pass to the closest 
1528         child renderer if this is a table and (x, y) is outside the table.  Return
1529         a VisiblePosition before or after the table.
1530         Fixed the code that finds the closest child renderer.
1531
1532 2006-06-27  David Hyatt  <hyatt@apple.com>
1533
1534         Preserve entity text in view source mode.  This patch doesn't highlight the
1535         the entities yet, but it at least prevents their resolution and removal.
1536
1537         Reviewed by darin
1538
1539         * WebCore.xcodeproj/project.pbxproj:
1540         * html/HTMLTokenizer.cpp:
1541         (WebCore::HTMLTokenizer::parseEntity):
1542
1543 2006-06-27  Anders Carlsson  <acarlsson@apple.com>
1544
1545         Reviewed by Geoff.
1546
1547         http://bugzilla.opendarwin.org/show_bug.cgi?id=9623
1548         REGRESSION: getComputedStyle should do a relayout
1549         
1550         * page/DOMWindow.cpp:
1551         (WebCore::DOMWindow::getComputedStyle):
1552         Do a relayout.
1553
1554 2006-06-27  Maciej Stachowiak  <mjs@apple.com>
1555
1556         Reviewed by Adele
1557
1558         - fixed <rdar://problem/4550473> Reproducible hang on www.digg.com
1559         
1560         * dom/NodeList.cpp:
1561         (WebCore::NodeList::recursiveItem): Make NodeList caching also
1562         work for backwards iteration - if the requested index is before
1563         the last cached, but closer to it than to the start of the list,
1564         then search backwards from there.
1565         (WebCore::NodeList::itemForwardsFromCurrent): Split this out as a
1566         helper method.
1567         (WebCore::NodeList::itemBackwardsFromCurrent): New helper, similar
1568         to the above.
1569         * dom/NodeList.h:
1570
1571 2006-06-27  Brady Eidson  <beidson@apple.com>
1572
1573         Reviewed by Levi
1574
1575         Some SQLDatabase cleanup (style stuff) and enhancements
1576
1577         * icon/SQLDatabase.cpp:
1578         (SQLDatabase::open):
1579         (SQLDatabase::executeCommand):
1580         (SQLDatabase::returnsAtLeastOneResult):  Accessor to see if this query returns results
1581         (SQLDatabase::lastInsertRowID):  Accessor for the rowid of the last insert
1582         * icon/SQLDatabase.h:
1583         (WebCore::SQLStatement::prepareAndStep):
1584         * icon/SQLStatement.cpp:
1585         (WebCore::SQLStatement::bindInt64):
1586         -All of the following used to require the user to manually prepare and step a statement
1587         before asking for the result.  Now it will prepare and step itself so you can use a temporary
1588         object to get a quick result
1589         (WebCore::SQLStatement::getColumnName):
1590         (WebCore::SQLStatement::getColumnName16):
1591         (WebCore::SQLStatement::getColumnText):
1592         (WebCore::SQLStatement::getColumnText16):
1593         (WebCore::SQLStatement::getColumnDouble):
1594         (WebCore::SQLStatement::getColumnInt):
1595         (WebCore::SQLStatement::getColumnInt64):
1596         (WebCore::SQLStatement::getColumnBlobAsVector):
1597         (WebCore::SQLStatement::getColumnBlob):
1598
1599 2006-06-27  Ada Chan <adachan@apple.com>
1600
1601         Reviewed by sfalken.
1602
1603         Fixed build.
1604
1605         * WebCore.vcproj/WebCore/WebCore.vcproj:
1606
1607 2006-06-27  Beth Dakin  <bdakin@apple.com>
1608
1609         Reviewed by Hyatt.
1610
1611         Fix for <rdar://problem/4602635> Media queries must be extended to 
1612         address CSS pixel scaling factor
1613
1614         * css/MediaFeatureNames.h: Add -webkit-device-pixel-ratio, -webkit-
1615         min-device-pixel-ratio, and -webkit-max-device-pixel-ratio to the 
1616         list of feature names.
1617         * css/MediaQueryEvaluator.cpp:
1618         (WebCore::cmpvalue): Added a version of cmpvalue that compares 
1619         floats.
1620         (WebCore::device_pixel_ratioMediaFeatureEval):
1621         (WebCore::min_device_pixel_ratioMediaFeatureEval):
1622         (WebCore::max_device_pixel_ratioMediaFeatureEval):
1623
1624 2006-06-27  Darin Adler  <darin@apple.com>
1625
1626         Reviewed by Geoff.
1627
1628         - finish with http://bugzilla.opendarwin.org/show_bug.cgi?id=9606
1629           REGRESSION: some callers are still using clientX/Y to get pageX/Y
1630
1631         * rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::userResize):
1632         Change to use pageX/Y, but this really doesn't matter since framesets
1633         can't be scrolled -- it's the frames that are scrolled. So this change
1634         has no user-visible effect, but it's still better this way.
1635
1636 2006-06-27  Darin Adler  <darin@apple.com>
1637
1638         Reviewed by Geoff.
1639
1640         - fix 2/3 of http://bugzilla.opendarwin.org/show_bug.cgi?id=9606
1641           REGRESSION: some callers are still using clientX/Y to get pageX/Y
1642
1643         Test: fast/events/anchor-image-scrolled-x-y.html
1644         Test: fast/events/input-image-scrolled-x-y.html
1645
1646         * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler): Use pageX/Y.
1647         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler): Ditto.
1648
1649 2006-06-27  Brady Eidson  <beidson@apple.com>
1650
1651         Reviewed by Maciej
1652
1653         Added functionality to WebCore::Image to get multiple representations/sizes into TIFF data
1654
1655         * platform/mac/ImageMac.mm:
1656         (WebCore::Image::getTIFFRepresentation):
1657
1658 2006-06-26  David Hyatt  <hyatt@apple.com>
1659
1660         Fix for 9538, support syntax highlighted HTML source.  Lots of loose
1661         ends still (script/style/comments/doctype/entities/accurate whitespace).
1662
1663         Reviewed by darin
1664
1665         * DerivedSources.make:
1666         * WebCore.xcodeproj/project.pbxproj:
1667         * bridge/mac/WebCoreFrameBridge.h:
1668         * bridge/mac/WebCoreFrameBridge.mm:
1669         (-[WebCoreFrameBridge setInViewSourceMode:]):
1670         (-[WebCoreFrameBridge inViewSourceMode]):
1671         * css/cssstyleselector.cpp:
1672         (WebCore::CSSStyleSelector::loadDefaultStyle):
1673         (WebCore::CSSStyleSelector::matchUARules):
1674         * css/cssstyleselector.h:
1675         * css/view-source.css: Added.
1676         * dom/Document.cpp:
1677         (WebCore::Document::implicitClose):
1678         * dom/xml_tokenizer.h:
1679         (WebCore::Tokenizer::Tokenizer):
1680         (WebCore::Tokenizer::~Tokenizer):
1681         (WebCore::Tokenizer::inViewSourceMode):
1682         (WebCore::Tokenizer::setInViewSourceMode):
1683         * html/HTMLAttributeNames.in:
1684         * html/HTMLFrameElement.cpp:
1685         (WebCore::HTMLFrameElement::init):
1686         (WebCore::HTMLFrameElement::parseMappedAttribute):
1687         (WebCore::HTMLFrameElement::attach):
1688         * html/HTMLFrameElement.h:
1689         (WebCore::HTMLFrameElement::viewSourceMode):
1690         * html/HTMLTokenizer.cpp:
1691         (WebCore::HTMLTokenizer::HTMLTokenizer):
1692         (WebCore::HTMLTokenizer::scriptHandler):
1693         (WebCore::HTMLTokenizer::scriptExecution):
1694         (WebCore::HTMLTokenizer::parseTag):
1695         (WebCore::HTMLTokenizer::continueProcessing):
1696         (WebCore::HTMLTokenizer::write):
1697         (WebCore::HTMLTokenizer::timerFired):
1698         (WebCore::HTMLTokenizer::end):
1699         (WebCore::HTMLTokenizer::processToken):
1700         (WebCore::HTMLTokenizer::notifyFinished):
1701         * html/HTMLTokenizer.h:
1702         * html/HTMLViewSourceDocument.cpp: Added.
1703         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
1704         (WebCore::HTMLViewSourceDocument::createTokenizer):
1705         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
1706         (WebCore::HTMLViewSourceDocument::addViewSourceAttribute):
1707         (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
1708         * html/HTMLViewSourceDocument.h: Added.
1709         * page/Frame.cpp:
1710         (WebCore::Frame::begin):
1711         (WebCore::Frame::inViewSourceMode):
1712         (WebCore::Frame::setInViewSourceMode):
1713         * page/Frame.h:
1714         * page/FramePrivate.h:
1715         (WebCore::FramePrivate::FramePrivate):
1716         * rendering/RenderPartObject.cpp:
1717         (WebCore::RenderPartObject::updateWidget):
1718
1719 2006-06-26  Anders Carlsson  <acarlsson@apple.com>
1720
1721         Reviewed by Darin.
1722
1723         http://bugzilla.opendarwin.org/show_bug.cgi?id=9031
1724         REGRESSION: Crash when closing tabs on newegg.com
1725         
1726         * page/Frame.cpp:
1727         (WebCore::Frame::pageDestroyed):        
1728         * page/Frame.h:
1729         Add new method which is invoked when the frame's page has been destroyed.
1730         Currently this function disassociates the JS Window object with the frame, 
1731         stopping any running JS timers.
1732         
1733         * page/Page.cpp:
1734         (WebCore::Page::~Page):
1735         Call pageDestroyed on all frames.
1736
1737 2006-06-26  Rob Buis  <buis@kde.org>
1738
1739         Reviewed and reworked by Darin.
1740
1741         Code cleanup, calculate clientX/clientY in one central place.
1742
1743         * dom/EventTargetNode.h:
1744         * dom/EventTargetNode.cpp: (WebCore::EventTargetNode::dispatchMouseEvent):
1745         Renamed parameters to pageX/Y since they aren't clientX/Y values.
1746         Removed code to compute clientX/Y (was a bit confused in naming before),
1747         because that's now done inside MouseEvent.
1748
1749         * dom/MouseEvent.h:
1750         * dom/MouseEvent.cpp:
1751         (WebCore::MouseEvent::MouseEvent): Removed clientX/Y parameters.
1752         (WebCore::MouseEvent::initMouseEvent): Added comments about problems I noticed.
1753         (WebCore::MouseEvent::which): Fixed comment that confusingly mentioned KHTML,
1754         when it was talking about the DOM standard.
1755
1756         * dom/MouseRelatedEvent.h:
1757         * dom/MouseRelatedEvent.cpp:
1758         (WebCore::contentsX): Added helper function.
1759         (WebCore::contentsY): Ditto.
1760         (WebCore::MouseRelatedEvent::MouseRelatedEvent): Removed clientX/Y parameter,
1761         and added code to compute clientX/Y based on pageX/Y.
1762         (WebCore::MouseRelatedEvent::receivedTarget): Fixed comments.
1763
1764         * dom/WheelEvent.h:
1765         * dom/WheelEvent.cpp: (WebCore::WheelEvent::WheelEvent): Removed clientX/Y
1766         parameter.
1767
1768         * page/FrameView.cpp: (WebCore::FrameView::dispatchDragEvent): Removed the code
1769         to compute coordinates, and renamed the confusingly named clientPos (which was
1770         a page-relative position) to contentsPos.
1771
1772 2006-06-25  David Carson  <dacarson@gmail.com>
1773
1774         Reviewed and tweaked by Darin.
1775
1776         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9185
1777         REGRESSION: UserID field appears with an incorrect height 
1778         on americanexpresslogin page
1779         - Height and Width attribute only applies to IMAGE and HIDDEN
1780         types.
1781
1782         * dom/NamedMappedAttrMap.h:
1783         (WebCore::NamedMappedAttrMap::getAttributeItem):
1784         Added to static_cast method.
1785
1786         * html/HTMLInputElement.cpp:
1787         (WebCore::HTMLInputElement::setInputType):
1788         Update the style decl if input type has changed.
1789         (WebCore::HTMLInputElement::mapToEntry):
1790         Only Cache height and width if it is an IMAGE or HIDDEN
1791         (WebCore::HTMLInputElement::parseMappedAttribute):
1792         Check type before adding height and width style.
1793         (WebCore::HTMLInputElement::attach):
1794         Remove code for discarding width.
1795
1796         * html/HTMLInputElement.h:
1797         (WebCore::HTMLInputElement::respectHeightAndWidthAttrs):
1798         New method added to report if this input type uses height & width.
1799
1800 2006-06-25  David Kilzer  <ddkilzer@kilzer.net>
1801
1802         Reviewed by Darin.
1803
1804         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9537
1805           REGRESSION: Reproducible crash in WebCore::RenderTextField::textWithHardLineBreaks()
1806
1807         Test: fast/forms/textarea-hard-linewrap-empty.html
1808
1809         * rendering/RenderTextField.cpp:
1810         (WebCore::RenderTextField::textWithHardLineBreaks): Added null check for
1811         m_div->firstChild()->renderer().
1812
1813 2006-06-25  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1814
1815         Reviewed by Darin.
1816
1817         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9388
1818           REGRESSION: outlines don't get erased when removed in some cases
1819
1820         Test: fast/repaint/outline-shrinking.html
1821
1822         * rendering/RenderObject.cpp:
1823         (WebCore::RenderObject::setStyle): Always repaint with the old style if the outline is
1824         becoming narrower, even if we are going to relayout.
1825
1826 2006-06-25  Rob Buis  <buis@kde.org>
1827
1828         Reviewed by Darin.
1829
1830         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8707:
1831         event.clientX and event.clientY should be relative to the viewport, not the canvas
1832
1833         Make sure clientX and clientY take into account the scroll offsets
1834         of the view.
1835
1836         * dom/EventTargetNode.cpp:
1837         (WebCore::EventTargetNode::dispatchMouseEvent):
1838         * dom/MouseEvent.cpp:
1839         (WebCore::MouseEvent::MouseEvent):
1840         * dom/MouseEvent.h:
1841         * dom/MouseRelatedEvent.cpp:
1842         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
1843         (WebCore::MouseRelatedEvent::initCoordinates):
1844         * dom/MouseRelatedEvent.h:
1845         * dom/WheelEvent.cpp:
1846         (WebCore::WheelEvent::WheelEvent):
1847         * page/FrameView.cpp:
1848         (WebCore::FrameView::dispatchDragEvent):
1849
1850 2006-06-25  Timothy Hatcher  <timothy@apple.com>
1851
1852         Reviewed by Darin.
1853
1854         Bug 9574: Drosera should show inline scripts within the original HTML
1855         http://bugzilla.opendarwin.org/show_bug.cgi?id=9574
1856
1857         * Pass the starting line number and error message to the debugger.
1858         * Call parsedSource even if there was a script parse error so the
1859           debugger can show the parse error.
1860         * Pass NSURL objects to the ObjC delegate for the script URLs.
1861
1862         * bridge/mac/WebCoreScriptDebugger.h:
1863         * bridge/mac/WebCoreScriptDebugger.mm:
1864         (toNSURL):
1865         (WebCoreScriptDebuggerImp::sourceParsed):
1866
1867 2006-06-24  David Kilzer  <ddkilzer@kilzer.net>
1868
1869         Build fix.  Reviewed by NOBODY.
1870
1871         - Backed out patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=8707
1872           event.clientX and event.clientY should be relative to the viewport, not the canvas
1873
1874         * dom/EventTargetNode.cpp:
1875         (WebCore::EventTargetNode::dispatchMouseEvent):
1876         * dom/MouseEvent.cpp:
1877         (WebCore::MouseEvent::MouseEvent):
1878         * dom/MouseEvent.h:
1879         * dom/MouseRelatedEvent.cpp:
1880         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
1881         (WebCore::MouseRelatedEvent::initCoordinates):
1882         * dom/MouseRelatedEvent.h:
1883         * dom/WheelEvent.cpp:
1884         (WebCore::WheelEvent::WheelEvent):
1885
1886 2006-06-24  Rob Buis  <buis@kde.org>
1887
1888         Reviewed by Darin.
1889
1890         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8707:
1891         event.clientX and event.clientY should be relative to the viewport, not the canvas
1892
1893         Make sure clientX and clientY take into account the scroll offsets
1894         of the view.
1895
1896         Test: fast/dom/window-xy-properties.html
1897
1898         * dom/EventTargetNode.cpp:
1899         (WebCore::EventTargetNode::dispatchMouseEvent):
1900         * dom/MouseEvent.cpp:
1901         (WebCore::MouseEvent::MouseEvent):
1902         * dom/MouseEvent.h:
1903         * dom/MouseRelatedEvent.cpp:
1904         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
1905         (WebCore::MouseRelatedEvent::initCoordinates):
1906         * dom/MouseRelatedEvent.h:
1907         * dom/WheelEvent.cpp:
1908         (WebCore::WheelEvent::WheelEvent):
1909
1910 2006-06-24  Rob Buis  <buis@kde.org>
1911
1912         Reviewed by Darin.
1913
1914         http://bugzilla.opendarwin.org/show_bug.cgi?id=9352
1915         Webkit doesn't respect stroke-width in SVG for smaller <circle>s
1916
1917         Make sure the stroke path is set before applying gradient transforms.
1918
1919         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
1920         (WebCore::KRenderingPaintServerGradientQuartz::setup):
1921         (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
1922
1923 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
1924
1925         Rubber-stamped by Eric.
1926
1927         Add a -h (do not follow symlinks) option to ln in derived sources build script (without it,
1928         a symlink was created inside the source directory on second build).
1929
1930         * WebCore.xcodeproj/project.pbxproj:
1931
1932 2006-06-24  James G. Speth  <speth@end.com>
1933
1934         Reviewed by Darin.  Copyrights tweaked by ddkilzer.
1935         
1936         Bug 8331: DOMNodeLists returned to Objective-C are not properly wrapped
1937         http://bugzilla.opendarwin.org/show_bug.cgi?id=8331
1938         
1939         DOMNodes were the only objects handled by createObjcInstanceForValue.
1940         now it handles all of these: DOMNode, DOMNodeList, DOMNamedNodeMap, DOMStyleSheetList,
1941         DOMStyleSheet, DOMMediaList, DOMCSSRuleList, DOMCSSRule, DOMCSSStyleDeclaration, and DOMCSSValue
1942         
1943         * WebCore.xcodeproj/project.pbxproj: added file DOMCSSInternal.h to project
1944         * bindings/js/kjs_css.cpp:
1945         (KJS::): changed ClassInfo for DOMCSSStyleSheet to have DOMStyleSheet as its parent class
1946         * bindings/objc/DOM.mm:
1947         (-[DOMDocumentType :]):  moved DOMNamedNodeMap (WebCoreInternal) interface to DOMInternal.h
1948         * bindings/objc/DOMCSS.mm: moved WebCoreInternal interfaces to DOMCSSInternal.h
1949         * bindings/objc/DOMCSSInternal.h: Added file, contains WebCoreInternal interface for CSS classes
1950         * bindings/objc/DOMInternal.h: added DOMNamedNodeMap (WebCoreInternal) interface
1951         * bindings/objc/DOMUtility.mm:
1952         (KJS::ScriptInterpreter::createObjcInstanceForValue): support for more classes
1953
1954 2006-06-24  David Kilzer  <ddkilzer@kilzer.net>
1955
1956         Reviewed by Timothy.
1957
1958         * Info.plist: Fixed copyright to include 2003-2006.
1959         * manual-tests/NPN_Invoke/Info.plist: Added copyright statement.
1960
1961 2006-06-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1962
1963         Reviewed by Darin, landed by ap.
1964
1965         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9547
1966           Resize corner does not track the mouse accurately
1967
1968         Test: fast/css/resize-corner-tracking.html
1969
1970         * page/FrameView.cpp:
1971         (WebCore::FrameView::handleMousePressEvent): Store the offset from the layer's
1972         resizing corner where dragging has started.
1973         (WebCore::FrameView::handleMouseMoveEvent): Pass the stored offset to the
1974         layer's resize method.
1975         * rendering/RenderLayer.cpp:
1976         (WebCore::RenderLayer::resize): Added an offset parameter, which is added to
1977         the mouse location.
1978         For objects that may have intrinsic margins applied to them,
1979         added code to lift the margins into the object's style in order to keep them
1980         constant.
1981         Changed to take the content size as the base size if the box-sizing property
1982         is content-box.
1983         (WebCore::RenderLayer::offsetFromResizeCorner): Added. Returns the offset of the
1984         given point from the corner that tracks the mouse when resizing.
1985         * rendering/RenderLayer.h:
1986
1987 2006-06-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1988
1989         Reviewed by Darin, landed by ap.
1990
1991         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9316
1992           REGRESSION: text field width shrinks on first keystroke
1993
1994         Test: fast/forms/floating-textfield-relayout.html
1995
1996         * page/FrameView.cpp:
1997         (WebCore::FrameView::layoutRoot): Added. During subtree relayout, returns
1998         the subtree root. Otherwise returns 0.
1999         (WebCore::FrameView::layoutPending): Made const.
2000         * page/FrameView.h:
2001         * rendering/RenderBox.cpp:
2002         (WebCore::RenderBox::calcWidth): Added early return if this is the root
2003         of a subtree being laid out. 
2004
2005 2006-06-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2006
2007         Reviewed by Hyatt.
2008
2009         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9531
2010           Pages that need only a horizontal scroll bar get a vertical one as well
2011
2012         The change affects many existing tests.
2013
2014         * page/FrameView.cpp:
2015         (WebCore::FrameView::layout): Mark the body renderer as needing layout if
2016         the view's height has changed and the body stretches to the view's height.
2017         * rendering/RenderBox.cpp:
2018         (WebCore::RenderBox::calcHeight):
2019         * rendering/RenderBox.h:
2020         (WebCore::RenderBox::stretchesToViewHeight): Added. Moved the logic for when
2021         the HTML block needs to stretch to the view's height from calcHeight() here.
2022
2023 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
2024
2025         Reviewed by Darin.
2026
2027         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7461
2028           Always encode the path part of an URI as UTF-8
2029
2030         Test: http/tests/uri/utf8-path.html
2031
2032         * platform/KURL.cpp:
2033         (encodeRelativeString): Always set pathEncoding to UTF-8.
2034
2035 2006-06-24  Graham Dennis  <Graham.Dennis@gmail.com>
2036
2037         Reviewed by Darin, landed by ap.
2038         
2039         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9467
2040           TreeWalker/NodeIterator do not restrict the traversal
2041         
2042         Test: traversal/stay-within-root.html
2043
2044         * dom/Node.cpp:
2045         (WebCore::Node::traversePreviousNode):
2046         * dom/Node.h:
2047         Add a stayWithin argument to traversePreviousNode just like the other
2048         traversal functions
2049         * dom/NodeIterator.cpp:
2050         (WebCore::NodeIterator::findNextNode):
2051         (WebCore::NodeIterator::findPreviousNode):
2052         Ensure that when moving forward or backward that the root node is not
2053         exited
2054         * dom/TreeWalker.cpp:
2055         (WebCore::TreeWalker::previousNode):
2056         (WebCore::TreeWalker::nextNode):
2057         Ditto
2058         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
2059
2060 2006-06-24  Jonas Witt <jonas.witt@gmail.com>
2061
2062         Reviewed by ggaren, landed by ap.
2063
2064         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9181
2065           Complete DOMUIEvent Obj-C API to reflect UIEvent
2066
2067         * WebCore.exp: add new classes DOMKeyboardEvent and DOMWheelEvent to the exported 
2068           symbols list of WebCore.framework
2069
2070         Updated DOMUIEvent to include all DOM Level 2 properties
2071         Added DOMKeyboardEvent (DOM Level 3)
2072         Added two non-W3C accessors (keyCode, charCode) of DOMKeyboardEvent to a separate file (DOMEventsNonstandard)
2073         Added DOMWheelEvent (non-W3C) in separate file (DOMEventsNonstandard)
2074         Added this file (DOMEventsNonstandard) to the build process
2075
2076         * WebCore.xcodeproj/project.pbxproj:
2077         * bindings/objc/DOM.h:
2078         * bindings/objc/DOMEvents.h:
2079         * bindings/objc/DOMEvents.mm:
2080         (+[DOMEvent _eventWith:]):
2081         (-[DOMUIEvent _UIEvent]):
2082         (-[DOMUIEvent view]):
2083         (-[DOMUIEvent detail]):
2084         (-[DOMUIEvent initUIEvent:::::]):
2085         (-[DOMKeyboardEvent _keyboardEvent]):
2086         (-[DOMKeyboardEvent keyIdentifier]):
2087         (-[DOMKeyboardEvent keyLocation]):
2088         (-[DOMKeyboardEvent ctrlKey]):
2089         (-[DOMKeyboardEvent shiftKey]):
2090         (-[DOMKeyboardEvent altKey]):
2091         (-[DOMKeyboardEvent metaKey]):
2092         (-[DOMKeyboardEvent getModifierState:]):
2093         (-[DOMMouseEvent button]):
2094         * bindings/objc/DOMEventsNonstandard.mm: Added.
2095         (-[DOMWheelEvent _wheelEvent]):
2096         (-[DOMWheelEvent screenX]):
2097         (-[DOMWheelEvent screenY]):
2098         (-[DOMWheelEvent clientX]):
2099         (-[DOMWheelEvent clientY]):
2100         (-[DOMWheelEvent ctrlKey]):
2101         (-[DOMWheelEvent shiftKey]):
2102         (-[DOMWheelEvent altKey]):
2103         (-[DOMWheelEvent metaKey]):
2104         (-[DOMWheelEvent isHorizontal]):
2105         (-[DOMWheelEvent wheelDelta]):
2106         (-[DOMKeyboardEvent _keyboardEvent]):
2107         (-[DOMKeyboardEvent keyCode]):
2108         (-[DOMKeyboardEvent charCode]):
2109         * bindings/objc/DOMPrivate.h:
2110
2111 2006-06-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2112
2113         Reviewed and landed by ap.
2114
2115         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9563
2116           Remove unused layoutSuppressed field and inLayout() method
2117
2118         No test added because there is no change in functionality.
2119
2120         * page/FrameView.cpp:
2121         (WebCore::FrameViewPrivate::reset):
2122         (WebCore::FrameView::layout):
2123         * page/FrameView.h:
2124         * rendering/RenderView.cpp:
2125         (WebCore::RenderView::layout):
2126
2127 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
2128
2129         Reviewed by Darin.
2130
2131         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8177
2132         Javascript search incredibly slow
2133
2134         No change in functionality, thus no test.
2135
2136         Use info sharing for named collections, too. Moved shared HTMLCollection infos from HTMLDocument 
2137         to Document.  Renamed collection types to use the preferred WebKit style. Replaced direct
2138         HTMLCollection creation with using accessors from Document in a few places.
2139
2140         * bindings/objc/DOMHTML.mm:
2141         (-[DOMHTMLElement children]):
2142         (-[DOMHTMLDocument images]):
2143         (-[DOMHTMLDocument applets]):
2144         (-[DOMHTMLDocument links]):
2145         (-[DOMHTMLDocument forms]):
2146         (-[DOMHTMLDocument anchors]):
2147         (-[DOMHTMLMapElement areas]):
2148         (-[DOMHTMLTableSectionElement rows]):
2149         (-[DOMHTMLTableElement rows]):
2150         (-[DOMHTMLTableElement tBodies]):
2151         (-[DOMHTMLTableRowElement cells]):
2152         * dom/Document.cpp:
2153         (WebCore::Document::images):
2154         (WebCore::Document::applets):
2155         (WebCore::Document::embeds):
2156         (WebCore::Document::objects):
2157         (WebCore::Document::scripts):
2158         (WebCore::Document::links):
2159         (WebCore::Document::forms):
2160         (WebCore::Document::anchors):
2161         (WebCore::Document::all):
2162         (WebCore::Document::windowNamedItems):
2163         (WebCore::Document::documentNamedItems):
2164         (WebCore::Document::nameCollectionInfo):
2165         * dom/Document.h:
2166         (WebCore::Document::collectionInfo):
2167         * html/HTMLCollection.cpp:
2168         (WebCore::HTMLCollection::HTMLCollection):
2169         (WebCore::HTMLCollection::traverseNextItem):
2170         (WebCore::HTMLCollection::checkForNameMatch):
2171         (WebCore::HTMLCollection::updateNameCache):
2172         * html/HTMLCollection.h:
2173         (WebCore::HTMLCollection::):
2174         * html/HTMLDocument.h:
2175         * html/HTMLElement.cpp:
2176         (WebCore::HTMLElement::children):
2177         * html/HTMLMapElement.cpp:
2178         (WebCore::HTMLMapElement::areas):
2179         * html/HTMLNameCollection.h:
2180         * html/HTMLNameCollection.cpp:
2181         (WebCore::HTMLNameCollection::HTMLNameCollection):
2182         (WebCore::HTMLNameCollection::traverseNextItem):
2183         * html/HTMLFormCollection.cpp:
2184         * html/HTMLOptionsCollection.cpp:
2185         (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
2186         * html/HTMLSelectElement.h:
2187         (WebCore::HTMLSelectElement::collectionInfo):
2188         * html/HTMLTableElement.cpp:
2189         (WebCore::HTMLTableElement::rows):
2190         (WebCore::HTMLTableElement::tBodies):
2191         * html/HTMLTableRowElement.cpp:
2192         (WebCore::HTMLTableRowElement::cells):
2193         * html/HTMLTableSectionElement.cpp:
2194         (WebCore::HTMLTableSectionElement::rows):
2195         * kwq/WebCoreAXObject.mm:
2196         (-[WebCoreAXObject accessibilityAttributeValue:]):
2197         * page/Frame.cpp:
2198         (WebCore::Frame::gotoAnchor):
2199
2200 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
2201
2202         Reviewed by Darin.
2203
2204         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9418
2205         WebKit will not build when Space exists in path
2206
2207         * WebCore.xcodeproj/project.pbxproj: Enclose search paths in quotes; create symlinks to 
2208         avoid passing paths with spaces to make.
2209
2210 2006-06-23  Tim Omernick  <timo@apple.com>
2211
2212         Reviewed by Tim Hatcher.
2213
2214         <rdar://problem/4560947> Leopard REGRESSION: Dragging to TileGame Widget is broken
2215
2216         * page/FrameView.cpp:
2217         (WebCore::FrameView::updateDragAndDrop):
2218         Use the passed mouse event, instead of the "current" event.  There is no such thing as
2219         a "drag event".  Asking for the current event during a drag returns a weird system-
2220         internal event with an invalid mouse location.
2221
2222 2006-06-23  Timothy Hatcher  <timothy@apple.com>
2223
2224         Reviewed by Eric.
2225
2226         Manual test added: cursor.html
2227
2228         Bug 9560: should support new CSS3 cursor types to get more resizing directions
2229         http://bugzilla.opendarwin.org/show_bug.cgi?id=9560
2230
2231         Adds support for ew-resize, ns-resize, nesw-resize, nwse-resize,
2232         col-resize and row-resize CSS3 cursor values.
2233
2234         Also converted some of the cursor images to grayscale tiffs,
2235         some were RGB but had no color data.
2236
2237         * Resources/eastResizeCursor.tiff:
2238         * Resources/eastWestResizeCursor.tiff: Added.
2239         * Resources/helpCursor.tiff:
2240         * Resources/moveCursor.tiff:
2241         * Resources/northEastResizeCursor.tiff:
2242         * Resources/northEastSouthWestResizeCursor.tiff: Added.
2243         * Resources/northResizeCursor.tiff:
2244         * Resources/northSouthResizeCursor.tiff: Added.
2245         * Resources/northWestResizeCursor.tiff:
2246         * Resources/northWestSouthEastResizeCursor.tiff: Added.
2247         * Resources/southEastResizeCursor.tiff:
2248         * Resources/southResizeCursor.tiff:
2249         * Resources/southWestResizeCursor.tiff:
2250         * Resources/textAreaResizeCorner.tiff:
2251         * Resources/waitCursor.tiff:
2252         * Resources/westResizeCursor.tiff:
2253         * WebCore.xcodeproj/project.pbxproj:
2254         * css/CSSComputedStyleDeclaration.cpp:
2255         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2256         * css/CSSValueKeywords.in:
2257         * css/cssparser.cpp:
2258         (WebCore::CSSParser::parseValue):
2259         * manual-tests/cursor.html: Added.
2260         * page/FrameView.cpp:
2261         (WebCore::selectCursor):
2262         * platform/Cursor.h:
2263         * platform/mac/CursorMac.mm:
2264         (WebCore::northSouthResizeCursor):
2265         (WebCore::eastWestResizeCursor):
2266         (WebCore::northEastSouthWestResizeCursor):
2267         (WebCore::northWestSouthEastResizeCursor):
2268         (WebCore::columnResizeCursor):
2269         (WebCore::rowResizeCursor):
2270         * platform/win/CursorWin.cpp:
2271         (WebCore::northSouthResizeCursor):
2272         (WebCore::eastWestResizeCursor):
2273         (WebCore::northEastSouthWestResizeCursor):
2274         (WebCore::northWestSouthEastResizeCursor):
2275         (WebCore::columnResizeCursor):
2276         (WebCore::rowResizeCursor):
2277         * rendering/render_style.h: cursor needs 5 bits now
2278
2279 2006-06-23  John Sullivan  <sullivan@apple.com>
2280
2281         Reviewed by Tim Omernick
2282         
2283         - fixed <rdar://problem/4597685> stale rects for document markers can be left behind in certain cases
2284
2285         * dom/Document.h:
2286         * dom/Document.cpp:
2287         (WebCore::Document::setRenderedRectForMarker):
2288         changed parameter from IntRect to const IntRect& at Darin's request
2289         (WebCore::Document::invalidateRenderedRectsForMarkersInRect):
2290         new method, tests whether the rendered rect for each marker intersects the
2291         passed rect. If so, sets the rendered rect back to the placeholder rect that
2292         means that the rect for this marker isn't known.
2293         
2294         * page/Frame.cpp:
2295         (WebCore::Frame::paint):
2296         call invalidateRenderedRectsForMarkersInRect on the rect we're about to paint.
2297         This ensures that old stale rects won't be preserved if the associated marker
2298         has moved such that it is out of the painted area.
2299
2300 2006-06-23  Justin Garcia  <justin.garcia@apple.com>
2301
2302         Reviewed by levi
2303
2304         <rdar://problem/4527702>
2305         REGRESSION: Quote bars go away on first paragraph when I delete reply text
2306
2307         * editing/DeleteSelectionCommand.cpp:
2308         (WebCore::DeleteSelectionCommand::mergeParagraphs):
2309         Add a rule for when to merge into empty blocks.
2310
2311 === WebCore-521.13 ===
2312
2313 2006-06-23  Patrick Beard  <beard@apple.com>
2314
2315         Reviewed by Tim Hatcher.
2316
2317         <rdar://problem/4223619> Safari crashed in -[NSFont __isSystemFont]
2318         CFRetain and CFRelease NSFont's when FontPlatformData has a reference.
2319         We only do this when GC is enabled for performance reasons.
2320         No tests possible.
2321
2322         * platform/mac/FontPlatformData.h:
2323         (WebCore::FontPlatformData::FontPlatformData):
2324         (WebCore::FontPlatformData::~FontPlatformData):
2325
2326 2006-06-23  Justin Garcia  <justin.garcia@apple.com>
2327
2328         Reviewed by levi
2329         
2330         <http://bugzilla.opendarwin.org/show_bug.cgi?id=8074>
2331         Caret before/after block tables is too small
2332         <rdar://problem/4598331>
2333         right arrow out of a table shows cursor in a weird place
2334
2335         * rendering/RenderBox.cpp:
2336         (WebCore::RenderBox::caretRect): Don't propagate to children, 
2337         VisiblePositions inside containers don't refer to children.
2338         Don't use the font height for tables.
2339
2340 2006-06-23  Brady Eidson  <beidson@apple.com>
2341
2342         Reviewed by Kevin.
2343
2344         Added 64-bit String::number() functions
2345
2346         * platform/PlatformString.h:
2347         * platform/String.cpp:
2348         (WebCore::String::number):
2349
2350 2006-06-22  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2351
2352         Reviewed by Hyatt.
2353
2354         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9497
2355           REGRESSION: Incomplete repainting when scrolling thumbnails on Flickr
2356
2357         Test: fast/repaint/clipped-relative.html
2358
2359         * page/FrameView.cpp:
2360         (WebCore::FrameView::layout):
2361         * rendering/RenderBlock.cpp:
2362         (WebCore::RenderBlock::removePositionedObjects): Removed call to computeRepaintRects().
2363         Previously, it was needed to update the cached rects before RenderBox::setStyle()
2364         called updateLayerPositions().
2365         * rendering/RenderBox.cpp:
2366         (WebCore::RenderBox::setStyle): Changed to call updateLayerPositions() for a newly-
2367         created layer only if it does not need layout. Otherwise,  updateLayerPositions() will
2368         be called after layout. This saves a repaint in some cases.
2369         * rendering/RenderLayer.cpp:
2370         (WebCore::RenderLayer::checkForRepaintOnResize): Renamed computeRepaintRects() to
2371         this and deleted the code that cached the absolute position and repaint rects.
2372         (WebCore::RenderLayer::updateLayerPositions): Added code to cache the absolute
2373         position and repaint rects right after updating the layer's position.
2374         * rendering/RenderLayer.h:
2375
2376 2006-06-22  Beth Dakin  <bdakin@apple.com>
2377
2378         Reviewed by Maciej.
2379
2380         Fix for <rdar://problem/4599015> REGRESSION: Hand on clock widget 
2381         don't appear at all
2382
2383         This regression was caused by <rdar://problem/4567520> HIDPI: pixel 
2384         cracks in weather widget at 1.83 scaling
2385
2386         * html/CanvasRenderingContext2D.cpp:
2387         (WebCore::CanvasRenderingContext2D::drawImage): Do the contains 
2388         check before rounding to integral device pixels.
2389
2390 2006-06-22  Anders Carlsson  <acarlsson@apple.com>
2391
2392         Reviewed by John.
2393
2394         <rdar://problem/4529334> REGRESSION: Can't configure RadarInMotion widget for U.S. locations on Leopard (Javascript errors)
2395         
2396         * dom/Document.cpp:
2397         (WebCore::Document::completeURL):
2398         Check if both the URL and base URL are empty instead of using URL() which returns "about:blank" if the URL is empty.
2399         
2400 2006-06-22  Anders Carlsson  <acarlsson@apple.com>
2401
2402         Reviewed by Maciej.
2403
2404         <rdar://problem/4499675> Package Tracker widget always crashes in WebCore::Frame::jScriptEnabled() const + 0
2405
2406         * html/HTMLParser.cpp:
2407         (WebCore::HTMLParser::noscriptCreateErrorCheck):
2408         (WebCore::HTMLParser::canvasCreateErrorCheck):
2409         (WebCore::HTMLParser::isInline):
2410         Add null-checks for document->frame() since it can be 0 for documents created using createHTMLDocument.
2411
2412 2006-06-22  Anders Carlsson  <acarlsson@apple.com>
2413
2414         Reviewed by Maciej.
2415
2416         <rdar://problem/4524840> Entities contained in DOCTYPE referenced DTD in XSLT source document are unknown
2417         
2418         * dom/xml_tokenizer.cpp:
2419         (WebCore::shouldAllowExternalLoad):
2420         Use correct path for the catalog.
2421         
2422         (WebCore::errorFunc):
2423         Add error function to keep parser errors from going to the console.
2424         
2425         (WebCore::XMLTokenizer::write):
2426         Remove if (0 &&)
2427         
2428         (WebCore::XMLTokenizer::end):
2429         Pass DocLoader to xmlDocPtrForString.
2430         
2431         (WebCore::xmlDocPtrForString):        
2432         * dom/xml_tokenizer.h:
2433         Add DocLoader argument to xmlDocPtrForString so external DTDs and entities can be loaded.
2434         
2435         * xml/XSLTProcessor.cpp:
2436         (WebCore::xmlDocPtrFromNode):
2437         Pass DocLoader to xmlDocPtrForString
2438         
2439 2006-06-21  David Hyatt  <hyatt@apple.com>
2440
2441         Back out -webkit-overlay and just rename it back to overlay.
2442
2443         Reviewed by darin
2444
2445         * css/CSSComputedStyleDeclaration.cpp:
2446         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2447         * css/CSSValueKeywords.in:
2448         * css/cssparser.cpp:
2449         (WebCore::CSSParser::parseValue):
2450         * css/cssstyleselector.cpp:
2451         (WebCore::CSSStyleSelector::applyProperty):
2452
2453 2006-06-21  Justin Garcia  <justin.garcia@apple.com>
2454
2455         Reviewed by levi
2456
2457         * editing/DeleteSelectionCommand.cpp:
2458         (WebCore::DeleteSelectionCommand::initializePositionData): Fix a bug in the code
2459         to stop merges across table cells.
2460         (WebCore::DeleteSelectionCommand::mergeParagraphs): Move the code to stop merges
2461         across table cells to initializePositionData so that its changes to 
2462         m_mergeBlocksAfterDelete can take effect on the endingPosition.
2463         * editing/InsertParagraphSeparatorCommand.cpp:
2464         (WebCore::InsertParagraphSeparatorCommand::doApply): Turn into an InsertLineBreak
2465         instead of splitting/cloning a table cell.
2466
2467 2006-06-21  Beth Dakin  <bdakin@apple.com>
2468
2469         Reviewed by John.
2470
2471         Fix for <rdar://problem/3914965> Misspelled text underline doesn't 
2472         look right at non-standard scale factors
2473
2474         * platform/mac/GraphicsContextMac.mm:
2475         (WebCore::GraphicsContext::drawLineForMisspelling): We need to call  
2476         into our previously-created SPI for pattern-drawing so that the 
2477         phase is right at all scale factors.
2478
2479 2006-06-21  David Hyatt  <hyatt@apple.com>
2480
2481         Fix for 7362, implement the CSS3 overflow-x and overflow-y properties.
2482
2483         Reviewed by adele
2484
2485         * WebCore.xcodeproj/project.pbxproj:
2486         * css/CSSComputedStyleDeclaration.cpp:
2487         (WebCore::):
2488         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2489         * css/CSSPropertyNames.in:
2490         * css/cssparser.cpp:
2491         (WebCore::CSSParser::parseValue):
2492         * css/cssstyleselector.cpp:
2493         (WebCore::CSSStyleSelector::adjustRenderStyle):
2494         (WebCore::CSSStyleSelector::applyProperty):
2495         * page/FrameView.cpp:
2496         (WebCore::FrameView::applyOverflowToViewport):
2497         (WebCore::FrameView::layout):
2498         * rendering/RenderBlock.cpp:
2499         (WebCore::RenderBlock::layoutBlock):
2500         (WebCore::RenderBlock::determineHorizontalPosition):
2501         (WebCore::RenderBlock::layoutBlockChildren):
2502         (WebCore::RenderBlock::rightOffset):
2503         (WebCore::RenderBlock::rightmostPosition):
2504         (WebCore::RenderBlock::calcMinMaxWidth):
2505         * rendering/RenderBox.cpp:
2506         (WebCore::RenderBox::setStyle):
2507         (WebCore::RenderBox::contentWidth):
2508         (WebCore::RenderBox::contentHeight):
2509         (WebCore::RenderBox::sizesToIntrinsicWidth):
2510         (WebCore::RenderBox::calcHeight):
2511         (WebCore::RenderBox::calcPercentageHeight):
2512         * rendering/RenderFlexibleBox.cpp:
2513         (WebCore::RenderFlexibleBox::layoutBlock):
2514         * rendering/RenderLayer.cpp:
2515         (WebCore::RenderLayer::scrollToOffset):
2516         (WebCore::RenderLayer::shouldAutoscroll):
2517         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
2518         (WebCore::RenderLayer::styleChanged):
2519         * rendering/RenderLayer.h:
2520         * rendering/RenderObject.cpp:
2521         (WebCore::RenderObject::clientWidth):
2522         (WebCore::RenderObject::clientHeight):
2523         * rendering/RenderObject.h:
2524         (WebCore::RenderObject::hasAutoVerticalScrollbar):
2525         (WebCore::RenderObject::hasAutoHorizontalScrollbar):
2526         (WebCore::RenderObject::scrollsOverflow):
2527         (WebCore::RenderObject::scrollsOverflowX):
2528         (WebCore::RenderObject::scrollsOverflowY):
2529         (WebCore::RenderObject::includeVerticalScrollbarSize):
2530         (WebCore::RenderObject::includeHorizontalScrollbarSize):
2531         * rendering/RenderTextArea.cpp:
2532         (WebCore::RenderTextArea::setStyle):
2533         * rendering/RenderTextField.cpp:
2534         (WebCore::RenderTextField::createDivStyle):
2535         (WebCore::RenderTextField::calcHeight):
2536         (WebCore::RenderTextField::calcMinMaxWidth):
2537         * rendering/bidi.cpp:
2538         (WebCore::RenderBlock::layoutInlineChildren):
2539         * rendering/render_style.cpp:
2540         (WebCore::RenderStyle::diff):
2541         * rendering/render_style.h:
2542         (WebCore::):
2543         (WebCore::RenderStyle::NonInheritedFlags::operator==):
2544         (WebCore::RenderStyle::setBitDefaults):
2545         (WebCore::RenderStyle::overflowX):
2546         (WebCore::RenderStyle::overflowY):
2547         (WebCore::RenderStyle::setOverflowX):
2548         (WebCore::RenderStyle::setOverflowY):
2549         (WebCore::RenderStyle::initialOverflowX):
2550         (WebCore::RenderStyle::initialOverflowY):
2551
2552 2006-06-21  Justin Garcia  <justin.garcia@apple.com>
2553
2554         Reviewed by levi
2555         
2556         <rdar://problem/4590366>
2557         REGRESSION: Selection incorrectly paints gaps on TOT
2558
2559         * dom/Document.cpp:
2560         (WebCore::Document::updateSelection): Use the leftmost candidate for the end of the
2561         selection and the rightmost candidate for the start of the selection.
2562         * dom/Position.cpp:
2563         (WebCore::Position::upstream): Cross line wraps so that we can use upstream/downstream
2564         to get to candidates before/after linewraps.
2565         (WebCore::Position::downstream):
2566         (WebCore::Position::inRenderedContent):
2567         * editing/DeleteSelectionCommand.cpp:
2568         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
2569         (WebCore::DeleteSelectionCommand::mergeParagraphs):
2570         * editing/InsertParagraphSeparatorCommand.cpp:
2571         (WebCore::InsertParagraphSeparatorCommand::doApply): 
2572         Ensure that the leftmost candidate is used.  We should sample the style from that one.
2573         When the block to insert is after a br, a br should be inserted even in strict mode.
2574         * editing/InsertTextCommand.cpp:
2575         (WebCore::InsertTextCommand::input): 
2576         Insert at the leftmost candidate, get rid of a use of trailingWhitespacePosition.
2577         Don't apply a style if its unnecessary.
2578         * editing/ReplaceSelectionCommand.cpp:
2579         (WebCore::ReplaceSelectionCommand::doApply): "pos" can be invalidated, don't use it.
2580         * editing/VisiblePosition.cpp:
2581         Renamed initDeepPosition and made it return the canonical position.
2582         (WebCore::VisiblePosition::init):
2583         (WebCore::VisiblePosition::canonicalPosition):
2584         * editing/VisiblePosition.h: 
2585         (WebCore::VisiblePosition::characterBefore): Added.
2586         * editing/visible_units.cpp:
2587         (WebCore::startOfParagraph):
2588         * rendering/InlineTextBox.cpp:
2589         (WebCore::InlineTextBox::selectionState): When a selection ends at a line wrap, it shouldn't extend
2590         onto the next line.
2591
2592 2006-06-21  David Hyatt  <hyatt@apple.com>
2593
2594         Reviewed and committed by Beth.
2595
2596         Fix for <rdar://problem/4595337> Resizing a containing block 
2597         strictly vertically does not cause contained height:100% element to 
2598         also be resized.
2599
2600         * rendering/RenderBlock.cpp:
2601         (WebCore::RenderBlock::layoutBlockChildren): Also layout if the 
2602         child's min or max height is a percent.
2603
2604 2006-06-21  Anders Carlsson  <acarlsson@apple.com>
2605
2606         Reviewed by Geoff.
2607
2608         http://bugzilla.opendarwin.org/show_bug.cgi?id=6058
2609         XMLTokenizer runs all <script> tags at once instead of as they're encountered
2610         
2611         * dom/xml_tokenizer.cpp:
2612         (WebCore::XMLTokenizer::XMLTokenizer):
2613         Initialize new members.
2614         
2615         (WebCore::XMLTokenizer::endElementNs):
2616         If we've encountered a script tag, execute the script here. If the script
2617         tag refers to an external resource, pause the parser while loading it.
2618         
2619         (WebCore::XMLTokenizer::end):
2620         Move code from finish() to here
2621         
2622         (WebCore::XMLTokenizer::finish):
2623         Only call end() if the parser isn't paused.
2624         
2625         (WebCore::XMLTokenizer::notifyFinished):
2626         Evaluate the script here and resume the parser.
2627         
2628         (WebCore::XMLTokenizer::resumeParsing):
2629         If finish() was called, call end() after writing all data.
2630
2631 2006-06-21  Steve Falkenburg  <sfalken@apple.com>
2632
2633         Fix build break
2634
2635         * platform/win/TemporaryLinkStubs.cpp:
2636         (FrameWin::shouldInterruptJavaScript):
2637
2638 2006-06-21  Anders Carlsson  <acarlsson@apple.com>
2639
2640         Move FrameWin::shouldInterruptJavaScript to TemporaryLinkStubs.cpp
2641         
2642         * bridge/win/FrameWin.cpp:
2643         * platform/win/TemporaryLinkStubs.cpp:
2644         (FrameWin::shouldInterruptJavaScript):
2645
2646 2006-06-21  Ben Goodger <bengoodger@gmail.com>
2647
2648         Reviewed by Maciej. 
2649
2650         Fix for: http://bugzilla.opendarwin.org/show_bug.cgi?id=9523
2651         More Win32 build bustage.
2652  
2653         * WebCore.vcproj/WebCore/WebCore.vcproj:
2654         * bridge/win/FrameWin.cpp:
2655         (WebCore::FrameWin::shouldInterruptJavaScript):
2656         * bridge/win/FrameWin.h:
2657
2658 2006-06-20  Adele Peterson  <adele@apple.com>
2659
2660         Reviewed by Anders.
2661
2662         Fix for: http://bugzilla.opendarwin.org/show_bug.cgi?id=8948
2663         Switch to use new text field implementation for <textarea>
2664
2665         * css/html4.css:
2666         * html/HTMLTextAreaElement.cpp:
2667         (WebCore::HTMLTextAreaElement::selectionStart):
2668         (WebCore::HTMLTextAreaElement::selectionEnd):
2669         (WebCore::HTMLTextAreaElement::setSelectionStart):
2670         (WebCore::HTMLTextAreaElement::setSelectionEnd):
2671         (WebCore::HTMLTextAreaElement::select):
2672         (WebCore::HTMLTextAreaElement::setSelectionRange):
2673         (WebCore::HTMLTextAreaElement::createRenderer):
2674         (WebCore::HTMLTextAreaElement::appendFormData):
2675         (WebCore::HTMLTextAreaElement::isKeyboardFocusable):
2676         (WebCore::HTMLTextAreaElement::isMouseFocusable):
2677         (WebCore::HTMLTextAreaElement::focus):
2678         (WebCore::HTMLTextAreaElement::defaultEventHandler):
2679         (WebCore::HTMLTextAreaElement::updateValue):
2680         (WebCore::HTMLTextAreaElement::setValue):
2681
2682 2006-06-20  Brady Eidson  <beidson@apple.com>
2683
2684         Reviewed by Maciej
2685
2686         Fixed capitalization mistake that I made, someone else fixed, then I accidentally made it go back to the old way
2687
2688         * icon/SQLStatement.cpp:
2689
2690 2006-06-20  Brady Eidson  <beidson@apple.com>
2691
2692         Reviewed by Maciej.
2693
2694         More changes/additions setting the stage for the major IconDatabase hookup.
2695
2696         * WebCore.xcodeproj/project.pbxproj:  Added SQLTransaction.cpp
2697
2698         * bridge/mac/WebCoreIconDatabaseBridge.h: Added call-throughs and translations to pass WebKit DB to WebCore DB
2699         * bridge/mac/WebCoreIconDatabaseBridge.mm:
2700         (+[WebCoreIconDatabaseBridge sharedBridgeInstance]):
2701         (-[WebCoreIconDatabaseBridge setPrivateBrowsingEnabled:]):
2702         (-[WebCoreIconDatabaseBridge iconForURL:withSize:]):
2703         (-[WebCoreIconDatabaseBridge iconURLForURL:]):
2704         (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
2705         (-[WebCoreIconDatabaseBridge retainIconForURL:]):
2706         (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
2707         (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
2708         (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
2709         (-[WebCoreIconDatabaseBridge _setIconURL:forURL:]):
2710         (-[WebCoreIconDatabaseBridge _hasIconForIconURL:]):
2711
2712         * bridge/mac/WebCorePageBridge.mm: Added WebCore's IconDatabase logging channel to the user-prefs check
2713         (initializeLoggingChannelsIfNecessary):
2714
2715         * icon/IconDatabase.cpp:  Added stubs and basic SQL usage to create the sqlite DB and respond to WebKit calls
2716         (WebCore::IconDatabase::IconDatabase):
2717         (WebCore::IconDatabase::open):
2718         (WebCore::IconDatabase::close):
2719         (WebCore::IconDatabase::isValidDatabase):
2720         (WebCore::IconDatabase::recreateDatabase):
2721         (WebCore::IconDatabase::setPrivateBrowsingEnabled):
2722         (WebCore::IconDatabase::iconForURL):
2723         (WebCore::IconDatabase::iconURLForURL):
2724         (WebCore::IconDatabase::defaultIcon):
2725         (WebCore::IconDatabase::retainIconForURL):
2726         (WebCore::IconDatabase::releaseIconForURL):
2727         (WebCore::IconDatabase::setIconForIconURL):
2728         (WebCore::IconDatabase::setHaveNoIconForIconURL):
2729         (WebCore::IconDatabase::setIconURLForPageURL):
2730         (WebCore::IconDatabase::hasIconForIconURL):
2731
2732         * icon/IconDatabase.h:  WebIcon will be an internal class used in IconDatabase but is not complete yet
2733         (WebCore::WebIcon::getExpiration):
2734         (WebCore::WebIcon::getTouch):
2735
2736         * icon/SQLDatabase.cpp:  Added more SQLite convenience methods
2737         (SQLDatabase::setFullsync):
2738         (SQLDatabase::setBusyTimeout):
2739         (SQLDatabase::setBusyHandler):
2740         * icon/SQLDatabase.h:
2741         * icon/SQLStatement.cpp:
2742         (WebCore::SQLStatement::returnsAtLeastOneResult):
2743
2744         * icon/SQLTransaction.cpp: Added basic commit/rollback support with this simple class
2745         (SQLTransaction::SQLTransaction):
2746         (SQLTransaction::~SQLTransaction):
2747         (SQLTransaction::begin):
2748         (SQLTransaction::commit):
2749         (SQLTransaction::rollback):
2750
2751 2006-06-20  Adele Peterson  <adele@apple.com>
2752
2753         Reviewed by Maciej.
2754
2755         Fixes for:
2756         http://bugzilla.opendarwin.org/show_bug.cgi?id=8724
2757         REGRESSION: onSelect handler doesn't work for text fields
2758
2759         http://bugzilla.opendarwin.org/show_bug.cgi?id=7676
2760         REGRESSION: Selection methods on new text fields don't work if text field is hidden
2761
2762         http://bugzilla.opendarwin.org/show_bug.cgi?id=8867
2763         REGRESSION: selectionStart/End return 0 for input element once it no longer has focus
2764
2765         Implemented onSelect for new text fields and textareas.  Also fixed selection restore
2766         behavior to better match other browsers and Safari 2.0 behavior.
2767
2768         Tests:
2769         * fast/forms/input-selection-restore.html
2770         * fast/forms/input-selection-hidden.html
2771         * fast/forms/onselect-textarea.html
2772         * fast/forms/onselect-textfield.html
2773
2774         * html/HTMLInputElement.h: (WebCore::HTMLInputElement::cacheSelection): Added.
2775         * html/HTMLInputElement.cpp:
2776         (WebCore::HTMLInputElement::init): Initializes cached selection.
2777         (WebCore::HTMLInputElement::selectionStart): If this element doesn't have focus, return the cached selection value.
2778         (WebCore::HTMLInputElement::selectionEnd): ditto.
2779         (WebCore::HTMLInputElement::setValue): Restore a caret at the starting point of the old selection.  Matches Safari 2.0 behavior.
2780
2781         * html/HTMLTextAreaElement.h: (WebCore::HTMLTextAreaElement::cacheSelection): Added.
2782         * html/HTMLTextAreaElement.cpp:
2783         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement): Initializes cached selection.
2784         (WebCore::HTMLTextAreaElement::selectionStart): If this element doesn't have focus, return the cached selection value.
2785         (WebCore::HTMLTextAreaElement::selectionEnd): ditto.
2786         (WebCore::HTMLTextAreaElement::focus): If this is the first focus, set a caret at the end of the text.  Otherwise,
2787         restore the cached selection.  This matches other browsers' behavior.
2788         (WebCore::HTMLTextAreaElement::setValue): Restore a caret at the starting point of the old selection.  Matches Safari 2.0 behavior.
2789
2790         * page/Frame.h: Added notifyRendererOfSelectionChange method. 
2791         * page/Frame.cpp:
2792         (WebCore::Frame::notifyRendererOfSelectionChange): Added.  Calls selectionChanged for text fields and textareas.  Forwards a userTriggered
2793         argument so selectionChanged knows whether or not to fire onSelect.
2794         (WebCore::Frame::setSelection): Calls notifyRendererOfSelectionChange(false).  This gets called for all selection changes, so the renderer
2795         can always update its cached selection values.
2796         (WebCore::Frame::handleMouseReleaseEvent): Calls notifyRendererOfSelectionChange(true) so onSelect will get fired when the user is done
2797         making a selection with the mouse.
2798         * bridge/mac/WebCoreFrameBridge.mm:
2799         (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]): Calls notifyRendererOfSelectionChange(true) so onSelect gets
2800         fired when the user makes a selection with the keyboard.
2801         (-[WebCoreFrameBridge alterCurrentSelection:verticalDistance:]): ditto.
2802
2803         * rendering/RenderTextField.h: Add userTriggered parameter to selectionChanged.
2804         * rendering/RenderTextField.cpp:
2805         (WebCore::RenderTextField::setSelectionRange): For visibility:hidden, cache the selection and 
2806         return early since we won't be able to actually set the selection.
2807         (WebCore::RenderTextField::selectionChanged): Caches the selection.  
2808         If the selection is a range, and its triggered by user action, then fire the onSelect event.
2809
2810 2006-06-21  Anders Carlsson  <acarlsson@apple.com>
2811
2812         * bridge/win/FrameWin.cpp:
2813         (WebCore::shouldInterruptJavaScript):
2814         * bridge/win/FrameWin.h:
2815         Try fixing the Windows build.
2816
2817 2006-06-20  Adele Peterson  <adele@apple.com>
2818
2819         RS by Tim Hatcher.
2820
2821         Renamed RenderSelect to DeprecatedRenderSelect to prepare for new popup menu and list menu implementations.
2822        
2823         * WebCore.xcodeproj/project.pbxproj:
2824         * html/HTMLOptionElement.h:
2825         * html/HTMLSelectElement.cpp:
2826         (WebCore::HTMLSelectElement::recalcStyle):
2827         (WebCore::HTMLSelectElement::createRenderer):
2828         (WebCore::HTMLSelectElement::setRecalcListItems):
2829         (WebCore::HTMLSelectElement::reset):
2830         (WebCore::HTMLSelectElement::notifyOptionSelected):
2831         * html/HTMLSelectElement.h:
2832         * rendering/DeprecatedRenderSelect.cpp: Added.
2833         (WebCore::DeprecatedRenderSelect::DeprecatedRenderSelect):
2834         (WebCore::DeprecatedRenderSelect::setWidgetWritingDirection):
2835         (WebCore::DeprecatedRenderSelect::setStyle):
2836         (WebCore::DeprecatedRenderSelect::updateFromElement):
2837         (WebCore::DeprecatedRenderSelect::baselinePosition):
2838         (WebCore::DeprecatedRenderSelect::calcMinMaxWidth):
2839         (WebCore::DeprecatedRenderSelect::layout):
2840         (WebCore::DeprecatedRenderSelect::valueChanged):
2841         (WebCore::DeprecatedRenderSelect::selectionChanged):
2842         (WebCore::DeprecatedRenderSelect::setOptionsChanged):
2843         (WebCore::DeprecatedRenderSelect::createListBox):
2844         (WebCore::DeprecatedRenderSelect::updateSelection):
2845         * rendering/DeprecatedRenderSelect.h: Added.
2846         (WebCore::DeprecatedRenderSelect::renderName):
2847         * rendering/RenderSelect.cpp: Removed.
2848         * rendering/RenderSelect.h: Removed.
2849
2850 2006-06-20  Anders Carlsson  <acarlsson@apple.com>
2851
2852         Reviewed by Geoff.
2853
2854         http://bugzilla.opendarwin.org/show_bug.cgi?id=9509
2855         Would like a way to pause/resume XML parsing
2856
2857         * dom/xml_tokenizer.cpp:
2858         (WebCore::PendingCallbacks::PendingCallbacks):
2859         (WebCore::PendingCallbacks::appendStartElementNSCallback):
2860         (WebCore::PendingCallbacks::appendEndElementNSCallback):
2861         (WebCore::PendingCallbacks::appendCharactersCallback):
2862         (WebCore::PendingCallbacks::appendProcessingInstructionCallback):
2863         (WebCore::PendingCallbacks::appendCDATABlockCallback):
2864         (WebCore::PendingCallbacks::appendCommentCallback):
2865         (WebCore::PendingCallbacks::appendInternalSubsetCallback):
2866         (WebCore::PendingCallbacks::appendErrorCallback):
2867         (WebCore::PendingCallbacks::callAndRemoveFirstCallback):
2868         (WebCore::PendingCallbacks::isEmpty):
2869         (WebCore::PendingCallbacks::PendingCallback::~PendingCallback):
2870         (WebCore::PendingCallbacks::PendingStartElementNSCallback::~PendingStartElementNSCallback):
2871         (WebCore::PendingCallbacks::PendingStartElementNSCallback::call):
2872         (WebCore::PendingCallbacks::PendingEndElementNSCallback::call):
2873         (WebCore::PendingCallbacks::PendingCharactersCallback::~PendingCharactersCallback):
2874         (WebCore::PendingCallbacks::PendingCharactersCallback::call):
2875         (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::~PendingProcessingInstructionCallback):
2876         (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::call):
2877         (WebCore::PendingCallbacks::PendingCDATABlockCallback::~PendingCDATABlockCallback):
2878         (WebCore::PendingCallbacks::PendingCDATABlockCallback::call):
2879         (WebCore::PendingCallbacks::PendingCommentCallback::~PendingCommentCallback):
2880         (WebCore::PendingCallbacks::PendingCommentCallback::call):
2881         (WebCore::PendingCallbacks::PendingInternalSubsetCallback::~PendingInternalSubsetCallback):
2882         (WebCore::PendingCallbacks::PendingInternalSubsetCallback::call):
2883         (WebCore::PendingCallbacks::):
2884         New classes which manage a list of pending SAX callbacks that have not yet
2885         been sent to the tokenizer.
2886         
2887         (WebCore::XMLTokenizer::XMLTokenizer):
2888         Initialize new member variables.
2889         
2890         (WebCore::XMLTokenizer::~XMLTokenizer):
2891         Delete PendingCallbacks object.
2892         
2893         (WebCore::XMLTokenizer::write):
2894         If the parser is paused, queue the data to be written.
2895         
2896         (WebCore::XMLTokenizer::startElementNs):
2897         (WebCore::XMLTokenizer::endElementNs):
2898         (WebCore::XMLTokenizer::characters):
2899         (WebCore::XMLTokenizer::error):
2900         (WebCore::XMLTokenizer::processingInstruction):
2901         (WebCore::XMLTokenizer::cdataBlock):
2902         (WebCore::XMLTokenizer::comment):
2903         (WebCore::XMLTokenizer::internalSubset):
2904         If the parser has been paused, queue the callbacks instead.
2905
2906         (WebCore::XMLTokenizer::handleError):
2907         New function, called by both ::error and :PendingCallbacks::callAndRemoveFirstCallback
2908         
2909         (WebCore::XMLTokenizer::finish):
2910         (WebCore::XMLTokenizer::pauseParsing):
2911          Set m_parserPaused to true.
2912         
2913         (WebCore::XMLTokenizer::resumeParsing):
2914         Call the pending callbacks and then parse the pending source.
2915         
2916 2006-06-20  David Hyatt  <hyatt@apple.com>
2917
2918         Don't send the custom highlighter callback when painting is disabled.
2919
2920         Reviewed by harrison
2921
2922         * WebCore.xcodeproj/project.pbxproj:
2923         * rendering/InlineTextBox.cpp:
2924         (WebCore::InlineTextBox::paint):
2925
2926 2006-06-20  Anders Carlsson  <acarlsson@apple.com>
2927
2928         Reviewed by John
2929
2930         <rdar://problem/4592244> REGRESSION (417.9.3 - 420+): (some?) plain text files have all lines concatenated into one line
2931         
2932         * loader/TextDocument.cpp:
2933         (WebCore::TextTokenizer::checkBuffer):
2934         (WebCore::TextTokenizer::TextTokenizer):
2935         (WebCore::TextTokenizer::write):        
2936         (WebCore::TextTokenizer::finish):
2937         Add a text buffer which is used for translation of CR and CRLF to plain LF, 
2938         like the HTML tokenizer does.
2939
2940 2006-06-20  Maciej Stachowiak  <mjs@apple.com>
2941
2942         Reviewed by Eric.
2943
2944         - fix crasher on one of the layout tests caused by my recent checkin
2945
2946         * kcanvas/RenderSVGText.cpp:
2947         (WebCore::RenderSVGText::paint):
2948
2949 2006-06-19  Alexey Proskuryakov  <ap@nypop.com>
2950
2951         Reviewed by Darin.
2952
2953         - http://bugzilla.opendarwin.org/show_bug.cgi?id=5499
2954         Page reload does not send any cache control headers
2955
2956         Test: http/tests/misc/refresh-headers.php
2957
2958         * bindings/js/kjs_window.cpp:
2959         (KJS::LocationFunc::callAsFunction): Call scheduleRefresh() for Location::Reload.
2960
2961         * page/Frame.h: Add scheduleRefresh(). Don't derive from TransferJob or implement its methods - that was
2962         used only for storing response HTTP headers, which was an overkill.
2963
2964         * page/FramePrivate.h: Replace TransferJob with a HashMap for storing response headers.
2965
2966         * page/Frame.cpp:
2967         (WebCore::Frame::didOpenURL): Don't needlessly change d->m_cachePolicy. Don't create a TransferJob.
2968         (WebCore::Frame::stopLoading): Directly access the metadata map, instead of going through a TransferJob.
2969         (WebCore::Frame::receivedFirstData): Ditto.
2970         (WebCore::Frame::addMetaData): Ditto.
2971         (WebCore::Frame::scheduleRefresh): A new function that schedules a refresh, similarly to what
2972         scheduleRedirection() does.
2973         (WebCore::Frame::changeLocation): Set request.reload attribute based on the current cache policy.
2974
2975 2006-06-19  Ben Goodger  <bengoodger@gmail.com>
2976
2977         Reviewed by Darin.
2978
2979         http://bugzilla.opendarwin.org/show_bug.cgi?id=9501
2980         Windows build fails with link error CharsetTable not defined
2981
2982         * platform/make-charset-table.pl:
2983         (process_iana_charsets): Move test for equality to alias "None" until after
2984         normalization steps to ensure escape characters in the input data don't
2985         interfere with processing.  Convert nearby tabs to 4 spaces in this function.
2986
2987 2006-06-18  Maciej Stachowiak  <mjs@apple.com>
2988
2989         Reviewed by Darin.
2990
2991         - fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=9488
2992         "Animated GIFs do not respect transforms in SVG"
2993         
2994         http://bugzilla.opendarwin.org/show_bug.cgi?id=6946
2995         "SVG shows invalidation issues in WebKit"
2996         
2997         http://www.treebuilder.de/default.asp?file=441875.xml
2998         "Invalidation issues with "SVG 3d" demo"
2999         
3000         http://code.google.com/webstats/2005-12/pages.html
3001         "SVG text doesn't repaint correctly"
3002
3003         * kcanvas/KCanvasContainer.cpp:
3004         (WebCore::KCanvasContainer::computeAbsoluteRepaintRect): Override base class, and apply
3005         appropriate transforms, so damage rects in transformed SVG content get propagated up properly.
3006         (WebCore::KCanvasContainer::getAbsoluteRepaintRect): note a FIXME; this method
3007         seems wrong.
3008         * kcanvas/KCanvasContainer.h: Prototype new method.
3009
3010         * css/svg.css: Don't apply overflow:hidden to foreignObject, since that makes it a RenderLayer
3011         so it paints twice.
3012         * kcanvas/RenderForeignObject.cpp:
3013         (WebCore::RenderForeignObject::paint): Transform the damage rect before passing it down to HTML content,
3014         so everything paints that is supposed to. Also handle opacity here since we won't get layers.
3015         (WebCore::RenderForeignObject::computeAbsoluteRepaintRect): Override base class, and apply
3016         appropriate transforms, so damage rects in HTML embedded in SVG get propagated up properly.
3017         (WebCore::RenderForeignObject::requiresLayer): Never use a RenderLayer.
3018         (WebCore::RenderForeignObject::layout): Make sure to dirty our previous bounds when layout
3019         changes, as by transform.
3020         * kcanvas/RenderForeignObject.h:
3021
3022         * kcanvas/RenderSVGImage.cpp:
3023         (WebCore::RenderSVGImage::paint): Transform the damage rect when painting. Also handle opacity 
3024         here since we won't get layers.
3025         (WebCore::RenderForeignObject::computeAbsoluteRepaintRect): Override base class, and apply
3026         appropriate transforms, so damage rects in SVG images  get propagated up properly.
3027         (WebCore::RenderSVGImage::translationForAttributes): New helper method, factored out of below.
3028         (WebCore::RenderSVGImage::translateForAttributes): Use above.
3029         (WebCore::RenderSVGImage::requiresLayer): Never use a RenderLayer.
3030         (WebCore::RenderSVGImage::layout): Make sure to properly dirty the old bounds, accounting
3031         for transforms.
3032         (WebCore::RenderSVGImage::relativeBBox): Correct bbox computation.
3033         * kcanvas/RenderSVGImage.h:
3034
3035         * kcanvas/RenderSVGText.cpp:
3036         (WebCore::RenderSVGText::paint): Transform incoming damage rect. Handle opacity here since we
3037         won't get a layer.
3038         (WebCore::RenderSVGText::computeAbsoluteRepaintRect): Apply transforms.
3039         (WebCore::RenderSVGText::requiresLayer): Never use a RenderLayer.
3040         (WebCore::RenderSVGText::layout): Make sure to dirty the old bounds.
3041
3042         * platform/cg/GraphicsContextCG.cpp:
3043         (WebCore::GraphicsContext::roundToDevicePixels): Instead of transforming rect to device space
3044         and back to user space, do this for the origin and lower right corner of the rect. Otherwise the
3045         rect will get inflated if user space is rotated or skewed.
3046
3047         * kcanvas/RenderPath.cpp:
3048         (WebCore::RenderPath::layout): Make sure to dirty the old bounds.
3049         (WebCore::RenderPath::paint): Hhandle opacity here.
3050         
3051         Bonus fix:
3052         
3053         * kcanvas/RenderSVGImage.cpp:
3054         (WebCore::RenderSVGImage::nodeAtPoint): Fix hit testing. Wasn't applying the x/y
3055         attribute transform.
3056
3057 2006-06-19  Sam Weinig  <sam.weinig@gmail.com>
3058
3059         Reviewed by Darin.
3060
3061         - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9500
3062           Split dom2_eventsimpl.* into separate files (one class per file).
3063
3064         * WebCore.xcodeproj/project.pbxproj:
3065         * bindings/js/kjs_binding.cpp:
3066         * bindings/js/kjs_dom.cpp:
3067         * bindings/js/kjs_events.cpp:
3068         * bindings/js/kjs_html.cpp:
3069         * bindings/js/kjs_window.cpp:
3070         * bindings/objc/DOM.mm:
3071         * bindings/objc/DOMEvents.mm:
3072         * bindings/objc/DOMInternal.mm:
3073         * bindings/scripts/CodeGeneratorJS.pm:
3074         * bridge/mac/FrameMac.mm:
3075         * dom/BeforeTextInsertedEvent.h:
3076         * dom/BeforeUnloadEvent.cpp: Added.
3077         * dom/BeforeUnloadEvent.h: Added.
3078         (WebCore::BeforeUnloadEvent::result):
3079         * dom/CharacterData.cpp:
3080         * dom/Clipboard.h: Added.
3081         (WebCore::Clipboard::~Clipboard):
3082         * dom/ClipboardEvent.cpp: Added.
3083         (WebCore::ClipboardEvent::ClipboardEvent):
3084         * dom/ClipboardEvent.h: Added.
3085         (WebCore::ClipboardEvent::clipboard):
3086         * dom/ContainerNode.cpp:
3087         * dom/Document.cpp:
3088         * dom/Event.cpp: Added.
3089         (WebCore::Event::Event):
3090         (WebCore::Event::initEvent):
3091         * dom/Event.h: Added.
3092         (WebCore::):
3093         (WebCore::Event::):
3094         (WebCore::Event::type):
3095         (WebCore::Event::target):
3096         (WebCore::Event::currentTarget):
3097         (WebCore::Event::setCurrentTarget):
3098         (WebCore::Event::eventPhase):
3099         (WebCore::Event::setEventPhase):
3100         (WebCore::Event::bubbles):
3101         (WebCore::Event::cancelable):
3102         (WebCore::Event::timeStamp):
3103         (WebCore::Event::stopPropagation):
3104         (WebCore::Event::propagationStopped):
3105         (WebCore::Event::defaultPrevented):
3106         (WebCore::Event::setDefaultHandled):
3107         (WebCore::Event::defaultHandled):
3108         (WebCore::Event::preventDefault):
3109         (WebCore::Event::setDefaultPrevented):
3110         (WebCore::Event::setCancelBubble):
3111         (WebCore::Event::getCancelBubble):
3112         (WebCore::Event::dispatched):
3113         * dom/EventTargetNode.cpp:
3114         * dom/KeyboardEvent.cpp: Added.
3115         (WebCore::KeyboardEvent::KeyboardEvent):
3116         (WebCore::KeyboardEvent::initKeyboardEvent):
3117         * dom/KeyboardEvent.h: Added.
3118         (WebCore::KeyboardEvent::):
3119         (WebCore::KeyboardEvent::keyIdentifier):
3120         (WebCore::KeyboardEvent::keyLocation):
3121         (WebCore::KeyboardEvent::altGraphKey):
3122         (WebCore::KeyboardEvent::keyEvent):
3123         * dom/MouseEvent.cpp: Added.
3124         (WebCore::MouseEvent::MouseEvent):
3125         (WebCore::MouseEvent::initMouseEvent):
3126         (WebCore::MouseEvent::isDragEvent):
3127         (WebCore::MouseEvent::toElement):
3128         (WebCore::MouseEvent::fromElement):
3129         * dom/MouseEvent.h: Added.
3130         (WebCore::MouseEvent::button):
3131         (WebCore::MouseEvent::relatedTarget):
3132         (WebCore::MouseEvent::clipboard):
3133         * dom/MouseRelatedEvent.cpp: Added.
3134         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
3135         * dom/MouseRelatedEvent.h: Added.
3136         (WebCore::MouseRelatedEvent::screenX):
3137         (WebCore::MouseRelatedEvent::screenY):
3138         (WebCore::MouseRelatedEvent::clientX):
3139         (WebCore::MouseRelatedEvent::clientY):
3140         (WebCore::MouseRelatedEvent::layerX):
3141         (WebCore::MouseRelatedEvent::layerY):
3142         (WebCore::MouseRelatedEvent::offsetX):
3143         (WebCore::MouseRelatedEvent::offsetY):
3144         (WebCore::MouseRelatedEvent::isSimulated):
3145         * dom/MutationEvent.cpp: Added.
3146         (WebCore::MutationEvent::MutationEvent):
3147         (WebCore::MutationEvent::initMutationEvent):
3148         * dom/MutationEvent.h: Added.
3149         (WebCore::MutationEvent::):
3150         (WebCore::MutationEvent::relatedNode):
3151         (WebCore::MutationEvent::prevValue):
3152         (WebCore::MutationEvent::newValue):
3153         (WebCore::MutationEvent::attrName):
3154         (WebCore::MutationEvent::attrChange):
3155         * dom/RegisteredEventListener.cpp: Added.
3156         (WebCore::RegisteredEventListener::RegisteredEventListener):
3157         (WebCore::operator==):
3158         * dom/RegisteredEventListener.h: Added.
3159         (WebCore::RegisteredEventListener::eventType):
3160         (WebCore::RegisteredEventListener::listener):
3161         (WebCore::RegisteredEventListener::useCapture):
3162         (WebCore::RegisteredEventListener::removed):
3163         (WebCore::RegisteredEventListener::setRemoved):
3164         (WebCore::operator!=):
3165         * dom/UIEvent.cpp: Added.
3166         (WebCore::UIEvent::UIEvent):
3167         (WebCore::UIEvent::initUIEvent):
3168         * dom/UIEvent.h: Added.
3169         (WebCore::UIEvent::view):
3170         (WebCore::UIEvent::detail):
3171         * dom/UIEventWithKeyState.h: Added.
3172         (WebCore::UIEventWithKeyState::UIEventWithKeyState):
3173         (WebCore::UIEventWithKeyState::ctrlKey):
3174         (WebCore::UIEventWithKeyState::shiftKey):
3175         (WebCore::UIEventWithKeyState::altKey):
3176         (WebCore::UIEventWithKeyState::metaKey):
3177         * dom/WheelEvent.cpp: Added.
3178         (WebCore::WheelEvent::WheelEvent):
3179         * dom/WheelEvent.h: Added.
3180         (WebCore::WheelEvent::isHorizontal):
3181         (WebCore::WheelEvent::wheelDelta):
3182         * dom/dom2_eventsimpl.cpp: Removed.
3183         * dom/dom2_eventsimpl.h: Removed.
3184         * editing/EditCommand.cpp:
3185         * editing/SelectionController.cpp:
3186         * html/HTMLAnchorElement.cpp:
3187         * html/HTMLButtonElement.cpp:
3188         * html/HTMLDocument.cpp:
3189         * html/HTMLElement.cpp:
3190         * html/HTMLFrameSetElement.cpp:
3191         * html/HTMLInputElement.cpp:
3192         * html/HTMLSelectElement.cpp:
3193         * html/HTMLTextAreaElement.cpp:
3194         * ksvg2/events/SVGZoomEvent.h:
3195         * ksvg2/svg/SVGAElement.cpp:
3196         * page/Frame.cpp:
3197         * page/FrameView.cpp:
3198         * platform/PlatformKeyboardEvent.h:
3199         * platform/PlatformMouseEvent.h:
3200         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3201         * platform/PlatformWheelEvent.h:
3202         * platform/mac/ClipboardMac.h:
3203         * rendering/RenderFrameSet.cpp:
3204         * rendering/RenderLayer.cpp:
3205         * rendering/RenderObject.cpp:
3206         * rendering/RenderTextField.cpp:
3207         * xml/xmlhttprequest.cpp:
3208
3209 2006-06-19  Darin Adler  <darin@apple.com>
3210
3211         Reviewed by Brady.
3212
3213         - removed a few empty/unused files Brady found by tracking down the nm error message
3214
3215         * editing/VisibleRange.cpp: Removed.
3216         * editing/VisibleRange.h: Removed.
3217         * kcanvas/KCanvasImage.cpp: Removed.
3218
3219         * WebCore.vcproj/WebCore/WebCore.vcproj: Removed VisibleRange.cpp/h.
3220         * WebCore.xcodeproj/project.pbxproj: Removed VisibleRange.cpp/h and KCanvasImage.cpp.
3221         * WebCoreSources.bkl: Removed VisibleRange.cpp.
3222
3223 2006-06-19  Alexey Proskuryakov  <ap@nypop.com>
3224
3225         Reviewed by Darin.
3226
3227         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9492
3228         Fix or remove window.debug.
3229
3230         It was only available in newly created windows, and became undefined after changing the URL
3231         or reloading. Let's try removing it; hopefully, no-one will notice.
3232
3233         * bindings/js/kjs_proxy.cpp:
3234         (WebCore::KJSProxy::initScriptIfNeeded): Don't add window.debug.
3235
3236 2006-06-19  Alexey Proskuryakov  <ap@nypop.com>
3237
3238         Reviewed by Darin.
3239
3240         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8972
3241         REGRESSION: invalid UTF-8 sequences are not displayed
3242
3243         Test: LayoutTests/fast/encoding/invalid-UTF-8.html
3244
3245         * dom/xml_tokenizer.cpp:
3246         (WebCore::getXHTMLEntity): Properly null-terminate the result. This didn't matter
3247         before, because the garbage at the end was guaranteed to be invalid UTF-8, and was 
3248         omitted in appendOmittingUnwanted();
3249
3250         * platform/StreamingTextDecoder.cpp:
3251         (WebCore::StreamingTextDecoder::appendOmittingBOM): Only omit BOM characters.
3252         Renamed back from appendOmittingUnwanted();
3253
3254         (WebCore::StreamingTextDecoder::convertUsingICU):
3255         * platform/StreamingTextDecoder.h:
3256         Update for the above function renaming.
3257
3258 2006-06-18  David Kilzer  <ddkilzer@kilzer.net>
3259
3260         Reviewed by darin.
3261
3262         http://bugzilla.opendarwin.org/show_bug.cgi?id=9498
3263         Remove dead code left in JSHTMLDocument::getOwnPropertySlot() from r14298 (Bug 7838)
3264
3265         * bindings/js/kjs_html.cpp:
3266         (KJS::JSHTMLDocument::getOwnPropertySlot): Remove dead code.
3267
3268 2006-06-18  David Kilzer  <ddkilzer@kilzer.net>
3269
3270         Reviewed by ggaren.
3271
3272         * manual-tests/redraw-page-cache-visited-links.html: Changed to use DOM mouse event.
3273
3274 2006-06-18  David Kilzer  <ddkilzer@kilzer.net>
3275
3276         Reviewed by ggaren.
3277
3278         - Update a manual test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9150
3279           DumpRenderTree should be able to keep URL history during runs
3280
3281         * manual-tests/redraw-page-cache-visited-links.html: Added note about window.history hack.
3282         Fixed coordinates for mouse events.  Added call to keepWebHistory().
3283         * manual-tests/resources/redraw-page-cache-visited-links-2.html: Added note about
3284         window.history hack.
3285
3286 2006-06-17  Anders Carlsson  <acarlsson@apple.com>
3287
3288         Reviewed by Geoff.
3289
3290         * bindings/js/kjs_binding.cpp:
3291         (KJS::ScriptInterpreter::ScriptInterpreter):
3292         Set the default script timeout.
3293         
3294         (KJS::ScriptInterpreter::shouldInterruptScript):
3295         New function which asks the frame if the script should be interrupted.
3296         
3297         * bindings/js/kjs_binding.h:
3298                 
3299         * bindings/js/kjs_events.cpp:
3300         (KJS::JSAbstractEventListener::handleEvent):
3301         * bindings/js/kjs_proxy.cpp:
3302         (WebCore::KJSProxy::evaluate):
3303         Add calls to startTimeoutCheck/stopTimeoutCheck
3304         
3305         * bindings/js/kjs_window.cpp:
3306         (KJS::WindowFunc::callAsFunction):
3307         Add calls to pauseTimeoutCheck/unpauseTimeoutCheck 
3308         
3309         (KJS::ScheduledAction::execute):
3310         Add calls to startTimeoutCheck/stopTimeoutCheck
3311         
3312         * bridge/mac/FrameMac.h:
3313         * bridge/mac/FrameMac.mm:
3314         (WebCore::FrameMac::shouldInterruptJavaScript):
3315         New function which asks the bridge if the script should be interrupted.
3316         
3317         * bridge/mac/WebCoreFrameBridge.h:
3318         * page/Frame.h:
3319         Add function declarations.
3320         
3321 2006-06-17  Alexey Proskuryakov  <ap@nypop.com>
3322
3323         Reviewed by ggaren.
3324
3325         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8131
3326         Some properties and methods of window and document objects cannot be converted to a string
3327
3328         Most of the properties were already fixed, this just adds adds a prototype to window.debug.
3329
3330         Test: fast/dom/everything-to-string.html
3331
3332         * bindings/js/kjs_proxy.cpp:
3333         (WebCore::TestFunctionImp::TestFunctionImp): 
3334         (WebCore::KJSProxy::initScriptIfNeeded):
3335
3336 2006-06-17  David Kilzer  <ddkilzer@kilzer.net>
3337
3338         Reviewed by Maciej.
3339
3340         - Fix capitalization issue for case-sensitive filesystems.
3341
3342         * icon/SQLStatement.cpp: Change assertions.h to Assertions.h.
3343
3344 2006-06-17  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3345
3346         Reviewed by Hyatt.
3347
3348         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7395
3349           Table not properly re-flowed when floated div removed from layout
3350
3351         Test: fast/block/float/table-relayout.html
3352
3353         * rendering/RenderBlock.cpp:
3354         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout): Added marking
3355         of children that use lineWidth.
3356         * rendering/RenderBlock.h: Added a FIXME.
3357
3358 2006-06-17  Rob Buis  <buis@kde.org>
3359
3360         Reviewed by Darin.
3361
3362         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6282:
3363         Adding new Option with new Option(text, value, defaultSelected, selected) fails to update selectedIndex
3364
3365         Update selectedIndex when a new option is added using javascript.
3366
3367         * bindings/js/kjs_html.cpp:
3368         (KJS::JSHTMLSelectCollection::put):
3369         * html/HTMLSelectElement.cpp:
3370         (WebCore::HTMLSelectElement::setSelectedIndex):
3371         (WebCore::HTMLSelectElement::setOption):
3372         (WebCore::HTMLSelectElement::setLength):
3373         * html/HTMLSelectElement.h:
3374
3375 2006-06-17  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3376
3377         Reviewed by Darin.
3378
3379         - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9466
3380           Assertion failure when dragging an image from the document into Safari's address bar
3381
3382         * manual-tests/reset-initiatedDrag.html: Added.
3383
3384 2006-06-16  David Kilzer  <ddkilzer@kilzer.net>
3385
3386         Reviewed by darin.
3387
3388         http://bugzilla.opendarwin.org/show_bug.cgi?id=9463
3389         REGRESSION (r14879): Assertion failure in CSSParser::sinkFloatingSelector()
3390         (m_floatingSelectors.contains(selector)) in some CSS tests
3391
3392         * css/CSSGrammar.y: Create CSSSelector for FUNCTION using CSSParser::createFloatingSelector()
3393         instead of the bare constructor.
3394
3395 2006-06-16  David Harrison  <harrison@apple.com>
3396
3397         Reviewed by Hatcher.
3398
3399         <rdar://problem/4565312> Mail has a weird drawing artifact with dotted red lines running across the window
3400
3401         Problem was that revision lost a check to not draw the markers
3402         when paintingDisabled().   This led the markers to be drawn when
3403         the window deactivated, at which time the view happens to be flipped.
3404
3405         It is similar but not the same as the Mail ToDo highlighting
3406         issue, which is due to the custom highlight method
3407         drawing when the focusView is nil.  Mail team knows this
3408         and has tested the fix.
3409
3410         * platform/mac/GraphicsContextMac.mm:
3411         (WebCore::GraphicsContext::drawLineForMisspelling):
3412         Early return if paintingDisabled().
3413
3414 2006-06-16  Adele Peterson  <adele@apple.com>
3415
3416         Reviewed by Hyatt.
3417
3418         Adjust padding of inner div so text lines up with text fields.
3419         Adjust height of textarea so it only leaves room for the horizontal
3420         scrollbar if overflow is set to scroll, or if overflow is set to
3421         auto and there's no word wrap.
3422
3423         These changes will be tested by current layout tests when the
3424         new textarea implementation takes effect.
3425
3426         * rendering/RenderTextField.cpp:
3427         (WebCore::RenderTextField::createDivStyle):
3428         (WebCore::RenderTextField::calcHeight):
3429
3430 2006-06-16  John Sullivan  <sullivan@apple.com>
3431
3432         Reviewed by Darin
3433         
3434         - fixed <rdar://problem/4590062> crash in marker code with particular set of steps on daringfireball.net
3435
3436         * dom/Document.cpp:
3437         (WebCore::Document::addMarker):
3438         Store [it - markers.begin()] in a local variable before modifying markers, since modifying markers can
3439         change value of [it - markers.begin()].
3440
3441 2006-06-16  Adele Peterson  <adele@apple.com>
3442
3443         Reviewed by Alice.
3444
3445         Added code to draw Cocoa-like border for textareas instead of just using CSS.
3446
3447         * WebCore.exp:
3448         * css/html4.css: Sets a 1px solid border.
3449         * platform/mac/WebCoreSystemInterface.h:
3450         * platform/mac/WebCoreSystemInterface.mm:
3451         * rendering/RenderThemeMac.h: Formatting changes.
3452         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintTextArea):
3453         Uses new wkDrawBezeledTextArea to draw border.
3454
3455 2006-06-16  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3456
3457         Reviewed by hyatt.
3458
3459         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9432
3460           REGRESSION: crash in capitalization code due to empty-string generated content
3461
3462         Test: fast/text/capitalize-empty-generated-string.html
3463
3464         * rendering/RenderText.cpp:
3465         (WebCore::RenderText::setText): Skip empty-string text renderers when
3466         looking for the previous character.
3467
3468 2006-06-15  Justin Garcia  <justin.garcia@apple.com>
3469
3470         Reviewed by levi
3471
3472         <http://bugzilla.opendarwin.org/show_bug.cgi?id=8637>
3473         REGRESSION (11-16-05): Selection gaps left behind after delete
3474
3475         * editing/SelectionController.cpp:
3476         (WebCore::SelectionController::nodeWillBeRemoved): Invalidate the selection so that 
3477         selection gaps are invalidated.
3478
3479 2006-06-15  Timothy Hatcher  <timothy@apple.com>
3480
3481         Reviewed by Geoff and Darin.
3482         
3483         Prefer the DWARF debugging symbols format for use in Xcode 2.3.
3484
3485         * WebCore.xcodeproj/project.pbxproj:
3486
3487 2006-06-15  Justin Garcia  <justin.garcia@apple.com>
3488
3489         Reviewed by harrison
3490         
3491         * editing/CompositeEditCommand.cpp:
3492         (WebCore::hasARenderedDescendant):
3493         (WebCore::CompositeEditCommand::prune): Ascend using the DOM
3494         (WebCore::CompositeEditCommand::moveParagraphs): Placeholder insertion
3495         during deletion is fixed, removing the fall back.
3496
3497 2006-06-15  Nicholas Shanks  <contact@nickshanks.com>
3498
3499         Reviewed by Hyatt, landed by Joost de Valk.
3500
3501         Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3233
3502
3503         Add support for the :lang pseudo-class.
3504
3505         * css/CSSGrammar.y:
3506         * css/CSSSelector.cpp:
3507         (WebCore::CSSSelector::operator == ):
3508         * css/CSSSelector.h:
3509         (WebCore::CSSSelector::CSSSelector):
3510         * css/cssparser.cpp:
3511         (WebCore::CSSParser::lex):
3512         * css/cssstyleselector.cpp:
3513         (WebCore::CSSStyleSelector::checkOneSelector):
3514         * css/tokenizer.flex:
3515
3516 2006-06-15  Justin Garcia  <justin.garcia@apple.com>
3517
3518         Reviewed by harrison
3519         
3520         <http://bugzilla.opendarwin.org/show_bug.cgi?id=9456>
3521         REGRESSION (417.9.2-420+): Cmd-G doesn't work in Safari after double-click and Cmd-E
3522         
3523         * page/Frame.cpp:
3524         (WebCore::Frame::findString): When comparing the found range with
3525         what's currently selected a) build a selection with the found
3526         range to remove collapsed whitespace and b) compare ranges 
3527         instead of selection objects to ignore the way that the 
3528         current selection was made (to ignore the base and extent).
3529
3530 2006-06-15  David Kilzer  <ddkilzer@kilzer.net>
3531
3532         Reviewed by mjs.
3533
3534         http://bugzilla.opendarwin.org/show_bug.cgi?id=9382
3535         IDL files missing copyright/license headers
3536
3537         Add Apple BSD license and copyright to IDL files.
3538
3539         * ksvg2/bindings/idl/svg/GetSVGDocument.idl:
3540         * ksvg2/bindings/idl/svg/SVGAElement.idl:
3541         * ksvg2/bindings/idl/svg/SVGAnimateColorElement.idl:
3542         * ksvg2/bindings/idl/svg/SVGAnimateElement.idl:
3543         * ksvg2/bindings/idl/svg/SVGAnimateTransformElement.idl:
3544         * ksvg2/bindings/idl/svg/SVGAnimatedAngle.idl:
3545         * ksvg2/bindings/idl/svg/SVGAnimatedBoolean.idl:
3546         * ksvg2/bindings/idl/svg/SVGAnimatedEnumeration.idl:
3547         * ksvg2/bindings/idl/svg/SVGAnimatedInteger.idl:
3548         * ksvg2/bindings/idl/svg/SVGAnimatedLengthList.idl:
3549         * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl:
3550         * ksvg2/bindings/idl/svg/SVGAnimatedNumberList.idl:
3551         * ksvg2/bindings/idl/svg/SVGAnimatedPathData.idl:
3552         * ksvg2/bindings/idl/svg/SVGAnimatedPoints.idl:
3553         * ksvg2/bindings/idl/svg/SVGAnimatedPreserveAspectRatio.idl:
3554         * ksvg2/bindings/idl/svg/SVGAnimatedRect.idl:
3555         * ksvg2/bindings/idl/svg/SVGAnimatedString.idl:
3556         * ksvg2/bindings/idl/svg/SVGAnimatedTransformList.idl:
3557         * ksvg2/bindings/idl/svg/SVGAnimationElement.idl:
3558         * ksvg2/bindings/idl/svg/SVGCircleElement.idl:
3559         * ksvg2/bindings/idl/svg/SVGClipPathElement.idl:
3560         * ksvg2/bindings/idl/svg/SVGComponentTransferFunctionElement.idl:
3561         * ksvg2/bindings/idl/svg/SVGCursorElement.idl:
3562         * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl:
3563         * ksvg2/bindings/idl/svg/SVGDefsElement.idl:
3564         * ksvg2/bindings/idl/svg/SVGDescElement.idl:
3565         * ksvg2/bindings/idl/svg/SVGElementInstance.idl:
3566         * ksvg2/bindings/idl/svg/SVGElementInstanceList.idl:
3567         * ksvg2/bindings/idl/svg/SVGEllipseElement.idl: