b7905af0dd6def4d0b7c48aa479fd60308ea6149
[WebKit-https.git] / WebCore / ChangeLog
1 2006-10-20  Darin Adler  <darin@apple.com>
2
3         Reviewed by John.
4
5         - fixed <rdar://problem/4795716> REGRESSION: User names and passwords aren't being saved (.Mac, etc.) -- WebKit formState passing empty strings
6
7         * loader/mac/WebFormState.mm: (WebCore::FormState::FormState): Fix typo -- need to pass "key"
8         as the key, not the dictionary itself.
9
10 2006-10-20  Alice Liu  <alice.liu@apple.com>
11
12         Reviewed by Maciej.
13
14         This is the initial foundation for the EditingController class and
15         everything else it needs to work.  The idea is that the Frame has an
16         EditingController object that it calls to handle editing commands, the
17         most simple examples being copy/paste.  This controller will handle
18         these editing commands in WebCore, and only hand off to WebKit to call
19         editing delegates (to the let the app intercept editing actions if it
20         wants to).  Thus we need a platform-specific client to which the
21         EditingController hands off the delegate calls, 
22         WebCoreEditingControllerClient.  On the WebCore side this is an 
23         abstract base class, and on the WebKit(Mac) side this is an ObjC++
24         subclass, WebEditingControllerClient.  How does the EditingController
25         get a handle to its platform-specific client?  In WebKit, the creator
26         of a platform-specific Frame creates the client (which is ref-counted)
27         and passes it down the chain of constructors until it gets back to the
28         EditingController, which then refs it in its constructor and derefs in
29         its destructor.
30         
31         No Layout tests needed.
32         
33         * WebCore.xcodeproj/project.pbxproj:
34         Added files and made DomRangeInternal.h and EditingClient.h private headers, necessary for WebKit to compile
35
36         * bridge/EditorClient.h: Added.
37         (WebCore::EditorClient::~EditorClient):
38
39         * bridge/mac/FrameMac.h:
40         Added an EditingClient to the constructor, to pass down to Frame constructor
41
42         * bridge/mac/FrameMac.mm:
43         (WebCore::FrameMac::FrameMac):
44         Passed client down to Frame constructor
45         
46         * bridge/mac/WebCoreFrameBridge.h:
47         Added an EditingClient to the constructor, to pass down to FrameMac constructor
48         
49         * bridge/mac/WebCoreFrameBridge.mm:
50         (-[WebCoreFrameBridge initMainFrameWithPage:withEditorClient:]):
51         (-[WebCoreFrameBridge initSubframeWithOwnerElement:withEditorClient:]):
52         Passed client down to FrameMac constructor
53         
54         * editing/Editor.cpp: Added.
55         Mostly stuf implementations of the following functions, except for a couple.  These are all needed by cut, copy, paste, delete.
56         (WebCore::generalPasteboard):
57         (WebCore::Editor::canCopy):
58         (WebCore::Editor::canCut):
59         (WebCore::Editor::canDelete):
60         (WebCore::Editor::canDeleteRange):
61         (WebCore::Editor::canPaste):
62         (WebCore::Editor::canSmartCopyOrDelete):
63         (WebCore::Editor::deleteSelection):
64         (WebCore::Editor::deleteSelectionWithSmartDelete):
65         (WebCore::Editor::isSelectionRichlyEditable):
66         (WebCore::Editor::pasteAsPlainTextWithPasteboard):
67         (WebCore::Editor::pasteWithPasteboard):
68         (WebCore::Editor::selectedRange):
69         (WebCore::Editor::shouldDeleteRange):
70         (WebCore::Editor::tryDHTMLCopy):
71         (WebCore::Editor::tryDHTMLCut):
72         (WebCore::Editor::tryDHTMLPaste):
73         (WebCore::Editor::writeSelectionToPasteboard):
74         (WebCore::Editor::Editor):
75         (WebCore::Editor::~Editor):
76         (WebCore::Editor::cut):
77         (WebCore::Editor::copy):
78         (WebCore::Editor::paste):
79         (WebCore::Editor::performDelete):
80         
81         * editing/Editor.h: Added.
82         
83         * page/Frame.h:
84         Added an EditingClient to the constructor, to pass down to Editor constructor
85
86         * page/Frame.cpp:
87         (WebCore::Frame::Frame):
88         Passed down to Editor constructor
89         (WebCore::Frame::editor):
90         Accessfor for Editor stored in FramePrivate
91         
92         * page/FramePrivate.h:
93         (WebCore::FramePrivate::FramePrivate):
94         Added an Editor object to the FramePrivate data
95         
96         * platform/Sound.h: Added.
97         Made a platform-independent accessor to a beep function
98         
99         * platform/mac/SoundMac.mm: Added.
100         (WebCore::systemBeep):
101         calls mac system beep
102         
103 2006-10-20  David Hyatt  <hyatt@apple.com>
104
105         Make sure to support the "encoding" property on form elements for
106         legacy compatibility.
107
108         Reviewed by darin/john
109
110         No test cases added.  Not sure how to do a form submission of
111         various encodings as a layout test.
112
113         * html/HTMLFormElement.h:
114         (WebCore::HTMLFormElement::encoding):
115         (WebCore::HTMLFormElement::setEncoding):
116         * html/HTMLFormElement.idl:
117
118 2006-10-20  Nikolas Zimmermann  <zimmermann@kde.org>
119
120         Reviewed and by Anders.
121
122         Fix warnings in JS generation by killing the whole isRefPtr logic,
123         and just using WTF::getPtr as Sam Weinig suggested. Also kill some
124         places using get() where getPtr() is cleaner - not for m_impl.get().
125
126         * CMakeLists.txt: Tiny cleanup + add deps for CodeGenerator(JS).pm on all IDLs.
127         * bindings/scripts/CodeGeneratorJS.pm:
128
129 2006-10-20  Darin Adler  <darin@apple.com>
130
131         - rolled out my loader change; caused world leak and possibly a plug-in crash
132
133 2006-10-20  Anders Carlsson  <acarlsson@apple.com>
134
135         Reviewed by Tim H
136
137         * loader/mac/LoaderFunctionsMac.mm:
138         Autorelease the header NSDictionary.
139         
140 2006-10-20  Anders Carlsson  <acarlsson@apple.com>
141
142         Reviewed by Geoff.
143
144         * bindings/js/kjs_window.cpp:
145         (KJS::Window::timerFired):
146         Check if the timeout id is still in the table before trying to access it. If it isn't in the table
147         it has been deleted inside of the execute method.
148
149 2006-10-20  Anders Carlsson  <acarlsson@apple.com>
150
151         Reviewed by Darin and Geoff.
152
153         Remove debugging output.
154         * xml/xmlhttprequest.cpp:
155         (WebCore::XMLHttpRequest::send):
156
157 2006-10-20  David Harrison  <harrison@apple.com>
158
159         Reviewed by John.
160
161         <rdar://problem/4792755> REGRESSON: Drag selecting is erratic
162
163         No test because it would require autoscrolling, which is not available to layout tests.
164
165         * rendering/RenderLayer.cpp:
166         (WebCore::RenderLayer::autoscroll):
167         Use hitTest() to find the correct node.
168         
169         (WebCore::RenderLayer::hitTest):
170         Trivial source formatting.
171
172 2006-10-20  Nikolas Zimmermann  <zimmermann@kde.org>
173
174         Reviewed and landed by Anders.
175
176         Fix regression introduced during the ResourceLoader transition (Maciej's rewrite).
177
178         * platform/qt/ResourceLoaderManager.cpp:
179         (WebCore::ResourceLoaderManager::add):
180
181 2006-10-20  Darin Adler  <darin@apple.com>
182
183         Reviewed by Adele.
184
185         - convert WebLoader and its 3 subclasses to C++
186
187         Renamed WebLoader to WebCore::WebResourceLoader (should be ResourceLoader, but
188         there's currently another class with that name).
189         Renamed WebMainResourceLoader to WebCore::MainResourceLoader.
190         Renamed WebSubresourceLoader to WebCore::SubresourceLoader.
191         Renamed WebNetscapePlugInStreamLoader to WebCore::NetscapePlugInStreamLoader.
192
193         Converted the classes to C++ and added Objective-C delegates to forward from
194         API that still requires Objective-C.
195
196         Did not yet rename the source files.
197
198         * WebCore.exp: Removed WebLoader, WebNetscapePlugInStreamLoader, and WebSubresourceLoader
199         classes. Added 5 functions from the WebResourceLoader and NetscapePlugInStreamLoader
200         classes.
201
202         * WebCore.xcodeproj/project.pbxproj: Made RetainPtr.h a private header instead of project.
203
204         * platform/cf/RetainPtr.h: Put into the WebCore namespace rather than the WTF namespace.
205
206         * loader/mac/WebLoader.h:
207         * loader/mac/WebLoader.mm:
208         * loader/mac/WebMainResourceLoader.h:
209         * loader/mac/WebMainResourceLoader.mm:
210         * loader/mac/WebNetscapePlugInStreamLoader.h:
211         * loader/mac/WebNetscapePlugInStreamLoader.mm:
212         * loader/mac/WebSubresourceLoader.h:
213         * loader/mac/WebSubresourceLoader.mm:
214         Translate to C++.
215
216         * bridge/mac/WebCoreFrameBridge.mm:
217         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
218         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
219         * loader/mac/WebFrameLoader.h:
220         * loader/mac/WebFrameLoader.mm:
221         (isCaseInsensitiveEqual):
222         (isBackForwardLoadType):
223         (-[WebFrameLoader dealloc]):
224         (-[WebFrameLoader addPlugInStreamLoader:]):
225         (-[WebFrameLoader removePlugInStreamLoader:]):
226         (-[WebFrameLoader setDefersCallbacks:]):
227         (-[WebFrameLoader stopLoadingPlugIns]):
228         (-[WebFrameLoader isLoadingMainResource]):
229         (-[WebFrameLoader isLoadingSubresources]):
230         (-[WebFrameLoader isLoadingPlugIns]):
231         (-[WebFrameLoader stopLoadingSubresources]):
232         (-[WebFrameLoader addSubresourceLoader:]):
233         (-[WebFrameLoader removeSubresourceLoader:]):
234         (-[WebFrameLoader mainResourceData]):
235         (-[WebFrameLoader releaseMainResourceLoader]):
236         (-[WebFrameLoader cancelMainResourceLoad]):
237         (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]):
238         (-[WebFrameLoader stopLoadingWithError:]):
239         (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]):
240         (-[WebFrameLoader archiveLoadPendingForLoader:]):
241         (-[WebFrameLoader cancelPendingArchiveLoadForLoader:]):
242         * loader/mac/WebFrameLoaderClient.h:
243         Call the new C++ API.
244
245 2006-10-20  Nikolas Zimmermann  <zimmermann@kde.org>
246
247         Reviewed and landed by Anders.
248
249         Offer a way for WebKitPart to be able to detect when
250         the webpage has been completly loaded (including subresources).
251
252         Also fix Qt/Linux build by removing PopupMenu.cpp from CMakeLists.txt
253         and removing some functions from PopupMenuQt.cpp, and alter FrameQt.cpp.
254
255         * CMakeLists.txt:
256         * platform/qt/FrameQt.cpp:
257         (WebCore::FrameQt::submitForm):
258         (WebCore::FrameQt::client):
259         * platform/qt/FrameQt.h:
260         * platform/qt/FrameQtClient.cpp:
261         (WebCore::FrameQtClientDefault::setFrame):
262         (WebCore::FrameQtClientDefault::openURL):
263         (WebCore::FrameQtClientDefault::submitForm):
264         (WebCore::FrameQtClientDefault::checkLoaded):
265         (WebCore::FrameQtClientDefault::traverseNextFrameStayWithin):
266         (WebCore::FrameQtClientDefault::numPendingOrLoadingRequests):
267         (WebCore::FrameQtClientDefault::receivedAllData):
268         * platform/qt/FrameQtClient.h:
269         * platform/qt/LoaderFunctionsQt.cpp:
270         (WebCore::CheckCacheObjectStatus):
271         * platform/qt/PopupMenuQt.cpp:
272         * platform/qt/ResourceLoaderManager.cpp:
273         (WebCore::ResourceLoaderManager::ResourceLoaderManager):
274         (WebCore::ResourceLoaderManager::slotResult):
275         (WebCore::ResourceLoaderManager::add):
276         * platform/qt/ResourceLoaderManager.h:
277         * platform/qt/ResourceLoaderQt.cpp:
278         (WebCore::ResourceLoader::start):
279
280 2006-10-20  Steve Falkenburg  <sfalken@apple.com>
281
282         Reviewed by Geoff.
283
284         Fix compiler warnings
285
286         * platform/ResourceLoaderClient.h:
287
288 2006-10-20  Sam Weinig  <sam.weinig@gmail.com>
289
290         Reviewed by Mitz.
291
292         Win32 build fix and cleanup.
293
294         * WebCore.vcproj/WebCore/WebCore.vcproj:
295         * bridge/win/FrameWin.cpp:
296         (WebCore::FrameWin::FrameWin):
297         (WebCore::FrameWin::submitForm):
298         * page/ResourceRequest.h:
299         (WebCore::ResourceRequest::addHTTPHeaderField):
300         * platform/win/TemporaryLinkStubs.cpp:
301         (WebCore::Slider::~Slider):
302         (WebCore::Slider::setMinValue):
303         (WebCore::searchableIndexIntroduction):
304         (WebCore::findNextSentenceFromIndex):
305         (WebCore::findSentenceBoundary):
306         (WebCore::findNextWordFromIndex):
307         (WebCore::FrameWin::getObjectInstanceForWidget):
308         (WebCore::FrameWin::getEmbedInstanceForWidget):
309         (WebCore::FrameWin::runJavaScriptPrompt):
310         (WebCore::FrameWin::restoreDocumentState):
311         (WebCore::FrameWin::partClearedInBegin):
312         (WebCore::FrameWin::createEmptyDocument):
313         (WebCore::FrameWin::overrideMediaType):
314         (WebCore::FrameWin::markedTextRange):
315         (WebCore::FrameWin::passSubframeEventToSubframe):
316         (WebCore::FrameWin::lastEventIsMouseUp):
317         (WebCore::FrameWin::addMessageToConsole):
318         (WebCore::FrameWin::shouldChangeSelection):
319         (WebCore::FrameWin::respondToChangedSelection):
320         (WebCore::FrameWin::createFrame):
321         (WebCore::FrameWin::saveDocumentState):
322         (WebCore::FrameWin::clearUndoRedoOperations):
323         (WebCore::FrameWin::incomingReferrer):
324         (WebCore::FrameWin::markMisspellingsInAdjacentWords):
325         (WebCore::FrameWin::respondToChangedContents):
326         (WebCore::FrameWin::handledOnloadEvents):
327         (WebCore::FrameWin::createPlugin):
328         (WebCore::FrameWin::objectContentType):
329         (WebCore::screenDepthPerComponent):
330         (WebCore::screenIsMonochrome):
331         (WebCore::historyContains):
332         (WebCore::submitButtonDefaultLabel):
333         (WebCore::inputElementAltText):
334         (WebCore::resetButtonDefaultLabel):
335         (WebCore::fileButtonChooseFileLabel):
336         (WebCore::fileButtonNoFileSelectedLabel):
337         (WebCore::defaultLanguage):
338         (WebCore::findWordBoundary):
339         (WebCore::PlugInInfoStore::createPluginInfoForPluginAtIndex):
340         (WebCore::PlugInInfoStore::supportsMIMEType):
341         (WebCore::refreshPlugins):
342         (WebCore::ResourceLoader::assembleResponseHeaders):
343         (WebCore::ResourceLoader::retrieveResponseEncoding):
344         (WebCore::ResourceLoader::startHTTPRequest):
345         (WebCore::TextField::TextField):
346         (WebCore::focusRingColor):
347         (WebCore::setFocusRingColorChangeFunction):
348         (WebCore::PopupMenu::~PopupMenu):
349         (WebCore::PopupMenu::hide):
350
351 2006-10-20  Rob Buis  <buis@kde.org>
352
353         Reviewed by Darin.
354
355         http://bugs.webkit.org/show_bug.cgi?id=11303
356         Path::transform() should be implemented on Qt build
357
358         Use QPainterPath API to implement Path::transform.
359         This fixes svg/custom/clip-path-with-transform.svg on
360         the qt build.
361
362         * platform/qt/PathQt.cpp:
363         (WebCore::Path::transform):
364
365 2006-10-20  Rob Buis  <buis@kde.org>
366
367         Reviewed by Mitz.
368
369         http://bugs.webkit.org/show_bug.cgi?id=11217
370         Cleanup svg coding style
371
372         Cleanup coding style in svg clipping and painting classes.
373
374         * ksvg2/svg/SVGClipPathElement.cpp:
375         (WebCore::SVGClipPathElement::parseMappedAttribute):
376         (WebCore::SVGClipPathElement::canvasResource):
377         * ksvg2/svg/SVGClipPathElement.h:
378         * ksvg2/svg/SVGMarkerElement.cpp:
379         (WebCore::SVGMarkerElement::SVGMarkerElement):
380         (WebCore::SVGMarkerElement::parseMappedAttribute):
381         (WebCore::SVGMarkerElement::setOrientToAngle):
382         (WebCore::SVGMarkerElement::canvasResource):
383         * ksvg2/svg/SVGMarkerElement.h:
384         (WebCore::SVGMarkerElement::rendererIsNeeded):
385         * ksvg2/svg/SVGMaskElement.cpp:
386         (WebCore::SVGMaskElement::SVGMaskElement):
387         (WebCore::SVGMaskElement::parseMappedAttribute):
388         (WebCore::SVGMaskElement::drawMaskerContent):
389         (WebCore::SVGMaskElement::canvasResource):
390         * ksvg2/svg/SVGMaskElement.h:
391         (WebCore::SVGMaskElement::rendererIsNeeded):
392         * ksvg2/svg/SVGPaint.cpp:
393         (WebCore::SVGPaint::setPaint):
394         (WebCore::SVGPaint::cssText):
395         * ksvg2/svg/SVGPaint.h:
396
397 2006-10-20  David Hyatt  <hyatt@apple.com>
398
399         Make sure to do the code that checks the repeatInterval before the timer has been
400         deleted. (Duh.)
401
402         Reviewed by andersca
403
404         * bindings/js/kjs_window.cpp:
405         (KJS::DOMWindowTimer::setNestingLevel):
406         (KJS::Window::timerFired):
407         (KJS::DOMWindowTimer::fired):
408         * platform/Timer.h:
409
410 2006-10-20  David Hyatt  <hyatt@apple.com>
411
412         Honor tiny timer intervals for JS timeouts as they are nested until a cutoff point is reached.
413         At that point clamp to 10ms to prevent excessive CPU usage.
414
415         Reviewed by anders
416
417         * bindings/js/kjs_window.cpp:
418         (KJS::DOMWindowTimer::DOMWindowTimer):
419         (KJS::DOMWindowTimer::nestingLevel):
420         (KJS::Window::installTimeout):
421         (KJS::Window::pauseTimeouts):
422         (KJS::Window::resumeTimeouts):
423         (KJS::DOMWindowTimer::fired):
424         * platform/Timer.h:
425         (WebCore::TimerBase::startRepeating):
426         (WebCore::TimerBase::startOneShot):
427         (WebCore::TimerBase::repeatInterval):
428         (WebCore::TimerBase::augmentRepeatInterval):
429         (WebCore::TimerBase::inHeap):
430         (WebCore::Timer::Timer):
431         (WebCore::Timer::fired):
432
433 2006-10-20  Steve Falkenburg  <sfalken@apple.com>
434
435         Build fix
436
437         * ksvg2/svg/SVGAElement.cpp:
438         (WebCore::SVGAElement::defaultEventHandler):
439
440 2006-10-19  Steve Falkenburg  <sfalken@apple.com>
441
442         Reviewed by Adam.
443
444         Use GetKeyState rather than GetAsyncKeyState since we're
445         calling in these cases in direct response to an event, and want the
446         key state associated with that event.
447         
448         Pass triggering event to url selection method.
449         
450         * bridge/mac/FrameMac.h: Add triggeringEvent parameter
451         * bridge/mac/FrameMac.mm:
452         (WebCore::FrameMac::urlSelected): Add triggeringEvent parameter
453         * bridge/win/FrameWin.cpp:
454         (WebCore::FrameWin::urlSelected): Add triggeringEvent parameter
455         * bridge/win/FrameWin.h: Add triggeringEvent parameter
456         * html/HTMLAnchorElement.cpp:
457         (WebCore::HTMLAnchorElement::defaultEventHandler): Pass triggering event to URL selection method
458         * page/Frame.cpp:
459         (WebCore::Frame::changeLocation): Add 0 as triggeringEvent
460         (WebCore::Frame::urlSelected): Pass through triggeringEvent
461         * page/Frame.h: Add triggeringEvent parameter to urlSelected methods
462         * platform/win/KeyEventWin.cpp:
463         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Use GetKeyState instead of GetAsyncKeyState
464         * platform/win/MouseEventWin.cpp: Use GetKeyState instead of GetAsyncKeyState
465         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
466
467 2006-10-19  David Hyatt  <hyatt@apple.com>
468
469         Correct typos from changing "flush" to "prune" using automated search/replace.
470
471         Change the cache heuristic for flushing to allow a higher watermark before initiating an
472         aggressive prune.  This ensures that small cache sizes are no worse in terms of performance
473         than the old buggy cache.
474
475         Make sizes unsigned instead of ints in the cache's APIs and member variables.
476
477         * loader/Cache.cpp:
478         (WebCore::Cache::prune):
479         (WebCore::Cache::setMaximumSize):
480         * loader/Cache.h:
481         (WebCore::Cache::maximumSize):
482
483 2006-10-19  Anders Carlsson  <acarlsson@apple.com>
484
485         Reviewed by Daddy Hyatt.
486
487         Use a real hash map for the headers.
488
489         * loader/LoaderFunctions.h:
490         * loader/mac/LoaderFunctionsMac.mm:
491         (WebCore::ServeSynchronousRequest):
492         * platform/ResourceLoader.cpp:
493         (WebCore::ResourceLoader::setRequestHeaders):
494         (WebCore::ResourceLoader::requestHeaders):
495         * platform/ResourceLoader.h:
496         * platform/ResourceLoaderInternal.h:
497         * platform/mac/ResourceLoaderMac.mm:
498         (WebCore::ResourceLoader::start):
499         * xml/xmlhttprequest.cpp:
500         (WebCore::XMLHttpRequest::open):
501         (WebCore::XMLHttpRequest::send):
502         (WebCore::XMLHttpRequest::setRequestHeader):
503         (WebCore::XMLHttpRequest::getRequestHeader):
504         * xml/xmlhttprequest.h:
505
506 2006-10-19  Adam Roben  <aroben@apple.com>
507
508         Reviewed by Ada.
509
510         Pippity-poppity popup tweaks.
511
512         * WebCore.xcodeproj/project.pbxproj: Removed PopupMenu.cpp from project.
513         * html/HTMLSelectElement.cpp:
514         (WebCore::HTMLSelectElement::setSelectedIndex): Only fire onChange if
515         requested and the new index is actually different than the old one.
516         * platform/IntPoint.h: Added another casting operator.
517         * platform/PopupMenu.cpp: Removed. The code in here, while
518         platform-independent, was only useful for the NSPopUpButtonCell
519         implementation of popup menus, so I've moved it to PopupMenuMac.mm.
520         * platform/PopupMenu.h: Moved the definition of PopupMenu::create into
521         the header since it's fairly simple. Made some more methods private now
522         that we don't have subclasses and virtual methods anymore.
523         (WebCore::PopupMenu::create):
524         (WebCore::PopupMenu::menuList):
525         (WebCore::PopupMenu::itemHeight):
526         (WebCore::PopupMenu::windowRect):
527         (WebCore::PopupMenu::listIndexAtPoint):
528         (WebCore::PopupMenu::focusedIndex):
529         (WebCore::PopupMenu::setWasClicked):
530         (WebCore::PopupMenu::wasClicked):
531         (WebCore::PopupMenu::setScrollOffset):
532         (WebCore::PopupMenu::scrollOffset):
533         (WebCore::PopupMenu::wheelDelta):
534         * platform/mac/PopupMenuMac.mm: Added the code from PopupMenu.cpp.
535         (WebCore::PopupMenu::populate): Call our own clear() method to clear
536         the menu.
537         * platform/win/IntPointWin.cpp: New casting operator.
538         (WebCore::IntPoint::IntPoint):
539         (WebCore::IntPoint::operator POINTS):
540
541 2006-10-19  Adam Roben  <aroben@apple.com>
542
543         Reviewed by Darin.
544
545         Cleaning up Document::nextFocusNode and Document::previousFocusNode.
546
547         * dom/Document.cpp:
548         (WebCore::Document::nextFocusNode):
549         (WebCore::Document::previousFocusNode):
550
551 2006-10-19  Maciej Stachowiak  <mjs@apple.com>
552
553         Reviewed by Geoff.
554
555         - implement new ResourceRequest API and fix up code as appropriate
556         
557         * bindings/js/kjs_window.cpp:
558         (KJS::createNewWindow):
559         (KJS::WindowFunc::callAsFunction):
560         * bridge/mac/BrowserExtensionMac.mm:
561         (WebCore::BrowserExtensionMac::createNewWindow):
562         * bridge/mac/FrameMac.mm:
563         (WebCore::FrameMac::submitForm):
564         (WebCore::FrameMac::openURLRequest):
565         (WebCore::FrameMac::urlSelected):
566         * bridge/mac/WebCoreFrameBridge.mm:
567         (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]):
568         * dom/DOMImplementation.cpp:
569         (WebCore::addString):
570         (WebCore::isSVG10Feature):
571         (WebCore::isSVG11Feature):
572         * dom/Document.h:
573         * editing/CommandByName.cpp:
574         * editing/JSEditor.cpp:
575         * page/Frame.cpp:
576         (WebCore::Frame::changeLocation):
577         (WebCore::Frame::urlSelected):
578         (WebCore::Frame::requestFrame):
579         (WebCore::Frame::submitForm):
580         * page/Frame.h:
581         * page/FramePrivate.h:
582         * page/ResourceRequest.h:
583         (WebCore::):
584         (WebCore::ResourceRequest::ResourceRequest):
585         (WebCore::ResourceRequest::cachePolicy):
586         (WebCore::ResourceRequest::setCachePolicy):
587         (WebCore::ResourceRequest::timeoutInterval):
588         (WebCore::ResourceRequest::setTimeoutInterval):
589         (WebCore::ResourceRequest::mainDocumentURL):
590         (WebCore::ResourceRequest::setMainDocumentURL):
591         (WebCore::ResourceRequest::httpMethod):
592         (WebCore::ResourceRequest::setHTTPMethod):
593         (WebCore::ResourceRequest::httpHeaderField):
594         (WebCore::ResourceRequest::setHTTPHeaderField):
595         (WebCore::ResourceRequest::httpContentType):
596         (WebCore::ResourceRequest::setHTTPContentType):
597         (WebCore::ResourceRequest::httpReferrer):
598         (WebCore::ResourceRequest::setHTTPReferrer):
599         (WebCore::ResourceRequest::httpUserAgent):
600         (WebCore::ResourceRequest::setHTTPUserAgent):
601         (WebCore::ResourceRequest::httpBody):
602         (WebCore::ResourceRequest::setHTTPBody):
603         (WebCore::ResourceRequest::addHTTPHeaderField):
604         * platform/FontCache.cpp:
605         (WebCore::computeHash):
606         * platform/StringHash.h:
607         (WTF::):
608         * platform/StringImpl.cpp:
609         (WebCore::equalIgnoringCase):
610         * rendering/RenderPartObject.cpp:
611         (WebCore::RenderPartObject::updateWidget):
612
613 2006-10-19  Justin Garcia  <justin.garcia@apple.com>
614
615         Reviewed by levi
616         
617         <rdar://problem/4447885>
618         API: WebView should have a method something like incrementLeftMarginBy: or indentBy:
619         
620         Fixed indent/outdent to only increment the left margin, to match other browsers.
621         Used blockquote class="webkit-indent-blockquote" to do this.  Mail can now
622         implement indent/outdent by customizing the appearance of these blockquotes,
623         instead of using a new API.
624         
625         * css/html4.css: Added margin: 0 0 0 40px for webkit-indent-blockquotes.
626         * editing/IndentOutdentCommand.cpp:
627         (WebCore::indentBlockquoteString): Added.
628         (WebCore::createIndentBlockquoteElement): Added.
629         (WebCore::isIndentBlockquote): Added.
630         (WebCore::isListOrBlockquote): Added.
631         (WebCore::IndentOutdentCommand::IndentOutdentCommand):
632         (WebCore::IndentOutdentCommand::prepareBlockquoteLevelForInsertion): Fixed
633         a bug in the code that added an extra br if the placeholder collapsed upon insertion.
634         Used the new indentBlockquote checks and enclosing element getters.  
635         (WebCore::IndentOutdentCommand::indentRegion): Ditto.
636         (WebCore::IndentOutdentCommand::outdentParagraph): Ditto.  Cleaned up the
637         logic to pull the selection out of a list a bit.
638         * editing/htmlediting.cpp:
639         (WebCore::enclosingNodeOfType): Added this generic enclosing element getter.
640         * editing/htmlediting.h:
641
642 2006-10-19  Timothy Hatcher  <timothy@apple.com>
643
644         Rolling out the this change since it caused a bad regression:
645         <rdar://problem/4788524> REGRESSION: Incomplete repaint of text area when deleting (11277)
646
647 2006-10-12  Adele Peterson  <adele@apple.com>
648           
649         Reviewed by Dave Harrison.
650           
651         - Fixed <rdar://problem/4650813> REGRESSION: typing in a textarea in Safari is extremely slow (sample shows focus ring drawing)
652           
653         * rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout):
654         Make subtree layouts work for textareas as well as text fields.
655
656 2006-10-19  Nikolas Zimmermann  <zimmermann@kde.org>
657
658         Reviewed and landed by Anders.
659
660         Fix Qt/Linux build.
661
662         * CMakeLists.txt:
663         * loader/Cache.h:
664         * platform/qt/BrowserExtensionQt.cpp:
665         * platform/qt/BrowserExtensionQt.h:
666         * platform/qt/CursorQt.cpp:
667         (WebCore::pointerCursor):
668         * platform/qt/LoaderFunctionsQt.cpp:
669         (WebCore::NumberOfPendingOrLoadingRequests):
670         (WebCore::CheckCacheObjectStatus):
671         * platform/qt/ResourceLoaderQt.cpp:
672         (WebCore::ResourceLoader::retrieveResponseEncoding):
673         (WebCore::ResourceLoader::receivedResponse):
674
675 2006-10-19  Sam Weinig  <sam.weinig@gmail.com>
676
677         Reviewed by ap.
678
679         Win32 build fix.
680
681         * bridge/win/FrameWin.cpp:
682         * bridge/win/FrameWin.h:
683         * platform/win/TemporaryLinkStubs.cpp:
684         (WebCore::ResourceLoader::retrieveResponseEncoding):
685
686 2006-10-19  Alexey Proskuryakov  <ap@nypop.com>
687
688         Reviewed by Mitz.
689
690         http://bugs.webkit.org/show_bug.cgi?id=11141
691         REGRESSION(r16681-r16691): CSS '@import' doesn't respect HTML Base element
692
693         Undo one misguided change made in bug 11011 - stop setting inline stylesheet's href
694         to document URL. This matches WinIE and partially matches Firefox - although the latter
695         reports the href as if it were inherited, it still doesn't use it when resolving URIs in
696         @import rules.
697
698         Test: http/tests/uri/css-href.php
699
700         * html/HTMLStyleElement.cpp:
701         (WebCore::HTMLStyleElement::childrenChanged):
702         * ksvg2/svg/SVGStyleElement.cpp:
703         (WebCore::SVGStyleElement::childrenChanged):
704
705 2006-10-19  Anders Carlsson  <acarlsson@apple.com>
706
707         * loader/Cache.cpp:
708         Get rid of #include "loader.h", Cache.h already includes this and it breaks on operating systems
709         with case-sensitive file systems.
710
711 2006-10-19  Anders Carlsson  <acarlsson@apple.com>
712
713         Reviewed by Maciej, Brady.
714
715         Remove "charset" from the ResourceLoader metadata map and use 
716         a getter function instead. Also, rename charset to encoding in a couple of places.
717         
718         * loader/CachedCSSStyleSheet.cpp:
719         (WebCore::CachedCSSStyleSheet::setEncoding):
720         * loader/CachedCSSStyleSheet.h:
721         * loader/CachedResource.h:
722         (WebCore::CachedResource::setEncoding):
723         * loader/CachedScript.cpp:
724         (WebCore::CachedScript::setEncoding):
725         * loader/CachedScript.h:
726         * loader/CachedXBLDocument.cpp:
727         (WebCore::CachedXBLDocument::setEncoding):
728         * loader/CachedXBLDocument.h:
729         * loader/CachedXSLStyleSheet.cpp:
730         (WebCore::CachedXSLStyleSheet::setEncoding):
731         * loader/CachedXSLStyleSheet.h:
732         * loader/loader.cpp:
733         (WebCore::Loader::receivedResponse):
734         * platform/ResourceLoader.cpp:
735         (WebCore::ResourceLoader::responseEncoding):
736         (WebCore::ResourceLoader::queryMetaData):
737         * platform/ResourceLoader.h:
738         * platform/ResourceLoaderInternal.h:
739         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
740         * platform/mac/ResourceLoaderMac.mm:
741         (WebCore::ResourceLoader::retrieveResponseEncoding):
742         (WebCore::ResourceLoader::receivedResponse):
743         * xml/xmlhttprequest.cpp:
744         (WebCore::XMLHttpRequest::receivedData):
745
746 2006-10-19  David Hyatt  <hyatt@apple.com>
747
748         Rewrite of the WebCore memory cache.  The following changes have been made (along with many more):
749
750         (1) Referenced objects are now also cached.
751
752         (2) Pruning of the cache will occur once the cache is both full and in addition
753         more than half full with unreferenced objects.
754
755         (3) The prune is much more aggressive now, since referenced objects are counted when
756         pruning.  The cache will therefore often prune out every unreferenced object if lots of
757         windows/tabs are open.
758
759         (4) Consolidated the request methods for various types of resources to go through a single
760         requestResource bottleneck function.
761
762         (5) deref on CachedResource is no longer virtual, since the implementation in every subclass was
763         identical.
764
765         (6) Changed "object" to "resource" everywhere.
766
767         (7) The Cache is now an actual object, obtained via cache().
768
769         (8) Fixed bugs with the autoload images preference so that it would really work properly when disabled
770         and enabled.
771
772         (9) Tweaked ImageDocuments to set up the status properly for the CachedResource that they use.
773
774         (10) Fixed the LRU-SP algorithm so that the LRU aspect really kicks in (by leaving the live objects
775         in the LRU lists).  Also fixed a bug with the "-SP" part of the algorithm where the access count was
776         being incorrectly weighted too much due to a math error.
777
778         (11) Fixed a bug where the old cache could grow without bound because it didn't know anything about
779         the size of referenced resources.
780
781         Reviewed by Maciej, bradee-oh
782
783         * bridge/mac/WebCoreCache.mm:
784         (+[WebCoreCache statistics]):
785         (+[WebCoreCache empty]):
786         (+[WebCoreCache setDisabled:]):
787         * bridge/mac/WebCoreFrameBridge.mm:
788         (-[WebCoreFrameBridge initMainFrameWithPage:]):
789         (-[WebCoreFrameBridge getData:andResponse:forURL:]):
790         (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
791         * css/CSSImageValue.cpp:
792         (WebCore::CSSImageValue::image):
793         * dom/XMLTokenizer.cpp:
794         (WebCore::openFunc):
795         * html/HTMLImageLoader.cpp:
796         (WebCore::HTMLImageLoader::updateFromElement):
797         * loader/Cache.cpp:
798         (WebCore::cache):
799         (WebCore::Cache::Cache):
800         (WebCore::createResource):
801         (WebCore::Cache::requestResource):
802         (WebCore::Cache::resourceForURL):
803         (WebCore::Cache::prune):
804         (WebCore::Cache::setMaximumSize):
805         (WebCore::Cache::remove):
806         (WebCore::Cache::addDocLoader):
807         (WebCore::Cache::removeDocLoader):
808         (WebCore::fastLog2):
809         (WebCore::Cache::lruListFor):
810         (WebCore::Cache::removeFromLRUList):
811         (WebCore::Cache::insertInLRUList):
812         (WebCore::Cache::resourceAccessed):
813         (WebCore::Cache::adjustSize):
814         (WebCore::Cache::getStatistics):
815         (WebCore::Cache::setDisabled):
816         * loader/Cache.h:
817         (WebCore::LRUList::LRUList):
818         (WebCore::Cache::loader):
819         (WebCore::Cache::maximumSize):
820         (WebCore::Cache::disabled):
821         (WebCore::Cache::addToLiveObjectSize):
822         (WebCore::Cache::removeFromLiveObjectSize):
823         (WebCore::Cache::TypeStatistic::TypeStatistic):
824         * loader/CachedCSSStyleSheet.cpp:
825         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
826         * loader/CachedCSSStyleSheet.h:
827         * loader/CachedImage.cpp:
828         (WebCore::CachedImage::CachedImage):
829         (WebCore::CachedImage::~CachedImage):
830         (WebCore::brokenImage):
831         (WebCore::nullImage):
832         (WebCore::CachedImage::image):
833         (WebCore::CachedImage::data):
834         * loader/CachedImage.h:
835         (WebCore::CachedImage::stillNeedsLoad):
836         * loader/CachedResource.cpp:
837         (WebCore::CachedResource::CachedResource):
838         (WebCore::CachedResource::~CachedResource):
839         (WebCore::CachedResource::finish):
840         (WebCore::CachedResource::setExpireDate):
841         (WebCore::CachedResource::isExpired):
842         (WebCore::CachedResource::setRequest):
843         (WebCore::CachedResource::ref):
844         (WebCore::CachedResource::deref):
845         (WebCore::CachedResource::setSize):
846         * loader/CachedResource.h:
847         (WebCore::CachedResource::):
848         (WebCore::CachedResource::setCharset):
849         (WebCore::CachedResource::url):
850         (WebCore::CachedResource::type):
851         (WebCore::CachedResource::referenced):
852         (WebCore::CachedResource::count):
853         (WebCore::CachedResource::status):
854         (WebCore::CachedResource::size):
855         (WebCore::CachedResource::isLoaded):
856         (WebCore::CachedResource::setLoading):
857         (WebCore::CachedResource::isImage):
858         (WebCore::CachedResource::accessCount):
859         (WebCore::CachedResource::increaseAccessCount):
860         (WebCore::CachedResource::setInCache):
861         (WebCore::CachedResource::inCache):
862         (WebCore::CachedResource::cachePolicy):
863         (WebCore::CachedResource::response):
864         (WebCore::CachedResource::allData):
865         (WebCore::CachedResource::canDelete):
866         (WebCore::CachedResource::schedule):
867         (WebCore::CachedResource::accept):
868         (WebCore::CachedResource::setAccept):
869         * loader/CachedScript.cpp:
870         (WebCore::CachedScript::CachedScript):
871         * loader/CachedScript.h:
872         * loader/CachedXBLDocument.cpp:
873         * loader/CachedXBLDocument.h:
874         * loader/CachedXSLStyleSheet.cpp:
875         (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet):
876         * loader/CachedXSLStyleSheet.h:
877         * loader/DocLoader.cpp:
878         (WebCore::DocLoader::DocLoader):
879         (WebCore::DocLoader::~DocLoader):
880         (WebCore::DocLoader::checkForReload):
881         (WebCore::DocLoader::requestImage):
882         (WebCore::DocLoader::requestCSSStyleSheet):
883         (WebCore::DocLoader::requestScript):
884         (WebCore::DocLoader::requestXSLStyleSheet):
885         (WebCore::DocLoader::requestXBLDocument):
886         (WebCore::DocLoader::requestResource):
887         (WebCore::DocLoader::setAutoLoadImages):
888         (WebCore::DocLoader::removeCachedResource):
889         * loader/DocLoader.h:
890         (WebCore::DocLoader::cachedResource):
891         (WebCore::DocLoader::allCachedResources):
892         (WebCore::DocLoader::autoLoadImages):
893         (WebCore::DocLoader::cachePolicy):
894         (WebCore::DocLoader::expireDate):
895         (WebCore::DocLoader::frame):
896         (WebCore::DocLoader::doc):
897         (WebCore::DocLoader::loadInProgress):
898         * loader/ImageDocument.cpp:
899         (WebCore::ImageTokenizer::finish):
900         * loader/loader.cpp:
901         (WebCore::Loader::receivedAllData):
902         (WebCore::Loader::cancelRequests):
903         * loader/mac/LoaderFunctionsMac.mm:
904         (WebCore::NumberOfPendingOrLoadingRequests):
905         (WebCore::CheckCacheObjectStatus):
906         * page/Frame.cpp:
907         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
908         (WebCore::Frame::Frame):
909         (WebCore::Frame::stopLoading):
910         (WebCore::Frame::setAutoLoadImages):
911         (WebCore::Frame::autoLoadImages):
912         (WebCore::Frame::begin):
913         (WebCore::Frame::checkCompleted):
914         (WebCore::Frame::reparseConfiguration):
915         * page/Frame.h:
916         * xml/XSLTProcessor.cpp:
917         (WebCore::docLoaderFunc):
918         * xml/xmlhttprequest.cpp:
919         (WebCore::XMLHttpRequest::send):
920
921 2006-10-18  Maciej Stachowiak  <mjs@apple.com>
922
923         Reviewed by Geoff.
924
925         - remove vestiges of KXMLCore name (former name of WTF).
926
927         * config.h:
928
929 2006-10-18  Geoffrey Garen  <ggaren@apple.com>
930
931         Reviewed by Beth.
932         
933         Fixed http://bugs.webkit.org/show_bug.cgi?id=11222
934
935         Some global JS objects lacked references to their property hashtables,
936         so for-in enumeration didn't work. I added the references, and then removed
937         a few bogus properties from the tables. The bogus ones got in there through
938         bit rot.
939         
940         We should come up with some solution to these hand-written bindings bugs.
941         Maybe we could use a script to autogenerate them or something.
942
943         * bindings/js/kjs_window.cpp:
944         (KJS::):
945         (KJS::History::getValueProperty):
946
947 2006-10-18  Adam Roben  <aroben@apple.com>
948
949         Reviewed by Brady.
950
951         Change Shift-Tab to generate keyIdentifier U+000009 (Tab) instead of
952         U+000019 (Backtab). This matches our windowsKeyCode for this key
953         combination.
954
955         * platform/mac/KeyEventMac.mm:
956         (WebCore::keyIdentifierForKeyEvent):
957
958 2006-10-18  Steve Falkenburg  <sfalken@apple.com>
959
960         Reviewed by Adam, Brady.
961
962         Loader tweaks.
963
964         * platform/cf/ResourceLoaderCFNet.cpp:
965         (WebCore::didFinishLoading):
966         (WebCore::didFail):
967         (WebCore::didReceiveChallenge):
968         (WebCore::runLoaderThread):
969         (WebCore::ResourceLoader::start):
970         (WebCore::ResourceLoader::cancel):
971
972 2006-10-18  Timothy Hatcher  <timothy@apple.com>
973
974         Reviewed by Darin.
975
976         <rdar://problem/4752138> Manipulating popup in HTML page crashed Xcode
977
978         - Store the Mac popup button cell as a RetainPtr to prevent GC collection.
979         - Convert more ObjC local statics and member variables to use RetainPtr.
980         - Convert more CFRetain/CFRelease to HardRetain/HardRelease.
981
982         * bindings/objc/DOM.mm:
983         (ObjCNodeFilterCondition::ObjCNodeFilterCondition): use HardRetain and not CFRetain
984         (ObjCNodeFilterCondition::~ObjCNodeFilterCondition): use HardRelease and not CFRelease
985         * bridge/mac/AXObjectCacheMac.mm:
986         (WebCore::AXObjectCache::~AXObjectCache): use HardRelease and not CFRelease
987         (WebCore::AXObjectCache::get): use HardRetain and not CFRetain
988         (WebCore::AXObjectCache::remove): use HardRelease and not CFRelease
989         * bridge/mac/WebCoreFrameBridge.mm:
990         (+[WebCoreFrameBridge supportedImageResourceMIMETypes]): use RetainPtr
991         (+[WebCoreFrameBridge supportedImageMIMETypes]): ditto
992         * bridge/mac/WebCoreIconDatabaseBridge.mm:
993         (+[WebCoreIconDatabaseBridge sharedInstance]): use RetainPtr
994         * platform/PopupMenu.h: renamed popup to m_popup and switched to RetainPtr<NSPopUpButtonCell>
995         * platform/cf/RetainPtr.h:
996         (WTF::::operator): implement a missing operator= template function
997         * platform/mac/PopupMenuMac.mm:
998         (WebCore::PopupMenu::PopupMenu): remove nil initialization
999         (WebCore::PopupMenu::~PopupMenu): use .get(), remove release message and rename to m_popup
1000         (WebCore::PopupMenu::clear): use .get() when sending a message and rename to m_popup
1001         (WebCore::PopupMenu::populate): ditto 
1002         (WebCore::PopupMenu::show): ditto
1003         (WebCore::PopupMenu::hide): ditto
1004         (WebCore::PopupMenu::addSeparator): ditto
1005         (WebCore::PopupMenu::addGroupLabel): ditto
1006         (WebCore::PopupMenu::addOption): ditto
1007
1008 2006-10-18  Geoffrey Garen  <ggaren@apple.com>
1009
1010         Reviewed by Adele.
1011
1012         Fixed <rdar://problem/3673233> JavaScript timers do not fire if controls
1013         are tracking or menus are down (run loop modes)
1014
1015         I spent a few hours trying to write an automated test, but DRT doesn't
1016         seem to support it. Manual tests attached to related bugs.
1017         
1018         * bridge/mac/FrameMac.mm:
1019         (WebCore::FrameMac::passMouseDownEventToWidget):
1020         * platform/mac/SharedTimerMac.cpp:
1021         (WebCore::setSharedTimerFireTime):
1022
1023 2006-10-18  Sam Weinig  <sam.weinig@gmail.com>
1024
1025         Reviewed by Maciej.
1026
1027         More Win32 buildfix.
1028
1029         * bridge/win/FrameWin.h:
1030
1031 2006-10-18  Sam Weinig  <sam.weinig@gmail.com>
1032
1033         Reviewed by Mitz
1034
1035         Win32 build fix.
1036
1037         * bridge/win/BrowserExtensionWin.cpp:
1038         (WebCore::BrowserExtensionWin::BrowserExtensionWin):
1039         (WebCore::BrowserExtensionWin::createNewWindow):
1040         * bridge/win/BrowserExtensionWin.h:
1041         * bridge/win/FrameWin.cpp:
1042         (WebCore::FrameWin::createNewWindow):
1043         * bridge/win/FrameWin.h:
1044         * platform/win/CursorWin.cpp:
1045         * platform/win/TemporaryLinkStubs.cpp:
1046         (Image::getHBITMAP):
1047
1048 2006-10-18  Justin Garcia  <justin.garcia@apple.com>
1049
1050         Reviewed by harrison
1051         
1052         <rdar://problem/4784823>
1053         GMail Editor: Hang occurs when removing list styling on text in a rich text message
1054
1055         List removal moves the contents of every list item out of the list it's 
1056         in. When the code tried to move the contents of an empty list item (an li 
1057         with no child nodes, not even a placeholder br), moveParagraph didn't prune 
1058         the li, like it would if the li had a placeholder inside it.  So the list 
1059         removal code went into an infinite loop, continually attempting to de-list 
1060         an empty list item.
1061
1062         * editing/CompositeEditCommand.cpp:
1063         (WebCore::CompositeEditCommand::moveParagraphs): If the selection
1064         to move was empty and in an empty block that doesn't require a 
1065         placeholder to prop itself open (like a bordered div or an li), 
1066         remove it during the move.
1067
1068 2006-10-18  Adele Peterson  <adele@apple.com>
1069
1070         Reviewed by Beth.
1071
1072         - Fixed http://bugs.webkit.org/show_bug.cgi?id=11343
1073           REGRESSION (r16975): fast/events/objc-event-api is failing
1074
1075           When I moved the autoscroll code from FrameMac to Frame, I mistakingly changed the order of
1076           a call to invalidateClick.  This change moves it back to the sequence that existed before.  This allows
1077           the click count to get properly reset during a selection.
1078
1079         * page/Frame.cpp: (WebCore::Frame::handleMouseMoveEvent):
1080
1081 2006-10-17  Geoffrey Garen  <ggaren@apple.com>
1082         
1083         Reviewed by Anders.
1084         
1085         Factored common scaling code into a helper function.
1086
1087         * platform/mac/ScreenMac.mm:
1088         (WebCore::scale):
1089         (WebCore::scaleScreenRectToPageCoordinates):
1090         (WebCore::scalePageRectToScreenCoordinates):
1091
1092 2006-10-17  Steve Falkenburg  <sfalken@apple.com>
1093
1094         Build fixes
1095
1096         * bridge/win/BrowserExtensionWin.cpp:
1097         (WebCore::BrowserExtensionWin::createNewWindow):
1098         * bridge/win/BrowserExtensionWin.h:
1099         * bridge/win/FrameWin.cpp:
1100         (WebCore::FrameWin::createNewWindow):
1101         * bridge/win/FrameWin.h:
1102         * platform/gdk/BrowserExtensionGdk.h:
1103         * platform/gdk/TemporaryLinkStubs.cpp:
1104         (BrowserExtensionGdk::createNewWindow):
1105         * platform/qt/BrowserExtensionQt.cpp:
1106         (WebCore::BrowserExtensionQt::createNewWindow):
1107         * platform/qt/BrowserExtensionQt.h:
1108
1109 2006-10-17  Geoffrey Garen  <ggaren@apple.com>
1110
1111         Reviewed by Anders.
1112         
1113         Renamed WindowArgs to WindowFeatures, and moved it into its own header.
1114         ("Features" is the term of art in IE documentation. "Args" is pirate
1115         talk.)
1116
1117         * WebCore.xcodeproj/project.pbxproj:
1118         * bindings/js/kjs_window.cpp:
1119         (KJS::createNewWindow):
1120         (KJS::showModalDialog):
1121         (KJS::setWindowFeature):
1122         (KJS::parseWindowFeatures):
1123         (KJS::constrainToVisible):
1124         (KJS::WindowFunc::callAsFunction):
1125         * bridge/BrowserExtension.h:
1126         * bridge/WindowFeatures.h: Added.
1127         * bridge/mac/BrowserExtensionMac.h:
1128         * bridge/mac/BrowserExtensionMac.mm:
1129         (WebCore::BrowserExtensionMac::createNewWindow):
1130
1131 2006-10-17  Sam Weinig  <sam.weinig@gmail.com>
1132
1133         Reviewed by Tim H.
1134
1135         Patch for http://bugs.webkit.org/show_bug.cgi?id=11268
1136         Implement the Objective-C DOM bindings for SVGNumber, SVGRect, and SVGPoint
1137
1138         - Adds implementation for DOMSVGNumber, DOMSVGRect, and DOMSVGPoint.
1139
1140         - Moves the contents of ksvg/bindings/js/ to bindings/js/.
1141
1142         - Moves SVGZoomEvent.idl from ksvg/svg/ to ksvg/events/.
1143
1144         - Adds isSVGColor() and isSVGPaint() methods to StyleBase, matching 
1145           the other CSSValue classing, and allowing the bindings to allocate
1146           appropriately.
1147
1148         - Removes #ifdefs around the getBBox() method in SVGLocatable.idl allowing
1149           generation for Objective-C.
1150
1151         - Assorted style cleanups.
1152
1153         * DerivedSources.make:
1154         * WebCore.xcodeproj/project.pbxproj:
1155         * bindings/objc/DOMCSS.mm:
1156         (+[DOMCSSValue _CSSValueWith:WebCore::]):
1157         * bindings/objc/DOMEvents.mm:
1158         (+[DOMEvent _eventWith:WebCore::]):
1159         * bindings/objc/DOMSVG.h:
1160         * bindings/objc/DOMSVGNumber.mm:
1161         (-[DOMSVGNumber dealloc]):
1162         (-[DOMSVGNumber finalize]):
1163         (-[DOMSVGNumber value]):
1164         (-[DOMSVGNumber setValue:]):
1165         (-[DOMSVGNumber _SVGNumber]):
1166         (-[DOMSVGNumber _initWithFloat:]):
1167         (+[DOMSVGNumber _SVGNumberWith:]):
1168         * bindings/objc/DOMSVGPoint.mm:
1169         (-[DOMSVGPoint dealloc]):
1170         (-[DOMSVGPoint finalize]):
1171         (-[DOMSVGPoint x]):
1172         (-[DOMSVGPoint setX:]):
1173         (-[DOMSVGPoint y]):
1174         (-[DOMSVGPoint setY:]):
1175         (-[DOMSVGPoint WebCore::]):
1176         (-[DOMSVGPoint _initWithFloatPoint:WebCore::]):
1177         (+[DOMSVGPoint _SVGPointWith:WebCore::]):
1178         * bindings/objc/DOMSVGRect.mm:
1179         (-[DOMSVGRect dealloc]):
1180         (-[DOMSVGRect finalize]):
1181         (-[DOMSVGRect x]):
1182         (-[DOMSVGRect setX:]):
1183         (-[DOMSVGRect y]):
1184         (-[DOMSVGRect setY:]):
1185         (-[DOMSVGRect width]):
1186         (-[DOMSVGRect setWidth:]):
1187         (-[DOMSVGRect height]):
1188         (-[DOMSVGRect setHeight:]):
1189         (-[DOMSVGRect WebCore::]):
1190         (-[DOMSVGRect _initWithFloatRect:WebCore::]):
1191         (+[DOMSVGRect _SVGRectWith:WebCore::]):
1192         * bindings/scripts/CodeGeneratorObjC.pm:
1193         * css/StyleBase.h:
1194         (WebCore::StyleBase::isSVGColor):
1195         (WebCore::StyleBase::isSVGPaint):
1196         * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp: Removed.
1197         * ksvg2/bindings/js/JSSVGElementWrapperFactory.h: Removed.
1198         * ksvg2/bindings/js/JSSVGNumber.cpp: Removed.
1199         * ksvg2/bindings/js/JSSVGNumber.h: Removed.
1200         * ksvg2/bindings/js/JSSVGPoint.cpp: Removed.
1201         * ksvg2/bindings/js/JSSVGPoint.h: Removed.
1202         * ksvg2/bindings/js/JSSVGRect.cpp: Removed.
1203         * ksvg2/bindings/js/JSSVGRect.h: Removed.
1204         * ksvg2/svg/SVGColor.h:
1205         (WebCore::SVGColor::isSVGColor):
1206         * ksvg2/svg/SVGFECompositeElement.idl:
1207         * ksvg2/svg/SVGFEFloodElement.idl:
1208         * ksvg2/svg/SVGLocatable.idl:
1209         * ksvg2/svg/SVGMarkerElement.idl:
1210         * ksvg2/svg/SVGPaint.h:
1211         (WebCore::SVGPaint::isSVGPaint):
1212         * ksvg2/svg/SVGRectElement.idl:
1213         * ksvg2/svg/SVGZoomEvent.idl: Removed.
1214
1215 2006-10-17  David Hyatt  <hyatt@apple.com>
1216
1217         Prepare for the elimination of the RenderLayer for <html> elements.  The layer is still present,
1218         but this patch makes everything work without a root layer being around.
1219
1220         Reviewed by beth
1221
1222         * rendering/RenderBlock.cpp:
1223         (WebCore::RenderBlock::paint):
1224         (WebCore::RenderBlock::paintChildren):
1225         (WebCore::RenderBlock::nodeAtPoint):
1226         * rendering/RenderLayer.cpp:
1227         (WebCore::frameVisibleRect):
1228         (WebCore::RenderLayer::hitTest):
1229         (WebCore::RenderLayer::hitTestLayer):
1230         (WebCore::RenderLayer::intersectsDamageRect):
1231         * rendering/RenderObject.cpp:
1232         (WebCore::RenderObject::setInnerNode):
1233         * rendering/RenderView.cpp:
1234         (WebCore::RenderView::paint):
1235
1236 2006-10-17  David Hyatt  <hyatt@apple.com>
1237
1238         Back out my previous patch to the WebCore memory cache.
1239
1240         * loader/Cache.cpp:
1241         (WebCore::Cache::flush):
1242         (WebCore::Cache::setSize):
1243         (WebCore::Cache::getLRUListFor):
1244         (WebCore::Cache::removeFromLRUList):
1245         (WebCore::Cache::insertInLRUList):
1246         * loader/Cache.h:
1247         * loader/CachedCSSStyleSheet.cpp:
1248         (WebCore::CachedCSSStyleSheet::deref):
1249         * loader/CachedCSSStyleSheet.h:
1250         * loader/CachedImage.cpp:
1251         (WebCore::CachedImage::deref):
1252         * loader/CachedImage.h:
1253         * loader/CachedResource.cpp:
1254         (WebCore::CachedResource::setRequest):
1255         (WebCore::CachedResource::deref):
1256         * loader/CachedResource.h:
1257         (WebCore::CachedResource::allowInLRUList):
1258         * loader/CachedScript.cpp:
1259         (WebCore::CachedScript::deref):
1260         * loader/CachedScript.h:
1261         * loader/CachedXBLDocument.cpp:
1262         (WebCore::CachedXBLDocument::deref):
1263         * loader/CachedXBLDocument.h:
1264         * loader/CachedXSLStyleSheet.cpp:
1265         (WebCore::CachedXSLStyleSheet::deref):
1266         * loader/CachedXSLStyleSheet.h:
1267
1268 2006-10-17  Oliver Hunt  <oliver@apple.com>
1269
1270         Reviewed by Anders.
1271
1272         Make north and east resize cursors use correct image
1273
1274         * platform/win/CursorWin.cpp:
1275         (WebCore::eastResizeCursor):
1276         (WebCore::northResizeCursor):
1277
1278 2006-10-17  Oliver Hunt  <oliver@apple.com>
1279
1280         Reviewed by Brady
1281
1282         Various cursor fixes
1283
1284         * page/FrameView.cpp:
1285         (WebCore::FrameView::handleMouseMoveEvent):
1286         * platform/Cursor.h:
1287         * platform/mac/CursorMac.mm:
1288         (WebCore::pointerCursor):
1289         * platform/win/CursorWin.cpp:
1290         (WebCore::supportsAlphaCursors):
1291         (WebCore::Cursor::Cursor):
1292         (WebCore::Cursor::~Cursor):
1293         (WebCore::pointerCursor):
1294
1295 2006-10-17  Justin Garcia  <justin.garcia@apple.com>
1296
1297         Reviewed by harrison
1298         
1299         <rdar://problem/4776665>
1300         REGRESSION: In Mail, caret is visible when the message body isn't focused
1301
1302         * page/Frame.cpp:
1303         (WebCore::Frame::paintCaret): If a caret blink timer is ever on in error
1304         (like when the frame that contains the caret isn't focused) then we don't 
1305         want to paint the caret.  We should eventually move to using a single bool
1306         for caret painting.
1307
1308 2006-10-17  Justin Garcia  <justin.garcia@apple.com>
1309
1310         Reviewed by harrison
1311         
1312         <rdar://problem/4774354>
1313         REGRESSION: In Gmail, caret reappears when dragging a selection over some text in the message body
1314
1315         Functions call recomputCaretRect to see if the caret rect has changed, 
1316         and, if it has, they invalidate (repaint) it.  recomputeCaretRect was 
1317         returning false if the caret turned into a range selection or was blown 
1318         away.
1319
1320         * editing/SelectionController.cpp:
1321         (WebCore::SelectionController::recomputeCaretRect): Don't early return if
1322         !isCaret().  Obtain the FrameView* using the m_frame pointer, because m_sel 
1323         may now be null.
1324
1325 2006-10-17  Geoffrey Garen  <ggaren@apple.com>
1326
1327         Reviewed by Brady.
1328
1329         BrowserExtension cleanup.
1330         
1331         - Removed unnecessary #include of BrowserExtension in Frame.h, added
1332         #includes to compensate in other files.
1333         
1334         - Removed unused versions of createNewWindow.
1335         
1336         * bindings/js/kjs_window.cpp:
1337         * bridge/BrowserExtension.h:
1338         * bridge/mac/BrowserExtensionMac.h:
1339         * bridge/mac/BrowserExtensionMac.mm:
1340         (WebCore::BrowserExtensionMac::createNewWindow):
1341         * bridge/mac/WebCoreFrameBridge.mm:
1342         * html/HTMLFormElement.cpp:
1343         * loader/mac/LoaderFunctionsMac.mm:
1344         * page/Frame.h:
1345         * page/FramePrivate.h:
1346
1347 2006-10-15  Geoffrey Garen  <ggaren@apple.com>
1348
1349         Reviewed by Adam.
1350         
1351         - Fixed "FIXME: Violates Liskov Substitution principle."
1352         
1353         IFRAME was never a true subclass of FRAME, since they disagreed on a
1354         number of behaviors, which, confusingly, IFRAME just overrode and contradicted. 
1355
1356         The fix here is to factor out things common to IFRAME and FRAME into a
1357         common base class, HTMLFrameElementBase.
1358         
1359         I also changed some " *" to "* " and added #includes in files that implicitly
1360         assumed that HTMLIFrameElement.h #included HTMLFrameElement.h.
1361
1362 2006-10-16  Justin Garcia  <justin.garcia@apple.com>
1363
1364         Reviewed by sullivan
1365         
1366         <rdar://problem/4776765>
1367         REGRESSION: Caret's ghost left behind after inserting a paragraph separator (11237)
1368
1369         We set m_needsLayout to false and call caretRect() in the hopes that it will give us 
1370         the old caret rect.  It in fact corrects the caret rect for an offset that it 
1371         believes is due to scrolling but which is actually due to a change in selection
1372         without an accompanying layout.  So it returns the new caret rect regardless of
1373         what m_needsLayout is set to.
1374         
1375         * editing/SelectionController.cpp:
1376         (WebCore::repaintRectForCaret): Moved the code from caretRepaintRect that
1377         adds a one pixel slop to this new function.
1378         (WebCore::SelectionController::caretRepaintRect): Moved this code to
1379         repaintRectForCaret.
1380         (WebCore::SelectionController::recomputeCaretRect): Compare the old
1381         caret rect to the new one that's computed with a fresh layout.  If
1382         they are different, invalidate both repaint rects.
1383
1384 2006-10-17  David Harrison  <harrison@apple.com>
1385
1386         Reviewed by Adele.
1387
1388         <rdar://problem/4770453> VO not honoring secure edit fields in web pages
1389
1390         * bridge/mac/WebCoreAXObject.mm:
1391         (-[WebCoreAXObject isPasswordField]):
1392         New. Checks for input with inputType() of PASSWORD.
1393         
1394         (-[WebCoreAXObject subrole]):
1395         Returns NSAccessibilitySecureTextFieldSubrole if [self isPasswordField].
1396         
1397         (-[WebCoreAXObject roleDescription]):
1398         Pass [self subrole] instead of nil when calling NSAccessibilityRoleDescription.
1399         
1400         (-[WebCoreAXObject value]):
1401         Return nil if [self isPasswordField].
1402         
1403         (-[WebCoreAXObject accessibilityAttributeNames]):
1404         Return generic attributes if [self isPasswordField].
1405
1406         (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
1407         Return empty array if [self isPasswordField].
1408
1409 2006-10-17  David Hyatt  <hyatt@apple.com>
1410
1411         Fix "flash to white' problem on yahoo.com as it finishes loading.  Refine the FOUC suppression
1412         code so that it will only run if the body still has no renderer.
1413
1414         * dom/Document.cpp:
1415         (WebCore::Document::updateLayoutIgnorePendingStylesheets):
1416
1417 2006-10-17  David Hyatt  <hyatt@apple.com>
1418
1419         Fix a bug where the WebCore memory cache could grow without bound during extended browsing
1420         sessions.
1421
1422         Reviewed by mjs
1423
1424         * loader/Cache.cpp:
1425         (WebCore::Cache::flush):
1426         (WebCore::Cache::setSize):
1427         (WebCore::Cache::getLRUListFor):
1428         (WebCore::Cache::removeFromLRUList):
1429         (WebCore::Cache::insertInLRUList):
1430         * loader/Cache.h:
1431         * loader/CachedCSSStyleSheet.cpp:
1432         * loader/CachedCSSStyleSheet.h:
1433         * loader/CachedImage.cpp:
1434         * loader/CachedImage.h:
1435         * loader/CachedResource.cpp:
1436         (WebCore::CachedResource::setRequest):
1437         (WebCore::CachedResource::deref):
1438         * loader/CachedResource.h:
1439         (WebCore::CachedResource::allowInLRUList):
1440         * loader/CachedScript.cpp:
1441         * loader/CachedScript.h:
1442         * loader/CachedXBLDocument.cpp:
1443         * loader/CachedXBLDocument.h:
1444         * loader/CachedXSLStyleSheet.cpp:
1445         * loader/CachedXSLStyleSheet.h:
1446
1447 2006-10-13  Justin Garcia  <justin.garcia@apple.com>
1448
1449         Reviewed by harrison
1450         
1451         <rdar://problem/3655385>
1452         Editing: -indent: method unimplemented
1453
1454         Added Frame and bridge methods.
1455
1456         * bridge/mac/WebCoreFrameBridge.h:
1457         * bridge/mac/WebCoreFrameBridge.mm:
1458         (-[WebCoreFrameBridge indent]):
1459         (-[WebCoreFrameBridge outdent]):
1460         * page/Frame.cpp:
1461         (WebCore::Frame::indent): 
1462         (WebCore::Frame::outdent):
1463         * page/Frame.h:
1464
1465 2006-10-16  Adam Roben  <aroben@apple.com>
1466
1467         Reviewed by John.
1468
1469         More menulist cleanup/tweaking.
1470
1471         * html/HTMLSelectElement.cpp:
1472         (WebCore::HTMLSelectElement::setSelectedIndex): Renamed 'index'
1473         parameter to 'optionIndex' for clarity.
1474         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Skip over
1475         items that are not enabled <option> elements when using arrow keys, and
1476         make sure we pass an option index to setSelectedIndex.
1477         * platform/PopupMenu.h:
1478         (WebCore::PopupMenu::setWasClicked): Specify default argument.
1479         * rendering/RenderMenuList.cpp:
1480         (WebCore::RenderMenuList::setTextFromOption): Strip whitespace from
1481         option text before setting the control text so that options within
1482         <optgroup>s don't appear indented in the actual control.
1483
1484 2006-10-16  Sam Weinig  <sam.weinig@gmail.com>
1485
1486         Reviewed by Adam.
1487
1488         Win32 build fix.
1489
1490         * WebCore.vcproj/WebCore/WebCore.vcproj:
1491         * bridge/win/BrowserExtensionWin.cpp:
1492         (WebCore::BrowserExtensionWin::createNewWindow):
1493         * bridge/win/FrameWin.cpp:
1494         (WebCore::FrameWin::urlSelected):
1495         (WebCore::FrameWin::submitForm):
1496         (WebCore::FrameWin::createNewWindow):
1497         * bridge/win/FrameWin.h:
1498         * loader/loader.cpp:
1499         (WebCore::Loader::receivedResponse):
1500         * platform/win/GraphicsContextWin.cpp:
1501         (WebCore::GraphicsContext::getWindowsContext):
1502         (WebCore::GraphicsContext::releaseWindowsContext):
1503         * platform/win/TemporaryLinkStubs.cpp:
1504         (FrameWin::openURLRequest):
1505         (WebCore::ServeSynchronousRequest):
1506         (WebCore::CheckIfReloading):
1507         (WebCore::IsResponseURLEqualToURL):
1508         (WebCore::ResponseMIMEType):
1509         (WebCore::ResponseIsMultipart):
1510         (WebCore::CacheObjectExpiresTime):
1511         (CachedResource::setResponse):
1512         (CachedResource::setAllData):
1513         * rendering/RenderThemeWin.cpp:
1514         (WebCore::doneDrawing):
1515         (WebCore::RenderThemeWin::paintButton):
1516         (WebCore::RenderThemeWin::paintTextField):
1517
1518 2006-10-16  David Hyatt  <hyatt@apple.com>
1519
1520         Fix for bug 9347, positioned elements have the wrong containing block.  This is a change from CSS2 to
1521         CSS2.1.  In the absence of any other enclosing positioned elements, the containing block for a positioned
1522         element is the initial containing block (our RenderView).
1523
1524         Reviewed by mjs
1525
1526         Test cases added to fast/block/positioning for quirks and strict modes.
1527
1528         * rendering/RenderBlock.cpp:
1529         (WebCore::RenderBlock::lowestPosition):
1530         (WebCore::RenderBlock::rightmostPosition):
1531         (WebCore::RenderBlock::leftmostPosition):
1532         * rendering/RenderBox.cpp:
1533         (WebCore::RenderBox::containingBlockHeightForPositioned):
1534         (WebCore::RenderBox::calcAbsoluteVertical):
1535         * rendering/RenderObject.cpp:
1536         (WebCore::RenderObject::containingBlock):
1537         (WebCore::RenderObject::container):
1538
1539 2006-10-15  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
1540
1541         Reviewed by Anders.
1542
1543         Misc Gdk/Linux build fixes.
1544
1545         * platform/gdk/BrowserExtensionGdk.h:
1546         * platform/gdk/FrameGdk.cpp:
1547         (WebCore::FrameGdk::submitForm):
1548         (WebCore::FrameGdk::urlSelected):
1549         * platform/gdk/FrameGdk.h:
1550         * platform/gdk/RenderPopupMenuGdk.cpp:
1551         (WebCore::PopupMenu::PopupMenu):
1552         (WebCore::PopupMenu::~PopupMenu):
1553         (WebCore::PopupMenu::clear):
1554         (WebCore::PopupMenu::populate):
1555         (WebCore::PopupMenu::show):
1556         (WebCore::PopupMenu::hide):
1557         (WebCore::PopupMenu::addSeparator):
1558         (WebCore::PopupMenu::addGroupLabel):
1559         (WebCore::PopupMenu::addOption):
1560         * platform/gdk/RenderPopupMenuGdk.h:
1561         * platform/gdk/RenderThemeGdk.cpp:
1562         * platform/gdk/RenderThemeGdk.h:
1563         (WebCore::RenderThemeGdk::RenderThemeGdk):
1564         * platform/gdk/TemporaryLinkStubs.cpp:
1565         (BrowserExtensionGdk::createNewWindow):
1566         (BrowserExtensionGdk::BrowserExtensionGdk):
1567         (BrowserExtensionGdk::setTypedIconURL):
1568         (BrowserExtensionGdk::setIconURL):
1569         (BrowserExtensionGdk::getHistoryLength):
1570         (WebCore::CheckIfReloading):
1571         (WebCore::CacheObjectExpiresTime):
1572         (WebCore::ResponseURL):
1573         (WebCore::IsResponseURLEqualToURL):
1574         (WebCore::ResponseIsMultipart):
1575         (WebCore::ResponseMIMEType):
1576         (WebCore::CachedResource::setResponse):
1577         (WebCore::CachedResource::setAllData):
1578         (FileChooser::disconnectUploadControl):
1579         * rendering/RenderTheme.h:
1580         * rendering/RenderThemeMac.h:
1581
1582 2006-10-15  Sam Weinig  <sam.weinig@gmail.com>
1583
1584         Reviewed by Mitz.
1585
1586         Fix for http://bugs.webkit.org/show_bug.cgi?id=11294
1587         Add getModifierState method to KeyboardEvent
1588
1589         * bindings/objc/DOMEvents.h:
1590         * bindings/objc/DOMEvents.mm:
1591         * bindings/objc/PublicDOMInterfaces.h:
1592         * dom/KeyboardEvent.cpp:
1593         (WebCore::KeyboardEvent::getModifierState):
1594         * dom/KeyboardEvent.h:
1595         * dom/KeyboardEvent.idl:
1596
1597 2006-10-15  Nikolas Zimmermann  <zimmermann@kde.org>
1598
1599         Reviewed and landed by ap.
1600
1601         Changed PlatformResponse handling for Qt. Don't just store
1602         a QString object containing the data but a new PlatformResponseQt struct
1603         containing data and url, and store it as pointer. This is compatible
1604         to the OS X handling and removes the Qt plaform specific hacks from
1605         CachedCSSStyleSheet, CachedResource & loader.
1606
1607         Add new file LoaderFunctionsQt, similar to LoaderFunctionsMac, and move
1608         all methods from TemporaryLinkStubs related to loading in there, and implement
1609         some like ServeSynchronousRequest (yay for xslt handling!).
1610
1611         * CMakeLists.txt:
1612         * loader/CachedCSSStyleSheet.cpp:
1613         (WebCore::CachedCSSStyleSheet::checkNotify):
1614         * loader/CachedResource.h:
1615         (WebCore::CachedResource::CachedResource):
1616         * loader/loader.cpp:
1617         (WebCore::Loader::receivedResponse):
1618         * platform/ResourceLoaderClient.h:
1619         * platform/ResourceLoaderInternal.h:
1620         * platform/qt/FrameQt.cpp:
1621         (WebCore::FrameQt::~FrameQt):
1622         (WebCore::FrameQt::createEmptyDocument):
1623         * platform/qt/FrameQt.h:
1624         (WebCore::QtFrame):
1625         * platform/qt/FrameQtClient.cpp:
1626         (WebCore::FrameQtClientDefault::setFrame):
1627         (WebCore::FrameQtClientDefault::openURL):
1628         (WebCore::FrameQtClientDefault::loadFinished):
1629         (WebCore::FrameQtClientDefault::receivedAllData):
1630         * platform/qt/FrameQtClient.h:
1631         * platform/qt/LoaderFunctionsQt.cpp: Added.
1632         (WebCore::ServeSynchronousRequest):
1633         (WebCore::NumberOfPendingOrLoadingRequests):
1634         (WebCore::CheckIfReloading):
1635         (WebCore::CheckCacheObjectStatus):
1636         (WebCore::IsResponseURLEqualToURL):
1637         (WebCore::ResponseURL):
1638         (WebCore::ResponseMIMEType):
1639         (WebCore::ResponseIsMultipart):
1640         (WebCore::CacheObjectExpiresTime):
1641         (WebCore::CachedResource::setResponse):
1642         (WebCore::CachedResource::setAllData):
1643         * platform/qt/ResourceLoaderManager.cpp:
1644         (WebCore::ResourceLoaderManager::remove):
1645         * platform/qt/ResourceLoaderQt.cpp:
1646         (WebCore::ResourceLoader::~ResourceLoader):
1647         (WebCore::ResourceLoader::start):
1648         (WebCore::ResourceLoader::assembleResponseHeaders):
1649         (WebCore::ResourceLoader::receivedResponse):
1650         * platform/qt/TemporaryLinkStubs.cpp:
1651
1652 2006-10-14  Rob Buis  <buis@kde.org>
1653
1654         Reviewed by Mitz.
1655
1656         http://bugs.webkit.org/show_bug.cgi?id=11217
1657         Cleanup svg coding style
1658
1659         Cleanup coding style in svg basic datastructure classes.
1660
1661         * ksvg2/svg/SVGAngle.cpp:
1662         (WebCore::SVGAngle::valueAsString):
1663         (WebCore::SVGAngle::context):
1664         (WebCore::SVGAngle::setContext):
1665         * ksvg2/svg/SVGAngle.h:
1666         * ksvg2/svg/SVGColor.cpp:
1667         * ksvg2/svg/SVGColor.h:
1668         * ksvg2/svg/SVGElement.cpp:
1669         (WebCore::SVGElement::ownerSVGElement):
1670         (WebCore::SVGElement::viewportElement):
1671         (WebCore::SVGElement::parseMappedAttribute):
1672         (WebCore::SVGElement::childShouldCreateRenderer):
1673         * ksvg2/svg/SVGElement.h:
1674         (WebCore::svg_dynamic_cast):
1675         * ksvg2/svg/SVGFitToViewBox.cpp:
1676         (WebCore::SVGFitToViewBox::parseViewBox):
1677         * ksvg2/svg/SVGFitToViewBox.h:
1678         * ksvg2/svg/SVGLangSpace.cpp:
1679         (WebCore::SVGLangSpace::parseMappedAttribute):
1680         * ksvg2/svg/SVGLangSpace.h:
1681         * ksvg2/svg/SVGLength.cpp:
1682         (WebCore::SVGLength::SVGLength):
1683         (WebCore::SVGLength::setValueAsString):
1684         (WebCore::SVGLength::dpi):
1685         (WebCore::SVGLength::updateValue):
1686         (WebCore::SVGLength::updateValueInSpecifiedUnits):
1687         (WebCore::SVGLength::context):
1688         (WebCore::SVGLength::setContext):
1689         * ksvg2/svg/SVGLength.h:
1690         * ksvg2/svg/SVGLengthList.cpp:
1691         * ksvg2/svg/SVGLengthList.h:
1692         * ksvg2/svg/SVGLocatable.cpp:
1693         (WebCore::SVGLocatable::nearestViewportElement):
1694         (WebCore::SVGLocatable::farthestViewportElement):
1695         (WebCore::SVGLocatable::getBBox):
1696         (WebCore::SVGLocatable::getCTM):
1697         (WebCore::SVGLocatable::getScreenCTM):
1698         * ksvg2/svg/SVGNumberList.cpp:
1699         * ksvg2/svg/SVGNumberList.h:
1700         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
1701         (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
1702         (WebCore::SVGPreserveAspectRatio::getCTM):
1703         * ksvg2/svg/SVGPreserveAspectRatio.h:
1704         * ksvg2/svg/SVGStringList.cpp:
1705         (WebCore::SVGStringList::reset):
1706         * ksvg2/svg/SVGStringList.h:
1707         * ksvg2/svg/SVGStylable.cpp:
1708         * ksvg2/svg/SVGStylable.h:
1709         * ksvg2/svg/SVGTests.cpp:
1710         (WebCore::SVGTests::requiredFeatures):
1711         (WebCore::SVGTests::requiredExtensions):
1712         (WebCore::SVGTests::systemLanguage):
1713         (WebCore::SVGTests::isValid):
1714         (WebCore::SVGTests::parseMappedAttribute):
1715         * ksvg2/svg/SVGTests.h:
1716         * ksvg2/svg/SVGTransformable.cpp:
1717         (WebCore::SVGTransformable::parseTransformAttribute):
1718         * ksvg2/svg/SVGTransformable.h:
1719         * ksvg2/svg/SVGURIReference.cpp:
1720         (WebCore::SVGURIReference::parseMappedAttribute):
1721         * ksvg2/svg/SVGZoomAndPan.cpp:
1722         (WebCore::SVGZoomAndPan::parseMappedAttribute):
1723         * ksvg2/svg/SVGZoomAndPan.h:
1724
1725 2006-10-15  Nikolas Zimmermann  <zimmermann@kde.org>
1726
1727         Reviewed by Oliver.
1728
1729         Implement some functions in FrameQt / ScrollViewQt.
1730
1731         Added comments what needs to be done in quite some places,
1732         marked some functions as no-ops.
1733
1734         * CMakeLists.txt:
1735         * platform/qt/FrameQt.cpp:
1736         (WebCore::FrameQt::FrameQt):
1737         (WebCore::FrameQt::runJavaScriptConfirm):
1738         (WebCore::FrameQt::locationbarVisible):
1739         (WebCore::FrameQt::createFrame):
1740         (WebCore::FrameQt::passSubframeEventToSubframe):
1741         (WebCore::FrameQt::menubarVisible):
1742         (WebCore::FrameQt::personalbarVisible):
1743         (WebCore::FrameQt::statusbarVisible):
1744         (WebCore::FrameQt::toolbarVisible):
1745         (WebCore::FrameQt::markedTextRange):
1746         (WebCore::FrameQt::lastEventIsMouseUp):
1747         (WebCore::FrameQt::openURLRequest):
1748         (WebCore::FrameQt::scheduleClose):
1749         (WebCore::FrameQt::unfocusWindow):
1750         (WebCore::FrameQt::focusWindow):
1751         (WebCore::FrameQt::overrideMediaType):
1752         (WebCore::FrameQt::runJavaScriptPrompt):
1753         (WebCore::FrameQt::bindingRootObject):
1754         (WebCore::FrameQt::addPluginRootObject):
1755         (WebCore::FrameQt::registerCommandForUndo):
1756         (WebCore::FrameQt::registerCommandForRedo):
1757         (WebCore::FrameQt::clearUndoRedoOperations):
1758         (WebCore::FrameQt::respondToChangedSelection):
1759         (WebCore::FrameQt::respondToChangedContents):
1760         (WebCore::FrameQt::shouldChangeSelection):
1761         (WebCore::FrameQt::canGoBackOrForward):
1762         (WebCore::FrameQt::canPaste):
1763         (WebCore::FrameQt::canRedo):
1764         (WebCore::FrameQt::canUndo):
1765         * platform/qt/FrameQt.h:
1766         * platform/qt/FrameQtClient.cpp:
1767         (WebCore::FrameQtClientDefault::runJavaScriptAlert):
1768         (WebCore::FrameQtClientDefault::runJavaScriptConfirm):
1769         (WebCore::FrameQtClientDefault::runJavaScriptPrompt):
1770         (WebCore::FrameQtClientDefault::menubarVisible):
1771         (WebCore::FrameQtClientDefault::toolbarVisible):
1772         (WebCore::FrameQtClientDefault::statusbarVisible):
1773         (WebCore::FrameQtClientDefault::personalbarVisible):
1774         (WebCore::FrameQtClientDefault::locationbarVisible):
1775         * platform/qt/FrameQtClient.h:
1776         * platform/qt/ImageSourceQt.cpp:
1777         * platform/qt/RenderThemeQt.cpp:
1778         * platform/qt/ScrollViewQt.cpp:
1779         (WebCore::ScrollView::scrollPointRecursively):
1780         * platform/qt/TemporaryLinkStubs.cpp:
1781         (WebCore::CachedResource::setResponse):
1782         (WebCore::CachedResource::setAllData):
1783
1784 2006-10-14  David Harrison  <harrison@apple.com>
1785
1786         Reviewed by Geoff.
1787
1788         <rdar://problem/4775213> REGRESSION: Can't from tab from last link on the page to URL address field
1789         <rdar://problem/4783926> REGRESSION: Typing tab key enters no text
1790
1791         The problem is that EventTargetNode::defaultEventHandler() calls event->setDefaultHandled() regardless
1792         of whether frame->view()->advanceFocus() actually changed the focus.
1793
1794         Trivial fix is to preventDefault() only if advanceFocus() returns true.
1795
1796         * No test is possible because DumpRenderTree sets the WebView preference to
1797         tab to links, and that preference cannot be changed dynamically after
1798         the webview is initialized. Also, the "tab from last link" is not testable
1799         because DumpRenderTree uses the WebView for the whole window, so tabs can't
1800         shift focus out of the WebView regardless.
1801
1802         * dom/EventTargetNode.cpp:
1803         (WebCore::EventTargetNode::defaultEventHandler):
1804
1805 2006-10-14  Nikolas Zimmermann  <zimmermann@kde.org>
1806
1807         Reviewed by Mitz.
1808
1809         Fix Qt/Linux build & some little fixes:
1810
1811         - Adapt to Maciej's FrameLoadRequest changes.
1812         - Fix response handling - don't try to compare with '0' - for us it's a non-ptr QString object.
1813         - Actually call setAllData from loader/loader.cpp (David Carson forgot that in his last commit)
1814         - Fix CacheObjectExpiresTime/ResponseIsMultipart signature.
1815
1816         * loader/CachedCSSStyleSheet.cpp:
1817         (WebCore::CachedCSSStyleSheet::checkNotify):
1818         * loader/CachedResource.h:
1819         (WebCore::CachedResource::CachedResource):
1820         * loader/loader.cpp:
1821         (WebCore::Loader::receivedAllData):
1822         (WebCore::Loader::receivedResponse):
1823         * platform/qt/BrowserExtensionQt.cpp:
1824         (WebCore::BrowserExtensionQt::createNewWindow):
1825         * platform/qt/BrowserExtensionQt.h:
1826         * platform/qt/FrameQt.cpp:
1827         (WebCore::FrameQt::submitForm):
1828         (WebCore::FrameQt::urlSelected):
1829         (WebCore::FrameQt::openURLRequest):
1830         * platform/qt/FrameQt.h:
1831         * platform/qt/GraphicsContextQt.cpp:
1832         (WebCore::GraphicsContext::setURLForRect):
1833         * platform/qt/TemporaryLinkStubs.cpp:
1834         (WebCore::CacheObjectExpiresTime):
1835         (WebCore::ResponseIsMultipart):
1836         (WebCore::CachedResource::setResponse):
1837         (WebCore::CachedResource::setAllData):
1838
1839 2006-10-14  David Carson  <dacarson@gmail.com>
1840
1841         Reviewed by Maciej.
1842
1843         Fix: http://bugs.webkit.org/show_bug.cgi?id=11257
1844         Removed Mac platform dependance, changed WebCore functions to
1845         use PlatformResponse/PlatformData rather than NSURLResponse/
1846         NSData. 
1847
1848         * loader/CachedCSSStyleSheet.cpp:
1849         (WebCore::CachedCSSStyleSheet::checkNotify):
1850         * loader/CachedImage.cpp:
1851         (WebCore::CachedImage::createImage):
1852         * loader/CachedResource.cpp:
1853         (WebCore::CachedResource::~CachedResource):
1854         * loader/CachedResource.h:
1855         (WebCore::CachedResource::CachedResource):
1856         (WebCore::CachedResource::response):
1857         (WebCore::CachedResource::allData):
1858         * loader/LoaderFunctions.h:
1859         * loader/loader.cpp:
1860         (WebCore::Loader::receivedResponse):
1861         * loader/mac/LoaderFunctionsMac.mm:
1862         (WebCore::ResponseMIMEType):
1863         (WebCore::ResponseIsMultipart):
1864         (WebCore::CacheObjectExpiresTime):
1865         (WebCore::CachedResource::setResponse):
1866         (WebCore::CachedResource::setAllData):
1867         * platform/qt/TemporaryLinkStubs.cpp:
1868         (WebCore::CacheObjectExpiresTime):
1869         (WebCore::ResponseIsMultipart):
1870         (WebCore::ResponseMIMEType):
1871         (WebCore::CachedResource::setResponse):
1872         (WebCore::CachedResource::setAllData):
1873         * platform/win/TemporaryLinkStubs.cpp:
1874         (WebCore::CacheObjectExpiresTime):
1875         (WebCore::ResponseIsMultipart):
1876         (WebCore::ResponseMIMEType):
1877         (WebCore::CachedResource::setResponse):
1878         (WebCore::CachedResource::setAllData):
1879
1880 2006-10-14  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
1881
1882         Reviewed by Maciej.
1883
1884         Fix GDK build by defining FrameGdkClient() constructor as non-virtual.
1885         Pure virtual classes require non-pure destructor, who knew.
1886
1887         Make CURL networking dependent on USE(CURL) instead of PLATFORM(GDK),
1888         so that other platforms can also use CURL, if they wish.
1889
1890         Silence compiler warning about unused variable in SharedTimerLinux.cpp
1891
1892         * platform/ResourceLoaderInternal.h:
1893         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
1894         * platform/gdk/FrameGdk.h:
1895         (WebCore::FrameGdkClient::~FrameGdkClient):
1896         * platform/gdk/ResourceLoaderManager.cpp:
1897         (WebCore::ResourceLoaderManager::downloadTimerCallback):
1898         * platform/gdk/SharedTimerLinux.cpp:
1899         (WebCore::stopSharedTimer):
1900
1901 2006-10-13  Beth Dakin  <bdakin@apple.com>
1902
1903         Reviewed by Geoff.
1904
1905         Build fix from my last check-in. Make hasOutlineAnnotation() non-
1906         inline so that we don't have to include Document.h in 
1907         RenderObject.h
1908         Doing so causes a build failure in WebKit, and it probably isn't a 
1909         good idea anyway.
1910
1911         * rendering/RenderObject.cpp:
1912         (WebCore::RenderObject::hasOutlineAnnotation):
1913         * rendering/RenderObject.h:
1914         (WebCore::RenderObject::hasOutline):
1915
1916 2006-10-13  Beth Dakin  <bdakin@apple.com>
1917
1918         Patch written mostly by Ken Kraisler, but also by me.
1919
1920         Reviewed by Hyatt.
1921
1922         Fix for http://bugs.webkit.org/show_bug.cgi?id=10216 and <rdar://
1923         problem/3391162> PDF created by printing should have live 
1924         hyperlinks
1925
1926         * platform/GraphicsContext.cpp:
1927         (WebCore::GraphicsContext::focusRingBoundingRect):
1928         * platform/GraphicsContext.h:
1929         * platform/cairo/GraphicsContextCairo.cpp:
1930         (WebCore::GraphicsContext::setURLForRect):
1931         * platform/cg/GraphicsContextCG.cpp:
1932         (WebCore::GraphicsContext::setURLForRect): Implement method to add 
1933         URL link to PDF document.
1934         * rendering/InlineFlowBox.cpp:
1935         (WebCore::InlineFlowBox::paint): Ask hasOutline() instead of 
1936         querying the outline width
1937         * rendering/RenderBlock.cpp:
1938         (WebCore::RenderBlock::paintObject): Same as above.
1939         * rendering/RenderFlow.cpp:
1940         (WebCore::RenderFlow::paintLines): Call the new paintOutline()
1941         (WebCore::RenderFlow::paintOutline): Take care of focus ring and 
1942         pdf url rects, and outline painting.
1943         * rendering/RenderFlow.h:
1944         * rendering/RenderObject.cpp:
1945         (WebCore::RenderObject::addPDFURLRect): Declaration to apply a PDF 
1946         link to a rectanglular region.
1947         (WebCore::RenderObject::paintOutline): Take care of pdf rects as 
1948         well as focus ring painting.
1949         * rendering/RenderObject.h:
1950         (WebCore::RenderObject::hasOutlineAnnotation): Returns true is the 
1951         element is a link and we are printing.
1952         (WebCore::RenderObject::hasOutline): Returns true is the style has 
1953         an outline and hasOutlineAnnotation() is true.
1954         * rendering/RenderStyle.h:
1955         (WebCore::RenderStyle::hasOutline): Returns true if outlineWidth is 
1956         greater than 0 and outlineStyle is greater than BHIDDEN.
1957
1958 2006-10-13  Justin Garcia  <justin.garcia@apple.com>
1959
1960         Reviewed by ggaren and harrison
1961         
1962         <rdar://problem/4744008>
1963         9A270: Mail crashes when I try to paste large items from Safari
1964
1965         * editing/ReplaceSelectionCommand.cpp:
1966         (WebCore::ReplaceSelectionCommand::removeRedundantStyles):
1967         Even though we put nodes in the hash map in pre-order, they don't necessary
1968         come out of the iterator that way.  If a node is a redundant style span
1969         and one of its pruned ancestors comes off the hash map after it, and that
1970         ancestor is a redundant style span or font tag, we will try to remove it
1971         even though it has already been removed and we'll crash.
1972         The test case added with the fix depends on our hash map implementation
1973         because it requires that a particular redundant style span come out of 
1974         the iterator before its parent. So, it may eventually not provide 
1975         coverage for the fix.
1976
1977 2006-10-13  Maciej Stachowiak  <mjs@apple.com>
1978
1979         Reviewed by Darin.
1980
1981         - split FrameLoadRequest off from ResourceRequest - it's a ResourceRequest plus frame name plus lockHistory bool
1982
1983         * WebCore.xcodeproj/project.pbxproj:
1984         * bindings/js/kjs_window.cpp:
1985         (KJS::createNewWindow):
1986         (KJS::WindowFunc::callAsFunction):
1987         * bridge/BrowserExtension.h:
1988         * bridge/mac/BrowserExtensionMac.h:
1989         * bridge/mac/BrowserExtensionMac.mm:
1990         (WebCore::BrowserExtensionMac::createNewWindow):
1991         * bridge/mac/FrameMac.h:
1992         * bridge/mac/FrameMac.mm:
1993         (WebCore::FrameMac::submitForm):
1994         (WebCore::FrameMac::openURLRequest):
1995         (WebCore::FrameMac::urlSelected):
1996         * bridge/win/BrowserExtensionWin.h:
1997         * page/Frame.cpp:
1998         (WebCore::Frame::changeLocation):
1999         (WebCore::Frame::urlSelected):
2000         (WebCore::Frame::requestFrame):
2001         (WebCore::Frame::submitForm):
2002         * page/Frame.h:
2003         * page/FrameLoadRequest.h: Added.
2004         (WebCore::FrameLoadRequest::FrameLoadRequest):
2005         (WebCore::FrameLoadRequest::lockHistory):
2006         (WebCore::FrameLoadRequest::setLockHistory):
2007         * page/ResourceRequest.h:
2008         (WebCore::ResourceRequest::ResourceRequest):
2009
2010 2006-10-13  John Sullivan  <sullivan@apple.com>
2011
2012         Reviewed by Maciej
2013
2014         * loader/mac/WebFrameLoader.mm:
2015         (-[WebFrameLoader loadDocumentLoader:]):
2016         Replace ASSERT(!policyDocumentLoader) with code that handles this case. This can
2017         happen when loading a page during a decidePolicyForNavigationAction callback.
2018
2019 2006-10-13  Dave Hyatt  <hyatt@apple.com>
2020
2021         Transparency layer work.
2022
2023         Reviewed by aroben
2024
2025         * platform/GraphicsContext.h:
2026         * platform/cg/GraphicsContextCG.cpp:
2027         (WebCore::GraphicsContext::beginTransparencyLayer):
2028         (WebCore::GraphicsContext::endTransparencyLayer):
2029         * platform/cg/GraphicsContextPlatformPrivate.h:
2030         (WebCore::GraphicsContextPlatformPrivate::beginTransparencyLayer):
2031         (WebCore::GraphicsContextPlatformPrivate::endTransparencyLayer):
2032
2033 2006-10-13  Rob Buis  <buis@kde.org>
2034
2035         Reviewed by Mitz.
2036
2037         http://bugs.webkit.org/show_bug.cgi?id=11217
2038         Cleanup svg coding style
2039
2040         Cleanup coding style in svg paint server classes.
2041
2042         * ksvg2/svg/SVGGradientElement.cpp:
2043         (WebCore::SVGGradientElement::SVGGradientElement):
2044         (WebCore::SVGGradientElement::parseMappedAttribute):
2045         (WebCore::SVGGradientElement::notifyAttributeChange):
2046         (WebCore::SVGGradientElement::canvasResource):
2047         (WebCore::SVGGradientElement::rebuildStops):
2048         * ksvg2/svg/SVGGradientElement.h:
2049         * ksvg2/svg/SVGLinearGradientElement.cpp:
2050         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
2051         (WebCore::SVGLinearGradientElement::parseMappedAttribute):
2052         (WebCore::SVGLinearGradientElement::buildGradient):
2053         * ksvg2/svg/SVGLinearGradientElement.h:
2054         * ksvg2/svg/SVGPatternElement.cpp:
2055         (WebCore::SVGPatternElement::SVGPatternElement):
2056         (WebCore::SVGPatternElement::parseMappedAttribute):
2057         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
2058         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
2059         (WebCore::SVGPatternElement::notifyClientsToRepaint):
2060         (WebCore::SVGPatternElement::notifyAttributeChange):
2061         (WebCore::SVGPatternElement::canvasResource):
2062         (WebCore::SVGPatternElement::getCTM):
2063         * ksvg2/svg/SVGPatternElement.h:
2064         (WebCore::SVGPatternElement::rendererIsNeeded):
2065         * ksvg2/svg/SVGRadialGradientElement.cpp:
2066         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
2067         (WebCore::SVGRadialGradientElement::parseMappedAttribute):
2068         (WebCore::SVGRadialGradientElement::buildGradient):
2069         * ksvg2/svg/SVGRadialGradientElement.h:
2070         * ksvg2/svg/SVGStopElement.cpp:
2071         (WebCore::SVGStopElement::SVGStopElement):
2072         (WebCore::SVGStopElement::parseMappedAttribute):
2073         * ksvg2/svg/SVGStopElement.h:
2074
2075 2006-10-13  Geoffrey Garen  <ggaren@apple.com>
2076
2077         Reviewed by Darin, John.
2078
2079         - Merged more frame and iframe code
2080         - Fixed a bug where iframes returned incorrect values for renderer-dependent 
2081         properties during javascript: loads because they didn't have renderers at 
2082         load time
2083         
2084         PLT insists this is a small performance win. Don't believe its lies.
2085
2086         * bindings/js/kjs_html.cpp:
2087         (KJS::JSHTMLElement::frameGetter): Renamed frameWidth and frameHeight to
2088         width and height, for consistency with the rest of the DOM.
2089         * dom/ContainerNode.cpp:
2090         (WebCore::ContainerNode::queuePostAttachCallback): Added a post-attach callback
2091         queue that gets drained after the render tree is fully constructed. Currently,
2092         this is only used for frame loading.
2093         (WebCore::ContainerNode::attach):
2094         * dom/ContainerNode.h:
2095         * html/HTMLFrameElement.cpp:
2096         (WebCore::HTMLFrameElement::insertedIntoDocument): Removed frame loading from
2097         attach() because loading iframes during attach() causes a crash. 
2098         Moved frame loading logic into insertedIntoDocument(). That's a more 
2099         logical place for it because  document insertion is what 
2100         triggers frame loading. Made frame loading a post-attach callback, instead
2101         of an immediate action, to fix the incorrect values bug.
2102         (WebCore::HTMLFrameElement::attach): Added setWidget call that used to be
2103         in HTMLIFrameElement::attach. IFRAME requires this call. FRAME will soon 
2104         require this call, once I remove the call from WebKit.
2105         (WebCore::HTMLFrameElement::setLocation):
2106         (WebCore::HTMLFrameElement::width):
2107         (WebCore::HTMLFrameElement::height):
2108         * html/HTMLFrameElement.h: Made openURL non-virtual to avoid the unnecessary
2109         killing of puppies.
2110         * html/HTMLIFrameElement.cpp: Merged code into HTMLFrameElement
2111         (WebCore::HTMLIFrameElement::rendererIsNeeded):
2112         (WebCore::HTMLIFrameElement::createRenderer):
2113         (WebCore::HTMLIFrameElement::insertedIntoDocument):
2114         (WebCore::HTMLIFrameElement::removedFromDocument):
2115         (WebCore::HTMLIFrameElement::attach):
2116         * page/FrameView.h: Removed unused method.
2117
2118 2006-10-13  David Harrison  <harrison@apple.com>
2119
2120         Reviewed by Justin.
2121
2122         <rdar://problem/4746860> Mail crash in WebCore::CSSMutableStyleDeclaration::merge(WebCore::CSSMutableStyleDeclaration*, bool)
2123
2124         Tests added or changed:
2125         * editing/style/style-boundary-005.html: Added. Matches steps from bug.
2126         * editing/execCommand/hilitecolor-expected.txt: Updated (no empty Apple style spans).
2127         * editing/style/remove-underline-across-paragraph-in-bold-expected.txt: Updated (no empty Apple style spans).
2128         * editing/style/remove-underline-in-bold-expected.txt: Updated (no empty Apple style spans).
2129         * editing/style/typing-style-003-expected.txt: Updated (no empty Apple style spans).
2130
2131         * dom/Text.cpp:
2132         (WebCore::Text::splitText):
2133         Comment changes.
2134         
2135         * editing/ApplyStyleCommand.cpp:
2136         (WebCore::isUnstyledStyleSpan):
2137         Renamed from isEmptyStyleSpan.
2138         
2139         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
2140         Rename emptySpans local to unstyledSpans.
2141         
2142         (WebCore::dummySpanAncestorForNode):
2143         New. To locate Apple style span created when splitting a text node.
2144         
2145         (WebCore::ApplyStyleCommand::cleanupUnstyledAppleStyleSpans):
2146         Renamed from cleanUpEmptyStyleSpans. Algorithm changed to scan children
2147         of dummy span's parents, rather than traversing up from start and
2148         end locations. Old algorithm would miss empty spans in the bug case.
2149         
2150         (WebCore::ApplyStyleCommand::applyInlineStyle):
2151         Use dummySpanAncestorForNode() and cleanupUnstyledAppleStyleSpans().
2152         
2153         (WebCore::ApplyStyleCommand::removeCSSStyle):
2154         Renamed isEmptyStyleSpan() to isUnstyledStyleSpan().
2155         
2156         (WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
2157         Comment changes.
2158         
2159         * editing/ApplyStyleCommand.h:
2160         Renamed cleanUpEmptyStyleSpans() to cleanupUnstyledAppleStyleSpans().
2161           
2162         * editing/ReplaceSelectionCommand.cpp:
2163         (WebCore::ReplaceSelectionCommand::removeRedundantStyles):
2164         Allow for Apple style span to be unstyled, because old email may have this in the DOM.
2165         Use !node->hasChildNodes() instead of !node->firstChild().
2166         
2167         * editing/SplitTextNodeCommand.cpp:
2168         (WebCore::SplitTextNodeCommand::doApply):
2169         Comment changes.
2170         
2171         * rendering/RenderTreeAsText.cpp:
2172         (WebCore::isEmptyOrUnstyledAppleStyleSpan):
2173         (WebCore::operator<<):
2174         Flag empty or unstyled AppleStyleSpa nbecause we never want to leave them in the DOM
2175
2176 2006-10-13  Nikolas Zimmermann  <zimmermann@kde.org>
2177
2178         Reviewed by Eric.
2179
2180         Fix Qt/Linux build after Adele's popup menu changes.
2181
2182         * CMakeLists.txt:
2183         * platform/qt/FileChooserQt.cpp:
2184         (WebCore::FileChooser::disconnectUploadControl):
2185         * platform/qt/PopupMenuQt.cpp: Added.
2186         (WebCore::PopupMenu::PopupMenu):
2187         (WebCore::PopupMenu::~PopupMenu):
2188         (WebCore::PopupMenu::clear):
2189         (WebCore::PopupMenu::populate):
2190         (WebCore::PopupMenu::show):
2191         (WebCore::PopupMenu::hide):
2192         (WebCore::PopupMenu::addSeparator):
2193         (WebCore::PopupMenu::addGroupLabel):
2194         (WebCore::PopupMenu::addOption):
2195         * platform/qt/RenderPopupMenuQt.cpp: Removed.
2196         * platform/qt/RenderPopupMenuQt.h: Removed.
2197         * platform/qt/RenderThemeQt.cpp:
2198
2199 2006-10-13  Kevin McCullough  <KMcCullough@apple.com>
2200
2201         Reviewed by Darin.
2202
2203         fixed build failure 
2204
2205         * WebCore.xcodeproj/project.pbxproj:
2206         * loader/mac/WebFrameLoader.mm:
2207
2208 2006-10-13  Darin Adler  <darin@apple.com>
2209
2210         Reviewed by Adele.
2211
2212         - converted WebFormState from Objective-C to C++
2213
2214         * WebCore.exp: Added a new symbol, changed one symbol from C to C++.
2215
2216         * WebCore.xcodeproj/project.pbxproj: Made lots of headers "private" instead of "project".
2217         Added UChar.h and FrameLoaderTypes.h.
2218
2219         * loader/FrameLoaderTypes.h: Added. Has enums from WebFrameLoader.h.
2220
2221         * loader/mac/WebFormState.h: Converted class to C++.
2222         * loader/mac/WebFormState.mm: Ditto.
2223
2224         * loader/mac/WebFrameLoader.h:
2225         * loader/mac/WebFrameLoader.mm:
2226         (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
2227         (-[WebFrameLoader continueFragmentScrollAfterNavigationPolicy:formState:]):
2228         (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]):
2229         (-[WebFrameLoader invalidatePendingPolicyDecisionCallingDefaultAction:]):
2230         (-[WebFrameLoader checkNewWindowPolicyForRequest:action:frameName:formState:andCall:withSelector:]):
2231         (-[WebFrameLoader continueAfterNewWindowPolicy:]):
2232         (-[WebFrameLoader checkNavigationPolicyForRequest:documentLoader:formState:andCall:withSelector:]):
2233         (-[WebFrameLoader continueAfterNavigationPolicy:]):
2234         (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]):
2235         (-[WebFrameLoader loadDocumentLoader:withLoadType:formState:]):
2236         (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
2237         (-[WebFrameLoader postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
2238         Changed Objective-C WebFormState uses to C++ WebCore::FormState.
2239
2240 2006-10-13  Adele Peterson  <adele@apple.com>
2241
2242         Reviewed by Maciej.
2243
2244         - Fix for <rdar://problem/4768591> REGRESSION: List box selection color should just be a darker version of regular selection color
2245
2246         * rendering/RenderListBox.cpp:
2247         (WebCore::RenderListBox::paintItemForeground):
2248         * rendering/RenderTheme.cpp:
2249         (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
2250         (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
2251         (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
2252         (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
2253         * rendering/RenderThemeMac.h:
2254         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::activeListBoxSelectionBackgroundColor):
2255
2256 2006-10-13  Rob Buis  <buis@kde.org>
2257
2258         Reviewed by Mitz.
2259
2260         http://bugs.webkit.org/show_bug.cgi?id=11217
2261         Cleanup svg coding style
2262
2263         Cleanup coding style in svg structure classes.
2264
2265         * ksvg2/svg/SVGDefsElement.cpp:
2266         (WebCore::SVGDefsElement::SVGDefsElement):
2267         * ksvg2/svg/SVGDefsElement.h:
2268         * ksvg2/svg/SVGDescElement.cpp:
2269         (WebCore::SVGDescElement::SVGDescElement):
2270         * ksvg2/svg/SVGDescElement.h:
2271         * ksvg2/svg/SVGDocument.cpp:
2272         * ksvg2/svg/SVGDocument.h:
2273         * ksvg2/svg/SVGElementInstance.cpp:
2274         (WebCore::SVGElementInstance::SVGElementInstance):
2275         (WebCore::SVGElementInstance::correspondingElement):
2276         (WebCore::SVGElementInstance::correspondingUseElement):
2277         (WebCore::SVGElementInstance::parentNode):
2278         (WebCore::SVGElementInstance::childNodes):
2279         (WebCore::SVGElementInstance::previousSibling):
2280         (WebCore::SVGElementInstance::nextSibling):
2281         (WebCore::SVGElementInstance::firstChild):
2282         (WebCore::SVGElementInstance::lastChild):
2283         * ksvg2/svg/SVGElementInstance.h:
2284         * ksvg2/svg/SVGElementInstanceList.cpp:
2285         * ksvg2/svg/SVGElementInstanceList.h:
2286         * ksvg2/svg/SVGGElement.cpp:
2287         (WebCore::SVGGElement::SVGGElement):
2288         (WebCore::SVGGElement::parseMappedAttribute):
2289         (WebCore::SVGDummyElement::SVGDummyElement):
2290         * ksvg2/svg/SVGGElement.h:
2291         (WebCore::SVGGElement::rendererIsNeeded):
2292         * ksvg2/svg/SVGImageElement.cpp:
2293         (WebCore::SVGImageElement::createRenderer):
2294         * ksvg2/svg/SVGImageElement.h:
2295         * ksvg2/svg/SVGSVGElement.cpp:
2296         (WebCore::SVGSVGElement::SVGSVGElement):
2297         (WebCore::SVGSVGElement::pixelUnitToMillimeterX):
2298         (WebCore::SVGSVGElement::pixelUnitToMillimeterY):
2299         (WebCore::SVGSVGElement::currentScale):
2300         (WebCore::SVGSVGElement::setCurrentScale):
2301         (WebCore::SVGSVGElement::currentTranslate):
2302         (WebCore::SVGSVGElement::parseMappedAttribute):
2303         (WebCore::SVGSVGElement::suspendRedraw):
2304         (WebCore::SVGSVGElement::unsuspendRedraw):
2305         (WebCore::SVGSVGElement::unsuspendRedrawAll):
2306         (WebCore::SVGSVGElement::forceRedraw):
2307         (WebCore::SVGSVGElement::getIntersectionList):
2308         (WebCore::SVGSVGElement::getEnclosureList):
2309         (WebCore::SVGSVGElement::checkIntersection):
2310         (WebCore::SVGSVGElement::checkEnclosure):
2311         (WebCore::SVGSVGElement::deselectAll):
2312         (WebCore::SVGSVGElement::createSVGLength):
2313         (WebCore::SVGSVGElement::createSVGAngle):
2314         (WebCore::SVGSVGElement::createSVGMatrix):
2315         (WebCore::SVGSVGElement::createSVGTransform):
2316         (WebCore::SVGSVGElement::createSVGTransformFromMatrix):
2317         (WebCore::SVGSVGElement::getCTM):
2318         (WebCore::SVGSVGElement::getScreenCTM):
2319         (WebCore::SVGSVGElement::setCurrentTime):
2320         * ksvg2/svg/SVGSVGElement.h:
2321         (WebCore::SVGSVGElement::rendererIsNeeded):
2322         * ksvg2/svg/SVGSwitchElement.cpp:
2323         (WebCore::SVGSwitchElement::SVGSwitchElement):
2324         (WebCore::SVGSwitchElement::childShouldCreateRenderer):
2325         * ksvg2/svg/SVGSwitchElement.h:
2326         (WebCore::SVGSwitchElement::rendererIsNeeded):
2327         * ksvg2/svg/SVGSymbolElement.cpp:
2328         (WebCore::SVGSymbolElement::SVGSymbolElement):
2329         (WebCore::SVGSymbolElement::parseMappedAttribute):
2330         * ksvg2/svg/SVGSymbolElement.h:
2331         (WebCore::SVGSymbolElement::shouldAttachChild):
2332         * ksvg2/svg/SVGTitleElement.cpp:
2333         (WebCore::SVGTitleElement::SVGTitleElement):
2334         * ksvg2/svg/SVGTitleElement.h:
2335         * ksvg2/svg/SVGUseElement.cpp:
2336         (WebCore::SVGUseElement::parseMappedAttribute):
2337         (WebCore::SVGUseElement::closeRenderer):
2338         * ksvg2/svg/SVGUseElement.h:
2339         (WebCore::SVGUseElement::rendererIsNeeded):
2340
2341 2006-10-12  Adele Peterson  <adele@apple.com>
2342
2343         Reviewed by Anders.
2344
2345         - Fix for http://bugs.webkit.org/show_bug.cgi?id=11172
2346           REGRESSION (NativeListBox): OPTION text paints over the edge of the select element at http://jobs.apple.com/
2347         
2348          Test: fast/forms/listbox-width-change.html
2349
2350         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::updateFromElement):
2351           When the options change, call setNeedsLayoutAndMinMaxRecalc.
2352
2353 2006-10-12  Maciej Stachowiak  <mjs@apple.com>
2354
2355         Reviewed by Oliver.
2356
2357         - moved a bunch of WebFrameBridge code down to WebCoreFrameBridge, now that it no longer has any WebKit dependencies
2358
2359         * WebCore.xcodeproj/project.pbxproj:
2360         * bridge/mac/WebCoreFrameBridge.h:
2361         * bridge/mac/WebCoreFrameBridge.mm:
2362         (stringByCollapsingNonPrintingCharacters):
2363         (-[WebCoreFrameBridge setTitle:]):
2364         (-[WebCoreFrameBridge didFirstLayout]):
2365         (-[WebCoreFrameBridge notifyIconChanged:]):
2366         (-[WebCoreFrameBridge originalRequestURL]):
2367         (-[WebCoreFrameBridge isLoadTypeReload]):
2368         (-[WebCoreFrameBridge frameDetached]):
2369         (-[WebCoreFrameBridge tokenizerProcessedData]):
2370         (-[WebCoreFrameBridge receivedData:textEncodingName:]):
2371         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
2372         (-[WebCoreFrameBridge objectLoadedFromCacheWithURL:response:data:]):
2373         (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
2374         (-[WebCoreFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
2375         (-[WebCoreFrameBridge reportClientRedirectCancelled:]):
2376         (-[WebCoreFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]):
2377         (-[WebCoreFrameBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
2378         (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
2379         (-[WebCoreFrameBridge incomingReferrer]):
2380         (-[WebCoreFrameBridge isReloading]):
2381         (-[WebCoreFrameBridge handledOnloadEvents]):
2382         (-[WebCoreFrameBridge mainResourceURLResponse]):
2383         (-[WebCoreFrameBridge loadEmptyDocumentSynchronously]):
2384         * loader/mac/LoaderNSURLExtras.h:
2385         * loader/mac/LoaderNSURLRequestExtras.h: Added.
2386         * loader/mac/LoaderNSURLRequestExtras.m: Added.
2387         (isConditionalRequest):
2388         (setHTTPReferrer):
2389         * loader/mac/WebFrameLoader.mm:
2390         * loader/mac/WebSubresourceLoader.mm:
2391
2392 2006-10-12  Adele Peterson  <adele@apple.com>
2393
2394         RS by Geoff.
2395
2396         Renamed menuListIsDetaching to disconnectMenuList, 
2397         uploadControlDetaching to disconnectUploadControl, and fileChooserDetachingSoon to disconnectFileChooser.  
2398         These names match similar methods in WebCore a little better.
2399
2400         * platform/FileChooser.h:
2401         * platform/PopupMenu.h: (WebCore::PopupMenu::disconnectMenuList):
2402         * platform/mac/FileChooserMac.mm: (-[OpenPanelController disconnectFileChooser]):
2403         (WebCore::FileChooser::disconnectUploadControl):
2404         * platform/win/TemporaryLinkStubs.cpp: (FileChooser::disconnectUploadControl):
2405         * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::~RenderFileUploadControl):
2406         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::~RenderMenuList):
2407
2408 2006-10-12  Adele Peterson  <adele@apple.com>
2409
2410         Reviewed by Maciej.
2411
2412         WebCore part of fix for <rdar://problem/4450613> need a means to attach user data to any menu that is popuped up in HTML
2413
2414         Added private delegate method for clients that want access to a PopupMenu's NSMenu.
2415
2416         * bridge/mac/FrameMac.h:
2417         * bridge/mac/FrameMac.mm: (WebCore::FrameMac::willPopupMenu):
2418         * bridge/mac/WebCoreFrameBridge.h:
2419
2420         * platform/mac/PopupMenuMac.mm: (WebCore::PopupMenu::show): Calls willPopupMenu with the NSMenu about to be popped up.
2421
2422 2006-10-12  Adele Peterson  <adele@apple.com>
2423
2424         Reviewed by Alice.
2425
2426         - Fix for <rdar://problem/4707372> 
2427           After timers fix, crash in -[NSMenu performActionForItemAtIndex:] after moving/detroying active popup menu
2428
2429         * platform/PopupMenu.h: (WebCore::PopupMenu::menuListIsDetaching): Added. Zeros out the pointer to the menu list.
2430         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::~RenderMenuList): Calls menuListIsDetaching.
2431         * platform/mac/PopupMenuMac.mm: (WebCore::PopupMenu::show): Added a RefPtr to protect the PopupMenu while the NSMenu is up,
2432           in case the RenderMenuList goes away.  Also, checks the pointer to the menu list immediately afterwards.
2433
2434 2006-10-12  Nikolas Zimmermann  <zimmermann@kde.org>
2435
2436         Reviewed by Maciej.
2437
2438         Trying to fix "DRT hangs on certain testcases" like fast/dom/Document/document-reopen.html
2439         document.open(); document.write(..); and NO document.close(). On the Qt platform this
2440         leaves a HTMLDocument which is still in parsing mode (parsing() always returns true).
2441         DRT waits forever, but m_frame->isComplete() is never true due the parsing mode problem.
2442
2443         Hmpf, this took me nine hours to debug today.
2444         Result: Couldn't find the real fix, going for a workaround for now.
2445         
2446         540 minutes, 1 line of code changed after all -> 0,0019 lines per minute.
2447
2448         * platform/qt/FrameQt.cpp:
2449         (WebCore::FrameQt::handledOnloadEvents): Call endIfNotLoading() manually.
2450         * platform/qt/FrameQtClient.cpp:
2451         (WebCore::FrameQtClientDefault::receivedData): Use write() again instead of addData().
2452
2453 2006-10-12  Adam Roben  <aroben@apple.com>
2454
2455         Reviewed by Adele.
2456
2457         Move popup menu code out of rendering/ and into platform/.
2458         RenderPopupMenu becomes PopupMenu, the
2459         RenderPopupMenuMac/RenderPopupMenuWin subclasses and all the associated
2460         virtual methods go away, RenderTheme gets to stop worrying about popup
2461         menus, PopupMenu becomes ref-counted, and everyone becomes happy.
2462
2463         * WebCore.vcproj/WebCore/WebCore.vcproj: Move files within project.
2464         * WebCore.xcodeproj/project.pbxproj: Ditto.
2465         * html/HTMLSelectElement.cpp: Remove unnecessary #include.
2466         * platform/PopupMenu.cpp: Moved from rendering/RenderPopupMenu.cpp.
2467         Also renamed showPopup()/hidePopup() to show()/hide() to disambiguate
2468         from RenderMenuList::showPopup/hidePopup.
2469         (WebCore::PopupMenu::create): New static creation method to hand back a
2470         PassRefPtr<PopupMenu>.
2471         (WebCore::PopupMenu::addItems): This platform-independent method should
2472         be called by PopupMenu::populate when the platform-specific
2473         implementation is ready to receive the menu items. Fixed an ASSERT
2474         while I was at it.
2475         * platform/PopupMenu.h: Moved from rendering/RenderPopupMenu.h. No more
2476         need for virtual methods.
2477         (WebCore::PopupMenu::wasClicked):
2478         (WebCore::PopupMenu::setWasClicked):
2479         (WebCore::PopupMenu::popupHandle):
2480         * platform/mac/PopupMenuMac.mm: Moved from
2481         rendering/RenderPopupMenuMac.mm. Much renaming ensues.
2482         (WebCore::PopupMenu::PopupMenu):
2483         (WebCore::PopupMenu::~PopupMenu):
2484         (WebCore::PopupMenu::clear):
2485         (WebCore::PopupMenu::populate):
2486         (WebCore::PopupMenu::show):
2487         (WebCore::PopupMenu::hide):
2488         (WebCore::PopupMenu::addSeparator):
2489         (WebCore::PopupMenu::addGroupLabel): Since we don't have our own
2490         RenderStyle anymore, just pick up the style from our RenderMenuList.
2491         (WebCore::PopupMenu::addOption): Ditto.
2492         * platform/win/TemporaryLinkStubs.cpp: Rename-fest.
2493         (PopupMenu::PopupMenu):
2494         (PopupMenu::~PopupMenu):
2495         (PopupMenu::clear):
2496         (PopupMenu::populate):
2497         (PopupMenu::show):
2498         (PopupMenu::hide):
2499         (PopupMenu::addSeparator):
2500         (PopupMenu::addGroupLabel):
2501         (PopupMenu::addOption):
2502         * rendering/RenderMenuList.cpp:
2503         (WebCore::RenderMenuList::~RenderMenuList):
2504         (WebCore::RenderMenuList::showPopup): Use nice new simple
2505         PopupMenu::create to make the popup.
2506         (WebCore::RenderMenuList::hidePopup):
2507         * rendering/RenderMenuList.h: Hold a RefPtr<PopupMenu> instead of a
2508         RenderPopupMenu*.
2509         (WebCore::RenderMenuList::popup):
2510         * rendering/RenderPopupMenu.cpp: Removed.
2511         * rendering/RenderPopupMenu.h: Removed.
2512         * rendering/RenderPopupMenuMac.h: Removed.
2513         * rendering/RenderPopupMenuMac.mm: Removed.
2514         * rendering/RenderPopupMenuWin.h: Removed.
2515         * rendering/RenderTheme.cpp: Get rid of createPopupMenu() method.
2516         * rendering/RenderTheme.h: Ditto.
2517         * rendering/RenderThemeMac.h: Ditto.
2518         * rendering/RenderThemeMac.mm: Ditto.
2519         * rendering/RenderThemeWin.cpp: Ditto.
2520         * rendering/RenderThemeWin.h: Ditto.
2521
2522 2006-10-12  Adele Peterson  <adele@apple.com>
2523
2524         Reviewed by Dave Harrison.
2525
2526         - Fixed <rdar://problem/4650813> REGRESSION: typing in a textarea in Safari is extremely slow (sample shows focus ring drawing)
2527
2528         * rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout):
2529         Make subtree layouts work for textareas as well as text fields.
2530
2531 2006-10-12  Nikolas Zimmermann  <zimmermann@kde.org>
2532
2533         Reviewed by MacDome.
2534
2535         Finally found a way to remove our begin() trickery in FrameQt.
2536         The (probably misnamed) Frame::setEncoding() function automatically
2537         calls Frame::receivedFirstData() which calls being on the working
2538         url, which has been passed to didOpenUrl(). Took me some hours
2539         to figure out that the missing charset logic, forced us to do hacks.
2540
2541         * platform/ResourceLoader.h:
2542         * platform/ResourceLoaderInternal.h:
2543         * platform/qt/FrameQt.cpp:
2544         (WebCore::FrameQt::tokenizerProcessedData):
2545         * platform/qt/FrameQt.h:
2546         * platform/qt/FrameQtClient.cpp:
2547         (WebCore::FrameQtClientDefault::FrameQtClientDefault):
2548         (WebCore::FrameQtClientDefault::openURL):
2549         (WebCore::FrameQtClientDefault::submitForm):
2550         (WebCore::FrameQtClientDefault::receivedData):
2551         (WebCore::FrameQtClientDefault::receivedAllData):
2552         * platform/qt/FrameQtClient.h:
2553         * platform/qt/ResourceLoaderManager.cpp:
2554         (WebCore::ResourceLoaderManager::slotData):
2555         (WebCore::ResourceLoaderManager::slotMimetype):
2556         (WebCore::ResourceLoaderManager::slotResult):
2557         (WebCore::ResourceLoaderManager::remove):
2558         * platform/qt/ResourceLoaderQt.cpp:
2559         (WebCore::ResourceLoader::retrieveCharset):
2560         (WebCore::ResourceLoader::extractCharsetFromHeaders):
2561
2562 2006-10-12  Adam Roben  <aroben@apple.com>
2563
2564         Reviewed by Hyatt.
2565
2566         Bandaid-ing a null-dereference crash until a real fix is made.
2567
2568         * page/FrameView.cpp:
2569         (WebCore::FrameView::windowClipRect):
2570
2571 2006-10-12  Rob Buis  <buis@kde.org>
2572
2573         Reviewed by Mitz.
2574
2575         http://bugs.webkit.org/show_bug.cgi?id=11217
2576         Cleanup svg coding style
2577
2578         Cleanup coding style in svg text classes.
2579
2580         * ksvg2/svg/SVGTRefElement.cpp:
2581         (WebCore::SVGTRefElement::SVGTRefElement):
2582         (WebCore::SVGTRefElement::updateReferencedText):
2583         (WebCore::SVGTRefElement::parseMappedAttribute):
2584         (WebCore::SVGTRefElement::childShouldCreateRenderer):
2585         (WebCore::SVGTRefElement::createRenderer):
2586         * ksvg2/svg/SVGTRefElement.h:
2587         (WebCore::SVGTRefElement::rendererIsNeeded):
2588         * ksvg2/svg/SVGTSpanElement.cpp:
2589         (WebCore::SVGTSpanElement::SVGTSpanElement):
2590         (WebCore::SVGTSpanElement::childShouldCreateRenderer):
2591         (WebCore::SVGTSpanElement::createRenderer):
2592         * ksvg2/svg/SVGTSpanElement.h:
2593         (WebCore::SVGTSpanElement::rendererIsNeeded):
2594         * ksvg2/svg/SVGTextContentElement.cpp:
2595         (WebCore::SVGTextContentElement::SVGTextContentElement):
2596         (WebCore::SVGTextContentElement::parseMappedAttribute):
2597         * ksvg2/svg/SVGTextContentElement.h:
2598         * ksvg2/svg/SVGTextElement.cpp:
2599         (WebCore::SVGTextElement::SVGTextElement):
2600         (WebCore::SVGTextElement::localMatrix):
2601         (WebCore::SVGTextElement::parseMappedAttribute):
2602         (WebCore::SVGTextElement::updateLocalTransform):
2603         (WebCore::SVGTextElement::nearestViewportElement):
2604         (WebCore::SVGTextElement::farthestViewportElement):
2605         (WebCore::SVGTextElement::getScreenCTM):
2606         (WebCore::SVGTextElement::getCTM):
2607         (WebCore::SVGTextElement::createRenderer):
2608         (WebCore::SVGTextElement::childShouldCreateRenderer):
2609         * ksvg2/svg/SVGTextElement.h:
2610         (WebCore::SVGTextElement::getTransformToElement):
2611         (WebCore::SVGTextElement::rendererIsNeeded):
2612         * ksvg2/svg/SVGTextPositioningElement.cpp:
2613         (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
2614         (WebCore::SVGTextPositioningElement::parseMappedAttribute):
2615         * ksvg2/svg/SVGTextPositioningElement.h:
2616
2617 2006-10-12  Nikolas Zimmermann  <zimmermann@kde.org>
2618
2619         Reviewed by Maciej.
2620
2621         Specialization of alert() for DumpRenderTree - just log the output, don't show any message box.
2622
2623         * platform/qt/FrameQt.cpp:
2624         (WebCore::FrameQt::runJavaScriptAlert): Move runJavaScriptAlert functionality to FrameQtClientDefault.
2625         * platform/qt/FrameQtClient.cpp:
2626         (WebCore::FrameQtClientDefault::runJavaScriptAlert):
2627         * platform/qt/FrameQtClient.h:
2628
2629 2006-10-12  Maciej Stachowiak  <mjs@apple.com>
2630
2631         Reviewed by Eric.
2632
2633         - move m_responseMIMEType out of ResourceRequest, where it doesn't belong
2634
2635         * page/FramePrivate.h: Add m_responseMIMEType
2636         * page/ResourceRequest.h: Remove m_responseMIMEType
2637         * page/Frame.cpp:
2638         (WebCore::Frame::setResponseMIMEType): added
2639         (WebCore::Frame::responseMIMEType): added
2640         (WebCore::Frame::begin): get MIME type from the right place
2641         (WebCore::Frame::write): ditto
2642         * page/Frame.h:
2643         * bindings/js/kjs_window.cpp:
2644         (KJS::createNewWindow): updated to use new Frame methods
2645         (KJS::WindowFunc::callAsFunction): ditto
2646         * bridge/mac/WebCoreFrameBridge.mm:
2647         (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]): ditto
2648         (-[WebCoreFrameBridge canProvideDocumentSource]): ditto
2649         * loader/PluginDocument.cpp:
2650         (WebCore::PluginTokenizer::createDocumentStructure): ditto
2651
2652 2006-10-12  Maciej Stachowiak  <mjs@apple.com>
2653
2654         Reviewed by Eric.
2655         
2656         <rdar://problem/4774321> REGRESSION: "Can't find the server" error page contains unstyled text and missing image
2657
2658         We really need some way to test loadHTMLString since it keeps breaking!
2659         
2660         * loader/mac/WebFrameLoader.mm:
2661         (-[WebFrameLoader commitProvisionalLoad:]): Set stuff up on the proper data source.
2662
2663 2006-10-12  Nikolas Zimmermann  <zimmermann@kde.org>
2664
2665         Reviewed by Eric.
2666
2667         Fix Qt/Linux build.
2668
2669         * CMakeLists.txt:
2670         * platform/qt/FileChooserQt.cpp:
2671         (WebCore::FileChooser::create):
2672
2673 2006-10-12  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
2674
2675         Reviewed by Maciej.
2676
2677         Update Gdk\Linux build for recent changes, based on Qt code
2678
2679         * platform/gdk/FrameGdk.cpp:
2680         (WebCore::FrameGdkClientDefault::FrameGdkClientDefault):
2681         (WebCore::FrameGdkClientDefault::~FrameGdkClientDefault):
2682         (WebCore::FrameGdkClientDefault::setFrame):
2683         (WebCore::FrameGdkClientDefault::openURL):
2684         (WebCore::FrameGdkClientDefault::submitForm):
2685         (WebCore::FrameGdkClientDefault::receivedResponse):
2686         (WebCore::FrameGdkClientDefault::receivedData):
2687         (WebCore::FrameGdkClientDefault::receivedAllData):
2688         (WebCore::FrameGdk::FrameGdk):
2689         (WebCore::FrameGdk::openURL):
2690         (WebCore::FrameGdk::submitForm):
2691         (WebCore::FrameGdk::urlSelected):
2692         * platform/gdk/FrameGdk.h:
2693         * platform/gdk/TemporaryLinkStubs.cpp:
2694         (FrameGdk::createJavaAppletWidget):
2695         (FileChooser::create):
2696
2697 2006-10-12  Dave Hyatt  <hyatt@apple.com>
2698
2699         Patch to add more clipping retrieval functionality for widgets.
2700        
2701         Reviewed by mjs
2702
2703         * page/Frame.h:
2704         Remove windowResizerRect.  This is in the wrong place.
2705         
2706         * page/FrameView.cpp:
2707         (WebCore::FrameView::windowClipRect):
2708         (WebCore::FrameView::windowClipRectForLayer):
2709         Break out windowClipRect into helper functions that can be called separately (to make
2710         it easier for scrollbars in overflow sections and list boxes to get to an enclosing
2711         layer and get the right clip.
2712         
2713         * page/FrameView.h:
2714         Add the new windowClipRect helper methods.
2715         
2716         * platform/ScrollBar.h:
2717         Add a new interface to ScrollbarClient so that scrollbars can hand back proper
2718         clip rects for themselves depending on how they are used.
2719         
2720         * platform/ScrollView.h:
2721         Stub out methods for talking to a double buffer backing store on Win32.
2722         
2723         * platform/Widget.h:
2724         Add the ability to query for invalidation suppression.
2725         
2726         * rendering/RenderLayer.cpp:
2727         (WebCore::RenderLayer::windowClipRect):
2728         (WebCore::RenderLayer::paintOverflowControls):
2729         (WebCore::RenderLayer::calculateRects):
2730         (WebCore::RenderLayer::childrenClipRect):
2731         (WebCore::RenderLayer::selfClipRect):
2732         * rendering/RenderLayer.h:
2733         Enhance layers so that they can return either their foreground or background
2734         document clip rects.  Make sure a layer scrollbar can return a proper clip.
2735         
2736         * rendering/RenderListBox.cpp:
2737         (WebCore::RenderListBox::windowClipRect):
2738         * rendering/RenderListBox.h:
2739         Make sure a list box scrollbar can return a proper clip.
2740         
2741         * rendering/RenderObject.cpp:
2742         (WebCore::RenderObject::enclosingLayer):
2743         * rendering/RenderObject.h:
2744         Make enclosingLayer const.
2745         
2746 2006-10-11  Darin Adler  <darin@apple.com>
2747
2748         Reviewed by John.
2749
2750         - some changes to prepare for converting more code to C++
2751
2752         * bridge/mac/WebCoreFrameBridge.h: Added import of <Cocoa/Cocoa.h> so this header is
2753         self-sufficient.
2754
2755         * bridge/mac/WebCoreViewFactory.h: Added forward declaration of the NSMenu class.
2756         Needed since the class is used in this header (for some work I have not landed yet).
2757
2758         * loader/mac/LoaderNSURLExtras.h:
2759         * loader/mac/WebFormDataStream.h:
2760         Added extern "C" so this code can be used from C++.
2761
2762         * loader/mac/LoaderNSURLExtras.m:
2763         * loader/mac/WebDataProtocol.mm:
2764         * loader/mac/WebDocumentLoader.mm:
2765         * loader/mac/WebFormDataStream.m:
2766         * loader/mac/WebLoader.mm:
2767         * loader/mac/WebMainResourceLoader.mm:
2768         * loader/mac/WebNetscapePlugInStreamLoader.mm:
2769         * loader/mac/WebPolicyDecider.mm:
2770         * loader/mac/WebSubresourceLoader.mm:
2771         Added missing includes of config.h.
2772
2773 2006-10-11  John Sullivan  <sullivan@apple.com>
2774         
2775         Darin wrote this code; we tested it; I give it the thumbs up.
2776         
2777         - fixed regression from svn revision 16982 that was generating the wrong Obj-C classes
2778
2779         The hash table to look up an element class given a QualifiedName was
2780         not working at all.
2781
2782         * dom/QualifiedName.h:
2783         (WebCore::QualifiedName::impl):
2784         Added. This new accessor method for impl is needed if we want to use
2785         a QualifiedName as a hash table key without doing the kind of specialization
2786         we do for String. Maybe later we can do the String thing.
2787
2788         * bindings/objc/DOM.mm:
2789         (WebCore::addElementClass):
2790         Use QualifiedName.impl instead of the QualifiedName pointer itself.
2791         The QualifiedName pointer is *not* unique so almost nothing would be found
2792         in this hash table!
2793         (WebCore::elementClass):
2794         ditto
2795         
2796 2006-10-11  Adam Roben  <aroben@apple.com>
2797
2798         Rubberstamped by Anders.
2799
2800         Clean up FileChooser::create and Icon::newIconForFile.
2801
2802         * WebCore.xcodeproj/project.pbxproj:
2803         * platform/mac/FileChooserMac.mm:
2804         (WebCore::FileChooser::create):
2805         * platform/mac/IconMac.mm:
2806         (WebCore::Icon::newIconForFile):
2807
2808 2006-10-11  Oliver Hunt  <oliver@apple.com>
2809
2810         Reviewed by Adam.
2811
2812         Fix for http://bugs.webkit.org/show_bug.cgi?id=11251
2813         Corrects canvas tag to not throw JS exception when drawing
2814         zero sized rects, arcs, etc
2815
2816         * html/CanvasRenderingContext2D.cpp:
2817         (WebCore::CanvasRenderingContext2D::arcTo):
2818         (WebCore::CanvasRenderingContext2D::arc):
2819         (WebCore::CanvasRenderingContext2D::rect):
2820         (WebCore::CanvasRenderingContext2D::clearRect):
2821         (WebCore::CanvasRenderingContext2D::fillRect):
2822         (WebCore::CanvasRenderingContext2D::strokeRect):
2823
2824 2006-10-11  Rob Buis  <buis@kde.org>
2825
2826         Reviewed by Mitz.
2827
2828         http://bugs.webkit.org/show_bug.cgi?id=11221
2829         REGRESSION: iExploder crash due to style="cursor: url()"
2830
2831         Take better care of empty cursor lists.
2832
2833         Test: fast/css/invalid-cursor-property-crash.html
2834
2835         * css/cssparser.cpp:
2836         (WebCore::CSSParser::parseValue):
2837
2838 2006-10-11  Adam Roben  <aroben@apple.com>
2839
2840         Fixing Windows for real this time.
2841
2842         * platform/win/TemporaryLinkStubs.cpp:
2843         (FileChooser::create):
2844
2845 2006-10-11  Adam Roben  <aroben@apple.com>
2846
2847         Fix Windows build.
2848
2849         * platform/win/TemporaryLinkStubs.cpp:
2850         (FileChooser::create):
2851
2852 2006-10-11  Antti Koivisto  <koivisto@iki.fi>
2853
2854         Reviewed by Hyatt.
2855         
2856         http://bugs.webkit.org/show_bug.cgi?id=4377
2857         
2858         Respect css visibility semantics for layers too
2859
2860         * rendering/RenderContainer.cpp:
2861         (WebCore::RenderContainer::removeChildNode):
2862         (WebCore::RenderContainer::appendChildNode):
2863         (WebCore::RenderContainer::insertChildNode):
2864         * rendering/RenderLayer.cpp:
2865         (WebCore::RenderLayer::RenderLayer):
2866         (WebCore::RenderLayer::updateLayerPositions):
2867         (WebCore::RenderLayer::setHasVisibleContent):
2868         (WebCore::RenderLayer::dirtyVisibleContentStatus):
2869         (WebCore::RenderLayer::childVisibilityChanged):
2870         (WebCore::RenderLayer::dirtyVisibleDescendantStatus):
2871         (WebCore::RenderLayer::updateVisibilityStatus):
2872         (WebCore::RenderLayer::addChild):
2873         (WebCore::RenderLayer::removeChild):
2874         (WebCore::RenderLayer::updateZOrderLists):
2875         (WebCore::RenderLayer::collectLayers):
2876         * rendering/RenderLayer.h:
2877         (WebCore::RenderLayer::hasVisibleContent):
2878         * rendering/RenderObject.cpp:
2879         (WebCore::RenderObject::setStyle):
2880
2881 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
2882
2883         Reviewed by Oliver.
2884
2885         - added RetainPtr, smart pointer for refcounted ObjC objects and CFTypes
2886
2887         * WebCore.xcodeproj/project.pbxproj:
2888         * platform/cf/RetainPtr.h: Added.
2889         (WTF::):
2890         (WTF::RetainPtr::RetainPtr):
2891         (WTF::RetainPtr::~RetainPtr):
2892         (WTF::RetainPtr::get):
2893         (WTF::RetainPtr::operator*):
2894         (WTF::RetainPtr::operator->):
2895         (WTF::RetainPtr::operator!):
2896         (WTF::RetainPtr::operator UnspecifiedBoolType):
2897         (WTF::::operator):
2898         (WTF::::swap):
2899         (WTF::swap):
2900         (WTF::operator==):
2901         (WTF::operator!=):
2902         (WTF::static_pointer_cast):
2903         (WTF::const_pointer_cast):
2904         (WTF::getPtr):
2905         
2906         - use it in WidgetMac so it gets tested in at least one place
2907         
2908         * platform/mac/WidgetMac.mm:
2909         (WebCore::Widget::Widget):
2910         (WebCore::Widget::~Widget):
2911         (WebCore::Widget::setEnabled):
2912         (WebCore::Widget::isEnabled):
2913         (WebCore::Widget::setCursor):
2914         (WebCore::Widget::getView):
2915         (WebCore::Widget::setView):
2916         (WebCore::Widget::getOuterView):
2917
2918 2006-10-10  Brady Eidson  <beidson@apple.com>
2919
2920         Reviewed by Maciej.
2921
2922         Moved WebFrameLoader from WebFrameBridge into WebCoreFrameBridge
2923
2924         * bridge/mac/WebCoreFrameBridge.h:
2925         * bridge/mac/WebCoreFrameBridge.mm:
2926         (-[WebCoreFrameBridge initMainFrameWithPage:]):
2927         (-[WebCoreFrameBridge initSubframeWithOwnerElement:]):
2928         (-[WebCoreFrameBridge dealloc]):
2929         (-[WebCoreFrameBridge close]):
2930         (-[WebCoreFrameBridge setFrameLoaderClient:]):
2931         (-[WebCoreFrameBridge frameLoader]):
2932         * loader/mac/WebFrameLoader.h:
2933         * loader/mac/WebFrameLoader.mm:
2934         (-[WebFrameLoader initWithFrameBridge:]):
2935         (-[WebFrameLoader setFrameLoaderClient:]):
2936
2937 2006-10-10  Adam Roben  <aroben@apple.com>
2938
2939         Reviewed by Oliver.
2940
2941         Make FileChooser ref-counted.
2942
2943         * platform/FileChooser.h:
2944         * platform/mac/FileChooserMac.mm:
2945         (WebCore::FileChooser::create):
2946         * rendering/RenderFileUploadControl.cpp:
2947         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
2948         (WebCore::RenderFileUploadControl::~RenderFileUploadControl):
2949         * rendering/RenderFileUploadControl.h:
2950
2951 2006-10-10  Sam Weinig  <sam.weinig@gmail.com>
2952
2953         Reviewed by Tim H.
2954
2955         Patch for http://bugs.webkit.org/show_bug.cgi?id=11248
2956         Even More auto-generated Objective-C DOM bindings changes
2957
2958         - Auto-generate DOMSVGPathElement.
2959
2960         - Auto-generate the internal interfaces even for classes that have
2961           custom internal implementations.  Change IDL property from ObjCNoInternal
2962           to ObjCCustomInternalImpl to indicate the change.
2963
2964         - Add SVG classes to DOMNode and DOMEvent internal interfaces.
2965
2966         - Add isSVGZoomEvent() method to Event class to match other Event subclasses
2967           and make DOM binding possible.
2968
2969         - Assorted cleanups.
2970
2971         * DerivedSources.make:
2972         * WebCore.xcodeproj/project.pbxproj:
2973         * bindings/objc/DOM.mm:
2974         (WebCore::addElementClass):
2975         (WebCore::createElementClassMap):
2976         (WebCore::elementClass):
2977         (-[DOMNode description]):
2978         (+[DOMNode _nodeWith:WebCore::]):
2979         (-[DOMNode addEventListener:listener:useCapture:]):
2980         (-[DOMNode removeEventListener:listener:useCapture:]):
2981         (-[DOMElement _NPObject]):
2982         (WebCore::ObjCEventListener::handleEvent):
2983         * bindings/objc/DOMEvents.mm:
2984         (+[DOMEvent _eventWith:WebCore::]):
2985         * bindings/objc/DOMInternal.h:
2986         * bindings/objc/DOMRGBColor.mm:
2987         (-[DOMRGBColor WebCore::]):
2988         * bindings/objc/DOMSVGPathSegInternal.h: Removed.
2989         * bindings/scripts/CodeGeneratorObjC.pm:
2990         * css/CSSRule.idl:
2991         * css/CSSValue.idl:
2992         * css/StyleSheet.idl:
2993         * dom/Event.cpp:
2994         (WebCore::Event::isSVGZoomEvent):
2995         * dom/Event.h:
2996         * dom/Event.idl:
2997         * dom/Node.idl:
2998         * ksvg2/events/SVGZoomEvent.cpp:
2999         (WebCore::SVGZoomEvent::isSVGZoomEvent):
3000         * ksvg2/events/SVGZoomEvent.h:
3001         * ksvg2/svg/SVGAnimatedAngle.idl:
3002         * ksvg2/svg/SVGCircleElement.idl:
3003         * ksvg2/svg/SVGClipPathElement.idl:
3004         * ksvg2/svg/SVGPathElement.idl:
3005         * ksvg2/svg/SVGPathSeg.idl:
3006
3007 2006-10-10  Oliver Hunt  <oliver@apple.com>
3008
3009         rubber stamped by Anders.
3010
3011         More buildbot bustage
3012
3013         * kcanvas/SVGInlineFlowBox.cpp:
3014         (WebCore::placeBoxesVerticallyWithAbsBaseline):
3015
3016 2006-10-10  Oliver Hunt  <oliver@apple.com>
3017
3018         Reviewed by Anders 
3019
3020         Unbreak build bots
3021
3022         * dom/Text.cpp:
3023         * kcanvas/RenderSVGText.cpp:
3024         (WebCore::RenderSVGText::layout):
3025         * kcanvas/SVGInlineFlowBox.cpp:
3026         (WebCore::placePositionedBoxesHorizontally):
3027         (WebCore::placeBoxesVerticallyWithAbsBaseline):
3028
3029 2006-10-10  Oliver Hunt  <oliver@apple.com>
3030
3031         Reviewed by hyatt.
3032
3033         Fixes bugs #6423, #6559, #10380 and #10839 
3034
3035         * WebCore.xcodeproj/project.pbxproj:
3036         * css/svg.css:
3037         * dom/Text.cpp:
3038         (WebCore::Text::createRenderer):
3039         * kcanvas/RenderSVGInline.cpp: Added.
3040         (WebCore::RenderSVGInline::RenderSVGInline):
3041         (WebCore::RenderSVGInline::createInlineBox):
3042         * kcanvas/RenderSVGInline.h: Added.
3043         (WebCore::RenderSVGInline::renderName):
3044         (WebCore::RenderSVGInline::requiresLayer):
3045         * kcanvas/RenderSVGInlineText.cpp: Added.
3046         (WebCore::RenderSVGInlineText::RenderSVGInlineText):
3047         (WebCore::RenderSVGInlineText::absoluteRects):
3048         (WebCore::RenderSVGInlineText::selectionRect):
3049         * kcanvas/RenderSVGInlineText.h: Added.
3050         (WebCore::RenderSVGInlineText::renderName):
3051         (WebCore::RenderSVGInlineText::requiresLayer):
3052         * kcanvas/RenderSVGTSpan.cpp: Added.
3053         (WebCore::RenderSVGTSpan::RenderSVGTSpan):
3054         (WebCore::RenderSVGTSpan::absoluteRects):
3055         * kcanvas/RenderSVGTSpan.h: Added.
3056         (WebCore::RenderSVGTSpan::renderName):
3057         * kcanvas/RenderSVGText.cpp:
3058         (WebCore::RenderSVGText::RenderSVGText):
3059         (WebCore::RenderSVGText::computeAbsoluteRepaintRect):
3060         (WebCore::RenderSVGText::layout):
3061         (WebCore::RenderSVGText::createInlineBox):
3062         (WebCore::RenderSVGText::nodeAtPoint):
3063         (WebCore::RenderSVGText::absoluteRects):
3064         (WebCore::RenderSVGText::paint):
3065         (WebCore::RenderSVGText::relativeBBox):
3066         * kcanvas/RenderSVGText.h:
3067         (WebCore::RenderSVGText::renderName):
3068         * kcanvas/SVGInlineFlowBox.cpp: Added.
3069         (WebCore::SVGInlineFlowBox::paint):
3070         (WebCore::SVGInlineFlowBox::placeBoxesHorizontally):
3071         (WebCore::SVGInlineFlowBox::verticallyAlignBoxes):
3072         (WebCore::paintSVGInlineFlow):
3073         (WebCore::translateBox):
3074         (WebCore::placePositionedBoxesHorizontally):
3075         (WebCore::placeSVGFlowHorizontally):
3076         (WebCore::placeBoxesVerticallyWithAbsBaseline):
3077         (WebCore::placeSVGFlowVertically):
3078         * kcanvas/SVGInlineFlowBox.h: Added.
3079         (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
3080         * kcanvas/SVGRootInlineBox.cpp: Added.
3081         (WebCore::SVGRootInlineBox::paint):
3082         (WebCore::SVGRootInlineBox::placeBoxesHorizontally):
3083         (WebCore::SVGRootInlineBox::verticallyAlignBoxes):
3084         * kcanvas/SVGRootInlineBox.h: Added.
3085         (WebCore::SVGRootInlineBox::SVGRootInlineBox):
3086         * ksvg2/svg/SVGTRefElement.cpp:
3087         (SVGTRefElement::createRenderer):
3088         * ksvg2/svg/SVGTSpanElement.cpp:
3089         (SVGTSpanElement::createRenderer):
3090         * rendering/InlineFlowBox.h:
3091
3092 2006-10-10  Adam Roben  <aroben@apple.com>
3093
3094         Reviewed by Adele.
3095
3096         Improve popup menu behavior.
3097
3098         * html/HTMLSelectElement.cpp:
3099         (WebCore::HTMLSelectElement::HTMLSelectElement): Cache
3100         m_lastOnChangeIndex so we know when to fire onChange.
3101         (WebCore::HTMLSelectElement::setSelectedIndex): Added parameter to
3102         specify whether we should fire onChange.
3103         (WebCore::HTMLSelectElement::dispatchBlurEvent): Fire onChange on blur.
3104         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Fire
3105         onChange when using the Enter key to change the selection.
3106         * html/HTMLSelectElement.h:
3107         * rendering/RenderMenuList.cpp:
3108         (WebCore::RenderMenuList::updateFromElement): Extract setText logic
3109         into its own method.
3110         (WebCore::RenderMenuList::setTextFromOption): New method.
3111         (WebCore::RenderMenuList::valueChanged): Let setSelectedIndex call
3112         onChange instead of calling it directly here.
3113         * rendering/RenderMenuList.h:
3114
3115 2006-10-10  Adele Peterson  <adele@apple.com>
3116
3117         Reviewed by Beth. 
3118
3119
3120         - Fix for <rdar://problem/4707489> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active <input type=text>
3121           and <rdar://problem/4707519> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active textarea
3122
3123         Moved autoscroll code to the Frame class
3124
3125         * bridge/mac/FrameMac.h: Moved _mouseDownMayStartDrag and _mouseDownMayStartAutoscroll flags to the frame.
3126         * bridge/mac/FrameMac.mm: Use new getters and setters for drag and autoscroll flags.  Moved autoscroll code to Frame::handleMouseMoveEvent.
3127         (WebCore::FrameMac::FrameMac):
3128         (WebCore::FrameMac::handleMousePressEvent):
3129         (WebCore::FrameMac::eventMayStartDrag):
3130         (WebCore::FrameMac::handleMouseMoveEvent):
3131         (WebCore::FrameMac::mouseDown):
3132
3133         * bridge/mac/WebCoreFrameBridge.h: Removed handleAutoscrollForMouseDragged, which called over the bridge for AppKit to do autoscroll for us.
3134         Now we scroll our views in WebCore.
3135
3136         * page/Frame.cpp:
3137         (WebCore::Frame::handleMousePressEvent): Initialize the mouseDownMayStartAutoscroll flag.
3138         (WebCore::Frame::handleMouseMoveEvent): Now kicks off autoscroll if appropriate.  Moved from FrameMac.
3139         (WebCore::Frame::updateSelectionForMouseDragOverPosition): Factored code out from handleMouseMoveEvent so we can update the selection from autoscroll too.
3140         (WebCore::Frame::mouseDownMayStartAutoscroll): Added.
3141         (WebCore::Frame::setMouseDownMayStartAutoscroll): Added.
3142         (WebCore::Frame::mouseDownMayStartDrag): Added.
3143         (WebCore::Frame::setMouseDownMayStartDrag): Added.
3144         (WebCore::Frame::autoscrollRenderer): Added
3145         (WebCore::Frame::setAutoscrollRenderer): Added.
3146         (WebCore::Frame::handleAutoscroll): Updated to use autoscrollRenderer getter and setter.
3147         (WebCore::Frame::autoscrollTimerFired): ditto.
3148         (WebCore::Frame::stopAutoscrollTimer): ditto. 
3149         * page/Frame.h: Made autoscrollRenderer and stopAutoscrollTimer public, so the renderer being autoscrolled can kill the timer when it dies.
3150
3151         * page/FramePrivate.h:
3152         (WebCore::FramePrivate::FramePrivate): Added mouseDownMayStartDrag and mouseDownMayStartAutoscroll flags.  Moved from FrameMac.
3153
3154         * page/FrameView.cpp: Store the current mouse position in window coordinates.  The callers can convert to their own coordinate space.
3155         (WebCore::FrameView::handleMousePressEvent):
3156         (WebCore::FrameView::handleMouseDoubleClickEvent):
3157         (WebCore::FrameView::handleMouseMoveEvent):
3158         (WebCore::FrameView::handleMouseReleaseEvent):
3159
3160         * rendering/RenderLayer.cpp:
3161         (WebCore::RenderLayer::autoscroll): Rewrote this to scroll recursively, and to scroll based on the mouse position (not the selection).  
3162          We also need to update the selection here, since autoscroll can occur without a mouseMove event, and the selection needs to get reset as we scroll.
3163
3164         * rendering/RenderListBox.cpp:
3165         (WebCore::RenderListBox::autoscroll): Convert the mouse coordinates to the right space.
3166
3167         * rendering/RenderObject.cpp:
3168         (WebCore::RenderObject::shouldAutoscroll): Also return true if the renderer is a root (so we know to autoscroll views too)
3169         (WebCore::RenderObject::destroy): If this renderer is being autoscrolled, stop the frame's autoscroll timer.
3170
3171 2006-10-10  Darin Adler  <darin@apple.com>
3172
3173         Rubber stamped by Maciej.
3174
3175         - convert many of the loader source files to Objective-C++ to prepare
3176           to convert some of them to C++
3177
3178         * WebCore.xcodeproj/project.pbxproj:
3179         * loader/mac/WebDataProtocol.m: Removed.
3180         * loader/mac/WebDocumentLoader.m: Removed.
3181         * loader/mac/WebFormState.m: Removed.
3182         * loader/mac/WebFrameLoader.m: Removed.
3183         * loader/mac/WebLoader.m: Removed.
3184         * loader/mac/WebMainResourceLoader.m: Removed.
3185         * loader/mac/WebNetscapePlugInStreamLoader.m: Removed.
3186         * loader/mac/WebPolicyDecider.m: Removed.
3187         * loader/mac/WebSubresourceLoader.m: Removed.
3188         * loader/mac/WebDataProtocol.mm: Added.
3189         * loader/mac/WebDocumentLoader.mm: Added.
3190         * loader/mac/WebFormState.mm: Added.
3191         * loader/mac/WebFrameLoader.mm: Added.
3192         * loader/mac/WebLoader.mm: Added.
3193         * loader/mac/WebMainResourceLoader.mm: Added.
3194         * loader/mac/WebNetscapePlugInStreamLoader.mm: Added.
3195         * loader/mac/WebPolicyDecider.mm: Added.
3196         * loader/mac/WebSubresourceLoader.mm: Added.
3197
3198 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
3199
3200         Reviewed by Mitz.
3201
3202         - fixed REGRESSION (r16960): crash on navigating to site
3203         http://www.zoominfo.com/Search/CompanyDetail.aspx?CompanyID=62948057&cs=QGDwILZIE
3204         
3205         * loader/mac/WebFrameLoader.m:
3206         (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
3207         Add back a mistakenly removed retain.
3208
3209 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
3210
3211         Not reviewed, build fix.
3212
3213         - fixed release build
3214
3215         * WebCore.xcodeproj/project.pbxproj:
3216
3217 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
3218
3219         Rubber stamped by Eric.
3220
3221         - moved a big honkin' pile of code over from WebKit; made minimal needed changes to compile
3222
3223         * WebCore.exp:
3224         * WebCore.xcodeproj/project.pbxproj:
3225         * loader/mac/LoaderNSURLExtras.m: Added.
3226         * loader/mac/WebDataProtocol.m: Added.
3227         * loader/mac/WebDocumentLoader.m: Added.
3228         * loader/mac/WebFormDataStream.m: Added.
3229         * loader/mac/WebFrameLoader.m: Added.
3230         * loader/mac/WebLoader.m: Added.
3231         (-[NSURLProtocol didReceiveResponse:]):
3232         (-[NSURLProtocol didReceiveData:lengthReceived:allAtOnce:]):
3233         * loader/mac/WebMainResourceLoader.m: Added.
3234         (-[WebMainResourceLoader didReceiveResponse:]):
3235         * loader/mac/WebPolicyDecider.m: Added.
3236         * loader/mac/WebSubresourceLoader.h: Added.
3237         * loader/mac/WebSubresourceLoader.m: Added.
3238
3239 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
3240
3241         Reviewed by Oliver (sort of?)
3242
3243         - WebCore part of moving down NSURL extras
3244
3245         * WebCore.exp:
3246         * platform/mac/WebCoreSystemInterface.h:
3247         * platform/mac/WebCoreSystemInterface.mm:
3248
3249 2006-10-09  Rob Buis  <buis@kde.org>
3250
3251         Reviewed by Mitz.
3252
3253         http://bugs.webkit.org/show_bug.cgi?id=11217
3254         Cleanup svg coding style
3255
3256         Cleanup coding style in svg animation classes.
3257
3258         * ksvg2/svg/SVGAnimateColorElement.cpp:
3259         (WebCore::SVGAnimateColorElement::handleTimerEvent):
3260         * ksvg2/svg/SVGAnimateElement.cpp:
3261         (WebCore::SVGAnimateElement::SVGAnimateElement):
3262         (WebCore::SVGAnimateElement::handleTimerEvent):
3263         * ksvg2/svg/SVGAnimateTransformElement.cpp:
3264         (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
3265         (WebCore::SVGAnimateTransformElement::parseMappedAttribute):
3266         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
3267         (WebCore::SVGAnimateTransformElement::parseTransformValue):
3268         (WebCore::SVGAnimateTransformElement::calculateRotationFromMatrix):
3269         (WebCore::SVGAnimateTransformElement::initialMatrix):
3270         (WebCore::SVGAnimateTransformElement::transformMatrix):
3271         * ksvg2/svg/SVGAnimateTransformElement.h:
3272         * ksvg2/svg/SVGAnimatedPathData.cpp:
3273         * ksvg2/svg/SVGAnimatedPathData.h:
3274         * ksvg2/svg/SVGAnimatedPoints.cpp:
3275         * ksvg2/svg/SVGAnimatedPoints.h:
3276         * ksvg2/svg/SVGAnimationElement.cpp:
3277         (WebCore::SVGAnimationElement::targetElement):
3278
3279 2006-10-09  Maciej Stachowiak  <mjs@apple.com>
3280
3281         Reviewed by Oliver.
3282
3283         - added isMainFrame and frameLoader to WebCoreFrameBridge for ease of future code motion
3284
3285         * bridge/mac/WebCoreFrameBridge.h:
3286         * bridge/mac/WebCoreFrameBridge.mm:
3287         (-[WebCoreFrameBridge isMainFrame]):
3288
3289 2006-10-09  Adam Roben  <aroben@apple.com>
3290
3291         Backing out accidental commit.
3292
3293         * page/Frame.cpp:
3294         (WebCore::Frame::finishedParsing):
3295
3296 2006-10-09  Adam Roben  <aroben@apple.com>
3297
3298         Reviewed by Darin.
3299
3300         Add ASSERTs to RefPtr to make sure we don't ref within a destructor, as
3301         this could cause recursive calls to the destructor. RefPtr now also
3302         inherits from Noncopyable.
3303
3304         * dom/NodeFilter.h:
3305         * dom/Traversal.h:
3306         * page/DOMWindow.h:
3307         * page/Frame.cpp:
3308         (WebCore::Frame::finishedParsing):
3309         * page/Frame.h:
3310         * page/Plugin.h:
3311         * platform/FontFallbackList.h:
3312         * platform/Icon.h:
3313         * platform/Shared.h:
3314         (WebCore::Shared::Shared):
3315         (WebCore::Shared::ref):
3316         (WebCore::Shared::deref):
3317         (WebCore::Shared::hasOneRef):
3318         (WebCore::Shared::refCount):
3319         * platform/StringImpl.h:
3320
3321 2006-10-09  Oliver Hunt <ohunt@apple.com>
3322
3323         Reviewed by Anders.
3324
3325         Correcting ifdef's
3326
3327         * html/CanvasGradient.cpp:
3328         (WebCore::CanvasGradient::CanvasGradient):
3329         (WebCore::CanvasGradient::~CanvasGradient):
3330         (WebCore::CanvasGradient::addColorStop):
3331         * html/CanvasGradient.h:
3332         * html/CanvasPattern.cpp:
3333         (WebCore::CanvasPattern::CanvasPattern):
3334         (WebCore::CanvasPattern::~CanvasPattern):
3335         * html/CanvasPattern.h:
3336         * html/CanvasRenderingContext2D.cpp:
3337         (WebCore::CanvasRenderingContext2D::fill):
3338         (WebCore::CanvasRenderingContext2D::stroke):
3339         (WebCore::CanvasRenderingContext2D::fillRect):
3340         (WebCore::CanvasRenderingContext2D::setShadow):
3341         (WebCore::CanvasRenderingContext2D::applyShadow):
3342         (WebCore::CanvasRenderingContext2D::drawImage):
3343         (WebCore::CanvasRenderingContext2D::createPattern):
3344         (WebCore::CanvasRenderingContext2D::applyStrokePattern):
3345         (WebCore::CanvasRenderingContext2D::applyFillPattern):
3346         * html/CanvasRenderingContext2D.h:
3347         * html/CanvasStyle.cpp:
3348         (WebCore::CanvasStyle::applyStrokeColor):
3349         (WebCore::CanvasStyle::applyFillColor):
3350         * html/HTMLCanvasElement.cpp:
3351         (WebCore::HTMLCanvasElement::paint):
3352         (WebCore::HTMLCanvasElement::createDrawingContext):
3353         * html/HTMLCanvasElement.h:
3354
3355 2006-10-09  Adam Roben  <aroben@apple.com>
3356
3357         Reviewed by Maciej.
3358
3359         Fix a possible recursive destructor call.
3360
3361         * page/Frame.cpp:
3362         (WebCore::Frame::~Frame): Add a FIXME about cleaning up the destructor.
3363         (WebCore::Frame::finishedParsing): Don't create a protector RefPtr if
3364         we're already being destroyed.
3365
3366 2006-10-09  Sam Weinig  <sam.weinig@gmail.com>
3367
3368         Reviewed by Tim H.
3369
3370         Patch for http://bugs.webkit.org/show_bug.cgi?id=11234
3371         Assorted Objective-C bindings changes
3372
3373         - Auto-generate DOMSVGPathSegArcAbs, DOMSVGPathSegArcRel, DOMSVGPathSegClosePath, 
3374           DOMSVGPathSegCurvetoCubicAbs, DOMSVGPathSegCurvetoCubicRel, 
3375           DOMSVGPathSegCurvetoCubicSmoothAbs, DOMSVGPathSegCurvetoCubicSmoothRel, 
3376           DOMSVGPathSegCurvetoQuadraticAbs, DOMSVGPathSegCurvetoQuadraticRel, 
3377           DOMSVGPathSegCurvetoQuadraticSmoothAbs, DOMSVGPathSegCurvetoQuadraticSmoothRel, 
3378           DOMSVGPathSegLinetoAbs, DOMSVGPathSegLinetoHorizontalAbs, 
3379           DOMSVGPathSegLinetoHorizontalRel, DOMSVGPathSegLinetoRel, 
3380           DOMSVGPathSegLinetoVerticalAbs, DOMSVGPathSegLinetoVerticalRel, 
3381           DOMSVGPathSegMovetoAbs, DOMSVGPathSegMovetoRel and DOMSVGSVGElement.
3382
3383         - Auto-generate absoluteImageURL method for DOMHTMLInputElement and
3384           DOMHTMLObjectElement.
3385
3386         - Auto-generate the internal methods for classes with ivars (notably 
3387           DOMNodeIterator and DOMTreeWalker)
3388
3389         - Put more methods in the WebCore namespace and factor out the  
3390           displayString method into DOMInternal.h as done by Darin in his 
3391           patch for http://bugs.webkit.org/show_bug.cgi?id=11219.
3392
3393         * DerivedSources.make:
3394         * WebCore.xcodeproj/project.pbxproj:
3395         * bindings/objc/DOM.mm:
3396         (-[DOMNode _initWithNode:WebCore::]):
3397         (+[DOMNode _nodeWith:WebCore::]):
3398         (-[DOMNode addEventListener:listener:useCapture:]):
3399         (-[DOMNode removeEventListener:listener:useCapture:]):
3400         (-[DOMNode dispatchEvent:]):
3401         (-[DOMElement _imageTIFFRepresentation]):
3402         (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
3403         (+[DOMNodeFilter _nodeFilterWith:WebCore::]):
3404         (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
3405         (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
3406         * bindings/objc/DOMCSS.mm:
3407         (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
3408         (+[DOMStyleSheet _styleSheetWith:WebCore::]):
3409         (-[DOMCSSRule _initWithCSSRule:WebCore::]):
3410         (+[DOMCSSRule _CSSRuleWith:WebCore::]):
3411         (-[DOMCSSValue _initWithCSSValue:WebCore::]):
3412         (+[DOMCSSValue _CSSValueWith:WebCore::]):
3413         * bindings/objc/DOMEvents.mm:
3414         (-[DOMEvent _initWithEvent:WebCore::]):
3415         (+[DOMEvent _eventWith:WebCore::]):
3416         * bindings/objc/DOMExtensions.h:
3417         * bindings/objc/DOMHTML.mm:
3418         (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]):
3419         * bindings/objc/DOMInternal.h:
3420         (-[DOMNodeFilter WebCore::]):
3421         * bindings/objc/DOMInternal.mm:
3422         (-[WebScriptObject _init]):
3423         (-[WebScriptObject _initializeScriptDOMNodeImp]):
3424         (WebCore::displayString):
3425         * bindings/objc/DOMObject.mm:
3426         (-[DOMObject dealloc]):
3427         (-[DOMObject finalize]):
3428         * bindings/objc/DOMRGBColor.mm:
3429         (-[DOMRGBColor dealloc]):
3430         (-[DOMRGBColor finalize]):
3431         (-[DOMRGBColor color]):
3432         (-[DOMRGBColor _initWithRGB:WebCore::]):
3433         (+[DOMRGBColor _RGBColorWithRGB:WebCore::]):
3434         * bindings/objc/DOMSVG.h:
3435         * bindings/objc/DOMSVGPathSegInternal.h: Added.
3436         * bindings/objc/DOMSVGPathSegInternal.mm: Added.
3437         (-[DOMSVGPathSeg WebCore::]):
3438         (-[DOMSVGPathSeg _initWithSVGPathSeg:WebCore::]):
3439         (+[DOMSVGPathSeg _SVGPathSegWith:WebCore::]):
3440         * bindings/objc/DOMXPath.mm:
3441         (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:WebCore::]):
3442         (+[DOMNativeXPathNSResolver _xpathNSResolverWith:WebCore::]):
3443         * bindings/objc/PublicDOMInterfaces.h:
3444         * bindings/scripts/CodeGeneratorObjC.pm:
3445         * dom/NodeIterator.idl:
3446         * dom/TreeWalker.idl:
3447         * html/HTMLInputElement.idl:
3448         * html/HTMLObjectElement.idl:
3449         * ksvg2/svg/SVGDocument.idl:
3450         * ksvg2/svg/SVGElement.idl:
3451         * ksvg2/svg/SVGPathSeg.idl:
3452         * ksvg2/svg/SVGPathSegArcAbs.idl:
3453         * ksvg2/svg/SVGPathSegArcRel.idl:
3454         * ksvg2/svg/SVGPathSegClosePath.idl:
3455         * ksvg2/svg/SVGPathSegCurvetoCubicAbs.idl:
3456         * ksvg2/svg/SVGPathSegCurvetoCubicRel.idl:
3457         * ksvg2/svg/SVGPathSegCurvetoCubicSmoothAbs.idl:
3458         * ksvg2/svg/SVGPathSegCurvetoCubicSmoothRel.idl:
3459         * ksvg2/svg/SVGPathSegCurvetoQuadraticAbs.idl:
3460         * ksvg2/svg/SVGPathSegCurvetoQuadraticRel.idl:
3461         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl:
3462         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl:
3463         * ksvg2/svg/SVGPathSegLinetoAbs.idl:
3464         * ksvg2/svg/SVGPathSegLinetoHorizontalAbs.idl:
3465         * ksvg2/svg/SVGPathSegLinetoHorizontalRel.idl:
3466         * ksvg2/svg/SVGPathSegLinetoRel.idl:
3467         * ksvg2/svg/SVGPathSegLinetoVerticalAbs.idl:
3468         * ksvg2/svg/SVGPathSegLinetoVerticalRel.idl:
3469         * ksvg2/svg/SVGPathSegMovetoAbs.idl:
3470         * ksvg2/svg/SVGPathSegMovetoRel.idl:
3471
3472 2006-10-09  Don Gibson  <dgibson77@gmail.com>
3473
3474         Unreviewed build fix.
3475
3476         Fix windows build bustage.
3477
3478         * platform/win/TemporaryLinkStubs.cpp:
3479
3480 2006-10-09  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
3481
3482         Reviewed by Geoff.
3483
3484         Fix memory leaks discovered via valgrind. Gdk build fixes.
3485
3486         * Projects/gdk/webcore-gdk.bkl:
3487         * make-generated-sources.sh:
3488         * platform/cairo/ImageCairo.cpp:
3489         (WebCore::Image::draw):
3490         * platform/gdk/FrameGdk.cpp:
3491         (WebCore::FrameGdk::handleGdkEvent):
3492         * platform/gdk/FrameGdk.h:
3493         * platform/gdk/PlatformScrollBar.h:
3494         (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
3495         (WebCore::PlatformScrollbar::verticalScrollbarWidth):
3496
3497 2006-10-09  Nikolas Zimmermann  <zimmermann@kde.org>
3498
3499         Reviewed by Beth.
3500
3501         Fix LayoutTests/fast/css/case-transform.html with Qt - the last crashing layout test.
3502
3503         * platform/qt/GlyphMapQt.cpp: Handle UTF-16 characters properly
3504         (WebCore::GlyphMap::fillPage):
3505
3506 2006-10-09  Nikolas Zimmermann  <zimmermann@kde.org>
3507
3508         Unreviewed build fix.
3509
3510         Fix for Qt/Linux build, based on fixes to the Win32 build in r16928 and r16929.
3511
3512         * platform/qt/FrameQt.cpp:
3513         (WebCore::FrameQt::createJavaAppletWidget):
3514         * platform/qt/FrameQt.h:
3515         * platform/qt/TemporaryLinkStubs.cpp:
3516
3517 2006-10-09  Brady Eidson  <beidson@apple.com>
3518
3519         Reviewed by Maciej
3520
3521         Tiny changes to help reorganize WebFrameLoader code in WebKit
3522
3523         * bridge/mac/WebCoreIconDatabaseBridge.h: Added "createInstance"
3524         * bridge/mac/WebCoreIconDatabaseBridge.mm:
3525         (+[WebCoreIconDatabaseBridge sharedInstance]): Added, uses createInstance from WebKit side
3526
3527 2006-10-09  Adam Roben  <aroben@apple.com>
3528
3529         Reviewed by Adele.
3530
3531         Remove redundant call to Frame::cancelAndClear from ~Frame, since it's
3532         already called frome ~FrameMac.
3533
3534         * page/Frame.cpp:
3535         (WebCore::Frame::~Frame):
3536
3537 2006-10-09  Anders Carlsson  <acarlsson@apple.com>
3538
3539         * bridge/win/FrameWin.h:
3540         Add function declaration.
3541         
3542 2006-10-09  Anders Carlsson  <acarlsson@apple.com>
3543
3544         * platform/win/TemporaryLinkStubs.cpp:
3545         (FrameWin::createJavaAppletWidget):
3546         Try fixing the Win32 build.
3547
3548 2006-10-09  Anders Carlsson  <acarlsson@apple.com>
3549
3550         Reviewed by Adam.
3551
3552         Move applet widget creation to Frame and get rid of JavaAppletWidget.
3553         * WebCore.xcodeproj/project.pbxproj:
3554         * bridge/JavaAppletWidget.h: Removed.
3555         * bridge/mac/FrameMac.h:
3556         * bridge/mac/FrameMac.mm:
3557         (WebCore::FrameMac::createJavaAppletWidget):
3558         * bridge/mac/JavaAppletWidget.mm: Removed.
3559         * page/Frame.h:
3560         * rendering/RenderApplet.cpp:
3561         (WebCore::RenderApplet::createWidgetIfNecessary):
3562
3563 2006-10-09  Mitz Pettel  <mitz@webkit.org>
3564
3565         Reviewed by Darin.
3566
3567         - http://bugs.webkit.org/show_bug.cgi?id=11220
3568           Fix manual test for http://bugs.webkit.org/show_bug.cgi?id=8276
3569
3570         Subversion does not support resource forks and HFS metadata, so
3571         the resources for this test need to be on a disk image.
3572
3573         * manual-tests/plain-text-paste.html: Changed instructions to refer to the disk image.
3574         * manual-tests/resources/plain-text-paste.dmg: Added.
3575         * manual-tests/resources/plain-text-paste/._1.textClipping: Removed.
3576         * manual-tests/resources/plain-text-paste/._2.textClipping: Removed.
3577         * manual-tests/resources/plain-text-paste/._4.txt: Removed.
3578         * manual-tests/resources/plain-text-paste/._5.webloc: Removed.
3579         * manual-tests/resources/plain-text-paste/1.textClipping: Removed.
3580         * manual-tests/resources/plain-text-paste/2.textClipping: Removed.
3581         * manual-tests/resources/plain-text-paste/3.gif: Removed.
3582         * manual-tests/resources/plain-text-paste/4.txt: Removed.
3583         * manual-tests/resources/plain-text-paste/5.webloc: Removed.
3584
3585 2006-10-09  Rob Buis  <buis@kde.org>
3586
3587         Reviewed by Darin.
3588
3589         http://bugs.webkit.org/show_bug.cgi?id=11217
3590         Cleanup svg coding style
3591
3592         Cleanup coding style in filter classes.
3593
3594         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
3595         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
3596         (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute):
3597         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
3598         * ksvg2/svg/SVGFEBlendElement.cpp:
3599         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
3600         (WebCore::SVGFEBlendElement::parseMappedAttribute):
3601         (WebCore::SVGFEBlendElement::filterEffect):
3602         * ksvg2/svg/SVGFEBlendElement.h:
3603         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
3604         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
3605         (WebCore::SVGFEColorMatrixElement::parseMappedAttribute):
3606         (WebCore::SVGFEColorMatrixElement::filterEffect):
3607         * ksvg2/svg/SVGFEColorMatrixElement.h:
3608         * ksvg2/svg/SVGFECompositeElement.cpp:
3609         (WebCore::SVGFECompositeElement::parseMappedAttribute):
3610         * ksvg2/svg/SVGFECompositeElement.h:
3611         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
3612         (WebCore::SVGFEDisplacementMapElement::stringToChannel):
3613         * ksvg2/svg/SVGFEDisplacementMapElement.h:
3614         * ksvg2/svg/SVGFEFloodElement.cpp:
3615         (WebCore::SVGFEFloodElement::filterEffect):
3616         * ksvg2/svg/SVGFEFuncAElement.cpp:
3617         (WebCore::SVGFEFuncAElement::SVGFEFuncAElement):
3618         * ksvg2/svg/SVGFEFuncBElement.cpp:
3619         (WebCore::SVGFEFuncBElement::SVGFEFuncBElement):
3620         * ksvg2/svg/SVGFEFuncGElement.cpp:
3621         (WebCore::SVGFEFuncGElement::SVGFEFuncGElement):
3622         * ksvg2/svg/SVGFEFuncRElement.cpp:
3623         (WebCore::SVGFEFuncRElement::SVGFEFuncRElement):
3624         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
3625         (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
3626         (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
3627         (WebCore::SVGFEGaussianBlurElement::filterEffect):
3628         * ksvg2/svg/SVGFEGaussianBlurElement.h:
3629         * ksvg2/svg/SVGFELightElement.cpp:
3630         (WebCore::SVGFELightElement::SVGFELightElement):
3631         (WebCore::SVGFELightElement::parseMappedAttribute):
3632         * ksvg2/svg/SVGFELightElement.h:
3633         * ksvg2/svg/SVGFEMergeElement.cpp:
3634         (WebCore::SVGFEMergeElement::SVGFEMergeElement):
3635
3636 2006-10-09  Rob Buis  <buis@kde.org>
3637
3638         Reviewed by olliej.
3639
3640         http://bugs.webkit.org/show_bug.cgi?id=11217
3641         Cleanup svg coding style
3642
3643         Cleanup coding style in SVGPath* classes.
3644
3645         * ksvg2/svg/SVGPathElement.cpp:
3646         (WebCore::SVGPathElement::SVGPathElement):
3647         (WebCore::SVGPathElement::getPointAtLength):
3648         (WebCore::SVGPathElement::createSVGPathSegClosePath):
3649         (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
3650         (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
3651         (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
3652         (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
3653         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
3654         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
3655         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
3656         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
3657         (WebCore::SVGPathElement::createSVGPathSegArcAbs):
3658         (WebCore::SVGPathElement::createSVGPathSegArcRel):
3659         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
3660         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
3661         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
3662         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
3663         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
3664         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
3665         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
3666         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
3667         (WebCore::SVGPathElement::svgMoveTo):
3668         (WebCore::SVGPathElement::svgLineTo):
3669         (WebCore::SVGPathElement::svgLineToHorizontal):
3670         (WebCore::SVGPathElement::svgLineToVertical):
3671         (WebCore::SVGPathElement::svgCurveToCubic):
3672         (WebCore::SVGPathElement::svgCurveToCubicSmooth):
3673         (WebCore::SVGPathElement::svgCurveToQuadratic):
3674         (WebCore::SVGPathElement::svgCurveToQuadraticSmooth):
3675         (WebCore::SVGPathElement::svgArcTo):
3676         (WebCore::SVGPathElement::parseMappedAttribute):
3677         (WebCore::SVGPathElement::pathSegList):
3678         (WebCore::SVGPathElement::normalizedPathSegList):
3679         (WebCore::SVGPathElement::animatedPathSegList):
3680         (WebCore::SVGPathElement::animatedNormalizedPathSegList):
3681         (WebCore::SVGPathElement::toPathData):
3682         * ksvg2/svg/SVGPathElement.h:
3683         (WebCore::SVGPathElement::rendererIsNeeded):
3684         * ksvg2/svg/SVGPathSeg.h:
3685         * ksvg2/svg/SVGPathSegArc.cpp:
3686
3687 2006-10-09  Rob Buis  <buis@kde.org>
3688
3689         Reviewed by aroben.
3690
3691         http://bugs.webkit.org/show_bug.cgi?id=11217
3692         Cleanup svg coding style
3693
3694         Cleanup coding style in svg shape classes.
3695
3696         * ksvg2/svg/SVGCircleElement.cpp:
3697         (WebCore::SVGCircleElement::SVGCircleElement):
3698         (WebCore::SVGCircleElement::parseMappedAttribute):
3699         (WebCore::SVGCircleElement::pushAttributeContext):
3700         * ksvg2/svg/SVGCircleElement.h:
3701         (WebCore::SVGCircleElement::rendererIsNeeded):
3702         * ksvg2/svg/SVGEllipseElement.cpp:
3703         * ksvg2/svg/SVGEllipseElement.h:
3704         (WebCore::SVGEllipseElement::rendererIsNeeded):
3705         * ksvg2/svg/SVGLineElement.cpp:
3706         (WebCore::SVGLineElement::parseMappedAttribute):
3707         (WebCore::SVGLineElement::pushAttributeContext):
3708         * ksvg2/svg/SVGLineElement.h:
3709         (WebCore::SVGLineElement::rendererIsNeeded):
3710         * ksvg2/svg/SVGPolyElement.cpp:
3711         (WebCore::SVGPolyElement::SVGPolyElement):
3712         (WebCore::SVGPolyElement::points):
3713         (WebCore::SVGPolyElement::animatedPoints):
3714         (WebCore::SVGPolyElement::parseMappedAttribute):
3715         (WebCore::SVGPolyElement::notifyAttributeChange):
3716         * ksvg2/svg/SVGPolyElement.h:
3717         (WebCore::SVGPolyElement::rendererIsNeeded):
3718         * ksvg2/svg/SVGPolygonElement.cpp:
3719         (WebCore::SVGPolygonElement::SVGPolygonElement):
3720         (WebCore::SVGPolygonElement::toPathData):
3721         * ksvg2/svg/SVGPolygonElement.h:
3722         * ksvg2/svg/SVGPolylineElement.cpp:
3723         (WebCore::SVGPolylineElement::SVGPolylineElement):
3724         (WebCore::SVGPolylineElement::toPathData):
3725         * ksvg2/svg/SVGPolylineElement.h:
3726         * ksvg2/svg/SVGRectElement.cpp:
3727         (WebCore::SVGRectElement::parseMappedAttribute):
3728         (WebCore::SVGRectElement::pushAttributeContext):
3729         * ksvg2/svg/SVGRectElement.h:
3730         (WebCore::SVGRectElement::rendererIsNeeded):
3731
3732 2006-10-08  Darin Adler  <darin@apple.com>
3733
3734         Reviewed by Maciej.
3735
3736         - added a bit more WebCoreSystemInterface
3737
3738             wkGetNSURLResponseCalculatedExpiration
3739             wkGetNSURLResponseLastModifiedDate
3740             wkGetNSURLResponseMustRevalidate
3741
3742         * WebCore.exp: Added the new symbols.
3743         * platform/mac/WebCoreSystemInterface.h: Ditto.
3744         * platform/mac/WebCoreSystemInterface.mm: Ditto.
3745
3746         - quiet down the code generation script
3747
3748         * bindings/scripts/CodeGenerator.pm:
3749
3750 2006-10-08  Maciej Stachowiak  <mjs@apple.com>
3751
3752         Reviewed by Darin.
3753
3754         - more code laundering - add wkSupportsMultipartXMixedReplace
3755
3756         * WebCore.exp:
3757         * platform/mac/WebCoreSystemInterface.h:
3758         * platform/mac/WebCoreSystemInterface.mm:
3759
3760 2006-10-08  Nikolas Zimmermann  <zimmermann@kde.org>
3761
3762         Reviewed by Darin and Oliver.
3763
3764         Fix artefacts when drawing polygons, most noticeable when painting <hr> elements.
3765
3766         * platform/qt/GraphicsContextQt.cpp: Fix wrong operator<< usage.
3767         (WebCore::GraphicsContext::drawConvexPolygon):
3768
3769 2006-10-08  Anders Carlsson  <acarlsson@apple.com>
3770
3771         Reviewed by Darin.
3772
3773         * page/Frame.cpp:
3774         (WebCore::Frame::submitForm):
3775         No need to use latin1() here.
3776
3777 2006-10-08  Nikolas Zimmermann  <zimmermann@kde.org>
3778
3779         Reviewed by Darin.
3780
3781         Kill warnings when generating IDL files on Qt/Linux, as the
3782         SOURCE_ROOT environment variable is not defined (and not needed) for us.
3783
3784         * bindings/scripts/CodeGenerator.pm:
3785
3786 2006-10-08  Maciej Stachowiak  <mjs@apple.com>
3787
3788         Reviewed by Darin.
3789
3790         - split didNotOpenURL: into general and page-cache-specific parts
3791
3792         * bridge/mac/WebCoreFrameBridge.h:
3793         * bridge/mac/WebCoreFrameBridge.mm:
3794         (-[WebCoreFrameBridge didNotOpenURL:]):
3795         (-[WebCoreFrameBridge invalidatePageCache:]):
3796
3797 2006-10-08  Anders Carlsson  <acarlsson@apple.com>
3798
3799         Reviewed by Darin.
3800
3801         * loader/loader.cpp:
3802         Remove DeprecatedStringList.h include.
3803         
3804         * page/Frame.cpp:
3805         (WebCore::Frame::submitForm):
3806         Don't remove "attach" from mailto URLs, we don't do it anywhere else.
3807
3808 2006-10-08  Sam Weinig  <sam.weinig@gmail.com>
3809
3810         Reviewed by Darin.
3811
3812         Patch for http://bugs.webkit.org/show_bug.cgi?id=11215
3813         Yet another round of Objective-C SVG DOM bindings auto-generation
3814
3815         - Auto-generate DOMSVGPatternElement, DOMSVGPointList, DOMSVGPolygonElement, 
3816           DOMSVGPolylineElement, DOMSVGRadialGradientElement, DOMSVGRenderingIntent,
3817           DOMSVGScriptElement, DOMSVGSetElement, DOMSVGStopElement, DOMSVGSwitchElement, 
3818           DOMSVGSymbolElement, DOMSVGTRefElement, DOMSVGTSpanElement, 
3819           DOMSVGTextContentElement, DOMSVGTextElement, DOMSVGTextPositioningElement, 
3820           DOMSVGTitleElement, DOMSVGUnitTypes, DOMSVGUseElement, DOMSVGViewElement, 
3821           DOMSVGZoomAndPan and DOMSVGZoomEvent.
3822
3823         - Auto-generate the implementations of DOMHTMLAppletElement and DOMHTMLEmbedElement
3824           using the new [ConvertFromString] property.
3825
3826         - Add forward declarations for NS* types to auto-generated classes.
3827
3828         * DerivedSources.make:
3829         * WebCore.xcodeproj/project.pbxproj:
3830         * bindings/objc/DOMHTMLAppletElement.mm: Removed.
3831         * bindings/objc/DOMHTMLEmbedElement.mm: Removed.
3832         * bindings/objc/DOMInternal.h:
3833         * bindings/objc/DOMSVG.h:
3834         * bindings/scripts/CodeGeneratorObjC.pm:
3835         * html/HTMLAppletElement.idl:
3836         * html/HTMLEmbedElement.idl:
3837         * ksvg2/svg/SVGPatternElement.idl:
3838         * ksvg2/svg/SVGPolygonElement.idl:
3839         * ksvg2/svg/SVGPolylineElement.idl:
3840         * ksvg2/svg/SVGRadialGradientElement.idl:
3841         * ksvg2/svg/SVGRenderingIntent.idl:
3842         * ksvg2/svg/SVGScriptElement.idl:
3843         * ksvg2/svg/SVGSetElement.idl:
3844         * ksvg2/svg/SVGStopElement.idl:
3845         * ksvg2/svg/SVGSwitchElement.idl:
3846         * ksvg2/svg/SVGSymbolElement.idl:
3847         * ksvg2/svg/SVGTRefElement.idl:
3848         * ksvg2/svg/SVGTSpanElement.idl:
3849         * ksvg2/svg/SVGTextContentElement.idl:
3850         * ksvg2/svg/SVGTextElement.idl:
3851         * ksvg2/svg/SVGTextPositioningElement.idl:
3852         * ksvg2/svg/SVGTitleElement.idl:
3853         * ksvg2/svg/SVGUseElement.idl:
3854         * ksvg2/svg/SVGViewElement.idl:
3855         * ksvg2/svg/SVGZoomEvent.idl:
3856
3857 2006-10-07  Anders Carlsson  <acarlsson@apple.com>
3858
3859         Reviewed by Maciej.
3860
3861         Remove crossDomain, it was unused and is one of the last functions that use DeprecatedStringList.        
3862         * loader/loader.cpp:
3863         (WebCore::Loader::servePendingRequests):
3864         
3865 2006-10-07  Anders Carlsson  <acarlsson@apple.com>
3866
3867         Reviewed by Darin.
3868
3869         Convert a bunch of RefPtr<StringImpl> to String.
3870         
3871         * bridge/mac/FrameMac.h:
3872         * bridge/mac/FrameMac.mm:
3873         (WebCore::FrameMac::didTellBridgeAboutLoad):
3874         (WebCore::FrameMac::haveToldBridgeAboutLoad):
3875         * dom/BeforeUnloadEvent.cpp:
3876         (WebCore::BeforeUnloadEvent::storeResult):
3877         * dom/BeforeUnloadEvent.h:
3878         (WebCore::BeforeUnloadEvent::result):
3879         * dom/Document.cpp:
3880         (WebCore::Document::createEntityReference):
3881         * dom/Entity.cpp:
3882         (WebCore::Entity::Entity):
3883         (WebCore::Entity::nodeName):
3884         (WebCore::Entity::toString):
3885         * dom/Entity.h:
3886         (WebCore::Entity::publicId):
3887         (WebCore::Entity::systemId):
3888         (WebCore::Entity::notationName):
3889         * dom/EntityReference.cpp:
3890         (WebCore::EntityReference::EntityReference):
3891         (WebCore::EntityReference::nodeName):
3892         (WebCore::EntityReference::cloneNode):
3893         (WebCore::EntityReference::toString):
3894         * dom/EntityReference.h:
3895         * dom/KeyboardEvent.cpp:
3896         (WebCore::KeyboardEvent::KeyboardEvent):
3897         (WebCore::KeyboardEvent::initKeyboardEvent):
3898         * dom/KeyboardEvent.h:
3899         (WebCore::KeyboardEvent::keyIdentifier):
3900         * dom/MutationEvent.cpp:
3901         (WebCore::MutationEvent::MutationEvent):
3902         (WebCore::MutationEvent::initMutationEvent):
3903         * dom/MutationEvent.h:
3904         (WebCore::MutationEvent::prevValue):
3905         (WebCore::MutationEvent::newValue):
3906         (WebCore::MutationEvent::attrName):
3907         * dom/Notation.cpp:
3908         (WebCore::Notation::Notation):
3909         (WebCore::Notation::nodeName):
3910         * dom/Notation.h:
3911         (WebCore::Notation::publicId):
3912         (WebCore::Notation::systemId):
3913         * dom/ProcessingInstruction.cpp:
3914         (WebCore::ProcessingInstruction::ProcessingInstruction):
3915         (WebCore::ProcessingInstruction::setData):
3916         (WebCore::ProcessingInstruction::nodeName):
3917         (WebCore::ProcessingInstruction::nodeValue):
3918         (WebCore::ProcessingInstruction::cloneNode):
3919         (WebCore::ProcessingInstruction::checkStyleSheet):
3920         (WebCore::ProcessingInstruction::toString):
3921         * dom/ProcessingInstruction.h:
3922         (WebCore::ProcessingInstruction::target):
3923         (WebCore::ProcessingInstruction::data):
3924         (WebCore::ProcessingInstruction::localHref):
3925
3926 2006-10-07  Sam Weinig  <sam.weinig@gmail.com>
3927
3928         Reviewed by Tim H.
3929
3930         Patch for http://bugs.webkit.org/show_bug.cgi?id=11206
3931         10 more SVG Objective-C auto-generated bindings
3932
3933         - Auto-generate DOMSVGFilterElement, DOMSVGFitToViewBox, 
3934           DOMSVGForeignObjectElement, DOMSVGGElement, DOMSVGGradientElement,
3935           DOMSVGImageElement, DOMSVGLineElement, DOMSVGLinearGradientElement, 
3936           DOMSVGMarkerElement, DOMSVGMaskElement and DOMSVGPaint.
3937
3938         - Auto-generate the text method for DOMRange.
3939
3940         * DerivedSources.make:
3941         * WebCore.xcodeproj/project.pbxproj:
3942         * bindings/objc/DOM.mm:
3943         * bindings/objc/DOMExtensions.h:
3944         * bindings/objc/DOMInternal.h:
3945         * bindings/objc/DOMPrivate.h:
3946         * bindings/objc/DOMRGBColor.mm:
3947         * bindings/objc/DOMSVG.h:
3948         * bindings/objc/PublicDOMInterfaces.h:
3949         * bindings/scripts/CodeGeneratorObjC.pm:
3950         * dom/Range.idl:
3951         * ksvg2/svg/SVGFilterElement.cpp:
3952         * ksvg2/svg/SVGFilterElement.h:
3953         * ksvg2/svg/SVGFilterElement.idl:
3954         * ksvg2/svg/SVGForeignObjectElement.idl:
3955         * ksvg2/svg/SVGGElement.idl:
3956         * ksvg2/svg/SVGGradientElement.idl:
3957         * ksvg2/svg/SVGImageElement.idl:
3958         * ksvg2/svg/SVGLineElement.idl:
3959         * ksvg2/svg/SVGLinearGradientElement.idl:
3960         * ksvg2/svg/SVGMarkerElement.idl:
3961         * ksvg2/svg/SVGMaskElement.idl:
3962         * ksvg2/svg/SVGPaint.idl:
3963
3964 2006-10-07  Sam Weinig  <sam.weinig@gmail.com>
3965
3966         Reviewed by Tim H.
3967
3968         Patch for http://bugs.webkit.org/show_bug.cgi?id=11198
3969         Auto-generate a few more Objective-C DOM interfaces
3970
3971         - Fully auto-generate DOMAbstractView and DOMRange.
3972
3973         - Auto-generate just the interface for DOMRGBColor.
3974
3975         - Add DOMRanges.h as the new top level file for Ranges
3976           module.
3977
3978         - Add DOMRanges.h and DOMXPath.h to DOM.mm
3979
3980         * DerivedSources.make:
3981         * WebCore.xcodeproj/project.pbxproj:
3982         * bindings/objc/DOM.h:
3983         * bindings/objc/DOM.mm:
3984         * bindings/objc/DOMAbstractView.h: Removed.
3985         * bindings/objc/DOMAbstractView.mm: Removed.
3986         * bindings/objc/DOMInternal.h:
3987         * bindings/objc/DOMPrivate.h:
3988         * bindings/objc/DOMRGBColor.h: Removed.
3989         * bindings/objc/DOMRGBColor.mm:
3990         * bindings/objc/DOMRange.h: Removed.
3991         * bindings/objc/DOMRanges.h: Added.
3992         * bindings/objc/PublicDOMInterfaces.h:
3993         * bindings/scripts/CodeGeneratorObjC.pm:
3994         * css/RGBColor.idl:
3995         * dom/Range.idl:
3996         * page/AbstractView.idl: Added.
3997
3998 2006-10-07  Andrew Wellington  <proton@wiretapped.net>
3999
4000         Reviewed by Eric.
4001
4002         Bug 10837: REGRESSION: Yahoo New Charts Crashes WebKit
4003         http://bugzilla.opendarwin.org/show_bug.cgi?id=10837
4004
4005         Return null when there is no frame. This matches Firefox.
4006
4007         * bindings/js/kjs_html.cpp:
4008         (KJS::JSHTMLDocument::getValueProperty):
4009
4010 2006-10-07  David Hyatt  <hyatt@apple.com>
4011
4012         Implement scroll corner painting (a white rect fill) for overflow areas to cover up
4013         scrollbar joins properly.
4014
4015         Refactor painting of scrollbars and resizers into common functions.  Eliminate the
4016         extra 20 bytes per RenderLayer by cutting out m_resizerImage and m_resizerControlRect.
4017
4018         Reviewed by mitz
4019
4020         * page/FrameView.cpp:
4021         (WebCore::selectCursor):
4022         (WebCore::FrameView::handleMouseMoveEvent):
4023         * platform/mac/PlatformScrollBar.h:
4024         (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
4025         (WebCore::PlatformScrollbar::verticalScrollbarWidth):
4026         * rendering/RenderLayer.cpp:
4027         (WebCore::RenderLayer::RenderLayer):
4028         (WebCore::RenderLayer::~RenderLayer):
4029         (WebCore::RenderLayer::updateLayerPositions):
4030         (WebCore::scrollCornerRect):
4031         (WebCore::RenderLayer::positionOverflowControls):
4032         (WebCore::RenderLayer::paintOverflowControls):
4033         (WebCore::RenderLayer::isPointInResizeControl):
4034         (WebCore::RenderLayer::paintLayer):
4035         * rendering/RenderLayer.h:
4036
4037 2006-10-07  Mark Rowe  <bdash@webkit.org>
4038
4039         Reviewed by Mitz.
4040
4041         Linux/Gdk build fixes, primarily consisting of s/ScrollBar/Scrollbar/ and
4042         matching recent ResourceLoader changes.
4043
4044         * platform/gdk/FrameGdk.cpp:
4045         (WebCore::FrameGdk::openURL):
4046         (WebCore::FrameGdk::urlSelected):
4047         * platform/gdk/PlatformScrollBar.h:
4048         * platform/gdk/ResourceLoaderCurl.cpp:
4049         (WebCore::ResourceLoader::start):
4050         * platform/gdk/ScrollViewGdk.cpp:
4051         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
4052         (WebCore::ScrollView::resizeContents):
4053         (WebCore::ScrollView::scrollBy):
4054         (WebCore::ScrollView::hScrollbarMode):
4055         (WebCore::ScrollView::vScrollbarMode):
4056         (WebCore::ScrollView::suppressScrollbars):
4057         (WebCore::ScrollView::setHScrollbarMode):
4058         (WebCore::ScrollView::setVScrollbarMode):
4059         (WebCore::ScrollView::setScrollbarsMode):
4060         * platform/gdk/TemporaryLinkStubs.cpp:
4061         (FrameView::passMousePressEventToScrollbar):
4062         (Widget::removeFromParent):
4063         (ScrollView::addChild):
4064         (ScrollView::updateScrollbars):
4065         (ScrollView::scrollbarUnderMouse):
4066         (PlatformScrollbar::PlatformScrollbar):
4067         (PlatformScrollbar::~PlatformScrollbar):
4068         (PlatformScrollbar::width):
4069         (PlatformScrollbar::height):
4070         (PlatformScrollbar::setEnabled):
4071         (PlatformScrollbar::paint):
4072         (PlatformScrollbar::updateThumbPosition):
4073         (PlatformScrollbar::updateThumbProportion):
4074         (PlatformScrollbar::setRect):
4075         (Scrollbar::Scrollbar):
4076         (Scrollbar::setSteps):
4077         (Scrollbar::scroll):
4078         (Scrollbar::setValue):
4079         (Scrollbar::setProportion):
4080
4081 2006-10-06  Dave Hyatt  <hyatt@apple.com>
4082
4083         Implement a new method for obtaining accurate clip rectangles that can be used by plugins to properly clip.
4084
4085         * page/FrameView.cpp:
4086         (WebCore::FrameView::windowClipRect):
4087         * page/FrameView.h:
4088         * platform/ScrollView.h:
4089         * platform/Widget.cpp:
4090         (WebCore::Widget::windowClipRect):
4091         * platform/Widget.h:
4092         (WebCore::Widget::geometryChanged):
4093         (WebCore::Widget::handleMouseMoveEvent):
4094         (WebCore::Widget::handleMouseReleaseEvent):
4095         * platform/mac/ScrollViewMac.mm:
4096         (WebCore::ScrollView::addChild):
4097         * rendering/RenderLayer.cpp:
4098         (WebCore::RenderLayer::documentClipRect):
4099         * rendering/RenderLayer.h:
4100
4101 2006-10-06  Steve Falkenburg  <sfalken@apple.com>
4102
4103         Reviewed by Adam.
4104
4105         Add another method we'll need for scrollbar dodging
4106
4107         * platform/ScrollView.h:
4108         * platform/win/TemporaryLinkStubs.cpp:
4109         (ScrollView::resizerOverlapsContent):
4110
4111 2006-10-06  Sam Weinig  <sam.weinig@gmail.com>
4112
4113         Reviewed by Tim H.
4114
4115         Patch for http://bugs.webkit.org/show_bug.cgi?id=11191
4116         Auto-generate the interfaces even for Objective-C DOM 
4117         bindings that need custom implementations
4118
4119         - Fully auto-generate DOMEventTarget, DOMNodeFilter and 
4120           DOMHTMLOptionElement.
4121
4122         - Auto-generate just the interface for DOMHTMLAppletElement,
4123           DOMHTMLEmbedElement, DOMSVGNumber, DOMSVGPoint and DOMSVGRect
4124           using the new IDL property ObjCCustomImplementation.
4125
4126         * DerivedSources.make:
4127         * WebCore.xcodeproj/project.pbxproj:
4128         * bindings/objc/DOMEventTarget.h: Removed.
4129         * bindings/objc/DOMHTMLAppletElement.h: Removed.
4130         * bindings/objc/DOMHTMLEmbedElement.h: Removed.
4131         * bindings/objc/DOMHTMLOptionElement.h: Removed.
4132         * bindings/objc/DOMHTMLOptionElement.mm: Removed.
4133         * bindings/objc/DOMInternal.h:
4134         * bindings/objc/DOMNodeFilter.h: Removed.
4135         * bindings/objc/DOMSVGNumber.h: Removed.
4136         * bindings/objc/DOMSVGPoint.h: Removed.
4137         * bindings/objc/DOMSVGPoint.mm:
4138         (-[DOMSVGPoint matrixTransform:]):
4139         * bindings/objc/DOMSVGRect.h: Removed.
4140         * bindings/objc/PublicDOMInterfaces.h:
4141         * bindings/scripts/CodeGeneratorObjC.pm:
4142         * dom/EventTarget.idl:
4143         * html/HTMLAppletElement.idl:
4144         * html/HTMLEmbedElement.idl:
4145         * html/HTMLOptionElement.idl:
4146         * ksvg2/svg/SVGNumber.idl:
4147         * ksvg2/svg/SVGPoint.idl:
4148         * ksvg2/svg/SVGRect.idl:
4149
4150 2006-10-06  Nikolas Zimmermann  <zimmermann@kde.org>
4151
4152         Reviewed by Tim H.
4153
4154         Make Qt/Linux compile again completly.
4155
4156         * platform/qt/WidgetQt.cpp:
4157         (WebCore::Widget::removeFromParent):
4158
4159 2006-10-06  Nikolas Zimmermann  <zimmermann@kde.org>
4160
4161         Reviewed by Tim H.
4162
4163         Fix Qt/Linux build by adapting the s/ScrollBar/Scrollbar/ patch.
4164
4165         * platform/qt/PlatformScrollBar.h:
4166         * platform/qt/ScrollViewQt.cpp:
4167         (WebCore::ScrollView::hScrollbarMode):
4168         (WebCore::ScrollView::vScrollbarMode):
4169         (WebCore::ScrollView::suppressScrollbars):
4170         (WebCore::ScrollView::setHScrollbarMode):
4171         (WebCore::ScrollView::setVScrollbarMode):
4172         (WebCore::ScrollView::setScrollbarsMode):
4173         (WebCore::ScrollView::scrollbarUnderMouse):
4174         * platform/qt/TemporaryLinkStubs.cpp:
4175         (WebCore::Scrollbar::Scrollbar):
4176         (WebCore::Scrollbar::setSteps):
4177         (WebCore::Scrollbar::scroll):
4178         (WebCore::Scrollbar::setValue):
4179         (WebCore::Scrollbar::setProportion):
4180         (WebCore::PlatformScrollbar::PlatformScrollbar):
4181         (WebCore::PlatformScrollbar::~PlatformScrollbar):
4182         (WebCore::PlatformScrollbar::width):
4183         (WebCore::PlatformScrollbar::height):
4184         (WebCore::PlatformScrollbar::setEnabled):
4185         (WebCore::PlatformScrollbar::paint):
4186         (WebCore::PlatformScrollbar::updateThumbPosition):
4187         (WebCore::PlatformScrollbar::updateThumbProportion):
4188         (WebCore::PlatformScrollbar::setRect):
4189         (FrameView::passMousePressEventToScrollbar):
4190
4191 2006-10-06  Sam Weinig  <sam.weinig@gmail.com>
4192
4193         Reviewed by Tim H.
4194
4195         Patch for http://bugs.webkit.org/show_bug.cgi?id=11177
4196         Another round of Objective-C SVG DOM bindings auto-generation
4197
4198         - Auto-generate DOMSVGAnimatedNumberList, DOMSVGAnimatedRect, 
4199           DOMSVGComponentTransferFunctionElement, DOMSVGFEBlendElement, 
4200           DOMSVGFEColorMatrixElement, DOMSVGFEComponentTransferElement, 
4201           DOMSVGFECompositeElement, DOMSVGFEDiffuseLightingElement,
4202           DOMSVGFEDisplacementMapElement, DOMSVGFEDistantLightElement, 
4203           DOMSVGFEFloodElement, DOMSVGFEFuncAElement, DOMSVGFEFuncBElement, 
4204           DOMSVGFEFuncGElement, DOMSVGFEFuncRElement, DOMSVGFEGaussianBlurElement, 
4205           DOMSVGFEImageElement, DOMSVGFEMergeElement, DOMSVGFEMergeNodeElement, 
4206           DOMSVGFEOffsetElement, DOMSVGFEPointLightElement, 
4207           DOMSVGFESpecularLightingElement, DOMSVGFESpotLightElement, 
4208           DOMSVGFETileElement, DOMSVGFETurbulenceElement, 
4209           DOMSVGFilterPrimitiveStandardAttributes and DOMSVGNumberList. 
4210
4211         - Adds interfaces and implementation stubs for DOMSVGNumber, DOMSVGPoint
4212           and DOMSVGRect.
4213
4214         - IDL clean up.
4215
4216         - Make numOctaves in SVGFETurbulenceElement use a long instead of an int
4217           in it's macro declaration and definition.
4218
4219         * DerivedSources.make:
4220         * WebCore.xcodeproj/project.pbxproj:
4221         * bindings/objc/DOMCSS.mm:
4222         (+[DOMCSSValue _CSSValueWith:WebCore::]):
4223         * bindings/objc/DOMInternal.h:
4224         * bindings/objc/DOMSVG.h:
4225         * bindings/objc/DOMSVGNumber.h: Added.
4226         * bindings/objc/DOMSVGNumber.mm: Added.
4227         (-[DOMSVGNumber dealloc]):
4228         (-[DOMSVGNumber finalize]):
4229         (-[DOMSVGNumber value]):
4230         (-[DOMSVGNumber setValue:]):
4231         (-[DOMSVGNumber _SVGNumber]):
4232         (-[DOMSVGNumber _initWithFloat:]):
4233         (+[DOMSVGNumber _SVGNumberWith:]):
4234         * bindings/objc/DOMSVGPoint.h: Added.
4235         * bindings/objc/DOMSVGPoint.mm: Added.
4236         (-[DOM