2009-03-03 Dimitri Glazkov <dglazkov@chromium.org>
[WebKit-https.git] / WebCore / ChangeLog
1 2009-03-03  Dimitri Glazkov  <dglazkov@chromium.org>
2
3         Reviewed by Darin Fisher.
4
5         https://bugs.webkit.org/show_bug.cgi?id=24261
6         Fix return types.
7
8         Test: LayoutTests/dom/svg/level3/xpath/XPathEvaluator_evaluate_TYPE_ERR.svg
9
10         * bindings/v8/V8Binding.h:
11         (WebCore::toInt32): change return type to int
12         (WebCore::toFloat): change return type to float.
13
14 2009-03-03  Anders Carlsson  <andersca@apple.com>
15
16         Reviewed by John Sullivan.
17
18         https://bugs.webkit.org/show_bug.cgi?id=22884
19         <rdar://problem/6449783>
20         modified layout test crashes Safari
21
22         Null check NPStream before dereferencing it.
23         
24         * plugins/PluginView.cpp:
25         (WebCore::PluginView::destroyStream):
26
27 2009-03-03  Eric Carlson  <eric.carlson@apple.com>
28
29         Reviewed by Simon Fraser.
30
31         Fix for <rdar://problem/6641045>
32         Don't call QTKit to get movie properties until movie metadata has been loaded.
33
34         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
35         (WebCore::MediaPlayerPrivate::metaDataAvailable): defined
36         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
37         (WebCore::MediaPlayerPrivate::createQTTime): return default if !metaDataAvailable.
38         (WebCore::MediaPlayerPrivate::play): Ditto.
39         (WebCore::MediaPlayerPrivate::pause): Ditto.
40         (WebCore::MediaPlayerPrivate::duration): Ditto.
41         (WebCore::MediaPlayerPrivate::currentTime): Ditto.
42         (WebCore::MediaPlayerPrivate::seek): Ditto.
43         (WebCore::MediaPlayerPrivate::seekTimerFired): Ditto.
44         (WebCore::MediaPlayerPrivate::paused): Ditto.
45         (WebCore::MediaPlayerPrivate::seeking): Ditto.
46         (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
47         (WebCore::MediaPlayerPrivate::hasVideo): Ditto.
48         (WebCore::MediaPlayerPrivate::setVolume): Ditto.
49         (WebCore::MediaPlayerPrivate::setRate): Ditto.
50         (WebCore::MediaPlayerPrivate::dataRate): Ditto.
51         (WebCore::MediaPlayerPrivate::maxTimeLoaded): Ditto.
52         (WebCore::MediaPlayerPrivate::totalBytes): Ditto.
53
54 2009-03-03  Kevin McCullough  <kmccullough@apple.com>
55
56         - Spelling fix.
57
58         * page/Console.cpp:
59         (WebCore::Console::profile):
60
61 2009-03-03  Dimitri Glazkov  <dglazkov@chromium.org>
62
63         Reviewed by Darin Fisher.
64
65         https://bugs.webkit.org/show_bug.cgi?id=23657
66         Remove Database API callback IDLs from the project. 
67         They were removed in r40633.
68
69         * WebCore.xcodeproj/project.pbxproj: Removed IDL files from the project.
70
71 2009-03-03  Kevin McCullough  <kmccullough@apple.com>
72
73         Reviewed by Oliver Hunt.
74
75         <rdar://problem/6639110> console.profile() doesn't work without a title
76
77         * page/Console.cpp:
78         (WebCore::Console::profile): If there is no title assume this is a user
79         initiated profile and give it the next incremented title name.
80
81 2009-03-03  Timothy Hatcher  <timothy@apple.com>
82
83         Fix a regression that broke dirxml and caused an ASSERT in debug builds. Also simplified
84         the console code and refactored things to have fewer code paths and duplication.
85
86         rdar://problem/6367127
87         https://bugs.webkit.org/show_bug.cgi?id=24329
88
89         Reviewed by Kevin McCullough.
90
91         Test: manual-tests/inspector/console-dir.html
92
93         * bindings/js/JSInspectedObjectWrapper.cpp:
94         (WebCore::JSInspectedObjectWrapper::wrap): Use the lexicalGlobalObject instead of dynamicGlobalObject
95         to fix an ASSERT about using a wrapper from the wrong ExecState.
96         * bindings/js/JSQuarantinedObjectWrapper.cpp:
97         (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper): Ditto.
98         (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom): Ditto.
99         * inspector/front-end/Console.js:
100         (WebInspector.Console.prototype._format): Remove the inline argument and add forceObjectFormat.
101         When forceObjectFormat is true, the only formatter used is _formatobject.
102         (WebInspector.Console.prototype._formatvalue): Remove the inline argument.
103         (WebInspector.Console.prototype._formatstring): Ditto.
104         (WebInspector.Console.prototype._formatregexp): Ditto.
105         (WebInspector.Console.prototype._formatarray): Ditto.
106         (WebInspector.Console.prototype._formatnode): Remove the inline argument and make a DOM tree instead of an anchor.
107         (WebInspector.Console.prototype._formatobject): Remove the inline argument and always make a property graph.
108         (WebInspector.Console.prototype._formaterror): Remove the inline argument.
109         (WebInspector.ConsoleMessage): Remove the case for MessageLevel.Node and
110         simplify the case for MessageLevel.Object to use the normal _format code path with the %O formatter.
111         (WebInspector.ConsoleMessage.prototype._format.formatForConsole): Don't pass an additional true argument for inline.
112         (WebInspector.ConsoleMessage.prototype._format.formatAsObjectForConsole): Added. Pass a true argument for forceObjectFormat.
113         (WebInspector.ConsoleMessage.prototype._format): Added support for the %O formatter. Use formatForConsole for all arguments.
114         (WebInspector.ConsoleMessage.prototype.toString): Add the other message levels.
115         * inspector/front-end/inspector.css: Tweak styles to look and work correctly.
116         * inspector/front-end/utilities.js:
117         (Object.type): Return "node" for Node objects.
118         (Object.describe): Handle the "node" type.
119         * page/Console.cpp:
120         (WebCore::printMessageSourceAndLevelPrefix): Fix an assert by adding the other message level types.
121         (WebCore::Console::dirxml): Use the standard log fuction since it prints a DOM tree for nodes by default.
122         * page/Console.h:
123         (WebCore::enum MessageLevel): Removed NodeMessageLevel. Added a FIXME.
124
125 2009-03-03  Scott Violet  <sky@google.com>
126
127         Reviewed by Eric Seidel.
128
129         https://bugs.webkit.org/show_bug.cgi?id=24325
130         Crash on replacing document contents during drop.
131
132         Makes sure a node is in the document during a move before using it.
133
134         Test: fast/events/crash-on-mutate-during-drop.html
135
136         * editing/MoveSelectionCommand.cpp:
137         (WebCore::MoveSelectionCommand::doApply):
138
139 2009-03-03  Jungshik Shin <jshin@chromium.org>
140
141         Reviewed by Eric Seidel.
142
143         https://bugs.webkit.org/show_bug.cgi?id=23028
144         Enable dynamic web font support to Chromium on Windows.
145         Files that were omitted by mistake in the latest patch
146         that was landed.
147
148         * loader/CachedFont.cpp:
149         (WebCore::CachedFont::~CachedFont):
150         (WebCore::CachedFont::ensureCustomFontData):
151         (WebCore::CachedFont::platformDataFromCustomData):
152         (WebCore::CachedFont::allClientsRemoved):
153         * platform/graphics/chromium/FontCustomPlatformData.cpp:
154         (WebCore::EOTStream::EOTStream):
155         (WebCore::createFontCustomPlatformData):
156         * platform/graphics/win/FontCustomPlatformData.cpp:
157         (WebCore::EOTStream::EOTStream):
158         (WebCore::createFontCustomPlatformData):
159
160 2009-03-03  Gustavo Noronha Silva  <gns@gnome.org>
161
162         Reviewed by Alexey Proskuryakov.
163
164         https://bugs.webkit.org/show_bug.cgi?id=16826
165         [Gtk] Implement WebKitDownload
166
167         Make the Soup backend able to handle requests without a frame,
168         since we may have such things now that we support downloads.
169
170         * platform/network/ResourceHandleInternal.h:
171         * platform/network/soup/ResourceHandleSoup.cpp:
172         (WebCore::ResourceHandle::start):
173
174 2009-03-03  Dimitri Glazkov  <dglazkov@chromium.org>
175
176         Reviewed by Eric Seidel.
177
178         https://bugs.webkit.org/show_bug.cgi?id=24331
179         Add custom V8 bindings for Element, Attr, HTMLFrame, and HTMLIFrame.
180
181         * bindings/v8/custom/V8AttrCustom.cpp: Added.
182         * bindings/v8/custom/V8CustomBinding.cpp: Added.
183         * bindings/v8/custom/V8CustomBinding.h: Added attribute-checking helpers.
184         * bindings/v8/custom/V8ElementCustom.cpp: Added.
185         * bindings/v8/custom/V8HTMLFrameElementCustom.cpp: Added.
186         * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp: Added.
187
188 2009-03-03  Brady Eidson  <beidson@apple.com>
189
190         Reviewed by Darin Adler
191
192         <rdar://problem/6616664> - Quick looks of various file types is broken
193
194         In http://trac.webkit.org/changeset/40553 there was an attempt to prevent NSURLRequest churn
195         for non-HTTP loads when the underlying ResourceRequest changed.  Unfortunately it was a little
196         overzealous as the mainDocumentURL is relevant for all loads, not only HTTP/HTTPS loads.
197
198         Partially reverted behavior to always set the mainDocumentURL in situations when we would've
199         before that patch.
200
201         * loader/FrameLoader.cpp:
202         (WebCore::FrameLoader::addExtraFieldsToRequest):
203
204         * platform/network/ResourceRequestBase.cpp:
205         (WebCore::ResourceRequestBase::setMainDocumentURL):
206
207 2009-03-03  Chris Marrin  <cmarrin@apple.com>
208
209         Reviewed by Simon Fraser.
210
211         https://bugs.webkit.org/show_bug.cgi?id=24256
212
213         Added a WebCoreForceSoftwareAnimation flag.
214
215         * platform/graphics/mac/GraphicsLayerCA.mm:
216         (WebCore::forceSoftwareAnimation):
217         (WebCore::GraphicsLayerCA::setOpacity):
218         (WebCore::GraphicsLayerCA::animateTransform):
219         (WebCore::GraphicsLayerCA::animateFloat):
220
221 2009-03-02  Chris Marrin  <cmarrin@apple.com>
222
223         Reviewed by Sam Weinig.
224
225         https://bugs.webkit.org/show_bug.cgi?id=24257
226
227         Added prototype properties for several classes with constructors that
228         were missing them, including the one mentioned in the bug.
229
230         Test: fast/dom/Window/custom-constructors.html
231
232         * bindings/js/JSAudioConstructor.cpp:
233         (WebCore::JSAudioConstructor::JSAudioConstructor):
234         * bindings/js/JSDOMWindowBase.cpp:
235         (jsDOMWindowBaseWebKitCSSMatrix):
236         * bindings/js/JSImageConstructor.cpp:
237         (WebCore::JSImageConstructor::JSImageConstructor):
238         * bindings/js/JSOptionConstructor.cpp:
239         (WebCore::JSOptionConstructor::JSOptionConstructor):
240         * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
241         (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
242         * bindings/js/JSWebKitCSSMatrixConstructor.h:
243         * bindings/js/JSWebKitPointConstructor.cpp:
244         (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
245         * bindings/js/JSWorkerConstructor.cpp:
246         (WebCore::JSWorkerConstructor::JSWorkerConstructor):
247
248 2009-03-03  Dimitri Glazkov  <dglazkov@chromium.org>
249
250         Reviewed by Darin Fisher.
251
252         https://bugs.webkit.org/show_bug.cgi?id=24321
253         Add V8 bindings headers.
254
255         * bindings/v8/V8Binding.h: Added.
256         * bindings/v8/V8Proxy.h: Added.
257         * bindings/v8/custom/V8CustomBinding.h: Added.
258         * bindings/v8/custom/V8CustomEventListener.h: Added.
259
260 2009-03-03  Jungshik Shin <jshin@chromium.org>
261
262         Reviewed by Eric Seidel.
263
264         https://bugs.webkit.org/show_bug.cgi?id=23803
265         Fix an 'off-by-1' error in ChromiumWin's font fallback.
266
267         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
268         (WebCore::FontCache::getFontDataForCharacters):
269
270 2009-03-03  Jungshik Shin  <jshin@chromium.org>
271
272         Reviewed by Eric Seidel.
273
274         http://bugs.webkit.org/show_bug.cgi?id=23028
275         Enable dynamic web font support to Chromium on Windows: Part 1
276         - Move OpenTypeUtilities.{cpp,h} to platform/graphics/opentype
277           from platform/graphics/win because both Windows port and Chromium Windows
278           port will use them.
279         - Adjust WebCore.vcproj accordingly.
280
281         * WebCore.vcproj/WebCore.vcproj:
282         * platform/graphics/opentype: Added.
283         * platform/graphics/opentype/OpenTypeUtilities.cpp: Copied from WebCore/platform/graphics/win/OpenTypeUtilities.cpp.
284         * platform/graphics/opentype/OpenTypeUtilities.h: Copied from WebCore/platform/graphics/win/OpenTypeUtilities.h.
285         * platform/graphics/win/OpenTypeUtilities.cpp: Removed.
286         * platform/graphics/win/OpenTypeUtilities.h: Removed.
287
288 2009-03-03  Simon Fraser  <simon.fraser@apple.com>
289
290         Reviewed by Dave Hyatt
291
292         https://bugs.webkit.org/show_bug.cgi?id=24312
293         
294         Take 3D transforms into account when hit testing:
295         
296         1. Maintain a bit on each RenderLayer that is set when the layer
297            has 3d descendants, so that we know when to fall into the slow
298            hit testing path.
299            
300         2. Make a ref-counted HitTestingTransformState, which is used to store
301            an accumulated transform, and the hit test point, and hitTestRect
302            in the plane of the ancestor non-3d ('flattening') layer.
303            
304            It's ref-counted so we can heap allocate it (to avoid stack bloat),
305            and avoid copying when hitTestLayer calls itself after applying the transform.
306            
307         3. Add logic to hitTestLayer to depth-test just direct descendants, if any have
308            3D transforms, or to do deep depth-testing when traversing a preserves-3d
309            hierarchy. When hit, layers compute a z-offset from the ancestor flattening
310            layer, which allows for correct depth testing.
311            
312            The existing early-return codepath is unaffected when there are no 3d transforms
313            and no preserve-3d.
314
315         * rendering/RenderLayer.cpp:
316         (WebCore::RenderLayer::RenderLayer):
317         (WebCore::RenderLayer::updateTransform):
318         (WebCore::RenderLayer::dirty3DTransformedDescendantStatus):
319         (WebCore::RenderLayer::update3DTransformedDescendantStatus):
320         (WebCore::RenderLayer::hitTest):
321         (WebCore::computeZOffset):
322         (WebCore::RenderLayer::createLocalTransformState):
323         (WebCore::RenderLayer::hitTestLayer):
324         (WebCore::RenderLayer::hitTestContents):
325         * rendering/RenderLayer.h:
326         (WebCore::RenderLayer::preserves3D):
327         (WebCore::RenderLayer::has3DTransform):
328         (WebCore::RenderLayer::setHas3DTransformedDescendant):
329         (WebCore::RenderLayer::has3DTransformedDescendant):
330         * rendering/RenderLayerBacking.cpp:
331         * rendering/TransformState.cpp:
332         (WebCore::TransformState::flatten):
333         (WebCore::TransformState::mappedPoint):
334         (WebCore::HitTestingTransformState::move):
335         (WebCore::HitTestingTransformState::applyTransform):
336         (WebCore::HitTestingTransformState::flatten):
337         (WebCore::HitTestingTransformState::mappedPoint):
338         (WebCore::HitTestingTransformState::mappedQuad):
339         * rendering/TransformState.h:
340         (WebCore::TransformState::TransformState):
341         (WebCore::HitTestingTransformState::create):
342         (WebCore::HitTestingTransformState::move):
343         (WebCore::HitTestingTransformState::HitTestingTransformState):
344
345 2009-03-03  Brett Wilson  <brettw@chromium.org>
346
347         Fix uninitialized memory reads in the Chromium Windows transparency
348         code that were identified by Purify,
349
350         Reviewed by Darin Fisher.
351
352         * platform/graphics/chromium/TransparencyWin.cpp:
353         (WebCore::TransparencyWin::OwnedBuffers::OwnedBuffers):
354         (WebCore::TransparencyWin::initializeNewContext):
355
356 2009-03-03  Simon Fraser  <simon.fraser@apple.com>
357
358         Reviewed by Dave Hyatt
359
360         https://bugs.webkit.org/show_bug.cgi?id=24312
361         
362         Factor the code that compute a transform relative to the container
363         into RenderObject::transformFromContainer().
364         
365         * rendering/RenderBox.cpp:
366         (WebCore::RenderBox::mapLocalToAbsolutePoint):
367         (WebCore::RenderBox::mapAbsoluteToLocalPoint):
368         * rendering/RenderObject.cpp:
369         (WebCore::RenderObject::transformFromContainer):
370         * rendering/RenderObject.h:
371
372 2009-03-03  Simon Fraser  <simon.fraser@apple.com>
373
374         Reviewed by Dave Hyatt
375
376         https://bugs.webkit.org/show_bug.cgi?id=24317
377         
378         Always return |true| from RenderTextControlMultiLine::nodeAtPoint() if
379         the superclass found a node, otherwise we set the innerNode of the
380         HitTestResult, but don't actually report that we found a hit.
381
382         * rendering/RenderTextControlMultiLine.cpp:
383         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
384
385 2009-03-03  Onne Gorter  <onne.gorter@avinity.net>
386
387         Reviewed by Anders Carlsson.
388
389         https://bugs.webkit.org/show_bug.cgi?id=23707
390         resizing plugins does not work, because the plugin never gets informed
391
392         Make gtk plugins resize correctly, by sending them the setwindow event
393         correctly. Also ensure that all plugin eventing is done with correct
394         locking/calling. Mostly copied from mac implementation.
395
396         manual test: manual-tests/gtk/plugin-resize-scroll.html
397
398         * plugins/PluginView.h:
399         * plugins/gtk/PluginViewGtk.cpp:
400         (WebCore::PluginView::dispatchNPEvent):
401         ensure locking/calling for NPEvents
402         (WebCore::PluginView::updatePluginWidget):
403         if something changed, let setNPWindowIfNeeded handle it
404         (WebCore::PluginView::paint):
405         (WebCore::PluginView::handleKeyboardEvent):
406         (WebCore::PluginView::handleMouseEvent):
407         ensure calling conventions
408         (WebCore::PluginView::setNPWindowRect):
409         just pass control to setNPWindowIfNeeded
410         (WebCore::PluginView::setNPWindowIfNeeded):
411         event the plugin correctly of new window
412         (WebCore::PluginView::init):
413         init through the new setup
414
415 2009-03-03  Mike Belshe  <mike@belshe.com>
416
417         Reviewed by Darin Fisher.
418
419         https://bugs.webkit.org/show_bug.cgi?id=24311
420         Make IDL returning DOMObject use [V8Custom]
421
422         * dom/Document.idl:
423         * html/HTMLCanvasElement.idl:
424
425 2009-03-02  Simon Fraser  <simon.fraser@apple.com>
426
427         Reviewed by Adele Peterson
428
429         https://bugs.webkit.org/show_bug.cgi?id=24313
430         
431         If RenderTextControlSingleLine::nodeAtPoint() pokes a node into the
432         HitTestResult, then it had better well return |true|. And m_innerBlock
433         could never have been set as the hit node by the superclass, because
434         the superclass knows nothing about m_innerBlock.
435         
436         Test: fast/forms/input-hit-test-border.html
437
438         * rendering/RenderTextControlSingleLine.cpp:
439         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
440
441 2009-03-02  Sam Weinig  <sam@webkit.org>
442
443         Reviewed by Mark Rowe.
444
445         Enable Geolocation (except on Tiger and Leopard).
446
447         * Configurations/WebCore.xcconfig:
448
449 2009-03-02  Ojan Vafai  <ojan@chromium.org>
450
451         Reviewed by Adele Peterson.
452
453         Fix https://bugs.webkit.org/show_bug.cgi?id=24307
454         Null out m_highlightedNode on hideHighlight().
455         Ran WebCore/manual-tests/inspector/highlight-nodes.html.
456
457         * inspector/InspectorController.cpp:
458         (WebCore::InspectorController::hideHighlight):
459
460 2009-03-02  Sam Weinig  <sam@webkit.org>
461
462         Reviewed by Geoffrey Garen.
463
464         Fix for <rdar://problem/6507404> Add Geolocation support.
465
466         This is not yet turned on for any Mac platform.
467
468         * WebCore.xcodeproj/project.pbxproj:
469         * page/Chrome.cpp:
470         (WebCore::Chrome::shouldAllowGeolocationForFrame):
471         * page/Chrome.h:
472         * page/ChromeClient.h:
473         (WebCore::ChromeClient::shouldAllowGeolocationForFrame):
474         * page/Geolocation.cpp:
475         (WebCore::Geolocation::Geolocation):
476         (WebCore::Geolocation::disconnectFrame): Remove call to setUsingGeolocation as the document
477         will not be alive at this point.
478         (WebCore::Geolocation::getCurrentPosition): Check if the embedding app allows geolocation and
479         return a PERMISSION_DENIED if not.
480         (WebCore::Geolocation::watchPosition): Ditto.
481         (WebCore::Geolocation::shouldAllowGeolocation): Perform request to embedding layer of whether
482         to allow geolocation and cache the result. 
483         * page/Geolocation.h:
484         (WebCore::Geolocation::):
485         * platform/GeolocationService.cpp:
486         * platform/GeolocationService.h:
487         (WebCore::GeolocationService::~GeolocationService):
488         (WebCore::GeolocationService::stopUpdating):
489         * platform/mac/GeolocationServiceMac.h: Added.
490         (WebCore::GeolocationServiceMac::lastPosition):
491         (WebCore::GeolocationServiceMac::lastError):
492         * platform/mac/GeolocationServiceMac.mm: Added.
493         (WebCore::GeolocationService::create):
494         (WebCore::GeolocationServiceMac::GeolocationServiceMac):
495         (WebCore::GeolocationServiceMac::~GeolocationServiceMac):
496         (WebCore::GeolocationServiceMac::startUpdating):
497         (WebCore::GeolocationServiceMac::stopUpdating):
498         (WebCore::GeolocationServiceMac::suspend):
499         (WebCore::GeolocationServiceMac::resume):
500         (WebCore::GeolocationServiceMac::positionChanged):
501         (WebCore::GeolocationServiceMac::errorOccurred):
502         (-[WebCoreCoreLocationObserver initWithCallback:]):
503         (-[WebCoreCoreLocationObserver locationManager:didUpdateToLocation:fromLocation:]):
504         (-[WebCoreCoreLocationObserver locationManager:didFailWithError:]):
505
506 2009-03-02  Kevin Ollivier  <kevino@theolliviers.com>
507
508         Build fixes for wxWidgets Mac trunk build.
509
510         * platform/wx/wxcode/mac/carbon/fontprops.cpp:
511         (wxFontProperties::wxFontProperties):
512         (GetTextExtent):
513         * webcore-wx.bkl:
514
515 2009-03-02  Kevin Ollivier  <kevino@theolliviers.com>
516
517         wxGTK missing header build fix.
518
519         * platform/wx/wxcode/gtk/fontprops.cpp:
520
521 2009-03-02  Dan Bernstein  <mitz@apple.com>
522
523         Reviewed by Adam Roben.
524
525         - fix https://bugs.webkit.org/show_bug.cgi?id=21811
526           REGRESSION: Windows Build Not Selecting Proper Font
527
528         * platform/graphics/win/FontCacheWin.cpp:
529         (WebCore::createGDIFont): Added back code to verify that the created
530         HFONT has the requested face name.
531
532 2009-03-02  Timothy Hatcher  <timothy@apple.com>
533
534         Fixes a regression caused by splitting the input and output of console commands.
535
536         https://bugs.webkit.org/show_bug.cgi?id=24293
537
538         Reviewed by Kevin McCullough.
539
540         * inspector/front-end/Console.js:
541         (WebInspector.Console.prototype.addMessage): Don't treat ConsoleCommandResult as a
542         normal ConsoleMessage when appending. This prevents resetting repeatCounts incorrectly.
543
544 2009-03-02  Timothy Hatcher  <timothy@apple.com>
545
546         Make exception messages and logged Error objects display consistently.
547
548         https://bugs.webkit.org/show_bug.cgi?id=18983
549
550         Reviewed by Adam Roben.
551
552         * English.lproj/localizedStrings.js: Remove a string for line numbers.
553         * inspector/front-end/Console.js:
554         (WebInspector.Console.prototype._enterKeyPressed): Pass the exception
555         boolean to the ConsoleCommandResult constructor and don't pass level.
556         (WebInspector.Console.prototype._formatnode): Fix a className typo.
557         (WebInspector.Console.prototype._formaterror): Add an error-message
558         classed span around the message to show in red and remove the
559         console-message-url class from the link so it doesn't float right.
560         Instead enclose the link in parentheses and use displayNameForURL
561         to shorten the URL in the link.
562         (WebInspector.ConsoleMessage.prototype.toMessageElement): Simplify
563         how line numbers are shown since link underlining a string with
564         parentheses looks bad.
565         (WebInspector.ConsoleCommandResult): Take an exception boolean flag
566         instead of a level and get line and URL based on that flag.
567         * inspector/front-end/inspector.css: Tweaks to the styles.
568
569 2009-03-02  Ojan Vafai  <ojan@chromium.org>
570
571         Reviewed by Adele Peterson.
572
573         Bug 24048: extra windows button padding doesn't apply when there's no appearance
574         <https://bugs.webkit.org/show_bug.cgi?id=24048>
575
576         Replace adjustButtonInnerStyle with buttonInternalPaddingLeft/Right/Top/Bottom.
577
578         No tests added as existing tests already cover this behavior.
579
580         * rendering/RenderButton.cpp:
581         (WebCore::RenderButton::setupInnerStyle):
582         * rendering/RenderTheme.cpp:
583         * rendering/RenderTheme.h:
584         (WebCore::RenderTheme::buttonInternalPaddingLeft):
585         (WebCore::RenderTheme::buttonInternalPaddingRight):
586         (WebCore::RenderTheme::buttonInternalPaddingTop):
587         * rendering/RenderThemeChromiumGtk.cpp:
588         (WebCore::RenderThemeWin::buttonInternalPaddingLeft):
589         (WebCore::RenderThemeWin::buttonInternalPaddingRight):
590         (WebCore::RenderThemeWin::buttonInternalPaddingTop):
591         (WebCore::RenderThemeWin::buttonInternalPaddingBottom):
592         * rendering/RenderThemeChromiumGtk.h:
593         * rendering/RenderThemeChromiumWin.cpp:
594         (WebCore::RenderThemeChromiumWin::buttonInternalPaddingLeft):
595         (WebCore::RenderThemeChromiumWin::buttonInternalPaddingRight):
596         (WebCore::RenderThemeChromiumWin::buttonInternalPaddingTop):
597         (WebCore::RenderThemeChromiumWin::buttonInternalPaddingBottom):
598         * rendering/RenderThemeChromiumWin.h:
599         * rendering/RenderThemeWin.cpp:
600         (WebCore::RenderThemeWin::buttonInternalPaddingLeft):
601         (WebCore::RenderThemeWin::buttonInternalPaddingRight):
602         (WebCore::RenderThemeWin::buttonInternalPaddingTop):
603         (WebCore::RenderThemeWin::buttonInternalPaddingBottom):
604         * rendering/RenderThemeWin.h:
605
606 2009-03-02  Adam Treat  <adam.treat@torchmobile.com>
607
608         Build fix for Qt port.  Remove unnecessary assert.
609
610         * platform/graphics/qt/ImageBufferQt.cpp:
611         (WebCore::ImageBuffer::putImageData):
612
613 2009-03-02  Adam Treat  <adam.treat@torchmobile.com>
614
615         Reviewed by Adam Roben and previously by Eric Seidel and Simon Fraser.
616
617         https://bugs.webkit.org/show_bug.cgi?id=24227
618         Ensure that the checkForSolidColor() optimization is correctly triggered
619         for all cases of drawPattern.  Currently, the optimization was not triggered
620         when the check had not been previously performed via a request for the
621         image's NativeImagePtr.
622
623         Implement the Qt version of the checkForSolidColor() method.  Combined with
624         the bug fix this reduces the time it takes to draw a repeating background
625         of a 1x1 image from ~50msecs to ~0msecs on my machine.
626
627         * platform/graphics/BitmapImage.cpp:
628         (WebCore::BitmapImage::BitmapImage):
629         * platform/graphics/BitmapImage.h:
630         (WebCore::BitmapImage::mayFillWithSolidColor):
631         * platform/graphics/Image.h:
632         (WebCore::Image::mayFillWithSolidColor):
633         * platform/graphics/cairo/ImageCairo.cpp:
634         (WebCore::BitmapImage::BitmapImage):
635         (WebCore::BitmapImage::checkForSolidColor):
636         * platform/graphics/cg/ImageCG.cpp:
637         (WebCore::BitmapImage::BitmapImage):
638         (WebCore::BitmapImage::checkForSolidColor):
639         * platform/graphics/qt/ImageQt.cpp:
640         (WebCore::BitmapImage::checkForSolidColor):
641         * platform/graphics/skia/ImageSkia.cpp:
642         (WebCore::BitmapImage::checkForSolidColor):
643         * platform/graphics/wx/ImageWx.cpp:
644         (WebCore::BitmapImage::checkForSolidColor):
645
646 2009-03-02  Gustavo Noronha Silva  <gns@gnome.org>
647
648         Unreviewed build fix; adding missing files to EXTRA_DIST, so that
649         they show up in the tarball.
650
651         * GNUmakefile.am:
652
653 2009-03-02  Dirk Schulze  <krit@webkit.org>
654
655         Reviewed by Holger Freyther.
656
657         Added putImageData to Qt. Discussed with Ariya Hidayat.
658
659         [Qt] lacks putImageData support in Canvas
660         https://bugs.webkit.org/show_bug.cgi?id=22186
661
662         * platform/graphics/qt/ImageBufferQt.cpp:
663         (WebCore::ImageBuffer::putImageData):
664
665 2009-03-02  Timothy Hatcher  <timothy@apple.com>
666
667         Show exception messages again when evaluating bad expressions in the
668         Web Inspector's console.
669
670         https://bugs.webkit.org/show_bug.cgi?id=19890
671
672         Reviewed by Oliver Hunt.
673
674         * bindings/js/JSQuarantinedObjectWrapper.cpp:
675         (WebCore::JSQuarantinedObjectWrapper::transferExceptionToExecState):
676         Fix the order in which the exception is set and cleared now that the
677         exception is stored in the shared GlobalData, not per ExecState.
678
679 2009-02-28  Timothy Hatcher  <timothy@apple.com>
680
681         Make input in the Web Inspector console print before any output
682         that might be added by the called function.
683
684         https://bugs.webkit.org/show_bug.cgi?id=19931
685
686         Reviewed by Oliver Hunt.
687
688         * inspector/front-end/Console.js:
689         (WebInspector.Console.prototype._enterKeyPressed): Add the command
690         message before evaluating the result. Associate the originating
691         command to the result, so if they are adjacent there is no divider.
692         (WebInspector.ConsoleCommand): No longer take a result.
693         (WebInspector.ConsoleCommand.prototype.toMessageElement): Result
694         code removed since it isn't used now.
695         (WebInspector.ConsoleCommandResult): Subclass ConsoleMessage.
696         (WebInspector.ConsoleCommandResult.prototype.toMessageElement):
697         Call the ConsoleMessage toMessageElement and add a style class.
698         * inspector/front-end/inspector.css: Add a new style class for
699         adjacent results to hide the divider. Also tweak the position of
700         the disclosure triangle for objects to not use the left margin.
701
702 2009-03-01  Chris Fleizach  <cfleizach@apple.com>
703
704         Reviewed by Oliver Hunt.
705
706         Bug 24282: AX Palindrome error when asking for a specific index of the AXChildren array
707         <https://bugs.webkit.org/show_bug.cgi?id=24282>
708
709         When fetching an array of elements with a range, attachment views need to be returned
710         instead of the actual attachment.
711
712         * page/mac/AccessibilityObjectWrapper.mm:
713         (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
714         (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
715
716 2009-03-01  Ojan Vafai  <ojan@chromium.org>
717
718         Reviewed by Eric Seidel.
719
720         Bug 24251: Cleanup: replace positionForCoordinates with positionForPoint
721         <https://bugs.webkit.org/show_bug.cgi?id=24251>
722         
723         Make RenderObject::positionForCoordinate non-virtual and
724         RenderObject::positionForPoint virtual in preparation for
725         removing positionFor* from RenderObject/RenderText.
726
727         * page/Frame.cpp:
728         (WebCore::Frame::visiblePositionForPoint):
729         * rendering/RenderBR.cpp:
730         (WebCore::RenderBR::positionForPoint):
731         * rendering/RenderBR.h:
732         * rendering/RenderBlock.cpp:
733         (WebCore::RenderBlock::positionForPoint):
734         * rendering/RenderBlock.h:
735         * rendering/RenderBox.cpp:
736         (WebCore::RenderBox::positionForPoint):
737         * rendering/RenderBox.h:
738         * rendering/RenderInline.cpp:
739         (WebCore::RenderInline::positionForPoint):
740         * rendering/RenderInline.h:
741         * rendering/RenderObject.cpp:
742         (WebCore::RenderObject::positionForCoordinates):
743         (WebCore::RenderObject::positionForPoint):
744         * rendering/RenderObject.h:
745         * rendering/RenderReplaced.cpp:
746         (WebCore::RenderReplaced::positionForPoint):
747         * rendering/RenderReplaced.h:
748         * rendering/RenderSVGInlineText.cpp:
749         (WebCore::RenderSVGInlineText::positionForPoint):
750         * rendering/RenderSVGInlineText.h:
751         * rendering/RenderText.cpp:
752         (WebCore::RenderText::positionForPoint):
753         * rendering/RenderText.h:
754
755 2009-03-01  Larry Ewing  <lewing@novell.com>
756
757         Reviewed by Alexey Proskuryakov.
758
759         https://bugs.webkit.org/show_bug.cgi?id=24080
760         NPN_GetValue casting to the wrong type and writing outside bounds
761
762         Make sure to cast the value to the correct type so that only
763         memory owned by the value is written to.
764
765         * plugins/gtk/PluginViewGtk.cpp (PluginView::getValueStatic): 
766         * plugins/qt/PluginViewQt.cpp (PluginView::getValueStatic):
767         * plugins/mac/PluginViewMac.cpp (PluginView::getValueStatic): 
768         (PluginView::getValue):
769
770 2009-03-01  Jeremy Moskovich  <jeremy@chromium.org>
771
772         Reviewed by Simon Fraser.
773
774         https://bugs.webkit.org/show_bug.cgi?id=24197 and
775         https://bugs.webkit.org/show_bug.cgi?id=23512
776
777         The Windows version of cgColor() is conditionally compiled using
778         !PLATFORM(MAC) change this to PLATFORM(WIN_OS) so that Chrome
779         can use the OS X version instead of the Windows version.
780
781         Also rename cgColor() -> createCGColor()
782
783         No observable change in behavior, so no test.
784
785         * platform/graphics/Color.h:
786         * platform/graphics/cg/ColorCG.cpp:
787         (WebCore::createCGColor):
788         * platform/graphics/cg/GraphicsContextCG.cpp:
789         (WebCore::GraphicsContext::setPlatformShadow):
790         * platform/graphics/mac/ColorMac.mm:
791         (WebCore::createCGColor):
792         * platform/graphics/mac/GraphicsContextMac.mm:
793         (WebCore::GraphicsContext::drawFocusRing):
794         * platform/graphics/mac/GraphicsLayerCA.mm:
795         (WebCore::setLayerBorderColor):
796         (WebCore::setLayerBackgroundColor):
797         (WebCore::GraphicsLayerCA::setBackgroundColor):
798         * platform/graphics/win/GraphicsContextCGWin.cpp:
799         (WebCore::GraphicsContext::drawFocusRing):
800         * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
801         (WebCore::ciColor):
802
803 2009-03-01  David Levin  <levin@chromium.org>
804
805         Reviewed by Alexey Proskuryakov.
806
807         Bug 24271: XMLHttpRequest needs js bindings for Workers.
808         <https://bugs.webkit.org/show_bug.cgi?id=24271>
809
810         Tests: http/tests/xmlhttprequest/workers/methods-async.html
811                http/tests/xmlhttprequest/workers/methods.html
812
813         * bindings/js/JSWorkerContextBase.cpp:
814         (WebCore::JSWorkerContextBase::getOwnPropertySlot):
815         (jsWorkerContextBaseXMLHttpRequest):
816         (setJSWorkerContextBaseXMLHttpRequest):
817         Expose XMLHttpRequest to Workers.
818
819         * bindings/js/JSWorkerContextBase.h:
820
821         * bindings/js/JSXMLHttpRequestConstructor.cpp:
822         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
823         (WebCore::constructXMLHttpRequest):
824         (WebCore::JSXMLHttpRequestConstructor::mark):
825         Removed the dependencies on Document.
826
827         * bindings/js/JSXMLHttpRequestConstructor.h:
828         (WebCore::JSXMLHttpRequestConstructor::scriptExecutionContext):
829         * dom/EventException.idl:
830         * dom/EventListener.idl:
831         Chnage to have the NoStaticTables attribute since they are used from XHR.
832
833         * loader/WorkerThreadableLoader.cpp:
834         (WebCore::workerContextDidFinishLoading):
835         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
836         Fixed identifier to be unsigned long.
837
838         * loader/WorkerThreadableLoader.h:
839         * workers/WorkerThread.cpp:
840         (WebCore::WorkerThread::workerThread):
841         Stop active objects when the thread is getting shutdown so that xhr gets properly shutdown.
842
843         * xml/XMLHttpRequestUpload.cpp:
844
845         * xml/XMLHttpRequest.idl:
846         * xml/XMLHttpRequestException.idl:
847         * xml/XMLHttpRequestProgressEvent.idl:
848         * xml/XMLHttpRequestUpload.idl:
849         Chnage to have the NoStaticTables attribute since they are used from XHR.
850
851 2009-03-01  Horia Olaru  <olaru@adobe.com>
852
853         Adding manual debugger test cases for bug.
854
855         https://bugs.webkit.org/show_bug.cgi?id=21073
856
857         Reviewed by Kevin McCullough.
858
859         * manual-tests/inspector/debugger-step-on-do-while-statements.html: Added.
860         * manual-tests/inspector/debugger-step-on-for-in-statements.html: Added.
861         * manual-tests/inspector/debugger-step-on-for-statements.html: Added.
862         * manual-tests/inspector/debugger-step-on-while-statements.html: Added.
863         * manual-tests/inspector/resources/loop-statements.js: Added.
864
865 2009-03-01  Dan Bernstein  <mitz@apple.com>
866
867         Reviewed by Darin Adler.
868
869         - fix <rdar://problem/6634768> Reproducible crash in RenderLayer::updateScrollCornerStyle() using full-page zoom at MobileMe Contacts
870
871         Test: fast/events/scroll-during-zoom-change.html
872
873         * dom/Document.cpp:
874         (WebCore::Document::recalcStyle): Pause scheduled events during style
875         reclaculation. Changes to the zoom property result in scroll events
876         being generated during style recalc, and those events need to be
877         deferred until the render tree is consistent.
878         * page/FrameView.cpp:
879         (WebCore::FrameView::layout): Changed to account for a case in which the
880         post-layout tasks trigger a nested layout, which reactivates the
881         post-layout task timer.
882
883 2009-03-01  Ross Boucher  <rboucher@gmail.com>
884
885         Alphabetically sort scripts in the Script's panel file popup menu.
886
887         https://bugs.webkit.org/show_bug.cgi?id=23395
888
889         Reviewed by Timothy Hatcher.
890
891         * inspector/front-end/ScriptsPanel.js:
892         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
893         * inspector/front-end/utilities.js:
894         (insertionIndexForObjectInListSortedByFunction):
895         (indexOfObjectInListSortedByFunction):
896
897 2009-03-01  Yael Aharon  <yael.aharon@nokia.com>
898
899         Pass securityOrigin->host() instead of securityOrigin->domain() to WebInspector
900         when creating databases, localStorage or sessionStorage. Changing document.domain
901         should have no affect on databases, localStorage and sessionStorage in Web Inspector.
902
903         https://bugs.webkit.org/show_bug.cgi?id=23844
904
905         Reviewed by Timothy Hatcher.
906
907         * inspector/InspectorController.cpp:
908         (WebCore::InspectorController::addDOMStorageScriptResource):
909         (WebCore::InspectorController::didUseDOMStorage):
910         * storage/Database.cpp:
911         (WebCore::Database::openDatabase):
912
913 2009-03-01  Gustavo Noronha Silva  <gns@gnome.org>
914
915         Reviewed by Holger Freyther.
916
917         Avoid leaking errors when reporting GIO errors.
918
919         * platform/network/soup/ResourceHandleSoup.cpp:
920         (WebCore::readCallback):
921         (WebCore::openCallback):
922         (WebCore::queryInfoCallback):
923
924 2009-03-01  Gustavo Noronha Silva  <gns@gnome.org>
925
926         Reviewed by Holger Freyther.
927
928         Fixes crash when the GIO backend is given the URI for a directory.
929
930         * platform/network/soup/ResourceHandleSoup.cpp:
931         (WebCore::networkErrorForFile):
932
933 2009-02-28  Dimitri Glazkov  <dglazkov@chromium.org>
934
935         Reviewed by Darin Fisher.
936
937         https://bugs.webkit.org/show_bug.cgi?id=24261
938         Fix V8 custom binding scrubbing error.
939
940         Test: fast/dom/TreeWalker/TreeWalker-currentNode.html
941         Test: traversal/exception-forwarding.html
942         TesT: traversal/stay-within-root.html
943
944         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
945         * bindings/v8/custom/V8NodeIteratorCustom.cpp:
946         (WebCore::toV8): Replace v8::Undefined() return value with v8::Null().
947         * bindings/v8/custom/V8TreeWalkerCustom.cpp:
948         (WebCore::toV8): Ditto.
949
950 2009-02-28  Dimitri Glazkov  <dglazkov@chromium.org>
951
952         Reviewed by Darin Fisher.
953
954         https://bugs.webkit.org/show_bug.cgi?id=24261
955         Fix V8 custom binding scrubbing error.
956
957         Test: fast/dom/CSSStyleDeclaration/css-properties-case-sensitive.html
958
959         * WebCore.xcodeproj/project.pbxproj:
960         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
961         (WebCore::cssPropertyName):  Remove dubious checks, left over from
962             incomplete conversion of parameter from pointer to pass-by-ref.
963         (WebCore::NAMED_PROPERTY_GETTER): Initialize parameter.
964         (WebCore::NAMED_PROPERTY_SETTER): Ditto.
965
966 2009-02-28  Xan Lopez  <xan@gnome.org>
967
968         Reviewed by Holger Freyther.
969
970         https://bugs.webkit.org/show_bug.cgi?id=24263
971         [GTK] ref ResourceHandle until we are finished with it
972
973         Add a ref to the ResourceHandle in startHttp so we can keep it
974         alive untill all callbacks have been executed, and unref it when
975         soup tells us it's done with the SoupMessage (in
976         finishedCallback). Fixes a number of crashes when calling
977         didReceiveData whould crash because of the handle dying.
978
979         * platform/network/soup/ResourceHandleSoup.cpp:
980         (WebCore::finishedCallback):
981         (WebCore::ResourceHandle::startHttp):
982
983 2009-02-28  Adam Bergkvist <adam.bergkvist@ericsson.com>
984
985         Reviewed by Alexey Proskuryakov.
986
987         https://bugs.webkit.org/show_bug.cgi?id=24226
988         [SOUP] HTTP status text is never set
989
990         Set HTTP status text to SoupMessage reason_phrase.
991
992         * platform/network/soup/ResourceHandleSoup.cpp:
993         (WebCore::fillResponseFromMessage):
994
995 2009-02-28  Dan Bernstein  <mitz@apple.com>
996
997         - fix malformed project file
998
999         * WebCore.xcodeproj/project.pbxproj:
1000
1001 2009-02-28  Dan Bernstein  <mitz@apple.com>
1002
1003         Reviewed by Oliver Hunt.
1004
1005         - fix https://bugs.webkit.org/show_bug.cgi?id=23848
1006           <rdar://problem/6573250> REGRESSION: Crash when mouse cursor moves over a link on www.opportuno.de
1007
1008         Test: fast/layers/inline-dirty-z-order-lists.html
1009
1010         * rendering/RenderBox.cpp:
1011         (WebCore::RenderBox::styleWillChange): Moved the code that dirties a
1012         layer's and its stacking context's z-order lists when the layer's
1013         z-index or visibility change from here...
1014         * rendering/RenderBoxModelObject.cpp:
1015         (WebCore::RenderBoxModelObject::styleWillChange): ...to here, so that
1016         it will apply to RenderInline too.
1017
1018 2009-02-27  Alexey Proskuryakov  <ap@webkit.org>
1019
1020         Reviewed by David Hyatt.
1021
1022         Don't include TextResourceDecoder.h in Document.h
1023
1024         This undoes inlining of Document::displayStringModifiedByEncoding() to avoid world rebuilds
1025         when TextResourceDecoder.h is modified. Performance impact is expected to be negligible.
1026
1027         * dom/Document.cpp:
1028         (WebCore::Document::displayStringModifiedByEncoding):
1029         (WebCore::Document::displayBufferModifiedByEncoding):
1030         * dom/Document.h:
1031         * WebCore.base.exp:
1032
1033 2009-02-27  Matt Pennig  <pennig@apple.com>
1034
1035         Reviewed by David Hyatt.
1036
1037         Resolves: https://bugs.webkit.org/show_bug.cgi?id=24107
1038         "Fixed elements have 0 as an offsetLeft property"
1039         
1040         Code also brings offsetLeft/Top in full conformance with the spec.
1041         Added two tests, one for fixed-position elements, and one for <html>.
1042         
1043         Tests: fast/dom/Element/fixed-position-offset-parent.html
1044                fast/dom/Element/offsetLeft-offsetTop-html.html
1045
1046         * rendering/RenderBoxModelObject.cpp:
1047         (WebCore::RenderBoxModelObject::offsetLeft):
1048         (WebCore::RenderBoxModelObject::offsetTop):
1049
1050 2009-02-27  Dean Jackson  <dino@apple.com>
1051
1052         Reviewed by Simon Fraser.
1053
1054         renderer()->hasTransform() returns true for elements
1055         with perspective, but no transform, so test for transform
1056         when hit testing. This fixes ASSERT from
1057         https://bugs.webkit.org/show_bug.cgi?id=24252
1058
1059         Test: transforms/no_transform_hit_testing.html
1060
1061         * rendering/RenderLayer.cpp:
1062         (WebCore::RenderLayer::hitTestLayer):
1063
1064 2009-02-27  Dimitri Glazkov  <dglazkov@chromium.org>
1065
1066         Reviewed by Darin Fisher.
1067
1068         Fix scrubbing error -- a reversed condition.
1069
1070         * bindings/v8/ScriptValue.h:
1071         (WebCore::ScriptValue::clear): Change early exit for empty value, not the opposite.
1072
1073 2009-02-27  Jian Li  <jianli@chromium.org>
1074
1075         Reviewed by Alexey Proskuryakov.
1076
1077         Add confirmMessageFromWorkerObject to WorkerObjectProxy.
1078         https://bugs.webkit.org/show_bug.cgi?id=24152
1079
1080         * workers/WorkerMessagingProxy.cpp:
1081         (WebCore::MessageWorkerContextTask::performTask):
1082         (WebCore::WorkerMessagingProxy::confirmMessageFromWorkerObject):
1083         * workers/WorkerMessagingProxy.h:
1084         * workers/WorkerObjectProxy.h:
1085
1086 2009-02-27  Anders Carlsson  <andersca@apple.com>
1087
1088         Reviewed by David Hyatt.
1089
1090         Revert r41295, the fix for https://bugs.webkit.org/show_bug.cgi?id=24227 
1091         because it leads to assertion failures in the Mac port.
1092         
1093         * platform/graphics/BitmapImage.cpp:
1094         (WebCore::BitmapImage::BitmapImage):
1095         * platform/graphics/BitmapImage.h:
1096         (WebCore::BitmapImage::mayFillWithSolidColor):
1097         * platform/graphics/Image.h:
1098         (WebCore::Image::mayFillWithSolidColor):
1099         * platform/graphics/cairo/ImageCairo.cpp:
1100         (WebCore::BitmapImage::BitmapImage):
1101         * platform/graphics/cg/ImageCG.cpp:
1102         (WebCore::BitmapImage::BitmapImage):
1103         (WebCore::BitmapImage::checkForSolidColor):
1104         * platform/graphics/qt/ImageQt.cpp:
1105         (WebCore::BitmapImage::checkForSolidColor):
1106         * platform/graphics/skia/ImageSkia.cpp:
1107         (WebCore::BitmapImage::checkForSolidColor):
1108         * platform/graphics/wx/ImageWx.cpp:
1109         (WebCore::BitmapImage::checkForSolidColor):
1110
1111 2009-02-27  Adam Barth  <abarth@webkit.org>
1112
1113         Reviewed by Eric Seidel.
1114
1115         https://bugs.webkit.org/show_bug.cgi?id=20249
1116
1117         Add a preference to allow universal access from local URLs to mitigate
1118         some attacks.  Some clients still want to allow this access, so we
1119         expose this as a preference.
1120
1121         * WebCore.base.exp:
1122         * dom/Document.cpp:
1123         (WebCore::Document::initSecurityContext):
1124         * page/SecurityOrigin.cpp:
1125         (WebCore::SecurityOrigin::SecurityOrigin):
1126         * page/Settings.cpp:
1127         (WebCore::Settings::Settings):
1128         (WebCore::Settings::setAllowUniversalAccessFromFileUrls):
1129         * page/Settings.h:
1130         (WebCore::Settings::allowUniversalAccessFromFileUrls):
1131
1132 2009-02-27  Adam Treat  <adam.treat@torchmobile.com>
1133
1134         Reviewed by Eric Seidel.
1135
1136         https://bugs.webkit.org/show_bug.cgi?id=24229
1137         If an image has no alpha channel there is no reason to use SourceOver.
1138
1139         * platform/graphics/qt/ImageQt.cpp:
1140         (WebCore::Image::drawPattern):
1141         (WebCore::BitmapImage::draw):
1142
1143 2009-02-27  Adam Treat  <adam.treat@torchmobile.com>
1144
1145         Reviewed by Eric Seidel and Simon Fraser.
1146
1147         https://bugs.webkit.org/show_bug.cgi?id=24227
1148         Ensure that the checkForSolidColor() optimization is correctly triggered
1149         for all cases of drawPattern.  Currently, the optimization was not triggered
1150         when the check had not been previously performed via a request for the
1151         image's NativeImagePtr.
1152
1153         Implement the Qt version of the checkForSolidColor() method.  Combined with
1154         the bug fix this reduces the time it takes to draw a repeating background
1155         of a 1x1 image from ~50msecs to ~0msecs on my machine.
1156
1157         * platform/graphics/BitmapImage.cpp:
1158         (WebCore::BitmapImage::BitmapImage):
1159         * platform/graphics/BitmapImage.h:
1160         (WebCore::BitmapImage::mayFillWithSolidColor):
1161         * platform/graphics/Image.h:
1162         (WebCore::Image::mayFillWithSolidColor):
1163         * platform/graphics/cairo/ImageCairo.cpp:
1164         (WebCore::BitmapImage::BitmapImage):
1165         * platform/graphics/cg/ImageCG.cpp:
1166         (WebCore::BitmapImage::BitmapImage):
1167         (WebCore::BitmapImage::checkForSolidColor):
1168         * platform/graphics/qt/ImageQt.cpp:
1169         (WebCore::BitmapImage::checkForSolidColor):
1170         * platform/graphics/skia/ImageSkia.cpp:
1171         (WebCore::BitmapImage::checkForSolidColor):
1172         * platform/graphics/wx/ImageWx.cpp:
1173         (WebCore::BitmapImage::checkForSolidColor):
1174
1175 2009-02-27  Dirk Schulze  <krit@webkit.org>
1176
1177         Reviewed by Zack Rusin.
1178
1179         Added support for gradients and pattern on Fonts for Qt.
1180
1181         [Qt] gradients and patterns for FontQt
1182         https://bugs.webkit.org/show_bug.cgi?id=24243
1183
1184         * platform/graphics/qt/FontQt.cpp:
1185         (WebCore::Font::drawComplexText):
1186
1187 2009-02-27  Jian Li  <jianli@chromium.org>
1188
1189         Reviewed by Alexey Proskuryakov.
1190
1191         WorkerContextProxy::create in WorkerMessagingProxy.cpp should only be provided for non-Chromium platform.
1192         https://bugs.webkit.org/show_bug.cgi?id=24113
1193
1194         * workers/WorkerMessagingProxy.cpp:
1195
1196 2009-02-27  Yael Aharon  <yael.aharon@nokia.com>
1197
1198         Added a refresh button to storage views.
1199
1200         https://bugs.webkit.org/show_bug.cgi?id=24040
1201
1202         Reviewed by Timothy Hatcher.
1203
1204         * inspector/front-end/DOMStorageItemsView.js:
1205         (WebInspector.DOMStorageItemsView):
1206         (WebInspector.DOMStorageItemsView.prototype.get statusBarItems):
1207         (WebInspector.DOMStorageItemsView.prototype.update):
1208         (WebInspector.DOMStorageItemsView.prototype._refreshButtonClicked):
1209         * inspector/front-end/DatabaseTableView.js:
1210         (WebInspector.DatabaseTableView):
1211         (WebInspector.DatabaseTableView.prototype.get statusBarItems):
1212         (WebInspector.DatabaseTableView.prototype._refreshButtonClicked):
1213         * inspector/front-end/DatabasesPanel.js:
1214         (WebInspector.DatabasesPanel):
1215         (WebInspector.DatabasesPanel.prototype.get statusBarItems):
1216         (WebInspector.DatabasesPanel.prototype.reset):
1217         (WebInspector.DatabasesPanel.prototype.showDatabase):
1218         (WebInspector.DatabasesPanel.prototype.showDOMStorage):
1219         (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
1220         * inspector/front-end/inspector.css:
1221
1222 2009-02-27  Yael Aharon  <yael.aharon@nokia.com>
1223
1224         Added support for editing/deleting localStorage and sessionStorage items
1225         directly from Web Inspector.
1226
1227         https://bugs.webkit.org/show_bug.cgi?id=23866.
1228
1229         Reviewed by Timothy Hatcher.
1230
1231         * WebCore.vcproj/WebCore.vcproj:
1232         * inspector/front-end/DOMStorageDataGrid.js: Added.
1233         (WebInspector.DOMStorageDataGrid):
1234         (WebInspector.DOMStorageDataGrid.prototype._ondblclick):
1235         (WebInspector.DOMStorageDataGrid.prototype._startEditing):
1236         (WebInspector.DOMStorageDataGrid.prototype._editingCommitted):
1237         (WebInspector.DOMStorageDataGrid.prototype._editingCancelled):
1238         (WebInspector.DOMStorageDataGrid.prototype.deleteSelectedRow):
1239         * inspector/front-end/DOMStorageItemsView.js:
1240         (WebInspector.DOMStorageItemsView):
1241         (WebInspector.DOMStorageItemsView.prototype.get statusBarItems):
1242         (WebInspector.DOMStorageItemsView.prototype.hide):
1243         (WebInspector.DOMStorageItemsView.prototype.update):
1244         (WebInspector.DOMStorageItemsView.prototype._deleteButtonClicked):
1245         * inspector/front-end/DatabasesPanel.js:
1246         (WebInspector.DatabasesPanel):
1247         (WebInspector.DatabasesPanel.prototype.get statusBarItems):
1248         (WebInspector.DatabasesPanel.prototype.reset):
1249         (WebInspector.DatabasesPanel.prototype.showDOMStorage):
1250         (WebInspector.DatabasesPanel.prototype.dataGridForDOMStorage):
1251         (WebInspector.DatabasesPanel.prototype._updateSidebarWidth):
1252         * inspector/front-end/WebKit.qrc:
1253         * inspector/front-end/inspector.css:
1254         * inspector/front-end/inspector.html:
1255
1256 2009-02-26  Brett Wilson  <brettw@chromium.org>
1257
1258         Fix Windows transparency for the Chromium port. Implement a helper
1259         class for handling transparency on Windows. It allows semitransparent
1260         ClearType and semitransparent form controls by making new layers in the
1261         background.
1262
1263         It also replaces the "ThemeHelper" which allows better
1264         scaling and transforms on Windows form controls. In addition to the
1265         functionality that the ThemeHelper did, but additionally handles the
1266         antialiasing properly so that the form controls aren't composited on a
1267         white square.
1268
1269         https://bugs.webkit.org/show_bug.cgi?id=24101
1270
1271         Reviewed by Eric Seidel.
1272
1273         * platform/graphics/chromium/FontChromiumWin.cpp:
1274         (WebCore::):
1275         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::TransparencyAwareFontPainter):
1276         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
1277         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
1278         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::drawGlyphs):
1279         (WebCore::Font::drawGlyphs):
1280         * platform/graphics/chromium/ThemeHelperChromiumWin.cpp:
1281         * platform/graphics/chromium/ThemeHelperChromiumWin.h:
1282         * platform/graphics/chromium/TransparencyWin.cpp: Added.
1283         (WebCore::):
1284         (WebCore::TransparencyWin::OwnedBuffers::OwnedBuffers):
1285         (WebCore::TransparencyWin::OwnedBuffers::destBitmap):
1286         (WebCore::TransparencyWin::OwnedBuffers::referenceBitmap):
1287         (WebCore::TransparencyWin::OwnedBuffers::canHandleSize):
1288         (WebCore::TransparencyWin::TransparencyWin):
1289         (WebCore::TransparencyWin::~TransparencyWin):
1290         (WebCore::TransparencyWin::init):
1291         (WebCore::TransparencyWin::computeLayerSize):
1292         (WebCore::TransparencyWin::setupLayer):
1293         (WebCore::TransparencyWin::setupLayerForNoLayer):
1294         (WebCore::TransparencyWin::setupLayerForOpaqueCompositeLayer):
1295         (WebCore::TransparencyWin::setupLayerForTextComposite):
1296         (WebCore::TransparencyWin::setupLayerForWhiteLayer):
1297         (WebCore::TransparencyWin::setupTransform):
1298         (WebCore::TransparencyWin::setupTransformForKeepTransform):
1299         (WebCore::TransparencyWin::setupTransformForUntransform):
1300         (WebCore::TransparencyWin::setupTransformForScaleTransform):
1301         (WebCore::TransparencyWin::setTextCompositeColor):
1302         (WebCore::TransparencyWin::initializeNewContext):
1303         (WebCore::TransparencyWin::compositeOpaqueComposite):
1304         (WebCore::TransparencyWin::compositeTextComposite):
1305         (WebCore::TransparencyWin::makeLayerOpaque):
1306         * platform/graphics/chromium/TransparencyWin.h: Added.
1307         (WebCore::TransparencyWin::):
1308         (WebCore::TransparencyWin::context):
1309         (WebCore::TransparencyWin::platformContext):
1310         (WebCore::TransparencyWin::drawRect):
1311         * platform/graphics/skia/GraphicsContextSkia.cpp:
1312         (WebCore::GraphicsContext::endTransparencyLayer):
1313         * platform/graphics/skia/ImageSkia.cpp:
1314         (WebCore::paintSkBitmap):
1315         * rendering/RenderThemeChromiumWin.cpp:
1316         (WebCore::):
1317         (WebCore::RenderThemeChromiumWin::paintButton):
1318         (WebCore::RenderThemeChromiumWin::paintMenuList):
1319         (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
1320
1321 2009-02-27  Dimitri Glazkov  <dglazkov@chromium.org>
1322
1323         Reviewed by Eric Seidel.
1324
1325         https://bugs.webkit.org/show_bug.cgi?id=24211
1326         Add ScheduledAction for V8.
1327
1328         * bindings/v8/ScheduledAction.cpp: Added.
1329         (WebCore::ScheduledAction::ScheduledAction):
1330         (WebCore::ScheduledAction::~ScheduledAction):
1331         (WebCore::ScheduledAction::execute):
1332         * bindings/v8/ScheduledAction.h: Added.
1333         (WebCore::ScheduledAction::ScheduledAction):
1334
1335 2009-02-27  Zack Rusin  <zack@kde.org>
1336
1337         Reviewed by Nikolas Zimmermann.
1338
1339         Qt: be more reasonable about scrolled lines
1340
1341         cMouseWheelPixelsPerLineStep is currently a constant set to 13.3. it doesn't
1342         match our metrics meaning that Qt scrolls by ~2 lines by default which is quite
1343         irritating. so lets scroll vertically by the Qt set number of lines * Qt default
1344         single step scroll
1345
1346         * platform/qt/WheelEventQt.cpp:
1347
1348 2009-02-27  Xan Lopez  <xan@gnome.org>
1349
1350         Rubber-stamped by Alexey Proskuryakov.
1351
1352         https://bugs.webkit.org/show_bug.cgi?id=24222
1353         [GTK] Remove checks for old glib versions
1354
1355         libsoup, which is a hard dependency, needs at least glib 2.15.3,
1356         so remove all glib checks for versions older than that.
1357
1358         * platform/gtk/ContextMenuGtk.cpp:
1359         (WebCore::ContextMenu::ContextMenu):
1360         * platform/gtk/ContextMenuItemGtk.cpp:
1361         (WebCore::ContextMenuItem::setSubMenu):
1362         * platform/gtk/PopupMenuGtk.cpp:
1363         (WebCore::PopupMenu::show):
1364         * platform/gtk/WidgetGtk.cpp:
1365         (WebCore::Widget::retainPlatformWidget):
1366         * platform/network/soup/ResourceHandleSoup.cpp:
1367
1368 2009-02-26  Dirk Schulze  <krit@webkit.org>
1369
1370         Reviewed by Oliver Hunt.
1371
1372         Added support for Gradients and Patterns on filled or stroked Fonts
1373         in Cairo. I also added support for globalAlpha on FontCairo.
1374
1375         [CAIRO] SVG/Canvas fonts miss gradients/pattern support
1376         https://bugs.webkit.org/show_bug.cgi?id=18617
1377
1378         * html/CanvasRenderingContext2D.cpp:
1379         (WebCore::CanvasRenderingContext2D::drawTextInternal):
1380         * platform/graphics/cairo/FontCairo.cpp:
1381         (WebCore::Font::drawGlyphs):
1382
1383 2009-02-26  Stephen White  <senorblanco@chromium.org>
1384
1385         Reviewed by Eric Seidel.
1386
1387         https://bugs.webkit.org/show_bug.cgi?id=23957
1388
1389         Fix for SVG gradient and pattern text for Chromium/skia. 
1390         Added accessors for the fill and stroke gradients to
1391         GraphicsContext.  Changed the paintSkiaText function to take a
1392         GraphicsContext, so we can check for gradients/patterns. 
1393         Changed the skiaDrawText function to set the SkPaint shader
1394         correctly, and to scale up the gradient shader matrix to
1395         encompass the entire text string.  Also offset each glyph
1396         separately, rather than transforming the canvas, so that the
1397         gradient/pattern stays fixed relative to the text origin.
1398
1399         * platform/graphics/GraphicsContext.cpp:
1400         (WebCore::GraphicsContext::getFillGradient):
1401         (WebCore::GraphicsContext::getStrokeGradient):
1402         (WebCore::GraphicsContext::getFillPattern):
1403         (WebCore::GraphicsContext::getStrokePattern):
1404         * platform/graphics/GraphicsContext.h:
1405         * platform/graphics/chromium/FontChromiumWin.cpp:
1406         (WebCore::Font::drawGlyphs):
1407         * platform/graphics/chromium/UniscribeHelper.cpp:
1408         (WebCore::UniscribeHelper::draw):
1409         * platform/graphics/skia/SkiaFontWin.cpp:
1410         (WebCore::windowsCanHandleTextDrawing):
1411         (WebCore::skiaDrawText):
1412         (WebCore::paintSkiaText):
1413         * platform/graphics/skia/SkiaFontWin.h:
1414
1415 2009-02-26  Dimitri Glazkov  <dglazkov@chromium.org>
1416
1417         Reviewed by Eric Seidel.
1418
1419         https://bugs.webkit.org/show_bug.cgi?id=24208
1420         Add custom V8 bindings for Navigator, Clipboard, Document, and Node.
1421
1422         * bindings/v8/custom/V8ClipboardCustom.cpp: Added.
1423         (WebCore::ACCESSOR_GETTER):
1424         (WebCore::CALLBACK_FUNC_DECL):
1425         * bindings/v8/custom/V8DocumentCustom.cpp: Added.
1426         (WebCore::CALLBACK_FUNC_DECL):
1427         * bindings/v8/custom/V8NavigatorCustom.cpp: Added.
1428         (WebCore::ACCESSOR_GETTER):
1429         * bindings/v8/custom/V8NodeCustom.cpp: Added.
1430         (WebCore::CALLBACK_FUNC_DECL):
1431
1432 2009-02-26  Gustavo Noronha Silva  <gns@gnome.org>
1433
1434         Unreviewed build fix for building with GNOME Keyring enabled.
1435
1436         * platform/network/soup/webkit-soup-auth-dialog.c:
1437         (show_auth_dialog):
1438
1439 2009-02-26  Xan Lopez  <xan@gnome.org>
1440
1441         Reviewed by Holger Freyther.
1442
1443         https://bugs.webkit.org/show_bug.cgi?id=16947
1444         [GTK] Missing HTTP Auth challenge
1445
1446         Add HTTP authentication dialog with optional GNOME Keyring
1447         storage.
1448
1449         * GNUmakefile.am:
1450         * platform/network/ResourceHandleInternal.h:
1451         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
1452         * platform/network/soup/ResourceHandleSoup.cpp:
1453         (WebCore::currentToplevelCallback):
1454         (WebCore::ResourceHandle::startHttp):
1455         (WebCore::ResourceHandle::start):
1456         * platform/network/soup/webkit-soup-auth-dialog.c: Added.
1457         (webkit_soup_auth_dialog_class_init):
1458         (webkit_soup_auth_dialog_init):
1459         (webkit_soup_auth_dialog_session_feature_init):
1460         (free_authData):
1461         (set_password_callback):
1462         (response_callback):
1463         (show_auth_dialog):
1464         (find_password_callback):
1465         (session_authenticate):
1466         (attach):
1467         * platform/network/soup/webkit-soup-auth-dialog.h: Added.
1468
1469 2009-02-25  Ojan Vafai  <ojan@chromium.org> and Eric Seidel <eric@webkit.org>
1470
1471         Reviewed by Dave Hyatt.
1472
1473         After Ojan's positionForCoordinates fix http://trac.webkit.org/changeset/41191
1474         svg/custom/pointer-events-image.svg and svg/custom/pointer-events-text.svg
1475         started failing because Ojan's new code was now *correctly* calling through to
1476         SVG asking for the closest text offset in the last line box, instead of
1477         just returning the offset at the end of the last line box when clicking below a box.
1478
1479         But!  The SVG code was wrong, in that it returned the character offset of the last
1480         character when you asked for a character offset after the end of the box, instead
1481         it should return the offset *after* the last character.  This patch fixes
1482         that behavior by reordering the last two clauses in svgCharacterHitsPosition.
1483
1484         The SVG positionForCoordinates function is still wrong, and I've added some FIXMEs
1485         to document what's wrong.  I've also cleaned up the code a bit so it's clearer
1486         what it is doing (which also makes more obvious what's wrong with it).
1487
1488         * rendering/RenderSVGInlineText.cpp:
1489         (WebCore::RenderSVGInlineText::positionForCoordinates):
1490         * rendering/SVGInlineTextBox.cpp:
1491         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::SVGInlineTextBoxClosestCharacterToPositionWalker):
1492         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
1493         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::offsetOfHitCharacter):
1494         (WebCore::SVGInlineTextBox::closestCharacterToPosition):
1495         (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
1496
1497 2009-02-26  Darin Fisher  <darin@chromium.org>
1498
1499         Reviewed by Eric Seidel.
1500
1501         Minor cleanup of ChromiumBridge:
1502         Removing unused matchesMIMEType method and s/Javascript/JavaScript/
1503
1504         * platform/chromium/ChromiumBridge.h:
1505         * platform/chromium/MimeTypeRegistryChromium.cpp:
1506         (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
1507         (WebCore::MIMETypeRegistry::isSupportedJavaScriptMIMEType):
1508         (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
1509
1510 2009-02-26  David Hyatt  <hyatt@apple.com>
1511
1512         Reviewed by Sam Weinig
1513
1514         Fix text-bottom vertical alignment.  It was incorrectly aligning the bottom of the descent instead of including
1515         the line-height below the descent.
1516
1517         Added fast/inline/vertical-align-text-bottom.html
1518
1519         * rendering/RenderBoxModelObject.cpp:
1520         (WebCore::RenderBoxModelObject::verticalPosition):
1521
1522 2009-02-26  Dirk Schulze  <krit@webkit.org>
1523
1524         Reviewed by Eric Seidel.
1525
1526         Make SVG Masking platform independet with the use of ImageBuffer::getImageData(),
1527         ImageBuffer::putImageData() and GraphicsContext::clipToImageBuffer(). Every platform has
1528         just to implement this three methods to support SVG Masking now.
1529  
1530         Make SVG Masking platform aware
1531         https://bugs.webkit.org/show_bug.cgi?id=19243
1532
1533         * GNUmakefile.am:
1534         * WebCore.pro:
1535         * WebCore.vcproj/WebCore.vcproj:
1536         * WebCore.xcodeproj/project.pbxproj:
1537         * svg/graphics/SVGResourceMasker.cpp:
1538         (WebCore::SVGResourceMasker::applyMask):
1539         * svg/graphics/cairo/SVGResourceMaskerCairo.cpp: Removed.
1540         * svg/graphics/cg/SVGResourceMaskerCg.cpp: Removed.
1541         * svg/graphics/cg/SVGResourceMaskerCg.mm: Removed.
1542         * svg/graphics/qt/SVGResourceMaskerQt.cpp: Removed.
1543         * svg/graphics/skia/SVGResourceMaskerSkia.cpp: Removed.
1544
1545 2009-02-26  Yong Li  <yong.li@torchmobile.com>
1546
1547         Reviewed by Darin Adler, Antti Koivisto and Alexey Proskuryakov.
1548
1549         Test: http/tests/misc/slow-preload-cancel.html
1550
1551         https://bugs.webkit.org/show_bug.cgi?id=24133
1552         Clear all pending preloads in the DocLoader object when we decide to
1553         cancel its all requests.
1554
1555         * loader/DocLoader.cpp:
1556         (WebCore::DocLoader::clearPendingPreloads):
1557         * loader/DocLoader.h:
1558         * loader/loader.cpp:
1559         (WebCore::Loader::cancelRequests):
1560
1561 2009-02-26  Dimitri Glazkov  <dglazkov@chromium.org>
1562
1563         Reviewed by Eric Seidel.
1564
1565         https://bugs.webkit.org/show_bug.cgi?id=24182
1566         Add NodeFilter, NodeIterator, and TreeWalker custom V8 bindings.
1567
1568         * bindings/v8/custom/V8NodeFilterCustom.cpp: Added.
1569         (WebCore::CALLBACK_FUNC_DECL):
1570         * bindings/v8/custom/V8NodeIteratorCustom.cpp: Added.
1571         (WebCore::toV8):
1572         (WebCore::CALLBACK_FUNC_DECL):
1573         * bindings/v8/custom/V8TreeWalkerCustom.cpp: Added.
1574         (WebCore::toV8):
1575         (WebCore::CALLBACK_FUNC_DECL):
1576
1577 2009-02-26  Alexey Proskuryakov  <ap@webkit.org>
1578
1579         Reviewed by Darin Adler.
1580
1581         https://bugs.webkit.org/show_bug.cgi?id=23500
1582         KURL::parse() incorrectly compares its result to original string
1583
1584         * platform/KURL.cpp: (WebCore::KURL::parse): Take string length into account.
1585
1586 2009-02-26  Ojan Vafai  <ojan@chromium.org>
1587
1588         Reviewed by Kevin McCullough.
1589
1590         Manual test for inspector node highlighting.
1591
1592         * manual-tests/inspector/highlight-nodes.html: Added.
1593
1594 2009-02-16  Anantanarayanan Iyengar  <ananta@chromium.org>
1595
1596         Reviewed by Darin Fisher.
1597
1598         https://bugs.webkit.org/show_bug.cgi?id=23973
1599         ScrollView::scrollContents can be invoked during view shutdown.  In
1600         this scenario the FrameView::hostWindow method can return NULL, which
1601         indicates that the frame/page is being destroyed. This causes a crash
1602         when we try to dereference a NULL hostWindow pointer.  Fix is to add a
1603         NULL check for this.  
1604
1605         * platform/ScrollView.cpp:
1606         (WebCore::ScrollView::scrollContents):
1607
1608 2009-02-26  Rahul Kuchhal  <kuchhal@chromium.org>
1609
1610         Reviewed by Dave Hyatt.
1611
1612         https://bugs.webkit.org/show_bug.cgi?id=24003
1613         Fix a crash caused by unsafe type conversion.
1614
1615         Test: fast/block/positioning/absolute-in-inline-rtl-4.html
1616
1617         * rendering/RenderBox.cpp:
1618         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
1619
1620 2009-02-26  Ojan Vafai  <ojan@chromium.org>
1621
1622         Reviewed by Adam Roben.
1623
1624         https://bugs.webkit.org/show_bug.cgi?id=24202
1625         Have drawNodeHighlight clip instead of clearing. This makes it work for
1626         both Safari and Chromium since Chromium draws the inspector highlighting
1627         in the same buffer as the page.
1628
1629         * inspector/InspectorController.cpp:
1630         (WebCore::quadToPath):
1631         (WebCore::drawOutlinedQuad):
1632         (WebCore::drawOutlinedQuadWithClip):
1633         (WebCore::drawHighlightForBox):
1634
1635 2009-02-26  David Hyatt  <hyatt@apple.com>
1636
1637         Reviewed by Dan Bernstein & Darin Adler
1638
1639         Make sure the border/padding are properly omitted at the start of an inline that is a continuation.
1640         
1641         Added fast/inline/inline-continuation-borders.html
1642
1643         * rendering/InlineFlowBox.cpp:
1644         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
1645
1646 2009-02-26  Simon Fraser  <simon.fraser@apple.com>
1647
1648         Build fix, no review.
1649         
1650         Try to fix the wx build after r41218.
1651
1652         * WebCoreSources.bkl:
1653
1654 2009-02-26  Alexey Proskuryakov  <ap@webkit.org>
1655
1656         Reviewed by Darin Adler.
1657
1658         https://bugs.webkit.org/show_bug.cgi?id=19527
1659         ASSERTION FAILED: containerA && containerB
1660
1661         Test: fast/dom/Range/bug-19527.html
1662
1663         * dom/Range.cpp:
1664         (WebCore::Range::isPointInRange):
1665         (WebCore::Range::comparePoint):
1666         Bring the behavior in line with current Firefox, making it impossible for these methods
1667         to pass a null container to compareBoundaryPoints().
1668
1669 2009-02-26  Jonathon Jongsma  <jonathon@quotidian.org>
1670
1671         Reviewed by Holger Freyther.
1672
1673         https://bugs.webkit.org/show_bug.cgi?id=20358
1674
1675         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
1676         (WebCore::SimpleFontData::smallCapsFontData): the small-caps font data
1677         should set the computed size rather than the specified size, otherwise
1678         the caps just get rendered normal size.
1679
1680 2009-02-26  Benjamin Meyer  <benjamin.meyer@torchmobile.com>
1681
1682         Reviewed by George Staikos.
1683
1684         https://bugs.webkit.org/show_bug.cgi?id=24062
1685         QNetworkCookieJar expects the url and not the policy url.  Sending the
1686         policy url will cause QNetworkCookieJar to behave incorrectly.  One
1687         example would be a cookie that does not have a path or domain.
1688         QNetworkCookieJar will use the url it is given to fill in default values.
1689         This allows setting cookies on the url of the main frame from an iFrame
1690         when the cookie should be set on the url of the iFrame.
1691
1692         Originally noticed on http://writer.zoho.com/jsp/home.jsp?serviceurl=/index.do
1693
1694         * platform/qt/CookieJarQt.cpp:
1695         (WebCore::setCookies):
1696
1697 2009-02-26  Charles Wei  <charles.wei@torchmobile.com.cn>
1698
1699         Reviewed by George Staikos.
1700
1701         make WebKit/Qt compile with SVG disabled
1702
1703         * WebCore.pro:
1704         * platform/graphics/qt/FontPlatformDataQt.cpp:
1705
1706 2009-02-25  Gustavo Noronha Silva  <gns@gnome.org>
1707
1708         Unreviewed build fix. Add WebCore/workers to the list of paths
1709         searched by the bindings generator perl script.
1710
1711         * GNUmakefile.am:
1712
1713 2009-02-25  Sam Weinig  <sam@webkit.org>
1714
1715         Reviewed by Geoffrey Garen.
1716
1717         Add canvas to the list of RenderObjects that can mark a page as
1718         visually not empty.
1719
1720         * rendering/RenderHTMLCanvas.cpp:
1721         (WebCore::RenderHTMLCanvas::RenderHTMLCanvas):
1722
1723 2009-02-25  Eric Carlson  <eric.carlson@apple.com>
1724
1725         Reviewed by Dave Hyatt.
1726
1727         * rendering/RenderBox.cpp:
1728         (WebCore::RenderBox::nodeAtPoint): Remove assertion fired when child has layer
1729         as RenderMedia with controls always has a layer.
1730
1731 2009-02-25  Dan Bernstein  <mitz@apple.com>
1732
1733         Reviewed by Simon Fraser.
1734
1735         - fix https://bugs.webkit.org/show_bug.cgi?id=24130
1736           <rdar://problem/6618196> Paint very slow when horizontally resizing
1737
1738         Test: fast/gradients/background-clipped.html
1739
1740         * rendering/RenderBoxModelObject.cpp:
1741         (WebCore::RenderBoxModelObject::paintFillLayerExtended): Intersect the
1742         destination rectangle passed to drawTiledImage() with the dirty
1743         rectangle. This makes it more likely for the destination rect to be
1744         contained in a single tile rect, which results in a faster code path
1745         being taken down the road (just drawing a single tile instead of
1746         tiling).
1747
1748 2009-02-25  Ojan Vafai  <ojan@chromium.org>
1749
1750         Reviewed by Eric Seidel.
1751
1752         Fix test regressions from positionForCoordinates patch.
1753         https://bugs.webkit.org/show_bug.cgi?id=24148
1754
1755         * rendering/RenderBlock.cpp:
1756         (WebCore::positionForPointWithInlineChildren):
1757         Remove ASSERT that placeholder text codepath is hitting.
1758
1759 2009-02-25  Chris Fleizach  <cfleizach@apple.com>
1760
1761         Reviewed by Beth Dakin.
1762
1763         Bug 24143: Crash occurs at WebCore::AccessibilityTable::isTableExposableThroughAccessibility() when applying a link in GMail
1764         https://bugs.webkit.org/show_bug.cgi?id=24143
1765
1766         When an AX object is marked dirty, do not create AX elements while going up the parent chain.
1767         Do not allow AXRenderObjects to remove their own IDs from the cache, all the cache to do that work
1768         Make sure the AXObjectWrapper's have an object before calling them
1769         In AXObjectCache, change get -> getOrCreate. Use get() to only retrieve an element if it exists
1770
1771         Test: platform/mac-snowleopard/accessibility/table-updating.html
1772
1773         * WebCore.base.exp:
1774         * page/AXObjectCache.cpp:
1775         (WebCore::AXObjectCache::~AXObjectCache):
1776         (WebCore::AXObjectCache::get):
1777         (WebCore::AXObjectCache::getOrCreate):
1778         (WebCore::AXObjectCache::removeAXID):
1779         (WebCore::AXObjectCache::handleActiveDescendantChanged):
1780         (WebCore::AXObjectCache::handleAriaRoleChanged):
1781         * page/AXObjectCache.h:
1782         * page/AccessibilityImageMapLink.cpp:
1783         (WebCore::AccessibilityImageMapLink::parentObject):
1784         * page/AccessibilityListBox.cpp:
1785         (WebCore::AccessibilityListBox::listBoxOptionAccessibilityObject):
1786         (WebCore::AccessibilityListBox::doAccessibilityHitTest):
1787         * page/AccessibilityListBoxOption.cpp:
1788         (WebCore::AccessibilityListBoxOption::elementRect):
1789         (WebCore::AccessibilityListBoxOption::parentObject):
1790         * page/AccessibilityObject.cpp:
1791         (WebCore::AccessibilityObject::detach):
1792         (WebCore::AccessibilityObject::parentObjectIfExists):
1793         (WebCore::replacedNodeNeedsCharacter):
1794         (WebCore::AccessibilityObject::accessibilityObjectForPosition):
1795         * page/AccessibilityObject.h:
1796         * page/AccessibilityRenderObject.cpp:
1797         (WebCore::AccessibilityRenderObject::firstChild):
1798         (WebCore::AccessibilityRenderObject::lastChild):
1799         (WebCore::AccessibilityRenderObject::previousSibling):
1800         (WebCore::AccessibilityRenderObject::nextSibling):
1801         (WebCore::AccessibilityRenderObject::parentObjectIfExists):
1802         (WebCore::AccessibilityRenderObject::parentObject):
1803         (WebCore::AccessibilityRenderObject::isAttachment):
1804         (WebCore::AccessibilityRenderObject::headingLevel):
1805         (WebCore::AccessibilityRenderObject::anchorElement):
1806         (WebCore::AccessibilityRenderObject::menuForMenuButton):
1807         (WebCore::AccessibilityRenderObject::menuButtonForMenu):
1808         (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
1809         (WebCore::AccessibilityRenderObject::internalLinkElement):
1810         (WebCore::AccessibilityRenderObject::addRadioButtonGroupMembers):
1811         (WebCore::AccessibilityRenderObject::titleUIElement):
1812         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1813         (WebCore::AccessibilityRenderObject::accessibilityParentForImageMap):
1814         (WebCore::AccessibilityRenderObject::getDocumentLinks):
1815         (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
1816         (WebCore::AccessibilityRenderObject::focusedUIElement):
1817         (WebCore::AccessibilityRenderObject::activeDescendant):
1818         (WebCore::AccessibilityRenderObject::observableObject):
1819         (WebCore::AccessibilityRenderObject::childrenChanged):
1820         (WebCore::AccessibilityRenderObject::addChildren):
1821         * page/AccessibilityRenderObject.h:
1822         (WebCore::AccessibilityRenderObject::setRenderObject):
1823         * page/AccessibilityTable.cpp:
1824         (WebCore::AccessibilityTable::addChildren):
1825         (WebCore::AccessibilityTable::headerContainer):
1826         (WebCore::AccessibilityTable::cellForColumnAndRow):
1827         * page/AccessibilityTableCell.cpp:
1828         (WebCore::AccessibilityTableCell::isTableCell):
1829         (WebCore::AccessibilityTableCell::titleUIElement):
1830         * page/AccessibilityTableColumn.cpp:
1831         (WebCore::AccessibilityTableColumn::headerObjectForSection):
1832         * page/AccessibilityTableRow.cpp:
1833         (WebCore::AccessibilityTableRow::isTableRow):
1834         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
1835         * page/mac/AXObjectCacheMac.mm:
1836         (WebCore::AXObjectCache::postNotification):
1837         (WebCore::AXObjectCache::postNotificationToElement):
1838         * page/mac/AccessibilityObjectWrapper.mm:
1839         (textMarkerForVisiblePosition):
1840         (AXLinkElementForNode):
1841         (nsStringForReplacedNode):
1842         (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
1843         (-[AccessibilityObjectWrapper accessibilityActionNames]):
1844         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
1845         (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]):
1846         (-[AccessibilityObjectWrapper accessibilityHitTest:]):
1847         (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
1848         (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
1849         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
1850         (-[AccessibilityObjectWrapper accessibilityPerformPressAction]):
1851         (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
1852         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
1853         (-[AccessibilityObjectWrapper _accessibilityParentForSubview:]):
1854         (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
1855         (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
1856         (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
1857
1858 2009-02-25  Beth Dakin  <bdakin@apple.com>
1859
1860         Reviewed by Geoff Garen.
1861
1862         Re-working of <rdar://problem/6487249> repro crash in 
1863         WebCore::CSSParser::parseFillImage copying entire contents of this 
1864         page
1865         -and corresponding: https://bugs.webkit.org/show_bug.cgi?id=24172
1866
1867         Fixes a bunch of layout test failures I caused!
1868
1869         * css/CSSParser.cpp:
1870         (WebCore::CSSParser::parseValue):
1871         (WebCore::CSSParser::parseContent):
1872         (WebCore::CSSParser::parseFillImage):
1873         (WebCore::CSSParser::parseFontFaceSrc):
1874         (WebCore::CSSParser::parseBorderImage):
1875
1876 2009-02-25  Dimitri Glazkov  <dglazkov@chromium.org>
1877
1878         Reviewed by Eric Seidel.
1879
1880         https://bugs.webkit.org/show_bug.cgi?id=24174
1881         Add more V8 custom bindings.
1882
1883         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp: Added.
1884         (WebCore::hasCSSPropertyNamePrefix):
1885         (WebCore::cssPropertyName):
1886         (WebCore::NAMED_PROPERTY_GETTER):
1887         (WebCore::NAMED_PROPERTY_SETTER):
1888         * bindings/v8/custom/V8DOMStringListCustom.cpp: Added.
1889         (WebCore::INDEXED_PROPERTY_GETTER):
1890         (WebCore::CALLBACK_FUNC_DECL):
1891         * bindings/v8/custom/V8EventCustom.cpp: Added.
1892         (WebCore::ACCESSOR_SETTER):
1893         (WebCore::ACCESSOR_GETTER):
1894         * bindings/v8/custom/V8HTMLDocumentCustom.cpp: Added.
1895         (WebCore::NAMED_PROPERTY_DELETER):
1896         (WebCore::NAMED_PROPERTY_SETTER):
1897         (WebCore::NAMED_PROPERTY_GETTER):
1898         * bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp: Added.
1899         (WebCore::NAMED_PROPERTY_GETTER):
1900         * bindings/v8/custom/V8NamedNodeMapCustom.cpp: Added.
1901         (WebCore::INDEXED_PROPERTY_GETTER):
1902         (WebCore::NAMED_PROPERTY_GETTER):
1903         * bindings/v8/custom/V8NodeListCustom.cpp: Added.
1904         (WebCore::NAMED_PROPERTY_GETTER):
1905         * bindings/v8/custom/V8StyleSheetListCustom.cpp: Added.
1906         (WebCore::NAMED_PROPERTY_GETTER):
1907
1908 2009-02-25  Scott Violet  <sky@google.com>
1909
1910         Reviewed by Dave Hyatt.
1911
1912         https://bugs.webkit.org/show_bug.cgi?id=24171
1913         Provides a RenderTheme method for getting the scroll bar size and
1914         changes RenderListBox to use it. RenderTheme returns a size of regular,
1915         and Mac's override to return small. Changes ScrollbarThemeChromium to
1916         use the scrollbarsize of the scrollbar when getting the size
1917         instead of passing in no-args.
1918
1919         * platform/chromium/ScrollbarThemeChromium.cpp:
1920         (WebCore::ScrollbarThemeChromium::trackRect):
1921         (WebCore::ScrollbarThemeChromium::buttonSize):
1922         * rendering/RenderListBox.cpp:
1923         (WebCore::RenderListBox::createScrollbar):
1924         * rendering/RenderTheme.h:
1925         (WebCore::RenderTheme::scrollbarControlSizeForPart):
1926         * rendering/RenderThemeChromiumMac.h:
1927         (WebCore::RenderThemeChromiumMac::scrollbarControlSizeForPart):
1928         * rendering/RenderThemeMac.h:
1929         (WebCore::RenderThemeMac::scrollbarControlSizeForPart):
1930
1931 2009-02-25  Beth Dakin  <bdakin@apple.com>
1932
1933         Reviewed by Darin Adler.
1934
1935         Fix for <rdar://problem/6487249> repro crash in 
1936         WebCore::CSSParser::parseFillImage copying entire contents of this 
1937         page
1938         -and corresponding: https://bugs.webkit.org/show_bug.cgi?id=24172
1939
1940         * css/CSSParser.cpp:
1941         (WebCore::CSSParser::parseValue): Null-check m_styleSheet
1942
1943 2009-02-25  Adam Treat  <adam.treat@torchmobile.com>
1944
1945         Fix the Qt build.
1946
1947         * WebCore.pro:
1948
1949 2009-02-25  Jan Michael Alonzo  <jmalonzo@webkit.org>
1950
1951         Gtk build fix. Not reviewed.
1952
1953         Add files to the build per r41218.
1954         Rename WebkitPoint.h to WebKitPoint.h in DOMWindow.cpp
1955
1956         * GNUmakefile.am:
1957         * page/DOMWindow.cpp:
1958
1959 2009-02-25  Zan Dobersek  <zandobersek@gmail.com>
1960
1961         Reviewed by Alexey Proskuryakov.
1962
1963         https://bugs.webkit.org/show_bug.cgi?id=24043
1964         When faced with URLs with unsupported protocol on Gtk port,
1965         report the error through an idle function and return true, so
1966         a proper resource handle is created.
1967
1968         * platform/network/soup/ResourceHandleSoup.cpp:
1969         (WebCore::reportUnknownProtocolError):
1970         (WebCore::ResourceHandle::start):
1971
1972 2009-02-25  Steve Falkenburg  <sfalken@apple.com>
1973
1974         Windows build fix.
1975         Use struct to forward declare ResourceRequest.
1976
1977         * history/HistoryItem.h:
1978         * inspector/InspectorController.h:
1979         * loader/DocumentThreadableLoader.h:
1980         * loader/FrameLoaderClient.h:
1981         * loader/MainResourceLoader.h:
1982         * loader/SubresourceLoader.h:
1983         * loader/SubresourceLoaderClient.h:
1984         * loader/ThreadableLoader.h:
1985         * loader/WorkerThreadableLoader.h:
1986         * platform/CrossThreadCopier.h:
1987         * platform/network/ResourceHandle.h:
1988         * platform/network/ResourceHandleClient.h:
1989         * platform/network/ResourceRequestBase.h:
1990         * platform/network/cf/ResourceRequestCFNet.h:
1991         * xml/XMLHttpRequest.h:
1992
1993 2009-02-25  Steve Falkenburg  <sfalken@apple.com>
1994
1995         Partial Windows build fix.
1996         
1997         * DerivedSources.cpp:
1998         * WebCore.vcproj/WebCore.vcproj:
1999
2000 2009-02-25  Dirk Schulze  <krit@webkit.org>
2001
2002         Reviewed by Oliver Hunt.
2003
2004         Ported arcTo to Qt. Qt has no native support for arcTo. This changes
2005         calculate the behavior of arcTo and draws it with lineTo and arc.
2006
2007         [QT] implement Canvas arcTo
2008         https://bugs.webkit.org/show_bug.cgi?id=23873
2009
2010         * platform/graphics/qt/PathQt.cpp:
2011         (WebCore::Path::addArcTo):
2012
2013 2009-02-25  Simon Fraser  <simon.fraser@apple.com>
2014
2015         Reviewed by Dan Bernstein
2016
2017         Remove idl files from Resources, and sort.
2018         
2019         * WebCore.xcodeproj/project.pbxproj:
2020
2021 2009-02-25  Chris Marrin  <cmarrin@apple.com>
2022
2023         Reviewed by Simon Fraser.
2024
2025         https://bugs.webkit.org/show_bug.cgi?id=23943
2026
2027         Added webkitConvertPointFromNodeToPage and webkitConvertPointFromPageToNode on
2028         the window object. Also added WebKitPoint object, which is passed in and out
2029         of these functions.
2030
2031         Test: fast/dom/Window/webkitConvertPoint.html
2032
2033         * DerivedSources.make:
2034         * WebCore.pro:
2035         * WebCore.vcproj/WebCore.vcproj:
2036         * WebCore.xcodeproj/project.pbxproj:
2037         * WebCoreSources.bkl:
2038         * bindings/js/JSDOMWindowBase.cpp:
2039         (jsDOMWindowBaseWebKitPoint):
2040         (setJSDOMWindowBaseWebKitPoint):
2041         * bindings/js/JSWebKitPointConstructor.cpp: Added.
2042         (WebCore::):
2043         (WebCore::JSWebKitPointConstructor::JSWebKitPointConstructor):
2044         (WebCore::constructWebKitPoint):
2045         (WebCore::JSWebKitPointConstructor::getConstructData):
2046         * bindings/js/JSWebKitPointConstructor.h: Added.
2047         (WebCore::JSWebKitPointConstructor::classInfo):
2048         * dom/Node.cpp:
2049         (WebCore::Node::convertToPage):
2050         (WebCore::Node::convertFromPage):
2051         * dom/Node.h:
2052         * page/DOMWindow.cpp:
2053         (WebCore::DOMWindow::webkitConvertPointFromNodeToPage):
2054         (WebCore::DOMWindow::webkitConvertPointFromPageToNode):
2055         * page/DOMWindow.h:
2056         * page/DOMWindow.idl:
2057         * page/WebKitPoint.h: Added.
2058         (WebCore::WebKitPoint::create):
2059         (WebCore::WebKitPoint::x):
2060         (WebCore::WebKitPoint::y):
2061         (WebCore::WebKitPoint::setX):
2062         (WebCore::WebKitPoint::setY):
2063         (WebCore::WebKitPoint::WebKitPoint):
2064         * page/WebKitPoint.idl: Added.
2065
2066 2009-02-25  Jian Li  <jianli@chromium.org>
2067
2068         Reviewed by Alexey Proskuryakov.
2069
2070         Remove "#if ENABLE(WORKERS)" wrap from CrossThreadCopier files.
2071         https://bugs.webkit.org/show_bug.cgi?id=24145
2072
2073         * platform/CrossThreadCopier.cpp:
2074         * platform/CrossThreadCopier.h:
2075
2076 2009-02-25  David Levin  <levin@chromium.org>
2077
2078         Reviewed by Alexey Proskuryakov.
2079
2080         Bug 23688: ThreadableLoader needs a sync implementation for Workers.
2081         <https://bugs.webkit.org/show_bug.cgi?id=23688>
2082
2083         No observable change in behavior, so no test.
2084
2085         * loader/ThreadableLoader.cpp:
2086         (WebCore::ThreadableLoader::loadResourceSynchronously):
2087         * loader/ThreadableLoaderClientWrapper.h:
2088         (WebCore::ThreadableLoaderClientWrapper::clearClient):
2089         (WebCore::ThreadableLoaderClientWrapper::done):
2090         (WebCore::ThreadableLoaderClientWrapper::didFinishLoading):
2091         (WebCore::ThreadableLoaderClientWrapper::didFail):
2092         (WebCore::ThreadableLoaderClientWrapper::didFailRedirectCheck):
2093         (WebCore::ThreadableLoaderClientWrapper::ThreadableLoaderClientWrapper):
2094         Expose whether the loader is done (based on what callbacks were done).
2095
2096         * loader/WorkerThreadableLoader.cpp:
2097         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
2098         (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
2099         Each loader is given its own mode so that only its callbacks get through the run loop.
2100
2101         The xhr spec says that the readystatechange events are synchronous, so in the case of a
2102         nested sync xhr no readystatechange events should be fired for the outer xhr.
2103
2104         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
2105
2106         * loader/WorkerThreadableLoader.h:
2107         (WebCore::WorkerThreadableLoader::create):
2108         (WebCore::WorkerThreadableLoader::done):
2109
2110         * workers/WorkerRunLoop.cpp:
2111         (WebCore::WorkerRunLoop::WorkerRunLoop):
2112         * workers/WorkerRunLoop.h:
2113         (WebCore::WorkerRunLoop::createUniqueId):
2114         Simple method to create a uniqueId on demand with respect to the run loop.
2115
2116         * workers/WorkerThread.h:
2117
2118 2009-02-25  David Levin  <levin@chromium.org>
2119
2120         Reviewed by Alexey Proskuryakov.
2121
2122         Bug 24089: ThreadableLoader::loadResourceSynchronously should do callbacks like the async code.
2123         <https://bugs.webkit.org/show_bug.cgi?id=24089>
2124
2125         Make threadable loader callbacks to happen during the sync load call.
2126
2127         Changes the behavior of sync xhr for insecure redirects in two ways:
2128         + Sends an error event instead of an abort event (which is the same as async xhr's behavior).
2129         + Throws a network exception which is what other browsers do and what the spec
2130         says to do (http://www.w3.org/TR/XMLHttpRequest/).
2131
2132         * loader/DocumentThreadableLoader.cpp:
2133         (WebCore::DocumentThreadableLoader::loadResourceSynchronously):
2134         * loader/DocumentThreadableLoader.h:
2135         * loader/ThreadableLoader.cpp:
2136         (WebCore::ThreadableLoader::loadResourceSynchronously):
2137         * loader/ThreadableLoader.h:
2138         * xml/XMLHttpRequest.cpp:
2139         (WebCore::XMLHttpRequest::XMLHttpRequest):
2140         (WebCore::XMLHttpRequest::loadRequestSynchronously):
2141         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
2142         (WebCore::XMLHttpRequest::didFail):
2143         (WebCore::XMLHttpRequest::didFailRedirectCheck):
2144         * xml/XMLHttpRequest.h:
2145
2146 2009-02-24  Chris Marrin  <cmarrin@apple.com>
2147
2148         Reviewed by David Hyatt.
2149
2150         https://bugs.webkit.org/show_bug.cgi?id=23368
2151
2152         Added logic to correctly hit test accelerated layers.
2153
2154         Tests: animations/animation-hit-test-transform.html
2155                animations/animation-hit-test.html
2156                transitions/transition-hit-test-transform.html
2157                transitions/transition-hit-test.html
2158
2159         * page/animation/KeyframeAnimation.cpp:
2160         (WebCore::KeyframeAnimation::animate):
2161         * rendering/RenderLayer.cpp:
2162         (WebCore::RenderLayer::hitTestLayer):
2163         (WebCore::RenderLayer::updateClipRects):
2164         * rendering/RenderLayerBacking.cpp:
2165         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2166
2167 2009-02-25  Alexey Proskuryakov  <ap@webkit.org>
2168
2169         Reviewed by Darin Adler.
2170
2171         https://bugs.webkit.org/show_bug.cgi?id=24067
2172         REGRESSION: Crash in WebCore::Document::initSecurityContext
2173
2174         The crash started to happen when we removed a check for frame->document() being null.
2175         However, the original document shouldn't be null here, because it is needed to alias
2176         security origins. So, this patch fixes the crash by correcting security origin behavior.
2177
2178         Test: http/tests/security/aboutBlank/window-open-self-about-blank.html
2179         This tests for not crashing, and for inheriting the domain from the document being replaced.
2180         Preserving the aliasing cannot be tested for automatically, because we'd need a non-trivial
2181         domain to remove a prefix from.
2182
2183         * loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): Create a new document before
2184         clearing the frame, so that Document::initSecurityContext() could access the old one.
2185
2186 2009-02-25  Jay Campan  <jcampan@google.com>
2187
2188         Reviewed by Darin Fisher.
2189
2190         https://bugs.webkit.org/show_bug.cgi?id=24066
2191
2192         Items in drop-downs were not painted correctly.  Makes sure the
2193         PopupListBox invalidates in the coordinates of the window as this is
2194         FramelessScrollView::invalidateRect paints to.
2195
2196         * platform/chromium/PopupMenuChromium.cpp:
2197         (WebCore::PopupListBox::invalidateRow):
2198
2199 2009-02-24  Simon Fraser  <simon.fraser@apple.com>
2200
2201         Reviewed by Anders Carlsson
2202
2203         https://bugs.webkit.org/show_bug.cgi?id=15081
2204         
2205         Make display:none work for applet, emebed and object elements
2206         by calling rendererIsNeeded() on superclasses.
2207
2208         Tests: fast/replaced/applet-display-none.html
2209                fast/replaced/embed-display-none.html
2210                fast/replaced/object-display-none.html
2211
2212         * html/HTMLAppletElement.cpp:
2213         (WebCore::HTMLAppletElement::rendererIsNeeded):
2214         * html/HTMLElement.cpp:
2215         (WebCore::HTMLElement::rendererIsNeeded):
2216         * html/HTMLEmbedElement.cpp:
2217         (WebCore::HTMLEmbedElement::rendererIsNeeded):
2218         * html/HTMLObjectElement.cpp:
2219         (WebCore::HTMLObjectElement::rendererIsNeeded):
2220
2221 2009-02-24  Simon Fraser  <simon.fraser@apple.com>
2222
2223         Reviewed by Dave Hyatt
2224
2225         https://bugs.webkit.org/show_bug.cgi?id=24137
2226         
2227         Fix localToAbsolute() and absoluteToLocal() to map points through 3d transforms,
2228         taking perspective and transform-style: preserve-3d into account.
2229         
2230         In order to support transform-style: preserve-3d, which keeps elements in a
2231         3d space, we have to carry along an accumulated matrix in TransformState.
2232         We also need to apply the perspective from the parent, if any, with the
2233         appropriate origin.
2234
2235         * GNUmakefile.am:
2236         * WebCore.base.exp:
2237         * WebCore.pro:
2238         * WebCore.scons:
2239         * WebCore.vcproj/WebCore.vcproj:
2240         * WebCore.xcodeproj/project.pbxproj:
2241         * WebCoreSources.bkl:
2242         * css/CSSComputedStyleDeclaration.cpp:
2243         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2244         * platform/graphics/transforms/TransformationMatrix.cpp:
2245         (WebCore::TransformationMatrix::translate):
2246         (WebCore::TransformationMatrix::translate3d):
2247         (WebCore::TransformationMatrix::translateRight3d):
2248         * platform/graphics/transforms/TransformationMatrix.h:
2249         * rendering/RenderBox.cpp:
2250         (WebCore::RenderBox::mapLocalToAbsolutePoint):
2251         (WebCore::RenderBox::mapAbsoluteToLocalPoint):
2252         * rendering/RenderBox.h:
2253         * rendering/RenderLayer.cpp:
2254         (WebCore::RenderLayer::updateTransform):
2255         (WebCore::RenderLayer::perspectiveTransform):
2256         (WebCore::RenderLayer::perspectiveOrigin):
2257         * rendering/RenderLayer.h:
2258         * rendering/RenderLayerBacking.cpp:
2259         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2260         * rendering/RenderLayerCompositor.cpp:
2261         (WebCore::requiresCompositingLayerForTransform):
2262         (WebCore::RenderLayerCompositor::layerHas3DContent):
2263         * rendering/RenderObject.cpp:
2264         (WebCore::RenderObject::localToAbsolute):
2265         (WebCore::RenderObject::absoluteToLocal):
2266         (WebCore::RenderObject::mapLocalToAbsolutePoint):
2267         (WebCore::RenderObject::mapAbsoluteToLocalPoint):
2268         * rendering/RenderObject.h:
2269         * rendering/RenderTableCell.cpp:
2270         (WebCore::RenderTableCell::mapLocalToAbsolutePoint):
2271         (WebCore::RenderTableCell::mapAbsoluteToLocalPoint):
2272         * rendering/RenderTableCell.h:
2273         * rendering/RenderView.cpp:
2274         (WebCore::RenderView::mapLocalToAbsolutePoint):
2275         (WebCore::RenderView::mapAbsoluteToLocalPoint):
2276         * rendering/RenderView.h:
2277         * rendering/TransformState.cpp: Added.
2278         (WebCore::TransformState::move):
2279         (WebCore::TransformState::applyTransform):
2280         (WebCore::TransformState::flatten):
2281         * rendering/TransformState.h: Added.
2282         (WebCore::TransformState::):
2283         (WebCore::TransformState::TransformState):
2284         (WebCore::TransformState::move):
2285         * rendering/style/RenderStyle.h:
2286         (WebCore::InheritedFlags::hasPerspective):
2287
2288 2009-02-24  Sam Weinig  <sam@webkit.org>
2289
2290         Reviewed by David Hyatt.
2291
2292         Fix for https://bugs.webkit.org/show_bug.cgi?id=23990
2293         Regression (r40837): JavaScript image popup doesn't work
2294
2295         Make the getClientRects and getBoundingClientRect methods return rects
2296         relative to the viewport.
2297
2298         Test: fast/dom/getBoundingClientRect-getClientRects-relative-to-viewport.html
2299
2300         * dom/Element.cpp:
2301         (WebCore::Element::getClientRects):
2302         (WebCore::Element::getBoundingClientRect):
2303
2304 2009-02-24  Ojan Vafai  <ojan@chromium.org>
2305
2306         Reviewed by Eric Seidel.
2307
2308         SVG pages don't have a body or an html element! 
2309         Don't return early if there is no body.
2310
2311         * editing/VisiblePosition.cpp:
2312         (WebCore::VisiblePosition::canonicalPosition):
2313
2314 2009-02-23  David Hyatt  <hyatt@apple.com>
2315
2316         Reviewed by Eric Seidel
2317
2318         https://bugs.webkit.org/show_bug.cgi?id=23740, painting order wrong for normal flow elements with overflow: hidden
2319         
2320         This patch reworks the painting of overflow.  There is now the concept of a "self-painting layer."  All
2321         layers are considered to be self-painting except for overflow layers that are normal flow (and that don't have
2322         reflections or masks).
2323         
2324         If an overflow layer is not self-painting, then it ends up painted by its parent just like any other normal flow object.
2325         The only difference is that the clip has to be pushed and popped when painting the object's children.
2326         
2327         The lightweight clipping scheme used for controls has been extended to cover overflow now in this simplified case.  With
2328         the code consolidated into reusable push/pop functions, all of the renderers that use overflow have been patched to
2329         use the new functions.
2330         
2331         Hit testing has also been patched to check the overflow clip rect first before recurring into children.
2332         
2333         Scrollbar paint has been moved into RenderBlock for now, since none of the table objects support scrollbars
2334         yet, and scrollbar hit testing was already there anyway.  Now the two code paths are more symmetrical.
2335         
2336         Masks are now treated like normal flow layers (just like reflections).
2337
2338         A couple of test cases have been added to fast/overflow to test the stacking order. 
2339
2340         * rendering/InlineFlowBox.cpp:
2341         (WebCore::InlineFlowBox::nodeAtPoint):
2342         (WebCore::InlineFlowBox::paint):
2343         * rendering/RenderBlock.cpp:
2344         (WebCore::RenderBlock::repaintOverhangingFloats):
2345         (WebCore::RenderBlock::paint):
2346         (WebCore::RenderBlock::paintChildren):
2347         (WebCore::RenderBlock::paintObject):
2348         (WebCore::RenderBlock::paintFloats):
2349         (WebCore::RenderBlock::insertFloatingObject):
2350         (WebCore::RenderBlock::floatRect):
2351         (WebCore::RenderBlock::lowestPosition):
2352         (WebCore::RenderBlock::rightmostPosition):
2353         (WebCore::RenderBlock::leftmostPosition):
2354         (WebCore::RenderBlock::addOverhangingFloats):
2355         (WebCore::RenderBlock::nodeAtPoint):
2356         (WebCore::RenderBlock::hitTestContents):
2357         * rendering/RenderBox.cpp:
2358         (WebCore::RenderBox::nodeAtPoint):
2359         (WebCore::RenderBox::pushContentsClip):
2360         (WebCore::RenderBox::popContentsClip):
2361         * rendering/RenderBox.h:
2362         (WebCore::RenderBox::paintObject):
2363         * rendering/RenderBoxModelObject.cpp:
2364         (WebCore::RenderBoxModelObject::hasSelfPaintingLayer):
2365         * rendering/RenderBoxModelObject.h:
2366         * rendering/RenderLayer.cpp:
2367         (WebCore::RenderLayer::paintLayer):
2368         (WebCore::RenderLayer::hitTestLayer):
2369         (WebCore::RenderLayer::shouldBeNormalFlowOnly):
2370         (WebCore::RenderLayer::isSelfPaintingLayer):
2371         * rendering/RenderLayer.h:
2372         * rendering/RenderTable.cpp:
2373         (WebCore::RenderTable::paint):
2374         (WebCore::RenderTable::paintObject):
2375         (WebCore::RenderTable::nodeAtPoint):
2376         * rendering/RenderTable.h:
2377         * rendering/RenderTableCell.cpp:
2378         (WebCore::RenderTableCell::paint):
2379         * rendering/RenderTableRow.cpp:
2380         (WebCore::RenderTableRow::nodeAtPoint):
2381         (WebCore::RenderTableRow::paint):
2382         * rendering/RenderTableRow.h:
2383         * rendering/RenderTableSection.cpp:
2384         (WebCore::RenderTableSection::paint):
2385         (WebCore::RenderTableSection::paintObject):
2386         (WebCore::RenderTableSection::nodeAtPoint):
2387         * rendering/RenderTableSection.h:
2388         * rendering/RenderTreeAsText.cpp:
2389         (WebCore::write):
2390         (WebCore::writeLayers):
2391
2392 2009-02-24  David Levin  <levin@chromium.org>
2393
2394         Reviewed by NOBODY (build fix).
2395
2396         Attempted build fix for wx-mac.
2397
2398         * WebCoreSources.bkl:
2399
2400 2009-02-24  David Levin  <levin@chromium.org>
2401
2402         Reviewed by NOBODY (build fix).
2403
2404         Attempted build fixes for qt-linux and wx-mac.
2405
2406         * WebCore.pro:
2407         * webcore-base.bkl:
2408
2409 2009-02-24  Ojan Vafai  <ojan@dhcp-172-31-134-214.sfo.corp.google.com>
2410
2411         Reviewed by Sam Weinig.
2412
2413         Fix null pointer error. If the node is the Document, then ownerDocument() 
2414         returns null, document() does not.
2415
2416         * editing/VisiblePosition.cpp:
2417         (WebCore::VisiblePosition::canonicalPosition):
2418
2419 2009-02-24  Jian Li  <jianli@chromium.org>
2420
2421         Reviewed by NOBODY (attempted build fixes).
2422
2423         Fix build break for Windows and Linux.
2424
2425         * GNUmakefile.am:
2426         * WebCore.vcproj/WebCore.vcproj:
2427
2428 2009-02-24  Dimitri Glazkov  <dglazkov@chromium.org>
2429
2430         Reviewed by Eric Seidel.
2431
2432         https://bugs.webkit.org/show_bug.cgi?id=24131
2433         Fix-up COM/RefCounted dichotomy in Chromium port.
2434
2435         * page/chromium/AccessibilityObjectWrapper.h:
2436         (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper): Added
2437         explicit setting of recount.
2438
2439 2009-02-24  Dimitri Glazkov  <dglazkov@chromium.org>
2440
2441         Reviewed by Eric Seidel.
2442
2443         https://bugs.webkit.org/show_bug.cgi?id=24141
2444         Add clarity to V8 interceptor helper function.
2445
2446         * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
2447         (WebCore::NAMED_PROPERTY_GETTER): Renamed to notHandledByInterceptor.
2448         (WebCore::NAMED_PROPERTY_SETTER): Ditto.
2449         (WebCore::INDEXED_PROPERTY_GETTER): Ditto.
2450         (WebCore::INDEXED_PROPERTY_SETTER): Ditto.
2451
2452 2009-02-24  Simon Fraser  <simon.fraser@apple.com>
2453
2454         Reviewed by Eric Seidel
2455
2456         Minor numeric cleanup: convert float literals to doubles.
2457         
2458         * platform/graphics/transforms/RotateTransformOperation.cpp:
2459         (WebCore::RotateTransformOperation::blend):
2460
2461 2009-02-24  Mark Mentovai  <mark@chromium.org>
2462
2463         Reviewed by Eric Seidel.
2464
2465         https://bugs.webkit.org/show_bug.cgi?id=24139
2466         Add missing include.
2467
2468         * bindings/v8/ScriptInstance.h:
2469
2470 2009-02-24  Jian Li  <jianli@chromium.org>
2471
2472         Reviewed by Alexey Proskuryakov.
2473
2474         Move worker related files from dom directory to worker directory under WebCore.
2475         https://bugs.webkit.org/show_bug.cgi?id=24123
2476
2477         * DerivedSources.make:
2478         * GNUmakefile.am:
2479         * WebCore.pro:
2480         * WebCore.scons:
2481         * WebCore.vcproj/MigrateIDLAndScripts:
2482         * WebCore.vcproj/WebCore.vcproj:
2483         * WebCore.xcodeproj/project.pbxproj:
2484         * platform/CrossThreadCopier.cpp: Renamed from WebCore/dom/CrossThreadCopier.cpp.
2485         * platform/CrossThreadCopier.h: Renamed from WebCore/dom/CrossThreadCopier.h.
2486         * workers/GenericWorkerTask.h: Renamed from WebCore/dom/GenericWorkerTask.h.
2487         * workers/Worker.cpp: Renamed from WebCore/dom/Worker.cpp.
2488         * workers/Worker.h: Renamed from WebCore/dom/Worker.h.
2489         * workers/Worker.idl: Renamed from WebCore/dom/Worker.idl.
2490         * workers/WorkerContext.cpp: Renamed from WebCore/dom/WorkerContext.cpp.
2491         * workers/WorkerContext.h: Renamed from WebCore/dom/WorkerContext.h.
2492         * workers/WorkerContext.idl: Renamed from WebCore/dom/WorkerContext.idl.
2493         * workers/WorkerContextProxy.h: Renamed from WebCore/dom/WorkerContextProxy.h.
2494         * workers/WorkerLocation.cpp: Renamed from WebCore/dom/WorkerLocation.cpp.
2495         * workers/WorkerLocation.h: Renamed from WebCore/dom/WorkerLocation.h.
2496         * workers/WorkerLocation.idl: Renamed from WebCore/dom/WorkerLocation.idl.
2497         * workers/WorkerMessagingProxy.cpp: Renamed from WebCore/dom/WorkerMessagingProxy.cpp.
2498         * workers/WorkerMessagingProxy.h: Renamed from WebCore/dom/WorkerMessagingProxy.h.
2499         * workers/WorkerObjectProxy.h: Renamed from WebCore/dom/WorkerObjectProxy.h.
2500         * workers/WorkerRunLoop.cpp: Renamed from WebCore/dom/WorkerRunLoop.cpp.
2501         * workers/WorkerRunLoop.h: Renamed from WebCore/dom/WorkerRunLoop.h.
2502         * workers/WorkerThread.cpp: Renamed from WebCore/dom/WorkerThread.cpp.
2503         * workers/WorkerThread.h: Renamed from WebCore/dom/WorkerThread.h.
2504
2505 2009-02-05  Ojan Vafai  <ojan@chromium.org> and Eric Seidel <eric@webkit.org>
2506
2507         Reviewed by Dave Hyatt.
2508
2509         Make cursor positions match IE6/IE7/FF3 when clicking in margins/padding
2510         around divs inside editable regions.
2511         https://bugs.webkit.org/show_bug.cgi?id=23605
2512
2513         Fix clicks outside editable regions from focusing the editable region.
2514         https://bugs.webkit.org/show_bug.cgi?id=23607
2515
2516         Removed editing/selection/contenteditable-click-outside.html as it's
2517         not as useful as our new tests.
2518
2519         Clean up RenderBlock::positionForCoordinates to remove dead code,
2520         duplicate code, and generally make it more readable.
2521
2522         Tests: editing/selection/click-in-margins-inside-editable-div.html
2523                editing/selection/click-in-padding-with-multiple-line-boxes.html
2524                editing/selection/click-outside-editable-div.html
2525
2526         * editing/VisiblePosition.cpp:
2527         (WebCore::VisiblePosition::canonicalPosition):
2528         * rendering/RenderBlock.cpp:
2529         (WebCore::positionForPointRespectingEditingBoundaries):
2530         (WebCore::positionForPointWithInlineChildren):
2531         (WebCore::RenderBlock::positionForCoordinates):
2532         (WebCore::RenderBlock::updateFirstLetter):
2533
2534 2009-02-24  Sam Weinig  <sam@webkit.org>
2535
2536         Reviewed by Geoffrey Garen.
2537
2538         Related to <rdar://problem/6590295>
2539         Allow disabling javascript: urls.
2540
2541         * WebCore.base.exp:
2542         * html/HTMLAnchorElement.cpp:
2543         (WebCore::HTMLAnchorElement::parseMappedAttribute):
2544         * loader/FrameLoader.cpp:
2545         (WebCore::FrameLoader::executeIfJavaScriptURL):
2546         * page/Page.cpp:
2547         (WebCore::Page::Page):
2548         (WebCore::Page::setJavaScriptURLsAreAllowed):
2549         (WebCore::Page::javaScriptURLsAreAllowed):
2550         * page/Page.h:
2551
2552 2009-02-24  Simon Fraser  <simon.fraser@apple.com>
2553
2554         Fix build when ACCELERATED_COMPOSITING is turned on
2555         (overflowList() -> normalFlowList()).
2556     
2557         * rendering/RenderLayerBacking.cpp:
2558         (WebCore::RenderLayerBacking::hasNonCompositingContent):
2559         (WebCore::RenderLayerBacking::paintIntoLayer):
2560         * rendering/RenderLayerCompositor.cpp:
2561         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
2562         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
2563         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
2564         (WebCore::RenderLayerCompositor::recursiveRepaintLayerRect):
2565         (WebCore::RenderLayerCompositor::layerHas3DContent):
2566
2567 2009-02-24  Simon Fraser  <simon.fraser@apple.com>
2568
2569         Reviewed by Darin Adler
2570         
2571         https://bugs.webkit.org/show_bug.cgi?id=24135
2572         
2573         Round the FloatPoint returned by absoluteToLocal(), rather than
2574         truncating it.
2575
2576         * dom/MouseRelatedEvent.cpp:
2577         (WebCore::MouseRelatedEvent::receivedTarget):
2578
2579 2009-02-24  Beth Dakin  <bdakin@apple.com>
2580
2581         Reviewed by Sam Weinig.
2582
2583         Fix for https://bugs.webkit.org/show_bug.cgi?id=24004 REGRESSION: 
2584         Ordered list item marker misaligned when line height is not 1.2 
2585         -and corresponding <rdar://problem/6602506>
2586
2587         This is a regression from http://trac.webkit.org/changeset/40880 
2588         where createInlineBox was taken off of RenderObject and moved to 
2589         RenderBox. The problem was that the RenderBox version still needs 
2590         to be virtual because there is still an existing implementation in 
2591         RenderListMarker. 
2592
2593         * rendering/RenderBox.h:
2594         * rendering/RenderListMarker.cpp:
2595         (WebCore::RenderListMarker::createInlineBox):
2596         * rendering/RenderListMarker.h:
2597
2598 2009-02-24  Dimitri Glazkov  <dglazkov@chromium.org>
2599
2600         Reviewed by Eric Seidel.
2601
2602         https://bugs.webkit.org/show_bug.cgi?id=24128
2603         Upstream more V8 custom bindings: constructors, XSLTProcessor.
2604
2605         * bindings/v8/custom/V8DOMParserConstructor.cpp: Added.
2606         (WebCore::CALLBACK_FUNC_DECL):
2607         * bindings/v8/custom/V8MessageChannelConstructor.cpp: Added.
2608         (WebCore::CALLBACK_FUNC_DECL):
2609         * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp: Added.
2610         (WebCore::CALLBACK_FUNC_DECL):
2611         * bindings/v8/custom/V8XMLSerializerConstructor.cpp: Added.
2612         (WebCore::CALLBACK_FUNC_DECL):
2613         * bindings/v8/custom/V8XPathEvaluatorConstructor.cpp: Added.
2614         (WebCore::CALLBACK_FUNC_DECL):
2615         * bindings/v8/custom/V8XSLTProcessorCustom.cpp: Added.
2616         (WebCore::CALLBACK_FUNC_DECL):
2617
2618 2009-02-24  David Levin  <levin@chromium.org>
2619
2620         Reviewed by Alexey Proskuryakov.
2621
2622         Bug 24090: WorkerThreadableLoader needs to be able to post tasks for a mode.
2623         <https://bugs.webkit.org/show_bug.cgi?id=24090>
2624
2625         No observable change in behavior, so no test.
2626
2627         * dom/WorkerMessagingProxy.cpp:
2628         (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
2629         (WebCore::WorkerMessagingProxy::postTaskToWorkerContext):
2630         Fixed the bug that m_unconfirmedMessageCount was getting incremented for non-message tasks.
2631
2632         (WebCore::WorkerMessagingProxy::postTaskForModeToWorkerContext):
2633
2634         * dom/WorkerMessagingProxy.h:
2635         * loader/ThreadableLoader.cpp:
2636         (WebCore::ThreadableLoader::create):
2637         * loader/WorkerThreadableLoader.cpp:
2638         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
2639         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
2640         (WebCore::WorkerThreadableLoader::MainThreadBridge::didSendData):
2641         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
2642         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData):
2643         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
2644         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
2645         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
2646         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveAuthenticationCancellation):
2647         Changed these methods to post task using a mode.
2648
2649         * loader/WorkerThreadableLoader.h:
2650         (WebCore::WorkerThreadableLoader::create):
2651
2652 2009-02-24  Alexey Proskuryakov  <ap@webkit.org>
2653
2654         Reviewed by Darin Adler.
2655
2656         https://bugs.webkit.org/show_bug.cgi?id=24091
2657         <rdar://problem/6468660> Start of redirect chain ends up as master entry in Application Cache
2658
2659         Test: http/tests/appcache/access-via-redirect.php
2660
2661         * loader/appcache/ApplicationCacheGroup.cpp:
2662         (WebCore::ApplicationCacheGroup::finishedLoadingMainResource): Use the URL we ended up with,
2663         not the original one.
2664
2665 2009-02-24  Jian Li  <jianli@chromium.org>
2666
2667         Reviewed by Alexey Proskuryakov.
2668
2669         Change to include WorkerObjectProxy.h instead of WorkerMessagingProxy.h in WorkerContext.cpp and WorkerScriptController.cpp.
2670         https://bugs.webkit.org/show_bug.cgi?id=24112
2671
2672         * bindings/js/WorkerScriptController.cpp:
2673         * dom/WorkerContext.cpp:
2674
2675 2009-02-23  Antti Koivisto  <antti@apple.com>
2676
2677         Reviewed by Oliver Hunt.
2678
2679         <rdar://problem/6613796> Extended text codecs registered on webview creation
2680
2681         Comparing a text encoding with string "GBK" ended up constructing
2682         TextEncoding("GBK") which in turn initialized all extended
2683         text codecs.
2684
2685         * platform/text/TextCodecICU.cpp:
2686         (WebCore::TextCodecICU::decode):
2687
2688 2009-02-23  Sam Weinig  <sam@webkit.org>
2689
2690         Fix Qt build.
2691
2692         * bridge/qt/qt_runtime.cpp:
2693         (JSC::Bindings::valueRealType):
2694
2695 2009-02-23  Julien Chaffraix  <jchaffraix@webkit.org>
2696
2697         Reviewed by Darin Adler.
2698
2699         Bug 23956: Safari crashes when cloneNode fails (cloning a XML element with an invalid nodeName)
2700
2701         The crash occurred because Document::cloneNode would call Document::createElementNS. Unfortunately
2702         element created with createElement could have a wrong nodeName (createElement sets the string as the
2703         localName without checking for a prefix).
2704
2705         The fix is to call Document::createElement(const QualifiedName&, bool) that will not do any checks on the QualifiedName
2706         and will always succeed.
2707         Also rolled-out the HTMLElement specialisation of clonedNode as it was equivalent to what is done now (added an ASSERT
2708         to ensure that).
2709
2710         Test: fast/dom/cloneNode.html
2711
2712         * dom/Element.cpp:
2713         (WebCore::Element::cloneNode): Call createElement(const QualifiedName&, bool) instead of createElementNS as it will
2714         always return an element.
2715
2716         * html/HTMLElement.cpp:
2717         * html/HTMLElement.h: Removed HTMLElement::clonedNode as it is equivalent to what is now done.
2718
2719 2009-02-23  Dimitri Glazkov  <dglazkov@chromium.org>
2720
2721         Reviewed by Eric Seidel.
2722
2723         https://bugs.webkit.org/show_bug.cgi?id=24109
2724         Upstream V8 Script abstractions, all except ScriptController.
2725
2726         * bindings/v8/ScriptCachedFrameData.h: Added.
2727         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
2728         (WebCore::ScriptCachedFrameData::~ScriptCachedFrameData):
2729         (WebCore::ScriptCachedFrameData::restore):
2730         (WebCore::ScriptCachedFrameData::clear):
2731         (WebCore::ScriptCachedFrameData::domWindow):
2732         * bindings/v8/ScriptCallFrame.cpp: Added.
2733         (WebCore::ScriptCallFrame::ScriptCallFrame):
2734         (WebCore::ScriptCallFrame::~ScriptCallFrame):
2735         (WebCore::ScriptCallFrame::argumentAt):
2736         * bindings/v8/ScriptCallFrame.h: Added.
2737         (WebCore::ScriptCallFrame::functionName):
2738         (WebCore::ScriptCallFrame::sourceURL):
2739         (WebCore::ScriptCallFrame::lineNumber):
2740         (WebCore::ScriptCallFrame::argumentCount):
2741         * bindings/v8/ScriptCallStack.cpp: Added.
2742         (WebCore::ScriptCallStack::ScriptCallStack):
2743         (WebCore::ScriptCallStack::~ScriptCallStack):
2744         (WebCore::ScriptCallStack::at):
2745         * bindings/v8/ScriptCallStack.h: Added.
2746         (WebCore::ScriptCallStack::size):
2747         * bindings/v8/ScriptInstance.cpp: Added.
2748         (WebCore::V8ScriptInstance::V8ScriptInstance):
2749         (WebCore::V8ScriptInstance::~V8ScriptInstance):
2750         (WebCore::V8ScriptInstance::instance):
2751         (WebCore::V8ScriptInstance::clear):
2752         (WebCore::V8ScriptInstance::set):
2753         * bindings/v8/ScriptInstance.h: Added.
2754         (WebCore::V8ScriptInstance::create):
2755         * bindings/v8/ScriptSourceCode.h: Added.
2756         (WebCore::ScriptSourceCode::ScriptSourceCode):
2757         (WebCore::ScriptSourceCode::isEmpty):
2758         (WebCore::ScriptSourceCode::source):
2759         (WebCore::ScriptSourceCode::url):
2760         (WebCore::ScriptSourceCode::startLine):
2761         * bindings/v8/ScriptState.h: Added.
2762         (WebCore::ScriptState::hadException):
2763         (WebCore::ScriptState::setException):
2764         (WebCore::ScriptState::exception):
2765         * bindings/v8/ScriptString.h: Added.
2766         (WebCore::ScriptString::ScriptString):
2767         (WebCore::ScriptString::operator String):
2768         (WebCore::ScriptString::isNull):
2769         (WebCore::ScriptString::size):
2770         (WebCore::ScriptString::operator=):
2771         (WebCore::ScriptString::operator+=):
2772         * bindings/v8/ScriptValue.cpp: Added.
2773         (WebCore::ScriptValue::getString):
2774         * bindings/v8/ScriptValue.h: Added.
2775         (WebCore::ScriptValue::ScriptValue):
2776         (WebCore::ScriptValue::operator=):
2777         (WebCore::ScriptValue::operator==):
2778         (WebCore::ScriptValue::operator!=):
2779         (WebCore::ScriptValue::isNull):
2780         (WebCore::ScriptValue::isUndefined):
2781         (WebCore::ScriptValue::clear):
2782         (WebCore::ScriptValue::~ScriptValue):
2783         (WebCore::ScriptValue::v8Value):
2784
2785 2009-02-23  Adam Treat  <adam.treat@torchmobile.com>
2786
2787         Reviewed by Timothy Hatcher.
2788
2789         https://bugs.webkit.org/show_bug.cgi?id=24106
2790         The Qt port is crashing on exit because the tear down procedure involves
2791         the WebCore::InspectorController trying to access the JS execution context
2792         for a page that is being deleted.  This patch amends the inspector so
2793         that it does not try and access the execution context of the WebCore::Page
2794         in the midst of deletion.
2795
2796         * inspector/InspectorController.cpp:
2797         (WebCore::InspectorController::inspectedPageDestroyed):
2798         (WebCore::InspectorController::stopUserInitiatedProfiling):
2799
2800 2009-02-23  David Levin  <levin@chromium.org>
2801
2802         Reviewed by Alexey Proskuryakov.
2803
2804         Bug 24088: ThreadableLoaderClient::didFailWillSendRequestCheck isn't wired up completely for workers and could use a better name.
2805         <https://bugs.webkit.org/show_bug.cgi?id=24088>
2806
2807         No observable change in behavior, so no test.
2808
2809         * loader/DocumentThreadableLoader.cpp:
2810         (WebCore::DocumentThreadableLoader::create):
2811         * loader/ThreadableLoaderClient.h:
2812         (WebCore::ThreadableLoaderClient::didFailRedirectCheck):
2813         * loader/ThreadableLoaderClientWrapper.h:
2814         (WebCore::ThreadableLoaderClientWrapper::didFailRedirectCheck):
2815         * loader/WorkerThreadableLoader.cpp:
2816         (WebCore::workerContextDidFailRedirectCheck):
2817         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
2818         * loader/WorkerThreadableLoader.h:
2819         * xml/XMLHttpRequest.cpp:
2820         (WebCore::XMLHttpRequest::didFinishLoading):
2821         * xml/XMLHttpRequest.h:
2822
2823 2009-02-23  David Levin  <levin@chromium.org>
2824
2825         Reviewed by Alexey Proskuryakov.
2826
2827         Bug 24047: Need to simplify nested if's in WorkerRunLoop::runInMode
2828         <https://bugs.webkit.org/show_bug.cgi?id=24047>
2829
2830         Made a nested if inside of WorkerRunLoop::runInMode a lot simpler by
2831         using only MessageQueue::waitForMessageFilteredWithTimeout instead
2832         of three different MessageQueue methods.
2833
2834         No observable change in behavior, so no test.
2835
2836         * dom/WorkerRunLoop.cpp:
2837         (WebCore::ModePredicate::operator()):
2838         Minor clean-up to able to pass a const ref point for ModePredicate into runInMode.
2839         (WebCore::WorkerRunLoop::runInMode):
2840         * dom/WorkerRunLoop.h:
2841
2842 2009-02-23  David Hyatt  <hyatt@apple.com>
2843
2844         In preparation for making layers for multicol objects (so that they can properly split child layers
2845         into multiple columns), rename all of the "overflowOnly" and "overflowList" members and functions
2846         of RenderLayer to use the term "normal flow" instead.
2847
2848         Reviewed by Cameron Zwarich
2849
2850         * rendering/RenderLayer.cpp:
2851         (WebCore::RenderLayer::RenderLayer):
2852         (WebCore::RenderLayer::~RenderLayer):
2853         (WebCore::RenderLayer::setHasVisibleContent):
2854         (WebCore::RenderLayer::enclosingCompositingLayer):
2855         (WebCore::RenderLayer::addChild):
2856         (WebCore::RenderLayer::removeChild):
2857         (WebCore::RenderLayer::paintLayer):
2858         (WebCore::RenderLayer::hitTestLayer):
2859         (WebCore::RenderLayer::dirtyNormalFlowList):
2860         (WebCore::RenderLayer::updateNormalFlowList):
2861         (WebCore::RenderLayer::collectLayers):
2862         (WebCore::RenderLayer::updateLayerListsIfNeeded):
2863         (WebCore::RenderLayer::shouldBeNormalFlowOnly):
2864         (WebCore::RenderLayer::styleChanged):
2865         * rendering/RenderLayer.h:
2866         (WebCore::RenderLayer::isNormalFlowOnly):
2867         (WebCore::RenderLayer::normalFlowList):
2868         * rendering/RenderTreeAsText.cpp:
2869         (WebCore::writeLayers):
2870
2871 2009-02-23  David Hyatt  <hyatt@apple.com>
2872
2873         Fix the stacking order for column rules in multi-column layout.  Column rules should paint as part of the background of an element, just
2874         after all other components of the background have been painted.  This allows negative z-index children to still paint on top of the
2875         column rules (rather than ending up above the background of the box but behind the column rules).
2876
2877         Reviewed by Eric Seidel
2878
2879         Added fast/multicol/column-rules-stacking.html
2880
2881         * rendering/RenderBlock.cpp:
2882         (WebCore::RenderBlock::paintColumnRules):
2883         (WebCore::RenderBlock::paintColumnContents):
2884         (WebCore::RenderBlock::paintObject):
2885         * rendering/RenderBlock.h:
2886
2887 2009-02-23  Adam Treat  <adam.treat@torchmobile.com>
2888
2889         Reviewed by David Hyatt.
2890
2891         No testcases have been added or modified since this patch should not result in
2892         a behavior change for ports that have layout tests enabled.
2893
2894         Currently, the implementation of GraphicsContext::drawLineForText amongst
2895         the various ports differ in that some of them are honoring the context's
2896         strokeStyle when drawing a text-decoration and some of them are not.
2897         For instance, Apple's Mac port *does not* honor the context's strokeStyle(),
2898         but the Cairo implementation does and has an explicit workaround that
2899         sets the strokeStyle() temporarily.
2900
2901         This patch fixes so that all ports are consistent by explicitly making sure
2902         to set the GraphicsContext strokeStyle to SolidStroke whenever
2903         painting the text-decoration of an InlineFlowBox or InlineTextBox as these
2904         should always use a solid stroke.
2905
2906         This patch addresses these bugs:
2907         https://bugs.webkit.org/show_bug.cgi?id=19364
2908         https://bugs.webkit.org/show_bug.cgi?id=15659
2909
2910         * rendering/InlineFlowBox.cpp:
2911         (WebCore::InlineFlowBox::paintTextDecorations):
2912         * rendering/InlineTextBox.cpp:
2913         (WebCore::InlineTextBox::paintDecoration):
2914
2915 2009-02-23  Scott Violet  <sky@google.com>
2916
2917         Reviewed by Eric Seidel.
2918
2919         https://bugs.webkit.org/show_bug.cgi?id=24098
2920         Bugs in ClipboardChromium
2921
2922         Fixes the following bugs in ClipboardChromium:
2923         * It's possible for the extension to be empty, resulting in a bad file
2924           name, for example, 'foo.' or just '.'.
2925         * We weren't restricting the size of the file to MAX_PATH.
2926         * We weren't removing characters that are invalid for file system names.
2927
2928         * platform/chromium/ClipboardChromium.cpp:
2929         (WebCore::writeImageToDataObject):
2930         * platform/chromium/ClipboardChromium.h:
2931         * platform/chromium/ClipboardChromiumLinux.cpp: Added.
2932         (WebCore::ClipboardChromium::validateFileName):
2933         * platform/chromium/ClipboardChromiumMac.cpp: Added.
2934         (WebCore::ClipboardChromium::validateFileName):
2935         * platform/chromium/ClipboardChromiumWin.cpp: Added.
2936         (WebCore::isInvalidFileCharacter):
2937         (WebCore::ClipboardChromium::validateFileName):
2938
2939 2009-02-23  Thiago Macieira  <thiago.macieira@nokia.com>
2940
2941         Reviewed by Simon Hausmann.
2942
2943         Fix the Copyright notices in a few files
2944
2945         * platform/qt/RenderThemeQt.h:
2946
2947 2009-02-23  Xan Lopez  <xan@gnome.org>
2948
2949         Reviewed by Alexey Proskuryakov.
2950
2951         https://bugs.webkit.org/show_bug.cgi?id=22624
2952         [SOUP][GTK] Need API to get SoupSession from WebKit.
2953
2954         Allow to retrieve the Soup session and modify the code to take
2955         into account users changing features on it.
2956
2957         * platform/network/ResourceHandle.h:
2958         * platform/network/soup/CookieJarSoup.cpp:
2959         (WebCore::defaultCookieJar):
2960         (WebCore::setDefaultCookieJar):
2961         * platform/network/soup/CookieJarSoup.h:
2962         * platform/network/soup/ResourceHandleSoup.cpp:
2963         (WebCore::createSoupSession):
2964         (WebCore::ensureSessionIsInitialized):
2965         (WebCore::ResourceHandle::startHttp):
2966         (WebCore::ResourceHandle::cancel):
2967         (WebCore::ResourceHandle::defaultSession):
2968
2969 2009-02-23  Xan Lopez  <xan@gnome.org>
2970
2971         Reviewed by Alexey Proskuryakov.
2972
2973         https://bugs.webkit.org/show_bug.cgi?id=22624
2974         [SOUP][GTK] Need API to get SoupSession from WebKit.
2975
2976         Remove CURL support.
2977
2978         * GNUmakefile.am:
2979
2980 2009-02-23  Alexey Proskuryakov  <ap@webkit.org>
2981
2982         Reviewed by Mark Rowe.
2983
2984         Test: fast/dom/empty-hash-and-search.html
2985
2986         https://bugs.webkit.org/show_bug.cgi?id=21147
2987         hash property returns incorrect value for links w/o hash
2988
2989         Make hash() and search() behavior for empty and missing parts match IE and Firefox.
2990
2991         * platform/KURL.cpp:
2992         (WebCore::KURL::query): Changed to return query without '?', as it is already done for ref().
2993         (WebCore::KURL::prettyURL): Append the query with the question mark.
2994
2995         * page/Location.cpp:
2996         (WebCore::Location::search): Return an empty string if query is empty or missing.
2997         (WebCore::Location::hash): Return an empty string for empty hashes, not only missing ones.
2998
2999         * dom/WorkerLocation.cpp:
3000         (WebCore::WorkerLocation::search):
3001         (WebCore::WorkerLocation::hash):
3002         Match document.location fixes above.
3003
3004         * html/HTMLAnchorElement.cpp:
3005         (WebCore::HTMLAnchorElement::hash):
3006         (WebCore::HTMLAnchorElement::search):
3007         Return an empty string for empty and missing parts.
3008
3009 2009-02-23  Alexey Proskuryakov  <ap@webkit.org>
3010
3011         Reviewed by Darin Adler.
3012
3013         https://bugs.webkit.org/show_bug.cgi?id=20184
3014         SELECT with no name generates invalid query string
3015
3016         Test: fast/forms/select-no-name.html
3017
3018         * html/HTMLSelectElement.cpp:
3019         (WebCore::HTMLSelectElement::appendFormData): Added a check for empty name.
3020
3021 2009-02-23  Alexey Proskuryakov  <ap@webkit.org>
3022
3023         Apply review comments for the previous check-in (forgot to save the file, oops).
3024
3025         * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren):
3026
3027 2009-02-23  Alexey Proskuryakov  <ap@webkit.org>
3028
3029         Reviewed by Darin Adler.
3030
3031         https://bugs.webkit.org/show_bug.cgi?id=15707
3032         Crash when manipulating document from within an iframe onload function
3033
3034         Test: fast/dom/onload-open.html
3035
3036         * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren): Protect the container and
3037         the current node, because anything can happen when dispatching events.
3038
3039 2009-02-23  Alexey Proskuryakov  <ap@webkit.org>
3040
3041         Reviewed by Darin Adler.
3042
3043         https://bugs.webkit.org/show_bug.cgi?id=18970
3044         Numerically named input fields cause document.forms loop problems
3045
3046         Test: fast/forms/numeric-input-name.html
3047
3048         * bindings/scripts/CodeGeneratorJS.pm: Try index getter before name getter, even if the
3049         latter overrides properties.
3050
3051 2009-02-23  Alexey Proskuryakov  <ap@webkit.org>
3052
3053         Reviewed by Sam Weinig.
3054
3055         https://bugs.webkit.org/show_bug.cgi?id=24059
3056         Tokenizer::write() return value is never used
3057
3058         * dom/Tokenizer.h:
3059         * dom/XMLTokenizer.cpp:
3060         (WebCore::XMLTokenizer::write):
3061         * dom/XMLTokenizer.h:
3062         * html/HTMLTokenizer.cpp:
3063         (WebCore::HTMLTokenizer::write):
3064         * html/HTMLTokenizer.h:
3065         * loader/FTPDirectoryDocument.cpp:
3066         (WebCore::FTPDirectoryTokenizer::write):
3067         * loader/ImageDocument.cpp:
3068         (WebCore::ImageTokenizer::write):
3069         * loader/MediaDocument.cpp:
3070         (WebCore::MediaTokenizer::write):
3071         * loader/PluginDocument.cpp:
3072         (WebCore::PluginTokenizer::write):
3073         * loader/TextDocument.cpp:
3074         (WebCore::TextTokenizer::write):
3075         Made write() return void, not bool.
3076
3077 2009-02-20  Geoffrey Garen  <ggaren@apple.com>
3078
3079         Reviewed by Sam Weinig.
3080
3081         Updated for JavaScriptCore changes to timeout checking.
3082
3083         * bindings/js/JSCustomPositionCallback.cpp:
3084         (WebCore::JSCustomPositionCallback::handleEvent):
3085         * bindings/js/JSCustomPositionErrorCallback.cpp:
3086         (WebCore::JSCustomPositionErrorCallback::handleEvent):
3087         * bindings/js/JSCustomSQLStatementCallback.cpp:
3088         (WebCore::JSCustomSQLStatementCallback::handleEvent):
3089         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
3090         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
3091         * bindings/js/JSCustomSQLTransactionCallback.cpp:
3092         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
3093         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
3094         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
3095         * bindings/js/JSCustomVoidCallback.cpp:
3096         (WebCore::JSCustomVoidCallback::handleEvent):
3097         * bindings/js/JSCustomXPathNSResolver.cpp:
3098         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
3099         * bindings/js/JSDOMWindowBase.cpp:
3100         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
3101         (WebCore::JSDOMWindowBase::commonJSGlobalData):
3102         * bindings/js/JSEventListener.cpp:
3103         (WebCore::JSAbstractEventListener::handleEvent):
3104         * bindings/js/ScheduledAction.cpp:
3105         (WebCore::ScheduledAction::executeFunctionInContext):
3106         * bindings/js/ScriptController.cpp:
3107         (WebCore::ScriptController::evaluate):
3108         * bindings/js/WorkerScriptController.cpp:
3109         (WebCore::WorkerScriptController::evaluate):
3110         (WebCore::WorkerScriptController::forbidExecution):
3111         * bindings/objc/WebScriptObject.mm:
3112         (-[WebScriptObject callWebScriptMethod:withArguments:]):
3113         (-[WebScriptObject evaluateWebScript:]):
3114         * bridge/NP_jsobject.cpp:
3115         (_NPN_InvokeDefault):
3116         (_NPN_Invoke):
3117         (_NPN_Evaluate):
3118         (_NPN_Construct):
3119         * bridge/jni/jni_jsobject.mm:
3120         (JavaJSObject::call):
3121         (JavaJSObject::eval):
3122
3123 2009-02-21  Hironori Bono  <hbono@chromium.org>
3124
3125         Reviewed by Alexey Proskuryakov.
3126
3127         https://bugs.webkit.org/show_bug.cgi?id=23786
3128         [Chromium] line-break characters in a complex text are treated as zero-width spaces
3129
3130         This change prevents the UniscribeHelper class from treating the line-break characters
3131         as whitespaces.
3132
3133         Tests: fast/text/international/bidi-linebreak-001.html
3134                fast/text/international/bidi-linebreak-002.html
3135                fast/text/international/bidi-linebreak-003.html
3136
3137         * platform/graphics/chromium/UniscribeHelper.cpp:
3138         (WebCore::UniscribeHelper::adjustSpaceAdvances):
3139         Make the UniscribeHelper::adjustSpaceAdvances() function treat all characters in
3140         the treatAsSpace() function (e.g. U+0020, U+000A, U+000D, U+00A0) as whitespaces,
3141         so does when Chromium renders a simple text.
3142
3143 2009-02-20  Julien Chaffraix  <jchaffraix@webkit.org>
3144
3145         Reviewed by Alexey Proskuryakov.
3146
3147         Bug 23940: Use Document::createElement(const QualifiedName&, bool) when creating a known element inside WebCore
3148
3149         Document::createElement(const QualifiedName&, bool) does not check for the prefix as opposed the the one taking an AtomicString
3150         or Document::createElementNS. This is perfectly fine internally because we know the type of element created and the check is
3151         unneeded.
3152
3153         It also removes the use of an ExceptionCode argument which was here only to check that the prefix check was fine. Finally it
3154         enables us to use some generated QualifiedName.
3155
3156         * bindings/js/JSOptionConstructor.cpp:
3157         (WebCore::constructHTMLOptionElement):
3158         * dom/Document.cpp:
3159         (WebCore::Document::setTitle):
3160         * dom/XMLTokenizer.cpp:
3161         (WebCore::createXHTMLParserErrorHeader):
3162         (WebCore::XMLTokenizer::insertErrorMessageBlock):
3163         * editing/CompositeEditCommand.cpp:
3164         (WebCore::createBlockPlaceholderElement):
3165         * editing/htmlediting.cpp:
3166         (WebCore::createTabSpanElement):
3167         * html/HTMLSelectElement.cpp:
3168         (WebCore::HTMLSelectElement::setLength):
3169         * loader/FTPDirectoryDocument.cpp:
3170         (WebCore::FTPDirectoryTokenizer::appendEntry):
3171         (WebCore::FTPDirectoryTokenizer::createTDForFilename):
3172         (WebCore::FTPDirectoryTokenizer::loadDocumentTemplate):
3173         (WebCore::FTPDirectoryTokenizer::createBasicDocument):
3174         * loader/ImageDocument.cpp:
3175         (WebCore::ImageDocument::createDocumentStructure):
3176         * loader/MediaDocument.cpp:
3177         (WebCore::MediaTokenizer::createDocumentStructure):
3178         * loader/PluginDocument.cpp:
3179         (WebCore::PluginTokenizer::createDocumentStructure):
3180         * loader/TextDocument.cpp:
3181         (WebCore::TextTokenizer::write):
3182         * page/Frame.cpp:
3183         (WebCore::Frame::selectionComputedStyle):
3184         (WebCore::Frame::styleForSelectionStart):
3185         Document::createElement(const AtomicString&, ...) to Document::createElement(const QualifiedName&, ...) switch.
3186
3187         * xml/XPathFunctions.cpp:
3188         (WebCore::XPath::FunLang::evaluate): Re-use langAttr instead of creating a new attribute.
3189         * page/DragController.cpp:
3190         (WebCore::documentFragmentFromDragData): Use the HTMLAnchorElement directly to get rid of the static cast.
3191
3192 2009-02-19  Dimitri Glazkov  <dglazkov@chromium.org>
3193
3194         Reviewed by Eric Seidel.
3195
3196         https://bugs.webkit.org/show_bug.cgi?id=24060
3197         Fix up to accommodate for CanvasPixelArray return.
3198
3199         * platform/graphics/skia/ImageBufferSkia.cpp:
3200         (WebCore::ImageBuffer::getImageData): Added an extra data() to call.
3201         (WebCore::ImageBuffer::putImageData): Ditto.
3202
3203 2009-02-20  Eric Carlson  <eric.carlson@apple.com>
3204
3205         Simon Fraser
3206
3207         https://bugs.webkit.org/show_bug.cgi?id=24042
3208         Bug 24042: MediaPlayer should cache plug-in proxy
3209
3210         The changes in https://bugs.webkit.org/show_bug.cgi?id=23917 assume that
3211         MediaPlayer will always have created the private media player object before
3212         the plug-in is instantiated and calls back with the proxy object. This is not
3213         true on all platforms because of threading latency, so MediaPlayer should
3214         cache the plug-in proxy so it can pass it to the media engine at a later time.
3215
3216         * platform/graphics/MediaPlayer.cpp:
3217         (WebCore::NullMediaPlayerPrivate::setPoster): Null media engine implementation of proxy methods.
3218         (WebCore::NullMediaPlayerPrivate::deliverNotification): Ditto.
3219         (WebCore::NullMediaPlayerPrivate::setMediaPlayerProxy): Ditto.
3220         (WebCore::MediaPlayer::MediaPlayer): Initialize m_playerProxy.
3221         (WebCore::MediaPlayer::load): Pass m_playerProxy to newly created engine.
3222         (WebCore::MediaPlayer::setMediaPlayerProxy): Cache m_playerProxy.
3223         * platform/graphics/MediaPlayer.h: Declare m_playerProxy.
3224
3225 2009-02-20  Eric Carlson  <eric.carlson@apple.com>
3226
3227         Simon Fraser.
3228
3229         https://bugs.webkit.org/show_bug.cgi?id=24063
3230         Make it possible for a port to require a user gesture to play/pause an <audio> or <video> element
3231
3232         * html/HTMLMediaElement.cpp:
3233         (WebCore::HTMLMediaElement::HTMLMediaElement):  Rename m_loadRestrictions to m_Restrictions.
3234         Initialize m_internalCall.
3235         (WebCore::HTMLMediaElement::loadTimerFired): Increment m_internalCall around call to load().
3236         (WebCore::HTMLMediaElement::load): Call loadInternal if restrictions check out.
3237         (WebCore::HTMLMediaElement::loadInternal): New, guts of old load()
3238         (WebCore::HTMLMediaElement::setNetworkState): Fix bug introduced in r40943
3239         (WebCore::HTMLMediaElement::play): Call playInternal if restrictions check out.
3240         (WebCore::HTMLMediaElement::playInternal): New, guts of old play()
3241         (WebCore::HTMLMediaElement::pause): Call pauseInternal if restrictions check out.
3242         (WebCore::HTMLMediaElement::pauseInternal): New, guts of old pause()
3243         (WebCore::HTMLMediaElement::togglePlayState): Call playInternal/pauseInternal
3244         (WebCore::HTMLMediaElement::deliverNotification): Remove unnecessary white space.
3245         * html/HTMLMediaElement.h: Rename m_loadRestrictions to m_Restrictions, add m_internalCall,
3246         add RequireUserGestureRateChangeRestriction.
3247
3248 2009-02-20  Darin Fisher  <darin@chromium.org>
3249
3250         Fix build bustage in FileSystemWin.cpp.
3251
3252         Need to return CString() instead of 0 since there are now two CString
3253         constructors that take a pointer type.
3254
3255         * platform/win/FileSystemWin.cpp:
3256         (WebCore::openTemporaryFile):
3257
3258 2009-02-20  Dimitri Glazkov  <dglazkov@chromium.org>
3259
3260         Reviewed by Sam Weinig.
3261
3262         https://bugs.webkit.org/show_bug.cgi?id=23999
3263         Change license headers to accurately reflect code history.
3264
3265         * platform/ContentType.cpp:
3266         * platform/ContentType.h:
3267
3268 2009-02-18  Dimitri Glazkov  <dglazkov@chromium.org>
3269
3270         Reviewed by Antti Koivisto.
3271
3272         https://bugs.webkit.org/show_bug.cgi?id=23999
3273         Split off MIME type parsing into its own class.
3274
3275         * GNUmakefile.am: Added ContentType sources.
3276         * WebCore.pro: Ditto.
3277         * WebCore.scons: Ditto.
3278         * WebCore.vcproj/WebCore.vcproj: Ditto.
3279         * WebCore.xcodeproj/project.pbxproj: Ditto.
3280         * WebCoreSources.bkl: Ditto.
3281         * html/HTMLMediaElement.cpp: Changed to use ContentType.
3282         (WebCore::HTMLMediaElement::selectMediaURL):
3283         * platform/ContentType.cpp: Added.
3284         (WebCore::ContentType::ContentType):
3285         (WebCore::ContentType::parameter):
3286         (WebCore::ContentType::type):
3287         * platform/ContentType.h: Added.
3288         (WebCore::ContentType::raw):
3289         * platform/MIMETypeRegistry.cpp:
3290         * platform/MIMETypeRegistry.h:
3291         * platform/graphics/MediaPlayer.cpp:
3292         (WebCore::MediaPlayer::load):
3293         * rendering/style/ContentData.h: Renamed ContentType to StyleContentType.
3294         * rendering/style/RenderStyleConstants.h: Ditto.
3295         (WebCore::):
3296
3297 2009-02-20  Holger Hans Peter Freyther  <zecke@selfish.org>
3298
3299         Unreviewed build fix.
3300
3301         Use CString() instead of 0.
3302
3303         * platform/gtk/FileSystemGtk.cpp:
3304         (WebCore::openTemporaryFile):
3305         * platform/qt/FileSystemQt.cpp:
3306         (WebCore::openTemporaryFile):
3307
3308 2009-02-20  Gustavo Noronha Silva  <gns@gnome.org>
3309
3310         Reviewed by Holger Freyther.
3311
3312         When dealing with local files, use a path instead of an URI. GFile
3313         has problems decoding URIs with percent signs on them.
3314
3315         * platform/network/soup/ResourceHandleSoup.cpp:
3316         (WebCore::ResourceHandle::startGio):
3317
3318 2009-02-20  Gustavo Noronha Silva  <gns@gnome.org>
3319
3320         Reviewed by Holger Freyther.
3321
3322         Protect the ResourceHandle instance from being destroyed by
3323         didReceiveData inside the GIO readCallback call, so that
3324         cancelling caused by scripts is handled correctly.
3325
3326         * platform/network/soup/ResourceHandleSoup.cpp:
3327         (WebCore::readCallback):
3328
3329 2009-02-20  David Kilzer  <ddkilzer@apple.com>
3330
3331         Make IconDatabaseNone.cpp compile with -Wunused and pass check-for-exit-time-destructors
3332
3333         Reviewed by Sam Weinig.
3334
3335         * loader/icon/IconDatabaseNone.cpp:
3336         (WebCore::IconDatabase::defaultDatabaseFilename): Use DEFINE_STATIC_LOCAL().
3337         (WebCore::IconDatabase::open): Commented out unused parameter.
3338         (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ditto.
3339         (WebCore::IconDatabase::iconForPageURL): Ditto.
3340         (WebCore::IconDatabase::iconURLForPageURL): Ditto.
3341         (WebCore::IconDatabase::defaultIcon): Ditto.
3342         (WebCore::IconDatabase::retainIconForPageURL): Ditto.
3343         (WebCore::IconDatabase::releaseIconForPageURL): Ditto.
3344         (WebCore::IconDatabase::setIconDataForIconURL): Ditto.
3345         (WebCore::IconDatabase::setIconURLForPageURL): Ditto.
3346         (WebCore::IconDatabase::setEnabled): Ditto.
3347         (WebCore::IconDatabase::pageURLMappingCount): Added stub.
3348         (WebCore::IconDatabase::retainedPageURLCount): Ditto.
3349         (WebCore::IconDatabase::iconRecordCount): Ditto.
3350         (WebCore::IconDatabase::iconRecordCountWithData): Ditto.
3351
3352 2009-02-20  David Kilzer  <ddkilzer@apple.com>
3353
3354         Add comment to generated code when shadowing a built-in object
3355
3356         Reviewed by Sam Weinig.
3357
3358         * bindings/scripts/CodeGeneratorJS.pm: Added comment to
3359         generated code output.
3360
3361 2009-02-20  Avi Drissman  <avi@chromium.org>
3362
3363         Reviewed by Eric Seidel.
3364
3365         https://bugs.webkit.org/show_bug.cgi?id=24036
3366         Keyboard events need disambiguation on the Linux platform too.
3367
3368         * platform/chromium/PlatformKeyboardEventChromium.cpp:
3369         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
3370
3371 2009-02-19  Darin Fisher  <darin@chromium.org>
3372
3373         Reviewed by Eric Seidel.
3374
3375         https://bugs.webkit.org/show_bug.cgi?id=24046
3376
3377         Several improvements to CString:
3378         1- Make it possible to initialize a CString from a CStringBuffer
3379         2- Make it possible to get a CStringBuffer from a CString
3380         3- Change CStringBuffer::data() to return a const pointer to ward off mutation
3381         4- Remove unused releaseBuffer() methods.
3382         5- Make CStringBuffer::create() private to force consumers to get a CStringBuffer from a CString.
3383
3384         * platform/text/CString.cpp:
3385         (WebCore::CString::init):
3386         (WebCore::CString::mutableData):
3387         (WebCore::CString::newUninitialized):
3388         (WebCore::CString::copyBufferIfNeeded):
3389         * platform/text/CString.h:
3390         (WebCore::CStringBuffer::data):
3391         (WebCore::CStringBuffer::length):
3392         (WebCore::CStringBuffer::create):
3393         (WebCore::CStringBuffer::mutableData):
3394         (WebCore::CString::CString):
3395         (WebCore::CString::buffer):
3396
3397 2009-02-19  Dmitry Titov  <dimich@chromium.org>
3398
3399         Reviewed by Alexey Proskuryakov.
3400
3401         https://bugs.webkit.org/show_bug.cgi?id=24017
3402         Remove some usage of Document in Worker.
3403
3404         * dom/WorkerContext.h:
3405         (WebCore::WorkerContext::userAgent):
3406         * dom/Document.cpp:
3407         (WebCore::Document::userAgent):
3408         * dom/Document.h:
3409         * dom/ScriptExecutionContext.h:
3410         Added virtual ScriptExecutionContext::userAgent(const KURL&).
3411         Document implementation uses FrameLoader::userAgent and
3412         WorkerContext receives the string on creation and stores it in a member.
3413
3414         * dom/Worker.cpp:
3415         (WebCore::Worker::Worker):
3416         (WebCore::Worker::notifyFinished):
3417         * dom/Worker.h:
3418         (WebCore::Worker::create):
3419         Instead of Document the Worker constructor now gets a ScriptExecutionContext.
3420         Start using some methods on SEC (like completeURL() and userAgent()).
3421         For others, explicitly case to Document and add a FIXME.
3422         Remove Worker::document() too.
3423
3424 2009-02-20  Gustavo Noronha Silva  <gns@gnome.org>
3425
3426         Rubber-stamped by Holger Freyther.
3427
3428         Do not set httpStatus to SOUP_STATUS_OK when serving local files
3429         to match other ports' behavior, fixing xmlhttprequest test
3430         regressions.
3431
3432         * platform/network/soup/ResourceHandleSoup.cpp:
3433         (WebCore::queryInfoCallback):
3434
3435 2009-02-19  Dan Bernstein  <mitz@apple.com>
3436
3437         Reviewed by Sam Weinig.
3438
3439         - WebCore part of fixing https://bugs.webkit.org/show_bug.cgi?id=24027
3440           Do not send loader callbacks during CSS styling
3441
3442         Undo the iChat-specific quirk added in
3443         <http://trac.webkit.org/changeset/41071>. Instead, always suspend memory
3444         cache client callbacks during attach() and recalcStyle().
3445
3446         * WebCore.base.exp: Removed
3447         Settings::setNeedsIChatMemoryCacheCallsQuirk().
3448         * dom/ContainerNode.cpp:
3449         (WebCore::ContainerNode::suspendPostAttachCallbacks): Disable memory
3450         cache client callbacks and remember to enable them afterwards if needed.
3451         (WebCore::ContainerNode::resumePostAttachCallbacks): Re-enable memory
3452         cache client callbacks if they were disabled in
3453         suspendPostAttachCallbacks().
3454         (WebCore::ContainerNode::attach): Use suspendPostAttachCallbacks() and
3455         resumePostAttachCallbacks().
3456         * dom/ContainerNode.h: Made suspendPostAttachCallbacks()
3457         and resumePostAttachCallbacks() non-static.
3458         * dom/Document.cpp:
3459         (WebCore::Document::dispatchImageLoadEventsNow): Reverted iChat-specific
3460         workaround.
3461         * page/Settings.cpp: Removed m_needsIChatMemoryCacheCallsQuirk and
3462         related code.
3463         (WebCore::Settings::Settings):
3464         * page/Settings.h:
3465
3466 2009-02-19  Holger Hans Peter Freyther  <zecke@selfish.org>
3467
3468         Unreviewed build fix.
3469
3470         Build fix after r41092. Make the memoryUsage method
3471         public. It will be shadowed by cf/mac and for curl/soup/qt
3472         the implementation from ResourceResponseBase will be used.
3473
3474         * platform/network/ResourceResponseBase.h:
3475         (WebCore::ResourceResponseBase::memoryUsage):
3476
3477 2009-02-19  Beth Dakin  <bdakin@apple.com>
3478
3479         Reviewed by Dave Hyatt.
3480
3481         Fix for <rdar://problem/6077775> Should be able to specify
3482         inactive ::selection color
3483
3484         This patch makes the ::selction pseudo-element work with
3485         the :window-inactive pseudo type. This was, a user can specify a
3486         different ::selection style when a window is inactive.
3487
3488         * css/CSSStyleSelector.cpp:
3489         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
3490         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
3491         * rendering/RenderObject.cpp:
3492         (WebCore::RenderObject::selectionBackgroundColor):
3493         (WebCore::RenderObject::selectionForegroundColor):
3494
3495 2009-02-19  Sam Weinig  <sam@webkit.org>
3496
3497         Reviewed by Beth Dakin.
3498
3499         Patch for https://bugs.webkit.org/show_bug.cgi?id=24044
3500         Update querySelector/querySelectorAll to match the latest spec
3501
3502         Update querySelector and querySelectorAll to match the latest version
3503         of the Selectors API spec.  We now stringify null and undefined to "null"
3504         and "undefined" respectively instead of to "".
3505
3506         Test: fast/dom/SelectorAPI/undefined-null-stringify.html
3507
3508         * dom/Document.idl:
3509         * dom/DocumentFragment.idl:
3510         * dom/Element.idl:
3511
3512 2009-02-19  Dimitri Glazkov  <dglazkov@chromium.org>
3513
3514         Reviewed by Geoffrey Garen.
3515
3516         https://bugs.webkit.org/show_bug.cgi?id=23732
3517         Rework CachedResource overhead accounting to allow platforms to diverge
3518         in numbers.
3519
3520         * loader/CachedResource.cpp:
3521         (WebCore::CachedResource::overheadSize): Changed to ask ResourceResponse
3522         for its size and to use actual URL size.
3523         * platform/network/ResourceResponseBase.h:
3524         (WebCore::ResourceResponseBase::size): Added default size method.
3525         * platform/network/cf/ResourceResponse.h:
3526         (WebCore::ResourceResponse::size): Added Win/CF size method
3527         * platform/network/mac/ResourceResponse.h:
3528         (WebCore::ResourceResponse::size): Added Mac size method.
3529
3530 2009-02-19  Anders Carlsson  <andersca@apple.com>
3531
3532         Reviewed by Kevin Decker.
3533
3534         - Fix for <rdar://problem/6604968>
3535
3536         On Tiger, create an autorelease pool before creating the NSGraphicsContext and drain it immediately
3537         after the call to -[NSView displayRectIgnoringOpacity:inContext:].
3538
3539         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3540         (WebCore::MediaPlayerPrivate::paint):
3541
3542 2009-02-19  David Hyatt  <hyatt@apple.com>
3543
3544         Fix a bug where reflections didn't work properly if opacity was < 1.  Make sure that replaced elements
3545         also consider reflections to be part of their visual overflow.  This had already been done for blocks
3546         and lines, but it wasn't being done yet for replaced elements.
3547
3548         Also make sure that when the object being reflected has opacity < 1 that we don't end up popping the outer
3549         transparency layer early.  Since the reflected object paints twice, we don't want to end the transparency
3550         layer it pushed until we're done painting the real object (rather than the reflection).
3551
3552         Reviewed by Dan Bernstein
3553
3554         Added fast/reflections/reflection-masks-opacity.html
3555
3556         * rendering/RenderLayer.cpp:
3557         (WebCore::RenderLayer::paintLayer):
3558         * rendering/RenderPartObject.cpp:
3559         (WebCore::RenderPartObject::layout):
3560         * rendering/RenderReplaced.cpp:
3561         (WebCore::RenderReplaced::layout):
3562         (WebCore::RenderReplaced::adjustOverflowForBoxShadowAndReflect):
3563         * rendering/RenderReplaced.h:
3564
3565 2009-02-19  David Levin  <levin@chromium.org>
3566
3567         Reviewed by Alexey Proskuryakov.
3568
3569         Bug 23980: WorkerRunLoop needs a way to run in a given mode similar to CFRunLoopInMode.
3570         <https://bugs.webkit.org/show_bug.cgi?id=23980>
3571
3572         WorkerRunLoop has the ability to run in a mode which filters the tasks to be run.
3573         * When WorkerRunLoop::runInMode is called, only task for that mode will run.
3574         * When WorkerRunLoop::run is called (or the default mode is used), then all tasks
3575           will run regardless of their posted mode.
3576
3577         Here's a demonstration of the api:
3578
3579             RefPtr<NameResolution> nameResolution = NameResolution::create(workerRunLoop);
3580
3581             //  Internally nameResolution will do workerRunLoop.postTaskForMode(task, "MyCoolMode")
3582             //  for any tasks that need to be run during this loop.
3583             nameResolution->setTaskMode("MyCoolMode");
3584
3585             nameResolution->start();
3586             while (!nameResolution->done()) {
3587                 // Only tasks which are posted for "MyCoolMode" will run.
3588                 workerRunLoop.runInMode(context, "MyCoolMode");
3589             }
3590
3591         No observable change in behavior, so no test.
3592
3593         * dom/WorkerRunLoop.cpp:
3594         (WebCore::ModePredicate::ModePredicate):
3595         (WebCore::ModePredicate::operator()):
3596         (WebCore::WorkerRunLoop::WorkerRunLoop):
3597         (WebCore::WorkerRunLoop::~WorkerRunLoop):
3598         (WebCore::WorkerRunLoop::setSharedTimer):
3599         (WebCore::WorkerRunLoop::resetSharedTimer):
3600         (WebCore::WorkerRunLoop::run):
3601         (WebCore::WorkerRunLoop::runInMode):
3602         (WebCore::WorkerRunLoop::postTask):
3603         (WebCore::WorkerRunLoop::postTaskForMode):
3604         * dom/WorkerRunLoop.h:
3605         (WebCore::WorkerRunLoop::Task::create):
3606         (WebCore::WorkerRunLoop::Task::mode):
3607         (WebCore::WorkerRunLoop::Task::performTask):
3608         (WebCore::WorkerRunLoop::Task::Task):
3609