b4cfa760284b37ce3f364eb0e8fdfa0ead319ab7
[WebKit-https.git] / WebCore / ChangeLog
1 2010-10-22  Cosmin Truta  <ctruta@chromium.org>
2
3         Reviewed by Nikolas Zimmermann.
4
5         getBoundingClientRect does not work with SVG <text>
6         https://bugs.webkit.org/show_bug.cgi?id=46775
7
8         Dispatched the calls from Element::getBoundingClientRect to getBBox
9         through SVGElement::boundingBox.
10         Recognized SVGTextElement in addition to SVGStyledLocatableElement
11         as a class that provides getBBox.
12         Fixed the result of zooming: adjusted the getBoundingClientRect rectangle
13         for absolute zoom, even for SVG elements.
14
15         Additional cleanup task:
16         Removed redundant overloads of SVGStyledTransformableElement
17         methods: nearestViewportElement, farthestViewportElement, getBBox.
18         These methods are already inherited from SVGStyledLocatableElement.
19
20         Test: css3/zoom-coords.xhtml
21
22         * WebCore.xcodeproj/project.pbxproj: Set role of SVGLocatable.h to private.
23         * dom/Element.cpp:
24         (Element::getBoundingClientRect): Used SVGElement::boundingBox.
25         Adjusted coordinates for absolute zoom, for all kinds of elements.
26         * svg/SVGElement.cpp:
27         * svg/SVGElement.h:
28         (SVGElement::boundingBox): Added.
29         * svg/SVGStyledTransformableElement.cpp:
30         * svg/SVGStyledTransformableElement.h:
31         (SVGStyledTransformableElement::nearestViewportElement): Removed.
32         (SVGStyledTransformableElement::farthestViewportElement): Removed.
33         (SVGStyledTransformableElement::getBBox): Removed.
34
35 2010-10-22  Patrick Gansterer  <paroga@webkit.org>
36
37         Reviewed by Adam Roben.
38
39         [WIN] Add stubs for SocketStream classes
40         https://bugs.webkit.org/show_bug.cgi?id=47983
41
42         * platform/network/win/SocketStreamError.h: Copied from WebCore/platform/network/curl/SocketStreamError.h.
43         (WebCore::SocketStreamError::SocketStreamError):
44         * platform/network/win/SocketStreamHandle.h: Copied from WebCore/platform/network/curl/SocketStreamHandle.h.
45         (WebCore::SocketStreamHandle::create):
46         * platform/network/win/SocketStreamHandleWin.cpp: Copied from WebCore/platform/network/curl/SocketStreamHandleCurl.cpp.
47
48 2010-10-22  Patrick Gansterer  <paroga@webkit.org>
49
50         Reviewed by Adam Roben.
51
52         Disable cache in ResourceHandleWin
53         https://bugs.webkit.org/show_bug.cgi?id=48128
54
55         The caching of windows does not work correctly, so disable it for now.
56
57         * platform/network/win/ResourceHandleWin.cpp:
58         (WebCore::ResourceHandle::start):
59
60 2010-10-22  Jia Pu  <jpu@apple.com>
61
62         Reviewed by Dan Bernstein.
63
64         Regression (r69548): cancelled autocorrection suggestion is still applied.
65         https://bugs.webkit.org/show_bug.cgi?id=48081
66         <rdar://problem/8579765>
67         
68         The test requires a 0.3 second delay using setTimeout(). So we put it in manual-tests.
69
70         * editing/Editor.cpp:
71         (WebCore::Editor::handleRejectedCorrection): Clear autocorrection info when user dismissed the panel.
72         * manual-tests/autocorrection/autocorrection-cancelled-by-ESC.html: Added.
73
74 2010-10-22  Andreas Kling  <kling@webkit.org>
75
76         Reviewed by Kenneth Rohde Christiansen.
77
78         [Gtk] Fix canvas/philip/tests/2d.path.isPointInPath.nonfinite.html
79         https://bugs.webkit.org/show_bug.cgi?id=48133
80
81         * platform/graphics/cairo/PathCairo.cpp:
82         (WebCore::Path::contains): Return false if any x or y are nonfinite.
83
84 2010-10-22  Alexander Pavlov  <apavlov@chromium.org>
85
86         Reviewed by Pavel Feldman.
87
88         Web Inspector: Implement property toggling in InspectorCSSAgent
89
90         This change implements enablement/disablement and setting of style properties.
91         Disabled properties are persisted in the (top-level) scope of InspectorStyleSheet.
92         https://bugs.webkit.org/show_bug.cgi?id=47339
93
94         Drive-by: fixes for the Web Inspector Protocol format.
95
96         * inspector/InspectorCSSAgent.cpp:
97         (WebCore::InspectorCSSAgent::getComputedStyleForNode2):
98         (WebCore::InspectorCSSAgent::getInheritedStylesForNode2):
99         (WebCore::InspectorCSSAgent::setPropertyText2):
100         (WebCore::InspectorCSSAgent::toggleProperty2):
101         (WebCore::InspectorCSSAgent::setRuleSelector2):
102         (WebCore::InspectorCSSAgent::buildObjectForAttributeStyles):
103         * inspector/InspectorCSSAgent.h:
104         * inspector/InspectorStyleSheet.cpp:
105         (WebCore::InspectorStyle::buildObjectForStyle):
106         (WebCore::InspectorStyle::setPropertyText):
107         (WebCore::InspectorStyle::toggleProperty):
108         (WebCore::InspectorStyle::disabledIndexByOrdinal):
109         (WebCore::InspectorStyle::styleText):
110         (WebCore::InspectorStyle::disableProperty):
111         (WebCore::InspectorStyle::enableProperty):
112         (WebCore::InspectorStyle::populateAllProperties):
113         (WebCore::InspectorStyle::populateObjectWithStyleProperties):
114         (WebCore::InspectorStyle::shiftDisabledProperties):
115         (WebCore::InspectorStyle::replacePropertyInStyleText):
116         (WebCore::InspectorStyle::shorthandValue):
117         (WebCore::InspectorStyle::shorthandPriority):
118         (WebCore::InspectorStyle::longhandProperties):
119         (WebCore::InspectorStyleSheet::setText):
120         (WebCore::InspectorStyleSheet::setRuleSelector):
121         (WebCore::InspectorStyleSheet::addRule):
122         (WebCore::InspectorStyleSheet::ruleForId):
123         (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
124         (WebCore::InspectorStyleSheet::buildObjectForRule):
125         (WebCore::InspectorStyleSheet::buildObjectForStyle):
126         (WebCore::InspectorStyleSheet::setPropertyText):
127         (WebCore::InspectorStyleSheet::toggleProperty):
128         (WebCore::InspectorStyleSheet::styleForId):
129         (WebCore::InspectorStyleSheet::inspectorStyleForId):
130         (WebCore::InspectorStyleSheet::rememberInspectorStyle):
131         (WebCore::InspectorStyleSheet::forgetInspectorStyle):
132         (WebCore::InspectorStyleSheet::ruleOrStyleId):
133         (WebCore::InspectorStyleSheet::ensureText):
134         (WebCore::InspectorStyleSheet::setStyleText):
135         (WebCore::InspectorStyleSheet::styleSheetTextWithChangedStyle):
136         (WebCore::InspectorStyleSheet::ruleId):
137         (WebCore::InspectorStyleSheet::revalidateStyle):
138         (WebCore::InspectorStyleSheet::originalStyleSheetText):
139         (WebCore::InspectorStyleSheet::resourceStyleSheetText):
140         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
141         (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
142         (WebCore::InspectorStyleSheetForInlineStyle::inspectorStyleForId):
143         * inspector/InspectorStyleSheet.h:
144         (WebCore::InspectorCSSId::createFromParts):
145         (WebCore::InspectorCSSId::InspectorCSSId):
146         (WebCore::InspectorCSSId::styleSheetId):
147         (WebCore::InspectorCSSId::ordinal):
148         (WebCore::InspectorCSSId::isEmpty):
149         (WebCore::InspectorCSSId::asString):
150         (WebCore::InspectorStyleProperty::InspectorStyleProperty):
151         (WebCore::InspectorStyle::create):
152         (WebCore::InspectorStyle::InspectorStyle):
153         (WebCore::InspectorStyle::cssStyle):
154         (WebCore::InspectorStyle::hasDisabledProperties):
155         (WebCore::InspectorStyleSheet::styleId):
156         (WebCore::InspectorStyleSheetForInlineStyle::styleForId):
157         (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor):
158         (WebCore::InspectorStyleSheetForInlineStyle::rememberInspectorStyle):
159         (WebCore::InspectorStyleSheetForInlineStyle::forgetInspectorStyle):
160
161 2010-10-22  Pavel Feldman  <pfeldman@chromium.org>
162
163         Reviewed by Yury Semikhatsky.
164
165         Web Inspector: update resources tree in storage panel upon network events.
166         https://bugs.webkit.org/show_bug.cgi?id=48121
167
168         * inspector/Inspector.idl:
169         * inspector/InspectorResourceAgent.cpp:
170         (WebCore::buildObjectForDocumentLoader):
171         (WebCore::buildObjectForFrameTree):
172         (WebCore::InspectorResourceAgent::didCommitLoad):
173         (WebCore::InspectorResourceAgent::frameDetachedFromParent):
174         * inspector/front-end/ResourceManager.js:
175         (WebInspector.ResourceManager):
176         (WebInspector.ResourceManager.prototype._createResource):
177         (WebInspector.ResourceManager.prototype.didReceiveResponse):
178         (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache):
179         (WebInspector.ResourceManager.prototype.didCommitLoadForFrame):
180         (WebInspector.ResourceManager.prototype._addResourceToStorageFrame):
181         (WebInspector.ResourceManager.prototype.frameDetachedFromParent):
182         (WebInspector.ResourceManager.prototype._clearResources):
183         (WebInspector.ResourceManager.prototype._processCachedResources):
184         (WebInspector.ResourceManager.prototype._addFramesRecursively):
185         (WebInspector.ResourceManager.getContents):
186         * inspector/front-end/StoragePanel.js:
187         (WebInspector.StoragePanel.prototype.addOrUpdateFrame):
188         (WebInspector.StoragePanel.prototype.removeFrame):
189         (WebInspector.StoragePanel.prototype.addResourceToFrame):
190         (WebInspector.StoragePanel.prototype.removeResourcesFromFrame):
191         (WebInspector.BaseStorageTreeElement.prototype.onattach):
192         (WebInspector.BaseStorageTreeElement.prototype.onreveal):
193         (WebInspector.BaseStorageTreeElement.prototype.set titleText):
194         (WebInspector.FrameTreeElement):
195         (WebInspector.FrameTreeElement.prototype.onselect):
196         (WebInspector.FrameTreeElement.prototype.get displayName):
197         (WebInspector.FrameTreeElement.prototype.set displayName):
198
199 2010-10-22  François Sausset  <sausset@gmail.com>
200
201         Reviewed by Kenneth Rohde Christiansen.
202
203         Fix wrong xHeight() value for Apple Symbols font.
204         https://bugs.webkit.org/show_bug.cgi?id=41535
205
206         Test: mathml/xHeight.xhtml
207
208         * platform/graphics/mac/SimpleFontDataMac.mm:
209         (WebCore::SimpleFontData::platformInit):
210
211 2010-10-22  Nikolas Zimmermann  <nzimmermann@rim.com>
212
213         Reviewed by Dirk Schulze.
214
215         Further preparations to deploy the new SVGAnimatedProperty concept for the rest of the SVG datatypes
216         https://bugs.webkit.org/show_bug.cgi?id=48125
217
218         Model SVGListPropertyTearOff similar to SVGPropertyTearOff, allow it to be used for SVGXXXList datatypes, that are not animated. (SVGStringList)
219         Recognize all SVG primitive datatypes in SVGPropertyTraits.
220         Add a new - temporary - macro to support multiple animated properties that map to a single DOM attribute (kernelUnitLength attribute vs. kernelUnitLengthX/Y properties).
221         These macros will all be removed and expanded by their content, as soon as the transition to the new SVGAnimatedProperty concept is done.
222
223         Doesn't affect any tests yet, as the code is still unused.
224
225         * svg/properties/SVGAnimatedProperty.h:
226         (WebCore::SVGAnimatedProperty::lookupOrCreateWrapper):
227         (WebCore::SVGAnimatedProperty::lookupWrapper):
228         * svg/properties/SVGAnimatedPropertyMacros.h:
229         * svg/properties/SVGAnimatedPropertySynchronizer.h:
230         * svg/properties/SVGListPropertyTearOff.h:
231         (WebCore::SVGListPropertyTearOff::create):
232         (WebCore::SVGListPropertyTearOff::removeItemFromList):
233         (WebCore::SVGListPropertyTearOff::detachListWrappers):
234         (WebCore::SVGListPropertyTearOff::clear):
235         (WebCore::SVGListPropertyTearOff::numberOfItems):
236         (WebCore::SVGListPropertyTearOff::initialize):
237         (WebCore::SVGListPropertyTearOff::getItem):
238         (WebCore::SVGListPropertyTearOff::insertItemBefore):
239         (WebCore::SVGListPropertyTearOff::replaceItem):
240         (WebCore::SVGListPropertyTearOff::removeItem):
241         (WebCore::SVGListPropertyTearOff::appendItem):
242         (WebCore::SVGListPropertyTearOff::SVGListPropertyTearOff):
243         (WebCore::SVGListPropertyTearOff::~SVGListPropertyTearOff):
244         (WebCore::SVGListPropertyTearOff::commitChange):
245         * svg/properties/SVGPropertyTearOff.h:
246         * svg/properties/SVGPropertyTraits.h:
247
248 2010-10-22  Sheriff Bot  <webkit.review.bot@gmail.com>
249
250         Unreviewed, rolling out r70301.
251         http://trac.webkit.org/changeset/70301
252         https://bugs.webkit.org/show_bug.cgi?id=48126
253
254         "Lang attribute layout tests failing" (Requested by satish on
255         #webkit).
256
257         * dom/Element.cpp:
258         (WebCore::Element::computeInheritedLanguage):
259         * page/SpeechInput.cpp:
260         (WebCore::SpeechInput::startRecognition):
261         * page/SpeechInput.h:
262         * page/SpeechInputClient.h:
263         * platform/mock/SpeechInputClientMock.cpp:
264         (WebCore::SpeechInputClientMock::startRecognition):
265         (WebCore::SpeechInputClientMock::setRecognitionResult):
266         (WebCore::SpeechInputClientMock::timerFired):
267         * platform/mock/SpeechInputClientMock.h:
268         * rendering/TextControlInnerElements.cpp:
269         (WebCore::TextControlInnerElement::attachInnerElement):
270         (WebCore::SearchFieldCancelButtonElement::detach):
271         (WebCore::SpinButtonElement::defaultEventHandler):
272         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
273         (WebCore::InputFieldSpeechButtonElement::detach):
274
275 2010-10-22  Leandro Gracia Gil  <leandrogracia@google.com>
276
277         Reviewed by Jeremy Orlow.
278
279         Patch the current speech input implementation to use and validate the
280         nearest language tag. The language is now passed to the startRecognition
281         methods so that language-specific recognition could be used. Also added
282         a second parameter to setMockSpeechInputResult for the language used in
283         speech recognition.
284         https://bugs.webkit.org/show_bug.cgi?id=47089
285
286         This is the 2nd of a 4-sided patch in Chromium and WebKit. For more
287         details see http://codereview.chromium.org/3615005/show and
288         http://codereview.chromium.org/3595018/show.
289
290         Test: fast/speech/input-text-language-tag.html
291
292         * dom/Element.cpp:
293         (WebCore::Element::computeInheritedLanguage): includes a brief character
294           validation for the BCP 47 language tag.
295         * page/SpeechInput.cpp:
296         (WebCore::SpeechInput::startRecognition):
297         * page/SpeechInput.h:
298         * page/SpeechInputClient.h:
299         * platform/mock/SpeechInputClientMock.cpp:
300         (WebCore::SpeechInputClientMock::startRecognition):
301         (WebCore::SpeechInputClientMock::setRecognitionResult): results are now
302           stored by language using a hash map.
303         (WebCore::SpeechInputClientMock::timerFired):
304         * platform/mock/SpeechInputClientMock.h:
305         * rendering/TextControlInnerElements.cpp:
306         (WebCore::TextControlInnerElement::attachInnerElement):
307         (WebCore::SearchFieldCancelButtonElement::detach):
308         (WebCore::SpinButtonElement::defaultEventHandler):
309         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
310         (WebCore::InputFieldSpeechButtonElement::detach):
311
312 2010-10-21  Yury Semikhatsky  <yurys@chromium.org>
313
314         Unreviewed, rolling out r70298.WebKit win compilation failure.
315         http://trac.webkit.org/changeset/70298
316         https://bugs.webkit.org/show_bug.cgi?id=48122
317
318 2010-10-21  Yury Semikhatsky  <yurys@chromium.org>
319
320         Reviewed by Pavel Feldman.
321
322         Web Inspector: decouple ScriptArguments from ScriptCallStack
323         https://bugs.webkit.org/show_bug.cgi?id=48058
324
325         ScriptCallFrame and ScriptCallStack are now the same for both JSC and V8.
326         The factory functions that allow to create ScriptCallStack from VM-specific
327         objects are defined in ScriptCallStackFactory.cpp.
328
329         ScriptArguments class is used for passing arguments from JS code to the native
330         part.
331
332         No new tests. This refactoring is covered with existing Console tests.
333
334         * WebCore.gypi:
335         * WebCore.xcodeproj/project.pbxproj:
336         * bindings/js/ScriptCallFrame.cpp: Removed.
337         * bindings/js/ScriptCallFrame.h: Removed.
338         * bindings/js/ScriptCallStack.cpp: Removed.
339         * bindings/js/ScriptCallStack.h: Removed.
340         * bindings/js/ScriptCallStackFactory.cpp: Added.
341         (WebCore::createScriptCallStack):
342         (WebCore::createScriptArguments):
343         (WebCore::ScriptCallStack::stackTrace):
344         * bindings/js/ScriptCallStackFactory.h: Added.
345         * bindings/js/ScriptState.h:
346         (WebCore::ScriptStateProtectedPtr::get):
347         * bindings/scripts/CodeGeneratorJS.pm:
348         * bindings/scripts/CodeGeneratorV8.pm:
349         * bindings/v8/ScriptCallFrame.cpp: Removed.
350         * bindings/v8/ScriptCallFrame.h: Removed.
351         * bindings/v8/ScriptCallStack.cpp: Removed.
352         * bindings/v8/ScriptCallStack.h: Removed.
353         * bindings/v8/ScriptCallStackFactory.cpp: Added.
354         (WebCore::toScriptCallFrame):
355         (WebCore::toScriptCallFramesVector):
356         (WebCore::createScriptCallStack):
357         (WebCore::createScriptArguments):
358         (WebCore::ScriptCallStack::stackTrace):
359         * bindings/v8/ScriptCallStackFactory.h: Added.
360         * bindings/v8/ScriptController.cpp:
361         (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions):
362         * bindings/v8/ScriptState.h:
363         (WebCore::ScriptStateProtectedPtr::get):
364         * bindings/v8/V8ConsoleMessage.cpp:
365         (WebCore::V8ConsoleMessage::handler):
366         (WebCore::V8ConsoleMessage::dispatchNow):
367         * bindings/v8/V8ConsoleMessage.h:
368         * bindings/v8/custom/V8ConsoleCustom.cpp:
369         (WebCore::V8Console::traceCallback):
370         (WebCore::V8Console::assertCallback):
371         * inspector/ConsoleMessage.cpp:
372         (WebCore::ConsoleMessage::ConsoleMessage):
373         (WebCore::ConsoleMessage::addToFrontend):
374         (WebCore::ConsoleMessage::updateRepeatCountInConsole):
375         (WebCore::ConsoleMessage::isEqual):
376         * inspector/ConsoleMessage.h:
377         * inspector/InspectorController.cpp:
378         (WebCore::InspectorController::addMessageToConsole):
379         (WebCore::InspectorController::startGroup):
380         * inspector/InspectorController.h:
381         * inspector/ScriptArguments.cpp: Added.
382         (WebCore::ScriptArguments::ScriptArguments):
383         (WebCore::ScriptArguments::~ScriptArguments):
384         (WebCore::ScriptArguments::argumentAt):
385         (WebCore::ScriptArguments::globalState):
386         (WebCore::ScriptArguments::getFirstArgumentAsString):
387         (WebCore::ScriptArguments::isEqual):
388         * inspector/ScriptArguments.h: Added.
389         (WebCore::ScriptArguments::argumentCount):
390         * inspector/ScriptCallFrame.cpp: Added.
391         (WebCore::ScriptCallFrame::ScriptCallFrame):
392         (WebCore::ScriptCallFrame::~ScriptCallFrame):
393         (WebCore::ScriptCallFrame::isEqual):
394         (WebCore::ScriptCallFrame::buildInspectorObject):
395         * inspector/ScriptCallFrame.h: Added.
396         (WebCore::ScriptCallFrame::functionName):
397         (WebCore::ScriptCallFrame::sourceURL):
398         (WebCore::ScriptCallFrame::lineNumber):
399         * inspector/ScriptCallStack.cpp: Added.
400         (WebCore::ScriptCallStack::ScriptCallStack):
401         (WebCore::ScriptCallStack::~ScriptCallStack):
402         (WebCore::ScriptCallStack::at):
403         (WebCore::ScriptCallStack::size):
404         (WebCore::ScriptCallStack::isEqual):
405         (WebCore::ScriptCallStack::buildInspectorObject):
406         * inspector/ScriptCallStack.h: Added.
407         * page/Console.cpp:
408         (WebCore::Console::addMessage):
409         (WebCore::Console::debug):
410         (WebCore::Console::error):
411         (WebCore::Console::info):
412         (WebCore::Console::log):
413         (WebCore::Console::dir):
414         (WebCore::Console::dirxml):
415         (WebCore::Console::trace):
416         (WebCore::Console::assertCondition):
417         (WebCore::Console::count):
418         (WebCore::Console::markTimeline):
419         (WebCore::Console::profile):
420         (WebCore::Console::profileEnd):
421         (WebCore::Console::timeEnd):
422         (WebCore::Console::group):
423         (WebCore::Console::groupCollapsed):
424         (WebCore::Console::shouldCaptureFullStackTrace):
425         (WebCore::Console::warn):
426         * page/Console.h:
427
428 2010-10-22  Benjamin Poulain  <benjamin.poulain@nokia.com>
429
430         Reviewed by Simon Hausmann.
431
432         [Qt] All widgets are rendered incorrectly when rendered through a cache
433         https://bugs.webkit.org/show_bug.cgi?id=47767
434
435         When a widget is not available to the RenderTheme, default
436         value are used for the state.
437
438         * platform/qt/RenderThemeQt.cpp:
439         (WebCore::initStyleOption):
440         (WebCore::RenderThemeQt::paintButton):
441         (WebCore::RenderThemeQt::paintTextField):
442         (WebCore::RenderThemeQt::paintMenuList):
443         (WebCore::RenderThemeQt::paintMenuListButton):
444         (WebCore::RenderThemeQt::paintProgressBar):
445         (WebCore::RenderThemeQt::paintSliderTrack):
446
447 2010-10-22  Zoltan Herczeg  <zherczeg@webkit.org>
448
449         Reviewed by Dirk Schulze.
450
451         Moving all bounding box related calculation to RenderSVGResourceFilterPrimitive
452         https://bugs.webkit.org/show_bug.cgi?id=47174
453
454         The primitive sub-region calculation was spread in many
455         files across in WebKit source code, and all of them are moved
456         to RenderSVGResourceFilterPrimitive, where they should be.
457         In this patch the calculation is a static method which will
458         be turned to a real member function in the near future.
459
460         * platform/graphics/filters/FETile.cpp:
461         * platform/graphics/filters/FETile.h:
462         (WebCore::FETile::filterEffectType):
463         * platform/graphics/filters/Filter.h:
464         * platform/graphics/filters/FilterEffect.cpp:
465         * platform/graphics/filters/FilterEffect.h:
466         * rendering/RenderSVGResourceFilter.cpp:
467         (WebCore::RenderSVGResourceFilter::applyResource):
468         * rendering/RenderSVGResourceFilterPrimitive.cpp:
469         (WebCore::RenderSVGResourceFilterPrimitive::determineFilterPrimitiveSubregion):
470         * rendering/RenderSVGResourceFilterPrimitive.h:
471         (WebCore::RenderSVGResourceFilterPrimitive::RenderSVGResourceFilterPrimitive):
472         * svg/graphics/filters/SVGFilter.cpp:
473         * svg/graphics/filters/SVGFilter.h:
474         (WebCore::SVGFilter::mapLocalRectToAbsoluteRect):
475         (WebCore::SVGFilter::targetBoundingBox):
476
477 2010-10-21  Kwang Yul Seo  <skyul@company100.net>
478
479         Reviewed by Kent Tamura.
480
481         [BREWMP] Add a String constructor which takes AECHAR*
482         https://bugs.webkit.org/show_bug.cgi?id=45043
483
484         Implement String(const AECHAR*) constructor.
485
486         * platform/text/brew/StringBrew.cpp: Added.
487         (WTF::String::String):
488
489 2010-10-21  James Simonsen  <simonjam@chromium.org>
490
491         Reviewed by Adam Barth.
492
493         HTMLTreeBuilder's InForeignContent code needs a re-write
494
495         Foreign Content mode was changed significantly by:
496         http://www.w3.org/Bugs/Public/show_bug.cgi?id=10314
497
498         The differences can be seen here:
499         http://html5.org/tools/web-apps-tracker?from=5520&to=5522
500
501         This bug addresses all spec changes in the diff except the select scope
502         changes, which have already been fixed in a separate bug.
503
504         https://bugs.webkit.org/show_bug.cgi?id=46676
505
506         * html/parser/HTMLElementStack.cpp:
507         (WebCore::HTMLNames::isScopeMarker): Add foreign elements to list.
508         * html/parser/HTMLTreeBuilder.cpp:
509         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
510         (WebCore::HTMLTreeBuilder::processDoctypeToken): Switch mode before reprocessing any tokens.
511         (WebCore::HTMLTreeBuilder::processStartTagForInBody): Ditto. Remove secondary insertion mode.
512         (WebCore::HTMLTreeBuilder::processStartTagForInTable): Switch mode before reprocessing any tokens.
513         (WebCore::HTMLTreeBuilder::processStartTag): Ditto. Remove secondary insertion mode.
514         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): Remove foreign var. Use hasTagName() instead of == localName() to fix bug with foreign elements.
515         (WebCore::HTMLTreeBuilder::processEndTagForInTableBody): Switch mode before reprocessing any tokens.
516         (WebCore::HTMLTreeBuilder::processEndTagForInRow): Ditto.
517         (WebCore::HTMLTreeBuilder::processEndTagForInCell): Ditto.
518         (WebCore::HTMLTreeBuilder::processEndTagForInBody): Ditto.
519         (WebCore::HTMLTreeBuilder::processEndTag): Ditto.
520         (WebCore::HTMLTreeBuilder::prepareToReprocessToken): Added.
521         (WebCore::HTMLTreeBuilder::reprocessStartTag): Added.
522         (WebCore::HTMLTreeBuilder::reprocessEndTag): Added.
523         (WebCore::HTMLTreeBuilder::processForeignContentUsingInBodyModeAndResetMode): Added.
524         (WebCore::HTMLTreeBuilder::resetForeignInsertionMode): Added.
525         (WebCore::HTMLTreeBuilder::processComment): Switch mode before reprocessing any tokens.
526         (WebCore::HTMLTreeBuilder::processCharacterBuffer): Ditto.
527         (WebCore::HTMLTreeBuilder::processEndOfFile): Ditto.
528         * html/parser/HTMLTreeBuilder.h: Functions and member for tracking potential switch from InForeignContentMode.
529
530 2010-10-21  Adam Barth  <abarth@webkit.org>
531
532         Reviewed by David Levin.
533
534         Remove Android build system
535         https://bugs.webkit.org/show_bug.cgi?id=48111
536
537         As far as I can tell, these files are not maintained.  They are a
538         mantaince burden on the project.  If folks would like to come out of
539         the woodwork and maintain these files, that's great.  At the moment,
540         they seem like dead weight for the project.
541
542         * Android.mk: Removed.
543
544 2010-10-21  Kwang Yul Seo  <skyul@company100.net>
545
546         Reviewed by James Robinson.
547
548         Make sure skia is not Chromium specific
549         https://bugs.webkit.org/show_bug.cgi?id=39672
550
551         GlyphPageTreeNodeLinux does not depend on Linux or Chromium.
552         Move GlyphPageTreeNodeLinux to platform/graphics/skia and rename it to
553         GlyphPageTreeNodeSkia.cpp so that other ports can use it.
554
555         * WebCore.gyp/WebCore.gyp:
556         * WebCore.gypi:
557         * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Removed.
558         * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Added.
559
560 2010-10-21  Ryosuke Niwa  <rniwa@webkit.org>
561
562         Reviewed by Tony Chang.
563
564         removeFormat needs to be reimplemented
565         https://bugs.webkit.org/show_bug.cgi?id=43017
566
567         Reimplemented execCommand('RemoveFormat', false, null). New implementation removes
568         the same elements removed by Internet Explorer. Because WebKit supports StyleWithCSS
569         we also reset any editing styles to match that of the root editable element
570         while Internet Explorer does not remove any CSS styles.
571
572         New implementation uses ApplyStyleCommand to remove appropriate elements and reset the style.
573         Added new constructor and member variable to ApplyStyleCommand to support mass-removal of elements
574         since it's inefficient to call ApplyStyleCommand on each element we're removing.
575
576         To avoid an infinite loop in pushDownInlineStyleAroundNode when mass-removing, WebKit no longer
577         push down element one level at a time. Instead, we keep a stack of styled elements to be applied,
578         and apply wrap siblings of targetNode's ancestors by all of them at once.
579
580         Tests: editing/execCommand/remove-format-elements.html
581                editing/execCommand/remove-format-multiple-elements.html
582
583         * editing/ApplyStyleCommand.cpp:
584         (WebCore::ApplyStyleCommand::ApplyStyleCommand): Added; this version takes style and a function pointer
585         to a boolean function that determines which element needs to removed, and set m_removeOnly to true.
586         (WebCore::ApplyStyleCommand::doApply): Added support for m_isInlineElementToRemoveFunction.
587         (WebCore::ApplyStyleCommand::applyBlockStyle): Ditto.
588         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): Exits early if m_removeOnly is true.
589         (WebCore::ApplyStyleCommand::isStyledInlineElementToRemove): Added.
590         (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Calls isStyledInlineElementToRemove.
591         (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Ditto.
592         (WebCore::ApplyStyleCommand::removeInlineStyle): Ditto.
593         (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): See above.
594         * editing/ApplyStyleCommand.h:
595         (WebCore::ApplyStyleCommand::create): Added.
596         * editing/RemoveFormatCommand.cpp:
597         (WebCore::isElementForRemoveFormatCommand): Added.
598         (WebCore::RemoveFormatCommand::doApply): Rewritten.
599
600 2010-10-21  Tony Gentilcore  <tonyg@chromium.org>
601
602         Reviewed by Adam Barth.
603
604         Ignore document.write() when it comes from a network task
605         https://bugs.webkit.org/show_bug.cgi?id=47560
606
607         This implements the update to the spec made by:
608         http://www.w3.org/Bugs/Public/show_bug.cgi?id=9767
609
610         It also matches the latest Firefox 4 beta. The notable change is that
611         document.write from a deferred script no longer works. This avoids
612         blowing the patch away.
613
614         * dom/Document.cpp:
615         (WebCore::Document::Document):
616         (WebCore::Document::write):
617         * dom/Document.h:
618         (WebCore::DestructiveWriteCountIncrementer::DestructiveWriteCountIncrementer):
619         (WebCore::Document::ignoreDestructiveWriteCountIncrementer):
620         * dom/ScriptElement.cpp:
621         (WebCore::ScriptElement::insertedIntoDocument):
622         (WebCore::ScriptElementData::ScriptElementData):
623         (WebCore::ScriptElementData::evaluateScript):
624         * dom/ScriptElement.h:
625         * html/parser/HTMLScriptRunner.cpp:
626         (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent):
627
628 2010-10-21  Ryosuke Niwa  <rniwa@webkit.org>
629
630         Unreviewed Leopard build fix attempt.
631
632         Explicitly cast the return value of deg2rad to float.
633
634         * rendering/InlineTextBox.cpp:
635         (WebCore::InlineTextBox::paint):
636
637 2010-10-21  Mihai Parparita  <mihaip@chromium.org>
638
639         Reviewed by James Robinson.
640
641         [Chromium] Fix Chromium Mac build
642         https://bugs.webkit.org/show_bug.cgi?id=48096
643
644         Fix Chromium Mac build after r70225 (Chromium uses Core Text but is not
645         PLATFORM(MAC)).
646
647         * platform/graphics/SimpleFontData.h:
648
649 2010-10-21  Xiaomei Ji  <xji@chromium.org>
650
651         Reviewed by David Levin.
652
653         Performance improvement for FontLinux.
654         https://bugs.webkit.org/show_bug.cgi?id=47019
655         
656         Reduce the number of calls for the normalization function because converting
657         to NFC form is very expensive.
658     
659         Combine space normalization and character mirroring into one text scan.
660
661         Test: platform/chromium/fast/text/font-linux-normalize.html
662
663         * platform/graphics/chromium/FontLinux.cpp:
664         (WebCore::TextRunWalker::TextRunWalker):
665         (WebCore::TextRunWalker::~TextRunWalker):
666         (WebCore::TextRunWalker::getNormalizedTextRun):
667         (WebCore::TextRunWalker::normalizeSpacesAndMirrorChars):
668
669 2010-10-21  David Hyatt  <hyatt@apple.com>
670
671         Reviewed by Darin Adler.
672
673         https://bugs.webkit.org/show_bug.cgi?id=48085
674
675         Make basic vertical text painting work.  This includes the text itself, underlines, overlines, line-throughs and shadows.
676
677         Added fast/blockflow/english-lr-text.html
678
679         * rendering/InlineFlowBox.cpp:
680         (WebCore::InlineFlowBox::paint):
681         * rendering/InlineFlowBox.h:
682         * rendering/InlineTextBox.cpp:
683         (WebCore::InlineTextBox::applyShadowToGraphicsContext):
684         (WebCore::paintTextWithShadows):
685         (WebCore::InlineTextBox::paint):
686         (WebCore::InlineTextBox::paintDecoration):
687         (WebCore::InlineTextBox::paintTextMatchMarker):
688         * rendering/InlineTextBox.h:
689         * rendering/svg/SVGInlineTextBox.cpp:
690         (WebCore::SVGInlineTextBox::paintTextWithShadows):
691
692 2010-10-21  No'am Rosenthal  <noam.rosenthal@nokia.com>
693
694         Reviewed by Simon Hausmann.
695
696         [Qt] When doing rendering through tiling, it seems the tiles are not initialized before rendering
697         https://bugs.webkit.org/show_bug.cgi?id=48070
698
699         No new tests. Auto-tests for Tiled Backing Store should be added, see bug 48082
700
701         * page/Frame.cpp:
702         (WebCore::Frame::tiledBackingStoreBackgroundColor):
703         * page/Frame.h:
704         * platform/graphics/TiledBackingStoreClient.h:
705         * platform/graphics/qt/TileQt.cpp:
706         (WebCore::Tile::updateBackBuffer):
707
708 2010-10-21  Carlos Garcia Campos  <cgarcia@igalia.com>
709
710         Reviewed by Martin Robinson.
711
712         [GTK] Use GCharsetConverter instead of g_iconv in TextCodecGtk
713         https://bugs.webkit.org/show_bug.cgi?id=47896
714
715         It makes error handling easier. Fixes tests:
716          fast/encoding/invalid-multi-byte-over-consumption.html
717          fast/encoding/invalid-xml.html
718          fast/encoding/japanese-encoding-mix.html
719         when building with glib unicode
720
721         * platform/text/gtk/TextCodecGtk.cpp:
722         (WebCore::TextCodecGtk::TextCodecGtk):
723         (WebCore::TextCodecGtk::~TextCodecGtk):
724         (WebCore::TextCodecGtk::createIConvDecoder):
725         (WebCore::TextCodecGtk::createIConvEncoder):
726         (WebCore::TextCodecGtk::decode):
727         (WebCore::TextCodecGtk::encode):
728         * platform/text/gtk/TextCodecGtk.h:
729
730 2010-10-21  Chris Fleizach  <cfleizach@apple.com>
731
732         Reviewed by Beth Dakin.
733
734         AX: contenteditable nodes do not return correct AXSelectedText* attributes
735         https://bugs.webkit.org/show_bug.cgi?id=48080
736
737         The ariaSelectedDOMTextRange() method was not returning the correct values. 
738         The fix is to return a plain text range that represents the current selection.
739
740         Test: platform/mac/accessibility/content-editable-range-properties.html
741
742         * accessibility/AccessibilityObject.h:
743         (WebCore::AccessibilityObject::accessibilityDescription):
744         * accessibility/AccessibilityRenderObject.cpp:
745         (WebCore::AccessibilityRenderObject::ariaSelectedTextRange):
746         (WebCore::AccessibilityRenderObject::selectedText):
747         (WebCore::AccessibilityRenderObject::selectedTextRange):
748         * accessibility/AccessibilityRenderObject.h:
749
750 2010-10-20  Jer Noble  <jer.noble@apple.com>
751
752         Reviewed by Eric Carlson.
753
754         Video -> Canvas doesn't work on Windows
755         https://bugs.webkit.org/show_bug.cgi?id=47996
756         rdar://problem/7884690
757
758         * WebCore.vcproj/QTMovieWin.vcproj: Added QTDecompressionSession.{cpp,h}
759         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
760         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::paint): Create a 
761             QTDecompressionSession if necessary and convert the QTPixelBuffer
762             into a CG-compatible one.
763         * platform/graphics/win/QTDecompressionSession.cpp: Added.
764         * platform/graphics/win/QTDecompressionSession.h: Added.
765         * platform/graphics/win/QTPixelBuffer.cpp:
766         (SetNumberValue): Moved from QTMovieVisualContext.
767         (QTPixelBuffer::createPixelBufferAttributesDictionary): Moved from inside
768             QTMovieVisualContext::createPixelBufferOptionsDictionary().
769         * platform/graphics/win/QTPixelBuffer.h: Moved the Type enum 
770             from QTMovieVisualContext.h.
771
772 2010-10-21  Carlos Garcia Campos  <cgarcia@igalia.com>
773
774         Reviewed by Martin Robinson.
775
776         [GTK] TextBreakIteratorGtk should initialize its internal index to 0
777         https://bugs.webkit.org/show_bug.cgi?id=48065
778
779         It fixes the following tests when using glib unicode:
780           fast/forms/ValidityState-tooLong-input.html
781           fast/forms/ValidityState-tooLong-textarea.html
782           fast/forms/input-appearance-maxlength.html
783           fast/forms/input-implicit-length-limit.html
784           fast/forms/input-maxlength.html
785           fast/forms/textarea-live-pseudo-selectors.html
786           fast/forms/mailto/advanced-get.html
787           fast/forms/mailto/advanced-put.html
788
789         * platform/text/gtk/TextBreakIteratorGtk.cpp:
790         (WebCore::setUpIterator):
791
792 2010-10-21  takano takumi  <takano1@asia.apple.com>
793
794         Reviewed by Dan Bernstein.
795
796         Need to swap glyphs for vertical writing
797         https://bugs.webkit.org/show_bug.cgi?id=46973
798
799         Made changes to pass the writing-mode orientation flag in RenderStyle down to FontPlatformData,
800         and ultimately to CoreText APIs in both font complex path and fast path.
801
802         Tests: fast/text/international/vertical-text-glyph-test.html
803                fast/text/international/vertical-text-metrics-test.html
804
805         * WebCore.exp.in:
806         * WebCore.xcodeproj/project.pbxproj: Added platform/graphics/FontOrientation.h.
807         * css/CSSFontFaceSource.cpp:
808         (WebCore::CSSFontFaceSource::getFontData): Added font orientation parameter to SimpleFontData.
809         * css/CSSStyleSelector.cpp:
810         (WebCore::CSSStyleSelector::applyProperty): Set appropriate font orientation to the font description
811         when writing-mode is being specified.
812         * loader/CachedFont.cpp:
813         (WebCore::CachedFont::platformDataFromCustomData): Made to pass font orientation to FontPlatformData.
814         * loader/CachedFont.h:
815         * platform/graphics/FontCache.cpp: Added font orientation to FontPlatformDataCacheKey
816         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
817         (WebCore::FontPlatformDataCacheKey::operator==):
818         (WebCore::computeHash):
819         (WebCore::FontCache::getCachedFontPlatformData):
820         * platform/graphics/FontDescription.h: Added font orientation support to FontDescription class
821         (WebCore::FontDescription::FontDescription):
822         (WebCore::FontDescription::orientation):
823         (WebCore::FontDescription::setOrientation):
824         (WebCore::FontDescription::operator==):
825         * platform/graphics/FontOrientation.h: Added.
826         * platform/graphics/SimpleFontData.h:
827         * platform/graphics/cairo/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
828         (WebCore::FontCustomPlatformData::fontPlatformData):
829         * platform/graphics/cairo/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
830         * platform/graphics/cocoa/FontPlatformData.h: Added font orientation support to FontPlatformData class
831         (WebCore::FontPlatformData::FontPlatformData):
832         (WebCore::FontPlatformData::orientation):
833         (WebCore::FontPlatformData::hash):
834         (WebCore::FontPlatformData::operator==):
835         * platform/graphics/cocoa/FontPlatformDataCocoa.mm: Added font orientation support
836         (WebCore::FontPlatformData::FontPlatformData):
837         (WebCore::FontPlatformData::operator=):
838         (WebCore::FontPlatformData::allowsLigatures): Don't allow ligatures when the font is vertical orientation.
839         (WebCore::FontPlatformData::description):
840         * platform/graphics/gtk/FontCustomPlatformDataPango.cpp: Changed to pass font orientation to fontPlatformData()
841         (WebCore::FontCustomPlatformData::fontPlatformData):
842         * platform/graphics/haiku/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
843         (WebCore::FontCustomPlatformData::fontPlatformData):
844         * platform/graphics/haiku/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
845         * platform/graphics/mac/FontCacheMac.mm: Added font orientation parameter when creating FontPlatformData object.
846         (WebCore::FontCache::getFontDataForCharacters):
847         (WebCore::FontCache::createFontPlatformData):
848         * platform/graphics/mac/FontCustomPlatformData.cpp: Added font orientation parameter when creating FontPlatformData object.
849         (WebCore::FontCustomPlatformData::fontPlatformData):
850         * platform/graphics/mac/FontCustomPlatformData.h: Changed to pass font orientation parameter to fontPlatformData()
851         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
852         (WebCore::GlyphPage::fill): Changed to use CoreText to extract glyphs when the current font is vertical orientation.
853         CoreText automatically swaps glyphs with vertical variants when the font orientation is vertical.
854         * platform/graphics/mac/SimpleFontDataCoreText.cpp: Added vertical form attribute to the attribute dictionary for a CTLine.
855         (WebCore::SimpleFontData::getCFStringAttributes):
856         * platform/graphics/mac/SimpleFontDataMac.mm:
857         (WebCore::SimpleFontData::platformBoundsForGlyph): Changed to use CoreText (from CG) to support vertical metrics.
858         (WebCore::SimpleFontData::platformWidthForGlyph): Made to use CoreText, instead of wkGetGlyphTransformedAdvances,
859         to get vertical metrics when the font orientation is vertical.
860         * platform/graphics/qt/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
861         * platform/graphics/qt/FontCustomPlatformDataQt.cpp: Changed to pass font orientation to fontPlatformData()
862         (WebCore::FontCustomPlatformData::fontPlatformData):
863         * platform/graphics/skia/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
864         (WebCore::FontCustomPlatformData::fontPlatformData):
865         * platform/graphics/skia/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
866         * platform/graphics/win/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
867         (WebCore::FontCustomPlatformData::fontPlatformData):
868         * platform/graphics/win/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
869         * platform/graphics/win/FontCustomPlatformDataCairo.cpp: Changed to pass font orientation to fontPlatformData()
870         (WebCore::FontCustomPlatformData::fontPlatformData):
871         * platform/graphics/win/FontCustomPlatformDataCairo.h: Changed to pass font orientation to fontPlatformData()
872         * platform/graphics/wince/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
873         (WebCore::FontCustomPlatformData::fontPlatformData):
874         * platform/graphics/wince/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
875         * platform/graphics/wx/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
876         (WebCore::FontCustomPlatformData::fontPlatformData):
877         * platform/graphics/wx/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
878
879 2010-10-21  Pavel Feldman  <pfeldman@chromium.org>
880
881         Reviewed by Yury Semikhatsky.
882
883         Web Inspector: provide resource tree in the Storage panel (behind the flag).
884         https://bugs.webkit.org/show_bug.cgi?id=48069
885
886         * WebCore.gypi:
887         * inspector/Inspector.idl:
888         * inspector/InspectorController.cpp:
889         (WebCore::InspectorController::frameDetachedFromParent):
890         * inspector/InspectorResourceAgent.cpp:
891         (WebCore::buildObjectForDocumentLoader):
892         (WebCore::buildObjectForFrameResource):
893         (WebCore::buildObjectForCachedResource):
894         (WebCore::populateObjectWithFrameResources):
895         (WebCore::InspectorResourceAgent::identifierForInitialRequest):
896         (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
897         (WebCore::buildObjectForFrameTree):
898         (WebCore::InspectorResourceAgent::didCommitLoad):
899         (WebCore::InspectorResourceAgent::frameDetachedFromParent):
900         (WebCore::InspectorResourceAgent::cachedResources):
901         (WebCore::InspectorResourceAgent::resourceContent):
902         * inspector/InspectorResourceAgent.h:
903         * inspector/front-end/Images/frame.png: Added.
904         * inspector/front-end/NetworkPanel.js:
905         (WebInspector.NetworkPanel.prototype.refreshResource):
906         (WebInspector.NetworkPanel.prototype._showResource):
907         * inspector/front-end/Resource.js:
908         (WebInspector.Resource.Type.toString):
909         (WebInspector.Resource.prototype.getContents):
910         * inspector/front-end/ResourceManager.js:
911         (WebInspector.ResourceManager):
912         (WebInspector.ResourceManager.prototype.identifierForInitialRequest):
913         (WebInspector.ResourceManager.prototype._createResource):
914         (WebInspector.ResourceManager.prototype.willSendRequest):
915         (WebInspector.ResourceManager.prototype._appendRedirect):
916         (WebInspector.ResourceManager.prototype.markResourceAsCached):
917         (WebInspector.ResourceManager.prototype.didReceiveResponse):
918         (WebInspector.ResourceManager.prototype._updateResourceWithResponse):
919         (WebInspector.ResourceManager.prototype.didReceiveContentLength):
920         (WebInspector.ResourceManager.prototype.didFinishLoading):
921         (WebInspector.ResourceManager.prototype.didFailLoading):
922         (WebInspector.ResourceManager.prototype.didLoadResourceFromMemoryCache):
923         (WebInspector.ResourceManager.prototype._updateResourceWithCachedResource):
924         (WebInspector.ResourceManager.prototype.setOverrideContent):
925         (WebInspector.ResourceManager.prototype.didCommitLoadForFrame):
926         (WebInspector.ResourceManager.prototype.frameDetachedFromParent):
927         (WebInspector.ResourceManager.prototype._clearResources):
928         (WebInspector.ResourceManager.prototype.didCreateWebSocket):
929         (WebInspector.ResourceManager.prototype.willSendWebSocketHandshakeRequest):
930         (WebInspector.ResourceManager.prototype.didReceiveWebSocketHandshakeResponse):
931         (WebInspector.ResourceManager.prototype.didCloseWebSocket):
932         (WebInspector.ResourceManager.prototype._processCachedResources):
933         (WebInspector.ResourceManager.prototype._appendFramesRecursively.comparator):
934         (WebInspector.ResourceManager.prototype._appendFramesRecursively):
935         (WebInspector.ResourceManager.createResourceView):
936         (WebInspector.ResourceManager.resourceViewTypeMatchesResource):
937         (WebInspector.ResourceManager.resourceViewForResource):
938         (WebInspector.ResourceManager.getContents):
939         * inspector/front-end/ResourcesPanel.js:
940         (WebInspector.ResourcesPanel.prototype.get searchableViews):
941         (WebInspector.ResourcesPanel.prototype.addMessageToResource):
942         (WebInspector.ResourcesPanel.prototype._recreateViewForResourceIfNeeded):
943         (WebInspector.ResourcesPanel.prototype.showResource):
944         (WebInspector.ResourcesPanel.prototype.sourceFrameForResource):
945         * inspector/front-end/ScriptsPanel.js:
946         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
947         * inspector/front-end/StoragePanel.js:
948         (WebInspector.StoragePanel):
949         (WebInspector.StoragePanel.prototype.addFrame):
950         (WebInspector.StoragePanel.prototype.removeFrame):
951         (WebInspector.StoragePanel.prototype.addFrameResource):
952         (WebInspector.StoragePanel.prototype.removeFrameResources):
953         (WebInspector.StoragePanel.prototype.showResource):
954         (WebInspector.BaseStorageTreeElement.prototype.onattach):
955         (WebInspector.BaseStorageTreeElement.prototype.onreveal):
956         (WebInspector.FrameTreeElement):
957         (WebInspector.FrameTreeElement.prototype.onselect):
958         (WebInspector.FrameResourceTreeElement):
959         (WebInspector.FrameResourceTreeElement.prototype.onselect):
960         (WebInspector.FrameResourceTreeElement.prototype.onattach):
961         * inspector/front-end/WebKit.qrc:
962         * inspector/front-end/inspector.css:
963         (.frame-storage-tree-item .icon):
964         (.storage.panel .sidebar.outline-disclosure > ol):
965         (.resources-category-images .image-resource-icon-preview):
966         (.children.small .resources-category-images .image-resource-icon-preview):
967         * inspector/front-end/inspector.js:
968
969 2010-10-21  David Kilzer  <ddkilzer@apple.com>
970
971         <http://webkit.org/b/48047> Fix warnings found by check-Xcode-source-file-types
972
973         Reviewed by Adam Roben.
974
975         Fixes the following warning:
976
977             WARNING: Unknown file type 'sourcecode' for file 'CSSPrimitiveValue.idl'.
978             1 issues found for WebCore/WebCore.xcodeproj/project.pbxproj.
979
980         * WebCore.xcodeproj/project.pbxproj: Removed explicit file type
981         for CSSPrimitiveValue.idl to make it match other IDL files.
982
983 2010-10-21  Yury Semikhatsky  <yurys@chromium.org>
984
985         Unreviewed. Revert r70232. Chromium compilation failure.
986
987 2010-10-21  Yury Semikhatsky  <yurys@chromium.org>
988
989         Unreviewed. Revert r70233. Too many failures.
990
991 2010-10-21  Yury Semikhatsky  <yurys@chromium.org>
992
993         Unreviewed. Remove references to deleted headers from WebCore.pro
994
995         * WebCore.pro:
996
997 2010-10-21  Yury Semikhatsky  <yurys@chromium.org>
998
999         Reviewed by Pavel Feldman.
1000
1001         Web Inspector: decouple ScriptArguments from ScriptCallStack
1002         https://bugs.webkit.org/show_bug.cgi?id=48058
1003
1004         ScriptCallFrame and ScriptCallStack are now the same for both JSC and V8.
1005         The factory functions that allow to create ScriptCallStack from VM-specific
1006         objects are defined in ScriptCallStackFactory.cpp.
1007
1008         ScriptArguments class is used for passing arguments from JS code to the native
1009         part.
1010
1011         No new tests. This refactoring is covered with existing Console tests.
1012
1013         * WebCore.gypi:
1014         * WebCore.xcodeproj/project.pbxproj:
1015         * bindings/js/ScriptCallFrame.cpp: Removed.
1016         * bindings/js/ScriptCallFrame.h: Removed.
1017         * bindings/js/ScriptCallStack.cpp: Removed.
1018         * bindings/js/ScriptCallStack.h: Removed.
1019         * bindings/js/ScriptCallStackFactory.cpp: Added.
1020         (WebCore::createScriptCallStack):
1021         (WebCore::createScriptArguments):
1022         (WebCore::ScriptCallStack::stackTrace):
1023         * bindings/js/ScriptCallStackFactory.h: Added.
1024         * bindings/js/ScriptState.h:
1025         (WebCore::ScriptStateProtectedPtr::get):
1026         * bindings/scripts/CodeGeneratorJS.pm:
1027         * bindings/scripts/CodeGeneratorV8.pm:
1028         * bindings/v8/ScriptCallFrame.cpp: Removed.
1029         * bindings/v8/ScriptCallFrame.h: Removed.
1030         * bindings/v8/ScriptCallStack.cpp: Removed.
1031         * bindings/v8/ScriptCallStack.h: Removed.
1032         * bindings/v8/ScriptCallStackFactory.cpp: Added.
1033         (WebCore::toScriptCallFrame):
1034         (WebCore::toScriptCallFramesVector):
1035         (WebCore::createScriptCallStack):
1036         (WebCore::createScriptArguments):
1037         (WebCore::ScriptCallStack::stackTrace):
1038         * bindings/v8/ScriptCallStackFactory.h: Added.
1039         * bindings/v8/ScriptController.cpp:
1040         (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions):
1041         * bindings/v8/ScriptState.h:
1042         (WebCore::ScriptStateProtectedPtr::get):
1043         * bindings/v8/V8ConsoleMessage.cpp:
1044         (WebCore::V8ConsoleMessage::handler):
1045         (WebCore::V8ConsoleMessage::dispatchNow):
1046         * bindings/v8/V8ConsoleMessage.h:
1047         * bindings/v8/custom/V8ConsoleCustom.cpp:
1048         (WebCore::V8Console::traceCallback):
1049         (WebCore::V8Console::assertCallback):
1050         * inspector/ConsoleMessage.cpp:
1051         (WebCore::ConsoleMessage::ConsoleMessage):
1052         (WebCore::ConsoleMessage::addToFrontend):
1053         (WebCore::ConsoleMessage::updateRepeatCountInConsole):
1054         (WebCore::ConsoleMessage::isEqual):
1055         * inspector/ConsoleMessage.h:
1056         * inspector/InspectorController.cpp:
1057         (WebCore::InspectorController::addMessageToConsole):
1058         (WebCore::InspectorController::startGroup):
1059         * inspector/InspectorController.h:
1060         * inspector/ScriptArguments.cpp: Added.
1061         (WebCore::ScriptArguments::ScriptArguments):
1062         (WebCore::ScriptArguments::~ScriptArguments):
1063         (WebCore::ScriptArguments::argumentAt):
1064         (WebCore::ScriptArguments::globalState):
1065         (WebCore::ScriptArguments::getFirstArgumentAsString):
1066         (WebCore::ScriptArguments::isEqual):
1067         * inspector/ScriptArguments.h: Added.
1068         (WebCore::ScriptArguments::argumentCount):
1069         * inspector/ScriptCallFrame.cpp: Added.
1070         (WebCore::ScriptCallFrame::ScriptCallFrame):
1071         (WebCore::ScriptCallFrame::~ScriptCallFrame):
1072         (WebCore::ScriptCallFrame::isEqual):
1073         (WebCore::ScriptCallFrame::buildInspectorObject):
1074         * inspector/ScriptCallFrame.h: Added.
1075         (WebCore::ScriptCallFrame::functionName):
1076         (WebCore::ScriptCallFrame::sourceURL):
1077         (WebCore::ScriptCallFrame::lineNumber):
1078         * inspector/ScriptCallStack.cpp: Added.
1079         (WebCore::ScriptCallStack::ScriptCallStack):
1080         (WebCore::ScriptCallStack::~ScriptCallStack):
1081         (WebCore::ScriptCallStack::at):
1082         (WebCore::ScriptCallStack::size):
1083         (WebCore::ScriptCallStack::isEqual):
1084         (WebCore::ScriptCallStack::buildInspectorObject):
1085         * inspector/ScriptCallStack.h: Added.
1086         * page/Console.cpp:
1087         (WebCore::Console::addMessage):
1088         (WebCore::Console::debug):
1089         (WebCore::Console::error):
1090         (WebCore::Console::info):
1091         (WebCore::Console::log):
1092         (WebCore::Console::dir):
1093         (WebCore::Console::dirxml):
1094         (WebCore::Console::trace):
1095         (WebCore::Console::assertCondition):
1096         (WebCore::Console::count):
1097         (WebCore::Console::markTimeline):
1098         (WebCore::Console::profile):
1099         (WebCore::Console::profileEnd):
1100         (WebCore::Console::timeEnd):
1101         (WebCore::Console::group):
1102         (WebCore::Console::groupCollapsed):
1103         (WebCore::Console::shouldCaptureFullStackTrace):
1104         (WebCore::Console::warn):
1105         * page/Console.h:
1106
1107 2010-10-21  Pavel Feldman  <pfeldman@chromium.org>
1108
1109         Reviewed by Yury Semikhatsky.
1110
1111         Chromium: use dedicated event listener type in EventListenerWrapper.
1112         https://bugs.webkit.org/show_bug.cgi?id=48059
1113
1114         This change introduces new EventListener::Type NativeEventListenerType.
1115         This new type is intended to be used by any code that wants to protect
1116         itself from unsafe casts to particular event listener implementations.
1117
1118         * dom/EventListener.h:
1119
1120 2010-10-21  Sheriff Bot  <webkit.review.bot@gmail.com>
1121
1122         Unreviewed, rolling out r70225.
1123         http://trac.webkit.org/changeset/70225
1124         https://bugs.webkit.org/show_bug.cgi?id=48061
1125
1126         Build breakage on Leopard. (Requested by pfeldman on #webkit).
1127
1128         * WebCore.exp.in:
1129         * WebCore.xcodeproj/project.pbxproj:
1130         * css/CSSFontFaceSource.cpp:
1131         (WebCore::CSSFontFaceSource::getFontData):
1132         * css/CSSStyleSelector.cpp:
1133         (WebCore::CSSStyleSelector::applyProperty):
1134         * loader/CachedFont.cpp:
1135         (WebCore::CachedFont::platformDataFromCustomData):
1136         * loader/CachedFont.h:
1137         * platform/graphics/FontCache.cpp:
1138         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
1139         (WebCore::FontPlatformDataCacheKey::operator==):
1140         (WebCore::computeHash):
1141         (WebCore::FontCache::getCachedFontPlatformData):
1142         * platform/graphics/FontDescription.h:
1143         (WebCore::FontDescription::FontDescription):
1144         (WebCore::FontDescription::operator==):
1145         * platform/graphics/FontOrientation.h: Removed.
1146         * platform/graphics/SimpleFontData.h:
1147         * platform/graphics/cairo/FontCustomPlatformData.cpp:
1148         (WebCore::FontCustomPlatformData::fontPlatformData):
1149         * platform/graphics/cairo/FontCustomPlatformData.h:
1150         * platform/graphics/cocoa/FontPlatformData.h:
1151         (WebCore::FontPlatformData::FontPlatformData):
1152         (WebCore::FontPlatformData::hash):
1153         (WebCore::FontPlatformData::operator==):
1154         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
1155         (WebCore::FontPlatformData::FontPlatformData):
1156         (WebCore::FontPlatformData::operator=):
1157         (WebCore::FontPlatformData::allowsLigatures):
1158         (WebCore::FontPlatformData::description):
1159         * platform/graphics/gtk/FontCustomPlatformDataPango.cpp:
1160         (WebCore::FontCustomPlatformData::fontPlatformData):
1161         * platform/graphics/haiku/FontCustomPlatformData.cpp:
1162         (WebCore::FontCustomPlatformData::fontPlatformData):
1163         * platform/graphics/haiku/FontCustomPlatformData.h:
1164         * platform/graphics/mac/FontCacheMac.mm:
1165         (WebCore::FontCache::getFontDataForCharacters):
1166         (WebCore::FontCache::createFontPlatformData):
1167         * platform/graphics/mac/FontCustomPlatformData.cpp:
1168         (WebCore::FontCustomPlatformData::fontPlatformData):
1169         * platform/graphics/mac/FontCustomPlatformData.h:
1170         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
1171         (WebCore::GlyphPage::fill):
1172         * platform/graphics/mac/SimpleFontDataCoreText.cpp:
1173         (WebCore::SimpleFontData::getCFStringAttributes):
1174         * platform/graphics/mac/SimpleFontDataMac.mm:
1175         (WebCore::SimpleFontData::platformBoundsForGlyph):
1176         (WebCore::SimpleFontData::platformWidthForGlyph):
1177         * platform/graphics/qt/FontCustomPlatformData.h:
1178         * platform/graphics/qt/FontCustomPlatformDataQt.cpp:
1179         (WebCore::FontCustomPlatformData::fontPlatformData):
1180         * platform/graphics/skia/FontCustomPlatformData.cpp:
1181         (WebCore::FontCustomPlatformData::fontPlatformData):
1182         * platform/graphics/skia/FontCustomPlatformData.h:
1183         * platform/graphics/win/FontCustomPlatformData.cpp:
1184         (WebCore::FontCustomPlatformData::fontPlatformData):
1185         * platform/graphics/win/FontCustomPlatformData.h:
1186         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
1187         (WebCore::FontCustomPlatformData::fontPlatformData):
1188         * platform/graphics/win/FontCustomPlatformDataCairo.h:
1189         * platform/graphics/wince/FontCustomPlatformData.cpp:
1190         (WebCore::FontCustomPlatformData::fontPlatformData):
1191         * platform/graphics/wince/FontCustomPlatformData.h:
1192         * platform/graphics/wx/FontCustomPlatformData.cpp:
1193         (WebCore::FontCustomPlatformData::fontPlatformData):
1194         * platform/graphics/wx/FontCustomPlatformData.h:
1195
1196 2010-10-21  Carlos Garcia Campos  <cgarcia@igalia.com>
1197
1198         Reviewed by Martin Robinson.
1199
1200         [GTK] Tests LayoutTests/fast/encoding/utf-32* fail when using glib unicode
1201         https://bugs.webkit.org/show_bug.cgi?id=47805
1202
1203         Register UTF-32 encodings in TextCodecGtk.
1204
1205         * platform/text/gtk/TextCodecGtk.cpp:
1206         (WebCore::TextCodecGtk::registerBaseEncodingNames):
1207         (WebCore::TextCodecGtk::registerBaseCodecs):
1208
1209 2010-10-21  Luiz Agostini  <luiz.agostini@openbossa.org>
1210
1211         Reviewed by Darin Adler.
1212
1213         Adding MediaQueryListListener binding test cases
1214         https://bugs.webkit.org/show_bug.cgi?id=48028
1215
1216         MediaQueryListListener type will need special handling of the code generators. Adding the test cases.
1217
1218         * bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.cpp: Added.
1219         (WebDOMTestMediaQueryListListener::WebDOMTestMediaQueryListListenerPrivate::WebDOMTestMediaQueryListListenerPrivate):
1220         (WebDOMTestMediaQueryListListener::WebDOMTestMediaQueryListListener):
1221         (WebDOMTestMediaQueryListListener::operator=):
1222         (WebDOMTestMediaQueryListListener::impl):
1223         (WebDOMTestMediaQueryListListener::~WebDOMTestMediaQueryListListener):
1224         (WebDOMTestMediaQueryListListener::method):
1225         (toWebCore):
1226         (toWebKit):
1227         * bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.h: Added.
1228         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp: Added.
1229         (WebKit::kit):
1230         (webkit_dom_test_media_query_list_listener_method):
1231         (WebKit::core):
1232         (webkit_dom_test_media_query_list_listener_finalize):
1233         (webkit_dom_test_media_query_list_listener_set_property):
1234         (webkit_dom_test_media_query_list_listener_get_property):
1235         (webkit_dom_test_media_query_list_listener_constructed):
1236         (webkit_dom_test_media_query_list_listener_class_init):
1237         (webkit_dom_test_media_query_list_listener_init):
1238         (WebKit::wrapTestMediaQueryListListener):
1239         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h: Added.
1240         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h: Added.
1241         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp: Added.
1242         (WebCore::JSTestMediaQueryListListenerConstructor::classInfo):
1243         (WebCore::JSTestMediaQueryListListenerConstructor::createStructure):
1244         (WebCore::JSTestMediaQueryListListenerConstructor::JSTestMediaQueryListListenerConstructor):
1245         (WebCore::JSTestMediaQueryListListenerConstructor::getOwnPropertySlot):
1246         (WebCore::JSTestMediaQueryListListenerConstructor::getOwnPropertyDescriptor):
1247         (WebCore::JSTestMediaQueryListListenerPrototype::self):
1248         (WebCore::JSTestMediaQueryListListenerPrototype::getOwnPropertySlot):
1249         (WebCore::JSTestMediaQueryListListenerPrototype::getOwnPropertyDescriptor):
1250         (WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
1251         (WebCore::JSTestMediaQueryListListener::~JSTestMediaQueryListListener):
1252         (WebCore::JSTestMediaQueryListListener::createPrototype):
1253         (WebCore::JSTestMediaQueryListListener::getOwnPropertySlot):
1254         (WebCore::JSTestMediaQueryListListener::getOwnPropertyDescriptor):
1255         (WebCore::jsTestMediaQueryListListenerConstructor):
1256         (WebCore::JSTestMediaQueryListListener::getConstructor):
1257         (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
1258         (WebCore::toJS):
1259         (WebCore::toTestMediaQueryListListener):
1260         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h: Added.
1261         (WebCore::JSTestMediaQueryListListener::classInfo):
1262         (WebCore::JSTestMediaQueryListListener::createStructure):
1263         (WebCore::JSTestMediaQueryListListener::impl):
1264         (WebCore::JSTestMediaQueryListListenerPrototype::classInfo):
1265         (WebCore::JSTestMediaQueryListListenerPrototype::createStructure):
1266         (WebCore::JSTestMediaQueryListListenerPrototype::JSTestMediaQueryListListenerPrototype):
1267         * bindings/scripts/test/ObjC/DOMTestMediaQueryListListener.h: Added.
1268         * bindings/scripts/test/ObjC/DOMTestMediaQueryListListener.mm: Added.
1269         (-[DOMTestMediaQueryListListener dealloc]):
1270         (-[DOMTestMediaQueryListListener finalize]):
1271         (-[DOMTestMediaQueryListListener method:]):
1272         (core):
1273         (kit):
1274         * bindings/scripts/test/ObjC/DOMTestMediaQueryListListenerInternal.h: Added.
1275         * bindings/scripts/test/TestMediaQueryListListener.idl: Added.
1276         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp: Added.
1277         (WebCore::TestMediaQueryListListenerInternal::V8_USE):
1278         (WebCore::TestMediaQueryListListenerInternal::methodCallback):
1279         (WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
1280         (WebCore::V8TestMediaQueryListListener::GetRawTemplate):
1281         (WebCore::V8TestMediaQueryListListener::GetTemplate):
1282         (WebCore::V8TestMediaQueryListListener::HasInstance):
1283         (WebCore::V8TestMediaQueryListListener::wrapSlow):
1284         (WebCore::V8TestMediaQueryListListener::derefObject):
1285         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h: Added.
1286         (WebCore::V8TestMediaQueryListListener::toNative):
1287         (WebCore::V8TestMediaQueryListListener::wrap):
1288         (WebCore::toV8):
1289
1290 2010-10-21  takano takumi  <takano1@asia.apple.com>
1291
1292         Reviewed by Dan Bernstein.
1293
1294         Need to swap glyphs for vertical writing
1295         https://bugs.webkit.org/show_bug.cgi?id=46973
1296
1297         Made changes to pass the writing-mode orientation flag in RenderStyle down to FontPlatformData,
1298         and ultimately to CoreText APIs in both font complex path and fast path.
1299
1300         Tests: fast/text/international/vertical-text-glyph-test.html
1301                fast/text/international/vertical-text-metrics-test.html
1302
1303         * WebCore.exp.in:
1304         * WebCore.xcodeproj/project.pbxproj: Added platform/graphics/FontOrientation.h.
1305         * css/CSSFontFaceSource.cpp:
1306         (WebCore::CSSFontFaceSource::getFontData): Added font orientation parameter to SimpleFontData.
1307         * css/CSSStyleSelector.cpp:
1308         (WebCore::CSSStyleSelector::applyProperty): Set appropriate font orientation to the font description
1309         when writing-mode is being specified.
1310         * loader/CachedFont.cpp:
1311         (WebCore::CachedFont::platformDataFromCustomData): Made to pass font orientation to FontPlatformData.
1312         * loader/CachedFont.h:
1313         * platform/graphics/FontCache.cpp: Added font orientation to FontPlatformDataCacheKey
1314         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
1315         (WebCore::FontPlatformDataCacheKey::operator==):
1316         (WebCore::computeHash):
1317         (WebCore::FontCache::getCachedFontPlatformData):
1318         * platform/graphics/FontDescription.h: Added font orientation support to FontDescription class
1319         (WebCore::FontDescription::FontDescription):
1320         (WebCore::FontDescription::orientation):
1321         (WebCore::FontDescription::setOrientation):
1322         (WebCore::FontDescription::operator==):
1323         * platform/graphics/FontOrientation.h: Added.
1324         * platform/graphics/SimpleFontData.h:
1325         * platform/graphics/cairo/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
1326         (WebCore::FontCustomPlatformData::fontPlatformData):
1327         * platform/graphics/cairo/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
1328         * platform/graphics/cocoa/FontPlatformData.h: Added font orientation support to FontPlatformData class
1329         (WebCore::FontPlatformData::FontPlatformData):
1330         (WebCore::FontPlatformData::orientation):
1331         (WebCore::FontPlatformData::hash):
1332         (WebCore::FontPlatformData::operator==):
1333         * platform/graphics/cocoa/FontPlatformDataCocoa.mm: Added font orientation support
1334         (WebCore::FontPlatformData::FontPlatformData):
1335         (WebCore::FontPlatformData::operator=):
1336         (WebCore::FontPlatformData::allowsLigatures): Don't allow ligatures when the font is vertical orientation.
1337         (WebCore::FontPlatformData::description):
1338         * platform/graphics/gtk/FontCustomPlatformDataPango.cpp: Changed to pass font orientation to fontPlatformData()
1339         (WebCore::FontCustomPlatformData::fontPlatformData):
1340         * platform/graphics/haiku/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
1341         (WebCore::FontCustomPlatformData::fontPlatformData):
1342         * platform/graphics/haiku/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
1343         * platform/graphics/mac/FontCacheMac.mm: Added font orientation parameter when creating FontPlatformData object.
1344         (WebCore::FontCache::getFontDataForCharacters):
1345         (WebCore::FontCache::createFontPlatformData):
1346         * platform/graphics/mac/FontCustomPlatformData.cpp: Added font orientation parameter when creating FontPlatformData object.
1347         (WebCore::FontCustomPlatformData::fontPlatformData):
1348         * platform/graphics/mac/FontCustomPlatformData.h: Changed to pass font orientation parameter to fontPlatformData()
1349         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
1350         (WebCore::GlyphPage::fill): Changed to use CoreText to extract glyphs when the current font is vertical orientation.
1351         CoreText automatically swaps glyphs with vertical variants when the font orientation is vertical.
1352         * platform/graphics/mac/SimpleFontDataCoreText.cpp: Added vertical form attribute to the attribute dictionary for a CTLine.
1353         (WebCore::SimpleFontData::getCFStringAttributes):
1354         * platform/graphics/mac/SimpleFontDataMac.mm:
1355         (WebCore::SimpleFontData::platformBoundsForGlyph): Changed to use CoreText (from CG) to support vertical metrics.
1356         (WebCore::SimpleFontData::platformWidthForGlyph): Made to use CoreText, instead of wkGetGlyphTransformedAdvances,
1357         to get vertical metrics when the font orientation is vertical.
1358         * platform/graphics/qt/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
1359         * platform/graphics/qt/FontCustomPlatformDataQt.cpp: Changed to pass font orientation to fontPlatformData()
1360         (WebCore::FontCustomPlatformData::fontPlatformData):
1361         * platform/graphics/skia/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
1362         (WebCore::FontCustomPlatformData::fontPlatformData):
1363         * platform/graphics/skia/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
1364         * platform/graphics/win/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
1365         (WebCore::FontCustomPlatformData::fontPlatformData):
1366         * platform/graphics/win/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
1367         * platform/graphics/win/FontCustomPlatformDataCairo.cpp: Changed to pass font orientation to fontPlatformData()
1368         (WebCore::FontCustomPlatformData::fontPlatformData):
1369         * platform/graphics/win/FontCustomPlatformDataCairo.h: Changed to pass font orientation to fontPlatformData()
1370         * platform/graphics/wince/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
1371         (WebCore::FontCustomPlatformData::fontPlatformData):
1372         * platform/graphics/wince/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
1373         * platform/graphics/wx/FontCustomPlatformData.cpp: Changed to pass font orientation to fontPlatformData()
1374         (WebCore::FontCustomPlatformData::fontPlatformData):
1375         * platform/graphics/wx/FontCustomPlatformData.h: Changed to pass font orientation to fontPlatformData()
1376
1377 2010-10-20  Nikolas Zimmermann  <nzimmermann@rim.com>
1378
1379         Reviewed by Dirk Schulze.
1380
1381         Redesign SVGAnimatedProperty concept to share "POD type wrappers" between all bindings (-> add ObjC SVG bindings)
1382         https://bugs.webkit.org/show_bug.cgi?id=47905
1383
1384         Tests: svg/dom/SVGLengthList-appendItem.xhtml
1385                svg/dom/SVGLengthList-basics.xhtml
1386                svg/dom/SVGLengthList-getItem.xhtml
1387                svg/dom/SVGLengthList-initialize.xhtml
1388                svg/dom/SVGLengthList-insertItemBefore.xhtml
1389                svg/dom/SVGLengthList-removeItem.xhtml
1390                svg/dom/SVGLengthList-replaceItem.xhtml
1391                svg/dom/SVGLengthList-xml-dom-modifications.xhtml
1392
1393         Introduce a more lightweight, less intrusive way to expose SVGAnimated* DOM bindings.
1394
1395         Concrete example:
1396         The SVG DOM defines a 'SVGAnimatedLength' object, that's used to represent the x / y / width / height attributes of a 'SVGRectElement'.
1397         Each 'SVGAnimatedLength' object exposes a baseVal (markup defined attribute value) and an animVal (reflects the current state during animations),
1398         both of type 'SVGLength'. These objects are all _live_. That means you can do:
1399         var foobar = rect.x.baseVal; foobar.value += 150;
1400
1401         If we'd implement the SVG DOM straightforward, we'd have to store a refcounted SVGAnimatedLength object, containing two refcounted SVGLength objects
1402         in SVGRectElement, for each of the x/y/width/height attributes. Our solution, to reduce memory footprint and increase performance is to store
1403         SVGLength stack-allocated, non refcounted types in SVGRectElement for x/y/width/height, and don't implement the SVGAnimatedLength object at all.
1404
1405         In the past the JS bindings had to expose wrappers for SVGAnimatedLength on their own, and wrap each SVGLength object in an object called JSSVGPODTypeWrapper<SVGLength>.
1406         When JS changed the 'value' of the 'SVGLength', we constructed a copy of the SVGLength object, modified it, and called rectElement->setXBaseValue(newLength).
1407         This is not efficient at all, as we have to construct several copies of the SVGLength object, utilize callbacks to propagate the value changes in the SVG DOM.
1408         Furthermore, all bindings had to expose a similar concept, otherwhise SVG DOM wouldn't work. Up until now, only JSC and V8 bindings were available, that worked properly.
1409
1410         The new SVGAnimatedProperty concept removes the need for JSSVGPODTypeWrapper (and friends like JSSVGContextCache, that associated a SVGLength with its SVGRectElement).
1411         Instead a solution is offered, that all bindings can use simultaneously, without adding new types or special concepts like JSSVGPODTypeWrapper.
1412
1413         It works like this:
1414         A new refcounted SVGAnimatedProperty<PropertyType> template class is available, that stores a QualifiedName to associate the SVG DOM property with a XML DOM attribute.
1415         It also stores a RefPtr to the SVGElement that created it.
1416         
1417         In SVGRectElement we still store SVGLength m_x/m_y/m_width/m_height members, and offer a new "xAnimated()" method which looks up or creates a SVGAnimatedProperty<SVGLength>
1418         object. The JS/V8/ObjC bindings call this method whenever someone requests "rect.x/y/width/height", and a new wrapper is created, and stored in a HashMap.
1419
1420         The SVGAnimatedProperty<PropertyType> is a base class for SVGAnimatedPropertyTearOff and SVGAnimatedListPropertyTearOff, the latter is used for all types of lists (SVGLengthList).
1421         SVGAnimatedProperty contains two methods used in the bindings: SVGProperty* baseVal and SVGProperty* animVal. SVGProperty is a base class for SVGPropertyTearOff and
1422         SVGListPropertyTearOff. Upon invocation of the baseVal/animVal methods a new SVG(List)PropertyTearOff object is created and stored in a RefPtr.
1423         The SVGPropertyTearOff objects stores a _reference_ to the type it wraps. Concrete example:
1424         When calling rect.x, a SVGAnimatedPropertyTearOff<SVGLength> is created, that stores a pointer to the SVGRectElement, and a SVGNames::xAttr.
1425         When calling rect.x.baseVal, a SVGPropertyTearOf<SVGLength> is created, that stores a reference to the "m_x" member variable of the SVGRectElement.
1426         Any changes applied to the SVGLength object, through the wrapper, are immediately live, as no copies are involved anymore, nor the need to fire any callback methods.
1427         This is the key concept of the new tear offs, no copies, no callbacks, no virtual methods (except one, needed for lists, but it's a detail).
1428
1429         The SVGAnimatedListPropertyTearOff and SVGListPropertyTearOff work the same, but for SVG*List objects. The whole SVG*List API is _removed_ from the SVG DOM classes
1430         like SVGLengthList. It now inherits from Vector<SVGLength>, where it used to store a Vector<RefPtr<SVGListItem<SVGLength> > >. The SVGList API (insertItemBefore, appendItem, etc.)
1431         is exposed through SVGListPropertyTearOff, and there's no need anymore for SVGLengthList to deal with it at all.
1432         SVGLengthList is live just like most other SVG DOM object. Concrete example:
1433         var item0 = text.x.baseVal.getItem(0); item0.value += 150;
1434
1435         Previously we chose to store a refcounted SVGListItem object, which wrapped the SVGLength object, to achieve liveness. We could change a single list item from DOM
1436         w/o copying the whole list. The drawback is that a simple type likeSVGLengthList, was heavy to store, as it contained a list of RefPtrs around a wrapper object
1437         around the real object 'SVGLength'. This complexity is completly gone.
1438
1439         The SVGListPropertyTearOff<SVGLengthList> stores a reference to the SVGLengthList object (eg. SVGTextElement::m_x) and maintains a list of SVGPropertyTearOff<SVGLength>
1440         wrappers, that are created when necessary (getItem(2), will create a wrapper around the third list item), and cached. These SVGPropertyTearOff<SVGLength> objects
1441         store references to the SVGLength object _in the SVGLengthList_. One has to be extra carefully, to keep those lists synchronized.
1442         The SVGLengthList API is fully implemented for the first time, including moving items between lists, and is extensively tested with 8 new testcases.
1443
1444         This patch only changed SVGLength/SVGLengthList to the new concept. All other types remain using the old DeprecatedSVGAnimatedProperty* concept.
1445         This will change in follow-up patches.
1446
1447         * GNUmakefile.am: Add new files from svg/properties to build.
1448         * WebCore.gypi: Ditto.
1449         * WebCore.pro: Ditto.
1450         * WebCore.vcproj/WebCore.vcproj: Ditto.
1451         * WebCore.xcodeproj/project.pbxproj: Ditto.
1452         * bindings/js/JSSVGLengthCustom.cpp: Adapt to context cache removal for SVGLength.
1453         (WebCore::JSSVGLength::value):
1454         (WebCore::JSSVGLength::convertToSpecifiedUnits):
1455         * bindings/scripts/CodeGenerator.pm: Add new isSVGNewStyleAnimatedProperty() helper method, return true for "SVGAnimatedLength" and "SVGAnimatedLengthList".
1456         * bindings/scripts/CodeGeneratorJS.pm: Generate new style SVG JS bindings, that don't need JSSVGContextCache / JSSVGPODTypeWrapper.
1457         * bindings/scripts/CodeGeneratorObjC.pm: Ditto. (+ Finally expose a working set of SVG DOM API for Objective C).
1458         * bindings/scripts/CodeGeneratorV8.pm: Ditto.
1459         * bindings/v8/custom/V8SVGLengthCustom.cpp: Adapt to context cache removal for SVGLength.
1460         (WebCore::V8SVGLength::valueAccessorGetter):
1461         (WebCore::V8SVGLength::convertToSpecifiedUnitsCallback):
1462         * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
1463         (WebCore::extractFloatValuesFromSVGLengthList): SVGLengthList is a POD type now, passed as const reference.
1464         * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove handling for SVGLength/SVGLengthList, those are converted to the new SVGAnimatedProperty design now.
1465         * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
1466         * svg/SVGAnimatedLength.h: Added.
1467         * svg/SVGAnimatedLength.idl: Mark as [SVGAnimatedProperty].
1468         * svg/SVGAnimatedLengthList.h: Added.
1469         * svg/SVGAnimatedLengthList.idl: Mark as [SVGAnimatedProperty].
1470         * svg/SVGCircleElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ until the transition to the new concept is finished.
1471         * svg/SVGCursorElement.h: Ditto.
1472         * svg/SVGEllipseElement.h: Ditto.
1473         * svg/SVGFilterElement.h: Ditto.
1474         * svg/SVGFilterPrimitiveStandardAttributes.h: Ditto.
1475         * svg/SVGForeignObjectElement.h: Ditto.
1476         * svg/SVGImageElement.h: Ditto.
1477         * svg/SVGLength.idl: Mark as [SVGProperty].
1478         * svg/SVGLengthList.cpp: Use Vector API (appendItem -> append). No need to ever use the SVGList API internally. SVGLengthList is a Vector<SVGLength> now.
1479         (WebCore::SVGLengthList::parse): 
1480         (WebCore::SVGLengthList::valueAsString):
1481         * svg/SVGLengthList.h: Inherit from Vector<SVGLength> - not from the SVGList base class. It's a simple, non-refcounted POD type now.
1482         (WebCore::SVGLengthList::SVGLengthList):
1483         * svg/SVGLengthList.idl: Mark as [SVGListProperty].
1484         * svg/SVGLineElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ until the transition to the new concept is finished.
1485         * svg/SVGLinearGradientElement.h: Ditto.
1486         * svg/SVGMarkerElement.h: Ditto.
1487         * svg/SVGMaskElement.h: Ditto.
1488         * svg/SVGPatternElement.h: Ditto.
1489         * svg/SVGRadialGradientElement.h: Ditto.
1490         * svg/SVGRectElement.h: Ditto.
1491         * svg/SVGSVGElement.h: Ditto.
1492         * svg/SVGSVGElement.idl: Mark createSVGLength() as [SVGLiveProperty] - a wrapper for the returned object has to be created.
1493         * svg/SVGTextContentElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_PROPERTY_NEW/ until the transition to the new concept is finished.
1494         * svg/SVGTextPathElement.h: Ditto.
1495         * svg/SVGTextPositioningElement.cpp:
1496         (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
1497         (WebCore::SVGTextPositioningElement::parseMappedAttribute): Detach wrappers pointing to the old x/y/dx/dy list, if the underlying list changes via XML DOM.
1498         (WebCore::listContainsRelativeValue): Adapt to SVGLengthList interface changes, it's a POD type now.
1499         * svg/SVGTextPositioningElement.h: s/DECLARE_ANIMATED_PROPERTY/DECLARE_ANIMATED_LIST_PROPERTY_NEW/ until the transition to the new concept is finished.
1500         * svg/SVGUseElement.h:
1501         * svg/properties/SVGAnimatedListPropertyTearOff.h: Added.
1502         * svg/properties/SVGAnimatedProperty.h: Added. This is the base class for SVGAnimatedPropertyTearOff and SVGAnimatedListPropertyTearOff.
1503         * svg/properties/SVGAnimatedPropertyDescription.h: Added. Refactored from DeprecatedSVGAnimatedProperty.h.
1504         * svg/properties/SVGAnimatedPropertyMacros.h: Added. These macros will be _removed_ as soon as the transition to the new concept is finished.
1505         * svg/properties/SVGAnimatedPropertyTearOff.h: Added.
1506         * svg/properties/SVGListPropertyTearOff.h: Added.
1507         * svg/properties/SVGProperty.h: Added. This is the base class for SVGPropertyTearOff and SVGListPropertyTearOff.
1508         * svg/properties/SVGPropertyTearOff.h: Added.
1509         * svg/properties/SVGPropertyTraits.h: Added.
1510
1511 2010-10-21  Alex Milowski  <alex@milowski.com>
1512
1513         Reviewed by Kenneth Rohde Christiansen.
1514
1515         Changed the layout algorithm for rows to avoid unnecessary recursion
1516         into child rows.  This solves the long rendering time experienced in
1517         https://bugs.webkit.org/show_bug.cgi?id=43462 as well as reports in
1518         various other bugs.  The change in the algorithm required some
1519         tweaks to other rendering objects to make sure that the baseline
1520         alignment still works.
1521
1522         In addition, an attempt was made to go through the various
1523         rendering objects for MathML and reduce unnecessary calls that
1524         mark the tree in need of layout.
1525
1526         * mathml/RenderMathMLFenced.cpp:
1527         * mathml/RenderMathMLFenced.h:
1528         * mathml/RenderMathMLFraction.cpp:
1529         (WebCore::RenderMathMLFraction::layout):
1530         * mathml/RenderMathMLOperator.cpp:
1531         (WebCore::RenderMathMLOperator::stretchToHeight):
1532         * mathml/RenderMathMLRoot.cpp:
1533         (WebCore::RenderMathMLRoot::layout):
1534         * mathml/RenderMathMLRow.cpp:
1535         (WebCore::RenderMathMLRow::layout):
1536         * mathml/RenderMathMLRow.h:
1537         (WebCore::RenderMathMLRow::stretchToHeight):
1538         * mathml/RenderMathMLSubSup.cpp:
1539         (WebCore::RenderMathMLSubSup::addChild):
1540         (WebCore::RenderMathMLSubSup::stretchToHeight):
1541         (WebCore::RenderMathMLSubSup::nonOperatorHeight):
1542         (WebCore::RenderMathMLSubSup::layout):
1543         (WebCore::RenderMathMLSubSup::baselinePosition):
1544         * mathml/RenderMathMLUnderOver.cpp:
1545         (WebCore::RenderMathMLUnderOver::stretchToHeight):
1546         (WebCore::RenderMathMLUnderOver::layout):
1547         (WebCore::RenderMathMLUnderOver::nonOperatorHeight):
1548         * mathml/mathtags.in:
1549
1550 2010-10-21  Evan Martin  <evan@chromium.org>
1551
1552         Reviewed by Tony Chang.
1553
1554         sqlite: show extended error codes in error logs
1555         https://bugs.webkit.org/show_bug.cgi?id=47859
1556
1557         SQLite can provide "extended" error codes, where extra information
1558         about the error is potentially encoded in the high bits of the error
1559         code.  It's only off by default in case older apps rely on equality
1560         testing on the older error codes, which WebKit doesn't do.
1561
1562         * platform/sql/SQLiteDatabase.cpp:
1563         (WebCore::SQLiteDatabase::open):
1564         * platform/sql/SQLiteStatement.cpp:
1565         (WebCore::SQLiteStatement::step):
1566
1567 2010-10-21  Yuta Kitamura  <yutak@chromium.org>
1568
1569         Reviewed by Yury Semikhatsky.
1570
1571         Web Inspector: Handle WebSocket events via InspectorInstrumentation
1572         https://bugs.webkit.org/show_bug.cgi?id=47968
1573
1574         * inspector/InspectorInstrumentation.cpp:
1575         (WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
1576         (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequestImpl):
1577         (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponseImpl):
1578         (WebCore::InspectorInstrumentation::didCloseWebSocketImpl):
1579         * inspector/InspectorInstrumentation.h:
1580         (WebCore::InspectorInstrumentation::didCreateWebSocket):
1581         (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequest):
1582         (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponse):
1583         (WebCore::InspectorInstrumentation::didCloseWebSocket):
1584         * websockets/WebSocketChannel.cpp:
1585         (WebCore::WebSocketChannel::WebSocketChannel):
1586         Now we do not depend on InspectorController to generate a resource identifier.
1587         (WebCore::WebSocketChannel::disconnect):
1588         Check if m_identifier is valid in case we could not obtain an identifier.
1589         (WebCore::WebSocketChannel::didOpen):
1590         (WebCore::WebSocketChannel::didClose):
1591         (WebCore::WebSocketChannel::processBuffer):
1592         * websockets/WebSocketChannel.h:
1593
1594 2010-10-20  Pavel Feldman  <pfeldman@chromium.org>
1595
1596         Reviewed by Yury Semikhatsky.
1597
1598         Web Inspector: Convert sidebar into the browsing tree in the Storage panel.
1599         https://bugs.webkit.org/show_bug.cgi?id=47988
1600
1601         * English.lproj/localizedStrings.js:
1602         * inspector/front-end/ApplicationCacheItemsView.js:
1603         (WebInspector.ApplicationCacheItemsView):
1604         * inspector/front-end/ConsoleView.js:
1605         (WebInspector.ConsoleMessage.prototype._formatMessage):
1606         * inspector/front-end/CookieItemsView.js:
1607         (WebInspector.CookieItemsView):
1608         * inspector/front-end/DatabaseTableView.js:
1609         (WebInspector.DatabaseTableView.prototype._queryFinished):
1610         * inspector/front-end/StoragePanel.js:
1611         (WebInspector.StoragePanel):
1612         (WebInspector.StoragePanel.prototype.reset):
1613         (WebInspector.StoragePanel.prototype.addDatabase):
1614         (WebInspector.StoragePanel.prototype.addCookieDomain):
1615         (WebInspector.StoragePanel.prototype.addDOMStorage):
1616         (WebInspector.StoragePanel.prototype.addApplicationCache):
1617         (WebInspector.StoragePanel.prototype.showDatabase):
1618         (WebInspector.StoragePanel.prototype.showDOMStorage):
1619         (WebInspector.StoragePanel.prototype.showCookies):
1620         (WebInspector.StoragePanel.prototype.showApplicationCache):
1621         (WebInspector.StoragePanel.prototype.showCategoryView):
1622         (WebInspector.StoragePanel.prototype._innerShowView):
1623         (WebInspector.BaseStorageTreeElement):
1624         (WebInspector.BaseStorageTreeElement.prototype.onattach):
1625         (WebInspector.StorageCategoryTreeElement):
1626         (WebInspector.StorageCategoryTreeElement.prototype.onselect):
1627         (WebInspector.DatabaseTreeElement):
1628         (WebInspector.DatabaseTreeElement.prototype.onselect):
1629         (WebInspector.DatabaseTreeElement.prototype.onpopulate.tableNamesCallback):
1630         (WebInspector.DatabaseTreeElement.prototype.onpopulate):
1631         (WebInspector.DatabaseTableTreeElement):
1632         (WebInspector.DatabaseTableTreeElement.prototype.onselect):
1633         (WebInspector.DOMStorageTreeElement):
1634         (WebInspector.DOMStorageTreeElement.prototype.onselect):
1635         (WebInspector.CookieTreeElement):
1636         (WebInspector.CookieTreeElement.prototype.onselect):
1637         (WebInspector.ApplicationCacheTreeElement):
1638         (WebInspector.ApplicationCacheTreeElement.prototype.onselect):
1639         (WebInspector.StorageCategoryView):
1640         (WebInspector.StorageCategoryView.prototype.setText):
1641         * inspector/front-end/inspector.css:
1642         (.properties-tree ol):
1643         (.properties-tree ol.expanded):
1644         (.database-storage-tree-item .icon):
1645         (.database-table-storage-tree-item .icon):
1646         (.domstorage-storage-tree-item.local-storage .icon):
1647         (.domstorage-storage-tree-item.session-storage .icon):
1648         (.cookie-storage-tree-item .icon):
1649         (.application-cache-storage-tree-item .icon):
1650         (.storage.panel .sidebar):
1651         (.storage.panel .outline-disclosure > ol):
1652         (.storage.panel .outline-disclosure li):
1653         (.storage.panel .outline-disclosure li .selection):
1654         (.storage.panel .sidebar-resizer-vertical):
1655         (.storage-base-tree-element-title):
1656         (.storage.panel .outline-disclosure ol):
1657         (.storage.panel .outline-disclosure li.selected):
1658         (.storage.panel .outline-disclosure .icon):
1659         (.storage-empty-view, .storage-view.table .storage-table-error):
1660
1661 2010-10-21  Carlos Garcia Campos  <cgarcia@igalia.com>
1662
1663         Reviewed by Martin Robinson.
1664
1665         [GTK] Replace encodings multi-dimensional array with calls to registrar method
1666         https://bugs.webkit.org/show_bug.cgi?id=47990
1667
1668         * platform/text/gtk/TextCodecGtk.cpp:
1669         (WebCore::isEncodingAvailable):
1670         (WebCore::registerEncodingNameIfAvailable):
1671         (WebCore::registerEncodingAliasIfAvailable):
1672         (WebCore::registerCodecIfAvailable):
1673         (WebCore::TextCodecGtk::registerBaseEncodingNames):
1674         (WebCore::TextCodecGtk::registerBaseCodecs):
1675         (WebCore::TextCodecGtk::registerExtendedEncodingNames):
1676         (WebCore::TextCodecGtk::registerExtendedCodecs):
1677         (WebCore::TextCodecGtk::createIConvDecoder):
1678         (WebCore::TextCodecGtk::createIConvEncoder):
1679         * platform/text/gtk/TextCodecGtk.h:
1680
1681 2010-10-20  Sheriff Bot  <webkit.review.bot@gmail.com>
1682
1683         Unreviewed, rolling out r70040.
1684         http://trac.webkit.org/changeset/70040
1685         https://bugs.webkit.org/show_bug.cgi?id=48042
1686
1687         "Reverting a performance regression detected by page_cycler"
1688         (Requested by hayato on #webkit).
1689
1690         * css/CSSStyleSelector.cpp:
1691         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
1692         (WebCore::CSSStyleSelector::checkSelector):
1693         * css/CSSStyleSelector.h:
1694
1695 2010-10-19  Simon Fraser  <simon.fraser@apple.com>
1696
1697         Reviewed by Gavin Barraclough.
1698
1699         https://bugs.webkit.org/show_bug.cgi?id=47851
1700         
1701         Avoid buffer overflows in CSSPrimitiveValue's use of 
1702         DecimalNumber, and pass the buffer size in InspectorBasicValue.
1703
1704         Test: fast/css/large-value-csstext.html
1705
1706         * css/CSSPrimitiveValue.cpp:
1707         (WebCore::formatNumber):
1708         * inspector/InspectorValues.cpp:
1709         (WebCore::InspectorBasicValue::writeJSON):
1710
1711 2010-10-20  Dumitru Daniliuc  <dumi@chromium.org>
1712
1713         Reviewed by David Levin.
1714
1715         Add SecurityOrigin::threadsafeCopy() to the list of exported symbols.
1716         https://bugs.webkit.org/show_bug.cgi?id=40655
1717
1718         * WebCore.exp.in:
1719
1720 2010-10-20  Sheriff Bot  <webkit.review.bot@gmail.com>
1721
1722         Unreviewed, rolling out r70165.
1723         http://trac.webkit.org/changeset/70165
1724         https://bugs.webkit.org/show_bug.cgi?id=48007
1725
1726         It broke tests on Qt bot (Requested by Ossy on #webkit).
1727
1728         * ForwardingHeaders/wtf/text/TextPosition.h: Removed.
1729         * bindings/js/ScriptSourceCode.h:
1730         (WebCore::ScriptSourceCode::ScriptSourceCode):
1731         * bindings/v8/ScheduledAction.cpp:
1732         (WebCore::ScheduledAction::ScheduledAction):
1733         * bindings/v8/ScriptController.cpp:
1734         (WebCore::ScriptController::eventHandlerLineNumber):
1735         (WebCore::ScriptController::eventHandlerColumnNumber):
1736         * bindings/v8/ScriptController.h:
1737         * bindings/v8/ScriptEventListener.cpp:
1738         (WebCore::createAttributeEventListener):
1739         * bindings/v8/ScriptSourceCode.h:
1740         (WebCore::ScriptSourceCode::ScriptSourceCode):
1741         (WebCore::ScriptSourceCode::startLine):
1742         * bindings/v8/V8LazyEventListener.cpp:
1743         (WebCore::V8LazyEventListener::V8LazyEventListener):
1744         (WebCore::V8LazyEventListener::prepareListenerObject):
1745         * bindings/v8/V8LazyEventListener.h:
1746         (WebCore::V8LazyEventListener::create):
1747         * bindings/v8/V8Proxy.cpp:
1748         (WebCore::V8Proxy::compileScript):
1749         (WebCore::V8Proxy::evaluate):
1750         (WebCore::V8Proxy::runScript):
1751         * bindings/v8/V8Proxy.h:
1752         * bindings/v8/WorkerContextExecutionProxy.cpp:
1753         (WebCore::WorkerContextExecutionProxy::evaluate):
1754         (WebCore::WorkerContextExecutionProxy::runScript):
1755         * bindings/v8/WorkerContextExecutionProxy.h:
1756         * bindings/v8/WorkerScriptController.cpp:
1757         (WebCore::WorkerScriptController::evaluate):
1758         * dom/PendingScript.cpp:
1759         (WebCore::PendingScript::releaseElementAndClear):
1760         * dom/PendingScript.h:
1761         (WebCore::PendingScript::PendingScript):
1762         (WebCore::PendingScript::operator=):
1763         (WebCore::PendingScript::startingLineNumber):
1764         * dom/ScriptableDocumentParser.h:
1765         * dom/XMLDocumentParser.h:
1766         * dom/XMLDocumentParserLibxml2.cpp:
1767         (WebCore::XMLDocumentParser::XMLDocumentParser):
1768         (WebCore::XMLDocumentParser::startElementNs):
1769         (WebCore::XMLDocumentParser::endElementNs):
1770         (WebCore::XMLDocumentParser::lineNumber):
1771         (WebCore::XMLDocumentParser::columnNumber):
1772         * dom/XMLDocumentParserQt.cpp:
1773         (WebCore::XMLDocumentParser::XMLDocumentParser):
1774         (WebCore::XMLDocumentParser::parseStartElement):
1775         (WebCore::XMLDocumentParser::parseEndElement):
1776         * html/parser/HTMLDocumentParser.cpp:
1777         (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
1778         (WebCore::HTMLDocumentParser::columnNumber):
1779         * html/parser/HTMLDocumentParser.h:
1780         * html/parser/HTMLScriptRunner.cpp:
1781         (WebCore::HTMLScriptRunner::sourceFromPendingScript):
1782         (WebCore::HTMLScriptRunner::execute):
1783         (WebCore::HTMLScriptRunner::runScript):
1784         * html/parser/HTMLScriptRunner.h:
1785         * html/parser/HTMLTreeBuilder.cpp:
1786         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
1787         (WebCore::HTMLTreeBuilder::takeScriptToProcess):
1788         (WebCore::HTMLTreeBuilder::processEndTag):
1789         (WebCore::HTMLTreeBuilder::processScriptStartTag):
1790         * html/parser/HTMLTreeBuilder.h:
1791
1792 2010-10-20  David Hyatt  <hyatt@apple.com>
1793
1794         Reviewed by Dan Bernstein.
1795
1796         https://bugs.webkit.org/show_bug.cgi?id=48001
1797
1798         Make boxes place themselves properly in the block direction.  Get basic painting working for spans and add a test that
1799         verifies that span painting and replaced element painting (like images) works correctly.
1800         
1801         Added fast/blockflow/basic-vertical-line.html
1802
1803         * rendering/InlineBox.cpp:
1804         (WebCore::InlineBox::logicalHeight):
1805         * rendering/InlineFlowBox.cpp:
1806         (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
1807         (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
1808         (WebCore::verticalPositionForBox):
1809         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
1810         (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
1811         (WebCore::InlineFlowBox::flipLinesInBlockDirection):
1812         (WebCore::InlineFlowBox::paintBoxDecorations):
1813         (WebCore::InlineFlowBox::paintMask):
1814         * rendering/InlineFlowBox.h:
1815         * rendering/style/RenderStyle.h:
1816         (WebCore::InheritedFlags::isFlippedLinesWritingMode):
1817
1818 2010-10-20  Beth Dakin  <bdakin@apple.com>
1819
1820         Reviewed by Dave Hyatt.
1821
1822         Fix for https://bugs.webkit.org/show_bug.cgi?id=47514 CSS 
1823         transforms should affect scrolling
1824
1825         This patch causes topmostPosition, lowestPosition, 
1826         leftmostPosition, and rightmostPosition to take transforms into 
1827         account.
1828
1829         Compute the topmost/lowest/leftmost/rightmost position without 
1830         factoring in the block's transform until the end.
1831         * rendering/RenderBlock.cpp:
1832         (WebCore::RenderBlock::topmostPosition):
1833         (WebCore::RenderBlock::lowestPosition):
1834         (WebCore::RenderBlock::rightmostPosition):
1835         (WebCore::RenderBlock::leftmostPosition):
1836         * rendering/RenderBlock.h:
1837
1838         transformedFrameRect() returns the frameRect() transformed to the 
1839         layer's transform. applyLayerTransformToRect() does the same thing 
1840         for the input rect.
1841         * rendering/RenderBox.cpp:
1842         (WebCore::RenderBox::applyLayerTransformToRect):
1843         (WebCore::RenderBox::transformedFrameRect):
1844         (WebCore::RenderBox::topmostPosition):
1845         (WebCore::RenderBox::lowestPosition):
1846         (WebCore::RenderBox::rightmostPosition):
1847         (WebCore::RenderBox::leftmostPosition):
1848         * rendering/RenderBox.h:
1849         * rendering/RenderMedia.cpp:
1850         (WebCore::RenderMedia::topmostPosition):
1851         (WebCore::RenderMedia::lowestPosition):
1852         (WebCore::RenderMedia::rightmostPosition):
1853         (WebCore::RenderMedia::leftmostPosition):
1854         * rendering/RenderMedia.h:
1855         * rendering/RenderTableSection.cpp:
1856         (WebCore::RenderTableSection::topmostPosition):
1857         (WebCore::RenderTableSection::lowestPosition):
1858         (WebCore::RenderTableSection::rightmostPosition):
1859         (WebCore::RenderTableSection::leftmostPosition):
1860         * rendering/RenderTableSection.h:
1861
1862 2010-10-20  Nikolas Zimmermann  <nzimmermann@rim.com>
1863
1864         Not reviewed.
1865
1866         Rename SVGAnimatedProperty* -> DeprecatedSVGAnimatedProperty*
1867         https://bugs.webkit.org/show_bug.cgi?id=47973
1868
1869         Copy headers from svg/properties, otherwhise builds from scratch on win are broken.
1870
1871         * WebCore.vcproj/copyForwardingHeaders.cmd:
1872
1873 2010-10-20  Peter Rybin  <peter.rybin@gmail.com>
1874
1875         Reviewed by Adam Barth.
1876
1877         HTML parser should provide script column position within HTML document to JavaScript engine
1878         https://bugs.webkit.org/show_bug.cgi?id=45271
1879
1880         Replaces line number with TextPosition struct so that script engine
1881         gets script starting line/column.
1882
1883         * ForwardingHeaders/wtf/text/TextPosition.h: Added.
1884         * bindings/js/ScriptSourceCode.h:
1885         (WebCore::ScriptSourceCode::ScriptSourceCode):
1886         * bindings/v8/ScheduledAction.cpp:
1887         (WebCore::ScheduledAction::ScheduledAction):
1888         * bindings/v8/ScriptController.cpp:
1889         (WebCore::ScriptController::eventHandlerPosition):
1890         * bindings/v8/ScriptController.h:
1891         * bindings/v8/ScriptEventListener.cpp:
1892         (WebCore::createAttributeEventListener):
1893         * bindings/v8/ScriptSourceCode.h:
1894         (WebCore::ScriptSourceCode::ScriptSourceCode):
1895         (WebCore::ScriptSourceCode::startLine):
1896         (WebCore::ScriptSourceCode::startPosition):
1897         * bindings/v8/V8LazyEventListener.cpp:
1898         (WebCore::V8LazyEventListener::V8LazyEventListener):
1899         (WebCore::V8LazyEventListener::prepareListenerObject):
1900         * bindings/v8/V8LazyEventListener.h:
1901         (WebCore::V8LazyEventListener::create):
1902         * bindings/v8/V8Proxy.cpp:
1903         (WebCore::V8Proxy::compileScript):
1904         (WebCore::V8Proxy::evaluate):
1905         (WebCore::V8Proxy::runScript):
1906         * bindings/v8/V8Proxy.h:
1907         * bindings/v8/WorkerContextExecutionProxy.cpp:
1908         (WebCore::WorkerContextExecutionProxy::evaluate):
1909         (WebCore::WorkerContextExecutionProxy::runScript):
1910         * bindings/v8/WorkerContextExecutionProxy.h:
1911         * bindings/v8/WorkerScriptController.cpp:
1912         (WebCore::WorkerScriptController::evaluate):
1913         * dom/PendingScript.cpp:
1914         (WebCore::PendingScript::releaseElementAndClear):
1915         * dom/PendingScript.h:
1916         (WebCore::PendingScript::PendingScript):
1917         (WebCore::PendingScript::operator=):
1918         (WebCore::PendingScript::startingPosition):
1919         * dom/ScriptableDocumentParser.h:
1920         * dom/XMLDocumentParser.h:
1921         * dom/XMLDocumentParserLibxml2.cpp:
1922         (WebCore::XMLDocumentParser::XMLDocumentParser):
1923         (WebCore::XMLDocumentParser::startElementNs):
1924         (WebCore::XMLDocumentParser::endElementNs):
1925         (WebCore::XMLDocumentParser::lineNumber):
1926         (WebCore::XMLDocumentParser::columnNumber):
1927         (WebCore::XMLDocumentParser::textPosition):
1928         (WebCore::XMLDocumentParser::textPositionOneBased):
1929         * dom/XMLDocumentParserQt.cpp:
1930         (WebCore::XMLDocumentParser::XMLDocumentParser):
1931         (WebCore::XMLDocumentParser::textPosition):
1932         (WebCore::XMLDocumentParser::parseStartElement):
1933         (WebCore::XMLDocumentParser::parseEndElement):
1934         * html/parser/HTMLDocumentParser.cpp:
1935         (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
1936         (WebCore::HTMLDocumentParser::textPosition):
1937         * html/parser/HTMLDocumentParser.h:
1938         * html/parser/HTMLScriptRunner.cpp:
1939         (WebCore::HTMLScriptRunner::sourceFromPendingScript):
1940         (WebCore::HTMLScriptRunner::execute):
1941         (WebCore::HTMLScriptRunner::runScript):
1942         * html/parser/HTMLScriptRunner.h:
1943         * html/parser/HTMLTreeBuilder.cpp:
1944         (WebCore::uninitializedPositionValue1):
1945         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
1946         (WebCore::HTMLTreeBuilder::takeScriptToProcess):
1947         (WebCore::HTMLTreeBuilder::processEndTag):
1948         (WebCore::HTMLTreeBuilder::processScriptStartTag):
1949         * html/parser/HTMLTreeBuilder.h:
1950
1951 2010-10-20  David Hyatt  <hyatt@apple.com>
1952
1953         Reviewed by Simon Fraser.
1954
1955         https://bugs.webkit.org/show_bug.cgi?id=47994
1956         
1957         Make computeBlockDirectionPositionsForLine writing-mode-aware.  None of the functions it calls are patched yet.
1958
1959         * rendering/RenderBlockLineLayout.cpp:
1960         (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
1961
1962 2010-10-20  John Abd-El-Malek  <jam@chromium.org>
1963
1964         Reviewed by Darin Fisher.
1965
1966         [chromium] Fix crash when mousing over scrollview
1967         https://bugs.webkit.org/show_bug.cgi?id=47956
1968
1969         Test: plugins/mouse-move-over-plugin-in-frame.html
1970
1971         * platform/Widget.h:
1972         (WebCore::Widget::isPluginContainer):
1973
1974 2010-10-20  Sheriff Bot  <webkit.review.bot@gmail.com>
1975
1976         Unreviewed, rolling out r70149.
1977         http://trac.webkit.org/changeset/70149
1978         https://bugs.webkit.org/show_bug.cgi?id=47989
1979
1980         "Build breaks in mac and win" (Requested by satish on
1981         #webkit).
1982
1983         * dom/Element.cpp:
1984         (WebCore::Element::computeInheritedLanguage):
1985         * page/SpeechInput.cpp:
1986         (WebCore::SpeechInput::startRecognition):
1987         * page/SpeechInput.h:
1988         * page/SpeechInputClient.h:
1989         * platform/mock/SpeechInputClientMock.cpp:
1990         (WebCore::SpeechInputClientMock::startRecognition):
1991         (WebCore::SpeechInputClientMock::setRecognitionResult):
1992         (WebCore::SpeechInputClientMock::timerFired):
1993         * platform/mock/SpeechInputClientMock.h:
1994         * rendering/TextControlInnerElements.cpp:
1995         (WebCore::TextControlInnerElement::attachInnerElement):
1996         (WebCore::SearchFieldCancelButtonElement::detach):
1997         (WebCore::SpinButtonElement::defaultEventHandler):
1998         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
1999         (WebCore::InputFieldSpeechButtonElement::detach):
2000
2001 2010-10-20  Dirk Schulze  <krit@webkit.org>
2002
2003         Reviewed by Nikolas Zimmermann.
2004
2005         Merge ColorSpace and ImageColorSpace enums
2006         https://bugs.webkit.org/show_bug.cgi?id=47922
2007
2008         Merging these two enums makes it easier to implement color-interpolation as well as
2009         color-interpolation-filter for SVG.
2010         Added ColorSpaceLinearRGB to the ColorSpace enum and changed ImageColorSpace to ColorSpace in all related
2011         files. Renamed enum entries DeviceColorSpace and sRGBColorSpace to ColorSpaceDeviceRGB and ColorSpaceSRGB
2012         to follow webkit style rules.
2013         Removed gray scale support in ImageBuffer since it is not used anymore on WebKit.
2014
2015         * css/CSSPrimitiveValueMappings.h:
2016         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2017         (WebCore::CSSPrimitiveValue::operator ColorSpace):
2018         * css/CSSStyleSelector.cpp:
2019         (WebCore::CSSStyleSelector::applyProperty):
2020         * editing/SelectionController.cpp:
2021         (WebCore::SelectionController::paintCaret):
2022         * html/HTMLCanvasElement.cpp:
2023         (WebCore::HTMLCanvasElement::paint):
2024         * html/canvas/CanvasRenderingContext2D.cpp:
2025         (WebCore::CanvasRenderingContext2D::setAllAttributesToDefault):
2026         (WebCore::CanvasRenderingContext2D::setShadow):
2027         (WebCore::CanvasRenderingContext2D::applyShadow):
2028         (WebCore::CanvasRenderingContext2D::drawImage):
2029         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
2030         (WebCore::CanvasRenderingContext2D::drawTextInternal):
2031         * html/canvas/CanvasStyle.cpp:
2032         (WebCore::CanvasStyle::applyStrokeColor):
2033         (WebCore::CanvasStyle::applyFillColor):
2034         * inspector/InspectorController.cpp:
2035         (WebCore::drawOutlinedQuad):
2036         (WebCore::InspectorController::drawElementTitle):
2037         * mathml/RenderMathMLBlock.cpp:
2038         (WebCore::RenderMathMLBlock::paint):
2039         * mathml/RenderMathMLFraction.cpp:
2040         (WebCore::RenderMathMLFraction::paint):
2041         * mathml/RenderMathMLRoot.cpp:
2042         (WebCore::RenderMathMLRoot::paint):
2043         * mathml/RenderMathMLSquareRoot.cpp:
2044         (WebCore::RenderMathMLSquareRoot::paint):
2045         * page/FrameView.cpp:
2046         (WebCore::FrameView::paintContents):
2047         * page/PrintContext.cpp:
2048         (WebCore::PrintContext::spoolAllPagesWithBoundaries):
2049         * platform/ScrollView.cpp:
2050         (WebCore::ScrollView::wheelEvent):
2051         * platform/ScrollbarTheme.h:
2052         (WebCore::ScrollbarTheme::paintScrollCorner):
2053         * platform/ScrollbarThemeComposite.cpp:
2054         (WebCore::ScrollbarThemeComposite::paintScrollCorner):
2055         * platform/chromium/PopupMenuChromium.cpp:
2056         (WebCore::PopupContainer::paintBorder):
2057         (WebCore::PopupListBox::paint):
2058         (WebCore::PopupListBox::paintRow):
2059         * platform/chromium/ScrollbarThemeChromium.cpp:
2060         (WebCore::ScrollbarThemeChromium::paintTickmarks):
2061         * platform/chromium/ScrollbarThemeChromiumMac.mm:
2062         (WebCore::ScrollbarThemeChromiumMac::paint):
2063         * platform/graphics/ColorSpace.h:
2064         * platform/graphics/GraphicsContext.cpp:
2065         (WebCore::GraphicsContext::setStrokePattern):
2066         (WebCore::GraphicsContext::setFillPattern):
2067         (WebCore::GraphicsContext::setStrokeGradient):
2068         (WebCore::GraphicsContext::setFillGradient):
2069         * platform/graphics/GraphicsContextPrivate.h:
2070         (WebCore::GraphicsContextState::GraphicsContextState):
2071         * platform/graphics/ImageBuffer.cpp:
2072         (WebCore::ImageBuffer::transformColorSpace):
2073         * platform/graphics/ImageBuffer.h:
2074         (WebCore::ImageBuffer::create):
2075         * platform/graphics/cairo/ImageBufferCairo.cpp:
2076         (WebCore::ImageBuffer::ImageBuffer):
2077         * platform/graphics/cg/ColorCG.cpp:
2078         (WebCore::cachedCGColorSpace):
2079         (WebCore::cachedCGColor):
2080         * platform/graphics/cg/GraphicsContextCG.cpp:
2081         (WebCore::linearRGBColorSpaceRef):
2082         * platform/graphics/cg/GraphicsContextCG.h:
2083         * platform/graphics/cg/ImageBufferCG.cpp:
2084         (WebCore::ImageBuffer::ImageBuffer):
2085         (WebCore::cgImage):
2086         (WebCore::ImageBuffer::draw):
2087         * platform/graphics/cg/ImageBufferData.h:
2088         * platform/graphics/cg/ImageCG.cpp:
2089         (WebCore::imageWithColorSpace):
2090         * platform/graphics/chromium/GLES2Canvas.cpp:
2091         (WebCore::GLES2Canvas::clearRect):
2092         (WebCore::GLES2Canvas::fillRect):
2093         * platform/graphics/chromium/TransparencyWin.cpp:
2094         (WebCore::TransparencyWin::setupLayerForWhiteLayer):
2095         * platform/graphics/filters/FEColorMatrix.cpp:
2096         (WebCore::FEColorMatrix::apply):
2097         * platform/graphics/filters/FEComposite.cpp:
2098         (WebCore::FEComposite::apply):
2099         * platform/graphics/filters/FEFlood.cpp:
2100         (WebCore::FEFlood::apply):
2101         * platform/graphics/filters/FEMerge.cpp:
2102         (WebCore::FEMerge::apply):
2103         * platform/graphics/filters/FEOffset.cpp:
2104         (WebCore::FEOffset::apply):
2105         * platform/graphics/filters/FETile.cpp:
2106         (WebCore::FETile::apply):
2107         * platform/graphics/filters/FilterEffect.cpp:
2108         (WebCore::FilterEffect::effectContext):
2109         * platform/graphics/filters/SourceAlpha.cpp:
2110         (WebCore::SourceAlpha::apply):
2111         * platform/graphics/filters/SourceGraphic.cpp:
2112         (WebCore::SourceGraphic::apply):
2113         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2114         (WebCore::MediaPlayerPrivateGStreamer::paint):
2115         * platform/graphics/gtk/FontGtk.cpp:
2116         (WebCore::Font::drawComplexText):
2117         * platform/graphics/mac/GraphicsContextMac.mm:
2118         (WebCore::GraphicsContext::drawFocusRing):
2119         * platform/graphics/mac/GraphicsLayerCA.mm:
2120         (WebCore::setLayerBorderColor):
2121         (WebCore::setLayerBackgroundColor):
2122         * platform/graphics/qt/GraphicsContextQt.cpp:
2123         (WebCore::GraphicsContext::GraphicsContext):
2124         * platform/graphics/qt/ImageBufferQt.cpp:
2125         (WebCore::ImageBuffer::ImageBuffer):
2126         (WebCore::ImageBuffer::draw):
2127         * platform/graphics/skia/ImageBufferSkia.cpp:
2128         (WebCore::ImageBuffer::ImageBuffer):
2129         * platform/graphics/skia/PlatformContextSkia.cpp:
2130         (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
2131         * platform/graphics/win/FontCGWin.cpp:
2132         (WebCore::Font::drawGlyphs):
2133         * platform/graphics/win/GraphicsContextCGWin.cpp:
2134         (WebCore::GraphicsContext::GraphicsContext):
2135         (WebCore::GraphicsContext::drawFocusRing):
2136         * platform/graphics/win/GraphicsLayerCACF.cpp:
2137         (WebCore::setLayerBorderColor):
2138         (WebCore::setLayerBackgroundColor):
2139         * platform/graphics/win/ImageCGWin.cpp:
2140         (WebCore::BitmapImage::getHBITMAPOfSize):
2141         * platform/graphics/win/ImageCairoWin.cpp:
2142         (WebCore::BitmapImage::getHBITMAPOfSize):
2143         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
2144         * platform/graphics/win/WebLayer.cpp:
2145         (WebCore::WebLayer::drawInContext):
2146         * platform/graphics/wince/GraphicsContextWinCE.cpp:
2147         (WebCore::GraphicsContext::clearRect):
2148         (WebCore::GraphicsContext::fillRect):
2149         * platform/graphics/wince/ImageWinCE.cpp:
2150         (WebCore::BitmapImage::getHBITMAPOfSize):
2151         * platform/graphics/wx/GraphicsContextWx.cpp:
2152         (WebCore::GraphicsContext::GraphicsContext):
2153         * platform/gtk/RenderThemeGtk.cpp:
2154         (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
2155         (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
2156         (WebCore::paintMediaButton):
2157         (WebCore::RenderThemeGtk::paintMediaSliderTrack):
2158         (WebCore::RenderThemeGtk::paintMediaSliderThumb):
2159         * platform/mac/ScrollbarThemeMac.mm:
2160         (WebCore::ScrollbarThemeMac::paint):
2161         * platform/win/PopupMenuWin.cpp:
2162         (WebCore::PopupMenuWin::paint):
2163         * platform/win/WebCoreTextRenderer.cpp:
2164         (WebCore::doDrawTextAtPoint):
2165         * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp:
2166         (WebCore::drawTextWithSpacing):
2167         * plugins/PluginView.cpp:
2168         (WebCore::PluginView::paintMissingPluginIcon):
2169         * rendering/RenderLayer.cpp:
2170         (WebCore::RenderLayer::beginTransparencyLayers):
2171         (WebCore::RenderLayer::paintResizer):
2172         * rendering/RenderListMarker.cpp:
2173         (WebCore::RenderListMarker::paint):
2174         * rendering/RenderMediaControlsChromium.cpp:
2175         (WebCore::paintMediaButton):
2176         (WebCore::paintMediaSlider):
2177         (WebCore::paintMediaVolumeSlider):
2178         (WebCore::paintMediaTimelineContainer):
2179         * rendering/RenderSVGImage.cpp:
2180         (WebCore::RenderSVGImage::paint):
2181         * rendering/RenderSVGResourceClipper.cpp:
2182         (WebCore::RenderSVGResourceClipper::applyClippingToContext):
2183         * rendering/RenderSVGResourceFilter.cpp:
2184         (WebCore::RenderSVGResourceFilter::applyResource):
2185         (WebCore::RenderSVGResourceFilter::postApplyResource):
2186         * rendering/RenderSVGResourceGradient.cpp:
2187         (WebCore::createMaskAndSwapContextForTextGradient):
2188         * rendering/RenderSVGResourceMasker.cpp:
2189         (WebCore::RenderSVGResourceMasker::applyResource):
2190         (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
2191         * rendering/RenderSVGResourcePattern.cpp:
2192         (WebCore::RenderSVGResourcePattern::createTileImage):
2193         * rendering/RenderSVGResourceSolidColor.cpp:
2194         (WebCore::RenderSVGResourceSolidColor::applyResource):
2195         * rendering/RenderScrollbarTheme.cpp:
2196         (WebCore::RenderScrollbarTheme::paintScrollCorner):
2197         * rendering/RenderThemeMac.mm:
2198         (WebCore::RenderThemeMac::paintProgressBar):
2199         (WebCore::RenderThemeMac::paintMenuListButton):
2200         * rendering/RenderThemeSafari.cpp:
2201         (WebCore::RenderThemeSafari::paintMenuListButton):
2202         * rendering/RenderThemeWinCE.cpp:
2203         (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton):
2204         (WebCore::RenderThemeWinCE::paintSliderTrack):
2205         (WebCore::RenderThemeWinCE::paintSliderThumb):
2206         * rendering/SVGImageBufferTools.cpp:
2207         (WebCore::SVGImageBufferTools::createImageBuffer):
2208         * rendering/SVGImageBufferTools.h:
2209         * rendering/style/StyleRareInheritedData.cpp:
2210         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
2211         * svg/SVGFEImageElement.cpp:
2212         (WebCore::SVGFEImageElement::build):
2213         * svg/graphics/SVGImage.cpp:
2214         (WebCore::SVGImage::nativeImageForCurrentFrame):
2215         * svg/graphics/filters/SVGFEImage.cpp:
2216         (WebCore::FEImage::apply):
2217
2218 2010-10-20  Dirk Schulze  <krit@webkit.org>
2219
2220         Reviewed by Andreas Kling.
2221
2222         Remove left over code after moving Cairo port to ShadowContext
2223         https://bugs.webkit.org/show_bug.cgi?id=47929
2224
2225         ImageBufferFilter is not needed anymore, since Cairo is using ShadowContext now.
2226         Made kernelPosition() in FEGaussianBlur a inline function instead of a static function.
2227
2228         * CMakeLists.txt:
2229         * GNUmakefile.am:
2230         * WebCore.gypi:
2231         * WebCore.vcproj/WebCore.vcproj:
2232         * platform/graphics/filters/FEGaussianBlur.cpp:
2233         (WebCore::kernelPosition):
2234         * platform/graphics/filters/FEGaussianBlur.h:
2235         * platform/graphics/filters/ImageBufferFilter.cpp: Removed.
2236         * platform/graphics/filters/ImageBufferFilter.h: Removed.
2237
2238 2010-10-20  Nikolas Zimmermann  <nzimmermann@rim.com>
2239
2240         Not reviewed.
2241
2242         Fix efl build, by adding the new svg/properties include directory.
2243
2244         * CMakeLists.txt:
2245
2246 2010-10-19  Andrey Kosyakov  <caseq@chromium.org>
2247
2248         Reviewed by Pavel Feldman.
2249
2250         Web Inspector: expose request/response cookies in HAR
2251         https://bugs.webkit.org/show_bug.cgi?id=47894
2252
2253         Test: inspector/cookie-parser.html
2254
2255         * WebCore.gypi:
2256         * WebCore.vcproj/WebCore.vcproj:
2257         * inspector/front-end/CookieParser.js: Added.
2258         * inspector/front-end/HAREntry.js:
2259         (WebInspector.HAREntry.prototype._buildRequest):
2260         (WebInspector.HAREntry.prototype._buildResponse):
2261         (WebInspector.HAREntry.prototype._buildCookies):
2262         (WebInspector.HAREntry.prototype._buildCookie):
2263         * inspector/front-end/Resource.js: Parse Cookie/Set-Cookie headers and expose cookies.
2264         (WebInspector.Resource.prototype.set requestHeaders):
2265         (WebInspector.Resource.prototype.get requestCookies):
2266         (WebInspector.Resource.prototype.set responseHeaders):
2267         (WebInspector.Resource.prototype.get responseCookies):
2268         (WebInspector.Resource.prototype._parseRequestCookies):
2269         (WebInspector.Resource.prototype._parseResponseCookies):
2270         * inspector/front-end/WebKit.qrc:
2271         * inspector/front-end/inspector.html:
2272
2273 2010-10-20  Nikolas Zimmermann  <nzimmermann@rim.com>
2274
2275         Not reviewed.
2276
2277         Fix non-mac builds, by adding the new svg/properties include directory.
2278
2279         * GNUmakefile.am:
2280         * WebCore.gyp/WebCore.gyp:
2281         * WebCore.pro:
2282         * WebCore.vcproj/WebCoreCommon.vsprops:
2283
2284 2010-10-20  Nikolas Zimmermann  <nzimmermann@rim.com>
2285
2286         Reviewed by Adam Roben.
2287
2288         Rename SVGAnimatedProperty* -> DeprecatedSVGAnimatedProperty*
2289         https://bugs.webkit.org/show_bug.cgi?id=47973
2290
2291         Prepare fixing bug 47905, redesigning SVGAnimatedProperty. As we're going to move type by type
2292         to the new animated property concept, keep the old one around, marked deprecated, until the
2293         transition is finished.
2294
2295         * GNUmakefile.am:
2296         * WebCore.gypi:
2297         * WebCore.pro:
2298         * WebCore.vcproj/WebCore.vcproj:
2299         * WebCore.xcodeproj/project.pbxproj:
2300         * bindings/scripts/CodeGeneratorObjC.pm:
2301         * bindings/scripts/CodeGeneratorV8.pm:
2302         * svg/DeprecatedSVGAnimatedProperty.h: Copied from svg/SVGAnimatedProperty.h.
2303         (WebCore::DeprecatedSVGAnimatedPropertyTearOff::DeprecatedSVGAnimatedPropertyTearOff):
2304         (WebCore::DeprecatedSVGAnimatedPropertyTearOff::~DeprecatedSVGAnimatedPropertyTearOff):
2305         (WebCore::DeprecatedSVGAnimatedProperty::~DeprecatedSVGAnimatedProperty):
2306         (WebCore::DeprecatedSVGAnimatedProperty::DeprecatedSVGAnimatedProperty):
2307         (WebCore::DeprecatedSVGAnimatedProperty::value):
2308         (WebCore::DeprecatedSVGAnimatedProperty::baseValue):
2309         * svg/DeprecatedSVGAnimatedPropertyTraits.h: Copied from svg/SVGAnimatedPropertyTraits.h.
2310         * svg/DeprecatedSVGAnimatedTemplate.h: Copied from svg/SVGAnimatedTemplate.h.
2311         (WebCore::DeprecatedSVGAnimatedTypeWrapperKey::DeprecatedSVGAnimatedTypeWrapperKey):
2312         (WebCore::DeprecatedSVGAnimatedTypeWrapperKey::operator==):
2313         (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHash::hash):
2314         (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHash::equal):
2315         (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHashTraits::constructDeletedValue):
2316         (WebCore::DeprecatedSVGAnimatedTypeWrapperKeyHashTraits::isDeletedValue):
2317         (WebCore::DeprecatedSVGAnimatedTemplate::~DeprecatedSVGAnimatedTemplate):
2318         (WebCore::DeprecatedSVGAnimatedTemplate::forgetWrapper):
2319         (WebCore::lookupOrCreateWrapper):
2320         * svg/SVGAnimatedProperty.h: Removed.
2321         * svg/SVGAnimatedPropertySynchronizer.h: Removed.
2322         * svg/SVGAnimatedPropertyTraits.h: Removed.
2323         * svg/SVGAnimatedTemplate.h: Removed.
2324         * svg/SVGElement.h:
2325         * svg/SVGExternalResourcesRequired.h:
2326         * svg/SVGFitToViewBox.h:
2327         * svg/SVGURIReference.h:
2328         * svg/properties: Added.
2329         * svg/properties/SVGAnimatedPropertySynchronizer.h: Copied from svg/SVGAnimatedPropertySynchronizer.h.
2330
2331 2010-10-20  Shinichiro Hamaji  <hamaji@chromium.org>
2332
2333         Reviewed by Kent Tamura.
2334
2335         absolutely positioned list in inline element crashes
2336         https://bugs.webkit.org/show_bug.cgi?id=45095
2337
2338         Add a NULL check to avoid crash. The rendering result isn't ideal yet.
2339
2340         Test: fast/lists/positioned-count-crash.html
2341
2342         * rendering/RenderListItem.cpp:
2343         (WebCore::previousListItem):
2344
2345 2010-10-19  Adam Roben  <aroben@apple.com>
2346
2347         Remove uses of CACFContextRef and CARender* from WebCore
2348
2349         These types are now wrapped in a WKCACFContext type exported by
2350         WebKitSystemInterface.
2351
2352         Fixes <http://webkit.org/b/43244>.
2353
2354         Reviewed by Sam Weinig.
2355
2356         * platform/graphics/win/WKCACFContextFlusher.cpp:
2357         (WebCore::WKCACFContextFlusher::addContext):
2358         (WebCore::WKCACFContextFlusher::removeContext):
2359         (WebCore::WKCACFContextFlusher::flushAllContexts):
2360         * platform/graphics/win/WKCACFContextFlusher.h:
2361         Changed to use WKCACFContext. We don't retain/release the context when
2362         putting it into/taking it out of the set. WKCACFContext is not a
2363         ref-counted type, so we can't retain/release it, but the
2364         retain/release was also unnecessary as WKCACFLayerRenderer calls
2365         removeContext before the context is destroyed.
2366
2367         * platform/graphics/win/WKCACFLayer.cpp:
2368         (WebCore::WKCACFLayer::becomeRootLayerForContext):
2369         * platform/graphics/win/WKCACFLayer.h:
2370         Changed to use WKCACFContext.
2371
2372         * platform/graphics/win/WKCACFLayerRenderer.cpp:
2373         (WebCore::WKCACFLayerRenderer::didFlushContext):
2374         (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer):
2375         (WebCore::WKCACFLayerRenderer::~WKCACFLayerRenderer):
2376         (WebCore::WKCACFLayerRenderer::layerTreeDidChange):
2377         (WebCore::WKCACFLayerRenderer::createRenderer):
2378         (WebCore::WKCACFLayerRenderer::destroyRenderer):
2379         (WebCore::WKCACFLayerRenderer::render): Also replaced uses of
2380         CGSRegion with WebKitSystemInterface functions/types.
2381         (WebCore::WKCACFLayerRenderer::resetDevice):
2382         * platform/graphics/win/WKCACFLayerRenderer.h:
2383         Replaced our CACFContextRef, CARenderContext, and CARenderOGLContext
2384         with a single WKCACFContext, which wraps all three. We hold a bare
2385         pointer to it and destroy it in our destructor.
2386
2387 2010-10-19  Yongjun Zhang  <yongjun_zhang@apple.com>
2388
2389         Reviewed by Dan Bernstein.
2390
2391         Pixel cracks when using background image sprite on transformed element at certain scales.
2392         https://bugs.webkit.org/show_bug.cgi?id=47868
2393
2394         The pixel bleeding happens when the current context has scale and interpolation is kCGInterpolationHigh
2395         or kCGInterpolationDefault.  If the source rect size is smaller than the intrinsic image size,  some
2396         pixels outside of the clip rect will also be used to interpolate the color value for clip edges, which
2397         results in unwanted thin lines around the painted area.  We need to use sub-image patch to get rid of
2398         the artifacts in this case.
2399
2400         Test: fast/images/pixel-crack-image-background-webkit-transform-scale.html
2401
2402         * platform/graphics/cg/ImageCG.cpp:
2403         (WebCore::BitmapImage::draw):
2404
2405 2010-10-19  Evan Martin  <evan@chromium.org>
2406
2407         Reviewed by Tony Chang.
2408
2409         sqlite: remove unused member variable
2410         https://bugs.webkit.org/show_bug.cgi?id=47957
2411
2412         There's no need to save the error code into a member variable
2413         because nobody ever looks at it.
2414
2415         * platform/sql/SQLiteDatabase.cpp:
2416         (WebCore::SQLiteDatabase::open):
2417         * platform/sql/SQLiteDatabase.h:
2418
2419 2010-10-19  Jia Pu  <jpu@apple.com>
2420
2421         Reviewed by James Robinson.
2422
2423         Moving cursor back to autocorrected word in the same line shouldn't remove the underline
2424         https://bugs.webkit.org/show_bug.cgi?id=47629
2425         <rdar://problem/8546758>
2426         
2427         Patch <http://trac.webkit.org/changeset/70071> breaks some Chromium Mac hehavior. This patch
2428         fixes that.
2429
2430         * editing/Editor.cpp:
2431         (WebCore::Editor::respondToChangedSelection): Add "!PLATFORM(MAC)" to make sure nothing changes
2432           on non-Mac platforms.
2433
2434 2010-10-19  Alexey Proskuryakov  <ap@apple.com>
2435
2436         Build fix (EFL, maybe more).
2437
2438         * CMakeLists.txt: Added platform/Language.cpp here, too.
2439
2440 2010-10-19  Jian Li  <jianli@chromium.org>
2441
2442         Reviewed by Darin Fisher.
2443
2444         Rename createBlobURL to createObjectURL and revokeBlobURL to
2445         revokeObjectURL per the latest File API spec.
2446         https://bugs.webkit.org/show_bug.cgi?id=47934
2447
2448         * inspector/front-end/ResourcesPanel.js:
2449         (WebInspector.ResourcesPanel.prototype._contextMenu):
2450         * inspector/front-end/utilities.js:
2451         * page/DOMWindow.cpp:
2452         (WebCore::DOMWindow::createObjectURL):
2453         (WebCore::DOMWindow::revokeObjectURL):
2454         * page/DOMWindow.h:
2455         * page/DOMWindow.idl:
2456         * workers/WorkerContext.cpp:
2457         (WebCore::WorkerContext::createObjectURL):
2458         (WebCore::WorkerContext::revokeObjectURL):
2459         * workers/WorkerContext.h:
2460         * workers/WorkerContext.idl:
2461
2462 2010-10-19  Alexey Proskuryakov  <ap@apple.com>
2463
2464         Reviewed by Anders Carlsson.
2465
2466         https://bugs.webkit.org/show_bug.cgi?id=47933
2467         <rdar://problem/8494337> navigator.language doesn't work in WebKit2
2468
2469         * CMakeListsEfl.txt:
2470         * GNUmakefile.am:
2471         * WebCore.gypi:
2472         * WebCore.pro:
2473         * WebCore.vcproj/WebCore.vcproj:
2474         * WebCore.xcodeproj/project.pbxproj:
2475         * platform/chromium/Language.cpp: Removed.
2476         * platform/chromium/LanguageChromium.cpp: Copied from WebCore/platform/chromium/Language.cpp.
2477         * platform/efl/Language.cpp: Removed.
2478         * platform/efl/LanguageEfl.cpp: Copied from WebCore/platform/efl/Language.cpp.
2479         * platform/gtk/Language.cpp: Removed.
2480         * platform/gtk/LanguageGtk.cpp: Copied from WebCore/platform/gtk/Language.cpp.
2481         * platform/qt/Language.cpp: Removed.
2482         * platform/qt/LanguageQt.cpp: Copied from WebCore/platform/qt/Language.cpp.
2483         * platform/win/Language.cpp: Removed.
2484         * platform/win/LanguageWin.cpp: Copied from WebCore/platform/win/Language.cpp.
2485         * platform/Language.cpp: Added.
2486         Cross platform code is now in platform/Language.cpp. So, I renamed platform files to match
2487         the common pattern.
2488
2489         * WebCore.exp.in: Exported new functions.
2490
2491         * platform/Language.h: Added an ability to force the language, and an ability to set up
2492         listeners for changes (if the platform implements that). Web process will always use the
2493         forced language, as sent to it from UI process.
2494
2495         * platform/mac/Language.mm: Moved code from WebKit.
2496         (WebCore::platformDefaultLanguage): Added code to synchronize user defaults. For some reason,
2497         they come unsynchronized in WebKit2 here, unlike WebKit1.
2498
2499         * page/mac/WebCoreViewFactory.h: Removed defaultLanguageCode. WebCore no longer goes to WebKit
2500         to ask for that.
2501
2502         * platform/mac/WebCoreSystemInterface.h:
2503         * platform/mac/WebCoreSystemInterface.mm:
2504         Added wkCopyCFLocalizationPreferredName().
2505
2506 2010-10-19  James Simonsen  <simonjam@chromium.org>
2507
2508         Reviewed by Adam Barth.
2509
2510         Add "in select" insertion mode to parser.
2511
2512         This was added to the spec in:
2513         http://html5.org/tools/web-apps-tracker?from=5520&to=5522
2514
2515         And as a result of:
2516         http://www.w3.org/Bugs/Public/show_bug.cgi?id=10314
2517
2518         https://bugs.webkit.org/show_bug.cgi?id=47706
2519
2520         No new tests. Open to ideas.
2521
2522         * html/parser/HTMLElementStack.cpp: Added "in select" mode.
2523         (WebCore::HTMLNames::isSelectScopeMarker): Ditto.
2524         (WebCore::HTMLElementStack::inSelectScope): Ditto.
2525         * html/parser/HTMLElementStack.h: Ditto.
2526         * html/parser/HTMLTreeBuilder.cpp:
2527         (WebCore::HTMLTreeBuilder::processStartTag): Use "in select" instead of "in table."
2528         (WebCore::HTMLTreeBuilder::processEndTag): Ditto.
2529
2530 2010-10-19  Jeremy Orlow  <jorlow@chromium.org>
2531
2532         Reviewed by Nate Chapin.
2533
2534         Fix multiple index support in IndexedDB
2535         https://bugs.webkit.org/show_bug.cgi?id=47919
2536
2537         Fix 2 bugs that caused the IndexData of all but the last index to be
2538         properly updated:
2539         * The objectStoreDataId is NOT unique if there are multiple indexes. So
2540           remove the constraint.
2541         * Do not delete all existing entries with that objectStoreDataId before
2542           adding an entry for each index. Only do it once at the beginning.
2543
2544         Test: storage/indexeddb/queued-commands.html
2545             + index-basics.html modified
2546
2547         * storage/IDBFactoryBackendImpl.cpp:
2548         (WebCore::createTables):
2549         * storage/IDBObjectStoreBackendImpl.cpp:
2550         (WebCore::deleteIndexData):
2551         (WebCore::putIndexData):
2552         (WebCore::IDBObjectStoreBackendImpl::putInternal):
2553
2554 2010-10-19  Martin Robinson  <mrobinson@igalia.com>
2555
2556         Fix the GTK+ build after r70072. The logic looks incorrect, but
2557         this fix tries to preserves it, even so.
2558
2559         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2560         (baselinePositionForAccessibilityRenderObject):
2561         (getAttributeSetForAccessibilityObject):
2562
2563 2010-10-06  Jer Noble  <jer.noble@apple.com>
2564
2565         Reviewed by Eric Carlson.
2566
2567         Windows: Implement 'preload=none'
2568         https://bugs.webkit.org/show_bug.cgi?id=47317
2569         <rdar://problem/7718442>
2570         
2571         Implement the 'preload=none' identically to the mac implementation. Add three new
2572         ivars: m_preload, m_delayLoad and m_movieURL; and override the MediaPlayerPrivate
2573         functions: prepareToPlay() and setPreload().
2574
2575         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
2576         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
2577             Initialize new ivars m_delayLoad and m_preload.
2578         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::resumeLoad): Added; new.
2579         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load): Split contents between
2580             load and loadInternal.
2581         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::loadInternal): Added; new.
2582         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::prepareToPlay): Added; overrides MediaPlayerPrivate.
2583         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setPreload): Added; overrides MediaPlayerPrivate.
2584         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
2585         
2586 2010-10-19  Enrica Casucci  <enrica@apple.com>
2587
2588         Reviewed by Alexey Proskuryakov.
2589
2590         Upstream support of KeyCodes for iOS
2591         https://bugs.webkit.org/show_bug.cgi?id=47857
2592         
2593         * platform/cocoa/KeyEventCocoa.mm:
2594         (WebCore::windowsKeyCodeForCharCode): Added special handling of keyCodes for iOS.
2595
2596 2010-10-19  Joseph Pecoraro  <joepeck@webkit.org>
2597
2598         Reviewed by David Kilzer.
2599
2600         iOS: ASSERT in Cache::adjustSize running layout tests
2601         https://bugs.webkit.org/show_bug.cgi?id=47873
2602
2603         Inside Cache::pruneDeadResources we loop over the LRU lists and make resources purgeable
2604         with Cache::makeResourcePurgeable(). This wasn't taking into account whether the resource
2605         was already purgeable or not, and the makeResourcePurgeable call was always calling
2606         adjustSize(). Now we make sure makeResourcePurgable only adjusts the size of the Cache's
2607         dead sizes when it first marks the resource purgeable. Likewise, if a resource is marked
2608         as purgeable and then evicted, we should not adjust the size again.
2609
2610         The balancing call is when we have a resource that has been marked as purgeable and we
2611         successfully mark it as no longer purgeable in Cache::resourceForURL.
2612
2613         No test added because this requires testing purgeable memory.
2614
2615         * loader/Cache.cpp:
2616         (WebCore::Cache::makeResourcePurgeable):
2617         (WebCore::Cache::evict):
2618
2619 2010-10-19  Vangelis Kokkevis  <vangelis@chromium.org>
2620
2621         Reviewed by Kenneth Russell.
2622
2623         [chromium] Disable mipmapping for ImageLayer's to prevent memory use and
2624         performance regression.
2625         https://bugs.webkit.org/show_bug.cgi?id=47913
2626         
2627         This patch is a straight revert of the patch committed with issue 46493
2628
2629         * platform/graphics/chromium/ContentLayerChromium.cpp:
2630         (WebCore::ContentLayerChromium::SharedValues::SharedValues):
2631         (WebCore::ContentLayerChromium::updateTextureRect):
2632         * platform/graphics/chromium/ContentLayerChromium.h:
2633         (WebCore::ContentLayerChromium::SharedValues::initialized):
2634         * platform/graphics/chromium/ImageLayerChromium.cpp:
2635         (WebCore::ImageLayerChromium::updateContents):
2636
2637 2010-10-18  Zhenyao Mo  <zmo@google.com>
2638
2639         Reviewed by Kenneth Russell.
2640
2641         gl-teximage.html fails on chromium webkit mac bot
2642         https://bugs.webkit.org/show_bug.cgi?id=47034
2643
2644         * platform/graphics/GraphicsContext3D.cpp: Deal with endians in 16 bit image data.
2645         (WebCore::convertColor16LittleTo8):
2646         (WebCore::convertColor16BigTo8):
2647         (WebCore::doPacking):
2648         * platform/graphics/GraphicsContext3D.h: Ditto.
2649         * platform/graphics/cg/GraphicsContext3DCG.cpp: Ditto.
2650         (WebCore::GraphicsContext3D::getImageData):
2651
2652 2010-10-19  David Hyatt  <hyatt@apple.com>
2653
2654         Reviewed by Dan Bernstein.
2655
2656         https://bugs.webkit.org/show_bug.cgi?id=47841
2657
2658         Rework baselinePosition and lineHeight to be writing-mode-aware.  There's a lot of refactoring here to clean up
2659         the method parameters to be more readable and to simplify the subclassing of the various methods in order to 
2660         keep the horizontal/vertical querying to a minimum.
2661
2662         * WebCore.xcodeproj/project.pbxproj:
2663         * mathml/RenderMathMLFraction.cpp:
2664         (WebCore::RenderMathMLFraction::baselinePosition):
2665         * mathml/RenderMathMLFraction.h:
2666         * mathml/RenderMathMLOperator.cpp:
2667         (WebCore::RenderMathMLOperator::baselinePosition):
2668         * mathml/RenderMathMLOperator.h:
2669         * mathml/RenderMathMLRow.cpp:
2670         (WebCore::RenderMathMLRow::baselinePosition):
2671         * mathml/RenderMathMLRow.h:
2672         * mathml/RenderMathMLSubSup.cpp:
2673         (WebCore::RenderMathMLSubSup::baselinePosition):
2674         * mathml/RenderMathMLSubSup.h:
2675         * mathml/RenderMathMLUnderOver.cpp:
2676         (WebCore::RenderMathMLUnderOver::layout):
2677         (WebCore::RenderMathMLUnderOver::baselinePosition):
2678         * mathml/RenderMathMLUnderOver.h:
2679         * rendering/InlineBox.h:
2680         (WebCore::InlineBox::baselinePosition):
2681         (WebCore::InlineBox::lineHeight):
2682         * rendering/InlineFlowBox.cpp:
2683         (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
2684         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2685         (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
2686         * rendering/InlineTextBox.cpp:
2687         (WebCore::InlineTextBox::baselinePosition):
2688         (WebCore::InlineTextBox::lineHeight):
2689         * rendering/InlineTextBox.h:
2690         * rendering/RenderBR.cpp:
2691         (WebCore::RenderBR::lineHeight):
2692         * rendering/RenderBR.h:
2693         (WebCore::toRenderBR):
2694         * rendering/RenderBlock.cpp:
2695         (WebCore::RenderBlock::lineHeight):
2696         (WebCore::RenderBlock::baselinePosition):
2697         (WebCore::RenderBlock::firstLineBoxBaseline):
2698         (WebCore::RenderBlock::lastLineBoxBaseline):
2699         (WebCore::RenderBlock::localCaretRect):
2700         * rendering/RenderBlock.h:
2701         * rendering/RenderBlockLineLayout.cpp:
2702         (WebCore::RenderBlock::layoutInlineChildren):
2703         * rendering/RenderBox.cpp:
2704         (WebCore::RenderBox::lineHeight):
2705         (WebCore::RenderBox::baselinePosition):
2706         * rendering/RenderBox.h:
2707         * rendering/RenderBoxModelObject.cpp:
2708         (WebCore::RenderBoxModelObject::verticalPosition):
2709         * rendering/RenderBoxModelObject.h:
2710         * rendering/RenderFileUploadControl.cpp:
2711         (WebCore::RenderFileUploadControl::paintObject):
2712         * rendering/RenderFlexibleBox.cpp:
2713         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
2714         (WebCore::RenderFlexibleBox::layoutVerticalBox):
2715         * rendering/RenderInline.cpp:
2716         (WebCore::RenderInline::lineHeight):
2717         (WebCore::RenderInline::baselinePosition):
2718         * rendering/RenderInline.h:
2719         * rendering/RenderListBox.cpp:
2720         (WebCore::RenderListBox::baselinePosition):
2721         * rendering/RenderListBox.h:
2722         * rendering/RenderListMarker.cpp:
2723         (WebCore::RenderListMarker::lineHeight):
2724         (WebCore::RenderListMarker::baselinePosition):
2725         * rendering/RenderListMarker.h:
2726         * rendering/RenderObject.cpp:
2727         * rendering/RenderObject.h:
2728         * rendering/RenderReplaced.cpp:
2729         * rendering/RenderReplaced.h:
2730         * rendering/RenderSVGRoot.cpp:
2731         * rendering/RenderSVGRoot.h:
2732         * rendering/RenderSlider.cpp:
2733         (WebCore::RenderSlider::baselinePosition):
2734         * rendering/RenderSlider.h:
2735         * rendering/RenderTableCell.cpp:
2736         (WebCore::RenderTableCell::baselinePosition):
2737         * rendering/RenderTableCell.h:
2738         * rendering/RenderTableCol.h:
2739         (WebCore::RenderTableCol::isTableCol):
2740         * rendering/RenderTableRow.h:
2741         * rendering/RenderTableSection.h:
2742         * rendering/RenderText.cpp:
2743         * rendering/RenderText.h:
2744         * rendering/RenderTextControl.cpp:
2745         (WebCore::RenderTextControl::computeLogicalHeight):
2746         * rendering/RenderTextControlMultiLine.cpp:
2747         (WebCore::RenderTextControlMultiLine::baselinePosition):
2748         * rendering/RenderTextControlMultiLine.h:
2749         * rendering/RenderTextControlSingleLine.cpp:
2750         (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
2751         * rendering/RootInlineBox.h:
2752         (WebCore::RootInlineBox::baselinePosition):
2753         (WebCore::RootInlineBox::lineHeight):
2754         * rendering/svg/SVGInlineTextBox.cpp:
2755         (WebCore::SVGInlineTextBox::calculateBoundaries):
2756
2757 2010-10-19  Jia Pu  <jpu@apple.com>
2758
2759         Reviewed by Adele Peterson.
2760
2761         Moving cursor back to autocorrected word in the same line shouldn't remove the underline
2762         https://bugs.webkit.org/show_bug.cgi?id=47629
2763         <rdar://problem/8546758>
2764
2765         Tests: platform/mac/editing/spelling/click-autocorrected-word.html
2766                platform/mac/editing/spelling/delete-into-autocorrected-word.html
2767                platform/mac/editing/spelling/delete-into-misspelled-word.html
2768                platform/mac/editing/spelling/forward-delete-into-autocorrected-word.html
2769                platform/mac/editing/spelling/move-cursor-around-misspelled-word.html
2770                platform/mac/editing/spelling/move-cursor-to-autocorrected-word.html
2771                platform/mac/editing/spelling/move-cursor-to-beginning-of-autocorrected-word.html
2772
2773         * editing/Editor.cpp:
2774         (WebCore::Editor::respondToChangedSelection): Don't remove misspelling or autocorrection
2775           underlines when cursor is moved onto a word.
2776
2777 2010-10-19  Eric Carlson  <eric.carlson@apple.com>
2778
2779         Not reviewed. Build fix.
2780
2781         * html/HTMLMediaElement.cpp:
2782         (WebCore::HTMLMediaElement::selectNextSourceChild): Initialize variable to avoid Windows
2783         "potentially uninitialized local variable" warning.
2784
2785 2010-10-19  Eric Carlson  <eric.carlson@apple.com>
2786
2787         Reviewed by Darin Adler.
2788
2789         https://bugs.webkit.org/show_bug.cgi?id=46763
2790         CRASH in WebCore::ThreadTimers::sharedTimerFiredInternal
2791
2792         Fix crashes caused by moving and deleting <source> element(s) of active media element.
2793
2794         Tests: media/video-source-moved.html
2795                media/video-source-removed.html
2796
2797         * html/HTMLMediaElement.cpp:
2798         (WebCore::HTMLMediaElement::HTMLMediaElement): Add logging. Initialize selectNextSourceChild.
2799         (WebCore::HTMLMediaElement::~HTMLMediaElement): Ditto.
2800         (WebCore::HTMLMediaElement::insertedIntoDocument): Ditto.
2801         (WebCore::HTMLMediaElement::removedFromDocument): Ditto.
2802         (WebCore::HTMLMediaElement::scheduleLoad): Ditto.
2803         (WebCore::HTMLMediaElement::setNetworkState): Deal with m_currentSourceNode being null when
2804         the media engine signals a failure by skipping the error message and continuing as usual.
2805         (WebCore::HTMLMediaElement::setVolume): Fix logging typo.
2806         (WebCore::HTMLMediaElement::havePotentialSourceChild): Save and restore m_nextChildNodeToConsider
2807         around call to selectNextSourceChild because they are both significant.
2808         (WebCore::HTMLMediaElement::selectNextSourceChild): Use m_nextChildNodeToConsider to pick
2809         the first node to consider. Bail immediately if it signals that we have already processed 
2810         every <source> node. Stach the node following the current source element in m_nextChildNodeToConsider
2811         so we can resume the search even if m_currentSourceNode is removed while it is being processed.
2812         (WebCore::HTMLMediaElement::sourceWasAdded): New, move logic from HTMLSourceElement::insertedIntoTree
2813         here and correct it to deal with a <source> node being inserted immediately after the
2814         current <source> node and a new <source> node being inserted at the end of the list after
2815         all candidates have failed.
2816         (WebCore::HTMLMediaElement::sourceWillBeRemoved): New, deal with current source node and next
2817         potential node being removed.
2818         * html/HTMLMediaElement.h:
2819         (WebCore::HTMLMediaElement::sourceChildEndOfListValue): New, define sentinal value used to indicate
2820         that all nodes have been processed.
2821
2822         * html/HTMLSourceElement.cpp:
2823         (WebCore::HTMLSourceElement::HTMLSourceElement): Add logging.
2824         (WebCore::HTMLSourceElement::insertedIntoTree): Call mediaElement->sourceWasAdded instead
2825         of having logic here.
2826         (WebCore::HTMLSourceElement::willRemove): New, call mediaElement->sourceWillBeRemoved
2827         (WebCore::HTMLSourceElement::scheduleErrorEvent): Add logging.
2828         (WebCore::HTMLSourceElement::cancelPendingErrorEvent): Add logging.
2829         * html/HTMLSourceElement.h:
2830
2831 2010-10-19  Luiz Agostini  <luiz.agostini@openbossa.org>
2832
2833         Reviewed by Antti Koivisto.
2834
2835         [Qt] WebKit2 MacOS build fix
2836         https://bugs.webkit.org/show_bug.cgi?id=47897
2837
2838         Qt WebKit2 MacOS build fix.
2839
2840         * bridge/npapi.h:
2841
2842 2010-10-19  Philippe Normand  <pnormand@igalia.com>
2843
2844         Reviewed by Xan Lopez.
2845
2846         [GTK] Soup cache code still has some warnings
2847         https://bugs.webkit.org/show_bug.cgi?id=47733
2848
2849         Fixed some compilation warnings happening with gcc 4.4.5 on
2850         64-bits architecture.
2851
2852         * platform/network/soup/cache/webkit/soup-cache.c:
2853         (webkit_soup_cache_entry_set_freshness):
2854         (close_ready_cb):
2855
2856 2010-10-19  Yury Semikhatsky  <yurys@chromium.org>
2857
2858         Reviewed by Pavel Feldman.
2859
2860         Web Inspector: crash while trying to step over a function using inspector
2861         https://bugs.webkit.org/show_bug.cgi?id=47902
2862
2863         * inspector/front-end/ScriptsPanel.js:
2864         (WebInspector.ScriptsPanel.prototype.reset): reset scripts panel to resumed state on navigation.
2865
2866 2010-10-19  Ryuan Choi  <ryuan.choi@samsung.com>
2867
2868         Unreviewed attempt to remove warning in EFL build.
2869
2870         Fix #if to #ifdef.
2871
2872         No new features, so no tests added.
2873
2874         * platform/efl/WidgetEfl.cpp:
2875         (WebCore::Widget::applyFallbackCursor):
2876
2877 2010-10-19  Andreas Kling  <kling@webkit.org>
2878
2879         Reviewed by Tor Arne Vestbø.
2880
2881         [Qt] getImageData returns wrong data for non-0,0 source offset
2882         https://bugs.webkit.org/show_bug.cgi?id=47898
2883
2884         Test: fast/canvas/canvas-getImageData-negative-source.html
2885
2886         * platform/graphics/qt/ImageBufferQt.cpp:
2887         (WebCore::getImageData): Add missing *4's to get correct pixel offset.
2888
2889 2010-10-19  Andreas Kling  <kling@webkit.org>
2890
2891         Reviewed by Kenneth Rohde Christiansen.
2892
2893         [Qt] Correct initial state of ImageBuffer QPen
2894         https://bugs.webkit.org/show_bug.cgi?id=47804
2895
2896         Have the QPen on ImageBuffers start in Qt::SvgMiterJoin mode.
2897
2898         * platform/graphics/qt/ImageBufferQt.cpp:
2899         (WebCore::ImageBufferData::ImageBufferData):
2900
2901 2010-10-19  Philippe Normand  <pnormand@igalia.com>
2902
2903         Reviewed by Martin Robinson.
2904
2905         GStreamer PlatformVideoWindow needs an API to prepare the widget before applying the overlay
2906         https://bugs.webkit.org/show_bug.cgi?id=46790
2907
2908         Simple API addition to PlatformVideoWindow to allow
2909         implementations to optionally prepare their own PlatformWidget
2910         before applying the GStreamer XOverlay to it. This will likely be
2911         needed on Mac OSX only.
2912
2913         * platform/graphics/gstreamer/GStreamerGWorld.cpp:
2914         (WebCore::GStreamerGWorld::setWindowOverlay):
2915         * platform/graphics/gstreamer/PlatformVideoWindow.h:
2916         * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp:
2917         (PlatformVideoWindow::prepareForOverlay):
2918         * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp:
2919         (PlatformVideoWindow::prepareForOverlay):
2920
2921 2010-10-19  Ben Murdoch  <benm@google.com>
2922
2923         Reviewed by Steve Block.
2924
2925         Missing support for document.createTouch and document.createTouchList
2926         https://bugs.webkit.org/show_bug.cgi?id=47676
2927
2928         These APIs are used by many sites to detect support for touch events.
2929
2930         Implement the APIs according to the documentation at:
2931         http://developer.apple.com/library/safari/#documentation/UserExperience/Reference/DocumentAdditionsReference/DocumentAdditions/DocumentAdditions.html
2932
2933         Tests: fast/events/touch/document-create-touch-list.html
2934                fast/events/touch/document-create-touch.html
2935
2936         * bindings/js/JSBindingsAllInOne.cpp: Add new files to list.
2937         * bindings/js/JSTouchCustom.cpp: Added.
2938         (WebCore::toJSNewlyCreated):
2939         * bindings/js/JSTouchListCustom.cpp: Added.
2940         (WebCore::toJSNewlyCreated):
2941         * bindings/scripts/CodeGeneratorJS.pm:
2942         * dom/Document.cpp:
2943         (WebCore::Document::createTouch):
2944         (WebCore::Document::createTouchList):
2945         * dom/Document.h:
2946         * dom/Document.idl: Add createTouch and createTouchList functions.
2947         * Android.jscbindings.mk: Update makefiles.
2948         * CMakeLists.txt: Ditto.
2949         * GNUmakefile.am: Ditto.
2950         * WebCore.gypi: Ditto.
2951         * WebCore.pro: Ditto.
2952
2953
2954 2010-10-19  Pavel Feldman  <pfeldman@chromium.org>
2955
2956         Reviewed by Yury Semikhatsky.
2957
2958         Web Inspector: migrate from legacy Object.properties to Object.keys, remove dead code.
2959         https://bugs.webkit.org/show_bug.cgi?id=47890
2960
2961         * inspector/front-end/ConsoleView.js:
2962         (WebInspector.ConsoleView.prototype._reportCompletions):
2963         * inspector/front-end/ElementsPanel.js:
2964         (WebInspector.ElementsPanel):
2965         * inspector/front-end/ExtensionServer.js:
2966         (WebInspector.ExtensionServer.prototype._onGetResources):
2967         * inspector/front-end/HAREntry.js:
2968         (WebInspector.HARLog.prototype.build):
2969         * inspector/front-end/StylesSidebarPane.js:
2970         (WebInspector.StylePropertyTreeElement.prototype.):
2971         (WebInspector.StylePropertyTreeElement.prototype):
2972         * inspector/front-end/utilities.js:
2973
2974 2010-10-19  Pavel Feldman  <pfeldman@chromium.org>
2975
2976         Reviewed by Yury Semikhatsky.
2977
2978         Web Inspector: do not access ResourcePanel from resources directly.
2979         https://bugs.webkit.org/show_bug.cgi?id=47892
2980
2981         * inspector/front-end/Resource.js:
2982         (WebInspector.Resource.prototype.set documentURL):
2983         (WebInspector.Resource.prototype.set startTime):
2984         (WebInspector.Resource.prototype.set responseReceivedTime):
2985         (WebInspector.Resource.prototype.set endTime):
2986         (WebInspector.Resource.prototype.set resourceSize):
2987         (WebInspector.Resource.prototype.set expectedContentLength):
2988         (WebInspector.Resource.prototype.set category):
2989         (WebInspector.Resource.prototype.set cached):
2990         (WebInspector.Resource.prototype.set mimeType):
2991         (WebInspector.Resource.prototype.get requestHeaders):
2992         (WebInspector.Resource.prototype.set requestHeaders):
2993         (WebInspector.Resource.prototype.get responseHeaders):
2994         (WebInspector.Resource.prototype.set responseHeaders):
2995         * inspector/front-end/ResourcesPanel.js:
2996         (WebInspector.ResourcesPanel.prototype.addResource):
2997         (WebInspector.ResourcesPanel.prototype.refreshResource):
2998         (WebInspector.ResourcesPanel.prototype._recreateViewForResourceIfNeeded):
2999         (WebInspector.ResourcesPanel.prototype._resourceViewIsConsistentWithCategory):
3000         (WebInspector.ResourceGraph):
3001         (WebInspector.ResourceGraph.prototype.refresh):
3002         * inspector/front-end/inspector.js:
3003         (WebInspector.updateResource):
3004
3005 2010-10-19  Yuta Kitamura  <yutak@chromium.org>
3006
3007         Reviewed by Pavel Feldman.
3008
3009         Make sure WebSocket resource has the url field when it is created.
3010
3011         Web Inspector: Uncaught TypeError when connection to WebSocket server is refused
3012         https://bugs.webkit.org/show_bug.cgi?id=47891
3013
3014         * inspector/InspectorResource.cpp:
3015         (WebCore::InspectorResource::createWebSocket):
3016
3017 2010-10-19  Hayato Ito  <hayato@chromium.org>
3018
3019         Reviewed by Darin Adler.
3020
3021         Make CSS style selector non-recursive.
3022         https://bugs.webkit.org/show_bug.cgi?id=43783
3023
3024         This change is one of the required changes to fix the following master bug:
3025         https://bugs.webkit.org/show_bug.cgi?id=42806
3026
3027         To avoid recursion, we prepare a call stack and maintain a list of
3028         function call state by ourselves and try matching iteratively.
3029
3030         Test: fast/css/long-css-selector-matches.html
3031
3032         * css/CSSStyleSelector.cpp:
3033         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
3034         (WebCore::CSSStyleSelector::checkSelector):
3035         * css/CSSStyleSelector.h:
3036
3037 2010-10-19  Sheriff Bot  <webkit.review.bot@gmail.com>
3038
3039         Unreviewed, rolling out r70034.
3040         http://trac.webkit.org/changeset/70034
3041         https://bugs.webkit.org/show_bug.cgi?id=47889
3042
3043         "Gustavo's bot is lame" (Requested by xan_ on #webkit).
3044
3045         * platform/network/soup/CookieJarSoup.cpp:
3046         (WebCore::defaultCookieJar):
3047         (WebCore::setCookies):
3048         * platform/network/soup/ResourceHandleSoup.cpp:
3049         (WebCore::ResourceHandle::prepareForURL):
3050         (WebCore::restartedCallback):
3051         (WebCore::startHttp):
3052         * platform/network/soup/ResourceRequestSoup.cpp:
3053         (WebCore::ResourceRequest::toSoupMessage):
3054         (WebCore::ResourceRequest::updateFromSoupMessage):
3055
3056 2010-10-19  Xan Lopez  <xlopez@igalia.com>
3057
3058         Reviewed by Martin Robinson.
3059
3060         [GTK] Bump minimum requirement for libsoup to 2.30
3061         https://bugs.webkit.org/show_bug.cgi?id=46176
3062
3063         Bump minimum required libsoup version to 2.30.
3064
3065         * platform/network/soup/CookieJarSoup.cpp:
3066         (WebCore::defaultCookieJar):
3067         (WebCore::setCookies):
3068         * platform/network/soup/ResourceHandleSoup.cpp:
3069         (WebCore::ResourceHandle::prepareForURL):
3070         (WebCore::restartedCallback):
3071         (WebCore::startHttp):
3072         * platform/network/soup/ResourceRequestSoup.cpp:
3073         (WebCore::ResourceRequest::toSoupMessage):
3074         (WebCore::ResourceRequest::updateFromSoupMessage):
3075
3076 2010-10-19  Xan Lopez  <xlopez@igalia.com>
3077
3078         Reviewed by Martin Robinson.
3079
3080         Fix distcheck, take 2.
3081
3082         * GNUmakefile.am: also move the generated CSS hash files to the
3083         build dir.
3084
3085 2010-10-18  Kent Tamura  <tkent@chromium.org>
3086
3087         Reviewed by Dimitri Glazkov.
3088
3089         Should not save state of a detached form control.
3090         https://bugs.webkit.org/show_bug.cgi?id=47811
3091
3092         Test: fast/forms/state-save-of-detached-control.html
3093
3094         * html/HTMLFormControlElement.cpp:
3095         (WebCore::HTMLFormControlElementWithState::shouldSaveAndRestoreFormControlState):
3096           If the node is detached, don't save the state.
3097
3098 2010-10-18  Xan Lopez  <xlopez@igalia.com>
3099
3100         Reviewed by Martin Robinson.
3101
3102         * GNUmakefile.am: add missing files.
3103
3104 2010-10-18  Oliver Hunt  <oliver@apple.com>
3105
3106         Reviewed by Sam Weinig.
3107
3108         REGRESSION: Feedly extension crashes Webkit
3109         https://bugs.webkit.org/show_bug.cgi?id=45811
3110
3111         The basic problem was the deserializer was holding a pointer into
3112         the constant pool, but if you were sufficiently unlucky then the
3113         constant pool would be moved while still relying on the pointer,
3114         which leads to badness.
3115
3116         I looked at just making all the sites this could happen extract the
3117         right string/jsstring before any possible allocations, but it seemed
3118         too fragile so i've gone for a forwarding object as the solution.
3119
3120         * bindings/js/SerializedScriptValue.cpp:
3121         (WebCore::CloneDeserializer::CachedStringRef::CachedStringRef):
3122         (WebCore::CloneDeserializer::CachedStringRef::operator->):
3123         (WebCore::CloneDeserializer::readStringData):
3124         (WebCore::CloneDeserializer::readFile):
3125         (WebCore::CloneDeserializer::readTerminal):
3126         (WebCore::CloneDeserializer::deserialize):
3127
3128 2010-10-18  Chris Rogers  <crogers@google.com>
3129
3130         Reviewed by Chris Fleizach.
3131
3132         Add AudioResampler files
3133         https://bugs.webkit.org/show_bug.cgi?id=47623
3134
3135         No new tests since audio API is not yet implemented.
3136
3137         * platform/audio/AudioResampler.cpp: Added.
3138         (WebCore::AudioResampler::AudioResampler):
3139         (WebCore::AudioResampler::configureChannels):
3140         (WebCore::AudioResampler::process):
3141         (WebCore::AudioResampler::setRate):
3142         (WebCore::AudioResampler::reset):
3143         * platform/audio/AudioResampler.h: Added.
3144         (WebCore::AudioResampler::~AudioResampler):
3145         (WebCore::AudioResampler::rate):
3146
3147 2010-10-18  Vangelis Kokkevis  <vangelis@chromium.org>
3148
3149         Reviewed by James Robinson.
3150
3151         [chromium] Prevent the creation of very large textures for layers by switching
3152         to "large layer" mode when a texture is larger than some fixed reasonable size
3153         (set to 2000 pixels for now).
3154         https://bugs.webkit.org/show_bug.cgi?id=47751
3155
3156         The code also changes the large layer logic to use the current scissor rect used
3157         by the compositor instead of the visible rect to determine how to clip large layers.
3158         This will provide additional texture savings. In addition, the various layer rects
3159         have been converted to use integers instead of floats to preserve uniformity in the code.
3160         
3161         Tests: Existing large layer layout tests including huge-layer and huge-layer-img
3162
3163         * platform/graphics/chromium/ContentLayerChromium.cpp:
3164         (WebCore::ContentLayerChromium::requiresClippedUpdateRect):
3165         (WebCore::ContentLayerChromium::calculateClippedUpdateRect):
3166         * platform/graphics/chromium/LayerChromium.cpp:
3167         (WebCore::LayerChromium::getDrawRect):
3168         * platform/graphics/chromium/LayerChromium.h:
3169         * platform/graphics/chromium/LayerRendererChromium.cpp:
3170         (WebCore::LayerRendererChromium::drawLayers):
3171         (WebCore::LayerRendererChromium::drawLayersRecursive):
3172         (WebCore::LayerRendererChromium::scissorToRect):
3173         * platform/graphics/chromium/LayerRendererChromium.h:
3174         (WebCore::LayerRendererChromium::currentScissorRect):
3175
3176 2010-10-18  Jia Pu  <jpu@apple.com>
3177
3178         Reviewed by Stephanie Lewis.
3179
3180         Correct the description of manual test: autocorrection-cancelled-by-typing-1.html
3181         https://bugs.webkit.org/show_bug.cgi?id=47722
3182         <rdar://problem/8556206>
3183
3184         * manual-tests/autocorrection/autocorrection-cancelled-by-typing-1.html: Update description
3185           to match the test content.
3186
3187 2010-10-18  Martin Robinson  <mrobinson@igalia.com>
3188
3189         Build fix for newer versions of GTK+ 2.0. Instead of using GDK_DISPLAY()
3190         use GDK_DRAWABLE_XDISPLAY(gdk_display_get_default()). GDK_DISPLAY() was
3191         recently deprecated and the latter method has been available since GTK+
3192         2.2.
3193
3194         * plugins/gtk/PluginViewGtk.cpp:
3195         (WebCore::PluginView::updatePluginWidget):
3196         (WebCore::PluginView::paint):
3197         (WebCore::PluginView::initXEvent):
3198         (WebCore::PluginView::platformGetValue):
3199         (WebCore::getVisualAndColormap):
3200         (WebCore::PluginView::platformStart):
3201         (WebCore::PluginView::platformDestroy):
3202
3203 2010-10-18  Ryosuke Niwa  <rniwa@webkit.org>
3204
3205         Reviewed by Adam Barth.
3206
3207         elementCannotHaveEndTag should be a member function of MarkupAccumulator
3208         https://bugs.webkit.org/show_bug.cgi?id=47846
3209
3210         Moved elementCannotHaveEndTag into MarkupAccumulator.
3211
3212         No new tests are added since this is a cleanup.
3213
3214         * editing/MarkupAccumulator.cpp:
3215         (WebCore::MarkupAccumulator::elementCannotHaveEndTag): Added.
3216         * editing/MarkupAccumulator.h: Added MarkupAccumulator::elementCannotHaveEndTag.
3217         * editing/markup.cpp: Removed elementCannotHaveEndTag.
3218         * editing/markup.h: Removed elementCannotHaveEndTag.
3219
3220 2010-10-18  Johnny Ding  <jnd@chromium.org>
3221
3222         Reviewed by Adam Barth.
3223
3224         Set the right referent sourceURL for the script with force user gesture.
3225         https://bugs.webkit.org/show_bug.cgi?id=37138
3226
3227         Because empty sourceURL indicates running script with force user gesture,
3228         make WebKit use document.url() as referent sourceURL (Since it uses blank
3229         URL instead empty if the input URL is empty) if WebKit isn't running the
3230         script from a hyper-link.
3231
3232         Test: fast/events/popup-blocked-from-window-open.html
3233
3234         * bindings/ScriptControllerBase.cpp:
3235         (WebCore::ScriptController::executeScript):
3236         * bindings/js/ScriptController.cpp:
3237         (WebCore::ScriptController::executeScriptInWorld):
3238
3239 2010-10-18  Darin Adler  <darin@apple.com>
3240
3241         * dom/Node.h: Fix ancient typo in just-modified comment.
3242
3243 2010-10-18  Darin Adler  <darin@apple.com>
3244
3245         Reviewed by Alexey Proskuryakov.
3246
3247         Remove some functions from class Node and make a few others non-virtual
3248         https://bugs.webkit.org/show_bug.cgi?id=47735
3249
3250         Refactoring. No new tests.
3251
3252         * bindings/js/JSNodeCustom.cpp:
3253         (WebCore::JSNode::markChildren): Added a FIXME about the use of the virtual
3254         ownerDocument function.
3255
3256         * dom/ContainerNode.cpp:
3257         (WebCore::ContainerNode::removeChildren): Removed the unused return value.
3258
3259         * dom/ContainerNode.h: Made insertBefore, replaceChild, removeChild, and
3260         appendChild non-virtual for clarity and performance. Made removeChildren
3261         non-virtual and removed its return value. Moved the inline Node functions
3262         that call through to ContainerNode into this file since the old way involved
3263         an extra level of inline function but otherwise had no advantages.
3264
3265         * dom/Element.h: Moved isMathMLElement here because there is no call site
3266         that needs to call it on a Node*. We can always move it back if we need to,
3267         but it's better to have less in the Node class.
3268
3269         * dom/Node.cpp:
3270         (WebCore::Node::insertBefore): Added an isContainerNode check so this can
3271         be non-virtual. There are very few callers who call this function on Node.
3272         If we want to optimize them further we can make the isContainerNode check
3273         inline in the future.
3274         (WebCore::Node::replaceChild): Ditto.
3275         (WebCore::Node::removeChild): Ditto.
3276         (WebCore::Node::appendChild): Ditto.
3277         (WebCore::Node::remove): Removed unneeded ref/unref because
3278         ContainerNode::removeChild already does this.
3279         (WebCore::Node::createRendererIfNeeded): Removed #if around call to
3280         childShouldCreateRenderer since it's needed even without SVG and XHTMLMP.
3281
3282         * dom/Node.h: Moved definitions of inline functions that depend on
3283         ContainerNode to the ContainerNode.h header. They already required inclusion
3284         of that header, so there is no functional change. Made insertBefore,
3285         replaceChild, removeChild, and appendChild non-virtual. There are very few
3286         callers of these functions on this class. Moved isMathMLElement to Element.
3287         Added a FIXME about the name of eventAncestors. Fixed comment formatting.
3288         Eliminated unused isEditableBlock function. Moved the body of the
3289         enclosingInlineElement function to the editing file that was the only
3290         call site. Removed the previousEditable and nextEditable functions,
3291         incorporating their bodies into the one place they were called.
3292         Took the childShouldCreateRenderer function out of #if since it's
3293         now used by the implementation of the <noscript> element.
3294
3295         * dom/Position.cpp:
3296         (WebCore::nextRenderedEditable): Rewrote the function to use nextLeafNode
3297         instead of nextEditable.
3298         (WebCore::previousRenderedEditable): Rewrote the function to use
3299         previousLeafNode instead of previousEditable.
3300
3301         * editing/ReplaceSelectionCommand.cpp:
3302         (WebCore::enclosingInline): Moved function here from the Node class. Also
3303         fixed an incorrect cast this function did, which assumed the function
3304         result was always an element, which the function does not guarantee.
3305         (WebCore::ReplaceSelectionCommand::doApply): Call the function above.
3306
3307         * history/HistoryItem.cpp: Added include of MathExtras.h.
3308
3309 2010-10-18  Yongjun Zhang  <yongjun_zhang@apple.com>
3310
3311         Reviewed by Darin Adler.
3312
3313         Missing support for document.createEvent("OrientationEvent")
3314         https://bugs.webkit.org/show_bug.cgi?id=32492
3315
3316         Add support for document.createEvent("OrientationEvent") to help unit testing of
3317         onOrientationChange event.
3318
3319         Test: fast/dom/DeviceOrientation/create-event-onorientationchange.html
3320
3321         * dom/Document.cpp:
3322         (WebCore::Document::createEvent):
3323
3324 2010-10-18  Jeremy Orlow  <jorlow@chromium.org>
3325
3326         Reviewed by Darin Adler.
3327
3328         DOMStringList should return null if the index is out of range
3329         https://bugs.webkit.org/show_bug.cgi?id=47829
3330
3331         When item() returns a null string, it needs to be passed to JS as
3332         null. The indexed getter will then magically do the right thing.
3333         So all that's left is having DOMStringList::item() return null when
3334         the index is out of bounds.
3335
3336         * dom/DOMStringList.cpp:
3337         (WebCore::DOMStringList::item):
3338         * dom/DOMStringList.h:
3339         * dom/DOMStringList.idl:
3340
3341 2010-10-18  Girish Ramakrishnan  <girish@forwardbias.in>
3342
3343         Reviewed by Ariya Hidayat.
3344
3345         [Qt] Implement Accelerated Composition for NPAPI Plugins.
3346
3347         https://bugs.webkit.org/show_bug.cgi?id=35524
3348
3349         * plugins/PluginView.h:
3350         (WebCore::PluginView::platformLayer):
3351         * plugins/qt/PluginViewQt.cpp:
3352         (WebCore::PluginGraphicsLayerQt::PluginGraphicsLayerQt):
3353         (WebCore::PluginGraphicsLayerQt::~PluginGraphicsLayerQt):
3354         (WebCore::PluginGraphicsLayerQt::paint):
3355         (WebCore::PluginView::updatePluginWidget):
3356         (WebCore::PluginView::paint):
3357         (WebCore::PluginView::invalidateRect):
3358         (WebCore::PluginView::invalidateRegion):
3359         (WebCore::PluginView::platformStart):
3360         (WebCore::PluginView::platformLayer):
3361
3362 2010-10-18  Stuart Morgan  <stuartmorgan@chromium.org>
3363
3364         Reviewed by Eric Seidel.
3365
3366         Switch to using the new Carbon NPAPI event declarations, and remove
3367         the old ones.
3368
3369         https://bugs.webkit.org/show_bug.cgi?id=40784
3370
3371         * bridge/npapi.h:
3372         * plugins/mac/PluginViewMac.mm:
3373         (WebCore::PluginView::setFocus):
3374         (WebCore::PluginView::handleMouseEvent):
3375
3376 2010-10-18  Pavel Feldman  <pfeldman@chromium.org>
3377
3378         Reviewed by Yury Semikhatsky.
3379
3380         Web Inspector: comment out resource manager instantiation on front-end side.
3381         https://bugs.webkit.org/show_bug.cgi?id=47823
3382
3383         * inspector/front-end/inspector.js:
3384
3385 2010-10-18  Andrei Popescu  <andreip@google.com>
3386
3387         Reviewed by Jeremy Orlow.
3388
3389         The description parameter of IDBFactory::open() should be mandatory.
3390         https://bugs.webkit.org/show_bug.cgi?id=47835
3391
3392         Makes the description parameter mandatory, as per the IndexedDatabase specification.
3393         Modified existing tests to cover this change.
3394
3395         * storage/IDBDatabaseBackendImpl.cpp:
3396         (WebCore::extractMetaData):
3397         (WebCore::setMetaData):
3398         (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
3399         * storage/IDBFactory.cpp:
3400         (WebCore::IDBFactory::open):
3401         * storage/IDBFactory.h:
3402         * storage/IDBFactory.idl:
3403
3404 2010-10-18  Xiaomei Ji  <xji@chromium.org>
3405
3406         Reviewed by David Levin.
3407
3408         Code cleanup: Move most function members in TextRunWorker from inlined.
3409         https://bugs.webkit.org/show_bug.cgi?id=47732
3410
3411         No functionality change, so no tests added.
3412
3413         * platform/graphics/chromium/FontLinux.cpp:
3414         (WebCore::TextRunWalker::setWordSpacingAdjustment):
3415         (WebCore::TextRunWalker::setLetterSpacingAdjustment):
3416         (WebCore::TextRunWalker::setXOffsetToZero):
3417         (WebCore::TextRunWalker::rtl):
3418         (WebCore::TextRunWalker::glyphs):
3419         (WebCore::TextRunWalker::length):
3420         (WebCore::TextRunWalker::xPositions):
3421         (WebCore::TextRunWalker::advances):
3422         (WebCore::TextRunWalker::width):
3423         (WebCore::TextRunWalker::logClusters):
3424         (WebCore::TextRunWalker::numCodePoints):
3425         (WebCore::TextRunWalker::fontPlatformDataForScriptRun):
3426         (WebCore::TextRunWalker::isCodepointSpace):
3427         (WebCore::TextRunWalker::TextRunWalker):
3428         (WebCore::TextRunWalker::~TextRunWalker):
3429         (WebCore::TextRunWalker::isWordBreak):
3430         (WebCore::TextRunWalker::setPadding):
3431         (WebCore::TextRunWalker::reset):
3432         (WebCore::TextRunWalker::setBackwardsIteration):
3433         (WebCore::TextRunWalker::nextScriptRun):
3434         (WebCore::TextRunWalker::widthOfFullRun):
3435         (WebCore::TextRunWalker::getTextRun):
3436         (WebCore::TextRunWalker::getNormalizedTextRun):
3437         (WebCore::TextRunWalker::setupFontForScriptRun):
3438         (WebCore::TextRunWalker::allocHarfbuzzFont):
3439         (WebCore::TextRunWalker::deleteGlyphArrays):
3440         (WebCore::TextRunWalker::createGlyphArrays):
3441         (WebCore::TextRunWalker::resetGlyphArrays):
3442         (WebCore::TextRunWalker::shapeGlyphs):
3443         (WebCore::TextRunWalker::setGlyphXPositions):
3444         (WebCore::TextRunWalker::mirrorCharacters):
3445
3446 2010-10-18  No'am Rosenthal  <noam.rosenthal@nokia.com>
3447
3448         Reviewed by Andreas Kling.
3449
3450         [Qt] AC rendering bugs
3451         There were a few missing connections in Qt AC between GraphicsLayer and plugins, like changing the plugin's geometry to the layer's
3452         contentsRect, and making sure media layers handle ParentChange events and setContentsNeedsDisplay. Now media layers behave correctly.
3453
3454         https://bugs.webkit.org/show_bug.cgi?id=47571
3455
3456         No new tests. This is in preparation for fixing AC+plugins, which already has tests that don't work yet with Qt.
3457
3458         * platform/graphics/qt/GraphicsLayerQt.cpp:
3459         (WebCore::GraphicsLayerQtImpl::flushChanges):
3460         (WebCore::GraphicsLayerQt::setContentsNeedsDisplay):
3461         * platform/graphics/qt/GraphicsLayerQt.h:
3462
3463 2010-10-18  Pavel Feldman  <pfeldman@chromium.org>
3464
3465         Reviewed by Simon Fraser.
3466
3467         Web Inspector: [crash] when Inspector Open in CSSStyleSelector::loadPendingImages().
3468         https://bugs.webkit.org/show_bug.cgi?id=46224
3469
3470         * CMakeLists.txt:
3471         * GNUmakefile.am:
3472         * WebCore.gypi:
3473         * WebCore.pro:
3474         * WebCore.vcproj/WebCore.vcproj:
3475         * WebCore.xcodeproj/project.pbxproj:
3476         * inspector/InspectorClient.cpp: Added.
3477         (WebCore::InspectorClient::doDispatchMessageOnFrontendPage):
3478         * inspector/InspectorClient.h:
3479         (WebCore::InspectorClient::InspectorClient):
3480
3481 2010-10-18  Andrei Popescu  <andreip@google.com>
3482
3483         Reviewed by Jeremy Orlow.
3484
3485         IDBKeyTree.h is no longer used.
3486         https://bugs.webkit.org/show_bug.cgi?id=47824
3487
3488         No new tests, just removing unused files.
3489
3490         * WebCore.gypi:
3491         * WebCore.xcodeproj/project.pbxproj:
3492         * storage/IDBKeyTree.h: Removed.
3493
3494 2010-10-18  Andreas Kling  <kling@webkit.org>
3495
3496         Unreviewed buildfix for Qt + V8.
3497         Add missing <wtf/text/CString.h> include.
3498
3499         * inspector/InspectorInstrumentation.cpp:
3500
3501 2010-10-18  Ilya Tikhonovsky  <loislo@chromium.org>
3502
3503         Reviewed by Yury Semikhatsky.
3504
3505         Web Inspector: toJSON serialization for Numbers should be fixed.
3506         DecimalNumber is used instead of printf.
3507
3508         https://bugs.webkit.org/show_bug.cgi?id=43832
3509
3510         * inspector/InspectorValues.cpp:
3511         (WebCore::InspectorBasicValue::writeJSON):
3512
3513 2010-10-18  Ilya Tikhonovsky  <loislo@chromium.org>
3514
3515         Reviewed by Yury Semikhatsky.
3516
3517         Web Inspector: [REGRESSION] Inspector window visible during run-webkit-tests.
3518         The initial state of an inspector setting should stay untouched
3519         if the profile has no value for it.
3520
3521         https://bugs.webkit.org/show_bug.cgi?id=47785
3522
3523         * inspector/InspectorState.cpp:
3524         (WebCore::InspectorState::loadFromSettings):
3525
3526 2010-10-18  Pavel Feldman  <pfeldman@chromium.org>
3527
3528         Reviewed by Yury Semikhatsky.
3529
3530         Web Inspector: tab headers on resource panel are 1px off on Mac.
3531         https://bugs.webkit.org/show_bug.cgi?id=47798
3532
3533         * inspector/front-end/inspector.css:
3534         (.tabbed-pane-header li):
3535
3536 2010-10-18  Pavel Feldman  <pfeldman@chromium.org>
3537
3538         Not reviewed. Build fix.
3539
3540         * inspector/InspectorResourceAgent.cpp:
3541         (WebCore::cachedResourceTypeString):
3542
3543 2010-10-17  Pavel Feldman  <pfeldman@chromium.org>
3544
3545         Reviewed by Yury Semikhatsky.
3546
3547         Web Inspector: Introduce InspectorResourceAgent.h/cpp and ResourceManager.js to
3548         fill network panel with data.
3549         https://bugs.webkit.org/show_bug.cgi?id=47779
3550         
3551         InspectorResourceAgent instance / JS part are introduced in this patch. Agent's lifetime is equal
3552         to the front-end's. This new resource agent does not have state, instead it covers two functions:
3553          1) forwards loader client messages to the front-end 2) is capable of building a tree of cached resources.
3554         (1) feeds network panel with data, (2) shows the resource tree in the new ResourcesPanel concept.
3555         This bug is for extracting this new InspectorResourceAgent class and its javascript counterpart.
3556         Once resources panel is refactored for the new concept, InspectorResource, InspectorController's
3557         resource-related routines, inspector.js's code dealing with resources, they all will be gone.
3558
3559         * WebCore.gypi:
3560         * WebCore.vcproj/WebCore.vcproj:
3561         * inspector/CodeGeneratorInspector.pm:
3562         * inspector/Inspector.idl:
3563         * inspector/InspectorApplicationCacheAgent.cpp:
3564         (WebCore::InspectorApplicationCacheAgent::didReceiveManifestResponse):
3565         * inspector/InspectorController.cpp:
3566         (WebCore::InspectorController::connectFrontend):
3567         (WebCore::InspectorController::releaseFrontendLifetimeAgents):
3568         (WebCore::InspectorController::didCommitLoad):
3569         (WebCore::InspectorController::frameDetachedFromParent):
3570         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
3571         (WebCore::InspectorController::identifierForInitialRequest):
3572         (WebCore::InspectorController::willSendRequest):
3573         (WebCore::InspectorController::markResourceAsCached):
3574         (WebCore::InspectorController::didReceiveResponse):
3575         (WebCore::InspectorController::didReceiveContentLength):
3576         (WebCore::InspectorController::didFinishLoading):
3577         (WebCore::InspectorController::didFailLoading):
3578         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
3579         (WebCore::InspectorController::scriptImported):
3580         (WebCore::InspectorController::didCreateWebSocket):
3581         (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
3582         (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
3583         (WebCore::InspectorController::didCloseWebSocket):
3584         * inspector/InspectorController.h:
3585         * inspector/InspectorResource.cpp:
3586         (WebCore::InspectorResource::updateResponse):
3587         (WebCore::cachedResourceType):
3588         (WebCore::InspectorResource::type):
3589         (WebCore::InspectorResource::sourceString):
3590         (WebCore::InspectorResource::sourceBytes):
3591         (WebCore::InspectorResource::endTiming):
3592         * inspector/InspectorResourceAgent.cpp:
3593         (WebCore::InspectorResourceAgent::resourceContent):
3594         (WebCore::InspectorResourceAgent::resourceContentBase64):
3595         (WebCore::InspectorResourceAgent::resourceData):
3596         (WebCore::InspectorResourceAgent::cachedResource):
3597         (WebCore::buildObjectForHeaders):
3598         (WebCore::buildObjectForTiming):
3599         (WebCore::buildObjectForResourceRequest):
3600         (WebCore::buildObjectForResourceResponse):
3601         (WebCore::buildObjectForMainResource):
3602         (WebCore::cachedResourceTypeString):
3603         (WebCore::buildObjectForCachedResource):
3604         (WebCore::buildObjectForFrameResources):
3605         (WebCore::InspectorResourceAgent::~InspectorResourceAgent):
3606         (WebCore::InspectorResourceAgent::identifierForInitialRequest):
3607         (WebCore::InspectorResourceAgent::willSendRequest):
3608         (WebCore::InspectorResourceAgent::markResourceAsCached):
3609         (WebCore::InspectorResourceAgent::didReceiveResponse):
3610         (WebCore::InspectorResourceAgent::didReceiveContentLength):
3611         (WebCore::InspectorResourceAgent::didFinishLoading):
3612         (WebCore::InspectorResourceAgent::didFailLoading):
3613         (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
3614         (WebCore::InspectorResourceAgent::setOverrideContent):
3615         (WebCore::InspectorResourceAgent::didCommitLoad):
3616         (WebCore::InspectorResourceAgent::frameDetachedFromParent):
3617         (WebCore::createReadableStringFromBinary):
3618         (WebCore::InspectorResourceAgent::didCreateWebSocket):
3619         (WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):
3620         (WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):
3621         (WebCore::InspectorResourceAgent::didCloseWebSocket):
3622         (WebCore::InspectorResourceAgent::cachedResources):
3623         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
3624         * inspector/InspectorResourceAgent.h:
3625         (WebCore::InspectorResourceAgent::create):
3626         * inspector/InspectorStyleSheet.cpp:
3627         (WebCore::InspectorStyleSheet::resourceStyleSheetText):
3628         * inspector/front-end/ExtensionServer.js:
3629         (WebInspector.ExtensionServer.prototype._onRevealAndSelectResource):
3630         (WebInspector.ExtensionServer.prototype._onGetResourceContent):
3631         * inspector/front-end/Resource.js:
3632         (WebInspector.Resource.prototype.get responseReceivedTime):
3633         (WebInspector.Resource.prototype.set endTime):
3634         * inspector/front-end/Settings.js:
3635         * inspector/front-end/SourceView.js:
3636         (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
3637         * inspector/front-end/WebKit.qrc:
3638         * inspector/front-end/inspector.css:
3639         (.tabbed-pane-header li):
3640         * inspector/front-end/inspector.html:
3641         * inspector/front-end/inspector.js:
3642         (WebInspector.updateResource):
3643         * loader/ResourceLoadNotifier.cpp:
3644         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
3645         * loader/appcache/ApplicationCacheGroup.cpp:
3646         (WebCore::ApplicationCacheGroup::didReceiveResponse):
3647
3648 2010-10-16  Pavel Feldman  <pfeldman@chromium.org>
3649
3650         Reviewed by Yury Semikhatsky.
3651
3652         Web Inspector: brush up URL parsing on the front-end.
3653         https://bugs.webkit.org/show_bug.cgi?id=47772
3654
3655         * inspector/InspectorResource.cpp:
3656         (WebCore::InspectorResource::updateScriptObject):
3657         * inspector/front-end/AuditRules.js:
3658         (WebInspector.AuditRules.getDomainToResourcesMap):
3659         (WebInspector.AuditRules.CombineExternalResourcesRule.prototype.doRun):
3660         (WebInspector.AuditRules.MinimizeDnsLookupsRule.prototype.doRun):
3661         (WebInspector.AuditRules.ParallelizeDownloadRule.prototype.doRun):
3662         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
3663         (WebInspector.AuditRules.CookieSizeRule.prototype.processCookies):
3664         (WebInspector.AuditRules.StaticCookielessRule.prototype.processCookies):
3665         * inspector/front-end/CookieItemsView.js:
3666         (WebInspector.CookieItemsView.prototype._filterCookiesForDomain):
3667         * inspector/front-end/DOMAgent.js:
3668         (WebInspector.Cookies.cookieMatchesResourceURL):
3669         * inspector/front-end/Resource.js:
3670         (WebInspector.Resource):
3671         (WebInspector.Resource.prototype.set url):
3672         (WebInspector.Resource.prototype.get displayName):
3673         * inspector/front-end/ResourceCategory.js:
3674         (WebInspector.ResourceCategory.prototype.addResource):
3675         * inspector/front-end/ResourceView.js:
3676         (WebInspector.ResourceView):
3677         * inspector/front-end/inspector.js:
3678         (WebInspector.documentClick.followLink):
3679         (WebInspector.documentClick):
3680         (WebInspector.updateResource):
3681         (WebInspector.linkifyStringAsFragment):
3682         (WebInspector.resourceURLForRelatedNode):
3683         (WebInspector.completeURL):
3684         * inspector/front-end/utilities.js:
3685         (String.prototype.asParsedURL):
3686
3687 2010-10-17  Andreas Kling  <kling@webkit.org>
3688
3689         Reviewed by Kenneth Rohde Christiansen.
3690
3691         [Qt] Support custom open() verbs/methods in XMLHttpRequest
3692         https://bugs.webkit.org/show_bug.cgi?id=40476
3693
3694         Fall back to QNetworkAccessManager::CustomOperation for any HTTP verb
3695         that's not specifically supported by QNetworkAccessManager.
3696
3697         This prevents the infinite loop that otherwise occurs after sending
3698         an UnknownOperation request.
3699
3700         This change is covered by existing (skipped) tests that will be
3701         unskipped once the Qt bots are running Qt 4.7.
3702
3703         * platform/network/qt/QNetworkReplyHandler.cpp:
3704         (WebCore::QNetworkReplyHandler::httpMethod):
3705         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
3706         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
3707         * platform/network/qt/QNetworkReplyHandler.h:
3708
3709 2010-10-17  Adam Barth  <abarth@webkit.org>
3710
3711         Reviewed by Dimitri Glazkov.
3712
3713         Remove explicit passing of user gesture in NavigationScheduler
3714         https://bugs.webkit.org/show_bug.cgi?id=47786
3715
3716         As requested by Mr. Glazkov, remove more explicit passing of the user
3717         gesture state.  We now use a static to pass this information around.
3718
3719         * bindings/generic/BindingFrame.h:
3720         (WebCore::::navigateIfAllowed):
3721         * bindings/js/JSDOMWindowCustom.cpp:
3722         (WebCore::JSDOMWindow::setLocation):
3723         * bindings/js/JSLocationCustom.cpp:
3724         (WebCore::JSLocation::reload):
3725         * bindings/v8/custom/V8LocationCustom.cpp:
3726         (WebCore::V8Location::reloadCallback):
3727         * inspector/InspectorController.cpp:
3728         (WebCore::InspectorController::setResourceTrackingEnabled):
3729         (WebCore::InspectorController::reloadPage):
3730         * loader/NavigationScheduler.cpp:
3731         (WebCore::ScheduledNavigation::ScheduledNavigation):
3732         (WebCore::ScheduledURLNavigation::ScheduledURLNavigation):
3733         (WebCore::ScheduledRedirect::ScheduledRedirect):
3734         (WebCore::ScheduledLocationChange::ScheduledLocationChange):
3735         (WebCore::ScheduledRefresh::ScheduledRefresh):
3736         (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation):
3737         (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
3738         (WebCore::NavigationScheduler::scheduleRedirect):
3739         (WebCore::NavigationScheduler::mustLockBackForwardList):
3740         (WebCore::NavigationScheduler::scheduleLocationChange):
3741         (WebCore::NavigationScheduler::scheduleFormSubmission):
3742         (WebCore::NavigationScheduler::scheduleRefresh):
3743         (WebCore::NavigationScheduler::scheduleHistoryNavigation):
3744         * loader/NavigationScheduler.h:
3745         * loader/SubframeLoader.cpp:
3746         (WebCore::SubframeLoader::loadOrRedirectSubframe):
3747
3748 2010-10-17  Julien Chaffraix  <jchaffraix@codeaurora.org>
3749
3750         Reviewed by Andreas Kling.
3751
3752         'transparent' should be a valid color
3753         https://bugs.webkit.org/show_bug.cgi?id=45482
3754
3755         Test: svg/animations/svg-animate-color-transparent.svg
3756
3757         Based on previous work by Jan Erik Hanssen  <jhanssen@codeaurora.org>
3758
3759         * platform/ColorData.gperf: Added 'transparent' to the list of colors.
3760         Added the alpha to all the colors as it was needed to support the new color.
3761
3762         * platform/graphics/Color.cpp:
3763         (WebCore::Color::Color):
3764         (WebCore::Color::setNamedColor): Avoid setting the alpha as now it is not
3765         always 0xFF.
3766
3767 2010-10-17  Justin Schuh  <jschuh@chromium.org>
3768
3769         Reviewed by Nikolas Zimmermann.
3770
3771         Duplicate use element children in shadow tree.
3772         https://bugs.webkit.org/show_bug.cgi?id=47561
3773
3774         Test: svg/custom/use-nested-children.svg
3775
3776         * svg/SVGUseElement.cpp:
3777         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
3778
3779 2010-10-17  Hyung Song  <beergun@company100.net>
3780
3781         Reviewed by David Levin.
3782
3783         Add !SINGLE_THREADED guard.
3784         https://bugs.webkit.org/show_bug.cgi?id=47608
3785
3786         For SINGLE_THREADED ports LockingMutex.tryLock() returns false.
3787         This will prevent interrupt() from falling into infinite loop.
3788
3789         * platform/sql/SQLiteDatabase.cpp:
3790         (WebCore::SQLiteDatabase::interrupt):
3791
3792 2010-10-17  Simon Fraser  <simon.fraser@apple.com>
3793
3794         Reviewed by Nikolas Zimmermann.
3795
3796         Very large and small numbers fail to round-trip through CSS
3797         https://bugs.webkit.org/show_bug.cgi?id=20674
3798         
3799         Use the new DecimalNumber functionality to convert CSS numberic values to strings
3800         using decimal notation, rather than %g (which can output scientific notation).
3801
3802         Test: fast/css/round-trip-values.html
3803
3804         * css/CSSPrimitiveValue.cpp:
3805         (WebCore::formatNumber):
3806         (WebCore::CSSPrimitiveValue::cssText):
3807
3808 2010-10-17  Cosmin Truta  <ctruta@chromium.org>
3809
3810         Reviewed by Nikolas Zimmermann.
3811
3812         Crash while processing ill-formed SVG with cycles
3813         https://bugs.webkit.org/show_bug.cgi?id=47498
3814
3815         Test: svg/custom/invalid-paint-shape-mask.svg
3816
3817         * rendering/SVGResources.cpp:
3818         (paintingResourceFromSVGPaint): Ensured that the painting resource is
3819         either a pattern resource or a gradient resource.
3820         (SVGResources::setClipper):
3821         (SVGResources::setFilter):
3822         (SVGResources::setMarkerStart):
3823         (SVGResources::setMarkerMid):
3824         (SVGResources::setMarkerEnd):
3825         (SVGResources::setMasker):
3826         (SVGResources::setFill):
3827         (SVGResources::setStroke): Added ASSERT statements for previously-unchecked
3828         preconditions.
3829
3830 2010-10-17  Alex Milowski  <alex@milowski.com>
3831
3832         Reviewed by Kenneth Rohde Christiansen.
3833
3834         Fixed extra whitespace above operators when they aren't stretched
3835         yet the stretch height is large.  Also, the baseline alignment
3836         was changed so that rows and operators interact appropriately now
3837         that operators don't have the extra white space.
3838
3839         * mathml/RenderMathMLOperator.cpp:
3840         * mathml/RenderMathMLRow.cpp:
3841
3842 2010-10-17  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
3843
3844         Reviewed by Antonio Gomes.
3845
3846         [Qt] Fix focusing of control elements on mouse click.
3847         Brings GTK fix to Qt platform.
3848         https://bugs.webkit.org/show_bug.cgi?id=40641
3849                         
3850         Test: fast/events/click-focus-control.html
3851
3852         * html/HTMLFormControlElement.cpp:
3853         (WebCore::HTMLFormControlElement::isMouseFocusable):
3854
3855 2010-10-17  Adam Barth  <abarth@webkit.org>
3856
3857         Reviewed by Dimitri Glazkov.
3858
3859         FrameLoader doesn't need an explicit userGesture parameter
3860         https://bugs.webkit.org/show_bug.cgi?id=47777
3861
3862         We used to pass around the user gesture state explicitly.  Now we use
3863         static state.  Explicitly passing the user gesture state to FrameLoader
3864         in these methods is pretty out-dated.
3865
3866         * bindings/ScriptControllerBase.cpp:
3867         (WebCore::ScriptController::executeIfJavaScriptURL):
3868         * bindings/generic/BindingDOMWindow.h:
3869         (WebCore::::createWindow):
3870         (WebCore::::open):
3871         * bindings/js/JSDOMWindowCustom.cpp:
3872         (WebCore::createWindow):
3873         (WebCore::JSDOMWindow::open):
3874         * bindings/js/JSDocumentCustom.cpp:
3875         (WebCore::JSDocument::setLocation):
3876         * bindings/js/ScriptController.h:
3877         * bindings/v8/ScriptController.h:
3878         * html/HTMLAnchorElement.cpp:
3879         (WebCore::handleLinkClick):
3880         * inspector/InspectorController.cpp:
3881         (WebCore::InspectorController::openInInspectedWindow):
3882         * loader/FrameLoader.cpp:
3883         (WebCore::FrameLoader::changeLocation):
3884         (WebCore::FrameLoader::urlSelected):
3885         (WebCore::FrameLoader::submitForm):
3886         * loader/FrameLoader.h:
3887         * loader/NavigationScheduler.cpp:
3888         (WebCore::ScheduledURLNavigation::fire):
3889         (WebCore::ScheduledRefresh::fire):
3890         (WebCore::ScheduledHistoryNavigation::fire):
3891         (WebCore::NavigationScheduler::scheduleLocationChange):
3892
3893 2010-10-17  Sergey A. Sukiyazov  <sergey.sukiyazov@gmail.com>
3894
3895         Reviewed by Andreas Kling
3896
3897         [Qt] Hovering the mouse over links produce a trail of underlined links (X11 paint engine)
3898         https://bugs.webkit.org/show_bug.cgi?id=42248
3899
3900         The problem will appear because coordinates of points may increase by 0.05f (if line width is odd) inside
3901         method GraphicsContext::adjustLineToPixelBoundaries(...) and become outside of text bounding rect htere,
3902         then the new point coordinates will be passed to Qt graphics engine.
3903
3904         The solution decreases Y cordinates of points inside drawLineForText(...) method only if Qt graphics engine
3905         is X11. The Y coordinates will be increase by 0.5f inside method adjustLineToPixelBoundaries(...),  which
3906         called from drawLine(...), and then inside Qt painting engine will be rounded to next greater integer value.
3907
3908         NOTE: This changes will affect only Qt X11 verision and if only X11 Painting Engine will be used.
3909
3910         No new tests.
3911
3912         * platform/graphics/qt/GraphicsContextQt.cpp:
3913         (WebCore::GraphicsContext::drawLineForText):
3914
3915 2010-10-17  Rob Buis  <rwlbuis@gmail.com>
3916
3917         Reviewed by Dirk Schulze.
3918
3919         Text under nested link dropped
3920         https://bugs.webkit.org/show_bug.cgi?id=46460
3921
3922         Allow links inside of tspan and textPath elements.
3923
3924         * svg/SVGTSpanElement.cpp:
3925         (WebCore::SVGTSpanElement::childShouldCreateRenderer):
3926         * svg/SVGTextPathElement.cpp:
3927         (WebCore::SVGTextPathElement::childShouldCreateRenderer):
3928
3929 2010-10-16  Kwang Yul Seo  <skyul@company100.net>
3930
3931         Reviewed by Kent Tamura.
3932
3933         [BREWMP] Port TextCodec
3934         https://bugs.webkit.org/show_bug.cgi?id=45797
3935
3936         Implement TextCodec with Brew MP's ICharsetConv.
3937         Only UTF-8 is supported for now.
3938
3939         * platform/text/TextEncoding.cpp:
3940         (WebCore::TextEncoding::encode):
3941         * platform/text/TextEncodingRegistry.cpp:
3942         (WebCore::buildBaseTextCodecMaps):
3943         * platform/text/brew/TextCodecBrew.cpp: Added.
3944         (WebCore::newTextCodecBrew):
3945         (WebCore::TextCodecBrew::registerBaseEncodingNames):
3946         (WebCore::TextCodecBrew::registerBaseCodecs):
3947         (WebCore::TextCodecBrew::registerExtendedEncodingNames):
3948         (WebCore::TextCodecBrew::registerExtendedCodecs):
3949         (WebCore::TextCodecBrew::TextCodecBrew):
3950         (WebCore::TextCodecBrew::~TextCodecBrew):
3951         (WebCore::TextCodecBrew::decode):
3952         (WebCore::TextCodecBrew::encode):
3953         * platform/text/brew/TextCodecBrew.h: Added.
3954
3955 2010-10-16  Patrick Gansterer  <paroga@webkit.org>
3956
3957         Unreviewed.
3958
3959         Build fix for !ENABLE(INSPECTOR) after r69844.
3960
3961         * inspector/InspectorState.h: Added ENABLE(INSPECTOR) guard.
3962
3963 2010-10-16  Patrick Gansterer  <paroga@webkit.org>
3964
3965         Unreviewed, build fix.
3966
3967         WinCE build fix for r69798.
3968
3969         * platform/text/wince/TextCodecWinCE.cpp: Added missing include.
3970
3971 2010-10-16  Johnny Ding  <jnd@chromium.org>
3972
3973         Reviewed by Adam Barth.
3974
3975         Requires a user gesture when opening file choose dialog.
3976         https://bugs.webkit.org/show_bug.cgi?id=47593
3977
3978         Test: fast/forms/input-file-not-open-without-gesture.html
3979
3980         * rendering/RenderFileUploadControl.cpp:
3981         (WebCore::RenderFileUploadControl::click):
3982
3983 2010-10-16  Alex Milowski  <alex@milowski.com>
3984
3985         Reviewed by Kenneth Rohde Christiansen.
3986
3987         Changed the vertical alignment within mfenced to baseline to
3988         match the rest of the containers (e.g. mrow) and adjusted the
3989         operator spacing to 0.1em.
3990
3991         Test: mathml/presentation/fenced-mi.xhtml
3992
3993         * css/mathml.css:
3994         * mathml/RenderMathMLFenced.cpp:
3995
3996 2010-10-16  Patrick Gansterer  <paroga@webkit.org>
3997
3998         Reviewed by Adam Barth.
3999
4000         Rename StringHasherFunctions.h to StringHasher.h
4001         https://bugs.webkit.org/show_bug.cgi?id=47200
4002
4003         * ForwardingHeaders/wtf/StringHashFunctions.h: Removed.
4004         * ForwardingHeaders/wtf/StringHasher.h: Copied from WebCore/ForwardingHeaders/wtf/StringHashFunctions.h. 
4005  
4006 2010-10-15  Ryosuke Niwa  <rniwa@webkit.org>
4007
4008         Reviewed by Darin Adler.
4009
4010         unlink removes inline style of anchor elements
4011         https://bugs.webkit.org/show_bug.cgi?id=47424
4012
4013         The bug was caused by our not extracting styles when the anchor element is removed by removeInlineStyle.
4014         Because we removed the element without pushing its inline style down, we lost style information.
4015
4016         Fixed the bug by pushing down styles in removeInlineStyle as done in pushDownInlineStyleAroundNode.
4017         Also fixed a bug in addInlineStyleIfNeeded where StyleChange incorrectly removed styles of the container
4018         node as supposed to that of startNode from the style to apply when startNode is not an element.
4019
4020         Test: editing/execCommand/toggle-unlink.html
4021
4022         * editing/ApplyStyleCommand.cpp:
4023         (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): To prevent a similar bug in the future,
4024         added an assert that extractedStyle is specified whenever we're removing a styled element.
4025         (WebCore::ApplyStyleCommand::removeInlineStyle):
4026         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
4027
4028 2010-10-15  Ryosuke Niwa  <rniwa@webkit.org>
4029
4030         Reviewed by Tony Chang.
4031
4032         serializeNodesWithNamespaces should be in MarkupAccumulator
4033         https://bugs.webkit.org/show_bug.cgi?id=47749
4034
4035         Moved serializeNodesWithNamespaces to MarkupAccumulator, and renamed it to serializeNodes.
4036         MarkupAccumulator::serializeNode now returns the resultant string instead of having a separate takeResults().
4037         Added several helper functions to MarkupAccumulator.
4038
4039         No new tests are added since this is a cleanup.
4040
4041         * editing/MarkupAccumulator.cpp:
4042         (WebCore::MarkupAccumulator::serializeNodes): Wrapper for serializeNodes and concatenateMarkup.
4043         (WebCore::MarkupAccumulator::serializeNodesWithNamespaces): Moved from markup.cpp
4044         (WebCore::MarkupAccumulator::appendStartTag): Calls appendString instead of appending into m_succeedingMarkup directly.
4045         (WebCore::MarkupAccumulator::appendEndTag): Ditto.
4046         (WebCore::MarkupAccumulator::totalLength): Added; extracted from takeResults.
4047         (WebCore::MarkupAccumulator::concatenateMarkup): Ditto.
4048         * editing/MarkupAccumulator.h:
4049         (WebCore::MarkupAccumulator::length): Added; calls totalLength.
4050         * editing/markup.cpp:
4051         (WebCore::StyledMarkupAccumulator::appendString): Added; calls MarkupAccumulator's appendString.
4052         (WebCore::StyledMarkupAccumulator::wrapWithStyleNode): Calls appendString.
4053         (WebCore::StyledMarkupAccumulator::takeResults): Calls length, totalLength, and concatenateMarkup.
4054         (WebCore::StyledMarkupAccumulator::serializeNodes): Became a member function.
4055         (WebCore::createMarkup): Uses MarkupAccumulator.
4056
4057 2010-10-15  Kinuko Yasuda  <kinuko@google.com>
4058
4059         Reviewed by Jian Li.
4060
4061         Implement FileEntrySync.file() in FileSystem API
4062         https://bugs.webkit.org/show_bug.cgi?id=47310
4063
4064         Tests: fast/filesystem/workers/file-from-file-entry-sync.html
4065                fast/filesystem/workers/file-from-file-entry.html
4066
4067         * fileapi/DOMFileSystem.cpp:
4068         (WebCore::DOMFileSystem::createFile): Added.
4069         * fileapi/DOMFileSystem.h:
4070         * fileapi/DOMFileSystemSync.cpp:
4071         (WebCore::DOMFileSystemSync::createFile): Added.
4072         * fileapi/DOMFileSystemSync.h:
4073         * fileapi/DirectoryReaderBase.h: Added 'virtual path' comment.
4074         * fileapi/EntryBase.h: Added 'virtual path' comment.
4075         * fileapi/FileEntry.cpp:
4076         (WebCore::FileEntry::file): Changed to use DOMFileSystem::createFile.
4077         * fileapi/FileEntrySync.cpp:
4078         (WebCore::FileEntrySync::file): Implemented.
4079         * fileapi/FileEntrySync.h:
4080         * fileapi/FileEntrySync.idl: Added file().
4081
4082 2010-10-15  Nico Weber  <thakis@chromium.org>
4083
4084         Reviewed by Eric Carlson.
4085
4086         Make sure to update the current graphics context when calling out to AppKit.
4087         https://bugs.webkit.org/show_bug.cgi?id=47757
4088
4089         Like r57741, but for the spellchecking highlight
4090
4091         * platform/graphics/mac/GraphicsContextMac.mm:
4092         (WebCore::GraphicsContext::drawLineForTextChecking):
4093
4094 2010-10-15  Brian Weinstein  <bweinstein@apple.com>
4095
4096         Reviewed by Sam Weinig.
4097
4098         REGRESSION(r69850) Loading apple.com/startpage in WebKit on Windows gets a bad request.
4099         https://bugs.webkit.org/show_bug.cgi?id=47753
4100         <rdar://problem/8558242>
4101         
4102         r69850 switched over to a different way of concatenating WebCore strings, but ran into an issue
4103         where some Windows calls were returning null terminated strings, and this breaks the new
4104         method of concatenation.
4105         
4106         GetLocaleInfo returns a null-terminated string, but WebCore strings are non-null terminated,
4107         so once we create our WebCore string, we want to trim off the null terminating character before
4108         we return the localeInfo.
4109
4110         Test: fast/dom/navigator-userAgent.html
4111
4112         * platform/win/Language.cpp:
4113         (WebCore::localeInfo):
4114
4115 2010-10-15  Alexey Proskuryakov  <ap@apple.com>
4116
4117         Trying to fix crashes on Leopard buildbot.
4118
4119         * loader/loader.cpp:
4120         (WebCore::Loader::Host::didFinishLoading):
4121         (WebCore::Loader::Host::didFail):