7e21a1be5afee1a40033e334ed3768f266c862b0
[WebKit-https.git] / WebCore / ChangeLog
1 2008-03-05  Alp Toker  <alp@atoker.com>
2
3         Add a missing make dependency for derived sources to improve
4         autotools build dependency tracking.
5
6         Issue spotted by Ori Bernstein.
7
8         * GNUmakefile.am:
9
10 2008-03-05  Alp Toker  <alp@atoker.com>
11
12         GTK+ build fix for breakage introduced in r30800.
13
14         Track moved bridge sources from JavaScriptCore to WebCore.
15
16         * GNUmakefile.am:
17
18 2008-03-05  Justin Garcia  <justin.garcia@apple.com>
19
20         Reviewed by Darin.
21
22         One part of fix for:
23         <rdar://problem/5780697> Copying content with percentage based rules in a style sheet will cause fidelity issues
24
25         * editing/markup.cpp:
26         (WebCore::appendStartMarkup): Styles from matched rules should take precedence over those in
27         inline style declarations, not the other way around. 
28
29 2008-03-05  Anders Carlsson  <andersca@apple.com>
30
31         Reviewed by Darin.
32
33         Move JNI specific code from runtime_root over to jni_jsobject, where it is used.
34
35         * bridge/jni/jni_jsobject.cpp:
36         (completedJavaScriptAccess):
37         (initializeJavaScriptAccessLock):
38         (lockJavaScriptAccess):
39         (unlockJavaScriptAccess):
40         (dispatchToJavaScriptThread):
41         (performJavaScriptAccess):
42         (JavaJSObject::initializeJNIThreading):
43         (isJavaScriptThread):
44         (JavaJSObject::invoke):
45         * bridge/jni/jni_jsobject.h:
46         * bridge/runtime_root.cpp:
47         * bridge/runtime_root.h:
48         * page/mac/WebCoreFrameBridge.mm:
49         (-[WebCoreFrameBridge init]):
50
51 2008-03-05  Darin Adler  <darin@apple.com>
52
53         Reviewed by Sam.
54
55         - add functions giving offsets within a KURL, slated to replace the
56           EncodedURL object in CSSStyleSelector (in a future "visited link" change)
57         - changed all KURL data members names to use the traditional m_ prefix
58         - initialize all members to 0 in invalid KURLs rather than having all
59           functions check m_isValid
60
61         * platform/KURL.cpp:
62         (WebCore::KURL::invalidate): Added. Initializes all the fields except for
63         m_string to the "invalid" values. For use in the empty constructor and
64         in the init and parse functions.
65         (WebCore::KURL::init): Tweaked comments. Changed all code paths that return
66         early to use the invalidate() function. Updated for member variable name
67         changes.
68         (WebCore::KURL::hasPath): Updated for member variable name changes.
69         Remove now-unneeded check of m_isValid.
70         (WebCore::KURL::lastPathComponent): Ditto.
71         (WebCore::KURL::protocol): Ditto.
72         (WebCore::KURL::host): Ditto.
73         (WebCore::KURL::port): Ditto.
74         (WebCore::KURL::pass): Ditto.
75         (WebCore::KURL::user): Ditto.
76         (WebCore::KURL::ref): Ditto.
77         (WebCore::KURL::hasRef): Ditto.
78         (WebCore::KURL::protocolIs): Ditto.
79         (WebCore::KURL::query): Ditto.
80         (WebCore::KURL::path): Ditto.
81         (WebCore::KURL::setProtocol): Ditto.
82         (WebCore::KURL::setHost): Ditto.
83         (WebCore::KURL::setPort): Ditto.
84         (WebCore::KURL::setHostAndPort): Ditto.
85         (WebCore::KURL::setUser): Ditto.
86         (WebCore::KURL::setPass): Ditto.
87         (WebCore::KURL::setRef): Ditto.
88         (WebCore::KURL::setQuery): Ditto.
89         (WebCore::KURL::setPath): Ditto.
90         (WebCore::KURL::prettyURL): Ditto.
91         (WebCore::copyPathRemovingDots): Removed braces to match our code style.
92         (WebCore::KURL::parse): Changed all code paths that return early to use
93         the invalidate function. Moved code to set m_isValid to true to the very
94         end of the function. Removed braces to match our code style. Removed an
95         extra copy of the path/query/fragment code (there were two identical copies
96         in the two sides of an if statement). Removed some commented-out code.
97         Reversed an if statment. Added code to set the new m_pathAfterLastSlash
98         field. Updated for member variable name changes.
99         (WebCore::equalIgnoringRef): Updated for member variable name changes.
100         (WebCore::KURL::isHierarchical): Ditto.
101
102         * platform/KURL.h: Added a FIXME about ref vs. fragment. Made the empty
103         constructor inline and called the new invalidate function. Added new
104         pathStart, pathEnd, and pathAfterLastSlash functions, for use in the
105         new visited link code. Added an invalidate function. Renamed all the
106         data members to use the m_ prefix.
107
108         * WebCore.base.exp: Updated.
109
110 2008-03-05  Anders Carlsson  <andersca@apple.com>
111
112         Reviewed by Sam.
113
114         * WebCore.xcodeproj/project.pbxproj:
115         Change jni_jsobject.cpp to be Obj-C++ for now. The plan is to merge 
116         this with jni_objc.mm and create jni_jsobject.mm.
117         
118         * bridge/jni/jni_jsobject.cpp:
119         (createRootObject):
120         Move createRootObject here from WebCoreFrameBridge.
121         
122         (JavaJSObject::createNative):
123         Call the newly added createRootObject function.
124         
125         * bridge/runtime_root.cpp:
126         (KJS::Bindings::RootObject::initializeJNIThreading):
127         * bridge/runtime_root.h:
128         setCreateRootObject no longer takes a root object, rename it to initializeJNIThreading.
129
130         * page/mac/FrameMac.mm:
131         (WebCore::Frame::createScriptInstanceForWidget):
132         Just call Frame::createRootObject here.
133         
134         * page/mac/WebCoreFrameBridge.mm:
135         (-[WebCoreFrameBridge init]):
136         Call initializeJNIThreading.
137
138 2008-03-05  Anders Carlsson  <andersca@apple.com>
139
140         Reviewed by Sam.
141
142         Change some static class variables to be regular static variables,
143         making it easier to move the chunk of mac-specific code out of runtime_root.[cpp|h]
144
145         * bridge/runtime_root.cpp:
146         (KJS::Bindings::completedJavaScriptAccess):
147         (KJS::Bindings::RootObject::dispatchToJavaScriptThread):
148         (KJS::Bindings::performJavaScriptAccess):
149         (KJS::Bindings::RootObject::createRootObject):
150         (KJS::Bindings::RootObject::runLoop):
151         (KJS::Bindings::RootObject::setCreateRootObject):
152         * bridge/runtime_root.h:
153
154 2008-03-05  Brent Fulgham <bfulgham@gmail.com>
155
156         Reviewed by Adam Roben.
157
158         Modify source files to use the USE(SAFARI_THEME) macro, rather than
159         USE_SAFARI_THEME.  (http://bugs.webkit.org/show_bug.cgi?id=17683)
160
161         * WebCore/platform/win/PlatformScrollBarSafari.cpp
162         * WebCore/rendering/RenderThemeSafari.cpp
163         * WebCore/rendering/RenderThemeSafari.h
164         * config.h: Move definition of WTF_USE_SAFARI_THEME here 
165
166 2008-03-05  Brady Eidson  <beidson@apple.com>
167
168         Reviewed by Alexey and Mark Rowe
169
170         Fix for <rdar://problem/5778247> - Reproducible crash on storage/execute-sql-args.html
171
172         DatabaseThread::unscheduleDatabaseTasks() manually filters through a MessageQueue,
173         removing particular items for Databases that were shutting down.
174
175         This filtering operation is not atomic, and therefore causes a race condition with the
176         database thread waking up and reading from the message queue.  
177
178         The end result was an attempt to dereference a null DatabaseTask.  Timing-wise, this never
179         seemed to happen in a debug build, otherwise an assertion would've caught it.  Replacing that
180         assertion with a crash in a release build is what revealed this bug.
181
182         The fix for the above symptom was entirely in WTF::MessageQueue in JSCore.  With this fix in 
183         place, another crash popped up in the layout tests that was related to dereferencing a 
184         deallocated object - simply because SQLTransaction had a raw pointer to it's Database object 
185         when it needed to be a ref pointer.
186
187         * storage/SQLTransaction.cpp:
188         (WebCore::SQLTransaction::runCurrentStatement):
189         * storage/SQLTransaction.h: Change m_database to be a RefPtr
190         (WebCore::SQLTransaction::database):
191
192 2008-03-05  Mark Rowe  <mrowe@apple.com>
193
194         Build fix.
195
196         * WebCore.base.exp:  Remove symbol that no longer exists from the exports file.
197
198 2008-03-05  Adam Roben  <aroben@apple.com>
199
200         Move WebCoreScriptDebugger up to WebKit
201
202         Reviewed by Darin.
203
204         * WebCore.base.exp: Exported some functions used by
205         WebCoreScriptDebugger, and sorted the list.
206         * WebCore.xcodeproj/project.pbxproj: Removed
207         WebCoreScriptDebugger.{h,mm} from the project and marked
208         a few headers private so that WebKit can use them.
209         * page/mac/WebCoreScriptDebugger.h: Removed.
210         * page/mac/WebCoreScriptDebugger.mm: Removed.
211
212 2008-03-05  Anders Carlsson  <andersca@apple.com>
213
214         Build bridge/. Copy some headers over to WebKit as part of the post-build step.
215         
216         * WebCore.vcproj/WebCore.vcproj:
217
218 2008-03-05  Anders Carlsson  <andersca@apple.com>
219
220         Reviewed by Geoff.
221
222         * WebCore.base.exp:
223         Add the NPN and KJS methods.
224         
225         * WebCore.xcodeproj/project.pbxproj:
226         Bring in bridge/
227
228         * config.h:
229         Add HAVE_JNI define.
230         
231         * bindings/js/kjs_html.cpp:
232         * bindings/objc/DOMInternal.mm:
233         * bindings/objc/DOMUtility.mm:
234         * bindings/objc/WebScriptObject.mm:
235         * html/HTMLAppletElement.cpp:
236         * html/HTMLEmbedElement.cpp:
237         * html/HTMLObjectElement.cpp:
238         * html/HTMLPlugInElement.cpp:
239         * page/Frame.cpp:
240         * page/mac/FrameMac.mm:
241         * page/mac/WebCoreFrameBridge.mm:
242         * page/mac/WebCoreScriptDebugger.mm:
243         * plugins/win/PluginViewWin.cpp:
244         Include file changes.
245
246 2008-03-04  Anders Carlsson  <andersca@apple.com>
247
248         Reviewed by Sam.
249
250         Rewrite NPRuntime string conversion routines to use WebCore::String
251         
252         * bridge/NP_jsobject.cpp:
253         (_NPN_Evaluate):
254         * bridge/c/c_utility.cpp:
255         (KJS::Bindings::convertUTF8ToUTF16WithLatin1Fallback):
256         (KJS::Bindings::convertNPVariantToValue):
257         (KJS::Bindings::convertNPStringToUTF16):
258         (KJS::Bindings::identifierFromNPIdentifier):
259         * bridge/c/c_utility.h:
260
261 2008-03-05  Oliver Hunt  <oliver@apple.com>
262
263         Reviewed by Alexey P.
264
265         Small performance improvement to putImageData (3-5% on assignment in my tests)
266
267         * html/CanvasPixelArray.h:
268         (WebCore::CanvasPixelArray::set):
269
270 2008-03-04  Sam Weinig  <sam@webkit.org>
271
272         Reviewed by Adele.
273
274         * bindings/js/JSXMLHttpRequest.h: Remove unnecessary override of toBoolean.
275
276 2008-03-04  Maciej Stachowiak  <mjs@apple.com>
277
278         Reviewed by Sam and Oliver.
279
280         - fixed http://bugs.webkit.org/show_bug.cgi?id=16289
281         - fixed Acid3 tests 26 and 27 (not exactly the same issue but related)
282
283         * bindings/js/JSNodeCustom.cpp:
284         (WebCore::JSNode::mark): When marking a node that's in-document,
285         mark the owner document if it hasn't been already. This means holding on
286         to a single node from an unreferenced document now keeps the whole document alive.
287         
288         We are now at 90/100 on Acid3.
289
290 2008-03-04  Sam Weinig  <sam@webkit.org>
291
292         Qt build fix.
293
294         * page/qt/FrameQt.cpp:
295
296 2008-03-04  Sam Weinig  <sam@webkit.org>
297
298         Reviewed by Mark Rowe.
299
300         Rename kjs_window to JSDOMWindowBase.
301
302         - Remove all unnecessary includes of JSDOMWindowBase.h, we prefer including
303           JSDOMWindow.h
304
305         * ChangeLog:
306         * DerivedSources.make:
307         * GNUmakefile.am:
308         * WebCore.pro:
309         * WebCore.vcproj/WebCore.vcproj:
310         * WebCore.xcodeproj/project.pbxproj:
311         * WebCoreSources.bkl:
312         * bindings/js/JSCustomVoidCallback.cpp:
313         * bindings/js/JSCustomXPathNSResolver.cpp:
314         * bindings/js/JSDOMWindowBase.cpp: Copied from bindings/js/kjs_window.cpp.
315         * bindings/js/JSDOMWindowBase.h: Copied from bindings/js/kjs_window.h.
316         * bindings/js/JSDOMWindowCustom.cpp:
317         * bindings/js/JSDatabaseCustom.cpp:
318         * bindings/js/JSEventTargetBase.cpp:
319         * bindings/js/JSEventTargetBase.h:
320         * bindings/js/JSEventTargetNode.cpp:
321         * bindings/js/JSHTMLDocumentCustom.cpp:
322         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
323         * bindings/js/JSHistoryCustom.cpp:
324         * bindings/js/JSLocation.cpp:
325         * bindings/js/JSSQLTransactionCustom.cpp:
326         * bindings/js/JSXMLHttpRequest.cpp:
327         * bindings/js/ScheduledAction.cpp:
328         * bindings/js/kjs_binding.cpp:
329         * bindings/js/kjs_events.cpp:
330         * bindings/js/kjs_navigator.cpp:
331         * bindings/js/kjs_proxy.cpp:
332         * bindings/js/kjs_window.cpp: Removed.
333         * bindings/js/kjs_window.h: Removed.
334         * bindings/scripts/CodeGeneratorJS.pm:
335         * history/CachedPage.cpp:
336         * loader/FrameLoader.cpp:
337         * page/Chrome.cpp:
338         * page/InspectorController.cpp:
339         * page/mac/FrameMac.mm:
340         * page/mac/WebCoreFrameBridge.mm:
341         * page/qt/FrameQt.cpp:
342         * page/win/FrameWin.cpp:
343         * plugins/win/PluginViewWin.cpp:
344
345 2008-03-04  Mark Rowe  <mrowe@apple.com>
346
347         Speculative Qt build fix.
348
349         * platform/qt/PasteboardQt.cpp:
350
351 2008-03-04  Anders Carlsson  <andersca@apple.com>
352
353         Reviewed by Sam.
354
355         Update include paths. This code is not used yet.
356
357         * bridge/NP_jsobject.cpp:
358         * bridge/c/c_class.cpp:
359         * bridge/c/c_instance.cpp:
360         * bridge/c/c_utility.cpp:
361         (KJS::Bindings::convertUTF8ToUTF16WithLatin1Fallback):
362         #if 0 this out for now. 
363         
364         * bridge/jni/jni_class.cpp:
365         * bridge/jni/jni_jsobject.cpp:
366         * bridge/jni/jni_objc.mm:
367         * bridge/jni/jni_runtime.cpp:
368         * bridge/jni/jni_utility.cpp:
369         * bridge/jni/jni_utility.h:
370         * bridge/npruntime.cpp:
371         * bridge/objc/WebScriptObject.h:
372         * bridge/objc/objc_class.h:
373         * bridge/objc/objc_instance.h:
374         * bridge/objc/objc_runtime.h:
375         * bridge/objc/objc_utility.h:
376         * bridge/objc/objc_utility.mm:
377         * bridge/runtime.cpp:
378         * bridge/runtime.h:
379         * bridge/runtime_array.cpp:
380         * bridge/runtime_array.h:
381         * bridge/runtime_method.cpp:
382         * bridge/runtime_method.h:
383         * bridge/runtime_object.cpp:
384         * bridge/runtime_object.h:
385         * bridge/runtime_root.cpp:
386         * bridge/runtime_root.h:
387
388 2008-03-04  Dan Bernstein  <mitz@apple.com>
389
390         Reviewed by Darin Adler.
391
392         - fix http://bugs.webkit.org/show_bug.cgi?id=17676
393           <rdar://problem/5781091> REGRESSION (r30240-r30267): href attribute values with non-ASCII characters in the host part do not work
394
395         Test: fast/encoding/url-host-name-non-ascii.html
396
397         * platform/KURL.cpp:
398         (WebCore::appendEncodedHostname): Added an early return in the all-ASCII
399         case to avoid copying the host name twice and corrected the error
400         checking after calling uidna_IDNToASCII().
401
402 2008-03-04  Sam Weinig  <sam@webkit.org>
403
404         Reviewed by Dan Bernstein.
405
406         Use JSDOMWindow exclusively instead of JSDOMWindowBase.
407
408         * bindings/js/ScheduledAction.cpp:
409         (WebCore::ScheduledAction::execute):
410         * bindings/js/ScheduledAction.h:
411         * bindings/js/kjs_window.cpp:
412         (WebCore::JSDOMWindowBase::timerFired):
413
414 2008-03-04  Timothy Hatcher  <timothy@apple.com>
415
416         Reviewed by Darin Adler.
417
418         <rdar://problem/5720160> Browser windows "do nothing" while modal
419         dialog or menu is up due to run loop modes (or while scrolling)
420
421         Adds a new SchedulePair object that holds a runloop and the mode to use.
422         A HashSet of SchedulePairs is tracked by Page so it can be used for resource
423         loading and, in the future, maybe SharedTimerMac.
424
425         * WebCore.base.exp: Add new exports for WebKit.
426         * WebCore.xcodeproj/project.pbxproj: Add new files.
427         * loader/mac/DocumentLoaderMac.cpp: Added.
428         (WebCore::scheduleAll): Call schedule all the ResourceLoader handles.
429         (WebCore::unscheduleAll): Call unschedule all the ResourceLoader handles.
430         (WebCore::DocumentLoader::schedule): Schedule all the ResourceLoaders owned by the DocumentLoader.
431         (WebCore::DocumentLoader::unschedule): Unschedule all the ResourceLoaders owned by the DocumentLoader.
432         * loader/DocumentLoader.h:
433         * page/Page.h:
434         (WebCore::Page::scheduledRunLoopPairs): Return m_scheduledRunLoopPairs.
435         * page/mac/PageMac.cpp:
436         (WebCore::Page::addSchedulePair): Add a SchedulePair to m_scheduledRunLoopPairs.
437         (WebCore::Page::removeSchedulePair): Removes a SchedulePair from m_scheduledRunLoopPairs.
438         * platform/cf/SchedulePair.cpp: Added.
439         * platform/cf/SchedulePair.h: Added.
440         * platform/mac/SchedulePairMac.mm: Added.
441         * platform/network/ResourceHandle.h:
442         * platform/network/mac/FormDataStreamMac.mm:
443         (WebCore::advanceCurrentStream): Use the new SchedulePair.
444         (WebCore::formCreate): Ditto.
445         (WebCore::formFinalize): Ditto.
446         (WebCore::formSchedule): Ditto.
447         (WebCore::formUnschedule): Ditto.
448         * platform/network/mac/ResourceHandleMac.mm:
449         (WebCore::ResourceHandle::start): Schedule the connection with all the SchedulePairs
450         that Page holds. If Page has no SchedulePairs, schedule with the current runloop, and
451         pick the mode based on ResourceHandle::loadsDuringCommonRunLoopModes.
452         (WebCore::ResourceHandle::schedule):
453         (WebCore::ResourceHandle::unschedule):
454
455 2008-03-04  Sam Weinig  <sam@webkit.org>
456
457         Reviewed by Darin Adler.
458
459         Rename kjs_css to JSRGBColor.
460
461         * DerivedSources.make:
462         * GNUmakefile.am:
463         * WebCore.pro:
464         * WebCore.vcproj/WebCore.vcproj:
465         * WebCore.xcodeproj/project.pbxproj:
466         * WebCoreSources.bkl:
467         * bindings/js/JSRGBColor.cpp: Copied from bindings/js/kjs_css.cpp.
468         * bindings/js/JSRGBColor.h: Copied from bindings/js/kjs_css.h.
469         * bindings/js/kjs_css.cpp: Removed.
470         * bindings/js/kjs_css.h: Removed.
471         * bindings/js/kjs_window.cpp:
472         * bindings/objc/DOMUtility.mm:
473         * bindings/scripts/CodeGeneratorJS.pm:
474
475 2008-03-04  Anders Carlsson  <andersca@apple.com>
476
477         Fix 64-bit build.
478         
479         * html/HTMLPlugInElement.cpp:
480
481 2008-03-04  Nikolas Zimmermann  <zimmermann@kde.org>
482
483         Reviewed by Eric & David.
484
485         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17078
486
487         Fix getSubStringLength() handling, verified by Acid3 test 77.
488         Brings up Acid3 score to 88/100.
489
490         Added test: svg/custom/acid3-test-77.html
491                     svg/custom/getSubStringLength.html
492
493         * svg/SVGTextContentElement.cpp:
494         (WebCore::cummulatedCharacterRangeLength): Simplify some code.
495         (WebCore::SVGTextContentElement::getSubStringLength):
496
497 2008-03-04  Anders Carlsson  <andersca@apple.com>
498
499         Mac build fix. Neither me, Sam nor Adam know why we need to do this though :(
500
501         * bindings/js/kjs_proxy.cpp:
502         (WebCore::KJSProxy::attachDebugger):
503         * page/Page.cpp:
504         (WebCore::Page::setDebuggerForAllPages):
505         (WebCore::Page::setDebugger):
506
507 2008-03-04  Adam Roben  <aroben@apple.com>
508
509         Add ExecState.h to ForwardingHeaders
510
511         Reviewed by Anders.
512
513         * ForwardingHeaders/kjs/ExecState.h: Added.
514         * page/Page.cpp: Touch this to force WebCore to build and the headers
515         to be copied.
516
517 2008-03-04  Adam Roben  <aroben@apple.com>
518
519         Make it possible to set a KJS::Debugger on all Frames in a Page and
520         all Pages in the process
521
522         Reviewed by Kevin M.
523
524         * ForwardingHeaders/kjs/debugger.h: Added.
525         * bindings/js/kjs_proxy.cpp:
526         (WebCore::KJSProxy::initScript): Attach the Page's debugger if there
527         is one.
528         (WebCore::KJSProxy::attachDebugger): Attach the passed-in debugger, or
529         detach any existing debugger if none was passed in.
530         * bindings/js/kjs_proxy.h:
531         * page/Page.cpp:
532         (WebCore::Page::Page): Initialize new member.
533         (WebCore::Page::setDebuggerForAllPages): Call setDebugger on each Page
534         in the process.
535         (WebCore::Page::setDebugger): Store the debugger and pass it off to
536         all our Frames.
537         * page/Page.h:
538
539 2008-03-04  Sam Weinig  <sam@webkit.org>
540
541         Reviewed by Darin Adler.
542
543         Add ClassInfo to custom constructors so that they toString properly
544
545         - Take this chance to remove the "Imp" from the end of JSXMLHttpRequestConstructorImp,
546           and XSLTProcessorConstructorImp and prefix all the classes with JS. 
547
548         * bindings/js/JSAudioConstructor.cpp:
549         (WebCore::): Added ClassInfo definition.
550         (WebCore::JSAudioConstructor::JSAudioConstructor):
551         (WebCore::JSAudioConstructor::construct): Cleanup.
552         * bindings/js/JSAudioConstructor.h: Rename m_doc to m_document.
553         (WebCore::JSAudioConstructor::classInfo): Added.
554
555         * bindings/js/JSHTMLInputElementBase.cpp: Rename HTMLInputElementBasePrototype 
556         to JSHTMLInputElementBasePrototype as seen if toString'ed.
557         (WebCore::):
558
559         * bindings/js/JSHTMLOptionElementConstructor.cpp:
560         (WebCore::): Added ClassInfo definition.
561         * bindings/js/JSHTMLOptionElementConstructor.h:
562         (WebCore::JSHTMLOptionElementConstructor::classInfo): Added.
563
564         * bindings/js/JSImageConstructor.cpp:
565         (WebCore::): Added ClassInfo definition.
566         (WebCore::JSImageConstructor::implementsConstruct): Moved here from header.
567         * bindings/js/JSImageConstructor.h:
568         (WebCore::JSImageConstructor::classInfo): Added.
569
570         * bindings/js/JSXMLHttpRequest.cpp:
571         (WebCore::): Rename XMLHttpRequestPrototype  to JSXMLHttpRequestPrototype 
572         as seen if toString'ed.
573         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
574         (WebCore::JSXMLHttpRequestConstructor::implementsConstruct):
575         (WebCore::JSXMLHttpRequestConstructor::construct):
576         * bindings/js/JSXMLHttpRequest.h: Renamed JSXMLHttpRequestConstructorImp to
577         JSXMLHttpRequestConstructor and doc to m_document and 
578         (WebCore::JSXMLHttpRequestConstructor::classInfo): Added.
579
580         * bindings/js/JSXSLTProcessor.cpp:
581         (WebCore::): Renamed XSLTProcessorPrototype to JSXSLTProcessorPrototype and 
582         XSLTProcessorConstructorImp to JSXSLTProcessorConstructor.
583         (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
584         (WebCore::JSXSLTProcessorConstructor::implementsConstruct):
585         (WebCore::JSXSLTProcessorConstructor::construct):
586         * bindings/js/JSXSLTProcessor.h:
587         (WebCore::JSXSLTProcessorConstructor::classInfo): Added.
588
589         * bindings/js/kjs_window.cpp:
590         (WebCore::JSDOMWindowBase::getValueProperty): Fixed to work with the new class names.
591
592 2008-03-04  Dan Bernstein  <mitz@apple.com>
593
594         Reviewed by Oliver Hunt and Geoffrey Garen.
595
596         - fix http://bugs.webkit.org/show_bug.cgi?id=17667
597           <rdar://problem/5779658> REGRESSION (r30587): Document::implicitClose() not called when done loading page (Image does not get scaled to fit)
598
599         * loader/loader.cpp:
600         (WebCore::Loader::didFinishLoading): Changed to call
601         setLoadInProgress(false) even for 4xx errors, because that triggers
602         load completion check.
603
604 2008-03-04  Adele Peterson  <adele@apple.com>
605
606         Reviewed by Beth.
607
608         Fix for <rdar://problem/5779718> focus() does not work for anchor elements with no content
609
610         If an anchor has zero size, don't exclude it from being focusable from JS, just exclude it
611         from being keyboard focusable (using the tab key).
612
613         * html/HTMLAnchorElement.cpp:
614         (WebCore::HTMLAnchorElement::isFocusable):
615         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
616
617 2008-03-04  Chris Fleizach  <cfleizach@apple.com>
618
619         Reviewed by Darin Adler.
620
621         - fix <rdar://problem/5119360> ER - Seed: Google results do not have AXHeading information
622
623         * page/mac/WebCoreAXObject.mm:
624         (headingLevel):
625         (-[WebCoreAXObject accessibilityIsIgnored]):
626
627 2008-03-04  Sam Weinig  <sam@webkit.org>
628
629         GTK+ build fix.
630
631         * GNUmakefile.am:
632
633 2008-03-04  Sam Weinig  <sam@webkit.org>
634
635         Reviewed by Darin Adler.
636
637         Remame ImageConstructorImp to JSImageConstructor and move it into its
638         own file.
639
640         * GNUmakefile.am:
641         * WebCore.pro:
642         * WebCore.vcproj/WebCore.vcproj:
643         * WebCore.xcodeproj/project.pbxproj:
644         * WebCoreSources.bkl:
645         * bindings/js/JSImageConstructor.cpp: Copied from bindings/js/kjs_html.cpp.
646         (WebCore::JSImageConstructor::JSImageConstructor):
647         (WebCore::JSImageConstructor::construct):
648         * bindings/js/JSImageConstructor.h: Copied from bindings/js/kjs_html.h.
649         * bindings/js/kjs_html.cpp:
650         (WebCore::getRuntimeObject): Make this function static since it is only used
651         in this file.
652         * bindings/js/kjs_html.h:
653         * bindings/js/kjs_window.cpp:
654         (WebCore::JSDOMWindowBase::getValueProperty):
655
656 2008-03-04  Adam Roben  <aroben@apple.com>
657
658         Fix an uninitialized value warning in CodeGeneratorJS.pm
659
660         * bindings/scripts/CodeGeneratorJS.pm: Remove reference to
661         non-existent $maybeOkParam (this was removed in r30753).
662
663 2008-03-04  Sam Weinig  <sam@webkit.org>
664
665         Reviewed by Darin Adler.
666
667         Remove kjs_dom.{h,cpp}.
668
669         - Removed custom toAttr, which took a boolean ok, and teach CodeGeneratorJS.pm
670           to us a null return value as an indication of failure. (This new logic is used
671           for toVoidCallback as well.)
672         - Move getRuntimeObject to kjs_html where a bunch of other runtime object related
673           functions currently live.
674         - Move checkNodeSecurity to kjs_binding, where other frame security functions 
675           currently live.
676         - Remove getNodeConstructor.  It had no implementation.
677
678         * GNUmakefile.am:
679         * WebCore.pro:
680         * WebCore.vcproj/WebCore.vcproj:
681         * WebCore.xcodeproj/project.pbxproj:
682         * WebCoreSources.bkl:
683         * bindings/js/JSAttrCustom.cpp:
684         * bindings/js/JSCustomVoidCallback.cpp:
685         (WebCore::toVoidCallback):
686         * bindings/js/JSCustomVoidCallback.h:
687         * bindings/js/JSDatabaseCustom.cpp:
688         (WebCore::JSDatabase::changeVersion):
689         (WebCore::JSDatabase::transaction):
690         * bindings/js/JSElementCustom.cpp:
691         (WebCore::JSElement::setAttributeNode):
692         (WebCore::JSElement::setAttributeNodeNS):
693         * bindings/js/JSEventTargetBase.cpp:
694         (WebCore::toJS):
695         * bindings/js/JSEventTargetBase.h:
696         * bindings/js/JSHTMLAppletElementCustom.cpp:
697         * bindings/js/JSHTMLElementCustom.cpp:
698         * bindings/js/JSHTMLEmbedElementCustom.cpp:
699         * bindings/js/JSHTMLFormElementCustom.cpp:
700         * bindings/js/JSHTMLFrameElementCustom.cpp:
701         * bindings/js/JSHTMLIFrameElementCustom.cpp:
702         * bindings/js/JSHTMLObjectElementCustom.cpp:
703         * bindings/js/JSNamedNodeMapCustom.cpp:
704         * bindings/js/JSNamedNodesCollection.cpp:
705         * bindings/js/JSNodeFilterCustom.cpp:
706         * bindings/js/JSXSLTProcessor.cpp:
707         * bindings/js/kjs_binding.cpp:
708         (WebCore::checkNodeSecurity):
709         * bindings/js/kjs_binding.h:
710         * bindings/js/kjs_css.cpp:
711         * bindings/js/kjs_dom.cpp: Removed.
712         * bindings/js/kjs_dom.h: Removed.
713         * bindings/js/kjs_events.cpp:
714         * bindings/js/kjs_html.cpp:
715         (WebCore::getRuntimeObject):
716         * bindings/js/kjs_html.h:
717         * bindings/js/kjs_window.cpp:
718         * bindings/scripts/CodeGeneratorJS.pm:
719         * dom/Attr.idl:
720         * html/HTMLPlugInElement.cpp:
721         * page/InspectorController.cpp:
722
723 2008-03-04  Adam Roben  <aroben@apple.com>
724
725         Win/Qt/GTK+/wx build fix after r30740
726
727         * editing/Editor.cpp: Added missing #include.
728         * page/qt/FrameQt.cpp: Removed Frame::dashboardRegionsChanged.
729         * page/win/FrameWin.cpp: Ditto.
730         * platform/wx/TemporaryLinkStubs.cpp: Ditto.
731
732 2008-03-04  Alp Toker  <alp@atoker.com>
733
734         GTK+ build fix for breakage introduced in r30740.
735
736         Remove Frame::dashboardRegionsChanged(). There's now a default
737         implementation at ChromeClient::dashboardRegionsChanged().
738
739         * page/gtk/FrameGtk.cpp:
740
741 2008-03-04  Alp Toker  <alp@atoker.com>
742
743         GTK+ build fix suggested by aroben. Remove an unused Mac-specific
744         included introduced in r30740.
745
746         * page/ChromeClient.h:
747
748 2008-03-04  Dan Bernstein  <mitz@apple.com>
749
750         Reviewed by Sam Weinig.
751
752         - fix <rdar://problem/5622336> Burmese text does not render on http://www.myanmarbible.com/bible/Judson/html/index.html
753
754         Test: platform/win/fast/text/uniscribe-missing-glyph.html
755
756         Note that default installations of Windows do not have Myanmar fonts.
757         What this patch does is ensure that the Myanmar and other complex
758         scripts are rendered as missing glyphs rather than not rendered at all.
759         The particular page in the bug measures the relative widths of two
760         rendered strings and, if they are rendered as missing glyphs, detects
761         that a Myanmar fonts is not available and substitutes the text with
762         images. By not rendering (and measuring) missing glyphs, WebKit was
763         throwing the page's detection code off.
764
765         * platform/graphics/win/UniscribeController.cpp:
766         (WebCore::UniscribeController::shape): Removed an early return in case
767         shaping resulted in missing glyphs. This is now expected if font
768         fallback failed to produce a font containing glyphs for the character.
769         Also changed two resize()s to shrink()s.
770
771 2008-03-04  Darin Adler  <darin@apple.com>
772
773         Reviewed by Adam.
774
775         - remove WebCoreFrameBridge reapplyStyles method
776
777         * WebCore.base.exp: Added exports.
778         * page/mac/WebCoreFrameBridge.h: Removed WebCoreDeviceType and
779         reapplyStylesForDeviceType: method.
780         * page/mac/WebCoreFrameBridge.mm: Ditto.
781
782 2008-03-04  Darin Adler  <darin@apple.com>
783
784         Reviewed by Adam.
785
786         - eliminate WebCoreFrameBridge createFrameViewWithNSView
787
788         * WebCore.base.exp: Added some more exports.
789         * page/mac/WebCoreFrameBridge.h: Deleted createFrameViewWithNSView.
790         * page/mac/WebCoreFrameBridge.mm: Ditto.
791
792 2008-03-04  Darin Adler  <darin@apple.com>
793
794         Reviewed by Adam.
795
796         - removed WebCoreFrameBridge scrollOverflowInDirection
797
798         * WebCore.base.exp: Export function needed by WebKit.
799         * page/mac/WebCoreFrameBridge.h: Removed WebScrollDirection, WebScrollGranularity,
800         and scrollOverflowInDirection.
801         * page/mac/WebCoreFrameBridge.mm: Removed method.
802
803 2008-03-04  Darin Adler  <darin@apple.com>
804
805         Reviewed by Adam.
806
807         - remove WebCoreFrameBridge installInFrame: method
808
809         * WebCore.base.exp: Export a few symbols.
810         * WebCore.xcodeproj/project.pbxproj: Export a few files.
811         * page/mac/WebCoreFrameBridge.h: Remove installInFrame:.
812         * page/mac/WebCoreFrameBridge.mm: Ditto.
813
814 2008-03-04  Darin Adler  <darin@apple.com>
815
816         Reviewed by Adam.
817
818         - remove WebCoreFrameBridge window method
819
820         * page/mac/EventHandlerMac.mm:
821         (WebCore::EventHandler::sendFakeEventsAfterWidgetTracking): Get the window by calling
822         window on the NSView instead of using the bridge. The WebKit side wasn't doing anything
823         special, so a call to -[NSView window] is fine.
824
825         * page/mac/WebCoreFrameBridge.h: Removed the window method.
826
827 2008-03-04  Darin Adler  <darin@apple.com>
828
829         Reviewed by Adam.
830
831         - remove -[WebCoreFrameBridge dashboardRegionsChanged:]
832
833         * WebCore.base.exp: Updated.
834         * page/Chrome.cpp:
835         (WebCore::ChromeClient::dashboardRegionsChanged): Added.
836         * page/ChromeClient.h: Added virtual function for dashboardRegionsChanged.
837         * page/Frame.h: Removed dashboardRegionsChanged function.
838         * page/FrameView.cpp:
839         (WebCore::FrameView::updateDashboardRegions): Changed to call dashboardRegionsChanged
840         on ChromeClient and to only call it when the regions actually changed.
841         * page/mac/FrameMac.mm: Removed dashboardRegionsChanged function.
842         * page/mac/WebCoreFrameBridge.h: Removed dashboardRegionsChanged: method.
843
844 2008-03-04  Darin Adler  <darin@apple.com>
845
846         Reviewed by Adam.
847
848         - remove WebCoreFrameBridge issuePasteComand method
849
850         * editing/Editor.cpp:
851         (WebCore::Editor::paste): Moved the Mac-specific part of this to EditorMac.
852         * editing/mac/EditorMac.mm:
853         (WebCore::Editor::paste): Added. Calls paste: on the document view (normally a
854         WebHTMLView). We should get rid of this eventually.
855         * page/Frame.h: Removed issuePasteCommand.
856         * page/mac/FrameMac.mm: Ditto.
857         * page/mac/WebCoreFrameBridge.h: Ditto.
858
859 2008-03-04  Alexey Proskuryakov  <ap@webkit.org>
860
861         Suggested by Darin, rubber-stamped by Mark.
862
863         http://bugs.webkit.org/show_bug.cgi?id=17569
864         REGRESSION (r30571): Buzzword.com doesn't load
865
866         Rolling out r30571, as determining what is wrong with it proved tricky.
867
868         * loader/FrameLoader.cpp:
869         (WebCore::FrameLoader::load):
870         (WebCore::FrameLoader::tokenizerProcessedData):
871         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
872
873 2008-03-04  Sam Weinig  <sam@webkit.org>
874
875         Build fix.
876
877         * bindings/js/kjs_events.cpp:
878
879 2008-03-03  Sam Weinig  <sam@webkit.org>
880
881         Reviewed by Mark Rowe.
882
883         Move JSClipboard into its own file.
884
885         * DerivedSources.make:
886         * GNUmakefile.am:
887         * WebCore.pro:
888         * WebCore.vcproj/WebCore.vcproj:
889         * WebCore.xcodeproj/project.pbxproj:
890         * WebCoreSources.bkl:
891         * bindings/js/JSAttrCustom.cpp:
892         * bindings/js/JSClipboardCustom.cpp: Added.
893         (WebCore::JSClipboard::types):
894         (WebCore::JSClipboard::clearData):
895         (WebCore::JSClipboard::getData):
896         (WebCore::JSClipboard::setData):
897         (WebCore::JSClipboard::setDragImage):
898         * bindings/js/JSElementCustom.cpp:
899         * bindings/js/JSEventCustom.cpp:
900         * bindings/js/JSHTMLFrameElementCustom.cpp:
901         * bindings/js/JSHTMLIFrameElementCustom.cpp:
902         * bindings/js/kjs_events.cpp:
903         * bindings/js/kjs_events.h:
904         * bindings/js/kjs_window.cpp:
905         * bindings/scripts/CodeGeneratorJS.pm:
906         * dom/Clipboard.cpp:
907         (WebCore::Clipboard::setDropEffect):
908         (WebCore::Clipboard::setEffectAllowed):
909         * dom/Clipboard.idl: Added.
910
911 2008-03-03  Sam Weinig  <sam@webkit.org>
912
913         Windows build-fix.
914
915         * page/Chrome.cpp:
916         * plugins/win/PluginViewWin.cpp:
917
918 2008-03-03  Sam Weinig  <sam@webkit.org>
919
920         Reviewed by Darin Adler.
921
922         Cleanup and plumbing in preparation for the great Window split.
923
924         - Rename KJS::Window to WebCore::JSDOMWindowBase.
925         - Remove KJS::Window::retrieve() and KJS::Window::retrieveWindow() and replace
926           with the new toJSDOMWindow().
927         - Remove KJS::Window::retrieveActive() and replace with explicit call to 
928           exec->dynamicGlobalObject() and toJSDOMWindow().
929
930         * bindings/js/JSCustomVoidCallback.cpp:
931         (WebCore::toVoidCallback):.
932         * bindings/js/JSCustomXPathNSResolver.cpp:
933         (WebCore::JSCustomXPathNSResolver::create):
934         * bindings/js/JSDatabaseCustom.cpp:
935         (WebCore::JSDatabase::changeVersion):
936         (WebCore::JSDatabase::transaction):
937         * bindings/js/JSDocumentCustom.cpp:
938         (WebCore::JSDocument::location):
939         (WebCore::toJS):
940         * bindings/js/JSEventTargetBase.cpp:
941         (WebCore::jsEventTargetAddEventListener):
942         (WebCore::jsEventTargetRemoveEventListener):
943         * bindings/js/JSEventTargetNode.cpp:
944         (WebCore::JSEventTargetNode::setListener):
945         * bindings/js/JSHTMLDocumentCustom.cpp:
946         (WebCore::JSHTMLDocument::nameGetter):
947         (WebCore::JSHTMLDocument::open):
948         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
949         (WebCore::JSHTMLFrameSetElement::nameGetter):
950         * bindings/js/JSLocation.cpp:
951         (WebCore::JSLocation::put):
952         (WebCore::jsLocationProtoFuncReplace):
953         (WebCore::jsLocationProtoFuncReload):
954         (WebCore::jsLocationProtoFuncAssign):
955         * bindings/js/JSLocation.h:
956         * bindings/js/JSSQLTransactionCustom.cpp:
957         (WebCore::JSSQLTransaction::executeSql):
958         * bindings/js/JSSVGLazyEventListener.cpp:
959         (WebCore::JSSVGLazyEventListener::JSSVGLazyEventListener):
960         (WebCore::JSSVGLazyEventListener::eventParameterName):
961         * bindings/js/JSSVGLazyEventListener.h:
962         * bindings/js/JSXMLHttpRequest.cpp:
963         (WebCore::JSXMLHttpRequest::putValueProperty):
964         (WebCore::jsXMLHttpRequestPrototypeFunctionOpen):
965         (WebCore::jsXMLHttpRequestPrototypeFunctionAddEventListener):
966         (WebCore::jsXMLHttpRequestPrototypeFunctionRemoveEventListener):
967         * bindings/js/ScheduledAction.cpp:
968         (WebCore::ScheduledAction::execute):
969         * bindings/js/ScheduledAction.h:
970         * bindings/js/kjs_binding.cpp:
971         (WebCore::allowsAccessFromFrame):
972         (WebCore::printErrorMessageForFrame):
973         * bindings/js/kjs_events.cpp:
974         (WebCore::JSAbstractEventListener::handleEvent):
975         (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
976         (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
977         (WebCore::JSUnprotectedEventListener::windowObj):
978         (WebCore::JSEventListener::JSEventListener):
979         (WebCore::JSEventListener::~JSEventListener):
980         (WebCore::JSEventListener::windowObj):
981         (WebCore::JSLazyEventListener::JSLazyEventListener):
982         (WebCore::JSLazyEventListener::parseCode):
983         * bindings/js/kjs_events.h:
984         * bindings/js/kjs_navigator.cpp:
985         (WebCore::MimeType::getValueProperty):
986         * bindings/js/kjs_proxy.cpp:
987         (WebCore::KJSProxy::evaluate):
988         (WebCore::KJSProxy::createHTMLEventHandler):
989         (WebCore::KJSProxy::createSVGEventHandler):
990         * bindings/js/kjs_window.cpp:
991         (WebCore::JSDOMWindowBasePrivate::JSDOMWindowBasePrivate):
992         (WebCore::DOMWindowTimer::DOMWindowTimer):
993         (WebCore::DOMWindowTimer::action):
994         (WebCore::DOMWindowTimer::takeAction):
995         (WebCore::):
996         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
997         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
998         (WebCore::JSDOMWindowBase::location):
999         (WebCore::JSDOMWindowBase::mark):
1000         (WebCore::allowPopUp):
1001         (WebCore::createWindow):
1002         (WebCore::showModalDialog):
1003         (WebCore::JSDOMWindowBase::getValueProperty):
1004         (WebCore::JSDOMWindowBase::childFrameGetter):
1005         (WebCore::JSDOMWindowBase::indexGetter):
1006         (WebCore::JSDOMWindowBase::namedItemGetter):
1007         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
1008         (WebCore::JSDOMWindowBase::put):
1009         (WebCore::JSDOMWindowBase::allowsAccessFrom):
1010         (WebCore::JSDOMWindowBase::allowsAccessFromNoErrorMessage):
1011         (WebCore::JSDOMWindowBase::allowsAccessFromPrivate):
1012         (WebCore::JSDOMWindowBase::crossDomainAccessErrorMessage):
1013         (WebCore::JSDOMWindowBase::printErrorMessage):
1014         (WebCore::JSDOMWindowBase::globalExec):
1015         (WebCore::JSDOMWindowBase::shouldInterruptScript):
1016         (WebCore::JSDOMWindowBase::setListener):
1017         (WebCore::JSDOMWindowBase::getListener):
1018         (WebCore::JSDOMWindowBase::findJSEventListener):
1019         (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
1020         (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
1021         (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
1022         (WebCore::JSDOMWindowBase::clearHelperObjectProperties):
1023         (WebCore::JSDOMWindowBase::clear):
1024         (WebCore::JSDOMWindowBase::setCurrentEvent):
1025         (WebCore::JSDOMWindowBase::currentEvent):
1026         (WebCore::windowProtoFuncAToB):
1027         (WebCore::windowProtoFuncBToA):
1028         (WebCore::windowProtoFuncOpen):
1029         (WebCore::windowProtoFuncSetTimeout):
1030         (WebCore::windowProtoFuncClearTimeout):
1031         (WebCore::windowProtoFuncSetInterval):
1032         (WebCore::windowProtoFuncAddEventListener):
1033         (WebCore::windowProtoFuncRemoveEventListener):
1034         (WebCore::windowProtoFuncShowModalDialog):
1035         (WebCore::windowProtoFuncNotImplemented):
1036         (WebCore::JSDOMWindowBase::setReturnValueSlot):
1037         (WebCore::JSDOMWindowBase::clearAllTimeouts):
1038         (WebCore::JSDOMWindowBase::installTimeout):
1039         (WebCore::JSDOMWindowBase::pauseTimeouts):
1040         (WebCore::JSDOMWindowBase::resumeTimeouts):
1041         (WebCore::JSDOMWindowBase::clearTimeout):
1042         (WebCore::JSDOMWindowBase::timerFired):
1043         (WebCore::JSDOMWindowBase::disconnectFrame):
1044         (WebCore::JSDOMWindowBase::jsEventListeners):
1045         (WebCore::JSDOMWindowBase::jsHTMLEventListeners):
1046         (WebCore::JSDOMWindowBase::jsUnprotectedEventListeners):
1047         (WebCore::JSDOMWindowBase::jsUnprotectedHTMLEventListeners):
1048         (WebCore::toJS):
1049         (WebCore::toJSDOMWindow):
1050         (WebCore::toJSDOMWindow):
1051         * bindings/js/kjs_window.h:
1052         (WebCore::JSDOMWindowBase::impl):
1053         (WebCore::JSDOMWindowBase::classInfo):
1054         (WebCore::JSDOMWindowBase::):
1055         * bindings/objc/DOMUtility.mm:
1056         (KJS::createDOMWrapper):
1057         * bindings/scripts/CodeGeneratorJS.pm:
1058         * history/CachedPage.cpp:
1059         (WebCore::CachedPage::CachedPage):
1060         (WebCore::CachedPage::restore):
1061         * page/Chrome.cpp:
1062         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
1063         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
1064         * page/DOMWindow.idl:
1065         * page/Frame.cpp:
1066         (WebCore::Frame::~Frame):
1067         (WebCore::Frame::windowScriptNPObject):
1068         (WebCore::Frame::pageDestroyed):
1069         * page/InspectorController.cpp:
1070         (WebCore::inspectedWindow):
1071         * page/mac/FrameMac.mm:
1072         (WebCore::Frame::windowScriptObject):
1073         * page/mac/WebCoreFrameBridge.mm:
1074         (updateRenderingForBindings):
1075         * platform/SecurityOrigin.cpp:
1076         (WebCore::SecurityOrigin::canAccess):
1077
1078 2008-03-03  Kevin Ollivier  <kevino@theolliviers.com>
1079
1080         wx build fixes after recent Frame-related changes.
1081
1082         * platform/wx/PasteboardWx.cpp:
1083         * platform/wx/TemporaryLinkStubs.cpp:
1084
1085 2008-03-03  Dan Bernstein  <mitz@apple.com>
1086
1087         Reviewed by Darin Adler.
1088
1089         - make :first-letter apply to the first letter in normal flow, skipping
1090           floats and positioned objects
1091
1092         Test: fast/css/first-letter-skip-out-of-flow.html
1093
1094         * rendering/RenderBlock.cpp:
1095         (WebCore::RenderBlock::updateFirstLetter):
1096
1097 2008-03-03  Ada Chan  <adachan@apple.com>
1098
1099         Fix build.
1100
1101         * plugins/win/PluginViewWin.cpp:
1102
1103 2008-03-03  Mark Rowe  <mrowe@apple.com>
1104
1105         Reviewed by Dan Bernstein.
1106
1107         Fix http://bugs.webkit.org/show_bug.cgi?id=17313
1108         Bug 17313: querySelectorAll() causing crashes when called via dojo.query() wrapper
1109
1110         Node::querySelector and SelectorNodeList were not sufficiently initializing the CSSStyleSelector
1111         before using it to resolve styles, which lead to it having a stale m_style member in some situations.
1112         This stale m_style member resulted in a wild store that would write over whatever object now resided
1113         at the location m_style pointed to.
1114
1115         Test: fast/dom/SelectorAPI/bug-17313.html
1116
1117         * dom/Node.cpp:
1118         (WebCore::Node::querySelector): Call initForStyleResolve to further initialize the CSSStyleSelector.
1119         * dom/SelectorNodeList.cpp:
1120         (WebCore::SelectorNodeList::SelectorNodeList): Ditto.
1121
1122 2008-03-03  Anders Carlsson  <andersca@apple.com>
1123
1124         Reviewed by Darin and Sam.
1125
1126         Include fixes, in preparation of using the headers in WebCore/bridge.
1127         
1128         * bindings/js/kjs_binding.h:
1129         * bindings/js/kjs_dom.cpp:
1130         * bindings/objc/DOMInternal.mm:
1131         * bindings/objc/DOMUtility.mm:
1132         * bindings/objc/WebScriptObject.mm:
1133         * bindings/objc/WebScriptObjectPrivate.h:
1134         * bridge/objc/objc_class.h:
1135         * bridge/objc/objc_instance.h:
1136         * bridge/objc/objc_runtime.h:
1137         * bridge/objc/objc_utility.h:
1138         * bridge/runtime.h:
1139         * bridge/runtime_object.h:
1140         * bridge/runtime_root.h:
1141         * html/HTMLAppletElement.cpp:
1142         * html/HTMLAppletElement.h:
1143         * html/HTMLEmbedElement.cpp:
1144         * html/HTMLEmbedElement.h:
1145         * html/HTMLObjectElement.cpp:
1146         * html/HTMLPlugInElement.cpp:
1147         * html/HTMLPlugInElement.h:
1148         * page/mac/FrameMac.mm:
1149         * page/mac/WebCoreFrameBridge.h:
1150         * page/mac/WebCoreFrameBridge.mm:
1151         * page/mac/WebCoreScriptDebugger.mm:
1152
1153 2008-03-03  David Hyatt  <hyatt@apple.com>
1154
1155         Full page zoom plumbing.  Add a notion of whether or not a zoom is text only or a full zoom to the
1156         Frame.  setTextSizeMultiplier does a text only zoom.
1157
1158         Reviewed by Tim H.
1159
1160         * page/Frame.cpp:
1161         (WebCore::Frame::zoomFactor):
1162         (WebCore::Frame::isZoomFactorTextOnly):
1163         (WebCore::Frame::setZoomFactor):
1164         (WebCore::FramePrivate::FramePrivate):
1165         * page/Frame.h:
1166         * page/FramePrivate.h:
1167         * page/mac/WebCoreFrameBridge.mm:
1168         (-[WebCoreFrameBridge setTextSizeMultiplier:]):
1169         * svg/SVGSVGElement.cpp:
1170         (WebCore::SVGSVGElement::setCurrentScale):
1171
1172 2008-03-03  David Hyatt  <hyatt@apple.com>
1173
1174         Fix for <rdar://problem/5776161> REGRESSION: Google Docs Spreadsheet crash
1175
1176         This is also http://bugs.webkit.org/show_bug.cgi?id=17543, fixed table layout corrupts heap.
1177
1178         Make sure not to access position -1 of the size 0 vectors.
1179
1180         Reviewed by ggaren
1181
1182         * rendering/FixedTableLayout.cpp:
1183         (WebCore::FixedTableLayout::layout):
1184
1185 2008-03-03  David D. Kilzer  <ddkilzer@webkit.org>
1186
1187         Dynamically inserting CSS rule with @media query fails with DOM Exception 12
1188         <http://bugs.webkit.org/show_bug.cgi?id=15986>
1189
1190         Reviewed by Darin.
1191
1192         Allow any valid rule (@font-face, @import, @media, @page or style) to be
1193         parsed when using CSSStyleSheet.insertRule().  Previously only import and
1194         style rules were allowed.  Note that @page rules always throw an exception
1195         because they're not implemented yet, so no test case was added for them.
1196
1197         Tests: fast/css/insertRule-font-face.html
1198                fast/css/insertRule-media.html
1199
1200         * css/CSSGrammar.y: Extracted 'valid_rule' out of 'rule'.  Renamed
1201         'ruleset_or_import' to 'valid_rule_or_import' and changed its definition.
1202
1203 2008-03-03  Anders Carlsson  <andersca@apple.com>
1204
1205         Reviewed by Sam.
1206
1207         Copy JSC bindings directory over to WebCore/bridge.
1208
1209         * bridge: Copied from ../JavaScriptCore/bindings.
1210
1211 2008-03-03  Dan Bernstein  <mitz@apple.com>
1212
1213         Reviewed by Darin Adler.
1214
1215         - remove CSSMutableStyleDeclaration::setChanged()'s change type
1216           parameter
1217
1218         * css/CSSMutableStyleDeclaration.cpp:
1219         (WebCore::CSSMutableStyleDeclaration::setChanged): Removed the change
1220         type parameter and made this function determine the correct change type
1221         based on whether this is an inline style declaration.
1222         (WebCore::CSSMutableStyleDeclaration::setProperty):
1223         * css/CSSMutableStyleDeclaration.h:
1224         (WebCore::CSSMutableStyleDeclaration::clear): Removed this unused
1225         method.
1226         (WebCore::CSSMutableStyleDeclaration::setChanged): Made private.
1227
1228 2008-03-03  Darin Adler  <darin@apple.com>
1229
1230         Reviewed by Adam.
1231
1232         - some "cleanup" on the path to removing WebCoreFrameBridge
1233
1234         * WebCore.base.exp: Exported some stuff we either already use or
1235         I am about to use in an upcoming patch.
1236
1237         * WebCore.xcodeproj/project.pbxproj: Made FileChooser.h private rather
1238         than project, for future use in WebKit.
1239
1240         * bindings/objc/WebScriptObject.mm: Removed some dead code.
1241
1242         * dom/ContainerNode.cpp: Added a now-needed or soon-to-be-needed include.
1243         * editing/Editor.cpp: Ditto.
1244
1245         * editing/Editor.h: Removed many unneeded declarations and includes.
1246         Removed the unused userVisibleString function.
1247
1248         * editing/EditorCommand.cpp:
1249         (WebCore::executeYank): Added parameter for triggeringEvent, which no
1250         longer has a default value.
1251         (WebCore::executeYankAndSelect): Ditto.
1252
1253         * editing/mac/EditorMac.mm: Removed userVisibleString.
1254
1255         * page/mac/EventHandlerMac.mm:
1256         (WebCore::isKeyboardOptionTab): Tweaked formattin.
1257
1258         * page/mac/WebCoreFrameBridge.mm:
1259         (-[WebCoreFrameBridge dragSourceMovedTo:]): Get window from -[NSView window]
1260         rather than from the bridge. There's no special value in the bridge's window
1261         method and we can use NSView directly.
1262         (-[WebCoreFrameBridge dragSourceEndedAt:operation:]): Ditto.
1263
1264         * platform/graphics/mac/ImageMac.mm:
1265         (WebCore::Image::loadPlatformResource): Use a new WebCoreBundleFinder class to
1266         find the bundle rather than using WebCoreFrameBridge.
1267
1268         * platform/mac/ClipboardMac.mm: Added a now-needed or soon-to-be-needed include.
1269         * platform/mac/PasteboardMac.mm: Ditto.
1270
1271         * rendering/RenderObject.h:
1272         (WebCore::DashboardRegionValue::operator==): Fixed mistake where this wasn't
1273         comparing the clip rectangle.
1274         (WebCore::DashboardRegionValue::operator!=): Added. Needed by my future work.
1275
1276 2008-03-03  Oliver Hunt  <oliver@apple.com>
1277
1278         Reviewed by Mark Rowe.
1279
1280         Bug 17620: getImageData lies
1281         http://bugs.webkit.org/show_bug.cgi?id=17620
1282
1283         Correct logic to actually iterate over the source row
1284
1285         * platform/graphics/cg/ImageBufferCG.cpp:
1286         (WebCore::ImageBuffer::getImageData):
1287
1288 2008-03-03  Oliver Hunt  <oliver@apple.com>
1289
1290         Reviewed by Mark Rowe.
1291
1292         Correct incorrect assertion
1293
1294         * platform/graphics/cg/ImageBufferCG.cpp:
1295         (WebCore::ImageBuffer::putImageData):
1296
1297 2008-03-02  Alp Toker  <alp@atoker.com>
1298
1299         Another fix for non-database builds after changes in r30331.
1300
1301         Conditionalize a stopDatabases() call.
1302
1303         * loader/FrameLoader.cpp:
1304         (WebCore::FrameLoader::stopLoading):
1305
1306 2008-03-02  Kevin Ollivier  <kevino@theolliviers.com>
1307
1308         Reviewed by Alp Toker.
1309
1310         Scrolling fixes. Implement page scrolling, initialize mouse wheel
1311         event variables, and remove duplicate event binding for TOP
1312         scrolling event.
1313
1314         http://bugs.webkit.org/show_bug.cgi?id=17643
1315
1316         * platform/wx/MouseWheelEventWx.cpp:
1317         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1318         * platform/wx/ScrollViewWx.cpp:
1319         (WebCore::ScrollView::ScrollViewPrivate::bindEvents):
1320         (WebCore::ScrollView::ScrollViewPrivate::OnScrollWinEvents):
1321
1322 2008-03-02  Alp Toker  <alp@atoker.com>
1323
1324         Fix building without database support after changes in r30331.
1325
1326         * dom/Document.cpp:
1327
1328 2008-03-02  Kevin Ollivier  <kevino@theolliviers.com>
1329
1330         wx build fix for Windows after PageWin.cpp move.
1331
1332         * webcore-wx.bkl:
1333
1334 2008-03-02  Kevin Ollivier  <kevino@theolliviers.com>
1335
1336         Reviewed by Dave Hyatt.
1337
1338         Gracefully handle a CSS rule containing an invalid value.
1339         (Fixes http://bugs.webkit.org/show_bug.cgi?id=16898)
1340
1341         * css/CSSGrammar.y:
1342
1343 2008-03-02  Alp Toker  <alp@atoker.com>
1344
1345         Reviewed by Mark Rowe.
1346
1347         Improve the Cairo Path::isEmpty() function
1348
1349         Use cairo_has_current_point() where available.
1350
1351         * platform/graphics/cairo/PathCairo.cpp:
1352         (WebCore::Path::isEmpty):
1353
1354 2008-03-01  Mark Rowe  <mrowe@apple.com>
1355
1356         Reviewed by Tim Hatcher.
1357
1358         Update Xcode configuration to support building debug and release from the mysterious future.
1359
1360         * Configurations/DebugRelease.xcconfig:
1361
1362 2008-03-01  Oliver Hunt  <oliver@apple.com>
1363
1364         Reviewed by Sam Weinig.
1365
1366         Bug 16954: Support putImageData
1367         
1368         Implement support for HTML5's putImageData for the CG port.  All other ports
1369         are currently just using stubs for the final blit.
1370
1371         Test: fast/canvas/canvas-putImageData.html
1372
1373         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
1374         (WebCore::JSCanvasRenderingContext2D::putImageData):
1375         * html/CanvasRenderingContext2D.cpp:
1376         (WebCore::CanvasRenderingContext2D::putImageData):
1377         * html/CanvasRenderingContext2D.h:
1378         * platform/graphics/ImageBuffer.h:
1379         * platform/graphics/cairo/ImageBufferCairo.cpp:
1380         * platform/graphics/cg/ImageBufferCG.cpp:
1381         (WebCore::ImageBuffer::putImageData):
1382         * platform/graphics/qt/ImageBufferQt.cpp:
1383         * platform/graphics/wx/ImageBufferWx.cpp:
1384
1385 2008-03-01  Jon Honeycutt  <jhoneycutt@apple.com>
1386
1387         Reviewed by Darin.
1388
1389         <rdar://problem/5772987> Crashing viewing page with two VLC plug-in
1390         instances
1391
1392         The VLC Netscape plug-in crashes if more than one instance is created.
1393
1394         Added a quirk that disallows a plug-in from having more than one
1395         instance and set this for the VLC plug-in.
1396
1397         In addition, we now sort plug-ins that handle the same MIME
1398         type to choose the most appropriate one. This sorting first sorts by
1399         whether a plug-in has an issue that should put it at the end of the
1400         list, then whether it appears in a "preferred" plug-in directory.
1401
1402         * plugins/PluginQuirkSet.h: Added PluginQuirkDontAllowMultipleInstances.
1403         * plugins/PluginDatabase.cpp:
1404         (WebCore::PluginDatabase::preferredPluginCompare): Comparator for
1405         sorting plug-ins; calls PluginPackage::compare().
1406         (WebCore::PluginDatabase::pluginForMIMEType): Add all of the plug-ins
1407         that handle this MIME type to a list, sort the list, and return the
1408         first item.
1409         (WebCore::PluginDatabase::MIMETypeForExtension): Add all of the plug-ins
1410         that handle this extension to a list, sort the list, and return the MIME
1411         type used by the plug-in at the beginning of the list.
1412         * plugins/PluginDatabase.h:
1413         * plugins/PluginPackage.h:
1414         (WebCore::PluginPackage::version): Added; returns the module version.
1415         * plugins/win/PluginDatabaseWin.cpp:
1416         (WebCore::PluginDatabase::isPreferredPluginPath): Made static; removed
1417         const.
1418         * plugins/win/PluginPackageWin.cpp:
1419         (WebCore::PluginPackage::compare): Sorts plug-ins with known issues to
1420         the end, then plug-ins in preferred directories to the beginning, then
1421         alphabetically by file name, numerically by version, and alphabetically
1422         by parent directory.
1423         (WebCore::PluginPackage::determineQuirks): Set the "don't allow multiple
1424         instances" quirk for VLC.
1425         (WebCore::PluginPackage::load): Return false if the plug-in library has
1426         already been loaded and the "don't allow multiple instances" quirk is
1427         set.
1428         * platform/gtk/TemporaryLinkStubs.cpp:
1429         (PluginPackage::compare): Added stub.
1430         (PluginDatabase::IsPreferredPluginPath): Update the GTK stub.
1431         * platform/qt/TemporaryLinkStubs.cpp:
1432         (PluginPackage::compare): Added stub.
1433         (PluginDatabase::IsPreferredPluginPath): Update the Qt stub.
1434         * platform/wx/TemporaryLinkStubs.cpp:
1435         (PluginPackage::compare): Added stub.
1436         (PluginDatabase::IsPreferredPluginPath): Update the wx stub.
1437
1438 2008-03-01  Sam Weinig  <sam@webkit.org>
1439
1440         Rubber-stamped by Mark Rowe.
1441
1442         Remove reference to the now non-existent bridge directory.
1443
1444         * WebCore.xcodeproj/project.pbxproj:
1445
1446 2008-03-01  Sam Weinig  <sam@webkit.org>
1447
1448         Reviewed by Darin Adler.
1449
1450         Search the entire prototype chain when doing early prototype lookup in
1451         the Window's getOwnPropertySlot method.
1452
1453         Makes fast/dom/Window/window-function-name-getter-precedence.html pass all tests.
1454
1455         * bindings/js/kjs_window.cpp:
1456         (KJS::Window::getOwnPropertySlot):
1457
1458 2008-03-01  Nikolas Zimmermann  <zimmermann@kde.org>
1459
1460         Reviewed by Oliver.
1461
1462         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17568 (SVGForeignObjectElement can't react to width/height SVG DOM changes)
1463
1464         As the bug title says, fix all dynamic update problems that occour with SVGForeignObjectElement.
1465
1466         Tests: svg/dynamic-updates/SVGForeignObjectElement-dom-height-attr.html
1467                svg/dynamic-updates/SVGForeignObjectElement-dom-width-attr.html
1468                svg/dynamic-updates/SVGForeignObjectElement-dom-x-attr.html
1469                svg/dynamic-updates/SVGForeignObjectElement-dom-y-attr.html
1470                svg/dynamic-updates/SVGForeignObjectElement-svgdom-height-prop.html
1471                svg/dynamic-updates/SVGForeignObjectElement-svgdom-width-prop.html
1472                svg/dynamic-updates/SVGForeignObjectElement-svgdom-x-prop.html
1473                svg/dynamic-updates/SVGForeignObjectElement-svgdom-y-prop.html
1474
1475         * svg/SVGForeignObjectElement.cpp:
1476         (WebCore::SVGForeignObjectElement::parseMappedAttribute):
1477         (WebCore::addCSSPropertyAndNotifyAttributeMap):
1478         (WebCore::SVGForeignObjectElement::svgAttributeChanged):
1479         * svg/SVGForeignObjectElement.h:
1480
1481 2008-02-29  Brady Eidson  <beidson@apple.com>
1482
1483         Reviewed by build-fix karma
1484
1485         Bonehead mistake.  Revert function to previous version for all non-Windows+CFNetwork platforms
1486
1487         * platform/network/ProtectionSpace.cpp:
1488         (WebCore::ProtectionSpace::receivesCredentialSecurely): Make my previous change conditionally
1489
1490 2008-02-29  Brady Eidson  <beidson@apple.com>
1491
1492         Reviewed by Darin
1493         
1494         <rdar://problem/5771227> - Incorrect password handling text in credential sheet
1495
1496         * platform/network/ProtectionSpace.cpp:
1497         (WebCore::ProtectionSpace::receivesCredentialSecurely): Call functional CFNetwork method to
1498           get "secureness" of the auth challenge instead of figuring it out ourselves
1499
1500 2008-02-29  Brent Fulgham  <bfulgham@gmail.com>
1501
1502         http://bugs.webkit.org/show_bug.cgi?id=17483
1503         Implement scrollbars on Windows (Cairo)
1504
1505         Reviewed by Adam Roben.
1506
1507         * platform/win/PlatfromScrollBarWin.cpp: Duplicate implementation
1508           from PlatformScrollBarWinSafari.cpp, then modify to use the
1509           native Windows theme engine.  Use SOFT_LINK.  Use platform
1510           'GetSystemMetrics' call to decide size of scrollbars and buttons.
1511
1512 2008-02-29  Adam Roben  <aroben@apple.com>
1513
1514         Windows build fix
1515
1516         * WebCore.vcproj/WebCore.vcproj: Remove bridge/* from the include path
1517         and the post-build event, and add page/win to each. Also let VS have
1518         its way with the order of the files.
1519         * page/win/PageWin.cpp: Copied from bridge/win/PageWin.cpp in r30673
1520         * page/win/GlobalHistoryWin.cpp: Copied from
1521         bridge/win/GlobalHistoryWin.cpp in r30673
1522
1523 2008-02-29  Anders Carlsson  <andersca@apple.com>
1524
1525         Build fix.
1526
1527         * WebCore.xcodeproj/project.pbxproj:
1528
1529 2008-02-29  Mark Rowe  <mrowe@apple.com>
1530
1531         Reviewed by Tim Hatcher.
1532
1533         64-bit build fix.
1534
1535         * platform/graphics/mac/SimpleFontDataMac.mm:
1536         (WebCore::pathFromFont): Provide stub implementation of pathFromFont for 64-bit as
1537         FMGetATSFontRefFromFont is not available.
1538
1539 2008-02-29  Mark Rowe  <mrowe@apple.com>
1540
1541         Build fix.  Only declare pathFromFont in debug builds as it is unused in release builds.
1542
1543         * platform/graphics/mac/SimpleFontDataMac.mm:
1544
1545 2008-02-29  Anders Carlsson  <andersca@apple.com>
1546
1547         Reviewed by Adam.
1548         
1549         Copy the remaining files in bridge/ over to page/
1550
1551         * WebCore.vcproj/WebCore.vcproj:
1552         * WebCore.xcodeproj/project.pbxproj:
1553         * bridge: Removed.
1554         * bridge/AXObjectCache.h: Removed.
1555         * bridge/EditorClient.h: Removed.
1556         * bridge/GlobalHistory.h: Removed.
1557         * bridge/win: Removed.
1558         * bridge/win/FrameCGWin.cpp: Removed.
1559         * bridge/win/FrameCairoWin.cpp: Removed.
1560         * bridge/win/FrameWin.cpp: Removed.
1561         * bridge/win/FrameWin.h: Removed.
1562         * bridge/win/GlobalHistoryWin.cpp: Removed.
1563         * bridge/win/PageWin.cpp: Removed.
1564         * page/AXObjectCache.h: Copied from bridge/AXObjectCache.h.
1565         * page/EditorClient.h: Copied from bridge/EditorClient.h.
1566         * page/GlobalHistory.h: Copied from bridge/GlobalHistory.h.
1567         * page/win/FrameCGWin.cpp: Copied from bridge/win/FrameCGWin.cpp.
1568         * page/win/FrameCairoWin.cpp: Copied from bridge/win/FrameCairoWin.cpp.
1569         * page/win/FrameWin.cpp: Copied from bridge/win/FrameWin.cpp.
1570         * page/win/FrameWin.h: Copied from bridge/win/FrameWin.h.
1571
1572 2008-02-29  Robert Blaut  <webkit@blaut.biz>
1573
1574         Reviewed by Darin Adler.
1575
1576         - fix http://bugs.webkit.org/show_bug.cgi?id=17532
1577           Webkit imports styles from <link> element which doesn't have rel=stylesheet defined
1578
1579         Test: fast/html/link-rel-stylesheet.html
1580
1581         * html/HTMLLinkElement.cpp:
1582         (WebCore::HTMLLinkElement::process):
1583
1584 2008-02-29  Mark Rowe  <mrowe@apple.com>
1585
1586         Reviewed by Anders Carlsson.
1587
1588         Replace use of WKPathFromFont with implementation in terms of public API.
1589
1590         * WebCore.base.exp: Remove unused symbol.
1591         * platform/graphics/mac/SimpleFontDataMac.mm:
1592         (WebCore::initFontData):
1593         (WebCore::pathFromFont): Implement pathFromFont in terms of public API.
1594         (WebCore::SimpleFontData::platformInit):
1595         * platform/mac/WebCoreSystemInterface.h: Remove unused symbol.
1596         * platform/mac/WebCoreSystemInterface.mm: Ditto.
1597
1598 2008-02-29  Anders Carlsson  <andersca@apple.com>
1599
1600         Reviewed by Adam.
1601
1602         Move a bunch of files from bridge/mac to page/mac.
1603         
1604         * WebCore.xcodeproj/project.pbxproj:
1605         * bridge/mac: Removed.
1606         * bridge/mac/AXObjectCacheMac.mm: Removed.
1607         * bridge/mac/GlobalHistoryMac.mm: Removed.
1608         * bridge/mac/WebCoreAXObject.h: Removed.
1609         * bridge/mac/WebCoreAXObject.mm: Removed.
1610         * bridge/mac/WebCoreScriptDebugger.h: Removed.
1611         * bridge/mac/WebCoreScriptDebugger.mm: Removed.
1612         * page/mac/AXObjectCacheMac.mm: Copied from bridge/mac/AXObjectCacheMac.mm.
1613         * page/mac/GlobalHistoryMac.mm: Copied from bridge/mac/GlobalHistoryMac.mm.
1614         * page/mac/WebCoreAXObject.h: Copied from bridge/mac/WebCoreAXObject.h.
1615         * page/mac/WebCoreAXObject.mm: Copied from bridge/mac/WebCoreAXObject.mm.
1616         * page/mac/WebCoreScriptDebugger.h: Copied from bridge/mac/WebCoreScriptDebugger.h.
1617         * page/mac/WebCoreScriptDebugger.mm: Copied from bridge/mac/WebCoreScriptDebugger.mm.
1618
1619 2008-02-29  David Hyatt  <hyatt@apple.com>
1620
1621         Fix for http://bugs.webkit.org/show_bug.cgi?id=17559, media query tests crashing under
1622         guard malloc.  Pass along the style selector so it can be accessed, since it has not yet
1623         been assigned into the document's member variable.
1624
1625         Reviewed by aroben
1626
1627         * css/CSSStyleSelector.cpp:
1628         (WebCore::CSSRuleSet::addRulesFromSheet):
1629         * css/MediaQueryEvaluator.cpp:
1630         (WebCore::MediaQueryEvaluator::eval):
1631         * css/MediaQueryEvaluator.h:
1632
1633 2008-02-29  David Hyatt  <hyatt@apple.com>
1634
1635         <rdar://problem/5755916> REGRESSION: Loading HTML5 spec is 5x slower on TOT than in 3.0.4
1636
1637         Improve the performance of dynamic sibling and CSS3 selectors so that there is no slowdown any more.
1638         Be more precise in terms of what nodes we mark dirty.
1639
1640         Reviewed by Beth
1641
1642         * css/CSSStyleSelector.cpp:
1643         (WebCore::CSSStyleSelector::checkSelector):
1644         * dom/Element.cpp:
1645         (WebCore::Element::recalcStyle):
1646         (WebCore::checkForSiblingStyleChanges):
1647         (WebCore::Element::childrenChanged):
1648         (WebCore::Element::finishParsingChildren):
1649         * rendering/RenderStyle.cpp:
1650         (WebCore::RenderStyle::RenderStyle):
1651         * rendering/RenderStyle.h:
1652         (WebCore::RenderStyle::childrenAffectedByPositionalRules):
1653         (WebCore::RenderStyle::childrenAffectedByDirectAdjacentRules):
1654         (WebCore::RenderStyle::setChildrenAffectedByDirectAdjacentRules):
1655
1656 2008-02-29  Alexey Proskuryakov  <ap@webkit.org>
1657
1658         Reviewed by Darin.
1659
1660         <rdar://problem/5766352> REGRESSION (r27151): XMLHttpRequest.abort() resets response status
1661
1662         Test: http/tests/xmlhttprequest/status-after-abort.html
1663
1664         * xml/XMLHttpRequest.cpp:
1665         (WebCore::XMLHttpRequest::getStatus):
1666         (WebCore::XMLHttpRequest::getStatusText):
1667         Changed to match Firefox more closely (IE just raises an exception in most of those cases).
1668
1669 2008-02-29  Dan Bernstein  <mitz@apple.com>
1670
1671         Reviewed by Darin Adler.
1672
1673         - fix a bug where explicit embedding past the end of a line could
1674           affect text that line
1675
1676         Test: fast/text/embed-at-end-of-pre-wrap-line.html
1677
1678         * rendering/bidi.cpp:
1679         (WebCore::RenderBlock::skipWhitespace): Removed calls to
1680         setAdjustEmbedding().
1681         (WebCore::RenderBlock::findNextLineBreak): Added calls to
1682         setAdjustEmbedding() around skipWhitespace() only where needed.
1683
1684 2008-02-29  Mark Rowe  <mrowe@apple.com>
1685
1686         Reviewed by Oliver Hunt.
1687
1688         Don't use WKSupportsMultipartXMixedReplace on Leopard as multipart/x-mixed-replace is always handled by NSURLRequest.
1689
1690         * platform/mac/WebCoreSystemInterface.h: Don't declare WKSupportsMultipartXMixedReplace on Leopard.
1691         * platform/mac/WebCoreSystemInterface.mm: Ditto.
1692         * platform/network/mac/ResourceRequestMac.mm:
1693         (WebCore::ResourceRequest::doUpdatePlatformRequest): Don't call WKSupportsMultipartXMixedReplace on Leopard.
1694         * WebCore.Tiger.exp: Move Tiger-only symbol here.
1695         * WebCore.base.exp:
1696
1697 2008-02-29  Mark Rowe  <mrowe@apple.com>
1698
1699         Rubber-stamped by Eric Seidel.
1700
1701         Remove unneeded includes of WebCoreSystemInterface.h.
1702
1703         * loader/mac/LoaderNSURLExtras.m:
1704         * page/mac/FrameMac.mm:
1705         * page/mac/WebCoreFrameBridge.mm:
1706         * platform/MIMETypeRegistry.cpp:
1707         * platform/graphics/mac/ImageMac.mm:
1708         * platform/mac/PasteboardMac.mm:
1709
1710 2008-02-29  Mark Rowe  <mrowe@apple.com>
1711
1712         Reviewed by Oliver Hunt and Oliver Hunt.
1713
1714         <rdar://problem/4753845> WebKit should use CGEventSourceSecondsSinceLastEventType in place of WKSecondsSinceLastInputEvent SPI.
1715
1716         * platform/mac/SystemTimeMac.cpp:  Replace use of WKSecondsSinceLastInputEvent with CGEventSourceSecondsSinceLastEventType.
1717         * platform/mac/WebCoreSystemInterface.h:  Remove unused symbol.
1718         * platform/mac/WebCoreSystemInterface.mm:  Ditto.
1719         * WebCore.base.exp:  Ditto.
1720
1721 2008-02-28  Mark Rowe  <mrowe@apple.com>
1722
1723         Reviewed by Dave Hyatt.
1724
1725         Make use of new CGFont APIs on Leopard rather than making a WebKitSystemInterface call.
1726
1727         * DerivedSources.make:  Add Tiger-only symbols to the export file when running on Tiger.
1728         * WebCore.Tiger.exp:  Added.  Move Tiger-only symbol here from WebCore.base.exp.
1729         * WebCore.base.exp:
1730         * platform/graphics/mac/SimpleFontDataMac.mm:
1731         (WebCore::SimpleFontData::platformInit):  Use Leopard APIs when building on Leopard.
1732         * platform/mac/WebCoreSystemInterface.h:  Don't declare wkGetFontMetrics on Leopard as it is unused.
1733         * platform/mac/WebCoreSystemInterface.mm:  Ditto.
1734
1735 2008-02-28  Matt Lilek  <webkit@mattlilek.com>
1736
1737         Reviewed by Tim Hatcher.
1738
1739         Bug 16535: Stylesheets loaded with @import are not editable
1740         http://bugs.webkit.org/show_bug.cgi?id=16535
1741         <rdar://problem/5712899>
1742
1743         Sheets loaded using @import were incorrectly being flagged as non-editable
1744         user agent sheets because their parent sheet doesn't have an ownerNode. We now
1745         check to make sure sheets also don't have a href before restricting their editability.
1746
1747         * page/inspector/StylesSidebarPane.js:
1748
1749 2008-02-28  Rodney Dawes  <dobey@wayofthemonkey.com>
1750
1751         Reviewed by Adam Roben.
1752
1753         Copy PluginPackageWin.cpp to shared PluginPackage.cpp.
1754         Add PluginPackage.cpp to build configurations.
1755         Remove PluginPackage destructor from TemporaryLinkStubs.cpp.
1756         Use cross-platform pathGetFilename method.
1757         Remove platform-specific code from shared PluginPackage implementation.
1758         Remove shared code from PluginPackageWin.cpp.
1759
1760         * GNUmakefile.am:
1761         * WebCore.pro:
1762         * WebCoreSources.bkl:
1763         * WebCore.vcproj/WebCore.vcproj:
1764         * platform/gtk/TemporaryLinkStubs.cpp:
1765         * platform/qt/TemporaryLinkStubs.cpp:
1766         * platform/wx/TemporaryLinkStubs.cpp:
1767         * plugins/PluginPackage.cpp:
1768         * plugins/win/PluginPackageWin.cpp:
1769
1770 2008-02-28  Justin Garcia  <justin.garcia@apple.com>
1771
1772         Reviewed by Darin Adler.
1773
1774         <rdar://problem/4930986> REGRESSION: Paste As Quotation pastes black text instead of blue
1775         
1776         Add a second style span at copy time to hold document default styles.  This helps us
1777         differentiate between those and user applied styles at paste time, where we'll want
1778         to let Mail's Paste As Quotation blockquote override document default styles, but
1779         not others.
1780
1781         * css/CSSComputedStyleDeclaration.cpp:
1782         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Changed the unit type used 
1783         for -webkit-text-stroke-width from CSS_NUMBER to CSS_PX, to match other properties that 
1784         are thick | medium | thin | <length>.  Before, there was a mismatch between the unit 
1785         type of -webkit-text-stroke-width property values in a CSSComputedStyleDeclaration for 
1786         an element and that element's inlineStyleDecl(), causing identical values to always appear 
1787         different to diff().
1788         * editing/ReplaceSelectionCommand.cpp:
1789         (WebCore::ReplaceSelectionCommand::handlePasteAsQuotationNode): Fixed.  Don't just change
1790         the class to an empty string, completely remove it, it's no longer needed.
1791         (WebCore::handleStyleSpansBeforeInsertion): Moved the optimization from doApply here.
1792         (WebCore::ReplaceSelectionCommand::handleStyleSpans): 
1793         Added, replaces removeRedundantStyles.
1794         We aren't (yet) removing all redundant styles, just those on style spans, so I removed the
1795         unused code and renamed the function.
1796         There won't be more than two style spans that we need to consider, the one with the 
1797         source document's default styles and styles on the commonAncestor of the copied Range, 
1798         so don't look for more than two.
1799         Let elements that wrap the incoming fragment override the source document's styles.
1800         (WebCore::ReplaceSelectionCommand::doApply): Moved code to handleStyleSpansBeforeInsertion
1801         and call the renamed handleStyleSpans.
1802         * editing/ReplaceSelectionCommand.h:
1803         * editing/markup.cpp:
1804         (WebCore::removeDefaultStyles): Added.  Don't add document defaults to the style span
1805         that holds user applied styles, since they'll be added to their own style span.
1806         (WebCore::createMarkup):
1807         Add a second style span that holds just the document defaults. This lets us differentiate
1808         between those and user applied styles at paste time.
1809         Mail blockquotes are just another type of special element, moved their handling there. This
1810         also lets paste code make assumptions about the position of the two style spans (they are 
1811         *always* parent-child).
1812
1813 2008-02-28  Brent Fulgham <bfulgham@gmail.com>
1814
1815         http://bugs.webkit.org/show_bug.cgi?id=17576
1816         Modify RenderThemeWin to use SOFT_LINK
1817
1818         Reviewed by Adam Roben.
1819
1820         * rendering/RenderThemeWin.h: Remove unneeded library handle
1821         * rendering/RenderThemeWin.cpp: Change to use SOFT_LINK
1822           rather than hand-coded load library calls.
1823
1824 2008-02-28  Dan Bernstein  <mitz@apple.com>
1825
1826         Reviewed by Darin Adler.
1827
1828         - fix http://bugs.webkit.org/show_bug.cgi?id=17590
1829           ASSERTION FAILED: subject in jsRegExpExecute()
1830
1831         * page/mac/FrameMac.mm:
1832         (WebCore::Frame::matchLabelsAgainstElement): Added an early return in
1833         case the element name is empty.
1834
1835 2008-02-28  Justin Garcia  <justin.garcia@apple.com>
1836
1837         Reviewed by Dan Bernstein
1838         
1839         Small editing speed up.
1840         
1841         * dom/Position.cpp:
1842         (WebCore::Position::upstream): Don't check for a change in editability
1843         if the current node hasn't changed.
1844         (WebCore::Position::downstream): Ditto.
1845
1846 2008-02-27  Dan Bernstein  <mitz@apple.com>
1847
1848         Reviewed by John Sullivan.
1849
1850         - fix <rdar://problem/5607547> Single letter surrounded by soft hyphens can disappear
1851
1852         Test: fast/text/soft-hyphen-2.html
1853
1854         * rendering/bidi.cpp:
1855         (WebCore::chopMidpointsAt): Changed to iterate midpoints backwards, so
1856         that if there are two midpoints at the given position, only the last one
1857         will be chopped off.
1858
1859 2008-02-27  Dan Bernstein  <mitz@apple.com>
1860
1861         Reviewed by Darin Adler.
1862
1863         - make centered text in right-to-left blocks spill over to the left
1864
1865         Test: fast/text/align-center-rtl-spill.html
1866
1867         * rendering/bidi.cpp:
1868         (WebCore::RenderBlock::computeHorizontalPositionsForLine):
1869
1870 2008-02-27  Dan Bernstein  <mitz@apple.com>
1871
1872         Reviewed by Darin Adler.
1873
1874         - more bidi.cpp cleanup
1875
1876         * platform/text/BidiResolver.h:
1877         (WebCore::BidiCharacterRun::destroy): Added. Overridden by BidiRun .
1878         (WebCore::BidiResolver<Iterator, Run>::addRun): Moved BidiState::addRun()
1879         here.
1880         (WebCore::BidiResolver<Iterator, Run>::appendRun): Changed to use
1881         addRun().
1882         (WebCore::BidiResolver<Iterator, Run>::deleteRuns): Changed to use
1883         destroy(), avoiding the need to specialize this method in BidiState.
1884         * rendering/bidi.cpp:
1885         (WebCore::BidiRun::destroy): Removed the RenderArena parameter.
1886         (WebCore::BidiState::deleteRuns): Removed now-unnecessary specialization.
1887         (WebCore::BidiState::addRun): Removed now-unnecessary specialization.
1888         (WebCore::RenderBlock::createLineBoxes): 
1889         (WebCore::RenderBlock::constructLine):
1890         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Added a FIXME.
1891         (WebCore::RenderBlock::computeVerticalPositionsForLine):
1892         (WebCore::buildCompactRuns):
1893         (WebCore::RenderBlock::layoutInlineChildren):
1894         (WebCore::RenderBlock::determineStartPosition):
1895         (WebCore::RenderBlock::determineEndPosition):
1896         (WebCore::RenderBlock::matchedEndLine):
1897         (WebCore::skipNonBreakingSpace):
1898         (WebCore::RenderBlock::skipWhitespace):
1899         (WebCore::shouldSkipWhitespaceAfterStartObject):
1900         * rendering/bidi.h:
1901         (WebCore::BidiRun): Added m_ prefixes to several member variables. 
1902
1903 2008-02-27  Sam Weinig  <sam@webkit.org>
1904
1905         Reviewed by Darin.
1906
1907         Fix for <rdar://problem/5768769>
1908
1909         - Don't allow cross-origin calls using window.functionName.call(otherFrame)
1910           syntax.
1911
1912         * bindings/js/JSLocation.cpp:
1913         (WebCore::jsLocationProtoFuncToString): Do same-origin check.
1914         * bindings/js/kjs_window.cpp:
1915         (KJS::windowProtoFuncAToB): Ditto.
1916         (KJS::windowProtoFuncBToA): Ditto.
1917         (KJS::windowProtoFuncOpen): Ditto.
1918         (KJS::windowProtoFuncClearTimeout): Ditto.
1919         * bindings/scripts/CodeGeneratorJS.pm: Ditto.
1920
1921 2008-02-27  David Hyatt  <hyatt@apple.com>
1922
1923         More cleanup in preparation for fixing the HTML5 spec performance regression.
1924
1925         Reviewed by Sam Weinig
1926
1927         * dom/Attr.cpp:
1928         (WebCore::Attr::childrenChanged):
1929         * dom/Attr.h:
1930         * dom/ContainerNode.cpp:
1931         (WebCore::ContainerNode::insertBefore):
1932         (WebCore::ContainerNode::replaceChild):
1933         (WebCore::ContainerNode::removeChild):
1934         (WebCore::ContainerNode::removeChildren):
1935         (WebCore::ContainerNode::appendChild):
1936         (WebCore::ContainerNode::addChild):
1937         (WebCore::ContainerNode::childrenChanged):
1938         * dom/ContainerNode.h:
1939         * dom/Document.cpp:
1940         (WebCore::Document::childrenChanged):
1941         * dom/Document.h:
1942         * dom/Element.cpp:
1943         (WebCore::Element::childrenChanged):
1944         * dom/Element.h:
1945         * dom/Node.h:
1946         (WebCore::Node::childrenChanged):
1947         * html/HTMLObjectElement.cpp:
1948         (WebCore::HTMLObjectElement::childrenChanged):
1949         * html/HTMLObjectElement.h:
1950         * html/HTMLOptGroupElement.cpp:
1951         (WebCore::HTMLOptGroupElement::childrenChanged):
1952         * html/HTMLOptGroupElement.h:
1953         * html/HTMLOptionElement.cpp:
1954         (WebCore::HTMLOptionElement::childrenChanged):
1955         * html/HTMLOptionElement.h:
1956         * html/HTMLScriptElement.cpp:
1957         (WebCore::HTMLScriptElement::childrenChanged):
1958         * html/HTMLScriptElement.h:
1959         * html/HTMLSelectElement.cpp:
1960         (WebCore::HTMLSelectElement::childrenChanged):
1961         * html/HTMLSelectElement.h:
1962         * html/HTMLStyleElement.cpp:
1963         (WebCore::HTMLStyleElement::childrenChanged):
1964         * html/HTMLStyleElement.h:
1965         * html/HTMLTextAreaElement.cpp:
1966         (WebCore::HTMLTextAreaElement::childrenChanged):
1967         * html/HTMLTextAreaElement.h:
1968         * html/HTMLTitleElement.cpp:
1969         (WebCore::HTMLTitleElement::childrenChanged):
1970         * html/HTMLTitleElement.h:
1971         * svg/SVGClipPathElement.cpp:
1972         (WebCore::SVGClipPathElement::childrenChanged):
1973         * svg/SVGClipPathElement.h:
1974         * svg/SVGDefinitionSrcElement.cpp:
1975         (WebCore::SVGDefinitionSrcElement::childrenChanged):
1976         * svg/SVGDefinitionSrcElement.h:
1977         * svg/SVGFontFaceElement.cpp:
1978         (WebCore::SVGFontFaceElement::childrenChanged):
1979         * svg/SVGFontFaceElement.h:
1980         * svg/SVGFontFaceFormatElement.cpp:
1981         (WebCore::SVGFontFaceFormatElement::childrenChanged):
1982         * svg/SVGFontFaceFormatElement.h:
1983         * svg/SVGFontFaceSrcElement.cpp:
1984         (WebCore::SVGFontFaceSrcElement::childrenChanged):
1985         * svg/SVGFontFaceSrcElement.h:
1986         * svg/SVGFontFaceUriElement.cpp:
1987         (WebCore::SVGFontFaceUriElement::childrenChanged):
1988         * svg/SVGFontFaceUriElement.h:
1989         * svg/SVGGElement.cpp:
1990         (WebCore::SVGGElement::childrenChanged):
1991         * svg/SVGGElement.h:
1992         * svg/SVGGradientElement.cpp:
1993         (WebCore::SVGGradientElement::childrenChanged):
1994         * svg/SVGGradientElement.h:
1995         * svg/SVGMarkerElement.cpp:
1996         (WebCore::SVGMarkerElement::childrenChanged):
1997         * svg/SVGMarkerElement.h:
1998         * svg/SVGMaskElement.cpp:
1999         (WebCore::SVGMaskElement::childrenChanged):
2000         * svg/SVGMaskElement.h:
2001         * svg/SVGPatternElement.cpp:
2002         (WebCore::SVGPatternElement::childrenChanged):
2003         * svg/SVGPatternElement.h:
2004         * svg/SVGStyleElement.cpp:
2005         (WebCore::SVGStyleElement::childrenChanged):
2006         * svg/SVGStyleElement.h:
2007         * svg/SVGStyledElement.cpp:
2008         (WebCore::SVGStyledElement::childrenChanged):
2009         * svg/SVGStyledElement.h:
2010         * svg/SVGTitleElement.cpp:
2011         (WebCore::SVGTitleElement::childrenChanged):
2012         * svg/SVGTitleElement.h:
2013         * svg/SVGUseElement.cpp:
2014         (WebCore::SVGUseElement::childrenChanged):
2015         * svg/SVGUseElement.h:
2016
2017 2008-02-27  Julien Chaffraix <julien.chaffraix@gmail.com>
2018
2019         Reviewed by Alexey.
2020
2021         http://bugs.webkit.org/show_bug.cgi?id=17481
2022         Several consecutive calls to XMLHttpRequest::open should dispatch only one readyState event
2023
2024         Test: http/tests/xmlhttprequest/xmlhttprequest-multiple-open.html
2025
2026         * xml/XMLHttpRequest.cpp:
2027         (WebCore::XMLHttpRequest::open):
2028
2029 2008-02-27  Sriram Neelakandan  <sriram.neelakandan@gmail.com>
2030
2031         Reviewed, tweaked and landed by ap.
2032
2033         http://bugs.webkit.org/show_bug.cgi?id=17487
2034         HTMLInput mysteriously fails to work if ICU dat file is missing
2035
2036         * platform/text/TextBreakIteratorICU.cpp: (WebCore::setUpIterator): Assert that the iterator
2037         has been opened.
2038
2039 2008-02-27  Adam Roben  <aroben@apple.com>
2040
2041         Windows build fix after r30616
2042
2043         * platform/win/ClipboardWin.cpp:
2044
2045 2008-02-27  Nikolas Zimmermann  <zimmermann@kde.org>
2046
2047         Reviewed by Simon.
2048
2049         Small style cleanup, and obvious fix: SVGGElement reacted on
2050         'clipPathUnits' changes, which is a funny copy&paste error.
2051
2052         * svg/SVGGElement.cpp:
2053         (WebCore::SVGGElement::parseMappedAttribute):
2054         (WebCore::SVGGElement::svgAttributeChanged):
2055         (WebCore::SVGGElement::createRenderer):
2056
2057 2008-02-27  Nikolas Zimmermann  <zimmermann@kde.org>
2058
2059         Reviewed by Simon.
2060
2061         Cleanup coding style. Still on my way to fix dynamic updates of all SVG elements.
2062         Currently at SVGF*. SVGDefs/DescElement don't need any dyn update fixes but cleanups.
2063
2064         * svg/SVGDefsElement.cpp:
2065         (WebCore::SVGDefsElement::createRenderer):
2066         * svg/SVGDefsElement.h:
2067         * svg/SVGDescElement.h:
2068
2069 2008-02-26  Antti Koivisto  <antti@apple.com>
2070
2071         Reviewed by Darin.
2072
2073         Fix <rdar://problem/5761326>
2074         REGRESSION: 1.5% -2% Sunspider regression from r30009 (ebay photo upload hang)
2075         
2076         Generate better code with VS:
2077         - Use ALWAYS_INLINE macro to guarantee versions of allowsAccessFrom() are reduced to single functions
2078         - Refactor error reporting so that there is no need to construct/destruct Strings in common cases
2079         - Add a separate version of the function for cases where error messages are not wanted
2080
2081         * bindings/js/JSDOMWindowCustom.cpp:
2082         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
2083         * bindings/js/kjs_window.cpp:
2084         (KJS::Window::allowsAccessFrom):
2085         (KJS::Window::allowsAccessFromNoErrorMessage):
2086         (KJS::Window::allowsAccessFromPrivate):
2087         (KJS::Window::crossDomainAccessErrorMessage):
2088         * bindings/js/kjs_window.h:
2089
2090 2008-02-26  Sam Weinig  <sam@webkit.org>
2091
2092         Reviewed by Dave Hyatt.
2093
2094         - remove DeprecatedCString, DeprecatedArray, and ArrayImpl.
2095
2096         * GNUmakefile.am:
2097         * WebCore.pro:
2098         * WebCore.vcproj/WebCore.vcproj:
2099         * WebCore.xcodeproj/project.pbxproj:
2100         * WebCoreSources.bkl:
2101         * platform/ArrayImpl.cpp: Removed.
2102         * platform/ArrayImpl.h: Removed.
2103         * platform/DeprecatedArray.h: Removed.
2104         * platform/DeprecatedCString.cpp: Removed.
2105         * platform/DeprecatedCString.h: Removed.
2106         * platform/text/CString.cpp:
2107         (WebCore::CString::length):
2108         * platform/text/CString.h:
2109
2110 2008-02-26  David Hyatt  <hyatt@apple.com>
2111
2112         Cleanup of childrenChanged in preparation for fixing the HTML5 spec slowdown.
2113
2114         Reviewed by Sam Weinig
2115
2116         * dom/Attr.cpp:
2117         (WebCore::Attr::childrenChanged):
2118         * dom/ContainerNode.cpp:
2119         (WebCore::ContainerNode::insertBefore):
2120         (WebCore::ContainerNode::replaceChild):
2121         (WebCore::ContainerNode::removeChild):
2122         (WebCore::ContainerNode::removeChildren):
2123         (WebCore::ContainerNode::appendChild):
2124         (WebCore::ContainerNode::addChild):
2125         (WebCore::ContainerNode::childrenChanged):
2126         * dom/ContainerNode.h:
2127         * dom/EventTargetNode.cpp:
2128         (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent):
2129         * dom/EventTargetNode.h:
2130         * dom/NamedAttrMap.cpp:
2131         (WebCore::NamedAttrMap::addAttribute):
2132         (WebCore::NamedAttrMap::removeAttribute):
2133
2134 2008-02-26  Darin Adler  <darin@apple.com>
2135
2136         Reviewed by Sam.
2137
2138         - remove use of DeprecatedCString from Windows pasteboard code
2139
2140         * platform/win/ClipboardUtilitiesWin.cpp:
2141         (WebCore::createGlobalData): Added an overload for Vector<char>.
2142         Streamlined the logic a bit.
2143         (WebCore::append): Added. Helper functions for appending to a
2144         Vector<char>.
2145         (WebCore::markupToCF_HTML): Rewrote to use Vector<char> instead
2146         of DeprecatedCString. Also simplified the logic a bit and used
2147         macros to handle the integer width.
2148         (WebCore::urlToMarkup): Use Vector<UChar> instead of String.
2149         (WebCore::replaceNewlinesWithWindowsStyleNewlines): Tweaked.
2150         * platform/win/ClipboardUtilitiesWin.h: Update type of return
2151         value from markupToCF_HTML. Did a bit of streamlining too.
2152         * platform/win/ClipboardWin.cpp:
2153         (WebCore::writeURL): Update for above changes.
2154         (WebCore::ClipboardWin::declareAndWriteDragImage): Ditto.
2155         (WebCore::ClipboardWin::writeRange): Ditto.
2156         * platform/win/PasteboardWin.cpp:
2157         (WebCore::Pasteboard::writeSelection): Ditto.
2158         (WebCore::Pasteboard::writeURL): Ditto.
2159
2160 2008-02-26  Timothy Hatcher  <timothy@apple.com>
2161
2162         Reviewed by Adam Roben.
2163
2164         <rdar://problem/5712777> REGRESSION: Arrow up/down in inspector
2165         source list does not scroll when item at edge is reached (16572)
2166
2167         Use scrollIntoViewIfNeeded() instead of the hand-rolled scrollToElement
2168         we were using in utilities.js.
2169
2170         * page/inspector/DocumentPanel.js: Use scrollIntoViewIfNeeded instead of scrollToElement.
2171         * page/inspector/Resource.js: Ditto.
2172         * page/inspector/inspector.js: Ditto.
2173         * page/inspector/SourcePanel.js: Use scrollIntoViewIfNeeded instead
2174         of scrollIntoView, so the source line is centered in the view if needed.
2175         * page/inspector/utilities.js: Removed scrollToElement().
2176
2177 2008-02-26  David Hyatt  <hyatt@apple.com>
2178
2179         Reviewed by Dan
2180
2181         http://bugs.webkit.org/show_bug.cgi?id=17485
2182
2183         Refine our behavior for empty inlines so that they work more correctly with margins/borders/padding.
2184         Fixes a regression on huffingtonpost.com.
2185
2186         New tests added to fast/inline
2187
2188         * rendering/InlineFlowBox.cpp:
2189         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2190         (WebCore::InlineFlowBox::placeBoxesVertically):
2191         (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
2192         * rendering/RenderFlow.cpp:
2193         (WebCore::RenderFlow::calcMargins):
2194         * rendering/RenderFlow.h:
2195         * rendering/RenderObject.h:
2196         (WebCore::RenderObject::hasHorizontalBordersPaddingOrMargin):
2197         (WebCore::RenderObject::hasHorizontalBordersOrPadding):
2198         * rendering/bidi.cpp:
2199         (WebCore::getBorderPaddingMargin):
2200         (WebCore::RenderBlock::layoutInlineChildren):
2201         (WebCore::inlineFlowRequiresLineBox):
2202
2203 2008-02-26  Sam Weinig  <sam@webkit.org>
2204
2205         Fix Windows build.
2206
2207         * platform/text/PlatformString.h:
2208         (WebCore::reverseFind):
2209
2210 2008-02-26  Dan Bernstein  <mitz@apple.com>
2211
2212         Reviewed by Darin Adler.
2213
2214         - fix http://bugs.webkit.org/show_bug.cgi?id=17555
2215           <rdar://problem/5766016> REGRESSION (r27351): Thumbnails positioned wrong on Getty Images results page
2216
2217         Test: fast/dynamic/subtree-table-cell-height.html
2218
2219         * rendering/RenderObject.cpp:
2220         (WebCore::objectIsRelayoutBoundary): Exclude table cells, since their
2221         height depends on their contents even if the CSS height property is
2222         fixed.
2223
2224 2008-02-25  Sam Weinig  <sam@webkit.org>
2225
2226         Reviewed by Dan Bernstein.
2227
2228         Make the cleanPath function in CSSStyleSelector more efficient by using
2229         a Vector<UChar>.
2230
2231         * css/CSSStyleSelector.cpp:
2232         (WebCore::cleanPath): Make this function work on a Vector<UChar> instead
2233         of a String.  Also remove unnecessary reverseFind call that could be acomplished
2234         with two compares.
2235         (WebCore::checkPseudoState): Remove reserveCapacity calls now that we are using
2236         a stack buffer.
2237         * platform/text/PlatformString.h:
2238         (WebCore::find): Make this find generic enough that it can be used for
2239         String::find.
2240         (WebCore::reverseFind): Implement reverseFind so that it can be used
2241         for with a UChar* and length.
2242         * platform/text/StringImpl.cpp:
2243         (WebCore::StringImpl::find): Use implementation in PlatformString.cpp
2244         (WebCore::StringImpl::reverseFind): Ditto,
2245
2246 2008-02-26  Satoshi Nakagawa  <artension@gmail.com>
2247
2248         Reviewed by Darin. Tweaked and landed by Alexey.
2249
2250         http://bugs.webkit.org/show_bug.cgi?id=17411
2251         Ideographic comma and full stop should be treated as line-breakable characters
2252
2253         Test: fast/text/line-breaks-after-ideographic-comma-or-full-stop.html
2254
2255         * platform/text/CharacterNames.h: Added ideographicComma and ideographicFullStop.
2256         * rendering/break_lines.cpp: (WebCore::shouldBreakAfter): Added a workaround for an issue in
2257         Unicode 5.0 that is causing this.
2258
2259 2008-02-26  MorganL  <morganl.webkit@yahoo.com>
2260
2261         Reviewed by eseidel.  Landed by eseidel
2262
2263         Fix improperly initialized m_isUpToDate member variable.
2264         Fixs 50+ layout tests when run on Tiger.
2265         http://bugs.webkit.org/show_bug.cgi?id=17549
2266
2267         * platform/network/cf/ResourceResponse.h:
2268         (WebCore::ResourceResponse::ResourceResponse):
2269         * platform/network/mac/ResourceResponse.h:
2270         (WebCore::ResourceResponse::ResourceResponse):
2271
2272 2008-02-25  Dan Bernstein  <mitz@apple.com>
2273
2274         Reviewed by Sam Weinig.
2275
2276         - fix http://bugs.webkit.org/show_bug.cgi?id=17152
2277           Paragraphs indented with :first-letter and text-align CSS render incorrectly
2278
2279         Test: fast/text/apply-start-width-after-skipped-text.html
2280
2281         * rendering/bidi.cpp:
2282         (WebCore::RenderBlock::findNextLineBreak): Improved the logic for when
2283         to figure in the padding, border and margin before a text node when the
2284         line begins inside a text node.
2285
2286 2008-02-25  Kevin Ollivier  <kevino@theolliviers.com>
2287
2288         Windows build fix for wx port.
2289
2290         * loader/FTPDirectoryDocument.cpp:
2291
2292 2008-02-25  Mark Rowe  <mrowe@apple.com>
2293
2294         Windows build fix.
2295
2296         * platform/network/cf/ResourceResponseCFNet.cpp:
2297         (WebCore::ResourceResponse::platformCompare):  Implement platformCompare for ResourceResponseCFNet.cpp.
2298
2299 2008-02-25  Beth Dakin  <bdakin@apple.com>
2300
2301         Reviewed by Geoff.
2302
2303         Fixed for <rdar://problem/5760530> REGRESSION: Assertion failure in 
2304         Document::removePendingSheet() from r30438
2305
2306         r30438 added a call to CachedResource::error() from inside 
2307         Loader::didReceiveData() if a CSS file 4xxs. There was an 
2308         assumption in the loader, though, that either error() would be 
2309         called, or didFinishLoading() would be called, so some work is 
2310         duplicated in each. Now that we are calling an error() on files 
2311         that will also make it to didFinishLoading() (since they succeeded 
2312         in the network layer), we need to make sure we do not duplicate the 
2313         work. CachedCSSStyleSheet::error() calls checkNotify, which ends up 
2314         decrementing the document's pending style sheet counter. 
2315         checkNotify() was still getting called, though, through the normal  
2316         didFinishLoading code path, and the counter was being decremented 
2317         twice. Bad!
2318
2319         * loader/loader.cpp:
2320         (WebCore::Loader::didFinishLoading):
2321         (WebCore::Loader::didReceiveData):
2322
2323 2008-02-25  Mark Rowe  <mrowe@apple.com>
2324
2325         Fix the Gtk, wx and Qt builds.
2326
2327         * GNUmakefile.am: Add new files.
2328         * WebCore.pro: Ditto.
2329         * WebCoreSources.bkl: Ditto.
2330         * platform/network/AuthenticationChallengeBase.h: Fix up argument types.
2331
2332 2008-02-25  MorganL  <morganl.webkit@yahoo.com>
2333
2334         Reviewed by Darin Adler.
2335
2336         Eliminate some #ifdefs from headers in platform/network.
2337         http://bugs.webkit.org/show_bug.cgi?id=17210
2338
2339         * WebCore.base.exp:
2340         * WebCore.order:
2341         * WebCore.vcproj/WebCore.vcproj:
2342         * WebCore.xcodeproj/project.pbxproj:
2343         * dom/XMLTokenizer.cpp:
2344         * loader/ResourceLoader.h:
2345         * platform/network/AuthenticationChallenge.cpp: Removed.
2346         * platform/network/AuthenticationChallenge.h: Removed.
2347         * platform/network/AuthenticationChallengeBase.cpp: Copied from platform/network/AuthenticationChallenge.cpp.
2348         (WebCore::AuthenticationChallengeBase::AuthenticationChallengeBase):
2349         (WebCore::AuthenticationChallengeBase::previousFailureCount):
2350         (WebCore::AuthenticationChallengeBase::proposedCredential):
2351         (WebCore::AuthenticationChallengeBase::protectionSpace):
2352         (WebCore::AuthenticationChallengeBase::failureResponse):
2353         (WebCore::AuthenticationChallengeBase::error):
2354         (WebCore::AuthenticationChallengeBase::isNull):
2355         (WebCore::AuthenticationChallengeBase::nullify):
2356         (WebCore::AuthenticationChallengeBase::compare):
2357         * platform/network/AuthenticationChallengeBase.h: Copied from platform/network/AuthenticationChallenge.h.
2358         (WebCore::AuthenticationChallengeBase::platformCompare):
2359         (WebCore::operator==):
2360         (WebCore::operator!=):
2361         * platform/network/ResourceError.cpp: Removed.
2362         * platform/network/ResourceError.h: Removed.
2363         * platform/network/ResourceErrorBase.cpp: Copied from platform/network/ResourceError.cpp.
2364         (WebCore::ResourceErrorBase::lazyInit):
2365         (WebCore::ResourceErrorBase::compare):
2366         * platform/network/ResourceErrorBase.h: Copied from platform/network/ResourceError.h.
2367         (WebCore::ResourceErrorBase::isNull):
2368         (WebCore::ResourceErrorBase::domain):
2369         (WebCore::ResourceErrorBase::errorCode):
2370         (WebCore::ResourceErrorBase::failingURL):
2371         (WebCore::ResourceErrorBase::localizedDescription):
2372         (WebCore::ResourceErrorBase::ResourceErrorBase):
2373         (WebCore::ResourceErrorBase::platformLazyInit):
2374         (WebCore::ResourceErrorBase::platformCompare):
2375         (WebCore::operator==):
2376         * platform/network/ResourceResponseBase.cpp:
2377         (WebCore::ResourceResponseBase::isHTTP):
2378         (WebCore::ResourceResponseBase::url):
2379         (WebCore::ResourceResponseBase::setUrl):
2380         (WebCore::ResourceResponseBase::mimeType):
2381         (WebCore::ResourceResponseBase::setMimeType):
2382         (WebCore::ResourceResponseBase::expectedContentLength):
2383         (WebCore::ResourceResponseBase::setExpectedContentLength):
2384         (WebCore::ResourceResponseBase::textEncodingName):
2385         (WebCore::ResourceResponseBase::setTextEncodingName):
2386         (WebCore::ResourceResponseBase::suggestedFilename):
2387         (WebCore::ResourceResponseBase::setSuggestedFilename):
2388         (WebCore::ResourceResponseBase::httpStatusCode):
2389         (WebCore::ResourceResponseBase::setHTTPStatusCode):
2390         (WebCore::ResourceResponseBase::httpStatusText):
2391         (WebCore::ResourceResponseBase::setHTTPStatusText):
2392         (WebCore::ResourceResponseBase::httpHeaderField):
2393         (WebCore::ResourceResponseBase::setHTTPHeaderField):
2394         (WebCore::ResourceResponseBase::httpHeaderFields):
2395         (WebCore::ResourceResponseBase::isAttachment):
2396         (WebCore::ResourceResponseBase::setExpirationDate):
2397         (WebCore::ResourceResponseBase::expirationDate):
2398         (WebCore::ResourceResponseBase::setLastModifiedDate):
2399         (WebCore::ResourceResponseBase::lastModifiedDate):
2400         (WebCore::ResourceResponseBase::lazyInit):
2401         (WebCore::ResourceResponseBase::compare):
2402         * platform/network/ResourceResponseBase.h:
2403         (WebCore::ResourceResponseBase::ResourceResponseBase):
2404         (WebCore::ResourceResponseBase::platformLazyInit):
2405         (WebCore::ResourceResponseBase::platformCompare):
2406         (WebCore::operator==):
2407         * platform/network/cf/AuthenticationCF.cpp:
2408         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
2409         (WebCore::AuthenticationChallenge::platformCompare):
2410         * platform/network/cf/AuthenticationChallenge.h: Added.
2411         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
2412         (WebCore::AuthenticationChallenge::sourceHandle):
2413         (WebCore::AuthenticationChallenge::cfURLAuthChallengeRef):
2414         * platform/network/cf/ResourceError.h: Added.
2415         (WebCore::ResourceError::ResourceError):
2416         * platform/network/cf/ResourceErrorCF.cpp:
2417         (WebCore::ResourceError::ResourceError):
2418         (WebCore::ResourceError::platformLazyInit):
2419         (WebCore::ResourceError::platformCompare):
2420         (WebCore::ResourceError::operator CFStreamError):
2421         * platform/network/cf/ResourceResponse.h:
2422         (WebCore::ResourceResponse::ResourceResponse):
2423         * platform/network/cf/ResourceResponseCFNet.cpp:
2424         (WebCore::ResourceResponse::platformLazyInit):
2425         * platform/network/curl/AuthenticationChallenge.h: Added.
2426         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
2427         * platform/network/curl/ResourceError.h: Added.
2428         (WebCore::ResourceError::ResourceError):
2429         * platform/network/curl/ResourceResponse.h:
2430         (WebCore::ResourceResponse::ResourceResponse):
2431         * platform/network/mac/AuthenticationChallenge.h: Added.
2432         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
2433         (WebCore::AuthenticationChallenge::sender):
2434         (WebCore::AuthenticationChallenge::nsURLAuthenticationChallenge):
2435         * platform/network/mac/AuthenticationMac.mm:
2436         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
2437         (WebCore::AuthenticationChallenge::platformCompare):
2438         * platform/network/mac/ResourceError.h: Added.
2439         (WebCore::ResourceError::ResourceError):
2440         * platform/network/mac/ResourceErrorMac.mm:
2441         (WebCore::ResourceError::platformLazyInit):
2442         (WebCore::ResourceError::platformCompare):
2443         * platform/network/mac/ResourceResponse.h:
2444         (WebCore::ResourceResponse::ResourceResponse):
2445         * platform/network/mac/ResourceResponseMac.mm:
2446         (WebCore::ResourceResponse::platformLazyInit):
2447         (WebCore::ResourceResponse::platformCompare):
2448         * platform/network/qt/AuthenticationChallenge.h: Added.
2449         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
2450         * platform/network/qt/ResourceError.h: Added.
2451         (WebCore::ResourceError::ResourceError):
2452         * platform/network/qt/ResourceResponse.h:
2453         (WebCore::ResourceResponse::ResourceResponse):
2454         * xml/XSLTProcessor.cpp:
2455
2456 2008-02-25  Anders Carlsson  <andersca@apple.com>
2457
2458         Reviewed by Darin.
2459
2460         Move remaining render style objects over to start with a refcount of 1 and get
2461         rid of DeprecatedDataRef.
2462         
2463         * rendering/DataRef.h:
2464         (WebCore::DataRef::operator*):
2465         (WebCore::DataRef::operator->):
2466         * rendering/RenderStyle.h:
2467         * rendering/SVGRenderStyle.cpp:
2468         (WebCore::SVGRenderStyle::SVGRenderStyle):
2469         * rendering/SVGRenderStyle.h:
2470         (WebCore::SVGRenderStyle::create):
2471         (WebCore::SVGRenderStyle::copy):
2472         * rendering/SVGRenderStyleDefs.cpp:
2473         (StyleFillData::StyleFillData):
2474         (StyleStrokeData::StyleStrokeData):
2475         (StyleStopData::StyleStopData):
2476         (StyleTextData::StyleTextData):
2477         (StyleClipData::StyleClipData):
2478         (StyleMaskData::StyleMaskData):
2479         (StyleMarkerData::StyleMarkerData):
2480         (StyleMiscData::StyleMiscData):
2481         * rendering/SVGRenderStyleDefs.h:
2482         (WebCore::StyleFillData::create):
2483         (WebCore::StyleFillData::copy):
2484         (WebCore::StyleStrokeData::create):
2485         (WebCore::StyleStrokeData::copy):
2486         (WebCore::StyleStopData::create):
2487         (WebCore::StyleStopData::copy):
2488         (WebCore::StyleTextData::create):
2489         (WebCore::StyleTextData::copy):
2490         (WebCore::StyleClipData::create):
2491         (WebCore::StyleClipData::copy):
2492         (WebCore::StyleMaskData::create):
2493         (WebCore::StyleMaskData::copy):
2494         (WebCore::StyleMarkerData::create):
2495         (WebCore::StyleMarkerData::copy):
2496         (WebCore::StyleMiscData::create):
2497         (WebCore::StyleMiscData::copy):
2498
2499 2008-02-25  Dan Bernstein  <mitz@apple.com>
2500
2501         Reviewed by Dave Hyatt.
2502
2503         - remove file-static BidiRun variables from bidi.cpp
2504
2505         * platform/text/BidiResolver.h:
2506         (WebCore::BidiResolver::): Initialize m_logicallyLastRun.
2507         (WebCore::BidiResolver::logicallyLastRun): Added.
2508         (WebCore::BidiResolver::runCount): Made unsigned.
2509         (WebCore::::reverseRuns): Changed ints to unsigned.
2510         (WebCore::::createBidiRunsForLine): Made this function set
2511         m_logicallyLastRun.
2512         * rendering/RenderBlock.h:
2513         * rendering/bidi.cpp:
2514         (WebCore::BidiState::addRun): Removed setting of sLogicallyLastBidiRun.
2515         (WebCore::RenderBlock::constructLine): Removed unused start parameter
2516         and added run count and first and last run parameters. Replaced end
2517         parameter with lastLine boolean and endObject pointer.
2518         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Added first
2519         and logically last run parameters.
2520         (WebCore::RenderBlock::computeVerticalPositionsForLine): Added firstRun
2521         parameter.
2522         (WebCore::RenderBlock::bidiReorderLine): Removed setting of static
2523         variables.
2524         (WebCore::RenderBlock::layoutInlineChildren): Changed to use BidiState
2525         accessors instead of file statics.
2526
2527 2008-02-25  Rodney Dawes  <dobey@wayofthemonkey.com>
2528
2529         Reviewed by Jon Honeycutt.
2530
2531         http://bugs.webkit.org/show_bug.cgi?id=16924
2532         Bug 16924: Shared PluginDatabase, PluginPackage, and PlugInInfoStore implementations
2533
2534         Add PluginInfoStore.cpp and new PluginDatabase.cpp to GTK+ and Qt ports.
2535         Remove old PlugInInfoStoreQt.cpp as it is obsoleted by shared code.
2536         Add PluginInfoStore, PluginDatabase, and PluginStream files to Wx build.
2537         Add new PluginDatabase.cpp to Windows build.
2538         Add temporary stubs for new PluginDatabase and PluginPackage.
2539         shared classes to GTK+, Qt, and Wx ports.
2540         Copy PluginDatabaseWin.cpp to PluginDatabase.cpp to preserve history.
2541         Remove shared code from PluginDatabaseWin.cpp.
2542         Remove Windows-specific code from PluginDatabase.cpp.
2543         Use PlatformModule and PlatformFileTime instead of HMODULE and FILETIME.
2544         Remove extraneous PluginPackage:: from hash() class method prototype.
2545         Subsume storeFileVersion into PluginPackage::fetchInfo.
2546         Add cross-platform PlatformModuleVersion type definition.
2547         Use PlatformModuleVersion to store the module version.
2548         Rename m_fileVersion[ML]S to m_moduleVersion.
2549         Change compareFileVersion to use PlatformModuleVersion as the argument.
2550         Move PluginView::determineQuirks and m_quirks to PluginPackage.
2551         Updated determineQuirks for the PlatformModuleVersion.
2552
2553         * GNUmakefile.am:
2554         * WebCore.pro:
2555         * WebCoreSources.bkl:
2556         * webcore-base.bkl:
2557         * WebCore.vcproj/WebCore.vcproj:
2558         * Platform/FileSystem.h:
2559         * platform/qt/PlugInInfoStoreQt.cpp:
2560         * platform/gtk/TemporaryLinkStubs.cpp:
2561         * platform/qt/TemporaryLinkStubs.cpp:
2562         * platform/wx/TemporaryLinkStubs.cpp:
2563         * plugins/PluginDatabase.cpp:
2564         * plugins/PluginDatabase.h:
2565         * plugins/win/PluginDatabaseWin.cpp:
2566         * plugins/PluginPackage.h:
2567         * plugins/win/PluginPackageWin.cpp:
2568         * plugins/PluginView.h:
2569         * plugins/win/PluginViewWin.cpp:
2570
2571 2008-02-25  Anders Carlsson  <andersca@apple.com>
2572
2573         Reviewed by Darin.
2574
2575         Make more style objects start out with a refcount of 1.
2576         
2577         * rendering/RenderStyle.cpp:
2578         (WebCore::StyleSurroundData::StyleSurroundData):
2579         (WebCore::StyleBoxData::StyleBoxData):
2580         (WebCore::StyleVisualData::StyleVisualData):
2581         (WebCore::StyleBackgroundData::StyleBackgroundData):
2582         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2583         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
2584         (WebCore::StyleInheritedData::StyleInheritedData):
2585         * rendering/RenderStyle.h:
2586         (WebCore::StyleSurroundData::create):
2587         (WebCore::StyleSurroundData::copy):
2588         (WebCore::StyleBoxData::create):
2589         (WebCore::StyleBoxData::copy):
2590         (WebCore::StyleVisualData::create):
2591         (WebCore::StyleVisualData::copy):
2592         (WebCore::StyleBackgroundData::create):
2593         (WebCore::StyleBackgroundData::copy):
2594         (WebCore::StyleBackgroundData::~StyleBackgroundData):
2595         (WebCore::StyleRareNonInheritedData::create):
2596         (WebCore::StyleRareNonInheritedData::copy):
2597         (WebCore::StyleRareInheritedData::create):
2598         (WebCore::StyleRareInheritedData::copy):
2599         (WebCore::StyleInheritedData::create):
2600         (WebCore::StyleInheritedData::copy):
2601
2602 2008-02-25  Anders Carlsson  <andersca@apple.com>
2603
2604         Reviewed by Darin.
2605
2606         Make some of the refcounted style objects start out with a refcount of 1.
2607
2608         * rendering/DataRef.h:
2609         Make a DeprecatedDataRef class which is just a copy of the old DataRef class.
2610         Change DataRef to use ::create() and ::copy() instead of the constructors.
2611         Change DataRef's pointer to be a RefPtr instead.
2612
2613         * rendering/RenderStyle.cpp:
2614         (WebCore::StyleMarqueeData::StyleMarqueeData):
2615         (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
2616         (WebCore::StyleMultiColData::StyleMultiColData):
2617         (WebCore::StyleTransformData::StyleTransformData):
2618         Start with a RefCount of 1.
2619         
2620         * rendering/RenderStyle.h:
2621         * rendering/SVGRenderStyle.h:
2622         Add ::create() and ::copy() methods. Make not yet converted classes use DeprecatedDataRef.
2623
2624 2008-02-25  Darin Adler  <darin@apple.com>
2625
2626         Reviewed by Anders.
2627         Based on a patch by Tim Steele <timsteele41@gmail.com>.
2628
2629         - fix http://bugs.webkit.org/show_bug.cgi?id=17186
2630           Fragment navigation within a page permanently cancels meta refresh
2631
2632         Test: fast/loader/meta-refresh-anchor-click.html
2633
2634         * loader/FrameLoader.cpp:
2635         (WebCore::FrameLoader::load): When load type is FrameLoadTypeRedirectWithLockedHistory,
2636         always do a real load. This makes sure that meta refresh loads are treated as real loads
2637         rather than anchor scrolls. Also tweaked formatting a bit.
2638         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy): This function is
2639         an alternate way to complete a load, so it needs to start the redirection timer if
2640         redirection has already been scheduled.
2641
2642 2008-02-25  Dan Bernstein  <mitz@apple.com>
2643
2644         Reviewed by Darin Adler.
2645
2646         - avoid counting spaces in non-justified text
2647
2648         * rendering/bidi.cpp:
2649         Removed file-static numSpaces.
2650         (WebCore::BidiState::addRun): Removed space counting.
2651         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Added space
2652         counting, conditional on the block having the text-align: justify
2653         property value.
2654         (WebCore::RenderBlock::bidiReorderLine): Removed initialization of
2655         numSpaces.
2656
2657 2008-02-25  Darin Adler  <darin@apple.com>
2658
2659         Requested by Steve.
2660
2661         * platform/graphics/cg/ImageSourceCG.cpp:
2662         (WebCore::ImageSource::createFrameAtIndex): Put the string into a global
2663         variable (because CFSTR is inefficient on Windows).
2664
2665 2008-02-25  Darin Adler  <darin@apple.com>
2666
2667         Reviewed by Adam.
2668
2669         * WebCore.base.exp: Export blankURL, and sort the file.
2670
2671 2008-02-25  Simon Hausmann  <hausmann@webkit.org>
2672
2673         Reviewed by Mark Rowe.
2674
2675         Fix compilation with gcc 4.3, added stdio.h and unistd.h inclusions.
2676
2677         * dom/Position.cpp:
2678         * dom/Range.cpp:
2679         * editing/Selection.cpp:
2680         * editing/SelectionController.cpp:
2681         * editing/VisiblePosition.cpp:
2682         * history/HistoryItem.cpp:
2683         * loader/Cache.cpp:
2684         * loader/FTPDirectoryParser.cpp:
2685         * platform/KURL.cpp:
2686         * platform/gtk/FileSystemGtk.cpp:
2687         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2688         * platform/text/TextCodecLatin1.cpp:
2689         * platform/text/TextCodecUserDefined.cpp:
2690         * rendering/CounterNode.cpp:
2691         * rendering/RenderObject.cpp:
2692
2693 2008-02-25  Johnny Ding  <johnnyding.webkit@gmail.com>
2694
2695         Reviewed by Darin Adler.
2696
2697         - fix http://bugs.webkit.org/show_bug.cgi?id=17444
2698
2699         In HTMLTokenizer::write, the code checks 'pendingScripts.isEmpty()' to decide
2700         whether to save prependingSrc or not. However, in HTMLTokenizer::scriptHandler
2701         and HTMLTokenizer::scriptExecution, the code checks testBit:LoadingExtScript
2702         to decide whether to save prependingSrc or not. The later behavior is not right
2703         because, in scriptHandler and scriptExecution, even the pendingScripts queue is
2704         empty, the testBit:LoadingExtScript might be TRUE.
2705
2706         Test: fast/tokenizer/nested-multiple-scripts.html
2707
2708         * html/HTMLTokenizer.cpp:
2709         (WebCore::HTMLTokenizer::scriptHandler): check pendingScripts.isEmpty() instead of
2710         checking state.loadingExtScript().
2711         (WebCore::HTMLTokenizer::scriptExecution): check pendingScripts.isEmpty() instead of
2712         checking state.loadingExtScript().
2713
2714 2008-02-24  Darin Adler  <darin@apple.com>
2715
2716         * dom/Document.h: Removed stray duplicate declaration of
2717         RegisteredEventListenerList.
2718
2719 2008-02-24  Darin Adler  <darin@apple.com>
2720
2721         * dom/Range.cpp:
2722         (WebCore::Range::surroundContents): Removed incorrect comment.
2723         I added it a while ago, and I was just mixed up.
2724
2725 2008-02-24  Darin Adler  <darin@apple.com>
2726
2727         - quick follow-up to that last check-in
2728
2729         * platform/graphics/cg/ImageSourceCG.cpp:
2730         (WebCore::ImageSource::createFrameAtIndex): Use CFEqual instead of
2731         WebCore::String's == for speed.
2732
2733 2008-02-24  Michael Knaup  <michael.knaup@mac.com>
2734
2735         Reviewed by Darin.
2736
2737         Bug 8749: XBM rendered incorrectly as black on white
2738
2739         xbm images are now created and rendered using black on a
2740         transparent background (same behavior as in Firefox)
2741
2742         Test: platform/mac/fast/canvas/canvas-draw-xbm-image.html
2743
2744         * platform/graphics/cg/ImageSourceCG.cpp:
2745         (WebCore::ImageSource::createFrameAtIndex):
2746
2747 2008-02-24  Dan Bernstein  <mitz@apple.com>
2748
2749         Reviewed by Darin Adler.
2750
2751         - fix http://bugs.webkit.org/show_bug.cgi?id=17471
2752           REGRESSION (r30438): Crash in deleteLineBoxes in cursor-adjusting code browsing Acid3
2753
2754         Test: http/tests/misc/object-image-error.html
2755
2756         * html/HTMLObjectElement.cpp:
2757         (WebCore::HTMLObjectElement::attach): Added an early return in case
2758         updateFromElement() has changed the object to use fallback content.
2759
2760 2008-02-24  Dan Bernstein  <mitz@apple.com>
2761
2762         Reviewed by Darin Adler.
2763
2764         - fix float positioning when a float that does not fit on the line is
2765           followed by a float that does
2766
2767         Test: fast/block/float/narrow-after-wide.html
2768
2769         * rendering/bidi.cpp:
2770         (WebCore::RenderBlock::findNextLineBreak): Changed to not position any
2771         more floats on the line once a float that does not fit is encountered.
2772         That float should be pushed to the next line, and so should all floats
2773         that follow, regardless of whether they can fit on the current line.
2774
2775 2008-02-24  Darin Adler  <darin@apple.com>
2776
2777         Reviewed by Sam.
2778
2779         - fix http://bugs.webkit.org/show_bug.cgi?id=16770
2780           Acid3 expects :visited styled links to restyle on iframe load
2781
2782         Disentangle global history updating from the back/forward history.
2783         There are many cases where we don't want to create a new back/forward
2784         item, but we do still want to add to the global history (used for visited
2785         link coloring) in those cases.
2786
2787         Test: fast/history/subframe-is-visited.html
2788
2789         * loader/FrameLoader.cpp:
2790         (WebCore::FrameLoader::updateGlobalHistory): Renamed from
2791         addHistoryForCurrentLocation and removed the back/forward handling.
2792         (WebCore::FrameLoader::updateHistoryForStandardLoad): Streamlined logic a
2793         bit. Replaced call to addHistoryForCurrentLocation with a call to
2794         addBackForwardItemClippedAtTarget. Added an unconditional call to
2795         updateGlobalHistory.
2796         (WebCore::FrameLoader::updateHistoryForClientRedirect): Added a FIXME;
2797         why doesn't this function update global history?
2798         (WebCore::FrameLoader::updateHistoryForBackForwardNavigation): Ditto.
2799         (WebCore::FrameLoader::updateHistoryForReload): Replaced the direct call
2800         the client with a call to the new updateGlobalHistory function.
2801         (WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory): Did
2802         the same changes as for updateHistoryForStandardLoad.
2803         * loader/FrameLoader.h: More of the same.
2804
2805         * loader/FrameLoaderClient.h: Removed updateGlobalHistoryForReload and
2806         renamed updateGlobalHistoryForStandardLoad to updateGlobalHistory.
2807
2808         * svg/graphics/SVGImageEmptyClients.h:
2809         (WebCore::SVGEmptyFrameLoaderClient::updateGlobalHistory): Updated to
2810         match the above.
2811
2812 2008-02-23  Darin Adler  <darin@apple.com>
2813
2814         Reviewed by Sam.
2815
2816         - fix http://bugs.webkit.org/show_bug.cgi?id=17508
2817           REGRESSION (r30535): mailto regression tests failing
2818
2819         * html/HTMLFormElement.cpp:
2820         (WebCore::HTMLFormElement::submit): Restore the old logic, with its unpleasant
2821         trip through String do to the replace operation. It's inefficient, but there's
2822         no real reason to worry about the efficiency of mailto forms, since that feature
2823         is nearly obsolete.
2824
2825 2008-02-23  Darin Adler  <darin@apple.com>
2826
2827         Reviewed by Sam.
2828
2829         - replace SegmentedString's use of DeprecatedValueList with Deque
2830
2831         Testing indicates this is a slight speed-up for page loading.
2832
2833         * platform/text/SegmentedString.cpp:
2834         (WebCore::SegmentedString::length): Update to use Deque.
2835         (WebCore::SegmentedString::setExcludeLineNumbers): Ditto.
2836         (WebCore::SegmentedString::append): Ditto.
2837         (WebCore::SegmentedString::prepend): Ditto.
2838         (WebCore::SegmentedString::advanceSubstring): Ditto.
2839         (WebCore::SegmentedString::toString): Ditto.
2840         * platform/text/SegmentedString.h: Tweak formatting. Don't bother making an entire
2841         class private with a single friend. Change m_sbstrings from a DeprecatedValueList
2842         to a Deque.
2843
2844 2008-02-23  Darin Adler  <darin@apple.com>
2845
2846         Reviewed by Anders.
2847
2848         - fix http://bugs.webkit.org/show_bug.cgi?id=17506
2849           REGRESSION (r30535): ASSERTION FAILED: i < size()
2850
2851         * loader/TextResourceDecoder.cpp:
2852         (WebCore::findTextEncoding): Fix off-by-one in code that null-terminates
2853         the C string here.
2854
2855 2008-02-23  Matt Lilek  <webkit@mattlilek.com>
2856
2857         Not reviewed, build fix.
2858
2859         * platform/network/cf/FormDataStreamCFNet.cpp:
2860         (WebCore::httpBodyFromRequest):
2861         * plugins/win/PluginViewWin.cpp:
2862         (WebCore::PluginView::handlePost):
2863
2864 2008-02-23  Dan Bernstein  <mitz@apple.com>
2865
2866         - fix a typo
2867
2868         * platform/graphics/win/GlyphPageTreeNodeCGWin.cpp:
2869         (WebCore::GlyphPage::fill):
2870         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp:
2871         (WebCore::GlyphPage::fill):
2872
2873 2008-02-23  Dan Bernstein  <mitz@apple.com>
2874
2875         Reviewed by Anders Carlsson.
2876
2877         - fix GlyphPage::fill() logic for partial page fills
2878
2879         * platform/graphics/win/GlyphPageTreeNodeCGWin.cpp:
2880         (WebCore::GlyphPage::fill): Changed the test for non-BMP characters to
2881         work correctly when the length parameter is less than a full page size.
2882         Also updated the comment.
2883         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp:
2884         (WebCore::GlyphPage::fill): Ditto.
2885
2886 2008-02-23  Kevin Ollivier  <kevino@theolliviers.com>
2887
2888         Reviewed by Darin Adler.
2889
2890         Move text drawing into wxcode, as we need platform-dependent
2891         APIs for drawing non-kerned text, which wx doesn't yet have.
2892         (But hopefully will, once these APIs are fleshed out on all
2893         platforms!)
2894
2895         http://bugs.webkit.org/show_bug.cgi?id=17396
2896
2897         * platform/graphics/wx/FontWx.cpp:
2898         (WebCore::Font::drawGlyphs):
2899         * platform/wx/wxcode/gtk/non-kerned-drawing.cpp: Added.
2900         * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp: Added.
2901         * platform/wx/wxcode/non-kerned-drawing.h: Added.
2902         * platform/wx/wxcode/win/non-kerned-drawing.cpp: Added.
2903         * webcore-wx.bkl:
2904
2905 2008-02-23  Darin Adler  <darin@apple.com>
2906
2907         Pointed out by Mitz.
2908
2909         * loader/TextResourceDecoder.cpp:
2910         (WebCore::find): Fix a "==" that was supposed to be ">".
2911         (WebCore::findIgnoringCase): Ditto.
2912
2913 2008-02-23  Darin Adler  <darin@apple.com>
2914
2915         Reviewed by Sam.
2916
2917         * html/HTMLFormElement.cpp:
2918         (WebCore::appendEncodedString): Fix buffer overrun in the code I just landed.
2919
2920 2008-02-23  Darin Adler  <darin@apple.com>
2921
2922         Reviewed by Sam.
2923
2924         - remove all but 1 remaining use of DeprecatedCString
2925         - change FormData to start refcount at 1
2926
2927         * html/HTMLFormElement.cpp:
2928         (WebCore::appendString): Added. Helpers for Vector<char>.
2929         (WebCore::appendEncodedString): Renamed from encodeCString and changed to
2930         append to an existing Vector<char> to cut down a bit on memory allocation.
2931         (WebCore::HTMLFormElement::formData): Replace the DeprecatedCString called
2932         enc_string with a Vector<char> called encodedData. Change to use the new
2933         FormData::create function.
2934         (WebCore::HTMLFormElement::submit): Same thing, for the mailto form code.
2935
2936         * loader/TextResourceDecoder.cpp:
2937         (WebCore::find): Added. Helper for searching in char* with length.
2938         (WebCore::findIgnoringCase): Ditto.
2939         (WebCore::findTextEncoding): Added. Helper for looking up a text encoding
2940         when we have a char* with length rather than a null-terminated char*.
2941         (WebCore::findXMLEncoding): Changed to use char* and length rather than
2942         DeprecatedCString. Also fixed some things that would be one-character
2943         buffer overruns in a string that's not null-terminated.
2944         (WebCore::TextResourceDecoder::checkForCSSCharset): Change to use
2945         findTextEncoding rather than constructing a CString to pass to the
2946         TextEncodingconstructor.
2947         (WebCore::TextResourceDecoder::checkForHeadCharset): Ditto.
2948
2949         * platform/network/FormData.cpp:
2950         (WebCore::FormData::FormData): Changed to start refcount at 1.
2951         (WebCore::FormData::create): Added.
2952         (WebCore::FormData::copy): Call adoptRef since refcount starts at 1.
2953         * platform/network/FormData.h: Made constructor private. Added create functions.
2954
2955         * platform/network/mac/ResourceRequestMac.mm:
2956         (WebCore::ResourceRequest::doUpdateResourceRequest): Call FormData::create.
2957         * xml/XMLHttpRequest.cpp:
2958         (WebCore::XMLHttpRequest::send): Ditto.
2959
2960 2008-02-23  Darin Adler  <darin@apple.com>
2961
2962         Reviewed by Anders.
2963
2964         - http://bugs.webkit.org/show_bug.cgi?id=17067
2965           eliminate attributes parameter from JSObject::put for speed/clarity
2966
2967         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2968         (WebCore::JSCSSStyleDeclaration::customPut): Remove attributes argument.
2969
2970         * bindings/js/JSCanvasPixelArrayCustom.cpp:
2971         (WebCore::JSCanvasPixelArray::indexGetter): Use early exit idiom.
2972         (WebCore::JSCanvasPixelArray::indexSetter): Moved length check into the
2973         CanvasPixelArray object, for consistency with the getter. Removed attributes
2974         argument.
2975
2976         * bindings/js/JSDOMWindowCustom.cpp:
2977         (WebCore::JSDOMWindow::customPut): Removed special case for variable
2978         initialization, which is not needed since that does use put any more.
2979         Removed attributes argument.
2980
2981         * bindings/js/JSEventTargetBase.h:
2982         (WebCore::JSEventTargetBase::putValueProperty): Removed attributes argument.
2983         (WebCore::JSEventTargetBase::put): Ditto.
2984         (WebCore::JSEventTargetPrototype::self): Removed Internal flag.
2985         * bindings/js/JSEventTargetNode.cpp:
2986         (WebCore::JSEventTargetNode::put): Removed attributes argument.
2987         (WebCore::JSEventTargetNode::putValueProperty): Ditto.
2988         * bindings/js/JSEventTargetNode.h: Ditto.
2989         * bindings/js/JSHTMLAppletElementCustom.cpp:
2990         (WebCore::JSHTMLAppletElement::customPut): Ditto.
2991         * bindings/js/JSHTMLEmbedElementCustom.cpp:
2992         (WebCore::JSHTMLEmbedElement::customPut): Ditto.
2993         * bindings/js/JSHTMLInputElementBase.cpp:
2994         (WebCore::JSHTMLInputElementBase::put): Ditto.
2995         (WebCore::JSHTMLInputElementBase::putValueProperty): Ditto.
2996         * bindings/js/JSHTMLInputElementBase.h: Ditto.
2997         * bindings/js/JSHTMLObjectElementCustom.cpp:
2998         (WebCore::JSHTMLObjectElement::customPut): Ditto.
2999         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
3000         (WebCore::JSHTMLOptionsCollection::indexSetter): Ditto.
3001         * bindings/js/JSHTMLSelectElementCustom.cpp:
3002         (WebCore::JSHTMLSelectElement::indexSetter): Ditto.
3003         * bindings/js/JSHistoryCustom.cpp:
3004         (WebCore::JSHistory::customPut): Ditto.
3005         * bindings/js/JSLocation.cpp:
3006         (WebCore::JSLocation::put): Ditto.
3007         * bindings/js/JSLocation.h: Ditto.
3008         * bindings/js/JSXMLHttpRequest.cpp:
3009         (WebCore::JSXMLHttpRequest::put): Ditto.
3010         (WebCore::JSXMLHttpRequest::putValueProperty): Ditto.
3011         * bindings/js/JSXMLHttpRequest.h: Ditto.
3012
3013         * bindings/js/kjs_dom.cpp:
3014         (WebCore::getRuntimeObject): Changed return type to JSObject*.
3015         * bindings/js/kjs_dom.h: Ditto.
3016
3017         * bindings/js/kjs_events.cpp:
3018         (WebCore::JSClipboard::put): Removed attributes argument.
3019         (WebCore::JSClipboard::putValueProperty): Ditto.
3020         * bindings/js/kjs_events.h: Ditto.
3021
3022         * bindings/js/kjs_html.cpp:
3023         (WebCore::runtimeObjectGetter): Updated for change to getRuntimeObject to
3024         return a JSObject. Used early exit idiom.
3025         (WebCore::runtimeObjectPropertyGetter): Ditto.
3026         (WebCore::runtimeObjectCustomGetOwnPropertySlot): Ditto.
3027         (WebCore::runtimeObjectCustomPut): Use hasProperty to check for properties
3028         that we should put with the property syntax instead of canPut.
3029         (WebCore::runtimeObjectImplementsCall): Ditto.
3030         (WebCore::runtimeObjectCallAsFunction): Ditto.
3031         * bindings/js/kjs_html.h: Removed attributes argument to runtimeObjectCustomPut.
3032
3033         * bindings/js/kjs_window.cpp:
3034         (KJS::Window::put): Removed attributes argument.
3035         * bindings/js/kjs_window.h: Ditto.
3036
3037         * bindings/scripts/CodeGeneratorJS.pm: Removed attributes argument from put,
3038         putValueProperty, customPut, and indexSetter.
3039
3040         * html/CanvasPixelArray.h:
3041         (WebCore::CanvasPixelArray::set): Added index checking here, as in the get
3042         function. Before, the checking was done in the JavaScript bindings for set.
3043
3044 2008-02-23  Brent Fulgham  <bfulgham@gmail.com>
3045
3046         Reviewed by Adam and Darin.
3047
3048         http://bugs.webkit.org/show_bug.cgi?id=17442
3049         Correct the Windows Cairo implementation of GraphicsContext so
3050         that Windows 'WorldTransform' is kept in sync with the Cairo
3051         transormations.
3052
3053         Also corrects an uninitialized variable in the Cairo Windows
3054         image drag handler.
3055
3056         WARNING: NO TEST CASES ADDED OR CHANGED
3057
3058         * platform/graphics/cairo/GraphicsContextCairo.cpp:  Modify
3059           methods to call GraphicsContextPlatformPrivate calls, just
3060           as is done for the CoreGraphics version.  These calls are
3061           nop's for everything but Windows.
3062         (WebCore::GraphicsContext::savePlatformState):
3063         (WebCore::GraphicsContext::restorePlatformState):
3064         (WebCore::GraphicsContext::clip):
3065         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
3066         (WebCore::GraphicsContext::translate):
3067         (WebCore::GraphicsContext::concatCTM): Re-enable for Windows
3068         (WebCore::GraphicsContext::beginTransparencyLayer):
3069         (WebCore::GraphicsContext::endTransparencyLayer):
3070         (WebCore::GraphicsContext::rotate):
3071         (WebCore::GraphicsContext::scale):
3072         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
3073         * platform/graphics/win/GraphicsContextCGWin.cpp:  Move common
3074           code for handling WorldTransform calls to parent class.
3075         * platform/graphics/win/GraphicsContextCairoWin.cpp:  Add common
3076           code for handling WorldTransform calls.
3077           (WebCore::GraphicsContextPlatformPrivate::concatCTM):  Change
3078           implementation so that it only handles WorldTransform.  The
3079           Cairo update is done in GraphicsContextCairo.cpp
3080         * platform/graphics/win/GraphicsContextWin.cpp:  Call platform-private
3081           methods to keep WorldTransform in sync.
3082         (WebCore::GraphicsContextPlatformPrivate::save):
3083         (WebCore::GraphicsContextPlatformPrivate::restore):
3084         (WebCore::GraphicsContextPlatformPrivate::clip):
3085         (WebCore::GraphicsContextPlatformPrivate::scale):
3086         (WebCore::GraphicsContextPlatformPrivate::rotate):
3087         (WebCore::GraphicsContextPlatformPrivate::translate):
3088         * platform/win/DragImageCairoWin.cpp:
3089         (WebCore::createDragImageFromImage):  Correct uninitialized value
3090
3091 2008-02-23  Dan Bernstein  <mitz@apple.com>
3092
3093         Reviewed by Dave Hyatt.
3094
3095         - make non-autowrapping text clear floats
3096
3097         Test: fast/text/whitespace/nowrap-clear-float.html
3098
3099         * rendering/RenderBlock.cpp:
3100         (WebCore::RenderBlock::nextFloatBottomBelow): Renamed nearestFloat() to
3101         this and changed to avoid comparing bottom to 0 in each iteration.
3102         (WebCore::RenderBlock::getClearDelta): Updated comment for the rename.
3103         * rendering/RenderBlock.h:
3104         * rendering/bidi.cpp:
3105         (WebCore::RenderBlock::fitBelowFloats): Added. Factored out of
3106         findNextLineBreak() and simplified.
3107         (WebCore::RenderBlock::findNextLineBreak): Changed to call
3108         fitBelowFloats(). Fixed the bug by trying to fit below floats in the
3109         case of non-wrapping text. Removed some redundancy.
3110
3111 2008-02-23  Sam Weinig  <sam@webkit.org>
3112
3113         Reviewed by Oliver Hunt.
3114
3115         Fix for http://bugs.webkit.org/show_bug.cgi?id=17504
3116         Speed up DOM lists array subscription syntax by using the fast 
3117         getOwnPropertySlot and set paths
3118
3119         - 6x speed improvement on Oliver's ImageData put test.
3120
3121         * bindings/scripts/CodeGeneratorJS.pm: Add fast path for getOwnPropertySlot
3122         and put when an indexGetter or indexSetter is used.  We can not use the fast
3123         path if an overridingNameGetter is used as there would be no way to override.
3124
3125 2008-02-23  Kevin Ollivier  <kevino@theolliviers.com>
3126
3127         wx build fix after JSImageData.cpp was added.
3128
3129         * WebCoreSources.bkl:
3130
3131 2008-02-23  Alexey Proskuryakov  <ap@webkit.org>
3132
3133         Windows build fix - move ThreadCondition implementation from WebCore to WTF.
3134
3135         * WebCore.vcproj/WebCore.vcproj:
3136         * platform/win/ThreadConditionWin.cpp: Removed.
3137
3138 2008-02-23  Alexey Proskuryakov  <ap@webkit.org>
3139
3140         Reviewed by Darin.
3141
3142         Move basic threading support from WebCore to WTF.
3143
3144         One call that remains in WebCore is callOnMainThread(), and it has its own header now.
3145
3146         * ForwardingHeaders/wtf/Locker.h: Added.
3147         * ForwardingHeaders/wtf/MessageQueue.h: Added.
3148         * ForwardingHeaders/wtf/Threading.h: Added.
3149         * GNUmakefile.am:
3150         * WebCore.pro:
3151         * WebCore.vcproj/WebCore.vcproj:
3152         * WebCore.xcodeproj/project.pbxproj:
3153         * WebCoreSources.bkl:
3154         * bindings/js/JSCustomSQLTransactionCallback.cpp:
3155         * dom/XMLTokenizer.cpp:
3156         * loader/icon/IconDatabase.cpp:
3157         (WebCore::iconDatabase):
3158         * loader/icon/IconDatabase.h:
3159         * platform/Locker.h: Removed.
3160         * platform/MainThread.h: Copied from WebCore/platform/Threading.h.
3161         (WebCore::initializeThreadingAndMainThread):
3162         * platform/MessageQueue.h: Removed.
3163         * platform/SecurityOrigin.h:
3164         * platform/Threading.h: Removed.
3165         * platform/ThreadingNone.cpp: Removed.
3166         * platform/gtk/MainThreadGtk.cpp: Copied from WebCore/platform/gtk/ThreadingGtk.cpp.
3167         * platform/gtk/ThreadingGtk.cpp: Removed.
3168         * platform/mac/MainThreadMac.mm: Copied from WebCore/platform/mac/Threading.mm.
3169         * platform/mac/Threading.mm: Removed.
3170         * platform/pthreads: Removed.
3171         * platform/pthreads/ThreadingPthreads.cpp: Removed.
3172         * platform/qt/MainThreadQt.cpp: Copied from WebCore/platform/qt/ThreadingQt.cpp.
3173         * platform/qt/ThreadingQt.cpp: Removed.
3174         * platform/sql/SQLValue.h:
3175         * platform/sql/SQLiteAuthorizer.h:
3176         * platform/sql/SQLiteDatabase.h:
3177         * platform/win/MainThreadWin.cpp: Copied from WebCore/platform/win/ThreadingWin.cpp.
3178         (WebCore::initializeThreadingAndMainThread):
3179         * platform/win/MutexWin.cpp: Removed.
3180         * platform/win/ThreadingWin.cpp: Removed.
3181         * platform/wx/MainThreadWx.cpp: Copied from WebCore/platform/wx/ThreadingWx.cpp.
3182         * platform/wx/ThreadingWx.cpp: Removed.
3183         * storage/Database.cpp:
3184         (WebCore::Database::Database):
3185         * storage/Database.h:
3186         * storage/DatabaseTask.h:
3187         * storage/DatabaseThread.h:
3188         * storage/DatabaseTracker.cpp:
3189         * storage/OriginQuotaManager.h:
3190         * storage/SQLError.h:
3191         * storage/SQLResultSet.h:
3192         * storage/SQLStatement.h:
3193         * storage/SQLStatementCallback.h:
3194         * storage/SQLStatementErrorCallback.h:
3195         * storage/SQLTransaction.h:
3196         * storage/SQLTransactionCallback.h:
3197         * storage/SQLTransactionErrorCallback.h:
3198         * webcore-wx.bkl:
3199
3200 2008-02-23  David Kilzer  <ddkilzer@apple.com>
3201
3202         Please clarify licensing for some files
3203         <http://bugs.webkit.org/show_bug.cgi?id=14970>
3204
3205         Reviewed by Darin.
3206
3207         * bindings/objc/WebScriptObject.h: Added Apple BSD-style license.
3208         * bindings/objc/WebScriptObjectPrivate.h: Ditto.
3209         * platform/text/mac/ShapeArabic.c: Added ICU license from WebCore/icu/LICENSE.
3210
3211 2008-02-22  Justin Garcia  <justin.garcia@apple.com>
3212
3213         Reviewed by Anders Carlsson.
3214
3215         <rdar://problem/5714333> Add document.getSelection()
3216         
3217         Add a synonym for window.getSelection() that FF supports.  There were requests in
3218         this bugs dupes to also support the IE only document.selection, but IE's Selection
3219         object is too different than ours currently for that to be safe (specifically, we
3220         don't support enough of IE's TextRange methods on our DOM Range object yet). I
3221         filed <rdar://problem/5761233> to cover that.
3222
3223         * dom/Document.cpp:
3224         (WebCore::Document::getSelection): Added.
3225         * dom/Document.h:
3226         * dom/Document.idl: Ditto.  JS only since this is about web compatibility.
3227
3228 2008-02-22  Oliver Hunt  <oliver@apple.com>
3229
3230         WX build fixes
3231
3232         * WebCoreSources.bkl:
3233
3234 2008-02-22  Oliver Hunt  <oliver@apple.com>
3235
3236         Once more with the cairo/qt/wx build fixing
3237
3238         * platform/graphics/cairo/ImageBufferCairo.cpp:
3239         * platform/graphics/qt/ImageBufferQt.cpp:
3240         * platform/graphics/wx/ImageBufferWx.cpp:
3241
3242 2008-02-22  Mark Rowe  <mrowe@apple.com>
3243
3244         Windows build fix.  Add missing include of DeprecatedCString.h and sort existing includes.
3245
3246         * platform/win/PasteboardWin.cpp:
3247
3248 2008-02-22  Mark Rowe  <mrowe@apple.com>
3249
3250         Speculative Windows build fix.
3251
3252         * platform/win/ClipboardUtilitiesWin.cpp:  Add missing include of DeprecatedCString.h and sort existing includes.
3253         * platform/win/ClipboardWin.cpp:  Ditto.
3254
3255 2008-02-22  Oliver Hunt  <oliver@apple.com>
3256
3257         Build fix for windows, wx and qt
3258
3259         * html/CanvasPixelArray.h:
3260         (WebCore::CanvasPixelArray::set):
3261
3262 2008-02-22  Oliver Hunt  <oliver@apple.com>
3263
3264         Unbreak windows vcproj
3265
3266         * WebCore.vcproj/WebCore.vcproj:
3267
3268 2008-02-22  Oliver Hunt  <oliver@apple.com>
3269
3270         Reviewed by Sam W.
3271
3272         Support Canvas.getImageData and Canvas.createImageData
3273         
3274         This patch adds support for all the pixel reading portions
3275         of the HTML5 Canvas spec.  There are two new types ImageData
3276         and CanvasPixelArray which are used to provide the HTML5
3277         ImageData object, and the required semantics for assignment
3278         to the ImageData data array.
3279         
3280         We only implement the CG version of ImageBuffer::getImageData,
3281         but the logic is null safe, so this will not introduce any
3282         crashes into other platforms, unfortunately it will result in
3283         JS Object detection "lying" on non-CG platforms.
3284
3285         Tests: fast/canvas/canvas-ImageData-behaviour.html
3286                fast/canvas/canvas-getImageData.html
3287
3288         * DerivedSources.make:
3289         * GNUmakefile.am:
3290         * WebCore.pro:
3291         * WebCore.vcproj/WebCore.vcproj:
3292         * WebCore.xcodeproj/project.pbxproj:
3293         * bindings/js/JSCanvasPixelArrayCustom.cpp: Added.
3294         (WebCore::JSCanvasPixelArray::indexGetter):
3295         (WebCore::JSCanvasPixelArray::indexSetter):
3296         (WebCore::toJS):
3297         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
3298         * bindings/scripts/CodeGeneratorJS.pm:
3299         * html/CanvasPixelArray.cpp: Added.
3300         (WebCore::CanvasPixelArray::create):
3301         * html/CanvasPixelArray.h: Added.
3302         (WebCore::CanvasPixelArray::data):
3303         (WebCore::CanvasPixelArray::length):
3304         (WebCore::CanvasPixelArray::set):
3305         (WebCore::CanvasPixelArray::get):
3306         * html/CanvasPixelArray.idl: Added.
3307         * html/CanvasRenderingContext2D.cpp:
3308         (WebCore::createEmptyImageData):
3309         (WebCore::CanvasRenderingContext2D::createImageData):
3310         (WebCore::CanvasRenderingContext2D::getImageData):
3311         * html/CanvasRenderingContext2D.h:
3312         * html/CanvasRenderingContext2D.idl:
3313         * html/HTMLCanvasElement.cpp:
3314         (WebCore::HTMLCanvasElement::convertLogicalToDevice):
3315         (WebCore::HTMLCanvasElement::createImageBuffer):
3316         * html/HTMLCanvasElement.h:
3317         * html/ImageData.cpp: Added.
3318         (WebCore::ImageData::create):
3319         (WebCore::ImageData::ImageData):
3320         * html/ImageData.h: Added.
3321         (WebCore::ImageData::width):
3322         (WebCore::ImageData::height):
3323         (WebCore::ImageData::data):
3324         * html/ImageData.idl: Added.
3325         * platform/graphics/ImageBuffer.h:
3326         * platform/graphics/cairo/ImageBufferCairo.cpp:
3327         (WebCore::ImageBuffer::getImageData):
3328         * platform/graphics/cg/ImageBufferCG.cpp:
3329         (WebCore::ImageBuffer::getImageData):
3330         * platform/graphics/qt/ImageBufferQt.cpp:
3331         (WebCore::ImageBuffer::getImageData):
3332         * platform/graphics/wx/ImageBufferWx.cpp:
3333         (WebCore::ImageBuffer::getImageData):
3334
3335 2008-02-22  Sam Weinig  <sam@webkit.org>
3336
3337         Rubber-stamped by Adam Roben.
3338
3339         Rid the project of the Devil known as DeprecatedString!
3340
3341         * GNUmakefile.am:
3342         * WebCore.base.exp:
3343         * WebCore.pro:
3344         * WebCore.vcproj/WebCore.vcproj:
3345         * WebCore.xcodeproj/project.pbxproj:
3346         * WebCoreSources.bkl:
3347         * dom/Node.h:
3348         * html/HTMLFormElement.cpp:
3349         * platform/DeprecatedString.cpp: Removed.
3350         * platform/DeprecatedString.h: Removed.
3351         * platform/graphics/qt/IconQt.cpp:
3352         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
3353         * platform/gtk/CookieJarGtk.cpp:
3354         * platform/gtk/CursorGtk.cpp:
3355         * platform/gtk/KeyEventGtk.cpp:
3356         * platform/mac/DeprecatedStringMac.mm: Removed.
3357         * platform/network/qt/ResourceHandleQt.cpp:
3358         * platform/network/win/CookieJarWin.cpp:
3359         (WebCore::cookies):
3360         * platform/qt/ClipboardQt.cpp:
3361         * platform/qt/CookieJarQt.cpp:
3362         * platform/qt/CursorQt.cpp:
3363         * platform/symbian/DeprecatedStringSymbian.cpp: Removed.
3364         * platform/text/AtomicString.cpp:
3365         * platform/text/AtomicString.h:
3366         * platform/text/PlatformString.h:
3367         * platform/text/String.cpp:
3368         * platform/text/StringImpl.cpp:
3369         * platform/text/qt/StringQt.cpp:
3370         (WebCore::String::String):
3371         * platform/text/wx/StringWx.cpp:
3372         * platform/win/BString.cpp:
3373         * platform/win/BString.h:
3374         * platform/win/PasteboardWin.cpp:
3375
3376 2008-02-22  Sam Weinig  <sam@webkit.org>
3377
3378         Reviewed by Geoff Garen.
3379
3380         - Remove use of DeprecatedString in CSSStyleSelector.
3381
3382         * css/CSSStyleSelector.cpp:
3383         (WebCore::findHash): Removed.  Use find instead.
3384         (WebCore::findSlashDotDotSlash): Changed to take a UChar* and a length.
3385         (WebCore::findSlashSlash): Ditto.
3386         (WebCore::findSlashDotSlash): Ditto.
3387         (WebCore::containsColonSlashSlash): Ditto.
3388         (WebCore::cleanPath): Change to operate on a String.
3389         (WebCore::checkPseudoState): Changed to use a Vector as a buffer.
3390
3391 2008-02-22  Geoffrey Garen  <ggaren@apple.com>
3392
3393         Reviewed by Sam Weinig.
3394         
3395         Fixed <rdar://problem/5057509> Repro leak of JSXMLHttpRequest and
3396         associated objects @ www.viamichelin.it, which was probably an underlying
3397         cause of <rdar://problem/5744037> Gmail out of memory (17455)
3398         
3399         If SubresourceLoader::create returned NULL, we would ref() / gcProtect()
3400         the XMLHttpRequest but think we hadn't, therefore never
3401         calling deref() / gcUnprotect().
3402         
3403         This could happen at gmail.com, since gmail.com attempts to send
3404         XMLHttpRequests from unload handlers in order to gather usage statistics.
3405         (According to comments in the code, SubresourceLoader::create returns
3406         NULL when called from an unload handler.)
3407
3408         The solution is to ref() / gcProtect() only if SubresourceLoader::create
3409         doesn't return NULL. This make sense, since we only need to protect the
3410         request as long as it has an outstanding network transaction.
3411         
3412         * xml/XMLHttpRequest.cpp:
3413         (WebCore::XMLHttpRequest::XMLHttpRequest):
3414         (WebCore::XMLHttpRequest::send):
3415
3416 2008-02-22  Darin Adler  <darin@apple.com>
3417
3418         Reviewed, tweaked and landed by Sam.
3419
3420         - Make RegularExpression operate on Strings instead of DeprecatedStrings.
3421
3422         * dom/DOMImplementation.cpp:
3423         (WebCore::DOMImplementation::isXMLMIMEType): Use string instead of DeprecatedString
3424         to build up the RegularExpression.
3425         * page/Frame.cpp:
3426         (WebCore::createRegExpForLabels): Use String instead of DeprecatedString.
3427         (WebCore::Frame::searchForLabelsAboveCell): Ditto.
3428         (WebCore::Frame::searchForLabelsBeforeElement): Ditto.
3429         (WebCore::Frame::matchLabelsAgainstElement): Ditto.
3430         * page/Frame.h:
3431         * page/mac/FrameMac.mm:
3432         (WebCore::regExpForLabels): Ditto.
3433         (WebCore::Frame::searchForNSLabelsAboveCell): Ditto.
3434         (WebCore::Frame::searchForLabelsBeforeElement): Ditto.
3435         (WebCore::Frame::matchLabelsAgainstElement): Ditto.
3436
3437         * platform/text/RegularExpression.cpp:
3438         (WebCore::RegularExpression::Private::Private):
3439         (WebCore::RegularExpression::Private::compile):
3440         (WebCore::RegularExpression::RegularExpression):
3441         (WebCore::RegularExpression::operator=):
3442         (WebCore::RegularExpression::pattern):
3443         (WebCore::RegularExpression::match):
3444         (WebCore::RegularExpression::search):
3445         (WebCore::RegularExpression::searchRev):
3446         (WebCore::replace): Added.
3447         * platform/text/RegularExpression.h:
3448         Change functions to take Strings as input instead of DeprecatedStrings and
3449         reduce the complexity of the class by removing unneeded globbing support.
3450
3451 2008-02-22  Jon Honeycutt  <jhoneycutt@apple.com>
3452
3453         Reviewed by Anders.
3454
3455         <rdar://problem/5760360> REGRESSION(r30376): Crash loading plugin page
3456         during stress test (after only 5 min) - null dereference
3457
3458         Full-frame plug-ins create PluginStream objects without loaders, as the
3459         PluginView receives the loading callbacks. We were trying to call
3460         setDefersLoading on these null pointers.
3461
3462         * plugins/PluginStream.cpp:
3463         (WebCore::PluginStream::startStream): Add null check.
3464         (WebCore::PluginStream::destroyStream): Same.
3465         (WebCore::PluginStream::deliverData): Same.
3466
3467 2008-02-22  Darin Adler  <darin@apple.com>
3468
3469         Reviewed and tweaked by Jon Honeycutt. Reviewed and landed by Sam.
3470
3471         - Remove uses of DeprecatedString in Windows plugin code.
3472
3473         * plugins/win/PluginPackageWin.cpp:
3474         (WebCore::getVersionInfo): Cleanup formatting.
3475         (WebCore::PluginPackage::freeLibraryTimerFired): Remove un-needed variable name.
3476         (WebCore::PluginPackage::storeFileVersion): Move casts.
3477         (WebCore::PluginPackage::fetchInfo): Use OwnArrayPtr and switch to more efficient
3478         use of Vectors.
3479         (WebCore::PluginPackage::load): Fix whitespace.
3480         (WebCore::PluginPackage::hash): Make the hashCodes const
3481         * plugins/win/PluginViewWin.cpp:
3482         (WebCore::makeURL): Use String instead of DeprecatedString.
3483         (WebCore::parseRFC822HeaderFields): Ditto.
3484         (WebCore::PluginView::handlePost): Ditto.
3485         (WebCore::PluginView::status): Ditto.
3486
3487 2008-02-22  Darin Adler  <darin@apple.com>
3488
3489         Reviewed, tweaked and landed by Sam.
3490
3491         - Don't use DeprecatedString in HTMLTokenizer.
3492
3493         * html/HTMLTokenizer.cpp:
3494         (WebCore::HTMLTokenizer::finish):
3495         * platform/text/PlatformString.h:
3496         (WebCore::find):
3497
3498 2008-02-21  Sam Weinig  <sam@webkit.org>
3499
3500         Reviewed by Anders Carlsson.
3501
3502         Fix for <rdar://problem/5757946>
3503
3504         - Parse URLs before checking whether they are javascript: urls
3505           (which require security checks).
3506
3507         * bindings/js/JSAttrCustom.cpp:
3508         (WebCore::JSAttr::setValue):
3509         * bindings/js/JSElementCustom.cpp:
3510         (WebCore::allowSettingSrcToJavascriptURL):
3511         * bindings/js/JSHTMLFrameElementCustom.cpp:
3512         (WebCore::allowSettingJavascriptURL):
3513         * bindings/js/JSHTMLIFrameElementCustom.cpp:
3514         (WebCore::JSHTMLIFrameElement::setSrc):
3515
3516 2008-02-21  Ada Chan  <adachan@apple.com>
3517
3518         <rdar://problem/5757873> Buffer overrun in DeprecatedCString::find() in WebCore
3519         We could get a buffer overrun in DeprecatedCString::find() if the end of the
3520         string matches a beginning portion of the substring, for example, if string is
3521         "a" but the substring is "ab".
3522         The code as is also will not match things correctly under certain situations
3523         since the inner while loop increments the index. For example, we wouldn't find
3524         a match if the string is "aab..." and the substring is "ab".  Changed the 
3525         inner while loop to increment a temporary index into str.
3526         
3527         Test: fast/loader/charset-parse.html
3528
3529         Reviewed by Dan Berstein.
3530
3531         * platform/DeprecatedCString.cpp:
3532         (WebCore::DeprecatedCString::find):
3533
3534 2008-02-21  David Hyatt  <hyatt@apple.com>
3535
3536         Fix for bug 17301.  CSS media queries need to use the correct viewport
3537         when contained in documents inside iframes (rather than always using the
3538         top-level document's viewport).  CSS media queries based on the viewport
3539         also needed to be dynamic and update as you resize the window (this is
3540         a HOT feature). :)
3541
3542         This patch gets Acid3 up to 86/100 with 3 colored boxes filled in.
3543
3544         Reviewed by olliej
3545
3546         Added fast/media/viewport-media-query.html
3547
3548         * css/CSSStyleSelector.cpp:
3549         (WebCore::CSSStyleSelector::CSSStyleSelector):
3550         (WebCore::CSSStyleSelector::addViewportDependentMediaQueryResult):
3551         (WebCore::CSSStyleSelector::affectedByViewportChange):
3552         * css/CSSStyleSelector.h:
3553         (WebCore::MediaQueryResult::MediaQueryResult):
3554         * css/MediaQueryEvaluator.cpp:
3555         (WebCore::MediaQueryEvaluator::MediaQueryEvaluator):
3556         (WebCore::MediaQueryEvaluator):
3557         (WebCore::MediaQueryEvaluator::eval):
3558         (WebCore::colorMediaFeatureEval):
3559         (WebCore::monochromeMediaFeatureEval):
3560         (WebCore::device_aspect_ratioMediaFeatureEval):
3561         (WebCore::device_pixel_ratioMediaFeatureEval):
3562         (WebCore::gridMediaFeatureEval):
3563         (WebCore::device_heightMediaFeatureEval):
3564         (WebCore::device_widthMediaFeatureEval):
3565         (WebCore::heightMediaFeatureEval):
3566         (WebCore::widthMediaFeatureEval):
3567         (WebCore::min_colorMediaFeatureEval):
3568         (WebCore::max_colorMediaFeatureEval):
3569         (WebCore::min_monochromeMediaFeatureEval):
3570         (WebCore::max_monochromeMediaFeatureEval):
3571         (WebCore::min_device_aspect_ratioMediaFeatureEval):
3572         (WebCore::max_device_aspect_ratioMediaFeatureEval):
3573         (WebCore::min_device_pixel_ratioMediaFeatureEval):
3574         (WebCore::max_device_pixel_ratioMediaFeatureEval):
3575         (WebCore::min_heightMediaFeatureEval):
3576         (WebCore::max_heightMediaFeatureEval):
3577         (WebCore::min_widthMediaFeatureEval):
3578         (WebCore::max_widthMediaFeatureEval):
3579         (WebCore::min_device_heightMediaFeatureEval):
3580         (WebCore::max_device_heightMediaFeatureEval):
3581         (WebCore::min_device_widthMediaFeatureEval):
3582         (WebCore::max_device_widthMediaFeatureEval):
3583         * css/MediaQueryEvaluator.h:
3584         * css/MediaQueryExp.cpp:
3585         (WebCore::MediaQueryExp::~MediaQueryExp):
3586         * css/MediaQueryExp.h:
3587         (WebCore::MediaQueryExp::value):
3588         (WebCore::MediaQueryExp::isViewportDependent):
3589         * html/HTMLMediaElement.cpp:
3590         (WebCore::HTMLMediaElement::pickMedia):
3591         * page/FrameView.cpp:
3592         (WebCore::FrameView::layout):
3593
3594 2008-02-21  Anders Carlsson  <andersca@apple.com>
3595
3596         Reviewed by Sam.
3597
3598         Make more classes start out with a refcount of 1.
3599
3600         * dom/QualifiedName.cpp:
3601         (WebCore::QNameComponentsTranslator::translate):
3602         (WebCore::QualifiedName::QualifiedName):
3603         * dom/QualifiedName.h:
3604         (WebCore::QualifiedName::QualifiedNameImpl::create):
3605         (WebCore::QualifiedName::QualifiedNameImpl::QualifiedNameImpl):
3606         * history/BackForwardList.cpp:
3607         (WebCore::BackForwardList::BackForwardList):
3608         * history/BackForwardList.h:
3609         (WebCore::BackForwardList::create):
3610         * page/Page.cpp:
3611         (WebCore::Page::Page):
3612         * platform/text/CString.cpp:
3613         (WebCore::CString::init):
3614         (WebCore::CString::newUninitialized):
3615         (WebCore::CString::copyBufferIfNeeded):
3616         * platform/text/CString.h:
3617         (WebCore::CStringBuffer::create):
3618         (WebCore::CStringBuffer::CStringBuffer):
3619
3620 2008-02-21  Kevin Ollivier  <kevino@theolliviers.com>
3621
3622         wx build fix for the domString() -> string() rename in r30443.
3623
3624         * platform/graphics/wx/FontPlatformDataWx.cpp:
3625         (WebCore::FontPlatformData::FontPlatformData):
3626
3627 2008-02-21  Antti Koivisto  <antti@apple.com>
3628
3629         Reviewed by Sam Weinig.
3630
3631         <rdar://problem/5753789>
3632         REGRESSION: 1.5% -2% Sunspider regression from r30009 (ebay photo upload hang)
3633         
3634         Ensure all versions of allowsAccessFrom are inlined to single functions. 
3635         This is a 2% win in browser hosted Sunspider. 
3636
3637         * bindings/js/kjs_window.cpp:
3638         (KJS::Window::allowsAccessFrom):
3639         (KJS::Window::allowsAccessFromPrivate):
3640         * bindings/js/kjs_window.h:
3641
3642 2008-02-21  Dan Bernstein  <mitz@apple.com>
3643
3644         Reviewed by Sam Weinig.
3645
3646         - minor cleanup
3647
3648         * rendering/bidi.cpp:
3649         (WebCore::bidiNext): Removed redundant isBR() check -- isText() returns
3650         true for RenderLineBreak.
3651         (WebCore::bidiFirst): Ditto.
3652         (WebCore::shouldSkipWhitespaceAfterStartObject):
3653         (WebCore::RenderBlock::findNextLineBreak):
3654
3655 2008-02-21  Geoffrey Garen  <ggaren@apple.com>
3656
3657         Reviewed by David Harrison.
3658         
3659         Fixed <rdar://problem/5756125> REGRESSION: A crash occurs at 
3660         WebCore::Frame::scriptProxy() when completing a search with Package Tracker widget
3661
3662         Test: fast/dom/script-element-without-frame-crash.html
3663
3664         * html/HTMLTokenizer.cpp:
3665         (WebCore::HTMLTokenizer::parseTag): Added back a NULL check that was
3666         accidentally removed in r30325.
3667
3668 2008-02-21  Rodney Dawes  <dobey@wayofthemonkey.com>
3669
3670         GTK+ build fix. s/domString()/string()/
3671
3672         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
3673         (FontPlatformData::FontPlatformData):
3674
3675 2008-02-20  Dan Bernstein  <mitz@apple.com>
3676
3677         Reviewed by Dave Hyatt.
3678
3679         - fix http://bugs.webkit.org/show_bug.cgi?id=17465
3680           REGRESSION: <DIV> tokenized into Div if still searching for DOCTYPE
3681
3682         Test: fast/tokenizer/doctype-search-reset.html
3683
3684         * html/HTMLTokenizer.cpp:
3685         (WebCore::HTMLTokenizer::parseTag):
3686
3687 2008-02-20  Dan Bernstein  <mitz@apple.com>
3688
3689         Reviewed by Dave Hyatt.
3690
3691         - fix http://bugs.webkit.org/show_bug.cgi?id=17464
3692           REGRESSION: Crash in RenderBlock::findNextLineBreak reading r30444 commit email in GMail
3693
3694         Test: fast/text/wbr-in-pre-crash.html
3695
3696         * rendering/bidi.cpp:
3697         (WebCore::RenderBlock::findNextLineBreak):
3698
3699 2008-02-20  Oliver Hunt  <oliver@apple.com>
3700
3701         Reviewed by Hyatt.
3702
3703         Bug 17303: Canvas crash in ImageBuffer
3704
3705         We handle a null GraphicsContext everywhere, but we weren't checking for 
3706         a null ImageBuffer, which is what will result in a null GraphicsContext in
3707         the first place.
3708
3709         Test: fast/canvas/access-zero-sized-canvas.html
3710
3711         * html/HTMLCanvasElement.cpp:
3712
3713 2008-02-20  David Hyatt  <hyatt@apple.com>
3714
3715         Fix the layout test failure that never should have passed in the first
3716         place by making changes to media lists actually result in the recomputation
3717         of the style selector.  Now it passes for the right reasons and not because
3718         of dumb luck.
3719
3720         Reviewed by Sam Weinig
3721
3722         * css/MediaList.cpp:
3723         (WebCore::MediaList::deleteMedium):
3724         (WebCore::MediaList::setMediaText):
3725         (WebCore::MediaList::appendMedium):
3726         (WebCore::MediaList::notifyChanged):
3727         * css/MediaList.h:
3728         * dom/Document.cpp:
3729         (WebCore::Document::attach):
3730
3731 2008-02-20  Darin Adler  <darin@apple.com>
3732
3733         Reviewed, tweaked and landed by Sam.
3734
3735         - make markup functions not use DeprecatedString.
3736
3737         * editing/markup.cpp:
3738         (WebCore::append): Added.
3739         (WebCore::escapeContentText): Build up string using a Vector.
3740         (WebCore::appendStartMarkup): Use String instead of DeprecatedString.
3741
3742 2008-02-20  Darin Adler  <darin@apple.com>
3743
3744         Reviewed, tweaked and landed by Sam.
3745
3746         - make TextIterator use a Vector instead of a DeprecatedString.
3747
3748         * editing/TextIterator.cpp:
3749         (WebCore::CharacterIterator::string): Build up the String using a
3750         Vector.
3751         (WebCore::WordAwareIterator::advance): Switch to using Vector functions.
3752         (WebCore::WordAwareIterator::length): Ditto.
3753         (WebCore::WordAwareIterator::characters): Ditto.
3754         * editing/TextIterator.h: Use a Vector<UChar> for the buffer instead
3755         of DeprecatedString.
3756
3757 2008-02-20  Darin Adler  <darin@apple.com>
3758
3759         Reviewed, tweaked and landed by Sam.
3760
3761         - make HTMLInterchange return a String instead of a DeprecatedString
3762
3763         * editing/HTMLInterchange.cpp:
3764         (WebCore::): Return a String from convertedSpaceString.
3765         (WebCore::convertHTMLTextToInterchangeFormat): Use a Vector instead of
3766         a DeprecatedString to build up the return String.
3767         * editing/HTMLInterchange.h:
3768
3769 2008-02-20  Eric Seidel  <eric@webkit.org>
3770
3771         Reviewed by Oliver.
3772
3773         Remove m_drawingContext and change m_data to m_imageBuffer
3774
3775         * html/HTMLCanvasElement.cpp:
3776         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
3777         (WebCore::HTMLCanvasElement::reset):
3778         (WebCore::HTMLCanvasElement::paint):
3779         (WebCore::HTMLCanvasElement::createImageBuffer):
3780         (WebCore::HTMLCanvasElement::buffer):
3781         (WebCore::HTMLCanvasElement::createPlatformImage):
3782         * html/HTMLCanvasElement.h:
3783
3784 2008-02-20  Anders Carlsson  <andersca@apple.com>
3785
3786         Reviewed by Sam.
3787
3788         Rename AtomicString::domString() to AtomicString::string().
3789         
3790         * css/CSSComputedStyleDeclaration.cpp:
3791         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3792         * css/CSSFontSelector.cpp:
3793         (WebCore::CSSFontSelector::getFontData):
3794         * dom/Attr.cpp:
3795         (WebCore::Attr::createTextChild):
3796         * dom/Comment.cpp:
3797         (WebCore::Comment::nodeName):
3798         * dom/Document.cpp:
3799         (WebCore::Document::recalcStyleSelector):
3800         (WebCore::Document::setHTMLWindowEventListener):
3801         (WebCore::Document::formElementsState):
3802         * dom/StyledElement.cpp:
3803         (WebCore::StyledElement::parseMappedAttribute):
3804         * dom/Text.cpp:
3805         (WebCore::Text::nodeName):
3806         * editing/SelectionController.cpp:
3807         (WebCore::SelectionController::debugRenderer):
3808         * html/HTMLCollection.cpp:
3809         (WebCore::HTMLCollection::checkForNameMatch):
3810         * html/HTMLElement.cpp:
3811         (WebCore::HTMLElement::nodeName):
3812         (WebCore::HTMLElement::setHTMLEventListener):
3813         * html/HTMLFormCollection.cpp:
3814         (WebCore::HTMLFormCollection::getNamedFormItem):
3815         * html/HTMLImageElement.cpp:
3816         (WebCore::HTMLImageElement::parseMappedAttribute):
3817         (WebCore::HTMLImageElement::isURLAttribute):
3818         * html/HTMLLinkElement.cpp:
3819         (WebCore::HTMLLinkElement::parseMappedAttribute):
3820         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
3821         * html/HTMLObjectElement.cpp:
3822         (WebCore::HTMLObjectElement::isURLAttribute):
3823         (WebCore::HTMLObjectElement::containsJavaApplet):
3824         * html/HTMLParamElement.cpp:
3825         (WebCore::HTMLParamElement::isURLAttribute):
3826         * html/HTMLParser.cpp:
3827         (WebCore::HTMLParser::handleIsindex):
3828         * html/HTMLScriptElement.cpp:
3829         (WebCore::HTMLScriptElement::insertedIntoDocument):
3830         (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
3831         * html/HTMLStyleElement.cpp:
3832         (WebCore::HTMLStyleElement::parseMappedAttribute):
3833         * html/HTMLTokenizer.cpp:
3834         (WebCore::HTMLTokenizer::parseTag):
3835         * html/HTMLViewSourceDocument.cpp:
3836         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
3837         * loader/FrameLoader.cpp:
3838         (WebCore::FrameLoader::saveDocumentState):
3839         * page/FrameTree.cpp:
3840         (WebCore::FrameTree::uniqueChildName):
3841         * platform/text/AtomicString.h:
3842         (WebCore::AtomicString::string):
3843         (WebCore::AtomicString::contains):
3844         (WebCore::AtomicString::find):
3845         (WebCore::AtomicString::startsWith):
3846         (WebCore::AtomicString::endsWith):
3847         * rendering/RenderPartObject.cpp:
3848         (WebCore::RenderPartObject::updateWidget):
3849         * svg/SVGElement.cpp:
3850         (WebCore::SVGElement::addSVGEventListener):
3851         * svg/SVGSVGElement.cpp:
3852         (WebCore::SVGSVGElement::addSVGWindowEventListener):
3853         * xml/XPathFunctions.cpp:
3854         (WebCore::XPath::FunLocalName::evaluate):
3855         (WebCore::XPath::FunNamespaceURI::evaluate):
3856         (WebCore::XPath::FunName::evaluate):
3857
3858 2008-02-20  Brent Fulgham  <bfulgham@gmail.com>
3859
3860         Reviewed by Dan.
3861
3862         http://bugs.webkit.org/show_bug.cgi?id=17336
3863         Provide implementations for Windows (Cairo) build of WebKit that
3864         handles font formatting.
3865         - Split font implementation files to allow maximal code sharing
3866           between CG and Cairo back-ends. 
3867
3868         * WebCore.vcproj/WebCore.vcproj:
3869         * platform/graphics/SimpleFontData.h:   Add signatures for private win
3870           initialization functions.
3871         * platform/graphics/win/FontCacheWin.cpp:
3872         (WebCore::FontCache::platformInit):
3873         (WebCore::FontCache::createFontPlatformData):
3874         * platform/graphics/win/FontCairoWin.cpp: Removed.  Universal version
3875           is now part of platform/graphics/cairo.
3876         * platform/graphics/win/FontCustomPlatformDataCairo.cpp: Added.
3877         (WebCore::FontCustomPlatformDataCairo::~FontCustomPlatformDataCairo):
3878         (WebCore::FontCustomPlatformDataCairo::fontPlatformData):
3879         (WebCore::releaseData):
3880         (WebCore::createFontCustomPlatformData):
3881         * platform/graphics/win/FontCustomPlatformDataCairo.h: Added.
3882         (WebCore::FontCustomPlatformDataCairo::FontCustomPlatformDataCairo):
3883         * platform/graphics/win/FontPlatformData.h:
3884         (WebCore::FontPlatformData::FontPlatformData):
3885         (WebCore::FontPlatformData::fontFace):
3886         (WebCore::FontPlatformData::scaledFont):
3887         (WebCore::FontPlatformData::operator==):
3888         * platform/graphics/win/FontPlatformDataCGWin.cpp: Copied from WebCore/platform/graphics/win/FontPlatformDataWin.cpp.
3889         (WebCore::FontPlatformData::platformDataInit):
3890         * platform/graphics/win/FontPlatformDataCairoWin.cpp: Added.
3891         (WebCore::FontPlatformData::platformDataInit):
3892         (WebCore::FontPlatformData::FontPlatformData):
3893         (WebCore::FontPlatformData::setFont):
3894         * platform/graphics/win/FontPlatformDataWin.cpp:  Moved CG-specific
3895           code to FontPlatformDataCG.cpp.
3896         (WebCore::FontPlatformData::FontPlatformData):
3897         * platform/graphics/win/GlyphPageTreeNodeCGWin.cpp: Copied from WebCore/platform/graphics/win/GlyphPageTreeNodeWin.cpp.
3898         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp: Copied from WebCore/platform/graphics/win/GlyphPageTreeNodeWin.cpp.
3899         (WebCore::GlyphPage::fill):
3900         * platform/graphics/win/GlyphPageTreeNodeWin.cpp: Removed.  Replaced
3901           with CG- and Cairo-specific versions.
3902         * platform/graphics/win/SimpleFontDataCGWin.cpp:
3903         (WebCore::SimpleFontData::platformInit):
3904         (WebCore::SimpleFontData::platformDestroy):
3905         (WebCore::SimpleFontData::platformWidthForGlyph):
3906         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
3907         (WebCore::SimpleFontData::platformInit):
3908         (WebCore::SimpleFontData::platformDestroy):
3909         (WebCore::SimpleFontData::platformWidthForGlyph):
3910         (WebCore::SimpleFontData::setFont):
3911         * platform/graphics/win/SimpleFontDataWin.cpp:
3912         (WebCore::SimpleFontData::initGDIFont):
3913         (WebCore::SimpleFontData::platformCommonDestroy):
3914         (WebCore::SimpleFontData::widthForGDIGlyph):
3915
3916 2008-02-20  Darin Adler  <darin@apple.com>
3917
3918         Reviewed by Sam.
3919
3920         * dom/Node.h: Took out unneeded forward declaration of TextStream.
3921
3922 2008-02-20  Darin Adler  <darin@apple.com>
3923
3924         Reviewed by Sam.
3925
3926         * rendering/RenderObject.h: Took out unneeded forward declaration of TextStream.
3927
3928 2008-02-20  David Hyatt  <hyatt@apple.com>
3929
3930         Fix for bug 16760, incorrect <object> MIME type handling and fallback
3931         handling.
3932
3933         Reviewed by darin
3934
3935         * html/HTMLImageLoader.cpp:
3936         (WebCore::HTMLImageLoader::notifyFinished):
3937         If the image had an error, make sure to do <object> fallback.
3938
3939         * html/HTMLObjectElement.cpp:
3940         (WebCore::HTMLObjectElement::renderFallbackContent):
3941         Before doing fallback check if there is a MIME type mismatch between
3942         an image type and a non-image type.  If so, detach and re-attach after
3943         storing the correct MIME type.
3944
3945         * loader/loader.cpp:
3946         (WebCore::Loader::didReceiveData):
3947         Consider it an error when a 404 is encountered on a CachedResource load.
3948
3949 2008-02-20  Anders Carlsson  <andersca@apple.com>
3950
3951         Reviewed by Sam.
3952
3953         StringImpl constructors used by AtomicString should start with a refcount of 1.
3954         
3955         * platform/text/AtomicString.cpp:
3956         (WebCore::AtomicString::add):
3957         * platform/text/AtomicString.h:
3958         * platform/text/StringImpl.cpp:
3959         (WebCore::StringImpl::StringImpl):
3960
3961 2008-02-20  Darin Adler  <darin@apple.com>
3962
3963         * bindings/js/kjs_navigator.cpp:
3964         (WebCore::needsYouTubeQuirk): Tweak comments.
3965
3966 2008-02-20  Anders Carlsson  <andersca@apple.com>
3967
3968         Reviewed by Darin.
3969
3970         Change all refcounted classes in page/ to start with a refcount of 1.
3971
3972         * page/BarInfo.cpp:
3973         (WebCore::BarInfo::BarInfo):
3974         * page/BarInfo.h:
3975         (WebCore::BarInfo::create):
3976         * page/Console.cpp:
3977         (WebCore::Console::Console):
3978         * page/Console.h:
3979         (WebCore::Console::create):
3980         * page/DOMSelection.cpp:
3981         (WebCore::DOMSelection::DOMSelection):
3982         * page/DOMSelection.h:
3983         (WebCore::DOMSelection::create):
3984         * page/DOMWindow.cpp:
3985         (WebCore::DOMWindow::DOMWindow):
3986         (WebCore::DOMWindow::screen):
3987         (WebCore::DOMWindow::history):
3988         (WebCore::DOMWindow::locationbar):
3989         (WebCore::DOMWindow::menubar):
3990         (WebCore::DOMWindow::personalbar):
3991         (WebCore::DOMWindow::scrollbars):
3992         (WebCore::DOMWindow::statusbar):
3993         (WebCore::DOMWindow::toolbar):
3994         (WebCore::DOMWindow::console):
3995         (WebCore::DOMWindow::getSelection):
3996         * page/DOMWindow.h:
3997         (WebCore::DOMWindow::create):
3998         * page/Frame.cpp:
3999         (WebCore::Frame::domWindow):
4000         * page/History.cpp:
4001         (WebCore::History::History):
4002         * page/History.h:
4003         (WebCore::History::create):
4004         * page/InspectorController.cpp:
4005         (WebCore::InspectorResource::create):
4006         (WebCore::InspectorResource::InspectorResource):
4007         (WebCore::InspectorDatabaseResource::create):
4008         (WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
4009         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
4010         (WebCore::InspectorController::identifierForInitialRequest):
4011         (WebCore::InspectorController::didOpenDatabase):
4012         * page/Plugin.h:
4013         (WebCore::Plugin::create):
4014         (WebCore::Plugin::Plugin):
4015         * page/Screen.cpp:
4016         (WebCore::Screen::Screen):
4017         * page/Screen.h:
4018         (WebCore::Screen::create):
4019
4020 2008-02-20  Sam Weinig  <sam@webkit.org>
4021
4022         Reviewed by Darin and Geoff.
4023
4024         - <rdar://problem/5754378> work around missing video on YouTube front page with a site-specific hack
4025
4026         * WebCore.base.exp: Updated.
4027
4028         * bindings/js/kjs_navigator.cpp:
4029         (WebCore::needsYouTubeQuirk): Added. Return true on Windows only when the quirk is needed.
4030         (WebCore::Navigator::getValueProperty): For the appVersion property, if needsYouTubeQuirk
4031         return true, then return the empty string.
4032
4033         * page/Settings.cpp:
4034         (WebCore::Settings::Settings): Set m_needsSiteSpecificQuirks to false.
4035         (WebCore::Settings::setNeedsSiteSpecificQuirks): Added.
4036         * page/Settings.h: Added m_needsSiteSpecificQuirks.
4037         (WebCore::Settings::needsSiteSpecificQuirks): Added.
4038
4039 2008-02-20  David Hyatt  <hyatt@apple.com>
4040
4041         Fix for bug 12751, doctype nodes aren't part of the Document (Acid3).
4042
4043         Reviewed by Sam Weinig
4044
4045         Many tests added in fast/doctypes.
4046
4047         * dom/DOMImplementation.cpp:
4048         (WebCore::DOMImplementation::createDocument):
4049         (WebCore::DOMImplementation::createHTMLDocument):
4050         * dom/Document.cpp:
4051         (WebCore::Document::Document):
4052         (WebCore::Document::setDocType):
4053         (WebCore::Document::attach):
4054         (WebCore::Document::getImageMap):
4055         * dom/Document.h:
4056         (WebCore::Document::doctype):
4057         (WebCore::Document::):
4058         (WebCore::Document::determineParseMode):
4059         (WebCore::Document::setParseMode):
4060         (WebCore::Document::parseMode):
4061         (WebCore::Document::inCompatMode):
4062         (WebCore::Document::inAlmostStrictMode):
4063         (WebCore::Document::inStrictMode):
4064         * dom/DocumentType.cpp:
4065         (WebCore::DocumentType::cloneNode):
4066         (WebCore::DocumentType::insertedIntoDocument):
4067         (WebCore::DocumentType::removedFromDocument):
4068         * dom/DocumentType.h:
4069         * dom/Node.cpp:
4070         (WebCore::Node::childAllowed):
4071         * dom/StyledElement.cpp:
4072         (WebCore::StyledElement::attributeChanged):
4073         * dom/XMLTokenizer.cpp:
4074         (WebCore::XMLTokenizer::internalSubset):
4075         (WebCore::):
4076         * editing/markup.cpp:
4077         (WebCore::appendStartMarkup):
4078         * html/HTMLAppletElement.cpp:
4079         (WebCore::HTMLAppletElement::createRenderer):
4080         * html/HTMLDocument.cpp:
4081         (WebCore::HTMLDocument::HTMLDocument):
4082         (WebCore::HTMLDocument::childAllowed):
4083         (WebCore::HTMLDocument::determineParseMode):
4084         * html/HTMLDocument.h:
4085         * html/HTMLMapElement.cpp:
4086         (WebCore::HTMLMapElement::parseMappedAttribute):
4087         * html/HTMLParamElement.cpp:
4088         (WebCore::HTMLParamElement::parseMappedAttribute):
4089         * html/HTMLParser.cpp:
4090         (WebCore::HTMLParser::parseDoctypeToken):
4091         * html/HTMLParser.h:
4092         * html/HTMLTokenizer.cpp:
4093         (WebCore::HTMLTokenizer::reset):
4094         (WebCore::HTMLTokenizer::parseDoctype):
4095         (WebCore::HTMLTokenizer::parseTag):
4096         (WebCore::HTMLTokenizer::write):
4097         (WebCore::HTMLTokenizer::finish):
4098         (WebCore::HTMLTokenizer::processDoctypeToken):
4099         * html/HTMLTokenizer.h:
4100         (WebCore::):
4101         (WebCore::DoctypeToken::DoctypeToken):
4102         (WebCore::DoctypeToken::reset):
4103         (WebCore::DoctypeToken::state):
4104         (WebCore::DoctypeToken::setState):
4105         (WebCore::HTMLTokenizer::State::inDoctype):
4106         (WebCore::HTMLTokenizer::State::setInDoctype):
4107         (WebCore::HTMLTokenizer::State::needsSpecialWriteHandling):
4108         (WebCore::HTMLTokenizer::State::):
4109         * html/HTMLViewSourceDocument.cpp:
4110         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
4111         (WebCore::HTMLViewSourceDocument::addViewSourceDoctypeToken):
4112         * html/HTMLViewSourceDocument.h:
4113         * loader/FrameLoader.cpp:
4114         (WebCore::FrameLoader::write):
4115         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
4116         * page/Frame.cpp:
4117         (WebCore::Frame::documentTypeString):
4118         * page/inspector/utilities.js:
4119         * xml/XSLTProcessor.cpp:
4120         (WebCore::XSLTProcessor::createDocumentFromSource):
4121
4122 2008-02-20  Anders Carlsson  <andersca@apple.com>
4123
4124         Reviewed by Darin.
4125
4126         Change most SVG related classes to start out with a ref count of 1.
4127         
4128         * bindings/js/JSSVGPointListCustom.cpp:
4129         (WebCore::JSSVGPointList::initialize):
4130         (WebCore::JSSVGPointList::insertItemBefore):
4131         (WebCore::JSSVGPointList::replaceItem):
4132         (WebCore::JSSVGPointList::appendItem):
4133         * bindings/js/JSSVGTransformListCustom.cpp:
4134         (WebCore::JSSVGTransformList::initialize):
4135         (WebCore::JSSVGTransformList::insertItemBefore):
4136         (WebCore::JSSVGTransformList::replaceItem):
4137         (WebCore::JSSVGTransformList::appendItem):
4138         * rendering/SVGCharacterLayoutInfo.h:
4139         (WebCore::SVGCharOnPath::create):
4140         (WebCore::SVGCharOnPath::SVGCharOnPath):
4141         * rendering/SVGRootInlineBox.cpp:
4142         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
4143         * svg/SVGAnimationElement.cpp:
4144         (WebCore::SVGAnimationElement::parseBeginOrEndValue):
4145         * svg/SVGClipPathElement.cpp:
4146         (WebCore::SVGClipPathElement::canvasResource):
4147         * svg/SVGElementInstance.cpp:
4148         (WebCore::SVGElementInstance::childNodes):
4149         * svg/SVGElementInstanceList.cpp:
4150         (WebCore::SVGElementInstanceList::SVGElementInstanceList):
4151         * svg/SVGElementInstanceList.h:
4152         (WebCore::SVGElementInstanceList::create):
4153         * svg/SVGFitToViewBox.cpp:
4154         (WebCore::SVGFitToViewBox::SVGFitToViewBox):
4155         * svg/SVGGradientElement.cpp:
4156         (WebCore::SVGGradientElement::SVGGradientElement):
4157         (WebCore::SVGGradientElement::canvasResource):
4158         * svg/SVGImageElement.cpp:
4159         (WebCore::SVGImageElement::SVGImageElement):
4160         * svg/SVGLengthList.h:
4161         (WebCore::SVGLengthList::create):
4162         * svg/SVGList.h:
4163         (WebCore::SVGList::SVGList):
4164         (WebCore::SVGPODListItem::create):
4165         (WebCore::SVGPODListItem::copy):
4166         (WebCore::SVGPODListItem::SVGPODListItem):
4167         (WebCore::SVGPODList::initialize):
4168         (WebCore::SVGPODList::insertItemBefore):
4169         (WebCore::SVGPODList::replaceItem):
4170         (WebCore::SVGPODList::appendItem):
4171         (WebCore::SVGPODList::SVGPODList):
4172         * svg/SVGMarkerElement.cpp:
4173         (WebCore::SVGMarkerElement::canvasResource):
4174         * svg/SVGMaskElement.cpp:
4175         (WebCore::SVGMaskElement::canvasResource):
4176         * svg/SVGNumberList.h:
4177         (WebCore::SVGNumberList::create):
4178         * svg/SVGPathElement.cpp:
4179         (WebCore::SVGPathElement::createSVGPathSegClosePath):
4180         (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
4181         (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
4182         (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
4183         (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
4184         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
4185         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
4186         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
4187         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
4188         (WebCore::SVGPathElement::createSVGPathSegArcAbs):
4189         (WebCore::SVGPathElement::createSVGPathSegArcRel):
4190         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
4191         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
4192         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
4193         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
4194         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
4195         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
4196         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
4197         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
4198         (WebCore::SVGPathElement::pathSegList):
4199         * svg/SVGPathElement.h:
4200         * svg/SVGPathSeg.h:
4201         (WebCore::SVGPathSeg::SVGPathSeg):
4202         * svg/SVGPathSegArc.h:
4203         (WebCore::SVGPathSegArcAbs::create):
4204         (WebCore::SVGPathSegArcRel::create):
4205         * svg/SVGPathSegClosePath.h:
4206         (WebCore::SVGPathSegClosePath::create):
4207         * svg/SVGPathSegCurvetoCubic.h:
4208         (WebCore::SVGPathSegCurvetoCubicAbs::create):
4209         (WebCore::SVGPathSegCurvetoCubicRel::create):
4210         * svg/SVGPathSegCurvetoCubicSmooth.h:
4211         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::create):
4212         (WebCore::SVGPathSegCurvetoCubicSmoothRel::create):
4213         * svg/SVGPathSegCurvetoQuadratic.h:
4214         (WebCore::SVGPathSegCurvetoQuadraticAbs::create):
4215         (WebCore::SVGPathSegCurvetoQuadraticRel::create):
4216         * svg/SVGPathSegCurvetoQuadraticSmooth.h:
4217         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::create):
4218         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::create):
4219         * svg/SVGPathSegLineto.h:
4220         (WebCore::SVGPathSegLinetoAbs::create):
4221         (WebCore::SVGPathSegLinetoRel::create):
4222         * svg/SVGPathSegLinetoHorizontal.h:
4223         (WebCore::SVGPathSegLinetoHorizontalAbs::create):
4224         (WebCore::SVGPathSegLinetoHorizontalRel::create):
4225         * svg/SVGPathSegLinetoVertical.h:
4226         (WebCore::SVGPathSegLinetoVerticalAbs::create):
4227         (WebCore::SVGPathSegLinetoVerticalRel::create):
4228         * svg/SVGPathSegList.h:
4229         (WebCore::SVGPathSegList::create):
4230         * svg/SVGPathSegMoveto.h:
4231         (WebCore::SVGPathSegMovetoAbs::create):
4232         (WebCore::SVGPathSegMovetoRel::create):
4233         * svg/SVGPatternElement.cpp:
4234         (WebCore::SVGPatternElement::SVGPatternElement):
4235         (WebCore::SVGPatternElement::canvasResource):
4236         * svg/SVGPointList.h:
4237         (WebCore::SVGPointList::create):
4238         * svg/SVGPolyElement.cpp:
4239         (WebCore::SVGPolyElement::points):
4240         * svg/SVGPreserveAspectRatio.cpp:
4241         (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
4242         * svg/SVGPreserveAspectRatio.h:
4243         (WebCore::SVGPreserveAspectRatio::create):