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