9178dc41dbb90d6258f6742124dc3028a3f55da7
[WebKit.git] / WebCore / ChangeLog
1 2010-12-31  Patrick Gansterer  <paroga@webkit.org>
2
3         Reviewed by Adam Barth.
4
5         Add XML parser benchmark
6         https://bugs.webkit.org/show_bug.cgi?id=51612
7
8         Move the JavaScript code of html parser into a separate file to share it with xml parser.
9
10         * benchmarks/parser/html-parser.html:
11         * benchmarks/parser/resources/runner.js: Copied from WebCore/benchmarks/parser/html-parser.html.
12         (runFunction):
13         (run):
14         (start):
15         * benchmarks/parser/xml-parser.html: Copied from WebCore/benchmarks/parser/html-parser.html.
16
17 2010-12-29  Zhenyao Mo  <zmo@google.com>
18
19         Reviewed by Kenneth Russell.
20
21         Update validation of stencil mask and ref values
22         https://bugs.webkit.org/show_bug.cgi?id=50716
23
24         * html/canvas/WebGLRenderingContext.cpp:
25         (WebCore::WebGLRenderingContext::initializeNewContext): Initialize cached stencil settings.
26         (WebCore::WebGLRenderingContext::drawArrays): Validate stencil settings.
27         (WebCore::WebGLRenderingContext::drawElements): Ditto.
28         (WebCore::WebGLRenderingContext::stencilFunc): Cache stencil settings, but generate no error.
29         (WebCore::WebGLRenderingContext::stencilFuncSeparate): Ditto.
30         (WebCore::WebGLRenderingContext::stencilMask): Ditto.
31         (WebCore::WebGLRenderingContext::stencilMaskSeparate): Ditto.
32         (WebCore::WebGLRenderingContext::validateStencilSettings): Helper function to validate stencil settings.
33         * html/canvas/WebGLRenderingContext.h: Declare stencil setting members.
34
35 2010-12-30  Martin Robinson  <mrobinson@igalia.com>
36
37         Reviewed by Xan Lopez.
38
39         [GTK] Fork pieces of RenderThemeGtk that will differ for GTK+ 3
40         https://bugs.webkit.org/show_bug.cgi?id=51755
41
42         Split out pieces of RenderThemeGtk into RenderThemeGtk2 and RenderThemeGtk3
43         if they are going to differ between GTK+ 2.x and GTK+ 3.x. This is the preliminary
44         step to landing support for the new GTK+ 3.x theming API.
45
46         No new tests. This should not change functionality.
47
48         * GNUmakefile.am: Add RenderThemeGtk2 and RenderThemeGtk3 to the sources list.
49         * platform/gtk/RenderThemeGtk.cpp:
50         (WebCore::RenderThemeGtk::adjustTextFieldStyle): Call the setTextInputBorders static method.
51         (WebCore::RenderThemeGtk::adjustTextAreaStyle): Ditto.
52         (WebCore::RenderThemeGtk::paintMediaButton): Ditto.
53         (WebCore::RenderThemeGtk::adjustProgressBarStyle): ditto.
54         * platform/gtk/RenderThemeGtk.h: Make setTextInputBorders a method, so that
55         it can be exist in RenderThemeGtk{2,3} and be called from RenderThemeGtk.
56         * platform/gtk/RenderThemeGtk2.cpp: Added. A fork of the bits of RenderThemeGtk
57         that will eventually be platform-dependent.
58         * platform/gtk/RenderThemeGtk3.cpp: Added. Ditto.
59
60 2010-12-30  Justin Schuh  <jschuh@chromium.org>
61
62         Reviewed by James Robinson.
63
64         Reverting r74292 because it introduced a crash with ruby text.
65         https://bugs.webkit.org/show_bug.cgi?id=51637
66
67         Test: fast/css/counters/counter-ruby-text-cleared.html
68
69         * rendering/RenderCounter.cpp:
70         (WebCore::findPlaceForCounter):
71         * rendering/RenderObject.cpp:
72         (WebCore::RenderObject::addChild):
73         * rendering/RenderObjectChildList.cpp:
74         (WebCore::RenderObjectChildList::appendChildNode):
75         (WebCore::RenderObjectChildList::insertChildNode):
76
77 2010-12-30  Darin Adler  <darin@apple.com>
78
79         Reviewed by David Kilzer.
80
81         Remove unused JSBinding source files
82         https://bugs.webkit.org/show_bug.cgi?id=51762
83
84         * bindings/js/JSBinding.h: Removed.
85         * bindings/js/specialization: Removed.
86         * bindings/js/specialization/JSBindingState.cpp: Removed.
87         * bindings/js/specialization/JSBindingState.h: Removed.
88
89         * CMakeLists.txt: Removed references to files.
90         * GNUmakefile.am: Ditto.
91         * WebCore.gypi: Ditto.
92         * WebCore.pro: Ditto.
93         * WebCore.vcproj/WebCore.vcproj: Ditto.
94         * bindings/js/JSBindingsAllInOne.cpp: Ditto.
95
96 2010-12-30  Tony Gentilcore  <tonyg@chromium.org>
97
98         Reviewed by Darin Adler.
99
100         Remove Document.h include from some headers where it isn't necessary
101         https://bugs.webkit.org/show_bug.cgi?id=51730
102
103         No new tests because no new functionality.
104
105         * editing/EditingStyle.cpp:
106         * editing/EditingStyle.h:
107         * editing/SelectionController.h:
108         * editing/visible_units.h:
109         * html/HTMLAudioElement.h:
110         * html/HTMLBodyElement.h:
111         * inspector/InspectorCSSAgent.h:
112         * inspector/InspectorDOMAgent.h:
113         * inspector/InspectorInstrumentation.h:
114         * xml/DOMParser.cpp:
115         * xml/DOMParser.h:
116         (WebCore::DOMParser::create):
117         (WebCore::DOMParser::DOMParser):
118
119 2010-12-30  Benjamin C Meyer  <bmeyer@rim.com>
120
121         Reviewed by Darin Adler.
122
123         bindings/js/JSDesktopNotificationsCustom.cpp is not included in the cmake build
124         which is required when NOTIFICATIONS is enabled.
125
126         https://bugs.webkit.org/show_bug.cgi?id=51761
127
128         * CMakeLists.txt:
129
130 2010-12-30  Antti Koivisto  <antti@apple.com>
131
132         Not reviewed.
133
134         Revert accidental project file change.
135
136         * WebCore.xcodeproj/project.pbxproj:
137
138 2010-12-30  Antti Koivisto  <antti@apple.com>
139
140         Reviewed by Darin Adler.
141
142         https://bugs.webkit.org/show_bug.cgi?id=51134
143         Move loading related code from MemoryCache to CachedResourceLoader
144
145         - Merge MemoryCache::requestResource to CachedResourceLoader::requestResource
146         - Merge MemoryCache::requestUserCSSStyleSheet to CachedResourceLoader::requestUserCSSStyleSheet
147         - Move MemoryCache::revalidateResource to CachedResourceLoader::revalidateResource
148         - Add MemoryCache::add
149         - Refactor the decision on whether to reload, revalidate or use the existing resource to 
150           a single function, CachedResourceLoader::determineRevalidationPolicy
151
152         * css/CSSImageValue.cpp:
153         (WebCore::CSSImageValue::cachedImage):
154             
155             Remove a code path that called MemoryCache::requestResource directly. This code path would have crashed
156             if ever taken (since it passes null CachedResourceLoader pointer).
157             
158         * loader/ImageLoader.cpp:
159         (WebCore::ImageLoader::updateFromElement):
160         * loader/cache/CachedImage.cpp:
161         * loader/cache/CachedResource.cpp:
162         (WebCore::CachedResource::CachedResource):
163         (WebCore::CachedResource::~CachedResource):
164         (WebCore::CachedResource::mustRevalidateDueToCacheHeaders):
165         
166             Moved tests that were not about cache headers to CachedResourceLoader::determineRevalidationPolicy and renamed.
167         
168         (WebCore::CachedResource::setLoadPriority):
169         
170             Check for Unresolved value before setting.
171         
172         * loader/cache/CachedResource.h:
173         (WebCore::CachedResource::setOwningCachedResourceLoader):
174         
175             Rename to be bit less mysterious.
176         
177         * loader/cache/CachedResourceLoader.cpp:
178         (WebCore::createResource):
179         
180             This was moved from MemoryCache.
181         
182         (WebCore::CachedResourceLoader::~CachedResourceLoader):
183         (WebCore::CachedResourceLoader::determineRevalidationPolicy):
184         (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
185         
186             This was moved/merged from MemoryCache.
187         
188         (WebCore::CachedResourceLoader::canRequest):
189         (WebCore::CachedResourceLoader::requestResource):
190         
191             This combines MemoryCache::requestResource and the existing method.
192         
193         (WebCore::CachedResourceLoader::revalidateResource):
194         
195             This was moved from MemoryCache.
196         
197         (WebCore::CachedResourceLoader::loadResource):
198         
199             New method for initiating loading.
200         
201         (WebCore::CachedResourceLoader::notifyLoadedFromMemoryCache):
202         
203             Renamed the mysterious CachedResourceLoader::checkCacheObjectStatus
204         
205         * loader/cache/CachedResourceLoader.h:
206         * loader/cache/MemoryCache.cpp:
207         (WebCore::MemoryCache::add):
208         * loader/cache/MemoryCache.h:
209         (WebCore::MemoryCache::remove):
210
211 2010-12-30  Steve Block  <steveblock@google.com>
212
213         Reviewed by Gavin Barraclough.
214
215         Enable JSC Rich Source Info for Android even when Inspector and Debugger are disabled
216         https://bugs.webkit.org/show_bug.cgi?id=51740
217
218         This is a policy decision for Android.
219
220         No new tests, simply enabling existing, tested code on Android.
221
222         * bindings/js/JSDOMWindowBase.cpp:
223         (WebCore::JSDOMWindowBase::supportsRichSourceInfo):
224
225 2010-12-30  Yael Aharon  <yael.aharon@nokia.com>
226
227         Reviewed by Adam Barth.
228
229         REGRESSION: fast/dom/cssTarget-crash.html fails
230         https://bugs.webkit.org/show_bug.cgi?id=20342
231
232         Do not reload the page when submitting a form, using "GET" method, and the
233         form action url matches the location url, except for the fragment.
234       
235         Test: fast/forms/submit-change-fragment.html
236
237         * loader/FrameLoader.cpp:
238         (WebCore::FrameLoader::loadURL):
239         (WebCore::FrameLoader::loadWithDocumentLoader):
240         (WebCore::FrameLoader::shouldScrollToAnchor):
241         * loader/FrameLoader.h:
242
243 2010-12-30  Darin Adler  <darin@apple.com>
244
245         Reviewed by Adam Barth.
246
247         Move security logic out of the JavaScript binding for location into the DOM class
248         https://bugs.webkit.org/show_bug.cgi?id=51714
249
250         * WebCore.xcodeproj/project.pbxproj: Removed JSBindingState.cpp, JSBindingState.h,
251         and JSBinding.h. Later, we'll remove them from other project files and delete
252         the source files.
253
254         * bindings/js/JSBinding.h: Emptied out, marked for later deletion.
255
256         * bindings/js/JSDOMBinding.cpp: Removed unused overload of the jsOwnedStringOrNull
257         function, unused shouldAllowNavigation function, unused allowSettingSrcToJavascriptURL
258         function, unused toLexicalFrame function, unused completeURL function, unused
259         getCachedDOMStructure and cacheDOMStructure overloads, and unused
260         getCachedDOMConstructor and cacheDOMConstruction functions.
261         (WebCore::activeDOMWindow): Added.
262         (WebCore::firstDOMWindow): Added.
263         (WebCore::toDynamicFrame): Changed to use firstDOMWindow instead of calling through
264         JSBindingState, since the latter is an unneeded abstraction.
265         (WebCore::processingUserGesture): Changed to call ScriptController's function
266         rather than calling through JSBindingState, which is an unneeded abstraction
267
268         * bindings/js/JSDOMBinding.h: Removed the functions mentioned above. Added
269         activeDOMWindow and firstDOMWindow. Also added a FIXME for the extremely poorly
270         named allowsAccessFromFrame functions, which answer the question of whether
271         script is allowed access *to* a frame.
272
273         * bindings/js/JSDOMWindowCustom.cpp: Removed many unneeded includes.
274         (WebCore::JSDOMWindow::setLocation): Streamlined by using the new
275         activeDOMWindow and firstDOMWindow functions.
276         (WebCore::JSDOMWindow::open): Ditto.
277         (WebCore::JSDOMWindow::showModalDialog): Ditto.
278         (WebCore::JSDOMWindow::postMessage): Ditto.
279
280         * bindings/js/JSLocationCustom.cpp:
281         (WebCore::JSLocation::setHref): Changed to pass the active and first windows through
282         to the Location::setHref function, with it doing the rest of the work. This moves
283         work out of the DOM binding that belongs in the DOM itself. Eventually such functions
284         could even be automatically generated by the bindings script.
285         (WebCore::JSLocation::setProtocol): Ditto.
286         (WebCore::JSLocation::setHost): Ditto.
287         (WebCore::JSLocation::setHostname): Ditto.
288         (WebCore::JSLocation::setPort): Ditto.
289         (WebCore::JSLocation::setPathname): Ditto.
290         (WebCore::JSLocation::setSearch): Ditto.
291         (WebCore::JSLocation::setHash): Ditto.
292         (WebCore::JSLocation::replace): Ditto.
293         (WebCore::JSLocation::reload): Ditto.
294         (WebCore::JSLocation::assign): Ditto.
295
296         * bindings/js/specialization/JSBindingState.cpp: Emptied out, marked for later deletion.
297         * bindings/js/specialization/JSBindingState.h: Emptied out, marked for later deletion.
298
299         * page/DOMWindow.cpp:
300         (WebCore::DOMWindow::setLocation): Added a SetLocationLocking argument that allows us
301         to use this function for Location::replace, which is the same as setLocation except that
302         it locks both history and the back/forward list.
303         * page/DOMWindow.h: Ditto.
304
305         * page/Location.cpp:
306         (WebCore::Location::setHref): Added. Uses DOMWindow::setLocation so that the security
307         logic there does not have to be repeated or even refactored.
308         (WebCore::Location::setProtocol): Ditto.
309         (WebCore::Location::setHost): Ditto.
310         (WebCore::Location::setHostname): Ditto.
311         (WebCore::Location::setPort): Ditto.
312         (WebCore::Location::setPathname): Ditto.
313         (WebCore::Location::setSearch): Ditto.
314         (WebCore::Location::setHash): Ditto.
315         (WebCore::Location::assign): Ditto.
316         (WebCore::Location::replace): Ditto.
317         (WebCore::Location::reload): Added. Security logic was refactored from the code in
318         JSLocationCustom.cpp. Added a FIXME about the fact that this security logic seems
319         possibly unneeded.
320
321         * page/Location.h: Fixed indentation on the whole file. Added the new functions above.
322         (WebCore::Location::create):
323         (WebCore::Location::frame):
324
325 2010-12-30  Alexander Pavlov  <apavlov@chromium.org>
326
327         Reviewed by Pavel Feldman.
328
329         Web Inspector: Pasting a style property with value should automatically split it into prop/value
330         https://bugs.webkit.org/show_bug.cgi?id=51581
331
332         The "paste" DOM event is handled for the CSS property name field to parse out the name and value parts
333         of a CSS property being pasted (by the first ':' found). The property is committed (if not a new one),
334         and the edit focus is transferred to the value field.
335
336         * inspector/front-end/StylesSidebarPane.js:
337         (WebInspector.StylePropertyTreeElement.prototype.selectElement):
338         (WebInspector.StylePropertyTreeElement.prototype):
339         * inspector/front-end/inspector.js:
340         (WebInspector.completeURL): Drive-by: return full URLs as-is.
341         (WebInspector.startEditing.cleanUpAfterEditing):
342         (WebInspector.startEditing):
343         (WebInspector.startEditing.pasteEventListener):
344         (WebInspector.startEditing.keyDownEventListener):
345
346 2010-12-30  Pavel Podivilov  <podivilov@chromium.org>
347
348         Reviewed by Pavel Feldman.
349
350         Web Inspector: breakpoint is not disabled when clicking on breakpoints sidebar pane checkbox.
351         https://bugs.webkit.org/show_bug.cgi?id=51745
352
353         * inspector/front-end/Breakpoint.js:
354         (WebInspector.Breakpoint.prototype.set enabled):
355
356 2010-12-30  Pavel Podivilov  <podivilov@chromium.org>
357
358         Reviewed by Pavel Feldman.
359
360         Web Inspector: call stack shows "Paused on a JavaScript breakpoint" when stepping.
361         https://bugs.webkit.org/show_bug.cgi?id=51748
362
363         * inspector/front-end/CallStackSidebarPane.js:
364         (WebInspector.CallStackSidebarPane.prototype.update):
365         (WebInspector.CallStackSidebarPane.prototype.registerShortcuts):
366         (WebInspector.CallStackSidebarPane.prototype._scriptBreakpointHit):
367         (WebInspector.CallStackSidebarPane.prototype._nativeBreakpointHit):
368
369 2010-12-30  Mikhail Naganov  <mnaganov@chromium.org>
370
371         Reviewed by Pavel Feldman.
372
373         Fix leak of MemoryInfo wrappers introduced in r57004 (see issue 51712).
374
375         https://bugs.webkit.org/show_bug.cgi?id=51713
376
377         * WebCore.gypi:
378         * WebCore.pro:
379         * bindings/v8/custom/V8ConsoleCustom.cpp:
380         (WebCore::V8Console::memoryAccessorGetter):
381         * bindings/v8/custom/V8PerformanceCustom.cpp: Copied from V8ConsoleCustom.cpp.
382         (WebCore::V8Performance::memoryAccessorGetter):
383         * page/Console.idl:
384         * page/Performance.idl:
385
386 2010-12-30  Steve Block  <steveblock@google.com>
387
388         Reviewed by Sam Weinig.
389
390         Visiting macnn.com often causes SQL spew via geolocation database
391         https://bugs.webkit.org/show_bug.cgi?id=51557
392
393         If the Geolocation position cache database path has not been set, early-out
394         rather than using an empty path and thus failing to open the database.
395         This avoids SQL log spew.
396
397         Also, avoid starting the database thread until the path has been set, and
398         shorten the thread name to avoid warnings due to exceeding 30 characters.
399
400         No new tests, implementation clean-up only.
401
402         * page/GeolocationPositionCache.cpp:
403         (WebCore::GeolocationPositionCache::addUser):
404         (WebCore::GeolocationPositionCache::removeUser):
405         (WebCore::GeolocationPositionCache::setDatabasePath):
406         (WebCore::GeolocationPositionCache::startBackgroundThread):
407
408 2010-12-29  Philippe Normand  <pnormand@igalia.com>
409
410         Reviewed by Martin Robinson.
411
412         [GTK] minimal build fails at link time due to missing sqlite3 symbols
413         https://bugs.webkit.org/show_bug.cgi?id=51327
414
415         Guard the code calling sqlite3 with the ENABLE(DATABASE) check.
416
417         No new tests, build fix only.
418
419         * platform/sql/SQLiteAuthorizer.cpp:
420         * platform/sql/SQLiteDatabase.cpp:
421         * platform/sql/SQLiteFileSystem.cpp:
422         * platform/sql/SQLiteStatement.cpp:
423         * platform/sql/SQLiteTransaction.cpp:
424
425 2010-12-30  Justin Schuh  <jschuh@chromium.org>
426
427         Reviewed by Dirk Schulze.
428
429         Prevent stringToLengthType() from skipping past end-of-string on invalid length unit. 
430         https://bugs.webkit.org/show_bug.cgi?id=51692
431
432         * svg/SVGLength.cpp:
433         (WebCore::stringToLengthType):
434         (WebCore::SVGLength::setValueAsString):
435
436 2010-12-30  Abhishek Arya  <inferno@chromium.org>
437
438         Reviewed by Eric Seidel.
439
440         Create a helper function for finding descendent video elements for a node.
441         https://bugs.webkit.org/show_bug.cgi?id=51696
442
443         Test: media/video-element-other-namespace-crash.html
444
445         * html/MediaDocument.cpp:
446         (WebCore::descendentVideoElement): helper function.
447         (WebCore::MediaDocument::defaultEventHandler): use the new helper function. fix code repetitions.
448         (WebCore::MediaDocument::replaceMediaElementTimerFired): use the new helper function.
449
450 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
451
452         Reviewed by Yury Semikhatsky.
453
454         Web Inspector: extract Database & DOM Storage agents; remove InspectorBackend.
455         https://bugs.webkit.org/show_bug.cgi?id=51707
456
457         This change brushes up storage agents + removes redundant InspectorBackend class.
458
459         * CMakeLists.txt:
460         * GNUmakefile.am:
461         * WebCore.gypi:
462         * WebCore.pro:
463         * WebCore.vcproj/WebCore.vcproj:
464         * WebCore.xcodeproj/project.pbxproj:
465         * inspector/CodeGeneratorInspector.pm:
466         * inspector/InjectedScriptHost.cpp:
467         (WebCore::InjectedScriptHost::databaseForId):
468         (WebCore::InjectedScriptHost::selectDatabase):
469         (WebCore::InjectedScriptHost::selectDOMStorage):
470         (WebCore::InjectedScriptHost::inspectorDOMAgent):
471         * inspector/Inspector.idl:
472         * inspector/InspectorBackend.cpp: Removed.
473         * inspector/InspectorBackend.h: Removed.
474         * inspector/InspectorController.cpp:
475         (WebCore::InspectorController::InspectorController):
476         (WebCore::InspectorController::~InspectorController):
477         (WebCore::InspectorController::connectFrontend):
478         (WebCore::InspectorController::releaseFrontendLifetimeAgents):
479         (WebCore::InspectorController::didUseDOMStorage):
480         (WebCore::InspectorController::setInjectedScriptSource):
481         (WebCore::InspectorController::dispatchOnInjectedScript):
482         (WebCore::InspectorController::releaseWrapperObjectGroup):
483         * inspector/InspectorController.h:
484         * inspector/InspectorDOMStorageAgent.cpp: Added.
485         (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
486         (WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
487         (WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
488         (WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
489         (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
490         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
491         (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
492         * inspector/InspectorDOMStorageAgent.h: Copied from WebCore/inspector/InspectorStorageAgent.h.
493         (WebCore::InspectorDOMStorageAgent::create):
494         (WebCore::InspectorDOMStorageAgent::frontend):
495         * inspector/InspectorDatabaseAgent.cpp: Renamed from WebCore/inspector/InspectorStorageAgent.cpp.
496         (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
497         (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
498         (WebCore::InspectorDatabaseAgent::executeSQL):
499         (WebCore::InspectorDatabaseAgent::databaseForId):
500         (WebCore::InspectorDatabaseAgent::selectDatabase):
501         (WebCore::InspectorDatabaseAgent::clearFrontend):
502         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
503         * inspector/InspectorDatabaseAgent.h: Renamed from WebCore/inspector/InspectorStorageAgent.h.
504         (WebCore::InspectorDatabaseAgent::create):
505         (WebCore::InspectorDatabaseAgent::frontend):
506         * inspector/front-end/ScriptsPanel.js:
507         (WebInspector.ScriptsPanel.prototype.show):
508         (WebInspector.ScriptsPanel.prototype.attachDebuggerWhenShown):
509         (WebInspector.ScriptsPanel.prototype._toggleDebugging):
510
511 2010-12-29  Dirk Schulze  <krit@webkit.org>
512
513         Reviewed by Darin Adler.
514
515         Cleanup SVG code according to the webkit style rules 3
516         https://bugs.webkit.org/show_bug.cgi?id=51490
517
518         Last patch to fix indention and other style issues according to the WebKit style rules in the SVG code.
519         Just one file can't be fixed for check-webkit-style.
520         * SVGAllInOne.cpp: check-webkit-style wants a config.h at the beginning
521
522         No changes of functionality, so no new tests. 
523
524         * svg/SVGAllInOne.cpp:
525         * svg/SVGImage.cpp:
526         * svg/SVGLength.cpp:
527         (WebCore::SVGLength::setValue):
528         * svg/SVGPolygonElement.h:
529         * svg/SVGPolylineElement.h:
530         * svg/SVGPreserveAspectRatio.cpp:
531         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
532         (WebCore::SVGPreserveAspectRatio::transformRect):
533         * svg/SVGSVGElement.cpp:
534         (WebCore::SVGSVGElement::viewport):
535         * svg/SVGSetElement.h:
536         * svg/SVGStylable.h:
537         (WebCore::SVGStylable::~SVGStylable):
538         * svg/SVGStyledLocatableElement.h:
539         (WebCore::SVGStyledLocatableElement::localCoordinateSpaceTransform):
540         (WebCore::SVGStyledLocatableElement::isStyledLocatable):
541         * svg/SVGStyledTransformableElement.cpp:
542         (WebCore::SVGStyledTransformableElement::isKnownAttribute):
543         * svg/SVGSwitchElement.cpp:
544         (WebCore::SVGSwitchElement::childShouldCreateRenderer):
545         * svg/SVGTests.cpp:
546         (WebCore::SVGTests::parseMappedAttribute):
547         * svg/SVGTextContentElement.cpp:
548         (WebCore::SVGTextContentElement::isKnownAttribute):
549         * svg/SVGTextPathElement.cpp:
550         * svg/SVGTextPathElement.h:
551         * svg/SVGTitleElement.h:
552         (WebCore::SVGTitleElement::rendererIsNeeded):
553         * svg/SVGTransformDistance.cpp:
554         (WebCore::SVGTransformDistance::SVGTransformDistance):
555         (WebCore::SVGTransformDistance::scaledDistance):
556         (WebCore::SVGTransformDistance::addSVGTransforms):
557         (WebCore::SVGTransformDistance::addSVGTransform):
558         (WebCore::SVGTransformDistance::addToSVGTransform):
559         (WebCore::SVGTransformDistance::isZero):
560         * svg/SVGTransformList.cpp:
561         * svg/SVGURIReference.cpp:
562         (WebCore::SVGURIReference::getTarget):
563         * svg/SVGVKernElement.h:
564         * svg/SVGViewSpec.cpp:
565         (WebCore::SVGViewSpec::parseViewSpec):
566         * svg/SVGZoomAndPan.h:
567         (WebCore::SVGZoomAndPan::SVGZoomAndPan):
568         (WebCore::SVGZoomAndPan::~SVGZoomAndPan):
569         (WebCore::SVGZoomAndPan::zoomAndPan):
570         * svg/SVGZoomEvent.h:
571         (WebCore::SVGZoomEvent::create):
572         * svg/animation/SMILTime.cpp:
573         (WebCore::operator*):
574         * svg/animation/SMILTime.h:
575         (WebCore::SMILTime::SMILTime):
576         (WebCore::SMILTime::unresolved):
577         (WebCore::SMILTime::indefinite):
578         (WebCore::SMILTime::operator=):
579         (WebCore::SMILTime::value):
580         (WebCore::SMILTime::isFinite):
581         (WebCore::SMILTime::isIndefinite):
582         (WebCore::SMILTime::isUnresolved):
583         (WebCore::operator==):
584         (WebCore::operator!): new operator checks for 0 or infinite values.
585         (WebCore::operator!=):
586         (WebCore::operator>):
587         (WebCore::operator<):
588         (WebCore::operator>=):
589         (WebCore::operator<=):
590         * svg/animation/SMILTimeContainer.h:
591         (WebCore::SMILTimeContainer::create):
592         (WebCore::SMILTimeContainer::setDocumentOrderIndexesDirty):
593         * svg/animation/SVGSMILElement.cpp:
594         (WebCore::ConditionEventListener::operator==):
595         (WebCore::SVGSMILElement::repeatingDuration):
596         (WebCore::SVGSMILElement::resolveInterval):
597         (WebCore::SVGSMILElement::calculateAnimationPercentAndRepeat):
598         * svg/animation/SVGSMILElement.h:
599         (WebCore::SVGSMILElement::timeContainer):
600         (WebCore::SVGSMILElement::intervalBegin):
601         (WebCore::SVGSMILElement::intervalEnd):
602         (WebCore::SVGSMILElement::previousIntervalBegin):
603         (WebCore::SVGSMILElement::documentOrderIndex):
604         (WebCore::SVGSMILElement::setDocumentOrderIndex):
605         * svg/graphics/SVGImage.h:
606         (WebCore::SVGImage::create):
607         (WebCore::SVGImage::destroyDecodedData):
608         (WebCore::SVGImage::decodedSize):
609         (WebCore::SVGImage::frameAtIndex):
610         * svg/graphics/filters/SVGFilterBuilder.h:
611         (WebCore::SVGFilterBuilder::create):
612         (WebCore::SVGFilterBuilder::lastEffect):
613         (WebCore::SVGFilterBuilder::getEffectReferences):
614         (WebCore::SVGFilterBuilder::addBuiltinEffects):
615
616 2010-12-29  Abhishek Arya  <inferno@chromium.org>
617
618         Reviewed by Darin Adler.
619
620         ASSERT(oldchild->parent() == owner) fails.
621         https://bugs.webkit.org/show_bug.cgi?id=50480
622
623         In RenderBlock removeChild function, when the inlineChildrenBlock(equal to prev or next)
624         is reparented to blockChildrenBlock, it is no longer a child of "this". This causes the
625         assertion failure when removeChildNode executes on the child(equal to prev or next).
626         Fix a typo in canMergeContiguousAnonymousBlocks.
627
628         Test: fast/multicol/span/double-merge-anonymous-block-crash.html
629
630         * rendering/RenderBlock.cpp:
631         (WebCore::canMergeContiguousAnonymousBlocks): fix typo, change prev to next.
632         (WebCore::RenderBlock::removeChild): if prev or not is reparented, then set it to zero.
633
634 2010-12-29  Justin Schuh  <jschuh@chromium.org>
635
636         Reviewed by Darin Adler.
637
638         Check SVG element type in FrameView::scrollToAnchor
639         https://bugs.webkit.org/show_bug.cgi?id=51718
640
641         Test: svg/custom/scroll-to-anchor-in-symbol.svg
642
643         * page/FrameView.cpp:
644         (WebCore::FrameView::scrollToAnchor):
645
646 2010-12-29  Anton Muhin  <antonm@chromium.org>
647
648         Reviewed by Eric Seidel.
649
650         [v8] Minor cleanup: remove unused method (the only method which can mutate context of V8DOMWindowShell)
651         https://bugs.webkit.org/show_bug.cgi?id=51704
652
653         * bindings/v8/V8DOMWindowShell.cpp:
654         * bindings/v8/V8DOMWindowShell.h:
655
656 2010-12-29  Kenichi Ishibashi  <bashi@google.com>
657
658         Reviewed by Darin Adler.
659
660         Use a HashMap for m_continuation to save memory
661         https://bugs.webkit.org/show_bug.cgi?id=43716
662
663         Saving memory consumption by applying a HashMap convention to
664         continuation pointers of RenderInline and RenderBlock classes.
665
666         * rendering/RenderBlock.cpp: Removed m_continuation.
667         (WebCore::RenderBlock::RenderBlock):
668         (WebCore::RenderBlock::destroy):
669         (WebCore::RenderBlock::inlineElementContinuation):
670         (WebCore::RenderBlock::blockElementContinuation):
671         * rendering/RenderBlock.h: Removed m_continuation.
672         * rendering/RenderBoxModelObject.cpp: Added a hash map for continuations.
673         (WebCore::RenderBoxModelObject::destroy): Added an assertion.
674         (WebCore::RenderBoxModelObject::continuation): Added.
675         (WebCore::RenderBoxModelObject::setContinuation): Added.
676         * rendering/RenderBoxModelObject.h:
677         * rendering/RenderInline.cpp: Removed m_continuation.
678         (WebCore::RenderInline::RenderInline):
679         (WebCore::RenderInline::destroy):
680         (WebCore::RenderInline::inlineElementContinuation):
681         * rendering/RenderInline.h: Removed m_continuation.
682
683 2010-12-27  Amruth Raj  <amruthraj@motorola.com> and Ravi Kasibhatla  <ravi.kasibhatla@motorola.com>
684
685         Reviewed by Martin Robinson.
686
687         [GTK] Enable building whatever already exists of WebKit2
688         https://bugs.webkit.org/show_bug.cgi?id=37369
689
690         No new functionality added or deleted. Only makefile change. Hence, no tests added.
691
692         * GNUmakefile.am: Removed bindings/gobject from webcore_sources & webcore_cppflags and
693         added them to WebKit/gtk/GNUmakefile.am
694         * platform/network/soup/cache/webkit/soup-cache.h: Remove include <webkit/webkitdefines.h>
695         and declare WEBKIT_API directly
696
697 2010-12-29  Eric Seidel  <eric@webkit.org>
698
699         Unreviewed.
700
701         Simplify make-hash-tools.pl
702         https://bugs.webkit.org/show_bug.cgi?id=49922
703
704         Added HashTools.h to the project file now that its not autogenerated.
705         I also sorted the project file using sort-xcode-project-file
706
707         * WebCore.xcodeproj/project.pbxproj:
708
709 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
710
711         Not reviewed: revert r74755 and 74757.
712
713 2010-12-29  Martin Robinson  <mrobinson@igalia.com>
714
715         Reviewed by Sam Weinig.
716
717         JSDataViewCustom.cpp gives the fastcall calling convention to functions called via C++
718         https://bugs.webkit.org/show_bug.cgi?id=51722
719
720         Remove the JSC_HOST_CALL from methods that are called from C++. JSC_HOST_CALL gives
721         methods the fastcall calling convention, which leads to runtime errors when they are
722         called from C++. Also remove a bit of unnecessary code duplication.
723
724         No new tests. This is covered by fast/canvas/webgl/data-view-test.html.
725
726         * bindings/js/JSDataViewCustom.cpp:
727         (WebCore::getDataViewMember): Remove duplicated code.
728         (WebCore::JSDataView::getInt8): Remove JSC_HOST_CALL.
729         (WebCore::JSDataView::getUint8): Ditto.
730         (WebCore::JSDataView::getFloat32): Ditto.
731         (WebCore::JSDataView::getFloat64): Ditto.
732         (WebCore::setDataViewMember): Remove duplicated code.
733         (WebCore::JSDataView::setInt8): Remove JSC_HOST_CALL.
734         (WebCore::JSDataView::setUint8): Ditto.
735
736 2010-12-29  Dan Bernstein  <mitz@apple.com>
737
738         Reviewed by Kenneth Russel.
739
740         A more robust fix for https://bugs.webkit.org/show_bug.cgi?id=51681
741
742         * html/HTMLCanvasElement.cpp:
743         (WebCore::HTMLCanvasElement::attach): Added. Like recalcStyle(), calls
744         CanvasRenderingContext2D::updateFont() if necessary. This covers the case of a detach/
745         attach-type style recalc.
746         * html/HTMLCanvasElement.h:
747         * html/canvas/CanvasRenderingContext2D.cpp:
748         (WebCore::CanvasRenderingContext2D::drawTextInternal): Removed the early return added in
749         r74716. A font that is loading custom fonts is okay to use, as long as it is valid.
750         (WebCore::CanvasRenderingContext2D::accessFont): Added a call to
751         Document::updateStyleIfNeeded(). This ensures that any pending style recalc will take place
752         and update the font if it is invalid.
753         * platform/graphics/Font.h:
754         (WebCore::Font::loadingCustomFonts): Made this private.
755
756 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
757
758         Not reviewed: Qt build fix.
759
760         * inspector/InspectorController.cpp:
761
762 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
763
764         Reviewed by Yury Semikhatsky.
765
766         Web Inspector: extract Database & DOM Storage
767         agents; remove InspectorBackend.
768         https://bugs.webkit.org/show_bug.cgi?id=51707
769
770         This change brushes up storage agents + removes redundant
771         InspectorBackend class.
772
773         * CMakeLists.txt:
774         * GNUmakefile.am:
775         * WebCore.gypi:
776         * WebCore.pro:
777         * WebCore.vcproj/WebCore.vcproj:
778         * WebCore.xcodeproj/project.pbxproj:
779         * inspector/CodeGeneratorInspector.pm:
780         * inspector/InjectedScriptHost.cpp:
781         (WebCore::InjectedScriptHost::databaseForId):
782         (WebCore::InjectedScriptHost::selectDatabase):
783         (WebCore::InjectedScriptHost::selectDOMStorage):
784         (WebCore::InjectedScriptHost::inspectorDOMAgent):
785         * inspector/Inspector.idl:
786         * inspector/InspectorBackend.cpp: Removed.
787         * inspector/InspectorBackend.h: Removed.
788         * inspector/InspectorController.cpp:
789         (WebCore::InspectorController::InspectorController):
790         (WebCore::InspectorController::~InspectorController):
791         (WebCore::InspectorController::connectFrontend):
792         (WebCore::InspectorController::releaseFrontendLifetimeAgents):
793         (WebCore::InspectorController::didUseDOMStorage):
794         (WebCore::InspectorController::setInjectedScriptSource):
795         (WebCore::InspectorController::dispatchOnInjectedScript):
796         (WebCore::InspectorController::releaseWrapperObjectGroup):
797         * inspector/InspectorController.h:
798         * inspector/InspectorDOMStorageAgent.cpp: Added.
799         (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
800         (WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
801         (WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
802         (WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
803         (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
804         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
805         (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
806         * inspector/InspectorDOMStorageAgent.h: Copied from WebCore/inspector/InspectorStorageAgent.h.
807         (WebCore::InspectorDOMStorageAgent::create):
808         (WebCore::InspectorDOMStorageAgent::frontend):
809         * inspector/InspectorDatabaseAgent.cpp: Renamed from WebCore/inspector/InspectorStorageAgent.cpp.
810         (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
811         (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
812         (WebCore::InspectorDatabaseAgent::executeSQL):
813         (WebCore::InspectorDatabaseAgent::databaseForId):
814         (WebCore::InspectorDatabaseAgent::selectDatabase):
815         (WebCore::InspectorDatabaseAgent::clearFrontend):
816         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
817         * inspector/InspectorDatabaseAgent.h: Renamed from WebCore/inspector/InspectorStorageAgent.h.
818         (WebCore::InspectorDatabaseAgent::create):
819         (WebCore::InspectorDatabaseAgent::frontend):
820         * inspector/InspectorFrontendClientLocal.cpp:
821         * inspector/InspectorFrontendClientLocal.h:
822         * inspector/front-end/ScriptsPanel.js:
823         (WebInspector.ScriptsPanel.prototype.show):
824
825 2010-12-29  Tony Gentilcore  <tonyg@chromium.org>
826
827         Reviewed by Eric Seidel.
828
829         Assertion failure: element->inDocument() in AsyncScriptRunner::executeScriptSoon()
830         https://bugs.webkit.org/show_bug.cgi?id=51067
831
832         Typically when a script element is removed from the document, the cached script
833         client is removed. However, during the before load event, the cached script client
834         hasn't been created yet so it can't be removed.
835
836         This patch handles that case by explicitly checking if the script element was
837         removed during the beforeload event. Also, it avoids caching the Document references
838         over the arbitrary script execution in the before load event.
839
840         Test: fast/dom/HTMLScriptElement/move-in-beforeload.html
841               fast/dom/HTMLScriptElement/remove-in-beforeload.html
842
843         * dom/ScriptElement.cpp:
844         (WebCore::ScriptElement::requestScript):
845
846 2010-12-29  Alexander Pavlov  <apavlov@chromium.org>
847
848         Reviewed by Yury Semikhatsky.
849
850         Web Inspector: Element highlight tooltip displays wrong element size when zoomed in
851         https://bugs.webkit.org/show_bug.cgi?id=51703
852
853         * inspector/InspectorController.cpp:
854         (WebCore::InspectorController::drawElementTitle):
855
856 2010-12-29  Yael Aharon  <yael.aharon@nokia.com>
857
858         Reviewed by Kent Tamura.
859
860         [HTML5][Forms] Support for :in-range and :out-of-range CSS selectors
861         https://bugs.webkit.org/show_bug.cgi?id=29071
862
863         Use InputType::rangeUnderflow() and InputType::rangeOverflow()
864         to determine if a control is in-range or out-of-range.
865
866         Tests: fast/css/pseudo-in-range-invalid-value.html
867                fast/css/pseudo-in-range.html
868                fast/css/pseudo-out-of-range.html
869
870         * css/CSSSelector.cpp:
871         (WebCore::CSSSelector::pseudoId):
872         (WebCore::nameToPseudoTypeMap):
873         (WebCore::CSSSelector::extractPseudoType):
874         * css/CSSSelector.h:
875         * css/CSSStyleSelector.cpp:
876         (WebCore::CSSStyleSelector::canShareStyleWithElement):
877         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
878         * dom/Element.h:
879         (WebCore::Element::isInRange):
880         (WebCore::Element::isOutOfRange):
881         * html/BaseDateAndTimeInputType.cpp:
882         (WebCore::BaseDateAndTimeInputType::supportsRangeLimitation):
883         * html/BaseDateAndTimeInputType.h:
884         * html/HTMLInputElement.cpp:
885         (WebCore::HTMLInputElement::isInRange):
886         (WebCore::HTMLInputElement::isOutOfRange):
887         * html/HTMLInputElement.h:
888         * html/InputType.cpp:
889         (WebCore::InputType::supportsRangeLimitation):
890         * html/InputType.h:
891         * html/NumberInputType.cpp:
892         (WebCore::NumberInputType::supportsRangeLimitation):
893         * html/NumberInputType.h:
894         * html/RangeInputType.cpp:
895         (WebCore::RangeInputType::supportsRangeLimitation):
896         * html/RangeInputType.h:
897
898 2010-12-29  Abhishek Arya  <inferno@chromium.org>
899
900         Reviewed by Eric Seidel.
901
902         When cloning an anonymous block, make sure to set the childrenInline flag based
903         on the state of the block to be cloned.
904         https://bugs.webkit.org/show_bug.cgi?id=51489
905
906         Test: fast/multicol/span/clone-anonymous-block-non-inline-child-crash.html
907
908         * rendering/RenderBlock.cpp:
909         (WebCore::RenderBlock::clone): add code to handle cloning of anonymous blocks.
910         (WebCore::RenderBlock::splitBlocks): remove anonymous block creation calls since it is now handled by clone().
911
912 2010-12-29  Patrick Gansterer  <paroga@webkit.org>
913
914         Unreviewed build fix for WinCE after r73802.
915
916         Reapply parts from r72585:
917         Port ContextMenuWin.cpp to WinCE
918         https://bugs.webkit.org/show_bug.cgi?id=48408
919
920         * CMakeLists.txt:
921         * platform/ContextMenu.h:
922         * platform/win/ContextMenuWin.cpp:
923         (WebCore::ContextMenu::getContextMenuItems):
924         (WebCore::ContextMenu::createNativeMenuFromItems):
925
926 2010-12-29  Kent Hansen  <kent.hansen@nokia.com>
927
928         Reviewed by Simon Hausmann.
929
930         [Qt] Fix compilation with Qt in namespace
931         https://bugs.webkit.org/show_bug.cgi?id=51701
932
933         * platform/graphics/ContextShadow.h:
934         * platform/graphics/GraphicsContext3D.h:
935         * platform/network/NetworkingContext.h:
936         * platform/network/qt/QtNAMThreadSafeProxy.h:
937         * plugins/PluginView.h:
938
939 2010-12-28  Alexander Pavlov  <apavlov@chromium.org>
940
941         Reviewed by Pavel Feldman.
942
943         Web Inspector: A disabled style property should get enabled when edited
944         https://bugs.webkit.org/show_bug.cgi?id=51679
945
946         Test: inspector/styles-disable-then-change.html
947
948         * inspector/front-end/CSSStyleModel.js:
949         (WebInspector.CSSProperty.prototype.setText):
950         (WebInspector.CSSProperty.prototype.setText.callback):
951
952 2010-12-29  Patrick Gansterer  <paroga@webkit.org>
953
954         Reviewed by Andreas Kling.
955
956         [CMake] Remove WebKitGenerators
957         https://bugs.webkit.org/show_bug.cgi?id=50445
958
959         * CMakeLists.txt: Pass preprocessor to generate-bindings.pl.
960
961 2010-12-28  Pratik Solanki  <psolanki@apple.com>
962
963         Reviewed by Eric Seidel.
964
965         https://bugs.webkit.org/show_bug.cgi?id=51522
966         Use deviceRGBColorSpaceRef() instead of calling CGColorSpaceCreateDeviceRGB()
967
968         * page/win/FrameCGWin.cpp:
969         (WebCore::imageFromRect):
970         * platform/graphics/cg/GradientCG.cpp:
971         (WebCore::Gradient::platformGradient):
972         * platform/graphics/cg/GraphicsContext3DCG.cpp:
973         (WebCore::GraphicsContext3D::paintToCanvas):
974         * platform/graphics/cg/ImageCG.cpp:
975         (WebCore::BitmapImage::checkForSolidColor):
976         * platform/graphics/gstreamer/ImageGStreamerCG.mm:
977         (ImageGStreamer::ImageGStreamer):
978         * platform/graphics/win/GraphicsContextCGWin.cpp:
979         (WebCore::CGContextWithHDC):
980         (WebCore::GraphicsContext::releaseWindowsContext):
981         (WebCore::GraphicsContext::drawWindowsBitmap):
982         * platform/graphics/win/ImageCGWin.cpp:
983         (WebCore::BitmapImage::create):
984         (WebCore::BitmapImage::getHBITMAPOfSize):
985         * platform/image-decoders/cg/ImageDecoderCG.cpp:
986         (WebCore::createColorSpace):
987         * platform/win/DragImageCGWin.cpp:
988         (WebCore::allocImage):
989         (WebCore::createCgContextFromBitmap):
990         * rendering/RenderThemeMac.mm:
991         (WebCore::RenderThemeMac::paintMenuListButtonGradients):
992         (WebCore::RenderThemeMac::paintSliderTrack):
993         * rendering/RenderThemeSafari.cpp:
994         (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
995         (WebCore::RenderThemeSafari::paintSliderTrack):
996
997 2010-12-28  Daniel Bates  <dbates@rim.com>
998
999         Reviewed by Sam Weinig.
1000
1001         Substitute // MARK: for compiler-specific #pragma mark
1002         https://bugs.webkit.org/show_bug.cgi?id=51657
1003
1004         Fix compilation warnings about "#pragma mark" on GTK+ bots by
1005         substituting  "// MARK:" for "#pragma mark", which provides
1006         analogous code-bookmarking functionality under Xcode.
1007
1008         * platform/graphics/cg/PathCG.cpp:
1009         * platform/graphics/mac/WebLayer.mm:
1010
1011 2010-12-28  Jan Erik Hanssen  <jhanssen@sencha.com>
1012
1013         Reviewed by Eric Seidel.
1014
1015         [Qt] GraphicsContext::getCTM() does not need to make a copy of QPainter::combinedTransform()
1016         https://bugs.webkit.org/show_bug.cgi?id=51687
1017
1018         Use a const reference instead of a copy of QPainter::combinedTransform() 
1019         in GraphicsContext::getCTM()
1020
1021         * platform/graphics/qt/GraphicsContextQt.cpp:
1022         (WebCore::GraphicsContext::getCTM):
1023
1024 2010-12-28  Takashi Toyoshima  <toyoshim@google.com>
1025
1026         Reviewed by Eric Seidel.
1027
1028         gcc detected 'control reaches end of non-void function' with
1029         -finstrument-functions option.
1030         https://bugs.webkit.org/show_bug.cgi?id=51669
1031
1032         No new tests. These fixes are trivial.
1033
1034         * dom/Element.cpp:
1035         (WebCore::Element::childTypeAllowed):
1036         * inspector/InspectorResourceAgent.cpp:
1037         (WebCore::cachedResourceTypeString):
1038
1039 2010-12-28  Tony Gentilcore  <tonyg@chromium.org>
1040
1041         Reviewed by Eric Seidel.
1042
1043         Remove unused member of PendingScript
1044         https://bugs.webkit.org/show_bug.cgi?id=51684
1045
1046         This was used when HTMLScriptRunner::runScript created a PendingScript
1047         for inline scripts. But now it just calls executeScript() directly.
1048         External scripts always have the minimum starting line number.
1049
1050         No new tests because no changed functionality.
1051
1052         * dom/PendingScript.cpp:
1053         (WebCore::PendingScript::releaseElementAndClear):
1054         * dom/PendingScript.h:
1055         (WebCore::PendingScript::PendingScript):
1056         (WebCore::PendingScript::operator=):
1057         * html/parser/HTMLScriptRunner.cpp:
1058         (WebCore::HTMLScriptRunner::sourceFromPendingScript):
1059
1060 2010-12-20  Antonio Gomes  <agomes@rim.com>
1061
1062         Reviewed by Daniel Bates.
1063
1064         Spatial Navigation: code clean up (Part VI)
1065         https://bugs.webkit.org/show_bug.cgi?id=50666
1066
1067         No new tests needed.
1068
1069         * page/FocusController.cpp:
1070         (WebCore::updatFocusCandidateIfNeeded): Assert renderer() and
1071         isElementNode() now that we are bailing out earlier in both the
1072         FocusCandidate constructor and FocusController::findFocusCandidateInContainer().
1073         * page/SpatialNavigation.h: Swapped the parameters order in canScrollInDirection
1074         and virtualRectForAreaElementAndDirection functions.
1075         (WebCore::FocusController::findFocusCandidateInContainer):
1076         (WebCore::FocusController::advanceFocusDirectionallyInContainer): Adjusted callsites
1077         of canScrollInDirection(), and added an early return if !isElementNode().
1078         (WebCore::FocusController::advanceFocusDirectionally): Adjusted callsite of
1079         virtualRectForAreaElementAndDirection();
1080         * page/SpatialNavigation.cpp:
1081         (WebCore::FocusCandidate::FocusCandidate): Assert if node is not a element node;
1082         (WebCore::isScrollableNode): Renamed from isScrollableContainerNode;
1083         (WebCore::scrollInDirection): Adjusted callsite after function name change;
1084         (WebCore::scrollableEnclosingBoxOrParentFrameForNodeInDi:rection): Assert if node is
1085         a documentNode.
1086         (WebCore::canScrollInDirection): Signature changed.
1087         (WebCore::canBeScrolledIntoView): Ditto.
1088         (WebCore::virtualRectForAreaElementAndDirection): Ditto.
1089
1090 2010-12-28  Adrienne Walker  <enne@google.com>
1091
1092         Reviewed by Kenneth Russell.
1093
1094         [chromium] Fix tiled compositor assertion after GPU process recovery.
1095         https://bugs.webkit.org/show_bug.cgi?id=51682
1096
1097         After the GPU process recovers, the layer size is set to IntSize(),
1098         but IntRect::unite() has a special case for empty rects.  This
1099         behavior was causing the layer size to be too small, causing an
1100         out-of-bounds array access elsewhere.
1101
1102         No new tests.
1103
1104         * platform/graphics/chromium/LayerTilerChromium.cpp:
1105         (WebCore::LayerTilerChromium::growLayerToContain):
1106
1107 2010-12-23  Zhenyao Mo  <zmo@google.com>
1108
1109         Reviewed by Kenneth Russell.
1110
1111         Initialize to 0 for undefined values in CopyTexImage2D
1112         https://bugs.webkit.org/show_bug.cgi?id=51421
1113
1114         * html/canvas/WebGLFramebuffer.cpp: Track width/height/internalFormat of color buffer.
1115         (WebCore::WebGLFramebuffer::WebGLFramebuffer):
1116         (WebCore::WebGLFramebuffer::setAttachment):
1117         (WebCore::WebGLFramebuffer::getWidth):
1118         (WebCore::WebGLFramebuffer::getHeight):
1119         (WebCore::WebGLFramebuffer::getColorBufferFormat):
1120         * html/canvas/WebGLFramebuffer.h:
1121         * html/canvas/WebGLRenderingContext.cpp:
1122         (WebCore::WebGLRenderingContext::copyTexImage2D): Initialize undefined pixels to 0.
1123         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
1124         (WebCore::WebGLRenderingContext::framebufferTexture2D):
1125         (WebCore::WebGLRenderingContext::renderbufferStorage):
1126         (WebCore::WebGLRenderingContext::getBoundFramebufferWidth):
1127         (WebCore::WebGLRenderingContext::getBoundFramebufferHeight):
1128         * html/canvas/WebGLRenderingContext.h:
1129         * html/canvas/WebGLTexture.cpp: Track width/height/internalFormat of a texture by target/level.
1130         (WebCore::WebGLTexture::getInternalFormat):
1131         (WebCore::WebGLTexture::getWidth):
1132         (WebCore::WebGLTexture::getHeight):
1133         (WebCore::WebGLTexture::mapTargetToIndex):
1134         (WebCore::WebGLTexture::getLevelInfo):
1135         * html/canvas/WebGLTexture.h:
1136         (WebCore::WebGLTexture::isTexture):
1137         * platform/graphics/GraphicsContext3D.h: Add getInternalFramebufferSize() function.
1138         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1139         (WebCore::GraphicsContext3D::getInternalFramebufferSize):
1140         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1141         (WebCore::GraphicsContext3D::getInternalFramebufferSize):
1142
1143 2010-12-23  Zhenyao Mo  <zmo@google.com>
1144
1145         Reviewed by Kenneth Russell.
1146
1147         Map GLsizei to long instead of unsigned long in WebGLRenderingContext and GraphicsContext3D
1148         https://bugs.webkit.org/show_bug.cgi?id=39855
1149
1150         * html/canvas/WebGLRenderingContext.cpp:
1151         (WebCore::WebGLRenderingContext::copyTexImage2D): Map GLsizei to long.
1152         (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
1153         (WebCore::WebGLRenderingContext::renderbufferStorage): Ditto.
1154         (WebCore::WebGLRenderingContext::scissor): Ditto.
1155         (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
1156         (WebCore::WebGLRenderingContext::texImage2D): Ditto.
1157         (WebCore::WebGLRenderingContext::texSubImage2DBase): Ditto.
1158         (WebCore::WebGLRenderingContext::texSubImage2DImpl): Ditto.
1159         (WebCore::WebGLRenderingContext::texSubImage2D): Ditto.
1160         (WebCore::WebGLRenderingContext::viewport): Ditto.
1161         (WebCore::WebGLRenderingContext::validateSize): Check the sizes are non-negative.
1162         * html/canvas/WebGLRenderingContext.h:
1163         * html/canvas/WebGLRenderingContext.idl:
1164
1165 2010-12-28  Abhishek Arya  <inferno@chromium.org>
1166
1167         Reviewed by Kenneth Russell.
1168
1169         Fix crash with invalid font in m_fontList by not drawing text when a custom font is in the
1170         process of loading.
1171         https://bugs.webkit.org/show_bug.cgi?id=51681
1172
1173         Test: canvas/philip/tests/2d.text-custom-font-load-crash.html
1174
1175         * html/canvas/CanvasRenderingContext2D.cpp:
1176         (WebCore::CanvasRenderingContext2D::drawTextInternal): bail out if a custom font is loading.
1177         * platform/graphics/Font.cpp:
1178         (WebCore::Font::operator==): Replace condition with new function loadingCustomFonts()
1179         (WebCore::Font::drawText): Replace condition with new function loadingCustomFonts()
1180         (WebCore::Font::drawEmphasisMarks): Replace condition with new function loadingCustomFonts()
1181         * platform/graphics/Font.h:
1182         (WebCore::Font::loadingCustomFonts): new function that returns if a custom font is loading.
1183
1184 2010-12-28  Dimitri Glazkov  <dglazkov@chromium.org>
1185
1186         Reviewed by Eric Seidel.
1187
1188         Combine setShadowRoot and clearShadowRoot into a simpler API
1189         https://bugs.webkit.org/show_bug.cgi?id=50971
1190
1191         No change in behavior, and API is not used yet.
1192
1193         * dom/Element.cpp:
1194         (WebCore::Element::setShadowRoot): Combined clearing and setting of
1195             the shadowRoot, also hooked up with setting and clearing of the
1196             corresponding shadowHost values.
1197         * dom/Element.h: renamed clearShadowRoot to removeShadowRoot and made it
1198             private.
1199         * dom/Node.h: Made shadow host-related functions public so that
1200             Element::setShadowRoot can access setShadowHost. It seems logical
1201             to make shadowHost public as well to keep the defs together.
1202
1203 2010-12-28  Andrey Kosyakov  <caseq@chromium.org>
1204
1205         Reviewed by Pavel Feldman.
1206
1207         Web Inspector: [Chromium] Expose extension API to select a node in WebInspector
1208         Do not request content for resources with non-numeric identifiers.
1209         https://bugs.webkit.org/show_bug.cgi?id=49727
1210
1211         Test: http/tests/inspector/extensions-resources-redirect.html
1212
1213         * inspector/front-end/NetworkManager.js:
1214         (WebInspector.NetworkManager.prototype._appendRedirect):
1215
1216 2010-12-28  Ilya Tikhonovsky  <loislo@chromium.org>
1217
1218         Unreviewed build fix for Qt.
1219
1220         ResourceTreeModel.js was added.
1221
1222         * inspector/front-end/WebKit.qrc:
1223
1224 2010-12-28  Mikhail Naganov  <mnaganov@chromium.org>
1225
1226         Reviewed by Pavel Feldman.
1227
1228         [Chromium] Fix memory leak in Profiles tab concerned with heap profiles views.
1229
1230         https://bugs.webkit.org/show_bug.cgi?id=51680
1231
1232         * inspector/front-end/ProfilesPanel.js:
1233         (WebInspector.ProfilesPanel.prototype._reset):
1234
1235 2010-12-28  Alexander Pavlov  <apavlov@chromium.org>
1236
1237         Reviewed by Pavel Feldman.
1238
1239         Web Inspector: REGRESSION: Clicking image resource in style sidebar doesn't actually go to resource anymore
1240         https://bugs.webkit.org/show_bug.cgi?id=51663
1241
1242         The base URI is now computed correctly for links from CSS property uri(...) values. Additionally,
1243         optional quotes/apostrophes and spaces are now allowed inside uri(...).
1244
1245         Test: inspector/styles-url-linkify.html
1246
1247         * inspector/front-end/StylesSidebarPane.js:
1248         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
1249         (WebInspector.StylePropertyTreeElement.prototype.updateTitle):
1250
1251 2010-12-21  Ilya Tikhonovsky  <loislo@chromium.org>
1252
1253         Reviewed by Pavel Feldman.
1254
1255         Web Inspector: Protocol cleanup task. Introduce Network, DOMStorage and Database domains.
1256
1257         Domain was changed for Resources, FileSystem etc. related methods.
1258         ResourcesManager was renamed to NetworkManager.
1259         ResourceTreeModel was extracted as separate file.
1260         FileSystem, Database, DOMStorage and ApplicationCache methods were
1261         removed from NetworkManager and added to corresponding classes.
1262
1263         https://bugs.webkit.org/show_bug.cgi?id=51334
1264
1265         * WebCore.gypi:
1266         * WebCore.vcproj/WebCore.vcproj:
1267         * inspector/CodeGeneratorInspector.pm:
1268         * inspector/Inspector.idl:
1269         * inspector/front-end/AuditRules.js:
1270         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
1271         * inspector/front-end/CSSStyleModel.js:
1272         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
1273         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
1274         * inspector/front-end/ConsoleView.js:
1275         (WebInspector.ConsoleView.prototype.addMessage):
1276         (WebInspector.ConsoleView.prototype.clearMessages):
1277         * inspector/front-end/DOMAgent.js:
1278         (WebInspector.ApplicationCache.updateApplicationCacheStatus):
1279         (WebInspector.ApplicationCache.updateNetworkState):
1280         * inspector/front-end/DOMStorage.js:
1281         (WebInspector.DOMStorage.addDOMStorage):
1282         (WebInspector.DOMStorage.selectDOMStorage):
1283         (WebInspector.DOMStorage.updateDOMStorage):
1284         * inspector/front-end/Database.js:
1285         (WebInspector.Database.prototype.executeSql):
1286         (WebInspector.Database.addDatabase):
1287         (WebInspector.Database.selectDatabase):
1288         (WebInspector.Database.sqlTransactionSucceeded):
1289         (WebInspector.Database.sqlTransactionFailed):
1290         * inspector/front-end/FileSystemView.js:
1291         (WebInspector.FileSystem.didGetFileSystemPath):
1292         (WebInspector.FileSystem.didGetFileSystemError):
1293         (WebInspector.FileSystem.didGetFileSystemDisabled):
1294         * inspector/front-end/NetworkItemView.js:
1295         (WebInspector.NetworkItemView):
1296         * inspector/front-end/NetworkManager.js: Added.
1297         (WebInspector.NetworkManager):
1298         (WebInspector.NetworkManager.prototype._createResource):
1299         (WebInspector.NetworkManager.prototype.identifierForInitialRequest):
1300         (WebInspector.NetworkManager.prototype.willSendRequest):
1301         (WebInspector.NetworkManager.prototype._updateResourceWithRequest):
1302         (WebInspector.NetworkManager.prototype._appendRedirect):
1303         (WebInspector.NetworkManager.prototype.markResourceAsCached):
1304         (WebInspector.NetworkManager.prototype.didReceiveResponse):
1305         (WebInspector.NetworkManager.prototype._updateResourceWithResponse):
1306         (WebInspector.NetworkManager.prototype.didReceiveContentLength):
1307         (WebInspector.NetworkManager.prototype.didFinishLoading):
1308         (WebInspector.NetworkManager.prototype.didFailLoading):
1309         (WebInspector.NetworkManager.prototype.didLoadResourceFromMemoryCache):
1310         (WebInspector.NetworkManager.prototype._updateResourceWithCachedResource):
1311         (WebInspector.NetworkManager.prototype.setInitialContent):
1312         (WebInspector.NetworkManager.prototype.didCommitLoadForFrame):
1313         (WebInspector.NetworkManager.prototype.frameDetachedFromParent):
1314         (WebInspector.NetworkManager.prototype.didCreateWebSocket):
1315         (WebInspector.NetworkManager.prototype.willSendWebSocketHandshakeRequest):
1316         (WebInspector.NetworkManager.prototype.didReceiveWebSocketHandshakeResponse):
1317         (WebInspector.NetworkManager.prototype.didCloseWebSocket):
1318         (WebInspector.NetworkManager.prototype._processCachedResources):
1319         (WebInspector.NetworkManager.prototype._addFramesRecursively):
1320         (WebInspector.NetworkManager.requestContent):
1321         * inspector/front-end/NetworkPanel.js:
1322         (WebInspector.NetworkPanel.prototype.refreshResource):
1323         * inspector/front-end/Resource.js:
1324         (WebInspector.Resource.prototype._innerRequestContent):
1325         * inspector/front-end/ResourceManager.js: Removed.
1326         * inspector/front-end/ResourceTreeModel.js: Added.
1327         (WebInspector.ResourceTreeModel):
1328         (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame):
1329         (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
1330         (WebInspector.ResourceTreeModel.prototype.frameDetachedFromParent):
1331         (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
1332         (WebInspector.ResourceTreeModel.prototype.addResourceToFrame):
1333         (WebInspector.ResourceTreeModel.prototype._clearResources):
1334         (WebInspector.ResourceTreeModel.prototype.forAllResources):
1335         (WebInspector.ResourceTreeModel.prototype.addConsoleMessage):
1336         (WebInspector.ResourceTreeModel.prototype.clearConsoleMessages):
1337         (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
1338         (WebInspector.ResourceTreeModel.prototype.resourceForURL):
1339         (WebInspector.ResourceTreeModel.prototype.bindResourceURL):
1340         (WebInspector.ResourceTreeModel.prototype._unbindResourceURL):
1341         (WebInspector.ResourceTreeModel.createResource):
1342         * inspector/front-end/ResourceView.js:
1343         (WebInspector.ResourceView.createResourceView):
1344         (WebInspector.ResourceView.resourceViewTypeMatchesResource):
1345         (WebInspector.ResourceView.resourceViewForResource):
1346         (WebInspector.ResourceView.recreateResourceView):
1347         (WebInspector.ResourceView.existingResourceViewForResource):
1348         * inspector/front-end/ResourcesPanel.js:
1349         (WebInspector.ResourcesPanel.prototype.canShowSourceLine):
1350         (WebInspector.ResourcesPanel.prototype.showSourceLine):
1351         (WebInspector.ResourcesPanel.prototype.showResource):
1352         (WebInspector.ResourcesPanel.prototype.get searchableViews.callback):
1353         (WebInspector.ResourcesPanel.prototype.get searchableViews):
1354         (WebInspector.FrameResourceTreeElement.prototype._errorsWarningsUpdated):
1355         (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
1356         * inspector/front-end/ScriptsPanel.js:
1357         (WebInspector.ScriptsPanel.prototype._addScript):
1358         (WebInspector.ScriptsPanel.prototype.reset):
1359         (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
1360         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
1361         * inspector/front-end/WebKit.qrc:
1362         * inspector/front-end/inspector.html:
1363         * inspector/front-end/inspector.js:
1364         (WebInspector.forAllResources):
1365         (WebInspector.resourceForURL):
1366
1367 2010-12-27  Helder Correia  <helder@sencha.com>
1368
1369         Reviewed by Ariya Hidayat.
1370
1371         ContextShadow should use AffineTransform instead of TransformationMatrix
1372         https://bugs.webkit.org/show_bug.cgi?id=51661
1373
1374         ContextShadow needs the CTM to make sure shadows are not affected by
1375         transformations when drawing on a canvas. AffineTransform is sufficient
1376         in this case.
1377
1378         Existing tests: fast/canvas/canvas*shadow*html
1379
1380         * platform/graphics/ContextShadow.cpp:
1381         (WebCore::ContextShadow::mustUseContextShadow):
1382         (WebCore::ContextShadow::adjustBlurDistance):
1383         (WebCore::ContextShadow::calculateLayerBoundingRect):
1384         * platform/graphics/ContextShadow.h:
1385         * platform/graphics/cairo/ContextShadowCairo.cpp:
1386         (WebCore::ContextShadow::getTransformationMatrixFromContext):
1387         * platform/graphics/qt/ContextShadowQt.cpp:
1388         (WebCore::ContextShadow::getTransformationMatrixFromContext):
1389
1390 2010-12-27  Daniel Bates  <dbates@rim.com>
1391
1392         Reviewed by Antonio Gomes.
1393
1394         Clean up: Rename HTMLFrameElementBase::getMarginWidth() and HTMLFrameElementBase::getMarginHeight()
1395         https://bugs.webkit.org/show_bug.cgi?id=51634
1396
1397         Rename HTMLFrameElementBase::getMarginWidth() and HTMLFrameElementBase::getMarginHeight()
1398         to HTMLFrameElementBase::marginWidth() and HTMLFrameElementBase::marginHeight(), respectively.
1399         This will make the names of these getters consistent with the naming convention we use for
1400         getters.
1401
1402         * html/HTMLBodyElement.cpp:
1403         (WebCore::HTMLBodyElement::insertedIntoDocument):
1404         * html/HTMLFrameElementBase.h:
1405         (WebCore::HTMLFrameElementBase::marginWidth): Renamed; Formerly getMarginWidth().
1406         (WebCore::HTMLFrameElementBase::marginHeight): Renamed; Formerly getMarginHeight().
1407         * loader/SubframeLoader.cpp:
1408         (WebCore::SubframeLoader::loadSubframe):
1409         * page/FrameView.cpp:
1410         (WebCore::FrameView::init):
1411         * rendering/RenderEmbeddedObject.cpp:
1412         (WebCore::RenderEmbeddedObject::viewCleared): Also renamed variables marginw and marginh
1413         to marginWidth and marginHeight, respectively. This makes the names of these variables
1414         consistent with the names of similar variables in SubframeLoader::loadSubframe() and FrameView::init().
1415         * rendering/RenderFrame.cpp:
1416         (WebCore::RenderFrame::viewCleared): Ditto.
1417
1418 2010-12-27  Martin Robinson  <mrobinson@igalia.com>
1419
1420         Reviewed by Daniel Bates.
1421
1422         [GTK] RenderThemeGtk::m_HScale and RenderThemeGtk::m_VScale are not initialized
1423         https://bugs.webkit.org/show_bug.cgi?id=51654
1424
1425         Properly initialize slider members of RenderThemeGtk. This can lead to test crashes
1426         on some debug configurations.
1427
1428         No new tests. This is already covered by current slider tests. It isn't crashing on
1429         the bots, but it does crash locally.
1430
1431         * platform/gtk/RenderThemeGtk.cpp:
1432         (WebCore::RenderThemeGtk::RenderThemeGtk): Properly initialize members.
1433
1434 2010-12-27  Anton Muhin  <antonm@chromium.org>
1435
1436         Reviewed by David Levin.
1437
1438         [v8] Remove unused methods to protect/unprotect wrappers during garbage collection
1439         https://bugs.webkit.org/show_bug.cgi?id=51648
1440
1441         * bindings/v8/ScriptController.cpp:
1442         * bindings/v8/ScriptController.h:
1443         * bindings/v8/V8GCController.cpp:
1444         (WebCore::V8GCController::gcEpilogue):
1445         * bindings/v8/V8GCController.h:
1446
1447 2010-12-27  Yury Semikhatsky  <yurys@chromium.org>
1448
1449         Unreviewed. Removed trailing spaces from a localized
1450         string to make it the same as the one used in the code.
1451
1452         * English.lproj/localizedStrings.js:
1453
1454 2010-12-27  Yael Aharon  <yael.aharon@nokia.com>
1455
1456         Reviewed by Eric Seidel.
1457
1458         Browser is failing 16 baseline test from Selector API Test Suite
1459         https://bugs.webkit.org/show_bug.cgi?id=42968
1460
1461         Throw an exception if there is no argument to querySelector or 
1462         querySelectorAll. This replaces the current behavior of passing the string
1463         "undefined" as the argument.
1464
1465         No new tests, just updating the existing results for 
1466         fast/dom/SelectorAPI/resig-SelectorAPI-test.xhtml.
1467
1468         * dom/Document.idl:
1469         * dom/DocumentFragment.idl:
1470         * dom/Element.idl:
1471
1472 2010-12-26  MORITA Hajime  <morrita@google.com>
1473
1474         Reviewed by Dan Bernstein.
1475
1476         For box-shadow, non-primary shadows should have specified radii.
1477         https://bugs.webkit.org/show_bug.cgi?id=51386
1478
1479         On paintBoxShadow(), the spread value accidentally accumulated accidentally
1480         during the loop, which should be applied individually for radius of each shadow. 
1481         This change makes the radii for rects computed for each shadow.
1482         
1483         Test: fast/box-shadow/spread-multiple-normal.html
1484
1485         * rendering/RenderBoxModelObject.cpp:
1486         (WebCore::RenderBoxModelObject::paintBoxShadow):
1487
1488 2010-12-26  Patrick Gansterer  <paroga@webkit.org>
1489
1490         Reviewed by Eric Seidel.
1491
1492         Improve output of HTML parser benchmark
1493         https://bugs.webkit.org/show_bug.cgi?id=51611
1494
1495         Calculate and show median, min and max values.
1496
1497         * benchmarks/parser/html-parser.html:
1498
1499 2010-12-26  Abhishek Arya  <inferno@chromium.org>
1500
1501         Reviewed by Simon Fraser.
1502
1503         Remove the bad assert in paintPaginatedChildLayer, hitTestPaginatedChildLayer. 
1504         https://bugs.webkit.org/show_bug.cgi?id=48772
1505
1506         Test: fast/multicol/renderer-positioned-assert-crash.html
1507
1508         * rendering/RenderLayer.cpp:
1509         (WebCore::RenderLayer::paintPaginatedChildLayer):
1510         (WebCore::RenderLayer::hitTestPaginatedChildLayer):
1511
1512 2010-12-25  Peter Rybin  <peter.rybin@gmail.com>
1513
1514         Reviewed by Adam Barth.
1515
1516         Adds currentColumn (and currentLine) to SegmentedString. Switches
1517         HTMLTreeBuilder to HTMLDocumentParser::textPosition when it
1518         needs position for a <script> tag.
1519
1520         SegmentedString should provide column position
1521         https://bugs.webkit.org/show_bug.cgi?id=51311
1522
1523         * html/parser/HTMLDocumentParser.cpp:
1524         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
1525         (WebCore::HTMLDocumentParser::textPosition):
1526         * html/parser/HTMLInputStream.h:
1527         (WebCore::HTMLInputStream::current):
1528         (WebCore::InsertionPointRecord::InsertionPointRecord):
1529         (WebCore::InsertionPointRecord::~InsertionPointRecord):
1530         * html/parser/HTMLTreeBuilder.cpp:
1531         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
1532         (WebCore::HTMLTreeBuilder::processScriptStartTag):
1533         * html/parser/HTMLTreeBuilder.h:
1534         (WebCore::HTMLTreeBuilder::create):
1535         * platform/text/SegmentedString.cpp:
1536         (WebCore::SegmentedString::operator=):
1537         (WebCore::SegmentedString::numberOfCharactersConsumedSlow):
1538         (WebCore::SegmentedString::advanceSlowCase):
1539         (WebCore::SegmentedString::currentLine):
1540         (WebCore::SegmentedString::currentColumn):
1541         (WebCore::SegmentedString::setCurrentPosition):
1542         * platform/text/SegmentedString.h:
1543         (WebCore::SegmentedString::SegmentedString):
1544         (WebCore::SegmentedString::advancePastNewline):
1545         (WebCore::SegmentedString::advance):
1546         (WebCore::SegmentedString::numberOfCharactersConsumed):
1547
1548 2010-12-25  Andreas Kling  <kling@webkit.org>
1549
1550         Reviewed by Kenneth Rohde Christiansen.
1551
1552         GraphicsContext: Don't pass StrokeStyle (enum) as const reference
1553         https://bugs.webkit.org/show_bug.cgi?id=51608
1554
1555         * platform/graphics/GraphicsContext.cpp:
1556         (WebCore::GraphicsContext::setStrokeStyle):
1557         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1558         (WebCore::GraphicsContext::adjustLineToPixelBoundaries):
1559         * platform/graphics/GraphicsContext.h:
1560         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1561         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1562         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
1563         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1564         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
1565         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1566         * platform/graphics/openvg/PainterOpenVG.cpp:
1567         (WebCore::PainterOpenVG::setStrokeStyle):
1568         * platform/graphics/openvg/PainterOpenVG.h:
1569         * platform/graphics/qt/GraphicsContextQt.cpp:
1570         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1571         * platform/graphics/skia/GraphicsContextSkia.cpp:
1572         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1573
1574 2010-12-24  Dan Bernstein  <mitz@apple.com>
1575
1576         Reviewed by Alexey Proskuryakov.
1577
1578         REGRESSION (r74648): XHR layout test failures
1579         https://bugs.webkit.org/show_bug.cgi?id=51603
1580
1581         Reverted r74648.
1582
1583         * WebCore.exp.in:
1584
1585 2010-12-24  Dan Bernstein  <mitz@apple.com>
1586
1587         Try to fix the Qt build after r74648.
1588
1589         * WebCore.gypi:
1590         * WebCore.pro:
1591         * platform/network/qt/CredentialStorageQt.cpp: Added.
1592         (WebCore::CredentialStorage::getFromPersistentStorage):
1593
1594 2010-12-24  Simon Fraser  <simon.fraser@apple.com>
1595
1596         Reviewed by Dan Bernstein.
1597
1598         CSSStyleSelector cleanup
1599         https://bugs.webkit.org/show_bug.cgi?id=51597
1600
1601         Make some methods const. Add assertion to checkOneSelector, with the
1602         intention of later removing the if (!e) check (this is hot code).
1603
1604         * css/CSSStyleSelector.cpp:
1605         (WebCore::CSSStyleSelector::locateCousinList):
1606         (WebCore::CSSStyleSelector::canShareStyleWithElement):
1607         (WebCore::CSSStyleSelector::locateSharedStyle):
1608         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
1609         (WebCore::CSSStyleSelector::mmLength):
1610         (WebCore::CSSStyleSelector::inchLength):
1611         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
1612         (WebCore::CSSStyleSelector::hasSelectorForAttribute):
1613         * css/CSSStyleSelector.h:
1614         (WebCore::CSSStyleSelector::fontSelector):
1615
1616 2010-12-24  Dan Bernstein  <mitz@apple.com>
1617
1618         Reviewed by Anders Carlsson.
1619
1620         <rdar://problem/8758386> The web process uses its own credential storage
1621         https://bugs.webkit.org/show_bug.cgi?id=51599
1622
1623         * WebCore.exp.in: Export CredentialStorage::getFromPersistentStorage(), Credential::hasPassword(),
1624         and Credential::isEmpty().
1625
1626 2010-12-24  Yury Semikhatsky  <yurys@chromium.org>
1627
1628         Reviewed by Darin Adler.
1629
1630         [V8] Rename V8CustomEventListener.{h,cpp} to V8EventListener.{h,cpp}
1631         https://bugs.webkit.org/show_bug.cgi?id=51595
1632
1633         * WebCore.gypi:
1634         * bindings/v8/V8DOMWrapper.cpp:
1635         * bindings/v8/V8EventListener.cpp: Renamed from WebCore/bindings/v8/custom/V8CustomEventListener.cpp.
1636         (WebCore::V8EventListener::V8EventListener):
1637         (WebCore::V8EventListener::getListenerFunction):
1638         (WebCore::V8EventListener::callListenerFunction):
1639         * bindings/v8/V8EventListener.h: Renamed from WebCore/bindings/v8/custom/V8CustomEventListener.h.
1640         (WebCore::V8EventListener::create):
1641         * bindings/v8/V8EventListenerList.h:
1642         * bindings/v8/V8WorkerContextEventListener.h:
1643         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1644         * bindings/v8/custom/V8LocationCustom.cpp:
1645         * bindings/v8/custom/V8NodeCustom.cpp:
1646         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
1647
1648 2010-12-24  Carlos Garcia Campos  <cgarcia@igalia.com>
1649
1650         Reviewed by Xan Lopez.
1651
1652         [GTK] Show current time / total in media player
1653         https://bugs.webkit.org/show_bug.cgi?id=51535
1654
1655         * css/mediaControlsGtk.css:
1656         (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
1657         * platform/gtk/RenderThemeGtk.cpp:
1658         (WebCore::RenderThemeGtk::formatMediaControlsCurrentTime):
1659         (WebCore::RenderThemeGtk::paintMediaCurrentTime):
1660         * platform/gtk/RenderThemeGtk.h:
1661
1662 2010-12-24  Jan Erik Hanssen  <jhanssen@sencha.com>
1663
1664         Reviewed by Eric Seidel.
1665
1666         Clean up CSSRuleData in CSSStyleSelector.h
1667         https://bugs.webkit.org/show_bug.cgi?id=27753
1668
1669         Move CSSRuleData and CSSRuleDataList from CSSStyleSelector.h to the .cpp file.
1670
1671         * css/CSSStyleSelector.cpp:
1672         (WebCore::CSSRuleData::CSSRuleData):
1673         (WebCore::CSSRuleData::~CSSRuleData):
1674         (WebCore::CSSRuleData::position):
1675         (WebCore::CSSRuleData::rule):
1676         (WebCore::CSSRuleData::selector):
1677         (WebCore::CSSRuleData::next):
1678         (WebCore::CSSRuleDataList::CSSRuleDataList):
1679         (WebCore::CSSRuleDataList::~CSSRuleDataList):
1680         (WebCore::CSSRuleDataList::first):
1681         (WebCore::CSSRuleDataList::last):
1682         (WebCore::CSSRuleDataList::append):
1683         * css/CSSStyleSelector.h:
1684
1685 2010-12-24  Yury Semikhatsky  <yurys@chromium.org>
1686
1687         Unreviewed. Fix compilation on Windows.
1688
1689         * inspector/InspectorStyleSheet.cpp:
1690         (WebCore::InspectorStyle::~InspectorStyle): added explicit empty destructor
1691         * inspector/InspectorStyleSheet.h:
1692
1693 2010-12-24  Yury Semikhatsky  <yurys@chromium.org>
1694
1695         Reviewed by Darin Adler.
1696
1697         inspector/debugger-step-out.html crashing intermittently in the bots
1698         https://bugs.webkit.org/show_bug.cgi?id=50868
1699
1700         Use RefPtr rather instead of raw pointers when keeping references
1701         to refcounted objects.
1702
1703         * inspector/InspectorCSSAgent.cpp:
1704         (WebCore::InspectorCSSAgent::getStylesForNode2):
1705         (WebCore::InspectorCSSAgent::getComputedStyleForNode2):
1706         * inspector/InspectorStyleSheet.cpp:
1707         (WebCore::InspectorStyle::create):
1708         (WebCore::InspectorStyle::InspectorStyle):
1709         (WebCore::InspectorStyle::buildObjectForStyle):
1710         (WebCore::InspectorStyle::setPropertyText):
1711         (WebCore::InspectorStyle::toggleProperty):
1712         (WebCore::InspectorStyle::styleText):
1713         (WebCore::InspectorStyle::populateAllProperties):
1714         (WebCore::InspectorStyle::replacePropertyInStyleText):
1715         (WebCore::InspectorStyleSheet::create):
1716         (WebCore::InspectorStyleSheet::InspectorStyleSheet):
1717         (WebCore::InspectorStyleSheetForInlineStyle::create):
1718         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
1719         (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
1720         * inspector/InspectorStyleSheet.h:
1721         (WebCore::InspectorStyle::cssStyle):
1722         (WebCore::InspectorStyleSheet::pageStyleSheet):
1723
1724 2010-12-24  Justin Schuh  <jschuh@chromium.org>
1725
1726         Reviewed by Nikolas Zimmermann.
1727
1728         SVGElementInstance::m_useElement should be cleared when use element is removed from document
1729         https://bugs.webkit.org/show_bug.cgi?id=51486
1730
1731         Test: svg/custom/use-instanceRoot-with-use-removed.svg
1732
1733         * svg/SVGElementInstance.cpp:
1734         (WebCore::SVGElementInstance::invalidateAllInstancesOfElement):
1735         * svg/SVGElementInstance.h:
1736         (WebCore::SVGElementInstance::clearUseElement):
1737         * svg/SVGUseElement.cpp:
1738         (WebCore::SVGUseElement::removedFromDocument):
1739         (WebCore::ShadowTreeUpdateBlocker::if):
1740         (WebCore::SVGUseElement::detachInstance):
1741         (WebCore::SVGUseElement::detach):
1742         * svg/SVGUseElement.h:
1743
1744 2010-12-23  Joseph Pecoraro  <joepeck@webkit.org>
1745
1746         Reviewed by Yury Semikhatsky.
1747
1748         Web Inspector: Missing Localized Strings
1749         https://bugs.webkit.org/show_bug.cgi?id=51542
1750
1751         Added missing strings: "WebSocket",  "Frames", "Text", "Transfer",
1752         "Preserve Log upon Navigation", and "Go to Line".
1753
1754         * English.lproj/localizedStrings.js:
1755
1756 2010-12-24  Alexander Pavlov  <apavlov@chromium.org>
1757
1758         Reviewed by Yury Semikhatsky.
1759
1760         Web Inspector: Inline HTML style property out of sync with element.style in Sidebar
1761         https://bugs.webkit.org/show_bug.cgi?id=51478
1762
1763         Now the element attribute modifications (including "style") are tracked, which results in the
1764         source offsets update (in the backend) and Styles/Metrics pane updates (in the frontend)
1765         on the "style" attribute modification through the Elements tree. Also, it appears that
1766         a complete "style" attribute removal destroys the inline style declaration
1767         (StyledElement::m_inlineStyleDecl), while the code used to rely on it being immutable (hence a crash).
1768
1769         Test: inspector/elements-delete-inline-style.html
1770
1771         * inspector/InspectorCSSAgent.cpp:
1772         (WebCore::InspectorCSSAgent::didModifyDOMAttr):
1773         * inspector/InspectorCSSAgent.h:
1774         * inspector/InspectorDOMAgent.cpp:
1775         (WebCore::InspectorDOMAgent::didModifyDOMAttr):
1776         * inspector/InspectorDOMAgent.h:
1777         * inspector/InspectorStyleSheet.cpp:
1778         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
1779         (WebCore::InspectorStyleSheetForInlineStyle::didModifyElementAttribute):
1780         (WebCore::InspectorStyleSheetForInlineStyle::text):
1781         (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
1782         (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
1783         * inspector/InspectorStyleSheet.h:
1784         * inspector/front-end/ElementsTreeOutline.js:
1785         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
1786
1787 2010-12-24  Noel Gordon  <noel.gordon@gmail.com>
1788
1789         Reviewed by Andreas Kling.
1790
1791         [chromium] Fix a style nit in the JPEG encoder
1792         https://bugs.webkit.org/show_bug.cgi?id=51574
1793
1794         * platform/image-encoders/skia/JPEGImageEncoder.cpp: nit begone.
1795
1796 2010-12-23  Alexander Pavlov  <apavlov@chromium.org>
1797
1798         Reviewed by Maciej Stachowiak.
1799
1800         Web Inspector: CSS shorthand properties expand unnecessarily
1801         https://bugs.webkit.org/show_bug.cgi?id=36304
1802
1803         "border-radius" is a shorthand property that has a "non-standard" format and longhands, see
1804         http://www.w3.org/TR/css3-background/#border-radius for reference. CSSParser does not use the
1805         standard parseShorthand() or parse4Values() methods but instead a custom parseBorderRadius() method.
1806         This method didn't use to create a ShorthandScope instance and set the m_implicitShorthand value
1807         appropriately when adding implicit longhands, thus they were added as normal properties
1808         found in the CSS (neither implicit, nor longhands). This is now fixed.
1809
1810         * css/CSSParser.cpp:
1811         (WebCore::CSSParser::parseBorderRadius):
1812
1813 2010-12-24  Justin Schuh  <jschuh@chromium.org>
1814
1815         Reviewed by Darin Adler.
1816
1817         setTargetAttributeAnimatedValue should check for a null shadowTreeElement.
1818         https://bugs.webkit.org/show_bug.cgi?id=51576
1819
1820         Disallowed elements may be pruned from the shadow tree, leaving a null
1821         shadowTreeElement. We should check for that before setting attributes.
1822
1823         Test: svg/custom/animate-disallowed-use-element.svg
1824
1825         * svg/SVGAnimationElement.cpp:
1826         (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
1827
1828 2010-12-24  Evan Martin  <evan@chromium.org>
1829
1830         Reviewed by Darin Adler.
1831
1832         TextMetrics::width is an integer, but the member is a float
1833         https://bugs.webkit.org/show_bug.cgi?id=51566
1834
1835         Change the return type to a float.
1836
1837         No tests, fixing a compiler warning.
1838         (I was unable to produce a difference in the values exposed to pages
1839         with a float versus the previous conversion to an integer.)
1840
1841         * html/TextMetrics.h:
1842         (WebCore::TextMetrics::width):
1843
1844 2010-12-24  Ryuan Choi  <ryuan.choi@samsung.com>
1845
1846         Reviewed by Kenneth Rohde Christiansen.
1847
1848         [EFL] Add option to enable Touch Events.
1849         https://bugs.webkit.org/show_bug.cgi?id=49125
1850
1851         Add files for EFL to support TOUCH_EVENTS.
1852
1853         * CMakeLists.txt:
1854         * CMakeListsEfl.txt:
1855         * platform/PlatformTouchEvent.h: Add EFL related constructor.
1856         * platform/PlatformTouchPoint.h: ditto.
1857         * platform/efl/PlatformTouchEventEfl.cpp: Added.
1858         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
1859         * platform/efl/PlatformTouchPointEfl.cpp: Added.
1860         (WebCore::PlatformTouchPoint::PlatformTouchPoint):
1861
1862 2010-12-24  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1863
1864         Reviewed by Kenneth Rohde Christiansen.
1865
1866         [EFL] Return an empty string instead of 'application/octet-stream' in getMIMETypeForExtension()
1867         https://bugs.webkit.org/show_bug.cgi?id=51457
1868
1869         WebKit EFL can't play html5 audio because of wrong mime type checking.
1870         So, 'application/octet-stream' is changed with an empty string.
1871
1872         * platform/efl/MIMETypeRegistryEfl.cpp:
1873         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
1874         Returns an empty string instead of application/octet-stream when it can't find proper mime type.
1875
1876 2010-12-24  Justin Schuh  <jschuh@chromium.org>
1877
1878         Reviewed by Darin Adler.
1879
1880         SVGFontFaceElement::rebuildFontFace() should exit when not in document
1881         https://bugs.webkit.org/show_bug.cgi?id=51571
1882
1883         We were hitting a NULL deref crash. Since most of the callers checked
1884         inDocument() anyway, I moved it into the start of rebuildFontFace.
1885
1886         Test: svg/custom/use-invalid-font-face.svg
1887
1888         * svg/SVGFontFaceElement.cpp:
1889         (WebCore::SVGFontFaceElement::parseMappedAttribute):
1890         (WebCore::SVGFontFaceElement::rebuildFontFace):
1891         (WebCore::SVGFontFaceElement::childrenChanged):
1892
1893 2010-12-24  Justin Schuh  <jschuh@chromium.org>
1894
1895         Reviewed by Darin Adler.
1896
1897         Remove unnecessary check in CSSCanvasValue::canvasDestroyed().
1898         https://bugs.webkit.org/show_bug.cgi?id=51564
1899
1900         This check was duplicating an ASSERT for a case fixed in r73927.
1901         Now that the bug is fixed the check is no longer necessary.
1902
1903         Removing dead code, so no new tests needed.
1904
1905         * css/CSSCanvasValue.cpp:
1906         (WebCore::CSSCanvasValue::canvasDestroyed):
1907
1908 2010-12-23  Evan Martin  <evan@chromium.org>
1909
1910         Reviewed by Darin Adler.
1911
1912         ViewportArguments.h uses an enum to intialize a bool
1913         https://bugs.webkit.org/show_bug.cgi?id=50982
1914
1915         Initialize userScalable to true, rather than -1.
1916         No tests; fixes a compiler warning.
1917
1918         * dom/ViewportArguments.h:
1919         (WebCore::ViewportArguments::ViewportArguments):
1920
1921 2010-12-23  Jan Erik Hanssen  <jhanssen@sencha.com>
1922
1923         Reviewed by Adam Barth.
1924
1925         [Qt] User name/password stripped from URLs
1926         https://bugs.webkit.org/show_bug.cgi?id=36232
1927
1928         If a username but no password or no username but a password is present
1929         in a URL, QtWebKit won't send any authentication information down to Qt
1930         as it should.
1931
1932         Tests: http/tests/xmlhttprequest/basic-auth-nopassword.html
1933                http/tests/xmlhttprequest/basic-auth-nouser.html
1934
1935         * platform/network/qt/ResourceHandleQt.cpp:
1936         (WebCore::ResourceHandle::start):
1937         (WebCore::ResourceHandle::loadResourceSynchronously):
1938
1939 2010-12-23  Ryosuke Niwa  <rniwa@webkit.org>
1940
1941         Reviewed by Darin Adler.
1942
1943         queryCommandValue("FormatBlock") does not respect editing boundaries
1944         https://bugs.webkit.org/show_bug.cgi?id=51219
1945
1946         Fixed the bug by checking the element we found in elementForFormatBlockCommand
1947         does not contain the editable root.
1948
1949         * editing/FormatBlockCommand.cpp:
1950         (WebCore::FormatBlockCommand::elementForFormatBlockCommand):
1951
1952 2010-12-23  Ryosuke Niwa  <rniwa@webkit.org>
1953
1954         Reviewed by Darin Adler.
1955
1956         FormatBlock doesn't preserve typing style but it should
1957         https://bugs.webkit.org/show_bug.cgi?id=51140
1958
1959         Fixed the bug by making preserveTypingStyle return true.
1960
1961         Test: editing/execCommand/format-block-typing-style.html
1962
1963         * editing/FormatBlockCommand.h:
1964         (WebCore::FormatBlockCommand::preservesTypingStyle):
1965
1966 2010-12-23  Jessie Berlin  <jberlin@apple.com>
1967
1968         Reviewed by Sam Weinig.
1969
1970         Need WebKit2 API to create a SecurityOrigin from protocol, host, and port
1971         https://bugs.webkit.org/show_bug.cgi?id=51563
1972
1973         Add SecurityOrigin::create(const String& protocol, const String& host, int port).
1974
1975         * WebCore.exp.in:
1976         Export the symbols for WebCore::SecurityOrigin::create(String, String, int).
1977
1978         * page/SecurityOrigin.cpp:
1979         (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
1980         Use the constant MaxAllowedPort.
1981         (WebCore::SecurityOrigin::create):
1982         Sanitizing based off of that done in createFromDatabaseIdentifier.
1983         * page/SecurityOrigin.h:
1984
1985 2010-12-23  Patrick Gansterer  <paroga@webkit.org>
1986
1987         Unreviewed build fix for WinCE after r73802.
1988
1989         Reapply r70812:
1990         Port ContextMenuItemWin.cpp to WinCE
1991         https://bugs.webkit.org/show_bug.cgi?id=48407
1992
1993         * platform/win/ContextMenuItemWin.cpp:
1994
1995 2010-12-23  Adam Barth  <abarth@webkit.org>
1996
1997         Remove include of non-existant file.
1998
1999         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2000
2001 2010-12-23  Ryosuke Niwa  <rniwa@webkit.org>
2002
2003         Reviewed by Darin Adler.
2004
2005         Selection becomes stale when CharacterData is manipulated directly
2006         https://bugs.webkit.org/show_bug.cgi?id=51389
2007
2008         The bug was caused by SelectionController's not adjusting selection when CharacterData's
2009         m_data is modified by its API.
2010
2011         Fixed the bug by adding textWillBeReplaced to SelectionController and calling it in
2012         CharacterData::textWillBeReplaced. Added newLength to setDataAndUpdate, which is passed to
2013         textWillBeReplaced because inserting, replacing, or removing data may require moving
2014         the offset of the selection end points (done by shouldRemovePositionAfterAdoptingTextReplacement).
2015
2016         Also fixed the condition for determining whether or not a node intersects the selection
2017         in respondToNodeModification, which is extracted from nodeWillBeRemoved. The old condition
2018         failed to recognize certain cases when selection started and ended with non-zero offsets.
2019
2020         Tests: editing/selection/character-data-mutation-crash.html
2021                editing/selection/character-data-mutation.html
2022
2023         * dom/CharacterData.cpp:
2024         (WebCore::CharacterData::setData): Passes newLegnth to setDataAndUpdate.
2025         (WebCore::CharacterData::appendData): Ditto.
2026         (WebCore::CharacterData::insertData): Ditto.
2027         (WebCore::CharacterData::deleteData): Ditto.
2028         (WebCore::CharacterData::replaceData): Ditto.
2029         (WebCore::CharacterData::setDataAndUpdate): Added newLegnth to the argument list,
2030         and renamed lengthOfReplacedData to oldLength; calls textWillBeReplaced.
2031         * dom/CharacterData.h:
2032         * editing/SelectionController.cpp:
2033         (WebCore::removingNodeRemovesPosition): Removed indentations from blank lines.
2034         (WebCore::SelectionController::nodeWillBeRemoved): Calls nodeWillBeRemoved.
2035         (WebCore::SelectionController::respondToNodeModification): Extracted from nodeWillBeRemoved;
2036         fixed the logic to figure out whether a node is inside the range or not.
2037         (WebCore::shouldRemovePositionAfterAdoptingTextReplacement): Added.
2038         (WebCore::SelectionController::textWillBeReplaced): Added.
2039         * editing/SelectionController.h:
2040
2041 2010-12-23  Adam Barth  <abarth@webkit.org>
2042
2043         Reviewed by Darin Adler.
2044
2045         Remove unneeded V8 bindings files
2046         https://bugs.webkit.org/show_bug.cgi?id=51570
2047
2048         * WebCore.gypi:
2049         * bindings/generic/BindingDOMWindow.h: Removed.
2050         * bindings/v8/specialization/V8BindingDOMWindow.h: Removed.
2051
2052 2010-12-23  Dan Bernstein  <mitz@apple.com>
2053
2054         Build fix.
2055
2056         * editing/EditorCommand.cpp:
2057         (WebCore::enabledDismissCorrectionPanel):
2058
2059 2010-12-23  Darin Adler  <darin@apple.com>
2060
2061         Try to fix crash seen on GTK bot.
2062
2063         * editing/EditorCommand.cpp:
2064         (WebCore::internalCommand): Add back empty string check I accidentally deleted in r74580.
2065
2066         * WebCore.xcodeproj/project.pbxproj: Let Xcode edit the file.
2067
2068 2010-12-23  Sheriff Bot  <webkit.review.bot@gmail.com>
2069
2070         Unreviewed, rolling out r74561.
2071         http://trac.webkit.org/changeset/74561
2072         https://bugs.webkit.org/show_bug.cgi?id=51565
2073
2074         "Broke Chromium UI tests on Vista" (Requested by kbr_google on
2075         #webkit).
2076
2077         * platform/graphics/chromium/ImageLayerChromium.cpp:
2078         (WebCore::ImageLayerChromium::updateContentsIfDirty):
2079         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2080         (WebCore::GraphicsContext3D::getImageData):
2081
2082 2010-12-23  Mihai Parparita  <mihaip@chromium.org>
2083
2084         Reviewed by Kent Tamura.
2085
2086         [Chromium] Add WebThemeEngine for Mac to allow scrollbar rendering to be overridden for the DRT
2087         https://bugs.webkit.org/show_bug.cgi?id=51507
2088         
2089         Adds WebThemeEngine for the Mac (it already has parallel definitions for
2090         Windows and Linux) so that scrollbar thumb rendering can be overridden
2091         for the DRT (to be consistent with the NSScroller-based rendering
2092         used by the Mac port).
2093
2094         No new tests since the functionality is not exposed yet. Eventually will
2095         result in the Chromium/Mac port being able to use the same pixel
2096         baselines for layout tests as the Mac port.
2097
2098         * platform/chromium/ChromiumBridge.h:
2099         * platform/chromium/ScrollbarThemeChromiumMac.mm:
2100         (WebCore::scrollbarStateToThemeState):
2101         (WebCore::ScrollbarThemeChromiumMac::paint):
2102
2103 2010-12-23  Darin Adler  <darin@apple.com>
2104
2105         Reviewed by Sam Weinig.
2106
2107         WKView should not try to do asynchronous validation for selectors that are not editor commands
2108         https://bugs.webkit.org/show_bug.cgi?id=51555
2109
2110         * WebCore.exp.in: Added commandIsSupportedFromMenuOrKeyBinding.
2111         * editing/Editor.h: Reordered arguments in the Editor::Command constructor
2112         and the data members too so the frame is last. Added
2113         commandIsSupportedFromMenuOrKeyBinding.
2114
2115         * editing/EditorCommand.cpp:
2116         (WebCore::supported): Removed the EditorCommandSource argument. These
2117         functions are now only used when called from DOM.
2118         (WebCore::supportedFromMenuOrKeyBinding): Ditto.
2119         (WebCore::supportedCopyCut): Ditto.
2120         (WebCore::supportedPaste): Ditto.
2121         (WebCore::enabledDismissCorrectionPanel): Changed the supported function to
2122         an enabled function. It was incorrect to say that this is "supported" only
2123         when the correction panel is up. Correct to say that it is "enabled" only
2124         then. And also probably OK to enable it even when the selection is not in
2125         editable text, as long as the panel is up.
2126         (WebCore::createCommandMap): Moved conditional commands out of the main
2127         array into a separate section at the end.
2128         (WebCore::internalCommand): Added.
2129         (WebCore::Editor::command): Changed to use the new internalCommand function
2130         and simplified by relying on the null check in the Command constructor.
2131         (WebCore::Editor::commandIsSupportedFromMenuOrKeyBinding): Added.
2132         (WebCore::Editor::Command::Command): Removed unneeded initialization of
2133         m_source, which is never looked at if m_command is 0. Added feature of
2134         passing a null command pointer to the non-default constructor.
2135         (WebCore::Editor::Command::isSupported): Changed to only call the
2136         per-command isSupported function when the command source is DOM.
2137         Accordingly that function is now called isSupportedFromDOM.
2138
2139 2010-12-23  Matthew Delaney  <mdelaney@apple.com>
2140
2141         Reviewed by Simon Fraser.
2142
2143         Incorrect layer property used noted as changed in GraphicsLayerCA::setAcceleratesDrawing
2144         https://bugs.webkit.org/show_bug.cgi?id=51560
2145
2146         No new tests.
2147
2148         * platform/graphics/ca/GraphicsLayerCA.cpp:
2149         (WebCore::GraphicsLayerCA::setAcceleratesDrawing):
2150
2151 2010-12-23  Jan Erik Hanssen  <jhanssen@sencha.com>
2152
2153         Reviewed by Andreas Kling.
2154
2155         [Qt] copy and paste greek symbols to Word, TextEdit results in ?'s being shown
2156         https://bugs.webkit.org/show_bug.cgi?id=35635
2157
2158         Explicitly set text/html data on QClipboard as UTF-8 and also include a <meta>
2159         tag informing the OS that the data is in UTF-8 format.
2160
2161         * platform/qt/PasteboardQt.cpp:
2162         (WebCore::Pasteboard::writeSelection):
2163
2164 2010-12-23  Justin Schuh  <jschuh@chromium.org>
2165
2166         Reviewed by Eric Seidel.
2167
2168         CSSCursorImageValue destructor should clear referenced element.
2169         https://bugs.webkit.org/show_bug.cgi?id=51417
2170
2171         Calls correct method to clear image and renames method to avoid future confusion.
2172
2173         Test: svg/css/cursor-image-replace.svg
2174
2175         * css/CSSCursorImageValue.cpp:
2176         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
2177         * svg/SVGElement.cpp:
2178         (WebCore::SVGElement::cursorImageValueRemoved):
2179         * svg/SVGElement.h:
2180
2181 2010-12-22  Sam Weinig  <sam@webkit.org>
2182
2183         Reviewed by Darin Adler.
2184
2185         WebKit2 needs to mirror the frame tree in the UIProcess
2186         https://bugs.webkit.org/show_bug.cgi?id=51546
2187
2188         - Add client functions to notify that a frame has been added or
2189           removed from the page cache.
2190
2191         * history/CachedFrame.cpp:
2192         (WebCore::CachedFrameBase::restore):
2193         (WebCore::CachedFrame::CachedFrame):
2194         * history/CachedFrame.h:
2195         * loader/EmptyClients.h:
2196         (WebCore::EmptyFrameLoaderClient::didSaveToPageCache):
2197         (WebCore::EmptyFrameLoaderClient::didRestoreFromPageCache):
2198         * loader/FrameLoaderClient.h:
2199
2200 2010-12-22  Matthew Delaney  <mdelaney@apple.com>
2201
2202         Reviewed by Simon Fraser.
2203
2204         Add setNeedsStyleRecalc for getting canvas contexts that use IOSurfaces
2205         This patch also changes USE_IOSURFACE to instead follow USE(IOSURFACE)
2206         https://bugs.webkit.org/show_bug.cgi?id=51279
2207
2208         * html/HTMLCanvasElement.cpp: For IOSurface, use setNeedsStyleRecalc
2209         * html/canvas/CanvasRenderingContext2D.cpp: Use new flag
2210         * platform/graphics/ImageBuffer.h: Use new flag
2211         * platform/graphics/cg/ImageBufferCG.cpp: Use new flag
2212
2213 2010-12-20  Adrienne Walker  <enne@google.com>
2214
2215         Reviewed by Kenneth Russell.
2216
2217         [chromium] Tile root layer of the compositor.
2218         https://bugs.webkit.org/show_bug.cgi?id=49947
2219
2220         Refactor root layer update and drawing from LayerRendererChromium into
2221         LayerTilerChromium.  The root layer is now drawn as multiple tiles
2222         rather than as one single large texture.  Scrollbars are now drawn
2223         separately rather than as part of the root layer.
2224
2225         Test: LayoutTests/compositing/
2226
2227         * WebCore.gypi:
2228         * page/FrameView.cpp:
2229         (WebCore::FrameView::repaintContentRectangle):
2230         * platform/ScrollView.cpp:
2231         (WebCore::ScrollView::ScrollView):
2232         (WebCore::ScrollView::setClipsRepaints):
2233         * platform/ScrollView.h:
2234         (WebCore::ScrollView::clipsRepaints):
2235         * platform/graphics/chromium/LayerChromium.h:
2236         * platform/graphics/chromium/LayerRendererChromium.cpp:
2237         (WebCore::LayerRendererChromium::LayerRendererChromium):
2238         (WebCore::LayerRendererChromium::~LayerRendererChromium):
2239         (WebCore::LayerRendererChromium::useShader):
2240         (WebCore::LayerRendererChromium::verticalScrollbarRect):
2241         (WebCore::LayerRendererChromium::horizontalScrollbarRect):
2242         (WebCore::LayerRendererChromium::invalidateRootLayerRect):
2243         (WebCore::LayerRendererChromium::updateAndDrawRootLayer):
2244         (WebCore::LayerRendererChromium::drawLayers):
2245         (WebCore::LayerRendererChromium::setRootLayer):
2246         (WebCore::LayerRendererChromium::initializeSharedObjects):
2247         (WebCore::LayerRendererChromium::cleanupSharedObjects):
2248         * platform/graphics/chromium/LayerRendererChromium.h:
2249         * platform/graphics/chromium/LayerTilerChromium.cpp: Added.
2250         (WebCore::LayerTilerChromium::create):
2251         (WebCore::LayerTilerChromium::LayerTilerChromium):
2252         (WebCore::LayerTilerChromium::~LayerTilerChromium):
2253         (WebCore::LayerTilerChromium::layerRendererContext):
2254         (WebCore::LayerTilerChromium::setTileSize):
2255         (WebCore::LayerTilerChromium::reset):
2256         (WebCore::LayerTilerChromium::createTile):
2257         (WebCore::LayerTilerChromium::invalidateTiles):
2258         (WebCore::LayerTilerChromium::contentRectToTileIndices):
2259         (WebCore::LayerTilerChromium::contentRectToLayerRect):
2260         (WebCore::LayerTilerChromium::layerRectToContentRect):
2261         (WebCore::LayerTilerChromium::tileIndex):
2262         (WebCore::LayerTilerChromium::tileContentRect):
2263         (WebCore::LayerTilerChromium::tileLayerRect):
2264         (WebCore::LayerTilerChromium::invalidateRect):
2265         (WebCore::LayerTilerChromium::invalidateEntireLayer):
2266         (WebCore::LayerTilerChromium::update):
2267         (WebCore::LayerTilerChromium::setLayerPosition):
2268         (WebCore::LayerTilerChromium::draw):
2269         (WebCore::LayerTilerChromium::resizeLayer):
2270         (WebCore::LayerTilerChromium::growLayerToContain):
2271         (WebCore::LayerTilerChromium::Tile::~Tile):
2272         (WebCore::LayerTilerChromium::Tile::releaseTextureId):
2273         * platform/graphics/chromium/LayerTilerChromium.h: Added.
2274         (WebCore::LayerTilerChromium::Tile::Tile):
2275         (WebCore::LayerTilerChromium::Tile::textureId):
2276         (WebCore::LayerTilerChromium::Tile::dirty):
2277         (WebCore::LayerTilerChromium::Tile::clearDirty):
2278         (WebCore::LayerTilerChromium::layerRenderer):
2279
2280 2010-12-22  Ryosuke Niwa  <rniwa@webkit.org>
2281
2282         Reviewed by Eric Seidel.
2283
2284         Editor.h doesn't need to include SelectionController.h
2285         https://bugs.webkit.org/show_bug.cgi?id=51441
2286
2287         Removed #include <Selection.h> from Editor.h.
2288         Also extracted WritingDirection.h from EditingStyle.h and renamed SelectionController::EDirection
2289         to SelectionDirection and moved its declaration from SelectionController.h to VisibleSelection.h
2290
2291         * WebCore.exp.in: Signature changes.
2292         * WebCore.xcodeproj/project.pbxproj: Added WritingDirection.h
2293         * accessibility/AccessibilityRenderObject.cpp:
2294         (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine): Change due to SelectionDirection.
2295         * editing/EditingStyle.h: Removed WritingDirection and included WritingDirection.h
2296         * editing/Editor.cpp:
2297         (WebCore::Editor::deleteWithDirection): Change due to SelectionDirection.
2298         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto.
2299         (WebCore::Editor::markMisspellingsAfterTypingToWord): Ditto.
2300         * editing/Editor.h: Removed SelectionController.h; added DocumentMarker.h, Timer.h, VisibleSelection.h
2301         and WritingDirection.h; forward declared CSSMutableStyleDeclaration.
2302         * editing/EditorCommand.cpp:
2303         (WebCore::executeDeleteBackward): Change due to SelectionDirection.
2304         (WebCore::executeDeleteBackwardByDecomposingPreviousCharacter): Ditto.
2305         (WebCore::executeDeleteForward): Ditto.
2306         (WebCore::executeDeleteToBeginningOfLine): Ditto.
2307         (WebCore::executeDeleteToBeginningOfParagraph): Ditto.
2308         (WebCore::executeDeleteToEndOfLine): Ditto.
2309         (WebCore::executeDeleteToEndOfParagraph): Ditto.
2310         (WebCore::executeDeleteWordBackward): Ditto.
2311         (WebCore::executeDeleteWordForward): Ditto.
2312         (WebCore::executeForwardDelete): Ditto.
2313         (WebCore::executeMoveBackward): Ditto.
2314         (WebCore::executeMoveBackwardAndModifySelection): Ditto.
2315         (WebCore::executeMoveDown): Ditto.
2316         (WebCore::executeMoveDownAndModifySelection): Ditto.
2317         (WebCore::executeMoveForward): Ditto.
2318         (WebCore::executeMoveForwardAndModifySelection): Ditto.
2319         (WebCore::executeMoveLeft): Ditto.
2320         (WebCore::executeMoveLeftAndModifySelection): Ditto.
2321         (WebCore::executeMoveRight): Ditto.
2322         (WebCore::executeMoveRightAndModifySelection): Ditto.
2323         (WebCore::executeMoveToBeginningOfDocument): Ditto.
2324         (WebCore::executeMoveToBeginningOfDocumentAndModifySelection): Ditto.
2325         (WebCore::executeMoveToBeginningOfLine): Ditto.
2326         (WebCore::executeMoveToBeginningOfLineAndModifySelection): Ditto.
2327         (WebCore::executeMoveToBeginningOfParagraph): Ditto.
2328         (WebCore::executeMoveToBeginningOfParagraphAndModifySelection): Ditto.
2329         (WebCore::executeMoveToBeginningOfSentence): Ditto.
2330         (WebCore::executeMoveToBeginningOfSentenceAndModifySelection): Ditto.
2331         (WebCore::executeMoveToEndOfDocument): Ditto.
2332         (WebCore::executeMoveToEndOfDocumentAndModifySelection): Ditto.
2333         (WebCore::executeMoveToEndOfSentence): Ditto.
2334         (WebCore::executeMoveToEndOfSentenceAndModifySelection): Ditto.
2335         (WebCore::executeMoveToEndOfLine): Ditto.
2336         (WebCore::executeMoveToEndOfLineAndModifySelection): Ditto.
2337         (WebCore::executeMoveToEndOfParagraph): Ditto.
2338         (WebCore::executeMoveToEndOfParagraphAndModifySelection): Ditto.
2339         (WebCore::executeMoveParagraphBackwardAndModifySelection): Ditto.
2340         (WebCore::executeMoveParagraphForwardAndModifySelection): Ditto.
2341         (WebCore::executeMoveUp): Ditto.
2342         (WebCore::executeMoveUpAndModifySelection): Ditto.
2343         (WebCore::executeMoveWordBackward): Ditto.
2344         (WebCore::executeMoveWordBackwardAndModifySelection): Ditto.
2345         (WebCore::executeMoveWordForward): Ditto.
2346         (WebCore::executeMoveWordForwardAndModifySelection): Ditto.
2347         (WebCore::executeMoveWordLeft): Ditto.
2348         (WebCore::executeMoveWordLeftAndModifySelection): Ditto.
2349         (WebCore::executeMoveWordRight): Ditto.
2350         (WebCore::executeMoveWordRightAndModifySelection): Ditto.
2351         (WebCore::executeMoveToLeftEndOfLine): Ditto.
2352         (WebCore::executeMoveToLeftEndOfLineAndModifySelection): Ditto.
2353         (WebCore::executeMoveToRightEndOfLine): Ditto.
2354         (WebCore::executeMoveToRightEndOfLineAndModifySelection): Ditto.
2355         * editing/SelectionController.cpp:
2356         (WebCore::SelectionController::willBeModified): Takes SelectionDirection instead of EDirection.
2357         (WebCore::SelectionController::modify): Ditto.
2358         * editing/SelectionController.h: Change due to SelectionDirection.
2359         * editing/TypingCommand.cpp:
2360         (WebCore::TypingCommand::deleteKeyPressed): Ditto.
2361         (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
2362         * editing/VisibleSelection.h: Added SelectionDirection, renamed and moved from EDirection
2363         in SelectionController.h
2364         * editing/WritingDirection.h: Added.
2365         * page/DOMSelection.cpp:
2366         (WebCore::DOMSelection::modify): Change due to SelectionDirection.
2367         (WebCore::DOMSelection::deleteFromDocument): Ditto.
2368         * page/EventHandler.cpp:
2369         (WebCore::EventHandler::handleKeyboardSelectionMovement): Ditto.
2370         * page/Frame.h: Includes SelectionController.h.
2371
2372 2010-12-23  Adam Barth  <abarth@webkit.org>
2373
2374         Reviewed by Darin Adler.
2375
2376         Move V8 to WebCore's implementation of showModalDialog
2377         https://bugs.webkit.org/show_bug.cgi?id=51527
2378
2379         This code is basically verbatim translation from the JavaScriptCore
2380         bindings.  The only intentional difference is in the world selection
2381         for the dialog's frame.  I suspect JavaScriptCore's bindings have a
2382         subtle bug there.
2383
2384         In this patch, I also remove a bunch of now-unneeded code in the
2385         generic bindings.
2386
2387         * bindings/generic/BindingDOMWindow.h:
2388         * bindings/js/JSDOMWindowCustom.cpp:
2389         (WebCore::DialogHandler::dialogCreated):
2390         (WebCore::setUpDialog):
2391         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2392         (WebCore::DialogHandler::DialogHandler):
2393         (WebCore::DialogHandler::dialogCreated):
2394         (WebCore::DialogHandler::returnValue):
2395         (WebCore::setUpDialog):
2396         (WebCore::V8DOMWindow::showModalDialogCallback):
2397         (WebCore::V8DOMWindow::openCallback):
2398         * bindings/v8/specialization/V8BindingDOMWindow.h:
2399
2400 2010-12-23  Alexander Pavlov  <apavlov@chromium.org>
2401
2402         Reviewed by Joseph Pecoraro.
2403
2404         Web Inspector: Can't backspace from CSS value to CSS key field
2405         https://bugs.webkit.org/show_bug.cgi?id=51476
2406
2407         * inspector/front-end/StylesSidebarPane.js:
2408         (WebInspector.StylePropertyTreeElement.prototype.):
2409         (WebInspector.StylePropertyTreeElement.prototype):
2410
2411 2010-12-23  W. James MacLean  <wjmaclean@chromium.org>
2412
2413         Reviewed by Kenneth Russell.
2414
2415         [chromium] Add asserts to test for contiguous-pixel Skia bitmaps.
2416         https://bugs.webkit.org/show_bug.cgi?id=51186
2417
2418         No new tests. Behaviour not changed, but need the asserts to detect when assumptions violated.
2419
2420         * platform/graphics/chromium/ImageLayerChromium.cpp:
2421         (WebCore::ImageLayerChromium::updateContentsIfDirty):
2422         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2423         (WebCore::GraphicsContext3D::getImageData):
2424
2425 2010-12-23  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
2426
2427         Reviewed by Kenneth Rohde Christiansen.
2428
2429         Fix check by undefined macro
2430         https://bugs.webkit.org/show_bug.cgi?id=51531
2431
2432         Fix check by undefined macro
2433
2434         When building EFL port with libsoup, BUILDING_GTK__ is not defined,
2435         leading to warnings during compile. We actually have to use an #ifdef
2436         instead of an #if.
2437
2438         No change in functionality so no new tests.
2439
2440         * platform/network/soup/cache/webkit/soup-cache.h:
2441
2442 2010-12-23  Jonathan Dixon  <joth@chromium.org>
2443
2444         Reviewed by Steve Block.
2445
2446         TouchEvents does not support multi-touch on a page with multiple touch targets
2447         https://bugs.webkit.org/show_bug.cgi?id=51258
2448
2449         Test: fast/events/touch/multi-touch-grouped-targets.html
2450
2451         * page/EventHandler.cpp:
2452         (WebCore::eventNameForTouchPointState):
2453         (WebCore::EventHandler::handleTouchEvent):
2454         Redesigned event handler to ensure all event targets involved in a given
2455         multitouch event get the appropriate event(s) fired.
2456
2457         * platform/PlatformTouchPoint.h: Added end-stop marker for State enum.
2458
2459 2010-12-23  Philippe Normand  <pnormand@igalia.com>
2460
2461         Reviewed by Xan Lopez.
2462
2463         [GTK] media/audio-data-url.html fails since r75504
2464         https://bugs.webkit.org/show_bug.cgi?id=51525
2465
2466         Make the GStreamer media-player advertize 3gpp mime-types as
2467         supported if the 3gp caps are in the typefind factories.
2468
2469         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2470         (WebCore::mimeTypeCache):
2471
2472 2010-12-23  Kent Tamura  <tkent@chromium.org>
2473
2474         Reviewed by Dimitri Glazkov.
2475
2476         Refactor HTMLInputElement: Move a part of HTMLInputElement::defaultEventHandler()
2477         to InputTypes.
2478         https://bugs.webkit.org/show_bug.cgi?id=51093
2479
2480         Move BeforeTextInserted and Wheel event handling, event forwarding to
2481         renderers, and the isindex form submission quirk code to InputTypes.
2482         Also, change the return types of InputType event handlers from 'bool'
2483         to 'void'. We use Event::defaultHandled() to decide whether event
2484         handling should be stopped.
2485
2486         No new tests because this is just a refactoring.
2487
2488         * html/BaseButtonInputType.cpp: bool->void changes
2489         (WebCore::BaseButtonInputType::handleKeydownEvent):
2490         (WebCore::BaseButtonInputType::handleKeypressEvent):
2491         (WebCore::BaseButtonInputType::handleKeyupEvent):
2492         * html/BaseButtonInputType.h: ditto.
2493         * html/BaseCheckableInputType.cpp: ditto.
2494         (WebCore::BaseCheckableInputType::handleKeydownEvent):
2495         (WebCore::BaseCheckableInputType::handleKeypressEvent):
2496         * html/BaseCheckableInputType.h: ditto.
2497         * html/BaseDateAndTimeInputType.cpp:
2498         (WebCore::BaseDateAndTimeInputType::handleKeydownEvent): ditto.
2499         (WebCore::BaseDateAndTimeInputType::handleWheelEvent): Just calls handleWheelEventForSpinButton().
2500         * html/BaseDateAndTimeInputType.h: bool->void change and handleWhellEvent() addition.
2501         * html/CheckboxInputType.cpp: bool->void change
2502         (WebCore::CheckboxInputType::handleKeyupEvent):
2503         * html/CheckboxInputType.h: ditto.
2504         * html/FileInputType.cpp: ditto.
2505         (WebCore::FileInputType::handleDOMActivateEvent):
2506         * html/FileInputType.h: ditto.
2507         * html/HTMLInputElement.cpp:
2508         (WebCore::HTMLInputElement::defaultEventHandler):
2509          - Change return-value handling of InputType event handlers
2510          - Move out beforeTextInserted/wheel event handling and isindex form quirk.
2511         * html/HTMLInputElement.h:
2512         (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent):
2513          Added so that InputType can call InputElement::handleBeforeTextInsertedEvent().
2514         * html/ImageInputType.cpp: bool->void change
2515         (WebCore::ImageInputType::handleDOMActivateEvent):
2516         * html/ImageInputType.h: ditto.
2517         * html/InputType.cpp: ditto.
2518         (WebCore::InputType::handleClickEvent):
2519         (WebCore::InputType::handleDOMActivateEvent):
2520         (WebCore::InputType::handleKeydownEvent):
2521         (WebCore::InputType::handleKeypressEvent):
2522         (WebCore::InputType::handleKeyupEvent):
2523         (WebCore::InputType::handleBeforeTextInsertedEvent):
2524         (WebCore::InputType::handleWheelEvent): Added default implementation.
2525         (WebCore::InputType::forwardEvent): ditto.
2526         (WebCore::InputType::formForSubmission): ditto.
2527         * html/InputType.h:
2528         * html/IsIndexInputType.cpp:
2529         (WebCore::IsIndexInputType::formForSubmission): Moved from HTMLInputElement.cpp.
2530         * html/IsIndexInputType.h:
2531         * html/NumberInputType.cpp:
2532         (WebCore::isNumberCharacter): Moved from HTMLInputElement.cpp.
2533         (WebCore::NumberInputType::handleKeydownEvent): bool->void change.
2534         (WebCore::NumberInputType::handleBeforeTextInsertedEvent): Moved from HTMInputElement.cpp.
2535         (WebCore::NumberInputType::handleWheelEvent): Added. Just calls handleWheelEventForSpinButton().
2536         * html/NumberInputType.h:
2537         * html/RadioInputType.cpp: bool->void changes.
2538         (WebCore::RadioInputType::handleClickEvent):
2539         (WebCore::RadioInputType::handleKeydownEvent):
2540         (WebCore::RadioInputType::handleKeyupEvent):
2541         * html/RadioInputType.h:
2542         * html/RangeInputType.cpp:
2543         (WebCore::RangeInputType::handleKeydownEvent): ditto.
2544         (WebCore::RangeInputType::forwardEvent): Moved from HTMLInputElement.cpp.
2545         * html/RangeInputType.h:
2546         * html/ResetInputType.cpp: bool->void change.
2547         (WebCore::ResetInputType::handleDOMActivateEvent):
2548         * html/ResetInputType.h: ditto.
2549         * html/SubmitInputType.cpp: ditto.
2550         (WebCore::SubmitInputType::handleDOMActivateEvent):
2551         * html/SubmitInputType.h: ditto.
2552         * html/TextFieldInputType.cpp:
2553         (WebCore::TextFieldInputType::handleKeydownEvent): bool->void change.
2554         (WebCore::TextFieldInputType::handleKeydownEventForSpinButton): ditto.
2555         (WebCore::TextFieldInputType::handleWheelEventForSpinButton): Moved from HTMLInputElement.cpp.
2556         (WebCore::TextFieldInputType::forwardEvent): ditto.
2557         * html/TextFieldInputType.h:
2558
2559 2010-12-23  Alexander Pavlov  <apavlov@chromium.org>
2560
2561         Reviewed by Joseph Pecoraro.
2562
2563         Web Inspector: After scrolling new property value and cancelling, removed property remains active in page style
2564         https://bugs.webkit.org/show_bug.cgi?id=51390
2565
2566         * inspector/front-end/StylesSidebarPane.js:
2567         (WebInspector.StylePropertyTreeElement.prototype):
2568
2569 2010-12-23  Noel Gordon  <noel.gordon@gmail.com>
2570
2571         Reviewed by Adam Barth.
2572
2573         [chromium] Reduce canvas.toDataURL("image/png") run-time costs 300%
2574         https://bugs.webkit.org/show_bug.cgi?id=51455
2575
2576         Chromium uses the libpng compression defaults.  Good compression results,
2577         but at much larger run-time cost compared to other browsers.  Chrome is 2
2578         times slower than Mozilla 3.6.12 and 3-4 times slower than Safari 5.0.3.
2579
2580         libpng has supported alternative compression methods for some time, they
2581         better meet the dual goals of good compression and run-time cost for the
2582         on-line case, and are well-documented.  Here use Huffman encoding.  It's
2583         2-20% faster than other encodings (Z_RLE, Z_FILTERED) and the compressed
2584         size is within 1% of the Safari 5.0.3 result independent of image size.
2585
2586         No change in behaviour, so no new tests.
2587
2588         * platform/image-encoders/skia/PNGImageEncoder.cpp:
2589         (WebCore::PNGImageEncoder::encode): Apply Huffman image encoding.
2590
2591 2010-12-22  Noel Gordon  <noel.gordon@gmail.com>
2592
2593         Reviewed by Darin Fisher.
2594
2595         [chromium] Optimize canvas.toDataURL("image/png") unpremultiplication loop
2596         https://bugs.webkit.org/show_bug.cgi?id=51321
2597
2598         Follow on from r73890, unroll the SkUnPreMultiply::PMColorToColor() call for
2599         the "image/png" encoder case viz., compute the unpremultiplication in-place.
2600         See https://bugs.webkit.org/show_bug.cgi?id=50804 for reference.
2601
2602         No new tests: canvas.toDataURL() is covered by existing tests.
2603
2604         * platform/image-encoders/skia/PNGImageEncoder.cpp:
2605         (WebCore::preMultipliedBGRAtoRGBA):
2606
2607 2010-12-22  Ariya Hidayat  <ariya@sencha.com>
2608
2609         Reviewed by Simon Fraser.
2610
2611         Implement skewX() and skewY() for CSSMatrix.
2612         https://bugs.webkit.org/show_bug.cgi?id=38335
2613
2614         * css/WebKitCSSMatrix.cpp:
2615         (WebCore::WebKitCSSMatrix::skew): Implemented skewX() and skewY().
2616         * css/WebKitCSSMatrix.h: Added skewX() and skewY().
2617         * css/WebKitCSSMatrix.idl: Added skewX() and skewY().
2618
2619 2010-12-22  Simon Fraser  <simon.fraser@apple.com>
2620
2621         Reviewed by Dan Bernstein.
2622
2623         Support unprefixed box-shadow property
2624         https://bugs.webkit.org/show_bug.cgi?id=51448
2625         
2626         Add support for the box-shadow CSS property. We'll currently render this
2627         similarly to -webkit-box-shadow, but a later fix will adjust the blur radius
2628         handling to match the spec.
2629
2630         Test: fast/css/box-shadow.html
2631
2632         * css/CSSComputedStyleDeclaration.cpp:
2633         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Implement getComputedStyle
2634         for box-shadow
2635         
2636         * css/CSSParser.cpp:
2637         (WebCore::CSSParser::parseValue):
2638         (WebCore::ShadowParseContext::ShadowParseContext):
2639         (WebCore::ShadowParseContext::commitValue):
2640         (WebCore::ShadowParseContext::commitLength):
2641         (WebCore::ShadowParseContext::commitColor): Support CSSPropertyBoxShadow
2642
2643         * css/CSSPropertyNames.in: add box-shadow
2644
2645         * css/CSSStyleSelector.cpp:
2646         (WebCore::CSSStyleSelector::applyProperty): Add CSSPropertyBoxShadow, and
2647         store in the ShadowData if this is -webkit-box-shadow or not. We'll use this
2648         to adjust radii later.
2649
2650         * css/SVGCSSStyleSelector.cpp:
2651         (WebCore::CSSStyleSelector::applySVGProperty): Add CSSPropertyBoxShadow.
2652         
2653         * page/animation/AnimationBase.cpp:
2654         (WebCore::blendFunc):
2655         (WebCore::PropertyWrapperShadow::blend):
2656         (WebCore::AnimationBase::ensurePropertyMap): Support animations of box-shadow.
2657         
2658         * rendering/style/ShadowData.cpp: Store a flag to say if this is a -webkit-box-shadow.
2659         (WebCore::ShadowData::ShadowData):
2660         (WebCore::ShadowData::operator==):
2661         * rendering/style/ShadowData.h:
2662         (WebCore::ShadowData::ShadowData):
2663         (WebCore::ShadowData::isWebkitBoxShadow):
2664
2665 2010-12-22  Michael Saboff  <msaboff@apple.com>
2666
2667         Reviewed by Sam Weinig.
2668
2669         REGRESSION: Can't shadow/overwrite window.constructor 
2670         (causes TypeError exception)
2671         https://bugs.webkit.org/show_bug.cgi?id=48953
2672
2673         Added code in the javascript code generator to create a setter for
2674         a constructor if the new extended attribute ReplaceableConstructor
2675         is present for the interface.
2676
2677         * bindings/scripts/CodeGeneratorJS.pm:
2678         * page/DOMWindow.idl:
2679
2680 2010-12-22  Steve Lacey  <sjl@chromium.org>
2681
2682         Reviewed by David Levin.
2683
2684         Change css for chromium media controls to deal with the timeline
2685         not expanding when the current time disappears. This happens when
2686         the width of the control drops below 240px.
2687
2688         This change results in a minor pixel difference - the timebar now
2689         aligns better with the time and when the time is not displayed is
2690         now perfectly centered. Disabling the affected tests for now
2691         and will rebaseline.
2692
2693         https://bugs.webkit.org/show_bug.cgi?id=51500
2694
2695         * css/mediaControlsChromium.css:
2696         (audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
2697         (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
2698         (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
2699         (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
2700
2701 2010-12-22  Mihai Parparita  <mihaip@chromium.org>
2702
2703         Reviewed by Simon Fraser.
2704
2705         the shadow direction is negated in canvas context shadowOffsetY.
2706         https://bugs.webkit.org/show_bug.cgi?id=25619
2707         
2708         Invert shadow offset Y direction in 0-blur path in FontMac::drawGlyps
2709         if we're not transforming shadows (i.e. are rendering in a canvas). Also
2710         use CG shadows if there's a non-translate/flip transform applied
2711         (shadow offsets are supposed to ignore transforms, but the naive/simple
2712         implementation was taking them into account).
2713         
2714         Also does the equivalent changes to FontCGWin.
2715
2716         Test: fast/canvas/fillText-shadow.html
2717
2718         * platform/graphics/GraphicsContext.cpp:
2719         (WebCore::GraphicsContext::shadowsIgnoreTransforms):
2720         * platform/graphics/GraphicsContext.h:
2721         * platform/graphics/mac/FontMac.mm:
2722         (WebCore::Font::drawGlyphs):
2723         * platform/graphics/win/FontCGWin.cpp:
2724         (WebCore::Font::drawGlyphs):
2725
2726 2010-12-22  Sheriff Bot  <webkit.review.bot@gmail.com>
2727
2728         Unreviewed, rolling out r74503.
2729         http://trac.webkit.org/changeset/74503
2730         https://bugs.webkit.org/show_bug.cgi?id=51513
2731
2732         breaks chromium mac debug compile (Requested by tonyg-cr on
2733         #webkit).
2734
2735         * platform/graphics/chromium/ImageLayerChromium.cpp:
2736         (WebCore::ImageLayerChromium::updateContentsIfDirty):
2737         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2738         (WebCore::GraphicsContext3D::getImageData):
2739
2740 2010-12-22  Dan Bernstein  <mitz@apple.com>
2741
2742         Reviewed by Darin Adler.
2743
2744         Replace runtime checks for hyphenation API availability with compile-time checks.
2745
2746         * platform/text/cf/HyphenationCF.cpp:
2747         (WebCore::::createValueForNullKey): Changed to use CFLocaleCopyCurrent() instead of using the
2748         search locale, which is empty on Windows. On Mac, this is equivalent to using the search locale.
2749         (WebCore::canHyphenate): Added this implementation for when the hyphenation API is not available.
2750         It is identical to the implementation in Hyphenation.cpp.
2751         (WebCore::lastHyphenLocation): Ditto.
2752
2753 2010-12-22  Simon Fraser  <simon.fraser@apple.com>
2754
2755         Reviewed by Darin Adler.
2756
2757         Cache snapshots of plug-ins before painting, to avoid script running during painting
2758         https://bugs.webkit.org/show_bug.cgi?id=51493
2759         
2760         When FrameView is asked to do a flattening paint (e.g. when Safari snapshots,
2761         or when printing), plug-ins which otherwise use the CA rendering model
2762         are sent a paint event. Some plug-ins may run script while handling this event,
2763         or out of process plug-ins may process queued requests at this time. Running
2764         script while inside layout or painting can have bad consequences, because it
2765         can result in arbitrary changes to the render tree.
2766         
2767         This patch avoids sending plug-ins paint events inside of painting. Instead,
2768         we ask the plug-ins to cache a snapshot before we paint, and then the software
2769         paint simply draws that snapshot.
2770         
2771         Requires manual test, because the bug happens when Safari does
2772         a page snapshot. It's not possible to tell the Test Netscape Plug-in
2773         to paint without laying out, making an automated test impossible.
2774
2775         * manual-tests/plugins/plugin-paint-causes-layout.html: Added.
2776
2777         * page/FrameView.h:
2778         * page/FrameView.cpp:
2779         (WebCore::FrameView::paintContents): Notify all enclosed widgets
2780         that a flattening paint is going to happen.
2781         (WebCore::FrameView::notifyWidgetsInAllFrames): Utility method 
2782         that tells the RenderView in all subframes to notify their widgets.
2783
2784         * platform/Widget.h:
2785         (WebCore::Widget::notifyWidget): Generic method that can be used
2786         to send messages to widgets. Current messages are just 'before flattening paint'
2787         and 'after flattening paint'. Message has no payload.
2788
2789         * rendering/RenderView.h:
2790         * rendering/RenderView.cpp:
2791         (WebCore::RenderView::getRetainedWidgets):
2792         (WebCore::RenderView::releaseWidgets): Factor code out of updateWidgetPositions(),
2793         since we use it in two places now.
2794         
2795         (WebCore::RenderView::updateWidgetPositions): Use getRetainedWidgets() etc.
2796         (WebCore::RenderView::notifyWidgets): Retain all the widgets, then send
2797         them all the message.
2798
2799         * rendering/RenderWidget.h:
2800         * rendering/RenderWidget.cpp:
2801         (WebCore::RenderWidget::notifyWidget): Pass the message to the widget.
2802
2803 2010-12-22  Adrienne Walker  <enne@google.com>
2804
2805         Reviewed by Kenneth Russell.
2806
2807         Fix null pointer deref when restoring a lost WebGL context.
2808         https://bugs.webkit.org/show_bug.cgi?id=51494
2809
2810         No new tests, as context restored events are not currently testable.
2811
2812         * html/canvas/WebGLRenderingContext.cpp:
2813         (WebCore::WebGLRenderingContext::initializeNewContext):
2814         (WebCore::WebGLRenderingContext::restoreContext):
2815
2816 2010-12-22  Adam Bergkvist  <adam.bergkvist@ericsson.com>
2817
2818         Reviewed by Martin Robinson.
2819
2820         [GTK] Building with Blob support fails again
2821         https://bugs.webkit.org/show_bug.cgi?id=51392
2822
2823         Build fix.
2824
2825         * GNUmakefile.am:
2826
2827 2010-12-22  Dan Bernstein  <mitz@apple.com>
2828
2829         Reviewed by Anders Carlsson.
2830
2831         canHyphenate() always returns true for the default locale
2832         https://bugs.webkit.org/show_bug.cgi?id=51506
2833
2834         No test, since this change only affects performance.
2835
2836         * platform/text/cf/HyphenationCF.cpp:
2837         (WebCore::::createValueForNullKey): Return 0 if hyphenation is not supported for the default locale.
2838         (WebCore::::createValueForKey): Removed whitespace.
2839
2840 2010-12-22  Yury Semikhatsky  <yurys@chromium.org>
2841
2842         Reviewed by Joseph Pecoraro.
2843
2844         Web Inspector: script name gets parsed as HTML in Call stack panel
2845         https://bugs.webkit.org/show_bug.cgi?id=51468
2846
2847         * inspector/front-end/Placard.js:
2848         (WebInspector.Placard.prototype.set subtitle):
2849
2850 2010-12-22  Eric Carlson  <eric.carlson@apple.com>
2851
2852         Reviewed by Darin Adler.
2853
2854         MediaPlayer should look for MIME type in data: URL
2855         https://bugs.webkit.org/show_bug.cgi?id=51195
2856
2857         If no MIME type is passed from the media element for a data: URL, try to get it from
2858         the URL itself.
2859
2860         No new tests are possible because the MIME type is just passed to the media engine.
2861
2862         * platform/graphics/MediaPlayer.cpp:
2863         (WebCore::MediaPlayer::load):
2864
2865 2010-12-22  W. James MacLean  <wjmaclean@chromium.org>
2866
2867         Reviewed by Kenneth Russell.
2868
2869         [chromium] Add asserts to test for contiguous-pixel Skia bitmaps.
2870         https://bugs.webkit.org/show_bug.cgi?id=51186
2871
2872         No new tests. Behaviour not changed, but need the asserts to detect when assumptions violated.
2873
2874         * platform/graphics/chromium/ImageLayerChromium.cpp:
2875         (WebCore::ImageLayerChromium::updateContentsIfDirty):
2876         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2877         (WebCore::GraphicsContext3D::getImageData):
2878
2879 2010-12-22  Chris Fleizach  <cfleizach@apple.com>
2880
2881         Reviewed by Darin Adler.
2882
2883         WAI-ARIA menubar role mapped to AXGroup, should be AXMenuBar
2884         https://bugs.webkit.org/show_bug.cgi?id=51488
2885
2886         Test: platform/mac/accessibility/aria-menubar.html
2887
2888         * accessibility/AccessibilityObject.cpp:
2889         (WebCore::createARIARoleMap):
2890
2891 2010-12-22  Zhenyao Mo  <zmo@google.com>
2892
2893         Reviewed by Kenneth Russell.
2894
2895         CopyTex{Sub}Image2D check always if the bound fbo's internal color format is compatible
2896         https://bugs.webkit.org/show_bug.cgi?id=51423
2897
2898         * html/canvas/WebGLRenderingContext.cpp:
2899         (WebCore::WebGLRenderingContext::copyTexImage2D): Remove the isGLES2Compliant flag around format compatibility checking.
2900         (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
2901         (WebCore::WebGLRenderingContext::getBoundFramebufferColorFormat): Helper function to get bound framebuffer's color format; deal with the case of webgl's internal fbo.
2902         * html/canvas/WebGLRenderingContext.h:
2903
2904 2010-12-22  Xan Lopez  <xlopez@igalia.com>
2905
2906         Reviewed by Gustavo Noronha.
2907
2908         [GTK] Compilation fixes with GTK+ 2.91.7
2909         https://bugs.webkit.org/show_bug.cgi?id=51487
2910
2911         * platform/gtk/GtkVersioning.h: do not define GDK_DISPLAY for
2912         backwards compatibility, it's now defined again in GTK+ 3.x.
2913         * platform/gtk/PasteboardHelper.cpp: do not call GDK functions to
2914         initialize global static variables (!). These are called when the
2915         .so is loaded, and they now require GType to be initialized and
2916         will crash. Initialize them once from the ctor, which is a more
2917         common pattern anyway.
2918         (WebCore::initGdkAtoms): new method to initialize static variables.
2919         (WebCore::PasteboardHelper::PasteboardHelper): call it.
2920         * plugins/gtk/PluginViewGtk.cpp: do not include gdkconfig.h when
2921         using GTK+ 3.x, since it's no longer installed.
2922
2923 2010-12-22  Dirk Schulze  <krit@wbekit.org>
2924
2925         Reviewed by Nikolas Zimmermann.
2926
2927         Cleanup SVG code according to the webkit style rules 2
2928         https://bugs.webkit.org/show_bug.cgi?id=51461
2929
2930         Second patch to fix indention and other style issues according to the WebKit style rules in the SVG code.
2931
2932         No changes of functionality, so no new tests. 
2933
2934         * svg/SVGFEDisplacementMapElement.cpp:
2935         (WebCore::SVGFEDisplacementMapElement::stringToChannel):
2936         * svg/SVGFEDistantLightElement.h:
2937         * svg/SVGFEFuncAElement.h:
2938         * svg/SVGFEFuncBElement.h:
2939         * svg/SVGFEFuncGElement.h:
2940         * svg/SVGFEFuncRElement.h:
2941         * svg/SVGFEMergeElement.cpp:
2942         (WebCore::SVGFEMergeElement::build):
2943         * svg/SVGFEMorphologyElement.cpp:
2944         * svg/SVGFEPointLightElement.h:
2945         * svg/SVGFESpecularLightingElement.cpp:
2946         (WebCore::SVGFESpecularLightingElement::findLights):
2947         * svg/SVGFESpotLightElement.h:
2948         * svg/SVGFitToViewBox.cpp:
2949         (WebCore::SVGFitToViewBox::parseViewBox):
2950         (WebCore::SVGFitToViewBox::isKnownAttribute):
2951         * svg/SVGFontFaceElement.cpp:
2952         (WebCore::cssPropertyIdForSVGAttributeName):
2953         * svg/SVGFontFaceElement.h:
2954         (WebCore::SVGFontFaceElement::associatedFontElement):
2955         * svg/SVGFontFaceNameElement.h:
2956         * svg/SVGFontFaceSrcElement.cpp:
2957         * svg/SVGFontFaceSrcElement.h:
2958         * svg/SVGFontFaceUriElement.h:
2959         * svg/SVGForeignObjectElement.h:
2960         * svg/SVGGlyphElement.cpp:
2961         (WebCore::parseArabicForm):
2962         (WebCore::parseOrientation):
2963         * svg/SVGGlyphElement.h:
2964         (WebCore::SVGGlyphIdentifier::SVGGlyphIdentifier):
2965         (WebCore::SVGGlyphIdentifier::inheritedValue):
2966         (WebCore::SVGGlyphIdentifier::operator==):
2967         (WebCore::SVGGlyphElement::rendererIsNeeded):
2968         * svg/SVGGlyphMap.h:
2969         (WebCore::GlyphMapNode::GlyphMapNode):
2970         (WebCore::GlyphMapNode::create):
2971         (WebCore::SVGGlyphMap::SVGGlyphMap):
2972         (WebCore::SVGGlyphMap::add):
2973         (WebCore::SVGGlyphMap::compareGlyphPriority):
2974         (WebCore::SVGGlyphMap::get):
2975         (WebCore::SVGGlyphMap::clear):
2976         * svg/SVGGradientElement.cpp:
2977         * svg/SVGHKernElement.cpp:
2978         * svg/SVGHKernElement.h:
2979         (WebCore::SVGHKernElement::rendererIsNeeded):
2980         * svg/SVGImageElement.h:
2981         * svg/SVGImageLoader.cpp:
2982         * svg/SVGImageLoader.h:
2983         * svg/SVGLangSpace.cpp:
2984         (WebCore::SVGLangSpace::parseMappedAttribute):
2985         (WebCore::SVGLangSpace::isKnownAttribute):
2986         * svg/SVGLangSpace.h:
2987         (WebCore::SVGLangSpace::xmllang):
2988         * svg/SVGMetadataElement.h:
2989         * svg/SVGMissingGlyphElement.h:
2990         (WebCore::SVGMissingGlyphElement::rendererIsNeeded):
2991         * svg/SVGPaint.cpp:
2992         (WebCore::SVGPaint::cssText):
2993         * svg/SVGPaint.h:
2994         (WebCore::SVGPaint::create):
2995         (WebCore::SVGPaint::paintType):
2996         (WebCore::SVGPaint::isSVGPaint):
2997         * svg/SVGParserUtilities.cpp:
2998         * svg/SVGParserUtilities.h:
2999         (WebCore::isWhitespace):
3000         (WebCore::skipOptionalSpaces):
3001         (WebCore::skipOptionalSpacesOrDelimiter):
3002         * svg/SVGPathElement.cpp:
3003         * svg/SVGPathParserFactory.h:
3004         * svg/SVGPathSegList.h:
3005
3006 2010-12-22  Chris Fleizach  <cfleizach@apple.com>
3007
3008         Reviewed by Sam Weinig.
3009
3010         AX: WAI-ARIA textbox role needs different AXRole, depending on value of aria-multiline property
3011         https://bugs.webkit.org/show_bug.cgi?id=51481
3012
3013         Support aria-multiline and use it to change the role of an ARIA "textbox" 
3014         from AXTextArea to AXTextField.
3015
3016         Test: platform/mac/accessibility/aria-multiline.html
3017
3018         * accessibility/AccessibilityObject.cpp:
3019         (WebCore::AccessibilityObject::ariaIsMultiline):
3020         * accessibility/AccessibilityObject.h:
3021         (WebCore::AccessibilityObject::isPasswordField):
3022         (WebCore::AccessibilityObject::isTextControl):
3023         * accessibility/AccessibilityRenderObject.cpp:
3024         (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
3025         * accessibility/AccessibilityRenderObject.h:
3026         * html/HTMLAttributeNames.in:
3027
3028 2010-12-22  Simon Fraser  <simon.fraser@apple.com>
3029
3030         Reviewed by Dan Bernstein.
3031
3032         CSS 2.1 failure: counter-increment-013 fails
3033         https://bugs.webkit.org/show_bug.cgi?id=51483
3034         
3035         Clamp the counter-increment property to the valid range of signed
3036         integers.
3037
3038         Test: fast/css/counters/counter-increment-overflow.html
3039
3040         * css/CSSParser.cpp:
3041         (WebCore::clampToSignedInteger):
3042         (WebCore::CSSParser::parseCounter):
3043
3044 2010-12-22  Dan Bernstein  <mitz@apple.com>
3045
3046         Rubber-stamped by Mark Rowe.
3047
3048         Changed WebKitTools to Tools in script build phases.
3049
3050         * WebCore.xcodeproj/project.pbxproj:
3051
3052 2010-12-21  Vangelis Kokkevis  <vangelis@chromium.org>
3053
3054         Reviewed by Kenneth Russell.
3055
3056         [chromium] Fixing crash with empty render surfaces.
3057         https://bugs.webkit.org/show_bug.cgi?id=51432
3058
3059         Test: platform/chromium/compositing/empty-render-surface-crasher.html
3060
3061         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
3062         (WebCore::RenderSurfaceChromium::draw):
3063
3064 2010-12-21  Pavel Podivilov  <podivilov@chromium.org>
3065
3066         Reviewed by Yury Semikhatsky.
3067
3068         Web Inspector: persist JavaScript breakpoints in frontend settings.
3069         https://bugs.webkit.org/show_bug.cgi?id=48434
3070
3071         * bindings/js/ScriptDebugServer.cpp:
3072         (WebCore::ScriptDebugServer::setBreakpoint):
3073         (WebCore::ScriptDebugServer::removeBreakpoint):
3074         * bindings/js/ScriptDebugServer.h:
3075         * bindings/v8/DebuggerScript.js:
3076         ():
3077         * bindings/v8/ScriptDebugServer.cpp:
3078         (WebCore::ScriptDebugServer::setBreakpoint):
3079         (WebCore::ScriptDebugServer::removeBreakpoint):
3080         * bindings/v8/ScriptDebugServer.h:
3081         * inspector/Inspector.idl:
3082         * inspector/InspectorBackend.cpp:
3083         * inspector/InspectorController.cpp:
3084         (WebCore::InspectorController::InspectorController):
3085         (WebCore::InspectorController::enableDebuggerFromFrontend):
3086         (WebCore::InspectorController::setStickyBreakpoints):
3087         (WebCore::InspectorController::restoreStickyBreakpoint):
3088         * inspector/InspectorController.h:
3089         * inspector/InspectorDebuggerAgent.cpp:
3090         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
3091         (WebCore::InspectorDebuggerAgent::setStickyBreakpoint):
3092         (WebCore::InspectorDebuggerAgent::setBreakpoint):
3093         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
3094         (WebCore::InspectorDebuggerAgent::restoreBreakpoint):
3095         (WebCore::InspectorDebuggerAgent::clearForPageNavigation):
3096         (WebCore::InspectorDebuggerAgent::didParseSource):
3097         * inspector/InspectorDebuggerAgent.h:
3098         * inspector/front-end/Breakpoint.js:
3099         (WebInspector.Breakpoint):
3100         (WebInspector.Breakpoint.prototype.remove):
3101         * inspector/front-end/BreakpointManager.js:
3102         (WebInspector.BreakpointManager):
3103         (WebInspector.DOMBreakpoint.prototype._serializeToJSON):
3104         (WebInspector.JavaScriptBreakpoint):
3105         (WebInspector.XHRBreakpoint.prototype._serializeToJSON):
3106         * inspector/front-end/DebuggerModel.js:
3107         (WebInspector.DebuggerModel):
3108         * inspector/front-end/ScriptsPanel.js:
3109         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
3110         * inspector/front-end/SourceFrame.js:
3111
3112 2010-12-20  Antti Koivisto  <antti@apple.com>
3113
3114         Reviewed by Alexey Proskuryakov.
3115
3116         https://bugs.webkit.org/show_bug.cgi?id=51354
3117         Don't block rendering and script execution on deferred stylesheets
3118         
3119         - Don't add low priority stylesheets to the document pending sheet count.
3120         - Resolve media attribute fully for the link element stylesheet load.
3121
3122         Test: http/tests/local/stylesheet-and-script-load-order-media-print.html
3123
3124         * html/HTMLLinkElement.cpp:
3125         (WebCore::HTMLLinkElement::HTMLLinkElement):
3126         (WebCore::HTMLLinkElement::~HTMLLinkElement):
3127         (WebCore::HTMLLinkElement::setDisabledState):
3128         (WebCore::HTMLLinkElement::process):
3129         (WebCore::HTMLLinkElement::sheetLoaded):
3130         (WebCore::HTMLLinkElement::addPendingSheet):
3131         (WebCore::HTMLLinkElement::removePendingSheet):
3132         * html/HTMLLinkElement.h:
3133
3134 2010-12-22  Sheriff Bot  <webkit.review.bot@gmail.com>
3135
3136         Unreviewed, rolling out r74473.
3137         http://trac.webkit.org/changeset/74473
3138         https://bugs.webkit.org/show_bug.cgi?id=51463
3139
3140         broke compilation on leopard intel release (Requested by
3141         podivilov on #webkit).
3142
3143         * bindings/js/ScriptDebugServer.cpp:
3144         (WebCore::ScriptDebugServer::setBreakpoint):
3145         (WebCore::ScriptDebugServer::removeBreakpoint):
3146         * bindings/js/ScriptDebugServer.h:
3147         * bindings/v8/DebuggerScript.js:
3148         ():
3149         * bindings/v8/ScriptDebugServer.cpp:
3150         (WebCore::ScriptDebugServer::setBreakpoint):
3151         (WebCore::ScriptDebugServer::removeBreakpoint):
3152         * bindings/v8/ScriptDebugServer.h:
3153         * inspector/Inspector.idl:
3154         * inspector/InspectorBackend.cpp:
3155         * inspector/InspectorController.cpp:
3156         (WebCore::InspectorController::InspectorController):
3157         (WebCore::InspectorController::enableDebuggerFromFrontend):
3158         (WebCore::InspectorController::setStickyBreakpoints):
3159         (WebCore::InspectorController::restoreStickyBreakpoint):
3160         (WebCore::InspectorController::breakpointsSettingKey):
3161         (WebCore::InspectorController::loadBreakpoints):
3162         (WebCore::InspectorController::saveBreakpoints):
3163         * inspector/InspectorController.h:
3164         * inspector/InspectorDebuggerAgent.cpp:
3165         (WebCore::formatBreakpointId):
3166         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
3167         (WebCore::InspectorDebuggerAgent::setBreakpoint):
3168         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
3169         (WebCore::InspectorDebuggerAgent::clearForPageNavigation):
3170         (WebCore::InspectorDebuggerAgent::md5Base16):
3171         (WebCore::InspectorDebuggerAgent::loadBreakpoints):
3172         (WebCore::InspectorDebuggerAgent::saveBreakpoints):
3173         (WebCore::InspectorDebuggerAgent::didParseSource):
3174         * inspector/InspectorDebuggerAgent.h:
3175         * inspector/front-end/Breakpoint.js:
3176         (WebInspector.Breakpoint):
3177         (WebInspector.Breakpoint.jsBreakpointId):
3178         (WebInspector.Breakpoint.prototype.set enabled):
3179         (WebInspector.Breakpoint.prototype.get id):
3180         (WebInspector.Breakpoint.prototype.set condition):
3181         (WebInspector.Breakpoint.prototype.remove):
3182         * inspector/front-end/BreakpointManager.js:
3183         (WebInspector.BreakpointManager):
3184         (WebInspector.BreakpointManager.prototype._createDOMBreakpoint):
3185         (WebInspector.BreakpointManager.prototype._createEventListenerBreakpoint):
3186         (WebInspector.BreakpointManager.prototype._createXHRBreakpoint):
3187         (WebInspector.BreakpointManager.prototype._setNativeBreakpoint):
3188         (WebInspector.BreakpointManager.prototype._setNativeBreakpointEnabled):
3189         (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint):
3190         (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
3191         (WebInspector.BreakpointManager.prototype._projectChanged):
3192         (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints):
3193         (WebInspector.BreakpointManager.prototype._saveBreakpoints):
3194         (WebInspector.BreakpointManager.prototype._validateBreakpoints):
3195         (WebInspector.DOMBreakpoint.prototype._serializeToJSON):
3196         (WebInspector.EventListenerBreakpoint.prototype._serializeToJSON):
3197         (WebInspector.XHRBreakpoint.prototype._serializeToJSON):
3198         (WebInspector.NativeBreakpointView.prototype.set enabled):
3199         (WebInspector.NativeBreakpointView.prototype.remove):
3200         * inspector/front-end/DebuggerModel.js:
3201         (WebInspector.DebuggerModel):
3202         (WebInspector.DebuggerModel.prototype.setOneTimeBreakpoint):
3203         (WebInspector.DebuggerModel.prototype.removeOneTimeBreakpoint):
3204         (WebInspector.DebuggerModel.prototype.setBreakpoint):
3205         (WebInspector.DebuggerModel.prototype.findBreakpoint):
3206         (WebInspector.DebuggerModel.prototype.reset):
3207         (WebInspector.DebuggerModel.prototype._setBreakpoint):
3208         (WebInspector.DebuggerModel.prototype._breakpointRemoved):
3209         (WebInspector.DebuggerModel.prototype._setBreakpointOnBackend):
3210         (WebInspector.DebuggerModel.prototype.breakpointRestored):
3211         (WebInspector.DebuggerModel.prototype.pausedScript):
3212         (WebInspector.DebuggerModel.prototype.resumedScript):
3213         * inspector/front-end/ScriptsPanel.js:
3214         (WebInspector.ScriptsPanel.prototype.continueToLine):
3215         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
3216         * inspector/front-end/SourceFrame.js:
3217         (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint.didEditBreakpointCondition):
3218         (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint):
3219         (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition.didEditBreakpointCondition):
3220         (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition):
3221         (WebInspector.SourceFrame.prototype._contextMenu):
3222         (WebInspector.SourceFrame.prototype._mouseDown):
3223         (WebInspector.SourceFrame.prototype._continueToLine):
3224         (WebInspector.SourceFrame.prototype._setBreakpoint):
3225
3226 2010-12-21  Pavel Podivilov  <podivilov@chromium.org>
3227
3228         Reviewed by Yury Semikhatsky.
3229
3230         Web Inspector: persist JavaScript breakpoints in frontend settings.
3231         https://bugs.webkit.org/show_bug.cgi?id=48434
3232
3233         * bindings/js/ScriptDebugServer.cpp:
3234         (WebCore::ScriptDebugServer::setBreakpoint):
3235         (WebCore::ScriptDebugServer::removeBreakpoint):
3236         * bindings/js/ScriptDebugServer.h:
3237         * bindings/v8/DebuggerScript.js:
3238         ():
3239         * bindings/v8/ScriptDebugServer.cpp:
3240         (WebCore::ScriptDebugServer::setBreakpoint):
3241         (WebCore::ScriptDebugServer::removeBreakpoint):
3242         * bindings/v8/ScriptDebugServer.h:
3243         * inspector/Inspector.idl:
3244         * inspector/InspectorBackend.cpp:
3245         * inspector/InspectorController.cpp:
3246         (WebCore::InspectorController::InspectorController):
3247         (WebCore::InspectorController::enableDebuggerFromFrontend):
3248         (WebCore::InspectorController::setStickyBreakpoints):
3249         (WebCore::InspectorController::restoreStickyBreakpoint):
3250         * inspector/InspectorController.h:
3251         * inspector/InspectorDebuggerAgent.cpp:
3252         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
3253         (WebCore::InspectorDebuggerAgent::setStickyBreakpoint):
3254         (WebCore::InspectorDebuggerAgent::setBreakpoint):
3255         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
3256         (WebCore::InspectorDebuggerAgent::restoreBreakpoint):
3257         (WebCore::InspectorDebuggerAgent::clearForPageNavigation):
3258         (WebCore::InspectorDebuggerAgent::didParseSource):
3259         * inspector/InspectorDebuggerAgent.h:
3260         * inspector/front-end/Breakpoint.js:
3261         (WebInspector.Breakpoint):
3262         (WebInspector.Breakpoint.prototype.remove):
3263         * inspector/front-end/BreakpointManager.js:
3264         (WebInspector.BreakpointManager):
3265         (WebInspector.DOMBreakpoint.prototype._serializeToJSON):
3266         (WebInspector.JavaScriptBreakpoint):
3267         (WebInspector.XHRBreakpoint.prototype._serializeToJSON):
3268         * inspector/front-end/DebuggerModel.js:
3269         (WebInspector.DebuggerModel):
3270         * inspector/front-end/ScriptsPanel.js:
3271         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
3272         * inspector/front-end/SourceFrame.js:
3273
3274 2010-12-22  Dirk Schulze  <krit@wbekit.org>
3275
3276         Reviewed by Nikolas Zimmermann.
3277
3278         Cleanup SVG code according to the webkit style rules 1
3279         https://bugs.webkit.org/show_bug.cgi?id=51411
3280
3281         First patch to fix indention and other style issues according to the WebKit style rules in the SVG code.
3282
3283         No change of functionality. 
3284
3285         * svg/ColorDistance.cpp:
3286         (WebCore::ColorDistance::isZero):
3287         * svg/ColorDistance.h:
3288         * svg/ElementTimeControl.h:
3289         (WebCore::ElementTimeControl::~ElementTimeControl):
3290         * svg/LinearGradientAttributes.h:
3291         (WebCore::LinearGradientAttributes::LinearGradientAttributes):
3292         (WebCore::LinearGradientAttributes::x1):
3293         (WebCore::LinearGradientAttributes::y1):
3294         (WebCore::LinearGradientAttributes::x2):
3295         (WebCore::LinearGradientAttributes::y2):
3296         (WebCore::LinearGradientAttributes::setX1):
3297         (WebCore::LinearGradientAttributes::setY1):
3298         (WebCore::LinearGradientAttributes::setX2):
3299         (WebCore::LinearGradientAttributes::setY2):
3300         (WebCore::LinearGradientAttributes::hasX1):
3301         (WebCore::LinearGradientAttributes::hasY1):
3302         (WebCore::LinearGradientAttributes::hasX2):
3303         (WebCore::LinearGradientAttributes::hasY2):
3304         * svg/RadialGradientAttributes.h:
3305         (WebCore::RadialGradientAttributes::RadialGradientAttributes):
3306         (WebCore::RadialGradientAttributes::cx):
3307         (WebCore::RadialGradientAttributes::cy):
3308         (WebCore::RadialGradientAttributes::r):
3309         (WebCore::RadialGradientAttributes::fx):
3310         (WebCore::RadialGradientAttributes::fy):
3311         (WebCore::RadialGradientAttributes::setCx):
3312         (WebCore::RadialGradientAttributes::setCy):
3313         (WebCore::RadialGradientAttributes::setR):
3314         (WebCore::RadialGradientAttributes::setFx):
3315         (WebCore::RadialGradientAttributes::setFy):
3316         (WebCore::RadialGradientAttributes::hasCx):
3317         (WebCore::RadialGradientAttributes::hasCy):
3318         (WebCore::RadialGradientAttributes::hasR):
3319         (WebCore::RadialGradientAttributes::hasFx):
3320         (WebCore::RadialGradientAttributes::hasFy):
3321         * svg/SVGAngle.cpp:
3322         * svg/SVGAnimateColorElement.h:
3323         * svg/SVGAnimateElement.cpp:
3324         (WebCore::SVGAnimateElement::calculateAnimatedValue):
3325         (WebCore::SVGAnimateElement::calculateDistance):
3326         * svg/SVGAnimateElement.h:
3327         * svg/SVGAnimateMotionElement.cpp:
3328         * svg/SVGAnimateMotionElement.h:
3329         * svg/SVGAnimatedNumber.h:
3330         * svg/SVGAnimationElement.cpp:
3331         (WebCore::parseKeyTimes):
3332         (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
3333         (WebCore::SVGAnimationElement::updateAnimation):
3334         * svg/SVGClipPathElement.cpp:
3335         (WebCore::SVGClipPathElement::svgAttributeChanged):
3336         * svg/SVGColor.h:
3337         (WebCore::SVGColor::create):
3338         (WebCore::SVGColor::createCurrentColor):
3339         (WebCore::SVGColor::colorType):
3340         (WebCore::SVGColor::setRGBColor):
3341         (WebCore::SVGColor::color):
3342         (WebCore::SVGColor::isSVGColor):
3343         * svg/SVGCursorElement.cpp:
3344         (WebCore::SVGCursorElement::svgAttributeChanged):
3345         * svg/SVGCursorElement.h:
3346         * svg/SVGDescElement.h:
3347         (WebCore::SVGDescElement::rendererIsNeeded):
3348         * svg/SVGDocument.cpp:
3349         * svg/SVGDocument.h:
3350         (WebCore::SVGDocument::create):
3351         (WebCore::SVGDocument::isSVGDocument):
3352         * svg/SVGElement.h:
3353         (WebCore::SVGElement::isStyled):
3354         (WebCore::SVGElement::isStyledTransformable):
3355         (WebCore::SVGElement::isStyledLocatable):
3356         (WebCore::SVGElement::isSVG):
3357         (WebCore::SVGElement::isFilterEffect):
3358         (WebCore::SVGElement::isGradientStop):
3359         (WebCore::SVGElement::isTextContent):
3360         (WebCore::SVGElement::isValid):
3361         (WebCore::SVGElement::svgAttributeChanged):
3362         (WebCore::SVGElement::synchronizeProperty):
3363         (WebCore::SVGElement::supplementalTransform):
3364         (WebCore::SVGElement::invalidateSVGAttributes):
3365         (WebCore::SVGElement::rendererIsNeeded):
3366         (WebCore::SVGElement::needsPendingResourceHandling):
3367         (WebCore::SVGElement::buildPendingResource):
3368         * svg/SVGElementInstance.h:
3369         (WebCore::SVGElementInstance::create):
3370         (WebCore::SVGElementInstance::correspondingElement):
3371         (WebCore::SVGElementInstance::correspondingUseElement):
3372         (WebCore::SVGElementInstance::shadowTreeElement):
3373         (WebCore::SVGElementInstance::parentNode):
3374         (WebCore::SVGElementInstance::previousSibling):
3375         (WebCore::SVGElementInstance::nextSibling):
3376         (WebCore::SVGElementInstance::firstChild):
3377         (WebCore::SVGElementInstance::lastChild):
3378         (WebCore::SVGElementInstance::ownerDocument):
3379         (WebCore::SVGElementInstance::toNode):
3380         (WebCore::SVGElementInstance::toSVGElementInstance):
3381         (WebCore::SVGElementInstance::hasChildNodes):
3382         (WebCore::SVGElementInstance::setFirstChild):
3383         (WebCore::SVGElementInstance::setLastChild):
3384         (WebCore::SVGElementInstance::setNextSibling):
3385         (WebCore::SVGElementInstance::setPreviousSibling):
3386         (WebCore::SVGElementInstance::refEventTarget):
3387         (WebCore::SVGElementInstance::derefEventTarget):
3388         * svg/SVGElementInstanceList.h:
3389         (WebCore::SVGElementInstanceList::create):
3390         * svg/SVGException.h:
3391         (WebCore::SVGException::create):
3392         (WebCore::SVGException::SVGException):
3393         * svg/SVGFEColorMatrixElement.cpp:
3394         (WebCore::SVGFEColorMatrixElement::parseMappedAttribute):
3395         * svg/SVGFEComponentTransferElement.cpp:
3396         (WebCore::SVGFEComponentTransferElement::build):
3397         * svg/SVGFEDiffuseLightingElement.cpp:
3398         (WebCore::SVGFEDiffuseLightingElement::findLights):
3399         * svg/SVGFont.cpp:
3400         (WebCore::convertEmUnitToPixel):
3401         * svg/SVGUseElement.cpp:
3402         (WebCore::isDirectReference):
3403
3404 2010-12-22  Dai Mikurube  <dmikurube@google.com>
3405
3406         Reviewed by Kent Tamura.
3407
3408         https://bugs.webkit.org/show_bug.cgi?id=51289
3409         Initial state of checkValidity() and :invalid are incorrect with <select required>
3410
3411         * html/HTMLSelectElement.cpp:
3412         (WebCore::HTMLSelectElement::childrenChanged): setNeedsValidityCheck() after <select>'s children change.
3413
3414 2010-12-22  Alexander Pavlov  <apavlov@chromium.org>
3415
3416         Reviewed by Joseph Pecoraro.
3417
3418         Web Inspector: Styles pane fails to display properties from a broken CSS rule correctly
3419         https://bugs.webkit.org/show_bug.cgi?id=51405
3420
3421         Invoke markPropertyStart() after the parser has restored after an error.
3422
3423         * css/CSSGrammar.y:
3424
3425 2010-12-22  Dai Mikurube  <dmikurube@google.com>
3426
3427         Reviewed by Kent Tamura.
3428
3429         Assertion failure with <select multiple required>
3430         https://bugs.webkit.org/show_bug.cgi?id=51260
3431
3432         Test: fast/css/pseudo-valid-select-click.html
3433
3434         * dom/SelectElement.cpp: updateValidity() after selecting some options of ListBox-typed <select> elements to update valid() cache.
3435         (WebCore::SelectElement::updateListBoxSelection):
3436
3437 2010-12-21  Darin Adler  <darin@apple.com>
3438
3439         Unreviewed correction to unreviewed build fix for r74447.
3440
3441         Inappropriate code was left behind in sourceURI function for non-Dashboard platforms.
3442
3443         * html/HTMLImageLoader.cpp:
3444         (WebCore::HTMLImageLoader::sourceURI): Change the logic so all the bug-workaround
3445         logic is inside the #ifdef.
3446
3447 2010-12-21  Simon Fraser  <simon.fraser@apple.com>
3448
3449         Reviewed by Darin Adler.
3450
3451         Include the shadow color space as part of the GraphicsContext state
3452         https://bugs.webkit.org/show_bug.cgi?id=51420
3453         
3454         Include the ColorSpace for the shadow color as part of the graphics
3455         state. This will be used later for a shadow implementation that
3456         does not rely on platform shadow code.
3457
3458         * platform/graphics/GraphicsContext.cpp:
3459         (WebCore::GraphicsContext::setShadow):
3460         (WebCore::GraphicsContext::clearShadow):
3461         (WebCore::GraphicsContext::getShadow):
3462         * platform/graphics/GraphicsContext.h:
3463         (WebCore::GraphicsContextState::GraphicsContextState):
3464         * platform/graphics/chromium/FontChromiumWin.cpp:
3465         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
3466         (WebCore::Font::drawComplexText):
3467         * platform/graphics/mac/FontMac.mm:
3468         (WebCore::Font::drawGlyphs):
3469         * platform/graphics/skia/SkiaFontWin.cpp:
3470         (WebCore::windowsCanHandleDrawTextShadow):
3471         * platform/graphics/win/FontCGWin.cpp:
3472         (WebCore::drawGDIGlyphs):
3473         (WebCore::Font::drawGlyphs):
3474         * platform/graphics/wince/GraphicsContextWinCE.cpp:
3475         (WebCore::GraphicsContext::fillRoundedRect):
3476         (WebCore::GraphicsContext::drawText):
3477
3478 2010-12-21  Dan Bernstein  <mitz@apple.com>
3479
3480         Reviewed by Sam Weinig.
3481
3482         <rdar://problem/8668230> REGRESSION (r71884): Returning alternate requests from willSendRequest can prevent other requests from ever being sent
3483         https://bugs.webkit.org/show_bug.cgi?id=51413
3484
3485         71884 was wrong in moving willSendRequest to ResourceLoader::start(). It’s wrong to do all the
3486         scheduling, which is host-dependent, before calling willSendRequest, because the latter can
3487         change the host.
3488
3489         * loader/NetscapePlugInStreamLoader.cpp:
3490         (WebCore::NetscapePlugInStreamLoader::create): Check the return value from ResourceLoader::init()
3491         and return 0 if it is false.
3492         * loader/ResourceLoader.cpp:
3493         (WebCore::ResourceLoader::init): Made this function return a boolean. Moved the call to willSendRequest()
3494         from start() into here. Return false if willSendRequest() canceled the request.
3495         (WebCore::ResourceLoader::start): Moved the call to willSendRequest() from here to init().
3496         * loader/ResourceLoader.h:
3497         * loader/SubresourceLoader.cpp:
3498         (WebCore::SubresourceLoader::create): Check the return value from ResourceLoader::init()
3499         and return 0 if it is false.
3500
3501 2010-12-21  Benjamin Kalman  <kalman@chromium.org>
3502
3503         Reviewed by Darin Adler.
3504
3505         Shift-End does not select to the end of the line
3506         https://bugs.webkit.org/show_bug.cgi?id=50610
3507
3508         Let the VisiblePosition affinity for end of line selection to be set by
3509         visibleEnd/visibleStart rather than using end/start and always using UPSTREAM.
3510
3511         Test: editing/selection/extend-to-line-boundary.html
3512
3513         * editing/SelectionController.cpp:
3514         (WebCore::SelectionController::positionForPlatform): Use visibleStart/visibleEnd rather than
3515         start/end.
3516         (WebCore::SelectionController::modifyExtendingForward): Don't explicitly use UPSTREAM affinity.
3517
3518 2010-12-21  Jan Erik Hanssen  <jhanssen@sencha.com>
3519
3520         Reviewed by Simon Fraser.
3521
3522         matrix3d() must take the zoom factor into account
3523         https://bugs.webkit.org/show_bug.cgi?id=51408
3524
3525         Test: transforms/3d/general/matrix-with-zoom-3d.html
3526
3527         * css/CSSStyleSelector.cpp:
3528         (WebCore::CSSStyleSelector::createTransformOperations):
3529
3530 2010-12-21  Adam Barth  <abarth@webkit.org>
3531
3532         Reviewed by Darin Adler.
3533
3534         Move V8 to common implementation of window.open
3535         https://bugs.webkit.org/show_bug.cgi?id=51385
3536
3537         I also changed some function names to match WebKit style.  There's a
3538         bunch of code we can remove in the generic bindings now.  I'll do that
3539         in the next patch.
3540
3541         * bindings/generic/BindingDOMWindow.h:
3542         (WebCore::::open):
3543         * bindings/generic/BindingFrame.h:
3544         (WebCore::::navigateIfAllowed):
3545         * bindings/generic/BindingSecurity.h:
3546         (WebCore::::canAccessWindow):
3547         (WebCore::::allowPopUp):
3548         (WebCore::::shouldAllowNavigation):
3549         * bindings/generic/GenericBinding.h:
3550         (WebCore::completeURL):
3551         * bindings/js/JSDOMBinding.cpp:
3552         (WebCore::toLexicalFrame):
3553         (WebCore::toDynamicFrame):
3554         * bindings/js/specialization/JSBindingState.cpp:
3555         (WebCore::::activeFrame):
3556         (WebCore::::firstFrame):
3557         * bindings/js/specialization/JSBindingState.h:
3558         * bindings/v8/V8Utilities.cpp:
3559         (WebCore::callingOrEnteredFrame):
3560         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3561         (WebCore::V8DOMWindow::locationAccessorSetter):
3562         (WebCore::V8DOMWindow::openCallback):
3563         * bindings/v8/specialization/V8BindingState.cpp:
3564         (WebCore::::activeWindow):
3565         (WebCore::::firstWindow):
3566         (WebCore::::activeFrame):
3567         (WebCore::::firstFrame):
3568         * bindings/v8/specialization/V8BindingState.h:
3569
3570 2010-12-21  Ryosuke Niwa  <rniwa@webkit.org>
3571
3572         Unreviewed build fix for r74447.
3573
3574         Call usesDashboardBackwardCompatibilityMode() only if DASHBOARD_SUPPORT is enabled.
3575
3576         * html/HTMLImageLoader.cpp:
3577         (WebCore::HTMLImageLoader::sourceURI):
3578
3579 2010-12-21  Dan Bernstein  <mitz@apple.com>
3580
3581         Reviewed by John Sullivan.
3582
3583         <rdar://problem/8725702> REGRESSION (r68854): Broken image icon seen in the Address Book Dashboard widget
3584
3585         Test: platform/mac/fast/dom/HTMLImageElement/dashboard-src-quirk.html
3586
3587         The Address Book widget sets the src attribute of an img element to a string that looks like a CSS
3588         URL value. This used to work prior to r68854, because some DOM attribute parsing functions were using
3589         the wrong function to parse URL attributes (last named deprecatedParseURL).
3590
3591         * html/HTMLImageLoader.cpp:
3592         (WebCore::HTMLImageLoader::sourceURI): In Dashboard, check if the src attribute begins with 'url("'
3593         and ends with '")', and if so, strip those away.
3594
3595 2010-12-21  Ryosuke Niwa  <rniwa@webkit.org>
3596
3597         Reviewed by Darin Adler.
3598
3599         CharacterData needs cleanup
3600         https://bugs.webkit.org/show_bug.cgi?id=51426
3601
3602         Extracted CharacterData::setDataAndNotify and CharacterData::updateRenderer.
3603
3604         * dom/CharacterData.cpp:
3605         (WebCore::CharacterData::setData): Calls setDataAndUpdate.
3606         (WebCore::CharacterData::parserAppendData): Ditto.
3607         (WebCore::CharacterData::appendData): Ditto.
3608         (WebCore::CharacterData::insertData): Ditto.
3609         (WebCore::CharacterData::deleteData): Ditto.
3610         (WebCore::CharacterData::replaceData): Ditto.
3611         (WebCore::CharacterData::setDataAndUpdate): Added.
3612         (WebCore::CharacterData::updateRenderer): Added.
3613         (WebCore::CharacterData::dispatchModifiedEvent): Renamed prevValue to oldData.
3614         * dom/CharacterData.h:
3615
3616 2010-12-21  Sheriff Bot  <webkit.review.bot@gmail.com>
3617
3618         Unreviewed, rolling out r74420.
3619         http://trac.webkit.org/changeset/74420
3620         https://bugs.webkit.org/show_bug.cgi?id=51436
3621
3622         causes editing/pasteboard/paste-noscript-xhtml.xhtml to crash
3623         (Requested by tonyg-cr on #webkit).
3624
3625         * dom/DocumentParser.cpp:
3626         * dom/DocumentParser.h:
3627         * html/parser/HTMLDocumentParser.cpp:
3628         * html/parser/HTMLDocumentParser.h:
3629         * html/parser/HTMLParserScheduler.cpp:
3630         (WebCore::HTMLParserScheduler::HTMLParserScheduler):
3631         * html/parser/HTMLParserScheduler.h:
3632         (WebCore::HTMLParserScheduler::isScheduledForResume):
3633         * page/PageGroupLoadDeferrer.cpp:
3634         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
3635         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
3636
3637 2010-12-21  Kenneth Russell  <kbr@google.com>
3638
3639         Reviewed by Darin Fisher.
3640
3641         Enable extensions used in accelerated 2D canvas implementation
3642         https://bugs.webkit.org/show_bug.cgi?id=51433
3643
3644         Call Extensions3D::ensureEnabled() for all supported extensions
3645         the accelerated 2D Canvas implementation uses. Tested with a few
3646         layout tests previously failing when run in Chromium due to OpenGL
3647         INVALID_ENUM and other errors.
3648
3649         * platform/graphics/gpu/DrawingBuffer.cpp:
3650         (WebCore::DrawingBuffer::create):
3651         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
3652         (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
3653         (WebCore::SharedGraphicsContext3D::supportsBGRA):
3654         * platform/graphics/gpu/SharedGraphicsContext3D.h:
3655
3656 2010-12-21  Zhenyao Mo  <zmo@google.com>
3657
3658         Reviewed by Kenneth Russell.
3659
3660         WebGLRenderingContext needs to zero textures and renderbuffers
3661         https://bugs.webkit.org/show_bug.cgi?id=49355
3662
3663         Test: fast/canvas/webgl/uninitialized-test.html
3664
3665         * html/canvas/WebGLFramebuffer.cpp:
3666         (WebCore::WebGLFramebuffer::onAccess): Use a parameter to decide if renderbuffer initialization is needed.
3667         (WebCore::WebGLFramebuffer::initializeRenderbuffers): Don't return false if color buffer doesn't exist.
3668         * html/canvas/WebGLFramebuffer.h: Modify onAccess with an added parameter.
3669         * html/canvas/WebGLRenderingContext.cpp:
3670         (WebCore::WebGLRenderingContext::clear): Call onAccess with an added parameter.
3671         (WebCore::WebGLRenderingContext::copyTexImage2D): Ditto.
3672         (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
3673         (WebCore::WebGLRenderingContext::drawArrays): Ditto.
3674         (WebCore::WebGLRenderingContext::drawElements): Ditto.
3675         (WebCore::WebGLRenderingContext::readPixels): Ditto.
3676         (WebCore::WebGLRenderingContext::texImage2DBase): Create buffer data of 0s if input is null to initialize textures.
3677         * platform/graphics/GraphicsContext3D.cpp:
3678         (WebCore::GraphicsContext3D::texImage2DResourceSafe): Helper function that initialize all pixels to 0.
3679         * platform/graphics/GraphicsContext3D.h:
3680         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
3681         (WebCore::Canvas2DLayerChromium::updateContentsIfDirty): Use texImage2DResourceSafe.
3682         * platform/graphics/chromium/DrawingBufferChromium.cpp:
3683         (WebCore::generateColorTexture): Ditto.
3684         * platform/graphics/chromium/LayerRendererChromium.cpp:
3685         (WebCore::LayerRendererChromium::prepareToDrawLayers): Ditto.
3686         * platform/graphics/chromium/TextureManager.cpp:
3687         (WebCore::TextureManager::requestTexture): Ditto.
3688         * platform/graphics/chromium/VideoLayerChromium.cpp:
3689         (WebCore::VideoLayerChromium::allocateTexture): Ditto.
3690         * platform/graphics/gpu/DrawingBuffer.cpp:
3691         (WebCore::DrawingBuffer::reset): Use texImage2DResourceSafe; also, only initialize depth/stencil buffer.
3692         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
3693         (WebCore::SharedGraphicsContext3D::texImage2D): Use texImage2DResourceSafe.
3694         * platform/graphics/gpu/Texture.cpp:
3695         (WebCore::Texture::create): Ditto.
3696         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
3697         (WebCore::GraphicsContext3D::texImage2D): Generate an INVALID_VALUE if pixels==null is passed in.
3698
3699 2010-12-21  Chris Rogers  <crogers@google.com>
3700
3701         Reviewed by Kenneth Russell.
3702
3703         Add AudioBusChromium for decoding audio file data
3704         https://bugs.webkit.org/show_bug.cgi?id=51430
3705
3706         No new tests since audio API is not yet implemented.
3707
3708         * platform/audio/chromium: Added.
3709         * platform/audio/chromium/AudioBusChromium.cpp: Added.
3710         (WebCore::createBusFromInMemoryAudioFile):
3711
3712 2010-12-21  Chris Rogers  <crogers@google.com>
3713
3714         Reviewed by Kenneth Russell.
3715
3716         Add web audio spatialization resource files
3717         https://bugs.webkit.org/show_bug.cgi?id=50998
3718
3719         No new tests since audio API is not yet implemented.
3720
3721         * platform/audio/HRTFElevation.cpp:
3722         (WebCore::HRTFElevation::calculateKernelsForAzimuthElevation):
3723         * platform/audio/mac/AudioBusMac.mm:
3724         (WebCore::AudioBus::loadPlatformResource):
3725         * platform/audio/resources: Added.
3726         * platform/audio/resources/IRC_Composite_C_R0195_T000_P000.wav: Added.
3727         * platform/audio/resources/IRC_Composite_C_R0195_T000_P015.wav: Added.
3728         * platform/audio/resources/IRC_Composite_C_R0195_T000_P030.wav: Added.
3729         * platform/audio/resources/IRC_Composite_C_R0195_T000_P045.wav: Added.
3730         * platform/audio/resources/IRC_Composite_C_R0195_T000_P060.wav: Added.
3731         * platform/audio/resources/IRC_Composite_C_R0195_T000_P075.wav: Added.
3732         * platform/audio/resources/IRC_Composite_C_R0195_T000_P090.wav: Added.
3733         * platform/audio/resources/IRC_Composite_C_R0195_T000_P315.wav: Added.
3734         * platform/audio/resources/IRC_Composite_C_R0195_T000_P330.wav: Added.
3735         * platform/audio/resources/IRC_Composite_C_R0195_T000_P345.wav: Added.
3736         * platform/audio/resources/IRC_Composite_C_R0195_T015_P000.wav: Added.
3737         * platform/audio/resources/IRC_Composite_C_R0195_T015_P015.wav: Added.
3738         * platform/audio/resources/IRC_Composite_C_R0195_T015_P030.wav: Added.
3739         * platform/audio/resources/IRC_Composite_C_R0195_T015_P045.wav: Added.
3740         * platform/audio/resources/IRC_Composite_C_R0195_T015_P060.wav: Added.
3741         * platform/audio/resources/IRC_Composite_C_R0195_T015_P075.wav: Added.
3742         * platform/audio/resources/IRC_Composite_C_R0195_T015_P090.wav: Added.
3743         * platform/audio/resources/IRC_Composite_C_R0195_T015_P315.wav: Added.
3744         * platform/audio/resources/IRC_Composite_C_R0195_T015_P330.wav: Added.
3745         * platform/audio/resources/IRC_Composite_C_R0195_T015_P345.wav: Added.
3746         * platform/audio/resources/IRC_Composite_C_R0195_T030_P000.wav: Added.
3747         * platform/audio/resources/IRC_Composite_C_R0195_T030_P015.wav: Added.
3748         * platform/audio/resources/IRC_Composite_C_R0195_T030_P030.wav: Added.
3749         * platform/audio/resources/IRC_Composite_C_R0195_T030_P045.wav: Added.
3750         * platform/audio/resources/IRC_Composite_C_R0195_T030_P060.wav: Added.
3751         * platform/audio/resources/IRC_Composite_C_R0195_T030_P075.wav: Added.
3752         * platform/audio/resources/IRC_Composite_C_R0195_T030_P090.wav: Added.
3753         * platform/audio/resources/IRC_Composite_C_R0195_T030_P315.wav: Added.
3754         * platform/audio/resources/IRC_Composite_C_R0195_T030_P330.wav: Added.
3755         * platform/audio/resources/IRC_Composite_C_R0195_T030_P345.wav: Added.
3756         * platform/audio/resources/IRC_Composite_C_R0195_T045_P000.wav: Added.
3757         * platform/audio/resources/IRC_Composite_C_R0195_T045_P015.wav: Added.
3758         * platform/audio/resources/IRC_Composite_C_R0195_T045_P030.wav: Added.
3759         * platform/audio/resources/IRC_Composite_C_R0195_T045_P045.wav: Added.
3760         * platform/audio/resources/IRC_Composite_C_R0195_T045_P060.wav: Added.
3761         * platform/audio/resources/IRC_Composite_C_R0195_T045_P075.wav: Added.
3762         * platform/audio/resources/IRC_Composite_C_R0195_T045_P090.wav: Added.
3763         * platform/audio/resources/IRC_Composite_C_R0195_T045_P315.wav: Added.
3764         * platform/audio/resources/IRC_Composite_C_R0195_T045_P330.wav: Added.
3765         * platform/audio/resources/IRC_Composite_C_R0195_T045_P345.wav: Added.
3766         * platform/audio/resources/IRC_Composite_C_R0195_T060_P000.wav: Added.
3767         * platform/audio/resources/IRC_Composite_C_R0195_T060_P015.wav: Added.
3768         * platform/audio/resources/IRC_Composite_C_R0195_T060_P030.wav: Added.
3769         * platform/audio/resources/IRC_Composite_C_R0195_T060_P045.wav: Added.
3770         * platform/audio/resources/IRC_Composite_C_R0195_T060_P060.wav: Added.
3771         * platform/audio/resources/IRC_Composite_C_R0195_T060_P075.wav: Added.
3772         * platform/audio/resources/IRC_Composite_C_R0195_T060_P090.wav: Added.
3773         * platform/audio/resources/IRC_Composite_C_R0195_T060_P315.wav: Added.
3774         * platform/audio/resources/IRC_Composite_C_R0195_T060_P330.wav: Added.
3775         * platform/audio/resources/IRC_Composite_C_R0195_T060_P345.wav: Added.
3776         * platform/audio/resources/IRC_Composite_C_R0195_T075_P000.wav: Added.
3777         * platform/audio/resources/IRC_Composite_C_R0195_T075_P015.wav: Added.
3778         * platform/audio/resources/IRC_Composite_C_R0195_T075_P030.wav: Added.
3779         * platform/audio/resources/IRC_Composite_C_R0195_T075_P045.wav: Added.
3780         * platform/audio/resources/IRC_Composite_C_R0195_T075_P060.wav: Added.
3781         * platform/audio/resources/IRC_Composite_C_R0195_T075_P075.wav: Added.
3782         * platform/audio/resources/IRC_Composite_C_R0195_T075_P090.wav: Added.
3783         * platform/audio/resources/IRC_Composite_C_R0195_T075_P315.wav: Added.
3784         * platform/audio/resources/IRC_Composite_C_R0195_T075_P330.wav: Added.
3785         * platform/audio/resources/IRC_Composite_C_R0195_T075_P345.wav: Added.
3786         * platform/audio/resources/IRC_Composite_C_R0195_T090_P000.wav: Added.
3787         * platform/audio/resources/IRC_Composite_C_R0195_T090_P015.wav: Added.
3788         * platform/audio/resources/IRC_Composite_C_R0195_T090_P030.wav: Added.
3789         * platform/audio/resources/IRC_Composite_C_R0195_T090_P045.wav: Added.
3790         * platform/audio/resources/IRC_Composite_C_R0195_T090_P060.wav: Added.
3791         * platform/audio/resources/IRC_Composite_C_R0195_T090_P075.wav: Added.
3792         * platform/audio/resources/IRC_Composite_C_R0195_T090_P090.wav: Added.
3793         * platform/audio/resources/IRC_Composite_C_R0195_T090_P315.wav: Added.
3794         * platform/audio/resources/IRC_Composite_C_R0195_T090_P330.wav: Added.
3795         * platform/audio/resources/IRC_Composite_C_R0195_T090_P345.wav: Added.
3796         * platform/audio/resources/IRC_Composite_C_R0195_T105_P000.wav: Added.
3797         * platform/audio/resources/IRC_Composite_C_R0195_T105_P015.wav: Added.
3798         * platform/audio/resources/IRC_Composite_C_R0195_T105_P030.wav: Added.
3799         * platform/audio/resources/IRC_Composite_C_R0195_T105_P045.wav: Added.
3800         * platform/audio/resources/IRC_Composite_C_R0195_T105_P060.wav: Added.
3801         * platform/audio/resources/IRC_Composite_C_R0195_T105_P075.wav: Added.
3802         * platform/audio/resources/IRC_Composite_C_R0195_T105_P090.wav: Added.
3803         * platform/audio/resources/IRC_Composite_C_R0195_T105_P315.wav: Added.
3804         * platform/audio/resources/IRC_Composite_C_R0195_T105_P330.wav: Added.
3805         * platform/audio/resources/IRC_Composite_C_R0195_T105_P345.wav: Added.
3806         * platform/audio/resources/IRC_Composite_C_R0195_T120_P000.wav: Added.
3807         * platform/audio/resources/IRC_Composite_C_R0195_T120_P015.wav: Added.
3808         * platform/audio/resources/IRC_Composite_C_R0195_T120_P030.wav: Added.
3809         * platform/audio/resources/IRC_Composite_C_R0195_T120_P045.wav: Added.
3810         * platform/audio/resources/IRC_Composite_C_R0195_T120_P060.wav: Added.
3811         * platform/audio/resources/IRC_Composite_C_R0195_T120_P075.wav: Added.
3812         * platform/audio/resources/IRC_Composite_C_R0195_T120_P090.wav: Added.
3813         * platform/audio/resources/IRC_Composite_C_R0195_T120_P315.wav: Added.
3814         * platform/audio/resources/IRC_Composite_C_R0195_T120_P330.wav: Added.
3815         * platform/audio/resources/IRC_Composite_C_R0195_T120_P345.wav: Added.
3816         * platform/audio/resources/IRC_Composite_C_R0195_T135_P000.wav: Added.
3817         * platform/audio/resources/IRC_Composite_C_R0195_T135_P015.wav: Added.
3818         * platform/audio/resources/IRC_Composite_C_R0195_T135_P030.wav: Added.
3819         * platform/audio/resources/IRC_Composite_C_R0195_T135_P045.wav: Added.
3820         * platform/audio/resources/IRC_Composite_C_R0195_T135_P060.wav: Added.
3821         * platform/audio/resources/IRC_Composite_C_R0195_T135_P075.wav: Added.
3822         * platform/audio/resources/IRC_Composite_C_R0195_T135_P090.wav: Added.
3823         * platform/audio/resources/IRC_Composite_C_R0195_T135_P315.wav: Added.
3824         * platform/audio/resources/IRC_Composite_C_R0195_T135_P330.wav: Added.
3825         * platform/audio/resources/IRC_Composite_C_R0195_T135_P345.wav: Added.
3826         * platform/audio/resources/IRC_Composite_C_R0195_T150_P000.wav: Added.
3827         * platform/audio/resources/IRC_Composite_C_R0195_T150_P015.wav: Added.
3828         * platform/audio/resources/IRC_Composite_C_R0195_T150_P030.wav: Added.
3829         * platform/audio/resources/IRC_Composite_C_R0195_T150_P045.wav: Added.
3830         * platform/audio/resources/IRC_Composite_C_R0195_T150_P060.wav: Added.
3831         * platform/audio/resources/IRC_Composite_C_R0195_T150_P075.wav: Added.
3832         * platform/audio/resources/IRC_Composite_C_R0195_T150_P090.wav: Added.
3833         * platform/audio/resources/IRC_Composite_C_R0195_T150_P315.wav: Added.
3834         * platform/audio/resources/IRC_Composite_C_R0195_T150_P330.wav: Added.
3835         * platform/audio/resources/IRC_Composite_C_R0195_T150_P345.wav: Added.
3836         * platform/audio/resources/IRC_Composite_C_R0195_T165_P000.wav: Added.
3837         * platform/audio/resources/IRC_Composite_C_R0195_T165_P015.wav: Added.
3838         * platform/audio/resources/IRC_Composite_C_R0195_T165_P030.wav: Added.
3839         * platform/audio/resources/IRC_Composite_C_R0195_T165_P045.wav: Added.
3840         * platform/audio/resources/IRC_Composite_C_R0195_T165_P060.wav: Added.
3841         * platform/audio/resources/IRC_Composite_C_R0195_T165_P075.wav: Added.
3842         * platform/audio/resources/IRC_Composite_C_R0195_T165_P090.wav: Added.
3843         * platform/audio/resources/IRC_Composite_C_R0195_T165_P315.wav: Added.
3844         * platform/audio/resources/IRC_Composite_C_R0195_T165_P330.wav: Added.
3845         * platform/audio/resources/IRC_Composite_C_R0195_T165_P345.wav: Added.
3846         * platform/audio/resources/IRC_Composite_C_R0195_T180_P000.wav: Added.
3847         * platform/audio/resources/IRC_Composite_C_R0195_T180_P015.wav: Added.
3848         * platform/audio/resources/IRC_Composite_C_R0195_T180_P030.wav: Added.
3849         * platform/audio/resources/IRC_Composite_C_R0195_T180_P045.wav: Added.
3850         * platform/audio/resources/IRC_Composite_C_R0195_T180_P060.wav: Added.
3851         * platform/audio/resources/IRC_Composite_C_R0195_T180_P075.wav: Added.
3852         * platform/audio/resources/IRC_Composite_C_R0195_T180_P090.wav: Added.
3853         * platform/audio/resources/IRC_Composite_C_R0195_T180_P315.wav: Added.
3854         * platform/audio/resources/IRC_Composite_C_R0195_T180_P330.wav: Added.
3855         * platform/audio/resources/IRC_Composite_C_R0195_T180_P345.wav: Added.
3856         * platform/audio/resources/IRC_Composite_C_R0195_T195_P000.wav: Added.
3857         * platform/audio/resources/IRC_Composite_C_R0195_T195_P015.wav: Added.
3858         * platform/audio/resources/IRC_Composite_C_R0195_T195_P030.wav: Added.
3859         * platform/audio/resources/IRC_Composite_C_R0195_T195_P045.wav: Added.
3860         * platform/audio/resources/IRC_Composite_C_R0195_T195_P060.wav: Added.
3861         * platform/audio/resources/IRC_Composite_C_R0195_T195_P075.wav: Added.
3862         * platform/audio/resources/IRC_Composite_C_R0195_T195_P090.wav: Added.
3863         * platform/audio/resources/IRC_Composite_C_R0195_T195_P315.wav: Added.
3864         * platform/audio/resources/IRC_Composite_C_R0195_T195_P330.wav: Added.
3865         * platform/audio/resources/IRC_Composite_C_R0195_T195_P345.wav: Added.
3866         * platform/audio/resources/IRC_Composite_C_R0195_T210_P000.wav: Added.
3867         * platform/audio/resources/IRC_Composite_C_R0195_T210_P015.wav: Added.
3868         * platform/audio/resources/IRC_Composite_C_R0195_T210_P030.wav: Added.
3869         * platform/audio/resources/IRC_Composite_C_R0195_T210_P045.wav: Added.
3870         * platform/audio/resources/IRC_Composite_C_R0195_T210_P060.wav: Added.
3871         * platform/audio/resources/IRC_Composite_C_R0195_T210_P075.wav: Added.
3872         * platform/audio/resources/IRC_Composite_C_R0195_T210_P090.wav: Added.
3873         * platform/audio/resources/IRC_Composite_C_R0195_T210_P315.wav: Added.
3874         * platform/audio/resources/IRC_Composite_C_R0195_T210_P330.wav: Added.
3875         * platform/audio/resources/IRC_Composite_C_R0195_T210_P345.wav: Added.
3876         * platform/audio/resources/IRC_Composite_C_R0195_T225_P000.wav: Added.
3877         * platform/audio/resources/IRC_Composite_C_R0195_T225_P015.wav: Added.
3878         * platform/audio/resources/IRC_Composite_C_R0195_T225_P030.wav: Added.
3879         * platform/audio/resources/IRC_Composite_C_R0195_T225_P045.wav: Added.
3880         * platform/audio/resources/IRC_Composite_C_R0195_T225_P060.wav: Added.
3881         * platform/audio/resources/IRC_Composite_C_R0195_T225_P075.wav: Added.
3882         * platform/audio/resources/IRC_Composite_C_R0195_T225_P090.wav: Added.
3883         * platform/audio/resources/IRC_Composite_C_R0195_T225_P315.wav: Added.
3884         * platform/audio/resources/IRC_Composite_C_R0195_T225_P330.wav: Added.
3885         * platform/audio/resources/IRC_Composite_C_R0195_T225_P345.wav: Added.
3886         * platform/audio/resources/IRC_Composite_C_R0195_T240_P000.wav: Added.
3887         * platform/audio/resources/IRC_Composite_C_R0195_T240_P015.wav: Added.
3888         * platform/audio/resources/IRC_Composite_C_R0195_T240_P030.wav: Added.
3889         * platform/audio/resources/IRC_Composite_C_R0195_T240_P045.wav: Added.
3890         * platform/audio/resources/IRC_Composite_C_R0195_T240_P060.wav: Added.
3891         * platform/audio/resources/IRC_Composite_C_R0195_T240_P075.wav: Added.
3892         * platform/audio/resources/IRC_Composite_C_R0195_T240_P090.wav: Added.
3893         * platform/audio/resources/IRC_Composite_C_R0195_T240_P315.wav: Added.
3894         * platform/audio/resources/IRC_Composite_C_R0195_T240_P330.wav: Added.
3895         * platform/audio/resources/IRC_Composite_C_R0195_T240_P345.wav: Added.
3896         * platform/audio/resources/IRC_Composite_C_R0195_T255_P000.wav: Added.
3897         * platform/audio/resources/IRC_Composite_C_R0195_T255_P015.wav: Added.
3898         * platform/audio/resources/IRC_Composite_C_R0195_T255_P030.wav: Added.
3899         * platform/audio/resources/IRC_Composite_C_R0195_T255_P045.wav: Added.
3900         * platform/audio/resources/IRC_Composite_C_R0195_T255_P060.wav: Added.
3901         * platform/audio/resources/IRC_Composite_C_R0195_T255_P075.wav: Added.
3902         * platform/audio/resources/IRC_Composite_C_R0195_T255_P090.wav: Added.
3903         * platform/audio/resources/IRC_Composite_C_R0195_T255_P315.wav: Added.
3904         * platform/audio/resources/IRC_Composite_C_R0195_T255_P330.wav: Added.
3905         * platform/audio/resources/IRC_Composite_C_R0195_T255_P345.wav: Added.
3906         * platform/audio/resources/IRC_Composite_C_R0195_T270_P000.wav: Added.
3907         * platform/audio/resources/IRC_Composite_C_R0195_T270_P015.wav: Added.
3908         * platform/audio/resources/IRC_Composite_C_R0195_T270_P030.wav: Added.
3909         * platform/audio/resources/IRC_Composite_C_R0195_T270_P045.wav: Added.
3910         * platform/audio/resources/IRC_Composite_C_R0195_T270_P060.wav: Added.
3911         * platform/audio/resources/IRC_Composite_C_R0195_T270_P075.wav: Added.
3912         * platform/audio/resources/IRC_Composite_C_R0195_T270_P090.wav: Added.
3913         * platform/audio/resources/IRC_Composite_C_R0195_T270_P315.wav: Added.
3914         * platform/audio/resources/IRC_Composite_C_R0195_T270_P330.wav: Added.
3915         * platform/audio/resources/IRC_Composite_C_R0195_T270_P345.wav: Added.
3916         * platform/audio/resources/IRC_Composite_C_R0195_T285_P000.wav: Added.
3917         * platform/audio/resources/IRC_Composite_C_R0195_T285_P015.wav: Added.
3918         * platform/audio/resources/IRC_Composite_C_R0195_T285_P030.wav: Added.
3919         * platform/audio/resources/IRC_Composite_C_R0195_T285_P045.wav: Added.
3920         * platform/audio/resources/IRC_Composite_C_R0195_T285_P060.wav: Added.
3921         * platform/audio/resources/IRC_Composite_C_R0195_T285_P075.wav: Added.
3922         * platform/audio/resources/IRC_Composite_C_R0195_T285_P090.wav: Added.
3923         * platform/audio/resources/IRC_Composite_C_R0195_T285_P315.wav: Added.
3924         * platform/audio/resources/IRC_Composite_C_R0195_T285_P330.wav: Added.
3925         * platform/audio/resources/IRC_Composite_C_R0195_T285_P345.wav: Added.
3926         * platform/audio/resources/IRC_Composite_C_R0195_T300_P000.wav: Added.
3927         * platform/audio/resources/IRC_Composite_C_R0195_T300_P015.wav: Added.
3928         * platform/audio/resources/IRC_Composite_C_R0195_T300_P030.wav: Added.
3929         * platform/audio/resources/IRC_Composite_C_R0195_T300_P045.wav: Added.
3930         * platform/audio/resources/IRC_Composite_C_R0195_T300_P060.wav: Added.
3931         * platform/audio/resources/IRC_Composite_C_R0195_T300_P075.wav: Added.
3932         * platform/audio/resources/IRC_Composite_C_R0195_T300_P090.wav: Added.
3933         * platform/audio/resources/IRC_Composite_C_R0195_T300_P315.wav: Added.
3934         * platform/audio/resources/IRC_Composite_C_R0195_T300_P330.wav: Added.
3935         * platform/audio/resources/IRC_Composite_C_R0195_T300_P345.wav: Added.
3936         * platform/audio/resources/IRC_Composite_C_R0195_T315_P000.wav: Added.
3937         * platform/audio/resources/IRC_Composite_C_R0195_T315_P015.wav: Added.
3938         * platform/audio/resources/IRC_Composite_C_R0195_T315_P030.wav: Added.
3939         * platform/audio/resources/IRC_Composite_C_R0195_T315_P045.wav: Added.
3940         * platform/audio/resources/IRC_Composite_C_R0195_T315_P060.wav: Added.
3941         * platform/audio/resources/IRC_Composite_C_R0195_T315_P075.wav: Added.
3942         * platform/audio/resources/IRC_Composite_C_R0195_T315_P090.wav: Added.
3943         * platform/audio/resources/IRC_Composite_C_R0195_T315_P315.wav: Added.
3944         * platform/audio/resources/IRC_Composite_C_R0195_T315_P330.wav: Added.
3945         * platform/audio/resources/IRC_Composite_C_R0195_T315_P345.wav: Added.
3946         * platform/audio/resources/IRC_Composite_C_R0195_T330_P000.wav: Added.
3947         * platform/audio/resources/IRC_Composite_C_R0195_T330_P015.wav: Added.
3948         * platform/audio/resources/IRC_Composite_C_R0195_T330_P030.wav: Added.
3949         * platform/audio/resources/IRC_Composite_C_R0195_T330_P045.wav: Added.
3950         * platform/audio/resources/IRC_Composite_C_R0195_T330_P060.wav: Added.
3951         * platform/audio/resources/IRC_Composite_C_R0195_T330_P075.wav: Added.
3952         * platform/audio/resources/IRC_Composite_C_R0195_T330_P090.wav: Added.
3953         * platform/audio/resources/IRC_Composite_C_R0195_T330_P315.wav: Added.
3954         * platform/audio/resources/IRC_Composite_C_R0195_T330_P330.wav: Added.
3955         * platform/audio/resources/IRC_Composite_C_R0195_T330_P345.wav: Added.
3956         * platform/audio/resources/IRC_Composite_C_R0195_T345_P000.wav: Added.
3957         * platform/audio/resources/IRC_Composite_C_R0195_T345_P015.wav: Added.
3958         * platform/audio/resources/IRC_Composite_C_R0195_T345_P030.wav: Added.
3959         * platform/audio/resources/IRC_Composite_C_R0195_T345_P045.wav: Added.
3960         * platform/audio/resources/IRC_Composite_C_R0195_T345_P060.wav: Added.
3961         * platform/audio/resources/IRC_Composite_C_R0195_T345_P075.wav: Added.
3962         * platform/audio/resources/IRC_Composite_C_R0195_T345_P090.wav: Added.
3963         * platform/audio/resources/IRC_Composite_C_R0195_T345_P315.wav: Added.
3964         * platform/audio/resources/IRC_Composite_C_R0195_T345_P330.wav: Added.
3965         * platform/audio/resources/IRC_Composite_C_R0195_T345_P345.wav: Added.
3966
3967 2010-12-21  Geoffrey Garen  <ggaren@apple.com>
3968
3969         Reviewed by Gavin Barraclough & Oliver Hunt.
3970
3971         Added PageAllocationAligned, a cross-platform abstraction for memory allocations with arbitrary alignment requirements
3972         https://bugs.webkit.org/show_bug.cgi?id=51359
3973
3974         * ForwardingHeaders/wtf/PageAllocationAligned.h: Added.
3975
3976 2010-12-21  Ariya Hidayat  <ariya@sencha.com>
3977
3978         Reviewed by Simon Fraser.
3979
3980         https://bugs.webkit.org/show_bug.cgi?id=49774
3981         Need to scale translation values in matrix() by the zoom factor.
3982
3983         Test: fast/transforms/matrix-with-zoom.html
3984
3985         * css/CSSStyleSelector.cpp:
3986         (WebCore::CSSStyleSelector::createTransformOperations):
3987
3988 2010-12-21  Jian Li  <jianli@chromium.org>
3989
3990         Reviewed by Darin Adler.
3991
3992         Fix bug 51366: REGRESSION (r66452): Form data no longer contains
3993         'Content-Type' header for files with unrecognized extensions
3994         https://bugs.webkit.org/show_bug.cgi?id=51366
3995
3996         Test: http/tests/local/formdata/form-data-with-unknown-file-extension.html
3997
3998         * platform/network/FormData.cpp:
3999         (WebCore::FormData::appendKeyValuePairItems):
4000
4001 2010-12-21  Darin Adler  <darin@apple.com>
4002
4003         Reviewed by Sam Weinig.
4004
4005         Mac WebKit delivers an extra didCommit when loading web archives
4006         https://bugs.webkit.org/show_bug.cgi?id=51419
4007
4008         Could not find a simple way to test this in WebKit1, but in WebKit2
4009         it leads to an immediate failure when loading a web archive. Tested
4010         that making the Mac share the same code path with other platforms
4011         works fine in WebKit1.
4012
4013         * loader/FrameLoader.cpp:
4014         (WebCore::FrameLoader::finishedLoadingDocument): Removed special case for
4015         the Mac platform. Also removed the call to isArchiveMimeType since we
4016         get a 0 from ArchiveFactory::create in that case.
4017
4018         * loader/archive/ArchiveFactory.cpp:
4019         (WebCore::ArchiveFactory::isArchiveMimeType): Hardened slightly by
4020         adding a special case for null and empty strings, since hash tables can't
4021         handle null strings.
4022         (WebCore::ArchiveFactory::create): Ditto.
4023
4024 2010-12-21  Yong Li  <yoli@rim.com>
4025
4026         Reviewed by Adam Barth.
4027
4028         Suspend HTMLParserScheduler when page load is deferred to
4029         avoid potential JS re-entrancy. Otherwise, when JS execution is triggered
4030         from an external script or by events, and is blocked by a modal dialog,
4031         WebKit can parse more HTML source and also start another JS execution.
4032         
4033         https://bugs.webkit.org/show_bug.cgi?id=48077
4034
4035         Test case: WebCore/manual-tests/bugzilla-48077.html.
4036
4037         * dom/DocumentParser.cpp:
4038         (WebCore::DocumentParser::suspendParsing):
4039         (WebCore::DocumentParser::resumeParsing):
4040         * dom/DocumentParser.h:
4041         * html/parser/HTMLDocumentParser.cpp:
4042         (WebCore::HTMLDocumentParser::suspendParsing):
4043         (WebCore::HTMLDocumentParser::resumeParsing):
4044         * html/parser/HTMLParserScheduler.cpp:
4045         (WebCore::HTMLParserScheduler::HTMLParserScheduler):
4046         (WebCore::HTMLParserScheduler::suspend):
4047         (WebCore::HTMLParserScheduler::resume):
4048         * html/parser/HTMLParserScheduler.h:
4049         (WebCore::HTMLParserScheduler::isScheduledForResume):
4050         * page/PageGroupLoadDeferrer.cpp:
4051         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
4052         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
4053
4054 2010-12-21  Anders Carlsson  <andersca@apple.com>
4055
4056         Reviewed by John Sullivan.
4057
4058         Clicking missing plug-in text does not show a sheet
4059         https://bugs.webkit.org/show_bug.cgi?id=51403
4060
4061         * WebCore.exp.in:
4062         Export symbols needed by WebKit2.
4063
4064         * WebCore.xcodeproj/project.pbxproj:
4065         Make HTMLPlugInImageElement.h a private header.
4066
4067         * html/HTMLPlugInImageElement.h:
4068         (WebCore::HTMLPlugInImageElement::serviceType):
4069         (WebCore::HTMLPlugInImageElement::url):
4070         Make these member functions public.
4071
4072 2010-12-21  Andras Becsi  <abecsi@webkit.org>
4073
4074         Unreviewed build fix.
4075
4076         [Qt] Fix the build with USE_GSTREAMER=1
4077
4078         No new tests needed.
4079
4080         * WebCore.pro: remove nonexisting DataSourceGStreamer sources.
4081
4082 2010-12-21  Mahesh Kulkarni  <mahesh.kulkarni@nokia.com>
4083
4084         Reviewed by Andreas Kling.
4085
4086         [Qt] QtWebKit doesn't build in debug on Windows
4087         https://bugs.webkit.org/show_bug.cgi?id=41930
4088
4089         Disable incremental linking in windows 32bit debug version as webkit is so 
4090         big it fails to link incremental. 
4091
4092         Build fix. No new test cases added. 
4093
4094         * WebCore.pro:
4095
4096 2010-12-21  Dominic Cooney  <dominicc@google.com>
4097
4098         Reviewed by Adam Barth.
4099
4100         Rename Node::isShadowNode to isShadowRoot
4101         https://bugs.webkit.org/show_bug.cgi?id=51060
4102
4103         The method gets whether the node is the root of a shadow tree;
4104         renamed to reflect intent.
4105
4106         A simple rename--no new tests needed.
4107
4108         * css/CSSStyleSelector.cpp:
4109         (WebCore::CSSStyleSelector::initForStyleResolve):
4110         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
4111         * dom/Node.cpp:
4112         (WebCore::Node::shadowTreeRootNode):
4113         (WebCore::Node::isInShadowTree):
4114         (WebCore::eventTargetRespectingSVGTargetRules):
4115         (WebCore::Node::getEventAncestors):
4116         * dom/Node.h:
4117         (WebCore::Node::isShadowRoot):
4118         * dom/Range.cpp:
4119         (WebCore::Range::checkNodeBA):
4120         * page/DragController.cpp:
4121         (WebCore::asFileInput):
4122         * page/EventHandler.cpp:
4123         (WebCore::EventHandler::handleMousePressEvent):
4124         (WebCore::EventHandler::dispatchMouseEvent):
4125         * rendering/RenderBlock.cpp:
4126         (WebCore::RenderBlock::hasLineIfEmpty):
4127         * rendering/TextControlInnerElements.cpp:
4128         (WebCore::TextControlInnerElement::attachInnerElement):
4129         * svg/SVGStyledElement.cpp:
4130         (WebCore::SVGStyledElement::title):
4131         * svg/SVGUseElement.cpp:
4132         (WebCore::ShadowTreeUpdateBlocker::while):
4133         * svg/animation/SVGSMILElement.cpp:
4134         (WebCore::SVGSMILElement::insertedIntoDocument):
4135
4136 2010-12-20  Mahesh Kulkarni  <mahesh.kulkarni@nokia.com>
4137
4138         Reviewed by Andreas Kling.
4139
4140         Qt port of geolocation, geoposition objects timestamp was in seconds
4141         instead of miliseconds as per HTML5 Geolocation standards.
4142         Ref: http://dev.w3.org/geo/api/spec-source.html#position_interface 
4143         http://www.w3.org/TR/DOM-Level-3-Core/core.html#Core-DOMTimeStamp 
4144
4145         Implemented by Asheesh Srivastava.
4146
4147         [QT] QtWebkit geolocation's position.timestamp is not in miliseconds
4148         https://bugs.webkit.org/show_bug.cgi?id=51100
4149
4150         Porting code not covered in layout testing. No new tests added.
4151
4152         * platform/qt/GeolocationServiceQt.cpp:
4153         (WebCore::GeolocationServiceQt::positionUpdated):
4154
4155 2010-12-20  Yuzo Fujishima  <yuzo@google.com>
4156
4157         Reviewed by Eric Seidel.
4158
4159         Fix for Bug 26183 - [@font-face] font-family descriptor with multiple names should be discarded
4160         https://bugs.webkit.org/show_bug.cgi?id=26183
4161
4162         Test: fast/css/font-face-font-family-descriptor.html
4163
4164         * css/CSSParser.cpp:
4165         (WebCore::CSSParser::createFontFaceRule): Consider @font-face rule
4166         invalid if its font-family descriptor has multiple (or zero) families.
4167
4168 2010-12-20  Pavel Feldman  <pfeldman@chromium.org>
4169
4170         Reviewed by Yury Semikhatsky.
4171
4172         Web Inspector: fall back to object formatting in case dom is not yet loaded.
4173         https://bugs.webkit.org/show_bug.cgi?id=44273
4174
4175         Sometimes DOM is loaded after the inline message is being formatted, so we get
4176         no nodeId for it. Let us fall back to object formatting in such cases.
4177
4178         * inspector/front-end/ConsoleView.js:
4179         (WebInspector.ConsoleView.prototype._formatnode):
4180         (WebInspector.ConsoleMessage):
4181
4182 2010-12-20  Pavel Feldman  <pfeldman@chromium.org>
4183
4184         Reviewed by Joseph Pecoraro.
4185
4186         Web Inspector: cycle through tag name / attributes / new attribute on Tab.
4187
4188         https://bugs.webkit.org/show_bug.cgi?id=38429
4189
4190         * inspector/front-end/ElementsTreeOutline.js:
4191         (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.moveToNextAttributeIfNeeded):
4192
4193 2010-12-20  Yuta Kitamura  <yutak@chromium.org>
4194
4195         Reviewed by Alexey Proskuryakov.
4196
4197         WebSocket errors should be logged to console
4198         https://bugs.webkit.org/show_bug.cgi?id=40945
4199
4200         Test: http/tests/inspector/console-websocket-error.html
4201
4202         * platform/network/SocketStreamErrorBase.cpp:
4203         (WebCore::SocketStreamErrorBase::compare):
4204         * platform/network/SocketStreamErrorBase.h:
4205         (WebCore::SocketStreamErrorBase::failingURL):
4206         (WebCore::SocketStreamErrorBase::localizedDescription):
4207         (WebCore::SocketStreamErrorBase::SocketStreamErrorBase):
4208         * platform/network/cf/SocketStreamError.h:
4209         (WebCore::SocketStreamError::SocketStreamError):
4210         * platform/network/cf/SocketStreamHandle.h:
4211         * platform/network/cf/SocketStreamHandleCFNet.cpp:
4212         (WebCore::SocketStreamHandle::readStreamCallback):
4213         (WebCore::SocketStreamHandle::writeStreamCallback):
4214         (WebCore::SocketStreamHandle::reportErrorToClient):
4215         * websockets/WebSocketChannel.cpp:
4216         (WebCore::WebSocketChannel::didFail):
4217
4218 2010-12-17  MORITA Hajime  <morrita@google.com>
4219
4220         Reviewed by James Robinson.
4221
4222         https://bugs.webkit.org/show_bug.cgi?id=51240
4223         [Chromium][Skia] Border with a color with alpha != 1 breaks webkit gradient on skia.
4224
4225         Even after a shader was set, old color value had been remaining and passed to Skia.
4226         Then Skia refered an alpha component of that color to make pixels transparent.
4227         This change invalidates existing color value when a shader is given, 
4228         which means the renderer will paint shapes with gradients or patterns.
4229         
4230         Test: fast/gradients/gradient-after-transparent-border.html
4231
4232         * platform/graphics/skia/PlatformContextSkia.cpp:
4233         (WebCore::PlatformContextSkia::setStrokeShader):
4234         (WebCore::PlatformContextSkia::setFillShader):
4235
4236 2010-12-20  Xiaomei Ji  <xji@chromium.org>
4237
4238         Reviewed by Dan Bernstein.
4239
4240         Fix move left/right by character hang.
4241         https://bugs.webkit.org/show_bug.cgi?id=51344
4242
4243         Test: editing/selection/51344.html
4244
4245         * editing/VisiblePosition.cpp:
4246         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
4247         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
4248
4249 2010-12-20  Steve Lacey  <sjl@chromium.org>
4250
4251         Reviewed by David Levin.
4252
4253         Add missing default styles in mediaControlsChromium.css to prevent
4254         user overrides.
4255         https://bugs.webkit.org/show_bug.cgi?id=51360
4256
4257         No new tests needed as functionality is covered by existing layout
4258         tests.
4259
4260
4261         * css/mediaControlsChromium.css:
4262         (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
4263         (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
4264
4265 2010-12-20  Jian Li  <jianli@chromium.org>
4266
4267         Reviewed by David Levin.
4268
4269         Add lastModifiedDate attribute to File interface per File API spec
4270         https://bugs.webkit.org/show_bug.cgi?id=49895
4271
4272         lastModifiedDate is not supported for GObject bindings because Date is
4273         not support in code generation.
4274
4275         Test: http/tests/local/fileapi/file-last-modified.html
4276
4277         * fileapi/File.cpp:
4278         (WebCore::File::lastModifiedDate):
4279         * fileapi/File.h:
4280         * fileapi/File.idl:
4281
4282 2010-12-20  Mark Rowe  <mrowe@apple.com>
4283
4284         Reviewed by Dan Bernstein.