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