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