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