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