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