6ed4e0fabae05661b8912fe5754c97dcb8f23a5e
[WebKit-https.git] / WebCore / ChangeLog
1 2009-10-23  Keishi Hattori  <casey.hattori@gmail.com>
2
3         Reviewed by Timothy Hatcher.
4
5         Inspector injects _inspectorCommandLineAPI into global object when opened
6         https://bugs.webkit.org/show_bug.cgi?id=30675
7
8         * inspector/front-end/InjectedScript.js:
9         (InjectedScript.getCompletions):
10         (InjectedScript._evaluateOn):
11         (InjectedScript.addInspectedNode):
12         (InjectedScript._ensureCommandLineAPIInstalled): Moved _inspectorCommandLineAPI from window to console.
13
14 2009-10-23  Janne Koskinen  <janne.p.koskinen@digia.com>
15
16         Reviewed by Tor Arne Vestbø.
17
18         [Qt] don't undef NULL in Symbian emulator
19
20         npapi.h way of defining mwerks compiler,__intel__
21         and win32 are all true for Symbian emulator.
22         Changed the definions so that NULL won't be undefined
23         when compiling for Symbian emulator nor target HW.
24
25         * bridge/npapi.h:
26
27 2009-10-23  Janne Koskinen  <janne.p.koskinen@digia.com>
28
29         Reviewed by Tor Arne Vestbø.
30
31         [Qt] Correct linking of sqlite3 for Symbian
32         https://bugs.webkit.org/show_bug.cgi?id=30569
33
34         ".lib" will try to include library as static library
35         causing the library to be searched from wrong directory and if found
36         will be statically linked instead of the inteded dynamic linking.
37
38         * WebCore.pro:
39
40 2009-10-23  Enrica Casucci  <enrica@apple.com>
41
42         Reviewed by Adele Peterson.
43
44         REGRESSION: Copy is copying incorrect background-color
45         <rdar://problem/7248529>
46         https://bugs.webkit.org/show_bug.cgi?id=29697
47
48         Test: editing/execCommand/indent-paragraphs.html
49
50         This change removes the BackgroundColor from the list 
51         of inheritable CSS properties and changes significantly
52         the way we perform indentation.
53         The new implementation of IndentOutdentCommand uses a new method
54         defined in CompositeEditCommand called moveParagraphWithClones.
55         This is an improved version of the original moveParagraph that
56         is aimed at preserving the original markup of the paragraph being
57         moved.
58
59         * editing/ApplyStyleCommand.cpp:
60         (WebCore::): removed CSSPropertyBackgroundColor from editingStyleProperties.
61         * editing/CompositeEditCommand.cpp:
62         (WebCore::CompositeEditCommand::CompositeEditCommand): Removed trailing blanks.
63         (WebCore::CompositeEditCommand::rebalanceWhitespaceAt): Removed trailing blanks.
64         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): Added.
65         (WebCore::CompositeEditCommand::cleanupAfterDeletion): Added.
66         (WebCore::CompositeEditCommand::moveParagraphWithClones): Added.
67         (WebCore::CompositeEditCommand::moveParagraphs): Modified to use cleanupAfterDeletion.
68         (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Removed trailing blanks.
69         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph): Removed trailing blanks.
70         (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary): Removed trailing blanks.
71         * editing/CompositeEditCommand.h: Added three new methods.
72         * editing/IndentOutdentCommand.cpp:
73         (WebCore::IndentOutdentCommand::tryIndentingAsListItem): Changed to use moveParagraphWithClones.
74         (WebCore::IndentOutdentCommand::indentIntoBlockquote): Changed to use moveParagraphWithClones.
75         (WebCore::IndentOutdentCommand::indentRegion): Removed comment.
76         * editing/IndentOutdentCommand.h: Removed prepareBlockquoteLevelForInsertion method.
77
78 2009-10-23  Steve Block  <steveblock@google.com>
79
80         Reviewed by Eric Seidel.
81
82         Adds missing UnusedParam.h includes, required when INSPECTOR is not enabled.
83         https://bugs.webkit.org/show_bug.cgi?id=30677
84
85         Build fix, no new tests required.
86
87         * page/Console.cpp: Modified. Added UnusedParam.h include.
88         * workers/WorkerContext.cpp: Modified. Added UnusedParam.h include.
89
90 2009-10-23  Girish Ramakrishnan  <girish@forwardbias.in>
91
92         Reviewed by Holger Freyther.
93
94         [Qt] Plugins : Use window's winId() instead of the widget's.
95
96         As per, https://developer.mozilla.org/en/NPN_GetValue
97         NPNVnetscapeWindow on Unix/X11: "Gets the browser toplevel window in which the
98         plug-in is displayed; returns Window".
99
100         The issue was found because NPNVNetscapeWindow winId() ends up creating
101         a native window resulting in flicker.
102
103         https://bugs.webkit.org/show_bug.cgi?id=30706
104
105         * plugins/qt/PluginViewQt.cpp:
106         (WebCore::PluginView::getValue):
107
108 2009-10-23  Girish Ramakrishnan  <girish@forwardbias.in>
109
110         Reviewed by Holger Freyther.
111
112         [Qt] Windowless Plugins : Don't use m_clipRect when painting.
113
114         Though it works, it is not correct to use m_clipRect for painting
115         in Windowless mode. Instead, the rect paramater that is passed
116         as a part of PluginView::paint() must be used. This change will
117         also result in some speedup since previously we used to paint all
118         the visible parts of a windowless plugin (even if those parts were
119         not dirty).
120
121         Also, fix invalidateRect() to compute the correct width and height.
122
123         https://bugs.webkit.org/show_bug.cgi?id=30711
124
125         * plugins/qt/PluginViewQt.cpp:
126         (WebCore::PluginView::paint):
127         (WebCore::PluginView::invalidateRect):
128
129 2009-10-21  Girish Ramakrishnan  <girish@forwardbias.in>
130
131         Reviewed by Holger Freyther.
132
133         Plugins : Use test.swf in the plugins manual tests.
134
135         They previously referenced youtube videos which among other things are
136         cumbersome to use without internet connection. The old youtube link is
137         just commented out so that testing with youtube can be done with
138         little effort.
139
140         https://bugs.webkit.org/show_bug.cgi?id=30662
141
142         * manual-tests/plugins/test.swf: Copied from LayoutTests/fast/replaced/resources/test.swf.
143         * manual-tests/plugins/windowed.html:
144         * manual-tests/plugins/windowless.html:
145         * manual-tests/qt/plugin-sibling-frame-include.html:
146
147 2009-10-23  Brian Weinstein  <bweinstein@apple.com>
148
149         Reviewed by Jon Honeycutt.
150
151         Fix the Windows Release build by moving Accessibility files
152         into all-in-one file and excluding them from the build.
153
154         * WebCore.vcproj/WebCore.vcproj:
155         * accessibility/AccessibilityAllInOne.cpp: Added.
156
157 2009-10-16  Gavin Barraclough  <barraclough@apple.com>
158
159         Reviewed by Sam Weinig & Geoff Garen.
160
161         https://bugs.webkit.org/show_bug.cgi?id=30696
162         Add support for IsolatedWorlds to JSC bindings.
163
164         An IsolatedWorld is basically a parallel, separate copy of the window shells and DOM wrapper objects for
165         a given document.  To support isolation this patch:
166
167             * Adds support to the ScriptController to track multiple window shells, one per world.
168             * Adds support to Document to support multiple separate wrapper-maps, one per world.
169             * Replaces the single global DOM wrapper map (on the WebCoreJSClientData) with separate maps,
170               stored on the (new) IsolatedWorld objects.
171
172         In addition to supporting separate copies of these objects, two other features are supported:
173
174             * It is necessary to track the current world on entry into JSC, so that within callbacks out to WebCore
175               we can determine which world (and as such, set of DOM bindings) we should be operating on.
176             * EventListeners & Callbacks are run in the world they were registered in.
177               This requires the handler to retain a reference to the world.
178
179         No new tests. (Enabled existing isolated world layout tests.)
180
181         * WebCore.base.exp:
182         * bindings/js/JSAbstractWorkerCustom.cpp:
183         (WebCore::JSAbstractWorker::addEventListener):
184         (WebCore::JSAbstractWorker::removeEventListener):
185         * bindings/js/JSCallbackData.cpp:
186         (WebCore::JSCallbackData::invokeCallback):
187         * bindings/js/JSCallbackData.h:
188         (WebCore::JSCallbackData::JSCallbackData):
189         * bindings/js/JSCustomXPathNSResolver.cpp:
190         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
191         * bindings/js/JSDOMApplicationCacheCustom.cpp:
192         (WebCore::JSDOMApplicationCache::addEventListener):
193         (WebCore::JSDOMApplicationCache::removeEventListener):
194         * bindings/js/JSDOMBinding.cpp:
195         (WebCore::removeWrappers):
196         (WebCore::DOMObjectWrapperMap::get):
197         (WebCore::DOMObjectWrapperMap::set):
198         (WebCore::DOMObjectWrapperMap::remove):
199         (WebCore::DOMObjectWrapperMap::take):
200         (WebCore::IsolatedWorld::IsolatedWorld):
201         (WebCore::IsolatedWorld::~IsolatedWorld):
202         (WebCore::EnterIsolatedWorld::EnterIsolatedWorld):
203         (WebCore::EnterIsolatedWorld::~EnterIsolatedWorld):
204         (WebCore::JSGlobalDataWorldIterator::JSGlobalDataWorldIterator):
205         (WebCore::JSGlobalDataWorldIterator::operator bool):
206         (WebCore::JSGlobalDataWorldIterator::operator*):
207         (WebCore::JSGlobalDataWorldIterator::operator->):
208         (WebCore::JSGlobalDataWorldIterator::operator++):
209         (WebCore::getCurrentWorld):
210         (WebCore::getNormalWorld):
211         (WebCore::commonNormalWorld):
212         (WebCore::commonCurrentWorld):
213         (WebCore::DOMObjectHashTableMap::mapFor):
214         (WebCore::DOMObjectWrapperMap::mapFor):
215         (WebCore::forgetDOMObject):
216         (WebCore::getCachedDOMNodeWrapper):
217         (WebCore::forgetDOMNode):
218         (WebCore::cacheDOMNodeWrapper):
219         (WebCore::forgetAllDOMNodesForDocument):
220         (WebCore::forgetWorldOfDOMNodesForDocument):
221         (WebCore::isObservableThroughDOM):
222         (WebCore::markDOMNodesForDocument):
223         (WebCore::markActiveObjectsForContext):
224         (WebCore::takeWrappers):
225         (WebCore::updateDOMNodeDocument):
226         (WebCore::markDOMObjectWrapper):
227         (WebCore::allowsAccessFromFrame):
228         (WebCore::printErrorMessageForFrame):
229         (WebCore::JSC_DebuggerCallFrame_evaluateInWorld):
230         (WebCore::JSC_callInWorld):
231         (WebCore::JSC_constructInWorld):
232         (WebCore::JSC_evaluateInWorld):
233         * bindings/js/JSDOMBinding.h:
234         (WebCore::IsolatedWorld::rememberDocument):
235         (WebCore::IsolatedWorld::forgetDocument):
236         (WebCore::IsolatedWorld::rememberScriptController):
237         (WebCore::IsolatedWorld::forgetScriptController):
238         (WebCore::DOMObjectHashTableMap::~DOMObjectHashTableMap):
239         (WebCore::DOMObjectHashTableMap::get):
240         (WebCore::WebCoreJSClientData::WebCoreJSClientData):
241         (WebCore::WebCoreJSClientData::currentWorld):
242         (WebCore::WebCoreJSClientData::normalWorld):
243         (WebCore::WebCoreJSClientData::rememberWorld):
244         (WebCore::WebCoreJSClientData::forgetWorld):
245         (WebCore::debuggerWorld):
246         (WebCore::pluginWorld):
247         * bindings/js/JSDOMGlobalObject.cpp:
248         (WebCore::JSDOMGlobalObject::createJSAttributeEventListener):
249         (WebCore::toJSDOMGlobalObject):
250         * bindings/js/JSDOMGlobalObject.h:
251         * bindings/js/JSDOMWindowBase.cpp:
252         (WebCore::JSDOMWindowBase::printErrorMessage):
253         (WebCore::JSDOMWindowBase::commonJSGlobalData):
254         (WebCore::toJS):
255         (WebCore::toJSDOMWindow):
256         * bindings/js/JSDOMWindowBase.h:
257         * bindings/js/JSDOMWindowCustom.cpp:
258         (WebCore::createWindow):
259         (WebCore::JSDOMWindow::open):
260         (WebCore::JSDOMWindow::showModalDialog):
261         (WebCore::JSDOMWindow::setTimeout):
262         (WebCore::JSDOMWindow::setInterval):
263         (WebCore::JSDOMWindow::addEventListener):
264         (WebCore::JSDOMWindow::removeEventListener):
265         * bindings/js/JSDOMWindowShell.cpp:
266         (WebCore::toJS):
267         (WebCore::toJSDOMWindowShell):
268         * bindings/js/JSDOMWindowShell.h:
269         * bindings/js/JSDesktopNotificationsCustom.cpp:
270         (WebCore::JSNotification::addEventListener):
271         (WebCore::):
272         * bindings/js/JSEventListener.cpp:
273         (WebCore::JSEventListener::JSEventListener):
274         (WebCore::JSEventListener::handleEvent):
275         (WebCore::JSEventListener::reportError):
276         * bindings/js/JSEventListener.h:
277         (WebCore::JSEventListener::create):
278         * bindings/js/JSEventSourceCustom.cpp:
279         (WebCore::JSEventSource::addEventListener):
280         (WebCore::JSEventSource::removeEventListener):
281         * bindings/js/JSEventTarget.cpp:
282         (WebCore::toJS):
283         * bindings/js/JSHTMLDocumentCustom.cpp:
284         (WebCore::JSHTMLDocument::open):
285         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
286         (WebCore::JSHTMLFrameSetElement::nameGetter):
287         * bindings/js/JSInspectorBackendCustom.cpp:
288         (WebCore::JSInspectorBackend::databaseForId):
289         (WebCore::JSInspectorBackend::inspectedWindow):
290         (WebCore::JSInspectorBackend::nodeForId):
291         * bindings/js/JSLazyEventListener.cpp:
292         (WebCore::JSLazyEventListener::JSLazyEventListener):
293         (WebCore::JSLazyEventListener::parseCode):
294         * bindings/js/JSLazyEventListener.h:
295         (WebCore::JSLazyEventListener::create):
296         * bindings/js/JSMessageChannelCustom.cpp:
297         (WebCore::JSMessageChannel::markChildren):
298         * bindings/js/JSMessagePortCustom.cpp:
299         (WebCore::JSMessagePort::markChildren):
300         (WebCore::JSMessagePort::addEventListener):
301         (WebCore::JSMessagePort::removeEventListener):
302         * bindings/js/JSNodeCustom.cpp:
303         (WebCore::JSNode::addEventListener):
304         (WebCore::JSNode::removeEventListener):
305         (WebCore::JSNode::markChildren):
306         * bindings/js/JSNodeFilterCondition.cpp:
307         (WebCore::JSNodeFilterCondition::acceptNode):
308         * bindings/js/JSQuarantinedObjectWrapper.cpp:
309         (WebCore::JSQuarantinedObjectWrapper::construct):
310         (WebCore::JSQuarantinedObjectWrapper::call):
311         * bindings/js/JSSVGElementInstanceCustom.cpp:
312         (WebCore::JSSVGElementInstance::addEventListener):
313         (WebCore::JSSVGElementInstance::removeEventListener):
314         * bindings/js/JSSharedWorkerCustom.cpp:
315         (WebCore::JSSharedWorker::markChildren):
316         * bindings/js/JSWebSocketCustom.cpp:
317         (WebCore::JSWebSocket::addEventListener):
318         (WebCore::JSWebSocket::removeEventListener):
319         * bindings/js/JSWorkerContextCustom.cpp:
320         (WebCore::JSWorkerContext::addEventListener):
321         (WebCore::JSWorkerContext::removeEventListener):
322         (WebCore::JSWorkerContext::setTimeout):
323         (WebCore::JSWorkerContext::setInterval):
324         * bindings/js/JSXMLHttpRequestConstructor.cpp:
325         (WebCore::constructXMLHttpRequest):
326         * bindings/js/JSXMLHttpRequestCustom.cpp:
327         (WebCore::JSXMLHttpRequest::markChildren):
328         (WebCore::JSXMLHttpRequest::addEventListener):
329         (WebCore::JSXMLHttpRequest::removeEventListener):
330         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
331         (WebCore::JSXMLHttpRequestUpload::markChildren):
332         (WebCore::JSXMLHttpRequestUpload::addEventListener):
333         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
334         * bindings/js/ScheduledAction.cpp:
335         (WebCore::ScheduledAction::create):
336         (WebCore::ScheduledAction::ScheduledAction):
337         (WebCore::ScheduledAction::executeFunctionInContext):
338         (WebCore::ScheduledAction::execute):
339         * bindings/js/ScheduledAction.h:
340         (WebCore::ScheduledAction::ScheduledAction):
341         * bindings/js/ScriptCachedFrameData.cpp:
342         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
343         (WebCore::ScriptCachedFrameData::restore):
344         * bindings/js/ScriptController.cpp:
345         (WebCore::ScriptController::~ScriptController):
346         (WebCore::ScriptController::evaluateInWorld):
347         (WebCore::ScriptController::evaluate):
348         (WebCore::ScriptController::evaluateInIsolatedWorld):
349         (WebCore::ScriptController::clearWindowShell):
350         (WebCore::ScriptController::initScript):
351         (WebCore::ScriptController::processingUserGestureEvent):
352         (WebCore::ScriptController::attachDebugger):
353         (WebCore::ScriptController::updateDocument):
354         (WebCore::ScriptController::bindingRootObject):
355         (WebCore::ScriptController::createRootObject):
356         (WebCore::ScriptController::windowScriptNPObject):
357         (WebCore::ScriptController::jsObjectForPluginElement):
358         * bindings/js/ScriptController.h:
359         (WebCore::ScriptController::windowShell):
360         (WebCore::ScriptController::existingWindowShell):
361         (WebCore::ScriptController::globalObject):
362         (WebCore::ScriptController::forgetWorld):
363         * bindings/js/ScriptControllerMac.mm:
364         (WebCore::ScriptController::windowScriptObject):
365         * bindings/js/ScriptEventListener.cpp:
366         (WebCore::createAttributeEventListener):
367         * bindings/js/ScriptFunctionCall.cpp:
368         (WebCore::ScriptFunctionCall::call):
369         (WebCore::ScriptFunctionCall::construct):
370         * bindings/js/ScriptObjectQuarantine.cpp:
371         (WebCore::getQuarantinedScriptObject):
372         * bindings/js/ScriptState.cpp:
373         (WebCore::scriptStateFromNode):
374         (WebCore::scriptStateFromPage):
375         * bindings/js/ScriptState.h:
376         * bindings/js/WorkerScriptController.cpp:
377         (WebCore::WorkerScriptController::WorkerScriptController):
378         (WebCore::WorkerScriptController::evaluate):
379         * bindings/objc/DOMInternal.mm:
380         (-[WebScriptObject _initializeScriptDOMNodeImp]):
381         * bindings/objc/WebScriptObject.mm:
382         (-[WebScriptObject callWebScriptMethod:withArguments:]):
383         (-[WebScriptObject evaluateWebScript:]):
384         * bindings/scripts/CodeGeneratorJS.pm:
385         * bridge/NP_jsobject.cpp:
386         (_NPN_InvokeDefault):
387         (_NPN_Invoke):
388         (_NPN_Evaluate):
389         (_NPN_Construct):
390         * bridge/jni/jni_jsobject.mm:
391         (JavaJSObject::call):
392         (JavaJSObject::eval):
393         * dom/Document.cpp:
394         (WebCore::Document::createWrapperCache):
395         * dom/Document.h:
396         (WebCore::Document::wrapperCacheMap):
397         (WebCore::Document::getWrapperCache):
398         * inspector/InspectorController.cpp:
399         (WebCore::InspectorController::startUserInitiatedProfiling):
400         (WebCore::InspectorController::stopUserInitiatedProfiling):
401         * inspector/JavaScriptCallFrame.cpp:
402         (WebCore::JavaScriptCallFrame::evaluate):
403         * loader/FrameLoader.cpp:
404         (WebCore::FrameLoader::dispatchWindowObjectAvailable):
405         * platform/network/mac/AuthenticationMac.mm:
406         * xml/XMLHttpRequest.cpp:
407         (WebCore::XMLHttpRequest::XMLHttpRequest):
408         (WebCore::XMLHttpRequest::dropProtection):
409         * xml/XMLHttpRequest.h:
410         (WebCore::XMLHttpRequest::create):
411
412 2009-10-22  Joseph Pecoraro  <joepeck@webkit.org>
413
414         Reviewed by Timothy Hatcher.
415
416         Web Inspector: EventListenersSidebarPane TODO No Longer Needed
417         https://bugs.webkit.org/show_bug.cgi?id=30705
418
419         * inspector/front-end/EventListenersSidebarPane.js:
420
421 2009-10-22  Alexey Proskuryakov  <ap@apple.com>
422
423         Reviewed by Tim Hatcher.
424
425         https://bugs.webkit.org/show_bug.cgi?id=30506
426         <rdar://problem/7319845> Resources that the server sent as 304 not modified are not shown
427         in the inspectors resource pane
428
429         I don't know how to make a test for this.
430
431         The issue here was that preloaded resources weren't added to DocLoader document resource set,
432         but Web Inspector asked DocLoader to fetch data from CachedResource. Even when (if) document
433         parser eventually requested the same resource for real and it got added to resource set, it
434         was too late - the Inspector wasn't updated.
435
436         * inspector/InspectorResource.cpp:
437         (WebCore::InspectorResource::cachedResource):
438         (WebCore::InspectorResource::type):
439         (WebCore::InspectorResource::resourceData):
440         * inspector/InspectorResource.h:
441         Fix the issue by trying to fetch corresponding CachedResource harder - also look in global
442         cache. This seems safe, and easier than updating the Inspector on transitions between
443         resource states (revalidate vs. revalidate done and preload vs. non-preload).
444
445 2009-10-22  Beth Dakin  <bdakin@apple.com>
446
447         Reviewed by Dan Bernstein.
448
449         Fix for <rdar://problem/6942706> ER: Add a CSS property that allows 
450         shadows to work for SVG content
451         -and corresponding-
452         https://bugs.webkit.org/show_bug.cgi?id=30479
453
454         This patch adds a new SVG-specific CSS property called -webkit-
455         shadow that has the same syntax as -webkit-box-shadow
456
457         Add CSSPropertyWebkitShadow to the list of SVG CSS properties, and 
458         make valueForShadow a member function rather than a static function 
459         * css/CSSComputedStyleDeclaration.cpp:
460         (WebCore::):
461         (WebCore::CSSComputedStyleDeclaration::valueForShadow):
462         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
463         * css/CSSComputedStyleDeclaration.h:
464
465         Call valueForShadow for CSSPropertyWebkitShadow
466         * css/SVGCSSComputedStyleDeclaration.cpp:
467         (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
468
469         Do standard CSS stuff for CSSPropertyWebkitShadow
470         * css/SVGCSSParser.cpp:
471         (WebCore::CSSParser::parseSVGValue):
472         * css/SVGCSSPropertyNames.in:
473         * css/SVGCSSStyleSelector.cpp:
474         (WebCore::CSSStyleSelector::applySVGProperty):
475
476         Set the appropriate shadow on the paint context if we have one. 
477         This seems to be all we have to do to have an SVG-shaped shadow.
478         * rendering/SVGRenderSupport.cpp:
479         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
480
481         Add shadow to SVGRenderStyle. I added a new macro that I don't like 
482         just because that's the way things are done here right now.
483         * rendering/style/SVGRenderStyle.cpp:
484         (WebCore::SVGRenderStyle::SVGRenderStyle):
485         (WebCore::SVGRenderStyle::operator==):
486         * rendering/style/SVGRenderStyle.h:
487         * rendering/style/SVGRenderStyleDefs.cpp:
488         (StyleShadowSVGData::StyleShadowSVGData):
489         (StyleShadowSVGData::operator==):
490         * rendering/style/SVGRenderStyleDefs.h:
491         (WebCore::StyleShadowSVGData::create):
492         (WebCore::StyleShadowSVGData::copy):
493         (WebCore::StyleShadowSVGData::operator!=):
494
495 2009-10-22  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
496  
497         Reviewed by Xan Lopez.
498
499         https://bugs.webkit.org/show_bug.cgi?id=25530
500         [Gtk] Implement LABEL_FOR/LABELLED_BY relationship pair for labels
501
502         Implements atk_object_ref_relation_set and LABEL_FOR/LABELLED_BY.
503         Also causes the accessible name for labeled controls to be based on
504         the label as expected, rather than based on the contents.
505
506         * accessibility/AccessibilityRenderObject.h:
507         * accessibility/AccessibilityRenderObject.cpp:
508         (correspondingLabelForControlElement):
509         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
510         (setAtkRelationSetFromCoreObject):
511         (webkit_accessible_ref_relation_set):
512         (webkit_accessible_class_init):
513         (webkit_accessible_get_name):
514
515 2009-10-22  Joseph Pecoraro  <joepeck@webkit.org>
516
517         Reviewed by Timothy Hatcher.
518
519         Web Inspector: windowFocused and windowBlured Fail to Clear/Mark Inspector as "inactive"
520         https://bugs.webkit.org/show_bug.cgi?id=30663
521
522           Correctly handle focusing/blurring on inner <iframe>'s such as Source Frames.
523
524         * inspector/front-end/inspector.js:
525         (WebInspector.windowFocused): fix for inner iframes
526         (WebInspector.windowBlurred): fix for inner iframes
527         (WebInspector.addMainEventListeners): change useCapture to false
528
529 2009-10-22  Jaime Yap  <jaimeyap@google.com>
530
531         Reviewed by Timothy Hatcher.
532
533         Makes a page reload optional when activating resource monitoring in
534         InspectorController. It leaves the default behavior as performing the reload.
535         Reload is an optional param so callsites do not have to change.
536
537         https://bugs.webkit.org/show_bug.cgi?id=30684
538
539         No new tests added.
540
541         * inspector/InspectorController.cpp:
542         (WebCore::InspectorController::enableResourceTracking):
543         * inspector/InspectorController.h:
544
545 2009-10-22  Shu Chang  <Chang.Shu@nokia.com>
546
547         Reviewed by Eric Seidel.
548
549         [Qt] Fix memory leak in QNetworkReplyHandler::abort().
550         In QNetworkReplyHandler::release(), m_reply should no longer point to its parent
551         after being released.
552         https://bugs.webkit.org/show_bug.cgi?id=30167
553
554         No layout test available as a non-functional fix.
555
556         * platform/network/qt/QNetworkReplyHandler.cpp:
557         (WebCore::QNetworkReplyHandler::abort):
558         (WebCore::QNetworkReplyHandler::release):
559
560 2009-10-22  Pavel Feldman  <pfeldman@chromium.org>
561
562         Reviewed by Timothy Hatcher.
563
564         Web Inspector: Fix DOMAgent leak.
565
566         https://bugs.webkit.org/show_bug.cgi?id=30615
567
568         * inspector/InspectorController.cpp:
569         (WebCore::InspectorController::~InspectorController):
570         (WebCore::InspectorController::setFrontendProxyObject):
571         (WebCore::InspectorController::close):
572         (WebCore::InspectorController::releaseDOMAgent):
573         * inspector/InspectorController.h:
574         * inspector/InspectorDOMAgent.h:
575         (WebCore::InspectorDOMAgent::create):
576
577 2009-10-22  Dimitri Glazkov  <dglazkov@chromium.org>
578
579         Reviewed by Adam Barth.
580
581         [V8] Rework event listeners to not hold references to frame or V8 context.
582
583         https://bugs.webkit.org/show_bug.cgi?id=30648
584
585         Covered by existing layout tests: fast/events/attribute-listener*
586
587         * bindings/scripts/CodeGeneratorV8.pm: Added passing ScriptExecutionContext*
588             to event listener handling code.
589         * bindings/v8/DateExtension.cpp:
590         (WebCore::DateExtension::setAllowSleep): Changed to use currentContext().
591         * bindings/v8/ScriptEventListener.cpp:
592         (WebCore::createAttributeEventListener): Reworked to match JSC logic.
593         (WebCore::getEventListenerHandlerBody): Added ScriptExecutionContext* param.
594         * bindings/v8/V8AbstractEventListener.cpp:
595         (WebCore::V8AbstractEventListener::V8AbstractEventListener): Removed Frame* param
596             and usage.
597         (WebCore::V8AbstractEventListener::handleEvent): Chaged to use ScriptExecutionContext*.
598         (WebCore::V8AbstractEventListener::invokeEventHandler): Ditto.
599         * bindings/v8/V8AbstractEventListener.h:
600         (WebCore::V8AbstractEventListener::getListenerObject): Ditto.
601         (WebCore::V8AbstractEventListener::prepareListenerObject): Ditto.
602         * bindings/v8/V8DOMWrapper.cpp:
603         (WebCore::V8DOMWrapper::convertEventListenerToV8Object):  Added ScriptExecutionContext* param.
604         (WebCore::V8DOMWrapper::getEventListener): Ditto.
605         * bindings/v8/V8DOMWrapper.h:
606         (WebCore::V8DOMWrapper::convertEventListenerToV8Object): Ditto.
607         * bindings/v8/V8EventListenerList.h:
608         (WebCore::V8EventListenerList::findOrCreateWrapper): Removed ContextType* template param,
609             because it's no longer needed.
610         * bindings/v8/V8IsolatedWorld.h:
611         (WebCore::V8IsolatedWorld::sharedContext): Renamed from shared_context.
612         * bindings/v8/V8LazyEventListener.cpp:
613         (WebCore::V8LazyEventListener::V8LazyEventListener): Removed Frame* param and usage.
614         (WebCore::V8LazyEventListener::callListenerFunction): Added ScriptExecutionContext* param.
615         (WebCore::V8LazyEventListener::prepareListenerObject): Ditto.
616         * bindings/v8/V8LazyEventListener.h:
617         (WebCore::V8LazyEventListener::create): Reordered params to match JSC impl.
618         * bindings/v8/V8Proxy.cpp:
619         (WebCore::V8Proxy::V8Proxy): Adjusted formatting to match WebKit style.
620         (WebCore::V8Proxy::evaluateInNewContext): Changed to use m_context directly.
621         (WebCore::V8Proxy::setInjectedScriptContextDebugId): Ditto.
622         (WebCore::V8Proxy::createWrapperFromCacheSlowCase): Ditto.
623         (WebCore::V8Proxy::isContextInitialized): Ditto.
624         (WebCore::V8Proxy::updateDocumentWrapperCache): Ditto.
625         (WebCore::V8Proxy::clearDocumentWrapperCache): Ditto.
626         (WebCore::V8Proxy::disposeContextHandles): Added explicit disposing of m_context. 
627         (WebCore::V8Proxy::clearForClose): Changed to use m_context directly.
628         (WebCore::V8Proxy::clearForNavigation): Ditto.
629         (WebCore::V8Proxy::setSecurityToken): Ditto.
630         (WebCore::V8Proxy::updateDocument): Ditto.
631         (WebCore::V8Proxy::initContextIfNeeded): Ditto.
632         (WebCore::V8Proxy::context): Changed to use v8::Local.
633         (WebCore::V8Proxy::mainWorldContext): Changed to use m_context directly. 
634         (WebCore::V8Proxy::setContextDebugId): Ditto.
635         (WebCore::toV8Context):
636         * bindings/v8/V8Proxy.h: Removed shared_context decl, changed to use straight
637             v8::Persistent for m_context.
638         * bindings/v8/V8WorkerContextEventListener.cpp:
639         (WebCore::workerProxy): Added.
640         (WebCore::V8WorkerContextEventListener::V8WorkerContextEventListener): Removed
641             WorkerContextExecutionProxy* param.
642         (WebCore::V8WorkerContextEventListener::handleEvent): Started using ScriptExecutionContext*.
643         (WebCore::V8WorkerContextEventListener::reportError): Ditto.
644         (WebCore::V8WorkerContextEventListener::callListenerFunction): Ditto.
645         (WebCore::V8WorkerContextEventListener::getReceiverObject): Ditto.
646         * bindings/v8/V8WorkerContextEventListener.h:
647         (WebCore::V8WorkerContextEventListener::create): Removed
648             WorkerContextExecutionProxy* param.
649         * bindings/v8/WorkerContextExecutionProxy.cpp:
650         (WebCore::WorkerContextExecutionProxy::findOrCreateEventListener): Removed ContextType*
651             template param.
652         * bindings/v8/custom/V8CustomEventListener.cpp:
653         (WebCore::V8EventListener::V8EventListener): Removed Frame* param.
654         (WebCore::V8EventListener::getListenerFunction): Started using ScriptExecutionContext*.
655         (WebCore::V8EventListener::callListenerFunction): Ditto.
656         * bindings/v8/custom/V8CustomEventListener.h:
657         (WebCore::V8EventListener::create): Removed Frame* param.
658
659 2009-10-14  Gaurav Shah  <gauravsh@google.com>
660
661         Reviewed by Darin Fisher.
662
663         Replaces temporary link stub for <keygen> tag handler for the Chromium
664         browser with a call via the Chromium Bridge.
665
666         https://bugs.webkit.org/show_bug.cgi?id=30360
667
668         * platform/SSLKeyGenerator.h:
669         * platform/chromium/ChromiumBridge.h:
670         * platform/chromium/SSLKeyGeneratorChromium.cpp:
671         (WebCore::getSupportedKeySizes):
672         (WebCore::signedPublicKeyAndChallengeString):
673         * platform/chromium/TemporaryLinkStubs.cpp:
674         (WebCore::KURL::fileSystemPath):
675         (WebCore::SharedBuffer::createWithContentsOfFile):
676
677 2009-10-22  Avi Drissman  <avi@chromium.org>
678
679         Reviewed by Eric Seidel.
680
681         Fixes Chromium Mac pasteboard handling to flow through the same code paths as other platforms.
682
683         https://bugs.webkit.org/show_bug.cgi?id=30591
684
685         * platform/chromium/ChromiumBridge.h:
686         * platform/chromium/PasteboardChromium.cpp:
687         (WebCore::Pasteboard::writeImage):
688
689 2009-10-20  Simon Fraser  <simon.fraser@apple.com>
690
691         Reviewed by Darin Adler.
692
693         Make accelerated compositing debug indicators work in release builds
694         https://bugs.webkit.org/show_bug.cgi?id=30588
695         
696         Allow some debug indicators, that show which page elements go into compositing layers,
697         to work in release builds, when the runtime prefs are set.
698
699         * platform/graphics/GraphicsLayer.cpp:
700         (WebCore::GraphicsLayer::GraphicsLayer):
701         (WebCore::GraphicsLayer::setZPosition):
702         * platform/graphics/GraphicsLayer.h:
703         * platform/graphics/mac/GraphicsLayerCA.h:
704         * platform/graphics/mac/GraphicsLayerCA.mm:
705         (WebCore::clearBorderColor):
706         (WebCore::GraphicsLayer::showRepaintCounter):
707         (WebCore::GraphicsLayerCA::GraphicsLayerCA):
708         (WebCore::GraphicsLayerCA::updateMasksToBounds):
709         (WebCore::GraphicsLayerCA::updateLayerDrawsContent):
710         (WebCore::GraphicsLayerCA::setDebugBorder):
711         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
712         (WebCore::GraphicsLayerCA::setupContentsLayer):
713         * platform/graphics/mac/WebLayer.mm:
714
715 2009-10-22  Keishi Hattori  <casey.hattori@gmail.com>
716
717         Reviewed by Pavel Feldman.
718
719         Inspector should support monitorEvents/un monitorEvents() in the command line
720         https://bugs.webkit.org/show_bug.cgi?id=19879
721
722         * inspector/front-end/EventListenersSidebarPane.js:
723         (WebInspector.EventListenersSidebarPane.prototype.update.callback): Ignores event listeners generated by monitorEvent
724         * inspector/front-end/InjectedScript.js:
725         (InjectedScript._ensureCommandLineAPIInstalled): Added _inspectorCommandLineAPI._logEvent, _allEventTypes, 
726         _normalizeEventTypes, monitorEvent, unmonitorEvent.
727
728 2009-10-21  Joseph Pecoraro  <joepeck@webkit.org>
729
730         Reviewed by Pavel Feldman.
731
732         Web Inspector: windowFocused and windowBlurred Fail to Clear/Mark Inspector as "inactive"
733         https://bugs.webkit.org/show_bug.cgi?id=30663
734
735         * inspector/front-end/inspector.js:
736         (WebInspector.windowFocused):
737         (WebInspector.windowBlurred):
738
739 2009-10-22  Joseph Pecoraro  <joepeck@webkit.org>
740
741         Reviewed by Pavel Feldman.
742
743         Web Inspector: Error - requestContentType [undefined] is not an object
744         https://bugs.webkit.org/show_bug.cgi?id=30666
745
746         * inspector/front-end/ResourceView.js:
747         (WebInspector.ResourceView.prototype._refreshFormData):
748
749 2009-10-22  Maxime Simon  <simon.maxime@gmail.com>
750
751         Reviewed by Holger Freyther.
752
753         [Haiku] Correction of the accented letter width (they were 2 characters long).
754         https://bugs.webkit.org/show_bug.cgi?id=30629
755
756         * platform/graphics/haiku/SimpleFontDataHaiku.cpp:
757         (WebCore::SimpleFontData::platformWidthForGlyph):
758
759 2009-10-21  Jon Honeycutt  <jhoneycutt@apple.com>
760
761         <rdar://problem/7270320> Screenshots of off-screen plug-ins are blank
762         <rdar://problem/7270314> After halting a transparent PluginView on
763         Windows, the transparency is applied twice
764
765         Replace use of Frame::nodeImage() with a function that takes a snapshot
766         of a PluginView.
767
768         Reviewed by Dan Bernstein.
769
770         * plugins/PluginView.h:
771         Made paintWindowedPluginIntoContext() non-const, as it now calls
772         paintIntoTransformedContext(). Declare paintIntoTransformedContext()
773         and snapshot() for Windows platforms.
774
775         * plugins/win/PluginViewWin.cpp:
776         (WebCore::PluginView::paintIntoTransformedContext):
777         Paints into the passed HDC without applying any coordinate translations.
778         Code moved from paintWindowedPluginIntoContext() and paint(). Removed
779         the memset() of windowpos in lieu of assignment.
780         (WebCore::PluginView::paintWindowedPluginIntoContext):
781         Code moved to paintIntoTransformedContext().
782         (WebCore::PluginView::paint):
783         Ditto.
784         (WebCore::PluginView::snapshot):
785         Create a context, and if the plug-in is windowless, translate it so the
786         plug-in will draw at the correct location. Create a bitmap, and select
787         it into the context. Paint the plug-in, and create a BitmapImage from
788         the bitmap.
789         (WebCore::PluginView::halt):
790         Use snapshot().
791
792 2009-10-22  Fumitoshi Ukai  <ukai@chromium.org>
793
794         Reviewed by Alexey Proskuryakov.
795
796         Fix calculation of length in WebSocketChannel.cpp
797         https://bugs.webkit.org/show_bug.cgi?id=30656
798
799         * websockets/WebSocketChannel.cpp:
800         (WebCore::WebSocketChannel::didReceiveData):
801
802 2009-10-21  Dumitru Daniliuc  <dumi@chromium.org>
803
804         Reviewed by Dimitri Glazkov.
805
806         Adding the ability to enable/disable functions in V8 at runtime.
807
808         https://bugs.webkit.org/show_bug.cgi?id=30650
809
810         * bindings/scripts/CodeGeneratorV8.pm:
811
812 2009-10-21  Darin Adler  <darin@apple.com>
813
814         Swedish search (and other languages as well) is broken while fixing Japanese search
815         https://bugs.webkit.org/show_bug.cgi?id=30646
816
817         Rolled Japanese tailoring out that was done to fix
818         https://bugs.webkit.org/show_bug.cgi?id=30437 earlier.
819         It was overriding the locale-specific tailoring.
820         We'll land a fix once we figure out how to add the
821         Japanese tailoring without removing anything.
822
823         * editing/TextIterator.cpp: Rolled out r49924.
824
825 2009-10-21  Pavel Feldman  <pfeldman@chromium.org>
826
827         Not reviewed: chromium build fix - add missing image to gypi.
828
829         * WebCore.gypi:
830
831 2009-10-21  Brian Weinstein  <bweinstein@apple.com>
832
833         Reviewed by Eric Seidel.
834
835         Fixes part of <http://webkit.org/b/30522>.
836         Web Inspector: DOM Exceptions throughout the Inspector should be more human readable.
837
838         Expose the description attribute that is now a member of
839         ExceptionBase as of r49723, so when a user logs an exception, they
840         can see the description in the Web Inspector.
841
842         Test: fast/dom/dom-exception-description.html
843
844         * dom/DOMCoreException.idl:
845         * dom/EventException.idl:
846         * dom/RangeException.idl:
847         * svg/SVGException.idl:
848         * xml/XMLHttpRequestException.idl:
849         * xml/XPathException.idl:
850
851 2009-10-21  Brian Weinstein  <bweinstein@apple.com>
852
853         Reviewed by Timothy Hatcher.
854
855         Fixes <https://bugs.webkit.org/show_bug.cgi?id=30616>.
856         REGRESSION (r49036): Web Inspector: Summary graph no longer switching to size summary.
857         
858         Add a check to make sure a function we need to calculate percentages is
859         defined before we use it.
860
861         * inspector/front-end/ResourcesPanel.js:
862         (WebInspector.ResourcesPanel.prototype._updateGraphDividersIfNeeded):
863
864 2009-10-21  Keishi Hattori  <casey.hattori@gmail.com>
865
866         Reviewed by Timothy Hatcher.
867
868         REGRESSION: Clicking on nodes in the console should take you to the element in the DOM
869         https://bugs.webkit.org/show_bug.cgi?id=27231
870
871         * inspector/front-end/ConsoleView.js:
872         (WebInspector.ConsoleView.prototype._formatnode): Turns on ElementsTreeOutline.showInElementsPanelEnabled
873         * inspector/front-end/ElementsTreeOutline.js:
874         (WebInspector.ElementsTreeOutline): Added ElementsTreeOutline.showInElementsPanelEnabled
875         (WebInspector.ElementsTreeElement.prototype.onmousedown): Reveals the node in the Elements panel if 
876         treeOutline.showInElementsPanelEnabled is true.
877
878 2009-10-21  Jeremy Orlow  <jorlow@chromium.org>
879
880         Reviewed by Eric Seidel.
881
882         https://bugs.webkit.org/show_bug.cgi?id=30637
883         Fix a compiler warning in windows.
884
885         * loader/ResourceLoadNotifier.h:
886
887 2009-10-21  Dmitry Titov  <dimich@chromium.org>
888
889         Reviewed by Darin Adler.
890
891         Fix the crash when a node not in a document receives dispatchEvent.
892         https://bugs.webkit.org/show_bug.cgi?id=30611
893
894         Test: fast/events/dispatch-event-no-document.html
895
896         * dom/EventTarget.cpp: Check for scriptExecutionContext() at the moment of dispatchEvent; do nothing if no context.
897         (WebCore::EventTarget::dispatchEvent):
898
899 2009-10-21  Adam Langley  <agl@google.com>
900
901         Reviewed by Eric Seidel.
902
903         Chromium Linux: disable subpixel text on layers.
904
905         https://bugs.webkit.org/show_bug.cgi?id=30635
906         http://code.google.com/p/chromium/issues/detail?id=25365
907
908         With the addition of layers for drawing rounded corners in r49641,
909         subpixel text on rounded rectangles broke. This is because the layer
910         only contains a single alpha channel and this is insufficient to
911         compose subpixel text correctly.
912
913         On Windows, a large body of code in TransparencyWin.cpp exists to try
914         to deal with this. Even then, in some cases, it downgrades to
915         anti-aliased text. We need a fix for the grevious effects quickly thus
916         this patch disables subpixel text when rendering into a layer.
917
918         This would be covered by existing tests except that subpixel text is
919         disabled for pixel tests on Chromium Linux.
920
921         * platform/graphics/chromium/FontLinux.cpp:
922         (WebCore::isCanvasMultiLayered):
923         (WebCore::adjustTextRenderMode):
924         (WebCore::Font::drawGlyphs):
925         (WebCore::Font::drawComplexText):
926
927 2009-10-21  Kevin Ollivier  <kevino@theolliviers.com>
928
929         wxMac 10.4 build fix, make sure we specify the Sqlite3 dependency correctly as otherwise
930         it will use the sqlite3 system library rather than WebCoreSQLite3.
931
932         * wscript:
933
934 2009-10-21  Dan Bernstein  <mitz@apple.com>
935
936         Reviewed by Sam Weinig.
937
938         Fixed background-clip parsing regressions introduced in r46240.
939
940         Test: fast/css/background-clip-text.html
941
942         * css/CSSParser.cpp:
943         (WebCore::parseBackgroundClip): Added this helper method.
944         (WebCore::CSSParser::parseFillShorthand): Use parseBackgroundClip() to
945         reparse the value. The old code called parseFillProperty() again, which
946         didn’t work, because parseFillProperty() advances the value list.
947         (WebCore::CSSParser::parseFillProperty): Changed to use
948         parseBackgroundClip().
949         * css/CSSPrimitiveValueMappings.h:
950         (WebCore::CSSPrimitiveValue::operator EFillBox): Added a case for
951         CSSValueWebkitText.
952
953 2009-10-21  Alexander Pavlov  <apavlov@chromium.org>
954
955         Reviewed by Timothy Hatcher.
956
957         Enable creation of custom SidebarTreeElements for different ProfileTypes
958
959         ProfileTypes can now create sidebar tree elements of custom types.
960         https://bugs.webkit.org/show_bug.cgi?id=30520
961
962         * inspector/front-end/ProfileView.js:
963         (WebInspector.CPUProfileType.prototype.setRecordingProfile):
964         (WebInspector.CPUProfileType.prototype.createSidebarTreeElementForProfile):
965         (WebInspector.CPUProfileType.prototype.createView):
966         (WebInspector.CPUProfile.prototype.get head):
967         * inspector/front-end/ProfilesPanel.js:
968         (WebInspector.ProfileType.prototype.buttonClicked):
969         (WebInspector.ProfileType.prototype.viewForProfile):
970         (WebInspector.ProfileType.prototype.createView):
971         (WebInspector.ProfileType.prototype.createSidebarTreeElementForProfile):
972         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
973         (WebInspector.ProfilesPanel.prototype.showProfile):
974
975 2009-10-20  Joseph Pecoraro  <joepeck@webkit.org>
976
977         Reviewed by Timothy Hatcher.
978
979         Web Inspector: Selectors in the Styles pane should trigger a search for that selector when clicked
980         https://bugs.webkit.org/show_bug.cgi?id=17126
981
982         * inspector/front-end/ElementsPanel.js:
983         (WebInspector.ElementsPanel.prototype.addNodesToSearchResult): only change focusedDOMNode on a manual search
984         * inspector/front-end/StylesSidebarPane.js:
985         (WebInspector.StylePropertiesSection.prototype._clickSelector): trigger a search
986         * inspector/front-end/ElementsTreeOutline.js:
987         (WebInspector.ElementsTreeElement.prototype._startEditing): correctly start editing attribute value instead of name
988
989 2009-10-20  Pavel Feldman  <pfeldman@chromium.org>
990
991         Reviewed by Timothy Hatcher.
992
993         Web Inspector: Fix DOM Agent leak.
994
995         https://bugs.webkit.org/show_bug.cgi?id=30615
996
997         * inspector/InspectorController.cpp:
998         (WebCore::InspectorController::~InspectorController):
999
1000 2009-10-21  Girish Ramakrishnan  <girish@forwardbias.in>
1001
1002         Reviewed by Holger Freyther.
1003
1004         Plugins: Create manual tests for testing plugins
1005         
1006         Create two test files:
1007         1. windowed.html - Test plugin in windowed mode.
1008         2. windowless.html - Test plugin in windowless mode.
1009
1010         https://bugs.webkit.org/show_bug.cgi?id=30503
1011
1012         * manual-tests/plugins/windowed.html: Added.
1013         * manual-tests/plugins/windowless.html: Added.
1014
1015 2009-10-21  Satoshi Nakagawa  <psychs@limechat.net>
1016
1017         Reviewed by Darin Adler.
1018
1019         Fixed Japanese text search problems.
1020         Treat small kana letters and kana letters as different characters in search.
1021         Do not ignore diacritic marks in search for Japanese texts.
1022
1023         https://bugs.webkit.org/show_bug.cgi?id=30437
1024
1025         Test: fast/text/international/japanese-kana-letters.html
1026
1027         * editing/TextIterator.cpp:
1028         (WebCore::createCollator):
1029         (WebCore::collator):
1030         (WebCore::createSearcher):
1031
1032 2009-10-20  Eric Z. Ayers  <zundel@google.com>
1033
1034         Reviewed by Timothy Hatcher.
1035
1036         Changes TimelineItems to be created with raw timestamps as opposed
1037         to a time relative to a start of session.  Normalized timestamps cause
1038         problems when monitoring a browsing session across multiple page
1039         transitions.
1040
1041         * inspector/InspectorTimelineAgent.cpp:
1042         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
1043         (WebCore::InspectorTimelineAgent::willDispatchDOMEvent):
1044         (WebCore::InspectorTimelineAgent::willLayout):
1045         (WebCore::InspectorTimelineAgent::willRecalculateStyle):
1046         (WebCore::InspectorTimelineAgent::willPaint):
1047         (WebCore::InspectorTimelineAgent::willWriteHTML):
1048         (WebCore::InspectorTimelineAgent::reset):
1049         (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
1050         * inspector/InspectorTimelineAgent.h:
1051
1052 2009-10-20  Mark Rowe  <mrowe@apple.com>
1053
1054         Reviewed by Oliver Hunt.
1055
1056         Fix leak of WebSocketChannel by adopting the newly-created reference.
1057
1058         * websockets/WebSocketChannel.h:
1059         (WebCore::WebSocketChannel::create):
1060
1061 2009-10-20  Jeremy Orlow  <jorlow@chromium.org>
1062
1063         Reviewed by Adam Barth.
1064
1065         DOM Storage runtime flag changes
1066         https://bugs.webkit.org/show_bug.cgi?id=30602
1067
1068         Part 1/2.  Removing sessionStorageEnabled in next patch after the
1069         Chromium side of the changes lands.
1070
1071         Revert my changes to Settings and instead implement DOM Storage enabling via
1072         the methods agreed upon in https://bugs.webkit.org/show_bug.cgi?id=30240
1073
1074         This stuff was (intentionally) never exposed to web pages or DRT, so there's no
1075         LayoutTest visible changes and thus no tests.
1076
1077         * bindings/v8/custom/V8CustomBinding.h:
1078         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1079         (WebCore::ACCESSOR_RUNTIME_ENABLER):
1080         * page/DOMWindow.idl:
1081         * storage/Storage.cpp:
1082         (WebCore::Storage::setLocalStorageAvailable):
1083         (WebCore::Storage::localStorageAvailable):
1084         (WebCore::Storage::setSessionStorageAvailable):
1085         (WebCore::Storage::sessionStorageAvailable):
1086         * storage/Storage.h:
1087
1088 2009-10-20  John Gregg  <johnnyg@google.com>
1089
1090         Reviewed by David Levin.
1091
1092         Need to turn off notifications properly at runtime
1093         https://bugs.webkit.org/show_bug.cgi?id=30409
1094
1095         This code only affects chromium, and is all behind a compile time
1096         flag current turned off, so no new tests.
1097
1098         * bindings/v8/custom/V8CustomBinding.h:
1099         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1100         (WebCore::ACCESSOR_RUNTIME_ENABLER):
1101         * bindings/v8/custom/V8WorkerContextCustom.cpp:
1102         (WebCore::ACCESSOR_RUNTIME_ENABLER):
1103         * notifications/NotificationCenter.cpp:
1104         (WebCore::NotificationCenter::setIsAvailable):
1105         (WebCore::NotificationCenter::isAvailable):
1106         * notifications/NotificationCenter.h:
1107         * page/DOMWindow.idl:
1108         * workers/WorkerContext.idl:
1109
1110 2009-10-20  James Robinson  <jamesr@chromium.org>
1111
1112         Reviewed by Adam Barth.
1113
1114         Fixes RefPtr initialization in the V8 implementation of WebCore::ScriptString to use the ::create() idiom and
1115         use adoptRef() properly.  I failed to read the RefPtr docs the first time through :(
1116
1117         No new tests, error was caught by valgrind on the Chromium builders.
1118
1119         * bindings/v8/ScriptString.h:
1120         (WebCore::ScriptString::ScriptString):
1121         (WebCore::ScriptString::operator=):
1122         * bindings/v8/ScriptStringImpl.h:
1123         (WebCore::ScriptStringImpl::create):
1124
1125 2009-10-20  Mikhail Naganov  <mnaganov@chromium.org>
1126
1127         Reviewed by Pavel Feldman.
1128
1129         Web Inspector: populate child nodes before sorting them.
1130
1131         https://bugs.webkit.org/show_bug.cgi?id=29673
1132
1133         * inspector/front-end/BottomUpProfileDataGridTree.js:
1134         (WebInspector.BottomUpProfileDataGridNode): Swapped with BottomUpProfileDataGridTree to be consistent with TopDownProfileDataGridNode.
1135         (WebInspector.BottomUpProfileDataGridNode.prototype._takePropertiesFromProfileDataGridNode):
1136         (WebInspector.BottomUpProfileDataGridNode.prototype._keepOnlyChild):
1137         (WebInspector.BottomUpProfileDataGridNode.prototype._exclude):
1138         (WebInspector.BottomUpProfileDataGridNode.prototype._merge):
1139         (WebInspector.BottomUpProfileDataGridNode.prototype._sharedPopulate):
1140         (WebInspector.BottomUpProfileDataGridTree.prototype.exclude):
1141         * inspector/front-end/ProfileDataGridTree.js:
1142         (WebInspector.ProfileDataGridNode.prototype.sort): Added missing parentheses.
1143         (WebInspector.ProfileDataGridNode.prototype.get _parent):
1144         (WebInspector.ProfileDataGridNode.prototype._populate):
1145         * inspector/front-end/TopDownProfileDataGridTree.js:
1146         (WebInspector.TopDownProfileDataGridNode.prototype._sharedPopulate):
1147
1148 2009-10-20  Jens Alfke  <snej@chromium.org>
1149
1150         Reviewed by Eric Seidel.
1151
1152         Remove redundant String ref/deref calls in generated V8 bindings.
1153         https://bugs.webkit.org/show_bug.cgi?id=30579
1154
1155         * bindings/v8/V8Binding.h:
1156         (WebCore::toString): Fix return type of 'toString' to make it truly a no-op
1157             instead of constructing/destructing a String.
1158
1159 2009-10-20  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
1160
1161         Reviewed by Xan Lopez.
1162
1163         https://bugs.webkit.org/show_bug.cgi?id=25411
1164         [GTK] ATK accessible ancestry broken
1165
1166         Work around for the problem of bogus additional objects in the ancestry.
1167         We now set the parent when we ref the child, then ask the Atk child if
1168         it knows its parent. This solves the bulk of the cases. For those it
1169         doesn't, fall back to the existing logic.
1170
1171         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1172         (webkit_accessible_get_parent):
1173         (webkit_accessible_ref_child):
1174
1175 2009-10-20  Brian Weinstein  <bweinstein@apple.com>
1176
1177         Reviewed by Alice Liu.
1178
1179         Fixes <http://webkit.org/b/30421>.
1180         Web Inpsector: Local Files can show up on Cookies List with Cookies from other Domain.
1181
1182         When a page like Google generates an about:blank, it shows up as a local file on
1183         the list of Cookie domains, but has all of the cookies of Google. When we are adding
1184         cookie domains to the inspector, we should only add the domain is the URL of the resource
1185         is in the HTTP protocol family or a file URL.
1186
1187         * inspector/InspectorController.cpp:
1188         (WebCore::InspectorController::populateScriptObjects):
1189         (WebCore::InspectorController::didFinishLoading):
1190
1191 2009-10-20  Mark Mentovai  <mark@chromium.org>
1192
1193         Reviewed by Darin Fisher.
1194
1195         Use a version of libWebKitSystemInterface with global symbols marked
1196         private_extern for Chromium Mac.
1197
1198         https://bugs.webkit.org/show_bug.cgi?id=30590
1199
1200         * WebCore.gyp/WebCore.gyp:
1201         * WebCore.gyp/mac: Added.
1202         * WebCore.gyp/mac/Empty.cpp: Added.
1203         * WebCore.gyp/mac/adjust_visibility.sh: Added.
1204
1205 2009-10-20  Zoltan Horvath  <zoltan@webkit.org>
1206
1207         Reviewed by Eric Seidel.
1208
1209         Allow custom memory allocation control for WebCore's CSSProperty
1210         https://bugs.webkit.org/show_bug.cgi?id=30564
1211
1212         Inherits CSSProperty class from FastAllocBase because it has been
1213         instantiated by 'new' in WebCore/css/CSSParser.cpp:367.
1214
1215         * css/CSSProperty.h:
1216
1217 2009-10-20  Andrew Scherkus  <scherkus@chromium.org>
1218
1219         Reviewed by Eric Seidel.
1220
1221         Hide Chromium's media slider thumb if no source has been loaded.
1222
1223         https://bugs.webkit.org/show_bug.cgi?id=30529
1224
1225         Covered by existing layout tests, notably:
1226             LayoutTests/media/controls-rendering.html
1227             LayoutTests/media/unsupported-tracks.html
1228             LayoutTests/media/video-src-none.html
1229
1230         * rendering/RenderMediaControlsChromium.cpp:
1231         (WebCore::hasSource): Returns true if an HTMLMediaElement has a valid source set.
1232         (WebCore::paintMediaMuteButton): Refactored to use hasSource().
1233         (WebCore::paintMediaPlayButton): Ditto.
1234         (WebCore::paintMediaSliderThumb): Add call to hasSource() to determine if we should paint the thumb.
1235
1236 2009-10-20  Nate Chapin  <japhet@chromium.org>
1237
1238         Reviewed by Adam Barth.
1239
1240         Added getter for FrameLoader:m_suppressOpenerInNewFrame.
1241         This will allow Chromium to more intelligently detect
1242         noreferrer links and therefore open them in a new process.
1243
1244         https://bugs.webkit.org/show_bug.cgi?id=30581
1245
1246         * loader/FrameLoader.h:
1247         (WebCore::FrameLoader::suppressOpenerInNewFrame): Added.
1248
1249 2009-10-20  Zoltan Horvath  <zoltan@webkit.org>
1250
1251         Reviewed by Darin Adler.
1252
1253         Allow custom memory allocation control for WebCore's CSSParserFunction
1254         https://bugs.webkit.org/show_bug.cgi?id=30563
1255
1256         Inherits CSSParserFunction struct from FastAllocBase because it has been
1257         instantiated by 'new' in WebCore/css/CSSParser.cpp:4827.
1258
1259         * css/CSSProperty.h:
1260
1261 2009-10-20  Joseph Pecoraro  <joepeck@webkit.org>
1262
1263         Reviewed by Timothy Hatcher.
1264
1265         Web Inspector: Watched Expressions Buttons Do Not Match Inspector Styles
1266         https://bugs.webkit.org/show_bug.cgi?id=30554
1267
1268         * inspector/front-end/inspector.css: added style to pane buttons
1269
1270 2009-10-20  Yury Semikhatsky  <yurys@chromium.org>
1271
1272         Reviewed by Pavel Feldman.
1273
1274         Set debug id for contexts of isolated worlds to distinguish them in debugger.
1275
1276         https://bugs.webkit.org/show_bug.cgi?id=30559
1277
1278         * bindings/v8/V8Proxy.cpp:
1279         (WebCore::V8Proxy::evaluateInIsolatedWorld):
1280         (WebCore::V8Proxy::evaluateInNewContext):
1281         (WebCore::V8Proxy::setInjectedScriptContextDebugId):
1282         * bindings/v8/V8Proxy.h:
1283
1284 2009-10-20  Andras Becsi  <becsi.andras@stud.u-szeged.hu>
1285
1286         Unreviewed buildfix.
1287         [Qt] Add FEGaussianBlur.h and FEGaussianBlur.cpp which were refactored in r49778 to WebCore.pro.
1288
1289         * WebCore.pro:
1290
1291 2009-10-20  Fumitoshi Ukai  <ukai@chromium.org>
1292
1293         Reviewed by David Levin.
1294
1295         Set EnabledAtRuntime for WebSocket in DOMWindow
1296         https://bugs.webkit.org/show_bug.cgi?id=29896
1297
1298         Supported by chromium/v8 only.
1299         Add WebSocket::isAvailable()/setIsAvailable(bool) to control v8
1300         bindings.
1301         Remove Settings::experimentalWebSocketsEnabled() and
1302         setExperimentalWebSocketsEnabled(bool).
1303
1304         * WebCore.base.exp:
1305         * bindings/js/JSDOMWindowCustom.cpp:
1306         (WebCore::JSDOMWindow::webSocket):
1307         * bindings/v8/V8DOMWrapper.cpp:
1308         (WebCore::V8DOMWrapper::getConstructor):
1309         * bindings/v8/custom/V8CustomBinding.h:
1310         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1311         (WebCore::ACCESSOR_RUNTIME_ENABLER):
1312         * page/DOMWindow.idl:
1313         * page/Settings.cpp:
1314         (WebCore::Settings::Settings):
1315         * page/Settings.h:
1316         * websockets/WebSocket.cpp:
1317         (WebCore::WebSocket::setIsAvailable):
1318         (WebCore::WebSocket::isAvailable):
1319         * websockets/WebSocket.h:
1320
1321 2009-10-19  Oliver Hunt  <oliver@apple.com>
1322
1323         Reviewed by Sam Weinig.
1324
1325         REGRESSION: Dromaeo DOM test is 14% slower
1326         https://bugs.webkit.org/show_bug.cgi?id=30273
1327
1328         Whoops, make prototype bindings actually use the StructureFlags.
1329
1330         * bindings/scripts/CodeGeneratorJS.pm:
1331
1332 2009-10-19  James Robinson  <jamesr@chromium.org>
1333
1334         Reviewed by Adam Barth.
1335
1336         Better implementation of WebCore::ScriptString for the V8 bindings.
1337
1338         https://bugs.webkit.org/show_bug.cgi?id=29909
1339
1340         WebCore::ScriptString is used for XMLHttpRequest's responseText attribute which is
1341         shared with JavaScript.  Thus, simply using a WebCore::String and copying the value
1342         is pretty inefficient, especially since responseText is built up with a sequence of
1343         operator+= calls.  JSC builds use a JSC::UString to share the buffer when possible,
1344         this patch adopts a similar approach for V8.
1345
1346         No new tests, behavior is unchanged and covered by LayoutTests/http/tests/xmlhttprequest
1347
1348         * WebCore.gypi:
1349         * bindings/v8/ScriptString.h:
1350         (WebCore::ScriptString::ScriptString):
1351         (WebCore::ScriptString::operator String):
1352         (WebCore::ScriptString::isNull):
1353         (WebCore::ScriptString::size):
1354         (WebCore::ScriptString::operator=):
1355         (WebCore::ScriptString::operator+=):
1356         (WebCore::ScriptString::v8StringOrNull):
1357         * bindings/v8/ScriptStringImpl.cpp: Added.
1358         (WebCore::ScriptStringImpl::ScriptStringImpl):
1359         (WebCore::ScriptStringImpl::~ScriptStringImpl):
1360         (WebCore::ScriptStringImpl::toString):
1361         (WebCore::ScriptStringImpl::isNull):
1362         (WebCore::ScriptStringImpl::size):
1363         (WebCore::ScriptStringImpl::append):
1364         * bindings/v8/ScriptStringImpl.h: Added.
1365         (WebCore::ScriptStringImpl::ScriptStringImpl):
1366         (WebCore::ScriptStringImpl::v8StringHandle):
1367         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1368         (WebCore::ACCESSOR_GETTER):
1369
1370 2009-10-19  Adam Barth  <abarth@webkit.org>
1371
1372         No review, rolling out r49837.
1373         http://trac.webkit.org/changeset/49837
1374
1375         * page/Settings.cpp:
1376         (WebCore::Settings::setStandardFontFamily):
1377         (WebCore::Settings::setFixedFontFamily):
1378         (WebCore::Settings::setSerifFontFamily):
1379         (WebCore::Settings::setSansSerifFontFamily):
1380         (WebCore::Settings::setCursiveFontFamily):
1381         (WebCore::Settings::setFantasyFontFamily):
1382         * page/Settings.h:
1383         (WebCore::Settings::standardFontFamily):
1384         (WebCore::Settings::fixedFontFamily):
1385         (WebCore::Settings::serifFontFamily):
1386         (WebCore::Settings::sansSerifFontFamily):
1387         (WebCore::Settings::cursiveFontFamily):
1388         (WebCore::Settings::fantasyFontFamily):
1389         * platform/text/UScriptCode.h: Removed.
1390
1391 2009-10-19  Kwang Yul Seo  <skyul@company100.net>
1392
1393         Reviewed by Eric Seidel.
1394
1395         Check COMPILER(MSVC) instead of PLATFORM(WIN_OS) to avoid the use of vasprintf.
1396         https://bugs.webkit.org/show_bug.cgi?id=30473
1397
1398         vasprintf is missing in MSVC. Use COMPILER(MSVC) guards instead of
1399         PLALTFORM(WIN_OS) guards.
1400
1401         * dom/XMLTokenizerLibxml2.cpp:
1402         (WebCore::XMLTokenizer::error):
1403
1404 2009-10-19  Jungshik Shin  <jshin@chromium.org>
1405
1406         Reviewed by Eric Seidel.
1407
1408         https://bugs.webkit.org/show_bug.cgi?id=20797
1409
1410         Make generic font family getters/setters accept an additional
1411         argument (script code). It has a default value so that if an embedder
1412         does not have/want a per-script font family setting, call-sites
1413         don't have to be changed.
1414         This is to prepare for fixing bug 10874 (font selection is not
1415         language-dependent) and bug 18085.
1416
1417         There should be no change in layout and no new layout test
1418         is added.
1419
1420         * WebCore.base.exp:
1421         * page/Settings.cpp:
1422         * page/Settings.h:
1423         * platform/text/UScriptCode.h: Added. This is for ports that
1424           do not use ICU. the part of ICU's common/unicode/uscript.h
1425           that defines script code enum was copied. To keep enums compatible
1426           with those in ICU, we don't generate the list out of Scripts.txt
1427           of the Unicode Data base or CLDR's data.
1428
1429 2009-10-19  Evan Stade  <estade@chromium.org>
1430
1431         Reviewed by Darin Adler.
1432
1433         Clarify usage of SuddenTermination API. No code change.
1434
1435         * platform/SuddenTermination.h:
1436
1437 2009-10-19  Oliver Hunt  <oliver@apple.com>
1438
1439         Reviewed by Gavin Barraclough.
1440
1441         REGRESSION: Dromaeo DOM test is 14% slower
1442         https://bugs.webkit.org/show_bug.cgi?id=30273
1443
1444         Make DOM bindings automatically inherit correct structure
1445         flags rather than being needlessly conservative.  This is
1446         done by making the bindings generator use the same model
1447         for TypeInfo flags that we now use in JSC.
1448
1449         This gains us about 1% of this regression back.
1450
1451         * bindings/js/JSDOMBinding.h:
1452         (WebCore::DOMObjectWithGlobalPointer::createStructure):
1453         (WebCore::DOMConstructorObject::createStructure):
1454         * bindings/js/JSDOMWindowShell.h:
1455         (WebCore::JSDOMWindowShell::createStructure):
1456         * bindings/js/JSHTMLAllCollection.h:
1457         (WebCore::JSHTMLAllCollection::createStructure):
1458         * bindings/js/JSQuarantinedObjectWrapper.h:
1459         (WebCore::JSQuarantinedObjectWrapper::createStructure):
1460         * bindings/scripts/CodeGeneratorJS.pm:
1461         * bridge/objc/objc_runtime.h:
1462         (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
1463         * bridge/runtime_array.h:
1464         (JSC::RuntimeArray::createStructure):
1465         * bridge/runtime_method.h:
1466         (JSC::RuntimeMethod::createStructure):
1467         * bridge/runtime_object.h:
1468         (JSC::RuntimeObjectImp::createStructure):
1469
1470 2009-10-19  Robin Qiu  <robin.qiu@torchmobile.com.cn>
1471
1472         Reviewed by Nikolas Zimmermann.
1473
1474         Fixed a bug on nested SVG <use> elements.
1475         https://bugs.webkit.org/show_bug.cgi?id=26117
1476         When a <use> element refer to another <use> element which has
1477         child/children, the instance tree built for this <use> element
1478         is incorrect (more nodes than expected).
1479
1480         Test: svg/dom/use-on-use-with-child.svg
1481
1482         * svg/SVGUseElement.cpp:
1483         (WebCore::SVGUseElement::buildInstanceTree):
1484
1485 2009-10-19  Oliver Hunt  <oliver@apple.com>
1486
1487         Small changes to fully invalidate and update the JavaScriptCallFrame.
1488
1489         <rdar://problem/7020755> JSDebugger crashes after reloading from a breakpoint
1490         https://bugs.webkit.org/show_bug.cgi?id=27146
1491
1492         Reviewed by Timothy Hatcher.
1493
1494         * inspector/JavaScriptCallFrame.h:
1495         (WebCore::JavaScriptCallFrame::invalidate):
1496         (WebCore::JavaScriptCallFrame::update):
1497
1498 2009-10-19  Jeremy Orlow  <jorlow@chromium.org>
1499
1500         Reviewed by Dmitri Titov.
1501
1502         Remove "source" from storage events
1503         https://bugs.webkit.org/show_bug.cgi?id=30536
1504
1505         Remove "source" from storage events per
1506         http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2009-October/023703.html
1507
1508         This was removed because it makes it introduces synchronous access that can
1509         cross the event loop boundry (since a storage event can fire from one process
1510         and be handled in another).
1511
1512         * inspector/InspectorDOMStorageResource.cpp:
1513         (WebCore::InspectorDOMStorageResource::handleEvent):
1514         * storage/StorageEvent.cpp:
1515         (WebCore::StorageEvent::create):
1516         (WebCore::StorageEvent::StorageEvent):
1517         (WebCore::StorageEvent::initStorageEvent):
1518         * storage/StorageEvent.h:
1519         (WebCore::StorageEvent::uri):
1520         * storage/StorageEvent.idl:
1521         * storage/StorageEventDispatcher.cpp:
1522         (WebCore::StorageEventDispatcher::dispatch):
1523
1524 2009-10-19  Adam Barth  <abarth@webkit.org>
1525
1526         Reviewed by Eric Seidel.
1527
1528         Remove ResourceLoadNotifier::activeDocumentLoader
1529         https://bugs.webkit.org/show_bug.cgi?id=30533
1530
1531         Removing this method from ResourceLoadNotifier better decouples the
1532         notifier from FrameLoader.
1533
1534         * loader/FrameLoader.cpp:
1535         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
1536         (WebCore::FrameLoader::requestFromDelegate):
1537         * loader/ResourceLoadNotifier.cpp:
1538         (WebCore::ResourceLoadNotifier::didReceiveResponse):
1539         * loader/ResourceLoadNotifier.h:
1540         * loader/ResourceLoader.cpp:
1541         (WebCore::ResourceLoader::willSendRequest):
1542
1543 2009-10-19  Adam Barth  <abarth@webkit.org>
1544
1545         Reviewed by Eric Seidel.
1546
1547         Move sendRemainingDelegateMessages to ResourceLoadNotifier
1548         https://bugs.webkit.org/show_bug.cgi?id=30531
1549
1550         This method is about notifying folks and doesn't interact with the rest
1551         of FrameLoader.
1552
1553         * loader/FrameLoader.cpp:
1554         (WebCore::FrameLoader::willLoadMediaElementURL):
1555         (WebCore::FrameLoader::commitProvisionalLoad):
1556         (WebCore::FrameLoader::loadResourceSynchronously):
1557         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
1558         * loader/FrameLoader.h:
1559         * loader/ResourceLoadNotifier.cpp:
1560         (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
1561         * loader/ResourceLoadNotifier.h:
1562
1563 2009-10-19  Adam Barth  <abarth@webkit.org>
1564
1565         Reviewed by Eric Seidel.
1566
1567         Bypass popup blocker using click event
1568         https://bugs.webkit.org/show_bug.cgi?id=21501
1569
1570         Keep track of which events were generated by JavaScript and use that
1571         inforation when figuring out if we're processing a user gesture.
1572
1573         Test: http/tests/security/popup-blocked-from-fake-event.html
1574
1575         * bindings/js/ScriptController.cpp:
1576         (WebCore::ScriptController::processingUserGestureEvent):
1577         * bindings/v8/ScriptController.cpp:
1578         (WebCore::ScriptController::processingUserGesture):
1579         * dom/Document.cpp:
1580         (WebCore::Document::createEvent):
1581         * dom/Event.cpp:
1582         (WebCore::Event::Event):
1583         * dom/Event.h:
1584         (WebCore::Event::createdByDOM):
1585         (WebCore::Event::setCreatedByDOM):
1586
1587 2009-10-19  Dumitru Daniliuc  <dumi@chromium.org>
1588
1589         Reviewed by Darin Adler.
1590
1591         Fixing a typo.
1592
1593         https://bugs.webkit.org/show_bug.cgi?id=30543
1594
1595         * platform/sql/SQLiteDatabase.h:
1596
1597 2009-10-19  Dmitry Titov  <dimich@chromium.org>
1598
1599         Reviewed by Darin Adler.
1600
1601         Manual Test for crash caused by JS accessing DOMWindow which is disconnected from the Frame.
1602         https://bugs.webkit.org/show_bug.cgi?id=30544
1603
1604         * manual-tests/crash-on-accessing-domwindow-without-frame.html: Added.
1605
1606 2009-10-19  Simon Fraser  <simon.fraser@apple.com>
1607
1608         Reviewed by Darin Adler.
1609
1610         Flash at end of opacity/transform transition sometimes
1611         https://bugs.webkit.org/show_bug.cgi?id=30501
1612         
1613         When a transition finishes, there window of time between when the animation is
1614         removed, and the final style set on the GraphicsLayer. This caused the layer to revert
1615         to its old appearance for one or two frames. To avoid this, we set the final
1616         transform or opacity at the start of the transition; we know that the animation
1617         will override the final value for as long as its running.
1618         
1619         No test because this is a very transient effect that can't be captured
1620         in a test.
1621
1622         * rendering/RenderLayerBacking.cpp:
1623         (WebCore::RenderLayerBacking::createGraphicsLayer):
1624         (WebCore::RenderLayerBacking::updateLayerOpacity):
1625         (WebCore::RenderLayerBacking::updateLayerTransform):
1626         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1627         (WebCore::RenderLayerBacking::startTransition):
1628         * rendering/RenderLayerBacking.h:
1629
1630 2009-10-19  Pavel Feldman  <pfeldman@chromium.org>
1631
1632         Reviewed by Timothy Hatcher.
1633
1634         Web Inspector: Add more stop characters into console completions.
1635
1636         https://bugs.webkit.org/show_bug.cgi?id=30477
1637
1638         * inspector/front-end/ConsoleView.js:
1639         (WebInspector.ConsoleView.prototype.completions):
1640         (WebInspector.ConsoleView.prototype._reportCompletions):
1641
1642 2009-10-19  Marshall Culpepper  <mculpepper@appcelerator.com>
1643
1644         Reviewed by Adam Roben.
1645
1646         implemented ClipboardWin::files()
1647         https://bugs.webkit.org/show_bug.cgi?id=29666
1648
1649         * platform/win/ClipboardWin.cpp:
1650         (WebCore::ClipboardWin::files):
1651
1652 2009-10-19  Nate Chapin  <japhet@chromium.org>
1653
1654         Reviewed by Alexey Proskuryakov.
1655
1656         Add support for link relations in HTMLAnchorElement and implement rel="noreferrer".
1657
1658         https://bugs.webkit.org/show_bug.cgi?id=28986
1659
1660         Tests: http/tests/navigation/no-referrer-reset.html
1661                http/tests/navigation/no-referrer-same-window.html
1662                http/tests/navigation/no-referrer-subframe.html
1663                http/tests/navigation/no-referrer-target-blank.html
1664
1665         * WebCore.base.exp: Update FrameLoader::loadFrameRequest export symbol
1666         * html/HTMLAnchorElement.cpp: Add support for link relations and implement noreferrer
1667         (WebCore::HTMLAnchorElement::HTMLAnchorElement):
1668         (WebCore::HTMLAnchorElement::defaultEventHandler):
1669         (WebCore::HTMLAnchorElement::parseMappedAttribute):
1670         (WebCore::HTMLAnchorElement::hasRel):
1671         (WebCore::HTMLAnchorElement::setRel):
1672         * html/HTMLAnchorElement.h: Add support for link relations and implement noreferrer
1673         * loader/FrameLoader.cpp:
1674         (WebCore::FrameLoader::FrameLoader):
1675         (WebCore::FrameLoader::createWindow):
1676         (WebCore::FrameLoader::changeLocation):
1677         (WebCore::FrameLoader::urlSelected): Add parameter for referrer policy
1678         (WebCore::FrameLoader::loadFrameRequest): Add parameter for referrer policy
1679         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy): Suppress opener if requested by ReferrerPolicy
1680         * loader/FrameLoader.h: Update urlSelected and loadFrameRequest prototypes
1681         * loader/FrameLoaderTypes.h: Add enum for referrer policy
1682         * loader/RedirectScheduler.cpp:
1683         (WebCore::RedirectScheduler::timerFired):
1684         * page/ContextMenuController.cpp:
1685         (WebCore::ContextMenuController::contextMenuItemSelected): Update call to urlSelected()
1686         * svg/SVGAElement.cpp:
1687         (WebCore::SVGAElement::defaultEventHandler): Update call to urlSelected()
1688
1689
1690 2009-10-19  Alpha Lam  <hclam@chromium.org>
1691
1692         Reviewed by Dimitri Glazkov (dglazkov@chromium.org).
1693
1694         [v8] typeof(HTMLMediaElement) should return undefined if media
1695         engine is not available
1696         https://bugs.webkit.org/show_bug.cgi?id=30343
1697
1698         Check for availability of the media engine to disable
1699         HTMLMediaElement, HTMLAudioElement, HTMLVideoElement, MediaError
1700         in runtime.
1701
1702         Try runs and review in Chromium:
1703         http://codereview.chromium.org/276011
1704
1705         Test: manual-tests/chromium/media-player-not-available.html
1706
1707         The above test can work work in Chromium. Testing procedures:
1708         1. Remove all media support libraries in Chromium (e.g. ffmpeg libraries)
1709         2. Open Chromium with above test page
1710         3. Verify the test results according to the test page
1711
1712         * bindings/v8/custom/V8CustomBinding.h:
1713         Declare enabler methods.
1714         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1715         Report enabled only if media player is available.
1716         * manual-tests/chromium/media-player-not-available.html: Added.
1717         Manual test, following instruction in this test for procedures.
1718         * page/DOMWindow.idl:
1719         Mark HTMLMediaElement, HTMLAudioElement, HTMLVideElement, MediaError
1720         as enabled at runtime.
1721
1722 2009-10-19  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1723
1724         Reviewed by David Hyatt.
1725
1726         Refactor out some of the code in paint() into paintPanScrollIcon()
1727         and paintScrollbars() in preparation of some Qt API changes.
1728
1729         * platform/ScrollView.cpp:
1730         (WebCore::ScrollView::paint):
1731         * platform/ScrollView.h:
1732
1733 2009-10-19  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1734
1735         Reviewed by Adam Roben.
1736
1737         Make the local static panScrollIcon into a Image* instead
1738         of a RefPtr<Image>.
1739
1740         * platform/ScrollView.cpp:
1741         (WebCore::ScrollView::wheelEvent):
1742
1743 2009-10-19  Andrew Scherkus  <scherkus@chromium.org>
1744
1745         Reviewed by David Levin.
1746
1747         Forcefully set antialiasing for Chromium media controls.
1748
1749         https://bugs.webkit.org/show_bug.cgi?id=30521
1750
1751         Before it was nondeterministiacally being enabled based on the previous state of GraphicsContext.
1752
1753         Covered by existing layout tests.
1754
1755         * rendering/RenderMediaControlsChromium.cpp:
1756         (WebCore::paintMediaSlider): Added setShouldAntialias(true).
1757
1758 2009-10-19  Jens Alfke  <jens@mooseyard.com>
1759
1760         Reviewed by Darin Adler.
1761
1762         Optimize string upper/lowercasing
1763         https://bugs.webkit.org/show_bug.cgi?id=30261
1764         
1765         - Added AtomicString::upper() and lower()
1766         - Further optimized StringImpl::lower()
1767         - Removed StringImpl::isLower()
1768         - Added QualifiedName::localNameUpper(), which is cached, thereby saving
1769           thousands of upper() calls and string allocations.
1770  
1771          * dom/Element.cpp:
1772          (WebCore::Element::setAttribute): Call AtomicString::lower()
1773          * dom/QualifiedName.cpp:
1774          (WebCore::QualifiedName::localNameUpper): New method
1775          * dom/QualifiedName.h: Added localNameUpper() method
1776          * dom/StyledElement.cpp:
1777          (WebCore::StyledElement::parseMappedAttribute):  Call AtomicString::lower()
1778          * html/HTMLDocument.cpp:
1779          (WebCore::HTMLDocument::createElement): Call AtomicString::lower()
1780          * html/HTMLElement.cpp:
1781          (WebCore::HTMLElement::nodeName): Call localNameUpper()
1782          * platform/text/AtomicString.cpp:
1783          (WebCore::AtomicString::lower): New method
1784          (WebCore::AtomicString::upper): New method
1785          * platform/text/AtomicString.h: Added lower() and upper()
1786          * platform/text/StringImpl.cpp: Removed isLower()
1787          (WebCore::StringImpl::lower): Further optimization of initial loop
1788          * platform/text/StringImpl.h: Removed isLower()
1789  
1790 2009-10-19  Nate Chapin  <japhet@chromium.org>
1791
1792         Reviewed by Adam Barth.
1793
1794         If a call to a plugin's invokeMethod, invokeDefault or construct
1795         returns false, throw an exception into JS.        
1796
1797         https://bugs.webkit.org/show_bug.cgi?id=30239
1798
1799         Test: plugins/netscape-invoke-failure.html
1800
1801         * bindings/v8/V8NPObject.cpp: Check return values of invokeMethod, invokeDefault and construct.
1802         (npObjectInvokeImpl):
1803         * bridge/c/c_instance.cpp:
1804         (JSC::Bindings::CInstance::invokeMethod): Check return value
1805         (JSC::Bindings::CInstance::invokeDefaultMethod): Check return value
1806         (JSC::Bindings::CInstance::invokeConstruct): Check return value
1807
1808 2009-10-16  Stephen White  <senorblanco@chromium.org>
1809
1810         Reviewed by Adam Barth.
1811
1812         Fix for chromium/skia canvas arc start/end positions, when the arc is
1813         >= 360 degrees.
1814         https://bugs.webkit.org/show_bug.cgi?id=30449
1815
1816         Covered by new test:
1817         LayoutTests/fast/canvas/arc360.html
1818
1819         * platform/graphics/skia/PathSkia.cpp:
1820         (WebCore::Path::addArc):
1821
1822 2009-10-19  Kent Tamura  <tkent@chromium.org>
1823
1824         Reviewed by Alexey Proskuryakov.
1825
1826         Fix uninitialized variable reference in Element::removeAttribute().
1827         https://bugs.webkit.org/show_bug.cgi?id=30502
1828
1829         * dom/Element.cpp:
1830         (WebCore::Element::removeAttribute):
1831
1832 2009-10-19  Eric Carlson  <eric.carlson@apple.com>
1833
1834         Reviewed by Simon Fraser.
1835
1836         https://bugs.webkit.org/show_bug.cgi?id=30463
1837         Remove HTML5 media element 'loadend' event
1838
1839         * dom/EventNames.h:
1840         * html/HTMLMediaElement.cpp:
1841         (WebCore::HTMLMediaElement::parseMappedAttribute): Remove 'loadend'.
1842         (WebCore::HTMLMediaElement::loadInternal): Ditto.
1843         (WebCore::HTMLMediaElement::noneSupported): Ditto.
1844         (WebCore::HTMLMediaElement::mediaEngineError): Ditto.
1845         (WebCore::HTMLMediaElement::setNetworkState): Ditto.
1846         (WebCore::HTMLMediaElement::userCancelledLoad): Ditto.
1847
1848 2009-10-19  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
1849
1850         Reviewed by Adam Barth.
1851
1852         [Qt] Remove deletion of outgoing FormData object when reply is finished.
1853         The buffers will be destroyed a bit later, when the QNetworkReply is deleted.
1854         Bug: https://bugs.webkit.org/show_bug.cgi?id=29551
1855
1856         * platform/network/qt/QNetworkReplyHandler.cpp:
1857         * platform/network/qt/QNetworkReplyHandler.h:
1858
1859 2009-10-19  Dimitri Glazkov  <dglazkov@chromium.org>
1860
1861         Reviewed by Darin Adler.
1862
1863         Fix hard-to-reproduce crash in HTMLTokenizer by avoiding a rare
1864         fastRealloc edge case.
1865         https://bugs.webkit.org/show_bug.cgi?id=29313
1866
1867         No test, the crash shows up occasionally in crash dumps, we weren't able
1868         to reproduce it locally.
1869
1870         * html/HTMLTokenizer.cpp:
1871         (WebCore::HTMLTokenizer::enlargeScriptBuffer): Added an early exit to
1872             avoid calling fastRealloc with the size of 0.
1873
1874 2009-10-19  Andrew Scherkus  <scherkus@chromium.org>
1875
1876         Reviewed by Eric Seidel.
1877
1878         Use fillRect() instead of drawRect() to fix Chromium media controls rendering.
1879
1880         https://bugs.webkit.org/show_bug.cgi?id=30371
1881
1882         Chromium Mac layout tests will need to be rebaselined.  Existing layout tests for Linux/Win still pass.
1883
1884         * rendering/RenderMediaControlsChromium.cpp:
1885         (WebCore::paintMediaSlider): Use fillRect() instead of drawRect().
1886
1887 2009-10-19  Dmitry Titov  <dimich@chromium.org>
1888
1889         Reviewed by Adam Barth.
1890
1891         Crash in DOMWindow::clearTimeout etc when DOMWindow is not connected to a frame.
1892         https://bugs.webkit.org/show_bug.cgi?id=29832
1893
1894         Need to make sure the script caches are reset when frame gets disconnected from still-alive DOMWindow.
1895         This will prevent JS from calling DOMWindow methods that can not be completed w/o the frame.
1896
1897         I am not sure it's possible to test this since the only file that repros the problem need ~10 seconds to cause crash.
1898
1899         * page/Frame.cpp:
1900         (WebCore::Frame::~Frame): Right after frame disconnects from DOMWindow, clear WindowShell.
1901
1902 2009-10-19  Csaba Osztrogonác  <ossy@webkit.org>
1903
1904         Unreviewed build warning fix.
1905         [Qt] Apply changes to WebCore.pro introduced in r49778
1906
1907         * WebCore.pro: Removed svg/graphics/filters/SVGFEGaussianBlur.h from HEADERS
1908
1909 2009-10-19  Dirk Schulze  <krit@webkit.org>
1910
1911         Reviewed by Darin Adler.
1912
1913         Move feGaussianBlur from WebCore/svg to WebCore/platform
1914         [https://bugs.webkit.org/show_bug.cgi?id=30495]
1915
1916         This patch moves SVGFRGaussianBlur from svg/graphics/filters
1917         to platform/graphics/filters/FEGaussianBlur. This is needed
1918         for shadow support on Qt and Cairo.
1919         No change in functionality, therfore no new test case needed.
1920
1921         * GNUmakefile.am:
1922         * WebCore.gypi:
1923         * WebCore.pro:
1924         * WebCore.vcproj/WebCore.vcproj:
1925         * WebCore.xcodeproj/project.pbxproj:
1926         * platform/graphics/filters/FEGaussianBlur.cpp: Added.
1927         * platform/graphics/filters/FEGaussianBlur.h: Added.
1928         * svg/SVGFEGaussianBlurElement.h:
1929         * svg/graphics/filters/SVGFEGaussianBlur.cpp: Removed.
1930         * svg/graphics/filters/SVGFEGaussianBlur.h: Removed.
1931
1932 2009-10-19  Yael Aharon  <yael.aharon@nokia.com>
1933
1934         Unreviewed.
1935
1936         Added reviewer name to r49574.
1937
1938 2009-10-19  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
1939
1940         Reviewed by Xan Lopez.
1941
1942         https://bugs.webkit.org/show_bug.cgi?id=30489
1943         [Gtk] The document frame/html container claims to be parentless
1944
1945         Work around for the parentless claim made by the accessible associated
1946         with the embedded WebView. When we identify this condition, get the
1947         widget's parent, and then get the AtkObject from that. Admittedly an ugly
1948         hack, but we'll need it for Yelp and other Gtk+/GNOME applications which
1949         plan to switch over to WebKit.
1950
1951         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1952         (webkit_accessible_get_parent):
1953
1954 2009-10-19  Benjamin Otte  <otte@gnome.org>
1955
1956         Reviewed by Jan Alonzo.
1957
1958         Handle duration queries properly
1959         https://bugs.webkit.org/show_bug.cgi?id=29999
1960
1961         Previously duration queries failed to handle unknown duration
1962         and didn't treat the returned duration as an unsigned.
1963
1964         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
1965         (WebCore::MediaPlayerPrivate::duration):
1966
1967 2009-10-19  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
1968
1969         Reviewed by Tor Arne Vestbø.
1970
1971         [Qt] Fix build on Windows.
1972
1973         * plugins/win/PluginViewWin.cpp:
1974         (windowHandleForPageClient):
1975
1976 2009-10-19  Girish Ramakrishnan  <girish@forwardbias.in>
1977
1978         Reviewed by Holger Freyther.
1979
1980         [Qt] Windowed Plugins: Don't crash when client is 0.
1981         
1982         Client is 0 when we use QWebPage without a QWebView or QGraphicsWebView.
1983         In addition, setFrameRect()/updatePluginWidget() is called even if the
1984         plugin was not succesfully loaded. updatePluginWidget() updates the
1985         window rect which is, in theory, useful to draw something that indicates
1986         that we didn't load successfully.
1987         
1988         So, a status check is added to setNPWindowIfNeeded.
1989
1990         https://bugs.webkit.org/show_bug.cgi?id=30380
1991
1992         * plugins/qt/PluginViewQt.cpp:
1993         (WebCore::PluginView::setNPWindowIfNeeded):
1994         (WebCore::PluginView::platformStart):
1995
1996 2009-10-19  Girish Ramakrishnan  <girish@forwardbias.in>
1997
1998         Reviewed by Holger Freyther.
1999
2000         [Qt] Windowed Plugins: Fix crash when QWebPage is deleted after QWebView.
2001         
2002         Fixes various sources of crashes:
2003         1. The PluginContainer is a child of QWebView. When the view gets deleted,
2004         the PluginView is not notified about the deletion of PluginContainer.
2005         2. QWebView destructor does not set client to 0.
2006         3. Sometimes pending paint events are sent after the plugin has died, so add
2007         a check in PluginView::setNPWindowIfNeeded.
2008
2009         https://bugs.webkit.org/show_bug.cgi?id=30354
2010
2011         * plugins/qt/PluginContainerQt.cpp:
2012         (PluginContainerQt::~PluginContainerQt):
2013         * plugins/qt/PluginViewQt.cpp:
2014         (WebCore::PluginView::setNPWindowIfNeeded):
2015
2016 2009-10-19  Jakob Truelsen  <antialize@gmail.com>
2017
2018         Reviewed by Adam Barth.
2019
2020         https://bugs.webkit.org/show_bug.cgi?id=29042
2021         Allow one to customize the minimal and maximal shrink factors used when printing.
2022
2023         * page/PrintContext.cpp:
2024         (WebCore::PrintContext::begin):
2025         * page/Settings.cpp:
2026         (WebCore::Settings::Settings):
2027         (WebCore::Settings::setPrintingMinimumShrinkFactor):
2028         (WebCore::Settings::setPrintingMaximumShrinkFactor):
2029         * page/Settings.h:
2030         (WebCore::Settings::printingMinimumShrinkFactor):
2031         (WebCore::Settings::printingMaximumShrinkFactor):
2032
2033 2009-10-18  Erik Arvidsson  <arv@chromium.org>
2034
2035         Reviewed by Adam Barth.
2036
2037         Fixes issue where doubleclicking a word could select following adjacent newlines.
2038         https://bugs.webkit.org/show_bug.cgi?id=30234
2039
2040         Tests: platform/mac/editing/selection/doubleclick-should-not-expand-across-lines.html
2041                platform/mac/editing/selection/script-tests/TEMPLATE.html
2042                platform/win/editing/selection/doubleclick-should-not-expand-across-lines.html
2043                platform/win/editing/selection/script-tests/TEMPLATE.html
2044
2045         * editing/VisibleSelection.cpp:
2046         (WebCore::VisibleSelection::appendTrailingWhitespace):
2047
2048 2009-10-18  Kevin Ollivier  <kevino@theolliviers.com>
2049
2050         CURL build fix, use proper header name.
2051
2052         * platform/network/curl/ResourceHandleManager.h:
2053
2054 2009-10-18  Pavel Feldman  <pfeldman@chromium.org>
2055
2056         Reviewed by Timothy Hatcher.
2057
2058         Web Inspector: Properties on Arrays and NodeLists are not logged correctly.
2059
2060         https://bugs.webkit.org/show_bug.cgi?id=30485
2061
2062         * inspector/front-end/ConsoleView.js:
2063         (WebInspector.ConsoleView.prototype._formatarray):
2064         (WebInspector.ConsoleView.prototype._printArray):
2065
2066 2009-10-18  Pavel Feldman  <pfeldman@chromium.org>
2067
2068         Not reviewed: touching WebCore so that it
2069         initiated inspector frontend deployment on Windows.
2070
2071         Web Inspector: frontend files are not deployed in Windows
2072         incremental build.
2073
2074         * inspector/InspectorDOMAgent.cpp:
2075         (WebCore::InspectorDOMAgent::unbind):
2076
2077 2009-10-18  Pavel Feldman  <pfeldman@chromium.org>
2078
2079         Reviewed by Timothy Hatcher.
2080
2081         Web Inspector: Title of dir(["test", "test2"]) should be Array
2082
2083         https://bugs.webkit.org/show_bug.cgi?id=30486
2084
2085         Test: inspector/console-tests.html
2086
2087         * inspector/front-end/InjectedScript.js:
2088
2089 2009-10-18  Dirk Schulze  <krit@webkit.org>
2090
2091         Reviewed by Nikolas Zimmermann.
2092
2093         REGRESSION: SVG Mask doesn't work for maskContentUnits="objectBoundingBox"
2094         [https://bugs.webkit.org/show_bug.cgi?id=30480]
2095
2096         Patch for SVGMaskElement landed in r49598 should correct the location of
2097         the mask image graphics context. It only corrects the location for userSpaceOnUse
2098         mode in maskContentUnits but breaks objectBoundingBoxMode.
2099         The maskDestRect shouldn't be moved. It is not responsible for the correct context
2100         postioin but for the correct position of the mask image.
2101         This patch calculates the context postion independently from the maskDestRect.
2102         It also uses lineareRGB color space for masking on CG now. This is the default
2103         color space for masking operations.
2104         We already have tests for both maskContentUnits modes.
2105
2106             *svg/W3C-SVG-1.1/masking-intro-01-f.svg
2107             *svg/custom/mask-with-default-value.svg
2108
2109         Some tests needed new pixel tests because of the new color space.
2110
2111         * svg/SVGMaskElement.cpp:
2112         (WebCore::SVGMaskElement::drawMaskerContent):
2113
2114 2009-10-18  Anton Muhin  <antonm@chromium.org>
2115
2116         Reviewed by Adam Barth.
2117
2118         Use v8::Integer::NewFromUnsigned when converting unsigneds into V8's numbers.
2119         That is notably faster for small numbers (most common case).
2120         https://bugs.webkit.org/show_bug.cgi?id=30493
2121
2122         * bindings/scripts/CodeGeneratorV8.pm:
2123
2124 2009-10-18  Jan Michael Alonzo  <jmalonzo@webkit.org>
2125
2126         Reviewed by Holger Freyther.
2127
2128         [GTK] Add MathML to the build system
2129         https://bugs.webkit.org/show_bug.cgi?id=30487
2130
2131         Add MathML sources if MathML support is enabled.
2132
2133         * GNUmakefile.am:
2134
2135 2009-10-18  Kevin Ollivier  <kevino@theolliviers.com>
2136
2137         Non-PCH build fix. Added missing header.
2138
2139         * bridge/runtime_root.h:
2140
2141 2009-10-18  Simon Fraser  <simon.fraser@apple.com>
2142
2143         Reviewed by Dan Bernstein.
2144
2145         Compositing layers not correctly updated after partial layout
2146         https://bugs.webkit.org/show_bug.cgi?id=30425
2147         
2148         When a partial layout happened, for example as the result of a postion-change-only
2149         layout, then some compositing layer positions were not correctly updated. To fix
2150         this, updateLayerPositions() now carries along a flag that is set at the rootmost
2151         layer being updated, and used to determine when we hit the first compositing layer
2152         in this update. RenderLayerBacking::updateAfterLayout() makes use of this information
2153         to do a full geometry update on that layer, which is thus the rootmost compositing
2154         layer that is being updated.
2155
2156         Test: compositing/geometry/partial-layout-update.html
2157
2158         * page/FrameView.cpp:
2159         (WebCore::FrameView::layout):
2160         * rendering/RenderLayer.cpp:
2161         (WebCore::RenderLayer::updateLayerPositions):
2162         (WebCore::RenderLayer::scrollToOffset):
2163         * rendering/RenderLayer.h:
2164         (WebCore::RenderLayer::):
2165         * rendering/RenderLayerBacking.cpp:
2166         (WebCore::RenderLayerBacking::updateAfterLayout):
2167         * rendering/RenderLayerBacking.h:
2168
2169 2009-09-13  Kevin Watters  <kevinwatters@gmail.com>
2170
2171         Reviewed by Kevin Ollivier.
2172
2173         Add support for proxies in CURL.
2174  
2175         https://bugs.webkit.org/show_bug.cgi?id=30446
2176
2177         * platform/network/curl/ResourceHandleManager.cpp:
2178         (WebCore::ResourceHandleManager::setProxyInfo):
2179         (WebCore::ResourceHandleManager::initializeHandle):
2180         * platform/network/curl/ResourceHandleManager.h:
2181         (WebCore::ResourceHandleManager::):
2182
2183 2009-10-18  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
2184
2185         Reviewed by Xan Lopez
2186
2187         https://bugs.webkit.org/show_bug.cgi?id=25901
2188         Use ATK_ROLE_SECTION for divTag and ATK_ROLE_LABEL for labelTag
2189
2190         Replaces the use of ATK_ROLE_PANEL with the expected accessible roles.
2191
2192         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2193         (webkit_accessible_get_role):
2194
2195 2009-10-17  Nikolas Zimmermann  <nzimmermann@rim.com>
2196
2197         Reviewed by George Staikos.
2198
2199         Cleanup SVGElement code, preparing for animVal support
2200         https://bugs.webkit.org/show_bug.cgi?id=30466
2201
2202         Add new SynchronizablePropertyController and move the code for SVG property <-> XML attribute synchronization
2203         from SVGElement. This is a further preparation for animVal support, where SynchronizablePropertyController will
2204         be used to control the start/end state of an animated property.
2205
2206         We're currently tracking animated properties that need synchronization, generalize this concept and use
2207         it to track their creation (bound to certain SVG*Element classes) as well as a flag determing the need
2208         of synchronization (no SVG DOM object wrappers, no synchronization needed).
2209
2210         No change in functionality, thus no tests.
2211
2212         * GNUmakefile.am: Add 'SynchronizablePropertyController.cpp/h' to build
2213         * WebCore.gypi: Ditto.
2214         * WebCore.pro: Ditto.
2215         * WebCore.vcproj/WebCore.vcproj: Ditto.
2216         * WebCore.xcodeproj/project.pbxproj: Ditto.
2217         * svg/SVGAllInOne.cpp: Ditto.
2218         * svg/SVGAnimatedProperty.h: Add registerProperty() function 
2219         (WebCore::::SVGAnimatedProperty): Call registerProperty() function  
2220         (WebCore::::registerProperty): Add new registerProperty() function, announcing new properties to SynchronizablePropertyController.
2221         * svg/SVGAnimatedTemplate.h: Use propertyController() method, to access the new functions moved from SVGElement.
2222         (WebCore::lookupOrCreateWrapper):
2223         * svg/SVGElement.cpp: Adapt to code moving to SynchronizablePropertyController.
2224         (WebCore::SVGElement::updateAnimatedSVGAttribute):
2225         * svg/SVGElement.h: Move handling SVG property synchronization to SynchronizablePropertyController.
2226         (WebCore::SVGElement::propertyController): Expose reference to SynchronizablePropertyController object.
2227         * svg/SVGViewSpec.cpp: Reorder initialization order of contextElement, leading to possible crashes.
2228         (WebCore::SVGViewSpec::SVGViewSpec):
2229         (WebCore::SVGViewSpec::viewTarget):
2230         * svg/SVGViewSpec.h: Ditto.
2231         (WebCore::SVGViewSpec::contextElement):
2232         * svg/SynchronizablePropertyController.cpp: Added.
2233         (WebCore::SynchronizablePropertyController::SynchronizablePropertyController):
2234         (WebCore::SynchronizablePropertyController::registerProperty):
2235         (WebCore::SynchronizablePropertyController::setPropertyNeedsSynchronization):
2236         (WebCore::SynchronizablePropertyController::synchronizeProperty):
2237         (WebCore::SynchronizablePropertyController::synchronizeAllProperties):
2238         (WebCore::SynchronizablePropertyController::startAnimation):
2239         (WebCore::SynchronizablePropertyController::stopAnimation):
2240         * svg/SynchronizablePropertyController.h: Added.
2241         (WebCore::SynchronizableProperty::SynchronizableProperty):
2242         (WebCore::SynchronizableProperty::isHashTableDeletedValue):
2243         (WebCore::SynchronizableProperty::operator==):
2244         (WebCore::SynchronizablePropertyHash::hash):
2245         (WebCore::SynchronizablePropertyHash::equal):
2246         (WebCore::SynchronizablePropertyHashTraits::constructDeletedValue):
2247         (WebCore::SynchronizablePropertyHashTraits::isDeletedValue):
2248
2249 2009-10-17  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
2250
2251         Reviewed by Xan Lopez.
2252
2253         https://bugs.webkit.org/show_bug.cgi?id=25413
2254         [GTK] Please expose the level of headings
2255
2256         Exposes the heading level as an attribute of the AtkObject.
2257
2258         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2259         (addAttributeToSet):
2260         (webkit_accessible_get_attributes):
2261         (webkit_accessible_class_init):
2262
2263 2009-10-17  Kwang Yul Seo  <skyul@company100.net>
2264
2265         Reviewed by Eric Seidel.
2266
2267         EventHandler::eventLoopHandleMouseDragged needs ENABLE(DRAG_SUPPORT) guards
2268         https://bugs.webkit.org/show_bug.cgi?id=30472
2269
2270         Put ENABLE(DRAG_SUPPORT) guards around EventHandler::eventLoopHandleMouseDragged
2271         in EventHandler.cpp. MSVC fails to compile when DRAG_SUPPORT not enabled.
2272
2273         * page/EventHandler.cpp:
2274
2275 2009-10-17  Alpha Lam  <hclam@chromium.org>
2276
2277         Reviewed by Eric Seidel.
2278
2279         [chromium] Video controls not zoomed / transformed correctly
2280         https://bugs.webkit.org/show_bug.cgi?id=30461
2281
2282         Draw the images in the controls scaled.
2283
2284         No new tests. With this change Chromium will pass the following tests:
2285         LayoutTests/media/video-controls-zoomed.html
2286         LayoutTests/media/video-controls-transformed.html
2287
2288         * rendering/RenderMediaControlsChromium.cpp:
2289         (WebCore::paintMediaButton):
2290         Pass along the target rect directly.
2291         (WebCore::RenderMediaControlsChromium::adjustMediaSliderThumbSize):
2292         Adjust the thumb slide applied with the scale factor.
2293
2294 2009-10-17  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2295
2296         Unreviewed.
2297
2298         [Gtk] Build fix for WebKitGtk after r49723.
2299
2300         Add bindings/js/JSExceptionBase.* to the build.
2301
2302         * GNUmakefile.am:
2303
2304 2009-10-17  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2305
2306         Unreviewed.
2307
2308         [Qt] Build fix for QtWebKit after r49723.
2309
2310         Add bindings/js/JSExceptionBase.cpp to the build.
2311
2312         * WebCore.pro:
2313
2314 2009-10-16  Steve Falkenburg  <sfalken@apple.com>
2315
2316         Reviewed by Dan Bernstein.
2317
2318         https://bugs.webkit.org/show_bug.cgi?id=30456
2319         Fixes for new Debug_All Windows build configuration.
2320
2321         * platform/network/cf/ResourceRequestCFNet.cpp:
2322         (WebCore::findCFNetworkModule): Ask for the correct library instead of guessing.
2323         * platform/win/ScrollbarThemeSafari.cpp: Use new DEBUG_ALL preprocessor define for library naming.
2324         * rendering/RenderMediaControls.cpp: Use new DEBUG_ALL preprocessor define for library naming.
2325         * rendering/RenderThemeSafari.cpp: Use new DEBUG_ALL preprocessor define for library naming.
2326
2327 2009-10-16  Jon Honeycutt  <jhoneycutt@apple.com>
2328
2329         Add SPI to determine whether a plug-in has ever been halted.
2330
2331         Part of <rdar://problem/7312158>.
2332
2333         Reviewed by Dan Bernstein.
2334
2335         * plugins/PluginView.cpp:
2336         (WebCore::PluginView::PluginView):
2337         Initialize m_hasBeenHalted.
2338
2339         * plugins/PluginView.h:
2340         (WebCore::PluginView::hasBeenHalted):
2341         Return m_hasBeenHalted.
2342
2343         * plugins/win/PluginViewWin.cpp:
2344         (WebCore::PluginView::halt):
2345         Set m_hasBeenHalted.
2346
2347 2009-10-16  Adam Barth  <abarth@webkit.org>
2348
2349         Reviewed by Alexey Proskuryakov.
2350
2351         @charset rule after the first byte causes the rest of css to be ignored
2352         https://bugs.webkit.org/show_bug.cgi?id=18265
2353
2354         Apparently we're supposed to tolerate whitespace before the charset
2355         rule so folks can write code like this:
2356
2357         <style>
2358         @charset "utf-8"
2359         ...
2360         </style>
2361
2362         I'm told this is one of the top compatability problems in China.
2363         Tests: fast/css/comment-before-charset-external.html
2364                fast/css/comment-before-charset.html
2365                fast/css/many-spaces-before-charset.html
2366                fast/css/space-before-charset-external.html
2367                fast/css/space-before-charset.html
2368
2369         * css/CSSGrammar.y:
2370
2371 2009-10-16  Brian Weinstein  <bweinstein@apple.com>
2372
2373         Reviewed by Darin Adler.
2374
2375         Fixes part of <http://webkit.org/b/30412>.
2376         Web Inspector should get human readable DOM Exceptions.
2377
2378         Add a description field to ExceptionBase, and call it through 
2379         reportException which allows the user/developer to get a more detailed
2380         and coherent error explanation through the Web Inspector.
2381
2382         This only applies to exceptions that come from a script on the page when
2383         it is run. DOM Exceptions that come from the code run in the console, or DOM
2384         exceptions that are caught and logged will come in a future patch.
2385
2386         Tests: inspector/uncaught-dom1-exception.html
2387                inspector/uncaught-dom3-exception.html
2388                inspector/uncaught-dom8-exception.html
2389
2390         * WebCore.gypi:
2391         * WebCore.vcproj/WebCore.vcproj:
2392         * WebCore.xcodeproj/project.pbxproj:
2393         * bindings/js/JSDOMBinding.cpp:
2394         (WebCore::reportException):
2395         * bindings/js/JSExceptionBase.cpp: Added.
2396         (WebCore::toExceptionBase):
2397         * bindings/js/JSExceptionBase.h: Added.
2398         * dom/ExceptionBase.cpp:
2399         (WebCore::ExceptionBase::ExceptionBase):
2400         * dom/ExceptionBase.h:
2401         (WebCore::ExceptionBase::description):
2402         * dom/ExceptionCode.cpp:
2403         (WebCore::):
2404         (WebCore::getExceptionCodeDescription):
2405         * dom/ExceptionCode.h:
2406
2407 2009-10-16  Geoffrey Garen  <ggaren@apple.com>
2408
2409         Build fix: forgot to check in this #include.
2410
2411         * bridge/runtime_root.h:
2412
2413 2009-10-16  Simon Fraser  <simon.fraser@apple.com>
2414
2415         Reviewed by Dan Bernstein.
2416
2417         Transform layer gets stuck with the wrong transform after an animation ends
2418         <rdar://problem/7311662>
2419
2420         Work around a CoreAnimation bug which causes an animated transform layer to
2421         end up with a stale transform.
2422         
2423         Test: compositing/animation/state-at-end-event-transform-layer.html
2424
2425         * platform/graphics/mac/GraphicsLayerCA.mm:
2426         (WebCore::bug7311367Workaround):
2427         (WebCore::GraphicsLayerCA::removeAnimationFromLayer):
2428
2429 2009-10-16  Simon Fraser  <simon.fraser@apple.com>
2430
2431         Reviewed by Dan Bernstein.
2432
2433         After running a transition with an end event listener, can't change the transform
2434         https://bugs.webkit.org/show_bug.cgi?id=30454
2435         
2436         Fix an issue where, if a document had any listener for webkitTransitionEnd or webkitAnimationEnd,
2437         the animations would not get cleaned up correctly, which broke subsequent changes of transform.
2438         
2439         Now, we always clean up the animations right after queuing up the end events.
2440
2441         Tests: animations/state-at-end-event.html
2442                transitions/move-after-transition.html
2443
2444         * page/animation/ImplicitAnimation.cpp:
2445         (WebCore::ImplicitAnimation::onAnimationEnd):
2446         * page/animation/KeyframeAnimation.cpp:
2447         (WebCore::KeyframeAnimation::onAnimationEnd):
2448
2449 2009-10-15  Joseph Pecoraro  <joepeck@webkit.org>
2450
2451         Reviewed by Timothy Hatcher.
2452
2453         Web Inspector: Handle the Enter Key in the Elements Tree Hierarchy
2454         https://bugs.webkit.org/show_bug.cgi?id=30428
2455
2456         TextNode => Edit Text Node
2457         Has Attributes => Edit First Attribute
2458         No Attributes => Start Editing New Attribute
2459
2460         * inspector/front-end/ElementsTreeOutline.js:
2461         (WebInspector.ElementsTreeOutline.prototype.handleKeyEvent): handle the "Enter" key
2462         (WebInspector.ElementsTreeElement.prototype.set hovered): only add new attribute button on nodes with attributes
2463         (WebInspector.ElementsTreeElement.prototype._addNewAttribute): prevent moving backwards where there are no attributes
2464         (WebInspector.ElementsTreeElement.prototype._startEditingFromEvent): renamed to be clearer
2465         (WebInspector.ElementsTreeElement.prototype._startEditing): transition to the appropriate edit state for a tree element
2466
2467 2009-10-16  Adam Barth  <abarth@webkit.org>
2468
2469         Reviewed by Eric Seidel.
2470
2471         Fix header indent style for FrameLoader and friends
2472         https://bugs.webkit.org/show_bug.cgi?id=30430
2473
2474         * loader/FrameLoader.h:
2475         (WebCore::FrameLoader::frame):
2476         (WebCore::FrameLoader::policyChecker):
2477         (WebCore::FrameLoader::history):
2478         (WebCore::FrameLoader::notifier):
2479         (WebCore::FrameLoader::isLoadingMainResource):
2480         (WebCore::FrameLoader::documentLoader):
2481         (WebCore::FrameLoader::policyDocumentLoader):
2482         (WebCore::FrameLoader::provisionalDocumentLoader):
2483         (WebCore::FrameLoader::state):
2484         (WebCore::FrameLoader::client):
2485         (WebCore::FrameLoader::url):
2486         (WebCore::FrameLoader::isLoadingFromCachedPage):
2487         (WebCore::FrameLoader::committingFirstRealLoad):
2488         (WebCore::FrameLoader::committedFirstRealDocumentLoad):
2489         (WebCore::FrameLoader::creatingInitialEmptyDocument):
2490         * loader/HistoryController.h:
2491         (WebCore::HistoryController::currentItem):
2492         (WebCore::HistoryController::provisionalItem):
2493         * loader/PolicyCallback.h:
2494         (WebCore::PolicyCallback::request):
2495         * loader/PolicyChecker.h:
2496         (WebCore::PolicyChecker::loadType):
2497         (WebCore::PolicyChecker::setLoadType):
2498         (WebCore::PolicyChecker::delegateIsDecidingNavigationPolicy):
2499         (WebCore::PolicyChecker::delegateIsHandlingUnimplementablePolicy):
2500         * loader/RedirectScheduler.h:
2501         * loader/ResourceLoadNotifier.h:
2502
2503 2009-10-16  Steve Falkenburg  <sfalken@apple.com>
2504
2505         Reviewed by Adam Roben.
2506
2507         Add a Debug_All configuration to build entire stack as debug.
2508         Change Debug_Internal to:
2509         - stop using _debug suffix for all WebKit/Safari binaries
2510         - not use _debug as a DLL naming suffix
2511         - use non-debug C runtime lib.
2512
2513         * WebCore.vcproj/QTMovieWin.vcproj: Add Debug_All configuration.
2514         * WebCore.vcproj/WebCore.make: Debug build in makefile should build Debug_All.
2515         * WebCore.vcproj/WebCore.sln: Add Debug_All configuration.
2516         * WebCore.vcproj/WebCore.submit.sln: Add Debug_All configuration.
2517         * WebCore.vcproj/WebCore.vcproj: Add Debug_All configuration.
2518         * WebCore.vcproj/WebCoreGenerated.vcproj: Renamed single configuration from "Release" to "all".
2519
2520 2009-10-16  Dimitri Glazkov  <dglazkov@chromium.org>
2521
2522         No review, rolling out r49693, because it broke Chromium build.
2523         http://trac.webkit.org/changeset/49693
2524
2525         * WebCore.gyp/WebCore.gyp:
2526         * WebCore.gypi:
2527
2528 2009-10-16  Andrew Scherkus  <scherkus@chromium.org>
2529
2530         Reviewed by Eric Carlson.
2531
2532         Updated media resource selection algorithm to reflect latest HTML 5 specification.
2533
2534         Noticable changes:
2535             -  Elements with no source should have their network state set to NETWORK_EMPTY as opposed to NETWORK_NO_SOURCE
2536             -  Empty string ("") is now considered a valid URL resolving to the current page and will be loaded
2537
2538         Tests: media/video-src-empty.html
2539                media/video-src-none.html
2540
2541         https://bugs.webkit.org/show_bug.cgi?id=30407
2542
2543         * html/HTMLMediaElement.cpp:
2544         (WebCore::HTMLMediaElement::selectMediaResource): Updated code and comments to match spec.
2545
2546 2009-10-16  Adam Barth  <abarth@webkit.org>
2547
2548         Reviewed by Eric Seidel.
2549
2550         Insecure plug-ins don't trigger mixed content
2551         https://bugs.webkit.org/show_bug.cgi?id=30431
2552
2553         Added the missing check.
2554
2555         Test: http/tests/security/mixedContent/insecure-plugin-in-iframe.html
2556
2557         * loader/FrameLoader.cpp:
2558         (WebCore::FrameLoader::loadPlugin):
2559
2560 2009-10-16  Andrew Scherkus  <scherkus@chromium.org>
2561
2562         Reviewed by Eric Carlson.
2563
2564         Set autobuffer to true and schedule load in V8 audio element constructor.
2565
2566         https://bugs.webkit.org/show_bug.cgi?id=30448
2567
2568         Covered by existing tests.
2569
2570         * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp:
2571         (WebCore::CALLBACK_FUNC_DECL): Set autobuffer to true and schedule load.
2572
2573 2009-10-16  Andrew Scherkus  <scherkus@chromium.org>
2574
2575         Reviewed by Eric Seidel.
2576
2577         Remove FIXME in RenderMediaControlsChromium as bug was fixed upstream.
2578
2579         https://bugs.webkit.org/show_bug.cgi?id=30422
2580
2581         Covered by existing media layout tests.
2582
2583         * rendering/RenderMediaControlsChromium.cpp:
2584         (WebCore::paintMediaSlider): Removed round() and FIXME.
2585
2586 2009-10-16  Andrew Scherkus  <scherkus@chromium.org>
2587
2588         Reviewed by Eric Seidel.
2589
2590         Fix Chromium media controls to render a disabled play button when the element is unintialized.
2591
2592         https://bugs.webkit.org/show_bug.cgi?id=30410
2593
2594         Covered by existing layout tests.
2595
2596         * rendering/RenderMediaControlsChromium.cpp:
2597         (WebCore::paintMediaPlayButton): Include check for NETWORK_EMPTY to render disabled play button.
2598
2599 2009-10-16  Oliver Hunt  <oliver@apple.com>
2600
2601         Reviewed by Gavin Barraclough.
2602
2603         Make typeinfo flags default to false
2604         https://bugs.webkit.org/show_bug.cgi?id=30372
2605
2606         Last part -- replace HasDefaultGetPropertyNames with OverridesGetPropertyNames
2607         flag.
2608
2609         * bindings/js/JSDOMWindowShell.h:
2610         (WebCore::JSDOMWindowShell::createStructure):
2611         * bindings/js/JSHTMLAllCollection.h:
2612         (WebCore::JSHTMLAllCollection::createStructure):
2613         * bindings/js/JSQuarantinedObjectWrapper.h:
2614         (WebCore::JSQuarantinedObjectWrapper::createStructure):
2615         * bindings/scripts/CodeGeneratorJS.pm:
2616         * bridge/runtime_array.h:
2617         (JSC::RuntimeArray::createStructure):
2618         * bridge/runtime_object.h:
2619         (JSC::RuntimeObjectImp::createStructure):
2620
2621 2009-10-16  Steven Knight  <sgk@chromium.org>
2622
2623         Reviewed by David Levin.
2624
2625         https://bugs.webkit.org/show_bug.cgi?id=30447
2626         Handle long link lines by building .idl-generated bindings in a
2627         separate webcore_bindings library target.  Avoid Visual Studio
2628         dependency issues by building additional generated .cpp and .h files
2629         in a separate webcore_bindings_sources target.
2630
2631         Chrome should still build and test successfully.
2632
2633         * WebCore.gyp/WebCore.gyp:
2634         * WebCore.gypi:
2635
2636 2009-10-16  Simon Fraser  <simon.fraser@apple.com>
2637
2638         Reviewed by Eric Carlson.
2639
2640         Transform transitions that used to be accelerated are no longer so
2641         https://bugs.webkit.org/show_bug.cgi?id=30453
2642
2643         The change in r49633, to not run accelerated animations/transitions on layers that
2644         are not attached, broke accelerated transitions/animations in many cases where they start
2645         as soon as the page loads. This change reverts the code that tests for the GraphicsLayer being
2646         attached.
2647         
2648         No test, because it's not possible from a test to know whether a transition is accelerated or not.
2649
2650         * rendering/RenderLayerBacking.cpp:
2651         (WebCore::RenderLayerBacking::startAnimation):
2652         (WebCore::RenderLayerBacking::startTransition):
2653
2654 2009-10-16  Kevin Ollivier  <kevino@theolliviers.com>
2655
2656         wxMSW build fix, build the MSW source to get methods that use the MSW version of
2657         PlatformModuleVersion.
2658
2659         * wscript:
2660
2661 2009-10-16  Adam Barth  <abarth@webkit.org>
2662
2663         Unreviewed build fix.  Add back MIMETypeRegistryChromium with the right
2664         casing.
2665
2666         * platform/chromium/MIMETypeRegistryChromium.cpp: Added.
2667         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
2668         (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
2669         (WebCore::MIMETypeRegistry::getMIMETypeForPath):
2670         (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
2671         (WebCore::MIMETypeRegistry::isSupportedImageResourceMIMEType):
2672         (WebCore::MIMETypeRegistry::isSupportedImageMIMETypeForEncoding):
2673         (WebCore::MIMETypeRegistry::isSupportedJavaScriptMIMEType):
2674         (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
2675         (WebCore::MIMETypeRegistry::isSupportedMediaMIMEType):
2676         (WebCore::MIMETypeRegistry::isJavaAppletMIMEType):
2677         (WebCore::MIMETypeRegistry::getMediaMIMETypeForExtension):
2678         (WebCore::dummyHashSet):
2679         (WebCore::MIMETypeRegistry::getSupportedImageMIMETypes):
2680         (WebCore::MIMETypeRegistry::getSupportedImageResourceMIMETypes):
2681         (WebCore::MIMETypeRegistry::getSupportedImageMIMETypesForEncoding):
2682         (WebCore::MIMETypeRegistry::getSupportedNonImageMIMETypes):
2683         (WebCore::MIMETypeRegistry::getSupportedMediaMIMETypes):
2684
2685 2009-10-16  Adam Barth  <abarth@webkit.org>
2686
2687         Reviewed by Darin Adler.
2688
2689         MimeTypeRegistryChromium is mis-casen
2690         https://bugs.webkit.org/show_bug.cgi?id=30441
2691
2692         Change the case of MimeTypeRegistryChromium to match other platforms.
2693
2694         * WebCore.gypi:
2695         * platform/chromium/MIMETypeRegistryChromium.cpp: Copied from WebCore/platform/chromium/MimeTypeRegistryChromium.cpp.
2696         * platform/chromium/MimeTypeRegistryChromium.cpp: Removed.
2697
2698 2009-10-16  Dimitri Glazkov  <dglazkov@chromium.org>
2699
2700         Reviewed by Eric Seidel.
2701
2702         Change EmptyPluginHalterClient in SVGImage to be non-static, to
2703         match changes made http://trac.webkit.org/changeset/49385.
2704         https://bugs.webkit.org/show_bug.cgi?id=30403
2705
2706         Run the following layout test sequence:
2707           LayoutTests/svg/W3C-SVG-1.1/struct-image-01-t.svg
2708           LayoutTests/svg/W3C-SVG-1.1/struct-image-03-t.svg
2709           LayoutTests/svg/W3C-SVG-1.1/struct-image-04-t.svg
2710           LayoutTests/svg/W3C-SVG-1.1/struct-image-05-b.svg
2711           LayoutTests/svg/W3C-SVG-1.1/struct-image-06-t.svg
2712           LayoutTests/svg/W3C-SVG-1.1/struct-image-07-t.svg
2713           LayoutTests/svg/W3C-SVG-1.1/struct-image-08-t.svg
2714           LayoutTests/svg/W3C-SVG-1.1/struct-image-09-t.svg
2715           LayoutTests/svg/W3C-SVG-1.1/struct-image-10-t.svg
2716           LayoutTests/svg/carto.net/scrollbar.svg
2717           LayoutTests/svg/carto.net/selectionlist.svg
2718
2719         selectionlist.svg should not crash.
2720
2721         * svg/graphics/SVGImage.cpp:
2722         (WebCore::SVGImage::dataChanged): Made EmptyPluginHalterClient non-static.
2723
2724 2009-10-16  Victor Wang  <victorw@chromium.org>
2725
2726         Reviewed by David Levin.
2727
2728         Add beforeload event support to V8DOMWrapper
2729
2730         https://bugs.webkit.org/show_bug.cgi?id=30413
2731
2732         LayoutTests/fast/dom/beforeload/frame-before-load.html
2733
2734         * bindings/v8/V8DOMWrapper.cpp:
2735         (WebCore::V8DOMWrapper::convertEventToV8Object):
2736
2737 2009-10-16  Adam Barth  <abarth@webkit.org>
2738
2739         Reviewed by Darin Adler.
2740
2741         MimeTypeRegistryChromium is mis-casen
2742         https://bugs.webkit.org/show_bug.cgi?id=30441
2743
2744         Change the case of MimeTypeRegistryChromium to match other platforms.
2745
2746         * WebCore.gypi:
2747         * platform/chromium/MIMETypeRegistryChromium.cpp: Copied from WebCore/platform/chromium/MimeTypeRegistryChromium.cpp.
2748         * platform/chromium/MimeTypeRegistryChromium.cpp: Removed.
2749
2750 2009-10-16  Adam Barth  <abarth@webkit.org>
2751
2752         Reviewed by Mark Rowe.
2753
2754         Chrome doesn't set Content-Type for file upload when the file extension
2755         is not recognized
2756         https://bugs.webkit.org/show_bug.cgi?id=30433
2757
2758         Apparently, getMIMETypeForPath is supposed to return
2759         application/octet-stream when it doesn't have a better MIME type.
2760
2761         * platform/chromium/MimeTypeRegistryChromium.cpp:
2762         (WebCore::MIMETypeRegistry::getMIMETypeForPath):
2763
2764 2009-10-16  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2765
2766         Pull out r49676 as it caused build breakges on Symbian
2767
2768         * plugins/symbian/PluginViewSymbian.cpp:
2769
2770 2009-10-16  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2771
2772         Reviewed by Ariya Hidayat.
2773
2774         Crash fix when loading NPAPI plugins on Qt/Mac
2775
2776         There's no guarantee that the plist will be valid even if we
2777         ask the plugin to create it. Crash obverved with iGetter.
2778
2779         * plugins/mac/PluginPackageMac.cpp:
2780
2781 2009-10-15  Stephen White  <senorblanco@chromium.org>
2782
2783         Reviewed by David Levin.
2784
2785         Fix for Chromium/skia's implementation of canvas's isPointInPath().
2786         https://bugs.webkit.org/show_bug.cgi?id=30402
2787
2788         Covered by LayoutTests/fast/canvas/pointInPath.html.
2789
2790         * platform/graphics/skia/SkiaUtils.cpp:
2791         (WebCore::SkPathContainsPoint):
2792
2793 2009-10-15  Adam Barth  <abarth@webkit.org>
2794
2795         Reviewed by Darin Adler.
2796
2797         Factor ResourceLoadNotifier out of FrameLoader
2798         https://bugs.webkit.org/show_bug.cgi?id=30379
2799
2800         These methods have virtually no interaction with the rest of
2801         FrameLoader.
2802
2803         * GNUmakefile.am:
2804         * WebCore.gypi:
2805         * WebCore.pro:
2806         * WebCore.vcproj/WebCore.vcproj:
2807         * WebCore.xcodeproj/project.pbxproj:
2808         * WebCoreSources.bkl:
2809         * dom/Document.cpp:
2810         (WebCore::Document::resourceRetrievedByXMLHttpRequest):
2811         * loader/FrameLoader.cpp:
2812         (WebCore::FrameLoader::FrameLoader):
2813         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
2814         (WebCore::ResourceLoadNotifier::ResourceLoadNotifier):
2815         (WebCore::ResourceLoadNotifier::activeDocumentLoader):
2816         (WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest):
2817         (WebCore::ResourceLoadNotifier::willSendRequest):
2818         (WebCore::ResourceLoadNotifier::didReceiveResponse):
2819         (WebCore::ResourceLoadNotifier::didReceiveData):
2820         (WebCore::ResourceLoadNotifier::didFailToLoad):
2821         (WebCore::ResourceLoadNotifier::didLoadResourceByXMLHttpRequest):
2822         (WebCore::FrameLoader::sendRemainingDelegateMessages):
2823         (WebCore::FrameLoader::requestFromDelegate):
2824         (WebCore::ResourceLoadNotifier::didFinishLoad):
2825         (WebCore::ResourceLoadNotifier::didReceiveAuthenticationChallenge):
2826         (WebCore::ResourceLoadNotifier::didCancelAuthenticationChallenge):
2827         (WebCore::ResourceLoadNotifier::dispatchAssignIdentifierToInitialRequest):
2828         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
2829         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
2830         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
2831         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
2832         * loader/FrameLoader.h:
2833         (WebCore::FrameLoader::notifier):
2834         * loader/MainResourceLoader.cpp:
2835         (WebCore::MainResourceLoader::receivedError):
2836         * loader/ResourceLoadNotifier.cpp: Added.
2837         (WebCore::ResourceLoadNotifier::ResourceLoadNotifier):
2838         (WebCore::ResourceLoadNotifier::didReceiveAuthenticationChallenge):
2839         (WebCore::ResourceLoadNotifier::didCancelAuthenticationChallenge):
2840         (WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest):
2841         (WebCore::ResourceLoadNotifier::willSendRequest):
2842         (WebCore::ResourceLoadNotifier::didReceiveResponse):
2843         (WebCore::ResourceLoadNotifier::didReceiveData):
2844         (WebCore::ResourceLoadNotifier::didFinishLoad):
2845         (WebCore::ResourceLoadNotifier::didFailToLoad):
2846         (WebCore::ResourceLoadNotifier::didLoadResourceByXMLHttpRequest):
2847         (WebCore::ResourceLoadNotifier::dispatchAssignIdentifierToInitialRequest):
2848         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
2849         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
2850         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
2851         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
2852         (WebCore::ResourceLoadNotifier::activeDocumentLoader):
2853         * loader/ResourceLoadNotifier.h: Added.
2854         * loader/ResourceLoader.cpp:
2855         (WebCore::ResourceLoader::willSendRequest):
2856         (WebCore::ResourceLoader::didReceiveResponse):
2857         (WebCore::ResourceLoader::didReceiveData):
2858         (WebCore::ResourceLoader::didFinishLoadingOnePart):
2859         (WebCore::ResourceLoader::didFail):
2860         (WebCore::ResourceLoader::didCancel):
2861         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
2862         (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
2863
2864 2009-10-15  Roland Steiner  <rolandsteiner@google.com>
2865
2866         Reviewed by Darin Fisher.
2867
2868         Bug 30427 -  Remove unneeded methods in ChromiumDataObject
2869         (https://bugs.webkit.org/show_bug.cgi?id=30427)
2870         
2871         Remove no longer needed methods from ChromiumDataObject.
2872
2873         No new tests (no functional change)
2874
2875         * platform/chromium/ChromiumDataObject.h:
2876
2877 2009-10-16  Yael Aharon  <yael.aharon@nokia.com>
2878
2879         Reviewed by Tor Arne Vestbø.
2880
2881         [Qt] Need a way to inform the application when a Netscape plugin is created or deleted
2882         https://bugs.webkit.org/show_bug.cgi?id=30179
2883
2884         Inform the application when a plugin is created or destroyed, but only if the 
2885         application registered for these notifications.
2886
2887         * plugins/symbian/PluginViewSymbian.cpp:
2888         (WebCore::PluginView::platformStart):
2889         (WebCore::PluginView::platformDestroy):
2890
2891 2009-10-16  Shu Chang  <Chang.Shu@nokia.com>
2892
2893         Reviewed by Eric Seidel.
2894
2895         Default language translation should be determined by locale settings,
2896         e.g., "en-US".
2897         https://bugs.webkit.org/show_bug.cgi?id=29653
2898
2899         Test: fast/js/navigator-language.html
2900
2901         * platform/qt/Localizations.cpp:
2902         (WebCore::defaultLanguage):
2903
2904 2009-10-16  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2905
2906         Reviewed by Ariya Hidayat.
2907
2908         Crash fix when loading NPAPI plugins on Qt/Mac
2909
2910         There's no guarantee that the plist will be valid even if we
2911         ask the plugin to create it. Crash obverved with iGetter.
2912
2913         * plugins/mac/PluginPackageMac.cpp:
2914
2915 2009-10-15  Stephen White  <senorblanco@chromium.org>
2916
2917         Reviewed by David Levin.
2918
2919         Fix for Chromium/skia's implementation of canvas's isPointInPath().
2920         https://bugs.webkit.org/show_bug.cgi?id=30402
2921
2922         Covered by LayoutTests/fast/canvas/pointInPath.html.
2923
2924         * platform/graphics/skia/SkiaUtils.cpp:
2925         (WebCore::SkPathContainsPoint):
2926
2927 2009-10-15  Adam Barth  <abarth@webkit.org>
2928
2929         Reviewed by Darin Adler.
2930
2931         Factor ResourceLoadNotifier out of FrameLoader
2932         https://bugs.webkit.org/show_bug.cgi?id=30379
2933
2934         These methods have virtually no interaction with the rest of
2935         FrameLoader.
2936
2937         * GNUmakefile.am:
2938         * WebCore.gypi:
2939         * WebCore.pro:
2940         * WebCore.vcproj/WebCore.vcproj:
2941         * WebCore.xcodeproj/project.pbxproj:
2942         * WebCoreSources.bkl:
2943         * dom/Document.cpp:
2944         (WebCore::Document::resourceRetrievedByXMLHttpRequest):
2945         * loader/FrameLoader.cpp:
2946         (WebCore::FrameLoader::FrameLoader):
2947         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
2948         (WebCore::ResourceLoadNotifier::ResourceLoadNotifier):
2949         (WebCore::ResourceLoadNotifier::activeDocumentLoader):
2950         (WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest):
2951         (WebCore::ResourceLoadNotifier::willSendRequest):
2952         (WebCore::ResourceLoadNotifier::didReceiveResponse):
2953         (WebCore::ResourceLoadNotifier::didReceiveData):
2954         (WebCore::ResourceLoadNotifier::didFailToLoad):
2955         (WebCore::ResourceLoadNotifier::didLoadResourceByXMLHttpRequest):
2956         (WebCore::FrameLoader::sendRemainingDelegateMessages):
2957         (WebCore::FrameLoader::requestFromDelegate):
2958         (WebCore::ResourceLoadNotifier::didFinishLoad):
2959         (WebCore::ResourceLoadNotifier::didReceiveAuthenticationChallenge):
2960         (WebCore::ResourceLoadNotifier::didCancelAuthenticationChallenge):
2961         (WebCore::ResourceLoadNotifier::dispatchAssignIdentifierToInitialRequest):
2962         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
2963         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
2964         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
2965         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
2966         * loader/FrameLoader.h:
2967         (WebCore::FrameLoader::notifier):
2968         * loader/MainResourceLoader.cpp:
2969         (WebCore::MainResourceLoader::receivedError):
2970         * loader/ResourceLoadNotifier.cpp: Added.
2971         (WebCore::ResourceLoadNotifier::ResourceLoadNotifier):
2972         (WebCore::ResourceLoadNotifier::didReceiveAuthenticationChallenge):
2973         (WebCore::ResourceLoadNotifier::didCancelAuthenticationChallenge):
2974         (WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest):
2975         (WebCore::ResourceLoadNotifier::willSendRequest):
2976         (WebCore::ResourceLoadNotifier::didReceiveResponse):
2977         (WebCore::ResourceLoadNotifier::didReceiveData):
2978         (WebCore::ResourceLoadNotifier::didFinishLoad):
2979         (WebCore::ResourceLoadNotifier::didFailToLoad):
2980         (WebCore::ResourceLoadNotifier::didLoadResourceByXMLHttpRequest):
2981         (WebCore::ResourceLoadNotifier::dispatchAssignIdentifierToInitialRequest):
2982         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
2983         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
2984         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
2985         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
2986         (WebCore::ResourceLoadNotifier::activeDocumentLoader):
2987         * loader/ResourceLoadNotifier.h: Added.
2988         * loader/ResourceLoader.cpp:
2989         (WebCore::ResourceLoader::willSendRequest):
2990         (WebCore::ResourceLoader::didReceiveResponse):
2991         (WebCore::ResourceLoader::didReceiveData):
2992         (WebCore::ResourceLoader::didFinishLoadingOnePart):
2993         (WebCore::ResourceLoader::didFail):
2994         (WebCore::ResourceLoader::didCancel):
2995         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
2996         (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
2997
2998 2009-10-15  Roland Steiner  <rolandsteiner@google.com>
2999
3000         Reviewed by Darin Fisher.
3001
3002         Bug 30427 -  Remove unneeded methods in ChromiumDataObject
3003         (https://bugs.webkit.org/show_bug.cgi?id=30427)
3004         
3005         Remove no longer needed methods from ChromiumDataObject.
3006
3007         No new tests (no functional change)
3008
3009         * platform/chromium/ChromiumDataObject.h:
3010
3011 2009-10-15  Daniel Bates  <dbates@webkit.org>
3012
3013         No review, rolling out r49644.
3014         http://trac.webkit.org/changeset/49644
3015         
3016         We need to think about this change some more. See bug #30418 
3017         for more details.
3018
3019         * page/XSSAuditor.cpp:
3020         (WebCore::XSSAuditor::canEvaluate):
3021         (WebCore::XSSAuditor::canEvaluateJavaScriptURL):
3022         (WebCore::XSSAuditor::canCreateInlineEventListener):
3023         (WebCore::XSSAuditor::canLoadExternalScriptFromSrc):
3024         (WebCore::XSSAuditor::canLoadObject):
3025         (WebCore::XSSAuditor::canSetBaseElementURL):
3026         (WebCore::XSSAuditor::findInRequest):
3027         * page/XSSAuditor.h:
3028
3029 2009-10-14  Jon Honeycutt  <jhoneycutt@apple.com>
3030
3031         Add SPI to determine whether a node is a halted plug-in.
3032
3033         Part of <rdar://problem/7273354> Halted plug-ins should restart on
3034         mouseover
3035
3036         https://bugs.webkit.org/show_bug.cgi?id=30151
3037
3038         Reviewed by Darin Adler.
3039
3040         * plugins/PluginView.cpp:
3041         (WebCore::PluginView::PluginView):
3042         Initialize m_isHalted.
3043
3044         * plugins/PluginView.h:
3045         (WebCore::PluginView::isHalted):
3046         Return m_isHalted.
3047
3048         * plugins/win/PluginViewWin.cpp:
3049         (WebCore::PluginView::halt):
3050         Set m_isHalted to true.
3051         (WebCore::PluginView::restart):
3052         clear m_isHalted.
3053
3054 2009-10-15  Zoltan Horvath  <zoltan@webkit.org>
3055
3056         Reviewed by Oliver Hunt.
3057
3058         [Qt] Build fix for QtWebKit after r49649.
3059
3060         Change JSC::HasNonDefaultMark to OverridesMarkChildren in createStructure function.
3061
3062         * bridge/qt/qt_runtime.h:
3063         (JSC::Bindings::QtRuntimeMethod::createStructure):
3064
3065 2009-10-15  Pavel Feldman  <pfeldman@chromium.org>
3066
3067         Not reviewed - build fix.
3068
3069         Web Inspector: add file missing in r49648
3070
3071         * inspector/front-end/TestController.js: Added.
3072         (WebInspector.TestController):
3073         (WebInspector.TestController.prototype.waitUntilDone):
3074         (WebInspector.TestController.prototype.notifyDone):
3075         (WebInspector.evaluateForTestInFrontend):
3076
3077 2009-10-15  Oliver Hunt  <oliver@apple.com>
3078
3079         Reviewed by Darin Adler.
3080
3081         Make typeinfo flags default to false
3082         https://bugs.webkit.org/show_bug.cgi?id=30372
3083
3084         Part 2 -- Reverse the TypeInfo HasDefaultMark flag to OverridesMarkChildren, etc
3085
3086         * bindings/js/JSDOMBinding.h:
3087         (WebCore::DOMObjectWithGlobalPointer::createStructure):
3088         (WebCore::DOMConstructorObject::createStructure):
3089         * bindings/js/JSDOMWindowShell.h:
3090         (WebCore::JSDOMWindowShell::createStructure):
3091         * bindings/js/JSHTMLAllCollection.h:
3092         (WebCore::JSHTMLAllCollection::createStructure):
3093         * bindings/js/JSQuarantinedObjectWrapper.h:
3094         (WebCore::JSQuarantinedObjectWrapper::createStructure):
3095         * bindings/scripts/CodeGeneratorJS.pm:
3096         * bridge/qt/qt_runtime.h:
3097         (JSC::Bindings::QtRuntimeMethod::createStructure):
3098         * bridge/runtime_method.h:
3099         (JSC::RuntimeMethod::createStructure):
3100
3101 2009-10-15  Pavel Feldman  <pfeldman@chromium.org>
3102
3103         Reviewed by Timothy Hatcher.
3104
3105         Web Inspector: introduce test controller with waitUntilDone
3106         on frontend side.
3107
3108         https://bugs.webkit.org/show_bug.cgi?id=30400
3109
3110         * WebCore.gypi:
3111         * WebCore.vcproj/WebCore.vcproj:
3112         * inspector/front-end/TestController.js: Added.
3113         (WebInspector.TestController):
3114         (WebInspector.TestController.prototype.waitUntilDone):
3115         (WebInspector.TestController.prototype.notifyDone):
3116         (WebInspector.evaluateForTestInFrontend):
3117         * inspector/front-end/WebKit.qrc:
3118         * inspector/front-end/inspector.html:
3119         * inspector/front-end/inspector.js:
3120
3121 2009-10-15  Daniel Bates  <dbates@webkit.org>
3122
3123         Reviewed by Adam Barth.
3124
3125         https://bugs.webkit.org/show_bug.cgi?id=27895
3126         
3127         Fixes an issue in which injecting an inline event handler whose value ends in a single-line
3128         JavaScript comment can bypass the XSSAuditor. Similarly fixes this issue with respect to
3129         the HTML Base element, HTML Object element, inline and external script tags, and
3130         JavaScript multi-line variants of all of these attacks.
3131
3132         Tests: http/tests/security/xssAuditor/base-href-comment.html
3133                http/tests/security/xssAuditor/iframe-javascript-url-comment.html
3134                http/tests/security/xssAuditor/img-onerror-HTML-comment.html
3135                http/tests/security/xssAuditor/img-onerror-comment.html
3136                http/tests/security/xssAuditor/object-tag-comment.html
3137                http/tests/security/xssAuditor/script-tag-comment-HTML-entity.html
3138                http/tests/security/xssAuditor/script-tag-comment.html
3139                http/tests/security/xssAuditor/script-tag-with-source-comment.html
3140
3141         * page/XSSAuditor.cpp: Added constant minAttackLength.
3142         (WebCore::XSSAuditor::canEvaluate):
3143         (WebCore::XSSAuditor::canEvaluateJavaScriptURL):
3144         (WebCore::XSSAuditor::canCreateInlineEventListener):
3145         (WebCore::XSSAuditor::canLoadExternalScriptFromSrc):
3146         (WebCore::XSSAuditor::canLoadObject):
3147         (WebCore::XSSAuditor::canSetBaseElementURL):
3148         (WebCore::XSSAuditor::findInRequest): Added parameter context. Only looks at up 
3149         to minAttackLength of script code plus context (if any).
3150         * page/XSSAuditor.h:
3151
3152 2009-10-08  Adam Langley  <agl@google.com>
3153
3154         Reviewed by Eric Seidel.
3155
3156         Currently, Skia clip paths are 1-bit. This patch makes our path
3157         clipping anti-aliased for non-canvas drawing.
3158
3159         http://code.google.com/p/chromium/issues/detail?id=5927
3160         https://bugs.webkit.org/show_bug.cgi?id=28820
3161         http://www.imperialviolet.org/2009/09/02/anti-aliased-clipping.html
3162
3163         Already covered by layout tests. New baselines will be needed in the
3164         Chromium tree.
3165
3166         (Reland. First landed in r49329, reverted in r49330 due to Windows
3167         build break)
3168
3169         * html/canvas/CanvasRenderingContext2D.cpp:
3170         (WebCore::CanvasRenderingContext2D::clip):
3171         * platform/graphics/GraphicsContext.h:
3172         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3173         (WebCore::GraphicsContext::canvasClip):
3174         * platform/graphics/cg/GraphicsContextCG.cpp:
3175         (WebCore::GraphicsContext::canvasClip):
3176         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
3177         (WebCore::GraphicsContext::canvasClip):
3178         * platform/graphics/qt/GraphicsContextQt.cpp:
3179         (WebCore::GraphicsContext::canvasClip):
3180         * platform/graphics/skia/GraphicsContextSkia.cpp:
3181         (WebCore::GraphicsContext::addInnerRoundedRectClip):
3182         (WebCore::GraphicsContext::clip):
3183         (WebCore::GraphicsContext::canvasClip):
3184         (WebCore::GraphicsContext::clipPath):
3185         * platform/graphics/skia/PlatformContextSkia.cpp:
3186         (PlatformContextSkia::clipPathAntiAliased):
3187         (PlatformContextSkia::restore):
3188         (PlatformContextSkia::applyAntiAliasedClipPaths):
3189         * platform/graphics/skia/PlatformContextSkia.h:
3190         * platform/graphics/win/GraphicsContextWin.cpp:
3191         (WebCore::GraphicsContext::canvasClip):
3192         * platform/graphics/wince/GraphicsContextWince.cpp:
3193         (WebCore::GraphicsContext::canvasClip):
3194         * platform/graphics/wx/GraphicsContextWx.cpp:
3195         (WebCore::GraphicsContext::canvasClip):
3196
3197 2009-10-15  Eric Carlson  <eric.carlson@apple.com>
3198
3199         Reviewed by Simon Fraser.
3200
3201         <rdar://problem/7295738> No way to mute/unmute a movie in full screen video mode
3202
3203         * WebCore.Video.exp: Export muted and setMute.
3204
3205 2009-10-15  Simon Fraser  <simon.fraser@apple.com>
3206
3207         Reviewed by Dan Bernstein.
3208
3209         Transitions fail to run sometimes
3210         https://bugs.webkit.org/show_bug.cgi?id=26770
3211
3212         Fix an issue where we could attempt to start accelerated animations or transitions on
3213         GraphicsLayer that were not rooted (because of visibility:hidden), which would leave
3214         the AnimationController's m_waitingForResponse flag in a state that killed subsequent
3215         software transitions.
3216
3217         * page/animation/AnimationController.cpp:
3218         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
3219         (WebCore::AnimationControllerPrivate::endAnimationUpdate):
3220         (WebCore::AnimationControllerPrivate::receivedStartTimeResponse):
3221         (WebCore::AnimationControllerPrivate::addToStartTimeResponseWaitList):
3222         (WebCore::AnimationControllerPrivate::startTimeResponse):
3223         * page/animation/AnimationControllerPrivate.h:
3224         Make some methods non-inline for ease of debugging (these are not hot methods).
3225         Rename m_waitingForAResponse to m_waitingForResponse.
3226         
3227         * platform/graphics/GraphicsLayer.h:
3228         * platform/graphics/GraphicsLayer.cpp:
3229         (WebCore::GraphicsLayer::hasAncestor):
3230         New method to report whether the receiver has the given layer as an ancestor. Used for checking
3231         whether a layer is rooted.
3232
3233         * rendering/RenderLayerBacking.cpp:
3234         (WebCore::RenderLayerBacking::startAnimation):
3235         (WebCore::RenderLayerBacking::startTransition):
3236         Don't try to start accelerated animations or transitions on non-rooted GraphicsLayers.
3237
3238 2009-10-15  Alexander Pavlov  <apavlov@chromium.org>
3239
3240         Reviewed by Pavel Feldman.
3241
3242         Refactor ProfilesPanel to support multiple profile types
3243
3244         Data describing different profile types are now stored in distinct objects.
3245         https://bugs.webkit.org/show_bug.cgi?id=30332
3246
3247         * WebCore.vcproj/WebCore.vcproj:
3248         * inspector/front-end/ProfileView.js:
3249         (WebInspector.CPUProfileView.profileCallback):
3250         (WebInspector.CPUProfileView):
3251         (WebInspector.CPUProfileView.prototype._sortData):
3252         (WebInspector.CPUProfileType):
3253         (WebInspector.CPUProfileType.prototype.get buttonTooltip):
3254         (WebInspector.CPUProfileType.prototype.get buttonStyle):
3255         (WebInspector.CPUProfileType.prototype.buttonClicked):
3256         (WebInspector.CPUProfileType.prototype.setRecordingProfile):
3257         (WebInspector.CPUProfile):
3258         (WebInspector.CPUProfile.prototype.get title):
3259         (WebInspector.CPUProfile.prototype.get uid):
3260         (WebInspector.CPUProfile.prototype.get head):
3261         (WebInspector.CPUProfile.prototype.createView):
3262         (WebInspector.CPUProfile.prototype.viewForProfile):
3263         * inspector/front-end/ProfilesPanel.js:
3264         (WebInspector.ProfileType):
3265         (WebInspector.ProfileType.prototype.get buttonTooltip):
3266         (WebInspector.ProfileType.prototype.get buttonStyle):
3267         (WebInspector.ProfileType.prototype.get buttonCaption):
3268         (WebInspector.ProfileType.prototype.get id):
3269         (WebInspector.ProfileType.prototype.get name):
3270         (WebInspector.ProfileType.prototype.buttonClicked):
3271         (WebInspector.ProfilesPanel):
3272         (WebInspector.ProfilesPanel.prototype.get statusBarItems.clickHandler):
3273         (WebInspector.ProfilesPanel.prototype.get statusBarItems):
3274         (WebInspector.ProfilesPanel.prototype.reset):
3275         (WebInspector.ProfilesPanel.prototype.registerProfileType):
3276         (WebInspector.ProfilesPanel.prototype._makeKey):
3277         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
3278         (WebInspector.ProfilesPanel.prototype.showProfile):
3279         (WebInspector.ProfilesPanel.prototype.getProfileType):
3280         (WebInspector.ProfilesPanel.prototype.showProfileForURL):
3281         (WebInspector.ProfilesPanel.prototype.updateProfileTypeButtons):
3282         (WebInspector.ProfilesPanel.prototype.displayTitleForProfileLink):
3283         (WebInspector.ProfilesPanel.prototype.get searchableViews):
3284         (WebInspector.ProfilesPanel.prototype._updateInterface):
3285         * inspector/front-end/inspector.js:
3286         (WebInspector._createPanels):
3287         (WebInspector.documentClick.followLink):
3288         (WebInspector.documentClick):
3289         (WebInspector.addProfileHeader):
3290         (WebInspector.setRecordingProfile):
3291         (WebInspector.linkifyStringAsFragment):
3292         (WebInspector.showProfileForURL):
3293
3294 2009-10-15  Pavel Feldman  <pfeldman@chromium.org>
3295
3296         Reviewed by Timothy Hatcher.
3297
3298         Web Inspector: Enable inspector layout tests.
3299
3300         https://bugs.webkit.org/show_bug.cgi?id=30014
3301
3302         * inspector/InspectorController.cpp:
3303         (WebCore::InspectorController::evaluateForTestInFrontend):
3304
3305 2009-10-15  Philippe Normand  <pnormand@igalia.com>
3306
3307         Reviewed by Gustavo Noronha.
3308
3309         [GStreamer] READY state doesn't mean "enough data"
3310         https://bugs.webkit.org/show_bug.cgi?id=30003
3311
3312         STATE_READY means MediaPlayer::HaveNothing
3313
3314         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3315         (WebCore::MediaPlayerPrivate::updateStates):
3316
3317 2009-10-15  Philippe Normand  <pnormand@igalia.com>
3318
3319         Reviewed by Gustavo Noronha.
3320
3321         https://bugs.webkit.org/show_bug.cgi?id=30002
3322
3323         implement cancelLoad
3324
3325         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3326         (WebCore::MediaPlayerPrivate::cancelLoad):
3327
3328 2009-10-15  Sebastian Dröge  <sebastian.droege@collabora.co.uk>
3329
3330         Reviewed by Gustavo Noronha.
3331
3332         https://bugs.webkit.org/show_bug.cgi?id=30353
3333         
3334         Fix race condition, leading to a deadlock
3335
3336         * platform/graphics/gtk/VideoSinkGStreamer.cpp:
3337         (webkit_video_sink_timeout_func):
3338         (webkit_video_sink_render):
3339         (unlock_buffer_mutex):
3340         (webkit_video_sink_unlock):
3341         (webkit_video_sink_unlock_stop):
3342         (webkit_video_sink_stop):
3343         (webkit_video_sink_start):
3344         (webkit_video_sink_class_init):
3345         Fix race condition in unlock/render that would lead to deadlocks.
3346
3347 2009-10-15  Sebastian Dröge  <sebastian.droege@collabora.co.uk>
3348
3349         Reviewed by Gustavo Noronha.
3350
3351         https://bugs.webkit.org/show_bug.cgi?id=30374
3352         
3353         Check if caps are valid before parsing them
3354
3355         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3356         (WebCore::MediaPlayerPrivate::duration):
3357         Check if caps are valid before parsing them in ::naturalSize().
3358         This prevents assertions if the natural size should be calculated
3359         before the video caps are negotiated.
3360
3361 2009-10-15  Philippe Normand  <pnormand@igalia.com>
3362
3363         Reviewed by Gustavo Noronha.
3364
3365         https://bugs.webkit.org/show_bug.cgi?id=30006
3366         [GStreamer] Unnecessary checks for Messages types in callbacks
3367
3368         refactored gst message callbacks into a single one
3369
3370         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3371         (WebCore::mediaPlayerPrivateMessageCallback):
3372         (WebCore::do_gst_init):
3373         (WebCore::MediaPlayerPrivate::duration):
3374         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
3375
3376 2009-10-15  Shu Chang  <Chang.Shu@nokia.com>
3377
3378         Reviewed by Adele Peterson.
3379
3380         Anchor elements should be mouse focusable regardless isLink flag.
3381         https://bugs.webkit.org/show_bug.cgi?id=26856
3382
3383         * html/HTMLAnchorElement.cpp:
3384         * html/HTMLAnchorElement.h:
3385
3386 2009-10-15  Nikolas Zimmermann  <nzimmermann@rim.com>
3387
3388         Not reviewed. Sort XCode project file.
3389
3390         * WebCore.xcodeproj/project.pbxproj:
3391
3392 2009-10-15  Yury Semikhatsky  <yurys@chromium.org>
3393
3394         Reviewed by Dave Hyatt.
3395
3396         Return correct shorthand property name for 
3397         background-repeat-x, background-repeat-y, background-position-x,
3398         background-position-y, -webkit-mask-position-x, -webkit-mask-position-y,
3399         -webkit-mask-repeat-x, -webkit-mask-repeat-y.
3400
3401         https://bugs.webkit.org/show_bug.cgi?id=28972
3402
3403         Test: fast/backgrounds/repeat/background-repeat-shorthand.html
3404
3405         * css/CSSParser.cpp:
3406         (WebCore::CSSParser::parseValue):
3407
3408 2009-10-14  Mikhail Naganov  <mnaganov@chromium.org>
3409
3410         Reviewed by Pavel Feldman.
3411
3412         Web Inspector: Migrate profiles to the injected script-based schema.
3413
3414         https://bugs.webkit.org/show_bug.cgi?id=30328
3415
3416         * bindings/js/JSInspectorBackendCustom.cpp:
3417         * bindings/v8/custom/V8CustomBinding.h:
3418         * inspector/InspectorBackend.cpp:
3419         (WebCore::InspectorBackend::getProfileHeaders):
3420         (WebCore::InspectorBackend::getProfile):
3421         * inspector/InspectorBackend.h:
3422         * inspector/InspectorBackend.idl:
3423         * inspector/InspectorController.cpp:
3424         (WebCore::InspectorController::addProfile):
3425         (WebCore::InspectorController::getProfileHeaders):
3426         (WebCore::InspectorController::getProfile):
3427         (WebCore::InspectorController::createProfileHeader):
3428         * inspector/InspectorController.h:
3429         * inspector/InspectorFrontend.cpp:
3430         (WebCore::InspectorFrontend::addProfileHeader):
3431         (WebCore::InspectorFrontend::didGetProfileHeaders):
3432         (WebCore::InspectorFrontend::didGetProfile):
3433         * inspector/InspectorFrontend.h:
3434         * inspector/JavaScriptProfileNode.cpp:
3435         (WebCore::ProfileNodeClass):
3436         * inspector/front-end/ProfileView.js:
3437         (WebInspector.ProfileView.profileCallback):
3438         (WebInspector.ProfileView):
3439         (WebInspector.ProfileView.prototype._mouseDownInDataGrid):
3440         (WebInspector.ProfileView.prototype._assignParentsInProfile):
3441         * inspector/front-end/ProfilesPanel.js:
3442         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
3443         * inspector/front-end/inspector.js:
3444         (WebInspector.addProfileHeader):
3445
3446 2009-10-14  Pavel Feldman  <pfeldman@chromium.org>
3447
3448         Reviewed by Timothy Hatcher.
3449
3450         Web Inspector: Create and update frontend script objects only when
3451         web inspector is visible.
3452
3453         https://bugs.webkit.org/show_bug.cgi?id=30376
3454
3455         * inspector/InspectorController.cpp:
3456         (WebCore::InspectorController::addConsoleMessage):
3457         (WebCore::InspectorController::populateScriptObjects):
3458         (WebCore::InspectorController::pruneResources):
3459         (WebCore::InspectorController::didCommitLoad):
3460         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
3461         (WebCore::InspectorController::identifierForInitialRequest):
3462         (WebCore::InspectorController::mainResourceFiredDOMContentEvent):
3463         (WebCore::InspectorController::mainResourceFiredLoadEvent):
3464         (WebCore::InspectorController::willSendRequest):
3465         (WebCore::InspectorController::didReceiveResponse):
3466         (WebCore::InspectorController::didReceiveContentLength):
3467         (WebCore::InspectorController::didFinishLoading):
3468         (WebCore::InspectorController::didFailLoading):
3469         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
3470         (WebCore::InspectorController::scriptImported):
3471         (WebCore::InspectorController::didOpenDatabase):
3472         (WebCore::InspectorController::didUseDOMStorage):
3473         (WebCore::InspectorController::evaluateForTestInFrontend):
3474
3475 2009-10-15  Joseph Pecoraro  <joepeck@webkit.org>
3476
3477         Fix Windows build.
3478
3479         * dom/Document.idl:
3480
3481 2009-10-14  Joseph Pecoraro  <joepeck@webkit.org>
3482
3483         Reviewed by Adam Barth.
3484
3485         [HTML5] Add document.head
3486         https://bugs.webkit.org/show_bug.cgi?id=30232
3487
3488         Test is fast/dom/document-head.html
3489
3490         * dom/Document.idl: added readonly attribute head
3491
3492 2009-10-14  Matt Mueller  <mattm@chromium.org>
3493
3494         Reviewed by Darin Adler.
3495
3496         Check FNonNeg after the unit switch to avoid valgrind uninitialised conditional reference in WebCore::CSSParser::validUnit.  See http://crbug.com/20939.
3497         https://bugs.webkit.org/show_bug.cgi?id=30347
3498         https://bugs.webkit.org/show_bug.cgi?id=22772
3499
3500         Covered by running LayoutTests/fast/css/invalid-percentage-property.html under valgrind.
3501
3502         * css/CSSParser.cpp:
3503         (WebCore::CSSParser::validUnit):
3504
3505 2009-10-14  Adam Barth  <abarth@webkit.org>
3506
3507         Reviewed by Sam Weinig.
3508
3509         Move scrolling code from FrameLoader to FrameView
3510         https://bugs.webkit.org/show_bug.cgi?id=30370
3511
3512         This code is about controlling the Frame's view, not about loading
3513         stuff into the frame.
3514
3515         * loader/FrameLoader.cpp:
3516         (WebCore::FrameLoader::finishedParsing):
3517         (WebCore::FrameLoader::scrollToAnchor):
3518         * page/FrameView.cpp:
3519         (WebCore::FrameView::scrollToFragment):
3520         (WebCore::FrameView::scrollToAnchor):
3521         * page/FrameView.h:
3522
3523 2009-10-14  Oliver Hunt  <oliver@apple.com>
3524
3525         Reviewed by Geoff Garen.
3526
3527         Make typeinfo flags default to false
3528         https://bugs.webkit.org/show_bug.cgi?id=30372
3529         
3530         Part 1. Reverse the HasStandardGetOwnPropertySlot flag.
3531
3532         * bindings/js/JSDOMBinding.h:
3533         (WebCore::DOMObjectWithGlobalPointer::createStructure):
3534         (WebCore::DOMConstructorObject::createStructure):
3535         * bindings/js/JSDOMWindowShell.h:
3536         (WebCore::JSDOMWindowShell::createStructure):
3537         * bindings/js/JSHTMLAllCollection.h:
3538         (WebCore::JSHTMLAllCollection::createStructure):
3539         * bindings/js/JSQuarantinedObjectWrapper.h:
3540         (WebCore::JSQuarantinedObjectWrapper::createStructure):
3541         * bindings/scripts/CodeGeneratorJS.pm:
3542         * bridge/objc/objc_runtime.h:
3543         (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
3544         * bridge/runtime_array.h:
3545         (JSC::RuntimeArray::createStructure):
3546         * bridge/runtime_method.h:
3547         (JSC::RuntimeMethod::createStructure):
3548         * bridge/runtime_object.h:
3549         (JSC::RuntimeObjectImp::createStructure):
3550
3551 2009-10-14  Adam Barth  <abarth@webkit.org>
3552
3553         Reviewed by Darin Adler.
3554
3555         [XSSAuditor] Add an exception for local files
3556         https://bugs.webkit.org/show_bug.cgi?id=30352
3557
3558         Reduce XSS auditor false positives by always letting pages load scripts
3559         from their own host. We don't actually know of any false positives
3560         that this prevents, but it seems like a good idea.
3561
3562         One subtly is that we don't add this exception for scripts that have a
3563         query string because (1) URLs with query strings are more apt to
3564         confuse servers and (2) it is much less common to load scripts with a
3565         query string.
3566
3567         Tests: http/tests/security/xssAuditor/script-tag-with-source-same-host-with-query.html
3568                http/tests/security/xssAuditor/script-tag-with-source-same-host.html
3569
3570         * page/XSSAuditor.cpp:
3571         (WebCore::XSSAuditor::canLoadExternalScriptFromSrc):
3572
3573 2009-10-14  Nikolas Zimmermann  <nzimmermann@rim.com>
3574
3575         Reviewed by George Staikos.
3576
3577         Kill virtual contextElement() method spread all over SVG code
3578         https://bugs.webkit.org/show_bug.cgi?id=30183
3579
3580         Remove virtual contextElement() function from all SVG*Element classes, as all animated properties live in the
3581         SVG*Element classes now instead of the SVGFitToViewBox / SVGURIReference / SVGExternalResourcesRequired
3582         subclasses. This is a first step to working animVal support. More patches will follow that depend on this change.
3583
3584         Remove "This file is part of the KDE project" from several files, change my old mail adress wildfox -> zimmermann,
3585         and remove vim modelines on all files I touched. No change in functionality, thus no new tests.
3586
3587         * svg/SVGAElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
3588         * svg/SVGAltGlyphElement.h: Remove virtual contextElement() method.
3589         * svg/SVGAnimatedProperty.h:
3590         (WebCore::::synchronize):
3591         (WebCore::::startAnimation):
3592         (WebCore::::stopAnimation):
3593         * svg/SVGAnimationElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
3594         * svg/SVGCircleElement.h: Ditto.
3595         * svg/SVGClipPathElement.h: Ditto.
3596         * svg/SVGCursorElement.h: Ditto.
3597         * svg/SVGDefsElement.h: Ditto.
3598         * svg/SVGEllipseElement.h: Ditto.
3599         * svg/SVGExternalResourcesRequired.h: Remove pure-virtual contextElement() method.
3600         * svg/SVGFEImageElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
3601         * svg/SVGFELightElement.h: Remove virtual contextElement() method.
3602         * svg/SVGFEMergeNodeElement.h: Ditto.
3603         * svg/SVGFilterElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
3604         * svg/SVGFilterPrimitiveStandardAttributes.h: Remove virtual contextElement() method.
3605         * svg/SVGFitToViewBox.cpp:
3606         (WebCore::SVGFitToViewBox::parseViewBox): Add Document* parameter - we used to fetch the Document pointer from the context element.
3607         (WebCore::SVGFitToViewBox::parseMappedAttribute): Ditto.
3608         * svg/SVGFitToViewBox.h: Remove pure-virtual contextElement() method.
3609         * svg/SVGFontElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
3610         * svg/SVGForeignObjectElement.h: Ditto.
3611         * svg/SVGGElement.h: Ditto.
3612         * svg/SVGGradientElement.h: Ditto.
3613         * svg/SVGImageElement.h: Ditto.
3614         * svg/SVGLineElement.h: Ditto.
3615         * svg/SVGMPathElement.h: Ditto. Fix license indention.
3616         * svg/SVGMarkerElement.cpp:
3617         (WebCore::SVGMarkerElement::parseMappedAttribute): Pass document() to SVGFitToViewBox::parseMappedAttribute().
3618         * svg/SVGMarkerElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
3619         * svg/SVGMaskElement.h: Ditto.
3620         * svg/SVGPathElement.h: Ditto.
3621         * svg/SVGPatternElement.cpp:
3622         (WebCore::SVGPatternElement::parseMappedAttribute): Pass document() to SVGFitToViewBox::parseMappedAttribute().
3623         * svg/SVGPatternElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
3624         * svg/SVGPolyElement.cpp:
3625         (WebCore::SVGPolyElement::updateAnimatedSVGAttribute): synchronizeProperty<...>() has been renamed to PropertySynchronizer<...>::synchronize().
3626         * svg/SVGPolyElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
3627         * svg/SVGRectElement.h: Ditto.
3628         * svg/SVGSVGElement.cpp:
3629         (WebCore::SVGSVGElement::parseMappedAttribute): Pass document() to SVGFitToViewBox::parseMappedAttribute().
3630         * svg/SVGSVGElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
3631         * svg/SVGScriptElement.h: Ditto.
3632         * svg/SVGSwitchElement.h: Ditto.
3633         * svg/SVGSymbolElement.cpp:
3634         (WebCore::SVGSymbolElement::parseMappedAttribute): Pass document() to SVGFitToViewBox::parseMappedAttribute().
3635         * svg/SVGSymbolElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
3636         * svg/SVGTRefElement.h: Remove virtual contextElement() method.
3637         * svg/SVGTextContentElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
3638         * svg/SVGTextPathElement.h: Remove virtual contextElement() method.
3639         * svg/SVGUseElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
3640         * svg/SVGViewElement.cpp:
3641         (WebCore::SVGViewElement::parseMappedAttribute): Pass document() to SVGFitToViewBox::parseMappedAttribute().
3642         * svg/SVGViewElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
3643         * svg/SVGViewSpec.cpp:
3644         (WebCore::SVGViewSpec::setViewBoxString): Pass document() to SVGFitToViewBox::parseMappedAttribute().
3645         (WebCore::SVGViewSpec::parseViewSpec): Ditto.
3646         * svg/SVGViewSpec.h: Devirtualize contextElement() method, it's the only place where contextElement() remains needed.
3647
3648 2009-10-14  Dirk Schulze  <krit@webkit.org>
3649
3650         Reviewed by Nikolas Zimmermann.
3651
3652         SVG Masking with wrong offset
3653         [https://bugs.webkit.org/show_bug.cgi?id=30325]
3654
3655         SVGMaskElement moves the mask image graphics context to the wrong location.
3656         In objectBoundingBoxMode the maskDestRect gets translated. This transformation
3657         is not used in the later calculation. Fix by consistenly calculating the translation
3658         offsets from the final mask destination rect.
3659
3660         Test: svg/custom/mask-with-default-value.svg
3661
3662         * svg/SVGMaskElement.cpp:
3663         (WebCore::SVGMaskElement::drawMaskerContent):
3664
3665 2009-10-14  Kevin Decker  <kdecker@apple.com>
3666
3667         Rubberstamped by Jon Honeycutt.
3668         
3669         Export a few more showSubstituteImage() related methods.
3670         
3671         * WebCore.base.exp:
3672         * WebCore.xcodeproj/project.pbxproj:
3673
3674 2009-10-14  Evan Martin  <evan@chromium.org>
3675
3676         Reviewed by Darin Adler.
3677
3678         Stringify CSS units manually (without printf) to make the formatting
3679         locale-insensitive and obey CSS spec with respect to large values.
3680         
3681         https://bugs.webkit.org/show_bug.cgi?id=18994
3682
3683         * css/CSSPrimitiveValue.cpp:
3684         (WebCore::appendCSSDouble):
3685         (WebCore::formatWithUnits):
3686         (WebCore::CSSPrimitiveValue::cssText):
3687
3688 2009-10-14  Mark Seaborn  <mseaborn@google.com>
3689
3690         Reviewed by Darin Adler.
3691
3692         Check error return value in Perl build script
3693         https://bugs.webkit.org/show_bug.cgi?id=30316
3694
3695         * css/makevalues.pl: Die if gperf fails.
3696
3697 2009-10-14  Dirk Schulze  <krit@webkit.org>
3698
3699         Reviewed by Nikolas Zimmermann.
3700
3701         SVG wrong filterRegions for userSpaceOnUse and percentage values
3702         [https://bugs.webkit.org/show_bug.cgi?id=30330]
3703
3704         Some clean-up of the SVG filter calculation code. This clean-up
3705         also fixes the problem with percentage and userSpaceInUse mode.
3706
3707         Test: svg/filters/subRegion-in-userSpace.svg
3708
3709         * platform/graphics/filters/FilterEffect.cpp:
3710         (WebCore::FilterEffect::FilterEffect):
3711         * platform/graphics/filters/FilterEffect.h:
3712         * rendering/SVGRenderSupport.cpp:
3713         (WebCore::SVGRenderBase::filterBoundingBoxForRenderer):
3714         * svg/SVGFilterElement.cpp:
3715         (WebCore::SVGFilterElement::buildFilter):
3716         (WebCore::SVGFilterElement::canvasResource):
3717         * svg/SVGFilterElement.h:
3718         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
3719         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
3720         * svg/graphics/SVGResourceFilter.cpp:
3721         (WebCore::SVGResourceFilter::SVGResourceFilter):
3722         (WebCore::SVGResourceFilter::~SVGResourceFilter):
3723         (WebCore::SVGResourceFilter::addFilterEffect):
3724         (WebCore::SVGResourceFilter::prepareFilter):
3725         * svg/graphics/SVGResourceFilter.h:
3726         (WebCore::SVGResourceFilter::create):
3727         * svg/graphics/filters/SVGFilter.cpp:
3728         (WebCore::SVGFilter::SVGFilter):
3729         (WebCore::SVGFilter::calculateEffectSubRegion):
3730         (WebCore::SVGFilter::create):
3731         * svg/graphics/filters/SVGFilter.h:
3732
3733 2009-10-14  Chris Marrin  <cmarrin@apple.com>
3734
3735         The last change fixed the problem, removing diagnostic printfs.
3736
3737         * platform/graphics/mac/GraphicsContext3DMac.cpp:
3738         (WebCore::GraphicsContext3D::GraphicsContext3D):
3739
3740 2009-10-14  Kevin Ollivier  <kevino@theolliviers.com>
3741
3742         CURL build fix for versions < 7.18.
3743
3744         * platform/network/curl/ResourceHandleCurl.cpp:
3745         (WebCore::ResourceHandle::setDefersLoading):
3746         * platform/network/curl/ResourceHandleManager.cpp:
3747         (WebCore::ResourceHandleManager::initializeHandle):
3748
3749 2009-10-14  Chris Marrin  <cmarrin@apple.com>
3750
3751         One more round of changes to figure out why the webgl 
3752         tests are crashing on the build bot. Here I am trying
3753         to see if we can create a software renderer. I am also
3754         printing the found pixel formats.
3755
3756         * platform/graphics/mac/GraphicsContext3DMac.cpp:
3757         (WebCore::GraphicsContext3D::GraphicsContext3D):
3758
3759 2009-10-14  Yael Aharon  <yael.aharon@nokia.com>
3760  
3761         Reviewed by Simon Hausmann.
3762  
3763         Enabling NPAPI plugin support on Qt Webkit for S60 platform
3764         https://bugs.webkit.org/show_bug.cgi?id=29302
3765
3766         Also implemented by Mahesh Kulkarni<mahesh.kulkarni@nokia.com>, 
3767         Rohini Ananth <rohini.ananth@nokia.com> and help from Norbert Lesr
3768         <norbert.leser@nokia.com>
3769          
3770         * WebCore.pro:
3771         Enabling ENABLE_NETSCAPE_PLUGIN_API for S60 and added S60 specific 
3772         new plugin files to be compiled under symbian: macro
3773
3774         * bridge/npapi.h:
3775         Added NPEvent and NPRegion definition for Symbian
3776
3777         * plugins/PluginPackage.h:
3778         Added S60 specific plugin interface and plugin loader variables
3779         * plugins/PluginPackage.cpp:
3780         (WebCore::PluginPackage::unload): Added !PLATFORM(SYMBIAN) macro.
3781         Default implementation to be used only for non-symbian platform
3782         * plugins/PluginDatabase.cpp:
3783         Macro !SYMBIAN checking
3784         * plugins/PluginView.h:
3785         Add Symbian to platforms that support setNPWindowIfNeeded
3786         * plugins/PluginView.cpp:
3787         (WebCore::PluginView::setFrameRect): Add Symbian to platforms that
3788         call setNPWindowRect from setFrameRect
3789          
3790         Added folder 'symbian' which contains implementation files for S60
3791         platform-specific NPAPI plugin functionality, under /plugins folder
3792         * plugins/symbian
3793         * plugins/symbian/npinterface.h:
3794         Plugin Interface to be implemented by S60 NPAPI plugins 
3795         * plugins/symbian/PluginContainerSymbian.h:
3796         * plugins/symbian/PluginContainerSymbian.cpp:
3797         * plugins/symbian/PluginDatabaseSymbian.cpp:
3798         * plugins/symbian/PluginViewSymbian.cpp:
3799         * plugins/symbian/PluginPackageSymbian.cpp:
3800
3801 2009-10-14  Chris Marrin  <cmarrin@apple.com>
3802
3803         More changes to figure out why the webgl tests are crashing on the build bot.
3804
3805         * platform/graphics/mac/GraphicsContext3DMac.cpp:
3806         (WebCore::GraphicsContext3D::GraphicsContext3D):
3807
3808 2009-10-14  Victor Wang  <victorw@chromium.org>
3809
3810         Reviewed by David Hyatt.
3811
3812         Round non-integer line height values.
3813
3814         Change webkit to rounding non-integer line height values
3815         instead of truncating them. This fixes a layout test
3816         failure on Windows and matches the calculation in IE and Firefox. 
3817
3818         https://bugs.webkit.org/show_bug.cgi?id=24434
3819
3820         Test: fast/css/line-height-rounding.html
3821               fast/forms/textarea-scrollbar-height.htm
3822
3823         * css/CSSComputedStyleDeclaration.cpp:
3824         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3825         * rendering/InlineFlowBox.cpp:
3826         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3827         * rendering/RenderBR.cpp:
3828         (WebCore::RenderBR::lineHeight):
3829         * rendering/style/RenderStyle.h:
3830         (WebCore::InheritedFlags::computedLineHeight):
3831
3832 2009-10-13  Kelly Norton  <knorton@google.com>
3833
3834         Reviewed by Pavel Feldman.
3835
3836         Removes the persistent setting for InspectorTimelineAgent and renames timeline related
3837         interfaces to be more consistent with the JavaScript profiler.
3838
3839         * inspector/InspectorBackend.cpp:
3840         (WebCore::InspectorBackend::startTimelineProfiler):
3841         (WebCore::InspectorBackend::stopTimelineProfiler):
3842         (WebCore::InspectorBackend::timelineProfilerEnabled):
3843         * inspector/InspectorBackend.h:
3844         * inspector/InspectorBackend.idl:
3845         * inspector/InspectorController.cpp:
3846         (WebCore::InspectorController::setFrontendProxyObject):
3847         (WebCore::InspectorController::startTimelineProfiler):
3848         (WebCore::InspectorController::stopTimelineProfiler):
3849         (WebCore::InspectorController::timelineProfilerEnabled):
3850         * inspector/InspectorController.h:
3851         * inspector/InspectorFrontend.cpp:
3852         (WebCore::InspectorFrontend::timelineProfilerWasStarted):
3853         (WebCore::InspectorFrontend::timelineProfilerWasStopped):
3854         * inspector/InspectorFrontend.h:
3855         * inspector/front-end/TimelineAgent.js:
3856         (WebInspector.timelineProfilerWasStarted):
3857         (WebInspector.timelineProfilerWasStopped):
3858
3859 2009-10-01  Yong Li  <yong.li@torchmobile.com>
3860
3861         Reviewed by Adele Peterson.
3862
3863         Fix crash when loading invalid image data
3864         https://bugs.webkit.org/show_bug.cgi?id=29980
3865
3866         * rendering/RenderImage.cpp:
3867         (WebCore::RenderImage::setImageSizeForAltText):
3868
3869 2009-10-09  Stephen White  <senorblanco@chromium.org>
3870
3871         Reviewed by Eric Seidel.
3872
3873         Fix for NULL ptr deref in canvas's toDataURL().
3874         https://bugs.webkit.org/show_bug.cgi?id=30254
3875
3876         Test: fast/canvas/canvas-toDataURL-crash.html
3877
3878         * html/HTMLCanvasElement.cpp:
3879         (WebCore::HTMLCanvasElement::toDataURL):
3880
3881 2009-10-14  Pavel Feldman  <pfeldman@chromium.org>
3882
3883         Not reviewed, reverting r49558 since it broke profiler tests.
3884
3885         https://bugs.webkit.org/show_bug.cgi?id=30328
3886
3887         * bindings/js/JSInspectorBackendCustom.cpp:
3888         * bindings/v8/custom/V8CustomBinding.h:
3889         * inspector/InspectorBackend.cpp:
3890         (WebCore::InspectorBackend::getProfileHeaders):
3891         (WebCore::InspectorBackend::getProfile):
3892         * inspector/InspectorBackend.h:
3893         * inspector/InspectorBackend.idl:
3894         * inspector/InspectorController.cpp:
3895         (WebCore::InspectorController::addProfile):
3896         (WebCore::InspectorController::getProfileHeaders):
3897         (WebCore::InspectorController::getProfile):
3898         (WebCore::InspectorController::createProfileHeader):
3899         * inspector/InspectorController.h:
3900         * inspector/InspectorFrontend.cpp:
3901         (WebCore::InspectorFrontend::addProfileHeader):
3902         (WebCore::InspectorFrontend::didGetProfileHeaders):
3903         (WebCore::InspectorFrontend::didGetProfile):
3904         * inspector/InspectorFrontend.h:
3905         * inspector/JavaScriptProfileNode.cpp:
3906         (WebCore::ProfileNodeClass):
3907         * inspector/front-end/ProfileView.js:
3908         (WebInspector.ProfileView.profileCallback):
3909         (WebInspector.ProfileView):
3910         (WebInspector.ProfileView.prototype._mouseDownInDataGrid):
3911         (WebInspector.ProfileView.prototype._assignParentsInProfile):
3912         * inspector/front-end/ProfilesPanel.js:
3913         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
3914         * inspector/front-end/inspector.js:
3915         (WebInspector.addProfileHeader):
3916
3917 2009-10-13  Holger Hans Peter Freyther  <zecke@selfish.org>
3918
3919         Reviewed by Simon Hausmann.
3920
3921         ImageDecoderQt: Minor tweaks to the decoder
3922
3923         - Only cache the data when we start to use it.
3924         - Start with a repetition count of none for normal images.
3925         - Do not use canRead as this will trigger parsing of the full image
3926         - Cope with a GIF failing to decode the first frame, do not
3927           set m_failed to true if decoding the first frame failed
3928         - Inform the QImageReader about the format that was detected
3929         - Always create a ImageDecoderQt when when we have more
3930         than four byte.
3931
3932
3933         * platform/graphics/qt/ImageDecoderQt.cpp:
3934         (WebCore::ImageDecoder::create): Always create QImageReader for a significant speed up
3935         (WebCore::ImageDecoderQt::ImageDecoderQt): Initialize m_repetitionCount to cAnimationNone
3936         (WebCore::ImageDecoderQt::setData): Only call ImageDecoder::setData when everything has been received
3937         (WebCore::ImageDecoderQt::isSizeAvailable): Do not check m_failed twice.
3938         (WebCore::ImageDecoderQt::filenameExtension): Convert from QByteArray to String
3939         (WebCore::ImageDecoderQt::frameBufferAtIndex): Check for m_failed before trying to decode
3940         (WebCore::ImageDecoderQt::internalDecodeSize): Fail if the size is QSize()
3941         (WebCore::ImageDecoderQt::forceLoadEverything): Handle the case were decoding the first frame fails
3942         * platform/graphics/qt/ImageDecoderQt.h: Change the m_format type
3943
3944 2009-10-14  Mikhail Naganov  <mnaganov@chromium.org>
3945
3946         Reviewed by Pavel Feldman.
3947
3948         Web Inspector: Migrate profiles to the injected script-based schema.
3949
3950         https://bugs.webkit.org/show_bug.cgi?id=30328
3951
3952         * bindings/js/JSInspectorBackendCustom.cpp:
3953         * bindings/v8/custom/V8CustomBinding.h:
3954         * inspector/InspectorBackend.cpp:
3955         (WebCore::InspectorBackend::getProfileHeaders):
3956         (WebCore::InspectorBackend::getProfile):
3957         * inspector/InspectorBackend.h:
3958         * inspector/InspectorBackend.idl:
3959         * inspector/InspectorController.cpp:
3960         (WebCore::InspectorController::addProfile):
3961         (WebCore::InspectorController::getProfileHeaders):
3962         (WebCore::InspectorController::getProfile):
3963         (WebCore::InspectorController::createProfileHeader):
3964         * inspector/InspectorController.h:
3965         * inspector/InspectorFrontend.cpp:
3966         (WebCore::InspectorFrontend::addProfileHeader):
3967         (WebCore::InspectorFrontend::didGetProfileHeaders):
3968         (WebCore::InspectorFrontend::didGetProfile):
3969         * inspector/InspectorFrontend.h:
3970         * inspector/JavaScriptProfileNode.cpp:
3971         (WebCore::ProfileNodeClass):
3972         * inspector/front-end/ProfileView.js:
3973         (WebInspector.ProfileView.profileCallback):
3974         (WebInspector.ProfileView):
3975         (WebInspector.ProfileView.prototype._mouseDownInDataGrid):
3976         (WebInspector.ProfileView.prototype._assignParentsInProfile):
3977         * inspector/front-end/ProfilesPanel.js:
3978         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
3979         * inspector/front-end/inspector.js:
3980         (WebInspector.addProfileHeader):
3981
3982 2009-10-13  Yury Semikhatsky  <yurys@chromium.org>
3983
3984         Reviewed by Pavel Feldman.
3985
3986         Don't collect call frame properties until they're needed for completion.
3987
3988         https://bugs.webkit.org/show_bug.cgi?id=30334
3989
3990         * inspector/front-end/ConsoleView.js:
3991         (WebInspector.ConsoleView.prototype.completions):
3992         * inspector/front-end/InjectedScript.js:
3993         (InjectedScript.getCompletions): if call frame id is specified and the expression is empty collect frame properties.
3994         (InjectedScript.CallFrameProxy.prototype._wrapScopeChain): don't send call frame properties until they're needed.
3995         * inspector/front-end/ScriptsPanel.js:
3996
3997 2009-10-13  Yongjun Zhang  <yongjun.zhang@nokia.com>
3998
3999         Reviewed by Ariya Hidayat.
4000
4001         https://bugs.webkit.org/show_bug.cgi?id=29106
4002         [Qt] make CachedResourceHandle.h compile in winscw Symbian compiler.
4003
4004         Don't inline constructor CachedResourceHandle<T>(R*) to stop winscw
4005         compiler aggressively resolve inheritance of class R.  
4006         
4007         The winscw compiler bug is reported at:
4008         https://xdabug001.ext.nokia.com/bugzilla/show_bug.cgi?id=9812.
4009         
4010         The change should be reverted when the above bug is fixed in winscw compiler.
4011
4012         * loader/CachedResourceHandle.h:
4013         (WebCore::::CachedResourceHandle):
4014
4015 2009-10-13  Dimitri Glazkov  <dglazkov@chromium.org>
4016
4017         No review, rolling out r49554, because it broke Win and Chromium builds.
4018         http://trac.webkit.org/changeset/49554
4019
4020         * css/CSSPrimitiveValue.cpp:
4021         (WebCore::CSSPrimitiveValue::cssText):
4022
4023 2009-10-13  Evan Martin  <evan@chromium.org>
4024
4025         Reviewed by Adam Barth.
4026
4027         Stringify CSS units manually (without printf) to make the formatting
4028         locale-insensitive and obey CSS spec with respect to large values.
4029         
4030         https://bugs.webkit.org/show_bug.cgi?id=18994
4031
4032         * css/CSSPrimitiveValue.cpp:
4033         (WebCore::appendCSSDouble):
4034         (WebCore::formatWithUnits):
4035         (WebCore::CSSPrimitiveValue::cssText):
4036
4037 2009-10-13  Evan Martin  <evan@chromium.org>
4038
4039         Reviewed by David Levin.
4040
4041         Make grippy lines vertical on horizontal scrollbars in Linux Chrome.
4042         While we're rebaselining scrollbars, fix an off by one in the vertical
4043         scrollbar rendering too.
4044
4045         https://bugs.webkit.org/show_bug.cgi?id=30319
4046
4047         Tests: this is covered by every pixel test involving scrollbars.
4048
4049         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
4050         (WebCore::ScrollbarThemeChromiumLinux::paintThumb):
4051
4052 2009-10-13  Sam Weinig  <sam@webkit.org>
4053
4054         Reviewed by David Hyatt.
4055
4056         Fix issue where clientX and clientY on MouseEvents were wrong when
4057         the page was zoomed and scrolled.
4058
4059         Test: fast/events/clientXY-in-zoom-and-scroll.html
4060
4061         * dom/MouseRelatedEvent.cpp:
4062         (WebCore::contentsX): Take page zoom into account.
4063         (WebCore::contentsY): Ditto.
4064
4065 2009-10-13  Dave Hyatt  <hyatt@apple.com>
4066
4067         Reviewed by Adam Roben.
4068
4069         Change the order of arguments on some of the user stylesheet/script functions.  Split the removal functions
4070         out into separate ones for scripts and stylesheets.
4071
4072         * WebCore.base.exp:
4073         * page/PageGroup.cpp:
4074         (WebCore::PageGroup::addUserScriptToWorld):
4075         (WebCore::PageGroup::addUserStyleSheetToWorld):
4076         (WebCore::PageGroup::removeUserScriptFromWorld):
4077         (WebCore::PageGroup::removeUserStyleSheetFromWorld):
4078         (WebCore::PageGroup::removeUserScriptsFromWorld):
4079         (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
4080         * page/PageGroup.h:
4081         (WebCore::PageGroup::userScripts):
4082         (WebCore::PageGroup::userStyleSheets):
4083
4084 2009-10-13  Evan Martin  <evan@chromium.org>
4085
4086         Reviewed by Dmitry Titov.
4087
4088         Chrome's "Skia" theme paints select controls backwards in RTL.
4089
4090         https://bugs.webkit.org/show_bug.cgi?id=30320
4091
4092         Test: fast/text/international/bidi-menulist.html
4093         (The test is about something else, but it includes RTL selects.)
4094
4095         * rendering/RenderThemeChromiumSkia.cpp:
4096         (WebCore::RenderThemeChromiumSkia::paintMenuList): flip the arrow position in RTL case.
4097
4098 2009-10-13  Dmitry Titov  <dimich@chromium.org>
4099
4100         Reviewed by Alexey Proskuryakov.
4101
4102         https://bugs.webkit.org/show_bug.cgi?id=30318
4103         ScriptExecutionContext is not anymore needed to create an EventListener - remove old code.
4104         It's a followup to r48884. It removed the need to pass the ScritpExecutionContext
4105         into EventListener constructor but did not remove the code pulling ScriptExecutionContext.
4106
4107         Tests:
4108         Test adds event listener to a DocumentType Node which is created without a document
4109         and then dispatches the event after attaching a node to the tree. Event
4110         should fire when node is attached to the tree.
4111
4112         * fast/events/add-event-without-document-expected.txt: Added.
4113         * fast/events/add-event-without-document.html: Added.
4114
4115         All changes in files below are the same - remove the code that calls
4116         EventTarget::scriptExecutionContext and checks it for NULL.
4117
4118         * bindings/js/JSAbstractWorkerCustom.cpp:
4119         (WebCore::JSAbstractWorker::addEventListener):
4120         (WebCore::JSAbstractWorker::removeEventListener):
4121         * bindings/js/JSDOMApplicationCacheCustom.cpp:
4122         (WebCore::JSDOMApplicationCache::addEventListener):
4123         (WebCore::JSDOMApplicationCache::removeEventListener):
4124         * bindings/js/JSDesktopNotificationsCustom.cpp:
4125         (WebCore::JSNotification::addEventListener):
4126         (WebCore::):
4127         * bindings/js/JSEventSourceCustom.cpp:
4128         (WebCore::JSEventSource::addEventListener):
4129         (WebCore::JSEventSource::removeEventListener):
4130         * bindings/js/JSMessagePortCustom.cpp:
4131         (WebCore::JSMessagePort::addEventListener):
4132         (WebCore::JSMessagePort::removeEventListener):
4133         * bindings/js/JSNodeCustom.cpp:
4134         (WebCore::JSNode::addEventListener):
4135         (WebCore::JSNode::removeEventListener):
4136         * bindings/js/JSSVGElementInstanceCustom.cpp:
4137         (WebCore::JSSVGElementInstance::addEventListener):
4138         (WebCore::JSSVGElementInstance::removeEventListener):
4139         * bindings/js/JSXMLHttpRequestCustom.cpp:
4140         (WebCore::JSXMLHttpRequest::addEventListener):
4141         (WebCore::JSXMLHttpRequest::removeEventListener):
4142         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
4143         (WebCore::JSXMLHttpRequestUpload::addEventListener):
4144         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
4145         * bindings/js/JSWebSocketCustom.cpp:
4146         (WebCore::JSWebSocket::addEventListener):
4147         (WebCore::JSWebSocket::removeEventListener):
4148
4149 2009-10-13  Drew Wilson  <atwilson@atwilson-macpro.local>
4150
4151         Reviewed by David Levin.
4152
4153         Enable SHARED_WORKERS for Chromium
4154         https://bugs.webkit.org/show_bug.cgi?id=30289
4155
4156         Cleaned up bitrot in SharedWorker V8 bindings.
4157
4158         * WebCore.gypi:
4159         Removed default implementation of SharedWorkerRepository so Chromium can provide its own.
4160         * bindings/v8/DerivedSourcesAllInOne.cpp:
4161         Added V8SharedWorkerContext.cpp.
4162         * bindings/v8/V8DOMWrapper.cpp:
4163         (WebCore::V8DOMWrapper::getTemplate):
4164         Added case statements for SHAREDWORKER and SHAREDWORKERCONTEXT.
4165         * bindings/v8/V8Index.cpp:
4166         Now includes V8SharedWorkerContext.h to allow supporting SharedWorkers.
4167         * bindings/v8/V8Index.h:
4168         Added definition for SHAREDWORKERCONTEXT wrapper.
4169         * bindings/v8/WorkerContextExecutionProxy.cpp:
4170         Added includes for SharedWorker.h and SharedWorkerContext.h.
4171         * bindings/v8/custom/V8CustomBinding.h:
4172         Reorganized Worker field indexes to be clearer, and fixed mismatch in worker field index.
4173         Also added field indexes for SharedWorkers.
4174         * bindings/v8/custom/V8DOMWindowCustom.cpp:
4175         (WebCore::ACCESSOR_RUNTIME_ENABLER):
4176         Added runtime enabler for the SharedWorker constructor.
4177         * bindings/v8/custom/V8SharedWorkerCustom.cpp:
4178         (WebCore::CALLBACK_FUNC_DECL):
4179         Cleaned up bitrot (various APIs have changed since this file was written).
4180         * page/DOMWindow.idl:
4181         Added EnabledAtRuntime flag to window.SharedWorker.
4182
4183 2009-10-13  Alexey Proskuryakov  <ap@apple.com>
4184
4185         Reviewed by Brady Eidson.
4186
4187         https://bugs.webkit.org/show_bug.cgi?id=30345
4188         HTTP tests for credential handling fail on Tiger
4189
4190         We cannot prevent NSURLConnection from doing its credentil handling on Tiger anyway; so
4191         let it do its work without intervention. Once again, we pass explicitly passed credentials
4192         in URL, fixing regressions from Safari 3.
4193
4194         * platform/network/mac/ResourceHandleMac.mm:
4195         (WebCore::ResourceHandle::start):
4196         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
4197         (WebCore::ResourceHandle::receivedCredential):
4198
4199 2009-10-13  Roland Steiner  <rolandsteiner@google.com>
4200
4201         Reviewed by Adam Barth.
4202
4203         Bug 28964 -  [Chromium] ChromiumDataObject should have getter/setter interface
4204
4205         Reworked and added to the getter/setter interface in ChromiumDataObject:
4206         - added contains...() methods to just query the state
4207         - added containsValid...URL() methods for URL data members
4208         - removed takeFileNames() as this was too type-dependent
4209         - changed return type of fileNames() to Vector<String>
4210         - added interface methods to allow appending to and iteration over file names
4211
4212         No new tests (no functional behavior changed).
4213
4214         * platform/chromium/ChromiumDataObject.h:
4215         (WebCore::ChromiumDataObject::containsMainURL):
4216         (WebCore::ChromiumDataObject::containsValidMainURL):
4217         (WebCore::ChromiumDataObject::containsMainURLTitle):
4218         (WebCore::ChromiumDataObject::containsTextPlain):
4219         (WebCore::ChromiumDataObject::containsTextHTML):
4220         (WebCore::ChromiumDataObject::containsHTMLBaseURL):
4221         (WebCore::ChromiumDataObject::containsValidHTMLBaseURL):
4222         (WebCore::ChromiumDataObject::containsContent):
4223         (WebCore::ChromiumDataObject::containsContentFileExtension):
4224         (WebCore::ChromiumDataObject::containsContentFileName):
4225         (WebCore::ChromiumDataObject::setContentFileName):
4226         (WebCore::ChromiumDataObject::containsFileNames):
4227         (WebCore::ChromiumDataObject::fileNames):
4228         (WebCore::ChromiumDataObject::clearFileNames):
4229         (WebCore::ChromiumDataObject::countFileNames):
4230         (WebCore::ChromiumDataObject::fileNameAt):
4231         (WebCore::ChromiumDataObject::setFileNames):
4232         (WebCore::ChromiumDataObject::appendToFileNames):
4233         (WebCore::ChromiumDataObject::popFileName):
4234
4235 2009-10-13  Simon Fraser  <simon.fraser@apple.com>
4236
4237         Temporary debugging changes to figure out why the webgl tests are crashing on the build bot.
4238
4239         * platform/graphics/mac/GraphicsContext3DMac.cpp:
4240         (WebCore::GraphicsContext3D::GraphicsContext3D):
4241
4242 2009-10-13  Simon Fraser  <simon.fraser@apple.com>
4243
4244         Reviewed by Dan Bernstein.
4245
4246         Visibility:visible inside a compositing layer doesn't make the element visible
4247         https://bugs.webkit.org/show_bug.cgi?id=30339
4248         
4249         When deciding if a layer had any renderable content, RenderLayerBacking::paintIntoLayer()
4250         only consulted hasVisibleContent(), which does not take into a account child layers which
4251         may be visible. We also have to consult hasVisibleDescendant() as well.
4252
4253         Test: compositing/compositing-visible-descendant.html
4254
4255         * rendering/RenderLayer.h:
4256         (WebCore::RenderLayer::hasVisibleDescendant):
4257         * rendering/RenderLayerBacking.cpp:
4258         (WebCore::RenderLayerBacking::paintIntoLayer):
4259
4260 2009-10-13  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
4261
4262         Reviewed by Simon Hausmann.
4263