9505da57608ff4d94375c99086a22ee9884cc9ad
[WebKit-https.git] / WebCore / ChangeLog
1 2008-02-25  Darin Adler  <darin@apple.com>
2
3         Reviewed by Adam.
4
5         * WebCore.base.exp: Export blankURL, and sort the file.
6
7 2008-02-25  Simon Hausmann  <hausmann@webkit.org>
8
9         Reviewed by Mark Rowe.
10
11         Fix compilation with gcc 4.3, added stdio.h and unistd.h inclusions.
12
13         * dom/Position.cpp:
14         * dom/Range.cpp:
15         * editing/Selection.cpp:
16         * editing/SelectionController.cpp:
17         * editing/VisiblePosition.cpp:
18         * history/HistoryItem.cpp:
19         * loader/Cache.cpp:
20         * loader/FTPDirectoryParser.cpp:
21         * platform/KURL.cpp:
22         * platform/gtk/FileSystemGtk.cpp:
23         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
24         * platform/text/TextCodecLatin1.cpp:
25         * platform/text/TextCodecUserDefined.cpp:
26         * rendering/CounterNode.cpp:
27         * rendering/RenderObject.cpp:
28
29 2008-02-25  Johnny Ding  <johnnyding.webkit@gmail.com>
30
31         Reviewed by Darin Adler.
32
33         - fix http://bugs.webkit.org/show_bug.cgi?id=17444
34
35         In HTMLTokenizer::write, the code checks 'pendingScripts.isEmpty()' to decide
36         whether to save prependingSrc or not. However, in HTMLTokenizer::scriptHandler
37         and HTMLTokenizer::scriptExecution, the code checks testBit:LoadingExtScript
38         to decide whether to save prependingSrc or not. The later behavior is not right
39         because, in scriptHandler and scriptExecution, even the pendingScripts queue is
40         empty, the testBit:LoadingExtScript might be TRUE.
41
42         Test: fast/tokenizer/nested-multiple-scripts.html
43
44         * html/HTMLTokenizer.cpp:
45         (WebCore::HTMLTokenizer::scriptHandler): check pendingScripts.isEmpty() instead of
46         checking state.loadingExtScript().
47         (WebCore::HTMLTokenizer::scriptExecution): check pendingScripts.isEmpty() instead of
48         checking state.loadingExtScript().
49
50 2008-02-24  Darin Adler  <darin@apple.com>
51
52         * dom/Document.h: Removed stray duplicate declaration of
53         RegisteredEventListenerList.
54
55 2008-02-24  Darin Adler  <darin@apple.com>
56
57         * dom/Range.cpp:
58         (WebCore::Range::surroundContents): Removed incorrect comment.
59         I added it a while ago, and I was just mixed up.
60
61 2008-02-24  Darin Adler  <darin@apple.com>
62
63         - quick follow-up to that last check-in
64
65         * platform/graphics/cg/ImageSourceCG.cpp:
66         (WebCore::ImageSource::createFrameAtIndex): Use CFEqual instead of
67         WebCore::String's == for speed.
68
69 2008-02-24  Michael Knaup  <michael.knaup@mac.com>
70
71         Reviewed by Darin.
72
73         Bug 8749: XBM rendered incorrectly as black on white
74
75         xbm images are now created and rendered using black on a
76         transparent background (same behavior as in Firefox)
77
78         Test: platform/mac/fast/canvas/canvas-draw-xbm-image.html
79
80         * platform/graphics/cg/ImageSourceCG.cpp:
81         (WebCore::ImageSource::createFrameAtIndex):
82
83 2008-02-24  Dan Bernstein  <mitz@apple.com>
84
85         Reviewed by Darin Adler.
86
87         - fix http://bugs.webkit.org/show_bug.cgi?id=17471
88           REGRESSION (r30438): Crash in deleteLineBoxes in cursor-adjusting code browsing Acid3
89
90         Test: http/tests/misc/object-image-error.html
91
92         * html/HTMLObjectElement.cpp:
93         (WebCore::HTMLObjectElement::attach): Added an early return in case
94         updateFromElement() has changed the object to use fallback content.
95
96 2008-02-24  Dan Bernstein  <mitz@apple.com>
97
98         Reviewed by Darin Adler.
99
100         - fix float positioning when a float that does not fit on the line is
101           followed by a float that does
102
103         Test: fast/block/float/narrow-after-wide.html
104
105         * rendering/bidi.cpp:
106         (WebCore::RenderBlock::findNextLineBreak): Changed to not position any
107         more floats on the line once a float that does not fit is encountered.
108         That float should be pushed to the next line, and so should all floats
109         that follow, regardless of whether they can fit on the current line.
110
111 2008-02-24  Darin Adler  <darin@apple.com>
112
113         Reviewed by Sam.
114
115         - fix http://bugs.webkit.org/show_bug.cgi?id=16770
116           Acid3 expects :visited styled links to restyle on iframe load
117
118         Disentangle global history updating from the back/forward history.
119         There are many cases where we don't want to create a new back/forward
120         item, but we do still want to add to the global history (used for visited
121         link coloring) in those cases.
122
123         Test: fast/history/subframe-is-visited.html
124
125         * loader/FrameLoader.cpp:
126         (WebCore::FrameLoader::updateGlobalHistory): Renamed from
127         addHistoryForCurrentLocation and removed the back/forward handling.
128         (WebCore::FrameLoader::updateHistoryForStandardLoad): Streamlined logic a
129         bit. Replaced call to addHistoryForCurrentLocation with a call to
130         addBackForwardItemClippedAtTarget. Added an unconditional call to
131         updateGlobalHistory.
132         (WebCore::FrameLoader::updateHistoryForClientRedirect): Added a FIXME;
133         why doesn't this function update global history?
134         (WebCore::FrameLoader::updateHistoryForBackForwardNavigation): Ditto.
135         (WebCore::FrameLoader::updateHistoryForReload): Replaced the direct call
136         the client with a call to the new updateGlobalHistory function.
137         (WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory): Did
138         the same changes as for updateHistoryForStandardLoad.
139         * loader/FrameLoader.h: More of the same.
140
141         * loader/FrameLoaderClient.h: Removed updateGlobalHistoryForReload and
142         renamed updateGlobalHistoryForStandardLoad to updateGlobalHistory.
143
144         * svg/graphics/SVGImageEmptyClients.h:
145         (WebCore::SVGEmptyFrameLoaderClient::updateGlobalHistory): Updated to
146         match the above.
147
148 2008-02-23  Darin Adler  <darin@apple.com>
149
150         Reviewed by Sam.
151
152         - fix http://bugs.webkit.org/show_bug.cgi?id=17508
153           REGRESSION (r30535): mailto regression tests failing
154
155         * html/HTMLFormElement.cpp:
156         (WebCore::HTMLFormElement::submit): Restore the old logic, with its unpleasant
157         trip through String do to the replace operation. It's inefficient, but there's
158         no real reason to worry about the efficiency of mailto forms, since that feature
159         is nearly obsolete.
160
161 2008-02-23  Darin Adler  <darin@apple.com>
162
163         Reviewed by Sam.
164
165         - replace SegmentedString's use of DeprecatedValueList with Deque
166
167         Testing indicates this is a slight speed-up for page loading.
168
169         * platform/text/SegmentedString.cpp:
170         (WebCore::SegmentedString::length): Update to use Deque.
171         (WebCore::SegmentedString::setExcludeLineNumbers): Ditto.
172         (WebCore::SegmentedString::append): Ditto.
173         (WebCore::SegmentedString::prepend): Ditto.
174         (WebCore::SegmentedString::advanceSubstring): Ditto.
175         (WebCore::SegmentedString::toString): Ditto.
176         * platform/text/SegmentedString.h: Tweak formatting. Don't bother making an entire
177         class private with a single friend. Change m_sbstrings from a DeprecatedValueList
178         to a Deque.
179
180 2008-02-23  Darin Adler  <darin@apple.com>
181
182         Reviewed by Anders.
183
184         - fix http://bugs.webkit.org/show_bug.cgi?id=17506
185           REGRESSION (r30535): ASSERTION FAILED: i < size()
186
187         * loader/TextResourceDecoder.cpp:
188         (WebCore::findTextEncoding): Fix off-by-one in code that null-terminates
189         the C string here.
190
191 2008-02-23  Matt Lilek  <webkit@mattlilek.com>
192
193         Not reviewed, build fix.
194
195         * platform/network/cf/FormDataStreamCFNet.cpp:
196         (WebCore::httpBodyFromRequest):
197         * plugins/win/PluginViewWin.cpp:
198         (WebCore::PluginView::handlePost):
199
200 2008-02-23  Dan Bernstein  <mitz@apple.com>
201
202         - fix a typo
203
204         * platform/graphics/win/GlyphPageTreeNodeCGWin.cpp:
205         (WebCore::GlyphPage::fill):
206         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp:
207         (WebCore::GlyphPage::fill):
208
209 2008-02-23  Dan Bernstein  <mitz@apple.com>
210
211         Reviewed by Anders Carlsson.
212
213         - fix GlyphPage::fill() logic for partial page fills
214
215         * platform/graphics/win/GlyphPageTreeNodeCGWin.cpp:
216         (WebCore::GlyphPage::fill): Changed the test for non-BMP characters to
217         work correctly when the length parameter is less than a full page size.
218         Also updated the comment.
219         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp:
220         (WebCore::GlyphPage::fill): Ditto.
221
222 2008-02-23  Kevin Ollivier  <kevino@theolliviers.com>
223
224         Reviewed by Darin Adler.
225
226         Move text drawing into wxcode, as we need platform-dependent
227         APIs for drawing non-kerned text, which wx doesn't yet have.
228         (But hopefully will, once these APIs are fleshed out on all
229         platforms!)
230
231         http://bugs.webkit.org/show_bug.cgi?id=17396
232
233         * platform/graphics/wx/FontWx.cpp:
234         (WebCore::Font::drawGlyphs):
235         * platform/wx/wxcode/gtk/non-kerned-drawing.cpp: Added.
236         * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp: Added.
237         * platform/wx/wxcode/non-kerned-drawing.h: Added.
238         * platform/wx/wxcode/win/non-kerned-drawing.cpp: Added.
239         * webcore-wx.bkl:
240
241 2008-02-23  Darin Adler  <darin@apple.com>
242
243         Pointed out by Mitz.
244
245         * loader/TextResourceDecoder.cpp:
246         (WebCore::find): Fix a "==" that was supposed to be ">".
247         (WebCore::findIgnoringCase): Ditto.
248
249 2008-02-23  Darin Adler  <darin@apple.com>
250
251         Reviewed by Sam.
252
253         * html/HTMLFormElement.cpp:
254         (WebCore::appendEncodedString): Fix buffer overrun in the code I just landed.
255
256 2008-02-23  Darin Adler  <darin@apple.com>
257
258         Reviewed by Sam.
259
260         - remove all but 1 remaining use of DeprecatedCString
261         - change FormData to start refcount at 1
262
263         * html/HTMLFormElement.cpp:
264         (WebCore::appendString): Added. Helpers for Vector<char>.
265         (WebCore::appendEncodedString): Renamed from encodeCString and changed to
266         append to an existing Vector<char> to cut down a bit on memory allocation.
267         (WebCore::HTMLFormElement::formData): Replace the DeprecatedCString called
268         enc_string with a Vector<char> called encodedData. Change to use the new
269         FormData::create function.
270         (WebCore::HTMLFormElement::submit): Same thing, for the mailto form code.
271
272         * loader/TextResourceDecoder.cpp:
273         (WebCore::find): Added. Helper for searching in char* with length.
274         (WebCore::findIgnoringCase): Ditto.
275         (WebCore::findTextEncoding): Added. Helper for looking up a text encoding
276         when we have a char* with length rather than a null-terminated char*.
277         (WebCore::findXMLEncoding): Changed to use char* and length rather than
278         DeprecatedCString. Also fixed some things that would be one-character
279         buffer overruns in a string that's not null-terminated.
280         (WebCore::TextResourceDecoder::checkForCSSCharset): Change to use
281         findTextEncoding rather than constructing a CString to pass to the
282         TextEncodingconstructor.
283         (WebCore::TextResourceDecoder::checkForHeadCharset): Ditto.
284
285         * platform/network/FormData.cpp:
286         (WebCore::FormData::FormData): Changed to start refcount at 1.
287         (WebCore::FormData::create): Added.
288         (WebCore::FormData::copy): Call adoptRef since refcount starts at 1.
289         * platform/network/FormData.h: Made constructor private. Added create functions.
290
291         * platform/network/mac/ResourceRequestMac.mm:
292         (WebCore::ResourceRequest::doUpdateResourceRequest): Call FormData::create.
293         * xml/XMLHttpRequest.cpp:
294         (WebCore::XMLHttpRequest::send): Ditto.
295
296 2008-02-23  Darin Adler  <darin@apple.com>
297
298         Reviewed by Anders.
299
300         - http://bugs.webkit.org/show_bug.cgi?id=17067
301           eliminate attributes parameter from JSObject::put for speed/clarity
302
303         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
304         (WebCore::JSCSSStyleDeclaration::customPut): Remove attributes argument.
305
306         * bindings/js/JSCanvasPixelArrayCustom.cpp:
307         (WebCore::JSCanvasPixelArray::indexGetter): Use early exit idiom.
308         (WebCore::JSCanvasPixelArray::indexSetter): Moved length check into the
309         CanvasPixelArray object, for consistency with the getter. Removed attributes
310         argument.
311
312         * bindings/js/JSDOMWindowCustom.cpp:
313         (WebCore::JSDOMWindow::customPut): Removed special case for variable
314         initialization, which is not needed since that does use put any more.
315         Removed attributes argument.
316
317         * bindings/js/JSEventTargetBase.h:
318         (WebCore::JSEventTargetBase::putValueProperty): Removed attributes argument.
319         (WebCore::JSEventTargetBase::put): Ditto.
320         (WebCore::JSEventTargetPrototype::self): Removed Internal flag.
321         * bindings/js/JSEventTargetNode.cpp:
322         (WebCore::JSEventTargetNode::put): Removed attributes argument.
323         (WebCore::JSEventTargetNode::putValueProperty): Ditto.
324         * bindings/js/JSEventTargetNode.h: Ditto.
325         * bindings/js/JSHTMLAppletElementCustom.cpp:
326         (WebCore::JSHTMLAppletElement::customPut): Ditto.
327         * bindings/js/JSHTMLEmbedElementCustom.cpp:
328         (WebCore::JSHTMLEmbedElement::customPut): Ditto.
329         * bindings/js/JSHTMLInputElementBase.cpp:
330         (WebCore::JSHTMLInputElementBase::put): Ditto.
331         (WebCore::JSHTMLInputElementBase::putValueProperty): Ditto.
332         * bindings/js/JSHTMLInputElementBase.h: Ditto.
333         * bindings/js/JSHTMLObjectElementCustom.cpp:
334         (WebCore::JSHTMLObjectElement::customPut): Ditto.
335         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
336         (WebCore::JSHTMLOptionsCollection::indexSetter): Ditto.
337         * bindings/js/JSHTMLSelectElementCustom.cpp:
338         (WebCore::JSHTMLSelectElement::indexSetter): Ditto.
339         * bindings/js/JSHistoryCustom.cpp:
340         (WebCore::JSHistory::customPut): Ditto.
341         * bindings/js/JSLocation.cpp:
342         (WebCore::JSLocation::put): Ditto.
343         * bindings/js/JSLocation.h: Ditto.
344         * bindings/js/JSXMLHttpRequest.cpp:
345         (WebCore::JSXMLHttpRequest::put): Ditto.
346         (WebCore::JSXMLHttpRequest::putValueProperty): Ditto.
347         * bindings/js/JSXMLHttpRequest.h: Ditto.
348
349         * bindings/js/kjs_dom.cpp:
350         (WebCore::getRuntimeObject): Changed return type to JSObject*.
351         * bindings/js/kjs_dom.h: Ditto.
352
353         * bindings/js/kjs_events.cpp:
354         (WebCore::JSClipboard::put): Removed attributes argument.
355         (WebCore::JSClipboard::putValueProperty): Ditto.
356         * bindings/js/kjs_events.h: Ditto.
357
358         * bindings/js/kjs_html.cpp:
359         (WebCore::runtimeObjectGetter): Updated for change to getRuntimeObject to
360         return a JSObject. Used early exit idiom.
361         (WebCore::runtimeObjectPropertyGetter): Ditto.
362         (WebCore::runtimeObjectCustomGetOwnPropertySlot): Ditto.
363         (WebCore::runtimeObjectCustomPut): Use hasProperty to check for properties
364         that we should put with the property syntax instead of canPut.
365         (WebCore::runtimeObjectImplementsCall): Ditto.
366         (WebCore::runtimeObjectCallAsFunction): Ditto.
367         * bindings/js/kjs_html.h: Removed attributes argument to runtimeObjectCustomPut.
368
369         * bindings/js/kjs_window.cpp:
370         (KJS::Window::put): Removed attributes argument.
371         * bindings/js/kjs_window.h: Ditto.
372
373         * bindings/scripts/CodeGeneratorJS.pm: Removed attributes argument from put,
374         putValueProperty, customPut, and indexSetter.
375
376         * html/CanvasPixelArray.h:
377         (WebCore::CanvasPixelArray::set): Added index checking here, as in the get
378         function. Before, the checking was done in the JavaScript bindings for set.
379
380 2008-02-23  Brent Fulgham  <bfulgham@gmail.com>
381
382         Reviewed by Adam and Darin.
383
384         http://bugs.webkit.org/show_bug.cgi?id=17442
385         Correct the Windows Cairo implementation of GraphicsContext so
386         that Windows 'WorldTransform' is kept in sync with the Cairo
387         transormations.
388
389         Also corrects an uninitialized variable in the Cairo Windows
390         image drag handler.
391
392         WARNING: NO TEST CASES ADDED OR CHANGED
393
394         * platform/graphics/cairo/GraphicsContextCairo.cpp:  Modify
395           methods to call GraphicsContextPlatformPrivate calls, just
396           as is done for the CoreGraphics version.  These calls are
397           nop's for everything but Windows.
398         (WebCore::GraphicsContext::savePlatformState):
399         (WebCore::GraphicsContext::restorePlatformState):
400         (WebCore::GraphicsContext::clip):
401         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
402         (WebCore::GraphicsContext::translate):
403         (WebCore::GraphicsContext::concatCTM): Re-enable for Windows
404         (WebCore::GraphicsContext::beginTransparencyLayer):
405         (WebCore::GraphicsContext::endTransparencyLayer):
406         (WebCore::GraphicsContext::rotate):
407         (WebCore::GraphicsContext::scale):
408         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
409         * platform/graphics/win/GraphicsContextCGWin.cpp:  Move common
410           code for handling WorldTransform calls to parent class.
411         * platform/graphics/win/GraphicsContextCairoWin.cpp:  Add common
412           code for handling WorldTransform calls.
413           (WebCore::GraphicsContextPlatformPrivate::concatCTM):  Change
414           implementation so that it only handles WorldTransform.  The
415           Cairo update is done in GraphicsContextCairo.cpp
416         * platform/graphics/win/GraphicsContextWin.cpp:  Call platform-private
417           methods to keep WorldTransform in sync.
418         (WebCore::GraphicsContextPlatformPrivate::save):
419         (WebCore::GraphicsContextPlatformPrivate::restore):
420         (WebCore::GraphicsContextPlatformPrivate::clip):
421         (WebCore::GraphicsContextPlatformPrivate::scale):
422         (WebCore::GraphicsContextPlatformPrivate::rotate):
423         (WebCore::GraphicsContextPlatformPrivate::translate):
424         * platform/win/DragImageCairoWin.cpp:
425         (WebCore::createDragImageFromImage):  Correct uninitialized value
426
427 2008-02-23  Dan Bernstein  <mitz@apple.com>
428
429         Reviewed by Dave Hyatt.
430
431         - make non-autowrapping text clear floats
432
433         Test: fast/text/whitespace/nowrap-clear-float.html
434
435         * rendering/RenderBlock.cpp:
436         (WebCore::RenderBlock::nextFloatBottomBelow): Renamed nearestFloat() to
437         this and changed to avoid comparing bottom to 0 in each iteration.
438         (WebCore::RenderBlock::getClearDelta): Updated comment for the rename.
439         * rendering/RenderBlock.h:
440         * rendering/bidi.cpp:
441         (WebCore::RenderBlock::fitBelowFloats): Added. Factored out of
442         findNextLineBreak() and simplified.
443         (WebCore::RenderBlock::findNextLineBreak): Changed to call
444         fitBelowFloats(). Fixed the bug by trying to fit below floats in the
445         case of non-wrapping text. Removed some redundancy.
446
447 2008-02-23  Sam Weinig  <sam@webkit.org>
448
449         Reviewed by Oliver Hunt.
450
451         Fix for http://bugs.webkit.org/show_bug.cgi?id=17504
452         Speed up DOM lists array subscription syntax by using the fast 
453         getOwnPropertySlot and set paths
454
455         - 6x speed improvement on Oliver's ImageData put test.
456
457         * bindings/scripts/CodeGeneratorJS.pm: Add fast path for getOwnPropertySlot
458         and put when an indexGetter or indexSetter is used.  We can not use the fast
459         path if an overridingNameGetter is used as there would be no way to override.
460
461 2008-02-23  Kevin Ollivier  <kevino@theolliviers.com>
462
463         wx build fix after JSImageData.cpp was added.
464
465         * WebCoreSources.bkl:
466
467 2008-02-23  Alexey Proskuryakov  <ap@webkit.org>
468
469         Windows build fix - move ThreadCondition implementation from WebCore to WTF.
470
471         * WebCore.vcproj/WebCore.vcproj:
472         * platform/win/ThreadConditionWin.cpp: Removed.
473
474 2008-02-23  Alexey Proskuryakov  <ap@webkit.org>
475
476         Reviewed by Darin.
477
478         Move basic threading support from WebCore to WTF.
479
480         One call that remains in WebCore is callOnMainThread(), and it has its own header now.
481
482         * ForwardingHeaders/wtf/Locker.h: Added.
483         * ForwardingHeaders/wtf/MessageQueue.h: Added.
484         * ForwardingHeaders/wtf/Threading.h: Added.
485         * GNUmakefile.am:
486         * WebCore.pro:
487         * WebCore.vcproj/WebCore.vcproj:
488         * WebCore.xcodeproj/project.pbxproj:
489         * WebCoreSources.bkl:
490         * bindings/js/JSCustomSQLTransactionCallback.cpp:
491         * dom/XMLTokenizer.cpp:
492         * loader/icon/IconDatabase.cpp:
493         (WebCore::iconDatabase):
494         * loader/icon/IconDatabase.h:
495         * platform/Locker.h: Removed.
496         * platform/MainThread.h: Copied from WebCore/platform/Threading.h.
497         (WebCore::initializeThreadingAndMainThread):
498         * platform/MessageQueue.h: Removed.
499         * platform/SecurityOrigin.h:
500         * platform/Threading.h: Removed.
501         * platform/ThreadingNone.cpp: Removed.
502         * platform/gtk/MainThreadGtk.cpp: Copied from WebCore/platform/gtk/ThreadingGtk.cpp.
503         * platform/gtk/ThreadingGtk.cpp: Removed.
504         * platform/mac/MainThreadMac.mm: Copied from WebCore/platform/mac/Threading.mm.
505         * platform/mac/Threading.mm: Removed.
506         * platform/pthreads: Removed.
507         * platform/pthreads/ThreadingPthreads.cpp: Removed.
508         * platform/qt/MainThreadQt.cpp: Copied from WebCore/platform/qt/ThreadingQt.cpp.
509         * platform/qt/ThreadingQt.cpp: Removed.
510         * platform/sql/SQLValue.h:
511         * platform/sql/SQLiteAuthorizer.h:
512         * platform/sql/SQLiteDatabase.h:
513         * platform/win/MainThreadWin.cpp: Copied from WebCore/platform/win/ThreadingWin.cpp.
514         (WebCore::initializeThreadingAndMainThread):
515         * platform/win/MutexWin.cpp: Removed.
516         * platform/win/ThreadingWin.cpp: Removed.
517         * platform/wx/MainThreadWx.cpp: Copied from WebCore/platform/wx/ThreadingWx.cpp.
518         * platform/wx/ThreadingWx.cpp: Removed.
519         * storage/Database.cpp:
520         (WebCore::Database::Database):
521         * storage/Database.h:
522         * storage/DatabaseTask.h:
523         * storage/DatabaseThread.h:
524         * storage/DatabaseTracker.cpp:
525         * storage/OriginQuotaManager.h:
526         * storage/SQLError.h:
527         * storage/SQLResultSet.h:
528         * storage/SQLStatement.h:
529         * storage/SQLStatementCallback.h:
530         * storage/SQLStatementErrorCallback.h:
531         * storage/SQLTransaction.h:
532         * storage/SQLTransactionCallback.h:
533         * storage/SQLTransactionErrorCallback.h:
534         * webcore-wx.bkl:
535
536 2008-02-23  David Kilzer  <ddkilzer@apple.com>
537
538         Please clarify licensing for some files
539         <http://bugs.webkit.org/show_bug.cgi?id=14970>
540
541         Reviewed by Darin.
542
543         * bindings/objc/WebScriptObject.h: Added Apple BSD-style license.
544         * bindings/objc/WebScriptObjectPrivate.h: Ditto.
545         * platform/text/mac/ShapeArabic.c: Added ICU license from WebCore/icu/LICENSE.
546
547 2008-02-22  Justin Garcia  <justin.garcia@apple.com>
548
549         Reviewed by Anders Carlsson.
550
551         <rdar://problem/5714333> Add document.getSelection()
552         
553         Add a synonym for window.getSelection() that FF supports.  There were requests in
554         this bugs dupes to also support the IE only document.selection, but IE's Selection
555         object is too different than ours currently for that to be safe (specifically, we
556         don't support enough of IE's TextRange methods on our DOM Range object yet). I
557         filed <rdar://problem/5761233> to cover that.
558
559         * dom/Document.cpp:
560         (WebCore::Document::getSelection): Added.
561         * dom/Document.h:
562         * dom/Document.idl: Ditto.  JS only since this is about web compatibility.
563
564 2008-02-22  Oliver Hunt  <oliver@apple.com>
565
566         WX build fixes
567
568         * WebCoreSources.bkl:
569
570 2008-02-22  Oliver Hunt  <oliver@apple.com>
571
572         Once more with the cairo/qt/wx build fixing
573
574         * platform/graphics/cairo/ImageBufferCairo.cpp:
575         * platform/graphics/qt/ImageBufferQt.cpp:
576         * platform/graphics/wx/ImageBufferWx.cpp:
577
578 2008-02-22  Mark Rowe  <mrowe@apple.com>
579
580         Windows build fix.  Add missing include of DeprecatedCString.h and sort existing includes.
581
582         * platform/win/PasteboardWin.cpp:
583
584 2008-02-22  Mark Rowe  <mrowe@apple.com>
585
586         Speculative Windows build fix.
587
588         * platform/win/ClipboardUtilitiesWin.cpp:  Add missing include of DeprecatedCString.h and sort existing includes.
589         * platform/win/ClipboardWin.cpp:  Ditto.
590
591 2008-02-22  Oliver Hunt  <oliver@apple.com>
592
593         Build fix for windows, wx and qt
594
595         * html/CanvasPixelArray.h:
596         (WebCore::CanvasPixelArray::set):
597
598 2008-02-22  Oliver Hunt  <oliver@apple.com>
599
600         Unbreak windows vcproj
601
602         * WebCore.vcproj/WebCore.vcproj:
603
604 2008-02-22  Oliver Hunt  <oliver@apple.com>
605
606         Reviewed by Sam W.
607
608         Support Canvas.getImageData and Canvas.createImageData
609         
610         This patch adds support for all the pixel reading portions
611         of the HTML5 Canvas spec.  There are two new types ImageData
612         and CanvasPixelArray which are used to provide the HTML5
613         ImageData object, and the required semantics for assignment
614         to the ImageData data array.
615         
616         We only implement the CG version of ImageBuffer::getImageData,
617         but the logic is null safe, so this will not introduce any
618         crashes into other platforms, unfortunately it will result in
619         JS Object detection "lying" on non-CG platforms.
620
621         Tests: fast/canvas/canvas-ImageData-behaviour.html
622                fast/canvas/canvas-getImageData.html
623
624         * DerivedSources.make:
625         * GNUmakefile.am:
626         * WebCore.pro:
627         * WebCore.vcproj/WebCore.vcproj:
628         * WebCore.xcodeproj/project.pbxproj:
629         * bindings/js/JSCanvasPixelArrayCustom.cpp: Added.
630         (WebCore::JSCanvasPixelArray::indexGetter):
631         (WebCore::JSCanvasPixelArray::indexSetter):
632         (WebCore::toJS):
633         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
634         * bindings/scripts/CodeGeneratorJS.pm:
635         * html/CanvasPixelArray.cpp: Added.
636         (WebCore::CanvasPixelArray::create):
637         * html/CanvasPixelArray.h: Added.
638         (WebCore::CanvasPixelArray::data):
639         (WebCore::CanvasPixelArray::length):
640         (WebCore::CanvasPixelArray::set):
641         (WebCore::CanvasPixelArray::get):
642         * html/CanvasPixelArray.idl: Added.
643         * html/CanvasRenderingContext2D.cpp:
644         (WebCore::createEmptyImageData):
645         (WebCore::CanvasRenderingContext2D::createImageData):
646         (WebCore::CanvasRenderingContext2D::getImageData):
647         * html/CanvasRenderingContext2D.h:
648         * html/CanvasRenderingContext2D.idl:
649         * html/HTMLCanvasElement.cpp:
650         (WebCore::HTMLCanvasElement::convertLogicalToDevice):
651         (WebCore::HTMLCanvasElement::createImageBuffer):
652         * html/HTMLCanvasElement.h:
653         * html/ImageData.cpp: Added.
654         (WebCore::ImageData::create):
655         (WebCore::ImageData::ImageData):
656         * html/ImageData.h: Added.
657         (WebCore::ImageData::width):
658         (WebCore::ImageData::height):
659         (WebCore::ImageData::data):
660         * html/ImageData.idl: Added.
661         * platform/graphics/ImageBuffer.h:
662         * platform/graphics/cairo/ImageBufferCairo.cpp:
663         (WebCore::ImageBuffer::getImageData):
664         * platform/graphics/cg/ImageBufferCG.cpp:
665         (WebCore::ImageBuffer::getImageData):
666         * platform/graphics/qt/ImageBufferQt.cpp:
667         (WebCore::ImageBuffer::getImageData):
668         * platform/graphics/wx/ImageBufferWx.cpp:
669         (WebCore::ImageBuffer::getImageData):
670
671 2008-02-22  Sam Weinig  <sam@webkit.org>
672
673         Rubber-stamped by Adam Roben.
674
675         Rid the project of the Devil known as DeprecatedString!
676
677         * GNUmakefile.am:
678         * WebCore.base.exp:
679         * WebCore.pro:
680         * WebCore.vcproj/WebCore.vcproj:
681         * WebCore.xcodeproj/project.pbxproj:
682         * WebCoreSources.bkl:
683         * dom/Node.h:
684         * html/HTMLFormElement.cpp:
685         * platform/DeprecatedString.cpp: Removed.
686         * platform/DeprecatedString.h: Removed.
687         * platform/graphics/qt/IconQt.cpp:
688         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
689         * platform/gtk/CookieJarGtk.cpp:
690         * platform/gtk/CursorGtk.cpp:
691         * platform/gtk/KeyEventGtk.cpp:
692         * platform/mac/DeprecatedStringMac.mm: Removed.
693         * platform/network/qt/ResourceHandleQt.cpp:
694         * platform/network/win/CookieJarWin.cpp:
695         (WebCore::cookies):
696         * platform/qt/ClipboardQt.cpp:
697         * platform/qt/CookieJarQt.cpp:
698         * platform/qt/CursorQt.cpp:
699         * platform/symbian/DeprecatedStringSymbian.cpp: Removed.
700         * platform/text/AtomicString.cpp:
701         * platform/text/AtomicString.h:
702         * platform/text/PlatformString.h:
703         * platform/text/String.cpp:
704         * platform/text/StringImpl.cpp:
705         * platform/text/qt/StringQt.cpp:
706         (WebCore::String::String):
707         * platform/text/wx/StringWx.cpp:
708         * platform/win/BString.cpp:
709         * platform/win/BString.h:
710         * platform/win/PasteboardWin.cpp:
711
712 2008-02-22  Sam Weinig  <sam@webkit.org>
713
714         Reviewed by Geoff Garen.
715
716         - Remove use of DeprecatedString in CSSStyleSelector.
717
718         * css/CSSStyleSelector.cpp:
719         (WebCore::findHash): Removed.  Use find instead.
720         (WebCore::findSlashDotDotSlash): Changed to take a UChar* and a length.
721         (WebCore::findSlashSlash): Ditto.
722         (WebCore::findSlashDotSlash): Ditto.
723         (WebCore::containsColonSlashSlash): Ditto.
724         (WebCore::cleanPath): Change to operate on a String.
725         (WebCore::checkPseudoState): Changed to use a Vector as a buffer.
726
727 2008-02-22  Geoffrey Garen  <ggaren@apple.com>
728
729         Reviewed by Sam Weinig.
730         
731         Fixed <rdar://problem/5057509> Repro leak of JSXMLHttpRequest and
732         associated objects @ www.viamichelin.it, which was probably an underlying
733         cause of <rdar://problem/5744037> Gmail out of memory (17455)
734         
735         If SubresourceLoader::create returned NULL, we would ref() / gcProtect()
736         the XMLHttpRequest but think we hadn't, therefore never
737         calling deref() / gcUnprotect().
738         
739         This could happen at gmail.com, since gmail.com attempts to send
740         XMLHttpRequests from unload handlers in order to gather usage statistics.
741         (According to comments in the code, SubresourceLoader::create returns
742         NULL when called from an unload handler.)
743
744         The solution is to ref() / gcProtect() only if SubresourceLoader::create
745         doesn't return NULL. This make sense, since we only need to protect the
746         request as long as it has an outstanding network transaction.
747         
748         * xml/XMLHttpRequest.cpp:
749         (WebCore::XMLHttpRequest::XMLHttpRequest):
750         (WebCore::XMLHttpRequest::send):
751
752 2008-02-22  Darin Adler  <darin@apple.com>
753
754         Reviewed, tweaked and landed by Sam.
755
756         - Make RegularExpression operate on Strings instead of DeprecatedStrings.
757
758         * dom/DOMImplementation.cpp:
759         (WebCore::DOMImplementation::isXMLMIMEType): Use string instead of DeprecatedString
760         to build up the RegularExpression.
761         * page/Frame.cpp:
762         (WebCore::createRegExpForLabels): Use String instead of DeprecatedString.
763         (WebCore::Frame::searchForLabelsAboveCell): Ditto.
764         (WebCore::Frame::searchForLabelsBeforeElement): Ditto.
765         (WebCore::Frame::matchLabelsAgainstElement): Ditto.
766         * page/Frame.h:
767         * page/mac/FrameMac.mm:
768         (WebCore::regExpForLabels): Ditto.
769         (WebCore::Frame::searchForNSLabelsAboveCell): Ditto.
770         (WebCore::Frame::searchForLabelsBeforeElement): Ditto.
771         (WebCore::Frame::matchLabelsAgainstElement): Ditto.
772
773         * platform/text/RegularExpression.cpp:
774         (WebCore::RegularExpression::Private::Private):
775         (WebCore::RegularExpression::Private::compile):
776         (WebCore::RegularExpression::RegularExpression):
777         (WebCore::RegularExpression::operator=):
778         (WebCore::RegularExpression::pattern):
779         (WebCore::RegularExpression::match):
780         (WebCore::RegularExpression::search):
781         (WebCore::RegularExpression::searchRev):
782         (WebCore::replace): Added.
783         * platform/text/RegularExpression.h:
784         Change functions to take Strings as input instead of DeprecatedStrings and
785         reduce the complexity of the class by removing unneeded globbing support.
786
787 2008-02-22  Jon Honeycutt  <jhoneycutt@apple.com>
788
789         Reviewed by Anders.
790
791         <rdar://problem/5760360> REGRESSION(r30376): Crash loading plugin page
792         during stress test (after only 5 min) - null dereference
793
794         Full-frame plug-ins create PluginStream objects without loaders, as the
795         PluginView receives the loading callbacks. We were trying to call
796         setDefersLoading on these null pointers.
797
798         * plugins/PluginStream.cpp:
799         (WebCore::PluginStream::startStream): Add null check.
800         (WebCore::PluginStream::destroyStream): Same.
801         (WebCore::PluginStream::deliverData): Same.
802
803 2008-02-22  Darin Adler  <darin@apple.com>
804
805         Reviewed and tweaked by Jon Honeycutt. Reviewed and landed by Sam.
806
807         - Remove uses of DeprecatedString in Windows plugin code.
808
809         * plugins/win/PluginPackageWin.cpp:
810         (WebCore::getVersionInfo): Cleanup formatting.
811         (WebCore::PluginPackage::freeLibraryTimerFired): Remove un-needed variable name.
812         (WebCore::PluginPackage::storeFileVersion): Move casts.
813         (WebCore::PluginPackage::fetchInfo): Use OwnArrayPtr and switch to more efficient
814         use of Vectors.
815         (WebCore::PluginPackage::load): Fix whitespace.
816         (WebCore::PluginPackage::hash): Make the hashCodes const
817         * plugins/win/PluginViewWin.cpp:
818         (WebCore::makeURL): Use String instead of DeprecatedString.
819         (WebCore::parseRFC822HeaderFields): Ditto.
820         (WebCore::PluginView::handlePost): Ditto.
821         (WebCore::PluginView::status): Ditto.
822
823 2008-02-22  Darin Adler  <darin@apple.com>
824
825         Reviewed, tweaked and landed by Sam.
826
827         - Don't use DeprecatedString in HTMLTokenizer.
828
829         * html/HTMLTokenizer.cpp:
830         (WebCore::HTMLTokenizer::finish):
831         * platform/text/PlatformString.h:
832         (WebCore::find):
833
834 2008-02-21  Sam Weinig  <sam@webkit.org>
835
836         Reviewed by Anders Carlsson.
837
838         Fix for <rdar://problem/5757946>
839
840         - Parse URLs before checking whether they are javascript: urls
841           (which require security checks).
842
843         * bindings/js/JSAttrCustom.cpp:
844         (WebCore::JSAttr::setValue):
845         * bindings/js/JSElementCustom.cpp:
846         (WebCore::allowSettingSrcToJavascriptURL):
847         * bindings/js/JSHTMLFrameElementCustom.cpp:
848         (WebCore::allowSettingJavascriptURL):
849         * bindings/js/JSHTMLIFrameElementCustom.cpp:
850         (WebCore::JSHTMLIFrameElement::setSrc):
851
852 2008-02-21  Ada Chan  <adachan@apple.com>
853
854         <rdar://problem/5757873> Buffer overrun in DeprecatedCString::find() in WebCore
855         We could get a buffer overrun in DeprecatedCString::find() if the end of the
856         string matches a beginning portion of the substring, for example, if string is
857         "a" but the substring is "ab".
858         The code as is also will not match things correctly under certain situations
859         since the inner while loop increments the index. For example, we wouldn't find
860         a match if the string is "aab..." and the substring is "ab".  Changed the 
861         inner while loop to increment a temporary index into str.
862         
863         Test: fast/loader/charset-parse.html
864
865         Reviewed by Dan Berstein.
866
867         * platform/DeprecatedCString.cpp:
868         (WebCore::DeprecatedCString::find):
869
870 2008-02-21  David Hyatt  <hyatt@apple.com>
871
872         Fix for bug 17301.  CSS media queries need to use the correct viewport
873         when contained in documents inside iframes (rather than always using the
874         top-level document's viewport).  CSS media queries based on the viewport
875         also needed to be dynamic and update as you resize the window (this is
876         a HOT feature). :)
877
878         This patch gets Acid3 up to 86/100 with 3 colored boxes filled in.
879
880         Reviewed by olliej
881
882         Added fast/media/viewport-media-query.html
883
884         * css/CSSStyleSelector.cpp:
885         (WebCore::CSSStyleSelector::CSSStyleSelector):
886         (WebCore::CSSStyleSelector::addViewportDependentMediaQueryResult):
887         (WebCore::CSSStyleSelector::affectedByViewportChange):
888         * css/CSSStyleSelector.h:
889         (WebCore::MediaQueryResult::MediaQueryResult):
890         * css/MediaQueryEvaluator.cpp:
891         (WebCore::MediaQueryEvaluator::MediaQueryEvaluator):
892         (WebCore::MediaQueryEvaluator):
893         (WebCore::MediaQueryEvaluator::eval):
894         (WebCore::colorMediaFeatureEval):
895         (WebCore::monochromeMediaFeatureEval):
896         (WebCore::device_aspect_ratioMediaFeatureEval):
897         (WebCore::device_pixel_ratioMediaFeatureEval):
898         (WebCore::gridMediaFeatureEval):
899         (WebCore::device_heightMediaFeatureEval):
900         (WebCore::device_widthMediaFeatureEval):
901         (WebCore::heightMediaFeatureEval):
902         (WebCore::widthMediaFeatureEval):
903         (WebCore::min_colorMediaFeatureEval):
904         (WebCore::max_colorMediaFeatureEval):
905         (WebCore::min_monochromeMediaFeatureEval):
906         (WebCore::max_monochromeMediaFeatureEval):
907         (WebCore::min_device_aspect_ratioMediaFeatureEval):
908         (WebCore::max_device_aspect_ratioMediaFeatureEval):
909         (WebCore::min_device_pixel_ratioMediaFeatureEval):
910         (WebCore::max_device_pixel_ratioMediaFeatureEval):
911         (WebCore::min_heightMediaFeatureEval):
912         (WebCore::max_heightMediaFeatureEval):
913         (WebCore::min_widthMediaFeatureEval):
914         (WebCore::max_widthMediaFeatureEval):
915         (WebCore::min_device_heightMediaFeatureEval):
916         (WebCore::max_device_heightMediaFeatureEval):
917         (WebCore::min_device_widthMediaFeatureEval):
918         (WebCore::max_device_widthMediaFeatureEval):
919         * css/MediaQueryEvaluator.h:
920         * css/MediaQueryExp.cpp:
921         (WebCore::MediaQueryExp::~MediaQueryExp):
922         * css/MediaQueryExp.h:
923         (WebCore::MediaQueryExp::value):
924         (WebCore::MediaQueryExp::isViewportDependent):
925         * html/HTMLMediaElement.cpp:
926         (WebCore::HTMLMediaElement::pickMedia):
927         * page/FrameView.cpp:
928         (WebCore::FrameView::layout):
929
930 2008-02-21  Anders Carlsson  <andersca@apple.com>
931
932         Reviewed by Sam.
933
934         Make more classes start out with a refcount of 1.
935
936         * dom/QualifiedName.cpp:
937         (WebCore::QNameComponentsTranslator::translate):
938         (WebCore::QualifiedName::QualifiedName):
939         * dom/QualifiedName.h:
940         (WebCore::QualifiedName::QualifiedNameImpl::create):
941         (WebCore::QualifiedName::QualifiedNameImpl::QualifiedNameImpl):
942         * history/BackForwardList.cpp:
943         (WebCore::BackForwardList::BackForwardList):
944         * history/BackForwardList.h:
945         (WebCore::BackForwardList::create):
946         * page/Page.cpp:
947         (WebCore::Page::Page):
948         * platform/text/CString.cpp:
949         (WebCore::CString::init):
950         (WebCore::CString::newUninitialized):
951         (WebCore::CString::copyBufferIfNeeded):
952         * platform/text/CString.h:
953         (WebCore::CStringBuffer::create):
954         (WebCore::CStringBuffer::CStringBuffer):
955
956 2008-02-21  Kevin Ollivier  <kevino@theolliviers.com>
957
958         wx build fix for the domString() -> string() rename in r30443.
959
960         * platform/graphics/wx/FontPlatformDataWx.cpp:
961         (WebCore::FontPlatformData::FontPlatformData):
962
963 2008-02-21  Antti Koivisto  <antti@apple.com>
964
965         Reviewed by Sam Weinig.
966
967         <rdar://problem/5753789>
968         REGRESSION: 1.5% -2% Sunspider regression from r30009 (ebay photo upload hang)
969         
970         Ensure all versions of allowsAccessFrom are inlined to single functions. 
971         This is a 2% win in browser hosted Sunspider. 
972
973         * bindings/js/kjs_window.cpp:
974         (KJS::Window::allowsAccessFrom):
975         (KJS::Window::allowsAccessFromPrivate):
976         * bindings/js/kjs_window.h:
977
978 2008-02-21  Dan Bernstein  <mitz@apple.com>
979
980         Reviewed by Sam Weinig.
981
982         - minor cleanup
983
984         * rendering/bidi.cpp:
985         (WebCore::bidiNext): Removed redundant isBR() check -- isText() returns
986         true for RenderLineBreak.
987         (WebCore::bidiFirst): Ditto.
988         (WebCore::shouldSkipWhitespaceAfterStartObject):
989         (WebCore::RenderBlock::findNextLineBreak):
990
991 2008-02-21  Geoffrey Garen  <ggaren@apple.com>
992
993         Reviewed by David Harrison.
994         
995         Fixed <rdar://problem/5756125> REGRESSION: A crash occurs at 
996         WebCore::Frame::scriptProxy() when completing a search with Package Tracker widget
997
998         Test: fast/dom/script-element-without-frame-crash.html
999
1000         * html/HTMLTokenizer.cpp:
1001         (WebCore::HTMLTokenizer::parseTag): Added back a NULL check that was
1002         accidentally removed in r30325.
1003
1004 2008-02-21  Rodney Dawes  <dobey@wayofthemonkey.com>
1005
1006         GTK+ build fix. s/domString()/string()/
1007
1008         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
1009         (FontPlatformData::FontPlatformData):
1010
1011 2008-02-20  Dan Bernstein  <mitz@apple.com>
1012
1013         Reviewed by Dave Hyatt.
1014
1015         - fix http://bugs.webkit.org/show_bug.cgi?id=17465
1016           REGRESSION: <DIV> tokenized into Div if still searching for DOCTYPE
1017
1018         Test: fast/tokenizer/doctype-search-reset.html
1019
1020         * html/HTMLTokenizer.cpp:
1021         (WebCore::HTMLTokenizer::parseTag):
1022
1023 2008-02-20  Dan Bernstein  <mitz@apple.com>
1024
1025         Reviewed by Dave Hyatt.
1026
1027         - fix http://bugs.webkit.org/show_bug.cgi?id=17464
1028           REGRESSION: Crash in RenderBlock::findNextLineBreak reading r30444 commit email in GMail
1029
1030         Test: fast/text/wbr-in-pre-crash.html
1031
1032         * rendering/bidi.cpp:
1033         (WebCore::RenderBlock::findNextLineBreak):
1034
1035 2008-02-20  Oliver Hunt  <oliver@apple.com>
1036
1037         Reviewed by Hyatt.
1038
1039         Bug 17303: Canvas crash in ImageBuffer
1040
1041         We handle a null GraphicsContext everywhere, but we weren't checking for 
1042         a null ImageBuffer, which is what will result in a null GraphicsContext in
1043         the first place.
1044
1045         Test: fast/canvas/access-zero-sized-canvas.html
1046
1047         * html/HTMLCanvasElement.cpp:
1048
1049 2008-02-20  David Hyatt  <hyatt@apple.com>
1050
1051         Fix the layout test failure that never should have passed in the first
1052         place by making changes to media lists actually result in the recomputation
1053         of the style selector.  Now it passes for the right reasons and not because
1054         of dumb luck.
1055
1056         Reviewed by Sam Weinig
1057
1058         * css/MediaList.cpp:
1059         (WebCore::MediaList::deleteMedium):
1060         (WebCore::MediaList::setMediaText):
1061         (WebCore::MediaList::appendMedium):
1062         (WebCore::MediaList::notifyChanged):
1063         * css/MediaList.h:
1064         * dom/Document.cpp:
1065         (WebCore::Document::attach):
1066
1067 2008-02-20  Darin Adler  <darin@apple.com>
1068
1069         Reviewed, tweaked and landed by Sam.
1070
1071         - make markup functions not use DeprecatedString.
1072
1073         * editing/markup.cpp:
1074         (WebCore::append): Added.
1075         (WebCore::escapeContentText): Build up string using a Vector.
1076         (WebCore::appendStartMarkup): Use String instead of DeprecatedString.
1077
1078 2008-02-20  Darin Adler  <darin@apple.com>
1079
1080         Reviewed, tweaked and landed by Sam.
1081
1082         - make TextIterator use a Vector instead of a DeprecatedString.
1083
1084         * editing/TextIterator.cpp:
1085         (WebCore::CharacterIterator::string): Build up the String using a
1086         Vector.
1087         (WebCore::WordAwareIterator::advance): Switch to using Vector functions.
1088         (WebCore::WordAwareIterator::length): Ditto.
1089         (WebCore::WordAwareIterator::characters): Ditto.
1090         * editing/TextIterator.h: Use a Vector<UChar> for the buffer instead
1091         of DeprecatedString.
1092
1093 2008-02-20  Darin Adler  <darin@apple.com>
1094
1095         Reviewed, tweaked and landed by Sam.
1096
1097         - make HTMLInterchange return a String instead of a DeprecatedString
1098
1099         * editing/HTMLInterchange.cpp:
1100         (WebCore::): Return a String from convertedSpaceString.
1101         (WebCore::convertHTMLTextToInterchangeFormat): Use a Vector instead of
1102         a DeprecatedString to build up the return String.
1103         * editing/HTMLInterchange.h:
1104
1105 2008-02-20  Eric Seidel  <eric@webkit.org>
1106
1107         Reviewed by Oliver.
1108
1109         Remove m_drawingContext and change m_data to m_imageBuffer
1110
1111         * html/HTMLCanvasElement.cpp:
1112         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
1113         (WebCore::HTMLCanvasElement::reset):
1114         (WebCore::HTMLCanvasElement::paint):
1115         (WebCore::HTMLCanvasElement::createImageBuffer):
1116         (WebCore::HTMLCanvasElement::buffer):
1117         (WebCore::HTMLCanvasElement::createPlatformImage):
1118         * html/HTMLCanvasElement.h:
1119
1120 2008-02-20  Anders Carlsson  <andersca@apple.com>
1121
1122         Reviewed by Sam.
1123
1124         Rename AtomicString::domString() to AtomicString::string().
1125         
1126         * css/CSSComputedStyleDeclaration.cpp:
1127         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1128         * css/CSSFontSelector.cpp:
1129         (WebCore::CSSFontSelector::getFontData):
1130         * dom/Attr.cpp:
1131         (WebCore::Attr::createTextChild):
1132         * dom/Comment.cpp:
1133         (WebCore::Comment::nodeName):
1134         * dom/Document.cpp:
1135         (WebCore::Document::recalcStyleSelector):
1136         (WebCore::Document::setHTMLWindowEventListener):
1137         (WebCore::Document::formElementsState):
1138         * dom/StyledElement.cpp:
1139         (WebCore::StyledElement::parseMappedAttribute):
1140         * dom/Text.cpp:
1141         (WebCore::Text::nodeName):
1142         * editing/SelectionController.cpp:
1143         (WebCore::SelectionController::debugRenderer):
1144         * html/HTMLCollection.cpp:
1145         (WebCore::HTMLCollection::checkForNameMatch):
1146         * html/HTMLElement.cpp:
1147         (WebCore::HTMLElement::nodeName):
1148         (WebCore::HTMLElement::setHTMLEventListener):
1149         * html/HTMLFormCollection.cpp:
1150         (WebCore::HTMLFormCollection::getNamedFormItem):
1151         * html/HTMLImageElement.cpp:
1152         (WebCore::HTMLImageElement::parseMappedAttribute):
1153         (WebCore::HTMLImageElement::isURLAttribute):
1154         * html/HTMLLinkElement.cpp:
1155         (WebCore::HTMLLinkElement::parseMappedAttribute):
1156         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
1157         * html/HTMLObjectElement.cpp:
1158         (WebCore::HTMLObjectElement::isURLAttribute):
1159         (WebCore::HTMLObjectElement::containsJavaApplet):
1160         * html/HTMLParamElement.cpp:
1161         (WebCore::HTMLParamElement::isURLAttribute):
1162         * html/HTMLParser.cpp:
1163         (WebCore::HTMLParser::handleIsindex):
1164         * html/HTMLScriptElement.cpp:
1165         (WebCore::HTMLScriptElement::insertedIntoDocument):
1166         (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
1167         * html/HTMLStyleElement.cpp:
1168         (WebCore::HTMLStyleElement::parseMappedAttribute):
1169         * html/HTMLTokenizer.cpp:
1170         (WebCore::HTMLTokenizer::parseTag):
1171         * html/HTMLViewSourceDocument.cpp:
1172         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
1173         * loader/FrameLoader.cpp:
1174         (WebCore::FrameLoader::saveDocumentState):
1175         * page/FrameTree.cpp:
1176         (WebCore::FrameTree::uniqueChildName):
1177         * platform/text/AtomicString.h:
1178         (WebCore::AtomicString::string):
1179         (WebCore::AtomicString::contains):
1180         (WebCore::AtomicString::find):
1181         (WebCore::AtomicString::startsWith):
1182         (WebCore::AtomicString::endsWith):
1183         * rendering/RenderPartObject.cpp:
1184         (WebCore::RenderPartObject::updateWidget):
1185         * svg/SVGElement.cpp:
1186         (WebCore::SVGElement::addSVGEventListener):
1187         * svg/SVGSVGElement.cpp:
1188         (WebCore::SVGSVGElement::addSVGWindowEventListener):
1189         * xml/XPathFunctions.cpp:
1190         (WebCore::XPath::FunLocalName::evaluate):
1191         (WebCore::XPath::FunNamespaceURI::evaluate):
1192         (WebCore::XPath::FunName::evaluate):
1193
1194 2008-02-20  Brent Fulgham  <bfulgham@gmail.com>
1195
1196         Reviewed by Dan.
1197
1198         http://bugs.webkit.org/show_bug.cgi?id=17336
1199         Provide implementations for Windows (Cairo) build of WebKit that
1200         handles font formatting.
1201         - Split font implementation files to allow maximal code sharing
1202           between CG and Cairo back-ends. 
1203
1204         * WebCore.vcproj/WebCore.vcproj:
1205         * platform/graphics/SimpleFontData.h:   Add signatures for private win
1206           initialization functions.
1207         * platform/graphics/win/FontCacheWin.cpp:
1208         (WebCore::FontCache::platformInit):
1209         (WebCore::FontCache::createFontPlatformData):
1210         * platform/graphics/win/FontCairoWin.cpp: Removed.  Universal version
1211           is now part of platform/graphics/cairo.
1212         * platform/graphics/win/FontCustomPlatformDataCairo.cpp: Added.
1213         (WebCore::FontCustomPlatformDataCairo::~FontCustomPlatformDataCairo):
1214         (WebCore::FontCustomPlatformDataCairo::fontPlatformData):
1215         (WebCore::releaseData):
1216         (WebCore::createFontCustomPlatformData):
1217         * platform/graphics/win/FontCustomPlatformDataCairo.h: Added.
1218         (WebCore::FontCustomPlatformDataCairo::FontCustomPlatformDataCairo):
1219         * platform/graphics/win/FontPlatformData.h:
1220         (WebCore::FontPlatformData::FontPlatformData):
1221         (WebCore::FontPlatformData::fontFace):
1222         (WebCore::FontPlatformData::scaledFont):
1223         (WebCore::FontPlatformData::operator==):
1224         * platform/graphics/win/FontPlatformDataCGWin.cpp: Copied from WebCore/platform/graphics/win/FontPlatformDataWin.cpp.
1225         (WebCore::FontPlatformData::platformDataInit):
1226         * platform/graphics/win/FontPlatformDataCairoWin.cpp: Added.
1227         (WebCore::FontPlatformData::platformDataInit):
1228         (WebCore::FontPlatformData::FontPlatformData):
1229         (WebCore::FontPlatformData::setFont):
1230         * platform/graphics/win/FontPlatformDataWin.cpp:  Moved CG-specific
1231           code to FontPlatformDataCG.cpp.
1232         (WebCore::FontPlatformData::FontPlatformData):
1233         * platform/graphics/win/GlyphPageTreeNodeCGWin.cpp: Copied from WebCore/platform/graphics/win/GlyphPageTreeNodeWin.cpp.
1234         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp: Copied from WebCore/platform/graphics/win/GlyphPageTreeNodeWin.cpp.
1235         (WebCore::GlyphPage::fill):
1236         * platform/graphics/win/GlyphPageTreeNodeWin.cpp: Removed.  Replaced
1237           with CG- and Cairo-specific versions.
1238         * platform/graphics/win/SimpleFontDataCGWin.cpp:
1239         (WebCore::SimpleFontData::platformInit):
1240         (WebCore::SimpleFontData::platformDestroy):
1241         (WebCore::SimpleFontData::platformWidthForGlyph):
1242         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
1243         (WebCore::SimpleFontData::platformInit):
1244         (WebCore::SimpleFontData::platformDestroy):
1245         (WebCore::SimpleFontData::platformWidthForGlyph):
1246         (WebCore::SimpleFontData::setFont):
1247         * platform/graphics/win/SimpleFontDataWin.cpp:
1248         (WebCore::SimpleFontData::initGDIFont):
1249         (WebCore::SimpleFontData::platformCommonDestroy):
1250         (WebCore::SimpleFontData::widthForGDIGlyph):
1251
1252 2008-02-20  Darin Adler  <darin@apple.com>
1253
1254         Reviewed by Sam.
1255
1256         * dom/Node.h: Took out unneeded forward declaration of TextStream.
1257
1258 2008-02-20  Darin Adler  <darin@apple.com>
1259
1260         Reviewed by Sam.
1261
1262         * rendering/RenderObject.h: Took out unneeded forward declaration of TextStream.
1263
1264 2008-02-20  David Hyatt  <hyatt@apple.com>
1265
1266         Fix for bug 16760, incorrect <object> MIME type handling and fallback
1267         handling.
1268
1269         Reviewed by darin
1270
1271         * html/HTMLImageLoader.cpp:
1272         (WebCore::HTMLImageLoader::notifyFinished):
1273         If the image had an error, make sure to do <object> fallback.
1274
1275         * html/HTMLObjectElement.cpp:
1276         (WebCore::HTMLObjectElement::renderFallbackContent):
1277         Before doing fallback check if there is a MIME type mismatch between
1278         an image type and a non-image type.  If so, detach and re-attach after
1279         storing the correct MIME type.
1280
1281         * loader/loader.cpp:
1282         (WebCore::Loader::didReceiveData):
1283         Consider it an error when a 404 is encountered on a CachedResource load.
1284
1285 2008-02-20  Anders Carlsson  <andersca@apple.com>
1286
1287         Reviewed by Sam.
1288
1289         StringImpl constructors used by AtomicString should start with a refcount of 1.
1290         
1291         * platform/text/AtomicString.cpp:
1292         (WebCore::AtomicString::add):
1293         * platform/text/AtomicString.h:
1294         * platform/text/StringImpl.cpp:
1295         (WebCore::StringImpl::StringImpl):
1296
1297 2008-02-20  Darin Adler  <darin@apple.com>
1298
1299         * bindings/js/kjs_navigator.cpp:
1300         (WebCore::needsYouTubeQuirk): Tweak comments.
1301
1302 2008-02-20  Anders Carlsson  <andersca@apple.com>
1303
1304         Reviewed by Darin.
1305
1306         Change all refcounted classes in page/ to start with a refcount of 1.
1307
1308         * page/BarInfo.cpp:
1309         (WebCore::BarInfo::BarInfo):
1310         * page/BarInfo.h:
1311         (WebCore::BarInfo::create):
1312         * page/Console.cpp:
1313         (WebCore::Console::Console):
1314         * page/Console.h:
1315         (WebCore::Console::create):
1316         * page/DOMSelection.cpp:
1317         (WebCore::DOMSelection::DOMSelection):
1318         * page/DOMSelection.h:
1319         (WebCore::DOMSelection::create):
1320         * page/DOMWindow.cpp:
1321         (WebCore::DOMWindow::DOMWindow):
1322         (WebCore::DOMWindow::screen):
1323         (WebCore::DOMWindow::history):
1324         (WebCore::DOMWindow::locationbar):
1325         (WebCore::DOMWindow::menubar):
1326         (WebCore::DOMWindow::personalbar):
1327         (WebCore::DOMWindow::scrollbars):
1328         (WebCore::DOMWindow::statusbar):
1329         (WebCore::DOMWindow::toolbar):
1330         (WebCore::DOMWindow::console):
1331         (WebCore::DOMWindow::getSelection):
1332         * page/DOMWindow.h:
1333         (WebCore::DOMWindow::create):
1334         * page/Frame.cpp:
1335         (WebCore::Frame::domWindow):
1336         * page/History.cpp:
1337         (WebCore::History::History):
1338         * page/History.h:
1339         (WebCore::History::create):
1340         * page/InspectorController.cpp:
1341         (WebCore::InspectorResource::create):
1342         (WebCore::InspectorResource::InspectorResource):
1343         (WebCore::InspectorDatabaseResource::create):
1344         (WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
1345         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
1346         (WebCore::InspectorController::identifierForInitialRequest):
1347         (WebCore::InspectorController::didOpenDatabase):
1348         * page/Plugin.h:
1349         (WebCore::Plugin::create):
1350         (WebCore::Plugin::Plugin):
1351         * page/Screen.cpp:
1352         (WebCore::Screen::Screen):
1353         * page/Screen.h:
1354         (WebCore::Screen::create):
1355
1356 2008-02-20  Sam Weinig  <sam@webkit.org>
1357
1358         Reviewed by Darin and Geoff.
1359
1360         - <rdar://problem/5754378> work around missing video on YouTube front page with a site-specific hack
1361
1362         * WebCore.base.exp: Updated.
1363
1364         * bindings/js/kjs_navigator.cpp:
1365         (WebCore::needsYouTubeQuirk): Added. Return true on Windows only when the quirk is needed.
1366         (WebCore::Navigator::getValueProperty): For the appVersion property, if needsYouTubeQuirk
1367         return true, then return the empty string.
1368
1369         * page/Settings.cpp:
1370         (WebCore::Settings::Settings): Set m_needsSiteSpecificQuirks to false.
1371         (WebCore::Settings::setNeedsSiteSpecificQuirks): Added.
1372         * page/Settings.h: Added m_needsSiteSpecificQuirks.
1373         (WebCore::Settings::needsSiteSpecificQuirks): Added.
1374
1375 2008-02-20  David Hyatt  <hyatt@apple.com>
1376
1377         Fix for bug 12751, doctype nodes aren't part of the Document (Acid3).
1378
1379         Reviewed by Sam Weinig
1380
1381         Many tests added in fast/doctypes.
1382
1383         * dom/DOMImplementation.cpp:
1384         (WebCore::DOMImplementation::createDocument):
1385         (WebCore::DOMImplementation::createHTMLDocument):
1386         * dom/Document.cpp:
1387         (WebCore::Document::Document):
1388         (WebCore::Document::setDocType):
1389         (WebCore::Document::attach):
1390         (WebCore::Document::getImageMap):
1391         * dom/Document.h:
1392         (WebCore::Document::doctype):
1393         (WebCore::Document::):
1394         (WebCore::Document::determineParseMode):
1395         (WebCore::Document::setParseMode):
1396         (WebCore::Document::parseMode):
1397         (WebCore::Document::inCompatMode):
1398         (WebCore::Document::inAlmostStrictMode):
1399         (WebCore::Document::inStrictMode):
1400         * dom/DocumentType.cpp:
1401         (WebCore::DocumentType::cloneNode):
1402         (WebCore::DocumentType::insertedIntoDocument):
1403         (WebCore::DocumentType::removedFromDocument):
1404         * dom/DocumentType.h:
1405         * dom/Node.cpp:
1406         (WebCore::Node::childAllowed):
1407         * dom/StyledElement.cpp:
1408         (WebCore::StyledElement::attributeChanged):
1409         * dom/XMLTokenizer.cpp:
1410         (WebCore::XMLTokenizer::internalSubset):
1411         (WebCore::):
1412         * editing/markup.cpp:
1413         (WebCore::appendStartMarkup):
1414         * html/HTMLAppletElement.cpp:
1415         (WebCore::HTMLAppletElement::createRenderer):
1416         * html/HTMLDocument.cpp:
1417         (WebCore::HTMLDocument::HTMLDocument):
1418         (WebCore::HTMLDocument::childAllowed):
1419         (WebCore::HTMLDocument::determineParseMode):
1420         * html/HTMLDocument.h:
1421         * html/HTMLMapElement.cpp:
1422         (WebCore::HTMLMapElement::parseMappedAttribute):
1423         * html/HTMLParamElement.cpp:
1424         (WebCore::HTMLParamElement::parseMappedAttribute):
1425         * html/HTMLParser.cpp:
1426         (WebCore::HTMLParser::parseDoctypeToken):
1427         * html/HTMLParser.h:
1428         * html/HTMLTokenizer.cpp:
1429         (WebCore::HTMLTokenizer::reset):
1430         (WebCore::HTMLTokenizer::parseDoctype):
1431         (WebCore::HTMLTokenizer::parseTag):
1432         (WebCore::HTMLTokenizer::write):
1433         (WebCore::HTMLTokenizer::finish):
1434         (WebCore::HTMLTokenizer::processDoctypeToken):
1435         * html/HTMLTokenizer.h:
1436         (WebCore::):
1437         (WebCore::DoctypeToken::DoctypeToken):
1438         (WebCore::DoctypeToken::reset):
1439         (WebCore::DoctypeToken::state):
1440         (WebCore::DoctypeToken::setState):
1441         (WebCore::HTMLTokenizer::State::inDoctype):
1442         (WebCore::HTMLTokenizer::State::setInDoctype):
1443         (WebCore::HTMLTokenizer::State::needsSpecialWriteHandling):
1444         (WebCore::HTMLTokenizer::State::):
1445         * html/HTMLViewSourceDocument.cpp:
1446         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
1447         (WebCore::HTMLViewSourceDocument::addViewSourceDoctypeToken):
1448         * html/HTMLViewSourceDocument.h:
1449         * loader/FrameLoader.cpp:
1450         (WebCore::FrameLoader::write):
1451         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
1452         * page/Frame.cpp:
1453         (WebCore::Frame::documentTypeString):
1454         * page/inspector/utilities.js:
1455         * xml/XSLTProcessor.cpp:
1456         (WebCore::XSLTProcessor::createDocumentFromSource):
1457
1458 2008-02-20  Anders Carlsson  <andersca@apple.com>
1459
1460         Reviewed by Darin.
1461
1462         Change most SVG related classes to start out with a ref count of 1.
1463         
1464         * bindings/js/JSSVGPointListCustom.cpp:
1465         (WebCore::JSSVGPointList::initialize):
1466         (WebCore::JSSVGPointList::insertItemBefore):
1467         (WebCore::JSSVGPointList::replaceItem):
1468         (WebCore::JSSVGPointList::appendItem):
1469         * bindings/js/JSSVGTransformListCustom.cpp:
1470         (WebCore::JSSVGTransformList::initialize):
1471         (WebCore::JSSVGTransformList::insertItemBefore):
1472         (WebCore::JSSVGTransformList::replaceItem):
1473         (WebCore::JSSVGTransformList::appendItem):
1474         * rendering/SVGCharacterLayoutInfo.h:
1475         (WebCore::SVGCharOnPath::create):
1476         (WebCore::SVGCharOnPath::SVGCharOnPath):
1477         * rendering/SVGRootInlineBox.cpp:
1478         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
1479         * svg/SVGAnimationElement.cpp:
1480         (WebCore::SVGAnimationElement::parseBeginOrEndValue):
1481         * svg/SVGClipPathElement.cpp:
1482         (WebCore::SVGClipPathElement::canvasResource):
1483         * svg/SVGElementInstance.cpp:
1484         (WebCore::SVGElementInstance::childNodes):
1485         * svg/SVGElementInstanceList.cpp:
1486         (WebCore::SVGElementInstanceList::SVGElementInstanceList):
1487         * svg/SVGElementInstanceList.h:
1488         (WebCore::SVGElementInstanceList::create):
1489         * svg/SVGFitToViewBox.cpp:
1490         (WebCore::SVGFitToViewBox::SVGFitToViewBox):
1491         * svg/SVGGradientElement.cpp:
1492         (WebCore::SVGGradientElement::SVGGradientElement):
1493         (WebCore::SVGGradientElement::canvasResource):
1494         * svg/SVGImageElement.cpp:
1495         (WebCore::SVGImageElement::SVGImageElement):
1496         * svg/SVGLengthList.h:
1497         (WebCore::SVGLengthList::create):
1498         * svg/SVGList.h:
1499         (WebCore::SVGList::SVGList):
1500         (WebCore::SVGPODListItem::create):
1501         (WebCore::SVGPODListItem::copy):
1502         (WebCore::SVGPODListItem::SVGPODListItem):
1503         (WebCore::SVGPODList::initialize):
1504         (WebCore::SVGPODList::insertItemBefore):
1505         (WebCore::SVGPODList::replaceItem):
1506         (WebCore::SVGPODList::appendItem):
1507         (WebCore::SVGPODList::SVGPODList):
1508         * svg/SVGMarkerElement.cpp:
1509         (WebCore::SVGMarkerElement::canvasResource):
1510         * svg/SVGMaskElement.cpp:
1511         (WebCore::SVGMaskElement::canvasResource):
1512         * svg/SVGNumberList.h:
1513         (WebCore::SVGNumberList::create):
1514         * svg/SVGPathElement.cpp:
1515         (WebCore::SVGPathElement::createSVGPathSegClosePath):
1516         (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
1517         (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
1518         (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
1519         (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
1520         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
1521         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
1522         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
1523         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
1524         (WebCore::SVGPathElement::createSVGPathSegArcAbs):
1525         (WebCore::SVGPathElement::createSVGPathSegArcRel):
1526         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
1527         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
1528         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
1529         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
1530         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
1531         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
1532         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
1533         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
1534         (WebCore::SVGPathElement::pathSegList):
1535         * svg/SVGPathElement.h:
1536         * svg/SVGPathSeg.h:
1537         (WebCore::SVGPathSeg::SVGPathSeg):
1538         * svg/SVGPathSegArc.h:
1539         (WebCore::SVGPathSegArcAbs::create):
1540         (WebCore::SVGPathSegArcRel::create):
1541         * svg/SVGPathSegClosePath.h:
1542         (WebCore::SVGPathSegClosePath::create):
1543         * svg/SVGPathSegCurvetoCubic.h:
1544         (WebCore::SVGPathSegCurvetoCubicAbs::create):
1545         (WebCore::SVGPathSegCurvetoCubicRel::create):
1546         * svg/SVGPathSegCurvetoCubicSmooth.h:
1547         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::create):
1548         (WebCore::SVGPathSegCurvetoCubicSmoothRel::create):
1549         * svg/SVGPathSegCurvetoQuadratic.h:
1550         (WebCore::SVGPathSegCurvetoQuadraticAbs::create):
1551         (WebCore::SVGPathSegCurvetoQuadraticRel::create):
1552         * svg/SVGPathSegCurvetoQuadraticSmooth.h:
1553         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::create):
1554         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::create):
1555         * svg/SVGPathSegLineto.h:
1556         (WebCore::SVGPathSegLinetoAbs::create):
1557         (WebCore::SVGPathSegLinetoRel::create):
1558         * svg/SVGPathSegLinetoHorizontal.h:
1559         (WebCore::SVGPathSegLinetoHorizontalAbs::create):
1560         (WebCore::SVGPathSegLinetoHorizontalRel::create):
1561         * svg/SVGPathSegLinetoVertical.h:
1562         (WebCore::SVGPathSegLinetoVerticalAbs::create):
1563         (WebCore::SVGPathSegLinetoVerticalRel::create):
1564         * svg/SVGPathSegList.h:
1565         (WebCore::SVGPathSegList::create):
1566         * svg/SVGPathSegMoveto.h:
1567         (WebCore::SVGPathSegMovetoAbs::create):
1568         (WebCore::SVGPathSegMovetoRel::create):
1569         * svg/SVGPatternElement.cpp:
1570         (WebCore::SVGPatternElement::SVGPatternElement):
1571         (WebCore::SVGPatternElement::canvasResource):
1572         * svg/SVGPointList.h:
1573         (WebCore::SVGPointList::create):
1574         * svg/SVGPolyElement.cpp:
1575         (WebCore::SVGPolyElement::points):
1576         * svg/SVGPreserveAspectRatio.cpp:
1577         (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
1578         * svg/SVGPreserveAspectRatio.h:
1579         (WebCore::SVGPreserveAspectRatio::create):
1580         * svg/SVGRenderingIntent.h:
1581         (WebCore::SVGRenderingIntent::SVGRenderingIntent):
1582         * svg/SVGStringList.h:
1583         (WebCore::SVGStringList::create):
1584         * svg/SVGStyledTransformableElement.cpp:
1585         (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
1586         * svg/SVGTests.cpp:
1587         (WebCore::SVGTests::requiredFeatures):
1588         (WebCore::SVGTests::requiredExtensions):
1589         (WebCore::SVGTests::systemLanguage):
1590         * svg/SVGTextElement.cpp:
1591         (WebCore::SVGTextElement::SVGTextElement):
1592         * svg/SVGTextPositioningElement.cpp:
1593         (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
1594         * svg/SVGTransformList.h:
1595         (WebCore::SVGTransformList::create):
1596         * svg/SVGUnitTypes.h:
1597         (WebCore::SVGUnitTypes::SVGUnitTypes):
1598         * svg/SVGViewElement.cpp:
1599         (WebCore::SVGViewElement::viewTarget):
1600         * svg/SVGViewSpec.cpp:
1601         (WebCore::SVGViewSpec::SVGViewSpec):
1602         * svg/graphics/SVGPaintServer.cpp:
1603         (WebCore::SVGPaintServer::sharedSolidPaintServer):
1604         * svg/graphics/SVGPaintServer.h:
1605         * svg/graphics/SVGPaintServerGradient.h:
1606         (WebCore::SVGPaintServerGradient::SharedStopCache::create):
1607         (WebCore::SVGPaintServerGradient::SharedStopCache::SharedStopCache):
1608         * svg/graphics/SVGPaintServerLinearGradient.h:
1609         (WebCore::SVGPaintServerLinearGradient::create):
1610         * svg/graphics/SVGPaintServerPattern.h:
1611         (WebCore::SVGPaintServerPattern::create):
1612         * svg/graphics/SVGPaintServerRadialGradient.h:
1613         (WebCore::SVGPaintServerRadialGradient::create):
1614         * svg/graphics/SVGPaintServerSolid.h:
1615         (WebCore::SVGPaintServerSolid::create):
1616         * svg/graphics/SVGResource.cpp:
1617         (WebCore::SVGResource::SVGResource):
1618         * svg/graphics/SVGResource.h:
1619         * svg/graphics/SVGResourceClipper.h:
1620         (WebCore::SVGResourceClipper::create):
1621         * svg/graphics/SVGResourceMarker.h:
1622         (WebCore::SVGResourceMarker::create):
1623         * svg/graphics/SVGResourceMasker.h:
1624         (WebCore::SVGResourceMasker::create):
1625         * svg/graphics/cg/SVGPaintServerGradientCg.cpp:
1626         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
1627
1628 2008-02-20  Darin Adler  <darin@apple.com>
1629
1630         Reviewed by Sam.
1631
1632         - make conversion from CSS ParseString to String and AtomicString
1633           automatic and remove all the explicit calls to do the conversion
1634
1635         - fix CSS parsing to do fewer allocations, mostly by using the
1636           equalIgnoringCase function in CSSParser
1637
1638         * css/CSSGrammar.y: Take out all the explicit atomicString and
1639         domString calls now that ParseString knows how to convert itself.
1640
1641         * css/CSSParser.cpp:
1642         (WebCore::equal): Added.
1643         (WebCore::equalIgnoringCase): Allow non-lettters.
1644         (WebCore::ParseString::lower): Used charactersAreAllASCII.
1645         (WebCore::unitFromString): Use equal.
1646         (WebCore::CSSParser::parseValue): Removed unneeded call to domString.
1647         (WebCore::CSSParser::parseContent): Use equalIgnoringCase.
1648         (WebCore::CSSParser::parseBackgroundImage): Removed unneeded call to domString.
1649         (WebCore::CSSParser::parseTransitionTimingFunction): Use equalIgnoringCase.
1650         (WebCore::CSSParser::parseDashboardRegions): More of the same.
1651         (WebCore::CSSParser::parseCounterContent): Ditto.
1652         (WebCore::CSSParser::parseShape): Use equalIgnoringCase.
1653         (WebCore::CSSParser::parseFontFamily): Removed unneeded calls to domString.
1654         (WebCore::CSSParser::parseFontFaceSrc): More.
1655         (WebCore::CSSParser::parseFontFaceUnicodeRange): More.
1656         (WebCore::CSSParser::parseColor): Don't lowercase here -- setNamedColor now
1657         handles the case folding.
1658         (WebCore::CSSParser::parseColorFromValue): More.
1659         (WebCore::CSSParser::parseBorderImage): More.
1660         (WebCore::CSSParser::parseCounter): More.
1661         (WebCore::TransformOperationInfo::TransformOperationInfo): More.
1662         (WebCore::CSSParser::parseTransform): More.
1663         (WebCore::CSSParser::createCharsetRule): More.
1664         (WebCore::CSSParser::createImportRule): More.
1665
1666         * css/CSSParser.h: Removed domString and atomicString functions.
1667         (WebCore::ParseString::operator String): Added. Allows conversion to String
1668         without an explicit function call.
1669         (WebCore::ParseString::operator AtomicString): Ditto.
1670
1671         * css/MediaQueryExp.cpp:
1672         (WebCore::MediaQueryExp::MediaQueryExp): Removed a call to domString.
1673         * css/SVGCSSParser.cpp:
1674         (WebCore::CSSParser::parseSVGValue): Removed calls to domString.
1675
1676         * platform/graphics/Color.cpp:
1677         (WebCore::findNamedColor): Call toASCIILower on each character as we copy
1678         it into the 8-bit character buffer to make the operation fold case.
1679
1680 2008-02-20  Justin Garcia  <justin.garcia@apple.com>
1681
1682         Reviewed by Darin Adler.
1683
1684         <rdar://problem/5694920> Typing (esp. deleting) is slower due to TOT WebCore changes
1685
1686         * editing/DeleteSelectionCommand.cpp:
1687         (WebCore::DeleteSelectionCommand::initializeStartEnd): The common case here
1688         is where there are no special elements.  Avoid creating VisiblePositions in
1689         that case.  Additionally, this change postpones the more expensive creation
1690         of an upstream VisiblePosition until the last possible moment.
1691         (WebCore::DeleteSelectionCommand::saveTypingStyleState):
1692         (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): Add an 
1693         early return for a common case: deleting characters that are all inside the 
1694         same text node. In that case the style at the start of the selection will 
1695         not change during the delete, so there is no need to save/recompute it.
1696         (WebCore::DeleteSelectionCommand::saveFullySelectedAnchor): Early return
1697         before VisiblePosition creation if the ends of the selection aren't enclosed
1698         by an anchor.
1699         * editing/TypingCommand.cpp:
1700         (WebCore::TypingCommand::markMisspellingsAfterTyping): Early return if spell
1701         checking isn't enabled.
1702
1703 2008-02-20  Alexey Proskuryakov  <ap@webkit.org>
1704
1705         Incorporates some improvements made by Dan Bernstein.
1706
1707         Reviewed by Darin.
1708
1709         http://bugs.webkit.org/show_bug.cgi?id=17106
1710         <rdar://problem/5750722> Debug build ASSERTs on page load
1711
1712         Test: fast/encoding/GBK/close-gbk-converter.html
1713
1714         * platform/text/TextCodecICU.cpp:
1715         (WebCore::getGbkEscape): Changed to use a switch instead of a HashMap, as there
1716         are only four values.
1717         (WebCore::gbkCallbackEscape): Check the reason why the function is called, and do not attempt
1718         getting an escape character if it's not UCNV_UNASSIGNED.
1719         (WebCore::gbkCallbackSubstitute): Ditto.
1720
1721 2008-02-20  Alexey Proskuryakov  <ap@webkit.org>
1722
1723         Build fix.
1724
1725         * xml/XMLHttpRequest.cpp:
1726         (WebCore::isSafeRequestHeader):
1727         (WebCore::XMLHttpRequest::setRequestHeader):
1728
1729 2008-02-20  Alexey Proskuryakov  <ap@webkit.org>
1730
1731         Reviewed by Darin.
1732
1733         <rdar://problem/5749455> Unable to set the Referer header in Dashboard using XMLHttpRequest
1734
1735         Cannot be tested in DRT.
1736
1737         * xml/XMLHttpRequest.cpp: (WebCore::canSetRequestHeader): Assume that a request that can load
1738         local files can also set any headers.
1739
1740 2008-02-19  Darin Adler  <darin@apple.com>
1741
1742         Reviewed by Sam.
1743
1744         - removed use of DeprecatedString for font family names
1745
1746         * css/CSSFontSelector.cpp:
1747         (WebCore::CSSFontSelector::addFontFaceRule): Update for name change.
1748         * css/CSSParser.cpp:
1749         (WebCore::CSSParser::parseFontFamily): Update to use new appendSpaceSeparated
1750         function and String rather than DeprecatedString.
1751         * css/CSSStyleSelector.cpp:
1752         (WebCore::CSSStyleSelector::applyProperty): Updated for name change.
1753         * css/FontFamilyValue.cpp:
1754         (WebCore::FontFamilyValue::FontFamilyValue): Replaced code using a regular
1755         expression with code that does the same thing more efficiently.
1756         (WebCore::FontFamilyValue::appendSpaceSeparated): Added.
1757         (WebCore::FontFamilyValue::cssText): Updated for name change.
1758         * css/FontFamilyValue.h: Changed DeprecatedString to String. Renamed fontName
1759         to familyName and parsedFontName to m_familyName. Removed unused genericFamilyType
1760         and m_genericFamilyType. Added appendSpaceSeparated so that m_familyName can
1761         be private instead of public.
1762
1763 2008-02-19  Darin Adler  <darin@apple.com>
1764
1765         - fix build when SVG is not enabled
1766
1767         * rendering/RenderTreeAsText.cpp: Added include of "TextStream.h".
1768
1769 2008-02-19  Anders Carlsson  <andersca@apple.com>
1770
1771         Reviewed by Darin.
1772
1773         Change all classes in xml/ to start out with a ref count of 1.
1774         
1775         * bindings/js/JSCustomXPathNSResolver.h:
1776         * bindings/js/JSXMLHttpRequest.cpp:
1777         (WebCore::JSXMLHttpRequest::JSXMLHttpRequest):
1778         * bindings/js/JSXSLTProcessor.cpp:
1779         (WebCore::JSXSLTProcessor::JSXSLTProcessor):
1780         * bindings/objc/DOMCustomXPathNSResolver.h:
1781         (WebCore::DOMCustomXPathNSResolver::create):
1782         * bindings/scripts/CodeGeneratorJS.pm:
1783         * bindings/scripts/CodeGeneratorObjC.pm:
1784         * dom/Document.cpp:
1785         (WebCore::Document::applyXSLTransform):
1786         (WebCore::Document::createExpression):
1787         (WebCore::Document::createNSResolver):
1788         (WebCore::Document::evaluate):
1789         * xml/DOMParser.h:
1790         (WebCore::DOMParser::create):
1791         (WebCore::DOMParser::DOMParser):
1792         * xml/NativeXPathNSResolver.h:
1793         (WebCore::NativeXPathNSResolver::create):
1794         * xml/XMLHttpRequest.cpp:
1795         (WebCore::XMLHttpRequest::XMLHttpRequest):
1796         * xml/XMLHttpRequest.h:
1797         (WebCore::XMLHttpRequest::create):
1798         * xml/XMLSerializer.h:
1799         (WebCore::XMLSerializer::create):
1800         (WebCore::XMLSerializer::XMLSerializer):
1801         * xml/XPathEvaluator.cpp:
1802         (WebCore::XPathEvaluator::createNSResolver):
1803         * xml/XPathEvaluator.h:
1804         (WebCore::XPathEvaluator::create):
1805         (WebCore::XPathEvaluator::XPathEvaluator):
1806         * xml/XPathExpression.cpp:
1807         (WebCore::XPathExpression::createExpression):
1808         (WebCore::XPathExpression::evaluate):
1809         * xml/XPathExpression.h:
1810         (WebCore::XPathExpression::create):
1811         (WebCore::XPathExpression::XPathExpression):
1812         * xml/XPathNSResolver.h:
1813         * xml/XPathResult.cpp:
1814         (WebCore::XPathResult::XPathResult):
1815         * xml/XPathResult.h:
1816         (WebCore::XPathResult::create):
1817         * xml/XPathValue.cpp:
1818         (WebCore::XPath::Value::modifiableNodeSet):
1819         * xml/XPathValue.h:
1820         (WebCore::XPath::ValueData::create):
1821         (WebCore::XPath::ValueData::ValueData):
1822         (WebCore::XPath::Value::Value):
1823         * xml/XSLTProcessor.h:
1824         (WebCore::XSLTProcessor::create):
1825         (WebCore::XSLTProcessor::XSLTProcessor):
1826
1827 2008-02-19  Darin Adler  <darin@apple.com>
1828
1829         Reviewed by Sam.
1830
1831         - Trimmed down TextStream and weaned it from DeprecatedString.
1832
1833         * page/mac/WebCoreFrameBridge.mm:
1834         (-[WebCoreFrameBridge renderTreeAsExternalRepresentation]):
1835         Removed now-unneeded call to getNSString.
1836
1837         * platform/text/TextStream.cpp: Removed unused functions.
1838         Use snprintf instead of sprintf, for better security.
1839         (WebCore::TextStream::release): Added.
1840         * platform/text/TextStream.h: Removed lots of unneeded stuff.
1841
1842         * rendering/RenderTreeAsText.cpp:
1843         (WebCore::externalRepresentation): Changed to use String instead
1844         of DeprecatedString.
1845         * rendering/RenderTreeAsText.h: Ditto.
1846
1847         * rendering/SVGRenderTreeAsText.cpp:
1848         (WebCore::writeSVGInlineTextBox): Use "\n" instead of endl.
1849         (WebCore::write): Ditto.
1850         (WebCore::writeRenderResources): Ditto.
1851
1852 2008-02-19  Justin Garcia  <justin.garcia@apple.com>
1853
1854         Reviewed by Darin Adler.
1855
1856         <rdar://problem/5694920> Typing (esp. deleting) is slower due to TOT WebCore changes
1857         
1858         This brings performance on the phone back to old levels.  Andre and I are doing
1859         some formal testing to see exactly where we stand.
1860
1861         * dom/Position.cpp:
1862         (WebCore::enclosingBlockIgnoringEditability): Added.  This is enclosingBlock
1863         without the expensive editability checks. upstream and downstream can avoid 
1864         those because they do their own editability checking.
1865         (WebCore::Position::upstream):
1866         (WebCore::Position::downstream):
1867
1868 2008-02-19  Chris Fleizach  <cfleizach@apple.com>
1869
1870         Reviewed by Darin.
1871
1872         <rdar://problem/3663560> AXLink for a "name" (anchor) on same page should include an AXLinkedUIElementAttribute
1873
1874         * bridge/mac/WebCoreAXObject.mm:
1875         (-[WebCoreAXObject linkedUIElement]):
1876         Returns the linked-to AX object (if the specified one is ignored by accessibility, returns the next un-ignored one by traversing the DOM).
1877         
1878         (-[WebCoreAXObject accessibilityAttributeNames]):
1879         (-[WebCoreAXObject accessibilityAttributeValue:]):
1880         Support NSAccessibilityLinkedUIElementsAttribute.
1881
1882 2008-02-19  Darin Adler  <darin@apple.com>
1883
1884         Reviewed by Sam.
1885
1886         - Removed old debugging aids, Node::dump, RenderObject::dump, and
1887           RenderObject::information, that used DeprecatedString.
1888
1889         * dom/CharacterData.cpp: Removed override of Node::dump.
1890         * dom/CharacterData.h: Ditto.
1891         * dom/Element.cpp: Ditto.
1892         * dom/Element.h: Ditto.
1893         * dom/EventTargetNode.cpp: Ditto.
1894         * dom/EventTargetNode.h: Ditto.
1895         * dom/Node.cpp: Removed Node::dump.
1896         * dom/Node.h: Ditto.
1897
1898         * rendering/RenderBlock.cpp: Removed override of RenderObject::dump.
1899         * rendering/RenderBlock.h: Ditto.
1900         * rendering/RenderFrameSet.cpp: Ditto.
1901         * rendering/RenderFrameSet.h: Ditto.
1902         * rendering/RenderObject.cpp: Removed RenderObject::dump and
1903         RenderObject::information.
1904         * rendering/RenderObject.h: Ditto.
1905         * rendering/RenderTable.cpp: Removed override of RenderObject::dump.
1906         * rendering/RenderTable.h: Ditto.
1907         * rendering/RenderTableCell.cpp: Ditto.
1908         * rendering/RenderTableCell.h: Ditto.
1909         * rendering/RenderTableCol.cpp: Ditto.
1910         * rendering/RenderTableCol.h: Ditto.
1911         * rendering/RenderTableSection.cpp: Ditto.
1912         * rendering/RenderTableSection.h: Ditto.
1913
1914         * rendering/RenderTreeAsText.h: Removed unneeded include of TextStream.h
1915         and added forward declarations as appropriate.
1916
1917         * svg/SVGSVGElement.cpp: Removed unneeded include of TextStream.h.
1918         * svg/graphics/SVGResourceClipper.cpp: And here.
1919         * svg/graphics/SVGResourceFilter.cpp: Ditto.
1920         * svg/graphics/filters/SVGFEBlend.cpp: Ditto.
1921         * svg/graphics/filters/SVGFEComponentTransfer.cpp: Ditto.
1922         * svg/graphics/filters/SVGFEComposite.cpp: Ditto.
1923         * svg/graphics/filters/SVGFEDiffuseLighting.cpp: Ditto.
1924         * svg/graphics/filters/SVGFEGaussianBlur.cpp: Ditto.
1925         * svg/graphics/filters/SVGFEImage.cpp: Ditto.
1926         * svg/graphics/filters/SVGFEMerge.cpp: Ditto.
1927         * svg/graphics/filters/SVGFEMorphology.cpp: Ditto.
1928         * svg/graphics/filters/SVGFEOffset.cpp: Ditto.
1929         * svg/graphics/filters/SVGFESpecularLighting.cpp: Ditto.
1930         * svg/graphics/filters/SVGFETurbulence.cpp: Ditto.
1931         * svg/graphics/filters/SVGFilterEffect.cpp: Ditto.
1932
1933 2008-02-19  Beth Dakin  <bdakin@apple.com>
1934
1935         Reviewed by Sam.
1936
1937         Fix for <rdar://problem/5729674> Seed: Crash in 
1938         RenderButton::setStyle at http://www.dinorpg.com
1939
1940         Inputs should not honor first-letter.
1941
1942         * rendering/RenderBlock.cpp:
1943         (WebCore::RenderBlock::updateFirstLetter):
1944
1945 2008-02-19  Dan Bernstein  <mitz@apple.com>
1946
1947         Reviewed by Darin Adler.
1948
1949         - fix <rdar://problem/5637569> CrashTracer: [REGRESSION] 620 crashes in Safari at com.apple.WebCore: WebCore::RenderBox::setStaticY + 15
1950
1951         Test: fast/text/wbr-styled.html
1952
1953         Changed RenderWordBreak to inherit from RenderText instead of
1954         RenderInline.
1955
1956         * rendering/RenderBlock.cpp:
1957         (WebCore::RenderBlock::calcInlinePrefWidths):
1958         * rendering/RenderFlow.h:
1959         * rendering/RenderText.cpp:
1960         (WebCore::RenderText::renderName):
1961         (WebCore::RenderText::isTextFragment):
1962         (WebCore::RenderText::isWordBreak):
1963         * rendering/RenderText.h:
1964         * rendering/RenderWordBreak.cpp:
1965         (WebCore::RenderWordBreak::RenderWordBreak):
1966         * rendering/RenderWordBreak.h:
1967         * rendering/bidi.cpp:
1968         (WebCore::RenderBlock::findNextLineBreak):
1969
1970 2008-02-19  Anders Carlsson  <andersca@apple.com>
1971
1972         Reviewed by Darin.
1973
1974         * WebCore.base.exp:
1975         * loader/mac/LoaderNSURLExtras.h:
1976         * loader/mac/LoaderNSURLExtras.m:
1977         Move unused functions to WebKit (where they are used)
1978         
1979         (vectorContainsString):
1980         Use const references.
1981         
1982         * platform/mac/WebCoreSystemInterface.h:
1983         * platform/mac/WebCoreSystemInterface.mm:
1984         Remove wkNSURLProtocolClassForReqest.
1985         
1986 2008-02-19  Justin Garcia  <justin.garcia@apple.com>
1987
1988         Reviewed by Darin Adler.
1989
1990         <rdar://problem/5694920> Typing (esp. deleting) is slower due to TOT WebCore 
1991         
1992         These changes bring deleting performance back to old levels on the phone
1993         except for deleting the first space to the right of a word, which we are
1994         still working on.
1995
1996         * dom/Position.cpp:
1997         (WebCore::Position::upstream): Avoid the use of enclosingBlock when determining
1998         if we have left the original enclosing block or entered a new one, and avoid
1999         rootEditableElement for determining if we have changed editability.  These
2000         operations are expensive.
2001         (WebCore::Position::downstream): Ditto.
2002
2003 2008-02-19  Darin Adler  <darin@apple.com>
2004
2005         Rubber stamped by Anders.
2006
2007         - removed explicit initialization to 1 for RefCounted; that's now the default
2008
2009         * loader/ResourceLoader.cpp:
2010         (WebCore::ResourceLoader::ResourceLoader): Removed RefCounted initializer.
2011         * platform/network/ResourceHandle.cpp:
2012         (WebCore::ResourceHandle::ResourceHandle): Ditto.
2013         * platform/text/StringImpl.cpp:
2014         (WebCore::StringImpl::StringImpl): Ditto.
2015
2016 2008-02-18  Anders Carlsson  <andersca@apple.com>
2017
2018         Reviewed by Darin.
2019
2020         Make ResourceLoader and ResourceHandle start out with a refcount of 1.
2021
2022         * loader/MainResourceLoader.cpp:
2023         (WebCore::MainResourceLoader::create):
2024         * loader/NetscapePlugInStreamLoader.cpp:
2025         (WebCore::NetscapePlugInStreamLoader::create):
2026         * loader/ResourceLoader.cpp:
2027         (WebCore::ResourceLoader::ResourceLoader):
2028         * loader/SubresourceLoader.cpp:
2029         (WebCore::SubresourceLoader::create):
2030         * platform/network/ResourceHandle.cpp:
2031         (WebCore::ResourceHandle::ResourceHandle):
2032         (WebCore::ResourceHandle::create):
2033
2034 2008-02-19  Alp Toker  <alp@atoker.com>
2035
2036         Reviewed by Mark Rowe.
2037
2038         http://bugs.webkit.org/show_bug.cgi?id=16863
2039         [GTK] tab focusing doesn't work
2040
2041         GDK_MOD2_MASK doesn't always mean meta so we can't use it to identify
2042         the meta key state.
2043
2044         Use GDK_META_MASK where available, otherwise do not support the meta
2045         key. This matches the behaviour of other applications.
2046
2047         Also add a comment noting that the platform event constructors need to
2048         be kept in sync (it's not obvious that there are multiple places that
2049         check the key state).
2050
2051         * platform/gtk/KeyEventGtk.cpp:
2052         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2053         * platform/gtk/MouseEventGtk.cpp:
2054         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2055         * platform/gtk/WheelEventGtk.cpp:
2056         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2057
2058 2008-02-18  Brady Eidson  <beidson@apple.com>
2059
2060         Reviewed by Sam Weinig's white rhino tusk stamp
2061
2062         SQLiteTransaction::stop() should also reset the transaction-in-progress flag in its parent SQLiteDatabase
2063
2064         * platform/sql/SQLiteTransaction.cpp:
2065         (WebCore::SQLiteTransaction::stop):
2066
2067 2008-02-18  Brady Eidson  <beidson@apple.com>
2068
2069         Reviewed by Darin
2070
2071         Fix for <rdar://5747529> - ObjC Exception can cause JSLock to never be released
2072
2073         Test: platform/mac/plugins/webScriptObject-exception-deadlock.html
2074
2075         * bindings/objc/WebScriptObject.mm:
2076         (-[WebScriptObject valueForKey:]): The line `resultObj = [super valueForKey:key];    // defaults to throwing an exception` 
2077           says it all - it throws an exception.  This method also happens to hold the JSLock.  Problematically, when the exeception
2078           is thrown and the method exited, the JSLock is never released.  Fix that without otherwise changing behavior by holding the 
2079           JSLock in two individual scopes - Right before the exception and right after.  
2080
2081 2008-02-18  Darin Adler  <darin@apple.com>
2082
2083         Reviewed by Sam.
2084
2085         - reduce use of DeprecatedString and memory allocations in processing of CSS
2086         - remove unnecessary double -> float -> double trip in the CSS parser
2087         - cleaned up names and structure in CSS grammar
2088
2089         * css/CSSGrammar.y: Remove getPropertyID and getValueID. Both are now in CSSParser.cpp
2090         instead, and they now work on ParseString and String objects and don't require the caller
2091         to put the string into a char*. Gave members of the %union more sensible names, removed
2092         duplicates, and sorted into a logical order. Put the %expect back in, rather than leaving
2093         it commented out.
2094         * css/CSSParser.cpp:
2095         (WebCore::equalIgnoringCase): Added.
2096         (WebCore::hasPrefix): Added.
2097         (WebCore::CSSParser::parseTransitionProperty): Changed to call the new cssPropertyID,
2098         which obviates the need to call lower() and utf8() or to allocate memory at all. Also
2099         used equalIgnoringCase rather than putting the value into a String just to compare it.
2100         (WebCore::CSSParser::lex): Replaced convertASCIIToFloat with charactersToDouble. This change
2101         along with the CSSGrammar.y change, removes the double -> float -> double round trip, and
2102         affects the result of one layout test.
2103         (WebCore::cssPropertyID): Added. Gets the property ID from the gperf hash table, but
2104         without allocating any memory.
2105         (WebCore::cssValueKeywordID): Ditto.
2106         * css/CSSParser.h: Removed declaration for deprecatedString function (now used only in
2107         CSSParser.cpp; soon to be deleted). Added cssPropertyID and cssValueKeywordID functions.
2108
2109         * css/CSSStyleDeclaration.cpp:
2110         (WebCore::CSSStyleDeclaration::getPropertyCSSValue): Call cssPropertyID instead of propertyID.
2111         (WebCore::CSSStyleDeclaration::getPropertyValue): Ditto.
2112         (WebCore::CSSStyleDeclaration::getPropertyPriority): Ditto.
2113         (WebCore::CSSStyleDeclaration::getPropertyShorthand): Ditto.
2114         (WebCore::CSSStyleDeclaration::isPropertyImplicit): Ditto.
2115         (WebCore::CSSStyleDeclaration::setProperty): Ditto.
2116         (WebCore::CSSStyleDeclaration::removeProperty): Ditto.
2117         (WebCore::CSSStyleDeclaration::isPropertyName): Ditto.
2118         * css/CSSStyleDeclaration.h: Removed unnecessary includes, unnecessary Noncopyable boilerplate,
2119         and the getPropertyID function declaration along with its associated apology comment.
2120
2121         * css/makevalues.pl: Generate constants instead of macros for CSS value numbers (but not an
2122         enumeration, like properties, since you rarely have any reason to handle all values, but
2123         often have a reason to handle all properties). Renamed the constant for the number of CSS
2124         value keywords from CSS_VAL_TOTAL to numCSSValueKeywords, and added maxCSSValueKeywordLength.
2125
2126         * platform/text/String.cpp:
2127         (WebCore::charactersToDouble): Made this function more efficient by using a stack buffer
2128         rather than a CString.
2129
2130 2008-02-18  Dan Bernstein  <mitz@apple.com>
2131
2132         Reviewed by Dave Hyatt.
2133
2134         - fix <rdar://problem/5736225> crash in svgFontAndFaceElementForFontData on digitalstrom.org/cms
2135
2136         Test: fast/css/font-face-multiple-remote-sources.html
2137
2138         * css/CSSFontFace.cpp:
2139         (WebCore::CSSFontFace::fontLoaded):
2140         * css/CSSSegmentedFontFace.cpp:
2141         (WebCore::CSSSegmentedFontFace::fontLoaded):
2142
2143 2008-02-18  Darin Adler  <darin@apple.com>
2144
2145         Reviewed by Sam.
2146
2147         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2148         (WebCore::hasCSSPropertyNamePrefix): Added.
2149         (WebCore::cssPropertyName): Reimplement to not use DeprecatedString. Also made faster
2150         by using a Vector<UChar> and eliminating all the string operations.
2151
2152 2008-02-18  Stephanie Lewis  <slewis@apple.com>
2153
2154         Reviewed by Adam.
2155
2156         Remove workaround for <rdar://problem/5695848>.
2157         
2158         * platform/network/cf/ResourceResponseCFNet.cpp:
2159         (WebCore::ResourceResponse::doUpdateResourceResponse):
2160
2161 2008-02-18  Samuel Weinig  <sam@webkit.org>
2162
2163         Reviewed by Geoff Garen.
2164
2165         Fix for http://bugs.webkit.org/show_bug.cgi?id=17419
2166         Remove CompatMode from JavaScriptCore as it is never set to anything other than NativeMode
2167
2168         * bindings/js/kjs_proxy.cpp:
2169         (WebCore::KJSProxy::initScript):
2170
2171 2008-02-18  Alp Toker  <alp@atoker.com>
2172
2173         Reviewed by Mark Rowe.
2174
2175         http://bugs.webkit.org/show_bug.cgi?id=17381
2176         [CURL] Regression: data URL parsing broken after DeprecatedString removal (Acid2)
2177
2178         This patch resolves the regression for the GTK+ port.
2179
2180         * platform/network/curl/ResourceHandleManager.cpp:
2181         (WebCore::parseDataUrl):
2182
2183 2008-02-18  Darin Adler  <darin@apple.com>
2184
2185         Reviewed by Sam.
2186
2187         * platform/network/win/ResourceHandleWin.cpp:
2188         (WebCore::ResourceHandle::onHandleCreated): Use String instead of DeprecatedString.
2189         (WebCore::ResourceHandle::start): Ditto.
2190
2191 2008-02-18  Darin Adler  <darin@apple.com>
2192
2193         Reviewed by Sam.
2194
2195         * platform/network/win/CookieJarWin.cpp:
2196         (WebCore::setCookies): Use String instead of DeprecatedString.
2197         (WebCore::cookies): Ditto.
2198
2199 2008-02-18  Darin Adler  <darin@apple.com>
2200
2201         Reviewed by Sam.
2202
2203         - removed use of DeprecatedString in the Color class
2204
2205         * platform/graphics/Color.cpp:
2206         (WebCore::Color::parseHexColor): Streamlined logic a bit with early returns.
2207         Used toASCIIHexValue a character at a time rather than using toIntStrict
2208         in base 16 mode.
2209         (WebCore::findNamedColor): Added. Uses a fixed-size char buffer to look up
2210         a color using the gperf-generated findColor function. Saves a memory allocation
2211         vs. the old version that called DeprecatedString::latin1().
2212         (WebCore::Color::setNamedColor): Changed to use findNamedColor.
2213
2214 2008-02-18  Darin Adler  <darin@apple.com>
2215
2216         Reviewed by Sam.
2217
2218         * editing/htmlediting.cpp:
2219         (WebCore::stringWithRebalancedWhitespace): Changed to use String instead of
2220         DeprecatedString.
2221
2222 2008-02-18  Darin Adler  <darin@apple.com>
2223
2224         Reviewed by Sam.
2225
2226         * editing/SelectionController.cpp:
2227         (WebCore::SelectionController::debugRenderer): Changed to use String instead of
2228         DeprecatedString.
2229
2230 2008-02-18  Darin Adler  <darin@apple.com>
2231
2232         Reviewed and landed by Sam.
2233
2234         Remove DeprecatedStringList.
2235
2236         * GNUmakefile.am:
2237         * WebCore.pro:
2238         * WebCore.vcproj/WebCore.vcproj:
2239         * WebCore.xcodeproj/project.pbxproj:
2240         * WebCoreSources.bkl:
2241         * editing/markup.cpp:
2242         * platform/DeprecatedStringList.cpp: Removed.
2243         * platform/DeprecatedStringList.h: Removed.
2244         * platform/mac/DeprecatedStringListMac.mm: Removed.
2245
2246 2008-02-18  Darin Adler  <darin@apple.com>
2247
2248         Reviewed by Sam.
2249
2250         * css/CSSPrimitiveValueMappings.h: Add default cases to all the switch statements.
2251         This will ease the way some day if we decide to use an enum instead of int; otherwise
2252         we'll have a ton of "unhandled enum value" warnings here.
2253
2254 2008-02-18  Alp Toker  <alp@atoker.com>
2255
2256         Build fix for GTK+ < 2.10. Fall back to simple text clipboard copy
2257         with older GTK+ versions for now.
2258
2259         * platform/gtk/PasteboardGtk.cpp:
2260         (WebCore::Pasteboard::writeSelection):
2261
2262 2008-02-18  Darin Adler  <darin@apple.com>
2263
2264         Reviewed by Sam.
2265
2266         * WebCore.base.exp: Export a couple of WebCore::String functions we plan to use
2267         in the future in WebKit.
2268
2269 2008-02-18  Darin Adler  <darin@apple.com>
2270
2271         Reviewed by Sam.
2272
2273         * DerivedSources.make: Added the scripts to the ENABLE_SVG versions of the rules
2274         for CSSPropertyNames.h and CSSValueKeywords.h. Somehow that got left out, so the
2275         files would not be regenerated if the scripts were changed (but would if SVG was
2276         disabled).
2277
2278 2008-02-18  Alexey Proskuryakov  <ap@webkit.org>
2279
2280         Suggested by Darin.
2281
2282         * platform/KURL.h: (WebCore::KURL::operator const String&): Added, to avoid unexpected
2283         conversion via UString (as in bug 17418).
2284
2285 2008-02-18  Jon Honeycutt  <jhoneycutt@apple.com>
2286
2287         Reviewed by Darin.
2288
2289         <rdar://problem/5744899> Crash in Flash when clicking "Yes" to abort
2290         slow script Flash 9 dialog at http://www.kidzui.com
2291
2292         When navigating to a new page, we stop all outstanding PluginStreams.
2293         Flash hangs in the call to NPP_URLNotify. It eventually displays the
2294         "slow script" dialog, which relinquishes control to the system. While
2295         this dialog is running, the request we are in the process of cancelling
2296         completes, and we re-enter Flash to deliver the data. When the dialog
2297         is dismissed, the internal state of Flash has changed, and Flash
2298         crashes with a null dereference.
2299
2300         To work around this, we can defer loading before entering plug-in code,
2301         so that even if a plug-in yields to the system, we won't get callbacks
2302         while we're handling a callback.
2303
2304         * plugins/PluginStream.cpp:
2305         (WebCore::PluginStream::startStream): Defers loads while calling into
2306         plug-in.
2307         (WebCore::PluginStream::destroyStream): Same.
2308         (WebCore::PluginStream::deliverData): Same.
2309         (WebCore::PluginStream::didFail): Protect 'this' from deletion by
2310         destroyStream. Null out m_loader only after destroyStream returns.
2311         (WebCore::PluginStream::didFinishLoading): Same.
2312
2313 2008-02-18  Alexey Proskuryakov  <ap@webkit.org>
2314
2315         Reviewed by Darin.
2316
2317         http://bugs.webkit.org/show_bug.cgi?id=17418
2318         REGRESSION: Assertion failure dragging image (JSLock::lockCount() > 0)
2319
2320         * platform/win/ClipboardWin.cpp:
2321         (WebCore::ClipboardWin::declareAndWriteDragImage): Explicitly convert from KURL to String,
2322         as an implicit conversion uses UString and thus needs a JSLock.
2323
2324 2008-02-17  Sam Weinig  <sam@webkit.org>
2325
2326         Roll out r30360.
2327
2328         * loader/FrameLoader.cpp:
2329         (WebCore::FrameLoader::changeLocation):
2330
2331 2008-02-17  Sam Weinig  <sam@webkit.org>
2332
2333         Mac build fix.
2334
2335         * WebCore.xcodeproj/project.pbxproj:
2336
2337 2008-02-17  Alp Toker  <alp@atoker.com>
2338
2339         Attempt to fix the Wx build (has been broken all weekend).
2340
2341         Stub out some graphics functions.
2342
2343         * platform/graphics/wx/GraphicsContextWx.cpp:
2344         (WebCore::GraphicsContext::beginPath):
2345         (WebCore::GraphicsContext::addPath):
2346         * platform/graphics/wx/PathWx.cpp:
2347         (WebCore::Path::isEmpty):
2348
2349 2008-02-17  Julien Chaffraix  <julien.chaffraix@gmail.com>
2350
2351         Reviewed by Alexey Proskuryakov.
2352
2353         http://bugs.webkit.org/show_bug.cgi?id=16989
2354         bug 16989 : Add send() flag checks in XmlHttpRequest
2355
2356         Splitted XmlHttpRequest::abort into abort (called from JavaScript) and internalAbort that
2357         perform the cancellation and is called mainly from internal methods.
2358
2359         Tests: http/tests/xmlhttprequest/xmlhttprequest-abort-readyState-shouldDispatchEvent.html
2360                http/tests/xmlhttprequest/xmlhttprequest-abort-readyState-shouldNotDispatchEvent.html
2361                http/tests/xmlhttprequest/xmlhttprequest-test-send-flag.html
2362
2363         * xml/XMLHttpRequest.cpp:
2364         (WebCore::XMLHttpRequest::open): Now call internalAbort() and moved readyState change into method
2365         (WebCore::XMLHttpRequest::send): Added m_loader check
2366         (WebCore::XMLHttpRequest::abort): Now update readyState and clear the request headers as specified
2367         in the spec
2368
2369         (WebCore::XMLHttpRequest::internalAbort): Perform cancellation internal operations (no readyState update)
2370         (WebCore::XMLHttpRequest::setRequestHeader): Added m_loader check
2371
2372         (WebCore::XMLHttpRequest::processSyncLoadResults): Now call internalAbort() instead of abort()
2373         (WebCore::XMLHttpRequest::willSendRequest): Ditto
2374         (WebCore::XMLHttpRequest::cancelRequests): Ditto
2375         (WebCore::XMLHttpRequest::detachRequests): Ditto
2376         * xml/XMLHttpRequest.h: Added the private internalAbort method
2377
2378 2008-02-17  Sam Weinig  <sam@webkit.org>
2379
2380         Reviewed by Dan Bernstein.
2381
2382         Fix for http://bugs.webkit.org/show_bug.cgi?id=17365
2383         document.createEvent("MessageEvent") throws NOT_SUPPORTED_ERR
2384
2385         - Updated fast/events/event-instanceof.html to test document.createEvent("MessageEvent").
2386
2387         * DerivedSources.make:
2388         Generate Objective-C binding for DOMProgressEvent which was missing.
2389
2390         * WebCore.xcodeproj/project.pbxproj:
2391         Add missing DOMProgressEvent files to the project.
2392
2393         * bindings/js/JSEventCustom.cpp:
2394         (WebCore::toJS):
2395         Clean up and add case for SVGZoomEvent that was missing.
2396
2397         * bindings/objc/DOMEvents.mm:
2398         (+[DOMEvent _wrapEvent:WebCore::]):
2399         Clean up and add cases for ProgressEvent and MessageEvent that were missing.
2400
2401         * dom/Document.cpp:
2402         (WebCore::Document::createEvent):
2403         Add case for MessageEvent.
2404
2405 2008-02-17  Adam Treat  <treat@kde.org>
2406
2407         Reviewed by Eric Seidel.
2408
2409         http://bugs.webkit.org/show_bug.cgi?id=17008
2410         Meta refresh does not work with cache turned off
2411
2412         Fix for issue noticed on http://adserver.vivox.com/2
2413
2414         * loader/FrameLoader.cpp:
2415         (WebCore::FrameLoader::changeLocation):
2416
2417 2008-02-17  Alp Toker  <alp@atoker.com>
2418
2419         Reviewed by Sam Weinig.
2420
2421         Fix for change made in r30355. Issue noticed by İsmail Dönmez.
2422
2423         Verify SSL certs by default, but allow checks to be disabled with an
2424         environment variable (WEBKIT_IGNORE_SSL_ERRORS) for now.
2425
2426         * platform/network/curl/ResourceHandleManager.cpp:
2427         (WebCore::ResourceHandleManager::startJob):
2428
2429 2008-02-17  Bin Chen  <binary.chen@gmail.com>
2430
2431         Reviewed by Alp Toker.
2432
2433         http://bugs.webkit.org/show_bug.cgi?id=17404
2434         Bug 17404: curl certification problem
2435
2436         Disable SSL cert verification until we have a way of distributing
2437         certs and/or reporting SSL errors to the user.
2438
2439         * platform/network/curl/ResourceHandleManager.cpp:
2440         (WebCore::ResourceHandleManager::startJob):
2441
2442 2008-02-17  Alp Toker  <alp@atoker.com>
2443
2444         Reviewed by Mark Rowe.
2445
2446         DevHelp fails to load local files; URL truncated by one character.
2447
2448         Fix a file:// URL regression introduced in KURL.cpp r30243.
2449
2450         * platform/KURL.cpp:
2451         (WebCore::KURL::KURL):
2452
2453 2008-02-17  Dan Bernstein  <mitz@apple.com>
2454
2455         Reviewed by Darin Adler.
2456
2457         - fix http://bugs.webkit.org/show_bug.cgi?id=17033
2458           <rdar://problem/5709315> REGRESSION: Really long <option> causes unnecessary page scroll bars to accommodate content
2459
2460         Test: fast/forms/control-clip-overflow.html
2461
2462         * rendering/RenderFlow.cpp:
2463         (WebCore::RenderFlow::lowestPosition): Account for control clipping.
2464         (WebCore::RenderFlow::rightmostPosition): Ditto.
2465         (WebCore::RenderFlow::leftmostPosition): Ditto.
2466
2467 2008-02-16  Oliver Hunt  <oliver@apple.com>
2468
2469         Reviewed by Eric S.
2470
2471         Bug 17269: Deobfuscate CanvasRenderingContext2D.cpp
2472
2473         Use cross-platform code to determine the dirty rects for
2474         fill and stroke operations
2475
2476         * html/CanvasRenderingContext2D.cpp:
2477         (WebCore::CanvasRenderingContext2D::fill):
2478         (WebCore::CanvasRenderingContext2D::stroke):
2479           Added a FIXME as code inspection shows a trivial under-painting
2480           bug, although we currently ignore dirty rect tracking on canvas
2481           and repaint the whole thing anyway.
2482         (WebCore::CanvasRenderingContext2D::fillRect):
2483
2484 2008-02-16  Sam Weinig  <sam@webkit.org>
2485
2486         Reviewed by Darin Adler.
2487
2488         Take another step in the direction of getting rid of DeprecatedString
2489         by moving all the to{NumericType} off of it.
2490
2491         - Create free functions that take a UChar* buffer and length to do
2492           the string-to-number conversions.  This allows us to avoid two allocations
2493           if we don't already have a String and is consistent with the design we would
2494           like going forward.
2495         - Since the toInt (and family) functions on DeprecatedString were slightly
2496           different than the ones on String (they didn't allow trailing garbage),
2497           an extra set of 'Strict' toInt functions were added that have this behavior.
2498
2499         * platform/graphics/Color.cpp:
2500         (WebCore::Color::parseHexColor):
2501         * platform/text/PlatformString.h:
2502         * platform/text/String.cpp:
2503         (WebCore::String::percentage):
2504         (WebCore::String::toIntStrict):
2505         (WebCore::String::toUIntStrict):
2506         (WebCore::String::toInt64Strict):
2507         (WebCore::String::toUInt64Strict):
2508         (WebCore::String::toUInt):
2509         (WebCore::String::toDouble):
2510         (WebCore::isCharacterAllowedInBase):
2511         (WebCore::toIntegralType):
2512         (WebCore::lengthOfCharactersAsInteger):
2513         (WebCore::charactersToIntStrict):
2514         (WebCore::charactersToUIntStrict):
2515         (WebCore::charactersToInt64Strict):
2516         (WebCore::charactersToUInt64Strict):
2517         (WebCore::charactersToInt):
2518         (WebCore::charactersToUInt):
2519         (WebCore::charactersToInt64):
2520         (WebCore::charactersToUInt64):
2521         (WebCore::charactersToDouble):
2522         (WebCore::charactersToFloat):
2523         * platform/text/StringImpl.cpp:
2524         (WebCore::parseLength):
2525         (WebCore::StringImpl::toIntStrict):
2526         (WebCore::StringImpl::toUIntStrict):
2527         (WebCore::StringImpl::toInt64Strict):
2528         (WebCore::StringImpl::toUInt64Strict):
2529         (WebCore::StringImpl::toInt):
2530         (WebCore::StringImpl::toUInt):
2531         (WebCore::StringImpl::toInt64):
2532         (WebCore::StringImpl::toUInt64):
2533         (WebCore::StringImpl::toDouble):
2534         (WebCore::StringImpl::toFloat):
2535         * platform/text/StringImpl.h:
2536         * svg/SVGAnimationElement.cpp:
2537         (WebCore::SVGAnimationElement::parseClockValue):
2538         * svg/SVGFETurbulenceElement.cpp:
2539         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
2540
2541 2008-02-16  Dan Bernstein  <mitz@apple.com>
2542
2543         Reviewed by Sam Weinig.
2544
2545         - fix fixed-pitch font measurement of control characters that render
2546           as zero-width space
2547
2548         Test: fast/text/fixed-pitch-control-characters.html
2549
2550         * rendering/RenderText.cpp:
2551         (WebCore::RenderText::widthFromCache):
2552
2553 2008-02-16  Kevin Ollivier  <kevino@theolliviers.com>
2554
2555         wx build fix.
2556
2557         * platform/graphics/wx/GraphicsContextWx.cpp:
2558         (WebCore::GraphicsContext::drawImage):
2559
2560 2008-02-16  Jan Michael Alonzo  <jmalonzo@unpluggable.com>
2561
2562         Reviewed by Alp Toker.
2563
2564         Cross document messaging GTK+/autotools build fix.
2565
2566         * GNUmakefile.am:
2567
2568 2008-02-15  Oliver Hunt  <oliver@apple.com>
2569
2570         Build fix for Qt and Cairo builds
2571
2572         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2573         (WebCore::GraphicsContext::drawImage):
2574         * platform/graphics/qt/GraphicsContextQt.cpp:
2575
2576 2008-02-15  Oliver Hunt  <oliver@apple.com>
2577
2578         Reviewed by Dan B.
2579
2580         Bug 17269: Deobfuscate CanvasRenderingContext2D.cpp
2581         Refactor CanvasRenderingContext2D::drawImage(HTMLCanvasElement) to remove evil ifdefs
2582
2583         Add logic draw(ImageBuffer*) method to GraphicsContext to handle
2584         painting the source canvas content.
2585
2586         * html/CanvasRenderingContext2D.cpp:
2587         (WebCore::CanvasRenderingContext2D::drawImage):
2588         * html/HTMLCanvasElement.cpp:
2589         (WebCore::HTMLCanvasElement::buffer):
2590         * html/HTMLCanvasElement.h:
2591         * platform/graphics/GraphicsContext.h:
2592         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2593         (WebCore::GraphicsContext::drawImage):
2594         * platform/graphics/cg/GraphicsContextCG.cpp:
2595         (WebCore::GraphicsContext::paintBuffer):
2596         (WebCore::GraphicsContext::drawImage):
2597         * platform/graphics/qt/GraphicsContextQt.cpp:
2598         (WebCore::GraphicsContext::drawImage):
2599
2600 2008-02-15  Kevin Ollivier  <kevino@theolliviers.com>
2601
2602         Reviewed by David Hyatt.
2603
2604         Using GetNativeFontInfoDesc() to generate the hash value was
2605         leading to duplicate entries in the HashMap. Use the font object's
2606         pointer instead.
2607
2608         http://bugs.webkit.org/show_bug.cgi?id=17371
2609
2610         * platform/graphics/wx/FontPlatformData.h:
2611         (WebCore::FontPlatformData::computeHash):
2612
2613 2008-02-15  Ada Chan  <adachan@apple.com>
2614
2615         When parsing url we get from a CFURLRef, we need to null terminate 
2616         the string for the case when url ends with a '/'.
2617
2618         Reviewed by Darin.
2619
2620         * platform/cf/KURLCFNet.cpp:
2621         (WebCore::KURL::KURL):
2622
2623 2008-02-15  Brady Eidson  <beidson@apple.com>
2624
2625         Reviewed by Darin
2626
2627         Fix for <rdar://problem/5727175> and <rdar://problem/5740495> - Database threads and callback scripts can run after
2628         a page has closed or loaded a new document
2629
2630         Deciding to make the Database I/O semantic the same as loaders/XHR when a document is shut down, this patch implements
2631         a policy of shutting down the databases in a document at the same time.  This includes removing all pending transactions 
2632         in a database, cutting off an queued statements in the current transaction, and preventing further callbacks from being
2633         made.
2634
2635         No new layout tests with this patch as the current layout tests were catching this issue in a plethora of ways already
2636         (crashing, unexpected exceptions and output, etc)
2637
2638         * dom/Document.cpp:
2639         (WebCore::Document::~Document): Don't actually stop the database thread here - it better have been stopped already.
2640           Add an assertion to that effect.
2641         (WebCore::Document::addOpenDatabase): Add a new database handle to this Document's open database set
2642         (WebCore::Document::removeOpenDatabase): Remove such a handle
2643         (WebCore::Document:: stopDatabases): Call "close" on all open Database handles for this document
2644         * dom/Document.h:
2645
2646         * loader/FrameLoader.cpp:
2647         (WebCore::FrameLoader::stopLoading): In addition to canceling all resource loads and XHRs, stop all database I/O
2648
2649         * platform/MessageQueue.h:
2650         (WebCore::MessageQueue::killed): 
2651
2652         * platform/sql/SQLiteTransaction.cpp:
2653         (WebCore::SQLiteTransaction::stop): Added.  Explicit stop to cut off a transaction so it won't try anymore SQL activity
2654         * platform/sql/SQLiteTransaction.h:
2655
2656         * storage/Database.cpp:
2657         (WebCore::Database::Database):
2658         (WebCore::Database::~Database):
2659         (WebCore::Database::markAsDeletedAndClose): Check if the thread has terminated before committing to waiting on the
2660           thread.
2661         (WebCore::Database::stop):  Stop this database, including all queued transactions and callbacks
2662         * storage/Database.h:
2663         (WebCore::Database::stopped):
2664
2665         * storage/DatabaseThread.cpp:
2666         (WebCore::DatabaseThread::terminationRequested):
2667         * storage/DatabaseThread.h:
2668
2669         * storage/SQLTransaction.cpp:
2670         (WebCore::SQLTransaction::executeSQL): Throw an exception if a new executeSQL comes in after a database is closed
2671         (WebCore::SQLTransaction::checkAndHandleClosedDatabase): Added.  Clears queued statements and clear the next step
2672           when the database has been closed since the last step/callback was run.  Also stops the current SQLite transaction,
2673           if any
2674         (WebCore::SQLTransaction::performNextStep):
2675         (WebCore::SQLTransaction::performPendingCallback):
2676         * storage/SQLTransaction.h:
2677
2678 2008-02-15  Adele Peterson  <adele@apple.com>
2679
2680         Reviewed by Darin.
2681
2682         Fix for <rdar://problem/5745072> REGRESSION (r29348): Shift + Tab does not change indent level on Google Docs
2683
2684         The immediate cause of this bug was that we stopped sending keypress events for the tab key when it is used to advance focus.
2685         We had a special case for forward-tab in designMode, where the default behavior was to insert a tab key (or respect the keypress handler behavior).
2686         This change makes the shift-tab behavior match the forward-tab behavior.
2687
2688         If the site had put their event handler (which does the indenting) on the keydown event, then this problem would have been avoided.
2689         This is something we should look into and maybe advise the site on in the future.  However, it's a low-risk change to just make tab and shift-tab uniform 
2690         in this respect, so I think this is the way to go for right now.
2691
2692         * page/EventHandler.cpp: (WebCore::EventHandler::defaultTabEventHandler):
2693
2694 2008-02-15  Anders Carlsson  <andersca@apple.com>
2695
2696         Reviewed by Alice.
2697
2698         <rdar://problem/5738678>
2699         REGRESSION: "Loading" status remains when uploading file to .Mac iDisk via Safari
2700         
2701         Use the new CFNetwork functions for setting body parts.
2702         
2703         * platform/network/cf/FormDataStreamCFNet.cpp:
2704         (WebCore::setHTTPBody):
2705         (WebCore::httpBodyFromRequest):
2706
2707 2008-02-15  Geoffrey Garen  <ggaren@apple.com>
2708
2709         Reviewed by Anders Carlsson.
2710         
2711         Fixed <rdar://problem/5725429> REGRESSION (r27898): Greenfield online
2712         surveys no longer work due to XMLHttpRequest exceptions
2713         
2714         Reverted some exception throwing code from r12194.
2715         
2716         To comply with the W3C draft spec, we used to throw an exception when
2717         trying to access responseText and responseXML at the wrong time, but
2718         that turned out to be a compatibility problem.
2719         
2720         Now, matching Firefox and previous versions of WebKit, we never throw
2721         an exception when accessing responseText or responseXML.
2722         
2723         See http://www.mail-archive.com/public-webapi@w3.org/msg02756.html.
2724
2725         * xml/XMLHttpRequest.cpp:
2726         (WebCore::XMLHttpRequest::getResponseText):
2727         (WebCore::XMLHttpRequest::getResponseXML):
2728
2729 2008-02-15  Justin Garcia  <justin.garcia@apple.com>
2730
2731         Reviewed by Dan Bernstein.
2732
2733         <rdar://problem/5738768> REGRESSION (r30062): Crash in InlineTextBox::isLineBreak() when Undoing a replace
2734         
2735         Rolled out <http://trac.webkit.org/projects/webkit/changeset/29667>
2736
2737         * editing/SelectionController.cpp:
2738         (WebCore::SelectionController::nodeWillBeRemoved):
2739
2740 2008-02-15  Alice Liu  <alice.liu@apple.com>
2741
2742         Reviewed by Darin.
2743
2744         Fixed <rdar://problem/5741440> REGRESSION (r28496): After deactivating JavaScript, scripts embedded in the HTML page continue to run
2745      
2746         Before this patch, Frame::scriptProxy() would only return null in the case that javascript was 
2747         disabled and if the script proxy field wasn't set (which would only be the case if the window 
2748         hasn't loaded anything yet).  Not all callers of scriptProxy() always check for a non-null return 
2749         value.  Those that did check would effectively be checking if javascript was enabled before proceeding.
2750         This fix consists of 2 elements: first, make sure that scriptProxy() will never return null, regardless 
2751         of whether javascript is disabled.  This will mean that callers who don't check for null won't crash.  
2752         Second, callers who did check for null now instead check for javascript being disabled.  This means that 
2753         code paths intended for preventing javascript from being run will be making the correct check.  Another
2754         minor addition to this patch is that I added a function on KSJProxy to be a shortcut for checking if javascript
2755         is enabled. 
2756
2757         * bindings/js/JSCustomSQLStatementCallback.cpp:
2758         (WebCore::JSCustomSQLStatementCallback::handleEvent):
2759         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
2760         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
2761         * bindings/js/JSCustomSQLTransactionCallback.cpp:
2762         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
2763         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
2764         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
2765         * bindings/js/JSCustomVoidCallback.cpp:
2766         (WebCore::JSCustomVoidCallback::handleEvent):
2767         * bindings/js/JSCustomXPathNSResolver.cpp:
2768         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
2769         * bindings/js/ScheduledAction.cpp:
2770         (WebCore::ScheduledAction::execute):
2771         * bindings/js/kjs_events.cpp:
2772         (WebCore::JSAbstractEventListener::handleEvent):
2773         (WebCore::JSLazyEventListener::parseCode):
2774         * bindings/js/kjs_html.cpp:
2775         (WebCore::runtimeObjectImplementsCall):
2776         * bindings/js/kjs_proxy.cpp:
2777         (WebCore::KJSProxy::isEnabled):
2778         * bindings/js/kjs_proxy.h:
2779         * bindings/js/kjs_window.cpp:
2780         (KJS::Window::retrieveWindow):
2781         (KJS::Window::retrieve):
2782         * dom/Document.cpp:
2783         (WebCore::Document::createHTMLEventListener):
2784         * dom/EventTarget.cpp:
2785         (WebCore::EventTarget::dispatchGenericEvent):
2786         * html/HTMLPlugInElement.cpp:
2787         (WebCore::HTMLPlugInElement::createNPObject):
2788         * html/HTMLScriptElement.cpp:
2789         (WebCore::HTMLScriptElement::evaluateScript):
2790         * html/HTMLTokenizer.cpp:
2791         (WebCore::HTMLTokenizer::parseTag):
2792         (WebCore::HTMLTokenizer::processToken):
2793         * loader/FrameLoader.cpp:
2794         (WebCore::FrameLoader::executeScript):
2795         (WebCore::FrameLoader::userGestureHint):
2796         (WebCore::FrameLoader::open):
2797         (WebCore::FrameLoader::dispatchWindowObjectAvailable):
2798         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
2799         * manual-tests/disable-javascript-reload.html: Added.
2800         * page/Frame.cpp:
2801         (WebCore::Frame::scriptProxy):
2802         (WebCore::Frame::bindingRootObject):
2803         (WebCore::Frame::windowScriptNPObject):
2804         * page/Frame.h:
2805         * page/InspectorController.cpp:
2806         (WebCore::canPassNodeToJavaScript):
2807         * page/mac/FrameMac.mm:
2808         (WebCore::Frame::windowScriptObject):
2809         * svg/SVGDocumentExtensions.cpp:
2810         (WebCore::SVGDocumentExtensions::createSVGEventListener):
2811
2812 2008-02-15  Dan Bernstein  <mitz@apple.com>
2813
2814         Reviewed by Alexey Proskuryakov.
2815
2816         - WebCore part of fixing http://bugs.webkit.org/show_bug.cgi?id=17360
2817           <rdar://problem/5743131> REGRESSION: mp4 file downloaded from server is downloaded as html
2818
2819         Test: http/tests/loading/text-content-type-with-binary-extension.html
2820
2821         Refined the workaround for <rdar://problem/5321972> to exclude files
2822         with extensions that are known to be associated with binary MIME types.
2823
2824         * WebCore.xcodeproj/project.pbxproj: Added WebCoreURLResponse.{h,mm}.
2825         * platform/network/mac/ResourceResponseMac.mm:
2826         (WebCore::ResourceResponse::doUpdateResourceResponse): Moved the
2827         workaround logic into WebCoreURLResponse.
2828         * platform/network/mac/WebCoreURLResponse.h: Added.
2829         * platform/network/mac/WebCoreURLResponse.mm: Added.
2830         (createBinaryExtensionsSet): Returns a set of extensions known to
2831         belong to MIME types of binary data.
2832         (-[NSURLResponse _webcore_MIMEType]):
2833         (-[NSHTTPURLResponse _webcore_MIMEType]): Forces the MIME type from
2834         application/octet-stream to text/plain if that is the specified
2835         Content-Type, unless the extension is in the binary extensions set.
2836
2837 2008-02-15  Dan Bernstein  <mitz@apple.com>
2838
2839         Reviewed by Dave Hyatt.
2840
2841         - fix http://bugs.webkit.org/show_bug.cgi?id=17306
2842           <rdar://problem/5737923> Transitions between styles that have different transition-* properties behave inconsistently
2843
2844         * manual-tests/transitions.html: Added.
2845         * page/AnimationController.cpp:
2846         (WebCore::CompositeImplicitAnimation::animate): Changed to use the
2847         transition properties of the current style rather than the target style.
2848         (WebCore::AnimationControllerPrivate::get): Changed to not create an
2849         animation if the style does not have transitions.
2850         (WebCore::AnimationController::updateImplicitAnimations): Added code to
2851         return the target style if the current style is not animating.
2852         * rendering/RenderObject.cpp:
2853         (WebCore::RenderObject::setAnimatableStyle): Changed to call
2854         updateImplicitAnimations() even if the current style does not have
2855         transitions, because we may be animating out of a style that had them.
2856
2857 2008-02-15  Alexey Proskuryakov  <ap@webkit.org>
2858
2859         Rubber-stamped by Darin.
2860
2861         Remove an obsolete WebCore readme file.
2862
2863         * README: Removed.
2864
2865 2008-02-15  Sam Weinig  <sam@webkit.org>
2866
2867         Reviewed by Darin Adler.
2868
2869         Remove more uses of DeprecatedString in preparation of getting rid of it.
2870
2871         * bridge/mac/WebCoreScriptDebugger.mm:
2872         * css/CSSCursorImageValue.cpp:
2873         (WebCore::isSVGCursorIdentifier):
2874         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
2875         * css/CSSStyleSelector.h:
2876         * dom/Element.cpp:
2877         (WebCore::Element::dump):
2878         (WebCore::Element::formatForDebugger):
2879         * dom/Position.cpp:
2880         (WebCore::Position::debugPosition):
2881         (WebCore::Position::formatForDebugger):
2882         * dom/Range.cpp:
2883         (WebCore::Range::formatForDebugger):
2884         * dom/Text.cpp:
2885         (WebCore::Text::formatForDebugger):
2886         * editing/Selection.cpp:
2887         (WebCore::Selection::debugPosition):
2888         (WebCore::Selection::formatForDebugger):
2889         * editing/SelectionController.cpp:
2890         (WebCore::SelectionController::debugRenderer):
2891         * editing/VisiblePosition.cpp:
2892         (WebCore::VisiblePosition::debugPosition):
2893         * html/HTMLTokenizer.cpp:
2894         (WebCore::HTMLTokenizer::scriptHandler):
2895         (WebCore::HTMLTokenizer::parseTag):
2896         (WebCore::HTMLTokenizer::processToken):
2897         (WebCore::HTMLTokenizer::notifyFinished):
2898         * svg/SVGFontFaceElement.cpp:
2899         (WebCore::mapAttributeToCSSProperty):
2900
2901 2008-02-15  Adam Roben  <aroben@apple.com>
2902
2903         * bindings/scripts/CodeGenerator.pm: Touch this to force bindings to
2904         regenerate.
2905
2906 2008-02-15  Adam Roben  <aroben@apple.com>
2907
2908         Try to fix Qt/GTK+ builds
2909
2910         * WebCore.pro: Remove MessageEvent.{idl,cpp} from the unconditional
2911         parts of this file.
2912
2913 2008-02-15  Darin Adler  <darin@apple.com>
2914
2915         - another Qt build fix
2916
2917         * platform/qt/KURLQt.cpp:
2918         (WebCore::KURL::operator QUrl): Use the characters directly, not ascii().
2919         Eliminate references to urlString.
2920
2921 2008-02-15  Darin Adler  <darin@apple.com>
2922
2923         - another Qt build fix
2924
2925         * platform/qt/ClipboardQt.cpp:
2926         (WebCore::ClipboardQt::declareAndWriteDragImage): Use KURL instead of String.
2927
2928 2008-02-14  Darin Adler  <darin@apple.com>
2929
2930         - another round of build fixes
2931
2932         * platform/KURL.cpp:
2933         (WebCore::appendEncodedHostname): Fix spelling (strLen, not strlen).
2934         * platform/network/curl/ResourceHandleManager.cpp:
2935         (WebCore::parseDataUrl): Fix a ".." typo and call data instead of characters.
2936
2937 2008-02-14  Darin Adler  <darin@apple.com>
2938
2939         - added back accidentally-removed files
2940
2941         * platform/DeprecatedStringList.cpp: Copied from platform/DeprecatedStringList.cpp.
2942         * platform/DeprecatedStringList.h: Copied from platform/DeprecatedStringList.h.
2943         * platform/mac/DeprecatedStringListMac.mm: Copied from platform/mac/DeprecatedStringListMac.mm.
2944
2945 2008-02-14  Darin Adler  <darin@apple.com>
2946
2947         - more build fixes
2948
2949         * platform/KURL.cpp:
2950         (WebCore::appendEncodedHostname): Use String to make a QString.
2951         * platform/network/cf/ResourceRequest.h:
2952         (WebCore::ResourceRequest::ResourceRequest): Removed a stray deprecatedString() call.
2953         * platform/network/curl/ResourceHandleManager.cpp:
2954         (WebCore::parseDataUrl): Updated to String rather than DeprecatedString functions.
2955
2956 2008-02-14  Darin Adler  <darin@apple.com>
2957
2958         - next Qt build fix
2959
2960         * platform/network/qt/ResourceRequest.h:
2961         (WebCore::ResourceRequest::ResourceRequest): Removed a stray deprecatedString() call.
2962
2963 2008-02-14  Darin Adler  <darin@apple.com>
2964
2965         - another build fix
2966
2967         * platform/network/curl/ResourceRequest.h:
2968         (WebCore::ResourceRequest::ResourceRequest): Removed a stray deprecatedString() call.
2969
2970 2008-02-14  Darin Adler  <darin@apple.com>
2971
2972         - first Qt build fix
2973
2974         * dom/XMLTokenizer.cpp:
2975         (WebCore::XMLTokenizer::endElementNs): Added a missing string() call.
2976
2977 2008-02-14  Darin Adler  <darin@apple.com>
2978
2979         Reviewed by Eric Seidel.
2980
2981         Based on work by Marvin Decker <marv.decker@gmail.com>
2982
2983         - fix http://bugs.webkit.org/show_bug.cgi?id=16538
2984           KURL should use String instead of DeprecatedString
2985
2986         - fix http://bugs.webkit.org/show_bug.cgi?id=16485
2987           DocLoader::checkForReload will crash if the URL isNull
2988           and a similar problem in IconDatabase
2989
2990         - fix http://bugs.webkit.org/show_bug.cgi?id=16487
2991           KURL doesn't preserve isNull when constructed with a DeprecatedString
2992
2993         - changed completeURL and various DOM getters to return KURL, to avoid
2994           conversion back and forth from KURL to String
2995
2996         - changed the conversion of KURL to NSURL or NSString to be automatic,
2997           to ease the use of KURL in Objective C DOM bindings, and eliminated
2998           the getNSURL function
2999
3000         - because I had to visit the DOM bindings anyway, eliminated almost all
3001           the use of the KJS namespace for things in WebCore
3002
3003         - fixed HTMLOptionElement constructor to check for undefined rather
3004           than size of the arguments array
3005
3006         - eliminated some other unnecessary uses of DeprecatedString
3007
3008         - changed String::split to take a Vector parameter instead of returning
3009           a Vector, for better performance
3010
3011         - added a couple of missing calls to do layout in SVG image handling;
3012           I was able to reproduce these only because I had broken URLs for a
3013           while -- not sure how to reproduce them now but the changes are
3014           clearly needed
3015
3016         Performance testing shows this to be at least a 1% speedup.
3017
3018         Added a new function protocols to efficiently compare protocols
3019         without case errors and a blankURL function so we don't have to
3020         code "about:blank" in multiple places in the code and don't have to
3021         construct a frash KURL each time. Moved decode_string and encode_string
3022         out of KURL and gave them clearer names.
3023
3024         Made KURL constructors explicit to highlight potentially-expensive
3025         operations and the poor semantics of KURL's constructor that takes
3026         a String.
3027
3028         * WebCore.base.exp: Updated.
3029
3030         * bindings/js/JSAttrCustom.cpp:
3031         (WebCore::JSAttr::setValue): Use protocolIs.
3032         * bindings/js/JSAudioConstructor.h: KJS namespace change.
3033         * bindings/js/JSCSSRuleCustom.cpp:
3034         (WebCore::toJS): Ditto.
3035         * bindings/js/JSCSSValueCustom.cpp:
3036         (WebCore::toJS): Ditto.
3037         * bindings/js/JSDocumentCustom.cpp:
3038         (WebCore::JSDocument::location): Ditto.
3039         (WebCore::JSDocument::setLocation): Updated for KURL change.
3040         (WebCore::toJS): KJS namespace change.
3041         * bindings/js/JSElementCustom.cpp:
3042         (WebCore::allowSettingSrcToJavascriptURL): Use protocolIs.
3043         (WebCore::JSElement::setAttribute): KJS namespace change.
3044         (WebCore::JSElement::setAttributeNode): Ditto.
3045         (WebCore::JSElement::setAttributeNS): Ditto.
3046         (WebCore::JSElement::setAttributeNodeNS): Ditto.
3047         * bindings/js/JSHTMLFrameElementCustom.cpp:
3048         (WebCore::allowSettingJavascriptURL): Use protocolIs.
3049         (WebCore::JSHTMLFrameElement::setSrc): KJS namespace change.
3050         (WebCore::JSHTMLFrameElement::setLocation): Ditto.
3051         * bindings/js/JSHTMLIFrameElementCustom.cpp:
3052         (WebCore::JSHTMLIFrameElement::setSrc): Use protocolIs.
3053         * bindings/js/JSHTMLOptionElementConstructor.cpp:
3054         (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
3055         (WebCore::JSHTMLOptionElementConstructor::construct): Cleaned up the
3056         structure a bit and changed checking to check for undefined rather than
3057         number of arguments.
3058         * bindings/js/JSHTMLOptionElementConstructor.h: KJS namespace change.
3059         * bindings/js/JSLocation.cpp:
3060         (WebCore::JSLocation::put): Eliminated some DeprecatedString use,
3061         and use protocolIs.
3062         (WebCore::jsLocationProtoFuncReplace): Ditto.
3063         (WebCore::jsLocationProtoFuncReload): Ditto.
3064         (WebCore::jsLocationProtoFuncAssign): Ditto.
3065         * bindings/js/JSLocation.h: KJS namespace change.
3066         * bindings/js/JSNamedNodeMapCustom.cpp:
3067         (WebCore::JSNamedNodeMap::canGetItemsForName): Ditto.
3068         (WebCore::JSNamedNodeMap::nameGetter): Ditto.
3069         * bindings/js/JSNamedNodesCollection.cpp:
3070         (WebCore::JSNamedNodesCollection::JSNamedNodesCollection): Ditto.
3071         * bindings/js/JSNamedNodesCollection.h: Ditto.
3072         * bindings/js/JSXMLHttpRequest.cpp:
3073         (WebCore::jsXMLHttpRequestPrototypeFunctionOpen): Removed
3074         DeprecatedString use.
3075         (WebCore::jsXMLHttpRequestPrototypeFunctionSend): Ditto.
3076         * bindings/js/JSXMLHttpRequest.h: Moved this class into the WebCore
3077         namespace.
3078         * bindings/js/JSXSLTProcessor.cpp: Namespace change.
3079         * bindings/js/JSXSLTProcessor.h: Ditto.
3080
3081         * bindings/js/kjs_binding.cpp: Updated for namespace change.
3082         (WebCore::jsStringOrNull): Added an overload for KURL to allow DOM
3083         classes to return KURL even if the DOM expects a string.
3084         (WebCore::jsStringOrUndefined): Ditto.
3085         (WebCore::jsStringOrFalse): Ditto.
3086         * bindings/js/kjs_binding.h: Moved everything into the WebCore
3087         namespace.
3088
3089         * bindings/js/kjs_css.h: Namespace change.
3090         * bindings/js/kjs_events.cpp: Removed an include.
3091         * bindings/js/kjs_events.h: Namespace change.
3092         * bindings/js/kjs_html.h: Namespace change.
3093
3094         * bindings/js/kjs_navigator.cpp: Moved everything into the
3095         WebCore namespace.
3096         * bindings/js/kjs_navigator.h: Ditto.
3097
3098         * bindings/js/kjs_window.cpp:
3099         (KJS::parseModalDialogFeatures): Updated for String::split change.
3100         (KJS::createWindow): Use protocolIs and removed some DeprecatedString.
3101         (KJS::Window::put): Ditto.
3102         (KJS::Window::allowsAccessFrom): Ditto.
3103         (KJS::windowProtoFuncOpen): Ditto.
3104
3105         * bindings/objc/DOM.mm:
3106         (-[DOMElement _getURLAttribute:]): Removed getNSURL call.
3107         * bindings/objc/DOMHTML.mm:
3108         (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]): Ditto.
3109
3110         * bindings/scripts/CodeGeneratorCOM.pm: Updated includes so conversions from
3111         KURL will work.
3112         * bindings/scripts/CodeGeneratorJS.pm: Updated for namespace changes, and also
3113         updated includes so conversions from KURL will work.
3114         * bindings/scripts/CodeGeneratorObjC.pm: Updated includes so conversions from
3115         KURL will work.
3116
3117         * bridge/mac/WebCoreAXObject.mm:
3118         (-[WebCoreAXObject accessibilityAttributeValue:]): Removed getNSURL call.
3119         Also streamlined the logic.
3120         (AXAttributedStringAppendText): Ditto.
3121
3122         * bridge/mac/WebCoreScriptDebugger.mm:
3123         (toNSString): Tweaked.
3124         (toNSURL): Removed getNSURL call.
3125
3126         * css/CSSImageValue.cpp:
3127         (WebCore::CSSImageValue::image): Removed DeprecatedString use.
3128         * css/CSSImportRule.cpp:
3129         (WebCore::CSSImportRule::insertedIntoParent): Ditto.
3130         * css/CSSParser.cpp:
3131         (WebCore::CSSParser::parseValue): Ditto.
3132         (WebCore::CSSParser::parseContent): Ditto.
3133         (WebCore::CSSParser::parseBackgroundImage): Ditto.
3134         (WebCore::CSSParser::parseFontFaceSrc): Ditto.
3135         (WebCore::CSSParser::parseBorderImage): Ditto.
3136         * css/CSSStyleSelector.cpp:
3137         (WebCore::CSSStyleSelector::setEncodedURL): Ditto.
3138         (WebCore::checkPseudoState): Ditto.
3139         * css/CSSStyleSelector.h: Ditto.
3140
3141         * css/MediaList.cpp:
3142         (WebCore::MediaList::setMediaText): Updated for String::split change.
3143
3144         * css/StyleBase.cpp:
3145         (WebCore::StyleBase::baseURL): Return KURL.
3146         * css/StyleBase.h: DItto.
3147
3148         * dom/Document.cpp:
3149         (WebCore::Document::~Document): Updated for namespace change.
3150         (WebCore::Document::documentURI): Return KURL.
3151         (WebCore::Document::setDocumentURI): Removed DeprecatedString use.
3152         (WebCore::Document::baseURI): Return KURL.
3153         (WebCore::Document::open): Updated to use blankURL.
3154         (WebCore::Document::setURL): Take KURL.
3155         (WebCore::Document::shouldBeAllowedToLoadLocalResources): Updated for
3156         change to use KURL
3157         (WebCore::Document::setBaseURL): Take KURL.
3158         (WebCore::Document::elementSheet): Updated for KURL change.
3159         (WebCore::Document::mappedElementSheet): Ditto.
3160         (WebCore::Document::processHttpEquiv): Ditto.
3161         (WebCore::Document::recalcStyleSelector): Removed use of
3162         DeprecatedString -- also noticed some dead code here!
3163         (WebCore::Document::setCookie): Ditto.
3164         (WebCore::Document::completeURL): Return KURL.
3165         * dom/Document.h: Use KURL instead of String in a few places.
3166
3167         * dom/DocumentType.cpp:
3168         (WebCore::DocumentType::baseURI): Return KURL.
3169         * dom/DocumentType.h: Ditto.
3170
3171         * dom/Element.cpp:
3172         (WebCore::Element::baseURI): Return KURL.
3173         * dom/Element.h: Ditto.
3174
3175         * dom/Node.cpp:
3176         (WebCore::Node::setDocument): Namespace change.
3177         (WebCore::Node::baseURI): Return KURL.
3178         * dom/Node.h: Ditto.
3179
3180         * dom/ProcessingInstruction.cpp:
3181         (WebCore::ProcessingInstruction::checkStyleSheet): Updated for KURL change.
3182         * dom/StyleElement.cpp:
3183         (WebCore::StyleElement::process): Changed to use Vector<UChar> instead of
3184         String for better performance.
3185         (WebCore::StyleElement::createSheet): Removed use of DeprecateString.
3186         * dom/XMLTokenizer.cpp:
3187         (WebCore::XMLTokenizer::endElementNs): Updated for KURL change.
3188         (WebCore::XMLTokenizer::end): Ditto.
3189         (WebCore::xmlDocPtrForString): Removed use of DeprecateString.
3190         * dom/XMLTokenizer.h: Ditto.
3191
3192         * editing/markup.cpp: Moved appendString to PlatformString.h.
3193         (WebCore::appendQuotedURLAttributeValue): Use protocolIs.
3194         (WebCore::completeURLs): Removed DeprecatedString use.
3195         (WebCore::createFragmentFromMarkup): Use blankURL.
3196         (WebCore::fillContainerFromString): Removed DeprecatedString use.
3197         (WebCore::createFragmentFromText): Ditto.
3198
3199         * history/HistoryItem.cpp:
3200         (WebCore::HistoryItem::url): Removed DeprecatedString use.
3201         (WebCore::HistoryItem::originalURL): Ditto.
3202         * history/HistoryItem.h: Removed include.
3203
3204         * html/HTMLAnchorElement.cpp:
3205         (WebCore::HTMLAnchorElement::defaultEventHandler): Removed use of
3206         DeprecatedString.
3207         (WebCore::HTMLAnchorElement::href): Return KURL.
3208         (WebCore::HTMLAnchorElement::hash): Removed DeprecatedString use.
3209         (WebCore::HTMLAnchorElement::host): Ditto.
3210         (WebCore::HTMLAnchorElement::hostname): Ditto.
3211         (WebCore::HTMLAnchorElement::pathname): Ditto.
3212         (WebCore::HTMLAnchorElement::port): Ditto.
3213         (WebCore::HTMLAnchorElement::protocol): Ditto.
3214         (WebCore::HTMLAnchorElement::search): Ditto.
3215         (WebCore::HTMLAnchorElement::toString): Ditto.
3216         * html/HTMLAnchorElement.h: Ditto.
3217         * html/HTMLAppletElement.cpp:
3218         (WebCore::HTMLAppletElement::createRenderer): Updated for KURL change.
3219         * html/HTMLAreaElement.cpp:
3220         (WebCore::HTMLAreaElement::href): Return KURL.
3221         * html/HTMLAreaElement.h: Ditto.
3222         * html/HTMLBaseElement.cpp:
3223         (WebCore::HTMLBaseElement::removedFromDocument): Updated for KURL change.
3224         (WebCore::HTMLBaseElement::process): Removed DeprecatedString use.
3225         * html/HTMLBodyElement.cpp:
3226         (WebCore::HTMLBodyElement::parseMappedAttribute): Updated for KURL change.
3227         * html/HTMLEmbedElement.cpp:
3228         (WebCore::HTMLEmbedElement::parseMappedAttribute): Removed use of
3229         DeprecatedString.
3230         * html/HTMLEmbedElement.h: Removed DeprecatedString use.
3231         * html/HTMLFormElement.cpp:
3232         (WebCore::HTMLFormElement::formWouldHaveSecureSubmission): Use protocolIs.
3233         (WebCore::encodeCString): Updated for change to String::split.
3234         (WebCore::HTMLFormElement::dataEncoding): Ditto.
3235         (WebCore::HTMLFormElement::formData): Removed DeprecatedString use.
3236         (WebCore::HTMLFormElement::isMailtoForm): Use protocolIs.
3237         (WebCore::HTMLFormElement::submit): Updated for KURL change.
3238         (WebCore::HTMLFormElement::reset): Ditto.
3239         * html/HTMLFrameElementBase.cpp:
3240         (WebCore::HTMLFrameElementBase::isURLAllowed): Updated for KURL change
3241         and use equalIgnoringRef instead of doing a setRef to get the same effect.
3242         (WebCore::HTMLFrameElementBase::openURL): Use blankURL.
3243         (WebCore::HTMLFrameElementBase::location): Return KURL.
3244         (WebCore::HTMLFrameElementBase::src): Return KURL.
3245         * html/HTMLFrameElementBase.h: Ditto.
3246         * html/HTMLImageElement.cpp:
3247         (WebCore::HTMLImageElement::parseMappedAttribute): Updated for KURL change.
3248         (WebCore::HTMLImageElement::longDesc): Return KURL.
3249         (WebCore::HTMLImageElement::lowsrc): Return KURL.
3250         (WebCore::HTMLImageElement::src): Return KURL.
3251         * html/HTMLImageElement.h: Ditto. Also removed imageMap() function.
3252         * html/HTMLInputElement.cpp:
3253         (WebCore::HTMLInputElement::src): Return KURL.
3254         * html/HTMLInputElement.h: Ditto.
3255         * html/HTMLLinkElement.cpp:
3256         (WebCore::HTMLLinkElement::parseMappedAttribute): Updated for KURL change.
3257         (WebCore::HTMLLinkElement::tokenizeRelAttribute): Updated for String::split change.
3258         (WebCore::HTMLLinkElement::href): Return KURL.
3259         * html/HTMLLinkElement.h: Ditto.
3260         * html/HTMLMediaElement.cpp:
3261         (WebCore::HTMLMediaElement::src): Return KURL.
3262         (WebCore::HTMLMediaElement::pickMedia): Updated for KURL change.
3263         * html/HTMLMediaElement.h: Ditto.
3264         * html/HTMLObjectElement.cpp:
3265         (WebCore::HTMLObjectElement::isImageType): Use protocolIs.
3266         (WebCore::HTMLObjectElement::data): Return KURL.
3267         * html/HTMLObjectElement.h: Ditto.
3268         * html/HTMLOptGroupElement.cpp:
3269         (WebCore::HTMLOptGroupElement::groupLabelText): Removed DeprecatedString use.
3270         * html/HTMLParser.cpp:
3271         (WebCore::HTMLParser::reportErrorToConsole): Updated for KURL change.
3272         * html/HTMLScriptElement.cpp:
3273         (WebCore::HTMLScriptElement::insertedIntoDocument): Ditto.
3274         (WebCore::HTMLScriptElement::text): Changed to use Vector<UChar> instead of
3275         String for better performance.
3276         (WebCore::HTMLScriptElement::src): Return KURL.
3277         * html/HTMLScriptElement.h: Ditto.
3278         * html/HTMLSourceElement.cpp:
3279         (WebCore::HTMLSourceElement::src): Return KURL.
3280         * html/HTMLSourceElement.h: Ditto.
3281         * html/HTMLTableElement.cpp:
3282         (WebCore::HTMLTableElement::parseMappedAttribute): Updated for KURL change.
3283         * html/HTMLTablePartElement.cpp:
3284         (WebCore::HTMLTablePartElement::parseMappedAttribute): Updated for KURL change.
3285         * html/HTMLTextAreaElement.cpp:
3286         (WebCore::HTMLTextAreaElement::setValue): Removed DeprecatedString use.
3287         * html/HTMLTokenizer.cpp:
3288         (WebCore::HTMLTokenizer::scriptExecution): Ditto.
3289         (WebCore::HTMLTokenizer::notifyFinished): Use protocolIs.
3290         * html/HTMLVideoElement.cpp:
3291         (WebCore::HTMLVideoElement::poster): Return KURL.
3292         * html/HTMLVideoElement.h: Ditto.
3293         * html/HTMLViewSourceDocument.cpp:
3294         (WebCore::HTMLViewSourceDocument::addText): Updated for String::split change.
3295
3296         * loader/DocLoader.cpp:
3297         (WebCore::DocLoader::checkForReload): Add an explicit check for an empty URL
3298         here to avoid problems using its string as a hash table key later.
3299         (WebCore::DocLoader::requestResource): Removed DeprecatedString use.
3300
3301         * loader/FTPDirectoryDocument.cpp:
3302         (WebCore::FTPDirectoryTokenizer::createTDForFilename): Updated for KURL change.
3303         (WebCore::FTPDirectoryTokenizer::parseAndAppendOneLine): Removed use of
3304         DeprecatedString.
3305
3306         * loader/FrameLoader.cpp:
3307         (WebCore::FrameLoader::requestFrame): Use protocolIs.
3308         (WebCore::FrameLoader::loadSubframe): Use blankURL.
3309         (WebCore::FrameLoader::submitForm): Use protocolIs and removed use of
3310         DeprecatedString.
3311         (WebCore::FrameLoader::iconURL): Return KURL. Use protcolIs.
3312         (WebCore::FrameLoader::didOpenURL): Use protocolIs.
3313         (WebCore::FrameLoader::didExplicitOpen): Use blankURL.
3314         (WebCore::FrameLoader::executeIfJavaScriptURL): Use protocolIs.
3315         Update for name change to decodeURLEscapeSequences.
3316         (WebCore::FrameLoader::receivedFirstData): Updated for KURL changes.
3317         (WebCore::FrameLoader::begin): Removed DeprecatedString use.
3318         Renamed baseurl to baseURL. Updated to use KURL more.
3319         (WebCore::FrameLoader::gotoAnchor): Removed use of encodedHtmlRef
3320         function, which is no different from ref.
3321         (WebCore::FrameLoader::completeURL): Updated for KURL change.
3322         (WebCore::FrameLoader::scheduleLocationChange): Ditto.
3323         (WebCore::FrameLoader::canCachePage): Use protocolIs.
3324         (WebCore::FrameLoader::updatePolicyBaseURL): Update for KURL change.
3325         (WebCore::FrameLoader::setPolicyBaseURL): Take KURL.
3326         (WebCore::FrameLoader::startRedirectionTimer): Removed use of
3327         DeprecatedString.
3328         (WebCore::FrameLoader::load): Use protocolIs.
3329         (WebCore::FrameLoader::shouldHideReferrer): Use protocolIs.
3330         (WebCore::FrameLoader::shouldAllowNavigation): Updated for KURL change.
3331         (WebCore::FrameLoader::commitProvisionalLoad): Use blankURL.
3332         (WebCore::FrameLoader::open): Use protcolIs.
3333         (WebCore::FrameLoader::createHistoryItem): Use blankURL.
3334         (WebCore::FrameLoader::createJavaAppletWidget): Updated for KURL change.
3335         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady): Removed
3336         DeprecatedString use.
3337         * loader/FrameLoader.h: Ditto.
3338
3339         * loader/ImageDocument.cpp:
3340         (WebCore::ImageDocument::createDocumentStructure): Updated for KURL change.
3341         * loader/PluginDocument.cpp:
3342         (WebCore::PluginTokenizer::createDocumentStructure): Ditto.
3343
3344         * loader/icon/IconDatabase.cpp:
3345         (WebCore::IconDatabase::iconForPageURL): Added a check for an empty URL
3346         before trying to use it as a hash table key.
3347
3348         * loader/icon/IconLoader.h: Tweaked includes.
3349
3350         * loader/loader.cpp:
3351         (WebCore::Loader::servePendingRequests): Use protcolIs. Also removed some
3352         code to set up a local variable that is never used (and a DeprecatedString
3353         on to boot!).
3354
3355         * loader/mac/LoaderNSURLExtras.m:
3356         (suggestedFilenameWithMIMEType): Removed unnecessary typecast.
3357
3358         * page/ContextMenuController.cpp: Removed include.
3359
3360         * page/mac/EventHandlerMac.mm:
3361         (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
3362         Use protocolIs.
3363
3364         * page/mac/WebCoreFrameBridge.mm:
3365         (-[WebCoreFrameBridge URLWithAttributeString:]): Removed getNSURL call.
3366         (-[WebCoreFrameBridge baseURL]): Ditto.
3367
3368         * platform/KURL.cpp:
3369         (WebCore::isSchemeFirstChar): Fixed bug in handling of values >= 0x80.
3370         (WebCore::isSchemeChar): Ditto.
3371         (WebCore::isPathSegmentEndChar): Ditto.
3372         (WebCore::hexDigitValue): Changed parameter type to UChar.
3373         (WebCore::copyASCII): Added.
3374         (WebCore::findFirstOf): Added.
3375         (WebCore::KURL::protocolIs): Added.
3376         (WebCore::KURL::KURL): Tightened logic up quite a bit. Changed parameter
3377         types from DeprecatedString to String.
3378         (WebCore::KURL::init): Changed parameter type to String. Preserved the
3379         passed-in string even if the base is invalid. Cleaned up logic to determine
3380         if the originalString should be pased in to the parse function. Simplified
3381         by calling the new parse overload that takes String in many cases.
3382         (WebCore::KURL::lastPathComponent): Return String.
3383         (WebCore::KURL::protocol): Ditto.
3384         (WebCore::KURL::host): Ditto.
3385         (WebCore::KURL::port): Changed logic to use early return for clarity.
3386         (WebCore::KURL::pass): Return String.
3387         (WebCore::KURL::user): Ditto.
3388         (WebCore::KURL::ref): Ditto.
3389         (WebCore::assertProtocolIsGood): Added.
3390         (WebCore::KURL::protocolIs): Added.
3391         (WebCore::KURL::query): Return String.
3392         (WebCore::KURL::path): Ditto.
3393         (WebCore::KURL::setProtocol): Take String.
3394         (WebCore::KURL::setHost): Ditto.
3395         (WebCore::KURL::setPort): Use String.
3396         (WebCore::KURL::setHostAndPort): Take String.
3397         (WebCore::KURL::setUser): Ditto.
3398         (WebCore::KURL::setPass): Ditto.
3399         (WebCore::KURL::setRef): Ditto.
3400         (WebCore::KURL::setQuery): Ditto.
3401         (WebCore::KURL::setPath): Ditto.
3402         (WebCore::KURL::prettyURL): Return String. Use Vector<UChar> to build it.
3403         (WebCore::decodeURLEscapeSequences): Renamed from KURL::decode_string.
3404         Return String. Use Vector<UChar> to build it.
3405         (WebCore::KURL::isLocalFile): Use protocolIs.
3406         (WebCore::KURL::parse): Added an overload that takes a String to replace
3407         the use of DeprecatedString::ascii at various call sites. Updated for
3408         name change (urlString -> m_string).
3409         (WebCore::equalIgnoringRef): Wrote a new implementation that doesn't
3410         do any allocation.
3411         (WebCore::encodeWithURLEscapeSequences): Renamed from KURL::encode_string.
3412         Return String.
3413         (WebCore::appendEncodedHostname): Added. Replaces encodeHostname and
3414         avoids the need to allocate a string.
3415         (WebCore::findHostnamesInMailToURL): Update to use findFirstOf instead of
3416         regular expressions.
3417         (WebCore::findHostnameInHierarchicalURL): Ditto.
3418         (WebCore::encodeHostnames): Use protocolIs and the other helpers above.
3419         (WebCore::encodeRelativeString): Changed to put result into a CharBuffer.
3420         (WebCore::substituteBackslashes): Updated to use String.
3421         (WebCore::KURL::copyToBuffer): Added.
3422         (WebCore::protocolIs): Added.
3423         (WebCore::blankURL): Added.
3424         (WebCore::KURL::print): Updated.
3425         * platform/KURL.h: Added a number of comments. Reorganized the header a bit.
3426         Made the string constructors explicit. Changed to use String instead of
3427         DeprecatedString. Removed encodedHTMLRef. Renamed and added a few functions.
3428
3429         * platform/cf/KURLCFNet.cpp:
3430         (WebCore::KURL::KURL): Streamlined the logic a bit.
3431         (WebCore::KURL::createCFURL): Changed to use copyToBuffer.
3432
3433         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3434         (WebCore::MediaPlayerPrivate::createQTMovie): Removed getNSURL call.
3435         Use protocolIs.
3436         * platform/mac/ClipboardMac.mm:
3437         (WebCore::ClipboardMac::declareAndWriteDragImage): Removed getNSURL call.
3438         * platform/mac/CookieJar.mm:
3439         (WebCore::cookies): Removed getNSURL call.
3440         (WebCore::setCookies): Removed getNSURL call.
3441         * platform/mac/KURLMac.mm:
3442         (WebCore::KURL::KURL): Streamlined the logic a bit.
3443         * platform/mac/PasteboardMac.mm:
3444         (WebCore::Pasteboard::writeURL): Removed getNSURL call.
3445         (WebCore::Pasteboard::writeImage): Ditto.
3446         * platform/mac/SSLKeyGeneratorMac.mm:
3447         (WebCore::signedPublicKeyAndChallengeString): Ditto.
3448
3449         * platform/network/HTTPParsers.cpp:
3450         (WebCore::filenameFromHTTPContentDisposition): Updated for String::split.
3451         * platform/network/ResourceHandle.cpp:
3452         (WebCore::ResourceHandle::portAllowed): Use protocolIs.
3453
3454         * platform/network/cf/ResourceErrorCF.cpp:
3455         (WebCore::ResourceError::operator CFErrorRef): Removed deprecatedString call.
3456         * platform/network/curl/ResourceHandleManager.cpp:
3457         (WebCore::headerCallback): Ditto.
3458         (WebCore::parseDataUrl): Use String instead of DeprecatedString.
3459         (WebCore::ResourceHandleManager::startJob): Updated for KURL changes.
3460         * platform/network/mac/ResourceErrorMac.mm:
3461         (WebCore::ResourceError::operator NSError*): Removed getNSURL call.
3462         * platform/network/mac/ResourceRequest.h:
3463         (WebCore::ResourceRequest::ResourceRequest): Removed DeprecatedString use.
3464         * platform/network/mac/ResourceRequestMac.mm:
3465         (WebCore::ResourceRequest::doUpdatePlatformRequest): Removed getNSURL call.
3466         * platform/network/mac/ResourceResponseMac.mm:
3467         (WebCore::ResourceResponse::nsURLResponse): Removed getNSURL call.
3468
3469         * platform/qt/ClipboardQt.cpp:
3470         (WebCore::ClipboardQt::writeURL): Removed deprecatedString call.
3471
3472         * platform/text/CString.h:
3473         (WebCore::CStringBuffer::length): Fixed size_t/unsigned mismatch to make it
3474         possible to compile this on Windows with higher warning level
3475
3476         * platform/text/PlatformString.h: Updated split to modify a result parameter
3477         rather than returning a Vector. Added charactersAreAllASCII and an append
3478         function that appends a String to a Vector<UChar>.
3479         * platform/text/String.cpp:
3480         (WebCore::String::split): Updated.
3481
3482         * platform/win/BString.cpp:
3483         (WebCore::BString::BString): Added conversion from KURL.
3484         * platform/win/BString.h: Ditto.
3485
3486         * platform/win/ClipboardUtilitiesWin.cpp:
3487         (WebCore::markupToCF_HTML): Removed use of deprecatedString.
3488         * platform/win/ClipboardWin.cpp:
3489         (WebCore::filesystemPathFromUrlOrTitle): Ditto.
3490         (WebCore::createGlobalHDropContent): Ditto.
3491         (WebCore::ClipboardWin::setData): Ditto.
3492         (WebCore::ClipboardWin::writeRange): Ditto.
3493         * platform/win/PasteboardWin.cpp:
3494         (WebCore::Pasteboard::writeSelection): Ditto.
3495         * plugins/PluginStream.cpp:
3496         (WebCore::PluginStream::startStream): Ditto.
3497         (WebCore::PluginStream::destroyStream): Ditto.
3498         * plugins/win/PluginViewWin.cpp:
3499         (WebCore::scriptStringIfJavaScriptURL): Ditto.
3500         (WebCore::PluginView::performRequest): Ditto.
3501         (WebCore::PluginView::PluginView): Ditto.
3502
3503         * rendering/HitTestResult.cpp:
3504         (WebCore::HitTestResult::absoluteImageURL): Removed DeprecatedString use.
3505         (WebCore::HitTestResult::absoluteLinkURL): Ditto.
3506
3507         * rendering/RenderFrameSet.cpp:
3508         (WebCore::RenderFrameSet::layOutAxis): Fixed comment wording.
3509         * rendering/RenderImage.cpp:
3510         (WebCore::RenderImage::paintReplaced): Removed use of DeperecatedString,
3511         (WebCore::RenderImage::imageMap): Changed to call useMap instead of imageMap;
3512         both do the same thing, and the first is standard DOM.
3513
3514         * rendering/RenderObject.cpp:
3515         (WebCore::RenderObject::addPDFURLRect): Rewrote and streamlined to remove
3516         DeprecatedString use.
3517         * rendering/RenderObject.h: Changed addPDFURLRect to take const IntRect&.
3518
3519         * rendering/RenderPartObject.cpp:
3520         (WebCore::isURLAllowed): Updated for KURL change and use equalIgnoringRef
3521         instead of doing a setRef to get the same effect.
3522         (WebCore::RenderPartObject::updateWidget): Updated for KURL change.
3523
3524         * rendering/RenderText.cpp:
3525         (WebCore::charactersAreAllASCII): Moved the guts to PlatformString.h.
3526
3527         * rendering/SVGRenderSupport.cpp:
3528         (WebCore::renderSubtreeToImage): Added missing call to do layout. I ran
3529         into this while doing some layout tests while URL processing was broken.
3530
3531         * rendering/SVGRenderTreeAsText.h: Removed include.
3532
3533         * svg/SVGImageLoader.cpp:
3534         (WebCore::SVGImageLoader::updateFromElement): Removed DeprecatedString use.
3535
3536         * svg/graphics/SVGImage.cpp:
3537         (WebCore::SVGImage::draw): Added missing call to do layout. I ran
3538         into this while doing some layout tests while URL processing was broken.
3539         (WebCore::SVGImage::dataChanged): Use a null URL rather than an arbitrary
3540         string for the document.
3541
3542         * xml/XMLHttpRequest.cpp:
3543         (WebCore::XMLHttpRequest::getResponseXML): Removed DeprecatedString use.
3544         (WebCore::XMLHttpRequest::urlMatchesDocumentDomain): Ditto.
3545         (WebCore::XMLHttpRequest::open): Ditto.
3546         (WebCore::XMLHttpRequest::send):  Namespace change.
3547         (WebCore::XMLHttpRequest::dropProtection): Ditto.
3548         * xml/XMLHttpRequest.h: Removed DeprecatedString use.
3549
3550         * xml/XSLImportRule.cpp:
3551         (WebCore::XSLImportRule::loadSheet): Removed DeprecatedString use.
3552         * xml/XSLStyleSheet.cpp:
3553         (WebCore::XSLStyleSheet::loadChildSheets): Ditto.
3554         (WebCore::XSLStyleSheet::loadChildSheet): Ditto.
3555         * xml/XSLStyleSheet.h: Ditto.
3556         * xml/XSLTProcessor.cpp: