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