3efb242a886ee8906e3991ba83dd277ec2f00338
[WebKit-https.git] / WebCore / ChangeLog
1 2006-11-08  Brady Eidson  <beidson@apple.com>
2
3         Reviewed by Dave Harrison, Oliver, and Darin 
4         (oh my!  where was superkevin on this one?)
5
6         <rdar://problem/4816196> "Xcode Help" crashes in WebCore::DocumentLoader::setPrimaryLoadComplete(bool)
7
8         More "free nil checking" we lost in the transition from ObjC to C++
9
10         * loader/mac/FrameLoaderMac.mm:
11         (WebCore::FrameLoader::startLoading): Null check m_provisionalDocumentLoader and bail early.
12         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Ditto
13
14 2006-11-08  Anders Carlsson  <acarlsson@apple.com>
15
16         Reviewed by Adam.
17
18         Move more code into editor.
19         
20         * WebCore.exp:
21         * bridge/EditorClient.h:
22         * bridge/mac/FrameMac.h:
23         * bridge/mac/FrameMac.mm:
24         * bridge/mac/WebCoreFrameBridge.h:
25         * dom/Document.cpp:
26         (WebCore::Document::relinquishesEditingFocus):
27         (WebCore::Document::acceptsEditingFocus):
28         (WebCore::Document::didBeginEditing):
29         (WebCore::Document::didEndEditing):
30         * editing/Editor.cpp:
31         (WebCore::Editor::indent):
32         (WebCore::Editor::outdent):
33         * editing/Editor.h:
34         * page/Frame.cpp:
35         * page/Frame.h:
36
37 2006-11-08  Beth Dakin  <bdakin@apple.com>
38
39         Reviewed by Adam.
40
41         Add ability to HitTestResult to ask if the inner non-shared node is 
42         content editable.
43
44         * WebCore.exp: Export HitTestResult::isContentEditable()
45         * rendering/HitTestResult.cpp:
46         (WebCore::HitTestResult::isContentEditable):
47         * rendering/HitTestResult.h:
48
49 2006-11-08  Anders Carlsson  <acarlsson@apple.com>
50
51         Build fix.
52         
53         * WebCore.xcodeproj/project.pbxproj:
54         Add DOMCSSStyleDeclarationInternal.h to the "Copy Generated Headers" build phase.
55
56 2006-11-08  Timothy Hatcher  <timothy@apple.com>
57
58         Reviewed by Darin.
59
60         <rdar://problem/4713280> Would like to get an array of bounding rects rather than just the union of them for a DOMRange
61         <rdar://problem/4804317> Would like SPI to get bounding box for a DOM range without having to change the selection
62
63         Added lineBoxRects and boundingBox to Range and DOMRange. These methods correspond to the DOMNode methods.
64
65         * bindings/objc/DOM.mm:
66         (WebCore::kit):
67         (-[DOMNode lineBoxRects]):
68         (-[DOMRange boundingBox]):
69         (-[DOMRange lineBoxRects]):
70         * bindings/objc/DOMPrivate.h:
71         * dom/Range.cpp:
72         (WebCore::Range::boundingBox):
73         (WebCore::Range::addLineBoxRects):
74         * dom/Range.h:
75         * rendering/RenderContainer.cpp:
76         (WebCore::RenderContainer::addLineBoxRects):
77         * rendering/RenderContainer.h:
78         * rendering/RenderObject.cpp:
79         (WebCore::RenderObject::addLineBoxRects):
80         * rendering/RenderObject.h:
81         * rendering/RenderText.cpp:
82         (WebCore::RenderText::addLineBoxRects):
83         * rendering/RenderText.h:
84
85 2006-11-08  Anders Carlsson  <acarlsson@apple.com>
86
87         Reviewed by Oliver.
88         
89         Move methods from the bridge and frame into editor.
90         
91         * WebCore.exp:
92         * bridge/EditorClient.h:
93         * bridge/mac/WebCoreFrameBridge.h:
94         * bridge/mac/WebCoreFrameBridge.mm:
95         * editing/Editor.cpp:
96         (WebCore::Editor::removeFormattingAndStyle):
97         (WebCore::Editor::applyStyle):
98         (WebCore::Editor::applyParagraphStyle):
99         (WebCore::Editor::applyStyleToSelection):
100         (WebCore::Editor::applyParagraphStyleToSelection):
101         (WebCore::Editor::toggleBold):
102         (WebCore::Editor::toggleItalic):
103         (WebCore::Editor::selectionStartHasStyle):
104         * editing/Editor.h:
105         * editing/JSEditor.cpp:
106         * page/Frame.cpp:
107         * page/Frame.h:
108
109 2006-11-08  Geoffrey Garen  <ggaren@apple.com>
110
111         Reviewed by Beth.
112         
113         Fixed regression in fast/events/objc-event-api. DumpRenderTree expects to
114         be able to dispatch user events even when off-screen, so we have to support
115         off-screen windows when handling mouse events.
116
117         * platform/Screen.h:
118         * platform/mac/PlatformMouseEventMac.mm:
119         (WebCore::globalPoint): Grab the best screen instead of the screen you're
120         on, since you might be off-screen.
121         * platform/mac/ScreenMac.mm:
122         (WebCore::screenForWindow):
123
124 2006-11-08  Darin Adler  <darin@apple.com>
125
126         - fix bug caused by last-minute change to my check-in last night
127           that is causing layout tests to hang
128
129         * dom/Document.cpp: (WebCore::Document::completeURL): Added comments.
130         * loader/FrameLoader.cpp: (WebCore::FrameLoader::submitForm): Turn
131         a null string into an empty string before calling completeURL.
132
133 2006-11-08  Brady Eidson <beidson@apple.com>
134
135         Reviewed by Maciej
136
137         If the request has already been aborted, bail out of didFinishLoading()
138         immediately.  This prevents state change notifications that aren't
139         needed.
140
141         * xml/xmlhttprequest.cpp:
142         (WebCore::XMLHttpRequest::didFinishLoading):
143
144 2006-11-08  Darin Adler  <darin@apple.com>
145
146         - another attempt to fix Qt build
147
148         * loader/qt/FrameLoaderQt.cpp: Added missing include of FrameLoader.h.
149
150 2006-11-08  Darin Adler  <darin@apple.com>
151
152         Reviewed by Geoff.
153
154         - stray bits of my FrameLoader patch that I left out by accident
155
156         * loader/FrameLoader.cpp:
157         (WebCore::FrameLoader::createWindow): Use m_outgoingReferrer instead of outgoingReferrer()
158         inside the FrameLoader class.
159         (WebCore::FrameLoader::requestFrame): Use less DeprecatedString.
160         (WebCore::FrameLoader::clear): Stop the redirection timer.
161         (WebCore::FrameLoader::receivedFirstData): Added an early return instead of nesting the
162         entire function in an if statement. Use less DeprecatedString.
163         (WebCore::FrameLoader::scheduleLocationChange): Fix backwards ? : operator.
164         (WebCore::FrameLoader::scheduleRefresh): Ditto.
165         (WebCore::FrameLoader::urlSelected): Use m_outgoingReferrer instead of outgoingReferrer()
166         inside the FrameLoader class.
167         * loader/mac/FrameLoaderMac.mm:
168         (WebCore::FrameLoader::load): Ditto.
169         (WebCore::FrameLoader::loadResourceSynchronously): Ditto.
170
171 2006-11-07  Beth Dakin  <bdakin@apple.com>
172
173         Reviewed by Hyatt.
174
175         Another go at fix for <rdar://problem/4820814> A crash occurs at 
176         WebCore::HitTestResult::spellingToolTip() when mousing down on 
177         iframe at www.macsurfer.com
178
179         The fix from yesterday caused a layout test regression which 
180         exposed an existing bug. The existing bug was that we allowed text 
181         nodes to stay in the head tag, but other browsers move them to the 
182         body. The previous fix also caused a performance regression, which 
183         was seemingly easy to fix by moving the new clause in 
184         HTMLParser::handleError() to be below the HTMLElement case.
185
186         * html/HTMLDocument.cpp:
187         (WebCore::HTMLDocument::childAllowed): Don't allow comment nodes to 
188         be the child of the document.
189         * html/HTMLHeadElement.cpp:
190         (WebCore::HTMLHeadElement::childAllowed): Do not allow non-
191         whitespace text nodes to be children of the head.
192         * html/HTMLHeadElement.h:
193         * html/HTMLParser.cpp:
194         (WebCore::HTMLParser::handleError): Error case for comment nodes.
195         * page/FrameView.cpp:
196         (WebCore::FrameView::handleMousePressEvent): Safety-net null check 
197         for the original crash. 
198
199 2006-11-07  Darin Adler  <darin@apple.com>
200
201         - another attempt to fix Qt build
202
203         * loader/icon/IconLoader.h: Added missing include.
204
205 2006-11-06  Geoffrey Garen  <ggaren@apple.com>
206
207         Reviewed by Tim Hatcher.
208         
209         Removed ScreenClient. It was highly unpopular, risking my midterm re-election.
210         
211         None of Screen's responsibilities require up-calls to WebKit or delegates, 
212         so WebCore can handle it all.
213         
214         Moved Screen back from page/ to platform/ because it's a platform
215         abstraction again.
216
217         Merged scaling and flipping functions into 'toUserSpace' and 'toDeviceSpace',
218         since the two were always used together.
219         
220         Changed pixel depth queries to query the deepest screen. Darin mentioned
221         that it might have been a feature, not a bug, to use the main/menubar screen
222         regardless of the screen you were on. For scaling and flipping that's not
223         the case, but for querying pixel depth I think it is. You want to know
224         about the highest pixel depth your content may display on.
225         
226         Tests still pass.
227
228         * WebCore.exp:
229         * WebCore.xcodeproj/project.pbxproj:
230         * page/Page.cpp:
231         (WebCore::Page::Page):
232         * page/Page.h:
233         * page/Screen.cpp: Removed.
234         * page/Screen.h: Removed.
235         * page/ScreenClient.h: Removed.
236         * platform/mac/PlatformMouseEventMac.mm:
237         (WebCore::globalPoint):
238         * platform/mac/ScreenMac.mm:
239         (WebCore::window):
240         (WebCore::bestScreen):
241         (WebCore::Screen::depth):
242         (WebCore::Screen::depthPerComponent):
243         (WebCore::Screen::isMonochrome):
244         (WebCore::Screen::rect):
245         (WebCore::Screen::usableRect):
246         (WebCore::toUserSpace):
247         (WebCore::toDeviceSpace):
248
249 2006-11-07  Darin Adler  <darin@apple.com>
250
251         - try to fix Qt build
252
253         * CMakeLists.txt: Updated for some file changes.
254         * WebCoreSources.bkl: Ditto.
255
256 2006-11-07  Darin Adler  <darin@apple.com>
257
258         Reviewed by Geoff.
259
260         - moved loader code from Frame/FrameMac to FrameLoader
261
262         * WebCore.exp:
263         * WebCore.xcodeproj/project.pbxproj:
264         * bindings/js/JSXSLTProcessor.h:
265         * bindings/js/kjs_events.cpp:
266         (KJS::JSLazyEventListener::parseCode):
267         * bindings/js/kjs_html.cpp:
268         (KJS::JSHTMLDocument::putValueProperty):
269         * bindings/js/kjs_navigator.cpp:
270         (KJS::Navigator::getValueProperty):
271         * bindings/js/kjs_proxy.cpp:
272         (WebCore::KJSProxy::initScriptIfNeeded):
273         * bindings/js/kjs_window.cpp:
274         (KJS::Screen::Screen):
275         (KJS::createNewWindow):
276         (KJS::Window::getValueProperty):
277         (KJS::Window::put):
278         (KJS::Window::isSafeScript):
279         (KJS::WindowFunc::callAsFunction):
280         (KJS::ScheduledAction::execute):
281         (KJS::Location::getValueProperty):
282         (KJS::Location::put):
283         (KJS::Location::toString):
284         (KJS::LocationFunc::callAsFunction):
285         (KJS::History::getValueProperty):
286         (KJS::HistoryFunc::callAsFunction):
287         * bindings/objc/DOM.mm:
288         (+[DOMNode _nodeWith:WebCore::]):
289         * bridge/mac/FrameMac.h:
290         * bridge/mac/FrameMac.mm:
291         (WebCore::FrameMac::~FrameMac):
292         (WebCore::FrameMac::setView):
293         (WebCore::FrameMac::setStatusBarText):
294         * bridge/mac/WebCoreFrameBridge.h:
295         * bridge/mac/WebCoreFrameBridge.mm:
296         (-[WebCoreFrameBridge close]):
297         (-[WebCoreFrameBridge addData:]):
298         (-[WebCoreFrameBridge createFrameViewWithNSView:marginWidth:marginHeight:]):
299         (-[WebCoreFrameBridge reapplyStylesForDeviceType:]):
300         (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
301         (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]):
302         (-[WebCoreFrameBridge baseURL]):
303         (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
304         (-[WebCoreFrameBridge dragExitedWithDraggingInfo:]):
305         (-[WebCoreFrameBridge canProvideDocumentSource]):
306         (-[WebCoreFrameBridge receivedData:textEncodingName:]):
307         * css/cssparser.cpp:
308         (WebCore::CSSParser::parseContent):
309         * dom/DOMImplementation.cpp:
310         (WebCore::DOMImplementation::createDocument):
311         (WebCore::DOMImplementation::createHTMLDocument):
312         * dom/DOMImplementation.h:
313         * dom/Document.cpp:
314         (WebCore::Document::readyState):
315         (WebCore::Document::updateTitle):
316         (WebCore::Document::open):
317         (WebCore::Document::close):
318         (WebCore::Document::implicitClose):
319         (WebCore::Document::processHttpEquiv):
320         (WebCore::Document::referrer):
321         (WebCore::Document::finishedParsing):
322         * dom/ProcessingInstruction.cpp:
323         (WebCore::ProcessingInstruction::checkStyleSheet):
324         * dom/XMLTokenizer.cpp:
325         (WebCore::XMLTokenizer::endElementNs):
326         (WebCore::ignorableWhitespaceHandler):
327         (WebCore::XMLTokenizer::notifyFinished):
328         * editing/TextIterator.cpp:
329         (WebCore::TextIterator::rangeFromLocationAndLength):
330         * html/HTMLAnchorElement.cpp:
331         (WebCore::HTMLAnchorElement::defaultEventHandler):
332         * html/HTMLBaseElement.cpp:
333         (WebCore::HTMLBaseElement::process):
334         * html/HTMLDocument.cpp:
335         (WebCore::HTMLDocument::lastModified):
336         * html/HTMLFormElement.cpp:
337         (WebCore::HTMLFormElement::formData):
338         (WebCore::HTMLFormElement::submit):
339         * html/HTMLFrameElementBase.cpp:
340         (WebCore::HTMLFrameElementBase::isURLAllowed):
341         (WebCore::HTMLFrameElementBase::openURL):
342         (WebCore::HTMLFrameElementBase::willRemove):
343         * html/HTMLInputElement.cpp:
344         (WebCore::HTMLInputElement::setValueFromRenderer):
345         * html/HTMLLinkElement.cpp:
346         (WebCore::HTMLLinkElement::process):
347         * html/HTMLParser.cpp:
348         (WebCore::HTMLParser::handleError):
349         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
350         * html/HTMLPreElement.idl:
351         * html/HTMLScriptElement.cpp:
352         (WebCore::HTMLScriptElement::parseMappedAttribute):
353         (WebCore::HTMLScriptElement::insertedIntoDocument):
354         * html/HTMLTokenizer.cpp:
355         (WebCore::HTMLTokenizer::scriptExecution):
356         (WebCore::HTMLTokenizer::parseTag):
357         (WebCore::HTMLTokenizer::write):
358         (WebCore::HTMLTokenizer::stopParsing):
359         (WebCore::HTMLTokenizer::timerFired):
360         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
361         (WebCore::KCanvasFilterQuartz::prepareFilter):
362         * ksvg2/svg/SVGAElement.cpp:
363         (WebCore::SVGAElement::defaultEventHandler):
364         * ksvg2/svg/SVGElement.cpp:
365         (WebCore::SVGElement::sendSVGLoadEventIfPossible):
366         * loader/DocLoader.cpp:
367         (WebCore::DocLoader::setLoadInProgress):
368         * loader/FrameLoader.cpp:
369         (WebCore::FormSubmission::FormSubmission):
370         (WebCore::ScheduledRedirection::):
371         (WebCore::ScheduledRedirection::ScheduledRedirection):
372         (WebCore::cancelAll):
373         (WebCore::getString):
374         (WebCore::isBackForwardLoadType):
375         (WebCore::numRequests):
376         (WebCore::FrameLoader::FrameLoader):
377         (WebCore::FrameLoader::~FrameLoader):
378         (WebCore::FrameLoader::createWindow):
379         (WebCore::FrameLoader::changeLocation):
380         (WebCore::FrameLoader::urlSelected):
381         (WebCore::FrameLoader::requestFrame):
382         (WebCore::FrameLoader::loadSubframe):
383         (WebCore::FrameLoader::submitFormAgain):
384         (WebCore::FrameLoader::submitForm):
385         (WebCore::FrameLoader::stopLoading):
386         (WebCore::FrameLoader::stop):
387         (WebCore::FrameLoader::closeURL):
388         (WebCore::FrameLoader::cancelRedirection):
389         (WebCore::FrameLoader::iconURL):
390         (WebCore::FrameLoader::didOpenURL):
391         (WebCore::FrameLoader::didExplicitOpen):
392         (WebCore::FrameLoader::replaceContentsWithScriptResult):
393         (WebCore::FrameLoader::executeScript):
394         (WebCore::FrameLoader::cancelAndClear):
395         (WebCore::FrameLoader::clear):
396         (WebCore::FrameLoader::receivedFirstData):
397         (WebCore::FrameLoader::responseMIMEType):
398         (WebCore::FrameLoader::setResponseMIMEType):
399         (WebCore::FrameLoader::begin):
400         (WebCore::FrameLoader::write):
401         (WebCore::FrameLoader::end):
402         (WebCore::FrameLoader::endIfNotLoading):
403         (WebCore::FrameLoader::startIconLoader):
404         (WebCore::FrameLoader::commitIconURLToIconDatabase):
405         (WebCore::FrameLoader::gotoAnchor):
406         (WebCore::FrameLoader::finishedParsing):
407         (WebCore::FrameLoader::loadDone):
408         (WebCore::FrameLoader::checkCompleted):
409         (WebCore::FrameLoader::checkEmitLoadEvent):
410         (WebCore::FrameLoader::baseURL):
411         (WebCore::FrameLoader::baseTarget):
412         (WebCore::FrameLoader::completeURL):
413         (WebCore::FrameLoader::scheduleRedirection):
414         (WebCore::FrameLoader::scheduleLocationChange):
415         (WebCore::FrameLoader::scheduleRefresh):
416         (WebCore::FrameLoader::isScheduledLocationChangePending):
417         (WebCore::FrameLoader::scheduleHistoryNavigation):
418         (WebCore::FrameLoader::redirectionTimerFired):
419         (WebCore::FrameLoader::encoding):
420         (WebCore::FrameLoader::requestObject):
421         (WebCore::FrameLoader::shouldUsePlugin):
422         (WebCore::FrameLoader::loadPlugin):
423         (WebCore::FrameLoader::clearRecordedFormValues):
424         (WebCore::FrameLoader::recordFormValue):
425         (WebCore::FrameLoader::parentCompleted):
426         (WebCore::FrameLoader::outgoingReferrer):
427         (WebCore::FrameLoader::lastModified):
428         (WebCore::FrameLoader::opener):
429         (WebCore::FrameLoader::setOpener):
430         (WebCore::FrameLoader::openedByJavaScript):
431         (WebCore::FrameLoader::setOpenedByJavaScript):
432         (WebCore::FrameLoader::handleFallbackContent):
433         (WebCore::FrameLoader::provisionalLoadStarted):
434         (WebCore::FrameLoader::userGestureHint):
435         (WebCore::FrameLoader::didNotOpenURL):
436         (WebCore::FrameLoader::resetMultipleFormSubmissionProtection):
437         (WebCore::FrameLoader::setEncoding):
438         (WebCore::FrameLoader::addData):
439         (WebCore::FrameLoader::canCachePage):
440         (WebCore::FrameLoader::updatePolicyBaseURL):
441         (WebCore::FrameLoader::setPolicyBaseURL):
442         (WebCore::FrameLoader::scrollToAnchor):
443         (WebCore::FrameLoader::isComplete):
444         (WebCore::FrameLoader::isLoadingMainResource):
445         (WebCore::FrameLoader::url):
446         (WebCore::FrameLoader::startRedirectionTimer):
447         (WebCore::FrameLoader::stopRedirectionTimer):
448         (WebCore::FrameLoader::updateBaseURLForEmptyDocument):
449         (WebCore::FrameLoader::completed):
450         (WebCore::FrameLoader::started):
451         (WebCore::FrameLoader::containsPlugins):
452         (WebCore::FrameLoader::prepareForLoadStart):
453         (WebCore::FrameLoader::setupForReplace):
454         (WebCore::FrameLoader::setupForReplaceByMIMEType):
455         (WebCore::FrameLoader::finalSetupForReplace):
456         (WebCore::FrameLoader::load):
457         (WebCore::FrameLoader::canTarget):
458         (WebCore::FrameLoader::stopLoadingPlugIns):
459         (WebCore::FrameLoader::stopLoadingSubresources):
460         (WebCore::FrameLoader::stopLoadingSubframes):
461         (WebCore::FrameLoader::stopAllLoaders):
462         (WebCore::FrameLoader::cancelMainResourceLoad):
463         (WebCore::FrameLoader::cancelPendingArchiveLoad):
464         (WebCore::FrameLoader::activeDocumentLoader):
465         (WebCore::FrameLoader::addPlugInStreamLoader):
466         (WebCore::FrameLoader::removePlugInStreamLoader):
467         (WebCore::FrameLoader::hasMainResourceLoader):
468         (WebCore::FrameLoader::isLoadingSubresources):
469         (WebCore::FrameLoader::isLoadingPlugIns):
470         (WebCore::FrameLoader::isLoading):
471         (WebCore::FrameLoader::addSubresourceLoader):
472         (WebCore::FrameLoader::removeSubresourceLoader):
473         (WebCore::FrameLoader::releaseMainResourceLoader):
474         (WebCore::FrameLoader::setDocumentLoader):
475         (WebCore::FrameLoader::documentLoader):
476         (WebCore::FrameLoader::setPolicyDocumentLoader):
477         (WebCore::FrameLoader::provisionalDocumentLoader):
478         (WebCore::FrameLoader::setProvisionalDocumentLoader):
479         (WebCore::FrameLoader::state):
480         (WebCore::FrameLoader::timeOfLastCompletedLoad):
481         (WebCore::FrameLoader::setState):
482         (WebCore::FrameLoader::clearProvisionalLoad):
483         (WebCore::FrameLoader::markLoadComplete):
484         (WebCore::FrameLoader::commitProvisionalLoad):
485         (WebCore::FrameLoader::privateBrowsingEnabled):
486         (WebCore::FrameLoader::clientRedirectCancelledOrFinished):
487         (WebCore::FrameLoader::clientRedirected):
488         (WebCore::FrameLoader::shouldReload):
489         (WebCore::FrameLoader::closeOldDataSources):
490         (WebCore::FrameLoader::open):
491         (WebCore::FrameLoader::isStopping):
492         (WebCore::FrameLoader::finishedLoading):
493         (WebCore::FrameLoader::URL):
494         (WebCore::FrameLoader::isArchiveLoadPending):
495         (WebCore::FrameLoader::isHostedByObjectElement):
496         (WebCore::FrameLoader::isLoadingMainFrame):
497         (WebCore::FrameLoader::canShowMIMEType):
498         (WebCore::FrameLoader::representationExistsForURLScheme):
499         (WebCore::FrameLoader::generatedMIMETypeForURLScheme):
500         (WebCore::FrameLoader::cancelContentPolicyCheck):
501         (WebCore::FrameLoader::didReceiveServerRedirectForProvisionalLoadForFrame):
502         (WebCore::FrameLoader::finishedLoadingDocument):
503         (WebCore::FrameLoader::isReplacing):
504         (WebCore::FrameLoader::setReplacing):
505         (WebCore::FrameLoader::revertToProvisional):
506         (WebCore::FrameLoader::subframeIsLoading):
507         (WebCore::FrameLoader::willChangeTitle):
508         (WebCore::FrameLoader::loadType):
509         (WebCore::FrameLoader::stopPolicyCheck):
510         (WebCore::FrameLoader::continueAfterContentPolicy):
511         (WebCore::FrameLoader::continueAfterWillSubmitForm):
512         (WebCore::FrameLoader::didFirstLayout):
513         (WebCore::FrameLoader::frameLoadCompleted):
514         (WebCore::FrameLoader::firstLayoutDone):
515         (WebCore::FrameLoader::isQuickRedirectComing):
516         (WebCore::FrameLoader::closeDocument):
517         (WebCore::FrameLoader::detachChildren):
518         (WebCore::FrameLoader::checkLoadComplete):
519         (WebCore::FrameLoader::numPendingOrLoadingRequests):
520         (WebCore::FrameLoader::setClient):
521         (WebCore::FrameLoader::client):
522         (WebCore::FrameLoader::userAgent):
523         (WebCore::FrameLoader::createEmptyDocument):
524         (WebCore::FrameLoader::tokenizerProcessedData):
525         (WebCore::FrameLoader::didTellBridgeAboutLoad):
526         (WebCore::FrameLoader::haveToldBridgeAboutLoad):
527         (WebCore::FrameLoader::handledOnloadEvents):
528         (WebCore::FrameLoader::frameDetached):
529         (WebCore::FrameLoader::setTitle):
530         (WebCore::FrameLoaderClient::~FrameLoaderClient):
531         * loader/FrameLoader.h:
532         (WebCore::):
533         * loader/FrameLoaderClient.h:
534         * loader/PluginDocument.cpp:
535         (WebCore::PluginTokenizer::createDocumentStructure):
536         (WebCore::PluginTokenizer::writeRawData):
537         * loader/ResourceLoader.h:
538         * loader/TextResourceDecoder.cpp:
539         (WebCore::TextResourceDecoder::checkForHeadCharset):
540         * loader/icon/IconLoader.cpp:
541         (WebCore::IconLoader::startLoading):
542         (WebCore::IconLoader::finishLoading):
543         * loader/loader.cpp:
544         (WebCore::Loader::didReceiveResponse):
545         * loader/mac/DocumentLoaderMac.mm:
546         (WebCore::DocumentLoader::~DocumentLoader):
547         (WebCore::DocumentLoader::stopLoading):
548         (WebCore::DocumentLoader::finishedLoading):
549         (WebCore::DocumentLoader::setupForReplaceByMIMEType):
550         (WebCore::DocumentLoader::setPrimaryLoadComplete):
551         * loader/mac/FrameLoaderMac.mm:
552         (WebCore::FrameLoader::load):
553         (WebCore::FrameLoader::startLoading):
554         (WebCore::FrameLoader::cancelMainResourceLoad):
555         (WebCore::FrameLoader::receivedMainResourceError):
556         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
557         (WebCore::FrameLoader::commitProvisionalLoad):
558         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
559         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
560         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
561         (WebCore::FrameLoader::detachFromParent):
562         (WebCore::FrameLoader::addExtraFieldsToRequest):
563         (WebCore::FrameLoader::loadResourceSynchronously):
564         (WebCore::FrameLoader::createFrame):
565         (WebCore::FrameLoader::objectContentType):
566         (WebCore::nsArray):
567         (WebCore::FrameLoader::createPlugin):
568         (WebCore::FrameLoader::redirectDataToPlugin):
569         (WebCore::FrameLoader::createJavaAppletWidget):
570         (WebCore::FrameLoader::partClearedInBegin):
571         (WebCore::FrameLoader::saveDocumentState):
572         (WebCore::FrameLoader::restoreDocumentState):
573         (WebCore::FrameLoader::overrideMediaType):
574         (WebCore::FrameLoader::mainResourceData):
575         (WebCore::FrameLoader::canGoBackOrForward):
576         (WebCore::FrameLoader::originalRequestURL):
577         (WebCore::FrameLoader::getHistoryLength):
578         (WebCore::FrameLoader::goBackOrForward):
579         (WebCore::FrameLoader::historyURL):
580         (WebCore::FrameLoader::didFinishLoad):
581         * loader/mac/LoaderFunctionsMac.mm:
582         (WebCore::ServeSynchronousRequest):
583         (WebCore::CheckCacheObjectStatus):
584         * loader/mac/ResourceLoaderMac.mm:
585         (WebCore::ResourceLoader::cancel):
586         * loader/mac/SubresourceLoaderMac.mm:
587         (WebCore::SubresourceLoader::create):
588         * loader/qt/FrameLoaderQt.cpp: Added.
589         (WebCore::FrameLoader::submitForm):
590         (WebCore::FrameLoader::urlSelected):
591         (WebCore::FrameLoader::setTitle):
592         (WebCore::FrameLoader::createFrame):
593         (WebCore::FrameLoader::objectContentType):
594         (WebCore::FrameLoader::createPlugin):
595         (WebCore::FrameLoader::createJavaAppletWidget):
596         (WebCore::FrameLoader::originalRequestURL):
597         * page/DOMWindow.cpp:
598         (WebCore::DOMWindow::document):
599         * page/Frame.cpp:
600         (WebCore::Frame::~Frame):
601         (WebCore::Frame::reparseConfiguration):
602         (WebCore::Frame::shouldDragAutoNode):
603         (WebCore::Frame::prepareForUserAction):
604         (WebCore::FramePrivate::FramePrivate):
605         (WebCore::FramePrivate::~FramePrivate):
606         * page/Frame.h:
607         * page/FramePrivate.h:
608         * page/FrameView.cpp:
609         (WebCore::FrameView::layout):
610         (WebCore::FrameView::mediaType):
611         * page/FrameView.h:
612         * page/PageState.cpp:
613         (WebCore::PageState::PageState):
614         (WebCore::PageState::restoreJavaScriptState):
615         * platform/mac/CookieJar.mm:
616         (WebCore::setCookies):
617         * platform/mac/TextCodecMac.cpp:
618         * platform/mac/WebFontCache.mm:
619         (+[WebFontCache fontWithFamily:traits:size:]):
620         * platform/network/cf/ResourceHandleCFNet.cpp:
621         (WebCore::ResourceHandle::start):
622         * platform/network/mac/ResourceHandleMac.mm:
623         (WebCore::ResourceHandle::start):
624         * platform/qt/FrameQt.cpp:
625         * platform/qt/FrameQt.h:
626         * rendering/RenderApplet.cpp:
627         (WebCore::RenderApplet::createWidgetIfNecessary):
628         * rendering/RenderBlock.h:
629         * rendering/RenderPartObject.cpp:
630         (WebCore::isURLAllowed):
631         (WebCore::RenderPartObject::updateWidget):
632         * xml/DOMParser.cpp:
633         (WebCore::DOMParser::parseFromString):
634         * xml/XSLTProcessor.cpp:
635         (WebCore::XSLTProcessor::createDocumentFromSource):
636         * xml/xmlhttprequest.cpp:
637         (WebCore::XMLHttpRequest::getResponseXML):
638
639 2006-11-07  Anders Carlsson  <acarlsson@apple.com>
640
641         Reviewed by Geoff.
642
643         Get rid of some duplicate editing enums. Also rename EAlter to EAlteration.
644         
645         * bridge/mac/FrameMac.mm:
646         (WebCore::FrameMac::registerCommandForUndoOrRedo):
647         * bridge/mac/WebCoreFrameBridge.h:
648         * bridge/mac/WebCoreFrameBridge.mm:
649         (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
650         (-[WebCoreFrameBridge alterCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
651         (-[WebCoreFrameBridge alterCurrentSelection:SelectionController::verticalDistance:]):
652         (-[WebCoreFrameBridge selectionGranularity]):
653         (-[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:]):
654         (-[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:]):
655         (-[WebCoreFrameBridge setTypingStyle:withUndoAction:]):
656         (-[WebCoreFrameBridge applyStyle:withUndoAction:]):
657         (-[WebCoreFrameBridge applyParagraphStyle:withUndoAction:]):
658         * editing/SelectionController.cpp:
659         (WebCore::SelectionController::setModifyBias):
660         (WebCore::SelectionController::modify):
661         * editing/SelectionController.h:
662         (WebCore::SelectionController::):
663         * editing/TextGranularity.h:
664
665 2006-11-07  Brady Eidson  <beidson@apple.com>
666
667         Reviewed by Maciej
668
669         Changed the check for "top level frame" to something much more valid
670
671         * page/Frame.cpp:
672         (WebCore::Frame::endIfNotLoading):
673
674 2006-11-07  Beth Dakin  <bdakin@apple.com>
675
676         Reviewed by Hyatt (yesterday).
677
678         Here is part of my patch from yesterday that is safe to roll back 
679         in. It will make the BuildBot happy.
680
681         * rendering/HitTestResult.cpp:
682         (WebCore::HitTestResult::spellingToolTip): Null-check 
683         m_innerNonSharedNode.
684
685 2006-11-07  Darin Adler  <darin@apple.com>
686
687         * loader/icon/IconLoader.cpp: (WebCore::IconLoader::didReceiveResponse):
688         Comment grammar fix.
689
690 2006-11-07  Darin Adler  <darin@apple.com>
691
692         Rolled out change for <rdar://problem/4820814>.
693
694         Beth's planning on landing a new change for it soon, but in the mean time
695         we need layout tests succeeding again.
696
697 2006-11-07  Darin Adler  <darin@apple.com>
698
699         Reviewed by Brady.
700
701         - fix <rdar://problem/4752069> 9A274: World of Warcraft Launcher
702           crashes on launch in WebCore::ResourceLoader::start
703
704         No layout test, because this depends on cached icons, although there's
705         perhaps a way to write a test for it with some further ingenuity.
706
707         * loader/icon/IconLoader.h: Make IconLoader inherit from Noncopyable
708         to make explicit the fact that it can't be successfully copied.
709         Remove notifyIconChanged function and put the contents in the caller.
710         This eliminates the need for IconLoaderMac.mm. Added finishedLoading
711         and clearLoadingState functions to share code. Removed m_url, since the
712         resource handle already stores the URL. Renamed m_resourceLoader to
713         m_handle to reflect the class's name change. Removed the 4096-byte
714         inline buffer from m_data, since the malloc savings is not sufficient
715         to offset the additional memory use. Removed m_httpStatusCode because
716         we can instead cancel the load when we get a status code that reflects
717         failure. Added m_loadIsInProgress boolean because we need to detect
718         loads that complete during the ResourceHandle::create function call.
719
720         * loader/icon/IconLoader.cpp:
721         (WebCore::IconLoader::IconLoader): Initialize m_loadIsInProgress.
722         Don't initialize m_httpStatusCode.
723         (WebCore::IconLoader::~IconLoader): Updated for name change.
724         (WebCore::IconLoader::startLoading): Added code to use the
725         m_loadIsInProgress flag to detect if the load completed while inside
726         the ResourceHandle::create function. Removed code to set m_url.
727         (WebCore::IconLoader::stopLoading): Call clearLoadingState to share
728         more code.
729         (WebCore::IconLoader::didReceiveResponse): Kill the ResourceHandle
730         and finish loading if the HTTP status code indicates failure.
731         (WebCore::IconLoader::didReceiveData): Removed assertion that checks
732         the ResourceHandle, since we can't do that any more.
733         (WebCore::IconLoader::didFinishLoading): Changed to call finishLoading
734         so we can share code with the new didReceiveResponse code path.
735         (WebCore::IconLoader::finishLoading): Moved code here from the
736         didFinishLoading callback. Pass a URL when calling
737         commitIconURLToIconDatabase. Call notifyIconChanged directly here
738         instead of using a separate function. Call clearLoadingState to
739         share more code with stopLoading.
740         (WebCore::IconLoader::clearLoadingState): Added.
741
742         * loader/mac/IconLoaderMac.mm: Removed.
743         * WebCore.xcodeproj/project.pbxproj: Removed IconLoaderMac.mm.
744
745 2006-11-06  David Harrison  <harrison@apple.com>
746
747         Reviewed by Darin.
748
749         <rdar://problem/4714993> REGRESSION: After replacing a misspelled word in a sentence, the selected word wraps down to next line (10428)
750
751         * editing/pasteboard/3976872-expected.txt:
752         * editing/pasteboard/4076267-2-expected.txt:
753         * editing/pasteboard/4076267-3-expected.txt:
754         * editing/pasteboard/4076267-expected.txt:
755         * editing/pasteboard/8145-1-expected.txt:
756         * editing/pasteboard/paste-empty-startcontainer-expected.txt: Removed.
757         * editing/pasteboard/paste-match-style-001-expected.txt:
758         * editing/pasteboard/paste-match-style-002-expected.txt:
759         * editing/pasteboard/paste-text-019-expected.txt:
760         * editing/pasteboard/pasting-tabs-expected.txt:
761         Updated because pasting text with no newlines does not use intermediate div.
762         
763         * editing/markup.cpp:
764         (WebCore::fillContainerFromString):
765         First parameter is now a Container so a fragment can be passed.
766         
767         (WebCore::createFragmentFromText):
768         A string with no newlines gets added inline, rather than being put into a paragraph.
769
770 2006-11-06  Beth Dakin  <bdakin@apple.com>
771
772         Reviewed by Hyatt.
773
774         Fix for <rdar://problem/4820814> A crash occurs at 
775         WebCore::HitTestResult::spellingToolTip() when mousing down on 
776         iframe at www.macsurfer.com
777
778         The bug here is that the source of the iframe is only a comment, 
779         and we were not properly constructing the frame because it was 
780         sort-of empty but not.
781
782         * html/HTMLDocument.cpp:
783         (WebCore::HTMLDocument::childAllowed): newChild is NOT allowed if 
784         it is a comment node.
785         * html/HTMLParser.cpp:
786         (WebCore::HTMLParser::handleError): if n is a comment node and 
787         there is no head, we create a head, insert in the document, and add 
788         the comment node as a child. This is what Firefox does too. 
789         * page/FrameView.cpp:
790         (WebCore::FrameView::handleMousePressEvent): Safe-guard for the 
791         fix. It is possible to get a mouse event without a target node, so 
792         we null check it. (Of course, in the case of this bug, it should 
793         not have been null, but it is a good thing to check for anyway.
794         * rendering/HitTestResult.cpp:
795         (WebCore::HitTestResult::spellingToolTip): Null-check 
796         m_innerNonSharedNode.
797
798 2006-11-06  Justin Garcia  <justin.garcia@apple.com>
799
800         Reviewed by harrison
801         
802         <rdar://problem/4641880>
803         Setting bullets to existing text grabs subsequent paragraph
804         
805         When a selection ends at the start of a paragraph, we rarely paint 
806         the selection gap before that paragraph, because there often is no gap.  
807         In a case like this, it's not obvious to the user that the selection 
808         ends "inside" that paragraph, so it would be confusing if 
809         InsertUn{Ordered}List and Indent/Outdent operated on that paragraph.
810         
811         * editing/FormatBlockCommand.cpp:
812         (WebCore::FormatBlockCommand::doApply): Moved the check for editability of
813         the selection to a more appropriate place.  Change the endingSelection
814         if it ends at the start of a paragraph.
815         * editing/IndentOutdentCommand.cpp:
816         (WebCore::IndentOutdentCommand::doApply): Ditto.
817         * editing/InsertListCommand.cpp:
818         (WebCore::InsertListCommand::doApply): Ditto.
819
820 2006-11-06  Brady Eidson  <beidson@apple.com>
821
822         Reviewed by Sarge
823
824         <rdar://problem/4822911> - ASSERTION was a little overzealous.  
825         Toned it down a bit.
826
827         * xml/xmlhttprequest.cpp:
828         (WebCore::XMLHttpRequest::didFinishLoading):  Toned down assertion
829
830 2006-11-06  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
831
832         Reviewed by Maciej.
833
834         Linux\Gdk build fixes.
835
836         * loader/icon/IconDatabase.cpp:
837         * loader/icon/SQLStatement.h:
838         * platform/gdk/ChromeClientGdk.h: Added.
839         (WebCore::ChromeClientGdk::~ChromeClientGdk):
840         * platform/gdk/CursorGdk.cpp:
841         (WebCore::pointerCursor):
842         * platform/gdk/FrameGdk.cpp:
843         (WebCore::doScroll):
844         (WebCore::FrameGdk::FrameGdk):
845         (WebCore::FrameGdk::submitForm):
846         (WebCore::FrameGdk::urlSelected):
847         (WebCore::FrameGdk::openURL):
848         (WebCore::FrameGdk::handleGdkEvent):
849         * platform/gdk/FrameGdk.h:
850         (WebCore::FrameGdk::client):
851         * platform/gdk/RenderPopupMenuGdk.cpp:
852         (WebCore::PopupMenu::updateFromElement):
853         * platform/gdk/ScreenGdk.cpp:
854         * platform/gdk/TemporaryLinkStubs.cpp:
855         (Slider::focusPolicy):
856         (WebCore::ServeSynchronousRequest):
857         (FrameGdk::goBackOrForward):
858         (FrameGdk::getHistoryLength):
859         (FrameGdk::historyURL):
860         (ChromeClientGdk::canRunModal):
861         (ChromeClientGdk::runModal):
862         (WebCore::systemBeep):
863         (WebCore::CachedResource::setPlatformResponse):
864         (Path::transform):
865         (ResourceLoader::loadsBlocked):
866         (IconLoader::notifyIconChanged):
867         * platform/network/gdk/ResourceHandleManager.cpp:
868         (WebCore::writeCallback):
869         (WebCore::ResourceHandleManager::downloadTimerCallback):
870         (WebCore::ResourceHandleManager::remove):
871         (WebCore::ResourceHandleManager::add):
872
873 2006-11-06  Geoffrey Garen  <ggaren@apple.com>
874
875         build fix.
876         
877         * WebCore.xcodeproj/project.pbxproj:
878
879 2006-11-06  Geoffrey Garen  <ggaren@apple.com>
880
881         Reviewed by Maciej, Anders, Darin.
882
883         Removed the Page bridge. Beefed up Chrome. Added Screen and ScreenClient.
884         Fixed a minor where WebCore would always assume it was displayed on the 
885         monitor containing the menubar. window.open and window.showModalDialog 
886         are now cross-platform. 
887         
888         Layout tests, manual-tests/show-modal-dialog, and manual-tests/
889         window-open-features-parsing all pass. I verified the new screen functionality
890         by running in DRT, and checking whether WebCore knew it was off-screen.
891         
892         Some refactoring remains, as all were not pleased by this design. I see
893         in my future another patch.
894
895         * bindings/js/kjs_window.cpp: Screen is now a stand-alone object with a
896         client, to encapsulate asking the platform questions about the screen occupied by
897         the page. (Previously, we always assumed we were on screen 0, which was a bug.)
898         * bridge/mac/WebCoreFrameBridge.mm:
899         (createMouseEventFromDraggingInfo): Reversed argument order, to match other
900         functions.
901         (-[WebCoreFrameBridge dragSourceMovedTo:]): ditto
902         (-[WebCoreFrameBridge dragSourceEndedAt:operation:]): ditto
903         * bridge/mac/WebCoreFrameNamespaces.h: Removed. Dead Code.
904         * bridge/mac/WebCoreFrameNamespaces.mm: Removed. Dead Code.
905         * bridge/mac/WebCorePageBridge.h: Removed. Dead Code.
906         * bridge/mac/WebCorePageBridge.mm: Removed. Dead Code.
907         * manual-tests/window-open-features-parsing.html: Updated for accuracy.
908         (In this case, neither size nor position is specified, so you should
909         get the default window size and position.)
910         * page/Screen.cpp: Added. Includes screen-related helper functions used
911         in WebCore and WebKit.
912         * platform/PlatformMouseEvent.h: Exported common code so it doesn't have
913         to be duplicated. Renamed "position" to "point" since both were used,
914         and "point" seemed clearer.
915         * platform/Screen.h: Removed. Dead Code.
916         * platform/mac/LoggingMac.mm: Added. Moved code here from WebCorePageBridge
917         initialization.
918
919 2006-11-06  Graham Dennis  <graham.dennis@gmail.com>
920
921         Reviewed by Tim Hatcher.
922
923         Part of patch for http://bugs.webkit.org/show_bug.cgi?id=11323
924         Link dragging behaviour does not obey WebKitEditableLinkBehavior WebPref
925         
926         No layout tests added as this must be tested manually by the test
927         WebCore/manual-tests/contenteditable-link.html
928
929         * WebCore.exp: Exported HitTestResult::isLiveLink().
930         * html/HTMLAnchorElement.cpp:
931         (WebCore::HTMLAnchorElement::HTMLAnchorElement):
932         (WebCore::HTMLAnchorElement::defaultEventHandler):
933         (WebCore::HTMLAnchorElement::isLiveLink):
934         * html/HTMLAnchorElement.h: added m_wasShiftKeyDownOnMouseDown variable
935         to track shift key status.
936         * manual-tests/contenteditable-link.html: Added description about link
937         dragging behaviour.
938         * rendering/HitTestResult.cpp:
939         (WebCore::HitTestResult::isLiveLink): Added.
940         * rendering/HitTestResult.h:
941
942 2006-11-06  Brady Eidson  <beidson@apple.com>
943
944         Reviewed by Oliver
945
946         Fixes <rdar://problem/4812674> and http://bugs.webkit.org/show_bug.cgi?id=11530
947         For now, we have to not load favicons when we have no Document - linking directly 
948         to PDFs being the common case
949
950         * loader/icon/IconLoader.cpp:
951         (WebCore::IconLoader::startLoading): Check for the document and return if none
952
953 2006-11-06  Brady Eidson  <beidson@apple.com>
954
955         Reviewed by Dave Harrison
956
957         <rdar://problem/4801066>
958         Added a critical null frameLoader() check
959
960         * loader/mac/MainResourceLoaderMac.mm:
961         (WebCore::MainResourceLoader::loadNow):
962
963 2006-11-06  David Harrison  <harrison@apple.com>
964
965         Reviewed by Darin.
966
967         <rdar://problem/4813973> Pressing delete key to remove empty quoted line leaves cursor mis-positioned
968
969         Test:
970         * editing/deleting/delete-br-012.html
971         
972         * editing/DeleteSelectionCommand.cpp:
973         (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete):
974         Update m_endingPosition when preventing merge.
975         Also removed setting of m_mergeBlocksAfterDelete when this function returns true, because is is not checked in this case.
976
977 2006-11-06  Mark Rowe  <bdash@webkit.org>
978
979         Reviewed by Maciej.
980
981         http://bugs.webkit.org/show_bug.cgi?id=11526
982         Bug 11526: REGRESSION(r17610): Layout test failure in svg/custom/create-metadata-element.svg
983
984         Update DOMNode::toString to always use className rather than preferring nodeName.
985
986         * bindings/js/kjs_dom.cpp:
987         (KJS::DOMNode::toString): Match the format returned by valueOf.
988
989 2006-11-06  Oliver Hunt  <oliver@apple.com>
990
991         Reviewed by Maciej.
992
993         Fix RTL text in SVG to have correct positioning
994
995         * rendering/SVGRootInlineBox.cpp:
996         (WebCore::SVGRootInlineBox::placeBoxesHorizontally):
997
998 2006-11-06  Alexey Proskuryakov  <ap@webkit.org>
999
1000         Reviewed by Maciej.
1001
1002         http://bugs.webkit.org/show_bug.cgi?id=11517
1003         REGRESSION: Flash clicks/interactivity not working properly
1004
1005         * bridge/mac/FrameMac.mm:
1006         (WebCore::FrameMac::handleMouseMoveEvent):
1007         (WebCore::FrameMac::handleMouseReleaseEvent):
1008         Restore parts of event dispatching that were removed when fixing
1009         bug 7323 - just bypass those for subframes.
1010
1011 2006-11-05  Darin Adler  <darin@apple.com>
1012
1013         - quick attempt to fix the no-SVG build
1014
1015         * platform/graphics/svg/SVGResource.cpp:
1016         * platform/graphics/svg/SVGResource.h:
1017         * platform/graphics/svg/SVGResourceClipper.cpp:
1018         * platform/graphics/svg/SVGResourceClipper.h:
1019         * platform/graphics/svg/SVGResourceImage.h:
1020         * platform/graphics/svg/SVGResourceMarker.cpp:
1021         * platform/graphics/svg/SVGResourceMarker.h:
1022         * platform/graphics/svg/SVGResourceMasker.cpp:
1023         * platform/graphics/svg/SVGResourceMasker.h:
1024         * platform/graphics/svg/cg/SVGResourceMaskerCg.h:
1025         * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
1026         * platform/graphics/svg/qt/SVGResourceImageQt.cpp:
1027         * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
1028         Added #ifdef SVG_SUPPORT to these files.
1029
1030 2006-11-05  MorganL  <morganl.webkit@yahoo.com>
1031
1032         Reviewed & landed by Maciej.
1033
1034         Fixes http://bugs.webkit.org/show_bug.cgi?id=11265
1035
1036         * platform/win/ResourceLoaderWin.cpp:
1037         (WebCore::transferJobStatusCallback):
1038         (WebCore::ResourceLoader::start):
1039
1040 2006-11-04  Maciej Stachowiak  <mjs@apple.com>
1041
1042         Reviewed by Oliver.
1043
1044         - moved FormData and FormDataStream to platform/network directory
1045
1046         * WebCore.xcodeproj/project.pbxproj:
1047         * bridge/mac/WebCoreFrameBridge.mm:
1048         * loader/FormData.cpp: Removed.
1049         * loader/FormData.h: Removed.
1050         * loader/mac/FormDataStream.h: Removed.
1051         * loader/mac/FormDataStream.m: Removed.
1052         * loader/mac/FrameLoaderMac.mm:
1053         * loader/mac/SubresourceLoaderMac.mm:
1054         * platform/network/mac/FormDataStreamMac.h: Added.
1055         * platform/network/mac/FormDataStreamMac.mm: Added.
1056         * platform/network/mac/ResourceRequestMac.mm:
1057
1058 2006-11-05  Steve Falkenburg  <sfalken@apple.com>
1059
1060         Fix build breaks
1061
1062         * loader/DocumentLoader.h:
1063         * platform/win/ScreenWin.cpp:
1064
1065 2006-11-05  Darin Adler  <darin@apple.com>
1066
1067         Reviewed by Geoff.
1068
1069         - more preparation for splitting up Frame into sub-pieces
1070         - removed unnecessary includes from Frame.h
1071
1072         * page/Frame.h: Removed unneeded includes and forward declarations.
1073         Added additional forward declarations. Removed the constant
1074         NoXPosForVerticalArrowNavigation, now moved inside SelectionController.
1075         Created sections of functions to be moved into Chrome, Editor,
1076         EventHandler, FrameLoader, SelectionController, and the Platform
1077         directory, as well as marking one function for deletion.
1078
1079         * page/FramePrivate.h: Removed the definition of the constructor and
1080         destructor and removed unnecessary includes.
1081
1082         * page/FrameView.h: Removed unneeded forward declarations and friend
1083         declarations. Created a section of functions and data to be moved into
1084         EventHandler.
1085
1086         * bridge/mac/FrameMac.h: Removed unneeded forward declarations.
1087         Created sections of functions and data to be moved into Chrome,
1088         Editor, EventHandler, FrameLoader, and the Platform directory.
1089
1090         * bridge/mac/WebCoreFrameBridge.h: Removed obsolete comment.
1091         Removed unused methods areScrollbarsVisible,
1092         nextValidKeyViewOutsideWebFrameViews, and fileWrapperForURL:.
1093
1094         * page/Frame.cpp:
1095         (WebCore::Frame::begin): Added an overload, so Frame.h doesn't have
1096         to include KURL.h just for the KURL default constructor.
1097         (WebCore::FramePrivate::FramePrivate): Moved here from FramePrivate.h.
1098         (WebCore::FramePrivate::~FramePrivate): Ditto.
1099
1100         * page/FrameView.cpp: Removed unused scrollbarMoved and scrollingSelf
1101         booleans, scrollbarMoved and cleared funcitons.
1102         (WebCore::FrameView::clear): Moved the code from the cleared
1103         function in here.
1104         (WebCore::FrameView::scrollTo): Removed code to set scrollingSelf.
1105
1106         * bridge/mac/FrameMac.mm: (WebCore::FrameMac::FrameMac): Updated
1107         for changes to header.
1108
1109         * editing/SelectionController.cpp:
1110         (WebCore::SelectionController::setSelection):
1111         (WebCore::SelectionController::xPosForVerticalArrowNavigation):
1112         Moved NoXPosForVerticalArrowNavigation into this file.
1113
1114         * bindings/js/kjs_events.cpp:
1115         * bindings/js/kjs_html.cpp:
1116         * bindings/js/kjs_window.cpp:
1117         * bridge/mac/WebCoreAXObject.mm:
1118         * bridge/mac/WebCoreFrameBridge.mm:
1119         * css/cssstyleselector.cpp:
1120         * dom/Document.cpp:
1121         * dom/Element.cpp:
1122         * dom/EventTargetNode.cpp:
1123         * dom/MouseRelatedEvent.cpp:
1124         * dom/XMLTokenizer.cpp:
1125         * html/HTMLBaseElement.cpp:
1126         * html/HTMLDocument.cpp:
1127         * html/HTMLEmbedElement.cpp:
1128         * html/HTMLFrameElementBase.cpp:
1129         * html/HTMLGenericFormElement.cpp:
1130         * html/HTMLObjectElement.cpp:
1131         * html/HTMLTokenizer.cpp:
1132         * loader/mac/FrameLoaderMac.mm:
1133         * page/PageState.cpp:
1134         * rendering/RenderApplet.cpp:
1135         * rendering/RenderBlock.cpp:
1136         * rendering/RenderLayer.cpp:
1137         * rendering/RenderObject.cpp:
1138         * rendering/RenderPartObject.cpp:
1139         * rendering/RenderTreeAsText.cpp:
1140         * xml/XSLTProcessor.cpp:
1141         Added includes as needed to keep compiling, since there are fewer
1142         includes in Frame.h.
1143
1144 2006-11-05  Alexey Proskuryakov  <ap@nypop.com>
1145
1146         Reviewed by Dave Harrison.
1147
1148         http://bugs.webkit.org/show_bug.cgi?id=11402
1149         REGRESSION: onChange does not work anymore for 1st item in popup
1150
1151         * html/HTMLSelectElement.cpp:
1152         (WebCore::HTMLSelectElement::HTMLSelectElement):
1153         (WebCore::HTMLSelectElement::reset):
1154         Set m_lastOnChangeIndex to -1.
1155
1156 2006-11-04  Darin Adler  <darin@apple.com>
1157
1158         Reviewed by Anders.
1159
1160         - fix http://bugs.webkit.org/show_bug.cgi?id=11453
1161           REGRESSION: Status bar always shows cancelled opening the page
1162
1163         * platform/network/mac/ResourceHandleMac.mm:
1164         (WebCore::ResourceHandle::~ResourceHandle): Removed call to cancel.
1165         Since the subresource owns the resource handle, there's no need to cancel.
1166         This arrangement is only temporary, anyway, since Maciej will soon change
1167         things so that the subresource loader uses the resource handle and the
1168         resource handle doesn't know anything about the subresource loader.
1169
1170 2006-11-04  Darin Adler  <darin@apple.com>
1171
1172         Reviewed by Maciej.
1173
1174         - converted more of the loader machinery to work with cross-platform
1175           data structures instead of Macintosh-specific ones
1176
1177           converted most uses of NSURL to KURL and NSEvent to DOM Event in
1178           loader classes
1179
1180           moved download function out of FrameLoader.h to avoid reference to
1181           NSURLConnection
1182
1183           added DOM Event parameters to various functions so that the handlers
1184           can use the DOM Event instead of the global "current NSEvent";
1185           includes Frame::submitForm, HTMLFormElement::prepareSubmit,
1186           HTMLFormElement::submit, FrameLoader::load
1187
1188           moved the setMainFrame call that hands ownership to the Page
1189           into one of the Frame constructors, and removed it from all
1190           the clients
1191
1192           removed const from Event parameter to the urlSelected function
1193           (we rarely use const with DOM elements)
1194
1195           removed some redundant includes and declarations from various
1196           header files
1197
1198           removed NSURL parameter from userAgent function -- if we need it we
1199           can add it back, but converting from NSURL to KURL and back is
1200           inefficient enough that it's best to have it out for now (since it's
1201           been unused for years) -- if we add it back, we can choose an
1202           appropriate parameter type that's always inexpensive to pass
1203
1204           did some basic cleanup in the IconLoader class, including removing
1205           an unnecessary loop that added icon data a byte at a time
1206
1207           renamed safeLoad to load, since it's no different from the other
1208           FrameLoader load functions, safety-wise
1209
1210           fixed some code that was trying to distinguish null frame name from
1211           empty string frame name -- both should be handled the same, but callers
1212           were doing it by checking for empty and turning it into null (in a way
1213           that was causing extra round trips between NSString and WebCore::String)
1214
1215           corrected all uses of "get" and "post" to be uppercase "GET" and "POST"
1216           and got rid of case-insensitive compares of methods
1217
1218         * WebCore.exp:
1219         * WebCore.xcodeproj/project.pbxproj:
1220         * bindings/js/kjs_navigator.cpp:
1221         (KJS::Navigator::getValueProperty):
1222         * bridge/mac/FrameMac.h:
1223         * bridge/mac/FrameMac.mm:
1224         (WebCore::FrameMac::submitForm):
1225         (WebCore::FrameMac::urlSelected):
1226         (WebCore::FrameMac::userAgent):
1227         * bridge/mac/FrameViewMac.mm:
1228         * bridge/mac/WebCoreAXObject.mm:
1229         (-[WebCoreAXObject rendererForView:]):
1230         * bridge/mac/WebCorePageBridge.h:
1231         * bridge/mac/WebCorePageBridge.mm:
1232         * bridge/mac/WebCoreSettings.mm:
1233         * bridge/win/FrameWin.cpp:
1234         (WebCore::FrameWin::urlSelected):
1235         (WebCore::FrameWin::submitForm):
1236         * bridge/win/FrameWin.h:
1237         * dom/MouseRelatedEvent.cpp:
1238         * dom/MouseRelatedEvent.h:
1239         * dom/UIEvent.cpp:
1240         (WebCore::UIEvent::~UIEvent):
1241         * dom/UIEvent.h:
1242         * dom/UIEventWithKeyState.h:
1243         * dom/XMLTokenizer.cpp:
1244         (WebCore::openFunc):
1245         * html/HTMLAnchorElement.cpp:
1246         (WebCore::HTMLAnchorElement::defaultEventHandler):
1247         * html/HTMLButtonElement.cpp:
1248         (WebCore::HTMLButtonElement::defaultEventHandler):
1249         * html/HTMLFormElement.cpp:
1250         (WebCore::HTMLFormElement::submitClick):
1251         (WebCore::HTMLFormElement::prepareSubmit):
1252         (WebCore::HTMLFormElement::submit):
1253         * html/HTMLFormElement.h:
1254         * html/HTMLInputElement.cpp:
1255         (WebCore::HTMLInputElement::defaultEventHandler):
1256         * html/HTMLSelectElement.cpp:
1257         (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
1258         * loader/DocumentLoader.h:
1259         * loader/FrameLoader.h:
1260         * loader/FrameLoaderClient.h:
1261         * loader/NavigationAction.h:
1262         (WebCore::NavigationAction::event):
1263         * loader/icon/IconLoader.cpp:
1264         (WebCore::IconLoader::create):
1265         (WebCore::IconLoader::startLoading):
1266         (WebCore::IconLoader::didReceiveData):
1267         (WebCore::IconLoader::didFinishLoading):
1268         * loader/icon/IconLoader.h:
1269         * loader/loader.cpp:
1270         * loader/mac/DocumentLoaderMac.mm:
1271         (WebCore::DocumentLoader::URL):
1272         (WebCore::DocumentLoader::unreachableURL):
1273         (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
1274         (WebCore::DocumentLoader::URLForHistory):
1275         * loader/mac/FrameLoaderMac.mm:
1276         (WebCore::FrameLoader::load):
1277         (WebCore::FrameLoader::willSendRequest):
1278         (WebCore::FrameLoader::clientRedirected):
1279         (WebCore::FrameLoader::shouldReload):
1280         (WebCore::FrameLoader::notifyIconChanged):
1281         (WebCore::FrameLoader::URL):
1282         (WebCore::FrameLoader::reloadAllowingStaleData):
1283         (WebCore::FrameLoader::reload):
1284         (WebCore::FrameLoader::didChangeTitle):
1285         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
1286         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
1287         (WebCore::FrameLoader::post):
1288         (WebCore::FrameLoader::addExtraFieldsToRequest):
1289         (WebCore::FrameLoader::loadResourceSynchronously):
1290         * loader/mac/IconLoaderMac.mm:
1291         (WebCore::IconLoader::notifyIconChanged):
1292         * loader/mac/LoaderFunctionsMac.mm:
1293         * loader/mac/MainResourceLoaderMac.mm:
1294         (WebCore::shouldLoadAsEmptyDocument):
1295         (WebCore::MainResourceLoader::continueAfterContentPolicy):
1296         * loader/mac/NavigationActionMac.mm:
1297         (WebCore::navigationType):
1298         (WebCore::NavigationAction::NavigationAction):
1299         * loader/mac/ResourceLoaderMac.mm:
1300         * loader/mac/SubresourceLoaderMac.mm:
1301         * page/Frame.cpp:
1302         (WebCore::Frame::Frame):
1303         (WebCore::Frame::urlSelected):
1304         (WebCore::Frame::submitFormAgain):
1305         (WebCore::Frame::submitForm):
1306         (WebCore::Frame::endIfNotLoading):
1307         (WebCore::Frame::hitTestResultAtPoint):
1308         * page/Frame.h:
1309         * page/FramePrivate.h:
1310         * platform/gdk/FrameGdk.cpp:
1311         (WebCore::FrameGdk::FrameGdk):
1312         (WebCore::FrameGdk::submitForm):
1313         (WebCore::FrameGdk::urlSelected):
1314         * platform/gdk/FrameGdk.h:
1315         * platform/mac/TextFieldMac.mm:
1316         * platform/network/HTTPHeaderMap.h:
1317         * platform/network/ResourceHandle.h:
1318         * platform/network/ResourceHandleClient.h:
1319         * platform/network/ResourceHandleInternal.h:
1320         * platform/network/mac/ResourceHandleMac.mm:
1321         * platform/network/mac/ResourceResponseMac.h:
1322         * platform/network/mac/ResourceResponseMac.mm:
1323         (-[NSURLResponse WebCore]):
1324         * platform/network/win/ResourceHandleWin.cpp:
1325         * platform/qt/FrameQt.cpp:
1326         (WebCore::FrameQt::submitForm):
1327         (WebCore::FrameQt::urlSelected):
1328         * platform/qt/FrameQt.h:
1329         * rendering/RenderLineEdit.cpp:
1330         (WebCore::RenderLineEdit::returnPressed):
1331         * xml/XSLTProcessor.cpp:
1332         (WebCore::docLoaderFunc):
1333         * xml/xmlhttprequest.cpp:
1334
1335 2006-11-03  Maciej Stachowiak  <mjs@apple.com>
1336
1337         Reviewed by Adele.
1338
1339         - replaced receivedRedirect with new willSendRequest delegate
1340         - removed most mac-specific loader functions
1341         - use ResourceResponse more in loader code
1342
1343         * WebCore.xcodeproj/project.pbxproj: Add new files.
1344         * bridge/mac/WebCoreFrameBridge.mm:
1345         (-[WebCoreFrameBridge getData:andResponse:forURL:]): Adapted
1346         for CachedResource method renames.
1347         (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
1348         Ditto.
1349         * loader/CachedCSSStyleSheet.cpp:
1350         (WebCore::CachedCSSStyleSheet::checkNotify): simplified
1351         based on ResourceResponse
1352         * loader/CachedImage.cpp:
1353         (WebCore::CachedImage::createImage): adapt for ResourceResponse
1354         * loader/CachedResource.cpp:
1355         (WebCore::CachedResource::CachedResource): store a ResourceResponse;
1356         platform response is now called platformResponse and expiration date
1357         is removed.
1358         (WebCore::CachedResource::~CachedResource): ditto
1359         (WebCore::CachedResource::isExpired): ditto
1360         * loader/CachedResource.h:
1361         (WebCore::CachedResource::platformResponse): ditto
1362         (WebCore::CachedResource::setResponse): ditto
1363         (WebCore::CachedResource::canDelete): ditto
1364         * loader/LoaderFunctions.h:
1365         * loader/loader.cpp:
1366         (WebCore::Loader::receivedResponse): Adjusted for renames.
1367         (WebCore::Loader::didReceiveResponse): Store whole ResourceResponse
1368         in the CachedResource.
1369         * loader/loader.h:
1370         * loader/mac/FormDataStream.h:
1371         * loader/mac/FormDataStream.m:
1372         (WebCore::getStreamFormDatas): Rearranged things so it's
1373         possible to get a FormData back out of a form data stream.
1374         (WebCore::formCreate): ditto
1375         (WebCore::formFinalize): ditto
1376         (WebCore::httpBodyFromStream): ditto
1377         * loader/mac/ImageDocumentMac.mm:
1378         (WebCore::finishImageLoad): s/response/platformResponse/
1379         * loader/mac/LoaderFunctionsMac.mm:
1380         (WebCore::CheckCacheObjectStatus): ditto
1381         (WebCore::CachedResource::setPlatformResponse): ditto
1382         * loader/mac/SubresourceLoaderMac.mm:
1383         (WebCore::SubresourceLoader::willSendRequest): send redirect
1384         to client appropriately
1385         * platform/network/ResourceHandle.h:
1386         * platform/network/ResourceHandleClient.h:
1387         (WebCore::ResourceHandleClient::willSendRequest): new entry
1388         point for SubresourceLoader, dispatch to client.
1389         * platform/network/ResourceRequest.h:
1390         (WebCore::ResourceRequest::allowHTTPCookies): implemented
1391         (WebCore::ResourceRequest::setAllowHTTPCookies): ditto
1392         * platform/network/ResourceResponse.h:
1393         (WebCore::ResourceResponse::ResourceResponse): initialize expiration
1394         date(!)
1395         * platform/network/cf/FormDataStreamCFNet.cpp: Added.
1396         (WebCore::getStreamFormDatas): Added this, ported from NSURL version.
1397         (WebCore::openNextStream): ditto
1398         (WebCore::formCreate): ditto
1399         (WebCore::formFinalize): ditto
1400         (WebCore::formCanRead): ditto
1401         (WebCore::formEventCallback): ditto
1402         (WebCore::setHTTPBody): ditto
1403         (WebCore::httpBodyFromStream): ditto
1404         * platform/network/cf/FormDataStreamCFNet.h: Added.
1405         * platform/network/cf/ResourceHandleCFNet.cpp:
1406         (WebCore::willSendRequest): implemented
1407         (WebCore::ResourceHandle::start): use new ResourceRequest stuff
1408         * platform/network/cf/ResourceResponseCFNet.cpp:
1409         (WebCore::getResourceResponse): do nothing for a null response
1410         * platform/network/mac/ResourceHandleMac.mm:
1411         (WebCore::ResourceHandle::willSendRequest): Implemented; dispatch to client.
1412         * platform/network/mac/ResourceRequestMac.h: Added.
1413         * platform/network/mac/ResourceRequestMac.mm: Added.
1414         (WebCore::getResourceRequest): Added way to convert an NSURLRequest
1415         to a ResourceRequest.
1416         (WebCore::nsURLRequest): Opposite of the above.
1417         * platform/network/cf/ResourceRequestCFNet.h: Added.
1418         * platform/network/cf/ResourceRequestCFNet.cpp: Added.
1419         (WebCore::getResourceRequest): Added way to convert an CFURLRequest
1420         to a ResourceRequest.
1421         (WebCore::cfURLRequest): Opposite of the above.
1422         * xml/xmlhttprequest.cpp:
1423         (WebCore::XMLHttpRequest::willSendRequest): Renamed from receivedRedirect,
1424         adjusted.
1425         * xml/xmlhttprequest.h:
1426
1427 2006-11-04  Darin Adler  <darin@apple.com>
1428
1429         Change suggested by Mitz.
1430
1431         - fix http://bugs.webkit.org/show_bug.cgi?id=11514
1432           REGRESSION (r17438): Repro crash when opening a web archive
1433
1434         * bridge/mac/WebCorePageState.mm:
1435         (-[WebCorePageState dealloc]): Add null check.
1436         (-[WebCorePageState finalize]): Ditto.
1437
1438 2006-11-04  Bertrand Guiheneuf <guiheneuf@gmail.com>
1439
1440         Reviewed by Maciej, tweaked and landed by Alexey (using a patch by Don Gibson).
1441
1442         http://bugs.webkit.org/show_bug.cgi?id=11433
1443         Fixes to get WebKit to run on Windows; implemented AffineTransformCairo.
1444
1445         * WebCore.vcproj/WebCore/WebCore.vcproj:
1446         Added platform/graphics platform/network and platform/network/win to headers search paths
1447         Created platform/graphics and platform/network filters in hierarchy
1448         Moved GraphicsContext and GraphicsTypes to their respective filters
1449         Added EditorClient.h
1450         Added FrameLoader* files in loader/
1451         Added HitTest* files in rendering/
1452         Added Editor.* files in editing/
1453         Added DeleteButton.* and DeleteButtonController.* in editing/
1454
1455         * bridge/win/ChromeClientWin.h: Added.
1456         (WebCore::ChromeClientWin::~ChromeClientWin):
1457         * bridge/win/EditorClientWin.h: Added.
1458         (WebCore::EditorClientWin::~EditorClientWin):
1459
1460         * bridge/win/FrameWin.cpp:
1461         (WebCore::FrameWin::FrameWin):
1462         (WebCore::FrameWin::urlSelected):
1463         (WebCore::FrameWin::submitForm):
1464         (WebCore::FrameWin::createNewWindow):
1465         * bridge/win/FrameWin.h:
1466         Added EditorClient parameter to constructor
1467         Replace usage of FrameLoadRequest::m_request with FrameLoadRequest::resourceRequest()
1468         Removed openURL() and openURLRequest from class definition
1469
1470         * bridge/win/PageWin.cpp:
1471         * platform/AffineTransform.h:
1472         * platform/cairo/AffineTransformCairo.cpp: Added.
1473         (WebCore::AffineTransform::AffineTransform):
1474         (WebCore::AffineTransform::setMatrix):
1475         (WebCore::AffineTransform::map):
1476         (WebCore::AffineTransform::mapRect):
1477         (WebCore::AffineTransform::isIdentity):
1478         (WebCore::AffineTransform::m11):
1479         (WebCore::AffineTransform::m12):
1480         (WebCore::AffineTransform::m21):
1481         (WebCore::AffineTransform::m22):
1482         (WebCore::AffineTransform::dx):
1483         (WebCore::AffineTransform::dy):
1484         (WebCore::AffineTransform::reset):
1485         (WebCore::AffineTransform::scale):
1486         (WebCore::AffineTransform::rotate):
1487         (WebCore::AffineTransform::translate):
1488         (WebCore::AffineTransform::shear):
1489         (WebCore::AffineTransform::det):
1490         (WebCore::AffineTransform::invert):
1491         (WebCore::AffineTransform::operator cairo_matrix_t):
1492         (WebCore::AffineTransform::operator== ):
1493         (WebCore::AffineTransform::operator*= ):
1494         (WebCore::AffineTransform::operator* ):
1495         * platform/cairo/GraphicsContextCairo.cpp:
1496         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
1497         * platform/network/win/ResourceHandleWin.cpp:
1498         (WebCore::ResourceHandle::onHandleCreated):
1499         (WebCore::ResourceHandle::start):
1500         (WebCore::ResourceHandle::fileLoadTimer):
1501         (WebCore::ResourceHandle::cancel):
1502         * platform/win/TemporaryLinkStubs.cpp:
1503         (WebCore::FrameWin::goBackOrForward):
1504         (WebCore::FrameWin::getHistoryLength):
1505         (WebCore::FrameWin::historyURL):
1506         (WebCore::ServeSynchronousRequest):
1507         (WebCore::ChromeClientWin::canRunModal):
1508         (WebCore::ChromeClientWin::runModal):
1509         (WebCore::EditorClientWin::shouldDeleteRange):
1510         (WebCore::EditorClientWin::shouldShowDeleteInterface):
1511         (WebCore::EditorClientWin::isContinuousSpellCheckingEnabled):
1512         (WebCore::EditorClientWin::isGrammarCheckingEnabled):
1513         (WebCore::EditorClientWin::spellCheckerDocumentTag):
1514         (WebCore::Path::transform):
1515         (WebCore::PopupMenu::updateFromElement):
1516         (WebCore::ResourceLoader::loadsBlocked):
1517         (WebCore::systemBeep):
1518         * rendering/RenderThemeWin.cpp:
1519         (WebCore::RenderThemeWin::paintButton):
1520         (WebCore::RenderThemeWin::paintTextField):
1521
1522 2006-11-04  Alexey Proskuryakov  <ap@nypop.com>
1523
1524         Reviewed by Maciej.
1525
1526         http://bugs.webkit.org/show_bug.cgi?id=11448
1527         &lang; and &rang; entities are mapped to the incorrect Unicode codepoint
1528
1529         * html/HTMLEntityNames.gperf: Use canonical Unicode equivalents for these characters.
1530
1531 2006-11-03  Mark Rowe  <bdash@webkit.org>
1532
1533         Reviewed by Oliver.
1534
1535         Update Windows and Qt project files for file removals in r17585.
1536
1537         * CMakeLists.txt:
1538         * WebCore.vcproj/WebCore/WebCore.vcproj:
1539
1540 2006-11-03  Zack Rusin  <zack@kde.org>
1541
1542         Reviewed by Maciej.
1543
1544         The patch fixes text field drawing on the Qt platform.
1545
1546         * platform/qt/RenderThemeQt.cpp:
1547         (WebCore::RenderThemeQt::paintTextField): Use the style to correctly
1548         render the text field
1549
1550 2006-11-03  Oliver Hunt  <oliver@apple.com>
1551
1552         Reviewed by Tim.
1553
1554         Correct incorrect call to SetCursor
1555
1556         * rendering/RenderFrameSet.cpp:
1557         (WebCore::RenderFrameSet::userResize):
1558
1559 2006-11-03  Adele Peterson  <adele@apple.com>
1560
1561         Reviewed by Oliver.
1562
1563         Removed DeprecatedRenderSelect and ListBox classes.
1564
1565         * WebCore.xcodeproj/project.pbxproj:
1566         * css/html4.css:
1567         * html/HTMLOptionElement.h:
1568         * html/HTMLSelectElement.cpp:
1569         (WebCore::HTMLSelectElement::recalcStyle):
1570         (WebCore::HTMLSelectElement::isKeyboardFocusable):
1571         (WebCore::HTMLSelectElement::isMouseFocusable):
1572         (WebCore::HTMLSelectElement::createRenderer):
1573         (WebCore::HTMLSelectElement::setRecalcListItems):
1574         (WebCore::HTMLSelectElement::notifyOptionSelected):
1575         (WebCore::HTMLSelectElement::defaultEventHandler):
1576         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
1577         (WebCore::HTMLSelectElement::updateListBoxSelection):
1578         * html/HTMLSelectElement.h:
1579         * platform/ListBox.h: Removed.
1580         * platform/mac/FontCacheMac.mm:
1581         * platform/mac/ListBoxMac.mm: Removed.
1582         * platform/win/TemporaryLinkStubs.cpp:
1583         * rendering/DeprecatedRenderSelect.cpp: Removed.
1584         * rendering/DeprecatedRenderSelect.h: Removed.
1585
1586 2006-11-03  Maciej Stachowiak  <mjs@apple.com>
1587
1588         Not reviewed, fix for accidental commit.
1589
1590         - rolled back more of the accidentall commit that I forgot.
1591
1592         * platform/network/mac/ResourceRequestMac.h: Removed.
1593         * platform/network/mac/ResourceRequestMac.mm: Removed.
1594
1595 2006-11-03  Maciej Stachowiak  <mjs@apple.com>
1596
1597         Not reviewed, fix for accidental commit.
1598
1599         - roll back some network changes accidentally committed with a previous patch.
1600
1601         * WebCore.xcodeproj/project.pbxproj:
1602         * bridge/mac/WebCoreFrameBridge.mm:
1603         (-[WebCoreFrameBridge getData:andResponse:forURL:]):
1604         (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
1605         * loader/CachedCSSStyleSheet.cpp:
1606         (WebCore::CachedCSSStyleSheet::checkNotify):
1607         * loader/CachedImage.cpp:
1608         (WebCore::CachedImage::createImage):
1609         * loader/CachedResource.cpp:
1610         (WebCore::CachedResource::CachedResource):
1611         (WebCore::CachedResource::~CachedResource):
1612         (WebCore::CachedResource::setExpireDate):
1613         (WebCore::CachedResource::isExpired):
1614         * loader/CachedResource.h:
1615         (WebCore::CachedResource::response):
1616         * loader/LoaderFunctions.h:
1617         * loader/loader.cpp:
1618         (WebCore::Loader::receivedResponse):
1619         (WebCore::Loader::didReceivedResponse):
1620         * loader/loader.h:
1621         * loader/mac/FormDataStream.h:
1622         * loader/mac/FormDataStream.m:
1623         (WebCore::formCreate):
1624         (WebCore::formFinalize):
1625         * loader/mac/ImageDocumentMac.mm:
1626         (WebCore::finishImageLoad):
1627         * loader/mac/LoaderFunctionsMac.mm:
1628         (WebCore::CheckCacheObjectStatus):
1629         (WebCore::CachedResource::setResponse):
1630         * loader/mac/SubresourceLoaderMac.mm:
1631         (WebCore::SubresourceLoader::willSendRequest):
1632         * platform/network/ResourceHandle.h:
1633         * platform/network/ResourceHandleClient.h:
1634         (WebCore::ResourceHandleClient::receivedRedirect):
1635         * platform/network/ResourceRequest.h:
1636         * platform/network/ResourceResponse.h:
1637         (WebCore::ResourceResponse::ResourceResponse):
1638         * platform/network/mac/ResourceHandleMac.mm:
1639         (WebCore::ResourceHandle::redirectedToURL):
1640         * xml/xmlhttprequest.cpp:
1641         (WebCore::XMLHttpRequest::receivedRedirect):
1642         * xml/xmlhttprequest.h:
1643
1644 2006-11-03  Anders Carlsson  <acarlsson@apple.com>
1645
1646         Rubber-stamped by Oliver.
1647
1648         Remove these, they have been merged with SVGRenderTreeAsText.
1649         
1650         * rendering/SVGRenderAsText.cpp: Removed.
1651         * rendering/SVGRenderAsText.h: Removed.
1652
1653 2006-11-03  Anders Carlsson  <acarlsson@apple.com>
1654
1655         Build fix.
1656         
1657         * platform/network/cf/ResourceHandleCFNet.cpp:
1658         (WebCore::willSendRequest):
1659
1660 2006-11-02  Geoffrey Garen  <ggaren@apple.com>
1661
1662         Reviewed by Darin, Beth.
1663         
1664         First cut at factoring Page's UIDelegate-related functions into Chrome
1665         and ChromeClient.
1666
1667         Layout tests pass.
1668         
1669         * bridge/mac/PageMac.mm: Removed platform-specific constructor, added
1670         setBridge method to replace it.
1671         (WebCore::Page::setBridge):
1672
1673         * bridge/mac/WebCorePageBridge.h: Simplified some things based on the fact
1674         that WebCorePageBridge.h doesn't need to be included by ObjC-only files,
1675         and, now that it uses PassRefPtr, can't be.
1676         
1677         * page/Chrome.cpp: Added. Code copied and converted to c++ from WebCorePageBridge.mm.
1678
1679         * page/Page.h:
1680         (WebCore::Page::dragCaretController): Made this function non-const so that
1681         m_dragCaretController doesn't have to be mutable.
1682
1683 2006-11-03  Alexey Proskuryakov  <ap@nypop.com>
1684
1685         Reviewed by Adele.
1686
1687         http://bugs.webkit.org/show_bug.cgi?id=7323
1688         REGRESSION (10.4.4): ondrag* events don't fire on page in a frame
1689
1690         * bridge/mac/FrameMac.h: Moved drag source information to a static variable
1691         in FrameMac.mm. There can be only one drag active at any moment, and having 
1692         this information here was making sharing this information between 
1693         subframes hard.
1694
1695         * bridge/mac/FrameMac.mm:
1696         (WebCore::FrameMac::FrameMac): Initialize sharedDragInfo.
1697         (WebCore::FrameMac::freeClipboard):
1698         (WebCore::FrameMac::dragHysteresisExceeded):
1699         (WebCore::FrameMac::handleMouseMoveEvent):
1700         (WebCore::FrameMac::handleMouseReleaseEvent):
1701         (WebCore::FrameMac::mouseDown):
1702         (WebCore::FrameMac::dragSourceMovedTo):
1703         (WebCore::FrameMac::dragSourceEndedAt):
1704         (WebCore::FrameMac::dispatchDragSrcEvent):
1705         Access drag source info via sharedDragInfo - this fixes drag source even dispatching.
1706         Also removed some old code that was forwarding mouse events to subviews to make 
1707         HTML editing work in subframes.
1708
1709         * page/FrameView.cpp:
1710         (WebCore::FrameView::updateDragAndDrop):
1711         (WebCore::FrameView::cancelDragAndDrop):
1712         (WebCore::FrameView::performDragAndDrop):
1713         Forward events to subframes for dispatching - this fixes drag target events.
1714
1715 2006-11-03  Zack Rusin  <zack@kde.org>
1716
1717         Reviewed by Tim.
1718
1719         Fixing compile.
1720
1721         * platform/qt/LoaderFunctionsQt.cpp:
1722         (WebCore::CachedResource::setPlatformResponse): Renamed from setResponse
1723
1724 2006-11-01  Zack Rusin  <zack@kde.org>
1725
1726         Reviewed by Maciej.
1727
1728         Moving the word/sentence seperators into a file of their own
1729         and implementing findWordBoundary.
1730
1731         * CMakeLists.txt:
1732         * platform/qt/TemporaryLinkStubs.cpp:
1733         * platform/qt/TextBoundaries.cpp: Added.
1734         (WebCore::findNextSentenceFromIndex):
1735         (WebCore::findSentenceBoundary):
1736         (WebCore::findNextWordFromIndex):
1737         (WebCore::findWordBoundary):
1738
1739 2006-11-03  Zack Rusin  <zack@kde.org>
1740
1741         Reviewed by Maciej.
1742
1743         Compile on both KDE and Qt platforms
1744
1745         * CMakeLists.txt: add zlib explicitly
1746         * platform/network/qt/ResourceHandleManager.cpp:
1747         (WebCore::ResourceHandleManager::self):
1748         (WebCore::QtJob::QtJob):
1749         (WebCore::QtJob::timerEvent): Integrate both implementations
1750         so that moc can parse it
1751         (WebCore::ResourceHandleManager::deliverJobData):
1752         (WebCore::ResourceHandleManager::remove):
1753         * platform/network/qt/ResourceHandleManager.h:
1754
1755 2006-11-03  Maciej Stachowiak  <mjs@apple.com>
1756
1757         No review, suggested by Mitz.
1758
1759         - fix a #if to be #ifdef
1760
1761         * platform/graphics/svg/cg/SVGResourceImageCg.cpp:
1762
1763 2006-11-03  Zack Rusin  <zack@kde.org>
1764
1765         Reviewed and landed by Maciej.
1766         
1767         Compile on the Qt platform.
1768
1769         * ksvg2/misc/KCanvasRenderingStyle.h:
1770         * platform/qt/RenderThemeQt.cpp:
1771         (WebCore::RenderThemeQt::getStylePainterAndWidgetFromPaintInfo):
1772
1773 2006-11-03  Zack Rusin  <zack@kde.org>
1774
1775         Reviewed by Hyatt. Landed by Maciej.
1776
1777         Adding setPlatformPen/setPlatformFont/setPlatformFillColor
1778         to graphics context to be able to set consistant state
1779         on the platform specific painter without having to change
1780         fill/stroke/font on every operation. This fixes color/stroke/fill
1781         and font handling in the Qt port.
1782
1783         * platform/graphics/GraphicsContext.cpp:
1784         (WebCore::GraphicsContext::setFont):
1785         (WebCore::GraphicsContext::setPen):
1786         (WebCore::GraphicsContext::setFillColor):
1787         (WebCore::GraphicsContext::setPlatformPen):
1788         (WebCore::GraphicsContext::setPlatformFillColor):
1789         (WebCore::GraphicsContext::setPlatformFont):
1790         * platform/graphics/GraphicsContext.h:
1791         * platform/qt/GraphicsContextQt.cpp:
1792         (WebCore::toQtCompositionMode):
1793         (WebCore::toQtLineCap):
1794         (WebCore::toQtLineJoin):
1795         (WebCore::toQPenStyle):
1796         (WebCore::penToQPen):
1797         (WebCore::TransparencyLayer::TransparencyLayer):
1798         (WebCore::GraphicsContext::addRoundedRectClip):
1799         (WebCore::GraphicsContext::setPlatformFont):
1800         (WebCore::GraphicsContext::setPlatformPen):
1801         (WebCore::GraphicsContext::setPlatformFillColor):
1802         * platform/qt/ScrollViewCanvasQt.cpp:
1803         (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
1804         (WebCore::ScrollViewCanvasQt::paintEvent):
1805         (WebCore::ScrollViewCanvasQt::handleKeyEvent):
1806         * platform/qt/ScrollViewCanvasQt.h:
1807
1808 2006-11-02  Adele Peterson  <adele@apple.com>
1809
1810         Reviewed by Anders.
1811
1812         - Fix for http://bugs.webkit.org/show_bug.cgi?id=9581
1813         REGRESSION: The new NativeTextArea scrolls to the top when the control is unfocused.
1814
1815         Test: fast/forms/textarea-no-scroll-on-blur.html
1816
1817         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::forwardEvent):
1818           On blur, only scroll back to the start for text fields.
1819
1820 2006-11-02  Anders Carlsson  <acarlsson@apple.com>
1821
1822         Another build fix.
1823         
1824         * rendering/RenderFileUploadControl.cpp:
1825         (WebCore::RenderFileUploadControl::paintObject):
1826
1827 2006-11-02  Anders Carlsson  <acarlsson@apple.com>
1828
1829         Build fix.
1830         
1831         * page/FramePrivate.h:
1832         (WebCore::FramePrivate::FramePrivate):
1833
1834 2006-11-02  Kevin Ollivier <kevino@theolliviers.com>
1835
1836         Reviewed by Geoff, landed by Anders.
1837         
1838         Fix dependency problems caused when running move-js-headers.sh
1839         
1840         * move-js-headers.sh:
1841         Use cp -p instead of just cp so that the modification time
1842         of the original files are used.
1843
1844 2006-11-02  Adam Roben  <aroben@apple.com>
1845
1846         Reviewed by Tim H, landed by Anders.
1847
1848         Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10840
1849         REGRESSION: Shadow of file upload button is clipped
1850
1851         * rendering/RenderFileUploadControl.cpp:
1852         (WebCore::RenderFileUploadControl::paintObject): Add 2px to the clip
1853         height to keep from clipping in the shadow
1854
1855 2006-11-02  Eike Preuss  <mail@eikepreuss.de>
1856
1857         Reviewed by Maciej, landed by Anders.
1858
1859         * platform/qt/ScrollViewQt.cpp: Fix translation of coordinates between
1860         content and window. ScrollViewQt already receives correct content
1861         coordinates from QScrollArea.
1862         (WebCore::ScrollView::contentsToWindow):
1863         (WebCore::ScrollView::windowToContents):
1864
1865 2006-11-02  Simon Hausmann  <hausmann@kde.org>
1866
1867         Reviewed by Maciej, landed by Anders
1868
1869         * CMakeLists.txt: Make linkage against KDE libraries conditional
1870         * platform/network/qt/ResourceHandleManager.cpp: Added a simple
1871           Qt base resource handler that supports only requests to the
1872           local filesystem. Used when compiling without KDE support.
1873           ResourceHandleManager.cpp/h are to be split up into ResourceHandleManagerKDE
1874           and ResourceHandleManagerQt in the future, as well as QtJob.cpp/h.
1875         (WebCore::QtJob::QtJob):
1876         (WebCore::QtJob::timerEvent):
1877         (WebCore::ResourceHandleManager::ResourceHandleManager):
1878         (WebCore::ResourceHandleManager::~ResourceHandleManager):
1879         (WebCore::ResourceHandleManager::self):
1880         (WebCore::ResourceHandleManager::remove):
1881         (WebCore::ResourceHandleManager::add):
1882         (WebCore::ResourceHandleManager::cancel):
1883         (WebCore::ResourceHandleManager::deliverJobData):
1884         * platform/network/qt/ResourceHandleManager.h:
1885         * platform/qt/FrameQtClient.cpp:
1886         (WebCore::FrameQtClientDefault::runJavaScriptAlert):
1887         (WebCore::FrameQtClientDefault::runJavaScriptConfirm):
1888         (WebCore::FrameQtClientDefault::runJavaScriptPrompt):
1889         * platform/qt/LoaderFunctionsQt.cpp: Use the Qt messagebox and
1890           input dialog functions when compiling without KDE support
1891         (WebCore::ServeSynchronousRequest):
1892
1893 2006-11-02  David Carson  <dacarson@gmail.com>
1894
1895         Reviewed by Geoff, landed by Anders.
1896
1897         Fix for: http://bugs.webkit.org/show_bug.cgi?id=11471
1898         Initializing variable in constructor.
1899
1900         * page/FramePrivate.h:
1901         (WebCore::FramePrivate::FramePrivate):
1902
1903 2006-11-02  Anders Carlsson  <acarlsson@apple.com>
1904
1905         Reviewed by Geoff.
1906
1907         Use CFMutableURLRequestRef instead of CFHTTPMessageRef since not all URL requests are http requests.
1908         
1909         * platform/network/cf/ResourceHandleCFNet.cpp:
1910         (WebCore::addHeadersFromHashMap):
1911         Don't set all headers at once since that clears any previous headers set.
1912         
1913         (WebCore::ResourceHandle::start):
1914
1915 2006-11-02  Adele Peterson  <adele@apple.com>
1916
1917         Reviewed by Mitz and Geoff.
1918
1919         - Fix for:
1920         <rdar://problem/4650271> REGRESSION(NativeTextArea): Textareas don't get scrollbars when text gets too big for content area (10105)
1921         <rdar://problem/4650813> REGRESSION(tiger-leopard): typing in a textarea in Safari is extremely slow (sample shows focus ring drawing)
1922         <rdar://problem/4658779> REGRESSION: Text selection is weird in textareas in Trac wiki editing pages
1923
1924         Test: fast/forms/textarea-scrollbar.html
1925
1926         To avoid some of our flexbox bugs for textareas, we're moving the text controls back to RenderBlock.  This should make them
1927         a lot more stable.  In the future, when we've worked out more of the flexbox kinks, we may want to consider moving them back.
1928
1929         * rendering/RenderTextControl.h: Convert text controls back to RenderBlock instead of RenderFlexibleBox.
1930         * rendering/RenderTextControl.cpp: 
1931         (WebCore::RenderTextControl::RenderTextControl):
1932         (WebCore::RenderTextControl::setStyle):
1933         (WebCore::RenderTextControl::createDivStyle):
1934         (WebCore::RenderTextControl::updateFromElement):
1935         (WebCore::RenderTextControl::calcHeight):
1936         (WebCore::RenderTextControl::baselinePosition):
1937         (WebCore::RenderTextControl::nodeAtPoint):
1938         (WebCore::RenderTextControl::layout): Set the inner div's height explicitly before doing a normal layout.
1939         (WebCore::RenderTextControl::scrollWidth):
1940         (WebCore::RenderTextControl::scrollHeight):
1941         (WebCore::RenderTextControl::scrollLeft):
1942         (WebCore::RenderTextControl::scrollTop):
1943
1944         * rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout): Make subtree layout optimization work for textareas.
1945
1946 2006-11-02  John Sullivan  <sullivan@apple.com>
1947
1948         Reviewed by Geoff Garen
1949
1950         * editing/Selection.cpp:
1951         (WebCore::Selection::showTreeForThis):
1952         this debugging method now displays start offset and end offset, at Darin's suggestion
1953
1954 2006-11-01  Justin Garcia  <justin.garcia@apple.com>
1955
1956         Reviewed by darin
1957
1958         <rdar://problem/4062865>
1959         Copy/paste of a select element fails to include the options
1960         
1961         * editing/SelectionController.cpp:
1962         (WebCore::SelectionController::modify): Added paragraphBoundary.
1963         * editing/htmlediting.cpp:
1964         (WebCore::canHaveChildrenForEditing): Added checks for input elements
1965         and textareas.  Insertion operations would fail when performed just 
1966         before/after one of these elements b/c the content would be put inside 
1967         the element.
1968         (WebCore::enclosingNodeWithTag): Fixed a problem when calling these in non
1969         editable content, and made the code to stop at an root faster (don't check
1970         isDescendantOf on every iteration).
1971         (WebCore::enclosingNodeOfType): Ditto.
1972         (WebCore::enclosingList): Ditto.
1973         (WebCore::enclosingListChild): Ditto.  Added a FIXME, this function seems
1974         inappropriately named.
1975         * editing/markup.cpp:
1976         (WebCore::startMarkup): Use the text node's value instead of its rendered
1977         content for text nodes inside select elements.  One might also turn off
1978         annotation when createMarkup enters a select element, but createMarkup
1979         is iterative, not recursive, so doing so would be complicated.
1980         (WebCore::createMarkup): Add markup for unrendered nodes if they are 
1981         descendants of a select element.
1982         * editing/visible_units.cpp:
1983         (WebCore::startOfParagraph): Migrate to isBlock/enclosingBlock.  Fixes bug
1984         where various replaced elements can't be copied when they are the only
1985         thing selected.
1986         (WebCore::endOfParagraph): Ditto.
1987
1988 2006-11-01  Oliver Hunt  <oliver@apple.com>
1989
1990         Reviewed by Adam.
1991
1992         Converting more or kcanvas/quartz from Obj-C to C++
1993         Minor SVG updates
1994         compatibility fixes
1995
1996         * WebCore.xcodeproj/project.pbxproj:
1997         * kcanvas/device/KRenderingPaintServer.h:
1998         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.cpp: Added.
1999         (WebCore::KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
2000         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm: Removed.
2001         * kcanvas/device/quartz/KRenderingPaintServerQuartz.cpp: Added.
2002         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm: Removed.
2003         * kcanvas/device/quartz/QuartzSupport.h:
2004         * ksvg2/css/SVGCSSStyleSelector.cpp:
2005         * ksvg2/misc/KCanvasRenderingStyle.h:
2006         * ksvg2/scripts/cssmakeprops:
2007         * ksvg2/scripts/cssmakevalues:
2008         * ksvg2/scripts/make_names.pl:
2009         * ksvg2/svg/SVGAnimateColorElement.cpp:
2010         * ksvg2/svg/SVGAnimateTransformElement.cpp:
2011         * ksvg2/svg/SVGAnimationElement.cpp:
2012         * ksvg2/svg/SVGMaskElement.cpp:
2013         * ksvg2/svg/SVGPatternElement.cpp:
2014         * ksvg2/svg/svgpathparser.cpp:
2015         * platform/Path.cpp:
2016         * platform/graphics/svg/SVGResourceImage.h:
2017         * rendering/RenderPath.cpp:
2018         * rendering/SVGRenderAsText.cpp:
2019
2020 2006-11-02  Mitz Pettel  <mitz@webkit.org>
2021
2022         Reviewed by Adele.
2023
2024         - Fix a regression from r17521: painting of and crash caused by tables
2025           with collapsed borders
2026
2027         * rendering/RenderTable.cpp:
2028         (WebCore::RenderTable::paint): Changed 'paintInfo' to 'info'. Prior to
2029         r17521, 'paintInfo' was the local variable. Now 'info' is the local variable
2030         and 'paintInfo' is the parameter, which we were accidently modifying.
2031
2032 2006-11-01  Adele Peterson  <adele@apple.com>
2033
2034         Reviewed by Mitz.
2035
2036         - Fix for http://bugs.webkit.org/show_bug.cgi?id=11277
2037         REGRESSION: Incomplete repaint of overflow areas when deleting
2038
2039         Restrict the repaint rect for overflow blocks after the height has been fully computed.
2040         Also, adjust the repaint rect coordinates for the scroll offset.
2041
2042         * rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock):
2043         * rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren):
2044
2045 2006-11-01  Sam Weinig  <sam.weinig@gmail.com>
2046
2047         Reviewed by Mitz.
2048
2049         Fix for http://bugs.webkit.org/show_bug.cgi?id=11474
2050         Rename the "p" member variable of the PaintInfo struct to "context"
2051
2052         - Renames the 'p' and 'r' member variables of the PaintInfo struct to
2053           'context' and 'rect' respectively.
2054
2055         - Assorted surrounding cleanups.
2056
2057         * rendering/EllipsisBox.cpp:
2058         (WebCore::EllipsisBox::paint):
2059         * rendering/EllipsisBox.h:
2060         * rendering/InlineBox.cpp:
2061         (WebCore::InlineBox::paint):
2062         * rendering/InlineFlowBox.cpp:
2063         (WebCore::InlineFlowBox::paint):
2064         (WebCore::InlineFlowBox::paintBackground):
2065         (WebCore::InlineFlowBox::paintBackgroundAndBorder):
2066         (WebCore::InlineFlowBox::paintDecorations):
2067         * rendering/InlineFlowBox.h:
2068         * rendering/InlineRunBox.h:
2069         * rendering/InlineTextBox.cpp:
2070         (WebCore::InlineTextBox::paint):
2071         * rendering/InlineTextBox.h:
2072         * rendering/RenderBlock.cpp:
2073         (WebCore::RenderBlock::paint):
2074         (WebCore::RenderBlock::paintChildren):
2075         (WebCore::RenderBlock::paintCaret):
2076         (WebCore::RenderBlock::paintObject):
2077         (WebCore::RenderBlock::paintFloats):
2078         (WebCore::RenderBlock::paintEllipsisBoxes):
2079         (WebCore::RenderBlock::paintSelection):
2080         (WebCore::RenderBlock::fillSelectionGaps):
2081         (WebCore::RenderBlock::fillInlineSelectionGaps):
2082         (WebCore::RenderBlock::fillBlockSelectionGaps):
2083         (WebCore::RenderBlock::fillHorizontalSelectionGap):
2084         (WebCore::RenderBlock::fillVerticalSelectionGap):
2085         (WebCore::RenderBlock::fillLeftSelectionGap):
2086         (WebCore::RenderBlock::fillRightSelectionGap):
2087         * rendering/RenderBox.cpp:
2088         (WebCore::RenderBox::paint):
2089         (WebCore::RenderBox::paintRootBoxDecorations):
2090         (WebCore::RenderBox::paintBoxDecorations):
2091         * rendering/RenderBox.h:
2092         * rendering/RenderButton.cpp:
2093         (WebCore::RenderButton::paintObject):
2094         * rendering/RenderFieldset.cpp:
2095         (WebCore::RenderFieldset::paintBoxDecorations):
2096         * rendering/RenderFileUploadControl.cpp:
2097         (WebCore::RenderFileUploadControl::paintObject):
2098         * rendering/RenderFlow.cpp:
2099         (WebCore::RenderFlow::continuationBefore):
2100         (WebCore::RenderFlow::addChildWithContinuation):
2101         (WebCore::RenderFlow::addChild):
2102         (WebCore::RenderFlow::attachLineBox):
2103         (WebCore::RenderFlow::destroy):
2104         (WebCore::RenderFlow::dirtyLinesFromChangedChild):
2105         (WebCore::RenderFlow::dirtyLineBoxes):
2106         (WebCore::RenderFlow::createInlineBox):
2107         (WebCore::RenderFlow::paintLines):
2108         (WebCore::RenderFlow::getAbsoluteRepaintRect):
2109         (WebCore::RenderFlow::lowestPosition):
2110         (WebCore::RenderFlow::rightmostPosition):
2111         (WebCore::RenderFlow::leftmostPosition):
2112         (WebCore::RenderFlow::caretRect):
2113         (WebCore::RenderFlow::addFocusRingRects):
2114         (WebCore::RenderFlow::paintOutline):
2115         (WebCore::RenderFlow::paintOutlineForLine):
2116         * rendering/RenderForeignObject.cpp:
2117         (WebCore::RenderForeignObject::paint):
2118         * rendering/RenderHTMLCanvas.cpp:
2119         (WebCore::RenderHTMLCanvas::paint):
2120         * rendering/RenderImage.cpp:
2121         (WebCore::RenderImage::paint):
2122         * rendering/RenderLayer.cpp:
2123         (WebCore::RenderLayer::paintLayer):
2124         * rendering/RenderListBox.cpp:
2125         (WebCore::RenderListBox::paintObject):
2126         (WebCore::RenderListBox::paintScrollbar):
2127         (WebCore::RenderListBox::paintItemForeground):
2128         (WebCore::RenderListBox::paintItemBackground):
2129         * rendering/RenderListMarker.cpp:
2130         (WebCore::RenderListMarker::paint):
2131         * rendering/RenderMenuList.cpp:
2132         (WebCore::RenderMenuList::paintObject):
2133         * rendering/RenderObject.cpp:
2134         (WebCore::RenderObject::paint):
2135         * rendering/RenderObject.h:
2136         (WebCore::RenderObject::PaintInfo::PaintInfo):
2137         (WebCore::RenderObject::paintBoxDecorations):
2138         (WebCore::RenderObject::paintingRootForChildren):
2139         (WebCore::RenderObject::shouldPaintWithinRoot):
2140         (WebCore::RenderObject::printBoxDecorations):
2141         * rendering/RenderPath.cpp:
2142         (WebCore::RenderPath::paint):
2143         * rendering/RenderReplaced.cpp:
2144         (WebCore::RenderReplaced::shouldPaint):
2145         * rendering/RenderSVGContainer.cpp:
2146         (WebCore::RenderSVGContainer::paint):
2147         * rendering/RenderSVGContainer.h:
2148         * rendering/RenderSVGImage.cpp:
2149         (WebCore::RenderSVGImage::paint):
2150         * rendering/RenderSVGText.cpp:
2151         (WebCore::RenderSVGText::paint):
2152         * rendering/RenderSVGText.h:
2153         (WebCore::RenderSVGText::renderName):
2154         * rendering/RenderTable.cpp:
2155         (WebCore::RenderTable::paint):
2156         (WebCore::RenderTable::paintBoxDecorations):
2157         * rendering/RenderTable.h:
2158         * rendering/RenderTableCell.cpp:
2159         (WebCore::RenderTableCell::paint):
2160         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
2161         (WebCore::RenderTableCell::paintBoxDecorations):
2162         * rendering/RenderTableCell.h:
2163         * rendering/RenderTableRow.cpp:
2164         (WebCore::RenderTableRow::paint):
2165         * rendering/RenderTableRow.h:
2166         * rendering/RenderTableSection.cpp:
2167         (WebCore::RenderTableSection::paint):
2168         * rendering/RenderTableSection.h:
2169         (WebCore::RenderTableSection::getBaseline):
2170         (WebCore::RenderTableSection::setNeedCellRecalc):
2171         * rendering/RenderText.h:
2172         (WebCore::RenderText::renderName):
2173         (WebCore::RenderText::paint):
2174         (WebCore::RenderText::element):
2175         * rendering/RenderTheme.cpp:
2176         (WebCore::RenderTheme::paint):
2177         (WebCore::RenderTheme::paintBorderOnly):
2178         (WebCore::RenderTheme::paintDecorations):
2179         * rendering/RenderTheme.h:
2180         (WebCore::RenderTheme::RenderTheme):
2181         (WebCore::RenderTheme::~RenderTheme):
2182         (WebCore::RenderTheme::controlSupportsTints):
2183         (WebCore::RenderTheme::adjustRepaintRect):
2184         (WebCore::RenderTheme::themeChanged):
2185         (WebCore::RenderTheme::supportsHover):
2186         (WebCore::RenderTheme::paintCheckbox):
2187         (WebCore::RenderTheme::setCheckboxSize):
2188         (WebCore::RenderTheme::paintRadio):
2189         (WebCore::RenderTheme::setRadioSize):
2190         (WebCore::RenderTheme::paintButton):
2191         (WebCore::RenderTheme::setButtonSize):
2192         (WebCore::RenderTheme::paintTextField):
2193         (WebCore::RenderTheme::paintTextArea):
2194         (WebCore::RenderTheme::paintMenuList):
2195         (WebCore::RenderTheme::paintMenuListButton):
2196         * rendering/RenderThemeMac.mm:
2197         (WebCore::RenderThemeMac::paintCheckbox):
2198         (WebCore::RenderThemeMac::paintRadio):
2199         (WebCore::RenderThemeMac::paintButton):
2200         (WebCore::RenderThemeMac::paintTextField):
2201         (WebCore::RenderThemeMac::paintTextArea):
2202         (WebCore::RenderThemeMac::paintMenuList):
2203         (WebCore::RenderThemeMac::paintMenuListButtonGradients):
2204         (WebCore::RenderThemeMac::paintMenuListButton):
2205         * rendering/RenderView.cpp:
2206         (WebCore::RenderView::paint):
2207         (WebCore::RenderView::paintBoxDecorations):
2208         * rendering/RenderView.h:
2209         * rendering/RenderWidget.cpp:
2210         (WebCore::RenderWidget::paint):
2211         * rendering/RenderWidget.h:
2212         (WebCore::RenderWidget::isWidget):
2213         * rendering/RootInlineBox.cpp:
2214         (WebCore::RootInlineBox::paintEllipsisBox):
2215         (WebCore::RootInlineBox::paintCustomHighlight):
2216         (WebCore::RootInlineBox::paint):
2217         (WebCore::RootInlineBox::fillLineSelectionGap):
2218         * rendering/RootInlineBox.h:
2219         * rendering/SVGInlineFlowBox.cpp:
2220         (WebCore::paintSVGInlineFlow):
2221
2222 2006-11-01  Anders Carlsson  <acarlsson@apple.com>
2223
2224         Reviewed by Oliver, Brady.
2225
2226         * platform/network/ResourceResponse.h:
2227         (WebCore::ResourceResponse::setLastModifiedDate):
2228         (WebCore::ResourceResponse::lastModifiedDate):
2229         Add getters and setters for last modified dadte.
2230         
2231         * platform/network/cf/ResourceResponseCFNet.cpp:
2232         (WebCore::getResourceResponse):
2233         Fetch the last modified date. Add correct offset to expired date.
2234
2235 2006-11-01  David Kilzer  <ddkilzer@kilzer.net>
2236
2237         Reviewed by Mitz.
2238
2239         Added missing "break;" statement in switch statement from r17493.
2240
2241         Bug 11442: [CSS 3] support for cursor: all-scroll
2242         http://bugs.webkit.org/show_bug.cgi?id=11442
2243
2244         * css/CSSComputedStyleDeclaration.cpp:
2245         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2246
2247 2006-10-31  Mitz Pettel  <mitz@webkit.org>
2248
2249         Reviewed by Maciej.
2250
2251         - fix image dragging
2252
2253         This is covered by editing/selection/drag-to-contenteditable-iframe.html
2254
2255         * rendering/HitTestResult.cpp:
2256         (WebCore::HitTestResult::altDisplayString): Changed imageTag to imgTag, for
2257         HTML IMG elements.
2258         (WebCore::HitTestResult::absoluteImageURL): Ditto.
2259
2260 2006-10-31  Beth Dakin  <bdakin@apple.com>
2261
2262         Reviewed by Maciej.
2263
2264         This adds the back-end of the remaining WebElementDictionary 
2265         functions into HitTestResult.
2266
2267         * WebCore.exp:
2268         * rendering/HitTestResult.cpp:
2269         (WebCore::HitTestResult::title):
2270         (WebCore::displayString): This is nearly identical to the 
2271         displayString() defined in DOMInternal.mm except that it returns a 
2272         String instead of an NSString. The old code path used the 
2273         DOMInternal method, so I made a new one here for the new code path.
2274         (WebCore::HitTestResult::altDisplayString):
2275         (WebCore::HitTestResult::image):
2276         (WebCore::HitTestResult::absoluteImageURL):
2277         (WebCore::HitTestResult::absoluteLinkURL):
2278         (WebCore::HitTestResult::titleDisplayString):
2279         (WebCore::HitTestResult::textContent):
2280         * rendering/HitTestResult.h:
2281
2282 2006-10-31  John Sullivan  <sullivan@apple.com>
2283
2284         * bridge/mac/FrameMac.mm:
2285         (WebCore::FrameMac::markMisspellings):
2286         Tiger build fix: added an #ifndef BUILDING_ON_TIGER where one was needed.
2287
2288 2006-10-31  John Sullivan  <sullivan@apple.com>
2289
2290         Reviewed by Maciej
2291         
2292         - fixed <rdar://problem/4804627> ToolTips do not appear for grammar suggestions
2293         
2294         The foundation of this was in my last checkin. This checkin is all about displaying
2295         the correct string in the toolTip.
2296
2297         * dom/DocumentMarker.h:
2298         New description field in this struct.
2299
2300         * bridge/mac/FrameMac.mm:
2301         (WebCore::FrameMac::advanceToNextMisspelling):
2302         When adding a grammar marker, supply the appropriate description. Also, added a comment
2303         about the remaining work to make grammar checking return sensible answers.
2304         (WebCore::FrameMac::markMisspellings):
2305         ditto (yes, still needs some refactoring to minimize duplicated code)
2306         
2307         * dom/Document.h:
2308         * dom/Document.cpp:
2309         (WebCore::Document::addMarker):
2310         Now takes an optional description string
2311         (WebCore::Document::markerContainingPoint):
2312         New function, returns a pointer to the (first) marker of the specified type whose rect 
2313         contains the specified point, or 0 if none.
2314         
2315         * rendering/HitTestResult.cpp:
2316         (WebCore::HitTestResult::spellingToolTip):
2317         Replaced hardwired string placeholder implementation with code that uses markerContainingPoint
2318         and gets the description from the marker.
2319
2320 2006-10-31  Geoffrey Garen  <ggaren@apple.com>
2321
2322         Reviewed by Maciej.
2323         
2324         Fixed crash resulting from Darin's last patch to remove BrowserExtension.
2325
2326         * loader/mac/FrameLoaderMac.mm:
2327         (WebCore::FrameLoader::createWindow):
2328         * manual-tests/window-open-features-parsing.html: Updated for clarity.
2329
2330 2006-10-31  Geoffrey Garen  <ggaren@apple.com>
2331
2332         Reviewed by Alice.
2333
2334         Moved some Editing code from WebKit, the bridge, and WebCore::Frame down 
2335         to WebCore::Editor.
2336         
2337         Layout tests pass.
2338         
2339         Renamed "may*" to "can*" because "can" is more accurate (these functions
2340         aren't just about permission) and it matches WebKit.
2341
2342         (WebCore::FrameMac::handleMouseMoveEvent): Directly test for dragging in a 
2343         password field. Now that WebCore fully implements canCopy(), it doesn't just
2344         mean "the selection is not in a password field" anymore.
2345         (-[WebCoreFrameBridge _shouldAllowAccessFrom:]): Removed this #ifed-out code. 
2346         The fact that it's not called anymore may represent a security issue, but I
2347         don't see how commented-out code will help reveal the issue, and the
2348         bridge is going away, anyway.
2349         * editing/SelectionController.h: Changed selection() calls to references
2350         to m_sel, to match the rest of the file.
2351
2352 2006-10-31  Justin Garcia  <justin.garcia@apple.com>
2353
2354         Reviewed by harrison
2355         
2356         <rdar://problem/4711063>
2357         Pasting 10K lines into Mail/Blot takes ~7sec, in TextEdit it takes ~1.5sec
2358
2359         * editing/ReplaceSelectionCommand.cpp:
2360         (WebCore::ReplacementFragment::ReplacementFragment): Don't do the test
2361         insertion and plain text string creation unless we need the string
2362         for a BeforeTextInserted event handler or for a plain text only region.
2363         (WebCore::ReplacementFragment::removeInterchangeNodes): Added, moved
2364         code here from ReplacementFragment's constructor.
2365         (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Added a
2366         FIXME.
2367         * editing/ReplaceSelectionCommand.h:
2368
2369 2006-10-31  Ada Chan  <adachan@apple.com>
2370
2371         Reviewed by Adam
2372
2373         Correct forward declarations of the HitTestRequest struct.
2374
2375         * rendering/EllipsisBox.h:
2376         * rendering/InlineBox.h:
2377         * rendering/InlineFlowBox.h:
2378         * rendering/RenderLayer.h:
2379         * rendering/RenderObject.h:
2380
2381 2006-10-31  John Sullivan  <sullivan@apple.com>
2382
2383         Reviewed by Beth and Adam
2384
2385         Support for displaying tooltips for bad grammar. Currently this always displays the same tooltip; 
2386         next I'll make it use a string that's relevant for a specific grammar error.
2387
2388         * WebCore.exp:
2389         export symbol for spellingToolTip function
2390         
2391         * rendering/HitTestResult.h:
2392         * rendering/HitTestResult.cpp:
2393         (WebCore::HitTestResult::spellingToolTip):
2394         new function, returns the string to be used in a tool tip that describes the questionable grammar
2395         
2396         * rendering/InlineTextBox.h:
2397         * rendering/InlineTextBox.cpp:
2398         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
2399         now takes a style and font, needed to compute the rect representing the range containing
2400         questionable grammar. Computes the rect and associates it with the marker.
2401         (WebCore::InlineTextBox::paintDocumentMarkers):
2402         Pass in the style and font now needed by paintSpellingOrGrammarMarker
2403
2404 2006-10-31  Adele Peterson  <adele@apple.com>
2405
2406         Removed commented out variable from last checkin.
2407
2408         * html/HTMLSelectElement.cpp:
2409         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
2410
2411 2006-10-31  Brady Eidson  <beidson@apple.com>
2412
2413         Build fix (unused variable in release builds)
2414
2415         * html/HTMLSelectElement.cpp:
2416         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
2417
2418 2006-10-31  Adele Peterson  <adele@apple.com>
2419
2420         Reviewed by Adam.
2421
2422         - Fix for http://bugs.webkit.org/show_bug.cgi?id=11127 NativeListBox: arrow and drag selection should pivot around one list item
2423         and http://bugs.webkit.org/show_bug.cgi?id=11173 REGRESSION (NativeListBox): Shift-clicking items in list box doesn't expand the current selection
2424         and http://bugs.webkit.org/show_bug.cgi?id=11417 REGRESSION: onchange does not fire for list-style select elements
2425
2426         Tests: 
2427         * LayoutTests/fast/forms/listbox-selection.html
2428         * LayoutTests/fast/forms/listbox-onchange.html
2429
2430         * html/HTMLSelectElement.h: Added m_selectedListIndexBase and m_selectedListIndexExtent to track indices for the active selection in progress.
2431           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.
2432           And one for onChange, that is updated after onChange is fired.
2433           Added m_activeSelectionState to keep track of whether the current drag selection is selecting or deselecting.
2434  
2435         * html/HTMLSelectElement.cpp:
2436         (WebCore::HTMLSelectElement::HTMLSelectElement): Initialized new variables.
2437         (WebCore::HTMLSelectElement::setSelectedIndex): If needed, initialize m_selectedListIndexBase and m_selectedListIndexExtent.
2438         (WebCore::HTMLSelectElement::dispatchBlurEvent): Only fire the onChange event here for menu lists.
2439         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Updates base and extent variables for mouse and key events.
2440         (WebCore::HTMLSelectElement::setBase): Added. Also caches the selection state.
2441         (WebCore::HTMLSelectElement::setExtent): Added.
2442         (WebCore::HTMLSelectElement::updateListBoxSelection): Added.
2443         (WebCore::HTMLSelectElement::listBoxOnChange): Added.
2444
2445         * rendering/RenderListBox.cpp:
2446         (WebCore::RenderListBox::updateFromElement): Only scroll to reveal the first index if both the first and last indices aren't visible.
2447         (WebCore::RenderListBox::listIndexAtOffset): Added.  Replaces optionAtPoint, which is no longer used.
2448         (WebCore::RenderListBox::autoscroll): Now sets the selection using the select's base and extent.
2449         (WebCore::RenderListBox::stopAutoscroll): Added.  Tells the select element to fire onChange.  This is needed because the autoscroll can end from a mouseUp
2450          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
2451          notify the select element from here.
2452         (WebCore::RenderListBox::scrollToRevealElementAtListIndex): Checks new listIndexIsVisible method.
2453         (WebCore::RenderListBox::listIndexIsVisible): Added.
2454         (WebCore::RenderListBox::valueChanged): Removed unnecessary printf.
2455
2456         * page/Frame.cpp: (WebCore::Frame::stopAutoscrollTimer): Added rendererIsBeingDestroyed argument, so when the renderer calls this during destruction, 
2457         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.
2458         * rendering/RenderListBox.h: (WebCore::RenderListBox::shouldAutoscroll): Always returns true now, since we're also updating selection from the autoscroll timer.
2459         * rendering/RenderObject.h: (WebCore::RenderObject::stopAutoscroll): Added.
2460         * rendering/RenderObject.cpp: (WebCore::RenderObject::destroy): Calls stopAutoscrollTimer with rendererIsBeingDestroyed argument.
2461
2462 2006-10-31  Beth Dakin  <bdakin@apple.com>
2463
2464         Forgot to check this in a minute ago. Oops!! Thanks Mitz!
2465
2466         * rendering/HitTestRequest.h: Added.
2467         (WebCore::HitTestRequest::HitTestRequest):
2468
2469 2006-10-31  Beth Dakin  <bdakin@apple.com>
2470
2471         Reviewed by Maciej.
2472
2473         Fix for http://bugs.webkit.org/show_bug.cgi?id=11461 HitTestResult 
2474         should be split into HitTestRequest and HitTestResult
2475
2476         This patch creates a new struct called HitTestRequest that holds 
2477         the three boolean values (readonly, active, and mouseMove) that 
2478         were formerly a part of HitTestResult. All hitTest() and 
2479         nodeAtPoint() functions now take a HitTestRequest in addition to 
2480         the HitTestResult.
2481
2482         * WebCore.exp:
2483         * WebCore.xcodeproj/project.pbxproj:
2484         * bridge/mac/FrameMac.mm:
2485         (WebCore::FrameMac::eventMayStartDrag):
2486         (WebCore::FrameMac::handleMouseMoveEvent):
2487         * bridge/mac/WebCoreAXObject.mm:
2488         (-[WebCoreAXObject doAXTextMarkerForPosition:]):
2489         (-[WebCoreAXObject accessibilityHitTest:]):
2490         * dom/Document.cpp:
2491         (WebCore::Document::elementFromPoint):
2492         (WebCore::Document::prepareMouseEvent):
2493         * editing/SelectionController.cpp:
2494         (WebCore::SelectionController::contains):
2495         * page/Frame.cpp:
2496         (WebCore::Frame::hitTestResultAtPoint):
2497         * page/FrameView.cpp:
2498         (WebCore::FrameView::handleWheelEvent):
2499         * rendering/EllipsisBox.cpp:
2500         (WebCore::EllipsisBox::nodeAtPoint):
2501         * rendering/EllipsisBox.h:
2502         * rendering/HitTestResult.cpp:
2503         (WebCore::HitTestResult::HitTestResult):
2504         (WebCore::HitTestResult::operator=):
2505         * rendering/HitTestResult.h:
2506         * rendering/InlineBox.cpp:
2507         (WebCore::InlineBox::nodeAtPoint):
2508         * rendering/InlineBox.h:
2509         * rendering/InlineFlowBox.cpp:
2510         (WebCore::InlineFlowBox::nodeAtPoint):
2511         * rendering/InlineFlowBox.h:
2512         * rendering/InlineTextBox.cpp:
2513         (WebCore::InlineTextBox::nodeAtPoint):
2514         * rendering/InlineTextBox.h:
2515         * rendering/RenderBlock.cpp:
2516         (WebCore::RenderBlock::nodeAtPoint):
2517         * rendering/RenderBlock.h:
2518         * rendering/RenderBox.cpp:
2519         (WebCore::RenderBox::nodeAtPoint):
2520         * rendering/RenderBox.h:
2521         * rendering/RenderFlow.cpp:
2522         (WebCore::RenderFlow::hitTestLines):
2523         * rendering/RenderFlow.h:
2524         * rendering/RenderForeignObject.cpp:
2525         (WebCore::RenderForeignObject::nodeAtPoint):
2526         * rendering/RenderForeignObject.h:
2527         * rendering/RenderFrameSet.cpp:
2528         (WebCore::RenderFrameSet::nodeAtPoint):
2529         * rendering/RenderFrameSet.h:
2530         * rendering/RenderImage.cpp:
2531         (WebCore::RenderImage::nodeAtPoint):
2532         * rendering/RenderImage.h:
2533         * rendering/RenderInline.cpp:
2534         (WebCore::RenderInline::nodeAtPoint):
2535         * rendering/RenderInline.h:
2536         * rendering/RenderLayer.cpp:
2537         (WebCore::RenderLayer::autoscroll):
2538         (WebCore::RenderLayer::hitTest):
2539         (WebCore::RenderLayer::hitTestLayer):
2540         (WebCore::RenderLayer::updateHoverActiveState):
2541         * rendering/RenderLayer.h:
2542         * rendering/RenderObject.cpp:
2543         (WebCore::RenderObject::hitTest):
2544         (WebCore::RenderObject::nodeAtPoint):
2545         * rendering/RenderObject.h:
2546         * rendering/RenderPath.cpp:
2547         (WebCore::RenderPath::nodeAtPoint):
2548         * rendering/RenderPath.h:
2549         * rendering/RenderSVGImage.cpp:
2550         (WebCore::RenderSVGImage::nodeAtPoint):
2551         * rendering/RenderSVGImage.h:
2552         * rendering/RenderSVGText.cpp:
2553         (WebCore::RenderSVGText::nodeAtPoint):
2554         * rendering/RenderSVGText.h:
2555         * rendering/RenderTableRow.cpp:
2556         (WebCore::RenderTableRow::nodeAtPoint):
2557         * rendering/RenderTableRow.h:
2558         * rendering/RenderTableSection.cpp:
2559         (WebCore::RenderTableSection::nodeAtPoint):
2560         * rendering/RenderTableSection.h:
2561         * rendering/RenderText.h:
2562         (WebCore::RenderText::nodeAtPoint):
2563         * rendering/RenderTextControl.cpp:
2564         (WebCore::RenderTextControl::nodeAtPoint):
2565         * rendering/RenderTextControl.h:
2566         * rendering/RootInlineBox.cpp:
2567         (WebCore::RootInlineBox::nodeAtPoint):
2568         * rendering/RootInlineBox.h:
2569
2570 2006-10-31  Lars Naesbye Christensen <larsnaesbye@stud.ku.dk>
2571
2572         Reviewed by Maciej.
2573
2574         Bug 11442: [CSS 3] support for cursor: all-scroll
2575         http://bugs.webkit.org/show_bug.cgi?id=11442
2576
2577         * css/CSSComputedStyleDeclaration.cpp:
2578         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2579         * css/CSSValueKeywords.in:
2580         * css/cssparser.cpp:
2581         (WebCore::CSSParser::parseValue):
2582         * page/FrameView.cpp:
2583         (WebCore::selectCursor):
2584         * rendering/RenderStyle.h:
2585
2586 2006-10-31  Oliver Hunt  <oliver@apple.com>
2587
2588         Reviewed by Geoff.
2589
2590         Converting Obj-C++ to C++ in kcanvas
2591
2592         * WebCore.xcodeproj/project.pbxproj:
2593         * kcanvas/device/quartz/KCanvasFilterQuartz.h:
2594         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
2595         * kcanvas/device/quartz/KCanvasItemQuartz.cpp: Added.
2596         * kcanvas/device/quartz/KCanvasItemQuartz.mm: Removed.
2597         * kcanvas/device/quartz/KRenderingDeviceQuartz.cpp: Added.
2598         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
2599         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: Removed.
2600         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
2601         * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
2602         * kcanvas/device/quartz/QuartzSupport.cpp: Added.
2603         * kcanvas/device/quartz/QuartzSupport.h:
2604         * kcanvas/device/quartz/QuartzSupport.mm: Removed.
2605         * platform/graphics/svg/cg/SVGResourceClipperCg.cpp: Added.
2606         (WebCore::SVGResourceClipper::applyClip):
2607         * platform/graphics/svg/cg/SVGResourceClipperCg.mm: Removed.
2608         * platform/graphics/svg/cg/SVGResourceImageCg.cpp: Added.
2609         * platform/graphics/svg/cg/SVGResourceImageCg.mm: Removed.
2610
2611 2006-10-31  Justin Garcia  <justin.garcia@apple.com>
2612
2613         Reviewed by harrison
2614         
2615         <rdar://problem/4808375>
2616         REGRESSION: TextIterator slowed down, affecting Find on Page & Copy (etc.) [11460}
2617         
2618         Completely back out r17276 because of performance issues.
2619
2620         * editing/TextIterator.cpp:
2621         (WebCore::TextIterator::TextIterator):
2622         (WebCore::TextIterator::advance):
2623         (WebCore::TextIterator::handleTextNode):
2624         (WebCore::TextIterator::handleTextBox):
2625         (WebCore::TextIterator::handleReplacedElement):
2626         (WebCore::TextIterator::handleNonTextNode):
2627         (WebCore::TextIterator::exitNode):
2628         (WebCore::TextIterator::emitCharacter):
2629         (WebCore::TextIterator::range):
2630         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
2631         (WebCore::SimplifiedBackwardsTextIterator::advance):
2632         (WebCore::SimplifiedBackwardsTextIterator::handleTextNode):
2633         (WebCore::SimplifiedBackwardsTextIterator::handleReplacedElement):
2634         (WebCore::SimplifiedBackwardsTextIterator::emitCharacter):
2635         (WebCore::SimplifiedBackwardsTextIterator::emitNewline):
2636         (WebCore::SimplifiedBackwardsTextIterator::range):
2637         (WebCore::CharacterIterator::range):
2638         (WebCore::TextIterator::rangeFromLocationAndLength):
2639         * editing/TextIterator.h:
2640         (WebCore::TextIterator::atEnd):
2641         (WebCore::SimplifiedBackwardsTextIterator::atEnd):
2642
2643 2006-10-31  Darin Adler  <darin@apple.com>
2644
2645         Reviewed by Brady.
2646
2647         - got "action dictionary" code out of FrameLoader,
2648           replacing with a class called NavigationAction
2649
2650         * loader/DocumentLoader.h: Changed m_triggeringAction to a NavigationAction.
2651         * loader/mac/DocumentLoaderMac.mm:
2652         (WebCore::DocumentLoader::triggeringAction): Ditto.
2653         (WebCore::DocumentLoader::setTriggeringAction): Ditto.
2654
2655         * loader/FrameLoader.h: Changed action parameters to NavigationAction.
2656
2657         * loader/FrameLoaderClient.h: Changed action parameters to NavigationAction.
2658         Removed elementForEvent.
2659         * loader/mac/FrameLoaderMac.mm:
2660         (WebCore::FrameLoader::load): Ditto.
2661         (WebCore::FrameLoader::reload): Ditto.
2662         (WebCore::FrameLoader::checkNewWindowPolicy): Ditto.
2663         (WebCore::FrameLoader::checkNavigationPolicy): Ditto.
2664         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy): Ditto.
2665         (WebCore::FrameLoader::post): Ditto.
2666
2667         * loader/NavigationAction.h: Added.
2668         * loader/NavigationAction.cpp: Added.
2669         * loader/mac/NavigationActionMac.mm: Added.
2670
2671         * loader/mac/MainResourceLoaderMac.mm: Fixed copyright.
2672
2673         * WebCore.xcodeproj/project.pbxproj: Updated for new files.
2674         * WebCore.exp: Updated.
2675
2676 2006-10-31  Steve Falkenburg  <sfalken@apple.com>
2677
2678         Reviewed by Adam.
2679
2680         Build fix
2681
2682         * platform/win/CookieJarWin.cpp:
2683         (WebCore::cookies):
2684
2685 2006-10-31  Nikolas Zimmermann  <zimmermann@kde.org>
2686
2687         Reviewed by Maciej. Landed by Adam.
2688
2689         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11463
2690
2691         Move KCanvasTreeDebug into rendering, named as SVGRenderTreeAsText.*,
2692         as dicussed with Dave. Also kill the outdated DESIGN document.
2693
2694         * CMakeLists.txt:
2695         * WebCore.xcodeproj/project.pbxproj:
2696         * kcanvas/DESIGN: Removed.
2697         * kcanvas/KCanvasFilters.cpp:
2698         * kcanvas/KCanvasTreeDebug.cpp: Moved to rendering/SVGRenderTreeAsText
2699         * kcanvas/KCanvasTreeDebug.h: Ditto.
2700         * kcanvas/device/KRenderingPaintServerGradient.cpp:
2701         * kcanvas/device/KRenderingPaintServerPattern.cpp:
2702         * kcanvas/device/KRenderingPaintServerSolid.cpp:
2703         * platform/graphics/svg/SVGResourceClipper.cpp:
2704         * rendering/RenderTreeAsText.cpp:
2705         * rendering/SVGRenderTreeAsText.cpp: Added.
2706         * rendering/SVGRenderTreeAsText.h: Added.
2707         (WebCore::operator<<):
2708
2709 2006-10-31  MorganL  <morganl.webkit@yahoo.com>
2710
2711         Reviewed by Maciej.
2712
2713         Fixes http://bugs.webkit.org/show_bug.cgi?id=11286
2714         Includes some CRLF -> LF fixups.
2715
2716         * platform/win/CookieJarWin.cpp:
2717         (WebCore::cookies):
2718
2719 2006-10-31  Adam Roben  <aroben@apple.com>
2720
2721         Reviewed by Steve.
2722
2723         Fix some incorrect forward declarations.
2724
2725         * loader/FrameLoader.h:
2726         * page/Frame.h:
2727
2728 2006-10-31  Darin Adler  <darin@apple.com>
2729
2730         * WebCore.xcodeproj/project.pbxproj: Change GraphicsTypes.h to a private header to
2731         try to fix the build on the buildbot.
2732
2733 2006-10-31  Darin Adler  <darin@apple.com>
2734
2735         * bridge/mac/FrameMac.mm:
2736         (WebCore::FrameMac::advanceToNextMisspelling): Build fix for release Tiger builds.
2737         (WebCore::FrameMac::markMisspellings): Ditto.
2738
2739 2006-10-31  John Sullivan  <sullivan@apple.com>
2740
2741         * bridge/mac/FrameMac.mm:
2742         (WebCore::FrameMac::advanceToNextMisspelling):
2743         build fix: needed #ifndef BUILDING_ON_TIGER in one more place
2744
2745 2006-10-30  John Sullivan  <sullivan@apple.com>
2746
2747         Reviewed by Adam Roben
2748         
2749         - fixes <rdar://problem/4804614> Bad grammar ranges are not visibly marked
2750         
2751         This patch introduces much of the guts of grammar checking, though still not enough to actually
2752         check grammar sensibly, due to:
2753           
2754         <rdar://problem/4811175> Many false reports of bad grammar appear, caused by insufficient 
2755         context passed to grammar checker
2756
2757         * platform/Logging.h:
2758         * platform/Logging.cpp:
2759         new log channel SpellingAndGrammar
2760
2761         * bridge/mac/WebCorePageBridge.mm:
2762         (initializeLoggingChannelsIfNecessary):
2763         initialize new log channel
2764
2765         * bridge/mac/FrameMac.mm:
2766         (WebCore::FrameMac::advanceToNextMisspelling):
2767         Compute bad grammar range when computing misspelling range. Find first detailed grammar range from the
2768         set NSSpellChecker determines. Compare it with misspelling range to see which is earliest (or shortest
2769         in the event of a tie), and do further processing with that one (select range; create marker that
2770         causes range to be visibly marked with a funky underline; update spelling panel appropriately).
2771         (WebCore::FrameMac::markMisspellings):
2772         More or less the same types of changes as in advanceToNextMisspelling The loops are structured just 
2773         differently enough to make sharing code between these two functions a little tricky, so I decided to 
2774         save that for a later patch.
2775         
2776         (WebCore::FrameMac::respondToChangedSelection):
2777         remove grammar markers when we remove spelling markers        
2778
2779 2006-10-31  Nikolas Zimmermann <zimmermann@kde.org>
2780
2781         Reviewed by Mitz.
2782
2783         Fix Qt/Linux build with older gcc3.3.4.
2784
2785         * bindings/js/kjs_window.cpp:
2786         (KJS::WindowFunc::callAsFunction):
2787
2788 2006-10-31  Zack Rusin  <zack@kde.org>
2789
2790         Reviewed by Mitz.
2791
2792         Fix the Qt build after last nights changes.
2793
2794         * WebCore/platform/qt/FrameQt.cpp:
2795         * WebCore/platform/qt/EditorClientQt.h:
2796         * WebCore/platform/qt/EditorClientQt.cpp:
2797         * WebCore/platform/graphics/svg/qt/SVGResourceImageQt.cpp:
2798         * WebCore/platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
2799         * WebCore/CMakeLists.txt:
2800         * WebCore/kcanvas/device/qt/KRenderingDeviceQt.cpp:
2801         * WebKitQt/QtLauncher/CMakeLists.txt:
2802         * WebKitQt/WebKitPart/CMakeLists.txt:
2803
2804 2006-10-30  Darin Adler  <darin@apple.com>
2805
2806         Reviewed by Anders.
2807
2808         - remove BrowserExtension
2809
2810         * WebCore.vcproj/WebCore/WebCore.vcproj:
2811         * WebCore.xcodeproj/project.pbxproj:
2812         * bindings/js/kjs_window.cpp:
2813         (KJS::createNewWindow):
2814         (KJS::WindowFunc::callAsFunction):
2815         * bridge/BrowserExtension.h: Removed.
2816         * bridge/mac/BrowserExtensionMac.h: Removed.
2817         * bridge/mac/BrowserExtensionMac.mm: Removed.
2818         * bridge/mac/FrameMac.mm:
2819         (WebCore::FrameMac::FrameMac):
2820         (WebCore::FrameMac::submitForm):
2821         (WebCore::FrameMac::urlSelected):
2822         * bridge/win/BrowserExtensionWin.cpp: Removed.
2823         * bridge/win/BrowserExtensionWin.h: Removed.
2824         * bridge/win/FrameWin.cpp:
2825         (WebCore::FrameWin::FrameWin):
2826         * loader/FrameLoader.cpp:
2827         (WebCore::FrameLoader::createWindow):
2828         * loader/FrameLoader.h:
2829         * loader/icon/IconLoader.cpp:
2830         * loader/mac/FrameLoaderMac.mm:
2831         (WebCore::FrameLoader::safeLoad):
2832         (WebCore::FrameLoader::load):
2833         (WebCore::FrameLoader::createWindow):
2834         * page/Frame.cpp:
2835         (WebCore::Frame::urlSelected):
2836         (WebCore::Frame::requestFrame):
2837         (WebCore::Frame::submitForm):
2838         (WebCore::Frame::scheduleHistoryNavigation):
2839         (WebCore::Frame::redirectionTimerFired):
2840         * page/Frame.h:
2841         * page/FrameLoadRequest.h:
2842         (WebCore::FrameLoadRequest::FrameLoadRequest):
2843         (WebCore::FrameLoadRequest::isEmpty):
2844         (WebCore::FrameLoadRequest::resourceRequest):
2845         (WebCore::FrameLoadRequest::frameName):
2846         (WebCore::FrameLoadRequest::setFrameName):
2847         * page/FramePrivate.h:
2848         (WebCore::FramePrivate::FramePrivate):
2849         (WebCore::FramePrivate::~FramePrivate):
2850         * platform/gdk/BrowserExtensionGdk.h: Removed.
2851         * platform/gdk/FrameGdk.cpp:
2852         (WebCore::FrameGdk::FrameGdk):
2853         * platform/gdk/TemporaryLinkStubs.cpp:
2854         * platform/network/ResourceRequest.h:
2855         (WebCore::ResourceRequest::isEmpty):
2856
2857 2006-10-31  Nikolas Zimmermann  <zimmermann@kde.org>
2858
2859         Reviewed by Oliver.
2860
2861         Modified from original due to earlier reversion
2862
2863         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11436
2864
2865         Better SVG integration in WebKit, Part I.
2866
2867         The patch is mostly about creating a new platform/graphics directory, and
2868         moving the kcanvas resources (clipper/masker/marker) there (in svg budir),
2869         with a new name (KCanvasClipper -> SVGResourceClipper). Also fix several ownership
2870         issues, by using ref counting (the SVG classes now store RefPtrs to the resources).
2871
2872         KCanvasFilters is still left in kcanvas/ subdirectory, to be converted in a next patch.
2873         All details of the patch, and upcoming patches can be found in the bug report.
2874
2875         * CMakeLists.txt:
2876         * WebCore.xcodeproj/project.pbxproj:
2877         * graphics/svg/SVGResource.cpp: Removed.
2878         * graphics/svg/SVGResourceClipper.cpp: Removed.
2879         * graphics/svg/SVGResourceClipper.h: Removed.
2880         * graphics/svg/SVGResourceImage.h: Removed.
2881         * graphics/svg/SVGResourceListener.h: Removed.
2882         * graphics/svg/SVGResourceMarker.cpp: Removed.
2883         * graphics/svg/SVGResourceMarker.h: Removed.
2884         * graphics/svg/SVGResourceMasker.cpp: Removed.
2885         * graphics/svg/SVGResourceMasker.h: Removed.
2886         * kcanvas/KCanvasClipper.cpp: Removed.
2887         * kcanvas/KCanvasClipper.h: Removed.
2888         * kcanvas/KCanvasCreator.cpp: Removed.
2889         * kcanvas/KCanvasCreator.h: Removed.
2890         * kcanvas/KCanvasFilters.cpp:
2891         (WebCore::getFilterById):
2892         * kcanvas/KCanvasFilters.h:
2893         * kcanvas/KCanvasImage.h: Removed.
2894         * kcanvas/KCanvasMarker.cpp: Removed.
2895         * kcanvas/KCanvasMarker.h: Removed.
2896         * kcanvas/KCanvasMasker.cpp: Removed.
2897         * kcanvas/KCanvasMasker.h: Removed.
2898         * kcanvas/KCanvasResource.cpp: Removed.
2899         * kcanvas/KCanvasResource.h: Removed.
2900         * kcanvas/KCanvasResourceListener.h: Removed.
2901         * kcanvas/KCanvasTreeDebug.cpp:
2902         (WebCore::writeRenderResources):
2903         * kcanvas/device/KRenderingDevice.h:
2904         * kcanvas/device/KRenderingPaintServer.h:
2905         (WebCore::KRenderingPaintServer::KRenderingPaintServer):
2906         * kcanvas/device/KRenderingPaintServerGradient.cpp:
2907         (WebCore::KRenderingPaintServerGradient::listener):
2908         (WebCore::KRenderingPaintServerGradient::setListener):
2909         * kcanvas/device/KRenderingPaintServerGradient.h:
2910         * kcanvas/device/KRenderingPaintServerPattern.cpp:
2911         (WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
2912         (WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
2913         (WebCore::KRenderingPaintServerPattern::tile):
2914         (WebCore::KRenderingPaintServerPattern::setTile):
2915         (WebCore::KRenderingPaintServerPattern::listener):
2916         (WebCore::KRenderingPaintServerPattern::setListener):
2917         * kcanvas/device/KRenderingPaintServerPattern.h:
2918         * kcanvas/device/KRenderingPaintServerSolid.h:
2919         * kcanvas/device/qt/KCanvasClipperQt.cpp: Removed.
2920         * kcanvas/device/qt/KCanvasClipperQt.h:
2921         * kcanvas/device/qt/KRenderingDeviceQt.cpp:
2922         (WebCore::KRenderingDeviceQt::contextForImage):
2923         (WebCore::KRenderingDeviceQt::createResource):
2924         (WebCore::KRenderingDeviceQt::createPaintServer):
2925         * kcanvas/device/qt/KRenderingDeviceQt.h:
2926         * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
2927         * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
2928         * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
2929         * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
2930         * kcanvas/device/qt/RenderPathQt.h: Removed.
2931         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
2932         (WebCore::KCanvasFilterQuartz::getCIFilterStack):
2933         * kcanvas/device/quartz/KCanvasItemQuartz.mm:
2934         * kcanvas/device/quartz/KCanvasMaskerQuartz.h: Removed.
2935         * kcanvas/device/quartz/KCanvasMaskerQuartz.mm: Removed.
2936         * kcanvas/device/quartz/KCanvasResourcesQuartz.h: Removed.
2937         * kcanvas/device/quartz/KCanvasResourcesQuartz.mm: Removed.
2938         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
2939         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
2940         (WebCore::KRenderingDeviceQuartz::contextForImage):
2941         (WebCore::KRenderingDeviceQuartz::createPaintServer):
2942         (WebCore::KRenderingDeviceQuartz::createResource):
2943         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
2944         (WebCore::KRenderingPaintServerGradientQuartz::KRenderingPaintServerGradientQuartz):
2945         (WebCore::KRenderingPaintServerGradientQuartz::~KRenderingPaintServerGradientQuartz):
2946         (WebCore::KRenderingPaintServerGradientQuartz::setup):
2947         (WebCore::KRenderingPaintServerGradientQuartz::teardown):
2948         * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
2949         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
2950         (WebCore::patternCallback):
2951         (WebCore::KRenderingPaintServerPatternQuartz::setup):
2952         * kcanvas/device/quartz/QuartzSupport.mm:
2953         * ksvg2/misc/KCanvasRenderingStyle.cpp:
2954         (WebCore::sharedSolidPaintServer):
2955         * ksvg2/svg/SVGClipPathElement.cpp:
2956         (WebCore::SVGClipPathElement::SVGClipPathElement):
2957         (WebCore::SVGClipPathElement::~SVGClipPathElement):
2958         (WebCore::SVGClipPathElement::canvasResource):
2959         * ksvg2/svg/SVGClipPathElement.h:
2960         * ksvg2/svg/SVGFEImageElement.cpp:
2961         * ksvg2/svg/SVGFilterElement.cpp:
2962         (WebCore::SVGFilterElement::SVGFilterElement):
2963         (WebCore::SVGFilterElement::~SVGFilterElement):
2964         (WebCore::SVGFilterElement::canvasResource):
2965         * ksvg2/svg/SVGFilterElement.h:
2966         * ksvg2/svg/SVGGradientElement.cpp:
2967         (WebCore::SVGGradientElement::SVGGradientElement):
2968         (WebCore::SVGGradientElement::~SVGGradientElement):
2969         (WebCore::SVGGradientElement::canvasResource):
2970         (WebCore::SVGGradientElement::resourceNotification):
2971         * ksvg2/svg/SVGGradientElement.h:
2972         * ksvg2/svg/SVGImageElement.cpp:
2973         * ksvg2/svg/SVGLinearGradientElement.cpp:
2974         (WebCore::SVGLinearGradientElement::buildGradient):
2975         * ksvg2/svg/SVGLinearGradientElement.h:
2976         * ksvg2/svg/SVGMarkerElement.cpp:
2977         (WebCore::SVGMarkerElement::SVGMarkerElement):
2978         (WebCore::SVGMarkerElement::~SVGMarkerElement):
2979         (WebCore::SVGMarkerElement::canvasResource):
2980         * ksvg2/svg/SVGMarkerElement.h:
2981         * ksvg2/svg/SVGMaskElement.cpp:
2982         (WebCore::SVGMaskElement::SVGMaskElement):
2983         (WebCore::SVGMaskElement::~SVGMaskElement):
2984         (WebCore::SVGMaskElement::drawMaskerContent):
2985         (WebCore::SVGMaskElement::canvasResource):
2986         * ksvg2/svg/SVGMaskElement.h:
2987         * ksvg2/svg/SVGPatternElement.cpp:
2988         (WebCore::SVGPatternElement::SVGPatternElement):
2989         (WebCore::SVGPatternElement::~SVGPatternElement):
2990         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
2991         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
2992         (WebCore::SVGPatternElement::canvasResource):
2993         * ksvg2/svg/SVGPatternElement.h:
2994         * ksvg2/svg/SVGRadialGradientElement.cpp:
2995         (WebCore::SVGRadialGradientElement::buildGradient):
2996         * ksvg2/svg/SVGRadialGradientElement.h:
2997         * ksvg2/svg/SVGStyledElement.h:
2998         (WebCore::SVGStyledElement::canvasResource):
2999         * platform/GraphicsContext.cpp: Removed.
3000         * platform/GraphicsContext.h: Removed.
3001         * platform/GraphicsTypes.cpp: Removed.
3002         * platform/GraphicsTypes.h: Removed.
3003         * platform/graphics/GraphicsContext.cpp:
3004         (WebCore::GraphicsContextState::GraphicsContextState):
3005         (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
3006         (WebCore::GraphicsContext::createGraphicsContextPrivate):
3007         (WebCore::GraphicsContext::destroyGraphicsContextPrivate):
3008         (WebCore::GraphicsContext::save):
3009         (WebCore::GraphicsContext::restore):
3010         (WebCore::GraphicsContext::font):
3011         (WebCore::GraphicsContext::setFont):
3012         (WebCore::GraphicsContext::pen):
3013         (WebCore::GraphicsContext::setPen):
3014         (WebCore::GraphicsContext::setFillColor):
3015         (WebCore::GraphicsContext::fillColor):
3016         (WebCore::GraphicsContext::updatingControlTints):
3017         (WebCore::GraphicsContext::setUpdatingControlTints):
3018         (WebCore::GraphicsContext::setPaintingDisabled):
3019         (WebCore::GraphicsContext::paintingDisabled):
3020         (WebCore::GraphicsContext::drawImage):
3021         (WebCore::GraphicsContext::drawText):
3022         (WebCore::GraphicsContext::drawHighlightForText):
3023         (WebCore::GraphicsContext::initFocusRing):
3024         (WebCore::GraphicsContext::clearFocusRing):
3025         (WebCore::GraphicsContext::focusRingBoundingRect):
3026         (WebCore::GraphicsContext::addFocusRingRect):
3027         (WebCore::GraphicsContext::focusRingWidth):
3028         (WebCore::GraphicsContext::focusRingOffset):
3029         (WebCore::GraphicsContext::focusRingRects):
3030         (WebCore::GraphicsContext::drawTiledImage):
3031         * platform/graphics/GraphicsContext.h:
3032         * platform/graphics/GraphicsTypes.cpp:
3033         (WebCore::):
3034         (WebCore::parseCompositeOperator):
3035         (WebCore::compositeOperatorName):
3036         (WebCore::parseLineCap):
3037         (WebCore::lineCapName):
3038         (WebCore::parseLineJoin):
3039         (WebCore::lineJoinName):
3040         * platform/graphics/GraphicsTypes.h:
3041         (WebCore::):
3042         * platform/graphics/svg/SVGResource.cpp: Added.
3043         (WebCore::SVGResource::SVGResource):
3044         (WebCore::SVGResource::~SVGResource):
3045         (WebCore::SVGResource::invalidate):
3046         (WebCore::SVGResource::addClient):
3047         (WebCore::SVGResource::clients):
3048         (WebCore::SVGResource::idInRegistry):
3049         (WebCore::SVGResource::setIdInRegistry):
3050         (WebCore::SVGResource::externalRepresentation):
3051         (WebCore::getResourceById):
3052         (WebCore::getPaintServerById):
3053         (WebCore::operator<<):
3054         * platform/graphics/svg/SVGResource.h: Added.
3055         (WebCore::):
3056         (WebCore::SVGResource::isPaintServer):
3057         (WebCore::SVGResource::isFilter):
3058         (WebCore::SVGResource::isClipper):
3059         (WebCore::SVGResource::isMarker):
3060         (WebCore::SVGResource::isMasker):
3061         (WebCore::SVGResourceListener::~SVGResourceListener):
3062         * platform/graphics/svg/SVGResourceClipper.cpp: Added.
3063         (WebCore::SVGResourceClipper::SVGResourceClipper):
3064         (WebCore::SVGResourceClipper::~SVGResourceClipper):
3065         (WebCore::SVGResourceClipper::resetClipData):
3066         (WebCore::SVGResourceClipper::addClipData):
3067         (WebCore::SVGResourceClipper::clipData):
3068         (WebCore::SVGResourceClipper::externalRepresentation):
3069         (WebCore::operator<<):
3070         (WebCore::getClipperById):
3071         * platform/graphics/svg/SVGResourceClipper.h: Added.
3072         (WebCore::ClipDataList::addPath):
3073         (WebCore::SVGResourceClipper::isClipper):
3074         * platform/graphics/svg/SVGResourceImage.h: Added.
3075         * platform/graphics/svg/SVGResourceMarker.cpp: Added.
3076         (WebCore::SVGResourceMarker::SVGResourceMarker):
3077         (WebCore::SVGResourceMarker::~SVGResourceMarker):
3078         (WebCore::SVGResourceMarker::setMarker):
3079         (WebCore::SVGResourceMarker::setRef):
3080         (WebCore::SVGResourceMarker::draw):
3081         (WebCore::SVGResourceMarker::externalRepresentation):
3082         (WebCore::getMarkerById):
3083         * platform/graphics/svg/SVGResourceMarker.h: Added.
3084         (WebCore::SVGResourceMarker::refX):
3085         (WebCore::SVGResourceMarker::refY):
3086         (WebCore::SVGResourceMarker::setAngle):
3087         (WebCore::SVGResourceMarker::setAutoAngle):
3088         (WebCore::SVGResourceMarker::angle):
3089         (WebCore::SVGResourceMarker::setUseStrokeWidth):
3090         (WebCore::SVGResourceMarker::useStrokeWidth):
3091         (WebCore::SVGResourceMarker::isMarker):
3092         * platform/graphics/svg/SVGResourceMasker.cpp: Added.
3093         (WebCore::SVGResourceMasker::SVGResourceMasker):
3094         (WebCore::SVGResourceMasker::~SVGResourceMasker):
3095         (WebCore::SVGResourceMasker::setMask):
3096         (WebCore::SVGResourceMasker::mask):
3097         (WebCore::SVGResourceMasker::externalRepresentation):
3098         (WebCore::getMaskerById):
3099         * platform/graphics/svg/SVGResourceMasker.h: Added.
3100         (WebCore::SVGResourceMasker::isMasker):
3101         * platform/graphics/svg/cg/SVGResourceClipperCg.mm: Added.
3102         (WebCore::SVGResourceClipper::applyClip):
3103         * platform/graphics/svg/cg/SVGResourceImageCg.mm: Added.
3104         (WebCore::SVGResourceImage::SVGResourceImage):
3105         (WebCore::SVGResourceImage::~SVGResourceImage):
3106         (WebCore::SVGResourceImage::init):
3107         (WebCore::SVGResourceImage::size):
3108         (WebCore::SVGResourceImage::cgLayer):
3109         (WebCore::SVGResourceImage::setCGLayer):
3110         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm: Added.
3111         (WebCore::applyLuminanceToAlphaFilter):
3112         (WebCore::applyExpandAlphatoGrayscaleFilter):
3113         (WebCore::transformImageIntoGrayscaleMask):
3114         (WebCore::SVGResourceMasker::applyMask):
3115         * platform/graphics/svg/qt/SVGResourceClipperQt.cpp: Added.
3116         (WebCore::SVGResourceClipper::applyClip):
3117         * platform/graphics/svg/qt/SVGResourceImageQt.cpp: Added.
3118         (WebCore::SVGResourceImage::init):
3119         (WebCore::SVGResourceImage::size):
3120         * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp: Added.
3121         (WebCore::SVGResourceMasker::applyMask):
3122         * platform/qt/GraphicsContextQt.cpp:
3123         * rendering/RenderPath.cpp:
3124         (WebCore::RenderPath::paint):
3125         (WebCore::DrawMarkersData::DrawMarkersData):
3126         (WebCore::RenderPath::drawMarkersIfNeeded):
3127         * rendering/RenderSVGContainer.cpp:
3128         (WebCore::RenderSVGContainer::paint):
3129         * rendering/RenderSVGImage.cpp:
3130         (WebCore::RenderSVGImage::paint):
3131         * rendering/SVGInlineFlowBox.cpp:
3132         (WebCore::paintSVGInlineFlow):
3133
3134 2006-10-30  John Sullivan  <sullivan@apple.com>
3135
3136         Reviewed by Brady
3137         
3138         - minor cleanup to make future patches clearer
3139
3140         * bridge/mac/FrameMac.mm:
3141         (WebCore::FrameMac::advanceToNextMisspelling):
3142         renamed misspelling to misspellingNSRange for clarity; changed > 0 test to == 0 test
3143         with "continue" to better match structure of similar code in markMisspellings; a few
3144         other style tweaks.
3145         
3146         (WebCore::FrameMac::markMisspellings):
3147         renamed misspelling to misspellingNSRange for clarity; removed unnecessary braces around
3148         a block just after a break and outdented accordingly.
3149
3150 2006-10-30  John Sullivan  <sullivan@apple.com>
3151
3152         Reviewed by Geoff Garen
3153         
3154         WebCore part of change to push the code that updates the spelling panel
3155         into WebCore, in preparation for some grammar-checking stuff.
3156
3157         * bridge/mac/FrameMac.h:
3158         * bridge/mac/FrameMac.mm:
3159         (WebCore::FrameMac::advanceToNextMisspelling):
3160         no more return value for this method, and update the spelling panel with
3161         the misspelled word here rather than in the WebKit callers.
3162
3163 2006-10-30  Oliver Hunt  <oliver@apple.com>
3164
3165         Reviewed by Anders.
3166
3167         Roll out last patch
3168
3169         * CMakeLists.txt:
3170         * ChangeLog:
3171         * WebCore.xcodeproj/project.pbxproj:
3172         * graphics/svg/SVGResource.cpp:
3173         * graphics/svg/SVGResourceClipper.cpp:
3174         * graphics/svg/SVGResourceClipper.h:
3175         * graphics/svg/SVGResourceImage.h:
3176         * graphics/svg/SVGResourceListener.h:
3177         * graphics/svg/SVGResourceMarker.cpp:
3178         * graphics/svg/SVGResourceMarker.h:
3179         * graphics/svg/SVGResourceMasker.cpp:
3180         * graphics/svg/SVGResourceMasker.h:
3181         * kcanvas/KCanvasClipper.cpp: Added.
3182         (WebCore::operator<<):
3183         (WebCore::KCanvasClipper::KCanvasClipper):
3184         (WebCore::KCanvasClipper::~KCanvasClipper):
3185         (WebCore::KCanvasClipper::resetClipData):
3186         (WebCore::KCanvasClipper::addClipData):
3187         (WebCore::KCanvasClipper::clipData):
3188         (WebCore::KCanvasClipper::externalRepresentation):
3189         (WebCore::getClipperById):
3190         * kcanvas/KCanvasClipper.h: Added.
3191         (WebCore::KCClipData::windRule):
3192         (WebCore::KCClipDataList::KCClipDataList):
3193         (WebCore::KCClipDataList::addPath):
3194         (WebCore::KCanvasClipper::isClipper):
3195         * kcanvas/KCanvasFilters.cpp:
3196         (WebCore::getFilterById):
3197         * kcanvas/KCanvasFilters.h:
3198         * kcanvas/KCanvasImage.h: Added.
3199         (WebCore::KCanvasImage::KCanvasImage):
3200         (WebCore::KCanvasImage::~KCanvasImage):
3201         * kcanvas/KCanvasMarker.cpp: Added.
3202         (WebCore::KCanvasMarker::KCanvasMarker):
3203         (WebCore::KCanvasMarker::~KCanvasMarker):
3204         (WebCore::KCanvasMarker::setMarker):
3205         (WebCore::KCanvasMarker::setRef):
3206         (WebCore::KCanvasMarker::refX):
3207         (WebCore::KCanvasMarker::refY):
3208         (WebCore::KCanvasMarker::setAngle):
3209         (WebCore::KCanvasMarker::angle):
3210         (WebCore::KCanvasMarker::setAutoAngle):
3211         (WebCore::KCanvasMarker::setUseStrokeWidth):
3212         (WebCore::KCanvasMarker::useStrokeWidth):
3213         (WebCore::KCanvasMarker::draw):
3214         (WebCore::KCanvasMarker::externalRepresentation):
3215         (WebCore::getMarkerById):
3216         * kcanvas/KCanvasMarker.h: Added.
3217         (WebCore::KCanvasMarker::isMarker):
3218         * kcanvas/KCanvasMasker.cpp: Added.
3219         (WebCore::KCanvasMasker::KCanvasMasker):
3220         (WebCore::KCanvasMasker::~KCanvasMasker):
3221         (WebCore::KCanvasMasker::setMask):
3222         (WebCore::KCanvasMasker::externalRepresentation):
3223         (WebCore::getMaskerById):
3224         * kcanvas/KCanvasMasker.h: Added.
3225         (WebCore::KCanvasMasker::isMasker):
3226         (WebCore::KCanvasMasker::mask):
3227         * kcanvas/KCanvasResource.cpp: Added.
3228         (WebCore::operator<<):
3229         (WebCore::KCanvasResource::KCanvasResource):
3230         (WebCore::KCanvasResource::~KCanvasResource):
3231         (WebCore::KCanvasResource::addClient):
3232         (WebCore::KCanvasResource::clients):
3233         (WebCore::KCanvasResource::invalidate):
3234         (WebCore::KCanvasResource::idInRegistry):
3235         (WebCore::KCanvasResource::setIdInRegistry):
3236         (WebCore::KCanvasResource::externalRepresentation):
3237         (WebCore::getResourceById):
3238         (WebCore::getPaintServerById):
3239         * kcanvas/KCanvasResource.h:
3240         (WebCore::):
3241         (WebCore::KCanvasResource::isPaintServer):
3242         (WebCore::KCanvasResource::isFilter):
3243         (WebCore::KCanvasResource::isClipper):
3244         (WebCore::KCanvasResource::isMarker):
3245         (WebCore::KCanvasResource::isMasker):
3246         * kcanvas/KCanvasResourceListener.h: Added.
3247         (KCanvasResourceListener::KCanvasResourceListener):
3248         (KCanvasResourceListener::~KCanvasResourceListener):
3249         * kcanvas/KCanvasTreeDebug.cpp:
3250         (WebCore::writeRenderResources):
3251         * kcanvas/device/KRenderingDevice.h:
3252         * kcanvas/device/KRenderingPaintServer.h:
3253         (WebCore::KRenderingPaintServer::KRenderingPaintServer):
3254         (WebCore::KRenderingPaintServer::idInRegistry):
3255         (WebCore::KRenderingPaintServer::setIdInRegistry):
3256         * kcanvas/device/KRenderingPaintServerGradient.cpp:
3257         (WebCore::KRenderingPaintServerGradient::listener):
3258         (WebCore::KRenderingPaintServerGradient::setListener):
3259         * kcanvas/device/KRenderingPaintServerGradient.h:
3260         * kcanvas/device/KRenderingPaintServerPattern.cpp:
3261         (WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
3262         (WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
3263         (WebCore::KRenderingPaintServerPattern::tile):
3264         (WebCore::KRenderingPaintServerPattern::setTile):
3265         (WebCore::KRenderingPaintServerPattern::listener):
3266         (WebCore::KRenderingPaintServerPattern::setListener):
3267         * kcanvas/device/KRenderingPaintServerPattern.h:
3268         * kcanvas/device/KRenderingPaintServerSolid.h:
3269         * kcanvas/device/qt/KCanvasClipperQt.cpp:
3270         (WebCore::KCanvasClipperQt::applyClip):
3271         * kcanvas/device/qt/KCanvasClipperQt.h:
3272         (WebCore::KCanvasClipperQt::KCanvasClipperQt):
3273         * kcanvas/device/qt/KRenderingDeviceQt.cpp:
3274         (WebCore::KRenderingDeviceQt::contextForImage):
3275         (WebCore::KRenderingDeviceQt::createResource):
3276         (WebCore::KRenderingDeviceQt::createPaintServer):
3277         * kcanvas/device/qt/KRenderingDeviceQt.h:
3278         * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
3279         * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
3280         * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
3281         * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
3282         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
3283         (WebCore::KCanvasFilterQuartz::getCIFilterStack):
3284         * kcanvas/device/quartz/KCanvasItemQuartz.mm:
3285         * kcanvas/device/quartz/KCanvasMaskerQuartz.h:
3286         (WebCore::KCanvasMaskerQuartz::KCanvasMaskerQuartz):
3287         * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
3288         (WebCore::applyLuminanceToAlphaFilter):
3289         (WebCore::applyExpandAlphatoGrayscaleFilter):
3290         (WebCore::transformImageIntoGrayscaleMask):
3291         (WebCore::KCanvasMaskerQuartz::applyMask):
3292         * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
3293         (WebCore::KCanvasClipperQuartz::KCanvasClipperQuartz):
3294         (WebCore::KCanvasImageQuartz::KCanvasImageQuartz):
3295         (WebCore::KCanvasImageQuartz::init):
3296         (WebCore::KCanvasImageQuartz::size):
3297         * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
3298         (WebCore::KCanvasClipperQuartz::applyClip):
3299         (WebCore::KCanvasImageQuartz::~KCanvasImageQuartz):
3300         (WebCore::KCanvasImageQuartz::cgLayer):
3301         (WebCore::KCanvasImageQuartz::setCGLayer):
3302         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
3303         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
3304         (WebCore::KRenderingDeviceQuartz::contextForImage):
3305         (WebCore::KRenderingDeviceQuartz::createPaintServer):
3306         (WebCore::KRenderingDeviceQuartz::createResource):
3307         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
3308         (WebCore::KRenderingPaintServerGradientQuartz::KRenderingPaintServerGradientQuartz):
3309         (WebCore::KRenderingPaintServerGradientQuartz::~KRenderingPaintServerGradientQuartz):
3310         (WebCore::KRenderingPaintServerGradientQuartz::setup):
3311         (WebCore::KRenderingPaintServerGradientQuartz::teardown):
3312         * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
3313         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
3314         (WebCore::patternCallback):
3315         (WebCore::KRenderingPaintServerPatternQuartz::setup):
3316         * kcanvas/device/quartz/QuartzSupport.mm:
3317         * ksvg2/misc/KCanvasRenderingStyle.cpp:
3318         (WebCore::sharedSolidPaintServer):
3319         * ksvg2/svg/SVGClipPathElement.cpp:
3320         (WebCore::SVGClipPathElement::SVGClipPathElement):
3321         (WebCore::SVGClipPathElement::~SVGClipPathElement):
3322         (WebCore::SVGClipPathElement::canvasResource):
3323         * ksvg2/svg/SVGClipPathElement.h:
3324         * ksvg2/svg/SVGFEImageElement.cpp:
3325         * ksvg2/svg/SVGFilterElement.cpp:
3326         (WebCore::SVGFilterElement::SVGFilterElement):
3327         (WebCore::SVGFilterElement::~SVGFilterElement):
3328         (WebCore::SVGFilterElement::canvasResource):
3329         * ksvg2/svg/SVGFilterElement.h:
3330         * ksvg2/svg/SVGGradientElement.cpp:
3331         (WebCore::SVGGradientElement::SVGGradientElement):
3332         (WebCore::SVGGradientElement::~SVGGradientElement):
3333         (WebCore::SVGGradientElement::canvasResource):
3334         (WebCore::SVGGradientElement::resourceNotification):
3335         * ksvg2/svg/SVGGradientElement.h:
3336         * ksvg2/svg/SVGImageElement.cpp:
3337         * ksvg2/svg/SVGLinearGradientElement.cpp:
3338         (WebCore::SVGLinearGradientElement::buildGradient):
3339         * ksvg2/svg/SVGLinearGradientElement.h:
3340         * ksvg2/svg/SVGMarkerElement.cpp:
3341         (WebCore::SVGMarkerElement::SVGMarkerElement):
3342         (WebCore::SVGMarkerElement::~SVGMarkerElement):
3343         (WebCore::SVGMarkerElement::canvasResource):
3344         * ksvg2/svg/SVGMarkerElement.h:
3345         * ksvg2/svg/SVGMaskElement.cpp:
3346         (WebCore::SVGMaskElement::SVGMaskElement):
3347         (WebCore::SVGMaskElement::~SVGMaskElement):
3348         (WebCore::SVGMaskElement::drawMaskerContent):
3349         (WebCore::SVGMaskElement::canvasResource):
3350         * ksvg2/svg/SVGMaskElement.h:
3351         * ksvg2/svg/SVGPatternElement.cpp:
3352         (WebCore::SVGPatternElement::SVGPatternElement):
3353         (WebCore::SVGPatternElement::~SVGPatternElement):
3354         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
3355         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
3356         (WebCore::SVGPatternElement::canvasResource):
3357         * ksvg2/svg/SVGPatternElement.h:
3358         * ksvg2/svg/SVGRadialGradientElement.cpp:
3359         (WebCore::SVGRadialGradientElement::buildGradient):
3360         * ksvg2/svg/SVGRadialGradientElement.h:
3361         * ksvg2/svg/SVGStyledElement.h:
3362         (WebCore::SVGStyledElement::canvasResource):
3363         * platform/GraphicsContext.cpp: Added.
3364         (WebCore::GraphicsContextState::GraphicsContextState):
3365         (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
3366         (WebCore::GraphicsContext::createGraphicsContextPrivate):
3367         (WebCore::GraphicsContext::destroyGraphicsContextPrivate):
3368         (WebCore::GraphicsContext::save):
3369         (WebCore::GraphicsContext::restore):
3370         (WebCore::GraphicsContext::font):
3371         (WebCore::GraphicsContext::setFont):
3372         (WebCore::GraphicsContext::pen):
3373         (WebCore::GraphicsContext::setPen):
3374         (WebCore::GraphicsContext::setFillColor):
3375         (WebCore::GraphicsContext::fillColor):
3376         (WebCore::GraphicsContext::updatingControlTints):
3377         (WebCore::GraphicsContext::setUpdatingControlTints):
3378         (WebCore::GraphicsContext::setPaintingDisabled):
3379         (WebCore::GraphicsContext::paintingDisabled):
3380         (WebCore::GraphicsContext::drawImage):
3381         (WebCore::GraphicsContext::drawText):
3382         (WebCore::GraphicsContext::drawHighlightForText):
3383         (WebCore::GraphicsContext::initFocusRing):
3384         (WebCore::GraphicsContext::clearFocusRing):
3385         (WebCore::GraphicsContext::focusRingBoundingRect):
3386         (WebCore::GraphicsContext::addFocusRingRect):
3387         (WebCore::GraphicsContext::focusRingWidth):
3388         (WebCore::GraphicsContext::focusRingOffset):
3389         (WebCore::GraphicsContext::focusRingRects):
3390         (WebCore::GraphicsContext::drawTiledImage):
3391         * platform/GraphicsContext.h: Added.
3392         * platform/GraphicsTypes.cpp: Added.
3393         (WebCore::):
3394         (WebCore::parseCompositeOperator):
3395         (WebCore::compositeOperatorName):
3396         (WebCore::parseLineCap):
3397         (WebCore::lineCapName):
3398         (WebCore::parseLineJoin):
3399         (WebCore::lineJoinName):
3400         * platform/GraphicsTypes.h: Added.
3401         (WebCore::):
3402         * platform/graphics/GraphicsContext.cpp:
3403         * platform/graphics/GraphicsContext.h:
3404         * platform/graphics/GraphicsTypes.cpp:
3405         * platform/graphics/GraphicsTypes.h:
3406         * platform/qt/GraphicsContextQt.cpp:
3407         * rendering/RenderPath.cpp:
3408         (WebCore::RenderPath::paint):
3409         (WebCore::DrawMarkersData::DrawMarkersData):
3410         (WebCore::RenderPath::drawMarkersIfNeeded):
3411         * rendering/RenderSVGContainer.cpp:
3412         (WebCore::RenderSVGContainer::paint):
3413         * rendering/RenderSVGImage.cpp:
3414         (WebCore::RenderSVGImage::paint):
3415         * rendering/SVGInlineFlowBox.cpp:
3416         (WebCore::paintSVGInlineFlow):
3417
3418 2006-10-30  John Sullivan  <sullivan@apple.com>
3419
3420         Reviewed by Geoff Garen.
3421         
3422         Moved spelling-related methods from bridge to EditorClient. Added one not-yet-used
3423         grammar-related method.
3424
3425         * bridge/EditorClient.h:
3426         declare isContinuousSpellCheckingEnabled(), spellCheckerDocumentTag(), and new
3427         isGrammarCheckingEnabled()
3428         
3429         * bridge/mac/WebCoreFrameBridge.h:
3430         removed bridge equivalents
3431
3432         * bridge/mac/FrameMac.mm:
3433         (WebCore::FrameMac::advanceToNextMisspelling):
3434         convert bridge-using code to editor()->client()-using code
3435         (WebCore::FrameMac::markMisspellingsInAdjacentWords):
3436         ditto
3437         (WebCore::FrameMac::markMisspellings):
3438         ditto
3439         (WebCore::FrameMac::respondToChangedSelection):
3440         ditto
3441         
3442         * editing/Editor.h:
3443         * editing/Editor.cpp:
3444         (WebCore::Editor::client):
3445         new method, returns EditorClient pointer. In an ideal world all the code that needed to
3446         access the EditorClient would be in Editor.cpp, and we wouldn't need this accessor.
3447         But for now it's too tricky to extricate the spelling-related code from FrameMac.mm.
3448
3449 2006-10-30  Geoffrey Garen  <ggaren@apple.com>
3450
3451         Reviewed by Darin.
3452
3453         Removed a number of editing and selection methods from the bridge.
3454         
3455         I moved cross-platform editing and selection code into Editor and 
3456         SelectionController, respecitvely.
3457
3458         I moved ObjC and AppKit stuff up into WebKit, so I ended up exporting
3459         everything + the kitchen sink.
3460         
3461         Specific comments below for interesting things.
3462         
3463         * bindings/objc/DOMInternal.h: Moved exception handling helper methods into
3464         a new file so that WebKit can use them, too. Added a helper method for
3465         handling exceptions when selecting a Range.
3466         * bridge/mac/FrameMac.h: Moved attributedString creation and helper functions into 
3467         WebKit, since they have to do with creating an NSAttributedString for API
3468         consumption, and not much to do with general Frame functionality.
3469         * editing/Editor.h: Moved lastEditCommand tracking (at least the data,
3470         for now) into the Editor. Eventually, the Frame will not have to notify 
3471         the Editor of what the lastEditCommand was, since the Editor will perform
3472         all EditCommands.
3473         * editing/SelectionController.h: The code here is just stuff moved from the bridge.
3474         * editing/SelectionController.cpp:
3475         (WebCore::SelectionController::setSelectedRange): We now explicitly check from DOM exceptions
3476         and return them. The bridge method to select a DOM range did this implicitly,
3477         since all ObjC DOM operations handle DOM exceptions by throwing them as
3478         ObjC exceptions.
3479         * editing/TextAffinity.h: Added helper functions for conversion to NSSelectionAffinity.
3480         The two enumerations are numerically identical, but that's an implementation
3481         detail of TextAffinity that clients shouldn't be required to know about.
3482
3483 2006-10-30  Timothy Hatcher  <timothy@apple.com>
3484
3485         Rolling out the following change because this crash:
3486         <rdar://problem/4806705> REGRESSION: Crash occurs at WebCore::Font::lineSpacing() when loading site (http://www.photoplusexpo.com/ppe/index.jsp) 
3487
3488         And this regression:
3489         <rdar://problem/4728514> REGRESSION: Safari applies the wrong font to BODY element at http://www.apple.com/downloads/dashboard/
3490
3491     2006-09-06  David Harrison  <harrison@apple.com>
3492
3493         Reviewed and tweaked by Tim H. 
3494
3495         <rdar://problem/4564955> WebKit doesn't trigger Auto Font Activation 
3496
3497         If we don't find the font in the available fonts list, call [NSFont fontWithName:size:] 
3498         to trigger a search that will include auto activation. No PLT or iBench perf impact. 
3499         No layout tests affected. Not testable in an automated way that will work on all systems. 
3500
3501         * platform/mac/WebFontCache.mm: 
3502         (+[WebFontCache fontWithFamily:traits:size:]): 
3503
3504 2006-10-30  Justin Garcia  <justin.garcia@apple.com>
3505
3506         Reviewed by harrison
3507
3508         <rdar://problem/4808375>
3509         REGRESSION: TextIterator slowed down, affecting Find on Page & Copy (etc.) (11460)
3510
3511         * editing/TextIterator.cpp:
3512         (WebCore::TextIterator::exitNode): Only create VisiblePositions
3513         when we're going to use them to create a range for an emitted character.
3514         We should further speed TextIterators up by avoiding creating VisiblePositions
3515         for TIs that are only used for the characters they emit (like the one that 
3516         plainText uses).
3517
3518 2006-10-30  Sam Weinig  <sam.weinig@gmail.com>
3519
3520         Reviewed by Mitz.
3521
3522         Fix for http://bugs.webkit.org/show_bug.cgi?id=11441
3523         More rendering code cleaning
3524
3525         * WebCore.xcodeproj/project.pbxproj:
3526         * rendering/RenderApplet.cpp:
3527         (WebCore::RenderApplet::RenderApplet):
3528         (WebCore::RenderApplet::createWidgetIfNecessary):
3529         * rendering/RenderApplet.h:
3530         * rendering/RenderArena.cpp:
3531         (WebCore::):
3532         (WebCore::RenderArena::RenderArena):
3533         (WebCore::RenderArena::allocate):
3534         (WebCore::RenderArena::free):
3535         * rendering/RenderArena.h:
3536         * rendering/RenderBR.cpp:
3537         (WebCore::RenderBR::RenderBR):
3538         (WebCore::RenderBR::baselinePosition):
3539         (WebCore::RenderBR::lineHeight):
3540         (WebCore::RenderBR::setStyle):
3541         (WebCore::RenderBR::caretMinOffset):
3542         (WebCore::RenderBR::positionForCoordinates):
3543         (WebCore::RenderBR::inlineBox):