2011-04-30 Pavel Feldman <pfeldman@chromium.org>
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-04-30  Pavel Feldman  <pfeldman@chromium.org>
2
3         Not reviewed: inspector toolbar titles were 2px off.
4
5         * inspector/front-end/inspector.css:
6         (#toolbar-dropdown .toolbar-label):
7
8 2011-04-30  Mihai Parparita  <mihaip@chromium.org>
9
10         Reviewed by Eric Seidel.
11
12         V8Proxy.h shouldn't include SecurityOrigin.h
13         https://bugs.webkit.org/show_bug.cgi?id=59859
14
15         Remove SecurityOrigin.h #include from V8Proxy.h. Touching
16         SecurityOrigin.h now rebuilds 234 targets instead of 638 (when building
17         chromium's DumpRenderTree).
18
19         * bindings/v8/NPV8Object.cpp:
20         * bindings/v8/V8Proxy.cpp:
21         * bindings/v8/V8Proxy.h:
22         * css/CSSStyleSelector.cpp:
23         * dom/XMLDocumentParserLibxml2.cpp:
24         * html/HTMLLinkElement.cpp:
25         * loader/SubframeLoader.cpp:
26         * page/History.cpp:
27         * storage/IDBFactory.cpp:
28         * storage/StorageAreaImpl.cpp:
29
30 2011-04-29  Adam Barth  <abarth@webkit.org>
31
32         Reviewed by Eric Seidel.
33
34         CSP script-src should block eval
35         https://bugs.webkit.org/show_bug.cgi?id=59850
36
37         Rather than have JavaScriptCore call back into WebCore to learn whether
38         eval is enabled, we push that bit of the policy into JavaScriptCore.
39
40         Tests: http/tests/security/contentSecurityPolicy/eval-allowed.html
41                http/tests/security/contentSecurityPolicy/eval-blocked.html
42
43         * bindings/js/ScriptController.cpp:
44         (WebCore::ScriptController::disableEval):
45         * bindings/js/ScriptController.h:
46         * page/ContentSecurityPolicy.cpp:
47         (WebCore::ContentSecurityPolicy::didReceiveHeader):
48         (WebCore::ContentSecurityPolicy::internalAllowEval):
49         (WebCore::ContentSecurityPolicy::allowEval):
50         * page/ContentSecurityPolicy.h:
51
52 2011-04-29  Joseph Pecoraro  <joepeck@webkit.org>
53
54         GTK build fix. Missed moving DateComponents and
55         adding LocalizedDate files for their build file.
56
57         * GNUmakefile.list.am:
58
59 2011-04-29  Adam Barth  <abarth@webkit.org>
60
61         Reviewed by Eric Seidel.
62
63         style-src should block @style
64         https://bugs.webkit.org/show_bug.cgi?id=59293
65
66         This patch blocks @style when style-src doesn't have the
67         'unsafe-inline' token.  This patch blocks the parsing of the attribute
68         itself.  That feels vaguely like too low a level to interpose the
69         policy, but there didn't seem to be anywhere else natural to enforce
70         the policy.
71
72         Tests: http/tests/security/contentSecurityPolicy/inline-style-attribute-allowed.html
73                http/tests/security/contentSecurityPolicy/inline-style-attribute-blocked.html
74                http/tests/security/contentSecurityPolicy/inline-style-on-html.html
75
76         * dom/StyledElement.cpp:
77         (WebCore::StyledElement::parseMappedAttribute):
78
79 2011-04-29  Joseph Pecoraro  <joepeck@webkit.org>
80
81         Reviewed by Kent Tamura.
82
83         Allow Localized Date Strings for Date Input Fields
84         https://bugs.webkit.org/show_bug.cgi?id=59752
85
86         Test: fast/forms/date-input-visible-strings.html
87
88         * CMakeLists.txt:
89         * WebCore.gypi:
90         * WebCore.pro:
91         * WebCore.vcproj/WebCore.vcproj:
92         * WebCore.xcodeproj/project.pbxproj: update build files for
93         moving DateComponents from WebCore/html to WebCore/platform
94         and adding the LocalizedDate files.
95
96         * html/BaseDateAndTimeInputType.cpp:
97         (WebCore::BaseDateAndTimeInputType::serialize):
98         (WebCore::BaseDateAndTimeInputType::serializeWithComponents):
99         (WebCore::BaseDateAndTimeInputType::serializeWithMilliseconds):
100         InputType::serialize for a double value with date types is
101         different for the month type because it assumes the incoming
102         value is months instead of msecs (matching valueAsNumber in
103         HTML5).  So provide a more general serialization function,
104         serializeWithComponents, that will always serialize a string
105         correctly for the current type but taking in a DateComponents
106         object. The default serialize, and new serializeWithMilliseconds,
107         can fall back to this and allows an override point for
108         the month type.
109
110         * html/MonthInputType.cpp:
111         (WebCore::MonthInputType::serializeWithMilliseconds): the month
112         type is a case where the default serialize does not take msec,
113         so provide an implementation for month which handles msec input.
114
115         * html/BaseDateAndTimeInputType.cpp:
116         (WebCore::BaseDateAndTimeInputType::setValueAsDate): switch
117         to serializeWithMilliseconds as the incoming date value is msec.
118         * html/MonthInputType.cpp:
119         (WebCore::MonthInputType::setValueAsDate): removed.
120
121         * html/BaseDateAndTimeInputType.cpp:
122         (WebCore::BaseDateAndTimeInputType::visibleValue): allow
123         localized formatting of a date value.
124         (WebCore::BaseDateAndTimeInputType::convertFromVisibleValue):
125         allow parsing for a formatted date value.
126
127         * html/BaseDateAndTimeInputType.h:
128         * platform/DateComponents.cpp: Renamed from Source/WebCore/html/DateComponents.cpp.
129         Expose the Type enum so it can be used outside of the DateComponents class.
130         * platform/text/LocalizedDate.h: Added.
131         * platform/text/LocalizedDateNone.cpp: Added.
132         (WebCore::formatLocalizedDate): Default implementation falls back to
133         existing HTML5 date input value formatting.
134
135         * html/BaseDateAndTimeInputType.h:
136         * html/DateInputType.cpp:
137         (WebCore::DateInputType::dateType):
138         * html/DateInputType.h:
139         * html/DateTimeInputType.cpp:
140         (WebCore::DateTimeInputType::dateType):
141         * html/DateTimeInputType.h:
142         * html/DateTimeLocalInputType.cpp:
143         (WebCore::DateTimeLocalInputType::dateType):
144         * html/DateTimeLocalInputType.h:
145         * html/MonthInputType.cpp:
146         (WebCore::MonthInputType::dateType):
147         * html/MonthInputType.h:
148         * html/TimeInputType.cpp:
149         (WebCore::TimeInputType::dateType):
150         * html/TimeInputType.h:
151         * html/WeekInputType.cpp:
152         (WebCore::WeekInputType::dateType):
153         * html/WeekInputType.h: Accessors for the desired date
154         type of a date input type. This allows the base class
155         to write a generic algorithm.
156
157 2011-04-29  Adam Barth  <abarth@webkit.org>
158
159         Reviewed by Eric Seidel.
160
161         style-src should block inline style from <style>
162         https://bugs.webkit.org/show_bug.cgi?id=59292
163
164         The spec has been updated to allow blocking of inline styles with
165         style-src.  This will help folks defend against tricky CSS3 injections.
166
167         This patch covers the <style> case.  The next patch will cover the
168         @style case.
169
170         Tests: http/tests/security/contentSecurityPolicy/inline-style-allowed.html
171                http/tests/security/contentSecurityPolicy/inline-style-blocked.html
172
173         * dom/StyleElement.cpp:
174         (WebCore::StyleElement::createSheet):
175         * page/ContentSecurityPolicy.cpp:
176         (WebCore::ContentSecurityPolicy::allowInlineStyle):
177         * page/ContentSecurityPolicy.h:
178
179 2011-04-29  Chris Evans  <cevans@chromium.org>
180
181         Reviewed by Adam Barth.
182
183         Add WebCore::Setting to block displaying and/or running insecure content on secure pages
184         https://bugs.webkit.org/show_bug.cgi?id=58378
185
186         Test: To follow in subsequent patch, including the wiring to expose the new settings to LayoutTests.
187
188         * loader/FrameLoader.cpp:
189         (WebCore::FrameLoader::checkIfDisplayInsecureContent): Return whether or not the load should be blocked, and tweak the message upon blocking.
190         (WebCore::FrameLoader::checkIfRunInsecureContent): Return whether or not the load should be blocked, and tweak the message upon blocking.
191         * loader/FrameLoader.h:
192         * loader/MainResourceLoader.cpp:
193         (WebCore::MainResourceLoader::willSendRequest): Check if the frame load is blocked due to mixed content and cancel it if so. The check was moved up so that it occurs before firing the load callbacks, to avoid any outgoing network hits or accounting. Redirects are handled because willSendRequest is called for each one in the chain.
194         * loader/SubframeLoader.cpp:
195         (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin): Handle the blocking of mixed-content plug-in loads.
196         (WebCore::SubframeLoader::loadPlugin): Handle the blocking of mixed-content plug-in loads.
197         * loader/cache/CachedResourceLoader.cpp:
198         (WebCore::CachedResourceLoader::canRequest): Handle the blocking of various loads due to mixed content conditions.
199         * page/Settings.cpp:
200         (WebCore::Settings::Settings): Permit mixed-content loads by default to avoid a change in behavior by default.
201         * page/Settings.h: Add two new booleans to control blocking of mixed content (displaying and running thereof).
202         (WebCore::Settings::setAllowDisplayOfInsecureContent):
203         (WebCore::Settings::allowDisplayOfInsecureContent):
204         (WebCore::Settings::setAllowRunningOfInsecureContent):
205         (WebCore::Settings::allowRunningOfInsecureContent):
206
207 2011-04-29  Ryosuke Niwa  <rniwa@webkit.org>
208
209         Reviewed by Eric Seidel.
210
211         Extract a function to obtain VisiblePosition from RenderText::positionForPoint
212         https://bugs.webkit.org/show_bug.cgi?id=59811
213
214         Extracted lineDirectionPointFitsInBox from positionForPoint.
215
216         * rendering/RenderText.cpp:
217         (WebCore::lineDirectionPointFitsInBox):
218         (WebCore::RenderText::positionForPoint):
219
220 2011-04-29  Geoffrey Garen  <ggaren@apple.com>
221
222         Reviewed by Alexey Proskuryakov.
223
224         REGRESSION: r83938 abandons GC memory
225         https://bugs.webkit.org/show_bug.cgi?id=59604
226
227         This bug was caused by script and image elements waiting indefinitely
228         for their loads to finish.
229
230         * bindings/js/JSNodeCustom.cpp:
231         (WebCore::isReachableFromDOM): Don't test for the load event firing,
232         since the load event doesn't fire in cases of canceled or errored loads.
233         Instead, test hasPendingActivity().
234         
235         Don't do this test at all for script elements because script elements
236         can't load while outside the document. (fast/dom/script-element-gc.html
237         verifies that this is correct.)
238
239         * html/HTMLImageElement.cpp:
240         (WebCore::HTMLImageElement::hasPendingActivity):
241         * html/HTMLImageElement.h:
242         * loader/ImageLoader.cpp:
243         (WebCore::ImageEventSender::hasPendingEvents):
244         (WebCore::ImageLoader::hasPendingLoadEvent):
245         * loader/ImageLoader.h: Added API for finding out if an image element
246         has pending activity.
247
248         * loader/cache/CachedResource.cpp:
249         (WebCore::CachedResource::setRequest): All loads are supposed to end in
250         data(allDataReceived = true) or error(), but in the edge case of a
251         canceled load, all we get is a call to setRequest(0). Be sure to
252         record that we're no longer loading in that case, otherwise our element
253         will leak forever, waiting for its load to complete.
254
255 2011-04-29  Emil Eklund  <eae@chromium.org>
256
257         Reviewed by Tony Chang.
258
259         Setting outerHTML should merge text nodes
260         https://bugs.webkit.org/show_bug.cgi?id=52686
261
262         When setting outerHTML adjacent text nodes should be merged. This matches
263         the behavior of outerText and the IE implementation of outerHTML.       
264
265         Test: fast/dom/set-outer-html.html
266
267         * html/HTMLElement.cpp:
268         (WebCore::mergeWithNextTextNode): Move function to before setOuterHTML.
269         (WebCore::HTMLElement::setOuterHTML): Merge adjacent text nodes after replacing the element.
270
271 2011-04-29  Emil A Eklund  <eae@chromium.org>
272
273         Reviewed by Dimitri Glazkov.
274
275         Onchange on text fields has an incoherent behavior
276         https://bugs.webkit.org/show_bug.cgi?id=57330
277
278         * html/HTMLFormControlElement.cpp:
279         (WebCore::HTMLTextFormControlElement::insertedIntoDocument):
280         Initialize m_textAsOfLastFormControlChangeEvent to empty string rather
281         than null for empty fields.
282
283 2011-04-29  Csaba Osztrogonác  <ossy@webkit.org>
284
285         [Qt] Unreviewed buildfix after r85343.
286
287         Enable strict OwnPtr for Qt
288         https://bugs.webkit.org/show_bug.cgi?id=59667
289
290         * plugins/mac/PluginViewMac.mm:
291         (WebCore::PluginView::platformStart):
292
293 2011-04-29  Jon Lee  <jonlee@apple.com>
294
295         Reviewed by mitzpettel.
296
297         REGRESSION (WebKit2): (Mac) Selection is gone after switching tabs (59721)
298         <rdar://problem/9327332>
299         https://bugs.webkit.org/show_bug.cgi?id=59721
300
301         Removing shouldClearSelectionWhenLosingWebPageFocus().  Reverting changelist 83814.
302
303         * WebCore.exp.in:
304         * editing/EditingBehavior.h:
305
306 2011-04-29  Abhishek Arya  <inferno@chromium.org>
307
308         Reviewed by Dave Hyatt.
309
310         Allow only first table caption and destroy the remaining ones.
311         https://bugs.webkit.org/show_bug.cgi?id=58249
312
313         Previously, we were only laying out the first table caption.
314         However Table::layout didn't mark the other ones as not needing
315         layout. So after table layout completes, table is marked as not
316         needing layout with its other table caption still needing layout.
317         This causes incorrect layout root calculations and set it to a
318         node which is already getting deleted.
319
320         Tests: fast/table/dynamic-caption-add-before-child.xhtml
321                fast/table/dynamic-caption-add-remove-before-child.xhtml
322                fast/table/multiple-captions-crash.xhtml
323                fast/table/multiple-captions-crash2.xhtml
324                fast/table/multiple-captions-display.xhtml
325
326         * rendering/RenderTable.cpp:
327         (WebCore::RenderTable::addChild): when new caption or a before
328         child caption is added, we need to explicitly trigger section
329         recalc or otherwise layout won't catch it.
330         (WebCore::RenderTable::removeChild): when child to be removed is
331         m_caption, make sure to trigger style recalc on the table.
332         (WebCore::RenderTable::recalcCaption): code to destroy captions
333         other than the first one.
334         (WebCore::RenderTable::recalcSections): call recalcCaption
335         helper. Store the next sibling early since child can get destroyed
336         in recalcCaption.
337         * rendering/RenderTable.h:
338
339 2011-04-29  David Kilzer  <ddkilzer@apple.com>
340
341         Remove WML
342         https://bugs.webkit.org/show_bug.cgi?id=59678
343
344         * DerivedSources.make: Removed $(WebCore)/wml path in VPATH.
345
346 2011-04-29  James Robinson  <jamesr@chromium.org>
347
348         Unreviewed, rolling out r85330.
349         http://trac.webkit.org/changeset/85330
350         https://bugs.webkit.org/show_bug.cgi?id=41311
351
352         Caused unexpected border rendering change on 500 tests on chromium linux.
353
354         * platform/graphics/skia/GraphicsContextSkia.cpp:
355         (WebCore::GraphicsContext::drawConvexPolygon):
356         (WebCore::GraphicsContext::clipConvexPolygon):
357
358 2011-04-29  Csaba Osztrogonác  <ossy@webkit.org>
359
360         [Qt] Unreviewed buildfix after r85343.
361
362         Enable strict OwnPtr for Qt
363         https://bugs.webkit.org/show_bug.cgi?id=59667
364
365         * plugins/win/PluginViewWin.cpp:
366         (WebCore::PluginView::wndProc):
367         (WebCore::PluginView::snapshot):
368
369 2011-04-29  Csaba Osztrogonác  <ossy@webkit.org>
370
371         Reviewed by Adam Barth.
372
373         Enable strict OwnPtr for Qt
374         https://bugs.webkit.org/show_bug.cgi?id=59667
375
376         * platform/graphics/qt/ImageBufferQt.cpp:
377         (WebCore::ImageBufferData::ImageBufferData):
378         (WebCore::ImageBuffer::ImageBuffer):
379         * platform/graphics/qt/ImageDecoderQt.cpp:
380         (WebCore::ImageDecoderQt::setData):
381         * platform/graphics/qt/ImageDecoderQt.h:
382         * platform/network/qt/QNetworkReplyHandler.cpp:
383         (WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
384         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
385
386 2011-04-29  Dean Jackson  <dino@apple.com>
387
388         Reviewed by Simon Fraser.
389
390         Add ENABLE macro for WebKitAnimation
391         https://bugs.webkit.org/show_bug.cgi?id=59729
392
393         Add new feature to toggle WebKit Animation API.
394
395         * Configurations/FeatureDefines.xcconfig:
396         * GNUmakefile.am:
397         * dom/Element.idl:
398         * features.pri:
399         * page/DOMWindow.idl:
400
401 2011-04-29  Dean Jackson  <dino@apple.com>
402
403         Reviewed by Simon Fraser.
404
405         https://bugs.webkit.org/show_bug.cgi?id=59149
406         (Regression) Existing animations are not replaced when filling.
407
408         Hardware animations that fill forwards were not being correctly
409         replaced when the animation was removed. The actual animation
410         logic was working correctly, but it wasn't deleting the
411         CoreAnimation animation from the PlatformLayer. The fix was
412         to explicitly call endAnimation when disconnecting the animation
413         from its RenderObject.
414
415         Test: animations/3d/replace-filling-transform.html
416
417         * page/animation/AnimationBase.h:
418         (WebCore::AnimationBase::clear): call endAnimation as the animation is cleared
419
420 2011-04-29  Abhishek Arya  <inferno@chromium.org>
421
422         Reviewed by Nikolas Zimmermann.
423
424         When svg inline text is getting destroyed, make sure to mark
425         its svg text ancestor as needing a positioning values update.
426         This helps to recalculate layout attributes and makes sure
427         that svg inline text is not used again.
428         https://bugs.webkit.org/show_bug.cgi?id=59161
429
430         Test: svg/text/inline-text-destroy-attributes-crash.xhtml
431
432         * rendering/svg/RenderSVGInlineText.cpp:
433         (WebCore::RenderSVGInlineText::destroy):
434         * rendering/svg/RenderSVGInlineText.h:
435
436 2011-04-29  Kevin Ollivier  <kevino@theolliviers.com>
437
438         [wx] Unreviewed build fix. Fix wxMSW trunk builds by adding include.
439
440         * platform/graphics/wx/GraphicsContextWx.cpp:
441
442 2011-04-29  Mike Reed  <reed@google.com>
443
444         Reviewed by Ojan Vafai.
445
446         Skia: Need to implement GraphicsContext::clipConvexPolygon()
447         https://bugs.webkit.org/show_bug.cgi?id=41311
448
449         This does not (yet) enable HAVE_PATH_BASED_BORDER_RADIUS_DRAWING
450         as that shows other issues/question unrelated to clipping.
451         https://bugs.webkit.org/show_bug.cgi?id=41311
452
453         No new tests. covered by existing layout tests
454
455         * platform/graphics/skia/GraphicsContextSkia.cpp:
456         (WebCore::setPathFromConvexPoints):
457         (WebCore::GraphicsContext::drawConvexPolygon):
458         (WebCore::GraphicsContext::clipConvexPolygon):
459
460 2011-04-29  Mike Lawther  <mikelawther@chromium.org>
461
462         Reviewed by Ojan Vafai.
463
464         Fix IR->SR typo in enum value (and resulting style fails)
465         https://bugs.webkit.org/show_bug.cgi?id=59779
466
467         No functionality change, so no new tests
468
469         * css/CSSPrimitiveValueMappings.h:
470         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
471         (WebCore::CSSPrimitiveValue::operator EShapeRendering):
472
473 2011-04-29  Pavel Feldman  <pfeldman@google.com>
474
475         Reviewed by Yury Semikhatsky.
476
477         Web Inspector: CSS editing breaks when entering "color: rgb(1"
478         https://bugs.webkit.org/show_bug.cgi?id=59789
479
480         Tests: inspector/styles/styles-add-invalid-property.html
481                inspector/styles/styles-cancel-editing.html
482                inspector/styles/styles-commit-editing.html
483
484         * inspector/front-end/CSSStyleModel.js:
485         (WebInspector.CSSProperty.prototype.setText.callback):
486         (WebInspector.CSSProperty.prototype.setText):
487         * inspector/front-end/StylesSidebarPane.js:
488         (WebInspector.StylePropertyTreeElement.prototype.selectElement):
489         (WebInspector.StylePropertyTreeElement.prototype):
490         (WebInspector.StylePropertyTreeElement.prototype.styleText.updateInterface.majorChange.isRevert.originalPropertyText):
491         * inspector/front-end/inspector.js:
492         (WebInspector.startEditing.defaultFinishHandler):
493         (WebInspector.startEditing.keyDownEventListener):
494         (WebInspector.startEditing):
495
496 2011-04-29  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
497
498         Reviewed by Simon Hausmann.
499
500         ENABLE(QT_BEARER) -> USE(QT_BEARER)
501
502         * WebCore.pri:
503         * WebCore.pro:
504         * features.pri:
505         * platform/network/NetworkStateNotifier.h:
506         * platform/network/qt/NetworkStateNotifierQt.cpp:
507
508 2011-04-29  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
509
510         Reviewed by Simon Hausmann.
511
512         ENABLE(QT_USERAGENT_DEVICEMODEL) -> USE(QT_MOBILITY_SYSTEMINFO)
513
514         * WebCore.pri:
515         * features.pri:
516
517 2011-04-29  Pavel Podivilov  <podivilov@chromium.org>
518
519         Reviewed by Pavel Feldman.
520
521         Web Inspector: breakpoints set in original and formatted scripts are messed up after navigation.
522         https://bugs.webkit.org/show_bug.cgi?id=59476
523
524         * inspector/front-end/DebuggerPresentationModel.js:
525         (WebInspector.DebuggerPresentationModel.prototype.setFormatSourceFiles):
526         (WebInspector.DebuggerPresentationModel.prototype._removeBreakpointFromDebugger):
527         (WebInspector.PresentationBreakpoint.prototype.serialize):
528         * inspector/front-end/ScriptsPanel.js:
529         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.optionCompare):
530         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
531         (WebInspector.ScriptsPanel.prototype.reset):
532
533 2011-04-28  Pavel Podivilov  <podivilov@chromium.org>
534
535         Reviewed by Yury Semikhatsky.
536
537         Web Inspector: include script end line:column in scriptParsed parameters.
538         https://bugs.webkit.org/show_bug.cgi?id=59717
539
540         * bindings/js/ScriptDebugServer.cpp:
541         (WebCore::ScriptDebugServer::dispatchDidParseSource):
542         * bindings/v8/DebuggerScript.js:
543         ():
544         * bindings/v8/ScriptDebugServer.cpp:
545         (WebCore::ScriptDebugServer::dispatchDidParseSource):
546         * inspector/Inspector.json:
547         * inspector/InspectorDebuggerAgent.cpp:
548         (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
549         (WebCore::InspectorDebuggerAgent::didParseSource):
550         * inspector/InspectorDebuggerAgent.h:
551         (WebCore::InspectorDebuggerAgent::Script::Script):
552         * inspector/ScriptDebugListener.h:
553         * inspector/front-end/DebuggerModel.js:
554         (WebInspector.DebuggerModel.prototype._parsedScriptSource):
555         (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
556         (WebInspector.DebuggerDispatcher.prototype.scriptParsed):
557         * inspector/front-end/Script.js:
558         (WebInspector.Script):
559
560 2011-04-28  Yury Semikhatsky  <yurys@chromium.org>
561
562         Reviewed by Pavel Feldman.
563
564         Web Inspector: [protocol] Evaluate should expose thrown exception value
565         https://bugs.webkit.org/show_bug.cgi?id=59000
566
567         Each evaluation command may have either thrown or returned result. This is indicated
568         by wasThrown property in the protocol.
569
570         * inspector/InjectedScript.cpp:
571         (WebCore::InjectedScript::evaluate):
572         (WebCore::InjectedScript::evaluateOn):
573         (WebCore::InjectedScript::evaluateOnCallFrame):
574         (WebCore::InjectedScript::getProperties):
575         (WebCore::InjectedScript::makeEvalCall):
576         * inspector/InjectedScript.h:
577         * inspector/InjectedScriptSource.js:
578         * inspector/Inspector.json: Removed "error" remote object type, added "wasThrown" property to
579         the evaluation results.
580         * inspector/InspectorDebuggerAgent.cpp:
581         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
582         * inspector/InspectorDebuggerAgent.h:
583         * inspector/InspectorRuntimeAgent.cpp:
584         (WebCore::InspectorRuntimeAgent::evaluate):
585         (WebCore::InspectorRuntimeAgent::evaluateOn):
586         (WebCore::InspectorRuntimeAgent::getProperties):
587         * inspector/InspectorRuntimeAgent.h:
588         * inspector/front-end/ConsoleView.js:
589         (WebInspector.ConsoleView.prototype.completions.evaluated):
590         (WebInspector.ConsoleView.prototype.evalInInspectedWindow):
591         (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult):
592         (WebInspector.ConsoleView.prototype._enterKeyPressed):
593         (WebInspector.ConsoleCommandResult):
594         * inspector/front-end/DebuggerPresentationModel.js:
595         (WebInspector.PresenationCallFrame.prototype.evaluate):
596         * inspector/front-end/ElementsTreeOutline.js:
597         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.setTooltip):
598         * inspector/front-end/ExtensionPanel.js:
599         (WebInspector.ExtensionSidebarPane.prototype._onEvaluate):
600         * inspector/front-end/ExtensionServer.js:
601         (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
602         * inspector/front-end/ObjectPropertiesSection.js:
603         (WebInspector.ObjectPropertyTreeElement.prototype.update):
604         * inspector/front-end/PropertiesSidebarPane.js:
605         (WebInspector.PropertiesSidebarPane.prototype.update.nodePrototypesReady):
606         * inspector/front-end/SourceFrame.js:
607         (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup):
608         (WebInspector.SourceFrame.prototype._showPopup):
609
610 2011-04-29  Sheriff Bot  <webkit.review.bot@gmail.com>
611
612         Unreviewed, rolling out r85315.
613         http://trac.webkit.org/changeset/85315
614         https://bugs.webkit.org/show_bug.cgi?id=59792
615
616         Broke script-formatter.html test (Requested by podivilov on
617         #webkit).
618
619         * inspector/front-end/DebuggerPresentationModel.js:
620         (WebInspector.DebuggerPresentationModel.prototype.setFormatSourceFiles):
621         (WebInspector.DebuggerPresentationModel.prototype._removeBreakpointFromDebugger.didRemoveBreakpoint):
622         (WebInspector.DebuggerPresentationModel.prototype._removeBreakpointFromDebugger):
623         (WebInspector.PresentationBreakpoint.prototype.serialize):
624         * inspector/front-end/ScriptsPanel.js:
625         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.optionCompare):
626         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
627         (WebInspector.ScriptsPanel.prototype.reset):
628
629 2011-04-29  Vsevolod Vlasov  <vsevik@chromium.org>
630
631         Reviewed by Pavel Feldman.
632
633         Web Inspector: Hyperlink Auditing (ping) requests are not shown in network panel
634         https://bugs.webkit.org/show_bug.cgi?id=58794
635
636         Added ping requests to network panel.
637
638         Test: http/tests/inspector/network/ping.html
639
640         * English.lproj/localizedStrings.js:
641         * inspector/InspectorInstrumentation.cpp:
642         (WebCore::InspectorInstrumentation::continueAfterPingLoaderImpl):
643         * inspector/InspectorInstrumentation.h:
644         (WebCore::InspectorInstrumentation::continueAfterPingLoader):
645         * inspector/front-end/NetworkPanel.js:
646         (WebInspector.NetworkDataGridNode.prototype.refreshResource):
647         (WebInspector.NetworkDataGridNode.prototype._refreshStatusCell):
648         (WebInspector.NetworkDataGridNode.prototype._refreshTypeCell):
649         * inspector/front-end/Resource.js:
650         (WebInspector.Resource.prototype.get formParameters):
651         (WebInspector.Resource.prototype.requestContentType):
652         (WebInspector.Resource.prototype.isPingRequest):
653         * loader/PingLoader.cpp:
654         (WebCore::PingLoader::PingLoader):
655         * loader/PingLoader.h:
656
657 2011-04-28  Pavel Podivilov  <podivilov@chromium.org>
658
659         Reviewed by Pavel Feldman.
660
661         Web Inspector: breakpoints set in original and formatted scripts are messed up after navigation.
662         https://bugs.webkit.org/show_bug.cgi?id=59476
663
664         * inspector/front-end/DebuggerPresentationModel.js:
665         (WebInspector.DebuggerPresentationModel.prototype.toggleFormatSourceFiles):
666         (WebInspector.DebuggerPresentationModel.prototype._removeBreakpointFromDebugger):
667         (WebInspector.PresentationBreakpoint.prototype.serialize):
668         * inspector/front-end/ScriptsPanel.js:
669         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.optionCompare):
670         (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
671         (WebInspector.ScriptsPanel.prototype.reset):
672
673 2011-04-29  Pavel Feldman  <pfeldman@google.com>
674
675         Reviewed by Yury Semikhatsky.
676
677         Web Inspector: add "open link in new tab" action into the network and resources panels.
678         https://bugs.webkit.org/show_bug.cgi?id=59788
679
680         This change also distinguishes context menu items case between platforms.
681
682         * English.lproj/localizedStrings.js:
683         * inspector/front-end/ConsoleView.js:
684         (WebInspector.ConsoleView.prototype._handleContextMenuEvent):
685         * inspector/front-end/DOMBreakpointsSidebarPane.js:
686         (WebInspector.DOMBreakpointsSidebarPane):
687         * inspector/front-end/ElementsPanel.js:
688         (WebInspector.ElementsPanel.prototype._contextMenuEventFired):
689         (WebInspector.ElementsPanel.prototype.populateHrefContextMenu):
690         * inspector/front-end/ElementsTreeOutline.js:
691         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
692         (WebInspector.ElementsTreeElement.prototype._populateTextContextMenu):
693         * inspector/front-end/NetworkPanel.js:
694         (WebInspector.NetworkPanel.prototype._contextMenu):
695         * inspector/front-end/ResourcesPanel.js:
696         (WebInspector.FrameResourceTreeElement.prototype._handleContextMenuEvent):
697         (WebInspector.FrameResourceTreeElement.prototype._appendSaveAsAction):
698         (WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent):
699         * inspector/front-end/Settings.js:
700         * inspector/front-end/SourceFrame.js:
701         (WebInspector.SourceFrame.prototype.populateLineGutterContextMenu):
702         * inspector/front-end/TextViewer.js:
703         (WebInspector.TextViewer.prototype._contextMenu):
704         * inspector/front-end/inspector.js:
705         (WebInspector.openLinkExternallyLabel):
706         (WebInspector.openResource):
707         (WebInspector.useLowerCaseMenuTitles):
708
709 2011-04-28  Simon Fraser  <simon.fraser@apple.com>
710
711         Reviewed by Dan Bernstein.
712
713         Mask placement on composited layer is incorrect sometimes
714         https://bugs.webkit.org/show_bug.cgi?id=59775
715         
716         The mask layer always has the same size as its owning GraphicsLayer,
717         so it needs to share the same offsetFromRenderer as well. This fixes
718         the offset at which the mask layer contents are painted in cases where
719         that offset is non-zero, for example when outline style bloats all of
720         the layer sizes.
721
722         Test: compositing/masks/layer-mask-placement.html
723
724         * rendering/RenderLayerBacking.cpp:
725         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
726
727 2011-04-28  Dan Bernstein  <mitz@apple.com>
728
729         Rubber-stamped by Mark Rowe.
730
731         Reverted r81319.
732
733         Fixes <rdar://problem/9331580> REGRESSION (r81319): Safari fails to display dropdown navigation on classics.berkeley.edu
734
735         * page/NavigatorBase.cpp:
736
737 2011-04-28  Simon Fraser  <simon.fraser@apple.com>
738
739         Reviewed by Dirk Schulze.
740
741         1px box-shadow looks ugly
742         https://bugs.webkit.org/show_bug.cgi?id=58100
743         and
744         ShadowBlur incorrectly handles zero-sized blur radius in one axis
745         https://bugs.webkit.org/show_bug.cgi?id=59710
746         
747         blurLayerImage() has issues at the edges if the blur radius
748         is one, so in that case bump the buffer size out by a pixel.
749         This results in a correct, symmetrical blur.
750         
751         Also fix an issue noticed during testing where a zero
752         height or width radius would still blur on that axis,
753         because we clamp the kernel size to a minimum of two.
754
755         Test: fast/box-shadow/single-pixel-shadow.html
756
757         * platform/graphics/ShadowBlur.h:
758         * platform/graphics/ShadowBlur.cpp:
759         (WebCore::ShadowBlur::blurLayerImage):
760         Skip horizontal or vertial passes if the radius on that axis is zero.
761         Move the "if (pass && m_blurRadius.width() != m_blurRadius.height())"
762         clause to the end of the loop, since it only needs to execute once
763         after the first pass.        
764         (WebCore::ShadowBlur::blurredEdgeSize):
765         New method to compute the width of the blurred edge (radius + extra
766         pixel when necessary).
767         (WebCore::ShadowBlur::calculateLayerBoundingRect):
768         (WebCore::ShadowBlur::templateSize):
769         (WebCore::ShadowBlur::drawRectShadow):
770         (WebCore::ShadowBlur::drawInsetShadow):
771         (WebCore::ShadowBlur::drawInsetShadowWithTiling):
772         (WebCore::ShadowBlur::drawRectShadowWithTiling):
773         (WebCore::ShadowBlur::drawLayerPieces):
774         Use the result of blurredEdgeSize() rather than recomputing.
775
776 2011-04-28  Yael Aharon  <yael.aharon@nokia.com>
777
778         Reviewed by Beth Dakin.
779
780         CSS sibling selector (~) does not work with :target pseudo class
781         https://bugs.webkit.org/show_bug.cgi?id=26539
782
783         Allow style recalculation of forward siblings of elements with
784         forward positional rules.
785
786         Tests: fast/css/pseudo-target-indirect-sibling-001.html
787                fast/css/pseudo-target-indirect-sibling-002.html
788
789         * dom/Element.cpp:
790         (WebCore::Element::recalcStyle):
791
792 2011-04-28  Nat Duca  <nduca@chromium.org>
793
794         Reviewed by Kenneth Russell.
795
796         [chromium] Add swapBuffersCompleteCallback to Extensions3DChromium
797         https://bugs.webkit.org/show_bug.cgi?id=59626
798
799         * platform/graphics/chromium/Extensions3DChromium.h:
800         (WebCore::Extensions3DChromium::SwapBuffersCompleteCallbackCHROMIUM::~SwapBuffersCompleteCallbackCHROMIUM):
801
802 2011-04-28  Steve Lacey  <sjl@chromium.org>
803
804         Reviewed by Eric Carlson.
805
806         Change chromium media controls to use absolute positioning until bug 59644 is fixed.
807         https://bugs.webkit.org/show_bug.cgi?id=59732
808
809         * css/mediaControlsChromium.css:
810         (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
811         (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
812
813 2011-04-28  Luke Macpherson   <macpherson@chromium.org>
814
815         Reviewed by Eric Seidel.
816
817         Implement CSS border width and related properties in CSSStyleApplyProperty.
818         https://bugs.webkit.org/show_bug.cgi?id=59414
819
820         No new tests as no functionality added.
821
822         * css/CSSStyleApplyProperty.cpp:
823         Separated ApplyPropertyDefault into parent and child so that other classes could inherit
824         the applyInheritValue and applyInitialValue methods only.
825         This was necessary to avoid casting from CSSPrimitiveValue to inappropriate types in ApplyPropertyDefault::applyValue().
826         
827         Added ApplyPropertyWidth class for handling width based CSS properties.
828         * css/CSSStyleSelector.cpp:
829         Removed no-longer-required code for handling width based CSS properties.
830         * css/CSSStyleSelector.h:
831         Added a getter for m_rootElementStyle.
832
833 2011-04-28  Kent Tamura  <tkent@chromium.org>
834
835         Run sort-Xcode-project-file.
836
837         * WebCore.xcodeproj/project.pbxproj:
838
839 2011-04-28  Martin Robinson  <mrobinson@igalia.com>
840
841         Reviewed by Dirk Schulze.
842
843         [Cairo] Text underline is not shadowed when text-shadow is enabled
844         https://bugs.webkit.org/show_bug.cgi?id=48074
845
846         Use ContextShadow to enable shadows for text underlines. Also remove quite a bit
847         of duplicate code in GraphicsContext used for stroking lines. This code looks like it was
848         originally copied from the CG GraphicsContext.
849
850         * platform/graphics/GraphicsContext.h: Make adjustLineToPixelBoundaries so that we
851           can call it from a static helper function.
852         * platform/graphics/cairo/GraphicsContextCairo.cpp:
853         (WebCore::calculateStrokePatternOffset): Abstracted this code into a helper.
854         (WebCore::drawLineOnCairoContext): Abstracted this code into a helper. We need to
855         call it multiple times when shadowing text underlines.
856         (WebCore::GraphicsContext::drawLine): Use drawLineOnCairoContext.
857         (WebCore::GraphicsContext::strokeArc): Use calculateStrokePatternOffset.
858         (WebCore::GraphicsContext::drawLineForText): Use drawLineOnCairoContext.
859
860 2011-04-28  Sam Weinig  <sam@webkit.org>
861
862         Rubber-stamped by Mark Rowe.
863
864         Cleanup WebCore.xcodeproj a bit.
865
866         * WebCore.xcodeproj/project.pbxproj:
867         Added CompilerVersion.xcconfig and moved some JS bindings files into the
868         correct sub groups.
869
870 2011-04-28  David Levin  <levin@chromium.org>
871
872         Reviewed by Adam Barth.
873
874         Remove IMAGE_RESIZER related code.
875         https://bugs.webkit.org/show_bug.cgi?id=59735
876
877         * CMakeLists.txt:
878         * Configurations/FeatureDefines.xcconfig:
879         * GNUmakefile.am:
880         * GNUmakefile.list.am:
881         * WebCore.gypi:
882         * WebCore.pro:
883         * WebCore.vcproj/WebCore.vcproj:
884         * WebCore.xcodeproj/project.pbxproj:
885         * features.pri:
886         * html/AsyncImageResizer.cpp: Removed.
887         * html/AsyncImageResizer.h: Removed.
888         * html/ImageResizerThread.cpp: Removed.
889         * html/ImageResizerThread.h: Removed.
890
891 2011-04-28  Ilya Tikhonovsky  <loislo@chromium.org>
892
893         Unreviewed trivial one-line fix inspired by wrong patch for https://bugs.webkit.org/show_bug.cgi?id=59630.
894
895         * inspector/front-end/Settings.js:
896         (WebInspector.Settings):
897
898 2011-04-28  Beth Dakin  <bdakin@apple.com>
899
900         Rubber-stamped by Sam Weinig.
901
902         Rolling out revision 85258! I want to fix that bug a different way.
903         * platform/mac/ScrollbarThemeMac.mm:
904         (WebCore::ScrollbarThemeMac::paint):
905
906 2011-04-28  Chang Shu  <cshu@webkit.org>
907
908         Reviewed by Eric Seidel.
909
910         isContentEditable is not working properly with document.designMode
911         https://bugs.webkit.org/show_bug.cgi?id=53031
912
913         The specification (http://dev.w3.org/html5/spec/Overview.html#attr-contenteditable)
914         indicates that the element.isContentEditable relies on document.designMode if its
915         and its ancestors' contenteditable attributes are set to inherit.
916
917         1. Sync document render style after document.designMode is changed.
918         2. Removed the code that does unnecessary and incorrect handling for contenteditable
919         attribute with "inherit" value.
920         3. Ryosuke Niwa also helped to fix the code in ApplyStyleCommand that causes an assertion.
921
922         Tests: fast/dom/HTMLElement/iscontenteditable-designmodeon-allinherit-subframe.html
923                fast/dom/HTMLElement/iscontenteditable-designmodeon-allinherit.html
924                fast/dom/HTMLElement/iscontenteditable-designmodeon-ancestor.html
925                fast/dom/HTMLElement/iscontenteditable-designmodeon.html
926
927         * css/CSSStyleSelector.cpp:
928         (WebCore::CSSStyleSelector::styleForDocument):
929         * dom/Document.cpp:
930         (WebCore::Document::setDesignMode):
931         * dom/Node.cpp:
932         (WebCore::Node::rendererIsEditable):
933         * editing/ApplyStyleCommand.cpp:
934         (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
935         * html/HTMLElement.cpp:
936         (WebCore::HTMLElement::setContentEditable):
937
938 2011-04-28  Sheriff Bot  <webkit.review.bot@gmail.com>
939
940         Unreviewed, rolling out r85101.
941         http://trac.webkit.org/changeset/85101
942         https://bugs.webkit.org/show_bug.cgi?id=59757
943
944          it'd be better to rollout the patch and do another one with
945         another property name. Current one will bring us to a problem
946         at first run after upgrade because it's type was changed from
947         int to string. (Requested by loislo on #webkit).
948
949         * inspector/front-end/ScriptsPanel.js:
950         (WebInspector.ScriptsPanel.prototype._debuggerWasEnabled):
951         (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions.callback):
952         (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions):
953
954 2011-04-28  Mike Reed  <reed@google.com>
955
956         Reviewed by Eric Seidel.
957
958         fix shadw behavior for both CSS and Canvas -- skia only
959         https://bugs.webkit.org/show_bug.cgi?id=59700
960
961         Test:
962         canvas/philip/tests/2d.shadow.alpha.3.html
963         canvas/philip/tests/2d.shadow.alpha.4.html
964         canvas/philip/tests/2d.shadow.alpha.5.html
965         fast/canvas/canvas-fillPath-alpha-shadow.html
966         fast/canvas/canvas-strokePath-alpha-shadow.html
967         fast/canvas/canvas-strokeRect-alpha-shadow.html
968         fast/css/text-input-with-webkit-border-radius.html
969         fast/repaint/shadow-multiple-horizontal.html
970         fast/repaint/shadow-multiple-strict-horizontal.html
971         fast/repaint/shadow-multiple-strict-vertical.html
972         fast/repaint/shadow-multiple-vertical.html
973         fast/canvas/canvas-getImageData.html
974
975         * platform/graphics/chromium/FontChromiumWin.cpp:
976         (WebCore::Font::drawGlyphs):
977         * platform/graphics/skia/GraphicsContextSkia.cpp:
978         (WebCore::GraphicsContext::setPlatformShadow):
979
980 2011-04-28  David Kilzer  <ddkilzer@apple.com>
981
982         <http://webkit.org/b/59755> AXObjectCache::attachWrapper() over-retains an AccessibilityObjectWrapper
983
984         Reviewed by Chris Fleizach.
985
986         Previously, AXObjectCache::attachWrapper over-retained each
987         AccessibilityObjectWrapper it created, which is why
988         AXObjectCache::detachWrapper() contained an extra -release.
989
990         * accessibility/mac/AXObjectCacheMac.mm:
991         (WebCore::AXObjectCache::detachWrapper): Removed extra -release.
992         (WebCore::AXObjectCache::attachWrapper): Because setWrapper()
993         assigns to a RetainPtr<> instance variable, it doesn't need a +1
994         retained object passed in.  Fix the leak by using a RetainPtr<>
995         for the AccessibilityObjectWrapper.
996
997 2011-04-28  Nat Duca  <nduca@chromium.org>
998
999         Reviewed by Darin Fisher.
1000
1001         [chromium] Compute compositor fps value and history using the frameBegin timestamp
1002         https://bugs.webkit.org/show_bug.cgi?id=59668
1003
1004         This change switches the compositor FPS meter to use the timestamp
1005         of the beginning of the frame rather than the time we call
1006         swapBuffers. When scheduling is correctly tied to vsync, we can
1007         have highly variable times when we finish vsync and still have
1008         stable frame rates.
1009
1010         * platform/graphics/chromium/LayerRendererChromium.cpp:
1011         (WebCore::LayerRendererChromium::updateAndDrawLayers):
1012         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
1013         (WebCore::CCHeadsUpDisplay::CCHeadsUpDisplay):
1014         (WebCore::CCHeadsUpDisplay::drawFPSCounter):
1015         (WebCore::CCHeadsUpDisplay::onFrameBegin):
1016         (WebCore::CCHeadsUpDisplay::onPresent):
1017         * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
1018
1019 2011-04-28  Beth Dakin  <bdakin@apple.com>
1020
1021         Reviewed by Darin Adler.
1022
1023         https://bugs.webkit.org/show_bug.cgi?id=59759
1024         Overflow:scroll regions with overlay scrollbars show full thumb instead of just a 
1025         track when there is nothing to scroll to
1026         <rdar://problem/9282066>
1027
1028         Scrollbar::totalSize() and Scrollbar::visibleSize() are the same when there is 
1029         nothing to scroll to. Just dividing them to get a knob proportion yields 1, which 
1030         is not right. Set the proportion to 0 in this case instead.
1031         * platform/mac/ScrollbarThemeMac.mm:
1032         (WebCore::ScrollbarThemeMac::paint):
1033
1034 2011-04-28  Dan Bernstein  <mitz@apple.com>
1035
1036         Reviewed by Simon Fraser.
1037
1038         <rdar://problem/9291132> Add support for -epub-prefixed properties
1039
1040         Test: fast/css/epub-properties.html
1041
1042         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
1043         (WebCore::cssPropertyName): Map "epub"-prefixed properties to "-epub"-prefixed ones.
1044         * css/CSSPropertyNames.in: Added -epub- aliases to caption-side, -webkit-hyphens, -webkit-text-combine,
1045         -webkit-text-emphasis, -webkit-text-emphasis-color, -webkit-text-emphasis-style, -webkit-text-orientation,
1046         text-transform, text-transform, word-break, and -webkit-writing-mode.
1047
1048 2011-04-28  Adam Barth  <abarth@webkit.org>
1049
1050         Reviewed by Eric Seidel.
1051
1052         Remove WML
1053         https://bugs.webkit.org/show_bug.cgi?id=59678
1054
1055         This patch removes WML from WebCore.  After removing WML, there's a
1056         bunch of twisted code that could be untwisted, but this patch contains
1057         only the purely mechanical part of removing the feature.
1058
1059         There's been a lot of discussion on webkit-dev about whether we should
1060         remove WML.  In addition to those threads, we've had an informal poll
1061         of the reviewers as well as an in-person discussion at the WebKit
1062         contributor's meeting.  Removing any feature is likely to make some
1063         folks unhappy, but, on balance, removing WML appears to be the right
1064         thing for the project to do at this time.
1065
1066         * CMakeLists.txt:
1067         * CodeGenerators.pri:
1068         * Configurations/FeatureDefines.xcconfig:
1069         * DerivedSources.cpp:
1070         * DerivedSources.make:
1071         * GNUmakefile.am:
1072         * GNUmakefile.list.am:
1073         * WebCore.gyp/WebCore.gyp:
1074         * WebCore.gypi:
1075         * WebCore.pro:
1076         * WebCore.vcproj/WebCore.vcproj:
1077         * WebCore.xcodeproj/project.pbxproj:
1078         * css/CSSStyleSelector.cpp:
1079         (WebCore::linkAttribute):
1080         (WebCore::CSSStyleSelector::styleForElement):
1081         (WebCore::CSSStyleSelector::adjustRenderStyle):
1082         * css/wml.css: Removed.
1083         * dom/DOMImplementation.cpp:
1084         (WebCore::DOMImplementation::createDocument):
1085         * dom/Document.cpp:
1086         (WebCore::Document::Document):
1087         (WebCore::Document::createElement):
1088         * dom/Document.h:
1089         (WebCore::Document::isMediaDocument):
1090         * dom/Document.idl:
1091         * dom/InputElement.h:
1092         * dom/Node.cpp:
1093         (WebCore::Node::toInputElement):
1094         * dom/Node.h:
1095         * dom/OptionElement.cpp:
1096         (WebCore::toOptionElement):
1097         (WebCore::isOptionElement):
1098         * dom/OptionElement.h:
1099         * dom/OptionGroupElement.cpp:
1100         (WebCore::toOptionGroupElement):
1101         (WebCore::isOptionGroupElement):
1102         * dom/SelectElement.cpp:
1103         (WebCore::toSelectElement):
1104         * dom/SelectElement.h:
1105         * dom/Text.cpp:
1106         (WebCore::Text::attach):
1107         * dom/XMLDocumentParser.cpp:
1108         (WebCore::XMLDocumentParser::insertErrorMessageBlock):
1109         * dom/XMLDocumentParser.h:
1110         * dom/XMLDocumentParserLibxml2.cpp:
1111         (WebCore::XMLDocumentParser::internalSubset):
1112         (WebCore::getEntityHandler):
1113         * dom/XMLDocumentParserQt.cpp:
1114         (WebCore::XMLDocumentParser::parse):
1115         (WebCore::XMLDocumentParser::parseDtd):
1116         * editing/htmlediting.cpp:
1117         (WebCore::canHaveChildrenForEditing):
1118         * features.pri:
1119         * history/BackForwardList.h:
1120         * history/BackForwardListImpl.cpp:
1121         * history/BackForwardListImpl.h:
1122         * history/PageCache.cpp:
1123         (WebCore::PageCache::canCachePageContainingThisFrame):
1124         * html/HTMLAnchorElement.h:
1125         * inspector/ConsoleMessage.cpp:
1126         (WebCore::messageSourceValue):
1127         * inspector/front-end/ConsoleView.js:
1128         (WebInspector.ConsoleMessage.prototype.toString):
1129         * loader/FrameLoader.cpp:
1130         (WebCore::isBackForwardLoadType):
1131         (WebCore::FrameLoader::transitionToCommitted):
1132         (WebCore::FrameLoader::shouldReload):
1133         (WebCore::FrameLoader::loadDifferentDocumentItem):
1134         (WebCore::FrameLoader::loadItem):
1135         * loader/FrameLoaderTypes.h:
1136         * loader/HistoryController.cpp:
1137         (WebCore::HistoryController::restoreDocumentState):
1138         * manual-tests/wml: Removed.
1139         * manual-tests/wml/StartTests.wml: Removed.
1140         * manual-tests/wml/a-br-element.wml: Removed.
1141         * manual-tests/wml/a-element.wml: Removed.
1142         * manual-tests/wml/a-img-element.wml: Removed.
1143         * manual-tests/wml/access-target.wml: Removed.
1144         * manual-tests/wml/anchor-br-element.wml: Removed.
1145         * manual-tests/wml/anchor-element.wml: Removed.
1146         * manual-tests/wml/anchor-img-element.wml: Removed.
1147         * manual-tests/wml/card-newcontext-attr.wml: Removed.
1148         * manual-tests/wml/card-onenterbackward.wml: Removed.
1149         * manual-tests/wml/card-onenterforward.wml: Removed.
1150         * manual-tests/wml/card-ontimer.wml: Removed.
1151         * manual-tests/wml/deck-access-control.wml: Removed.
1152         * manual-tests/wml/input-format.wml: Removed.
1153         * manual-tests/wml/onevent-go.wml: Removed.
1154         * manual-tests/wml/onevent-noop.wml: Removed.
1155         * manual-tests/wml/onevent-prev.wml: Removed.
1156         * manual-tests/wml/onevent-refresh.wml: Removed.
1157         * manual-tests/wml/onevent-shadow.wml: Removed.
1158         * manual-tests/wml/resources: Removed.
1159         * manual-tests/wml/resources/smiley.png: Removed.
1160         * manual-tests/wml/select-element.wml: Removed.
1161         * manual-tests/wml/select-onpick-event-crash.wml: Removed.
1162         * manual-tests/wml/select-onpick-event.wml: Removed.
1163         * manual-tests/wml/setvar-element.wml: Removed.
1164         * manual-tests/wml/targetdeck.wml: Removed.
1165         * manual-tests/wml/task-go-in-anchor.wml: Removed.
1166         * manual-tests/wml/task-prev-in-anchor.wml: Removed.
1167         * manual-tests/wml/task-refresh-in-anchor.wml: Removed.
1168         * manual-tests/wml/template-go.wml: Removed.
1169         * manual-tests/wml/template-ontimer.wml: Removed.
1170         * manual-tests/wml/timer.wml: Removed.
1171         * manual-tests/wml/variable-substitution.wml: Removed.
1172         * page/Console.cpp:
1173         (WebCore::printMessageSourceAndLevelPrefix):
1174         * page/Console.h:
1175         * page/Frame.cpp:
1176         (WebCore::Frame::Frame):
1177         * page/Page.cpp:
1178         * page/Page.h:
1179         * platform/MIMETypeRegistry.cpp:
1180         (WebCore::initializeSupportedNonImageMimeTypes):
1181         * platform/network/FormDataBuilder.h:
1182         * platform/network/mac/ResourceHandleMac.mm:
1183         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
1184         * platform/wince/MIMETypeRegistryWinCE.cpp:
1185         (WebCore::initMIMETypeEntensionMap):
1186         * rendering/HitTestResult.cpp:
1187         (WebCore::HitTestResult::altDisplayString):
1188         (WebCore::HitTestResult::absoluteImageURL):
1189         (WebCore::HitTestResult::absoluteLinkURL):
1190         (WebCore::HitTestResult::isLiveLink):
1191         * rendering/RenderBox.cpp:
1192         * rendering/RenderButton.cpp:
1193         (WebCore::RenderButton::updateFromElement):
1194         * rendering/RenderFieldset.cpp:
1195         (WebCore::RenderFieldset::findLegend):
1196         * rendering/RenderImage.cpp:
1197         (WebCore::RenderImage::updateAltText):
1198         * rendering/RenderObject.cpp:
1199         (WebCore::RenderObject::isLegend):
1200         (WebCore::RenderObject::offsetParent):
1201         * wml: Removed.
1202         * wml/WMLAElement.cpp: Removed.
1203         * wml/WMLAElement.h: Removed.
1204         * wml/WMLAccessElement.cpp: Removed.
1205         * wml/WMLAccessElement.h: Removed.
1206         * wml/WMLAnchorElement.cpp: Removed.
1207         * wml/WMLAnchorElement.h: Removed.
1208         * wml/WMLAttributeNames.in: Removed.
1209         * wml/WMLBRElement.cpp: Removed.
1210         * wml/WMLBRElement.h: Removed.
1211         * wml/WMLCardElement.cpp: Removed.
1212         * wml/WMLCardElement.h: Removed.
1213         * wml/WMLDoElement.cpp: Removed.
1214         * wml/WMLDoElement.h: Removed.
1215         * wml/WMLDocument.cpp: Removed.
1216         * wml/WMLDocument.h: Removed.
1217         * wml/WMLElement.cpp: Removed.
1218         * wml/WMLElement.h: Removed.
1219         * wml/WMLErrorHandling.cpp: Removed.
1220         * wml/WMLErrorHandling.h: Removed.
1221         * wml/WMLEventHandlingElement.cpp: Removed.
1222         * wml/WMLEventHandlingElement.h: Removed.
1223         * wml/WMLFieldSetElement.cpp: Removed.
1224         * wml/WMLFieldSetElement.h: Removed.
1225         * wml/WMLFormControlElement.cpp: Removed.
1226         * wml/WMLFormControlElement.h: Removed.
1227         * wml/WMLGoElement.cpp: Removed.
1228         * wml/WMLGoElement.h: Removed.
1229         * wml/WMLImageElement.cpp: Removed.
1230         * wml/WMLImageElement.h: Removed.
1231         * wml/WMLImageLoader.cpp: Removed.
1232         * wml/WMLImageLoader.h: Removed.
1233         * wml/WMLInputElement.cpp: Removed.
1234         * wml/WMLInputElement.h: Removed.
1235         * wml/WMLInsertedLegendElement.cpp: Removed.
1236         * wml/WMLInsertedLegendElement.h: Removed.
1237         * wml/WMLIntrinsicEvent.cpp: Removed.
1238         * wml/WMLIntrinsicEvent.h: Removed.
1239         * wml/WMLIntrinsicEventHandler.cpp: Removed.
1240         * wml/WMLIntrinsicEventHandler.h: Removed.
1241         * wml/WMLMetaElement.cpp: Removed.
1242         * wml/WMLMetaElement.h: Removed.
1243         * wml/WMLNoopElement.cpp: Removed.
1244         * wml/WMLNoopElement.h: Removed.
1245         * wml/WMLOnEventElement.cpp: Removed.
1246         * wml/WMLOnEventElement.h: Removed.
1247         * wml/WMLOptGroupElement.cpp: Removed.
1248         * wml/WMLOptGroupElement.h: Removed.
1249         * wml/WMLOptionElement.cpp: Removed.
1250         * wml/WMLOptionElement.h: Removed.
1251         * wml/WMLPElement.cpp: Removed.
1252         * wml/WMLPElement.h: Removed.
1253         * wml/WMLPageState.cpp: Removed.
1254         * wml/WMLPageState.h: Removed.
1255         * wml/WMLPostfieldElement.cpp: Removed.
1256         * wml/WMLPostfieldElement.h: Removed.
1257         * wml/WMLPrevElement.cpp: Removed.
1258         * wml/WMLPrevElement.h: Removed.
1259         * wml/WMLRefreshElement.cpp: Removed.
1260         * wml/WMLRefreshElement.h: Removed.
1261         * wml/WMLSelectElement.cpp: Removed.
1262         * wml/WMLSelectElement.h: Removed.
1263         * wml/WMLSetvarElement.cpp: Removed.
1264         * wml/WMLSetvarElement.h: Removed.
1265         * wml/WMLTableElement.cpp: Removed.
1266         * wml/WMLTableElement.h: Removed.
1267         * wml/WMLTagNames.in: Removed.
1268         * wml/WMLTaskElement.cpp: Removed.
1269         * wml/WMLTaskElement.h: Removed.
1270         * wml/WMLTemplateElement.cpp: Removed.
1271         * wml/WMLTemplateElement.h: Removed.
1272         * wml/WMLTimerElement.cpp: Removed.
1273         * wml/WMLTimerElement.h: Removed.
1274         * wml/WMLVariables.cpp: Removed.
1275         * wml/WMLVariables.h: Removed.
1276
1277 2011-04-28  Sheriff Bot  <webkit.review.bot@gmail.com>
1278
1279         Unreviewed, rolling out r85233 and r85235.
1280         http://trac.webkit.org/changeset/85233
1281         http://trac.webkit.org/changeset/85235
1282         https://bugs.webkit.org/show_bug.cgi?id=59754
1283
1284         Causes issues with jsc. (Requested by dave_levin on #webkit).
1285
1286         * ForwardingHeaders/wtf/ThreadRestrictionVerifier.h: Removed.
1287         * loader/icon/IconDatabase.cpp:
1288         (WebCore::IconDatabase::defaultIcon):
1289         (WebCore::IconDatabase::setIconDataForIconURL):
1290         (WebCore::IconDatabase::getOrCreateIconRecord):
1291         (WebCore::IconDatabase::readFromDatabase):
1292
1293 2011-04-28  Jay Civelli  <jcivelli@chromium.org>
1294
1295         Reviewed by Adam Barth.
1296
1297         Introducing a new class that allows serialization of a page back
1298         to HTML/XML with all its sub-frames and also retrieves the page's
1299         resources.
1300         Tests: unit-tests in chromium/tests/WebPageNewSerializerTest.cpp
1301         https://bugs.webkit.org/show_bug.cgi?id=58947
1302
1303         * Android.mk:
1304         * CMakeLists.txt:
1305         * GNUmakefile.list.am:
1306         * WebCore.gypi:
1307         * WebCore.pro:
1308         * WebCore.vcproj/WebCore.vcproj:
1309         * dom/Document.cpp:
1310         (WebCore::Document::suggestedMIMEType):
1311         * dom/Document.h:
1312         * editing/MarkupAccumulator.cpp:
1313         (WebCore::MarkupAccumulator::appendCustomAttributes):
1314         (WebCore::MarkupAccumulator::appendElement):
1315         * editing/MarkupAccumulator.h:
1316         * html/parser/HTMLMetaCharsetParser.cpp:
1317         (WebCore::HTMLMetaCharsetParser::processMeta):
1318         (WebCore::HTMLMetaCharsetParser::encodingFromMetaAttributes):
1319         * html/parser/HTMLMetaCharsetParser.h:
1320         * page/PageSerializer.cpp: Added.
1321         * page/PageSerializer.h: Added.
1322
1323 2011-04-28  Mark Pilgrim  <pilgrim@chromium.org>
1324
1325         Reviewed by Tony Chang.
1326
1327         IndexedDB createIndex should fail if name arg is null
1328         https://bugs.webkit.org/show_bug.cgi?id=58365
1329
1330         Test: storage/indexeddb/mozilla/create-index-null-name.html
1331
1332         * storage/IDBObjectStore.idl:
1333         * storage/IDBObjectStoreBackendImpl.cpp:
1334         (WebCore::IDBObjectStoreBackendImpl::createIndex):
1335
1336 2011-04-28  Mark Pilgrim  <pilgrim@chromium.org>
1337
1338         Reviewed by Tony Chang.
1339
1340         IndexedDB put() should fail if second (key) parameter is null
1341         https://bugs.webkit.org/show_bug.cgi?id=58613
1342
1343         If key arg is not specified, prpKey ends up as a null pointer in ::put().
1344         However, if the key arg is specified but is null, prpKey ends up as a
1345         valid IDBKey which has a null key type. As it happens, we need to be able
1346         to detect the difference between these cases (the key arg is optional but
1347         if specified must not be null).
1348
1349         Test: storage/indexeddb/mozilla/key-requirements-put-null-key.html
1350
1351         * storage/IDBObjectStoreBackendImpl.cpp:
1352         (WebCore::IDBObjectStoreBackendImpl::put):
1353
1354 2011-04-07  David Levin  <levin@chromium.org>
1355
1356         Reviewed by Darin Adler.
1357
1358         Add asserts to RefCounted to make sure ref/deref happens on the right thread.
1359         https://bugs.webkit.org/show_bug.cgi?id=31639
1360
1361         No new functionality exposed so no new tests. (The change is basically adding
1362         more testing.)
1363
1364         * ForwardingHeaders/wtf/ThreadRestrictionVerifier.h: Added.
1365         * loader/icon/IconDatabase.cpp:
1366         (WebCore::IconDatabase::defaultIcon): Set the mutex which does the guarding of the variable.
1367         (WebCore::IconDatabase::getOrCreateIconRecord): Ditto.
1368         (WebCore::IconDatabase::setIconDataForIconURL): Ditto.
1369         (WebCore::IconDatabase::readFromDatabase): Ditto.
1370
1371 2011-04-28  Kenneth Russell  <kbr@google.com>
1372
1373         Unreviewed build fix for Web Audio with strict OwnPtr.
1374
1375         * platform/audio/HRTFDatabaseLoader.cpp:
1376         (WebCore::HRTFDatabaseLoader::HRTFDatabaseLoader):
1377
1378 2011-04-28  Dominic Cooney  <dominicc@chromium.org>
1379
1380         Reviewed by Geoffrey Garen.
1381
1382         Walk shadow hosts as well as parent nodes when finding opaque roots.
1383         https://bugs.webkit.org/show_bug.cgi?id=59571
1384
1385         Test: fast/dom/shadow/gc-shadow.html
1386
1387         * bindings/js/JSDOMBinding.h:
1388         (WebCore::root):
1389
1390 2011-04-28  Martin Robinson  <mrobinson@igalia.com>
1391
1392         Reviewed by Xan Lopez.
1393
1394         [GTK] Click counting logic should be shared between WebKit1 and WebKit2
1395         https://bugs.webkit.org/show_bug.cgi?id=59715
1396
1397         Added a GtkClickCounter class which is just the logic from WebKit1 pushed down
1398         into WebCore so that WebKit1 and WebKit2 can share the code.
1399
1400         No new tests. This is covered by fast/events/click-count.html.
1401
1402         * GNUmakefile.list.am: Added new files.
1403         * platform/gtk/GtkClickCounter.cpp: Added.
1404         (WebCore::GtkClickCounter::GtkClickCounter): Added.
1405         (WebCore::GtkClickCounter::reset): Added.
1406         (WebCore::GtkClickCounter::shouldProcessButtonEvent): Added.
1407         (WebCore::getEventTime): Added.
1408         (WebCore::GtkClickCounter::clickCountForGdkButtonEvent): Added.
1409         * platform/gtk/GtkClickCounter.h: Added.
1410
1411 2011-04-28  Dan Bernstein  <mitz@apple.com>
1412
1413         Build fix.
1414
1415         * css/CSSParser.cpp:
1416         (WebCore::cssPropertyID):
1417
1418 2011-04-28  Dan Bernstein  <mitz@apple.com>
1419
1420         Reviewed by Simon Fraser.
1421
1422         Allow specifying CSS property aliases in CSSPropertyNames.in files
1423         https://bugs.webkit.org/show_bug.cgi?id=59712
1424
1425         * css/CSSParser.cpp:
1426         (WebCore::cssPropertyID): Removed code to handle some aliases
1427         * css/CSSPropertyNames.in: Added aliases no longer handled in code.
1428         * css/makeprop.pl: Interpret lines of the form "alias-property-name = property-name" as
1429         defining an alias, and add an appropriate entry to the gperf file.
1430
1431 2011-04-28  Arno Renevier  <arno@renevier.net>
1432
1433         Reviewed by Gustavo Noronha Silva.
1434
1435         [Soup] does not load css stylesheets without content-type
1436         https://bugs.webkit.org/show_bug.cgi?id=59697
1437
1438         When sniffing content type, do not replace http Content-Type header in
1439         soup message anymore, but keep sniffed content type in a separate
1440         variable.
1441
1442         * platform/network/soup/ResourceHandleSoup.cpp:
1443         (WebCore::contentSniffedCallback):
1444         * platform/network/soup/ResourceResponse.h:
1445         (WebCore::ResourceResponse::sniffedContentType):
1446         (WebCore::ResourceResponse::setSniffedContentType):
1447         * platform/network/soup/ResourceResponseSoup.cpp:
1448         (WebCore::ResourceResponse::updateFromSoupMessage):
1449
1450 2011-04-28  Yael Aharon  <yael.aharon@nokia.com>
1451
1452         Reviewed by Andreas Kling.
1453
1454         Remove flag ENABLE_SYMBIAN_DIALOG_PROVIDER
1455         https://bugs.webkit.org/show_bug.cgi?id=59704
1456
1457         No new tests, just code cleanup.
1458
1459         * WebCore.pri:
1460
1461 2011-04-28  Pavel Podivilov  <podivilov@chromium.org>
1462
1463         Reviewed by Pavel Feldman.
1464
1465         Web Inspector: remove "Pretty print" source frame context menu item.
1466         https://bugs.webkit.org/show_bug.cgi?id=59709
1467
1468         * inspector/front-end/DebuggerPresentationModel.js:
1469         (WebInspector.DebuggerPresentationModel.prototype.setFormatSourceFiles):
1470         * inspector/front-end/ScriptsPanel.js:
1471         (WebInspector.ScriptsPanel.prototype._toggleFormatSourceFiles):
1472         * inspector/front-end/SourceFrame.js:
1473         (WebInspector.SourceFrame.prototype.populateTextAreaContextMenu):
1474
1475 2011-04-28  Satish Sampath  <satish@chromium.org>
1476
1477         Reviewed by Tony Gentilcore.
1478
1479         Speech input button layout issues with padding and border.
1480         https://bugs.webkit.org/show_bug.cgi?id=59613
1481
1482         * rendering/RenderTextControlSingleLine.cpp:
1483         (WebCore::RenderTextControlSingleLine::layout):
1484         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
1485         (WebCore::RenderTextControlSingleLine::forwardEvent):
1486
1487 2011-04-28  Carlos Garcia Campos  <cgarcia@igalia.com>
1488
1489         Reviewed by Martin Robinson.
1490
1491         [GTK] Check whether to use native scrollbars at run time
1492         https://bugs.webkit.org/show_bug.cgi?id=59694
1493
1494         It's currently decided at build time depending on whether webkit2
1495         build is enabled or not. That makes imposible to build both
1496         webkit1 and webkit2 using the same libWebCore.
1497
1498         * GNUmakefile.am:
1499         * platform/ScrollView.cpp:
1500         (WebCore::ScrollView::wheelEvent):
1501         * platform/gtk/ScrollViewGtk.cpp:
1502         (WebCore::ScrollView::createScrollbar):
1503
1504 2011-04-28  Pavel Feldman  <pfeldman@google.com>
1505
1506         Reviewed by Yury Semikhatsky.
1507
1508         Web Inspector: add status bar button for pretty print.
1509         https://bugs.webkit.org/show_bug.cgi?id=59467
1510
1511         * WebCore.gypi:
1512         * inspector/front-end/Images/prettyPrintButtonGlyph.png: Added.
1513         * inspector/front-end/ScriptsPanel.js:
1514         (WebInspector.ScriptsPanel):
1515         (WebInspector.ScriptsPanel.prototype.get statusBarItems):
1516         (WebInspector.ScriptsPanel.prototype._toggleFormatSourceFiles):
1517         * inspector/front-end/WebKit.qrc:
1518         * inspector/front-end/inspector.css:
1519         (.scripts-toggle-pretty-print-status-bar-item .glyph):
1520         (.scripts-toggle-pretty-print-status-bar-item.toggled .glyph):
1521
1522 2011-04-28  Pavel Feldman  <pfeldman@google.com>
1523
1524         Reviewed by Yury Semikhatsky.
1525
1526         Web Inspector: add ResourceTreeModel tests.
1527         https://bugs.webkit.org/show_bug.cgi?id=59616
1528
1529         Tests: http/tests/inspector/resource-tree/resource-tree-document-url.html
1530                http/tests/inspector/resource-tree/resource-tree-frame-navigate.html
1531                http/tests/inspector/resource-tree/resource-tree-reload.html
1532
1533         * inspector/front-end/ResourceTreeModel.js:
1534         (WebInspector.ResourceTreeModel.prototype.frontendReused):
1535         (WebInspector.ResourceTreeModel.prototype._addFrame):
1536         (WebInspector.ResourceTreeModel.prototype._frameNavigated):
1537         (WebInspector.ResourceTreeModel.prototype._frameDetached):
1538         (WebInspector.ResourceTreeModel.prototype._onResourceUpdated):
1539         (WebInspector.ResourceTreeModel.prototype.forAllResources):
1540         (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
1541         (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
1542         (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
1543         * inspector/front-end/ResourcesPanel.js:
1544         (WebInspector.ResourcesPanel.prototype._populateResourceTree):
1545         (WebInspector.ResourcesPanel.prototype._frameAdded):
1546         (WebInspector.ResourcesPanel.prototype._frameDetached):
1547         (WebInspector.ResourcesPanel.prototype._frameNavigated):
1548         (WebInspector.FrameTreeElement):
1549         (WebInspector.FrameTreeElement.prototype.frameNavigated):
1550
1551 2011-04-28  Mikhail Naganov  <mnaganov@chromium.org>
1552
1553         Reviewed by Yury Semikhatsky.
1554
1555         WebInspector: [Chromium] Implement retaining paths following in detailed heap snapshots.
1556         https://bugs.webkit.org/show_bug.cgi?id=59592
1557
1558         * inspector/front-end/DetailedHeapshotGridNodes.js:
1559         (WebInspector.HeapSnapshotGridNode.prototype._populate):
1560         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren.childrenRetrieved):
1561         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren.callSerialize):
1562         (WebInspector.HeapSnapshotGridNode.prototype.populateChildren):
1563         * inspector/front-end/DetailedHeapshotView.js:
1564         (WebInspector.HeapSnapshotContainmentDataGrid.prototype._defaultPopulateCount.100.expandRoute.nextStep.else.afterExpand):
1565         (WebInspector.HeapSnapshotContainmentDataGrid.prototype._defaultPopulateCount.100.expandRoute):
1566         (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext.pathFound):
1567         (WebInspector.DetailedHeapshotView.prototype._mouseClickInRetainmentGrid.expandRoute):
1568         (WebInspector.DetailedHeapshotView.prototype._mouseClickInRetainmentGrid):
1569         (WebInspector.DetailedHeapshotView.prototype.changeView.sortingComplete):
1570         (WebInspector.DetailedHeapshotView.prototype.changeView):
1571         * inspector/front-end/HeapSnapshot.js:
1572         (WebInspector.HeapSnapshotPathFinder.prototype.findNext):
1573         (WebInspector.HeapSnapshotPathFinder.prototype._nextEdgeIter):
1574         (WebInspector.HeapSnapshotPathFinder.prototype._buildNextPath):
1575         (WebInspector.HeapSnapshotPathFinder.prototype._pathToString):
1576         (WebInspector.HeapSnapshotPathFinder.prototype._pathToRoute):
1577         * inspector/front-end/heapProfiler.css:
1578         (div.retaining-paths-view td.path-column div:hover):
1579
1580 2011-04-28  Mikhail Naganov  <mnaganov@chromium.org>
1581
1582         Reviewed by Yury Semikhatsky.
1583
1584         Web Inspector: [Chromium] Optimize detailed heap snapshots loading / parsing.
1585         https://bugs.webkit.org/show_bug.cgi?id=59454
1586
1587         Test: inspector/profiler/heap-snapshot-loader.html
1588
1589         * inspector/front-end/HeapSnapshot.js:
1590         (WebInspector.HeapSnapshotLoader):
1591         (WebInspector.HeapSnapshotLoader.prototype._findBalancedCurlyBrackets):
1592         (WebInspector.HeapSnapshotLoader.prototype.finishLoading):
1593         (WebInspector.HeapSnapshotLoader.prototype._parseNodes):
1594         (WebInspector.HeapSnapshotLoader.prototype._parseStringsArray):
1595         (WebInspector.HeapSnapshotLoader.prototype.pushJSONChunk):
1596         * inspector/front-end/HeapSnapshotProxy.js:
1597         (WebInspector.HeapSnapshotFakeWorker.prototype.postMessage):
1598
1599 2011-04-28  ojab  <ojab@ojab.ru>
1600
1601         Reviewed by David Levin.
1602
1603         Fix build with libpng-1.5.1
1604         https://bugs.webkit.org/show_bug.cgi?id=59607
1605
1606         * platform/image-decoders/png/PNGImageDecoder.cpp:
1607         (WebCore::readColorProfile):
1608
1609 2011-04-28  Zoltan Herczeg  <zherczeg@inf.u-szeged.hu>
1610
1611         Reviewed by Nikolas Zimmermann.
1612
1613         Optimizing gaussian blur filter to ARM-neon SIMD instruction set
1614         https://bugs.webkit.org/show_bug.cgi?id=59447
1615
1616         This patch contains two sub-routines, one for speeding up
1617         alpha channel only gaussian blur (by 2.5 times) and one
1618         for speeding up all channel blur (by 4 times).
1619
1620         The common code is also redesigned to better fit for platform
1621         specific code. This means large chunks of code was moved to
1622         different files, and all platform specific files are added to
1623         all build systems.
1624
1625         * CMakeLists.txt:
1626         * GNUmakefile.am:
1627         * GNUmakefile.list.am:
1628         * WebCore.gypi:
1629         * WebCore.pro:
1630         * WebCore.vcproj/WebCore.vcproj:
1631         * WebCore.vcproj/WebCoreCommon.vsprops:
1632         * WebCore.xcodeproj/project.pbxproj:
1633         * platform/graphics/filters/FEGaussianBlur.cpp:
1634         (WebCore::FEGaussianBlur::platformApplyGeneric):
1635         (WebCore::FEGaussianBlur::apply):
1636         * platform/graphics/filters/FEGaussianBlur.h:
1637         (WebCore::FEGaussianBlur::kernelPosition):
1638         (WebCore::FEGaussianBlur::platformApply):
1639         * platform/graphics/filters/FELighting.cpp:
1640         (WebCore::FELighting::platformApplyGeneric):
1641         (WebCore::FELighting::drawLighting):
1642         * platform/graphics/filters/FELighting.h:
1643         (WebCore::FELighting::platformApply):
1644         * platform/graphics/filters/arm/FEGaussianBlurNEON.cpp: Added.
1645         (WebCore::WTF_ALIGNED):
1646         (WebCore::feGaussianBlurConstantsForNeon):
1647         * platform/graphics/filters/arm/FEGaussianBlurNEON.h: Added.
1648         (WebCore::FEGaussianBlur::platformApplyNeon):
1649         * platform/graphics/filters/arm/FELightingNEON.cpp:
1650         (WebCore::WTF_ALIGNED):
1651         (WebCore::FELighting::getPowerCoefficients):
1652         * platform/graphics/filters/arm/FELightingNEON.h:
1653         (WebCore::FELighting::platformApplyNeon):
1654
1655 2011-04-28  Alexander Pavlov  <apavlov@chromium.org>
1656
1657         Reviewed by Yury Semikhatsky.
1658
1659         Web Inspector: provide a hotkey for script pause
1660         https://bugs.webkit.org/show_bug.cgi?id=59593
1661
1662         In fact, F8 works as a hotkey, but this fact was not reflected
1663         in the shortcut help popup.
1664
1665         * English.lproj/localizedStrings.js:
1666         * inspector/front-end/ScriptsPanel.js:
1667         (WebInspector.ScriptsPanel.prototype._registerShortcuts):
1668
1669 2011-04-28  Adam Barth  <abarth@webkit.org>
1670
1671         Reviewed by Eric Seidel.
1672
1673         PluginStream should play nice with strict OwnPtr
1674         https://bugs.webkit.org/show_bug.cgi?id=59675
1675
1676         These failures appear when enabling strict OwnPtr on Qt.
1677
1678         * plugins/PluginStream.cpp:
1679         (WebCore::PluginStream::PluginStream):
1680         (WebCore::PluginStream::didReceiveData):
1681
1682 2011-04-26  Alexander Pavlov  <apavlov@chromium.org>
1683
1684         Reviewed by Pavel Feldman.
1685
1686         Web Inspector: Use CachedResource to retrieve charset-decoded stylesheet text
1687         https://bugs.webkit.org/show_bug.cgi?id=59326
1688
1689         Concrete CachedResource successors for stylesheets and scripts
1690         can decode their content better than the generic approach we use.
1691
1692         * inspector/InspectorPageAgent.cpp:
1693         (WebCore::decodeSharedBuffer):
1694         (WebCore::prepareCachedResourceBuffer):
1695         (WebCore::cachedResourceDecoded):
1696         (WebCore::InspectorPageAgent::resourceContent):
1697         (WebCore::InspectorPageAgent::resourceData):
1698         * inspector/InspectorStyleSheet.cpp:
1699         (WebCore::InspectorStyleSheet::originalStyleSheetText):
1700
1701 2011-04-28  Jon Lee  <jonlee@apple.com>
1702
1703         Reviewed by Simon Fraser.
1704
1705         REGRESSION: white overlay scrollbars on apple.com/startpage
1706         https://bugs.webkit.org/show_bug.cgi?id=59540
1707         <rdar://problem/9338653>
1708
1709         Now we look at the document background in addition to the <body> element,
1710         and blend those colors in with the base background of the frame view to
1711         arrive at our aggregate color. This provides a better result to determine
1712         overlay scrollbar style.
1713
1714         * page/Frame.cpp:
1715         (WebCore::Frame::getDocumentBackgroundColor): look up the colors on the html and body element, and properly composite them.
1716         * platform/graphics/Color.h: a short comment to note that blend() uses the Porter-Duff source-over equation
1717
1718 2011-04-27  Adam Barth  <abarth@webkit.org>
1719
1720         Reviewed by Maciej Stachowiak.
1721
1722         Fix OwnPtr issues in IndexedDB
1723         https://bugs.webkit.org/show_bug.cgi?id=59656
1724
1725         This patch is an attempt to fix the clang build.  Clang can't seem to
1726         cope with OwnPtrs to classes declared in an anonymous namespace because
1727         OwnPtr's copy constructor isn't defined (but would need to be defined
1728         in this translation unit).
1729
1730         * platform/leveldb/LevelDBDatabase.cpp:
1731
1732 2011-04-27  Ryuan Choi  <ryuan.choi@samsung.com>
1733
1734         Reviewed by Antonio Gomes.
1735
1736         [EFL] Change cursor to LAZY_NATIVE_CURSOR
1737         https://bugs.webkit.org/show_bug.cgi?id=59411
1738
1739         Enable LAZY_NATIVE_CURSOR on EFL build.
1740
1741         No test added because functionality is unchanged.
1742
1743         * CMakeListsEfl.txt: Add Cursor.cpp
1744         * platform/Cursor.h:
1745         (WebCore::Cursor::Cursor):
1746         * platform/efl/CursorEfl.cpp:
1747         (WebCore::Cursor::Cursor):
1748         (WebCore::Cursor::~Cursor):
1749         (WebCore::getCursorString):
1750         (WebCore::Cursor::ensurePlatformCursor):
1751         * platform/efl/WidgetEfl.cpp:
1752         (WebCore::Widget::setCursor):
1753
1754 2011-04-27  Adam Barth  <abarth@webkit.org>
1755
1756         Build fix from the future.  Another trival strict OwnPtr fixes.  This
1757         is the last futuristic build fix I can detect with my time traveling
1758         abilities.
1759
1760         * platform/graphics/chromium/TransparencyWin.cpp:
1761         (WebCore::TransparencyWin::initializeNewContext):
1762
1763 2011-04-27  Dmitry Lomov  <dslomov@google.com>
1764
1765         Reviewed by David Levin.
1766
1767         CrossThreadCopier should not have a default specialization for raw pointers
1768         https://bugs.webkit.org/show_bug.cgi?id=59234
1769         Removed the ablity to pass raw pointers cross-thread
1770         Added and applied annotations for doing that
1771
1772         * fileapi/FileReader.cpp:
1773         (WebCore::FileReader::readInternal):
1774         (WebCore::FileReader::abort):
1775         * fileapi/FileStreamProxy.cpp:
1776         (WebCore::FileStreamProxy::startOnFileThread):
1777         (WebCore::FileStreamProxy::stopOnFileThread):
1778         (WebCore::FileStreamProxy::getSize):
1779         (WebCore::FileStreamProxy::getSizeOnFileThread):
1780         (WebCore::FileStreamProxy::openForRead):
1781         (WebCore::FileStreamProxy::openForReadOnFileThread):
1782         (WebCore::FileStreamProxy::openForWrite):
1783         (WebCore::FileStreamProxy::openForWriteOnFileThread):
1784         (WebCore::FileStreamProxy::close):
1785         (WebCore::FileStreamProxy::read):
1786         (WebCore::FileStreamProxy::readOnFileThread):
1787         (WebCore::FileStreamProxy::write):
1788         (WebCore::FileStreamProxy::writeOnFileThread):
1789         (WebCore::FileStreamProxy::truncate):
1790         (WebCore::FileStreamProxy::truncateOnFileThread):
1791         * loader/WorkerThreadableLoader.cpp:
1792         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
1793         (WebCore::WorkerThreadableLoader::MainThreadBridge::destroy):
1794         (WebCore::WorkerThreadableLoader::MainThreadBridge::cancel):
1795         * page/GeolocationPositionCache.cpp:
1796         (WebCore::GeolocationPositionCache::triggerReadFromDatabase):
1797         (WebCore::GeolocationPositionCache::triggerWriteToDatabase):
1798         * platform/CrossThreadCopier.h:
1799         (WebCore::AllowCrossThreadAccessWrapper::AllowCrossThreadAccessWrapper):
1800         (WebCore::AllowCrossThreadAccessWrapper::value):
1801         (WebCore::AllowCrossThreadAccess):
1802         (WebCore::AllowExtendedLifetimeWrapper::AllowExtendedLifetimeWrapper):
1803         (WebCore::AllowExtendedLifetimeWrapper::value):
1804         (WebCore::AllowExtendedLifetime):
1805         * platform/graphics/chromium/cc/CCCompletionEvent.h:
1806         * storage/IDBObjectStoreBackendImpl.cpp:
1807         (WebCore::IDBObjectStoreBackendImpl::get):
1808         (WebCore::IDBObjectStoreBackendImpl::put):
1809         (WebCore::IDBObjectStoreBackendImpl::deleteFunction):
1810         (WebCore::IDBObjectStoreBackendImpl::clear):
1811         (WebCore::IDBObjectStoreBackendImpl::createIndex):
1812         (WebCore::IDBObjectStoreBackendImpl::deleteIndex):
1813         (WebCore::IDBObjectStoreBackendImpl::openCursor):
1814         * storage/SQLCallbackWrapper.h:
1815         (WebCore::SQLCallbackWrapper::clear):
1816         * websockets/WorkerThreadableWebSocketChannel.cpp:
1817         (WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadCreateWebSocketChannel):
1818         (WebCore::WorkerThreadableWebSocketChannel::Bridge::Bridge):
1819         (WebCore::WorkerThreadableWebSocketChannel::Bridge::connect):
1820         (WebCore::WorkerThreadableWebSocketChannel::Bridge::send):
1821         (WebCore::WorkerThreadableWebSocketChannel::Bridge::bufferedAmount):
1822         (WebCore::WorkerThreadableWebSocketChannel::Bridge::close):
1823         (WebCore::WorkerThreadableWebSocketChannel::Bridge::disconnect):
1824         (WebCore::WorkerThreadableWebSocketChannel::Bridge::suspend):
1825         (WebCore::WorkerThreadableWebSocketChannel::Bridge::resume):
1826         * workers/WorkerMessagingProxy.cpp:
1827         (WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
1828
1829 2011-04-27  Adam Barth  <abarth@webkit.org>
1830
1831         Two build fixes from the future.  (Trivial strict OwnPtr fixes.)
1832
1833         * page/Frame.cpp:
1834         (WebCore::Frame::setTiledBackingStoreEnabled):
1835         * platform/audio/ReverbConvolver.cpp:
1836         (WebCore::ReverbConvolver::ReverbConvolver):
1837
1838 2011-04-27  Adam Barth  <abarth@webkit.org>
1839
1840         Reviewed by David Levin.
1841
1842         Fix five strict PassOwnPtr violations in WebCore
1843         https://bugs.webkit.org/show_bug.cgi?id=59640
1844
1845         * css/MediaList.cpp:
1846         (WebCore::MediaList::deleteMedium):
1847         (WebCore::MediaList::setMediaText):
1848         (WebCore::MediaList::appendMedium):
1849         * css/MediaQuery.h:
1850         * dom/MessagePort.cpp:
1851         (WebCore::MessagePort::disentanglePorts):
1852         (WebCore::MessagePort::entanglePorts):
1853         * inspector/InspectorStyleSheet.cpp:
1854         (ParsedStyleSheet::setText):
1855         * rendering/RenderTheme.cpp:
1856         (WebCore::RenderTheme::adjustStyle):
1857         (WebCore::RenderTheme::adjustMeterStyle):
1858         * rendering/RenderThemeMac.mm:
1859         (WebCore::RenderThemeMac::adjustMenuListStyle):
1860         (WebCore::RenderThemeMac::adjustSliderTrackStyle):
1861         (WebCore::RenderThemeMac::adjustSliderThumbStyle):
1862         (WebCore::RenderThemeMac::adjustSearchFieldStyle):
1863         (WebCore::RenderThemeMac::adjustSearchFieldCancelButtonStyle):
1864         (WebCore::RenderThemeMac::adjustSearchFieldDecorationStyle):
1865         (WebCore::RenderThemeMac::adjustSearchFieldResultsDecorationStyle):
1866         (WebCore::RenderThemeMac::adjustSearchFieldResultsButtonStyle):
1867
1868 2011-04-27  Chris Fleizach  <cfleizach@apple.com>
1869
1870         Reviewed by Beth Dakin.
1871
1872         <rdar://problem/9315254> ARIA role attribute implemented incorrectly; does not support token list with fallbacks
1873         https://bugs.webkit.org/show_bug.cgi?id=59648
1874
1875         Test: accessibility/aria-fallback-roles.html
1876
1877         * accessibility/AccessibilityObject.cpp:
1878         (WebCore::AccessibilityObject::ariaRoleToWebCoreRole):
1879
1880 2011-04-27  Beth Dakin  <bdakin@apple.com>
1881
1882         Reviewed by Dan Bernstein.
1883
1884         https://bugs.webkit.org/show_bug.cgi?id=59671
1885         Race condition with scrollbar animations and closing a page can cause a crash in 
1886         WebCore::FrameView::setVisibleScrollerThumbRect + 15
1887         -and corresponding-
1888         <rdar://problem/9329253>
1889
1890         It is definitely possible for Page to be null here. So we should null-check it! 
1891         And we should not ASSERT.
1892         * page/FrameView.cpp:
1893         (WebCore::FrameView::didCompleteRubberBand):
1894         (WebCore::FrameView::scrollbarStyleChanged):
1895         (WebCore::FrameView::setVisibleScrollerThumbRect):
1896
1897 2011-04-27  Ryosuke Niwa  <rniwa@webkit.org>
1898
1899         WinCE build fix after r85143.
1900
1901         * platform/graphics/wince/FontWinCE.cpp:
1902         (WebCore::TextRunComponent::TextRunComponent):
1903
1904 2011-04-27  Mark Pilgrim  <pilgrim@chromium.org>
1905
1906         Reviewed by Tony Chang.
1907
1908         IndexedDB object store delete should fail if key is null
1909         https://bugs.webkit.org/show_bug.cgi?id=58614
1910
1911         Test: storage/indexeddb/mozilla/key-requirements-delete-null-key.html
1912
1913         * storage/IDBObjectStoreBackendImpl.cpp:
1914         (WebCore::IDBObjectStoreBackendImpl::deleteFunction):
1915
1916 2011-04-27  Eric Seidel  <eric@webkit.org>
1917
1918         Reviewed by Ryosuke Niwa.
1919
1920         Should have an easy way to construct starting BidiStatus for a paragraph root
1921         https://bugs.webkit.org/show_bug.cgi?id=59226
1922
1923         Two places try to construct BidiStatuses for a paragraph root using copy/paste code.
1924         I've made this a constructor for BidiStatus instead.
1925
1926         As part of this effort I added a direction() accessor for TextRun and got
1927         rid of the old m_rtl bool.  This is part of the generic effort in the
1928         Bidi code to replace old bool usage with the superior TextDirection enum
1929         (this generally makes the code cleaner).
1930
1931         As part of this replacement effort I found several places which were
1932         assuming LTR (by passing rtl=false) when they probably want to use
1933         the current text direction.  I suspect that LTR vs. RTL may affect
1934         string width in the case of ligatures.  It's unclear.
1935
1936         This is almost entirely a mechanical change.
1937
1938         * html/canvas/CanvasRenderingContext2D.cpp:
1939         (WebCore::CanvasRenderingContext2D::drawTextInternal):
1940         * platform/graphics/GraphicsContext.cpp:
1941         (WebCore::GraphicsContext::drawBidiText):
1942         * platform/graphics/TextRun.h:
1943         (WebCore::TextRun::TextRun):
1944         (WebCore::TextRun::direction):
1945         (WebCore::TextRun::rtl):
1946         (WebCore::TextRun::ltr):
1947         (WebCore::TextRun::setDirection):
1948         * platform/text/BidiResolver.h:
1949         (WebCore::BidiStatus::BidiStatus):
1950         * rendering/EllipsisBox.cpp:
1951         (WebCore::EllipsisBox::paint):
1952         (WebCore::EllipsisBox::selectionRect):
1953         (WebCore::EllipsisBox::paintSelection):
1954         * rendering/InlineTextBox.cpp:
1955         (WebCore::InlineTextBox::selectionRect):
1956         (WebCore::InlineTextBox::paint):
1957         (WebCore::InlineTextBox::paintSelection):
1958         (WebCore::InlineTextBox::paintCompositionBackground):
1959         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
1960         (WebCore::InlineTextBox::paintTextMatchMarker):
1961         (WebCore::InlineTextBox::computeRectForReplacementMarker):
1962         (WebCore::InlineTextBox::offsetForPosition):
1963         (WebCore::InlineTextBox::positionForOffset):
1964         * rendering/RenderBlockLineLayout.cpp:
1965         (WebCore::RenderBlock::determineStartPosition):
1966         * rendering/RenderFileUploadControl.cpp:
1967         (WebCore::RenderFileUploadControl::paintObject):
1968         (WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
1969         * rendering/RenderListBox.cpp:
1970         (WebCore::RenderListBox::updateFromElement):
1971         (WebCore::RenderListBox::paintItemForeground):
1972         * rendering/RenderTextControl.cpp:
1973         (WebCore::RenderTextControl::getAvgCharWidth):
1974         (WebCore::RenderTextControl::paintPlaceholder):
1975         * rendering/svg/SVGInlineTextBox.cpp:
1976         (WebCore::SVGInlineTextBox::constructTextRun):
1977         * rendering/svg/SVGTextMetrics.cpp:
1978         (WebCore::constructTextRun):
1979
1980 2011-04-27  Robert Hogan  <robert@webkit.org>
1981
1982         Reviewed by Adam Barth.
1983
1984         Allow shadowing of history object
1985         https://bugs.webkit.org/show_bug.cgi?id=55965
1986
1987         Tests: http/tests/history/cross-origin-replace-history-object-child.html
1988                http/tests/history/cross-origin-replace-history-object.html
1989
1990         * page/DOMWindow.idl:
1991
1992 2011-04-27  James Robinson  <jamesr@chromium.org>
1993
1994         Reviewed by Kenneth Russell.
1995
1996         [chromium] Ensure compositing layers are up to date before entering doComposite
1997         https://bugs.webkit.org/show_bug.cgi?id=59159
1998
1999         Adds some assertions to try to catch GraphicsLayer mutations at bad times (such as during
2000         GraphicsLayerClient::paintContents() implementations).
2001
2002         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2003         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
2004         * platform/graphics/chromium/LayerChromium.cpp:
2005         (WebCore::LayerChromium::LayerChromium):
2006         (WebCore::LayerChromium::~LayerChromium):
2007         * platform/graphics/chromium/LayerRendererChromium.cpp:
2008         (WebCore::LayerRendererChromium::updateLayers):
2009         * platform/graphics/chromium/LayerRendererChromium.h:
2010           Add a set of assertions that we aren't creating or destroying LayerChromiums during paintContents
2011
2012 2011-04-27  James Robinson  <jamesr@chromium.org>
2013
2014         Reviewed by Adam Barth.
2015
2016         Fix OwnPtr strict issues in chromium linux build
2017         https://bugs.webkit.org/show_bug.cgi?id=59664
2018
2019         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
2020         (WebCore::ComplexTextController::getNormalizedTextRun):
2021         * platform/graphics/skia/ImageBufferSkia.cpp:
2022         (WebCore::ImageBuffer::ImageBuffer):
2023         * platform/graphics/skia/PlatformContextSkia.cpp:
2024         (WebCore::PlatformContextSkia::PlatformContextSkia):
2025
2026 2011-04-27  Chris Rogers  <crogers@google.com>
2027
2028         Reviewed by Kenneth Russell.
2029
2030         Make sure to set sample-rate of created AudioBus in AudioBus::createBySampleRateConverting()
2031         https://bugs.webkit.org/show_bug.cgi?id=59641
2032
2033         No new tests since audio API is not yet implemented.
2034
2035         * platform/audio/AudioBus.cpp:
2036         (WebCore::AudioBus::createBySampleRateConverting):
2037         (WebCore::AudioBus::createByMixingToMono):
2038
2039 2011-04-27  Geoffrey Garen  <ggaren@apple.com>
2040
2041         Motivated by Alexey Proskuryakov.
2042
2043         * bindings/scripts/CodeGeneratorJS.pm: Tried to make this comment more
2044         informative, since it confused Alexey and me.
2045
2046 2011-04-27  Geoffrey Garen  <ggaren@apple.com>
2047
2048         Reviewed by Sam Weinig.
2049
2050         Fixed a small leak related to CSSValues when deallocating a DOMWrapperWorld
2051         https://bugs.webkit.org/show_bug.cgi?id=59646
2052
2053         Made the cssValueRoots map per-world, instead of a global. When we deallocate
2054         a world, we need to clear all entries in the map for that world, since
2055         the finalizers that would otherwise clear those entries don't run. The
2056         simplest way to do this is just to make the world own the map.
2057         
2058         * bindings/js/DOMWrapperWorld.h:
2059         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2060         (WebCore::JSCSSStyleDeclaration::getPropertyCSSValue):
2061         * bindings/js/JSCSSValueCustom.cpp:
2062         (WebCore::JSCSSValueOwner::isReachableFromOpaqueRoots):
2063         (WebCore::JSCSSValueOwner::finalize):
2064         * bindings/js/JSDOMBinding.h:
2065
2066 2011-04-27  Adam Barth  <abarth@webkit.org>
2067
2068         Reviewed by David Levin.
2069
2070         Fix OwnPtr issues in IndexedDB
2071         https://bugs.webkit.org/show_bug.cgi?id=59656
2072
2073         I didn't do an exhaustive review of this code, but I fixed the problems
2074         caught by turning on strict OwnPtr and all their antecedents.  This
2075         patch is entirely tighter bookkeeping.  There shouldn't be any actual
2076         behavior change.
2077
2078         * platform/leveldb/LevelDBDatabase.cpp:
2079         (WebCore::LevelDBDatabase::LevelDBDatabase):
2080         (WebCore::LevelDBDatabase::open):
2081         (WebCore::LevelDBDatabase::createIterator):
2082         * platform/leveldb/LevelDBDatabase.h:
2083         * platform/leveldb/LevelDBIterator.cpp:
2084         (WebCore::LevelDBIterator::LevelDBIterator):
2085         * platform/leveldb/LevelDBIterator.h:
2086         * storage/IDBLevelDBBackingStore.cpp:
2087         (WebCore::IDBLevelDBBackingStore::IDBLevelDBBackingStore):
2088         (WebCore::IDBLevelDBBackingStore::open):
2089         (WebCore::getNewDatabaseId):
2090         (WebCore::IDBLevelDBBackingStore::getObjectStores):
2091         (WebCore::getNewObjectStoreId):
2092         (WebCore::deleteRange):
2093         (WebCore::IDBLevelDBBackingStore::nextAutoIncrementNumber):
2094         (WebCore::IDBLevelDBBackingStore::forEachObjectStoreRecord):
2095         (WebCore::IDBLevelDBBackingStore::getIndexes):
2096         (WebCore::getNewIndexId):
2097         (WebCore::findGreatestKeyLessThan):
2098         (WebCore::IDBLevelDBBackingStore::getPrimaryKeyViaIndex):
2099         (WebCore::IDBLevelDBBackingStore::keyExistsInIndex):
2100         (WebCore::findLastIndexKeyEqualTo):
2101         * storage/IDBLevelDBBackingStore.h:
2102
2103 2011-04-19  MORITA Hajime  <morrita@google.com>
2104
2105         Reviewed by Tony Chang.
2106
2107         [Refactoring] DocumentMarkerController::MarkerMapVectorPair should be replaced with a list of some class.
2108         https://bugs.webkit.org/show_bug.cgi?id=58113
2109
2110         * Introduced RenderedDocumentMarker, a subclass of DocumentMarker.
2111         * Eliminated Vector<IntRect> and move the IntRect into RenderedDocumentMarker
2112         * Now MarkerMapVectorPair is no longer used.
2113         
2114         No new tests, No behavior change.
2115
2116         * GNUmakefile.list.am:
2117         * WebCore.gypi:
2118         * WebCore.pro:
2119         * WebCore.vcproj/WebCore.vcproj:
2120         * WebCore.xcodeproj/project.pbxproj:
2121         * dom/DocumentMarker.h:
2122         * dom/DocumentMarkerController.cpp:
2123         (WebCore::DocumentMarkerController::addMarker):
2124         (WebCore::DocumentMarkerController::copyMarkers):
2125         (WebCore::DocumentMarkerController::removeMarkers):
2126         (WebCore::DocumentMarkerController::markerContainingPoint):
2127         (WebCore::DocumentMarkerController::markersForNode):
2128         (WebCore::DocumentMarkerController::renderedRectsForMarkers):
2129         (WebCore::DocumentMarkerController::removeMarkersFromList):
2130         (WebCore::DocumentMarkerController::repaintMarkers):
2131         (WebCore::DocumentMarkerController::setRenderedRectForMarker):
2132         (WebCore::DocumentMarkerController::invalidateRenderedRectsForMarkersInRect):
2133         (WebCore::DocumentMarkerController::shiftMarkers):
2134         (WebCore::DocumentMarkerController::setMarkersActive):
2135         (WebCore::DocumentMarkerController::clearDescriptionOnMarkersIntersectingRange):
2136         (WebCore::DocumentMarkerController::showMarkers):
2137         * dom/DocumentMarkerController.h:
2138         * dom/RenderedDocumentMarker.h: Added.
2139         (WebCore::RenderedDocumentMarker::RenderedDocumentMarker):
2140         (WebCore::RenderedDocumentMarker::isRendered):
2141         (WebCore::RenderedDocumentMarker::contains):
2142         (WebCore::RenderedDocumentMarker::setRenderedRect):
2143         (WebCore::RenderedDocumentMarker::renderedRect):
2144         (WebCore::RenderedDocumentMarker::invalidate):
2145         (WebCore::RenderedDocumentMarker::invalidMarkerRect):
2146
2147 2011-04-27  James Robinson  <jamesr@chromium.org>
2148
2149         Unreviewed, rolling out r85112.
2150         http://trac.webkit.org/changeset/85112
2151         https://bugs.webkit.org/show_bug.cgi?id=59159
2152
2153         Broke mac compile
2154
2155         * page/FrameView.cpp:
2156         (WebCore::FrameView::updateCompositingLayers):
2157         * page/FrameView.h:
2158         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2159         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
2160         * platform/graphics/chromium/LayerChromium.cpp:
2161         (WebCore::LayerChromium::LayerChromium):
2162         (WebCore::LayerChromium::~LayerChromium):
2163         * platform/graphics/chromium/LayerRendererChromium.cpp:
2164         (WebCore::LayerRendererChromium::updateLayers):
2165         * platform/graphics/chromium/LayerRendererChromium.h:
2166
2167 2011-04-27  Mark Rowe  <mrowe@apple.com>
2168
2169         Build fix.
2170
2171         * WebCore.xcodeproj/project.pbxproj: Make RenderLayerCompositor.h accessbile to WebKit and WebKit2.
2172
2173 2011-04-27  Pratik Solanki  <psolanki@apple.com>
2174
2175         Unreviewed. Fix WinCE build. The include should be guarded inside USE(CFNETWORK).
2176
2177         * platform/network/ResourceHandleClient.h:
2178
2179 2011-04-27  James Robinson  <jamesr@chromium.org>
2180
2181         Reviewed by Kenneth Russell.
2182
2183         [chromium] Ensure compositing layers are up to date before entering doComposite
2184         https://bugs.webkit.org/show_bug.cgi?id=59159
2185
2186         Adds some assertions to try to catch GraphicsLayer mutations at bad times (such as during
2187         GraphicsLayerClient::paintContents() implementations).
2188
2189         * page/FrameView.cpp:
2190         (WebCore::FrameView::updateCompositingLayers):
2191             Add an optional CompositingUpdateType parameter.
2192         * page/FrameView.h:
2193         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2194         (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
2195         * platform/graphics/chromium/LayerChromium.cpp:
2196         (WebCore::LayerChromium::LayerChromium):
2197         (WebCore::LayerChromium::~LayerChromium):
2198         * platform/graphics/chromium/LayerRendererChromium.cpp:
2199         (WebCore::LayerRendererChromium::updateLayers):
2200         * platform/graphics/chromium/LayerRendererChromium.h:
2201           Add a set of assertions that we aren't creating or destroying LayerChromiums during paintContents
2202         * rendering/RenderLayer.cpp:
2203         (WebCore::RenderLayer::dirtyZOrderLists):
2204         (WebCore::RenderLayer::updateCompositingAndLayerListsIfNeeded):
2205         * rendering/RenderLayerCompositor.cpp:
2206         (WebCore::RenderLayerCompositor::updateCompositingLayers):
2207         * rendering/RenderLayerCompositor.h:
2208           Fix a typo in CompositingUpdateType Pait->Paint
2209
2210 2011-04-27  Pratik Solanki  <psolanki@apple.com>
2211
2212         Reviewed by Antti Koivisto.
2213
2214         Part of WebCore should use CFNetwork-based loader on Mac
2215         https://bugs.webkit.org/show_bug.cgi?id=51836
2216
2217         Add willCacheResponse method when using CFNetwork on Mac. Also put appropriate ifdefs around
2218         willCacheResponse/shouldCacheResponse.
2219
2220         * loader/EmptyClients.h:
2221         * loader/FrameLoaderClient.h:
2222         * loader/ResourceLoader.h:
2223         * loader/cf/ResourceLoaderCFNet.cpp:
2224         * loader/mac/ResourceLoaderMac.mm:
2225         (WebCore::ResourceLoader::willCacheResponse):
2226         * platform/network/ResourceHandleClient.h:
2227         (WebCore::ResourceHandleClient::willCacheResponse):
2228         (WebCore::ResourceHandleClient::shouldCacheResponse):
2229         * platform/network/cf/ResourceHandleCFNet.cpp:
2230         (WebCore::willCacheResponse):
2231
2232 2011-04-27  Ilya Tikhonovsky  <loislo@chromium.org>
2233
2234         Reviewed by Brian Weinstein.
2235
2236         Web Inspector: Stop on Exception state does not persist.
2237
2238         A wrong property name was used when we persist PauseOnExceptionState property to Local Storage.
2239         https://bugs.webkit.org/show_bug.cgi?id=59630
2240
2241         * inspector/front-end/ScriptsPanel.js:
2242         (WebInspector.ScriptsPanel.prototype._debuggerWasEnabled):
2243         (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions.callback):
2244         (WebInspector.ScriptsPanel.prototype._setPauseOnExceptions):
2245
2246 2011-04-27  Adrienne Walker  <enne@google.com>
2247
2248         [chromium] Unreviewed, rollout r85075 (scissor rect changes)
2249         https://bugs.webkit.org/show_bug.cgi?id=59020
2250
2251         * platform/graphics/chromium/LayerRendererChromium.cpp:
2252         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
2253
2254 2011-04-27  Darin Adler  <darin@apple.com>
2255
2256         Reviewed by David Levin.
2257
2258         Fix strict OwnPtr issues seen in about 30 more files
2259         https://bugs.webkit.org/show_bug.cgi?id=59615
2260
2261         * bindings/js/JSCallbackData.h:
2262         (WebCore::DeleteCallbackDataTask::create): Use adoptPtr.
2263         * bindings/js/JSMessageEventCustom.cpp:
2264         (WebCore::JSMessageEvent::initMessageEvent): Use adoptPtr.
2265         * css/CSSParser.cpp:
2266         (WebCore::CSSParser::updateSpecifiersWithElementName): Use OwnPtr,
2267         adoptPtr, and release.
2268         * dom/MessageEvent.cpp:
2269         (WebCore::MessageEvent::initMessageEvent): Use OwnPtr, adoptPtr,
2270         and release.
2271         * dom/MessagePortChannel.cpp:
2272         (WebCore::MessagePortChannel::EventData::create): Use adoptPtr.
2273         * dom/ScriptExecutionContext.cpp:
2274         (WebCore::ProcessMessagesSoonTask::create): Use adoptPtr.
2275         * dom/XMLDocumentParserLibxml2.cpp:
2276         (WebCore::XMLDocumentParser::doEnd): Use adoptPtr.
2277         * dom/default/PlatformMessagePortChannel.cpp:
2278         (WebCore::MessagePortChannel::create): Use adoptPtr.
2279         * html/HTMLFormControlElement.cpp:
2280         (WebCore::HTMLFormControlElement::detach): Use nullptr.
2281         * inspector/InspectorAgent.cpp:
2282         (WebCore::PostWorkerNotificationToFrontendTask::create): Use adoptPtr.
2283         * inspector/InspectorConsoleAgent.cpp:
2284         (WebCore::InspectorConsoleAgent::addMessageToConsole): Use adoptPtr.
2285         (WebCore::InspectorConsoleAgent::didReceiveResponse): Use adoptPtr.
2286         (WebCore::InspectorConsoleAgent::didFailLoading): Use adoptPtr.
2287         * inspector/InspectorController.cpp:
2288         (WebCore::InspectorController::connectFrontend): Use adoptPtr.
2289         * inspector/InspectorDOMAgent.cpp:
2290         (WebCore::InspectorDOMAgent::didInvalidateStyleAttr): Use adoptPtr.
2291         * inspector/InspectorResourceAgent.cpp:
2292         (WebCore::InspectorResourceAgent::InspectorResourceAgent): Use adoptPtr.
2293         * page/FrameActionScheduler.cpp:
2294         (WebCore::FrameActionScheduler::scheduleEvent): Use adoptPtr.
2295         * platform/graphics/ShadowBlur.cpp:
2296         (WebCore::ScratchBuffer::clearScratchBuffer): Use nullptr.
2297         * platform/graphics/ca/GraphicsLayerCA.cpp:
2298         (WebCore::GraphicsLayer::create): Use adoptPtr.
2299         (WebCore::GraphicsLayerCA::ensureCloneLayers): Use adoptPtr.
2300         (WebCore::GraphicsLayerCA::removeCloneLayers): Use nullptr.
2301         * rendering/RenderBlock.cpp:
2302         (WebCore::RenderBlock::setMaxMarginBeforeValues): Use adoptPtr.
2303         (WebCore::RenderBlock::setMaxMarginAfterValues): Use adoptPtr.
2304         (WebCore::RenderBlock::setPaginationStrut): Use adoptPtr.
2305         (WebCore::RenderBlock::setPageLogicalOffset): Use adoptPtr.
2306         * rendering/RenderLayerBacking.cpp:
2307         (WebCore::RenderLayerBacking::destroyGraphicsLayer): Use nullptr.
2308         (WebCore::RenderLayerBacking::updateClippingLayers): Use nullptr.
2309         (WebCore::RenderLayerBacking::updateForegroundLayer): Use nullptr.
2310         (WebCore::RenderLayerBacking::updateMaskLayer): Use nullptr.
2311         * rendering/RenderLayerCompositor.cpp:
2312         (WebCore::RenderLayerCompositor::updateOverflowControlsLayers): Use nullptr.
2313         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): Use nullptr.
2314         (WebCore::RenderLayerCompositor::destroyRootPlatformLayer): Use nullptr.
2315         * rendering/style/StyleRareNonInheritedData.cpp:
2316         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): Removed
2317         explicit initializations of OwnPtr members to 0. Use adoptPtr.
2318         * workers/SharedWorkerContext.cpp:
2319         (WebCore::createConnectEvent): Use adoptPtr.
2320         * workers/Worker.cpp:
2321         (WebCore::Worker::notifyFinished): Use nullptr.
2322
2323 2011-04-27  Enrica Casucci  <enrica@apple.com>
2324
2325         Reviewed by Darin Adler.
2326
2327         REGRESSION (r84311): Copy should preserve background color if specified in the body only if the entire content is selected.
2328         https://bugs.webkit.org/show_bug.cgi?id=59251
2329         <rdar://problem/9327044>
2330
2331         When we are looking for wrapping elements that are presentational, we should
2332         include elements that have a non transparent background color only if they
2333         are not blocks.
2334
2335         Test: editing/pasteboard/do-not-copy-body-color.html
2336
2337         * editing/markup.cpp:
2338         (WebCore::isElementPresentational):
2339
2340 2011-04-20  Dimitri Glazkov  <dglazkov@chromium.org>
2341
2342         Reviewed by Antti Koivisto.
2343
2344         Teach sub-selector chains about shadow descendants
2345         https://bugs.webkit.org/show_bug.cgi?id=58342
2346
2347         The primary change is to the logic of parsing specifiers:
2348         1) The shadow descendant selectors (those specifiers that are unknown
2349         pseudo element selectors) are always kept at the top of the chain.
2350         2) The sub-selectors after shadow descendant selectors are stashed right
2351         behind the sub-selector, but not at the end of the chain.
2352         3) Other sub-selectors are appended at the end of the chain.
2353
2354         * css/CSSGrammar.y: Changed specifier_list collection to use new
2355             CSSParser::updateSpecifier helper.
2356         * css/CSSParser.cpp:
2357         (WebCore::CSSParser::updateSpecifiersWithElementName): Added logic to
2358             look for the last ShadowDescendant relation in the chain of selectors,
2359             because the next selector after it is the one that should get the
2360             element name.
2361         (WebCore::CSSParser::updateSpecifiers): Moved and modified the logic from
2362             CSSGrammar.y. The new logic adjusts the selector chain to allow
2363             shadow descendant selectors have sub-selectors (and have multiple shadow
2364             descendants in the chain).
2365         * css/CSSParser.h: Added decl.
2366         * css/CSSParserValues.cpp:
2367         (WebCore::CSSParserSelector::insertTagHistory): Added.
2368         (WebCore::CSSParserSelector::appendTagHistory): Aded.
2369         * css/CSSParserValues.h: Added decls.
2370         * css/CSSStyleSelector.cpp:
2371         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Added
2372             shadow descendant selector match check, since now there could be many
2373             of them in the selector chain.
2374
2375 2011-04-20  Adrienne Walker  <enne@google.com>
2376
2377         Reviewed by Kenneth Russell.
2378
2379         [chromium] Fix incorrect scissor rect for layers that render into a rendersurface
2380         https://bugs.webkit.org/show_bug.cgi?id=59020
2381
2382         mapRect is the incorrect transform here.  The parent scissor rect
2383         needs to be projected into layer space instead.
2384
2385         Test: compositing/flat-with-transformed-child.html
2386
2387         * platform/graphics/chromium/LayerRendererChromium.cpp:
2388         (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
2389
2390 2011-04-27  Pratik Solanki  <psolanki@apple.com>
2391
2392         Reviewed by Antti Koivisto.
2393
2394         Part of WebCore should use CFNetwork-based loader on Mac
2395         https://bugs.webkit.org/show_bug.cgi?id=51836
2396
2397         * Configurations/WebCore.xcconfig: Add location of CFNetwork.framework.
2398         * platform/mac/SoftLinking.h:
2399         * platform/network/cf/CookieJarCFNet.cpp: Soft-link in CFNetwork functions on Mac.
2400
2401 2011-04-27  Nikolas Zimmermann  <nzimmermann@rim.com>
2402
2403         Reviewed by Antti Koivisto.
2404
2405         Cleanup CSSStyleApplyProperty.cpp
2406         https://bugs.webkit.org/show_bug.cgi?id=59623
2407
2408         As first step remove ApplyPropertyColorBase, merge it with ApplyPropertyColor, there's no need for two seperated classes.
2409         Use typedefs instead of repating the function pointer declarations in a few places.
2410
2411         * css/CSSStyleApplyProperty.cpp:
2412         (WebCore::ApplyPropertyDefault::ApplyPropertyDefault):
2413         (WebCore::ApplyPropertyColor::ApplyPropertyColor):
2414         (WebCore::ApplyPropertyColor::applyInheritValue):
2415         (WebCore::ApplyPropertyColor::applyInitialValue):
2416         (WebCore::ApplyPropertyColor::applyValue):
2417         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
2418
2419 2011-04-27  Dan Bernstein  <mitz@apple.com>
2420
2421         Reviewed by Anders Carlsson.
2422
2423         <rdar://problem/9335973> REGRESSION (r84341): Buttons in the Mac App store are rendered incorrectly
2424         https://bugs.webkit.org/show_bug.cgi?id=59622
2425
2426         Test: fast/borders/border-image-trumps-radius.html
2427
2428         * rendering/RenderBox.cpp:
2429         (WebCore::RenderBox::determineBackgroundBleedAvoidance): If there is a renderable, loaded border
2430         image, then border radius is ignored, so no bleed avoidance is needed.
2431         * rendering/RenderObject.cpp:
2432         (WebCore::RenderObject::borderImageIsLoadedAndCanBeRendered): Added. Moved some logic here from...
2433         (WebCore::RenderObject::mustRepaintBackgroundOrBorder): ...here.
2434         * rendering/RenderObject.h:
2435
2436 2011-02-03  Martin Robinson  <mrobinson@igalia.com>
2437
2438         Reviewed by Xan Lopez.
2439
2440         [GTK] editing/pasteboard/copy-standalone-image.html fails
2441         https://bugs.webkit.org/show_bug.cgi?id=53645
2442
2443         When writing an image to the clipboard, also write the URL and title
2444         into the markup and URL portion. This change also abstracts a helper
2445         imageToMarkup into markup.{cpp/h} from several different locations
2446         throughout the platform layer.
2447
2448         * editing/markup.h: Added new function definition.
2449         * editing/markup.cpp:
2450         (WebCore::imageToMarkup): Add this function which turns an image URL 
2451         and element into some markup representing that image, while preserving
2452         non-src attributes.
2453         * platform/chromium/ClipboardChromium.cpp: Move the imageToMarkup helper
2454         to markup.cpp.
2455         * platform/gtk/PasteboardGtk.cpp:
2456         (WebCore::getURLForImageNode): Add this helper which gets the appropriate
2457         image URL for a variety of image tag types.
2458         (WebCore::Pasteboard::writeImage): Write the image URL and title to the
2459         markup and URL portions of the clipboard. This will ensure that images
2460         paste properly back into WebKit.
2461         * platform/win/ClipboardWin.cpp: Remove the imageToMarkup helper and the
2462         one from markup.h
2463
2464 2011-04-27  Steve Block  <steveblock@google.com>
2465
2466         Reviewed by David Levin.
2467
2468         Remove Android build system
2469         https://bugs.webkit.org/show_bug.cgi?id=48111
2470
2471         This is to avoid the maintenance burden until the Android port is
2472         fully upstreamed.
2473
2474         No new tests, build change only.
2475
2476         * Android.derived.jscbindings.mk: Removed.
2477         * Android.derived.mk: Removed.
2478         * Android.derived.v8bindings.mk: Removed.
2479         * Android.jscbindings.mk: Removed.
2480         * Android.mk: Removed.
2481         * Android.v8bindings.mk: Removed.
2482
2483 2011-04-27  Darin Adler  <darin@apple.com>
2484
2485         Reviewed by Sam Weinig.
2486
2487         Somehow about:blank gets into the icon database
2488         https://bugs.webkit.org/show_bug.cgi?id=58067
2489         rdar://problem/6751446
2490
2491         Implemented the policy Brady suggested, where only http and https URLs can
2492         be associated with and icon, guarding both on the way in to the database,
2493         and on the way out.
2494
2495         * loader/icon/IconDatabase.cpp:
2496         (WebCore::pageCanHaveIcon): Added.
2497         (WebCore::IconDatabase::synchronousIconForPageURL): Call pageCanHaveIcon
2498         instead of just checking for an empty URL.
2499         (WebCore::IconDatabase::synchronousIconURLForPageURL): Ditto.
2500         (WebCore::IconDatabase::retainIconForPageURL): Ditto.
2501         (WebCore::IconDatabase::releaseIconForPageURL): Ditto.
2502         (WebCore::IconDatabase::setIconURLForPageURL): Ditto.
2503         (WebCore::IconDatabase::getOrCreatePageURLRecord): Ditto.
2504         (WebCore::IconDatabase::importIconURLForPageURL): Broke assertion into
2505         two separate assertions and added a third.
2506         (WebCore::IconDatabase::performURLImport): Call pageCanHaveIcon.
2507
2508         * platform/KURL.cpp: Sorted includes. Moved a FIXME to the top of the file.
2509         (WebCore::isLetterMatchIgnoringCase): Renamed matchLetter to this name,
2510         overloaded it to work on both UChar and char, and added an assertion to it.
2511         Also moved this to the top of the file and made the UChar version usable
2512         in the shared code used even by Google.
2513         (WebCore::KURL::invalidate): Updated for name change.
2514         (WebCore::KURL::protocolIs): Use isLetterMatchIgnoringCase instead of
2515         toASCIILower since it's faster.
2516         (WebCore::KURL::parse): Updated for name changes.
2517         (WebCore::protocolIs):Use isLetterMatchIgnoringCase instead of toASCIILower
2518         since it's faster.
2519         (WebCore::protocolIsInHTTPFamily): Added.
2520
2521         * platform/KURL.h: Tweaked formatting. Renamed protocolInHTTPFamily
2522         to protocolIsInHTTPFamily and added a version that works on a string.
2523         Kept the old name as an inline function so we don't have to rename
2524         all the cal sites now.
2525
2526         * platform/KURLGoogle.cpp: Renamed as above.
2527         (WebCore::KURLGooglePrivate::KURLGooglePrivate): Updated for rename.
2528         (WebCore::KURLGooglePrivate::setUtf8): Ditto.
2529         (WebCore::KURLGooglePrivate::setAscii): Ditto.
2530         (WebCore::KURLGooglePrivate::initProtocolIsInHTTPFamily): Ditto.
2531         (WebCore::KURLGooglePrivate::copyTo): Ditto.
2532         (WebCore::KURL::KURL): Ditto.
2533         (WebCore::KURL::protocolIsInHTTPFamily): Ditto.
2534         (WebCore::KURL::invalidate): Ditto.
2535         * platform/KURLGooglePrivate.h: Ditto.
2536
2537         * WebCore.exp.in: Updated for above changes.
2538
2539 2011-04-27  Yury Semikhatsky  <yurys@chromium.org>
2540
2541         Reviewed by Pavel Feldman.
2542
2543         Web Inspector: browser crash on evaluation of 'throw undefined'
2544         https://bugs.webkit.org/show_bug.cgi?id=59611
2545
2546         Test: inspector/console/console-eval-throw-undefined.html
2547
2548         * inspector/InjectedScriptSource.js: use try/catch to protect from
2549         exception during conversion of another exception to string.
2550
2551 2011-04-27  Pavel Feldman  <pfeldman@google.com>
2552
2553         Reviewed by Yury Semikhatsky.
2554
2555         Web Inspector: clicking bookmarklet multiplies resources panel entries.
2556         https://bugs.webkit.org/show_bug.cgi?id=59590
2557
2558         * inspector/front-end/ResourceTreeModel.js:
2559         (WebInspector.ResourceTreeModel):
2560         (WebInspector.ResourceTreeModel.prototype._processCachedResources):
2561         (WebInspector.ResourceTreeModel.prototype._frameNavigated):
2562         * inspector/front-end/ResourcesPanel.js:
2563         (WebInspector.ResourcesPanel.prototype._populateResourceTree):
2564         (WebInspector.FrameTreeElement):
2565         (WebInspector.FrameTreeElement.prototype.appendResource):
2566         * inspector/front-end/inspector.js:
2567         (WebInspector.frontendReused):
2568
2569 2011-04-27  Pavel Feldman  <pfeldman@google.com>
2570
2571         Reviewed by Yury Semikhatsky.
2572
2573         Web Inspector: opening bookmarklet disconnects DOM agent.
2574         https://bugs.webkit.org/show_bug.cgi?id=59588
2575
2576         * inspector/InspectorDOMAgent.cpp:
2577         (WebCore::InspectorDOMAgent::setDocument):
2578
2579 2011-04-27  Hans Wennborg  <hans@chromium.org>
2580
2581         Reviewed by Tony Gentilcore.
2582
2583         IndexedDB: Fix compiler warnings about uninitialized variables
2584         https://bugs.webkit.org/show_bug.cgi?id=59599
2585
2586         Build fix. No new tests.
2587
2588         * storage/IDBLevelDBBackingStore.cpp:
2589         (WebCore::getNewObjectStoreId):
2590         (WebCore::getNewIndexId):
2591
2592 2011-04-26  Hans Wennborg  <hans@chromium.org>
2593
2594         Reviewed by Tony Gentilcore.
2595
2596         IndexedDB: Move LevelDB key coding routines to separate file
2597         https://bugs.webkit.org/show_bug.cgi?id=59452
2598
2599         Move all routines concerned with encoding, decoding and comparison of
2600         LevelDB keys from IDBLevelDBBackingStore.cpp to a separate file:
2601         IDBLevelDBCoding.cpp.
2602
2603         This makes IDBLevelDBBackingStore.cpp easier to work with, and will
2604         allow for unit testing of the coding routines.
2605
2606         No new functionality, no new tests.
2607
2608         * WebCore.gypi:
2609         * storage/IDBLevelDBBackingStore.cpp:
2610         (WebCore::getInt):
2611         (WebCore::putInt):
2612         (WebCore::getString):
2613         (WebCore::putString):
2614         (WebCore::compareKeys):
2615         (WebCore::compareIndexKeys):
2616         (WebCore::Comparator::compare):
2617         (WebCore::setUpMetadata):
2618         (WebCore::IDBLevelDBBackingStore::extractIDBDatabaseMetaData):
2619         (WebCore::getNewDatabaseId):
2620         (WebCore::IDBLevelDBBackingStore::setIDBDatabaseMetaData):
2621         (WebCore::IDBLevelDBBackingStore::getObjectStores):
2622         (WebCore::getNewObjectStoreId):
2623         (WebCore::IDBLevelDBBackingStore::createObjectStore):
2624         (WebCore::IDBLevelDBBackingStore::deleteObjectStore):
2625         (WebCore::IDBLevelDBBackingStore::getObjectStoreRecord):
2626         (WebCore::getNewVersionNumber):
2627         (WebCore::IDBLevelDBBackingStore::putObjectStoreRecord):
2628         (WebCore::IDBLevelDBBackingStore::clearObjectStore):
2629         (WebCore::IDBLevelDBBackingStore::deleteObjectStoreRecord):
2630         (WebCore::IDBLevelDBBackingStore::nextAutoIncrementNumber):
2631         (WebCore::IDBLevelDBBackingStore::keyExistsInObjectStore):
2632         (WebCore::IDBLevelDBBackingStore::forEachObjectStoreRecord):
2633         (WebCore::IDBLevelDBBackingStore::getIndexes):
2634         (WebCore::getNewIndexId):
2635         (WebCore::IDBLevelDBBackingStore::createIndex):
2636         (WebCore::IDBLevelDBBackingStore::putIndexDataForRecord):
2637         (WebCore::versionExists):
2638         (WebCore::IDBLevelDBBackingStore::getPrimaryKeyViaIndex):
2639         (WebCore::IDBLevelDBBackingStore::keyExistsInIndex):
2640         (WebCore::IDBLevelDBBackingStore::openObjectStoreCursor):
2641         (WebCore::IDBLevelDBBackingStore::openIndexKeyCursor):
2642         (WebCore::IDBLevelDBBackingStore::openIndexCursor):
2643         * storage/IDBLevelDBCoding.cpp: Added.
2644         (WebCore::IDBLevelDBCoding::encodeByte):
2645         (WebCore::IDBLevelDBCoding::maxIDBKey):
2646         (WebCore::IDBLevelDBCoding::minIDBKey):
2647         (WebCore::IDBLevelDBCoding::encodeInt):
2648         (WebCore::IDBLevelDBCoding::decodeInt):
2649         (WebCore::IDBLevelDBCoding::encodeVarInt):
2650         (WebCore::IDBLevelDBCoding::decodeVarInt):
2651         (WebCore::IDBLevelDBCoding::encodeString):
2652         (WebCore::IDBLevelDBCoding::decodeString):
2653         (WebCore::IDBLevelDBCoding::encodeStringWithLength):
2654         (WebCore::IDBLevelDBCoding::decodeStringWithLength):
2655         (WebCore::IDBLevelDBCoding::encodeDouble):
2656         (WebCore::IDBLevelDBCoding::decodeDouble):
2657         (WebCore::IDBLevelDBCoding::encodeIDBKey):
2658         (WebCore::IDBLevelDBCoding::decodeIDBKey):
2659         (WebCore::IDBLevelDBCoding::extractEncodedIDBKey):
2660         (WebCore::IDBLevelDBCoding::compareEncodedIDBKeys):
2661         (WebCore::IDBLevelDBCoding::compare):
2662         (WebCore::IDBLevelDBCoding::KeyPrefix::KeyPrefix):
2663         (WebCore::IDBLevelDBCoding::KeyPrefix::decode):
2664         (WebCore::IDBLevelDBCoding::KeyPrefix::encode):
2665         (WebCore::IDBLevelDBCoding::KeyPrefix::compare):
2666         (WebCore::IDBLevelDBCoding::KeyPrefix::type):
2667         (WebCore::IDBLevelDBCoding::SchemaVersionKey::encode):
2668         (WebCore::IDBLevelDBCoding::MaxDatabaseIdKey::encode):
2669         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::DatabaseFreeListKey):
2670         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::decode):
2671         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::encode):
2672         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::databaseId):
2673         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::compare):
2674         (WebCore::IDBLevelDBCoding::DatabaseNameKey::decode):
2675         (WebCore::IDBLevelDBCoding::DatabaseNameKey::encode):
2676         (WebCore::IDBLevelDBCoding::DatabaseNameKey::compare):
2677         (WebCore::IDBLevelDBCoding::DatabaseMetaDataKey::encode):
2678         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::ObjectStoreMetaDataKey):
2679         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::decode):
2680         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::encode):
2681         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::objectStoreId):
2682         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::metaDataType):
2683         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::compare):
2684         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::IndexMetaDataKey):
2685         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::decode):
2686         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::encode):
2687         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::compare):
2688         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::indexId):
2689         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::ObjectStoreFreeListKey):
2690         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::decode):
2691         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::encode):
2692         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::objectStoreId):
2693         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::compare):
2694         (WebCore::IDBLevelDBCoding::IndexFreeListKey::IndexFreeListKey):
2695         (WebCore::IDBLevelDBCoding::IndexFreeListKey::decode):
2696         (WebCore::IDBLevelDBCoding::IndexFreeListKey::encode):
2697         (WebCore::IDBLevelDBCoding::IndexFreeListKey::compare):
2698         (WebCore::IDBLevelDBCoding::IndexFreeListKey::objectStoreId):
2699         (WebCore::IDBLevelDBCoding::IndexFreeListKey::indexId):
2700         (WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::decode):
2701         (WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::encode):
2702         (WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::compare):
2703         (WebCore::IDBLevelDBCoding::IndexNamesKey::IndexNamesKey):
2704         (WebCore::IDBLevelDBCoding::IndexNamesKey::decode):
2705         (WebCore::IDBLevelDBCoding::IndexNamesKey::encode):
2706         (WebCore::IDBLevelDBCoding::IndexNamesKey::compare):
2707         (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::decode):
2708         (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::encode):
2709         (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::compare):
2710         (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::userKey):
2711         (WebCore::IDBLevelDBCoding::ExistsEntryKey::decode):
2712         (WebCore::IDBLevelDBCoding::ExistsEntryKey::encode):
2713         (WebCore::IDBLevelDBCoding::ExistsEntryKey::compare):
2714         (WebCore::IDBLevelDBCoding::ExistsEntryKey::userKey):
2715         (WebCore::IDBLevelDBCoding::IndexDataKey::IndexDataKey):
2716         (WebCore::IDBLevelDBCoding::IndexDataKey::decode):
2717         (WebCore::IDBLevelDBCoding::IndexDataKey::encode):
2718         (WebCore::IDBLevelDBCoding::IndexDataKey::encodeMaxKey):
2719         (WebCore::IDBLevelDBCoding::IndexDataKey::compare):
2720         (WebCore::IDBLevelDBCoding::IndexDataKey::databaseId):
2721         (WebCore::IDBLevelDBCoding::IndexDataKey::objectStoreId):
2722         (WebCore::IDBLevelDBCoding::IndexDataKey::indexId):
2723         (WebCore::IDBLevelDBCoding::IndexDataKey::userKey):
2724         * storage/IDBLevelDBCoding.h: Added.
2725         (WebCore::IDBLevelDBCoding::DatabaseNameKey::origin):
2726         (WebCore::IDBLevelDBCoding::DatabaseNameKey::databaseName):
2727         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::metaDataType):
2728         (WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::objectStoreName):
2729         (WebCore::IDBLevelDBCoding::IndexNamesKey::indexName):
2730
2731 2011-04-27  Yury Semikhatsky  <yurys@chromium.org>
2732
2733         Reviewed by Pavel Feldman.
2734
2735         Web Inspector: expose exception details when script is paused on exception
2736         https://bugs.webkit.org/show_bug.cgi?id=59591
2737
2738         When script is paused on an exception, the exception value is added as <exception>
2739         property in the local scope and the breakpoint details message says
2740         "Paused on excepion: '<exception to strin value>'."
2741
2742         * English.lproj/localizedStrings.js:
2743         * inspector/front-end/ScopeChainSidebarPane.js:
2744         (WebInspector.ScopeChainSidebarPane.prototype.update):
2745         * inspector/front-end/ScriptsPanel.js:
2746         (WebInspector.ScriptsPanel.prototype._debuggerPaused.else.didGetSourceLocation):
2747         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
2748
2749 2011-04-26  Yury Semikhatsky  <yurys@chromium.org>
2750
2751         Reviewed by Pavel Feldman.
2752
2753         Web Inspector: [protocol] Paused event should expose exception value that caused it
2754         https://bugs.webkit.org/show_bug.cgi?id=58996
2755
2756         Debug.pause event now contains an optional reference to the exception
2757         object in case script execution is paused on a JavaScript exception.
2758
2759         Also JavaScript call frames are passed directly into the injected script when
2760         we need to wrap them for passing to the front-end. This change breaks cyclic
2761         dependency ScriptDebugServer->InspectorDebuggerAgent->InjectedScript->InjectedScriptHost->ScriptDebugServer
2762
2763         * bindings/js/JSInjectedScriptHostCustom.cpp:
2764         * bindings/js/ScriptDebugServer.cpp:
2765         (WebCore::ScriptDebugServer::dispatchDidPause):
2766         * bindings/js/ScriptDebugServer.h:
2767         * bindings/v8/ScriptDebugServer.cpp:
2768         (WebCore::ScriptDebugServer::breakProgram):
2769         (WebCore::ScriptDebugServer::editScriptSource):
2770         (WebCore::ScriptDebugServer::breakProgramCallback):
2771         (WebCore::ScriptDebugServer::handleV8DebugEvent):
2772         * bindings/v8/ScriptDebugServer.h:
2773         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2774         * inspector/InjectedScript.cpp:
2775         (WebCore::InjectedScript::evaluateOnCallFrame):
2776         (WebCore::InjectedScript::wrapCallFrames):
2777         * inspector/InjectedScript.h:
2778         * inspector/InjectedScriptHost.cpp:
2779         * inspector/InjectedScriptHost.h:
2780         (WebCore::InjectedScriptHost::init):
2781         * inspector/InjectedScriptHost.idl:
2782         * inspector/InjectedScriptSource.js:
2783         (.):
2784         * inspector/Inspector.json:
2785         * inspector/InspectorAgent.cpp:
2786         (WebCore::InspectorAgent::InspectorAgent):
2787         * inspector/InspectorDebuggerAgent.cpp:
2788         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
2789         (WebCore::InspectorDebuggerAgent::currentCallFrames):
2790         (WebCore::InspectorDebuggerAgent::wrapCallFrames):
2791         (WebCore::InspectorDebuggerAgent::didPause):
2792         (WebCore::InspectorDebuggerAgent::didContinue):
2793         (WebCore::InspectorDebuggerAgent::clear):
2794         * inspector/InspectorDebuggerAgent.h:
2795         * inspector/ScriptDebugListener.h:
2796         * inspector/WorkerInspectorController.cpp:
2797         (WebCore::WorkerInspectorController::WorkerInspectorController):
2798
2799 2011-04-27  Pavel Feldman  <pfeldman@google.com>
2800
2801         Reviewed by Yury Semikhatsky.
2802
2803         Web Inspector: implement incremental CSS editing in the structure view.
2804         https://bugs.webkit.org/show_bug.cgi?id=59455
2805
2806         * inspector/front-end/StylesSidebarPane.js:
2807         (WebInspector.StylePropertyTreeElement.prototype):
2808
2809 2011-04-27  Mihai Parparita  <mihaip@chromium.org>
2810
2811         Reviewed by Eric Seidel.
2812
2813         Frame.h shouldn't include Document.h
2814         https://bugs.webkit.org/show_bug.cgi?id=59560
2815
2816         Frame can use a forward-declared Document if we move
2817         Frame::displayStringModifiedByEncoding's implementation out of the
2818         header.
2819                                 Size  #includes  Size * #includes
2820         Before: page/Frame.h:   0.746       653           487.138
2821                 dom/Document.h: 0.220      1306           287.320
2822         
2823         After:  page/Frame.h:   0.646       653           421.838
2824                 dom/Document.h: 0.220      1189           261.580
2825
2826         * WebCore.exp.in:
2827         * bindings/ScriptControllerBase.cpp:
2828         * bindings/generic/BindingSecurityBase.cpp:
2829         * bindings/v8/V8Proxy.cpp:
2830         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
2831         * dom/CharacterData.cpp:
2832         * dom/UserTypingGestureIndicator.cpp:
2833         * editing/chromium/SelectionControllerChromium.cpp:
2834         * inspector/InspectorDOMStorageResource.cpp:
2835         * inspector/InspectorInstrumentation.h:
2836         * loader/PingLoader.cpp:
2837         * loader/SubresourceLoader.cpp:
2838         * loader/appcache/DOMApplicationCache.cpp:
2839         * loader/cache/CachedResourceRequest.cpp:
2840         * page/Frame.cpp:
2841         (WebCore::Frame::displayStringModifiedByEncoding):
2842         * page/Frame.h:
2843         * page/Geolocation.cpp:
2844         * page/Location.cpp:
2845         * page/Navigator.cpp:
2846         * page/PageGroupLoadDeferrer.cpp:
2847         * page/PerformanceTiming.cpp:
2848         * xml/XSLTProcessorLibxslt.cpp:
2849
2850 2011-04-27  James Robinson  <jamesr@chromium.org>
2851
2852         Reviewed by Eric Seidel.
2853
2854         Fix OwnPtr strict errors in RenderStyle and make StyleRareInheritedData::textShadow an OwnPtr
2855         https://bugs.webkit.org/show_bug.cgi?id=59377
2856
2857         This cleans up some strict OwnPtr<> violations around text and box shadow data.  ShadowData's linked list data
2858         structure now uses OwnPtr<>s to manage memory - each entry in the list has ownership of the next ShadowData.
2859
2860         * css/CSSStyleSelector.cpp:
2861         (WebCore::CSSStyleSelector::applyProperty):
2862         * page/animation/AnimationBase.cpp:
2863         (WebCore::blendFunc):
2864         (WebCore::PropertyWrapperShadow::PropertyWrapperShadow):
2865         (WebCore::PropertyWrapperShadow::blend):
2866         * rendering/style/RenderStyle.cpp:
2867         (WebCore::RenderStyle::setTextShadow):
2868         (WebCore::RenderStyle::setBoxShadow):
2869         * rendering/style/RenderStyle.h:
2870         (WebCore::InheritedFlags::textShadow):
2871         * rendering/style/ShadowData.cpp:
2872         (WebCore::ShadowData::ShadowData):
2873         * rendering/style/ShadowData.h:
2874         (WebCore::ShadowData::ShadowData):
2875         (WebCore::ShadowData::next):
2876         (WebCore::ShadowData::setNext):
2877         * rendering/style/StyleRareInheritedData.cpp:
2878         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
2879         (WebCore::StyleRareInheritedData::~StyleRareInheritedData):
2880         * rendering/style/StyleRareInheritedData.h:
2881         * rendering/style/StyleRareNonInheritedData.cpp:
2882         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2883
2884 2011-04-26  David Levin  <levin@chromium.org>
2885
2886         Reviewed by Eric Seidel.
2887
2888         Fix some strict PassOwnPtr issues in WebCore.
2889         https://bugs.webkit.org/show_bug.cgi?id=59563
2890
2891         * css/SVGCSSStyleSelector.cpp:
2892         (WebCore::CSSStyleSelector::applySVGProperty):
2893         * html/canvas/WebGLRenderingContext.cpp:
2894         (WebCore::WebGLRenderingContext::create):
2895         (WebCore::WebGLRenderingContext::~WebGLRenderingContext):
2896         * platform/text/TextCodecLatin1.cpp:
2897         (WebCore::newStreamingTextDecoderWindowsLatin1):
2898         * platform/text/TextCodecUTF16.cpp:
2899         (WebCore::newStreamingTextDecoderUTF16LE):
2900         (WebCore::newStreamingTextDecoderUTF16BE):
2901         * platform/text/TextCodecUserDefined.cpp:
2902         (WebCore::newStreamingTextDecoderUserDefined):
2903         * platform/text/mac/TextCodecMac.cpp:
2904         (WebCore::newTextCodecMac):
2905         * workers/Worker.cpp:
2906         (WebCore::Worker::notifyFinished):
2907
2908 2011-04-26  Justin Novosad  <junov@chromium.org>
2909
2910         Reviewed by Kenneth Russell.
2911
2912         [Chromium] Expose skia gpu canvas rendering as a runtime flag
2913         https://bugs.webkit.org/show_bug.cgi?id=58683
2914         Replace the SKIA_GPU compile flag by the pre-existing
2915         acceleratedDrawingEnabled flag. Most code changes are trivial:
2916         compile-time conditionals on SKIA_GPU were either replaced with
2917         a run-time check, or a compile time check on USE(SKIA) 
2918
2919         No new tests. Covered by existing tests.
2920
2921         * html/canvas/CanvasRenderingContext2D.cpp:
2922         (WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation):
2923         * page/Page.cpp:
2924         (WebCore::Page::sharedGraphicsContext3D):
2925         Added check for the acceleratedDrawing flag.
2926         * platform/graphics/chromium/DrawingBufferChromium.cpp:
2927         (WebCore::DrawingBuffer::DrawingBuffer):
2928         (WebCore::DrawingBuffer::publishToPlatformLayer):
2929         * platform/graphics/gpu/DrawingBuffer.h:
2930         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
2931         (WebCore::SharedGraphicsContext3D::create):
2932         On Skia builds, this methos now receives a bool arg to turn on
2933         GPU-accelerated skia rendering
2934         (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
2935         (WebCore::SharedGraphicsContext3D::~SharedGraphicsContext3D):
2936         (WebCore::SharedGraphicsContext3D::grContext):
2937         * platform/graphics/gpu/SharedGraphicsContext3D.h:
2938         * platform/graphics/skia/ImageSkia.cpp:
2939         (WebCore::computeResamplingMode):
2940         (WebCore::paintSkBitmap):
2941         (WebCore::Image::drawPattern):
2942         * platform/graphics/skia/PlatformContextSkia.cpp:
2943         (WebCore::PlatformContextSkia::PlatformContextSkia):
2944         (WebCore::PlatformContextSkia::~PlatformContextSkia):
2945         (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
2946         (WebCore::PlatformContextSkia::setSharedGraphicsContext3D):
2947         (WebCore::PlatformContextSkia::prepareForSoftwareDraw):
2948         (WebCore::PlatformContextSkia::prepareForHardwareDraw):
2949         (WebCore::PlatformContextSkia::syncSoftwareCanvas):
2950         (WebCore::PlatformContextSkia::markDirtyRect):
2951         * platform/graphics/skia/PlatformContextSkia.h:
2952         (WebCore::PlatformContextSkia::accelerationMode):
2953         (WebCore::PlatformContextSkia::useGPU):
2954         (WebCore::PlatformContextSkia::useSkiaGPU):
2955
2956 2011-04-26  Pavel Feldman  <pfeldman@chromium.org>
2957
2958         Not reviewed: restore inspector test disabled in r84913.
2959
2960         Test: http/tests/inspector-enabled/dom-storage-open.html
2961
2962         * inspector/InspectorDOMStorageAgent.cpp:
2963         (WebCore::InspectorDOMStorageAgent::clearFrontend):
2964
2965 2011-04-26  Kenichi Ishibashi  <bashi@chromium.org>
2966
2967         Reviewed by Tony Chang.
2968
2969         [Chromium] Vertical positions are off for some Arabic glyphs on Linux
2970         https://bugs.webkit.org/show_bug.cgi?id=59182
2971
2972         Use vertical offsets of the shaping results.
2973
2974         Test: platform/chromium-linux/fast/text/international/arabic-vertical-offset.html
2975
2976         * platform/graphics/chromium/ComplexTextControllerLinux.cpp:
2977         (WebCore::ComplexTextController::ComplexTextController):
2978         Added initialization of m_startingY.
2979         (WebCore::ComplexTextController::nextScriptRun):
2980         Followed the change in handling positions.
2981         (WebCore::ComplexTextController::deleteGlyphArrays): Ditto.
2982         (WebCore::ComplexTextController::createGlyphArrays): Ditto.
2983         (WebCore::ComplexTextController::resetGlyphArrays): Ditto.
2984         (WebCore::ComplexTextController::setGlyphPositions):
2985         Changed to use vertical offsets as same as horizontal offsets.
2986         * platform/graphics/chromium/ComplexTextControllerLinux.h:
2987         Removed m_xPositions and Added m_positions and m_startingY.
2988         (WebCore::ComplexTextController::positions): Added.
2989         * platform/graphics/chromium/FontLinux.cpp:
2990         Followed the change in ComplexTextController.
2991         (WebCore::Font::drawComplexText): Ditto.
2992         (WebCore::Font::floatWidthForComplexText): Ditto.
2993         (WebCore::glyphIndexForXPositionInScriptRun): Ditto.
2994         (WebCore::Font::offsetForPositionForComplexText): Ditto.
2995         (WebCore::Font::selectionRectForComplexText): Ditto.
2996
2997 2011-04-26  Levi Weintraub  <leviw@chromium.org>
2998
2999         Reviewed by Eric Seidel.
3000
3001         Root element should establish a new block formatting context
3002         https://bugs.webkit.org/show_bug.cgi?id=54573
3003
3004         Always expanding the root renderer to include overhanging floats.
3005
3006         Test: fast/block/float/float-overhangs-root.html
3007
3008         * rendering/RenderBlock.cpp:
3009         (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
3010
3011 2011-04-26  Dawit Alemayehu  <adawit@kde.org>
3012
3013         Reviewed by Andreas Kling.
3014
3015         [Qt] Improper rendering of <button> tag when it contains a <br>
3016         https://bugs.webkit.org/show_bug.cgi?id=50521
3017
3018         Test: platform/qt/fast/forms/button-line-break.html
3019
3020         * platform/qt/RenderThemeQt.cpp:
3021         (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
3022         (WebCore::RenderThemeQt::setButtonPadding):
3023
3024 2011-04-26  James Robinson  <jamesr@chromium.org>
3025
3026         Reviewed by Kenneth Russell.
3027
3028         [chromium] Only reset tiles if the LayerRendererChromium is actually changing
3029         https://bugs.webkit.org/show_bug.cgi?id=59572
3030
3031         http://trac.webkit.org/changeset/84981/ caused us to reset the tiles
3032         when LayerRendererChromium was set.  We set this pointer every frame
3033         and should only reset the tiles if the new LayerRendererChromium is
3034         different from the old one (indicating a context loss), not just reset
3035         on every frame.
3036
3037         * platform/graphics/chromium/LayerTilerChromium.cpp:
3038         (WebCore::LayerTilerChromium::setLayerRenderer):
3039         * platform/graphics/chromium/LayerTilerChromium.h:
3040
3041 2011-04-26  Dinesh K Garg  <dineshg@codeaurora.org>
3042
3043         Reviewed by Eric Seidel.
3044
3045         beginElement broken by setAttribute
3046         https://bugs.webkit.org/show_bug.cgi?id=26019
3047
3048         Test: svg/animations/animate-beginElementAt.svg
3049
3050         * svg/SVGAnimationElement.cpp:
3051         (WebCore::SVGAnimationElement::attributeChanged):
3052         Reset the animation state here as the rest of the code reads it and would still
3053         think we are animating when we are not.
3054
3055         * svg/animation/SVGSMILElement.h:
3056         (WebCore::SVGSMILElement::setInactive): Helper function to reset the state.
3057
3058 2011-04-26  Sheriff Bot  <webkit.review.bot@gmail.com>
3059
3060         Unreviewed, rolling out r84989.
3061         http://trac.webkit.org/changeset/84989
3062         https://bugs.webkit.org/show_bug.cgi?id=59566
3063
3064         REGRESSION (r84989): Lots of vertical text tests failing on
3065         windows (Requested by weinig on #webkit).
3066
3067         * platform/graphics/FontPlatformData.h:
3068         * platform/graphics/win/FontCacheWin.cpp:
3069         (WebCore::FontCache::getFontDataForCharacters):
3070         (WebCore::FontCache::createFontPlatformData):
3071         * platform/graphics/win/FontCustomPlatformData.cpp:
3072         (WebCore::FontCustomPlatformData::fontPlatformData):
3073         * platform/graphics/win/FontPlatformDataCGWin.cpp:
3074         (WebCore::FontPlatformData::FontPlatformData):
3075         * platform/graphics/win/FontPlatformDataWin.cpp:
3076         (WebCore::FontPlatformData::FontPlatformData):
3077
3078 2011-04-26  Sam Weinig  <sam@webkit.org>
3079
3080         Reviewed by Eric Seidel.
3081
3082         Try again:
3083             Remove JSDOMWrapperWithGlobalPointer now that all JSDOMWrappers have global objects
3084             https://bugs.webkit.org/show_bug.cgi?id=59310
3085
3086         * bindings/js/JSDOMBinding.h:
3087         (WebCore::DOMConstructorObject::DOMConstructorObject):
3088         * bindings/js/JSDOMWrapper.h:
3089         (WebCore::JSDOMWrapper::globalObject):
3090         (WebCore::JSDOMWrapper::scriptExecutionContext):
3091         (WebCore::JSDOMWrapper::createStructure):
3092         (WebCore::JSDOMWrapper::JSDOMWrapper):
3093         * bindings/scripts/CodeGeneratorJS.pm:
3094
3095 2011-04-26  Sam Weinig  <sam@webkit.org>
3096
3097         Reviewed by David Hyatt.
3098
3099         Remove Datagrid from the tree
3100         https://bugs.webkit.org/show_bug.cgi?id=59543
3101
3102         * Android.derived.jscbindings.mk:
3103         * Android.derived.v8bindings.mk:
3104         * Android.jscbindings.mk:
3105         * Android.v8bindings.mk:
3106         * CMakeLists.txt:
3107         * CodeGenerators.pri:
3108         * Configurations/FeatureDefines.xcconfig:
3109         * DerivedSources.cpp:
3110         * DerivedSources.make:
3111         * GNUmakefile.am:
3112         * GNUmakefile.list.am:
3113         * UseJSC.cmake:
3114         * WebCore.gypi:
3115         * WebCore.pro:
3116         * WebCore.vcproj/WebCore.vcproj:
3117         * WebCore.xcodeproj/project.pbxproj:
3118         * bindings/js/JSBindingsAllInOne.cpp:
3119         * bindings/js/JSDataGridColumnListCustom.cpp: Removed.
3120         * bindings/js/JSDataGridDataSource.cpp: Removed.
3121         * bindings/js/JSDataGridDataSource.h: Removed.
3122         * bindings/js/JSHTMLDataGridElementCustom.cpp: Removed.
3123         * bindings/v8/V8DataGridDataSource.cpp: Removed.
3124         * bindings/v8/V8DataGridDataSource.h: Removed.
3125         * bindings/v8/custom/V8DataGridColumnListCustom.cpp: Removed.
3126         * bindings/v8/custom/V8HTMLDataGridElementCustom.cpp: Removed.
3127         * css/CSSStyleSelector.cpp:
3128         * css/CSSStyleSelector.h:
3129         * css/html.css:
3130         (input, textarea, keygen, select, button, isindex):
3131         (select:disabled, keygen:disabled, optgroup:disabled, option:disabled):
3132         * editing/htmlediting.cpp:
3133         (WebCore::canHaveChildrenForEditing):
3134         * features.pri:
3135         * html/DOMDataGridDataSource.cpp: Removed.
3136         * html/DOMDataGridDataSource.h: Removed.
3137         * html/DataGridColumn.cpp: Removed.
3138         * html/DataGridColumn.h: Removed.
3139         * html/DataGridColumn.idl: Removed.
3140         * html/DataGridColumnList.cpp: Removed.
3141         * html/DataGridColumnList.h: Removed.
3142         * html/DataGridColumnList.idl: Removed.
3143         * html/DataGridDataSource.h: Removed.
3144         * html/HTMLDataGridCellElement.cpp: Removed.
3145         * html/HTMLDataGridCellElement.h: Removed.
3146         * html/HTMLDataGridCellElement.idl: Removed.
3147         * html/HTMLDataGridColElement.cpp: Removed.
3148         * html/HTMLDataGridColElement.h: Removed.
3149         * html/HTMLDataGridColElement.idl: Removed.
3150         * html/HTMLDataGridElement.cpp: Removed.
3151         * html/HTMLDataGridElement.h: Removed.
3152         * html/HTMLDataGridElement.idl: Removed.
3153         * html/HTMLDataGridRowElement.cpp: Removed.
3154         * html/HTMLDataGridRowElement.h: Removed.
3155         * html/HTMLDataGridRowElement.idl: Removed.
3156         * html/HTMLElement.cpp:
3157         (WebCore::HTMLElement::ieForbidsInsertHTML):
3158         * html/HTMLElementsAllInOne.cpp:
3159         * html/HTMLTagNames.in:
3160         * page/DOMWindow.idl:
3161         * rendering/RenderBox.cpp:
3162         (WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
3163         * rendering/RenderDataGrid.cpp: Removed.
3164         * rendering/RenderDataGrid.h: Removed.
3165         * rendering/RenderingAllInOne.cpp:
3166
3167 2011-04-26  Chun-Lung Huang  <alvincl.huang@gmail.com>
3168
3169         Reviewed by Adele Peterson.
3170
3171         On WebKit (Windows), glyphs in vertical text tests are rotated 90
3172         degrees clockwise.  https://bugs.webkit.org/show_bug.cgi?id=48459
3173
3174         This platform dependent patch makes WebKit (Windows) show the
3175         vertical writing text correctly.  Job was done by adding a prefix '@'
3176         in front of the font family name (Windows Only). No new tests added.
3177         Some layout tests images:
3178         http://www.flickr.com/photos/burorly/sets/72157625585506341/
3179
3180         * platform/graphics/FontPlatformData.h:
3181         * platform/graphics/win/FontCacheWin.cpp:
3182         (WebCore::FontCache::getFontDataForCharacters):
3183         (WebCore::FontCache::createFontPlatformData):
3184         * platform/graphics/win/FontCustomPlatformData.cpp:
3185         (WebCore::FontCustomPlatformData::fontPlatformData):
3186         * platform/graphics/win/FontPlatformDataCGWin.cpp:
3187         (WebCore::FontPlatformData::FontPlatformData):
3188         * platform/graphics/win/FontPlatformDataWin.cpp:
3189         (WebCore::FontPlatformData::FontPlatformData):
3190
3191 2011-04-26  Jer Noble  <jer.noble@apple.com>
3192
3193         Reviewed by Brady Eidson.
3194
3195         HTML5 video fullscreen transition causes an audio stutter
3196         https://bugs.webkit.org/show_bug.cgi?id=59544
3197
3198         AVFoundation will momentarily stutter when you disconnect a AVPlayerLayer 
3199         from its AVPlayer.  Since you shouldn't necessarily have to destroy the
3200         layer to render it invisible, instead just set the layer as hidden.
3201
3202         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
3203         (WebCore::MediaPlayerPrivateAVFoundation::setVisible): Call through to platformSetVisible().
3204         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
3205         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
3206         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
3207         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformSetVisible): Added.
3208
3209 2011-04-26  Christian Dywan  <christian@lanedo.com>
3210
3211         Reviewed by Eric Seidel.
3212
3213         Extra separator after Select All in context menu
3214         https://bugs.webkit.org/show_bug.cgi?id=54092
3215
3216         * page/ContextMenuController.cpp: Move separator to non-GTK+
3217             port guards since it is for the spelling options menu
3218             which the GTK+ port doesn't use.
3219
3220 2011-04-26  James Robinson  <jamesr@chromium.org>
3221
3222         Reviewed by Kenneth Russell.
3223
3224         [chromium] Clear out LayerTilerChromium's tiles on lost context
3225         https://bugs.webkit.org/show_bug.cgi?id=59233
3226
3227         Clears out the LayerTilerChromium's tile set when the LayerRendererChromium is reset.  In this case the tiles are
3228         no longer valid since they exist in the previous LayerRendererChromium.
3229
3230         Will be tested by a chrome test since we don't have any way to exercise the context lost case in layout tests.
3231
3232         * platform/graphics/chromium/LayerTilerChromium.h:
3233         (WebCore::LayerTilerChromium::setLayerRenderer):
3234
3235 2011-04-26  Martin Robinson  <mrobinson@igalia.com>
3236
3237         Reviewed by Dirk Schulze.
3238
3239         [GTK] Flash in divs with overflow: auto is not positioned and clipped properly
3240         https://bugs.webkit.org/show_bug.cgi?id=57644
3241
3242         Manual test: plugins/windowed-in-iframe-2.html
3243
3244         * manual-tests/plugins/windowed-in-iframe-2.html: Added.
3245         * platform/gtk/WidgetGtk.cpp:
3246         (WebCore::Widget::setFrameRect): Like the Qt port, we notify the widget via frameRectsChanged.
3247         * plugins/PluginView.h: Added helper method to set the allocation and clip.
3248         * plugins/gtk/PluginViewGtk.cpp:
3249         (WebCore::PluginView::setNPWindowIfNeeded):Call the helper method instead of setting
3250         the allocation immediately. Bring this method into sync with the implementation in
3251         the Qt port.
3252         (WebCore::PluginView::updateWidgetAllocationAndClip): Added.
3253         (WebCore::PluginView::plugAddedCallback): Call the new helper method.
3254
3255 2011-04-26  Martin Robinson  <mrobinson@igalia.com>
3256
3257         Reviewed by Eric Seidel.
3258
3259         [GTK]  fast/block/float/overhanging-tall-block.html crashes in the bots
3260         https://bugs.webkit.org/show_bug.cgi?id=58818
3261
3262         Prevent allocating scratch buffers larger than the target GdkDrawable
3263         when creating a WidgetRenderingContext. This prevents incredibly large
3264         widgets from crashing the X Server. This change also allowed greatly
3265         simplifying the way that the painting offset is calculated.
3266
3267         * platform/gtk/WidgetRenderingContext.cpp:
3268         (WebCore::WidgetRenderingContext::WidgetRenderingContext): Never allocate a pixmap
3269         larger than the target GdkDrawable.
3270         (WebCore::WidgetRenderingContext::~WidgetRenderingContext): Calculate the offset of the
3271         blit by looking at the location of the target rect itself, rather than delaying the
3272         calculation up to this point.
3273         (WebCore::WidgetRenderingContext::calculateClipRect): Added.
3274         (WebCore::WidgetRenderingContext::gtkPaintBox): Use the new calculateClipRectHelper.
3275         (WebCore::WidgetRenderingContext::gtkPaintFlatBox): Ditto.
3276         (WebCore::WidgetRenderingContext::gtkPaintFocus): Ditto.
3277         (WebCore::WidgetRenderingContext::gtkPaintSlider): Ditto.
3278         (WebCore::WidgetRenderingContext::gtkPaintCheck): Ditto.
3279         (WebCore::WidgetRenderingContext::gtkPaintOption): Ditto.
3280         (WebCore::WidgetRenderingContext::gtkPaintShadow): Ditto.
3281         (WebCore::WidgetRenderingContext::gtkPaintArrow): Ditto.
3282         (WebCore::WidgetRenderingContext::gtkPaintVLine): Ditto.
3283         * platform/gtk/WidgetRenderingContext.h: Remove some now unused members. Add
3284         a member to store the IntSize mapping from the coordinates of the target to the coordinates
3285         of the scratch buffer.
3286
3287 2011-04-26  Patrick Gansterer  <paroga@webkit.org>
3288
3289         Reviewed by Adam Barth.
3290
3291         Respect charset in handleDataURL
3292         https://bugs.webkit.org/show_bug.cgi?id=47746
3293
3294         Original patch by Kwang Yul Seo <skyul@company100.net>
3295
3296         We must use TextEncoding(charset) to encode data URL again. Otherwise TextEncoding::encode()
3297         returns an empty string because encoding name is not specified.
3298
3299         Also use "US-ASCII" as fallback charset as extractCharsetFromMediaType can be empty.
3300
3301         This change fixes over 130 layout tests when running GTK port with cURL network backend.
3302
3303         * platform/network/DataURL.cpp:
3304         (WebCore::handleDataURL):
3305
3306 2011-04-26  Anders Carlsson  <andersca@apple.com>
3307
3308         Fix clang++ build.
3309
3310         You can never have too many casts!
3311
3312         * accessibility/mac/AccessibilityObjectWrapper.mm:
3313         (-[AccessibilityObjectWrapper position]):
3314         * editing/mac/SelectionControllerMac.mm:
3315         (WebCore::accessibilityConvertScreenRect):
3316
3317 2011-04-26  Chris Rogers  <crogers@google.com>
3318
3319         Reviewed by Kenneth Russell.
3320
3321         Fix web audio build on mac port
3322         https://bugs.webkit.org/show_bug.cgi?id=59355
3323
3324         No new tests since audio API is not yet implemented.
3325
3326         * WebCore.xcodeproj/project.pbxproj:
3327         * bindings/js/JSAudioContextCustom.cpp:
3328         (WebCore::JSAudioContext::visitChildren):
3329         * bindings/js/JSJavaScriptAudioNodeCustom.cpp:
3330         (WebCore::JSJavaScriptAudioNode::visitChildren):
3331         * webaudio/AudioContext.idl:
3332
3333 2011-04-26  Chris Rogers  <crogers@google.com>
3334
3335         Reviewed by Kenneth Russell.
3336
3337         Add FFTFrame implementation for FFmpeg
3338         https://bugs.webkit.org/show_bug.cgi?id=59408
3339
3340         No new tests since audio API is not yet implemented.
3341
3342         * WebCore.gyp/WebCore.gyp:
3343         * WebCore.gypi:
3344         * platform/audio/FFTFrame.h:
3345         * platform/audio/FFTFrameStub.cpp:
3346         * platform/audio/ffmpeg: Added.
3347         * platform/audio/ffmpeg/FFTFrameFFMPEG.cpp: Added.
3348         (WebCore::FFTFrame::FFTFrame):
3349         (WebCore::FFTFrame::initialize):
3350         (WebCore::FFTFrame::cleanup):
3351         (WebCore::FFTFrame::~FFTFrame):
3352         (WebCore::FFTFrame::multiply):
3353         (WebCore::FFTFrame::doFFT):
3354         (WebCore::FFTFrame::doInverseFFT):
3355         (WebCore::FFTFrame::realData):
3356         (WebCore::FFTFrame::imagData):
3357         (WebCore::FFTFrame::getUpToDateComplexData):
3358         (WebCore::FFTFrame::contextForSize):
3359         * platform/audio/mac/FFTFrameMac.cpp:
3360         * webaudio/ConvolverNode.cpp:
3361
3362 2011-04-26  Jeff Miller  <jeffm@apple.com>
3363
3364         Add a newline at the end of SVGFEDropShadowElement.idl.
3365
3366         * svg/SVGFEDropShadowElement.idl:
3367
3368 2011-04-26  Mihai Parparita  <mihaip@chromium.org>
3369
3370         Reviewed by Eric Seidel.
3371
3372         InlineBox.h shouldn't include RenderBR.h
3373         https://bugs.webkit.org/show_bug.cgi?id=59480
3374
3375         Per bug 59348 RenderBR.h is a "top header" by include * size, because
3376         InlineBox.h includes it. There's no reason why it has to.
3377
3378         * rendering/InlineBox.h:
3379         * rendering/InlineTextBox.cpp:
3380         * rendering/RenderBlock.h:
3381
3382 2011-04-26  Sam Weinig  <sam@webkit.org>
3383
3384         Nope, roll out r84950 and r84952. Working on a laptop is clearly not something
3385         I should do.
3386
3387         * bindings/js/JSDOMBinding.h:
3388         (WebCore::JSDOMWrapperWithGlobalPointer::globalObject):
3389         (WebCore::JSDOMWrapperWithGlobalPointer::scriptExecutionContext):
3390         (WebCore::JSDOMWrapperWithGlobalPointer::createStructure):
3391         (WebCore::JSDOMWrapperWithGlobalPointer::JSDOMWrapperWithGlobalPointer):
3392         (WebCore::DOMConstructorObject::DOMConstructorObject):
3393         * bindings/js/JSDOMWrapper.h:
3394         (WebCore::JSDOMWrapper::JSDOMWrapper):
3395         * bindings/scripts/CodeGeneratorJS.pm:
3396
3397 2011-04-26  Sam Weinig  <sam@webkit.org>
3398
3399         Fix build.
3400
3401         * bindings/js/JSDOMWrapper.h:
3402         (WebCore::JSDOMWrapper::globalObject):
3403
3404 2011-04-26  Sam Weinig  <sam@webkit.org>
3405
3406         Roll r84945 back in with infinite recursion removed.
3407
3408         * bindings/js/JSDOMBinding.h:
3409         (WebCore::DOMConstructorObject::DOMConstructorObject):
3410         * bindings/js/JSDOMWrapper.h:
3411         (WebCore::JSDOMWrapper::globalObject):
3412         (WebCore::JSDOMWrapper::scriptExecutionContext):
3413         (WebCore::JSDOMWrapper::createStructure):
3414         (WebCore::JSDOMWrapper::JSDOMWrapper):
3415         * bindings/scripts/CodeGeneratorJS.pm:
3416
3417 2011-04-26  Sam Weinig  <sam@webkit.org>
3418
3419         Rollout previous patch. It broke stuff.
3420
3421         * bindings/js/JSDOMBinding.h:
3422         (WebCore::JSDOMWrapperWithGlobalPointer::globalObject):
3423         (WebCore::JSDOMWrapperWithGlobalPointer::scriptExecutionContext):
3424         (WebCore::JSDOMWrapperWithGlobalPointer::createStructure):
3425         (WebCore::JSDOMWrapperWithGlobalPointer::JSDOMWrapperWithGlobalPointer):
3426         (WebCore::DOMConstructorObject::DOMConstructorObject):
3427         * bindings/js/JSDOMWrapper.h:
3428         (WebCore::JSDOMWrapper::JSDOMWrapper):
3429         * bindings/scripts/CodeGeneratorJS.pm:
3430
3431 2011-04-26  Sam Weinig  <sam@webkit.org>
3432
3433         Reviewed by Maciej Stachowiak.
3434
3435         Remove JSDOMWrapperWithGlobalPointer now that all JSDOMWrappers have global objects
3436         https://bugs.webkit.org/show_bug.cgi?id=59310
3437
3438         * bindings/js/JSDOMBinding.h:
3439         (WebCore::DOMConstructorObject::DOMConstructorObject):
3440         * bindings/js/JSDOMWrapper.h:
3441         (WebCore::JSDOMWrapper::globalObject):
3442         (WebCore::JSDOMWrapper::scriptExecutionContext):
3443         (WebCore::JSDOMWrapper::createStructure):
3444         (WebCore::JSDOMWrapper::JSDOMWrapper):
3445         Merge JSDOMWrapperWithGlobalPointer with JSDOMWrapper.
3446
3447         * bindings/scripts/CodeGeneratorJS.pm:
3448         Make JSDOMWrapper the base class.
3449
3450 2011-04-26  Dan Bernstein  <mitz@apple.com>
3451
3452         Reviewed by Mark Rowe.
3453
3454         Choose the compiler based on the Xcode version for Snow Leopard debug builds.
3455
3456         * Configurations/Base.xcconfig:
3457         * Configurations/CompilerVersion.xcconfig: Added.
3458
3459 2011-04-26  Adrienne Walker  <enne@google.com>
3460
3461         Reviewed by Geoffrey Garen.
3462
3463         Use OwnArrayPtr<T> instead of OwnPtr<T*> in ScopeTracer
3464         https://bugs.webkit.org/show_bug.cgi?id=59469
3465
3466         * platform/chromium/TraceEvent.h:
3467         (WebCore::internal::ScopeTracer::ScopeTracer):
3468
3469 2011-04-25  Geoffrey Garen  <ggaren@apple.com>
3470
3471         Reviewed by Oliver Hunt.
3472
3473         Nixed special finalizer handling for WebCore strings
3474         https://bugs.webkit.org/show_bug.cgi?id=59425
3475
3476         Not needed anymore, since weak handles have finalizers.
3477
3478         * WebCore.exp.in: Exports!
3479
3480         * bindings/js/DOMWrapperWorld.cpp:
3481         (WebCore::JSStringOwner::finalize):
3482         (WebCore::DOMWrapperWorld::DOMWrapperWorld): Use a weak handle finalizer,
3483         so we don't need special treatment anymore.
3484
3485         * bindings/js/DOMWrapperWorld.h:
3486         (WebCore::JSStringOwner::JSStringOwner):
3487         (WebCore::DOMWrapperWorld::stringWrapperOwner): Use a HashMap of Weak<T>
3488         instead of a WeakGCMap, so we can specify a custom finalizer.
3489
3490         * bindings/js/JSDOMBinding.cpp:
3491         (WebCore::jsStringSlowCase):
3492         * bindings/js/JSDOMBinding.h:
3493         (WebCore::jsString): Updated for string map change.
3494
3495 2011-04-26  David Kilzer  <ddkilzer@apple.com>
3496
3497         <http://webkit.org/b/59372> Restore user default for enabling HTTP pipelining
3498
3499         Reviewed by Antti Koivisto.
3500
3501         To enable HTTP pipelining post-SnowLeopard, use this command:
3502
3503             defaults write BUNDLE.ID WebKitEnableHTTPPipelining -bool YES
3504
3505         * platform/network/cf/ResourceRequestCFNet.cpp:
3506         (WebCore::readBooleanPreference): Re-added.  Originally added in
3507         r76756 and removed in r84120.
3508         (WebCore::initializeMaximumHTTPConnectionCountPerHost): Enable
3509         HTTP pipelining if use default is set to true.  Added macro
3510         guards to match those in ResourceRequestMac.mm.
3511
3512 2011-04-26  Antti Koivisto  <antti@apple.com>
3513
3514         Reviewed by Adele Peterson.
3515
3516         Don't strip fragments from file: urls in memory cache
3517         https://bugs.webkit.org/show_bug.cgi?id=59463
3518         <rdar://problem/9231130>
3519
3520         Some clients expect file: resources to be unique based on fragment identifier. 
3521         Limit the changes in http://trac.webkit.org/changeset/74107 to the HTTP protocol only
3522
3523         Test: fast/loader/file-protocol-fragment.html
3524
3525         * loader/cache/MemoryCache.cpp:
3526         (WebCore::MemoryCache::removeFragmentIdentifierIfNeeded):
3527
3528 2011-04-26  David Levin  <levin@chromium.org>
3529
3530         Reviewed by Darin Adler.
3531
3532         Fix more strict OwnPtr in WebCore (round N).
3533         https://bugs.webkit.org/show_bug.cgi?id=59464
3534
3535         * dom/Document.cpp:
3536         (WebCore::Document::Document):
3537         (WebCore::Document::attach):
3538         * fileapi/FileReader.cpp:
3539         (WebCore::FileReader::terminate):
3540         * loader/DocumentThreadableLoader.cpp:
3541         (WebCore::DocumentThreadableLoader::preflightFailure):
3542         * workers/DefaultSharedWorkerRepository.cpp:
3543         (WebCore::SharedWorkerConnectTask::create):
3544         (WebCore::SharedWorkerScriptLoader::load):
3545
3546 2011-04-26  Ruben  <chromium@hybridsource.org>
3547
3548         Reviewed by Tony Chang.
3549
3550         Change linux ifdefs for Chromium to Unix instead, allowing
3551         new Unix ports to be enabled by default
3552         https://bugs.webkit.org/show_bug.cgi?id=59297
3553
3554         No new tests, just changing preprocessor defines.
3555
3556         * bindings/js/JSInspectorFrontendHostCustom.cpp:
3557         * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
3558         * dom/SelectElement.cpp:
3559         * loader/cache/CachedFont.cpp:
3560         * page/EventHandler.cpp:
3561         * page/chromium/EventHandlerChromium.cpp:
3562         * platform/Scrollbar.cpp:
3563         * platform/chromium/PlatformBridge.h:
3564         * platform/graphics/chromium/FontPlatformData.h:
3565         * platform/graphics/skia/FontCustomPlatformData.cpp:
3566         * platform/graphics/skia/FontCustomPlatformData.h:
3567
3568 2011-04-26  Ryosuke Niwa  <rniwa@webkit.org>
3569
3570         Reviewed by Dan Bernstein.
3571
3572         [RTL] Arabic/AB - after typing a date, cursors doesn't go back
3573         https://bugs.webkit.org/show_bug.cgi?id=49111
3574
3575         Even when the offset corresponds to a position visually left of the box
3576         and there aren't any inline boxes on the left, the previous/next position
3577         may still correspond to some position in the same line.
3578
3579         The bug was caused by our ignoring such cases. Fixed the bug by comparing
3580         previous/next position's inline box to the current box. If they match,
3581         then we stay on the same position because moving to the left visually at
3582         the left edge should not result in a position on the same line.
3583
3584         Also fixed a bug that WebKit uses offsets that are not extrema when moved to
3585         the left edge or to the right edge, and a bug that WebKit could not move to
3586         the left from 12^3 CBA abc to 123 C^BA abc (there is no offset between 3 and C).
3587
3588         Test cases are added to editing/selection/move-left-right.html
3589
3590         * editing/VisiblePosition.cpp:
3591         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
3592         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
3593
3594 2011-04-26  Gabor Loki  <loki@webkit.org>
3595
3596         Reviewed by Csaba Osztrogonác.
3597
3598         Speeding up SVG filters with multicore (SMP) support
3599         https://bugs.webkit.org/show_bug.cgi?id=43903
3600
3601         Some SVG filters execute a huge number of pixel manipulations, which
3602         cannot be sped up by graphics accelerators, since their algorithm is
3603         too complex. Using the power of Symmetric Multi Processing (SMP) we
3604         can split up a task to smaller (data independent) tasks, which can be
3605         executed independently.
3606
3607         The ParallelJobs framework provides a simple way for distributed
3608         programming. The framework is based on WebKit's threading infrastructure,
3609         Open Multi-Processing's (OpenMP) API, and libdispatch API.
3610
3611         * ForwardingHeaders/wtf/ParallelJobs.h: Added.
3612         * platform/graphics/filters/FETurbulence.cpp:
3613         (WebCore::FETurbulence::PaintingData::PaintingData):
3614         (WebCore::FETurbulence::noise2D):
3615         (WebCore::FETurbulence::calculateTurbulenceValueForPoint):
3616         (WebCore::FETurbulence::fillRegion):
3617         (WebCore::FETurbulence::fillRegionWorker):
3618         (WebCore::FETurbulence::apply):
3619         * platform/graphics/filters/FETurbulence.h:
3620
3621 2011-04-26  Pavel Feldman  <pfeldman@google.com>
3622
3623         Reviewed by Yury Semikhatsky.
3624
3625         Web Inspector: close button is off in docked mode on a mac.
3626         https://bugs.webkit.org/show_bug.cgi?id=59453
3627
3628         * inspector/front-end/inspector.css:
3629         (.toolbar-item.close-left):
3630
3631 2011-04-26  Pavel Feldman  <pfeldman@google.com>
3632
3633         Reviewed by Yury Semikhatsky.
3634
3635         Web Inspector: New Style is not working (UI glitch)
3636         https://bugs.webkit.org/show_bug.cgi?id=59451
3637
3638         * inspector/InspectorDOMStorageAgent.cpp:
3639         (WebCore::InspectorDOMStorageAgent::setFrontend):
3640         * inspector/front-end/AuditRules.js:
3641         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.getStyles):
3642         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.externalStylesheetsReceived):
3643         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.inlineStylesReceived):
3644         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.cssBeforeInlineReceived):
3645         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.lateStylesReceived):
3646         * inspector/front-end/CSSStyleModel.js:
3647         (WebInspector.CSSStyleModel.prototype.setRuleSelector):
3648         (WebInspector.CSSStyleModel.prototype.setRuleSelector.callback):
3649         (WebInspector.CSSStyleModel.prototype.addRule):
3650         (WebInspector.CSSStyleModel.prototype.addRule.callback):
3651         (WebInspector.CSSStyleModel.prototype._documentElementId):
3652         * inspector/front-end/DOMAgent.js:
3653         (WebInspector.DOMNode.prototype._addAttribute):
3654         (WebInspector.DOMNode.prototype.documentElement):
3655         * inspector/front-end/ResourceTreeModel.js:
3656         (WebInspector.PageDispatcher.prototype.frameDetached):
3657         * inspector/front-end/StylesSidebarPane.js:
3658         (WebInspector.StylesSidebarPane.prototype._createNewRule):
3659
3660 2011-04-26  Pavel Feldman  <pfeldman@google.com>
3661
3662         Reviewed by Yury Semikhatsky.
3663
3664         Web Inspector: introduce DOMStorage::enable and disable.
3665         https://bugs.webkit.org/show_bug.cgi?id=59445
3666
3667         * inspector/Inspector.json:
3668         * inspector/InspectorAgent.cpp:
3669         (WebCore::InspectorAgent::InspectorAgent):
3670         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
3671         * inspector/InspectorDOMStorageAgent.cpp:
3672         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
3673         (WebCore::InspectorDOMStorageAgent::restore):
3674         (WebCore::InspectorDOMStorageAgent::enable):
3675         (WebCore::InspectorDOMStorageAgent::disable):
3676         * inspector/InspectorDOMStorageAgent.h:
3677         (WebCore::InspectorDOMStorageAgent::create):
3678         * inspector/front-end/DOMStorage.js:
3679         (WebInspector.DOMStorageDispatcher.prototype.addDOMStorage):
3680         * inspector/front-end/ResourcesPanel.js:
3681         (WebInspector.ResourcesPanel.prototype._reset):
3682         * inspector/front-end/inspector.js:
3683
3684 2011-04-26  Pavel Feldman  <pfeldman@google.com>
3685
3686         Reviewed by Yury Semikhatsky.
3687
3688         Web Inspector: extract Page agent dispatcher into the ResourceTreeModel.
3689         https://bugs.webkit.org/show_bug.cgi?id=59440
3690
3691         * inspector/Inspector.json:
3692         * inspector/InspectorAgent.cpp:
3693         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
3694         * inspector/InspectorPageAgent.cpp:
3695         (WebCore::InspectorPageAgent::setFrontend):
3696         (WebCore::InspectorPageAgent::frameNavigated):
3697         * inspector/InspectorPageAgent.h:
3698         * inspector/front-end/AuditsPanel.js:
3699         (WebInspector.AuditsPanel):
3700         (WebInspector.AuditsPanel.prototype._onLoadEventFired):
3701         (WebInspector.AuditsPanel.prototype._domContentLoadedEventFired):
3702         * inspector/front-end/CSSStyleModel.js:
3703         (WebInspector.CSSStyleModelResourceBinding):
3704         (WebInspector.CSSStyleModelResourceBinding.prototype._inspectedURLChanged):
3705         * inspector/front-end/DOMBreakpointsSidebarPane.js:
3706         (WebInspector.DOMBreakpointsSidebarPane):
3707         (WebInspector.DOMBreakpointsSidebarPane.prototype._inspectedURLChanged):
3708         * inspector/front-end/DOMStorage.js:
3709         (WebInspector.DOMStorageDispatcher.prototype.addDOMStorage):
3710         * inspector/front-end/ExtensionServer.js:
3711         (WebInspector.ExtensionServer.prototype._inspectedURLChanged):
3712         (WebInspector.ExtensionServer.prototype.initExtensions):
3713         * inspector/front-end/NetworkPanel.js:
3714         (WebInspector.NetworkPanel):
3715         (WebInspector.NetworkPanel.prototype._onLoadEventFired):
3716         (WebInspector.NetworkPanel.prototype._domContentLoadedEventFired):
3717         (WebInspector.NetworkPanel.prototype._frameNavigated):
3718         * inspector/front-end/ResourceTreeModel.js:
3719         (WebInspector.ResourceTreeModel):
3720         (WebInspector.ResourceTreeModel.prototype._processCachedResources):
3721         (WebInspector.ResourceTreeModel.prototype._dispatchInspectedURLChanged):
3722         (WebInspector.ResourceTreeModel.prototype._frameNavigated):
3723         (WebInspector.ResourceTreeModel.prototype._frameDetached):
3724         (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
3725         (WebInspector.PageDispatcher):
3726         (WebInspector.PageDispatcher.prototype.domContentEventFired):
3727         (WebInspector.PageDispatcher.prototype.loadEventFired):
3728         (WebInspector.PageDispatcher.prototype.frameNavigated):
3729         (WebInspector.PageDispatcher.prototype.frameDetached):
3730         * inspector/front-end/ResourcesPanel.js:
3731         (WebInspector.ResourcesPanel):
3732         (WebInspector.ResourcesPanel.prototype._onLoadEventFired):
3733         (WebInspector.ResourcesPanel.prototype._frameNavigated):
3734         * inspector/front-end/inspector.js:
3735
3736 2011-04-26  Csaba Osztrogonác  <ossy@webkit.org>
3737
3738         Unreviewed rollout r84877 and StyleRareInheritedData.cpp changes of r84892,
3739         because it broke transitions/multiple-text-shadow-transition.html
3740
3741         Fix OwnPtr strict errors in RenderStyle and make StyleRareInheritedData::textShadow an OwnPtr
3742         https://bugs.webkit.org/show_bug.cgi?id=59377
3743
3744         * css/CSSStyleSelector.cpp:
3745         (WebCore::CSSStyleSelector::applyProperty):
3746         * page/animation/AnimationBase.cpp:
3747         (WebCore::PropertyWrapperShadow::PropertyWrapperShadow):
3748         (WebCore::PropertyWrapperShadow::blend):
3749         * rendering/style/RenderStyle.cpp:
3750         (WebCore::RenderStyle::setTextShadow):
3751         (WebCore::RenderStyle::setBoxShadow):
3752         * rendering/style/RenderStyle.h:
3753         (WebCore::InheritedFlags::textShadow):
3754         * rendering/style/StyleRareInheritedData.cpp:
3755         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
3756         (WebCore::StyleRareInheritedData::~StyleRareInheritedData):
3757         * rendering/style/StyleRareInheritedData.h:
3758         * rendering/style/StyleRareNonInheritedData.cpp:
3759         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
3760
3761 2011-04-26  Mihai Parparita  <mihaip@chromium.org>
3762
3763         Reviewed by Adam Barth.
3764
3765         Turn off make built-in implicit rules for derived sources makefile
3766         https://bugs.webkit.org/show_bug.cgi?id=59418
3767
3768         We don't use any of make's built-in implicit rules, turning them off
3769         speeds up parsing of the makefile.
3770
3771         * WebCore.xcodeproj/project.pbxproj:
3772         * gyp/generate-derived-sources.sh:
3773
3774 2011-04-26  Leo Yang  <leo.yang@torchmobile.com.cn>
3775
3776         Reviewed by Nikolas Zimmermann.
3777
3778         ASSERT failure in SVGUseElement
3779         https://bugs.webkit.org/show_bug.cgi?id=59313
3780
3781         In SVGUseElement::insertedIntoDocument(), ASSERT(!m_isPendingResource)
3782         was wrong because the document may not be well-formed.
3783
3784         This patch asserts the element is not pending on resource or the
3785         document is not well-formed.
3786
3787         Test: svg/custom/use-crash-in-non-wellformed-document.svg
3788
3789         * svg/SVGUseElement.cpp:
3790         (WebCore::isWellFormedDocument):
3791         (WebCore::SVGUseElement::insertedIntoDocument):
3792
3793 2011-04-26  Mikhail Naganov  <mnaganov@chromium.org>
3794
3795         Reviewed by Pavel Feldman.
3796
3797         Web Inspector: [Chromium] Fix columns resizing in the detailed heap snapshot grids.
3798         https://bugs.webkit.org/show_bug.cgi?id=59438
3799
3800         * inspector/front-end/DetailedHeapshotView.js:
3801         (WebInspector.DetailedHeapshotView.prototype._changeView):
3802
3803 2011-04-26  David Levin  <levin@chromium.org>
3804
3805         Reviewed by Adam Barth.
3806
3807         Fix a few OwnPtr strict errors in WebCore headers.
3808         https://bugs.webkit.org/show_bug.cgi?id=59431
3809
3810         * bindings/js/ScheduledAction.cpp:
3811         (WebCore::ScheduledAction::create):
3812         * css/MediaQueryMatcher.cpp:
3813         (WebCore::MediaQueryMatcher::prepareEvaluator):
3814         * dom/NodeRareData.h:
3815         (WebCore::NodeListsNodeData::create):
3816         * dom/ScriptRunner.h:
3817         (WebCore::ScriptRunner::create):
3818         * inspector/WorkerInspectorController.cpp:
3819         (WebCore::WorkerInspectorController::connectFrontend):
3820         * loader/icon/IconDatabase.h:
3821         (WebCore::IconDatabase::create):
3822         * platform/graphics/SimpleFontData.cpp:
3823         (WebCore::SimpleFontData::verticalRightOrientationFontData):
3824         (WebCore::SimpleFontData::uprightOrientationFontData):
3825         (WebCore::SimpleFontData::brokenIdeographFontData):
3826         * rendering/style/StyleRareInheritedData.cpp:
3827         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
3828         * rendering/svg/SVGResources.h:
3829         (WebCore::SVGResources::ClipperFilterMaskerData::create):
3830         (WebCore::SVGResources::MarkerData::create):
3831         (WebCore::SVGResources::FillStrokeData::create):
3832         * storage/StorageSyncManager.cpp:
3833         (WebCore::StorageSyncManager::close):
3834         * workers/WorkerContext.cpp:
3835         (WebCore::CloseWorkerContextTask::create):
3836         * workers/WorkerMessagingProxy.cpp:
3837         (WebCore::MessageWorkerContextTask::create):
3838         (WebCore::MessageWorkerTask::create):
3839         (WebCore::WorkerExceptionTask::create):
3840         (WebCore::WorkerContextDestroyedTask::create):
3841         (WebCore::WorkerTerminateTask::create):
3842         (WebCore::WorkerThreadActivityReportTask::create):
3843         * workers/WorkerRunLoop.cpp:
3844         (WebCore::WorkerRunLoop::Task::create):
3845         * workers/WorkerThread.cpp:
3846         (WebCore::WorkerThreadStartupData::create):
3847         (WebCore::WorkerThreadShutdownFinishTask::create):
3848         (WebCore::WorkerThreadShutdownStartTask::create):
3849
3850 2011-04-26  Adam Klein  <adamk@chromium.org>
3851
3852         Reviewed by Adam Barth.
3853
3854         Fix last strict OwnPtr violation under svg/...
3855         https://bugs.webkit.org/show_bug.cgi?id=59429
3856
3857         * svg/SVGDocumentExtensions.cpp:
3858         (WebCore::SVGDocumentExtensions::removePendingResource):
3859
3860 2011-04-26  Adam Barth  <abarth@webkit.org>
3861
3862         Reviewed by David Levin.
3863
3864         Fix more strict OwnPtr violations in WebCore
3865         https://bugs.webkit.org/show_bug.cgi?id=59433
3866
3867         These manifest in the Chromium build.
3868
3869         * bindings/v8/ScriptController.cpp:
3870         (WebCore::ScriptController::ScriptController):
3871         * bindings/v8/ScriptDebugServer.cpp:
3872         (WebCore::ScriptDebugServer::editScriptSource):
3873         * bindings/v8/V8DOMMap.cpp:
3874         (WebCore::DOMDataStoreHandle::DOMDataStoreHandle):
3875         * bindings/v8/V8Proxy.cpp:
3876         (WebCore::V8Proxy::precompileScript):
3877         * bindings/v8/WorkerScriptController.cpp:
3878         (WebCore::WorkerScriptController::WorkerScriptController):
3879         * page/Page.cpp:
3880         (WebCore::Page::Page):
3881         (WebCore::Page::speechInput):
3882         * platform/PlatformGestureRecognizer.cpp:
3883         (WebCore::PlatformGestureRecognizer::create):
3884         * platform/PlatformGestureRecognizer.h:
3885         * platform/graphics/chromium/DrawingBufferChromium.cpp:
3886         (WebCore::DrawingBuffer::DrawingBuffer):
3887         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
3888         (WebCore::CCLayerImpl::CCLayerImpl):
3889         * platform/graphics/gpu/Texture.cpp:
3890         (WebCore::Texture::create):
3891         * platform/image-decoders/bmp/BMPImageDecoder.cpp:
3892         (WebCore::BMPImageDecoder::decodeHelper):
3893         * platform/image-decoders/gif/GIFImageDecoder.cpp:
3894         (WebCore::GIFImageDecoder::decode):
3895         * platform/image-decoders/ico/ICOImageDecoder.cpp:
3896         (WebCore::ICOImageDecoder::decodeAtIndex):
3897         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
3898         (WebCore::JPEGImageDecoder::decode):
3899         * platform/image-decoders/png/PNGImageDecoder.cpp:
3900         (WebCore::PNGImageDecoder::decode):
3901         * storage/chromium/DatabaseTrackerChromium.cpp:
3902         (WebCore::DatabaseTracker::addOpenDatabase):
3903
3904 2011-04-25  David Levin  <levin@chromium.org>
3905
3906         Reviewed by Adam Barth.
3907
3908         Fix OwnPtr strict errors in CrossThreadTask.h
3909         https://bugs.webkit.org/show_bug.cgi?id=59427
3910
3911         * dom/CrossThreadTask.h:
3912         (WebCore::CrossThreadTask1::create):
3913         (WebCore::CrossThreadTask2::create):
3914         (WebCore::CrossThreadTask3::create):
3915         (WebCore::CrossThreadTask4::create):
3916         (WebCore::CrossThreadTask5::create):
3917         (WebCore::CrossThreadTask6::create):
3918         (WebCore::CrossThreadTask7::create):
3919         (WebCore::CrossThreadTask8::create):
3920
3921 2011-04-25  Mark Rowe  <mrowe@apple.com>
3922
3923         Reviewed by Dan Bernstein.
3924
3925         <rdar://problem/9330337> Leak of 'WebCore::ApplyPropertyFillLayer<WebCore::FillSize>'
3926
3927         * css/CSSStyleApplyProperty.cpp:
3928         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty): Don't initialize CSSPropertyWebkitMaskSize twice.
3929         * css/CSSStyleApplyProperty.h:
3930         (WebCore::CSSStyleApplyProperty::setPropertyValue): Add some asserts to catch this class of leak.
3931
3932 2011-04-25  Levi Weintraub  <leviw@chromium.org>
3933
3934         Reviewed by Ryosuke Niwa.
3935
3936         REGRESSION: a character appears after tab span when typing immediately before the tab span
3937         https://bugs.webkit.org/show_bug.cgi?id=58132
3938
3939         Correcting the order of operations we use to avoid inserting into invalid positions in
3940         ReplaceSelectionCommand to avoid inserting into tab-spans.
3941
3942         Test: editing/pasteboard/paste-before-tab-span.html
3943
3944         * editing/ReplaceSelectionCommand.cpp:
3945         (WebCore::ReplaceSelectionCommand::doApply): Moving positionOutsideTabSpan to after
3946         positionAvoidingPrecedingNodes, since that function could once again put our position
3947         inside a tab span.
3948
3949 2011-04-25  David Levin  <levin@chromium.org>
3950
3951         Reviewed by Adam Barth.
3952
3953         Fix OwnPtr strict error in ImageBuffer.h
3954         https://bugs.webkit.org/show_bug.cgi?id=59422
3955
3956         * platform/graphics/ImageBuffer.h:
3957         (WebCore::ImageBuffer::create):
3958
3959 2011-04-25  Adam Barth  <abarth@webkit.org>
3960
3961         Reviewed by David Levin.
3962
3963         Fix strict OwnPtr violations and whitelist known-tricky files
3964         https://bugs.webkit.org/show_bug.cgi?id=59421
3965
3966         With this patch, WebCore builds cleanly with strict OwnPtrs.
3967
3968         * dom/MessagePort.cpp:
3969         (WebCore::MessagePort::MessagePort):
3970         * dom/XMLDocumentParserLibxml2.cpp:
3971         * page/ContextMenuController.cpp:
3972         (WebCore::ContextMenuController::ContextMenuController):
3973         (WebCore::ContextMenuController::clearContextMenu):
3974         * page/PluginHalter.cpp:
3975         * platform/graphics/MediaPlayer.cpp:
3976         * platform/network/ResourceRequestBase.cpp:
3977         (WebCore::ResourceRequestBase::adopt):
3978         (WebCore::ResourceRequestBase::copyData):
3979         * svg/SVGDocumentExtensions.cpp:
3980
3981 2011-04-25  David Levin  <levin@chromium.org>
3982
3983         Reviewed by Adam Barth.
3984
3985         Fix OwnPtr strict errors in DatasetDOMStringMap.h.
3986         https://bugs.webkit.org/show_bug.cgi?id=59419
3987
3988         * dom/DatasetDOMStringMap.h:
3989         (WebCore::DatasetDOMStringMap::create):
3990
3991 2011-04-25  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
3992
3993         Reviewed by Eric Seidel.
3994
3995         KeyboardEvent.cpp should work with strict OwnPtrs.
3996         https://bugs.webkit.org/show_bug.cgi?id=59403
3997
3998         * dom/KeyboardEvent.cpp:
3999         (WebCore::KeyboardEvent::KeyboardEvent):
4000
4001 2011-04-25  James Robinson  <jamesr@chromium.org>
4002
4003         Reviewed by Eric Seidel.
4004
4005         Fix OwnPtr strict errors in RenderStyle and make StyleRareInheritedData::textShadow an OwnPtr
4006         https://bugs.webkit.org/show_bug.cgi?id=59377
4007
4008         * css/CSSStyleSelector.cpp:
4009         (WebCore::CSSStyleSelector::applyProperty):
4010         * page/animation/AnimationBase.cpp:
4011         (WebCore::PropertyWrapperShadow::PropertyWrapperShadow):
4012         (WebCore::PropertyWrapperShadow::blend):
4013         * rendering/style/RenderStyle.cpp:
4014         (WebCore::RenderStyle::setTextShadow):
4015         (WebCore::RenderStyle::setBoxShadow):
4016         * rendering/style/RenderStyle.h:
4017         (WebCore::InheritedFlags::textShadow):
4018         * rendering/style/StyleRareInheritedData.cpp:
4019         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
4020         (WebCore::StyleRareInheritedData::~StyleRareInheritedData):
4021         * rendering/style/StyleRareInheritedData.h:
4022         * rendering/style/StyleRareNonInheritedData.cpp:
4023         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
4024
4025 2011-04-25  Sheriff Bot  <webkit.review.bot@gmail.com>
4026
4027         Unreviewed, rolling out r84864.
4028         http://trac.webkit.org/changeset/84864
4029         https://bugs.webkit.org/show_bug.cgi?id=59413
4030
4031         Expect result of use-crash-in-non-wellformed-document.svg is
4032         platform dependent (Requested by leoyang on #webkit).
4033
4034         * svg/SVGUseElement.cpp:
4035         (WebCore::SVGUseElement::insertedIntoDocument):
4036
4037 2011-04-25  Leo Yang  <leo.yang@torchmobile.com.cn>
4038
4039         Reviewed by Nikolas Zimmermann.
4040
4041         ASSERT failure in SVGUseElement
4042         https://bugs.webkit.org/show_bug.cgi?id=59313
4043
4044         In SVGUseElement::insertedIntoDocument(), ASSERT(!m_isPendingResource)
4045         was wrong because the document may not be well-formed.
4046
4047         This patch asserts the element is not pending on resource or the
4048         document is not well-formed.
4049
4050         Test: svg/custom/use-crash-in-non-wellformed-document.svg
4051
4052         * svg/SVGUseElement.cpp:
4053         (WebCore::isWellFormedDocument):
4054         (WebCore::SVGUseElement::insertedIntoDocument):
4055
4056 2011-04-25  Igor Oliveira  <igor.oliveira@openbossa.org>
4057
4058         Reviewed by Tony Chang.
4059
4060         Move complexity from DataTransferItemsChromium and DataTransferItemChromium for base class
4061         https://bugs.webkit.org/show_bug.cgi?id=59028
4062
4063         The DataTransferItemsChromium and DataTransferItemChromium code can be reused by other platforms.
4064         Moving the code for base class we can reduce the efforts to support DataTransferItems
4065         element in different platforms.
4066
4067         * Android.mk:
4068         * CMakeLists.txt:
4069         * GNUmakefile.list.am:
4070         * WebCore.gypi:
4071         * WebCore.pro:
4072         * WebCore.vcproj/WebCore.vcproj:
4073         * WebCore.xcodeproj/project.pbxproj:
4074         * dom/DataTransferItem.cpp:
4075         (WebCore::DataTransferItem::DataTransferItem):
4076         (WebCore::DataTransferItem::owner):
4077         (WebCore::DataTransferItem::kind):
4078         (WebCore::DataTransferItem::type):
4079         * dom/DataTransferItem.h:
4080         * dom/DataTransferItems.cpp: Copied from Source/WebCore/platform/chromium/DataTransferItemsChromium.cpp.
4081         (WebCore::DataTransferItems::DataTransferItems):
4082         (WebCore::DataTransferItems::length):
4083         (WebCore::DataTransferItems::item):
4084         (WebCore::DataTransferItems::deleteItem):
4085         (WebCore::DataTransferItems::clear):
4086         (WebCore::DataTransferItems::add):