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