Un-roll out the roll out that was committed in r51376 because it didn't help the...
[WebKit-https.git] / WebCore / ChangeLog
1 2009-11-24  Dmitry Titov  <dimich@chromium.org>
2
3         Reviewed by David Levin.
4
5         Initial implementation of WebKitSharedScript and SharedScriptContext
6         https://bugs.webkit.org/show_bug.cgi?id=31569
7
8         No new tests since there are no bindings yet (soon to come).
9
10         * DerivedSources.make: Add WebKitSharedScript and SharedScriptContext to a list of idl files.
11         * WebCore.xcodeproj/project.pbxproj:
12         * dom/Document.cpp:
13         (WebCore::Document::detach): Notify WebKitSharedScriptRepository that document is detaching.
14         * dom/EventTarget.cpp: Add new casting methods, since the new types are EventTargets.
15         (WebCore::EventTarget::toWebKitSharedScript):
16         (WebCore::EventTarget::toSharedScriptContext):
17         * dom/EventTarget.h: Ditto
18         * dom/ScriptExecutionContext.h:
19         (WebCore::ScriptExecutionContext::isSharedScriptContext): New virtual method, since there is a new type of context.
20
21         * SharedScript/SharedScriptContext.cpp: Added. Similar to WorkerContext, but w/o threading.
22         (WebCore::SharedScriptContext::SharedScriptContext):
23         (WebCore::SharedScriptContext::~SharedScriptContext):
24         (WebCore::SharedScriptContext::clearScript):
25         (WebCore::SharedScriptContext::virtualURL):
26         (WebCore::SharedScriptContext::virtualCompleteURL):
27         (WebCore::SharedScriptContext::reportException):
28         (WebCore::SharedScriptContext::addMessage):
29         (WebCore::SharedScriptContext::resourceRetrievedByXMLHttpRequest):
30         (WebCore::SharedScriptContext::scriptImported):
31         (WebCore::SharedScriptContext::matches):
32         (WebCore::SharedScriptContext::addToDocumentsList):
33         (WebCore::SharedScriptContext::destructionTimerFired):
34         (WebCore::SharedScriptContext::removeFromDocumentList):
35         (WebCore::SharedScriptContext::load):
36         (WebCore::SharedScriptContext::postTask):
37         (WebCore::SharedScriptContext::eventTargetData):
38         (WebCore::SharedScriptContext::ensureEventTargetData):
39         (WebCore::SharedScriptContext::scriptExecutionContext):
40         * SharedScript/SharedScriptContext.h: Added.
41         (WebCore::SharedScriptContext::create):
42         (WebCore::SharedScriptContext::isSharedScriptContext):
43         (WebCore::SharedScriptContext::userAgent):
44         (WebCore::SharedScriptContext::toSharedScriptContext):
45         (WebCore::SharedScriptContext::self):
46         (WebCore::SharedScriptContext::script):
47         (WebCore::SharedScriptContext::loaded):
48         (WebCore::SharedScriptContext::name):
49         (WebCore::SharedScriptContext::refEventTarget):
50         (WebCore::SharedScriptContext::derefEventTarget):
51         (WebCore::SharedScriptContext::refScriptExecutionContext):
52         (WebCore::SharedScriptContext::derefScriptExecutionContext):
53         * SharedScript/SharedScriptContext.idl: Added.
54
55         * SharedScript/SharedScriptController.h: 
56         Added. Empty implementation of a ScriptController, will come later as part of bindings. Needed to compile.
57
58         * SharedScript/WebKitSharedScript.cpp: Added. EventTarget-based DOM object.
59         (WebCore::WebKitSharedScript::WebKitSharedScript):
60         (WebCore::WebKitSharedScript::~WebKitSharedScript):
61         (WebCore::WebKitSharedScript::setContext):
62         (WebCore::LoadEventTask::create): Fires asynchronous 'load' event when underlying SharedScriptContext is initialized.
63         (WebCore::LoadEventTask::performTask):
64         (WebCore::LoadEventTask::LoadEventTask):
65         (WebCore::WebKitSharedScript::scheduleLoadEvent):
66         * SharedScript/WebKitSharedScript.h: Added.
67         (WebCore::WebKitSharedScript::create):
68         (WebCore::WebKitSharedScript::scriptExecutionContext):
69         (WebCore::WebKitSharedScript::toWebKitSharedScript):
70         (WebCore::WebKitSharedScript::context):
71         (WebCore::WebKitSharedScript::refEventTarget):
72         (WebCore::WebKitSharedScript::derefEventTarget):
73         (WebCore::WebKitSharedScript::eventTargetData):
74         (WebCore::WebKitSharedScript::ensureEventTargetData):
75         * SharedScript/WebKitSharedScript.idl: Added.
76
77         * SharedScript/WebKitSharedScriptRepository.cpp: Added. Implements a list of running SharedScriptContexts.
78         (WebCore::ScriptLoader::ScriptLoader): The helper class to load an initial script of SharedScriptContext.
79         (WebCore::ScriptLoader::load):
80         (WebCore::ScriptLoader::notifyFinished):
81         (WebCore::WebKitSharedScriptRepository::instance): Repository has a static global instance.
82         (WebCore::WebKitSharedScriptRepository::connect):
83         (WebCore::WebKitSharedScriptRepository::documentDetached): Called from Document::detach().
84         (WebCore::WebKitSharedScriptRepository::removeSharedScriptContext): Called from ~SharedScriptContext().
85         (WebCore::WebKitSharedScriptRepository::connectToSharedScript):
86         (WebCore::WebKitSharedScriptRepository::getSharedScriptContext):
87         * SharedScript/WebKitSharedScriptRepository.h: Added.
88         (WebCore::WebKitSharedScriptRepository::WebKitSharedScriptRepository):
89
90 2009-11-24  Dmitry Titov  <dimich@chromium.org>
91
92         Reviewed by Eric Seidel.
93
94         Add ENABLE_SHARED_SCRIPT feature define and flag for build-webkit
95         https://bugs.webkit.org/show_bug.cgi?id=31444
96
97         * Configurations/FeatureDefines.xcconfig:
98         * GNUmakefile.am:
99         * WebCore.pro:
100
101 2009-11-24  Chris Marrin  <cmarrin@apple.com>
102
103         Reviewed by Simon Fraser.
104
105         Implement accelerated compositing
106         https://bugs.webkit.org/show_bug.cgi?id=27314
107         
108         This part of the checkin adds the Windows specific GraphicsLayer support files.
109         It provides the interface between GraphicsLayer and CACF. It also deals with
110         the compositing loop, and provides the plumbing to pass the root layer up to
111         WebView.
112
113         * WebCore.vcproj/WebCore.vcproj:
114         * WebCore.vcproj/WebCoreCommon.vsprops:
115         * page/FrameView.cpp:
116         (WebCore::FrameView::syncCompositingStateRecursive):
117         * platform/graphics/GraphicsLayer.cpp:
118         (WebCore::GraphicsLayer::GraphicsLayer):
119         * platform/graphics/GraphicsLayer.h:
120         * platform/graphics/win/GraphicsLayerCACF.cpp: Added.
121         * platform/graphics/win/GraphicsLayerCACF.h: Added.
122         * platform/graphics/win/WKCACFContextFlusher.cpp: Added.
123         * platform/graphics/win/WKCACFContextFlusher.h: Added.
124         * platform/graphics/win/WKCACFContextFlusherWin.cpp: Added.
125         * platform/graphics/win/WKCACFLayer.cpp: Added.
126         * platform/graphics/win/WKCACFLayer.h: Added.
127         * platform/graphics/win/WKCACFLayerWindow.cpp: Added.
128         * platform/graphics/win/WKCACFLayerWindow.h: Added.
129
130 2009-11-24  Chris Marrin  <cmarrin@apple.com>
131
132         Reviewed by Eric Seidel.
133
134         Do error checking of parameter to createShader
135         https://bugs.webkit.org/show_bug.cgi?id=31808
136
137         Test: fast/canvas/webgl/invalidPassedParams.html
138
139         * html/canvas/WebGLRenderingContext.cpp:
140         (WebCore::WebGLRenderingContext::createShader):
141         * html/canvas/WebGLRenderingContext.h:
142         * html/canvas/WebGLRenderingContext.idl:
143
144 2009-11-24  Kent Tamura  <tkent@chromium.org>
145
146         Reviewed by Eric Seidel.
147
148         [Chromium] Ignore line-height CSS property specified to a search field on
149         Windows and Linux.
150         https://bugs.webkit.org/show_bug.cgi?id=31820
151
152         LayoutTests/fast/forms/control-restrict-line-height.html checks that the
153         following controls should ignore line-height CSS property.
154          - <select>
155          - <input type=button>
156          - <input type=search>
157         This change addresses the <input type=search> issue with Chromium/Windows
158         and Chromium/Linux.
159
160         * rendering/RenderThemeChromiumSkia.cpp:
161         (WebCore::RenderThemeChromiumSkia::adjustSearchFieldStyle): Implement this to ignore line-height.
162         * rendering/RenderThemeChromiumSkia.h: Declare adjustSearchFieldStyle().
163
164 2009-11-24  Simon Fraser  <simon.fraser@apple.com>
165
166         No review.
167
168         Stylistic fix: indent the member var initialisation.
169
170         * platform/graphics/mac/GraphicsLayerCA.mm:
171         (WebCore::GraphicsLayerCA::GraphicsLayerCA):
172
173 2009-11-24  Gavin Barraclough  <barraclough@apple.com>
174
175         Reviewed by Geoff Garen.
176
177         Bug 31848 - Remove uses of mainThreadCurrentWorld, and of currentWorld using a globalData.
178
179         These methods get the world from the global data rather than from an execstate.
180         If the current world is always read from an exec state then it can be read
181         from the global object, and world entry can become automagical, rather than
182         being explicitly set by an EnterDOMWrapperWorld.
183
184         * bindings/js/JSCSSRuleCustom.cpp:
185         (WebCore::toJS):
186         * bindings/js/JSCSSValueCustom.cpp:
187         (WebCore::toJS):
188         * bindings/js/JSDOMBinding.cpp:
189         (WebCore::currentWorld):
190         (WebCore::DOMObjectWrapperMapFor):
191         (WebCore::hasCachedDOMObjectWrapper):
192         (WebCore::getCachedDOMObjectWrapper):
193         (WebCore::cacheDOMObjectWrapper):
194         (WebCore::hasCachedDOMNodeWrapper):
195         (WebCore::getCachedDOMNodeWrapper):
196         (WebCore::cacheDOMNodeWrapper):
197         * bindings/js/JSDOMBinding.h:
198         (WebCore::createDOMObjectWrapper):
199         (WebCore::getDOMObjectWrapper):
200         (WebCore::createDOMNodeWrapper):
201         (WebCore::getDOMNodeWrapper):
202         * bindings/js/JSDOMWindowCustom.cpp:
203         (WebCore::JSDOMWindow::history):
204         (WebCore::JSDOMWindow::location):
205         * bindings/js/JSDocumentCustom.cpp:
206         (WebCore::JSDocument::location):
207         (WebCore::toJS):
208         * bindings/js/JSElementCustom.cpp:
209         (WebCore::toJSNewlyCreated):
210         * bindings/js/JSEventCustom.cpp:
211         (WebCore::toJS):
212         * bindings/js/JSHTMLCollectionCustom.cpp:
213         (WebCore::toJS):
214         * bindings/js/JSImageDataCustom.cpp:
215         (WebCore::toJS):
216         * bindings/js/JSNodeCustom.cpp:
217         (WebCore::JSNode::markChildren):
218         (WebCore::createWrapper):
219         (WebCore::toJS):
220         * bindings/js/JSSVGPathSegCustom.cpp:
221         (WebCore::toJS):
222         * bindings/js/JSStyleSheetCustom.cpp:
223         (WebCore::toJS):
224         * xml/XMLHttpRequest.cpp:
225         (WebCore::XMLHttpRequest::dropProtection):
226
227 2009-11-24  Alexey Proskuryakov  <ap@apple.com>
228
229         Windows build fix.
230
231         * platform/network/cf/SocketStreamHandleCFNet.cpp: Also, don't include the wrong one!
232
233 2009-11-24  Alexey Proskuryakov  <ap@apple.com>
234
235         Windows build fix.
236
237         * platform/network/cf/SocketStreamHandleCFNet.cpp: Include the proper WKSI header.
238
239 2009-11-24  Simon Fraser  <simon.fraser@apple.com>
240
241         Reviewed by Oliver Hunt.
242
243         SVGUseElement::toClipPath can crash
244         <rdar://problem/7385270>
245
246         Null-test m_shadowTreeRootElement again, because the call to buildPendingResource() may not
247         actually initialize it.
248
249         * svg/SVGUseElement.cpp:
250         (WebCore::SVGUseElement::toClipPath):
251
252 2009-11-24  Simon Fraser  <simon.fraser@apple.com>
253
254         Windows build fix.
255
256         * page/win/FrameCGWin.cpp:
257         (WebCore::imageFromRect):
258         (WebCore::imageFromSelection):
259
260 2009-11-24  Eric Carlson  <eric.carlson@apple.com>
261
262         Not reviewed. Revert r51351 until a new WebKitSupportLibrary is available.
263
264         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
265         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
266         * platform/graphics/win/QTMovieWin.cpp:
267         * platform/graphics/win/QTMovieWin.h:
268         * rendering/RenderMediaControls.cpp:
269         * rendering/RenderThemeWin.cpp:
270         * rendering/RenderThemeWin.h:
271
272 2009-11-24  Alexey Proskuryakov  <ap@apple.com>
273
274         Reviewed by Brady Eidson.
275
276         https://bugs.webkit.org/show_bug.cgi?id=31844
277         SocketStreamHandleCFNet should support CONNECT proxy credentials
278
279         * WebCore.vcproj/WebCore.vcproj:
280         * WebCore.xcodeproj/project.pbxproj:
281         * platform/network/CredentialStorage.h:
282         * platform/network/mac/CredentialStorageMac.mm: Added.
283         (WebCore::CredentialStorage::getFromPersistentStorage):
284         * platform/network/cf/CredentialStorageCFNet.cpp: Added.
285         (WebCore::CredentialStorage::getFromPersistentStorage):
286         Add support for fetching credentials from persistent storage (CFNet version is currently
287         a stub).
288
289         * bindings/js/JSWebSocketCustom.cpp: Removed an unneeded include.
290
291         * platform/network/cf/SocketStreamHandle.h:
292         * platform/network/cf/SocketStreamHandleCFNet.cpp:
293         (WebCore::SocketStreamHandle::SocketStreamHandle):
294         (WebCore::SocketStreamHandle::createStreams):
295         (WebCore::getStoredCONNECTProxyCredentials):
296         (WebCore::authenticationSchemeFromAuthenticationMethod):
297         (WebCore::SocketStreamHandle::addCONNECTCredentials):
298         (WebCore::SocketStreamHandle::readStreamCallback):
299         Check if connection attempt was resulted in 407, and try stored credentials if it did.
300
301         * platform/mac/WebCoreSystemInterface.h:
302         * platform/mac/WebCoreSystemInterface.mm:
303         * WebCore.base.exp:
304         Updated WKSI.
305
306 2009-11-24  Simon Fraser  <simon.fraser@apple.com>
307
308         Reviewed by Dan Bernstein.
309
310         Find highlight is drawn incorrectly on pages with compositing layers
311         <rdar://problem/7413925>
312         
313         Part 2: Add a new bit to the PaintBehavior flags, PaintBehaviorFlattenCompositingLayers,
314         and pass that down when painting into an image.
315         
316         When set, it forces painting of compositing layers to go down a software paint path
317         when all layers are painted, irrespective of compositing status, and where
318         3d transforms are flattened to 2d. When doing this, we also need to use temporary
319         clip rects for layers which are normally composited.
320         
321         * page/FrameView.h:
322         (WebCore::FrameView::paintBehavior):
323         * page/mac/FrameMac.mm:
324         (WebCore::Frame::imageFromRect):
325         * rendering/RenderLayer.cpp:
326         (WebCore::RenderLayer::renderableTransform):
327         (WebCore::expandClipRectForDescendantsAndReflection):
328         (WebCore::transparencyClipBox):
329         (WebCore::RenderLayer::beginTransparencyLayers):
330         (WebCore::RenderLayer::paintLayer):
331         * rendering/RenderLayer.h:
332         (WebCore::RenderLayer::paintsWithTransparency):
333         (WebCore::RenderLayer::paintsWithTransform):
334         * rendering/RenderLayerCompositor.cpp:
335         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
336         * rendering/RenderObject.h:
337
338 2009-11-24  Simon Fraser  <simon.fraser@apple.com>
339
340         Reviewed by Dan Bernstein.
341
342         Find highlight is drawn incorrectly on pages with compositing layers
343         <rdar://problem/7413925>
344         
345         Part 1: Rename PaintRestriction to PaintBehavior, and make it a bitmask, in
346         preparation for adding a new flag related to painting into an image.
347         
348         PaintBehaviorSelectionOnly and PaintBehaviorForceBlackText are now separate flags.
349
350         * page/FrameView.cpp:
351         (WebCore::FrameView::reset):
352         (WebCore::FrameView::paintContents):
353         (WebCore::FrameView::setPaintBehavior):
354         * page/FrameView.h:
355         * page/mac/FrameMac.mm:
356         (WebCore::Frame::selectionImage):
357         * rendering/RenderLayer.cpp:
358         (WebCore::RenderLayer::paint):
359         (WebCore::RenderLayer::paintLayer):
360         * rendering/RenderLayer.h:
361         * rendering/RenderLayerBacking.cpp:
362         (WebCore::RenderLayerBacking::paintIntoLayer):
363         (WebCore::RenderLayerBacking::paintContents):
364         * rendering/RenderLayerBacking.h:
365         * rendering/RenderObject.h:
366         * rendering/RenderReplica.cpp:
367         (WebCore::RenderReplica::paint):
368
369 2009-11-24  Eric Carlson  <eric.carlson@apple.com>
370
371         Reviewed by Simon Fraser.
372
373         <rdar://problem/7409331> Windows: Support closed caption in <video> element
374
375         Enable closed captions in QuickTime/Windows media engine.
376
377         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
378         (WebCore::MediaPlayerPrivate::hasClosedCaptions):
379         (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible):
380         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
381         * platform/graphics/win/QTMovieWin.cpp:
382         (QTMovieWin::hasClosedCaptions):
383         (QTMovieWin::setClosedCaptionsVisible):
384         * platform/graphics/win/QTMovieWin.h:
385         * rendering/RenderMediaControls.cpp:
386         (WebCore::RenderMediaControls::paintMediaControlsPart):
387         * rendering/RenderThemeWin.cpp:
388         (WebCore::RenderThemeWin::paintMediaToggleClosedCaptionsButton):
389         * rendering/RenderThemeWin.h:
390
391 2009-11-24  Darin Fisher  <darin@chromium.org>
392
393         Reviewed by Adam Barth.
394
395         [Chromium] Renderer hang when using www.expedia.com
396         https://bugs.webkit.org/show_bug.cgi?id=31822
397
398         Test: http/tests/cache/subresource-failover-to-network.html
399
400         * loader/FrameLoader.cpp:
401         (WebCore::FrameLoader::loadResourceSynchronously): Use the originalRequest
402         when inheriting cache policy.  This matches SubresourceLoader::create.
403
404 2009-11-23  Kenneth Russell  <kbr@google.com>
405
406         Reviewed by Oliver Hunt.
407
408         Change get... calls to latest spec
409         https://bugs.webkit.org/show_bug.cgi?id=30091
410
411         Removed old versions of get calls on WebGLRenderingContext and
412         added new ones per spec returning "any". New code simplifies
413         GraphicsContext3D and fixes previously unimplemented routines.
414         Added custom JS and V8 bindings. Added exhaustive test case
415         exercising all new code paths. Updated preexisting test cases for
416         new APIs. Fixed preexisting bugs in WebKit's and Chrome's WebGL
417         implementations.
418
419         Ran WebGL layout tests in WebKit (clean) and Chrome (couple of
420         preexisting known failures) and manual WebGL tests in both
421         browsers.
422
423         Test: fast/canvas/webgl/gl-object-get-calls.html
424
425         * WebCore.gypi:
426         * WebCore.xcodeproj/project.pbxproj:
427         * bindings/js/JSWebGLRenderingContextCustom.cpp:
428         (WebCore::toJS):
429         (WebCore::):
430         (WebCore::getObjectParameter):
431         (WebCore::getProgramParameterHelper):
432         (WebCore::JSWebGLRenderingContext::getBufferParameter):
433         (WebCore::JSWebGLRenderingContext::getFramebufferAttachmentParameter):
434         (WebCore::JSWebGLRenderingContext::getParameter):
435         (WebCore::JSWebGLRenderingContext::getProgramParameter):
436         (WebCore::JSWebGLRenderingContext::getRenderbufferParameter):
437         (WebCore::JSWebGLRenderingContext::getShaderParameter):
438         (WebCore::JSWebGLRenderingContext::getTexParameter):
439         (WebCore::JSWebGLRenderingContext::getUniform):
440         (WebCore::JSWebGLRenderingContext::getVertexAttrib):
441         * bindings/v8/custom/V8CustomBinding.h:
442         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
443         (WebCore::toV8):
444         (WebCore::):
445         (WebCore::getObjectParameter):
446         (WebCore::getProgramParameter):
447         (WebCore::CALLBACK_FUNC_DECL):
448         * html/canvas/CanvasObject.cpp:
449         (WebCore::CanvasObject::CanvasObject):
450         (WebCore::CanvasObject::setObject):
451         (WebCore::CanvasObject::deleteObject):
452         * html/canvas/CanvasObject.h:
453         * html/canvas/WebGLBuffer.cpp:
454         (WebCore::WebGLBuffer::create):
455         (WebCore::WebGLBuffer::WebGLBuffer):
456         * html/canvas/WebGLBuffer.h:
457         * html/canvas/WebGLGetInfo.cpp: Added.
458         (WebCore::WebGLGetInfo::WebGLGetInfo):
459         (WebCore::WebGLGetInfo::~WebGLGetInfo):
460         (WebCore::WebGLGetInfo::getType):
461         (WebCore::WebGLGetInfo::getBool):
462         (WebCore::WebGLGetInfo::getFloat):
463         (WebCore::WebGLGetInfo::getLong):
464         (WebCore::WebGLGetInfo::getString):
465         (WebCore::WebGLGetInfo::getUnsignedLong):
466         (WebCore::WebGLGetInfo::getWebGLBuffer):
467         (WebCore::WebGLGetInfo::getWebGLFloatArray):
468         (WebCore::WebGLGetInfo::getWebGLFramebuffer):
469         (WebCore::WebGLGetInfo::getWebGLIntArray):
470         (WebCore::WebGLGetInfo::getWebGLProgram):
471         (WebCore::WebGLGetInfo::getWebGLRenderbuffer):
472         (WebCore::WebGLGetInfo::getWebGLTexture):
473         (WebCore::WebGLGetInfo::getWebGLUnsignedByteArray):
474         * html/canvas/WebGLGetInfo.h: Added.
475         (WebCore::WebGLGetInfo::):
476         * html/canvas/WebGLRenderbuffer.cpp:
477         (WebCore::WebGLRenderbuffer::create):
478         (WebCore::WebGLRenderbuffer::WebGLRenderbuffer):
479         * html/canvas/WebGLRenderbuffer.h:
480         * html/canvas/WebGLRenderingContext.cpp:
481         (WebCore::WebGLStateRestorer::WebGLStateRestorer):
482         (WebCore::WebGLStateRestorer::~WebGLStateRestorer):
483         (WebCore::WebGLRenderingContext::WebGLRenderingContext):
484         (WebCore::WebGLRenderingContext::activeTexture):
485         (WebCore::WebGLRenderingContext::bindBuffer):
486         (WebCore::WebGLRenderingContext::bindFramebuffer):
487         (WebCore::WebGLRenderingContext::bindRenderbuffer):
488         (WebCore::WebGLRenderingContext::bindTexture):
489         (WebCore::WebGLRenderingContext::getBufferParameter):
490         (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
491         (WebCore::WebGLRenderingContext::getParameter):
492         (WebCore::WebGLRenderingContext::getProgramParameter):
493         (WebCore::WebGLRenderingContext::getProgramInfoLog):
494         (WebCore::WebGLRenderingContext::getRenderbufferParameter):
495         (WebCore::WebGLRenderingContext::getShaderParameter):
496         (WebCore::WebGLRenderingContext::getShaderInfoLog):
497         (WebCore::WebGLRenderingContext::getShaderSource):
498         (WebCore::WebGLRenderingContext::getString):
499         (WebCore::WebGLRenderingContext::getTexParameter):
500         (WebCore::WebGLRenderingContext::getUniform):
501         (WebCore::WebGLRenderingContext::getVertexAttrib):
502         (WebCore::WebGLRenderingContext::useProgram):
503         (WebCore::WebGLRenderingContext::getBooleanParameter):
504         (WebCore::WebGLRenderingContext::getFloatParameter):
505         (WebCore::WebGLRenderingContext::getIntParameter):
506         (WebCore::WebGLRenderingContext::getLongParameter):
507         (WebCore::WebGLRenderingContext::getUnsignedLongParameter):
508         (WebCore::WebGLRenderingContext::getWebGLFloatArrayParameter):
509         (WebCore::WebGLRenderingContext::getWebGLIntArrayParameter):
510         (WebCore::WebGLRenderingContext::getWebGLUnsignedByteArrayParameter):
511         * html/canvas/WebGLRenderingContext.h:
512         * html/canvas/WebGLRenderingContext.idl:
513         * html/canvas/WebGLTexture.cpp:
514         (WebCore::WebGLTexture::create):
515         (WebCore::WebGLTexture::WebGLTexture):
516         * html/canvas/WebGLTexture.h:
517         * manual-tests/webgl/resources/utils3d.js:
518         (initWebGL):
519         (loadShader):
520         (Framerate.prototype.snapshot):
521         * platform/graphics/GraphicsContext3D.h:
522         * platform/graphics/mac/GraphicsContext3DMac.cpp:
523         (WebCore::GraphicsContext3D::bindRenderbuffer):
524         (WebCore::GraphicsContext3D::getBooleanv):
525         (WebCore::GraphicsContext3D::getBufferParameteriv):
526         (WebCore::GraphicsContext3D::getFloatv):
527         (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
528         (WebCore::GraphicsContext3D::getIntegerv):
529         (WebCore::GraphicsContext3D::getProgramiv):
530         (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
531         (WebCore::GraphicsContext3D::getShaderiv):
532         (WebCore::GraphicsContext3D::getTexParameterfv):
533         (WebCore::GraphicsContext3D::getTexParameteriv):
534         (WebCore::GraphicsContext3D::getUniformfv):
535         (WebCore::GraphicsContext3D::getUniformiv):
536         (WebCore::GraphicsContext3D::getVertexAttribfv):
537         (WebCore::GraphicsContext3D::getVertexAttribiv):
538
539 2009-11-24  Steve Falkenburg  <sfalken@apple.com>
540
541         Windows build fix.
542
543         * WebCore.vcproj/QTMovieWin.vcproj: Add additional search path for QuickTime SDK.
544
545 2009-11-24  Philippe Normand  <pnormand@igalia.com>
546
547         Reviewed by Gustavo Noronha Silva.
548
549         [Gtk] GStreamer-CRITICAL's (and other warnings) on <video>
550         https://bugs.webkit.org/show_bug.cgi?id=26354
551
552         Implemented MediaPlayerPrivate::isAvailable by checking the
553         presence of the playbin2 GStreamer element.
554
555         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
556         (WebCore::MediaPlayerPrivate::isAvailable):
557         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
558
559 2009-11-24  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
560
561         Reviewed by Xan Lopez.
562
563         https://bugs.webkit.org/show_bug.cgi?id=25415
564         [GTK][ATK] Please implement support for get_text_at_offset
565
566         When building up the pango layout from text boxes, only append a
567         newline char after verifying there are no more boxes on this line.
568
569         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
570         (getPangoLayoutForAtk):
571
572 2009-11-24  Joseph Pecoraro  <joepeck@webkit.org>
573
574         Reviewed by Pavel Feldman.
575
576         Web Inspector: Keyboard Shortcut to Clear Console Messages
577         https://bugs.webkit.org/show_bug.cgi?id=31780
578
579         All Platforms:  Ctrl+L  = Clear Console Messages
580         Mac Only:       Cmd+K   = Clear Console Messages
581
582         * inspector/front-end/ConsoleView.js:
583         (WebInspector.ConsoleView): create shortcuts
584         (WebInspector.ConsoleView.prototype._promptKeyDown): handle shortcuts
585         * inspector/front-end/KeyboardShortcut.js:
586         (WebInspector.KeyboardShortcut.makeKey): convenience conversion of "a-z" character to keyCode
587         * inspector/front-end/ScriptsPanel.js:
588         (WebInspector.ScriptsPanel): style fixes for keyboard shortcuts
589
590 2009-11-24  Pavel Feldman  <pfeldman@chromium.org>
591
592         Not reviewed: touch inspector controller in order to
593         kick win bot inspector deploy. rs=aroben.
594
595         * inspector/InspectorController.cpp:
596
597 2009-11-23  Pavel Feldman  <pfeldman@chromium.org>
598
599         Reviewed by Timothy Hatcher.
600
601         Web Inspector: Implement expandable compartments on timeline panel.
602
603         https://bugs.webkit.org/show_bug.cgi?id=31796
604
605         * inspector/front-end/TimelineOverviewPane.js:
606         (WebInspector.TimelineOverviewPane.prototype._setWindowPosition):
607         * inspector/front-end/TimelinePanel.js:
608         (WebInspector.TimelinePanel):
609         (WebInspector.TimelinePanel.prototype.addRecordToTimeline):
610         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
611         (WebInspector.TimelinePanel.prototype._formatRecord):
612         (WebInspector.TimelinePanel.prototype._refreshRecords):
613         (WebInspector.TimelinePanel.prototype._addToRecordsWindow):
614         (WebInspector.TimelineRecordListRow):
615         (WebInspector.TimelineRecordListRow.prototype.update):
616         (WebInspector.TimelineRecordListRow.prototype.dispose):
617         (WebInspector.TimelineRecordGraphRow):
618         (WebInspector.TimelineRecordGraphRow.prototype.update):
619         (WebInspector.TimelineRecordGraphRow.prototype._onClick):
620         (WebInspector.TimelineRecordGraphRow.prototype.dispose):
621         * inspector/front-end/inspector.css:
622
623 2009-11-24  Mark Rowe  <mrowe@apple.com>
624
625         Fix production builds where the source tree may be read-only.
626
627         * WebCore.xcodeproj/project.pbxproj:
628
629 2009-11-23  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
630
631         Reviewed by Kenneth Rohde Christiansen.
632
633         Include "config.h" to meet Coding Style Guidelines
634         https://bugs.webkit.org/show_bug.cgi?id=31792
635
636         No new tests as there is no new functionality.
637
638         * platform/graphics/win/IntPointWin.cpp:
639         * platform/graphics/win/IntRectWin.cpp:
640         * platform/graphics/win/IntSizeWin.cpp:
641         * platform/network/chromium/ResourceRequest.cpp:
642         * platform/win/PlatformMouseEventWin.cpp:
643
644 2009-11-23  Jian Li  <jianli@chromium.org>
645
646         Reviewed by NOBODY (Chromium build fix).
647
648         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
649         (WebCore::CALLBACK_FUNC_DECL):
650         * platform/graphics/GraphicsContext3D.h:
651
652 2009-11-23  Aaron Golden  <agolden@apple.com>
653
654         Reviewed by Alexey Proskuryakov.
655
656         Prevent ResourceHandleMac's version of ResourceHandle::receivedCredential from stripping
657         identity and certificate information from a WebCore::Credential when receivedCredential
658         needs to modify the credential's persistence.
659
660         Adding a new constructor Credential(const Credential& original, CredentialPersistence)
661         that copies every field from original except for persistence.
662
663         * platform/network/Credential.cpp:
664         (WebCore::Credential::Credential):
665         * platform/network/Credential.h:
666         * platform/network/mac/ResourceHandleMac.mm:
667         (WebCore::ResourceHandle::receivedCredential):
668
669 2009-11-23  Gavin Barraclough  <barraclough@apple.com>
670
671         Reviewed by Geoff Garen.
672
673         Part 2/3 of <rdar://problem/7377477> REGRESSION: Many web pages fail to render after interesting script runs in isolated world
674
675         Some clients of the JavaScriptCore API expect to be able to make callbacks over the JSC API,
676         and for this to automagically cause execution to take place in the world associated with the
677         global object associated with the ExecState (JSContextRef) passed.  However this is not how
678         things work - the world must be explicitly set within WebCore.
679
680         Making this work just for API calls to evaluate & call will be a far from perfect solution,
681         since direct (non-API) use of JSC still relies on WebCore setting the current world correctly.
682         A better solution would be to make this all work automagically all throughout WebCore, but this
683         will require more refactoring.
684
685         Add references from the JSDOMWindowShell and the JSDOMGlobalObject to the world that owns them,
686         so that we can get to the world from the lexical global object of an ExecState.  In the long-term
687         we should switch over to using this approach for all cases we want to get a world from an exec state.
688
689         * bindings/js/JSDOMBinding.cpp:
690         (WebCore::WebCoreJSClientData::beginningExecution):
691         (WebCore::WebCoreJSClientData::completedExecution):
692         * bindings/js/JSDOMBinding.h:
693         * bindings/js/JSDOMGlobalObject.h:
694         (WebCore::JSDOMGlobalObject::world):
695         (WebCore::JSDOMGlobalObject::JSDOMGlobalObjectData::JSDOMGlobalObjectData):
696         * bindings/js/JSDOMWindowBase.cpp:
697         (WebCore::JSDOMWindowBase::JSDOMWindowBaseData::JSDOMWindowBaseData):
698         * bindings/js/JSDOMWindowBase.h:
699         * bindings/js/JSDOMWindowShell.cpp:
700         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
701         * bindings/js/JSDOMWindowShell.h:
702         (WebCore::JSDOMWindowShell::world):
703         * bindings/js/JSWorkerContextBase.cpp:
704         (WebCore::JSWorkerContextBase::JSWorkerContextBase):
705         * bindings/js/ScriptController.cpp:
706         (WebCore::ScriptController::initScript):
707
708 2009-11-23  Chris Marrin  <cmarrin@apple.com>
709
710         Reviewed by Oliver Hunt.
711
712         Add range checks to rendering calls in WebGL
713         https://bugs.webkit.org/show_bug.cgi?id=31239
714
715         I am now tracking the size of the data in each CanvasBuffer object
716         and keeping track of the buffer size of each active vertex attrib.
717         In drawArrays and drawElements I make sure no attempt is made to
718         access elements outside the valid buffer ranges. The test at:
719
720             http://cs.helsinki.fi/u/ilmarihe/c3d/functions/drawArraysOutOfBounds.html
721
722         no longer crashes.
723
724         I also added all the WebGL enumerations to GraphicsContext3D to use them in the validation checks
725
726         Tests: fast/canvas/webgl/drawArraysOutOfBounds.html
727                fast/canvas/webgl/drawElementssOutOfBounds.html
728
729         * bindings/js/JSWebGLArrayCustom.cpp:
730         (WebCore::toJS):
731         * bindings/js/JSWebGLRenderingContextCustom.cpp:
732         (WebCore::JSWebGLRenderingContext::bufferData):
733         (WebCore::JSWebGLRenderingContext::bufferSubData):
734         (WebCore::JSWebGLRenderingContext::texSubImage2D):
735         * html/canvas/WebGLArrayBuffer.cpp:
736         (WebCore::WebGLArrayBuffer::create):
737         (WebCore::WebGLArrayBuffer::data):
738         * html/canvas/WebGLArrayBuffer.h:
739         * html/canvas/WebGLBuffer.cpp:
740         (WebCore::WebGLBuffer::WebGLBuffer):
741         (WebCore::WebGLBuffer::associateBufferData):
742         (WebCore::WebGLBuffer::associateBufferSubData):
743         (WebCore::WebGLBuffer::byteLength):
744         * html/canvas/WebGLBuffer.h:
745         (WebCore::WebGLBuffer::elementArrayBuffer):
746         * html/canvas/WebGLRenderingContext.cpp:
747         (WebCore::WebGLRenderingContext::WebGLRenderingContext):
748         (WebCore::WebGLRenderingContext::sizeInBytes):
749         (WebCore::WebGLRenderingContext::bindBuffer):
750         (WebCore::WebGLRenderingContext::bufferData):
751         (WebCore::WebGLRenderingContext::bufferSubData):
752         (WebCore::WebGLRenderingContext::createShader):
753         (WebCore::WebGLRenderingContext::disableVertexAttribArray):
754         (WebCore::WebGLRenderingContext::validateIndexArray):
755         (WebCore::WebGLRenderingContext::validateRenderingState):
756         (WebCore::WebGLRenderingContext::drawArrays):
757         (WebCore::WebGLRenderingContext::drawElements):
758         (WebCore::WebGLRenderingContext::enableVertexAttribArray):
759         (WebCore::WebGLRenderingContext::isFramebuffer):
760         (WebCore::WebGLRenderingContext::isProgram):
761         (WebCore::WebGLRenderingContext::isRenderbuffer):
762         (WebCore::WebGLRenderingContext::isShader):
763         (WebCore::WebGLRenderingContext::isTexture):
764         (WebCore::WebGLRenderingContext::useProgram):
765         (WebCore::WebGLRenderingContext::validateProgram):
766         (WebCore::WebGLRenderingContext::vertexAttribPointer):
767         (WebCore::WebGLRenderingContext::detachAndRemoveAllObjects):
768         * html/canvas/WebGLRenderingContext.h:
769         (WebCore::WebGLRenderingContext::VertexAttribState::VertexAttribState):
770         * html/canvas/WebGLRenderingContext.idl:
771         * html/canvas/WebGLShader.cpp:
772         (WebCore::WebGLShader::create):
773         (WebCore::WebGLShader::WebGLShader):
774         * html/canvas/WebGLShader.h:
775         * platform/graphics/GraphicsContext3D.h:
776         (WebCore::GraphicsContext3D::):
777         * platform/graphics/mac/GraphicsContext3DMac.cpp:
778         (WebCore::GraphicsContext3D::createShader):
779
780 2009-11-23  Erik Arvidsson  <arv@chromium.org>
781
782         Reviewed by Eric Seidel.
783
784         JSC bindings for HasIndexGetter generates incorrect code (affects
785         MediaList and CSSStyleDeclaration).
786         This cleans up the edge cases for indexing out of range for style and
787         computed style objects to return an empty string according to the spec.
788         MediaList now returns null when indexed out of range.
789         https://bugs.webkit.org/show_bug.cgi?id=31683
790
791         Tests: fast/dom/CSSStyleDeclaration/css-computed-style-item.html
792                fast/dom/CSSStyleDeclaration/css-style-item.html
793                fast/dom/StyleSheet/css-medialist-item.html
794
795         * bindings/scripts/CodeGeneratorJS.pm: If IndexGetterReturnsString then
796                 we do not check the length before calling the item function.
797         * css/CSSComputedStyleDeclaration.cpp:
798         (WebCore::CSSComputedStyleDeclaration::item):
799         * css/CSSMutableStyleDeclaration.cpp:
800         (WebCore::CSSMutableStyleDeclaration::item):
801         * css/CSSStyleDeclaration.idl:
802
803 2009-11-23  Simon Fraser  <simon.fraser@apple.com>
804
805         Reviewed by Dan Bernstein.
806
807         DocumentMarkers need to be educated about transforms
808         https://bugs.webkit.org/show_bug.cgi?id=31751
809         
810         Find highlight is incorrect with transforms
811         <rdar://problem/6358394>
812
813         Allow callers to specify that Frame::selectionTextRects() takes transforms into account
814         when computing the set of rects that encompass a selection. For transformed elemenets, the
815         selection rect will be the bounding box of the selected content.
816         
817         Fix DocumentMarkers to cache rects in absolute coordinates, rather than painting coordinates.
818         
819         Test: editing/selection/transformed-selection-rects.html
820         
821         * WebCore.base.exp:
822         Frame::selectionTextRects() has a new parameter.
823         
824         * dom/Document.cpp:
825         (WebCore::Document::setRenderedRectForMarker):
826         * dom/Document.h:
827         Pass the marker as a const reference.
828         
829         * dom/Range.h:
830         * dom/Range.cpp:
831         (WebCore::Range::textQuads):
832         Add a new method, textQuads(), which returns a list of quads, respecting transforms.
833         
834         * page/Frame.h:
835         * page/Frame.cpp:
836         (WebCore::Frame::selectionTextRects):
837         Add a new parameter, respectTransforms, and when that is RespectTransforms, use the quad
838         method to get quads for ranges, and then take their bounding boxes.
839
840         * rendering/InlineTextBox.h:
841         * rendering/InlineTextBox.cpp:
842         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
843         (WebCore::InlineTextBox::paintTextMatchMarker):
844         (WebCore::InlineTextBox::computeRectForReplacementMarker):
845         (WebCore::InlineTextBox::paintDocumentMarkers):
846         (WebCore::InlineTextBox::textPos):
847         (WebCore::InlineTextBox::offsetForPosition):
848         
849         Pass DocumentMarkers as a const references.
850         Convert the argument to setRenderedRectForMarker() into absolute coordinates.
851         
852         * rendering/RenderView.cpp:
853         (WebCore::RenderView::selectionBounds):
854
855 2009-11-23  Dirk Schulze  <krit@webkit.org>
856
857         Reviewed by Oliver Hunt.
858
859         [Cairo] support blurred test-shadow
860         [https://bugs.webkit.org/show_bug.cgi?id=31797]
861
862         Support for blurred text-shadows on Cairo. This patch
863         reuses the code of blurred box-shadows, introduced in
864         bug 26102. For a full textshadow support, a filters enabled
865         build is needed.
866
867         * platform/graphics/cairo/FontCairo.cpp:
868         (WebCore::Font::drawGlyphs):
869
870 2009-11-23  Jens Alfke  <snej@chromium.org>
871
872         Reviewed by Geoffrey Garen.
873
874         Change incorrect calls to the constructor "EventNames()" to the correct accessor
875         "eventNames()". This saves ~100 AtomicString lookups each time.
876         https://bugs.webkit.org/show_bug.cgi?id=31811
877
878         * dom/EventNames.h:  Make constructor private to prevent this from happening again.
879         * history/CachedFrame.cpp:
880         (WebCore::CachedFrameBase::restore):  EventNames() --> eventNames()
881         * html/HTMLFormControlElement.cpp:
882         (WebCore::HTMLFormControlElement::checkValidity):  EventNames() --> eventNames()
883         * loader/FrameLoader.cpp:
884         (WebCore::FrameLoader::stopLoading):  EventNames() --> eventNames()
885         (WebCore::FrameLoader::pageHidden):  EventNames() --> eventNames()
886         * page/DOMWindow.cpp:
887         (WebCore::DOMWindow::dispatchAllPendingUnloadEvents):  EventNames() --> eventNames()
888
889 2009-11-23  Adam Langley  <agl@google.com>
890
891         Reviewed by Dmitry Titov.
892
893         Chromium Linux: Limit the stroke width and mitre limit.
894
895         Limit the stroke width and mitre limit that we'll pass into Skia to
896         avoid overflowing Skia's uint16_t glyph widths.
897
898         http://code.google.com/p/chromium/issues/detail?id=28250
899         https://bugs.webkit.org/show_bug.cgi?id=31747
900
901         * platform/graphics/skia/PlatformContextSkia.cpp:
902         (scalarBound):
903         (PlatformContextSkia::setupPaintForStroking):
904
905 2009-11-23  Alexey Proskuryakov  <ap@apple.com>
906
907         Reviewed by Oliver Hunt.
908
909         https://bugs.webkit.org/show_bug.cgi?id=31812
910         WebSocket code uses RefPtr::get() where it shouldn't
911
912         No change in funcitonality, just coding style correction.
913
914         * websockets/WebSocket.cpp:
915         (WebCore::WebSocket::~WebSocket):
916         * websockets/WebSocketChannel.cpp:
917         (WebCore::WebSocketChannel::connect):
918         (WebCore::WebSocketChannel::send):
919         (WebCore::WebSocketChannel::bufferedAmount):
920         (WebCore::WebSocketChannel::close):
921         (WebCore::WebSocketChannel::disconnect):
922         (WebCore::WebSocketChannel::didOpen):
923         (WebCore::WebSocketChannel::didClose):
924         (WebCore::WebSocketChannel::didReceiveData):
925         (WebCore::WebSocketChannel::didFail):
926
927 2009-11-23  Alexey Proskuryakov  <ap@apple.com>
928
929         Build fix.
930
931         * platform/network/cf/SocketStreamHandleCFNet.cpp:
932         (WebCore::SocketStreamHandle::pacExecutionCallbackMainThread): pacExecutionCallbackMainThread
933         is static, so it can't use member variables directly.
934
935 2009-11-23  Alexey Proskuryakov  <ap@apple.com>
936
937         Reviewed by Brady Eidson.
938
939         https://bugs.webkit.org/show_bug.cgi?id=31748
940         Make WebSocketHandleCFNet respect proxy auto-configuration files via CFProxySupport
941
942         * platform/network/cf/SocketStreamHandle.h: Removed names from some void* arguments, since
943         they didn't carry useful information.
944
945         * platform/network/cf/SocketStreamHandleCFNet.cpp:
946         (WebCore::SocketStreamHandle::SocketStreamHandle): When we need an http-style URL, we actually
947         always need https.
948         (WebCore::SocketStreamHandle::scheduleStreams): Factored out from constructor, since streams
949         only get scheduled after PAC is fetched and executed asynchronously.
950         (WebCore::SocketStreamHandle::copyPACExecutionDescription): Return a description for event
951         source.
952         (WebCore::MainThreadPACCallbackInfo::MainThreadPACCallbackInfo): Forward callback to main thread.
953         (WebCore::SocketStreamHandle::pacExecutionCallback): Ditto.
954         (WebCore::SocketStreamHandle::pacExecutionCallbackMainThread): Ditto. To avoid code duplication,
955         we make the call even on Mac.
956         (WebCore::SocketStreamHandle::executePACFileURL): Make an async call to CFNetworkExecuteProxyAutoConfigurationURL.
957         (WebCore::SocketStreamHandle::removePACRunLoopSource): Once PAC execution is done or aborted,
958         we need to get rid of the event source.
959         (WebCore::SocketStreamHandle::chooseProxy): Use stored m_httpsURL.get.
960         (WebCore::SocketStreamHandle::chooseProxyFromArray): Factored out from chooseProxy - the
961         array may come directly from system configuration, or from PAC.
962         (WebCore::SocketStreamHandle::chooseProxy): Tiger version of this function is now completely
963         separate.
964         (WebCore::SocketStreamHandle::~SocketStreamHandle): Run loop source should be destroyed
965         before we get to the destructor.
966         (WebCore::SocketStreamHandle::platformClose): Destroy the run loop source, if PAC execution
967         is still in progress.
968
969 2009-11-23  Oliver Hunt  <oliver@apple.com>
970
971         Reviewed by Geoff Garen.
972
973         Don't leak the CGImage we create when drawing a sub image.
974
975         * platform/graphics/cg/ImageCG.cpp:
976         (WebCore::BitmapImage::draw):
977
978 2009-11-23  Adam Barth  <abarth@webkit.org>
979
980         Reviewed by Dimitri Glazkov.
981
982         [V8] Don't crash when OOM in creating isolated world
983         https://bugs.webkit.org/show_bug.cgi?id=31805
984
985         We need to add some more null checks to avoid crashing.  No new tests
986         because we don't have a good way to test out-of-memory bugs.
987
988         * bindings/v8/V8Proxy.cpp:
989         (WebCore::V8Proxy::evaluateInIsolatedWorld):
990         (WebCore::V8Proxy::evaluateInNewContext):
991         (WebCore::V8Proxy::setInjectedScriptContextDebugId):
992         * bindings/v8/V8Proxy.h:
993
994 2009-11-23  Dirk Schulze  <krit@webkit.org>
995
996         Reviewed by Nikolas Zimmermann.
997
998         This is the implementation of the filterRes attribute. It
999         helps the SVG developer to set the quality of a filter by
1000         giving the width or height of filter.
1001         This patch also sets the filter resolution to lower values
1002         if a intermediate ImageBuffer size is bigger than the given
1003         maximal size.
1004         The maximal size is set to 5000x5000 by default. This is a
1005         subjectiv decission. Everthing greater than this values gets
1006         sensible slower. Values of 10000x10000 crashed on WebKitGtk.
1007         For mobil devices a maximum size of 100x100 or 200x200 seems
1008         to be reasonable.
1009         The important fact on filter resolution is, that the output
1010         size is still the size given by the <filter> element.
1011
1012         Tests: svg/filters/big-sized-filter-2.svg
1013                svg/filters/big-sized-filter.svg
1014                svg/filters/filterRes.svg
1015
1016         * platform/graphics/FloatRect.cpp:
1017         (WebCore::FloatRect::scale): Add the abbility to scale a rect by x and y.
1018         * platform/graphics/FloatRect.h:
1019         (WebCore::FloatRect::scale): Add the abbility to scale a rect by x and y.
1020         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1021         (WebCore::GraphicsContext::createPlatformShadow): Use scaledSubRegion for
1022         calculation.
1023         * platform/graphics/filters/FEBlend.cpp:
1024         (WebCore::FEBlend::apply): Use scaledSubRegion for effect intern calculations.
1025         * platform/graphics/filters/FEColorMatrix.cpp:
1026         (WebCore::FEColorMatrix::apply): Use scaledSubRegion for effect intern calculations.
1027         * platform/graphics/filters/FEComponentTransfer.cpp:
1028         (WebCore::FEComponentTransfer::apply): Use scaledSubRegion for effect intern
1029         calculations.
1030         * platform/graphics/filters/FEComposite.cpp:
1031         (WebCore::FEComposite::apply): Use scaledSubRegion for effect intern calculations.
1032         * platform/graphics/filters/FEGaussianBlur.cpp:
1033         (WebCore::FEGaussianBlur::apply): Use scaledSubRegion for effect intern calculations.
1034         * platform/graphics/filters/Filter.h: Add the abbility to change the quality
1035         of a filter output.
1036         (WebCore::Filter::filterResolution):
1037         (WebCore::Filter::setFilterResolution):
1038         (WebCore::Filter::calculateEffectSubRegion): Calculates the correct subRegion
1039         as well as the scaledSubRegion. It also searches for the biggest effect size.
1040         We have to change the filter resolution, if one intermediate ImageBuffer size
1041         doesn't fit in the maximal image size.
1042         * platform/graphics/filters/FilterEffect.cpp:
1043         (WebCore::FilterEffect::calculateDrawingIntRect): Use scaledSubRegion to get
1044         the right part of a previous effect result.
1045         (WebCore::FilterEffect::calculateDrawingRect): Use scaledSubRegion to get
1046         the right part of a previous effect result.
1047         (WebCore::FilterEffect::getEffectContext): Use scaledSubRegion to create
1048         a new intermediate ImageBuffer for the result of the current effect.
1049         * platform/graphics/filters/FilterEffect.h:
1050         (WebCore::FilterEffect::scaledSubRegion): The scaled subRegion of a the
1051         filter effect.
1052         (WebCore::FilterEffect::setScaledSubRegion):
1053         (WebCore::FilterEffect::effectBoundaries): The original values of the
1054         EffectElement for a second subRegion calculation.
1055         (WebCore::FilterEffect::setEffectBoundaries):
1056         * platform/graphics/filters/ImageBufferFilter.cpp:
1057         (WebCore::ImageBufferFilter::ImageBufferFilter): Set the scale factor to one.
1058         * platform/graphics/filters/ImageBufferFilter.h:
1059         (WebCore::ImageBufferFilter::maxImageSize):
1060         (WebCore::ImageBufferFilter::calculateEffectSubRegion):
1061         * platform/graphics/filters/SourceAlpha.cpp:
1062         (WebCore::SourceAlpha::calculateEffectRect): Use scaledSubRegion for effect
1063         intern calculations.
1064         * platform/graphics/filters/SourceGraphic.cpp:
1065         (WebCore::SourceGraphic::calculateEffectRect): Use scaledSubRegion for effect
1066         intern calculations.
1067         * svg/SVGFilterElement.cpp:
1068         (WebCore::SVGFilterElement::parseMappedAttribute): Parse filterRes attribute.
1069         (WebCore::SVGFilterElement::buildFilter): Give SVGResourceFilter the current
1070         filterResolution.
1071         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
1072         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes): Save
1073         values to effectBoundaries of the filter effect
1074         * svg/graphics/SVGResourceFilter.cpp:
1075         (WebCore::SVGResourceFilter::SVGResourceFilter):
1076         (WebCore::shouldProcessFilter): Return signal if a neccessary value is zero.
1077         (WebCore::SVGResourceFilter::fitsInMaximumImageSize): Checks if the given size
1078         fits into the maximal image size, modifys scale factors if not and return a
1079         bool: fits.
1080         (WebCore::SVGResourceFilter::prepareFilter): Scale the SourceImage to
1081         filterResolution (given by FilterElement or calculated on to big image sizes).
1082         Set the scale level to SVGFilter.
1083         (WebCore::SVGResourceFilter::applyFilter): Don't apply filters if shouldProcessFilter
1084         is wrong.
1085         * svg/graphics/SVGResourceFilter.h:
1086         (WebCore::SVGResourceFilter::setFilterResolution): FilterResolution of FilterElement.
1087         (WebCore::SVGResourceFilter::setHasFilterResolution): Does FilterElement provides
1088         a FilterResolution?
1089         (WebCore::SVGResourceFilter::scaleX): Current scale factor for horizontal.
1090         (WebCore::SVGResourceFilter::scaleY): Current scale factor for vertical.
1091         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
1092         (WebCore::FEDisplacementMap::apply): Use scaledSubRegion for effect intern calculations.
1093         Kernel values are scaled to current filter resolution too.
1094         * svg/graphics/filters/SVGFEFlood.cpp:
1095         (WebCore::FEFlood::apply): Use scaledSubRegion for effect intern calculations.
1096         * svg/graphics/filters/SVGFEMerge.cpp:
1097         (WebCore::FEMerge::apply): Use scaledSubRegion for effect intern calculations.
1098         Kernel values are scaled to current filter resolution too.
1099         * svg/graphics/filters/SVGFEMorphology.cpp:
1100         (WebCore::FEMorphology::apply): Use scaledSubRegion for effect intern calculations.
1101         Kernel values are scaled to current filter resolution too.
1102         * svg/graphics/filters/SVGFEOffset.cpp:
1103         (WebCore::FEOffset::apply): Use scaledSubRegion for effect intern calculations.
1104         * svg/graphics/filters/SVGFETile.cpp:
1105         (WebCore::FETile::apply): Use scaledSubRegion for effect intern calculations.
1106         * svg/graphics/filters/SVGFilter.cpp:
1107         (WebCore::SVGFilter::calculateEffectSubRegion): Calculate subRegion for LayoutTests,
1108         scaledSubRegion according to the current filterResolution and get the maximal image size.
1109         * svg/graphics/filters/SVGFilter.h:
1110         (WebCore::SVGFilter::effectBoundingBoxMode): Original values of the FilterElement. 
1111         (WebCore::SVGFilter::filterRegion): Use virtual for clarification.
1112         (WebCore::SVGFilter::sourceImageRect): Use virtual for clarification.
1113         (WebCore::SVGFilter::maxImageSize): Get the maximal image size.
1114
1115 2009-11-23  Simon Hausmann  <simon.hausmann@nokia.com>
1116
1117         Reviewed by Kenneth Rohde Christiansen.
1118
1119         [Qt] Wrong runtime instance objects of wrapped QObjects may be used if
1120         the wrapped object died before the gc removed the instance.
1121
1122         https://bugs.webkit.org/show_bug.cgi?id=31681
1123
1124         Before using a cached instance, verify that its wrapped QObject is
1125         still alive.
1126
1127         * bridge/qt/qt_instance.cpp:
1128         (JSC::Bindings::QtInstance::getQtInstance):
1129         * bridge/qt/qt_instance.h:
1130         (JSC::Bindings::QtInstance::hashKey):
1131
1132 2009-11-22  Chris Fleizach  <cfleizach@apple.com>
1133
1134         Reviewed by Oliver Hunt.
1135
1136         ARIA: support aria-flowto
1137         https://bugs.webkit.org/show_bug.cgi?id=31762
1138
1139         Test: platform/mac/accessibility/aria-flowto.html
1140
1141         * accessibility/AccessibilityObject.h:
1142         (WebCore::AccessibilityObject::ariaOwnsElements):
1143         (WebCore::AccessibilityObject::supportsARIAFlowTo):
1144         (WebCore::AccessibilityObject::ariaFlowToElements):
1145         * accessibility/AccessibilityRenderObject.cpp:
1146         (WebCore::AccessibilityRenderObject::linkedUIElements):
1147         (WebCore::AccessibilityRenderObject::supportsARIAFlowTo):
1148         (WebCore::AccessibilityRenderObject::ariaFlowToElements):
1149         * accessibility/AccessibilityRenderObject.h:
1150         * html/HTMLAttributeNames.in:
1151
1152 2009-11-22  Nikolas Zimmermann  <nzimmermann@rim.com>
1153
1154         Not reviewed. Build fix for WML enabled builds.
1155         Adopt WebCore API changes.
1156
1157         * wml/WMLAElement.cpp:
1158         (WebCore::WMLAElement::defaultEventHandler):
1159         * wml/WMLInputElement.cpp:
1160         (WebCore::WMLInputElement::defaultEventHandler):
1161
1162 2009-11-22  Pavel Feldman  <pfeldman@chromium.org>
1163
1164         Reviewed by Timothy Hatcher.
1165
1166         Web Inspector: Introduce sidebar background on timeline panel in order
1167         to prevent it from flickering on scroll.
1168
1169         https://bugs.webkit.org/show_bug.cgi?id=31789
1170
1171         * inspector/front-end/TimelinePanel.js:
1172         (WebInspector.TimelinePanel):
1173         (WebInspector.TimelinePanel.prototype.setSidebarWidth):
1174         (WebInspector.TimelinePanel.prototype._onScroll):
1175         (WebInspector.TimelinePanel.prototype._scheduleRefresh):
1176         * inspector/front-end/inspector.css:
1177
1178 2009-11-22  Pavel Feldman  <pfeldman@chromium.org>
1179
1180         Reviewed by Timothy Hatcher.
1181
1182         Web Inspector: Reimplement TimelinePanel to make it fast:
1183         - Extract grid and overview into separate files
1184         - Make timeline create only divs for visible rows
1185
1186         https://bugs.webkit.org/show_bug.cgi?id=31784
1187
1188         * WebCore.gypi:
1189         * WebCore.vcproj/WebCore.vcproj:
1190         * inspector/front-end/AbstractTimelinePanel.js:
1191         (WebInspector.AbstractTimelinePanel.prototype.createInterface):
1192         (WebInspector.AbstractTimelinePanel.prototype.refresh):
1193         (WebInspector.AbstractTimelinePanel.prototype.set calculator):
1194         * inspector/front-end/TimelineGrid.js: Added.
1195         (WebInspector.TimelineGrid):
1196         (WebInspector.TimelineGrid.prototype.get itemsGraphsElement):
1197         (WebInspector.TimelineGrid.prototype.updateDividers):
1198         (WebInspector.TimelineGrid.prototype.addEventDivider):
1199         (WebInspector.TimelineGrid.prototype.setScrollAndDividerTop):
1200         * inspector/front-end/TimelineOverviewPane.js: Added.
1201         (WebInspector.TimelineOverviewPane):
1202         (WebInspector.TimelineOverviewPane.prototype._onCheckboxClicked):
1203         (WebInspector.TimelineOverviewPane.prototype.update):
1204         (WebInspector.TimelineOverviewPane.prototype.setSidebarWidth):
1205         (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth):
1206         (WebInspector.TimelineOverviewPane.prototype.reset):
1207         (WebInspector.TimelineOverviewPane.prototype._resizeWindow):
1208         (WebInspector.TimelineOverviewPane.prototype._windowResizeDragging):
1209         (WebInspector.TimelineOverviewPane.prototype._dragWindow):
1210         (WebInspector.TimelineOverviewPane.prototype._windowDragging):
1211         (WebInspector.TimelineOverviewPane.prototype._resizeWindowLeft):
1212         (WebInspector.TimelineOverviewPane.prototype._resizeWindowRight):
1213         (WebInspector.TimelineOverviewPane.prototype._setWindowPosition):
1214         (WebInspector.TimelineOverviewPane.prototype._endWindowDragging):
1215         (WebInspector.TimelineOverviewCalculator):
1216         (WebInspector.TimelineOverviewCalculator.prototype.computeBarGraphPercentages):
1217         (WebInspector.TimelineOverviewCalculator.prototype.reset):
1218         (WebInspector.TimelineOverviewCalculator.prototype.updateBoundaries):
1219         (WebInspector.TimelineOverviewCalculator.prototype.get boundarySpan):
1220         (WebInspector.TimelineOverviewCalculator.prototype.formatValue):
1221         (WebInspector.TimelineCategoryTreeElement):
1222         (WebInspector.TimelineCategoryTreeElement.prototype.onattach):
1223         (WebInspector.TimelineCategoryGraph):
1224         (WebInspector.TimelineCategoryGraph.prototype.get graphElement):
1225         (WebInspector.TimelineCategoryGraph.prototype.addChunk):
1226         (WebInspector.TimelineCategoryGraph.prototype.clearChunks):
1227         (WebInspector.TimelineCategoryGraph.prototype.set dimmed):
1228         * inspector/front-end/TimelinePanel.js:
1229         (WebInspector.TimelinePanel):
1230         (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
1231         (WebInspector.TimelinePanel.prototype.addRecordToTimeline):
1232         (WebInspector.TimelinePanel.prototype._formatRecord):
1233         (WebInspector.TimelinePanel.prototype.setSidebarWidth):
1234         (WebInspector.TimelinePanel.prototype.updateMainViewWidth):
1235         (WebInspector.TimelinePanel.prototype.resize):
1236         (WebInspector.TimelinePanel.prototype.reset):
1237         (WebInspector.TimelinePanel.prototype.show):
1238         (WebInspector.TimelinePanel.prototype._onScroll):
1239         (WebInspector.TimelinePanel.prototype._scheduleRefresh):
1240         (WebInspector.TimelinePanel.prototype._refresh):
1241         (WebInspector.TimelinePanel.prototype._refreshRecords):
1242         (WebInspector.TimelinePanel.prototype._adjustScrollPosition):
1243         (WebInspector.TimelineCategory):
1244         (WebInspector.TimelineCalculator):
1245         (WebInspector.TimelineCalculator.prototype.get boundarySpan):
1246         (WebInspector.TimelineRecordListRow):
1247         (WebInspector.TimelineRecordListRow.prototype.update):
1248         (WebInspector.TimelineRecordGraphRow):
1249         (WebInspector.TimelineRecordGraphRow.prototype.update):
1250         * inspector/front-end/WebKit.qrc:
1251         * inspector/front-end/inspector.css:
1252         * inspector/front-end/inspector.html:
1253
1254 2009-11-22  Chris Evans  <cevans@chromium.org>
1255
1256         Reviewed by Adam Barth.
1257
1258         Disable access to file:/// directory listings
1259         https://bugs.webkit.org/show_bug.cgi?id=31329
1260
1261         Deny access to directory listings. This needs doing in WebKit for
1262         WebKit clients that do permit top-level navigation to file:///dir.
1263         This matches Firefox, plus the existing Safari implementation (which
1264         does not support any directory access at all). It will fix the
1265         LayoutTest named below for Chromium.
1266
1267         Test: fast/xmlhttprequest/xmlhttprequest-nonexistent-file.html
1268
1269         * page/SecurityOrigin.cpp: Deny access to directory listings.
1270         (WebCore::SecurityOrigin::SecurityOrigin):
1271         (WebCore::SecurityOrigin::canRequest):
1272
1273 2009-11-20  Joseph Pecoraro  <joepeck@webkit.org>
1274
1275         Reviewed by Timothy Hatcher.
1276
1277         Web Inspector: Support Ctrl+P and Ctrl+N, Readline keyboard shortcuts in the Console
1278         https://bugs.webkit.org/show_bug.cgi?id=31400
1279
1280         Handle the following when on a Mac:
1281
1282           Ctrl+P = Previous (like Up arrow)
1283           Ctrl+N = Next (like Down arrow)
1284
1285         No longer rerun autocompletion when just pushing a modifier key
1286         like Control, Alt, Shift, or Meta.
1287
1288         Improved arrow key behavior with Multiline code in the Console, with the following behavior:
1289
1290           Up   = Previous Command if on First Line (caret moves to the end of the first line)
1291                  otherwise default caret movement in text.
1292           Down = Next Command if on Last Line (caret naturally moves to the end)
1293                  otherwise default caret movement in text.
1294
1295         * inspector/front-end/TextPrompt.js:
1296         (WebInspector.TextPrompt.prototype.handleKeyEvent): handle new keyboard shortcuts
1297         (WebInspector.TextPrompt.prototype.isCaretOnFirstLine): check if the caret is on the top line
1298         (WebInspector.TextPrompt.prototype.isCaretOnLastLine): check if the caret is on the bottom line
1299         (WebInspector.TextPrompt.prototype._upKeyPressed):
1300         (WebInspector.TextPrompt.prototype._downKeyPressed):
1301         (WebInspector.TextPrompt.prototype._moveBackInHistory):
1302         (WebInspector.TextPrompt.prototype._moveForwardInHistory):
1303
1304 2009-11-21  Jessie Berlin  <jberlin@webkit.org>
1305
1306         Reviewed by Timothy Hatcher.
1307
1308         Adds a tooltip containing the full url of the resource to each element
1309         in the Resources panel so that it is possible to quickly see the query
1310         parameters.
1311         https://bugs.webkit.org/show_bug.cgi?id=19103
1312
1313         * inspector/front-end/ResourcesPanel.js:
1314         (WebInspector.ResourceSidebarTreeElement.prototype.refresh):
1315         Set the tooltip to be the resource's url.
1316
1317 2009-11-21  Simon Fraser  <simon.fraser@apple.com>
1318
1319         Reviewed by Dan Bernstein.
1320
1321         CSSKeyframesRule::findRule() and deleteRule() should accept 'from' and 'to' as well as percentages
1322         https://bugs.webkit.org/show_bug.cgi?id=31588
1323         
1324         In WebKitCSSKeyframesRule::findRuleIndex(), map 'from' to 0% an 'to' to 100%
1325         so that findRule() and deleteRule() work with these keywords.
1326
1327         * css/WebKitCSSKeyframesRule.cpp:
1328         (WebCore::WebKitCSSKeyframesRule::findRuleIndex):
1329
1330 2009-11-21  Daniel Bates  <dbates@webkit.org>
1331
1332         Reviewed by Eric Seidel.
1333
1334         https://bugs.webkit.org/show_bug.cgi?id=31647
1335
1336         Changed KeyboardEvent::m_keyEvent from a raw pointer to an OwnPtr.
1337
1338         No functionality was changed. So, no new tests.
1339
1340         * dom/KeyboardEvent.cpp:
1341         (WebCore::KeyboardEvent::~KeyboardEvent):
1342         * dom/KeyboardEvent.h: Changed m_keyEvent to OwnPtr.
1343         (WebCore::KeyboardEvent::keyEvent):
1344
1345 2009-11-20  Chris Fleizach  <cfleizach@apple.com>
1346
1347         Reviewed by Beth Dakin.
1348
1349         WAI-ARIA: add support for aria-owns
1350         https://bugs.webkit.org/show_bug.cgi?id=31702
1351
1352         Re-organized how accessibilityAttributeNames are returned so 
1353         that it's possible for an element to add an attribute based on 
1354         a dynamic value. In this case, we only want to add AXOwn if the 
1355         element actually supports aria-owns.
1356   
1357         Test: platform/mac/accessibility/aria-owns.html
1358
1359         * accessibility/AccessibilityObject.h:
1360         (WebCore::AccessibilityObject::supportsARIAOwns):
1361         (WebCore::AccessibilityObject::ariaOwnsElements):
1362         * accessibility/AccessibilityRenderObject.cpp:
1363         (WebCore::AccessibilityRenderObject::ariaOwnsElements):
1364         (WebCore::AccessibilityRenderObject::supportsARIAOwns):
1365         * accessibility/AccessibilityRenderObject.h:
1366         * accessibility/mac/AccessibilityObjectWrapper.mm:
1367         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
1368         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
1369         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1370         * html/HTMLAttributeNames.in:
1371
1372 2009-11-20  Eric Carlson  <eric.carlson@apple.com>
1373
1374         Reviewed by Simon Fraser.
1375
1376         <rdar://problem/7414396> Leopard & Tiger: Support closed caption in <video> element
1377
1378         * css/mediaControls.css:
1379             Define closed caption toggle button.
1380
1381         * rendering/RenderMedia.cpp:
1382         (WebCore::RenderMedia::updateControls):
1383             Create closed caption toggle button in display order.
1384
1385         * rendering/RenderThemeMac.mm:
1386         (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
1387             Don't require MediaControllerThemeQuickTime theme for captions toggle button.
1388             No need to check if the movie has video, a closed captions track is a video
1389             track.
1390
1391 2009-11-20  Joseph Pecoraro  <joepeck@webkit.org>
1392
1393         Reviewed by Timothy Hatcher.
1394
1395         Web Inspector: Running code in the Console that ends with a
1396         single line comment no longer produces a parse error.
1397
1398         * inspector/front-end/InjectedScript.js:
1399         (InjectedScript._evaluateOn):
1400
1401 2009-11-20  Chris Fleizach  <cfleizach@apple.com>
1402
1403         Reviewed by Beth Dakin.
1404
1405         WAI-ARIA: add support for 'math' role
1406         https://bugs.webkit.org/show_bug.cgi?id=31706
1407
1408         * accessibility/AccessibilityObject.cpp:
1409         * accessibility/AccessibilityObject.h:
1410         * accessibility/mac/AccessibilityObjectWrapper.mm:
1411
1412 2009-11-20  Yael Aharon  <yael.aharon@nokia.com>
1413
1414         Reviewed by Kenneth Rohde Christiansen.
1415
1416         NPN_ReloadPlugins does not reload the page even if reloadPages is true.
1417         https://bugs.webkit.org/show_bug.cgi?id=30460
1418
1419         Replace call to PluginDatabase::installedPlugins()->refresh() with Page::refreshPlugins().
1420         It already refreshes plugins and reloads pages when necessary.
1421
1422         Tests: plugins/reloadplugins-and-pages.html
1423                plugins/reloadplugins-no-pages.html
1424
1425         * plugins/PluginInfoStore.cpp:
1426         (WebCore::refreshPlugins):
1427
1428 2009-11-20  Oliver Hunt  <oliver@apple.com>
1429
1430         Reviewed by Dave Hyatt.
1431
1432         <rdar://7409188> WebKit needs to be able to serialize and deserialize objects.
1433
1434         Expose WebCore object serialization to WebKit.
1435
1436         * WebCore.base.exp:
1437         * bindings/js/SerializedScriptValue.cpp:
1438         (WebCore::SerializedScriptValue::~SerializedScriptValue):
1439         (WebCore::SerializedScriptValue::create):
1440         (WebCore::SerializedScriptValue::deserialize):
1441         * bindings/js/SerializedScriptValue.h:
1442
1443 2009-11-20  Brian Weinstein  <bweinstein@apple.com>
1444
1445         Reviewed by Tim Hatcher.
1446
1447         Fixes <http://webkit.org/b/31741>.
1448         Web Inspector: User Entered Data on the console should show up no matter what filters.
1449         
1450         Always show .console-user-command-result, no matter what the filter say
1451         we should do with the other classes.
1452
1453         * inspector/front-end/inspector.css:
1454
1455 2009-11-20  Brian Weinstein  <bweinstein@apple.com>
1456
1457         Reviewed by Tim Hatcher.
1458
1459         Fixes <http://webkit.org/b/31700>.
1460         Web Inspector: isMac should be in one central location + Cached.
1461         
1462         We should cache the value of isMac, and make the indexOf call in one
1463         single location, because we are calling it from multiple places, and saving
1464         the result can save us time, and make the call sites simpler.
1465
1466         * inspector/front-end/AbstractTimelinePanel.js:
1467         (WebInspector.AbstractTimelinePanel.prototype._updateFilter):
1468         * inspector/front-end/ConsoleView.js:
1469         (WebInspector.ConsoleView.prototype._updateFilter):
1470         * inspector/front-end/ElementsPanel.js:
1471         (WebInspector.ElementsPanel.prototype.handleKeyEvent):
1472         * inspector/front-end/ScriptsPanel.js:
1473         (WebInspector.ScriptsPanel):
1474         * inspector/front-end/SourceFrame.js:
1475         (WebInspector.SourceFrame.prototype._loaded):
1476         * inspector/front-end/inspector.js:
1477         (WebInspector.documentKeyDown):
1478         (WebInspector.isMac):
1479
1480 2009-11-19  Joseph Pecoraro  <joepeck@webkit.org>
1481
1482         Removed .DS_Store accidentally added in last (r51245).
1483
1484 2009-11-19  Joseph Pecoraro  <joepeck@webkit.org>
1485
1486         Reviewed by Timothy Hatcher.
1487
1488         Web Inspector: Add Console Only Layout Mode
1489         https://bugs.webkit.org/show_bug.cgi?id=30282
1490
1491         Adds a Console Panel, which allows for a Full size Console. This
1492         extends the Drawer to the size of a Panel. This also fixes previous
1493         resize issues with the Drawer.
1494
1495         * inspector/front-end/ConsolePanel.js: added.
1496         (WebInspector.ConsolePanel):
1497         (WebInspector.ConsolePanel.prototype.toolbarItemClass.get toolbarItemLabel):
1498         (WebInspector.ConsolePanel.prototype.show):
1499         (WebInspector.ConsolePanel.prototype.hide):
1500         * inspector/front-end/Drawer.js:
1501         (WebInspector.Drawer):
1502         (WebInspector.Drawer.prototype.set visibleView):
1503         (WebInspector.Drawer.prototype.get savedHeight): access the saved height of the variable console.
1504         (WebInspector.Drawer.prototype.show.animationFinished):
1505         (WebInspector.Drawer.prototype.show):
1506         (WebInspector.Drawer.prototype.hide.animationFinished):
1507         (WebInspector.Drawer.prototype.hide):
1508         (WebInspector.Drawer.prototype.resize): resize appropriately if full/non-full
1509         (WebInspector.Drawer.prototype.enterPanelMode):
1510         (WebInspector.Drawer.prototype.exitPanelMode):
1511         (WebInspector.Drawer.prototype.immediatelyExitPanelMode):
1512         (WebInspector.Drawer.prototype._cancelAnimationIfNeeded):
1513         (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
1514         (WebInspector.Drawer.prototype._animateDrawerHeight):
1515         (WebInspector.Drawer.prototype._animationDuration):
1516         (WebInspector.Drawer.prototype._startStatusBarDragging):
1517         (WebInspector.Drawer.prototype._statusBarDragging):
1518         (WebInspector.Drawer.prototype._endStatusBarDragging):
1519
1520         Miscellaneous changes and cleanup.
1521
1522         * English.lproj/localizedStrings.js: "Console" toolbar title.
1523         * inspector/front-end/ConsoleView.js: removed unnecessary element reordering  
1524         * inspector/front-end/Images/consoleIcon.png: added.
1525         * inspector/front-end/inspector.css: added icon.
1526         * inspector/front-end/inspector.html:
1527         * inspector/front-end/inspector.js:
1528         (WebInspector._createPanels): create console panel
1529         (WebInspector.windowResize): resize drawer if necessary
1530         (WebInspector.documentKeyDown): esc should not toggle the console when in panel mode
1531         (WebInspector.animateStyle): start animation interval, returns the interval key
1532         (WebInspector.toggleAttach): resize drawer if necessary
1533         (WebInspector.showConsolePanel): restore the panel when the inspector restarts
1534         (WebInspector.showProfileForURL): style fix
1535
1536         Restore the panel when the inspector restarts.
1537
1538         * inspector/InspectorController.cpp:
1539         (WebCore::InspectorController::setWindowVisible):
1540         (WebCore::InspectorController::specialPanelForJSName):
1541         * inspector/InspectorFrontend.cpp:
1542         (WebCore::InspectorFrontend::showPanel):
1543
1544         Build files.
1545
1546         * WebCore.gypi:
1547         * WebCore.vcproj/WebCore.vcproj:
1548         * inspector/front-end/WebKit.qrc:
1549
1550 2009-11-20  Brian Weinstein  <bweinstein@apple.com>
1551
1552         Reviewed by Tim Hatcher.
1553
1554         Fixes <http://webkit.org/b/31699>.
1555         Web Inspector: Should Cache Values of InspectorController.platform() and port().
1556
1557         Refactor the Inspector to cache the value of InspectorController.platform
1558         and InspectorController.port, because those need to call into C++, they are
1559         being called more and more as we add platform specific keyboard shortcuts, and
1560         they shouldn't change in the lifecycle of the Web Inspector.
1561
1562         * inspector/front-end/AbstractTimelinePanel.js:
1563         (WebInspector.AbstractTimelinePanel.prototype._updateFilter):
1564         * inspector/front-end/ConsoleView.js:
1565         (WebInspector.ConsoleView.prototype._updateFilter):
1566         * inspector/front-end/ElementsPanel.js:
1567         (WebInspector.ElementsPanel.prototype.handleKeyEvent):
1568         * inspector/front-end/ScriptsPanel.js:
1569         (WebInspector.ScriptsPanel):
1570         * inspector/front-end/SourceFrame.js:
1571         (WebInspector.SourceFrame.prototype._loaded):
1572         * inspector/front-end/inspector.js:
1573         (WebInspector.get platform):
1574         (WebInspector.get port):
1575         (WebInspector.loaded):
1576         (WebInspector.documentKeyDown):
1577         (WebInspector.toolbarDragStart):
1578
1579 2009-11-20  Dirk Schulze  <krit@webkit.org>
1580
1581         Unreviewed build fix for filters enabled builds.
1582
1583         * platform/graphics/filters/FEColorMatrix.cpp:
1584         (WebCore::FEColorMatrix::apply):
1585         * platform/graphics/filters/FEComposite.cpp:
1586         (WebCore::FEComposite::apply):
1587         * platform/graphics/filters/SourceGraphic.cpp:
1588         (WebCore::SourceGraphic::apply):
1589         * svg/graphics/SVGResourceFilter.cpp:
1590         (WebCore::SVGResourceFilter::applyFilter):
1591         * svg/graphics/filters/SVGFEMerge.cpp:
1592         (WebCore::FEMerge::apply):
1593         * svg/graphics/filters/SVGFEOffset.cpp:
1594         (WebCore::FEOffset::apply):
1595         * svg/graphics/filters/SVGFETile.cpp:
1596         (WebCore::FETile::apply):
1597
1598 2009-11-20  Eric Carlson  <eric.carlson@apple.com>
1599
1600         Reviewed by Simon Fraser.
1601
1602         <rdar://problem/7389945> QTKit based media engine should not claim to support 
1603         fullscreen on Leopard
1604
1605         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1606         (WebCore::MediaPlayerPrivate::supportsFullscreen):
1607             Only return true on SnowLeopard for now.
1608
1609         * rendering/RenderThemeMac.mm:
1610         (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
1611             No need to special case MediaFullscreenButtonPart as the default implementation 
1612             asks the media engine if it supports fullscreen.
1613
1614 2009-11-18  Girish Ramakrishnan  <girish@forwardbias.in>
1615
1616         Reviewed by Simon Hausmann.
1617
1618         Patch by Yongjun Zhang <yongjun.zhang@nokia.com> and
1619                  Girish Ramakrishnan <girish@forwardbias.in>
1620         
1621         [Qt] Implement support for rendering plugins on Qt/Mac when a page is used
1622         without a QWebView or when inside QGraphicsWebView.
1623         
1624         Currently, the code provides the cgcontext of the PlatformPluginWidget to
1625         the plugin. This approach does not work when we are printing, or using
1626         QWebFrame::render() to render to a QImage/QPixmap since the plugin ends
1627         up drawing on the QWebView (i.e platformPluginWidget's cgcontext) instead
1628         of the QPaintDevice's context.
1629         
1630         To solve all cases and keep the code simple, we render the plugin to an
1631         offscreen pixmap in all cases. This way, the plugin always renders to the
1632         CGContext of the pixmap and we then use QPainter to blit the pixmap into
1633         the QPaintDevice. We also create a fake window and set it's WindowRef in
1634         NPWindow. Only with this WindowRef does Flash paint correctly to the QPixmap.
1635         
1636         Now, that's the theory. In practice, ATM, mouse events do not work when using
1637         the fake window. So, setPlatformPluginWidget() is still called when using QWebView
1638         so that there are no regressions after this patch. Once we get mouse events
1639         working, setPlatformPluginWidget will be removed.
1640         
1641         https://bugs.webkit.org/show_bug.cgi?id=31183
1642
1643         * plugins/PluginView.cpp:
1644         (WebCore::PluginView::PluginView):
1645         * plugins/PluginView.h:
1646         * plugins/mac/PluginViewMac.cpp:
1647         (WebCore::PluginView::platformStart):
1648         (WebCore::PluginView::platformDestroy):
1649         (WebCore::PluginView::setNPWindowIfNeeded):
1650         (WebCore::PluginView::updatePluginWidget):
1651         (WebCore::PluginView::paint):
1652         (WebCore::PluginView::invalidateRect):
1653
1654 2009-11-19  Joseph Pecoraro  <joepeck@webkit.org>
1655
1656         Reviewed by Timothy Hatcher.
1657
1658         Web Inspector: Resync Resources Backend and Frontend
1659         https://bugs.webkit.org/show_bug.cgi?id=31705
1660
1661         * inspector/front-end/Resource.js: resync enum values with backend
1662         (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType): return false if all else fails, not true in all cases
1663
1664 2009-11-19  Steve Block  <steveblock@google.com>
1665
1666         Reviewed by Darin Fisher.
1667
1668         Android port lacks configuration in Platform.h and config.h.
1669         https://bugs.webkit.org/show_bug.cgi?id=31671
1670
1671         Build change only. No new tests possible.
1672
1673         * config.h: Modified. Added Android-specific configuration.
1674
1675 2009-11-20  Roland Steiner  <rolandsteiner@chromium.org>
1676
1677         Reviewed by Darin Adler.
1678
1679         Change default stylesheet to reset text indentation for ruby elements by default.
1680         (https://bugs.webkit.org/show_bug.cgi?id=31247)
1681
1682         Test: fast/ruby/ruby-text-indent.html
1683
1684         * css/html.css: reset text-indent on <ruby> and <rt> elements
1685
1686 2009-11-19  Brian Weinstein  <bweinstein@apple.com>
1687
1688         Reviewed by Darin Adler.
1689
1690         Fixes <http://webkit.org/b/22754>.
1691         Web Inspector: Keyboard shortcut for Element finder.
1692
1693         Use Command + Shift + C as a shortcut for Node Search, to 
1694         match the Firebug shortcut to do the same thing.
1695
1696         * inspector/front-end/ElementsPanel.js:
1697         (WebInspector.ElementsPanel.prototype.handleKeyEvent):
1698
1699 2009-11-19  Alexey Proskuryakov  <ap@apple.com>
1700
1701         Reviewed by Darin Adler.
1702
1703         https://bugs.webkit.org/show_bug.cgi?id=31690
1704         Make SocketStreamHandleCFNet work on Windows
1705
1706         * WebCore.vcproj/WebCore.vcproj: Added LoaderRunLoopCF.
1707
1708         * platform/network/ResourceHandle.h: Removed loaderRunLoop().
1709
1710         * platform/network/cf/LoaderRunLoopCF.cpp: Added.
1711         (WebCore::emptyPerform):
1712         (WebCore::runLoaderThread):
1713         (WebCore::loaderRunLoop):
1714         * platform/network/cf/LoaderRunLoopCF.h: Added.
1715         Moved the run loop that we use for CFNetwork from ResourceHandle to its own file, because
1716         it's needed for more than just resource loading.
1717
1718         * platform/network/cf/ResourceHandleCFNet.cpp: Use loaderRunLoop() from its new location.
1719
1720         * platform/network/cf/DNSCFNet.cpp: (WebCore::DNSResolveQueue::resolve): Ditto.
1721
1722         * platform/network/cf/SocketStreamHandle.h: Added static callbacks for forwarding events to
1723         main thread.
1724         * platform/network/cf/SocketStreamHandleCFNet.cpp:
1725         (WebCore::SocketStreamHandle::SocketStreamHandle): Use loaderRunLoop() on Windows instead of
1726         inoperable main run loop.
1727
1728         (WebCore::MainThreadEventCallbackInfo::MainThreadEventCallbackInfo): 
1729         (WebCore::SocketStreamHandle::readStreamCallback):
1730         (WebCore::SocketStreamHandle::writeStreamCallback):
1731         (WebCore::SocketStreamHandle::readStreamCallbackMainThread):
1732         (WebCore::SocketStreamHandle::writeStreamCallbackMainThread):
1733         Forward stream events to main thread on Windows.
1734
1735 2009-11-19  Avi Drissman  <avi@chromium.org>
1736
1737         Reviewed by Darin Adler.
1738
1739         Quick style fix.
1740         https://bugs.webkit.org/show_bug.cgi?id=27777
1741
1742         * platform/graphics/cg/PDFDocumentImage.cpp:
1743
1744 2009-11-19  Beth Dakin  <bdakin@apple.com>
1745
1746        Build fix. No review needed.
1747
1748         * platform/chromium/ScrollbarThemeChromium.cpp:
1749         (WebCore::ScrollbarThemeChromium::paintTickmarks):
1750         * rendering/RenderMediaControlsChromium.cpp:
1751         (WebCore::paintMediaButton):
1752
1753 2009-11-19  Beth Dakin  <bdakin@apple.com>
1754       
1755        Build fix. No review needed.
1756
1757         * rendering/RenderThemeChromiumSkia.cpp:
1758         (WebCore::RenderThemeChromiumSkia::paintCheckbox):
1759         (WebCore::RenderThemeChromiumSkia::paintRadio):
1760         (WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton):
1761         (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration):
1762         (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton):
1763
1764 2009-11-19  Beth Dakin  <bdakin@apple.com>
1765
1766        Build fix. No review needed.
1767
1768         * platform/graphics/qt/StillImageQt.cpp:
1769         (WebCore::StillImage::draw):
1770         * platform/graphics/qt/StillImageQt.h:
1771
1772 2009-11-19  Beth Dakin  <bdakin@apple.com>
1773
1774        Build fix. No review needed.
1775
1776         * rendering/RenderThemeWin.cpp:
1777         (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
1778         (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
1779         (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
1780
1781 2009-11-19  Beth Dakin  <bdakin@apple.com>
1782
1783        Build fix. No review needed.
1784
1785         * plugins/PluginView.cpp:
1786         (WebCore::PluginView::paintMissingPluginIcon):
1787
1788 2009-11-19  Beth Dakin  <bdakin@apple.com>
1789
1790         Build fix. No review needed.
1791
1792         * platform/graphics/win/ImageCGWin.cpp:
1793         (WebCore::BitmapImage::getHBITMAPOfSize):
1794         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
1795
1796 2009-11-19  Beth Dakin  <bdakin@apple.com>
1797
1798         Reviewed by Darin Adler.
1799
1800         Fix for https://bugs.webkit.org/show_bug.cgi?id=31321 Make -webkit-
1801         color-correction work with untagged images
1802
1803         Image's draw(), drawPattern(), and fillWithSolidColor() functions 
1804         now take a ColorSpace. A bunch of classes inherit from Image, so 
1805         draw() and drawPattern() functions there must also take a 
1806         ColorSpace.
1807         * platform/graphics/Image.cpp:
1808         (WebCore::Image::fillWithSolidColor):
1809         (WebCore::Image::drawTiled):
1810         * platform/graphics/Image.h:
1811         * platform/graphics/BitmapImage.h:
1812         * platform/graphics/GeneratedImage.cpp:
1813         (WebCore::GeneratedImage::draw):
1814         (WebCore::GeneratedImage::drawPattern):
1815         * platform/graphics/GeneratedImage.h:
1816         * platform/graphics/cg/PDFDocumentImage.cpp:
1817         (WebCore::PDFDocumentImage::draw):
1818         * platform/graphics/cg/PDFDocumentImage.h:
1819         * svg/graphics/SVGImage.cpp:
1820         (WebCore::SVGImage::draw):
1821         * svg/graphics/SVGImage.h:
1822
1823         All of the drawImage() functions and drawTiled() functions of 
1824         GraphicsContext now take a ColorSpace.
1825         * platform/graphics/GraphicsContext.cpp:
1826         (WebCore::GraphicsContext::drawImage):
1827         (WebCore::GraphicsContext::drawTiledImage):
1828         * platform/graphics/GraphicsContext.h:
1829
1830         This is where the actual work is done.
1831         * platform/graphics/cg/ImageCG.cpp:
1832         (WebCore::imageWithColorSpace): New static function that returns a 
1833         copy of the given image in the given ColorSpace *IF* we should use 
1834         the given ColorSpace. We will ignore the color space if the image 
1835         is tagged and return 0. 
1836         (WebCore::BitmapImage::draw): Now takes a ColorSpace and uses it to 
1837         call imageWithColorSpace(). 
1838         (WebCore::Image::drawPattern): Same.
1839
1840         Attempt to keep all ports building. 
1841         * platform/graphics/cairo/ImageCairo.cpp:
1842         (WebCore::BitmapImage::draw):
1843         (WebCore::Image::drawPattern):
1844         * platform/graphics/haiku/ImageHaiku.cpp:
1845         (WebCore::BitmapImage::draw):
1846         (WebCore::Image::drawPattern):
1847         * platform/graphics/qt/ImageQt.cpp:
1848         (WebCore::Image::drawPattern):
1849         (WebCore::BitmapImage::draw):
1850         * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
1851         * platform/graphics/skia/ImageSkia.cpp:
1852         (WebCore::Image::drawPattern):
1853         (WebCore::BitmapImage::draw):
1854         (WebCore::BitmapImageSingleFrameSkia::draw):
1855         * platform/graphics/wx/ImageWx.cpp:
1856         (WebCore::BitmapImage::draw):
1857         (WebCore::BitmapImage::drawPattern):
1858
1859         Callers of GraphicsContext's drawImage() and drawTiled() functions 
1860         now need to send a ColorSpace.
1861         * html/HTMLCanvasElement.cpp:
1862         (WebCore::HTMLCanvasElement::paint):
1863         * html/canvas/CanvasRenderingContext2D.cpp:
1864         (WebCore::CanvasRenderingContext2D::drawImage):
1865         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
1866         * platform/ScrollView.cpp:
1867         (WebCore::ScrollView::wheelEvent):
1868         * platform/graphics/filters/FEColorMatrix.cpp:
1869         (WebCore::FEColorMatrix::apply):
1870         * platform/graphics/filters/FEComposite.cpp:
1871         (WebCore::FEComposite::apply):
1872         * platform/graphics/filters/SourceGraphic.cpp:
1873         (WebCore::SourceGraphic::apply):
1874         * platform/mac/ScrollbarThemeMac.mm:
1875         (WebCore::ScrollbarThemeMac::paint):
1876         * rendering/RenderBoxModelObject.cpp:
1877         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
1878         (WebCore::RenderBoxModelObject::paintNinePieceImage):
1879         * rendering/RenderImage.cpp:
1880         (WebCore::RenderImage::paintReplaced):
1881         * rendering/RenderLayer.cpp:
1882         (WebCore::RenderLayer::paintResizer):
1883         * rendering/RenderListMarker.cpp:
1884         (WebCore::RenderListMarker::paint):
1885         * rendering/RenderSVGImage.cpp:
1886         (WebCore::RenderSVGImage::paint):
1887         * rendering/RenderWidget.cpp:
1888         (WebCore::RenderWidget::paint):
1889         * svg/graphics/SVGPaintServerPattern.cpp:
1890         (WebCore::SVGPaintServerPattern::setup):
1891         * svg/graphics/SVGResourceFilter.cpp:
1892         (WebCore::SVGResourceFilter::applyFilter):
1893         * svg/graphics/filters/SVGFEMerge.cpp:
1894         (WebCore::FEMerge::apply):
1895         * svg/graphics/filters/SVGFEOffset.cpp:
1896         (WebCore::FEOffset::apply):
1897         * svg/graphics/filters/SVGFETile.cpp:
1898         (WebCore::FETile::apply):
1899
1900 2009-11-19  Avi Drissman  <avi@chromium.org>
1901
1902         Reviewed by Darin Adler.
1903
1904         Properly create a CGImageRef on non-PLATFORM(MAC).
1905         https://bugs.webkit.org/show_bug.cgi?id=27777
1906
1907         * platform/graphics/cg/ImageSourceCG.cpp:
1908         (WebCore::sharedBufferGetBytesAtPosition):
1909         (WebCore::sharedBufferRelease):
1910         (WebCore::ImageSource::setData):
1911         * platform/graphics/cg/ImageSourceCG.h:
1912         * platform/graphics/cg/PDFDocumentImage.cpp:
1913         (WebCore::PDFDocumentImage::dataChanged):
1914
1915 2009-11-19  Oliver Hunt  <oliver@apple.com>
1916
1917         Reviewed by Dave Hyatt.
1918
1919         -webkit-user-drag: element Drag images include overflow decorations from incorrect nodes
1920         https://bugs.webkit.org/show_bug.cgi?id=31656
1921
1922         Make sure we're a child of the painting root before drawing overflow features.
1923
1924         * manual-tests/user-drag-with-decorations.html: Added.
1925         * rendering/RenderBlock.cpp:
1926         (WebCore::RenderBlock::paint):
1927
1928 2009-11-19  Dmitry Titov  <dimich@chromium.org>
1929
1930         Not reviewed, attempt to fix Chromium build.
1931
1932         * rendering/RenderMediaControlsChromium.cpp:
1933         (WebCore::RenderMediaControlsChromium::paintMediaControlsPart): Add new enum values for Show/HideClosedCaptionButton to make it compile.
1934
1935 2009-11-19  Rahul Kuchhal  <kuchhal@chromium.org>
1936
1937         Reviewed by Darin Adler.
1938
1939         Do not assert when a high number is used for roman numerals in lists.
1940         https://bugs.webkit.org/show_bug.cgi?id=31652
1941
1942         Test: fast/lists/ol-start-roman.html
1943
1944         * rendering/RenderListMarker.cpp:
1945         (WebCore::toRoman): Increase the char array size.
1946
1947 2009-11-19  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1948
1949         Rubber-stamped by Oliver Hunt.
1950
1951         Add translatable strings to cover validationMessage, after
1952         r51172. Already covered by existing test.
1953
1954         * platform/gtk/LocalizedStringsGtk.cpp:
1955         (WebCore::validationMessageValueMissingText):
1956         (WebCore::validationMessageTypeMismatchText):
1957         (WebCore::validationMessagePatternMismatchText):
1958         (WebCore::validationMessageTooLongText):
1959         (WebCore::validationMessageRangeUnderflowText):
1960         (WebCore::validationMessageRangeOverflowText):
1961         (WebCore::validationMessageStepMismatchText):
1962
1963 2009-11-19  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1964
1965         Reviewed by Darin Adler.
1966
1967         Remove HAVE(FLOAT_H) guard
1968         https://bugs.webkit.org/show_bug.cgi?id=31661
1969
1970         WebCore has a dependency on float.h, there is
1971         no need to guard float.h.
1972
1973         No new tests as there is no functional change.
1974
1975         * html/HTMLInputElement.cpp: Remove include directive
1976         for float.h as it is included in MathExtras.h already.
1977
1978 2009-11-19  Simon Fraser  <simon.fraser@apple.com>
1979
1980         Reviewed by Pavel Feldman.
1981
1982         Instrumentation should account for painting in compositing layers
1983         https://bugs.webkit.org/show_bug.cgi?id=31674
1984
1985         Add calls to InspectorTimelineAgent for painting into compositing layers,
1986         which is not accounted for in FrameView::paintContents().
1987
1988         * rendering/RenderLayerBacking.cpp:
1989         (WebCore::RenderLayerBacking::paintIntoLayer):
1990         Avoid fetching the FrameView multiple times.
1991         
1992         (WebCore::inspectorTimelineAgent):
1993         (WebCore::RenderLayerBacking::paintContents):
1994
1995 2009-11-19  Eric Carlson  <eric.carlson@apple.com>
1996
1997         Reviewed by Dan Bernstein.
1998
1999         <rdar://problem/7035231>
2000         Support closed caption in <video> element
2001
2002         Test: media/media-captions.html
2003
2004         * WebCore.base.exp:
2005         * accessibility/AccessibilityMediaControls.cpp:
2006         (WebCore::AccessibilityMediaControl::controlTypeName):
2007             Define ShowClosedCaptionsButton and HideClosedCaptionsButton.
2008
2009         * css/CSSPrimitiveValueMappings.h:
2010         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2011             Add MediaToggleClosedCaptionsButtonPart.
2012
2013         * css/CSSSelector.cpp:
2014         (WebCore::CSSSelector::extractPseudoType):
2015             Define and match mediaControlsToggleClosedCaptionsButton.
2016
2017         * css/CSSSelector.h:
2018         (WebCore::CSSSelector::):
2019         * css/CSSStyleSelector.cpp:
2020         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2021             Define and match PseudoMediaControlsToggleClosedCaptions.
2022
2023         * css/CSSValueKeywords.in:
2024             Define and use media-toggle-closed-captions-button.
2025
2026         * css/mediaControls.css:
2027         * css/mediaControlsQuickTime.css:
2028             Add webkit-media-controls-toggle-closed-captions-button.
2029
2030         * html/HTMLMediaElement.cpp:
2031         (WebCore::HTMLMediaElement::HTMLMediaElement): 
2032             Initialize m_closedCaptionsVisible.
2033         (WebCore::HTMLMediaElement::loadInternal): 
2034             Set m_closedCaptionsVisible to false.
2035         (WebCore::HTMLMediaElement::hasClosedCaptions): 
2036         (WebCore::HTMLMediaElement::closedCaptionsVisible): 
2037         (WebCore::HTMLMediaElement::setClosedCaptionsVisible): 
2038             New, captions internal methods.
2039         (WebCore::HTMLMediaElement::setWebkitClosedCaptionsVisible): 
2040         (WebCore::HTMLMediaElement::webkitClosedCaptionsVisible): 
2041         (WebCore::HTMLMediaElement::webkitHasClosedCaptions): 
2042             New, captions DOM API.
2043
2044         * html/HTMLMediaElement.h:
2045         * html/HTMLMediaElement.idl:
2046             Declare methods needed for captions API.
2047
2048         * platform/ThemeTypes.h:
2049             Add MediaToggleClosedCaptionsButtonPart.
2050
2051         * platform/android/LocalizedStringsAndroid.cpp:
2052         (WebCore::localizedMediaControlElementString):
2053         (WebCore::localizedMediaControlElementHelpText):
2054         (WebCore::localizedMediaTimeDescription):
2055             Add empty implmentations.
2056
2057         * platform/graphics/MediaPlayer.cpp:
2058         (WebCore::NullMediaPlayerPrivate::hasClosedCaptions):
2059         (WebCore::NullMediaPlayerPrivate::setClosedCaptionsVisible):
2060             New, empty implementations of media engine closed caption functions.
2061         (WebCore::MediaPlayer::hasClosedCaptions):
2062         (WebCore::MediaPlayer::setClosedCaptionsVisible):
2063             New, call media engine closed caption functions.
2064
2065         * platform/graphics/MediaPlayer.h:
2066         * platform/graphics/MediaPlayerPrivate.h:
2067         (WebCore::MediaPlayerPrivateInterface::hasClosedCaptions):
2068         (WebCore::MediaPlayerPrivateInterface::setClosedCaptionsVisible):
2069             Declare new media engine methods.
2070
2071         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2072         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2073         (WebCore::MediaPlayerPrivate::hasClosedCaptions):
2074         (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible):
2075             New, QTKit implementation of closed caption methods.
2076
2077         * platform/gtk/LocalizedStringsGtk.cpp:
2078         (WebCore::localizedMediaControlElementString):
2079         (WebCore::localizedMediaControlElementHelpText):
2080             Add help text for ShowClosedCaptionsButton and HideClosedCaptionsButton.
2081
2082         * platform/mac/WebCoreSystemInterface.h:
2083         * platform/mac/WebCoreSystemInterface.mm:
2084             Declare and initialize wkQTMovieHasClosedCaptions and wkQTMovieSetShowClosedCaptions.
2085
2086         * rendering/MediaControlElements.cpp:
2087         (WebCore::MediaControlInputElement::MediaControlInputElement):
2088             Deal with MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON.
2089         (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
2090         (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
2091         (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
2092             New, implement the closed caption toggle button,
2093
2094         * rendering/MediaControlElements.h:
2095             Define MediaShowClosedCaptionsButton and MediaHideClosedCaptionsButton,
2096             declare MediaControlToggleClosedCaptionsButtonElement.
2097
2098         * rendering/RenderMedia.cpp:
2099         (WebCore::RenderMedia::styleDidChange):
2100         (WebCore::RenderMedia::createToggleClosedCaptionsButton):
2101         (WebCore::RenderMedia::createStatusDisplay):
2102         (WebCore::RenderMedia::updateControls):
2103         (WebCore::RenderMedia::forwardEvent):
2104         * rendering/RenderMedia.h:
2105             Deal with m_toggleClosedCaptionsButton.
2106
2107         * rendering/RenderTheme.cpp:
2108         (WebCore::RenderTheme::paint):
2109             Deal with MediaToggleClosedCaptionsButtonPart.
2110
2111         * rendering/RenderTheme.h:
2112         * rendering/RenderThemeMac.h:
2113             Declare paintMediaToggleClosedCaptionsButton.
2114
2115         * rendering/RenderThemeMac.mm:
2116         (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton):
2117             New.
2118         (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
2119             Don't render captions toggle button unless we are using the new theme, the
2120             movie has captions, and the movie is in a <video> element since we currently
2121             rely on QTKit to render the captions.
2122
2123         * rendering/style/RenderStyleConstants.h:
2124             Define MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON.
2125
2126 2009-11-19  Kevin Ollivier  <kevino@theolliviers.com>
2127
2128         wx build fix. Add missing header.
2129
2130         * platform/wx/LocalizedStringsWx.cpp:
2131
2132 2009-11-19  Alexey Proskuryakov  <ap@apple.com>
2133
2134         Reviewed by Darin Adler.
2135
2136         https://bugs.webkit.org/show_bug.cgi?id=31634
2137         Ignore realm for proxy protection spaces
2138
2139         Only affects WebSocket proxy authentication, cannot be tested in DRT.
2140
2141         * platform/network/ProtectionSpace.cpp:
2142         (WebCore::operator==):
2143         * platform/network/ProtectionSpaceHash.h:
2144         (WebCore::ProtectionSpaceHash::hash):
2145
2146 2009-11-19  Olivier Goffart  <ogoffart@trolltech.com>
2147
2148         Reviewed by Simon Hausmann.
2149
2150         [Qt] Normalize signal and slot signatures.
2151
2152         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
2153         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
2154
2155 2009-11-19  Alexander Pavlov  <apavlov@chromium.org>
2156
2157         Reviewed by Pavel Feldman.
2158
2159         Store cookie domains in the WebInspector object
2160
2161         The cookie domains have been moved from StoragePanel into WebInspector.
2162         Also, the document URLs are now passed inside the WebInspector.addResource()
2163         payload rather than pushed directly from InspectorController.
2164         https://bugs.webkit.org/show_bug.cgi?id=31627
2165
2166         * inspector/InspectorController.cpp:
2167         (WebCore::InspectorController::populateScriptObjects):
2168         (WebCore::InspectorController::didFinishLoading):
2169         * inspector/InspectorFrontend.cpp:
2170         * inspector/InspectorFrontend.h:
2171         * inspector/InspectorResource.cpp:
2172         (WebCore::InspectorResource::createScriptObject):
2173         (WebCore::InspectorResource::updateScriptObject):
2174         * inspector/front-end/StoragePanel.js:
2175         (WebInspector.StoragePanel.prototype.reset):
2176         (WebInspector.StoragePanel.prototype.addCookieDomain):
2177         * inspector/front-end/inspector.js:
2178         (WebInspector.addResource):
2179         (WebInspector.addCookieDomain):
2180         (WebInspector.reset):
2181
2182 2009-11-19  Zoltan Horvath  <zoltan@webkit.org>
2183
2184         Reviewed by Darin Adler.
2185
2186         Allow custom memory allocation control for the other part of platform directory in WebCore
2187         https://bugs.webkit.org/show_bug.cgi?id=31585
2188
2189         Inherits the following classes from FastAllocBase because these are
2190         instantiated by 'new':
2191
2192         class RegularExpression    - instantiated at: WebCore/page/Frame.cpp:415
2193         class TransformationMatrix - instantiated at: WebCore/rendering/TransformState.cpp:62
2194         class Path                 - instantiated at: WebCore/html/HTMLAreaElement.cpp:73
2195         class FontPlatformData     - instantiated at: WebCore/platform/graphics/qt/FontCacheQt.cpp:188
2196
2197         Inherits the following classes from Noncopyable because these are
2198         instantiated by 'new' and no need to be copyable:
2199
2200         class Cursors                         - instantiated at: WebCore/platform/qt/CursorQt.cpp:146
2201         class NetworkStateNotifier            - instantiated at: WebCore/platform/network/NetworkStateNotifier.cpp:37
2202         struct CrossThreadResourceRequestData - instantiated at: WebCore/platform/network/ResourceRequestBase.cpp:71
2203
2204         class ImageDecoder - its child class is instantiated at: WebCore/platform/graphics/qt/ImageDecoderQt.cpp:46
2205         class MediaPlayerPrivateInterface - its child class is instantiated at: WebCore/platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:119
2206
2207         * platform/graphics/MediaPlayerPrivate.h:
2208         * platform/graphics/Path.h:
2209         * platform/graphics/qt/FontPlatformData.h:
2210         * platform/graphics/transforms/TransformationMatrix.h:
2211         * platform/image-decoders/ImageDecoder.h:
2212         * platform/network/NetworkStateNotifier.h:
2213         * platform/network/ResourceRequestBase.h:
2214         * platform/qt/CursorQt.cpp:
2215         * platform/text/RegularExpression.h:
2216
2217 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2218
2219         Unreviewed.
2220
2221         [Qt] Build fix for QtWebKit after r51172.
2222
2223         * platform/qt/Localizations.cpp:
2224         (WebCore::validationMessageValueMissingText):
2225         (WebCore::validationMessageTypeMismatchText):
2226         (WebCore::validationMessagePatternMismatchText):
2227         (WebCore::validationMessageTooLongText):
2228         (WebCore::validationMessageRangeUnderflowText):
2229         (WebCore::validationMessageRangeOverflowText):
2230         (WebCore::validationMessageStepMismatchText):
2231
2232 2009-11-18  Dan Bernstein  <mitz@apple.com>
2233
2234         Reviewed by Simon Fraser.
2235
2236         Fixed <rdar://problem/7398987> Assertion failure in
2237         RenderLayer::updateClipRects when a plug-in’s enclosing layer is
2238         enclosed by a transformed layer
2239
2240         Tests: fast/layers/clip-rects-transformed-2.html
2241                fast/layers/clip-rects-transformed.html
2242
2243         * rendering/RenderLayer.cpp:
2244         (WebCore::RenderLayer::clippingRoot): Added. Finds the nearest ancestor
2245         that is either transformed or composited. During painting and hit
2246         testing, when a transformed or composited layer is hit, it becomes the
2247         new root layer, which ultimately gets passed to calculateRects().
2248         (WebCore::RenderLayer::childrenClipRect): Pass the clipping root as the
2249         root layer to calculateRects(), and return the bounding box of the
2250         transformed rectangle.
2251         (WebCore::RenderLayer::selfClipRect): Ditto.
2252         * rendering/RenderLayer.h:
2253
2254 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2255
2256         Reviewed by Kenneth Rohde Christiansen.
2257
2258         [Qt] Remove support for Qt v4.3 or older versions
2259         https://bugs.webkit.org/show_bug.cgi?id=29469
2260
2261         No new tests as there is no change if compiled with 
2262         Qt v4.4 or later version.
2263
2264         * WebCore.pro:
2265         * dom/XMLTokenizerQt.cpp:
2266         (WebCore::EntityResolver::resolveUndeclaredEntity):
2267         (WebCore::XMLTokenizer::XMLTokenizer):
2268         (WebCore::XMLTokenizer::~XMLTokenizer):
2269         (WebCore::XMLTokenizer::doWrite):
2270         (WebCore::XMLTokenizer::startDocument):
2271         (WebCore::XMLTokenizer::parseDtd):
2272         * platform/graphics/qt/FontQt.cpp:
2273         * platform/graphics/qt/FontQt43.cpp: Removed.
2274         * platform/graphics/qt/ImageQt.cpp:
2275         * platform/network/ResourceHandleInternal.h:
2276         * platform/network/qt/QNetworkReplyHandler.cpp:
2277         * platform/network/qt/QNetworkReplyHandler.h:
2278         * platform/network/qt/ResourceHandleQt.cpp:
2279         (WebCore::ResourceHandle::start):
2280         (WebCore::ResourceHandle::cancel):
2281         (WebCore::ResourceHandle::loadResourceSynchronously):
2282         (WebCore::ResourceHandle::setDefersLoading):
2283         * platform/network/qt/ResourceRequest.h:
2284         * platform/network/qt/ResourceRequestQt.cpp:
2285         * platform/qt/ClipboardQt.cpp:
2286         (WebCore::ClipboardQt::clearData):
2287         * platform/qt/CookieJarQt.cpp:
2288         (WebCore::cookieJar):
2289         (WebCore::setCookies):
2290         (WebCore::cookies):
2291         (WebCore::cookiesEnabled):
2292         * platform/qt/PlatformKeyboardEventQt.cpp:
2293         (WebCore::keyIdentifierForQtKeyCode):
2294         (WebCore::windowsKeyCodeForKeyEvent):
2295         * platform/text/qt/TextBoundaries.cpp:
2296         * platform/text/qt/TextBreakIteratorQt.cpp:
2297         * plugins/qt/PluginDataQt.cpp:
2298         (WebCore::PluginData::initPlugins):
2299
2300 2009-11-18  Michelangelo De Simone  <micdesim@gmail.com>
2301
2302         Reviewed by Darin Adler.
2303
2304         Fix for <https://bugs.webkit.org/show_bug.cgi?id=27959>.
2305         Support for validationMessage attribute, as per HTML5 specs.
2306
2307         Test: fast/forms/validationMessage.html
2308
2309         * html/HTMLButtonElement.idl: validationMessage attribute
2310         * html/HTMLFieldSetElement.idl: validationMessage attribute
2311         * html/HTMLFormControlElement.cpp:
2312         * html/HTMLFormControlElement.h:
2313         * html/HTMLInputElement.idl: validationMessage attribute
2314         * html/HTMLSelectElement.idl: validationMessage attribute
2315         * html/HTMLTextAreaElement.idl: validationMessage attribute
2316         * html/ValidityState.cpp: new method to retrieve pertinent localized text
2317         * html/ValidityState.h:
2318         * page/mac/WebCoreViewFactory.h:
2319         * platform/LocalizedStrings.h:
2320         * platform/android/LocalizedStringsAndroid.cpp:
2321         * platform/gtk/LocalizedStringsGtk.cpp:
2322         * platform/haiku/LocalizedStringsHaiku.cpp:
2323         * platform/mac/LocalizedStringsMac.mm:
2324         * platform/wx/LocalizedStringsWx.cpp:
2325
2326 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2327
2328         Unreviewed.
2329
2330         Fix a typo. Remove the trailing semicolon
2331         from an include directive after r51137.
2332
2333         No new tests as there is no functional change.
2334
2335         * platform/qt/QWebPageClient.h:
2336
2337 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2338
2339         Unreviewed.
2340
2341         [Qt] Build fix for QtWebKit after r51159.
2342
2343         Include float.h for DBL_MANT_DIG. Not sure why this
2344         is not a problem for other ports.
2345
2346         * html/HTMLInputElement.cpp:
2347
2348 2009-11-19  Roland Steiner  <rolandsteiner@chromium.org>
2349
2350         Reviewed by Darin Adler.
2351
2352         Bug 31574 -  Crashing bug when removing <ruby> element
2353         (https://bugs.webkit.org/show_bug.cgi?id=31574)
2354
2355         Cause of the bug:
2356         1.) RenderBlock::destroy() of the RenderRubyRun called destroyLeftoverChildren()
2357         2.) that called destroy() of the RenderRubyBase(), which in RenderObject::destroy() calls remove()
2358         3.) remove() is being redirected as parent()->removeChild() in RenderObject.h
2359         4.) this triggers the special handling of child removal in RenderRubyRun that
2360             causes it to destroy itself
2361         5.) On returning from all this the renderer crashes when accessing a member
2362             or virtual function on this now illegal object.
2363
2364         I therefore added a flag that tracks if the ruby run is being destroyed.
2365         If so, avoid doing the special handling in removeChild that caused this.
2366         It's not the most elegant solution, but the easiest to implement without
2367         touching unrelated code. Also, it's self-documenting.
2368
2369         Test: fast/ruby/ruby-remove.html
2370
2371         * rendering/RenderRubyRun.cpp:
2372         (WebCore::RenderRubyRun::RenderRubyRun):
2373         (WebCore::RenderRubyRun::destroy):
2374         (WebCore::RenderRubyRun::removeChild):
2375         * rendering/RenderRubyRun.h:
2376
2377 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2378
2379         Reviewed by Kenneth Rohde Christiansen.
2380
2381         [Qt] Remove WTF_USE_JAVASCRIPTCORE_BINDINGS as it is no longer used
2382         https://bugs.webkit.org/show_bug.cgi?id=31643
2383
2384         No new tests as there is no functional change.
2385
2386         * WebCore.pro:
2387
2388 2009-11-18  Yong Li  <yong.li@torchmobile.com>
2389
2390         Reviewed by Eric Seidel.
2391
2392         Implement TextBoundaries for WINCE port.
2393         https://bugs.webkit.org/show_bug.cgi?id=27371
2394
2395         * platform/text/wince/TextBoundariesWince.cpp: Added.
2396
2397 2009-11-18  Yong Li  <yong.li@torchmobile.com>
2398
2399         Reviewed by Eric Seidel.
2400
2401         Implement TextBreakIterator for WINCE port.
2402         https://bugs.webkit.org/show_bug.cgi?id=27371
2403
2404         * platform/text/wince/TextBreakIteratorWince.cpp: Added.
2405
2406 2009-11-18  Kent Tamura  <tkent@chromium.org>
2407
2408         Reviewed by Darin Adler.
2409
2410         Add support for ValidityState.typeMismatch for the following INPUT types:
2411           date datetime datetime-local month time week
2412         https://bugs.webkit.org/show_bug.cgi?id=31342
2413
2414         Tests: fast/forms/ValidityState-typeMismatch-date.html
2415                fast/forms/ValidityState-typeMismatch-datetime.html
2416                fast/forms/ValidityState-typeMismatch-datetimelocal.html
2417                fast/forms/ValidityState-typeMismatch-month.html
2418                fast/forms/ValidityState-typeMismatch-time.html
2419                fast/forms/ValidityState-typeMismatch-week.html
2420
2421         * html/HTMLInputElement.cpp:
2422         (WebCore::HTMLInputElement::formStringToISODateTime): Check the type
2423           validity of the specified type and string using the ISODateTime class.
2424         * html/HTMLInputElement.h:
2425         * html/ValidityState.cpp:
2426         (WebCore::ValidityState::typeMismatch): Check the type validity
2427           for date, datetime, datetime-local, month, time and week with
2428           HTMLInputElemtn::formStringToISODateTime()
2429
2430 2009-11-18  Maciej Stachowiak  <mjs@apple.com>
2431
2432         Reviewed by Oliver Hunt.
2433
2434         Fix REGRESSION (r47022): Performance of DocumentFragment.appendChild is 1000x slower sometimes
2435         https://bugs.webkit.org/show_bug.cgi?id=31237
2436         
2437         Also speeds up Dromaeo DOM Core tests by 1.31x.
2438
2439         * bindings/js/JSNodeCustom.cpp:
2440         (WebCore::JSNode::markChildren): Change marking algorithm to avoid O(N^2) behavior. The subtree
2441         mark bit was no longer effective; instead I changed things so only a node that has no ancestors
2442         with wrappers would do marking; there should be only one in the typical case (the root of the
2443         detached subtree).
2444         * dom/Node.cpp:
2445         (WebCore::Node::Node): Remove now useless m_inSubtreeMark bit and related functions.
2446         * dom/Node.h: ditto
2447
2448 2009-11-18  Darin Adler  <darin@apple.com>
2449
2450         Reviewed by Sam Weinig.
2451
2452         Get rid of the redundant strokeType and fillType data members on
2453         a GraphicsContext as well as the FillOrStrokeType enum. Use
2454         null pointers instead.
2455
2456         * platform/graphics/GraphicsContext.cpp:
2457         (WebCore::GraphicsContext::setStrokeColor): Null out the pattern
2458         and gradient.
2459         (WebCore::GraphicsContext::setFillColor): Ditto.
2460         (WebCore::GraphicsContext::setStrokePattern): Null out the graident.
2461         (WebCore::GraphicsContext::setFillPattern): Ditto.
2462         (WebCore::GraphicsContext::setStrokeGradient): Null out the pattern.
2463         (WebCore::GraphicsContext::setFillGradient): Ditto.
2464
2465         * platform/graphics/GraphicsContextPrivate.h: Remove all that stuff.
2466
2467         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2468         (WebCore::setPlatformFill): Use null checks on fillPattern and
2469         fillGraident instead of a switch statement.
2470         (WebCore::setPlatformStroke): Ditto.
2471
2472         * platform/graphics/cg/GraphicsContextCG.cpp:
2473         (WebCore::GraphicsContext::applyStrokePattern): Removed unneeded get.
2474         (WebCore::GraphicsContext::applyFillPattern): Ditto.
2475         (WebCore::calculateDrawingMode): Use fillPattern and strokePattern
2476         to see if there is a pattern instead of fillType and strokeType.
2477         (WebCore::GraphicsContext::drawPath): Use fillGradient, strokeGradient,
2478         fillPattern, and strokePattern instead of fillType and strokeType.
2479         (WebCore::GraphicsContext::fillPath): Added FIXME about color space that
2480         is used in the pattern and gradient case probably erroneously. Moved
2481         gradient code inside an if statement. Streamlined pattern code and
2482         use an if statement. No switch any more.
2483         (WebCore::GraphicsContext::strokePath): Ditto.
2484         (WebCore::GraphicsContext::fillRect): Ditto.
2485         (WebCore::GraphicsContext::strokeRect): Ditto.
2486
2487         * platform/graphics/qt/GraphicsContextQt.cpp:
2488         (WebCore::GraphicsContext::fillPath): Use null checks on fillPattern and
2489         fillGraident instead of a switch statement.
2490         (WebCore::GraphicsContext::strokePath): Ditto.
2491         (WebCore::GraphicsContext::fillRect): Ditto.
2492
2493         * platform/graphics/wince/GraphicsContextWince.cpp:
2494         (WebCore::GraphicsContext::fillPath): Removed unneeded check of fillType.
2495         (WebCore::GraphicsContext::fillRect): Ditto.
2496
2497 2009-11-18  Kent Tamura  <tkent@chromium.org>
2498
2499         Reviewed by Darin Adler.
2500
2501         Support for step attribute and ValidityStae.stepMismatch for
2502         type=number and range.  stepMismatch will be false if the
2503         difference between the current value and a multiple of the step
2504         value is very small.
2505
2506         Change the behavior of RenderSlider so that it always has a value
2507         rounded to the step attribute value.
2508
2509         https://bugs.webkit.org/show_bug.cgi?id=31331
2510
2511         Tests: fast/forms/ValidityState-stepMismatch-number.html
2512                fast/forms/ValidityState-stepMismatch-range.html
2513                fast/forms/ValidityState-stepMismatch-unsupported.html
2514                fast/forms/input-step.html
2515
2516         * html/HTMLAttributeNames.in: Add "step".
2517         * html/HTMLInputElement.cpp:
2518         (WebCore::HTMLInputElement::stepMismatch):
2519         (WebCore::HTMLInputElement::getStepParameters):
2520         (WebCore::HTMLInputElement::getAllowedValueStep):
2521         * html/HTMLInputElement.h:
2522         * html/HTMLInputElement.idl: Add "step".
2523         * html/ValidityState.cpp:
2524         (WebCore::ValidityState::stepMismatch): Forward to HTMLInputElement::stepMismatch().
2525         * html/ValidityState.h:
2526         * rendering/RenderSlider.cpp:
2527         (WebCore::SliderRange::SliderRange):
2528         (WebCore::SliderRange::clampValue):
2529
2530 2009-11-18  Dmitry Titov  <dimich@chromium.org>
2531
2532         Reviewed by Darin Adler.
2533
2534         Need to ASSERT(isMainThread()) in ThreadShared methods.
2535         https://bugs.webkit.org/show_bug.cgi?id=31637
2536
2537         Added ASSERT(IsMainThread()) to all following methods:
2538         * platform/TreeShared.h:
2539         (WebCore::TreeShared::TreeShared):
2540         (WebCore::TreeShared::~TreeShared):
2541         (WebCore::TreeShared::ref):
2542         (WebCore::TreeShared::deref):
2543         (WebCore::TreeShared::setParent):
2544         (WebCore::TreeShared::parent):
2545
2546 2009-11-18  Girish Ramakrishnan  <girish@forwardbias.in>
2547
2548         Reviewed by Eric Seidel.
2549
2550         Add plugin visibility manual test
2551
2552         https://bugs.webkit.org/show_bug.cgi?id=31542
2553
2554         * manual-tests/plugins/windowed.html:
2555         * manual-tests/plugins/windowless.html:
2556
2557 2009-11-18  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
2558
2559         Reviewed by Pavel Feldman.
2560
2561         Web Inspector - remember last script displayed in Scripts panel
2562         https://bugs.webkit.org/show_bug.cgi?id=27552
2563
2564         Manual test added
2565         
2566         * inspector/front-end/ScriptsPanel.js:
2567         (WebInspector.ScriptsPanel.prototype.showScript):
2568         (WebInspector.ScriptsPanel.prototype.showResource):
2569         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
2570         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
2571         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
2572         (WebInspector.ScriptsPanel.prototype._goBack):
2573         (WebInspector.ScriptsPanel.prototype._goForward):
2574         * manual-tests/inspector/remember-last-script.html: Added.
2575
2576 2009-11-18  Shinichiro Hamaji  <hamaji@chromium.org>
2577
2578         Reviewed by Dimitri Glazkov.
2579
2580         Win chromium is slow to draw transparent texts
2581         https://bugs.webkit.org/show_bug.cgi?id=31258
2582
2583         Create bounded transparency layers instead of just clipping.
2584
2585         No new tests because this is just a performance improvement.
2586
2587         * platform/graphics/chromium/FontChromiumWin.cpp:
2588         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
2589
2590 2009-11-18  Shu Chang  <Chang.Shu@nokia.com>
2591
2592         Reviewed by Eric Seidel.
2593
2594         [Qt] Add support for displaying deleteButton.
2595         https://bugs.webkit.org/show_bug.cgi?id=31560
2596
2597         Test: LayoutTests/editing/deleting/5408255.html
2598
2599         * WebCore.qrc:
2600         * platform/graphics/qt/ImageQt.cpp:
2601         (loadResourcePixmap):
2602
2603 2009-11-18  Mikhail Naganov  <mnaganov@chromium.org>
2604
2605         Reviewed by Eric Seidel.
2606
2607         Fix Qt build without JavaScript debugger.
2608
2609         https://bugs.webkit.org/show_bug.cgi?id=31575
2610
2611         * page/Console.idl:
2612
2613 2009-11-18  Daniel Bates  <dbates@webkit.org>
2614
2615         Reviewed by Dave Hyatt.
2616
2617         https://bugs.webkit.org/show_bug.cgi?id=24971
2618         And
2619         <rdar://problem/7138265>
2620
2621         Fixes an issue where setting the height of a table row programmatically
2622         (via JavaScript) causes the table to be improperly rendered because the
2623         height of each row in the table is not recalculated with respect to the
2624         CSS height property.
2625
2626         In particular, programmatically setting the height of some table row causes
2627         the rows of that table to be rendered with a height equal to the minimum
2628         height required by the cells in that row, regardless of any specified cell
2629         heights. Instead, when RenderTableSection::recalcCells is called, the height
2630         of each row should be set to the CSS height property just as we do in
2631         RenderTableSection::addChild.
2632
2633         Test: fast/table/row-height-recalc2.html
2634
2635         * rendering/RenderTableSection.cpp:
2636         (WebCore::setRowHeightToRowStyleHeightIfNotRelative): Added.
2637         (WebCore::RenderTableSection::addChild): Moved code that set row height into
2638         method WebCore::setRowHeightToRowStyleHeightIfNotRelative.
2639         (WebCore::RenderTableSection::recalcCells): Modified to call
2640         WebCore::setRowHeightToRowStyleHeightIfNotRelative.
2641
2642 2009-11-18  Zoltan Horvath  <zoltan@webkit.org>
2643
2644         Reviewed by Darin Adler.
2645
2646         Allow custom memory allocation control for the part of platform directory in WebCore
2647         https://bugs.webkit.org/show_bug.cgi?id=31473
2648
2649         Inherits the following classes from FastAllocBase because these are
2650         instantiated by 'new':
2651
2652         class  AnimationList         - instantiated at WebCore/rendering/style/StyleRareNonInheritedData.cpp:85
2653         class  Color                 - instantiated at WebCore/rendering/RenderTheme.cpp:48
2654         struct Length                - instantiated at WebCore/platform/Length.cpp:103
2655         class  PlatformKeyboardEvent - instantiated at WebCore/dom/KeyboardEvent.cpp:63
2656         class  ContextMenuItem       - instantiated at WebCore/platform/ContextMenu.cpp:70
2657         class  DeprecatedPtrList     - instantiated at WebCore/rendering/RenderBlock.cpp:2284
2658
2659         Inherits the following classes from Noncopyable because these are
2660         instantiated by 'new' and no need to be copyable:
2661
2662         class  GraphicsContextPrivate - instantiated at WebCore/platform/graphics/GraphicsContext.cpp:78
2663         class  FontCache              - instantiated at WebCore/platform/graphics/qt/FontCacheQt.cpp:43
2664         struct MediaPlayerFactory     - instantiated at WebCore/platform/graphics/MediaPlayer.cpp:163
2665         class  DeprecatedPtrListNode  - instantiated at WebCore/platform/DeprecatedPtrListImpl.cpp:53
2666
2667         * platform/ContextMenuItem.h:
2668         * platform/DeprecatedPtrList.h:
2669         * platform/DeprecatedPtrListImpl.cpp:
2670         * platform/Length.h:
2671         * platform/PlatformKeyboardEvent.h:
2672         * platform/animation/AnimationList.h:
2673         * platform/graphics/Color.h:
2674         * platform/graphics/FontCache.h:
2675         * platform/graphics/GraphicsContextPrivate.h:
2676         * platform/graphics/MediaPlayer.cpp:
2677
2678 2009-11-18  Daniel Bates  <dbates@webkit.org>
2679
2680         Reviewed by Darin Adler.
2681
2682         https://bugs.webkit.org/show_bug.cgi?id=31186
2683
2684         Renames RenderTextControl::m_edited and RenderTextControl::m_userEdited to
2685         m_wasChangedSinceLastChangeEvent and m_lastChangeWasUserEdit, respectively.
2686         These are more descriptive names so as to clear an ambiguity surrounding
2687         their usage. Also, renames associated setters and getters so that they
2688         coincide with the renamed fields.
2689
2690         No functionality was changed. So, no tests were included.
2691
2692         * bindings/objc/DOMHTML.mm:
2693         (-[DOMHTMLInputElement _isEdited]):
2694         (-[DOMHTMLTextAreaElement _isEdited]):
2695         * dom/Document.cpp:
2696         (WebCore::Document::setFocusedNode):
2697         * html/HTMLInputElement.cpp:
2698         (WebCore::HTMLInputElement::defaultEventHandler):
2699         * rendering/RenderTextControl.cpp:
2700         (WebCore::RenderTextControl::RenderTextControl):
2701         (WebCore::RenderTextControl::setInnerTextValue):
2702         (WebCore::RenderTextControl::setLastChangeWasUserEdit): Formerly named setUserEdited.
2703         (WebCore::RenderTextControl::subtreeHasChanged):
2704         * rendering/RenderTextControl.h:
2705         (WebCore::RenderTextControl::wasChangedSinceLastChangeEvent): Formerly named isEdited.
2706         (WebCore::RenderTextControl::setChangedSinceLastChangeEvent): Formerly named setEdited.
2707         (WebCore::RenderTextControl::lastChangeWasUserEdit): Formerly named setUserEdited.
2708         * rendering/RenderTextControlSingleLine.cpp:
2709         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
2710         * wml/WMLInputElement.cpp:
2711         (WebCore::WMLInputElement::defaultEventHandler):
2712
2713 2009-11-18  Tony Chang  <tony@chromium.org>
2714
2715         Reviewed by Adam Barth.
2716
2717         Remove V8CanvasPixelArrayCustom.cpp because it is no longer used by V8.
2718         https://bugs.webkit.org/show_bug.cgi?id=31499
2719
2720         No new tests, just a build cleanup.
2721
2722         * WebCore.gypi:
2723         * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp: Removed.
2724         * bindings/v8/custom/V8CustomBinding.h:
2725
2726 2009-11-18  Kevin Watters  <kevinwatters@gmail.com>
2727
2728         Reviewed by Kevin Ollivier.
2729
2730         Enable wx plugin support using the Windows implementation as a base.
2731         
2732         https://bugs.webkit.org/show_bug.cgi?id=31636
2733
2734         * platform/graphics/GraphicsContext.h:
2735         (WebCore::GraphicsContext::inTransparencyLayer):
2736         * platform/graphics/wx/GraphicsContextWx.cpp:
2737         (WebCore::GraphicsContext::getWindowsContext):
2738         (WebCore::GraphicsContext::releaseWindowsContext):
2739         * platform/wx/FileSystemWx.cpp:
2740         (WebCore::unloadModule):
2741         (WebCore::listDirectory):
2742         * plugins/PluginDatabase.cpp:
2743         * plugins/PluginView.cpp:
2744         (WebCore::PluginView::stop):
2745         (WebCore::PluginView::PluginView):
2746         * plugins/PluginView.h:
2747         * plugins/win/PluginViewWin.cpp:
2748         (windowHandleForPageClient):
2749         (WebCore::PluginView::handleMouseEvent):
2750         (WebCore::PluginView::platformStart):
2751         (WebCore::PluginView::snapshot):
2752         * wscript:
2753
2754 2009-11-18  Andrei Popescu  <andreip@google.com>
2755
2756         Reviewed by Dimitri Glazkov.
2757
2758         [Android] Add shared timer and sound utilities to platform/android
2759         https://bugs.webkit.org/show_bug.cgi?id=31584
2760
2761         No new tests required, this is platform specific code.
2762
2763         * platform/android/SharedTimerAndroid.cpp: Added.
2764         (WebCore::setSharedTimerFiredFunction):
2765         (WebCore::setSharedTimerFireTime):
2766         (WebCore::stopSharedTimer):
2767         * platform/android/SoundAndroid.cpp: Added.
2768         (WebCore::systemBeep):
2769
2770 2009-11-18  Mikhail Naganov  <mnaganov@chromium.org>
2771
2772         Reviewed by Timothy Hatcher.
2773
2774         Fix profile tree nodes loss after focus / restore actions.
2775
2776         Focusing on a node is currently implemented via nodes reattaching
2777         with some caching involved. It seems that not all code was updated
2778         to handle this scenario correctly.
2779
2780         https://bugs.webkit.org/show_bug.cgi?id=31553
2781
2782         * inspector/front-end/BottomUpProfileDataGridTree.js:
2783         (WebInspector.BottomUpProfileDataGridNode):
2784         (WebInspector.BottomUpProfileDataGridNode.prototype._restore):
2785         (WebInspector.BottomUpProfileDataGridNode.prototype._sharedPopulate):
2786         (WebInspector.BottomUpProfileDataGridNode.prototype._willHaveChildren):
2787         * inspector/front-end/DataGrid.js:
2788         (WebInspector.DataGrid.prototype.insertChild):
2789         (WebInspector.DataGridNode.prototype._detach):
2790         (WebInspector.DataGridNode.prototype.savePosition):
2791         (WebInspector.DataGridNode.prototype.restorePosition):
2792         * inspector/front-end/TopDownProfileDataGridTree.js:
2793         (WebInspector.TopDownProfileDataGridTree.prototype.focus):
2794         (WebInspector.TopDownProfileDataGridTree.prototype.restore):
2795
2796 2009-11-18  Carol Szabo  <carol.szabo@nokia.com>
2797
2798         Reviewed by Kenneth Rohde Christiansen.
2799
2800         [Qt] QWebPageClient.h needs in some cases QCursor, but it does not
2801         include it 
2802         https://bugs.webkit.org/show_bug.cgi?id=31527
2803
2804         No new tests as this is just a coding style fix that affects the 
2805         build of some not yet submitted patches (i.e. for bug 30173).
2806
2807         * platform/qt/QWebPageClient.h:
2808
2809 2009-11-18  Nicolas Roard   <nicolas@roard.com>
2810
2811         Reviewed by Dimitri Glazkov.
2812
2813         InspectorTimelineAgent.h should be guarded by ENABLE(INSPECTOR)
2814         https://bugs.webkit.org/show_bug.cgi?id=31504
2815
2816         * inspector/InspectorTimelineAgent.h:Added the guard.
2817
2818 2009-11-18  Jens Alfke  <snej@chromium.org>
2819
2820         Build fix to my previous checkin, for Windows Chromium
2821
2822         * svg/SVGAnimatedProperty.h:
2823         (WebCore::PropertySynchronizer::synchronize): Fix implicit-conversion error on AtomicString.
2824
2825 2009-11-18  Joseph Pecoraro  <joepeck@webkit.org>
2826
2827         Reviewed by Pavel Feldman.
2828
2829         Web Inspector: Directly Access <head> Instead of Searching for It
2830         https://bugs.webkit.org/show_bug.cgi?id=31641
2831         
2832         Changed old access of the head element (document.getElementsByTagName)
2833         to just use the document.head accessor.
2834
2835         * inspector/front-end/FontView.js:
2836         (WebInspector.FontView):
2837         * inspector/front-end/InjectedScript.js:
2838         (InjectedScript.addStyleSelector):
2839         * inspector/front-end/SourceFrame.js:
2840         (WebInspector.SourceFrame.prototype._loaded):
2841         * inspector/front-end/inspector.js:
2842         (windowLoaded):
2843
2844 2009-11-18  Sam Weinig  <sam@webkit.org>
2845
2846         Reviewed by Anders Carlsson.
2847
2848         Fix two Geolocation assertions.
2849
2850         * page/Chrome.cpp:
2851         (WebCore::Chrome::requestGeolocationPermissionForFrame): No need to use PageGroupLoadDeferrer since this
2852         is not called from JS. 
2853         * page/Geolocation.cpp:
2854         (WebCore::Geolocation::Watchers::set): The PassRefPtr was getting nulled out, so we need to put it in
2855         a RefPtr first.
2856
2857 2009-11-18  Alexey Proskuryakov  <ap@apple.com>
2858
2859         Case sensitive file system build fix.
2860
2861         * platform/network/Credential.h: It's not WTF, just wtf.
2862
2863 2009-11-18  Aaron Golden  <agolden@apple.com>
2864
2865         Reviewed by Alexey Proskuryakov.
2866
2867         Add support for certificates to WebCore::Credential so we can convert between NSURLCredential
2868         objects and WebCore::Credential objects without losing certificate information.
2869
2870         * platform/network/Credential.cpp:
2871         (WebCore::Credential::Credential):  Adding a constructor that takes an identity argument and a certificate chain argument
2872         (WebCore::Credential::isEmpty):  Modifying isEmpty to support certificate based credentials (which don't have a username or password)
2873         (WebCore::Credential::identity): Accessor for the m_identity property
2874         (WebCore::Credential::certificates): Accessor for the m_certificates property
2875         (WebCore::Credential::type):  Accessor for the m_type property
2876         (WebCore::operator==):  Modifying == to compare the identity and certificate chains of certificate based credentials.
2877         * platform/network/Credential.h:  Adding new fields to WebCore::Credential to support certificate based credentials.
2878         * platform/network/mac/AuthenticationMac.mm:
2879         (WebCore::mac):  Modifying the mac() conversion method to correctly convert certificate based WebCore::Credential objects.
2880         (WebCore::core):  Modifying the core() conversion method to correctly convert certificate based NSURLCredential objects.
2881
2882 2009-11-18  Dmitry Titov  <dimich@chromium.org>
2883
2884         Reviewed by Eric Seidel.
2885
2886         Reverting r50919 that has introduced a non-thread-safe refcounting in ScriptExecutionContext::postTaskToMainThread.
2887         https://bugs.webkit.org/show_bug.cgi?id=31615
2888
2889         * dom/Document.cpp:
2890         (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer):
2891         (WebCore::ScriptExecutionContextTaskTimer::fired):
2892         (WebCore::PerformTaskContext::PerformTaskContext):
2893         (WebCore::performTask):
2894         (WebCore::Document::postTask):
2895         * dom/ScriptExecutionContext.cpp:
2896         * dom/ScriptExecutionContext.h:
2897
2898 2009-11-18  Jens Alfke  <snej@chromium.org>
2899
2900         Reviewed by Darin Adler.
2901
2902         Eliminate unnecessary String-->AtomicString conversions from generated V8 bindings,
2903         by causing the right v8-to-WebCore conversion function to be called for every parameter.
2904         This no longer requires any IDL metadata, so I've removed the [HintAtomic] annotations.
2905         To enforce correctness, I added a mode that disables implicit
2906         String-->AtomicString conversions while compiling the generated bindings.
2907         https://bugs.webkit.org/show_bug.cgi?id=31168
2908
2909         * bindings/scripts/CodeGeneratorV8.pm:  Generate usage of V8Parameter class.
2910         * bindings/v8/DerivedSourcesAllInOne.cpp:  Enable NO_IMPLICIT_ATOMICSTRING.
2911         * bindings/v8/V8Binding.h:  Add V8Parameter class.
2912         * css/WebKitCSSKeyframesRule.h:  Make AtomicString conversions explicit.
2913         * dom/Document.idl:  Remove obsolete [HintAtomic] annotation.
2914         * platform/text/AtomicString.h:  Added NO_IMPLICIT_ATOMICSTRING option.
2915         * svg/SVGAnimatedTemplate.h:  Change some return types to String to avoid implicit conversion.
2916         * svg/SVGAnimatedProperty.h: Adapt to changed return types in SVGAnimatedTemplate.
2917
2918 2009-11-18  Darin Adler  <darin@apple.com>
2919
2920         Reviewed by Dan Bernstein.
2921
2922         Move FillOrStrokeType out of public header.
2923
2924         * platform/graphics/GraphicsContext.h: Updated copyright date to cover
2925         some years we published Apple changes, sorted forward declarations,
2926         removed FillOrStrokeType enum.
2927         * platform/graphics/GraphicsContextPrivate.h: Updated copyright date
2928         to cover some years we published Apple changes, sorted includes,
2929         moved FillOrStrokeType enum here.
2930
2931 2009-11-18  Chris Marrin  <cmarrin@apple.com>
2932
2933         Reviewed by Simon Fraser.
2934
2935         Add Settings for WebKitShowDebugBorders and WebKitShowRepaintCounter
2936         https://bugs.webkit.org/show_bug.cgi?id=31601
2937
2938         These are used to debug accelerated compositing layers. I removed
2939         the platform specific code from GraphicsLayerCA.mm and added calls
2940         to GraphicsLayerClient to get it from the higher levels. The values 
2941         now get cached in RenderLayerCompositing and are queried from there
2942         by RenderLayerBacking (which implements the GraphicsLayerClient interface).
2943
2944         * WebCore.base.exp:
2945         * page/FrameView.cpp:
2946         (WebCore::FrameView::updateCompositingLayers):
2947         * page/Settings.cpp:
2948         (WebCore::Settings::Settings):
2949         (WebCore::Settings::setShowDebugBorders):
2950         (WebCore::Settings::setShowRepaintCounter):
2951         * page/Settings.h:
2952         (WebCore::Settings::showDebugBorders):
2953         (WebCore::Settings::showRepaintCounter):
2954         * platform/graphics/GraphicsLayer.h:
2955         (WebCore::GraphicsLayer::showDebugBorders):
2956         (WebCore::GraphicsLayer::showRepaintCounter):
2957         * platform/graphics/GraphicsLayerClient.h:
2958         * platform/graphics/mac/GraphicsLayerCA.mm:
2959         * rendering/RenderLayerBacking.cpp:
2960         (WebCore::RenderLayerBacking::showDebugBorders):
2961         (WebCore::RenderLayerBacking::showRepaintCounter):
2962         * rendering/RenderLayerBacking.h:
2963         * rendering/RenderLayerCompositor.cpp:
2964         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
2965         (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags):
2966         * rendering/RenderLayerCompositor.h:
2967         (WebCore::RenderLayerCompositor::showDebugBorders):
2968         (WebCore::RenderLayerCompositor::showRepaintCounter):
2969
2970 2009-11-18  Pavel Feldman  <pfeldman@chromium.org>
2971
2972         Reviewed by Timothy Hatcher.
2973
2974         Web Inspector: Get rid of metrics and properties sidebars'
2975         flickering.
2976
2977         https://bugs.webkit.org/show_bug.cgi?id=31629
2978
2979         * inspector/front-end/MetricsSidebarPane.js:
2980         * inspector/front-end/PropertiesSidebarPane.js:
2981
2982 2009-11-17  Brian Weinstein  <bweinstein@apple.com>
2983
2984         Reviewed by Pavel Feldman.
2985
2986         Fixes <http://webkit.org/b/31606>.
2987         Web Inspector: Enter/Return key should enter edit mode for Editable Fields.
2988         
2989         This implements Enter starting editing mode in an editable DataGrid. If the
2990         DataGrid is editable and the user hits return, startEditing the first child
2991         of the selected node. Also refactored some editing functions to take an 
2992         event target instead of the event itself, because the functions only needed
2993         the target. Lastly, added had return in editing mode stop propogation, because
2994         when enter was hit to confirm text, it would propagate back to the datagrid
2995         and try to start editing again.
2996
2997         * inspector/front-end/DataGrid.js:
2998         (WebInspector.DataGrid.prototype._ondblclick):
2999         (WebInspector.DataGrid.prototype._startEditing):
3000         (WebInspector.DataGrid.prototype.handleKeyEvent):
3001         (WebInspector.DataGrid.prototype.dataGridNodeFromEvent):
3002         (WebInspector.DataGrid.prototype._mouseDownInDataTable):
3003         (WebInspector.DataGrid.prototype._clickInDataTable):
3004         * inspector/front-end/inspector.js:
3005         (WebInspector.startEditing.element.handleKeyEvent):
3006         (WebInspector.startEditing):
3007
3008 2009-11-18  Ben Murdoch  <benm@google.com>
3009
3010         Reviewed by Darin Adler.
3011
3012         HTMLAnchorElement is inconsistent with its internal handling of the value returned for the href attribute.
3013         https://bugs.webkit.org/show_bug.cgi?id=31593
3014
3015         Test: fast/dom/HTMLAnchorElement/set-href-attribute-whitespace.html
3016
3017         * html/HTMLAnchorElement.cpp:
3018         (WebCore::HTMLAnchorElement::href): Add call to deprecatedParseURL.
3019
3020 2009-11-18  Pavel Feldman  <pfeldman@chromium.org>
3021
3022         Not reviewed. Touch InspectorController so that frontend
3023         JS files are deployed on Windows.
3024
3025         * inspector/InspectorController.cpp:
3026
3027 2009-11-18  Pavel Feldman  <pfeldman@chromium.org>
3028
3029         Reviewed by Timothy Hatcher.
3030
3031         Web Inspector: clone timeline records array instead of
3032         copying reference on invalidate all.
3033
3034         https://bugs.webkit.org/show_bug.cgi?id=31596
3035
3036         * inspector/front-end/AbstractTimelinePanel.js:
3037         (WebInspector.AbstractTimelinePanel.prototype.invalidateAllItems):
3038
3039 2009-11-18  Simon Fraser  <simon.fraser@apple.com>
3040
3041         Reviewed by Dan Bernstein.
3042
3043         Elements don't drop out of compositing layers when animation ends
3044         https://bugs.webkit.org/show_bug.cgi?id=31613
3045         <rdar://problem/7402913>
3046
3047         Avoid setting the mustOverlapCompositedLayers flag on RenderLayers which
3048         are compositing anyway for other reasons. Doing so can cause those layers
3049         to stay in compositing mode even after animations finish, because needsToBeComposited()
3050         continues to return true.
3051         
3052         No new tests because it's not possible to determine which elements are in
3053         compositing layers from DRT output.
3054
3055         * rendering/RenderLayerCompositor.cpp:
3056         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
3057
3058 2009-11-18  Girish Ramakrishnan  <girish@forwardbias.in>
3059
3060         Reviewed by Tor Arne Vestbø.
3061
3062         [Qt] Mac Plugins: Remove null timer
3063         
3064         A null timer was used to send mouse move events. Instead, we now use
3065         move events to send nullEvent. This brings down CPU usage by 20-30%.
3066         
3067         https://bugs.webkit.org/show_bug.cgi?id=31624
3068
3069         * plugins/PluginView.h:
3070         * plugins/mac/PluginViewMac.cpp:
3071         (WebCore::PluginView::platformStart):
3072         (WebCore::PluginView::handleMouseEvent):
3073
3074 2009-11-18  Benjamin Poulain  <benjamin.poulain@nokia.com>
3075
3076         Reviewed by Simon Hausmann.
3077
3078         [Qt] WebKit crashes when loading certain SVG images
3079
3080         Check if the familly exist before creating the PlatformData from it.
3081
3082         https://bugs.webkit.org/show_bug.cgi?id=29443
3083
3084         Test: svg/text/text-font-invalid.html
3085
3086         * platform/graphics/qt/FontFallbackListQt.cpp:
3087         (WebCore::FontFallbackList::fontDataAt):
3088
3089 2009-11-17  Nicolas Weber  <thakis@chromium.org>
3090
3091         Reviewed by Darin Fisher.
3092
3093         Fix crash in Chromium/Mac where dropdowns weren't dismissed correctly
3094         after navigation.
3095         https://bugs.webkit.org/show_bug.cgi?id=31609
3096
3097         * platform/chromium/PopupMenuChromium.cpp:
3098         (WebCore::PopupContainer::showExternal): Set parent for external
3099         dropdowns, so that |PopupListBox::hidePopup()| can successfully notify
3100         its parent's client.
3101
3102 2009-11-17  Hayato Ito  <hayato@google.com>
3103
3104         Reviewed by Darin Adler.
3105
3106         Avoid infinite mutual recursion when deeply nested tags are loaded
3107         https://bugs.webkit.org/show_bug.cgi?id=30651
3108
3109         Test: fast/parser/block-nesting-cap-table.html
3110
3111         * html/HTMLParser.cpp:
3112         (WebCore::HTMLParser::parseToken):
3113         (WebCore::tagPriorityOfNode):
3114         (WebCore::HTMLParser::limitBlockDepth):
3115         (WebCore::HTMLParser::insertNodeAfterLimitBlockDepth):
3116         (WebCore::HTMLParser::insertNode):
3117         * html/HTMLParser.h:
3118
3119 2009-11-17  Brent Fulgham  <bfulgham@webkit.org>
3120
3121         Rubber-stamped by Alexey Proskuryakov.
3122
3123         Final clean-ups for minor coding standard violations.
3124         https://bugs.webkit.org/show_bug.cgi?id=26102.
3125
3126         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3127
3128 2009-11-17  Johnny Ding  <jnd@chromium.org>
3129
3130         Reviewed by Darin Adler.
3131
3132         In all valid script tags for JavaScript, the event handler in <script...for> should not get executed.
3133         https://bugs.webkit.org/show_bug.cgi?id=31567
3134
3135         * dom/ScriptElement.cpp:
3136         (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
3137
3138 2009-11-17  Pavel Feldman  <pfeldman@chromium.org>
3139
3140         Reviewed by Timothy Hatcher.
3141
3142         Web Inspector: Make DRT show web inspector for tests in inspector/ folder.
3143         - Updated DRT to show/close inspector for all tests under /inspector
3144         - Introduced LayoutTestController::setTimelineProfilingEnabled and
3145           WebInspector::setTimelineProfilingEnabled beside setJavaScriptProfilingEnabled
3146         - Removed reload on each inspector test
3147         - Renamed fast/inspector to fast/inspector-support in order not to trigger
3148         inspector for those.
3149         - Reimplemented timeline tests in order to get rid of reload there.
3150         - Moved tests that don't require harness into the fast group.
3151
3152         https://bugs.webkit.org/show_bug.cgi?id=31472
3153
3154         * WebCore.Inspector.exp:
3155         * inspector/front-end/TimelinePanel.js:
3156         (WebInspector.TimelinePanel.prototype._formatRecord):
3157
3158 2009-11-17  Andrei Popescu  <andreip@google.com>
3159
3160         Reviewed by Dimitri Glazkov.
3161
3162         [Android] Android is missing the implementation of the GeolocationService iface.
3163         https://bugs.webkit.org/show_bug.cgi?id=31554
3164
3165         No new tests required as this is platform specific code.
3166
3167         * platform/android/GeolocationServiceAndroid.cpp: Added.
3168         (WebCore::GeolocationServiceAndroid::create):
3169         (WebCore::GeolocationServiceAndroid::GeolocationServiceAndroid):
3170         (WebCore::GeolocationServiceAndroid::startUpdating):
3171         (WebCore::GeolocationServiceAndroid::stopUpdating):
3172         (WebCore::GeolocationServiceAndroid::suspend):
3173         (WebCore::GeolocationServiceAndroid::resume):
3174         (WebCore::GeolocationServiceAndroid::newPositionAvailable):
3175         (WebCore::GeolocationServiceAndroid::newErrorAvailable):
3176         (WebCore::GeolocationServiceAndroid::timerFired):
3177         (WebCore::GeolocationServiceAndroid::isPositionMovement):
3178         (WebCore::GeolocationServiceAndroid::isPositionMoreAccurate):
3179         (WebCore::GeolocationServiceAndroid::isPositionMoreTimely):
3180         * platform/android/GeolocationServiceAndroid.h: Added.
3181         (WebCore::GeolocationServiceAndroid::~GeolocationServiceAndroid):
3182         (WebCore::GeolocationServiceAndroid::lastPosition):
3183         (WebCore::GeolocationServiceAndroid::lastError):
3184         * platform/android/GeolocationServiceBridge.cpp: Added.
3185         (WebCore::):
3186         (WebCore::GeolocationServiceBridge::GeolocationServiceBridge):
3187         (WebCore::GeolocationServiceBridge::~GeolocationServiceBridge):
3188         (WebCore::GeolocationServiceBridge::start):
3189         (WebCore::GeolocationServiceBridge::stop):
3190         (WebCore::GeolocationServiceBridge::setEnableGps):
3191         (WebCore::GeolocationServiceBridge::newLocationAvailable):
3192         (WebCore::GeolocationServiceBridge::newErrorAvailable):
3193         (WebCore::GeolocationServiceBridge::toGeoposition):
3194         (WebCore::GeolocationServiceBridge::startJavaImplementation):
3195         (WebCore::GeolocationServiceBridge::stopJavaImplementation):
3196         * platform/android/GeolocationServiceBridge.h: Added.
3197
3198 2009-11-16  Kent Tamura  <tkent@chromium.org>
3199
3200         Unreviewd build fix.
3201
3202         - Fix typo in WebCore.vcproj.
3203         - Intlude limits.h for INT_MAX.
3204         - Enclose with parenthesis to suspress warning.
3205
3206         * WebCore.vcproj/WebCore.vcproj:
3207         * html/ISODateTime.cpp:
3208         (WebCore::ISODateTime::addDay):
3209
3210 2009-11-16  Robin Dunn  <robin@alldunn.com>
3211
3212         Reviewed by Kevin Ollivier.
3213
3214         Make sure wx scrollbar drawing code factors in transforms when switching backends,
3215         fix calcs for scrollbar length, and tweak the Mac scrollbar tracking rects.
3216         
3217         https://bugs.webkit.org/show_bug.cgi?id=31570
3218
3219         * platform/wx/ScrollbarThemeWx.cpp:
3220         (WebCore::ScrollbarThemeWx::minimumThumbLength):
3221         (WebCore::ScrollbarThemeWx::splitTrack):
3222         (WebCore::ScrollbarThemeWx::forwardButtonRect):
3223         * platform/wx/ScrollbarThemeWx.h:
3224         * platform/wx/wxcode/gtk/scrollbar_render.cpp:
3225         (wxRenderer_DrawScrollbar):
3226         * platform/wx/wxcode/scrollbar_render.h:
3227         (calcThumbStartAndLength):
3228         * platform/wx/wxcode/win/scrollbar_render.cpp:
3229         (wxRenderer_DrawScrollbar):
3230
3231 2009-11-16  Kent Tamura  <tkent@chromium.org>
3232
3233         Reviewed by David Levin.
3234
3235         Introduce WebCore::ISODateTime class.
3236         https://bugs.webkit.org/show_bug.cgi?id=31340
3237
3238         This class represents a value of date/time types of the HTML5 INPUT
3239         element, and has some parsing methods for ISO 8601.
3240
3241         This change has no tests because the class is not used yet.
3242
3243         * GNUmakefile.am: Add ISODateTime.cpp and ISODateTime.h.
3244         * WebCore.gypi: ditto.
3245         * WebCore.pro: ditto.
3246         * WebCore.vcproj/WebCore.vcproj: ditto.
3247         * WebCore.xcodeproj/project.pbxproj: ditto.
3248         * WebCoreSources.bkl: ditto.
3249         * html/ISODateTime.cpp: Added. Implementation of WebCore::ISODateTime class.
3250         (WebCore::isLeapYear):
3251         (WebCore::maxDayOfMonth):
3252         (WebCore::dayOfWeek):
3253         (WebCore::ISODateTime::maxWeekNumberInYear):
3254         (WebCore::countDigits):
3255         (WebCore::toInt):
3256         (WebCore::ISODateTime::parseYear): Private helper for parseDate() and parseWeek().
3257         (WebCore::ISODateTime::addDay): Private helper for parseTimeZone().
3258         (WebCore::ISODateTime::addMinute): ditto.
3259         (WebCore::ISODateTime::parseTimeZone): Private helper for parseDateTime().
3260         (WebCore::ISODateTime::parseMonth): Parser for <input type=month>.
3261         (WebCore::ISODateTime::parseDate): Parser for <input type=date>.
3262         (WebCore::ISODateTime::parseWeek): Parser for <input type=week>.
3263         (WebCore::ISODateTime::parseTime): Parser for <input type=time>.
3264         (WebCore::ISODateTime::parseDateTimeLocal): Parser for <input type=datetime-local>.
3265         (WebCore::ISODateTime::parseDateTime): Parser for <input type=datetime>.
3266         * html/ISODateTime.h: Added.  Declare WebCore::ISODateTime class.
3267         (WebCore::ISODateTime::ISODateTime):
3268         (WebCore::ISODateTime::millisecond):
3269         (WebCore::ISODateTime::second):
3270         (WebCore::ISODateTime::minute):
3271         (WebCore::ISODateTime::hour):
3272         (WebCore::ISODateTime::monthDay):
3273         (WebCore::ISODateTime::month):
3274         (WebCore::ISODateTime::fullYear):
3275         (WebCore::ISODateTime::week):
3276
3277 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
3278
3279         Fix a typo in previous commit.
3280
3281         * platform/network/cf/SocketStreamHandleCFNet.cpp: #ifdef, not #if.
3282
3283 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
3284
3285         Fix a typo in previous commit.
3286
3287         * platform/network/cf/SocketStreamHandleCFNet.cpp:
3288
3289 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
3290
3291         Tiger build fix.
3292
3293         * platform/network/cf/SocketStreamHandleCFNet.cpp: Define CFN_EXPORT, as this macro was named
3294         differently in Tiger CFNetwork.
3295
3296 2009-11-16  Dimitri Glazkov  <dglazkov@chromium.org>
3297
3298         Reviewed by Darin Fisher.
3299
3300         [KURLGoogle] setHostAndPort doesn't handle arguments without port correctly.
3301
3302         Fix a bug in the code that was dormant until http://trac.webkit.org/changeset/50784.
3303
3304         Covered by existing test: LayoutTests/fast/dom/HTMLAnchorElement/set-href-attribute-host.html
3305
3306         * platform/KURLGoogle.cpp:
3307         (WebCore::KURL::setHostAndPort): Added handling of arguments without port specified.
3308
3309 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
3310
3311         Rubber-stamped by Jon Honeycutt.
3312
3313         A better Windows build fix
3314
3315         * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams):
3316         Use a macro that inserts __declspec(dllimport) when appropriate for CFNetwork imports.
3317
3318 2009-11-16  Yael Aharon  <yael.aharon@nokia.com>
3319
3320         Reviewed by Darin Adler.
3321
3322         Rename protocolIsValid to isValidProtocol.
3323         https://bugs.webkit.org/show_bug.cgi?id=31503
3324
3325         This name change was suggested in https://bugs.webkit.org/show_bug.cgi?id=29972#c19.
3326
3327         No new tests since no new functionality was introduced.
3328
3329         * html/HTMLAnchorElement.cpp:
3330         (WebCore::HTMLAnchorElement::setProtocol):
3331         * platform/KURL.cpp:
3332         (WebCore::isValidProtocol):
3333         * platform/KURL.h:
3334         * platform/KURLGoogle.cpp:
3335         (WebCore::isValidProtocol):
3336
3337 2009-11-16  Chris Fleizach  <cfleizach@apple.com>
3338
3339         Reviewed by Beth Dakin.
3340
3341         AX: aria-labelledby duplicates some of its WAI-ARIA label
3342         https://bugs.webkit.org/show_bug.cgi?id=31565
3343
3344         Test: accessibility/aria-labelledby-overrides-label.html
3345
3346         * accessibility/AccessibilityRenderObject.cpp:
3347         (WebCore::AccessibilityRenderObject::hasTextAlternative):
3348         (WebCore::AccessibilityRenderObject::exposesTitleUIElement):
3349         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
3350         * accessibility/AccessibilityRenderObject.h:
3351
3352 2009-11-16  Nate Chapin  <japhet@chromium.org>
3353
3354         Reviewed by Darin Fisher.
3355
3356         Handle the case of a null NPObject* in NPN_SetException in
3357         the V8 bindings.  This allow out of process plugins calling
3358         NPN_SetException to just send null instead of sending an
3359         NPObject* that would be an address in a different 
3360         process's memory space.
3361
3362         https://bugs.webkit.org/show_bug.cgi?id=31561
3363
3364         * bindings/v8/NPV8Object.cpp:
3365         (_NPN_SetException): Allow null NPObject* and just throw a general error.
3366
3367 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
3368
3369         Windows build fix.
3370
3371         * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams):
3372         Disable CONNECT proxies on Windows until WebKitSupportLibrary includes support for those.
3373
3374 2009-11-14  Yael Aharon  <yael.aharon@nokia.com>
3375
3376         Reviewed by Kenneth Rohde Christiansen.
3377
3378         [Qt] ASSERT failure while running DRT
3379         https://bugs.webkit.org/show_bug.cgi?id=30978
3380
3381         Add needed Structure typeInfo flags to QtRuntimeObjectImpl and QtRuntimeMethod.
3382         These flags are needed after r49649, where HasDefaultmark was changed to OverrideMarkChildren.
3383
3384         * bridge/qt/qt_instance.cpp:
3385         (JSC::Bindings::QtRuntimeObjectImp::createStructure):
3386         * bridge/qt/qt_runtime.h:
3387         (JSC::Bindings::QtRuntimeMethod::createStructure):
3388
3389 2009-11-16  Mark Rowe  <mrowe@apple.com>
3390
3391         Attempt to fix the build.  Land a file that was missing from r51049.
3392
3393         * bindings/js/JSWebGLArrayHelper.h: Copied from WebCore/html/canvas/WebGLByteArray.idl.
3394         (WebCore::setWebGLArrayFromArray):
3395
3396 2009-11-16  Kenneth Russell  <kbr@google.com>
3397
3398         Reviewed by Oliver Hunt.
3399
3400         Update API of WebGLArray and friends
3401         https://bugs.webkit.org/show_bug.cgi?id=31175
3402
3403         * bindings/js/JSWebGLArrayCustom.cpp:
3404         (WebCore::toJS):
3405         * bindings/js/JSWebGLArrayHelper.h: Added.
3406         (WebCore::setWebGLArrayFromArray):
3407         * bindings/js/JSWebGLByteArrayCustom.cpp:
3408         (WebCore::JSWebGLByteArray::set):
3409         * bindings/js/JSWebGLFloatArrayCustom.cpp:
3410         (WebCore::JSWebGLFloatArray::set):
3411         * bindings/js/JSWebGLIntArrayCustom.cpp:
3412         (WebCore::JSWebGLIntArray::set):
3413         * bindings/js/JSWebGLShortArrayCustom.cpp:
3414         (WebCore::JSWebGLShortArray::set):
3415         * bindings/js/JSWebGLUnsignedByteArrayCustom.cpp:
3416         (WebCore::JSWebGLUnsignedByteArray::set):
3417         * bindings/js/JSWebGLUnsignedIntArrayCustom.cpp:
3418         (WebCore::JSWebGLUnsignedIntArray::set):
3419         * bindings/js/JSWebGLUnsignedShortArrayCustom.cpp:
3420         (WebCore::JSWebGLUnsignedShortArray::set):
3421         * bindings/scripts/CodeGeneratorV8.pm:
3422         * bindings/v8/V8DOMWrapper.cpp:
3423         (WebCore::V8DOMWrapper::convertToV8Object):
3424         * bindings/v8/custom/V8CustomBinding.h:
3425         * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
3426         (WebCore::CALLBACK_FUNC_DECL):
3427         * bindings/v8/custom/V8WebGLArrayCustom.h:
3428         (WebCore::constructWebGLArray):
3429         (WebCore::getWebGLArrayElement):
3430         (WebCore::setWebGLArrayFromArray):
3431         (WebCore::setWebGLArray):
3432         * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
3433         (WebCore::CALLBACK_FUNC_DECL):
3434         * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
3435         (WebCore::CALLBACK_FUNC_DECL):
3436         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
3437         (WebCore::CALLBACK_FUNC_DECL):
3438         * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
3439         (WebCore::CALLBACK_FUNC_DECL):
3440         * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
3441         (WebCore::CALLBACK_FUNC_DECL):
3442         * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
3443         (WebCore::CALLBACK_FUNC_DECL):
3444         * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
3445         (WebCore::CALLBACK_FUNC_DECL):
3446         * html/canvas/WebGLArray.cpp:
3447         (WebCore::WebGLArray::WebGLArray):
3448         (WebCore::WebGLArray::~WebGLArray):
3449         (WebCore::WebGLArray::setImpl):
3450         * html/canvas/WebGLArray.h:
3451         (WebCore::WebGLArray::isByteArray):
3452         (WebCore::WebGLArray::isUnsignedByteArray):
3453         (WebCore::WebGLArray::isShortArray):
3454         (WebCore::WebGLArray::isUnsignedShortArray):
3455         (WebCore::WebGLArray::isIntArray):
3456         (WebCore::WebGLArray::isUnsignedIntArray):
3457         (WebCore::WebGLArray::isFloatArray):
3458         (WebCore::WebGLArray::buffer):
3459         (WebCore::WebGLArray::baseAddress):
3460         (WebCore::WebGLArray::byteOffset):
3461         * html/canvas/WebGLArray.idl:
3462         * html/canvas/WebGLArrayBuffer.cpp:
3463         (WebCore::WebGLArrayBuffer::create):
3464         (WebCore::WebGLArrayBuffer::WebGLArrayBuffer):
3465         (WebCore::WebGLArrayBuffer::data):
3466         (WebCore::WebGLArrayBuffer::byteLength):
3467         (WebCore::WebGLArrayBuffer::~WebGLArrayBuffer):
3468         * html/canvas/WebGLArrayBuffer.h:
3469         * html/canvas/WebGLByteArray.cpp:
3470         (WebCore::WebGLByteArray::create):
3471         (WebCore::WebGLByteArray::byteLength):
3472         (WebCore::WebGLByteArray::slice):
3473         (WebCore::WebGLByteArray::set):
3474         * html/canvas/WebGLByteArray.h:
3475         (WebCore::WebGLByteArray::isByteArray):
3476         (WebCore::WebGLByteArray::data):
3477         (WebCore::WebGLByteArray::set):
3478         (WebCore::WebGLByteArray::get):
3479         (WebCore::WebGLByteArray::item):
3480         * html/canvas/WebGLByteArray.idl:
3481         * html/canvas/WebGLFloatArray.cpp:
3482         (WebCore::WebGLFloatArray::create):
3483         (WebCore::WebGLFloatArray::WebGLFloatArray):
3484         (WebCore::WebGLFloatArray::length):
3485         (WebCore::WebGLFloatArray::byteLength):
3486         (WebCore::WebGLFloatArray::slice):
3487         (WebCore::WebGLFloatArray::set):
3488         * html/canvas/WebGLFloatArray.h:
3489         (WebCore::WebGLFloatArray::isFloatArray):
3490         (WebCore::WebGLFloatArray::data):
3491         (WebCore::WebGLFloatArray::set):
3492         (WebCore::WebGLFloatArray::get):
3493         (WebCore::WebGLFloatArray::item):
3494         * html/canvas/WebGLFloatArray.idl:
3495         * html/canvas/WebGLIntArray.cpp:
3496         (WebCore::WebGLIntArray::create):
3497         (WebCore::WebGLIntArray::WebGLIntArray):
3498         (WebCore::WebGLIntArray::length):
3499         (WebCore::WebGLIntArray::byteLength):
3500         (WebCore::WebGLIntArray::slice):
3501         (WebCore::WebGLIntArray::set):
3502         * html/canvas/WebGLIntArray.h:
3503         (WebCore::WebGLIntArray::isIntArray):
3504         (WebCore::WebGLIntArray::data):
3505         (WebCore::WebGLIntArray::set):
3506         (WebCore::WebGLIntArray::get):
3507         (WebCore::WebGLIntArray::item):
3508         * html/canvas/WebGLIntArray.idl:
3509         * html/canvas/WebGLShortArray.cpp:
3510         (WebCore::WebGLShortArray::create):
3511         (WebCore::WebGLShortArray::WebGLShortArray):
3512         (WebCore::WebGLShortArray::length):
3513         (WebCore::WebGLShortArray::byteLength):
3514         (WebCore::WebGLShortArray::slice):
3515         (WebCore::WebGLShortArray::set):
3516         * html/canvas/WebGLShortArray.h:
3517         (WebCore::WebGLShortArray::isShortArray):
3518         (WebCore::WebGLShortArray::data):
3519         (WebCore::WebGLShortArray::set):
3520         (WebCore::WebGLShortArray::get):
3521         (WebCore::WebGLShortArray::item):
3522         * html/canvas/WebGLShortArray.idl:
3523         * html/canvas/WebGLUnsignedByteArray.cpp:
3524         (WebCore::WebGLUnsignedByteArray::create):
3525         (WebCore::WebGLUnsignedByteArray::WebGLUnsignedByteArray):
3526         (WebCore::WebGLUnsignedByteArray::length):
3527         (WebCore::WebGLUnsignedByteArray::byteLength):
3528         (WebCore::WebGLUnsignedByteArray::slice):
3529         (WebCore::WebGLUnsignedByteArray::set):
3530         * html/canvas/WebGLUnsignedByteArray.h:
3531         (WebCore::WebGLUnsignedByteArray::isUnsignedByteArray):
3532         (WebCore::WebGLUnsignedByteArray::data):
3533         (WebCore::WebGLUnsignedByteArray::set):
3534         (WebCore::WebGLUnsignedByteArray::get):
3535         (WebCore::WebGLUnsignedByteArray::item):
3536         * html/canvas/WebGLUnsignedByteArray.idl:
3537         * html/canvas/WebGLUnsignedIntArray.cpp:
3538         (WebCore::WebGLUnsignedIntArray::create):
3539         (WebCore::WebGLUnsignedIntArray::WebGLUnsignedIntArray):
3540         (WebCore::WebGLUnsignedIntArray::length):
3541         (WebCore::WebGLUnsignedIntArray::byteLength):
3542         (WebCore::WebGLUnsignedIntArray::slice):
3543         (WebCore::WebGLUnsignedIntArray::set):
3544         * html/canvas/WebGLUnsignedIntArray.h:
3545         (WebCore::WebGLUnsignedIntArray::isUnsignedIntArray):
3546         (WebCore::WebGLUnsignedIntArray::data):
3547         (WebCore::WebGLUnsignedIntArray::set):
3548         (WebCore::WebGLUnsignedIntArray::get):
3549         (WebCore::WebGLUnsignedIntArray::item):
3550         * html/canvas/WebGLUnsignedIntArray.idl:
3551         * html/canvas/WebGLUnsignedShortArray.cpp:
3552         (WebCore::WebGLUnsignedShortArray::create):
3553         (WebCore::WebGLUnsignedShortArray::WebGLUnsignedShortArray):
3554         (WebCore::WebGLUnsignedShortArray::length):
3555         (WebCore::WebGLUnsignedShortArray::byteLength):
3556         (WebCore::WebGLUnsignedShortArray::slice):
3557         (WebCore::WebGLUnsignedShortArray::set):
3558         * html/canvas/WebGLUnsignedShortArray.h:
3559         (WebCore::WebGLUnsignedShortArray::isUnsignedShortArray):
3560         (WebCore::WebGLUnsignedShortArray::data):
3561         (WebCore::WebGLUnsignedShortArray::set):
3562         (WebCore::WebGLUnsignedShortArray::get):
3563         (WebCore::WebGLUnsignedShortArray::item):
3564         * html/canvas/WebGLUnsignedShortArray.idl:
3565         * platform/graphics/mac/GraphicsContext3DMac.cpp:
3566         (WebCore::GraphicsContext3D::bufferData):
3567         (WebCore::GraphicsContext3D::bufferSubData):
3568
3569 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
3570
3571         Windows build fix.