9013b269ba74982c31f7f3bf2d5cc03616d45b97
[WebKit-https.git] / WebCore / ChangeLog
1 2010-03-25  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2
3         Reviewed by Darin Adler.
4
5         Fix build if NPAPI support is disabled
6         https://bugs.webkit.org/show_bug.cgi?id=36621
7
8         No new tests, this is a build fix.
9
10         * plugins/PluginView.cpp: Guard getValueStatic() with
11         NETSCAPE_PLUGIN_API
12         (WebCore::PluginView::getValue):
13         * plugins/PluginView.h: Guard getValue() with NETSCAPE_PLUGIN_API
14         * plugins/PluginViewNone.cpp: Guard platformGetValue() and
15         platformGetValueStatic with NETSCAPE_PLUGIN_API;
16         Guard privateBrowsingStateChanged() and setJavaScriptPaused() with
17         PLATFORM(MAC)
18
19 2010-03-25  Drew Wilson  <atwilson@chromium.org>
20
21         Reviewed by Nate Chapin.
22
23         [v8] Error in getScriptExecutionContext() when worker context is terminating.
24         https://bugs.webkit.org/show_bug.cgi?id=36565
25
26         Removed WorkerScriptExecutionProxy::retrieve() and added WorkerScriptController::controllerForContext(). This allows
27         callers to differentiate between "the current context is shutting down" vs "the current context is not a worker context".
28
29         Test: Existing worker tests suffice.
30
31         * bindings/v8/V8DOMWrapper.cpp:
32         (WebCore::V8DOMWrapper::getConstructor):
33         Changed to use WorkerScriptController::controllerForContext() instead of WorkerScriptExecutionProxy::retrieve().
34         * bindings/v8/V8Utilities.cpp:
35         (WebCore::getScriptExecutionContext):
36         Changed to use WorkerScriptController::controllerForContext() instead of WorkerScriptExecutionProxy::retrieve().
37         * bindings/v8/WorkerContextExecutionProxy.cpp:
38         Removed WorkerScriptExecutionProxy::retrieve().
39         * bindings/v8/WorkerContextExecutionProxy.h:
40         Removed WorkerScriptExecutionProxy::retrieve().
41         * bindings/v8/WorkerScriptController.cpp:
42         (WebCore::WorkerScriptController::controllerForContext):
43         Added helper function to get the WorkerScriptController for the current context.
44         * bindings/v8/WorkerScriptController.h:
45         Added declaration for controllerForContext().
46
47 2010-03-25  Simon Hausmann  <simon.hausmann@nokia.com>
48
49         Reviewed by Kenneth Rohde Christiansen.
50
51         [Qt] Fix the package build on Maemo 5
52
53         https://bugs.webkit.org/show_bug.cgi?id=36607
54
55         Always embed the stylesheet for the no-listbox rendering. This way it'll be
56         included in the generated files for the package generation.
57
58         * WebCore.pri:
59
60 2010-03-24  Dumitru Daniliuc  <dumi@chromium.org>
61
62         Reviewed by Dimitri Glazkov.
63
64         Changing the V8 and JSC implementations of
65         SQLStatementErrorCallback to interpret as false all results that
66         could be converted to a false boolean. Pretty much a revert of
67         r54981.
68
69         https://bugs.webkit.org/show_bug.cgi?id=36569
70
71         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
72         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
73         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
74         (WebCore::V8CustomSQLStatementErrorCallback::handleEvent):
75         * bindings/v8/custom/V8CustomVoidCallback.cpp:
76         (WebCore::invokeCallback):
77         * bindings/v8/custom/V8CustomVoidCallback.h:
78
79 2010-03-25  Dmitry Titov  <dimich@chromium.org>
80
81         Unreviewed, fix Chromium tests.
82
83         Recent http://trac.webkit.org/changeset/56489 made all urls in Chromium that
84         have unspecified port to return invalidPortNumber from KURL::port().
85
86         * platform/KURLGoogle.cpp: Return 0 for unspecified ports, mimic WebKit KURL behavior for invalid ports.
87         (WebCore::KURL::port):
88
89 2010-03-25  Dirk Schulze  <krit@webkit.org>
90
91         Reviewed by Nikolas Zimmermann.
92
93         This is a follow up of:
94         https://bugs.webkit.org/show_bug.cgi?id=30055
95         Bad DOM performance in large SVG files
96
97         Just save and restore the GraphicsContext, if we realy modify it.
98         (Cairo)Path::contains checks if a point is in the boundingBox
99         as a heuristic. The intention was to make the process faster for
100         points outside of this rect, but it rather causes the
101         opposite.
102
103         No new test cases added. No change in functionality.
104
105         * platform/graphics/cairo/PathCairo.cpp:
106         (WebCore::Path::contains):
107         * rendering/RenderPath.cpp:
108         (WebCore::RenderPath::paint):
109
110 2010-03-25  Ojan Vafai  <ojan@chromium.org>
111
112         Reviewed by David Levin.
113
114         mouse-based selections are always directional on Windows/Linux
115         https://bugs.webkit.org/show_bug.cgi?id=25195
116
117         Change m_lastChangeWasHorizontalExtension to m_isDirectional
118         and make m_isDirectional always be true for Windows/Linux.
119
120         * editing/SelectionController.cpp:
121         (WebCore::SelectionController::SelectionController):
122         (WebCore::SelectionController::setSelection):
123         (WebCore::SelectionController::setIsDirectional):
124         (WebCore::SelectionController::willBeModified):
125         When double-clicking, the base/extent will be in the middle
126         of the selection instead of the start/end of it. Changed to
127         maintain that modifications after double-click still move the
128         start/end of the selection, not the base/extent.
129         (WebCore::SelectionController::modify):
130         * editing/SelectionController.h:
131         * page/EventHandler.cpp:
132         (WebCore::EventHandler::handleMousePressEventSingleClick):
133         (WebCore::EventHandler::updateSelectionForMouseDrag):
134
135 2010-03-25  Simon Fraser  <simon.fraser@apple.com>
136
137         Revert r56565 which was based on an incorrect premise.
138
139         * page/animation/CompositeAnimation.cpp:
140         (WebCore::CompositeAnimation::clearRenderer):
141         (WebCore::CompositeAnimation::updateKeyframeAnimations):
142         (WebCore::CompositeAnimation::getAnimatedStyle):
143         (WebCore::CompositeAnimation::setAnimating):
144         (WebCore::CompositeAnimation::timeToNextService):
145         (WebCore::CompositeAnimation::getAnimationForProperty):
146         (WebCore::CompositeAnimation::suspendAnimations):
147         (WebCore::CompositeAnimation::resumeAnimations):
148         (WebCore::CompositeAnimation::isAnimatingProperty):
149         (WebCore::CompositeAnimation::pauseAnimationAtTime):
150         (WebCore::CompositeAnimation::numberOfActiveAnimations):
151
152 2010-03-25  Simon Fraser  <simon.fraser@apple.com>
153
154         Reviewed by Eric Carlson.
155
156         Make calls to m_keyframeAnimations.checkConsistency() debug-only
157         https://bugs.webkit.org/show_bug.cgi?id=36555
158
159         Remove lots of calls to m_keyframeAnimations.checkConsistency(); which were left after some earlier
160         debugging. Leave one in CompositeAnimation::animate() to catch any future issues, which is OK since
161         these calls are no-ops in release builds.
162         
163         * page/animation/CompositeAnimation.cpp:
164         (WebCore::CompositeAnimation::clearRenderer):
165         (WebCore::CompositeAnimation::updateKeyframeAnimations):
166         (WebCore::CompositeAnimation::getAnimatedStyle):
167         (WebCore::CompositeAnimation::setAnimating):
168         (WebCore::CompositeAnimation::timeToNextService):
169         (WebCore::CompositeAnimation::getAnimationForProperty):
170         (WebCore::CompositeAnimation::suspendAnimations):
171         (WebCore::CompositeAnimation::resumeAnimations):
172         (WebCore::CompositeAnimation::isAnimatingProperty):
173         (WebCore::CompositeAnimation::pauseAnimationAtTime):
174         (WebCore::CompositeAnimation::numberOfActiveAnimations):
175
176 2010-03-25  Simon Fraser  <simon.fraser@apple.com>
177
178         Reviewed by Geoffrey Garen.
179
180         https://bugs.webkit.org/show_bug.cgi?id=36557
181         Animations use the wrong timing-function sometimes
182         
183         Fix an issue where animations picked the wrong style for their "unanimated" value.
184         
185         Previously, the "unanimated" style was considered to be the style before the animation
186         was applied. This caused us to pick up stale values for animation timing functions, for
187         blending when a property is missing from the first keyframe, and for resuming transitions
188         once an animation ends.
189         
190         Instead, we need to use the "current" style, which is the one that causes the animation
191         to kick off.
192
193         Tests: animations/longhand-timing-function.html
194                animations/transition-and-animation-3.html
195                animations/unanimated-style.html
196
197         * page/animation/CompositeAnimation.cpp:
198         (WebCore::CompositeAnimation::updateKeyframeAnimations):
199
200 2010-03-25  Gavin Barraclough  <barraclough@apple.com>
201
202         Reviewed by Geoff Garen.
203
204         Bug 36611 - Cleanup JSC::CString
205         Rename CString::c_str() -> CString::data(), CString::size() -> CString::length(),
206         remove UString::getCString() (all uses are wrong, should use UString::UTF8String()).
207
208         * bridge/NP_jsobject.cpp:
209         (_NPN_Enumerate):
210         * bridge/c/c_utility.cpp:
211         (JSC::Bindings::convertValueToNPVariant):
212         * bridge/jni/jsc/JNIBridgeJSC.cpp:
213         (JavaField::valueFromInstance):
214         (JavaField::setValueToInstance):
215         * bridge/jni/jsc/JavaInstanceJSC.cpp:
216         (JavaInstance::invokeMethod):
217         * bridge/jni/jsc/JavaStringJSC.h:
218         (JSC::Bindings::JavaStringImpl::UTF8String):
219
220 2010-03-25  Jakub Wieczorek  <jwieczorek@webkit.org>
221
222         Reviewed by Eric Seidel.
223
224         [Qt] RenderTheme: fix size adjustment for text fields
225         https://bugs.webkit.org/show_bug.cgi?id=36413
226
227         To match other ports, remove the hardcoded dimensions for text fields so that
228         the default ones from WebCore can be used.
229         Properly apply the correct padding to text areas - this fixes their appearance
230         with the Oxygen style.
231
232         * platform/qt/RenderThemeQt.cpp:
233         (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
234
235 2010-03-25  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
236
237         Reviewed by Simon Hausmann.
238
239         [Qt] Implement ChromeClient::windowResizerRect()
240
241         https://bugs.webkit.org/show_bug.cgi?id=21300
242
243         The helper function geometryRelativeToOwnerWidget() in the page
244         client is used to clip the resize rect to the actual size of the
245         viewport, not the size of the QGraphicsView.
246
247         * platform/qt/QWebPageClient.h:
248
249 2010-03-25  Joseph Pecoraro  <joepeck@webkit.org>
250
251         Reviewed by Pavel Feldman.
252
253         Web Inspector: reloading debug target window with cmd-R from inspector window produces beep.
254         https://bugs.webkit.org/show_bug.cgi?id=36554
255
256         * inspector/front-end/inspector.js:
257         (WebInspector.documentKeyDown): prevent the default behavior, if handled, which would result in a system beep.
258
259 2010-03-25  Jochen Eisinger  <jochen@chromium.org>
260
261         Reviewed by Jeremy Orlow.
262
263         Forward DatabaseTracker::canEstablishDatabase to chromium layer.
264         https://bugs.webkit.org/show_bug.cgi?id=36595
265
266         * storage/chromium/DatabaseObserver.h:
267         * storage/chromium/DatabaseTrackerChromium.cpp:
268         (WebCore::DatabaseTracker::canEstablishDatabase):
269
270 2010-03-25  yael aharon  <yael.aharon@nokia.com>
271
272         Reviewed by Laszlo Gombos.
273
274         [Qt] Windowed netscape plugins don't work with QGraphicsWebView on Symbian
275         https://bugs.webkit.org/show_bug.cgi?id=35112
276
277         Add a proxy widget when loading a QWidget based plugin in a QGraphicsWebView.
278
279         * plugins/symbian/PluginContainerSymbian.cpp:
280         (PluginContainerSymbian::PluginContainerSymbian):
281         (PluginContainerSymbian::focusInEvent):
282         * plugins/symbian/PluginContainerSymbian.h:
283         (WebCore::PluginContainerSymbian::proxy):
284         * plugins/symbian/PluginViewSymbian.cpp:
285         (WebCore::PluginView::updatePluginWidget):
286         (WebCore::PluginView::platformStart):
287         (WebCore::PluginView::platformDestroy):
288
289 2010-03-25  Simon Fraser  <simon.fraser@apple.com>
290
291         Reviewed by Adele Peterson.
292
293         https://bugs.webkit.org/show_bug.cgi?id=35714
294         Computed style on delayed transform animations is incorrect
295         
296         When fetching computed style while a delayed accelerated animation is in effect,
297         we would get the value form the first keyframe, rather than getting the current
298         style.
299         
300         Fix by checking to see whether we've in the delay phase (with no backwards-fill)
301         in KeyframeAnimation::getAnimatedStyle().
302
303         Test: compositing/animation/computed-style-during-delay.html
304
305         * page/animation/KeyframeAnimation.cpp:
306         (WebCore::KeyframeAnimation::getAnimatedStyle):
307
308 2010-03-25  Yury Semikhatsky  <yurys@chromium.org>
309
310         Reviewed by Pavel Feldman.
311
312         Initialize Web Inspector title with inspected page URL when opening Web Inspector.
313
314         https://bugs.webkit.org/show_bug.cgi?id=36534
315
316         * inspector/InspectorController.cpp:
317         (WebCore::InspectorController::setFrontend):
318
319 2010-03-25  Antti Koivisto  <koivisto@iki.fi>
320
321         Reviewed by Kenneth Rohde Christiansen.
322
323         https://bugs.webkit.org/show_bug.cgi?id=36316
324         Tiles of selected content do not update if not in viewport
325         
326         Don't clip repaints to viewport when tiling is enabled.
327
328         * page/Frame.cpp:
329         (WebCore::Frame::setView):
330         (WebCore::Frame::setTiledBackingStoreEnabled):
331
332 2010-03-25  Diego Gonzalez  <diego.gonzalez@openbossa.org>
333
334         Reviewed by Eric Seidel.
335
336         Missing forward ENABLE_DATALIST macro to JavaScript enabled features macros
337         on WebKit.pri
338
339         [Qt] Forward ENABLE_DATALIST macro to JavaScript enabled macros
340         https://bugs.webkit.org/show_bug.cgi?id=36547
341
342         * WebCore.pri:
343
344 2010-03-25  Pavel Feldman  <pfeldman@chromium.org>
345
346         Reviewed by Timothy Hatcher.
347
348         Web Inspector: Expect console object wrapping to fail.
349
350         https://bugs.webkit.org/show_bug.cgi?id=36587
351
352         * inspector/front-end/InjectedScript.js:
353         (injectedScriptConstructor):
354
355 2010-03-25  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
356
357         Reviewed by Eric Seidel.
358
359         https://bugs.webkit.org/show_bug.cgi?id=36371
360         [Gtk] Elements with a title attribute should not be ignored
361
362         * accessibility/AccessibilityRenderObject.cpp:
363         (AccessibilityRenderObject::accessibilityIsIgnored):
364
365 2010-03-24  Steve Block  <steveblock@google.com>
366
367         Reviewed by David Levin.
368
369         Adds a missing ENABLE(WORKERS) guards to the V8 bindings.
370         https://bugs.webkit.org/show_bug.cgi?id=36550
371
372         Build fix only, no new tests.
373
374         * bindings/v8/V8DOMWrapper.cpp:
375         (WebCore::V8DOMWrapper::instantiateV8Object):
376
377 2010-03-25  Leandro Pereira  <leandro@profusion.mobi>
378
379         Reviewed by Eric Seidel.
380
381         Add EFL-specific code to platform/ScrollView.cpp and
382         platform/Scrollbar.cpp.
383         http://webkit.org/b/36305
384
385         * platform/ScrollView.cpp:
386         * platform/Scrollbar.cpp:
387
388 2010-03-25  Tasuku Suzuki  <tasuku.suzuki@nokia.com>
389
390         Reviewed by Eric Seidel.
391
392         [Qt]Fix compile error with QT_NO_LIBRARY
393         https://bugs.webkit.org/show_bug.cgi?id=36533
394
395         * platform/FileSystem.h:
396         * platform/qt/FileSystemQt.cpp:
397         (WebCore::unloadModule):
398
399 2010-03-25  Tasuku Suzuki  <tasuku.suzuki@nokia.com>
400
401         Reviewed by Eric Seidel.
402
403         [Qt]Fix compile error with QT_NO_ANIMATION
404         https://bugs.webkit.org/show_bug.cgi?id=36526
405
406         * platform/graphics/qt/GraphicsLayerQt.cpp:
407         (WebCore::GraphicsLayerQtImpl::~GraphicsLayerQtImpl):
408         * platform/graphics/qt/GraphicsLayerQt.h:
409
410 2010-03-25  Tony Chang  <tony@chromium.org>
411
412         Reviewed by Eric Seidel.
413
414         https://bugs.webkit.org/show_bug.cgi?id=33697
415         Have dragOpFromIEOp("move") return DragOperationGeneric | DragOperationMove
416         because only returning Generic doesn't work for platforms that don't
417         have a generic operation.
418
419         Covered by existing tests (fast/events/drag-and-drop.html).
420
421         * dom/Clipboard.cpp:
422         (WebCore::dragOpFromIEOp):
423         (WebCore::Clipboard::destinationOperation):
424         (WebCore::Clipboard::setDestinationOperation):
425
426 2010-03-25  Fumitoshi Ukai  <ukai@chromium.org>
427
428         Reviewed by Eric Seidel.
429
430         [Qt] websocket/tests/long-invalid-header.html fails
431         https://bugs.webkit.org/show_bug.cgi?id=36492
432
433         trim message at most 128 bytes from the current position.
434         I believe it's enough data to investigate the error reason and
435         it makes test not depend on buffered size.
436
437         * websockets/WebSocketHandshake.cpp:
438         (WebCore::trimConsoleMessage):
439         (WebCore::WebSocketHandshake::readServerHandshake):
440         (WebCore::WebSocketHandshake::readHTTPHeaders):
441
442 2010-03-24  Jon Honeycutt  <jhoneycutt@apple.com>
443
444         <rdar://problem/7780798> Missing plug-ins should be represented by text
445         only, instead of lego block
446
447         https://bugs.webkit.org/show_bug.cgi?id=36583
448
449         Reviewed by Dan Bernstein.
450
451         * rendering/RenderEmbeddedObject.cpp:
452         (WebCore::RenderEmbeddedObject::paintReplaced):
453         Set the font rendering mode and the computed size, so that the text will
454         draw properly on Windows.
455
456 2010-03-24  Vangelis Kokkevis  <vangelis@chromium.org>
457
458         Reviewed by Dimitri Glazkov.
459
460         Removing unecessary redraws of LayerSkia contents:
461         https://bugs.webkit.org/show_bug.cgi?id=36470
462
463         Test: No new functionality added, no tests.
464
465         * platform/graphics/skia/LayerRendererSkia.cpp:
466         (WebCore::LayerRendererSkia::drawLayerInCanvasRecursive):
467         Debug borders now rendered at composite time rather than update time.
468         * platform/graphics/skia/LayerSkia.cpp:
469         (WebCore::LayerSkia::updateContents):
470         (WebCore::LayerSkia::drawDebugBorder):
471         Debug border drawing removed from updateContents and split into a separate method that
472         can be called at composite time.
473         (WebCore::LayerSkia::setBounds):
474         Resetting the bounds causes the layer to redraw its contents.
475         (WebCore::LayerSkia::setNeedsDisplay):
476         * platform/graphics/skia/LayerSkia.h:
477         Added declaration for drawDebugBorders method.
478
479 2010-03-24  Mark Rowe  <mrowe@apple.com>
480
481         Revert the portion of r56489 that dealt with port zero as it introduced some test failures.
482
483         * platform/KURL.cpp:
484         (WebCore::KURL::port): Use the "ok" argument to charactersToUIntStrict to determine whether
485         it was able to successfully parse the string as an unsigned integer, rather than relying on
486         the fact it returned zero when it failed.
487
488 2010-03-24  Gavin Barraclough  <barraclough@apple.com>
489
490         Reviewed by Sam Weinig.
491
492         * platform/text/String.cpp:
493         (WebCore::putUTF8Triple): Correct capitalization of function name.
494         (WebCore::String::utf8): Fix C-style casts.
495         (WebCore::String::fromUTF8): Remove unnecessary newline.
496         (WebCore::String::fromUTF8WithLatin1Fallback): Use early return.
497
498 2010-03-24  Mark Rowe  <mrowe@apple.com>
499
500         Reviewed by Darin Adler.
501
502         WebKit should treat port numbers outside the valid range as being blacklisted
503         <http://webkit.org/b/36571> / <rdar://problem/7790908>
504
505         * platform/KURL.cpp:
506         (WebCore::KURL::port): Map invalid port numbers to invalidPortNumber.
507         (WebCore::portAllowed): Add invalidPortNumber to the blacklist.
508         * platform/KURLGoogle.cpp:  invalid port numbers to invalidPortNumber.
509         (WebCore::KURL::port): Add invalidPortNumber to the blacklist.
510         Also bring this in to sync with KURL.  Having this identical code in two places is stupid.
511
512 2010-03-24  Sam Weinig  <sam@webkit.org>
513
514         Reviewed by Mark Rowe.
515
516         Add some missing exports.
517
518         * WebCore.base.exp:
519
520 2010-03-24  Gavin Barraclough  <barraclough@apple.com>
521
522         Reviewed by Sam Weinig.
523
524         Switch String::latin1, String::utf8, String::fromUTF8 to
525         use WTF's Unicode conversion methods rather than TextEncoder.
526         These methods only perform simple conversion, and don't need
527         really require TextEncoder's full capability (to look up arbitrary
528         encodings by name), switching to only be dependent on WTF will
529         make it easier if we chose to move WebCore::String to WTF.
530
531         * platform/text/String.cpp:
532         (WebCore::String::latin1):
533         (WebCore::putUTF8triple):
534         (WebCore::String::utf8):
535         (WebCore::String::fromUTF8):
536
537 2010-03-24  Dmitry Titov  <dimich@chromium.org>
538
539         No review, rolling out r56453.
540         http://trac.webkit.org/changeset/56453
541         https://bugs.webkit.org/show_bug.cgi?id=36426
542
543         In Chromium port, it broke invalid-image-data-standalone.html
544         invalid-image-data.html multipart-wait-before-boundary.html
545         stop-crash.html win-boundary-crash.html
546
547         * loader/FrameLoader.cpp:
548         (WebCore::FrameLoader::finishedLoadingDocument):
549
550 2010-03-24  Ilya Tikhonovsky  <loislo@chromium.org>
551
552         Reviewed by Pavel Feldman.
553
554         Web Inspector: Significant scroll speed degradation if Timeline has
555         an expanded record with significant number of children.
556         https://bugs.webkit.org/show_bug.cgi?id=36543
557
558
559         * inspector/front-end/TimelinePanel.js:
560         (WebInspector.TimelinePanel.prototype._updateBoundaries):
561         (WebInspector.TimelinePanel.prototype._addToRecordsWindow):
562         (WebInspector.TimelinePanel.prototype._filterRecords):
563         (WebInspector.TimelinePanel.prototype._refreshRecords):
564
565 2010-03-24  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
566
567         Reviewed by Eric Carlson.
568
569         [GStreamer] Fails to go to Loaded state because of floating point discrepancies
570         https://bugs.webkit.org/show_bug.cgi?id=35891
571
572         Use the m_fillStatus variable, which is more reliable, instead of
573         using the calculation, for the completed case.
574
575         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
576         (WebCore::MediaPlayerPrivate::fillTimerFired):
577
578 2010-03-24  Dmitry Titov  <dimich@chromium.org>
579
580         Unreviewed, Chromium test fix.
581
582         Recent r56445 added CustomEvent and a test but it didn't work on Chromium bots.
583         Test crashed due to infinte recursion because the compiler did not have the right definition of toV8(CustomEvent*)
584         and was substituting toV8(Event*).
585
586         Fixing test fast/events/custom-event.html
587
588         * bindings/v8/custom/V8EventCustom.cpp:
589
590 2010-03-24  MORITA Hajime  <morrita@google.com>
591
592         Reviewed by Darin Adler.
593
594         Refactoring: HTMLFormControlElement should not have redundant null check
595         https://bugs.webkit.org/show_bug.cgi?id=36487
596         
597         No new tests as there is no new functionality.        
598
599         * html/HTMLFormControlElement.cpp:
600         (WebCore::HTMLFormControlElement::dispatchFocusEvent):
601         (WebCore::HTMLFormControlElement::dispatchBlurEvent):
602
603 2010-03-24  Eric Uhrhane  <ericu@chromium.org>
604
605         Reviewed by Alexey Proskuryakov.
606
607         DOMCoreException needs NoStaticTables modifier
608         https://bugs.webkit.org/show_bug.cgi?id=36458
609
610         No new tests, but this shows up in tests of Database accesses from the
611         Worker thread that I'll be checking in soon.  The symptom is that
612         DOMCoreException.toString() returns [object DOMException] instead of
613         something more helpful.
614
615         * dom/DOMCoreException.idl:  Added NoStaticTables.
616
617 2010-03-24  Drew Wilson  <atwilson@chromium.org>
618
619         Reviewed by Dmitry Titov.
620
621         Failed assertion in V8Proxy::setDOMException() if worker is shutting down.
622         https://bugs.webkit.org/show_bug.cgi?id=36514
623
624         Test: none (existing worker tests suffice)
625
626         * bindings/v8/V8Proxy.cpp:
627         (WebCore::V8Proxy::setDOMException):
628         Updated setDOMException() to check for an empty exception (due to no active context) and avoid throwing in that case.
629
630 2010-03-23  Evan Martin  <evan@chromium.org>
631
632         Reviewed by Dmitry Titov.
633
634         [chromium] use integral glyph widths
635         https://bugs.webkit.org/show_bug.cgi?id=36510
636
637         Despite WebKit (and Skia, to an extent) supporting non-integral
638         glyph widths, the font code path we hit in Skia only supports
639         integral glyph positions.  This means that we would accumulate
640         offsets when drawing a sequence up non-integer-width glyphs
641         which would cause gaps when snapped to the pixel grid when drawing.
642
643         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
644         (WebCore::SimpleFontData::platformWidthForGlyph):
645         round glyph widths to integers.
646
647 2010-03-24  Dean Jackson  <dino@apple.com>
648
649         Reviewed by Kevin Decker.
650
651         <rdar://problem/7785305>
652         Fix regression caused by r55576. It turned out that ensuring
653         CoreAnimation always gets a correct fill parameter caused flashing
654         as non-filled animations ended (CA briefly showed the initial animation
655         value before the style system set the final value).
656
657         * platform/graphics/mac/GraphicsLayerCA.mm:
658         (WebCore::GraphicsLayerCA::setupAnimation):
659
660 2010-03-24  Hayato Ito  <hayato@chromium.org>
661
662         Reviewed by Shinichiro Hamaji.
663
664         Refactor computePageRects so that Mac can make use of it.
665         https://bugs.webkit.org/show_bug.cgi?id=36159
666
667         Refactoring only, so no new tests.
668
669         * WebCore.base.exp:
670         * page/PrintContext.cpp:
671         (WebCore::PrintContext::computePageRects):
672         (WebCore::PrintContext::computePageRectsWithPageSize):
673         (WebCore::PrintContext::computePageRectsWithPageSizeInternal):
674         (WebCore::PrintContext::pageNumberForElement):
675         (WebCore::PrintContext::numberOfPages):
676         * page/PrintContext.h:
677
678 2010-03-24  Jeremy Moskovich  <jeremy@chromium.org>
679
680         Reviewed by Jeremy Orlow.
681
682         Add some diagnostics to try to track down cause of crash in ArchiveFactory::isArchiveMimeType().
683
684         https://bugs.webkit.org/show_bug.cgi?id=36426
685
686         No new tests as there is no new functionality.
687
688         * loader/FrameLoader.cpp:
689         (WebCore::FrameLoader::finishedLoadingDocument): Make copy of mimeType string to isolate crash.
690
691 2010-03-24  Anton Muhin  <antonm@chromium.org>
692
693         Reviewed by Nate Chapin.
694
695         Use newly introduced SetPrototype method to deal with global objects.
696         https://bugs.webkit.org/show_bug.cgi?id=36497
697
698         No new tests, should be covered by the current test infrastructure.
699
700         * bindings/v8/V8DOMWindowShell.cpp:
701         (WebCore::V8DOMWindowShell::installDOMWindow):
702         * bindings/v8/V8DOMWrapper.cpp:
703         (WebCore::V8DOMWrapper::getConstructor):
704         * bindings/v8/WorkerContextExecutionProxy.cpp:
705         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
706
707 2010-03-24  Dmitry Titov  <dimich@chromium.org>
708
709         Unreviewed, Chromium build fix.
710
711         * platform/chromium/PopupMenuChromium.cpp:
712         (WebCore::PopupContainer::PopupContainer): Fix order of initializers.
713         (WebCore::PopupContainer::layout): Remove unused variable.
714
715 2010-03-23  Kenneth Rohde Christiansen  <kenneth@webkit.org>
716
717         Reviewed by Simon Hausmann.
718
719         Add a way to check if the page client is making use of
720         a QWidget.
721
722         * platform/qt/QWebPageClient.h:
723         (QWebPageClient::isQWidgetClient):
724
725 2010-03-24  Jay Campan  <jcampan@google.com>
726
727         Reviewed by Darin Fisher.
728
729         Making Chromium select popups not steal activation from the browser.
730         Select popups are now like autocomplete popups, shown in non-activated
731         windows.
732         https://bugs.webkit.org/show_bug.cgi?id=36062
733
734         * page/chromium/ChromeClientChromium.h:
735         * platform/chromium/PopupMenuChromium.cpp:
736         (WebCore::):
737         (WebCore::PopupListBox::setMaxHeight):
738         (WebCore::PopupListBox::disconnectClient):
739         (WebCore::PopupListBox::PopupListBox):
740         (WebCore::PopupContainer::create):
741         (WebCore::PopupContainer::PopupContainer):
742         (WebCore::PopupContainer::showPopup):
743         (WebCore::PopupContainer::showExternal):
744         (WebCore::PopupContainer::hidePopup):
745         (WebCore::PopupContainer::layout):
746         (WebCore::PopupContainer::chromeClientChromium):
747         (WebCore::PopupListBox::hidePopup):
748         (WebCore::PopupListBox::layout):
749         (WebCore::PopupMenu::~PopupMenu):
750         (WebCore::PopupMenu::show):
751         * platform/chromium/PopupMenuChromium.h:
752         (WebCore::PopupItem::):
753         (WebCore::PopupItem::PopupItem):
754         (WebCore::PopupContainerSettings::):
755         (WebCore::PopupContainer::):
756         (WebCore::PopupContainer::listBox):
757         (WebCore::PopupContainer::popupType):
758
759 2010-03-10  David Levin  <levin@chromium.org>
760
761         Reviewed by Oliver Hunt.
762
763         Need to move items that CanvasRenderingContext2D depends on into CanvasSurface.
764         https://bugs.webkit.org/show_bug.cgi?id=35453
765
766         Prepartory changes to allow for an OffscreenCanvas which may be used in a worker
767         or outside of the DOM.
768
769         No change in functionality, so new tests.
770
771         * dom/CanvasSurface.cpp: Moved functionality that CanvasRenderingContext2D depends on
772         into this class (and removed dependencies on document/html element).
773         (WebCore::CanvasSurface::CanvasSurface):
774         (WebCore::CanvasSurface::~CanvasSurface): Put the desctructor in the cpp file
775         to avoid needing access to ~ImageBuffer in the header file.
776         (WebCore::CanvasSurface::setSurfaceSize): Does basic items needed
777         when the size changes. It is protected to force outside callers to go
778         through HTMLCanvasElement::setSize.
779         (WebCore::CanvasSurface::toDataURL): Just moved from HTMLCanvasElement and
780         made a note about a method to fix for worker usage.
781         (WebCore::CanvasSurface::willDraw): Made this virtual to allow an overide
782         which uses the renderbox and tracks a dirtyRect.
783         (WebCore::CanvasSurface::convertLogicalToDevice): Moved and changed to
784         rely on a member variable for page scale (to avoid using the document).
785         (WebCore::CanvasSurface::createImageBuffer):
786         (WebCore::CanvasSurface::drawingContext): Simple move from HTMLCanvasElement.
787         (WebCore::CanvasSurface::buffer): Ditto.
788         (WebCore::CanvasSurface::baseTransform): Ditto.
789         * dom/CanvasSurface.h:
790         (WebCore::CanvasSurface::width): Simple move from HTMLCanvasElement.
791         (WebCore::CanvasSurface::height): Ditto.
792         (WebCore::CanvasSurface::size): Ditto.
793         (WebCore::CanvasSurface::setOriginTainted): Ditto.
794         (WebCore::CanvasSurface::originClean): Ditto.
795         (WebCore::CanvasSurface::hasCreatedImageBuffer): Ditto (with small name change).
796         * html/HTMLCanvasElement.cpp:
797         (WebCore::HTMLCanvasElement::HTMLCanvasElement): Pass in the scale factor to CanvasSurface
798         so it doesn't need the document.
799         (WebCore::HTMLCanvasElement::willDraw): Moved the relevant portion to CanvasSurface.
800         (WebCore::HTMLCanvasElement::reset): Small changes due to refactoring.
801         (WebCore::HTMLCanvasElement::paint): Ditto.
802         * html/HTMLCanvasElement.h:
803         (WebCore::HTMLCanvasElement::setSize): Ditto.
804         * platform/MIMETypeRegistry.cpp:
805         (WebCore::MIMETypeRegistry::isSupportedImageMIMETypeForEncoding): Added assert
806         to verify that this is only called on the main thread.
807         * platform/graphics/Image.cpp:
808         (WebCore::Image::nullImage): Ditto.
809         * platform/graphics/cg/ImageBufferCG.cpp:
810         (WebCore::utiFromMIMEType): Ditto.
811
812 2010-03-24  Alexander Pavlov  <apavlov@chromium.org>
813
814         Reviewed by Pavel Feldman.
815
816         Inspector: XML Tags should not be converted to lowercase
817         https://bugs.webkit.org/show_bug.cgi?id=28600
818
819         * inspector/front-end/ElementsPanel.js:
820         (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
821         (WebInspector.ElementsPanel.prototype.decorateNodeLabel):
822         * inspector/front-end/ElementsTreeOutline.js:
823         (WebInspector.ElementsTreeOutline.prototype.nodeNameToCorrectCase):
824         (WebInspector.ElementsTreeElement.prototype._updateChildren):
825         (WebInspector.ElementsTreeElement.prototype._nodeTitleInfo):
826
827 2010-03-03  Kenneth Rohde Christiansen  <kenneth@webkit.org>
828
829         Reviewed by Antti Koivisto.
830
831         Add support for DOM Level 3 Custom Event
832         http://www.w3.org/TR/DOM-Level-3-Events
833
834         V8 Generator change by Nate Chapin <japhet@chromium.org>, Thanks!
835
836         Test: fast/events/custom-event.html
837
838         * DerivedSources.cpp:
839         * GNUmakefile.am:
840         * WebCore.gypi:
841         * WebCore.pri:
842         * WebCore.pro:
843         * WebCore/DerivedSources.make:
844         * WebCore.vcproj/WebCore.vcproj:
845         * WebCore.xcodeproj/project.pbxproj:
846         * bindings/js/JSEventCustom.cpp:
847         (WebCore::toJS):
848         * bindings/scripts/CodeGeneratorJS.pm:
849         * bindings/scripts/CodeGeneratorV8.pm:
850         * dom/CustomEvent.cpp: Added.
851         (WebCore::CustomEvent::CustomEvent):
852         (WebCore::CustomEvent::initCustomEvent):
853         (WebCore::CustomEvent::isCustomEvent):
854         * dom/CustomEvent.h: Added.
855         (WebCore::CustomEvent::create):
856         (WebCore::CustomEvent::detail):
857         * dom/Document.cpp:
858         (WebCore::Document::createEvent):
859         * dom/Event.cpp:
860         (WebCore::Event::isCustomEvent):
861         * dom/Event.h:
862
863 2010-03-24  Alexander Pavlov  <apavlov@chromium.org>
864
865         Reviewed by Pavel Feldman.
866
867         Web Inspector: Error when highlighting JavaScript with an invalid mime type
868         https://bugs.webkit.org/show_bug.cgi?id=36530
869
870         * inspector/front-end/SourceTokenizer.js:
871         (WebInspector.SourceTokenizer.Registry):
872         * inspector/front-end/SourceView.js:
873         (WebInspector.SourceView.prototype._contentLoaded):
874         (WebInspector.SourceView.prototype._canonicalMimeType):
875         * inspector/front-end/TextEditorHighlighter.js:
876         (WebInspector.TextEditorHighlighter):
877
878 2010-03-24  Pavel Feldman  <pfeldman@chromium.org>
879
880         Not reviewed. Chromium test fix: added a frameCount check to the
881         debugger function call.
882
883         * bindings/v8/V8Proxy.cpp:
884         (WebCore::V8Proxy::createUtilityContext):
885
886 2010-03-19  Miikka Heikkinen  <miikka.heikkinen@digia.com>
887
888         Reviewed by Simon Hausmann.
889
890         [Qt] Support for QT_LIBINFIX in Symbian builds
891
892         Configuring Qt with -qtlibinfix parameter will enable installing
893         an alternate version of Qt on devices that already have it on ROM.
894         This patch provides support for infixed builds of Webkit.
895
896         * WebCore.pro:
897
898 2010-03-24  Kent Tamura  <tkent@chromium.org>
899
900         Reviewed by Darin Adler.
901
902         Make Icon::createIconForFiles() optional.
903         https://bugs.webkit.org/show_bug.cgi?id=35072
904
905         r54923 made Icon::createIconForFiles() deprecated. However moving
906         existing icon loading code to outside of WebCore is not good.  So,
907         we assume:
908         - ChromeClient::chooseIconForFiles(), renamed from iconForFiles(), is
909           the primary API to load icons.
910         - Icon::createIconForFiles() is an optional API to help
911           implementing ChromeClient::iconForFiles().
912
913         This patch removes a call to Icon::createIconForFiles() from
914         FileChooser::loadIcon(), and ChromeClient::chooseIconForFiles() of
915         non-Chromium ports calls Icon::createIconForFiles().
916
917         * WebCore.base.exp: Export FileChooser::iconLoaded(),
918           Icon::createIconForFiles(), and Icon::~Icon().
919         * WebCore.xcodeproj/project.pbxproj: Export Icon.h
920         * loader/EmptyClient.h: Rename iconForFiles() to chooseIconForFiles().
921         * page/Chrome.cpp: ditto.
922         * page/Chrome.h: ditto.
923         * page/ChromeClient.h: ditto.
924         * platform/FileChooser.cpp:
925         (WebCore::FileChooser::loadIcon):
926         * platform/graphics/Icon.h: Remove a comment on createIconForFiles().
927         * platform/graphics/chromium/IconChromiumLinux.cpp: Remove createIconForFiles().
928         * platform/graphics/chromium/IconChromiumMac.cpp: ditto.
929         * platform/graphics/chromium/IconChromiumWin.cpp: ditto.
930         * rendering/RenderFileUploadControl.cpp: Rename iconForFiles() to chooseIconForFiles().
931         * rendering/RenderFileUploadControl.h: ditto.
932
933 2010-03-23  Dan Bernstein  <mitz@apple.com>
934
935         Fixed typos.
936
937         * manual-tests/plugin-visible-rect-change.html:
938
939 2010-03-23  Dan Bernstein  <mitz@apple.com>
940
941         Reviewed by John Sullivan.
942
943         WebCore part of
944         <rdar://problem/7197736> Plug-in clip rect does not update when overflow
945         clip changes
946         https://bugs.webkit.org/show_bug.cgi?id=36479.
947
948         * manual-tests/plugin-visible-rect-change.html: Added.
949         * platform/mac/WidgetMac.mm:
950         (WebCore::WidgetPrivate::WidgetPrivate): Added previousVisibleRect.
951         (WebCore::Widget::setFrameRect): If the visible rect changed but the
952         frame rect did not, send a -visibleRectDidChange message to the view,
953         if it responds to it.
954         (WebCore::Widget::releasePlatformWidget): Reset previousVisibleRect.
955         * rendering/RenderWidget.cpp:
956         (WebCore::RenderWidget::setWidgetGeometry): Track changes to the clip rect
957         imposed by the enclosing layer. Call Widget::setFrameRect when it changes,
958         even if the frame rect did not.
959         * rendering/RenderWidget.h:
960         (WebCore::RenderWidget::windowClipRect): Added this accessor.
961
962 2010-03-23  Simon Fraser  <simon.fraser@apple.com>
963
964         Reviewed by Dan Bernstein.
965
966         Assertion ASSERTION FAILED: rootLayer == m_clipRectsRoot at hulu.com
967         https://bugs.webkit.org/show_bug.cgi?id=34065
968         
969         Fix another cause of assertions related to the clip rects root. Embeds
970         with zero size caused the overlap testing to fail, yet we require them to work
971         for correct compositing, so when the composited bounds is empty, use a 1x1 rect
972         for overlap testing.
973
974         Test: compositing/geometry/empty-embed-rects.html
975
976         * rendering/RenderLayerCompositor.cpp:
977         (WebCore::RenderLayerCompositor::addToOverlapMap):
978         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
979
980 2010-03-23  David Levin  <levin@chromium.org>
981
982         Reviewed by Nate Chapin.
983
984         [chromium] XMLHttpRequest.send sends 'undefined' string when passed undefined value.
985         https://bugs.webkit.org/show_bug.cgi?id=36506
986
987         Test: http/tests/xmlhttprequest/send-undefined-and-null.html
988
989         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
990         (WebCore::isDocumentType): Unrelated style fix: fixed the casing of the method.
991         (WebCore::V8XMLHttpRequest::sendCallback): Added check for null/undefined to do the send.
992         This mirrors what is done in the JSC bindings. Previously, sending 'null' worked because
993         the last case, which did "toWebCoreStringWithNullCheck", resulted in sending an empty
994         request body.
995
996 2010-03-23  Chris Evans  <cevans@chromium.org>
997
998         Reviewed by Darin Adler.
999
1000         Fix hard-to-see crash due to incorrect libxml API usage.
1001
1002         https://bugs.webkit.org/show_bug.cgi?id=36000
1003
1004         Test: fast/text/bad-encoding.html
1005
1006         * dom/XMLTokenizerLibxml2.cpp:
1007         (WebCore::XMLTokenizer::doEnd): Avoid operations on a closed context.
1008
1009 2010-03-23  Nate Chapin  <japhet@chromium.org>
1010
1011         Unreviewed, revert r56376.
1012
1013         This revision introduced a crash in a couple of layout tests
1014         on Chromium Linux.
1015
1016         * page/chromium/ChromeClientChromium.h:
1017         * platform/chromium/PopupMenuChromium.cpp:
1018         (WebCore::):
1019         (WebCore::PopupContainer::create):
1020         (WebCore::PopupContainer::PopupContainer):
1021         (WebCore::PopupContainer::showPopup):
1022         (WebCore::PopupContainer::showExternal):
1023         (WebCore::PopupContainer::hidePopup):
1024         (WebCore::PopupMenu::show):
1025         * platform/chromium/PopupMenuChromium.h:
1026         (WebCore::PopupItem::):
1027         (WebCore::PopupItem::PopupItem):
1028         (WebCore::PopupContainerSettings::):
1029         (WebCore::PopupContainer::listBox):
1030
1031 2010-03-23  David Hyatt  <hyatt@apple.com>
1032
1033         Reviewed by Simon Fraser and Darin Adler.
1034
1035         https://bugs.webkit.org/show_bug.cgi?id=36272, make sure nth-child can work when the portion with "n" is omitted.
1036
1037         Added fast/css/nth-child-implied-step.html
1038
1039         * css/CSSGrammar.y:
1040         * css/tokenizer.flex:
1041
1042 2010-03-23  Darin Adler  <darin@apple.com>
1043
1044         Reviewed by Sam Weinig.
1045
1046         Reduce and straighten internal use of DOMImplementation
1047         https://bugs.webkit.org/show_bug.cgi?id=36501
1048
1049         * WebCore.xcodeproj/project.pbxproj: Xcode decided to
1050         re-sort this file.
1051
1052         * dom/Clipboard.cpp: Removed unneeded include of DOMImplementation.h.
1053
1054         * dom/DOMImplementation.cpp: Removed unneeded createDocument and
1055         createHTMLDocument functions. These should be done directly instead
1056         of involving the DOMImplementation class.
1057         * dom/DOMImplementation.h: Ditto.
1058
1059         * dom/DocumentType.cpp: Removed unneeded include of DOMImplementation.h.
1060
1061         * html/HTMLViewSourceDocument.cpp:
1062         (WebCore::HTMLViewSourceDocument::createTokenizer): Don't allocate a
1063         DOMImplementation object just to use a class member function.
1064
1065         * loader/CachedFont.cpp: Removed unneeded include of DOMImplementation.h.
1066
1067         * xml/XMLHttpRequest.cpp:
1068         (WebCore::XMLHttpRequest::responseXML): Use Document::create to create a
1069         new document instead of involving DOMImplementation.
1070         * xml/XSLTProcessor.cpp:
1071         (WebCore::XSLTProcessor::createDocumentFromSource): Ditto. And in the case
1072         where we do need to call DOMImplementation to interpret the MIME type,
1073         don't allocate a DOMImplementation object just to use a class member
1074         function.
1075
1076 2010-03-23  Luiz Agostini  <luiz.agostini@openbossa.org>
1077
1078         Reviewed by Kenneth Rohde Christiansen.
1079
1080         [Qt] Maemo5 theme - all <select> elements should be rendered as menu lists.
1081         https://bugs.webkit.org/show_bug.cgi?id=36367
1082
1083         Enabling NO_LISTBOX_RENDERING in WebCore.pri for Maemo5.
1084
1085         * WebCore.pri:
1086
1087 2010-03-22  Joseph Pecoraro  <joepeck@webkit.org>
1088
1089         Reviewed by David Kilzer.
1090
1091         Upstream iPhone KeyEvent platform code and share with Mac platform
1092         https://bugs.webkit.org/show_bug.cgi?id=35870
1093
1094         * platform/iphone/KeyEventCodesIPhone.h: Improper comment for #endif.
1095         * platform/iphone/KeyEventIPhone.mm: Fixed headers.
1096
1097 2010-03-23  David Hyatt  <hyatt@apple.com>
1098
1099         Reviewed by Jeremy Orlow.
1100
1101         https://bugs.webkit.org/show_bug.cgi?id=36277, make sure nth-child supports the positive unary prefix (+) as well as the negative
1102         one (-).
1103
1104         Added fast/css/nth-child-unary-prefix.html
1105
1106         * css/tokenizer.flex:
1107
1108 2010-03-23  Andrey Kosyakov  <caseq@chromium.org>
1109
1110         Reviewed by Dmitry Titov.
1111
1112         Change notification sent to inspector frontend on workers creation / destruction
1113         to be posted asynchronously to avoid JS reenterability problems. Also, renamed
1114         willDestroyWorker to didDestroyWorker to reflect that it gets called later and got
1115         rid of explicit IDs for workers (use addresses instead).
1116         https://bugs.webkit.org/show_bug.cgi?id=36213
1117
1118         * inspector/InjectedScriptHost.cpp:
1119         (WebCore::InjectedScriptHost::didDestroyWorker):
1120         * inspector/InjectedScriptHost.h:
1121         * inspector/InjectedScriptHost.idl:
1122         * inspector/InspectorController.cpp:
1123         (WebCore::PostWorkerNotificationToFrontendTask::create):
1124         (WebCore::PostWorkerNotificationToFrontendTask::PostWorkerNotificationToFrontendTask):
1125         (WebCore::PostWorkerNotificationToFrontendTask::performTask):
1126         (WebCore::InspectorController::postWorkerNotificationToFrontend):
1127         (WebCore::InspectorController::didCreateWorker):
1128         (WebCore::InspectorController::didDestroyWorker):
1129         * inspector/InspectorController.h:
1130         (WebCore::InspectorController::):
1131         * inspector/InspectorFrontend.cpp:
1132         (WebCore::InspectorFrontend::didDestroyWorker):
1133         * inspector/InspectorFrontend.h:
1134         * inspector/InspectorWorkerResource.h:
1135         (WebCore::InspectorWorkerResource::create):
1136         (WebCore::InspectorWorkerResource::id):
1137         (WebCore::InspectorWorkerResource::InspectorWorkerResource):
1138         * inspector/front-end/InjectedFakeWorker.js:
1139         (InjectedFakeWorker.FakeWorker.prototype.terminate):
1140         * inspector/front-end/WorkersSidebarPane.js:
1141         (WebInspector.didDestroyWorker):
1142         * workers/AbstractWorker.cpp:
1143         (WebCore::AbstractWorker::AbstractWorker):
1144         (WebCore::AbstractWorker::onDestroyWorker):
1145         * workers/AbstractWorker.h:
1146         (WebCore::AbstractWorker::asID):
1147         * workers/SharedWorker.cpp:
1148         (WebCore::SharedWorker::SharedWorker):
1149         * workers/Worker.cpp:
1150         (WebCore::Worker::Worker):
1151
1152 2010-03-22  David Hyatt  <hyatt@apple.com>
1153
1154         Reviewed by Sam Weinig.
1155
1156         https://bugs.webkit.org/show_bug.cgi?id=36266, support DOM Level 3 focusin/focusout events.  Add support for
1157         IE onfocusin/onfocusout extensions to HTML.  The old DOM level 2 names (DOMFocusIn/DOMFocusOut are still supported).
1158
1159         Added fast/events/focusinout.html
1160
1161         * dom/Document.cpp:
1162         (WebCore::Document::setFocusedNode):
1163         * dom/Event.cpp:
1164         (WebCore::Event::aliasedType):
1165         (WebCore::Event::hasAliasedType):
1166         * dom/Event.h:
1167         * dom/EventNames.h:
1168         * dom/EventTarget.cpp:
1169         (WebCore::EventTarget::fireEventListeners):
1170         * dom/EventTarget.h:
1171         * dom/Node.cpp:
1172         (WebCore::Node::dispatchUIEvent):
1173         * html/HTMLAttributeNames.in:
1174         * html/HTMLButtonElement.cpp:
1175         (WebCore::HTMLButtonElement::parseMappedAttribute):
1176         * html/HTMLElement.cpp:
1177         (WebCore::HTMLElement::parseMappedAttribute):
1178         * html/HTMLFormControlElement.cpp:
1179         (WebCore::HTMLTextFormControlElement::parseMappedAttribute):
1180         * html/HTMLFrameSetElement.cpp:
1181         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
1182         * html/HTMLSelectElement.cpp:
1183         (WebCore::HTMLSelectElement::parseMappedAttribute):
1184         * svg/SVGElement.cpp:
1185         (WebCore::SVGElement::parseMappedAttribute):
1186
1187 2010-03-23  MORITA Hajime  <morrita@google.com>
1188
1189         Reviewed by Alexey Proskuryakov.
1190
1191         WebCore::SelectionController::setSelection NULL pointer
1192         https://bugs.webkit.org/show_bug.cgi?id=31545
1193
1194         Added missing NULL-check that other APIs have.
1195
1196         Test: svg/dom/frame-related-api-during-load.html
1197
1198         * svg/SVGSVGElement.cpp:
1199         (WebCore::SVGSVGElement::deselectAll):
1200
1201 2010-03-23  Qi Zhang  <qi.2.zhang@nokia.com>
1202
1203         Reviewed by Simon Hausmann.
1204
1205         [Qt] LayoutTests/fast/canvas/fillrect_gradient.html failed
1206         https://bugs.webkit.org/show_bug.cgi?id=36444
1207
1208         Handle duplicated or unsorted colorStop at platformDestory
1209
1210         * platform/graphics/qt/GradientQt.cpp:
1211         (WebCore::Gradient::platformGradient):
1212
1213 2010-03-23  Julien Chaffraix  <jchaffraix@webkit.org>
1214
1215         Unreviewed build fix.
1216
1217         Try to make the window buildbot happy.
1218
1219         * xml/XMLHttpRequestProgressEventThrottle.cpp:
1220         * xml/XMLHttpRequestProgressEventThrottle.h: Move initialization of the
1221         static const in the cpp file.
1222
1223 2010-03-23  Pavel Feldman  <pfeldman@chromium.org>
1224
1225         Reviewed by Timothy Hatcher.
1226
1227         Web Inspector: make gear menu appear on styles panel at all times.
1228
1229         https://bugs.webkit.org/show_bug.cgi?id=36490
1230
1231         * inspector/front-end/inspector.css:
1232
1233 2010-03-23  Pavel Feldman  <pfeldman@chromium.org>
1234
1235         Reviewed by Timothy Hatcher.
1236
1237         Web Inspector: render nodes in inherited style bars as links.
1238
1239         https://bugs.webkit.org/show_bug.cgi?id=36486
1240
1241         * English.lproj/localizedStrings.js:
1242         * inspector/front-end/BreakpointsSidebarPane.js:
1243         (WebInspector.BreakpointsSidebarPane.prototype._appendBreakpointElement.breakpointClicked):
1244         (WebInspector.BreakpointsSidebarPane.prototype._appendBreakpointElement):
1245         * inspector/front-end/StylesSidebarPane.js:
1246         (WebInspector.StylesSidebarPane.prototype._update.else.insertInheritedNodeSeparator):
1247         (WebInspector.StylesSidebarPane.prototype._update):
1248         (WebInspector.StylesSidebarPane.prototype._selectNode):
1249         * inspector/front-end/inspector.js:
1250
1251 2010-03-23  Julien Chaffraix  <jchaffraix@webkit.org>
1252
1253         Reviewed by Alexey Proskuryakov.
1254
1255         [XHR] onProgress event needs to be dispatched according to what the specification states
1256         https://bugs.webkit.org/show_bug.cgi?id=18654
1257
1258         Test: http/tests/xmlhttprequest/xmlhttprequest-50ms-download-dispatch.html
1259
1260         * Android.mk:
1261         * GNUmakefile.am:
1262         * WebCore.gypi:
1263         * WebCore.pro:
1264         * WebCore.vcproj/WebCore.vcproj:
1265         * WebCore.xcodeproj/project.pbxproj:
1266         Added XMLHttpRequestProgressEventThrottle to the build systems.
1267
1268         * xml/XMLHttpRequest.cpp:
1269         (WebCore::XMLHttpRequest::XMLHttpRequest): Created the throttle.
1270         (WebCore::XMLHttpRequest::callReadyStateChangeListener): The 'readyState' event are
1271         dispatched using the XMLHttpRequestProgressEventThrottle now. For the DONE state, we
1272         need to flush any pending progress event as we do not want it to be dispatched after
1273         the DONE readyState event.
1274         (WebCore::XMLHttpRequest::createRequest): Made this event use the
1275         XMLHttpRequestProgressEventThrottle for event dispatching.
1276         (WebCore::XMLHttpRequest::abort): Ditto.
1277         (WebCore::XMLHttpRequest::networkError): Ditto.
1278         (WebCore::XMLHttpRequest::abortError): Ditto.
1279         (WebCore::XMLHttpRequest::didReceiveData): Ditto. Also fixed a potential warning.
1280         (WebCore::XMLHttpRequest::suspend):
1281         (WebCore::XMLHttpRequest::resume): Implemented the logic for suspend / resume.
1282         * xml/XMLHttpRequest.h:
1283         * xml/XMLHttpRequestProgressEventThrottle.cpp: Added.
1284         (WebCore::XMLHttpRequestProgressEventThrottle::XMLHttpRequestProgressEventThrottle):
1285         (WebCore::XMLHttpRequestProgressEventThrottle::~XMLHttpRequestProgressEventThrottle):
1286         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent): Implemented the bulk
1287         of the event throttling here: we use a timer to do so, as long as the timer is active it means
1288         that events are coming faster than the throttling time and we coalesce them.
1289         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchEvent): Generic method to dispatch an event.
1290         (WebCore::XMLHttpRequestProgressEventThrottle::flushProgressEvent): Called when we want to dispatch
1291         any pending events and stopping any further dispatching.
1292         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchPausedEvent): Used to dispatch the event
1293         that was queued due to the object being suspended.
1294         (WebCore::XMLHttpRequestProgressEventThrottle::fired): Used to dispatch any coalesced event.
1295         (WebCore::XMLHttpRequestProgressEventThrottle::hasEventToDispatch): Used to check if we have
1296         an event to dispatch.
1297         (WebCore::XMLHttpRequestProgressEventThrottle::suspend): Marked the object as suspended.
1298         (WebCore::XMLHttpRequestProgressEventThrottle::resume): Dispatched the event that was queued.
1299         * xml/XMLHttpRequestProgressEventThrottle.h: Added.
1300         (WebCore::):
1301         (WebCore::XMLHttpRequestProgressEventThrottle::suspended):
1302
1303 2010-03-23  Pavel Feldman  <pfeldman@chromium.org>
1304
1305         Reviewed by Timothy Hatcher.
1306
1307         Web Inspector: Element inspector search funtion: Error dispatching: performSearch.
1308
1309         https://bugs.webkit.org/show_bug.cgi?id=36488
1310
1311         Test: inspector/elements-panel-search.html
1312
1313         * inspector/front-end/ElementsPanel.js:
1314         (WebInspector.ElementsPanel.prototype.performSearch):
1315         (WebInspector.ElementsPanel.prototype.addNodesToSearchResult):
1316         * inspector/front-end/InjectedScript.js:
1317         (injectedScriptConstructor.):
1318         (injectedScriptConstructor):
1319
1320 2010-03-23  Qi Zhang  <qi.2.zhang@nokia.com>
1321
1322         Reviewed by Simon Hausmann.
1323
1324         [Qt]  fast/canvas/patternfill-repeat.html failed.
1325         https://bugs.webkit.org/show_bug.cgi?id=34477
1326
1327         Change Pattern to expose the repeatX and repeatY
1328         At GraphicsContextQt to apply repeatX and repeatY
1329
1330         * platform/graphics/Pattern.h:
1331         (WebCore::Pattern::repeatX):
1332         (WebCore::Pattern::repeatY):
1333         * platform/graphics/qt/GraphicsContextQt.cpp:
1334         (WebCore::GraphicsContext::drawLine):
1335         (WebCore::GraphicsContext::fillRect):
1336         (WebCore::GraphicsContext::rotate):
1337
1338 2010-03-23  Alex Milowski  <alex@milowski.com>
1339
1340         Reviewed by Kenneth Rohde Christiansen.
1341
1342         Removed the use of beta STIX fonts.
1343
1344         * css/mathml.css:
1345
1346 2010-03-23  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1347
1348         Reviewed by Holger Freyther.
1349
1350         [GTK] Does not build with latest GTK+ development release
1351         https://bugs.webkit.org/show_bug.cgi?id=36398
1352
1353         Fix building with newest GTK+ versions.
1354
1355         * GNUmakefile.am:
1356         * platform/gtk/GtkPluginWidget.cpp:
1357         (WebCore::GtkPluginWidget::invalidateRect):
1358         (WebCore::GtkPluginWidget::paint):
1359         * platform/gtk/GtkVersioning.h: Added.
1360         * platform/gtk/PlatformScreenGtk.cpp:
1361         (WebCore::getVisual):
1362         (WebCore::screenRect):
1363         (WebCore::screenAvailableRect):
1364         * platform/gtk/ScrollbarGtk.cpp:
1365         (ScrollbarGtk::paint):
1366         * plugins/gtk/gtk2xtbin.c:
1367         (gtk_xtbin_set_position):
1368         (gtk_xtbin_unrealize):
1369
1370 2010-03-23  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1371
1372         Reviewed by Kenneth Rohde Christiansen.
1373
1374         [Qt] Remove support for Qt v4.4
1375         https://bugs.webkit.org/show_bug.cgi?id=36389
1376
1377         No new tests as there is no new functionality.
1378
1379         * WebCore.pri:
1380         * WebCore.pro:
1381         * platform/network/qt/ResourceHandleQt.cpp:
1382         (WebCore::ResourceHandle::willLoadFromCache):
1383         * platform/qt/CookieJarQt.cpp:
1384         (WebCore::setCookies):
1385         (WebCore::cookies):
1386         * platform/qt/KURLQt.cpp:
1387         (WebCore::KURL::operator QUrl):
1388         * platform/qt/ScrollbarThemeQt.cpp:
1389         (WebCore::ScrollbarThemeQt::paintScrollCorner):
1390         * plugins/mac/PluginViewMac.cpp:
1391
1392 2010-03-23  Kent Tamura  <tkent@chromium.org>
1393
1394         Reviewed by Adam Barth.
1395
1396         Add checks if setNeedsWillValidateCheck() and
1397         setNeedsValidityCheck() are called correctly.
1398         https://bugs.webkit.org/show_bug.cgi?id=34924
1399
1400         Introduce HTMLFormControlElement::m_willValidate and
1401         m_isValid. They are the caches of willValidate() and
1402         isValidFormControlElement(). setNeedsWillValidateCheck() updates
1403         m_willValidate and setNeedsValidityCheck() updates m_isValid.
1404
1405         willValidate() and isValidFormControlElement() have assertions to
1406         check m_willvalidate or m_isValid has the correct state. If
1407         setNeedsWillValidateCheck() or setNeedsValidityCheck() is needed
1408         to be called and is not called, these assertions fail.
1409
1410         * html/HTMLButtonElement.h:
1411         (WebCore::HTMLButtonElement::recalcWillValidate):
1412         * html/HTMLFieldSetElement.h:
1413         (WebCore::HTMLFieldSetElement::recalcWillValidate):
1414         * html/HTMLFormControlElement.cpp:
1415         (WebCore::HTMLFormControlElement::HTMLFormControlElement):
1416         (WebCore::HTMLFormControlElement::parseMappedAttribute):
1417         (WebCore::HTMLFormControlElement::recalcWillValidate):
1418         (WebCore::HTMLFormControlElement::willValidate):
1419         (WebCore::HTMLFormControlElement::setNeedsWillValidateCheck):
1420         (WebCore::HTMLFormControlElement::validationMessage):
1421         (WebCore::HTMLFormControlElement::isValidFormControlElement):
1422         (WebCore::HTMLFormControlElement::setNeedsValidityCheck):
1423         * html/HTMLFormControlElement.h:
1424         * html/HTMLInputElement.cpp:
1425         (WebCore::HTMLInputElement::setInputType):
1426         (WebCore::HTMLInputElement::parseMappedAttribute):
1427         (WebCore::HTMLInputElement::setValue):
1428         (WebCore::HTMLInputElement::recalcWillValidate):
1429         * html/HTMLInputElement.h:
1430         * html/HTMLTextAreaElement.cpp:
1431         (WebCore::HTMLTextAreaElement::setNonDirtyValue):
1432
1433 2010-03-22  Pavel Feldman  <pfeldman@chromium.org>
1434
1435         Reviewed by Dave Hyatt.
1436
1437         Web Inspector: display CSS selector source line in the styles sidebar pane.
1438
1439         https://bugs.webkit.org/show_bug.cgi?id=36414
1440
1441         This change adds a sourceLine field into the CSSStyleRule that is populated
1442         from within the parser. CSSParser is now keeping track of the line numbers
1443         and last selector line number that is being used while creating CSSStyleRules.
1444
1445         Test: inspector/styles-source-lines.html
1446
1447         * css/CSSGrammar.y:
1448         * css/CSSParser.cpp:
1449         (WebCore::CSSParser::CSSParser):
1450         (WebCore::CSSParser::lex):
1451         (WebCore::CSSParser::countLines):
1452         (WebCore::CSSParser::createStyleRule):
1453         * css/CSSParser.h:
1454         (WebCore::CSSParser::updateLastSelectorLine):
1455         * css/CSSStyleRule.cpp:
1456         (WebCore::CSSStyleRule::CSSStyleRule):
1457         * css/CSSStyleRule.h:
1458         (WebCore::CSSStyleRule::create):
1459         (WebCore::CSSStyleRule::sourceLine):
1460         * css/tokenizer.flex:
1461         * inspector/InspectorDOMAgent.cpp:
1462         (WebCore::InspectorDOMAgent::buildObjectForRule):
1463         * inspector/front-end/DOMAgent.js:
1464         (WebInspector.CSSStyleDeclaration.parseRule):
1465         * inspector/front-end/StylesSidebarPane.js:
1466         (WebInspector.StylePropertiesSection):
1467
1468 2010-03-22  Qi Zhang  <qi.2.zhang@nokia.com>
1469
1470         Reviewed by Laszlo Gombos.
1471
1472         [Qt] Fix arc function in canvas
1473         https://bugs.webkit.org/show_bug.cgi?id=36296
1474
1475         Based on HTLM5 spec (4.8.10.1.8 Complex shapes), arc function should draw a line to previous point, not only the arc.
1476
1477         * platform/graphics/qt/PathQt.cpp:
1478         (WebCore::Path::addArc):
1479
1480 2010-03-19  Abhishek Arya  <inferno@chromium.org>
1481
1482         Reviewed by Adam Barth.
1483
1484         https://bugs.webkit.org/show_bug.cgi?id=36339
1485         Off-by-one memory corruption fix for long invalid websockets upgrade header
1486
1487         Test: websocket/tests/long-invalid-header.html
1488
1489         * websockets/WebSocketHandshake.cpp:
1490         (WebCore::WebSocketHandshake::readServerHandshake):
1491
1492 2010-03-22  Fumitoshi Ukai  <ukai@chromium.org>
1493
1494         Unreviewed build fix for Chromim Mac at r56376
1495
1496         Fix initializer order  of PopupContainer.
1497
1498         * platform/chromium/PopupMenuChromium.cpp:
1499         (WebCore::PopupContainer::PopupContainer):
1500
1501 2010-03-22  Jay Campan  <jcampan@google.com>
1502
1503         Reviewed by Darin Fisher.
1504
1505         Making Chromium select popups not steal activation from the browser.
1506         Select popups are now like autocomplete popups, shown in non-activated
1507         windows.
1508         https://bugs.webkit.org/show_bug.cgi?id=36062
1509
1510         * page/chromium/ChromeClientChromium.h:
1511         * platform/chromium/PopupMenuChromium.cpp:
1512         (WebCore::):
1513         (WebCore::PopupContainer::create):
1514         (WebCore::PopupContainer::PopupContainer):
1515         (WebCore::PopupContainer::~PopupContainer):
1516         (WebCore::PopupContainer::showPopup):
1517         (WebCore::PopupContainer::showExternal):
1518         (WebCore::PopupContainer::hidePopup):
1519         (WebCore::PopupMenu::show):
1520         * platform/chromium/PopupMenuChromium.h:
1521         (WebCore::PopupContainer::):
1522         (WebCore::PopupContainer::popupType):
1523
1524 2010-03-22  Dmitry Titov  <dimich@chromium.org>
1525
1526         Reviewed by Nate Chapin.
1527
1528         [v8] Crash if the worker is terminated before its initial script is executed.
1529         https://bugs.webkit.org/show_bug.cgi?id=36336
1530
1531         Test: fast/workers/termination-early.html
1532
1533         * bindings/v8/WorkerContextExecutionProxy.cpp:
1534         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded): Check for 0 context. When terminated, the v8 heap initialization returns 0.
1535         (WebCore::WorkerContextExecutionProxy::evaluate): Don't execute script if initialization failed.
1536         * bindings/v8/WorkerContextExecutionProxy.h:
1537
1538 2010-03-22  Andrey Kosyakov  <caseq@chromium.org>
1539
1540         Reviewed by Pavel Feldman.
1541
1542         Support creation of fake workers before document is loaded by deferring
1543         attaching of fake workers iframe until document is loaded and buffering all
1544         messages addressed to worker.
1545         https://bugs.webkit.org/show_bug.cgi?id=36445
1546
1547         * inspector/front-end/InjectedFakeWorker.js:
1548         (InjectedFakeWorker.FakeWorker.prototype.postMessage):
1549         (InjectedFakeWorker.FakeWorker.prototype._buildWorker):
1550         (InjectedFakeWorker.FakeWorker.prototype._attachWorkerFrameToDocument):
1551         (InjectedFakeWorker.FakeWorker.prototype._onWorkerFrameLoaded):
1552
1553 2010-03-22  Darin Fisher  <darin@chromium.org>
1554
1555         Reviewed by Brady Eidson.
1556
1557         HistoryController::replaceState() should modify m_currentItem
1558         instead of the current HistoryItem of the BackForwardList.
1559
1560         https://bugs.webkit.org/show_bug.cgi?id=36435
1561
1562         Test: fast/loader/stateobjects/replacestate-in-iframe.html
1563
1564         * loader/HistoryController.cpp:
1565         (WebCore::HistoryController::replaceState):
1566
1567 2010-03-22  Joseph Pecoraro  <joepeck@webkit.org>
1568
1569         Reviewed by David Kilzer.
1570
1571         Upstream Part of the iPhone Platform sharing code with the Mac Platform
1572         https://bugs.webkit.org/show_bug.cgi?id=35870
1573         <rdar://problem/7707283> and <rdar://problem/7707318>
1574
1575         Part 3 of 3: Shared code between iphone and mac. The shared code was
1576         refactored to be usable by both platforms without platform specific
1577         typing, meaning no NSEvent versus WebEvent special cases.
1578
1579           Shared code usable by either mac or iphone platforms.
1580
1581         * platform/cocoa/KeyEventCocoa.h:
1582         * platform/cocoa/KeyEventCocoa.mm:
1583         (WebCore::keyIdentifierForCharCode):
1584         (WebCore::windowsKeyCodeForKeyCode):
1585         (WebCore::windowsKeyCodeForCharCode):
1586
1587           Make use of the shared code. Keep anything platform specific in the
1588           original file before calling the shared code.
1589
1590         * platform/iphone/KeyEventIPhone.mm:
1591         (WebCore::keyIdentifierForKeyEvent):
1592         * platform/mac/KeyEventMac.mm:
1593         (WebCore::keyIdentifierForKeyEvent):
1594         (WebCore::windowsKeyCodeForKeyEvent):
1595
1596 2010-03-22  Kevin Decker  <kdecker@apple.com>
1597
1598         Reviewed by Simon Fraser.
1599
1600         https://bugs.webkit.org/show_bug.cgi?id=36328
1601
1602         * rendering/RenderEmbeddedObject.cpp:
1603         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject): Fix a find/repalce mistake from my earlier patch.
1604         Rename m_setShowsMissingPluginIndicator -> m_showsMissingPluginIndicator. 
1605         (WebCore::RenderEmbeddedObject::updateWidget): Don't update the widget if we're showing
1606         the missing plug-in indicator.
1607         (WebCore::RenderEmbeddedObject::paint):Fix a find/repalce mistake from my earlier patch.
1608         Rename m_setShowsMissingPluginIndicator -> m_showsMissingPluginIndicator. 
1609         (WebCore::RenderEmbeddedObject::paintReplaced): Ditto.
1610         * rendering/RenderEmbeddedObject.h: Ditto.
1611         (WebCore::RenderEmbeddedObject::setShowsMissingPluginIndicator): Ditto.
1612         (WebCore::RenderEmbeddedObject::showsMissingPluginIndicator): Ditto.
1613
1614 2010-03-22  Joseph Pecoraro  <joepeck@webkit.org>
1615
1616         Reviewed by David Kilzer.
1617
1618         Upstream Part of the iPhone Platform sharing code with the Mac Platform
1619         https://bugs.webkit.org/show_bug.cgi?id=35870
1620         <rdar://problem/7707283>
1621
1622         Part 2 of 3: No changes other than moving code around.
1623         Copied KeyEvent function from platform/mac to a platform/cocoa shared directory.
1624
1625         * WebCore.xcodeproj/project.pbxproj: Added cocoa group and new files.
1626         * platform/cocoa/KeyEventCocoa.h: Added.
1627         * platform/cocoa/KeyEventCocoa.mm: Copied from WebCore/platform/mac/KeyEventMac.mm.
1628         (WebCore::keyIdentifierForKeyEvent):
1629         (WebCore::windowsKeyCodeForKeyEvent): Include the shared code.
1630         * platform/mac/KeyEventMac.mm:
1631
1632 2010-03-22  Joseph Pecoraro  <joepeck@webkit.org>
1633
1634         Reviewed by David Kilzer.
1635
1636         Part 1 of 3: Upstream iPhone KeyEvent platform code and share with Mac platform
1637         https://bugs.webkit.org/show_bug.cgi?id=35870
1638         <rdar://problem/7707283>
1639
1640         * WebCore.xcodeproj/project.pbxproj: Added iphone group and new files.
1641         * platform/iphone: Added.
1642         * platform/iphone/KeyEventCodesIPhone.h: Added.
1643         * platform/iphone/KeyEventIPhone.mm: Added. Ensure PLATFORM(IPHONE)
1644         * platform/mac/KeyEventMac.mm: Ensure PLATFORM(MAC)
1645
1646 2010-03-22  Kevin Decker  <kdecker@apple.com>
1647     
1648         Attempt to fix the Leopard build.
1649         * rendering/RenderEmbeddedObject.cpp: Add ".f" to contants.
1650
1651 2010-03-22  Justin Schuh  <jschuh@chromium.org>
1652
1653         Reviewed by Dirk Schulze.
1654
1655         Out of bounds read in SVG feColorMatrix filter
1656         https://bugs.webkit.org/show_bug.cgi?id=32714
1657
1658         Prevents an invalid read when a valid values attribute is not
1659         supplied for an feColorMatrix SVG filter. Also fixes general
1660         handling of missing or invalid values attribute.
1661
1662         Tests: svg/filters/feColorMatrix-invalid-value.svg
1663                svg/filters/feColorMatrix-values.svg
1664
1665         * svg/SVGFEColorMatrixElement.cpp:
1666         (WebCore::SVGFEColorMatrixElement::build):
1667
1668 2010-03-22  Philippe Normand  <pnormand@igalia.com>
1669
1670         Reviewed by Eric Carlson.
1671
1672         [GStreamer] Use ImageBuffer API to do painting
1673         https://bugs.webkit.org/show_bug.cgi?id=35783
1674
1675         New ImageGStreamer class abstracting the conversion of GStreamer
1676         buffers to cairo surfaces. Using this makes the painting code of
1677         the player more generic.
1678
1679         * GNUmakefile.am:
1680         * platform/graphics/gstreamer/ImageGStreamer.h: Added.
1681         (WebCore::ImageGStreamer::image):
1682         * platform/graphics/gstreamer/ImageGStreamerCairo.cpp: Added.
1683         (ImageGStreamer::createImage):
1684         (ImageGStreamer::ImageGStreamer):
1685         (ImageGStreamer::~ImageGStreamer):
1686         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1687         (WebCore::MediaPlayerPrivate::paint):
1688         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1689
1690 2010-03-22  Beth Dakin  <bdakin@apple.com>
1691
1692         Reviewed by Darin Adler.
1693
1694         Fix for <rdar://problem/7766437> With Web Inspector opened, a crash 
1695         occurs at Webcore:getMatchedCSSRules() when navigating to a 
1696         previous page
1697
1698         defaultView() can legitimately by null (as it is in this case), so 
1699         it must be null-checked.
1700
1701         * inspector/InspectorDOMAgent.cpp:
1702         (WebCore::InspectorDOMAgent::getStyles):
1703         (WebCore::InspectorDOMAgent::getComputedStyle):
1704         (WebCore::InspectorDOMAgent::getMatchedCSSRules):
1705
1706 2010-03-22  Kevin Decker  <kdecker@apple.com>
1707
1708         Reviewed by Darin.
1709
1710         https://bugs.webkit.org/show_bug.cgi?id=36328
1711         
1712         * loader/FrameLoader.cpp:
1713         (WebCore::FrameLoader::loadPlugin): Call setShowsMissingPluginIndicator(true) in cases that fail
1714         to generate a widget.
1715         * rendering/RenderEmbeddedObject.cpp: Added new missing plug-in related static constants
1716         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject): Initialize newly boolean to false.
1717         (WebCore::RenderEmbeddedObject::paint): Added.
1718         (WebCore::RenderEmbeddedObject::paintReplaced): Added. Draws a subtle rounded rectangle
1719         containing the text "Missing Plug-in".
1720         * rendering/RenderEmbeddedObject.h: Added the following two methods below.
1721         (WebCore::RenderEmbeddedObject::setShowsMissingPluginIndicator):
1722         (WebCore::RenderEmbeddedObject::showsMissingPluginIndicator):
1723         * rendering/RenderWidget.h: Moved paint(PaintInfo&, int, int) from private to protected.
1724
1725 2010-03-22  Jakub Wieczorek  <faw217@gmail.com>
1726
1727         Reviewed by Kenneth Rohde Christiansen.
1728
1729         [Qt] Phonon media backend: expose supported MIME types to WebCore
1730
1731         https://bugs.webkit.org/show_bug.cgi?id=33453
1732
1733         MediaPlayerPrivate should expose the MIME types that are supported
1734         by the underlying backend in Phonon.
1735
1736         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
1737         (WebCore::MediaPlayerPrivate::supportedTypesCache):
1738         (WebCore::MediaPlayerPrivate::getSupportedTypes):
1739         (WebCore::MediaPlayerPrivate::supportsType):
1740         * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
1741
1742 2010-03-22  Alexander Pavlov  <apavlov@chromium.org>
1743
1744         Reviewed by Pavel Feldman.
1745
1746         Web Inspector: AuditRules still use getMatchedCSSRules as a part of the img-related audit.
1747         https://bugs.webkit.org/show_bug.cgi?id=36424
1748
1749         * inspector/front-end/AuditRules.js:
1750         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
1751         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.receivedImages):
1752         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun.pushImageNodes):
1753         * inspector/front-end/InjectedScript.js:
1754         (injectedScriptConstructor):
1755
1756 2010-03-22  Darin Adler  <darin@apple.com>
1757
1758         Reviewed by Dan Bernstein.
1759
1760         TextBreakIteratorICU.cpp is incompatible with new UBreakIterator type in ICU 4.4
1761         https://bugs.webkit.org/show_bug.cgi?id=36381
1762
1763         * platform/text/TextBreakIteratorICU.cpp:
1764         (WebCore::setUpIterator): Use reinterpret_cast instead of static_cast or relying
1765         on conversion to void*.
1766         (WebCore::textBreakFirst): Ditto.
1767         (WebCore::textBreakLast): Ditto.
1768         (WebCore::textBreakNext): Ditto.
1769         (WebCore::textBreakPrevious): Ditto.
1770         (WebCore::textBreakPreceding): Ditto.
1771         (WebCore::textBreakFollowing): Ditto.
1772         (WebCore::textBreakCurrent): Ditto.
1773         (WebCore::isTextBreak): Ditto.
1774         (WebCore::setUpIteratorWithRules): Ditto.
1775
1776 2010-03-22  Eric Carlson  <eric.carlson@apple.com>
1777
1778         Reviewed by Sam Weinig.
1779
1780         Typo in GPL license text
1781         https://bugs.webkit.org/show_bug.cgi?id=36442
1782
1783         Fix typo - "aint with this library" -> "along with this library".
1784
1785         * bindings/scripts/CodeGenerator.pm:
1786         * bindings/scripts/CodeGeneratorJS.pm:
1787         * bindings/scripts/CodeGeneratorObjC.pm:
1788         * bindings/scripts/CodeGeneratorV8.pm:
1789         * bindings/scripts/IDLParser.pm:
1790         * bindings/scripts/IDLStructure.pm:
1791         * bindings/scripts/generate-bindings.pl:
1792
1793 2010-03-22  Jakub Wieczorek  <jwieczorek@webkit.org>
1794
1795         Reviewed by Simon Hausmann.
1796
1797         [Qt] Don't construct a QLineEdit every time when painting a text field
1798         https://bugs.webkit.org/show_bug.cgi?id=36373
1799
1800         Instead, keep one instance per RenderTheme around.
1801
1802         * platform/qt/RenderThemeQt.cpp:
1803         (WebCore::findFrameLineWidth):
1804
1805 2010-03-22  Luiz Agostini  <luiz.agostini@openbossa.org>
1806
1807         Reviewed by Kenneth Rohde Christiansen.
1808
1809         [Qt] Multiselect Popup - adjusting QtAbstractWebPopup
1810         https://bugs.webkit.org/show_bug.cgi?id=36186
1811
1812         QtAbstractWebPopup must provide new methods to be used by its descendants that
1813         wish to handle <select multiple> elements.
1814
1815         * platform/qt/QtAbstractWebPopup.cpp:
1816         (WebCore::QtAbstractWebPopup::selectItem):
1817         (WebCore::QtAbstractWebPopup::multiple):
1818         * platform/qt/QtAbstractWebPopup.h:
1819
1820 2010-03-22  Alex Milowski  <alex@milowski.com>
1821
1822         Reviewed by Kenneth Rohde Christiansen.
1823
1824         Added basic support for mfrac (fractions)
1825
1826         Test: mathml/presentation/fractions.xhtml
1827
1828         * WebCore.xcodeproj/project.pbxproj:
1829         * mathml/MathMLInlineContainerElement.cpp:
1830         (WebCore::MathMLInlineContainerElement::createRenderer):
1831         * mathml/RenderMathMLFraction.cpp: Added.
1832         (WebCore::RenderMathMLFraction::RenderMathMLFraction):
1833         (WebCore::RenderMathMLFraction::updateFromElement):
1834         (WebCore::RenderMathMLFraction::addChild):
1835         * mathml/RenderMathMLFraction.h: Added.
1836
1837 2010-03-22  Kevin Decker  <kdecker@apple.com>
1838
1839         Reviewed by John Sullivan.
1840
1841         https://bugs.webkit.org/show_bug.cgi?id=36328
1842
1843         * page/mac/WebCoreViewFactory.h: Added -missingPluginText method 
1844         * platform/LocalizedStrings.h: Added missingPluginText()
1845         * platform/gtk/LocalizedStringsGtk.cpp: Likewise.
1846         * platform/mac/LocalizedStringsMac.mm: Same here.
1847         * platform/qt/Localizations.cpp: Ditto.
1848
1849 2010-03-22  Yury Semikhatsky  <yurys@chromium.org>
1850
1851         Reviewed by Pavel Feldman.
1852
1853         Handle worker exceptions in V8MessageHandler like it's done in regular documents. This way all worker exceptions will be logged in the console not only those which happen in event listeners. 
1854
1855         https://bugs.webkit.org/show_bug.cgi?id=31171
1856
1857         * bindings/v8/V8AbstractEventListener.cpp:
1858         (WebCore::V8AbstractEventListener::invokeEventHandler): Removed explicit call to reportException.
1859         * bindings/v8/V8Utilities.cpp: reportException function was removed since it's not used.
1860         (WebCore::getScriptExecutionContext):
1861         * bindings/v8/V8Utilities.h:
1862         * bindings/v8/WorkerContextExecutionProxy.cpp:
1863         (WebCore::v8MessageHandler):
1864         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded): Setup message handler when first worker context is created.
1865
1866 2010-03-22  Leandro Pereira  <leandro@profusion.mobi>
1867
1868         Reviewed by Simon Hausmann.
1869
1870         Add EFL-specific code to page/EventHandler.cpp.
1871         http://webkit.org/b/36306
1872
1873         * page/EventHandler.cpp:
1874
1875 2010-03-22  Leandro Pereira  <leandro@profusion.mobi>
1876
1877         Reviewed by Simon Hausmann.
1878
1879         Add EFL-specific code to platform/DragImage.h and
1880         platform/DragData.h.
1881         http://webkit.org/b/36310
1882
1883         * platform/DragImage.h:
1884         * platform/DragData.h:
1885
1886 2010-03-22  Leandro Pereira  <leandro@profusion.mobi>
1887
1888         Reviewed by Simon Hausmann.
1889
1890         Add EFL-specific code to platform/FileSystem.h.
1891         http://webkit.org/b/36313
1892
1893         * platform/FileSystem.h:
1894
1895 2010-03-22  Leandro Pereira  <leandro@profusion.mobi>
1896
1897         Reviewed by Simon Hausmann.
1898
1899         Add EFL-specific code to platform/Cursor.h.
1900         http://webkit.org/b/36319
1901
1902         * platform/Cursor.h:
1903
1904 2010-03-22  Leandro Pereira  <leandro@profusion.mobi>
1905
1906         Reviewed by Simon Hausmann.
1907
1908         Add EFL-specific code to platform/NotImplemented.h.
1909         http://webkit.org/b/36320
1910
1911         * platform/NotImplemented.h:
1912
1913 2010-03-21  Kim Grönholm  <kim.gronholm@nomovok.com>
1914
1915         Reviewed by Simon Hausmann.
1916
1917         [Qt] GraphicsLayer: matrix interpolations in transform-animations don't behave correctly
1918         https://bugs.webkit.org/show_bug.cgi?id=35520
1919         
1920         The case where the list of source and target transform operations are 
1921         not the same but have the same size needs to be special-cased in
1922         GraphicsLayerQt, as well as the case where the source or target
1923         operation list is empty. The URLs listed here render correctly after
1924         applying the patch.
1925
1926         Tests: https://bug-35520-attachments.webkit.org/attachment.cgi?id=49890
1927                https://bug-35520-attachments.webkit.org/attachment.cgi?id=49889
1928             
1929
1930         * platform/graphics/qt/GraphicsLayerQt.cpp:
1931         (WebCore::TransformAnimationQt::applyFrame):
1932
1933 2010-03-21  Dmitry Gorbik  <socket.h@gmail.com>
1934
1935         <http://webkit.org/b/14858> <col> width ignored when not tied to a single cell
1936
1937         Reviewed by David Kilzer.
1938
1939         Fixed width calculation for cells with span when <col> is defined.
1940
1941         Test: fast/table/col-width-span-expand.html
1942
1943         * rendering/RenderTableCell.cpp:
1944         (WebCore::RenderTableCell::styleOrColWidth): Added the calculation of cell width
1945         in case of <col> defined and span > 1.
1946
1947 2010-03-20  Antonio Gomes  <tonikitoo@webkit.org>
1948
1949         Reviewed by Kenneth Christiansen.
1950         Patch by Antonio Gomes <tonikitoo@webkit.org>
1951
1952         Spatial Navigation: Code simplification in FocusController.cpp and SpatialNavigation.cpp (part I)
1953         https://bugs.webkit.org/show_bug.cgi?id=36168
1954
1955         Make use of isNull and document methods introduced in FocusCandidate class by patch in bug 36167.
1956         No functionalty change.
1957
1958         * page/FocusController.cpp:
1959         (WebCore::updateFocusCandidateIfCloser):
1960         * page/SpatialNavigation.cpp:
1961         (WebCore::distanceInDirection):
1962
1963 2010-03-20  Kevin Ollivier  <kevino@theolliviers.com>
1964
1965         [wx] Build fixes after recent changes.
1966
1967         * platform/graphics/wx/ImageWx.cpp:
1968         * wscript:
1969
1970 2010-03-20  Joseph Pecoraro  <joepeck@webkit.org>
1971
1972         Reviewed by David Kilzer.
1973
1974         Assertion failure in media/video-controls-with-mutation-event-handler.html
1975         https://bugs.webkit.org/show_bug.cgi?id=36376
1976
1977         Test: media/video-controls-with-mutation-event-handler.html
1978
1979         Break early (when not attached) in the defaultEventHandler before the
1980         slider is completely set up.
1981
1982         * rendering/MediaControlElements.cpp:
1983         (WebCore::MediaControlTimelineElement::defaultEventHandler):
1984         (WebCore::MediaControlVolumeSliderElement::defaultEventHandler):
1985         * rendering/RenderMedia.cpp:
1986         (WebCore::RenderMedia::createVolumeSlider):
1987
1988 2010-03-19  Shinichiro Hamaji  <hamaji@chromium.org>
1989
1990         Reviewed by Dan Bernstein.
1991
1992         WebCore::RenderButton::styleDidChange ReadAV@NULL (6739b7fe455ecb54a6812c0866c3b47c)
1993         https://bugs.webkit.org/show_bug.cgi?id=34641
1994
1995         Don't dig into buttons and menu lists when finding which element
1996         should be modified by :first-letter pseudo class.  Even before
1997         this change, we didn't dig into inline buttons and menu lists as
1998         they are replaced so this issue wasn't found long time.
1999
2000         Test: fast/css/first-letter-block-form-controls-crash.html
2001
2002         * rendering/RenderBlock.cpp:
2003         (WebCore::RenderBlock::updateFirstLetter):
2004
2005 2010-03-19  Adam Barth  <abarth@webkit.org>
2006
2007         Reviewed by Daniel Bates.
2008
2009         Change XSSAuditor block syntax
2010         https://bugs.webkit.org/show_bug.cgi?id=34436
2011
2012         Update our blocking syntax to something more reasonable.  Also,
2013         implemented a way for a web site to disable the filter.
2014
2015         Tests: http/tests/security/xssAuditor/no-protection-script-tag.html
2016                http/tests/security/xssAuditor/xss-protection-parsing-01.html
2017
2018         * page/XSSAuditor.cpp:
2019         (WebCore::XSSAuditor::xssProtection):
2020         (WebCore::XSSAuditor::findInRequest):
2021         * page/XSSAuditor.h:
2022         * platform/network/HTTPParsers.cpp:
2023         (WebCore::skipToken):
2024         (WebCore::parseXSSProtectionHeader):
2025         * platform/network/HTTPParsers.h:
2026         (WebCore::):
2027
2028 2010-03-19  Eric Uhrhane  <ericu@chromium.org>
2029
2030         Reviewed by Dmitry Titov.
2031
2032         Refactor DatabaseTracker.cpp for thread safety
2033         https://bugs.webkit.org/show_bug.cgi?id=34991
2034
2035         This enables calling into DatabaseTracker from multiple context threads,
2036         as will happen once Workers can access the Database.  It required a fair
2037         amount of reshuffling of locks.  I ended up splitting the public
2038         interface [calls that take locks and call private functions] from the
2039         implementations [calls that assert that locks are already held] in order
2040         to avoid lock conflicts.  I also had to make sure we weren't sharing
2041         Strings or SecurityOrigins across threads.
2042
2043         No new tests.
2044
2045         Allow access to database handles from multiple threads IFF SQLite is new enough and the user requests it.
2046
2047         * platform/sql/SQLiteDatabase.cpp:
2048         (WebCore::SQLiteDatabase::SQLiteDatabase):
2049         (WebCore::SQLiteDatabase::disableThreadingChecks):
2050         * platform/sql/SQLiteDatabase.h:
2051         (WebCore::SQLiteDatabase::sqlite3Handle):
2052         (WebCore::SQLiteDatabase::disableThreadingChecks):
2053
2054         Remove an asynchronous call from Database::close back to the execution thread, so that cleanup can be more deterministic.
2055
2056         * storage/Database.cpp:
2057         (WebCore::Database::markAsDeletedAndClose):
2058         (WebCore::Database::close):
2059         * storage/Database.h:
2060         (WebCore::Database::):
2061         * storage/DatabaseDetails.h:
2062         (WebCore::DatabaseDetails::DatabaseDetails):
2063         (WebCore::DatabaseDetails::thread):
2064         * storage/DatabaseTask.cpp:
2065         (WebCore::DatabaseCloseTask::doPerformTask):
2066         * storage/DatabaseThread.cpp:
2067         (WebCore::DatabaseThread::databaseThread):
2068
2069         Any Strings that get stored in DatabaseTracker, and any Strings returned from DatabaseTracker, are now threadsafeCopies.
2070         Public functions now take all needed locks, then generally call only private functions [there are a few exceptions: deletion functions and origins()].
2071         Private functions no longer take locks.
2072         m_quotaMapGuard becomes m_databaseGuard, and now protects m_database, m_quotaMap, m_proposedDatabases, m_databaseDirectoryPath, m_originsBeingDeleted, m_beingCreated, and m_beingDeleted.
2073         m_proposedDatabases replaces m_proposedDatabase, to account for reentrancy.
2074
2075         * storage/DatabaseTracker.h:
2076         * storage/DatabaseTracker.cpp:
2077         (WebCore::DatabaseTracker::originQuotaManagerNoLock):
2078         (WebCore::DatabaseTracker::originQuotaManager):
2079         (WebCore::DatabaseTracker::DatabaseTracker):
2080         (WebCore::DatabaseTracker::setDatabaseDirectoryPath):
2081         (WebCore::DatabaseTracker::databaseDirectoryPath):
2082         (WebCore::DatabaseTracker::trackerDatabasePath):
2083         (WebCore::DatabaseTracker::openTrackerDatabase):
2084         (WebCore::DatabaseTracker::canEstablishDatabase):
2085         (WebCore::DatabaseTracker::hasEntryForOriginNoLock):
2086         (WebCore::DatabaseTracker::hasEntryForOrigin):
2087         (WebCore::DatabaseTracker::hasEntryForDatabase):
2088         (WebCore::DatabaseTracker::originPath):
2089         (WebCore::DatabaseTracker::fullPathForDatabaseNoLock):
2090         (WebCore::DatabaseTracker::fullPathForDatabase):
2091         (WebCore::DatabaseTracker::populateOrigins):
2092         (WebCore::DatabaseTracker::origins):
2093         (WebCore::DatabaseTracker::databaseNamesForOriginNoLock):
2094         (WebCore::DatabaseTracker::databaseNamesForOrigin):
2095         (WebCore::DatabaseTracker::detailsForNameAndOrigin):
2096         (WebCore::DatabaseTracker::setDatabaseDetails):
2097         (WebCore::DatabaseTracker::usageForDatabase):
2098         (WebCore::DatabaseTracker::addOpenDatabase):
2099         (WebCore::DatabaseTracker::removeOpenDatabase):
2100         (WebCore::DatabaseTracker::usageForOriginNoLock):
2101         (WebCore::DatabaseTracker::usageForOrigin):
2102         (WebCore::DatabaseTracker::quotaForOriginNoLock):
2103         (WebCore::DatabaseTracker::quotaForOrigin):
2104         (WebCore::DatabaseTracker::setQuota):
2105         (WebCore::DatabaseTracker::addDatabase):
2106         (WebCore::DatabaseTracker::deleteAllDatabases):
2107         (WebCore::DatabaseTracker::deleteOrigin):
2108         (WebCore::DatabaseTracker::deleteDatabase):
2109         (WebCore::DatabaseTracker::deleteDatabaseFile):
2110         (WebCore::DatabaseTracker::setClient):
2111         (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
2112         (WebCore::DatabaseTracker::notifyDatabasesChanged):
2113
2114         These functions keep track of in-progress deletions and creations, so that we can make sure nobody every deletes a database file while a live database is using it.
2115         (WebCore::DatabaseTracker::canCreateDatabase):
2116         (WebCore::DatabaseTracker::recordCreatingDatabase):
2117         (WebCore::DatabaseTracker::doneCreatingDatabase):
2118         (WebCore::DatabaseTracker::creatingDatabase):
2119         (WebCore::DatabaseTracker::canDeleteDatabase):
2120         (WebCore::DatabaseTracker::recordDeletingDatabase):
2121         (WebCore::DatabaseTracker::doneDeletingDatabase):
2122         (WebCore::DatabaseTracker::deletingDatabase):
2123         (WebCore::DatabaseTracker::canDeleteOrigin):
2124         (WebCore::DatabaseTracker::deletingOrigin):
2125         (WebCore::DatabaseTracker::recordDeletingOrigin):
2126         (WebCore::DatabaseTracker::doneDeletingOrigin):
2127
2128         Any SecurityOrigins stored in OriginQuotaManager are now threadsafeCopies of inputs.  There's a new tryLock() function in addition to the existing lock().
2129
2130         * storage/OriginQuotaManager.cpp:
2131         (WebCore::OriginQuotaManager::tryLock):
2132         (WebCore::OriginQuotaManager::trackOrigin):
2133         * storage/OriginQuotaManager.h:
2134
2135         * page/SecurityOrigin.cpp:
2136         (WebCore::SecurityOrigin::databaseIdentifier):
2137         Removed DEFINE_STATIC_LOCAL wrapper on a local variable; it appears to have been a small optimization, but it's not thread-safe.
2138
2139 2010-03-19  Luiz Agostini  <luiz.agostini@openbossa.org>
2140
2141         Reviewed by Antti Koivisto.
2142
2143         Multiselect popups - rendering
2144         https://bugs.webkit.org/show_bug.cgi?id=36006
2145
2146         The objective of this patch is to create a compile time flag that can be used
2147         to force all <select> elements to be rendered as menu lists.
2148
2149         Theme stylesheet mechanism has been used to change the appearance of the elements.
2150
2151         Class QtStyleOptionWebComboBox has been introduced to provide to QStyle objects
2152         the needed information to render <select multiple> comboboxes.
2153
2154         * WebCore.pri:
2155         * WebCore.pro:
2156         * css/themeQtNoListboxes.css: Added.
2157         (select[size][multiple]):
2158         * dom/SelectElement.h:
2159         (WebCore::SelectElementData::usesMenuList):
2160         * platform/qt/QtStyleOptionWebComboBox.h: Added.
2161         (WebCore::QtStyleOptionWebComboBox::QtStyleOptionWebComboBox):
2162         (WebCore::QtStyleOptionWebComboBox::multiple):
2163         (WebCore::QtStyleOptionWebComboBox::checkMultiple):
2164         * platform/qt/RenderThemeQt.cpp:
2165         (WebCore::RenderThemeQt::extraDefaultStyleSheet):
2166         (WebCore::RenderThemeQt::paintMenuList):
2167         (WebCore::RenderThemeQt::paintMenuListButton):
2168         * platform/qt/RenderThemeQt.h:
2169
2170 2010-03-19  Zhenyao Mo  <zmo@google.com>
2171
2172         Reviewed by Oliver Hunt.
2173
2174         Update WebGLArray.slice() to new spec
2175         https://bugs.webkit.org/show_bug.cgi?id-35612
2176
2177         * bindings/js/JSWebGLArrayCustom.cpp: Adding support for default inputs.
2178         (WebCore::JSWebGLArray::slice):
2179         * bindings/v8/custom/V8WebGLArrayCustom.cpp: Ditto.
2180         (WebCore::V8WebGLArray::sliceCallback):
2181         * html/canvas/WebGLArray.cpp: Map start/end to offset/length.
2182         (WebCore::WebGLArray::calculateOffsetAndLength):
2183         * html/canvas/WebGLArray.h: Modified slice parameters.
2184         * html/canvas/WebGLArray.idl: Define custom binding for slice().
2185         * html/canvas/WebGLByteArray.cpp: Modified slice parameters.
2186         (WebCore::WebGLByteArray::slice):
2187         * html/canvas/WebGLByteArray.h: Ditto.
2188         * html/canvas/WebGLFloatArray.cpp: Ditto.
2189         (WebCore::WebGLFloatArray::slice):
2190         * html/canvas/WebGLFloatArray.h: Ditto.
2191         * html/canvas/WebGLIntArray.cpp: Ditto.
2192         (WebCore::WebGLIntArray::slice):
2193         * html/canvas/WebGLIntArray.h: Ditto.
2194         * html/canvas/WebGLShortArray.cpp: Ditto.
2195         (WebCore::WebGLShortArray::slice):
2196         * html/canvas/WebGLShortArray.h: Ditto.
2197         * html/canvas/WebGLUnsignedByteArray.cpp: Ditto.
2198         (WebCore::WebGLUnsignedByteArray::slice):
2199         * html/canvas/WebGLUnsignedByteArray.h: Ditto.
2200         * html/canvas/WebGLUnsignedIntArray.cpp: Ditto.
2201         (WebCore::WebGLUnsignedIntArray::slice):
2202         * html/canvas/WebGLUnsignedIntArray.h: Ditto.
2203         * html/canvas/WebGLUnsignedShortArray.cpp: Ditto.
2204         (WebCore::WebGLUnsignedShortArray::slice):
2205         * html/canvas/WebGLUnsignedShortArray.h: Ditto.
2206
2207 2010-03-19  Yong Li <yong.li@torchmobile.com> and Andy Estes <aestes@apple.com>
2208
2209         Reviewed by Darin Adler.
2210
2211         Ensure the segments inside SharedBuffer are merged before constructing
2212         a CFData with it.
2213
2214         https://bugs.webkit.org/show_bug.cgi?id=50843
2215
2216         * manual-tests/WebKitSite.webarchive: Added.
2217         * manual-tests/webarchive-test.html: Added.
2218         * platform/cf/SharedBufferCF.cpp:
2219         (WebCore::SharedBuffer::createCFData):
2220
2221 2010-03-19  Justin Schuh  <jschuh@chromium.org>
2222
2223         Reviewed by Oliver Hunt.
2224
2225         Security: ReadAV@NULL for negative feMorphology filter radius
2226         https://bugs.webkit.org/show_bug.cgi?id=34566
2227
2228         Prevents building the filter if either radius is negative.
2229         Catches negative radii resulting from conversions.
2230
2231         Test: svg/filters/feMorphology-invalid-radius.svg
2232
2233         * svg/SVGFEMorphologyElement.cpp:
2234         (WebCore::SVGFEMorphologyElement::build):
2235         * svg/graphics/filters/SVGFEMorphology.cpp:
2236         (WebCore::FEMorphology::apply):
2237
2238 2010-03-19  Chris Marrin  <cmarrin@apple.com>
2239
2240         Reviewed by Simon Fraser.
2241
2242         Fixed a crash with AnimationController getting deleted out from under itself.
2243         
2244         It's possible for the Frame that owns an AnimationController to get deleted
2245         in the EndTransitionEvent (or other animation events) to get deleted in the
2246         event handler. Normally this case is protected against by preventing the Frame
2247         from getting deleted until the end of the runloop. But native uses of the 
2248         WebView can subvert this protection. So I added a protector to the 
2249         animation event dispatcher to protect it in those cases.
2250
2251         Test: transitions/transition-end-event-destroy-iframe.html
2252
2253         * page/animation/AnimationController.cpp:
2254         (WebCore::AnimationControllerPrivate::updateStyleIfNeededDispatcherFired):
2255
2256 2010-03-19  Luiz Agostini  <luiz.agostini@openbossa.org>
2257
2258         Reviewed by Antti Koivisto.
2259
2260         Multiselect Popup - PopupMenuClient extension
2261         https://bugs.webkit.org/show_bug.cgi?id=36178
2262
2263         PopupMenuClient class is the interface used by combobox popup implementations.
2264         It needs to be extended to handle <select multiple> needs.
2265
2266         A new interface named ListPopupMenuClient that inherits from PopupMenuClient was created.
2267         The use of this new class instead of adding methods to PopupMenuClient avoids changes
2268         in other non related implementations of PopupMenuClient.
2269
2270         RenderMenuList has changed to inherit ListPopupMenuClient instead of PopupMenuClient
2271         and to have the new methods implemented.
2272
2273         * platform/PopupMenuClient.h:
2274         * rendering/RenderMenuList.cpp:
2275         (WebCore::RenderMenuList::listBoxSelectItem):
2276         (WebCore::RenderMenuList::multiple):
2277         * rendering/RenderMenuList.h:
2278
2279 2010-03-19  Simon Fraser  <simon.fraser@apple.com>
2280
2281         Reviewed by Dimitri Glazkov.
2282
2283         https://bugs.webkit.org/show_bug.cgi?id=36387
2284         REGRESSION: Can "uncheck" radio buttons by clicking on them
2285         
2286         My change in r56174 caused radio buttons and checkboxes to go down the same code path by virtue
2287         of allowsIndeterminate(), but this broke save/restore behavior on radio buttons.
2288         
2289         Fix by saving and restoring both the intermediate and checked state for radio buttons
2290         and checkboxes, as well as the "current radio button" state.
2291
2292         Test: fast/forms/radio-checkbox-restore-indeterminate.html
2293
2294         * html/HTMLInputElement.cpp:
2295         (WebCore::EventHandlingState::EventHandlingState): New struct to hold state between preDispatchEventHandler()
2296         and postDispatchEventHandler().
2297         (WebCore::HTMLInputElement::preDispatchEventHandler): Store intermedate and checked state
2298         and the current radio button.
2299         (WebCore::HTMLInputElement::postDispatchEventHandler): Restore state as appropriate.
2300         * html/HTMLInputElement.h: Add a comment to clarify how 'intermediate' interacts with 'checked', according
2301         to the spec.
2302
2303 2010-03-19  Alexander Pavlov  <apavlov@chromium.org>
2304
2305         Reviewed by Pavel Feldman.
2306
2307         Web Inspector: caret moves past prompt in javascript console
2308         https://bugs.webkit.org/show_bug.cgi?id=26602
2309
2310         Having noticed any Element children besides a leading <br> (which are empty
2311         text nodes), WebCore editing facility thinks it should delete the <br>,
2312         thus clearing away the text prompt contents.
2313
2314         * inspector/front-end/TextPrompt.js:
2315         (WebInspector.TextPrompt.prototype.clearAutoComplete):
2316         (WebInspector.TextPrompt.prototype._completionsReady):
2317         * inspector/front-end/utilities.js:
2318         (Element.prototype.pruneEmptyTextNodes):
2319
2320 2010-03-19  Adam Roben  <aroben@apple.com>
2321
2322         Windows clean build fix after r56192
2323
2324         * WebCore.vcproj/WebCore.vcproj: Copy headers from
2325         platform/graphics/cg to $WebKitOutputDir as part of the post-build
2326         event so that WebKit can use them. (The only one we currently require
2327         is FontPlatformData.h.)
2328
2329         * platform/graphics/win/FontPlatformDataCGWin.cpp: Touched to force a
2330         build.
2331
2332 2010-03-19  Joseph Pecoraro  <joepeck@webkit.org>
2333
2334         Reviewed by David Kilzer.
2335
2336         Assertion failure in media/video-controls-with-mutation-event-handler.html
2337         https://bugs.webkit.org/show_bug.cgi?id=36376
2338
2339         Fix crashing test. Underlying the media element's volume slider is a
2340         range input, which sanitizes values before expected on the media control.
2341
2342         * rendering/RenderMedia.cpp:
2343         (WebCore::RenderMedia::createVolumeSlider):
2344
2345 2010-03-19  Brady Eidson  <beidson@apple.com>
2346
2347         Reviewed by Darin Adler.
2348
2349         3 of the new HTML5 loading events need to be asynchronous.
2350
2351         Laying the groundwork for:
2352         https://bugs.webkit.org/show_bug.cgi?id=36201
2353         https://bugs.webkit.org/show_bug.cgi?id=36202
2354         https://bugs.webkit.org/show_bug.cgi?id=36334
2355         https://bugs.webkit.org/show_bug.cgi?id=36335
2356
2357         Document already had an asynchronous event delivery mechanism for storage events, so
2358         we can repurpose that for all async events.
2359
2360         No new tests. (No change in behavior)
2361
2362         * dom/Document.cpp:
2363         (WebCore::Document::Document):
2364         (WebCore::Document::implicitClose): Use Document::schedule* for the related events.
2365         (WebCore::Document::enqueueEvent): Renamed from enqueueStorageEvent
2366         (WebCore::Document::pendingEventTimerFired): Renamed from "storageEventTimerFired"
2367         (WebCore::Document::statePopped): Use Document::schedulePopstateEvent
2368         (WebCore::Document::enqueuePageshowEvent): All Pageshow events are piped through here.
2369           This will be made asynchronous in a separate patch.
2370         (WebCore::Document::enqueueHashchangeEvent): All Hashchange events are piped through here.
2371           This will be made asynchronous in a separate patch.
2372         (WebCore::Document::enqueuePopstateEvent): All Popstate events are piped through here.
2373           This will be made asynchronous in a separate patch.
2374         * dom/Document.h:
2375         (WebCore::):
2376
2377         * history/CachedFrame.cpp:
2378         (WebCore::CachedFrameBase::restore): Use Document::enqueuePageshowEvent
2379
2380         * loader/FrameLoader.cpp:
2381         (WebCore::FrameLoader::loadInSameDocument): Use Document::enqueueHashchangeEvent
2382
2383         * storage/StorageEventDispatcher.cpp:
2384         (WebCore::StorageEventDispatcher::dispatch): Use Document::enqueueEvent
2385
2386 2010-03-19  Kevin Decker  <kdecker@apple.com>
2387
2388         Reviewed by Darin Adler and Brady Eidson.
2389
2390         First step toward:
2391         https://bugs.webkit.org/show_bug.cgi?id=36328
2392
2393         This is the first step torward eliminating the WebKit WebNullPluginView class. The responsibility for this will soon
2394         be in platform-independent code in WebCore. The plan is to change RenderEmbeddedObject and give it the capability of
2395         drawing the missing plug-in text. 
2396
2397         * loader/FrameLoader.cpp:
2398         (WebCore::FrameLoader::requestObject): Renamed the renderer parameter to requestEmbeddedObject and made it
2399         a RenderEmbeddedObject.
2400         (WebCore::FrameLoader::loadPlugin): Likewise.
2401         * loader/FrameLoader.h: Updated loadPlugin() and requestObject() method signatures accordingly. 
2402
2403 2010-03-19  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2404
2405         Reviewed by Simon Hausmann.
2406
2407         [Qt] Disable TILED_BACKING_STORE if Qt version is earlier than Qt4.6
2408         https://bugs.webkit.org/show_bug.cgi?id=36348
2409
2410         Backing store implementation for QtWebKit requires at least Qt
2411         version 4.6.
2412
2413         No new tests as there is no new functionality.
2414
2415         * WebCore.pri:
2416
2417 2010-03-19  Joseph Pecoraro  <joepeck@webkit.org>
2418
2419         Reviewed by David Kilzer.
2420
2421         <input type=range> does not validate correctly without a renderer and the tests are incorrect
2422         https://bugs.webkit.org/show_bug.cgi?id=36259
2423
2424         Setting value attribute on an <input type=range> to an out-of-range value fires oninput
2425         https://bugs.webkit.org/show_bug.cgi?id=16990
2426
2427         Part 2 of 2: When setting the range element's value, overflows and underflows
2428         are automatically sanitized to valid values. Moved the general case
2429         sanitization code out of the Renderer into HTMLInputElement::sanitizeValue.
2430
2431         * html/HTMLInputElement.cpp:
2432         (WebCore::HTMLInputElement::value): when getting a default value on reset() ensure the defaultValue is provided
2433         (WebCore::HTMLInputElement::sanitizeValue): clamp the value within the max/min/step range constraints
2434         * html/StepRange.cpp:
2435         (WebCore::StepRange::StepRange): allow const element in the constructor
2436         (WebCore::StepRange::clampValue): clamp from a String value
2437         * html/StepRange.h:
2438         (WebCore::StepRange::defaultValue): easy calculation of the default value for max/min/step range constraints
2439         * rendering/RenderSlider.cpp:
2440         (WebCore::RenderSlider::updateFromElement): no longer handle the general case sanitization in the renderer
2441
2442 2010-03-19  Joseph Pecoraro  <joepeck@webkit.org>
2443
2444         Reviewed by David Kilzer.
2445
2446         <input type=range> does not validate correctly without a renderer and the tests are incorrect
2447         https://bugs.webkit.org/show_bug.cgi?id=36259
2448
2449         Part 1 of 2: Refactoring the SliderRange struct out of RenderSlider
2450         into a more appropriate place. Changed the named to StepRange. Changed
2451         from a struct to a class.
2452
2453           Added new files to the build.
2454
2455         * GNUmakefile.am:
2456         * WebCore.gypi:
2457         * WebCore.pro:
2458         * WebCore.vcproj/WebCore.vcproj:
2459         * WebCore.xcodeproj/project.pbxproj:
2460
2461           Renamed and moved class SliderRange to StepRange.
2462
2463         * html/StepRange.cpp: Added.
2464         (WebCore::StepRange::StepRange):
2465         (WebCore::StepRange::clampValue):
2466         (WebCore::StepRange::valueFromElement):
2467         (WebCore::sliderPosition):
2468         * html/StepRange.h: Added.
2469         (WebCore::StepRange::proportionFromValue):
2470         (WebCore::StepRange::valueFromProportion):
2471         * rendering/RenderSlider.cpp:
2472         (WebCore::RenderSlider::updateFromElement): updated to use StepRange
2473         (WebCore::RenderSlider::setValueForPosition): updated to use StepRange
2474
2475 2010-03-19  Antti Koivisto  <koivisto@iki.fi>
2476
2477         Reviewed by Simon Hausmann.
2478
2479         https://bugs.webkit.org/show_bug.cgi?id=36366
2480         Repaint loop when painting using scaled CTMs with different translations
2481
2482         The code in RenderBoxModelScaleObserver::shouldPaintBackgroundAtLowQuality
2483         tests if the scaling has changed from the previous value by comparing the
2484         transformations. The test fails if the scale is the same but the translation 
2485         changes. This can lead to infinite repaint loop if the document is painted 
2486         in pieces using different translations (for example for tiling).
2487
2488         * rendering/RenderBoxModelObject.cpp:
2489         (WebCore::RenderBoxModelScaleObserver::shouldPaintBackgroundAtLowQuality):
2490
2491 2010-03-19  Pavel Feldman  <pfeldman@chromium.org>
2492
2493         Reviewed by Timothy Hatcher.
2494
2495         Web Inspector: editing shorthands does not always work.
2496
2497         https://bugs.webkit.org/show_bug.cgi?id=36362
2498
2499         * inspector/InspectorDOMAgent.cpp:
2500         (WebCore::InspectorDOMAgent::applyStyleText):
2501         (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties):
2502         (WebCore::InspectorDOMAgent::shorthandValue):
2503         * inspector/InspectorDOMAgent.h:
2504         * inspector/front-end/StylesSidebarPane.js:
2505         (WebInspector.StylePropertyTreeElement.prototype):
2506         * inspector/front-end/inspector.css:
2507         (.section .properties li.disabled .enabled-button):
2508         * inspector/front-end/inspector.js:
2509         (WebInspector.startEditing.editingCommitted):
2510
2511 2010-03-19  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2512
2513         Reviewed by Simon Hausmann.
2514
2515         [Qt] Don't replace clip when drawing complex text
2516
2517         * platform/graphics/qt/FontQt.cpp:
2518
2519 2010-03-18  Darin Fisher  <darin@chromium.org>
2520
2521         Reviewed by Adam Barth.
2522
2523         If a frame is already in the document, then setting its "src" attribute
2524         should add the resultant navigation to history.
2525
2526         https://bugs.webkit.org/show_bug.cgi?id=9166
2527
2528         This behavior is specified in section 4.8.2 of the HTML5 spec.
2529
2530         Test: fast/loader/frame-src-change-added-to-history.html
2531
2532         * html/HTMLFrameElementBase.cpp:
2533         (WebCore::HTMLFrameElementBase::openURL):
2534         (WebCore::HTMLFrameElementBase::setLocation):
2535         * html/HTMLFrameElementBase.h:
2536         * loader/FrameLoader.cpp:
2537         (WebCore::FrameLoader::requestFrame):
2538         * loader/FrameLoader.h:
2539
2540 2010-03-18  Chris Evans  <cevans@chromium.org>
2541
2542         Reviewed by Nikolas Zimmermann.
2543
2544         Fix a minor crash with mismatched array sizes in SVG animation
2545         elements.
2546
2547         https://bugs.webkit.org/show_bug.cgi?id=35606
2548
2549         Test: svg/animations/keypoints-mismatch.svg
2550
2551         * svg/SVGAnimationElement.cpp:
2552         (WebCore::SVGAnimationElement::startedActiveInterval):
2553         Globally apply validations relevant to all animation types.
2554
2555 2010-03-18  Vangelis Kokkevis  <vangelis@chromium.org>
2556
2557         Reviewed by Adam Barth.
2558
2559         Implement software composited graphics layers in Chromium using the Skia library.
2560         https://bugs.webkit.org/show_bug.cgi?id=35557
2561         This is an initial step in the implementation. Layer compositing is functioning
2562         but not optimized in any way. Subsesquent check-ins will be necessary to fine tune
2563         it.
2564
2565         Test: No new exposed functionality so no new tests.
2566
2567         * WebCore.gypi:
2568           Added new source files to the chromium build
2569         * platform/graphics/GraphicsLayer.h:
2570           Added necessary typedef's and forward declarations for Chromium.
2571         * platform/graphics/skia/GraphicsLayerSkia.cpp: Added.
2572         * platform/graphics/skia/GraphicsLayerSkia.h: Added.
2573           Declaration and implementation of the platform-specific GraphicsLayer class.
2574         * platform/graphics/skia/LayerRendererSkia.cpp: Added.
2575         * platform/graphics/skia/LayerRendererSkia.h: Added.
2576           Declaration and implementation of the Skia-based software compositor.
2577         * platform/graphics/skia/LayerSkia.cpp: Added.
2578         * platform/graphics/skia/LayerSkia.h: Added.
2579           Declaration and implementation of a compositable layer that uses a Skia canvas
2580           for backing store.
2581
2582 2010-03-18  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2583
2584         Reviewed by Darin Adler.
2585
2586         Make setPrinting() with printing=false, restore the previous
2587         media type in use.
2588
2589         Test: fast/media/print-restores-previous-mediatype.html
2590
2591         * page/Frame.cpp:
2592         (WebCore::Frame::setPrinting):
2593         * page/FrameView.cpp:
2594         (WebCore::FrameView::adjustMediaTypeForPrinting):
2595         * page/FrameView.h:
2596
2597 2010-03-18  David Kilzer  <ddkilzer@apple.com>
2598
2599         <http://webkit.org/b/36338> Remove unused RenderReplaced::adjustOverflowForBoxShadowAndReflect() declaration
2600
2601         Rubber-stamped by Darin Adler.
2602
2603         This declaration should have been removed in r47440.
2604
2605         * rendering/RenderReplaced.h:
2606         (WebCore::RenderReplaced::adjustOverflowForBoxShadowAndReflect): Removed.
2607
2608 2010-03-18  Jian Li  <jianli@chromium.org>
2609
2610         Reviewed by Dmitry Titov.
2611
2612         Dragging a PDF image triggers assertion in DragController::startDrag()
2613         https://bugs.webkit.org/show_bug.cgi?id=36247
2614
2615         Test: fast/images/drag-pdf-as-image.html
2616
2617         * platform/graphics/cg/PDFDocumentImage.cpp:
2618         (WebCore::PDFDocumentImage::filenameExtension):
2619         * platform/graphics/cg/PDFDocumentImage.h:
2620
2621 2010-03-18  Simon Fraser  <simon.fraser@apple.com>
2622
2623         Reviewed by Dan Bernstein.
2624
2625         Avoid taking a reference to a String owned by a temporary AtomicString.
2626
2627         * css/CSSSelector.cpp:
2628         (WebCore::CSSSelector::RareData::parseNth):
2629
2630 2010-03-18  Chris Marrin  <cmarrin@apple.com>
2631
2632         Reviewed by Simon Fraser.
2633
2634         Fixed parenting issues with HW layers on Windows
2635         https://bugs.webkit.org/show_bug.cgi?id=32449
2636         
2637         CACF can't properly fix superlayer changes, so a layer added
2638         as a sublayer must have a null superlayer. I changed a couple of
2639         places that change sublayers to removeFromSuperlayer while adding
2640         to a new layer. This fixes both the problem of disappearing children
2641         and children getting doubled. Also got rid of removeSublayer(). Layers
2642         should always be removed from their parent with removeFromSuperlayer().
2643         
2644         This also removed moveLayer(), which is not used and may not be safe in how
2645         it copies.
2646
2647         * platform/graphics/win/GraphicsLayerCACF.cpp:Changed setName to be like Mac, to give more debugging info (to fix problems like these)
2648         (WebCore::GraphicsLayerCACF::setName):
2649         * platform/graphics/win/WKCACFLayer.cpp:Make sure superlayer is null before adding
2650         (WebCore::WKCACFLayer::insertSublayer):
2651         (WebCore::WKCACFLayer::replaceSublayer):
2652         (WebCore::WKCACFLayer::removeFromSuperlayer):
2653         (WebCore::WKCACFLayer::setSublayers):
2654         (WebCore::WKCACFLayer::printLayer):print the superlayer for better debugging
2655         * platform/graphics/win/WKCACFLayer.h:
2656
2657 2010-03-18  Dimitri Glazkov  <dglazkov@chromium.org>
2658
2659         Unreviewed, build fix.
2660
2661         [Chromium] Change the order of mac/ and cg/ include dirs to fix compile break
2662         due to http://trac.webkit.org/changeset/56192,
2663
2664         * WebCore.gyp/WebCore.gyp: Changed the order.
2665
2666 2010-03-18  David Hyatt  <hyatt@apple.com>
2667
2668         Reviewed by Oliver Hunt.
2669
2670         https://bugs.webkit.org/show_bug.cgi?id=36325
2671
2672         Add support for stopImmediatePropagation from DOM Level 3 Events.
2673
2674         Added fast/events/stop-immediate-propagation.html.
2675
2676         * dom/Event.cpp:
2677         (WebCore::Event::Event):
2678         * dom/Event.h:
2679         (WebCore::Event::timeStamp):
2680         (WebCore::Event::stopPropagation):
2681         (WebCore::Event::stopImmediatePropagation):
2682         (WebCore::Event::propagationStopped):
2683         (WebCore::Event::immediatePropagationStopped):
2684         * dom/Event.idl:
2685         * dom/EventTarget.cpp:
2686         (WebCore::EventTarget::fireEventListeners):
2687
2688 2010-03-18  Dimitri Glazkov  <dglazkov@chromium.org>
2689
2690         Unreviewed, build fix.
2691
2692         Return frame accessor back to Geolocation, it's used in GeolocationServiceChromium.
2693         The accessor was removed in http://trac.webkit.org/changeset/56188.
2694
2695         * page/Geolocation.h:
2696         (WebCore::Geolocation::frame): Added back.
2697
2698 2010-03-18  Brent Fulgham  <bfulgham@webkit.org>
2699
2700         Reviewed by Adam Roben.
2701
2702         Help reduce build problems due to font declarations.
2703         https://bugs.webkit.org/show_bug.cgi?id=36190
2704
2705         Functions unchanged, no new tests.
2706
2707         * WebCore.vcproj/WebCore.vcproj: Add new file, and show
2708           movement of FontPlatformData.h to cg/ directory.
2709         * platform/graphics/cairo/FontPlatformData.h: Merge in
2710           WinCairo-specific declarations.  Correct constructor
2711           declaration to use type float for font size.
2712         (WebCore::FontPlatformData::FontPlatformData):
2713         (WebCore::FontPlatformData::hfont):
2714         (WebCore::FontPlatformData::useGDI):
2715         (WebCore::FontPlatformData::fontFace):
2716         (WebCore::FontPlatformData::setSize):
2717         (WebCore::FontPlatformData::hash):
2718         (WebCore::FontPlatformData::isHashTableDeletedValue):
2719         * platform/graphics/cairo/FontPlatformDataCairo.cpp:
2720         (WebCore::FontPlatformData::FontPlatformData): Correct
2721           constructor to accept type float for font size.
2722         * platform/graphics/cg/FontPlatformData.h: Copied from WebCore/platform/graphics/win/FontPlatformData.h.
2723         (WebCore::FontPlatformData::FontPlatformData):
2724         (WebCore::FontPlatformData::hfont):
2725         (WebCore::FontPlatformData::cgFont):
2726         (WebCore::FontPlatformData::operator==):
2727         * platform/graphics/win/FontPlatformData.h: Removed.
2728         * platform/graphics/win/FontPlatformDataCairoWin.cpp:
2729         (WebCore::FontPlatformData::operator==): Move implementation
2730           here (previously in header) to match other cairo-based ports.
2731         * platform/graphics/win/RefCountedHFONT.h: Added.  This
2732           was extracted from win/FontPlatformData.h, and is now shared
2733           by the cg/FontPlatformData.h and cairo/FontPlatformData.h
2734         (WebCore::RefCountedHFONT::create):
2735         (WebCore::RefCountedHFONT::createDeleted):
2736         (WebCore::RefCountedHFONT::~RefCountedHFONT):
2737         (WebCore::RefCountedHFONT::hfont):
2738         (WebCore::RefCountedHFONT::hash):
2739         (WebCore::RefCountedHFONT::RefCountedHFONT):
2740
2741 2010-03-18  Simon Fraser  <simon.fraser@apple.com>
2742
2743         No review.
2744
2745         Fix brace style after r56170.
2746         
2747         * css/CSSStyleSelector.cpp:
2748         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2749
2750 2010-03-18  Simon Fraser  <simon.fraser@apple.com>
2751
2752         Reviewed by Dave Hyatt.
2753
2754         https://bugs.webkit.org/show_bug.cgi?id=36274
2755         CSS3 :nth-child selector 'odd' keyword case sensitivity test fails
2756         
2757         The tests for "odd", "even" etc. for nth-child selectors should be case insensitive.
2758
2759         Test: fast/css/nth-child-odd-case-insensitive.html
2760
2761         * css/CSSSelector.cpp:
2762         (WebCore::CSSSelector::RareData::parseNth):
2763
2764 2010-03-18  David Hyatt  <hyatt@apple.com>
2765
2766         Reviewed by Oliver Hunt.
2767
2768         https://bugs.webkit.org/show_bug.cgi?id=36265
2769
2770         Add support for event.defaultPrevented from DOM level 3.
2771     
2772         Added fast/events/defaultprevented.html
2773
2774         * dom/Event.idl:
2775
2776 2010-03-18  Darin Adler  <darin@apple.com>
2777
2778         Reviewed by Kenneth Rohde Christiansen.
2779
2780         Remove Geolocation.lastPosition, no longer in the spec.
2781         https://bugs.webkit.org/show_bug.cgi?id=36255
2782         rdar://problem/7746357
2783
2784         * WebCore.base.exp: Updated since Geolocation's destructor is now non-virtual.
2785
2786         * page/Geolocation.cpp:
2787         (WebCore::Geolocation::lastPosition): Add an assertion; it's only legal to
2788         call this if access to the location is allowed.
2789
2790         * page/Geolocation.h: Removed unneeded includes. Made destructor non-virtual,
2791         although it will still be virtual if any of the base classes have a virtual
2792         destructor. Made lastPosition, isAllowed, and isDenied functions private.
2793         Removed unused suspend, resume, setShouldClearCache, shouldClearCache,
2794         and frame functions.
2795
2796         * page/Geolocation.idl: Removed lastPosition read-only attribute. No longer in
2797         the Geolocation specification.
2798
2799 2010-03-18  David Hyatt  <hyatt@apple.com>
2800
2801         Reviewed by Simon Fraser.
2802
2803         https://bugs.webkit.org/show_bug.cgi?id=36275
2804
2805         Make sure :not does not allow pseudo-elements inside it. (Hooray for another pointless
2806         restriction on :not.)
2807
2808         Added fast/css/invalid-not-with-pseudo-element.html
2809
2810         * css/CSSGrammar.y:
2811         * css/CSSSelector.h:
2812         (WebCore::CSSSelector::matchesPseudoElement):
2813
2814 2010-03-18  Dan Bernstein  <mitz@apple.com>
2815
2816         Reviewed by Darin Adler.
2817
2818         <rdar://problem/7761400> Rework the fix for
2819         https://bugs.webkit.org/show_bug.cgi?id=18722
2820
2821         Test: fast/dynamic/float-remove-above-line-2.html
2822
2823         * rendering/RenderBlock.cpp:
2824         (WebCore::RenderBlock::removeFloatingObject): Treat 0- and less-than-0-height floats
2825         as having a height of 1 so that they intersect with the line they originate on.
2826         (WebCore::RenderBlock::clearFloats): Use numeric_limits.
2827         * rendering/RenderBlockLineLayout.cpp:
2828         (WebCore::RenderBlock::layoutInlineChildren): Removed the intersection checks here,
2829         so that a float is always included in the float list of the line it originates on, even
2830         if it does not intersect that line. This ensures that every float is accounted for, which
2831         is necessary during incremental layout when adding floats from clean lines.
2832
2833 2010-03-18  Antti Koivisto  <koivisto@iki.fi>
2834
2835         Reviewed by Kenneth Rohde Christiansen.
2836
2837         https://bugs.webkit.org/show_bug.cgi?id=36102
2838         [Qt] Scaling control API for tiled backing store
2839         
2840         Commit the new scale synchronously after unfreeze to avoid ugliness.
2841
2842         * platform/graphics/TiledBackingStore.cpp:
2843         (WebCore::TiledBackingStore::TiledBackingStore):
2844         (WebCore::TiledBackingStore::setContentsScale):
2845         (WebCore::TiledBackingStore::commitScaleChange):
2846         (WebCore::TiledBackingStore::setContentsFrozen):
2847         * platform/graphics/TiledBackingStore.h:
2848
2849 2010-03-18  David Hyatt  <hyatt@apple.com>
2850
2851         Reviewed by Simon Fraser.
2852
2853         https://bugs.webkit.org/show_bug.cgi?id=36281
2854
2855         Make sure an exception is raised if an @import rule is inserted in the wrong place.
2856         
2857         Also make sure (so that this particular test case passes) that rgba(0, 0, 0, 0) is dumped
2858         as transparent by getComputedStyle, since it most commonly occurs in background-color and
2859         that default makes more sense than dumping rgba values.
2860
2861         Added fast/css/invalid-import-insertion.html
2862
2863         * css/CSSPrimitiveValue.cpp:
2864         (WebCore::CSSPrimitiveValue::createColor):
2865         * css/CSSStyleSheet.cpp:
2866         (WebCore::CSSStyleSheet::insertRule):
2867
2868 2010-03-18  Luiz Agostini  <luiz.agostini@openbossa.org>
2869
2870         Reviewed by Kenneth Rohde Christiansen.
2871
2872         Multiselect Popup - Listbox click simulation
2873         https://bugs.webkit.org/show_bug.cgi?id=36177
2874
2875         Listbox popups will need to notify the corresponding select elements that a
2876         selection change happened. The current HTMLSelectElement interface does not
2877         allow multiple selections.
2878
2879         The new method  listBoxSelectItem will be used for that. I have refactored part
2880         of the mouse handling code in bug 36124 and I am now reusing it here for
2881         <select multiple> popups. All the other cases will handled as they were before to be
2882         sure that no side effects will show up.
2883
2884         * dom/SelectElement.cpp:
2885         (WebCore::SelectElement::updateListBoxSelection):
2886         (WebCore::SelectElement::listBoxOnChange):
2887         * dom/SelectElement.h:
2888         * html/HTMLSelectElement.cpp:
2889         (WebCore::HTMLSelectElement::listBoxPopupClick):
2890         * html/HTMLSelectElement.h:
2891
2892 2010-03-12  Ojan Vafai  <ojan@chromium.org>
2893
2894         Reviewed by David Levin.
2895
2896         smartdelete should only occur after double-click
2897         https://bugs.webkit.org/show_bug.cgi?id=35314
2898
2899         1. Consolidate all notions of selection-granularity into SelectionController.
2900         2. Now only mouse-based selections store a selection-granularity. This matches NSTextView.
2901
2902         New tests were added in http://trac.webkit.org/changeset/55913.
2903
2904         * WebCore.base.exp:
2905         * editing/MoveSelectionCommand.cpp:
2906         (WebCore::MoveSelectionCommand::MoveSelectionCommand):
2907         (WebCore::MoveSelectionCommand::doApply):
2908         * editing/MoveSelectionCommand.h:
2909         (WebCore::MoveSelectionCommand::create):
2910         * editing/SelectionController.cpp:
2911         (WebCore::SelectionController::SelectionController):
2912         (WebCore::SelectionController::setSelection):
2913         (WebCore::SelectionController::modify):
2914         (WebCore::SelectionController::clear):
2915         * editing/SelectionController.h:
2916         (WebCore::SelectionController::setSelection):
2917         (WebCore::SelectionController::granularity):
2918         * editing/VisibleSelection.cpp:
2919         (WebCore::VisibleSelection::VisibleSelection):
2920         (WebCore::VisibleSelection::expandUsingGranularity):
2921         (WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity):
2922         (WebCore::VisibleSelection::validate):
2923         * editing/VisibleSelection.h:
2924         (WebCore::operator==):
2925         * loader/FrameLoader.cpp:
2926         (WebCore::FrameLoader::clear):
2927         * page/DOMSelection.cpp:
2928         (WebCore::DOMSelection::extend):
2929         * page/DragController.cpp:
2930         (WebCore::DragController::concludeEditDrag):
2931         * page/EventHandler.cpp:
2932         (WebCore::EventHandler::selectClosestWordFromMouseEvent):
2933         (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
2934         (WebCore::EventHandler::handleMousePressEventTripleClick):
2935         (WebCore::EventHandler::handleMousePressEventSingleClick):
2936         (WebCore::EventHandler::updateSelectionForMouseDrag):
2937         * page/Frame.cpp:
2938         (WebCore::Frame::Frame):
2939         (WebCore::Frame::selectionGranularity):
2940         * page/Frame.h:
2941         * rendering/RenderTextControl.cpp:
2942         (WebCore::RenderTextControl::setSelectionRange):
2943
2944 2010-03-18  Dimitri Glazkov  <dglazkov@chromium.org>
2945
2946         Unreviewed, build fix.
2947
2948         [V8] Turn npObjectTypeInfo into a function, make everyone happy.
2949
2950         * bindings/v8/NPV8Object.cpp:
2951         (WebCore::npObjectTypeInfo): Added new function.
2952         (npCreateV8ScriptObject):
2953         * bindings/v8/NPV8Object.h: Turned npObjectTypeInfo into function.
2954         * bindings/v8/V8NPObject.cpp: Replaced references to function
2955
2956 2010-03-18  David Hyatt  <hyatt@apple.com>
2957
2958         Reviewed by Simon Fraser.
2959
2960         https://bugs.webkit.org/show_bug.cgi?id=36283
2961         
2962         The wrong constants were being used for the code that attempted to compact the background-repeat shorthand to
2963         a single value.
2964
2965         Added fast/backgrounds/background-repeat-computed-style.html
2966
2967         * css/CSSComputedStyleDeclaration.cpp:
2968         (WebCore::fillRepeatToCSSValue):
2969
2970 2010-03-18  Simon Fraser  <simon.fraser@apple.com>
2971
2972         Reviewed by Dave Hyatt.
2973
2974         https://bugs.webkit.org/show_bug.cgi?id=36273
2975         CSS3 :indeterminate and input type=radio test fails
2976
2977         The :indeterminate pseudo-class should apply to both radio buttons and checkboxes.
2978
2979         * html/HTMLInputElement.cpp:
2980         (WebCore::HTMLInputElement::setIndeterminate): Use allowsIndeterminate() to determine if the input
2981         supports the indeterminate state.
2982         (WebCore::HTMLInputElement::preDispatchEventHandler): Use allowsIndeterminate() to determine whether
2983         to handle the indeterminate state.
2984         (WebCore::HTMLInputElement::postDispatchEventHandler): Ditto.
2985         * html/HTMLInputElement.h:
2986         (WebCore::HTMLInputElement::allowsIndeterminate): New utility method, returns true for radio buttons
2987         and checkboxes.
2988
2989 2010-03-18  Simon Fraser  <simon.fraser@apple.com>
2990
2991         Reviewed by Dave Hyatt.
2992
2993         https://bugs.webkit.org/show_bug.cgi?id=36271
2994         CSS3 :enabled on an input type=hidden element fails
2995         
2996         The CSS3 selectors spec now makes it clear that hidden inputs should respect
2997         the :enabled and :disabled pseudo-classes.
2998
2999         Test: fast/forms/hidden-input-enabled.html
3000
3001         * css/CSSStyleSelector.cpp:
3002         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Remove checks for hidden inputs.
3003
3004 2010-03-18  Enrica Casucci  <enrica@apple.com>
3005
3006         Reviewed by Simon Fraser.
3007
3008         Intro text at Star Wars demo is clipped.
3009         <rdar://problem/7560979>
3010         https://bugs.webkit.org/show_bug.cgi?id=33909
3011         
3012         Test: compositing/repaint/layer-repaint.html
3013         
3014         We are flipping the coordinates for drawing, therefore
3015         we must flip them also when we invalidate the rectangles.
3016
3017         * platform/graphics/win/GraphicsLayerCACF.cpp:
3018         (WebCore::WebLayer::setNeedsDisplay):
3019
3020 2010-03-18  Nate Chapin  <japhet@chromium.org>
3021
3022         Unreviewed, Chromium build fix.
3023
3024         Missed a #include in V8Collection.h.
3025
3026         * bindings/v8/V8Collection.h:
3027
3028 2010-03-18  David Hyatt  <hyatt@apple.com>
3029
3030         Reviewed by Simon Fraser.
3031
3032         Fix for https://bugs.webkit.org/show_bug.cgi?id=36284.
3033         
3034         Make sure the CSS parser properly rejects negative border widths.
3035
3036         Added fast/borders/negative-border-width.html
3037
3038         * css/CSSParser.cpp:
3039         (WebCore::CSSParser::parseValue):
3040
3041 2010-03-18  Nate Chapin  <japhet@chromium.org>
3042
3043         Reviewed by Dimitri Glazkov.
3044
3045         [V8] Remove V8Index.h and all references to V8ClassIndex.
3046         
3047         https://bugs.webkit.org/show_bug.cgi?id=33477
3048
3049         * WebCore.gypi:
3050         * bindings/scripts/CodeGeneratorV8.pm:
3051         * bindings/v8/NPV8Object.cpp:
3052         * bindings/v8/NPV8Object.h:
3053         * bindings/v8/V8Collection.h:
3054         * bindings/v8/V8DOMWindowShell.cpp:
3055         * bindings/v8/V8DOMWindowShell.h:
3056         * bindings/v8/V8DOMWrapper.cpp:
3057         * bindings/v8/V8DOMWrapper.h:
3058         * bindings/v8/V8GCController.cpp:
3059         * bindings/v8/V8Helpers.cpp:
3060         * bindings/v8/V8Index.h: Removed.
3061         * bindings/v8/V8IsolatedContext.h:
3062         * bindings/v8/V8NPObject.cpp:
3063         * bindings/v8/V8Proxy.cpp:
3064         * bindings/v8/V8Proxy.h:
3065         * bindings/v8/V8SVGPODTypeWrapper.h:
3066         * bindings/v8/WorkerContextExecutionProxy.cpp:
3067         * bindings/v8/WorkerContextExecutionProxy.h:
3068         * bindings/v8/WrapperTypeInfo.h: Move WrapperTypeInfo struct into its own file from V8Index.h.
3069         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
3070         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3071         * bindings/v8/custom/V8EventSourceConstructor.cpp:
3072         * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp:
3073         * bindings/v8/custom/V8HTMLAudioElementConstructor.h:
3074         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
3075         * bindings/v8/custom/V8HTMLImageElementConstructor.h:
3076         * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp:
3077         * bindings/v8/custom/V8HTMLOptionElementConstructor.h:
3078         * bindings/v8/custom/V8HistoryCustom.cpp:
3079         * bindings/v8/custom/V8LocationCustom.cpp:
3080         * bindings/v8/custom/V8WebGLArrayCustom.h:
3081         * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
3082         * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
3083         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
3084         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
3085         * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
3086         * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
3087         * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
3088         * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
3089         * bindings/v8/custom/V8WebKitPointConstructor.cpp:
3090
3091 2010-03-18  Yury Semikhatsky  <yurys@chromium.org>
3092
3093         Reviewed by Pavel Feldman.
3094
3095         Preserve console history between debugging sessions.
3096
3097         https://bugs.webkit.org/show_bug.cgi?id=36223
3098
3099         * inspector/front-end/ConsoleView.js:
3100         (WebInspector.ConsoleView.prototype._settingsLoaded):
3101         (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult):
3102         (WebInspector.ConsoleView.prototype._enterKeyPressed):
3103         * inspector/front-end/Settings.js:
3104         (WebInspector.Settings.prototype._load):
3105
3106 2010-03-18  Kim Grönholm  <kim.gronholm@nomovok.com>
3107
3108         Reviewed by Simon Hausmann.
3109
3110         [Qt] GraphicsLayer: Pausing and resuming of animations don't work as expected
3111         https://bugs.webkit.org/show_bug.cgi?id=36219
3112         
3113         addAnimation and pauseAnimation were handling animation state changes in
3114         the wrong way.
3115         Apparently WebCore calls addAnimation for resuming, so we have to make 
3116         sure to resume an existing animation if that happens. Also, timeOffset 
3117         is now used for synchronization of the Qt animation clock with the 
3118         WebCore clock, as opposed to using it as a delay timer. 
3119         Both those fixes were necessary to get the layout test to work.
3120         
3121         LayoutTests/animations/play-state.html now passed on Qt.
3122
3123         * platform/graphics/qt/GraphicsLayerQt.cpp:
3124         (WebCore::AnimationQtBase::AnimationQtBase):
3125         (WebCore::TransformAnimationQt::updateState):
3126         (WebCore::GraphicsLayerQt::addAnimation):
3127         (WebCore::GraphicsLayerQt::pauseAnimation):
3128
3129 2010-03-18  Adam Langley  <agl@chromium.org>
3130
3131         Reviewed by David Levin.
3132
3133         [chromium] Fix inverted logic in per-strike renderer patch.
3134
3135         I screwed up in r55089 and got one of the conditions backwards. Thanks
3136         to Roman Tsisyk for pointing it out.
3137
3138         https://bugs.webkit.org/show_bug.cgi?id=35495
3139
3140         Test: platform/chromium/fast/text/chromium-linux-fontconfig-renderstyle.html
3141
3142         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
3143         (WebCore::FontPlatformData::querySystemForRenderStyle):
3144
3145 2010-03-18  Pavel Feldman  <pfeldman@chromium.org>
3146
3147         Reviewed by Timothy Hatcher.
3148
3149         Web Inspector: Show inherited styles for a selected DOM element
3150
3151         https://bugs.webkit.org/show_bug.cgi?id=28039
3152
3153         * English.lproj/localizedStrings.js:
3154         * inspector/InspectorDOMAgent.cpp:
3155         (WebCore::InspectorDOMAgent::getStyles):
3156         (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties):
3157         * inspector/front-end/DOMAgent.js:
3158         (WebInspector.CSSStyleDeclaration):
3159         * inspector/front-end/StylesSidebarPane.js:
3160         (WebInspector.StylesSidebarPane.prototype._update):
3161         (WebInspector.StylesSidebarPane.prototype._containsInherited):
3162         (WebInspector.StylePropertiesSection):
3163         (WebInspector.StylePropertiesSection.prototype.isPropertyInherited):
3164         (WebInspector.StylePropertiesSection.prototype.onpopulate):
3165
3166 2010-03-15  Antonio Gomes  <tonikitoo@webkit.org>
3167
3168         Reviewed by Gustavo Noronha.
3169         Patch by Antonio Gomes <tonikitoo@webkit.org>
3170
3171         Spatial Navigation: Add isNull() and document() convenience methods to FocusCandidate.
3172         https://bugs.webkit.org/show_bug.cgi?id=36167
3173
3174         It turns out that Spatial Navigation related code (in FocusController.cpp for
3175         instance) can be simplified and look better if FocusCandidate class offer some
3176         convenience method. This patch introduces a couple of them (isNull and a Document
3177         getter). It also adds another constructor that receives a Node as parameter.
3178
3179         A followup refactoring patch will be making use of these helper methods.
3180
3181         * page/SpatialNavigation.h:
3182         (WebCore::FocusCandidate::FocusCandidate): Added a "Node*" parameter
3183         to FocusCandidate's constructor.
3184         (WebCore::FocusCandidate::isNull): In the Spatial Navigation logic, a NULL
3185         FocusCandidate object is one that does not hold a valid reference to a "Node*".
3186         (WebCore::FocusCandidate::document): This method returns a pointer for the FocusCandidate
3187         node's document, if |node| is a valid pointer.
3188
3189 2010-03-18  Noam Rosenthal  <noam.rosenthal@nokia.com>
3190
3191         Reviewed by Antti Koivisto.
3192
3193         [Qt] [Performance] GraphicsLayerQt updates the scene too often
3194         https://bugs.webkit.org/show_bug.cgi?id=36158
3195
3196         This fix makes sure that flushChanges is only called when necessary,
3197         by calling the notifySync function asynchronously, which makes sure flushChanges() is called
3198         after the WebCore compositor has made all its changes.
3199
3200         This has shown a visual improvement on several test-cases.
3201
3202         * Makefile:
3203         * platform/graphics/qt/GraphicsLayerQt.cpp:
3204         (WebCore::GraphicsLayerQtImpl::):
3205         (WebCore::GraphicsLayerQtImpl::notifySyncRequired):
3206         (WebCore::GraphicsLayerQtImpl::notifyChange):
3207         (WebCore::GraphicsLayerQtImpl::flushChanges):
3208         (WebCore::GraphicsLayerQt::setMaskLayer):
3209         (WebCore::GraphicsLayerQt::setPosition):
3210         (WebCore::GraphicsLayerQt::setAnchorPoint):
3211         (WebCore::GraphicsLayerQt::setSize):
3212         (WebCore::GraphicsLayerQt::setTransform):
3213         (WebCore::GraphicsLayerQt::setChildrenTransform):
3214         (WebCore::GraphicsLayerQt::setPreserves3D):
3215         (WebCore::GraphicsLayerQt::setMasksToBounds):
3216         (WebCore::GraphicsLayerQt::setDrawsContent):
3217         (WebCore::GraphicsLayerQt::setBackgroundColor):
3218         (WebCore::GraphicsLayerQt::clearBackgroundColor):
3219         (WebCore::GraphicsLayerQt::setContentsOpaque):
3220         (WebCore::GraphicsLayerQt::setBackfaceVisibility):
3221         (WebCore::GraphicsLayerQt::setOpacity):
3222         (WebCore::GraphicsLayerQt::setContentsRect):
3223
3224 2010-03-18  Stephen White  <senorblanco@chromium.org>
3225
3226         Reviewed by Oliver Hunt.
3227
3228         Parsing of rgb() colors in HTML canvas is still fairly slow.
3229         findNamedColor() was showing up as hot, so this patch attempts to
3230         avoid calling it by putting the rgb() check ahead of the named
3231         colors.  It also removes a call to Color::Color() from
3232         CanvasStyle, which was doing a redundant check for the hex
3233         color and named colors, which CSSParser already does.  Finally, it
3234         changes the ad-hoc parser to check for negative values, and clamps them
3235         at zero.  This avoids the lex/yacc path for rgb() colors with
3236         negative color components.
3237
3238         https://bugs.webkit.org/show_bug.cgi?id=36199
3239
3240         Covered by fast/canvas/set-colors.html.
3241
3242         * css/CSSParser.cpp:
3243         (WebCore::parseInt):
3244         (WebCore::CSSParser::parseColor):
3245         * html/canvas/CanvasStyle.cpp:
3246         (WebCore::CanvasStyle::applyFillColor):
3247
3248 2010-03-18  David Kilzer  <ddkilzer@apple.com>
3249
3250         <http://webkit.org/b/36246> Node::removeAllEventListenersSlowCase is declared but not used
3251
3252         Reviewed by Sam Weinig.
3253
3254         * dom/Node.h:
3255         (WebCore::Node::removeAllEventListenersSlowCase): Removed
3256         declaration.  Implementation was removed in r48701.
3257
3258 2010-03-17  Stephan Aßmus  <superstippi@gmx.de>
3259
3260         Reviewed by Oliver Hunt.
3261
3262         [Haiku] Implement ImageBuffer support
3263         https://bugs.webkit.org/show_bug.cgi?id=35288
3264
3265         Covered by existing tests.
3266
3267         The StillImage class implements WebCore::Image by wrapping a native
3268         BBitmap. It will be needed to implement WebCore::ImageBuffer. This
3269         solution is just like it's done in the Qt port.
3270
3271         * platform/graphics/haiku/StillImageHaiku.cpp: Added.
3272         (WebCore::StillImage::StillImage):
3273         (WebCore::StillImage::destroyDecodedData):
3274         (WebCore::StillImage::decodedSize):
3275         (WebCore::StillImage::size):
3276         (WebCore::StillImage::nativeImageForCurrentFrame):
3277         (WebCore::StillImage::draw):
3278         * platform/graphics/haiku/StillImageHaiku.h: Added.
3279         (WebCore::StillImage::create):
3280
3281 2010-03-17  Holger Hans Peter Freyther  <zecke@selfish.org>
3282
3283         Rubber stamped by Gustavo Noronha Silva.
3284
3285         [Gtk+] Avoid making a copy of the HTTPHeaderMap.
3286
3287         ResourceRequest::httpHeaderFields() is returning a const
3288         reference but we are storing it as a simple value. This
3289         means that we run either the copy constructor or the assignment
3290         operator and make a copy of the RefPtrs.
3291
3292         This extra copy can be avoided easily by storing
3293         the result as a const reference.
3294
3295         * platform/network/soup/ResourceRequestSoup.cpp:
3296         (WebCore::ResourceRequest::toSoupMessage):
3297         * platform/network/soup/ResourceResponseSoup.cpp:
3298         (WebCore::ResourceResponseSoup::toSoupMessage):
3299
3300 2010-03-17  Alexander Pavlov  <apavlov@chromium.org>
3301
3302         Reviewed by Pavel Feldman.
3303
3304         Web Inspector: When switching resources in the Resources panel, the Content tab is always selected
3305         https://bugs.webkit.org/show_bug.cgi?id=36222
3306
3307         * inspector/front-end/ResourcesPanel.js:
3308         (WebInspector.ResourcesPanel.prototype.showResource):
3309
3310 2010-03-17  Brady Eidson  <beidson@apple.com>
3311
3312         Reviewed by Darin Adler.
3313
3314         databaseIdentifiers are not filtered for slashes
3315         <rdar://problem/7708789> and https://bugs.webkit.org/show_bug.cgi?id=36243
3316
3317         In addition to filtering for '/' and '\', to remove the directory vulnerability
3318         on all platforms, it seems worth it to also escape other characters that are
3319         obviously dangerous or illegal to have in a filename (mostly inspired by the 
3320         Windows illegal-character list).
3321
3322         No new tests - It's unclear how a test could possibly work into our testing
3323         infrastructure.
3324
3325         * page/SecurityOrigin.cpp:
3326         (WebCore::): Added a 128-bool table "needsEscaping" that has a true/false answer
3327           for lower-ASCII.
3328         (WebCore::SecurityOrigin::SecurityOrigin):
3329         (WebCore::SecurityOrigin::createFromDatabaseIdentifier): "Unescape" the host
3330           component using the KURL utility.
3331         (WebCore::shouldEscapeUChar): If the char is lower-ASCII, look it up in the 
3332           needsEscaping table. Otherwise, let it pass.
3333         (WebCore::encodedHost): Modeled after KURL's host escaping method, but targeted 
3334           for the escaping considerations for the host component. We don't use the KURL
3335           version because this one is "different" enough because it operates on UTF16 and
3336           has its own "is bad character?" decider.
3337         (WebCore::SecurityOrigin::databaseIdentifier): Create the escaped host if needed,
3338           and use it instead of the unescaped host.
3339         * page/SecurityOrigin.h:
3340
3341 2010-03-17  Dmitry Titov  <dimich@chromium.org>
3342
3343         Reviewed by Dimitri Glazkov.
3344
3345         [v8] Avoid reentry into v8 after TerminateExecution() on a worker thread.
3346         https://bugs.webkit.org/show_bug.cgi?id=36239
3347
3348         Test: fast/workers/termination-with-port-messages.html
3349
3350         * bindings/v8/V8Proxy.h:
3351         (WebCore::throwError): Avoid throwing if v8 execution is terminated anyways.
3352         * bindings/v8/WorkerScriptController.h:
3353         (WebCore::WorkerScriptController::proxy): Return V8 proxy as 0 if execution is terminating. Callers to check for 0 before invoking v8.
3354         * bindings/v8/custom/V8WorkerContextCustom.cpp:
3355         (WebCore::SetTimeoutOrInterval): Bail out if v8 proxy is 0.
3356         (WebCore::toV8): Ditto
3357
3358 2010-03-17  José Millán Soto  <jmillan@igalia.com>
3359
3360         Reviewed by Adam Barth.
3361
3362         Change the way of prefetching DNS to allow prefetching function to use full URL
3363         https://bugs.webkit.org/show_bug.cgi?id=35589
3364
3365         Creates a new function, ResourceHandle::prepareForURL, whose default implementation
3366         calls prefetchDNS with the host of the given URL as the parameter.
3367         Soup implementation of ResourceHandle::prepareForURL executes soup_session_prepare_for_uri.
3368         Soup implementation of prefetchDNS is removed.
3369         Changed various prefetchDNS calls to ResourceHandle::prepareForURL calls.
3370
3371         * GNUmakefile.am:
3372         * html/HTMLAnchorElement.cpp:
3373         (WebCore::HTMLAnchorElement::parseMappedAttribute):
3374         * html/HTMLLinkElement.cpp:
3375         (WebCore::HTMLLinkElement::process):
3376         * page/Chrome.cpp:
3377         (WebCore::Chrome::mouseDidMoveOverElement):
3378         * platform/network/DNS.h:
3379         * platform/network/ResourceHandle.cpp:
3380         (WebCore::ResourceHandle::prepareForURL):
3381         * platform/network/ResourceHandle.h:
3382         * platform/network/chromium/DNSChromium.cpp:
3383         (WebCore::ResourceHandle::prepareForURL):
3384         * platform/network/soup/DNSSoup.cpp: Removed.
3385         * platform/network/soup/ResourceHandleSoup.cpp:
3386         (WebCore::ResourceHandle::prepareForURL):
3387         * wml/WMLAElement.cpp:
3388         (WebCore::WMLAElement::parseMappedAttribute):
3389
3390 2010-03-17  Kenneth Russell  <kbr@google.com>
3391
3392         Reviewed by Darin Fisher.
3393
3394         Revert WebGL context attributes changes 33416 / r56074 and 36200 / r56093
3395         https://bugs.webkit.org/show_bug.cgi?id=36233
3396
3397         The patch for bug 33416, which added multisampling support to the
3398         WebGL back buffer, uncovered some OpenGL driver bugs on the build
3399         bots which need further investigation to determine the appropriate
3400         workaround. Reverting this change, the minor build fix in 36189,
3401         and the skipping of the affected tests in bug 36200.
3402
3403         Built and tested WebKit and Chromium and ran all WebGL layout
3404         tests in both.
3405
3406         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
3407         (WebCore::V8HTMLCanvasElement::getContextCallback):
3408         * platform/graphics/GraphicsContext3D.h:
3409         * platform/graphics/mac/Canvas3DLayer.h:
3410         * platform/graphics/mac/Canvas3DLayer.mm:
3411         (-[Canvas3DLayer drawInCGLContext:pixelFormat:forLayerTime:displayTime:]):
3412         * platform/graphics/mac/GraphicsContext3DMac.cpp:
3413         (WebCore::GraphicsContext3D::GraphicsContext3D):
3414         (WebCore::GraphicsContext3D::~GraphicsContext3D):
3415         (WebCore::GraphicsContext3D::reshape):
3416         (WebCore::GraphicsContext3D::bindFramebuffer):
3417         (WebCore::GraphicsContext3D::readPixels):
3418         * platform/graphics/mac/GraphicsLayerCA.mm:
3419         (WebCore::GraphicsLayerCA::setContentsToGraphicsContext3D):
3420
3421 2010-03-17  Yael Aharon  <yael.aharon@nokia.com>
3422
3423         Reviewed by Darin Adler.
3424
3425         Optimize painting for HTMLProgressElement
3426         https://bugs.webkit.org/show_bug.cgi?id=36113
3427         Cache the progress bar's position, so it is not required to recalculate
3428         it for each repaint. 
3429         Call repaintRectangle() when the position changes.
3430
3431         No new tests, as no new functionality introduced.
3432
3433         * html/HTMLProgressElement.cpp:
3434         (WebCore::HTMLProgressElement::parseMappedAttribute):
3435         * platform/qt/RenderThemeQt.cpp:
3436         (WebCore::RenderThemeQt::getNumberOfPixelsForProgressPosition):
3437         (WebCore::RenderThemeQt::paintProgressBar):
3438         * platform/qt/RenderThemeQt.h:
3439         * rendering/RenderProgress.cpp:
3440         (WebCore::RenderProgress::RenderProgress):
3441         (WebCore::RenderProgress::updateFromElement):
3442         * rendering/RenderProgress.h:
3443         (WebCore::RenderProgress::position):
3444         * rendering/RenderTheme.cpp:
3445         (WebCore::RenderTheme::getNumberOfPixelsForProgressPosition):
3446         * rendering/RenderTheme.h:
3447
3448 2010-03-17  Antonio Gomes  <tonikitoo@webkit.org>
3449
3450         Mac Buildfix: Using ASSERT_UNUSED instead of ASSERT.
3451
3452         Reviewed by Simon fraser.
3453         Patch by Antonio Gomes <tonikitoo@webkit.org>
3454
3455         * dom/SelectElement.cpp:
3456         (WebCore::SelectElement::listBoxDefaultEventHandler):
3457
3458 2010-03-17  Enrica Casucci  <enrica@apple.com>
3459
3460         Reviewed by Darin Adler.
3461
3462         Missing support for showing compositing layers borders and repaint count on Windows.
3463         <rdar://problem/7760736>
3464         <https://bugs.webkit.org/show_bug.cgi?id=36197>
3465
3466         * platform/graphics/win/GraphicsLayerCACF.cpp:
3467         (WebCore::WebLayer::drawInContext): Modified to use the correct font on Windows.
3468
3469 2010-03-16  Luiz Agostini  <luiz.agostini@openbossa.org>
3470
3471         Reviewed by Antti Koivisto.
3472
3473         [Qt] Multiselect Popup - SelectElement refactoring.
3474         https://bugs.webkit.org/show_bug.cgi?id=36124
3475
3476         As it is today it is not possible to the menulists popups to tell SelectElement
3477         that more then one option is selected. If you select one the other ones
3478         selected state will turn off.
3479
3480         For <select multiple> I needed to extend the API used by menulist popups. This
3481         is the first step. Just refactoring SelectElement without any behavior change.
3482         Separating code that will be reused in future patches.
3483
3484         * dom/SelectElement.cpp:
3485         (WebCore::SelectElement::updateSelectedState):
3486         (WebCore::SelectElement::listBoxDefaultEventHandler):
3487         * dom/SelectElement.h:
3488
3489 2010-03-17  Nate Chapin  <japhet@chromium.org>
3490
3491         Unreviewed, Chromium build fix.
3492
3493         Delete the correct file this time.
3494
3495         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: Copied from WebCore/bindings/v8/custom/V8XMLHttpRequestCustom.cpp.
3496         * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp: Removed.
3497
3498 2010-03-17  Nate Chapin  <japhet@chromium.org>
3499
3500         Reviewed by Dimitri Glazkov.
3501
3502         [V8] Remove custom bindings callbacks that aren't in use.
3503         (The relevant .idl doesn't mark them as V8Custom or Custom).
3504         
3505         https://bugs.webkit.org/show_bug.cgi?id=33066
3506
3507         * Android.v8bindings.mk:
3508         * WebCore.gypi:
3509         * bindings/scripts/CodeGeneratorV8.pm:
3510         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3511         * bindings/v8/custom/V8WebGLArrayCustom.h:
3512         * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
3513         * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
3514         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
3515         * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
3516         * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
3517         * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
3518         * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
3519         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
3520         * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp: Removed.
3521
3522 2010-03-17  Steve Block  <steveblock@google.com>
3523
3524         Reviewed by Dimitri Glazkov.
3525
3526         Adds ENABLE(WORKERS) guards to V8 bindings
3527         https://bugs.webkit.org/show_bug.cgi?id=36221
3528
3529         Build fix only, no new tests.
3530
3531         * bindings/v8/V8DOMWrapper.cpp:
3532         (WebCore::V8DOMWrapper::instantiateV8Object):
3533         * bindings/v8/V8Proxy.cpp:
3534         (WebCore::toV8Context):
3535
3536 2010-03-17  Yury Semikhatsky  <yurys@chromium.org>
3537
3538         Reviewed by Pavel Feldman.
3539
3540         Remove unused reference to InspectorController from InspectorFrontend.
3541
3542         https://bugs.webkit.org/show_bug.cgi?id=36218
3543
3544         * inspector/InspectorFrontend.h:
3545
3546 2010-03-17 Ilya Tikhonovsky  <loislo@chromium.org>
3547
3548         Reviewed by Pavel Feldman.
3549
3550         WebInspector: Timeline improvements - next iteration.
3551
3552         The top level records should be collapsed.
3553         Virtually linked events should be nested in Timeline like Send Request and
3554         corresponding Received Responce, Timer Install and Timer Fire etc.
3555         It should be possible to see Main Resource request.
3556
3557         https://bugs.webkit.org/show_bug.cgi?id=36122
3558
3559         * inspector/InspectorController.cpp:
3560         (WebCore::InspectorController::resetScriptObjects):
3561         (WebCore::InspectorController::didReceiveResponse):
3562         * inspector/InspectorTimelineAgent.cpp:
3563         (WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
3564         (WebCore::InspectorTimelineAgent::didReceiveResourceResponse):
3565         * inspector/InspectorTimelineAgent.h:
3566         * inspector/front-end/TimelinePanel.js:
3567         (WebInspector.TimelinePanel):
3568         (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
3569         (WebInspector.TimelinePanel.prototype.addRecordToTimeline):
3570         (WebInspector.TimelinePanel.prototype._findParentRecord):
3571         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
3572         (WebInspector.TimelinePanel.prototype.resize):
3573         (WebInspector.TimelinePanel.prototype._createTopLevelRecord):
3574         (WebInspector.TimelinePanel.prototype.reset):
3575         (WebInspector.TimelinePanel.prototype._clean):
3576         (WebInspector.TimelinePanel.prototype._refresh):
3577         (WebInspector.TimelinePanel.prototype._refreshRecords):
3578         (WebInspector.TimelinePanel.prototype._addToRecordsWindow):
3579         (WebInspector.TimelineCalculator.prototype.computeBarGraphPercentages):
3580         (WebInspector.TimelineCalculator.prototype.updateBoundaries):
3581         (WebInspector.TimelineRecordGraphRow):
3582         (WebInspector.TimelineRecordGraphRow.prototype.update):
3583         (WebInspector.TimelinePanel.FormattedRecord):
3584         (WebInspector.TimelinePanel.FormattedRecord.prototype.get children):
3585         (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
3586         * inspector/front-end/inspector.css:
3587         * loader/ResourceLoader.cpp:
3588         (WebCore::ResourceLoader::didReceiveResponse):
3589
3590 2010-03-17  Alexander Pavlov  <apavlov@chromium.org>
3591
3592         Reviewed by Pavel Feldman.
3593
3594         Web Inspector: Reimplement style-related audits using native API
3595         https://bugs.webkit.org/show_bug.cgi?id=36172
3596
3597         * inspector/InspectorBackend.cpp:
3598         (WebCore::InspectorBackend::getAllStyles):
3599         * inspector/InspectorBackend.h:
3600         * inspector/InspectorBackend.idl:
3601         * inspector/InspectorDOMAgent.cpp:
3602         (WebCore::InspectorDOMAgent::getAllStyles):
3603         (WebCore::InspectorDOMAgent::getMatchedCSSRules):
3604         (WebCore::InspectorDOMAgent::buildObjectForStyleSheet):
3605         (WebCore::InspectorDOMAgent::buildObjectForRule):
3606         * inspector/InspectorDOMAgent.h:
3607         * inspector/InspectorFrontend.cpp:
3608         (WebCore::InspectorFrontend::didGetAllStyles):
3609         * inspector/InspectorFrontend.h:
3610         * inspector/front-end/AuditRules.js:
3611         (WebInspector.AuditRules.evaluateInTargetWindow):
3612         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
3613         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.routine):
3614         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback):
3615         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.routine):
3616         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
3617         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
3618         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun):
3619         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun):
3620         * inspector/front-end/DOMAgent.js:
3621         * inspector/front-end/InjectedScript.js:
3622         (injectedScriptConstructor):
3623
3624 2010-03-17  Steve Block  <steveblock@google.com>
3625
3626         Reviewed by Jeremy Orlow.
3627
3628         Replace instances of bzero in WebCore/bridge common code with memset
3629         https://bugs.webkit.org/show_bug.cgi?id=36214
3630
3631         Syntax change only, no new tests.
3632
3633         * bridge/jni/JNIUtility.cpp:
3634         (JSC::Bindings::getJNIField):
3635         * bridge/jni/jsc/JNIBridgeJSC.cpp:
3636         (JavaField::dispatchValueFromInstance):
3637         * bridge/jni/jsc/JNIUtilityPrivate.cpp:
3638         (JSC::Bindings::convertValueToJValue):
3639         * bridge/jni/v8/JNIUtilityPrivate.cpp:
3640         (JSC::Bindings::convertNPVariantToJValue):
3641         * bridge/jni/v8/JavaNPObjectV8.cpp:
3642         (JSC::Bindings::AllocJavaNPObject):
3643
3644 2010-03-17  Yury Semikhatsky  <yurys@chromium.org>
3645
3646         Reviewed by Pavel Feldman.
3647
3648         Mark inspector resources as changed so that they are reloaded on the next frontend connection.
3649         
3650         Split resetScriptObjects into code specific for page navigation and insepctor frontend disconnection.
3651
3652         https://bugs.webkit.org/show_bug.cgi?id=36183
3653
3654         * WebCore.xcodeproj/project.pbxproj: Added InspectorWorkerResource.h to the project file.
3655         * inspector/InspectorController.cpp:
3656         (WebCore::InspectorController::disconnectFrontend):
3657         (WebCore::InspectorController::unbindAllResources):
3658         (WebCore::InspectorController::didCommitLoad):
3659         * inspector/InspectorController.h:
3660         * inspector/InspectorResource.cpp:
3661         (WebCore::InspectorResource::releaseScriptObject):
3662
3663 2010-03-17  Pavel Feldman  <pfeldman@chromium.org>
3664
3665         Reviewed by Timothy Hatcher.
3666
3667         Web Inspector: Capture main resource load events in timeline panel.
3668
3669         https://bugs.webkit.org/show_bug.cgi?id=36188
3670
3671         * inspector/front-end/TimelinePanel.js:
3672         (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
3673         (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
3674         (WebInspector.TimelinePanel.prototype.timelineWasStopped):
3675         (WebInspector.TimelinePanel.prototype.addRecordToTimeline):
3676         (WebInspector.TimelinePanel.prototype._clearPanel):
3677         (WebInspector.TimelinePanel.FormattedRecord):
3678
3679 2010-03-17  Zoltan Horvath  <zoltan@webkit.org>
3680
3681         Reviewed by Eric Seidel.
3682
3683         Allow custom memory allocation control for AtomicString class
3684         https://bugs.webkit.org/show_bug.cgi?id=35907
3685
3686         Inherits the following class from FastAllocBase because it is
3687         instantiated by 'new':
3688
3689         class name   - instantiated at: WebCore/'location'
3690         AtomicString - WebCore/html/HTMLTableElement.cpp:525
3691
3692         * platform/text/AtomicString.h:
3693
3694 2010-03-16  John Abd-El-Malek  <jam@chromium.org>
3695
3696         Reviewed by Darin Fisher.
3697
3698         Give keyboard focus to PluginDocuments by default
3699         https://bugs.webkit.org/show_bug.cgi?id=36147
3700
3701         Test: http/tests/plugins/plugin-document-has-focus.html
3702
3703         * loader/PluginDocument.cpp:
3704         (WebCore::PluginDocument::pluginNode):
3705         * loader/PluginDocument.h:
3706         * page/EventHandler.cpp:
3707         (WebCore::eventTargetNodeForDocument):
3708
3709 2010-03-16  Chris Fleizach  <cfleizach@apple.com>
3710
3711         Reviewed by Darin Adler.
3712
3713         REGRESSION (r53857): Crash when tabbing to <map>
3714         https://bugs.webkit.org/show_bug.cgi?id=36017
3715
3716         Test: fast/events/imagemap-norender-crash.html
3717
3718         * html/HTMLMapElement.cpp:
3719         (WebCore::HTMLMapElement::imageElement):
3720
3721 2010-03-16  Brent Fulgham  <bfulgham@webkit.org>
3722
3723         Build fix.  No Review.
3724
3725         Correct missing includes in cURL network backend introduced
3726         by recent changes in WebKit.
3727
3728         * platform/network/curl/ResourceHandleCurl.cpp: Add missing
3729           includes for SharedBuffer and PassRefPtr.
3730         (WebCore::ResourceHandle::loadResourceSynchronously): Correct
3731           constructor signature for ResourceHandle to match @r55688.
3732         * platform/network/curl/ResourceHandleManager.cpp: Add missing
3733           include for RetainPtr.
3734
3735 2010-03-16  Zhenyao Mo  <zmo@google.com>
3736
3737         Reviewed by Darin Fisher.
3738
3739         Hook up WebGLContextAttributes to OpenGL context creation code
3740         https://bugs.webkit.org/show_bug.cgi?id=33416
3741
3742         Test: fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias.html
3743
3744         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: Fix an index bug.
3745         * platform/graphics/GraphicsContext3D.h: Add members/functions for multisampling/stencil buffer purpose.
3746         * platform/graphics/mac/Canvas3DLayer.h: Add GraphicsContext3D as a member of Canvas3DLayer.
3747         * platform/graphics/mac/Canvas3DLayer.mm: Add multisampling support.
3748         * platform/graphics/mac/GraphicsContext3DMac.cpp: Hook up WebGLContextAttributes to OpenGL context creation code for Mac.
3749         * platform/graphics/mac/GraphicsLayerCA.mm: Adjust to modified Canvas3DLayer init call.
3750
3751 2010-03-16  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
3752
3753         Reviewed by Xan Lopez.
3754
3755         https://bugs.webkit.org/show_bug.cgi?id=35504
3756         [Gtk] Evaluate and fix AtkTable for layout tables
3757
3758         Causes "layout tables" to be exposed as AccessibilityTables for Gtk.
3759
3760         * accessibility/AccessibilityTable.cpp:
3761         (AccessibilityTable::isTableExposableThroughAccessibility):
3762
3763 2010-03-16  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
3764
3765         Unreviewed. Build fix for distcheck.
3766
3767         * GNUmakefile.am:
3768
3769 2010-03-15  Darin Fisher  <darin@chromium.org>
3770
3771         Reviewed by Adam Barth.
3772
3773         https://bugs.webkit.org/show_bug.cgi?id=36152
3774         [chromium] Add support for history.pushState and history.replaceState
3775
3776         This is covered by the existing tests in fast/loader/stateobjects
3777
3778         * bindings/v8/SerializedScriptValue.cpp:
3779         (WebCore::ZigZag::Deserializer::deserialize):
3780         (WebCore::SerializedScriptValue::deserialize):
3781         * bindings/v8/SerializedScriptValue.h:
3782         Switch to returning v8::Null instead of the empty value to match JSC
3783         and the spec.
3784
3785         * loader/FrameLoader.cpp:
3786         (WebCore::FrameLoader::loadInSameDocument): Call
3787         dispatchDidNavigateWithinPage just before dispatching events to the
3788         page.  This ordering is important since the event handlers could
3789         destroy the page or start another navigation.
3790
3791         * loader/FrameLoaderClient.h: Add dispatchDidNavigateWithinPage to
3792         notify the client whenever a navigation occurs without changing any of
3793         the documents in the page.
3794
3795 2010-03-16  Adam Roben  <aroben@apple.com>
3796
3797         Fix linker warnings when building WebCore on Windows
3798
3799         Rubber-stamped by Steve Falkenburg.
3800
3801         * WebCore.vcproj/WebCore.vcproj: Exclude JSDOMFormData.cpp from the
3802         build, since it's already included in DerivedSources.cpp. Also let VS
3803         sort this file as it saw fit.
3804
3805 2010-03-15  Antti Koivisto  <koivisto@iki.fi>
3806
3807         Reviewed by Simon Hausmann.
3808
3809         https://bugs.webkit.org/show_bug.cgi?id=36121
3810         [Qt] Make WebKit scrollbars work with tiling
3811          
3812         Translate coordinates correctly.
3813
3814         * page/Frame.cpp:
3815         (WebCore::Frame::tiledBackingStorePaintEnd):
3816
3817 2010-03-16  Jakub Wieczorek  <jwieczorek@webkit.org>
3818
3819         Reviewed by Eric Seidel.
3820
3821         [Qt] MediaPlayerPrivate: Initialize m_mediaPlayerControl to 0 to avoid crashes
3822         when no media services can be found.
3823
3824         https://bugs.webkit.org/show_bug.cgi?id=36142
3825
3826         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
3827         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
3828
3829 2010-03-16  Adam Barth  <abarth@webkit.org>
3830
3831         Unreviewed.
3832
3833         noscript tag should render when @sandbox disables JavaScript
3834         https://bugs.webkit.org/show_bug.cgi?id=36092
3835
3836         Add missing "!" in plugin code.  Should fix plugins/embed-inside-object
3837         on Gtk and Qt.
3838
3839         * plugins/PluginView.cpp:
3840         (WebCore::PluginView::load):
3841
3842 2010-03-16  Nate Chapin  <japhet@chromium.org>
3843
3844         Reviewed by Dimitri Glazkov.
3845
3846         [V8] Delete DerivedSourcesAllInOne.cpp.
3847
3848         https://bugs.webkit.org/show_bug.cgi?id=33048
3849
3850         * Android.v8bindings.mk:
3851         * bindings/v8/DerivedSourcesAllInOne.cpp: Removed.
3852
3853 2010-03-16  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
3854
3855         Revert r56006 as it caused functional issues. We will work on a
3856         testcase, and rework the fix, and land when we have this a bit
3857         more testable.
3858
3859         * platform/gtk/RenderThemeGtk.cpp:
3860         (WebCore::RenderThemeGtk::paintMediaPlayButton):
3861
3862 2010-03-16  Pavel Feldman  <pfeldman@chromium.org>
3863
3864         Reviewed by Timothy Hatcher.
3865
3866         Web Inspector: Errors when inspecting styles of non-renderable elements in XHTML.
3867
3868         https://bugs.webkit.org/show_bug.cgi?id=35025
3869
3870         * inspector/InspectorDOMAgent.cpp:
3871         (WebCore::InspectorDOMAgent::getStyles):
3872         * inspector/front-end/DOMAgent.js:
3873         (WebInspector.DOMNode.prototype._addAttribute):
3874         (WebInspector.DOMWindow.prototype.Object):
3875         * inspector/front-end/MetricsSidebarPane.js:
3876         * inspector/front-end/StylesSidebarPane.js:
3877         (WebInspector.StylesSidebarPane.prototype.update.callback):
3878         (WebInspector.StylesSidebarPane.prototype.update):
3879         (WebInspector.StylesSidebarPane.prototype._update):
3880
3881 2010-03-12  Antonio Gomes  <tonikitoo@webkit.org>
3882
3883         Reviewed by Simon Fraser.
3884         Patch by Antonio Gomes <tonikitoo@webkit.org>
3885
3886         Spatial Navigation: Add a scrollIntoView call when focusing an element.
3887         https://bugs.webkit.org/show_bug.cgi?id=36020
3888
3889         When focusing an element in Spatial Navigation logic, it is desired to make
3890         this element visible in the current viewport. For that to happen, there
3891         could be a call to Element's scrollIntoView method at focusing time. However
3892         for visual aspects, it is preferable to scroll to an inflated rect of |element|
3893         in order to consider the focus outline width.
3894         As Element's scrollIntoView method does not provide this flexibility, patch adds
3895         a custom scrollIntoView method to SpatialNavigation.h .
3896
3897         * page/FocusController.cpp:
3898         (WebCore::FocusController::advanceFocusDirectionally):
3899         * page/SpatialNavigation.cpp:
3900         (WebCore::scrollIntoView):
3901         * page/SpatialNavigation.h:
3902
3903 2010-03-10  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
3904
3905         Reviewed by Eric Seidel.
3906
3907         [GTK] Position queries are lagging
3908         https://bugs.webkit.org/show_bug.cgi?id=34372
3909
3910         Normalize timeout priorities through the GStreamer media player as
3911         a whole. This should help avoid that any of them is starved.
3912
3913         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3914         (WebCore::MediaPlayerPrivate::volumeChanged):
3915         (WebCore::MediaPlayerPrivate::processBufferingStats):
3916         (WebCore::MediaPlayerPrivate::muteChanged):
3917         * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
3918         (webkit_video_sink_render):
3919         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3920         (webKitWebSrcNeedDataCb):
3921         (webKitWebSrcEnoughDataCb):
3922         (webKitWebSrcSeekDataCb):
3923
3924 2010-03-10  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
3925
3926         Reviewed by Eric Seidel.
3927
3928         [GTK] Position queries are lagging
3929         https://bugs.webkit.org/show_bug.cgi?id=34372
3930
3931         Use default priority also for parsing data: URIs.
3932
3933         * platform/network/soup/ResourceHandleSoup.cpp:
3934         (WebCore::startData):
3935
3936 2010-03-10  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
3937
3938         Reviewed by Eric Seidel.
3939
3940         [GTK] Position queries are lagging
3941         https://bugs.webkit.org/show_bug.cgi?id=34372
3942
3943         Normalize SharedTimers priorities to always be
3944         G_PRIORITY_DEFAULT. As it is currently, timers that should happen
3945         immediately (0 miliseconds delay) end up delayed by a lot of time
3946         due to glib starving lower priority sources.
3947
3948         * platform/gtk/SharedTimerGtk.cpp:
3949         (WebCore::setSharedTimerFireTime):
3950
3951 2010-03-16  Xan Lopez  <xlopez@igalia.com>
3952
3953         Reviewed by Gustavo Noronha.
3954
3955         Add support for Fast Mobile Scrolling in the build system.
3956
3957         * GNUmakefile.am:
3958
3959 2010-03-11  Yury Semikhatsky <yurys@chromium.org>
3960
3961         Reviewed by Pavel Feldman.
3962
3963         Introduce InspectorFrontendClient that provides InspectorFrontend with an interface to the embedder. InspectorClient now serves as a delegate for InspectorController and does not contain methods for managing inspector frontend window. That allows to create remote InspectorFrontendHost.
3964
3965         Introduce InspectorFrontendClient that would provide InspectorFrontend with an interface to the embedder
3966         https://bugs.webkit.org/show_bug.cgi?id=35036
3967
3968         * GNUmakefile.am:
3969         * WebCore.Inspector.exp:
3970         * WebCore.base.exp:
3971         * WebCore.gypi:
3972         * WebCore.order:
3973         * WebCore.pro:
3974         * WebCore.xcodeproj/project.pbxproj:
3975         * inspector/ConsoleMessage.cpp:
3976         (WebCore::ConsoleMessage::addToFrontend):
3977         * inspector/ConsoleMessage.h:
3978         * inspector/InspectorClient.h:
3979         * inspector/InspectorController.cpp:
3980         (WebCore::InspectorController::InspectorController):
3981         (WebCore::InspectorController::~InspectorController):
3982         (WebCore::InspectorController::inspectedPageDestroyed):
3983         (WebCore::InspectorController::windowVisible):
3984         (WebCore::InspectorController::frontendReady):
3985         (WebCore::InspectorController::willCloseFrontend):
3986         (WebCore::InspectorController::addConsoleMessage):
3987         (WebCore::InspectorController::setInspectorFrontendClient):
3988         (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
3989         (WebCore::InspectorController::setFrontend):
3990         (WebCore::InspectorController::show):
3991         (WebCore::InspectorController::close):
3992         (WebCore::InspectorController::releaseDOMAgent):
3993         (WebCore::InspectorController::populateScriptObjects):
3994         (WebCore::InspectorController::didCommitLoad):
3995         (WebCore::InspectorController::getProfile):
3996         (WebCore::InspectorController::enableDebugger):
3997         * inspector/InspectorController.h:
3998         (WebCore::InspectorController::hasInspectorFrontendClient):
3999         * inspector/InspectorFrontend.cpp:
4000         (WebCore::InspectorFrontend::InspectorFrontend):
4001         (WebCore::InspectorFrontend::~InspectorFrontend):
4002         (WebCore::InspectorFrontend::addConsoleMessage):
4003         (WebCore::InspectorFrontend::bringToFront):
4004         (WebCore::InspectorFrontend::inspectedURLChanged):
4005         * inspector/InspectorFrontend.h:
4006         * inspector/InspectorFrontendClient.h: Added.
4007         (WebCore::InspectorFrontendClient::~InspectorFrontendClient):
4008         * inspector/InspectorFrontendClientLocal.cpp: Added.
4009         (WebCore::FrontendMenuProvider::create):
4010         (WebCore::FrontendMenuProvider::disconnect):
4011         (WebCore::FrontendMenuProvider::FrontendMenuProvider):
4012         (WebCore::FrontendMenuProvider::~FrontendMenuProvider):
4013         (WebCore::FrontendMenuProvider::populateContextMenu):
4014         (WebCore::FrontendMenuProvider::contextMenuItemSelected):
4015         (WebCore::FrontendMenuProvider::contextMenuCleared):
4016         (WebCore::InspectorFrontendClientLocal::InspectorFrontendClientLocal):
4017         (WebCore::InspectorFrontendClientLocal::~InspectorFrontendClientLocal):
4018         (WebCore::InspectorFrontendClientLocal::windowObjectCleared):
4019         (WebCore::InspectorFrontendClientLocal::frontendLoaded):
4020         (WebCore::InspectorFrontendClientLocal::canAttachWindow):
4021         (WebCore::InspectorFrontendClientLocal::changeAttachedWindowHeight):
4022         (WebCore::InspectorFrontendClientLocal::moveWindowBy):
4023         (WebCore::InspectorFrontendClientLocal::showContextMenu):
4024         (WebCore::InspectorFrontendClientLocal::setAttachedWindow):
4025         (WebCore::InspectorFrontendClientLocal::restoreAttachedWindowHeight):
4026         (WebCore::InspectorFrontendClientLocal::constrainedAttachedWindowHeight):
4027         * inspector/InspectorFrontendClientLocal.h: Added.
4028         * inspector/InspectorFrontendHost.cpp:
4029         (WebCore::InspectorFrontendHost::InspectorFrontendHost):
4030         (WebCore::InspectorFrontendHost::~InspectorFrontendHost):
4031         (WebCore::InspectorFrontendHost::loaded):
4032         (WebCore::InspectorFrontendHost::attach):
4033         (WebCore::InspectorFrontendHost::detach):
4034         (WebCore::InspectorFrontendHost::closeWindow):
4035         (WebCore::InspectorFrontendHost::bringToFront):
4036         (WebCore::InspectorFrontendHost::inspectedURLChanged):
4037         (WebCore::InspectorFrontendHost::canAttachWindow):
4038         (WebCore::InspectorFrontendHost::setAttachedWindowHeight):
4039         (WebCore::InspectorFrontendHost::moveWindowBy):
4040         (WebCore::InspectorFrontendHost::showContextMenu):
4041         * inspector/InspectorFrontendHost.h:
4042         (WebCore::InspectorFrontendHost::create):
4043         * inspector/InspectorFrontendHost.idl:
4044         * inspector/front-end/InspectorFrontendHostStub.js:
4045         (.WebInspector.InspectorFrontendHostStub.prototype.bringToFront):
4046         (.WebInspector.InspectorFrontendHostStub.prototype.inspectedURLChanged):
4047         * inspector/front-end/inspector.js:
4048         (WebInspector.loaded):
4049         (WebInspector.close):
4050         (WebInspector.bringToFront):
4051         (WebInspector.inspectedURLChanged):
4052         * loader/EmptyClients.h:
4053         (WebCore::EmptyInspectorClient::openInspectorFrontend):
4054         * loader/FrameLoader.cpp:
4055         (WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld):
4056         * page/Page.cpp:
4057         (WebCore::Page::Page):
4058         (WebCore::Page::~Page):
4059         * page/Page.h:
4060         * platform/ContextMenu.cpp:
4061         (WebCore::ContextMenu::populate):
4062         (WebCore::ContextMenu::addInspectElementItem):
4063
4064 2010-03-16  Pavel Feldman  <pfeldman@chromium.org>
4065
4066         Reviewed by Timothy Hatcher.
4067
4068         Web Inspector: migrate to native styles inspector in
4069         order to inspect styles from foreighn domains.
4070
4071         https://bugs.webkit.org/show_bug.cgi?id=36117
4072
4073         * inspector/InspectorBackend.cpp:
4074         (WebCore::InspectorBackend::getStyles):
4075         (WebCore::InspectorBackend::getInlineStyle):
4076         (WebCore::InspectorBackend::getComputedStyle):
4077         (WebCore::InspectorBackend::applyStyleText):
4078         (WebCore::InspectorBackend::setStyleText):
4079         (WebCore::InspectorBackend::setStyleProperty):
4080         (WebCore::InspectorBackend::toggleStyleEnabled):
4081         (WebCore::InspectorBackend::setRuleSelector):
4082         (WebCore::InspectorBackend::addRule):
4083         * inspector/InspectorBackend.h:
4084         * inspector/InspectorBackend.idl:
4085         * inspector/InspectorDOMAgent.cpp:
4086         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
4087         (WebCore::InspectorDOMAgent::getStyles):
4088         (WebCore::InspectorDOMAgent::getInlineStyle):
4089         (WebCore::InspectorDOMAgent::getComputedStyle):
4090         (WebCore::InspectorDOMAgent::getMatchedCSSRules):
4091         (WebCore::InspectorDOMAgent::getAttributeStyles):
4092         (WebCore::InspectorDOMAgent::applyStyleText):
4093         (WebCore::InspectorDOMAgent::setStyleText):
4094         (WebCore::InspectorDOMAgent::setStyleProperty):
4095         (WebCore::InspectorDOMAgent::toggleStyleEnabled):
4096         (WebCore::InspectorDOMAgent::setRuleSelector):
4097         (WebCore::InspectorDOMAgent::addRule):
4098         (WebCore::InspectorDOMAgent::bindStyle):
4099         (WebCore::InspectorDOMAgent::bindRule):
4100         (WebCore::InspectorDOMAgent::buildObjectForStyle):
4101         (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties):
4102         (WebCore::InspectorDOMAgent::buildObjectForRule):
4103         (WebCore::InspectorDOMAgent::uniqueStyleProperties):
4104         (WebCore::InspectorDOMAgent::longhandProperties):
4105         (WebCore::InspectorDOMAgent::shorthandPriority):
4106         (WebCore::InspectorDOMAgent::ruleAffectsNode):
4107         (WebCore::InspectorDOMAgent::toArray):
4108         * inspector/InspectorDOMAgent.h:
4109         * inspector/InspectorFrontend.cpp:
4110         (WebCore::InspectorFrontend::didGetEventListenersForNode):
4111         (WebCore::InspectorFrontend::didGetStyles):
4112         (WebCore::InspectorFrontend::didGetComputedStyle):
4113         (WebCore::InspectorFrontend::didGetInlineStyle):
4114         (WebCore::InspectorFrontend::didApplyStyleText):
4115         (WebCore::InspectorFrontend::didSetStyleText):
4116         (WebCore::InspectorFrontend::didSetStyleProperty):
4117         (WebCore::InspectorFrontend::didToggleStyleEnabled):
4118         (WebCore::InspectorFrontend::didSetRuleSelector):
4119         (WebCore::InspectorFrontend::didAddRule):
4120         * inspector/InspectorFrontend.h:
4121         * inspector/front-end/DOMAgent.js:
4122         (WebInspector.CSSStyleDeclaration):
4123         * inspector/front-end/ElementsTreeOutline.js:
4124         * inspector/front-end/InjectedScript.js:
4125         * inspector/front-end/MetricsSidebarPane.js:
4126         (WebInspector.MetricsSidebarPane.prototype.update):
4127         (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
4128         * inspector/front-end/StylesSidebarPane.js:
4129         (WebInspector.StylesSidebarPane.prototype.update):
4130         (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted.callback):
4131         (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
4132         (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted.callback):
4133         (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted):
4134         (WebInspector.StylePropertyTreeElement.prototype):
4135         (WebInspector.StylePropertyTreeElement.prototype.):
4136
4137 2010-03-16  Shinichiro Hamaji  <hamaji@chromium.org>
4138
4139         Reviewed by Darin Adler.
4140
4141         RenderText::m_text should be a String, not RefPtr<StringImpl>
4142         https://bugs.webkit.org/show_bug.cgi?id=36010
4143
4144         Refactoring only, so no new tests.
4145
4146         * platform/text/PlatformString.h:
4147         (WebCore::String::makeLower):
4148         (WebCore::String::makeUpper):
4149         (WebCore::String::makeSecure):
4150         (WebCore::String::makeCapitalized):
4151         (WebCore::String::containsOnlyASCII):
4152         * rendering/RenderText.cpp:
4153         (WebCore::RenderText::RenderText):
4154         (WebCore::RenderText::widthFromCache):
4155         (WebCore::RenderText::trimmedPrefWidths):
4156         (WebCore::RenderText::containsOnlyWhitespace):
4157         (WebCore::RenderText::setTextInternal):
4158         (WebCore::RenderText::setText):
4159         (WebCore::RenderText::previousOffset):
4160         (WebCore::RenderText::previousOffsetForBackwardDeletion):
4161         (WebCore::RenderText::nextOffset):
4162         * rendering/RenderText.h:
4163         (WebCore::RenderText::text):
4164         (WebCore::RenderText::characters):
4165         (WebCore::RenderText::textLength):
4166
4167 2010-03-16  Adam Barth  <abarth@webkit.org>
4168
4169         Reviewed by Darin Adler.
4170
4171         noscript tag should render when @sandbox disables JavaScript
4172         https://bugs.webkit.org/show_bug.cgi?id=36092
4173
4174         Instead of talking to Settings directly to figure out if JavaScript is
4175         enabled in a frame, we need to talk to the ScriptController.  The
4176         ScriptController is better at answering that question because it knows
4177         about @sandbox.
4178
4179         Test: fast/frames/sandboxed-iframe-noscript.html
4180
4181         * dom/Document.cpp:
4182         (WebCore::Document::Document):
4183         * html/HTMLCanvasElement.cpp:
4184         (WebCore::HTMLCanvasElement::createRenderer):
4185         * html/HTMLElement.cpp:
4186         (WebCore::HTMLElement::rendererIsNeeded):
4187         * html/HTMLParser.cpp:
4188         (WebCore::HTMLParser::noscriptCreateErrorCheck):
4189         (WebCore::HTMLParser::isInline):
4190         * plugins/PluginView.cpp:
4191         (WebCore::PluginView::load):
4192
4193 2010-03-15  John Gregg  <johnnyg@google.com>
4194
4195         Reviewed by David Levin.
4196
4197         Notification object should expose absolute URL of icon
4198         https://bugs.webkit.org/show_bug.cgi?id=35800
4199
4200         Covered by existing tests.
4201
4202         * notifications/Notification.cpp:
4203         (WebCore::Notification::Notification):
4204         * notifications/Notification.h:
4205         (WebCore::Notification::iconURL):
4206
4207 2010-03-15  Leandro Pereira  <leandro@profusion.mobi>
4208
4209         Reviewed by Holger Freyther.
4210
4211         Add EFL port files to platform/efl.
4212         http://webkit.org/b/35887
4213
4214         * platform/efl/ClipboardEfl.cpp: Added.
4215         * platform/efl/PasteboardEfl.cpp: Added.
4216
4217 2010-03-15  Kent Tamura  <tkent@chromium.org>
4218
4219         Reviewed by Eric Seidel.
4220
4221         Don't submit disabled menu options.
4222         https://bugs.webkit.org/show_bug.cgi?id=35056
4223
4224         Test: fast/forms/menulist-disabled-selected-option.html
4225
4226         * dom/OptionElement.h:
4227         * dom/SelectElement.cpp:
4228         (WebCore::SelectElement::appendFormData):
4229          If a selected option is disabled, skip it.
4230          Remove code for non-selected menulist because of compatibility with
4231          other browsers.
4232
4233 2010-03-15  Leandro Pereira  <leandro@profusion.mobi>
4234
4235         Reviewed by Holger Freyther.
4236
4237         Add EFL port files to platform/efl.
4238         http://webkit.org/b/35884
4239
4240         * platform/efl/FileSystemEfl.cpp: Added.
4241
4242 2010-03-15  Leandro Pereira  <leandro@profusion.mobi>
4243
4244         Reviewed by Holger Freyther.
4245
4246         Add EFL port files to platform/efl.
4247         http://webkit.org/b/35882
4248
4249         * platform/efl/ContextMenuItemEfl.cpp: Added.
4250
4251 2010-03-15  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
4252
4253         Reviewed by Holger Freyther.
4254
4255         https://bugs.webkit.org/show_bug.cgi?id=35502
4256         [Gtk] Objects of ATK_ROLE_TABLE should not implement AtkText
4257
4258         Simple change to stop tables from implementing AtkText.
4259
4260         * accessibility/gtk/AccessibilityObjectAtk.cpp:
4261         (getInterfaceMaskFromObject):
4262
4263 2010-03-15  Adam Bergkvist  <adam.bergkvist@ericsson.com>
4264
4265         Reviewed by Adam Barth.
4266
4267         According to the updated specification, a data field should always
4268         result in a newline character being appended to the data buffer
4269         regardless if the data buffer contains any data or not. However, upon
4270         event dispatch, the last newline will be removed. This differs from an
4271         older version of the specification where a newline character was
4272         appended before the data value only if the buffer already contained
4273         data. As a result, EventSource now supports receiving events with empty
4274         data or newline characters only.
4275         https://bugs.webkit.org/show_bug.cgi?id=33210
4276
4277         * page/EventSource.cpp:
4278         (WebCore::EventSource::parseEventStreamLine):
4279
4280 2010-03-15  Valters Svabe  <vsvabe@gmail.com>
4281