LayoutTests:
[WebKit-https.git] / WebCore / ChangeLog
1 2006-11-02  Adele Peterson  <adele@apple.com>
2
3         Reviewed by Mitz and Geoff.
4
5         - Fix for:
6         <rdar://problem/4650271> REGRESSION(NativeTextArea): Textareas don't get scrollbars when text gets too big for content area (10105)
7         <rdar://problem/4650813> REGRESSION(tiger-leopard): typing in a textarea in Safari is extremely slow (sample shows focus ring drawing)
8         <rdar://problem/4658779> REGRESSION: Text selection is weird in textareas in Trac wiki editing pages
9
10         Test: fast/forms/textarea-scrollbar.html
11
12         To avoid some of our flexbox bugs for textareas, we're moving the text controls back to RenderBlock.  This should make them
13         a lot more stable.  In the future, when we've worked out more of the flexbox kinks, we may want to consider moving them back.
14
15         * rendering/RenderTextControl.h: Convert text controls back to RenderBlock instead of RenderFlexibleBox.
16         * rendering/RenderTextControl.cpp: 
17         (WebCore::RenderTextControl::RenderTextControl):
18         (WebCore::RenderTextControl::setStyle):
19         (WebCore::RenderTextControl::createDivStyle):
20         (WebCore::RenderTextControl::updateFromElement):
21         (WebCore::RenderTextControl::calcHeight):
22         (WebCore::RenderTextControl::baselinePosition):
23         (WebCore::RenderTextControl::nodeAtPoint):
24         (WebCore::RenderTextControl::layout): Set the inner div's height explicitly before doing a normal layout.
25         (WebCore::RenderTextControl::scrollWidth):
26         (WebCore::RenderTextControl::scrollHeight):
27         (WebCore::RenderTextControl::scrollLeft):
28         (WebCore::RenderTextControl::scrollTop):
29
30         * rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout): Make subtree layout optimization work for textareas.
31
32 2006-11-02  John Sullivan  <sullivan@apple.com>
33
34         Reviewed by Geoff Garen
35
36         * editing/Selection.cpp:
37         (WebCore::Selection::showTreeForThis):
38         this debugging method now displays start offset and end offset, at Darin's suggestion
39
40 2006-11-01  Justin Garcia  <justin.garcia@apple.com>
41
42         Reviewed by darin
43
44         <rdar://problem/4062865>
45         Copy/paste of a select element fails to include the options
46         
47         * editing/SelectionController.cpp:
48         (WebCore::SelectionController::modify): Added paragraphBoundary.
49         * editing/htmlediting.cpp:
50         (WebCore::canHaveChildrenForEditing): Added checks for input elements
51         and textareas.  Insertion operations would fail when performed just 
52         before/after one of these elements b/c the content would be put inside 
53         the element.
54         (WebCore::enclosingNodeWithTag): Fixed a problem when calling these in non
55         editable content, and made the code to stop at an root faster (don't check
56         isDescendantOf on every iteration).
57         (WebCore::enclosingNodeOfType): Ditto.
58         (WebCore::enclosingList): Ditto.
59         (WebCore::enclosingListChild): Ditto.  Added a FIXME, this function seems
60         inappropriately named.
61         * editing/markup.cpp:
62         (WebCore::startMarkup): Use the text node's value instead of its rendered
63         content for text nodes inside select elements.  One might also turn off
64         annotation when createMarkup enters a select element, but createMarkup
65         is iterative, not recursive, so doing so would be complicated.
66         (WebCore::createMarkup): Add markup for unrendered nodes if they are 
67         descendants of a select element.
68         * editing/visible_units.cpp:
69         (WebCore::startOfParagraph): Migrate to isBlock/enclosingBlock.  Fixes bug
70         where various replaced elements can't be copied when they are the only
71         thing selected.
72         (WebCore::endOfParagraph): Ditto.
73
74 2006-11-01  Oliver Hunt  <oliver@apple.com>
75
76         Reviewed by Adam.
77
78         Converting more or kcanvas/quartz from Obj-C to C++
79         Minor SVG updates
80         compatibility fixes
81
82         * WebCore.xcodeproj/project.pbxproj:
83         * kcanvas/device/KRenderingPaintServer.h:
84         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.cpp: Added.
85         (WebCore::KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
86         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm: Removed.
87         * kcanvas/device/quartz/KRenderingPaintServerQuartz.cpp: Added.
88         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm: Removed.
89         * kcanvas/device/quartz/QuartzSupport.h:
90         * ksvg2/css/SVGCSSStyleSelector.cpp:
91         * ksvg2/misc/KCanvasRenderingStyle.h:
92         * ksvg2/scripts/cssmakeprops:
93         * ksvg2/scripts/cssmakevalues:
94         * ksvg2/scripts/make_names.pl:
95         * ksvg2/svg/SVGAnimateColorElement.cpp:
96         * ksvg2/svg/SVGAnimateTransformElement.cpp:
97         * ksvg2/svg/SVGAnimationElement.cpp:
98         * ksvg2/svg/SVGMaskElement.cpp:
99         * ksvg2/svg/SVGPatternElement.cpp:
100         * ksvg2/svg/svgpathparser.cpp:
101         * platform/Path.cpp:
102         * platform/graphics/svg/SVGResourceImage.h:
103         * rendering/RenderPath.cpp:
104         * rendering/SVGRenderAsText.cpp:
105
106 2006-11-02  Mitz Pettel  <mitz@webkit.org>
107
108         Reviewed by Adele.
109
110         - Fix a regression from r17521: painting of and crash caused by tables
111           with collapsed borders
112
113         * rendering/RenderTable.cpp:
114         (WebCore::RenderTable::paint): Changed 'paintInfo' to 'info'. Prior to
115         r17521, 'paintInfo' was the local variable. Now 'info' is the local variable
116         and 'paintInfo' is the parameter, which we were accidently modifying.
117
118 2006-11-01  Adele Peterson  <adele@apple.com>
119
120         Reviewed by Mitz.
121
122         - Fix for http://bugs.webkit.org/show_bug.cgi?id=11277
123         REGRESSION: Incomplete repaint of overflow areas when deleting
124
125         Restrict the repaint rect for overflow blocks after the height has been fully computed.
126         Also, adjust the repaint rect coordinates for the scroll offset.
127
128         * rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock):
129         * rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren):
130
131 2006-11-01  Sam Weinig  <sam.weinig@gmail.com>
132
133         Reviewed by Mitz.
134
135         Fix for http://bugs.webkit.org/show_bug.cgi?id=11474
136         Rename the "p" member variable of the PaintInfo struct to "context"
137
138         - Renames the 'p' and 'r' member variables of the PaintInfo struct to
139           'context' and 'rect' respectively.
140
141         - Assorted surrounding cleanups.
142
143         * rendering/EllipsisBox.cpp:
144         (WebCore::EllipsisBox::paint):
145         * rendering/EllipsisBox.h:
146         * rendering/InlineBox.cpp:
147         (WebCore::InlineBox::paint):
148         * rendering/InlineFlowBox.cpp:
149         (WebCore::InlineFlowBox::paint):
150         (WebCore::InlineFlowBox::paintBackground):
151         (WebCore::InlineFlowBox::paintBackgroundAndBorder):
152         (WebCore::InlineFlowBox::paintDecorations):
153         * rendering/InlineFlowBox.h:
154         * rendering/InlineRunBox.h:
155         * rendering/InlineTextBox.cpp:
156         (WebCore::InlineTextBox::paint):
157         * rendering/InlineTextBox.h:
158         * rendering/RenderBlock.cpp:
159         (WebCore::RenderBlock::paint):
160         (WebCore::RenderBlock::paintChildren):
161         (WebCore::RenderBlock::paintCaret):
162         (WebCore::RenderBlock::paintObject):
163         (WebCore::RenderBlock::paintFloats):
164         (WebCore::RenderBlock::paintEllipsisBoxes):
165         (WebCore::RenderBlock::paintSelection):
166         (WebCore::RenderBlock::fillSelectionGaps):
167         (WebCore::RenderBlock::fillInlineSelectionGaps):
168         (WebCore::RenderBlock::fillBlockSelectionGaps):
169         (WebCore::RenderBlock::fillHorizontalSelectionGap):
170         (WebCore::RenderBlock::fillVerticalSelectionGap):
171         (WebCore::RenderBlock::fillLeftSelectionGap):
172         (WebCore::RenderBlock::fillRightSelectionGap):
173         * rendering/RenderBox.cpp:
174         (WebCore::RenderBox::paint):
175         (WebCore::RenderBox::paintRootBoxDecorations):
176         (WebCore::RenderBox::paintBoxDecorations):
177         * rendering/RenderBox.h:
178         * rendering/RenderButton.cpp:
179         (WebCore::RenderButton::paintObject):
180         * rendering/RenderFieldset.cpp:
181         (WebCore::RenderFieldset::paintBoxDecorations):
182         * rendering/RenderFileUploadControl.cpp:
183         (WebCore::RenderFileUploadControl::paintObject):
184         * rendering/RenderFlow.cpp:
185         (WebCore::RenderFlow::continuationBefore):
186         (WebCore::RenderFlow::addChildWithContinuation):
187         (WebCore::RenderFlow::addChild):
188         (WebCore::RenderFlow::attachLineBox):
189         (WebCore::RenderFlow::destroy):
190         (WebCore::RenderFlow::dirtyLinesFromChangedChild):
191         (WebCore::RenderFlow::dirtyLineBoxes):
192         (WebCore::RenderFlow::createInlineBox):
193         (WebCore::RenderFlow::paintLines):
194         (WebCore::RenderFlow::getAbsoluteRepaintRect):
195         (WebCore::RenderFlow::lowestPosition):
196         (WebCore::RenderFlow::rightmostPosition):
197         (WebCore::RenderFlow::leftmostPosition):
198         (WebCore::RenderFlow::caretRect):
199         (WebCore::RenderFlow::addFocusRingRects):
200         (WebCore::RenderFlow::paintOutline):
201         (WebCore::RenderFlow::paintOutlineForLine):
202         * rendering/RenderForeignObject.cpp:
203         (WebCore::RenderForeignObject::paint):
204         * rendering/RenderHTMLCanvas.cpp:
205         (WebCore::RenderHTMLCanvas::paint):
206         * rendering/RenderImage.cpp:
207         (WebCore::RenderImage::paint):
208         * rendering/RenderLayer.cpp:
209         (WebCore::RenderLayer::paintLayer):
210         * rendering/RenderListBox.cpp:
211         (WebCore::RenderListBox::paintObject):
212         (WebCore::RenderListBox::paintScrollbar):
213         (WebCore::RenderListBox::paintItemForeground):
214         (WebCore::RenderListBox::paintItemBackground):
215         * rendering/RenderListMarker.cpp:
216         (WebCore::RenderListMarker::paint):
217         * rendering/RenderMenuList.cpp:
218         (WebCore::RenderMenuList::paintObject):
219         * rendering/RenderObject.cpp:
220         (WebCore::RenderObject::paint):
221         * rendering/RenderObject.h:
222         (WebCore::RenderObject::PaintInfo::PaintInfo):
223         (WebCore::RenderObject::paintBoxDecorations):
224         (WebCore::RenderObject::paintingRootForChildren):
225         (WebCore::RenderObject::shouldPaintWithinRoot):
226         (WebCore::RenderObject::printBoxDecorations):
227         * rendering/RenderPath.cpp:
228         (WebCore::RenderPath::paint):
229         * rendering/RenderReplaced.cpp:
230         (WebCore::RenderReplaced::shouldPaint):
231         * rendering/RenderSVGContainer.cpp:
232         (WebCore::RenderSVGContainer::paint):
233         * rendering/RenderSVGContainer.h:
234         * rendering/RenderSVGImage.cpp:
235         (WebCore::RenderSVGImage::paint):
236         * rendering/RenderSVGText.cpp:
237         (WebCore::RenderSVGText::paint):
238         * rendering/RenderSVGText.h:
239         (WebCore::RenderSVGText::renderName):
240         * rendering/RenderTable.cpp:
241         (WebCore::RenderTable::paint):
242         (WebCore::RenderTable::paintBoxDecorations):
243         * rendering/RenderTable.h:
244         * rendering/RenderTableCell.cpp:
245         (WebCore::RenderTableCell::paint):
246         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
247         (WebCore::RenderTableCell::paintBoxDecorations):
248         * rendering/RenderTableCell.h:
249         * rendering/RenderTableRow.cpp:
250         (WebCore::RenderTableRow::paint):
251         * rendering/RenderTableRow.h:
252         * rendering/RenderTableSection.cpp:
253         (WebCore::RenderTableSection::paint):
254         * rendering/RenderTableSection.h:
255         (WebCore::RenderTableSection::getBaseline):
256         (WebCore::RenderTableSection::setNeedCellRecalc):
257         * rendering/RenderText.h:
258         (WebCore::RenderText::renderName):
259         (WebCore::RenderText::paint):
260         (WebCore::RenderText::element):
261         * rendering/RenderTheme.cpp:
262         (WebCore::RenderTheme::paint):
263         (WebCore::RenderTheme::paintBorderOnly):
264         (WebCore::RenderTheme::paintDecorations):
265         * rendering/RenderTheme.h:
266         (WebCore::RenderTheme::RenderTheme):
267         (WebCore::RenderTheme::~RenderTheme):
268         (WebCore::RenderTheme::controlSupportsTints):
269         (WebCore::RenderTheme::adjustRepaintRect):
270         (WebCore::RenderTheme::themeChanged):
271         (WebCore::RenderTheme::supportsHover):
272         (WebCore::RenderTheme::paintCheckbox):
273         (WebCore::RenderTheme::setCheckboxSize):
274         (WebCore::RenderTheme::paintRadio):
275         (WebCore::RenderTheme::setRadioSize):
276         (WebCore::RenderTheme::paintButton):
277         (WebCore::RenderTheme::setButtonSize):
278         (WebCore::RenderTheme::paintTextField):
279         (WebCore::RenderTheme::paintTextArea):
280         (WebCore::RenderTheme::paintMenuList):
281         (WebCore::RenderTheme::paintMenuListButton):
282         * rendering/RenderThemeMac.mm:
283         (WebCore::RenderThemeMac::paintCheckbox):
284         (WebCore::RenderThemeMac::paintRadio):
285         (WebCore::RenderThemeMac::paintButton):
286         (WebCore::RenderThemeMac::paintTextField):
287         (WebCore::RenderThemeMac::paintTextArea):
288         (WebCore::RenderThemeMac::paintMenuList):
289         (WebCore::RenderThemeMac::paintMenuListButtonGradients):
290         (WebCore::RenderThemeMac::paintMenuListButton):
291         * rendering/RenderView.cpp:
292         (WebCore::RenderView::paint):
293         (WebCore::RenderView::paintBoxDecorations):
294         * rendering/RenderView.h:
295         * rendering/RenderWidget.cpp:
296         (WebCore::RenderWidget::paint):
297         * rendering/RenderWidget.h:
298         (WebCore::RenderWidget::isWidget):
299         * rendering/RootInlineBox.cpp:
300         (WebCore::RootInlineBox::paintEllipsisBox):
301         (WebCore::RootInlineBox::paintCustomHighlight):
302         (WebCore::RootInlineBox::paint):
303         (WebCore::RootInlineBox::fillLineSelectionGap):
304         * rendering/RootInlineBox.h:
305         * rendering/SVGInlineFlowBox.cpp:
306         (WebCore::paintSVGInlineFlow):
307
308 2006-11-01  Anders Carlsson  <acarlsson@apple.com>
309
310         Reviewed by Oliver, Brady.
311
312         * platform/network/ResourceResponse.h:
313         (WebCore::ResourceResponse::setLastModifiedDate):
314         (WebCore::ResourceResponse::lastModifiedDate):
315         Add getters and setters for last modified dadte.
316         
317         * platform/network/cf/ResourceResponseCFNet.cpp:
318         (WebCore::getResourceResponse):
319         Fetch the last modified date. Add correct offset to expired date.
320
321 2006-11-01  David Kilzer  <ddkilzer@kilzer.net>
322
323         Reviewed by Mitz.
324
325         Added missing "break;" statement in switch statement from r17493.
326
327         Bug 11442: [CSS 3] support for cursor: all-scroll
328         http://bugs.webkit.org/show_bug.cgi?id=11442
329
330         * css/CSSComputedStyleDeclaration.cpp:
331         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
332
333 2006-10-31  Mitz Pettel  <mitz@webkit.org>
334
335         Reviewed by Maciej.
336
337         - fix image dragging
338
339         This is covered by editing/selection/drag-to-contenteditable-iframe.html
340
341         * rendering/HitTestResult.cpp:
342         (WebCore::HitTestResult::altDisplayString): Changed imageTag to imgTag, for
343         HTML IMG elements.
344         (WebCore::HitTestResult::absoluteImageURL): Ditto.
345
346 2006-10-31  Beth Dakin  <bdakin@apple.com>
347
348         Reviewed by Maciej.
349
350         This adds the back-end of the remaining WebElementDictionary 
351         functions into HitTestResult.
352
353         * WebCore.exp:
354         * rendering/HitTestResult.cpp:
355         (WebCore::HitTestResult::title):
356         (WebCore::displayString): This is nearly identical to the 
357         displayString() defined in DOMInternal.mm except that it returns a 
358         String instead of an NSString. The old code path used the 
359         DOMInternal method, so I made a new one here for the new code path.
360         (WebCore::HitTestResult::altDisplayString):
361         (WebCore::HitTestResult::image):
362         (WebCore::HitTestResult::absoluteImageURL):
363         (WebCore::HitTestResult::absoluteLinkURL):
364         (WebCore::HitTestResult::titleDisplayString):
365         (WebCore::HitTestResult::textContent):
366         * rendering/HitTestResult.h:
367
368 2006-10-31  John Sullivan  <sullivan@apple.com>
369
370         * bridge/mac/FrameMac.mm:
371         (WebCore::FrameMac::markMisspellings):
372         Tiger build fix: added an #ifndef BUILDING_ON_TIGER where one was needed.
373
374 2006-10-31  John Sullivan  <sullivan@apple.com>
375
376         Reviewed by Maciej
377         
378         - fixed <rdar://problem/4804627> ToolTips do not appear for grammar suggestions
379         
380         The foundation of this was in my last checkin. This checkin is all about displaying
381         the correct string in the toolTip.
382
383         * dom/DocumentMarker.h:
384         New description field in this struct.
385
386         * bridge/mac/FrameMac.mm:
387         (WebCore::FrameMac::advanceToNextMisspelling):
388         When adding a grammar marker, supply the appropriate description. Also, added a comment
389         about the remaining work to make grammar checking return sensible answers.
390         (WebCore::FrameMac::markMisspellings):
391         ditto (yes, still needs some refactoring to minimize duplicated code)
392         
393         * dom/Document.h:
394         * dom/Document.cpp:
395         (WebCore::Document::addMarker):
396         Now takes an optional description string
397         (WebCore::Document::markerContainingPoint):
398         New function, returns a pointer to the (first) marker of the specified type whose rect 
399         contains the specified point, or 0 if none.
400         
401         * rendering/HitTestResult.cpp:
402         (WebCore::HitTestResult::spellingToolTip):
403         Replaced hardwired string placeholder implementation with code that uses markerContainingPoint
404         and gets the description from the marker.
405
406 2006-10-31  Geoffrey Garen  <ggaren@apple.com>
407
408         Reviewed by Maciej.
409         
410         Fixed crash resulting from Darin's last patch to remove BrowserExtension.
411
412         * loader/mac/FrameLoaderMac.mm:
413         (WebCore::FrameLoader::createWindow):
414         * manual-tests/window-open-features-parsing.html: Updated for clarity.
415
416 2006-10-31  Geoffrey Garen  <ggaren@apple.com>
417
418         Reviewed by Alice.
419
420         Moved some Editing code from WebKit, the bridge, and WebCore::Frame down 
421         to WebCore::Editor.
422         
423         Layout tests pass.
424         
425         Renamed "may*" to "can*" because "can" is more accurate (these functions
426         aren't just about permission) and it matches WebKit.
427
428         (WebCore::FrameMac::handleMouseMoveEvent): Directly test for dragging in a 
429         password field. Now that WebCore fully implements canCopy(), it doesn't just
430         mean "the selection is not in a password field" anymore.
431         (-[WebCoreFrameBridge _shouldAllowAccessFrom:]): Removed this #ifed-out code. 
432         The fact that it's not called anymore may represent a security issue, but I
433         don't see how commented-out code will help reveal the issue, and the
434         bridge is going away, anyway.
435         * editing/SelectionController.h: Changed selection() calls to references
436         to m_sel, to match the rest of the file.
437
438 2006-10-31  Justin Garcia  <justin.garcia@apple.com>
439
440         Reviewed by harrison
441         
442         <rdar://problem/4711063>
443         Pasting 10K lines into Mail/Blot takes ~7sec, in TextEdit it takes ~1.5sec
444
445         * editing/ReplaceSelectionCommand.cpp:
446         (WebCore::ReplacementFragment::ReplacementFragment): Don't do the test
447         insertion and plain text string creation unless we need the string
448         for a BeforeTextInserted event handler or for a plain text only region.
449         (WebCore::ReplacementFragment::removeInterchangeNodes): Added, moved
450         code here from ReplacementFragment's constructor.
451         (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Added a
452         FIXME.
453         * editing/ReplaceSelectionCommand.h:
454
455 2006-10-31  Ada Chan  <adachan@apple.com>
456
457         Reviewed by Adam
458
459         Correct forward declarations of the HitTestRequest struct.
460
461         * rendering/EllipsisBox.h:
462         * rendering/InlineBox.h:
463         * rendering/InlineFlowBox.h:
464         * rendering/RenderLayer.h:
465         * rendering/RenderObject.h:
466
467 2006-10-31  John Sullivan  <sullivan@apple.com>
468
469         Reviewed by Beth and Adam
470
471         Support for displaying tooltips for bad grammar. Currently this always displays the same tooltip; 
472         next I'll make it use a string that's relevant for a specific grammar error.
473
474         * WebCore.exp:
475         export symbol for spellingToolTip function
476         
477         * rendering/HitTestResult.h:
478         * rendering/HitTestResult.cpp:
479         (WebCore::HitTestResult::spellingToolTip):
480         new function, returns the string to be used in a tool tip that describes the questionable grammar
481         
482         * rendering/InlineTextBox.h:
483         * rendering/InlineTextBox.cpp:
484         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
485         now takes a style and font, needed to compute the rect representing the range containing
486         questionable grammar. Computes the rect and associates it with the marker.
487         (WebCore::InlineTextBox::paintDocumentMarkers):
488         Pass in the style and font now needed by paintSpellingOrGrammarMarker
489
490 2006-10-31  Adele Peterson  <adele@apple.com>
491
492         Removed commented out variable from last checkin.
493
494         * html/HTMLSelectElement.cpp:
495         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
496
497 2006-10-31  Brady Eidson  <beidson@apple.com>
498
499         Build fix (unused variable in release builds)
500
501         * html/HTMLSelectElement.cpp:
502         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
503
504 2006-10-31  Adele Peterson  <adele@apple.com>
505
506         Reviewed by Adam.
507
508         - Fix for http://bugs.webkit.org/show_bug.cgi?id=11127 NativeListBox: arrow and drag selection should pivot around one list item
509         and http://bugs.webkit.org/show_bug.cgi?id=11173 REGRESSION (NativeListBox): Shift-clicking items in list box doesn't expand the current selection
510         and http://bugs.webkit.org/show_bug.cgi?id=11417 REGRESSION: onchange does not fire for list-style select elements
511
512         Tests: 
513         * LayoutTests/fast/forms/listbox-selection.html
514         * LayoutTests/fast/forms/listbox-onchange.html
515
516         * html/HTMLSelectElement.h: Added m_selectedListIndexBase and m_selectedListIndexExtent to track indices for the active selection in progress.
517           Added 2 vectors to cache selection state.  One is kept so that the previous selection state can be restored as the active selection grows and shrinks.
518           And one for onChange, that is updated after onChange is fired.
519           Added m_activeSelectionState to keep track of whether the current drag selection is selecting or deselecting.
520  
521         * html/HTMLSelectElement.cpp:
522         (WebCore::HTMLSelectElement::HTMLSelectElement): Initialized new variables.
523         (WebCore::HTMLSelectElement::setSelectedIndex): If needed, initialize m_selectedListIndexBase and m_selectedListIndexExtent.
524         (WebCore::HTMLSelectElement::dispatchBlurEvent): Only fire the onChange event here for menu lists.
525         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Updates base and extent variables for mouse and key events.
526         (WebCore::HTMLSelectElement::setBase): Added. Also caches the selection state.
527         (WebCore::HTMLSelectElement::setExtent): Added.
528         (WebCore::HTMLSelectElement::updateListBoxSelection): Added.
529         (WebCore::HTMLSelectElement::listBoxOnChange): Added.
530
531         * rendering/RenderListBox.cpp:
532         (WebCore::RenderListBox::updateFromElement): Only scroll to reveal the first index if both the first and last indices aren't visible.
533         (WebCore::RenderListBox::listIndexAtOffset): Added.  Replaces optionAtPoint, which is no longer used.
534         (WebCore::RenderListBox::autoscroll): Now sets the selection using the select's base and extent.
535         (WebCore::RenderListBox::stopAutoscroll): Added.  Tells the select element to fire onChange.  This is needed because the autoscroll can end from a mouseUp
536          outside of the list box, and the select element won't get a mouseUp event directly.  But the frame will stop the autoscroll at that point, and now we can
537          notify the select element from here.
538         (WebCore::RenderListBox::scrollToRevealElementAtListIndex): Checks new listIndexIsVisible method.
539         (WebCore::RenderListBox::listIndexIsVisible): Added.
540         (WebCore::RenderListBox::valueChanged): Removed unnecessary printf.
541
542         * page/Frame.cpp: (WebCore::Frame::stopAutoscrollTimer): Added rendererIsBeingDestroyed argument, so when the renderer calls this during destruction, 
543         we don't try to use the pointer to that renderer to call stopAutoscroll.  This is done so a renderer that's still alive has a chance to do some cleanup after autoscroll.
544         * rendering/RenderListBox.h: (WebCore::RenderListBox::shouldAutoscroll): Always returns true now, since we're also updating selection from the autoscroll timer.
545         * rendering/RenderObject.h: (WebCore::RenderObject::stopAutoscroll): Added.
546         * rendering/RenderObject.cpp: (WebCore::RenderObject::destroy): Calls stopAutoscrollTimer with rendererIsBeingDestroyed argument.
547
548 2006-10-31  Beth Dakin  <bdakin@apple.com>
549
550         Forgot to check this in a minute ago. Oops!! Thanks Mitz!
551
552         * rendering/HitTestRequest.h: Added.
553         (WebCore::HitTestRequest::HitTestRequest):
554
555 2006-10-31  Beth Dakin  <bdakin@apple.com>
556
557         Reviewed by Maciej.
558
559         Fix for http://bugs.webkit.org/show_bug.cgi?id=11461 HitTestResult 
560         should be split into HitTestRequest and HitTestResult
561
562         This patch creates a new struct called HitTestRequest that holds 
563         the three boolean values (readonly, active, and mouseMove) that 
564         were formerly a part of HitTestResult. All hitTest() and 
565         nodeAtPoint() functions now take a HitTestRequest in addition to 
566         the HitTestResult.
567
568         * WebCore.exp:
569         * WebCore.xcodeproj/project.pbxproj:
570         * bridge/mac/FrameMac.mm:
571         (WebCore::FrameMac::eventMayStartDrag):
572         (WebCore::FrameMac::handleMouseMoveEvent):
573         * bridge/mac/WebCoreAXObject.mm:
574         (-[WebCoreAXObject doAXTextMarkerForPosition:]):
575         (-[WebCoreAXObject accessibilityHitTest:]):
576         * dom/Document.cpp:
577         (WebCore::Document::elementFromPoint):
578         (WebCore::Document::prepareMouseEvent):
579         * editing/SelectionController.cpp:
580         (WebCore::SelectionController::contains):
581         * page/Frame.cpp:
582         (WebCore::Frame::hitTestResultAtPoint):
583         * page/FrameView.cpp:
584         (WebCore::FrameView::handleWheelEvent):
585         * rendering/EllipsisBox.cpp:
586         (WebCore::EllipsisBox::nodeAtPoint):
587         * rendering/EllipsisBox.h:
588         * rendering/HitTestResult.cpp:
589         (WebCore::HitTestResult::HitTestResult):
590         (WebCore::HitTestResult::operator=):
591         * rendering/HitTestResult.h:
592         * rendering/InlineBox.cpp:
593         (WebCore::InlineBox::nodeAtPoint):
594         * rendering/InlineBox.h:
595         * rendering/InlineFlowBox.cpp:
596         (WebCore::InlineFlowBox::nodeAtPoint):
597         * rendering/InlineFlowBox.h:
598         * rendering/InlineTextBox.cpp:
599         (WebCore::InlineTextBox::nodeAtPoint):
600         * rendering/InlineTextBox.h:
601         * rendering/RenderBlock.cpp:
602         (WebCore::RenderBlock::nodeAtPoint):
603         * rendering/RenderBlock.h:
604         * rendering/RenderBox.cpp:
605         (WebCore::RenderBox::nodeAtPoint):
606         * rendering/RenderBox.h:
607         * rendering/RenderFlow.cpp:
608         (WebCore::RenderFlow::hitTestLines):
609         * rendering/RenderFlow.h:
610         * rendering/RenderForeignObject.cpp:
611         (WebCore::RenderForeignObject::nodeAtPoint):
612         * rendering/RenderForeignObject.h:
613         * rendering/RenderFrameSet.cpp:
614         (WebCore::RenderFrameSet::nodeAtPoint):
615         * rendering/RenderFrameSet.h:
616         * rendering/RenderImage.cpp:
617         (WebCore::RenderImage::nodeAtPoint):
618         * rendering/RenderImage.h:
619         * rendering/RenderInline.cpp:
620         (WebCore::RenderInline::nodeAtPoint):
621         * rendering/RenderInline.h:
622         * rendering/RenderLayer.cpp:
623         (WebCore::RenderLayer::autoscroll):
624         (WebCore::RenderLayer::hitTest):
625         (WebCore::RenderLayer::hitTestLayer):
626         (WebCore::RenderLayer::updateHoverActiveState):
627         * rendering/RenderLayer.h:
628         * rendering/RenderObject.cpp:
629         (WebCore::RenderObject::hitTest):
630         (WebCore::RenderObject::nodeAtPoint):
631         * rendering/RenderObject.h:
632         * rendering/RenderPath.cpp:
633         (WebCore::RenderPath::nodeAtPoint):
634         * rendering/RenderPath.h:
635         * rendering/RenderSVGImage.cpp:
636         (WebCore::RenderSVGImage::nodeAtPoint):
637         * rendering/RenderSVGImage.h:
638         * rendering/RenderSVGText.cpp:
639         (WebCore::RenderSVGText::nodeAtPoint):
640         * rendering/RenderSVGText.h:
641         * rendering/RenderTableRow.cpp:
642         (WebCore::RenderTableRow::nodeAtPoint):
643         * rendering/RenderTableRow.h:
644         * rendering/RenderTableSection.cpp:
645         (WebCore::RenderTableSection::nodeAtPoint):
646         * rendering/RenderTableSection.h:
647         * rendering/RenderText.h:
648         (WebCore::RenderText::nodeAtPoint):
649         * rendering/RenderTextControl.cpp:
650         (WebCore::RenderTextControl::nodeAtPoint):
651         * rendering/RenderTextControl.h:
652         * rendering/RootInlineBox.cpp:
653         (WebCore::RootInlineBox::nodeAtPoint):
654         * rendering/RootInlineBox.h:
655
656 2006-10-31  Lars Naesbye Christensen <larsnaesbye@stud.ku.dk>
657
658         Reviewed by Maciej.
659
660         Bug 11442: [CSS 3] support for cursor: all-scroll
661         http://bugs.webkit.org/show_bug.cgi?id=11442
662
663         * css/CSSComputedStyleDeclaration.cpp:
664         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
665         * css/CSSValueKeywords.in:
666         * css/cssparser.cpp:
667         (WebCore::CSSParser::parseValue):
668         * page/FrameView.cpp:
669         (WebCore::selectCursor):
670         * rendering/RenderStyle.h:
671
672 2006-10-31  Oliver Hunt  <oliver@apple.com>
673
674         Reviewed by Geoff.
675
676         Converting Obj-C++ to C++ in kcanvas
677
678         * WebCore.xcodeproj/project.pbxproj:
679         * kcanvas/device/quartz/KCanvasFilterQuartz.h:
680         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
681         * kcanvas/device/quartz/KCanvasItemQuartz.cpp: Added.
682         * kcanvas/device/quartz/KCanvasItemQuartz.mm: Removed.
683         * kcanvas/device/quartz/KRenderingDeviceQuartz.cpp: Added.
684         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
685         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: Removed.
686         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
687         * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
688         * kcanvas/device/quartz/QuartzSupport.cpp: Added.
689         * kcanvas/device/quartz/QuartzSupport.h:
690         * kcanvas/device/quartz/QuartzSupport.mm: Removed.
691         * platform/graphics/svg/cg/SVGResourceClipperCg.cpp: Added.
692         (WebCore::SVGResourceClipper::applyClip):
693         * platform/graphics/svg/cg/SVGResourceClipperCg.mm: Removed.
694         * platform/graphics/svg/cg/SVGResourceImageCg.cpp: Added.
695         * platform/graphics/svg/cg/SVGResourceImageCg.mm: Removed.
696
697 2006-10-31  Justin Garcia  <justin.garcia@apple.com>
698
699         Reviewed by harrison
700         
701         <rdar://problem/4808375>
702         REGRESSION: TextIterator slowed down, affecting Find on Page & Copy (etc.) [11460}
703         
704         Completely back out r17276 because of performance issues.
705
706         * editing/TextIterator.cpp:
707         (WebCore::TextIterator::TextIterator):
708         (WebCore::TextIterator::advance):
709         (WebCore::TextIterator::handleTextNode):
710         (WebCore::TextIterator::handleTextBox):
711         (WebCore::TextIterator::handleReplacedElement):
712         (WebCore::TextIterator::handleNonTextNode):
713         (WebCore::TextIterator::exitNode):
714         (WebCore::TextIterator::emitCharacter):
715         (WebCore::TextIterator::range):
716         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
717         (WebCore::SimplifiedBackwardsTextIterator::advance):
718         (WebCore::SimplifiedBackwardsTextIterator::handleTextNode):
719         (WebCore::SimplifiedBackwardsTextIterator::handleReplacedElement):
720         (WebCore::SimplifiedBackwardsTextIterator::emitCharacter):
721         (WebCore::SimplifiedBackwardsTextIterator::emitNewline):
722         (WebCore::SimplifiedBackwardsTextIterator::range):
723         (WebCore::CharacterIterator::range):
724         (WebCore::TextIterator::rangeFromLocationAndLength):
725         * editing/TextIterator.h:
726         (WebCore::TextIterator::atEnd):
727         (WebCore::SimplifiedBackwardsTextIterator::atEnd):
728
729 2006-10-31  Darin Adler  <darin@apple.com>
730
731         Reviewed by Brady.
732
733         - got "action dictionary" code out of FrameLoader,
734           replacing with a class called NavigationAction
735
736         * loader/DocumentLoader.h: Changed m_triggeringAction to a NavigationAction.
737         * loader/mac/DocumentLoaderMac.mm:
738         (WebCore::DocumentLoader::triggeringAction): Ditto.
739         (WebCore::DocumentLoader::setTriggeringAction): Ditto.
740
741         * loader/FrameLoader.h: Changed action parameters to NavigationAction.
742
743         * loader/FrameLoaderClient.h: Changed action parameters to NavigationAction.
744         Removed elementForEvent.
745         * loader/mac/FrameLoaderMac.mm:
746         (WebCore::FrameLoader::load): Ditto.
747         (WebCore::FrameLoader::reload): Ditto.
748         (WebCore::FrameLoader::checkNewWindowPolicy): Ditto.
749         (WebCore::FrameLoader::checkNavigationPolicy): Ditto.
750         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy): Ditto.
751         (WebCore::FrameLoader::post): Ditto.
752
753         * loader/NavigationAction.h: Added.
754         * loader/NavigationAction.cpp: Added.
755         * loader/mac/NavigationActionMac.mm: Added.
756
757         * loader/mac/MainResourceLoaderMac.mm: Fixed copyright.
758
759         * WebCore.xcodeproj/project.pbxproj: Updated for new files.
760         * WebCore.exp: Updated.
761
762 2006-10-31  Steve Falkenburg  <sfalken@apple.com>
763
764         Reviewed by Adam.
765
766         Build fix
767
768         * platform/win/CookieJarWin.cpp:
769         (WebCore::cookies):
770
771 2006-10-31  Nikolas Zimmermann  <zimmermann@kde.org>
772
773         Reviewed by Maciej. Landed by Adam.
774
775         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11463
776
777         Move KCanvasTreeDebug into rendering, named as SVGRenderTreeAsText.*,
778         as dicussed with Dave. Also kill the outdated DESIGN document.
779
780         * CMakeLists.txt:
781         * WebCore.xcodeproj/project.pbxproj:
782         * kcanvas/DESIGN: Removed.
783         * kcanvas/KCanvasFilters.cpp:
784         * kcanvas/KCanvasTreeDebug.cpp: Moved to rendering/SVGRenderTreeAsText
785         * kcanvas/KCanvasTreeDebug.h: Ditto.
786         * kcanvas/device/KRenderingPaintServerGradient.cpp:
787         * kcanvas/device/KRenderingPaintServerPattern.cpp:
788         * kcanvas/device/KRenderingPaintServerSolid.cpp:
789         * platform/graphics/svg/SVGResourceClipper.cpp:
790         * rendering/RenderTreeAsText.cpp:
791         * rendering/SVGRenderTreeAsText.cpp: Added.
792         * rendering/SVGRenderTreeAsText.h: Added.
793         (WebCore::operator<<):
794
795 2006-10-31  MorganL  <morganl.webkit@yahoo.com>
796
797         Reviewed by Maciej.
798
799         Fixes http://bugs.webkit.org/show_bug.cgi?id=11286
800         Includes some CRLF -> LF fixups.
801
802         * platform/win/CookieJarWin.cpp:
803         (WebCore::cookies):
804
805 2006-10-31  Adam Roben  <aroben@apple.com>
806
807         Reviewed by Steve.
808
809         Fix some incorrect forward declarations.
810
811         * loader/FrameLoader.h:
812         * page/Frame.h:
813
814 2006-10-31  Darin Adler  <darin@apple.com>
815
816         * WebCore.xcodeproj/project.pbxproj: Change GraphicsTypes.h to a private header to
817         try to fix the build on the buildbot.
818
819 2006-10-31  Darin Adler  <darin@apple.com>
820
821         * bridge/mac/FrameMac.mm:
822         (WebCore::FrameMac::advanceToNextMisspelling): Build fix for release Tiger builds.
823         (WebCore::FrameMac::markMisspellings): Ditto.
824
825 2006-10-31  John Sullivan  <sullivan@apple.com>
826
827         * bridge/mac/FrameMac.mm:
828         (WebCore::FrameMac::advanceToNextMisspelling):
829         build fix: needed #ifndef BUILDING_ON_TIGER in one more place
830
831 2006-10-30  John Sullivan  <sullivan@apple.com>
832
833         Reviewed by Adam Roben
834         
835         - fixes <rdar://problem/4804614> Bad grammar ranges are not visibly marked
836         
837         This patch introduces much of the guts of grammar checking, though still not enough to actually
838         check grammar sensibly, due to:
839           
840         <rdar://problem/4811175> Many false reports of bad grammar appear, caused by insufficient 
841         context passed to grammar checker
842
843         * platform/Logging.h:
844         * platform/Logging.cpp:
845         new log channel SpellingAndGrammar
846
847         * bridge/mac/WebCorePageBridge.mm:
848         (initializeLoggingChannelsIfNecessary):
849         initialize new log channel
850
851         * bridge/mac/FrameMac.mm:
852         (WebCore::FrameMac::advanceToNextMisspelling):
853         Compute bad grammar range when computing misspelling range. Find first detailed grammar range from the
854         set NSSpellChecker determines. Compare it with misspelling range to see which is earliest (or shortest
855         in the event of a tie), and do further processing with that one (select range; create marker that
856         causes range to be visibly marked with a funky underline; update spelling panel appropriately).
857         (WebCore::FrameMac::markMisspellings):
858         More or less the same types of changes as in advanceToNextMisspelling The loops are structured just 
859         differently enough to make sharing code between these two functions a little tricky, so I decided to 
860         save that for a later patch.
861         
862         (WebCore::FrameMac::respondToChangedSelection):
863         remove grammar markers when we remove spelling markers        
864
865 2006-10-31  Nikolas Zimmermann <zimmermann@kde.org>
866
867         Reviewed by Mitz.
868
869         Fix Qt/Linux build with older gcc3.3.4.
870
871         * bindings/js/kjs_window.cpp:
872         (KJS::WindowFunc::callAsFunction):
873
874 2006-10-31  Zack Rusin  <zack@kde.org>
875
876         Reviewed by Mitz.
877
878         Fix the Qt build after last nights changes.
879
880         * WebCore/platform/qt/FrameQt.cpp:
881         * WebCore/platform/qt/EditorClientQt.h:
882         * WebCore/platform/qt/EditorClientQt.cpp:
883         * WebCore/platform/graphics/svg/qt/SVGResourceImageQt.cpp:
884         * WebCore/platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
885         * WebCore/CMakeLists.txt:
886         * WebCore/kcanvas/device/qt/KRenderingDeviceQt.cpp:
887         * WebKitQt/QtLauncher/CMakeLists.txt:
888         * WebKitQt/WebKitPart/CMakeLists.txt:
889
890 2006-10-30  Darin Adler  <darin@apple.com>
891
892         Reviewed by Anders.
893
894         - remove BrowserExtension
895
896         * WebCore.vcproj/WebCore/WebCore.vcproj:
897         * WebCore.xcodeproj/project.pbxproj:
898         * bindings/js/kjs_window.cpp:
899         (KJS::createNewWindow):
900         (KJS::WindowFunc::callAsFunction):
901         * bridge/BrowserExtension.h: Removed.
902         * bridge/mac/BrowserExtensionMac.h: Removed.
903         * bridge/mac/BrowserExtensionMac.mm: Removed.
904         * bridge/mac/FrameMac.mm:
905         (WebCore::FrameMac::FrameMac):
906         (WebCore::FrameMac::submitForm):
907         (WebCore::FrameMac::urlSelected):
908         * bridge/win/BrowserExtensionWin.cpp: Removed.
909         * bridge/win/BrowserExtensionWin.h: Removed.
910         * bridge/win/FrameWin.cpp:
911         (WebCore::FrameWin::FrameWin):
912         * loader/FrameLoader.cpp:
913         (WebCore::FrameLoader::createWindow):
914         * loader/FrameLoader.h:
915         * loader/icon/IconLoader.cpp:
916         * loader/mac/FrameLoaderMac.mm:
917         (WebCore::FrameLoader::safeLoad):
918         (WebCore::FrameLoader::load):
919         (WebCore::FrameLoader::createWindow):
920         * page/Frame.cpp:
921         (WebCore::Frame::urlSelected):
922         (WebCore::Frame::requestFrame):
923         (WebCore::Frame::submitForm):
924         (WebCore::Frame::scheduleHistoryNavigation):
925         (WebCore::Frame::redirectionTimerFired):
926         * page/Frame.h:
927         * page/FrameLoadRequest.h:
928         (WebCore::FrameLoadRequest::FrameLoadRequest):
929         (WebCore::FrameLoadRequest::isEmpty):
930         (WebCore::FrameLoadRequest::resourceRequest):
931         (WebCore::FrameLoadRequest::frameName):
932         (WebCore::FrameLoadRequest::setFrameName):
933         * page/FramePrivate.h:
934         (WebCore::FramePrivate::FramePrivate):
935         (WebCore::FramePrivate::~FramePrivate):
936         * platform/gdk/BrowserExtensionGdk.h: Removed.
937         * platform/gdk/FrameGdk.cpp:
938         (WebCore::FrameGdk::FrameGdk):
939         * platform/gdk/TemporaryLinkStubs.cpp:
940         * platform/network/ResourceRequest.h:
941         (WebCore::ResourceRequest::isEmpty):
942
943 2006-10-31  Nikolas Zimmermann  <zimmermann@kde.org>
944
945         Reviewed by Oliver.
946
947         Modified from original due to earlier reversion
948
949         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11436
950
951         Better SVG integration in WebKit, Part I.
952
953         The patch is mostly about creating a new platform/graphics directory, and
954         moving the kcanvas resources (clipper/masker/marker) there (in svg budir),
955         with a new name (KCanvasClipper -> SVGResourceClipper). Also fix several ownership
956         issues, by using ref counting (the SVG classes now store RefPtrs to the resources).
957
958         KCanvasFilters is still left in kcanvas/ subdirectory, to be converted in a next patch.
959         All details of the patch, and upcoming patches can be found in the bug report.
960
961         * CMakeLists.txt:
962         * WebCore.xcodeproj/project.pbxproj:
963         * graphics/svg/SVGResource.cpp: Removed.
964         * graphics/svg/SVGResourceClipper.cpp: Removed.
965         * graphics/svg/SVGResourceClipper.h: Removed.
966         * graphics/svg/SVGResourceImage.h: Removed.
967         * graphics/svg/SVGResourceListener.h: Removed.
968         * graphics/svg/SVGResourceMarker.cpp: Removed.
969         * graphics/svg/SVGResourceMarker.h: Removed.
970         * graphics/svg/SVGResourceMasker.cpp: Removed.
971         * graphics/svg/SVGResourceMasker.h: Removed.
972         * kcanvas/KCanvasClipper.cpp: Removed.
973         * kcanvas/KCanvasClipper.h: Removed.
974         * kcanvas/KCanvasCreator.cpp: Removed.
975         * kcanvas/KCanvasCreator.h: Removed.
976         * kcanvas/KCanvasFilters.cpp:
977         (WebCore::getFilterById):
978         * kcanvas/KCanvasFilters.h:
979         * kcanvas/KCanvasImage.h: Removed.
980         * kcanvas/KCanvasMarker.cpp: Removed.
981         * kcanvas/KCanvasMarker.h: Removed.
982         * kcanvas/KCanvasMasker.cpp: Removed.
983         * kcanvas/KCanvasMasker.h: Removed.
984         * kcanvas/KCanvasResource.cpp: Removed.
985         * kcanvas/KCanvasResource.h: Removed.
986         * kcanvas/KCanvasResourceListener.h: Removed.
987         * kcanvas/KCanvasTreeDebug.cpp:
988         (WebCore::writeRenderResources):
989         * kcanvas/device/KRenderingDevice.h:
990         * kcanvas/device/KRenderingPaintServer.h:
991         (WebCore::KRenderingPaintServer::KRenderingPaintServer):
992         * kcanvas/device/KRenderingPaintServerGradient.cpp:
993         (WebCore::KRenderingPaintServerGradient::listener):
994         (WebCore::KRenderingPaintServerGradient::setListener):
995         * kcanvas/device/KRenderingPaintServerGradient.h:
996         * kcanvas/device/KRenderingPaintServerPattern.cpp:
997         (WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
998         (WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
999         (WebCore::KRenderingPaintServerPattern::tile):
1000         (WebCore::KRenderingPaintServerPattern::setTile):
1001         (WebCore::KRenderingPaintServerPattern::listener):
1002         (WebCore::KRenderingPaintServerPattern::setListener):
1003         * kcanvas/device/KRenderingPaintServerPattern.h:
1004         * kcanvas/device/KRenderingPaintServerSolid.h:
1005         * kcanvas/device/qt/KCanvasClipperQt.cpp: Removed.
1006         * kcanvas/device/qt/KCanvasClipperQt.h:
1007         * kcanvas/device/qt/KRenderingDeviceQt.cpp:
1008         (WebCore::KRenderingDeviceQt::contextForImage):
1009         (WebCore::KRenderingDeviceQt::createResource):
1010         (WebCore::KRenderingDeviceQt::createPaintServer):
1011         * kcanvas/device/qt/KRenderingDeviceQt.h:
1012         * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
1013         * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
1014         * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
1015         * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
1016         * kcanvas/device/qt/RenderPathQt.h: Removed.
1017         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
1018         (WebCore::KCanvasFilterQuartz::getCIFilterStack):
1019         * kcanvas/device/quartz/KCanvasItemQuartz.mm:
1020         * kcanvas/device/quartz/KCanvasMaskerQuartz.h: Removed.
1021         * kcanvas/device/quartz/KCanvasMaskerQuartz.mm: Removed.
1022         * kcanvas/device/quartz/KCanvasResourcesQuartz.h: Removed.
1023         * kcanvas/device/quartz/KCanvasResourcesQuartz.mm: Removed.
1024         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
1025         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
1026         (WebCore::KRenderingDeviceQuartz::contextForImage):
1027         (WebCore::KRenderingDeviceQuartz::createPaintServer):
1028         (WebCore::KRenderingDeviceQuartz::createResource):
1029         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
1030         (WebCore::KRenderingPaintServerGradientQuartz::KRenderingPaintServerGradientQuartz):
1031         (WebCore::KRenderingPaintServerGradientQuartz::~KRenderingPaintServerGradientQuartz):
1032         (WebCore::KRenderingPaintServerGradientQuartz::setup):
1033         (WebCore::KRenderingPaintServerGradientQuartz::teardown):
1034         * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
1035         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
1036         (WebCore::patternCallback):
1037         (WebCore::KRenderingPaintServerPatternQuartz::setup):
1038         * kcanvas/device/quartz/QuartzSupport.mm:
1039         * ksvg2/misc/KCanvasRenderingStyle.cpp:
1040         (WebCore::sharedSolidPaintServer):
1041         * ksvg2/svg/SVGClipPathElement.cpp:
1042         (WebCore::SVGClipPathElement::SVGClipPathElement):
1043         (WebCore::SVGClipPathElement::~SVGClipPathElement):
1044         (WebCore::SVGClipPathElement::canvasResource):
1045         * ksvg2/svg/SVGClipPathElement.h:
1046         * ksvg2/svg/SVGFEImageElement.cpp:
1047         * ksvg2/svg/SVGFilterElement.cpp:
1048         (WebCore::SVGFilterElement::SVGFilterElement):
1049         (WebCore::SVGFilterElement::~SVGFilterElement):
1050         (WebCore::SVGFilterElement::canvasResource):
1051         * ksvg2/svg/SVGFilterElement.h:
1052         * ksvg2/svg/SVGGradientElement.cpp:
1053         (WebCore::SVGGradientElement::SVGGradientElement):
1054         (WebCore::SVGGradientElement::~SVGGradientElement):
1055         (WebCore::SVGGradientElement::canvasResource):
1056         (WebCore::SVGGradientElement::resourceNotification):
1057         * ksvg2/svg/SVGGradientElement.h:
1058         * ksvg2/svg/SVGImageElement.cpp:
1059         * ksvg2/svg/SVGLinearGradientElement.cpp:
1060         (WebCore::SVGLinearGradientElement::buildGradient):
1061         * ksvg2/svg/SVGLinearGradientElement.h:
1062         * ksvg2/svg/SVGMarkerElement.cpp:
1063         (WebCore::SVGMarkerElement::SVGMarkerElement):
1064         (WebCore::SVGMarkerElement::~SVGMarkerElement):
1065         (WebCore::SVGMarkerElement::canvasResource):
1066         * ksvg2/svg/SVGMarkerElement.h:
1067         * ksvg2/svg/SVGMaskElement.cpp:
1068         (WebCore::SVGMaskElement::SVGMaskElement):
1069         (WebCore::SVGMaskElement::~SVGMaskElement):
1070         (WebCore::SVGMaskElement::drawMaskerContent):
1071         (WebCore::SVGMaskElement::canvasResource):
1072         * ksvg2/svg/SVGMaskElement.h:
1073         * ksvg2/svg/SVGPatternElement.cpp:
1074         (WebCore::SVGPatternElement::SVGPatternElement):
1075         (WebCore::SVGPatternElement::~SVGPatternElement):
1076         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
1077         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
1078         (WebCore::SVGPatternElement::canvasResource):
1079         * ksvg2/svg/SVGPatternElement.h:
1080         * ksvg2/svg/SVGRadialGradientElement.cpp:
1081         (WebCore::SVGRadialGradientElement::buildGradient):
1082         * ksvg2/svg/SVGRadialGradientElement.h:
1083         * ksvg2/svg/SVGStyledElement.h:
1084         (WebCore::SVGStyledElement::canvasResource):
1085         * platform/GraphicsContext.cpp: Removed.
1086         * platform/GraphicsContext.h: Removed.
1087         * platform/GraphicsTypes.cpp: Removed.
1088         * platform/GraphicsTypes.h: Removed.
1089         * platform/graphics/GraphicsContext.cpp:
1090         (WebCore::GraphicsContextState::GraphicsContextState):
1091         (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
1092         (WebCore::GraphicsContext::createGraphicsContextPrivate):
1093         (WebCore::GraphicsContext::destroyGraphicsContextPrivate):
1094         (WebCore::GraphicsContext::save):
1095         (WebCore::GraphicsContext::restore):
1096         (WebCore::GraphicsContext::font):
1097         (WebCore::GraphicsContext::setFont):
1098         (WebCore::GraphicsContext::pen):
1099         (WebCore::GraphicsContext::setPen):
1100         (WebCore::GraphicsContext::setFillColor):
1101         (WebCore::GraphicsContext::fillColor):
1102         (WebCore::GraphicsContext::updatingControlTints):
1103         (WebCore::GraphicsContext::setUpdatingControlTints):
1104         (WebCore::GraphicsContext::setPaintingDisabled):
1105         (WebCore::GraphicsContext::paintingDisabled):
1106         (WebCore::GraphicsContext::drawImage):
1107         (WebCore::GraphicsContext::drawText):
1108         (WebCore::GraphicsContext::drawHighlightForText):
1109         (WebCore::GraphicsContext::initFocusRing):
1110         (WebCore::GraphicsContext::clearFocusRing):
1111         (WebCore::GraphicsContext::focusRingBoundingRect):
1112         (WebCore::GraphicsContext::addFocusRingRect):
1113         (WebCore::GraphicsContext::focusRingWidth):
1114         (WebCore::GraphicsContext::focusRingOffset):
1115         (WebCore::GraphicsContext::focusRingRects):
1116         (WebCore::GraphicsContext::drawTiledImage):
1117         * platform/graphics/GraphicsContext.h:
1118         * platform/graphics/GraphicsTypes.cpp:
1119         (WebCore::):
1120         (WebCore::parseCompositeOperator):
1121         (WebCore::compositeOperatorName):
1122         (WebCore::parseLineCap):
1123         (WebCore::lineCapName):
1124         (WebCore::parseLineJoin):
1125         (WebCore::lineJoinName):
1126         * platform/graphics/GraphicsTypes.h:
1127         (WebCore::):
1128         * platform/graphics/svg/SVGResource.cpp: Added.
1129         (WebCore::SVGResource::SVGResource):
1130         (WebCore::SVGResource::~SVGResource):
1131         (WebCore::SVGResource::invalidate):
1132         (WebCore::SVGResource::addClient):
1133         (WebCore::SVGResource::clients):
1134         (WebCore::SVGResource::idInRegistry):
1135         (WebCore::SVGResource::setIdInRegistry):
1136         (WebCore::SVGResource::externalRepresentation):
1137         (WebCore::getResourceById):
1138         (WebCore::getPaintServerById):
1139         (WebCore::operator<<):
1140         * platform/graphics/svg/SVGResource.h: Added.
1141         (WebCore::):
1142         (WebCore::SVGResource::isPaintServer):
1143         (WebCore::SVGResource::isFilter):
1144         (WebCore::SVGResource::isClipper):
1145         (WebCore::SVGResource::isMarker):
1146         (WebCore::SVGResource::isMasker):
1147         (WebCore::SVGResourceListener::~SVGResourceListener):
1148         * platform/graphics/svg/SVGResourceClipper.cpp: Added.
1149         (WebCore::SVGResourceClipper::SVGResourceClipper):
1150         (WebCore::SVGResourceClipper::~SVGResourceClipper):
1151         (WebCore::SVGResourceClipper::resetClipData):
1152         (WebCore::SVGResourceClipper::addClipData):
1153         (WebCore::SVGResourceClipper::clipData):
1154         (WebCore::SVGResourceClipper::externalRepresentation):
1155         (WebCore::operator<<):
1156         (WebCore::getClipperById):
1157         * platform/graphics/svg/SVGResourceClipper.h: Added.
1158         (WebCore::ClipDataList::addPath):
1159         (WebCore::SVGResourceClipper::isClipper):
1160         * platform/graphics/svg/SVGResourceImage.h: Added.
1161         * platform/graphics/svg/SVGResourceMarker.cpp: Added.
1162         (WebCore::SVGResourceMarker::SVGResourceMarker):
1163         (WebCore::SVGResourceMarker::~SVGResourceMarker):
1164         (WebCore::SVGResourceMarker::setMarker):
1165         (WebCore::SVGResourceMarker::setRef):
1166         (WebCore::SVGResourceMarker::draw):
1167         (WebCore::SVGResourceMarker::externalRepresentation):
1168         (WebCore::getMarkerById):
1169         * platform/graphics/svg/SVGResourceMarker.h: Added.
1170         (WebCore::SVGResourceMarker::refX):
1171         (WebCore::SVGResourceMarker::refY):
1172         (WebCore::SVGResourceMarker::setAngle):
1173         (WebCore::SVGResourceMarker::setAutoAngle):
1174         (WebCore::SVGResourceMarker::angle):
1175         (WebCore::SVGResourceMarker::setUseStrokeWidth):
1176         (WebCore::SVGResourceMarker::useStrokeWidth):
1177         (WebCore::SVGResourceMarker::isMarker):
1178         * platform/graphics/svg/SVGResourceMasker.cpp: Added.
1179         (WebCore::SVGResourceMasker::SVGResourceMasker):
1180         (WebCore::SVGResourceMasker::~SVGResourceMasker):
1181         (WebCore::SVGResourceMasker::setMask):
1182         (WebCore::SVGResourceMasker::mask):
1183         (WebCore::SVGResourceMasker::externalRepresentation):
1184         (WebCore::getMaskerById):
1185         * platform/graphics/svg/SVGResourceMasker.h: Added.
1186         (WebCore::SVGResourceMasker::isMasker):
1187         * platform/graphics/svg/cg/SVGResourceClipperCg.mm: Added.
1188         (WebCore::SVGResourceClipper::applyClip):
1189         * platform/graphics/svg/cg/SVGResourceImageCg.mm: Added.
1190         (WebCore::SVGResourceImage::SVGResourceImage):
1191         (WebCore::SVGResourceImage::~SVGResourceImage):
1192         (WebCore::SVGResourceImage::init):
1193         (WebCore::SVGResourceImage::size):
1194         (WebCore::SVGResourceImage::cgLayer):
1195         (WebCore::SVGResourceImage::setCGLayer):
1196         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm: Added.
1197         (WebCore::applyLuminanceToAlphaFilter):
1198         (WebCore::applyExpandAlphatoGrayscaleFilter):
1199         (WebCore::transformImageIntoGrayscaleMask):
1200         (WebCore::SVGResourceMasker::applyMask):
1201         * platform/graphics/svg/qt/SVGResourceClipperQt.cpp: Added.
1202         (WebCore::SVGResourceClipper::applyClip):
1203         * platform/graphics/svg/qt/SVGResourceImageQt.cpp: Added.
1204         (WebCore::SVGResourceImage::init):
1205         (WebCore::SVGResourceImage::size):
1206         * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp: Added.
1207         (WebCore::SVGResourceMasker::applyMask):
1208         * platform/qt/GraphicsContextQt.cpp:
1209         * rendering/RenderPath.cpp:
1210         (WebCore::RenderPath::paint):
1211         (WebCore::DrawMarkersData::DrawMarkersData):
1212         (WebCore::RenderPath::drawMarkersIfNeeded):
1213         * rendering/RenderSVGContainer.cpp:
1214         (WebCore::RenderSVGContainer::paint):
1215         * rendering/RenderSVGImage.cpp:
1216         (WebCore::RenderSVGImage::paint):
1217         * rendering/SVGInlineFlowBox.cpp:
1218         (WebCore::paintSVGInlineFlow):
1219
1220 2006-10-30  John Sullivan  <sullivan@apple.com>
1221
1222         Reviewed by Brady
1223         
1224         - minor cleanup to make future patches clearer
1225
1226         * bridge/mac/FrameMac.mm:
1227         (WebCore::FrameMac::advanceToNextMisspelling):
1228         renamed misspelling to misspellingNSRange for clarity; changed > 0 test to == 0 test
1229         with "continue" to better match structure of similar code in markMisspellings; a few
1230         other style tweaks.
1231         
1232         (WebCore::FrameMac::markMisspellings):
1233         renamed misspelling to misspellingNSRange for clarity; removed unnecessary braces around
1234         a block just after a break and outdented accordingly.
1235
1236 2006-10-30  John Sullivan  <sullivan@apple.com>
1237
1238         Reviewed by Geoff Garen
1239         
1240         WebCore part of change to push the code that updates the spelling panel
1241         into WebCore, in preparation for some grammar-checking stuff.
1242
1243         * bridge/mac/FrameMac.h:
1244         * bridge/mac/FrameMac.mm:
1245         (WebCore::FrameMac::advanceToNextMisspelling):
1246         no more return value for this method, and update the spelling panel with
1247         the misspelled word here rather than in the WebKit callers.
1248
1249 2006-10-30  Oliver Hunt  <oliver@apple.com>
1250
1251         Reviewed by Anders.
1252
1253         Roll out last patch
1254
1255         * CMakeLists.txt:
1256         * ChangeLog:
1257         * WebCore.xcodeproj/project.pbxproj:
1258         * graphics/svg/SVGResource.cpp:
1259         * graphics/svg/SVGResourceClipper.cpp:
1260         * graphics/svg/SVGResourceClipper.h:
1261         * graphics/svg/SVGResourceImage.h:
1262         * graphics/svg/SVGResourceListener.h:
1263         * graphics/svg/SVGResourceMarker.cpp:
1264         * graphics/svg/SVGResourceMarker.h:
1265         * graphics/svg/SVGResourceMasker.cpp:
1266         * graphics/svg/SVGResourceMasker.h:
1267         * kcanvas/KCanvasClipper.cpp: Added.
1268         (WebCore::operator<<):
1269         (WebCore::KCanvasClipper::KCanvasClipper):
1270         (WebCore::KCanvasClipper::~KCanvasClipper):
1271         (WebCore::KCanvasClipper::resetClipData):
1272         (WebCore::KCanvasClipper::addClipData):
1273         (WebCore::KCanvasClipper::clipData):
1274         (WebCore::KCanvasClipper::externalRepresentation):
1275         (WebCore::getClipperById):
1276         * kcanvas/KCanvasClipper.h: Added.
1277         (WebCore::KCClipData::windRule):
1278         (WebCore::KCClipDataList::KCClipDataList):
1279         (WebCore::KCClipDataList::addPath):
1280         (WebCore::KCanvasClipper::isClipper):
1281         * kcanvas/KCanvasFilters.cpp:
1282         (WebCore::getFilterById):
1283         * kcanvas/KCanvasFilters.h:
1284         * kcanvas/KCanvasImage.h: Added.
1285         (WebCore::KCanvasImage::KCanvasImage):
1286         (WebCore::KCanvasImage::~KCanvasImage):
1287         * kcanvas/KCanvasMarker.cpp: Added.
1288         (WebCore::KCanvasMarker::KCanvasMarker):
1289         (WebCore::KCanvasMarker::~KCanvasMarker):
1290         (WebCore::KCanvasMarker::setMarker):
1291         (WebCore::KCanvasMarker::setRef):
1292         (WebCore::KCanvasMarker::refX):
1293         (WebCore::KCanvasMarker::refY):
1294         (WebCore::KCanvasMarker::setAngle):
1295         (WebCore::KCanvasMarker::angle):
1296         (WebCore::KCanvasMarker::setAutoAngle):
1297         (WebCore::KCanvasMarker::setUseStrokeWidth):
1298         (WebCore::KCanvasMarker::useStrokeWidth):
1299         (WebCore::KCanvasMarker::draw):
1300         (WebCore::KCanvasMarker::externalRepresentation):
1301         (WebCore::getMarkerById):
1302         * kcanvas/KCanvasMarker.h: Added.
1303         (WebCore::KCanvasMarker::isMarker):
1304         * kcanvas/KCanvasMasker.cpp: Added.
1305         (WebCore::KCanvasMasker::KCanvasMasker):
1306         (WebCore::KCanvasMasker::~KCanvasMasker):
1307         (WebCore::KCanvasMasker::setMask):
1308         (WebCore::KCanvasMasker::externalRepresentation):
1309         (WebCore::getMaskerById):
1310         * kcanvas/KCanvasMasker.h: Added.
1311         (WebCore::KCanvasMasker::isMasker):
1312         (WebCore::KCanvasMasker::mask):
1313         * kcanvas/KCanvasResource.cpp: Added.
1314         (WebCore::operator<<):
1315         (WebCore::KCanvasResource::KCanvasResource):
1316         (WebCore::KCanvasResource::~KCanvasResource):
1317         (WebCore::KCanvasResource::addClient):
1318         (WebCore::KCanvasResource::clients):
1319         (WebCore::KCanvasResource::invalidate):
1320         (WebCore::KCanvasResource::idInRegistry):
1321         (WebCore::KCanvasResource::setIdInRegistry):
1322         (WebCore::KCanvasResource::externalRepresentation):
1323         (WebCore::getResourceById):
1324         (WebCore::getPaintServerById):
1325         * kcanvas/KCanvasResource.h:
1326         (WebCore::):
1327         (WebCore::KCanvasResource::isPaintServer):
1328         (WebCore::KCanvasResource::isFilter):
1329         (WebCore::KCanvasResource::isClipper):
1330         (WebCore::KCanvasResource::isMarker):
1331         (WebCore::KCanvasResource::isMasker):
1332         * kcanvas/KCanvasResourceListener.h: Added.
1333         (KCanvasResourceListener::KCanvasResourceListener):
1334         (KCanvasResourceListener::~KCanvasResourceListener):
1335         * kcanvas/KCanvasTreeDebug.cpp:
1336         (WebCore::writeRenderResources):
1337         * kcanvas/device/KRenderingDevice.h:
1338         * kcanvas/device/KRenderingPaintServer.h:
1339         (WebCore::KRenderingPaintServer::KRenderingPaintServer):
1340         (WebCore::KRenderingPaintServer::idInRegistry):
1341         (WebCore::KRenderingPaintServer::setIdInRegistry):
1342         * kcanvas/device/KRenderingPaintServerGradient.cpp:
1343         (WebCore::KRenderingPaintServerGradient::listener):
1344         (WebCore::KRenderingPaintServerGradient::setListener):
1345         * kcanvas/device/KRenderingPaintServerGradient.h:
1346         * kcanvas/device/KRenderingPaintServerPattern.cpp:
1347         (WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
1348         (WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
1349         (WebCore::KRenderingPaintServerPattern::tile):
1350         (WebCore::KRenderingPaintServerPattern::setTile):
1351         (WebCore::KRenderingPaintServerPattern::listener):
1352         (WebCore::KRenderingPaintServerPattern::setListener):
1353         * kcanvas/device/KRenderingPaintServerPattern.h:
1354         * kcanvas/device/KRenderingPaintServerSolid.h:
1355         * kcanvas/device/qt/KCanvasClipperQt.cpp:
1356         (WebCore::KCanvasClipperQt::applyClip):
1357         * kcanvas/device/qt/KCanvasClipperQt.h:
1358         (WebCore::KCanvasClipperQt::KCanvasClipperQt):
1359         * kcanvas/device/qt/KRenderingDeviceQt.cpp:
1360         (WebCore::KRenderingDeviceQt::contextForImage):
1361         (WebCore::KRenderingDeviceQt::createResource):
1362         (WebCore::KRenderingDeviceQt::createPaintServer):
1363         * kcanvas/device/qt/KRenderingDeviceQt.h:
1364         * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
1365         * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
1366         * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
1367         * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
1368         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
1369         (WebCore::KCanvasFilterQuartz::getCIFilterStack):
1370         * kcanvas/device/quartz/KCanvasItemQuartz.mm:
1371         * kcanvas/device/quartz/KCanvasMaskerQuartz.h:
1372         (WebCore::KCanvasMaskerQuartz::KCanvasMaskerQuartz):
1373         * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
1374         (WebCore::applyLuminanceToAlphaFilter):
1375         (WebCore::applyExpandAlphatoGrayscaleFilter):
1376         (WebCore::transformImageIntoGrayscaleMask):
1377         (WebCore::KCanvasMaskerQuartz::applyMask):
1378         * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
1379         (WebCore::KCanvasClipperQuartz::KCanvasClipperQuartz):
1380         (WebCore::KCanvasImageQuartz::KCanvasImageQuartz):
1381         (WebCore::KCanvasImageQuartz::init):
1382         (WebCore::KCanvasImageQuartz::size):
1383         * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
1384         (WebCore::KCanvasClipperQuartz::applyClip):
1385         (WebCore::KCanvasImageQuartz::~KCanvasImageQuartz):
1386         (WebCore::KCanvasImageQuartz::cgLayer):
1387         (WebCore::KCanvasImageQuartz::setCGLayer):
1388         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
1389         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
1390         (WebCore::KRenderingDeviceQuartz::contextForImage):
1391         (WebCore::KRenderingDeviceQuartz::createPaintServer):
1392         (WebCore::KRenderingDeviceQuartz::createResource):
1393         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
1394         (WebCore::KRenderingPaintServerGradientQuartz::KRenderingPaintServerGradientQuartz):
1395         (WebCore::KRenderingPaintServerGradientQuartz::~KRenderingPaintServerGradientQuartz):
1396         (WebCore::KRenderingPaintServerGradientQuartz::setup):
1397         (WebCore::KRenderingPaintServerGradientQuartz::teardown):
1398         * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
1399         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
1400         (WebCore::patternCallback):
1401         (WebCore::KRenderingPaintServerPatternQuartz::setup):
1402         * kcanvas/device/quartz/QuartzSupport.mm:
1403         * ksvg2/misc/KCanvasRenderingStyle.cpp:
1404         (WebCore::sharedSolidPaintServer):
1405         * ksvg2/svg/SVGClipPathElement.cpp:
1406         (WebCore::SVGClipPathElement::SVGClipPathElement):
1407         (WebCore::SVGClipPathElement::~SVGClipPathElement):
1408         (WebCore::SVGClipPathElement::canvasResource):
1409         * ksvg2/svg/SVGClipPathElement.h:
1410         * ksvg2/svg/SVGFEImageElement.cpp:
1411         * ksvg2/svg/SVGFilterElement.cpp:
1412         (WebCore::SVGFilterElement::SVGFilterElement):
1413         (WebCore::SVGFilterElement::~SVGFilterElement):
1414         (WebCore::SVGFilterElement::canvasResource):
1415         * ksvg2/svg/SVGFilterElement.h:
1416         * ksvg2/svg/SVGGradientElement.cpp:
1417         (WebCore::SVGGradientElement::SVGGradientElement):
1418         (WebCore::SVGGradientElement::~SVGGradientElement):
1419         (WebCore::SVGGradientElement::canvasResource):
1420         (WebCore::SVGGradientElement::resourceNotification):
1421         * ksvg2/svg/SVGGradientElement.h:
1422         * ksvg2/svg/SVGImageElement.cpp:
1423         * ksvg2/svg/SVGLinearGradientElement.cpp:
1424         (WebCore::SVGLinearGradientElement::buildGradient):
1425         * ksvg2/svg/SVGLinearGradientElement.h:
1426         * ksvg2/svg/SVGMarkerElement.cpp:
1427         (WebCore::SVGMarkerElement::SVGMarkerElement):
1428         (WebCore::SVGMarkerElement::~SVGMarkerElement):
1429         (WebCore::SVGMarkerElement::canvasResource):
1430         * ksvg2/svg/SVGMarkerElement.h:
1431         * ksvg2/svg/SVGMaskElement.cpp:
1432         (WebCore::SVGMaskElement::SVGMaskElement):
1433         (WebCore::SVGMaskElement::~SVGMaskElement):
1434         (WebCore::SVGMaskElement::drawMaskerContent):
1435         (WebCore::SVGMaskElement::canvasResource):
1436         * ksvg2/svg/SVGMaskElement.h:
1437         * ksvg2/svg/SVGPatternElement.cpp:
1438         (WebCore::SVGPatternElement::SVGPatternElement):
1439         (WebCore::SVGPatternElement::~SVGPatternElement):
1440         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
1441         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
1442         (WebCore::SVGPatternElement::canvasResource):
1443         * ksvg2/svg/SVGPatternElement.h:
1444         * ksvg2/svg/SVGRadialGradientElement.cpp:
1445         (WebCore::SVGRadialGradientElement::buildGradient):
1446         * ksvg2/svg/SVGRadialGradientElement.h:
1447         * ksvg2/svg/SVGStyledElement.h:
1448         (WebCore::SVGStyledElement::canvasResource):
1449         * platform/GraphicsContext.cpp: Added.
1450         (WebCore::GraphicsContextState::GraphicsContextState):
1451         (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
1452         (WebCore::GraphicsContext::createGraphicsContextPrivate):
1453         (WebCore::GraphicsContext::destroyGraphicsContextPrivate):
1454         (WebCore::GraphicsContext::save):
1455         (WebCore::GraphicsContext::restore):
1456         (WebCore::GraphicsContext::font):
1457         (WebCore::GraphicsContext::setFont):
1458         (WebCore::GraphicsContext::pen):
1459         (WebCore::GraphicsContext::setPen):
1460         (WebCore::GraphicsContext::setFillColor):
1461         (WebCore::GraphicsContext::fillColor):
1462         (WebCore::GraphicsContext::updatingControlTints):
1463         (WebCore::GraphicsContext::setUpdatingControlTints):
1464         (WebCore::GraphicsContext::setPaintingDisabled):
1465         (WebCore::GraphicsContext::paintingDisabled):
1466         (WebCore::GraphicsContext::drawImage):
1467         (WebCore::GraphicsContext::drawText):
1468         (WebCore::GraphicsContext::drawHighlightForText):
1469         (WebCore::GraphicsContext::initFocusRing):
1470         (WebCore::GraphicsContext::clearFocusRing):
1471         (WebCore::GraphicsContext::focusRingBoundingRect):
1472         (WebCore::GraphicsContext::addFocusRingRect):
1473         (WebCore::GraphicsContext::focusRingWidth):
1474         (WebCore::GraphicsContext::focusRingOffset):
1475         (WebCore::GraphicsContext::focusRingRects):
1476         (WebCore::GraphicsContext::drawTiledImage):
1477         * platform/GraphicsContext.h: Added.
1478         * platform/GraphicsTypes.cpp: Added.
1479         (WebCore::):
1480         (WebCore::parseCompositeOperator):
1481         (WebCore::compositeOperatorName):
1482         (WebCore::parseLineCap):
1483         (WebCore::lineCapName):
1484         (WebCore::parseLineJoin):
1485         (WebCore::lineJoinName):
1486         * platform/GraphicsTypes.h: Added.
1487         (WebCore::):
1488         * platform/graphics/GraphicsContext.cpp:
1489         * platform/graphics/GraphicsContext.h:
1490         * platform/graphics/GraphicsTypes.cpp:
1491         * platform/graphics/GraphicsTypes.h:
1492         * platform/qt/GraphicsContextQt.cpp:
1493         * rendering/RenderPath.cpp:
1494         (WebCore::RenderPath::paint):
1495         (WebCore::DrawMarkersData::DrawMarkersData):
1496         (WebCore::RenderPath::drawMarkersIfNeeded):
1497         * rendering/RenderSVGContainer.cpp:
1498         (WebCore::RenderSVGContainer::paint):
1499         * rendering/RenderSVGImage.cpp:
1500         (WebCore::RenderSVGImage::paint):
1501         * rendering/SVGInlineFlowBox.cpp:
1502         (WebCore::paintSVGInlineFlow):
1503
1504 2006-10-30  John Sullivan  <sullivan@apple.com>
1505
1506         Reviewed by Geoff Garen.
1507         
1508         Moved spelling-related methods from bridge to EditorClient. Added one not-yet-used
1509         grammar-related method.
1510
1511         * bridge/EditorClient.h:
1512         declare isContinuousSpellCheckingEnabled(), spellCheckerDocumentTag(), and new
1513         isGrammarCheckingEnabled()
1514         
1515         * bridge/mac/WebCoreFrameBridge.h:
1516         removed bridge equivalents
1517
1518         * bridge/mac/FrameMac.mm:
1519         (WebCore::FrameMac::advanceToNextMisspelling):
1520         convert bridge-using code to editor()->client()-using code
1521         (WebCore::FrameMac::markMisspellingsInAdjacentWords):
1522         ditto
1523         (WebCore::FrameMac::markMisspellings):
1524         ditto
1525         (WebCore::FrameMac::respondToChangedSelection):
1526         ditto
1527         
1528         * editing/Editor.h:
1529         * editing/Editor.cpp:
1530         (WebCore::Editor::client):
1531         new method, returns EditorClient pointer. In an ideal world all the code that needed to
1532         access the EditorClient would be in Editor.cpp, and we wouldn't need this accessor.
1533         But for now it's too tricky to extricate the spelling-related code from FrameMac.mm.
1534
1535 2006-10-30  Geoffrey Garen  <ggaren@apple.com>
1536
1537         Reviewed by Darin.
1538
1539         Removed a number of editing and selection methods from the bridge.
1540         
1541         I moved cross-platform editing and selection code into Editor and 
1542         SelectionController, respecitvely.
1543
1544         I moved ObjC and AppKit stuff up into WebKit, so I ended up exporting
1545         everything + the kitchen sink.
1546         
1547         Specific comments below for interesting things.
1548         
1549         * bindings/objc/DOMInternal.h: Moved exception handling helper methods into
1550         a new file so that WebKit can use them, too. Added a helper method for
1551         handling exceptions when selecting a Range.
1552         * bridge/mac/FrameMac.h: Moved attributedString creation and helper functions into 
1553         WebKit, since they have to do with creating an NSAttributedString for API
1554         consumption, and not much to do with general Frame functionality.
1555         * editing/Editor.h: Moved lastEditCommand tracking (at least the data,
1556         for now) into the Editor. Eventually, the Frame will not have to notify 
1557         the Editor of what the lastEditCommand was, since the Editor will perform
1558         all EditCommands.
1559         * editing/SelectionController.h: The code here is just stuff moved from the bridge.
1560         * editing/SelectionController.cpp:
1561         (WebCore::SelectionController::setSelectedRange): We now explicitly check from DOM exceptions
1562         and return them. The bridge method to select a DOM range did this implicitly,
1563         since all ObjC DOM operations handle DOM exceptions by throwing them as
1564         ObjC exceptions.
1565         * editing/TextAffinity.h: Added helper functions for conversion to NSSelectionAffinity.
1566         The two enumerations are numerically identical, but that's an implementation
1567         detail of TextAffinity that clients shouldn't be required to know about.
1568
1569 2006-10-30  Timothy Hatcher  <timothy@apple.com>
1570
1571         Rolling out the following change because this crash:
1572         <rdar://problem/4806705> REGRESSION: Crash occurs at WebCore::Font::lineSpacing() when loading site (http://www.photoplusexpo.com/ppe/index.jsp) 
1573
1574         And this regression:
1575         <rdar://problem/4728514> REGRESSION: Safari applies the wrong font to BODY element at http://www.apple.com/downloads/dashboard/
1576
1577     2006-09-06  David Harrison  <harrison@apple.com>
1578
1579         Reviewed and tweaked by Tim H. 
1580
1581         <rdar://problem/4564955> WebKit doesn't trigger Auto Font Activation 
1582
1583         If we don't find the font in the available fonts list, call [NSFont fontWithName:size:] 
1584         to trigger a search that will include auto activation. No PLT or iBench perf impact. 
1585         No layout tests affected. Not testable in an automated way that will work on all systems. 
1586
1587         * platform/mac/WebFontCache.mm: 
1588         (+[WebFontCache fontWithFamily:traits:size:]): 
1589
1590 2006-10-30  Justin Garcia  <justin.garcia@apple.com>
1591
1592         Reviewed by harrison
1593
1594         <rdar://problem/4808375>
1595         REGRESSION: TextIterator slowed down, affecting Find on Page & Copy (etc.) (11460)
1596
1597         * editing/TextIterator.cpp:
1598         (WebCore::TextIterator::exitNode): Only create VisiblePositions
1599         when we're going to use them to create a range for an emitted character.
1600         We should further speed TextIterators up by avoiding creating VisiblePositions
1601         for TIs that are only used for the characters they emit (like the one that 
1602         plainText uses).
1603
1604 2006-10-30  Sam Weinig  <sam.weinig@gmail.com>
1605
1606         Reviewed by Mitz.
1607
1608         Fix for http://bugs.webkit.org/show_bug.cgi?id=11441
1609         More rendering code cleaning
1610
1611         * WebCore.xcodeproj/project.pbxproj:
1612         * rendering/RenderApplet.cpp:
1613         (WebCore::RenderApplet::RenderApplet):
1614         (WebCore::RenderApplet::createWidgetIfNecessary):
1615         * rendering/RenderApplet.h:
1616         * rendering/RenderArena.cpp:
1617         (WebCore::):
1618         (WebCore::RenderArena::RenderArena):
1619         (WebCore::RenderArena::allocate):
1620         (WebCore::RenderArena::free):
1621         * rendering/RenderArena.h:
1622         * rendering/RenderBR.cpp:
1623         (WebCore::RenderBR::RenderBR):
1624         (WebCore::RenderBR::baselinePosition):
1625         (WebCore::RenderBR::lineHeight):
1626         (WebCore::RenderBR::setStyle):
1627         (WebCore::RenderBR::caretMinOffset):
1628         (WebCore::RenderBR::positionForCoordinates):
1629         (WebCore::RenderBR::inlineBox):
1630         * rendering/RenderBR.h:
1631         * rendering/RenderBlock.cpp:
1632         * rendering/RenderBlock.h:
1633         (WebCore::RenderBlock::maxTopMargin):
1634         (WebCore::RenderBlock::maxBottomMargin):
1635         (WebCore::RenderBlock::initMaxMarginValues):
1636         (WebCore::RenderBlock::containsFloats):
1637         (WebCore::RenderBlock::setHasMarkupTruncation):
1638         (WebCore::RenderBlock::BlockSelectionInfo::BlockSelectionInfo):
1639         (WebCore::RenderBlock::BlockSelectionInfo::block):
1640         (WebCore::RenderBlock::BlockSelectionInfo::state):
1641         (WebCore::RenderBlock::FloatingObject::FloatingObject):
1642         (WebCore::RenderBlock::CompactInfo::clear):
1643         * rendering/RenderButton.cpp:
1644         (WebCore::RenderButton::removeChild):
1645         (WebCore::RenderButton::paintObject):
1646         * rendering/RenderButton.h:
1647         (WebCore::RenderButton::renderName):
1648         (WebCore::RenderButton::removeLeftoverAnonymousBoxes):
1649         * rendering/RenderContainer.cpp:
1650         (WebCore::RenderContainer::RenderContainer):
1651         * rendering/RenderContainer.h:
1652         (WebCore::RenderContainer::firstChild):
1653         (WebCore::RenderContainer::lastChild):
1654         (WebCore::RenderContainer::calcMinMaxWidth):
1655         * rendering/RenderCounter.cpp:
1656         (WebCore::RenderCounter::RenderCounter):
1657         (WebCore::toRoman):
1658         (WebCore::toHebrew):
1659         (WebCore::RenderCounter::calcMinMaxWidth):
1660         * rendering/RenderCounter.h:
1661         * rendering/RenderFieldset.cpp:
1662         (WebCore::RenderFieldset::paintBoxDecorations):
1663         (WebCore::RenderFieldset::paintBorderMinusLegend):
1664         (WebCore::RenderFieldset::setStyle):
1665         * rendering/RenderFileUploadControl.cpp:
1666         (WebCore::RenderFileUploadControl::~RenderFileUploadControl):
1667         (WebCore::RenderFileUploadControl::setStyle):
1668         (WebCore::RenderFileUploadControl::paintObject):
1669         (WebCore::RenderFileUploadControl::calcMinMaxWidth):
1670         * rendering/RenderFileUploadControl.h:
1671         (WebCore::RenderFileUploadControl::renderName):
1672         * rendering/RenderFlexibleBox.h:
1673         * rendering/RenderFlow.cpp:
1674         * rendering/RenderFlow.h:
1675         * rendering/RenderForeignObject.cpp:
1676         (WebCore::RenderForeignObject::RenderForeignObject):
1677         (WebCore::RenderForeignObject::paint):
1678         (WebCore::RenderForeignObject::computeAbsoluteRepaintRect):
1679         (WebCore::RenderForeignObject::layout):
1680         (WebCore::RenderForeignObject::nodeAtPoint):
1681         * rendering/RenderForeignObject.h:
1682         (WebCore::RenderForeignObject::renderName):
1683         * rendering/RenderFormElement.cpp:
1684         (WebCore::RenderFormElement::setStyle):
1685         (WebCore::RenderFormElement::layout):
1686         (WebCore::RenderFormElement::textAlignment):
1687         * rendering/RenderFormElement.h:
1688         * rendering/RenderFrame.cpp:
1689         * rendering/RenderFrame.h:
1690         (WebCore::RenderFrame::element):
1691         * rendering/RenderFrameSet.cpp:
1692         * rendering/RenderFrameSet.h:
1693         (WebCore::RenderFrameSet::element):
1694         * rendering/RenderHTMLCanvas.cpp:
1695         (WebCore::RenderHTMLCanvas::RenderHTMLCanvas):
1696         (WebCore::RenderHTMLCanvas::paint):
1697         * rendering/RenderHTMLCanvas.h:
1698         (WebCore::RenderHTMLCanvas::renderName):
1699         * rendering/RenderImage.cpp:
1700         (WebCore::RenderImage::RenderImage):
1701         (WebCore::RenderImage::setStyle):
1702         (WebCore::RenderImage::setContentObject):
1703         (WebCore::RenderImage::setCachedImage):
1704         (WebCore::RenderImage::imageChanged):
1705         (WebCore::RenderImage::paint):
1706         (WebCore::RenderImage::layout):
1707         (WebCore::RenderImage::updateAltText):
1708         * rendering/RenderImage.h:
1709         (WebCore::RenderImage::element):
1710         * rendering/RenderInline.cpp:
1711         (WebCore::RenderInline::RenderInline):
1712         (WebCore::RenderInline::~RenderInline):
1713         (WebCore::RenderInline::setStyle):
1714         (WebCore::RenderInline::addChildToFlow):
1715         (WebCore::RenderInline::cloneInline):
1716         (WebCore::RenderInline::splitInlines):
1717         (WebCore::RenderInline::splitFlow):
1718         (WebCore::RenderInline::paint):
1719         (WebCore::RenderInline::absoluteRects):
1720         (WebCore::RenderInline::calcMinMaxWidth):
1721         (WebCore::RenderInline::requiresLayer):
1722         (WebCore::RenderInline::width):
1723         (WebCore::RenderInline::height):
1724         (WebCore::RenderInline::renderName):
1725         (WebCore::RenderInline::nodeAtPoint):
1726         (WebCore::RenderInline::positionForCoordinates):
1727         * rendering/RenderInline.h:
1728         (WebCore::RenderInline::layout):
1729         * rendering/RenderLayer.cpp:
1730         * rendering/RenderLayer.h:
1731         (WebCore::ClipRects::ClipRects):
1732         (WebCore::RenderLayer::nextSibling):
1733         (WebCore::RenderLayer::root):
1734         (WebCore::RenderLayer::setPos):
1735         (WebCore::RenderLayer::height):
1736         (WebCore::RenderLayer::relativePositionOffset):
1737         * rendering/RenderLineEdit.cpp:
1738         (WebCore::RenderLineEdit::setStyle):
1739         (WebCore::RenderLineEdit::updateFromElement):
1740         (WebCore::RenderLineEdit::selectionStart):
1741         (WebCore::RenderLineEdit::selectionEnd):
1742         (WebCore::RenderLineEdit::setSelectionStart):
1743         (WebCore::RenderLineEdit::setSelectionEnd):
1744         (WebCore::RenderLineEdit::setSelectionRange):
1745         * rendering/RenderLineEdit.h:
1746         * rendering/RenderListBox.cpp:
1747         * rendering/RenderListBox.h:
1748         (WebCore::RenderListBox::renderName):
1749         * rendering/RenderListItem.cpp:
1750         (WebCore::RenderListItem::setStyle):
1751         (WebCore::getParentOfFirstLineBox):
1752         (WebCore::RenderListItem::updateMarkerLocation):
1753         (WebCore::RenderListItem::positionListMarker):
1754         (WebCore::RenderListItem::paint):
1755         * rendering/RenderListItem.h:
1756         * rendering/RenderListMarker.cpp:
1757         * rendering/RenderListMarker.h:
1758         (WebCore::RenderListMarker::renderName):
1759         (WebCore::RenderListMarker::isListMarker):
1760
1761 2006-10-30  Timothy Hatcher  <timothy@apple.com>
1762
1763         Reviewed by Hyatt.
1764
1765         <rdar://problem/4478625> Basic table editing and culling
1766
1767         Refined the criteria for deletable elements, rely on the renderer more.
1768         Corrected the interface positioning for elements that have borders.
1769
1770         * editing/DeleteButtonController.cpp:
1771         (WebCore::isDeletableElement):
1772         (WebCore::DeleteButtonController::show):
1773
1774 2006-10-30  Darin Adler  <darin@apple.com>
1775
1776         - fix build
1777
1778         * loader/ResourceLoader.h: Added header guard.
1779
1780 2006-10-31  Darin Adler  <darin@apple.com>
1781
1782         Reviewed by Adam.
1783
1784         - fix FrameLoader files so they can be built on non-Mac platforms
1785
1786         * page/FramePrivate.h:
1787         (WebCore::FramePrivate::FramePrivate): Added code to create the frame loader.
1788         (WebCore::FramePrivate::~FramePrivate): Added code to delete the frame loader.
1789
1790         * page/Page.h:
1791         * page/Page.cpp: (WebCore::Page::setDefersLoading): Removed the
1792         #if PLATFORM(MAC) that Adam added as a stop-gap when I did this wrong
1793         the other day.
1794
1795         * bridge/mac/FrameMac.mm:
1796         (WebCore::FrameMac::FrameMac): Removed code to create the frame loader.
1797         (WebCore::FrameMac::~FrameMac): Removed code to delete the frame loader.
1798
1799         * loader/FrameLoader.h: Changed import to include, added #if PLATFORM(MAC)
1800         around the PolicyCheck definition.
1801
1802         * loader/FormState.cpp: Changed import to include.
1803         * loader/FrameLoader.cpp: Ditto.
1804         * loader/MainResourceLoader.h: Ditto.
1805
1806         * loader/FrameLoaderTypes.h: Added a header guard.
1807
1808         * loader/NetscapePlugInStreamLoader.h: Changed import to include.
1809         Added #if PLATFORM(MAC) around Mac-specific details.
1810         * loader/SubresourceLoader.h: Ditto.
1811
1812         * page/Frame.cpp: (WebCore::Frame::loader): Updated name of loader to
1813         m_loader from m_frameLoader.
1814
1815         * CMakeLists.txt: Updated.
1816         * WebCoreSources.bkl: Updated.
1817
1818 2006-10-30  Nikolas Zimmermann  <zimmermann@kde.org>
1819
1820         Reviewed and landed by Anders.
1821
1822         Patch by Zack rusin to fix: 
1823         http://bugs.webkit.org/show_bug.cgi?id=11429
1824
1825         Fix startup crash.
1826
1827         * platform/qt/FrameQtClient.cpp:
1828         (WebCore::FrameQtClientDefault::openURL):
1829
1830 2006-10-30  Zach Rusin  <zack@kde.org>
1831
1832         Reviewed and landed by Anders.
1833
1834         * platform/network/qt/ResourceHandleQt.cpp:
1835         (WebCore::ResourceHandle::receivedResponse):
1836         * platform/qt/FrameQtClient.cpp:
1837         (WebCore::FrameQtClientDefault::FrameQtClientDefault):
1838         * platform/qt/LoaderFunctionsQt.cpp:
1839         (WebCore::ServeSynchronousRequest):
1840         More build fixes.
1841
1842 2006-10-30  Simon Hausmann  <hausmann@kde.org>
1843
1844         Reviewed and landed by Anders.
1845         
1846         - fix Qt build
1847         * platform/qt/FrameQtClient.cpp: ResourceLoaderClient ->
1848         ResourceHandleClient
1849
1850 2006-10-30  Darin Adler  <darin@apple.com>
1851
1852         Reviewed by John Sullivan.
1853
1854         - work toward removing Objective-C data types from FrameLoader.h:
1855           removed NSDate, NSString, WebCorePageState, WebCoreResourceLoader,
1856           and WebCoreResourceHandle
1857         - moved bodyBackgroundColor function from Frame to WebFrame in WebKit
1858
1859         * page/PageState.h:
1860         * page/PageState.cpp: Added, C++ class with much of what WebCorePageState had.
1861
1862         * bridge/mac/FrameMac.h: Removed uneeeded declarations and bodyBackgroundColor().
1863         * bridge/mac/FrameMac.mm: (WebCore::FrameMac::startRedirectionTimer): Use a
1864         double for the date instead of an NSDate.
1865
1866         * bridge/mac/WebCoreFrameBridge.h:
1867         * bridge/mac/WebCoreFrameBridge.mm: Removed invalidatePageCache and
1868         saveDocumentToPageCache methods.
1869
1870         * bridge/mac/WebCorePageState.h:
1871         * bridge/mac/WebCorePageState.mm: Removed most of the class and turned it into
1872         an Objective-C wrapper for PageState.
1873
1874         * loader/FrameLoader.h: Removed unused Objective-C types, eliminated use of
1875         NSDate and WebCorePageState.
1876         * loader/FrameLoaderClient.h: Changed NSDate to double.
1877         * loader/mac/FrameLoaderMac.mm:
1878         (WebCore::FrameLoader::receivedMainResourceError): Moved call to setInPageCache
1879         here that used to be in invalidateCurrentItemPageCache on the WebKit side.
1880         (WebCore::FrameLoader::clientRedirected): Changed NSDate to double for date.
1881         (WebCore::FrameLoader::open): Moved one of the open functions that was part of
1882         commitProvisionalLoad inside the commitProvisionalLoad function, so that it can
1883         extract the parameters from the response. Changed the open function that takes
1884         a PageState to use the new C++ PageState.
1885         (WebCore::FrameLoader::commitProvisionalLoad): Added the code from the open
1886         function; tightened up logic, removing a few cases that could never happen, as
1887         well as the unused reload boolean.
1888
1889         * ForwardingHeaders/kjs/property_map.h: Added.
1890
1891         * WebCore.exp: Updated.
1892         * WebCore.xcodeproj/project.pbxproj: Updated.
1893
1894 2006-10-29  Maciej Stachowiak  <mjs@apple.com>
1895
1896         Reviewed by Anders.
1897
1898         - added ResourceResponse class and didReceiveResponse delegate call
1899         
1900         * WebCore.xcodeproj/project.pbxproj: Added new files.
1901         * bridge/mac/WebCoreFrameBridge.h: Removed no longer needed
1902         expiresTimeForResponse: method.
1903         * dom/XMLTokenizer.cpp:
1904         (WebCore::openFunc): Updated to use ResourceResponse.
1905         * loader/FrameLoader.h: Update loadResourceSynchronously to
1906         use ResourceResponse.
1907         * loader/LoaderFunctions.h:
1908         * loader/icon/IconLoader.cpp:
1909         (IconLoader::didReceiveResponse): Updated from receivedResponse
1910         and made cross-platform.
1911         * loader/icon/IconLoader.h: updated for above change
1912         * loader/loader.cpp:
1913         (WebCore::Loader::receivedResponse): reduced to just saving
1914         the PlatformResponse (ideally we'd phase out use of this).
1915         (WebCore::Loader::didReceivedResponse): most of the ReceivedResponse 
1916         logic.
1917         * loader/loader.h:
1918         * loader/mac/FrameLoaderMac.mm:
1919         (WebCore::FrameLoader::loadResourceSynchronously): Return results
1920         as ResourceResponse.
1921         * loader/mac/IconLoaderMac.mm: remove receivedResponse.
1922         * loader/mac/LoaderFunctionsMac.mm:
1923         (WebCore::ServeSynchronousRequest): take ResourceResponse as
1924         argument.
1925         * platform/network/ResourceHandle.cpp:
1926         * platform/network/ResourceHandle.h: Remove calls for
1927         broken out response pieces.
1928         * platform/network/ResourceHandleClient.h:
1929         (WebCore::ResourceHandleClient::didReceiveResponse): New
1930         delegate method.
1931         * platform/network/ResourceHandleInternal.h:
1932         (WebCore::ResourceHandleInternal::ResourceHandleInternal): Remove
1933         storage of response bits, we're not gonna return them
1934         seprately any more.
1935         * platform/network/ResourceResponse.h: Added.
1936         (WebCore::ResourceResponse::ResourceResponse): Freshly
1937         implemented. Same for below.
1938         (WebCore::ResourceResponse::url):
1939         (WebCore::ResourceResponse::mimeType):
1940         (WebCore::ResourceResponse::expectedContentLength):
1941         (WebCore::ResourceResponse::textEncodingName):
1942         (WebCore::ResourceResponse::suggestedFilename):
1943         (WebCore::ResourceResponse::httpStatusCode):
1944         (WebCore::ResourceResponse::setHTTPStatusCode):
1945         (WebCore::ResourceResponse::httpHeaderField):
1946         (WebCore::ResourceResponse::httpHeaderFields):
1947         (WebCore::ResourceResponse::isMultipart):
1948         (WebCore::ResourceResponse::setExpirationDate):
1949         (WebCore::ResourceResponse::expirationDate):
1950         * platform/network/cf/ResourceHandleCFNet.cpp:
1951         (WebCore::didReceiveResponse): Send didReceiveResponse
1952         client method.
1953         * platform/network/cf/ResourceResponseCFNet.h: Added.
1954         * platform/network/cf/ResourceResponseCFNet.mm: Added.
1955         (getResourceResponse): Helper function to get a ResourceResponse 
1956         from CFURLResponseRef.
1957         * platform/network/mac/ResourceHandleMac.mm:
1958         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
1959         Don't bother cleaning up fields we no longer have.
1960         (WebCore::ResourceHandle::receivedResponse): Send
1961         didReceiveResponse client method.
1962         * platform/network/mac/ResourceResponseMac.h: Added.
1963         * platform/network/mac/ResourceResponseMac.mm: Added.
1964         (getResourceResponse): Helper function to get a ResourceResponse 
1965         from an NSURLResponse*.
1966         * rendering/HitTestResult.cpp:
1967         * xml/XSLTProcessor.cpp:
1968         (WebCore::docLoaderFunc): Prepare for use of ResourceResponse.
1969         * xml/xmlhttprequest.cpp:
1970         (WebCore::XMLHttpRequest::getResponseText): Store http response
1971         info in the form of a ResourceResponse, change all methods to
1972         account for this.
1973         (WebCore::XMLHttpRequest::getResponseXML):
1974         (WebCore::XMLHttpRequest::XMLHttpRequest):
1975         (WebCore::XMLHttpRequest::open):
1976         (WebCore::XMLHttpRequest::send):
1977         (WebCore::XMLHttpRequest::getAllResponseHeaders):
1978         (WebCore::XMLHttpRequest::getResponseHeader):
1979         (WebCore::XMLHttpRequest::getStatus):
1980         (WebCore::XMLHttpRequest::getStatusText):
1981         (WebCore::XMLHttpRequest::processSyncLoadResults):
1982         (WebCore::XMLHttpRequest::didFinishLoading):
1983         (WebCore::XMLHttpRequest::didReceiveResponse):
1984         (WebCore::XMLHttpRequest::didReceiveData):
1985         * xml/xmlhttprequest.h:
1986
1987 2006-10-29  Darin Adler  <darin@apple.com>
1988
1989         - fix build
1990
1991         * loader/DocumentLoader.h: Add declarations so this compiles without ObjC.
1992         * loader/NetscapePlugInStreamLoader.h: Ditto.
1993         * loader/ResourceLoader.h: Ditto.
1994
1995 2006-10-29  Darin Adler  <darin@apple.com>
1996
1997         - one last name change -- WebFormState.h to FormState.h
1998         - added more empty placeholder platform-independent files
1999           for currently-Mac-specific loader classes
2000
2001         * loader/FormState.cpp: Updated include.
2002         * loader/FrameLoader.cpp: Updated include.
2003         * loader/mac/FrameLoaderMac.mm: Updated include.
2004
2005         * loader/WebFormState.h: Removed.
2006         * loader/FormState.h: Added.
2007
2008         * loader/DocumentLoader.cpp: Added.
2009         * loader/MainResourceLoader.cpp: Added.
2010         * loader/NetscapePlugInStreamLoader.cpp: Added.
2011         * loader/ResourceLoader.cpp: Added.
2012         * loader/SubresourceLoader.cpp: Added.
2013
2014         * WebCore.xcodeproj/project.pbxproj: Updated for changes above.
2015
2016 2006-10-29  Darin Adler  <darin@apple.com>
2017
2018         - did the do-webcore-rename renames, including a number of changes
2019           to the names of loader files (and WebResourceLoader -> ResourceLoader),
2020           jScript() to scriptProxy(), jScriptEnabled() to javaScriptEnabled(),
2021           and improvements to the names of decoder classes and their source
2022           files (Decoder -> TextResourceDecoder, StreamingTextDecoder -> TextCodec)
2023
2024         * CMakeLists.txt:
2025         * WebCore.exp:
2026         * WebCore.vcproj/WebCore/WebCore.vcproj:
2027         * WebCore.xcodeproj/project.pbxproj:
2028         * WebCoreSources.bkl:
2029         * bindings/js/kjs_binding.cpp:
2030         (KJS::ScriptInterpreter::updateDOMNodeDocument):
2031         * bindings/js/kjs_events.cpp:
2032         (KJS::JSAbstractEventListener::handleEvent):
2033         (KJS::JSLazyEventListener::parseCode):
2034         * bindings/js/kjs_html.cpp:
2035         (KJS::JSHTMLElement::implementsCall):
2036         * bindings/js/kjs_traversal.cpp:
2037         (KJS::JSNodeFilterCondition::acceptNode):
2038         * bindings/js/kjs_window.cpp:
2039         (KJS::Window::interpreter):
2040         (KJS::Window::retrieveWindow):
2041         (KJS::Window::retrieve):
2042         (KJS::ScheduledAction::execute):
2043         * bindings/objc/DOMInternal.mm:
2044         (-[WebScriptObject _initializeScriptDOMNodeImp]):
2045         * bridge/mac/FrameMac.mm:
2046         (WebCore::FrameMac::executionContextForDOM):
2047         (WebCore::FrameMac::bindingRootObject):
2048         (WebCore::FrameMac::windowScriptObject):
2049         (WebCore::FrameMac::windowScriptNPObject):
2050         (WebCore::FrameMac::partClearedInBegin):
2051         * bridge/mac/WebCoreEncodings.mm:
2052         * bridge/mac/WebCoreFrameBridge.mm:
2053         (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]):
2054         (-[WebCoreFrameBridge stringWithData:]):
2055         (-[WebCoreFrameBridge executionContextForView:]):
2056         * bridge/win/FrameWin.cpp:
2057         * dom/Document.cpp:
2058         (WebCore::Document::inputEncoding):
2059         (WebCore::Document::setCharset):
2060         (WebCore::Document::createHTMLEventListener):
2061         (WebCore::Document::setDecoder):
2062         * dom/Document.h:
2063         (WebCore::Document::decoder):
2064         * dom/EventTargetNode.cpp:
2065         (WebCore::EventTargetNode::dispatchGenericEvent):
2066         * html/HTMLParser.cpp:
2067         (WebCore::HTMLParser::noscriptCreateErrorCheck):
2068         (WebCore::HTMLParser::canvasCreateErrorCheck):
2069         (WebCore::HTMLParser::isInline):
2070         * html/HTMLPlugInElement.cpp:
2071         (WebCore::HTMLPlugInElement::createNPObject):
2072         * html/HTMLScriptElement.cpp:
2073         (WebCore::HTMLScriptElement::evaluateScript):
2074         * html/HTMLTokenizer.cpp:
2075         (WebCore::HTMLTokenizer::parseTag):
2076         (WebCore::HTMLTokenizer::processToken):
2077         * ksvg2/misc/SVGDocumentExtensions.cpp:
2078         (WebCore::SVGDocumentExtensions::createSVGEventListener):
2079         * loader/CachedCSSStyleSheet.cpp:
2080         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
2081         (WebCore::CachedCSSStyleSheet::setEncoding):
2082         * loader/CachedCSSStyleSheet.h:
2083         * loader/CachedXBLDocument.cpp:
2084         (WebCore::CachedXBLDocument::CachedXBLDocument):
2085         (WebCore::CachedXBLDocument::setEncoding):
2086         * loader/CachedXBLDocument.h:
2087         * loader/CachedXSLStyleSheet.cpp:
2088         (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet):
2089         (WebCore::CachedXSLStyleSheet::setEncoding):
2090         * loader/CachedXSLStyleSheet.h:
2091         * loader/Decoder.cpp: Removed.
2092         * loader/Decoder.h: Removed.
2093         * loader/FrameLoader.cpp:
2094         * loader/FrameLoader.h:
2095         * loader/FrameLoaderClient.h:
2096         * loader/MainResourceLoader.h: Added.
2097         * loader/NetscapePlugInStreamLoader.h: Added.
2098         * loader/Request.h:
2099         (WebCore::Request::cachedResource):
2100         * loader/ResourceLoader.h: Added.
2101         * loader/SubresourceLoader.h: Added.
2102         * loader/TextResourceDecoder.cpp: Added.
2103         (WebCore::TextResourceDecoder::determineContentType):
2104         (WebCore::TextResourceDecoder::defaultEncoding):
2105         (WebCore::TextResourceDecoder::TextResourceDecoder):
2106         (WebCore::TextResourceDecoder::~TextResourceDecoder):
2107         (WebCore::TextResourceDecoder::setEncoding):
2108         (WebCore::TextResourceDecoder::checkForBOM):
2109         (WebCore::TextResourceDecoder::checkForCSSCharset):
2110         (WebCore::TextResourceDecoder::checkForHeadCharset):
2111         (WebCore::TextResourceDecoder::detectJapaneseEncoding):
2112         (WebCore::TextResourceDecoder::decode):
2113         (WebCore::TextResourceDecoder::flush):
2114         * loader/TextResourceDecoder.h: Added.
2115         * loader/WebDocumentLoader.h: Removed.
2116         * loader/WebLoader.h: Removed.
2117         * loader/WebMainResourceLoader.h: Removed.
2118         * loader/WebNetscapePlugInStreamLoader.h: Removed.
2119         * loader/WebSubresourceLoader.h: Removed.
2120         * loader/loader.cpp:
2121         (WebCore::Loader::servePendingRequests):
2122         (WebCore::Loader::receivedAllData):
2123         (WebCore::Loader::receivedResponse):
2124         (WebCore::Loader::didReceiveData):
2125         (WebCore::Loader::cancelRequests):
2126         (WebCore::Loader::jobForRequest):
2127         * loader/mac/DocumentLoaderMac.mm:
2128         * loader/mac/FormDataStream.m: Added.
2129         * loader/mac/FrameLoaderMac.mm:
2130         (WebCore::FrameLoader::cancelPendingArchiveLoad):
2131         (WebCore::FrameLoader::addPlugInStreamLoader):
2132         (WebCore::FrameLoader::removePlugInStreamLoader):
2133         (WebCore::FrameLoader::addSubresourceLoader):
2134         (WebCore::FrameLoader::removeSubresourceLoader):
2135         (WebCore::FrameLoader::willSendRequest):
2136         (WebCore::FrameLoader::didReceiveAuthenticationChallenge):
2137         (WebCore::FrameLoader::didCancelAuthenticationChallenge):
2138         (WebCore::FrameLoader::didReceiveResponse):
2139         (WebCore::FrameLoader::didReceiveData):
2140         (WebCore::FrameLoader::didFinishLoad):
2141         (WebCore::FrameLoader::didFailToLoad):
2142         (WebCore::FrameLoader::open):
2143         (WebCore::FrameLoader::willUseArchive):
2144         (WebCore::FrameLoader::isArchiveLoadPending):
2145         * loader/mac/ImageDocumentMac.mm:
2146         * loader/mac/LoaderFunctionsMac.mm:
2147         (WebCore::CheckCacheObjectStatus):
2148         * loader/mac/MainResourceLoaderMac.mm:
2149         (WebCore::MainResourceLoader::MainResourceLoader):
2150         (WebCore::MainResourceLoader::releaseDelegate):
2151         (WebCore::MainResourceLoader::didCancel):
2152         (WebCore::MainResourceLoader::addData):
2153         (WebCore::MainResourceLoader::willSendRequest):
2154         (WebCore::MainResourceLoader::continueAfterContentPolicy):
2155         (WebCore::MainResourceLoader::didReceiveData):
2156         (WebCore::MainResourceLoader::didFinishLoading):
2157         (WebCore::MainResourceLoader::setDefersLoading):
2158         * loader/mac/NetscapePlugInStreamLoaderMac.mm:
2159         (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
2160         (WebCore::NetscapePlugInStreamLoader::releaseResources):
2161         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
2162         (WebCore::NetscapePlugInStreamLoader::didReceiveData):
2163         (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
2164         (WebCore::NetscapePlugInStreamLoader::didFail):
2165         (WebCore::NetscapePlugInStreamLoader::didCancel):
2166         * loader/mac/ResourceLoaderMac.mm:
2167         (WebCore::ResourceLoader::ResourceLoader):
2168         (WebCore::ResourceLoader::~ResourceLoader):
2169         (WebCore::ResourceLoader::releaseResources):
2170         (WebCore::ResourceLoader::load):
2171         (WebCore::ResourceLoader::setDefersLoading):
2172         (WebCore::ResourceLoader::frameLoader):
2173         (WebCore::ResourceLoader::addData):
2174         (WebCore::ResourceLoader::resourceData):
2175         (WebCore::ResourceLoader::clearResourceData):
2176         (WebCore::ResourceLoader::willSendRequest):
2177         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
2178         (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
2179         (WebCore::ResourceLoader::didReceiveResponse):
2180         (WebCore::ResourceLoader::didReceiveData):
2181         (WebCore::ResourceLoader::willStopBufferingData):
2182         (WebCore::ResourceLoader::didFinishLoading):
2183         (WebCore::ResourceLoader::didFinishLoadingOnePart):
2184         (WebCore::ResourceLoader::didFail):
2185         (WebCore::ResourceLoader::willCacheResponse):
2186         (WebCore::ResourceLoader::didCancel):
2187         (WebCore::ResourceLoader::cancel):
2188         (WebCore::ResourceLoader::setIdentifier):
2189         (WebCore::ResourceLoader::response):
2190         (WebCore::ResourceLoader::inConnectionCallback):
2191         (WebCore::ResourceLoader::cancelledError):
2192         (WebCore::ResourceLoader::receivedCredential):
2193         (WebCore::ResourceLoader::receivedRequestToContinueWithoutCredential):
2194         (WebCore::ResourceLoader::receivedCancellation):
2195         (WebCore::ResourceLoader::delegate):
2196         (WebCore::ResourceLoader::releaseDelegate):
2197         (-[WebCoreResourceLoaderAsDelegate initWithLoader:]):
2198         * loader/mac/SubresourceLoaderMac.mm:
2199         (WebCore::SubresourceLoader::SubresourceLoader):
2200         (WebCore::SubresourceLoader::willSendRequest):
2201         (WebCore::SubresourceLoader::didReceiveResponse):
2202         (WebCore::SubresourceLoader::didReceiveData):
2203         (WebCore::SubresourceLoader::didFinishLoading):
2204         (WebCore::SubresourceLoader::didFail):
2205         (WebCore::SubresourceLoader::didCancel):
2206         * loader/mac/WebFormDataStream.h: Removed.
2207         * loader/mac/WebFormDataStream.m: Removed.
2208         * page/Frame.cpp:
2209         (WebCore::Frame::javaScriptEnabled):
2210         (WebCore::Frame::scriptProxy):
2211         (WebCore::Frame::executeScript):
2212         (WebCore::Frame::write):
2213         (WebCore::Frame::userGestureHint):
2214         (WebCore::Frame::saveInterpreterBuiltins):
2215         (WebCore::Frame::restoreInterpreterBuiltins):
2216         (WebCore::Frame::backslashAsCurrencySymbol):
2217         * page/Frame.h:
2218         * page/FramePrivate.h:
2219         * platform/StreamingTextDecoder.cpp: Removed.
2220         * platform/StreamingTextDecoder.h: Removed.
2221         * platform/StreamingTextDecoderICU.cpp: Removed.
2222         * platform/StreamingTextDecoderICU.h: Removed.
2223         * platform/TextCodec.cpp: Added.
2224         * platform/TextCodec.h: Added.
2225         * platform/TextCodecICU.cpp: Added.
2226         * platform/TextCodecICU.h: Added.
2227         * platform/TextCodecLatin1.h:
2228         * platform/TextCodecUTF16.h:
2229         * platform/TextDecoder.h:
2230         * platform/TextEncoding.cpp:
2231         * platform/TextEncodingRegistry.cpp:
2232         * platform/image-decoders/jpeg/jmorecfg.h:
2233         * platform/mac/StreamingTextDecoderMac.cpp: Removed.
2234         * platform/mac/StreamingTextDecoderMac.h: Removed.
2235         * platform/mac/TextCodecMac.cpp: Added.
2236         * platform/mac/TextCodecMac.h: Added.
2237         * platform/network/ResourceHandleInternal.h:
2238         * platform/network/mac/ResourceHandleMac.mm:
2239         * platform/qt/FrameQt.cpp:
2240         (WebCore::FrameQt::bindingRootObject):
2241         * platform/qt/LoaderFunctionsQt.cpp:
2242         (WebCore::CheckCacheObjectStatus):
2243         * rendering/RenderObject.cpp:
2244         (WebCore::RenderObject::backslashAsCurrencySymbol):
2245         * xml/XSLTProcessor.cpp:
2246         (WebCore::XSLTProcessor::createDocumentFromSource):
2247         * xml/xmlhttprequest.cpp:
2248         (WebCore::XMLHttpRequest::didReceiveData):
2249         * xml/xmlhttprequest.h:
2250
2251 2006-10-29  Darin Adler  <darin@apple.com>
2252
2253         Rubber stamped by Adam (kinda).
2254
2255         - add Mac suffixes and correct filenames inside loader/mac
2256
2257         * WebCore.xcodeproj/project.pbxproj: Updated for changes below.
2258
2259         * loader/mac/FrameLoader.mm: Removed.
2260         * loader/mac/WebDocumentLoader.mm: Removed.
2261         * loader/mac/WebLoader.mm: Removed.
2262         * loader/mac/WebMainResourceLoader.mm: Removed.
2263         * loader/mac/WebNetscapePlugInStreamLoader.mm: Removed.
2264         * loader/mac/WebSubresourceLoader.mm: Removed.
2265
2266         * loader/mac/FrameLoaderMac.mm: Added.
2267         * loader/mac/DocumentLoaderMac.mm: Added.
2268         * loader/mac/ResourceLoaderMac.mm: Added.
2269         * loader/mac/MainResourceLoaderMac.mm: Added.
2270         * loader/mac/WebNetscapePlugInStreamLoaderMac.mm: Added.
2271         * loader/mac/SubresourceLoaderMac.mm: Removed.
2272
2273 2006-10-29  Darin Adler  <darin@apple.com>
2274
2275         Reviewed by Adam.
2276
2277         - moving towards use of FrameLoader cross-platform; get FrameLoader.h
2278           and FrameLoader.cpp mostly ready
2279
2280         * WebCore.xcodeproj/project.pbxproj: Added FrameLoader.cpp and
2281         FormState.cpp. Removed WebFormState.mm.
2282
2283         * loader/FrameLoader.h: Put in lots of #if statements to see if we can
2284         get this header compiling on non-Mac.
2285         * loader/FrameLoader.cpp: Added. Has non-Mac-specific bits of FrameLoader.
2286         * loader/mac/FrameLoader.mm: Moved some non-Mac-specific bits out.
2287
2288         * loader/FrameLoaderClient.h: Added some ifdefs.
2289         * loader/WebDocumentLoader.h: Ditto.
2290         * loader/WebLoader.h: Ditto.
2291         * loader/WebMainResourceLoader.h: Ditto.
2292
2293         * loader/mac/WebDocumentLoader.mm:
2294         (WebCore::DocumentLoader::isLoadingInAPISense):
2295         Rewrote to work without bridge, partly to remove the need for ObjC
2296         bridge type in the header, and also because we're tearing down the bridge.
2297
2298         * loader/mac/WebMainResourceLoader.mm:
2299         (WebCore::MainResourceLoader::MainResourceLoader): Removed unused
2300         m_contentLength and m_bytesReceived.
2301         (WebCore::MainResourceLoader::didReceiveResponse): Ditto.
2302         (WebCore::MainResourceLoader::didReceiveData): Ditto.
2303
2304         * bridge/mac/WebCoreFrameBridge.h: Removed doneProcessingData.
2305         * bridge/mac/WebCoreFrameBridge.mm: Ditto.
2306
2307         * loader/mac/FormState.mm: Removed.
2308         * loader/FormState.cpp: Added.
2309
2310 2006-10-29  Darin Adler  <darin@apple.com>
2311
2312         Rubber stamped by Adam.
2313
2314         - moving towards use of FrameLoader cross-platform; move the headers
2315           for the Mac loader from loader/mac into loader, in preparation for
2316           making them useful on non-Mac
2317
2318         * WebCore.xcodeproj/project.pbxproj:
2319
2320         * loader/mac/FrameLoader.h: Removed.
2321         * loader/mac/WebDocumentLoader.h: Removed.
2322         * loader/mac/WebFormState.h: Removed.
2323         * loader/mac/WebLoader.h: Removed.
2324         * loader/mac/WebMainResourceLoader.h: Removed.
2325         * loader/mac/WebNetscapePlugInStreamLoader.h: Removed.
2326         * loader/mac/WebSubresourceLoader.h: Removed.
2327
2328         * loader/FrameLoader.h: Added.
2329         * loader/WebDocumentLoader.h: Added.
2330         * loader/WebFormState.h: Added.
2331         * loader/WebLoader.h: Added.
2332         * loader/WebMainResourceLoader.h: Added.
2333         * loader/WebNetscapePlugInStreamLoader.h: Added.
2334         * loader/WebSubresourceLoader.h: Added.
2335
2336 2006-10-29  Adam Roben  <aroben@apple.com>
2337
2338         Reviewed by Geoff.
2339
2340         Finish Darin's clean up of the use of __APPLE__ in WebCore, begun in
2341         r17405.
2342
2343         * platform/DeprecatedString.h:
2344
2345 2006-10-29  Beth Dakin  <bdakin@apple.com>
2346
2347         Rubber stamped by Geoff.
2348
2349         This is a followup to my HitTestResult checkin. Most of the 
2350         HitTestResult local variables in the code were named i or info for 
2351         when the class was named NodeInfo. This patch renames all of these 
2352         local variables to result.
2353
2354         * dom/Document.cpp:
2355         (WebCore::Document::prepareMouseEvent):
2356         * html/HTMLAreaElement.cpp:
2357         (WebCore::HTMLAreaElement::mapMouseEvent):
2358         * html/HTMLMapElement.cpp:
2359         (WebCore::HTMLMapElement::mapMouseEvent):
2360         * rendering/EllipsisBox.cpp:
2361         (WebCore::EllipsisBox::nodeAtPoint):
2362         * rendering/EllipsisBox.h:
2363         * rendering/InlineBox.cpp:
2364         (WebCore::InlineBox::nodeAtPoint):
2365         * rendering/InlineFlowBox.cpp:
2366         (WebCore::InlineFlowBox::nodeAtPoint):
2367         * rendering/InlineTextBox.cpp:
2368         (WebCore::InlineTextBox::nodeAtPoint):
2369         * rendering/RenderBlock.cpp:
2370         (WebCore::RenderBlock::isPointInScrollbar):
2371         (WebCore::RenderBlock::nodeAtPoint):
2372         * rendering/RenderBlock.h:
2373         * rendering/RenderBox.cpp:
2374         (WebCore::RenderBox::nodeAtPoint):
2375         * rendering/RenderBox.h:
2376         * rendering/RenderFlow.cpp:
2377         (WebCore::RenderFlow::hitTestLines):
2378         * rendering/RenderFlow.h:
2379         * rendering/RenderForeignObject.cpp:
2380         (WebCore::RenderForeignObject::nodeAtPoint):
2381         * rendering/RenderFrameSet.cpp:
2382         (WebCore::RenderFrameSet::nodeAtPoint):
2383         * rendering/RenderImage.cpp:
2384         (WebCore::RenderImage::nodeAtPoint):
2385         * rendering/RenderInline.cpp:
2386         (WebCore::RenderInline::nodeAtPoint):
2387         * rendering/RenderInline.h:
2388         * rendering/RenderLayer.cpp:
2389         (WebCore::RenderLayer::autoscroll):
2390         (WebCore::RenderLayer::hitTest):
2391         (WebCore::RenderLayer::hitTestLayer):
2392         (WebCore::RenderLayer::updateHoverActiveState):
2393         * rendering/RenderListBox.cpp:
2394         (WebCore::RenderListBox::isPointInScrollbar):
2395         * rendering/RenderObject.cpp:
2396         (WebCore::RenderObject::hitTest):
2397         (WebCore::RenderObject::setInnerNode):
2398         (WebCore::RenderObject::nodeAtPoint):
2399         * rendering/RenderObject.h:
2400         * rendering/RenderPath.cpp:
2401         (WebCore::RenderPath::nodeAtPoint):
2402         * rendering/RenderSVGImage.cpp:
2403         (WebCore::RenderSVGImage::nodeAtPoint):
2404         * rendering/RenderSVGText.cpp:
2405         (WebCore::RenderSVGText::nodeAtPoint):
2406         * rendering/RenderTableRow.cpp:
2407         (WebCore::RenderTableRow::nodeAtPoint):
2408         * rendering/RenderTableRow.h:
2409         * rendering/RenderTableSection.cpp:
2410         (WebCore::RenderTableSection::nodeAtPoint):
2411         * rendering/RenderTableSection.h:
2412         * rendering/RenderTextControl.cpp:
2413         (WebCore::RenderTextControl::nodeAtPoint):
2414         * rendering/RootInlineBox.cpp:
2415         (WebCore::RootInlineBox::nodeAtPoint):
2416         * rendering/RootInlineBox.h:
2417
2418 2006-10-29  Adam Roben  <aroben@apple.com>
2419
2420         More semi-fixes.
2421
2422         * page/Page.cpp: Forgot to wrap the actual definition of
2423         setDefersLoading() in PLATFORM(MAC).
2424         * platform/PlatformWheelEvent.h: Fix up preprocessor directives.
2425
2426 2006-10-29  Adam Roben  <aroben@apple.com>
2427
2428         Build semi-fix.
2429
2430         Move all FrameLoader-related code in Page.{cpp,h} within #if
2431         PLATFORM(MAC), since this class currently only exists on Mac.
2432
2433         * page/Page.cpp:
2434         * page/Page.h:
2435
2436 2006-10-29  Geoffrey Garen  <ggaren@apple.com>
2437
2438         build fix.
2439         
2440         * platform/PlatformString.h:
2441         (WebCore::String::operator NSString*):
2442
2443 2006-10-29  Geoffrey Garen  <ggaren@apple.com>
2444
2445         Rolled out accidental commit.
2446         
2447         * platform/AtomicString.h:
2448         (WebCore::AtomicString::AtomicString):
2449         (WebCore::AtomicString::operator NSString*):
2450
2451 2006-10-29  Geoffrey Garen  <ggaren@apple.com>
2452
2453         RS by Darin.
2454
2455         Rolled out change to map NULL Strings to nil NSStrings because it caused
2456         even more AppKit crashes. Maybe we should remove the NSString * operator
2457         entirely, since its use is not straight-forward, and require callers to
2458         specify explicitly whether they tolerate NULL.
2459         
2460         * platform/AtomicString.h:
2461         * platform/PlatformString.h:
2462         (WebCore::String::operator NSString*):
2463         * platform/mac/TextFieldMac.mm:
2464         (-[NSSearchFieldCell _addStringToRecentSearches:]):
2465
2466 2006-10-29  Darin Adler  <darin@apple.com>
2467
2468         Reviewed by Geoff.
2469
2470         - fixed storage leak showing up on the buildbot
2471
2472         * loader/mac/WebSubresourceLoader.mm: (WebCore::SubresourceLoader::create):
2473         Release the NSURLRequest after passing it to load. Also clean up logic a bit.
2474
2475 2006-10-29  Darin Adler  <darin@apple.com>
2476
2477         Rubber stamped by Adam.
2478
2479         - renamed WebFrameLoaderClient to match the class name inside it
2480
2481         * loader/mac/WebFrameLoaderClient.h: Removed.
2482         * loader/FrameLoaderClient.h: Moved it here.
2483
2484         * WebCore.xcodeproj/project.pbxproj: Updated project.
2485
2486         * bridge/mac/FrameMac.mm: Updated includes.
2487         * bridge/mac/WebCoreFrameBridge.mm: Ditto.
2488         * loader/mac/FrameLoader.mm: Ditto.
2489         * loader/mac/WebLoader.h: Ditto.
2490
2491 2006-10-29  Darin Adler  <darin@apple.com>
2492
2493         Reviewed by Mitz.
2494
2495         - fix crash visible on buildbot and also when running the test
2496           anchor-image-scrolled-x-y.html under libgmalloc
2497
2498         * loader/mac/WebSubresourceLoader.h: Renamed m_loader to m_handle
2499         now that the class is named ResourceHandle.
2500         * loader/mac/WebSubresourceLoader.mm: Renaming, plus:
2501         (WebCore::SubresourceLoader::didFinishLoading): Get the handle into
2502         a local RefPtr before calling finishJobAndHandle, since we might get
2503         cancelled inside that function, so we should not rely on m_handle to
2504         keep the ResourceHandle alive.
2505         (WebCore::SubresourceLoader::didFail): Ditto.
2506         (WebCore::SubresourceLoader::didCancel): Ditto.
2507
2508 2006-10-29  Maciej Stachowiak  <mjs@apple.com>
2509
2510         - build fix
2511
2512         * platform/network/mac/ResourceHandleMac.mm:
2513
2514 2006-10-29  Maciej Stachowiak  <mjs@apple.com>
2515
2516         Rubber stamped by Darin.
2517
2518         - renamed ResourceLoader to ResourceHandle (and same for related classes)
2519
2520         * CMakeLists.txt:
2521         * Projects/gdk/webcore-gdk.bkl:
2522         * WebCore.vcproj/WebCore/WebCore.vcproj:
2523         * WebCore.xcodeproj/project.pbxproj:
2524         * WebCoreSources.bkl:
2525         * bridge/mac/FrameMac.mm:
2526         * bridge/win/FrameWin.cpp:
2527         * dom/XMLTokenizer.cpp:
2528         * loader/Cache.cpp:
2529         * loader/CachedResource.h:
2530         * loader/LoaderFunctions.h:
2531         * loader/icon/IconLoader.cpp:
2532         (IconLoader::startLoading):
2533         (IconLoader::didReceiveData):
2534         (IconLoader::didFinishLoading):
2535         * loader/icon/IconLoader.h:
2536         * loader/loader.cpp:
2537         (WebCore::Loader::servePendingRequests):
2538         (WebCore::Loader::receivedAllData):
2539         (WebCore::Loader::receivedResponse):
2540         (WebCore::Loader::didReceiveData):
2541         (WebCore::Loader::cancelRequests):
2542         (WebCore::Loader::jobForRequest):
2543         * loader/loader.h:
2544         * loader/mac/IconLoaderMac.mm:
2545         (IconLoader::receivedResponse):
2546         * loader/mac/LoaderFunctionsMac.mm:
2547         * loader/mac/WebLoader.h:
2548         * loader/mac/WebSubresourceLoader.h:
2549         * loader/mac/WebSubresourceLoader.mm:
2550         (WebCore::SubresourceLoader::SubresourceLoader):
2551         (WebCore::SubresourceLoader::create):
2552         * platform/gdk/FrameGdk.cpp:
2553         (WebCore::FrameGdkClientDefault::FrameGdkClientDefault):
2554         (WebCore::FrameGdkClientDefault::openURL):
2555         (WebCore::FrameGdkClientDefault::submitForm):
2556         (WebCore::FrameGdkClientDefault::receivedResponse):
2557         (WebCore::FrameGdkClientDefault::didReceiveData):
2558         (WebCore::FrameGdkClientDefault::receivedAllData):
2559         * platform/gdk/FrameGdk.h:
2560         * platform/gdk/TemporaryLinkStubs.cpp:
2561         (WebCore::ServeSynchronousRequest):
2562         (WebCore::ResourceHandle::assembleResponseHeaders):
2563         (WebCore::ResourceHandle::retrieveCharset):
2564         * platform/network/ResourceHandle.cpp: Added.
2565         (WebCore::ResourceHandle::ResourceHandle):
2566         (WebCore::ResourceHandle::create):
2567         (WebCore::ResourceHandle::isErrorPage):
2568         (WebCore::ResourceHandle::error):
2569         (WebCore::ResourceHandle::setError):
2570         (WebCore::ResourceHandle::responseEncoding):
2571         (WebCore::ResourceHandle::responseHTTPHeadersAsString):
2572         (WebCore::ResourceHandle::kill):
2573         (WebCore::ResourceHandle::requestHeaders):
2574         (WebCore::ResourceHandle::url):
2575         (WebCore::ResourceHandle::postData):
2576         (WebCore::ResourceHandle::method):
2577         (WebCore::ResourceHandle::client):
2578         * platform/network/ResourceHandle.h: Added.
2579         (WebCore::ResourceHandle::getInternal):
2580         * platform/network/ResourceHandleClient.h: Added.
2581         (WebCore::ResourceHandleClient::~ResourceHandleClient):
2582         (WebCore::ResourceHandleClient::didReceiveData):
2583         (WebCore::ResourceHandleClient::didFinishLoading):
2584         (WebCore::ResourceHandleClient::receivedRedirect):
2585         (WebCore::ResourceHandleClient::receivedResponse):
2586         (WebCore::ResourceHandleClient::receivedAllData):
2587         * platform/network/ResourceHandleInternal.h: Added.
2588         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2589         * platform/network/ResourceLoader.cpp: Removed.
2590         * platform/network/ResourceLoader.h: Removed.
2591         * platform/network/ResourceLoaderClient.h: Removed.
2592         * platform/network/ResourceLoaderInternal.h: Removed.
2593         * platform/network/cf/ResourceHandleCFNet.cpp: Added.
2594         (WebCore::willSendRequest):
2595         (WebCore::didReceiveResponse):
2596         (WebCore::didReceiveData):
2597         (WebCore::didFinishLoading):
2598         (WebCore::didFail):
2599         (WebCore::willCacheResponse):
2600         (WebCore::didReceiveChallenge):
2601         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
2602         (WebCore::ResourceHandle::~ResourceHandle):
2603         (WebCore::ResourceHandle::start):
2604         (WebCore::ResourceHandle::cancel):
2605         * platform/network/cf/ResourceLoaderCFNet.cpp: Removed.
2606         * platform/network/gdk/ResourceHandleCurl.cpp: Added.
2607         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
2608         (WebCore::ResourceHandle::~ResourceHandle):
2609         (WebCore::ResourceHandle::start):
2610         (WebCore::ResourceHandle::cancel):
2611         * platform/network/gdk/ResourceHandleManager.cpp: Added.
2612         (WebCore::ResourceHandleManager::ResourceHandleManager):
2613         (WebCore::ResourceHandleManager::get):
2614         (WebCore::ResourceHandleManager::useSimpleTransfer):
2615         (WebCore::writeCallback):
2616         (WebCore::ResourceHandleManager::downloadTimerCallback):
2617         (WebCore::ResourceHandleManager::remove):
2618         (WebCore::ResourceHandleManager::add):
2619         (WebCore::ResourceHandleManager::cancel):
2620         * platform/network/gdk/ResourceHandleManager.h: Added.
2621         * platform/network/gdk/ResourceLoaderCurl.cpp: Removed.
2622         * platform/network/gdk/ResourceLoaderManager.cpp: Removed.
2623         * platform/network/gdk/ResourceLoaderManager.h: Removed.
2624         * platform/network/mac/ResourceHandleMac.mm: Added.
2625         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
2626         (WebCore::ResourceHandle::~ResourceHandle):
2627         (WebCore::ResourceHandle::start):
2628         (WebCore::ResourceHandle::assembleResponseHeaders):
2629         (WebCore::ResourceHandle::retrieveResponseEncoding):
2630         (WebCore::ResourceHandle::receivedResponse):
2631         (WebCore::ResourceHandle::cancel):
2632         (WebCore::ResourceHandle::redirectedToURL):
2633         (WebCore::ResourceHandle::addData):
2634         (WebCore::ResourceHandle::finishJobAndHandle):
2635         (WebCore::ResourceHandle::reportError):
2636         * platform/network/mac/ResourceLoaderMac.mm: Removed.
2637         * platform/network/qt/ResourceHandleManager.cpp: Added.
2638         (WebCore::ResourceHandleManager::ResourceHandleManager):
2639         (WebCore::ResourceHandleManager::~ResourceHandleManager):
2640         (WebCore::ResourceHandleManager::self):
2641         (WebCore::ResourceHandleManager::slotData):
2642         (WebCore::ResourceHandleManager::slotMimetype):
2643         (WebCore::ResourceHandleManager::slotResult):
2644         (WebCore::ResourceHandleManager::remove):
2645         (WebCore::ResourceHandleManager::add):
2646         (WebCore::ResourceHandleManager::cancel):
2647         * platform/network/qt/ResourceHandleManager.h: Added.
2648         * platform/network/qt/ResourceHandleQt.cpp: Added.
2649         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
2650         (WebCore::ResourceHandle::~ResourceHandle):
2651         (WebCore::ResourceHandle::start):
2652         (WebCore::ResourceHandle::cancel):
2653         (WebCore::ResourceHandle::assembleResponseHeaders):
2654         (WebCore::ResourceHandle::retrieveResponseEncoding):
2655         (WebCore::ResourceHandle::receivedResponse):
2656         (WebCore::ResourceHandle::extractCharsetFromHeaders):
2657         * platform/network/qt/ResourceLoaderManager.cpp: Removed.
2658         * platform/network/qt/ResourceLoaderManager.h: Removed.
2659         * platform/network/qt/ResourceLoaderQt.cpp: Removed.
2660         * platform/network/win/ResourceHandleWin.cpp: Added.
2661         (WebCore::):
2662         (WebCore::addToOutstandingJobs):
2663         (WebCore::lookupResourceHandle):
2664         (WebCore::ResourceHandleWndProc):
2665         (WebCore::initializeOffScreenResourceHandleWindow):
2666         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
2667         (WebCore::ResourceHandle::~ResourceHandle):
2668         (WebCore::ResourceHandle::onHandleCreated):
2669         (WebCore::ResourceHandle::onRequestRedirected):
2670         (WebCore::ResourceHandle::onRequestComplete):
2671         (WebCore::ResourceHandle::start):
2672         (WebCore::ResourceHandle::fileLoadTimer):
2673         (WebCore::ResourceHandle::cancel):
2674         (WebCore::ResourceHandle::setHasReceivedResponse):
2675         (WebCore::ResourceHandle::hasReceivedResponse):
2676         * platform/network/win/ResourceHandleWin.h: Added.
2677         * platform/network/win/ResourceLoaderWin.cpp: Removed.
2678         * platform/network/win/ResourceLoaderWin.h: Removed.
2679         * platform/qt/FrameQt.cpp:
2680         * platform/qt/FrameQtClient.cpp:
2681         (WebCore::FrameQtClientDefault::openURL):
2682         (WebCore::FrameQtClientDefault::submitForm):
2683         (WebCore::FrameQtClientDefault::receivedResponse):
2684         (WebCore::FrameQtClientDefault::didReceiveData):
2685         (WebCore::FrameQtClientDefault::receivedAllData):
2686         * platform/qt/FrameQtClient.h:
2687         * platform/win/TemporaryLinkStubs.cpp:
2688         (WebCore::ResourceHandle::assembleResponseHeaders):
2689         (WebCore::ResourceHandle::retrieveResponseEncoding):
2690         (WebCore::ServeSynchronousRequest):
2691         * xml/XSLTProcessor.cpp:
2692         * xml/xmlhttprequest.cpp:
2693         (WebCore::XMLHttpRequest::send):
2694         (WebCore::XMLHttpRequest::didFinishLoading):
2695         (WebCore::XMLHttpRequest::receivedRedirect):
2696         (WebCore::XMLHttpRequest::didReceiveData):
2697         * xml/xmlhttprequest.h:
2698
2699 t2006-10-29  Darin Adler  <darin@apple.com>
2700
2701         Reviewed by Maciej.
2702
2703         - eliminate use of NSArray to carry form data around
2704
2705         * WebCore.exp:
2706         * WebCore.xcodeproj/project.pbxproj:
2707         * bridge/mac/FormDataMac.h: Removed.
2708         * bridge/mac/FormDataMac.mm: Removed.
2709         * bridge/mac/FrameMac.h:
2710         * bridge/mac/WebCoreFrameBridge.h:
2711         * bridge/mac/WebCoreFrameBridge.mm:
2712         * html/HTMLFormElement.cpp:
2713         (WebCore::HTMLFormElement::submit):
2714         * loader/FormData.h:
2715         (WebCore::FormData::isEmpty):
2716         * loader/mac/FrameLoader.h:
2717         * loader/mac/FrameLoader.mm:
2718         (WebCore::FrameLoader::load):
2719         (WebCore::FrameLoader::post):
2720         (WebCore::FrameLoader::loadEmptyDocumentSynchronously):
2721         (WebCore::FrameLoader::loadResourceSynchronously):
2722         * loader/mac/LoaderFunctionsMac.mm:
2723         (WebCore::ServeSynchronousRequest):
2724         * loader/mac/WebFormDataStream.h:
2725         * loader/mac/WebFormDataStream.m:
2726         (WebCore::pairRetain):
2727         (WebCore::pairRelease):
2728         (WebCore::pairEqual):
2729         (WebCore::pairHash):
2730         (WebCore::closeCurrentStream):
2731         (WebCore::scheduleWithPair):
2732         (WebCore::advanceCurrentStream):
2733         (WebCore::openNextStream):
2734         (WebCore::formCreate):
2735         (WebCore::formFinalize):
2736         (WebCore::formOpen):
2737         (WebCore::formRead):
2738         (WebCore::formCanRead):
2739         (WebCore::formClose):
2740         (WebCore::formSchedule):
2741         (WebCore::formUnschedule):
2742         (WebCore::formEventCallback):
2743         (WebCore::setHTTPBody):
2744         * loader/mac/WebSubresourceLoader.h:
2745         * loader/mac/WebSubresourceLoader.mm:
2746         (WebCore::SubresourceLoader::create):
2747         * platform/network/mac/ResourceLoaderMac.mm:
2748
2749 2006-10-29  Maciej Stachowiak  <mjs@apple.com>
2750
2751         Reviewed by Darin.
2752
2753         - create SubresourceLoader with a ResourceRequest, not broken out request bits
2754
2755         * loader/mac/WebSubresourceLoader.h:
2756         * loader/mac/WebSubresourceLoader.mm:
2757         (WebCore::SubresourceLoader::create):
2758         * platform/network/mac/ResourceLoaderMac.mm:
2759         (WebCore::ResourceLoader::start):
2760
2761 2006-10-29  Maciej Stachowiak  <mjs@apple.com>
2762
2763         Reviewed by Darin.
2764
2765         - removed ObjC glue between ResourceLoader and SubresourceLoader, then now talk to each other directly
2766
2767         Removed WebCoreResourceLoader, WebCoreResourceHandle and WebCoreResourceLoaderImp
2768         
2769         * WebCore.xcodeproj/project.pbxproj:
2770         * bridge/mac/WebCoreFrameBridge.h:
2771         * loader/mac/FrameLoader.h:
2772         * loader/mac/FrameLoader.mm:
2773         * loader/mac/LoaderFunctionsMac.mm:
2774         * loader/mac/WebLoader.h:
2775         * loader/mac/WebSubresourceLoader.h:
2776         * loader/mac/WebSubresourceLoader.mm:
2777         (WebCore::SubresourceLoader::SubresourceLoader):
2778         (WebCore::SubresourceLoader::create):
2779         (WebCore::SubresourceLoader::willSendRequest):
2780         (WebCore::SubresourceLoader::didReceiveResponse):
2781         (WebCore::SubresourceLoader::didReceiveData):
2782         (WebCore::SubresourceLoader::didFinishLoading):
2783         (WebCore::SubresourceLoader::didFail):
2784         (WebCore::SubresourceLoader::didCancel):
2785         * platform/network/ResourceLoader.h:
2786         * platform/network/ResourceLoaderInternal.h:
2787         * platform/network/mac/ResourceLoaderMac.mm:
2788         (WebCore::ResourceLoader::~ResourceLoader):
2789         (WebCore::ResourceLoader::start):
2790         (WebCore::ResourceLoader::receivedResponse):
2791         (WebCore::ResourceLoader::cancel):
2792         (WebCore::ResourceLoader::redirectedToURL):
2793         (WebCore::ResourceLoader::addData):
2794         (WebCore::ResourceLoader::finishJobAndHandle):
2795         (WebCore::ResourceLoader::reportError):
2796         * platform/network/mac/WebCoreResourceLoader.h: Removed.
2797         * platform/network/mac/WebCoreResourceLoaderImp.h: Removed.
2798         * platform/network/mac/WebCoreResourceLoaderImp.mm: Removed.
2799
2800 2006-10-28  Darin Adler  <darin@apple.com>
2801
2802         Reviewed by Maciej.
2803
2804         - eliminated the use of Objective-C for the policy decider
2805           machinery, obviating the need for WebPolicyDecider,
2806           WebCoreFrameLoaderAsDelegate, and
2807           WebCoreMainResourceLoaderAsPolicyDelegate
2808
2809         - grouped the state related to policy decisions into a PolicyCheck
2810           class to simplify the FrameLoader logic
2811
2812         - removed six methods from the bridge, reducing FrameLoader's use of
2813           the bridge to a single method
2814
2815         - changed form state to always use HashMap instead of NSDictionary
2816
2817         - moved the defersLoading flag from WebView to WebCore::Page
2818           and changed code to consistently call it defersLoading rather
2819           than defersCallbacks
2820
2821         - updated for rename of PassRefPtr::release to releaseRef
2822         - replaced all uses of __APPLE__ with appropriate PLATFORM defines
2823         - cleaned up kjs_binding.h a bit
2824         - cleaned up FrameMac.h a bit
2825
2826         * loader/mac/WebPolicyDecider.h: Removed.
2827         * loader/mac/WebPolicyDecider.mm: Removed.
2828         * WebCore.xcodeproj/project.pbxproj: Updated for removal.
2829
2830         * WebCore.exp:
2831         * bindings/js/kjs_binding.cpp:
2832         (KJS::ScriptInterpreter::ScriptInterpreter):
2833         (KJS::ScriptInterpreter::wasRunByUserGesture):
2834         * bindings/js/kjs_binding.h:
2835         (KJS::ScriptInterpreter::setCurrentEvent):
2836         (KJS::ScriptInterpreter::setInlineCode):
2837         (KJS::ScriptInterpreter::setProcessingTimerCallback):
2838         (KJS::ScriptInterpreter::getCurrentEvent):
2839         (KJS::cacheDOMObject):
2840         (KJS::DOMExceptionTranslator::DOMExceptionTranslator):
2841         * bridge/AXObjectCache.h:
2842         * bridge/mac/BrowserExtensionMac.mm:
2843         (WebCore::BrowserExtensionMac::createNewWindow):
2844         * bridge/mac/FrameMac.h:
2845         * bridge/mac/FrameMac.mm:
2846         (WebCore::FrameMac::loadRequest):
2847         (WebCore::FrameMac::submitForm):
2848         (WebCore::FrameMac::urlSelected):
2849         (WebCore::FrameMac::userAgent):
2850         (WebCore::FrameMac::passMouseDownEventToWidget):
2851         (WebCore::FrameMac::handleMouseMoveEvent):
2852         * bridge/mac/PageMac.mm:
2853         (WebCore::Page::Page):
2854         * bridge/mac/WebCoreEditCommand.mm:
2855         * bridge/mac/WebCoreFrameBridge.h:
2856         * bridge/mac/WebCoreFrameBridge.mm:
2857         (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
2858         (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
2859         * css/CSSComputedStyleDeclaration.cpp:
2860         (WebCore::):
2861         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2862         * css/CSSPrimitiveValue.cpp:
2863         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2864         (WebCore::CSSPrimitiveValue::cleanup):
2865         (WebCore::CSSPrimitiveValue::cssText):
2866         * css/CSSPrimitiveValue.h:
2867         (WebCore::CSSPrimitiveValue::):
2868         * css/CSSValueList.cpp:
2869         (WebCore::CSSValueList::append):
2870         * css/cssparser.cpp:
2871         (WebCore::CSSParser::parseValue):
2872         * css/cssparser.h:
2873         * css/cssstyleselector.cpp:
2874         (WebCore::CSSStyleSelector::applyProperty):
2875         * dom/Document.cpp:
2876         (WebCore::Document::Document):
2877         (WebCore::Document::updateSelection):
2878         (WebCore::Document::implicitClose):
2879         (WebCore::Document::setFocusNode):
2880         * dom/Document.h:
2881         * editing/ReplaceSelectionCommand.h:
2882         * html/HTMLParser.cpp:
2883         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
2884         * loader/mac/FrameLoader.h:
2885         (WebCore::PolicyCheck::request):
2886         * loader/mac/FrameLoader.mm:
2887         (WebCore::FrameLoader::~FrameLoader):
2888         (WebCore::FrameLoader::safeLoad):
2889         (WebCore::FrameLoader::load):
2890         (WebCore::FrameLoader::open):
2891         (WebCore::FrameLoader::stopLoading):
2892         (WebCore::setAllDefersLoading):
2893         (WebCore::FrameLoader::setDefersLoading):
2894         (WebCore::FrameLoader::willSendRequest):
2895         (WebCore::FrameLoader::receivedMainResourceError):
2896         (WebCore::FrameLoader::callContinueFragmentScrollAfterNavigationPolicy):
2897         (WebCore::FrameLoader::commitProvisionalLoad):
2898         (WebCore::FrameLoader::checkNavigationPolicy):
2899         (WebCore::FrameLoader::checkContentPolicy):
2900         (WebCore::FrameLoader::cancelContentPolicyCheck):
2901         (WebCore::FrameLoader::stopPolicyCheck):
2902         (WebCore::FrameLoader::checkNewWindowPolicy):
2903         (WebCore::FrameLoader::continueAfterNewWindowPolicy):
2904         (WebCore::FrameLoader::continueAfterNavigationPolicy):
2905         (WebCore::FrameLoader::continueAfterContentPolicy):
2906         (WebCore::FrameLoader::continueAfterWillSubmitForm):
2907         (WebCore::FrameLoader::callContinueLoadAfterNavigationPolicy):
2908         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
2909         (WebCore::FrameLoader::closeDocument):
2910         (WebCore::FrameLoader::transitionToCommitted):
2911         (WebCore::FrameLoader::callContinueLoadAfterNewWindowPolicy):
2912         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
2913         (WebCore::FrameLoader::post):
2914         (WebCore::FrameLoader::detachFromParent):
2915         (WebCore::FrameLoader::addExtraFieldsToRequest):
2916         (WebCore::PolicyCheck::PolicyCheck):
2917         (WebCore::PolicyCheck::clear):
2918         (WebCore::PolicyCheck::set):
2919         (WebCore::PolicyCheck::call):
2920         (WebCore::PolicyCheck::dropRequest):
2921         (WebCore::FrameLoaderClient::~FrameLoaderClient):
2922         * loader/mac/WebFormState.h:
2923         * loader/mac/WebFormState.mm:
2924         * loader/mac/WebFrameLoaderClient.h:
2925         * loader/mac/WebLoader.h:
2926         (WebCore::WebResourceLoader::defersLoading):
2927         * loader/mac/WebLoader.mm:
2928         (WebCore::WebResourceLoader::WebResourceLoader):
2929         (WebCore::WebResourceLoader::load):
2930         (WebCore::WebResourceLoader::setDefersLoading):
2931         * loader/mac/WebMainResourceLoader.h:
2932         * loader/mac/WebMainResourceLoader.mm:
2933         (WebCore::MainResourceLoader::MainResourceLoader):
2934         (WebCore::MainResourceLoader::releaseDelegate):
2935         (WebCore::MainResourceLoader::didCancel):
2936         (WebCore::MainResourceLoader::callContinueAfterNavigationPolicy):
2937         (WebCore::MainResourceLoader::continueAfterNavigationPolicy):
2938         (WebCore::MainResourceLoader::willSendRequest):
2939         (WebCore::MainResourceLoader::callContinueAfterContentPolicy):
2940         (WebCore::MainResourceLoader::continueAfterContentPolicy):
2941         (WebCore::MainResourceLoader::didReceiveResponse):
2942         (WebCore::MainResourceLoader::didReceiveData):
2943         (WebCore::MainResourceLoader::didFinishLoading):
2944         (WebCore::MainResourceLoader::didFail):
2945         (WebCore::MainResourceLoader::loadNow):
2946         (WebCore::MainResourceLoader::load):
2947         (WebCore::MainResourceLoader::setDefersLoading):
2948         * page/Frame.cpp:
2949         (WebCore::Frame::paint):
2950         * page/FrameView.cpp:
2951         (WebCore::FrameView::layout):
2952         * page/FrameView.h:
2953         * page/Page.cpp:
2954         (WebCore::Page::setDefersLoading):
2955         * page/Page.h:
2956         (WebCore::Page::defersLoading):
2957         * platform/DeprecatedString.h:
2958         * platform/DeprecatedStringList.h:
2959         * platform/FontFallbackList.h:
2960         * platform/PlatformKeyboardEvent.h:
2961         * platform/PlatformMouseEvent.h:
2962         * platform/PlatformWheelEvent.h:
2963         * platform/mac/ClipboardMac.h:
2964         * platform/mac/ClipboardMac.mm:
2965         (WebCore::ClipboardMac::setDragImage):
2966         (WebCore::ClipboardMac::dragNSImage):
2967         (WebCore::ClipboardMac::sourceOperation):
2968         (WebCore::ClipboardMac::destinationOperation):
2969         * rendering/RenderObject.cpp:
2970         (WebCore::RenderObject::setStyle):
2971         * rendering/break_lines.cpp:
2972         (WebCore::nextBreakablePosition):
2973
2974 2006-10-28  Adam Roben  <aroben@apple.com>
2975
2976         Reviewed by Maciej.
2977
2978         Fix layout tests that broke after r17399. Mitz discovered that the
2979         failures were caused by HitTestResult::m_point being uninitialized
2980         much of the time. HitTestResults are now always constructed with a
2981         point, and RenderLayer::hitTest and RenderLayer::hitTestLayer use that
2982         point instead of being passed one explicitly.
2983
2984         * WebCore.exp: Change constructor symbol.
2985         * bridge/mac/FrameMac.mm:
2986         (WebCore::FrameMac::eventMayStartDrag): Update to new constructor and
2987         hitTest().
2988         (WebCore::FrameMac::handleMouseMoveEvent): Ditto.
2989         * bridge/mac/WebCoreAXObject.mm:
2990         (-[WebCoreAXObject doAXTextMarkerForPosition:]): Ditto.
2991         (-[WebCoreAXObject accessibilityHitTest:]): Ditto.
2992         * dom/Document.cpp:
2993         (WebCore::Document::elementFromPoint): Ditto.
2994         (WebCore::Document::prepareMouseEvent): Ditto.
2995         * page/Frame.cpp:
2996         (WebCore::Frame::isPointInsideSelection): Ditto.
2997         (WebCore::Frame::hitTestResultAtPoint): Ditto.
2998         * page/FrameView.cpp:
2999         (WebCore::FrameView::handleWheelEvent): Ditto.
3000         * rendering/HitTestResult.cpp:
3001         (WebCore::HitTestResult::HitTestResult): Initalize m_point with the
3002         passed point.
3003         * rendering/HitTestResult.h: Update constructor declaration.
3004         * rendering/RenderLayer.cpp:
3005         (WebCore::RenderLayer::autoscroll): Update to new constructor and
3006         hitTest().
3007         (WebCore::RenderLayer::hitTest): Use the IntPoint stored in the
3008         HitTestResult instead of being passed one.
3009         (WebCore::RenderLayer::hitTestLayer): Ditto.
3010         * rendering/RenderLayer.h: Update declarations.
3011
3012 2006-10-28  Nikolas Zimmermann  <zimmermann@kde.org>
3013
3014         Reviewed by Anders.
3015
3016         Fix Qt/Linux build.
3017
3018         * CMakeLists.txt:
3019         * platform/qt/FrameQtClient.cpp:
3020         (WebCore::numRequests):
3021         (WebCore::FrameQtClientDefault::numPendingOrLoadingRequests):
3022         * platform/qt/PopupMenuQt.cpp:
3023         (WebCore::PopupMenu::updateFromElement):
3024
3025 2006-10-28  David Carson  <dacarson@gmail.com>
3026
3027         Tweaked by Sam. Reviewed by Brady.
3028
3029         Fix for: http://bugs.webkit.org/show_bug.cgi?id=11437
3030         Initialize m_modifyBiasSet to false, as it sometimes gets 
3031         used before it has been initalized.
3032
3033         * editing/SelectionController.cpp:
3034         (WebCore::SelectionController::SelectionController):
3035
3036 2006-10-28  Beth Dakin  <bdakin@apple.com>
3037
3038         Reviewed by Darin.
3039
3040         This is the WebCore half of pushing elementAtPoint and the backend 
3041         of WebElementDictionary into WebCore. Most of the changes below are 
3042         to accommodate one of the following:
3043                 
3044         -NodeInfo is now a stand-alone class called HitTestResult. 
3045                 Previously it was defined in RenderObject.h, but not for 
3046                 any particular reason. The WebElementDictionary 
3047                 functionality that was pushed into WebCore has been pushed 
3048                 specifically into the this class. In fact, 
3049                 WebElementDictionary now keeps a HitTestResult as a member 
3050                 varibale.
3051                 
3052         -The enumeration AccessPolicy is now called 
3053                 ClipboardAccessPolicy and is defined in its own header. It 
3054                 was previously defined in ClipboardMac.h, but is now 
3055                 defined independently to avoid including ClipboardMac.h 
3056                 from within FrameMac.h since FrameMac.h is now included in 
3057                 WebElementDictionary.m in WebKit.
3058                 
3059         -Element now has a virtual target() for the sake of 
3060                 NodeInfo::targetFrame() 
3061
3062         * WebCore.exp: Several WebCore functions are newly called from 
3063         WebKit, so they have been added here. 
3064         * WebCore.xcodeproj/project.pbxproj:
3065         * bindings/objc/DOM.mm: Must include Image.h because of adjustments 
3066         to ClipboardMac.
3067         * bridge/mac/FrameMac.h: Adjust to HitTestResult changes.
3068         * bridge/mac/FrameMac.mm:
3069         (WebCore::FrameMac::freeClipboard): Adjust to ClipboardAccessPolicy 
3070         and HitTestResult changes.
3071         (WebCore::FrameMac::eventMayStartDrag): Same.
3072         (WebCore::FrameMac::handleMouseMoveEvent): Same.
3073         (WebCore::FrameMac::dispatchCPPEvent): Same.
3074         (WebCore::FrameMac::mayDHTMLCut): Same.
3075         (WebCore::FrameMac::mayDHTMLCopy): Same.
3076         (WebCore::FrameMac::mayDHTMLPaste): Same.
3077         (WebCore::FrameMac::tryDHTMLCut): Same
3078         (WebCore::FrameMac::tryDHTMLCopy): Same.
3079         (WebCore::FrameMac::tryDHTMLPaste): Same.
3080         * bridge/mac/WebCoreAXObject.mm:
3081         (-[WebCoreAXObject doAXTextMarkerForPosition:]): Adjust to 
3082         HitTestResult changes.
3083         (-[WebCoreAXObject accessibilityHitTest:]): Same.
3084         * bridge/mac/WebCoreFrameBridge.h: Same.
3085         * bridge/mac/WebCoreFrameBridge.mm:
3086         (-[WebCoreFrameBridge dragOperationForDraggingInfo:]): Adjust for 
3087         ClipboardAccessPolicy changes.
3088         (-[WebCoreFrameBridge dragExitedWithDraggingInfo:]): Same.
3089         (-[WebCoreFrameBridge concludeDragForDraggingInfo:]): Same.
3090         * dom/Document.cpp:
3091         (WebCore::Document::elementFromPoint): Adjust for HitTestResult 
3092         changes.
3093         (WebCore::Document::prepareMouseEvent): Same.
3094         * dom/Element.h:
3095         (WebCore::Element::target): Now has a virtual target()
3096         * html/HTMLAnchorElement.h: Same.
3097         * html/HTMLAreaElement.cpp:
3098         (WebCore::HTMLAreaElement::mapMouseEvent): Adjust for HitTestResult 
3099         changes.
3100         * html/HTMLAreaElement.h: Virtual target()
3101         * html/HTMLBaseElement.h:
3102         (WebCore::HTMLBaseElement::target): Same.
3103         * html/HTMLFormElement.h: Same.
3104         * html/HTMLLinkElement.h: Same.
3105         * html/HTMLMapElement.cpp:
3106         (WebCore::HTMLMapElement::mapMouseEvent): Adjust for HitTestResult 
3107         changes.
3108         * html/HTMLMapElement.h: Same.
3109         * page/Frame.cpp:
3110         (WebCore::Frame::isPointInsideSelection): Same.
3111         (WebCore::Frame::hitTestResultAtPoint): Same. 
3112         * page/Frame.h: Same.
3113         * page/FrameView.cpp:
3114         (WebCore::FrameView::handleWheelEvent): Same.
3115         * platform/mac/ClipboardAccessPolicy.h: Added.
3116         (WebCore::):
3117         * platform/mac/ClipboardMac.h: Remove definition of AccessPolicy, 
3118         include ClipboardAccessPolicy.h, and rename AccessPolicy to 
3119         ClipboardAccessPolicy.
3120         * platform/mac/ClipboardMac.mm: Rename ClipboardAccessPolicy.
3121         (WebCore::ClipboardMac::ClipboardMac):
3122         (WebCore::ClipboardMac::setAccessPolicy):
3123         (WebCore::ClipboardMac::clearData):
3124         (WebCore::ClipboardMac::clearAllData):
3125         (WebCore::ClipboardMac::getData):
3126         (WebCore::ClipboardMac::setData):
3127         (WebCore::ClipboardMac::types):
3128         (WebCore::ClipboardMac::setDragImage):
3129         (WebCore::ClipboardMac::setDropEffect):
3130         (WebCore::ClipboardMac::setEffectAllowed):
3131         * rendering/EllipsisBox.cpp:
3132         (WebCore::EllipsisBox::nodeAtPoint): Adjust for HitTestResult 
3133         changes.
3134         * rendering/EllipsisBox.h:
3135         * rendering/HitTestResult.cpp: Added.
3136         (WebCore::HitTestResult::HitTestResult):
3137         (WebCore::HitTestResult::~HitTestResult):
3138         (WebCore::HitTestResult::operator=):
3139         (WebCore::HitTestResult::setInnerNode):
3140         (WebCore::HitTestResult::setInnerNonSharedNode):
3141         (WebCore::HitTestResult::setURLElement):
3142         (WebCore::HitTestResult::setScrollbar):
3143         (WebCore::HitTestResult::targetFrame):
3144         (WebCore::HitTestResult::boundingBox):
3145         (WebCore::HitTestResult::isSelected):
3146         (WebCore::HitTestResult::title):
3147         * rendering/HitTestResult.h: Added.
3148         (WebCore::HitTestResult::readonly):
3149         (WebCore::HitTestResult::active):
3150         (WebCore::HitTestResult::mouseMove):
3151         (WebCore::HitTestResult::innerNode):
3152         (WebCore::HitTestResult::innerNonSharedNode):
3153         (WebCore::HitTestResult::point):
3154         (WebCore::HitTestResult::URLElement):
3155         (WebCore::HitTestResult::scrollbar):
3156         (WebCore::HitTestResult::setPoint):
3157         (WebCore::HitTestResult::setReadonly):
3158         (WebCore::HitTestResult::setActive):
3159         (WebCore::HitTestResult::setMouseMove):
3160         * rendering/InlineBox.cpp:
3161         (WebCore::InlineBox::nodeAtPoint): Adjust to HitTestResult changes.
3162         * rendering/InlineBox.h: Same.
3163         * rendering/InlineFlowBox.cpp:
3164         (WebCore::InlineFlowBox::nodeAtPoint): Same.
3165         * rendering/InlineFlowBox.h: Same.
3166         * rendering/InlineTextBox.cpp: 
3167         (WebCore::InlineTextBox::nodeAtPoint): Same.
3168         * rendering/InlineTextBox.h: Same.
3169         * rendering/RenderBlock.cpp:
3170         (WebCore::RenderBlock::isPointInScrollbar): Same.
3171         (WebCore::RenderBlock::nodeAtPoint): Same.
3172         * rendering/RenderBlock.h: Same.
3173         * rendering/RenderBox.cpp:
3174         (WebCore::RenderBox::nodeAtPoint): Same.
3175         * rendering/RenderBox.h: Same.
3176         * rendering/RenderFlow.cpp:
3177         (WebCore::RenderFlow::hitTestLines): Same.
3178         * rendering/RenderFlow.h: Same.
3179         * rendering/RenderForeignObject.cpp:
3180         (WebCore::RenderForeignObject::nodeAtPoint): Same.
3181         * rendering/RenderForeignObject.h: Same.
3182         * rendering/RenderFrameSet.cpp:
3183         (WebCore::RenderFrameSet::nodeAtPoint): Same.
3184         * rendering/RenderFrameSet.h: Same.
3185         * rendering/RenderImage.cpp:
3186         (WebCore::RenderImage::nodeAtPoint): Same.
3187         * rendering/RenderImage.h: Same.
3188         * rendering/RenderInline.cpp:
3189         (WebCore::RenderInline::nodeAtPoint): Same.
3190         * rendering/RenderInline.h: Same.
3191         * rendering/RenderLayer.cpp:
3192         (WebCore::RenderLayer::autoscroll): Same.
3193         (WebCore::RenderLayer::hitTest): Same.
3194         (WebCore::RenderLayer::hitTestLayer): Same.
3195         (WebCore::RenderLayer::updateHoverActiveState): Same.
3196         * rendering/RenderLayer.h: Same.
3197         * rendering/RenderListBox.cpp:
3198         (WebCore::RenderListBox::isPointInScrollbar): Same.
3199         * rendering/RenderListBox.h: Same.
3200         * rendering/RenderObject.cpp:
3201         (WebCore::RenderObject::hitTest): Same.
3202         (WebCore::RenderObject::setInnerNode): Same.
3203         (WebCore::RenderObject::nodeAtPoint): Same.
3204         * rendering/RenderObject.h: Remove NodeInfo class and forward 
3205         declare HitTestResult.
3206         * rendering/RenderPath.cpp:
3207         (WebCore::RenderPath::nodeAtPoint): Adjust to HitTestResult 
3208         changes.
3209         * rendering/RenderPath.h: Same.
3210         * rendering/RenderSVGImage.cpp:
3211         (WebCore::RenderSVGImage::nodeAtPoint): Same.
3212         * rendering/RenderSVGImage.h: Same
3213         * rendering/RenderSVGText.cpp:
3214         (WebCore::RenderSVGText::nodeAtPoint): Same.
3215         * rendering/RenderSVGText.h: Same.
3216         * rendering/RenderTableRow.cpp:
3217         (WebCore::RenderTableRow::nodeAtPoint): Same.
3218         * rendering/RenderTableRow.h: Same.
3219         * rendering/RenderTableSection.cpp:
3220         (WebCore::RenderTableSection::nodeAtPoint): Same.
3221         * rendering/RenderTableSection.h: Same.
3222         * rendering/RenderText.h: Same.
3223         (WebCore::RenderText::nodeAtPoint): Same.
3224         * rendering/RenderTextControl.cpp:
3225         (WebCore::RenderTextControl::nodeAtPoint): Same.
3226         * rendering/RenderTextControl.h: Same.
3227         * rendering/RootInlineBox.cpp:
3228         (WebCore::RootInlineBox::nodeAtPoint): Same.
3229         * rendering/RootInlineBox.h: Same.
3230
3231 2006-10-27  Maciej Stachowiak  <mjs@apple.com>
3232
3233         Reviewed by Anders.
3234
3235         - reverted fix for http://bugs.webkit.org/show_bug.cgi?id=11212, later we will address the performance
3236         impact of fixing it again.
3237
3238         * bridge/mac/FrameMac.mm:
3239         (WebCore::FrameMac::clear):
3240
3241 2006-10-27  Maciej Stachowiak  <mjs@apple.com>
3242
3243         Reviewed by John & Adam.
3244
3245         - assorted speedups to fix perf regression from fixing correctness regression
3246
3247         * WebCore.exp: exported new methods.
3248         * WebCore.xcodeproj/project.pbxproj: Added CachedResourceMac.mm
3249         * bridge/mac/WebCoreFrameBridge.h:
3250         * bridge/mac/WebCoreFrameBridge.mm:
3251         * loader/CachedResource.cpp: Removed now obsolete getCFURL.
3252         * loader/CachedResource.h:
3253         * loader/mac/CachedResourceMac.mm: Added.
3254         (WebCore::CachedResource::getNSURLRequest): New method; the NSURLRequest is
3255         now cached in the CachedObject.
3256         * loader/mac/FrameLoader.h:
3257         * loader/mac/FrameLoader.mm:
3258         (WebCore::FrameLoader::loadedResourceFromMemoryCache): New method - lets
3259         the WebKit side do faster dispatch for clients that implement the fast path delegate. 
3260         * loader/mac/LoaderFunctionsMac.mm:
3261         (WebCore::CheckCacheObjectStatus): Instead of calling several FrameLoader methods,
3262         just call loadedResourceFromMemoryCache.
3263         * loader/mac/WebFrameLoaderClient.h:
3264
3265 2006-10-27  Oliver Hunt  <oliver@apple.com>
3266
3267         Reviewed by Maciej.
3268
3269         build fix
3270
3271         * dom/Document.cpp:
3272         (WebCore::Document::referrer):
3273
3274 2006-10-27  Geoffrey Garen  <ggaren@apple.com>
3275
3276         Reviewed by Maciej.
3277
3278         Moved some WebCoreFrameBridge functions into FrameLoader.
3279         
3280         I had to make FrameLoader.h capable of compiling in C++-only source files
3281         by adding some forward declarations and __OBJC__ #ifdefs.
3282
3283         * WebCore.exp:
3284         * bridge/mac/FrameMac.h:
3285         * bridge/mac/FrameMac.mm:
3286         (WebCore::FrameMac::createEmptyDocument):
3287         (WebCore::FrameMac::tokenizerProcessedData):
3288         * bridge/mac/WebCoreFrameBridge.h:
3289         * bridge/mac/WebCoreFrameBridge.mm:
3290         * dom/Document.cpp:
3291         (WebCore::Document::processHttpEquiv):
3292         (WebCore::Document::referrer):
3293         * loader/LoaderFunctions.h:
3294         * loader/mac/FrameLoader.h:
3295         * loader/mac/FrameLoader.mm:
3296         (WebCore::numRequests):
3297         (WebCore::FrameLoader::numPendingOrLoadingRequests):
3298         (WebCore::FrameLoader::isReloading):
3299         (WebCore::FrameLoader::referrer):
3300         (WebCore::FrameLoader::loadEmptyDocumentSynchronously):
3301         (WebCore::FrameLoader::startLoadingResource):
3302         * loader/mac/LoaderFunctionsMac.mm:
3303         (WebCore::CheckIfReloading):
3304         * page/Frame.h:
3305         * page/FrameTree.cpp:
3306         (WebCore::FrameTree::isDescendantOf):
3307         (WebCore::FrameTree::traverseNext):
3308         * page/FrameTree.h:
3309         * platform/network/mac/ResourceLoaderMac.mm:
3310         (WebCore::ResourceLoader::start):
3311
3312 2006-10-27  Timothy Hatcher  <timothy@apple.com>
3313
3314         Reviewed by Darin.
3315
3316         <rdar://problem/4478625> HTML Editing: Basic table editing and culling
3317
3318         Expanded the Deletion UI to lists, positioned block element and block elementss with borders.
3319
3320         * editing/DeleteButtonController.cpp:
3321         (WebCore::isDeletableElement):
3322         (WebCore::enclosingDeletableElement):
3323         (WebCore::DeleteButtonController::respondToChangedSelection):
3324
3325 2006-10-27  John Sullivan  <sullivan@apple.com>
3326
3327         Reviewed by Kevin Decker
3328         
3329         Some more grammar-checking plumbing. No additional grammar jokes will have been made by the time
3330         you haven't not finished reading this.
3331
3332         * rendering/InlineTextBox.h:
3333         * rendering/InlineTextBox.cpp:
3334         (WebCore::InlineTextBox::paint):
3335         Updated for changed signature of paintDocumentMarkers, which causes grammar markers to be
3336         considered also.
3337         (WebCore::InlineTextBox::paintDocumentMarkers):
3338         Renamed from paintAllMarkersOfType; now takes a bool for whether background or foreground
3339         markers should be painted, instead of a marker type. This avoids walking the collection of
3340         markers multiple times back to back. Now handles grammar markers.
3341
3342 2006-10-27  Timothy Hatcher  <timothy@apple.com>
3343
3344         Reviewed by Beth.
3345
3346         Renamed Copy Files to Copy Generated Headers.
3347         Copy 4 DOM*Internal.h headers.
3348
3349         * WebCore.xcodeproj/project.pbxproj:
3350         * bindings/scripts/CodeGeneratorObjC.pm:
3351
3352 2006-10-27  John Sullivan  <sullivan@apple.com>
3353
3354         Reviewed by Anders
3355
3356         * WebCore.exp:
3357         exported symbol for FrameMac->advanceToNextSpelling()
3358         
3359         * bridge/mac/WebCoreFrameBridge.h:
3360         * bridge/mac/WebCoreFrameBridge.mm:
3361         removed advanceToNextMisspelling callers. Clients in WebKit must now call FrameMac directly.
3362
3363 2006-10-27  Justin Garcia  <justin.garcia@apple.com>
3364
3365         Reviewed by harrison
3366         
3367         <http://bugs.webkit.org/show_bug.cgi?id=11423>
3368         REGRESSION: First newline missing from textarea's value
3369         
3370         The regression is that foo, return, bar in a textarea serializes as 'foobar'.
3371         
3372         Before my change in r17223, return (an InsertLineBreak) would insert a '\n' 
3373         (the line break) then a br to prevent the '\n' from collapsing, since the 
3374         insertion is being done at the end of a block (the textarea's shadow div).  Then, 
3375         inserting "bar" would displace the br, and "foo\nbar" would serialize as "foo\nbar".  
3376         After my change in r17223, InsertLineBreak would insert a br then a '\n' (reversed 
3377         the order).  Then inserting "bar" would displace the '\n' and "foo"<br>"bar" would 
3378         serialize as "foobar" because when serializing RenderTextControl intentionally asks 
3379         textContent to not convert brs to newlines.  It seems to think that the only brs in 
3380         the shadow div will be placeholders or collapsed.
3381         
3382         We could remove this assumption, but, for consistancy's sake, I changed InsertLineBreak 
3383         to insert two '\n's when at the end of a block in white-space:pre text.  This alone 
3384         would have fixed the bug, but introduced a new one, because foo, return, bar would 
3385         produce "foo\nbar\n" which would serialize as "foo\nbar\n" (even though the second 
3386         '\n' is collapsed, because of 9661).  So, then I changed placeholder displacement to 
3387         displace a '\n' if it's acting as a placeholder.  A "placeholder" is now defined as 
3388         a br or '\n' that will collapse (become superfluous) when content is inserted just 
3389         before it.
3390         
3391         * editing/CompositeEditCommand.cpp:
3392         (WebCore::CompositeEditCommand::removePlaceholderAt): Renamed.  Remove
3393         a br or '\n' if content inserted just before it will cause it to collapse.
3394         * editing/CompositeEditCommand.h:
3395         * editing/InsertLineBreakCommand.cpp:
3396         (WebCore::InsertLineBreakCommand::doApply): Insert the same type of node
3397         to prevent a collapse as was used for the line break.  Fixed comments.
3398         * editing/InsertTextCommand.cpp:
3399         (WebCore::InsertTextCommand::input): Call the renamed function.
3400         
3401 2006-10-27  Geoffrey Garen  <ggaren@apple.com>
3402
3403         Reviewed by Brady.
3404
3405         Fixed semantic inaccuracy in String::operator NSString *(), where a NULL
3406         String became an empty NSString *, instead of nil. This will become important
3407         as we start using this conversion more.
3408         
3409         Added work-around for AppKit crash that semantic accuracy revealed.
3410         
3411         No testcase because I don't think there's a way to reflect this change
3412         in a webpage yet.
3413
3414         * platform/PlatformString.h:
3415         (WebCore::String::operator NSString*):
3416         * platform/mac/TextFieldMac.mm:
3417         (-[NSSearchFieldCell _addStringToRecentSearches:]):
3418
3419 2006-10-27  David Harrison  <harrison@apple.com>
3420
3421         Reviewed by Maciej,
3422
3423         <rdar://problem/4003820> Expose blockquotes in AXAttributedStringForTextMarkerRange
3424
3425         * bridge/mac/WebCoreAXObject.mm:
3426         (blockquoteLevel):
3427         Calculate and return the blockquote level of the element.
3428         
3429         (AXAttributeStringSetBlockquoteLevel):
3430         Add, if non-zero, or clear the block quote level attribute.
3431         
3432         (AXAttributedStringAppendText):
3433         Send AXAttributeStringSetBlockquoteLevel.
3434
3435 2006-10-27  Darin Adler  <darin@apple.com>
3436
3437         - fix one error in the Qt build
3438
3439         * platform/qt/GraphicsContextQt.cpp:
3440         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
3441         Updated.
3442
3443 2006-10-27  Darin Adler  <darin@apple.com>
3444
3445         Reviewed by Maciej.
3446
3447         * WebCore.exp: Export more symbols needed by WebKit.
3448
3449 2006-10-26  Geoffrey Garen  <ggaren@apple.com>
3450
3451         Reviewed by the Baroness Esmeralda Von Scratch N' Purr XIV.
3452
3453         Fixed layout test crash. Oops.
3454         
3455         * loader/mac/WebDocumentLoader.mm:
3456         (WebCore::canonicalizedTitle):
3457
3458 2006-10-26  John Sullivan  <sullivan@apple.com>
3459
3460         Reviewed by Brady
3461         
3462         - fixed <rdar://problem/4806064> Repro crash in FrameMac::loadRequest following iTunes music store link from salon.com
3463         
3464         This restores some of the nil-handling that was implicit before some of the code was converted from
3465         Objective-C to C++.
3466
3467         * bridge/mac/FrameMac.mm:
3468         (WebCore::FrameMac::loadRequest):
3469         handle nil FrameMac
3470         
3471         * bridge/mac/WebCoreFrameBridge.mm:
3472         (-[WebCoreFrameBridge canTargetLoadInFrame:]):
3473         handle nil Frame
3474
3475 2006-10-26  Geoffrey Garen  <ggaren@apple.com>
3476
3477         Reviewed by Darin, Maciej.
3478
3479         Removed many uses of NSString *.
3480         Moved a few methods from WebCoreFrameBridge to FrameLoader, replacing 
3481         stringByCollapsingNonPrintingCharacters with a c++ equivalent.
3482         
3483         PLT says no performance regression.
3484         
3485         * WebCore.exp:
3486         * bridge/mac/WebCoreFrameBridge.mm:
3487         (-[WebCoreFrameBridge receivedData:textEncodingName:]):
3488         * loader/mac/FrameLoader.h:
3489         * loader/mac/FrameLoader.mm:
3490         (WebCore::FrameLoader::setupForReplaceByMIMEType):
3491         (WebCore::FrameLoader::load):
3492         (WebCore::FrameLoader::canShowMIMEType):
3493         (WebCore::FrameLoader::representationExistsForURLScheme):
3494         (WebCore::FrameLoader::generatedMIMETypeForURLScheme):
3495         (WebCore::FrameLoader::checkContentPolicy):
3496         (WebCore::FrameLoader::reloadAllowingStaleData):
3497         (WebCore::FrameLoader::invalidatePendingPolicyDecision):
3498         (WebCore::FrameLoader::checkNewWindowPolicy):
3499         (WebCore::FrameLoader::continueAfterNewWindowPolicy):
3500         (WebCore::FrameLoader::transitionToCommitted):
3501         (WebCore::FrameLoader::continueLoadRequestAfterNewWindowPolicy):
3502         (WebCore::FrameLoader::post):
3503         * loader/mac/WebDocumentLoader.h:
3504         * loader/mac/WebDocumentLoader.mm:
3505         (WebCore::DocumentLoader::doesProgressiveLoad):
3506         (WebCore::DocumentLoader::setupForReplaceByMIMEType):
3507         (WebCore::DocumentLoader::title):
3508         (WebCore::DocumentLoader::setOverrideEncoding):
3509         (WebCore::DocumentLoader::overrideEncoding):
3510         (WebCore::DocumentLoader::setTitle):
3511         * loader/mac/WebFrameLoaderClient.h:
3512         * loader/mac/WebMainResourceLoader.mm:
3513         (WebCore::MainResourceLoader::continueAfterContentPolicy):
3514
3515 2006-10-26  Timothy Hatcher  <timothy@apple.com>
3516
3517         Reviewed by Adam.
3518
3519         <rdar://problem/4796941> Table deletion outline is misplaced at nytimes.com
3520
3521         The main table at nytimes.com has a fixed width of 874px, but the table ends
3522         up overflowing to 963px. We now use overflowWidth() and overflowHeight() to correct
3523         this. The other bug was a missing top and left of 0px on the container element,
3524         causing the deletion UI to sometimes be offset below the table.
3525
3526         Now check for the element's renderer at the beginning of show() and