3dafb019d08a32ea8d5b73c0bb84234b36c384af
[WebKit-https.git] / WebCore / ChangeLog
1 2006-07-12  Levi Weintraub  <lweintraub@apple.com>
2
3         Reviewed by justin
4
5         <rdar://problem/4622763> Deleting from beginning of paragraph following a table deletes rather than selects the table
6
7         * editing/DeleteSelectionCommand.cpp:
8         (WebCore::DeleteSelectionCommand::initializeStartEnd): Added selection expansion for HRs.
9         (WebCore::DeleteSelectionCommand::initializePositionData): Now uses enclosingBlockFlowOrTableElement
10         instead of enclosingBlockFlowElement.
11         (WebCore::DeleteSelectionCommand::removeNode): Use to identify that we need a placeholder
12         when the start or end block is removed.
13         (WebCore::DeleteSelectionCommand::handleGeneralDelete): Added check for canHaveChildrenForEditing
14         to keep things like HRs from being given children.
15         (WebCore::DeleteSelectionCommand::doApply): Switched to use member variable for needPlaceholder.
16         * editing/DeleteSelectionCommand.h: Made needPlaceholder a member variable.
17         * editing/TypingCommand.cpp:
18         (WebCore::TypingCommand::deleteKeyPressed): Fixed selection bug for tables and open typing commands.
19         (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
20         * editing/htmlediting.cpp:
21         (WebCore::editingIgnoresContent): Added check for HRs, since it's not considered a widget.
22         * editing/visible_units.cpp:
23         (WebCore::startOfParagraph): Fix for HRs and tables.
24         (WebCore::endOfParagraph): Ditto.
25
26 2006-07-13  Alexey Proskuryakov  <ap@nypop.com>
27
28         Reviewed by Darin.
29
30         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9880
31           Memory leaks running DOM-Hanoi
32
33         No change in behavior, thus no test included.
34
35         * bridge/mac/FrameMac.mm:
36         (WebCore::FrameMac::setStatusBarText): Use a local autorelease pool to release the temporaries - 
37         the test runs non-stop, and the enclosing pool doesn't get a chance to be drained.
38
39 2006-07-12  Mitz Pettel  <opendarwin.org@mitzpettel.com>
40
41         Reviewed by Adele.
42
43         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9862
44           REGRESSION: GMail: Crash in RenderView::repaintViewRectangle when spoofing as FF
45         - see also <rdar://problem/4622407>
46
47         Test: fast/frames/repaint-display-none-crash.html
48
49         * rendering/RenderView.cpp:
50         (WebCore::RenderView::repaintViewRectangle): Added null checking of the owner element's
51         renderer, which can be null if the iframe is set to display:none.
52
53 2006-07-12  Justin Garcia  <justin.garcia@apple.com>
54
55         Reviewed by levi
56         
57         <rdar://problem/4509393>
58         selected DOM range starts with <object>, 0 offset but selection should include the <object>
59
60         * editing/ReplaceSelectionCommand.cpp:
61         (WebCore::ReplaceSelectionCommand::shouldMergeStart): 
62         Don't pull content out of a table cell.
63         * editing/htmlediting.cpp:
64         (WebCore::editingIgnoresContent): Added <select> nodes.
65         (WebCore::rangeCompliantEquivalent): Convert [node, 0] positions to positionBeforeNode(node)
66         for more types of nodes.
67         * rendering/RenderContainer.cpp:
68         (WebCore::RenderContainer::positionForCoordinates): 
69         Fix a crasher when right clicking on an anonymous table.
70
71 2006-07-12  John Sullivan  <sullivan@apple.com>
72
73         Reviewed by Brady Eidson
74         
75         - fixed <rdar://problem/4611164> REGRESSION: Crash occurs when undoing a series of 
76         misspelled words (WebCore::RenderObject::repaint(bool)
77
78         * dom/Document.cpp:
79         (WebCore::Document::removeMarkers):
80         put (it - markers.begin()) in a local variable before altering markers, in every case where this was
81         happening. One of the cases like this was fixed a while back, but other cases were
82         either missed at that time or crept in since. 
83
84 2006-07-13  Anders Carlsson  <acarlsson@apple.com>
85
86         Reviewed by Justin.
87
88         http://bugzilla.opendarwin.org/show_bug.cgi?id=9663
89         REGRESSION (r14948-r14956): Selection in text field remains highlighted when the text field loses focus
90         
91         * dom/Document.cpp:
92         (WebCore::Document::updateSelection):
93         Don't return early if the selection is empty.
94
95 2006-07-12  Anders Carlsson  <acarlsson@apple.com>
96
97         Reviewed by Adele.
98
99         <rdar://problem/4614656> REGRESSION: onpaste() handlers don't run for textarea elements
100         
101         * bridge/mac/FrameMac.mm:
102         (WebCore::FrameMac::dispatchCPPEvent):
103         If the element is a shadow node, dispatch the event to its real parent.
104
105         * manual-tests/textarea-onpaste.html: Added.
106
107 2006-07-12  Beth Dakin  <bdakin@apple.com>
108
109         Reviewed by Anders.
110
111         Fix for layout test regressions after my check-in last night. Just 
112         a silly mistake where I should have asked if we were NOT printing 
113         instead of if we were in the listbox code.
114
115         * WebCore.xcodeproj/project.pbxproj: Project file wars. Back to 
116         XCode 2.3
117         * platform/mac/ListBoxMac.mm:
118         (itemTextRenderer): Inverted check.
119         (groupLabelTextRenderer): Inverted check.
120
121 2006-07-12  Darin Adler  <darin@apple.com>
122
123         Reviewed by Maciej.
124
125         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9806
126           <rdar://problem/4622622>
127           REGRESSION: Large rowspan causes WebKit to call abort()
128
129         Test: fast/table/large-rowspan-crash.html
130
131         * rendering/RenderTableSection.cpp:
132         (WebCore::RenderTableSection::ensureRows):
133         Use sizeof(RowStruct) instead of sizeof(int).
134         Clearly we'll need something better to solve this completely.
135         I expect another smaller, but still huge, value will still cause a problem.
136
137 2006-07-12  Anders Carlsson  <acarlsson@apple.com>
138
139         Reviewed by Maciej.
140
141         <rdar://problem/4586665> REGRESSION: autorestore.apple.com: Crashes Safari in WebCore::Widget::client() const
142
143         * bridge/mac/FrameMac.h:
144         Add focusCallResultedInViewBeingCreated argument. 
145         
146         * bridge/mac/FrameMac.mm:
147         (WebCore::FrameMac::nextKeyViewInFrame):
148         If the call to focus() caused the node to get a native widget, set focusCallResultedInViewBeingCreated to true.
149         
150         (WebCore::FrameMac::nextKeyViewInFrameHierarchy):
151         Don't reset the focus node if focusCallResultedInViewBeingCreated is true. Also, add magic to prevent setting
152         a text field as the first responder if its field editor already is the current first responder.
153         
154         * page/FrameView.cpp:
155         (WebCore::FrameView::handleMousePressEvent):
156         In some cases, get the event target node again after dispatching the mouse event.
157
158 2006-07-12  Beth Dakin  <bdakin@apple.com>
159
160         Reviewed by Adele.
161
162         Fix for <rdar://problem/4615765> Input[type='search' fields 
163         initially render too large in Widgets
164
165         Fundamentally, the problem here is that we were miscalculating 
166         things because [NSGraphicsContext currentContextDrawingToScreen] 
167         was evaluating to false when widgets first load. We only ever used 
168         this check, however, to determine if we were printing or not, so it 
169         should not have evaluated to false for loading in Dashbaord. 
170         Instead, if we query the RenderView about whether or not we are 
171         printing, we will get the right answer.
172
173         No test case added since this appears only to affect Dashboard.
174
175         * bridge/mac/WebCoreFrameBridge.mm:
176         (-[WebCoreFrameBridge drawRect:]): Ask the RenderView if we are 
177         printing instead. This is not part of the actual bug fix, but it 
178         seems wise to get rid of all calls to [NSGraphicsContext 
179         currentContextDrawingToScreen] when we are just trying to determine 
180         if we are printing or not.
181         * platform/mac/ListBoxMac.mm:
182         (itemTextRenderer):This function now takes a boolean, isPrinting.
183         (groupLabelTextRenderer): Same as above.
184         (ListBox::sizeForNumberOfLines): Ask the RenderView if we are 
185         printing.
186         (-[WebCoreTableView drawRow:clipRect:]): Same as above.
187         * platform/mac/PopUpButtonMac.mm:
188         (PopUpButton::sizeHint): Same as above.
189         * platform/mac/TextFieldMac.mm:
190         (-[NSSearchFieldCell _addStringToRecentSearches:]):
191         * rendering/RenderLineEdit.cpp: Same as above.
192
193 2006-07-12  Adele Peterson  <adele@apple.com>
194
195         Reviewed by Maciej.
196
197         Fix for: http://bugzilla.opendarwin.org/show_bug.cgi?id=9813
198         OPTION text can paint over select element's scrollbar
199
200         Test: fast/forms/option-text-clip.html
201
202         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::paintObject):
203         When calculating the clip to apply to the button text, also consider padding.
204         In the future, we may have separate renderers for the text part, and the arrow part
205         of the control, and then the separation should be natural.  For now, we use padding.
206
207 2006-07-11  David Kilzer  <ddkilzer@kilzer.net>
208
209         Windows build fix.  Reviewed by NOBODY.
210
211         * WebCore.vcproj/WebCore/WebCore.vcproj:  Added JSHTMLOptionsCollection.cpp/h
212         and JSHTMLOptionsCollectionCuston.cpp.  VC++ Express realphabetized the file list.
213
214 2006-07-11  Darin Adler  <darin@apple.com>
215
216         Reviewed by Adele.
217
218         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9809
219           <rdar://problem/4619515>
220           focus ring fails to appear on select element after choosing item from popup
221
222         - includes http://bugzilla.opendarwin.org/show_bug.cgi?id=9853
223           improvements to select element, including some storage leak fixes
224
225         * html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::index): Use a const
226         reference for the list items, so we don't have to copy a vector.
227         * html/HTMLSelectElement.cpp:
228         (WebCore::HTMLSelectElement::selectedIndex): Ditto.
229         (WebCore::HTMLSelectElement::setSelectedIndex): Ditto.
230         (WebCore::HTMLSelectElement::length): Ditto.
231         (WebCore::HTMLSelectElement::remove): Ditto.
232         (WebCore::HTMLSelectElement::value): Ditto.
233         (WebCore::HTMLSelectElement::setValue): Ditto.
234         (WebCore::HTMLSelectElement::stateValue): Ditto.
235         (WebCore::HTMLSelectElement::restoreState): Ditto.
236         (WebCore::HTMLSelectElement::appendFormData): Ditto.
237         (WebCore::HTMLSelectElement::optionToListIndex): Ditto.
238         (WebCore::HTMLSelectElement::listToOptionIndex): Ditto.
239         (WebCore::HTMLSelectElement::recalcListItems): Made const, with the appropriate
240         fields mutable.
241         (WebCore::HTMLSelectElement::reset): Use a const reference for
242         the list items, so we don't have to copy the vector. Remove the call to
243         setSelectionChanged for the RenderMenuList case.
244         (WebCore::HTMLSelectElement::notifyOptionSelected): Ditto, on both counts.
245         (WebCore::HTMLSelectElement::defaultEventHandler): Call focus() before showing
246         the pop-up.
247         * html/HTMLSelectElement.h: The RenderMenuList class is no longer a friend.
248         Changed the listItems function to return a const reference to the vector so
249         it no longer copies the vector. Removed the const_cast to the call to
250         recalcListItems and changed it to a const member function. Made m_recalcListItems
251         mutable.
252         * rendering/DeprecatedRenderSelect.cpp:
253         (WebCore::DeprecatedRenderSelect::updateFromElement): Removed an unnecessary call
254         to recalcListItems, which is called automatically. Use a const reference for the
255         list items so we don't have to copy a vector.
256         (WebCore::DeprecatedRenderSelect::layout): Ditto.
257         (WebCore::DeprecatedRenderSelect::selectionChanged): Ditto.
258         (WebCore::DeprecatedRenderSelect::updateSelection): Ditto.
259         * rendering/RenderMenuList.cpp:
260         (WebCore::RenderMenuList::RenderMenuList): Updated for renamed data members.
261         (WebCore::RenderMenuList::createInnerBlock): Ditto.
262         (WebCore::RenderMenuList::addChild): Ditto.
263         (WebCore::RenderMenuList::removeChild): Ditto.
264         (WebCore::RenderMenuList::setStyle): Ditto. Also removed code to set the style
265         on the pop-up menu, because it's created with the correct style and destroyed
266         before it a style change could occur.
267         (WebCore::RenderMenuList::updateFromElement): Rearranged code to compute the
268         maximum width in a simpler fashion, and to not bother trying to maintain
269         the "selected" flags on the elements, since the HTMLSelectElement class
270         takes care of that. Store the width as an int. Call setText to set the text
271         based on the selected element's option text.
272         (WebCore::RenderMenuList::paintObject): Don't check m_inner when setting
273         up the clip -- always set up the clip.
274         (WebCore::RenderMenuList::calcMinMaxWidth): Use m_optionsWidth directly
275         instead of calling ceilf on m_longestWidth.
276         (WebCore::RenderMenuList::showPopup): Don't use m_popupMenu to store the
277         menu -- instead keep the pointer in a local variable. Get the selected
278         index from the HTMLSelectElement.
279         (WebCore::RenderMenuList::valueChanged): Call HTMLSelectElement::setSelectedIndex
280         to do most of the work.
281         * rendering/RenderMenuList.h: Renamed m_inner to m_innerBlock. Removed
282         m_popupMenu, m_size, m_selectionChanged, and m_selectedIndex. Renamed
283         m_longestWidth to m_optionsWidth and changed it to be an int. Removed
284         unneeded override of removeLeftoverAnonymousBoxes function. Removed
285         unneeded selectionChanged, setSelectionChanged, updateSelection, and
286         hasPopupMenu functions. Removed extra includes.
287         * rendering/RenderPopupMenu.cpp: (WebCore::RenderPopupMenu::populate):
288         Change to iterate the list items instead of iterating all children
289         of the select node.
290         * rendering/RenderPopupMenu.h: Renamed getRenderMenuList to menuList.
291         * rendering/RenderPopupMenuMac.mm:
292         (WebCore::RenderPopupMenuMac::populate): Moved code to clear and create
293         the pop-up here from the caller. Removed an extra retain that would cause
294         the NSPopUpButtonCell to leak.
295         (WebCore::RenderPopupMenuMac::showPopup): Removed unnecessary code to
296         create the pop-up, which is now in populate, and also the call to the
297         clear function, for the same reason. Reorganized code to make it a bit
298         more readable. Removed an unnecessary if to check if frame is nil.
299         Used a RefPtr to make sure we don't make a call on a frame after it's
300         deleted. As part of the reorganization fixed a problem where we'd retain
301         the event and then return early without releasing it in one case.
302         (WebCore::RenderPopupMenuMac::addSeparator): Tweaked a little.
303         (WebCore::RenderPopupMenuMac::addGroupLabel): Grouped all the code to
304         manage the NSMenu at the bottom of the function.
305         (WebCore::RenderPopupMenuMac::addOption): Ditto.
306
307 2006-07-11  Justin Garcia  <justin.garcia@apple.com>
308
309         Reviewed by levi
310         
311         <rdar://problem/4620686>
312         REGRESSION: Mispelling markers are still displayed when using the delete key to place caret into a misspelled word
313
314         * bridge/mac/FrameMac.mm:
315         (WebCore::FrameMac::respondToChangedSelection): Remove markers from newAdjacentWords 
316         even if oldAdjacentWords is equal to newAdjacentWords.  This happens during a deletion.
317         
318
319 2006-07-11  Tim Omernick  <timo@apple.com>
320
321         Reviewed by NOBODY (build fix)
322
323         * bindings/objc/DOMPrivate.h:
324         Don't @class NPObject; that breaks files that actually #import <JavaScriptCore/npruntime.h>, since the NPObject
325         there is of a different type.
326         Also clarified a highly misleading comment from my last commit.  I meant to clarify the comment
327         before landing.
328
329 2006-07-12  Anders Carlsson  <acarlsson@apple.com>
330
331         Reviewed by Geoff.
332
333         http://bugzilla.opendarwin.org/show_bug.cgi?id=9635
334         REGRESSION: Crash when adding to cart at <http://www.yemeksepeti.com/>
335         
336         * html/HTMLTokenizer.cpp:
337         (WebCore::HTMLTokenizer::scriptHandler):
338         Don't load external scripts if the parser is stopped.
339         
340         * manual-tests/open-close-tokenizer-crash.html: Added.
341         * manual-tests/resources/empty-file.js: Added.
342         * manual-tests/resources/open-close-tokenizer-crash.html: Added.
343         Add manual test.
344
345 2006-07-11  John Sullivan  <sullivan@apple.com>
346
347         Reviewed by Kevin, Timo O, Brady, Darin, and Hyatt (whee!)
348
349         - added support for creating a selection image with white text
350
351         * rendering/RenderObject.h:
352         (WebCore::):
353         add PaintRestriction enum
354         (WebCore::RenderObject::PaintInfo::PaintInfo):
355         add forceWhiteText boolean to PaintInfo struct
356
357         * page/FramePrivate.h:
358         (WebCore::FramePrivate::FramePrivate):
359         replaced m_selectionOnly bool with m_paintRestriction, which also handles forcing the
360         text to white
361
362         * page/Frame.cpp:
363         (WebCore::Frame::paint):
364         updated to use & pass m_paintRestriction where it used to use & pass just m_selectionOnly
365
366         * bridge/mac/FrameMac.h:
367         * bridge/mac/FrameMac.mm:
368         (WebCore::FrameMac::selectionImage):
369         now takes forceWhiteText parameter, stored in FramePrivate as part of PaintRestriction
370
371         * bridge/mac/WebCoreFrameBridge.h:
372         * bridge/mac/WebCoreFrameBridge.mm:
373         (-[WebCoreFrameBridge selectionImageForcingWhiteText:]):
374         renamed from selectionImage, now takes forceWhiteText parameter, which is passed
375         down into Frame
376
377         * rendering/RenderLayer.h:
378         * rendering/RenderLayer.cpp:
379         (WebCore::RenderLayer::paint):
380         use a PaintRestriction value where we used to use a selectionOnly bool
381         (WebCore::RenderLayer::paintLayer):
382         ditto; also stores forceWhiteText in PaintInfo struct
383
384         * kcanvas/KCanvasResources.cpp:
385         (WebCore::KCanvasMarker::draw):
386         updated for changed signature of PaintInfo constructor
387
388         * ksvg2/svg/SVGMaskElement.cpp:
389         (WebCore::SVGMaskElement::drawMaskerContent):
390         ditto
391
392         * ksvg2/svg/SVGPatternElement.cpp:
393         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
394         ditto
395
396         * rendering/InlineTextBox.cpp:
397         (WebCore::InlineTextBox::paint):
398         paint with white text color if forceWhiteText is set in PaintInfo struct
399
400 2006-07-11  Tim Omernick  <timo@apple.com>
401
402         Reviewed by Anders.
403
404         <http://bugzilla.opendarwin.org/show_bug.cgi?id=9843>:
405         Give Netscape plug-ins access to their own DOM element
406
407         * html/HTMLPlugInElement.h:
408         Just import JSC headers on Mac.  The NPObject and Bindings::Instance stuff is only used on Mac anyway.
409         Changed __APPLE__ to PLATFORM(MAC).
410         Added m_NPObject ivar.
411         * html/HTMLPlugInElement.cpp:
412         (WebCore::HTMLPlugInElement::HTMLPlugInElement):
413         Initialize the NPObject.
414         (WebCore::HTMLPlugInElement::~HTMLPlugInElement):
415         Release the NPObject when the element is destroyed.
416         (WebCore::HTMLPlugInElement::createNPObject):
417         Creates an NPObject for the element.
418         (WebCore::HTMLPlugInElement::getNPObject):
419         Returns the NPObject for the element, creating and caching it if necessary.
420
421         * html/HTMLAppletElement.h:
422         Changed __APPLE__ to PLATFORM(MAC).
423         * html/HTMLAppletElement.cpp:
424         ditto
425         * html/HTMLEmbedElement.h:
426         ditto
427         * html/HTMLEmbedElement.cpp:
428         ditto
429         * html/HTMLObjectElement.h:
430         ditto
431         * html/HTMLObjectElement.cpp:
432         ditto
433
434         * bindings/objc/DOMPrivate.h:
435         Added -[DOMElement _NPObject].
436
437         * bindings/objc/DOM.mm:
438         (-[DOMElement _NPObject]):
439         Returns the NPObject for the element.  Since this is only needed by the Netscape plug-in API, you can only get 
440         the NPObject for applet, embed, and object elements.
441         
442 2006-07-11  Adele Peterson  <adele@apple.com>
443
444         Reviewed by Hyatt.
445
446         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9861
447         REGRESSION: Can't dynamically change list box to popup
448         
449         and updated fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9859
450         REGRESSION: Can't dynamically change popup to list box
451
452         The original fix for 9859 was in the renderer, and I think we can catch the change
453         earlier in the element to detach and reattach.
454
455         I also did some cleanup to remove the PopupButton code path from DeprecatedRenderSelect
456
457         Test: fast/forms/select-change-listbox-to-popup.html
458
459         * html/HTMLSelectElement.cpp:
460         (WebCore::HTMLSelectElement::parseMappedAttribute): If the new attribute value is going to require us to change from listbox to popup or vice versa,
461         and we're already attached, then detach and reattach to create the correct renderer.  If we're not attached, then we'll create the correct renderer
462         when we attach.
463         (WebCore::HTMLSelectElement::recalcStyle): Updated shouldUseMenuList since it no longer takes a RenderStyle.
464         (WebCore::HTMLSelectElement::isKeyboardFocusable): ditto.
465         (WebCore::HTMLSelectElement::isMouseFocusable): ditto.
466         (WebCore::HTMLSelectElement::createRenderer): ditto.
467         (WebCore::HTMLSelectElement::setRecalcListItems): ditto.
468         (WebCore::HTMLSelectElement::reset): ditto.
469         (WebCore::HTMLSelectElement::notifyOptionSelected): ditto.
470         (WebCore::HTMLSelectElement::defaultEventHandler): ditto.
471
472         * html/HTMLSelectElement.h: (WebCore::HTMLSelectElement::shouldUseMenuList):
473         This method no longer takes a RenderStyle.  That was leftover from when we used to use the appearance
474         to determine whether or not to use the new menu list implementation.
475
476         * rendering/DeprecatedRenderSelect.h: Removed PopupButton code path.
477         * rendering/DeprecatedRenderSelect.cpp:
478         (WebCore::DeprecatedRenderSelect::DeprecatedRenderSelect):
479         (WebCore::DeprecatedRenderSelect::setWidgetWritingDirection):
480         (WebCore::DeprecatedRenderSelect::updateFromElement):
481         (WebCore::DeprecatedRenderSelect::baselinePosition):
482         (WebCore::DeprecatedRenderSelect::layout):
483         (WebCore::DeprecatedRenderSelect::updateSelection):
484
485         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::updateFromElement):
486         Backed out previous fix since this is now done in HTMLSelectElement.
487
488 2006-07-11  Adele Peterson  <adele@apple.com>
489
490         Reviewed by Hyatt.
491
492         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9859
493         REGRESSION: Can't dynamically change popup to list box
494
495         Test: fast/forms/select-change-popup-to-listbox.html
496
497         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::updateFromElement):
498         If the select element has the multiple property set, or has a size > 1, then it
499         really should be a list box, so we detach and attach the element so it creates the
500         correct type of renderer.
501
502 2006-07-11  John Sullivan  <sullivan@apple.com>
503
504         Reviewed by Beth Dakin and Tim Omernick
505
506         - fixed <rdar://problem/4622794> HiDPI: dragging the selection in Safari can show pixel cracks 
507         at non-integral scale factors
508
509         * bridge/mac/FrameMac.mm:
510         (WebCore::FrameMac::imageFromRect):
511         round image rect in window coordinate space
512
513 2006-07-10  Darin Adler  <darin@apple.com>
514
515         Reviewed by Geoff.
516
517         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9811
518           rdar://problem/4619572
519           OPTION text contained in OPTGROUP appears at the wrong size
520
521         * dom/Node.h:
522         * dom/Node.cpp: (WebCore::Node::renderStyle): Made a const member function.
523         The derived classes were overriding with const member functions, and I could
524         change either this or the derived -- decided to do this.
525
526 2006-07-10  Darin Adler  <darin@apple.com>
527
528         Reviewed by Geoff.
529
530         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9810
531           rdar://problem/4619534
532           OPTGROUP label text is using the default font instead of Lucida Grande
533
534         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::setFontFromControlSize):
535         Code wants the family name, but was calling fontName, which is not the same thing.
536         Also removed the unneeded conversion to DeprecatedString.
537
538 === Safari-521.16 ===
539
540 2006-07-10  David Kilzer  <ddkilzer@kilzer.net>
541
542         Reviewed by Darin.
543
544         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9179
545           Implement select.options.add() method
546
547         Tests:
548         - fast/dom/select-selectedIndex-multiple.html
549         - fast/dom/select-selectedIndex.html
550         - fast/js/select-options-add.html
551
552         * DerivedSources.make: Added JSHTMLOptionsCollection.h.
553         * ForwardingHeaders/kjs/operations.h: Added.
554         * WebCore.xcodeproj/project.pbxproj: Added new source files.
555         * bindings/js/JSHTMLOptionsCollectionCustom.cpp: Added.
556         (WebCore::JSHTMLOptionsCollection::length):
557         (WebCore::JSHTMLOptionsCollection::setLength):
558         (WebCore::JSHTMLOptionsCollection::indexSetter):
559         * bindings/js/kjs_html.cpp: Removed JSHTMLOptionsCollection implementation.
560         Renamed classes and methods for consistency.
561         (KJS::JSHTMLElement::selectGetter):
562         (KJS::JSHTMLElement::put):
563         (KJS::JSHTMLElement::selectSetter):
564         (KJS::JSHTMLCollection::JSHTMLCollection):
565         (KJS::JSHTMLCollectionProtoFunc::callAsFunction):
566         (KJS::getHTMLOptionsCollection):
567         * bindings/js/kjs_html.h: Ditto.
568         * bindings/scripts/CodeGeneratorJS.pm: Added support for HasCustomIndexSetter class attribute.
569         Added support for Optional parameter attribute, which makes generated code assume overloaded
570         implementation methods are available for a JavaScript function with optional arguments.  Changed
571         local 'impl' variables to 'imp' so that impl() methods could be called without class designation.
572         * html/HTMLOptionElement.idl: Added GenerateNativeConverter attribute.
573         * html/HTMLOptionsCollection.cpp: Added methods used by generated JSHTMLOptionsCollection class.
574         (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
575         (WebCore::HTMLOptionsCollection::add):
576         (WebCore::HTMLOptionsCollection::selectedIndex):
577         (WebCore::HTMLOptionsCollection::setSelectedIndex):
578         (WebCore::HTMLOptionsCollection::setLength):
579         * html/HTMLOptionsCollection.h: Ditto.
580         * html/HTMLOptionsCollection.idl: Added.
581
582 2006-07-10  David Harrison  <harrison@apple.com>
583
584         Reviewed by Dave Hyatt.
585
586         <rdar://problem/4602408> -webkit-highlight needs to support images and elements other than text
587
588         * rendering/RenderBox.cpp:
589         (WebCore::RenderBox::paintCustomHighlight):
590         * rendering/RenderBox.h:
591         Utility for subclasses.
592         
593         * rendering/RenderImage.cpp:
594         (WebCore::RenderImage::paint):
595         Custom highlight in front of images.
596         
597         * rendering/RenderListMarker.cpp:
598         (WebCore::RenderListMarker::paint):
599         Custom highlight in front of list markers.
600
601         * rendering/RenderWidget.cpp:
602         (WebCore::RenderWidget::paint):
603         Custom highlight in front of objects.
604
605 2006-07-10  David Hyatt  <hyatt@apple.com>
606
607         <rdar://problem/4620557> REGRESSION: In a mail message, text isn't painted
608         correctly after choosing Redo Typing
609
610         Better fix for repainting issue with positioned objects when height
611         changes.  Optimize when only a positioned child changes so that we don't
612         incorrectly do normal flow layout.
613
614         Reviewed by darin
615
616         * WebCore.xcodeproj/project.pbxproj:
617         * rendering/RenderBlock.cpp:
618         (WebCore::RenderBlock::layoutBlock):
619         * rendering/RenderFlexibleBox.cpp:
620         (WebCore::RenderFlexibleBox::layoutBlock):
621         * rendering/RenderTable.cpp:
622         (WebCore::RenderTable::layout):
623         * rendering/RenderView.cpp:
624         (WebCore::RenderView::layout):
625         * rendering/bidi.cpp:
626         (WebCore::RenderBlock::layoutInlineChildren):
627
628 2006-07-10  Adele Peterson  <adele@apple.com>
629
630         Reviewed by Beth.
631
632         - Fix for <rdar://problem/4621442> REGRESSION (NativePopup) : Popup menus aren't drawn correctly on page at orbitz.com; cheaptickets.com
633
634         Test: fast/forms/select-style.html
635
636         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::isControlStyled):
637         Don't let popups be style-able for now.  We'll allow it later, when we
638         have a good way to handle border & backgrounds and still having it look like a control.
639
640 2006-07-10  Justin Garcia  <justin.garcia@apple.com>
641
642         Reviewed by harrison
643         
644         <rdar://problem/4619260>
645         9A213 + Safari 521.15.1 Crash with To Do's alarm icon (WebCore::maxDeepOffset(WebCore::Node const*) )
646         <rdar://problem/4619841>
647         REGRESSION: Dragging selection over input field results in a crash (WebCore::maxDeepOffset(WebCore::Node const*)
648
649         * WebCore.xcodeproj/project.pbxproj:
650         * editing/Selection.cpp:
651         (WebCore::Selection::adjustForEditableContent): Iterate using next/previousVisuallyDistinctCandidate 
652         instead of traverseNext/Previous node because we were skipping positions.  Jump out of shadow trees.  
653         Migrate to isEditablePosition instead of isContentEditable.
654         
655
656 2006-07-10  Beth Dakin  <bdakin@apple.com>
657
658         Reviewed by Adele.
659
660         Shuffling comments around from my last check-in to make things read 
661         more clearly.
662
663         * page/DOMWindow.h:
664         * page/DOMWindow.idl:
665
666 2006-07-10  Beth Dakin  <bdakin@apple.com>
667
668         Reviewed by Darin.
669
670         Fix for <rdar://problem/4621095> The should be a way to 
671         access the user interface scale factor through the DOM
672
673         window.devicePixelRatio returns the user interface scale factor.
674
675         * page/DOMWindow.cpp:
676         (WebCore::DOMWindow::devicePixelRatio):
677         * page/DOMWindow.h:
678         * page/DOMWindow.idl:
679
680 2006-07-10  Brady Eidson  <beidson@apple.com>
681
682         Reviewed by Alexey
683
684         Resolved the console error messages people got from the new DB even if they didn't have it enabled
685
686         * icon/IconDatabase.cpp:
687         (WebCore::IconDatabase::pruneUnreferencedIcons):
688         (WebCore::IconDatabase::pruneUnretainedIcons):
689         Added quick check to bail if the DB isn't open
690
691 2006-07-10  David Harrison  <harrison@apple.com>
692
693         Reviewed by Tim Hatcher
694
695         Partial fix for...
696         <rdar://problem/4619260> 9A213 + Safari 521.15.1 Crash with To Do's alarm icon (WebCore::maxDeepOffset(WebCore::Node const*) )
697         
698         * editing/Selection.cpp:
699         (WebCore::Selection::adjustForEditableContent):
700         Allow for node being 0.  This is a bandaid fix to prevent the crash.  It will still assert in a debug build.  See bug for more info.
701
702 2006-07-10  Mitz Pettel  <opendarwin.org@mitzpettel.com>
703
704         Reviewed by Darin.
705
706         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9808
707           REGRESSION: Incorrect layout (and ERROR) when forcing ATSU For All Text
708
709         * manual-tests/ATSU-bad-layout.html: Added.
710         * platform/mac/FontMac.mm:
711         (WebCore::Font::floatWidthForComplexText): Return 0 immediately for empty runs.
712
713 2006-07-10  Darin Adler  <darin@apple.com>
714
715         - try to fix the no-SVG build
716
717         * ksvg2/misc/SVGImageLoader.cpp: Move namespace brace inside the #if.
718
719 2006-07-10  Darin Adler  <darin@apple.com>
720
721         Reviewed by Anders.
722
723         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9833
724           REGRESSION: Reproducible crash: RenderMenuList.cpp:58: failed assertion `!m_first'
725
726         * manual-tests/empty-title-popup.html: Added.
727
728         * rendering/RenderMenuList.h: Add createInnerBlock.
729         * rendering/RenderMenuList.cpp:
730         (WebCore::RenderMenuList::createInnerBlock): Factored out of addChild.
731         (WebCore::RenderMenuList::addChild): Call createInnerBlock.
732         (WebCore::RenderMenuList::setText): Changed parameter type.
733         (WebCore::RenderMenuList::showPopup): Call createInnerBlock before calling
734         the parent class's addChild.
735
736 2006-07-10  Rob Buis  <buis@kde.org>
737
738         Reviewed by Maciej via IRC.
739
740         Make sure the attributes are calculated against viewport width value,
741         as defined in the spec.  http://paste.lisp.org/display/22342
742
743         * ksvg2/svg/SVGEllipseElement.cpp:
744         (WebCore::SVGEllipseElement::rx): Changed LM_HEIGHT to LM_WIDTH.
745         * ksvg2/svg/SVGLineElement.cpp:
746         (SVGLineElement::x2): Ditto.
747
748 2006-07-10  Beth Dakin  <bdakin@apple.com>
749
750         Reviewed by Maciej.
751
752         Fix for <rdar://problem/4610314> Support the CSS3 content property 
753         for images
754
755         This patch provides initial support for the CSS3 content property. 
756         It lacks support for any content other than images, and only allows 
757         content for elements that seemed safe for now.
758
759         * css/cssstyleselector.cpp:
760         (WebCore::CSSStyleSelector::applyProperty): Remove restrictions for 
761         just :before and :after
762         * html/HTMLBRElement.cpp:
763         (WebCore::HTMLBRElement::createRenderer):
764         * html/HTMLFrameSetElement.cpp:
765         (WebCore::HTMLFrameSetElement::createRenderer):
766         * html/HTMLImageElement.cpp:
767         (WebCore::HTMLImageElement::createRenderer):
768         * html/HTMLLegendElement.cpp:
769         (WebCore::HTMLLegendElement::createRenderer):
770         * rendering/RenderImage.cpp:
771         (WebCore::RenderImage::RenderImage):
772         (WebCore::RenderImage::setCachedImage): Don't allow the image to be 
773         set this way if it was already set with the content property.
774         * rendering/RenderImage.h:
775         (WebCore::RenderImage::setIsAnonymousImage): Anonymous images are 
776         those set through the content property.
777         (WebCore::RenderImage::isAnonymousImage):
778         * rendering/RenderObject.cpp:
779         (WebCore::RenderObject::createObject): If there is content 
780         specified, create a RenderImage with the content and initialize the 
781         cached image to whatever was specified in the CSS.
782
783 2006-07-10  Brady Eidson  <beidson@apple.com>
784
785         Reviewed by NOBODY (Build Fix!)
786
787         * icon/SiteIcon.cpp:
788         (SiteIcon::getImage):
789         Release build made an "unused variable" warning, which is, of course, an error.  fixed that.
790
791 2006-07-10  Brady Eidson  <beidson@apple.com>
792
793         Reviewed by Maciej
794
795         SQLite Icon DB now fully replicates functionality of the old DB, including pruning to keep unused
796         information out to keep down disk usage.  For now, it is still off by default, as the critical
797         feature of importing old icons into the new DB is still unrealized.
798         If you'd like to test, add #define ICONDEBUG to your WebKitPrefix.h
799
800         * icon/IconDatabase.cpp:
801         (WebCore::IconDatabase::IconDatabase):
802         (WebCore::IconDatabase::open):
803           -Sets up a timer for initial pruning
804         (WebCore::IconDatabase::iconForPageURL):
805           -Switched away from "dirty blob hack" as the problem is provisionally solved
806         (WebCore::IconDatabase::retainIconForURL):
807         (WebCore::IconDatabase::releaseIconForURL):
808           -Same as found in WebKit
809         (WebCore::IconDatabase::totalRetainCountForIconURL):
810           -Adds up all retainers of icon
811         (WebCore::IconDatabase::forgetIconForIconURLFromDatabase):
812           -Wipes an Icon table entry out
813         (WebCore::IconDatabase::establishTemporaryIconIDForIconURL):
814         (WebCore::IconDatabase::establishTemporaryIconIDForEscapedIconURL):
815         (WebCore::IconDatabase::establishIconIDForIconURL):
816         (WebCore::IconDatabase::establishIconIDForEscapedIconURL):
817           -Added ability to get an iconID without creating a new one if a lookup is all
818            that is genuinely wanted
819         (WebCore::IconDatabase::pruneUnreferencedIcons):
820         (WebCore::IconDatabase::pruneUnretainedIcons):
821           -Called on a timer on DB startup to clean it out
822         * icon/IconDatabase.h:
823         * icon/SiteIcon.cpp:
824         (SiteIcon::SiteIcon):
825         (SiteIcon::~SiteIcon):
826           -Deletes the image on deletion
827         (SiteIcon::getImage):
828           -Cut down on no-longer-necessary debug info
829
830 2006-07-10  Anders Carlsson  <acarlsson@apple.com>
831
832         Reviewed by Adele.
833
834         http://bugzilla.opendarwin.org/show_bug.cgi?id=9245
835         Quirksmode: Incorrect handling of disabled BUTTON elements
836
837         * html/HTMLButtonElement.cpp:
838         (WebCore::HTMLButtonElement::defaultEventHandler):
839         Don't call prepareSubmit if the element is disabled.
840
841         * html/HTMLInputElement.cpp:
842         (WebCore::HTMLInputElement::defaultEventHandler):
843         Don't call prepareSubmit if the element is disabled.
844
845 2006-07-10  Darin Adler  <darin@apple.com>
846
847         - try to fix Windows build
848
849         * platform/win/TemporaryLinkStubs.cpp: Put a few functions in the WebCore namespace.
850         * platform/gdk/TemporaryLinkStubs.cpp: Ditto.
851
852 2006-07-10  Darin Adler  <darin@apple.com>
853
854         Reviewed by Geoff.
855
856         - fix failures seen in layout tests
857
858         * bindings/js/kjs_dom.cpp: (KJS::toJS): Restore one of the few WebCore:: prefixes
859         that really needed to be there -- because we have two classes named JSHTMLDocument
860         at the moment! (One in KJS and one in WebCore namespace.)
861
862 2006-07-10  Darin Adler  <darin@apple.com>
863
864         - try to fix Windows build
865
866         * rendering/RenderLayer.h: Correct a forward declaration of ScrollBar.
867
868 2006-07-09  Adele Peterson  <adele@apple.com>
869
870         Reviewed by Maciej.
871
872         Fix for <rdar://problem/4463835> Switch to use new popup menu implementation for <select>
873
874         * css/html4.css: Added style for new selects, and for list boxes.
875         * html/HTMLSelectElement.h: (WebCore::HTMLSelectElement::shouldUseMenuList): Removed check for appearance so new popups can be styled.
876    
877         * rendering/RenderMenuList.cpp:
878         (WebCore::RenderMenuList::setStyle): Removed padding.  This is now set by the theme.
879         (WebCore::RenderMenuList::calcMinMaxWidth): Now takes minimum text size into account.
880         * rendering/RenderMenuList.h: Removed baselinePosition since we're letting the theme calculate that.
881
882         * rendering/RenderTheme.cpp: (WebCore::RenderTheme::isControlContainer): Added menuList as a ControlContainer, 
883         so RenderThemeMac will compute its baseline.
884         * rendering/RenderTheme.h: (WebCore::RenderTheme::minimumTextSize): Added.
885         * rendering/RenderThemeMac.h: Added minimumTextSize, setPopupPaddingFromControlSize, popupButtonSizes, popupButtonMargins, popupButtonPadding.
886         Removed sizeOfArrowControl. 
887         * rendering/RenderThemeMac.mm:
888         (WebCore::): Added enum for padding.
889         (WebCore::RenderThemeMac::adjustRepaintRect): Now inflates rect to account for control shadow.
890         (WebCore::RenderThemeMac::baselinePosition): Now calculates baseline for menulist.
891         (WebCore::RenderThemeMac::popupButtonMargins): Tweaked values.
892         (WebCore::RenderThemeMac::popupButtonSizes): Added.
893         (WebCore::RenderThemeMac::popupButtonPadding): Added, so different padding can be set for different control sizes.
894         (WebCore::RenderThemeMac::setPopupPaddingFromControlSize): Added.
895         (WebCore::RenderThemeMac::paintMenuList): Now inflates rect to account for control shadow.
896         (WebCore::RenderThemeMac::adjustMenuListStyle): Resets border, sets padding, sets control size.
897         (WebCore::RenderThemeMac::setPopupButtonCellState): Removed unnecessary class name.
898         (WebCore::RenderThemeMac::minimumTextSize): Added.
899
900 2006-07-09  Darin Adler  <darin@apple.com>
901
902         - add back "unused code" for plain text fields, still used by <isindex>!
903
904         * platform/TextField.h:
905         * platform/mac/TextFieldMac.mm:
906         * platform/mac/WebCoreTextField.h:
907         * platform/mac/WebCoreTextField.mm:
908         * rendering/RenderLineEdit.cpp:
909
910 2006-07-09  Darin Adler  <darin@apple.com>
911
912         Reviewed by Tim Hatcher.
913
914         - put more into the WebCore namespace
915         - removed unused code for plain text fields
916
917         Put more classes, class templates, enums, functions, and constants into
918         the WebCore namespace, including all the headers in the platform directory.
919
920         Removed lots of unneeded "WebCore::" qualifiers and "using" directives.
921
922         Added some "WebCore::" qualifiers in a few places.
923
924         Removed "uses WebCore::" in headers that we said we'd remove "when
925         everything is in the WebCore namespace".
926
927         * bindings/js/JSDOMParser.cpp:
928         * bindings/js/JSHTMLElementWrapperFactory.cpp:
929         * bindings/js/JSXSLTProcessor.cpp:
930         * bindings/js/kjs_binding.cpp:
931         * bindings/js/kjs_css.cpp:
932         * bindings/js/kjs_dom.cpp:
933         * bindings/js/kjs_dom.h:
934         * bindings/js/kjs_events.cpp:
935         * bindings/js/kjs_proxy.h:
936         * bindings/js/kjs_window.h:
937         * bindings/objc/DOM.mm:
938         * bridge/History.h:
939         * bridge/JavaAppletWidget.h:
940         * bridge/mac/FormDataMac.h:
941         * bridge/mac/FormDataMac.mm:
942         * bridge/mac/WebCoreAXObject.mm:
943         * bridge/mac/WebCoreEncodings.mm:
944         * bridge/mac/WebCoreFrameBridge.h:
945         * bridge/mac/WebCoreIconDatabaseBridge.mm:
946         * bridge/mac/WebCorePageState.h:
947         * bridge/mac/WebCoreScriptDebugger.mm:
948         * bridge/mac/WebCoreSettings.h:
949         * css/CSSGrammar.y:
950         * css/CSSPageRule.cpp:
951         * css/CSSPageRule.h:
952         * css/MediaList.cpp:
953         * css/cssstyleselector.h:
954         * dom/Clipboard.h:
955         * dom/Document.cpp:
956         * dom/Document.h:
957         * dom/EventTargetNode.h:
958         * dom/Node.cpp:
959         * dom/Node.h:
960         * dom/Position.h:
961         * dom/Range.cpp:
962         * dom/XMLTokenizer.cpp:
963         * editing/AppendNodeCommand.h:
964         * editing/ApplyStyleCommand.cpp:
965         * editing/BreakBlockquoteCommand.cpp:
966         * editing/BreakBlockquoteCommand.h:
967         * editing/CompositeEditCommand.cpp:
968         * editing/CompositeEditCommand.h:
969         * editing/CreateLinkCommand.h:
970         * editing/DeleteFromTextNodeCommand.h:
971         * editing/DeleteSelectionCommand.h:
972         * editing/FormatBlockCommand.h:
973         * editing/HTMLInterchange.cpp:
974         * editing/HTMLInterchange.h:
975         * editing/IndentOutdentCommand.h:
976         * editing/InsertIntoTextNodeCommand.h:
977         * editing/InsertLineBreakCommand.h:
978         * editing/InsertListCommand.h:
979         * editing/InsertNodeBeforeCommand.h:
980         * editing/InsertTextCommand.cpp:
981         * editing/InsertTextCommand.h:
982         * editing/JSEditor.cpp:
983         * editing/JSEditor.h:
984         * editing/JoinTextNodesCommand.h:
985         * editing/MergeIdenticalElementsCommand.cpp:
986         * editing/MergeIdenticalElementsCommand.h:
987         * editing/ModifySelectionListLevel.h:
988         * editing/MoveSelectionCommand.h:
989         * editing/RebalanceWhitespaceCommand.h:
990         * editing/RemoveNodeAttributeCommand.h:
991         * editing/RemoveNodeCommand.h:
992         * editing/RemoveNodePreservingChildrenCommand.h:
993         * editing/ReplaceSelectionCommand.h:
994         * editing/SetNodeAttributeCommand.h:
995         * editing/SplitElementCommand.cpp:
996         * editing/SplitElementCommand.h:
997         * editing/SplitTextNodeCommand.cpp:
998         * editing/SplitTextNodeCommand.h:
999         * editing/SplitTextNodeContainingElementCommand.h:
1000         * editing/TypingCommand.cpp:
1001         * editing/TypingCommand.h:
1002         * editing/UnlinkCommand.h:
1003         * editing/VisiblePosition.cpp:
1004         * editing/WrapContentsInDummySpanCommand.cpp:
1005         * editing/WrapContentsInDummySpanCommand.h:
1006         * editing/markup.cpp:
1007         * editing/markup.h:
1008         * html/HTMLAnchorElement.cpp:
1009         * html/HTMLBodyElement.cpp:
1010         * html/HTMLButtonElement.h:
1011         * html/HTMLCollection.h:
1012         * html/HTMLDocument.h:
1013         * html/HTMLEmbedElement.cpp:
1014         * html/HTMLFormElement.cpp:
1015         * html/HTMLFormElement.h:
1016         * html/HTMLFrameElement.cpp:
1017         * html/HTMLFrameSetElement.cpp:
1018         * html/HTMLKeygenElement.cpp:
1019         * html/HTMLLabelElement.cpp:
1020         * html/HTMLObjectElement.cpp:
1021         * html/HTMLObjectElement.h:
1022         * html/HTMLTableElement.cpp:
1023         * html/HTMLTablePartElement.cpp:
1024         * icon/IconDatabase.h:
1025         * kcanvas/KCanvasPath.h:
1026         * kcanvas/KCanvasResources.cpp:
1027         * kcanvas/KCanvasResources.h:
1028         * kcanvas/KCanvasTreeDebug.cpp:
1029         * kcanvas/KCanvasTreeDebug.h:
1030         * kcanvas/RenderSVGContainer.cpp:
1031         * kcanvas/RenderSVGText.h:
1032         * kcanvas/device/KRenderingPaintServer.h:
1033         * kcanvas/device/KRenderingPaintServerGradient.h:
1034         * kcanvas/device/KRenderingPaintServerSolid.cpp:
1035         * ksvg2/misc/SVGImageLoader.cpp:
1036         * ksvg2/svg/SVGElement.cpp:
1037         * ksvg2/svg/SVGElement.h:
1038         * ksvg2/svg/SVGForeignObjectElement.cpp:
1039         * ksvg2/svg/SVGForeignObjectElement.h:
1040         * ksvg2/svg/SVGImageElement.cpp:
1041         * ksvg2/svg/SVGPoint.h:
1042         * ksvg2/svg/SVGStylable.h:
1043         * ksvg2/svg/SVGTRefElement.cpp:
1044         * ksvg2/svg/SVGTRefElement.h:
1045         * ksvg2/svg/SVGTSpanElement.cpp:
1046         * ksvg2/svg/SVGTSpanElement.h:
1047         * ksvg2/svg/SVGTextElement.h:
1048         * ksvg2/svg/svgpathparser.cpp:
1049         * ksvg2/svg/svgpathparser.h:
1050         * loader/Cache.h:
1051         * loader/DocLoader.h:
1052         * loader/LoaderFunctions.h:
1053         * loader/mac/LoaderFunctionsMac.mm:
1054         * page/Frame.h:
1055         * page/FrameView.h:
1056         * page/Page.h:
1057         * page/Settings.h:
1058         * platform/AffineTransform.cpp:
1059         * platform/AffineTransform.h:
1060         * platform/Arena.cpp:
1061         * platform/Arena.h:
1062         * platform/CookieJar.h:
1063         * platform/DeprecatedCString.cpp:
1064         * platform/DeprecatedCString.h:
1065         * platform/DeprecatedPtrList.h:
1066         * platform/DeprecatedPtrListImpl.cpp:
1067         * platform/DeprecatedPtrListImpl.h:
1068         * platform/DeprecatedPtrQueue.h:
1069         * platform/DeprecatedString.cpp:
1070         * platform/DeprecatedString.h:
1071         * platform/DeprecatedStringList.cpp:
1072         * platform/DeprecatedStringList.h:
1073         * platform/DeprecatedValueList.h:
1074         * platform/DeprecatedValueListImpl.cpp:
1075         * platform/DeprecatedValueListImpl.h:
1076         * platform/FileButton.h:
1077         * platform/FloatPoint.h:
1078         * platform/FloatRect.h:
1079         * platform/FloatSize.h:
1080         * platform/FontData.h:
1081         * platform/FontFallbackList.h:
1082         * platform/GraphicsContext.h:
1083         * platform/IntPoint.h:
1084         * platform/IntRect.h:
1085         * platform/IntSize.h:
1086         * platform/KURL.cpp:
1087         * platform/KURL.h:
1088         * platform/ListBox.h:
1089         * platform/Logging.cpp:
1090         * platform/Logging.h:
1091         * platform/Pen.h:
1092         * platform/PopUpButton.h:
1093         * platform/RegularExpression.cpp:
1094         * platform/RegularExpression.h:
1095         * platform/SSLKeyGenerator.h:
1096         * platform/ScrollBar.h:
1097         * platform/SegmentedString.h:
1098         * platform/Shared.h:
1099         * platform/Slider.h:
1100         * platform/StringImpl.h:
1101         * platform/TextBox.h:
1102         * platform/TextField.h:
1103         * platform/TextStream.cpp:
1104         * platform/TextStream.h:
1105         * platform/TransferJob.h:
1106         * platform/TransferJobClient.h:
1107         * platform/Widget.h:
1108         * platform/cg/AffineTransformCG.cpp:
1109         * platform/mac/ClipboardMac.h:
1110         * platform/mac/ClipboardMac.mm:
1111         * platform/mac/DeprecatedStringListMac.mm:
1112         * platform/mac/FontCacheMac.mm:
1113         * platform/mac/KURLMac.mm:
1114         * platform/mac/ListBoxMac.mm:
1115         * platform/mac/PopUpButtonMac.mm:
1116         * platform/mac/SSLKeyGeneratorMac.mm:
1117         * platform/mac/TextBoxMac.mm:
1118         * platform/mac/TextFieldMac.mm:
1119         * platform/mac/WebCoreTextArea.h:
1120         * platform/mac/WebCoreTextArea.mm:
1121         * platform/mac/WebCoreTextField.h:
1122         * platform/mac/WebCoreTextField.mm:
1123         * rendering/DeprecatedRenderSelect.h:
1124         * rendering/RenderArena.cpp:
1125         * rendering/RenderArena.h:
1126         * rendering/RenderBlock.cpp:
1127         * rendering/RenderBox.cpp:
1128         * rendering/RenderContainer.cpp:
1129         * rendering/RenderFlexibleBox.cpp:
1130         * rendering/RenderFlow.cpp:
1131         * rendering/RenderLayer.cpp:
1132         * rendering/RenderLineEdit.cpp:
1133         * rendering/RenderObject.h:
1134         * rendering/RenderStyle.cpp:
1135         * rendering/RenderStyle.h:
1136         * rendering/RenderText.cpp:
1137         * rendering/RenderTextFragment.cpp:
1138         * rendering/RenderTheme.h:
1139         * rendering/RenderTreeAsText.cpp:
1140         * rendering/RenderTreeAsText.h:
1141         * rendering/RenderView.h:
1142         * rendering/bidi.h:
1143         * xml/XSLStyleSheet.cpp:
1144         * xml/XSLTProcessor.cpp:
1145
1146 2006-07-09  Geoffrey Garen  <ggaren@apple.com>
1147
1148         Reviewed by Beth.
1149
1150         * bindings/js/kjs_window.cpp:
1151         (KJS::Window::clear): Garbage collect after reinitalizing the global
1152         object, not before, since the reinitialization tends to create garbage.
1153
1154 2006-07-09  Timothy Hatcher  <timothy@apple.com>
1155
1156         Reviewed by Darin.
1157
1158         Bug 9820: Move new DOM API that has been through API review to public headers
1159         http://bugzilla.opendarwin.org/show_bug.cgi?id=9820
1160
1161         * bindings/objc/DOM.mm:
1162         (-[DOMElement focus]):
1163         (-[DOMElement blur]):
1164         (-[DOMRange text]):
1165         (-[DOMRange _text]):
1166         * bindings/objc/DOMCSS.mm:
1167         (-[DOMRGBColor color]):
1168         (-[DOMRGBColor _color]):
1169         * bindings/objc/DOMCore.h:
1170         * bindings/objc/DOMEvents.h:
1171         * bindings/objc/DOMExtensions.h:
1172         * bindings/objc/DOMHTML.mm:
1173         (-[DOMHTMLElement titleDisplayString]):
1174         (-[DOMHTMLDocument createDocumentFragmentWithMarkupString:baseURL:]):
1175         (-[DOMHTMLDocument createDocumentFragmentWithText:]):
1176         (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
1177         (-[DOMHTMLDocument _createDocumentFragmentWithText:]):
1178         * bindings/objc/DOMPrivate.h:
1179         * bindings/objc/DOMXPath.h:
1180         * bindings/objc/DOMXPath.mm:
1181
1182 2006-07-09  Beth Dakin  <bdakin@apple.com>
1183
1184         Reviewed by Maciej.
1185
1186         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9749 A 
1187         nested content editable div causes unnecessary screen redraws.
1188         
1189         We were repainting too much because we were deciding that we needed 
1190         a full layout because we didn't have a first line box. Our code 
1191         used to hold a lot of assumptions that positioned elements would 
1192         always have line boxes, but I fixed a few bugs a while back that 
1193         appeared because this assumption isn't true. This assumption was 
1194         also causing the extra redraws because the check meant that we 
1195         would decide to do a full layout for any positioned element that 
1196         did not have any line boxes in the first place. Maciej and I talked 
1197         about this, and we couldn't figure out why the check for line boxes 
1198         was part of determining if we need a full layout in the first 
1199         place. After hunting around the code, we decided to assume that 
1200         this check is antiquated. Removing it fixes the bug and doesn't 
1201         seem to break any layout tests. So, fingers crossed!
1202
1203         Will add layout test so soon.
1204
1205         * rendering/bidi.cpp:
1206         (WebCore::RenderBlock::layoutInlineChildren): Remove firstLineBox 
1207         check.
1208
1209 2006-07-09  David Harrison  <harrison@apple.com>
1210
1211         Reviewed by John Sullivan.
1212
1213         <rdar://problem/4598149> Deleting the contents of a DOMRange and then inserting a node into it crashes in WebCore::Font::canUseGlyphCache
1214
1215         Test: fast/dom/delete-contents.html
1216         
1217         * dom/Range.cpp:
1218         (WebCore::Range::processContents):
1219
1220 2006-07-09  Darin Adler  <darin@apple.com>
1221
1222         - another round of renaming; and KWQ is dead
1223
1224         * WebCore.vcproj/WebCore/WebCore.vcproj: Remove paths for kwq and khtml directories.
1225         Move files to their new locations. Did rename.
1226         * WebCore.xcodeproj/project.pbxproj: Move files to their new locations. Did rename.
1227         * WebCoreSources.bkl: Did rename.
1228         * webcore-base.bkl: Removed kwq.
1229
1230         * kwq/AccessibilityObjectCache.h: Removed.
1231         * kwq/AccessibilityObjectCache.mm: Removed.
1232         * kwq/FormDataMac.h: Removed.
1233         * kwq/FormDataMac.mm: Removed.
1234         * kwq/WebCoreAXObject.h: Removed.
1235         * kwq/WebCoreAXObject.mm: Removed.
1236         * kwq/WebCoreEditCommand.h: Removed.
1237         * kwq/WebCoreEditCommand.mm: Removed.
1238         * kwq/WebCorePageState.h: Removed.
1239         * kwq/WebCorePageState.mm: Removed.
1240         * kwq/WebCoreResourceLoaderImp.h: Removed.
1241         * kwq/WebCoreResourceLoaderImp.mm: Removed.
1242
1243         * bridge/AXObjectCache.h: Added.
1244         * bridge/mac/AXObjectCacheMac.mm: Added.
1245         * bridge/mac/WebCoreAXObject.h: Added.
1246         * bridge/mac/WebCoreAXObject.mm: Added.
1247
1248         * loader/CachedObject.cpp: Removed.
1249         * loader/CachedObject.h: Removed.
1250         * loader/CachedObjectClient.h: Removed.
1251         * loader/CachedObjectClientWalker.cpp: Removed.
1252         * loader/CachedObjectClientWalker.h: Removed.
1253
1254         * loader/CachedResource.cpp: Added.
1255         * loader/CachedResource.h: Added.
1256         * loader/CachedResourceClient.h: Added.
1257         * loader/CachedResourceClientWalker.cpp: Added.
1258         * loader/CachedResourceClientWalker.h: Added.
1259
1260         * bridge/mac/FrameMac.mm:
1261         * bridge/mac/WebCoreFrameBridge.mm:
1262         * css/CSSImageValue.h:
1263         * css/CSSImportRule.h:
1264         * dom/Document.cpp:
1265         * dom/Document.h:
1266         * dom/Notation.h:
1267         * dom/ProcessingInstruction.h:
1268         * dom/XMLTokenizer.cpp:
1269         * html/CanvasPattern.h:
1270         * html/HTMLDocument.h:
1271         * html/HTMLImageLoader.cpp:
1272         * html/HTMLImageLoader.h:
1273         * html/HTMLLinkElement.h:
1274         * html/HTMLScriptElement.cpp:
1275         * html/HTMLScriptElement.h:
1276         * html/HTMLTokenizer.cpp:
1277         * html/HTMLTokenizer.h:
1278         * kcanvas/KCanvasFilters.h:
1279         * ksvg2/svg/SVGCursorElement.cpp:
1280         * ksvg2/svg/SVGCursorElement.h:
1281         * ksvg2/svg/SVGFEImageElement.cpp:
1282         * ksvg2/svg/SVGFEImageElement.h:
1283         * loader/Cache.cpp:
1284         * loader/Cache.h:
1285         * loader/CachedCSSStyleSheet.cpp:
1286         * loader/CachedCSSStyleSheet.h:
1287         * loader/CachedImage.cpp:
1288         * loader/CachedImage.h:
1289         * loader/CachedScript.cpp:
1290         * loader/CachedScript.h:
1291         * loader/CachedXBLDocument.cpp:
1292         * loader/CachedXBLDocument.h:
1293         * loader/CachedXSLStyleSheet.cpp:
1294         * loader/CachedXSLStyleSheet.h:
1295         * loader/DocLoader.cpp:
1296         * loader/DocLoader.h:
1297         * loader/LoaderFunctions.h:
1298         * loader/Request.cpp:
1299         * loader/Request.h:
1300         * loader/loader.cpp:
1301         * loader/loader.h:
1302         * loader/mac/LoaderFunctionsMac.mm:
1303         * page/Frame.cpp:
1304         * page/FrameView.cpp:
1305         * platform/gdk/TemporaryLinkStubs.cpp:
1306         * platform/mac/ClipboardMac.h:
1307         * platform/win/TemporaryLinkStubs.cpp:
1308         * rendering/RenderBox.h:
1309         * rendering/RenderContainer.cpp:
1310         * rendering/RenderImage.cpp:
1311         * rendering/RenderImage.h:
1312         * rendering/RenderLayer.h:
1313         * rendering/RenderObject.cpp:
1314         * rendering/RenderObject.h:
1315         * rendering/RenderStyle.cpp:
1316         * rendering/RenderStyle.h:
1317         * xml/XSLImportRule.h:
1318         Did renaming.
1319
1320         * platform/mac/can-convert.mm: Removed.
1321
1322 2006-07-09  Anders Carlsson  <acarlsson@apple.com>
1323
1324         Reviewed by Tim O.
1325
1326         * WebCore.exp:
1327         Add wkPathFromFont.
1328         
1329         * platform/mac/FontDataMac.mm:
1330         (-[NSFont WebCore]):
1331         Use wkPathFromFont.
1332         
1333         * platform/mac/WebCoreSystemInterface.h:
1334         * platform/mac/WebCoreSystemInterface.mm:
1335         Declare wkPathFromFont.
1336
1337 2006-07-09  Brady Eidson  <beidson@apple.com>
1338
1339         Reviewed by Maciej
1340
1341         Set the stage to remove the workaround for the SQLite BLOB corruption.  A few other small cleanups, and
1342         preparation for pruning unreferenced and unretained icons.
1343
1344         * icon/IconDatabase.cpp:
1345         (WebCore::IconDatabase::recreateDatabase):  Added another trigger to assist in icon removal
1346         (WebCore::IconDatabase::deletePrivateTables):  Cleaned up logging messages
1347         (WebCore::IconDatabase::imageDataForIconID):  #ifdefed the blobbing hack for impending removal, use the real blob by default
1348         (WebCore::IconDatabase::imageDataForIconURL):  same
1349         (WebCore::IconDatabase::imageDataForPageURL):  same
1350         (WebCore::IconDatabase::pruneUnreferencedIcons):  Will delete any icons and their data that are not referenced
1351           by any PageURL
1352         * icon/IconDatabase.h:
1353
1354         * icon/SQLDatabase.h:  Changed BlobAsVector to be unsigned char as thats the most reasonable type for
1355           a byte-buffer, and is what CFData expects
1356         * icon/SQLStatement.cpp:
1357         (WebCore::SQLStatement::getColumnBlobAsVector):
1358
1359 2006-07-09  Darin Adler  <darin@apple.com>
1360
1361         - move all but the last 12 files out of kwq directory
1362         - removed a few unused source files I discovered
1363
1364         * WebCore.vcproj/WebCore/WebCore.vcproj: Update for new file locations.
1365         * WebCore.xcodeproj/project.pbxproj: Ditto.
1366
1367         * bridge/mac/FrameMac.mm:
1368         * dom/Element.h:
1369         * html/HTMLImageLoader.cpp:
1370         * loader/Cache.cpp:
1371         * loader/Cache.h:
1372         * loader/CachedCSSStyleSheet.cpp:
1373         * loader/CachedCSSStyleSheet.h:
1374         * loader/CachedImage.cpp:
1375         * loader/CachedImage.h:
1376         * loader/CachedObject.h:
1377         * loader/CachedScript.cpp:
1378         * loader/CachedScript.h:
1379         * loader/CachedXBLDocument.cpp:
1380         * loader/CachedXBLDocument.h:
1381         * loader/CachedXSLStyleSheet.cpp:
1382         * loader/CachedXSLStyleSheet.h:
1383         * loader/DocLoader.cpp:
1384         * loader/DocLoader.h:
1385         * page/Frame.cpp:
1386         * page/Frame.h:
1387         * page/FramePrivate.h:
1388         * platform/gdk/TemporaryLinkStubs.cpp:
1389         * platform/win/TemporaryLinkStubs.cpp:
1390         * rendering/DeprecatedSlider.cpp:
1391         * rendering/RenderObject.h:
1392         * xml/xmlhttprequest.cpp:
1393         Updated includes as needed for file location changes. Changed
1394         CachePolicy uses to match new filename and enum names.
1395
1396         * loader/CachedResource.cpp: Removed.
1397         * loader/CachedResource.h: Removed.
1398         * loader/CachedResourceClient.h: Removed.
1399         * loader/CachedResourceClientWalker.cpp: Removed.
1400         * loader/CachedResourceClientWalker.h: Removed.
1401         The above files were checked in by accident a while back. The rename of
1402         CachedObject to CachedResource is now reflected in do-webcore-rename,
1403         and will be done soon.
1404
1405         * kwq/AffineTransform.cpp: Removed.
1406         * kwq/AffineTransform.h: Removed.
1407         * kwq/CacheControl.h: Removed.
1408         * kwq/DeprecatedPtrQueue.h: Removed.
1409         * kwq/FileButton.h: Removed.
1410         * kwq/FileButton.mm: Removed.
1411         * kwq/ListBox.h: Removed.
1412         * kwq/ListBox.mm: Removed.
1413         * kwq/LoaderFunctions.h: Removed.
1414         * kwq/LoaderFunctions.mm: Removed.
1415         * kwq/PopUpButton.h: Removed.
1416         * kwq/PopUpButton.mm: Removed.
1417         * kwq/SSLKeyGenerator.h: Removed.
1418         * kwq/SSLKeyGenerator.mm: Removed.
1419         * kwq/Settings.h: Removed.
1420         * kwq/TextBox.h: Removed.
1421         * kwq/TextBox.mm: Removed.
1422         * kwq/TextField.h: Removed.
1423         * kwq/TextField.mm: Removed.
1424         * kwq/WebCoreScrollBar.h: Removed.
1425         * kwq/WebCoreScrollBar.mm: Removed.
1426         * kwq/WebCoreSlider.h: Removed.
1427         * kwq/WebCoreSlider.mm: Removed.
1428
1429         * loader/CachePolicy.h: Added.
1430         * loader/LoaderFunctions.h: Added.
1431
1432         * loader/mac/LoaderFunctionsMac.mm: Added.
1433
1434         * page/Settings.h: Added.
1435
1436         * platform/AffineTransform.cpp: Added.
1437         * platform/AffineTransform.h: Added.
1438         * platform/DeprecatedPtrQueue.h: Added.
1439         * platform/FileButton.h: Added.
1440         * platform/ListBox.h: Added.
1441         * platform/PopUpButton.h: Added.
1442         * platform/SSLKeyGenerator.h: Added.
1443         * platform/ScrollBar.h: Added.
1444         * platform/Slider.h: Added.
1445         * platform/TextBox.h: Added.
1446         * platform/TextField.h: Added.
1447
1448         * platform/cg/AffineTransformCG.cpp: Added.
1449
1450         * platform/mac/FileButtonMac.mm: Added.
1451         * platform/mac/ListBoxMac.mm: Added.
1452         * platform/mac/PopUpButtonMac.mm: Added.
1453         * platform/mac/SSLKeyGeneratorMac.mm: Added.
1454         * platform/mac/ScrollBarMac.mm: Added.
1455         * platform/mac/ScrollBarMac.mm: Added.
1456         * platform/mac/SliderMac.mm: Added.
1457         * platform/mac/SliderMac.mm: Added.
1458         * platform/mac/TextBoxMac.mm: Added.
1459         * platform/mac/TextFieldMac.mm: Added.
1460
1461 2006-07-09  Darin Adler  <darin@apple.com>
1462
1463         - move 4 files out of kwq directory
1464         - make some minor project adjustments for the WebCore project
1465
1466         * WebCore.xcodeproj/project.pbxproj: Link libsqlite3 the same way we do other
1467         libraries, rather than using a custom linker option. Moved the files from their
1468         old locations to the new ones. Removed "khtml" from the list of header search
1469         paths since that directory doesn't exist any more. Eliminated STYLE_LDFLAGS
1470         and just put -umbrella WebKit in OTHER_LDFLAGS in the Production configuration
1471         (was a leftover from "build styles" in Xcode 1). Changed to use EXPORTED_SYMBOLS_FILE
1472         instead of using -exported_symbols_list directly again now that Xcode has fixed the
1473         "strip twice" bug. Removed unneeded explicit SECTORDER_FLAGS = "" settings.
1474         Removed the explicit -Y,3 option now that Xcode does that by default.
1475
1476         * WebCore.vcproj/WebCore/WebCore.vcproj: Removed some obsolete uneeded files,
1477         many of which didn't exist any more. Moved the files from their old locations
1478         to the new ones.
1479
1480         * WebCoreSources.bkl: Moved the files from their old locations to the new ones.
1481
1482         * kwq/DeprecatedCString.cpp: Removed.
1483         * kwq/DeprecatedCString.h: Removed.
1484         * kwq/TextStream.cpp: Removed.
1485         * kwq/TextStream.h: Removed.
1486         * platform/DeprecatedCString.cpp: Added.
1487         * platform/DeprecatedCString.h: Added.
1488         * platform/TextStream.cpp: Added.
1489         * platform/TextStream.h: Added.
1490
1491 2006-07-09  Darin Adler  <darin@apple.com>
1492
1493         Rubber stamped by Maciej (kinda).
1494
1495         - did the next pass of renaming (used do-webcore-rename script)
1496           this takes care of most of the remaining KWQ names (almost all)
1497
1498         * WebCore+SVG/DOMList.h:
1499         * WebCore.vcproj/WebCore/WebCore.vcproj:
1500         * WebCore.xcodeproj/project.pbxproj:
1501         * WebCoreSources.bkl:
1502         * bindings/js/kjs_dom.cpp:
1503         * bindings/js/kjs_window.cpp:
1504         * bindings/objc/DOMHTML.mm:
1505         * bridge/mac/FrameMac.h:
1506         * bridge/mac/FrameMac.mm:
1507         * bridge/mac/WebCoreFrameBridge.mm:
1508         * bridge/mac/WebCoreSettings.h:
1509         * bridge/mac/WebCoreSettings.mm:
1510         * bridge/win/FrameWin.cpp:
1511         * css/CSSPrimitiveValue.cpp:
1512         * css/CSSValueKeywords.in:
1513         * css/MediaQueryEvaluator.cpp:
1514         * css/cssparser.cpp:
1515         * css/cssstyleselector.cpp:
1516         * css/cssstyleselector.h:
1517         * dom/CharacterData.cpp:
1518         * dom/CharacterData.h:
1519         * dom/Document.cpp:
1520         * dom/Element.cpp:
1521         * dom/Element.h:
1522         * dom/EventTargetNode.cpp:
1523         * dom/EventTargetNode.h:
1524         * dom/Node.cpp:
1525         * dom/Node.h:
1526         * dom/Position.cpp:
1527         * dom/ProcessingInstruction.cpp:
1528         * dom/QualifiedName.cpp:
1529         * dom/QualifiedName.h:
1530         * dom/XMLTokenizer.cpp: Added.
1531         * dom/xml_tokenizer.cpp: Removed.
1532         * dom/xml_tokenizer.h: Removed.
1533         * editing/EditAction.h:
1534         * editing/HTMLInterchange.cpp:
1535         * editing/HTMLInterchange.h:
1536         * editing/Selection.h:
1537         * editing/SelectionController.h:
1538         * editing/TextAffinity.h:
1539         * editing/TextIterator.cpp:
1540         * editing/TextIterator.h:
1541         * editing/VisiblePosition.h:
1542         * editing/htmlediting.cpp:
1543         * editing/markup.cpp:
1544         * editing/markup.h:
1545         * editing/visible_units.cpp:
1546         * editing/visible_units.h:
1547         * html/HTMLDocument.cpp:
1548         * html/HTMLFontElement.cpp:
1549         * html/HTMLInputElement.cpp:
1550         * html/HTMLKeygenElement.cpp:
1551         * html/HTMLSelectElement.h:
1552         * html/HTMLTextAreaElement.cpp:
1553         * html/HTMLTextFieldInnerElement.cpp:
1554         * html/HTMLTokenizer.cpp:
1555         * html/HTMLTokenizer.h:
1556         * kcanvas/KCanvasContainer.cpp: Removed.
1557         * kcanvas/KCanvasContainer.h: Removed.
1558         * kcanvas/KCanvasCreator.cpp:
1559         * kcanvas/KCanvasFilters.cpp:
1560         * kcanvas/KCanvasFilters.h:
1561         * kcanvas/KCanvasMatrix.cpp:
1562         * kcanvas/KCanvasMatrix.h:
1563         * kcanvas/KCanvasPath.cpp:
1564         * kcanvas/KCanvasPath.h:
1565         * kcanvas/KCanvasResources.cpp:
1566         * kcanvas/KCanvasResources.h:
1567         * kcanvas/KCanvasTreeDebug.cpp:
1568         * kcanvas/KCanvasTreeDebug.h:
1569         * kcanvas/RenderForeignObject.cpp:
1570         * kcanvas/RenderForeignObject.h:
1571         * kcanvas/RenderPath.cpp:
1572         * kcanvas/RenderPath.h:
1573         * kcanvas/RenderSVGContainer.cpp: Added.
1574         * kcanvas/RenderSVGContainer.h: Added.
1575         * kcanvas/RenderSVGImage.cpp:
1576         * kcanvas/RenderSVGImage.h:
1577         * kcanvas/RenderSVGText.cpp:
1578         * kcanvas/RenderSVGText.h:
1579         * kcanvas/device/KRenderingPaintServer.h:
1580         * kcanvas/device/KRenderingPaintServerGradient.cpp:
1581         * kcanvas/device/KRenderingPaintServerGradient.h:
1582         * kcanvas/device/KRenderingPaintServerPattern.cpp:
1583         * kcanvas/device/KRenderingPaintServerPattern.h:
1584         * kcanvas/device/KRenderingPaintServerSolid.cpp:
1585         * kcanvas/device/KRenderingPaintServerSolid.h:
1586         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
1587         * kcanvas/device/quartz/KCanvasItemQuartz.h:
1588         * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
1589         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
1590         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
1591         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
1592         * ksvg2/css/CSSValueKeywords.in:
1593         * ksvg2/css/SVGRenderStyleDefs.cpp:
1594         * ksvg2/misc/KCanvasRenderingStyle.cpp:
1595         * ksvg2/misc/KSVGTimeScheduler.cpp:
1596         * ksvg2/svg/SVGAElement.cpp:
1597         * ksvg2/svg/SVGAnimateTransformElement.cpp:
1598         * ksvg2/svg/SVGAnimateTransformElement.h:
1599         * ksvg2/svg/SVGGElement.cpp:
1600         * ksvg2/svg/SVGHelper.cpp:
1601         * ksvg2/svg/SVGHelper.h:
1602         * ksvg2/svg/SVGImageElement.cpp:
1603         * ksvg2/svg/SVGLinearGradientElement.cpp:
1604         * ksvg2/svg/SVGMarkerElement.cpp:
1605         * ksvg2/svg/SVGMaskElement.cpp:
1606         * ksvg2/svg/SVGMatrix.cpp:
1607         * ksvg2/svg/SVGMatrix.h:
1608         * ksvg2/svg/SVGPatternElement.cpp:
1609         * ksvg2/svg/SVGRadialGradientElement.cpp:
1610         * ksvg2/svg/SVGSVGElement.cpp:
1611         * ksvg2/svg/SVGStyledElement.h:
1612         * ksvg2/svg/SVGStyledTransformableElement.cpp:
1613         * ksvg2/svg/SVGStyledTransformableElement.h:
1614         * ksvg2/svg/SVGSwitchElement.cpp:
1615         * ksvg2/svg/SVGTextElement.cpp:
1616         * ksvg2/svg/SVGTransformable.h:
1617         * ksvg2/svg/SVGUseElement.cpp:
1618         * kwq/AffineTransform.cpp: Added.
1619         * kwq/AffineTransform.h: Added.
1620         * kwq/DeprecatedCString.cpp: Added.
1621         * kwq/DeprecatedCString.h: Added.
1622         * kwq/DeprecatedPtrQueue.h: Added.
1623         * kwq/FileButton.h: Added.
1624         * kwq/FileButton.mm: Added.
1625         * kwq/FormDataMac.mm: Added.
1626         * kwq/KWQCString.cpp: Removed.
1627         * kwq/KWQCString.h: Removed.
1628         * kwq/KWQComboBox.h: Removed.
1629         * kwq/KWQComboBox.mm: Removed.
1630         * kwq/KWQEditCommand.h: Removed.
1631         * kwq/KWQEditCommand.mm: Removed.
1632         * kwq/KWQFileButton.h: Removed.
1633         * kwq/KWQFileButton.mm: Removed.
1634         * kwq/KWQFormData.h: Removed.
1635         * kwq/KWQFormData.mm: Removed.
1636         * kwq/KWQKHTMLSettings.h: Removed.
1637         * kwq/KWQKIOGlobal.h: Removed.
1638         * kwq/KWQKSSLKeyGen.h: Removed.
1639         * kwq/KWQKSSLKeyGen.mm: Removed.
1640         * kwq/KWQLineEdit.h: Removed.
1641         * kwq/KWQLineEdit.mm: Removed.
1642         * kwq/KWQListBox.h: Removed.
1643         * kwq/KWQListBox.mm: Removed.
1644         * kwq/KWQLoader.h: Removed.
1645         * kwq/KWQLoader.mm: Removed.
1646         * kwq/KWQPageState.h: Removed.
1647         * kwq/KWQPageState.mm: Removed.
1648         * kwq/KWQPtrQueue.h: Removed.
1649         * kwq/KWQResourceLoader.h: Removed.
1650         * kwq/KWQResourceLoader.mm: Removed.
1651         * kwq/KWQScrollBar.h: Removed.
1652         * kwq/KWQScrollBar.mm: Removed.
1653         * kwq/KWQSlider.h: Removed.
1654         * kwq/KWQSlider.mm: Removed.
1655         * kwq/KWQTextEdit.h: Removed.
1656         * kwq/KWQTextEdit.mm: Removed.
1657         * kwq/KWQTextStream.cpp: Removed.
1658         * kwq/KWQTextStream.h: Removed.
1659         * kwq/KWQWMatrix.cpp: Removed.
1660         * kwq/KWQWMatrix.h: Removed.
1661         * kwq/ListBox.h: Added.
1662         * kwq/ListBox.mm: Added.
1663         * kwq/LoaderFunctions.h: Added.
1664         * kwq/LoaderFunctions.mm: Added.
1665         * kwq/PopUpButton.h: Added.
1666         * kwq/PopUpButton.mm: Added.
1667         * kwq/SSLKeyGenerator.h: Added.
1668         * kwq/SSLKeyGenerator.mm: Added.
1669         * kwq/Settings.h: Added.
1670         * kwq/TextBox.h: Added.
1671         * kwq/TextBox.mm: Added.
1672         * kwq/TextField.h: Added.
1673         * kwq/TextField.mm: Added.
1674         * kwq/TextStream.cpp: Added.
1675         * kwq/TextStream.h: Added.
1676         * kwq/WebCoreEditCommand.h: Added.
1677         * kwq/WebCoreEditCommand.mm: Added.
1678         * kwq/WebCorePageState.h: Added.
1679         * kwq/WebCorePageState.mm: Added.
1680         * kwq/WebCoreResourceLoaderImp.h: Added.
1681         * kwq/WebCoreResourceLoaderImp.mm: Added.
1682         * kwq/WebCoreScrollBar.h: Added.
1683         * kwq/WebCoreScrollBar.mm: Added.
1684         * kwq/WebCoreSlider.h: Added.
1685         * kwq/WebCoreSlider.mm: Added.
1686         * loader/Cache.h:
1687         * loader/CachedCSSStyleSheet.cpp:
1688         * loader/CachedImage.cpp:
1689         * loader/CachedObject.h:
1690         * loader/CachedObjectClientWalker.h:
1691         * loader/CachedResource.h:
1692         * loader/CachedResourceClientWalker.h:
1693         * loader/CachedScript.h:
1694         * loader/CachedXBLDocument.h:
1695         * loader/Decoder.h:
1696         * loader/DocLoader.cpp:
1697         * loader/DocLoader.h:
1698         * loader/FormData.h:
1699         * loader/ImageDocument.cpp:
1700         * loader/PluginDocument.cpp:
1701         * loader/TextDocument.cpp:
1702         * loader/loader.cpp:
1703         * loader/loader.h:
1704         * page/Frame.cpp:
1705         * page/Frame.h:
1706         * page/FramePrivate.h:
1707         * page/Page.cpp:
1708         * page/Page.h:
1709         * platform/DeprecatedPtrList.h:
1710         * platform/DeprecatedPtrListImpl.cpp:
1711         * platform/DeprecatedPtrListImpl.h:
1712         * platform/DeprecatedString.cpp:
1713         * platform/DeprecatedString.h:
1714         * platform/DeprecatedStringList.cpp:
1715         * platform/DeprecatedStringList.h:
1716         * platform/DeprecatedValueList.h:
1717         * platform/DeprecatedValueListImpl.cpp:
1718         * platform/DeprecatedValueListImpl.h:
1719         * platform/FloatSize.h:
1720         * platform/Font.cpp:
1721         * platform/KURL.cpp:
1722         * platform/RegularExpression.cpp:
1723         * platform/RegularExpression.h:
1724         * platform/SegmentedString.h:
1725         * platform/StreamingTextDecoder.cpp:
1726         * platform/String.cpp:
1727         * platform/StringImpl.cpp:
1728         * platform/TextEncoding.cpp:
1729         * platform/TransferJob.cpp:
1730         * platform/TransferJob.h:
1731         * platform/TransferJobInternal.h:
1732         * platform/gdk/FrameGdk.cpp:
1733         * platform/gdk/TemporaryLinkStubs.cpp:
1734         * platform/mac/ClipboardMac.h:
1735         * platform/mac/ClipboardMac.mm:
1736         * platform/mac/CursorMac.mm:
1737         * platform/mac/DeprecatedStringMac.mm: Added.
1738         * platform/mac/FontCacheMac.mm:
1739         * platform/mac/FontMac.mm:
1740         * platform/mac/FoundationExtras.h:
1741         * platform/mac/ImageMac.mm:
1742         * platform/mac/KURLMac.mm:
1743         * platform/mac/MouseEventMac.mm: Removed.
1744         * platform/mac/QStringListMac.mm: Removed.
1745         * platform/mac/QStringMac.mm: Removed.
1746         * platform/mac/TransferJobMac.mm:
1747         * platform/mac/WebCoreTextArea.h:
1748         * platform/mac/WebCoreTextArea.mm:
1749         * platform/mac/WebCoreTextField.h:
1750         * platform/mac/WebCoreTextField.mm:
1751         * platform/mac/WidgetMac.mm:
1752         * platform/win/TemporaryLinkStubs.cpp:
1753         * rendering/DataRef.h:
1754         * rendering/DeprecatedRenderSelect.cpp:
1755         * rendering/DeprecatedRenderSelect.h:
1756         * rendering/DeprecatedSlider.cpp:
1757         * rendering/InlineFlowBox.cpp:
1758         * rendering/RenderApplet.cpp:
1759         * rendering/RenderBlock.cpp:
1760         * rendering/RenderBlock.h:
1761         * rendering/RenderContainer.cpp:
1762         * rendering/RenderFileButton.cpp:
1763         * rendering/RenderFlexibleBox.cpp:
1764         * rendering/RenderFlow.cpp:
1765         * rendering/RenderFormElement.cpp:
1766         * rendering/RenderFrameSet.cpp:
1767         * rendering/RenderFrameSet.h:
1768         * rendering/RenderImage.cpp:
1769         * rendering/RenderInline.cpp:
1770         * rendering/RenderLayer.cpp:
1771         * rendering/RenderLayer.h:
1772         * rendering/RenderLineEdit.cpp:
1773         * rendering/RenderListItem.cpp:
1774         * rendering/RenderListMarker.cpp:
1775         * rendering/RenderObject.cpp:
1776         * rendering/RenderObject.h:
1777         * rendering/RenderPartObject.cpp:
1778         * rendering/RenderReplaced.cpp:
1779         * rendering/RenderStyle.cpp: Added.
1780         * rendering/RenderStyle.h: Added.
1781         * rendering/RenderTable.cpp:
1782         * rendering/RenderTable.h:
1783         * rendering/RenderTableCell.cpp:
1784         * rendering/RenderTableCell.h:
1785         * rendering/RenderTableCol.cpp:
1786         * rendering/RenderTableCol.h:
1787         * rendering/RenderTableRow.cpp:
1788         * rendering/RenderTableSection.cpp:
1789         * rendering/RenderTableSection.h:
1790         * rendering/RenderText.cpp:
1791         * rendering/RenderText.h:
1792         * rendering/RenderTextArea.cpp:
1793         * rendering/RenderTextControl.cpp: Added.
1794         * rendering/RenderTextControl.h: Added.
1795         * rendering/RenderTextField.cpp: Removed.
1796         * rendering/RenderTextField.h: Removed.
1797         * rendering/RenderTheme.cpp:
1798         * rendering/RenderThemeMac.mm:
1799         * rendering/RenderTreeAsText.cpp:
1800         * rendering/RenderTreeAsText.h:
1801         * rendering/RenderView.cpp:
1802         * rendering/RenderWidget.cpp:
1803         * rendering/bidi.cpp:
1804         * rendering/render_style.cpp: Removed.
1805         * rendering/render_style.h: Removed.
1806         * xml/XSLStyleSheet.cpp:
1807         * xml/XSLTProcessor.cpp:
1808         * xml/xmlhttprequest.cpp:
1809         * xpath/impl/XPathParser.cpp:
1810
1811 2006-07-09  Rob Buis  <buis@kde.org>
1812
1813         Reviewed by Darin.
1814
1815         http://bugzilla.opendarwin.org/show_bug.cgi?id=8251
1816         navigator.platform incorrect in WebKit.app on Intel Macs
1817
1818         For navigator.platform return "MacIntel" for Intel processors, "MacPPC"
1819         otherwise.
1820
1821         * bindings/js/kjs_navigator.cpp:
1822         (KJS::Navigator::getValueProperty):
1823
1824 2006-07-08  Timothy Hatcher  <timothy@apple.com>
1825
1826         Reviewed by Maciej.
1827
1828         Bug 5312: comments aren't available via DOM
1829         http://bugzilla.opendarwin.org/show_bug.cgi?id=5312
1830
1831         <rdar://problem/4564414> getting comments via DOM isn't working (5312)
1832         <rdar://problem/4545691> DOM_COMMENT node masking out real DOM elements
1833
1834         * dom/Document.cpp:
1835         (WebCore::Document::removedLastRef): set m_documentElement to 0
1836         (WebCore::Document::childrenChanged): invalidate the document element we have cached in case it was replaced
1837         (WebCore::Document::documentElement): cache the first element as the document node if m_documentElement is 0
1838         * dom/Document.h: added m_documentElement
1839         * html/HTMLDocument.cpp: removed documentElement(), HTML documents just use Document's documentElement()
1840         * html/HTMLDocument.h: ditto
1841         * html/HTMLParser.cpp:
1842         (WebCore::HTMLParser::handleError): make a new HTML node is the document's firstChild is NULL or
1843         the firstChild is not a HTML element (like a comment)
1844         * html/HTMLTokenizer.cpp:
1845         (WebCore::HTMLTokenizer::parseComment): removed the #ifdef to include comment nodes
1846
1847 2006-07-08  Anders Carlsson  <acarlsson@apple.com>
1848
1849         Reviewed by Darin, tweaked slightly and landed by Maciej.
1850
1851         http://bugzilla.opendarwin.org/show_bug.cgi?id=9787
1852         fast/frames tests failing (bad pointer to owner element) under MallocScribble
1853         
1854         * html/HTMLFrameElement.cpp:
1855         (WebCore::HTMLFrameElement::close):
1856         Disconnect the owner element of our frame.
1857         
1858         * html/HTMLIFrameElement.cpp:
1859         (WebCore::HTMLIFrameElement::attach):
1860         Don't call setFrame here.
1861         
1862         * html/HTMLPlugInElement.cpp:
1863         (WebCore::HTMLPlugInElement::detach):
1864         Disconnect the owner element of our frame.
1865
1866         * html/HTMLPlugInElement.h:
1867         (WebCore::HTMLPlugInElement::setFrameName):        
1868         New function.
1869         
1870         * page/Frame.cpp:
1871         (WebCore::Frame::Frame):
1872         Don't call setFrame.
1873         
1874         (WebCore::Frame::~Frame):
1875         Null out the owner element.
1876         
1877         (WebCore::Frame::requestObject):
1878         When an object creates a child frame, assign it a name so it can be
1879         accessed from HTMLPlugInElement.
1880         
1881         * rendering/RenderPart.cpp:
1882         (WebCore::RenderPart::RenderPart):
1883         (WebCore::RenderPart::~RenderPart):
1884         * rendering/RenderPart.h:
1885         Get rid of setFrame.
1886
1887 2006-07-08  Darin Adler  <darin@apple.com>
1888
1889         Reviewed by Geoff.
1890
1891         - better fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9622
1892           REGRESSION: showModalDialog returnValue ignored, function result is always "undefined"
1893
1894         * bindings/js/kjs_window.cpp:
1895         (KJS::showModalDialog): Set the return value after returning from the function if the
1896         window is not cleared; this is a better way to handle the case where the window does
1897         not get cleared before returning, and handles some new cases created by slight changes
1898         in the latest Safari properly too.
1899         (KJS::Window::clear): Changed logic slightly so we always store the result of getDirect
1900         into the return value slot -- the old code left the storage untouched if it was 0.
1901         Also made it only overwrite the return value slot if it's 0.
1902
1903         * bindings/js/kjs_proxy.h:
1904         * bindings/js/kjs_proxy.cpp:
1905         * bindings/js/kjs_window.h:
1906         * bindings/js/kjs_window.cpp:
1907         * page/Frame.cpp:
1908         Roll the previous fix out.
1909
1910 2006-07-08  Darin Adler  <darin@apple.com>
1911
1912         - try to fix Windows build
1913
1914         * WebCore.vcproj/WebCore/WebCore.vcproj: Add missing source files.
1915
1916 === Safari-521.15 ===
1917
1918 2006-07-07  Justin Garcia  <justin.garcia@apple.com>
1919
1920         Reviewed by levi
1921         
1922         Fix Mail ToDo crashers.
1923
1924         * dom/Range.cpp:
1925         (WebCore::Range::compareBoundaryPoints): Added an ASSERT that both
1926         containers are non-null and an early return.
1927         * editing/Selection.cpp:
1928         (WebCore::Selection::validate): Fix a dangling start/end.
1929         (WebCore::Selection::adjustForEditableContent): Added an early return if
1930         m_start or m_end are null.
1931         (WebCore::Selection::isContentEditable): Use isRichlyEditablePosition.
1932         (WebCore::Selection::isContentRichlyEditable): Ditto.
1933         * editing/Selection.h:
1934         * editing/VisiblePosition.cpp:
1935         (WebCore::VisiblePosition::next): Use the new highestEditableRoot.
1936         (WebCore::VisiblePosition::previous): Ditto.
1937         * editing/htmlediting.cpp:
1938         (WebCore::highestEditableRoot): Takes in a position.
1939         (WebCore::isEditablePosition): Added.
1940         (WebCore::isRichlyEditablePosition): Added.
1941         (WebCore::rootEditableElement): Added.
1942         (WebCore::nextCandidate): Moved and split out from nextVisiblePosition.
1943         (WebCore::nextVisuallyDistinctCandidate): Ditto.
1944         (WebCore::previousCandidate): Moved and split out from previousVisiblePosition.
1945         (WebCore::previousVisuallyDistinctCandidate): Ditto.
1946         (WebCore::firstEditablePositionAfterPositionInRoot): Iterate over positions,
1947         using nextVisuallyDistinctCandidate, skipping atomic nodes that are non-editable.
1948         (WebCore::lastEditablePositionBeforePositionInRoot): Ditto.
1949         * editing/htmlediting.h:
1950         * editing/visible_units.cpp:
1951         (WebCore::startOfWord): Added a FIXME.
1952
1953 2006-07-07  Levi Weintraub  <lweintraub@apple.com>
1954
1955         Reviewed by justin
1956
1957         Allowed deletion typing commands to take in a granularity
1958
1959         * bridge/mac/WebCoreFrameBridge.h: Pass granularity across the bridge
1960         * bridge/mac/WebCoreFrameBridge.mm: Ditto
1961         (-[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:]):
1962         (-[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:]):
1963         * editing/TypingCommand.cpp: Constructors take in a granularity
1964         (WebCore::TypingCommand::TypingCommand):
1965         (WebCore::TypingCommand::deleteKeyPressed):
1966         (WebCore::TypingCommand::forwardDeleteKeyPressed):
1967         * editing/TypingCommand.h: ditto
1968         * page/Frame.h: Fixed bug that shouldDeleteSelection wasn't virtual
1969
1970 2006-07-07  Brady Eidson  <beidson@apple.com>
1971
1972         Reviewed by Anders and Tim Hatcher
1973
1974         Added an accessor to a SQLite config option to change its disk-syncing behavior.
1975         Used this accessor to significantly speed up writes to the Icon DB.
1976
1977         * icon/IconDatabase.cpp:
1978         (WebCore::IconDatabase::open):  Disable full syncing to the SQLite db to speed up writes to the icondb
1979
1980         * icon/SQLDatabase.cpp:
1981         (SQLDatabase::setFullsync):
1982         (SQLDatabase::setSynchronous):
1983         * icon/SQLDatabase.h:
1984         (WebCore::SQLDatabase::):  Added accessor to the SQLite config pragma "synchronous"
1985
1986 2006-07-07  Darin Adler  <darin@apple.com>
1987
1988         Reviewed by Maciej.
1989
1990         - fixed a storage leak noticed by the buildbot
1991
1992         * dom/Document.cpp: (WebCore::Document::removedLastRef):
1993         Call delete on the markers before clearing the map containing them.
1994
1995 2006-07-08  Anders Carlsson  <acarlsson@apple.com>
1996
1997         Reviewed by Brady.
1998
1999         http://bugzilla.opendarwin.org/show_bug.cgi?id=9777
2000         Reproducible crash in Loading/Frames in ToT.
2001         
2002         The problem was that the renderpart destructor resets the frame's 
2003         owner element. For iframes, this should only be done when the element is 
2004         going to be removed from the document.
2005         
2006         * html/HTMLIFrameElement.cpp:
2007         (WebCore::HTMLIFrameElement::~HTMLIFrameElement):
2008         (WebCore::HTMLIFrameElement::willRemove):
2009         (WebCore::HTMLIFrameElement::removedFromDocument):
2010         (WebCore::HTMLIFrameElement::detach):        
2011         * html/HTMLIFrameElement.h:
2012         Remove the frame in willRemove instead.
2013         
2014         * rendering/RenderPart.cpp:
2015         (WebCore::RenderPart::RenderPart):
2016         (WebCore::RenderPart::~RenderPart):
2017         * rendering/RenderPart.h:
2018         Don't call setFrame(0) in the destructor when the element is an iframe element.
2019
2020 2006-07-07  Darin Adler  <darin@apple.com>
2021
2022         Reviewed by Anders.
2023
2024         - fixed a storage leak noticed by the buildbot
2025
2026         * page/FrameView.cpp: (WebCore::FrameViewPrivate::~FrameViewPrivate):
2027         Delete m_scheduledEvents.
2028
2029 2006-07-07  Darin Adler  <darin@apple.com>
2030
2031         Reviewed by Adele.
2032
2033         - fixed a couple of storage leaks noticed by the buildbot
2034
2035         * html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::attach):
2036         Call deref on the style after calling setRenderStyle, since styleForRenderer
2037         returns us a "ref'd" RenderStyle object.
2038         * html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::attach): Ditto.
2039
2040 2006-07-07  Darin Adler  <darin@apple.com>
2041
2042         Reviewed by Adele.
2043
2044         - fix some license mistakes
2045
2046         * LICENSE-APPLE: Added more years of publication to the copyright here.
2047
2048         * html/CanvasGradient.idl: Corrected license on this file. It had the wrong one.
2049         * html/CanvasPattern.idl: Ditto.
2050         * html/CanvasRenderingContext2D.idl: Ditto.
2051         * html/HTMLCanvasElement.idl: Ditto.
2052
2053 2006-07-06  Levi Weintraub  <lweintraub@apple.com>
2054
2055         Reviewed by justin
2056
2057         Improved table editing: pressing delete directly before or after a table will now select
2058         the table first, then delete it, instead of just deleting it. Useful for when the table's
2059         existence is non-obvious.
2060
2061         * bridge/mac/FrameMac.h: Added shouldDeleteSelection, which allows WebCore to trigger
2062         deletion editing deligates
2063         * bridge/mac/FrameMac.mm: ditto
2064         (WebCore::FrameMac::shouldDeleteSelection):
2065         * bridge/mac/WebCoreFrameBridge.h: ditto
2066         * editing/TypingCommand.cpp: Implemented check for a caret position next to a table, and
2067         subsequent selection (as opposed to removal)
2068         (WebCore::TypingCommand::deleteKeyPressed):
2069         (WebCore::TypingCommand::forwardDeleteKeyPressed):
2070         * page/Frame.cpp: shouldDeleteSelection added
2071         (WebCore::Frame::shouldDeleteSelection):
2072         * page/Frame.h: ditto
2073
2074 2006-07-07  Sam Weinig  <sam.weinig@gmail.com>
2075
2076         Reviewed by Eric.
2077
2078         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9768
2079           Split XSLImportRule out of XSLStyleSheet.* into separate 
2080           files (one class per file).
2081
2082         * WebCore.xcodeproj/project.pbxproj:
2083         * xml/XSLImportRule.cpp: Added.
2084         (WebCore::XSLImportRule::XSLImportRule):
2085         (WebCore::XSLImportRule::parentStyleSheet):
2086         (WebCore::XSLImportRule::loadSheet):
2087         * xml/XSLImportRule.h: Added.
2088         * xml/XSLStyleSheet.cpp:
2089         * xml/XSLStyleSheet.h:
2090
2091 2006-07-07  Anders Carlsson  <acarlsson@apple.com>
2092
2093         Reviewed by Darin.
2094
2095         http://bugzilla.opendarwin.org/show_bug.cgi?id=8300
2096         REGRESSION: First mouse click is randomly ignored when clicking on checkbox and radio buttons
2097         
2098         * css/html4.css:
2099         Set "-webkit-user-select: ignore" on radio buttons and check boxes .
2100         
2101 2006-07-07  Maciej Stachowiak  <mjs@apple.com>
2102
2103         Reviewed by Tim Hatcher.
2104
2105         - fix 20 Node leaks on fast/events tests - these should be the last ones
2106
2107         * bindings/objc/DOMEvents.mm:
2108         (-[DOMEvent dealloc]): implement - deref the event!
2109         (-[DOMEvent finalize]): ditto
2110
2111 2006-07-06  Maciej Stachowiak  <mjs@apple.com>
2112
2113         Reviewed by Tim Hatcher.
2114
2115         - fix 26 Node leaks on fast/dom tests
2116
2117         * dom/Document.cpp:
2118         (WebCore::Document::removedLastRef): delete tokenizer - if we are still parsing at this point, we don't
2119         want nodes held by the parser to keep the document alive.
2120         * html/HTMLParser.cpp:
2121         (WebCore::RefNonDocNodePtr::RefNonDocNodePtr): Smart pointer that acts like RefPtr for Node,
2122         but avoids refing document nodes to avoid cycles.
2123         (WebCore::RefNonDocNodePtr::~RefNonDocNodePtr):
2124         (WebCore::RefNonDocNodePtr::get):
2125         (WebCore::RefNonDocNodePtr::operator*):
2126         (WebCore::RefNonDocNodePtr::operator->):
2127         (WebCore::RefNonDocNodePtr::operator!):
2128         (WebCore::RefNonDocNodePtr::operator UnspecifiedBoolType):
2129         (WebCore::RefNonDocNodePtr::operator=):
2130         (WebCore::operator==):
2131         (WebCore::operator!=):
2132         (WebCore::HTMLStackElem): Use a RefNonDocNodePtr instead of RefPtr<Node>
2133         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Use a RefPtr here to avoid crashing
2134
2135 2006-07-06  Adele Peterson  <adele@apple.com>
2136
2137         Reviewed by Maciej.
2138
2139         Fixed new popup control to open up when the spacebar and the up and down arrows are pressed.
2140
2141         - Fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=9762
2142         [Native pop up] Highlighted item text is black instead of white
2143
2144         * html/HTMLSelectElement.cpp:
2145         (WebCore::HTMLSelectElement::isKeyboardFocusable): Added.
2146         (WebCore::HTMLSelectElement::isMouseFocusable): Added.
2147         (WebCore::HTMLSelectElement::defaultEventHandler): Updated to showPopup for up and down arrow keys and spacebar.
2148         * html/HTMLSelectElement.h: (WebCore::HTMLSelectElement::shouldUseMenuList): Made this const.
2149         * rendering/RenderPopupMenu.cpp: (WebCore::RenderPopupMenu::populate): Added FIXME.
2150         * rendering/RenderPopupMenuMac.mm:
2151         (WebCore::RenderPopupMenuMac::showPopup): Updated to save the NSEvent that triggers the popup, so we can send
2152         fake mouseUp and keyUp events when the NSMenu returns.
2153         (WebCore::RenderPopupMenuMac::addGroupLabel): Only set the NSForegroundColorAttributeName attribute if the text isn't black.
2154         Follow-up bug about other colors: http://bugzilla.opendarwin.org/show_bug.cgi?id=9769
2155         (WebCore::RenderPopupMenuMac::addOption): ditto.
2156         * bridge/mac/FrameMac.h: (WebCore::FrameMac::currentEvent): Returns the current NSEvent.
2157
2158 2006-07-06  Justin Garcia  <justin.garcia@apple.com>
2159
2160         Reviewed by levi
2161         
2162         <rdar://problem/4609184>
2163         Mail crashes at WebCore::Selection::adjustForEditableContent
2164         <rdar://problem/4609140>
2165         Crash at WebCore::Range::compareBoundaryPoints
2166         
2167         * editing/Selection.cpp:
2168         (WebCore::Selection::adjustForEditableContent):
2169         * editing/VisiblePosition.cpp:
2170         (WebCore::VisiblePosition::next): Moved code into a helper function.
2171         (WebCore::VisiblePosition::previous): Ditto.
2172         * editing/htmlediting.cpp:
2173         (WebCore::comparePositions): Moved from Selection.cpp.
2174         (WebCore::lowestEditableAncestor): Added.  Returns rootEditableElement
2175         for a node in editable content and the rootEditableElement for the first
2176         ancestor that's editable for a node in non-editable content.
2177         (WebCore::firstEditablePositionAfterPositionInRoot): 
2178         (WebCore::lastEditablePositionBeforePositionInRoot):
2179         * editing/htmlediting.h:
2180
2181 2006-07-06  Anders Carlsson  <acarlsson@apple.com>
2182
2183         Reviewed by Adele.
2184
2185         http://bugzilla.opendarwin.org/show_bug.cgi?id=9528
2186         REGRESSION: arrow key skips '>' in Bugzilla replies due to '\n' in text nodes
2187         
2188         Patch by Darin, tweaked by Anders.
2189         
2190         * html/HTMLElement.cpp:
2191         (WebCore::HTMLElement::setInnerText):
2192         Convert newline characters to <br> elements. I've verified that what's done here is what WinIE does when setting innerText.
2193         
2194         (WebCore::HTMLElement::setOuterText):
2195         Fix comment.
2196
2197         * rendering/RenderTextField.cpp:
2198         (WebCore::RenderTextField::textWithHardLineBreaks):
2199         Remove assert. m_div->firstChild() can be null now because setInnerText doesn't create
2200         text nodes for empty strings anymore.
2201
2202 2006-07-06  Adele Peterson  <adele@apple.com>
2203
2204         Reviewed by Tim Hatcher.
2205
2206         - Speculative fix for <rdar://problem/4605532> unrepro crash at cnn.com after upgrading to 10.4.7 (but happening with 10.4.6 too)
2207
2208         * page/FrameView.cpp: (WebCore::FrameView::layout): Ref's the view during layout, since a recalcStyle could cause the view to be deleted.
2209         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.
2210         * page/FrameView.h: (WebCore::FrameView::hasOneRef): Added.
2211
2212 2006-07-06  Anders Carlsson  <acarlsson@apple.com>
2213
2214         Reviewed by Maciej.
2215
2216         <rdar://problem/4610891> Support overflow events
2217         
2218         * DerivedSources.make:
2219         Add generated sources.
2220         
2221         * WebCore.xcodeproj/project.pbxproj:
2222         Add new files.
2223         
2224         * bindings/js/kjs_events.cpp:
2225         (KJS::toJS):
2226         Support creating wrappers for overflow events..
2227         
2228         * bindings/objc/DOMEvents.h:
2229         * bindings/objc/DOMEvents.mm:
2230         (+[DOMEvent _eventWith:]):
2231         (-[DOMOverflowEvent _overflowEvent]):
2232         (-[DOMOverflowEvent orient]):
2233         (-[DOMOverflowEvent horizontalOverflow]):
2234         (-[DOMOverflowEvent verticalOverflow]):
2235         Add Objective-C wrapper for overflow events.
2236         
2237         * dom/Event.cpp:
2238         (WebCore::Event::isOverflowEvent):        
2239         * dom/Event.h:
2240         * dom/EventNames.h:
2241         * dom/OverflowEvent.cpp: Added.
2242         (WebCore::OverflowEvent::OverflowEvent):
2243         (WebCore::OverflowEvent::isOverflowEvent):
2244         * dom/OverflowEvent.h: Added.
2245         (WebCore::OverflowEvent::):
2246         (WebCore::OverflowEvent::orient):
2247         (WebCore::OverflowEvent::horizontalOverflow):
2248         (WebCore::OverflowEvent::verticalOverflow):
2249         * dom/OverflowEvent.idl: Added.
2250         Add overflow events.
2251         
2252         * page/FrameView.cpp:
2253         (WebCore::FrameViewPrivate::FrameViewPrivate):
2254         (WebCore::FrameView::applyOverflowToViewport):        
2255         (WebCore::FrameView::layout):
2256         Dispatch any scheduled events when layout is done.
2257         
2258         (WebCore::FrameView::scheduleEvent):
2259         New function which schedules an event.
2260         
2261         (WebCore::FrameView::updateOverflowStatus):
2262         Update overflow status for the viewport.
2263         
2264         (WebCore::FrameView::dispatchScheduledEvents):
2265         New function which dispatches all scheduled events.
2266         
2267         * page/FrameView.h:
2268         Add declarations.
2269         
2270         * rendering/RenderLayer.cpp:
2271         (WebCore::RenderLayer::RenderLayer):
2272         (WebCore::RenderLayer::updateOverflowStatus):
2273         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
2274         * rendering/RenderLayer.h:
2275         Schedule overflow events when overflow status changes.
2276
2277 2006-07-06  Timothy Hatcher  <timothy@apple.com>
2278
2279         Reviewed by Geoff.
2280
2281         <rdar://problem/4610881> Expose scroll-related JS properties to ObjC DOM interface
2282         <rdar://problem/4519675> offsetLeft, offsetTop, offsetHeight, and offsetWidth
2283         properties are not exposed to ObjC
2284
2285         * bindings/objc/DOMPrivate.h:
2286         * bindings/objc/DOMHTML.mm:
2287         (-[DOMHTMLElement offsetLeft]):
2288         (-[DOMHTMLElement offsetTop]):
2289         (-[DOMHTMLElement offsetWidth]):
2290         (-[DOMHTMLElement offsetHeight]):
2291         (-[DOMHTMLElement offsetParent]):
2292         (-[DOMHTMLElement clientWidth]):
2293         (-[DOMHTMLElement clientHeight]):
2294         (-[DOMHTMLElement scrollLeft]):
2295         (-[DOMHTMLElement setScrollLeft:]):
2296         (-[DOMHTMLElement scrollTop]):
2297         (-[DOMHTMLElement setScrollTop:]):
2298         (-[DOMHTMLElement scrollWidth]):
2299         (-[DOMHTMLElement scrollHeight]):
2300
2301 2006-07-06  Maciej Stachowiak  <mjs@apple.com>
2302
2303         Reviewed by Adele.
2304
2305         - fix 435 more layout tests Node leaks
2306
2307         * editing/CompositeEditCommand.cpp:
2308         (WebCore::CompositeEditCommand::moveParagraphs): fix more instances of leaked DOM ranges
2309
2310 2006-07-06  David Harrison  <harrison@apple.com>
2311
2312         Reviewed by Geoff
2313
2314         <rdar://problem/4565031> innerHTML of XMP tag returns special characters like '&gt;' instead of '>'
2315  
2316         Test: fast/innerHTML/006.html
2317        
2318         * editing/markup.cpp:
2319         (WebCore::startMarkup):
2320         (WebCore::createMarkup):
2321         Do not special quote content of XMP nodes.
2322
2323 2006-07-06  Maciej Stachowiak  <mjs@apple.com>
2324
2325         Not reviewed - build fix.
2326
2327         - back out earlier leak fix, as it caused a crash on one of the fast/invalid layout tests
2328
2329         * dom/Document.cpp:
2330         (WebCore::Document::removedLastRef):
2331         * html/HTMLParser.cpp:
2332         (WebCore::HTMLStackElem::HTMLStackElem):
2333         (WebCore::HTMLParser::popNestedHeaderTag):
2334         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
2335         (WebCore::HTMLParser::reopenResidualStyleTags):
2336         (WebCore::HTMLParser::popBlock):
2337         (WebCore::HTMLParser::popOneBlock):
2338
2339 2006-07-06  Maciej Stachowiak  <mjs@apple.com>
2340
2341         Reviewed by Anders.
2342
2343         - fix ~3000 Node leaks on the editing tests
2344
2345         * editing/CompositeEditCommand.cpp:
2346         (WebCore::CompositeEditCommand::moveParagraphs): put a newly created Range in a RefPtr
2347         to avoid leaking it, as this leaks the whole document.
2348
2349 2006-07-06  Maciej Stachowiak  <mjs@apple.com>
2350
2351         Reviewed by Anders.
2352
2353         - fix 26 Node leaks on various fast/dom tests
2354
2355         * dom/Document.cpp:
2356         (WebCore::Document::removedLastRef): Delete the tokenizer here, since if we are in mid-parse,
2357         the parser might hold refs on some of our children that have self-only refs.
2358         * html/HTMLParser.cpp:
2359         (WebCore::HTMLStackElem::HTMLStackElem): don't ref the node if it is a document to avoid ref cycles
2360         (WebCore::HTMLStackElem::~HTMLStackElem): ditto
2361         (WebCore::HTMLStackElem::node): changed interface a bit to support the above
2362         (WebCore::HTMLStackElem::setNode): ditto
2363         (WebCore::HTMLParser::popNestedHeaderTag): use new interface to HTMLStackElem
2364         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): ditto
2365         (WebCore::HTMLParser::reopenResidualStyleTags): ditto
2366         (WebCore::HTMLParser::popBlock): ditto
2367         (WebCore::HTMLParser::popOneBlock): ditto
2368
2369 2006-07-06  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2370
2371         Reviewed by Adele.
2372         
2373         * rendering/RenderMenuList.h:
2374         (WebCore::RenderMenuList::createsAnonymousWrapper): This method replaces
2375         allowsReusingAnonymousChild() and has the opposite meaning.
2376         
2377 2006-07-05  Adele Peterson  <adele@apple.com>
2378
2379         Build fixes.
2380
2381         * WebCore.vcproj/WebCore/WebCore.vcproj:
2382         * platform/win/TemporaryLinkStubs.cpp:
2383         * rendering/RenderMenuList.cpp:
2384         (WebCore::RenderMenuList::calcMinMaxWidth):
2385         * rendering/RenderPopupMenuWin.h:
2386         (WebCore::RenderPopupMenuWin::RenderPopupMenuWin):
2387         * rendering/RenderThemeWin.cpp:
2388
2389 2006-07-05  Maciej Stachowiak  <mjs@apple.com>
2390
2391         Reviewed by Adele.
2392
2393         - fix 308 Node leaks on the editing layout tests
2394
2395         * dom/Document.cpp: (WebCore::Document::removedLastRef): Clear the markers once there
2396         are no real refs on the document, otherwise a self-only reference cycle w/ the document
2397         can occur.
2398
2399 2006-07-05  Adele Peterson  <adele@apple.com>
2400
2401         Reviewed by Maciej and Hyatt.
2402
2403         Initial implementation of popup menu control.  This can be turned on by setting -webkit-appearance: menulist on a select element.
2404
2405         * WebCore.xcodeproj/project.pbxproj: Added RenderMenuList.h, RenderMenuList.cpp, RenderPopupMenu.h, RenderPopupMenu.cpp, 
2406         RenderPopupMenuWin.h, RenderPopupMenuMac.h, RenderPopupMenuMac.mm, 
2407     
2408         * dom/Node.cpp:
2409         (WebCore::Node::renderStyle): Added. Returns the renderer's style.  If there's no renderer, returns's a RenderStyle that's kept by the node.
2410         This is important for HTMLOptGroupElement and HTMLOptionElement, which don't have renderers.
2411         (WebCore::Node::setRenderStyle): Added.
2412         * dom/Node.h:
2413         * dom/Element.cpp: (WebCore::Element::recalcStyle): Updated to use renderStyle so recalcStyle will work for HTMLOptionElements and HTMLOptGroupElements.
2414            
2415         * css/cssstyleselector.cpp: Updated to call renderStyle method on the node, so resolving style works on elements w/o renderers that cache style. 
2416         (WebCore::CSSStyleSelector::initForStyleResolve):
2417         (WebCore::CSSStyleSelector::locateCousinList):
2418         (WebCore::CSSStyleSelector::canShareStyleWithElement):
2419         (WebCore::CSSStyleSelector::locateSharedStyle):
2420         (WebCore::CSSStyleSelector::checkOneSelector):
2421
2422         * css/html4.css: Removed display:none from options and optgroups, since we're now caching style for these elements.
2423         Added font-weight styles for option and optgroup.
2424         
2425         * html/HTMLOptGroupElement.h: Added m_style to keep track of a RenderStyle for the element, even though we aren't creating a renderer.
2426         This will allow us to honor style for optgroups and options for popup menus (and eventually list boxes too).
2427         (WebCore::HTMLOptGroupElement::rendererIsNeeded): Added.
2428         (WebCore::HTMLOptGroupElement::renderStyle): Added.
2429         * html/HTMLOptionElement.h: ditto.
2430         (WebCore::HTMLOptionElement::rendererIsNeeded): Added.
2431         (WebCore::HTMLOptionElement::renderStyle): Added.
2432         
2433         * html/HTMLOptGroupElement.cpp:
2434         (WebCore::HTMLOptGroupElement::HTMLOptGroupElement): Initialize m_style.
2435         (WebCore::HTMLOptGroupElement::attach): Set the renderStyle.
2436         (WebCore::HTMLOptGroupElement::detach): Clear m_style.
2437         (WebCore::HTMLOptGroupElement::setRenderStyle): Added.
2438         (WebCore::HTMLOptGroupElement::groupLabelText): Added.
2439         * html/HTMLOptionElement.cpp: ditto.
2440         (WebCore::HTMLOptionElement::HTMLOptionElement):
2441         (WebCore::HTMLOptionElement::attach):
2442         (WebCore::HTMLOptionElement::detach):
2443         (WebCore::HTMLOptionElement::setRenderStyle):
2444         (WebCore::HTMLOptionElement::optionText):
2445
2446         * html/HTMLSelectElement.cpp: Added code to use the new RenderMenuList if the appearance is set to MenuListAppearance, 
2447         and if we're not creating a list box renderer.
2448         (WebCore::HTMLSelectElement::recalcStyle):
2449         (WebCore::HTMLSelectElement::createRenderer):
2450         (WebCore::HTMLSelectElement::setRecalcListItems):
2451         (WebCore::HTMLSelectElement::reset):
2452         (WebCore::HTMLSelectElement::notifyOptionSelected):
2453         (WebCore::HTMLSelectElement::defaultEventHandler):
2454         * html/HTMLSelectElement.h:
2455
2456         * WebCore.exp: Added _wkPopupMenu.
2457         * platform/mac/WebCoreSystemInterface.h: Added wkPopupMenu to get the NSMenu to pop up.
2458         * platform/mac/WebCoreSystemInterface.mm:
2459
2460         * platform/win/TemporaryLinkStubs.cpp: Added stubs for RenderPopupMenuWin.
2461         (RenderPopupMenuWin::RenderPopupMenuWin):
2462         (RenderPopupMenuWin::~RenderPopupMenuWin):
2463         (RenderPopupMenuWin::clear):
2464         (RenderPopupMenuWin::populate):
2465         (RenderPopupMenuWin::showPopup):
2466         (RenderPopupMenuWin::addSeparator):
2467         (RenderPopupMenuWin::addGroupLabel):
2468         (RenderPopupMenuWin::addOption):
2469         * rendering/RenderPopupMenuWin.h: Added.
2470
2471         * rendering/RenderPopupMenu.cpp: Added.
2472         (WebCore::RenderPopupMenu::RenderPopupMenu):
2473         (WebCore::RenderPopupMenu::~RenderPopupMenu):
2474         (WebCore::RenderPopupMenu::clear):
2475         (WebCore::RenderPopupMenu::populate): Walks the DOM tree, and adds separators, options, and group labels to the RenderPopupMenu.
2476         (WebCore::RenderPopupMenu::showPopup):
2477         (WebCore::RenderPopupMenu::addSeparator):
2478         (WebCore::RenderPopupMenu::addGroupLabel):
2479         (WebCore::RenderPopupMenu::addOption):
2480         * rendering/RenderPopupMenu.h: Added.
2481         (WebCore::RenderPopupMenu::renderName):
2482         (WebCore::RenderPopupMenu::getRenderMenuList):
2483         * rendering/RenderPopupMenuMac.h: Added.
2484         * rendering/RenderPopupMenuMac.mm: Added.
2485         (WebCore::RenderPopupMenuMac::RenderPopupMenuMac):
2486         (WebCore::RenderPopupMenuMac::~RenderPopupMenuMac):
2487         (WebCore::RenderPopupMenuMac::clear): Removes all items from the menu.
2488         (WebCore::RenderPopupMenuMac::populate): Disables menuChangedMessages before populating the menu.
2489         (WebCore::RenderPopupMenuMac::showPopup): Calculates the right position, and calls wkPopupMenu.
2490         (WebCore::RenderPopupMenuMac::addSeparator):
2491         (WebCore::RenderPopupMenuMac::addGroupLabel):
2492         (WebCore::RenderPopupMenuMac::addOption):
2493         
2494         * rendering/RenderMenuList.cpp: Added.
2495         (WebCore::RenderMenuList::RenderMenuList):
2496         (WebCore::RenderMenuList::addChild):
2497         (WebCore::RenderMenuList::removeChild):
2498         (WebCore::RenderMenuList::setStyle):
2499         (WebCore::RenderMenuList::updateFromElement): If the options have changed, iterate through the children to find the menu item with the widest text.
2500         Set the button text to the selected item's text.
2501         (WebCore::RenderMenuList::setText):
2502         (WebCore::RenderMenuList::paintObject):
2503         (WebCore::RenderMenuList::baselinePosition):
2504         (WebCore::RenderMenuList::calcMinMaxWidth):
2505         (WebCore::RenderMenuList::showPopup):
2506         (WebCore::RenderMenuList::layout):
2507         (WebCore::RenderMenuList::updateSelection):
2508         (WebCore::RenderMenuList::valueChanged):
2509         * rendering/RenderMenuList.h: Added.
2510         (WebCore::RenderMenuList::removeLeftoverAnonymousBoxes):
2511         (WebCore::RenderMenuList::allowsReusingAnonymousChild):
2512         (WebCore::RenderMenuList::canHaveChildren):
2513         (WebCore::RenderMenuList::renderName):
2514         (WebCore::RenderMenuList::setOptionsChanged):
2515         (WebCore::RenderMenuList::selectionChanged):
2516         (WebCore::RenderMenuList::setSelectionChanged):
2517         (WebCore::RenderMenuList::hasPopupMenu):
2518
2519         * rendering/RenderTheme.cpp: Added cases for MenuListAppearance.
2520         (WebCore::RenderTheme::adjustStyle):
2521         (WebCore::RenderTheme::paint):
2522         (WebCore::RenderTheme::paintBorderOnly):
2523         (WebCore::RenderTheme::isControlStyled):
2524         (WebCore::RenderTheme::adjustMenuListStyle):
2525         (WebCore::RenderTheme::createPopupMenu): creates platform-specific RenderPopupMenu.
2526         * rendering/RenderTheme.h:
2527         (WebCore::RenderTheme::sizeOfArrowControl): Added. 
2528         (WebCore::RenderTheme::paintMenuList): Added.
2529         * rendering/RenderThemeMac.h:
2530         * rendering/RenderThemeMac.mm:
2531         (WebCore::RenderThemeMac::adjustRepaintRect):
2532         (WebCore::RenderThemeMac::paintMenuList):
2533         (WebCore::RenderThemeMac::adjustMenuListStyle):
2534         (WebCore::RenderThemeMac::setPopupButtonCellState):
2535         (WebCore::RenderThemeMac::createPopupMenu):
2536         (WebCore::RenderThemeMac::sizeOfArrowControl):
2537         * rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::createPopupMenu):
2538         * rendering/RenderThemeWin.h:
2539
2540 2006-07-05  Brady Eidson  <beidson@apple.com>
2541
2542         Reviewed by Tim Omernick.
2543
2544         IconDatabase now respects private browsing via the use of in memory, temporary tables
2545
2546         * bridge/mac/WebCoreIconDatabaseBridge.mm:
2547         (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
2548         (-[WebCoreIconDatabaseBridge iconURLForPageURL:]): Renamed WebCore::IconDatabase methods, changes reflected here
2549
2550         * icon/IconDatabase.cpp:
2551         (WebCore::IconDatabase::clearDatabase):
2552         (WebCore::IconDatabase::deletePrivateTables):
2553         (WebCore::IconDatabase::imageDataForIconID):
2554         (WebCore::IconDatabase::imageDataForIconURL):
2555         (WebCore::IconDatabase::imageDataForPageURL):
2556         (WebCore::IconDatabase::setPrivateBrowsingEnabled):
2557         (WebCore::IconDatabase::iconForPageURL):
2558         (WebCore::IconDatabase::iconURLForPageURL):
2559         (WebCore::IconDatabase::setIconDataForIconURL):
2560         (WebCore::IconDatabase::performSetIconDataForIconID):
2561         (WebCore::IconDatabase::establishTemporaryIconIDForEscapedIconURL):
2562         (WebCore::IconDatabase::establishIconIDForEscapedIconURL):
2563         (WebCore::IconDatabase::setHaveNoIconForIconURL):
2564         (WebCore::IconDatabase::setIconURLForPageURL):
2565         (WebCore::IconDatabase::performSetIconURLForPageURL):
2566         (WebCore::IconDatabase::hasIconForIconURL):
2567         -Some style/comment cleanups, but mainly putting private browsing handling in place
2568
2569         * icon/IconDatabase.h:  Some methods added, others renamed, some comments added
2570
2571         * icon/SQLStatement.cpp:
2572         (WebCore::SQLStatement::getColumnName):
2573         (WebCore::SQLStatement::getColumnName16):
2574         (WebCore::SQLStatement::getColumnText):
2575         (WebCore::SQLStatement::getColumnText16):
2576         -The above 4 had changes to return String() for empty results instead of "" as it's less expensive;
2577
2578 2006-07-05  John Sullivan  <sullivan@apple.com>
2579
2580         Reviewed by Darin and Adele.
2581         
2582         - fixed <rdar://problem/4609162> REGRESSION: When tabbing between links on a page, 
2583         the window doesn't scroll to link that's not in view
2584
2585         * html/HTMLAnchorElement.cpp:
2586         * html/HTMLAnchorElement.h:
2587         removed HTMLAnchorElement::focus and HTMLAnchorElement::blur. 
2588         
2589         HTMLAnchorElement::focus just called document()->setFocusNode(). The scroll-to-reveal
2590         code used to be inside document()->setFocusNode(), but now it's in Element::focus, and this override
2591         was preventing that code from running.
2592         
2593         HTMLAnchorElement::blur was exactly the same implementation as Element::blur (and there aren't any
2594         other implementations of ::blur in the class hierarchy in between). This change has no practical
2595         effect, other than removing duplicate code.
2596         
2597         Adele and I think that it was an oversight not to remove these two methods on 12/20/05
2598         these methods were removed from HTMLButtonElementImpl and HTMLInputElementImpl.
2599
2600 2006-07-05  Anders Carlsson  <acarlsson@apple.com>
2601
2602         * bridge/win/FrameWin.cpp:
2603         (WebCore::FrameWin::FrameWin):
2604         * bridge/win/FrameWin.h:
2605         * platform/win/TemporaryLinkStubs.cpp:
2606         (FrameWin::createFrame):
2607         Fix Win32 build.
2608
2609 2006-07-05  Anders Carlsson  <acarlsson@apple.com>
2610
2611         * WebCore.xcodeproj/project.pbxproj:
2612         Revert accidental change of debug format to DWARF.
2613
2614 2006-07-05  Anders Carlsson  <acarlsson@apple.com>
2615
2616         Reviewed by Maciej.
2617
2618         http://bugzilla.opendarwin.org/show_bug.cgi?id=3581
2619         iFrames set to display:none are Missing from frames array
2620
2621         * bridge/mac/FrameMac.h:
2622         * bridge/mac/FrameMac.mm:
2623         (WebCore::FrameMac::FrameMac):
2624         (WebCore::FrameMac::createFrame):
2625         * bridge/mac/WebCoreFrameBridge.h:
2626         * bridge/mac/WebCoreFrameBridge.mm:
2627         (-[WebCoreFrameBridge initSubframeWithOwnerElement:]):
2628         (-[WebCoreFrameBridge installInFrame:]):
2629         Modify to pass the owner element instead of the owner renderer.        
2630
2631         * dom/ContainerNode.cpp:
2632         (WebCore::ContainerNode::insertBefore):
2633         (WebCore::ContainerNode::replaceChild):
2634         (WebCore::ContainerNode::appendChild):
2635         Dispatch the node inserted events before attaching the nodes. This is what the
2636         tokenizer does.
2637         
2638         * html/HTMLFrameElement.cpp:
2639         (WebCore::HTMLFrameElement::openURL):
2640         (WebCore::HTMLFrameElement::attach):
2641         Pass the element to requestFrame.
2642         
2643         (WebCore::HTMLFrameElement::setLocation):
2644         Don't call attach/detach on an iframe.
2645
2646         * html/HTMLIFrameElement.cpp:
2647         (WebCore::HTMLIFrameElement::insertedIntoDocument):
2648         Load the frame here (using openURL).
2649         
2650         (WebCore::HTMLIFrameElement::removedFromDocument):
2651         Call frameDetached.
2652         
2653         (WebCore::HTMLIFrameElement::attach):
2654         If there's a renderer, attach the content frame to it.
2655         
2656         (WebCore::HTMLIFrameElement::detach):
2657         Reset the renderer's frame.
2658         
2659         (WebCore::HTMLIFrameElement::openURL):
2660         Modify to request the frame.
2661         
2662         * html/HTMLIFrameElement.h:
2663         Add detach.
2664         
2665         * page/Frame.cpp:
2666         (WebCore::parentFromOwnerElement):
2667         (WebCore::Frame::Frame):
2668         (WebCore::Frame::~Frame):
2669         (WebCore::Frame::requestFrame):
2670         (WebCore::Frame::requestObject):
2671         (WebCore::Frame::loadSubframe):
2672         (WebCore::Frame::ownerElement):
2673         (WebCore::Frame::ownerRenderer):
2674         (WebCore::Frame::disconnectOwnerElement):
2675         * page/Frame.h:
2676         * page/FramePrivate.h:
2677         (WebCore::FramePrivate::FramePrivate):        
2678         * rendering/RenderPart.cpp:
2679         (WebCore::RenderPart::setFrame):
2680         Modify to keep an owner element around instead of the renderer. 
2681         
2682         * rendering/RenderPartObject.cpp:
2683         (WebCore::RenderPartObject::updateWidget):
2684         Don't do anything for iframes.
2685
2686 2006-07-04  Kevin Ollivier  <kevino@theolliviers.com>
2687
2688         Reviewed by Maciej, reworked a bit by Darin.
2689
2690         Compile fixes for wx port / gcc 4.0.2
2691         
2692         * platform/PlatformString.h:
2693         * platform/StringImpl.h:
2694         Include CoreFoundation for CF-specific code.
2695         
2696         * dom/DocPtr.h:
2697         * doc/EventTargetNode.h:
2698         Silence warnings about 'extra tokens' after #endif on gcc 4.0.2.
2699         (Not an error but warnings appear frequently.)
2700         
2701         * WebCoreSources.bkl:
2702         * webcore-base.bkl:
2703         Synching ports sources file with TOT. Also, making sure SRCDIR variable
2704         overrides any previous values.
2705         
2706         * loader/ImageDocument.cpp:
2707         Use PLATFORM(MAC) for the parts that are specific to the Macintosh version,
2708         and move the Objective-C parts to another file.
2709
2710         * loader/mac/ImageDocumentMac.h: Added.
2711         * loader/mac/ImageDocumentMac.mm: Added.
2712
2713 2006-07-04  Sam Weinig  <sam.weinig@gmail.com>
2714
2715         Build fix.
2716
2717         * platform/Color.cpp:
2718         (WebCore::makeRGBAFromHSLA):
2719
2720 2006-07-02  David Carson  <dacarson@gmail.com>
2721
2722         Reviewed by Darin.
2723   
2724         - Added HSL color support as specified in CSS3 spec.
2725         http://bugzilla.opendarwin.org/show_bug.cgi?id=9506
2726         Added parsing support of hsl(h,s,l) and hsla(h,s,l,a)
2727         Added converting code to convert HSL to RGB
2728
2729         * css/cssparser.cpp:
2730         (WebCore::CSSParser::parseColorParameters):
2731         Moved common code to parse RGB/RGBA values into it's
2732         own function. This code was duplicated in the parseColorFromValue()
2733         method.
2734         (WebCore::CSSParser::parseHSLParameters):
2735         Common code to parse HSL/HSLA values.
2736         (WebCore::CSSParser::parseColorFromValue):
2737         Moved RGB/RGBA parsing out to seperate function as the code was
2738         duplicated. 
2739         Added parsing support for hsl( and hsla(
2740         * css/cssparser.h:
2741         Added two new functions parseColorParameters() and 
2742         parseHSLParameters().
2743         * platform/Color.cpp:
2744         (WebCore::calcHue):
2745         Added Hue parameter to RGB color.
2746         (WebCore::makeRGBAFromHSLA):
2747         New function to convert HSLA to RGBA.
2748         * platform/Color.h:
2749         Added new functions makeRGBAFromHSLA() and calcHue().
2750
2751 2006-07-02  Mike Emmel  <mike.emmel@gmail.com>
2752
2753         Reviewed and landed by ggaren.
2754
2755         * platform/gdk/TransferJobManager.cpp
2756         Fixed broken dowload logic
2757         * platform/gdk/ScrollViewGdk.cpp 
2758         Add comment that scrollbarSize is a temporary variable
2759         * Projects/gdk/webcore-gdk.bkl
2760         Defined NDEBUG build executable is miscompiled otherwise
2761         * WebCoreSources.bkl
2762         added icon/SiteIcon.cpp editing/IndentOutdentCommand.cpp 
2763         html/HTMLViewSourceDocument.cpp
2764
2765 2006-07-02  Shawn Stricker  <kb1ibt@gmail.com>
2766
2767         Reviewed by Timothy Hatcher.  Build fix for Linux.
2768
2769         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9684
2770           [GDK] multiple little fixes and a few new things for Templinkstubs
2771
2772         * platform/gdk/ScrollViewGdk.cpp:
2773         (WebCore::ScrollView::setDrawable): Changed SCROLLBAR_SIZE to scrollbarSize.
2774         * platform/gdk/TemporaryLinkStubs.cpp:
2775         (Image::drawTiled): Added missing parameter to argument list.
2776         * platform/gdk/TransferJobManager.cpp:
2777         (WebCore::writeCallback): Added missing parenthesis to static_cast.
2778
2779 2006-07-02  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2780
2781         Reviewed by Darin.
2782
2783         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9674
2784           REGRESSION (r15075): Blank or incomplete pages on digg.com
2785
2786         Replaced the requestingScript state bit added in the fix for bug 9317
2787         with a m_requestingScript bool that is set before and restored
2788         after calling ref() on a CachedScript.
2789         
2790         Test: fast/tokenizer/nested-cached-scripts.html
2791
2792         * html/HTMLTokenizer.cpp:
2793         (WebCore::HTMLTokenizer::HTMLTokenizer):
2794         (WebCore::HTMLTokenizer::begin):
2795         (WebCore::HTMLTokenizer::scriptHandler):
2796         (WebCore::HTMLTokenizer::notifyFinished):
2797         * html/HTMLTokenizer.h:
2798         (WebCore::HTMLTokenizer::State::):
2799
2800 2006-07-01  David Kilzer  <ddkilzer@kilzer.net>
2801
2802         Reviewed by NOBODY (build fix).
2803
2804         * platform/gdk/TransferJobManager.cpp:
2805         (WebCore::writeCallback): Changed 'static_cat' to 'static_cast'.
2806
2807 2006-06-30  Mike Emmel  <mike.emmel@gmail.com>
2808
2809         Reviewed and worked over a lot by Darin.
2810
2811         - check in first set of GDK-specific sources
2812
2813         * platform/gdk/BrowserExtensionGdk.h: Added.
2814         * platform/gdk/CookieJarGdk.cpp: Added.
2815         * platform/gdk/CursorGdk.cpp: Added.
2816         * platform/gdk/FontCacheGdk.cpp: Added.
2817         * platform/gdk/FontDataGdk.cpp: Added.
2818         * platform/gdk/FontGdk.cpp: Added.
2819         * platform/gdk/FontPlatformData.h: Added.
2820         * platform/gdk/FontPlatformDataGdk.cpp: Added.
2821         * platform/gdk/FrameGdk.cpp: Added.
2822         * platform/gdk/FrameGdk.h: Added.
2823         * platform/gdk/GlyphMapGdk.cpp: Added.
2824         * platform/gdk/KeyEventGdk.cpp: Added.
2825         * platform/gdk/KeyboardCodes.h: Added.
2826         * platform/gdk/MouseEventGdk.cpp: Added.
2827         * platform/gdk/PageGdk.cpp: Added.
2828         * platform/gdk/RenderThemeGdk.cpp: Added.
2829         * platform/gdk/RenderThemeGdk.h: Added.
2830         * platform/gdk/ScreenGdk.cpp: Added.
2831         * platform/gdk/ScrollViewGdk.cpp: Added.
2832         * platform/gdk/SharedTimerLinux.cpp: Added.
2833         * platform/gdk/SystemTimeLinux.cpp: Added.
2834         * platform/gdk/TemporaryLinkStubs.cpp: Added.
2835         * platform/gdk/TransferJobCurl.cpp: Added.
2836         * platform/gdk/TransferJobManager.cpp: Added.
2837         * platform/gdk/TransferJobManager.h: Added.
2838         * platform/gdk/WheelEventGdk.cpp: Added.
2839         * platform/gdk/WidgetGdk.cpp: Added.
2840         * platform/gdk/gdk-encodings.txt: Added.
2841
2842 2006-06-30  Mike Emmel  <mike.emmel@gmail.com>
2843
2844         Reviewed by Darin.
2845
2846         * WebCoreSources.bkl: Updated for recent file changes.
2847
2848 2006-06-30  Mike Emmel  <mike.emmel@gmail.com>
2849
2850         Reviewed and enhanced by Darin.
2851
2852         Compilation fixes for Linux/Gdk.
2853
2854         * WebCore/platform/FontData.h: Added forward declaration of a class.
2855         * WebCore/platform/cairo/GraphicsContextCairo.cpp: Fixed case on include.
2856         * WebCore/bindings/js/kjs_html.cpp: Added <math.h> include.
2857
2858         * WebCore/css/maketokenizer: Fixed incorrect check for Linux that was
2859         already true even on Mac OS X. Added some additional includes and
2860         defines to the Linux extra generated code.
2861
2862 2006-06-30  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2863
2864         Reviewed by Hyatt.
2865
2866         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7204
2867           float inserted in fixed height block via DOM not repainted
2868
2869         Test: fast/repaint/float-move-during-layout.html
2870
2871         * rendering/RenderBlock.cpp:
2872         (WebCore::RenderBlock::layoutBlockChildren):
2873         (WebCore::RenderBlock::repaintOverhangingFloats): Renamed repaintFloatingDescendants()
2874         to this and limited it to repainting overhanging floats. Added a boolean parameter that forces
2875         all descendant overhanging floats (that don't have their own layer) to paint.
2876         * rendering/RenderBlock.h:
2877         * rendering/RenderBox.cpp:
2878         (WebCore::RenderBox::repaintDuringLayoutIfMoved): Changed to paint all descendant
2879         floats.
2880         * rendering/RenderObject.cpp:
2881         (WebCore::RenderObject::repaintOverhangingFloats):
2882         * rendering/RenderObject.h:
2883
2884 2006-06-30  Levi Weintraub  <lweintraub@apple.com>
2885
2886         Reviewed by justin
2887
2888         * editing/VisiblePosition.cpp: Removed is[Not]EqualIgnoringAffinity and made operator== use the logic that ignores affinity.
2889         * editing/VisiblePosition.h: Ditto.
2890         (WebCore::operator==):
2891         * editing/visible_units.cpp:
2892         (WebCore::isStartOfParagraph): Changed to compare VisiblePositions using ==.
2893         (WebCore::isEndOfParagraph): Ditto.
2894         (WebCore::isStartOfBlock): Ditto.
2895         (WebCore::isEndOfBlock): Ditto.
2896
2897 === Safari-521.14 ===
2898
2899 2006-06-30  Justin Garcia  <justin.garcia@apple.com>
2900
2901         Reviewed by levi
2902
2903         * editing/htmlediting.cpp:
2904         (WebCore::canHaveChildrenForEditing): Don't insert children into
2905         object tags while editing.
2906
2907 2006-06-30  Justin Garcia  <justin.garcia@apple.com>
2908
2909         Reviewed by harrison
2910         
2911         <rdar://problem/4598309
2912         Caret gets stuck when it hits non editable content within an editable body
2913         <http://bugzilla.opendarwin.org/show_bug.cgi?id=9510>
2914         Caret will jump out of an editable region
2915         
2916         * dom/Position.cpp:
2917         (WebCore::Position::upstream): Don't move into a new editable region so that 
2918         candidates that that straddle an editable/non-editable boundary will 
2919         correspond to different VisiblePositions.
2920         (WebCore::Position::downstream): Ditto.
2921         * editing/SelectionController.cpp:
2922         (WebCore::SelectionController::modifyMovingRightForward): Use VisiblePosition::next(true)
2923         (WebCore::SelectionController::modifyMovingLeftBackward): Use VisiblePosition::previous(true)
2924         * editing/VisiblePosition.cpp:
2925         (WebCore::VisiblePosition::next): Added code to jump to the next editable region as long
2926         as it has the same highest editable root.
2927         (WebCore::VisiblePosition::previous): Ditto.
2928         * editing/VisiblePosition.h:
2929         * editing/htmlediting.cpp:
2930         (WebCore::highestEditableRoot): Added, returns the highest editable root of a node if that
2931         node is in editable content, otherwise 0.
2932         * editing/htmlediting.h:
2933
2934 2006-06-30  David Kilzer  <ddkilzer@kilzer.net>
2935
2936         Reviewed by Darin.
2937
2938         - Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9358
2939           REGRESSION: Assertion failure in HTMLInputElement::setValueFromRenderer
2940           (value == constrainValue(value)) when deleting all text
2941
2942         Test: editing/deleting/delete-all-text-in-text-field-assertion.html
2943
2944         Bug 9661 filed to fix the follow-up issue:
2945         http://bugzilla.opendarwin.org/show_bug.cgi?id=9661
2946         textContent returns "\n" for a <br> even if it is collapsed
2947
2948         * html/HTMLInputElement.cpp:
2949         (WebCore::HTMLInputElement::setValueFromRenderer): Work around "\n" value
2950         when all characters are deleted from a text field.
2951
2952 2006-06-30  David Harrison  <harrison@apple.com>
2953
2954         Reviewed by Tim Omernick
2955
2956         <rdar://problem/4609481> Crash calling -[WebScriptObject valueForKey:] when JS disabled
2957         
2958         * bridge/mac/FrameMac.mm:
2959         (WebCore::FrameMac::executionContextForDOM):
2960         Early return if JS is not enabled.
2961
2962 2006-06-30  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2963
2964         Reviewed by Tim H.
2965
2966         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9664
2967           REGRESSION (r15106): Crash in fast/events/mouseover-mouseout2.html
2968
2969         * page/FrameView.cpp:
2970         (WebCore::FrameView::handleMouseMoveEvent): Added a check that oldSubframe is
2971         still a subframe of the view's frame before passing the event to it.
2972
2973 2006-06-29  Timothy Hatcher  <timothy@apple.com>
2974
2975         Reviewed by Darin.
2976
2977         <rdar://problem/3694163> -[KWQPageState finalize] is incorrect; design change needed
2978         <rdar://problem/3694165> -[WebCoreFrameBridge finalize] is incorrect; design change needed
2979
2980         Added close methods that need to be called before these
2981         objects can be released. This ensures proper tear-down under GC.
2982
2983         * WebCore.xcodeproj/project.pbxproj:
2984         * bridge/mac/WebCoreFrameBridge.h:
2985         * bridge/mac/WebCoreFrameBridge.mm:
2986         (-[WebCoreFrameBridge dealloc]):
2987         (-[WebCoreFrameBridge finalize]):
2988         (-[WebCoreFrameBridge close]):
2989         * bridge/mac/WebCorePageBridge.h:
2990         * bridge/mac/WebCorePageBridge.mm:
2991         (-[WebCorePageBridge setMainFrame:]):
2992         (-[WebCorePageBridge dealloc]):
2993         (-[WebCorePageBridge finalize]):
2994         (-[WebCorePageBridge close]):
2995         (-[WebCorePageBridge mainFrame]):
2996         (-[WebCorePageBridge setGroupName:]):
2997         (-[WebCorePageBridge groupName]):
2998         * kwq/KWQPageState.h:
2999         * kwq/KWQPageState.mm:
3000         (-[KWQPageState dealloc]):
3001         (-[KWQPageState finalize]):
3002         (-[KWQPageState close]):
3003
3004 2006-06-29  Sam Weinig  <sam.weinig@gmail.com>
3005
3006         Reviewed by Hyatt.
3007
3008         - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=4874
3009         Table with absolute bottom positioning is positioned incorrectly
3010
3011         Note: patch originally from Mitz, spruced up by Weinig.
3012
3013         * rendering/RenderBox.cpp:
3014         (WebCore::RenderBox::calcAbsoluteVerticalValues):
3015         * rendering/RenderTable.cpp:
3016         (WebCore::RenderTable::layout):
3017
3018 2006-06-29  Graham Dennis  <Graham.Dennis@gmail.com>
3019
3020         Reviewed by Justin.
3021
3022         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9505
3023           moveParagraphContentsToNewBlockIfNecessary creates a new block outside the current position
3024
3025         * editing/CompositeEditCommand.cpp:
3026         Added sanity checking to prevent modifying nodes outside of 
3027         where we should be
3028         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
3029
3030 2006-06-29  Brady Eidson  <beidson@apple.com>
3031
3032         Reviewed by Levi.
3033
3034         In addition to a few small details, logging changes, and style cleanups, this is a stop-gap hack
3035         for a problem in SQLite's blob handling.  Querying for a blob in a void* form is reproducibly
3036         returning a corrupt buffer.  The temporary solution is to query for the blob as "quoted text" and
3037         manually convert the return string into a character buffer.
3038
3039         * icon/IconDatabase.cpp:
3040         (WebCore::IconDatabase::recreateDatabase):
3041         (WebCore::IconDatabase::createPrivateTables):
3042
3043         (WebCore::hexToUnsignedChar): These two functions are the text-to-character-data converters for the time being
3044         (WebCore::hexStringToVector):
3045
3046         (WebCore::IconDatabase::imageDataForIconID):
3047         (WebCore::IconDatabase::imageDataForIconURL):
3048         (WebCore::IconDatabase::imageDataForPageURL):
3049         (WebCore::IconDatabase::iconForPageURL):
3050         (WebCore::IconDatabase::hasIconForIconURL):
3051         * icon/IconDatabase.h:  changes the icon data accessors to return a Vector<unsigned char> instead of void*
3052
3053         * icon/SQLStatement.cpp:
3054         (WebCore::SQLStatement::columnCount):
3055         (WebCore::SQLStatement::getColumnBlob):
3056         * icon/SiteIcon.cpp:
3057         (SiteIcon::getImage):
3058
3059 2006-06-29  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3060
3061         Reviewed by Darin.
3062
3063         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9652
3064           Assertion failure when changing an RTL table cell to display:none
3065
3066         Test: fast/table/rtl-cell-display-none-assert.html
3067
3068         * rendering/RenderTableSection.cpp:
3069         (WebCore::RenderTableSection::layoutRows): Corrected the index used as
3070         the last index in the columnPos vector.
3071
3072 2006-06-29  Darin Adler  <darin@apple.com>
3073
3074         Reviewed by Anders.
3075
3076         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9622
3077           showModalDialog returnValue ignored, function result is always "undefined"
3078
3079         * manual-tests/modal-dialog.html: Added.
3080         * manual-tests/show-modal-dialog-test.html: Added.
3081
3082         * page/Frame.cpp: (WebCore::Frame::clear): Call KJSProxy::clear with the
3083         clearWindowProperties parameter instead of not calling it at all when
3084         clearWindowProperties is false.
3085
3086         * bindings/js/kjs_proxy.h: Add boolean clearWindowProperties parameter.
3087         * bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::clear): Pass clearWindowProperties
3088         variable through to Window::clear instead of not calling it at all.
3089
3090         * bindings/js/kjs_window.h: Add boolean clearWindowProperties parameter.
3091         * bindings/js/kjs_window.cpp: (KJS::Window::clear): If clearWindowProperties
3092         is false, do only the returnValue work, not the rest of the work.
3093
3094         * manual-tests/modal-dialog.html: Added.
3095         * manual-tests/show-modal-dialog-test.html: Added.
3096
3097 2006-06-29  Beth Dakin  <bdakin@apple.com>
3098
3099         Reviewed by Hyatt.
3100
3101         Fix for <rdar://problem/4450615> Add composite mode to background 
3102         styles
3103
3104         -webkit-background-composite will set a composite mode on a 
3105         background image.
3106
3107         * css/CSSComputedStyleDeclaration.cpp:
3108         (WebCore::):
3109         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3110         * css/CSSPropertyNames.in: Add -webkit-background-composite
3111         * css/CSSValueKeywords.in: Add all possible values (clear, copy, 
3112         source-over, source-in, source-out, source-atop, destination-over, 
3113         destination-in, destination-out, destination-atop, xor, plus-
3114         darker, highlight, and plus-lighter)
3115         * css/cssparser.cpp:
3116         (WebCore::CSSParser::parseValue):
3117         (WebCore::CSSParser::parseBackgroundProperty):
3118         * css/cssstyleselector.cpp:
3119         (WebCore::CSSStyleSelector::applyProperty):
3120         (WebCore::CSSStyleSelector::mapBackgroundComposite):
3121         * css/cssstyleselector.h:
3122         * platform/GraphicsContext.cpp:
3123         (WebCore::GraphicsContext::drawTiledImage):
3124         * platform/GraphicsContext.h: drawTiledImage() now takes a 
3125         composite operator.
3126         * platform/Image.h: drawTiled() now takes a composite operator.
3127         * platform/cairo/ImageCairo.cpp:
3128         (WebCore::Image::drawTiled): Set the composite operator.
3129         * platform/mac/ImageMac.mm:
3130         (WebCore::Image::drawTiled): Set the composite operator.
3131         * platform/win/TemporaryLinkStubs.cpp:
3132         (Image::drawTiled):
3133         * rendering/RenderBox.cpp:
3134         (WebCore::RenderBox::paintBackgroundExtended): Send the composite 
3135         operator in the render style over to the graphics context.
3136         * rendering/render_style.cpp:
3137         (WebCore::BackgroundLayer::BackgroundLayer):
3138         (WebCore::BackgroundLayer::operator=):
3139         (WebCore::BackgroundLayer::operator==):
3140         (WebCore::BackgroundLayer::fillUnsetProperties):
3141         (WebCore::BackgroundLayer::cullEmptyLayers):
3142         * rendering/render_style.h:
3143         (WebCore::BackgroundLayer::backgroundComposite):
3144         (WebCore::BackgroundLayer::isBackgroundCompositeSet):
3145         (WebCore::BackgroundLayer::setBackgroundComposite):
3146         (WebCore::BackgroundLayer::clearBackgroundComposite):
3147         (WebCore::RenderStyle::backgroundComposite):
3148         (WebCore::RenderStyle::initialBackgroundComposite):
3149
3150 2006-06-29  David Kilzer  <ddkilzer@kilzer.net>
3151
3152         Reviewed by Darin.
3153
3154         http://bugzilla.opendarwin.org/show_bug.cgi?id=9649
3155         The no-svg build broke after r15091
3156
3157         * bindings/objc/DOMInternal.h: Added #if XPATH_SUPPORT/#endif.
3158         * bindings/objc/DOMInternal.mm: Ditto.
3159         (raiseDOMException):
3160         * bindings/objc/DOMXPath.h: Ditto.
3161         * bindings/objc/DOMXPath.mm: Ditto.
3162         * bindings/objc/DOMXPathInternal.h: Ditto.
3163
3164 2006-06-29  Anders Carlsson  <acarlsson@apple.com>
3165
3166         Reviewed by Tim O.
3167
3168         <rdar://problem/4599760> Objective-C XPath support
3169         
3170         * WebCore.xcodeproj/project.pbxproj:
3171         Add files.
3172         
3173         * bindings/objc/DOMInternal.h:
3174         * bindings/objc/DOMInternal.mm:
3175         (raiseDOMException):
3176         Handle XPath exceptions
3177         
3178         * bindings/objc/DOMXPath.h: Added.
3179         (-[DOMXPathNSResolver lookupNamespaceURI:]):
3180         * bindings/objc/DOMXPath.mm: Added.
3181         (-[DOMNativeXPathNSResolver dealloc]):
3182         (-[DOMNativeXPathNSResolver finalize]):
3183         (-[DOMNativeXPathNSResolver _xpathNSResolver]):
3184         (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:]):
3185         (+[DOMNativeXPathNSResolver _xpathNSResolverWith:]):
3186         (-[DOMNativeXPathNSResolver lookupNamespaceURI:]):
3187         (-[DOMXPathResult dealloc]):
3188         (-[DOMXPathResult finalize]):
3189         (-[DOMXPathResult resultType]):
3190         (-[DOMXPathResult numberValue]):
3191         (-[DOMXPathResult stringValue]):
3192         (-[DOMXPathResult booleanValue]):
3193         (-[DOMXPathResult singleNodeValue]):
3194         (-[DOMXPathResult invalidIteratorState]):
3195         (-[DOMXPathResult snapshotLength]):
3196         (-[DOMXPathResult iterateNext]):
3197         (-[DOMXPathResult snapshotItem:]):
3198         (-[DOMXPathResult _xpathResult]):
3199         (-[DOMXPathResult _initWithXPathResult:]):
3200         (+[DOMXPathResult _xpathResultWith:]):
3201         (-[DOMXPathExpression evaluate:::]):
3202         (-[DOMXPathExpression _xpathExpression]):
3203         (-[DOMXPathExpression _initWithXPathExpression:]):
3204         (+[DOMXPathExpression _xpathExpressionWith:]):
3205         (-[DOMDocument createExpression::]):
3206         (-[DOMDocument createNSResolver:]):
3207         (-[DOMDocument evaluate:::::]):
3208         * bindings/objc/DOMXPathInternal.h: Added.
3209         Add Objective-C XPath API.
3210
3211 2006-06-28  David Hyatt  <hyatt@apple.com>
3212
3213         Add support for custom highlighting to paint at the root line box level
3214         (and to inflate the box it uses so that it can go outside the bounds of
3215         the line if necessary).
3216
3217         Reviewed by harrison
3218
3219         * bridge/mac/FrameMac.h:
3220         * bridge/mac/FrameMac.mm:
3221         (WebCore::FrameMac::customHighlightLineRect):
3222         (WebCore::FrameMac::paintCustomHighlight):
3223         * bridge/mac/WebCoreFrameBridge.h:
3224         * rendering/InlineTextBox.cpp:
3225         (WebCore::InlineTextBox::paintCustomHighlight):
3226         * rendering/RootInlineBox.cpp:
3227         (WebCore::RootInlineBox::paintCustomHighlight):
3228         (WebCore::RootInlineBox::paint):
3229         * rendering/RootInlineBox.h:
3230
3231 2006-06-28  Levi Weintraub  <lweintraub@apple.com>
3232
3233         Reviewed by justin
3234
3235         <rdar://problem/4592005> FormatBlock inserts in the wrong place, disregarding editable content
3236         <rdar://problem/4590763> FormatBlock for paragraph style doesn't work
3237
3238         * dom/Node.cpp:
3239         (WebCore::Node::rootEditableElement): Return inline nodes
3240         * editing/FormatBlockCommand.cpp:
3241         (WebCore::FormatBlockCommand::doApply): Keep from inserting before editable content
3242         * editing/JSEditor.cpp: Support html braces (<>) around tag names
3243
3244 2006-06-28  Justin Garcia  <justin.garcia@apple.com>
3245
3246         Reviewed by levi
3247         
3248         svg/custom/text-hit-test.svg was failing
3249
3250         * rendering/RenderContainer.cpp:
3251         (WebCore::RenderContainer::positionForCoordinates): Don't skip child
3252         renderers that have a height of 0 when looking for the closest child
3253         renderer, they may contain content that overflows.
3254         * rendering/RenderText.cpp:
3255         (WebCore::RenderText::positionForCoordinates): Fixed typos.
3256
3257 2006-06-28  David Hyatt  <hyatt@apple.com>
3258
3259         Make the view source document properly handle <script>.  We don't syntax
3260         highlight the JS yet, but it shows up properly now.
3261
3262         Reviewed by john
3263
3264         * WebCore.xcodeproj/project.pbxproj:
3265         * html/HTMLTokenizer.cpp:
3266         (WebCore::HTMLTokenizer::scriptHandler):
3267
3268 2006-06-28  Timothy Hatcher  <timothy@apple.com>
3269
3270         Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
3271
3272         * WebCore.xcodeproj/project.pbxproj:
3273
3274 2006-06-28  Justin Garcia  <justin.garcia@apple.com>
3275
3276         Reviewed by levi
3277         
3278         Fixed EditActions for InsertHorizontalRule and RemoveFormat.
3279         
3280         * editing/JSEditor.cpp:
3281         * editing/ReplaceSelectionCommand.cpp:
3282         (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand):
3283         (WebCore::ReplaceSelectionCommand::editingAction):
3284         * editing/ReplaceSelectionCommand.h:
3285
3286 2006-06-28  Levi Weintraub  <lweintraub@apple.com>
3287
3288          Build Fix. Reviewed by NOBODY
3289
3290         * editing/IndentOutdentCommand.cpp:
3291         (WebCore::IndentOutdentCommand::indentRegion):
3292
3293 2006-06-28  Levi Weintraub  <lweintraub@apple.com>
3294
3295         Reviewed by justin
3296
3297         http://bugzilla.opendarwin.org/show_bug.cgi?id=7568
3298         Bug 7568: Implement Indent/Outdent
3299
3300         * WebCore.vcproj/WebCore/WebCore.vcproj: Added IndentOutdentCommand.h/cpp
3301         * WebCore.xcodeproj/project.pbxproj: Ditto.
3302         * editing/IndentOutdentCommand.cpp: Added.
3303         (WebCore::IndentOutdentCommand::IndentOutdentCommand):
3304         (WebCore::enclosingListOrBlockquote):
3305         (WebCore::IndentOutdentCommand::splitTreeToNode): Splits the DOM tree from a
3306         descendent node to an ending ancestor, duplicating nodes when necessary. Returns
3307         the last node split. Used to insert blockquotes at the topmost level.
3308         (WebCore::IndentOutdentCommand::indentRegion):
3309         (WebCore::IndentOutdentCommand::outdentParagraph):
3310         (WebCore::IndentOutdentCommand::outdentRegion):
3311         (WebCore::IndentOutdentCommand::doApply):
3312         * editing/IndentOutdentCommand.h: Added.
3313         (WebCore::IndentOutdentCommand::):
3314         * editing/JSEditor.cpp: Added the execCommands Indent and Outdent
3315         * editing/htmlediting.cpp:
3316         (WebCore::enclosingNodeWithTag): Finds the enclosing node with any specified tag.
3317         (WebCore::enclosingListChild): Added checks for nill and editable boundaries.
3318         (WebCore::outermostEnclosingListChild): Returns the highest ancestor list child.
3319         (WebCore::highestAncestor): Added.
3320         (WebCore::createElement): Changed the passed in string to a const reference.
3321         * editing/htmlediting.h:
3322
3323 2006-06-28  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3324
3325         Reviewed by Darin and Hyatt.
3326
3327         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9561
3328           REGRESSION: Content property on :before of button causes hang on click or hover
3329
3330         Test: fast/forms/button-generated-content.html
3331
3332         * rendering/RenderBlock.cpp:
3333         (WebCore::RenderBlock::setStyle):
3334         * rendering/RenderButton.cpp:
3335         (WebCore::RenderButton::updatePseudoChild): Added. Calls updatePseudoChildForObject()
3336         on the button itself or on its inner div, if it has one.
3337         * rendering/RenderButton.h:
3338         (WebCore::RenderButton::createsAnonymousWrapper): Added. Returns true.
3339         * rendering/RenderContainer.cpp:
3340         (WebCore::RenderContainer::pseudoChild): Added. Returns the child containing
3341         generated content of the requested type if there is one, or otherwise the
3342         child before/after which such generated content should come.
3343         (WebCore::RenderContainer::updatePseudoChild): Removed the child parameter and moved the guts
3344         of this method into updatePseudoChildForObject, which this method calls unless the object
3345         is an anonymous wrapper.
3346         (WebCore::RenderContainer::updatePseudoChildForObject): Added. Does the what
3347         updatePseudoChildForObject did previously, but fetches the pseudo style from
3348         the styledObject parameter.
3349         * rendering/RenderContainer.h:
3350         * rendering/RenderInline.cpp:
3351         (WebCore::RenderInline::setStyle):
3352         (WebCore::RenderInline::addChildToFlow):
3353         (WebCore::RenderInline::splitInlines):
3354         (WebCore::RenderInline::splitFlow):
3355         * rendering/RenderObject.h:
3356         (WebCore::RenderObject::createsAnonymousWrapper): Added. This method replaces
3357         allowsReusingAnonymousChild and returns the opposite of what that method used to
3358         return. Returns true if the object creates an anonymous child to contain all its
3359         other children.
3360
3361 2006-06-27  Brady Eidson  <beidson@apple.com>
3362
3363         Reviewed by Maciej
3364
3365         Hookup the new semi-functional SQLite icon database.
3366         For now, it is living side-by-side with the old DB so one can compare the
3367         two for debugging purposes.  Also, it is disabled (in WebKit) by default unless you
3368         compile with ICONDEBUG #defined.
3369
3370         * WebCore.xcodeproj/project.pbxproj:  Added file SiteIcon.cpp
3371
3372         * bridge/mac/WebCoreIconDatabaseBridge.h:
3373         * bridge/mac/WebCoreIconDatabaseBridge.mm:
3374         (-[WebCoreIconDatabaseBridge privateBrowsingEnabled]):
3375         (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
3376         (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
3377         (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
3378
3379         * icon/IconDatabase.cpp:
3380         (WebCore::IconDatabase::isValidDatabase):
3381         (WebCore::IconDatabase::recreateDatabase):
3382         (WebCore::IconDatabase::createPrivateTables):
3383         (WebCore::IconDatabase::deletePrivateTables):
3384         (WebCore::IconDatabase::imageDataForIconID):
3385         (WebCore::IconDatabase::imageDataForIconURL):
3386         (WebCore::IconDatabase::imageDataForPageURL):
3387         (WebCore::IconDatabase::setPrivateBrowsingEnabled):
3388         (WebCore::IconDatabase::iconForPageURL):
3389         (WebCore::IconDatabase::iconURLForURL):
3390         (WebCore::IconDatabase::setIconDataForIconURL):
3391         (WebCore::IconDatabase::establishIconIDForEscapedIconURL):
3392         (WebCore::IconDatabase::setHaveNoIconForIconURL):
3393         (WebCore::IconDatabase::setIconURLForPageURL):
3394         (WebCore::IconDatabase::hasIconForIconURL):
3395         * icon/IconDatabase.h:
3396         (WebCore::SiteIcon::getIconURL):
3397         (WebCore::IconDatabase::getPrivateBrowsingEnabled):
3398         
3399         * icon/SiteIcon.cpp: Added.
3400         (SiteIcon::SiteIcon):
3401         (SiteIcon::~SiteIcon):
3402         (SiteIcon::getImage):
3403         (SiteIcon::resetExpiration):
3404         (SiteIcon::getExpiration):
3405
3406 2006-06-27  Rob Buis  <buis@kde.org>
3407
3408         Reviewed by Darin.
3409
3410         http://bugzilla.opendarwin.org/show_bug.cgi?id=9605
3411         REGRESSION: pageX and pageY are both 0 for events created with initMouseEvent
3412
3413         Calculate pageX/pageY and clientX/clientY values when using initMouseEvent.
3414
3415         * dom/MouseEvent.cpp:
3416         (WebCore::MouseEvent::initMouseEvent):
3417         * dom/MouseRelatedEvent.cpp:
3418         (WebCore::MouseRelatedEvent::initCoordinates):
3419         * dom/MouseRelatedEvent.h:
3420
3421 2006-06-27  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3422
3423         Reviewed by Maciej and Darin.
3424
3425         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9317
3426           REGRESSION: crash in HTML tokenizer at Japanese Apple support page
3427
3428         Test: fast/tokenizer/write-unclosed-script.html
3429
3430         * html/HTMLTokenizer.cpp:
3431         (WebCore::HTMLTokenizer::scriptHandler): Changed to reset the inScript flag
3432         and scriptCodeSize before possible script execution, but not afterwards.
3433         This way, if script execution write()s a <script> tag without closing it,
3434         the tokenizer is left in inScript state. Added code to set the requestingScript
3435         flag around the request for the cached script, to let notifiyFinished() know
3436         that it's being called under scriptHandler().
3437         (WebCore::HTMLTokenizer::scriptExecution): Removed code that saved and restored
3438         the inScript flag. This function is always entered now with inScript being false.
3439         (WebCore::HTMLTokenizer::notifyFinished): Changed to use the new requestingScript
3440         state flag instead of the inScript flag, which is always false now when entering
3441         this function.
3442         * html/HTMLTokenizer.h:
3443         Added the requestingScript state bit, used to tell notifyFinished() that it
3444         is being called under scriptHandler() (which happens when the script is already
3445         in cache).
3446
3447 2006-06-27  Justin Garcia  <justin.garcia@apple.com>
3448
3449         Reviewed by levi
3450
3451         * editing/JSEditor.cpp: Added RemoveFormat.
3452
3453 2006-06-27  Kevin Decker    <kdecker@apple.com>
3454
3455         Reviewed by brady.
3456
3457         Fixed: <rdar://problem/4597679> TOT REGRESSION: popup blocker DOA
3458         
3459         Need to add window.open() support to DumpRenderTree before landing an actual layout test.
3460
3461         * bindings/js/kjs_window.cpp: 
3462         (KJS::WindowFunc::callAsFunction): Because FrameTree::find() returns true for empty strings, 
3463         we must check for empty framenames. Otherwise, illegitimate window.open() calls with no name
3464         will pass right through the popup blocker.
3465
3466 2006-06-28  Anders Carlsson  <acarlsson@apple.com>
3467
3468         Reviewed by Darin.
3469
3470         * css/CSSComputedStyleDeclaration.cpp:
3471         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3472         Move FIXME comment here.
3473         
3474         * page/DOMWindow.cpp:
3475         (WebCore::DOMWindow::getComputedStyle):
3476         Don't do a null check on the renderer here. Everything's handled by 
3477         CSSComputedStyleDeclaration anyway.
3478
3479 2006-06-27  Justin Garcia  <justin.garcia@apple.com>
3480
3481         Reviewed by darin
3482
3483         * rendering/RenderContainer.cpp: Fixed #include formatting.
3484
3485 2006-06-27  Justin Garcia  <justin.garcia@apple.com>
3486
3487         Reviewed by levi
3488         
3489         <rdar://problem/4599735> Clicking out of a table at the extremes of an editable document doesn't appear to work
3490
3491         * rendering/RenderBlock.cpp:
3492         (WebCore::RenderBlock::positionForCoordinates): In the fall through case,
3493         where we can't find a child block that contains (x, y), pass to RenderFlow
3494         instead of the last visible child block.
3495         * rendering/RenderContainer.cpp:
3496         (WebCore::RenderContainer::positionForCoordinates): Don't pass to the closest 
3497         child renderer if this is a table and (x, y) is outside the table.  Return
3498         a VisiblePosition before or after the table.
3499         Fixed the code that finds the closest child renderer.
3500
3501 2006-06-27  David Hyatt  <hyatt@apple.com>
3502
3503         Preserve entity text in view source mode.  This patch doesn't highlight the
3504         the entities yet, but it at least prevents their resolution and removal.
3505
3506         Reviewed by darin
3507
3508         * WebCore.xcodeproj/project.pbxproj:
3509         * html/HTMLTokenizer.cpp:
3510         (WebCore::HTMLTokenizer::parseEntity):
3511
3512 2006-06-27  Anders Carlsson  <acarlsson@apple.com>
3513
3514         Reviewed by Geoff.
3515
3516         http://bugzilla.opendarwin.org/show_bug.cgi?id=9623
3517         REGRESSION: getComputedStyle should do a relayout
3518         
3519         * page/DOMWindow.cpp:
3520         (WebCore::DOMWindow::getComputedStyle):
3521         Do a relayout.
3522
3523 2006-06-27  Maciej Stachowiak  <mjs@apple.com>
3524
3525         Reviewed by Adele
3526
3527         - fixed <rdar://problem/4550473> Reproducible hang on www.digg.com
3528         
3529         * dom/NodeList.cpp:
3530         (WebCore::NodeList::recursiveItem): Make NodeList caching also
3531         work for backwards iteration - if the requested index is before
3532         the last cached, but closer to it than to the start of the list,
3533         then search backwards from there.
3534         (WebCore::NodeList::itemForwardsFromCurrent): Split this out as a
3535         helper method.
3536         (WebCore::NodeList::itemBackwardsFromCurrent): New helper, similar
3537         to the above.
3538         * dom/NodeList.h:
3539
3540 2006-06-27  Brady Eidson  <beidson@apple.com>
3541
3542         Reviewed by Levi
3543
3544         Some SQLDatabase cleanup (style stuff) and enhancements
3545
3546         * icon/SQLDatabase.cpp:
3547         (SQLDatabase::open):
3548         (SQLDatabase::executeCommand):
3549         (SQLDatabase::returnsAtLeastOneResult):  Accessor to see if this query returns results
3550         (SQLDatabase::lastInsertRowID):  Accessor for the rowid of the last insert
3551         * icon/SQLDatabase.h:
3552         (WebCore::SQLStatement::prepareAndStep):
3553         * icon/SQLStatement.cpp:
3554         (WebCore::SQLStatement::bindInt64):
3555         -All of the following used to require the user to manually prepare and step a statement
3556         before asking for the result.  Now it will prepare and step itself so you can use a temporary
3557         object to get a quick result
3558         (WebCore::SQLStatement::getColumnName):
3559         (WebCore::SQLStatement::getColumnName16):
3560         (WebCore::SQLStatement::getColumnText):
3561         (WebCore::SQLStatement::getColumnText16):
3562         (WebCore::SQLStatement::getColumnDouble):
3563         (WebCore::SQLStatement::getColumnInt):
3564         (WebCore::SQLStatement::getColumnInt64):
3565         (WebCore::SQLStatement::getColumnBlobAsVector):
3566         (WebCore::SQLStatement::getColumnBlob):
3567
3568 2006-06-27  Ada Chan <adachan@apple.com>
3569
3570         Reviewed by sfalken.
3571
3572         Fixed build.
3573
3574         * WebCore.vcproj/WebCore/WebCore.vcproj:
3575
3576 2006-06-27  Beth Dakin  <bdakin@apple.com>
3577
3578         Reviewed by Hyatt.
3579
3580         Fix for <rdar://problem/4602635> Media queries must be extended to 
3581         address CSS pixel scaling factor
3582
3583         * css/MediaFeatureNames.h: Add -webkit-device-pixel-ratio, -webkit-
3584         min-device-pixel-ratio, and -webkit-max-device-pixel-ratio to the 
3585         list of feature names.
3586         * css/MediaQueryEvaluator.cpp:
3587         (WebCore::cmpvalue): Added a version of cmpvalue that compares 
3588         floats.
3589         (WebCore::device_pixel_ratioMediaFeatureEval):
3590         (WebCore::min_device_pixel_ratioMediaFeatureEval):
3591         (WebCore::max_device_pixel_ratioMediaFeatureEval):
3592
3593 2006-06-27  Darin Adler  <darin@apple.com>
3594
3595         Reviewed by Geoff.
3596
3597         - finish with http://bugzilla.opendarwin.org/show_bug.cgi?id=9606
3598           REGRESSION: some callers are still using clientX/Y to get pageX/Y
3599
3600         * rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::userResize):
3601         Change to use pageX/Y, but this really doesn't matter since framesets
3602         can't be scrolled -- it's the frames that are scrolled. So this change
3603         has no user-visible effect, but it's still better this way.
3604
3605 2006-06-27  Darin Adler  <darin@apple.com>
3606
3607         Reviewed by Geoff.
3608
3609         - fix 2/3 of http://bugzilla.opendarwin.org/show_bug.cgi?id=9606
3610           REGRESSION: some callers are still using clientX/Y to get pageX/Y
3611
3612         Test: fast/events/anchor-image-scrolled-x-y.html
3613         Test: fast/events/input-image-scrolled-x-y.html
3614
3615         * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler): Use pageX/Y.
3616         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler): Ditto.
3617
3618 2006-06-27  Brady Eidson  <beidson@apple.com>
3619
3620         Reviewed by Maciej
3621
3622         Added functionality to WebCore::Image to get multiple representations/sizes into TIFF data
3623
3624         * platform/mac/ImageMac.mm:
3625         (WebCore::Image::getTIFFRepresentation):
3626
3627 2006-06-26  David Hyatt  <hyatt@apple.com>
3628
3629         Fix for 9538, support syntax highlighted HTML source.  Lots of loose
3630         ends still (script/style/comments/doctype/entities/accurate whitespace).
3631
3632         Reviewed by darin
3633
3634         * DerivedSources.make:
3635         * WebCore.xcodeproj/project.pbxproj:
3636         * bridge/mac/WebCoreFrameBridge.h:
3637         * bridge/mac/WebCoreFrameBridge.mm:
3638         (-[WebCoreFrameBridge setInViewSourceMode:]):
3639         (-[WebCoreFrameBridge inViewSourceMode]):
3640         * css/cssstyleselector.cpp:
3641         (WebCore::CSSStyleSelector::loadDefaultStyle):
3642         (WebCore::CSSStyleSelector::matchUARules):
3643         * css/cssstyleselector.h:
3644         * css/view-source.css: Added.
3645         * dom/Document.cpp:
3646         (WebCore::Document::implicitClose):
3647         * dom/xml_tokenizer.h:
3648         (WebCore::Tokenizer::Tokenizer):
3649         (WebCore::Tokenizer::~Tokenizer):
3650         (WebCore::Tokenizer::inViewSourceMode):
3651         (WebCore::Tokenizer::setInViewSourceMode):
3652         * html/HTMLAttributeNames.in:
3653         * html/HTMLFrameElement.cpp:
3654         (WebCore::HTMLFrameElement::init):
3655         (WebCore::HTMLFrameElement::parseMappedAttribute):
3656         (WebCore::HTMLFrameElement::attach):
3657         * html/HTMLFrameElement.h:
3658         (WebCore::HTMLFrameElement::viewSourceMode):
3659         * html/HTMLTokenizer.cpp:
3660         (WebCore::HTMLTokenizer::HTMLTokenizer):
3661         (WebCore::HTMLTokenizer::scriptHandler):
3662         (WebCore::HTMLTokenizer::scriptExecution):
3663         (WebCore::HTMLTokenizer::parseTag):
3664         (WebCore::HTMLTokenizer::continueProcessing):
3665         (WebCore::HTMLTokenizer::write):
3666         (WebCore::HTMLTokenizer::timerFired):
3667         (WebCore::HTMLTokenizer::end):
3668         (WebCore::HTMLTokenizer::processToken):
3669         (WebCore::HTMLTokenizer::notifyFinished):
3670         * html/HTMLTokenizer.h:
3671         * html/HTMLViewSourceDocument.cpp: Added.
3672         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
3673         (WebCore::HTMLViewSourceDocument::createTokenizer):
3674         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
3675         (WebCore::HTMLViewSourceDocument::addViewSourceAttribute):
3676         (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
3677         * html/HTMLViewSourceDocument.h: Added.
3678         * page/Frame.cpp:
3679         (WebCore::Frame::begin):
3680         (WebCore::Frame::inViewSourceMode):
3681         (WebCore::Frame::setInViewSourceMode):
3682         * page/Frame.h:
3683         * page/FramePrivate.h:
3684         (WebCore::FramePrivate::FramePrivate):
3685         * rendering/RenderPartObject.cpp:
3686         (WebCore::RenderPartObject::updateWidget):
3687
3688 2006-06-26  Anders Carlsson  <acarlsson@apple.com>
3689
3690         Reviewed by Darin.
3691
3692         http://bugzilla.opendarwin.org/show_bug.cgi?id=9031
3693         REGRESSION: Crash when closing tabs on newegg.com
3694         
3695         * page/Frame.cpp:
3696         (WebCore::Frame::pageDestroyed):        
3697         * page/Frame.h:
3698         Add new method which is invoked when the frame's page has been destroyed.
3699         Currently this function disassociates the JS Window object with the frame, 
3700         stopping any running JS timers.
3701         
3702         * page/Page.cpp:
3703         (WebCore::Page::~Page):
3704         Call pageDestroyed on all frames.
3705
3706 2006-06-26  Rob Buis  <buis@kde.org>
3707
3708         Reviewed and reworked by Darin.
3709
3710         Code cleanup, calculate clientX/clientY in one central place.
3711
3712         * dom/EventTargetNode.h:
3713         * dom/EventTargetNode.cpp: (WebCore::EventTargetNode::dispatchMouseEvent):
3714         Renamed parameters to pageX/Y since they aren't clientX/Y values.
3715         Removed code to compute clientX/Y (was a bit confused in naming before),
3716         because that's now done inside MouseEvent.
3717
3718         * dom/MouseEvent.h:
3719         * dom/MouseEvent.cpp:
3720         (WebCore::MouseEvent::MouseEvent): Removed clientX/Y parameters.
3721         (WebCore::MouseEvent::initMouseEvent): Added comments about problems I noticed.
3722         (WebCore::MouseEvent::which): Fixed comment that confusingly mentioned KHTML,
3723         when it was talking about the DOM standard.
3724
3725         * dom/MouseRelatedEvent.h:
3726         * dom/MouseRelatedEvent.cpp:
3727         (WebCore::contentsX): Added helper function.
3728         (WebCore::contentsY): Ditto.
3729         (WebCore::MouseRelatedEvent::MouseRelatedEvent): Removed clientX/Y parameter,
3730         and added code to compute clientX/Y based on pageX/Y.
3731         (WebCore::MouseRelatedEvent::receivedTarget): Fixed comments.
3732
3733         * dom/WheelEvent.h:
3734         * dom/WheelEvent.cpp: (WebCore::WheelEvent::WheelEvent): Removed clientX/Y
3735         parameter.
3736
3737         * page/FrameView.cpp: (WebCore::FrameView::dispatchDragEvent): Removed the code
3738         to compute coordinates, and renamed the confusingly named clientPos (which was
3739         a page-relative position) to contentsPos.
3740
3741 2006-06-25  David Carson  <dacarson@gmail.com>
3742
3743         Reviewed and tweaked by Darin.
3744
3745         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9185
3746         REGRESSION: UserID field appears with an incorrect height 
3747         on americanexpresslogin page
3748         - Height and Width attribute only applies to IMAGE and HIDDEN
3749         types.
3750
3751         * dom/NamedMappedAttrMap.h:
3752         (WebCore::NamedMappedAttrMap::getAttributeItem):
3753         Added to static_cast method.
3754
3755         * html/HTMLInputElement.cpp:
3756         (WebCore::HTMLInputElement::setInputType):
3757         Update the style decl if input type has changed.
3758         (WebCore::HTMLInputElement::mapToEntry):
3759         Only Cache height and width if it is an IMAGE or HIDDEN
3760         (WebCore::HTMLInputElement::parseMappedAttribute):
3761         Check type before adding height and width style.
3762         (WebCore::HTMLInputElement::attach):
3763         Remove code for discarding width.
3764
3765         * html/HTMLInputElement.h:
3766         (WebCore::HTMLInputElement::respectHeightAndWidthAttrs):
3767         New method added to report if this input type uses height & width.
3768
3769 2006-06-25  David Kilzer  <ddkilzer@kilzer.net>
3770
3771         Reviewed by Darin.
3772
3773         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9537
3774           REGRESSION: Reproducible crash in WebCore::RenderTextField::textWithHardLineBreaks()
3775
3776         Test: fast/forms/textarea-hard-linewrap-empty.html
3777
3778         * rendering/RenderTextField.cpp:
3779         (WebCore::RenderTextField::textWithHardLineBreaks): Added null check for
3780         m_div->firstChild()->renderer().
3781
3782 2006-06-25  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3783
3784         Reviewed by Darin.
3785
3786         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9388
3787           REGRESSION: outlines don't get erased when removed in some cases
3788
3789         Test: fast/repaint/outline-shrinking.html
3790
3791         * rendering/RenderObject.cpp:
3792         (WebCore::RenderObject::setStyle): Always repaint with the old style if the outline is
3793         becoming narrower, even if we are going to relayout.
3794
3795 2006-06-25  Rob Buis  <buis@kde.org>
3796
3797         Reviewed by Darin.
3798
3799         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8707:
3800         event.clientX and event.clientY should be relative to the viewport, not the canvas
3801
3802         Make sure clientX and clientY take into account the scroll offsets
3803         of the view.
3804
3805         * dom/EventTargetNode.cpp:
3806         (WebCore::EventTargetNode::dispatchMouseEvent):
3807         * dom/MouseEvent.cpp:
3808         (WebCore::MouseEvent::MouseEvent):
3809         * dom/MouseEvent.h:
3810         * dom/MouseRelatedEvent.cpp:
3811         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
3812         (WebCore::MouseRelatedEvent::initCoordinates):
3813         * dom/MouseRelatedEvent.h:
3814         * dom/WheelEvent.cpp:
3815         (WebCore::WheelEvent::WheelEvent):
3816         * page/FrameView.cpp:
3817         (WebCore::FrameView::dispatchDragEvent):
3818
3819 2006-06-25  Timothy Hatcher  <timothy@apple.com>
3820
3821         Reviewed by Darin.
3822
3823         Bug 9574: Drosera should show inline scripts within the original HTML
3824         http://bugzilla.opendarwin.org/show_bug.cgi?id=9574
3825
3826         * Pass the starting line number and error message to the debugger.
3827         * Call parsedSource even if there was a script parse error so the
3828           debugger can show the parse error.
3829         * Pass NSURL objects to the ObjC delegate for the script URLs.
3830
3831         * bridge/mac/WebCoreScriptDebugger.h:
3832         * bridge/mac/WebCoreScriptDebugger.mm:
3833         (toNSURL):
3834         (WebCoreScriptDebuggerImp::sourceParsed):
3835
3836 2006-06-24  David Kilzer  <ddkilzer@kilzer.net>
3837
3838         Build fix.  Reviewed by NOBODY.
3839
3840         - Backed out patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=8707
3841           event.clientX and event.clientY should be relative to the viewport, not the canvas
3842
3843         * dom/EventTargetNode.cpp:
3844         (WebCore::EventTargetNode::dispatchMouseEvent):
3845         * dom/MouseEvent.cpp:
3846         (WebCore::MouseEvent::MouseEvent):
3847         * dom/MouseEvent.h:
3848         * dom/MouseRelatedEvent.cpp:
3849         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
3850         (WebCore::MouseRelatedEvent::initCoordinates):
3851         * dom/MouseRelatedEvent.h:
3852         * dom/WheelEvent.cpp:
3853         (WebCore::WheelEvent::WheelEvent):
3854
3855 2006-06-24  Rob Buis  <buis@kde.org>
3856
3857         Reviewed by Darin.
3858
3859         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8707:
3860         event.clientX and event.clientY should be relative to the viewport, not the canvas
3861
3862         Make sure clientX and clientY take into account the scroll offsets
3863         of the view.
3864
3865         Test: fast/dom/window-xy-properties.html
3866
3867         * dom/EventTargetNode.cpp:
3868         (WebCore::EventTargetNode::dispatchMouseEvent):
3869         * dom/MouseEvent.cpp:
3870         (WebCore::MouseEvent::MouseEvent):
3871         * dom/MouseEvent.h:
3872         * dom/MouseRelatedEvent.cpp:
3873         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
3874         (WebCore::MouseRelatedEvent::initCoordinates):
3875         * dom/MouseRelatedEvent.h:
3876         * dom/WheelEvent.cpp:
3877         (WebCore::WheelEvent::WheelEvent):
3878
3879 2006-06-24  Rob Buis  <buis@kde.org>
3880
3881         Reviewed by Darin.
3882
3883         http://bugzilla.opendarwin.org/show_bug.cgi?id=9352
3884         Webkit doesn't respect stroke-width in SVG for smaller <circle>s
3885
3886         Make sure the stroke path is set before applying gradient transforms.
3887
3888         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
3889         (WebCore::KRenderingPaintServerGradientQuartz::setup):
3890         (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
3891
3892 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
3893
3894         Rubber-stamped by Eric.
3895
3896         Add a -h (do not follow symlinks) option to ln in derived sources build script (without it,
3897         a symlink was created inside the source directory on second build).
3898
3899         * WebCore.xcodeproj/project.pbxproj:
3900
3901 2006-06-24  James G. Speth  <speth@end.com>
3902
3903         Reviewed by Darin.  Copyrights tweaked by ddkilzer.
3904         
3905         Bug 8331: DOMNodeLists returned to Objective-C are not properly wrapped
3906         http://bugzilla.opendarwin.org/show_bug.cgi?id=8331
3907         
3908         DOMNodes were the only objects handled by createObjcInstanceForValue.
3909         now it handles all of these: DOMNode, DOMNodeList, DOMNamedNodeMap, DOMStyleSheetList,
3910         DOMStyleSheet, DOMMediaList, DOMCSSRuleList, DOMCSSRule, DOMCSSStyleDeclaration, and DOMCSSValue
3911         
3912         * WebCore.xcodeproj/project.pbxproj: added file DOMCSSInternal.h to project
3913         * bindings/js/kjs_css.cpp:
3914         (KJS::): changed ClassInfo for DOMCSSStyleSheet to have DOMStyleSheet as its parent class
3915         * bindings/objc/DOM.mm:
3916         (-[DOMDocumentType :]):  moved DOMNamedNodeMap (WebCoreInternal) interface to DOMInternal.h
3917         * bindings/objc/DOMCSS.mm: moved WebCoreInternal interfaces to DOMCSSInternal.h
3918         * bindings/objc/DOMCSSInternal.h: Added file, contains WebCoreInternal interface for CSS classes
3919         * bindings/objc/DOMInternal.h: added DOMNamedNodeMap (WebCoreInternal) interface
3920         * bindings/objc/DOMUtility.mm:
3921         (KJS::ScriptInterpreter::createObjcInstanceForValue): support for more classes
3922
3923 2006-06-24  David Kilzer  <ddkilzer@kilzer.net>
3924
3925         Reviewed by Timothy.
3926
3927         * Info.plist: Fixed copyright to include 2003-2006.
3928         * manual-tests/NPN_Invoke/Info.plist: Added copyright statement.
3929
3930 2006-06-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3931
3932         Reviewed by Darin, landed by ap.
3933
3934         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9547
3935           Resize corner does not track the mouse accurately
3936
3937         Test: fast/css/resize-corner-tracking.html
3938
3939         * page/FrameView.cpp:
3940         (WebCore::FrameView::handleMousePressEvent): Store the offset from the layer's
3941         resizing corner where dragging has started.
3942         (WebCore::FrameView::handleMouseMoveEvent): Pass the stored offset to the
3943         layer's resize method.
3944         * rendering/RenderLayer.cpp:
3945         (WebCore::RenderLayer::resize): Added an offset parameter, which is added to
3946         the mouse location.
3947         For objects that may have intrinsic margins applied to them,
3948         added code to lift the margins into the object's style in order to keep them
3949         constant.
3950         Changed to take the content size as the base size if the box-sizing property
3951         is content-box.
3952         (WebCore::RenderLayer::offsetFromResizeCorner): Added. Returns the offset of the
3953         given point from the corner that tracks the mouse when resizing.
3954         * rendering/RenderLayer.h:
3955
3956 2006-06-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3957
3958         Reviewed by Darin, landed by ap.
3959
3960         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9316
3961           REGRESSION: text field width shrinks on first keystroke
3962
3963         Test: fast/forms/floating-textfield-relayout.html
3964
3965         * page/FrameView.cpp:
3966         (WebCore::FrameView::layoutRoot): Added. During subtree relayout, returns
3967         the subtree root. Otherwise returns 0.
3968         (WebCore::FrameView::layoutPending): Made const.
3969         * page/FrameView.h:
3970         * rendering/RenderBox.cpp:
3971         (WebCore::RenderBox::calcWidth): Added early return if this is the root
3972         of a subtree being laid out. 
3973
3974 2006-06-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3975
3976         Reviewed by Hyatt.
3977
3978         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9531
3979           Pages that need only a horizontal scroll bar get a vertical one as well
3980
3981         The change affects many existing tests.
3982
3983         * page/FrameView.cpp:
3984         (WebCore::FrameView::layout): Mark the body renderer as needing layout if
3985         the view's height has changed and the body stretches to the view's height.
3986         * rendering/RenderBox.cpp:
3987         (WebCore::RenderBox::calcHeight):
3988         * rendering/RenderBox.h:
3989         (WebCore::RenderBox::stretchesToViewHeight): Added. Moved the logic for when
3990         the HTML block needs to stretch to the view's height from calcHeight() here.
3991
3992 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
3993
3994         Reviewed by Darin.
3995
3996         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7461
3997           Always encode the path part of an URI as UTF-8
3998
3999         Test: http/tests/uri/utf8-path.html
4000
4001         * platform/KURL.cpp:
4002         (encodeRelativeString): Always set pathEncoding to UTF-8.
4003
4004 2006-06-24  Graham Dennis  <Graham.Dennis@gmail.com>
4005
4006         Reviewed by Darin, landed by ap.
4007         
4008         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9467
4009           TreeWalker/NodeIterator do not restrict the traversal
4010         
4011         Test: traversal/stay-within-root.html
4012
4013         * dom/Node.cpp:
4014         (WebCore::Node::traversePreviousNode):
4015         * dom/Node.h:
4016         Add a stayWithin argument to traversePreviousNode just like the other
4017         traversal functions
4018         * dom/NodeIterator.cpp:
4019         (WebCore::NodeIterator::findNextNode):
4020         (WebCore::NodeIterator::findPreviousNode):
4021         Ensure that when moving forward or backward that the root node is not
4022         exited
4023         * dom/TreeWalker.cpp:
4024         (WebCore::TreeWalker::previousNode):
4025         (WebCore::TreeWalker::nextNode):
4026         Ditto
4027         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
4028
4029 2006-06-24  Jonas Witt <jonas.witt@gmail.com>
4030
4031         Reviewed by ggaren, landed by ap.
4032
4033         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9181
4034           Complete DOMUIEvent Obj-C API to reflect UIEvent
4035
4036         * WebCore.exp: add new classes DOMKeyboardEvent and DOMWheelEvent to the exported 
4037           symbols list of WebCore.framework
4038
4039         Updated DOMUIEvent to include all DOM Level 2 properties
4040         Added DOMKeyboardEvent (DOM Level 3)
4041         Added two non-W3C accessors (keyCode, charCode) of DOMKeyboardEvent to a separate file (DOMEventsNonstandard)
4042         Added DOMWheelEvent (non-W3C) in separate file (DOMEventsNonstandard)
4043         Added this file (DOMEventsNonstandard) to the build process
4044
4045         * WebCore.xcodeproj/project.pbxproj:
4046         * bindings/objc/DOM.h:
4047         * bindings/objc/DOMEvents.h:
4048         * bindings/objc/DOMEvents.mm:
4049         (+[DOMEvent _eventWith:]):
4050         (-[DOMUIEvent _UIEvent]):
4051         (-[DOMUIEvent view]):
4052         (-[DOMUIEvent detail]):
4053         (-[DOMUIEvent initUIEvent:::::]):
4054         (-[DOMKeyboardEvent _keyboardEvent]):
4055         (-[DOMKeyboardEvent keyIdentifier]):
4056         (-[DOMKeyboardEvent keyLocation]):
4057         (-[DOMKeyboardEvent ctrlKey]):
4058         (-[DOMKeyboardEvent shiftKey]):
4059         (-[DOMKeyboardEvent altKey]):
4060         (-[DOMKeyboardEvent metaKey]):
4061         (-[DOMKeyboardEvent getModifierState:]):
4062         (-[DOMMouseEvent button]):
4063         * bindings/objc/DOMEventsNonstandard.mm: Added.
4064         (-[DOMWheelEvent _wheelEvent]):
4065         (-[DOMWheelEvent screenX]):
4066         (-[DOMWheelEvent screenY]):
4067         (-[DOMWheelEvent clientX]):
4068         (-[DOMWheelEvent clientY]):
4069         (-[DOMWheelEvent ctrlKey]):
4070         (-[DOMWheelEvent shiftKey]):
4071         (-[DOMWheelEvent altKey]):
4072         (-[DOMWheelEvent metaKey]):
4073         (-[DOMWheelEvent isHorizontal]):
4074         (-[DOMWheelEvent wheelDelta]):
4075         (-[DOMKeyboardEvent _keyboardEvent]):
4076         (-[DOMKeyboardEvent keyCode]):
4077         (-[DOMKeyboardEvent charCode]):
4078         * bindings/objc/DOMPrivate.h:
4079
4080 2006-06-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
4081
4082         Reviewed and landed by ap.
4083
4084         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9563
4085           Remove unused layoutSuppressed field and inLayout() method
4086
4087         No test added because there is no change in functionality.
4088
4089         * page/FrameView.cpp:
4090         (WebCore::FrameViewPrivate::reset):
4091         (WebCore::FrameView::layout):
4092         * page/FrameView.h:
4093         * rendering/RenderView.cpp:
4094         (WebCore::RenderView::layout):
4095
4096 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
4097
4098         Reviewed by Darin.
4099
4100         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8177
4101         Javascript search incredibly slow
4102
4103         No change in functionality, thus no test.
4104
4105         Use info sharing for named collections, too. Moved shared HTMLCollection infos from HTMLDocument 
4106         to Document.  Renamed collection types to use the preferred WebKit style. Replaced direct
4107         HTMLCollection creation with using accessors from Document in a few places.
4108
4109         * bindings/objc/DOMHTML.mm:
4110         (-[DOMHTMLElement children]):
4111         (-[DOMHTMLDocument images]):
4112         (-[DOMHTMLDocument applets]):
4113         (-[DOMHTMLDocument links]):
4114         (-[DOMHTMLDocument forms]):
4115         (-[DOMHTMLDocument anchors]):
4116         (-[DOMHTMLMapElement areas]):
4117         (-[DOMHTMLTableSectionElement rows]):
4118         (-[DOMHTMLTableElement rows]):
4119         (-[DOMHTMLTableElement tBodies]):
4120         (-[DOMHTMLTableRowElement cells]):
4121         * dom/Document.cpp:
4122         (WebCore::Document::images):
4123         (WebCore::Document::applets):
4124         (WebCore::Document::embeds):
4125         (WebCore::Document::objects):
4126         (WebCore::Document::scripts):
4127         (WebCore::Document::links):
4128         (WebCore::Document::forms):
4129         (WebCore::Document::anchors):
4130         (WebCore::Document::all):
4131         (WebCore::Document::windowNamedItems):
4132         (WebCore::Document::documentNamedItems):
4133         (WebCore::Document::nameCollectionInfo):
4134         * dom/Document.h:
4135         (WebCore::Document::collectionInfo):
4136         * html/HTMLCollection.cpp:
4137         (WebCore::HTMLCollection::HTMLCollection):
4138         (WebCore::HTMLCollection::traverseNextItem):
4139         (WebCore::HTMLCollection::checkForNameMatch):
4140         (WebCore::HTMLCollection::updateNameCache):
4141         * html/HTMLCollection.h:
4142         (WebCore::HTMLCollection::):
4143         * html/HTMLDocument.h:
4144         * html/HTMLElement.cpp:
4145         (WebCore::HTMLElement::children):
4146         * html/HTMLMapElement.cpp:
4147         (WebCore::HTMLMapElement::areas):
4148         * html/HTMLNameCollection.h:
4149         * html/HTMLNameCollection.cpp:
4150         (WebCore::HTMLNameCollection::HTMLNameCollection):
4151         (WebCore::HTMLNameCollection::traverseNextItem):
4152         * html/HTMLFormCollection.cpp:
4153         * html/HTMLOptionsCollection.cpp:
4154         (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
4155         * html/HTMLSelectElement.h:
4156         (WebCore::HTMLSelectElement::collectionInfo):
4157         * html/HTMLTableElement.cpp:
4158         (WebCore::HTMLTableElement::rows):
4159         (WebCore::HTMLTableElement::tBodies):
4160         * html/HTMLTableRowElement.cpp:
4161         (WebCore::HTMLTableRowElement::cells):
4162         * html/HTMLTableSectionElement.cpp:
4163         (WebCore::HTMLTableSectionElement::rows):
4164         * kwq/WebCoreAXObject.mm:
4165         (-[WebCoreAXObject accessibilityAttributeValue:]):
4166         * page/Frame.cpp:
4167         (WebCore::Frame::gotoAnchor):
4168
4169 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
4170
4171         Reviewed by Darin.
4172
4173         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9418
4174         WebKit will not build when Space exists in path
4175
4176         * WebCore.xcodeproj/project.pbxproj: Enclose search paths in quotes; create symlinks to