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