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