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