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