WebCore:
[WebKit-https.git] / WebCore / ChangeLog
1 2007-10-11  Ada Chan  <adachan@apple.com>
2
3         <rdar://problem/5534421> 
4         Switched to using wkGetDefaultHTTPCookieStorage() and removed some cookie-related
5         methods we no longer need in ResourceHandle.
6         
7         <rdar://problem/5244261> "Never" cookie policy was ignored on windows
8         Need to set the cookie accept policy on each CFURLRequest.
9         
10         Reviewed by Oliver.
11
12         * platform/network/ResourceHandle.h:
13         * platform/network/cf/ResourceHandleCFNet.cpp:
14         (WebCore::makeFinalRequest):
15         * platform/network/cf/ResourceRequestCFNet.cpp:
16         (WebCore::ResourceRequest::doUpdatePlatformRequest):
17         * platform/network/win/CookieJarWin.cpp:
18         (WebCore::setCookies):
19         (WebCore::cookies):
20         (WebCore::cookiesEnabled):
21
22 2007-10-11  Mark Rowe  <mrowe@apple.com>
23
24         Reviewed by Tim Hatcher.
25
26         Fix for <rdar://problem/5488678>.  Disable debugging symbols in production builds for 10.4
27         PowerPC to prevent a huge STABS section from being generated.
28
29         * Configurations/Base.xcconfig:
30
31 2007-10-11  Lars Knoll  <lars@trolltech.com>
32
33         Reviewed by Erik Seidel and Simon.
34
35         Ensure that setting innerHTML on an element doesn't do
36         weird things with the document.
37         Fixes most issues with http://bugs.webkit.org/show_bug.cgi?id=15456
38
39         Test: fast/innerHTML/innerHTML-changing-document-properties.xhtml
40
41         * dom/XMLTokenizer.cpp:
42         (WebCore::XMLTokenizer::write):
43         (WebCore::XMLTokenizer::startDocument):
44         (WebCore::XMLTokenizer::end):
45         (WebCore::):
46
47 2007-10-10  George Staikos  <staikos@kde.org>
48
49         Reviewed by Adam Roben.
50
51         Fix Qt build on Win32 with VS2005.
52
53         * loader/FTPDirectoryDocument.cpp:
54         (WebCore::processFileDateString):
55         * loader/FTPDirectoryParser.cpp:
56         (WebCore::parseOneFTPLine):
57
58 2007-10-10  Alice Liu  <alice.liu@apple.com>
59
60         Reviewed by Geoff Garen.
61
62         Fixed <rdar://5464402> Crash when running fast/frames/onload-remove-iframe-crash.html in DRT
63         createFrame() now returns a RefPtr instead of a raw Frame pointer. 
64         Making this change improves the way we handle frames on Windows webkit. 
65
66         * loader/FrameLoader.cpp:
67         (WebCore::FrameLoader::loadSubframe):
68         * loader/FrameLoaderClient.h:
69         * platform/graphics/svg/SVGImageEmptyClients.h:
70         (WebCore::SVGEmptyFrameLoaderClient::createFrame):
71
72 2007-10-10  Simon Hausmann  <hausmann@kde.org>
73
74         Reviewed by Lars.
75
76         Fix compilation using gcc 4.3. Header files have been reorganized and as a result some extra
77         includes are needed for INT_MAX, std::auto_ptr and the like.
78
79         WARNING: NO TEST CASES ADDED OR CHANGED
80
81         * bridge/AXObjectCache.h:
82         * ksvg2/misc/SVGDocumentExtensions.h:
83         * platform/Base64.cpp:
84         * platform/graphics/svg/SVGPaintServerPattern.h:
85         * platform/graphics/svg/SVGResourceMasker.h:
86
87 2007-10-08  Sam Weinig  <sam@webkit.org>
88
89         Reviewed by Steve Falkenburg.
90
91         Fix for <rdar://problem/5519698> CrashTracer: [USER] 47 crashes in Safari at com.apple.WebCore: WebCore::XMLTokenizer::lineNumber const + 9
92
93         Test: fast/innerHTML/innerHTML-script-tag-crash.xhtml
94
95         * dom/XMLTokenizer.cpp:
96         (WebCore::XMLTokenizer::lineNumber): Return 1 when there is no context.
97         (WebCore::XMLTokenizer::columnNumber): ditto.
98
99 2007-10-08  Adam Roben  <aroben@apple.com>
100
101         Fix Bug 15305: Crash when dragging an image when "load images automatically" preference is off
102
103         http://bugs.webkit.org/show_bug.cgi?id=15305
104         <rdar://problem/5524774>
105
106         Reviewed by Eric Seidel.
107
108         No test possible: to reproduce this you have to change a WebKit
109         preference and reload the page. See
110         http://bugs.webkit.org/show_bug.cgi?id=15414
111
112         * platform/win/ClipboardWin.cpp:
113         (WebCore::createGlobalImageFileDescriptor): ASSERT that we have an
114         image and that it has a SharedBuffer.
115         (WebCore::writeImageToDataObject): The fix: null-check imageBuffer.
116
117 2007-10-05  Geoffrey Garen  <ggaren@apple.com>
118
119         Reviewed by Sam Weinig.
120         
121         New fix for <rdar://problem/5522487> REGRESSION: With JavaScript 
122         disabled, any page load causes a crash in PropertyMap::put
123         
124         Explicitly remove the "document" property from the window. The old 
125         solution would leave a stale "document" property around after JavaScript
126         was re-enabled.
127
128         The architecture for disabling JavaScript could use some consolidation. 
129         It seems wrong that a script proxy even exists when JavaScript is 
130         disabled. It also seems wrong that so many individual call sites are 
131         responsible for checking whether JavaScript is enabled. I've filed a 
132         bug about this: http://bugs.webkit.org/show_bug.cgi?id=15385.
133
134         * bindings/js/kjs_proxy.cpp:
135         (WebCore::KJSProxy::clearDocumentWrapper):
136         * bindings/js/kjs_proxy.h:
137         * page/Frame.cpp:
138         (WebCore::Frame::setDocument):
139
140 2007-10-05  Jon Honeycutt  <jhoneycutt@apple.com>
141
142         Reviewed by Anders.
143
144         <rdar://5520913> Ticketmaster.com doesn't display correctly (Flash
145         related?)
146
147         The plugin is requesting files that don't exist on the server, and
148         we are passing the 404 error page to the plugin. This change cancels the
149         stream if the response code indicates a failure.
150
151         This is a port of the safari / mac code.
152
153         * loader/win/NetscapePlugInStreamLoaderWin.cpp:
154         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse): If the
155         response code indicates a failure, cancel the stream
156
157 2007-10-05  Geoffrey Garen  <ggaren@apple.com>
158
159         Reviewed by Sam Weinig.
160         
161         Fixed <rdar://problem/5522487> REGRESSION: With JavaScript disabled, 
162         any page load causes a crash in PropertyMap::put
163         
164         The problem was that we were using JavaScript when JavaScript was
165         disabled. The architecture for disabling JavaScript could use some
166         consolidation, but this is the simplest, safest change for now.
167         
168         Currently passing layout tests still pass.
169
170         * bindings/js/kjs_proxy.cpp:
171         (WebCore::KJSProxy::updateDocumentWrapper):
172
173 2007-10-04  Beth Dakin  <bdakin@apple.com>
174
175         Reviewed by John Sullivan.
176
177         Fix for <rdar://problem/5441823> REGRESSION (r25142, Tiger only): 
178         Vertical scroll bar not redrawn properly when going back in history 
179         (15033)
180
181         This fix if-defs r25142 to be Leopard-only since it causes 
182         correctness issues on Tiger and does not seem to have any 
183         performance impact on Tiger either.
184
185         * loader/FrameLoader.cpp:
186         (WebCore::FrameLoader::transitionToCommitted):
187
188 2007-10-05  Ada Chan  <adachan@apple.com>
189
190         <rdar://problem/5436617> Favicons sometimes don't show up even when they are
191         in the database
192         - A client can try to retain an icon for a page before the database is actually
193         opened.  Since isOpened() is not a requirement to retain an icon, remove the check
194         for that.  Instead, we'll check to make sure whether this database is enabled
195         before proceeding.
196
197         Reviewed by Brady.
198
199         * loader/icon/IconDatabase.cpp:
200         (WebCore::IconDatabase::retainIconForPageURL):
201         (WebCore::IconDatabase::releaseIconForPageURL): only check isOpen() before we
202         schedule for a sync.
203
204 2007-10-05  Lars Knoll  <lars@trolltech.com>
205
206         Reviewed by olliej.
207
208         fix a hang in editing/selection/extend-by-word-002.html
209
210         * platform/qt/TextBreakIteratorQt.cpp:
211         (WebCore::CharBreakIteratorQt::next):
212         (WebCore::characterBreakIterator):
213
214 2007-10-04  Mark Rowe  <mrowe@apple.com>
215
216         Reviewed by Oliver.
217
218         Switch to default level of debugging symbols to resolve <rdar://problem/5488678>.
219         The "full" level appears to offer no observable benefits even though the documentation
220         suggests it be used for dead code stripping.  This should also decrease link times.
221
222         * Configurations/Base.xcconfig:
223
224 2007-10-04  Adele Peterson  <adele@apple.com>
225
226         Reviewed by Darin.
227
228         WebCore part of fix for <rdar://problem/5369017> REGRESSION: Can't tab to webview that doesn't have editable content
229
230         * page/FocusController.h: Added FocusDirection argument.
231         * page/FocusController.cpp: (WebCore::FocusController::setInitialFocus):
232           Use FocusDirection argument instead of key modifiers to send direction to advanceFocus.
233         * WebCore.exp: Updated symbol.
234
235 2007-10-04  Kevin Decker  <kdecker@apple.com>
236
237         Reviewed by John.
238         
239         <rdar://problems/5516309>
240         
241         * page/FrameView.cpp:
242         (WebCore::FrameView::updateControlTints): Avoid the expense of updating tints on controls for the
243         empty-window case since this can take a significant amount of time even on windows that have no
244         content at all. Note this fix specifically optimizes the empty window/tab case; for a more broad
245         fix John wrote up rdar://problem/5521050.
246
247 2007-10-04  Darin Adler  <darin@apple.com>
248
249         * page/Frame.h: Put functions into categories to indicate other classes
250         we'd like to move them into in the future. Just organizational -- no code
251         change.
252
253 2007-10-04  Lars Knoll  <lars@trolltech.com>
254
255         Reviewed by maciej.
256
257         fix a crash in the FrameLoader that can happen under certain
258         conditions in the Qt port.
259
260         Test: fast/loader/iframe-crash-on-missing-image.xhtml
261
262         * loader/FrameLoader.cpp:
263         (WebCore::FrameLoader::receivedMainResourceError):
264
265 2007-10-03  Alp Toker  <alp@atoker.com>
266
267         Reviewed by Adam.
268
269         http://bugs.webkit.org/show_bug.cgi?id=14726
270         [gtk] API design. Mapping the WebView delegates to signals.
271
272         Change the API namespace of the Gtk+ port from 'WebKitGtk' to 'WebKit'.
273
274         * WebCore.pro:
275
276 2007-10-03  Alp Toker  <alp@atoker.com>
277
278         Reviewed by Eric.
279
280         http://bugs.webkit.org/show_bug.cgi?id=14129
281         [CAIRO] Support the canvas element
282
283         Add a new canvas implementation using Cairo for rendering.
284
285         * html/CanvasGradient.cpp:
286         (WebCore::CanvasGradient::CanvasGradient):
287         (WebCore::CanvasGradient::~CanvasGradient):
288         (WebCore::CanvasGradient::addColorStop):
289         (WebCore::CanvasGradient::platformShading):
290         * html/CanvasGradient.h:
291         * html/CanvasRenderingContext2D.cpp:
292         (WebCore::CanvasRenderingContext2D::setFillStyle):
293         (WebCore::CanvasRenderingContext2D::fill):
294         (WebCore::CanvasRenderingContext2D::stroke):
295         (WebCore::CanvasRenderingContext2D::fillRect):
296         (WebCore::CanvasRenderingContext2D::drawImage):
297         (WebCore::CanvasRenderingContext2D::applyStrokePattern):
298         * html/CanvasStyle.cpp:
299         (WebCore::CanvasStyle::applyStrokeColor):
300         * html/HTMLCanvasElement.cpp:
301         (WebCore::HTMLCanvasElement::~HTMLCanvasElement):
302         (WebCore::HTMLCanvasElement::reset):
303         (WebCore::HTMLCanvasElement::paint):
304         (WebCore::HTMLCanvasElement::createDrawingContext):
305         (WebCore::HTMLCanvasElement::createPlatformImage):
306         * html/HTMLCanvasElement.h:
307
308 2007-10-03  Lars Knoll  <lars@trolltech.com>
309
310         Signed off by olliej.
311
312         move WebKitQt to WebKit/qt for consistency with the other ports.
313
314         WARNING: NO TEST CASES ADDED OR CHANGED
315
316         * WebCore.pro:
317
318 2007-10-02  Sam Weinig  <sam@webkit.org>
319
320         Reviewed by Oliver and Adam.
321
322         Patch for <rdar://problem/5506968> Fail to DnD local file with non-ascii character in path from desktop to Safari (can open it with file menu)
323
324         Use CoreFoundation to do the conversion from path to URL, as the Windows API was not
325         correctly converting to UTF-8 and we know CFURL will.
326
327         * platform/win/ClipboardUtilitiesWin.cpp:
328         (WebCore::urlFromPath):
329         (WebCore::getURL):
330
331 2007-10-02  Tristan O'Tierney  <tristan@apple.com>
332
333         Reviewed by Darin Adler.
334
335         <rdar://problem/5511842> REGRESSION: Webkit stops responding while loading Apple Store Canada page (15304)
336         
337         Included the NSSynchronousURLConnection_PrivateMode mode, in addition to the default run loop modes
338         as an acceptable mode when using performSelectorOnMainThread with our syncronous url callbacks.
339
340         * platform/network/mac/ResourceHandleMac.mm:
341         (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]):
342         Added NSSynchronousURLConnection_PrivateMode to the list of accepted modes.
343
344 2007-10-02  Darin Adler  <darin@apple.com>
345
346         Reviewed by Adam.
347
348         - add support for GDI objects to OwnPtr; I plan to use this
349           to fix some GDI handle leaks
350
351         * css/CSSGrammar.y: Change parser to avoid macro that conflicts
352         with macro defined in Windows system headers: FLOAT. This is needed
353         because OwnPtr.h will now include <windows.h>.
354         * css/CSSParser.cpp: (WebCore::CSSParser::lex): Ditto.
355         * css/tokenizer.flex: Ditto.
356
357         * platform/win/CursorWin.cpp: (WebCore::Cursor::Cursor):
358         Use OwnPtr for a few HBITMAP objects as a test case.
359
360         * platform/win/COMPtr.h: (COMPtr::COMPtr): Fix so that we can use
361         Query with other COMPtr. Before this would not compile if it was
362         ever instantiated.
363
364 2007-10-02  Steve Falkenburg  <sfalken@apple.com>
365
366         Reviewed by Adam, Ada.
367
368         Fix leak of GDI handle when we call MLANG.
369
370         * platform/win/FontCacheWin.cpp:
371         (WebCore::FontCache::getFontDataForCharacters):
372
373 2007-10-02  Lars Knoll  <lars@trolltech.com>
374
375         Reviewed by Olliej.
376
377         The cookies() method should only return the value of the
378         cookie, not additional info such as the expiration date.
379
380         * platform/qt/CookieJarQt.cpp:
381         (WebCore::cookies):
382
383 2007-10-01  Lars Knoll  <lars@trolltech.com>
384
385         Reviewed by Eric.
386
387         Fix a wrong extension mapping in the MIMETypeRegistry and identify about: url's as frames in the FrameLoaderClient.
388
389         * platform/qt/MIMETypeRegistryQt.cpp:
390         (WebCore::):
391
392 2007-10-01  Justin Garcia  <justin.garcia@apple.com>
393
394         Reviewed by Harrison.
395
396         <rdar://problem/5516183> REGRESSION: Creating a ToDo on an incoming message fails
397         
398         Rolling out r25721.
399
400         * editing/ReplaceSelectionCommand.cpp:
401         (WebCore::ReplaceSelectionCommand::doApply):
402         * editing/ReplaceSelectionCommand.h:
403
404 2007-10-01  Beth Dakin  <bdakin@apple.com>
405
406         Reviewed by Adam.
407
408         Fix for <rdar://problem/5515426> NetNewsWire 3 crashes at launch in 
409         WebCore::FrameView::layout (other repro scenarios too)
410
411         The new call to updateWidget() that we added to FrameView::layout() 
412         can destroy the RenderPartObject. And so we were crashing on the 
413         subsequent call to updateWidgetPosition(). This patch fixes that by 
414         checking to make sure the RenderPartObject is still in the HashSet 
415         after updateWidget(). Because m_widgetUpdateSet can be modified 
416         during the call to updateWidget(), we need it to be intact while we 
417         are iterating through the copy, so we cannot use the HashSet::swap 
418         call we were using before. This patch instead uses a Vector to 
419         iterate through the HashSet data and calls clear() on the HashSet 
420         at the end.
421
422         * page/FrameView.cpp:
423         (WebCore::FrameView::layout):
424
425 2007-10-01  Eli Fidler  <eli@staikos.net>
426
427         Reviewed by George Staikos.
428
429         Switch bogus assert to a conditional and return.  This case happens
430         when a widget is hidden.
431
432         * platform/qt/WidgetQt.cpp:
433         (WebCore::Widget::invalidateRect):
434
435 2007-09-30  Darin Adler  <darin@apple.com>
436
437         Reviewed by Maciej.
438
439         - tone down the assertion I asked Harrison to include in his fix for
440           <rdar://problem/5511128>; it's OK to re-ref and deref the document
441           as long as you do so after the children are done being destroyed
442
443         No effect on release builds. Assertion change only.
444
445         Besides the changes listed below, renamed m_hasDeleted flag to
446         m_deletionHasBegun.
447
448         * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeAllChildren):
449         Added code to set the m_deletionHasBegun flag and some assertions
450         that test its state.
451
452         * dom/Document.h: Removed m_hasDeleted -- we now use m_deletionHasBegun
453         in the base class TreeShared.
454         * dom/Document.cpp:
455         (WebCore::Document::Document): Removed initialization of m_hasDeleted.
456         (WebCore::Document::removedLastRef): Added code to clear
457         m_inRemovedLastRefFunction if we end up deciding not to delete this.
458
459         * platform/Shared.h:
460         (WebCore::TreeShared::TreeShared): Added m_deletionHasBegun in addition to
461         m_inRemovedLastRefFunction (formerly named m_hasRemovedLastRef).
462         (WebCore::TreeShared::~TreeShared): Assert that m_deletionHasBegun is true.
463         (WebCore::TreeShared::ref): Assert neither flag is true.
464         (WebCore::TreeShared::deref): Ditto.
465         (WebCore::TreeShared::hasOneRef): Ditto.
466         (WebCore::TreeShared::removedLastRef): Made private. Added code to
467         set m_hasDeleted to true. Also removed cast; since this class template
468         has a virtual destructor, we don't need to cast before calling delete.
469
470 2007-09-29  Holger Hans Peter Freyther  <zecke@selfish.org>
471
472         Reviewed by Mark.
473
474         -Fix http://bugs.webkit.org/show_bug.cgi?id=13226.
475         Remove Bakefiles from svn.
476
477         * Projects/gdk/webcore-gdk.bkl: Removed.
478         * Projects/wx/webcore-wx.bkl: Removed.
479         * WebCoreSources.bkl: Removed.
480         * webcore-base.bkl: Removed.
481
482 2007-09-28  Jan Michael Alonzo  <jmalonzo@unpluggable.com>
483
484         Reviewed by Mark.
485
486         -Fix http://bugs.webkit.org/show_bug.cgi?id=15254.
487
488         * platform/gtk/RenderThemeGtk.cpp:
489         (WebCore::RenderThemeGtk::determineState):
490             - Apply state if control is readonly
491             - Added state GTK_STATE_SELECTED of object is checked
492             - Apply GTK_STATE_ACTIVE if RenderObject isFocused()
493         (WebCore::RenderThemeGtk::paintTextField):
494         (WebCore::RenderThemeGtk::gtkEntry):
495             - Implemented theme-aware text field based on gtk/gtkentry.c implementation
496
497 2007-09-29  Holger Hans Peter Freyther  <zecke@selfish.org>
498
499         Reviewed by Eric.
500
501         Build fix for Mac Gtk+ and Qt builds. In revision 25798 changing
502         XSLTProcessor.cpp was forgotten.
503
504         * xml/XSLTProcessor.cpp: Use PLATFORM(MAC) instead of PLATFORM(DARWIN)
505
506 2007-09-29  Adam Roben  <aroben@apple.com>
507
508         Fix <rdar://4965715> Horizontal scrollwheel scrolling moves in opposite direction on Vista
509
510         Reviewed by Sam.
511
512         No regression test possible.
513
514         * platform/win/WheelEventWin.cpp:
515         (WebCore::PlatformWheelEvent::PlatformWheelEvent): Use a negative
516         delta when scrolling right to match EventHandler's expectations (which
517         are based on AppKit).
518
519 2007-09-28  Kevin Decker  <kdecker@apple.com>
520
521         Reviewed by Mark Rowe
522
523         Build fix for Mac Gtk+ and Qt builds.
524         
525         * xml/XSLStyleSheet.cpp: Use PLATFORM(MAC) instead of PLATFORM(DARWIN)
526         * xml/XSLTExtensions.cpp: Ditto.
527
528 2007-09-28  David Harrison  <harrison@apple.com>
529
530         Reviewed by Darin Adler.
531
532         <rdar://problem/5511128> Crash closing or reloading this SVG
533
534         * dom/ContainerNode.cpp:
535         (WebCore::dispatchChildInsertionEvents):
536         (WebCore::dispatchChildRemovalEvents):
537         Use DocPtr instead of RefPtr, since these events are dispatched
538         when the Document is being being torn down by removedLastRef().
539
540         * dom/DocPtr.h:
541         (WebCore::DocPtr::DocPtr):
542         Fix longstanding typo in template so that the DocPtr(DocPtr) constructor can be used.
543
544         * dom/Document.cpp:
545         (WebCore::Document::Document):
546         (WebCore::Document::removedLastRef):
547         * dom/Document.h:
548         (WebCore::Document::selfOnlyRef):
549         (WebCore::Document::selfOnlyDeref):
550         * platform/Shared.h:
551         (WebCore::Shared::Shared):
552         (WebCore::Shared::ref):
553         (WebCore::Shared::deref):
554         (WebCore::Shared::hasOneRef):
555         (WebCore::TreeShared::TreeShared):
556         (WebCore::TreeShared::ref):
557         (WebCore::TreeShared::deref):
558         (WebCore::TreeShared::hasOneRef):
559         (WebCore::TreeShared::refCount):
560         Add debug-only checks for a document being ref-counted while being deleted.
561
562 2007-09-27  Kevin McCullough  <kmccullough@apple.com>
563
564         Reviewed by Darin.
565
566         - <rdar://5261371> Nothing downloaded when exporting bookmarks from iGoogle web history
567
568         Function for use by WebKit. Currently used only on Windows.
569
570         * platform/network/ResourceResponse.cpp:
571         (WebCore::ResourceResponse::isAttachment):
572         * platform/network/ResourceResponse.h:
573
574 2007-09-27  Mitz Pettel  <mitz@webkit.org>
575
576         Reviewed by Dave Hyatt.
577
578         - fix http://bugs.webkit.org/show_bug.cgi?id=15262
579           REGRESSION: Margin-top:18px is pushing down the multiple select list box outside the div.
580
581         Reflected in existing tests.
582
583         * css/html4.css: Changed listboxes to use border-box sizing, to match Firefox,
584         WinIE and apparently also Safari 2.
585
586 2007-09-27  Kevin Decker  <kdecker@apple.com>
587
588         <rdar://problem/5493093>
589     
590         Rubber stamped by John Sullivan.
591         
592         * WebCore.order: Added.
593         * WebCore.xcodeproj/project.pbxproj:  We're changing from using an order file built by another team to using one
594          we actually check into our project repository. Linker settings for Symbol Ordering Flags have been updated
595          accordingly.
596          
597 2007-09-27  Antti Koivisto  <antti@apple.com>
598
599         Reviewed by Geoff.
600         
601         Fix for <rdar://problem/5499125>
602         REGRESSION (r21367): After launching Kidzui beta, a webview frame fails to appear in its main window
603         
604         If window object properties were modified when it had initial empty document (synchronously after 
605         window.open() for example) those modifications were lost when the real document was switched in.
606         
607         Match Firefox behavior where window properties are not cleared if the inital document and the loaded one
608         have matching security domains.
609
610         Tests: fast/dom/Window/window-early-properties.html
611                http/tests/security/window-properties-clear-domain.html
612                http/tests/security/window-properties-clear-port.html
613                http/tests/security/window-properties-pass.html
614
615         * WebCore.exp:
616         * loader/FrameLoader.cpp:
617         (WebCore::FrameLoader::FrameLoader):
618         (WebCore::FrameLoader::init):
619         (WebCore::FrameLoader::clear):
620         (WebCore::FrameLoader::isSecureTransition):
621         (WebCore::FrameLoader::begin):
622         * loader/FrameLoader.h:
623         If we are transitioning from initial empty document to the final one, do a domain security check
624         between old security policy URL and new URL. If that passes don't clear script proxy and script objects.
625         
626         * bindings/js/kjs_proxy.cpp:
627         (WebCore::KJSProxy::updateDocumentWrapper):
628         * bindings/js/kjs_proxy.h:
629         * page/Frame.cpp:
630         (WebCore::Frame::setDocument):
631         Since we don't always clear window properties anymore, we need to update the document property to point to
632         the newly created one. 
633         
634 2007-09-27  Kevin Decker  <kdecker@apple.com>
635
636         Reviewed by Darin.
637
638         <rdar://problem/5493093>
639         
640         * WebCore.xcodeproj/project.pbxproj: Removed libxslt from statically linked frameworks.
641         * platform/mac/SoftLinking.h: Formatting tweakes, added SOFT_LINK_LIBRARY, and if'def for 
642         PLATFORM(DARWIN)
643         * xml/XSLStyleSheet.cpp: Soft-linked libxslt.
644         * xml/XSLTExtensions.cpp: Removed the call to xsltGenericError, and added a FIXME comment stating
645         that it might be helpful to push any errors from xmlXPathNewValueTree up to the Javascript Console. 
646         * xml/XSLTProcessor.cpp: Soft-linked libxslt.
647         
648 2007-09-27  Adele Peterson  <adele@apple.com>
649
650         Reviewed by Brady.
651
652         Fix for <rdar://problem/5453350> REGRESSION (r18541, Tiger only): Refreshing a cached https page does not reload CSS and JavaScript resources
653         http://bugs.webkit.org/show_bug.cgi?id=15121
654
655         * loader/FrameLoader.cpp: (WebCore::FrameLoader::addExtraFieldsToRequest): Now sets the cache policy to ReloadIgnoringCacheData.  Without setting the cache policy,
656         the default policy in this case was ReturnCacheDataElseLoad.  If we're in a situation where the resource is in the cache, we want to make sure to avoid loading from the cache in this case.
657
658 2007-09-27  Timothy Hatcher  <timothy@apple.com>
659
660         Reviewed by Darin.
661
662         <rdar://problem/5199546> CrashTracer: [REGRESSION] 8216 crashes in Safari at com.apple.WebCore: WebCore::ResourceHandle::client const + 6
663
664         On Tiger NSURLConnection can sometimes call the connection:willCacheResponse: delegate method on
665         a secondary thread instead of the main thread. This was never an issue before, since the implementation 
666         of this method was very simple and thread safe.
667
668         The fix is to block during connection:willCacheResponse: and perform the work on the main thread.
669         We need to block since this delegate method needs to return a result. If we are already on the
670         main thread (which sometimes we are), the method does nothing different. If we are on a secondary
671         thread, we make a mutable dictionary to hold all the arguments and later the result object.
672         Then performSelectorOnMainThread:withObject: using the _callConnectionWillCacheResponseWithInfo:
673         selector. This new method just pulls the arguments out for the dictionary and calls the real
674         connection:willCacheResponse: delegate method (this time on the main thread). The result is stored
675         in the dictionary, and when performSelectorOnMainThread:withObject: finishes the result is pulled
676         out and returned.
677
678         * platform/network/mac/ResourceHandleMac.mm:
679         (-[WebCoreResourceHandleAsDelegate _callConnectionWillCacheResponseWithInfo:]):
680         (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]):
681
682 2007-09-27  David Hyatt  <hyatt@apple.com>
683
684         Update to reflect the minimal WebKitSystemInterface changes required
685         to support @font-face.
686
687         Reviewed by john
688
689         * platform/mac/FontDataMac.mm:
690         (WebCore::FontData::platformInit):
691         (WebCore::FontData::platformWidthForGlyph):
692         * platform/mac/WebCoreSystemInterface.h:
693         * platform/mac/WebCoreSystemInterface.mm:
694
695 2007-09-26  Darin Adler  <darin@apple.com>
696
697         - fix Windows build
698
699         * platform/win/ClipboardWin.cpp:
700         (WebCore::writeURL): Add a check for empty URL. Remove the check for invalid URL.
701         (WebCore::ClipboardWin::setData): Remove the check for invalid URL.
702         * plugins/win/PluginViewWin.cpp:
703         (WebCore::PluginViewWin::start): Check for empty URL instead of invalid URL.
704         (WebCore::PluginViewWin::load): Same here.
705
706 2007-09-26  Darin Adler  <darin@apple.com>
707
708         Reviewed by John Sullivan.
709
710         - fix <rdar://problem/5491054> REGRESSION (Mail, plain-text only): Nothing happens
711           when you click on rdar://<num>&<num> links (or AOL links in Safari)
712
713         Remove the non-useful concept of a "malformed"/"invalid" URL.
714
715         There are URLs we can parse, and others we can't, but that's not sufficient to
716         determine if we should try to work with the URL. It's entirely possible that
717         a so-called "malformed" URL will work just fine if it's passed to the right
718         software.
719
720         * platform/KURL.h: Removed isMalformed() and isValid().
721
722         * loader/Cache.cpp: (WebCore::Cache::requestResource): Removed unneeded check
723         if the URL is valid. But do check for an empty URL just to guarantee we don't
724         trip up with a null string. It's possible we can remove this empty URL check
725         later, but it's less risky to leave the empty string behavior alone for now.
726
727         * loader/FrameLoader.cpp:
728         (WebCore::FrameLoader::urlSelected): Removed unneeded check if the URL is valid.
729         Back on 2007-07-08, we realized that we needed to allow empty URLs. But we also
730         need to allow other URLs here. This is the code path from the Mail case.
731         (WebCore::FrameLoader::submitForm): Replaced URL validity check with a check
732         for an empty URL (same reasoning as for requestResource above).
733
734         * page/InspectorController.cpp: (WebCore::InspectorResource::type):
735         * rendering/RenderObject.cpp: (WebCore::RenderObject::addPDFURLRect):
736         Removed unneeded check for an invalid URL. In both of these cases it's definitely
737         safe to allow event an empty URL.
738
739 2007-09-26  George Staikos  <staikos@kde.org>
740
741         Reviewed by John Sullivan.
742
743         Only highlight the applicable portion of the text run for a search
744         highlight.  No way to make a testcase for this presently.
745
746         * rendering/InlineTextBox.cpp:
747         (WebCore::InlineTextBox::paintTextMatchMarker):
748
749 2007-09-25  David Kilzer  <ddkilzer@webkit.org>
750
751         Reviewed by Adam.
752
753         - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
754           LGPL'ed files contain incorrect FSF address
755
756         * LICENSE-LGPL-2:
757         * LICENSE-LGPL-2.1:
758         * WebCorePrefix.h:
759         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
760         * bindings/js/JSDOMWindowCustom.cpp:
761         * bindings/js/JSDocumentCustom.cpp:
762         * bindings/js/JSHTMLCollectionCustom.cpp:
763         * bindings/js/JSHTMLElementWrapperFactory.cpp:
764         * bindings/js/JSHTMLElementWrapperFactory.h:
765         * bindings/js/JSHTMLInputElementBase.cpp:
766         * bindings/js/JSHTMLInputElementBase.h:
767         * bindings/js/JSHTMLOptionElementConstructor.cpp:
768         * bindings/js/JSHTMLOptionElementConstructor.h:
769         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
770         * bindings/js/JSHTMLSelectElementCustom.cpp:
771         * bindings/js/JSNodeFilterCondition.cpp:
772         * bindings/js/JSNodeFilterCondition.h:
773         * bindings/js/JSNodeIteratorCustom.cpp:
774         * bindings/js/JSSVGElementWrapperFactory.cpp:
775         * bindings/js/JSSVGElementWrapperFactory.h:
776         * bindings/js/JSSVGMatrixCustom.cpp:
777         * bindings/js/JSSVGPathSegCustom.cpp:
778         * bindings/js/JSSVGPathSegListCustom.cpp:
779         * bindings/js/JSSVGPointListCustom.cpp:
780         * bindings/js/JSTreeWalkerCustom.cpp:
781         * bindings/js/JSXMLHttpRequest.cpp:
782         * bindings/js/JSXMLHttpRequest.h:
783         * bindings/js/kjs_binding.cpp:
784         * bindings/js/kjs_binding.h:
785         * bindings/js/kjs_css.cpp:
786         * bindings/js/kjs_css.h:
787         * bindings/js/kjs_dom.cpp:
788         * bindings/js/kjs_dom.h:
789         * bindings/js/kjs_events.cpp:
790         * bindings/js/kjs_events.h:
791         * bindings/js/kjs_html.cpp:
792         * bindings/js/kjs_html.h:
793         * bindings/js/kjs_navigator.cpp:
794         * bindings/js/kjs_navigator.h:
795         * bindings/js/kjs_proxy.cpp:
796         * bindings/js/kjs_proxy.h:
797         * bindings/js/kjs_window.cpp:
798         * bindings/js/kjs_window.h:
799         * bindings/objc/DOMImplementationFront.cpp:
800         * bindings/objc/DOMImplementationFront.h:
801         * bindings/scripts/CodeGenerator.pm:
802         * bindings/scripts/CodeGeneratorJS.pm:
803         * bindings/scripts/CodeGeneratorObjC.pm:
804         * bindings/scripts/IDLParser.pm:
805         * bindings/scripts/IDLStructure.pm:
806         * bindings/scripts/generate-bindings.pl:
807         * config.h:
808         * css/CSSBorderImageValue.cpp:
809         * css/CSSBorderImageValue.h:
810         * css/CSSCharsetRule.cpp:
811         * css/CSSCharsetRule.h:
812         * css/CSSCharsetRule.idl:
813         * css/CSSComputedStyleDeclaration.cpp:
814         * css/CSSComputedStyleDeclaration.h:
815         * css/CSSCursorImageValue.cpp:
816         * css/CSSCursorImageValue.h:
817         * css/CSSFontFaceRule.cpp:
818         * css/CSSFontFaceRule.h:
819         * css/CSSFontFaceRule.idl:
820         * css/CSSGrammar.y:
821         * css/CSSHelper.cpp:
822         * css/CSSHelper.h:
823         * css/CSSImageValue.cpp:
824         * css/CSSImageValue.h:
825         * css/CSSImportRule.cpp:
826         * css/CSSImportRule.h:
827         * css/CSSImportRule.idl:
828         * css/CSSInheritedValue.cpp:
829         * css/CSSInheritedValue.h:
830         * css/CSSInitialValue.cpp:
831         * css/CSSInitialValue.h:
832         * css/CSSMediaRule.cpp:
833         * css/CSSMediaRule.h:
834         * css/CSSMediaRule.idl:
835         * css/CSSMutableStyleDeclaration.cpp:
836         * css/CSSMutableStyleDeclaration.h:
837         * css/CSSNamespace.h:
838         * css/CSSPageRule.cpp:
839         * css/CSSPageRule.h:
840         * css/CSSPageRule.idl:
841         * css/CSSParser.cpp:
842         * css/CSSParser.h:
843         * css/CSSPrimitiveValue.cpp:
844         * css/CSSPrimitiveValue.h:
845         * css/CSSPrimitiveValue.idl:
846         * css/CSSProperty.cpp:
847         * css/CSSProperty.h:
848         * css/CSSQuirkPrimitiveValue.h:
849         * css/CSSRule.cpp:
850         * css/CSSRule.h:
851         * css/CSSRule.idl:
852         * css/CSSRuleList.cpp:
853         * css/CSSRuleList.h:
854         * css/CSSSelector.cpp:
855         * css/CSSSelector.h:
856         * css/CSSStyleDeclaration.cpp:
857         * css/CSSStyleDeclaration.h:
858         * css/CSSStyleDeclaration.idl:
859         * css/CSSStyleRule.cpp:
860         * css/CSSStyleRule.h:
861         * css/CSSStyleRule.idl:
862         * css/CSSStyleSelector.cpp:
863         * css/CSSStyleSelector.h:
864         * css/CSSStyleSheet.cpp:
865         * css/CSSStyleSheet.h:
866         * css/CSSStyleSheet.idl:
867         * css/CSSUnknownRule.h:
868         * css/CSSUnknownRule.idl:
869         * css/CSSValue.h:
870         * css/CSSValue.idl:
871         * css/CSSValueList.cpp:
872         * css/CSSValueList.h:
873         * css/Counter.h:
874         * css/Counter.idl:
875         * css/DashboardRegion.h:
876         * css/FontFamilyValue.cpp:
877         * css/FontFamilyValue.h:
878         * css/FontValue.cpp:
879         * css/FontValue.h:
880         * css/MediaFeatureNames.cpp:
881         * css/MediaFeatureNames.h:
882         * css/MediaList.cpp:
883         * css/MediaList.h:
884         * css/Pair.h:
885         * css/RGBColor.idl:
886         * css/Rect.h:
887         * css/Rect.idl:
888         * css/ShadowValue.cpp:
889         * css/ShadowValue.h:
890         * css/StyleBase.cpp:
891         * css/StyleBase.h:
892         * css/StyleList.cpp:
893         * css/StyleList.h:
894         * css/StyleSheet.cpp:
895         * css/StyleSheet.h:
896         * css/StyleSheet.idl:
897         * css/StyleSheetList.cpp:
898         * css/StyleSheetList.h:
899         * css/StyleSheetList.idl:
900         * css/html4.css:
901         * css/make-css-file-arrays.pl:
902         * css/makegrammar.pl:
903         * css/makeprop.pl:
904         * css/maketokenizer:
905         * css/makevalues.pl:
906         * css/quirks.css:
907         * dom/AtomicStringList.h:
908         * dom/Attr.cpp:
909         * dom/Attr.h:
910         * dom/Attr.idl:
911         * dom/Attribute.cpp:
912         * dom/Attribute.h:
913         * dom/BeforeUnloadEvent.cpp:
914         * dom/BeforeUnloadEvent.h:
915         * dom/CDATASection.cpp:
916         * dom/CDATASection.h:
917         * dom/CDATASection.idl:
918         * dom/CSSMappedAttributeDeclaration.cpp:
919         * dom/CSSMappedAttributeDeclaration.h:
920         * dom/CharacterData.cpp:
921         * dom/CharacterData.h:
922         * dom/CharacterData.idl:
923         * dom/ChildNodeList.cpp:
924         * dom/ChildNodeList.h:
925         * dom/Clipboard.h:
926         * dom/ClipboardEvent.cpp:
927         * dom/ClipboardEvent.h:
928         * dom/Comment.cpp:
929         * dom/Comment.h:
930         * dom/Comment.idl:
931         * dom/ContainerNode.cpp:
932         * dom/ContainerNode.h:
933         * dom/DOMImplementation.cpp:
934         * dom/DOMImplementation.h:
935         * dom/DOMImplementation.idl:
936         * dom/DocPtr.h:
937         * dom/Document.cpp:
938         * dom/Document.h:
939         * dom/Document.idl:
940         * dom/DocumentFragment.cpp:
941         * dom/DocumentFragment.h:
942         * dom/DocumentFragment.idl:
943         * dom/DocumentMarker.h:
944         * dom/DocumentType.cpp:
945         * dom/DocumentType.h:
946         * dom/DocumentType.idl:
947         * dom/EditingText.cpp:
948         * dom/EditingText.h:
949         * dom/Element.cpp:
950         * dom/Element.h:
951         * dom/Element.idl:
952         * dom/Entity.cpp:
953         * dom/Entity.h:
954         * dom/Entity.idl:
955         * dom/EntityReference.cpp:
956         * dom/EntityReference.h:
957         * dom/EntityReference.idl:
958         * dom/Event.cpp:
959         * dom/Event.h:
960         * dom/Event.idl:
961         * dom/EventListener.h:
962         * dom/EventListener.idl:
963         * dom/EventNames.cpp:
964         * dom/EventNames.h:
965         * dom/EventTarget.idl:
966         * dom/EventTargetNode.cpp:
967         * dom/EventTargetNode.h:
968         * dom/ExceptionCode.h:
969         * dom/KeyboardEvent.cpp:
970         * dom/KeyboardEvent.h:
971         * dom/KeyboardEvent.idl:
972         * dom/MappedAttribute.cpp:
973         * dom/MappedAttribute.h:
974         * dom/MappedAttributeEntry.h:
975         * dom/MouseEvent.cpp:
976         * dom/MouseEvent.h:
977         * dom/MouseEvent.idl:
978         * dom/MouseRelatedEvent.cpp:
979         * dom/MouseRelatedEvent.h:
980         * dom/MutationEvent.cpp:
981         * dom/MutationEvent.h:
982         * dom/MutationEvent.idl:
983         * dom/NameNodeList.cpp:
984         * dom/NameNodeList.h:
985         * dom/NamedAttrMap.cpp:
986         * dom/NamedAttrMap.h:
987         * dom/NamedMappedAttrMap.cpp:
988         * dom/NamedMappedAttrMap.h:
989         * dom/NamedNodeMap.h:
990         * dom/NamedNodeMap.idl:
991         * dom/Node.cpp:
992         * dom/Node.h:
993         * dom/Node.idl:
994         * dom/NodeFilter.cpp:
995         * dom/NodeFilter.h:
996         * dom/NodeFilter.idl:
997         * dom/NodeFilterCondition.cpp:
998         * dom/NodeFilterCondition.h:
999         * dom/NodeIterator.cpp:
1000         * dom/NodeIterator.h:
1001         * dom/NodeIterator.idl:
1002         * dom/NodeList.cpp:
1003         * dom/NodeList.h:
1004         * dom/NodeList.idl:
1005         * dom/Notation.cpp:
1006         * dom/Notation.h:
1007         * dom/Notation.idl:
1008         * dom/ProcessingInstruction.cpp:
1009         * dom/ProcessingInstruction.h:
1010         * dom/ProcessingInstruction.idl:
1011         * dom/QualifiedName.cpp:
1012         * dom/QualifiedName.h:
1013         * dom/Range.cpp:
1014         * dom/Range.h:
1015         * dom/Range.idl:
1016         * dom/RangeException.h:
1017         * dom/RangeException.idl:
1018         * dom/RegisteredEventListener.cpp:
1019         * dom/RegisteredEventListener.h:
1020         * dom/StyleElement.cpp:
1021         * dom/StyleElement.h:
1022         * dom/StyledElement.cpp:
1023         * dom/StyledElement.h:
1024         * dom/Text.cpp:
1025         * dom/Text.h:
1026         * dom/Text.idl:
1027         * dom/Tokenizer.h:
1028         * dom/Traversal.cpp:
1029         * dom/Traversal.h:
1030         * dom/TreeWalker.cpp:
1031         * dom/TreeWalker.h:
1032         * dom/TreeWalker.idl:
1033         * dom/UIEvent.cpp:
1034         * dom/UIEvent.h:
1035         * dom/UIEvent.idl:
1036         * dom/UIEventWithKeyState.cpp:
1037         * dom/UIEventWithKeyState.h:
1038         * dom/WheelEvent.cpp:
1039         * dom/WheelEvent.h:
1040         * dom/WheelEvent.idl:
1041         * dom/XMLTokenizer.cpp:
1042         * dom/XMLTokenizer.h:
1043         * html/FormDataList.cpp:
1044         * html/FormDataList.h:
1045         * html/HTMLAnchorElement.cpp:
1046         * html/HTMLAnchorElement.h:
1047         * html/HTMLAnchorElement.idl:
1048         * html/HTMLAppletElement.cpp:
1049         * html/HTMLAppletElement.h:
1050         * html/HTMLAppletElement.idl:
1051         * html/HTMLAreaElement.cpp:
1052         * html/HTMLAreaElement.h:
1053         * html/HTMLAreaElement.idl:
1054         * html/HTMLBRElement.cpp:
1055         * html/HTMLBRElement.h:
1056         * html/HTMLBRElement.idl:
1057         * html/HTMLBaseElement.cpp:
1058         * html/HTMLBaseElement.h:
1059         * html/HTMLBaseElement.idl:
1060         * html/HTMLBaseFontElement.cpp:
1061         * html/HTMLBaseFontElement.h:
1062         * html/HTMLBaseFontElement.idl:
1063         * html/HTMLBlockquoteElement.cpp:
1064         * html/HTMLBlockquoteElement.h:
1065         * html/HTMLBlockquoteElement.idl:
1066         * html/HTMLBodyElement.cpp:
1067         * html/HTMLBodyElement.h:
1068         * html/HTMLBodyElement.idl:
1069         * html/HTMLButtonElement.cpp:
1070         * html/HTMLButtonElement.h:
1071         * html/HTMLButtonElement.idl:
1072         * html/HTMLCollection.cpp:
1073         * html/HTMLCollection.h:
1074         * html/HTMLCollection.idl:
1075         * html/HTMLDListElement.cpp:
1076         * html/HTMLDListElement.h:
1077         * html/HTMLDListElement.idl:
1078         * html/HTMLDirectoryElement.cpp:
1079         * html/HTMLDirectoryElement.h:
1080         * html/HTMLDirectoryElement.idl:
1081         * html/HTMLDivElement.cpp:
1082         * html/HTMLDivElement.h:
1083         * html/HTMLDivElement.idl:
1084         * html/HTMLDocument.cpp:
1085         * html/HTMLDocument.h:
1086         * html/HTMLDocument.idl:
1087         * html/HTMLElement.cpp:
1088         * html/HTMLElement.h:
1089         * html/HTMLElement.idl:
1090         * html/HTMLElementFactory.cpp:
1091         * html/HTMLElementFactory.h:
1092         * html/HTMLEmbedElement.cpp:
1093         * html/HTMLEmbedElement.h:
1094         * html/HTMLEmbedElement.idl:
1095         * html/HTMLEntityNames.gperf:
1096         * html/HTMLFieldSetElement.cpp:
1097         * html/HTMLFieldSetElement.h:
1098         * html/HTMLFieldSetElement.idl:
1099         * html/HTMLFontElement.cpp:
1100         * html/HTMLFontElement.h:
1101         * html/HTMLFontElement.idl:
1102         * html/HTMLFormCollection.cpp:
1103         * html/HTMLFormCollection.h:
1104         * html/HTMLFormElement.cpp:
1105         * html/HTMLFormElement.h:
1106         * html/HTMLFormElement.idl:
1107         * html/HTMLFrameElement.cpp:
1108         * html/HTMLFrameElement.h:
1109         * html/HTMLFrameElement.idl:
1110         * html/HTMLFrameElementBase.cpp:
1111         * html/HTMLFrameElementBase.h:
1112         * html/HTMLFrameOwnerElement.cpp:
1113         * html/HTMLFrameOwnerElement.h:
1114         * html/HTMLFrameSetElement.cpp:
1115         * html/HTMLFrameSetElement.h:
1116         * html/HTMLFrameSetElement.idl:
1117         * html/HTMLGenericFormElement.cpp:
1118         * html/HTMLGenericFormElement.h:
1119         * html/HTMLHRElement.cpp:
1120         * html/HTMLHRElement.h:
1121         * html/HTMLHRElement.idl:
1122         * html/HTMLHeadElement.cpp:
1123         * html/HTMLHeadElement.h:
1124         * html/HTMLHeadElement.idl:
1125         * html/HTMLHeadingElement.cpp:
1126         * html/HTMLHeadingElement.h:
1127         * html/HTMLHeadingElement.idl:
1128         * html/HTMLHtmlElement.cpp:
1129         * html/HTMLHtmlElement.h:
1130         * html/HTMLHtmlElement.idl:
1131         * html/HTMLIFrameElement.cpp:
1132         * html/HTMLIFrameElement.h:
1133         * html/HTMLIFrameElement.idl:
1134         * html/HTMLImageElement.cpp:
1135         * html/HTMLImageElement.h:
1136         * html/HTMLImageElement.idl:
1137         * html/HTMLImageLoader.cpp:
1138         * html/HTMLImageLoader.h:
1139         * html/HTMLInputElement.cpp:
1140         * html/HTMLInputElement.h:
1141         * html/HTMLInputElement.idl:
1142         * html/HTMLIsIndexElement.cpp:
1143         * html/HTMLIsIndexElement.h:
1144         * html/HTMLIsIndexElement.idl:
1145         * html/HTMLKeygenElement.cpp:
1146         * html/HTMLKeygenElement.h:
1147         * html/HTMLLIElement.cpp:
1148         * html/HTMLLIElement.h:
1149         * html/HTMLLIElement.idl:
1150         * html/HTMLLabelElement.cpp:
1151         * html/HTMLLabelElement.h:
1152         * html/HTMLLabelElement.idl:
1153         * html/HTMLLegendElement.cpp:
1154         * html/HTMLLegendElement.h:
1155         * html/HTMLLegendElement.idl:
1156         * html/HTMLLinkElement.cpp:
1157         * html/HTMLLinkElement.h:
1158         * html/HTMLLinkElement.idl:
1159         * html/HTMLMapElement.cpp:
1160         * html/HTMLMapElement.h:
1161         * html/HTMLMapElement.idl:
1162         * html/HTMLMarqueeElement.cpp:
1163         * html/HTMLMarqueeElement.h:
1164         * html/HTMLMarqueeElement.idl:
1165         * html/HTMLMenuElement.cpp:
1166         * html/HTMLMenuElement.h:
1167         * html/HTMLMenuElement.idl:
1168         * html/HTMLMetaElement.cpp:
1169         * html/HTMLMetaElement.h:
1170         * html/HTMLMetaElement.idl:
1171         * html/HTMLModElement.cpp:
1172         * html/HTMLModElement.h:
1173         * html/HTMLModElement.idl:
1174         * html/HTMLNameCollection.cpp:
1175         * html/HTMLNameCollection.h:
1176         * html/HTMLOListElement.cpp:
1177         * html/HTMLOListElement.h:
1178         * html/HTMLOListElement.idl:
1179         * html/HTMLObjectElement.cpp:
1180         * html/HTMLObjectElement.h:
1181         * html/HTMLObjectElement.idl:
1182         * html/HTMLOptGroupElement.cpp:
1183         * html/HTMLOptGroupElement.h:
1184         * html/HTMLOptGroupElement.idl:
1185         * html/HTMLOptionElement.cpp:
1186         * html/HTMLOptionElement.h:
1187         * html/HTMLOptionElement.idl:
1188         * html/HTMLOptionsCollection.cpp:
1189         * html/HTMLOptionsCollection.h:
1190         * html/HTMLOptionsCollection.idl:
1191         * html/HTMLParagraphElement.cpp:
1192         * html/HTMLParagraphElement.h:
1193         * html/HTMLParagraphElement.idl:
1194         * html/HTMLParamElement.cpp:
1195         * html/HTMLParamElement.h:
1196         * html/HTMLParamElement.idl:
1197         * html/HTMLParser.cpp:
1198         * html/HTMLParser.h:
1199         * html/HTMLPlugInElement.cpp:
1200         * html/HTMLPlugInElement.h:
1201         * html/HTMLPreElement.cpp:
1202         * html/HTMLPreElement.h:
1203         * html/HTMLPreElement.idl:
1204         * html/HTMLQuoteElement.cpp:
1205         * html/HTMLQuoteElement.h:
1206         * html/HTMLQuoteElement.idl:
1207         * html/HTMLScriptElement.cpp:
1208         * html/HTMLScriptElement.h:
1209         * html/HTMLScriptElement.idl:
1210         * html/HTMLSelectElement.cpp:
1211         * html/HTMLSelectElement.h:
1212         * html/HTMLSelectElement.idl:
1213         * html/HTMLStyleElement.cpp:
1214         * html/HTMLStyleElement.h:
1215         * html/HTMLStyleElement.idl:
1216         * html/HTMLTableCaptionElement.cpp:
1217         * html/HTMLTableCaptionElement.h:
1218         * html/HTMLTableCaptionElement.idl:
1219         * html/HTMLTableCellElement.cpp:
1220         * html/HTMLTableCellElement.h:
1221         * html/HTMLTableCellElement.idl:
1222         * html/HTMLTableColElement.cpp:
1223         * html/HTMLTableColElement.h:
1224         * html/HTMLTableColElement.idl:
1225         * html/HTMLTableElement.cpp:
1226         * html/HTMLTableElement.h:
1227         * html/HTMLTableElement.idl:
1228         * html/HTMLTablePartElement.cpp:
1229         * html/HTMLTablePartElement.h:
1230         * html/HTMLTableRowElement.cpp:
1231         * html/HTMLTableRowElement.h:
1232         * html/HTMLTableRowElement.idl:
1233         * html/HTMLTableSectionElement.cpp:
1234         * html/HTMLTableSectionElement.h:
1235         * html/HTMLTableSectionElement.idl:
1236         * html/HTMLTextAreaElement.cpp:
1237         * html/HTMLTextAreaElement.h:
1238         * html/HTMLTextAreaElement.idl:
1239         * html/HTMLTitleElement.cpp:
1240         * html/HTMLTitleElement.h:
1241         * html/HTMLTitleElement.idl:
1242         * html/HTMLTokenizer.cpp:
1243         * html/HTMLTokenizer.h:
1244         * html/HTMLUListElement.cpp:
1245         * html/HTMLUListElement.h:
1246         * html/HTMLUListElement.idl:
1247         * ksvg2/css/SVGCSSParser.cpp:
1248         * ksvg2/css/SVGCSSStyleSelector.cpp:
1249         * ksvg2/css/SVGRenderStyle.cpp:
1250         * ksvg2/css/SVGRenderStyle.h:
1251         * ksvg2/css/SVGRenderStyleDefs.cpp:
1252         * ksvg2/css/SVGRenderStyleDefs.h:
1253         * ksvg2/events/JSSVGLazyEventListener.cpp:
1254         * ksvg2/events/JSSVGLazyEventListener.h:
1255         * ksvg2/events/SVGZoomEvent.cpp:
1256         * ksvg2/events/SVGZoomEvent.h:
1257         * ksvg2/misc/KCanvasRenderingStyle.cpp:
1258         * ksvg2/misc/KCanvasRenderingStyle.h:
1259         * ksvg2/misc/PointerEventsHitRules.cpp:
1260         * ksvg2/misc/PointerEventsHitRules.h:
1261         * ksvg2/misc/SVGDocumentExtensions.cpp:
1262         * ksvg2/misc/SVGDocumentExtensions.h:
1263         * ksvg2/misc/SVGImageLoader.cpp:
1264         * ksvg2/misc/SVGImageLoader.h:
1265         * ksvg2/misc/SVGTimer.cpp:
1266         * ksvg2/misc/SVGTimer.h:
1267         * ksvg2/misc/TimeScheduler.cpp:
1268         * ksvg2/misc/TimeScheduler.h:
1269         * ksvg2/scripts/cssmakeprops:
1270         * ksvg2/scripts/cssmakevalues:
1271         * ksvg2/svg/ColorDistance.cpp:
1272         * ksvg2/svg/ColorDistance.h:
1273         * ksvg2/svg/GradientAttributes.h:
1274         * ksvg2/svg/LinearGradientAttributes.h:
1275         * ksvg2/svg/PatternAttributes.h:
1276         * ksvg2/svg/RadialGradientAttributes.h:
1277         * ksvg2/svg/SVGAElement.cpp:
1278         * ksvg2/svg/SVGAElement.h:
1279         * ksvg2/svg/SVGAngle.cpp:
1280         * ksvg2/svg/SVGAngle.h:
1281         * ksvg2/svg/SVGAngle.idl:
1282         * ksvg2/svg/SVGAnimateColorElement.cpp:
1283         * ksvg2/svg/SVGAnimateColorElement.h:
1284         * ksvg2/svg/SVGAnimateElement.cpp:
1285         * ksvg2/svg/SVGAnimateElement.h:
1286         * ksvg2/svg/SVGAnimateMotionElement.cpp:
1287         * ksvg2/svg/SVGAnimateMotionElement.h:
1288         * ksvg2/svg/SVGAnimateTransformElement.cpp:
1289         * ksvg2/svg/SVGAnimateTransformElement.h:
1290         * ksvg2/svg/SVGAnimatedPathData.cpp:
1291         * ksvg2/svg/SVGAnimatedPathData.h:
1292         * ksvg2/svg/SVGAnimatedPoints.cpp:
1293         * ksvg2/svg/SVGAnimatedPoints.h:
1294         * ksvg2/svg/SVGAnimatedTemplate.h:
1295         * ksvg2/svg/SVGAnimationElement.cpp:
1296         * ksvg2/svg/SVGAnimationElement.h:
1297         * ksvg2/svg/SVGCircleElement.cpp:
1298         * ksvg2/svg/SVGCircleElement.h:
1299         * ksvg2/svg/SVGClipPathElement.cpp:
1300         * ksvg2/svg/SVGClipPathElement.h:
1301         * ksvg2/svg/SVGColor.cpp:
1302         * ksvg2/svg/SVGColor.h:
1303         * ksvg2/svg/SVGColor.idl:
1304         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
1305         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
1306         * ksvg2/svg/SVGCursorElement.cpp:
1307         * ksvg2/svg/SVGCursorElement.h:
1308         * ksvg2/svg/SVGDefsElement.cpp:
1309         * ksvg2/svg/SVGDefsElement.h:
1310         * ksvg2/svg/SVGDescElement.cpp:
1311         * ksvg2/svg/SVGDescElement.h:
1312         * ksvg2/svg/SVGDocument.cpp:
1313         * ksvg2/svg/SVGDocument.h:
1314         * ksvg2/svg/SVGDocument.idl:
1315         * ksvg2/svg/SVGElement.cpp:
1316         * ksvg2/svg/SVGElement.h:
1317         * ksvg2/svg/SVGElement.idl:
1318         * ksvg2/svg/SVGElementInstance.cpp:
1319         * ksvg2/svg/SVGElementInstance.h:
1320         * ksvg2/svg/SVGElementInstanceList.cpp:
1321         * ksvg2/svg/SVGElementInstanceList.h:
1322         * ksvg2/svg/SVGEllipseElement.cpp:
1323         * ksvg2/svg/SVGEllipseElement.h:
1324         * ksvg2/svg/SVGException.h:
1325         * ksvg2/svg/SVGExternalResourcesRequired.cpp:
1326         * ksvg2/svg/SVGExternalResourcesRequired.h:
1327         * ksvg2/svg/SVGFEBlendElement.cpp:
1328         * ksvg2/svg/SVGFEBlendElement.h:
1329         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
1330         * ksvg2/svg/SVGFEColorMatrixElement.h:
1331         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
1332         * ksvg2/svg/SVGFEComponentTransferElement.h:
1333         * ksvg2/svg/SVGFECompositeElement.cpp:
1334         * ksvg2/svg/SVGFECompositeElement.h:
1335         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
1336         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
1337         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
1338         * ksvg2/svg/SVGFEDisplacementMapElement.h:
1339         * ksvg2/svg/SVGFEDistantLightElement.cpp:
1340         * ksvg2/svg/SVGFEDistantLightElement.h:
1341         * ksvg2/svg/SVGFEFloodElement.cpp:
1342         * ksvg2/svg/SVGFEFloodElement.h:
1343         * ksvg2/svg/SVGFEFuncAElement.cpp:
1344         * ksvg2/svg/SVGFEFuncAElement.h:
1345         * ksvg2/svg/SVGFEFuncBElement.cpp:
1346         * ksvg2/svg/SVGFEFuncBElement.h:
1347         * ksvg2/svg/SVGFEFuncGElement.cpp:
1348         * ksvg2/svg/SVGFEFuncGElement.h:
1349         * ksvg2/svg/SVGFEFuncRElement.cpp:
1350         * ksvg2/svg/SVGFEFuncRElement.h:
1351         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
1352         * ksvg2/svg/SVGFEGaussianBlurElement.h:
1353         * ksvg2/svg/SVGFEImageElement.cpp:
1354         * ksvg2/svg/SVGFEImageElement.h:
1355         * ksvg2/svg/SVGFELightElement.cpp:
1356         * ksvg2/svg/SVGFELightElement.h:
1357         * ksvg2/svg/SVGFEMergeElement.cpp:
1358         * ksvg2/svg/SVGFEMergeElement.h:
1359         * ksvg2/svg/SVGFEMergeNodeElement.cpp:
1360         * ksvg2/svg/SVGFEMergeNodeElement.h:
1361         * ksvg2/svg/SVGFEOffsetElement.cpp:
1362         * ksvg2/svg/SVGFEOffsetElement.h:
1363         * ksvg2/svg/SVGFEPointLightElement.cpp:
1364         * ksvg2/svg/SVGFEPointLightElement.h:
1365         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
1366         * ksvg2/svg/SVGFESpecularLightingElement.h:
1367         * ksvg2/svg/SVGFESpotLightElement.cpp:
1368         * ksvg2/svg/SVGFESpotLightElement.h:
1369         * ksvg2/svg/SVGFETileElement.cpp:
1370         * ksvg2/svg/SVGFETileElement.h:
1371         * ksvg2/svg/SVGFETurbulenceElement.cpp:
1372         * ksvg2/svg/SVGFETurbulenceElement.h:
1373         * ksvg2/svg/SVGFilterElement.cpp:
1374         * ksvg2/svg/SVGFilterElement.h:
1375         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
1376         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
1377         * ksvg2/svg/SVGFitToViewBox.cpp:
1378         * ksvg2/svg/SVGFitToViewBox.h:
1379         * ksvg2/svg/SVGForeignObjectElement.cpp:
1380         * ksvg2/svg/SVGForeignObjectElement.h:
1381         * ksvg2/svg/SVGGElement.cpp:
1382         * ksvg2/svg/SVGGElement.h:
1383         * ksvg2/svg/SVGGradientElement.cpp:
1384         * ksvg2/svg/SVGGradientElement.h:
1385         * ksvg2/svg/SVGImageElement.cpp:
1386         * ksvg2/svg/SVGImageElement.h:
1387         * ksvg2/svg/SVGLangSpace.cpp:
1388         * ksvg2/svg/SVGLangSpace.h:
1389         * ksvg2/svg/SVGLength.cpp:
1390         * ksvg2/svg/SVGLength.h:
1391         * ksvg2/svg/SVGLength.idl:
1392         * ksvg2/svg/SVGLengthList.cpp:
1393         * ksvg2/svg/SVGLengthList.h:
1394         * ksvg2/svg/SVGLineElement.cpp:
1395         * ksvg2/svg/SVGLineElement.h:
1396         * ksvg2/svg/SVGLinearGradientElement.cpp:
1397         * ksvg2/svg/SVGLinearGradientElement.h:
1398         * ksvg2/svg/SVGList.h:
1399         * ksvg2/svg/SVGListTraits.h:
1400         * ksvg2/svg/SVGLocatable.cpp:
1401         * ksvg2/svg/SVGLocatable.h:
1402         * ksvg2/svg/SVGMPathElement.cpp:
1403         * ksvg2/svg/SVGMPathElement.h:
1404         * ksvg2/svg/SVGMarkerElement.cpp:
1405         * ksvg2/svg/SVGMarkerElement.h:
1406         * ksvg2/svg/SVGMaskElement.cpp:
1407         * ksvg2/svg/SVGMaskElement.h:
1408         * ksvg2/svg/SVGMatrix.idl:
1409         * ksvg2/svg/SVGMetadataElement.cpp:
1410         * ksvg2/svg/SVGMetadataElement.h:
1411         * ksvg2/svg/SVGMetadataElement.idl:
1412         * ksvg2/svg/SVGNumber.idl:
1413         * ksvg2/svg/SVGNumberList.cpp:
1414         * ksvg2/svg/SVGNumberList.h:
1415         * ksvg2/svg/SVGPaint.cpp:
1416         * ksvg2/svg/SVGPaint.h:
1417         * ksvg2/svg/SVGParserUtilities.cpp:
1418         * ksvg2/svg/SVGParserUtilities.h:
1419         * ksvg2/svg/SVGPathElement.cpp:
1420         * ksvg2/svg/SVGPathElement.h:
1421         * ksvg2/svg/SVGPathSeg.h:
1422         * ksvg2/svg/SVGPathSegArc.cpp:
1423         * ksvg2/svg/SVGPathSegArc.h:
1424         * ksvg2/svg/SVGPathSegClosePath.cpp:
1425         * ksvg2/svg/SVGPathSegClosePath.h:
1426         * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
1427         * ksvg2/svg/SVGPathSegCurvetoCubic.h:
1428         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
1429         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
1430         * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
1431         * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
1432         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
1433         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
1434         * ksvg2/svg/SVGPathSegLineto.cpp:
1435         * ksvg2/svg/SVGPathSegLineto.h:
1436         * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
1437         * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
1438         * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
1439         * ksvg2/svg/SVGPathSegLinetoVertical.h:
1440         * ksvg2/svg/SVGPathSegList.cpp:
1441         * ksvg2/svg/SVGPathSegList.h:
1442         * ksvg2/svg/SVGPathSegMoveto.cpp:
1443         * ksvg2/svg/SVGPathSegMoveto.h:
1444         * ksvg2/svg/SVGPatternElement.cpp:
1445         * ksvg2/svg/SVGPatternElement.h:
1446         * ksvg2/svg/SVGPoint.idl:
1447         * ksvg2/svg/SVGPointList.cpp:
1448         * ksvg2/svg/SVGPointList.h:
1449         * ksvg2/svg/SVGPolyElement.cpp:
1450         * ksvg2/svg/SVGPolyElement.h:
1451         * ksvg2/svg/SVGPolygonElement.cpp:
1452         * ksvg2/svg/SVGPolygonElement.h:
1453         * ksvg2/svg/SVGPolylineElement.cpp:
1454         * ksvg2/svg/SVGPolylineElement.h:
1455         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
1456         * ksvg2/svg/SVGPreserveAspectRatio.h:
1457         * ksvg2/svg/SVGRadialGradientElement.cpp:
1458         * ksvg2/svg/SVGRadialGradientElement.h:
1459         * ksvg2/svg/SVGRect.idl:
1460         * ksvg2/svg/SVGRectElement.cpp:
1461         * ksvg2/svg/SVGRectElement.h:
1462         * ksvg2/svg/SVGRenderingIntent.h:
1463         * ksvg2/svg/SVGSVGElement.cpp:
1464         * ksvg2/svg/SVGSVGElement.h:
1465         * ksvg2/svg/SVGSVGElement.idl:
1466         * ksvg2/svg/SVGScriptElement.cpp:
1467         * ksvg2/svg/SVGScriptElement.h:
1468         * ksvg2/svg/SVGSetElement.cpp:
1469         * ksvg2/svg/SVGSetElement.h:
1470         * ksvg2/svg/SVGStopElement.cpp:
1471         * ksvg2/svg/SVGStopElement.h:
1472         * ksvg2/svg/SVGStringList.cpp:
1473         * ksvg2/svg/SVGStringList.h:
1474         * ksvg2/svg/SVGStylable.cpp:
1475         * ksvg2/svg/SVGStylable.h:
1476         * ksvg2/svg/SVGStyleElement.cpp:
1477         * ksvg2/svg/SVGStyleElement.h:
1478         * ksvg2/svg/SVGStyledElement.cpp:
1479         * ksvg2/svg/SVGStyledElement.h:
1480         * ksvg2/svg/SVGStyledLocatableElement.cpp:
1481         * ksvg2/svg/SVGStyledLocatableElement.h:
1482         * ksvg2/svg/SVGStyledTransformableElement.cpp:
1483         * ksvg2/svg/SVGStyledTransformableElement.h:
1484         * ksvg2/svg/SVGSwitchElement.cpp:
1485         * ksvg2/svg/SVGSwitchElement.h:
1486         * ksvg2/svg/SVGSymbolElement.cpp:
1487         * ksvg2/svg/SVGSymbolElement.h:
1488         * ksvg2/svg/SVGTRefElement.cpp:
1489         * ksvg2/svg/SVGTRefElement.h:
1490         * ksvg2/svg/SVGTSpanElement.cpp:
1491         * ksvg2/svg/SVGTSpanElement.h:
1492         * ksvg2/svg/SVGTests.cpp:
1493         * ksvg2/svg/SVGTests.h:
1494         * ksvg2/svg/SVGTextContentElement.cpp:
1495         * ksvg2/svg/SVGTextContentElement.h:
1496         * ksvg2/svg/SVGTextElement.cpp:
1497         * ksvg2/svg/SVGTextElement.h:
1498         * ksvg2/svg/SVGTextPositioningElement.cpp:
1499         * ksvg2/svg/SVGTextPositioningElement.h:
1500         * ksvg2/svg/SVGTitleElement.cpp:
1501         * ksvg2/svg/SVGTitleElement.h:
1502         * ksvg2/svg/SVGTransform.cpp:
1503         * ksvg2/svg/SVGTransform.h:
1504         * ksvg2/svg/SVGTransform.idl:
1505         * ksvg2/svg/SVGTransformDistance.cpp:
1506         * ksvg2/svg/SVGTransformDistance.h:
1507         * ksvg2/svg/SVGTransformList.cpp:
1508         * ksvg2/svg/SVGTransformList.h:
1509         * ksvg2/svg/SVGTransformable.cpp:
1510         * ksvg2/svg/SVGTransformable.h:
1511         * ksvg2/svg/SVGURIReference.cpp:
1512         * ksvg2/svg/SVGURIReference.h:
1513         * ksvg2/svg/SVGUnitTypes.h:
1514         * ksvg2/svg/SVGUseElement.cpp:
1515         * ksvg2/svg/SVGUseElement.h:
1516         * ksvg2/svg/SVGViewElement.cpp:
1517         * ksvg2/svg/SVGViewElement.h:
1518         * ksvg2/svg/SVGZoomAndPan.cpp:
1519         * ksvg2/svg/SVGZoomAndPan.h:
1520         * loader/Cache.cpp:
1521         * loader/Cache.h:
1522         * loader/CachedCSSStyleSheet.cpp:
1523         * loader/CachedCSSStyleSheet.h:
1524         * loader/CachedImage.cpp:
1525         * loader/CachedImage.h:
1526         * loader/CachedResource.cpp:
1527         * loader/CachedResource.h:
1528         * loader/CachedResourceClient.h:
1529         * loader/CachedResourceClientWalker.cpp:
1530         * loader/CachedResourceClientWalker.h:
1531         * loader/CachedScript.cpp:
1532         * loader/CachedScript.h:
1533         * loader/CachedXBLDocument.cpp:
1534         * loader/CachedXBLDocument.h:
1535         * loader/CachedXSLStyleSheet.cpp:
1536         * loader/CachedXSLStyleSheet.h:
1537         * loader/DocLoader.cpp:
1538         * loader/DocLoader.h:
1539         * loader/FTPDirectoryParser.cpp:
1540         * loader/FTPDirectoryParser.h:
1541         * loader/Request.cpp:
1542         * loader/Request.h:
1543         * loader/TextResourceDecoder.cpp:
1544         * loader/TextResourceDecoder.h:
1545         * loader/loader.cpp:
1546         * loader/loader.h:
1547         * page/Chrome.cpp:
1548         * page/Chrome.h:
1549         * page/ChromeClient.h:
1550         * page/Frame.cpp:
1551         * page/Frame.h:
1552         * page/FramePrivate.h:
1553         * page/FrameTree.cpp:
1554         * page/FrameTree.h:
1555         * page/FrameView.cpp:
1556         * page/FrameView.h:
1557         * page/MouseEventWithHitTestResults.cpp:
1558         * page/MouseEventWithHitTestResults.h:
1559         * page/Page.cpp:
1560         * page/Page.h:
1561         * page/Plugin.h:
1562         * page/mac/ChromeMac.mm:
1563         * platform/Arena.cpp:
1564         * platform/Arena.h:
1565         * platform/AtomicString.cpp:
1566         * platform/AtomicString.h:
1567         * platform/AtomicStringImpl.h:
1568         * platform/BidiContext.cpp:
1569         * platform/BidiContext.h:
1570         * platform/BidiResolver.h:
1571         * platform/Font.cpp:
1572         * platform/Font.h:
1573         * platform/FontData.h:
1574         * platform/FontDescription.h:
1575         * platform/FontFallbackList.h:
1576         * platform/PlatformString.h:
1577         * platform/PopupMenu.h:
1578         * platform/PopupMenuClient.h:
1579         * platform/SearchPopupMenu.h:
1580         * platform/SegmentedString.cpp:
1581         * platform/SegmentedString.h:
1582         * platform/Shared.h:
1583         * platform/StaticConstructors.h:
1584         * platform/String.cpp:
1585         * platform/StringHash.h:
1586         * platform/StringImpl.cpp:
1587         * platform/StringImpl.h:
1588         * platform/TextBreakIterator.h:
1589         * platform/TextBreakIteratorICU.cpp:
1590         * platform/TextBreakIteratorInternalICU.h:
1591         * platform/TextStyle.h:
1592         * platform/UnicodeRange.cpp:
1593         * platform/UnicodeRange.h:
1594         * platform/cf/StringCF.cpp:
1595         * platform/cf/StringImplCF.cpp:
1596         * platform/graphics/FloatPoint3D.cpp:
1597         * platform/graphics/FloatPoint3D.h:
1598         * platform/graphics/Icon.h:
1599         * platform/graphics/IntSizeHash.h:
1600         * platform/graphics/PathTraversalState.cpp:
1601         * platform/graphics/cairo/CairoPath.h:
1602         * platform/graphics/cairo/PathCairo.cpp:
1603         * platform/graphics/mac/IconMac.mm:
1604         * platform/graphics/qt/IconQt.cpp:
1605         * platform/graphics/svg/SVGResourceFilter.cpp:
1606         * platform/graphics/svg/SVGResourceFilter.h:
1607         * platform/graphics/svg/cg/SVGPaintServerCg.cpp:
1608         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
1609         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
1610         * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
1611         * platform/graphics/svg/filters/SVGDistantLightSource.h:
1612         * platform/graphics/svg/filters/SVGFEBlend.cpp:
1613         * platform/graphics/svg/filters/SVGFEBlend.h:
1614         * platform/graphics/svg/filters/SVGFEColorMatrix.cpp:
1615         * platform/graphics/svg/filters/SVGFEColorMatrix.h:
1616         * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp:
1617         * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
1618         * platform/graphics/svg/filters/SVGFEComposite.cpp:
1619         * platform/graphics/svg/filters/SVGFEComposite.h:
1620         * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp:
1621         * platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
1622         * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp:
1623         * platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
1624         * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp:
1625         * platform/graphics/svg/filters/SVGFEDisplacementMap.h:
1626         * platform/graphics/svg/filters/SVGFEFlood.cpp:
1627         * platform/graphics/svg/filters/SVGFEFlood.h:
1628         * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp:
1629         * platform/graphics/svg/filters/SVGFEGaussianBlur.h:
1630         * platform/graphics/svg/filters/SVGFEImage.cpp:
1631         * platform/graphics/svg/filters/SVGFEImage.h:
1632         * platform/graphics/svg/filters/SVGFEMerge.cpp:
1633         * platform/graphics/svg/filters/SVGFEMerge.h:
1634         * platform/graphics/svg/filters/SVGFEMorphology.cpp:
1635         * platform/graphics/svg/filters/SVGFEMorphology.h:
1636         * platform/graphics/svg/filters/SVGFEOffset.cpp:
1637         * platform/graphics/svg/filters/SVGFEOffset.h:
1638         * platform/graphics/svg/filters/SVGFESpecularLighting.cpp:
1639         * platform/graphics/svg/filters/SVGFESpecularLighting.h:
1640         * platform/graphics/svg/filters/SVGFETile.h:
1641         * platform/graphics/svg/filters/SVGFETurbulence.cpp:
1642         * platform/graphics/svg/filters/SVGFETurbulence.h:
1643         * platform/graphics/svg/filters/SVGFilterEffect.cpp:
1644         * platform/graphics/svg/filters/SVGFilterEffect.h:
1645         * platform/graphics/svg/filters/SVGLightSource.cpp:
1646         * platform/graphics/svg/filters/SVGLightSource.h:
1647         * platform/graphics/svg/filters/SVGPointLightSource.h:
1648         * platform/graphics/svg/filters/SVGSpotLightSource.h:
1649         * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm:
1650         * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm:
1651         * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm:
1652         * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm:
1653         * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm:
1654         * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm:
1655         * platform/graphics/svg/filters/cg/SVGFEFloodCg.mm:
1656         * platform/graphics/svg/filters/cg/SVGFEGaussianBlurCg.mm:
1657         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
1658         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm:
1659         * platform/graphics/svg/filters/cg/SVGFEImageCg.mm:
1660         * platform/graphics/svg/filters/cg/SVGFEMergeCg.mm:
1661         * platform/graphics/svg/filters/cg/SVGFEOffsetCg.mm:
1662         * platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm:
1663         * platform/graphics/svg/filters/cg/SVGFETileCg.mm:
1664         * platform/graphics/svg/filters/cg/SVGFilterEffectCg.mm:
1665         * platform/graphics/svg/qt/RenderPathQt.cpp:
1666         * platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp:
1667         * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
1668         * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp:
1669         * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
1670         * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
1671         * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp:
1672         * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
1673         * platform/graphics/svg/qt/SVGResourceFilterQt.cpp:
1674         * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
1675         * platform/graphics/win/IconWin.cpp:
1676         * platform/gtk/FontPlatformData.h:
1677         * platform/gtk/FontPlatformDataGtk.cpp:
1678         * platform/gtk/PopupMenuGtk.cpp:
1679         * platform/gtk/RenderThemeGtk.cpp:
1680         * platform/gtk/RenderThemeGtk.h:
1681         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1682         * platform/image-decoders/png/PNGImageDecoder.cpp:
1683         * platform/mac/FontMac.mm:
1684         * platform/mac/FontPlatformData.h:
1685         * platform/mac/LocalCurrentGraphicsContext.h:
1686         * platform/mac/LocalCurrentGraphicsContext.mm:
1687         * platform/mac/PopupMenuMac.mm:
1688         * platform/mac/SearchPopupMenuMac.mm:
1689         * platform/mac/StringImplMac.mm:
1690         * platform/mac/StringMac.mm:
1691         * platform/mac/TextBreakIteratorInternalICUMac.mm:
1692         * platform/network/FormData.cpp:
1693         * platform/network/FormData.h:
1694         * platform/qt/FileChooserQt.cpp:
1695         * platform/qt/FontQt.cpp:
1696         * platform/qt/MenuEventProxy.h:
1697         * platform/qt/PlugInInfoStoreQt.cpp:
1698         * platform/qt/PopupMenuQt.cpp:
1699         * platform/qt/QWebPopup.cpp:
1700         * platform/qt/QWebPopup.h:
1701         * platform/qt/RenderThemeQt.cpp:
1702         * platform/qt/RenderThemeQt.h:
1703         * platform/qt/SearchPopupMenuQt.cpp:
1704         * platform/qt/TextBreakIteratorQt.cpp:
1705         * platform/qt/WheelEventQt.cpp:
1706         * platform/win/FontPlatformData.h:
1707         * platform/win/FontPlatformDataWin.cpp:
1708         * platform/win/PopupMenuWin.cpp:
1709         * platform/win/SearchPopupMenuWin.cpp:
1710         * platform/win/TextBreakIteratorInternalICUWin.cpp:
1711         * rendering/AutoTableLayout.cpp:
1712         * rendering/AutoTableLayout.h:
1713         * rendering/CounterNode.cpp:
1714         * rendering/CounterNode.h:
1715         * rendering/DataRef.h:
1716         * rendering/EllipsisBox.cpp:
1717         * rendering/EllipsisBox.h:
1718         * rendering/FixedTableLayout.cpp:
1719         * rendering/FixedTableLayout.h:
1720         * rendering/GapRects.h:
1721         * rendering/HitTestRequest.h:
1722         * rendering/HitTestResult.cpp:
1723         * rendering/HitTestResult.h:
1724         * rendering/InlineBox.cpp:
1725         * rendering/InlineBox.h:
1726         * rendering/InlineFlowBox.cpp:
1727         * rendering/InlineFlowBox.h:
1728         * rendering/InlineRunBox.h:
1729         * rendering/InlineTextBox.cpp:
1730         * rendering/InlineTextBox.h:
1731         * rendering/Length.h:
1732         * rendering/ListMarkerBox.cpp:
1733         * rendering/ListMarkerBox.h:
1734         * rendering/RenderApplet.cpp:
1735         * rendering/RenderApplet.h:
1736         * rendering/RenderArena.cpp:
1737         * rendering/RenderArena.h:
1738         * rendering/RenderBR.cpp:
1739         * rendering/RenderBR.h:
1740         * rendering/RenderBlock.cpp:
1741         * rendering/RenderBlock.h:
1742         * rendering/RenderBox.cpp:
1743         * rendering/RenderBox.h:
1744         * rendering/RenderButton.cpp:
1745         * rendering/RenderButton.h:
1746         * rendering/RenderContainer.cpp:
1747         * rendering/RenderContainer.h:
1748         * rendering/RenderCounter.cpp:
1749         * rendering/RenderCounter.h:
1750         * rendering/RenderFieldset.cpp:
1751         * rendering/RenderFieldset.h:
1752         * rendering/RenderFileUploadControl.cpp:
1753         * rendering/RenderFileUploadControl.h:
1754         * rendering/RenderFlexibleBox.cpp:
1755         * rendering/RenderFlexibleBox.h:
1756         * rendering/RenderFlow.cpp:
1757         * rendering/RenderFlow.h:
1758         * rendering/RenderForeignObject.cpp:
1759         * rendering/RenderForeignObject.h:
1760         * rendering/RenderFrame.cpp:
1761         * rendering/RenderFrame.h:
1762         * rendering/RenderFrameSet.cpp:
1763         * rendering/RenderFrameSet.h:
1764         * rendering/RenderImage.cpp:
1765         * rendering/RenderImage.h:
1766         * rendering/RenderInline.cpp:
1767         * rendering/RenderInline.h:
1768         * rendering/RenderLayer.cpp:
1769         * rendering/RenderLayer.h:
1770         * rendering/RenderLegend.cpp:
1771         * rendering/RenderLegend.h:
1772         * rendering/RenderListItem.cpp:
1773         * rendering/RenderListItem.h:
1774         * rendering/RenderListMarker.cpp:
1775         * rendering/RenderListMarker.h:
1776         * rendering/RenderMenuList.cpp:
1777         * rendering/RenderMenuList.h:
1778         * rendering/RenderObject.cpp:
1779         * rendering/RenderObject.h:
1780         * rendering/RenderPart.cpp:
1781         * rendering/RenderPart.h:
1782         * rendering/RenderPartObject.cpp:
1783         * rendering/RenderPartObject.h:
1784         * rendering/RenderPath.cpp:
1785         * rendering/RenderPath.h:
1786         * rendering/RenderReplaced.cpp:
1787         * rendering/RenderReplaced.h:
1788         * rendering/RenderSVGBlock.cpp:
1789         * rendering/RenderSVGBlock.h:
1790         * rendering/RenderSVGContainer.cpp:
1791         * rendering/RenderSVGContainer.h:
1792         * rendering/RenderSVGGradientStop.cpp:
1793         * rendering/RenderSVGGradientStop.h:
1794         * rendering/RenderSVGHiddenContainer.cpp:
1795         * rendering/RenderSVGHiddenContainer.h:
1796         * rendering/RenderSVGImage.cpp:
1797         * rendering/RenderSVGImage.h:
1798         * rendering/RenderSVGInline.cpp:
1799         * rendering/RenderSVGInline.h:
1800         * rendering/RenderSVGInlineText.cpp:
1801         * rendering/RenderSVGInlineText.h:
1802         * rendering/RenderSVGTSpan.cpp:
1803         * rendering/RenderSVGTSpan.h:
1804         * rendering/RenderSVGText.cpp:
1805         * rendering/RenderSVGText.h:
1806         * rendering/RenderSlider.cpp:
1807         * rendering/RenderSlider.h:
1808         * rendering/RenderStyle.cpp:
1809         * rendering/RenderStyle.h:
1810         * rendering/RenderTable.cpp:
1811         * rendering/RenderTable.h:
1812         * rendering/RenderTableCell.cpp:
1813         * rendering/RenderTableCell.h:
1814         * rendering/RenderTableCol.cpp:
1815         * rendering/RenderTableCol.h:
1816         * rendering/RenderTableRow.cpp:
1817         * rendering/RenderTableRow.h:
1818         * rendering/RenderTableSection.cpp:
1819         * rendering/RenderTableSection.h:
1820         * rendering/RenderText.cpp:
1821         * rendering/RenderText.h:
1822         * rendering/RenderTextControl.cpp:
1823         * rendering/RenderTextControl.h:
1824         * rendering/RenderTextFragment.cpp:
1825         * rendering/RenderTextFragment.h:
1826         * rendering/RenderTheme.cpp:
1827         * rendering/RenderTheme.h:
1828         * rendering/RenderThemeMac.h:
1829         * rendering/RenderThemeMac.mm:
1830         * rendering/RenderThemeSafari.cpp:
1831         * rendering/RenderThemeSafari.h:
1832         * rendering/RenderThemeWin.cpp:
1833         * rendering/RenderThemeWin.h:
1834         * rendering/RenderView.cpp:
1835         * rendering/RenderView.h:
1836         * rendering/RenderWidget.cpp:
1837         * rendering/RenderWidget.h:
1838         * rendering/RootInlineBox.cpp:
1839         * rendering/RootInlineBox.h:
1840         * rendering/SVGInlineFlowBox.cpp:
1841         * rendering/SVGInlineFlowBox.h:
1842         * rendering/SVGInlineTextBox.cpp:
1843         * rendering/SVGInlineTextBox.h:
1844         * rendering/SVGRootInlineBox.cpp:
1845         * rendering/SVGRootInlineBox.h:
1846         * rendering/TableLayout.h:
1847         * rendering/bidi.cpp:
1848         * rendering/bidi.h:
1849         * rendering/break_lines.cpp:
1850         * rendering/break_lines.h:
1851         * xml/DOMParser.cpp:
1852         * xml/DOMParser.h:
1853         * xml/DOMParser.idl:
1854         * xml/XMLHttpRequest.cpp:
1855         * xml/XMLHttpRequest.h:
1856         * xml/XMLSerializer.cpp:
1857         * xml/XMLSerializer.h:
1858         * xml/XMLSerializer.idl:
1859         * xml/XPathEvaluator.idl:
1860         * xml/XPathExpression.idl:
1861         * xml/XPathNSResolver.idl:
1862         * xml/XPathResult.idl:
1863         * xml/XSLImportRule.cpp:
1864         * xml/XSLImportRule.h:
1865         * xml/XSLStyleSheet.cpp:
1866         * xml/XSLStyleSheet.h:
1867         * xml/XSLTProcessor.cpp:
1868         * xml/XSLTProcessor.h:
1869
1870 2007-09-25  Darin Adler  <darin@apple.com>
1871
1872         Reviewed by Harrison.
1873
1874         - fix <rdar://problem/5503225> CrashTracer: [USER] 2 crashes in Dashcode
1875           at com.apple.WebCore: WebCore::Frame::document const + 0
1876
1877         * page/FrameView.cpp: (WebCore::FrameView::updateControlTints):
1878         Added null check.
1879
1880 2007-09-25  Beth Dakin  <bdakin@apple.com>
1881
1882         Reviewed by Darin.
1883
1884         Fixes http://bugs.webkit.org/show_bug.cgi?id=15282 r25726 caused 
1885         plugins/mouse-events.html to fail
1886
1887         * page/FrameView.cpp:
1888         (WebCore::FrameView::layout): We need to call 
1889         updateWidgetPosition() after updating each widget.
1890
1891 2007-09-25  Anders Carlsson  <andersca@apple.com>
1892
1893         Build fix.
1894         
1895         * page/Chrome.cpp:
1896         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
1897
1898 2007-09-25  Anders Carlsson  <andersca@apple.com>
1899
1900         Reviewed by Geoff.
1901
1902         <rdar://problem/5283916>
1903         JavaScript timers may be firing while JavaScript alerts are displayed.
1904         
1905         Pause JavaScript timeouts while calling UI delegate methods that might show dialogs.
1906         
1907         * page/Chrome.cpp:
1908         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
1909         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
1910
1911 2007-09-26  Holger Hans Peter Freyther  <zecke@selfish.org>
1912
1913         Reviewed by Anders.
1914
1915         Implement PopupMenu using GtkMenu.
1916
1917         * platform/PopupMenu.h:
1918         * platform/gtk/PopupMenuGtk.cpp:
1919         (WebCore::PopupMenu::PopupMenu):
1920         (WebCore::PopupMenu::~PopupMenu):
1921         (WebCore::PopupMenu::show):
1922         (WebCore::PopupMenu::hide):
1923         (WebCore::PopupMenu::updateFromElement):
1924         (WebCore::PopupMenu::itemWritingDirectionIsNatural):
1925         (WebCore::PopupMenu::menuItemActivated):
1926         (WebCore::PopupMenu::menuUnmapped):
1927         (WebCore::PopupMenu::menuPositionFunction):
1928         (WebCore::PopupMenu::menuRemoveItem):
1929
1930 2007-09-23  Holger Hans Peter Freyther  <zecke@selfish.org>
1931
1932         Rubber stamped by Mark.
1933
1934         Obey the Coding-Style and move the asterisk to the
1935         left to be part of the type.
1936
1937         * platform/gtk/RenderThemeGtk.h:
1938
1939 2007-09-25  Beth Dakin  <bdakin@apple.com>
1940
1941         Reviewed by Darin.
1942
1943         Fix for <rdar://problem/5466459> CrashTracer: [USER] 1 crash in 
1944         NetNewsWire at com.apple.WebCore: WebCore::bidiNext + 485 (15241)
1945
1946         Mitz discovered that this crash appeared because r25128 made it 
1947         possible for RenderPartObject::updateWidget() to be called during 
1948         layout. updateWidget() can, through a series of calls, cause an 
1949         attach/detach to happen, which is very bad in the middle of a 
1950         layout and is what led to this crash. This patch fixes that by 
1951         having the FrameView keep track of a queue of RenderPartObjects 
1952         that need to call updateWidget(), and it goes through the queue 
1953         calling updateWidget() as soon as layout is done.
1954
1955         * page/FrameView.cpp: We only want to call updateWidget() if we are 
1956         not in a nested layout. Unfortunately, the existing variables on 
1957         FrameViewPrivate do not have exactly the information that we need, 
1958         so I added nestedLayoutCount.
1959         (WebCore::FrameViewPrivate::reset): Reset nestedLayoutCount.
1960         (WebCore::FrameView::layout): Increment nestedLayoutCount once we 
1961         have gotten through all of the early returns. Call updateWidget() 
1962         after layout is nestedLayoutCount is 1 and there are widgets to 
1963         update. Decrement nestedLayoutCount at the end.
1964         (WebCore::FrameView::addWidgetToUpdate):
1965         (WebCore::FrameView::removeWidgetToUpdate):
1966         * page/FrameView.h:
1967         * rendering/RenderPartObject.cpp:
1968         (WebCore::RenderPartObject::~RenderPartObject): Remove this from 
1969         the FrameView's update set.
1970         (WebCore::RenderPartObject::layout): Instead of calling 
1971         updateWidget() immediately, add this to the update widget set on 
1972         FrameView.
1973         * rendering/RenderPartObject.h:
1974
1975 2007-09-25  David Kilzer  <ddkilzer@webkit.org>
1976
1977         Reviewed by Mark Rowe.
1978
1979         - fix http://bugs.webkit.org/show_bug.cgi?id=15275
1980           SVG dependency on WebCore/dom/XMLTokenizer.cpp
1981
1982         * dom/XMLTokenizer.cpp: Moved #include "SVGStyleElement.h" into #if ENABLE(SVG).
1983
1984 2007-09-25  Justin Garcia  <justin.garcia@apple.com>
1985
1986         Reviewed by Darin.
1987
1988         <rdar://problem/5483567> 
1989         REGRESSION (Tiger only, workaround in AppKit on Leopard): Pasting words copied from TextEdit in Mail adds extra newline
1990         
1991         * editing/ReplaceSelectionCommand.cpp:
1992         (WebCore::ReplaceSelectionCommand::removeUnrenderedNodes): Added.
1993         (WebCore::ReplaceSelectionCommand::doApply): Call removeUnrenderedNodes
1994         to prevent unrendered spaces from interfering with paragraph merging.
1995         * editing/ReplaceSelectionCommand.h:
1996
1997 2007-09-24  Steve Falkenburg  <sfalken@apple.com>
1998
1999         Reviewed by Darin.
2000
2001         - fix <rdar://problem/5502513>
2002
2003         * platform/win/FontCacheWin.cpp:
2004         (WebCore::FontCache::getFontLinkInterface):
2005         Roll back this file; the old code leaked a global COM object, but that's
2006         no big deal and the new code caused a crash on quit.
2007
2008 2007-09-24  Anders Carlsson  <andersca@apple.com>
2009
2010         Reviewed by Adam.
2011
2012         <rdar://problem/5494608>
2013         Seed: Safari will follow links in Flash movies without clicking.
2014
2015         Make sure to handle mouseover and mouseout so the plug-in can track when the mouse is over it.
2016                 
2017         * plugins/win/PluginViewWin.cpp:
2018         (WebCore::PluginViewWin::handleMouseEvent):
2019
2020 2007-09-24  Mike Fenton  <mike@staikos.net>
2021
2022         Reviewed by George Staikos.
2023
2024         Switch to using a QImage instead of a QPixmap to make transparency work.
2025
2026         * html/CanvasRenderingContext2D.cpp:
2027         (WebCore::CanvasRenderingContext2D::drawImage):
2028         * html/HTMLCanvasElement.cpp:
2029         (WebCore::HTMLCanvasElement::paint):
2030         (WebCore::HTMLCanvasElement::createDrawingContext):
2031         (WebCore::HTMLCanvasElement::createPlatformImage):
2032         * html/HTMLCanvasElement.h:
2033
2034 2007-09-21  Kevin McCullough  <kmccullough@apple.com>
2035
2036         Reviewed by Sam.
2037
2038         - Updated project files to not use Edit and Continue for Debug Information since it doesn't work and breaks some functionality.
2039
2040         * WebCore.vcproj/WebCore.vcproj:
2041
2042 2007-09-24  Brady Eidson  <beidson@apple.com>
2043
2044         Reviewed by John Sullivan
2045
2046         * loader/icon/IconDatabase.cpp:
2047         (WebCore::IconDatabase::iconForPageURL): Assert the page url is non-null
2048
2049 2007-09-20  Holger Hans Peter Freyther  <zecke@selfish.org>
2050
2051         Rubber stamped by Adam.
2052
2053         Renamed files from *Gdk to *Gtk (see #14732) using the
2054         work of Juan A. Suarez Romero as a base.
2055
2056         GDK -> GTK
2057
2058         * Projects/gdk/webcore-gdk.bkl:
2059         * WebCore.pro:
2060         * WebCoreSources.bkl:
2061         * loader/gdk: Removed.
2062         * loader/gdk/DocumentLoaderGdk.cpp: Removed.
2063         * loader/gtk: Added.
2064         * loader/gtk/DocumentLoaderGdk.cpp: Removed.
2065         * loader/gtk/DocumentLoaderGtk.cpp: Added.
2066         * page/FrameView.cpp:
2067         * page/FrameView.h:
2068         * page/gdk: Removed.
2069         * page/gdk/DragControllerGdk.cpp: Removed.
2070         * page/gdk/EventHandlerGdk.cpp: Removed.
2071         * page/gdk/FrameGdk.cpp: Removed.
2072         * page/gtk: Added.
2073         * page/gtk/DragControllerGdk.cpp: Removed.
2074         * page/gtk/DragControllerGtk.cpp: Added.
2075         * page/gtk/EventHandlerGdk.cpp: Removed.
2076         * page/gtk/EventHandlerGtk.cpp: Added.
2077         (WebCore::EventHandler::createDraggingClipboard):
2078         * page/gtk/FrameGdk.cpp: Removed.
2079         * page/gtk/FrameGtk.cpp: Added.
2080         * platform/ContextMenuItem.h:
2081         * platform/Cursor.h:
2082         * platform/DragData.h:
2083         * platform/DragImage.h:
2084         * platform/FontData.h:
2085         * platform/NotImplemented.h:
2086         * platform/PlatformKeyboardEvent.h:
2087         * platform/PlatformMenuDescription.h:
2088         * platform/PlatformMouseEvent.h:
2089         * platform/PlatformWheelEvent.h:
2090         * platform/ScrollView.h:
2091         * platform/Widget.h:
2092         * platform/gdk: Removed.
2093         * platform/gdk/ClipboardGdk.cpp: Removed.
2094         * platform/gdk/ClipboardGdk.h: Removed.
2095         * platform/gdk/ContextMenuGdk.cpp: Removed.
2096         * platform/gdk/ContextMenuItemGdk.cpp: Removed.
2097         * platform/gdk/CookieJarGdk.cpp: Removed.
2098         * platform/gdk/CursorGdk.cpp: Removed.
2099         * platform/gdk/DragDataGdk.cpp: Removed.
2100         * platform/gdk/DragImageGdk.cpp: Removed.
2101         * platform/gdk/FileChooserGdk.cpp: Removed.
2102         * platform/gdk/FileSystemGdk.cpp: Removed.
2103         * platform/gdk/FontCacheGdk.cpp: Removed.
2104         * platform/gdk/FontDataGdk.cpp: Removed.
2105         * platform/gdk/FontGdk.cpp: Removed.
2106         * platform/gdk/FontPlatformData.h: Removed.
2107         * platform/gdk/FontPlatformDataGdk.cpp: Removed.
2108         * platform/gdk/GlyphPageTreeNodeGdk.cpp: Removed.
2109         * platform/gdk/KeyEventGdk.cpp: Removed.
2110         * platform/gdk/KeyboardCodes.h: Removed.
2111         * platform/gdk/LocalizedStringsGdk.cpp: Removed.
2112         * platform/gdk/LoggingGdk.cpp: Removed.
2113         * platform/gdk/MIMETypeRegistryGdk.cpp: Removed.
2114         * platform/gdk/MouseEventGdk.cpp: Removed.
2115         * platform/gdk/PasteboardGdk.cpp: Removed.
2116         * platform/gdk/PlatformScreenGdk.cpp: Removed.
2117         * platform/gdk/PlatformScrollBar.h: Removed.
2118         * platform/gdk/PlatformScrollBarGdk.cpp: Removed.
2119         * platform/gdk/PopupMenuGdk.cpp: Removed.
2120         * platform/gdk/RenderThemeGdk.cpp: Removed.
2121         * platform/gdk/RenderThemeGdk.h: Removed.
2122         * platform/gdk/ScrollViewGdk.cpp: Removed.
2123         * platform/gdk/SearchPopupMenuGdk.cpp: Removed.
2124         * platform/gdk/SharedTimerLinux.cpp: Removed.
2125         * platform/gdk/SoundGdk.cpp: Removed.
2126         * platform/gdk/SystemTimeLinux.cpp: Removed.
2127         * platform/gdk/TemporaryLinkStubs.cpp: Removed.
2128         * platform/gdk/WheelEventGdk.cpp: Removed.
2129         * platform/gdk/WidgetGdk.cpp: Removed.
2130         * platform/graphics/GraphicsContext.h:
2131         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2132         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
2133         (WebCore::GraphicsContext::setPlatformFont):
2134         * platform/graphics/gdk: Removed.
2135         * platform/graphics/gdk/IconGdk.cpp: Removed.
2136         * platform/graphics/gdk/ImageGdk.cpp: Removed.
2137         * platform/graphics/gtk: Added.
2138         * platform/graphics/gtk/IconGdk.cpp: Removed.
2139         * platform/graphics/gtk/IconGtk.cpp: Added.
2140         * platform/graphics/gtk/ImageGdk.cpp: Removed.
2141         * platform/graphics/gtk/ImageGtk.cpp: Added.
2142         * platform/gtk: Added.
2143         * platform/gtk/ClipboardGdk.cpp: Removed.
2144         * platform/gtk/ClipboardGdk.h: Removed.
2145         * platform/gtk/ClipboardGtk.cpp: Added.
2146         (WebCore::ClipboardGtk::ClipboardGtk):
2147         (WebCore::ClipboardGtk::~ClipboardGtk):
2148         (WebCore::ClipboardGtk::clearData):
2149         (WebCore::ClipboardGtk::clearAllData):
2150         (WebCore::ClipboardGtk::getData):
2151         (WebCore::ClipboardGtk::setData):
2152         (WebCore::ClipboardGtk::types):
2153         (WebCore::ClipboardGtk::dragLocation):
2154         (WebCore::ClipboardGtk::dragImage):
2155         (WebCore::ClipboardGtk::setDragImage):
2156         (WebCore::ClipboardGtk::dragImageElement):
2157         (WebCore::ClipboardGtk::setDragImageElement):
2158         (WebCore::ClipboardGtk::createDragImage):
2159         (WebCore::ClipboardGtk::declareAndWriteDragImage):
2160         (WebCore::ClipboardGtk::writeURL):
2161         (WebCore::ClipboardGtk::writeRange):
2162         (WebCore::ClipboardGtk::hasData):
2163         * platform/gtk/ClipboardGtk.h: Added.
2164         * platform/gtk/ContextMenuGdk.cpp: Removed.
2165         * platform/gtk/ContextMenuGtk.cpp: Added.
2166         * platform/gtk/ContextMenuItemGdk.cpp: Removed.
2167         * platform/gtk/ContextMenuItemGtk.cpp: Added.
2168         * platform/gtk/CookieJarGdk.cpp: Removed.
2169         * platform/gtk/CookieJarGtk.cpp: Added.
2170         * platform/gtk/CursorGdk.cpp: Removed.
2171         * platform/gtk/CursorGtk.cpp: Added.
2172         * platform/gtk/DragDataGdk.cpp: Removed.
2173         * platform/gtk/DragDataGtk.cpp: Added.
2174         * platform/gtk/DragImageGdk.cpp: Removed.
2175         * platform/gtk/DragImageGtk.cpp: Added.
2176         * platform/gtk/FileChooserGdk.cpp: Removed.
2177         * platform/gtk/FileChooserGtk.cpp: Added.
2178         * platform/gtk/FileSystemGdk.cpp: Removed.
2179         * platform/gtk/FileSystemGtk.cpp: Added.
2180         * platform/gtk/FontCacheGdk.cpp: Removed.
2181         * platform/gtk/FontCacheGtk.cpp: Added.
2182         * platform/gtk/FontDataGdk.cpp: Removed.
2183         * platform/gtk/FontDataGtk.cpp: Added.
2184         * platform/gtk/FontGdk.cpp: Removed.
2185         * platform/gtk/FontGtk.cpp: Added.
2186         * platform/gtk/FontPlatformDataGdk.cpp: Removed.
2187         * platform/gtk/FontPlatformDataGtk.cpp: Added.
2188         * platform/gtk/GlyphPageTreeNodeGdk.cpp: Removed.
2189         * platform/gtk/GlyphPageTreeNodeGtk.cpp: Added.
2190         * platform/gtk/KeyEventGdk.cpp: Removed.
2191         * platform/gtk/KeyEventGtk.cpp: Added.
2192         * platform/gtk/LocalizedStringsGdk.cpp: Removed.
2193         * platform/gtk/LocalizedStringsGtk.cpp: Added.
2194         * platform/gtk/LoggingGdk.cpp: Removed.
2195         * platform/gtk/LoggingGtk.cpp: Added.
2196         * platform/gtk/MIMETypeRegistryGdk.cpp: Removed.
2197         * platform/gtk/MIMETypeRegistryGtk.cpp: Added.
2198         * platform/gtk/MouseEventGdk.cpp: Removed.
2199         * platform/gtk/MouseEventGtk.cpp: Added.
2200         * platform/gtk/PasteboardGdk.cpp: Removed.
2201         * platform/gtk/PasteboardGtk.cpp: Added.
2202         * platform/gtk/PlatformScreenGdk.cpp: Removed.
2203         * platform/gtk/PlatformScreenGtk.cpp: Added.
2204         * platform/gtk/PlatformScrollBarGdk.cpp: Removed.
2205         * platform/gtk/PlatformScrollBarGtk.cpp: Added.
2206         * platform/gtk/PopupMenuGdk.cpp: Removed.
2207         * platform/gtk/PopupMenuGtk.cpp: Added.
2208         * platform/gtk/RenderThemeGdk.cpp: Removed.
2209         * platform/gtk/RenderThemeGdk.h: Removed.
2210         * platform/gtk/RenderThemeGtk.cpp: Added.
2211         (WebCore::theme):
2212         (WebCore::RenderThemeGtk::RenderThemeGtk):
2213         (WebCore::RenderThemeGtk::close):
2214         (WebCore::RenderThemeGtk::addIntrinsicMargins):
2215         (WebCore::RenderThemeGtk::supportsFocus):
2216         (WebCore::RenderThemeGtk::determineState):
2217         (WebCore::RenderThemeGtk::determineShadow):
2218         (WebCore::RenderThemeGtk::getThemeData):
2219         (WebCore::RenderThemeGtk::setCheckboxSize):
2220         (WebCore::RenderThemeGtk::paintCheckbox):
2221         (WebCore::RenderThemeGtk::setRadioSize):
2222         (WebCore::RenderThemeGtk::paintRadio):
2223         (WebCore::RenderThemeGtk::paintButton):
2224         (WebCore::RenderThemeGtk::adjustTextFieldStyle):
2225         (WebCore::RenderThemeGtk::paintTextField):
2226         (WebCore::RenderThemeGtk::paintTextArea):
2227         (WebCore::RenderThemeGtk::adjustButtonStyle):
2228         (WebCore::RenderThemeGtk::systemFont):
2229         (WebCore::RenderThemeGtk::gtkButton):
2230         (WebCore::RenderThemeGtk::gtkCheckbox):
2231         (WebCore::RenderThemeGtk::gtkRadioButton):
2232         (WebCore::RenderThemeGtk::gtkWindowContainer):
2233         * platform/gtk/RenderThemeGtk.h: Added.
2234         * platform/gtk/ScrollViewGdk.cpp: Removed.
2235         * platform/gtk/ScrollViewGtk.cpp: Added.
2236         * platform/gtk/SearchPopupMenuGdk.cpp: Removed.
2237         * platform/gtk/SearchPopupMenuGtk.cpp: Added.
2238         * platform/gtk/SoundGdk.cpp: Removed.
2239         * platform/gtk/SoundGtk.cpp: Added.
2240         * platform/gtk/WheelEventGdk.cpp: Removed.
2241         * platform/gtk/WheelEventGtk.cpp: Added.
2242         * platform/gtk/WidgetGdk.cpp: Removed.
2243         * platform/gtk/WidgetGtk.cpp: Added.
2244         * platform/network/ResourceHandle.h:
2245
2246 2007-09-23  Rob Buis  <buis@kde.org>
2247
2248         Reviewed by Hyatt.
2249
2250         http://bugs.webkit.org/show_bug.cgi?id=15025
2251         Background repeat css property is not inherited from parent if unspecified
2252
2253         Don't let invalid url specification in background shorthand make
2254         the entire shorthand invalid.
2255
2256         * css/CSSParser.cpp:
2257         (WebCore::CSSParser::parseBackgroundImage):
2258         (WebCore::CSSParser::parseBackgroundProperty):
2259         * css/CSSParser.h:
2260
2261 2007-09-22  Adam Roben  <aroben@apple.com>
2262
2263         Fix Bug 15251: REGRESSION: <input type=range> doesn't respond to form.reset() or setting input.value
2264
2265         http://bugs.webkit.org/show_bug.cgi?id=15251
2266         <rdar://5498169>
2267
2268         Reviewed by Maciej.
2269
2270         Test: fast/forms/range-reset.html
2271
2272         * html/HTMLInputElement.cpp:
2273         (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): <input
2274         type=range> should be storing its value separately from the value
2275         attribute, as do all of our variable-input input types.
2276
2277 2007-09-21  Mark Rowe  <mrowe@apple.com>
2278
2279         Build fix for non-Mac platforms after r25697.
2280         
2281         Rename Frame::cleanupPlatformScriptObjects to Frame::clearPlatformScriptObjects.
2282
2283         * bridge/win/FrameWin.cpp:
2284         * page/gdk/FrameGdk.cpp:
2285         * page/qt/FrameQt.cpp:
2286         * platform/wx/TemporaryLinkStubs.cpp:
2287
2288 2007-09-21  Adele Peterson  <adele@apple.com>
2289
2290         Reviewed by Sam.
2291
2292         Fix for <rdar://problem/5497357> REGRESSION: Safari doesn't show the month days on AirFrance reservation page
2293
2294         Test: fast/dom/HTMLSelectElement/options-collection-set-string-length.html
2295
2296         * bindings/js/JSHTMLOptionsCollectionCustom.cpp: (WebCore::JSHTMLOptionsCollection::setLength):
2297           Convert the value to a number.  We already have code here to check if the value is not a number.
2298           This matches other browsers, which allow a string value to be used to set the length.
2299
2300 2007-09-21  Timothy Hatcher  <timothy@apple.com>
2301
2302         Reviewed by Darin.
2303
2304         <rdar://problem/5491013> REGRESSION: -[WebView windowScriptObject] returns a dummy object or nil if a page hasn't loaded
2305
2306         Calling -[WebView windowScriptObject] before the page loads would give you nil. This behavior didn't match Tiger.
2307         The API behavior in Tiger let you get the window script object once and keep ahold of it as long as you needed it.
2308         The window object would remain valid even after page loads. This change restores the Tiger behavior.
2309
2310         <rdar://problem/5495790> NULL dereference crash beneath Bindings::RootObject::interpreter when saving Dashcode document
2311
2312         The changes to WebScriptObject's _isSafeScript call also fixed the crash in Dashcode.
2313
2314         * bindings/objc/WebScriptObject.mm:
2315         (-[WebScriptObject _setOriginRootObject:andRootObject:]): New method used to update the the root objects,
2316         so the WebScriptObject can still be used after a page load.
2317         (-[WebScriptObject _isSafeScript]): Call [self _rootObject] instead of accessing the data member directly.
2318         DOMNode has an override for the _rootObject method, and it can return 0 when _private->_rootObject
2319         is non-zero. We would return YES here when it wasn't safe and later crash with my modified layout tests.
2320         Checking _rootObject first prevents other calls sites from needing to check for a valid root object,
2321         this fixed the Dashcode crash.
2322         (-[WebScriptObject _imp]): Ditto.
2323
2324         * bindings/objc/WebScriptObjectPrivate.h: Add _setOriginRootObject:andRootObject:.
2325
2326         * loader/FrameLoader.cpp:
2327         (WebCore::FrameLoader::clear): Call the renamed clearScriptObjects function.
2328         (WebCore::FrameLoader::dispatchWindowObjectAvailable): Some gratuitous code cleanup.
2329
2330         * page/Frame.cpp:
2331         (WebCore::Frame::clearScriptObjects): Renamed cleanupScriptObject to clearScriptObjects.
2332         Call clearPlatformScriptObjects last so m_bindingRootObject is already NULL.
2333         (WebCore::Frame::windowScriptNPObject): Hold a JSLock before accessing the window. This
2334         change is unrelated to the bug, but should be fixed.
2335
2336         * page/mac/FrameMac.mm:
2337         (WebCore::Frame::windowScriptObject): Return a script object even if the interpreter is NULL.
2338         This resotres the Tiger behavior of always being able to access the window object.
2339         (WebCore::Frame::clearPlatformScriptObjects): Keep the window script object around, and update
2340         the root objects for the window script object.
2341
2342         * page/Frame.h: Rename cleanupScriptObject to clearScriptObjects.
2343         * page/FramePrivate.h: Use a RetainPtr for m_windowScriptObject.
2344
2345 2007-09-21  Mike Fenton  <mike@staikos.net>
2346
2347         Reviewed by George Staikos.
2348
2349         Fix styled pen support by not clobbering QPen properties.
2350
2351         * html/CanvasStyle.cpp:
2352         (WebCore::CanvasStyle::applyStrokeColor):
2353         (WebCore::CanvasStyle::applyFillColor):
2354
2355 2007-09-21  Oliver Hunt  <oliver@apple.com>
2356
2357         Reviewed by Tristan and Darin
2358
2359         http://bugs.webkit.org/show_bug.cgi?id=15239
2360         <rdar://problem/5491955> REGRESSION (r25547): With Hanin IME, one cannot input characters into forms (15239)
2361         
2362         This problem was caused by the setComposition method failing to clear
2363         the composition markers in the presence of an empty string.  This would 
2364         result in the caret being locked within the 0 length bounds of the "composition"
2365         and so preventing basic keyboard interaction.
2366
2367         * editing/Editor.cpp:
2368         (WebCore::Editor::setComposition):
2369
2370 2007-09-21  Adele Peterson  <adele@apple.com>
2371
2372         Reviewed by Tristan.
2373
2374         Fix for <rdar://problem/5497346> "Check spelling when I click Send" crashes on stationery messages every time
2375
2376         No test. I wasn't able to find a way to get this to occur with Safari or DumpRenderTree.
2377
2378         * editing/Editor.cpp: (WebCore::Editor::advanceToNextMisspelling): Updated comment.
2379         * editing/htmlediting.cpp:
2380         (WebCore::firstEditablePositionAfterPositionInRoot): Only return the root position if its editable.
2381         (WebCore::maxDeepOffset): Added nil check & assert.
2382
2383 2007-09-21  Anders Carlsson  <andersca@apple.com>
2384
2385         Reviewed by Steve.
2386
2387         <rdar://problem/5404339>
2388         Site redirects continuosly, starving UI thread, causing app to hang.
2389         
2390         Use GetQueueStatus to see if there are input messages in the queue that aren't being processed.
2391         If so, use a low-priority timer instead of PostMessage.
2392         
2393         * platform/win/SharedTimerWin.cpp:
2394         (WebCore::setSharedTimerFireTime):
2395
2396 2007-09-22  Darin Adler  <darin@apple.com>
2397
2398         Reviewed by Anders.
2399
2400         - add QueryInterface capabilities to COMPtr
2401
2402         * platform/win/COMPtr.h:
2403         (COMPtr::COMPtr): Added constructor that takes a Query tag and
2404         does an appropriate QueryInterface.
2405         (COMPtr::query): Added function to do a queryInterface.
2406         (COMPtr::copyQueryInterfaceRef): Added private helper used by
2407         both of the above. Note that when the query fails you get a 0,
2408         which is the same thing you get if a 0 pointer is passed in.
2409
2410         * platform/win/FontCacheWin.cpp:
2411         (WebCore::FontCache::getFontLinkInterface): Convert to using
2412         the new query as a test case. Also eliminate the unnecessary
2413         second global variable and use COMPtr objects rather than just
2414         leaking references.
2415
2416         * platform/win/WCDataObject.h: Removed unneeded include and
2417         using statements.
2418
2419 2007-09-21  Anders Carlsson  <andersca@apple.com>
2420
2421         Reviewed by Adam.
2422
2423         <rdar://problem/5494790>
2424         clicking any link in the Flash regions at bananarepublic.com results in bad page
2425
2426         Don't replace the frame contents, the Mac version doesn't do this.
2427         
2428         * plugins/win/PluginViewWin.cpp:
2429         (WebCore::PluginViewWin::performRequest):
2430
2431 2007-09-21  Anders Carlsson  <andersca@apple.com>
2432
2433         Reviewed by Darin.
2434
2435         <rdar://problem/5496700>
2436         Repro crash loading http://www.tivo.com/whatistivo/tivohd/index.html
2437
2438         Don't continue if the plug-in cancelled the stream.
2439                 
2440         * loader/win/NetscapePlugInStreamLoaderWin.cpp:
2441         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
2442
2443 2007-09-21  Kevin Decker  <kdecker@apple.com>
2444
2445         * platform/mac/SoftLinking.h: Build fix; added necessary #imports. 
2446
2447 2007-09-21  Kevin Decker  <kdecker@apple.com>
2448
2449         Reviewed by Darin Adler.
2450
2451         * WebCore.xcodeproj/project.pbxproj: Added SoftLinking.h to the project.
2452         * platform/mac/SoftLinking.h: Contains a new macro; useful in helping to lazily load frameworks.
2453
2454 2007-09-20  Ada Chan  <adachan@apple.com>
2455
2456         <rdar://problem/5477240> Regression: Footer is too high in print preview
2457         Make computePageRectsForFrame() return the height of the page adjusted for margins.
2458
2459         Reviewed by Steve.
2460
2461         * bridge/win/FrameWin.cpp:
2462         (WebCore::computePageRectsForFrame):
2463         * bridge/win/FrameWin.h:
2464
2465 2007-09-19  Kevin McCullough  <kmccullough@apple.com>
2466
2467         Reviewed by Hyatt.
2468
2469         - <rdar://problem/5101991> Avril Lavigne music player comes up in a window with scrollbars
2470         - Implementing missing scrollbar functionality to allow turning off scrollbars correctly.
2471
2472         * platform/ScrollView.h:
2473         * platform/win/ScrollViewWin.cpp:
2474         (WebCore::ScrollView::ScrollViewPrivate::setAllowsScrolling):
2475         (WebCore::ScrollView::ScrollViewPrivate::allowsScrolling):
2476         (WebCore::ScrollView::updateScrollbars):
2477         (WebCore::ScrollView::setAllowsScrolling):
2478         (WebCore::ScrollView::allowsScrolling):
2479
2480 2007-09-20  Brady Eidson  <beidson@apple.com>
2481
2482         Reviewed by Dave Hyatt
2483
2484         <rdar://problem/5245981> - No favicon shows up for cnet.com
2485         
2486         CNet's favicon has two images in it - a 32x32 white square, and a 16x16 image that is their actual icon
2487         Till now on Windows we've always gone straight for the first image in an icon for the favicon, now we
2488         actually do proper size matching
2489
2490         * platform/graphics/BitmapImage.h:
2491
2492         * platform/graphics/Image.h:
2493         (WebCore::Image::getHBITMAPOfSize): 
2494         (WebCore::Image::drawFrameMatchingSourceSize): Search through the frames of the image for the correct size
2495
2496         * platform/graphics/win/ImageWin.cpp:
2497         (WebCore::BitmapImage::getHBITMAP):
2498         (WebCore::BitmapImage::getHBITMAPOfSize):
2499         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
2500
2501 2007-09-20  Steve Falkenburg  <sfalken@apple.com>
2502
2503         Reviewed by Brady.
2504
2505         Call ascii() instead of utf8() from debug logging code to avoid threading
2506         issues associated w/ converting to UTF8.
2507
2508         * loader/icon/IconDatabase.cpp:
2509         (WebCore::makeAllDirectories):
2510         (WebCore::IconDatabase::retainIconForPageURL):
2511         (WebCore::IconDatabase::releaseIconForPageURL):
2512         (WebCore::IconDatabase::setIconDataForIconURL):
2513         (WebCore::IconDatabase::setIconURLForPageURL):
2514         (WebCore::IconDatabase::loadDecisionForIconURL):
2515         (WebCore::IconDatabase::getOrCreatePageURLRecord):
2516         (WebCore::IconDatabase::iconDatabaseSyncThread):
2517         (WebCore::IconDatabase::performOpenInitialization):
2518         (WebCore::IconDatabase::checkIntegrity):
2519         (WebCore::IconDatabase::performURLImport):
2520         (WebCore::IconDatabase::readFromDatabase):
2521         (WebCore::IconDatabase::writeToDatabase):
2522         (WebCore::readySQLStatement):
2523         (WebCore::IconDatabase::setIconURLForPageURLInSQLDatabase):
2524         (WebCore::IconDatabase::setIconIDForPageURLInSQLDatabase):
2525         (WebCore::IconDatabase::removePageURLFromSQLDatabase):
2526         (WebCore::IconDatabase::getIconIDForIconURLFromSQLDatabase):
2527         (WebCore::IconDatabase::addIconURLToSQLDatabase):
2528         (WebCore::IconDatabase::getImageDataForIconURLFromSQLDatabase):
2529         (WebCore::IconDatabase::removeIconFromSQLDatabase):
2530         (WebCore::IconDatabase::writeIconSnapshotToSQLDatabase):
2531
2532 2007-09-20  Mike Fenton  <mike@staikos.net>
2533
2534         Reviewed by George Staikos.
2535
2536         Implement gradients and more of canvas for Qt.  Style changes and some
2537         of the stroking fixes by George.
2538
2539         * html/CanvasGradient.cpp:
2540         (WebCore::CanvasGradient::CanvasGradient):
2541         (WebCore::CanvasGradient::~CanvasGradient):
2542         (WebCore::CanvasGradient::addColorStop):
2543         (WebCore::CanvasGradient::platformShading):
2544         * html/CanvasGradient.h:
2545         * html/CanvasRenderingContext2D.cpp:
2546         (WebCore::CanvasRenderingContext2D::fill):
2547         (WebCore::CanvasRenderingContext2D::stroke):
2548         (WebCore::CanvasRenderingContext2D::fillRect):
2549         (WebCore::CanvasRenderingContext2D::applyFillPattern):
2550
2551 2007-09-20  Rob Buis  <buis@kde.org>
2552
2553         Reviewed by Mitz.
2554
2555         http://bugs.webkit.org/show_bug.cgi?id=15235
2556         Options can not be removed from a Select element with OptGroup's using JavaScript
2557         <rdar://problem/5494123>
2558
2559         Remove HTMLOptionElement children against the proper parent node.
2560
2561         * html/HTMLSelectElement.cpp:
2562         (WebCore::HTMLSelectElement::remove):
2563
2564 2007-09-19  John Sullivan  <sullivan@apple.com>
2565
2566         Reviewed by Darin Adler.
2567         
2568         - WebCore part of speculative fix for <rdar://problem/5490627>, about crashes constructing a
2569           String using the values filled in by checkSpellingOfString()
2570
2571         * editing/Editor.cpp:
2572         (WebCore::findFirstMisspellingInRange):
2573         initialize out parameters the way we do elsewhere; add many assertions for improper results
2574         from checkSpellingOfString(); don't create a String at all until we've checked all the ways
2575         that checkSpellingOfString() results could indicate invalid string, even the unexpected ones;
2576         as an optimization, don't construct a String at all when looping through to mark all instances.
2577
2578 2007-09-18  Holger Hans Peter Freyther  <zecke@selfish.org>
2579
2580         Reviewed by Adam.
2581
2582         There is no need to have FTPDirectoryDocument stubs. We can
2583         compile FTPDirectoryDocument.cpp and FTPDirectoryTokenizer.cpp
2584         instead.
2585
2586         * WebCore.pro:
2587         * platform/gdk/TemporaryLinkStubs.cpp:
2588         * platform/qt/TemporaryLinkStubs.cpp:
2589
2590 2007-09-18  Holger Hans Peter Freyther  <zecke@selfish.org>
2591
2592         Reviewed by Adam.
2593
2594         Remove includes that are not needed.
2595
2596         * platform/gdk/TemporaryLinkStubs.cpp:
2597
2598 2007-09-18  Holger Hans Peter Freyther  <zecke@selfish.org>
2599
2600         Reviewed by Adam.
2601
2602         Move the Pasteboard stubs to PasteboardGdk.cpp.
2603
2604         * WebCore.pro:
2605         * platform/gdk/PasteboardGdk.cpp: Added.
2606         (WebCore::Pasteboard::generalPasteboard):
2607         (WebCore::Pasteboard::writeSelection):
2608         (WebCore::Pasteboard::writeURL):
2609         (WebCore::Pasteboard::writeImage):
2610         (WebCore::Pasteboard::clear):
2611         (WebCore::Pasteboard::canSmartReplace):
2612         (WebCore::Pasteboard::documentFragment):
2613         (WebCore::Pasteboard::plainText):
2614         (WebCore::Pasteboard::Pasteboard):
2615         * platform/gdk/TemporaryLinkStubs.cpp:
2616
2617 2007-09-18  Holger Hans Peter Freyther  <zecke@selfish.org>
2618
2619         Reviewed by Adam.
2620
2621         Move the Icon stubs to IconGdk.cpp
2622
2623         * WebCore.pro:
2624         * platform/gdk/TemporaryLinkStubs.cpp:
2625         * platform/graphics/gdk/IconGdk.cpp: Added.
2626         (WebCore::Icon::Icon):
2627         (WebCore::Icon::~Icon):
2628         (WebCore::Icon::newIconForFile):
2629
2630 2007-09-18  Holger Hans Peter Freyther  <zecke@selfish.org>
2631
2632         Reviewed by Adam.
2633
2634         Move the Font stubs to FontGdk.cpp
2635
2636         * platform/gdk/FontGdk.cpp:
2637         (WebCore::Font::drawComplexText):
2638         (WebCore::Font::floatWidthForComplexText):
2639         (WebCore::Font::offsetForPositionForComplexText):
2640         (WebCore::Font::selectionRectForComplexText):
2641         * platform/gdk/TemporaryLinkStubs.cpp:
2642
2643 2007-09-18  Holger Hans Peter Freyther  <zecke@selfish.org>
2644
2645         Reviewed by Adam.
2646
2647         Move the SearchPopupMenu stubs to SearchPopupMenuGdk.cpp
2648
2649         * WebCore.pro:
2650         * platform/gdk/SearchPopupMenuGdk.cpp: Added.
2651         (WebCore::SearchPopupMenu::SearchPopupMenu):
2652         (WebCore::SearchPopupMenu::saveRecentSearches):
2653         (WebCore::SearchPopupMenu::loadRecentSearches):
2654         (WebCore::SearchPopupMenu::enabled):
2655         * platform/gdk/TemporaryLinkStubs.cpp:
2656
2657 2007-09-18  Holger Hans Peter Freyther  <zecke@selfish.org>
2658
2659         Reviewed by Adam.
2660
2661         Move the ContextMenu and ContextMenuItem stubs to
2662         ContextMenuGdk.cpp and ContextMenuItemGdk.cpp.
2663
2664         * WebCore.pro:
2665         * platform/gdk/ContextMenuGdk.cpp: Added.
2666         (WebCore::ContextMenu::ContextMenu):
2667         (WebCore::ContextMenu::~ContextMenu):
2668         (WebCore::ContextMenu::appendItem):
2669         (WebCore::ContextMenu::setPlatformDescription):
2670         (WebCore::ContextMenu::platformDescription):
2671         (WebCore::ContextMenu::releasePlatformDescription):
2672         * platform/gdk/ContextMenuItemGdk.cpp: Added.
2673         (WebCore::ContextMenuItem::ContextMenuItem):
2674         (WebCore::ContextMenuItem::~ContextMenuItem):
2675         (WebCore::ContextMenuItem::releasePlatformDescription):
2676         (WebCore::ContextMenuItem::type):
2677         (WebCore::ContextMenuItem::setType):
2678         (WebCore::ContextMenuItem::action):
2679         (WebCore::ContextMenuItem::setAction):
2680         (WebCore::ContextMenuItem::title):
2681         (WebCore::ContextMenuItem::setTitle):
2682         (WebCore::ContextMenuItem::platformSubMenu):
2683         (WebCore::ContextMenuItem::setSubMenu):
2684         (WebCore::ContextMenuItem::setChecked):
2685         * platform/gdk/TemporaryLinkStubs.cpp:
2686
2687 2007-09-18  Holger Hans Peter Freyther  <zecke@selfish.org>
2688
2689         Reviewed by Adam.
2690
2691         Implement the WebCore::fileSize function using g_stat.
2692
2693         * platform/gdk/FileSystemGdk.cpp:
2694         (WebCore::fileSize):
2695         * platform/gdk/TemporaryLinkStubs.cpp:
2696
2697 2007-09-18  Holger Hans Peter Freyther  <zecke@selfish.org>
2698
2699         Reviewed by Adam.
2700
2701         Move the ResourceHandle stubs from TemporaryLinkStubs
2702         to the ResourceHandleCurl.cpp file. This affects the
2703         Gtk+ and wx port as they share the curl implementation.
2704
2705
2706         * platform/gdk/TemporaryLinkStubs.cpp:
2707         * platform/network/curl/ResourceHandleCurl.cpp:
2708         (WebCore::ResourceHandle::willLoadFromCache):
2709         (WebCore::ResourceHandle::loadsBlocked):
2710         * platform/wx/TemporaryLinkStubs.cpp:
2711
2712 2007-09-17  Holger Hans Peter Freyther  <zecke@selfish.org>
2713
2714         Reviewed by Mark.
2715
2716         Take http://bugs.webkit.org/show_bug.cgi?id=15221 into account
2717         and change the variable names from nameSystem to systemName and
2718         change the name of the function to stringByAdoptingFileSystemRepresentation.
2719
2720         * platform/gdk/FileChooserGdk.cpp:
2721         (WebCore::stringByAdoptingFileSystemRepresentation):
2722         (WebCore::FileChooser::basenameForWidth):
2723
2724 2007-09-19  Sam Weinig  <sam@webkit.org>
2725
2726         Reviewed by Geoff Garen.
2727
2728         Fix <rdar://problem/5492141> Assertion in isdigit() on windows Safari
2729
2730         Test: fast/css/hexColor-isDigit-assert.html
2731
2732         * platform/DeprecatedString.cpp:
2733         (WebCore::isCharacterAllowedInBase): Check that the character is ascii 
2734         to avoid an assertions on Windows.
2735
2736 2007-09-19  Anders Carlsson  <andersca@apple.com>
2737
2738         Reviewed by Geoff.
2739
2740         <rdar://problem/5489879>
2741         Combination of real player with high connection quality in selecting player makes Safari quit.
2742         
2743         Prevent the Real Player plug-in from calling the window proc recursively.
2744         
2745         * plugins/win/PluginViewWin.cpp:
2746         (WebCore::PluginViewWin::wndProc):
2747         (WebCore::PluginViewWin::setNPWindowRect):
2748         (WebCore::PluginViewWin::determineQuirks):
2749         (WebCore::PluginViewWin::PluginViewWin):
2750         * plugins/win/PluginViewWin.h:
2751         (WebCore::):
2752
2753 2007-09-18  Adele Peterson  <adele@apple.com>
2754
2755         Reviewed by Maciej.
2756
2757         Fix for <rdar://problem/5472062> -webkit-user-select: none makes selection difficult
2758         and for <rdar://problem/5472056> REGRESSION: Cannot type into edit fields on a form (sccsheriff.org)
2759
2760         Tests:
2761
2762         This fix has a few steps:
2763         1) Removes the ignore value for the -webkit-user-select property.  We now decide when to prevent selection from starting by calling canStartSelection on the node.
2764         2) Implements canStartSelection which returns false for all elements that used to have -webkit-user-select:ignore set, true for content editable nodes, 
2765            and walks up the tree to ask the parent before allowing selection to be started on any other nodes.
2766         3) We used to disallow selection from starting within -webkit-user-select:none blocks, but now we only use canStartSelection for that.  This will allow easy selections
2767            in cases like iChat where there's a mix of selectable and non-selectable content.
2768         4) Makes -webkit-user-select inherited.  After removing the "ignore" value, -webkit-user-select would behave like it was inherited anyways since we already allowed the text value to override the none value.
2769
2770
2771         * css/html4.css: Removed all usage of -webkit-user-select: ignore.  This is now handled internally with canStartSelection().
2772           Now -webkit-user-select won't be unintentionally overridden by nodes that don't want to allow selection to be started, but do want to honor the -webkit-user-select to
2773           determine whether or not selection is allowed at all.
2774
2775         * editing/SelectionController.cpp: (WebCore::SelectionController::selectAll):
2776           Don't try to determine whether selection is allowed inside the root node here.  VisiblePosition and Selection creation will keep Selection endpoints out of -webkit-user-select:none regions.
2777         
2778         * dom/Node.h:
2779         * dom/Node.cpp: (WebCore::Node::canStartSelection): Added. Always allows selection to be started in a content editable node.  If there's a parent, ask the parent if starting a selection is allowed.
2780           If there's no parent, default to allowing selection.
2781         * html/HTMLAnchorElement.h:
2782         * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::canStartSelection): Added. If its not a link, then calls the base class. Disallows selection for non-editable links.
2783           Allows selection for editable links.
2784           This logic used to be done in CSSStyleSelector by changing the user-select property.
2785         * html/HTMLButtonElement.h: (WebCore::HTMLButtonElement::canStartSelection): Added. Disallows selection from starting in buttons.
2786         * html/HTMLImageElement.h: (WebCore::HTMLImageElement::canStartSelection): Added. Disallows selection from starting in images.
2787         * html/HTMLInputElement.h:
2788         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::canStartSelection): Added. Disallows selection from anything that's not a text field.  Text fields call up to the base class.
2789           When they're editable, text controls will always be selectable because of the case for content editable content. Otherwise, they'll respect their parent element's decision about starting a selection. 
2790         * html/HTMLSelectElement.h: (WebCore::HTMLSelectElement::canStartSelection): Added. Disallows selection from starting in popup buttons.
2791
2792         * page/EventHandler.cpp:
2793         (WebCore::EventHandler::selectClosestWordFromMouseEvent): Use canMouseDownStartSelect instead of the ambiguously named shouldSelect().
2794         (WebCore::EventHandler::handleMousePressEventTripleClick): ditto.
2795         (WebCore::EventHandler::handleMousePressEventSingleClick): ditto.
2796         (WebCore::EventHandler::updateSelectionForMouseDrag): Use canMouseDragExtendSelect.
2797         (WebCore::EventHandler::selectCursor): Paint an ibeam in any region that allows you to click to create a selection.
2798         (WebCore::EventHandler::canMouseDownStartSelect): Now fires the selectStart event, and calls canStartSelection instead of checking the user-select property.
2799         (WebCore::EventHandler::canMouseDragExtendSelect): This is identical to canMouseDownStartSelect because of 12823, even though it seems strange that we would fire the selectStart event here.
2800         * page/EventHandler.h:
2801         * page/FocusController.cpp: (WebCore::clearSelectionIfNeeded): Calls canStartSelection instead of checking the user-select property to decide when to prevent selection creation. 
2802         * rendering/RenderObject.cpp: (WebCore::RenderObject::draggableNode): ditto.
2803         * rendering/RenderObject.h: Removed helper methods that are no longer needed.
2804
2805         * rendering/RenderStyle.h: Made userSelect inherited.  After removing the "ignore" value, -webkit-user-select would behave like it was inherited 
2806           anyways since we already allowed the text value to override the none value.
2807           Removed the SELECT_AUTO and SELECT_IGNORE values since they're no longer used.
2808         (WebCore::):
2809         (WebCore::RenderStyle::userSelect):
2810         (WebCore::RenderStyle::setUserSelect):
2811         (WebCore::RenderStyle::initialUserSelect):
2812         * rendering/RenderStyle.cpp:
2813         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2814         (WebCore::StyleRareNonInheritedData::operator==):
2815         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
2816         (WebCore::StyleRareInheritedData::operator==):
2817         (WebCore::RenderStyle::diff):
2818
2819         * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Remove case for SELECT_AUTO and SELECT_IGNORE
2820         * css/CSSStyleSelector.cpp:
2821         (WebCore::CSSStyleSelector::adjustRenderStyle):  Remove adjustment for links.  This is now handled in HTMLAnchorElement::canStartSelection.
2822         (WebCore::CSSStyleSelector::applyProperty): Map CSS_VAL_AUTO to SELECT_TEXT.  Remove CSS_VAL_IGNORE.
2823
2824 2007-09-18  Timothy Hatcher  <timothy@apple.com>
2825
2826         Reviewed by Darin.
2827
2828         <rdar://problem/5478250> REGRESSION: After pasting text copied from Mail subject and typing return, the cursor disappears because of negative left margin
2829
2830         When pasting text from the Mail subject line, the RTF pasteboard contains text that has a first line negative indent along with a
2831         paragraph indent that has a counteracting positive indent. This results in the first line being flush left justified, and the remaining
2832         wrapped lines being indented. When this is converted to a DOM fragment, AppKit makes a block element with a margin-left and a negative
2833         text-indent that matches the RTF. So far this is all correct behavior.
2834
2835         When this content is pasted on the line of an existing paragraph that has content, ReplaceSelectionCommand will decided to merge the paragraphs.
2836         This will convert the block element to a style span that has all inherited style properties. These inherited properties will still contain block
2837         properties that have no affect on inline elements. These block properties will hang around on the style span and will get cloned to new block
2838         elements if the user hit return on that line. The new block elements would then have the text-indent but not the margin-left, so the text would be
2839         hidden off the left edge of the page.
2840
2841         In the end, we should never hang on to block-only properties in our style spans. This cuts out meaningless properties and prevents properties
2842         from magically affecting blocks later if the style is cloned for a new block element during a future editing operation.
2843
2844         * editing/ReplaceSelectionCommand.cpp:
2845         (WebCore::ReplaceSelectionCommand::removeRedundantStyles): Remove any inherited block properties that are now in the span's style.
2846         * editing/markup.cpp:
2847         (WebCore::createMarkup): Ditto.
2848
2849 2007-09-18  Dave Hyatt  <hyatt@apple.com>
2850
2851         Land a UnicodeRange helper class (ported from Mozilla) that we are going to use to prepare for making
2852         language-sensitive fallback choices for fonts.
2853
2854         Reviewed by olliej
2855
2856         * WebCore.vcproj/WebCore.vcproj:
2857         * platform/UnicodeRange.cpp: Added.
2858         (WebCore::):
2859         (WebCore::findCharUnicodeRange):
2860         (WebCore::langGroupFromUnicodeRange):
2861         * platform/UnicodeRange.h: Added.
2862
2863 2007-09-18  Dave Hyatt  <hyatt@apple.com>
2864
2865         Fix a bug in my previous patch.  Make sure to select the old font back into the HDC and to also release the HDC.
2866        
2867         Reviewed by aroben
2868
2869         * platform/win/FontCacheWin.cpp:
2870         (WebCore::FontCache::getFontDataForCharacters):
2871
2872 2007-09-18  Sam Weinig  <sam@webkit.org>
2873
2874         Reviewed by Darin.
2875
2876         Patch for <rdar://problem/5488478> Safari crashes when passing null to Range.insertNode()
2877
2878         Test: fast/dom/Range-insertNode-crash.html
2879
2880         * dom/Range.cpp:
2881         (WebCore::Range::insertNode): Null check the passed in node to insert.
2882
2883 2007-09-18  Mike Fenton  <mike@staikos.net>
2884
2885         Reviewed by George Staikos.
2886
2887         Retain the pen properties when changing one aspect of the pen.
2888
2889         * html/CanvasStyle.cpp:
2890         (WebCore::CanvasStyle::applyStrokeColor):
2891
2892 2007-09-18  Mike Fenton  <mike@staikos.net>
2893
2894         Reviewed by George Staikos.
2895
2896         Make <canvas> work in more cases by restarting the painter after we
2897         finish painting, and restoring the pen and opacity.
2898
2899         * html/HTMLCanvasElement.cpp:
2900         (WebCore::HTMLCanvasElement::paint):
2901
2902 2007-09-18  Mitz Pettel  <mitz@webkit.org>
2903
2904         Reviewed by Darin.
2905
2906         - fix http://bugs.webkit.org/show_bug.cgi?id=15169
2907           Freeze on Google maps using the "Dig a hole" tool
2908           <rdar://problem/5477414>
2909
2910         Test: fast/dom/CSSStyleDeclaration-empty-string-property.html
2911
2912         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2913         (WebCore::cssPropertyName): Added an early return if the property name
2914         is the empty string, thus avoiding a loop that is not prepared for that
2915         case.
2916
2917 2007-09-19  Darin Adler <darin@apple.com>
2918
2919         Reviewed by Adam.
2920
2921         - fix <rdar://problem/5415734> <select> draws incorrectly if size of menu options
2922           is changed after it pops up once
2923
2924         * platform/win/PopupMenuWin.cpp:
2925         (WebCore::PopupMenu::PopupMenu): Removed unnecessary initialization of IntRect.
2926         (WebCore::PopupMenu::show): Check that the clientRect is empty instead of checking
2927         the entire windowRect -- this fixes a bug where we pop up a tiny 2-pixel high black
2928         box when you click on an empty menu.
2929         (WebCore::PopupMenu::visibleItems): Base the number of items on the client rect
2930         instead of the window rect. Rounding down means this would have worked anyway, but
2931         it's more correct to do it this way.
2932         (WebCore::PopupMenu::paint): Deallocate the bitmap so it gets reallocated if it
2933         has the wrong width or height (or if GetObject returns false, which should not
2934         happen in practice).
2935
2936 2007-09-18  David Harrison  <harrison@apple.com>
2937
2938         Reviewed by Darin.
2939
2940         <rdar://problem/5486974> REGRESSION(r25373): 1/4 second to doubleclick word in GMail when using Kotoeri IM, also slow in other IMs (15163)
2941
2942         Updated tests:
2943         * fast/dom/Window/window-xy-properties-expected.txt:
2944         * fast/dom/plugin-attributes-enumeration-expected.txt:
2945         * fast/events/onerror-bubbling-expected.txt:
2946         * fast/events/related-target-expected.txt:
2947         * fast/forms/select-namedItem-expected.txt:
2948         * fast/table/incomplete-table-in-fragment-2-expected.txt:
2949         * fast/table/incomplete-table-in-fragment-hang-expected.txt:
2950         * fast/table/large-rowspan-crash-expected.txt:
2951         * plugins/embed-attributes-setting-expected.txt:
2952
2953         * editing/TextIterator.cpp:
2954         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
2955         Avoid VisiblePosition check if the current node is a descendant
2956         of the start container and the start offset was 0. In that case
2957         we already had enough context to correctly decide whether to emit
2958         a newline after a preceding block. We chose not to emit
2959         (m_haveEmitted is false), so don't second guess that.
2960             
2961         (WebCore::TextIterator::exitNode):
2962         Changed some comments.
2963
2964 2007-09-17  Geoffrey Garen  <ggaren@apple.com>
2965
2966         Reviewed by Darin Adler.
2967
2968         Speculative fix for <rdar://problem/5479443> REGRESSION: Hang due to 
2969         infinite JS recursion on close @ engadget.com (onunload-based ad)
2970         
2971         If page is NULL, shouldInterruptScript now returns true, so you can't 
2972         get stuck in a state in which a script executes forever without putting 
2973         up a UI to ask if it should stop.
2974
2975         * bindings/js/kjs_binding.cpp:
2976         (KJS::ScriptInterpreter::shouldInterruptScript):
2977
2978 2007-09-17  Dave Hyatt  <hyatt@apple.com>
2979
2980         Fix for bug 14743, missing glyphs on many international sites because of MLang's tiny cache.
2981         
2982         Bypass Mlang's cache entirely.  Get the mapped font from MLang, obtain the font name, and then feed
2983         the name back into our own system so that it gets created and cached again without MLang being involved.
2984         Then free up the font obtained from MLang immediately so that its cache just remains empty.
2985            
2986         Reviewed by aroben
2987
2988         * platform/FontData.h:
2989         (WebCore::FontData::isSystemFont):
2990         * platform/win/FontCacheWin.cpp:
2991         (WebCore::FontCache::getFontDataForCharacters):
2992         * platform/win/FontDataWin.cpp:
2993         (WebCore::FontData::platformInit):
2994         (WebCore::FontData::platformDestroy):
2995         * platform/win/UniscribeController.cpp:
2996         (WebCore::UniscribeController::shapeAndPlaceItem):
2997         
2998 2007-09-17  Adam Roben  <aroben@apple.com>
2999
3000         Fix <rdar://5423441> Should get focus ring color from SafariTheme
3001
3002         Reviewed by Hyatt.
3003
3004         No regression test possible.
3005
3006         * WebCore.vcproj/WebCore.vcproj: Added ColorSafari.cpp.
3007         * platform/graphics/win/ColorSafari.cpp: Added.
3008         (WebCore::makeRGBAFromCGColor): Added.
3009         (WebCore::focusRingColor): Added. Gets the focus ring color from
3010         SafariTheme if SafariTheme has support for it.
3011         (WebCore::setFocusRingColorChangeFunction): Added.
3012         * platform/win/TemporaryLinkStubs.cpp: Removed focus ring color
3013         functions.
3014
3015 2007-09-17  Anders Carlsson  <andersca@apple.com>
3016
3017         Fix Windows build.
3018
3019         * WebCore.vcproj/WebCore.vcproj:
3020         * loader/NetscapePlugInStreamLoader.h:
3021
3022 2007-09-17  Anders Carlsson  <andersca@apple.com>
3023
3024         Fix Mac build.
3025         
3026         * loader/NetscapePlugInStreamLoader.cpp:
3027         * loader/NetscapePlugInStreamLoader.h:
3028         * loader/win/NetscapePlugInStreamLoaderWin.cpp: Copied from loader/NetscapePlugInStreamLoader.cpp.
3029
3030 2007-09-17  Anders Carlsson  <andersca@apple.com>
3031
3032         Reviewed by Adam.
3033
3034         <rdar://problem/5483346>
3035         crash at vw.com WebCore::PluginViewWin::disconnectStream.
3036         
3037         The following events would lead to this crash:
3038         
3039         1. a plug-in stream finishes loading and calls NPP_DestroyStream.
3040         2. the DestroyStream handler calls NPN_Evaluate, submitting a form through JavaScript.
3041         3. A new page is going to be loaded and DocumentLoader::stopLoading is called.
3042         4. DocumentLoader::stopLoading will stop all loader, including the one that is done loading!
3043         
3044         The fix is to port NetscapePluginStreamLoader over from the Mac code and use it instead. This fixes the crash
3045         because it disassociates the stream loader with the document loader _before_ calling NPP_DestroyStream, whereas
3046         SubresourceLoader does this _after_ calling NPP_DestroyStream. 
3047         
3048         * loader/NetscapePlugInStreamLoader.cpp:
3049         (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
3050         (WebCore::NetscapePlugInStreamLoader::~NetscapePlugInStreamLoader):
3051         (WebCore::NetscapePlugInStreamLoader::create):
3052         (WebCore::NetscapePlugInStreamLoader::isDone):
3053         (WebCore::NetscapePlugInStreamLoader::releaseResources):
3054         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
3055         (WebCore::NetscapePlugInStreamLoader::didReceiveData):
3056         (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
3057         (WebCore::NetscapePlugInStreamLoader::didFail):
3058         (WebCore::NetscapePlugInStreamLoader::didCancel):
3059         * loader/NetscapePlugInStreamLoader.h:
3060         (WebCore::NetscapePlugInStreamLoaderClient::didFinishLoading):
3061         * plugins/win/PluginStreamWin.cpp:
3062         (WebCore::PluginStreamWin::start):
3063         (WebCore::PluginStreamWin::didReceiveResponse):
3064         (WebCore::PluginStreamWin::didReceiveData):
3065         (WebCore::PluginStreamWin::didFail):
3066         (WebCore::PluginStreamWin::didFinishLoading):
3067         * plugins/win/PluginStreamWin.h:
3068         * plugins/win/PluginViewWin.cpp:
3069         (WebCore::PluginViewWin::load):
3070
3071 2007-09-17  Anders Carlsson  <andersca@apple.com>
3072
3073         Reviewed by Adam.
3074
3075         <rdar://problem/5483839>
3076         Crash loading http://www.microsoft.com if Silverlight 1.0 is installed.
3077         
3078         Work around a problem in our NPRuntime implementation by never unloading the silverlight plug-in dll.
3079         
3080         * plugins/win/PluginViewWin.cpp:
3081         (WebCore::PluginViewWin::~PluginViewWin):
3082         (WebCore::PluginViewWin::determineQuirks):
3083         * plugins/win/PluginViewWin.h:
3084         (WebCore::):
3085
3086 2007-09-17  Brady Eidson  <beidson@apple.com>
3087
3088         Reviewed by John Sullivan
3089
3090         Fix for http://bugs.webkit.org/show_bug.cgi?id=15178
3091         and
3092         <rdar://problem/5474001>
3093
3094         The stress test proves that this was an overzealous ASSERT.  It is very possible to mark an icon
3095         for addition to the on-disk database and then mark it for removal before it is ever written out.  
3096         This is not an error and was already handled gracefully
3097
3098         * loader/icon/IconDatabase.cpp:
3099         (WebCore::IconDatabase::removeIconFromSQLDatabase): Don't ASSERT of log if the icon wasn't on disk
3100
3101 2007-09-17  Brady Eidson  <beidson@apple.com>
3102
3103         Reviewed by Oliver
3104
3105         <rdar://problem/5487048> - ASSERT in stress test in IconDatabase
3106
3107         If a PageURLRecord went away, it never clears its URL from the IconRecord it retained.
3108
3109         * loader/icon/PageURLRecord.cpp:
3110         (WebCore::PageURLRecord::~PageURLRecord): Set the icon record to 0, clearing the page url
3111         * loader/icon/PageURLRecord.h: Add the destructor
3112
3113 2007-09-17  Antti Koivisto  <antti@apple.com>
3114
3115         Reviewed by Darin.
3116         
3117         Fix <rdar://problem/5480050>
3118         Leopard9A551 with Dashcode 112: Dashcode crash when dragging image into canvas.
3119         
3120         If @import stylesheet was modified through CSS DOM style selector would not get updated. This
3121         could lead to crashes.
3122
3123         Test: fast/css/import-style-update.html
3124
3125         * css/CSSStyleSheet.cpp:
3126         (WebCore::CSSStyleSheet::styleSheetChanged):
3127
3128 2007-09-17  Anders Carlsson  <andersca@apple.com>
3129
3130         Reviewed by Adam.
3131
3132         <rdar://problem/5421997>
3133         http://bugs.webkit.org/show_bug.cgi?id=14247
3134         Display problem with Flash - image does not stop changing
3135         
3136         Port the manual load code over from the Mac version.
3137
3138         * plugins/win/PluginDatabaseWin.cpp:
3139         (WebCore::PluginDatabaseWin::createPluginView):
3140         * plugins/win/PluginDatabaseWin.h:
3141         Add load manually parameter.
3142         
3143         * plugins/win/PluginStreamWin.cpp:
3144         (WebCore::PluginStreamWin::stop):
3145         If we're loading manually, cancel the main resource load.
3146          
3147         (WebCore::PluginStreamWin::destroyStream):
3148         Don't disconnect the stream if we're loading manually.
3149         
3150         * plugins/win/PluginViewWin.cpp:
3151         (WebCore::PluginViewWin::setFrameGeometry):
3152         Always call updateWindow()
3153         
3154         (WebCore::PluginViewWin::PluginViewWin):
3155         Initialize loadManually.
3156         
3157         (WebCore::PluginViewWin::init):
3158         Don't set the width and height of the window here since it will make the plug-in HWND show briefly
3159         before it's been positioned.
3160         
3161         (WebCore::PluginViewWin::didReceiveResponse):
3162         Create the manual stream.
3163         
3164         (WebCore::PluginViewWin::didReceiveData):
3165         (WebCore::PluginViewWin::didFinishLoading):
3166         (WebCore::PluginViewWin::didFail):
3167         Call through to the manual stream.
3168         
3169         * plugins/win/PluginViewWin.h:
3170
3171 2007-09-16  Sam Weinig  <sam@webkit.org>
3172
3173         Reviewed by Maciej.
3174
3175         Fix for http://bugs.webkit.org/show_bug.cgi?id=14693
3176         document.width/height doesn't force layout
3177
3178         Test: fast/dom/document-width-height-force-layout.html
3179
3180         * html/HTMLDocument.cpp:
3181         (WebCore::HTMLDocument::width): Force layout.
3182         (WebCore::HTMLDocument::height): ditto.
3183         * html/HTMLDocument.h:
3184
3185 2007-09-15  Holger Hans Peter Freyther  <zecke@selfish.org>
3186
3187         Reviewed by Mark.
3188
3189         Convert the filenames from WebCore::String to the filesystem encoding
3190         and vice versa using g_filename_{from,to}_utf8 functions. Also add the needed NULL
3191         checks for the return values where glib and gtk+ can return NULL.
3192
3193         * platform/gdk/FileChooserGdk.cpp:
3194         (WebCore::convertToStringByAdoptingTheFilesystemRepresentation):
3195         (WebCore::FileChooser::openFileChooser):
3196         (WebCore::FileChooser::basenameForWidth):
3197
3198 2007-09-15  Holger Hans Peter Freyther  <zecke@selfish.org>
3199
3200         Reviewed by Mark.
3201
3202         Use the new WebCore::String::fromUTF8 function to create
3203         the labels.
3204
3205         * platform/gdk/LocalizedStringsGdk.cpp:
3206         (WebCore::submitButtonDefaultLabel):
3207         (WebCore::inputElementAltText):
3208         (WebCore::resetButtonDefaultLabel):
3209         (WebCore::searchableIndexIntroduction):
3210         (WebCore::fileButtonChooseFileLabel):
3211         (WebCore::fileButtonNoFileSelectedLabel):
3212         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
3213         (WebCore::contextMenuItemTagDownloadLinkToDisk):
3214         (WebCore::contextMenuItemTagCopyLinkToClipboard):
3215         (WebCore::contextMenuItemTagOpenImageInNewWindow):
3216         (WebCore::contextMenuItemTagDownloadImageToDisk):
3217         (WebCore::contextMenuItemTagCopyImageToClipboard):
3218         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
3219         (WebCore::contextMenuItemTagCopy):
3220         (WebCore::contextMenuItemTagGoBack):
3221         (WebCore::contextMenuItemTagGoForward):
3222         (WebCore::contextMenuItemTagStop):
3223         (WebCore::contextMenuItemTagReload):
3224         (WebCore::contextMenuItemTagCut):
3225         (WebCore::contextMenuItemTagPaste):
3226         (WebCore::contextMenuItemTagNoGuessesFound):
3227         (WebCore::contextMenuItemTagIgnoreSpelling):
3228         (WebCore::contextMenuItemTagLearnSpelling):
3229         (WebCore::contextMenuItemTagSearchWeb):
3230         (WebCore::contextMenuItemTagLookUpInDictionary):
3231         (WebCore::contextMenuItemTagOpenLink):
3232         (WebCore::contextMenuItemTagIgnoreGrammar):
3233         (WebCore::contextMenuItemTagSpellingMenu):
3234         (WebCore::contextMenuItemTagShowSpellingPanel):
3235         (WebCore::contextMenuItemTagCheckSpelling):
3236         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
3237         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
3238         (WebCore::contextMenuItemTagFontMenu):
3239         (WebCore::contextMenuItemTagBold):
3240         (WebCore::contextMenuItemTagItalic):
3241         (WebCore::contextMenuItemTagUnderline):
3242         (WebCore::contextMenuItemTagOutline):
3243         (WebCore::contextMenuItemTagWritingDirectionMenu):
3244         (WebCore::contextMenuItemTagDefaultDirection):
3245         (WebCore::contextMenuItemTagLeftToRight):
3246         (WebCore::contextMenuItemTagRightToLeft):
3247         (WebCore::contextMenuItemTagInspectElement):
3248         (WebCore::searchMenuNoRecentSearchesText):
3249         (WebCore::searchMenuRecentSearchesText):
3250         (WebCore::searchMenuClearRecentSearchesText):
3251
3252 2007-09-15  Holger Hans Peter Freyther  <zecke@selfish.org>
3253
3254         Reviewed by Mark.
3255
3256         Add WebCore::String::fromUTF8 to convert from UTF-8
3257         to a WebCore::String. This is meant to be used by
3258         the Gtk+ port and the signature and implementation
3259         is similiar to the one of DeprecatedString.
3260
3261         * platform/PlatformString.h:
3262         * platform/String.cpp:
3263         (WebCore::String::fromUTF8):
3264
3265 2007-09-13  Holger Hans Peter Freyther  <zecke@selfish.org>
3266
3267         Reviewed by Anders.
3268
3269         Implement the fileExists and deleteFile functions
3270         using glib.
3271
3272         * WebCore.pro:
3273         * platform/gdk/FileSystemGdk.cpp: Added.
3274         (WebCore::fileExists):
3275         * platform/gdk/TemporaryLinkStubs.cpp:
3276
3277 2007-09-16  David Harrison  <harrison@apple.com>
3278
3279         Reviewed by Darin.
3280
3281         <rdar://problem/5472125> REGRESSION (9A535-9A548): No VO cursor shown when navigating in a mail message body
3282
3283         The problem was that the visible units code was mishandling non-editable content, generating null
3284         VisiblePositions instead of the actual boundary VisiblePositions.
3285         
3286         Updated tests:
3287         * fast/dom/Window/window-xy-properties-expected.txt:
3288         * fast/dom/plugin-attributes-enumeration-expected.txt:
3289         * fast/events/onerror-bubbling-expected.txt:
3290         * fast/events/related-target-expected.txt:
3291         * fast/forms/select-namedItem-expected.txt:
3292         * fast/table/incomplete-table-in-fragment-2-expected.txt:
3293         * fast/table/incomplete-table-in-fragment-hang-expected.txt:
3294         * fast/table/large-rowspan-crash-expected.txt:
3295         * plugins/embed-attributes-setting-expected.txt:
3296        
3297         Source Changes:
3298         * editing/VisiblePosition.cpp:
3299         (WebCore::VisiblePosition::next):
3300         (WebCore::VisiblePosition::previous):
3301         (WebCore::VisiblePosition::honorEditableBoundaryAtOrBefore):
3302         (WebCore::VisiblePosition::honorEditableBoundaryAtOrAfter):
3303         Rename firstEditablePositionAtOrAfter to honorEditableBoundaryAtOrAfter.
3304         Rename firstEditablePositionAtOrBefore to honorEditableBoundaryAtOrBefore.
3305         Changed these two functions to handle non-editable positions.
3306         
3307         * editing/VisiblePosition.h:
3308         * editing/visible_units.cpp:
3309         (WebCore::previousWordPosition):
3310         (WebCore::nextWordPosition):
3311         (WebCore::positionAvoidingFirstPositionInTable):
3312         (WebCore::startPositionForLine):
3313         (WebCore::startOfLine):
3314         (WebCore::endOfLine):
3315         (WebCore::previousSentencePosition):
3316         (WebCore::nextSentencePosition):
3317         Rename firstEditablePositionAtOrAfter to honorEditableBoundaryAtOrAfter.
3318         Rename firstEditablePositionAtOrBefore to honorEditableBoundaryAtOrBefore.
3319         Also, startOfLine() now calls positionAvoidingFirstPositionInTable() in the empty block early return case.
3320         positionAvoidingFirstPositionInTable() was the logic startOfLine() used in the normal case. Now in a reusable function.
3321
3322 2007-09-14  Oliver Hunt  <oliver@apple.com>
3323
3324         Reviewed by Adam.
3325
3326         Mac doesn't have any kind of not implemented macro, so we'll actually implement
3327         fileSize.
3328
3329         * platform/mac/FileSystemMac.mm:
3330         (WebCore::fileSize):
3331
3332 2007-09-14  Timothy Hatcher  <timothy@apple.com>
3333
3334         Initialize m_dialogArguments to 0. Fixes the newly crashing layout tests.
3335
3336         * bindings/js/kjs_window.cpp:
3337         (KJS::WindowPrivate::WindowPrivate):
3338
3339 2007-09-14  Oliver Hunt  <oliver@apple.com>
3340
3341         Reviewed by Brady, John H.
3342
3343         <rdar://problem/5483632> File system operation wrappers are unimplemented on windows
3344         
3345         Implement Windows versions of fileExists and deleteFile. 
3346         Also corrects fileSize to use a 64-bit version of stat.
3347
3348         * platform/win/FileSystemWin.cpp:
3349         (WebCore::fileSize):  
3350           Renamed argument to be more consistent with others.
3351           And converted to _stat32i64 to allow 64-bit filesizes
3352         (WebCore::fileExists):
3353         (WebCore::deleteFile):
3354         * platform/win/TemporaryLinkStubs.cpp:
3355
3356 2007-09-14  Oliver Hunt  <oliver@apple.com>
3357
3358         Reviewed by Sam and Geoff.
3359
3360         <rdar://problem/5333272> Cannot upload files when path contains 
3361         non-ascii/multibyte characters
3362
3363         We can't use _stat to determine file size on Windows as it may not 
3364         correctly handle multibyte characters, so we have to use _wstat.
3365         
3366         In deference to the fact that we may one day use the FormDataStreamCFNet.cpp
3367         on Mac i've wrapped the call to _wstat with a generic fileSize
3368         method in FileSystem.h
3369
3370         * WebCore.vcproj/WebCore.vcproj:
3371         * platform/FileSystem.h:
3372         * platform/network/cf/FormDataStreamCFNet.cpp:
3373         * platform/win/FileSystemWin.cpp: Added.
3374         (WebCore::setHTTPBody):
3375         * platform/gdk/TemporaryLinkStubs.cpp:
3376         * platform/mac/FileSystemMac.mm:
3377         (WebCore::fileSize):
3378         * platform/qt/TemporaryLinkStubs.cpp:
3379
3380 2007-09-14  Timothy Hatcher  <timothy@apple.com>
3381
3382         Reviewed by Sam.
3383
3384         <rdar://problem/5472970> REGRESSION (r24276): TinyMCE popups show an empty window with no content
3385
3386         Accessing the document of a window before the load finished would cause the window
3387         object to hold onto the initial empty document, and never switch over to the real document
3388         once the load finished. This regression was caused by r24276 which added a check to prevent
3389         clearing the window object when the load finished. The absence of this clear allowed the
3390         dialogArguments set with showModalDialog to persist on the window after the load. However,
3391         not clearing the window would keep other properties (and the empty document object) around.
3392
3393         So the fix is to store away the dialog arguments that were passed to showModalDialog and
3394         put them back on the window object in the dialogArguments property each time
3395         the window is cleared.
3396
3397         * bindings/js/kjs_window.cpp:
3398         (KJS::createWindow): No longer put dialogArguments on the window here.
3399         (KJS::showModalDialog): Put dialogArguments on the window and call
3400         setDialogArgumentsAndReturnValueSlot to remember the arguments.
3401         (KJS::Window::clear): Put m_dialogArguments back on the window as dialogArguments.
3402         (KJS::WindowFunc::callAsFunction): Call the new setDialogArgumentsAndReturnValue.
3403         (KJS::Window::setDialogArgumentsAndReturnValue): Store the arguments in m_dialogArguments.
3404         * bindings/js/kjs_window.h: Rename setReturnValueSlot to setDialogArgumentsAndReturnValueSlot.
3405         * manual-tests/modal-dialog-arguments.html: Confirmed that this test still passes.
3406
3407         Reverted r24276 which was all the changes in FrameLoader.cpp and FrameLoader.h.
3408
3409         * loader/FrameLoader.cpp:
3410         (WebCore::FrameLoader::FrameLoader): Remove m_shouldClearWindowProperties.
3411         (WebCore::FrameLoader::createWindow): Remove the call to setShouldClearWindowProperties.
3412         (WebCore::FrameLoader::clear): No longer check m_shouldClearWindowProperties, clear the
3413         window whenever clearWindowProperties is set.
3414         (WebCore::FrameLoader::begin): Remove m_shouldClearWindowProperties.
3415         (WebCore::FrameLoader::open): Ditto.
3416         * loader/FrameLoader.h: Remove m_shouldClearWindowProperties.
3417
3418 2007-09-14  Brady Eidson  <beidson@apple.com>
3419
3420         How about a build fix that works on *all* platforms?
3421
3422         * platform/Threading.h:
3423         (WebCore::initializeThreading):
3424
3425 2007-09-14  Brady Eidson  <beidson@apple.com>
3426
3427         Roll out my previous build fix and just make the stupid thing inline
3428         (I knew there was something easier but oh boy, no coffee yet... weinig?)
3429
3430 2007-09-14  Brady Eidson  <beidson@apple.com>
3431
3432         Rubberstamped by Mark Rowe
3433
3434         Add the logging channel I just created to the initialize list on Mac
3435
3436         * platform/mac/LoggingMac.mm:
3437         (WebCore::InitializeLoggingChannelsIfNecessary):
3438
3439 2007-09-14  Brady Eidson  <beidson@apple.com>
3440
3441         Build fix
3442
3443         That method can't go in the header, apparently
3444
3445         * platform/Threading.h:
3446         * platform/gdk/TemporaryLinkStubs.cpp:
3447         (WebCore::initializeThreading):
3448         * platform/mac/Threading.mm:
3449         (WebCore::initializeThreading):
3450         * platform/qt/TemporaryLinkStubs.cpp:
3451         (WebCore::initializeThreading):
3452
3453 2007-09-14  Brady Eidson  <beidson@apple.com>
3454
3455         Reviewed by Darin
3456
3457         -Add callOnMainThread() implementation to Windows
3458
3459         * WebCore.vcproj/WebCore.vcproj:
3460         
3461         * loader/icon/IconDatabase.cpp:
3462         (WebCore::IconDatabase::open): Call initializeThreading() from the main thread before kicking off the secondary thread
3463         
3464         * platform/Logging.cpp: Added Threading logging channel
3465         (WebCore::):
3466         * platform/Logging.h: Ditto
3467         
3468         * platform/Threading.h:
3469         (WebCore::initializeThreading): Added - only needs Windows impl for now
3470         * platform/win/ThreadingWin.cpp: Added.
3471         (WebCore::callFunctionsOnMainThread): Calls each function currently in the main-thread queue
3472         (WebCore::ThreadingWindowWndProc):
3473         (WebCore::initializeThreading): Creates a message-only window to use for callOnMainThread()
3474         (WebCore::callOnMainThread): Queues the function to be called and posts a message to the threading
3475           window such that the function-call-queue can be addressed
3476         
3477         * platform/win/TemporaryLinkStubs.cpp:
3478         (WebCore::signedPublicKeyAndChallengeString):
3479         
3480 2007-09-14  Anders Carlsson  <andersca@apple.com>
3481
3482         Reviewed by Adam.
3483
3484         <rdar://problem/5316743>
3485         Safari does not handle filename parameter of content-disposition
3486         
3487         Use CFURLResponseCopySuggestedFilename instead of our own hand-rolled implementation. 
3488         
3489         While we do return the correct filename in all cases I've tried, using CFNetwork is better because
3490         it might handle corner cases that we don't.
3491         
3492         * platform/network/cf/ResourceResponseCFNet.cpp:
3493         (WebCore::ResourceResponse::doUpdateResourceResponse):
3494         
3495 2007-09-14  Geoffrey Garen  <ggaren@apple.com>
3496
3497         Reviewed by Adam Roben.
3498
3499         Fixed http://bugs.webkit.org/show_bug.cgi?id=15209
3500         Sometimes removing an iframe from the DOM does not remove its frame 
3501         from the page
3502
3503         * loader/FrameLoader.cpp:
3504         (WebCore::FrameLoader::requestFrame): Use the contentFrame pointer
3505         directly instead of searching for a frame by the frame element's name, 
3506         because the frame element's name may have changed. (Another reason to do
3507         this is that it's just plain more straight-forward and efficient.)
3508
3509 2007-09-14  Darin Adler  <darin@apple.com>
3510
3511         Reviewed by Mitz and Kevin Decker.
3512
3513         - fix http://bugs.webkit.org/show_bug.cgi?id=15197
3514           <rdar://problem/5478271> REGRESSION: Some Yahoo text entry fields
3515           render as lines rather than text entry boxes
3516
3517         Test: fast/forms/textarea-rows-cols.html
3518
3519         * html/HTMLTextAreaElement.cpp:
3520         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement): Use constants for the default number
3521         of rows and columns.
3522         (WebCore::HTMLTextAreaElement::parseMappedAttribute): If rows/cols attribute has a value
3523         that's missing, non-numeric, or zero, then use the default value. Also check for the
3524         case where the effective value of the attribute isn't changing.
3525
3526 2007-09-14  Sven Herzberg  <sven@imendio.com>
3527
3528         Reviewed by George.
3529
3530         Don't maintain obsolete code, fixes:
3531         http://bugs.webkit.org/show_bug.cgi?id=15215
3532
3533         * platform/gdk/FontPlatformData.cpp: remove static
3534         FontPlatformData::list() (isn't used at any place)
3535
3536 2007-09-14  Sven Herzberg  <sven@imendio.com>
3537
3538         Reviewed by Adam Roben.
3539
3540         Don't use fontconfig types if necessary, fixes:
3541         http://bugs.webkit.org/show_bug.cgi?id=15203
3542
3543         * platform/gdk/FontPlatformData.cpp: don't use an FcBool to store the
3544         initialized state, use a plain c++ bool instead
3545
3546 2007-09-13  Brady Eidson  <beidson@apple.com>
3547
3548         Reviewed by Maciej
3549
3550         <rdar://problem/5480437> - No site icon at launch and related error messages
3551
3552         The error message was actually indicative of a larger bug that might've resulted in icons getting
3553         improperly pruned because they were never added to the set of retained page URLs.
3554
3555         To solve the no-icon-at-launch problem, we send the "didReceiveIcon:" delegate call for every page 
3556         load that has an icon, whether the icon comes in from network, from disk, or&nb