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