1 2010-12-31 Patrick Gansterer <paroga@webkit.org>
3 Reviewed by Adam Barth.
5 Add XML parser benchmark
6 https://bugs.webkit.org/show_bug.cgi?id=51612
8 Move the JavaScript code of html parser into a separate file to share it with xml parser.
10 * benchmarks/parser/html-parser.html:
11 * benchmarks/parser/resources/runner.js: Copied from WebCore/benchmarks/parser/html-parser.html.
15 * benchmarks/parser/xml-parser.html: Copied from WebCore/benchmarks/parser/html-parser.html.
17 2010-12-29 Zhenyao Mo <zmo@google.com>
19 Reviewed by Kenneth Russell.
21 Update validation of stencil mask and ref values
22 https://bugs.webkit.org/show_bug.cgi?id=50716
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.
35 2010-12-30 Martin Robinson <mrobinson@igalia.com>
37 Reviewed by Xan Lopez.
39 [GTK] Fork pieces of RenderThemeGtk that will differ for GTK+ 3
40 https://bugs.webkit.org/show_bug.cgi?id=51755
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.
46 No new tests. This should not change functionality.
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.
60 2010-12-30 Justin Schuh <jschuh@chromium.org>
62 Reviewed by James Robinson.
64 Reverting r74292 because it introduced a crash with ruby text.
65 https://bugs.webkit.org/show_bug.cgi?id=51637
67 Test: fast/css/counters/counter-ruby-text-cleared.html
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):
77 2010-12-30 Darin Adler <darin@apple.com>
79 Reviewed by David Kilzer.
81 Remove unused JSBinding source files
82 https://bugs.webkit.org/show_bug.cgi?id=51762
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.
89 * CMakeLists.txt: Removed references to files.
90 * GNUmakefile.am: Ditto.
91 * WebCore.gypi: Ditto.
93 * WebCore.vcproj/WebCore.vcproj: Ditto.
94 * bindings/js/JSBindingsAllInOne.cpp: Ditto.
96 2010-12-30 Tony Gentilcore <tonyg@chromium.org>
98 Reviewed by Darin Adler.
100 Remove Document.h include from some headers where it isn't necessary
101 https://bugs.webkit.org/show_bug.cgi?id=51730
103 No new tests because no new functionality.
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:
116 (WebCore::DOMParser::create):
117 (WebCore::DOMParser::DOMParser):
119 2010-12-30 Benjamin C Meyer <bmeyer@rim.com>
121 Reviewed by Darin Adler.
123 bindings/js/JSDesktopNotificationsCustom.cpp is not included in the cmake build
124 which is required when NOTIFICATIONS is enabled.
126 https://bugs.webkit.org/show_bug.cgi?id=51761
130 2010-12-30 Antti Koivisto <antti@apple.com>
134 Revert accidental project file change.
136 * WebCore.xcodeproj/project.pbxproj:
138 2010-12-30 Antti Koivisto <antti@apple.com>
140 Reviewed by Darin Adler.
142 https://bugs.webkit.org/show_bug.cgi?id=51134
143 Move loading related code from MemoryCache to CachedResourceLoader
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
152 * css/CSSImageValue.cpp:
153 (WebCore::CSSImageValue::cachedImage):
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).
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):
166 Moved tests that were not about cache headers to CachedResourceLoader::determineRevalidationPolicy and renamed.
168 (WebCore::CachedResource::setLoadPriority):
170 Check for Unresolved value before setting.
172 * loader/cache/CachedResource.h:
173 (WebCore::CachedResource::setOwningCachedResourceLoader):
175 Rename to be bit less mysterious.
177 * loader/cache/CachedResourceLoader.cpp:
178 (WebCore::createResource):
180 This was moved from MemoryCache.
182 (WebCore::CachedResourceLoader::~CachedResourceLoader):
183 (WebCore::CachedResourceLoader::determineRevalidationPolicy):
184 (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
186 This was moved/merged from MemoryCache.
188 (WebCore::CachedResourceLoader::canRequest):
189 (WebCore::CachedResourceLoader::requestResource):
191 This combines MemoryCache::requestResource and the existing method.
193 (WebCore::CachedResourceLoader::revalidateResource):
195 This was moved from MemoryCache.
197 (WebCore::CachedResourceLoader::loadResource):
199 New method for initiating loading.
201 (WebCore::CachedResourceLoader::notifyLoadedFromMemoryCache):
203 Renamed the mysterious CachedResourceLoader::checkCacheObjectStatus
205 * loader/cache/CachedResourceLoader.h:
206 * loader/cache/MemoryCache.cpp:
207 (WebCore::MemoryCache::add):
208 * loader/cache/MemoryCache.h:
209 (WebCore::MemoryCache::remove):
211 2010-12-30 Steve Block <steveblock@google.com>
213 Reviewed by Gavin Barraclough.
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
218 This is a policy decision for Android.
220 No new tests, simply enabling existing, tested code on Android.
222 * bindings/js/JSDOMWindowBase.cpp:
223 (WebCore::JSDOMWindowBase::supportsRichSourceInfo):
225 2010-12-30 Yael Aharon <yael.aharon@nokia.com>
227 Reviewed by Adam Barth.
229 REGRESSION: fast/dom/cssTarget-crash.html fails
230 https://bugs.webkit.org/show_bug.cgi?id=20342
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.
235 Test: fast/forms/submit-change-fragment.html
237 * loader/FrameLoader.cpp:
238 (WebCore::FrameLoader::loadURL):
239 (WebCore::FrameLoader::loadWithDocumentLoader):
240 (WebCore::FrameLoader::shouldScrollToAnchor):
241 * loader/FrameLoader.h:
243 2010-12-30 Darin Adler <darin@apple.com>
245 Reviewed by Adam Barth.
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
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
254 * bindings/js/JSBinding.h: Emptied out, marked for later deletion.
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
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.
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.
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.
296 * bindings/js/specialization/JSBindingState.cpp: Emptied out, marked for later deletion.
297 * bindings/js/specialization/JSBindingState.h: Emptied out, marked for later deletion.
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.
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
321 * page/Location.h: Fixed indentation on the whole file. Added the new functions above.
322 (WebCore::Location::create):
323 (WebCore::Location::frame):
325 2010-12-30 Alexander Pavlov <apavlov@chromium.org>
327 Reviewed by Pavel Feldman.
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
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.
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):
346 2010-12-30 Pavel Podivilov <podivilov@chromium.org>
348 Reviewed by Pavel Feldman.
350 Web Inspector: breakpoint is not disabled when clicking on breakpoints sidebar pane checkbox.
351 https://bugs.webkit.org/show_bug.cgi?id=51745
353 * inspector/front-end/Breakpoint.js:
354 (WebInspector.Breakpoint.prototype.set enabled):
356 2010-12-30 Pavel Podivilov <podivilov@chromium.org>
358 Reviewed by Pavel Feldman.
360 Web Inspector: call stack shows "Paused on a JavaScript breakpoint" when stepping.
361 https://bugs.webkit.org/show_bug.cgi?id=51748
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):
369 2010-12-30 Mikhail Naganov <mnaganov@chromium.org>
371 Reviewed by Pavel Feldman.
373 Fix leak of MemoryInfo wrappers introduced in r57004 (see issue 51712).
375 https://bugs.webkit.org/show_bug.cgi?id=51713
379 * bindings/v8/custom/V8ConsoleCustom.cpp:
380 (WebCore::V8Console::memoryAccessorGetter):
381 * bindings/v8/custom/V8PerformanceCustom.cpp: Copied from V8ConsoleCustom.cpp.
382 (WebCore::V8Performance::memoryAccessorGetter):
384 * page/Performance.idl:
386 2010-12-30 Steve Block <steveblock@google.com>
388 Reviewed by Sam Weinig.
390 Visiting macnn.com often causes SQL spew via geolocation database
391 https://bugs.webkit.org/show_bug.cgi?id=51557
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.
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.
400 No new tests, implementation clean-up only.
402 * page/GeolocationPositionCache.cpp:
403 (WebCore::GeolocationPositionCache::addUser):
404 (WebCore::GeolocationPositionCache::removeUser):
405 (WebCore::GeolocationPositionCache::setDatabasePath):
406 (WebCore::GeolocationPositionCache::startBackgroundThread):
408 2010-12-29 Philippe Normand <pnormand@igalia.com>
410 Reviewed by Martin Robinson.
412 [GTK] minimal build fails at link time due to missing sqlite3 symbols
413 https://bugs.webkit.org/show_bug.cgi?id=51327
415 Guard the code calling sqlite3 with the ENABLE(DATABASE) check.
417 No new tests, build fix only.
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:
425 2010-12-30 Justin Schuh <jschuh@chromium.org>
427 Reviewed by Dirk Schulze.
429 Prevent stringToLengthType() from skipping past end-of-string on invalid length unit.
430 https://bugs.webkit.org/show_bug.cgi?id=51692
433 (WebCore::stringToLengthType):
434 (WebCore::SVGLength::setValueAsString):
436 2010-12-30 Abhishek Arya <inferno@chromium.org>
438 Reviewed by Eric Seidel.
440 Create a helper function for finding descendent video elements for a node.
441 https://bugs.webkit.org/show_bug.cgi?id=51696
443 Test: media/video-element-other-namespace-crash.html
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.
450 2010-12-29 Pavel Feldman <pfeldman@chromium.org>
452 Reviewed by Yury Semikhatsky.
454 Web Inspector: extract Database & DOM Storage agents; remove InspectorBackend.
455 https://bugs.webkit.org/show_bug.cgi?id=51707
457 This change brushes up storage agents + removes redundant InspectorBackend class.
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):
511 2010-12-29 Dirk Schulze <krit@webkit.org>
513 Reviewed by Darin Adler.
515 Cleanup SVG code according to the webkit style rules 3
516 https://bugs.webkit.org/show_bug.cgi?id=51490
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
522 No changes of functionality, so no new tests.
524 * svg/SVGAllInOne.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:
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):
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):
616 2010-12-29 Abhishek Arya <inferno@chromium.org>
618 Reviewed by Darin Adler.
620 ASSERT(oldchild->parent() == owner) fails.
621 https://bugs.webkit.org/show_bug.cgi?id=50480
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.
628 Test: fast/multicol/span/double-merge-anonymous-block-crash.html
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.
634 2010-12-29 Justin Schuh <jschuh@chromium.org>
636 Reviewed by Darin Adler.
638 Check SVG element type in FrameView::scrollToAnchor
639 https://bugs.webkit.org/show_bug.cgi?id=51718
641 Test: svg/custom/scroll-to-anchor-in-symbol.svg
643 * page/FrameView.cpp:
644 (WebCore::FrameView::scrollToAnchor):
646 2010-12-29 Anton Muhin <antonm@chromium.org>
648 Reviewed by Eric Seidel.
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
653 * bindings/v8/V8DOMWindowShell.cpp:
654 * bindings/v8/V8DOMWindowShell.h:
656 2010-12-29 Kenichi Ishibashi <bashi@google.com>
658 Reviewed by Darin Adler.
660 Use a HashMap for m_continuation to save memory
661 https://bugs.webkit.org/show_bug.cgi?id=43716
663 Saving memory consumption by applying a HashMap convention to
664 continuation pointers of RenderInline and RenderBlock classes.
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.
683 2010-12-27 Amruth Raj <amruthraj@motorola.com> and Ravi Kasibhatla <ravi.kasibhatla@motorola.com>
685 Reviewed by Martin Robinson.
687 [GTK] Enable building whatever already exists of WebKit2
688 https://bugs.webkit.org/show_bug.cgi?id=37369
690 No new functionality added or deleted. Only makefile change. Hence, no tests added.
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
697 2010-12-29 Eric Seidel <eric@webkit.org>
701 Simplify make-hash-tools.pl
702 https://bugs.webkit.org/show_bug.cgi?id=49922
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
707 * WebCore.xcodeproj/project.pbxproj:
709 2010-12-29 Pavel Feldman <pfeldman@chromium.org>
711 Not reviewed: revert r74755 and 74757.
713 2010-12-29 Martin Robinson <mrobinson@igalia.com>
715 Reviewed by Sam Weinig.
717 JSDataViewCustom.cpp gives the fastcall calling convention to functions called via C++
718 https://bugs.webkit.org/show_bug.cgi?id=51722
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.
724 No new tests. This is covered by fast/canvas/webgl/data-view-test.html.
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.
736 2010-12-29 Dan Bernstein <mitz@apple.com>
738 Reviewed by Kenneth Russel.
740 A more robust fix for https://bugs.webkit.org/show_bug.cgi?id=51681
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.
756 2010-12-29 Pavel Feldman <pfeldman@chromium.org>
758 Not reviewed: Qt build fix.
760 * inspector/InspectorController.cpp:
762 2010-12-29 Pavel Feldman <pfeldman@chromium.org>
764 Reviewed by Yury Semikhatsky.
766 Web Inspector: extract Database & DOM Storage
767 agents; remove InspectorBackend.
768 https://bugs.webkit.org/show_bug.cgi?id=51707
770 This change brushes up storage agents + removes redundant
771 InspectorBackend class.
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):
825 2010-12-29 Tony Gentilcore <tonyg@chromium.org>
827 Reviewed by Eric Seidel.
829 Assertion failure: element->inDocument() in AsyncScriptRunner::executeScriptSoon()
830 https://bugs.webkit.org/show_bug.cgi?id=51067
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.
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.
840 Test: fast/dom/HTMLScriptElement/move-in-beforeload.html
841 fast/dom/HTMLScriptElement/remove-in-beforeload.html
843 * dom/ScriptElement.cpp:
844 (WebCore::ScriptElement::requestScript):
846 2010-12-29 Alexander Pavlov <apavlov@chromium.org>
848 Reviewed by Yury Semikhatsky.
850 Web Inspector: Element highlight tooltip displays wrong element size when zoomed in
851 https://bugs.webkit.org/show_bug.cgi?id=51703
853 * inspector/InspectorController.cpp:
854 (WebCore::InspectorController::drawElementTitle):
856 2010-12-29 Yael Aharon <yael.aharon@nokia.com>
858 Reviewed by Kent Tamura.
860 [HTML5][Forms] Support for :in-range and :out-of-range CSS selectors
861 https://bugs.webkit.org/show_bug.cgi?id=29071
863 Use InputType::rangeUnderflow() and InputType::rangeOverflow()
864 to determine if a control is in-range or out-of-range.
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
870 * css/CSSSelector.cpp:
871 (WebCore::CSSSelector::pseudoId):
872 (WebCore::nameToPseudoTypeMap):
873 (WebCore::CSSSelector::extractPseudoType):
875 * css/CSSStyleSelector.cpp:
876 (WebCore::CSSStyleSelector::canShareStyleWithElement):
877 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
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):
891 * html/NumberInputType.cpp:
892 (WebCore::NumberInputType::supportsRangeLimitation):
893 * html/NumberInputType.h:
894 * html/RangeInputType.cpp:
895 (WebCore::RangeInputType::supportsRangeLimitation):
896 * html/RangeInputType.h:
898 2010-12-29 Abhishek Arya <inferno@chromium.org>
900 Reviewed by Eric Seidel.
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
906 Test: fast/multicol/span/clone-anonymous-block-non-inline-child-crash.html
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().
912 2010-12-29 Patrick Gansterer <paroga@webkit.org>
914 Unreviewed build fix for WinCE after r73802.
916 Reapply parts from r72585:
917 Port ContextMenuWin.cpp to WinCE
918 https://bugs.webkit.org/show_bug.cgi?id=48408
921 * platform/ContextMenu.h:
922 * platform/win/ContextMenuWin.cpp:
923 (WebCore::ContextMenu::getContextMenuItems):
924 (WebCore::ContextMenu::createNativeMenuFromItems):
926 2010-12-29 Kent Hansen <kent.hansen@nokia.com>
928 Reviewed by Simon Hausmann.
930 [Qt] Fix compilation with Qt in namespace
931 https://bugs.webkit.org/show_bug.cgi?id=51701
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:
939 2010-12-28 Alexander Pavlov <apavlov@chromium.org>
941 Reviewed by Pavel Feldman.
943 Web Inspector: A disabled style property should get enabled when edited
944 https://bugs.webkit.org/show_bug.cgi?id=51679
946 Test: inspector/styles-disable-then-change.html
948 * inspector/front-end/CSSStyleModel.js:
949 (WebInspector.CSSProperty.prototype.setText):
950 (WebInspector.CSSProperty.prototype.setText.callback):
952 2010-12-29 Patrick Gansterer <paroga@webkit.org>
954 Reviewed by Andreas Kling.
956 [CMake] Remove WebKitGenerators
957 https://bugs.webkit.org/show_bug.cgi?id=50445
959 * CMakeLists.txt: Pass preprocessor to generate-bindings.pl.
961 2010-12-28 Pratik Solanki <psolanki@apple.com>
963 Reviewed by Eric Seidel.
965 https://bugs.webkit.org/show_bug.cgi?id=51522
966 Use deviceRGBColorSpaceRef() instead of calling CGColorSpaceCreateDeviceRGB()
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):
997 2010-12-28 Daniel Bates <dbates@rim.com>
999 Reviewed by Sam Weinig.
1001 Substitute // MARK: for compiler-specific #pragma mark
1002 https://bugs.webkit.org/show_bug.cgi?id=51657
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.
1008 * platform/graphics/cg/PathCG.cpp:
1009 * platform/graphics/mac/WebLayer.mm:
1011 2010-12-28 Jan Erik Hanssen <jhanssen@sencha.com>
1013 Reviewed by Eric Seidel.
1015 [Qt] GraphicsContext::getCTM() does not need to make a copy of QPainter::combinedTransform()
1016 https://bugs.webkit.org/show_bug.cgi?id=51687
1018 Use a const reference instead of a copy of QPainter::combinedTransform()
1019 in GraphicsContext::getCTM()
1021 * platform/graphics/qt/GraphicsContextQt.cpp:
1022 (WebCore::GraphicsContext::getCTM):
1024 2010-12-28 Takashi Toyoshima <toyoshim@google.com>
1026 Reviewed by Eric Seidel.
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
1032 No new tests. These fixes are trivial.
1035 (WebCore::Element::childTypeAllowed):
1036 * inspector/InspectorResourceAgent.cpp:
1037 (WebCore::cachedResourceTypeString):
1039 2010-12-28 Tony Gentilcore <tonyg@chromium.org>
1041 Reviewed by Eric Seidel.
1043 Remove unused member of PendingScript
1044 https://bugs.webkit.org/show_bug.cgi?id=51684
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.
1050 No new tests because no changed functionality.
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):
1060 2010-12-20 Antonio Gomes <agomes@rim.com>
1062 Reviewed by Daniel Bates.
1064 Spatial Navigation: code clean up (Part VI)
1065 https://bugs.webkit.org/show_bug.cgi?id=50666
1067 No new tests needed.
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
1086 (WebCore::canScrollInDirection): Signature changed.
1087 (WebCore::canBeScrolledIntoView): Ditto.
1088 (WebCore::virtualRectForAreaElementAndDirection): Ditto.
1090 2010-12-28 Adrienne Walker <enne@google.com>
1092 Reviewed by Kenneth Russell.
1094 [chromium] Fix tiled compositor assertion after GPU process recovery.
1095 https://bugs.webkit.org/show_bug.cgi?id=51682
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.
1104 * platform/graphics/chromium/LayerTilerChromium.cpp:
1105 (WebCore::LayerTilerChromium::growLayerToContain):
1107 2010-12-23 Zhenyao Mo <zmo@google.com>
1109 Reviewed by Kenneth Russell.
1111 Initialize to 0 for undefined values in CopyTexImage2D
1112 https://bugs.webkit.org/show_bug.cgi?id=51421
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):
1143 2010-12-23 Zhenyao Mo <zmo@google.com>
1145 Reviewed by Kenneth Russell.
1147 Map GLsizei to long instead of unsigned long in WebGLRenderingContext and GraphicsContext3D
1148 https://bugs.webkit.org/show_bug.cgi?id=39855
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:
1165 2010-12-28 Abhishek Arya <inferno@chromium.org>
1167 Reviewed by Kenneth Russell.
1169 Fix crash with invalid font in m_fontList by not drawing text when a custom font is in the
1171 https://bugs.webkit.org/show_bug.cgi?id=51681
1173 Test: canvas/philip/tests/2d.text-custom-font-load-crash.html
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.
1184 2010-12-28 Dimitri Glazkov <dglazkov@chromium.org>
1186 Reviewed by Eric Seidel.
1188 Combine setShadowRoot and clearShadowRoot into a simpler API
1189 https://bugs.webkit.org/show_bug.cgi?id=50971
1191 No change in behavior, and API is not used yet.
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
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.
1203 2010-12-28 Andrey Kosyakov <caseq@chromium.org>
1205 Reviewed by Pavel Feldman.
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
1211 Test: http/tests/inspector/extensions-resources-redirect.html
1213 * inspector/front-end/NetworkManager.js:
1214 (WebInspector.NetworkManager.prototype._appendRedirect):
1216 2010-12-28 Ilya Tikhonovsky <loislo@chromium.org>
1218 Unreviewed build fix for Qt.
1220 ResourceTreeModel.js was added.
1222 * inspector/front-end/WebKit.qrc:
1224 2010-12-28 Mikhail Naganov <mnaganov@chromium.org>
1226 Reviewed by Pavel Feldman.
1228 [Chromium] Fix memory leak in Profiles tab concerned with heap profiles views.
1230 https://bugs.webkit.org/show_bug.cgi?id=51680
1232 * inspector/front-end/ProfilesPanel.js:
1233 (WebInspector.ProfilesPanel.prototype._reset):
1235 2010-12-28 Alexander Pavlov <apavlov@chromium.org>
1237 Reviewed by Pavel Feldman.
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
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(...).
1245 Test: inspector/styles-url-linkify.html
1247 * inspector/front-end/StylesSidebarPane.js:
1248 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
1249 (WebInspector.StylePropertyTreeElement.prototype.updateTitle):
1251 2010-12-21 Ilya Tikhonovsky <loislo@chromium.org>
1253 Reviewed by Pavel Feldman.
1255 Web Inspector: Protocol cleanup task. Introduce Network, DOMStorage and Database domains.
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.
1263 https://bugs.webkit.org/show_bug.cgi?id=51334
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):
1367 2010-12-27 Helder Correia <helder@sencha.com>
1369 Reviewed by Ariya Hidayat.
1371 ContextShadow should use AffineTransform instead of TransformationMatrix
1372 https://bugs.webkit.org/show_bug.cgi?id=51661
1374 ContextShadow needs the CTM to make sure shadows are not affected by
1375 transformations when drawing on a canvas. AffineTransform is sufficient
1378 Existing tests: fast/canvas/canvas*shadow*html
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):
1390 2010-12-27 Daniel Bates <dbates@rim.com>
1392 Reviewed by Antonio Gomes.
1394 Clean up: Rename HTMLFrameElementBase::getMarginWidth() and HTMLFrameElementBase::getMarginHeight()
1395 https://bugs.webkit.org/show_bug.cgi?id=51634
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
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.
1418 2010-12-27 Martin Robinson <mrobinson@igalia.com>
1420 Reviewed by Daniel Bates.
1422 [GTK] RenderThemeGtk::m_HScale and RenderThemeGtk::m_VScale are not initialized
1423 https://bugs.webkit.org/show_bug.cgi?id=51654
1425 Properly initialize slider members of RenderThemeGtk. This can lead to test crashes
1426 on some debug configurations.
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.
1431 * platform/gtk/RenderThemeGtk.cpp:
1432 (WebCore::RenderThemeGtk::RenderThemeGtk): Properly initialize members.
1434 2010-12-27 Anton Muhin <antonm@chromium.org>
1436 Reviewed by David Levin.
1438 [v8] Remove unused methods to protect/unprotect wrappers during garbage collection
1439 https://bugs.webkit.org/show_bug.cgi?id=51648
1441 * bindings/v8/ScriptController.cpp:
1442 * bindings/v8/ScriptController.h:
1443 * bindings/v8/V8GCController.cpp:
1444 (WebCore::V8GCController::gcEpilogue):
1445 * bindings/v8/V8GCController.h:
1447 2010-12-27 Yury Semikhatsky <yurys@chromium.org>
1449 Unreviewed. Removed trailing spaces from a localized
1450 string to make it the same as the one used in the code.
1452 * English.lproj/localizedStrings.js:
1454 2010-12-27 Yael Aharon <yael.aharon@nokia.com>
1456 Reviewed by Eric Seidel.
1458 Browser is failing 16 baseline test from Selector API Test Suite
1459 https://bugs.webkit.org/show_bug.cgi?id=42968
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.
1465 No new tests, just updating the existing results for
1466 fast/dom/SelectorAPI/resig-SelectorAPI-test.xhtml.
1469 * dom/DocumentFragment.idl:
1472 2010-12-26 MORITA Hajime <morrita@google.com>
1474 Reviewed by Dan Bernstein.
1476 For box-shadow, non-primary shadows should have specified radii.
1477 https://bugs.webkit.org/show_bug.cgi?id=51386
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.
1483 Test: fast/box-shadow/spread-multiple-normal.html
1485 * rendering/RenderBoxModelObject.cpp:
1486 (WebCore::RenderBoxModelObject::paintBoxShadow):
1488 2010-12-26 Patrick Gansterer <paroga@webkit.org>
1490 Reviewed by Eric Seidel.
1492 Improve output of HTML parser benchmark
1493 https://bugs.webkit.org/show_bug.cgi?id=51611
1495 Calculate and show median, min and max values.
1497 * benchmarks/parser/html-parser.html:
1499 2010-12-26 Abhishek Arya <inferno@chromium.org>
1501 Reviewed by Simon Fraser.
1503 Remove the bad assert in paintPaginatedChildLayer, hitTestPaginatedChildLayer.
1504 https://bugs.webkit.org/show_bug.cgi?id=48772
1506 Test: fast/multicol/renderer-positioned-assert-crash.html
1508 * rendering/RenderLayer.cpp:
1509 (WebCore::RenderLayer::paintPaginatedChildLayer):
1510 (WebCore::RenderLayer::hitTestPaginatedChildLayer):
1512 2010-12-25 Peter Rybin <peter.rybin@gmail.com>
1514 Reviewed by Adam Barth.
1516 Adds currentColumn (and currentLine) to SegmentedString. Switches
1517 HTMLTreeBuilder to HTMLDocumentParser::textPosition when it
1518 needs position for a <script> tag.
1520 SegmentedString should provide column position
1521 https://bugs.webkit.org/show_bug.cgi?id=51311
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):
1548 2010-12-25 Andreas Kling <kling@webkit.org>
1550 Reviewed by Kenneth Rohde Christiansen.
1552 GraphicsContext: Don't pass StrokeStyle (enum) as const reference
1553 https://bugs.webkit.org/show_bug.cgi?id=51608
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):
1574 2010-12-24 Dan Bernstein <mitz@apple.com>
1576 Reviewed by Alexey Proskuryakov.
1578 REGRESSION (r74648): XHR layout test failures
1579 https://bugs.webkit.org/show_bug.cgi?id=51603
1585 2010-12-24 Dan Bernstein <mitz@apple.com>
1587 Try to fix the Qt build after r74648.
1591 * platform/network/qt/CredentialStorageQt.cpp: Added.
1592 (WebCore::CredentialStorage::getFromPersistentStorage):
1594 2010-12-24 Simon Fraser <simon.fraser@apple.com>
1596 Reviewed by Dan Bernstein.
1598 CSSStyleSelector cleanup
1599 https://bugs.webkit.org/show_bug.cgi?id=51597
1601 Make some methods const. Add assertion to checkOneSelector, with the
1602 intention of later removing the if (!e) check (this is hot code).
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):
1616 2010-12-24 Dan Bernstein <mitz@apple.com>
1618 Reviewed by Anders Carlsson.
1620 <rdar://problem/8758386> The web process uses its own credential storage
1621 https://bugs.webkit.org/show_bug.cgi?id=51599
1623 * WebCore.exp.in: Export CredentialStorage::getFromPersistentStorage(), Credential::hasPassword(),
1624 and Credential::isEmpty().
1626 2010-12-24 Yury Semikhatsky <yurys@chromium.org>
1628 Reviewed by Darin Adler.
1630 [V8] Rename V8CustomEventListener.{h,cpp} to V8EventListener.{h,cpp}
1631 https://bugs.webkit.org/show_bug.cgi?id=51595
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:
1648 2010-12-24 Carlos Garcia Campos <cgarcia@igalia.com>
1650 Reviewed by Xan Lopez.
1652 [GTK] Show current time / total in media player
1653 https://bugs.webkit.org/show_bug.cgi?id=51535
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:
1662 2010-12-24 Jan Erik Hanssen <jhanssen@sencha.com>
1664 Reviewed by Eric Seidel.
1666 Clean up CSSRuleData in CSSStyleSelector.h
1667 https://bugs.webkit.org/show_bug.cgi?id=27753
1669 Move CSSRuleData and CSSRuleDataList from CSSStyleSelector.h to the .cpp file.
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:
1685 2010-12-24 Yury Semikhatsky <yurys@chromium.org>
1687 Unreviewed. Fix compilation on Windows.
1689 * inspector/InspectorStyleSheet.cpp:
1690 (WebCore::InspectorStyle::~InspectorStyle): added explicit empty destructor
1691 * inspector/InspectorStyleSheet.h:
1693 2010-12-24 Yury Semikhatsky <yurys@chromium.org>
1695 Reviewed by Darin Adler.
1697 inspector/debugger-step-out.html crashing intermittently in the bots
1698 https://bugs.webkit.org/show_bug.cgi?id=50868
1700 Use RefPtr rather instead of raw pointers when keeping references
1701 to refcounted objects.
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):
1724 2010-12-24 Justin Schuh <jschuh@chromium.org>
1726 Reviewed by Nikolas Zimmermann.
1728 SVGElementInstance::m_useElement should be cleared when use element is removed from document
1729 https://bugs.webkit.org/show_bug.cgi?id=51486
1731 Test: svg/custom/use-instanceRoot-with-use-removed.svg
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:
1744 2010-12-23 Joseph Pecoraro <joepeck@webkit.org>
1746 Reviewed by Yury Semikhatsky.
1748 Web Inspector: Missing Localized Strings
1749 https://bugs.webkit.org/show_bug.cgi?id=51542
1751 Added missing strings: "WebSocket", "Frames", "Text", "Transfer",
1752 "Preserve Log upon Navigation", and "Go to Line".
1754 * English.lproj/localizedStrings.js:
1756 2010-12-24 Alexander Pavlov <apavlov@chromium.org>
1758 Reviewed by Yury Semikhatsky.
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
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).
1769 Test: inspector/elements-delete-inline-style.html
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):
1787 2010-12-24 Noel Gordon <noel.gordon@gmail.com>
1789 Reviewed by Andreas Kling.
1791 [chromium] Fix a style nit in the JPEG encoder
1792 https://bugs.webkit.org/show_bug.cgi?id=51574
1794 * platform/image-encoders/skia/JPEGImageEncoder.cpp: nit begone.
1796 2010-12-23 Alexander Pavlov <apavlov@chromium.org>
1798 Reviewed by Maciej Stachowiak.
1800 Web Inspector: CSS shorthand properties expand unnecessarily
1801 https://bugs.webkit.org/show_bug.cgi?id=36304
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.
1810 * css/CSSParser.cpp:
1811 (WebCore::CSSParser::parseBorderRadius):
1813 2010-12-24 Justin Schuh <jschuh@chromium.org>
1815 Reviewed by Darin Adler.
1817 setTargetAttributeAnimatedValue should check for a null shadowTreeElement.
1818 https://bugs.webkit.org/show_bug.cgi?id=51576
1820 Disallowed elements may be pruned from the shadow tree, leaving a null
1821 shadowTreeElement. We should check for that before setting attributes.
1823 Test: svg/custom/animate-disallowed-use-element.svg
1825 * svg/SVGAnimationElement.cpp:
1826 (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
1828 2010-12-24 Evan Martin <evan@chromium.org>
1830 Reviewed by Darin Adler.
1832 TextMetrics::width is an integer, but the member is a float
1833 https://bugs.webkit.org/show_bug.cgi?id=51566
1835 Change the return type to a float.
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.)
1841 * html/TextMetrics.h:
1842 (WebCore::TextMetrics::width):
1844 2010-12-24 Ryuan Choi <ryuan.choi@samsung.com>
1846 Reviewed by Kenneth Rohde Christiansen.
1848 [EFL] Add option to enable Touch Events.
1849 https://bugs.webkit.org/show_bug.cgi?id=49125
1851 Add files for EFL to support TOUCH_EVENTS.
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):
1862 2010-12-24 Gyuyoung Kim <gyuyoung.kim@samsung.com>
1864 Reviewed by Kenneth Rohde Christiansen.
1866 [EFL] Return an empty string instead of 'application/octet-stream' in getMIMETypeForExtension()
1867 https://bugs.webkit.org/show_bug.cgi?id=51457
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.
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.
1876 2010-12-24 Justin Schuh <jschuh@chromium.org>
1878 Reviewed by Darin Adler.
1880 SVGFontFaceElement::rebuildFontFace() should exit when not in document
1881 https://bugs.webkit.org/show_bug.cgi?id=51571
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.
1886 Test: svg/custom/use-invalid-font-face.svg
1888 * svg/SVGFontFaceElement.cpp:
1889 (WebCore::SVGFontFaceElement::parseMappedAttribute):
1890 (WebCore::SVGFontFaceElement::rebuildFontFace):
1891 (WebCore::SVGFontFaceElement::childrenChanged):
1893 2010-12-24 Justin Schuh <jschuh@chromium.org>
1895 Reviewed by Darin Adler.
1897 Remove unnecessary check in CSSCanvasValue::canvasDestroyed().
1898 https://bugs.webkit.org/show_bug.cgi?id=51564
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.
1903 Removing dead code, so no new tests needed.
1905 * css/CSSCanvasValue.cpp:
1906 (WebCore::CSSCanvasValue::canvasDestroyed):
1908 2010-12-23 Evan Martin <evan@chromium.org>
1910 Reviewed by Darin Adler.
1912 ViewportArguments.h uses an enum to intialize a bool
1913 https://bugs.webkit.org/show_bug.cgi?id=50982
1915 Initialize userScalable to true, rather than -1.
1916 No tests; fixes a compiler warning.
1918 * dom/ViewportArguments.h:
1919 (WebCore::ViewportArguments::ViewportArguments):
1921 2010-12-23 Jan Erik Hanssen <jhanssen@sencha.com>
1923 Reviewed by Adam Barth.
1925 [Qt] User name/password stripped from URLs
1926 https://bugs.webkit.org/show_bug.cgi?id=36232
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
1932 Tests: http/tests/xmlhttprequest/basic-auth-nopassword.html
1933 http/tests/xmlhttprequest/basic-auth-nouser.html
1935 * platform/network/qt/ResourceHandleQt.cpp:
1936 (WebCore::ResourceHandle::start):
1937 (WebCore::ResourceHandle::loadResourceSynchronously):
1939 2010-12-23 Ryosuke Niwa <rniwa@webkit.org>
1941 Reviewed by Darin Adler.
1943 queryCommandValue("FormatBlock") does not respect editing boundaries
1944 https://bugs.webkit.org/show_bug.cgi?id=51219
1946 Fixed the bug by checking the element we found in elementForFormatBlockCommand
1947 does not contain the editable root.
1949 * editing/FormatBlockCommand.cpp:
1950 (WebCore::FormatBlockCommand::elementForFormatBlockCommand):
1952 2010-12-23 Ryosuke Niwa <rniwa@webkit.org>
1954 Reviewed by Darin Adler.
1956 FormatBlock doesn't preserve typing style but it should
1957 https://bugs.webkit.org/show_bug.cgi?id=51140
1959 Fixed the bug by making preserveTypingStyle return true.
1961 Test: editing/execCommand/format-block-typing-style.html
1963 * editing/FormatBlockCommand.h:
1964 (WebCore::FormatBlockCommand::preservesTypingStyle):
1966 2010-12-23 Jessie Berlin <jberlin@apple.com>
1968 Reviewed by Sam Weinig.
1970 Need WebKit2 API to create a SecurityOrigin from protocol, host, and port
1971 https://bugs.webkit.org/show_bug.cgi?id=51563
1973 Add SecurityOrigin::create(const String& protocol, const String& host, int port).
1976 Export the symbols for WebCore::SecurityOrigin::create(String, String, int).
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:
1985 2010-12-23 Patrick Gansterer <paroga@webkit.org>
1987 Unreviewed build fix for WinCE after r73802.
1990 Port ContextMenuItemWin.cpp to WinCE
1991 https://bugs.webkit.org/show_bug.cgi?id=48407
1993 * platform/win/ContextMenuItemWin.cpp:
1995 2010-12-23 Adam Barth <abarth@webkit.org>
1997 Remove include of non-existant file.
1999 * bindings/v8/custom/V8DOMWindowCustom.cpp:
2001 2010-12-23 Ryosuke Niwa <rniwa@webkit.org>
2003 Reviewed by Darin Adler.
2005 Selection becomes stale when CharacterData is manipulated directly
2006 https://bugs.webkit.org/show_bug.cgi?id=51389
2008 The bug was caused by SelectionController's not adjusting selection when CharacterData's
2009 m_data is modified by its API.
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).
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.
2020 Tests: editing/selection/character-data-mutation-crash.html
2021 editing/selection/character-data-mutation.html
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:
2041 2010-12-23 Adam Barth <abarth@webkit.org>
2043 Reviewed by Darin Adler.
2045 Remove unneeded V8 bindings files
2046 https://bugs.webkit.org/show_bug.cgi?id=51570
2049 * bindings/generic/BindingDOMWindow.h: Removed.
2050 * bindings/v8/specialization/V8BindingDOMWindow.h: Removed.
2052 2010-12-23 Dan Bernstein <mitz@apple.com>
2056 * editing/EditorCommand.cpp:
2057 (WebCore::enabledDismissCorrectionPanel):
2059 2010-12-23 Darin Adler <darin@apple.com>
2061 Try to fix crash seen on GTK bot.
2063 * editing/EditorCommand.cpp:
2064 (WebCore::internalCommand): Add back empty string check I accidentally deleted in r74580.
2066 * WebCore.xcodeproj/project.pbxproj: Let Xcode edit the file.
2068 2010-12-23 Sheriff Bot <webkit.review.bot@gmail.com>
2070 Unreviewed, rolling out r74561.
2071 http://trac.webkit.org/changeset/74561
2072 https://bugs.webkit.org/show_bug.cgi?id=51565
2074 "Broke Chromium UI tests on Vista" (Requested by kbr_google on
2077 * platform/graphics/chromium/ImageLayerChromium.cpp:
2078 (WebCore::ImageLayerChromium::updateContentsIfDirty):
2079 * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2080 (WebCore::GraphicsContext3D::getImageData):
2082 2010-12-23 Mihai Parparita <mihaip@chromium.org>
2084 Reviewed by Kent Tamura.
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
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).
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.
2098 * platform/chromium/ChromiumBridge.h:
2099 * platform/chromium/ScrollbarThemeChromiumMac.mm:
2100 (WebCore::scrollbarStateToThemeState):
2101 (WebCore::ScrollbarThemeChromiumMac::paint):
2103 2010-12-23 Darin Adler <darin@apple.com>
2105 Reviewed by Sam Weinig.
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
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.
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.
2139 2010-12-23 Matthew Delaney <mdelaney@apple.com>
2141 Reviewed by Simon Fraser.
2143 Incorrect layer property used noted as changed in GraphicsLayerCA::setAcceleratesDrawing
2144 https://bugs.webkit.org/show_bug.cgi?id=51560
2148 * platform/graphics/ca/GraphicsLayerCA.cpp:
2149 (WebCore::GraphicsLayerCA::setAcceleratesDrawing):
2151 2010-12-23 Jan Erik Hanssen <jhanssen@sencha.com>
2153 Reviewed by Andreas Kling.
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
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.
2161 * platform/qt/PasteboardQt.cpp:
2162 (WebCore::Pasteboard::writeSelection):
2164 2010-12-23 Justin Schuh <jschuh@chromium.org>
2166 Reviewed by Eric Seidel.
2168 CSSCursorImageValue destructor should clear referenced element.
2169 https://bugs.webkit.org/show_bug.cgi?id=51417
2171 Calls correct method to clear image and renames method to avoid future confusion.
2173 Test: svg/css/cursor-image-replace.svg
2175 * css/CSSCursorImageValue.cpp:
2176 (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
2177 * svg/SVGElement.cpp:
2178 (WebCore::SVGElement::cursorImageValueRemoved):
2181 2010-12-22 Sam Weinig <sam@webkit.org>
2183 Reviewed by Darin Adler.
2185 WebKit2 needs to mirror the frame tree in the UIProcess
2186 https://bugs.webkit.org/show_bug.cgi?id=51546
2188 - Add client functions to notify that a frame has been added or
2189 removed from the page cache.
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:
2200 2010-12-22 Matthew Delaney <mdelaney@apple.com>
2202 Reviewed by Simon Fraser.
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
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
2213 2010-12-20 Adrienne Walker <enne@google.com>
2215 Reviewed by Kenneth Russell.
2217 [chromium] Tile root layer of the compositor.
2218 https://bugs.webkit.org/show_bug.cgi?id=49947
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.
2225 Test: LayoutTests/compositing/
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):
2280 2010-12-22 Ryosuke Niwa <rniwa@webkit.org>
2282 Reviewed by Eric Seidel.
2284 Editor.h doesn't need to include SelectionController.h
2285 https://bugs.webkit.org/show_bug.cgi?id=51441
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
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.
2372 2010-12-23 Adam Barth <abarth@webkit.org>
2374 Reviewed by Darin Adler.
2376 Move V8 to WebCore's implementation of showModalDialog
2377 https://bugs.webkit.org/show_bug.cgi?id=51527
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
2384 In this patch, I also remove a bunch of now-unneeded code in the
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:
2400 2010-12-23 Alexander Pavlov <apavlov@chromium.org>
2402 Reviewed by Joseph Pecoraro.
2404 Web Inspector: Can't backspace from CSS value to CSS key field
2405 https://bugs.webkit.org/show_bug.cgi?id=51476
2407 * inspector/front-end/StylesSidebarPane.js:
2408 (WebInspector.StylePropertyTreeElement.prototype.):
2409 (WebInspector.StylePropertyTreeElement.prototype):
2411 2010-12-23 W. James MacLean <wjmaclean@chromium.org>
2413 Reviewed by Kenneth Russell.
2415 [chromium] Add asserts to test for contiguous-pixel Skia bitmaps.
2416 https://bugs.webkit.org/show_bug.cgi?id=51186
2418 No new tests. Behaviour not changed, but need the asserts to detect when assumptions violated.
2420 * platform/graphics/chromium/ImageLayerChromium.cpp:
2421 (WebCore::ImageLayerChromium::updateContentsIfDirty):
2422 * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2423 (WebCore::GraphicsContext3D::getImageData):
2425 2010-12-23 Lucas De Marchi <lucas.demarchi@profusion.mobi>
2427 Reviewed by Kenneth Rohde Christiansen.
2429 Fix check by undefined macro
2430 https://bugs.webkit.org/show_bug.cgi?id=51531
2432 Fix check by undefined macro
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
2438 No change in functionality so no new tests.
2440 * platform/network/soup/cache/webkit/soup-cache.h:
2442 2010-12-23 Jonathan Dixon <joth@chromium.org>
2444 Reviewed by Steve Block.
2446 TouchEvents does not support multi-touch on a page with multiple touch targets
2447 https://bugs.webkit.org/show_bug.cgi?id=51258
2449 Test: fast/events/touch/multi-touch-grouped-targets.html
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.
2457 * platform/PlatformTouchPoint.h: Added end-stop marker for State enum.
2459 2010-12-23 Philippe Normand <pnormand@igalia.com>
2461 Reviewed by Xan Lopez.
2463 [GTK] media/audio-data-url.html fails since r75504
2464 https://bugs.webkit.org/show_bug.cgi?id=51525
2466 Make the GStreamer media-player advertize 3gpp mime-types as
2467 supported if the 3gp caps are in the typefind factories.
2469 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2470 (WebCore::mimeTypeCache):
2472 2010-12-23 Kent Tamura <tkent@chromium.org>
2474 Reviewed by Dimitri Glazkov.
2476 Refactor HTMLInputElement: Move a part of HTMLInputElement::defaultEventHandler()
2478 https://bugs.webkit.org/show_bug.cgi?id=51093
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.
2486 No new tests because this is just a refactoring.
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.
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:
2559 2010-12-23 Alexander Pavlov <apavlov@chromium.org>
2561 Reviewed by Joseph Pecoraro.
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
2566 * inspector/front-end/StylesSidebarPane.js:
2567 (WebInspector.StylePropertyTreeElement.prototype):
2569 2010-12-23 Noel Gordon <noel.gordon@gmail.com>
2571 Reviewed by Adam Barth.
2573 [chromium] Reduce canvas.toDataURL("image/png") run-time costs 300%
2574 https://bugs.webkit.org/show_bug.cgi?id=51455
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.
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.
2586 No change in behaviour, so no new tests.
2588 * platform/image-encoders/skia/PNGImageEncoder.cpp:
2589 (WebCore::PNGImageEncoder::encode): Apply Huffman image encoding.
2591 2010-12-22 Noel Gordon <noel.gordon@gmail.com>
2593 Reviewed by Darin Fisher.
2595 [chromium] Optimize canvas.toDataURL("image/png") unpremultiplication loop
2596 https://bugs.webkit.org/show_bug.cgi?id=51321
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.
2602 No new tests: canvas.toDataURL() is covered by existing tests.
2604 * platform/image-encoders/skia/PNGImageEncoder.cpp:
2605 (WebCore::preMultipliedBGRAtoRGBA):
2607 2010-12-22 Ariya Hidayat <ariya@sencha.com>
2609 Reviewed by Simon Fraser.
2611 Implement skewX() and skewY() for CSSMatrix.
2612 https://bugs.webkit.org/show_bug.cgi?id=38335
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().
2619 2010-12-22 Simon Fraser <simon.fraser@apple.com>
2621 Reviewed by Dan Bernstein.
2623 Support unprefixed box-shadow property
2624 https://bugs.webkit.org/show_bug.cgi?id=51448
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.
2630 Test: fast/css/box-shadow.html
2632 * css/CSSComputedStyleDeclaration.cpp:
2633 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Implement getComputedStyle
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
2643 * css/CSSPropertyNames.in: add box-shadow
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.
2650 * css/SVGCSSStyleSelector.cpp:
2651 (WebCore::CSSStyleSelector::applySVGProperty): Add CSSPropertyBoxShadow.
2653 * page/animation/AnimationBase.cpp:
2654 (WebCore::blendFunc):
2655 (WebCore::PropertyWrapperShadow::blend):
2656 (WebCore::AnimationBase::ensurePropertyMap): Support animations of box-shadow.
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):
2665 2010-12-22 Michael Saboff <msaboff@apple.com>
2667 Reviewed by Sam Weinig.
2669 REGRESSION: Can't shadow/overwrite window.constructor
2670 (causes TypeError exception)
2671 https://bugs.webkit.org/show_bug.cgi?id=48953
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.
2677 * bindings/scripts/CodeGeneratorJS.pm:
2678 * page/DOMWindow.idl:
2680 2010-12-22 Steve Lacey <sjl@chromium.org>
2682 Reviewed by David Levin.
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.
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.
2693 https://bugs.webkit.org/show_bug.cgi?id=51500
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):
2701 2010-12-22 Mihai Parparita <mihaip@chromium.org>
2703 Reviewed by Simon Fraser.
2705 the shadow direction is negated in canvas context shadowOffsetY.
2706 https://bugs.webkit.org/show_bug.cgi?id=25619
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).
2714 Also does the equivalent changes to FontCGWin.
2716 Test: fast/canvas/fillText-shadow.html
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):
2726 2010-12-22 Sheriff Bot <webkit.review.bot@gmail.com>
2728 Unreviewed, rolling out r74503.
2729 http://trac.webkit.org/changeset/74503
2730 https://bugs.webkit.org/show_bug.cgi?id=51513
2732 breaks chromium mac debug compile (Requested by tonyg-cr on
2735 * platform/graphics/chromium/ImageLayerChromium.cpp:
2736 (WebCore::ImageLayerChromium::updateContentsIfDirty):
2737 * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2738 (WebCore::GraphicsContext3D::getImageData):
2740 2010-12-22 Dan Bernstein <mitz@apple.com>
2742 Reviewed by Darin Adler.
2744 Replace runtime checks for hyphenation API availability with compile-time checks.
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.
2753 2010-12-22 Simon Fraser <simon.fraser@apple.com>
2755 Reviewed by Darin Adler.
2757 Cache snapshots of plug-ins before painting, to avoid script running during painting
2758 https://bugs.webkit.org/show_bug.cgi?id=51493
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.
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.
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.
2775 * manual-tests/plugins/plugin-paint-causes-layout.html: Added.
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.
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.
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.
2795 (WebCore::RenderView::updateWidgetPositions): Use getRetainedWidgets() etc.
2796 (WebCore::RenderView::notifyWidgets): Retain all the widgets, then send
2797 them all the message.
2799 * rendering/RenderWidget.h:
2800 * rendering/RenderWidget.cpp:
2801 (WebCore::RenderWidget::notifyWidget): Pass the message to the widget.
2803 2010-12-22 Adrienne Walker <enne@google.com>
2805 Reviewed by Kenneth Russell.
2807 Fix null pointer deref when restoring a lost WebGL context.
2808 https://bugs.webkit.org/show_bug.cgi?id=51494
2810 No new tests, as context restored events are not currently testable.
2812 * html/canvas/WebGLRenderingContext.cpp:
2813 (WebCore::WebGLRenderingContext::initializeNewContext):
2814 (WebCore::WebGLRenderingContext::restoreContext):
2816 2010-12-22 Adam Bergkvist <adam.bergkvist@ericsson.com>
2818 Reviewed by Martin Robinson.
2820 [GTK] Building with Blob support fails again
2821 https://bugs.webkit.org/show_bug.cgi?id=51392
2827 2010-12-22 Dan Bernstein <mitz@apple.com>
2829 Reviewed by Anders Carlsson.
2831 canHyphenate() always returns true for the default locale
2832 https://bugs.webkit.org/show_bug.cgi?id=51506
2834 No test, since this change only affects performance.
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.
2840 2010-12-22 Yury Semikhatsky <yurys@chromium.org>
2842 Reviewed by Joseph Pecoraro.
2844 Web Inspector: script name gets parsed as HTML in Call stack panel
2845 https://bugs.webkit.org/show_bug.cgi?id=51468
2847 * inspector/front-end/Placard.js:
2848 (WebInspector.Placard.prototype.set subtitle):
2850 2010-12-22 Eric Carlson <eric.carlson@apple.com>
2852 Reviewed by Darin Adler.
2854 MediaPlayer should look for MIME type in data: URL
2855 https://bugs.webkit.org/show_bug.cgi?id=51195
2857 If no MIME type is passed from the media element for a data: URL, try to get it from
2860 No new tests are possible because the MIME type is just passed to the media engine.
2862 * platform/graphics/MediaPlayer.cpp:
2863 (WebCore::MediaPlayer::load):
2865 2010-12-22 W. James MacLean <wjmaclean@chromium.org>
2867 Reviewed by Kenneth Russell.
2869 [chromium] Add asserts to test for contiguous-pixel Skia bitmaps.
2870 https://bugs.webkit.org/show_bug.cgi?id=51186
2872 No new tests. Behaviour not changed, but need the asserts to detect when assumptions violated.
2874 * platform/graphics/chromium/ImageLayerChromium.cpp:
2875 (WebCore::ImageLayerChromium::updateContentsIfDirty):
2876 * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2877 (WebCore::GraphicsContext3D::getImageData):
2879 2010-12-22 Chris Fleizach <cfleizach@apple.com>
2881 Reviewed by Darin Adler.
2883 WAI-ARIA menubar role mapped to AXGroup, should be AXMenuBar
2884 https://bugs.webkit.org/show_bug.cgi?id=51488
2886 Test: platform/mac/accessibility/aria-menubar.html
2888 * accessibility/AccessibilityObject.cpp:
2889 (WebCore::createARIARoleMap):
2891 2010-12-22 Zhenyao Mo <zmo@google.com>
2893 Reviewed by Kenneth Russell.
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
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:
2904 2010-12-22 Xan Lopez <xlopez@igalia.com>
2906 Reviewed by Gustavo Noronha.
2908 [GTK] Compilation fixes with GTK+ 2.91.7
2909 https://bugs.webkit.org/show_bug.cgi?id=51487
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.
2923 2010-12-22 Dirk Schulze <krit@wbekit.org>
2925 Reviewed by Nikolas Zimmermann.
2927 Cleanup SVG code according to the webkit style rules 2
2928 https://bugs.webkit.org/show_bug.cgi?id=51461
2930 Second patch to fix indention and other style issues according to the WebKit style rules in the SVG code.
2932 No changes of functionality, so no new tests.
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):
2992 (WebCore::SVGPaint::cssText):
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:
3006 2010-12-22 Chris Fleizach <cfleizach@apple.com>
3008 Reviewed by Sam Weinig.
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
3013 Support aria-multiline and use it to change the role of an ARIA "textbox"
3014 from AXTextArea to AXTextField.
3016 Test: platform/mac/accessibility/aria-multiline.html
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:
3028 2010-12-22 Simon Fraser <simon.fraser@apple.com>
3030 Reviewed by Dan Bernstein.
3032 CSS 2.1 failure: counter-increment-013 fails
3033 https://bugs.webkit.org/show_bug.cgi?id=51483
3035 Clamp the counter-increment property to the valid range of signed
3038 Test: fast/css/counters/counter-increment-overflow.html
3040 * css/CSSParser.cpp:
3041 (WebCore::clampToSignedInteger):
3042 (WebCore::CSSParser::parseCounter):
3044 2010-12-22 Dan Bernstein <mitz@apple.com>
3046 Rubber-stamped by Mark Rowe.
3048 Changed WebKitTools to Tools in script build phases.
3050 * WebCore.xcodeproj/project.pbxproj:
3052 2010-12-21 Vangelis Kokkevis <vangelis@chromium.org>
3054 Reviewed by Kenneth Russell.
3056 [chromium] Fixing crash with empty render surfaces.
3057 https://bugs.webkit.org/show_bug.cgi?id=51432
3059 Test: platform/chromium/compositing/empty-render-surface-crasher.html
3061 * platform/graphics/chromium/RenderSurfaceChromium.cpp:
3062 (WebCore::RenderSurfaceChromium::draw):
3064 2010-12-21 Pavel Podivilov <podivilov@chromium.org>
3066 Reviewed by Yury Semikhatsky.
3068 Web Inspector: persist JavaScript breakpoints in frontend settings.
3069 https://bugs.webkit.org/show_bug.cgi?id=48434
3071 * bindings/js/ScriptDebugServer.cpp:
3072 (WebCore::ScriptDebugServer::setBreakpoint):
3073 (WebCore::ScriptDebugServer::removeBreakpoint):
3074 * bindings/js/ScriptDebugServer.h:
3075 * bindings/v8/DebuggerScript.js:
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:
3112 2010-12-20 Antti Koivisto <antti@apple.com>
3114 Reviewed by Alexey Proskuryakov.
3116 https://bugs.webkit.org/show_bug.cgi?id=51354
3117 Don't block rendering and script execution on deferred stylesheets
3119 - Don't add low priority stylesheets to the document pending sheet count.
3120 - Resolve media attribute fully for the link element stylesheet load.
3122 Test: http/tests/local/stylesheet-and-script-load-order-media-print.html
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:
3134 2010-12-22 Sheriff Bot <webkit.review.bot@gmail.com>
3136 Unreviewed, rolling out r74473.
3137 http://trac.webkit.org/changeset/74473
3138 https://bugs.webkit.org/show_bug.cgi?id=51463
3140 broke compilation on leopard intel release (Requested by
3141 podivilov on #webkit).
3143 * bindings/js/ScriptDebugServer.cpp:
3144 (WebCore::ScriptDebugServer::setBreakpoint):
3145 (WebCore::ScriptDebugServer::removeBreakpoint):
3146 * bindings/js/ScriptDebugServer.h:
3147 * bindings/v8/DebuggerScript.js:
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):
3226 2010-12-21 Pavel Podivilov <podivilov@chromium.org>
3228 Reviewed by Yury Semikhatsky.
3230 Web Inspector: persist JavaScript breakpoints in frontend settings.
3231 https://bugs.webkit.org/show_bug.cgi?id=48434
3233 * bindings/js/ScriptDebugServer.cpp:
3234 (WebCore::ScriptDebugServer::setBreakpoint):
3235 (WebCore::ScriptDebugServer::removeBreakpoint):
3236 * bindings/js/ScriptDebugServer.h:
3237 * bindings/v8/DebuggerScript.js:
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:
3274 2010-12-22 Dirk Schulze <krit@wbekit.org>
3276 Reviewed by Nikolas Zimmermann.
3278 Cleanup SVG code according to the webkit style rules 1
3279 https://bugs.webkit.org/show_bug.cgi?id=51411
3281 First patch to fix indention and other style issues according to the WebKit style rules in the SVG code.
3283 No change of functionality.
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):
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):
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):
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):
3400 (WebCore::convertEmUnitToPixel):
3401 * svg/SVGUseElement.cpp:
3402 (WebCore::isDirectReference):
3404 2010-12-22 Dai Mikurube <dmikurube@google.com>
3406 Reviewed by Kent Tamura.
3408 https://bugs.webkit.org/show_bug.cgi?id=51289
3409 Initial state of checkValidity() and :invalid are incorrect with <select required>
3411 * html/HTMLSelectElement.cpp:
3412 (WebCore::HTMLSelectElement::childrenChanged): setNeedsValidityCheck() after <select>'s children change.
3414 2010-12-22 Alexander Pavlov <apavlov@chromium.org>
3416 Reviewed by Joseph Pecoraro.
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
3421 Invoke markPropertyStart() after the parser has restored after an error.
3425 2010-12-22 Dai Mikurube <dmikurube@google.com>
3427 Reviewed by Kent Tamura.
3429 Assertion failure with <select multiple required>
3430 https://bugs.webkit.org/show_bug.cgi?id=51260
3432 Test: fast/css/pseudo-valid-select-click.html
3434 * dom/SelectElement.cpp: updateValidity() after selecting some options of ListBox-typed <select> elements to update valid() cache.
3435 (WebCore::SelectElement::updateListBoxSelection):
3437 2010-12-21 Darin Adler <darin@apple.com>
3439 Unreviewed correction to unreviewed build fix for r74447.
3441 Inappropriate code was left behind in sourceURI function for non-Dashboard platforms.
3443 * html/HTMLImageLoader.cpp:
3444 (WebCore::HTMLImageLoader::sourceURI): Change the logic so all the bug-workaround
3445 logic is inside the #ifdef.
3447 2010-12-21 Simon Fraser <simon.fraser@apple.com>
3449 Reviewed by Darin Adler.
3451 Include the shadow color space as part of the GraphicsContext state
3452 https://bugs.webkit.org/show_bug.cgi?id=51420
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.
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):
3478 2010-12-21 Dan Bernstein <mitz@apple.com>
3480 Reviewed by Sam Weinig.
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
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
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.
3501 2010-12-21 Benjamin Kalman <kalman@chromium.org>
3503 Reviewed by Darin Adler.
3505 Shift-End does not select to the end of the line
3506 https://bugs.webkit.org/show_bug.cgi?id=50610
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.
3511 Test: editing/selection/extend-to-line-boundary.html
3513 * editing/SelectionController.cpp:
3514 (WebCore::SelectionController::positionForPlatform): Use visibleStart/visibleEnd rather than
3516 (WebCore::SelectionController::modifyExtendingForward): Don't explicitly use UPSTREAM affinity.
3518 2010-12-21 Jan Erik Hanssen <jhanssen@sencha.com>
3520 Reviewed by Simon Fraser.
3522 matrix3d() must take the zoom factor into account
3523 https://bugs.webkit.org/show_bug.cgi?id=51408
3525 Test: transforms/3d/general/matrix-with-zoom-3d.html
3527 * css/CSSStyleSelector.cpp:
3528 (WebCore::CSSStyleSelector::createTransformOperations):
3530 2010-12-21 Adam Barth <abarth@webkit.org>
3532 Reviewed by Darin Adler.
3534 Move V8 to common implementation of window.open
3535 https://bugs.webkit.org/show_bug.cgi?id=51385
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
3541 * bindings/generic/BindingDOMWindow.h:
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:
3570 2010-12-21 Ryosuke Niwa <rniwa@webkit.org>
3572 Unreviewed build fix for r74447.
3574 Call usesDashboardBackwardCompatibilityMode() only if DASHBOARD_SUPPORT is enabled.
3576 * html/HTMLImageLoader.cpp:
3577 (WebCore::HTMLImageLoader::sourceURI):
3579 2010-12-21 Dan Bernstein <mitz@apple.com>
3581 Reviewed by John Sullivan.
3583 <rdar://problem/8725702> REGRESSION (r68854): Broken image icon seen in the Address Book Dashboard widget
3585 Test: platform/mac/fast/dom/HTMLImageElement/dashboard-src-quirk.html
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).
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.
3595 2010-12-21 Ryosuke Niwa <rniwa@webkit.org>
3597 Reviewed by Darin Adler.
3599 CharacterData needs cleanup
3600 https://bugs.webkit.org/show_bug.cgi?id=51426
3602 Extracted CharacterData::setDataAndNotify and CharacterData::updateRenderer.
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:
3616 2010-12-21 Sheriff Bot <webkit.review.bot@gmail.com>
3618 Unreviewed, rolling out r74420.
3619 http://trac.webkit.org/changeset/74420
3620 https://bugs.webkit.org/show_bug.cgi?id=51436
3622 causes editing/pasteboard/paste-noscript-xhtml.xhtml to crash
3623 (Requested by tonyg-cr on #webkit).
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):
3637 2010-12-21 Kenneth Russell <kbr@google.com>
3639 Reviewed by Darin Fisher.
3641 Enable extensions used in accelerated 2D canvas implementation
3642 https://bugs.webkit.org/show_bug.cgi?id=51433
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.
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:
3656 2010-12-21 Zhenyao Mo <zmo@google.com>
3658 Reviewed by Kenneth Russell.
3660 WebGLRenderingContext needs to zero textures and renderbuffers
3661 https://bugs.webkit.org/show_bug.cgi?id=49355
3663 Test: fast/canvas/webgl/uninitialized-test.html
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.
3699 2010-12-21 Chris Rogers <crogers@google.com>
3701 Reviewed by Kenneth Russell.
3703 Add AudioBusChromium for decoding audio file data
3704 https://bugs.webkit.org/show_bug.cgi?id=51430
3706 No new tests since audio API is not yet implemented.
3708 * platform/audio/chromium: Added.
3709 * platform/audio/chromium/AudioBusChromium.cpp: Added.
3710 (WebCore::createBusFromInMemoryAudioFile):
3712 2010-12-21 Chris Rogers <crogers@google.com>
3714 Reviewed by Kenneth Russell.
3716 Add web audio spatialization resource files
3717 https://bugs.webkit.org/show_bug.cgi?id=50998
3719 No new tests since audio API is not yet implemented.
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.
3967 2010-12-21 Geoffrey Garen <ggaren@apple.com>
3969 Reviewed by Gavin Barraclough & Oliver Hunt.
3971 Added PageAllocationAligned, a cross-platform abstraction for memory allocations with arbitrary alignment requirements
3972 https://bugs.webkit.org/show_bug.cgi?id=51359
3974 * ForwardingHeaders/wtf/PageAllocationAligned.h: Added.
3976 2010-12-21 Ariya Hidayat <ariya@sencha.com>
3978 Reviewed by Simon Fraser.
3980 https://bugs.webkit.org/show_bug.cgi?id=49774
3981 Need to scale translation values in matrix() by the zoom factor.
3983 Test: fast/transforms/matrix-with-zoom.html
3985 * css/CSSStyleSelector.cpp:
3986 (WebCore::CSSStyleSelector::createTransformOperations):
3988 2010-12-21 Jian Li <jianli@chromium.org>
3990 Reviewed by Darin Adler.
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
3996 Test: http/tests/local/formdata/form-data-with-unknown-file-extension.html
3998 * platform/network/FormData.cpp:
3999 (WebCore::FormData::appendKeyValuePairItems):
4001 2010-12-21 Darin Adler <darin@apple.com>
4003 Reviewed by Sam Weinig.
4005 Mac WebKit delivers an extra didCommit when loading web archives
4006 https://bugs.webkit.org/show_bug.cgi?id=51419
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.
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.
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.
4024 2010-12-21 Yong Li <yoli@rim.com>
4026 Reviewed by Adam Barth.
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.
4033 https://bugs.webkit.org/show_bug.cgi?id=48077
4035 Test case: WebCore/manual-tests/bugzilla-48077.html.
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):
4054 2010-12-21 Anders Carlsson <andersca@apple.com>
4056 Reviewed by John Sullivan.
4058 Clicking missing plug-in text does not show a sheet
4059 https://bugs.webkit.org/show_bug.cgi?id=51403
4062 Export symbols needed by WebKit2.
4064 * WebCore.xcodeproj/project.pbxproj:
4065 Make HTMLPlugInImageElement.h a private header.
4067 * html/HTMLPlugInImageElement.h:
4068 (WebCore::HTMLPlugInImageElement::serviceType):
4069 (WebCore::HTMLPlugInImageElement::url):
4070 Make these member functions public.
4072 2010-12-21 Andras Becsi <abecsi@webkit.org>
4074 Unreviewed build fix.
4076 [Qt] Fix the build with USE_GSTREAMER=1
4078 No new tests needed.
4080 * WebCore.pro: remove nonexisting DataSourceGStreamer sources.
4082 2010-12-21 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
4084 Reviewed by Andreas Kling.
4086 [Qt] QtWebKit doesn't build in debug on Windows
4087 https://bugs.webkit.org/show_bug.cgi?id=41930
4089 Disable incremental linking in windows 32bit debug version as webkit is so
4090 big it fails to link incremental.
4092 Build fix. No new test cases added.
4096 2010-12-21 Dominic Cooney <dominicc@google.com>
4098 Reviewed by Adam Barth.
4100 Rename Node::isShadowNode to isShadowRoot
4101 https://bugs.webkit.org/show_bug.cgi?id=51060
4103 The method gets whether the node is the root of a shadow tree;
4104 renamed to reflect intent.
4106 A simple rename--no new tests needed.
4108 * css/CSSStyleSelector.cpp:
4109 (WebCore::CSSStyleSelector::initForStyleResolve):
4110 (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
4112 (WebCore::Node::shadowTreeRootNode):
4113 (WebCore::Node::isInShadowTree):
4114 (WebCore::eventTargetRespectingSVGTargetRules):
4115 (WebCore::Node::getEventAncestors):
4117 (WebCore::Node::isShadowRoot):
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):
4136 2010-12-20 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>
4138 Reviewed by Andreas Kling.
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
4145 Implemented by Asheesh Srivastava.
4147 [QT] QtWebkit geolocation's position.timestamp is not in miliseconds
4148 https://bugs.webkit.org/show_bug.cgi?id=51100
4150 Porting code not covered in layout testing. No new tests added.
4152 * platform/qt/GeolocationServiceQt.cpp:
4153 (WebCore::GeolocationServiceQt::positionUpdated):
4155 2010-12-20 Yuzo Fujishima <yuzo@google.com>
4157 Reviewed by Eric Seidel.
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
4162 Test: fast/css/font-face-font-family-descriptor.html
4164 * css/CSSParser.cpp:
4165 (WebCore::CSSParser::createFontFaceRule): Consider @font-face rule
4166 invalid if its font-family descriptor has multiple (or zero) families.
4168 2010-12-20 Pavel Feldman <pfeldman@chromium.org>
4170 Reviewed by Yury Semikhatsky.
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
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.
4178 * inspector/front-end/ConsoleView.js:
4179 (WebInspector.ConsoleView.prototype._formatnode):
4180 (WebInspector.ConsoleMessage):
4182 2010-12-20 Pavel Feldman <pfeldman@chromium.org>
4184 Reviewed by Joseph Pecoraro.
4186 Web Inspector: cycle through tag name / attributes / new attribute on Tab.
4188 https://bugs.webkit.org/show_bug.cgi?id=38429
4190 * inspector/front-end/ElementsTreeOutline.js:
4191 (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.moveToNextAttributeIfNeeded):
4193 2010-12-20 Yuta Kitamura <yutak@chromium.org>
4195 Reviewed by Alexey Proskuryakov.
4197 WebSocket errors should be logged to console
4198 https://bugs.webkit.org/show_bug.cgi?id=40945
4200 Test: http/tests/inspector/console-websocket-error.html
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):
4218 2010-12-17 MORITA Hajime <morrita@google.com>
4220 Reviewed by James Robinson.
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.
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.
4230 Test: fast/gradients/gradient-after-transparent-border.html
4232 * platform/graphics/skia/PlatformContextSkia.cpp:
4233 (WebCore::PlatformContextSkia::setStrokeShader):
4234 (WebCore::PlatformContextSkia::setFillShader):
4236 2010-12-20 Xiaomei Ji <xji@chromium.org>
4238 Reviewed by Dan Bernstein.
4240 Fix move left/right by character hang.
4241 https://bugs.webkit.org/show_bug.cgi?id=51344
4243 Test: editing/selection/51344.html
4245 * editing/VisiblePosition.cpp:
4246 (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
4247 (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
4249 2010-12-20 Steve Lacey <sjl@chromium.org>
4251 Reviewed by David Levin.
4253 Add missing default styles in mediaControlsChromium.css to prevent
4255 https://bugs.webkit.org/show_bug.cgi?id=51360
4257 No new tests needed as functionality is covered by existing layout
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):
4265 2010-12-20 Jian Li <jianli@chromium.org>
4267 Reviewed by David Levin.
4269 Add lastModifiedDate attribute to File interface per File API spec
4270 https://bugs.webkit.org/show_bug.cgi?id=49895
4272 lastModifiedDate is not supported for GObject bindings because Date is
4273 not support in code generation.
4275 Test: http/tests/local/fileapi/file-last-modified.html
4278 (WebCore::File::lastModifiedDate):
4282 2010-12-20 Mark Rowe <mrowe@apple.com>
4284 Reviewed by Dan Bernstein.