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